@stndrds/schema 1.0.0-alpha.245 → 1.0.0-alpha.246

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.
Files changed (53) hide show
  1. package/dist/{attributes-B4847Nul.d.ts → attributes-C-iyjLqJ.d.ts} +3 -23
  2. package/dist/{attributes-BpMes5H_.d.mts → attributes-Jji7TfFG.d.mts} +3 -23
  3. package/dist/{chunk-PZJN5IJW.js → chunk-RHNSWKMJ.js} +0 -4
  4. package/dist/{chunk-NAS2HJ3Y.mjs → chunk-VKJVBXHS.mjs} +1 -4
  5. package/dist/{helpers-DsJff5r-.d.ts → helpers-CMryP45K.d.mts} +3 -7
  6. package/dist/{helpers-ow7sORSi.d.mts → helpers-Chppkv0E.d.ts} +3 -7
  7. package/dist/index.d.mts +24 -57
  8. package/dist/index.d.ts +24 -57
  9. package/dist/index.js +171 -213
  10. package/dist/index.mjs +91 -130
  11. package/dist/{types-C8nztuFF.d.ts → types-D7VH7GrO.d.ts} +1 -1
  12. package/dist/{types-CyxVuV_d.d.mts → types-DgpsvFnh.d.mts} +1 -1
  13. package/dist/validation/all.d.mts +3 -3
  14. package/dist/validation/all.d.ts +3 -3
  15. package/dist/validation/all.js +7 -11
  16. package/dist/validation/all.mjs +1 -1
  17. package/dist/validation/complex/currency.d.mts +2 -2
  18. package/dist/validation/complex/currency.d.ts +2 -2
  19. package/dist/validation/complex/file.d.mts +2 -2
  20. package/dist/validation/complex/file.d.ts +2 -2
  21. package/dist/validation/complex/location.d.mts +2 -2
  22. package/dist/validation/complex/location.d.ts +2 -2
  23. package/dist/validation/complex/phone.d.mts +2 -2
  24. package/dist/validation/complex/phone.d.ts +2 -2
  25. package/dist/validation/complex/relation.d.mts +2 -2
  26. package/dist/validation/complex/relation.d.ts +2 -2
  27. package/dist/validation/complex/richtext.d.mts +2 -2
  28. package/dist/validation/complex/richtext.d.ts +2 -2
  29. package/dist/validation/complex/select.d.mts +2 -2
  30. package/dist/validation/complex/select.d.ts +2 -2
  31. package/dist/validation/complex/user.d.mts +2 -2
  32. package/dist/validation/complex/user.d.ts +2 -2
  33. package/dist/validation/computed/formula.d.mts +2 -2
  34. package/dist/validation/computed/formula.d.ts +2 -2
  35. package/dist/validation/computed/rollup.d.mts +2 -2
  36. package/dist/validation/computed/rollup.d.ts +2 -2
  37. package/dist/validation/config/index.d.mts +1 -1
  38. package/dist/validation/config/index.d.ts +1 -1
  39. package/dist/validation/core/index.d.mts +3 -3
  40. package/dist/validation/core/index.d.ts +3 -3
  41. package/dist/validation/object/index.d.mts +3 -3
  42. package/dist/validation/object/index.d.ts +3 -3
  43. package/dist/validation/object/index.js +13 -17
  44. package/dist/validation/object/index.mjs +1 -1
  45. package/dist/validation/primitives/checkbox.d.mts +2 -2
  46. package/dist/validation/primitives/checkbox.d.ts +2 -2
  47. package/dist/validation/primitives/date.d.mts +2 -2
  48. package/dist/validation/primitives/date.d.ts +2 -2
  49. package/dist/validation/primitives/number.d.mts +2 -2
  50. package/dist/validation/primitives/number.d.ts +2 -2
  51. package/dist/validation/primitives/text.d.mts +2 -2
  52. package/dist/validation/primitives/text.d.ts +2 -2
  53. package/package.json +2 -2
package/dist/index.mjs CHANGED
@@ -3,8 +3,8 @@ export { asTenantId, asUserId, deepEqual, generateId, indexBy } from './chunk-QY
3
3
  import './chunk-SP3PNHYF.mjs';
4
4
  import { parseComputedFormula } from './chunk-AAXJJNY6.mjs';
5
5
  export { ComputedFormulaParseError, parseAttributeConfig, parseComputedFormula } from './chunk-AAXJJNY6.mjs';
6
- import { createObjectValidator, SchemaError, SchemaErrorCode, createAttributeValidator, ValidationError, NotFoundError, DuplicateError } from './chunk-NAS2HJ3Y.mjs';
7
- export { AccessDeniedError, AttributeInUseError, AttributeNotFoundError, ChangeTypeNotSupportedError, ConcurrentModificationError, DestructiveSyncNotAllowedError, DuplicateError, ForbiddenError, MemoryNotFoundError, MigrationTimeoutError, NotFoundError, NotImplementedError, ObjectNotFoundError, ObjectReferencedError, OrphanSystemAttributeError, ProtectedResourceError, ProtectedRoleError, RecordNotFoundError, RecordReferencedError, RepositoryError, RoleNotFoundError, SchemaError, SchemaErrorCode, SearchBackendError, StorageError, SyncCascadeError, SyncConflictError, SyncError, SystemEntityImmutableError, ValidationError, computeRecordStatus, createFormAttributeValidator, isAttributeInUseError, isNotFoundError, isObjectReferencedError, isProtectedResourceError, isRecordReferencedError, isSchemaError, isValidationError, rejectUnknownAttributesOrThrow, validateDraft, validateDraftOrThrow, validateObject, validateObjectOrThrow } from './chunk-NAS2HJ3Y.mjs';
6
+ import { createObjectValidator, SchemaError, SchemaErrorCode, createAttributeValidator, ValidationError, NotFoundError, DuplicateError } from './chunk-VKJVBXHS.mjs';
7
+ export { AccessDeniedError, AttributeInUseError, AttributeNotFoundError, ChangeTypeNotSupportedError, ConcurrentModificationError, DestructiveSyncNotAllowedError, DuplicateError, ForbiddenError, MemoryNotFoundError, MigrationTimeoutError, NotFoundError, NotImplementedError, ObjectNotFoundError, ObjectReferencedError, OrphanSystemAttributeError, ProtectedResourceError, ProtectedRoleError, RecordNotFoundError, RecordReferencedError, RepositoryError, RoleNotFoundError, SchemaError, SchemaErrorCode, SearchBackendError, StorageError, SyncCascadeError, SyncConflictError, SyncError, SystemEntityImmutableError, ValidationError, createFormAttributeValidator, isAttributeInUseError, isNotFoundError, isObjectReferencedError, isProtectedResourceError, isRecordReferencedError, isSchemaError, isValidationError, rejectUnknownAttributesOrThrow, validateDraft, validateDraftOrThrow, validateObject, validateObjectOrThrow } from './chunk-VKJVBXHS.mjs';
8
8
  import './chunk-OSSGN43B.mjs';
