@rytass/bpm-core-nestjs-module 0.9.0 → 0.10.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.
Files changed (68) hide show
  1. package/CHANGELOG.md +57 -0
  2. package/README.md +17 -5
  3. package/package.json +11 -11
  4. package/src/lib/attachment/attachment-options.js +7 -1
  5. package/src/lib/attachment/attachment-options.js.map +1 -1
  6. package/src/lib/attachment/attachment.service.js +7 -0
  7. package/src/lib/attachment/attachment.service.js.map +1 -1
  8. package/src/lib/bpm/bpm-root.module.d.ts +11 -0
  9. package/src/lib/bpm/bpm-root.module.js.map +1 -1
  10. package/src/lib/calendar/calendar.module.d.ts +12 -0
  11. package/src/lib/calendar/calendar.module.js.map +1 -1
  12. package/src/lib/common/filters/all-exceptions.filter.d.ts +11 -0
  13. package/src/lib/common/filters/all-exceptions.filter.js +35 -1
  14. package/src/lib/common/filters/all-exceptions.filter.js.map +1 -1
  15. package/src/lib/form-data-source/form-data-source-value-resolver.service.d.ts +6 -7
  16. package/src/lib/form-data-source/form-data-source-value-resolver.service.js +91 -291
  17. package/src/lib/form-data-source/form-data-source-value-resolver.service.js.map +1 -1
  18. package/src/lib/form-data-source/form-data-source.queries.d.ts +24 -0
  19. package/src/lib/form-data-source/form-data-source.queries.js +179 -7
  20. package/src/lib/form-data-source/form-data-source.queries.js.map +1 -1
  21. package/src/lib/form-data-source/form-data-source.service.d.ts +36 -21
  22. package/src/lib/form-data-source/form-data-source.service.js +143 -359
  23. package/src/lib/form-data-source/form-data-source.service.js.map +1 -1
  24. package/src/lib/form-data-source/form-data-source.types.d.ts +17 -0
  25. package/src/lib/form-data-source/form-data-source.types.js.map +1 -1
  26. package/src/lib/form-data-source/form-data-source.validation.d.ts +78 -0
  27. package/src/lib/form-data-source/form-data-source.validation.js +409 -0
  28. package/src/lib/form-data-source/form-data-source.validation.js.map +1 -0
  29. package/src/lib/migrations/0000000021000-notification-silenced.d.ts +15 -0
  30. package/src/lib/migrations/0000000021000-notification-silenced.js +31 -0
  31. package/src/lib/migrations/0000000021000-notification-silenced.js.map +1 -0
  32. package/src/lib/migrations/index.d.ts +1 -0
  33. package/src/lib/migrations/index.js +3 -0
  34. package/src/lib/migrations/index.js.map +1 -1
  35. package/src/lib/notification/index.d.ts +1 -0
  36. package/src/lib/notification/index.js +1 -0
  37. package/src/lib/notification/index.js.map +1 -1
  38. package/src/lib/notification/notification-delivery.service.d.ts +26 -1
  39. package/src/lib/notification/notification-delivery.service.js +136 -13
  40. package/src/lib/notification/notification-delivery.service.js.map +1 -1
  41. package/src/lib/notification/notification-dispatcher.token.d.ts +13 -0
  42. package/src/lib/notification/notification-dispatcher.token.js.map +1 -1
  43. package/src/lib/notification/notification-observer.token.d.ts +6 -0
  44. package/src/lib/notification/notification-observer.token.js.map +1 -1
  45. package/src/lib/notification/notification-options.d.ts +30 -0
  46. package/src/lib/notification/notification-options.js +32 -4
  47. package/src/lib/notification/notification-options.js.map +1 -1
  48. package/src/lib/notification/notification-schedule.d.ts +41 -0
  49. package/src/lib/notification/notification-schedule.js +158 -0
  50. package/src/lib/notification/notification-schedule.js.map +1 -0
  51. package/src/lib/notification/notification.entity.d.ts +12 -0
  52. package/src/lib/notification/notification.entity.js +5 -0
  53. package/src/lib/notification/notification.entity.js.map +1 -1
  54. package/src/lib/notification/notification.service.d.ts +10 -0
  55. package/src/lib/notification/notification.service.js +100 -21
  56. package/src/lib/notification/notification.service.js.map +1 -1
  57. package/src/lib/template/index.d.ts +1 -0
  58. package/src/lib/template/index.js +1 -0
  59. package/src/lib/template/index.js.map +1 -1
  60. package/src/lib/template/template-observer.token.d.ts +67 -0
  61. package/src/lib/template/template-observer.token.js +16 -0
  62. package/src/lib/template/template-observer.token.js.map +1 -0
  63. package/src/lib/template/template.mutations.d.ts +1 -1
  64. package/src/lib/template/template.mutations.js +4 -3
  65. package/src/lib/template/template.mutations.js.map +1 -1
  66. package/src/lib/template/template.service.d.ts +18 -2
  67. package/src/lib/template/template.service.js +117 -17
  68. package/src/lib/template/template.service.js.map +1 -1
