@proteos/sdk 0.51.1 → 0.53.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/{chunk-IRFFXJMB.js → chunk-HEUXXELG.js} +311 -17
- package/dist/chunk-HEUXXELG.js.map +1 -0
- package/dist/{chunk-RKFXHDVU.cjs → chunk-SWCPI6SL.cjs} +326 -16
- package/dist/chunk-SWCPI6SL.cjs.map +1 -0
- package/dist/index.cjs +209 -102
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +213 -12
- package/dist/index.d.ts +213 -12
- package/dist/index.js +49 -2
- package/dist/index.js.map +1 -1
- package/dist/meta/index.cjs +123 -59
- package/dist/meta/index.d.cts +1 -1
- package/dist/meta/index.d.ts +1 -1
- package/dist/meta/index.js +1 -1
- package/dist/{types-C9flkAj-.d.cts → types-D5P6yk1L.d.cts} +1288 -69
- package/dist/{types-C9flkAj-.d.ts → types-D5P6yk1L.d.ts} +1288 -69
- package/package.json +3 -3
- package/src/conversation/index.ts +39 -0
- package/src/conversation/types.ts +108 -4
- package/src/data/index.ts +15 -2
- package/src/data/records.ts +63 -0
- package/src/data/types.ts +52 -0
- package/src/index.ts +60 -1
- package/src/meta/entity-extensions.ts +98 -0
- package/src/meta/index.ts +84 -1
- package/src/meta/layout/common-props.ts +8 -0
- package/src/meta/layout/control-registry.json +10 -2
- package/src/meta/layout/elements.ts +15 -10
- package/src/meta/layout/index.ts +1 -0
- package/src/meta/list-extensions.ts +98 -0
- package/src/meta/menu-configuration-extensions.ts +132 -0
- package/src/meta/page-extensions.ts +98 -0
- package/src/meta/types.ts +470 -0
- package/dist/chunk-IRFFXJMB.js.map +0 -1
- package/dist/chunk-RKFXHDVU.cjs.map +0 -1
|
@@ -867,6 +867,74 @@ interface EntityService {
|
|
|
867
867
|
delete(slug: string): Promise<void>;
|
|
868
868
|
}
|
|
869
869
|
|
|
870
|
+
/**
|
|
871
|
+
* Service for entity extensions — attributes contributed to an EXISTING host
|
|
872
|
+
* entity by a resource that does not own it (typically a second module). The
|
|
873
|
+
* host's `attributes` are the materialized merge: its own attributes plus every
|
|
874
|
+
* extension's, each stamped with `extension_key`. Every write here
|
|
875
|
+
* re-materializes the host; an attribute name shared with the host or another
|
|
876
|
+
* extension is refused (`entity_extension_attribute_collision`).
|
|
877
|
+
*/
|
|
878
|
+
interface EntityExtensionService {
|
|
879
|
+
/** Lists entity extensions (auto-paginating iterator). */
|
|
880
|
+
list(options?: ListEntityExtensionsOptions): PageIterator<EntityExtension, ListEntityExtensionsOptions>;
|
|
881
|
+
/** Fetches a single page of entity extensions. */
|
|
882
|
+
listPage(options?: ListEntityExtensionsOptions): Promise<ListResult<EntityExtension>>;
|
|
883
|
+
/** Gets an entity extension by key (404 when unknown). */
|
|
884
|
+
get(key: string): Promise<EntityExtension>;
|
|
885
|
+
/**
|
|
886
|
+
* Creates an entity extension and merges its attributes into the host.
|
|
887
|
+
* @throws {ProteosError} 409 `entity_extension_already_exists` when the key
|
|
888
|
+
* is taken; 400 `entity_extension_entity_not_found` when the host does
|
|
889
|
+
* not exist; 400 `entity_extension_attribute_collision` on a name clash.
|
|
890
|
+
*/
|
|
891
|
+
create(request: CreateEntityExtensionRequest): Promise<EntityExtension>;
|
|
892
|
+
/**
|
|
893
|
+
* Creates or replaces an entity extension idempotently by key
|
|
894
|
+
* (`PUT /meta/v1/entity-extensions/:key`). Replaces the whole definition;
|
|
895
|
+
* the host binding (`entity_slug`) of an existing key is immutable.
|
|
896
|
+
*/
|
|
897
|
+
upsert(key: string, request: CreateEntityExtensionRequest): Promise<EntityExtension>;
|
|
898
|
+
/** Partially updates an entity extension (`attributes` replaces the whole list). */
|
|
899
|
+
update(key: string, request: UpdateEntityExtensionRequest): Promise<EntityExtension>;
|
|
900
|
+
/** Deletes an entity extension and removes its attributes from the host. */
|
|
901
|
+
delete(key: string): Promise<void>;
|
|
902
|
+
}
|
|
903
|
+
|
|
904
|
+
/**
|
|
905
|
+
* Service for entity extensions — attributes contributed to an EXISTING host
|
|
906
|
+
* entity by a resource that does not own it (typically a second module). The
|
|
907
|
+
* host's `attributes` are the materialized merge: its own attributes plus every
|
|
908
|
+
* extension's, each stamped with `extension_key`. Every write here
|
|
909
|
+
* re-materializes the host; an attribute name shared with the host or another
|
|
910
|
+
* extension is refused (`entity_extension_attribute_collision`).
|
|
911
|
+
*/
|
|
912
|
+
interface ListExtensionService {
|
|
913
|
+
/** Lists entity extensions (auto-paginating iterator). */
|
|
914
|
+
list(options?: ListListExtensionsOptions): PageIterator<ListExtension, ListListExtensionsOptions>;
|
|
915
|
+
/** Fetches a single page of entity extensions. */
|
|
916
|
+
listPage(options?: ListListExtensionsOptions): Promise<ListResult<ListExtension>>;
|
|
917
|
+
/** Gets an entity extension by key (404 when unknown). */
|
|
918
|
+
get(key: string): Promise<ListExtension>;
|
|
919
|
+
/**
|
|
920
|
+
* Creates an entity extension and merges its attributes into the host.
|
|
921
|
+
* @throws {ProteosError} 409 `entity_extension_already_exists` when the key
|
|
922
|
+
* is taken; 400 `entity_extension_entity_not_found` when the host does
|
|
923
|
+
* not exist; 400 `entity_extension_attribute_collision` on a name clash.
|
|
924
|
+
*/
|
|
925
|
+
create(request: CreateListExtensionRequest): Promise<ListExtension>;
|
|
926
|
+
/**
|
|
927
|
+
* Creates or replaces an entity extension idempotently by key
|
|
928
|
+
* (`PUT /meta/v1/list-extensions/:key`). Replaces the whole definition;
|
|
929
|
+
* the host binding (`list_slug`) of an existing key is immutable.
|
|
930
|
+
*/
|
|
931
|
+
upsert(key: string, request: CreateListExtensionRequest): Promise<ListExtension>;
|
|
932
|
+
/** Partially updates an entity extension (`attributes` replaces the whole list). */
|
|
933
|
+
update(key: string, request: UpdateListExtensionRequest): Promise<ListExtension>;
|
|
934
|
+
/** Deletes an entity extension and removes its attributes from the host. */
|
|
935
|
+
delete(key: string): Promise<void>;
|
|
936
|
+
}
|
|
937
|
+
|
|
870
938
|
/**
|
|
871
939
|
* Service for managing list view configurations.
|
|
872
940
|
* List views define filtered and sorted views of lists.
|
|
@@ -981,6 +1049,45 @@ interface ListService {
|
|
|
981
1049
|
delete(slug: string): Promise<void>;
|
|
982
1050
|
}
|
|
983
1051
|
|
|
1052
|
+
/**
|
|
1053
|
+
* Service for menu-configuration extensions — items contributed to an EXISTING
|
|
1054
|
+
* host menu configuration by a resource that does not own it (typically a
|
|
1055
|
+
* second module). The host's `items` are the materialized merge: its own tree
|
|
1056
|
+
* plus every extension's placements, each contributed item stamped with
|
|
1057
|
+
* `extension_key` (a replaced / removed host item kept under `replaced_item`).
|
|
1058
|
+
* Every write here re-materializes the host; an item id shared with the host
|
|
1059
|
+
* or another extension is refused
|
|
1060
|
+
* (`menu_configuration_extension_item_id_collision`), an anchor the host does
|
|
1061
|
+
* not have too (`menu_configuration_extension_anchor_not_found`).
|
|
1062
|
+
*/
|
|
1063
|
+
interface MenuConfigurationExtensionService {
|
|
1064
|
+
/** Lists menu-configuration extensions (auto-paginating iterator). */
|
|
1065
|
+
list(options?: ListMenuConfigurationExtensionsOptions): PageIterator<MenuConfigurationExtension, ListMenuConfigurationExtensionsOptions>;
|
|
1066
|
+
/** Fetches a single page of menu-configuration extensions. */
|
|
1067
|
+
listPage(options?: ListMenuConfigurationExtensionsOptions): Promise<ListResult<MenuConfigurationExtension>>;
|
|
1068
|
+
/** Gets a menu-configuration extension by key (404 when unknown). */
|
|
1069
|
+
get(key: string): Promise<MenuConfigurationExtension>;
|
|
1070
|
+
/**
|
|
1071
|
+
* Creates a menu-configuration extension and merges its items into the host.
|
|
1072
|
+
* @throws {ProteosError} 409 `menu_configuration_extension_already_exists`
|
|
1073
|
+
* when the key is taken; 400 `menu_configuration_extension_menu_not_found`
|
|
1074
|
+
* when the host does not exist; 400
|
|
1075
|
+
* `menu_configuration_extension_anchor_not_found` /
|
|
1076
|
+
* `menu_configuration_extension_item_id_collision` on a bad placement.
|
|
1077
|
+
*/
|
|
1078
|
+
create(request: CreateMenuConfigurationExtensionRequest): Promise<MenuConfigurationExtension>;
|
|
1079
|
+
/**
|
|
1080
|
+
* Creates or replaces a menu-configuration extension idempotently by key
|
|
1081
|
+
* (`PUT /meta/v1/menu-configuration-extensions/:key`). Replaces the whole definition;
|
|
1082
|
+
* the host binding (`menu_slug`) of an existing key is immutable.
|
|
1083
|
+
*/
|
|
1084
|
+
upsert(key: string, request: CreateMenuConfigurationExtensionRequest): Promise<MenuConfigurationExtension>;
|
|
1085
|
+
/** Partially updates a menu-configuration extension (`placements` replaces the whole list). */
|
|
1086
|
+
update(key: string, request: UpdateMenuConfigurationExtensionRequest): Promise<MenuConfigurationExtension>;
|
|
1087
|
+
/** Deletes a menu-configuration extension and removes its items from the host. */
|
|
1088
|
+
delete(key: string): Promise<void>;
|
|
1089
|
+
}
|
|
1090
|
+
|
|
984
1091
|
/**
|
|
985
1092
|
* Service for managing menu configurations.
|
|
986
1093
|
* Menu configurations define the navigation structure of applications.
|
|
@@ -1128,6 +1235,40 @@ interface ModuleService {
|
|
|
1128
1235
|
}>;
|
|
1129
1236
|
}
|
|
1130
1237
|
|
|
1238
|
+
/**
|
|
1239
|
+
* Service for entity extensions — attributes contributed to an EXISTING host
|
|
1240
|
+
* entity by a resource that does not own it (typically a second module). The
|
|
1241
|
+
* host's `attributes` are the materialized merge: its own attributes plus every
|
|
1242
|
+
* extension's, each stamped with `extension_key`. Every write here
|
|
1243
|
+
* re-materializes the host; an attribute name shared with the host or another
|
|
1244
|
+
* extension is refused (`entity_extension_attribute_collision`).
|
|
1245
|
+
*/
|
|
1246
|
+
interface PageExtensionService {
|
|
1247
|
+
/** Lists entity extensions (auto-paginating iterator). */
|
|
1248
|
+
list(options?: ListPageExtensionsOptions): PageIterator<PageExtension, ListPageExtensionsOptions>;
|
|
1249
|
+
/** Fetches a single page of entity extensions. */
|
|
1250
|
+
listPage(options?: ListPageExtensionsOptions): Promise<ListResult<PageExtension>>;
|
|
1251
|
+
/** Gets an entity extension by key (404 when unknown). */
|
|
1252
|
+
get(key: string): Promise<PageExtension>;
|
|
1253
|
+
/**
|
|
1254
|
+
* Creates an entity extension and merges its attributes into the host.
|
|
1255
|
+
* @throws {ProteosError} 409 `entity_extension_already_exists` when the key
|
|
1256
|
+
* is taken; 400 `entity_extension_entity_not_found` when the host does
|
|
1257
|
+
* not exist; 400 `entity_extension_attribute_collision` on a name clash.
|
|
1258
|
+
*/
|
|
1259
|
+
create(request: CreatePageExtensionRequest): Promise<PageExtension>;
|
|
1260
|
+
/**
|
|
1261
|
+
* Creates or replaces an entity extension idempotently by key
|
|
1262
|
+
* (`PUT /meta/v1/page-extensions/:key`). Replaces the whole definition;
|
|
1263
|
+
* the host binding (`page_slug`) of an existing key is immutable.
|
|
1264
|
+
*/
|
|
1265
|
+
upsert(key: string, request: CreatePageExtensionRequest): Promise<PageExtension>;
|
|
1266
|
+
/** Partially updates an entity extension (`attributes` replaces the whole list). */
|
|
1267
|
+
update(key: string, request: UpdatePageExtensionRequest): Promise<PageExtension>;
|
|
1268
|
+
/** Deletes an entity extension and removes its attributes from the host. */
|
|
1269
|
+
delete(key: string): Promise<void>;
|
|
1270
|
+
}
|
|
1271
|
+
|
|
1131
1272
|
/**
|
|
1132
1273
|
* Service for managing page configurations.
|
|
1133
1274
|
* Pages define the layout and content of entity detail views.
|
|
@@ -1403,6 +1544,13 @@ interface ResponsiveSizing {
|
|
|
1403
1544
|
*/
|
|
1404
1545
|
interface CommonProps {
|
|
1405
1546
|
id?: string;
|
|
1547
|
+
/**
|
|
1548
|
+
* Server-stamped back-reference to the page extension that contributes this
|
|
1549
|
+
* element to its host page. Present only on a host's merged layout; ignored
|
|
1550
|
+
* (stripped and re-derived) on writes. Mirrors `ExtensionKey` in the Go
|
|
1551
|
+
* `metamodel.CommonProps`.
|
|
1552
|
+
*/
|
|
1553
|
+
extension_key?: string;
|
|
1406
1554
|
visible_when?: FilterGroup;
|
|
1407
1555
|
read_only_when?: FilterGroup;
|
|
1408
1556
|
width?: SizeValue;
|
|
@@ -1515,6 +1663,8 @@ type CardElement = CommonProps & {
|
|
|
1515
1663
|
*/
|
|
1516
1664
|
type LayoutTab = {
|
|
1517
1665
|
id: string;
|
|
1666
|
+
/** Page-extension stamp for a contributed tab — same contract as `CommonProps.extension_key`. */
|
|
1667
|
+
extension_key?: string;
|
|
1518
1668
|
label: string;
|
|
1519
1669
|
icon?: string;
|
|
1520
1670
|
visible_when?: FilterGroup;
|
|
@@ -1689,6 +1839,7 @@ type TextElement = CommonProps & {
|
|
|
1689
1839
|
content: string;
|
|
1690
1840
|
};
|
|
1691
1841
|
type LayoutElement = RowElement | ColumnElement | SectionElement | CardElement | TabsElement | FieldElement | RelatedListElement | RelatedRecordElement | ComponentElement | DividerElement | TextElement | RecordFilterElement | ListElement | WorkflowTriggerElement;
|
|
1842
|
+
declare const LayoutTabSchema: z.ZodType<LayoutTab>;
|
|
1692
1843
|
declare const LayoutElementSchema: z.ZodType<LayoutElement>;
|
|
1693
1844
|
|
|
1694
1845
|
/**
|
|
@@ -1853,6 +2004,26 @@ declare class MetaClient {
|
|
|
1853
2004
|
* Service for managing entity definitions.
|
|
1854
2005
|
*/
|
|
1855
2006
|
readonly entities: EntityService;
|
|
2007
|
+
/**
|
|
2008
|
+
* Service for managing entity extensions — attributes contributed to a host
|
|
2009
|
+
* entity by a resource that does not own it.
|
|
2010
|
+
*/
|
|
2011
|
+
readonly entityExtensions: EntityExtensionService;
|
|
2012
|
+
/**
|
|
2013
|
+
* Service for managing page extensions — anchored layout blocks contributed
|
|
2014
|
+
* to a host page by a resource that does not own it.
|
|
2015
|
+
*/
|
|
2016
|
+
readonly pageExtensions: PageExtensionService;
|
|
2017
|
+
/**
|
|
2018
|
+
* Service for managing list extensions — columns and toolbar actions
|
|
2019
|
+
* contributed to a host list by a resource that does not own it.
|
|
2020
|
+
*/
|
|
2021
|
+
readonly listExtensions: ListExtensionService;
|
|
2022
|
+
/**
|
|
2023
|
+
* Service for managing menu-configuration extensions — items contributed
|
|
2024
|
+
* to a host menu by another module or resource.
|
|
2025
|
+
*/
|
|
2026
|
+
readonly menuConfigurationExtensions: MenuConfigurationExtensionService;
|
|
1856
2027
|
/**
|
|
1857
2028
|
* Service for managing WebAssembly modules.
|
|
1858
2029
|
*/
|
|
@@ -1915,7 +2086,7 @@ interface MetaListOptions extends ListOptions {
|
|
|
1915
2086
|
* full set; format/structural variation lives on `Attribute.meta` (see
|
|
1916
2087
|
* `AttributeMeta` below), not on the type discriminator.
|
|
1917
2088
|
*/
|
|
1918
|
-
type AttributeType = 'string' | 'number' | 'integer' | 'boolean' | 'array' | 'object' | 'datetime' | 'enum' | 'relation' | 'user' | 'principal' | 'currency' | 'knowledge-text' | 'file';
|
|
2089
|
+
type AttributeType = 'string' | 'number' | 'integer' | 'boolean' | 'array' | 'object' | 'datetime' | 'enum' | 'relation' | 'user' | 'principal' | 'currency' | 'knowledge-text' | 'file' | 'contact-address';
|
|
1919
2090
|
/**
|
|
1920
2091
|
* Attribute-level permissions: restricting a FIELD rather than a record — a
|
|
1921
2092
|
* salary column readable only by the people team, a margin column writable only
|
|
@@ -2128,6 +2299,35 @@ declare const CurrencyAttributeMetaSchema: z.ZodObject<{
|
|
|
2128
2299
|
default_currency_code?: string | undefined;
|
|
2129
2300
|
allowed_currency_codes?: string[] | undefined;
|
|
2130
2301
|
}>;
|
|
2302
|
+
/**
|
|
2303
|
+
* Which endpoint a `contact-address` attribute holds. The record-capable
|
|
2304
|
+
* subset of the conversation contact-address kinds — what a human types.
|
|
2305
|
+
*/
|
|
2306
|
+
type ContactAddressAttributeKind = 'email' | 'phone' | 'linkedin_public_identifier';
|
|
2307
|
+
/**
|
|
2308
|
+
* Metadata for a `contact-address`-typed attribute: ONE canonical reachable
|
|
2309
|
+
* address of the person the record represents. The stored value is a plain
|
|
2310
|
+
* string canonicalized on write (lowercased email, E.164 phone with a leading
|
|
2311
|
+
* `+`, LinkedIn public identifier — a pasted profile URL is reduced to its
|
|
2312
|
+
* `/in/<slug>`; displayed as https://www.linkedin.com/in/<slug>; LinkedIn
|
|
2313
|
+
* profile ids such as ACoAA… are refused — the platform learns them itself).
|
|
2314
|
+
* Records carrying such values bind to exactly one conversation contact;
|
|
2315
|
+
* `kind` is REQUIRED. Mirror of the Go `metamodel.ContactAddressAttributeMeta`.
|
|
2316
|
+
*/
|
|
2317
|
+
interface ContactAddressAttributeMeta {
|
|
2318
|
+
kind: ContactAddressAttributeKind;
|
|
2319
|
+
description?: string;
|
|
2320
|
+
}
|
|
2321
|
+
declare const ContactAddressAttributeMetaSchema: z.ZodObject<{
|
|
2322
|
+
kind: z.ZodEnum<["email", "phone", "linkedin_public_identifier"]>;
|
|
2323
|
+
description: z.ZodOptional<z.ZodString>;
|
|
2324
|
+
}, "strip", z.ZodTypeAny, {
|
|
2325
|
+
kind: "email" | "phone" | "linkedin_public_identifier";
|
|
2326
|
+
description?: string | undefined;
|
|
2327
|
+
}, {
|
|
2328
|
+
kind: "email" | "phone" | "linkedin_public_identifier";
|
|
2329
|
+
description?: string | undefined;
|
|
2330
|
+
}>;
|
|
2131
2331
|
/**
|
|
2132
2332
|
* Metadata for a `knowledge-text`-typed attribute. The value is a
|
|
2133
2333
|
* {@link KnowledgeNodeRef}; the data-service materializes client-sent text
|
|
@@ -2166,7 +2366,7 @@ declare const FileAttributeMetaSchema: z.ZodObject<{
|
|
|
2166
2366
|
* appropriate shape based on `Attribute.type`; runtime consumers can
|
|
2167
2367
|
* narrow via the `type` field.
|
|
2168
2368
|
*/
|
|
2169
|
-
type AttributeMeta = StringAttributeMeta | NumberAttributeMeta | DatetimeAttributeMeta | ArrayAttributeMeta | ObjectAttributeMeta | EnumAttributeMeta | RelationAttributeMeta | UserAttributeMeta | PrincipalAttributeMeta | CurrencyAttributeMeta | KnowledgeTextAttributeMeta | FileAttributeMeta;
|
|
2369
|
+
type AttributeMeta = StringAttributeMeta | NumberAttributeMeta | DatetimeAttributeMeta | ArrayAttributeMeta | ObjectAttributeMeta | EnumAttributeMeta | RelationAttributeMeta | UserAttributeMeta | PrincipalAttributeMeta | CurrencyAttributeMeta | KnowledgeTextAttributeMeta | FileAttributeMeta | ContactAddressAttributeMeta;
|
|
2170
2370
|
/**
|
|
2171
2371
|
* Entity attribute definition. Mirrors `model.Attribute` in the Go SDK.
|
|
2172
2372
|
*/
|
|
@@ -2186,6 +2386,13 @@ interface Attribute {
|
|
|
2186
2386
|
* Mirrors `IsPlatformManaged` in the Go `metamodel.Attribute`.
|
|
2187
2387
|
*/
|
|
2188
2388
|
is_platform_managed?: boolean;
|
|
2389
|
+
/**
|
|
2390
|
+
* Server-stamped back-reference to the entity extension that contributes
|
|
2391
|
+
* this attribute to its host entity. Present only on a host's merged
|
|
2392
|
+
* attribute list; ignored (stripped and re-derived) on writes. Mirrors
|
|
2393
|
+
* `ExtensionKey` in the Go `metamodel.Attribute`.
|
|
2394
|
+
*/
|
|
2395
|
+
extension_key?: string;
|
|
2189
2396
|
/**
|
|
2190
2397
|
* Attribute-level permissions. Absent means unrestricted (today's behaviour).
|
|
2191
2398
|
* Platform-managed attributes cannot carry restrictions.
|
|
@@ -2230,6 +2437,7 @@ declare const AttributeSchema: z.ZodObject<{
|
|
|
2230
2437
|
is_nullable: z.ZodOptional<z.ZodBoolean>;
|
|
2231
2438
|
is_unique: z.ZodBoolean;
|
|
2232
2439
|
is_read_only: z.ZodOptional<z.ZodBoolean>;
|
|
2440
|
+
extension_key: z.ZodOptional<z.ZodString>;
|
|
2233
2441
|
restrictions: z.ZodOptional<z.ZodObject<{
|
|
2234
2442
|
read: z.ZodOptional<z.ZodObject<{
|
|
2235
2443
|
roles: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
@@ -2281,6 +2489,7 @@ declare const AttributeSchema: z.ZodObject<{
|
|
|
2281
2489
|
is_unique: boolean;
|
|
2282
2490
|
options?: Record<string, unknown> | undefined;
|
|
2283
2491
|
meta?: unknown;
|
|
2492
|
+
extension_key?: string | undefined;
|
|
2284
2493
|
description?: string | undefined;
|
|
2285
2494
|
is_read_only?: boolean | undefined;
|
|
2286
2495
|
is_nullable?: boolean | undefined;
|
|
@@ -2303,6 +2512,7 @@ declare const AttributeSchema: z.ZodObject<{
|
|
|
2303
2512
|
is_unique: boolean;
|
|
2304
2513
|
options?: Record<string, unknown> | undefined;
|
|
2305
2514
|
meta?: unknown;
|
|
2515
|
+
extension_key?: string | undefined;
|
|
2306
2516
|
description?: string | undefined;
|
|
2307
2517
|
is_read_only?: boolean | undefined;
|
|
2308
2518
|
is_nullable?: boolean | undefined;
|
|
@@ -2344,6 +2554,13 @@ declare function parseUserMeta(attr: Attribute): UserAttributeMeta | null;
|
|
|
2344
2554
|
* with no meta still resolves to an empty `{}` rather than null.
|
|
2345
2555
|
*/
|
|
2346
2556
|
declare function parseFileMeta(attr: Attribute): FileAttributeMeta | null;
|
|
2557
|
+
/**
|
|
2558
|
+
* Returns the typed `ContactAddressAttributeMeta` when `attr` is a
|
|
2559
|
+
* contact-address attribute with a valid kind; null otherwise. Unlike the
|
|
2560
|
+
* `{}`-defaulting parsers, `kind` is required — an attribute without one
|
|
2561
|
+
* cannot be canonicalized, so it resolves to null (shape of parseRelationMeta).
|
|
2562
|
+
*/
|
|
2563
|
+
declare function parseContactAddressMeta(attr: Attribute): ContactAddressAttributeMeta | null;
|
|
2347
2564
|
/**
|
|
2348
2565
|
* A single operation a resource may be publicly exposed for. Independent set
|
|
2349
2566
|
* (not a level): a resource can be public for `write` without `read`. Only
|
|
@@ -2354,6 +2571,28 @@ type PublicAccessOperation = 'read' | 'write' | 'delete';
|
|
|
2354
2571
|
* Entity definition.
|
|
2355
2572
|
* Note: Entity uses `slug` as its primary identifier, not `id`.
|
|
2356
2573
|
*/
|
|
2574
|
+
/**
|
|
2575
|
+
* What happens when a record's contact-address value already belongs to a
|
|
2576
|
+
* contact linked to ANOTHER record of the same entity: `reject` fails the
|
|
2577
|
+
* write (409 `record_duplicate`); `flag` (default) accepts it and raises a
|
|
2578
|
+
* record duplicate pair for review.
|
|
2579
|
+
*/
|
|
2580
|
+
type ContactBindingDuplicatePolicy = 'reject' | 'flag';
|
|
2581
|
+
/**
|
|
2582
|
+
* The entity-level contact-binding setting — meaningful only for entities
|
|
2583
|
+
* with `contact-address` attributes; absent on the wire means `flag`. Mirror
|
|
2584
|
+
* of the Go `metamodel.ContactBinding`.
|
|
2585
|
+
*/
|
|
2586
|
+
interface EntityContactBinding {
|
|
2587
|
+
duplicate_policy: ContactBindingDuplicatePolicy;
|
|
2588
|
+
}
|
|
2589
|
+
declare const EntityContactBindingSchema: z.ZodObject<{
|
|
2590
|
+
duplicate_policy: z.ZodEnum<["reject", "flag"]>;
|
|
2591
|
+
}, "strip", z.ZodTypeAny, {
|
|
2592
|
+
duplicate_policy: "reject" | "flag";
|
|
2593
|
+
}, {
|
|
2594
|
+
duplicate_policy: "reject" | "flag";
|
|
2595
|
+
}>;
|
|
2357
2596
|
interface Entity extends AuditFields {
|
|
2358
2597
|
slug: string;
|
|
2359
2598
|
name: string;
|
|
@@ -2367,6 +2606,11 @@ interface Entity extends AuditFields {
|
|
|
2367
2606
|
* (default).
|
|
2368
2607
|
*/
|
|
2369
2608
|
public_record_access: PublicAccessOperation[];
|
|
2609
|
+
/**
|
|
2610
|
+
* Contact-binding setting (see `EntityContactBinding`). Optional: a Go
|
|
2611
|
+
* build that predates the setting omits it, which means `flag`.
|
|
2612
|
+
*/
|
|
2613
|
+
contact_binding?: EntityContactBinding;
|
|
2370
2614
|
module_slug: string;
|
|
2371
2615
|
/**
|
|
2372
2616
|
* Liquid template that renders a human-readable title for an instance
|
|
@@ -2409,6 +2653,13 @@ declare const EntitySchema: z.ZodObject<{
|
|
|
2409
2653
|
description: z.ZodString;
|
|
2410
2654
|
is_remote: z.ZodBoolean;
|
|
2411
2655
|
public_record_access: z.ZodDefault<z.ZodArray<z.ZodEnum<["read", "write", "delete"]>, "many">>;
|
|
2656
|
+
contact_binding: z.ZodOptional<z.ZodObject<{
|
|
2657
|
+
duplicate_policy: z.ZodEnum<["reject", "flag"]>;
|
|
2658
|
+
}, "strip", z.ZodTypeAny, {
|
|
2659
|
+
duplicate_policy: "reject" | "flag";
|
|
2660
|
+
}, {
|
|
2661
|
+
duplicate_policy: "reject" | "flag";
|
|
2662
|
+
}>>;
|
|
2412
2663
|
module_slug: z.ZodString;
|
|
2413
2664
|
title_template: z.ZodDefault<z.ZodString>;
|
|
2414
2665
|
attributes: z.ZodArray<z.ZodObject<{
|
|
@@ -2420,6 +2671,7 @@ declare const EntitySchema: z.ZodObject<{
|
|
|
2420
2671
|
is_nullable: z.ZodOptional<z.ZodBoolean>;
|
|
2421
2672
|
is_unique: z.ZodBoolean;
|
|
2422
2673
|
is_read_only: z.ZodOptional<z.ZodBoolean>;
|
|
2674
|
+
extension_key: z.ZodOptional<z.ZodString>;
|
|
2423
2675
|
restrictions: z.ZodOptional<z.ZodObject<{
|
|
2424
2676
|
read: z.ZodOptional<z.ZodObject<{
|
|
2425
2677
|
roles: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
@@ -2471,6 +2723,7 @@ declare const EntitySchema: z.ZodObject<{
|
|
|
2471
2723
|
is_unique: boolean;
|
|
2472
2724
|
options?: Record<string, unknown> | undefined;
|
|
2473
2725
|
meta?: unknown;
|
|
2726
|
+
extension_key?: string | undefined;
|
|
2474
2727
|
description?: string | undefined;
|
|
2475
2728
|
is_read_only?: boolean | undefined;
|
|
2476
2729
|
is_nullable?: boolean | undefined;
|
|
@@ -2493,6 +2746,7 @@ declare const EntitySchema: z.ZodObject<{
|
|
|
2493
2746
|
is_unique: boolean;
|
|
2494
2747
|
options?: Record<string, unknown> | undefined;
|
|
2495
2748
|
meta?: unknown;
|
|
2749
|
+
extension_key?: string | undefined;
|
|
2496
2750
|
description?: string | undefined;
|
|
2497
2751
|
is_read_only?: boolean | undefined;
|
|
2498
2752
|
is_nullable?: boolean | undefined;
|
|
@@ -2529,6 +2783,7 @@ declare const EntitySchema: z.ZodObject<{
|
|
|
2529
2783
|
is_unique: boolean;
|
|
2530
2784
|
options?: Record<string, unknown> | undefined;
|
|
2531
2785
|
meta?: unknown;
|
|
2786
|
+
extension_key?: string | undefined;
|
|
2532
2787
|
description?: string | undefined;
|
|
2533
2788
|
is_read_only?: boolean | undefined;
|
|
2534
2789
|
is_nullable?: boolean | undefined;
|
|
@@ -2549,6 +2804,9 @@ declare const EntitySchema: z.ZodObject<{
|
|
|
2549
2804
|
public_record_access: ("read" | "write" | "delete")[];
|
|
2550
2805
|
module_slug: string;
|
|
2551
2806
|
title_template: string;
|
|
2807
|
+
contact_binding?: {
|
|
2808
|
+
duplicate_policy: "reject" | "flag";
|
|
2809
|
+
} | undefined;
|
|
2552
2810
|
}, {
|
|
2553
2811
|
name: string;
|
|
2554
2812
|
created_at: string;
|
|
@@ -2570,6 +2828,7 @@ declare const EntitySchema: z.ZodObject<{
|
|
|
2570
2828
|
is_unique: boolean;
|
|
2571
2829
|
options?: Record<string, unknown> | undefined;
|
|
2572
2830
|
meta?: unknown;
|
|
2831
|
+
extension_key?: string | undefined;
|
|
2573
2832
|
description?: string | undefined;
|
|
2574
2833
|
is_read_only?: boolean | undefined;
|
|
2575
2834
|
is_nullable?: boolean | undefined;
|
|
@@ -2589,6 +2848,9 @@ declare const EntitySchema: z.ZodObject<{
|
|
|
2589
2848
|
is_remote: boolean;
|
|
2590
2849
|
module_slug: string;
|
|
2591
2850
|
public_record_access?: ("read" | "write" | "delete")[] | undefined;
|
|
2851
|
+
contact_binding?: {
|
|
2852
|
+
duplicate_policy: "reject" | "flag";
|
|
2853
|
+
} | undefined;
|
|
2592
2854
|
title_template?: string | undefined;
|
|
2593
2855
|
}>;
|
|
2594
2856
|
/**
|
|
@@ -2626,6 +2888,13 @@ declare const EntityWithSchemaSchema: z.ZodObject<{
|
|
|
2626
2888
|
description: z.ZodString;
|
|
2627
2889
|
is_remote: z.ZodBoolean;
|
|
2628
2890
|
public_record_access: z.ZodDefault<z.ZodArray<z.ZodEnum<["read", "write", "delete"]>, "many">>;
|
|
2891
|
+
contact_binding: z.ZodOptional<z.ZodObject<{
|
|
2892
|
+
duplicate_policy: z.ZodEnum<["reject", "flag"]>;
|
|
2893
|
+
}, "strip", z.ZodTypeAny, {
|
|
2894
|
+
duplicate_policy: "reject" | "flag";
|
|
2895
|
+
}, {
|
|
2896
|
+
duplicate_policy: "reject" | "flag";
|
|
2897
|
+
}>>;
|
|
2629
2898
|
module_slug: z.ZodString;
|
|
2630
2899
|
title_template: z.ZodDefault<z.ZodString>;
|
|
2631
2900
|
attributes: z.ZodArray<z.ZodObject<{
|
|
@@ -2637,6 +2906,7 @@ declare const EntityWithSchemaSchema: z.ZodObject<{
|
|
|
2637
2906
|
is_nullable: z.ZodOptional<z.ZodBoolean>;
|
|
2638
2907
|
is_unique: z.ZodBoolean;
|
|
2639
2908
|
is_read_only: z.ZodOptional<z.ZodBoolean>;
|
|
2909
|
+
extension_key: z.ZodOptional<z.ZodString>;
|
|
2640
2910
|
restrictions: z.ZodOptional<z.ZodObject<{
|
|
2641
2911
|
read: z.ZodOptional<z.ZodObject<{
|
|
2642
2912
|
roles: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
@@ -2688,6 +2958,7 @@ declare const EntityWithSchemaSchema: z.ZodObject<{
|
|
|
2688
2958
|
is_unique: boolean;
|
|
2689
2959
|
options?: Record<string, unknown> | undefined;
|
|
2690
2960
|
meta?: unknown;
|
|
2961
|
+
extension_key?: string | undefined;
|
|
2691
2962
|
description?: string | undefined;
|
|
2692
2963
|
is_read_only?: boolean | undefined;
|
|
2693
2964
|
is_nullable?: boolean | undefined;
|
|
@@ -2710,6 +2981,7 @@ declare const EntityWithSchemaSchema: z.ZodObject<{
|
|
|
2710
2981
|
is_unique: boolean;
|
|
2711
2982
|
options?: Record<string, unknown> | undefined;
|
|
2712
2983
|
meta?: unknown;
|
|
2984
|
+
extension_key?: string | undefined;
|
|
2713
2985
|
description?: string | undefined;
|
|
2714
2986
|
is_read_only?: boolean | undefined;
|
|
2715
2987
|
is_nullable?: boolean | undefined;
|
|
@@ -2748,6 +3020,7 @@ declare const EntityWithSchemaSchema: z.ZodObject<{
|
|
|
2748
3020
|
is_unique: boolean;
|
|
2749
3021
|
options?: Record<string, unknown> | undefined;
|
|
2750
3022
|
meta?: unknown;
|
|
3023
|
+
extension_key?: string | undefined;
|
|
2751
3024
|
description?: string | undefined;
|
|
2752
3025
|
is_read_only?: boolean | undefined;
|
|
2753
3026
|
is_nullable?: boolean | undefined;
|
|
@@ -2769,6 +3042,9 @@ declare const EntityWithSchemaSchema: z.ZodObject<{
|
|
|
2769
3042
|
module_slug: string;
|
|
2770
3043
|
title_template: string;
|
|
2771
3044
|
schema: Record<string, unknown>;
|
|
3045
|
+
contact_binding?: {
|
|
3046
|
+
duplicate_policy: "reject" | "flag";
|
|
3047
|
+
} | undefined;
|
|
2772
3048
|
}, {
|
|
2773
3049
|
name: string;
|
|
2774
3050
|
created_at: string;
|
|
@@ -2790,6 +3066,7 @@ declare const EntityWithSchemaSchema: z.ZodObject<{
|
|
|
2790
3066
|
is_unique: boolean;
|
|
2791
3067
|
options?: Record<string, unknown> | undefined;
|
|
2792
3068
|
meta?: unknown;
|
|
3069
|
+
extension_key?: string | undefined;
|
|
2793
3070
|
description?: string | undefined;
|
|
2794
3071
|
is_read_only?: boolean | undefined;
|
|
2795
3072
|
is_nullable?: boolean | undefined;
|
|
@@ -2810,6 +3087,9 @@ declare const EntityWithSchemaSchema: z.ZodObject<{
|
|
|
2810
3087
|
module_slug: string;
|
|
2811
3088
|
schema: Record<string, unknown>;
|
|
2812
3089
|
public_record_access?: ("read" | "write" | "delete")[] | undefined;
|
|
3090
|
+
contact_binding?: {
|
|
3091
|
+
duplicate_policy: "reject" | "flag";
|
|
3092
|
+
} | undefined;
|
|
2813
3093
|
title_template?: string | undefined;
|
|
2814
3094
|
}>;
|
|
2815
3095
|
/**
|
|
@@ -2834,6 +3114,10 @@ interface CreateEntityRequest {
|
|
|
2834
3114
|
* the field resets it to private.
|
|
2835
3115
|
*/
|
|
2836
3116
|
public_record_access?: PublicAccessOperation[];
|
|
3117
|
+
/**
|
|
3118
|
+
* Contact-binding setting; full-replacement on upsert (omitted = `flag`).
|
|
3119
|
+
*/
|
|
3120
|
+
contact_binding?: EntityContactBinding;
|
|
2837
3121
|
module_slug: string;
|
|
2838
3122
|
description: string;
|
|
2839
3123
|
title_template?: string;
|
|
@@ -2846,6 +3130,7 @@ interface UpdateEntityRequest {
|
|
|
2846
3130
|
name?: string;
|
|
2847
3131
|
is_remote?: boolean;
|
|
2848
3132
|
public_record_access?: PublicAccessOperation[];
|
|
3133
|
+
contact_binding?: EntityContactBinding;
|
|
2849
3134
|
module_slug?: string;
|
|
2850
3135
|
description?: string;
|
|
2851
3136
|
title_template?: string;
|
|
@@ -3205,6 +3490,12 @@ interface Column {
|
|
|
3205
3490
|
attribute: string;
|
|
3206
3491
|
label: string;
|
|
3207
3492
|
width: number;
|
|
3493
|
+
/**
|
|
3494
|
+
* Server-stamped back-reference to the list extension that contributes this
|
|
3495
|
+
* column to its host list. Present only on a host's merged column list;
|
|
3496
|
+
* ignored (stripped and re-derived) on writes.
|
|
3497
|
+
*/
|
|
3498
|
+
extension_key?: string;
|
|
3208
3499
|
}
|
|
3209
3500
|
/**
|
|
3210
3501
|
* Sort direction.
|
|
@@ -3244,6 +3535,8 @@ interface PageAction {
|
|
|
3244
3535
|
params?: Record<string, string>;
|
|
3245
3536
|
inputs?: Record<string, string>;
|
|
3246
3537
|
skip_confirmation?: boolean;
|
|
3538
|
+
/** List-extension stamp on a toolbar action a list extension appended to its host list. */
|
|
3539
|
+
extension_key?: string;
|
|
3247
3540
|
}
|
|
3248
3541
|
declare const PageActionSchema: z.ZodObject<{
|
|
3249
3542
|
label: z.ZodString;
|
|
@@ -3254,24 +3547,27 @@ declare const PageActionSchema: z.ZodObject<{
|
|
|
3254
3547
|
params: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
|
|
3255
3548
|
inputs: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
|
|
3256
3549
|
skip_confirmation: z.ZodOptional<z.ZodBoolean>;
|
|
3550
|
+
extension_key: z.ZodOptional<z.ZodString>;
|
|
3257
3551
|
}, "strip", z.ZodTypeAny, {
|
|
3258
3552
|
label: string;
|
|
3259
3553
|
icon: string;
|
|
3260
3554
|
params?: Record<string, string> | undefined;
|
|
3555
|
+
extension_key?: string | undefined;
|
|
3261
3556
|
workflow?: string | undefined;
|
|
3262
3557
|
inputs?: Record<string, string> | undefined;
|
|
3263
3558
|
skip_confirmation?: boolean | undefined;
|
|
3264
|
-
action?: string | undefined;
|
|
3265
3559
|
kind?: "workflow" | "action" | undefined;
|
|
3560
|
+
action?: string | undefined;
|
|
3266
3561
|
}, {
|
|
3267
3562
|
label: string;
|
|
3268
3563
|
icon: string;
|
|
3269
3564
|
params?: Record<string, string> | undefined;
|
|
3565
|
+
extension_key?: string | undefined;
|
|
3270
3566
|
workflow?: string | undefined;
|
|
3271
3567
|
inputs?: Record<string, string> | undefined;
|
|
3272
3568
|
skip_confirmation?: boolean | undefined;
|
|
3273
|
-
action?: string | undefined;
|
|
3274
3569
|
kind?: "workflow" | "action" | undefined;
|
|
3570
|
+
action?: string | undefined;
|
|
3275
3571
|
}>;
|
|
3276
3572
|
/**
|
|
3277
3573
|
* Whether a list's rows can be checked, and whether the checkboxes show from
|
|
@@ -3310,14 +3606,17 @@ declare const ColumnSchema: z.ZodObject<{
|
|
|
3310
3606
|
attribute: z.ZodString;
|
|
3311
3607
|
label: z.ZodString;
|
|
3312
3608
|
width: z.ZodNumber;
|
|
3609
|
+
extension_key: z.ZodOptional<z.ZodString>;
|
|
3313
3610
|
}, "strip", z.ZodTypeAny, {
|
|
3314
3611
|
width: number;
|
|
3315
3612
|
label: string;
|
|
3316
3613
|
attribute: string;
|
|
3614
|
+
extension_key?: string | undefined;
|
|
3317
3615
|
}, {
|
|
3318
3616
|
width: number;
|
|
3319
3617
|
label: string;
|
|
3320
3618
|
attribute: string;
|
|
3619
|
+
extension_key?: string | undefined;
|
|
3321
3620
|
}>;
|
|
3322
3621
|
declare const SortConfigSchema: z.ZodObject<{
|
|
3323
3622
|
attribute: z.ZodString;
|
|
@@ -3361,14 +3660,17 @@ declare const ListSchema: z.ZodObject<{
|
|
|
3361
3660
|
attribute: z.ZodString;
|
|
3362
3661
|
label: z.ZodString;
|
|
3363
3662
|
width: z.ZodNumber;
|
|
3663
|
+
extension_key: z.ZodOptional<z.ZodString>;
|
|
3364
3664
|
}, "strip", z.ZodTypeAny, {
|
|
3365
3665
|
width: number;
|
|
3366
3666
|
label: string;
|
|
3367
3667
|
attribute: string;
|
|
3668
|
+
extension_key?: string | undefined;
|
|
3368
3669
|
}, {
|
|
3369
3670
|
width: number;
|
|
3370
3671
|
label: string;
|
|
3371
3672
|
attribute: string;
|
|
3673
|
+
extension_key?: string | undefined;
|
|
3372
3674
|
}>, "many">;
|
|
3373
3675
|
actions: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
3374
3676
|
label: z.ZodString;
|
|
@@ -3379,24 +3681,27 @@ declare const ListSchema: z.ZodObject<{
|
|
|
3379
3681
|
params: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
|
|
3380
3682
|
inputs: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
|
|
3381
3683
|
skip_confirmation: z.ZodOptional<z.ZodBoolean>;
|
|
3684
|
+
extension_key: z.ZodOptional<z.ZodString>;
|
|
3382
3685
|
}, "strip", z.ZodTypeAny, {
|
|
3383
3686
|
label: string;
|
|
3384
3687
|
icon: string;
|
|
3385
3688
|
params?: Record<string, string> | undefined;
|
|
3689
|
+
extension_key?: string | undefined;
|
|
3386
3690
|
workflow?: string | undefined;
|
|
3387
3691
|
inputs?: Record<string, string> | undefined;
|
|
3388
3692
|
skip_confirmation?: boolean | undefined;
|
|
3389
|
-
action?: string | undefined;
|
|
3390
3693
|
kind?: "workflow" | "action" | undefined;
|
|
3694
|
+
action?: string | undefined;
|
|
3391
3695
|
}, {
|
|
3392
3696
|
label: string;
|
|
3393
3697
|
icon: string;
|
|
3394
3698
|
params?: Record<string, string> | undefined;
|
|
3699
|
+
extension_key?: string | undefined;
|
|
3395
3700
|
workflow?: string | undefined;
|
|
3396
3701
|
inputs?: Record<string, string> | undefined;
|
|
3397
3702
|
skip_confirmation?: boolean | undefined;
|
|
3398
|
-
action?: string | undefined;
|
|
3399
3703
|
kind?: "workflow" | "action" | undefined;
|
|
3704
|
+
action?: string | undefined;
|
|
3400
3705
|
}>, "many">>;
|
|
3401
3706
|
selection_mode: z.ZodOptional<z.ZodEnum<["on_demand", "always", "off"]>>;
|
|
3402
3707
|
sorting: z.ZodArray<z.ZodObject<{
|
|
@@ -3429,6 +3734,7 @@ declare const ListSchema: z.ZodObject<{
|
|
|
3429
3734
|
width: number;
|
|
3430
3735
|
label: string;
|
|
3431
3736
|
attribute: string;
|
|
3737
|
+
extension_key?: string | undefined;
|
|
3432
3738
|
}[];
|
|
3433
3739
|
sorting: {
|
|
3434
3740
|
attribute: string;
|
|
@@ -3439,11 +3745,12 @@ declare const ListSchema: z.ZodObject<{
|
|
|
3439
3745
|
label: string;
|
|
3440
3746
|
icon: string;
|
|
3441
3747
|
params?: Record<string, string> | undefined;
|
|
3748
|
+
extension_key?: string | undefined;
|
|
3442
3749
|
workflow?: string | undefined;
|
|
3443
3750
|
inputs?: Record<string, string> | undefined;
|
|
3444
3751
|
skip_confirmation?: boolean | undefined;
|
|
3445
|
-
action?: string | undefined;
|
|
3446
3752
|
kind?: "workflow" | "action" | undefined;
|
|
3753
|
+
action?: string | undefined;
|
|
3447
3754
|
}[] | undefined;
|
|
3448
3755
|
selection_mode?: "on_demand" | "always" | "off" | undefined;
|
|
3449
3756
|
}, {
|
|
@@ -3465,6 +3772,7 @@ declare const ListSchema: z.ZodObject<{
|
|
|
3465
3772
|
width: number;
|
|
3466
3773
|
label: string;
|
|
3467
3774
|
attribute: string;
|
|
3775
|
+
extension_key?: string | undefined;
|
|
3468
3776
|
}[];
|
|
3469
3777
|
sorting: {
|
|
3470
3778
|
attribute: string;
|
|
@@ -3475,11 +3783,12 @@ declare const ListSchema: z.ZodObject<{
|
|
|
3475
3783
|
label: string;
|
|
3476
3784
|
icon: string;
|
|
3477
3785
|
params?: Record<string, string> | undefined;
|
|
3786
|
+
extension_key?: string | undefined;
|
|
3478
3787
|
workflow?: string | undefined;
|
|
3479
3788
|
inputs?: Record<string, string> | undefined;
|
|
3480
3789
|
skip_confirmation?: boolean | undefined;
|
|
3481
|
-
action?: string | undefined;
|
|
3482
3790
|
kind?: "workflow" | "action" | undefined;
|
|
3791
|
+
action?: string | undefined;
|
|
3483
3792
|
}[] | undefined;
|
|
3484
3793
|
selection_mode?: "on_demand" | "always" | "off" | undefined;
|
|
3485
3794
|
}>;
|
|
@@ -3565,14 +3874,17 @@ declare const ListViewSchema: z.ZodObject<{
|
|
|
3565
3874
|
attribute: z.ZodString;
|
|
3566
3875
|
label: z.ZodString;
|
|
3567
3876
|
width: z.ZodNumber;
|
|
3877
|
+
extension_key: z.ZodOptional<z.ZodString>;
|
|
3568
3878
|
}, "strip", z.ZodTypeAny, {
|
|
3569
3879
|
width: number;
|
|
3570
3880
|
label: string;
|
|
3571
3881
|
attribute: string;
|
|
3882
|
+
extension_key?: string | undefined;
|
|
3572
3883
|
}, {
|
|
3573
3884
|
width: number;
|
|
3574
3885
|
label: string;
|
|
3575
3886
|
attribute: string;
|
|
3887
|
+
extension_key?: string | undefined;
|
|
3576
3888
|
}>, "many">;
|
|
3577
3889
|
sorting: z.ZodArray<z.ZodObject<{
|
|
3578
3890
|
attribute: z.ZodString;
|
|
@@ -3604,6 +3916,7 @@ declare const ListViewSchema: z.ZodObject<{
|
|
|
3604
3916
|
width: number;
|
|
3605
3917
|
label: string;
|
|
3606
3918
|
attribute: string;
|
|
3919
|
+
extension_key?: string | undefined;
|
|
3607
3920
|
}[];
|
|
3608
3921
|
sorting: {
|
|
3609
3922
|
attribute: string;
|
|
@@ -3629,6 +3942,7 @@ declare const ListViewSchema: z.ZodObject<{
|
|
|
3629
3942
|
width: number;
|
|
3630
3943
|
label: string;
|
|
3631
3944
|
attribute: string;
|
|
3945
|
+
extension_key?: string | undefined;
|
|
3632
3946
|
}[];
|
|
3633
3947
|
sorting: {
|
|
3634
3948
|
attribute: string;
|
|
@@ -3737,24 +4051,27 @@ declare const PageSchema: z.ZodObject<{
|
|
|
3737
4051
|
params: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
|
|
3738
4052
|
inputs: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
|
|
3739
4053
|
skip_confirmation: z.ZodOptional<z.ZodBoolean>;
|
|
4054
|
+
extension_key: z.ZodOptional<z.ZodString>;
|
|
3740
4055
|
}, "strip", z.ZodTypeAny, {
|
|
3741
4056
|
label: string;
|
|
3742
4057
|
icon: string;
|
|
3743
4058
|
params?: Record<string, string> | undefined;
|
|
4059
|
+
extension_key?: string | undefined;
|
|
3744
4060
|
workflow?: string | undefined;
|
|
3745
4061
|
inputs?: Record<string, string> | undefined;
|
|
3746
4062
|
skip_confirmation?: boolean | undefined;
|
|
3747
|
-
action?: string | undefined;
|
|
3748
4063
|
kind?: "workflow" | "action" | undefined;
|
|
4064
|
+
action?: string | undefined;
|
|
3749
4065
|
}, {
|
|
3750
4066
|
label: string;
|
|
3751
4067
|
icon: string;
|
|
3752
4068
|
params?: Record<string, string> | undefined;
|
|
4069
|
+
extension_key?: string | undefined;
|
|
3753
4070
|
workflow?: string | undefined;
|
|
3754
4071
|
inputs?: Record<string, string> | undefined;
|
|
3755
4072
|
skip_confirmation?: boolean | undefined;
|
|
3756
|
-
action?: string | undefined;
|
|
3757
4073
|
kind?: "workflow" | "action" | undefined;
|
|
4074
|
+
action?: string | undefined;
|
|
3758
4075
|
}>, "many">;
|
|
3759
4076
|
layout: z.ZodObject<{
|
|
3760
4077
|
version: z.ZodLiteral<1>;
|
|
@@ -3836,11 +4153,12 @@ declare const PageSchema: z.ZodObject<{
|
|
|
3836
4153
|
label: string;
|
|
3837
4154
|
icon: string;
|
|
3838
4155
|
params?: Record<string, string> | undefined;
|
|
4156
|
+
extension_key?: string | undefined;
|
|
3839
4157
|
workflow?: string | undefined;
|
|
3840
4158
|
inputs?: Record<string, string> | undefined;
|
|
3841
4159
|
skip_confirmation?: boolean | undefined;
|
|
3842
|
-
action?: string | undefined;
|
|
3843
4160
|
kind?: "workflow" | "action" | undefined;
|
|
4161
|
+
action?: string | undefined;
|
|
3844
4162
|
}[];
|
|
3845
4163
|
layout: {
|
|
3846
4164
|
version: 1;
|
|
@@ -3877,11 +4195,12 @@ declare const PageSchema: z.ZodObject<{
|
|
|
3877
4195
|
label: string;
|
|
3878
4196
|
icon: string;
|
|
3879
4197
|
params?: Record<string, string> | undefined;
|
|
4198
|
+
extension_key?: string | undefined;
|
|
3880
4199
|
workflow?: string | undefined;
|
|
3881
4200
|
inputs?: Record<string, string> | undefined;
|
|
3882
4201
|
skip_confirmation?: boolean | undefined;
|
|
3883
|
-
action?: string | undefined;
|
|
3884
4202
|
kind?: "workflow" | "action" | undefined;
|
|
4203
|
+
action?: string | undefined;
|
|
3885
4204
|
}[];
|
|
3886
4205
|
layout: {
|
|
3887
4206
|
version: 1;
|
|
@@ -3967,6 +4286,7 @@ type MenuItemType = (typeof MenuItemType)[keyof typeof MenuItemType];
|
|
|
3967
4286
|
* Menu item definition. Matches the backend JSON shape for nested menus.
|
|
3968
4287
|
*/
|
|
3969
4288
|
interface MenuItem {
|
|
4289
|
+
/** Stable within the menu; the menu's extension API (menu-configuration extensions anchor on it). */
|
|
3970
4290
|
id: string;
|
|
3971
4291
|
order: number;
|
|
3972
4292
|
label: string;
|
|
@@ -3974,6 +4294,12 @@ interface MenuItem {
|
|
|
3974
4294
|
icon: string;
|
|
3975
4295
|
reference?: string;
|
|
3976
4296
|
children: MenuItem[] | null;
|
|
4297
|
+
/** Server stamp: the item was contributed by this menu-configuration extension. Never authored. */
|
|
4298
|
+
extension_key?: string;
|
|
4299
|
+
/** Server stamp: a `remove` tombstone — consumers skip the item. Never authored. */
|
|
4300
|
+
is_hidden?: boolean;
|
|
4301
|
+
/** Server stamp: the host's own item this stamped item displaced (`replace` / `remove`). Never authored. */
|
|
4302
|
+
replaced_item?: MenuItem;
|
|
3977
4303
|
}
|
|
3978
4304
|
/**
|
|
3979
4305
|
* Menu configuration.
|
|
@@ -4082,49 +4408,26 @@ interface UpdateMenuConfigurationRequest {
|
|
|
4082
4408
|
items?: MenuItem[];
|
|
4083
4409
|
is_default?: boolean;
|
|
4084
4410
|
}
|
|
4085
|
-
/** What an app opens on: a list (records table) or a platform page. */
|
|
4086
|
-
type AppHomeType = 'list' | 'page';
|
|
4087
|
-
interface AppHome {
|
|
4088
|
-
type: AppHomeType;
|
|
4089
|
-
reference: string;
|
|
4090
|
-
}
|
|
4091
|
-
declare const AppHomeSchema: z.ZodObject<{
|
|
4092
|
-
type: z.ZodEnum<["list", "page"]>;
|
|
4093
|
-
reference: z.ZodString;
|
|
4094
|
-
}, "strip", z.ZodTypeAny, {
|
|
4095
|
-
type: "page" | "list";
|
|
4096
|
-
reference: string;
|
|
4097
|
-
}, {
|
|
4098
|
-
type: "page" | "list";
|
|
4099
|
-
reference: string;
|
|
4100
|
-
}>;
|
|
4101
4411
|
/**
|
|
4102
|
-
*
|
|
4103
|
-
*
|
|
4104
|
-
*
|
|
4105
|
-
*
|
|
4106
|
-
*
|
|
4107
|
-
*
|
|
4412
|
+
* EntityExtension — attributes contributed to ONE existing host entity by a
|
|
4413
|
+
* resource that does not own it (typically a second module). The host's
|
|
4414
|
+
* `attributes` are the materialized merge: its own attributes plus every
|
|
4415
|
+
* extension's, each stamped with `extension_key`. The row itself stores the
|
|
4416
|
+
* author's list unstamped. `key` is the identity; `entity_slug` is immutable
|
|
4417
|
+
* after create (delete and recreate to re-host).
|
|
4108
4418
|
*/
|
|
4109
|
-
interface
|
|
4110
|
-
|
|
4419
|
+
interface EntityExtension extends AuditFields {
|
|
4420
|
+
key: string;
|
|
4111
4421
|
org_id: string;
|
|
4422
|
+
name: string;
|
|
4423
|
+
description: string;
|
|
4424
|
+
/** The host entity the attributes are merged into. */
|
|
4425
|
+
entity_slug: string;
|
|
4112
4426
|
module_slug: string;
|
|
4113
|
-
|
|
4114
|
-
|
|
4115
|
-
profile_slug: string;
|
|
4116
|
-
/** Home; absent = the first list/page leaf of the resolved menu. */
|
|
4117
|
-
home?: AppHome | null;
|
|
4118
|
-
/** Menu to show; `''` = the app's `is_default` menu. */
|
|
4119
|
-
menu_slug?: string;
|
|
4120
|
-
/** Agent Ask Proteos preselects in this app; `''` = the org default. */
|
|
4121
|
-
default_agent_key?: string;
|
|
4122
|
-
/** Agents offered in this app; empty = every org agent. */
|
|
4123
|
-
agent_keys?: string[];
|
|
4124
|
-
/** entity_slug → record page slug opened from this app. */
|
|
4125
|
-
record_pages?: Record<string, string>;
|
|
4427
|
+
/** The contributed definitions, exactly as authored (no `extension_key`). */
|
|
4428
|
+
attributes: Attribute[];
|
|
4126
4429
|
}
|
|
4127
|
-
declare const
|
|
4430
|
+
declare const EntityExtensionSchema: z.ZodObject<{
|
|
4128
4431
|
created_at: z.ZodString;
|
|
4129
4432
|
updated_at: z.ZodString;
|
|
4130
4433
|
created_by: z.ZodObject<{
|
|
@@ -4148,27 +4451,943 @@ declare const AppConfigurationSchema: z.ZodObject<{
|
|
|
4148
4451
|
id: string;
|
|
4149
4452
|
}>;
|
|
4150
4453
|
} & {
|
|
4151
|
-
|
|
4454
|
+
key: z.ZodString;
|
|
4152
4455
|
org_id: z.ZodString;
|
|
4456
|
+
name: z.ZodString;
|
|
4457
|
+
description: z.ZodString;
|
|
4458
|
+
entity_slug: z.ZodString;
|
|
4153
4459
|
module_slug: z.ZodString;
|
|
4154
|
-
|
|
4155
|
-
|
|
4156
|
-
|
|
4157
|
-
|
|
4158
|
-
|
|
4460
|
+
attributes: z.ZodArray<z.ZodObject<{
|
|
4461
|
+
name: z.ZodString;
|
|
4462
|
+
type: z.ZodString;
|
|
4463
|
+
label: z.ZodString;
|
|
4464
|
+
description: z.ZodOptional<z.ZodString>;
|
|
4465
|
+
is_required: z.ZodBoolean;
|
|
4466
|
+
is_nullable: z.ZodOptional<z.ZodBoolean>;
|
|
4467
|
+
is_unique: z.ZodBoolean;
|
|
4468
|
+
is_read_only: z.ZodOptional<z.ZodBoolean>;
|
|
4469
|
+
extension_key: z.ZodOptional<z.ZodString>;
|
|
4470
|
+
restrictions: z.ZodOptional<z.ZodObject<{
|
|
4471
|
+
read: z.ZodOptional<z.ZodObject<{
|
|
4472
|
+
roles: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
4473
|
+
teams: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
4474
|
+
}, "strip", z.ZodTypeAny, {
|
|
4475
|
+
roles?: string[] | undefined;
|
|
4476
|
+
teams?: string[] | undefined;
|
|
4477
|
+
}, {
|
|
4478
|
+
roles?: string[] | undefined;
|
|
4479
|
+
teams?: string[] | undefined;
|
|
4480
|
+
}>>;
|
|
4481
|
+
write: z.ZodOptional<z.ZodObject<{
|
|
4482
|
+
roles: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
4483
|
+
teams: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
4484
|
+
}, "strip", z.ZodTypeAny, {
|
|
4485
|
+
roles?: string[] | undefined;
|
|
4486
|
+
teams?: string[] | undefined;
|
|
4487
|
+
}, {
|
|
4488
|
+
roles?: string[] | undefined;
|
|
4489
|
+
teams?: string[] | undefined;
|
|
4490
|
+
}>>;
|
|
4491
|
+
}, "strip", z.ZodTypeAny, {
|
|
4492
|
+
read?: {
|
|
4493
|
+
roles?: string[] | undefined;
|
|
4494
|
+
teams?: string[] | undefined;
|
|
4495
|
+
} | undefined;
|
|
4496
|
+
write?: {
|
|
4497
|
+
roles?: string[] | undefined;
|
|
4498
|
+
teams?: string[] | undefined;
|
|
4499
|
+
} | undefined;
|
|
4500
|
+
}, {
|
|
4501
|
+
read?: {
|
|
4502
|
+
roles?: string[] | undefined;
|
|
4503
|
+
teams?: string[] | undefined;
|
|
4504
|
+
} | undefined;
|
|
4505
|
+
write?: {
|
|
4506
|
+
roles?: string[] | undefined;
|
|
4507
|
+
teams?: string[] | undefined;
|
|
4508
|
+
} | undefined;
|
|
4509
|
+
}>>;
|
|
4510
|
+
default_value: z.ZodOptional<z.ZodUnknown>;
|
|
4511
|
+
meta: z.ZodOptional<z.ZodUnknown>;
|
|
4512
|
+
options: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
4159
4513
|
}, "strip", z.ZodTypeAny, {
|
|
4160
|
-
type:
|
|
4161
|
-
|
|
4514
|
+
type: string;
|
|
4515
|
+
name: string;
|
|
4516
|
+
label: string;
|
|
4517
|
+
is_required: boolean;
|
|
4518
|
+
is_unique: boolean;
|
|
4519
|
+
options?: Record<string, unknown> | undefined;
|
|
4520
|
+
meta?: unknown;
|
|
4521
|
+
extension_key?: string | undefined;
|
|
4522
|
+
description?: string | undefined;
|
|
4523
|
+
is_read_only?: boolean | undefined;
|
|
4524
|
+
is_nullable?: boolean | undefined;
|
|
4525
|
+
restrictions?: {
|
|
4526
|
+
read?: {
|
|
4527
|
+
roles?: string[] | undefined;
|
|
4528
|
+
teams?: string[] | undefined;
|
|
4529
|
+
} | undefined;
|
|
4530
|
+
write?: {
|
|
4531
|
+
roles?: string[] | undefined;
|
|
4532
|
+
teams?: string[] | undefined;
|
|
4533
|
+
} | undefined;
|
|
4534
|
+
} | undefined;
|
|
4535
|
+
default_value?: unknown;
|
|
4162
4536
|
}, {
|
|
4163
|
-
type:
|
|
4164
|
-
|
|
4165
|
-
|
|
4166
|
-
|
|
4167
|
-
|
|
4168
|
-
|
|
4169
|
-
|
|
4537
|
+
type: string;
|
|
4538
|
+
name: string;
|
|
4539
|
+
label: string;
|
|
4540
|
+
is_required: boolean;
|
|
4541
|
+
is_unique: boolean;
|
|
4542
|
+
options?: Record<string, unknown> | undefined;
|
|
4543
|
+
meta?: unknown;
|
|
4544
|
+
extension_key?: string | undefined;
|
|
4545
|
+
description?: string | undefined;
|
|
4546
|
+
is_read_only?: boolean | undefined;
|
|
4547
|
+
is_nullable?: boolean | undefined;
|
|
4548
|
+
restrictions?: {
|
|
4549
|
+
read?: {
|
|
4550
|
+
roles?: string[] | undefined;
|
|
4551
|
+
teams?: string[] | undefined;
|
|
4552
|
+
} | undefined;
|
|
4553
|
+
write?: {
|
|
4554
|
+
roles?: string[] | undefined;
|
|
4555
|
+
teams?: string[] | undefined;
|
|
4556
|
+
} | undefined;
|
|
4557
|
+
} | undefined;
|
|
4558
|
+
default_value?: unknown;
|
|
4559
|
+
}>, "many">;
|
|
4170
4560
|
}, "strip", z.ZodTypeAny, {
|
|
4171
|
-
|
|
4561
|
+
key: string;
|
|
4562
|
+
name: string;
|
|
4563
|
+
created_at: string;
|
|
4564
|
+
updated_at: string;
|
|
4565
|
+
created_by: {
|
|
4566
|
+
type: "person" | "agent" | "api";
|
|
4567
|
+
id: string;
|
|
4568
|
+
};
|
|
4569
|
+
updated_by: {
|
|
4570
|
+
type: "person" | "agent" | "api";
|
|
4571
|
+
id: string;
|
|
4572
|
+
};
|
|
4573
|
+
description: string;
|
|
4574
|
+
attributes: {
|
|
4575
|
+
type: string;
|
|
4576
|
+
name: string;
|
|
4577
|
+
label: string;
|
|
4578
|
+
is_required: boolean;
|
|
4579
|
+
is_unique: boolean;
|
|
4580
|
+
options?: Record<string, unknown> | undefined;
|
|
4581
|
+
meta?: unknown;
|
|
4582
|
+
extension_key?: string | undefined;
|
|
4583
|
+
description?: string | undefined;
|
|
4584
|
+
is_read_only?: boolean | undefined;
|
|
4585
|
+
is_nullable?: boolean | undefined;
|
|
4586
|
+
restrictions?: {
|
|
4587
|
+
read?: {
|
|
4588
|
+
roles?: string[] | undefined;
|
|
4589
|
+
teams?: string[] | undefined;
|
|
4590
|
+
} | undefined;
|
|
4591
|
+
write?: {
|
|
4592
|
+
roles?: string[] | undefined;
|
|
4593
|
+
teams?: string[] | undefined;
|
|
4594
|
+
} | undefined;
|
|
4595
|
+
} | undefined;
|
|
4596
|
+
default_value?: unknown;
|
|
4597
|
+
}[];
|
|
4598
|
+
module_slug: string;
|
|
4599
|
+
entity_slug: string;
|
|
4600
|
+
org_id: string;
|
|
4601
|
+
}, {
|
|
4602
|
+
key: string;
|
|
4603
|
+
name: string;
|
|
4604
|
+
created_at: string;
|
|
4605
|
+
updated_at: string;
|
|
4606
|
+
created_by: {
|
|
4607
|
+
type: "person" | "agent" | "api";
|
|
4608
|
+
id: string;
|
|
4609
|
+
};
|
|
4610
|
+
updated_by: {
|
|
4611
|
+
type: "person" | "agent" | "api";
|
|
4612
|
+
id: string;
|
|
4613
|
+
};
|
|
4614
|
+
description: string;
|
|
4615
|
+
attributes: {
|
|
4616
|
+
type: string;
|
|
4617
|
+
name: string;
|
|
4618
|
+
label: string;
|
|
4619
|
+
is_required: boolean;
|
|
4620
|
+
is_unique: boolean;
|
|
4621
|
+
options?: Record<string, unknown> | undefined;
|
|
4622
|
+
meta?: unknown;
|
|
4623
|
+
extension_key?: string | undefined;
|
|
4624
|
+
description?: string | undefined;
|
|
4625
|
+
is_read_only?: boolean | undefined;
|
|
4626
|
+
is_nullable?: boolean | undefined;
|
|
4627
|
+
restrictions?: {
|
|
4628
|
+
read?: {
|
|
4629
|
+
roles?: string[] | undefined;
|
|
4630
|
+
teams?: string[] | undefined;
|
|
4631
|
+
} | undefined;
|
|
4632
|
+
write?: {
|
|
4633
|
+
roles?: string[] | undefined;
|
|
4634
|
+
teams?: string[] | undefined;
|
|
4635
|
+
} | undefined;
|
|
4636
|
+
} | undefined;
|
|
4637
|
+
default_value?: unknown;
|
|
4638
|
+
}[];
|
|
4639
|
+
module_slug: string;
|
|
4640
|
+
entity_slug: string;
|
|
4641
|
+
org_id: string;
|
|
4642
|
+
}>;
|
|
4643
|
+
interface ListEntityExtensionsOptions extends MetaListOptions {
|
|
4644
|
+
key?: string;
|
|
4645
|
+
name?: string;
|
|
4646
|
+
entity_slug?: string;
|
|
4647
|
+
module_slug?: string;
|
|
4648
|
+
}
|
|
4649
|
+
/**
|
|
4650
|
+
* Request to create an entity extension: at least one attribute, no platform
|
|
4651
|
+
* attribute names, no `extension_key` (the server stamps it on the host).
|
|
4652
|
+
*/
|
|
4653
|
+
interface CreateEntityExtensionRequest {
|
|
4654
|
+
key: string;
|
|
4655
|
+
name?: string;
|
|
4656
|
+
description?: string;
|
|
4657
|
+
entity_slug: string;
|
|
4658
|
+
module_slug?: string;
|
|
4659
|
+
attributes: Attribute[];
|
|
4660
|
+
}
|
|
4661
|
+
/**
|
|
4662
|
+
* Partial update. `attributes`, when present, replaces the whole contributed
|
|
4663
|
+
* list. `entity_slug` is immutable — delete and recreate to re-host.
|
|
4664
|
+
*/
|
|
4665
|
+
interface UpdateEntityExtensionRequest {
|
|
4666
|
+
name?: string;
|
|
4667
|
+
description?: string;
|
|
4668
|
+
module_slug?: string;
|
|
4669
|
+
attributes?: Attribute[];
|
|
4670
|
+
}
|
|
4671
|
+
/**
|
|
4672
|
+
* Where a placement's block goes relative to its anchor. `first` / `last`
|
|
4673
|
+
* mean "inside this container", `before` / `after` mean "next to this node"
|
|
4674
|
+
* (a sibling of the same kind: element next to element, tab next to tab).
|
|
4675
|
+
*/
|
|
4676
|
+
type ExtensionPosition = 'before' | 'after' | 'first' | 'last';
|
|
4677
|
+
declare const ExtensionPositionSchema: z.ZodEnum<["before", "after", "first", "last"]>;
|
|
4678
|
+
/**
|
|
4679
|
+
* Virtual anchors naming the layout roots (`first` / `last` only). Dots keep
|
|
4680
|
+
* them out of the kebab-case authored-id namespace.
|
|
4681
|
+
*/
|
|
4682
|
+
declare const PAGE_EXTENSION_ANCHOR_MAIN = "layout.main";
|
|
4683
|
+
declare const PAGE_EXTENSION_ANCHOR_SIDE_PANEL = "layout.side_panel";
|
|
4684
|
+
/**
|
|
4685
|
+
* One anchored block: the anchor (an element id, a tab id, or a virtual root
|
|
4686
|
+
* anchor) in the host's OWN layout, a position, and the payload. Exactly one
|
|
4687
|
+
* of `elements` / `tabs` is set; which one is right follows from the anchor —
|
|
4688
|
+
* a tabs element (`first` / `last`) or a tab id (`before` / `after`) takes
|
|
4689
|
+
* `tabs`, everything else takes `elements`. The payload lands as ONE
|
|
4690
|
+
* contiguous run in author order. Every element and tab needs an authored id.
|
|
4691
|
+
*/
|
|
4692
|
+
interface PageExtensionPlacement {
|
|
4693
|
+
anchor_id: string;
|
|
4694
|
+
position: ExtensionPosition;
|
|
4695
|
+
elements?: LayoutElement[];
|
|
4696
|
+
tabs?: LayoutTab[];
|
|
4697
|
+
}
|
|
4698
|
+
declare const PageExtensionPlacementSchema: z.ZodObject<{
|
|
4699
|
+
anchor_id: z.ZodString;
|
|
4700
|
+
position: z.ZodEnum<["before", "after", "first", "last"]>;
|
|
4701
|
+
elements: z.ZodOptional<z.ZodArray<z.ZodType<LayoutElement, z.ZodTypeDef, LayoutElement>, "many">>;
|
|
4702
|
+
tabs: z.ZodOptional<z.ZodArray<z.ZodType<LayoutTab, z.ZodTypeDef, LayoutTab>, "many">>;
|
|
4703
|
+
}, "strip", z.ZodTypeAny, {
|
|
4704
|
+
anchor_id: string;
|
|
4705
|
+
position: "before" | "after" | "first" | "last";
|
|
4706
|
+
elements?: LayoutElement[] | undefined;
|
|
4707
|
+
tabs?: LayoutTab[] | undefined;
|
|
4708
|
+
}, {
|
|
4709
|
+
anchor_id: string;
|
|
4710
|
+
position: "before" | "after" | "first" | "last";
|
|
4711
|
+
elements?: LayoutElement[] | undefined;
|
|
4712
|
+
tabs?: LayoutTab[] | undefined;
|
|
4713
|
+
}>;
|
|
4714
|
+
/**
|
|
4715
|
+
* PageExtension — anchored layout blocks contributed to ONE existing host page
|
|
4716
|
+
* by a resource that does not own it (typically a second module). The host's
|
|
4717
|
+
* `layout` is the materialized merge: its own tree plus every extension's
|
|
4718
|
+
* placements, each contributed element and tab stamped with `extension_key`.
|
|
4719
|
+
* The row itself stores the author's placements unstamped. `key` is the
|
|
4720
|
+
* identity; `page_slug` is immutable after create (delete and recreate to
|
|
4721
|
+
* re-host).
|
|
4722
|
+
*/
|
|
4723
|
+
interface PageExtension extends AuditFields {
|
|
4724
|
+
key: string;
|
|
4725
|
+
org_id: string;
|
|
4726
|
+
name: string;
|
|
4727
|
+
description: string;
|
|
4728
|
+
/** The host page the placements are merged into. */
|
|
4729
|
+
page_slug: string;
|
|
4730
|
+
module_slug: string;
|
|
4731
|
+
/** The contributed blocks, exactly as authored (no `extension_key`). */
|
|
4732
|
+
placements: PageExtensionPlacement[];
|
|
4733
|
+
}
|
|
4734
|
+
declare const PageExtensionSchema: z.ZodObject<{
|
|
4735
|
+
created_at: z.ZodString;
|
|
4736
|
+
updated_at: z.ZodString;
|
|
4737
|
+
created_by: z.ZodObject<{
|
|
4738
|
+
type: z.ZodEnum<["person", "agent", "api"]>;
|
|
4739
|
+
id: z.ZodString;
|
|
4740
|
+
}, "strip", z.ZodTypeAny, {
|
|
4741
|
+
type: "person" | "agent" | "api";
|
|
4742
|
+
id: string;
|
|
4743
|
+
}, {
|
|
4744
|
+
type: "person" | "agent" | "api";
|
|
4745
|
+
id: string;
|
|
4746
|
+
}>;
|
|
4747
|
+
updated_by: z.ZodObject<{
|
|
4748
|
+
type: z.ZodEnum<["person", "agent", "api"]>;
|
|
4749
|
+
id: z.ZodString;
|
|
4750
|
+
}, "strip", z.ZodTypeAny, {
|
|
4751
|
+
type: "person" | "agent" | "api";
|
|
4752
|
+
id: string;
|
|
4753
|
+
}, {
|
|
4754
|
+
type: "person" | "agent" | "api";
|
|
4755
|
+
id: string;
|
|
4756
|
+
}>;
|
|
4757
|
+
} & {
|
|
4758
|
+
key: z.ZodString;
|
|
4759
|
+
org_id: z.ZodString;
|
|
4760
|
+
name: z.ZodString;
|
|
4761
|
+
description: z.ZodString;
|
|
4762
|
+
page_slug: z.ZodString;
|
|
4763
|
+
module_slug: z.ZodString;
|
|
4764
|
+
placements: z.ZodArray<z.ZodObject<{
|
|
4765
|
+
anchor_id: z.ZodString;
|
|
4766
|
+
position: z.ZodEnum<["before", "after", "first", "last"]>;
|
|
4767
|
+
elements: z.ZodOptional<z.ZodArray<z.ZodType<LayoutElement, z.ZodTypeDef, LayoutElement>, "many">>;
|
|
4768
|
+
tabs: z.ZodOptional<z.ZodArray<z.ZodType<LayoutTab, z.ZodTypeDef, LayoutTab>, "many">>;
|
|
4769
|
+
}, "strip", z.ZodTypeAny, {
|
|
4770
|
+
anchor_id: string;
|
|
4771
|
+
position: "before" | "after" | "first" | "last";
|
|
4772
|
+
elements?: LayoutElement[] | undefined;
|
|
4773
|
+
tabs?: LayoutTab[] | undefined;
|
|
4774
|
+
}, {
|
|
4775
|
+
anchor_id: string;
|
|
4776
|
+
position: "before" | "after" | "first" | "last";
|
|
4777
|
+
elements?: LayoutElement[] | undefined;
|
|
4778
|
+
tabs?: LayoutTab[] | undefined;
|
|
4779
|
+
}>, "many">;
|
|
4780
|
+
}, "strip", z.ZodTypeAny, {
|
|
4781
|
+
key: string;
|
|
4782
|
+
name: string;
|
|
4783
|
+
created_at: string;
|
|
4784
|
+
updated_at: string;
|
|
4785
|
+
created_by: {
|
|
4786
|
+
type: "person" | "agent" | "api";
|
|
4787
|
+
id: string;
|
|
4788
|
+
};
|
|
4789
|
+
updated_by: {
|
|
4790
|
+
type: "person" | "agent" | "api";
|
|
4791
|
+
id: string;
|
|
4792
|
+
};
|
|
4793
|
+
description: string;
|
|
4794
|
+
page_slug: string;
|
|
4795
|
+
module_slug: string;
|
|
4796
|
+
org_id: string;
|
|
4797
|
+
placements: {
|
|
4798
|
+
anchor_id: string;
|
|
4799
|
+
position: "before" | "after" | "first" | "last";
|
|
4800
|
+
elements?: LayoutElement[] | undefined;
|
|
4801
|
+
tabs?: LayoutTab[] | undefined;
|
|
4802
|
+
}[];
|
|
4803
|
+
}, {
|
|
4804
|
+
key: string;
|
|
4805
|
+
name: string;
|
|
4806
|
+
created_at: string;
|
|
4807
|
+
updated_at: string;
|
|
4808
|
+
created_by: {
|
|
4809
|
+
type: "person" | "agent" | "api";
|
|
4810
|
+
id: string;
|
|
4811
|
+
};
|
|
4812
|
+
updated_by: {
|
|
4813
|
+
type: "person" | "agent" | "api";
|
|
4814
|
+
id: string;
|
|
4815
|
+
};
|
|
4816
|
+
description: string;
|
|
4817
|
+
page_slug: string;
|
|
4818
|
+
module_slug: string;
|
|
4819
|
+
org_id: string;
|
|
4820
|
+
placements: {
|
|
4821
|
+
anchor_id: string;
|
|
4822
|
+
position: "before" | "after" | "first" | "last";
|
|
4823
|
+
elements?: LayoutElement[] | undefined;
|
|
4824
|
+
tabs?: LayoutTab[] | undefined;
|
|
4825
|
+
}[];
|
|
4826
|
+
}>;
|
|
4827
|
+
interface ListPageExtensionsOptions extends MetaListOptions {
|
|
4828
|
+
key?: string;
|
|
4829
|
+
name?: string;
|
|
4830
|
+
page_slug?: string;
|
|
4831
|
+
module_slug?: string;
|
|
4832
|
+
}
|
|
4833
|
+
/**
|
|
4834
|
+
* Request to create a page extension: at least one placement, an authored id
|
|
4835
|
+
* on every contributed element and tab, no `extension_key` (the server stamps
|
|
4836
|
+
* it on the host).
|
|
4837
|
+
*/
|
|
4838
|
+
interface CreatePageExtensionRequest {
|
|
4839
|
+
key: string;
|
|
4840
|
+
name?: string;
|
|
4841
|
+
description?: string;
|
|
4842
|
+
page_slug: string;
|
|
4843
|
+
module_slug?: string;
|
|
4844
|
+
placements: PageExtensionPlacement[];
|
|
4845
|
+
}
|
|
4846
|
+
/**
|
|
4847
|
+
* Partial update. `placements`, when present, replaces the whole contributed
|
|
4848
|
+
* list. `page_slug` is immutable — delete and recreate to re-host.
|
|
4849
|
+
*/
|
|
4850
|
+
interface UpdatePageExtensionRequest {
|
|
4851
|
+
name?: string;
|
|
4852
|
+
description?: string;
|
|
4853
|
+
module_slug?: string;
|
|
4854
|
+
placements?: PageExtensionPlacement[];
|
|
4855
|
+
}
|
|
4856
|
+
/**
|
|
4857
|
+
* Where a menu placement's block goes relative to its anchor. The four insert
|
|
4858
|
+
* positions are the shared `ExtensionPosition`; `replace` swaps the anchor
|
|
4859
|
+
* (whole subtree) for the block, `remove` hides it. Both keep the host's
|
|
4860
|
+
* original under `replaced_item` on the materialized tree.
|
|
4861
|
+
*/
|
|
4862
|
+
type MenuConfigurationExtensionPosition = ExtensionPosition | 'replace' | 'remove';
|
|
4863
|
+
declare const MenuConfigurationExtensionPositionSchema: z.ZodEnum<["before", "after", "first", "last", "replace", "remove"]>;
|
|
4864
|
+
/** Virtual anchor naming the menu's root item list (`first` / `last` only). */
|
|
4865
|
+
declare const MENU_CONFIGURATION_EXTENSION_ANCHOR_ITEMS = "menu.items";
|
|
4866
|
+
/**
|
|
4867
|
+
* One anchored block: the anchor (an item id in the host's OWN tree, or the
|
|
4868
|
+
* virtual root `menu.items`), a position, and the contributed items (one
|
|
4869
|
+
* contiguous run in author order). `remove` carries no items; every other
|
|
4870
|
+
* position needs at least one. `first` / `last` on an item go into its
|
|
4871
|
+
* children (groups only). Every contributed item needs an authored id.
|
|
4872
|
+
*/
|
|
4873
|
+
interface MenuConfigurationExtensionPlacement {
|
|
4874
|
+
anchor_id: string;
|
|
4875
|
+
position: MenuConfigurationExtensionPosition;
|
|
4876
|
+
items?: MenuItem[];
|
|
4877
|
+
}
|
|
4878
|
+
declare const MenuConfigurationExtensionPlacementSchema: z.ZodObject<{
|
|
4879
|
+
anchor_id: z.ZodString;
|
|
4880
|
+
position: z.ZodEnum<["before", "after", "first", "last", "replace", "remove"]>;
|
|
4881
|
+
items: z.ZodOptional<z.ZodArray<z.ZodType<MenuItem, z.ZodTypeDef, MenuItem>, "many">>;
|
|
4882
|
+
}, "strip", z.ZodTypeAny, {
|
|
4883
|
+
anchor_id: string;
|
|
4884
|
+
position: "before" | "after" | "first" | "last" | "replace" | "remove";
|
|
4885
|
+
items?: MenuItem[] | undefined;
|
|
4886
|
+
}, {
|
|
4887
|
+
anchor_id: string;
|
|
4888
|
+
position: "before" | "after" | "first" | "last" | "replace" | "remove";
|
|
4889
|
+
items?: MenuItem[] | undefined;
|
|
4890
|
+
}>;
|
|
4891
|
+
/**
|
|
4892
|
+
* MenuConfigurationExtension — items contributed to ONE existing host menu
|
|
4893
|
+
* configuration by a resource that does not own it (typically a second
|
|
4894
|
+
* module). The host's `items` are the materialized merge: its own tree plus
|
|
4895
|
+
* every extension's placements, each contributed item stamped with
|
|
4896
|
+
* `extension_key` (a replaced / removed host item kept under `replaced_item`).
|
|
4897
|
+
* The row itself stores the author's placements unstamped. `key` is the
|
|
4898
|
+
* identity; `menu_slug` is immutable after create (delete and recreate to
|
|
4899
|
+
* re-host).
|
|
4900
|
+
*/
|
|
4901
|
+
interface MenuConfigurationExtension extends AuditFields {
|
|
4902
|
+
key: string;
|
|
4903
|
+
org_id: string;
|
|
4904
|
+
name: string;
|
|
4905
|
+
description: string;
|
|
4906
|
+
/** The host menu configuration the placements are merged into. */
|
|
4907
|
+
menu_slug: string;
|
|
4908
|
+
module_slug: string;
|
|
4909
|
+
/** The contributed blocks, exactly as authored (no `extension_key`). */
|
|
4910
|
+
placements: MenuConfigurationExtensionPlacement[];
|
|
4911
|
+
}
|
|
4912
|
+
declare const MenuConfigurationExtensionSchema: z.ZodObject<{
|
|
4913
|
+
created_at: z.ZodString;
|
|
4914
|
+
updated_at: z.ZodString;
|
|
4915
|
+
created_by: z.ZodObject<{
|
|
4916
|
+
type: z.ZodEnum<["person", "agent", "api"]>;
|
|
4917
|
+
id: z.ZodString;
|
|
4918
|
+
}, "strip", z.ZodTypeAny, {
|
|
4919
|
+
type: "person" | "agent" | "api";
|
|
4920
|
+
id: string;
|
|
4921
|
+
}, {
|
|
4922
|
+
type: "person" | "agent" | "api";
|
|
4923
|
+
id: string;
|
|
4924
|
+
}>;
|
|
4925
|
+
updated_by: z.ZodObject<{
|
|
4926
|
+
type: z.ZodEnum<["person", "agent", "api"]>;
|
|
4927
|
+
id: z.ZodString;
|
|
4928
|
+
}, "strip", z.ZodTypeAny, {
|
|
4929
|
+
type: "person" | "agent" | "api";
|
|
4930
|
+
id: string;
|
|
4931
|
+
}, {
|
|
4932
|
+
type: "person" | "agent" | "api";
|
|
4933
|
+
id: string;
|
|
4934
|
+
}>;
|
|
4935
|
+
} & {
|
|
4936
|
+
key: z.ZodString;
|
|
4937
|
+
org_id: z.ZodString;
|
|
4938
|
+
name: z.ZodString;
|
|
4939
|
+
description: z.ZodString;
|
|
4940
|
+
menu_slug: z.ZodString;
|
|
4941
|
+
module_slug: z.ZodString;
|
|
4942
|
+
placements: z.ZodArray<z.ZodObject<{
|
|
4943
|
+
anchor_id: z.ZodString;
|
|
4944
|
+
position: z.ZodEnum<["before", "after", "first", "last", "replace", "remove"]>;
|
|
4945
|
+
items: z.ZodOptional<z.ZodArray<z.ZodType<MenuItem, z.ZodTypeDef, MenuItem>, "many">>;
|
|
4946
|
+
}, "strip", z.ZodTypeAny, {
|
|
4947
|
+
anchor_id: string;
|
|
4948
|
+
position: "before" | "after" | "first" | "last" | "replace" | "remove";
|
|
4949
|
+
items?: MenuItem[] | undefined;
|
|
4950
|
+
}, {
|
|
4951
|
+
anchor_id: string;
|
|
4952
|
+
position: "before" | "after" | "first" | "last" | "replace" | "remove";
|
|
4953
|
+
items?: MenuItem[] | undefined;
|
|
4954
|
+
}>, "many">;
|
|
4955
|
+
}, "strip", z.ZodTypeAny, {
|
|
4956
|
+
key: string;
|
|
4957
|
+
name: string;
|
|
4958
|
+
created_at: string;
|
|
4959
|
+
updated_at: string;
|
|
4960
|
+
created_by: {
|
|
4961
|
+
type: "person" | "agent" | "api";
|
|
4962
|
+
id: string;
|
|
4963
|
+
};
|
|
4964
|
+
updated_by: {
|
|
4965
|
+
type: "person" | "agent" | "api";
|
|
4966
|
+
id: string;
|
|
4967
|
+
};
|
|
4968
|
+
description: string;
|
|
4969
|
+
module_slug: string;
|
|
4970
|
+
org_id: string;
|
|
4971
|
+
placements: {
|
|
4972
|
+
anchor_id: string;
|
|
4973
|
+
position: "before" | "after" | "first" | "last" | "replace" | "remove";
|
|
4974
|
+
items?: MenuItem[] | undefined;
|
|
4975
|
+
}[];
|
|
4976
|
+
menu_slug: string;
|
|
4977
|
+
}, {
|
|
4978
|
+
key: string;
|
|
4979
|
+
name: string;
|
|
4980
|
+
created_at: string;
|
|
4981
|
+
updated_at: string;
|
|
4982
|
+
created_by: {
|
|
4983
|
+
type: "person" | "agent" | "api";
|
|
4984
|
+
id: string;
|
|
4985
|
+
};
|
|
4986
|
+
updated_by: {
|
|
4987
|
+
type: "person" | "agent" | "api";
|
|
4988
|
+
id: string;
|
|
4989
|
+
};
|
|
4990
|
+
description: string;
|
|
4991
|
+
module_slug: string;
|
|
4992
|
+
org_id: string;
|
|
4993
|
+
placements: {
|
|
4994
|
+
anchor_id: string;
|
|
4995
|
+
position: "before" | "after" | "first" | "last" | "replace" | "remove";
|
|
4996
|
+
items?: MenuItem[] | undefined;
|
|
4997
|
+
}[];
|
|
4998
|
+
menu_slug: string;
|
|
4999
|
+
}>;
|
|
5000
|
+
interface ListMenuConfigurationExtensionsOptions extends MetaListOptions {
|
|
5001
|
+
key?: string;
|
|
5002
|
+
name?: string;
|
|
5003
|
+
menu_slug?: string;
|
|
5004
|
+
module_slug?: string;
|
|
5005
|
+
}
|
|
5006
|
+
/**
|
|
5007
|
+
* Request to create a menu-configuration extension: at least one placement,
|
|
5008
|
+
* an authored id on every contributed item, no `extension_key` (the server
|
|
5009
|
+
* stamps it on the host).
|
|
5010
|
+
*/
|
|
5011
|
+
interface CreateMenuConfigurationExtensionRequest {
|
|
5012
|
+
key: string;
|
|
5013
|
+
name?: string;
|
|
5014
|
+
description?: string;
|
|
5015
|
+
menu_slug: string;
|
|
5016
|
+
module_slug?: string;
|
|
5017
|
+
placements: MenuConfigurationExtensionPlacement[];
|
|
5018
|
+
}
|
|
5019
|
+
/**
|
|
5020
|
+
* Partial update. `placements`, when present, replaces the whole contributed
|
|
5021
|
+
* list. `menu_slug` is immutable — delete and recreate to re-host.
|
|
5022
|
+
*/
|
|
5023
|
+
interface UpdateMenuConfigurationExtensionRequest {
|
|
5024
|
+
name?: string;
|
|
5025
|
+
description?: string;
|
|
5026
|
+
module_slug?: string;
|
|
5027
|
+
placements?: MenuConfigurationExtensionPlacement[];
|
|
5028
|
+
}
|
|
5029
|
+
/**
|
|
5030
|
+
* One anchored run of columns. `anchor_attribute` names a column of the host's
|
|
5031
|
+
* OWN column list by its attribute path (a column's identity); required for
|
|
5032
|
+
* `before` / `after`, must be empty for `first` / `last` (the ends of the
|
|
5033
|
+
* list). The columns land as one contiguous run in author order.
|
|
5034
|
+
*/
|
|
5035
|
+
interface ListExtensionColumnPlacement {
|
|
5036
|
+
anchor_attribute?: string;
|
|
5037
|
+
position: ExtensionPosition;
|
|
5038
|
+
columns: Column[];
|
|
5039
|
+
}
|
|
5040
|
+
declare const ListExtensionColumnPlacementSchema: z.ZodObject<{
|
|
5041
|
+
anchor_attribute: z.ZodOptional<z.ZodString>;
|
|
5042
|
+
position: z.ZodEnum<["before", "after", "first", "last"]>;
|
|
5043
|
+
columns: z.ZodArray<z.ZodObject<{
|
|
5044
|
+
attribute: z.ZodString;
|
|
5045
|
+
label: z.ZodString;
|
|
5046
|
+
width: z.ZodNumber;
|
|
5047
|
+
extension_key: z.ZodOptional<z.ZodString>;
|
|
5048
|
+
}, "strip", z.ZodTypeAny, {
|
|
5049
|
+
width: number;
|
|
5050
|
+
label: string;
|
|
5051
|
+
attribute: string;
|
|
5052
|
+
extension_key?: string | undefined;
|
|
5053
|
+
}, {
|
|
5054
|
+
width: number;
|
|
5055
|
+
label: string;
|
|
5056
|
+
attribute: string;
|
|
5057
|
+
extension_key?: string | undefined;
|
|
5058
|
+
}>, "many">;
|
|
5059
|
+
}, "strip", z.ZodTypeAny, {
|
|
5060
|
+
columns: {
|
|
5061
|
+
width: number;
|
|
5062
|
+
label: string;
|
|
5063
|
+
attribute: string;
|
|
5064
|
+
extension_key?: string | undefined;
|
|
5065
|
+
}[];
|
|
5066
|
+
position: "before" | "after" | "first" | "last";
|
|
5067
|
+
anchor_attribute?: string | undefined;
|
|
5068
|
+
}, {
|
|
5069
|
+
columns: {
|
|
5070
|
+
width: number;
|
|
5071
|
+
label: string;
|
|
5072
|
+
attribute: string;
|
|
5073
|
+
extension_key?: string | undefined;
|
|
5074
|
+
}[];
|
|
5075
|
+
position: "before" | "after" | "first" | "last";
|
|
5076
|
+
anchor_attribute?: string | undefined;
|
|
5077
|
+
}>;
|
|
5078
|
+
/**
|
|
5079
|
+
* ListExtension — columns and toolbar actions contributed to ONE existing host
|
|
5080
|
+
* list by a resource that does not own it. The host's `columns` / `actions`
|
|
5081
|
+
* are the materialized merge, each contributed one stamped `extension_key`;
|
|
5082
|
+
* the row stores the author's payload unstamped. `key` is the identity;
|
|
5083
|
+
* `list_slug` is immutable after create. Sorting, filters and selection mode
|
|
5084
|
+
* stay the owner's.
|
|
5085
|
+
*/
|
|
5086
|
+
interface ListExtension extends AuditFields {
|
|
5087
|
+
key: string;
|
|
5088
|
+
org_id: string;
|
|
5089
|
+
name: string;
|
|
5090
|
+
description: string;
|
|
5091
|
+
/** The host list the columns and actions are merged into. */
|
|
5092
|
+
list_slug: string;
|
|
5093
|
+
module_slug: string;
|
|
5094
|
+
columns: ListExtensionColumnPlacement[];
|
|
5095
|
+
/** Appended after the host's own toolbar actions (no anchor). */
|
|
5096
|
+
actions: PageAction[];
|
|
5097
|
+
}
|
|
5098
|
+
declare const ListExtensionSchema: z.ZodObject<{
|
|
5099
|
+
created_at: z.ZodString;
|
|
5100
|
+
updated_at: z.ZodString;
|
|
5101
|
+
created_by: z.ZodObject<{
|
|
5102
|
+
type: z.ZodEnum<["person", "agent", "api"]>;
|
|
5103
|
+
id: z.ZodString;
|
|
5104
|
+
}, "strip", z.ZodTypeAny, {
|
|
5105
|
+
type: "person" | "agent" | "api";
|
|
5106
|
+
id: string;
|
|
5107
|
+
}, {
|
|
5108
|
+
type: "person" | "agent" | "api";
|
|
5109
|
+
id: string;
|
|
5110
|
+
}>;
|
|
5111
|
+
updated_by: z.ZodObject<{
|
|
5112
|
+
type: z.ZodEnum<["person", "agent", "api"]>;
|
|
5113
|
+
id: z.ZodString;
|
|
5114
|
+
}, "strip", z.ZodTypeAny, {
|
|
5115
|
+
type: "person" | "agent" | "api";
|
|
5116
|
+
id: string;
|
|
5117
|
+
}, {
|
|
5118
|
+
type: "person" | "agent" | "api";
|
|
5119
|
+
id: string;
|
|
5120
|
+
}>;
|
|
5121
|
+
} & {
|
|
5122
|
+
key: z.ZodString;
|
|
5123
|
+
org_id: z.ZodString;
|
|
5124
|
+
name: z.ZodString;
|
|
5125
|
+
description: z.ZodString;
|
|
5126
|
+
list_slug: z.ZodString;
|
|
5127
|
+
module_slug: z.ZodString;
|
|
5128
|
+
columns: z.ZodArray<z.ZodObject<{
|
|
5129
|
+
anchor_attribute: z.ZodOptional<z.ZodString>;
|
|
5130
|
+
position: z.ZodEnum<["before", "after", "first", "last"]>;
|
|
5131
|
+
columns: z.ZodArray<z.ZodObject<{
|
|
5132
|
+
attribute: z.ZodString;
|
|
5133
|
+
label: z.ZodString;
|
|
5134
|
+
width: z.ZodNumber;
|
|
5135
|
+
extension_key: z.ZodOptional<z.ZodString>;
|
|
5136
|
+
}, "strip", z.ZodTypeAny, {
|
|
5137
|
+
width: number;
|
|
5138
|
+
label: string;
|
|
5139
|
+
attribute: string;
|
|
5140
|
+
extension_key?: string | undefined;
|
|
5141
|
+
}, {
|
|
5142
|
+
width: number;
|
|
5143
|
+
label: string;
|
|
5144
|
+
attribute: string;
|
|
5145
|
+
extension_key?: string | undefined;
|
|
5146
|
+
}>, "many">;
|
|
5147
|
+
}, "strip", z.ZodTypeAny, {
|
|
5148
|
+
columns: {
|
|
5149
|
+
width: number;
|
|
5150
|
+
label: string;
|
|
5151
|
+
attribute: string;
|
|
5152
|
+
extension_key?: string | undefined;
|
|
5153
|
+
}[];
|
|
5154
|
+
position: "before" | "after" | "first" | "last";
|
|
5155
|
+
anchor_attribute?: string | undefined;
|
|
5156
|
+
}, {
|
|
5157
|
+
columns: {
|
|
5158
|
+
width: number;
|
|
5159
|
+
label: string;
|
|
5160
|
+
attribute: string;
|
|
5161
|
+
extension_key?: string | undefined;
|
|
5162
|
+
}[];
|
|
5163
|
+
position: "before" | "after" | "first" | "last";
|
|
5164
|
+
anchor_attribute?: string | undefined;
|
|
5165
|
+
}>, "many">;
|
|
5166
|
+
actions: z.ZodArray<z.ZodObject<{
|
|
5167
|
+
label: z.ZodString;
|
|
5168
|
+
icon: z.ZodString;
|
|
5169
|
+
kind: z.ZodOptional<z.ZodEnum<["action", "workflow"]>>;
|
|
5170
|
+
action: z.ZodOptional<z.ZodString>;
|
|
5171
|
+
workflow: z.ZodOptional<z.ZodString>;
|
|
5172
|
+
params: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
|
|
5173
|
+
inputs: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
|
|
5174
|
+
skip_confirmation: z.ZodOptional<z.ZodBoolean>;
|
|
5175
|
+
extension_key: z.ZodOptional<z.ZodString>;
|
|
5176
|
+
}, "strip", z.ZodTypeAny, {
|
|
5177
|
+
label: string;
|
|
5178
|
+
icon: string;
|
|
5179
|
+
params?: Record<string, string> | undefined;
|
|
5180
|
+
extension_key?: string | undefined;
|
|
5181
|
+
workflow?: string | undefined;
|
|
5182
|
+
inputs?: Record<string, string> | undefined;
|
|
5183
|
+
skip_confirmation?: boolean | undefined;
|
|
5184
|
+
kind?: "workflow" | "action" | undefined;
|
|
5185
|
+
action?: string | undefined;
|
|
5186
|
+
}, {
|
|
5187
|
+
label: string;
|
|
5188
|
+
icon: string;
|
|
5189
|
+
params?: Record<string, string> | undefined;
|
|
5190
|
+
extension_key?: string | undefined;
|
|
5191
|
+
workflow?: string | undefined;
|
|
5192
|
+
inputs?: Record<string, string> | undefined;
|
|
5193
|
+
skip_confirmation?: boolean | undefined;
|
|
5194
|
+
kind?: "workflow" | "action" | undefined;
|
|
5195
|
+
action?: string | undefined;
|
|
5196
|
+
}>, "many">;
|
|
5197
|
+
}, "strip", z.ZodTypeAny, {
|
|
5198
|
+
key: string;
|
|
5199
|
+
name: string;
|
|
5200
|
+
created_at: string;
|
|
5201
|
+
updated_at: string;
|
|
5202
|
+
created_by: {
|
|
5203
|
+
type: "person" | "agent" | "api";
|
|
5204
|
+
id: string;
|
|
5205
|
+
};
|
|
5206
|
+
updated_by: {
|
|
5207
|
+
type: "person" | "agent" | "api";
|
|
5208
|
+
id: string;
|
|
5209
|
+
};
|
|
5210
|
+
description: string;
|
|
5211
|
+
list_slug: string;
|
|
5212
|
+
module_slug: string;
|
|
5213
|
+
columns: {
|
|
5214
|
+
columns: {
|
|
5215
|
+
width: number;
|
|
5216
|
+
label: string;
|
|
5217
|
+
attribute: string;
|
|
5218
|
+
extension_key?: string | undefined;
|
|
5219
|
+
}[];
|
|
5220
|
+
position: "before" | "after" | "first" | "last";
|
|
5221
|
+
anchor_attribute?: string | undefined;
|
|
5222
|
+
}[];
|
|
5223
|
+
actions: {
|
|
5224
|
+
label: string;
|
|
5225
|
+
icon: string;
|
|
5226
|
+
params?: Record<string, string> | undefined;
|
|
5227
|
+
extension_key?: string | undefined;
|
|
5228
|
+
workflow?: string | undefined;
|
|
5229
|
+
inputs?: Record<string, string> | undefined;
|
|
5230
|
+
skip_confirmation?: boolean | undefined;
|
|
5231
|
+
kind?: "workflow" | "action" | undefined;
|
|
5232
|
+
action?: string | undefined;
|
|
5233
|
+
}[];
|
|
5234
|
+
org_id: string;
|
|
5235
|
+
}, {
|
|
5236
|
+
key: string;
|
|
5237
|
+
name: string;
|
|
5238
|
+
created_at: string;
|
|
5239
|
+
updated_at: string;
|
|
5240
|
+
created_by: {
|
|
5241
|
+
type: "person" | "agent" | "api";
|
|
5242
|
+
id: string;
|
|
5243
|
+
};
|
|
5244
|
+
updated_by: {
|
|
5245
|
+
type: "person" | "agent" | "api";
|
|
5246
|
+
id: string;
|
|
5247
|
+
};
|
|
5248
|
+
description: string;
|
|
5249
|
+
list_slug: string;
|
|
5250
|
+
module_slug: string;
|
|
5251
|
+
columns: {
|
|
5252
|
+
columns: {
|
|
5253
|
+
width: number;
|
|
5254
|
+
label: string;
|
|
5255
|
+
attribute: string;
|
|
5256
|
+
extension_key?: string | undefined;
|
|
5257
|
+
}[];
|
|
5258
|
+
position: "before" | "after" | "first" | "last";
|
|
5259
|
+
anchor_attribute?: string | undefined;
|
|
5260
|
+
}[];
|
|
5261
|
+
actions: {
|
|
5262
|
+
label: string;
|
|
5263
|
+
icon: string;
|
|
5264
|
+
params?: Record<string, string> | undefined;
|
|
5265
|
+
extension_key?: string | undefined;
|
|
5266
|
+
workflow?: string | undefined;
|
|
5267
|
+
inputs?: Record<string, string> | undefined;
|
|
5268
|
+
skip_confirmation?: boolean | undefined;
|
|
5269
|
+
kind?: "workflow" | "action" | undefined;
|
|
5270
|
+
action?: string | undefined;
|
|
5271
|
+
}[];
|
|
5272
|
+
org_id: string;
|
|
5273
|
+
}>;
|
|
5274
|
+
interface ListListExtensionsOptions extends MetaListOptions {
|
|
5275
|
+
key?: string;
|
|
5276
|
+
name?: string;
|
|
5277
|
+
list_slug?: string;
|
|
5278
|
+
module_slug?: string;
|
|
5279
|
+
}
|
|
5280
|
+
/**
|
|
5281
|
+
* Request to create a list extension: at least one column placement or
|
|
5282
|
+
* action, no `extension_key` (the server stamps it on the host).
|
|
5283
|
+
*/
|
|
5284
|
+
interface CreateListExtensionRequest {
|
|
5285
|
+
key: string;
|
|
5286
|
+
name?: string;
|
|
5287
|
+
description?: string;
|
|
5288
|
+
list_slug: string;
|
|
5289
|
+
module_slug?: string;
|
|
5290
|
+
columns?: ListExtensionColumnPlacement[];
|
|
5291
|
+
actions?: PageAction[];
|
|
5292
|
+
}
|
|
5293
|
+
/**
|
|
5294
|
+
* Partial update. `columns` / `actions`, when present, each replace their
|
|
5295
|
+
* whole list. `list_slug` is immutable — delete and recreate to re-host.
|
|
5296
|
+
*/
|
|
5297
|
+
interface UpdateListExtensionRequest {
|
|
5298
|
+
name?: string;
|
|
5299
|
+
description?: string;
|
|
5300
|
+
module_slug?: string;
|
|
5301
|
+
columns?: ListExtensionColumnPlacement[];
|
|
5302
|
+
actions?: PageAction[];
|
|
5303
|
+
}
|
|
5304
|
+
/** What an app opens on: a list (records table) or a platform page. */
|
|
5305
|
+
type AppHomeType = 'list' | 'page';
|
|
5306
|
+
interface AppHome {
|
|
5307
|
+
type: AppHomeType;
|
|
5308
|
+
reference: string;
|
|
5309
|
+
}
|
|
5310
|
+
declare const AppHomeSchema: z.ZodObject<{
|
|
5311
|
+
type: z.ZodEnum<["list", "page"]>;
|
|
5312
|
+
reference: z.ZodString;
|
|
5313
|
+
}, "strip", z.ZodTypeAny, {
|
|
5314
|
+
type: "page" | "list";
|
|
5315
|
+
reference: string;
|
|
5316
|
+
}, {
|
|
5317
|
+
type: "page" | "list";
|
|
5318
|
+
reference: string;
|
|
5319
|
+
}>;
|
|
5320
|
+
/**
|
|
5321
|
+
* AppConfiguration — a TYPED binding row: "how app X presents itself" to
|
|
5322
|
+
* everyone (`profile_slug: ''` = the app's default configuration) or to one
|
|
5323
|
+
* profile (an override). One row per (app, profile). The web merges
|
|
5324
|
+
* override ⊕ default field-wise and falls through to structural defaults (menu
|
|
5325
|
+
* `is_default`, first menu leaf, org-default agent, first page) for anything
|
|
5326
|
+
* still unset.
|
|
5327
|
+
*/
|
|
5328
|
+
interface AppConfiguration extends AuditFields {
|
|
5329
|
+
slug: string;
|
|
5330
|
+
org_id: string;
|
|
5331
|
+
module_slug: string;
|
|
5332
|
+
app_slug: string;
|
|
5333
|
+
/** Bound profile; `''` = the default configuration for everyone. */
|
|
5334
|
+
profile_slug: string;
|
|
5335
|
+
/** Home; absent = the first list/page leaf of the resolved menu. */
|
|
5336
|
+
home?: AppHome | null;
|
|
5337
|
+
/** Menu to show; `''` = the app's `is_default` menu. */
|
|
5338
|
+
menu_slug?: string;
|
|
5339
|
+
/** Agent Ask Proteos preselects in this app; `''` = the org default. */
|
|
5340
|
+
default_agent_key?: string;
|
|
5341
|
+
/** Agents offered in this app; empty = every org agent. */
|
|
5342
|
+
agent_keys?: string[];
|
|
5343
|
+
/** entity_slug → record page slug opened from this app. */
|
|
5344
|
+
record_pages?: Record<string, string>;
|
|
5345
|
+
}
|
|
5346
|
+
declare const AppConfigurationSchema: z.ZodObject<{
|
|
5347
|
+
created_at: z.ZodString;
|
|
5348
|
+
updated_at: z.ZodString;
|
|
5349
|
+
created_by: z.ZodObject<{
|
|
5350
|
+
type: z.ZodEnum<["person", "agent", "api"]>;
|
|
5351
|
+
id: z.ZodString;
|
|
5352
|
+
}, "strip", z.ZodTypeAny, {
|
|
5353
|
+
type: "person" | "agent" | "api";
|
|
5354
|
+
id: string;
|
|
5355
|
+
}, {
|
|
5356
|
+
type: "person" | "agent" | "api";
|
|
5357
|
+
id: string;
|
|
5358
|
+
}>;
|
|
5359
|
+
updated_by: z.ZodObject<{
|
|
5360
|
+
type: z.ZodEnum<["person", "agent", "api"]>;
|
|
5361
|
+
id: z.ZodString;
|
|
5362
|
+
}, "strip", z.ZodTypeAny, {
|
|
5363
|
+
type: "person" | "agent" | "api";
|
|
5364
|
+
id: string;
|
|
5365
|
+
}, {
|
|
5366
|
+
type: "person" | "agent" | "api";
|
|
5367
|
+
id: string;
|
|
5368
|
+
}>;
|
|
5369
|
+
} & {
|
|
5370
|
+
slug: z.ZodString;
|
|
5371
|
+
org_id: z.ZodString;
|
|
5372
|
+
module_slug: z.ZodString;
|
|
5373
|
+
app_slug: z.ZodString;
|
|
5374
|
+
profile_slug: z.ZodString;
|
|
5375
|
+
home: z.ZodOptional<z.ZodNullable<z.ZodObject<{
|
|
5376
|
+
type: z.ZodEnum<["list", "page"]>;
|
|
5377
|
+
reference: z.ZodString;
|
|
5378
|
+
}, "strip", z.ZodTypeAny, {
|
|
5379
|
+
type: "page" | "list";
|
|
5380
|
+
reference: string;
|
|
5381
|
+
}, {
|
|
5382
|
+
type: "page" | "list";
|
|
5383
|
+
reference: string;
|
|
5384
|
+
}>>>;
|
|
5385
|
+
menu_slug: z.ZodOptional<z.ZodString>;
|
|
5386
|
+
default_agent_key: z.ZodOptional<z.ZodString>;
|
|
5387
|
+
agent_keys: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
5388
|
+
record_pages: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
|
|
5389
|
+
}, "strip", z.ZodTypeAny, {
|
|
5390
|
+
created_at: string;
|
|
4172
5391
|
updated_at: string;
|
|
4173
5392
|
created_by: {
|
|
4174
5393
|
type: "person" | "agent" | "api";
|
|
@@ -4183,11 +5402,11 @@ declare const AppConfigurationSchema: z.ZodObject<{
|
|
|
4183
5402
|
app_slug: string;
|
|
4184
5403
|
org_id: string;
|
|
4185
5404
|
profile_slug: string;
|
|
5405
|
+
menu_slug?: string | undefined;
|
|
4186
5406
|
home?: {
|
|
4187
5407
|
type: "page" | "list";
|
|
4188
5408
|
reference: string;
|
|
4189
5409
|
} | null | undefined;
|
|
4190
|
-
menu_slug?: string | undefined;
|
|
4191
5410
|
default_agent_key?: string | undefined;
|
|
4192
5411
|
agent_keys?: string[] | undefined;
|
|
4193
5412
|
record_pages?: Record<string, string> | undefined;
|
|
@@ -4207,11 +5426,11 @@ declare const AppConfigurationSchema: z.ZodObject<{
|
|
|
4207
5426
|
app_slug: string;
|
|
4208
5427
|
org_id: string;
|
|
4209
5428
|
profile_slug: string;
|
|
5429
|
+
menu_slug?: string | undefined;
|
|
4210
5430
|
home?: {
|
|
4211
5431
|
type: "page" | "list";
|
|
4212
5432
|
reference: string;
|
|
4213
5433
|
} | null | undefined;
|
|
4214
|
-
menu_slug?: string | undefined;
|
|
4215
5434
|
default_agent_key?: string | undefined;
|
|
4216
5435
|
agent_keys?: string[] | undefined;
|
|
4217
5436
|
record_pages?: Record<string, string> | undefined;
|
|
@@ -4487,4 +5706,4 @@ declare function isCurrentUserDefault(value: unknown): value is CurrentUserDefau
|
|
|
4487
5706
|
/** Only the identity-valued attribute types can carry the sentinel. */
|
|
4488
5707
|
declare function acceptsCurrentUserDefault(type: AttributeType): boolean;
|
|
4489
5708
|
|
|
4490
|
-
export { type
|
|
5709
|
+
export { type CurrencySymbolSide as $, type AuditFields as A, type ComponentService as B, CURRENT_USER_DEFAULT as C, type ContactAddressAttributeKind as D, type ContactAddressAttributeMeta as E, type FileRef as F, ContactAddressAttributeMetaSchema as G, type ContactBindingDuplicatePolicy as H, type CreateAppConfigurationRequest as I, type CreateAppRequest as J, type CreateComponentRequest as K, type ListOptions as L, type CreateDesignReferenceRequest as M, type CreateEntityExtensionRequest as N, type CreateEntityRequest as O, PageIterator as P, type CreateListExtensionRequest as Q, type CreateListRequest as R, type CreateListViewRequest as S, type CreateMenuConfigurationExtensionRequest as T, type UserRef as U, type CreateMenuConfigurationRequest as V, type CreatePageExtensionRequest as W, type CreatePageRequest as X, type CreateVariableRequest as Y, type CurrencyAttributeMeta as Z, CurrencyAttributeMetaSchema as _, type Attribute as a, MenuConfigurationExtensionPlacementSchema as a$, type CurrencyValue as a0, type CurrentUserDefault as a1, DEFAULT_OPTIONS as a2, DEFAULT_PAGE_SIZE as a3, DONE as a4, type DeployModuleRequest as a5, type DesignReference as a6, type DesignReferenceContent as a7, DesignReferenceSchema as a8, type DesignReferenceService as a9, type ListEntitiesOptions as aA, type ListEntityExtensionsOptions as aB, type ListExtension as aC, type ListExtensionColumnPlacement as aD, ListExtensionColumnPlacementSchema as aE, ListExtensionSchema as aF, type ListExtensionService as aG, type ListFn as aH, type ListListExtensionsOptions as aI, type ListListViewsOptions as aJ, type ListListsOptions as aK, type ListMenuConfigurationExtensionsOptions as aL, type ListMenuConfigurationsOptions as aM, type ListModulesOptions as aN, type ListPageExtensionsOptions as aO, type ListPagesOptions as aP, ListSchema as aQ, type ListService as aR, type ListVariablesOptions as aS, type ListView as aT, ListViewSchema as aU, type ListViewService as aV, type LogicalOperator as aW, MENU_CONFIGURATION_EXTENSION_ANCHOR_ITEMS as aX, type MenuConfiguration as aY, type MenuConfigurationExtension as aZ, type MenuConfigurationExtensionPlacement as a_, type Done as aa, type Entity as ab, type EntityContactBinding as ac, EntityContactBindingSchema as ad, type EntityExtension as ae, EntityExtensionSchema as af, type EntityExtensionService as ag, EntitySchema as ah, type EntityService as ai, type EntityWithSchema as aj, EntityWithSchemaSchema as ak, type EnumAttributeMeta as al, type EnumValue as am, type ExtensionPosition as an, ExtensionPositionSchema as ao, type FileAttributeMeta as ap, FileRefSchema as aq, type FilterElement as ar, FilterElementSchema as as, type FilterGroup as at, FilterGroupSchema as au, type List as av, type ListAppConfigurationsOptions as aw, type ListAppsOptions as ax, type ListComponentsOptions as ay, type ListDesignReferencesOptions as az, type ListResult as b, type UserType as b$, type MenuConfigurationExtensionPosition as b0, MenuConfigurationExtensionPositionSchema as b1, MenuConfigurationExtensionSchema as b2, type MenuConfigurationExtensionService as b3, MenuConfigurationSchema as b4, type MenuConfigurationService as b5, type MenuItem as b6, MenuItemSchema as b7, MenuItemType as b8, MetaClient as b9, type PublicPageResponse as bA, type RelationAttributeMeta as bB, RelationAttributeMetaSchema as bC, type RequestOptions as bD, type ResolvedClientOptions as bE, type ResponseMeta as bF, ResponseMetaSchema as bG, type SortConfig as bH, SortConfigSchema as bI, type SortDirection as bJ, type Timestamps as bK, type TokenProvider as bL, type UpdateAppConfigurationRequest as bM, type UpdateAppRequest as bN, type UpdateComponentRequest as bO, type UpdateDesignReferenceRequest as bP, type UpdateEntityExtensionRequest as bQ, type UpdateEntityRequest as bR, type UpdateListExtensionRequest as bS, type UpdateListRequest as bT, type UpdateListViewRequest as bU, type UpdateMenuConfigurationExtensionRequest as bV, type UpdateMenuConfigurationRequest as bW, type UpdatePageExtensionRequest as bX, type UpdatePageRequest as bY, type UpdateVariableRequest as bZ, UserRefSchema as b_, type MetaListOptions as ba, type Module as bb, ModuleSchema as bc, type ModuleService as bd, type ModuleStatus as be, type OnDeleteAction as bf, OnDeleteActionSchema as bg, PAGE_EXTENSION_ANCHOR_MAIN as bh, PAGE_EXTENSION_ANCHOR_SIDE_PANEL as bi, PLATFORM_ATTRIBUTE_NAMES as bj, PLATFORM_USER_ID as bk, type Page as bl, type PageAction as bm, type PageActionKind as bn, PageActionSchema as bo, type PageExtension as bp, type PageExtensionPlacement as bq, PageExtensionPlacementSchema as br, PageExtensionSchema as bs, type PageExtensionService as bt, type PageLayout as bu, PageLayoutSchema as bv, PageSchema as bw, type PageService as bx, type PageType as by, type PublicPageComponent as bz, ProteosClient as c, type SizingProps as c$, type Variable as c0, VariableSchema as c1, type VariableService as c2, acceptsCurrentUserDefault as c3, allCurrencyCodes as c4, createIterator as c5, createListResultSchema as c6, currencyLabel as c7, currencySymbol as c8, currencySymbolSide as c9, type LayoutAlign as cA, type LayoutElement as cB, LayoutElementSchema as cC, LayoutElementType as cD, type LayoutGap as cE, type LayoutJustify as cF, type LayoutTab as cG, LayoutTabSchema as cH, type ListElement as cI, type NumberAttributeMeta as cJ, type ObjectAttributeMeta as cK, PAGE_BACKGROUND_TOKENS as cL, type PageBackgroundToken as cM, type PageLayoutSidePanel as cN, PageLayoutSidePanelSchema as cO, type PageStyle as cP, PageStyleSchema as cQ, type PrincipalAttributeMeta as cR, type PrincipalType as cS, type RecordFilterElement as cT, type RelatedListElement as cU, type RelatedRecordElement as cV, type ResponsiveSizing as cW, type RowElement as cX, type SectionElement as cY, type SizeValue as cZ, SizeValueSchema as c_, formatAmount as ca, formatMoney as cb, isCurrentUserDefault as cc, isPlatformAttributeName as cd, localeNumberSeparators as ce, parseAmount as cf, parseContactAddressMeta as cg, parseCurrencyMeta as ch, parseFileMeta as ci, parseRelationMeta as cj, platformAttributes as ck, resolveOptions as cl, type AttributeForLookup as cm, type AttributeMeta as cn, BUILT_IN_CONTROLS as co, type BuiltInControlSlug as cp, type CardElement as cq, type ColumnElement as cr, type CommonProps as cs, type ComponentElement as ct, type ControlBucket as cu, type DatetimeAttributeMeta as cv, type DatetimeFormat as cw, type DividerElement as cx, type FieldElement as cy, FileAttributeMetaSchema as cz, type PrincipalRef as d, type StringAttributeMeta as d0, type StringFormat as d1, type TabsElement as d2, type TextElement as d3, type TextVariant as d4, type UserAttributeMeta as d5, UserAttributeMetaSchema as d6, type WorkflowTriggerElement as d7, isBuiltInControl as d8, lookupCompatibleControls as d9, lookupControls as da, lookupPrimaryControl as db, parsePrincipalMeta as dc, parseUserMeta as dd, type PublicAccessOperation as e, type App as f, type AppConfiguration as g, AppConfigurationSchema as h, type AppConfigurationService as i, type AppHome as j, AppHomeSchema as k, type AppHomeType as l, AppSchema as m, type AppService as n, type ArrayAttributeMeta as o, type AttributeAccessRule as p, type AttributeRestrictions as q, AttributeSchema as r, type AttributeType as s, AuditFieldsSchema as t, type ClientOptions as u, type Column as v, ColumnSchema as w, type ComparisonOperator as x, type Component as y, ComponentSchema as z };
|