@object-ui/fields 13.1.0 → 14.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +97 -0
- package/dist/index.cjs +4 -4
- package/dist/index.d.ts +4 -0
- package/dist/index.js +1776 -1194
- package/dist/widgets/CapabilityMultiSelectField.d.ts +11 -0
- package/dist/widgets/CapabilityMultiSelectField.test.d.ts +0 -0
- package/dist/widgets/FilterConditionField.d.ts +4 -0
- package/dist/widgets/ObjectRefField.d.ts +4 -0
- package/dist/widgets/RecipientPickerField.d.ts +4 -0
- package/package.json +9 -9
- package/src/FieldEditWidget.tsx +3 -0
- package/src/index.tsx +26 -0
- package/src/widgets/CapabilityMultiSelectField.test.tsx +143 -0
- package/src/widgets/CapabilityMultiSelectField.tsx +204 -0
- package/src/widgets/FilterConditionField.tsx +343 -0
- package/src/widgets/ObjectRefField.tsx +106 -0
- package/src/widgets/RecipientPickerField.tsx +150 -0
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,102 @@
|
|
|
1
1
|
# @object-ui/fields
|
|
2
2
|
|
|
3
|
+
## 14.0.0
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- 6a74160: Sharing-rule form: pick, don't type. Three new widget-hint field components make
|
|
8
|
+
the generic object form render pickers where an admin previously had to type
|
|
9
|
+
machine data (driven by the framework `widget` hints on `sys_sharing_rule`;
|
|
10
|
+
generalizes the `capability-multiselect` pattern). All degrade to the underlying
|
|
11
|
+
`type` renderer when a widget is unregistered.
|
|
12
|
+
|
|
13
|
+
- **`object-ref`** — choose a registered object by name (searchable `Combobox`),
|
|
14
|
+
backed by the new `DataSource.getObjects()` (`ObjectStackAdapter` lists code-
|
|
15
|
+
and DB-defined objects via `/api/v1/meta/object`), falling back to a
|
|
16
|
+
`sys_metadata` query. Stores the object's `name`.
|
|
17
|
+
- **`filter-condition`** — a visual criteria builder (`FilterBuilder`) scoped to
|
|
18
|
+
the fields of the object chosen in a sibling field (via `getObjectSchema`),
|
|
19
|
+
round-tripping the stored **MongoDB-style** FilterCondition JSON. Criteria the
|
|
20
|
+
builder can't represent (or invalid JSON) fall back to a raw-JSON editor, with
|
|
21
|
+
an always-available "Edit as JSON" toggle — nothing is hidden or lost.
|
|
22
|
+
- **`recipient-picker`** — a record picker whose target object follows a sibling
|
|
23
|
+
`recipient_type` (`user`→sys_user, `team`→sys_team, `business_unit`/
|
|
24
|
+
`unit_and_subordinates`→sys_business_unit, `position`→sys_position), storing the
|
|
25
|
+
value the evaluator matches on (a record id, or the position **name**). Resets
|
|
26
|
+
the stored id when the type changes.
|
|
27
|
+
|
|
28
|
+
Wiring: the three keys join `DATA_SOURCE_FIELD_TYPES` (form.tsx) so the form
|
|
29
|
+
threads `dataSource` + `dependentValues` to them, and `INLINE_EXCLUDED_FIELD_TYPES`
|
|
30
|
+
(they're authored in the record form, not a grid cell). `DataSource.getObjects()`
|
|
31
|
+
is optional on the interface; the ObjectStack adapter implements it.
|
|
32
|
+
|
|
33
|
+
### Patch Changes
|
|
34
|
+
|
|
35
|
+
- Updated dependencies [443360a]
|
|
36
|
+
- Updated dependencies [c70bca7]
|
|
37
|
+
- Updated dependencies [86c69c3]
|
|
38
|
+
- Updated dependencies [05e56ca]
|
|
39
|
+
- Updated dependencies [a44e7b6]
|
|
40
|
+
- Updated dependencies [5971cc4]
|
|
41
|
+
- Updated dependencies [6a74160]
|
|
42
|
+
- @object-ui/core@14.0.0
|
|
43
|
+
- @object-ui/i18n@14.0.0
|
|
44
|
+
- @object-ui/react@14.0.0
|
|
45
|
+
- @object-ui/types@14.0.0
|
|
46
|
+
- @object-ui/components@14.0.0
|
|
47
|
+
- @object-ui/providers@14.0.0
|
|
48
|
+
|
|
49
|
+
## 13.2.0
|
|
50
|
+
|
|
51
|
+
### Patch Changes
|
|
52
|
+
|
|
53
|
+
- e492b9d: Permission sets — pure separation of **design** (Studio) and **assignment**
|
|
54
|
+
(Setup), per ADR-0056 / epic #2398. A `sys_permission_set` used to render its six
|
|
55
|
+
authorization facets in Setup as raw `[Object]` / JSON textareas, and only
|
|
56
|
+
objects+fields were editable in Studio; this reworks both surfaces.
|
|
57
|
+
|
|
58
|
+
**Setup (assign + read-only):**
|
|
59
|
+
- The six facets (`object_permissions`, `field_permissions`, `system_permissions`,
|
|
60
|
+
`row_level_security`, `tab_permissions`, `admin_scope`) now render read-only on
|
|
61
|
+
the `sys_permission_set` record page as a compact summary (counts, or capability
|
|
62
|
+
chips) plus a **“Design in Studio →”** deep-link into the structured editor
|
|
63
|
+
(`/apps/:appName/metadata/permission/:setName`, env scope). No `[Object]`, no
|
|
64
|
+
JSON — in the record view, inline edit, and the create/edit form. Implemented as
|
|
65
|
+
a `permission-facet-link` field widget stamped onto the six fields via the single
|
|
66
|
+
`ObjectStackAdapter.getObjectSchema` choke point and honored by DetailSection +
|
|
67
|
+
the record form.
|
|
68
|
+
- User assignment (add/remove via `sys_user_permission_set`) is surfaced directly
|
|
69
|
+
on the Setup record page.
|
|
70
|
+
|
|
71
|
+
**Studio (design every facet):** the permission matrix editor gains structured
|
|
72
|
+
editors for the facets that were JSON-only —
|
|
73
|
+
- **System Capabilities**: a multi-select over the live `sys_capability` registry
|
|
74
|
+
(scope-grouped, labelled chips).
|
|
75
|
+
- **Row-Level Security**: per-policy rows (object · operation · enabled) with CEL
|
|
76
|
+
USING/CHECK.
|
|
77
|
+
- **Tab Visibility**: per-tab `visible | hidden | default_on | default_off`.
|
|
78
|
+
- **Delegated Admin Scope**: business-unit + subtree, manage-assignments /
|
|
79
|
+
-bindings / author-env-sets toggles, and an assignable-permission-sets allowlist.
|
|
80
|
+
Assignment was moved out of the editor (it is now a Setup act) — the editor is
|
|
81
|
+
purely a design surface.
|
|
82
|
+
|
|
83
|
+
Storage/types are unchanged; editors read/write the draft’s existing parsed
|
|
84
|
+
fields and tolerate legacy JSON strings on load. Note: env-scope metadata saves of
|
|
85
|
+
these facets do not yet project onto the queryable `sys_permission_set` data
|
|
86
|
+
record the Setup summary reads, so a fresh Studio edit isn’t reflected in Setup’s
|
|
87
|
+
read-only view until the projection refreshes — tracked as a framework follow-up
|
|
88
|
+
(enforcement reads the authoritative metadata).
|
|
89
|
+
|
|
90
|
+
- Updated dependencies [80901aa]
|
|
91
|
+
- Updated dependencies [53c40c2]
|
|
92
|
+
- Updated dependencies [e492b9d]
|
|
93
|
+
- @object-ui/components@13.2.0
|
|
94
|
+
- @object-ui/i18n@13.2.0
|
|
95
|
+
- @object-ui/react@13.2.0
|
|
96
|
+
- @object-ui/types@13.2.0
|
|
97
|
+
- @object-ui/core@13.2.0
|
|
98
|
+
- @object-ui/providers@13.2.0
|
|
99
|
+
|
|
3
100
|
## 13.1.0
|
|
4
101
|
|
|
5
102
|
### Patch Changes
|