package/CHANGELOG.md CHANGED
@@ -1,3 +1,31 @@
1
+ ## 0.10.0 (2026-08-18)
2
+
3
+ ### 🚀 Features
4
+
5
+ - **form-data-source:** add read-only resolve queries and dependency-wait signals ([e8d9b78](https://github.com/Rytass/BPMCore/commit/e8d9b78))
6
+ - **template:** let hosts observe changes and refuse deactivated publishes ([3882dc2](https://github.com/Rytass/BPMCore/commit/3882dc2))
7
+ - **notification:** honour recipient preferences instead of dropping rows ([576b8c4](https://github.com/Rytass/BPMCore/commit/576b8c4))
8
+
9
+ ### 🩹 Fixes
10
+
11
+ - **attachment:** widen the insecure-secret warning and reject blank tokens ([894b7ea](https://github.com/Rytass/BPMCore/commit/894b7ea))
12
+ - **api:** accept full-size uploads and report oversized ones as 413 ([3b12d61](https://github.com/Rytass/BPMCore/commit/3b12d61))
13
+
14
+ ### ❤️ Thank You
15
+
16
+ - Chia Yu Pai @fantasywind
17
+
18
+ ## 0.9.1 (2026-08-18)
19
+
20
+ ### 🩹 Fixes
21
+
22
+ - **bpm-core-react:** keep moment a required dependency ([41dd5fa](https://github.com/Rytass/BPMCore/commit/41dd5fa))
23
+
24
+ ### ❤️ Thank You
25
+
26
+ - Chia Yu Pai @fantasywind
27
+ - Claude Opus 5
28
+
1
29
  ## 0.9.0 (2026-08-17)
2
30
 
3
31
  ### 🚀 Features
@@ -89,6 +117,35 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
89
117
  - GraphQL DataSource input DTOs now carry explicit validation metadata so hosts
90
118
  using `ValidationPipe({ forbidUnknownValues: true })` can call preview/runtime
91
119
  option queries without bypassing input validation.
120
+ - Added the read-only `resolveFormFieldOptions` (authenticated) and
121
+ `previewResolveFormFieldOptions` (designer-only) queries returning
122
+ `BPMFormDataSourceResolveResult`. They confirm already-selected values and
123
+ report the ones the source can no longer account for in `unresolvedValues`
124
+ instead of throwing, so a renderer can mark dead options individually. The
125
+ authoritative submit/resubmit resolve is unchanged and stays all-or-nothing.
126
+ - Both option results now carry `waitingForFieldKeys`. When a required parameter
127
+ has no value the service returns that field-key list and makes no provider
128
+ call, rather than raising an error the caller cannot act on — the browser
129
+ never receives the descriptor, so it cannot tell a required parameter from an
130
+ optional one on its own.
131
+
132
+ ### Changed
133
+
134
+ - Binding, descriptor, and provider-result validation moved into one internal
135
+ `form-data-source.validation.ts` shared by the query service and the
136
+ submit-time value resolver. The two former copies had drifted: a non-finite
137
+ number such as `1e999` passed a search and was only rejected at submit.
138
+ - Submit-time provider calls are now bounded to 4 concurrent requests, so a form
139
+ with many dynamic fields does not turn a single submit into a burst against
140
+ the host's upstream systems.
141
+ - Every browser-controlled DataSource GraphQL input field now carries a
142
+ `@MaxLength` bound and reports an over-long input with the stable
143
+ `FORM_DATA_SOURCE_INVALID_BINDING` code instead of a class-validator sentence
144
+ describing the limits.
145
+ - A snapshot whose recorded `revalidationPolicy` is `ALWAYS` is no longer reused
146
+ when its source has left the registry; only non-`ALWAYS` snapshots (including
147
+ older ones written before the field existed) keep the previous reuse
148
+ behaviour.
92
149
 
93
150
  Releases are managed by [`nx release`](https://nx.dev/recipes/nx-release) with
94
151
  Conventional Commits — see `nx.json` for the release config.
package/README.md CHANGED
@@ -408,13 +408,22 @@ BPMRootModule.forRoot({
408
408
  });
409
409
  ```
410
410
 
411
- `formDataSources` and `previewFormFieldOptions` are designer-only GraphQL
412
- queries. `formFieldOptions` is an authenticated runtime query whose source
413
- reference comes from the server's published form version or returned-instance
414
- snapshot. Missing registry versions, unsupported controls, incomplete
411
+ `formDataSources`, `previewFormFieldOptions` and
412
+ `previewResolveFormFieldOptions` are designer-only GraphQL queries.
413
+ `formFieldOptions` and `resolveFormFieldOptions` are authenticated runtime
414
+ queries whose source reference comes from the server's published form version
415
+ or returned-instance snapshot; each requires exactly one of `templateId` or
416
+ `instanceId`. Missing registry versions, unsupported controls, incomplete
415
417
  bindings, provider failures, and over-limit results return stable DataSource
416
418
  error codes.
417
419
 
420
+ The two `*Resolve*` queries are read-only: they confirm already-selected values
421
+ and report the ones the source can no longer account for in `unresolvedValues`
422
+ instead of failing, so a renderer can mark dead options individually. When a
423
+ required parameter still has no value, an option or resolve result comes back
424
+ with `waitingForFieldKeys` naming the fields to fill and no provider call is
425
+ made — only the server knows which bound parameters are required.
426
+
418
427
  On submit, the engine resolves every selected DataSource-backed value on the
419
428
  server and stores the returned labels, source version, binding hash, and
420
429
  validation timestamp in `approval_instances.form_data_option_snapshot`. A
@@ -902,6 +911,8 @@ BPMRootModule.forRootAsync({
902
911
  | `notificationDefaultEmailDigestMode` | `INSTANT` | Default digest mode for missing preferences. |
903
912
  | `notificationDefaultInAppPreferenceEnabled` | `true` | Default in-app preference for missing preferences. |
904
913
  | `notificationDefaultEmailPreferenceEnabled` | `true` | Default email preference for missing preferences. |
914
+ | `notificationQuietHoursTimeZone` | registered calendar's zone | IANA zone the members' `quietHoursStart` / `quietHoursEnd` are read in. Falls back to `BPM_BUSINESS_CALENDAR.timeZone`, then `UTC`. |
915
+ | `notificationEmailDigestHour` | `9` | Local hour a `DAILY` recipient's held email is flushed. |
905
916
  | `signatureCurrentKeyVersion` | `1` | Key version used for new signatures. |
906
917
  | `signatureKeyProvider` | local development key provider | Host key provider for signing and verification. |
907
918
  | `signatureTimestampProvider` | mock timestamp provider | Host timestamp token provider. |
@@ -1337,7 +1348,8 @@ Importing `BPMRootModule` registers GraphQL resolvers for:
1337
1348
  - Organization units, positions, memberships, manager resolution, and summary.
1338
1349
  - Member profile lookup and member metadata cache inspection.
1339
1350
  - Form definitions and form definition versions.
1340
- - Form option DataSource catalog, designer preview, and authenticated runtime option queries.
1351
+ - Form option DataSource catalog, designer preview, authenticated runtime option
1352
+ queries, and read-only value-resolve queries for both preview and runtime.
1341
1353
  - Approval templates, template versions, categories, validation, and dry run.
1342
1354
  - Workflow instances, tokens, tasks, task candidates, decisions, activity logs,
1343
1355
  submit/process/approve/return/cancel/resubmit operations.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@rytass/bpm-core-nestjs-module",
3
- "version": "0.9.0",
3
+ "version": "0.10.0",
4
4
  "description": "Embeddable NestJS BPM approval workflow module: workflow engine, approval templates, forms, organization/member contracts, attachments, signatures, notifications, delegation, and TypeORM migrations.",
5
5
  "keywords": [
6
6
  "bpm",
@@ -151,16 +151,16 @@
151
151
  }
152
152
  },
153
153
  "peerDependencies": {
154
- "@nestjs/common": "^11.0.0",
155
- "@nestjs/core": "^11.0.0",
156
- "@nestjs/graphql": "^13.4.0",
157
- "@nestjs/typeorm": "^11.0.1",
158
- "@rytass/bpm-core-shared": "^0.9.0",
159
- "@rytass/secret-adapter-vault-nestjs": "^0.4.5 || ^0.5.0 || ^0.6.0",
160
- "express": "^4.0.0 || ^5.0.0",
161
- "graphql": "^16.0.0",
162
- "reflect-metadata": "^0.1.13 || ^0.2.0",
163
- "typeorm": "^0.3.0"
154
+ "@nestjs/common": ">=10.0.0",
155
+ "@nestjs/core": ">=10.0.0",
156
+ "@nestjs/graphql": ">=12.0.0",
157
+ "@nestjs/typeorm": ">=10.0.0",
158
+ "@rytass/bpm-core-shared": "^0.10.0",
159
+ "@rytass/secret-adapter-vault-nestjs": ">=0.4.5",
160
+ "express": ">=4.0.0",
161
+ "graphql": ">=16.0.0",
162
+ "reflect-metadata": ">=0.1.13",
163
+ "typeorm": ">=0.3.0"
164
164
  },
165
165
  "peerDependenciesMeta": {
166
166
  "@rytass/secret-adapter-vault-nestjs": {
@@ -14,8 +14,14 @@ exports.DEFAULT_BPM_ATTACHMENT_OPTIONS = {
14
14
  function resolveBPMAttachmentOptions(options = {}) {
15
15
  const resolvedSignedUrlSecret = normalizeText(options.attachmentSignedUrlSecret) ??
16
16
  exports.DEFAULT_BPM_ATTACHMENT_OPTIONS.signedUrlSecret;
17
+ // Warn everywhere except an explicit local development run. Gating this on
18
+ // `NODE_ENV === 'production'` meant a staging host that never set the variable
19
+ // signed attachment URLs with a constant published in this package — and said
20
+ // nothing about it. One extra line in a developer's console is the cheaper
21
+ // trade.
17
22
  if (resolvedSignedUrlSecret === exports.DEFAULT_BPM_ATTACHMENT_OPTIONS.signedUrlSecret &&
18
- process.env.NODE_ENV === 'production') {
23
+ process.env.NODE_ENV !== 'development' &&
24
+ process.env.NODE_ENV !== 'test') {
19
25
  // eslint-disable-next-line no-console
20
26
  console.warn('[@rytass/bpm-core-nestjs-module] attachmentSignedUrlSecret is using the built-in local development value. Set BPMRootModuleOptions.attachmentSignedUrlSecret to a strong secret before serving production traffic — signed attachment URLs would otherwise be forgeable.');
21
27
  }
@@ -1 +1 @@
1
- {"version":3,"file":"attachment-options.js","sourceRoot":"","sources":["../../../../../../libs/bpm-core/src/lib/attachment/attachment-options.ts"],"names":[],"mappings":";;;AAoDA,kEA6BC;AAQD,0EAMC;AAtDY,QAAA,sBAAsB,GACjC,MAAM,CAAC,wBAAwB,CAAC,CAAC;AAEtB,QAAA,8BAA8B,GAAiC;IAC1E,aAAa,EAAE,wBAAwB;IACvC,WAAW,EAAE,cAAc;IAC3B,eAAe,EAAE,sCAAsC;IACvD,mBAAmB,EAAE,GAAG;IACxB,iBAAiB,EAAE,OAAO;CAC3B,CAAC;AAEF,SAAgB,2BAA2B,CACzC,UAAoC,EAAE;IAEtC,MAAM,uBAAuB,GAC3B,aAAa,CAAC,OAAO,CAAC,yBAAyB,CAAC;QAChD,sCAA8B,CAAC,eAAe,CAAC;IAEjD,IACE,uBAAuB,KAAK,sCAA8B,CAAC,eAAe;QAC1E,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,YAAY,EACrC,CAAC;QACD,sCAAsC;QACtC,OAAO,CAAC,IAAI,CACV,0QAA0Q,CAC3Q,CAAC;IACJ,CAAC;IAED,OAAO;QACL,aAAa,EAAE,sBAAsB,CAAC,OAAO,CAAC,uBAAuB,CAAC;QACtE,WAAW,EAAE,oBAAoB,CAAC,OAAO,CAAC,qBAAqB,CAAC;QAChE,eAAe,EAAE,uBAAuB;QACxC,mBAAmB,EAAE,wBAAwB,CAC3C,OAAO,CAAC,6BAA6B,EACrC,sCAA8B,CAAC,mBAAmB,CACnD;QACD,iBAAiB,EACf,aAAa,CAAC,OAAO,CAAC,2BAA2B,CAAC;YAClD,sCAA8B,CAAC,iBAAiB;KACnD,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,SAAgB,+BAA+B,CAC7C,KAAgC;IAEhC,MAAM,gBAAgB,GAAG,oBAAoB,CAAC,KAAK,CAAC,CAAC;IAErD,OAAO,gBAAgB,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;AAC7C,CAAC;AAED,SAAS,sBAAsB,CAAC,KAAgC;IAC9D,MAAM,eAAe,GACnB,aAAa,CAAC,KAAK,CAAC,IAAI,sCAA8B,CAAC,aAAa,CAAC;IAEvE,OAAO,eAAe,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;AAC7C,CAAC;AAED,SAAS,oBAAoB,CAAC,KAAgC;IAC5D,MAAM,eAAe,GACnB,aAAa,CAAC,KAAK,CAAC,IAAI,sCAA8B,CAAC,WAAW,CAAC;IACrE,MAAM,gBAAgB,GAAG,eAAe,CAAC,UAAU,CAAC,GAAG,CAAC;QACtD,CAAC,CAAC,eAAe;QACjB,CAAC,CAAC,IAAI,eAAe,EAAE,CAAC;IAE1B,OAAO,gBAAgB,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;AAC9C,CAAC;AAED,SAAS,aAAa,CAAC,KAAgC;IACrD,MAAM,YAAY,GAAG,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;IAEzC,OAAO,YAAY,IAAI,IAAI,CAAC;AAC9B,CAAC;AAED,SAAS,wBAAwB,CAC/B,KAAyB,EACzB,QAAgB;IAEhB,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC,EAAE,CAAC;QACxE,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC"}
1
+ {"version":3,"file":"attachment-options.js","sourceRoot":"","sources":["../../../../../../libs/bpm-core/src/lib/attachment/attachment-options.ts"],"names":[],"mappings":";;;AAoDA,kEAmCC;AAQD,0EAMC;AA5DY,QAAA,sBAAsB,GACjC,MAAM,CAAC,wBAAwB,CAAC,CAAC;AAEtB,QAAA,8BAA8B,GAAiC;IAC1E,aAAa,EAAE,wBAAwB;IACvC,WAAW,EAAE,cAAc;IAC3B,eAAe,EAAE,sCAAsC;IACvD,mBAAmB,EAAE,GAAG;IACxB,iBAAiB,EAAE,OAAO;CAC3B,CAAC;AAEF,SAAgB,2BAA2B,CACzC,UAAoC,EAAE;IAEtC,MAAM,uBAAuB,GAC3B,aAAa,CAAC,OAAO,CAAC,yBAAyB,CAAC;QAChD,sCAA8B,CAAC,eAAe,CAAC;IAEjD,2EAA2E;IAC3E,+EAA+E;IAC/E,8EAA8E;IAC9E,2EAA2E;IAC3E,SAAS;IACT,IACE,uBAAuB,KAAK,sCAA8B,CAAC,eAAe;QAC1E,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,aAAa;QACtC,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,MAAM,EAC/B,CAAC;QACD,sCAAsC;QACtC,OAAO,CAAC,IAAI,CACV,0QAA0Q,CAC3Q,CAAC;IACJ,CAAC;IAED,OAAO;QACL,aAAa,EAAE,sBAAsB,CAAC,OAAO,CAAC,uBAAuB,CAAC;QACtE,WAAW,EAAE,oBAAoB,CAAC,OAAO,CAAC,qBAAqB,CAAC;QAChE,eAAe,EAAE,uBAAuB;QACxC,mBAAmB,EAAE,wBAAwB,CAC3C,OAAO,CAAC,6BAA6B,EACrC,sCAA8B,CAAC,mBAAmB,CACnD;QACD,iBAAiB,EACf,aAAa,CAAC,OAAO,CAAC,2BAA2B,CAAC;YAClD,sCAA8B,CAAC,iBAAiB;KACnD,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,SAAgB,+BAA+B,CAC7C,KAAgC;IAEhC,MAAM,gBAAgB,GAAG,oBAAoB,CAAC,KAAK,CAAC,CAAC;IAErD,OAAO,gBAAgB,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;AAC7C,CAAC;AAED,SAAS,sBAAsB,CAAC,KAAgC;IAC9D,MAAM,eAAe,GACnB,aAAa,CAAC,KAAK,CAAC,IAAI,sCAA8B,CAAC,aAAa,CAAC;IAEvE,OAAO,eAAe,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;AAC7C,CAAC;AAED,SAAS,oBAAoB,CAAC,KAAgC;IAC5D,MAAM,eAAe,GACnB,aAAa,CAAC,KAAK,CAAC,IAAI,sCAA8B,CAAC,WAAW,CAAC;IACrE,MAAM,gBAAgB,GAAG,eAAe,CAAC,UAAU,CAAC,GAAG,CAAC;QACtD,CAAC,CAAC,eAAe;QACjB,CAAC,CAAC,IAAI,eAAe,EAAE,CAAC;IAE1B,OAAO,gBAAgB,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;AAC9C,CAAC;AAED,SAAS,aAAa,CAAC,KAAgC;IACrD,MAAM,YAAY,GAAG,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;IAEzC,OAAO,YAAY,IAAI,IAAI,CAAC;AAC9B,CAAC;AAED,SAAS,wBAAwB,CAC/B,KAAyB,EACzB,QAAgB;IAEhB,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC,EAAE,CAAC;QACxE,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC"}
@@ -251,6 +251,13 @@ function signAttachmentToken(payload, signedUrlSecret) {
251
251
  return `${body}.${signature}`;
252
252
  }
253
253
  function verifyAttachmentToken(token, signedUrlSecret) {
254
+ // A missing `?token=` is the same failure as a wrong one — answering it
255
+ // differently would say whether the attachment exists. Without this guard the
256
+ // `split` below throws a raw TypeError, which the global filter reports as a
257
+ // 500 carrying the implementation detail.
258
+ if (typeof token !== 'string' || !token) {
259
+ throw new common_1.NotFoundException('Attachment token is invalid');
260
+ }
254
261
  const [body, signature] = token.split('.');
255
262
  const expectedSignature = (0, crypto_1.createHmac)('sha256', signedUrlSecret)
256
263
  .update(body ?? '')
@@ -1 +1 @@
1
- {"version":3,"file":"attachment.service.js","sourceRoot":"","sources":["../../../../../../libs/bpm-core/src/lib/attachment/attachment.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"attachment.service.js","sourceRoot":"","sources":["../../../../../../libs/bpm-core/src/lib/attachment/attachment.service.ts"],"names":[],"mappings":"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"}
@@ -37,6 +37,12 @@ export interface BPMRootModuleOptions extends Pick<ModuleMetadata, 'imports'>, B
37
37
  * Monday–Friday calendar (see `notificationSlaBusinessCalendarTimeZone`);
38
38
  * hosts that need national holidays or make-up working days register their
39
39
  * own `BPM_BUSINESS_CALENDAR` provider here.
40
+ *
41
+ * The modules listed in `imports` are also given to BPM's `CalendarModule`
42
+ * so this provider can reach host services. A provider whose dependency
43
+ * chain reaches **back into BPM** therefore produces a DI cycle that Nest
44
+ * never reports — see `CalendarModuleOptions.businessCalendarProvider` for
45
+ * what that failure looks like.
40
46
  */
41
47
  readonly businessCalendarProvider?: Provider<BPMBusinessCalendar>;
42
48
  /**
@@ -97,6 +103,11 @@ export interface BPMRootModuleAsyncOptions extends Pick<ModuleMetadata, 'imports
97
103
  *
98
104
  * This provider is static at module wiring time. If secrets or a repository
99
105
  * are required, use a Nest provider with `useFactory` / `inject` here.
106
+ *
107
+ * Its dependency chain must not reach back into BPM: the modules listed in
108
+ * `imports` are forwarded to BPM's `CalendarModule`, and a cycle there stops
109
+ * the application booting with no exception and exit code `0`. See
110
+ * `CalendarModuleOptions.businessCalendarProvider`.
100
111
  */
101
112
  readonly businessCalendarProvider?: Provider<BPMBusinessCalendar>;
102
113
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"bpm-root.module.js","sourceRoot":"","sources":["../../../../../../libs/bpm-core/src/lib/bpm/bpm-root.module.ts"],"names":[],"mappings":";;;;;AAAA,2CAMwB;AAGxB,uEAAmE;AAEnE,iEAA4D;AAM5D,iEAA6D;AAC7D,uEAAmE;AACnE,qDAAiD;AACjD,0DAI6B;AAE7B,iEAA6D;AAE7D,6EAAyE;AACzE,6FAAwF;AAExF,6EAAyE;AAEzE,oEAAgE;AAChE,iEAA6D;AAC7D,sFAAiF;AAoKjF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AAEI,IAAM,aAAa,qBAAnB,MAAM,aAAa;IACxB;;;OAGG;IACH,MAAM,CAAC,OAAO,CAAC,OAA6B;QAC1C,MAAM,cAAc,GAAG,uBAAuB,CAAC,OAAO,CAAC,CAAC;QAExD,OAAO;YACL,OAAO,EAAE,CAAC,GAAG,cAAc,CAAC;YAC5B,OAAO,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,IAAI,EAAE,CAAC,EAAE,GAAG,cAAc,CAAC;YACxD,MAAM,EAAE,eAAa;SACtB,CAAC;IACJ,CAAC;IAED;;;;;;;;;;;OAWG;IACH,MAAM,CAAC,YAAY,CAAC,OAAkC;QACpD,MAAM,WAAW,GAA8B;YAC7C,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,UAAU,EAAE,KAAK,EACf,GAAG,IAAwB,EACI,EAAE;gBACjC,MAAM,WAAW,GAAG,MAAM,OAAO,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC,CAAC;gBAEtD,OAAO,0BAA0B,CAAC,WAAW,CAAC,CAAC;YACjD,CAAC;SACF,CAAC;QAEF,OAAO;YACL,OAAO,EAAE;gBACP,uDAAyB;gBACzB,gCAAc;gBACd,+BAAa;gBACb,gCAAc;gBACd,wCAAkB;gBAClB,oCAAgB;gBAChB,wBAAU;gBACV,uCAAoB;gBACpB,gCAAc;gBACd,oCAAgB;gBAChB,wCAAkB;gBAClB,kCAAe;gBACf,6CAAoB;aACrB;YACD,OAAO,EAAE;gBACP,uDAAyB,CAAC,YAAY,CAAC;oBACrC,OAAO,EAAE,OAAO,CAAC,OAAO;oBACxB,MAAM,EAAE,OAAO,CAAC,MAAM;oBACtB,UAAU,EAAE,OAAO,CAAC,UAAU;iBAC/B,CAAC;gBACF,gCAAc,CAAC,OAAO,CAAC;oBACrB,wBAAwB,EAAE,OAAO,CAAC,wBAAwB;oBAC1D,OAAO,EAAE,OAAO,CAAC,OAAO;iBACzB,CAAC;gBACF,+BAAa,CAAC,YAAY,CAAC,WAAW,CAAC;gBACvC,gCAAc,CAAC,YAAY,CAAC;oBAC1B,OAAO,EAAE,OAAO,CAAC,OAAO;oBACxB,MAAM,EAAE,OAAO,CAAC,MAAM;oBACtB,sBAAsB,EAAE,OAAO,CAAC,sBAAsB;oBACtD,UAAU,EAAE,OAAO,CAAC,UAAU;iBAC/B,CAAC;gBACF,wCAAkB;gBAClB,oCAAgB,CAAC,YAAY,CAAC;oBAC5B,qBAAqB,EAAE,OAAO,CAAC,qBAAqB;oBACpD,OAAO,EAAE,OAAO,CAAC,OAAO;oBACxB,MAAM,EAAE,OAAO,CAAC,MAAM;oBACtB,eAAe,EAAE,OAAO,CAAC,yBAAyB;oBAClD,UAAU,EAAE,OAAO,CAAC,UAAU;iBAC/B,CAAC;gBACF,wBAAU;gBACV,uCAAoB,CAAC,OAAO,CAAC;oBAC3B,OAAO,EAAE,OAAO,CAAC,OAAO;oBACxB,gBAAgB,EAAE,OAAO,CAAC,8BAA8B;iBACnB,CAAC;gBACxC,gCAAc;gBACd,oCAAgB;gBAChB,wCAAkB;gBAClB,kCAAe,CAAC,YAAY,CAAC;oBAC3B,OAAO,EAAE,OAAO,CAAC,OAAO;oBACxB,MAAM,EAAE,OAAO,CAAC,MAAM;oBACtB,UAAU,EAAE,OAAO,CAAC,UAAU;iBAC/B,CAAC;gBACF,6CAAoB,CAAC,OAAO,CAAC;oBAC3B,OAAO,EAAE,OAAO,CAAC,OAAO;oBACxB,6BAA6B,EAC3B,OAAO,CAAC,qCAAqC;iBAChD,CAAC;aACH;YACD,MAAM,EAAE,eAAa;SACtB,CAAC;IACJ,CAAC;CACF,CAAA;AAvGY,sCAAa;wBAAb,aAAa;IADzB,IAAA,eAAM,EAAC,EAAE,CAAC;GACE,aAAa,CAuGzB;AAED,SAAS,uBAAuB,CAC9B,OAA6B;IAE7B,OAAO;QACL,uDAAyB,CAAC,OAAO,CAAC,OAAO,CAAC;QAC1C,gCAAc,CAAC,OAAO,CAAC;YACrB,wBAAwB,EAAE,OAAO,CAAC,wBAAwB;YAC1D,OAAO,EAAE,OAAO,CAAC,OAAO;SACzB,CAAC;QACF,+BAAa,CAAC,OAAO,CAAC,0BAA0B,CAAC,OAAO,CAAC,CAAC;QAC1D,gCAAc,CAAC,OAAO,CAAC;YACrB,GAAG,OAAO;YACV,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,sBAAsB,EAAE,OAAO,CAAC,sBAAsB;SACvD,CAAC;QACF,wCAAkB;QAClB,oCAAgB,CAAC,OAAO,CAAC;YACvB,GAAG,OAAO;YACV,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,eAAe,EAAE,OAAO,CAAC,yBAAyB;SACnD,CAAC;QACF,wBAAU;QACV,uCAAoB,CAAC,OAAO,CAAC;YAC3B,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,gBAAgB,EAAE,OAAO,CAAC,8BAA8B;SACnB,CAAC;QACxC,gCAAc;QACd,oCAAgB;QAChB,wCAAkB;QAClB,kCAAe,CAAC,OAAO,CAAC,OAAO,CAAC;QAChC,6CAAoB,CAAC,OAAO,CAAC;YAC3B,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,6BAA6B,EAC3B,OAAO,CAAC,qCAAqC;SAChD,CAAC;KACH,CAAC;AACJ,CAAC;AAED,SAAS,0BAA0B,CACjC,OAAgE;IAEhE,OAAO;QACL,cAAc,EAAE,OAAO,CAAC,kBAAkB;KAC3C,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"bpm-root.module.js","sourceRoot":"","sources":["../../../../../../libs/bpm-core/src/lib/bpm/bpm-root.module.ts"],"names":[],"mappings":"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"}
@@ -8,6 +8,18 @@ export interface CalendarModuleOptions extends Pick<ModuleMetadata, 'imports'> {
8
8
  *
9
9
  * A `useClass` or `useFactory` provider may depend on host services, so the
10
10
  * modules exporting them have to be listed in `imports`.
11
+ *
12
+ * **The calendar is constructed inside BPM, so its dependency chain must
13
+ * not lead back into BPM.** `BPMRootModule` passes its own `imports` down
14
+ * to this module, which makes it easy to reach a host service that depends
15
+ * on `TemplateService` (or any other BPM provider) without noticing. Nest
16
+ * cannot resolve the resulting cycle and does not report one: the process
17
+ * never finishes bootstrapping, `listen()` is never reached, nothing is
18
+ * thrown for `bootstrap().catch()` to see, and the process exits with code
19
+ * `0`. Diagnosing it means dumping unsettled promises at `beforeExit` and
20
+ * recognising `@nestjs/core/helpers/barrier.js` in the stacks.
21
+ *
22
+ * Keep the calendar's dependencies to host-owned, BPM-free services.
11
23
  */
12
24
  readonly businessCalendarProvider?: Provider<BPMBusinessCalendar>;
13
25
  }
@@ -1 +1 @@
1
- {"version":3,"file":"calendar.module.js","sourceRoot":"","sources":["../../../../../../libs/bpm-core/src/lib/calendar/calendar.module.ts"],"names":[],"mappings":";;;;;AAAA,2CAAyE;AAGzE,6EAA+E;AAC/E,iEAA+D;AAa/D;;;;;GAKG;AAGI,IAAM,cAAc,sBAApB,MAAM,cAAc;IACzB,MAAM,CAAC,OAAO,CAAC,UAAiC,EAAE;QAChD,OAAO;YACL,OAAO,EAAE,CAAC,4CAAqB,CAAC;YAChC,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE;YACpD,MAAM,EAAE,gBAAc;YACtB,SAAS,EAAE;gBACT,OAAO,CAAC,wBAAwB,IAAI,4DAA+B;gBACnE,4CAAqB;aACtB;SACF,CAAC;IACJ,CAAC;CACF,CAAA;AAZY,wCAAc;yBAAd,cAAc;IAF1B,IAAA,eAAM,GAAE;IACR,IAAA,eAAM,EAAC,EAAE,CAAC;GACE,cAAc,CAY1B"}
1
+ {"version":3,"file":"calendar.module.js","sourceRoot":"","sources":["../../../../../../libs/bpm-core/src/lib/calendar/calendar.module.ts"],"names":[],"mappings":";;;;;AAAA,2CAAyE;AAGzE,6EAA+E;AAC/E,iEAA+D;AAyB/D;;;;;GAKG;AAGI,IAAM,cAAc,sBAApB,MAAM,cAAc;IACzB,MAAM,CAAC,OAAO,CAAC,UAAiC,EAAE;QAChD,OAAO;YACL,OAAO,EAAE,CAAC,4CAAqB,CAAC;YAChC,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE;YACpD,MAAM,EAAE,gBAAc;YACtB,SAAS,EAAE;gBACT,OAAO,CAAC,wBAAwB,IAAI,4DAA+B;gBACnE,4CAAqB;aACtB;SACF,CAAC;IACJ,CAAC;CACF,CAAA;AAZY,wCAAc;yBAAd,cAAc;IAF1B,IAAA,eAAM,GAAE;IACR,IAAA,eAAM,EAAC,EAAE,CAAC;GACE,cAAc,CAY1B"}
@@ -19,6 +19,17 @@ export declare class AllExceptionsFilter implements ExceptionFilter {
19
19
  private readonly logger;
20
20
  catch(exception: unknown, host: ArgumentsHost): void;
21
21
  private isWritableHttpResponse;
22
+ /**
23
+ * Reads a usable HTTP status off a non-`HttpException` rejection.
24
+ *
25
+ * Restricted to 4xx errors that opt in through `http-errors`' `expose: true`
26
+ * — the convention Express body parsers follow — so only an error that
27
+ * already declares itself safe to report can set the status. An HTTP client
28
+ * added later (axios and friends) attaches the *upstream* response's status
29
+ * to its rejection without that flag; trusting those would let a remote
30
+ * service dictate what this API answers.
31
+ */
32
+ private readHttpStatus;
22
33
  private resolveMessage;
23
34
  private hasMessage;
24
35
  private hasMessageArray;
@@ -33,7 +33,11 @@ let AllExceptionsFilter = AllExceptionsFilter_1 = class AllExceptionsFilter {
33
33
  }
34
34
  const statusCode = exception instanceof common_1.HttpException
35
35
  ? exception.getStatus()
36
- : common_1.HttpStatus.INTERNAL_SERVER_ERROR;
36
+ : // Body parsers and other Express middleware reject with a plain
37
+ // `Error` that still carries the status they mean — `413` for an
38
+ // oversized payload, say. Reporting those as `500` would blame the
39
+ // server for what the request did wrong.
40
+ (this.readHttpStatus(exception) ?? common_1.HttpStatus.INTERNAL_SERVER_ERROR);
37
41
  const message = this.resolveMessage(exception);
38
42
  const body = {
39
43
  error: statusCode === common_1.HttpStatus.INTERNAL_SERVER_ERROR
@@ -54,6 +58,36 @@ let AllExceptionsFilter = AllExceptionsFilter_1 = class AllExceptionsFilter {
54
58
  return (typeof candidate?.status === 'function' &&
55
59
  typeof candidate.json === 'function');
56
60
  }
61
+ /**
62
+ * Reads a usable HTTP status off a non-`HttpException` rejection.
63
+ *
64
+ * Restricted to 4xx errors that opt in through `http-errors`' `expose: true`
65
+ * — the convention Express body parsers follow — so only an error that
66
+ * already declares itself safe to report can set the status. An HTTP client
67
+ * added later (axios and friends) attaches the *upstream* response's status
68
+ * to its rejection without that flag; trusting those would let a remote
69
+ * service dictate what this API answers.
70
+ */
71
+ readHttpStatus(exception) {
72
+ if (typeof exception !== 'object' || exception === null) {
73
+ return null;
74
+ }
75
+ const candidate = exception;
76
+ if (candidate.expose !== true) {
77
+ return null;
78
+ }
79
+ const status = typeof candidate.status === 'number'
80
+ ? candidate.status
81
+ : typeof candidate.statusCode === 'number'
82
+ ? candidate.statusCode
83
+ : null;
84
+ return status !== null &&
85
+ Number.isInteger(status) &&
86
+ status >= 400 &&
87
+ status <= 499
88
+ ? status
89
+ : null;
90
+ }
57
91
  resolveMessage(exception) {
58
92
  if (exception instanceof common_1.HttpException) {
59
93
  const response = exception.getResponse();
@@ -1 +1 @@
1
- {"version":3,"file":"all-exceptions.filter.js","sourceRoot":"","sources":["../../../../../../../libs/bpm-core/src/lib/common/filters/all-exceptions.filter.ts"],"names":[],"mappings":";;;;;AAAA,2CAOwB;AAoBxB;;;;;;;;;;;;;;;GAeG;AAEI,IAAM,mBAAmB,2BAAzB,MAAM,mBAAmB;IAAzB;QACY,WAAM,GAAG,IAAI,eAAM,CAAC,qBAAmB,CAAC,IAAI,CAAC,CAAC;IA4FjE,CAAC;IA1FC,KAAK,CAAC,SAAkB,EAAE,IAAmB;QAC3C,MAAM,OAAO,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;QACpC,MAAM,QAAQ,GAAG,OAAO,CAAC,WAAW,EAAwB,CAAC;QAC7D,MAAM,OAAO,GAAG,OAAO,CAAC,UAAU,EAA+B,CAAC;QAElE,IAAI,CAAC,IAAI,CAAC,sBAAsB,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC3C,MAAM,SAAS,CAAC;QAClB,CAAC;QAED,MAAM,UAAU,GACd,SAAS,YAAY,sBAAa;YAChC,CAAC,CAAC,SAAS,CAAC,SAAS,EAAE;YACvB,CAAC,CAAC,mBAAU,CAAC,qBAAqB,CAAC;QACvC,MAAM,OAAO,GAAG,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;QAC/C,MAAM,IAAI,GAAsB;YAC9B,KAAK,EACH,UAAU,KAAK,mBAAU,CAAC,qBAAqB;gBAC7C,CAAC,CAAC,uBAAuB;gBACzB,CAAC,CAAC,eAAe;YACrB,OAAO;YACP,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI,IAAI,CAAC,OAAO,EAAU;YAC5C,UAAU;YACV,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;SACpC,CAAC;QAEF,IAAI,UAAU,KAAK,mBAAU,CAAC,qBAAqB,EAAE,CAAC;YACpD,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,OAAO,EACP,SAAS,YAAY,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CACzD,CAAC;QACJ,CAAC;QAED,QAAQ,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACzC,CAAC;IAEO,sBAAsB,CAC5B,QAA8B;QAE9B,MAAM,SAAS,GAAG,QAAwC,CAAC;QAE3D,OAAO,CACL,OAAO,SAAS,EAAE,MAAM,KAAK,UAAU;YACvC,OAAO,SAAS,CAAC,IAAI,KAAK,UAAU,CACrC,CAAC;IACJ,CAAC;IAEO,cAAc,CAAC,SAAkB;QACvC,IAAI,SAAS,YAAY,sBAAa,EAAE,CAAC;YACvC,MAAM,QAAQ,GAAG,SAAS,CAAC,WAAW,EAAE,CAAC;YAEzC,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE,CAAC;gBACjC,OAAO,QAAQ,CAAC;YAClB,CAAC;YAED,IAAI,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,EAAE,CAAC;gBACnC,OAAO,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACrC,CAAC;YAED,IAAI,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAC9B,OAAO,QAAQ,CAAC,OAAO,CAAC;YAC1B,CAAC;QACH,CAAC;QAED,IAAI,SAAS,YAAY,KAAK,EAAE,CAAC;YAC/B,OAAO,SAAS,CAAC,OAAO,CAAC;QAC3B,CAAC;QAED,OAAO,kBAAkB,CAAC;IAC5B,CAAC;IAEO,UAAU,CAAC,KAAc;QAC/B,OAAO,CACL,OAAO,KAAK,KAAK,QAAQ;YACzB,KAAK,KAAK,IAAI;YACd,SAAS,IAAI,KAAK;YAClB,OAAO,KAAK,CAAC,OAAO,KAAK,QAAQ,CAClC,CAAC;IACJ,CAAC;IAEO,eAAe,CACrB,KAAc;QAEd,OAAO,CACL,OAAO,KAAK,KAAK,QAAQ;YACzB,KAAK,KAAK,IAAI;YACd,SAAS,IAAI,KAAK;YAClB,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC;YAC5B,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,IAAI,KAAK,QAAQ,CAAC,CACxD,CAAC;IACJ,CAAC;CACF,CAAA;AA7FY,kDAAmB;8BAAnB,mBAAmB;IAD/B,IAAA,cAAK,GAAE;GACK,mBAAmB,CA6F/B"}
1
+ {"version":3,"file":"all-exceptions.filter.js","sourceRoot":"","sources":["../../../../../../../libs/bpm-core/src/lib/common/filters/all-exceptions.filter.ts"],"names":[],"mappings":"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"}
@@ -5,12 +5,11 @@ export declare class FormDataSourceValueResolverService implements BPMFormDataSo
5
5
  private readonly logger;
6
6
  constructor(registry: BPMFormDataSourceRegistry);
7
7
  resolveFormDataOptionSnapshots(input: BPMFormDataSourceSnapshotResolutionInput): Promise<FormDataSourceValueSnapshots>;
8
+ /**
9
+ * The authoritative resolve behind submit and resubmit: all requested values
10
+ * come back or the whole call fails with `VALUE_NOT_RESOLVED`. The read-only
11
+ * resolve query reports partial results instead, and must never share this
12
+ * path — a half-resolved field cannot be written into an instance.
13
+ */
8
14
  resolveFormFieldOptions(input: BPMFormDataSourceResolveFieldInput): Promise<readonly FormFieldOption[]>;
9
- private readDynamicOptionField;
10
- private readSourceOrThrow;
11
- private createSourceMissingException;
12
- private assertDescriptor;
13
- private assertControlSupported;
14
- private readBindingValues;
15
- private callProvider;
16
15
  }