@objectstack/plugin-approvals 17.0.0-rc.5 → 17.0.0-rc.6
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/CHANGELOG.md +432 -0
- package/dist/index.d.mts +879 -1218
- package/dist/index.d.ts +879 -1218
- package/dist/index.js +42 -13
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +42 -13
- package/dist/index.mjs.map +1 -1
- package/package.json +11 -11
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,437 @@
|
|
|
1
1
|
# @objectstack/plugin-approvals
|
|
2
2
|
|
|
3
|
+
## 17.0.0-rc.6
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- 5fa04fb: Point the account app's **Approvals** navigation entry at the Approvals Inbox component, and contribute an **Approvals Inbox** entry to Setup (#7234).
|
|
8
|
+
|
|
9
|
+
The entry point has not moved — the account menu still shows **Approvals** with the same
|
|
10
|
+
label and icon in every locale. Its destination has. It used to open the raw
|
|
11
|
+
`sys_approval_request` grid, which is an admin/diagnostic view of the engine's own table
|
|
12
|
+
and cannot show an approver a single decision button: every action on that object is gated
|
|
13
|
+
on `record.viewer.can_act || record.viewer.can_override`, and the `viewer` block is
|
|
14
|
+
attached only by the approvals REST path, never by the generic data API the object route
|
|
15
|
+
reads. The result was a correct-looking list of rows nobody could act on. The entry is now
|
|
16
|
+
`{ type: 'component', componentRef: 'approvals:inbox' }`, so it opens the full inbox —
|
|
17
|
+
decision actions, business vocabulary, node progress and the request drawer.
|
|
18
|
+
|
|
19
|
+
- **Account app**: `nav_account_approvals` becomes a component entry gated by
|
|
20
|
+
`requiresService: 'approvals'`, so it disappears where `plugin-approvals` is not
|
|
21
|
+
installed (the previous `requiresObject` gate does not apply to a component entry).
|
|
22
|
+
- **Setup**: `plugin-approvals` contributes a new **Approvals Inbox** entry at the top of
|
|
23
|
+
**Setup → Approvals**, above the three raw tables, which stay exactly as they were —
|
|
24
|
+
admin-gated by `manage_platform_settings` and now unambiguously the diagnostic surface.
|
|
25
|
+
Labels ship in all four locales (zh-CN 审批中心).
|
|
26
|
+
- `sys_approval_request` is no longer surfaced raw to end users anywhere.
|
|
27
|
+
- **Docs**: the approver's queue is documented as the Approvals Inbox, with a snippet for
|
|
28
|
+
mounting it in any business app — one navigation entry naming the component-registry key
|
|
29
|
+
`approvals:inbox`, never a console path.
|
|
30
|
+
|
|
31
|
+
Reaching the inbox end to end in the browser additionally requires the console pin bump,
|
|
32
|
+
tracked separately.
|
|
33
|
+
|
|
34
|
+
### Patch Changes
|
|
35
|
+
|
|
36
|
+
- e5bd768: refactor(spec)!: retire `ActionDescriptor.isAsync` — a second spelling of `supportsPause` that nothing ever read (#6748, ADR-0049)
|
|
37
|
+
|
|
38
|
+
<!-- adr-0087: registered action-descriptor-is-async-retired -->
|
|
39
|
+
|
|
40
|
+
**FROM → TO:** `isAsync: true` → delete the key; declare `supportsPause: true` (plus the
|
|
41
|
+
`resumeAuthority` its pauses need) and return `suspend: true` from `execute()`.
|
|
42
|
+
`isAsync: false` → delete the key; there was never anything to preserve.
|
|
43
|
+
|
|
44
|
+
`ActionDescriptor.isAsync` declared "suspends the flow awaiting an external reply" and no
|
|
45
|
+
execution path read it. Measured fresh before removal across all three repos — objectstack,
|
|
46
|
+
objectui and cloud — with zero property reads: every hit was the declaration itself, a
|
|
47
|
+
generated baseline, one of five shipped descriptors WRITING it, a fixture pinning the
|
|
48
|
+
shape, or prose. Declaring it never made a node suspend; omitting it never stopped one.
|
|
49
|
+
|
|
50
|
+
This is the remove leg of the ADR-0049 disposition its sibling took the other way. The two
|
|
51
|
+
keys said the same thing — "this node type can suspend the run" — and #6667 split them by
|
|
52
|
+
evidence: `supportsPause` became an enforced fact (`AutomationEngine` now refuses a
|
|
53
|
+
suspension whose type does not declare it, at the one seam every suspension passes
|
|
54
|
+
through), while `isAsync` had no consumer to grow into. Keeping both would leave the
|
|
55
|
+
platform publishing two names for one capability with only one of them honoured — and
|
|
56
|
+
`screen` declared BOTH, so a plugin author copying it had no way to tell which.
|
|
57
|
+
|
|
58
|
+
The retirement kit:
|
|
59
|
+
|
|
60
|
+
- **Tombstone, not deletion** (`retiredKey()`): `ActionDescriptorSchema` is not `.strict()`,
|
|
61
|
+
so a plain delete would let existing descriptors parse clean and lose the key in silence
|
|
62
|
+
(the ADR-0104 shape). Authoring `isAsync` now fails `tsc` at the descriptor literal and
|
|
63
|
+
fails the parse inside `defineActionDescriptor()` — with the prescription in the message.
|
|
64
|
+
- **ADR-0087 D3 `SemanticMigration`** (`action-descriptor-is-async-retired`) plus the exact
|
|
65
|
+
`RETIRED_KEYS_BY_MAJOR` entry. No D2 conversion, deliberately: a descriptor is published
|
|
66
|
+
from an executor's TypeScript and never stored in stack metadata, so there is no source
|
|
67
|
+
for `os migrate meta` to rewrite — the `EnhancedApiError.fieldErrors` disposition.
|
|
68
|
+
- The five shipped writers stop writing it (`screen`, `map`, `wait`, `approval`,
|
|
69
|
+
`approval_revise`); the descriptors they publish lose the key, which is why the two
|
|
70
|
+
runtime packages appear here.
|
|
71
|
+
- Generated baselines (`authorable-surface/automation.json` gains `[RETIRED]`,
|
|
72
|
+
`authorable-defaults/automation.json` loses the default line), `spec-changes.json`, the
|
|
73
|
+
upgrade guide and the reference docs regenerated.
|
|
74
|
+
|
|
75
|
+
No runtime behaviour changes — that impossibility is the reason for the removal. The same
|
|
76
|
+
commit also corrects `supportsPause`'s TSDoc, which still described itself as a declaration
|
|
77
|
+
no execution path reads; #6667 made that false (#6749).
|
|
78
|
+
|
|
79
|
+
- f40c5b4: refactor(plugin-approvals,plugin-reports): enforcement implementations annotate the full `ExecutionContext` (#7135)
|
|
80
|
+
|
|
81
|
+
The services half of #7070, mirroring what PR #7140 did for
|
|
82
|
+
`plugin-sharing` / `plugin-audit`. #6523 converged 36 contract signatures onto
|
|
83
|
+
the complete `resolveAuthzContext` envelope, applying the #6206 ruling —
|
|
84
|
+
enforcement adjudicates on the whole envelope, never a per-site subset. The
|
|
85
|
+
implementations behind those contracts still annotated their own parameters
|
|
86
|
+
with the six-field shape the contracts used to name, so nothing they could
|
|
87
|
+
_read_ had widened.
|
|
88
|
+
|
|
89
|
+
`ApprovalService`, the approval flow-node provider and `ReportService` now
|
|
90
|
+
declare `ExecutionContext` on all 43 of those positions, and the casts the
|
|
91
|
+
narrow annotation forced are gone:
|
|
92
|
+
|
|
93
|
+
- `isOverrideActor()` read the derived `posture` (ADR-0095) through an
|
|
94
|
+
unchecked `(context as any)`. That gate decides whether a platform or tenant
|
|
95
|
+
admin may release a STUCK approval — one routed to an unstaffed position, the
|
|
96
|
+
only in-product recovery from a permanently locked record — so an erasure sat
|
|
97
|
+
directly on an enforcement input: a mistyped rung would have compiled and
|
|
98
|
+
silently denied every override. It is a declared read now.
|
|
99
|
+
- Both services' `SYSTEM_CTX` is typed as the envelope and passed as itself,
|
|
100
|
+
retiring the `SYSTEM_CTX as unknown as …` double casts at the three sites
|
|
101
|
+
that hand it to a contract method.
|
|
102
|
+
- The `(context as any).userId` / `.tenantId` reads in `ApprovalService` now
|
|
103
|
+
read declared fields.
|
|
104
|
+
- `OwnerContextResolver` returns the envelope, which is what a scheduled report
|
|
105
|
+
actually resolves for its owner (#2849 / #2980).
|
|
106
|
+
|
|
107
|
+
**No runtime behaviour changes.** The values were always complete — this
|
|
108
|
+
family's damage was type-side — so every gate answers exactly what it answered
|
|
109
|
+
before. Method parameters only WIDEN what they accept, so no caller is
|
|
110
|
+
affected, and no public export changes shape.
|
|
111
|
+
|
|
112
|
+
Casts deliberately kept, and now documented where they sit: `organizationId`
|
|
113
|
+
is not a field of the envelope at all — that spelling has its own history
|
|
114
|
+
(#5858 / `check:org-identifier`) and was held out of this change by #7070. In
|
|
115
|
+
`approval-node.ts` the single remaining assertion exists only because the
|
|
116
|
+
literal names that key; it was reduced from `as unknown as …` to a single
|
|
117
|
+
`as ExecutionContext`, which still requires the literal to be comparable to
|
|
118
|
+
the envelope.
|
|
119
|
+
|
|
120
|
+
Because a re-narrowed annotation would compile, ship and pass every test in
|
|
121
|
+
these packages, the convergence is pinned by a new compile-time module per
|
|
122
|
+
package, `exec-context-annotation.pin.ts`: it hands each parameter a fresh
|
|
123
|
+
literal naming envelope-only fields (`posture`, `accessible_org_ids`,
|
|
124
|
+
`org_user_ids`), which TypeScript's excess-property check rejects the moment a
|
|
125
|
+
parameter narrows back, plus negative cases so a parameter erased to `any`
|
|
126
|
+
cannot pass either.
|
|
127
|
+
|
|
128
|
+
The exported `SharingExecutionContext` type itself is NOT removed here: it is
|
|
129
|
+
defined in `packages/spec`, which is single-owner, so its retirement is a
|
|
130
|
+
separate follow-up.
|
|
131
|
+
|
|
132
|
+
- 5d12675: Unify the approval-status vocabulary across the `sys_approval_request` i18n bundles (#7232).
|
|
133
|
+
|
|
134
|
+
A request rendered through the generic object surfaces used a different word than the same
|
|
135
|
+
request in the Approvals Inbox and in the account-app navigation. The bundles now say what
|
|
136
|
+
those surfaces already say:
|
|
137
|
+
|
|
138
|
+
- **zh-CN**: the `status` option `pending` reads 待审批 (was 待处理), and the `my_pending`
|
|
139
|
+
view reads 待我审批 (was 我的待办), matching the account-app nav entry; the view's
|
|
140
|
+
empty-state title was aligned to the same wording.
|
|
141
|
+
- **en**: the `status` options are humanized — `Pending` / `Approved` / `Rejected` /
|
|
142
|
+
`Recalled` / `Returned` — instead of shipping the raw enum values as labels.
|
|
143
|
+
- **ja-JP / es-ES**: the `my_pending` view label now matches the nav wording (承認待ち /
|
|
144
|
+
Aprobaciones pendientes).
|
|
145
|
+
|
|
146
|
+
Status **values** are unchanged — this is display wording only, so no stored data, filter,
|
|
147
|
+
or API payload is affected.
|
|
148
|
+
|
|
149
|
+
- dadd1ad: refactor(spec,plugin-sharing): retire the exported `SharingExecutionContext` type (#7218)
|
|
150
|
+
|
|
151
|
+
<!-- adr-0087: registered sharing-execution-context-retired -->
|
|
152
|
+
|
|
153
|
+
**BREAKING — public surface removal.** `SharingExecutionContext` is deleted from
|
|
154
|
+
`@objectstack/spec` (`contracts/sharing-service`) and from
|
|
155
|
+
`@objectstack/plugin-sharing`, which re-exported it. Both `api-surface/` and
|
|
156
|
+
`export-origins/` snapshots are regenerated accordingly.
|
|
157
|
+
|
|
158
|
+
This is the deferred deletion recorded when #7070 split the convergence in two.
|
|
159
|
+
#6523 / PR #7068 converged 36 contract signatures onto the full
|
|
160
|
+
`resolveAuthzContext` envelope (`ExecutionContext`), applying the #6206 ruling —
|
|
161
|
+
enforcement adjudicates on the whole envelope, never a per-site subset. The
|
|
162
|
+
consumer halves then re-annotated the implementations: PR #7140 (identity:
|
|
163
|
+
`plugin-sharing`, `plugin-audit`) and PR #7206 (services: `plugin-approvals`,
|
|
164
|
+
`plugin-reports`). Both landed with the type still exported, because it is
|
|
165
|
+
DEFINED in `packages/spec` and that package's retirement is the spec seat's to
|
|
166
|
+
make. Nothing declares it any more, so it goes.
|
|
167
|
+
|
|
168
|
+
**Migration.** Anyone who imported `SharingExecutionContext` from either package
|
|
169
|
+
should import `ExecutionContext` from `@objectstack/spec` instead — the type the
|
|
170
|
+
contracts have declared since #7068. The old shape was six optional fields, all
|
|
171
|
+
of which exist on the envelope with the same names and types, so a value that
|
|
172
|
+
satisfied the retired type already satisfies `ExecutionContext`; only the
|
|
173
|
+
spelling of the annotation changes.
|
|
174
|
+
|
|
175
|
+
**No runtime behaviour changes.** The type was erased at compile time and no
|
|
176
|
+
signature's accepted shape moved: the contracts already took the wide envelope.
|
|
177
|
+
|
|
178
|
+
**What the retirement did NOT remove — the reason to read the pins.** Deleting
|
|
179
|
+
the type does not make re-narrowing a compile error. Structural subtyping still
|
|
180
|
+
accepts a six-field context where the envelope is expected, so the boundary is
|
|
181
|
+
held by the declared parameter type plus the pins, exactly as before. The three
|
|
182
|
+
`exec-context-annotation.pin.ts` files (`plugin-sharing`, `plugin-approvals`,
|
|
183
|
+
`plugin-reports`) told their failure story as "the parameter narrows back to
|
|
184
|
+
`SharingExecutionContext`", which a deletion would have quietly hollowed out.
|
|
185
|
+
Each now keeps the retired six-field shape as a local, non-exported SPECIMEN
|
|
186
|
+
type and refutes every enforcement parameter against it by type identity, so a
|
|
187
|
+
re-narrowing under ANY name is red — alongside the fresh-literal
|
|
188
|
+
excess-property checks they already carried. `sharing-service.test.ts` in
|
|
189
|
+
`packages/spec` is re-anchored the same way, and its "twin unchanged in shape"
|
|
190
|
+
case becomes a "twin stays retired" case. The narrative the retired type's doc
|
|
191
|
+
block carried (the measured `(context as any).posture` specimen, and why tsc
|
|
192
|
+
cannot police this) moves to the module doc of `contracts/sharing-service`,
|
|
193
|
+
which the contracts and pins now point at.
|
|
194
|
+
|
|
195
|
+
- 2465133: fix(plugins): sweep the service-lookup erasures out of the plugin composition roots, and fix the two alias-only HTTP reads it exposed (#4251 B5)
|
|
196
|
+
|
|
197
|
+
Batch B5 of the #4251 sweep: the seven remaining `packages/plugins/*` composition
|
|
198
|
+
roots. 35 lookup sites that had been erased to `any` now carry the slot's
|
|
199
|
+
contract, so the compiler checks what each plugin actually calls on the service
|
|
200
|
+
it resolved. The ratchet drops 143 sites / 32 files to 108 / 25.
|
|
201
|
+
|
|
202
|
+
**Two real defects, both of the shape this sweep exists to find.** Approvals'
|
|
203
|
+
actionable-link pages (ADR-0043) and sharing's public share-link REST routes each
|
|
204
|
+
read the HTTP server under `http-server` _only_ — the deprecated alias. The
|
|
205
|
+
ledger records `http.server` as canonical and as the only name present on every
|
|
206
|
+
provider path: `runtime.ts`'s `config.server` path registers no alias at all. On
|
|
207
|
+
that path both lookups threw, the surrounding `catch` swallowed it, and the
|
|
208
|
+
routes silently never mounted — approval e-mail action links 404'd and the
|
|
209
|
+
share-link surface was absent, with nothing in the log to say so. Both reads are
|
|
210
|
+
now canonical-first with the alias as fallback, each name in its own `try`
|
|
211
|
+
because `getService` throws on an empty slot (so `a() ?? b()` inside one `try`
|
|
212
|
+
never reaches `b` — the same correction #4393 made in metadata and
|
|
213
|
+
cloud-connection).
|
|
214
|
+
|
|
215
|
+
Typing choices follow the batch method: pure data-plane consumers take the
|
|
216
|
+
narrow contract (`IDataEngine` in reports), consumers that bind hook or
|
|
217
|
+
middleware seams take the engine seen whole (`IObjectQLEngine` in approvals,
|
|
218
|
+
sharing and pinyin-search), and slots with no contract get a **named** local
|
|
219
|
+
surface rather than `any` — plugin-email's `MailSettingsSurface`, and the
|
|
220
|
+
surfaces the consuming packages already declared (`ApprovalMessagingSurface`,
|
|
221
|
+
`SharingSecurityProbe`, `ReportEmail`). A named surface that omits a member
|
|
222
|
+
still makes the compiler name every call site; `any` says nothing.
|
|
223
|
+
|
|
224
|
+
No behaviour change beyond the two alias reads. No contract changes.
|
|
225
|
+
|
|
226
|
+
- Updated dependencies [3d5c090]
|
|
227
|
+
- Updated dependencies [e5bd768]
|
|
228
|
+
- Updated dependencies [e027b3e]
|
|
229
|
+
- Updated dependencies [c2429b0]
|
|
230
|
+
- Updated dependencies [445a0c2]
|
|
231
|
+
- Updated dependencies [f6609e6]
|
|
232
|
+
- Updated dependencies [a70358a]
|
|
233
|
+
- Updated dependencies [97e7e3c]
|
|
234
|
+
- Updated dependencies [8828b9e]
|
|
235
|
+
- Updated dependencies [53068c1]
|
|
236
|
+
- Updated dependencies [ee58392]
|
|
237
|
+
- Updated dependencies [f16e54e]
|
|
238
|
+
- Updated dependencies [06be54e]
|
|
239
|
+
- Updated dependencies [259459d]
|
|
240
|
+
- Updated dependencies [3f7f14e]
|
|
241
|
+
- Updated dependencies [6968885]
|
|
242
|
+
- Updated dependencies [eaed61f]
|
|
243
|
+
- Updated dependencies [debe2f6]
|
|
244
|
+
- Updated dependencies [97b0798]
|
|
245
|
+
- Updated dependencies [5fa04fb]
|
|
246
|
+
- Updated dependencies [43a7a8d]
|
|
247
|
+
- Updated dependencies [73f69dc]
|
|
248
|
+
- Updated dependencies [04c56aa]
|
|
249
|
+
- Updated dependencies [b3efeb7]
|
|
250
|
+
- Updated dependencies [ddd075a]
|
|
251
|
+
- Updated dependencies [88154be]
|
|
252
|
+
- Updated dependencies [e8dc61e]
|
|
253
|
+
- Updated dependencies [2f3e793]
|
|
254
|
+
- Updated dependencies [d8e8d9c]
|
|
255
|
+
- Updated dependencies [94e749b]
|
|
256
|
+
- Updated dependencies [ea1d916]
|
|
257
|
+
- Updated dependencies [ae31a19]
|
|
258
|
+
- Updated dependencies [b230e5e]
|
|
259
|
+
- Updated dependencies [5d24f4b]
|
|
260
|
+
- Updated dependencies [29b94ed]
|
|
261
|
+
- Updated dependencies [07c68b0]
|
|
262
|
+
- Updated dependencies [f6cd635]
|
|
263
|
+
- Updated dependencies [e0f300b]
|
|
264
|
+
- Updated dependencies [62b6a2f]
|
|
265
|
+
- Updated dependencies [5b4780b]
|
|
266
|
+
- Updated dependencies [a933452]
|
|
267
|
+
- Updated dependencies [8140915]
|
|
268
|
+
- Updated dependencies [7b48cf9]
|
|
269
|
+
- Updated dependencies [b5404f4]
|
|
270
|
+
- Updated dependencies [f764691]
|
|
271
|
+
- Updated dependencies [e120a5a]
|
|
272
|
+
- Updated dependencies [e9b5265]
|
|
273
|
+
- Updated dependencies [e650d67]
|
|
274
|
+
- Updated dependencies [121852d]
|
|
275
|
+
- Updated dependencies [04476e7]
|
|
276
|
+
- Updated dependencies [79228cd]
|
|
277
|
+
- Updated dependencies [b3363e9]
|
|
278
|
+
- Updated dependencies [2ef1807]
|
|
279
|
+
- Updated dependencies [d03fe25]
|
|
280
|
+
- Updated dependencies [2672f85]
|
|
281
|
+
- Updated dependencies [11066f6]
|
|
282
|
+
- Updated dependencies [916af17]
|
|
283
|
+
- Updated dependencies [84c86fb]
|
|
284
|
+
- Updated dependencies [2a2a9fb]
|
|
285
|
+
- Updated dependencies [a2e157c]
|
|
286
|
+
- Updated dependencies [95c4227]
|
|
287
|
+
- Updated dependencies [2a61116]
|
|
288
|
+
- Updated dependencies [d4df105]
|
|
289
|
+
- Updated dependencies [e2798fa]
|
|
290
|
+
- Updated dependencies [0fd8556]
|
|
291
|
+
- Updated dependencies [74155c7]
|
|
292
|
+
- Updated dependencies [6908830]
|
|
293
|
+
- Updated dependencies [8b06bba]
|
|
294
|
+
- Updated dependencies [4c54037]
|
|
295
|
+
- Updated dependencies [0f7157b]
|
|
296
|
+
- Updated dependencies [d9bef45]
|
|
297
|
+
- Updated dependencies [f549a0d]
|
|
298
|
+
- Updated dependencies [82da264]
|
|
299
|
+
- Updated dependencies [f586f1a]
|
|
300
|
+
- Updated dependencies [9b9b70f]
|
|
301
|
+
- Updated dependencies [f5a9bc2]
|
|
302
|
+
- Updated dependencies [881a3cc]
|
|
303
|
+
- Updated dependencies [ad6317b]
|
|
304
|
+
- Updated dependencies [d5e9f6e]
|
|
305
|
+
- Updated dependencies [8a88885]
|
|
306
|
+
- Updated dependencies [5f7669e]
|
|
307
|
+
- Updated dependencies [becbe53]
|
|
308
|
+
- Updated dependencies [b127c8b]
|
|
309
|
+
- Updated dependencies [a80302a]
|
|
310
|
+
- Updated dependencies [474f131]
|
|
311
|
+
- Updated dependencies [050cd82]
|
|
312
|
+
- Updated dependencies [4d552af]
|
|
313
|
+
- Updated dependencies [44d677c]
|
|
314
|
+
- Updated dependencies [c32944d]
|
|
315
|
+
- Updated dependencies [1dd780f]
|
|
316
|
+
- Updated dependencies [cafec0a]
|
|
317
|
+
- Updated dependencies [c8d6f6e]
|
|
318
|
+
- Updated dependencies [92a67f2]
|
|
319
|
+
- Updated dependencies [9136327]
|
|
320
|
+
- Updated dependencies [bf0ae99]
|
|
321
|
+
- Updated dependencies [cb3b6cd]
|
|
322
|
+
- Updated dependencies [73b7234]
|
|
323
|
+
- Updated dependencies [d2b97c3]
|
|
324
|
+
- Updated dependencies [59b794f]
|
|
325
|
+
- Updated dependencies [fc3a36a]
|
|
326
|
+
- Updated dependencies [69787f0]
|
|
327
|
+
- Updated dependencies [5d022a1]
|
|
328
|
+
- Updated dependencies [042b9ee]
|
|
329
|
+
- Updated dependencies [f549a0d]
|
|
330
|
+
- Updated dependencies [a36db28]
|
|
331
|
+
- Updated dependencies [3f8817a]
|
|
332
|
+
- Updated dependencies [a2443e3]
|
|
333
|
+
- Updated dependencies [e1554b1]
|
|
334
|
+
- Updated dependencies [4856789]
|
|
335
|
+
- Updated dependencies [c3f4916]
|
|
336
|
+
- Updated dependencies [33e0385]
|
|
337
|
+
- Updated dependencies [2205363]
|
|
338
|
+
- Updated dependencies [09fe58d]
|
|
339
|
+
- Updated dependencies [d0a5ceb]
|
|
340
|
+
- Updated dependencies [e18a162]
|
|
341
|
+
- Updated dependencies [d6d1a50]
|
|
342
|
+
- Updated dependencies [d127ff0]
|
|
343
|
+
- Updated dependencies [9b86cf6]
|
|
344
|
+
- Updated dependencies [8825a06]
|
|
345
|
+
- Updated dependencies [5087ac6]
|
|
346
|
+
- Updated dependencies [6965160]
|
|
347
|
+
- Updated dependencies [2d1ddf0]
|
|
348
|
+
- Updated dependencies [354b00f]
|
|
349
|
+
- Updated dependencies [3de535b]
|
|
350
|
+
- Updated dependencies [fe2e15a]
|
|
351
|
+
- Updated dependencies [c6b6bb4]
|
|
352
|
+
- Updated dependencies [59c544d]
|
|
353
|
+
- Updated dependencies [2f59da0]
|
|
354
|
+
- Updated dependencies [5e247fd]
|
|
355
|
+
- Updated dependencies [1a53a02]
|
|
356
|
+
- Updated dependencies [a954634]
|
|
357
|
+
- Updated dependencies [8ad609c]
|
|
358
|
+
- Updated dependencies [bbee302]
|
|
359
|
+
- Updated dependencies [08863dd]
|
|
360
|
+
- Updated dependencies [56664f5]
|
|
361
|
+
- Updated dependencies [31cbe90]
|
|
362
|
+
- Updated dependencies [90bbf25]
|
|
363
|
+
- Updated dependencies [eb91eba]
|
|
364
|
+
- Updated dependencies [42da73d]
|
|
365
|
+
- Updated dependencies [643b7c7]
|
|
366
|
+
- Updated dependencies [d0d5205]
|
|
367
|
+
- Updated dependencies [1a15893]
|
|
368
|
+
- Updated dependencies [b70e534]
|
|
369
|
+
- Updated dependencies [2233a85]
|
|
370
|
+
- Updated dependencies [62dd69a]
|
|
371
|
+
- Updated dependencies [e15e679]
|
|
372
|
+
- Updated dependencies [2ab1257]
|
|
373
|
+
- Updated dependencies [4cc4fb7]
|
|
374
|
+
- Updated dependencies [28d1eb7]
|
|
375
|
+
- Updated dependencies [2c26040]
|
|
376
|
+
- Updated dependencies [f758cec]
|
|
377
|
+
- Updated dependencies [78f0be8]
|
|
378
|
+
- Updated dependencies [35f7fb4]
|
|
379
|
+
- Updated dependencies [a5302c7]
|
|
380
|
+
- Updated dependencies [7084313]
|
|
381
|
+
- Updated dependencies [91cefb8]
|
|
382
|
+
- Updated dependencies [0e043d8]
|
|
383
|
+
- Updated dependencies [dadd1ad]
|
|
384
|
+
- Updated dependencies [2f2e63c]
|
|
385
|
+
- Updated dependencies [486d526]
|
|
386
|
+
- Updated dependencies [89d7b35]
|
|
387
|
+
- Updated dependencies [85ec26d]
|
|
388
|
+
- Updated dependencies [f6476fc]
|
|
389
|
+
- Updated dependencies [4ac12ef]
|
|
390
|
+
- Updated dependencies [b88f5e8]
|
|
391
|
+
- Updated dependencies [42cc219]
|
|
392
|
+
- Updated dependencies [d42a92f]
|
|
393
|
+
- Updated dependencies [51d74ad]
|
|
394
|
+
- Updated dependencies [d7e0b42]
|
|
395
|
+
- Updated dependencies [3510e4a]
|
|
396
|
+
- Updated dependencies [aa4b90d]
|
|
397
|
+
- Updated dependencies [54299ca]
|
|
398
|
+
- Updated dependencies [dc61def]
|
|
399
|
+
- Updated dependencies [251e888]
|
|
400
|
+
- Updated dependencies [183b4c4]
|
|
401
|
+
- Updated dependencies [2fdb36e]
|
|
402
|
+
- Updated dependencies [e787608]
|
|
403
|
+
- Updated dependencies [20526f5]
|
|
404
|
+
- Updated dependencies [c5eef1d]
|
|
405
|
+
- Updated dependencies [e0f300b]
|
|
406
|
+
- Updated dependencies [761a0ba]
|
|
407
|
+
- Updated dependencies [61282f9]
|
|
408
|
+
- Updated dependencies [be87153]
|
|
409
|
+
- Updated dependencies [60f0dd8]
|
|
410
|
+
- Updated dependencies [a87c5cd]
|
|
411
|
+
- Updated dependencies [a47f338]
|
|
412
|
+
- Updated dependencies [2598216]
|
|
413
|
+
- Updated dependencies [2c7e62d]
|
|
414
|
+
- Updated dependencies [eb7613c]
|
|
415
|
+
- Updated dependencies [ecc9110]
|
|
416
|
+
- Updated dependencies [f7bd4e2]
|
|
417
|
+
- Updated dependencies [361bd5b]
|
|
418
|
+
- Updated dependencies [129b378]
|
|
419
|
+
- Updated dependencies [88f9d94]
|
|
420
|
+
- Updated dependencies [1818998]
|
|
421
|
+
- Updated dependencies [3d4c545]
|
|
422
|
+
- Updated dependencies [bb7cb41]
|
|
423
|
+
- Updated dependencies [09ee21c]
|
|
424
|
+
- Updated dependencies [f549a0d]
|
|
425
|
+
- Updated dependencies [3fc2e48]
|
|
426
|
+
- Updated dependencies [e8f435c]
|
|
427
|
+
- Updated dependencies [41610f6]
|
|
428
|
+
- @objectstack/spec@17.0.0-rc.6
|
|
429
|
+
- @objectstack/platform-objects@17.0.0-rc.6
|
|
430
|
+
- @objectstack/formula@17.0.0-rc.6
|
|
431
|
+
- @objectstack/metadata-core@17.0.0-rc.6
|
|
432
|
+
- @objectstack/core@17.0.0-rc.6
|
|
433
|
+
- @objectstack/types@17.0.0-rc.6
|
|
434
|
+
|
|
3
435
|
## 17.0.0-rc.5
|
|
4
436
|
|
|
5
437
|
### Patch Changes
|