@valentine-efagene/qshelter-common 2.0.157 → 2.0.158

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (74) hide show
  1. package/dist/generated/client/browser.d.ts +1 -1
  2. package/dist/generated/client/client.d.ts +1 -1
  3. package/dist/generated/client/internal/class.js +2 -2
  4. package/dist/generated/client/internal/prismaNamespace.d.ts +2 -4
  5. package/dist/generated/client/internal/prismaNamespace.js +2 -4
  6. package/dist/generated/client/internal/prismaNamespaceBrowser.d.ts +2 -4
  7. package/dist/generated/client/internal/prismaNamespaceBrowser.js +2 -4
  8. package/dist/generated/client/models/BankDocumentRequirement.d.ts +90 -154
  9. package/dist/generated/client/models/PropertyPaymentMethod.d.ts +3 -192
  10. package/dist/generated/client/models/PropertyPaymentMethodPhase.d.ts +227 -4
  11. package/package.json +1 -1
  12. package/prisma/migrations/0_init/migration.sql +2327 -0
  13. package/prisma/schema.prisma +17 -18
  14. package/prisma/migrations/20251228081517_create_initial_tables/migration.sql +0 -707
  15. package/prisma/migrations/20251228083337_refresh_token_hash/migration.sql +0 -16
  16. package/prisma/migrations/20251228084551/migration.sql +0 -16
  17. package/prisma/migrations/20251230104059_add_property_variants/migration.sql +0 -622
  18. package/prisma/migrations/20251230113413_add_multitenancy/migration.sql +0 -54
  19. package/prisma/migrations/20251230231217_add_prequalification_and_payment_method_change/migration.sql +0 -137
  20. package/prisma/migrations/20260101081428_normalize_schema/migration.sql +0 -119
  21. package/prisma/migrations/20260101102022_add_contract_termination/migration.sql +0 -69
  22. package/prisma/migrations/20260101110958_add_collect_funds/migration.sql +0 -8
  23. package/prisma/migrations/20260104084843_add_document_templates_and_offer_letters/migration.sql +0 -77
  24. package/prisma/migrations/20260104095131_add_underwriting_decision/migration.sql +0 -31
  25. package/prisma/migrations/20260104170149_add_generate_document_step_type/migration.sql +0 -5
  26. package/prisma/migrations/20260104172349_add_metadata_to_contract_phase_step/migration.sql +0 -2
  27. package/prisma/migrations/20260104174626_make_offer_letter_template_optional/migration.sql +0 -11
  28. package/prisma/migrations/20260105004059_add_superseded_phase_status/migration.sql +0 -2
  29. package/prisma/migrations/20260105074701_add_underwriting_step_types/migration.sql +0 -17
  30. package/prisma/migrations/20260105080236_remove_prequalification_model/migration.sql +0 -37
  31. package/prisma/migrations/20260105081842_unify_contract_events/migration.sql +0 -37
  32. package/prisma/migrations/20260105085337_simplify_los_remove_prequalification/migration.sql +0 -1
  33. package/prisma/migrations/20260105094604_workflow_tracking_current_step/migration.sql +0 -14
  34. package/prisma/migrations/20260105130633_add_api_keys/migration.sql +0 -26
  35. package/prisma/migrations/20260105151535_add_event_workflow_system/migration.sql +0 -132
  36. package/prisma/migrations/20260105160757_add_sns_handler_type/migration.sql +0 -2
  37. package/prisma/migrations/20260106003757_business_friendly_handler_types/migration.sql +0 -28
  38. package/prisma/migrations/20260106062140_add_step_event_attachments/migration.sql +0 -22
  39. package/prisma/migrations/20260107121844_add_property_transfer_requests/migration.sql +0 -64
  40. package/prisma/migrations/20260107172301_add_approval_request_model/migration.sql +0 -46
  41. package/prisma/migrations/20260107214834_add_contract_refund_model/migration.sql +0 -64
  42. package/prisma/migrations/20260108051928_add_approval_request_type_status_index/migration.sql +0 -2
  43. package/prisma/migrations/20260109132751_update_transfer_flow/migration.sql +0 -343
  44. package/prisma/migrations/20260111091027_rbac_redesign_federated_users/migration.sql +0 -79
  45. package/prisma/migrations/20260112000006_add_phase_event_attachments/migration.sql +0 -22
  46. package/prisma/migrations/20260112041159_add_flexible_term_configuration/migration.sql +0 -11
  47. package/prisma/migrations/20260112080730_rename_contract_to_application/migration.sql +0 -293
  48. package/prisma/migrations/20260112081422_cleanup_rename_contract_to_application/migration.sql +0 -14
  49. package/prisma/migrations/20260113000000_remove_workflow_analytics_summary/migration.sql +0 -5
  50. package/prisma/migrations/20260113110450_add_tenant_id_to_child_models/migration.sql +0 -334
  51. package/prisma/migrations/20260113122855_add_tenant_to_remaining_models/migration.sql +0 -64
  52. package/prisma/migrations/20260114034523_add_documentation_plan/migration.sql +0 -52
  53. package/prisma/migrations/20260114053042_add_questionnaire_plan/migration.sql +0 -73
  54. package/prisma/migrations/20260114164044_add_condition_to_documentation_plan_step/migration.sql +0 -10
  55. package/prisma/migrations/20260115055636_add_unit_locking/migration.sql +0 -16
  56. package/prisma/migrations/20260115060132_add_phase_template_reference/migration.sql +0 -8
  57. package/prisma/migrations/20260115084033_add_gate_step_type/migration.sql +0 -29
  58. package/prisma/migrations/20260115123703_add_organizations/migration.sql +0 -69
  59. package/prisma/migrations/20260115125519_add_requires_manual_review_to_step/migration.sql +0 -2
  60. package/prisma/migrations/20260115134106_add_conditional_step_support/migration.sql +0 -11
  61. package/prisma/migrations/20260116090633_add_question_category_enum/migration.sql +0 -8
  62. package/prisma/migrations/20260116152051_add_multi_party_document_review/migration.sql +0 -59
  63. package/prisma/migrations/20260116153745_add_platform_organization_type/migration.sql +0 -3
  64. package/prisma/migrations/20260119180401_add_document_name_remove_required_doc_types/migration.sql +0 -14
  65. package/prisma/migrations/20260119190336_add_document_approval_workflow/migration.sql +0 -134
  66. package/prisma/migrations/20260120024650_add_questionnaire_phase_review/migration.sql +0 -102
  67. package/prisma/migrations/20260121155057_add_event_execution_and_bank_docs/migration.sql +0 -198
  68. package/prisma/migrations/20260121161937_add_phase_step_order_unique_constraints/migration.sql +0 -12
  69. package/prisma/migrations/20260121163910_add_optimistic_locking/migration.sql +0 -14
  70. package/prisma/migrations/20260125090213_remove_is_published_use_status_enum/migration.sql +0 -10
  71. package/prisma/migrations/20260125102448_org_types_many_to_many/migration.sql +0 -153
  72. package/prisma/migrations/20260125103700_20260125102448_org_types_many_to_many_fix/migration.sql +0 -5
  73. package/prisma/migrations/20260126031132_add_organization_id_to_property/migration.sql +0 -8
  74. package/prisma/migrations/migration_lock.toml +0 -3
