@stndrds/schema 1.0.0-alpha.227 → 1.0.0-alpha.228

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-C6pCxr5P.d.mts → attributes-D6PICHuH.d.mts} +1 -1
  2. package/dist/{attributes-DZIol94T.d.ts → attributes-c0_kaRr7.d.ts} +1 -1
  3. package/dist/{helpers-Ca3PIt9O.d.mts → helpers-8AfBPkSS.d.mts} +2 -2
  4. package/dist/{helpers-B3EPtA8t.d.ts → helpers-D5Vsw5Ps.d.ts} +2 -2
  5. package/dist/index.d.mts +9 -7
  6. package/dist/index.d.ts +9 -7
  7. package/dist/index.js +121 -73
  8. package/dist/index.mjs +53 -7
  9. package/dist/{types-CBV2_ikK.d.ts → types-D6oD2MXG.d.ts} +1 -1
  10. package/dist/{types-DjGoodOL.d.mts → types-OTEsO6Ho.d.mts} +1 -1
  11. package/dist/validation/all.d.mts +3 -3
  12. package/dist/validation/all.d.ts +3 -3
  13. package/dist/validation/all.js +10 -10
  14. package/dist/validation/all.mjs +3 -3
  15. package/dist/validation/complex/currency.d.mts +2 -2
  16. package/dist/validation/complex/currency.d.ts +2 -2
  17. package/dist/validation/complex/file.d.mts +2 -2
  18. package/dist/validation/complex/file.d.ts +2 -2
  19. package/dist/validation/complex/location.d.mts +2 -2
  20. package/dist/validation/complex/location.d.ts +2 -2
  21. package/dist/validation/complex/phone.d.mts +2 -2
  22. package/dist/validation/complex/phone.d.ts +2 -2
  23. package/dist/validation/complex/relation.d.mts +2 -2
  24. package/dist/validation/complex/relation.d.ts +2 -2
  25. package/dist/validation/complex/richtext.d.mts +2 -2
  26. package/dist/validation/complex/richtext.d.ts +2 -2
  27. package/dist/validation/complex/select.d.mts +2 -2
  28. package/dist/validation/complex/select.d.ts +2 -2
  29. package/dist/validation/complex/user.d.mts +2 -2
  30. package/dist/validation/complex/user.d.ts +2 -2
  31. package/dist/validation/computed/formula.d.mts +2 -2
  32. package/dist/validation/computed/formula.d.ts +2 -2
  33. package/dist/validation/computed/rollup.d.mts +2 -2
  34. package/dist/validation/computed/rollup.d.ts +2 -2
  35. package/dist/validation/config/index.d.mts +1 -1
  36. package/dist/validation/config/index.d.ts +1 -1
  37. package/dist/validation/core/index.d.mts +3 -3
  38. package/dist/validation/core/index.d.ts +3 -3
  39. package/dist/validation/object/index.d.mts +3 -3
  40. package/dist/validation/object/index.d.ts +3 -3
  41. package/dist/validation/object/index.js +16 -16
  42. package/dist/validation/object/index.mjs +3 -3
  43. package/dist/validation/primitives/checkbox.d.mts +2 -2
  44. package/dist/validation/primitives/checkbox.d.ts +2 -2
  45. package/dist/validation/primitives/date.d.mts +2 -2
  46. package/dist/validation/primitives/date.d.ts +2 -2
  47. package/dist/validation/primitives/number.d.mts +2 -2
  48. package/dist/validation/primitives/number.d.ts +2 -2
  49. package/dist/validation/primitives/text.d.mts +2 -2
  50. package/dist/validation/primitives/text.d.ts +2 -2
  51. package/package.json +2 -2
  52. package/dist/{chunk-6CTUPVHH.mjs → chunk-PWBKZKLY.mjs} +2 -2
  53. package/dist/{chunk-MUGKKCY3.js → chunk-WVYBALNG.js} +2 -2
package/dist/index.js CHANGED
@@ -3,11 +3,13 @@
3
3
  var chunkFRCDMQER_js = require('./chunk-FRCDMQER.js');
4
4
  require('./chunk-PGERPYDR.js');
5
5
  var chunkNSM2JPC3_js = require('./chunk-NSM2JPC3.js');
6
- var chunkMUGKKCY3_js = require('./chunk-MUGKKCY3.js');
6
+ var chunkWVYBALNG_js = require('./chunk-WVYBALNG.js');
7
7
  require('./chunk-5WATIVCA.js');
8
8
  require('./chunk-O44XVGHE.js');
9
9
  require('./chunk-YIP5FJ5H.js');
10
10
  require('./chunk-SGSGREPG.js');
11
+ var chunkEBGRZUIH_js = require('./chunk-EBGRZUIH.js');
12
+ require('./chunk-EEH4XQ7W.js');
11
13
  require('./chunk-EW5XR2X3.js');
12
14
  require('./chunk-QWKLQRBX.js');
13
15
  require('./chunk-KNGWHQLR.js');
@@ -16,8 +18,6 @@ require('./chunk-V2UA2D4E.js');
16
18
  require('./chunk-ACKMC6FL.js');
17
19
  require('./chunk-Q5DIOYUE.js');
18
20
  require('./chunk-E6JUYGJX.js');
19
- var chunkEBGRZUIH_js = require('./chunk-EBGRZUIH.js');
20
- require('./chunk-EEH4XQ7W.js');
21
21
  var chunkYKWSHBT5_js = require('./chunk-YKWSHBT5.js');
22
22
  var constants = require('@stndrds/constants');
23
23
  var z3 = require('zod');
@@ -423,6 +423,52 @@ var AUTOFILL_ELIGIBLE_TYPES = [
423
423
  "multiselect"
424
424
  ];
425
425
 
