@tstdl/base 0.92.142 → 0.92.144
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/ai/ai-file.service.js +1 -1
- package/ai/ai.service.js +3 -3
- package/ai/types.d.ts +1 -1
- package/api/client/client.d.ts +1 -1
- package/api/client/client.js +10 -4
- package/api/server/middlewares/content-type.middleware.js +8 -7
- package/api/types.js +1 -1
- package/authentication/client/authentication.service.js +3 -3
- package/authentication/server/authentication-ancillary.service.d.ts +11 -1
- package/authentication/server/authentication-ancillary.service.js +1 -1
- package/authentication/server/authentication-secret-requirements.validator.js +1 -1
- package/authentication/server/authentication.api-controller.js +22 -10
- package/authentication/server/authentication.service.d.ts +11 -5
- package/authentication/server/authentication.service.js +97 -49
- package/authentication/server/drizzle.config.js +2 -2
- package/authentication/server/module.js +1 -1
- package/cancellation/token.d.ts +2 -2
- package/cancellation/token.js +4 -4
- package/cookie/cookie.js +2 -2
- package/document-management/api/document-management.api.d.ts +122 -24
- package/document-management/api/document-management.api.js +17 -0
- package/document-management/{server/services → authorization}/document-management-authorization.service.d.ts +7 -7
- package/document-management/authorization/document-management-authorization.service.js +2 -0
- package/document-management/authorization/index.d.ts +2 -0
- package/document-management/authorization/index.js +2 -0
- package/document-management/authorization/policies.d.ts +38 -0
- package/document-management/authorization/policies.js +2 -0
- package/document-management/index.d.ts +1 -0
- package/document-management/index.js +1 -0
- package/document-management/models/document-assignment-scope.model.d.ts +1 -0
- package/document-management/models/document-assignment-scope.model.js +10 -3
- package/document-management/models/document-assignment-task.model.d.ts +1 -0
- package/document-management/models/document-assignment-task.model.js +8 -2
- package/document-management/models/document-category.model.d.ts +1 -0
- package/document-management/models/document-category.model.js +7 -1
- package/document-management/models/document-collection-assignment.model.d.ts +1 -0
- package/document-management/models/document-collection-assignment.model.js +12 -4
- package/document-management/models/document-collection.model.d.ts +2 -0
- package/document-management/models/document-collection.model.js +8 -2
- package/document-management/models/document-management-table.d.ts +3 -1
- package/document-management/models/document-management-table.js +2 -2
- package/document-management/models/document-property-value.model.d.ts +1 -0
- package/document-management/models/document-property-value.model.js +9 -3
- package/document-management/models/document-property.model.d.ts +1 -0
- package/document-management/models/document-property.model.js +8 -2
- package/document-management/models/document-request-collection-assignment.model.d.ts +1 -0
- package/document-management/models/document-request-collection-assignment.model.js +12 -4
- package/document-management/models/document-request-template.d.ts +1 -0
- package/document-management/models/document-request-template.js +6 -1
- package/document-management/models/document-request.model.d.ts +1 -0
- package/document-management/models/document-request.model.js +10 -1
- package/document-management/models/document-requests-template.d.ts +1 -0
- package/document-management/models/document-requests-template.js +7 -3
- package/document-management/models/document-tag-assignment.model.d.ts +8 -0
- package/document-management/models/document-tag-assignment.model.js +40 -0
- package/document-management/models/document-tag.model.d.ts +6 -0
- package/document-management/models/{document-request-submission.model.js → document-tag.model.js} +14 -18
- package/document-management/models/document-type-property.model.d.ts +1 -0
- package/document-management/models/document-type-property.model.js +7 -2
- package/document-management/models/document-type-validation.model.d.ts +1 -0
- package/document-management/models/document-type-validation.model.js +8 -2
- package/document-management/models/document-type.model.d.ts +1 -0
- package/document-management/models/document-type.model.js +7 -2
- package/document-management/models/document-validation-definition.model.d.ts +1 -0
- package/document-management/models/document-validation-definition.model.js +7 -2
- package/document-management/models/document-validation-execution-related-document.model.d.ts +1 -0
- package/document-management/models/document-validation-execution-related-document.model.js +10 -3
- package/document-management/models/document-validation-execution.model.d.ts +1 -0
- package/document-management/models/document-validation-execution.model.js +9 -3
- package/document-management/models/document-workflow.model.d.ts +4 -1
- package/document-management/models/document-workflow.model.js +16 -4
- package/document-management/models/document.model.d.ts +2 -2
- package/document-management/models/document.model.js +9 -8
- package/document-management/models/index.d.ts +2 -1
- package/document-management/models/index.js +2 -1
- package/document-management/server/api/document-management.api.d.ts +4 -1
- package/document-management/server/api/document-management.api.js +113 -22
- package/document-management/server/configure.d.ts +2 -2
- package/document-management/server/configure.js +7 -7
- package/document-management/server/drizzle/0000_parallel_mantis.sql +359 -0
- package/document-management/server/drizzle/meta/0000_snapshot.json +784 -260
- package/document-management/server/drizzle/meta/_journal.json +2 -2
- package/document-management/server/module.d.ts +2 -2
- package/document-management/server/module.js +2 -2
- package/document-management/server/schemas.d.ts +6 -5
- package/document-management/server/schemas.js +12 -11
- package/document-management/server/services/document-category-type.service.d.ts +19 -10
- package/document-management/server/services/document-category-type.service.js +34 -27
- package/document-management/server/services/document-collection.service.d.ts +13 -6
- package/document-management/server/services/document-collection.service.js +36 -12
- package/document-management/server/services/document-file.service.d.ts +8 -7
- package/document-management/server/services/document-file.service.js +28 -33
- package/document-management/server/services/document-management-ai.service.d.ts +5 -4
- package/document-management/server/services/document-management-ai.service.js +51 -28
- package/document-management/server/services/document-management-ancillary.service.d.ts +3 -21
- package/document-management/server/services/document-management-ancillary.service.js +0 -24
- package/document-management/server/services/document-management-observation.service.d.ts +15 -0
- package/document-management/server/services/document-management-observation.service.js +160 -0
- package/document-management/server/services/document-management.service.d.ts +6 -5
- package/document-management/server/services/document-management.service.js +112 -86
- package/document-management/server/services/document-property.service.d.ts +15 -7
- package/document-management/server/services/document-property.service.js +52 -20
- package/document-management/server/services/document-request.service.d.ts +13 -24
- package/document-management/server/services/document-request.service.js +39 -62
- package/document-management/server/services/document-tag.service.d.ts +10 -0
- package/document-management/server/services/document-tag.service.js +59 -0
- package/document-management/server/services/document-validation.service.d.ts +8 -8
- package/document-management/server/services/document-validation.service.js +41 -40
- package/document-management/server/services/document-workflow.service.d.ts +6 -5
- package/document-management/server/services/document-workflow.service.js +54 -43
- package/document-management/server/services/document.service.d.ts +12 -11
- package/document-management/server/services/document.service.js +66 -40
- package/document-management/server/services/index.d.ts +2 -1
- package/document-management/server/services/index.js +2 -1
- package/document-management/server/services/singleton.js +2 -2
- package/document-management/server/validators/ai-validation-executor.js +4 -4
- package/document-management/service-models/document-collection-metadata.service-model.d.ts +14 -0
- package/document-management/service-models/document-collection-metadata.service-model.js +1 -0
- package/document-management/service-models/document-folders.view-model.d.ts +1 -7
- package/document-management/service-models/document-folders.view-model.js +3 -15
- package/document-management/service-models/document-management.view-model.d.ts +20 -6
- package/document-management/service-models/document-management.view-model.js +62 -8
- package/document-management/service-models/document.service-model.d.ts +14 -11
- package/document-management/service-models/document.service-model.js +11 -2
- package/document-management/service-models/enriched/enriched-document-assignment.view.d.ts +1 -1
- package/document-management/service-models/enriched/enriched-document-assignment.view.js +0 -2
- package/document-management/service-models/enriched/enriched-document-category.view.d.ts +11 -1
- package/document-management/service-models/enriched/enriched-document-category.view.js +44 -1
- package/document-management/service-models/enriched/enriched-document-collection.view.d.ts +4 -2
- package/document-management/service-models/enriched/enriched-document-collection.view.js +13 -3
- package/document-management/service-models/enriched/enriched-document-management-data.view.d.ts +2 -0
- package/document-management/service-models/enriched/enriched-document-management-data.view.js +4 -2
- package/document-management/service-models/enriched/enriched-document-request.view.d.ts +1 -0
- package/document-management/service-models/enriched/enriched-document-request.view.js +2 -0
- package/document-management/service-models/enriched/enriched-document-type.view.d.ts +9 -1
- package/document-management/service-models/enriched/enriched-document-type.view.js +28 -1
- package/document-management/service-models/enriched/enriched-document.view.d.ts +7 -6
- package/document-management/service-models/enriched/enriched-document.view.js +29 -6
- package/document-management/service-models/{normalized-requests-template-data.model.d.ts → enriched/enriched-requests-template-data.model.d.ts} +6 -6
- package/document-management/service-models/{normalized-requests-template-data.model.js → enriched/enriched-requests-template-data.model.js} +1 -1
- package/document-management/service-models/enriched/index.d.ts +1 -0
- package/document-management/service-models/enriched/index.js +1 -0
- package/document-management/service-models/index.d.ts +2 -2
- package/document-management/service-models/index.js +2 -2
- package/examples/document-management/categories-and-types.d.ts +33 -31
- package/examples/document-management/categories-and-types.js +33 -0
- package/examples/document-management/main.d.ts +5 -4
- package/examples/document-management/main.js +13 -7
- package/function/log.js +2 -2
- package/http/server/node/module.d.ts +4 -1
- package/http/server/node/module.js +10 -1
- package/http/server/node/node-http-server.d.ts +3 -6
- package/http/server/node/node-http-server.js +68 -67
- package/injector/inject.js +6 -6
- package/injector/injector.js +3 -3
- package/jsx/is-component-class.js +1 -1
- package/key-value-store/key-value.store.d.ts +38 -7
- package/key-value-store/key-value.store.js +2 -1
- package/key-value-store/mongo/mongo-key-value.store.d.ts +1 -0
- package/key-value-store/mongo/mongo-key-value.store.js +14 -5
- package/key-value-store/postgres/drizzle/0000_shocking_slipstream.sql +12 -0
- package/key-value-store/postgres/drizzle/meta/0000_snapshot.json +97 -0
- package/key-value-store/postgres/drizzle/meta/_journal.json +13 -0
- package/key-value-store/postgres/drizzle.config.d.ts +2 -0
- package/key-value-store/postgres/drizzle.config.js +11 -0
- package/key-value-store/postgres/index.d.ts +2 -0
- package/key-value-store/postgres/index.js +2 -0
- package/key-value-store/postgres/key-value-store.service.d.ts +17 -0
- package/key-value-store/postgres/key-value-store.service.js +65 -0
- package/key-value-store/postgres/models/index.d.ts +2 -0
- package/key-value-store/postgres/models/index.js +2 -0
- package/key-value-store/postgres/models/key-value.model.d.ts +7 -0
- package/key-value-store/postgres/models/key-value.model.js +35 -0
- package/key-value-store/postgres/models/schemas.d.ts +3 -0
- package/key-value-store/postgres/models/schemas.js +4 -0
- package/key-value-store/postgres/module.d.ts +6 -0
- package/key-value-store/postgres/module.js +23 -0
- package/lock/web/web-lock.d.ts +0 -1
- package/lock/web/web-lock.js +6 -13
- package/orm/data-types/timestamp.js +1 -1
- package/orm/decorators.d.ts +37 -29
- package/orm/decorators.js +44 -24
- package/orm/entity.d.ts +1 -0
- package/orm/query.d.ts +10 -2
- package/orm/repository.types.d.ts +2 -1
- package/orm/schemas/json.d.ts +12 -6
- package/orm/schemas/json.js +12 -5
- package/orm/server/database.js +5 -2
- package/orm/server/drizzle/schema-converter.js +40 -11
- package/orm/server/query-converter.d.ts +2 -1
- package/orm/server/query-converter.js +57 -34
- package/orm/server/repository.d.ts +26 -43
- package/orm/server/repository.js +106 -39
- package/orm/server/transaction.d.ts +2 -1
- package/orm/server/transaction.js +3 -0
- package/orm/server/transactional.d.ts +5 -1
- package/orm/server/transactional.js +34 -4
- package/package.json +14 -11
- package/process/spawn.js +0 -1
- package/promise/deferred-promise.d.ts +4 -3
- package/promise/deferred-promise.js +13 -5
- package/queue/postgres/queue.js +8 -8
- package/reflection/utils.js +3 -3
- package/schema/decorators/class.js +0 -1
- package/schema/decorators/schema.js +1 -1
- package/schema/schemas/boolean.d.ts +1 -1
- package/schema/schemas/boolean.js +2 -2
- package/schema/schemas/number.js +3 -3
- package/schema/schemas/object.js +5 -6
- package/sse/server-sent-events-source.js +4 -1
- package/utils/compression.js +9 -9
- package/utils/date-time.d.ts +1 -0
- package/utils/date-time.js +18 -4
- package/utils/equals.d.ts +7 -0
- package/utils/equals.js +17 -2
- package/utils/function/memoize.js +10 -2
- package/utils/jwt.js +3 -3
- package/utils/object/property-name.d.ts +2 -2
- package/utils/timing.d.ts +2 -2
- package/utils/timing.js +12 -12
- package/document-management/models/document-request-submission.model.d.ts +0 -7
- package/document-management/server/drizzle/0000_moaning_luckman.sql +0 -305
- package/document-management/server/services/document-management-authorization.service.js +0 -28
|
@@ -285,6 +285,7 @@ export declare const TstdlDocumentTypeCategories: {
|
|
|
285
285
|
};
|
|
286
286
|
export declare const TstdlDocumentProperty: {
|
|
287
287
|
readonly Correspondent: "correspondent";
|
|
288
|
+
readonly HasCorrespondent: "has-correspondent";
|
|
288
289
|
readonly EffectiveDate: "effective-date";
|
|
289
290
|
readonly ExpiryDate: "expiry-date";
|
|
290
291
|
readonly ReferenceNumber: "reference-number";
|
|
@@ -304,6 +305,7 @@ export declare const TstdlDocumentProperty: {
|
|
|
304
305
|
export type TstdlDocumentProperty = EnumType<typeof TstdlDocumentProperty>;
|
|
305
306
|
export declare const TstdlDocumentPropertyConfiguration: {
|
|
306
307
|
readonly correspondent: ["text", "Korrespondent"];
|
|
308
|
+
readonly "has-correspondent": ["boolean", "Hat Korrespondent"];
|
|
307
309
|
readonly "effective-date": ["date", "Wirksamkeitsdatum"];
|
|
308
310
|
readonly "expiry-date": ["date", "Ablaufdatum"];
|
|
309
311
|
readonly "reference-number": ["text", "Referenznummer"];
|
|
@@ -321,49 +323,49 @@ export declare const TstdlDocumentPropertyConfiguration: {
|
|
|
321
323
|
readonly "meeting-date": ["date", "Sitzungsdatum"];
|
|
322
324
|
};
|
|
323
325
|
export declare const TstdlDocumentTypeProperties: {
|
|
324
|
-
readonly "residential-rental-agreement": ["correspondent", "contract-number", "real-estate", "tenant-id", "effective-date", "start-date", "end-date", "amount", "currency", "status"];
|
|
325
|
-
readonly "commercial-rental-agreement": ["correspondent", "contract-number", "real-estate", "tenant-id", "effective-date", "start-date", "end-date", "amount", "currency", "status"];
|
|
326
|
-
readonly "short-term-rental-agreement": ["correspondent", "contract-number", "real-estate", "tenant-id", "effective-date", "start-date", "end-date", "amount", "currency", "status"];
|
|
327
|
-
readonly "purchase-agreement-property": ["correspondent", "contract-number", "real-estate", "effective-date", "amount", "currency", "status"];
|
|
328
|
-
readonly "sale-agreement-property": ["correspondent", "contract-number", "real-estate", "effective-date", "amount", "currency", "status"];
|
|
329
|
-
readonly "work-order-contract": ["correspondent", "contract-number", "real-estate", "effective-date", "start-date", "end-date", "amount", "currency", "status"];
|
|
330
|
-
readonly "framework-agreement": ["correspondent", "contract-number", "effective-date", "start-date", "end-date", "amount", "currency", "status"];
|
|
331
|
-
readonly "termination-notice": ["correspondent", "effective-date", "real-estate", "tenant-id", "contract-number"];
|
|
332
|
-
readonly "complaint-letter": ["correspondent", "real-estate", "reference-number"];
|
|
333
|
-
readonly "incoming-invoice": ["invoice-number", "correspondent", "due-date", "amount", "currency", "real-estate", "status", "reference-number"];
|
|
334
|
-
readonly "outgoing-invoice": ["invoice-number", "correspondent", "tenant-id", "due-date", "amount", "currency", "real-estate", "status"];
|
|
335
|
-
readonly "payment-reminder": ["correspondent", "tenant-id", "due-date", "amount", "currency", "reference-number"];
|
|
326
|
+
readonly "residential-rental-agreement": ["has-correspondent", "correspondent", "contract-number", "real-estate", "tenant-id", "effective-date", "start-date", "end-date", "amount", "currency", "status"];
|
|
327
|
+
readonly "commercial-rental-agreement": ["has-correspondent", "correspondent", "contract-number", "real-estate", "tenant-id", "effective-date", "start-date", "end-date", "amount", "currency", "status"];
|
|
328
|
+
readonly "short-term-rental-agreement": ["has-correspondent", "correspondent", "contract-number", "real-estate", "tenant-id", "effective-date", "start-date", "end-date", "amount", "currency", "status"];
|
|
329
|
+
readonly "purchase-agreement-property": ["has-correspondent", "correspondent", "contract-number", "real-estate", "effective-date", "amount", "currency", "status"];
|
|
330
|
+
readonly "sale-agreement-property": ["has-correspondent", "correspondent", "contract-number", "real-estate", "effective-date", "amount", "currency", "status"];
|
|
331
|
+
readonly "work-order-contract": ["has-correspondent", "correspondent", "contract-number", "real-estate", "effective-date", "start-date", "end-date", "amount", "currency", "status"];
|
|
332
|
+
readonly "framework-agreement": ["has-correspondent", "correspondent", "contract-number", "effective-date", "start-date", "end-date", "amount", "currency", "status"];
|
|
333
|
+
readonly "termination-notice": ["has-correspondent", "correspondent", "effective-date", "real-estate", "tenant-id", "contract-number"];
|
|
334
|
+
readonly "complaint-letter": ["has-correspondent", "correspondent", "real-estate", "reference-number"];
|
|
335
|
+
readonly "incoming-invoice": ["invoice-number", "has-correspondent", "correspondent", "due-date", "amount", "currency", "real-estate", "status", "reference-number"];
|
|
336
|
+
readonly "outgoing-invoice": ["invoice-number", "has-correspondent", "correspondent", "tenant-id", "due-date", "amount", "currency", "real-estate", "status"];
|
|
337
|
+
readonly "payment-reminder": ["has-correspondent", "correspondent", "tenant-id", "due-date", "amount", "currency", "reference-number"];
|
|
336
338
|
readonly "annual-financial-statement": ["start-date", "end-date", "real-estate", "reference-number"];
|
|
337
339
|
readonly "operating-cost-statement": ["start-date", "end-date", "real-estate", "tenant-id", "amount", "currency", "reference-number"];
|
|
338
340
|
readonly "heating-cost-statement": ["start-date", "end-date", "real-estate", "tenant-id", "amount", "currency", "reference-number"];
|
|
339
341
|
readonly "bank-statement": ["start-date", "end-date", "reference-number", "real-estate"];
|
|
340
342
|
readonly "budget-plan": ["start-date", "end-date", "real-estate", "amount", "currency", "reference-number"];
|
|
341
|
-
readonly "repair-order-form": ["real-estate", "status", "reference-number", "correspondent"];
|
|
343
|
+
readonly "repair-order-form": ["real-estate", "status", "reference-number", "has-correspondent", "correspondent"];
|
|
342
344
|
readonly "maintenance-report": ["real-estate", "start-date", "end-date", "reference-number"];
|
|
343
|
-
readonly "inspection-report": ["real-estate", "correspondent", "status", "effective-date"];
|
|
344
|
-
readonly "damage-report": ["real-estate", "correspondent", "amount", "currency", "status"];
|
|
345
|
+
readonly "inspection-report": ["real-estate", "has-correspondent", "correspondent", "status", "effective-date"];
|
|
346
|
+
readonly "damage-report": ["real-estate", "has-correspondent", "correspondent", "amount", "currency", "status"];
|
|
345
347
|
readonly "maintenance-plan-document": ["real-estate", "start-date", "end-date", "reference-number"];
|
|
346
|
-
readonly "tenant-registration-form": ["tenant-id", "real-estate", "correspondent", "effective-date"];
|
|
347
|
-
readonly "member-application": ["correspondent", "status", "effective-date"];
|
|
348
|
-
readonly "handover-protocol-apartment": ["real-estate", "tenant-id", "correspondent", "effective-date", "status"];
|
|
349
|
-
readonly "rent-adjustment-notice": ["effective-date", "tenant-id", "real-estate", "amount", "currency", "correspondent"];
|
|
350
|
-
readonly "tenant-correspondence-letter": ["tenant-id", "real-estate", "correspondent"];
|
|
351
|
-
readonly "member-correspondence-letter": ["correspondent"];
|
|
352
|
-
readonly "court-order": ["case-number", "real-estate", "correspondent", "effective-date"];
|
|
353
|
-
readonly "lawsuit-document": ["case-number", "real-estate", "correspondent"];
|
|
354
|
-
readonly "legal-opinion-report": ["correspondent", "case-number", "real-estate"];
|
|
348
|
+
readonly "tenant-registration-form": ["tenant-id", "real-estate", "has-correspondent", "correspondent", "effective-date"];
|
|
349
|
+
readonly "member-application": ["has-correspondent", "correspondent", "status", "effective-date"];
|
|
350
|
+
readonly "handover-protocol-apartment": ["real-estate", "tenant-id", "has-correspondent", "correspondent", "effective-date", "status"];
|
|
351
|
+
readonly "rent-adjustment-notice": ["effective-date", "tenant-id", "real-estate", "amount", "currency", "has-correspondent", "correspondent"];
|
|
352
|
+
readonly "tenant-correspondence-letter": ["tenant-id", "real-estate", "has-correspondent", "correspondent"];
|
|
353
|
+
readonly "member-correspondence-letter": ["has-correspondent", "correspondent"];
|
|
354
|
+
readonly "court-order": ["case-number", "real-estate", "has-correspondent", "correspondent", "effective-date"];
|
|
355
|
+
readonly "lawsuit-document": ["case-number", "real-estate", "has-correspondent", "correspondent"];
|
|
356
|
+
readonly "legal-opinion-report": ["has-correspondent", "correspondent", "case-number", "real-estate"];
|
|
355
357
|
readonly "owner-association-resolution": ["effective-date", "real-estate", "reference-number"];
|
|
356
358
|
readonly "cooperative-bylaws": ["effective-date", "reference-number"];
|
|
357
359
|
readonly "meeting-minutes": ["meeting-date", "reference-number"];
|
|
358
|
-
readonly "meeting-invitation": ["meeting-date", "correspondent"];
|
|
360
|
+
readonly "meeting-invitation": ["meeting-date", "has-correspondent", "correspondent"];
|
|
359
361
|
readonly "meeting-agenda": ["meeting-date"];
|
|
360
362
|
readonly "feasibility-study": ["real-estate", "amount", "currency"];
|
|
361
|
-
readonly "architectural-plan": ["real-estate", "reference-number", "correspondent"];
|
|
362
|
-
readonly "building-permit-document": ["reference-number", "effective-date", "expiry-date", "real-estate", "correspondent"];
|
|
363
|
-
readonly "demolition-permit": ["reference-number", "effective-date", "expiry-date", "real-estate", "correspondent"];
|
|
363
|
+
readonly "architectural-plan": ["real-estate", "reference-number", "has-correspondent", "correspondent"];
|
|
364
|
+
readonly "building-permit-document": ["reference-number", "effective-date", "expiry-date", "real-estate", "has-correspondent", "correspondent"];
|
|
365
|
+
readonly "demolition-permit": ["reference-number", "effective-date", "expiry-date", "real-estate", "has-correspondent", "correspondent"];
|
|
364
366
|
readonly "construction-schedule": ["real-estate", "start-date", "end-date"];
|
|
365
367
|
readonly "construction-documentation": ["real-estate", "reference-number"];
|
|
366
|
-
readonly "service-contract": ["contract-number", "effective-date", "expiry-date", "amount", "currency", "real-estate", "correspondent", "status"];
|
|
367
|
-
readonly "service-level-agreement": ["reference-number", "effective-date", "expiry-date", "real-estate", "correspondent", "status"];
|
|
368
|
-
readonly "provider-communication": ["real-estate", "correspondent"];
|
|
368
|
+
readonly "service-contract": ["contract-number", "effective-date", "expiry-date", "amount", "currency", "real-estate", "has-correspondent", "correspondent", "status"];
|
|
369
|
+
readonly "service-level-agreement": ["reference-number", "effective-date", "expiry-date", "real-estate", "has-correspondent", "correspondent", "status"];
|
|
370
|
+
readonly "provider-communication": ["real-estate", "has-correspondent", "correspondent"];
|
|
369
371
|
};
|
|
@@ -332,6 +332,7 @@ export const TstdlDocumentTypeCategories = {
|
|
|
332
332
|
};
|
|
333
333
|
export const TstdlDocumentProperty = defineEnum('TstdlDocumentProperty', {
|
|
334
334
|
Correspondent: 'correspondent',
|
|
335
|
+
HasCorrespondent: 'has-correspondent',
|
|
335
336
|
EffectiveDate: 'effective-date', // Date from which the document or its terms are active
|
|
336
337
|
ExpiryDate: 'expiry-date', // Date on which the document or its terms expire
|
|
337
338
|
ReferenceNumber: 'reference-number', // Generic reference (e.g., file number, internal ID)
|
|
@@ -350,6 +351,7 @@ export const TstdlDocumentProperty = defineEnum('TstdlDocumentProperty', {
|
|
|
350
351
|
});
|
|
351
352
|
export const TstdlDocumentPropertyConfiguration = {
|
|
352
353
|
[TstdlDocumentProperty.Correspondent]: [DocumentPropertyDataType.Text, 'Korrespondent'],
|
|
354
|
+
[TstdlDocumentProperty.HasCorrespondent]: [DocumentPropertyDataType.Boolean, 'Hat Korrespondent'],
|
|
353
355
|
[TstdlDocumentProperty.EffectiveDate]: [DocumentPropertyDataType.Date, 'Wirksamkeitsdatum'],
|
|
354
356
|
[TstdlDocumentProperty.ExpiryDate]: [DocumentPropertyDataType.Date, 'Ablaufdatum'],
|
|
355
357
|
[TstdlDocumentProperty.ReferenceNumber]: [DocumentPropertyDataType.Text, 'Referenznummer'],
|
|
@@ -369,6 +371,7 @@ export const TstdlDocumentPropertyConfiguration = {
|
|
|
369
371
|
export const TstdlDocumentTypeProperties = {
|
|
370
372
|
// Administration/Contracts/RentalAgreements
|
|
371
373
|
[TstdlDocumentType.ResidentialRentalAgreement]: [
|
|
374
|
+
TstdlDocumentProperty.HasCorrespondent,
|
|
372
375
|
TstdlDocumentProperty.Correspondent,
|
|
373
376
|
TstdlDocumentProperty.ContractNumber,
|
|
374
377
|
TstdlDocumentProperty.RealEstate,
|
|
@@ -381,6 +384,7 @@ export const TstdlDocumentTypeProperties = {
|
|
|
381
384
|
TstdlDocumentProperty.Status,
|
|
382
385
|
],
|
|
383
386
|
[TstdlDocumentType.CommercialRentalAgreement]: [
|
|
387
|
+
TstdlDocumentProperty.HasCorrespondent,
|
|
384
388
|
TstdlDocumentProperty.Correspondent,
|
|
385
389
|
TstdlDocumentProperty.ContractNumber,
|
|
386
390
|
TstdlDocumentProperty.RealEstate,
|
|
@@ -393,6 +397,7 @@ export const TstdlDocumentTypeProperties = {
|
|
|
393
397
|
TstdlDocumentProperty.Status,
|
|
394
398
|
],
|
|
395
399
|
[TstdlDocumentType.ShortTermRentalAgreement]: [
|
|
400
|
+
TstdlDocumentProperty.HasCorrespondent,
|
|
396
401
|
TstdlDocumentProperty.Correspondent,
|
|
397
402
|
TstdlDocumentProperty.ContractNumber,
|
|
398
403
|
TstdlDocumentProperty.RealEstate,
|
|
@@ -406,6 +411,7 @@ export const TstdlDocumentTypeProperties = {
|
|
|
406
411
|
],
|
|
407
412
|
// Administration/Contracts/PurchaseAgreements
|
|
408
413
|
[TstdlDocumentType.PurchaseAgreementProperty]: [
|
|
414
|
+
TstdlDocumentProperty.HasCorrespondent,
|
|
409
415
|
TstdlDocumentProperty.Correspondent, // Buyer/Seller
|
|
410
416
|
TstdlDocumentProperty.ContractNumber,
|
|
411
417
|
TstdlDocumentProperty.RealEstate,
|
|
@@ -415,6 +421,7 @@ export const TstdlDocumentTypeProperties = {
|
|
|
415
421
|
TstdlDocumentProperty.Status,
|
|
416
422
|
],
|
|
417
423
|
[TstdlDocumentType.SaleAgreementProperty]: [
|
|
424
|
+
TstdlDocumentProperty.HasCorrespondent,
|
|
418
425
|
TstdlDocumentProperty.Correspondent,
|
|
419
426
|
TstdlDocumentProperty.ContractNumber,
|
|
420
427
|
TstdlDocumentProperty.RealEstate,
|
|
@@ -425,6 +432,7 @@ export const TstdlDocumentTypeProperties = {
|
|
|
425
432
|
],
|
|
426
433
|
// Administration/Contracts/WorkContracts
|
|
427
434
|
[TstdlDocumentType.WorkOrderContract]: [
|
|
435
|
+
TstdlDocumentProperty.HasCorrespondent,
|
|
428
436
|
TstdlDocumentProperty.Correspondent, // Client/Contractor
|
|
429
437
|
TstdlDocumentProperty.ContractNumber,
|
|
430
438
|
TstdlDocumentProperty.RealEstate,
|
|
@@ -436,6 +444,7 @@ export const TstdlDocumentTypeProperties = {
|
|
|
436
444
|
TstdlDocumentProperty.Status,
|
|
437
445
|
],
|
|
438
446
|
[TstdlDocumentType.FrameworkAgreement]: [
|
|
447
|
+
TstdlDocumentProperty.HasCorrespondent,
|
|
439
448
|
TstdlDocumentProperty.Correspondent,
|
|
440
449
|
TstdlDocumentProperty.ContractNumber,
|
|
441
450
|
TstdlDocumentProperty.EffectiveDate,
|
|
@@ -447,6 +456,7 @@ export const TstdlDocumentTypeProperties = {
|
|
|
447
456
|
],
|
|
448
457
|
// Administration/GeneralCorrespondence
|
|
449
458
|
[TstdlDocumentType.TerminationNotice]: [
|
|
459
|
+
TstdlDocumentProperty.HasCorrespondent,
|
|
450
460
|
TstdlDocumentProperty.Correspondent, // Sender/Recipient
|
|
451
461
|
TstdlDocumentProperty.EffectiveDate, // Termination effective date
|
|
452
462
|
TstdlDocumentProperty.RealEstate,
|
|
@@ -454,6 +464,7 @@ export const TstdlDocumentTypeProperties = {
|
|
|
454
464
|
TstdlDocumentProperty.ContractNumber, // Related contract
|
|
455
465
|
],
|
|
456
466
|
[TstdlDocumentType.ComplaintLetter]: [
|
|
467
|
+
TstdlDocumentProperty.HasCorrespondent,
|
|
457
468
|
TstdlDocumentProperty.Correspondent, // Complainant/Recipient
|
|
458
469
|
TstdlDocumentProperty.RealEstate,
|
|
459
470
|
TstdlDocumentProperty.ReferenceNumber,
|
|
@@ -461,6 +472,7 @@ export const TstdlDocumentTypeProperties = {
|
|
|
461
472
|
// Finance/Invoices
|
|
462
473
|
[TstdlDocumentType.IncomingInvoice]: [
|
|
463
474
|
TstdlDocumentProperty.InvoiceNumber,
|
|
475
|
+
TstdlDocumentProperty.HasCorrespondent,
|
|
464
476
|
TstdlDocumentProperty.Correspondent, // Supplier
|
|
465
477
|
TstdlDocumentProperty.DueDate,
|
|
466
478
|
TstdlDocumentProperty.Amount, // Gross amount
|
|
@@ -471,6 +483,7 @@ export const TstdlDocumentTypeProperties = {
|
|
|
471
483
|
],
|
|
472
484
|
[TstdlDocumentType.OutgoingInvoice]: [
|
|
473
485
|
TstdlDocumentProperty.InvoiceNumber,
|
|
486
|
+
TstdlDocumentProperty.HasCorrespondent,
|
|
474
487
|
TstdlDocumentProperty.Correspondent, // Customer/Tenant
|
|
475
488
|
TstdlDocumentProperty.TenantId,
|
|
476
489
|
TstdlDocumentProperty.DueDate,
|
|
@@ -480,6 +493,7 @@ export const TstdlDocumentTypeProperties = {
|
|
|
480
493
|
TstdlDocumentProperty.Status,
|
|
481
494
|
],
|
|
482
495
|
[TstdlDocumentType.PaymentReminder]: [
|
|
496
|
+
TstdlDocumentProperty.HasCorrespondent,
|
|
483
497
|
TstdlDocumentProperty.Correspondent, // Debtor
|
|
484
498
|
TstdlDocumentProperty.TenantId,
|
|
485
499
|
TstdlDocumentProperty.DueDate, // Original or new
|
|
@@ -534,6 +548,7 @@ export const TstdlDocumentTypeProperties = {
|
|
|
534
548
|
// Description of issue
|
|
535
549
|
TstdlDocumentProperty.Status, // Open, In Progress, Closed
|
|
536
550
|
TstdlDocumentProperty.ReferenceNumber, // Order No.
|
|
551
|
+
TstdlDocumentProperty.HasCorrespondent,
|
|
537
552
|
TstdlDocumentProperty.Correspondent, // Reported by
|
|
538
553
|
],
|
|
539
554
|
[TstdlDocumentType.MaintenanceReport]: [
|
|
@@ -545,6 +560,7 @@ export const TstdlDocumentTypeProperties = {
|
|
|
545
560
|
],
|
|
546
561
|
[TstdlDocumentType.InspectionReport]: [
|
|
547
562
|
TstdlDocumentProperty.RealEstate,
|
|
563
|
+
TstdlDocumentProperty.HasCorrespondent,
|
|
548
564
|
TstdlDocumentProperty.Correspondent, // Inspector
|
|
549
565
|
// e.g., Annual Safety Inspection
|
|
550
566
|
TstdlDocumentProperty.Status, // Passed, Failed, Issues Found
|
|
@@ -552,6 +568,7 @@ export const TstdlDocumentTypeProperties = {
|
|
|
552
568
|
],
|
|
553
569
|
[TstdlDocumentType.DamageReport]: [
|
|
554
570
|
TstdlDocumentProperty.RealEstate,
|
|
571
|
+
TstdlDocumentProperty.HasCorrespondent,
|
|
555
572
|
TstdlDocumentProperty.Correspondent, // Reported by
|
|
556
573
|
// Description of damage
|
|
557
574
|
TstdlDocumentProperty.Amount, // Estimated damage cost
|
|
@@ -568,10 +585,12 @@ export const TstdlDocumentTypeProperties = {
|
|
|
568
585
|
[TstdlDocumentType.TenantRegistrationForm]: [
|
|
569
586
|
TstdlDocumentProperty.TenantId,
|
|
570
587
|
TstdlDocumentProperty.RealEstate,
|
|
588
|
+
TstdlDocumentProperty.HasCorrespondent,
|
|
571
589
|
TstdlDocumentProperty.Correspondent, // Tenant
|
|
572
590
|
TstdlDocumentProperty.EffectiveDate, // Move-in date
|
|
573
591
|
],
|
|
574
592
|
[TstdlDocumentType.MemberApplication]: [
|
|
593
|
+
TstdlDocumentProperty.HasCorrespondent,
|
|
575
594
|
TstdlDocumentProperty.Correspondent, // Applicant
|
|
576
595
|
TstdlDocumentProperty.Status, // Submitted, Approved, Rejected
|
|
577
596
|
TstdlDocumentProperty.EffectiveDate, // Membership start if approved
|
|
@@ -579,6 +598,7 @@ export const TstdlDocumentTypeProperties = {
|
|
|
579
598
|
[TstdlDocumentType.HandoverProtocolApartment]: [
|
|
580
599
|
TstdlDocumentProperty.RealEstate,
|
|
581
600
|
TstdlDocumentProperty.TenantId,
|
|
601
|
+
TstdlDocumentProperty.HasCorrespondent,
|
|
582
602
|
TstdlDocumentProperty.Correspondent, // Tenant/Landlord Rep
|
|
583
603
|
TstdlDocumentProperty.EffectiveDate, // Handover date
|
|
584
604
|
TstdlDocumentProperty.Status, // e.g., Defects noted
|
|
@@ -589,29 +609,35 @@ export const TstdlDocumentTypeProperties = {
|
|
|
589
609
|
TstdlDocumentProperty.RealEstate,
|
|
590
610
|
TstdlDocumentProperty.Amount, // New rent
|
|
591
611
|
TstdlDocumentProperty.Currency,
|
|
612
|
+
TstdlDocumentProperty.HasCorrespondent,
|
|
592
613
|
TstdlDocumentProperty.Correspondent, // Landlord/Tenant
|
|
593
614
|
],
|
|
594
615
|
[TstdlDocumentType.TenantCorrespondenceLetter]: [
|
|
595
616
|
TstdlDocumentProperty.TenantId,
|
|
596
617
|
TstdlDocumentProperty.RealEstate,
|
|
618
|
+
TstdlDocumentProperty.HasCorrespondent,
|
|
597
619
|
TstdlDocumentProperty.Correspondent, // Sender/Recipient
|
|
598
620
|
],
|
|
599
621
|
[TstdlDocumentType.MemberCorrespondenceLetter]: [
|
|
622
|
+
TstdlDocumentProperty.HasCorrespondent,
|
|
600
623
|
TstdlDocumentProperty.Correspondent, // Sender/Recipient (Member ID if applicable)
|
|
601
624
|
],
|
|
602
625
|
// LegalMatters
|
|
603
626
|
[TstdlDocumentType.CourtOrder]: [
|
|
604
627
|
TstdlDocumentProperty.CaseNumber,
|
|
605
628
|
TstdlDocumentProperty.RealEstate,
|
|
629
|
+
TstdlDocumentProperty.HasCorrespondent,
|
|
606
630
|
TstdlDocumentProperty.Correspondent, // Court/Parties
|
|
607
631
|
TstdlDocumentProperty.EffectiveDate,
|
|
608
632
|
],
|
|
609
633
|
[TstdlDocumentType.LawsuitDocument]: [
|
|
610
634
|
TstdlDocumentProperty.CaseNumber,
|
|
611
635
|
TstdlDocumentProperty.RealEstate,
|
|
636
|
+
TstdlDocumentProperty.HasCorrespondent,
|
|
612
637
|
TstdlDocumentProperty.Correspondent, // Parties/Lawyers
|
|
613
638
|
],
|
|
614
639
|
[TstdlDocumentType.LegalOpinionReport]: [
|
|
640
|
+
TstdlDocumentProperty.HasCorrespondent,
|
|
615
641
|
TstdlDocumentProperty.Correspondent, // Lawyer/Client
|
|
616
642
|
TstdlDocumentProperty.CaseNumber,
|
|
617
643
|
TstdlDocumentProperty.RealEstate,
|
|
@@ -633,6 +659,7 @@ export const TstdlDocumentTypeProperties = {
|
|
|
633
659
|
],
|
|
634
660
|
[TstdlDocumentType.MeetingInvitation]: [
|
|
635
661
|
TstdlDocumentProperty.MeetingDate,
|
|
662
|
+
TstdlDocumentProperty.HasCorrespondent,
|
|
636
663
|
TstdlDocumentProperty.Correspondent, // Inviter/Invitee
|
|
637
664
|
],
|
|
638
665
|
[TstdlDocumentType.MeetingAgenda]: [
|
|
@@ -649,6 +676,7 @@ export const TstdlDocumentTypeProperties = {
|
|
|
649
676
|
// Plan Title / Project Name
|
|
650
677
|
TstdlDocumentProperty.RealEstate,
|
|
651
678
|
TstdlDocumentProperty.ReferenceNumber, // Plan No.
|
|
679
|
+
TstdlDocumentProperty.HasCorrespondent,
|
|
652
680
|
TstdlDocumentProperty.Correspondent, // Architect
|
|
653
681
|
],
|
|
654
682
|
[TstdlDocumentType.BuildingPermitDocument]: [
|
|
@@ -657,6 +685,7 @@ export const TstdlDocumentTypeProperties = {
|
|
|
657
685
|
TstdlDocumentProperty.ExpiryDate,
|
|
658
686
|
// Project Name
|
|
659
687
|
TstdlDocumentProperty.RealEstate,
|
|
688
|
+
TstdlDocumentProperty.HasCorrespondent,
|
|
660
689
|
TstdlDocumentProperty.Correspondent, // Issuing Authority
|
|
661
690
|
],
|
|
662
691
|
[TstdlDocumentType.DemolitionPermit]: [
|
|
@@ -664,6 +693,7 @@ export const TstdlDocumentTypeProperties = {
|
|
|
664
693
|
TstdlDocumentProperty.EffectiveDate,
|
|
665
694
|
TstdlDocumentProperty.ExpiryDate,
|
|
666
695
|
TstdlDocumentProperty.RealEstate,
|
|
696
|
+
TstdlDocumentProperty.HasCorrespondent,
|
|
667
697
|
TstdlDocumentProperty.Correspondent,
|
|
668
698
|
],
|
|
669
699
|
[TstdlDocumentType.ConstructionSchedule]: [
|
|
@@ -685,6 +715,7 @@ export const TstdlDocumentTypeProperties = {
|
|
|
685
715
|
TstdlDocumentProperty.Amount, // Contract Value
|
|
686
716
|
TstdlDocumentProperty.Currency,
|
|
687
717
|
TstdlDocumentProperty.RealEstate,
|
|
718
|
+
TstdlDocumentProperty.HasCorrespondent,
|
|
688
719
|
TstdlDocumentProperty.Correspondent, // Service Provider
|
|
689
720
|
TstdlDocumentProperty.Status,
|
|
690
721
|
],
|
|
@@ -693,11 +724,13 @@ export const TstdlDocumentTypeProperties = {
|
|
|
693
724
|
TstdlDocumentProperty.EffectiveDate,
|
|
694
725
|
TstdlDocumentProperty.ExpiryDate,
|
|
695
726
|
TstdlDocumentProperty.RealEstate,
|
|
727
|
+
TstdlDocumentProperty.HasCorrespondent,
|
|
696
728
|
TstdlDocumentProperty.Correspondent,
|
|
697
729
|
TstdlDocumentProperty.Status,
|
|
698
730
|
],
|
|
699
731
|
[TstdlDocumentType.ProviderCommunication]: [
|
|
700
732
|
TstdlDocumentProperty.RealEstate,
|
|
733
|
+
TstdlDocumentProperty.HasCorrespondent,
|
|
701
734
|
TstdlDocumentProperty.Correspondent, // Sender/Recipient
|
|
702
735
|
],
|
|
703
736
|
};
|
|
@@ -1,16 +1,17 @@
|
|
|
1
1
|
import '../../polyfills.js';
|
|
2
|
-
import type
|
|
3
|
-
import { DocumentManagementAncillaryService
|
|
2
|
+
import { DocumentManagementAuthorizationService, type DocumentCollection, type DocumentCollectionMetadata } from '../../document-management/index.js';
|
|
3
|
+
import { DocumentManagementAncillaryService } from '../../document-management/server/index.js';
|
|
4
4
|
export declare class ExampleDocumentManagementAncillaryService extends DocumentManagementAncillaryService {
|
|
5
|
-
|
|
5
|
+
resolveMetadata(collections: DocumentCollection[]): DocumentCollectionMetadata[];
|
|
6
6
|
}
|
|
7
7
|
export declare class AllowAllDocumentManagementAuthorizationService extends DocumentManagementAuthorizationService {
|
|
8
|
+
getTenantId(): string;
|
|
8
9
|
getSubject(): string;
|
|
9
10
|
canReadCollection(): boolean;
|
|
10
11
|
canCreateDocuments(): boolean;
|
|
11
|
-
canUpdateDocuments(): boolean;
|
|
12
12
|
canDeleteDocuments(): boolean;
|
|
13
13
|
canAssignDocuments(): boolean;
|
|
14
|
+
canUpdateDocument(): boolean;
|
|
14
15
|
canApproveDocument(): boolean;
|
|
15
16
|
canRejectDocument(): boolean;
|
|
16
17
|
canManageRequests(): boolean;
|
|
@@ -10,8 +10,9 @@ import { MockApiRequestTokenProvider } from '../../api/server/api-request-token.
|
|
|
10
10
|
import { configureApiServer } from '../../api/server/module.js';
|
|
11
11
|
import { Application } from '../../application/application.js';
|
|
12
12
|
import { configureTstdl } from '../../core.js';
|
|
13
|
+
import { DocumentManagementAuthorizationService } from '../../document-management/index.js';
|
|
13
14
|
import { configureDocumentManagement } from '../../document-management/server/configure.js';
|
|
14
|
-
import { DocumentCategoryTypeService, DocumentCollectionService, DocumentManagementAncillaryService, DocumentManagementApiController,
|
|
15
|
+
import { DocumentCategoryTypeService, DocumentCollectionService, DocumentManagementAncillaryService, DocumentManagementApiController, DocumentRequestService } from '../../document-management/server/index.js';
|
|
15
16
|
import { migrateDocumentManagementSchema } from '../../document-management/server/module.js';
|
|
16
17
|
import { DocumentManagementService } from '../../document-management/server/services/document-management.service.js';
|
|
17
18
|
import { configureNodeHttpServer } from '../../http/server/node/module.js';
|
|
@@ -51,8 +52,8 @@ const config = {
|
|
|
51
52
|
},
|
|
52
53
|
};
|
|
53
54
|
let ExampleDocumentManagementAncillaryService = class ExampleDocumentManagementAncillaryService extends DocumentManagementAncillaryService {
|
|
54
|
-
|
|
55
|
-
return collections.map((collection) => ({ name: collection.id.split('-')[0], group: null }));
|
|
55
|
+
resolveMetadata(collections) {
|
|
56
|
+
return collections.map((collection) => ({ name: collection.metadata.attributes['name'] ?? collection.id.split('-')[0], group: null }));
|
|
56
57
|
}
|
|
57
58
|
};
|
|
58
59
|
ExampleDocumentManagementAncillaryService = __decorate([
|
|
@@ -60,12 +61,13 @@ ExampleDocumentManagementAncillaryService = __decorate([
|
|
|
60
61
|
], ExampleDocumentManagementAncillaryService);
|
|
61
62
|
export { ExampleDocumentManagementAncillaryService };
|
|
62
63
|
let AllowAllDocumentManagementAuthorizationService = class AllowAllDocumentManagementAuthorizationService extends DocumentManagementAuthorizationService {
|
|
64
|
+
getTenantId() { return '00000000-0000-0000-0000-000000000000'; }
|
|
63
65
|
getSubject() { return '00000000-0000-0000-0000-000000000000'; }
|
|
64
66
|
canReadCollection() { return true; }
|
|
65
67
|
canCreateDocuments() { return true; }
|
|
66
|
-
canUpdateDocuments() { return true; }
|
|
67
68
|
canDeleteDocuments() { return true; }
|
|
68
69
|
canAssignDocuments() { return true; }
|
|
70
|
+
canUpdateDocument() { return true; }
|
|
69
71
|
canApproveDocument() { return true; }
|
|
70
72
|
canRejectDocument() { return true; }
|
|
71
73
|
canManageRequests() { return true; }
|
|
@@ -130,15 +132,19 @@ async function bootstrap() {
|
|
|
130
132
|
await runInInjectionContext(injector, async () => await migratePostgresQueueSchema());
|
|
131
133
|
}
|
|
132
134
|
async function main() {
|
|
135
|
+
const tenantId = '00000000-0000-0000-0000-000000000000';
|
|
133
136
|
const [documentManagementService, documentCollectionService] = await injectManyAsync(DocumentManagementService, DocumentCollectionService, DocumentCategoryTypeService, DocumentRequestService);
|
|
134
|
-
const { categories, types } = await documentManagementService.initializeCategoriesAndTypes(TstdlDocumentCategoryLabels, TstdlCategoryParents, TstdlDocumentTypeLabels, TstdlDocumentTypeCategories, TstdlDocumentPropertyConfiguration, TstdlDocumentTypeProperties);
|
|
137
|
+
const { categories, types } = await documentManagementService.initializeCategoriesAndTypes(tenantId, TstdlDocumentCategoryLabels, TstdlCategoryParents, TstdlDocumentTypeLabels, TstdlDocumentTypeCategories, TstdlDocumentPropertyConfiguration, TstdlDocumentTypeProperties);
|
|
135
138
|
const collectionCount = await documentCollectionService.repository.count();
|
|
136
|
-
|
|
137
|
-
await documentCollectionService.createCollection(null);
|
|
139
|
+
if (collectionCount == 0) {
|
|
140
|
+
await documentCollectionService.createCollection(tenantId, null, { metadata: { attributes: { name: 'Objekt ABC' } } });
|
|
141
|
+
await documentCollectionService.createCollection(tenantId, null, { metadata: { attributes: { name: 'Einheit 3' } } });
|
|
142
|
+
await documentCollectionService.createCollection(tenantId, null, { metadata: { attributes: { name: 'Mieter Muster' } } });
|
|
138
143
|
}
|
|
139
144
|
const collections = await documentCollectionService.repository.loadAll();
|
|
140
145
|
for (const collection of collections) {
|
|
141
146
|
console.log(`Collection: ${collection.id}`);
|
|
142
147
|
}
|
|
148
|
+
console.log(`Collections: ${collections.map((collection) => collection.id).join(',')}`);
|
|
143
149
|
}
|
|
144
150
|
Application.run({ bootstrap }, main, WebServerModule);
|
package/function/log.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { isArray, isPrimitive, isString } from '../utils/type-guards.js';
|
|
2
2
|
import { typeOf } from '../utils/type-of.js';
|
|
3
3
|
export function wrapLog(fn, { fnName = fn.name, logResult = true, logger, trace = false } = {}) {
|
|
4
|
-
const log = logger?.trace.bind(logger) ?? console.log.bind(console);
|
|
4
|
+
const log = logger?.trace.bind(logger) ?? console.log.bind(console);
|
|
5
5
|
const wrapped = {
|
|
6
6
|
[fnName](...args) {
|
|
7
7
|
const argString = args.map((arg) => stringifyValue(arg)).join(', ');
|
|
@@ -15,7 +15,7 @@ export function wrapLog(fn, { fnName = fn.name, logResult = true, logger, trace
|
|
|
15
15
|
log(`[return: ${fnName} => ${resultString}]`);
|
|
16
16
|
}
|
|
17
17
|
return result;
|
|
18
|
-
}
|
|
18
|
+
},
|
|
19
19
|
};
|
|
20
20
|
return wrapped[fnName];
|
|
21
21
|
}
|
|
@@ -1,4 +1,7 @@
|
|
|
1
|
+
export declare class NodeHttpServerConfiguration {
|
|
2
|
+
trustedProxiesCount: number;
|
|
3
|
+
}
|
|
1
4
|
/**
|
|
2
5
|
* registers {@link HttpServer} in global container
|
|
3
6
|
*/
|
|
4
|
-
export declare function configureNodeHttpServer(): void;
|
|
7
|
+
export declare function configureNodeHttpServer(configuration?: Partial<NodeHttpServerConfiguration>): void;
|
|
@@ -1,9 +1,18 @@
|
|
|
1
1
|
import { Injector } from '../../../injector/injector.js';
|
|
2
2
|
import { HttpServer } from '../http-server.js';
|
|
3
3
|
import { NodeHttpServer } from './node-http-server.js';
|
|
4
|
+
export class NodeHttpServerConfiguration {
|
|
5
|
+
trustedProxiesCount;
|
|
6
|
+
}
|
|
7
|
+
;
|
|
4
8
|
/**
|
|
5
9
|
* registers {@link HttpServer} in global container
|
|
6
10
|
*/
|
|
7
|
-
export function configureNodeHttpServer() {
|
|
11
|
+
export function configureNodeHttpServer(configuration = {}) {
|
|
12
|
+
Injector.register(NodeHttpServerConfiguration, {
|
|
13
|
+
useValue: {
|
|
14
|
+
trustedProxiesCount: configuration.trustedProxiesCount ?? 0,
|
|
15
|
+
},
|
|
16
|
+
});
|
|
8
17
|
Injector.registerSingleton(HttpServer, { useToken: NodeHttpServer });
|
|
9
18
|
}
|
|
@@ -1,19 +1,16 @@
|
|
|
1
1
|
import * as Http from 'node:http';
|
|
2
2
|
import { disposeAsync, type AsyncDisposable } from '../../../disposable/index.js';
|
|
3
|
-
import {
|
|
3
|
+
import { afterResolve } from '../../../injector/index.js';
|
|
4
4
|
import { HttpServer, type HttpServerRequestContext } from '../http-server.js';
|
|
5
5
|
export type NodeHttpServerContext = {
|
|
6
6
|
nodeRequest: Http.IncomingMessage;
|
|
7
7
|
nodeResponse: Http.ServerResponse;
|
|
8
8
|
};
|
|
9
9
|
export declare class NodeHttpServer extends HttpServer<NodeHttpServerContext> implements AsyncDisposable {
|
|
10
|
-
private
|
|
11
|
-
private readonly sockets;
|
|
12
|
-
private readonly requestIterable;
|
|
13
|
-
private readonly logger;
|
|
10
|
+
#private;
|
|
14
11
|
private untrackConnectedSockets?;
|
|
15
12
|
get connectedSocketsCount(): number;
|
|
16
|
-
|
|
13
|
+
[afterResolve](): void;
|
|
17
14
|
[disposeAsync](): Promise<void>;
|
|
18
15
|
listen(port: number): Promise<void>;
|
|
19
16
|
close(timeout: number): Promise<void>;
|