9
9
  import './chunk-Q44QKLN4.mjs';
10
10
  import './chunk-UANQJ2GH.mjs';
@@ -66,6 +66,85 @@ var BEHAVIOR_PROPERTIES = [
66
66
  ];
67
67
  var PRESENTATION_PROPERTIES = ["label", "description", "placeholder", "icon"];
68
68
 
69
+ // src/types/system-attributes.ts
70
+ var SYSTEM_ATTRIBUTE_I18N_KEYS = {
71
+ createdAt: "createdAt",
72
+ updatedAt: "updatedAt",
73
+ createdBy: "createdBy",
74
+ lastUpdatedBy: "lastUpdatedBy",
75
+ attachments: "attachments"
76
+ };
77
+ function getSystemAttributeI18nKey(name) {
78
+ return SYSTEM_ATTRIBUTE_I18N_KEYS[name];
79
+ }
80
+ var SYSTEM_ATTRIBUTES = {
81
+ createdAt: {
82
+ id: "system:createdAt",
83
+ name: "createdAt",
84
+ label: "Created time",
85
+ type: "date",
86
+ required: false,
87
+ system: true,
88
+ icon: "clock-circle",
89
+ description: "When this record was created"
90
+ },
91
+ updatedAt: {
92
+ id: "system:updatedAt",
93
+ name: "updatedAt",
94
+ label: "Last edited time",
95
+ type: "date",
96
+ required: false,
97
+ system: true,
98
+ icon: "clock-circle",
99
+ description: "When this record was last modified"
100
+ },
101
+ createdBy: {
102
+ id: "system:createdBy",
103
+ name: "createdBy",
104
+ label: "Created by",
105
+ type: "user",
106
+ required: false,
107
+ system: true,
108
+ multiple: false,
109
+ icon: "user",
110
+ description: "Actor who created this record"
111
+ },
112
+ lastUpdatedBy: {
113
+ id: "system:lastUpdatedBy",
114
+ name: "lastUpdatedBy",
115
+ label: "Last edited by",
116
+ type: "user",
117
+ required: false,
118
+ system: true,
119
+ multiple: false,
120
+ icon: "user",
121
+ description: "Actor who last modified this record"
122
+ },
123
+ /**
124
+ * System attribute for free-form document attachments.
125
+ * Hidden from forms, visible in Documents tab.
126
+ * Users can attach any document without template constraints.
127
+ */
128
+ attachments: {
129
+ id: "system:attachments",
130
+ name: "attachments",
131
+ label: "Attachments",
132
+ type: "document",
133
+ required: false,
134
+ system: true,
135
+ hidden: true,
136
+ // Hidden from regular form views
137
+ icon: "paperclip",
138
+ description: "Free-form document attachments"
139
+ }
140
+ };
141
+ function getSystemAttributeList() {
142
+ return Object.values(SYSTEM_ATTRIBUTES);
143
+ }
144
+ function isManagedSystemAttribute(attribute) {
145
+ return attribute.id?.startsWith("system:") ?? false;
146
+ }
147
+
69
148
  // src/types/attribute-capabilities.ts
