@artu-ai/compliance-sdk 0.0.6 → 0.3.0
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.
- package/dist/errors/api.d.ts +160 -0
- package/dist/errors/api.d.ts.map +1 -0
- package/dist/errors/api.js +255 -0
- package/dist/errors/base.d.ts +87 -0
- package/dist/errors/base.d.ts.map +1 -0
- package/dist/errors/base.js +84 -0
- package/dist/errors/index.d.ts +32 -0
- package/dist/errors/index.d.ts.map +1 -0
- package/dist/errors/index.js +35 -0
- package/dist/errors/upload.d.ts +109 -0
- package/dist/errors/upload.d.ts.map +1 -0
- package/dist/errors/upload.js +163 -0
- package/dist/errors/validation.d.ts +98 -0
- package/dist/errors/validation.d.ts.map +1 -0
- package/dist/errors/validation.js +129 -0
- package/dist/exports/base.d.ts +12 -0
- package/dist/exports/base.d.ts.map +1 -0
- package/dist/exports/base.js +21 -0
- package/dist/exports/index.d.ts +40 -0
- package/dist/exports/index.d.ts.map +1 -0
- package/dist/exports/index.js +59 -0
- package/dist/{mexico → exports/mexico}/actividad-vulnerable/avi.d.ts +130 -138
- package/dist/exports/mexico/actividad-vulnerable/avi.d.ts.map +1 -0
- package/dist/exports/mexico/actividad-vulnerable/avi.js +108 -0
- package/dist/{mexico → exports/mexico}/actividad-vulnerable/jys.d.ts +147 -158
- package/dist/exports/mexico/actividad-vulnerable/jys.d.ts.map +1 -0
- package/dist/exports/mexico/actividad-vulnerable/jys.js +115 -0
- package/dist/{mexico → exports/mexico}/actividad-vulnerable/tsc.d.ts +118 -129
- package/dist/exports/mexico/actividad-vulnerable/tsc.d.ts.map +1 -0
- package/dist/exports/mexico/actividad-vulnerable/tsc.js +103 -0
- package/dist/exports/mexico/index.d.ts +48 -0
- package/dist/exports/mexico/index.d.ts.map +1 -0
- package/dist/exports/mexico/index.js +70 -0
- package/dist/models/Address.d.ts +118 -0
- package/dist/models/Address.d.ts.map +1 -0
- package/dist/models/Address.js +187 -0
- package/dist/models/BankAccount.d.ts +124 -0
- package/dist/models/BankAccount.d.ts.map +1 -0
- package/dist/models/BankAccount.js +190 -0
- package/dist/models/Client.d.ts +170 -0
- package/dist/models/Client.d.ts.map +1 -0
- package/dist/models/Client.js +275 -0
- package/dist/models/ContactMethod.d.ts +102 -0
- package/dist/models/ContactMethod.d.ts.map +1 -0
- package/dist/models/ContactMethod.js +152 -0
- package/dist/models/Document.d.ts +167 -0
- package/dist/models/Document.d.ts.map +1 -0
- package/dist/models/Document.js +295 -0
- package/dist/models/LinkedClient.d.ts +62 -0
- package/dist/models/LinkedClient.d.ts.map +1 -0
- package/dist/models/LinkedClient.js +70 -0
- package/dist/models/Report.d.ts +98 -0
- package/dist/models/Report.d.ts.map +1 -0
- package/dist/models/Report.js +156 -0
- package/dist/models/ReportItem.d.ts +106 -0
- package/dist/models/ReportItem.d.ts.map +1 -0
- package/dist/models/ReportItem.js +167 -0
- package/dist/models/Transaction.d.ts +108 -0
- package/dist/models/Transaction.d.ts.map +1 -0
- package/dist/models/Transaction.js +175 -0
- package/dist/models/base.d.ts +42 -0
- package/dist/models/base.d.ts.map +1 -0
- package/dist/models/base.js +51 -0
- package/dist/models/index.d.ts +20 -0
- package/dist/models/index.d.ts.map +1 -0
- package/dist/models/index.js +34 -0
- package/dist/models/mex/MexAddress.d.ts +93 -0
- package/dist/models/mex/MexAddress.d.ts.map +1 -0
- package/dist/models/mex/MexAddress.js +148 -0
- package/dist/models/mex/MexBankAccount.d.ts +65 -0
- package/dist/models/mex/MexBankAccount.d.ts.map +1 -0
- package/dist/models/mex/MexBankAccount.js +90 -0
- package/dist/models/mex/MexClient.d.ts +88 -0
- package/dist/models/mex/MexClient.d.ts.map +1 -0
- package/dist/models/mex/MexClient.js +133 -0
- package/dist/models/mex/MexDocument.d.ts +415 -0
- package/dist/models/mex/MexDocument.d.ts.map +1 -0
- package/dist/models/mex/MexDocument.js +687 -0
- package/dist/models/mex/MexReport.d.ts +50 -0
- package/dist/models/mex/MexReport.d.ts.map +1 -0
- package/dist/models/mex/MexReport.js +73 -0
- package/dist/models/mex/MexReportItem.d.ts +39 -0
- package/dist/models/mex/MexReportItem.d.ts.map +1 -0
- package/dist/models/mex/MexReportItem.js +50 -0
- package/dist/models/mex/MexTransaction.d.ts +53 -0
- package/dist/models/mex/MexTransaction.d.ts.map +1 -0
- package/dist/models/mex/MexTransaction.js +78 -0
- package/dist/models/mex/actividad-vulnerable/MexActividadVulnerableClient.d.ts +37 -0
- package/dist/models/mex/actividad-vulnerable/MexActividadVulnerableClient.d.ts.map +1 -0
- package/dist/models/mex/actividad-vulnerable/MexActividadVulnerableClient.js +46 -0
- package/dist/models/mex/actividad-vulnerable/MexActividadVulnerableReport.d.ts +38 -0
- package/dist/models/mex/actividad-vulnerable/MexActividadVulnerableReport.d.ts.map +1 -0
- package/dist/models/mex/actividad-vulnerable/MexActividadVulnerableReport.js +39 -0
- package/dist/models/mex/actividad-vulnerable/MexActividadVulnerableReportItem.d.ts +38 -0
- package/dist/models/mex/actividad-vulnerable/MexActividadVulnerableReportItem.d.ts.map +1 -0
- package/dist/models/mex/actividad-vulnerable/MexActividadVulnerableReportItem.js +39 -0
- package/dist/models/mex/actividad-vulnerable/MexActividadVulnerableTransaction.d.ts +29 -0
- package/dist/models/mex/actividad-vulnerable/MexActividadVulnerableTransaction.d.ts.map +1 -0
- package/dist/models/mex/actividad-vulnerable/MexActividadVulnerableTransaction.js +37 -0
- package/dist/models/mex/actividad-vulnerable/avi/MexAVIClient.d.ts +43 -0
- package/dist/models/mex/actividad-vulnerable/avi/MexAVIClient.d.ts.map +1 -0
- package/dist/models/mex/actividad-vulnerable/avi/MexAVIClient.js +59 -0
- package/dist/models/mex/actividad-vulnerable/avi/MexAVIReport.d.ts +53 -0
- package/dist/models/mex/actividad-vulnerable/avi/MexAVIReport.d.ts.map +1 -0
- package/dist/models/mex/actividad-vulnerable/avi/MexAVIReport.js +75 -0
- package/dist/models/mex/actividad-vulnerable/avi/MexAVIReportItem.d.ts +56 -0
- package/dist/models/mex/actividad-vulnerable/avi/MexAVIReportItem.d.ts.map +1 -0
- package/dist/models/mex/actividad-vulnerable/avi/MexAVIReportItem.js +63 -0
- package/dist/models/mex/actividad-vulnerable/avi/MexAVITransaction.d.ts +67 -0
- package/dist/models/mex/actividad-vulnerable/avi/MexAVITransaction.d.ts.map +1 -0
- package/dist/models/mex/actividad-vulnerable/avi/MexAVITransaction.js +136 -0
- package/dist/models/mex/actividad-vulnerable/index.d.ts +20 -0
- package/dist/models/mex/actividad-vulnerable/index.d.ts.map +1 -0
- package/dist/models/mex/actividad-vulnerable/index.js +25 -0
- package/dist/models/mex/actividad-vulnerable/jys/MexJYSClient.d.ts +39 -0
- package/dist/models/mex/actividad-vulnerable/jys/MexJYSClient.d.ts.map +1 -0
- package/dist/models/mex/actividad-vulnerable/jys/MexJYSClient.js +53 -0
- package/dist/models/mex/actividad-vulnerable/jys/MexJYSReport.d.ts +53 -0
- package/dist/models/mex/actividad-vulnerable/jys/MexJYSReport.d.ts.map +1 -0
- package/dist/models/mex/actividad-vulnerable/jys/MexJYSReport.js +75 -0
- package/dist/models/mex/actividad-vulnerable/jys/MexJYSReportItem.d.ts +56 -0
- package/dist/models/mex/actividad-vulnerable/jys/MexJYSReportItem.d.ts.map +1 -0
- package/dist/models/mex/actividad-vulnerable/jys/MexJYSReportItem.js +63 -0
- package/dist/models/mex/actividad-vulnerable/jys/MexJYSTransaction.d.ts +85 -0
- package/dist/models/mex/actividad-vulnerable/jys/MexJYSTransaction.d.ts.map +1 -0
- package/dist/models/mex/actividad-vulnerable/jys/MexJYSTransaction.js +152 -0
- package/dist/models/mex/actividad-vulnerable/tsc/MexTSCClient.d.ts +39 -0
- package/dist/models/mex/actividad-vulnerable/tsc/MexTSCClient.d.ts.map +1 -0
- package/dist/models/mex/actividad-vulnerable/tsc/MexTSCClient.js +53 -0
- package/dist/models/mex/actividad-vulnerable/tsc/MexTSCReport.d.ts +53 -0
- package/dist/models/mex/actividad-vulnerable/tsc/MexTSCReport.d.ts.map +1 -0
- package/dist/models/mex/actividad-vulnerable/tsc/MexTSCReport.js +75 -0
- package/dist/models/mex/actividad-vulnerable/tsc/MexTSCReportItem.d.ts +56 -0
- package/dist/models/mex/actividad-vulnerable/tsc/MexTSCReportItem.d.ts.map +1 -0
- package/dist/models/mex/actividad-vulnerable/tsc/MexTSCReportItem.js +63 -0
- package/dist/models/mex/actividad-vulnerable/tsc/MexTSCTransaction.d.ts +53 -0
- package/dist/models/mex/actividad-vulnerable/tsc/MexTSCTransaction.d.ts.map +1 -0
- package/dist/models/mex/actividad-vulnerable/tsc/MexTSCTransaction.js +82 -0
- package/dist/models/mex/index.d.ts +12 -0
- package/dist/models/mex/index.d.ts.map +1 -0
- package/dist/models/mex/index.js +20 -0
- package/dist/models/types.d.ts +81 -0
- package/dist/models/types.d.ts.map +1 -0
- package/dist/models/types.js +6 -0
- package/dist/namespaces/index.d.ts +25 -0
- package/dist/namespaces/index.d.ts.map +1 -0
- package/dist/namespaces/index.js +27 -0
- package/dist/namespaces/mexico/actividad-vulnerable/avi/index.d.ts +322 -0
- package/dist/namespaces/mexico/actividad-vulnerable/avi/index.d.ts.map +1 -0
- package/dist/namespaces/mexico/actividad-vulnerable/avi/index.js +42 -0
- package/dist/namespaces/mexico/actividad-vulnerable/index.d.ts +1361 -0
- package/dist/namespaces/mexico/actividad-vulnerable/index.d.ts.map +1 -0
- package/dist/namespaces/mexico/actividad-vulnerable/index.js +53 -0
- package/dist/namespaces/mexico/actividad-vulnerable/jys/index.d.ts +454 -0
- package/dist/namespaces/mexico/actividad-vulnerable/jys/index.d.ts.map +1 -0
- package/dist/namespaces/mexico/actividad-vulnerable/jys/index.js +52 -0
- package/dist/namespaces/mexico/actividad-vulnerable/tsc/index.d.ts +162 -0
- package/dist/namespaces/mexico/actividad-vulnerable/tsc/index.d.ts.map +1 -0
- package/dist/namespaces/mexico/actividad-vulnerable/tsc/index.js +40 -0
- package/dist/namespaces/mexico/index.d.ts +2481 -0
- package/dist/namespaces/mexico/index.d.ts.map +1 -0
- package/dist/namespaces/mexico/index.js +140 -0
- package/dist/resources/addresses.d.ts +171 -0
- package/dist/resources/addresses.d.ts.map +1 -0
- package/dist/resources/addresses.js +208 -0
- package/dist/resources/bank-accounts.d.ts +174 -0
- package/dist/resources/bank-accounts.d.ts.map +1 -0
- package/dist/resources/bank-accounts.js +220 -0
- package/dist/resources/base.d.ts +192 -0
- package/dist/resources/base.d.ts.map +1 -0
- package/dist/resources/base.js +205 -0
- package/dist/resources/clients.d.ts +446 -0
- package/dist/resources/clients.d.ts.map +1 -0
- package/dist/resources/clients.js +448 -0
- package/dist/resources/contact-methods.d.ts +176 -0
- package/dist/resources/contact-methods.d.ts.map +1 -0
- package/dist/resources/contact-methods.js +215 -0
- package/dist/resources/documents.d.ts +340 -0
- package/dist/resources/documents.d.ts.map +1 -0
- package/dist/resources/documents.js +447 -0
- package/dist/resources/index.d.ts +23 -0
- package/dist/resources/index.d.ts.map +1 -0
- package/dist/resources/index.js +25 -0
- package/dist/resources/mex/actividad-vulnerable/avi/clients.d.ts +165 -0
- package/dist/resources/mex/actividad-vulnerable/avi/clients.d.ts.map +1 -0
- package/dist/resources/mex/actividad-vulnerable/avi/clients.js +317 -0
- package/dist/resources/mex/actividad-vulnerable/avi/index.d.ts +7 -0
- package/dist/resources/mex/actividad-vulnerable/avi/index.d.ts.map +1 -0
- package/dist/resources/mex/actividad-vulnerable/avi/index.js +6 -0
- package/dist/resources/mex/actividad-vulnerable/avi/reports.d.ts +152 -0
- package/dist/resources/mex/actividad-vulnerable/avi/reports.d.ts.map +1 -0
- package/dist/resources/mex/actividad-vulnerable/avi/reports.js +401 -0
- package/dist/resources/mex/actividad-vulnerable/avi/transactions.d.ts +89 -0
- package/dist/resources/mex/actividad-vulnerable/avi/transactions.d.ts.map +1 -0
- package/dist/resources/mex/actividad-vulnerable/avi/transactions.js +252 -0
- package/dist/resources/mex/actividad-vulnerable/index.d.ts +7 -0
- package/dist/resources/mex/actividad-vulnerable/index.d.ts.map +1 -0
- package/dist/resources/mex/actividad-vulnerable/index.js +9 -0
- package/dist/resources/mex/actividad-vulnerable/jys/clients.d.ts +119 -0
- package/dist/resources/mex/actividad-vulnerable/jys/clients.d.ts.map +1 -0
- package/dist/resources/mex/actividad-vulnerable/jys/clients.js +231 -0
- package/dist/resources/mex/actividad-vulnerable/jys/index.d.ts +7 -0
- package/dist/resources/mex/actividad-vulnerable/jys/index.d.ts.map +1 -0
- package/dist/resources/mex/actividad-vulnerable/jys/index.js +6 -0
- package/dist/resources/mex/actividad-vulnerable/jys/reports.d.ts +132 -0
- package/dist/resources/mex/actividad-vulnerable/jys/reports.d.ts.map +1 -0
- package/dist/resources/mex/actividad-vulnerable/jys/reports.js +381 -0
- package/dist/resources/mex/actividad-vulnerable/jys/transactions.d.ts +93 -0
- package/dist/resources/mex/actividad-vulnerable/jys/transactions.d.ts.map +1 -0
- package/dist/resources/mex/actividad-vulnerable/jys/transactions.js +253 -0
- package/dist/resources/mex/actividad-vulnerable/tsc/clients.d.ts +119 -0
- package/dist/resources/mex/actividad-vulnerable/tsc/clients.d.ts.map +1 -0
- package/dist/resources/mex/actividad-vulnerable/tsc/clients.js +231 -0
- package/dist/resources/mex/actividad-vulnerable/tsc/index.d.ts +7 -0
- package/dist/resources/mex/actividad-vulnerable/tsc/index.d.ts.map +1 -0
- package/dist/resources/mex/actividad-vulnerable/tsc/index.js +6 -0
- package/dist/resources/mex/actividad-vulnerable/tsc/reports.d.ts +132 -0
- package/dist/resources/mex/actividad-vulnerable/tsc/reports.d.ts.map +1 -0
- package/dist/resources/mex/actividad-vulnerable/tsc/reports.js +381 -0
- package/dist/resources/mex/actividad-vulnerable/tsc/transactions.d.ts +90 -0
- package/dist/resources/mex/actividad-vulnerable/tsc/transactions.d.ts.map +1 -0
- package/dist/resources/mex/actividad-vulnerable/tsc/transactions.js +259 -0
- package/dist/resources/mex/addresses.d.ts +143 -0
- package/dist/resources/mex/addresses.d.ts.map +1 -0
- package/dist/resources/mex/addresses.js +328 -0
- package/dist/resources/mex/bank-accounts.d.ts +107 -0
- package/dist/resources/mex/bank-accounts.d.ts.map +1 -0
- package/dist/resources/mex/bank-accounts.js +163 -0
- package/dist/resources/mex/clients.d.ts +195 -0
- package/dist/resources/mex/clients.d.ts.map +1 -0
- package/dist/resources/mex/clients.js +454 -0
- package/dist/resources/mex/ebr.d.ts +213 -0
- package/dist/resources/mex/ebr.d.ts.map +1 -0
- package/dist/resources/mex/ebr.js +417 -0
- package/dist/resources/mex/index.d.ts +11 -0
- package/dist/resources/mex/index.d.ts.map +1 -0
- package/dist/resources/mex/index.js +12 -0
- package/dist/resources/mex/reports.d.ts +226 -0
- package/dist/resources/mex/reports.d.ts.map +1 -0
- package/dist/resources/mex/reports.js +440 -0
- package/dist/resources/mex/transactions.d.ts +125 -0
- package/dist/resources/mex/transactions.d.ts.map +1 -0
- package/dist/resources/mex/transactions.js +274 -0
- package/dist/resources/reports.d.ts +211 -0
- package/dist/resources/reports.d.ts.map +1 -0
- package/dist/resources/reports.js +308 -0
- package/dist/resources/transactions.d.ts +142 -0
- package/dist/resources/transactions.d.ts.map +1 -0
- package/dist/resources/transactions.js +221 -0
- package/dist/sdk/ComplianceSDK.d.ts +459 -0
- package/dist/sdk/ComplianceSDK.d.ts.map +1 -0
- package/dist/sdk/ComplianceSDK.js +528 -0
- package/dist/sdk/base.d.ts +17 -0
- package/dist/sdk/base.d.ts.map +1 -0
- package/dist/sdk/base.js +22 -0
- package/dist/sdk/index.d.ts +18 -0
- package/dist/sdk/index.d.ts.map +1 -0
- package/dist/sdk/index.js +43 -0
- package/dist/{ComplianceSDK-BgzIwSsY.d.cts → sdk/mex/ComplianceSDK.d.ts} +16 -7
- package/dist/sdk/mex/ComplianceSDK.d.ts.map +1 -0
- package/dist/{ComplianceSDK-DoIZOSJq.d.ts → sdk/mex/ComplianceSDK.js} +26 -11
- package/dist/sdk/mex/actividad-vulnerable/avi/ComplianceSDK.d.ts +44 -0
- package/dist/sdk/mex/actividad-vulnerable/avi/ComplianceSDK.d.ts.map +1 -0
- package/dist/sdk/mex/actividad-vulnerable/avi/ComplianceSDK.js +39 -0
- package/dist/sdk/mex/actividad-vulnerable/avi/index.d.ts +8 -0
- package/dist/sdk/mex/actividad-vulnerable/avi/index.d.ts.map +1 -0
- package/dist/sdk/mex/actividad-vulnerable/avi/index.js +9 -0
- package/dist/sdk/mex/actividad-vulnerable/avi/types.d.ts +35 -0
- package/dist/sdk/mex/actividad-vulnerable/avi/types.d.ts.map +1 -0
- package/dist/sdk/mex/actividad-vulnerable/avi/types.js +20 -0
- package/dist/sdk/mex/actividad-vulnerable/index.d.ts +13 -0
- package/dist/sdk/mex/actividad-vulnerable/index.d.ts.map +1 -0
- package/dist/sdk/mex/actividad-vulnerable/index.js +31 -0
- package/dist/sdk/mex/actividad-vulnerable/jys/ComplianceSDK.d.ts +44 -0
- package/dist/sdk/mex/actividad-vulnerable/jys/ComplianceSDK.d.ts.map +1 -0
- package/dist/sdk/mex/actividad-vulnerable/jys/ComplianceSDK.js +39 -0
- package/dist/sdk/mex/actividad-vulnerable/jys/index.d.ts +8 -0
- package/dist/sdk/mex/actividad-vulnerable/jys/index.d.ts.map +1 -0
- package/dist/sdk/mex/actividad-vulnerable/jys/index.js +9 -0
- package/dist/sdk/mex/actividad-vulnerable/jys/types.d.ts +35 -0
- package/dist/sdk/mex/actividad-vulnerable/jys/types.d.ts.map +1 -0
- package/dist/sdk/mex/actividad-vulnerable/jys/types.js +20 -0
- package/dist/sdk/mex/actividad-vulnerable/tsc/ComplianceSDK.d.ts +44 -0
- package/dist/sdk/mex/actividad-vulnerable/tsc/ComplianceSDK.d.ts.map +1 -0
- package/dist/sdk/mex/actividad-vulnerable/tsc/ComplianceSDK.js +39 -0
- package/dist/sdk/mex/actividad-vulnerable/tsc/index.d.ts +8 -0
- package/dist/sdk/mex/actividad-vulnerable/tsc/index.d.ts.map +1 -0
- package/dist/sdk/mex/actividad-vulnerable/tsc/index.js +9 -0
- package/dist/sdk/mex/actividad-vulnerable/tsc/types.d.ts +35 -0
- package/dist/sdk/mex/actividad-vulnerable/tsc/types.d.ts.map +1 -0
- package/dist/sdk/mex/actividad-vulnerable/tsc/types.js +20 -0
- package/dist/sdk/mex/index.d.ts +13 -0
- package/dist/sdk/mex/index.d.ts.map +1 -0
- package/dist/sdk/mex/index.js +38 -0
- package/dist/sdk/mex/types.d.ts +57 -0
- package/dist/sdk/mex/types.d.ts.map +1 -0
- package/dist/sdk/mex/types.js +7 -0
- package/dist/sdk/resource-registry.d.ts +118 -0
- package/dist/sdk/resource-registry.d.ts.map +1 -0
- package/dist/sdk/resource-registry.js +145 -0
- package/dist/sdk/sdk-registry.d.ts +59 -0
- package/dist/sdk/sdk-registry.d.ts.map +1 -0
- package/dist/sdk/sdk-registry.js +82 -0
- package/dist/sdk/types.d.ts +232 -0
- package/dist/sdk/types.d.ts.map +1 -0
- package/dist/sdk/types.js +42 -0
- package/dist/utils/environment.d.ts +126 -0
- package/dist/utils/environment.d.ts.map +1 -0
- package/dist/utils/environment.js +148 -0
- package/dist/utils/filters.d.ts +338 -0
- package/dist/utils/filters.d.ts.map +1 -0
- package/dist/utils/filters.js +373 -0
- package/dist/utils/index.d.ts +15 -0
- package/dist/utils/index.d.ts.map +1 -0
- package/dist/utils/index.js +43 -0
- package/dist/utils/pagination.d.ts +85 -0
- package/dist/utils/pagination.d.ts.map +1 -0
- package/dist/utils/pagination.js +120 -0
- package/dist/utils/session.d.ts +173 -0
- package/dist/utils/session.d.ts.map +1 -0
- package/dist/utils/session.js +58 -0
- package/dist/utils/trpc-client.d.ts +19507 -0
- package/dist/utils/trpc-client.d.ts.map +1 -0
- package/dist/utils/trpc-client.js +129 -0
- package/dist/utils/upload.d.ts +81 -0
- package/dist/utils/upload.d.ts.map +1 -0
- package/dist/utils/upload.js +261 -0
- package/package.json +17 -27
- package/src/errors/api.ts +305 -0
- package/src/errors/base.ts +127 -0
- package/src/errors/index.ts +63 -0
- package/src/errors/upload.ts +204 -0
- package/src/errors/validation.ts +163 -0
- package/src/exports/base.ts +139 -0
- package/src/exports/index.ts +187 -0
- package/src/exports/mexico/actividad-vulnerable/avi.ts +207 -0
- package/src/exports/mexico/actividad-vulnerable/jys.ts +214 -0
- package/src/exports/mexico/actividad-vulnerable/tsc.ts +202 -0
- package/src/exports/mexico/index.ts +215 -0
- package/src/models/Address.ts +235 -0
- package/src/models/BankAccount.ts +235 -0
- package/src/models/Client.ts +363 -0
- package/src/models/ContactMethod.ts +197 -0
- package/src/models/Document.ts +355 -0
- package/src/models/LinkedClient.ts +84 -0
- package/src/models/Report.ts +193 -0
- package/src/models/ReportItem.ts +211 -0
- package/src/models/Transaction.ts +219 -0
- package/src/models/base.ts +56 -0
- package/src/models/index.ts +148 -0
- package/src/models/mex/MexAddress.ts +184 -0
- package/src/models/mex/MexBankAccount.ts +121 -0
- package/src/models/mex/MexClient.ts +177 -0
- package/src/models/mex/MexDocument.ts +890 -0
- package/src/models/mex/MexReport.ts +99 -0
- package/src/models/mex/MexReportItem.ts +79 -0
- package/src/models/mex/MexTransaction.ts +105 -0
- package/src/models/mex/actividad-vulnerable/MexActividadVulnerableClient.ts +66 -0
- package/src/models/mex/actividad-vulnerable/MexActividadVulnerableReport.ts +73 -0
- package/src/models/mex/actividad-vulnerable/MexActividadVulnerableReportItem.ts +74 -0
- package/src/models/mex/actividad-vulnerable/MexActividadVulnerableTransaction.ts +50 -0
- package/src/models/mex/actividad-vulnerable/avi/MexAVIClient.ts +80 -0
- package/src/models/mex/actividad-vulnerable/avi/MexAVIReport.ts +114 -0
- package/src/models/mex/actividad-vulnerable/avi/MexAVIReportItem.ts +105 -0
- package/src/models/mex/actividad-vulnerable/avi/MexAVITransaction.ts +157 -0
- package/src/models/mex/actividad-vulnerable/index.ts +78 -0
- package/src/models/mex/actividad-vulnerable/jys/MexJYSClient.ts +73 -0
- package/src/models/mex/actividad-vulnerable/jys/MexJYSReport.ts +114 -0
- package/src/models/mex/actividad-vulnerable/jys/MexJYSReportItem.ts +105 -0
- package/src/models/mex/actividad-vulnerable/jys/MexJYSTransaction.ts +178 -0
- package/src/models/mex/actividad-vulnerable/tsc/MexTSCClient.ts +73 -0
- package/src/models/mex/actividad-vulnerable/tsc/MexTSCReport.ts +114 -0
- package/src/models/mex/actividad-vulnerable/tsc/MexTSCReportItem.ts +105 -0
- package/src/models/mex/actividad-vulnerable/tsc/MexTSCTransaction.ts +104 -0
- package/src/models/mex/index.ts +57 -0
- package/src/models/types.ts +196 -0
- package/src/namespaces/index.ts +29 -0
- package/src/namespaces/mexico/actividad-vulnerable/avi/index.ts +62 -0
- package/src/namespaces/mexico/actividad-vulnerable/index.ts +79 -0
- package/src/namespaces/mexico/actividad-vulnerable/jys/index.ts +72 -0
- package/src/namespaces/mexico/actividad-vulnerable/tsc/index.ts +60 -0
- package/src/namespaces/mexico/index.ts +325 -0
- package/src/resources/addresses.ts +391 -0
- package/src/resources/bank-accounts.ts +417 -0
- package/src/resources/base.ts +327 -0
- package/src/resources/clients.ts +808 -0
- package/src/resources/contact-methods.ts +412 -0
- package/src/resources/documents.ts +688 -0
- package/src/resources/index.ts +40 -0
- package/src/resources/mex/actividad-vulnerable/avi/clients.ts +559 -0
- package/src/resources/mex/actividad-vulnerable/avi/index.ts +7 -0
- package/src/resources/mex/actividad-vulnerable/avi/reports.ts +609 -0
- package/src/resources/mex/actividad-vulnerable/avi/transactions.ts +404 -0
- package/src/resources/mex/actividad-vulnerable/index.ts +12 -0
- package/src/resources/mex/actividad-vulnerable/jys/clients.ts +445 -0
- package/src/resources/mex/actividad-vulnerable/jys/index.ts +7 -0
- package/src/resources/mex/actividad-vulnerable/jys/reports.ts +591 -0
- package/src/resources/mex/actividad-vulnerable/jys/transactions.ts +395 -0
- package/src/resources/mex/actividad-vulnerable/tsc/clients.ts +445 -0
- package/src/resources/mex/actividad-vulnerable/tsc/index.ts +7 -0
- package/src/resources/mex/actividad-vulnerable/tsc/reports.ts +591 -0
- package/src/resources/mex/actividad-vulnerable/tsc/transactions.ts +404 -0
- package/src/resources/mex/addresses.ts +493 -0
- package/src/resources/mex/bank-accounts.ts +283 -0
- package/src/resources/mex/clients.ts +758 -0
- package/src/resources/mex/ebr.ts +621 -0
- package/src/resources/mex/index.ts +23 -0
- package/src/resources/mex/reports.ts +643 -0
- package/src/resources/mex/transactions.ts +422 -0
- package/src/resources/reports.ts +515 -0
- package/src/resources/transactions.ts +358 -0
- package/src/sdk/ComplianceSDK.ts +812 -0
- package/src/sdk/base.ts +43 -0
- package/src/sdk/index.ts +98 -0
- package/src/sdk/mex/ComplianceSDK.ts +147 -0
- package/src/sdk/mex/actividad-vulnerable/avi/ComplianceSDK.ts +55 -0
- package/src/sdk/mex/actividad-vulnerable/avi/index.ts +16 -0
- package/src/sdk/mex/actividad-vulnerable/avi/types.ts +86 -0
- package/src/sdk/mex/actividad-vulnerable/index.ts +58 -0
- package/src/sdk/mex/actividad-vulnerable/jys/ComplianceSDK.ts +54 -0
- package/src/sdk/mex/actividad-vulnerable/jys/index.ts +16 -0
- package/src/sdk/mex/actividad-vulnerable/jys/types.ts +86 -0
- package/src/sdk/mex/actividad-vulnerable/tsc/ComplianceSDK.ts +54 -0
- package/src/sdk/mex/actividad-vulnerable/tsc/index.ts +16 -0
- package/src/sdk/mex/actividad-vulnerable/tsc/types.ts +86 -0
- package/src/sdk/mex/index.ts +66 -0
- package/src/sdk/mex/types.ts +88 -0
- package/src/sdk/resource-registry.ts +204 -0
- package/src/sdk/sdk-registry.ts +99 -0
- package/src/sdk/types.ts +304 -0
- package/src/utils/environment.ts +187 -0
- package/src/utils/filters.ts +412 -0
- package/src/utils/index.ts +134 -0
- package/src/utils/pagination.ts +143 -0
- package/src/utils/session.ts +303 -0
- package/src/utils/trpc-client.ts +242 -0
- package/src/utils/upload.ts +388 -0
- package/dist/chunk-2CIR32CT.cjs +0 -22972
- package/dist/chunk-2CIR32CT.cjs.map +0 -1
- package/dist/chunk-5FXVLHD3.js +0 -23
- package/dist/chunk-5FXVLHD3.js.map +0 -1
- package/dist/chunk-62M35I6I.js +0 -249
- package/dist/chunk-62M35I6I.js.map +0 -1
- package/dist/chunk-ARI5WM5X.js +0 -22819
- package/dist/chunk-ARI5WM5X.js.map +0 -1
- package/dist/chunk-B75YW6BN.cjs +0 -26
- package/dist/chunk-B75YW6BN.cjs.map +0 -1
- package/dist/chunk-F6THYYF5.cjs +0 -26
- package/dist/chunk-F6THYYF5.cjs.map +0 -1
- package/dist/chunk-HAEBRF5N.js +0 -23
- package/dist/chunk-HAEBRF5N.js.map +0 -1
- package/dist/chunk-HEGTPUIS.cjs +0 -26
- package/dist/chunk-HEGTPUIS.cjs.map +0 -1
- package/dist/chunk-TYXYZ3WV.js +0 -23
- package/dist/chunk-TYXYZ3WV.js.map +0 -1
- package/dist/chunk-ZFW24DFL.cjs +0 -261
- package/dist/chunk-ZFW24DFL.cjs.map +0 -1
- package/dist/filters-UX1_wF2Z.d.cts +0 -6460
- package/dist/filters-UX1_wF2Z.d.ts +0 -6460
- package/dist/index-6dNlw8uP.d.cts +0 -2866
- package/dist/index-CUIwWk-y.d.ts +0 -2866
- package/dist/index.cjs +0 -417
- package/dist/index.cjs.map +0 -1
- package/dist/index.d.cts +0 -9
- package/dist/index.d.ts +0 -9
- package/dist/index.js +0 -28
- package/dist/index.js.map +0 -1
- package/dist/mexico/actividad-vulnerable/avi.cjs +0 -320
- package/dist/mexico/actividad-vulnerable/avi.cjs.map +0 -1
- package/dist/mexico/actividad-vulnerable/avi.d.cts +0 -680
- package/dist/mexico/actividad-vulnerable/avi.js +0 -55
- package/dist/mexico/actividad-vulnerable/avi.js.map +0 -1
- package/dist/mexico/actividad-vulnerable/jys.cjs +0 -330
- package/dist/mexico/actividad-vulnerable/jys.cjs.map +0 -1
- package/dist/mexico/actividad-vulnerable/jys.d.cts +0 -746
- package/dist/mexico/actividad-vulnerable/jys.js +0 -65
- package/dist/mexico/actividad-vulnerable/jys.js.map +0 -1
- package/dist/mexico/actividad-vulnerable/tsc.cjs +0 -318
- package/dist/mexico/actividad-vulnerable/tsc.cjs.map +0 -1
- package/dist/mexico/actividad-vulnerable/tsc.d.cts +0 -600
- package/dist/mexico/actividad-vulnerable/tsc.js +0 -53
- package/dist/mexico/actividad-vulnerable/tsc.js.map +0 -1
- package/dist/mexico/index.cjs +0 -384
- package/dist/mexico/index.cjs.map +0 -1
- package/dist/mexico/index.d.cts +0 -1422
- package/dist/mexico/index.d.ts +0 -1422
- package/dist/mexico/index.js +0 -7
- package/dist/mexico/index.js.map +0 -1
|
@@ -0,0 +1,447 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Documents resource
|
|
3
|
+
*
|
|
4
|
+
* CRUD operations for documents. File upload/download operations are handled separately.
|
|
5
|
+
* All documents are created with pending_upload status.
|
|
6
|
+
*/
|
|
7
|
+
import { createDocumentInputSchema, updateDocumentInputSchema, confirmUploadInputSchema, } from "@artu-ai/shared";
|
|
8
|
+
import { z } from "zod";
|
|
9
|
+
import { Document } from "../models/Document";
|
|
10
|
+
import { BaseResource } from "./base";
|
|
11
|
+
import { uploadToS3, normalizeFile, validateFileSize, } from "../utils/upload";
|
|
12
|
+
import { UploadError } from "../errors/upload";
|
|
13
|
+
// ─────────────────────────────────────────────────────────────────
|
|
14
|
+
// Resource
|
|
15
|
+
// ─────────────────────────────────────────────────────────────────
|
|
16
|
+
/**
|
|
17
|
+
* Documents resource for managing document records.
|
|
18
|
+
*
|
|
19
|
+
* @example
|
|
20
|
+
* ```typescript
|
|
21
|
+
* // Create a document record
|
|
22
|
+
* const doc = await sdk.documents.create({
|
|
23
|
+
* clientId: "client_123",
|
|
24
|
+
* jurisdiction: "MX",
|
|
25
|
+
* type: "ine_front",
|
|
26
|
+
* category: "identity",
|
|
27
|
+
* });
|
|
28
|
+
*
|
|
29
|
+
* // List documents
|
|
30
|
+
* const docs = await sdk.documents.list({ filter: { clientId: "client_123" } });
|
|
31
|
+
*
|
|
32
|
+
* // Update document metadata
|
|
33
|
+
* await sdk.documents.update(doc.id, { metadata: { verified: true } });
|
|
34
|
+
* ```
|
|
35
|
+
*/
|
|
36
|
+
export class DocumentsResource extends BaseResource {
|
|
37
|
+
// ─────────────────────────────────────────────────────────────────
|
|
38
|
+
// Create
|
|
39
|
+
// ─────────────────────────────────────────────────────────────────
|
|
40
|
+
/**
|
|
41
|
+
* Creates a new document record and returns a presigned POST upload URL.
|
|
42
|
+
*
|
|
43
|
+
* Documents are created with status "pending_upload".
|
|
44
|
+
* Use the returned presigned URL to upload the file directly to storage.
|
|
45
|
+
* After upload, call `confirmUpload()` to transition status to "uploaded".
|
|
46
|
+
*
|
|
47
|
+
* **Important:** The upload uses POST with FormData (not PUT). This allows
|
|
48
|
+
* enforcing a 25 MB file size limit at the storage level.
|
|
49
|
+
*
|
|
50
|
+
* @param data - Document data
|
|
51
|
+
* @returns The created document and presigned upload URL with form fields
|
|
52
|
+
*
|
|
53
|
+
* @example
|
|
54
|
+
* ```typescript
|
|
55
|
+
* // Create document and get upload URL
|
|
56
|
+
* const { document, upload } = await compliance.documents.create({
|
|
57
|
+
* clientId: "client-123",
|
|
58
|
+
* jurisdiction: "MX",
|
|
59
|
+
* type: "ine_front",
|
|
60
|
+
* });
|
|
61
|
+
*
|
|
62
|
+
* // Build FormData with fields + file (file must be last!)
|
|
63
|
+
* const formData = new FormData();
|
|
64
|
+
* Object.entries(upload.fields).forEach(([key, value]) => {
|
|
65
|
+
* formData.append(key, value);
|
|
66
|
+
* });
|
|
67
|
+
* formData.append("Content-Type", file.type); // Add content-type
|
|
68
|
+
* formData.append("file", file); // File MUST be last
|
|
69
|
+
*
|
|
70
|
+
* // Upload via POST
|
|
71
|
+
* const uploadResponse = await fetch(upload.url, {
|
|
72
|
+
* method: "POST",
|
|
73
|
+
* body: formData,
|
|
74
|
+
* });
|
|
75
|
+
*
|
|
76
|
+
* if (!uploadResponse.ok) {
|
|
77
|
+
* throw new Error(`Upload failed: ${uploadResponse.status}`);
|
|
78
|
+
* }
|
|
79
|
+
*
|
|
80
|
+
* // Confirm upload with file metadata
|
|
81
|
+
* await compliance.documents.confirmUpload({
|
|
82
|
+
* id: document.id,
|
|
83
|
+
* filename: file.name,
|
|
84
|
+
* contentType: file.type,
|
|
85
|
+
* size: file.size,
|
|
86
|
+
* });
|
|
87
|
+
* ```
|
|
88
|
+
*/
|
|
89
|
+
async create(data) {
|
|
90
|
+
const validated = this.validate(createDocumentInputSchema, data);
|
|
91
|
+
const response = await this.execute(() => this.trpc.documents.create.mutate(validated));
|
|
92
|
+
return {
|
|
93
|
+
document: this.instantiate(response.document),
|
|
94
|
+
upload: response.upload,
|
|
95
|
+
};
|
|
96
|
+
}
|
|
97
|
+
/**
|
|
98
|
+
* Confirms that a file has been uploaded to storage.
|
|
99
|
+
*
|
|
100
|
+
* Call this after uploading a file via the presigned URL returned by `create()`.
|
|
101
|
+
* This transitions the document status from "pending_upload" to "uploaded".
|
|
102
|
+
*
|
|
103
|
+
* @param data - Upload confirmation data
|
|
104
|
+
* @returns The updated document
|
|
105
|
+
*/
|
|
106
|
+
async confirmUpload(data) {
|
|
107
|
+
const validated = this.validate(confirmUploadInputSchema, data);
|
|
108
|
+
const response = await this.execute(() => this.trpc.documents.confirmUpload.mutate(validated));
|
|
109
|
+
return this.instantiate(response);
|
|
110
|
+
}
|
|
111
|
+
// ─────────────────────────────────────────────────────────────────
|
|
112
|
+
// Upload (High-Level Helper)
|
|
113
|
+
// ─────────────────────────────────────────────────────────────────
|
|
114
|
+
/**
|
|
115
|
+
* Uploads a file and creates a document in one operation.
|
|
116
|
+
*
|
|
117
|
+
* This is a convenience method that combines:
|
|
118
|
+
* 1. Creating a document record with presigned URL
|
|
119
|
+
* 2. Uploading the file directly to storage
|
|
120
|
+
* 3. Confirming the upload
|
|
121
|
+
*
|
|
122
|
+
* For more control over the upload process, use `create()`, manual upload,
|
|
123
|
+
* and `confirmUpload()` separately.
|
|
124
|
+
*
|
|
125
|
+
* @param file - The file to upload (File, Blob, or UploadableFile)
|
|
126
|
+
* @param data - Document metadata (clientId, jurisdiction, type, etc.)
|
|
127
|
+
* @param options - Upload options (progress callback, abort signal, timeout)
|
|
128
|
+
* @returns The created and uploaded document
|
|
129
|
+
*
|
|
130
|
+
* @example
|
|
131
|
+
* ```typescript
|
|
132
|
+
* // Simple upload
|
|
133
|
+
* const document = await sdk.documents.upload(file, {
|
|
134
|
+
* clientId: "client-123",
|
|
135
|
+
* jurisdiction: "MX",
|
|
136
|
+
* type: "ine_front",
|
|
137
|
+
* });
|
|
138
|
+
*
|
|
139
|
+
* // With progress tracking
|
|
140
|
+
* const document = await sdk.documents.upload(file, {
|
|
141
|
+
* clientId: "client-123",
|
|
142
|
+
* jurisdiction: "MX",
|
|
143
|
+
* type: "ine_front",
|
|
144
|
+
* }, {
|
|
145
|
+
* onProgress: (progress) => {
|
|
146
|
+
* console.log(`Upload: ${Math.round(progress * 100)}%`);
|
|
147
|
+
* },
|
|
148
|
+
* });
|
|
149
|
+
*
|
|
150
|
+
* // With abort support
|
|
151
|
+
* const controller = new AbortController();
|
|
152
|
+
* const uploadPromise = sdk.documents.upload(file, data, {
|
|
153
|
+
* signal: controller.signal,
|
|
154
|
+
* });
|
|
155
|
+
*
|
|
156
|
+
* // Cancel the upload
|
|
157
|
+
* controller.abort();
|
|
158
|
+
* ```
|
|
159
|
+
*
|
|
160
|
+
* @throws {FileTooLargeError} If file exceeds 25 MB limit
|
|
161
|
+
* @throws {UploadError} If upload fails at any stage
|
|
162
|
+
* @throws {UploadAbortedError} If upload is cancelled via AbortSignal
|
|
163
|
+
* @throws {UploadTimeoutError} If upload times out
|
|
164
|
+
*/
|
|
165
|
+
async upload(file, data, options = {}) {
|
|
166
|
+
const { onProgress, signal, timeout } = options;
|
|
167
|
+
// Normalize file input
|
|
168
|
+
const normalizedFile = normalizeFile(file);
|
|
169
|
+
// Validate file size before starting
|
|
170
|
+
validateFileSize(normalizedFile.size);
|
|
171
|
+
// Check if already aborted
|
|
172
|
+
if (signal?.aborted) {
|
|
173
|
+
throw new UploadError("Upload was aborted before starting", "request");
|
|
174
|
+
}
|
|
175
|
+
// Determine content type (use provided or infer from file)
|
|
176
|
+
const contentType = data.contentType || normalizedFile.type;
|
|
177
|
+
if (!contentType || contentType === "application/octet-stream") {
|
|
178
|
+
throw new UploadError("Could not determine file content type. Please provide contentType explicitly.", "request");
|
|
179
|
+
}
|
|
180
|
+
// Validate content type is allowed
|
|
181
|
+
const allowedTypes = [
|
|
182
|
+
"image/jpeg",
|
|
183
|
+
"image/png",
|
|
184
|
+
"image/webp",
|
|
185
|
+
"application/pdf",
|
|
186
|
+
];
|
|
187
|
+
if (!allowedTypes.includes(contentType)) {
|
|
188
|
+
throw new UploadError(`Invalid file type: ${contentType}. Allowed types: ${allowedTypes.join(", ")}`, "request");
|
|
189
|
+
}
|
|
190
|
+
// Step 1: Create document and get presigned URL
|
|
191
|
+
const createInput = {
|
|
192
|
+
...data,
|
|
193
|
+
contentType: contentType,
|
|
194
|
+
};
|
|
195
|
+
const { document, upload } = await this.create(createInput);
|
|
196
|
+
// upload should always be present when contentType is provided
|
|
197
|
+
if (!upload) {
|
|
198
|
+
throw new UploadError("Server did not return upload URL. This should not happen.", "request");
|
|
199
|
+
}
|
|
200
|
+
// Step 2: Upload file to S3
|
|
201
|
+
// Note: If upload fails, the document remains in pending_upload status
|
|
202
|
+
// and will be cleaned up by the orphan document cleanup job
|
|
203
|
+
await uploadToS3(normalizedFile, upload, {
|
|
204
|
+
onProgress,
|
|
205
|
+
signal,
|
|
206
|
+
timeout,
|
|
207
|
+
});
|
|
208
|
+
// Step 3: Confirm upload
|
|
209
|
+
return this.confirmUpload({
|
|
210
|
+
id: document.id,
|
|
211
|
+
filename: normalizedFile.name,
|
|
212
|
+
contentType,
|
|
213
|
+
size: normalizedFile.size,
|
|
214
|
+
});
|
|
215
|
+
}
|
|
216
|
+
/**
|
|
217
|
+
* Gets a presigned URL for downloading/viewing a document.
|
|
218
|
+
*
|
|
219
|
+
* The URL allows direct access to the file in storage without going through the backend.
|
|
220
|
+
* Use this for displaying documents in the UI or downloading them.
|
|
221
|
+
*
|
|
222
|
+
* @param id - Document ID
|
|
223
|
+
* @returns Presigned download URL with expiration
|
|
224
|
+
* @throws If document doesn't exist, is in pending_upload status, or has no storage path
|
|
225
|
+
*
|
|
226
|
+
* @example
|
|
227
|
+
* ```typescript
|
|
228
|
+
* // Get download URL for viewing
|
|
229
|
+
* const { url, expiresAt } = await compliance.documents.getDownloadUrl(docId);
|
|
230
|
+
*
|
|
231
|
+
* // Display in browser
|
|
232
|
+
* window.open(url, '_blank');
|
|
233
|
+
*
|
|
234
|
+
* // Or use in an img tag
|
|
235
|
+
* <img src={url} alt="Document" />
|
|
236
|
+
* ```
|
|
237
|
+
*/
|
|
238
|
+
async getDownloadUrl(id) {
|
|
239
|
+
const response = await this.execute(() => this.trpc.documents.getDownloadUrl.query({ id }));
|
|
240
|
+
return response;
|
|
241
|
+
}
|
|
242
|
+
// ─────────────────────────────────────────────────────────────────
|
|
243
|
+
// Retrieve
|
|
244
|
+
// ─────────────────────────────────────────────────────────────────
|
|
245
|
+
/**
|
|
246
|
+
* Retrieves a document by ID
|
|
247
|
+
*
|
|
248
|
+
* @param id - Document ID
|
|
249
|
+
* @returns The document
|
|
250
|
+
*/
|
|
251
|
+
async retrieve(id) {
|
|
252
|
+
const response = await this.execute(() => this.trpc.documents.retrieve.query({ id }));
|
|
253
|
+
return this.instantiate(response);
|
|
254
|
+
}
|
|
255
|
+
/**
|
|
256
|
+
* Retrieves a document by metadata key/value.
|
|
257
|
+
*/
|
|
258
|
+
async retrieveByMetadata(key, value) {
|
|
259
|
+
const response = await this.execute(() => this.trpc.documents.retrieveByMetadata.query({ key, value }));
|
|
260
|
+
return this.instantiate(response);
|
|
261
|
+
}
|
|
262
|
+
/**
|
|
263
|
+
* Retrieves a document by externalId
|
|
264
|
+
*/
|
|
265
|
+
async retrieveByExternalId(externalId) {
|
|
266
|
+
const response = await this.execute(() => this.trpc.documents.retrieveByExternalId.query({ externalId }));
|
|
267
|
+
return this.instantiate(response);
|
|
268
|
+
}
|
|
269
|
+
// ─────────────────────────────────────────────────────────────────
|
|
270
|
+
// Update
|
|
271
|
+
// ─────────────────────────────────────────────────────────────────
|
|
272
|
+
/**
|
|
273
|
+
* Updates a document's metadata, expiration, or fields.
|
|
274
|
+
*
|
|
275
|
+
* Note: Status cannot be updated directly - it's managed by the system.
|
|
276
|
+
*
|
|
277
|
+
* @param id - Document ID
|
|
278
|
+
* @param data - Fields to update
|
|
279
|
+
* @returns The updated document
|
|
280
|
+
*/
|
|
281
|
+
async update(id, data) {
|
|
282
|
+
const validated = this.validate(updateDocumentInputSchema, data);
|
|
283
|
+
const response = await this.execute(() => this.trpc.documents.update.mutate({
|
|
284
|
+
id,
|
|
285
|
+
data: validated,
|
|
286
|
+
}));
|
|
287
|
+
return this.instantiate(response);
|
|
288
|
+
}
|
|
289
|
+
// ─────────────────────────────────────────────────────────────────
|
|
290
|
+
// Delete
|
|
291
|
+
// ─────────────────────────────────────────────────────────────────
|
|
292
|
+
/**
|
|
293
|
+
* Soft-deletes a document
|
|
294
|
+
*
|
|
295
|
+
* @param id - Document ID
|
|
296
|
+
*/
|
|
297
|
+
async delete(id) {
|
|
298
|
+
await this.execute(() => this.trpc.documents.delete.mutate({ id }));
|
|
299
|
+
}
|
|
300
|
+
// ─────────────────────────────────────────────────────────────────
|
|
301
|
+
// List
|
|
302
|
+
// ─────────────────────────────────────────────────────────────────
|
|
303
|
+
/**
|
|
304
|
+
* Lists documents with optional filtering and pagination.
|
|
305
|
+
*
|
|
306
|
+
* @param options - List options with filter, cursor, and limit
|
|
307
|
+
* @returns Paginated list of documents
|
|
308
|
+
*/
|
|
309
|
+
async list(options) {
|
|
310
|
+
const response = await this.execute(() => this.trpc.documents.list.query(options));
|
|
311
|
+
const typedResponse = response;
|
|
312
|
+
return {
|
|
313
|
+
data: typedResponse.data.map((d) => this.instantiate(d)),
|
|
314
|
+
pagination: typedResponse.pagination,
|
|
315
|
+
};
|
|
316
|
+
}
|
|
317
|
+
/**
|
|
318
|
+
* Lists all documents for a specific client with pagination.
|
|
319
|
+
*
|
|
320
|
+
* @param clientId - Client ID
|
|
321
|
+
* @param options - Pagination options
|
|
322
|
+
* @returns Paginated list of documents
|
|
323
|
+
*/
|
|
324
|
+
async listByClient(clientId, options) {
|
|
325
|
+
const response = await this.execute(() => this.trpc.documents.listByClient.query({ clientId, ...options }));
|
|
326
|
+
const typedResponse = response;
|
|
327
|
+
return {
|
|
328
|
+
data: typedResponse.data.map((d) => this.instantiate(d)),
|
|
329
|
+
pagination: typedResponse.pagination,
|
|
330
|
+
};
|
|
331
|
+
}
|
|
332
|
+
/**
|
|
333
|
+
* Async iterator for documents with optional filtering.
|
|
334
|
+
*
|
|
335
|
+
* @param options - Filter options
|
|
336
|
+
* @yields Documents one at a time
|
|
337
|
+
*/
|
|
338
|
+
async *iterate(options) {
|
|
339
|
+
let cursor;
|
|
340
|
+
let hasMore = true;
|
|
341
|
+
while (hasMore) {
|
|
342
|
+
const response = await this.list({
|
|
343
|
+
...options,
|
|
344
|
+
cursor,
|
|
345
|
+
limit: options?.limit ?? 100,
|
|
346
|
+
});
|
|
347
|
+
for (const doc of response.data) {
|
|
348
|
+
yield doc;
|
|
349
|
+
}
|
|
350
|
+
cursor = response.pagination.nextCursor;
|
|
351
|
+
hasMore = response.pagination.hasMore;
|
|
352
|
+
}
|
|
353
|
+
}
|
|
354
|
+
async createMany(documents, options = {}) {
|
|
355
|
+
const atomic = options.atomic ?? true;
|
|
356
|
+
const validated = this.validate(z.array(createDocumentInputSchema), documents);
|
|
357
|
+
const response = await this.execute(() => this.trpc.documents.createMany.mutate({ items: validated, atomic }));
|
|
358
|
+
if (response.atomic) {
|
|
359
|
+
return {
|
|
360
|
+
atomic: true,
|
|
361
|
+
data: response.data.map((d) => this.instantiate(d)),
|
|
362
|
+
};
|
|
363
|
+
}
|
|
364
|
+
else {
|
|
365
|
+
return {
|
|
366
|
+
atomic: false,
|
|
367
|
+
succeeded: response.succeeded.map((item) => ({
|
|
368
|
+
index: item.index,
|
|
369
|
+
data: this.instantiate(item.data),
|
|
370
|
+
})),
|
|
371
|
+
failed: response.failed,
|
|
372
|
+
};
|
|
373
|
+
}
|
|
374
|
+
}
|
|
375
|
+
async updateMany(updates, options = {}) {
|
|
376
|
+
const atomic = options.atomic ?? true;
|
|
377
|
+
const validated = updates.map((u) => ({
|
|
378
|
+
id: u.id,
|
|
379
|
+
data: this.validate(updateDocumentInputSchema, u.data),
|
|
380
|
+
}));
|
|
381
|
+
const response = await this.execute(() => this.trpc.documents.updateMany.mutate({ items: validated, atomic }));
|
|
382
|
+
if (response.atomic) {
|
|
383
|
+
return {
|
|
384
|
+
atomic: true,
|
|
385
|
+
data: response.data.map((d) => this.instantiate(d)),
|
|
386
|
+
};
|
|
387
|
+
}
|
|
388
|
+
else {
|
|
389
|
+
return {
|
|
390
|
+
atomic: false,
|
|
391
|
+
succeeded: response.succeeded.map((item) => ({
|
|
392
|
+
index: item.index,
|
|
393
|
+
data: this.instantiate(item.data),
|
|
394
|
+
})),
|
|
395
|
+
failed: response.failed,
|
|
396
|
+
};
|
|
397
|
+
}
|
|
398
|
+
}
|
|
399
|
+
// ─────────────────────────────────────────────────────────────────
|
|
400
|
+
// Helpers
|
|
401
|
+
// ─────────────────────────────────────────────────────────────────
|
|
402
|
+
/**
|
|
403
|
+
* Gets document count for a client
|
|
404
|
+
*
|
|
405
|
+
* @param clientId - Client ID
|
|
406
|
+
* @returns Count of documents
|
|
407
|
+
*/
|
|
408
|
+
async countByClient(clientId) {
|
|
409
|
+
const response = await this.listByClient(clientId, { limit: 100 });
|
|
410
|
+
// For accurate count, we'd need a dedicated endpoint
|
|
411
|
+
// This is an approximation
|
|
412
|
+
let count = response.data.length;
|
|
413
|
+
let cursor = response.pagination.nextCursor;
|
|
414
|
+
while (response.pagination.hasMore && cursor) {
|
|
415
|
+
const next = await this.listByClient(clientId, { cursor, limit: 100 });
|
|
416
|
+
count += next.data.length;
|
|
417
|
+
cursor = next.pagination.nextCursor;
|
|
418
|
+
if (!next.pagination.hasMore)
|
|
419
|
+
break;
|
|
420
|
+
}
|
|
421
|
+
return count;
|
|
422
|
+
}
|
|
423
|
+
/**
|
|
424
|
+
* Checks if a document with the given type exists for a client
|
|
425
|
+
*
|
|
426
|
+
* @param clientId - Client ID
|
|
427
|
+
* @param type - Document type
|
|
428
|
+
* @returns True if document exists and is available
|
|
429
|
+
*/
|
|
430
|
+
async hasDocumentType(clientId, type) {
|
|
431
|
+
const response = await this.list({
|
|
432
|
+
filter: { clientId, type },
|
|
433
|
+
limit: 1,
|
|
434
|
+
});
|
|
435
|
+
return response.data.some((d) => d.type === type && d.isAvailable);
|
|
436
|
+
}
|
|
437
|
+
// ─────────────────────────────────────────────────────────────────
|
|
438
|
+
// Protected Methods
|
|
439
|
+
// ─────────────────────────────────────────────────────────────────
|
|
440
|
+
/**
|
|
441
|
+
* Instantiates a Document model from raw data.
|
|
442
|
+
* Override in subclasses to return jurisdiction-specific models.
|
|
443
|
+
*/
|
|
444
|
+
instantiate(data) {
|
|
445
|
+
return new Document(data);
|
|
446
|
+
}
|
|
447
|
+
}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Resource Managers
|
|
3
|
+
*
|
|
4
|
+
* This module exports resource classes for interacting with
|
|
5
|
+
* the compliance API. Each resource handles CRUD operations,
|
|
6
|
+
* pagination, and error mapping for a specific entity type.
|
|
7
|
+
*
|
|
8
|
+
* Resource Hierarchy:
|
|
9
|
+
* - Base resources: Unscoped, accept full nested input
|
|
10
|
+
* - Mex resources: Mexico-scoped, accept flattened MX input
|
|
11
|
+
* - Activity resources: Activity-scoped, accept fully flattened input
|
|
12
|
+
*/
|
|
13
|
+
export { BaseResource, ReadOnlyResource, type ResourceConfig } from "./base";
|
|
14
|
+
export { ClientsResource, type BatchOptions } from "./clients";
|
|
15
|
+
export { TransactionsResource } from "./transactions";
|
|
16
|
+
export type { RelatedClient, LinkedClient } from "@artu-ai/shared";
|
|
17
|
+
export { ReportsResource, type ReportFilter, type ReportItemFilter, type AddItemsResult, } from "./reports";
|
|
18
|
+
export { AddressesResource } from "./addresses";
|
|
19
|
+
export { ContactMethodsResource } from "./contact-methods";
|
|
20
|
+
export { BankAccountsResource } from "./bank-accounts";
|
|
21
|
+
export { DocumentsResource, type CreateDocumentResult, type UploadDocumentInput, type UploadOptions, } from "./documents";
|
|
22
|
+
export * from "./mex";
|
|
23
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/resources/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAGH,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AAG7E,OAAO,EAAE,eAAe,EAAE,KAAK,YAAY,EAAE,MAAM,WAAW,CAAC;AAC/D,OAAO,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AACtD,YAAY,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AACnE,OAAO,EACL,eAAe,EACf,KAAK,YAAY,EACjB,KAAK,gBAAgB,EACrB,KAAK,cAAc,GACpB,MAAM,WAAW,CAAC;AAGnB,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAC;AAC3D,OAAO,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,EACL,iBAAiB,EACjB,KAAK,oBAAoB,EACzB,KAAK,mBAAmB,EACxB,KAAK,aAAa,GACnB,MAAM,aAAa,CAAC;AAGrB,cAAc,OAAO,CAAC"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Resource Managers
|
|
3
|
+
*
|
|
4
|
+
* This module exports resource classes for interacting with
|
|
5
|
+
* the compliance API. Each resource handles CRUD operations,
|
|
6
|
+
* pagination, and error mapping for a specific entity type.
|
|
7
|
+
*
|
|
8
|
+
* Resource Hierarchy:
|
|
9
|
+
* - Base resources: Unscoped, accept full nested input
|
|
10
|
+
* - Mex resources: Mexico-scoped, accept flattened MX input
|
|
11
|
+
* - Activity resources: Activity-scoped, accept fully flattened input
|
|
12
|
+
*/
|
|
13
|
+
// Base classes
|
|
14
|
+
export { BaseResource, ReadOnlyResource } from "./base";
|
|
15
|
+
// Base resource implementations (unscoped)
|
|
16
|
+
export { ClientsResource } from "./clients";
|
|
17
|
+
export { TransactionsResource } from "./transactions";
|
|
18
|
+
export { ReportsResource, } from "./reports";
|
|
19
|
+
// Supporting resources
|
|
20
|
+
export { AddressesResource } from "./addresses";
|
|
21
|
+
export { ContactMethodsResource } from "./contact-methods";
|
|
22
|
+
export { BankAccountsResource } from "./bank-accounts";
|
|
23
|
+
export { DocumentsResource, } from "./documents";
|
|
24
|
+
// Mexico-scoped resources
|
|
25
|
+
export * from "./mex";
|
|
@@ -0,0 +1,165 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* AVI (Activos Virtuales) Clients Resource
|
|
3
|
+
*
|
|
4
|
+
* Extends MexClientsResource with AVI-specific behavior:
|
|
5
|
+
* - Accepts flattened CreateAVIClientInput (AVI fields at root level)
|
|
6
|
+
* - Returns MexAVIClient models
|
|
7
|
+
*/
|
|
8
|
+
import type { CreateClientInput, UpdateClientInput, ClientFilter, ClientSort, ListOptions, PaginatedResponse, CreateAVIClientInput, UpdateAVIClientInput, AtomicBatchResult, PartialBatchResult, ClientRelationshipType, LinkedClient as LinkedClientInput, CreateMexAddressInput, UpdateMexAddressInput, CreateContactMethodInput, UpdateContactMethodInput, CreateBankAccountInput, UpdateBankAccountInput, SyncItem, SyncResult, AVIClientFilter, AVIClientSort } from "@artu-ai/shared";
|
|
9
|
+
import { MexClientsResource } from "../../clients";
|
|
10
|
+
import { type ClientIncludeMap } from "../../../clients";
|
|
11
|
+
import { MexAVIClient, MexAddress, MexBankAccount, ContactMethod, LinkedClient, type ClientData } from "../../../../models";
|
|
12
|
+
/**
|
|
13
|
+
* AVI (Activos Virtuales) scoped clients resource.
|
|
14
|
+
*
|
|
15
|
+
* Provides the same operations as MexClientsResource but with:
|
|
16
|
+
* - Flattened input types (AVI fields at root level)
|
|
17
|
+
* - MexAVIClient model return type
|
|
18
|
+
*
|
|
19
|
+
* @example
|
|
20
|
+
* ```typescript
|
|
21
|
+
* const aviSdk = new ComplianceSDK({
|
|
22
|
+
* apiKey,
|
|
23
|
+
* environment: "test",
|
|
24
|
+
* jurisdiction: Jurisdiction.Mexico,
|
|
25
|
+
* actividadVulnerable: CodigoActividad.AVI,
|
|
26
|
+
* });
|
|
27
|
+
*
|
|
28
|
+
* // Create with fully flattened input
|
|
29
|
+
* const client = await aviSdk.clients.create({
|
|
30
|
+
* type: ClientType.Person,
|
|
31
|
+
* name: "Juan García",
|
|
32
|
+
* rfc: "GAJL850101ABC", // MX field
|
|
33
|
+
* username: "JGARCIA", // AVI field at root!
|
|
34
|
+
* });
|
|
35
|
+
*
|
|
36
|
+
* // Returns MexAVIClient
|
|
37
|
+
* console.log(client.username);
|
|
38
|
+
* ```
|
|
39
|
+
*/
|
|
40
|
+
export declare class AVIClientsResource extends MexClientsResource<AVIClientSort> {
|
|
41
|
+
/**
|
|
42
|
+
* Creates a new AVI client with fully flattened input.
|
|
43
|
+
*/
|
|
44
|
+
create(data: CreateAVIClientInput): Promise<MexAVIClient>;
|
|
45
|
+
/**
|
|
46
|
+
* Retrieves a client by ID.
|
|
47
|
+
*/
|
|
48
|
+
retrieve(id: string, include?: ClientIncludeMap): Promise<MexAVIClient>;
|
|
49
|
+
/**
|
|
50
|
+
* Retrieves an AVI client by externalId.
|
|
51
|
+
*/
|
|
52
|
+
retrieveByExternalId(externalId: string): Promise<MexAVIClient>;
|
|
53
|
+
/**
|
|
54
|
+
* Updates an AVI client with flattened input.
|
|
55
|
+
*/
|
|
56
|
+
update(id: string, data: UpdateAVIClientInput): Promise<MexAVIClient>;
|
|
57
|
+
/**
|
|
58
|
+
* Lists AVI clients with optional filtering.
|
|
59
|
+
*
|
|
60
|
+
* Accepts fully flattened AVI filter (MX and AVI fields at root level)
|
|
61
|
+
* and automatically transforms to nested format before calling the API.
|
|
62
|
+
*
|
|
63
|
+
* @example
|
|
64
|
+
* ```typescript
|
|
65
|
+
* const { data } = await aviSdk.clients.list({
|
|
66
|
+
* filter: {
|
|
67
|
+
* name: { contains: "García" },
|
|
68
|
+
* rfc: { startsWith: "GAJL" }, // MX field at root
|
|
69
|
+
* username: { contains: "jgarcia" }, // AVI field at root!
|
|
70
|
+
* },
|
|
71
|
+
* });
|
|
72
|
+
* ```
|
|
73
|
+
*/
|
|
74
|
+
list(options?: ListOptions<AVIClientFilter, AVIClientSort>): Promise<PaginatedResponse<MexAVIClient>>;
|
|
75
|
+
/**
|
|
76
|
+
* Iterates over AVI clients.
|
|
77
|
+
*
|
|
78
|
+
* Accepts fully flattened AVI filter (MX and AVI fields at root level)
|
|
79
|
+
* and automatically transforms to nested format before calling the API.
|
|
80
|
+
*/
|
|
81
|
+
iterate(filter?: AVIClientFilter): AsyncGenerator<MexAVIClient, void, undefined>;
|
|
82
|
+
/**
|
|
83
|
+
* Creates multiple AVI clients with flattened input.
|
|
84
|
+
*/
|
|
85
|
+
createMany(clients: CreateAVIClientInput[], options?: {
|
|
86
|
+
atomic?: true;
|
|
87
|
+
}): Promise<AtomicBatchResult<MexAVIClient>>;
|
|
88
|
+
createMany(clients: CreateAVIClientInput[], options: {
|
|
89
|
+
atomic: false;
|
|
90
|
+
}): Promise<PartialBatchResult<MexAVIClient>>;
|
|
91
|
+
/**
|
|
92
|
+
* Updates multiple AVI clients.
|
|
93
|
+
*/
|
|
94
|
+
updateMany(updates: {
|
|
95
|
+
id: string;
|
|
96
|
+
data: UpdateAVIClientInput;
|
|
97
|
+
}[], options?: {
|
|
98
|
+
atomic?: true;
|
|
99
|
+
}): Promise<AtomicBatchResult<MexAVIClient>>;
|
|
100
|
+
updateMany(updates: {
|
|
101
|
+
id: string;
|
|
102
|
+
data: UpdateAVIClientInput;
|
|
103
|
+
}[], options: {
|
|
104
|
+
atomic: false;
|
|
105
|
+
}): Promise<PartialBatchResult<MexAVIClient>>;
|
|
106
|
+
linkClient(parentClientId: string, childClientId: string, relationshipType: ClientRelationshipType, metadata?: Record<string, unknown>): Promise<MexAVIClient>;
|
|
107
|
+
unlinkClient(parentClientId: string, childClientId: string, relationshipType: ClientRelationshipType): Promise<MexAVIClient>;
|
|
108
|
+
listLinkedClients(parentClientId: string, relationshipType?: ClientRelationshipType): Promise<LinkedClient[]>;
|
|
109
|
+
setLinkedClients(parentClientId: string, linkedClients: LinkedClientInput[]): Promise<MexAVIClient>;
|
|
110
|
+
syncAll(clientId: string, data: {
|
|
111
|
+
client?: UpdateAVIClientInput;
|
|
112
|
+
addresses?: SyncItem<CreateMexAddressInput>[];
|
|
113
|
+
contactMethods?: SyncItem<CreateContactMethodInput>[];
|
|
114
|
+
bankAccounts?: SyncItem<CreateBankAccountInput>[];
|
|
115
|
+
linkedClients?: LinkedClientInput[];
|
|
116
|
+
}, options: {
|
|
117
|
+
replaceMode: true;
|
|
118
|
+
}): Promise<{
|
|
119
|
+
client: MexAVIClient;
|
|
120
|
+
addresses: SyncResult<MexAddress>;
|
|
121
|
+
contactMethods: SyncResult<ContactMethod>;
|
|
122
|
+
bankAccounts: SyncResult<MexBankAccount>;
|
|
123
|
+
}>;
|
|
124
|
+
syncAll(clientId: string, data: {
|
|
125
|
+
client?: UpdateAVIClientInput;
|
|
126
|
+
addresses?: SyncItem<UpdateMexAddressInput>[];
|
|
127
|
+
contactMethods?: SyncItem<UpdateContactMethodInput>[];
|
|
128
|
+
bankAccounts?: SyncItem<UpdateBankAccountInput>[];
|
|
129
|
+
linkedClients?: LinkedClientInput[];
|
|
130
|
+
}, options?: {
|
|
131
|
+
replaceMode?: boolean;
|
|
132
|
+
}): Promise<{
|
|
133
|
+
client: MexAVIClient;
|
|
134
|
+
addresses: SyncResult<MexAddress>;
|
|
135
|
+
contactMethods: SyncResult<ContactMethod>;
|
|
136
|
+
bankAccounts: SyncResult<MexBankAccount>;
|
|
137
|
+
}>;
|
|
138
|
+
/**
|
|
139
|
+
* Transforms a flattened AVIClientFilter to nested ClientFilter format
|
|
140
|
+
* and applies Mexico jurisdiction scoping.
|
|
141
|
+
*
|
|
142
|
+
* Extracts AVI-specific fields (username) from root level and nests them
|
|
143
|
+
* under jurisdictions.MX.actividadVulnerable.AVI.
|
|
144
|
+
*/
|
|
145
|
+
protected applyScopeToFilter(filter?: AVIClientFilter): ClientFilter;
|
|
146
|
+
/**
|
|
147
|
+
* Transforms a flattened AVIClientSort to nested ClientSort format.
|
|
148
|
+
*
|
|
149
|
+
* Maps flattened field names (username, rfc, curp) to their full API paths.
|
|
150
|
+
*/
|
|
151
|
+
protected applyScopeToSort(sort?: AVIClientSort): ClientSort | undefined;
|
|
152
|
+
/**
|
|
153
|
+
* Transforms flattened AVI input to nested API format.
|
|
154
|
+
*/
|
|
155
|
+
protected transformToNested(data: CreateAVIClientInput): CreateClientInput;
|
|
156
|
+
/**
|
|
157
|
+
* Transforms flattened AVI update input to nested API format.
|
|
158
|
+
*/
|
|
159
|
+
protected transformUpdateToNested(data: UpdateAVIClientInput): UpdateClientInput;
|
|
160
|
+
/**
|
|
161
|
+
* Instantiates a MexAVIClient model.
|
|
162
|
+
*/
|
|
163
|
+
protected instantiate(data: ClientData): MexAVIClient;
|
|
164
|
+
}
|
|
165
|
+
//# sourceMappingURL=clients.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"clients.d.ts","sourceRoot":"","sources":["../../../../../src/resources/mex/actividad-vulnerable/avi/clients.ts"],"names":[],"mappings":"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"}
|