@@ -749,19 +749,22 @@ model OrganizationMember {
749
749
  }
750
750
 
751
751
  // =============================================================================
752
- // BANK DOCUMENT REQUIREMENTS - Bank-specific document overlays
752
+ // BANK DOCUMENT REQUIREMENTS - Bank-specific document overlays per phase
753
753
  // =============================================================================
754
754
  // Banks have different risk appetites and compliance requirements.
755
- // For a standardized product (e.g., NHF Mortgage), the payment structure is fixed
756
- // but document requirements vary by bank.
755
+ // Requirements are scoped to a specific PHASE within a PAYMENT METHOD.
756
+ //
757
+ // Example: UBA's MREIF preapproval phase may have stricter requirements
758
+ // than UBA's NHF preapproval phase - even though both are "preapproval".
757
759
  //
758
760
  // This model defines OVERLAY rules:
759
- // - Base documents come from DocumentationPlan
761
+ // - Base documents come from the phase's DocumentationPlan
760
762
  // - Bank adds/modifies requirements via BankDocumentRequirement
763
+ // - Scoped to: Bank + Phase (which belongs to a specific PaymentMethod)
761
764
  //
762
765
  // When switching banks mid-application:
763
766
  // 1. Keep all existing approved documents
764
- // 2. Query new bank's requirements
767
+ // 2. Query new bank's requirements for the same phase
765
768
  // 3. Calculate delta (what's missing)
