@objectstack/platform-objects 6.7.1 → 6.8.1
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 +28 -1
- package/dist/apps/index.d.ts +28 -1
- package/dist/apps/index.js +304 -6
- package/dist/apps/index.js.map +1 -1
- package/dist/apps/index.mjs +304 -7
- package/dist/apps/index.mjs.map +1 -1
- package/dist/audit/index.d.mts +96 -32
- package/dist/audit/index.d.ts +96 -32
- package/dist/identity/index.d.mts +121 -40
- package/dist/identity/index.d.ts +121 -40
- package/dist/identity/index.js +6 -0
- package/dist/identity/index.js.map +1 -1
- package/dist/identity/index.mjs +6 -0
- package/dist/identity/index.mjs.map +1 -1
- package/dist/index.d.mts +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +349 -7
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +349 -8
- package/dist/index.mjs.map +1 -1
- package/dist/integration/index.d.mts +6 -2
- package/dist/integration/index.d.ts +6 -2
- package/dist/metadata/index.d.mts +75 -4
- package/dist/metadata/index.d.ts +75 -4
- package/dist/metadata/index.js +38 -0
- package/dist/metadata/index.js.map +1 -1
- package/dist/metadata/index.mjs +38 -0
- package/dist/metadata/index.mjs.map +1 -1
- package/dist/security/index.d.mts +36 -12
- package/dist/security/index.d.ts +36 -12
- package/dist/security/index.js +1 -1
- package/dist/security/index.js.map +1 -1
- package/dist/security/index.mjs +1 -1
- package/dist/security/index.mjs.map +1 -1
- package/dist/system/index.d.mts +18 -6
- package/dist/system/index.d.ts +18 -6
- package/package.json +2 -2
|
@@ -32,7 +32,7 @@ declare const SysWebhook: Omit<{
|
|
|
32
32
|
abstract: boolean;
|
|
33
33
|
datasource: string;
|
|
34
34
|
fields: Record<string, {
|
|
35
|
-
type: "number" | "boolean" | "tags" | "date" | "file" | "code" | "datetime" | "signature" | "progress" | "url" | "text" | "textarea" | "email" | "phone" | "password" | "markdown" | "html" | "richtext" | "currency" | "percent" | "time" | "toggle" | "select" | "multiselect" | "radio" | "checkboxes" | "lookup" | "master_detail" | "tree" | "image" | "avatar" | "video" | "audio" | "formula" | "summary" | "autonumber" | "location" | "address" | "json" | "color" | "rating" | "slider" | "qrcode" | "vector";
|
|
35
|
+
type: "number" | "boolean" | "tags" | "date" | "file" | "code" | "datetime" | "signature" | "progress" | "url" | "text" | "textarea" | "email" | "phone" | "password" | "markdown" | "html" | "richtext" | "currency" | "percent" | "time" | "toggle" | "select" | "multiselect" | "radio" | "checkboxes" | "lookup" | "master_detail" | "tree" | "image" | "avatar" | "video" | "audio" | "formula" | "summary" | "autonumber" | "composite" | "repeater" | "location" | "address" | "json" | "color" | "rating" | "slider" | "qrcode" | "vector";
|
|
36
36
|
required: boolean;
|
|
37
37
|
searchable: boolean;
|
|
38
38
|
multiple: boolean;
|
|
@@ -395,6 +395,10 @@ declare const SysWebhook: Omit<{
|
|
|
395
395
|
} | {
|
|
396
396
|
provider: "value";
|
|
397
397
|
items: unknown[];
|
|
398
|
+
} | {
|
|
399
|
+
provider: "schema";
|
|
400
|
+
schemaId: string;
|
|
401
|
+
schema?: Record<string, unknown> | undefined;
|
|
398
402
|
} | undefined;
|
|
399
403
|
filter?: {
|
|
400
404
|
field: string;
|
|
@@ -642,7 +646,7 @@ declare const SysWebhook: Omit<{
|
|
|
642
646
|
field?: string | undefined;
|
|
643
647
|
objectOverride?: string | undefined;
|
|
644
648
|
label?: string | undefined;
|
|
645
|
-
type?: "number" | "boolean" | "date" | "file" | "code" | "datetime" | "signature" | "progress" | "url" | "text" | "textarea" | "email" | "phone" | "password" | "markdown" | "html" | "richtext" | "currency" | "percent" | "time" | "toggle" | "select" | "multiselect" | "radio" | "checkboxes" | "lookup" | "master_detail" | "tree" | "image" | "avatar" | "video" | "audio" | "formula" | "summary" | "autonumber" | "location" | "address" | "json" | "color" | "rating" | "slider" | "qrcode" | "tags" | "vector" | undefined;
|
|
649
|
+
type?: "number" | "boolean" | "date" | "file" | "code" | "datetime" | "signature" | "progress" | "url" | "text" | "textarea" | "email" | "phone" | "password" | "markdown" | "html" | "richtext" | "currency" | "percent" | "time" | "toggle" | "select" | "multiselect" | "radio" | "checkboxes" | "lookup" | "master_detail" | "tree" | "image" | "avatar" | "video" | "audio" | "formula" | "summary" | "autonumber" | "composite" | "repeater" | "location" | "address" | "json" | "color" | "rating" | "slider" | "qrcode" | "tags" | "vector" | undefined;
|
|
646
650
|
options?: {
|
|
647
651
|
label: string;
|
|
648
652
|
value: string;
|
|
@@ -32,7 +32,7 @@ declare const SysWebhook: Omit<{
|
|
|
32
32
|
abstract: boolean;
|
|
33
33
|
datasource: string;
|
|
34
34
|
fields: Record<string, {
|
|
35
|
-
type: "number" | "boolean" | "tags" | "date" | "file" | "code" | "datetime" | "signature" | "progress" | "url" | "text" | "textarea" | "email" | "phone" | "password" | "markdown" | "html" | "richtext" | "currency" | "percent" | "time" | "toggle" | "select" | "multiselect" | "radio" | "checkboxes" | "lookup" | "master_detail" | "tree" | "image" | "avatar" | "video" | "audio" | "formula" | "summary" | "autonumber" | "location" | "address" | "json" | "color" | "rating" | "slider" | "qrcode" | "vector";
|
|
35
|
+
type: "number" | "boolean" | "tags" | "date" | "file" | "code" | "datetime" | "signature" | "progress" | "url" | "text" | "textarea" | "email" | "phone" | "password" | "markdown" | "html" | "richtext" | "currency" | "percent" | "time" | "toggle" | "select" | "multiselect" | "radio" | "checkboxes" | "lookup" | "master_detail" | "tree" | "image" | "avatar" | "video" | "audio" | "formula" | "summary" | "autonumber" | "composite" | "repeater" | "location" | "address" | "json" | "color" | "rating" | "slider" | "qrcode" | "vector";
|
|
36
36
|
required: boolean;
|
|
37
37
|
searchable: boolean;
|
|
38
38
|
multiple: boolean;
|
|
@@ -395,6 +395,10 @@ declare const SysWebhook: Omit<{
|
|
|
395
395
|
} | {
|
|
396
396
|
provider: "value";
|
|
397
397
|
items: unknown[];
|
|
398
|
+
} | {
|
|
399
|
+
provider: "schema";
|
|
400
|
+
schemaId: string;
|
|
401
|
+
schema?: Record<string, unknown> | undefined;
|
|
398
402
|
} | undefined;
|
|
399
403
|
filter?: {
|
|
400
404
|
field: string;
|
|
@@ -642,7 +646,7 @@ declare const SysWebhook: Omit<{
|
|
|
642
646
|
field?: string | undefined;
|
|
643
647
|
objectOverride?: string | undefined;
|
|
644
648
|
label?: string | undefined;
|
|
645
|
-
type?: "number" | "boolean" | "date" | "file" | "code" | "datetime" | "signature" | "progress" | "url" | "text" | "textarea" | "email" | "phone" | "password" | "markdown" | "html" | "richtext" | "currency" | "percent" | "time" | "toggle" | "select" | "multiselect" | "radio" | "checkboxes" | "lookup" | "master_detail" | "tree" | "image" | "avatar" | "video" | "audio" | "formula" | "summary" | "autonumber" | "location" | "address" | "json" | "color" | "rating" | "slider" | "qrcode" | "tags" | "vector" | undefined;
|
|
649
|
+
type?: "number" | "boolean" | "date" | "file" | "code" | "datetime" | "signature" | "progress" | "url" | "text" | "textarea" | "email" | "phone" | "password" | "markdown" | "html" | "richtext" | "currency" | "percent" | "time" | "toggle" | "select" | "multiselect" | "radio" | "checkboxes" | "lookup" | "master_detail" | "tree" | "image" | "avatar" | "video" | "audio" | "formula" | "summary" | "autonumber" | "composite" | "repeater" | "location" | "address" | "json" | "color" | "rating" | "slider" | "qrcode" | "tags" | "vector" | undefined;
|
|
646
650
|
options?: {
|
|
647
651
|
label: string;
|
|
648
652
|
value: string;
|
|
@@ -21,7 +21,7 @@ declare const SysMetadataObject: Omit<{
|
|
|
21
21
|
abstract: boolean;
|
|
22
22
|
datasource: string;
|
|
23
23
|
fields: Record<string, {
|
|
24
|
-
type: "number" | "boolean" | "tags" | "date" | "file" | "code" | "datetime" | "signature" | "progress" | "url" | "text" | "textarea" | "email" | "phone" | "password" | "markdown" | "html" | "richtext" | "currency" | "percent" | "time" | "toggle" | "select" | "multiselect" | "radio" | "checkboxes" | "lookup" | "master_detail" | "tree" | "image" | "avatar" | "video" | "audio" | "formula" | "summary" | "autonumber" | "location" | "address" | "json" | "color" | "rating" | "slider" | "qrcode" | "vector";
|
|
24
|
+
type: "number" | "boolean" | "tags" | "date" | "file" | "code" | "datetime" | "signature" | "progress" | "url" | "text" | "textarea" | "email" | "phone" | "password" | "markdown" | "html" | "richtext" | "currency" | "percent" | "time" | "toggle" | "select" | "multiselect" | "radio" | "checkboxes" | "lookup" | "master_detail" | "tree" | "image" | "avatar" | "video" | "audio" | "formula" | "summary" | "autonumber" | "composite" | "repeater" | "location" | "address" | "json" | "color" | "rating" | "slider" | "qrcode" | "vector";
|
|
25
25
|
required: boolean;
|
|
26
26
|
searchable: boolean;
|
|
27
27
|
multiple: boolean;
|
|
@@ -384,6 +384,10 @@ declare const SysMetadataObject: Omit<{
|
|
|
384
384
|
} | {
|
|
385
385
|
provider: "value";
|
|
386
386
|
items: unknown[];
|
|
387
|
+
} | {
|
|
388
|
+
provider: "schema";
|
|
389
|
+
schemaId: string;
|
|
390
|
+
schema?: Record<string, unknown> | undefined;
|
|
387
391
|
} | undefined;
|
|
388
392
|
filter?: {
|
|
389
393
|
field: string;
|
|
@@ -631,7 +635,7 @@ declare const SysMetadataObject: Omit<{
|
|
|
631
635
|
field?: string | undefined;
|
|
632
636
|
objectOverride?: string | undefined;
|
|
633
637
|
label?: string | undefined;
|
|
634
|
-
type?: "number" | "boolean" | "date" | "file" | "code" | "datetime" | "signature" | "progress" | "url" | "text" | "textarea" | "email" | "phone" | "password" | "markdown" | "html" | "richtext" | "currency" | "percent" | "time" | "toggle" | "select" | "multiselect" | "radio" | "checkboxes" | "lookup" | "master_detail" | "tree" | "image" | "avatar" | "video" | "audio" | "formula" | "summary" | "autonumber" | "location" | "address" | "json" | "color" | "rating" | "slider" | "qrcode" | "tags" | "vector" | undefined;
|
|
638
|
+
type?: "number" | "boolean" | "date" | "file" | "code" | "datetime" | "signature" | "progress" | "url" | "text" | "textarea" | "email" | "phone" | "password" | "markdown" | "html" | "richtext" | "currency" | "percent" | "time" | "toggle" | "select" | "multiselect" | "radio" | "checkboxes" | "lookup" | "master_detail" | "tree" | "image" | "avatar" | "video" | "audio" | "formula" | "summary" | "autonumber" | "composite" | "repeater" | "location" | "address" | "json" | "color" | "rating" | "slider" | "qrcode" | "tags" | "vector" | undefined;
|
|
635
639
|
options?: {
|
|
636
640
|
label: string;
|
|
637
641
|
value: string;
|
|
@@ -4767,6 +4771,69 @@ declare const SysMetadataObject: Omit<{
|
|
|
4767
4771
|
readonly apiMethods: ["get", "list", "create", "update", "delete"];
|
|
4768
4772
|
readonly trash: false;
|
|
4769
4773
|
};
|
|
4774
|
+
readonly listViews: {
|
|
4775
|
+
readonly only_objects: {
|
|
4776
|
+
readonly type: "grid";
|
|
4777
|
+
readonly name: "only_objects";
|
|
4778
|
+
readonly label: "Objects";
|
|
4779
|
+
readonly data: {
|
|
4780
|
+
readonly provider: "object";
|
|
4781
|
+
readonly object: "sys_metadata";
|
|
4782
|
+
};
|
|
4783
|
+
readonly columns: ["name", "namespace", "scope", "managed_by", "state", "updated_at"];
|
|
4784
|
+
readonly filter: [{
|
|
4785
|
+
readonly field: "type";
|
|
4786
|
+
readonly operator: "equals";
|
|
4787
|
+
readonly value: "object";
|
|
4788
|
+
}];
|
|
4789
|
+
readonly sort: [{
|
|
4790
|
+
readonly field: "name";
|
|
4791
|
+
readonly order: "asc";
|
|
4792
|
+
}];
|
|
4793
|
+
readonly pagination: {
|
|
4794
|
+
readonly pageSize: 50;
|
|
4795
|
+
};
|
|
4796
|
+
};
|
|
4797
|
+
readonly only_fields: {
|
|
4798
|
+
readonly type: "grid";
|
|
4799
|
+
readonly name: "only_fields";
|
|
4800
|
+
readonly label: "Fields";
|
|
4801
|
+
readonly data: {
|
|
4802
|
+
readonly provider: "object";
|
|
4803
|
+
readonly object: "sys_metadata";
|
|
4804
|
+
};
|
|
4805
|
+
readonly columns: ["name", "namespace", "scope", "managed_by", "state", "updated_at"];
|
|
4806
|
+
readonly filter: [{
|
|
4807
|
+
readonly field: "type";
|
|
4808
|
+
readonly operator: "equals";
|
|
4809
|
+
readonly value: "field";
|
|
4810
|
+
}];
|
|
4811
|
+
readonly sort: [{
|
|
4812
|
+
readonly field: "name";
|
|
4813
|
+
readonly order: "asc";
|
|
4814
|
+
}];
|
|
4815
|
+
readonly pagination: {
|
|
4816
|
+
readonly pageSize: 50;
|
|
4817
|
+
};
|
|
4818
|
+
};
|
|
4819
|
+
readonly all_metadata: {
|
|
4820
|
+
readonly type: "grid";
|
|
4821
|
+
readonly name: "all_metadata";
|
|
4822
|
+
readonly label: "All";
|
|
4823
|
+
readonly data: {
|
|
4824
|
+
readonly provider: "object";
|
|
4825
|
+
readonly object: "sys_metadata";
|
|
4826
|
+
};
|
|
4827
|
+
readonly columns: ["name", "type", "namespace", "scope", "state", "updated_at"];
|
|
4828
|
+
readonly sort: [{
|
|
4829
|
+
readonly field: "updated_at";
|
|
4830
|
+
readonly order: "desc";
|
|
4831
|
+
}];
|
|
4832
|
+
readonly pagination: {
|
|
4833
|
+
readonly pageSize: 50;
|
|
4834
|
+
};
|
|
4835
|
+
};
|
|
4836
|
+
};
|
|
4770
4837
|
}, "fields">;
|
|
4771
4838
|
|
|
4772
4839
|
/**
|
|
@@ -4814,7 +4881,7 @@ declare const SysMetadataHistoryObject: Omit<{
|
|
|
4814
4881
|
abstract: boolean;
|
|
4815
4882
|
datasource: string;
|
|
4816
4883
|
fields: Record<string, {
|
|
4817
|
-
type: "number" | "boolean" | "tags" | "date" | "file" | "code" | "datetime" | "signature" | "progress" | "url" | "text" | "textarea" | "email" | "phone" | "password" | "markdown" | "html" | "richtext" | "currency" | "percent" | "time" | "toggle" | "select" | "multiselect" | "radio" | "checkboxes" | "lookup" | "master_detail" | "tree" | "image" | "avatar" | "video" | "audio" | "formula" | "summary" | "autonumber" | "location" | "address" | "json" | "color" | "rating" | "slider" | "qrcode" | "vector";
|
|
4884
|
+
type: "number" | "boolean" | "tags" | "date" | "file" | "code" | "datetime" | "signature" | "progress" | "url" | "text" | "textarea" | "email" | "phone" | "password" | "markdown" | "html" | "richtext" | "currency" | "percent" | "time" | "toggle" | "select" | "multiselect" | "radio" | "checkboxes" | "lookup" | "master_detail" | "tree" | "image" | "avatar" | "video" | "audio" | "formula" | "summary" | "autonumber" | "composite" | "repeater" | "location" | "address" | "json" | "color" | "rating" | "slider" | "qrcode" | "vector";
|
|
4818
4885
|
required: boolean;
|
|
4819
4886
|
searchable: boolean;
|
|
4820
4887
|
multiple: boolean;
|
|
@@ -5177,6 +5244,10 @@ declare const SysMetadataHistoryObject: Omit<{
|
|
|
5177
5244
|
} | {
|
|
5178
5245
|
provider: "value";
|
|
5179
5246
|
items: unknown[];
|
|
5247
|
+
} | {
|
|
5248
|
+
provider: "schema";
|
|
5249
|
+
schemaId: string;
|
|
5250
|
+
schema?: Record<string, unknown> | undefined;
|
|
5180
5251
|
} | undefined;
|
|
5181
5252
|
filter?: {
|
|
5182
5253
|
field: string;
|
|
@@ -5424,7 +5495,7 @@ declare const SysMetadataHistoryObject: Omit<{
|
|
|
5424
5495
|
field?: string | undefined;
|
|
5425
5496
|
objectOverride?: string | undefined;
|
|
5426
5497
|
label?: string | undefined;
|
|
5427
|
-
type?: "number" | "boolean" | "date" | "file" | "code" | "datetime" | "signature" | "progress" | "url" | "text" | "textarea" | "email" | "phone" | "password" | "markdown" | "html" | "richtext" | "currency" | "percent" | "time" | "toggle" | "select" | "multiselect" | "radio" | "checkboxes" | "lookup" | "master_detail" | "tree" | "image" | "avatar" | "video" | "audio" | "formula" | "summary" | "autonumber" | "location" | "address" | "json" | "color" | "rating" | "slider" | "qrcode" | "tags" | "vector" | undefined;
|
|
5498
|
+
type?: "number" | "boolean" | "date" | "file" | "code" | "datetime" | "signature" | "progress" | "url" | "text" | "textarea" | "email" | "phone" | "password" | "markdown" | "html" | "richtext" | "currency" | "percent" | "time" | "toggle" | "select" | "multiselect" | "radio" | "checkboxes" | "lookup" | "master_detail" | "tree" | "image" | "avatar" | "video" | "audio" | "formula" | "summary" | "autonumber" | "composite" | "repeater" | "location" | "address" | "json" | "color" | "rating" | "slider" | "qrcode" | "tags" | "vector" | undefined;
|
|
5428
5499
|
options?: {
|
|
5429
5500
|
label: string;
|
|
5430
5501
|
value: string;
|
package/dist/metadata/index.d.ts
CHANGED
|
@@ -21,7 +21,7 @@ declare const SysMetadataObject: Omit<{
|
|
|
21
21
|
abstract: boolean;
|
|
22
22
|
datasource: string;
|
|
23
23
|
fields: Record<string, {
|
|
24
|
-
type: "number" | "boolean" | "tags" | "date" | "file" | "code" | "datetime" | "signature" | "progress" | "url" | "text" | "textarea" | "email" | "phone" | "password" | "markdown" | "html" | "richtext" | "currency" | "percent" | "time" | "toggle" | "select" | "multiselect" | "radio" | "checkboxes" | "lookup" | "master_detail" | "tree" | "image" | "avatar" | "video" | "audio" | "formula" | "summary" | "autonumber" | "location" | "address" | "json" | "color" | "rating" | "slider" | "qrcode" | "vector";
|
|
24
|
+
type: "number" | "boolean" | "tags" | "date" | "file" | "code" | "datetime" | "signature" | "progress" | "url" | "text" | "textarea" | "email" | "phone" | "password" | "markdown" | "html" | "richtext" | "currency" | "percent" | "time" | "toggle" | "select" | "multiselect" | "radio" | "checkboxes" | "lookup" | "master_detail" | "tree" | "image" | "avatar" | "video" | "audio" | "formula" | "summary" | "autonumber" | "composite" | "repeater" | "location" | "address" | "json" | "color" | "rating" | "slider" | "qrcode" | "vector";
|
|
25
25
|
required: boolean;
|
|
26
26
|
searchable: boolean;
|
|
27
27
|
multiple: boolean;
|
|
@@ -384,6 +384,10 @@ declare const SysMetadataObject: Omit<{
|
|
|
384
384
|
} | {
|
|
385
385
|
provider: "value";
|
|
386
386
|
items: unknown[];
|
|
387
|
+
} | {
|
|
388
|
+
provider: "schema";
|
|
389
|
+
schemaId: string;
|
|
390
|
+
schema?: Record<string, unknown> | undefined;
|
|
387
391
|
} | undefined;
|
|
388
392
|
filter?: {
|
|
389
393
|
field: string;
|
|
@@ -631,7 +635,7 @@ declare const SysMetadataObject: Omit<{
|
|
|
631
635
|
field?: string | undefined;
|
|
632
636
|
objectOverride?: string | undefined;
|
|
633
637
|
label?: string | undefined;
|
|
634
|
-
type?: "number" | "boolean" | "date" | "file" | "code" | "datetime" | "signature" | "progress" | "url" | "text" | "textarea" | "email" | "phone" | "password" | "markdown" | "html" | "richtext" | "currency" | "percent" | "time" | "toggle" | "select" | "multiselect" | "radio" | "checkboxes" | "lookup" | "master_detail" | "tree" | "image" | "avatar" | "video" | "audio" | "formula" | "summary" | "autonumber" | "location" | "address" | "json" | "color" | "rating" | "slider" | "qrcode" | "tags" | "vector" | undefined;
|
|
638
|
+
type?: "number" | "boolean" | "date" | "file" | "code" | "datetime" | "signature" | "progress" | "url" | "text" | "textarea" | "email" | "phone" | "password" | "markdown" | "html" | "richtext" | "currency" | "percent" | "time" | "toggle" | "select" | "multiselect" | "radio" | "checkboxes" | "lookup" | "master_detail" | "tree" | "image" | "avatar" | "video" | "audio" | "formula" | "summary" | "autonumber" | "composite" | "repeater" | "location" | "address" | "json" | "color" | "rating" | "slider" | "qrcode" | "tags" | "vector" | undefined;
|
|
635
639
|
options?: {
|
|
636
640
|
label: string;
|
|
637
641
|
value: string;
|
|
@@ -4767,6 +4771,69 @@ declare const SysMetadataObject: Omit<{
|
|
|
4767
4771
|
readonly apiMethods: ["get", "list", "create", "update", "delete"];
|
|
4768
4772
|
readonly trash: false;
|
|
4769
4773
|
};
|
|
4774
|
+
readonly listViews: {
|
|
4775
|
+
readonly only_objects: {
|
|
4776
|
+
readonly type: "grid";
|
|
4777
|
+
readonly name: "only_objects";
|
|
4778
|
+
readonly label: "Objects";
|
|
4779
|
+
readonly data: {
|
|
4780
|
+
readonly provider: "object";
|
|
4781
|
+
readonly object: "sys_metadata";
|
|
4782
|
+
};
|
|
4783
|
+
readonly columns: ["name", "namespace", "scope", "managed_by", "state", "updated_at"];
|
|
4784
|
+
readonly filter: [{
|
|
4785
|
+
readonly field: "type";
|
|
4786
|
+
readonly operator: "equals";
|
|
4787
|
+
readonly value: "object";
|
|
4788
|
+
}];
|
|
4789
|
+
readonly sort: [{
|
|
4790
|
+
readonly field: "name";
|
|
4791
|
+
readonly order: "asc";
|
|
4792
|
+
}];
|
|
4793
|
+
readonly pagination: {
|
|
4794
|
+
readonly pageSize: 50;
|
|
4795
|
+
};
|
|
4796
|
+
};
|
|
4797
|
+
readonly only_fields: {
|
|
4798
|
+
readonly type: "grid";
|
|
4799
|
+
readonly name: "only_fields";
|
|
4800
|
+
readonly label: "Fields";
|
|
4801
|
+
readonly data: {
|
|
4802
|
+
readonly provider: "object";
|
|
4803
|
+
readonly object: "sys_metadata";
|
|
4804
|
+
};
|
|
4805
|
+
readonly columns: ["name", "namespace", "scope", "managed_by", "state", "updated_at"];
|
|
4806
|
+
readonly filter: [{
|
|
4807
|
+
readonly field: "type";
|
|
4808
|
+
readonly operator: "equals";
|
|
4809
|
+
readonly value: "field";
|
|
4810
|
+
}];
|
|
4811
|
+
readonly sort: [{
|
|
4812
|
+
readonly field: "name";
|
|
4813
|
+
readonly order: "asc";
|
|
4814
|
+
}];
|
|
4815
|
+
readonly pagination: {
|
|
4816
|
+
readonly pageSize: 50;
|
|
4817
|
+
};
|
|
4818
|
+
};
|
|
4819
|
+
readonly all_metadata: {
|
|
4820
|
+
readonly type: "grid";
|
|
4821
|
+
readonly name: "all_metadata";
|
|
4822
|
+
readonly label: "All";
|
|
4823
|
+
readonly data: {
|
|
4824
|
+
readonly provider: "object";
|
|
4825
|
+
readonly object: "sys_metadata";
|
|
4826
|
+
};
|
|
4827
|
+
readonly columns: ["name", "type", "namespace", "scope", "state", "updated_at"];
|
|
4828
|
+
readonly sort: [{
|
|
4829
|
+
readonly field: "updated_at";
|
|
4830
|
+
readonly order: "desc";
|
|
4831
|
+
}];
|
|
4832
|
+
readonly pagination: {
|
|
4833
|
+
readonly pageSize: 50;
|
|
4834
|
+
};
|
|
4835
|
+
};
|
|
4836
|
+
};
|
|
4770
4837
|
}, "fields">;
|
|
4771
4838
|
|
|
4772
4839
|
/**
|
|
@@ -4814,7 +4881,7 @@ declare const SysMetadataHistoryObject: Omit<{
|
|
|
4814
4881
|
abstract: boolean;
|
|
4815
4882
|
datasource: string;
|
|
4816
4883
|
fields: Record<string, {
|
|
4817
|
-
type: "number" | "boolean" | "tags" | "date" | "file" | "code" | "datetime" | "signature" | "progress" | "url" | "text" | "textarea" | "email" | "phone" | "password" | "markdown" | "html" | "richtext" | "currency" | "percent" | "time" | "toggle" | "select" | "multiselect" | "radio" | "checkboxes" | "lookup" | "master_detail" | "tree" | "image" | "avatar" | "video" | "audio" | "formula" | "summary" | "autonumber" | "location" | "address" | "json" | "color" | "rating" | "slider" | "qrcode" | "vector";
|
|
4884
|
+
type: "number" | "boolean" | "tags" | "date" | "file" | "code" | "datetime" | "signature" | "progress" | "url" | "text" | "textarea" | "email" | "phone" | "password" | "markdown" | "html" | "richtext" | "currency" | "percent" | "time" | "toggle" | "select" | "multiselect" | "radio" | "checkboxes" | "lookup" | "master_detail" | "tree" | "image" | "avatar" | "video" | "audio" | "formula" | "summary" | "autonumber" | "composite" | "repeater" | "location" | "address" | "json" | "color" | "rating" | "slider" | "qrcode" | "vector";
|
|
4818
4885
|
required: boolean;
|
|
4819
4886
|
searchable: boolean;
|
|
4820
4887
|
multiple: boolean;
|
|
@@ -5177,6 +5244,10 @@ declare const SysMetadataHistoryObject: Omit<{
|
|
|
5177
5244
|
} | {
|
|
5178
5245
|
provider: "value";
|
|
5179
5246
|
items: unknown[];
|
|
5247
|
+
} | {
|
|
5248
|
+
provider: "schema";
|
|
5249
|
+
schemaId: string;
|
|
5250
|
+
schema?: Record<string, unknown> | undefined;
|
|
5180
5251
|
} | undefined;
|
|
5181
5252
|
filter?: {
|
|
5182
5253
|
field: string;
|
|
@@ -5424,7 +5495,7 @@ declare const SysMetadataHistoryObject: Omit<{
|
|
|
5424
5495
|
field?: string | undefined;
|
|
5425
5496
|
objectOverride?: string | undefined;
|
|
5426
5497
|
label?: string | undefined;
|
|
5427
|
-
type?: "number" | "boolean" | "date" | "file" | "code" | "datetime" | "signature" | "progress" | "url" | "text" | "textarea" | "email" | "phone" | "password" | "markdown" | "html" | "richtext" | "currency" | "percent" | "time" | "toggle" | "select" | "multiselect" | "radio" | "checkboxes" | "lookup" | "master_detail" | "tree" | "image" | "avatar" | "video" | "audio" | "formula" | "summary" | "autonumber" | "location" | "address" | "json" | "color" | "rating" | "slider" | "qrcode" | "tags" | "vector" | undefined;
|
|
5498
|
+
type?: "number" | "boolean" | "date" | "file" | "code" | "datetime" | "signature" | "progress" | "url" | "text" | "textarea" | "email" | "phone" | "password" | "markdown" | "html" | "richtext" | "currency" | "percent" | "time" | "toggle" | "select" | "multiselect" | "radio" | "checkboxes" | "lookup" | "master_detail" | "tree" | "image" | "avatar" | "video" | "audio" | "formula" | "summary" | "autonumber" | "composite" | "repeater" | "location" | "address" | "json" | "color" | "rating" | "slider" | "qrcode" | "tags" | "vector" | undefined;
|
|
5428
5499
|
options?: {
|
|
5429
5500
|
label: string;
|
|
5430
5501
|
value: string;
|
package/dist/metadata/index.js
CHANGED
|
@@ -187,6 +187,44 @@ var SysMetadataObject = data.ObjectSchema.create({
|
|
|
187
187
|
apiEnabled: true,
|
|
188
188
|
apiMethods: ["get", "list", "create", "update", "delete"],
|
|
189
189
|
trash: false
|
|
190
|
+
},
|
|
191
|
+
// Named list views — power the Setup App "Data Model" group so admins
|
|
192
|
+
// can browse object/field metadata in a typed grid instead of the raw
|
|
193
|
+
// `All Metadata` debug surface. Each entry pre-filters by `type` and
|
|
194
|
+
// shows the columns that matter for that type. The dedicated visual
|
|
195
|
+
// designer (objectui's <ObjectManager> / <FieldDesigner>) deep-links
|
|
196
|
+
// from the row's `Edit in Designer` action; the grid stays useful for
|
|
197
|
+
// search, audit (state / updated_at) and triage.
|
|
198
|
+
listViews: {
|
|
199
|
+
only_objects: {
|
|
200
|
+
type: "grid",
|
|
201
|
+
name: "only_objects",
|
|
202
|
+
label: "Objects",
|
|
203
|
+
data: { provider: "object", object: "sys_metadata" },
|
|
204
|
+
columns: ["name", "namespace", "scope", "managed_by", "state", "updated_at"],
|
|
205
|
+
filter: [{ field: "type", operator: "equals", value: "object" }],
|
|
206
|
+
sort: [{ field: "name", order: "asc" }],
|
|
207
|
+
pagination: { pageSize: 50 }
|
|
208
|
+
},
|
|
209
|
+
only_fields: {
|
|
210
|
+
type: "grid",
|
|
211
|
+
name: "only_fields",
|
|
212
|
+
label: "Fields",
|
|
213
|
+
data: { provider: "object", object: "sys_metadata" },
|
|
214
|
+
columns: ["name", "namespace", "scope", "managed_by", "state", "updated_at"],
|
|
215
|
+
filter: [{ field: "type", operator: "equals", value: "field" }],
|
|
216
|
+
sort: [{ field: "name", order: "asc" }],
|
|
217
|
+
pagination: { pageSize: 50 }
|
|
218
|
+
},
|
|
219
|
+
all_metadata: {
|
|
220
|
+
type: "grid",
|
|
221
|
+
name: "all_metadata",
|
|
222
|
+
label: "All",
|
|
223
|
+
data: { provider: "object", object: "sys_metadata" },
|
|
224
|
+
columns: ["name", "type", "namespace", "scope", "state", "updated_at"],
|
|
225
|
+
sort: [{ field: "updated_at", order: "desc" }],
|
|
226
|
+
pagination: { pageSize: 50 }
|
|
227
|
+
}
|
|
190
228
|
}
|
|
191
229
|
});
|
|
192
230
|
var SysMetadataHistoryObject = data.ObjectSchema.create({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/metadata/sys-metadata.object.ts","../../src/metadata/sys-metadata-history.object.ts"],"names":["ObjectSchema","Field"],"mappings":"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","file":"index.js","sourcesContent":["// Copyright (c) 2025 ObjectStack. Licensed under the Apache-2.0 license.\n\nimport { ObjectSchema, Field } from '@objectstack/spec/data';\n\n/**\n * sys_metadata — System Metadata Object\n *\n * Canonical ObjectStack object definition for the metadata persistence table.\n * Stores all platform-scope and user-scope metadata records (Objects, Views,\n * Flows, etc.) using the MetadataRecordSchema envelope.\n *\n * This is a system object (isSystem: true) — protected from deletion and\n * automatically provisioned by the DatabaseLoader on first use.\n *\n * @see MetadataRecordSchema in metadata-persistence.zod.ts\n */\nexport const SysMetadataObject = ObjectSchema.create({\n name: 'sys_metadata',\n label: 'System Metadata',\n pluralLabel: 'System Metadata',\n icon: 'settings',\n isSystem: true,\n // managedBy: 'system' — the metadata table backs every other config\n // object. Writing rows directly here bypasses the typed Zod APIs and\n // would let an admin inject malformed payloads. The \"All Metadata\"\n // menu is therefore a read-only debug surface (Export only); typed\n // edits flow through the dedicated per-type pages (Approval Process,\n // Sharing Rule, etc.).\n managedBy: 'system',\n description: 'Stores platform and user-scope metadata records (objects, views, flows, etc.)',\n\n fields: {\n /** Primary Key (UUID) */\n id: Field.text({\n label: 'ID',\n required: true,\n readonly: true,\n }),\n\n /** Machine name — unique identifier used in code references */\n name: Field.text({\n label: 'Name',\n required: true,\n searchable: true,\n maxLength: 255,\n }),\n\n /** Metadata type (e.g. \"object\", \"view\", \"flow\") */\n type: Field.text({\n label: 'Metadata Type',\n required: true,\n searchable: true,\n maxLength: 100,\n }),\n\n /** Namespace / module grouping (e.g. \"crm\", \"core\") */\n namespace: Field.text({\n label: 'Namespace',\n required: false,\n defaultValue: 'default',\n maxLength: 100,\n }),\n\n /** Package that owns/delivered this metadata (legacy string identifier, kept for compat) */\n package_id: Field.text({\n label: 'Package ID',\n required: false,\n maxLength: 255,\n description: 'Legacy package manifest ID string. Use package_version_id for new records.',\n }),\n\n /**\n * FK → sys_package_version (UUID). Set for metadata that belongs to a specific\n * package release snapshot. NULL = platform-built-in or environment override.\n */\n package_version_id: Field.lookup('sys_package_version', {\n label: 'Package Version',\n required: false,\n description:\n 'Foreign key to sys_package_version (UUID). Null = platform-built-in or env-level override.',\n }),\n\n /** Who manages this record: package, platform, or user */\n managed_by: Field.select(['package', 'platform', 'user'], {\n label: 'Managed By',\n required: false,\n }),\n\n /** Scope: system (code), platform (admin DB), user (personal DB) */\n scope: Field.select(['system', 'platform', 'user'], {\n label: 'Scope',\n required: true,\n defaultValue: 'platform',\n }),\n\n /** JSON payload — the actual metadata configuration */\n metadata: Field.textarea({\n label: 'Metadata',\n required: true,\n description: 'JSON-serialized metadata payload',\n }),\n\n /** Parent metadata name for extension/override */\n extends: Field.text({\n label: 'Extends',\n required: false,\n maxLength: 255,\n }),\n\n /** Merge strategy when extending parent metadata */\n strategy: Field.select(['merge', 'replace'], {\n label: 'Strategy',\n required: false,\n defaultValue: 'merge',\n }),\n\n /** Owner user ID (for user-scope items) */\n owner: Field.text({\n label: 'Owner',\n required: false,\n maxLength: 255,\n }),\n\n /** Lifecycle state */\n state: Field.select(['draft', 'active', 'archived', 'deprecated'], {\n label: 'State',\n required: false,\n defaultValue: 'active',\n }),\n\n /** Organization ID for multi-tenant isolation */\n organization_id: Field.lookup('sys_organization', {\n label: 'Organization',\n required: false,\n description: 'Organization for multi-tenant isolation.',\n }),\n\n /**\n * @deprecated ADR-0005 (revised 2026-05): per-env DBs replace per-project\n * isolation. `environment_id` is no longer written by saveMetaItem and not\n * consulted by overlay reads. Kept for legacy rows; new writes leave it\n * NULL. Will be dropped in a future schema migration.\n */\n environment_id: Field.lookup('sys_environment', {\n label: 'Environment (deprecated)',\n required: false,\n description: 'DEPRECATED. Use organization_id for tenant isolation.',\n }),\n\n /** Version number for optimistic concurrency */\n version: Field.number({\n label: 'Version',\n required: false,\n defaultValue: 1,\n }),\n\n /** Content checksum for change detection (e.g. `sha256:<64 hex>` = 71 chars) */\n checksum: Field.text({\n label: 'Checksum',\n required: false,\n maxLength: 71,\n }),\n\n /** Origin of this metadata record */\n source: Field.select(['filesystem', 'database', 'api', 'migration'], {\n label: 'Source',\n required: false,\n }),\n\n /** Classification tags (JSON array) */\n tags: Field.textarea({\n label: 'Tags',\n required: false,\n description: 'JSON-serialized array of classification tags',\n }),\n\n /** Audit fields */\n created_by: Field.lookup('sys_user', {\n label: 'Created By',\n required: false,\n readonly: true,\n }),\n\n created_at: Field.datetime({\n label: 'Created At',\n required: false,\n readonly: true,\n }),\n\n updated_by: Field.lookup('sys_user', {\n label: 'Updated By',\n required: false,\n }),\n\n updated_at: Field.datetime({\n label: 'Updated At',\n required: false,\n }),\n },\n\n indexes: [\n // ADR-0005 (revised 2026-05): overlay uniqueness is scoped by\n // (type, name, organization_id), restricted to active rows so resets\n // / archived versions don't collide. environment_id is deprecated and\n // not part of the discriminator. The runtime layer (protocol.ts\n // ensureOverlayIndex) issues a DROP-then-CREATE migration to\n // replace any pre-existing legacy composite index in-place.\n {\n name: 'idx_sys_metadata_overlay_active',\n fields: ['type', 'name', 'organization_id'],\n unique: true,\n partial: \"state = 'active'\",\n },\n { name: 'idx_sys_metadata_org_type', fields: ['organization_id', 'type'] },\n { fields: ['type', 'scope'] },\n { fields: ['package_version_id'] },\n { fields: ['state'] },\n { fields: ['namespace'] },\n ],\n\n enable: {\n trackHistory: true,\n searchable: false,\n apiEnabled: true,\n apiMethods: ['get', 'list', 'create', 'update', 'delete'],\n trash: false,\n },\n});\n","// Copyright (c) 2025 ObjectStack. Licensed under the Apache-2.0 license.\n\nimport { ObjectSchema, Field } from '@objectstack/spec/data';\n\n/**\n * sys_metadata_history — Metadata Version History / Event Log\n *\n * Append-only durable log of every overlay change made through\n * `SysMetadataRepository.put` / `delete` (ADR-0008 §10 M1). Each row is a\n * single event in the per-organisation event log; rows are NEVER\n * mutated after insertion. The legacy `DatabaseLoader` writes the same\n * shape from its own put/restore code paths.\n *\n * ─────────────────────────────────────────────────────────────────────\n * Key design points (ADR-0008 §0 amendment + M1):\n *\n * • Keyed by `(organization_id, type, name)` only — `environment_id` was\n * removed in the branch/project-removal amendment. The original\n * `metadata_id` column (a downgraded plain-text version of the old\n * `sys_metadata.id` FK) was removed in the M1 follow-up — joins go\n * through `(organization_id, type, name, version)` exclusively.\n *\n * • `event_seq` is the per-org monotonic event-log cursor. Producers\n * compute `MAX(event_seq) + 1 WHERE organization_id = X` inside the\n * same transaction as the parent `sys_metadata` write.\n *\n * • `version` is the per-(org,type,name) lineage counter. Producers\n * compute `MAX(version) + 1 WHERE organization_id = X AND type = T\n * AND name = N` so delete + recreate continues incrementing instead\n * of restarting at 1.\n *\n * • `metadata` / `checksum` are nullable — DELETE rows have no body or\n * hash. Readers must tolerate null on both columns.\n *\n * • `source` records the producer ('sys-metadata-repo', 'fs',\n * 'studio', …) and feeds MetadataEvent.source on history() reads.\n *\n * Indexes are purpose-built for the two dominant read patterns:\n * 1. per-item history view → `(organization_id, type, name, version)`\n * 2. org-wide event replay → `(organization_id, event_seq)`\n * ─────────────────────────────────────────────────────────────────────\n */\nexport const SysMetadataHistoryObject = ObjectSchema.create({\n name: 'sys_metadata_history',\n label: 'Metadata History',\n pluralLabel: 'Metadata History',\n icon: 'history',\n isSystem: true,\n managedBy: 'system',\n description: 'Durable event log of metadata overlay changes (per-org, append-only)',\n\n fields: {\n /** Primary Key (UUID) */\n id: Field.text({\n label: 'ID',\n required: true,\n readonly: true,\n }),\n\n /** Per-org monotonic event sequence (durable cursor for replay). */\n event_seq: Field.number({\n label: 'Event Seq',\n required: true,\n readonly: true,\n description: 'Per-organization monotonic event log cursor.',\n }),\n\n /** Machine name (denormalized for easier querying) */\n name: Field.text({\n label: 'Name',\n required: true,\n searchable: true,\n readonly: true,\n maxLength: 255,\n }),\n\n /** Metadata type (denormalized for easier querying) */\n type: Field.text({\n label: 'Metadata Type',\n required: true,\n searchable: true,\n readonly: true,\n maxLength: 100,\n }),\n\n /** Per-(org,type,name) lineage counter at this snapshot. */\n version: Field.number({\n label: 'Version',\n required: true,\n readonly: true,\n }),\n\n /** Type of operation that created this history entry */\n operation_type: Field.select(['create', 'update', 'publish', 'revert', 'delete'], {\n label: 'Operation Type',\n required: true,\n readonly: true,\n }),\n\n /**\n * Historical metadata snapshot (JSON payload).\n * Null for `operation_type = 'delete'` — the row carries no body.\n */\n metadata: Field.textarea({\n label: 'Metadata',\n required: false,\n readonly: true,\n description: 'JSON-serialized metadata snapshot at this version (null for deletes).',\n }),\n\n /** SHA-256 checksum of metadata content (null for deletes). */\n checksum: Field.text({\n label: 'Checksum',\n required: false,\n readonly: true,\n maxLength: 80,\n }),\n\n /** Checksum of the previous version (null for the first event). */\n previous_checksum: Field.text({\n label: 'Previous Checksum',\n required: false,\n readonly: true,\n maxLength: 80,\n }),\n\n /** Human-readable description of changes (= MetadataEvent.message). */\n change_note: Field.textarea({\n label: 'Change Note',\n required: false,\n readonly: true,\n description: 'Description of what changed in this version.',\n }),\n\n /**\n * Producer of the event ('sys-metadata-repo', 'fs', 'studio',\n * 'api', …). Defaults to 'sys-metadata-repo' on the canonical\n * write path; preserved on history() reads as MetadataEvent.source.\n */\n source: Field.text({\n label: 'Source',\n required: false,\n readonly: true,\n maxLength: 64,\n }),\n\n /** Organization ID for multi-tenant isolation */\n organization_id: Field.lookup('sys_organization', {\n label: 'Organization',\n required: false,\n readonly: true,\n description: 'Organization for multi-tenant isolation.',\n }),\n\n /** User who made this change (= MetadataEvent.actor). */\n recorded_by: Field.lookup('sys_user', {\n label: 'Recorded By',\n required: false,\n readonly: true,\n }),\n\n /** When was this version recorded */\n recorded_at: Field.datetime({\n label: 'Recorded At',\n required: true,\n readonly: true,\n }),\n },\n\n indexes: [\n { fields: ['organization_id', 'event_seq'], unique: true },\n { fields: ['organization_id', 'type', 'name', 'version'], unique: true },\n { fields: ['organization_id', 'type', 'name', 'recorded_at'] },\n // ADR-0009: getByHash() lookup — execution-pinned types resolve a\n // historical body by content hash via this index.\n { fields: ['organization_id', 'type', 'name', 'checksum'] },\n { fields: ['type', 'name'] },\n { fields: ['recorded_at'] },\n { fields: ['operation_type'] },\n ],\n\n enable: {\n trackHistory: false,\n searchable: false,\n apiEnabled: true,\n apiMethods: ['get', 'list'],\n trash: false,\n },\n});\n"]}
|
|
1
|
+
{"version":3,"sources":["../../src/metadata/sys-metadata.object.ts","../../src/metadata/sys-metadata-history.object.ts"],"names":["ObjectSchema","Field"],"mappings":"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","file":"index.js","sourcesContent":["// Copyright (c) 2025 ObjectStack. Licensed under the Apache-2.0 license.\n\nimport { ObjectSchema, Field } from '@objectstack/spec/data';\n\n/**\n * sys_metadata — System Metadata Object\n *\n * Canonical ObjectStack object definition for the metadata persistence table.\n * Stores all platform-scope and user-scope metadata records (Objects, Views,\n * Flows, etc.) using the MetadataRecordSchema envelope.\n *\n * This is a system object (isSystem: true) — protected from deletion and\n * automatically provisioned by the DatabaseLoader on first use.\n *\n * @see MetadataRecordSchema in metadata-persistence.zod.ts\n */\nexport const SysMetadataObject = ObjectSchema.create({\n name: 'sys_metadata',\n label: 'System Metadata',\n pluralLabel: 'System Metadata',\n icon: 'settings',\n isSystem: true,\n // managedBy: 'system' — the metadata table backs every other config\n // object. Writing rows directly here bypasses the typed Zod APIs and\n // would let an admin inject malformed payloads. The \"All Metadata\"\n // menu is therefore a read-only debug surface (Export only); typed\n // edits flow through the dedicated per-type pages (Approval Process,\n // Sharing Rule, etc.).\n managedBy: 'system',\n description: 'Stores platform and user-scope metadata records (objects, views, flows, etc.)',\n\n fields: {\n /** Primary Key (UUID) */\n id: Field.text({\n label: 'ID',\n required: true,\n readonly: true,\n }),\n\n /** Machine name — unique identifier used in code references */\n name: Field.text({\n label: 'Name',\n required: true,\n searchable: true,\n maxLength: 255,\n }),\n\n /** Metadata type (e.g. \"object\", \"view\", \"flow\") */\n type: Field.text({\n label: 'Metadata Type',\n required: true,\n searchable: true,\n maxLength: 100,\n }),\n\n /** Namespace / module grouping (e.g. \"crm\", \"core\") */\n namespace: Field.text({\n label: 'Namespace',\n required: false,\n defaultValue: 'default',\n maxLength: 100,\n }),\n\n /** Package that owns/delivered this metadata (legacy string identifier, kept for compat) */\n package_id: Field.text({\n label: 'Package ID',\n required: false,\n maxLength: 255,\n description: 'Legacy package manifest ID string. Use package_version_id for new records.',\n }),\n\n /**\n * FK → sys_package_version (UUID). Set for metadata that belongs to a specific\n * package release snapshot. NULL = platform-built-in or environment override.\n */\n package_version_id: Field.lookup('sys_package_version', {\n label: 'Package Version',\n required: false,\n description:\n 'Foreign key to sys_package_version (UUID). Null = platform-built-in or env-level override.',\n }),\n\n /** Who manages this record: package, platform, or user */\n managed_by: Field.select(['package', 'platform', 'user'], {\n label: 'Managed By',\n required: false,\n }),\n\n /** Scope: system (code), platform (admin DB), user (personal DB) */\n scope: Field.select(['system', 'platform', 'user'], {\n label: 'Scope',\n required: true,\n defaultValue: 'platform',\n }),\n\n /** JSON payload — the actual metadata configuration */\n metadata: Field.textarea({\n label: 'Metadata',\n required: true,\n description: 'JSON-serialized metadata payload',\n }),\n\n /** Parent metadata name for extension/override */\n extends: Field.text({\n label: 'Extends',\n required: false,\n maxLength: 255,\n }),\n\n /** Merge strategy when extending parent metadata */\n strategy: Field.select(['merge', 'replace'], {\n label: 'Strategy',\n required: false,\n defaultValue: 'merge',\n }),\n\n /** Owner user ID (for user-scope items) */\n owner: Field.text({\n label: 'Owner',\n required: false,\n maxLength: 255,\n }),\n\n /** Lifecycle state */\n state: Field.select(['draft', 'active', 'archived', 'deprecated'], {\n label: 'State',\n required: false,\n defaultValue: 'active',\n }),\n\n /** Organization ID for multi-tenant isolation */\n organization_id: Field.lookup('sys_organization', {\n label: 'Organization',\n required: false,\n description: 'Organization for multi-tenant isolation.',\n }),\n\n /**\n * @deprecated ADR-0005 (revised 2026-05): per-env DBs replace per-project\n * isolation. `environment_id` is no longer written by saveMetaItem and not\n * consulted by overlay reads. Kept for legacy rows; new writes leave it\n * NULL. Will be dropped in a future schema migration.\n */\n environment_id: Field.lookup('sys_environment', {\n label: 'Environment (deprecated)',\n required: false,\n description: 'DEPRECATED. Use organization_id for tenant isolation.',\n }),\n\n /** Version number for optimistic concurrency */\n version: Field.number({\n label: 'Version',\n required: false,\n defaultValue: 1,\n }),\n\n /** Content checksum for change detection (e.g. `sha256:<64 hex>` = 71 chars) */\n checksum: Field.text({\n label: 'Checksum',\n required: false,\n maxLength: 71,\n }),\n\n /** Origin of this metadata record */\n source: Field.select(['filesystem', 'database', 'api', 'migration'], {\n label: 'Source',\n required: false,\n }),\n\n /** Classification tags (JSON array) */\n tags: Field.textarea({\n label: 'Tags',\n required: false,\n description: 'JSON-serialized array of classification tags',\n }),\n\n /** Audit fields */\n created_by: Field.lookup('sys_user', {\n label: 'Created By',\n required: false,\n readonly: true,\n }),\n\n created_at: Field.datetime({\n label: 'Created At',\n required: false,\n readonly: true,\n }),\n\n updated_by: Field.lookup('sys_user', {\n label: 'Updated By',\n required: false,\n }),\n\n updated_at: Field.datetime({\n label: 'Updated At',\n required: false,\n }),\n },\n\n indexes: [\n // ADR-0005 (revised 2026-05): overlay uniqueness is scoped by\n // (type, name, organization_id), restricted to active rows so resets\n // / archived versions don't collide. environment_id is deprecated and\n // not part of the discriminator. The runtime layer (protocol.ts\n // ensureOverlayIndex) issues a DROP-then-CREATE migration to\n // replace any pre-existing legacy composite index in-place.\n {\n name: 'idx_sys_metadata_overlay_active',\n fields: ['type', 'name', 'organization_id'],\n unique: true,\n partial: \"state = 'active'\",\n },\n { name: 'idx_sys_metadata_org_type', fields: ['organization_id', 'type'] },\n { fields: ['type', 'scope'] },\n { fields: ['package_version_id'] },\n { fields: ['state'] },\n { fields: ['namespace'] },\n ],\n\n enable: {\n trackHistory: true,\n searchable: false,\n apiEnabled: true,\n apiMethods: ['get', 'list', 'create', 'update', 'delete'],\n trash: false,\n },\n\n // Named list views — power the Setup App \"Data Model\" group so admins\n // can browse object/field metadata in a typed grid instead of the raw\n // `All Metadata` debug surface. Each entry pre-filters by `type` and\n // shows the columns that matter for that type. The dedicated visual\n // designer (objectui's <ObjectManager> / <FieldDesigner>) deep-links\n // from the row's `Edit in Designer` action; the grid stays useful for\n // search, audit (state / updated_at) and triage.\n listViews: {\n only_objects: {\n type: 'grid',\n name: 'only_objects',\n label: 'Objects',\n data: { provider: 'object', object: 'sys_metadata' },\n columns: ['name', 'namespace', 'scope', 'managed_by', 'state', 'updated_at'],\n filter: [{ field: 'type', operator: 'equals', value: 'object' }],\n sort: [{ field: 'name', order: 'asc' }],\n pagination: { pageSize: 50 },\n },\n only_fields: {\n type: 'grid',\n name: 'only_fields',\n label: 'Fields',\n data: { provider: 'object', object: 'sys_metadata' },\n columns: ['name', 'namespace', 'scope', 'managed_by', 'state', 'updated_at'],\n filter: [{ field: 'type', operator: 'equals', value: 'field' }],\n sort: [{ field: 'name', order: 'asc' }],\n pagination: { pageSize: 50 },\n },\n all_metadata: {\n type: 'grid',\n name: 'all_metadata',\n label: 'All',\n data: { provider: 'object', object: 'sys_metadata' },\n columns: ['name', 'type', 'namespace', 'scope', 'state', 'updated_at'],\n sort: [{ field: 'updated_at', order: 'desc' }],\n pagination: { pageSize: 50 },\n },\n },\n});\n","// Copyright (c) 2025 ObjectStack. Licensed under the Apache-2.0 license.\n\nimport { ObjectSchema, Field } from '@objectstack/spec/data';\n\n/**\n * sys_metadata_history — Metadata Version History / Event Log\n *\n * Append-only durable log of every overlay change made through\n * `SysMetadataRepository.put` / `delete` (ADR-0008 §10 M1). Each row is a\n * single event in the per-organisation event log; rows are NEVER\n * mutated after insertion. The legacy `DatabaseLoader` writes the same\n * shape from its own put/restore code paths.\n *\n * ─────────────────────────────────────────────────────────────────────\n * Key design points (ADR-0008 §0 amendment + M1):\n *\n * • Keyed by `(organization_id, type, name)` only — `environment_id` was\n * removed in the branch/project-removal amendment. The original\n * `metadata_id` column (a downgraded plain-text version of the old\n * `sys_metadata.id` FK) was removed in the M1 follow-up — joins go\n * through `(organization_id, type, name, version)` exclusively.\n *\n * • `event_seq` is the per-org monotonic event-log cursor. Producers\n * compute `MAX(event_seq) + 1 WHERE organization_id = X` inside the\n * same transaction as the parent `sys_metadata` write.\n *\n * • `version` is the per-(org,type,name) lineage counter. Producers\n * compute `MAX(version) + 1 WHERE organization_id = X AND type = T\n * AND name = N` so delete + recreate continues incrementing instead\n * of restarting at 1.\n *\n * • `metadata` / `checksum` are nullable — DELETE rows have no body or\n * hash. Readers must tolerate null on both columns.\n *\n * • `source` records the producer ('sys-metadata-repo', 'fs',\n * 'studio', …) and feeds MetadataEvent.source on history() reads.\n *\n * Indexes are purpose-built for the two dominant read patterns:\n * 1. per-item history view → `(organization_id, type, name, version)`\n * 2. org-wide event replay → `(organization_id, event_seq)`\n * ─────────────────────────────────────────────────────────────────────\n */\nexport const SysMetadataHistoryObject = ObjectSchema.create({\n name: 'sys_metadata_history',\n label: 'Metadata History',\n pluralLabel: 'Metadata History',\n icon: 'history',\n isSystem: true,\n managedBy: 'system',\n description: 'Durable event log of metadata overlay changes (per-org, append-only)',\n\n fields: {\n /** Primary Key (UUID) */\n id: Field.text({\n label: 'ID',\n required: true,\n readonly: true,\n }),\n\n /** Per-org monotonic event sequence (durable cursor for replay). */\n event_seq: Field.number({\n label: 'Event Seq',\n required: true,\n readonly: true,\n description: 'Per-organization monotonic event log cursor.',\n }),\n\n /** Machine name (denormalized for easier querying) */\n name: Field.text({\n label: 'Name',\n required: true,\n searchable: true,\n readonly: true,\n maxLength: 255,\n }),\n\n /** Metadata type (denormalized for easier querying) */\n type: Field.text({\n label: 'Metadata Type',\n required: true,\n searchable: true,\n readonly: true,\n maxLength: 100,\n }),\n\n /** Per-(org,type,name) lineage counter at this snapshot. */\n version: Field.number({\n label: 'Version',\n required: true,\n readonly: true,\n }),\n\n /** Type of operation that created this history entry */\n operation_type: Field.select(['create', 'update', 'publish', 'revert', 'delete'], {\n label: 'Operation Type',\n required: true,\n readonly: true,\n }),\n\n /**\n * Historical metadata snapshot (JSON payload).\n * Null for `operation_type = 'delete'` — the row carries no body.\n */\n metadata: Field.textarea({\n label: 'Metadata',\n required: false,\n readonly: true,\n description: 'JSON-serialized metadata snapshot at this version (null for deletes).',\n }),\n\n /** SHA-256 checksum of metadata content (null for deletes). */\n checksum: Field.text({\n label: 'Checksum',\n required: false,\n readonly: true,\n maxLength: 80,\n }),\n\n /** Checksum of the previous version (null for the first event). */\n previous_checksum: Field.text({\n label: 'Previous Checksum',\n required: false,\n readonly: true,\n maxLength: 80,\n }),\n\n /** Human-readable description of changes (= MetadataEvent.message). */\n change_note: Field.textarea({\n label: 'Change Note',\n required: false,\n readonly: true,\n description: 'Description of what changed in this version.',\n }),\n\n /**\n * Producer of the event ('sys-metadata-repo', 'fs', 'studio',\n * 'api', …). Defaults to 'sys-metadata-repo' on the canonical\n * write path; preserved on history() reads as MetadataEvent.source.\n */\n source: Field.text({\n label: 'Source',\n required: false,\n readonly: true,\n maxLength: 64,\n }),\n\n /** Organization ID for multi-tenant isolation */\n organization_id: Field.lookup('sys_organization', {\n label: 'Organization',\n required: false,\n readonly: true,\n description: 'Organization for multi-tenant isolation.',\n }),\n\n /** User who made this change (= MetadataEvent.actor). */\n recorded_by: Field.lookup('sys_user', {\n label: 'Recorded By',\n required: false,\n readonly: true,\n }),\n\n /** When was this version recorded */\n recorded_at: Field.datetime({\n label: 'Recorded At',\n required: true,\n readonly: true,\n }),\n },\n\n indexes: [\n { fields: ['organization_id', 'event_seq'], unique: true },\n { fields: ['organization_id', 'type', 'name', 'version'], unique: true },\n { fields: ['organization_id', 'type', 'name', 'recorded_at'] },\n // ADR-0009: getByHash() lookup — execution-pinned types resolve a\n // historical body by content hash via this index.\n { fields: ['organization_id', 'type', 'name', 'checksum'] },\n { fields: ['type', 'name'] },\n { fields: ['recorded_at'] },\n { fields: ['operation_type'] },\n ],\n\n enable: {\n trackHistory: false,\n searchable: false,\n apiEnabled: true,\n apiMethods: ['get', 'list'],\n trash: false,\n },\n});\n"]}
|
package/dist/metadata/index.mjs
CHANGED
|
@@ -185,6 +185,44 @@ var SysMetadataObject = ObjectSchema.create({
|
|
|
185
185
|
apiEnabled: true,
|
|
186
186
|
apiMethods: ["get", "list", "create", "update", "delete"],
|
|
187
187
|
trash: false
|
|
188
|
+
},
|
|
189
|
+
// Named list views — power the Setup App "Data Model" group so admins
|
|
190
|
+
// can browse object/field metadata in a typed grid instead of the raw
|
|
191
|
+
// `All Metadata` debug surface. Each entry pre-filters by `type` and
|
|
192
|
+
// shows the columns that matter for that type. The dedicated visual
|
|
193
|
+
// designer (objectui's <ObjectManager> / <FieldDesigner>) deep-links
|
|
194
|
+
// from the row's `Edit in Designer` action; the grid stays useful for
|
|
195
|
+
// search, audit (state / updated_at) and triage.
|
|
196
|
+
listViews: {
|
|
197
|
+
only_objects: {
|
|
198
|
+
type: "grid",
|
|
199
|
+
name: "only_objects",
|
|
200
|
+
label: "Objects",
|
|
201
|
+
data: { provider: "object", object: "sys_metadata" },
|
|
202
|
+
columns: ["name", "namespace", "scope", "managed_by", "state", "updated_at"],
|
|
203
|
+
filter: [{ field: "type", operator: "equals", value: "object" }],
|
|
204
|
+
sort: [{ field: "name", order: "asc" }],
|
|
205
|
+
pagination: { pageSize: 50 }
|
|
206
|
+
},
|
|
207
|
+
only_fields: {
|
|
208
|
+
type: "grid",
|
|
209
|
+
name: "only_fields",
|
|
210
|
+
label: "Fields",
|
|
211
|
+
data: { provider: "object", object: "sys_metadata" },
|
|
212
|
+
columns: ["name", "namespace", "scope", "managed_by", "state", "updated_at"],
|
|
213
|
+
filter: [{ field: "type", operator: "equals", value: "field" }],
|
|
214
|
+
sort: [{ field: "name", order: "asc" }],
|
|
215
|
+
pagination: { pageSize: 50 }
|
|
216
|
+
},
|
|
217
|
+
all_metadata: {
|
|
218
|
+
type: "grid",
|
|
219
|
+
name: "all_metadata",
|
|
220
|
+
label: "All",
|
|
221
|
+
data: { provider: "object", object: "sys_metadata" },
|
|
222
|
+
columns: ["name", "type", "namespace", "scope", "state", "updated_at"],
|
|
223
|
+
sort: [{ field: "updated_at", order: "desc" }],
|
|
224
|
+
pagination: { pageSize: 50 }
|
|
225
|
+
}
|
|
188
226
|
}
|
|
189
227
|
});
|
|
190
228
|
var SysMetadataHistoryObject = ObjectSchema.create({
|