Changelog
Ce qui est nouveau.
Chaque amélioration apportée à la plateforme, à mesure qu'elle est livrée.
· kamo-internal
P1 - file d'attente facturée - calendrier d'audit
- losApi: chargeOffQueue / confirmFrais Off / auditByLoan - Page de la file d'attente d'examen de l'examen de l'adresse; utilisateur d'org examine chaque prêt, ajoute une raison, cliquez Confirmer et POST /api/los/charge-off /-id-/confirmer. Surface le backend LoanChargeOffService. - Nouveau composant "LoanAuditTimeline" : lire et rend le flux complet de LoanAuditEvent (type d'acteur, nature, montant, estampillés). Conçu pour brancher la page de détail du prêt côté de l'orgie.
· kamolos
État avancé des lots P1 et des webhooks, crons, commerce vertical
Mouvements monétaires (le noyau P1): - PrêtPaymentPostingService: markSucceedAndPost / markFailed / RetournéAndInverse / markDisbursementConceed / markDrawDisbursed. Ordre d'attribution verrouillé: frais, intérêts et principal. Auto-avances d'état DELINQUENT - ACTIF - PAID-OFF basé sur le solde obtenu. - StripeWebhookService n'est plus seulement log-série: paiement-en-tention.succeeded / paiement-failed / fee.refact.refact.refact (Revue ACH) / litige.created-closed / payout.paid-n'a fait défaut à l'avance du registre via PostingService. - NachaReturnCode et RetryScheduler: R-code routage conforme au NACHA R01/R09 réessai jusqu'à 2 jours d'intervalle, R07/R10/R29 révoquer le mandat, Restrouve de l'épuisement des filets de paiement et de compensation. Matérialisation commerciale et verticale: - Créence maintenant de l'engagement (PERSONNALISAL-LOANS, COMMITATED), Engagement (ACTIVE, avec prix-termes JSON instantanés), ordre (AUTORIS, sous-total-principal), et fils leur identifiant Retour sur Loan.commitmentUid / engagementUid / fromOrderUid in la même transaction. Cron jobs (logique réelle, pas de stubs): - RefroidirOffAdvanceJob: enfile un paiement de DISBURSEMENT-OUT chaque prêt PENDING-DISBURSEMENT dont le dégrèvement s'est écoulé. - IntérêtsAccrualJob: rémunération simple quotidienne sur le principal Balivant pour les prêts ACcinels et DELINQUENT. - DéclarationGénérationJob : rubrique par déclaration à retard par rendez-vous, TOC par cycle Déclaration avec rapprochement de la BAsD, évaluation annuelle des redevances et auto-paiement horaire. AutoDebitRunJob: les incendies PENDANT les autodébits - DISBURSEMENT - OUT NACHA se réarrange via StripeConnectService avec des touches idempotency. - RéconciliationJob: reprise nocturne des honoraires/principaux/de l'équilibre le registre; correction de la dérive enregistrée et auditée. - RappelDispatchJob: pull of SCHEDULED notifications au-delà de leur curtuelle et délivre par l'intermédiaire de NotificationDispatchService. Notifications : - - réel HTTP POST à EmailService (/api/email/transactional/send) et VOIPService (/api/voip/sms/send, /api/voip/voix/send), modèleChay-ciel---------------------------------------------------- Validation: - PrêtProductValidationService: applique le AP et le plafond d'état (par type), Contrôles en nature interdite, min/max-principal sanity. Accroché LoanProductService.créer et mettre à jour. Charges: - LoanChargeOffService.queue() répertorie les prêts D120; .confirmer() status à CHARGED-OFF et écrit une manifestation d'audit CHARGE-OFF-RECORDED. - Prêt-toutesOffContrôleur Expérience de l'audit: - LoanAuditEventContrôleur expose
· kamo-internal
P0 durcissement - formulaires, résolution de session, méthodes de paiement
Formulaires (côté or): - et Pages d'édition de l'utilisateur/productUid Nouveaux prêtsProduitsForm: basics / prix / limits / terms / compliance sections, champs sensibles en nature (installation contre LOC), billets à ordre modèle UID, codes d'état autorisés - - produit la sélection (uniquement les produits actifs de ce marché), emprunteur-à-côte, principal, terme facultatif, État de l'emprunteur, "sauvegardé du projet" vs "envenage" - /sets/caractéristiques/prêts: page d'embarquement rayé de l'orge (appels et redirections vers Stripe) Durcissement du côté de l'emprunteur: - Nouveaux usageCurrentSession() crochet résout memberId/orgId de /api/user-info (canonique et chemin) - remplace le faux KMEMBER/KORG cookie lit dans My Loans, Offre Détail, Détail du prêt, Paramètres de prêt, PipelineLoanOffersTab, PipelineActiveLoansTab - Nouvelles BorrowerPaymentMethodsCard: l'emprunteur peut relier la banque ACH (Stripe paiement-méthode id et mandat) ou carte, voir les méthodes liées, paramétabilité par défaut, révoquer; embedded sur /loans/[loanId) - losApi: et startStripeConnectonboarding Paramètres nav (2 sur 3 places par règle de mémoire): - SettingsStatusWindow ajoute "Loan Products" sous Commerce et entrée sur la route pour - (la barre latéralex n'a pas d'entrées de point de vente et non-op confirmé)
· kamolos
Dilé P0 et point d'extrémité de rayures et PDF flattée
- Fix EsignClient Importations : EsignGenericEnveveloppeRécapitulatif / EsignSignatureRécapitulatif vivent dans .esign.repos, pas .esign racine - Nouveau contrôleur de StripeConnect POST crée un compte de la douane et des retours à l'intégration de l'URL (délégués à StripeConnectService existant) - MediaServiceClient.fetchBlob: tire un octet de blob stocké pour Flux de travail aplatculer/remise - Nouveau PdfFlattenService : joint une signature conforme à la loi E-SIGN Page de certification à la source divulgue PDF pour chaque capturé Signature (nom de type rendu en italique; serman/IP/UA/SHA-256 - enveloppe UID enregistré sur la page). Magasine du nouveau blob aplatie via MediaService et retourne blob id et SHA-256. EsignClient.submitSuitSalle maintenant après marquage SIGNÉ et Populats - signé DocumentSha256. Les journaux de défaillance à plat mais ne font pas reculer la signature elle-même.
· kamo-internal
/api/los/- route proxy KamoLOS via k8s DNS
Rétroviseurs /api/billing/[[...chemins) Billing Service proxy: - Session résolue via Redis; X-Org-Id et X-Membre-Id transmise - /api/los/webhooks/- saut de session auth (Vaté-reculée à la signature triée KamoLOS); Élèvement de la tasse à rayures - Passage en tête divine en mode préservé - 502 emballage sur les défaillances en amont
· kamo-internal
Ajouter PERSONNELLE-LOANS type front-end
- engagementTypeLabels: étendre l'union de la cycloque et le vocabulaire - MarketCardGrid: couleur PERSONNELLE-LOANS (-14b8a6) - Page de détail du marché: nouveaux onglets (Produits / Offres / Prêts actifs / Règles de l'État) sur le commerceType - 'PERSONNAL-LOANS' - losApi.ts: surface complète DTO et embauché de nappes et frappe de l'emballage de la recherche/api/los pour les produits, offres, prêts, paiements, tirages, relevés, paiements méthodes, auto-paiement, règles d'État, soumission de signature ESign Nouveau marchéLoanProductsTab / MarketLoanOffersTab / MarketActiveLoansTab / MarketLoanStateRulesComposants des tabs - PipelineView : entrée VERTICAL-ICONS pour les travailleurs personnels - PipelineSection verticale : PERSONNELLES-LOANS in hasSubTabs - bloc de rendu Sous-dongles d'offres (en intentions) - Prêts actifs (engagements) Nouveaux PipelineLoanOffersTab/pipelineActiveLoansTab - Emprunteur (Membre) / surface des prêts: indice, /prêt/offre/[offreId avec flux d'acceptation-signe (signature typée - soumission ESign l'acceptation-offre), /prêts/[prêts-à-l'air-d'Ad-d'Ad-Ad-Ad-Ad-Ad-Ad-Ad-Ad-G-G-G-G-G-G-G-G Historique, Pay Now, tirage au sort pour LOC - settingss/page.tsx: commerce nav ajoute l'entrée "Loan Products"
· kamolos
Service initial de l'établissement et de l'entretien des prêts personnels
Nouveau Spring Boot 3.1.5 / Java 21 microservice modélisé sur BillingService. Propriété du mandat personnel de bout en bout: - PrêtProduct / LoanOffer / Prêt CRUD avec couche REST et DTO - LoanLifecycleService matérialise le prêt et le commerce Engagement/Engagement sur l'offre d'acceptation (un txn) - PrêtsPayaux et Prêts Prêts Dégagement Prêts Déportation Prêt-Doison Porte-prêtsPayeus-Payeus-Payeus-Pay-Pay-Payment Methode de Somm Services et contrôleurs de LoanRecurringPaymentPlan - Mathématiques: AmortissementEngine (Reg et annexe J), InterestAccrualEngine (ACT-365 / ACT-360 et BAsD), PaymentAllocator (hossidary-interest) - StripeConnectService (compteur douanier embarqué, décaissement de l'ACH, Débit ACH) - StripeWebhookService (idempotent via LoanStripeWebhookEvent) et point d'extrémité du Webhook spécifique à la connexion - TilaRendererService rend la boîte de Reg et Schumer (installation) / divulgation en ligne (LOC) via PDFBox dans MinIO StateRuleSelfHealService boot-loads loan-state-rules.json (50 États) Registre - MLA Cap - Reflération - Reflération - Remise en concordance des droits EsignClient et EsignSignContler complètent la dépendance des membres manquantes chemin de soumission de la signature (écrit EsignGenericEnvelope EsignSignature en partageant les dircas) - NotificationDispatchService avec horaire à clé de dadup - Emplois Cron: OffreExpiration, StatementGeneration, DelinquencySweep - k8s manifestes (configmap / déploiement / service), Dockerfile, Flux de travail Forgejo CI (dual-cluster K1M1-K2M1) tous alignés avec Conventions sur les services de facturation
· kamo-shared-library
Ajouter PERSONNELLE-LOANS type de commerce et paquet d'entité
- CommerceType.PERSONAL-LOANS - parallèle EngagementType et vocabulaire - Construire des entrées de prêts personnels pour les vendeurs de prêts personnels - 15 entités de l'Armée commune des pensions du personnel (LoanProduct, LoanStateRule, LoanOffer, LoanOfferDecision, LoanDraw, LoanPayment, LoanPaymentMethod, Plan de paiement, État de prêt, prêtFee, divulgation de prêts, LoanAuditEvent, LoanStripeWebhookEvent, LoanNotification) - 22 enumes personnels (statuibilité, niveau, nature, source, canal, etc.) - esign EsignGenericEnvelope - EsignSignature - Remise pour non-hypothèque création d'enveloppes et capture de signature faisant face aux membres - KamoLOS et KamoMLOS refs actuals actualisés dans l'ensemble de l'Organisation / CommerceMarketService / CommerceService La gestion des schémas reste avec KamoInitializeerService; KamoLOS utilise ddl-auto: aucun.
· kamo-internal
Les téléchargements de photo-album utilisent le même pipeline WS que l'onglet "Pleels"
Extraire le pipeline de téléchargement doc-manager (hashing et dedup check - register-or-upload - WebSocket-driven Conversion) dans une utilisation réutilisableImagingUploads hook. Le crochet possède la machine à états par fichier, la progression XHR et l'abonnement WebSocket en cours de conversion en direct que l'onglet Uploads utilise. Dialogue photo-album réécrit pour consommer le crochet: - Fichier automatiquement et traiter un à la fois. - Chaque fichier en vol montre son étiquette de phase actuelle (Hashing - Vérification - Téléchargement - Conversion - Compléter) avec un LinearProgress, une icône de vérification/erreur / de spinner, et un bouton Retrier après un échec. - Le dialogue affiche désormais le message d'erreur réel du serveur (par ex. "Échec du téléchargement sur MinIO") au lieu de l'avaler, et un Save est bloqué alors que les téléchargements sont encore en vol. - Les fichiers téléchargés avec succès se connectent automatiquement à l'album sous forme d'articles.
· kamolos
Cacher isActive - faux programmes aux emprunteurs en temps réel
useProgramCatalog filtre maintenant les programmes avec isActive-faux avant les renvoyer au sorcier de prêt. Le drapeau est calculé côté serveur comme (base.isActive AND overpass.isActive), donc quand un prêteur bascule un programme désactiver dans l'onglet Paramètres des programmes hypothécaires, la carte correspondante s'arrête apparaite dans la sélection des personnes/programmes - plafonnée par les années 60 existantes striedTime plafond.
· SecurityService
Offres de programmes de remblai pour les marchés hypothécaires existants sur le marché
DataLoader est maintenant appelé après le remblai d'engagement AppMortgage. Balail de tous les MORTGAGE existants CommerceMarket et veille à ce que ses offres soient prévues. Couvre les marchés qui ont été créés avant que le crochet de la place du marché ait atterri spécifiquement celles que l'utilisateur a ajoutée via les marchés et les champs avant cela déploiement. Idempotent: un système entièrement piégé loge les draps "tous les marchés déjà provisionné" et sauts.
· kamo-shared-library
Offres de programmes hypothécaires Bootstrap sur la création de marchés et le remblayage des chaussures
Lorsque l'utilisateur crée un marché de commerce avec commerceType-MORTGAGE - via le Étiquette des marchés et des champs - programme d'approvisionnement en besoins du marché pour les surfaces du commerce en aval pointent vers les intentions. Auparavant, uniquement s'est produit paresseuse sur la première création d'AppMortgage, donc une nouvelle hypothèque ajoutée Les marchés étaient vides et les administrateurs de KamoLOS n'ont vu aucun effet de l'ajout d'un. - - lorsque le type - MORTGAGE, appel - marché) après épargne. Enveloppé dans le cas d'essai/catch, de sorte qu'une défaillance de l'ensemencement de programme ne bloque pas la création du marché (KamoLOS lit les programmes du registre des programmes, et non les offres). - - - balayage chaque marché de MORTGAGE existant et garantit que ses offres sont fournies. Utilisé par SecurityService DataLoader sur le démarrage pour couvrir les marchés créés avant Ce crochet a atterri. Les bottes Idémpotentes et à l'état d'équilibre sont non-op.
· kamo-internal
Liants dupliciels pour que les utilisateurs puissent s'enfourrer sans affecter l'original
Ajoute une action "Duprelate" accessible à partir du menu contextuel de la liste de classeur et à partir d'un nouveau bouton dans l'en-tête de l'éditeur. Le double part des métadonnées du liant source - éléments - modificateurs, appartenant à l'utilisateur actuel sans partage, et est automatiquement sélectionné de sorte que l'utilisateur atterrit immédiatement sur la nouvelle branche. Fil de haut: - itinéraire proxy - duplicateBinder() dans binderApi.ts et useBinderStore - Élément menu "Duprelate" dans BinderListPanel (œuvres sur tout liant visible - possédée, partagée ou modèle) - Bouton d'icône double et filer en tête de BinderEditor
· DocsService
Ajouter POST
Copie en profondeur un liant que le demandeur peut voir (propriétaire, partagé ou modèle) dans un nouveau liant appartenant au demandeur. Copie chaque article (DOC, SÉPARATEUR, GÉNÉRAL) avec l'ordre, le type, la configJson et le modificateur per-instance l'optimament, les modifications à l'échelle du liant; laisse les documents Img sous-jacents seuls (les deux classeurs font référence aux mêmes docs). L'exemplaire commence par aucune action et est Template-false.
· kamo-internal
Les programmes hypothécaires basculent et l'engagement MORTGAGE
- MortgageProgramsPanel expédie désormais un commutateur réel sur chaque carte de programme avec une mise à jour optimiste - recul de l'échec. Toggrouiller un programme d'appels PUT - et reflète le côté serveur efficace, côté de l'état actif, à partir de la base et de l'annulation. - isActive) enveloppe le nouveau critère d'évaluation. - /commerce/engagements/[id) page: Lien d'applicationType maintenant itinéraires vers /applications/-linkId (la page de détail de l'URLA), pas la page manquante Les engagements MORTGAGE se réindront automatiquement dans /applications/linkId sur la charge pour que les utilisateurs atterrissent directement dans l'URLA au lieu de la vue d'engagement générique.
· SecurityService
PUT /programs/code/actives et déprécier les anciens critères de POS hypothécaires
- Prêts hypothécairesProgramContrôleur avec le corps "isActif": bool, sur LOS-TAKE-APPLICATION. Délégués à qui renforce la rangée OrgProgramOverride. - getMortgageAppyId, créerMortgageApp, updateMortgageApp, updateMortgageApptactTiture tous marqués javadoc pointant les appelants sur les URLA-fidélité /api/security/mortgage-apps les critères d'évaluation. Les anciens chemins de POS restent fonctionnels pour le back-compat.
· kamo-shared-library
Perorg enable/disable et déprécier la voie hypothécaire uniquement sur le commerce
- - upsert une rangée OrgProgramOverride avec recordState.isActive-desired; listForOrg now ET est le programme de base drapeau actif avec l'écartement, donc une neutralisation handicapée porte le double "cette organisation a explicitement désactivé ce programme." - OrgProgramOverrideRepository ajoute findAllYOrganizationId et - pour les chemins upsert et listeForOrg. - / findMortgageAppy/Très/TrouverMortgageAppById/ / mise à jourMortgageApp / updateMortgageAppstattus sont « Dépréciés. Ils opèrent uniquement sur le commerce Intentions étiquetées L'APPLICATION et NE créent pas ou ne lisent PAS URLA AppMortgage enregistrements - conservés pour rétrocompat avec - mais le nouveau code doit utiliser AppMortgageService .
· kamolos
Thème du jour lavable avec le soleil-lune SkyToggle
- Continueux t - [0,1 -structions de la position en scène - 25 propriétés CSS sur :raclement par interpolation RVB linéaire entre le jour du papier chaud et le jour Ancres de nuit aurora en lib/scène/palettes.ts - Défaut jusqu'à l'heure locale de la première visite; l'annulation manuelle est collant dans un biscuit, avec un bouton horloge pour réactiver l'auto suivre - SSR ScenePainter fait cuire la palette résolue avant la première peinture. il n'y a pas de FOUC lors des visites de retour; le mode auto de première visite se dessèche du jour vers l'horloge locale t sur plus de 1,4 s - SkyToggle: pointeur-poussoir traggable dont le glyphe de la lune de soleil tourne temps réel avec t et morphs entre soleil-rayons et croissant de lune - Couches ambiantes de page et de StarField: ambre ensemencement solaire-gauche à gauche jour, froid la lune-brillance en haut à droite la nuit, plus de 80 étoiles ensemencées s'estompent le crépuscule passé et le scintillement via une image clé sensible à la mise en forme réduite - Interrupteurs à thème MUI à la limite du crépuscule de la CsssBaseline lit à partir de CSS vars de sorte que l'interpolation reste continue - Laisse la classe sombre et le régime de couleurs en blanc3; fixe deux Conte long-star --relage de surface-base (filet de couleur manquante) dans JourneyCrest et cérémonieClient
· kamolos
Expose l'engagement/l'intention/l'engagement UID
AppMortgageDTO porte désormais les identificateurs du cycle de vie du commerce que SecurityService fait des populations d'arrière-plan sur chaque demande d'hypothèque. KamoLOS ne les utilise pas encore activement, mais les taper par des moyens d'avenir affordances d'emprunteurs ("votre demande a été engagée") peut référencer directement la couche commerciale sans passer par le modèle URLA.
· kamo-internal
Afficher le contexte du commerce et l'onglet paramètres des programmes
- /Le héros des demandes est maintenant le mot "Commerce - hypothèques résidentielles - URLA 2021" donc le personnel considère l'hypothèque comme une verticale du module de commerce, pas un un pipeline autonome. - Nouvel onglet des programmes hypothécaires sous Paramètres de commerce et catalogue en lecture seule programmes de prêts (CONV/FHA/VA/...) avec état actif et version d'ensemble de règles. Paramètres nav mis à jour dans les trois emplacements (sous-sujets, itinéraires, labelFor). - AppMortgageDTO/SummaryDTO et nouveau miroir de types ProgramDTO/LoanProgramCode les changements de partage-lib (engagementUide / intentionUid / engagementUid). - mortgageAppsApi.listPrograms() atteint le point d'extrémité existant/programs.
· SecurityService
Appliquer le point d'entrée du point d'entrée sur le droit de la SLOS et du commerce/engagements
- Moteur de bandes magnétiques : chaque point d'extrémité porte désormais sur RoleRightType. Lectures exiger LOS-VIEW-PIPELINE; la création d'une nouvelle application nécessite LOS-TAKE-APPLICATION; les édis acceptent tout rôle d'écriture LOS (prendre / traiter / Saisir / fermer / suspendre); la suppression nécessite LOS-SUSPEND-OR-WITHDRAW. Le compte de service de KamoLOS porte déjà le droit LOS complet fixé de sorte que le droit de service le parcours de l'emprunter n'est pas affecté; les utilisateurs du personnel sont fermés selon leur rôle. - CommerceEngagementContrôleur : nouvel enfant (liste avec des filtres de type/status/date) et GET.../engagements/-uid- (détail), sur ACCESS-COMMERCE. C'est la contrepartie verticale-agnostique de la point de terminaison d'appels hypothécaires - même format de fil si vous lisez un une hypothèque, une commande de détail ou une réservation de location.
· kamo-shared-library
URLA hypothécaire en fiançailles/intentions/engagements
L'hypothèque est une hypothèque du système de commerce, à côté de la vente au détail, de la location, le service, l'abonnement et l'achat. Ce câble le prêt hypothécaire URLA-fidélité empilement vers le cycle de vie du commerce agnostique du domaine, donc surfaces transversales (tableaux de bord de la tuyauline, analyse, portail client) voir l'hypothèque comme n'importe quel autre engagement. - Demande: nouveau engagement-id/in-id/engagement FK (nollable pour les lignes héritées du passé). - Bootstrape le MORTGAGE de l'organisation CommerceMarket - une offre par LoanProgramCode sur la création de première application; joins Engagement-Intent à chaque AppMortgage; miroirs LoanFile.status sur Intent.status et Engagement.status; matérialise un engagement sur FUNIDED avec les conditions de prêt instantané. Idémpotent bout à bout. - AppMortgageService: createBlank/createFromLead attacher à l'engagement; setSelectedProgramCode rafraîchit l'offre. - Les miroirs de transition de LoanPipelineService après chaque transition; commerce Les échecs miroirs ne bloquent pas la progression de l'URLA (log et continuer). - AppMortgageDTO / AppMortgageSummaryDTO engagement d'exposés à l'égard des femmes / intention engagement à l'intention du frontend.
· kamo-internal
Ajouter la languette organisateur avec des liants, des séparateurs, des documents générés
Ajoute l'organisateur au directeur du doc: - Nouvel onglet "Organisateur" (position 4) avec une liste de classeur et une vue division de l'éditeur; les onglets existants changent à droite - "Ajouter à l'organisateur" sur chaque ligne de doc ouvre un cueilleur de liant (les liants existants ou créer de nouveaux) - Éditeur de liants : les articles glisser-ordonnés (HTML5 DnD), ajouter le séparateur de pages (couleur et étiquette via ModernColorPicker), ajouter la Doc générée (page de couverture, table des matières, album de photos, nombre de mots) - Photo Album prend en charge le téléchargement de nouveaux photos (s'ajoute également au gestionnaire de doc) et la navigation existante - Panneau modificateurs à l'échelle du liant réutilisant la forme du modificateur de l'essign (numéros de page, étiquette, filigrane) - Le modificateur de par instance de code passe par le dialogue par article - Le mode de prévisualisation rend le PDF fusionné dans une iframe - Bouton de téléchargement appelle /api/docs/binders/-id-/render Nouveau magasin de zustand useBinderStore, REST client app/utils/linderApi.ts, et Next.js, et Next.js sous /api/docs/binders/- miroirs du modèle d'imagerie proxy existant.
· DocsService
Ajouter l'organisateur backend - CRUD, render, docs générés
Nouvelle surface REST sous /api/docs/linds pour l'organisateur: - BinderController: CRUD, article addition/mise à jour/recommander, partage, rendu - LinderService : contrôles d'accès à l'org, visibilité du propriétaire/action/modèle, gestion de la position de l'élément - BinderRenderer: fusion à deux passages (retardé verset différé), applique des modificateurs à l'échelle de l'instance et des modificateurs à l'échelle du liant via PdfBuildUtils partagé - Registre de doffe de doteurs, table des matières, numéro de texte, album de photos (utilisations de miniiOP pour les octets d'image) Reuses - pour les documents modifiés par l'essign et - pour le contrôle d'accès.
· kamo-shared-library
Ajouter Binder/BinderItem/BinderShare entités et référentiels
Ajoute la couche de persistence pour la nouvelle caractéristique doc-manager Organizer: - Lindre (long id, propriétaire membre, org-guidé, est modèle, modificateur à l'échelle du liantJson) - BinderShare (UUID, membre bénéficiaire, rôle LECTURE/ÉCRITURE) - Repositories JPA de données de printemps avec des requêtes org-guidé et un syndicat "visible à un membre" (propriété et partagée - modèle) Le schéma est automatiquement capté par KamoInitializerService via le ddl-auto d'Hibernate.
· kamolos
Glisser la bannière de test, adapter la fenêtre d'affichage, ajouter le consentement du cookie
- TestModeBanner publie sa hauteur jusqu'à -kamolos-banner-h et globals.css le soustrait de l'écran min-h donc la vue de la maison non plus longs déborde la fenêtre de visualisation par les pixels de la bannière. - La bannière gagne un éclat coulissant brun et une impulsion d'ombre lente de sorte qu'il lit en tant qu'alerte active, reflétant la barre de prévisualisation marketing. - Nouveau cookieConsentBanner (Accepter tout / Gérer avec l'analyse basculant), repuh à partir de la version marketing pour utiliser l'obscurité surface aurora - per-locataire -org-primaire / -org-gradient.
· kamolos
Loi SÉCURISÉ Surface SÉCULN des ID pour le prêteur
Ajout de LoContactCard avec avatar, pouls de présence, lien NMLS vérifié, et les actions d'appel/courrier/message en haut à gauche du héros et appliquer des surfaces, donc l'expéditeur de prêt agréé de l'emprunteur (nom de l'ID NMLS) est toujours un Appuyez sur le point - exigés par la loi SAFE no 153 et Reg - 1026,36 dollars g). Le prêteur le NMLS de pied de page est promu vers une pilule de confiance «Licensed et NMLS», et useAssignedLO retourne maintenant une fausse démo LO jusqu'à l'attribution du fichier de prêt LO terres. LoGuideChip revient à voix seule puisque le LO a sa propre surface.
· kamolos
Le prêteur démo charge automatiquement les chargements lorsqu'aucun locataire réel ne résout
La raison pour laquelle "toujours non marqué" - il n'y avait pas de véritable g de locataires pour le nom d'hôte testé, donc le SSR fetch est retourné nul et chaque La surface faisant face à un prêteur est tombée à travers les défauts de Kamo groupés. Le Le système de branding fonctionnait, il n'avait rien à faire avec. Maintenant expédie un prêteur de démonstration complet qui se charge automatiquement comme le repliement quand Le vrai aller-retour ne rend rien ET les talons sont autorisés - la valeur par défaut). Production avec les talons désactivés tombent encore jusqu'à Kamo par défaut de Kamo donc nous ne le faisons pas toujours expédier un réel emprunteur à "Apex Mortgage". - lib/org/demoOrg.ts : "Apex Mortgage" - bordeaux (8B1538) primaire et or (D4A24C) secondaire, délibérément loin de l'aurore, donc le Un effet de marque est indubitable. Populé complet: tagline ("Trois générations à vous ressaisir à la maison."), NMLS 123456, téléphone de soutien e-mail, année établie 1989, deux notes EHO et EHL, linéaires-135 direction de gradient. Nouveaux assetsBasePath: '/demo-lender' sur l'ordre du jour Type indique à ThemeLogo de charger /émo-lender/logo-full.svg avant Éviter MinIO ou la décrochement mondiale. Logo.svg: vrai Apex Mortgage b) Le mot-symbole et la marque des sommets de montagne dans le gradient bordeaux et or. Non juste un mot-symbole, un véritable verrouillage. - lib/org/fetch Organisation.ts : retours DEMO-ORG en amont L'inaccessibilité ou l'exclusion d'org est enregistrée ET les stubs l'autorisent. Abrité réelle / la résolution réelle est en vigueur. - composants/thème/ThèmeLogo.tsx: consulte utilisationOrg().assetBasePath et met ce préfixe à l'avant de la chaîne candidate. Le prêteur de démonstration Logo des terres; les biens miniers réels de MinIO se résolvent toujours en premier lorsque peuplée. - app/layout.tsx: "link rel" "préload" suit le même ordre de priorité, de sorte que le SSR préload cible le logo du donneur d'émission lorsque le mode de démonstration est active. - quand org.id - 'demo-apex', la bannière appelle "Afficher le prêteur de la démo (pas d'orgge de locataires Configurer pour cet hôte)" donc les testeurs savent quelle marque ils sont voir est mis en conserve. Conduite 32/32, 140 essais. Rechargez l'application emprunteur et vous devriez Voir maintenant le logo de l'Apex Mortgage et nom dans l'en-tête, le bordeaux et l'or dans l'ensemble des CTA et des rubans, "Bienvenons à Apex Mortgage". le héros de débarquement, NMLS 123456 - EHO et EHL dans le pied de page, "Appelez Apex Prêts hypothécaires (800) 555-2739" dans la fiche d'aide.
· kamolos
Faire du prêteur la marque primaire, pas un accent
Recadre l'application faisant face à l'emprunteur à partir de "Kamo produit avec accents de prêteur" à "le produit du prêteur, Kamo comme le moteur." Chaque surface mène maintenant avec l'identité du prêteur. - LenderLockup - prêteur canonique Marque de marque utilisée partout. Échelle sm 'm 'm' md ' lg 'xl ' héros 'xl ' héros 'l' héros Éléments le logo (ou bavardage dans la couleur principale du prêteur) avec le nom du prêteur; le slogan facultatif ci-dessous. Utilisé par chaque surface qui J'ai besoin de me sentir sur le site de MON prêteur. - Emprunteur-Chèvre et barre d'en-tête croît jusqu'à h-14/h-16, logo et nom du prêteur toujours visible (taille et "md" forceWordmark), teinture de l'ombre dans le la primaire du prêteur. La minuscule marque de coin 24px précédente a disparu. Une nouvelle Le bouton de téléphone de clic pour appeler se trouve à côté de Help avec le prêteur bordure primaire et lueur; sur mobile, il s'effondre à un bouton d'icône. Le Le ruban d'accent est 4px (c'est-à-dire 2px) et calme toujours la pente du prêteur. - Hero de la page d'atterrissage - centré, dominé par le prêteur enfermé au héros échelle à l'intérieur d'une carte en verre avec une lueur forte --org-primaire. Au-dessus de la pliage se lit comme suit : « Bienvenue à « LancerName » (le prêteur à gradient-clout de croissance nom est le titre), avec le slogan du prêteur comme sous-titre. Une pilule colorée dit "Loue à l'embarquement" au lieu de l'embarquement générique "Kamoville". Le bouton CTA est plus grand et porte un fort --org-primaire orange extérieur. - LenderFooter - ligne d'attribution complète : nom du prêteur - NMLS Consommateur Lien d'accès - téléphone - e-mail - site web - marque EHO/EHL. Ligne de droits d'auteur lit: « 2023-2026 « LenderName ». Tous droits réservés. » avec un petit Le crédit "Onboarding by Kamo". Visible sur les surfaces des héros. - HeroBrandIntro et éclaboussine de 3,4s (le cas sur 2,4s), spectacles en première visite ET tous les 30-min de retour inactif (était une fois par session). La carte de logo croît "héros" à l'intérieur d'une carte en verre plus résistante avec un cul de taille "héros" --org-primaire orange extérieur. "Bienvenue à "LenderName" est le titre; le slogan du prêteur est le sous-titre. - generateMetadata - Le modèle de titre de propriété Next.js est maintenant -%s - avec la valeur par défaut n'étant que le nom du prêteur. Chaque page enfant lit le prêteur d'abord dans l'onglet navigateur et les cartes OG. siteNom, titre, et Description de tout flux à partir de l'enregistrement de l'adresse. Obtention de 32/32, 140 épreuves de réussite. Si votre config loueur a un slogan inséché / nmlsId / phoneSupport / emailSupport / yearEst / colorPri / colorSec / logo asset, le site Maintenant ressemble sans équivoque au produit de votre prêteur. Avec rien Il s'est gracieusement dégrade en "Kamo" par défaut.
· InitializerService
Migration pour la marque faisant face à l'emprunteur et les colonnes de divulgation
Ajoute les sept colonnes annulables de l'Organisation de bibliothèque kamo-shared L'entité déclare maintenant (TAGLINE / NMLS-ID / PHONE-SUPPORT / EMAIL-SUPPORT / ÉGALOGATION-DÉRURE / SUR LE TEXTE PRIMAIRE / GRADIENT-DIRECTION) l'application kamo-los emprunteur peut capter le nom du prêteur sans schéma erreurs sur les lignes d'orgue existantes. Commande(35) - passe après LogoFullExtMigrationRunner (30) et avant Compagnie en chefColumnRunner (40). Idémpotent via AJOUTER COLUMONNE SI NON EXISTES ; C'est sûr à refaire. Selon la politique du projet, ce fichier n'est pas exécuté ici est lancé par l'utilisateur.

Votre univers vous attend.
Commencez gratuitement en quelques minutes. Ajoutez des produits quand vous êtes prêt. Pas de migration, pas de nouvelles connexions.
Gratuit pour toujours — aucune carte de crédit requise