@objectstack/platform-objects 5.1.0 → 6.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/dist/apps/index.d.mts +4 -4
- package/dist/apps/index.d.ts +4 -4
- package/dist/apps/index.js +37 -15
- package/dist/apps/index.js.map +1 -1
- package/dist/apps/index.mjs +37 -15
- package/dist/apps/index.mjs.map +1 -1
- package/dist/audit/index.d.mts +230 -5
- package/dist/audit/index.d.ts +230 -5
- package/dist/audit/index.js +63 -8
- package/dist/audit/index.js.map +1 -1
- package/dist/audit/index.mjs +63 -8
- package/dist/audit/index.mjs.map +1 -1
- package/dist/index.js +126 -29
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +126 -29
- package/dist/index.mjs.map +1 -1
- package/dist/integration/index.d.mts +1 -1
- package/dist/integration/index.d.ts +1 -1
- package/dist/integration/index.js.map +1 -1
- package/dist/integration/index.mjs.map +1 -1
- package/dist/metadata/index.d.mts +3 -3
- package/dist/metadata/index.d.ts +3 -3
- package/dist/metadata/index.js +4 -4
- package/dist/metadata/index.js.map +1 -1
- package/dist/metadata/index.mjs +4 -4
- package/dist/metadata/index.mjs.map +1 -1
- package/dist/security/index.js +22 -2
- package/dist/security/index.js.map +1 -1
- package/dist/security/index.mjs +22 -2
- package/dist/security/index.mjs.map +1 -1
- package/package.json +2 -2
package/dist/audit/index.js
CHANGED
|
@@ -383,12 +383,12 @@ var SysActivity = data.ObjectSchema.create({
|
|
|
383
383
|
group: "Target"
|
|
384
384
|
}),
|
|
385
385
|
// ── Context ──────────────────────────────────────────────────
|
|
386
|
-
|
|
387
|
-
label: "
|
|
386
|
+
environment_id: data.Field.lookup("sys_environment", {
|
|
387
|
+
label: "Environment",
|
|
388
388
|
required: false,
|
|
389
389
|
readonly: true,
|
|
390
390
|
searchable: true,
|
|
391
|
-
description: "
|
|
391
|
+
description: "Environment context (multi-environment deployments)",
|
|
392
392
|
group: "Context"
|
|
393
393
|
}),
|
|
394
394
|
metadata: data.Field.textarea({
|
|
@@ -404,7 +404,7 @@ var SysActivity = data.ObjectSchema.create({
|
|
|
404
404
|
{ fields: ["actor_id"] },
|
|
405
405
|
{ fields: ["object_name", "record_id"] },
|
|
406
406
|
{ fields: ["type"] },
|
|
407
|
-
{ fields: ["
|
|
407
|
+
{ fields: ["environment_id"] }
|
|
408
408
|
],
|
|
409
409
|
enable: {
|
|
410
410
|
trackHistory: false,
|
|
@@ -666,13 +666,56 @@ var SysNotification = data.ObjectSchema.create({
|
|
|
666
666
|
displayNameField: "title",
|
|
667
667
|
titleFormat: "{title}",
|
|
668
668
|
compactLayout: ["title", "type", "is_read", "created_at"],
|
|
669
|
+
/**
|
|
670
|
+
* Row-level inbox actions. Use `visible` CEL expressions to ensure
|
|
671
|
+
* `mark_read` only shows on unread rows and vice-versa, mirroring the
|
|
672
|
+
* mark-as-read affordances in GitHub / Linear inboxes. The toolbar-level
|
|
673
|
+
* `mark_all_read` is intentionally omitted server-side: it requires a
|
|
674
|
+
* bulk update primitive that doesn't yet exist on the REST surface, and
|
|
675
|
+
* the popover already handles the multi-row case client-side via N
|
|
676
|
+
* single-row PATCHes (see `InboxPopover.tsx` -> AppHeader `markAllRead`).
|
|
677
|
+
*/
|
|
678
|
+
actions: [
|
|
679
|
+
{
|
|
680
|
+
name: "mark_read",
|
|
681
|
+
label: "Mark as Read",
|
|
682
|
+
icon: "check",
|
|
683
|
+
variant: "secondary",
|
|
684
|
+
mode: "custom",
|
|
685
|
+
locations: ["list_item"],
|
|
686
|
+
type: "api",
|
|
687
|
+
method: "PATCH",
|
|
688
|
+
target: "/api/v1/data/sys_notification/{id}",
|
|
689
|
+
bodyExtra: { is_read: true },
|
|
690
|
+
visible: "!record.is_read",
|
|
691
|
+
successMessage: "Notification marked as read",
|
|
692
|
+
refreshAfter: true
|
|
693
|
+
},
|
|
694
|
+
{
|
|
695
|
+
name: "mark_unread",
|
|
696
|
+
label: "Mark as Unread",
|
|
697
|
+
icon: "bell-dot",
|
|
698
|
+
variant: "secondary",
|
|
699
|
+
mode: "custom",
|
|
700
|
+
locations: ["list_item"],
|
|
701
|
+
type: "api",
|
|
702
|
+
method: "PATCH",
|
|
703
|
+
target: "/api/v1/data/sys_notification/{id}",
|
|
704
|
+
bodyExtra: { is_read: false, read_at: null },
|
|
705
|
+
visible: "record.is_read",
|
|
706
|
+
successMessage: "Notification marked as unread",
|
|
707
|
+
refreshAfter: true
|
|
708
|
+
}
|
|
709
|
+
],
|
|
669
710
|
listViews: {
|
|
670
711
|
unread: {
|
|
671
712
|
type: "grid",
|
|
672
713
|
name: "unread",
|
|
673
714
|
label: "Unread",
|
|
674
715
|
data: { provider: "object", object: "sys_notification" },
|
|
675
|
-
|
|
716
|
+
// Title + actor first (the "who/what" the user actually scans);
|
|
717
|
+
// type stays as a categorising chip; created_at right-aligned.
|
|
718
|
+
columns: ["title", "actor_name", "type", "created_at"],
|
|
676
719
|
filter: [
|
|
677
720
|
{ field: "recipient_id", operator: "equals", value: "{current_user_id}" },
|
|
678
721
|
{ field: "is_read", operator: "equals", value: false }
|
|
@@ -686,17 +729,21 @@ var SysNotification = data.ObjectSchema.create({
|
|
|
686
729
|
name: "mine",
|
|
687
730
|
label: "Mine",
|
|
688
731
|
data: { provider: "object", object: "sys_notification" },
|
|
689
|
-
columns: ["
|
|
732
|
+
columns: ["title", "actor_name", "type", "is_read", "created_at"],
|
|
690
733
|
filter: [{ field: "recipient_id", operator: "equals", value: "{current_user_id}" }],
|
|
691
734
|
sort: [{ field: "created_at", order: "desc" }],
|
|
692
|
-
pagination: { pageSize: 50 }
|
|
735
|
+
pagination: { pageSize: 50 },
|
|
736
|
+
// Group by notification category so mention/assignment storms don't
|
|
737
|
+
// hide system or task_due rows. Users still toggle to flat via the
|
|
738
|
+
// toolbar Group control if they prefer chronology only.
|
|
739
|
+
grouping: { fields: [{ field: "type", order: "asc", collapsed: false }] }
|
|
693
740
|
},
|
|
694
741
|
all_notifications: {
|
|
695
742
|
type: "grid",
|
|
696
743
|
name: "all_notifications",
|
|
697
744
|
label: "All",
|
|
698
745
|
data: { provider: "object", object: "sys_notification" },
|
|
699
|
-
columns: ["
|
|
746
|
+
columns: ["title", "recipient_id", "actor_name", "type", "is_read", "created_at"],
|
|
700
747
|
sort: [{ field: "created_at", order: "desc" }],
|
|
701
748
|
pagination: { pageSize: 100 }
|
|
702
749
|
}
|
|
@@ -1549,6 +1596,14 @@ var SysApprovalRequest = data.ObjectSchema.create({
|
|
|
1549
1596
|
description: "Record snapshot at submission time",
|
|
1550
1597
|
group: "State"
|
|
1551
1598
|
}),
|
|
1599
|
+
process_hash: data.Field.text({
|
|
1600
|
+
label: "Process Hash",
|
|
1601
|
+
required: false,
|
|
1602
|
+
maxLength: 80,
|
|
1603
|
+
readonly: true,
|
|
1604
|
+
description: "sha256 of the approval process body at submit time (ADR-0009 execution pinning). Resolved through sys_metadata_history so process upgrades do not affect in-flight requests.",
|
|
1605
|
+
group: "State"
|
|
1606
|
+
}),
|
|
1552
1607
|
completed_at: data.Field.datetime({
|
|
1553
1608
|
label: "Completed At",
|
|
1554
1609
|
required: false,
|