766
769
  // 4. Customer uploads only the delta
767
770
  // =============================================================================
@@ -774,7 +777,7 @@ enum BankDocumentModifier {
774
777
  STRICTER // Bank has stricter version (e.g., 12 months instead of 6)
775
778
  }
776
779
 
777
- /// Bank Document Requirement - Bank-specific document rules
780
+ /// Bank Document Requirement - Bank-specific document rules per phase
778
781
  model BankDocumentRequirement {
779
782
  id String @id @default(cuid())
780
783
  tenantId String
@@ -784,12 +787,10 @@ model BankDocumentRequirement {
784
787
  organizationId String
785
788
  organization Organization @relation(fields: [organizationId], references: [id], onDelete: Cascade)
786
789
 
787
- // Which phase type this applies to (e.g., KYC, VERIFICATION)
788
- phaseType String
789
-
790
- // Optional: specific payment method (NULL = applies to all)
791
- paymentMethodId String?
792
- paymentMethod PropertyPaymentMethod? @relation(fields: [paymentMethodId], references: [id])
790
+ // Which specific phase within a payment method this applies to
791
+ // This allows different requirements per product (e.g., UBA's MREIF vs NHF)
792
+ phaseId String
793
+ phase PropertyPaymentMethodPhase @relation(fields: [phaseId], references: [id], onDelete: Cascade)
793
794
 
794
795
  // Document identification
795
796
  documentType String // ID_CARD, BANK_STATEMENT, EMPLOYMENT_LETTER, etc.
@@ -816,12 +817,11 @@ model BankDocumentRequirement {
816
817
  createdAt DateTime @default(now())
817
818
  updatedAt DateTime @updatedAt
818
819
 
819
- @@unique([organizationId, phaseType, documentType, paymentMethodId])
820
+ @@unique([organizationId, phaseId, documentType])
820
821
  @@index([tenantId])
821
822
  @@index([organizationId])
822
- @@index([phaseType])
823
+ @@index([phaseId])
823
824
  @@index([documentType])
824
- @@index([paymentMethodId])
825
825
  @@map("bank_document_requirements")
826
826
  }
827
827
 
@@ -1681,9 +1681,6 @@ model PropertyPaymentMethod {
1681
1681
  changeRulesFrom DocumentRequirementRule[] @relation("RuleFromMethod")
1682
1682
  changeRulesTo DocumentRequirementRule[] @relation("RuleToMethod")
1683
1683
 
1684
- // Bank-specific document requirements for this payment method
1685
- bankDocumentRequirements BankDocumentRequirement[]
1686
-
1687
1684
  @@unique([tenantId, name]) // Unique per tenant
1688
1685
  @@index([tenantId])
1689
1686
  @@map("property_payment_methods")
@@ -1769,6 +1766,8 @@ model PropertyPaymentMethodPhase {
1769
1766
  eventAttachments PhaseEventAttachment[]
1770
1767
  // Application phases created from this template
1771
1768
  applicationPhases ApplicationPhase[]
1769
+ // Bank-specific document requirements for this phase
1770
+ bankDocumentRequirements BankDocumentRequirement[]
1772
1771
 
1773
1772
  @@unique([paymentMethodId, order]) // Enforce unique, sequential ordering
1774
1773
  @@index([tenantId])