70
149
  var TEXT_OPERATORS = [
71
150
  "is",
@@ -220,7 +299,8 @@ function getAttributeCapabilities(attribute) {
220
299
  const sortable = !suppressed && SORTABLE_TYPES.has(attribute.type);
221
300
  const groupable = !suppressed && isGroupableType(attribute.type);
222
301
  const kanbanGroupable = !suppressed && attribute.type === "status";
223
- const readOnly = computed || document2;
302
+ const managed = isManagedSystemAttribute(attribute);
303
+ const readOnly = computed || document2 || managed;
224
304
  const editable = !(suppressed || readOnly);
225
305
  const required = isRequiredForbidden(attribute.type) ? "forbidden" : "allowed";
226
306
  const defaultValue = getDefaultValueCapability(attribute.type);
@@ -567,7 +647,6 @@ var RESERVED_ATTRIBUTE_NAMES = [
567
647
  "objectId",
568
648
  "label",
569
649
  "embeddingText",
570
- "completionStatus",
571
650
  "values",
572
651
  "metadata",
573
652
  "deletedAt",
@@ -608,82 +687,6 @@ function hasOptions(attr) {
608
687
  return attr.type === "select" || attr.type === "status" || attr.type === "multiselect";
609
688
  }
610
689
 
611
- // src/types/system-attributes.ts
612
- var SYSTEM_ATTRIBUTE_I18N_KEYS = {
613
- createdAt: "createdAt",
614
- updatedAt: "updatedAt",
615
- createdBy: "createdBy",
616
- lastUpdatedBy: "lastUpdatedBy",
617
- attachments: "attachments"
618
- };
619
- function getSystemAttributeI18nKey(name) {
620
- return SYSTEM_ATTRIBUTE_I18N_KEYS[name];
621
- }
622
- var SYSTEM_ATTRIBUTES = {
623
- createdAt: {
624
- id: "system:createdAt",
625
- name: "createdAt",
626
- label: "Created time",
627
- type: "date",
628
- required: false,
629
- system: true,
630
- icon: "clock-circle",
631
- description: "When this record was created"
632
- },
633
- updatedAt: {
634
- id: "system:updatedAt",
635
- name: "updatedAt",
636
- label: "Last edited time",
637
- type: "date",
638
- required: false,
639
- system: true,
640
- icon: "clock-circle",
641
- description: "When this record was last modified"
642
- },
643
- createdBy: {
644
- id: "system:createdBy",
645
- name: "createdBy",
646
- label: "Created by",
647
- type: "user",
648
- required: false,
649
- system: true,
650
- multiple: false,
651
- icon: "user",
652
- description: "Actor who created this record"
653
- },
654
- lastUpdatedBy: {
655
- id: "system:lastUpdatedBy",
656
- name: "lastUpdatedBy",
657
- label: "Last edited by",
658
- type: "user",
659
- required: false,
660
- system: true,
661
- multiple: false,
662
- icon: "user",
663
- description: "Actor who last modified this record"
664
- },
665
- /**
666
- * System attribute for free-form document attachments.
667
- * Hidden from forms, visible in Documents tab.
668
- * Users can attach any document without template constraints.
669
- */
670
- attachments: {
671
- id: "system:attachments",
672
- name: "attachments",
673
- label: "Attachments",
674
- type: "document",
675
- required: false,
676
- system: true,
677
- hidden: true,
678
- // Hidden from regular form views
679
- icon: "paperclip",
680
- description: "Free-form document attachments"
681
- }
682
- };
683
- function getSystemAttributeList() {
684
- return Object.values(SYSTEM_ATTRIBUTES);
685
- }
686
-
687
690
  // src/types/user-profiles.ts
688
691
  var USER_STATUSES = ["active", "suspended"];
689
692
 
@@ -3220,8 +3223,8 @@ var TableTabConfig = class {
3220
3223
  }
3221
3224
  /**
3222
3225
  * Set creation behavior when clicking "+"
3223
- * @param mode - "redirect" (navigate to detail), "inline" (empty row), or "modal" (stacked modal)
3224
- * @example .createMode("inline") or .createMode("modal")
3226
+ * @param mode - "redirect" (navigate to detail), "inline" (empty row), or "peek" (instant-create a draft and open it in the record stack side panel)
3227
+ * @example .createMode("inline") or .createMode("peek")
3225
3228
  */
3226
3229
  createMode(mode) {
3227
3230
  this.tabData.createMode = mode;
@@ -3654,7 +3657,6 @@ var DetailViewBuilder = class {
3654
3657
  this.data = {
3655
3658
  name,
3656
3659
  label,
3657
- layout: "page",
3658
3660
  tabs: []
3659
3661
  };
3660
3662
  }
@@ -3687,23 +3689,6 @@ var DetailViewBuilder = class {
3687
3689
  this.data.default = true;
3688
3690
  return this;
3689
3691
  }
3690
- /**
3691
- * Set the layout mode for the view
3692
- * @param value - "page" for full tabs, "modal" for single form
3693
- * @default "page"
3694
- */
3695
- layout(value) {
3696
- this.data.layout = value;
3697
- return this;
3698
- }
3699
- /**
3700
- * Shorthand for .layout("modal")
3701
- * Modal views have a single form tab without tabs UI
3702
- */
3703
- modal() {
3704
- this.data.layout = "modal";
3705
- return this;
3706
- }
3707
3692
  /**
3708
3693
  * Set metadata
3709
3694
  */
@@ -3724,7 +3709,6 @@ var DetailViewBuilder = class {
3724
3709
  }
3725
3710
  /**
3726
3711
  * Configure a side panel with flat attribute fields displayed alongside tab content.
3727
- * Not available for modal layout.
3728
3712
  *
3729
3713
  * @example .sidePanel({ attributes: ["visibility", "linkedTo"] })
3730
3714
  */
@@ -3767,19 +3751,7 @@ var DetailViewBuilder = class {
3767
3751
  (tab) => tab.name,
3768
3752
  (name) => `[DetailViewBuilder] Duplicate tab name "${name}"`
3769
3753
  );
3770
- if (this.data.layout === "modal") {
3771
- if (this.data.tabs.length !== 1) {
3772
- throw new Error("[DetailViewBuilder] Modal views must have exactly one tab");
3773
- }
3774
- if (this.data.tabs[0].type !== "form") {
3775
- throw new Error("[DetailViewBuilder] Modal views must have a form tab");
3776
- }
3777
- if (this.data.sidePanel) {
3778
- throw new Error("[DetailViewBuilder] Modal views cannot have a side panel");
3779
- }
3780
- }
3781
3754
  const config = {
3782
- layout: this.data.layout,
3783
3755
  tabs: this.data.tabs,
3784
3756
  sidePanel: this.data.sidePanel
3785
3757
  };
@@ -4045,8 +4017,8 @@ var ListViewTabConfigBuilder = class _ListViewTabConfigBuilder {
4045
4017
  }
4046
4018
  /**
4047
4019
  * Set creation behavior when clicking "+"
4048
- * @param mode - "redirect" (navigate to detail), "inline" (empty row), or "modal" (stacked modal)
4049
- * @example .createMode("inline") or .createMode("modal")
4020
+ * @param mode - "redirect" (navigate to detail), "inline" (empty row), or "peek" (instant-create a draft and open it in the record stack side panel)
4021
+ * @example .createMode("inline") or .createMode("peek")
4050
4022
  */
4051
4023
  createMode(mode) {
4052
4024
  this.tabData.createMode = mode;
@@ -5002,12 +4974,7 @@ function attributeToField(attr) {
5002
4974
  };
5003
4975
  }
5004
4976
  function generateDefaultDetailView(object2, options = {}) {
5005
- const {
5006
- includeActivityTab = true,
5007
- includeDocumentsTab = true,
5008
- excludeAttributes = [],
5009
- layout = "page"
5010
- } = options;
4977
+ const { includeActivityTab = true, includeDocumentsTab = true, excludeAttributes = [] } = options;
5011
4978
  const runtimeAttrs = getRuntimeAttributes(object2.attributes, excludeAttributes);
5012
4979
  const sortedAttrs = sortAttributes(
5013
4980
  runtimeAttrs.filter((attr) => getAttributeCapabilities(attr).presentation.formField)
@@ -5051,7 +5018,6 @@ function generateDefaultDetailView(object2, options = {}) {
5051
5018
  });
5052
5019
  }
5053
5020
  const config = {
5054
- layout,
5055
5021
  tabs
5056
5022
  };
5057
5023
  return {
@@ -5346,7 +5312,6 @@ var LIVE_EVENT_TYPE_REGISTRY = {
5346
5312
  "channel.revoked": true
5347
5313
  };
5348
5314
  var LIVE_EVENT_TYPES = Object.keys(LIVE_EVENT_TYPE_REGISTRY);
5349
- var COMPLETION_STATUSES = ["draft", "complete"];
5350
5315
  var VIEW_PROJECTION_STALE_REASONS = [
5351
5316
  "membership-unknown",
5352
5317
  "sort-unknown",
@@ -5444,9 +5409,6 @@ function hasOptional(value, key, predicate) {
5444
5409
  function isOneOf(value, values) {
5445
5410
  return typeof value === "string" && values.includes(value);
5446
5411
  }
5447
- function isCompletionStatus(value) {
5448
- return isOneOf(value, COMPLETION_STATUSES);
5449
- }
5450
5412
  function isNotificationKind(value) {
5451
5413
  return isOneOf(value, NOTIFICATION_KINDS);
5452
5414
  }
@@ -5469,7 +5431,7 @@ function isRecordFieldPatch(value) {
5469
5431
  return isRecord(value) && hasString(value, "fieldKey") && Object.hasOwn(value, "value") && hasVersion(value, "version");
5470
5432
  }
5471
5433
  function isRecordPatchPayload(payload) {
5472
- return payload.type === "record.patch" && hasString(payload, "objectId") && hasString(payload, "recordId") && hasVersion(payload, "recordVersion") && hasOptional(payload, "label", isString) && hasOptional(payload, "completionStatus", isCompletionStatus) && hasOptional(payload, "metadata", isRecord) && Array.isArray(payload.fieldPatches) && payload.fieldPatches.every(isRecordFieldPatch) && hasString(payload, "updatedAt");
5434
+ return payload.type === "record.patch" && hasString(payload, "objectId") && hasString(payload, "recordId") && hasVersion(payload, "recordVersion") && hasOptional(payload, "label", isString) && hasOptional(payload, "metadata", isRecord) && Array.isArray(payload.fieldPatches) && payload.fieldPatches.every(isRecordFieldPatch) && hasString(payload, "updatedAt");
5473
5435
  }
5474
5436
  function isRecordDeletedPayload(payload) {
5475
5437
  return payload.type === "record.deleted" && hasString(payload, "objectId") && hasString(payload, "recordId") && hasVersion(payload, "recordVersion") && hasString(payload, "deletedAt");
@@ -7047,9 +7009,8 @@ var SYSTEM_FILTER_OPERATORS = {
7047
7009
  id: ID_LIKE_OPERATORS,
7048
7010
  objectId: ID_LIKE_OPERATORS,
7049
7011
  tenantId: ID_LIKE_OPERATORS,
7050
- // Free-form text and status columns share their counterpart's operator set
7012
+ // Free-form text columns share their counterpart's operator set
7051
7013
  label: OPERATORS_BY_TYPE.text,
7052
- completionStatus: OPERATORS_BY_TYPE.status,
7053
7014
  // Date columns
7054
7015
  createdAt: OPERATORS_BY_TYPE.date,
7055
7016
  updatedAt: OPERATORS_BY_TYPE.date,
@@ -7159,4 +7120,4 @@ var CONNECTOR_CALLBACK_PARAM = {
7159
7120
  provider: "connector_provider"
7160
7121
  };
7161
7122
 
7162
- export { ALLOWED_PROPERTY_TYPES, ALL_ACTIONS, ALL_SYSTEM_RESOURCES, ATTRIBUTE_FILTER_OPERATORS, AUDIT_ACTIONS, AUDIT_RESOURCE_TYPES, AUTOFILL_ELIGIBLE_TYPES, ActivityTabConfig, BEHAVIOR_PROPERTIES, COMPUTED_FUNCTIONS, COMPUTED_FUNCTION_METADATA, COMPUTED_FUNCTION_NAMES, CONNECTOR_CALLBACK_PARAM, ComputedFormulaCompileError, CustomTabConfig, DB_COLUMN_FIELDS, DEFAULT_DOCUMENT_SLOT, DEFAULT_ROLES, DEFAULT_ROLE_DESCRIPTIONS, DEFAULT_ROLE_LABELS, DEFAULT_ROLE_PERMISSIONS, DOCUMENT_SYSTEM_ATTRIBUTES, DetailViewBuilder, DocumentSlotValidationError, DocumentsTabConfig, EMPTY_VALUE_PLACEHOLDER, EmailsTabConfig, FORM_FORBIDDEN_ATTRIBUTE_TYPES, FlagRegistry, FlagService, FormBuilder, FormRegistry, FormRowBuilder, FormStepBuilder, GroupBuilder, IDENTITY_PROPERTIES, LIVE_EVENT_TYPES, LIVE_STREAM_START_CURSOR, ListViewBuilder, ListViewTabConfigBuilder, MAX_PRESET_DEPTH, MEMORY_LIST_VIEW, MEMORY_OBJECT, MEMORY_VIEW, NOTIFICATION_INBOX_STATES, NOTIFICATION_KINDS, NOTIFICATION_PRIORITIES, NOTIFICATION_SENSITIVITIES, NOTIFICATION_TYPES_V1, NOTIFICATION_TYPE_AGENT_QUESTION_REQUESTED, NOTIFICATION_TYPE_AGENT_SESSION_COMPLETED, NOTIFICATION_TYPE_AGENT_SESSION_FAILED, NOTIFICATION_TYPE_AGENT_SESSION_TIMEOUT, NOTIFICATION_TYPE_AGENT_SESSION_WAITING_HUMAN, NOTIFICATION_TYPE_AGENT_TASK_ASSIGNED, NOTIFICATION_WORK_STATES, NO_VALUE_OPERATORS, NoopGeocodingAdapter, OPERATORS_BY_TYPE, OPERATOR_SPECS, ObjectBuilder, PRESENTATION_PROPERTIES, QUALIFIED_SEPARATOR, RELATION_TARGET_ANY, RESERVED_ATTRIBUTE_NAMES, RESERVED_OBJECT_NAMES, RelationGroupBuilder, RichtextTabConfig, SKILL_LIST_VIEW, SKILL_OBJECT, SKILL_VIEW, STANDARD_SCHEMA_VENDOR, SYSTEM_ATTRIBUTES, SYSTEM_ATTRIBUTE_I18N_KEYS, SYSTEM_FIELD_NAMES, SYSTEM_RESOURCES, SYSTEM_RESOURCE_LABELS, TabBuilder, TableTabConfig, USER_STATUSES, accessLevelToActions, actionsToAccessLevel, applyPipes, applyRelationProps, assertAcyclicComputedDependencies, assertLiveStreamCursor, booleanFlag, buildPropertySchema, buildQualifiedAttribute, checkbox, compareLiveStreamCursors, compileComputedFormula, compileRollupAttribute, createFlagRegistry, createFlagService, createStandardSchemaProps, currency, currentActor, date, dateValueStart, detailView, document, evaluateComputedAst, evaluateComputedFormula, evaluateComputedFormulaWithResult, evaluateFilterState, extractAttributeNames, extractValueRefs, file, flagRegistry, form, formRegistry, formatAttributeValue, formatComputedResult, formatLocationValue, formula, generateDefaultDetailView, generateDefaultListView, getActiveTab, getAttributeCapabilities, getAttributeFilterOperators, getErrorMessage, getLiveProtocolPayloadChannel, getOperatorPolarity, getRollupFilterOperators2 as getRollupFilterOperators, getSlotFieldTargets, getSystemAttributeI18nKey, getSystemAttributeList, getUserDisplayName, group, hasOptions, inferInverseCardinality, inferRollupReturnType, isAttributeFilterable, isAttributeGroupable, isAttributeKanbanGroupable, isAttributeSearchable, isAttributeSortable2 as isAttributeSortable, isBilateralRelation, isComputedFunctionName, isDateRangeValue, isDefaultRole, isDetailView, isDocumentAttribute, isDynamicValue, isEmptyObject, isFieldGroup, isFormDefinition, isFormFieldsRow, isFormFreeFieldRef, isFormHeadingRow, isFormSeparatorRow, isFormSlotFieldRef, isFormTextRow, isLabelExpression, isListView, isLiveErrorPayload, isLiveEventEnvelope, isLiveEventPayload, isLiveEventPayloadForType, isLiveEventType, isLiveGapPayload, isLiveReplayCompletePayload, isLiveStreamCursor, isNoValueOperator, isNotEmpty, isPlainRecord, isRelationGroup, isStandardSchema, isUniversalRelation, jsonFlag, listView, liveChannelKey, location, matchesMime, multiselect, normaliseDocumentSlots, normalizeDateValue, normalizeForEdgeRpc, now, number, numberFlag, object, parseLiveChannelKey, parseLiveSubscribePayload, parseLiveUnsubscribePayload, parseQualifiedAttribute, phone, registry, relation, relationGroup, renderLabelExpression, resetViewToDefault, resolvePropertyDefinitions, richtext, rollup, rollupToFormulaExpression, select, status, stringFlag, text, toMultiValueOperator, toUndefinedIfEmpty, today, user, validateAttributeName, validateQualifiedRule, validateSlotAgainstConfig, viewRegistry };
7123
+ export { ALLOWED_PROPERTY_TYPES, ALL_ACTIONS, ALL_SYSTEM_RESOURCES, ATTRIBUTE_FILTER_OPERATORS, AUDIT_ACTIONS, AUDIT_RESOURCE_TYPES, AUTOFILL_ELIGIBLE_TYPES, ActivityTabConfig, BEHAVIOR_PROPERTIES, COMPUTED_FUNCTIONS, COMPUTED_FUNCTION_METADATA, COMPUTED_FUNCTION_NAMES, CONNECTOR_CALLBACK_PARAM, ComputedFormulaCompileError, CustomTabConfig, DB_COLUMN_FIELDS, DEFAULT_DOCUMENT_SLOT, DEFAULT_ROLES, DEFAULT_ROLE_DESCRIPTIONS, DEFAULT_ROLE_LABELS, DEFAULT_ROLE_PERMISSIONS, DOCUMENT_SYSTEM_ATTRIBUTES, DetailViewBuilder, DocumentSlotValidationError, DocumentsTabConfig, EMPTY_VALUE_PLACEHOLDER, EmailsTabConfig, FORM_FORBIDDEN_ATTRIBUTE_TYPES, FlagRegistry, FlagService, FormBuilder, FormRegistry, FormRowBuilder, FormStepBuilder, GroupBuilder, IDENTITY_PROPERTIES, LIVE_EVENT_TYPES, LIVE_STREAM_START_CURSOR, ListViewBuilder, ListViewTabConfigBuilder, MAX_PRESET_DEPTH, MEMORY_LIST_VIEW, MEMORY_OBJECT, MEMORY_VIEW, NOTIFICATION_INBOX_STATES, NOTIFICATION_KINDS, NOTIFICATION_PRIORITIES, NOTIFICATION_SENSITIVITIES, NOTIFICATION_TYPES_V1, NOTIFICATION_TYPE_AGENT_QUESTION_REQUESTED, NOTIFICATION_TYPE_AGENT_SESSION_COMPLETED, NOTIFICATION_TYPE_AGENT_SESSION_FAILED, NOTIFICATION_TYPE_AGENT_SESSION_TIMEOUT, NOTIFICATION_TYPE_AGENT_SESSION_WAITING_HUMAN, NOTIFICATION_TYPE_AGENT_TASK_ASSIGNED, NOTIFICATION_WORK_STATES, NO_VALUE_OPERATORS, NoopGeocodingAdapter, OPERATORS_BY_TYPE, OPERATOR_SPECS, ObjectBuilder, PRESENTATION_PROPERTIES, QUALIFIED_SEPARATOR, RELATION_TARGET_ANY, RESERVED_ATTRIBUTE_NAMES, RESERVED_OBJECT_NAMES, RelationGroupBuilder, RichtextTabConfig, SKILL_LIST_VIEW, SKILL_OBJECT, SKILL_VIEW, STANDARD_SCHEMA_VENDOR, SYSTEM_ATTRIBUTES, SYSTEM_ATTRIBUTE_I18N_KEYS, SYSTEM_FIELD_NAMES, SYSTEM_RESOURCES, SYSTEM_RESOURCE_LABELS, TabBuilder, TableTabConfig, USER_STATUSES, accessLevelToActions, actionsToAccessLevel, applyPipes, applyRelationProps, assertAcyclicComputedDependencies, assertLiveStreamCursor, booleanFlag, buildPropertySchema, buildQualifiedAttribute, checkbox, compareLiveStreamCursors, compileComputedFormula, compileRollupAttribute, createFlagRegistry, createFlagService, createStandardSchemaProps, currency, currentActor, date, dateValueStart, detailView, document, evaluateComputedAst, evaluateComputedFormula, evaluateComputedFormulaWithResult, evaluateFilterState, extractAttributeNames, extractValueRefs, file, flagRegistry, form, formRegistry, formatAttributeValue, formatComputedResult, formatLocationValue, formula, generateDefaultDetailView, generateDefaultListView, getActiveTab, getAttributeCapabilities, getAttributeFilterOperators, getErrorMessage, getLiveProtocolPayloadChannel, getOperatorPolarity, getRollupFilterOperators2 as getRollupFilterOperators, getSlotFieldTargets, getSystemAttributeI18nKey, getSystemAttributeList, getUserDisplayName, group, hasOptions, inferInverseCardinality, inferRollupReturnType, isAttributeFilterable, isAttributeGroupable, isAttributeKanbanGroupable, isAttributeSearchable, isAttributeSortable2 as isAttributeSortable, isBilateralRelation, isComputedFunctionName, isDateRangeValue, isDefaultRole, isDetailView, isDocumentAttribute, isDynamicValue, isEmptyObject, isFieldGroup, isFormDefinition, isFormFieldsRow, isFormFreeFieldRef, isFormHeadingRow, isFormSeparatorRow, isFormSlotFieldRef, isFormTextRow, isLabelExpression, isListView, isLiveErrorPayload, isLiveEventEnvelope, isLiveEventPayload, isLiveEventPayloadForType, isLiveEventType, isLiveGapPayload, isLiveReplayCompletePayload, isLiveStreamCursor, isManagedSystemAttribute, isNoValueOperator, isNotEmpty, isPlainRecord, isRelationGroup, isStandardSchema, isUniversalRelation, jsonFlag, listView, liveChannelKey, location, matchesMime, multiselect, normaliseDocumentSlots, normalizeDateValue, normalizeForEdgeRpc, now, number, numberFlag, object, parseLiveChannelKey, parseLiveSubscribePayload, parseLiveUnsubscribePayload, parseQualifiedAttribute, phone, registry, relation, relationGroup, renderLabelExpression, resetViewToDefault, resolvePropertyDefinitions, richtext, rollup, rollupToFormulaExpression, select, status, stringFlag, text, toMultiValueOperator, toUndefinedIfEmpty, today, user, validateAttributeName, validateQualifiedRule, validateSlotAgainstConfig, viewRegistry };
@@ -1,4 +1,4 @@
1
- import { A as Attribute } from './attributes-B4847Nul.js';
1
+ import { A as Attribute } from './attributes-C-iyjLqJ.js';
2
2
 
3
3
  /**
4
4
  * Validation messages for Zod validators.
@@ -1,4 +1,4 @@
1
- import { A as Attribute } from './attributes-BpMes5H_.mjs';
1
+ import { A as Attribute } from './attributes-Jji7TfFG.mjs';
2
2
 
3
3
  /**
4
4
  * Validation messages for Zod validators.
@@ -1,8 +1,8 @@
1
- export { V as ValidationMessages } from '../types-CyxVuV_d.mjs';
1
+ export { V as ValidationMessages } from '../types-DgpsvFnh.mjs';
2
2
  export { DEFAULT_VALIDATION_MESSAGES, formatZodErrors } from './core/index.mjs';
3
3
  export { parseAttributeConfig } from './config/index.mjs';
4
- export { c as computeRecordStatus, a as createFormAttributeValidator, r as rejectUnknownAttributesOrThrow, v as validateDraft, b as validateDraftOrThrow, d as validateObject, e as validateObjectOrThrow } from '../helpers-ow7sORSi.mjs';
5
- import '../attributes-BpMes5H_.mjs';
4
+ export { c as createFormAttributeValidator, r as rejectUnknownAttributesOrThrow, v as validateDraft, a as validateDraftOrThrow, b as validateObject, d as validateObjectOrThrow } from '../helpers-CMryP45K.mjs';
5
+ import '../attributes-Jji7TfFG.mjs';
6
6
  import '@stndrds/constants';
7
7
  import '../utils.mjs';
8
8
  import 'zod';
@@ -1,8 +1,8 @@
1
- export { V as ValidationMessages } from '../types-C8nztuFF.js';
1
+ export { V as ValidationMessages } from '../types-D7VH7GrO.js';
2
2
  export { DEFAULT_VALIDATION_MESSAGES, formatZodErrors } from './core/index.js';
3
3
  export { parseAttributeConfig } from './config/index.js';
4
- export { c as computeRecordStatus, a as createFormAttributeValidator, r as rejectUnknownAttributesOrThrow, v as validateDraft, b as validateDraftOrThrow, d as validateObject, e as validateObjectOrThrow } from '../helpers-DsJff5r-.js';
5
- import '../attributes-B4847Nul.js';
4
+ export { c as createFormAttributeValidator, r as rejectUnknownAttributesOrThrow, v as validateDraft, a as validateDraftOrThrow, b as validateObject, d as validateObjectOrThrow } from '../helpers-Chppkv0E.js';
5
+ import '../attributes-C-iyjLqJ.js';
6
6
  import '@stndrds/constants';
7
7
  import '../utils.js';
8
8
  import 'zod';
@@ -2,7 +2,7 @@
2
2
 
3
3
  require('../chunk-PGERPYDR.js');
4
4
  var chunkNSM2JPC3_js = require('../chunk-NSM2JPC3.js');
5
- var chunkPZJN5IJW_js = require('../chunk-PZJN5IJW.js');
5
+ var chunkRHNSWKMJ_js = require('../chunk-RHNSWKMJ.js');
6
6
  require('../chunk-5WATIVCA.js');
7
7
  require('../chunk-SI34M4IC.js');
8
8
  require('../chunk-YIP5FJ5H.js');
@@ -25,33 +25,29 @@ Object.defineProperty(exports, "parseAttributeConfig", {
25
25
  enumerable: true,
26
26
  get: function () { return chunkNSM2JPC3_js.parseAttributeConfig; }
27
27
  });
28
- Object.defineProperty(exports, "computeRecordStatus", {
29
- enumerable: true,
30
- get: function () { return chunkPZJN5IJW_js.computeRecordStatus; }
31
- });
32
28
  Object.defineProperty(exports, "createFormAttributeValidator", {
33
29
  enumerable: true,
34
- get: function () { return chunkPZJN5IJW_js.createFormAttributeValidator; }
30
+ get: function () { return chunkRHNSWKMJ_js.createFormAttributeValidator; }
35
31
  });
36
32
  Object.defineProperty(exports, "rejectUnknownAttributesOrThrow", {
37
33
  enumerable: true,
38
- get: function () { return chunkPZJN5IJW_js.rejectUnknownAttributesOrThrow; }
34
+ get: function () { return chunkRHNSWKMJ_js.rejectUnknownAttributesOrThrow; }
39
35
  });
40
36
  Object.defineProperty(exports, "validateDraft", {
41
37
  enumerable: true,
42
- get: function () { return chunkPZJN5IJW_js.validateDraft; }
38
+ get: function () { return chunkRHNSWKMJ_js.validateDraft; }
43
39
  });
44
40
  Object.defineProperty(exports, "validateDraftOrThrow", {
45
41
  enumerable: true,
46
- get: function () { return chunkPZJN5IJW_js.validateDraftOrThrow; }
42
+ get: function () { return chunkRHNSWKMJ_js.validateDraftOrThrow; }
47
43
  });
48
44
  Object.defineProperty(exports, "validateObject", {
49
45
  enumerable: true,
50
- get: function () { return chunkPZJN5IJW_js.validateObject; }
46
+ get: function () { return chunkRHNSWKMJ_js.validateObject; }
51
47
  });
52
48
  Object.defineProperty(exports, "validateObjectOrThrow", {
53
49
  enumerable: true,
54
- get: function () { return chunkPZJN5IJW_js.validateObjectOrThrow; }
50
+ get: function () { return chunkRHNSWKMJ_js.validateObjectOrThrow; }
55
51
  });
56
52
  Object.defineProperty(exports, "DEFAULT_VALIDATION_MESSAGES", {
57
53
  enumerable: true,
@@ -1,6 +1,6 @@
1
1
  import '../chunk-SP3PNHYF.mjs';
2
2
  export { parseAttributeConfig } from '../chunk-AAXJJNY6.mjs';
3
- export { computeRecordStatus, createFormAttributeValidator, rejectUnknownAttributesOrThrow, validateDraft, validateDraftOrThrow, validateObject, validateObjectOrThrow } from '../chunk-NAS2HJ3Y.mjs';
3
+ export { createFormAttributeValidator, rejectUnknownAttributesOrThrow, validateDraft, validateDraftOrThrow, validateObject, validateObjectOrThrow } from '../chunk-VKJVBXHS.mjs';
4
4
  import '../chunk-OSSGN43B.mjs';
5
5
  import '../chunk-Q44QKLN4.mjs';
6
6
  import '../chunk-UANQJ2GH.mjs';
@@ -1,6 +1,6 @@
1
1
  import { z } from 'zod';
2
- import { C as CurrencyAttribute } from '../../attributes-BpMes5H_.mjs';
3
- import { V as ValidationMessages } from '../../types-CyxVuV_d.mjs';
2
+ import { C as CurrencyAttribute } from '../../attributes-Jji7TfFG.mjs';
3
+ import { V as ValidationMessages } from '../../types-DgpsvFnh.mjs';
4
4
  import '@stndrds/constants';
5
5
  import '../../utils.mjs';
6
6
 
@@ -1,6 +1,6 @@
1
1
  import { z } from 'zod';
2
- import { C as CurrencyAttribute } from '../../attributes-B4847Nul.js';
3
- import { V as ValidationMessages } from '../../types-C8nztuFF.js';
2
+ import { C as CurrencyAttribute } from '../../attributes-C-iyjLqJ.js';
3
+ import { V as ValidationMessages } from '../../types-D7VH7GrO.js';
4
4
  import '@stndrds/constants';
5
5
  import '../../utils.js';
6
6
 
@@ -1,6 +1,6 @@
1
1
  import { z } from 'zod';
2
- import { F as FileAttribute } from '../../attributes-BpMes5H_.mjs';
3
- import { V as ValidationMessages } from '../../types-CyxVuV_d.mjs';
2
+ import { F as FileAttribute } from '../../attributes-Jji7TfFG.mjs';
3
+ import { V as ValidationMessages } from '../../types-DgpsvFnh.mjs';
4
4
  import '@stndrds/constants';
5
5
  import '../../utils.mjs';
6
6
 
@@ -1,6 +1,6 @@
1
1
  import { z } from 'zod';
2
- import { F as FileAttribute } from '../../attributes-B4847Nul.js';
3
- import { V as ValidationMessages } from '../../types-C8nztuFF.js';
2
+ import { F as FileAttribute } from '../../attributes-C-iyjLqJ.js';
3
+ import { V as ValidationMessages } from '../../types-D7VH7GrO.js';
4
4
  import '@stndrds/constants';
5
5
  import '../../utils.js';
6
6
 
@@ -1,6 +1,6 @@
1
1
  import { z } from 'zod';
2
- import { L as LocationAttribute } from '../../attributes-BpMes5H_.mjs';
3
- import { V as ValidationMessages } from '../../types-CyxVuV_d.mjs';
2
+ import { L as LocationAttribute } from '../../attributes-Jji7TfFG.mjs';
3
+ import { V as ValidationMessages } from '../../types-DgpsvFnh.mjs';
4
4
  import '@stndrds/constants';
5
5
  import '../../utils.mjs';
6
6
 
@@ -1,6 +1,6 @@
1
1
  import { z } from 'zod';
2
- import { L as LocationAttribute } from '../../attributes-B4847Nul.js';
3
- import { V as ValidationMessages } from '../../types-C8nztuFF.js';
2
+ import { L as LocationAttribute } from '../../attributes-C-iyjLqJ.js';
3
+ import { V as ValidationMessages } from '../../types-D7VH7GrO.js';
4
4
  import '@stndrds/constants';
5
5
  import '../../utils.js';
6
6
 
@@ -1,6 +1,6 @@
1
1
  import { z } from 'zod';
2
- import { P as PhoneAttribute } from '../../attributes-BpMes5H_.mjs';
3
- import { V as ValidationMessages } from '../../types-CyxVuV_d.mjs';
2
+ import { P as PhoneAttribute } from '../../attributes-Jji7TfFG.mjs';
3
+ import { V as ValidationMessages } from '../../types-DgpsvFnh.mjs';
4
4
  import '@stndrds/constants';
5
5
  import '../../utils.mjs';
6
6
 
@@ -1,6 +1,6 @@
1
1
  import { z } from 'zod';
2
- import { P as PhoneAttribute } from '../../attributes-B4847Nul.js';
3
- import { V as ValidationMessages } from '../../types-C8nztuFF.js';
2
+ import { P as PhoneAttribute } from '../../attributes-C-iyjLqJ.js';
3
+ import { V as ValidationMessages } from '../../types-D7VH7GrO.js';
4
4
  import '@stndrds/constants';
5
5
  import '../../utils.js';
6
6
 
@@ -1,6 +1,6 @@
1
1
  import { z } from 'zod';
2
- import { M as MultiRelationAttribute, R as RelationAttribute, S as SingleRelationAttribute } from '../../attributes-BpMes5H_.mjs';
3
- import { V as ValidationMessages } from '../../types-CyxVuV_d.mjs';
2
+ import { M as MultiRelationAttribute, R as RelationAttribute, S as SingleRelationAttribute } from '../../attributes-Jji7TfFG.mjs';
3
+ import { V as ValidationMessages } from '../../types-DgpsvFnh.mjs';
4
4
  import '@stndrds/constants';
5
5
  import '../../utils.mjs';
6
6
 
@@ -1,6 +1,6 @@
1
1
  import { z } from 'zod';
2
- import { M as MultiRelationAttribute, R as RelationAttribute, S as SingleRelationAttribute } from '../../attributes-B4847Nul.js';
3
- import { V as ValidationMessages } from '../../types-C8nztuFF.js';
2
+ import { M as MultiRelationAttribute, R as RelationAttribute, S as SingleRelationAttribute } from '../../attributes-C-iyjLqJ.js';
3
+ import { V as ValidationMessages } from '../../types-D7VH7GrO.js';
4
4
  import '@stndrds/constants';
5
5
  import '../../utils.js';
6
6
 
@@ -1,6 +1,6 @@
1
1
  import { z } from 'zod';
2
- import { a as RichtextAttribute } from '../../attributes-BpMes5H_.mjs';
3
- import { V as ValidationMessages } from '../../types-CyxVuV_d.mjs';
2
+ import { a as RichtextAttribute } from '../../attributes-Jji7TfFG.mjs';
3
+ import { V as ValidationMessages } from '../../types-DgpsvFnh.mjs';
4
4
  import '@stndrds/constants';
5
5
  import '../../utils.mjs';
6
6
 
@@ -1,6 +1,6 @@
1
1
  import { z } from 'zod';
2
- import { a as RichtextAttribute } from '../../attributes-B4847Nul.js';
3
- import { V as ValidationMessages } from '../../types-C8nztuFF.js';
2
+ import { a as RichtextAttribute } from '../../attributes-C-iyjLqJ.js';
3
+ import { V as ValidationMessages } from '../../types-D7VH7GrO.js';
4
4
  import '@stndrds/constants';
5
5
  import '../../utils.js';
6
6
 
@@ -1,6 +1,6 @@
1
1
  import { z } from 'zod';
2
- import { b as MultiselectAttribute, c as SelectAttribute, d as StatusAttribute } from '../../attributes-BpMes5H_.mjs';
3
- import { V as ValidationMessages } from '../../types-CyxVuV_d.mjs';
2
+ import { b as MultiselectAttribute, c as SelectAttribute, d as StatusAttribute } from '../../attributes-Jji7TfFG.mjs';
3
+ import { V as ValidationMessages } from '../../types-DgpsvFnh.mjs';
4
4
  import '@stndrds/constants';
5
5
  import '../../utils.mjs';
6
6
 
@@ -1,6 +1,6 @@
1
1
  import { z } from 'zod';
2
- import { b as MultiselectAttribute, c as SelectAttribute, d as StatusAttribute } from '../../attributes-B4847Nul.js';
3
- import { V as ValidationMessages } from '../../types-C8nztuFF.js';
2
+ import { b as MultiselectAttribute, c as SelectAttribute, d as StatusAttribute } from '../../attributes-C-iyjLqJ.js';
3
+ import { V as ValidationMessages } from '../../types-D7VH7GrO.js';
4
4
  import '@stndrds/constants';
5
5
  import '../../utils.js';
6
6
 
@@ -1,6 +1,6 @@
1
1
  import { z } from 'zod';
2
- import { U as UserAttribute } from '../../attributes-BpMes5H_.mjs';
3
- import { V as ValidationMessages } from '../../types-CyxVuV_d.mjs';
2
+ import { U as UserAttribute } from '../../attributes-Jji7TfFG.mjs';
3
+ import { V as ValidationMessages } from '../../types-DgpsvFnh.mjs';
4
4
  import '@stndrds/constants';
5
5
  import '../../utils.mjs';
6
6
 
@@ -1,6 +1,6 @@
1
1
  import { z } from 'zod';
2
- import { U as UserAttribute } from '../../attributes-B4847Nul.js';
3
- import { V as ValidationMessages } from '../../types-C8nztuFF.js';
2
+ import { U as UserAttribute } from '../../attributes-C-iyjLqJ.js';
3
+ import { V as ValidationMessages } from '../../types-D7VH7GrO.js';
4
4
  import '@stndrds/constants';
5
5
  import '../../utils.js';
6
6
 
@@ -1,6 +1,6 @@
1
1
  import { z } from 'zod';
2
- import { e as FormulaAttribute } from '../../attributes-BpMes5H_.mjs';
3
- import { V as ValidationMessages } from '../../types-CyxVuV_d.mjs';
2
+ import { e as FormulaAttribute } from '../../attributes-Jji7TfFG.mjs';
3
+ import { V as ValidationMessages } from '../../types-DgpsvFnh.mjs';
4
4
  import '@stndrds/constants';
5
5
  import '../../utils.mjs';
6
6
 
@@ -1,6 +1,6 @@
1
1
  import { z } from 'zod';
2
- import { e as FormulaAttribute } from '../../attributes-B4847Nul.js';
3
- import { V as ValidationMessages } from '../../types-C8nztuFF.js';
2
+ import { e as FormulaAttribute } from '../../attributes-C-iyjLqJ.js';
3
+ import { V as ValidationMessages } from '../../types-D7VH7GrO.js';
4
4
  import '@stndrds/constants';
5
5
  import '../../utils.js';
6
6