426
+ // src/types/audit.ts
427
+ var AUDIT_RESOURCE_TYPES = [
428
+ "record",
429
+ "object",
430
+ "attribute",
431
+ "user",
432
+ "role",
433
+ "settings",
434
+ "file"
435
+ ];
436
+ var AUDIT_ACTIONS = [
437
+ // Records
438
+ "record.created",
439
+ "record.updated",
440
+ "record.deleted",
441
+ "record.restored",
442
+ "record.purged",
443
+ // Schema - Objects
444
+ "object.created",
445
+ "object.updated",
446
+ "object.deleted",
447
+ // Schema - Attributes
448
+ "attribute.created",
449
+ "attribute.updated",
450
+ "attribute.deleted",
451
+ // Users
452
+ "user.created",
453
+ "user.invited",
454
+ "user.updated",
455
+ "user.deleted",
456
+ "user.login",
457
+ "user.logout",
458
+ // Roles
459
+ "role.created",
460
+ "role.updated",
461
+ "role.deleted",
462
+ "role.assigned",
463
+ "role.revoked",
464
+ // Settings
465
+ "settings.updated",
466
+ // Files
467
+ "file.uploaded",
468
+ "file.updated",
469
+ "file.deleted"
470
+ ];
471
+
426
472
  // src/types/document-layout.ts
427
473
  var MAX_PRESET_DEPTH = 5;
428
474
 
@@ -1300,7 +1346,7 @@ var BaseAttributeBuilder = class {
1300
1346
  * @see https://standardschema.dev/
1301
1347
  */
1302
1348
  get "~standard"() {
1303
- const zodSchema = chunkMUGKKCY3_js.createAttributeValidator(this.build());
1349
+ const zodSchema = chunkWVYBALNG_js.createAttributeValidator(this.build());
1304
1350
  return createStandardSchemaProps(zodSchema);
1305
1351
  }
1306
1352
  constructor(type, name, label) {
@@ -2073,9 +2119,9 @@ var RollupAttributeBuilder = class extends BaseAttributeBuilder {
2073
2119
  if (fn === "original" && targetType !== void 0 && targetType !== "select" && targetType !== "status" && targetType !== "multiselect") {
2074
2120
  const relation2 = this.attr.relationAttribute ?? "relation";
2075
2121
  const target = this.attr.targetAttribute ?? "field";
2076
- throw new chunkMUGKKCY3_js.SchemaError(
2122
+ throw new chunkWVYBALNG_js.SchemaError(
2077
2123
  `Rollup "${this.attr.name}": .using("original") only supports a "select", "status", or "multiselect" target, but .targetType("${targetType}") was given. To surface a plain ${targetType} value from a related record, use a formula instead \u2014 e.g. formula({ name: "${this.attr.name}", label: "\u2026" }).expression("${relation2}.${target}").`,
2078
- chunkMUGKKCY3_js.SchemaErrorCode.VALIDATION_FAILED
2124
+ chunkWVYBALNG_js.SchemaErrorCode.VALIDATION_FAILED
2079
2125
  );
2080
2126
  }
2081
2127
  return super.build();
@@ -2571,7 +2617,7 @@ var ObjectBuilder = class {
2571
2617
  * @see https://standardschema.dev/
2572
2618
  */
2573
2619
  get "~standard"() {
2574
- const zodSchema = chunkMUGKKCY3_js.createObjectValidator(this.build());
2620
+ const zodSchema = chunkWVYBALNG_js.createObjectValidator(this.build());
2575
2621
  return createStandardSchemaProps(zodSchema);
2576
2622
  }
2577
2623
  /**
@@ -2785,26 +2831,26 @@ var ObjectBuilder = class {
2785
2831
  throw new Error("[ObjectBuilder] Missing required field: label");
2786
2832
  }
2787
2833
  if (!this._labelExpression) {
2788
- throw new chunkMUGKKCY3_js.SchemaError(
2834
+ throw new chunkWVYBALNG_js.SchemaError(
2789
2835
  `Object "${this.obj.name}" must have a labelExpression. The labelExpression defines how records are displayed in lists and relations (e.g. "{{ name }}").`,
2790
- chunkMUGKKCY3_js.SchemaErrorCode.VALIDATION_FAILED
2836
+ chunkWVYBALNG_js.SchemaErrorCode.VALIDATION_FAILED
2791
2837
  );
2792
2838
  }
2793
2839
  const labelResult = labelExpressionSchema.safeParse(this._labelExpression);
2794
2840
  if (!labelResult.success) {
2795
2841
  const errorMsg = labelResult.error.issues[0]?.message ?? "Invalid labelExpression";
2796
- throw new chunkMUGKKCY3_js.SchemaError(
2842
+ throw new chunkWVYBALNG_js.SchemaError(
2797
2843
  `Invalid labelExpression for "${this.obj.name}": ${errorMsg}`,
2798
- chunkMUGKKCY3_js.SchemaErrorCode.VALIDATION_FAILED
2844
+ chunkWVYBALNG_js.SchemaErrorCode.VALIDATION_FAILED
2799
2845
  );
2800
2846
  }
2801
2847
  if (this._embeddingExpression !== void 0) {
2802
2848
  const embeddingResult = labelExpressionSchema.safeParse(this._embeddingExpression);
2803
2849
  if (!embeddingResult.success) {
2804
2850
  const errorMsg = embeddingResult.error.issues[0]?.message ?? "Invalid embeddingExpression";
2805
- throw new chunkMUGKKCY3_js.SchemaError(
2851
+ throw new chunkWVYBALNG_js.SchemaError(
2806
2852
  `Invalid embeddingExpression for "${this.obj.name}": ${errorMsg}`,
2807
- chunkMUGKKCY3_js.SchemaErrorCode.VALIDATION_FAILED
2853
+ chunkWVYBALNG_js.SchemaErrorCode.VALIDATION_FAILED
2808
2854
  );
2809
2855
  }
2810
2856
  }
@@ -2845,7 +2891,7 @@ var ObjectBuilder = class {
2845
2891
  objectNameSchema.parse(name);
2846
2892
  } catch (error) {
2847
2893
  if (error instanceof z3__default.default.ZodError) {
2848
- throw new chunkMUGKKCY3_js.SchemaError(error.issues[0].message, chunkMUGKKCY3_js.SchemaErrorCode.INVALID_OBJECT_NAME);
2894
+ throw new chunkWVYBALNG_js.SchemaError(error.issues[0].message, chunkWVYBALNG_js.SchemaErrorCode.INVALID_OBJECT_NAME);
2849
2895
  }
2850
2896
  throw error;
2851
2897
  }
@@ -2856,7 +2902,7 @@ function object(config) {
2856
2902
  }
2857
2903
  function validatePresetStructure(presetId, nodes, depth) {
2858
2904
  const fail = (message, detail) => {
2859
- throw new chunkMUGKKCY3_js.ValidationError(message, [
2905
+ throw new chunkWVYBALNG_js.ValidationError(message, [
2860
2906
  { path: ["documentLayout", "presets", presetId], message: detail }
2861
2907
  ]);
2862
2908
  };
@@ -4622,8 +4668,8 @@ var registry = new NativeObjectRegistryClass();
4622
4668
  var SKILL_OBJECT = object({ name: "skill", label: "Skill" }).sealed().icon("sparkles").order(Number.MAX_SAFE_INTEGER).pluralLabel("Skills").labelExpression("{{ name }}").embeddingExpression("{{ name }}\n{{ description }}\n{{ content }}").attribute(text({ name: "name", label: "Name" }).maxLength(constants.SKILL_NAME_MAX_LENGTH).required()).attribute(
4623
4669
  text({ name: "description", label: "Description" }).multiline().maxLength(constants.SKILL_DESCRIPTION_MAX_LENGTH).required()
4624
4670
  ).attribute(richtext({ name: "content", label: "Content" })).build();
4625
- var SKILL_VIEW = detailView("skill-detail", "Skill").for("skill").default().sidePanel({ attributes: ["name", "description"] }).tab("content", "Content").richtext("content").titleAttribute("name").done().build();
4626
- var SKILL_LIST_VIEW = listView("skill-list", "Skills").for("skill").default().tab("all", "All").table().columns("name", "description").sort("name", "asc").build();
4671
+ var SKILL_VIEW = detailView("skill-detail", "Skill").for("skill").version(2).default().sidePanel({ attributes: ["name", "description"] }).tab("content", "Content").richtext("content").titleAttribute("name").done().build();
4672
+ var SKILL_LIST_VIEW = listView("skill-list", "Skills").for("skill").version(2).default().tab("all", "All").table().columns("name", "description").sort("name", "asc").build();
4627
4673
 
4628
4674
  // src/views/registry.ts
4629
4675
  var ViewRegistry = class {
@@ -6855,7 +6901,7 @@ function assertOperatorForType(operator, type, context) {
6855
6901
  if (!ops?.includes(operator)) {
6856
6902
  const validList = ops?.length ? ops.join(", ") : "(no operators registered for this type)";
6857
6903
  const summary = `Operator "${operator}" is not valid for ${context} type "${type}". Valid operators: ${validList}.`;
6858
- throw new chunkMUGKKCY3_js.ValidationError(summary, [
6904
+ throw new chunkWVYBALNG_js.ValidationError(summary, [
6859
6905
  {
6860
6906
  path: ["operator"],
6861
6907
  message: summary
@@ -6871,7 +6917,7 @@ function assertRelativeDateValue(rule) {
6871
6917
  const valid = typeof v === "object" && v !== null && typeof v.amount === "number" && Number.isFinite(v.amount) && v.amount > 0 && typeof v.unit === "string" && RELATIVE_DATE_UNITS.has(v.unit) && typeof v.direction === "string" && RELATIVE_DATE_DIRECTIONS.has(v.direction);
6872
6918
  if (!valid) {
6873
6919
  const m = `Operator "is_within" requires a relative-date value { amount: positive number, unit: days|weeks|months|years, direction: past|future }`;
6874
- throw new chunkMUGKKCY3_js.ValidationError(m, [{ path: ["value"], message: m }]);
6920
+ throw new chunkWVYBALNG_js.ValidationError(m, [{ path: ["value"], message: m }]);
6875
6921
  }
6876
6922
  }
6877
6923
  function assertDynamicValueForAttribute(rule, attrType) {
@@ -6879,34 +6925,34 @@ function assertDynamicValueForAttribute(rule, attrType) {
6879
6925
  const v = rule.value;
6880
6926
  if (v.dynamic === "actor" && attrType !== "user") {
6881
6927
  const m = `actor token (@me) is only valid on user attributes, not "${attrType}"`;
6882
- throw new chunkMUGKKCY3_js.ValidationError(m, [{ path: ["value"], message: m }]);
6928
+ throw new chunkWVYBALNG_js.ValidationError(m, [{ path: ["value"], message: m }]);
6883
6929
  }
6884
6930
  if (v.dynamic === "date" && attrType !== "date") {
6885
6931
  const m = `date token (@today/@now) is only valid on date attributes, not "${attrType}"`;
6886
- throw new chunkMUGKKCY3_js.ValidationError(m, [{ path: ["value"], message: m }]);
6932
+ throw new chunkWVYBALNG_js.ValidationError(m, [{ path: ["value"], message: m }]);
6887
6933
  }
6888
6934
  }
6889
6935
  function validateQualifiedRule(rule, context) {
6890
6936
  const rootAttr = context.attributes.find((a) => a.name === rule.attribute);
6891
6937
  const systemOps = SYSTEM_FILTER_OPERATORS[rule.attribute];
6892
6938
  if (!(rootAttr || systemOps)) {
6893
- throw new chunkMUGKKCY3_js.ValidationError(`Unknown attribute: ${rule.attribute}`, [
6939
+ throw new chunkWVYBALNG_js.ValidationError(`Unknown attribute: ${rule.attribute}`, [
6894
6940
  { path: ["attribute"], message: `Unknown attribute: ${rule.attribute}` }
6895
6941
  ]);
6896
6942
  }
6897
6943
  if (rule.quantifier !== void 0 && !rule.property) {
6898
6944
  const m = `quantifier is only valid on qualified edge rules (set "property")`;
6899
- throw new chunkMUGKKCY3_js.ValidationError(m, [{ path: ["quantifier"], message: m }]);
6945
+ throw new chunkWVYBALNG_js.ValidationError(m, [{ path: ["quantifier"], message: m }]);
6900
6946
  }
6901
6947
  if (!rootAttr) {
6902
6948
  if (rule.property) {
6903
- throw new chunkMUGKKCY3_js.ValidationError(`Cannot qualify system attribute "${rule.attribute}"`, [
6949
+ throw new chunkWVYBALNG_js.ValidationError(`Cannot qualify system attribute "${rule.attribute}"`, [
6904
6950
  { path: ["property"], message: `"${rule.attribute}" is a system column, not a reference` }
6905
6951
  ]);
6906
6952
  }
6907
6953
  if (!systemOps.includes(rule.operator)) {
6908
6954
  const summary = `Operator "${rule.operator}" is not valid for system attribute "${rule.attribute}". Valid operators: ${systemOps.join(", ")}.`;
6909
- throw new chunkMUGKKCY3_js.ValidationError(summary, [{ path: ["operator"], message: summary }]);
6955
+ throw new chunkWVYBALNG_js.ValidationError(summary, [{ path: ["operator"], message: summary }]);
6910
6956
  }
6911
6957
  assertRelativeDateValue(rule);
6912
6958
  return;
@@ -6917,25 +6963,25 @@ function validateQualifiedRule(rule, context) {
6917
6963
  if (!ops.includes(rule.operator)) {
6918
6964
  const validList = ops.length ? ops.join(", ") : "(not filterable)";
6919
6965
  const summary = `Operator "${rule.operator}" is not valid for attribute "${rootAttr.name}". Valid operators: ${validList}.`;
6920
- throw new chunkMUGKKCY3_js.ValidationError(summary, [{ path: ["operator"], message: summary }]);
6966
+ throw new chunkWVYBALNG_js.ValidationError(summary, [{ path: ["operator"], message: summary }]);
6921
6967
  }
6922
6968
  assertRelativeDateValue(rule);
6923
6969
  return;
6924
6970
  }
6925
6971
  if (!REFERENCE_TYPES.has(rootAttr.type)) {
6926
- throw new chunkMUGKKCY3_js.ValidationError(`Cannot qualify ${rootAttr.type} attribute "${rule.attribute}"`, [
6972
+ throw new chunkWVYBALNG_js.ValidationError(`Cannot qualify ${rootAttr.type} attribute "${rule.attribute}"`, [
6927
6973
  { path: ["property"], message: `Attribute "${rule.attribute}" is not a reference type` }
6928
6974
  ]);
6929
6975
  }
6930
6976
  const propSchema = rootAttr.properties;
6931
6977
  if (!propSchema) {
6932
- throw new chunkMUGKKCY3_js.ValidationError(`Attribute "${rule.attribute}" has no qualifyWith schema`, [
6978
+ throw new chunkWVYBALNG_js.ValidationError(`Attribute "${rule.attribute}" has no qualifyWith schema`, [
6933
6979
  { path: ["property"], message: `"${rule.attribute}" has no qualifyWith` }
6934
6980
  ]);
6935
6981
  }
6936
6982
  const propDef = propSchema.definitions.find((p) => p.name === rule.property);
6937
6983
  if (!propDef) {
6938
- throw new chunkMUGKKCY3_js.ValidationError(
6984
+ throw new chunkWVYBALNG_js.ValidationError(
6939
6985
  `Property "${rule.property}" not defined on "${rule.attribute}".qualifyWith()`,
6940
6986
  [{ path: ["property"], message: `Unknown property: ${rule.property}` }]
6941
6987
  );
@@ -6978,179 +7024,179 @@ Object.defineProperty(exports, "parseComputedFormula", {
6978
7024
  });
6979
7025
  Object.defineProperty(exports, "AccessDeniedError", {
6980
7026
  enumerable: true,
6981
- get: function () { return chunkMUGKKCY3_js.AccessDeniedError; }
7027
+ get: function () { return chunkWVYBALNG_js.AccessDeniedError; }
6982
7028
  });
6983
7029
  Object.defineProperty(exports, "AttributeInUseError", {
6984
7030
  enumerable: true,
6985
- get: function () { return chunkMUGKKCY3_js.AttributeInUseError; }
7031
+ get: function () { return chunkWVYBALNG_js.AttributeInUseError; }
6986
7032
  });
6987
7033
  Object.defineProperty(exports, "AttributeNotFoundError", {
6988
7034
  enumerable: true,
6989
- get: function () { return chunkMUGKKCY3_js.AttributeNotFoundError; }
7035
+ get: function () { return chunkWVYBALNG_js.AttributeNotFoundError; }
6990
7036
  });
6991
7037
  Object.defineProperty(exports, "ChangeTypeNotSupportedError", {
6992
7038
  enumerable: true,
6993
- get: function () { return chunkMUGKKCY3_js.ChangeTypeNotSupportedError; }
7039
+ get: function () { return chunkWVYBALNG_js.ChangeTypeNotSupportedError; }
6994
7040
  });
6995
7041
  Object.defineProperty(exports, "ConcurrentModificationError", {
6996
7042
  enumerable: true,
6997
- get: function () { return chunkMUGKKCY3_js.ConcurrentModificationError; }
7043
+ get: function () { return chunkWVYBALNG_js.ConcurrentModificationError; }
6998
7044
  });
6999
7045
  Object.defineProperty(exports, "DestructiveSyncNotAllowedError", {
7000
7046
  enumerable: true,
7001
- get: function () { return chunkMUGKKCY3_js.DestructiveSyncNotAllowedError; }
7047
+ get: function () { return chunkWVYBALNG_js.DestructiveSyncNotAllowedError; }
7002
7048
  });
7003
7049
  Object.defineProperty(exports, "DuplicateError", {
7004
7050
  enumerable: true,
7005
- get: function () { return chunkMUGKKCY3_js.DuplicateError; }
7051
+ get: function () { return chunkWVYBALNG_js.DuplicateError; }
7006
7052
  });
7007
7053
  Object.defineProperty(exports, "ForbiddenError", {
7008
7054
  enumerable: true,
7009
- get: function () { return chunkMUGKKCY3_js.ForbiddenError; }
7055
+ get: function () { return chunkWVYBALNG_js.ForbiddenError; }
7010
7056
  });
7011
7057
  Object.defineProperty(exports, "MemoryNotFoundError", {
7012
7058
  enumerable: true,
7013
- get: function () { return chunkMUGKKCY3_js.MemoryNotFoundError; }
7059
+ get: function () { return chunkWVYBALNG_js.MemoryNotFoundError; }
7014
7060
  });
7015
7061
  Object.defineProperty(exports, "MigrationTimeoutError", {
7016
7062
  enumerable: true,
7017
- get: function () { return chunkMUGKKCY3_js.MigrationTimeoutError; }
7063
+ get: function () { return chunkWVYBALNG_js.MigrationTimeoutError; }
7018
7064
  });
7019
7065
  Object.defineProperty(exports, "NotFoundError", {
7020
7066
  enumerable: true,
7021
- get: function () { return chunkMUGKKCY3_js.NotFoundError; }
7067
+ get: function () { return chunkWVYBALNG_js.NotFoundError; }
7022
7068
  });
7023
7069
  Object.defineProperty(exports, "NotImplementedError", {
7024
7070
  enumerable: true,
7025
- get: function () { return chunkMUGKKCY3_js.NotImplementedError; }
7071
+ get: function () { return chunkWVYBALNG_js.NotImplementedError; }
7026
7072
  });
7027
7073
  Object.defineProperty(exports, "ObjectNotFoundError", {
7028
7074
  enumerable: true,
7029
- get: function () { return chunkMUGKKCY3_js.ObjectNotFoundError; }
7075
+ get: function () { return chunkWVYBALNG_js.ObjectNotFoundError; }
7030
7076
  });
7031
7077
  Object.defineProperty(exports, "ObjectReferencedError", {
7032
7078
  enumerable: true,
7033
- get: function () { return chunkMUGKKCY3_js.ObjectReferencedError; }
7079
+ get: function () { return chunkWVYBALNG_js.ObjectReferencedError; }
7034
7080
  });
7035
7081
  Object.defineProperty(exports, "OrphanSystemAttributeError", {
7036
7082
  enumerable: true,
7037
- get: function () { return chunkMUGKKCY3_js.OrphanSystemAttributeError; }
7083
+ get: function () { return chunkWVYBALNG_js.OrphanSystemAttributeError; }
7038
7084
  });
7039
7085
  Object.defineProperty(exports, "ProtectedResourceError", {
7040
7086
  enumerable: true,
7041
- get: function () { return chunkMUGKKCY3_js.ProtectedResourceError; }
7087
+ get: function () { return chunkWVYBALNG_js.ProtectedResourceError; }
7042
7088
  });
7043
7089
  Object.defineProperty(exports, "ProtectedRoleError", {
7044
7090
  enumerable: true,
7045
- get: function () { return chunkMUGKKCY3_js.ProtectedRoleError; }
7091
+ get: function () { return chunkWVYBALNG_js.ProtectedRoleError; }
7046
7092
  });
7047
7093
  Object.defineProperty(exports, "RecordNotFoundError", {
7048
7094
  enumerable: true,
7049
- get: function () { return chunkMUGKKCY3_js.RecordNotFoundError; }
7095
+ get: function () { return chunkWVYBALNG_js.RecordNotFoundError; }
7050
7096
  });
7051
7097
  Object.defineProperty(exports, "RecordReferencedError", {
7052
7098
  enumerable: true,
7053
- get: function () { return chunkMUGKKCY3_js.RecordReferencedError; }
7099
+ get: function () { return chunkWVYBALNG_js.RecordReferencedError; }
7054
7100
  });
7055
7101
  Object.defineProperty(exports, "RepositoryError", {
7056
7102
  enumerable: true,
7057
- get: function () { return chunkMUGKKCY3_js.RepositoryError; }
7103
+ get: function () { return chunkWVYBALNG_js.RepositoryError; }
7058
7104
  });
7059
7105
  Object.defineProperty(exports, "RoleNotFoundError", {
7060
7106
  enumerable: true,
7061
- get: function () { return chunkMUGKKCY3_js.RoleNotFoundError; }
7107
+ get: function () { return chunkWVYBALNG_js.RoleNotFoundError; }
7062
7108
  });
7063
7109
  Object.defineProperty(exports, "SchemaError", {
7064
7110
  enumerable: true,
7065
- get: function () { return chunkMUGKKCY3_js.SchemaError; }
7111
+ get: function () { return chunkWVYBALNG_js.SchemaError; }
7066
7112
  });
7067
7113
  Object.defineProperty(exports, "SchemaErrorCode", {
7068
7114
  enumerable: true,
7069
- get: function () { return chunkMUGKKCY3_js.SchemaErrorCode; }
7115
+ get: function () { return chunkWVYBALNG_js.SchemaErrorCode; }
7070
7116
  });
7071
7117
  Object.defineProperty(exports, "SearchBackendError", {
7072
7118
  enumerable: true,
7073
- get: function () { return chunkMUGKKCY3_js.SearchBackendError; }
7119
+ get: function () { return chunkWVYBALNG_js.SearchBackendError; }
7074
7120
  });
7075
7121
  Object.defineProperty(exports, "StorageError", {
7076
7122
  enumerable: true,
7077
- get: function () { return chunkMUGKKCY3_js.StorageError; }
7123
+ get: function () { return chunkWVYBALNG_js.StorageError; }
7078
7124
  });
7079
7125
  Object.defineProperty(exports, "SyncCascadeError", {
7080
7126
  enumerable: true,
7081
- get: function () { return chunkMUGKKCY3_js.SyncCascadeError; }
7127
+ get: function () { return chunkWVYBALNG_js.SyncCascadeError; }
7082
7128
  });
7083
7129
  Object.defineProperty(exports, "SyncConflictError", {
7084
7130
  enumerable: true,
7085
- get: function () { return chunkMUGKKCY3_js.SyncConflictError; }
7131
+ get: function () { return chunkWVYBALNG_js.SyncConflictError; }
7086
7132
  });
7087
7133
  Object.defineProperty(exports, "SyncError", {
7088
7134
  enumerable: true,
7089
- get: function () { return chunkMUGKKCY3_js.SyncError; }
7135
+ get: function () { return chunkWVYBALNG_js.SyncError; }
7090
7136
  });
7091
7137
  Object.defineProperty(exports, "SystemEntityImmutableError", {
7092
7138
  enumerable: true,
7093
- get: function () { return chunkMUGKKCY3_js.SystemEntityImmutableError; }
7139
+ get: function () { return chunkWVYBALNG_js.SystemEntityImmutableError; }
7094
7140
  });
7095
7141
  Object.defineProperty(exports, "ValidationError", {
7096
7142
  enumerable: true,
7097
- get: function () { return chunkMUGKKCY3_js.ValidationError; }
7143
+ get: function () { return chunkWVYBALNG_js.ValidationError; }
7098
7144
  });
7099
7145
  Object.defineProperty(exports, "computeRecordStatus", {
7100
7146
  enumerable: true,
7101
- get: function () { return chunkMUGKKCY3_js.computeRecordStatus; }
7147
+ get: function () { return chunkWVYBALNG_js.computeRecordStatus; }
7102
7148
  });
7103
7149
  Object.defineProperty(exports, "createFormAttributeValidator", {
7104
7150
  enumerable: true,
7105
- get: function () { return chunkMUGKKCY3_js.createFormAttributeValidator; }
7151
+ get: function () { return chunkWVYBALNG_js.createFormAttributeValidator; }
7106
7152
  });
7107
7153
  Object.defineProperty(exports, "isAttributeInUseError", {
7108
7154
  enumerable: true,
7109
- get: function () { return chunkMUGKKCY3_js.isAttributeInUseError; }
7155
+ get: function () { return chunkWVYBALNG_js.isAttributeInUseError; }
7110
7156
  });
7111
7157
  Object.defineProperty(exports, "isNotFoundError", {
7112
7158
  enumerable: true,
7113
- get: function () { return chunkMUGKKCY3_js.isNotFoundError; }
7159
+ get: function () { return chunkWVYBALNG_js.isNotFoundError; }
7114
7160
  });
7115
7161
  Object.defineProperty(exports, "isObjectReferencedError", {
7116
7162
  enumerable: true,
7117
- get: function () { return chunkMUGKKCY3_js.isObjectReferencedError; }
7163
+ get: function () { return chunkWVYBALNG_js.isObjectReferencedError; }
7118
7164
  });
7119
7165
  Object.defineProperty(exports, "isProtectedResourceError", {
7120
7166
  enumerable: true,
7121
- get: function () { return chunkMUGKKCY3_js.isProtectedResourceError; }
7167
+ get: function () { return chunkWVYBALNG_js.isProtectedResourceError; }
7122
7168
  });
7123
7169
  Object.defineProperty(exports, "isRecordReferencedError", {
7124
7170
  enumerable: true,
7125
- get: function () { return chunkMUGKKCY3_js.isRecordReferencedError; }
7171
+ get: function () { return chunkWVYBALNG_js.isRecordReferencedError; }
7126
7172
  });
7127
7173
  Object.defineProperty(exports, "isSchemaError", {
7128
7174
  enumerable: true,
7129
- get: function () { return chunkMUGKKCY3_js.isSchemaError; }
7175
+ get: function () { return chunkWVYBALNG_js.isSchemaError; }
7130
7176
  });
7131
7177
  Object.defineProperty(exports, "isValidationError", {
7132
7178
  enumerable: true,
7133
- get: function () { return chunkMUGKKCY3_js.isValidationError; }
7179
+ get: function () { return chunkWVYBALNG_js.isValidationError; }
7134
7180
  });
7135
7181
  Object.defineProperty(exports, "rejectUnknownAttributesOrThrow", {
7136
7182
  enumerable: true,
7137
- get: function () { return chunkMUGKKCY3_js.rejectUnknownAttributesOrThrow; }
7183
+ get: function () { return chunkWVYBALNG_js.rejectUnknownAttributesOrThrow; }
7138
7184
  });
7139
7185
  Object.defineProperty(exports, "validateDraft", {
7140
7186
  enumerable: true,
7141
- get: function () { return chunkMUGKKCY3_js.validateDraft; }
7187
+ get: function () { return chunkWVYBALNG_js.validateDraft; }
7142
7188
  });
7143
7189
  Object.defineProperty(exports, "validateDraftOrThrow", {
7144
7190
  enumerable: true,
7145
- get: function () { return chunkMUGKKCY3_js.validateDraftOrThrow; }
7191
+ get: function () { return chunkWVYBALNG_js.validateDraftOrThrow; }
7146
7192
  });
7147
7193
  Object.defineProperty(exports, "validateObject", {
7148
7194
  enumerable: true,
7149
- get: function () { return chunkMUGKKCY3_js.validateObject; }
7195
+ get: function () { return chunkWVYBALNG_js.validateObject; }
7150
7196
  });
7151
7197
  Object.defineProperty(exports, "validateObjectOrThrow", {
7152
7198
  enumerable: true,
7153
- get: function () { return chunkMUGKKCY3_js.validateObjectOrThrow; }
7199
+ get: function () { return chunkWVYBALNG_js.validateObjectOrThrow; }
7154
7200
  });
7155
7201
  Object.defineProperty(exports, "DEFAULT_VALIDATION_MESSAGES", {
7156
7202
  enumerable: true,
@@ -7164,6 +7210,8 @@ exports.ALLOWED_PROPERTY_TYPES = ALLOWED_PROPERTY_TYPES;
7164
7210
  exports.ALL_ACTIONS = ALL_ACTIONS;
7165
7211
  exports.ALL_SYSTEM_RESOURCES = ALL_SYSTEM_RESOURCES;
7166
7212
  exports.ATTRIBUTE_FILTER_OPERATORS = ATTRIBUTE_FILTER_OPERATORS;
7213
+ exports.AUDIT_ACTIONS = AUDIT_ACTIONS;
7214
+ exports.AUDIT_RESOURCE_TYPES = AUDIT_RESOURCE_TYPES;
7167
7215
  exports.AUTOFILL_ELIGIBLE_TYPES = AUTOFILL_ELIGIBLE_TYPES;
7168
7216
  exports.ActivityTabConfig = ActivityTabConfig;
7169
7217
  exports.BEHAVIOR_PROPERTIES = BEHAVIOR_PROPERTIES;
package/dist/index.mjs CHANGED
@@ -3,12 +3,14 @@ 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 } from './chunk-6CTUPVHH.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-6CTUPVHH.mjs';
6
+ import { createObjectValidator, SchemaError, SchemaErrorCode, createAttributeValidator, ValidationError } from './chunk-PWBKZKLY.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-PWBKZKLY.mjs';
8
8
  import './chunk-OSSGN43B.mjs';
9
9
  import './chunk-6I2R22CX.mjs';
10
10
  import './chunk-UANQJ2GH.mjs';
11
11
  import './chunk-NOMHDOVE.mjs';
12
+ import { formatPhoneForDisplay } from './chunk-JUKLL5RJ.mjs';
13
+ import './chunk-GO6LQADH.mjs';
12
14
  import './chunk-QVLQPW3O.mjs';
13
15
  import './chunk-ZDQ5AP26.mjs';
14
16
  import './chunk-LV3FEUKU.mjs';
@@ -17,8 +19,6 @@ import './chunk-NS63SPNN.mjs';
17
19
  import './chunk-AYVHMVKQ.mjs';
18
20
  import './chunk-CI6EGLL6.mjs';
19
21
  import './chunk-YUFTHPOE.mjs';
20
- import { formatPhoneForDisplay } from './chunk-JUKLL5RJ.mjs';
21
- import './chunk-GO6LQADH.mjs';
22
22
  export { DEFAULT_VALIDATION_MESSAGES, formatZodErrors } from './chunk-HRQEZUAA.mjs';
23
23
  import { ICONS, SKILL_NAME_MAX_LENGTH, SKILL_DESCRIPTION_MAX_LENGTH, getCountryDisplayNameByIso3 } from '@stndrds/constants';
24
24
  import z3, { z } from 'zod';
@@ -420,6 +420,52 @@ var AUTOFILL_ELIGIBLE_TYPES = [
420
420
  "multiselect"
421
421
  ];
422
422
 
423
+ // src/types/audit.ts
424
+ var AUDIT_RESOURCE_TYPES = [
425
+ "record",
426
+ "object",
427
+ "attribute",
428
+ "user",
429
+ "role",
430
+ "settings",
431
+ "file"
432
+ ];
433
+ var AUDIT_ACTIONS = [
434
+ // Records
435
+ "record.created",
436
+ "record.updated",
437
+ "record.deleted",
438
+ "record.restored",
439
+ "record.purged",
440
+ // Schema - Objects
441
+ "object.created",
442
+ "object.updated",
443
+ "object.deleted",
444
+ // Schema - Attributes
445
+ "attribute.created",
446
+ "attribute.updated",
447
+ "attribute.deleted",
448
+ // Users
449
+ "user.created",
450
+ "user.invited",
451
+ "user.updated",
452
+ "user.deleted",
453
+ "user.login",
454
+ "user.logout",
455
+ // Roles
456
+ "role.created",
457
+ "role.updated",
458
+ "role.deleted",
459
+ "role.assigned",
460
+ "role.revoked",
461
+ // Settings
462
+ "settings.updated",
463
+ // Files
464
+ "file.uploaded",
465
+ "file.updated",
466
+ "file.deleted"
467
+ ];
468
+
423
469
  // src/types/document-layout.ts
424
470
  var MAX_PRESET_DEPTH = 5;
425
471
 
@@ -4619,8 +4665,8 @@ var registry = new NativeObjectRegistryClass();
4619
4665
  var SKILL_OBJECT = object({ name: "skill", label: "Skill" }).sealed().icon("sparkles").order(Number.MAX_SAFE_INTEGER).pluralLabel("Skills").labelExpression("{{ name }}").embeddingExpression("{{ name }}\n{{ description }}\n{{ content }}").attribute(text({ name: "name", label: "Name" }).maxLength(SKILL_NAME_MAX_LENGTH).required()).attribute(
4620
4666
  text({ name: "description", label: "Description" }).multiline().maxLength(SKILL_DESCRIPTION_MAX_LENGTH).required()
4621
4667
  ).attribute(richtext({ name: "content", label: "Content" })).build();
4622
- var SKILL_VIEW = detailView("skill-detail", "Skill").for("skill").default().sidePanel({ attributes: ["name", "description"] }).tab("content", "Content").richtext("content").titleAttribute("name").done().build();
4623
- var SKILL_LIST_VIEW = listView("skill-list", "Skills").for("skill").default().tab("all", "All").table().columns("name", "description").sort("name", "asc").build();
4668
+ var SKILL_VIEW = detailView("skill-detail", "Skill").for("skill").version(2).default().sidePanel({ attributes: ["name", "description"] }).tab("content", "Content").richtext("content").titleAttribute("name").done().build();
4669
+ var SKILL_LIST_VIEW = listView("skill-list", "Skills").for("skill").version(2).default().tab("all", "All").table().columns("name", "description").sort("name", "asc").build();
4624
4670
 
4625
4671
  // src/views/registry.ts
4626
4672
  var ViewRegistry = class {
@@ -6941,4 +6987,4 @@ function validateQualifiedRule(rule, context) {
6941
6987
  assertRelativeDateValue(rule);
6942
6988
  }
6943
6989
 
6944
- export { ALLOWED_PROPERTY_TYPES, ALL_ACTIONS, ALL_SYSTEM_RESOURCES, ATTRIBUTE_FILTER_OPERATORS, AUTOFILL_ELIGIBLE_TYPES, ActivityTabConfig, BEHAVIOR_PROPERTIES, COMPUTED_FUNCTIONS, COMPUTED_FUNCTION_METADATA, COMPUTED_FUNCTION_NAMES, 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, 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, assertAcyclicComputedDependencies, assertLiveStreamCursor, booleanFlag, buildPropertySchema, buildQualifiedAttribute, checkbox, compareLiveStreamCursors, compileComputedFormula, compileRollupAttribute, createFlagRegistry, createFlagService, createStandardSchemaProps, currency, currentActor, date, detailView, document, evaluateComputedAst, evaluateComputedFormula, evaluateComputedFormulaWithResult, evaluateFilterState, extractAttributeNames, file, flagRegistry, form, formRegistry, formatAttributeValue, formatComputedResult, formatLocationValue, formula, generateDefaultDetailView, generateDefaultListView, getActiveTab, getAttributeCapabilities, getAttributeFilterOperators, getErrorMessage, getLiveProtocolPayloadChannel, getOperatorPolarity, getRollupFilterOperators2 as getRollupFilterOperators, getSystemAttributeI18nKey, getSystemAttributeList, group, hasOptions, inferInverseCardinality, inferRollupReturnType, isAttributeFilterable, isAttributeGroupable, isAttributeKanbanGroupable, isAttributeSearchable, isAttributeSortable2 as isAttributeSortable, isBilateralRelation, isComputedFunctionName, 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, normalizeForEdgeRpc, now, number, numberFlag, object, parseLiveChannelKey, parseLiveSubscribePayload, parseLiveUnsubscribePayload, parseQualifiedAttribute, phone, registry, relation, relationGroup, renderLabelExpression, resetViewToDefault, resolvePropertyDefinitions, richtext, rollup, rollupToFormulaExpression, select, status, stringFlag, text, toUndefinedIfEmpty, today, user, validateAttributeName, validateQualifiedRule, validateSlotAgainstConfig, viewRegistry };
6990
+ 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, 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, 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, assertAcyclicComputedDependencies, assertLiveStreamCursor, booleanFlag, buildPropertySchema, buildQualifiedAttribute, checkbox, compareLiveStreamCursors, compileComputedFormula, compileRollupAttribute, createFlagRegistry, createFlagService, createStandardSchemaProps, currency, currentActor, date, detailView, document, evaluateComputedAst, evaluateComputedFormula, evaluateComputedFormulaWithResult, evaluateFilterState, extractAttributeNames, file, flagRegistry, form, formRegistry, formatAttributeValue, formatComputedResult, formatLocationValue, formula, generateDefaultDetailView, generateDefaultListView, getActiveTab, getAttributeCapabilities, getAttributeFilterOperators, getErrorMessage, getLiveProtocolPayloadChannel, getOperatorPolarity, getRollupFilterOperators2 as getRollupFilterOperators, getSystemAttributeI18nKey, getSystemAttributeList, group, hasOptions, inferInverseCardinality, inferRollupReturnType, isAttributeFilterable, isAttributeGroupable, isAttributeKanbanGroupable, isAttributeSearchable, isAttributeSortable2 as isAttributeSortable, isBilateralRelation, isComputedFunctionName, 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, normalizeForEdgeRpc, now, number, numberFlag, object, parseLiveChannelKey, parseLiveSubscribePayload, parseLiveUnsubscribePayload, parseQualifiedAttribute, phone, registry, relation, relationGroup, renderLabelExpression, resetViewToDefault, resolvePropertyDefinitions, richtext, rollup, rollupToFormulaExpression, select, status, stringFlag, text, toUndefinedIfEmpty, today, user, validateAttributeName, validateQualifiedRule, validateSlotAgainstConfig, viewRegistry };
@@ -1,4 +1,4 @@
1
- import { A as Attribute } from './attributes-DZIol94T.js';
1
+ import { A as Attribute } from './attributes-c0_kaRr7.js';
2
2
 
3
3
  /**
4
4
  * Validation messages for Zod validators.
@@ -1,4 +1,4 @@
1
- import { A as Attribute } from './attributes-C6pCxr5P.mjs';
1
+ import { A as Attribute } from './attributes-D6PICHuH.mjs';
2
2
 
3
3
  /**
4
4
  * Validation messages for Zod validators.
@@ -1,8 +1,8 @@
1
- export { V as ValidationMessages } from '../types-DjGoodOL.mjs';
1
+ export { V as ValidationMessages } from '../types-OTEsO6Ho.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-Ca3PIt9O.mjs';
5
- import '../attributes-C6pCxr5P.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-8AfBPkSS.mjs';
5
+ import '../attributes-D6PICHuH.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-CBV2_ikK.js';
1
+ export { V as ValidationMessages } from '../types-D6oD2MXG.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-B3EPtA8t.js';
5
- import '../attributes-DZIol94T.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-D5Vsw5Ps.js';
5
+ import '../attributes-c0_kaRr7.js';
6
6
  import '@stndrds/constants';
7
7
  import '../utils.js';
8
8
  import 'zod';