@stndrds/schema 1.0.0-alpha.351 → 1.0.0-alpha.352

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 (81) hide show
  1. package/dist/{all-CxrR3FfQ.d.mts → all-BmVuO_vv.d.mts} +38 -38
  2. package/dist/{all-DgCMEIjc.d.ts → all-Bv-5hu8j.d.ts} +38 -38
  3. package/dist/{attributes-BrWmES5w.d.mts → attributes-Cft68n4u.d.mts} +1 -1
  4. package/dist/{attributes-DF899HOt.d.ts → attributes-gEcJp-WP.d.ts} +1 -1
  5. package/dist/capabilities.d.mts +5 -13
  6. package/dist/capabilities.d.ts +5 -13
  7. package/dist/capabilities.js +1 -1
  8. package/dist/capabilities.mjs +1 -1
  9. package/dist/{checkbox-Clb_FZ4C.d.mts → checkbox-C-kdNm3A.d.mts} +2 -2
  10. package/dist/{checkbox-DdyYfy8E.d.ts → checkbox-C7ctkYoQ.d.ts} +2 -2
  11. package/dist/{date-DhwNqFU4.d.ts → date-CY4L11B_.d.ts} +2 -2
  12. package/dist/{date-CXp1zJM4.d.mts → date-mQ8gxU85.d.mts} +2 -2
  13. package/dist/{exceptions-DrrzAhuA.d.mts → exceptions-704MxF-j.d.mts} +53 -25
  14. package/dist/{exceptions-DrrzAhuA.d.ts → exceptions-704MxF-j.d.ts} +53 -25
  15. package/dist/exceptions.d.mts +2 -2
  16. package/dist/exceptions.d.ts +2 -2
  17. package/dist/exceptions.js +1 -1
  18. package/dist/exceptions.mjs +1 -1
  19. package/dist/{index-Bfvc4AZB.d.mts → index-BV_w2VTh.d.mts} +1 -1
  20. package/dist/{index-OvRk1isl.d.ts → index-Bbc3qfJ3.d.ts} +1 -1
  21. package/dist/{index-DggAjGTr.d.mts → index-Cga9i2js.d.mts} +1 -1
  22. package/dist/{index-Lp5dhlhc.d.mts → index-DQ4cGca2.d.mts} +50 -11
  23. package/dist/{index-DCw-X_sc.d.ts → index-DmS-DtU4.d.ts} +50 -11
  24. package/dist/{index-BOibflWy.d.ts → index-UYQmTrEG.d.ts} +1 -1
  25. package/dist/index.d.mts +1143 -1228
  26. package/dist/index.d.ts +1143 -1228
  27. package/dist/index.js +9 -9
  28. package/dist/index.mjs +9 -9
  29. package/dist/{number-CoTBX03I.d.ts → number-CAAAb8Wz.d.ts} +2 -2
  30. package/dist/{number-C_ZN3qJO.d.mts → number-eNEdOtC3.d.mts} +2 -2
  31. package/dist/{object-AqI3n2CP.mjs → object-sbH7KtsH.mjs} +1 -1
  32. package/dist/{object-BEwZx-Fu.js → object-xwmmQZ8z.js} +1 -1
  33. package/dist/{phone-MN6Li5Wx.js → phone-BXTenBvF.js} +1 -1
  34. package/dist/{phone-CsV9QNwF.mjs → phone-CRbCvH20.mjs} +1 -1
  35. package/dist/{text-D_rs4VYZ.d.mts → text-BKyAPMGX.d.mts} +2 -2
  36. package/dist/{text-Z8QjbxUx.d.ts → text-CP1eHBEv.d.ts} +2 -2
  37. package/dist/{utils-Cuz_wSKI.d.ts → utils-C6VEXia7.d.ts} +3 -3
  38. package/dist/{utils-Cl3b_6d8.d.mts → utils-CnhbUWev.d.mts} +3 -3
  39. package/dist/utils.d.mts +1 -1
  40. package/dist/utils.d.ts +1 -1
  41. package/dist/validation/all.d.mts +4 -4
  42. package/dist/validation/all.d.ts +4 -4
  43. package/dist/validation/all.js +1 -1
  44. package/dist/validation/all.mjs +1 -1
  45. package/dist/validation/complex/currency.d.mts +2 -2
  46. package/dist/validation/complex/currency.d.ts +2 -2
  47. package/dist/validation/complex/location.d.mts +2 -2
  48. package/dist/validation/complex/location.d.ts +2 -2
  49. package/dist/validation/complex/phone.d.mts +2 -2
  50. package/dist/validation/complex/phone.d.ts +2 -2
  51. package/dist/validation/complex/phone.js +1 -1
  52. package/dist/validation/complex/phone.mjs +1 -1
  53. package/dist/validation/complex/relation.d.mts +2 -2
  54. package/dist/validation/complex/relation.d.ts +2 -2
  55. package/dist/validation/complex/richtext.d.mts +2 -2
  56. package/dist/validation/complex/richtext.d.ts +2 -2
  57. package/dist/validation/complex/select.d.mts +2 -2
  58. package/dist/validation/complex/select.d.ts +2 -2
  59. package/dist/validation/complex/user.d.mts +2 -2
  60. package/dist/validation/complex/user.d.ts +2 -2
  61. package/dist/validation/computed/formula.d.mts +2 -2
  62. package/dist/validation/computed/formula.d.ts +2 -2
  63. package/dist/validation/computed/rollup.d.mts +2 -2
  64. package/dist/validation/computed/rollup.d.ts +2 -2
  65. package/dist/validation/config/index.d.mts +1 -1
  66. package/dist/validation/config/index.d.ts +1 -1
  67. package/dist/validation/core/index.d.mts +1 -1
  68. package/dist/validation/core/index.d.ts +1 -1
  69. package/dist/validation/object/index.d.mts +1 -1
  70. package/dist/validation/object/index.d.ts +1 -1
  71. package/dist/validation/object/index.js +1 -1
  72. package/dist/validation/object/index.mjs +1 -1
  73. package/dist/validation/primitives/checkbox.d.mts +1 -1
  74. package/dist/validation/primitives/checkbox.d.ts +1 -1
  75. package/dist/validation/primitives/date.d.mts +1 -1
  76. package/dist/validation/primitives/date.d.ts +1 -1
  77. package/dist/validation/primitives/number.d.mts +1 -1
  78. package/dist/validation/primitives/number.d.ts +1 -1
  79. package/dist/validation/primitives/text.d.mts +1 -1
  80. package/dist/validation/primitives/text.d.ts +1 -1
  81. package/package.json +2 -2
@@ -1,2 +1,2 @@
1
1
  /*! © 2025-2026 AND YOU CREATE SAS (RCS Paris 940 190 614). Proprietary — see LICENSE (Standards SDK License 1.0). */
2
- const e={DRAFT_REVISION_CONFLICT:`DRAFT_REVISION_CONFLICT`,UNKNOWN:`SCHEMA_UNKNOWN_ERROR`,OBJECT_NOT_FOUND:`SCHEMA_OBJECT_NOT_FOUND`,ATTRIBUTE_NOT_FOUND:`SCHEMA_ATTRIBUTE_NOT_FOUND`,RECORD_NOT_FOUND:`SCHEMA_RECORD_NOT_FOUND`,SOURCE_NOT_FOUND:`SCHEMA_SOURCE_NOT_FOUND`,ROLE_NOT_FOUND:`SCHEMA_ROLE_NOT_FOUND`,MEMORY_NOT_FOUND:`SCHEMA_MEMORY_NOT_FOUND`,SCHEMA_PLAN_NOT_FOUND:`SCHEMA_PLAN_NOT_FOUND`,VALIDATION_FAILED:`SCHEMA_VALIDATION_FAILED`,INVALID_ATTRIBUTE_NAME:`SCHEMA_INVALID_ATTRIBUTE_NAME`,INVALID_OBJECT_NAME:`SCHEMA_INVALID_OBJECT_NAME`,RESERVED_OBJECT_NAME:`SCHEMA_RESERVED_OBJECT_NAME`,PROTECTED_OBJECT:`SCHEMA_PROTECTED_OBJECT`,PROTECTED_ATTRIBUTE:`SCHEMA_PROTECTED_ATTRIBUTE`,PROTECTED_VIEW:`SCHEMA_PROTECTED_VIEW`,PROTECTED_ROLE:`SCHEMA_PROTECTED_ROLE`,FORBIDDEN:`SCHEMA_FORBIDDEN`,ACCESS_DENIED:`SCHEMA_ACCESS_DENIED`,WORKSPACE_INVARIANT:`SCHEMA_WORKSPACE_INVARIANT`,STATE_GATE:`SCHEMA_STATE_GATE`,ACTOR_CONTEXT_REQUIRED:`SCHEMA_ACTOR_CONTEXT_REQUIRED`,CONNECTOR_AUTH_FAILED:`SCHEMA_CONNECTOR_AUTH_FAILED`,CONNECTOR_INVALID_STATE:`SCHEMA_CONNECTOR_INVALID_STATE`,CONNECTOR_GRANT_ORPHANED:`SCHEMA_CONNECTOR_GRANT_ORPHANED`,SYNC_FAILED:`SCHEMA_SYNC_FAILED`,SYNC_CONFLICT:`SCHEMA_SYNC_CONFLICT`,SYNC_CASCADE:`SCHEMA_SYNC_CASCADE`,ORPHAN_SYSTEM_ATTRIBUTE:`SCHEMA_ORPHAN_SYSTEM_ATTRIBUTE`,SYSTEM_ENTITY_IMMUTABLE:`SCHEMA_SYSTEM_ENTITY_IMMUTABLE`,AMBIGUOUS_CHANGE:`SCHEMA_AMBIGUOUS_CHANGE`,DUPLICATE:`SCHEMA_DUPLICATE`,DUPLICATE_OBJECT:`SCHEMA_DUPLICATE_OBJECT`,DUPLICATE_ATTRIBUTE:`SCHEMA_DUPLICATE_ATTRIBUTE`,CONFLICT:`SCHEMA_CONFLICT`,STORAGE_UPLOAD_FAILED:`SCHEMA_STORAGE_UPLOAD_FAILED`,STORAGE_DOWNLOAD_FAILED:`SCHEMA_STORAGE_DOWNLOAD_FAILED`,STORAGE_DELETE_FAILED:`SCHEMA_STORAGE_DELETE_FAILED`,STORAGE_URL_FAILED:`SCHEMA_STORAGE_URL_FAILED`,REPOSITORY_CREATE_FAILED:`SCHEMA_REPOSITORY_CREATE_FAILED`,REPOSITORY_UPDATE_FAILED:`SCHEMA_REPOSITORY_UPDATE_FAILED`,REPOSITORY_DELETE_FAILED:`SCHEMA_REPOSITORY_DELETE_FAILED`,REPOSITORY_QUERY_FAILED:`SCHEMA_REPOSITORY_QUERY_FAILED`,NOT_IMPLEMENTED:`SCHEMA_NOT_IMPLEMENTED`,TIMEOUT:`SCHEMA_TIMEOUT`,RECORD_REFERENCED:`SCHEMA_RECORD_REFERENCED`,ATTRIBUTE_IN_USE:`SCHEMA_ATTRIBUTE_IN_USE`,OBJECT_REFERENCED:`SCHEMA_OBJECT_REFERENCED`,CONFIGURATION_REQUIRED:`CONFIGURATION_REQUIRED`,SEARCH_ADAPTER_REQUIRED:`SEARCH_ADAPTER_REQUIRED`,SEARCH_BACKEND_FAILED:`SEARCH_BACKEND_FAILED`,SEARCH_BACKEND_REJECTED:`SEARCH_BACKEND_REJECTED`,INVARIANT_VIOLATION:`INVARIANT_VIOLATION`,TENANT_CONTEXT_MISSING:`TENANT_CONTEXT_MISSING`,JOB_RUN_METADATA_MISMATCH:`JOB_RUN_METADATA_MISMATCH`,JOB_COALESCED_FAILURE_HANDLED:`JOB_COALESCED_FAILURE_HANDLED`,FEATURE_FLAGS_CONTEXT:`FEATURE_FLAGS_CONTEXT`,REALTIME_RATE_LIMITED:`REALTIME_RATE_LIMITED`,REALTIME_DELIVERY_FAILED:`REALTIME_DELIVERY_FAILED`,REALTIME_SUBSCRIPTION_FAILED:`REALTIME_SUBSCRIPTION_FAILED`,AGENT_UNKNOWN:`AGENT_UNKNOWN`,AGENT_DEPTH_EXCEEDED:`AGENT_DEPTH_EXCEEDED`,AGENT_COST_LIMIT_EXCEEDED:`AGENT_COST_LIMIT_EXCEEDED`,AGENT_TREE_COST_LIMIT_EXCEEDED:`AGENT_TREE_COST_LIMIT_EXCEEDED`,CREDITS_EXHAUSTED:`CREDITS_EXHAUSTED`,QUOTA_EXCEEDED:`QUOTA_EXCEEDED`,AGENT_SESSION_NOT_FOUND:`AGENT_SESSION_NOT_FOUND`,AGENT_DEFINITION_NOT_FOUND:`AGENT_DEFINITION_NOT_FOUND`,AGENT_RUN_CONFIG:`AGENT_RUN_CONFIG`,AGENT_STREAMING:`AGENT_STREAMING`,AGENT_MISSING_ACTOR:`AGENT_MISSING_ACTOR`,AGENT_INVALID_STATE:`AGENT_INVALID_STATE`,AGENT_COMPACTION_IMPOSSIBLE:`AGENT_COMPACTION_IMPOSSIBLE`,AGENT_COMPACTION_TIMEOUT:`AGENT_COMPACTION_TIMEOUT`,AGENT_LEASE_HELD:`AGENT_LEASE_HELD`,AGENT_LEASE_UNAVAILABLE:`AGENT_LEASE_UNAVAILABLE`,AGENT_WORK_MODE_REQUIRED:`AGENT_WORK_MODE_REQUIRED`,AGENT_MESSAGE_NOT_FOUND:`AGENT_MESSAGE_NOT_FOUND`,AGENT_MESSAGE_NOT_EDITABLE:`AGENT_MESSAGE_NOT_EDITABLE`,INVALID_TOOL_INPUT:`INVALID_TOOL_INPUT`,EDIT_MATCH_NOT_FOUND:`EDIT_MATCH_NOT_FOUND`,EDIT_MATCH_AMBIGUOUS:`EDIT_MATCH_AMBIGUOUS`,EDIT_NO_CHANGE:`EDIT_NO_CHANGE`,EDIT_TARGET_UNAVAILABLE:`EDIT_TARGET_UNAVAILABLE`,EDIT_TARGET_UNSUPPORTED:`EDIT_TARGET_UNSUPPORTED`,AGENT_EXECUTION_CANCELLED:`AGENT_EXECUTION_CANCELLED`,AGENT_EXECUTION_TIMEOUT:`AGENT_EXECUTION_TIMEOUT`,AGENT_EXTERNAL_OUTCOME_UNKNOWN:`AGENT_EXTERNAL_OUTCOME_UNKNOWN`,AGENT_TOOL_CANCELLATION_POLICY:`AGENT_TOOL_CANCELLATION_POLICY`,AGENT_CANCELLATION_WATCH_CAPACITY:`AGENT_CANCELLATION_WATCH_CAPACITY`,AGENT_CANCELLATION_CLEANUP:`AGENT_CANCELLATION_CLEANUP`,AGENT_TURN_FINALIZER_STALLED:`AGENT_TURN_FINALIZER_STALLED`,DEVICE_NOT_FOUND:`DEVICE_NOT_FOUND`,DEVICE_OFFLINE:`DEVICE_OFFLINE`,DEVICE_CAPABILITY_MISMATCH:`DEVICE_CAPABILITY_MISMATCH`,DEVICE_CHANNEL_PROTOCOL:`DEVICE_CHANNEL_PROTOCOL`,AI_UNKNOWN:`AI_UNKNOWN`,AI_USAGE_LIMIT_EXCEEDED:`AI_USAGE_LIMIT_EXCEEDED`,AI_INVALID_USAGE:`AI_INVALID_USAGE`,AI_INVALID_MODEL:`AI_INVALID_MODEL`,AI_INVALID_MODEL_INPUT:`AI_INVALID_MODEL_INPUT`,AI_REPOSITORY_ERROR:`AI_REPOSITORY_ERROR`,AI_GENERATION_FAILED:`AI_GENERATION_FAILED`,AI_DECISION_FAILED:`AI_DECISION_FAILED`,AI_IMAGE_USAGE_PENDING:`AI_IMAGE_USAGE_PENDING`,AI_IMAGE_GENERATION_INDETERMINATE:`AI_IMAGE_GENERATION_INDETERMINATE`,AI_IMAGE_RESERVATION_CLEANUP_INDETERMINATE:`AI_IMAGE_RESERVATION_CLEANUP_INDETERMINATE`,AI_IMAGE_PUBLICATION_FAILED:`AI_IMAGE_PUBLICATION_FAILED`,DOCUMENT_MIME_NOT_ACCEPTED:`DOCUMENT_MIME_NOT_ACCEPTED`,DOCUMENT_MULTIPLE_NOT_ALLOWED:`DOCUMENT_MULTIPLE_NOT_ALLOWED`,DOCUMENT_NOT_FOUND_FOR_OPERATION:`DOCUMENT_NOT_FOUND_FOR_OPERATION`,DOCUMENT_STORAGE_FAILED:`DOCUMENT_STORAGE_FAILED`,DOCUMENT_SIZE_EXCEEDED:`DOCUMENT_SIZE_EXCEEDED`,DOCUMENT_OCR_FAILED:`DOCUMENT_OCR_FAILED`,DOCUMENT_BLOB_EMPTY:`DOCUMENT_BLOB_EMPTY`,DOCUMENT_FILE_TOO_LARGE:`DOCUMENT_FILE_TOO_LARGE`,DOCUMENT_FILE_NOT_FOUND:`DOCUMENT_FILE_NOT_FOUND`,DOCUMENT_FILE_ALREADY_PACKED:`DOCUMENT_FILE_ALREADY_PACKED`,DOCUMENT_RECORD_NOT_FOUND:`DOCUMENT_RECORD_NOT_FOUND`,DOCUMENT_RECORD_OBJECT_MISMATCH:`DOCUMENT_RECORD_OBJECT_MISMATCH`,DOCUMENT_FOLDER_SERVICE_UNAVAILABLE:`DOCUMENT_FOLDER_SERVICE_UNAVAILABLE`,DOCUMENT_FOLDER_PATH_NOT_FOUND:`DOCUMENT_FOLDER_PATH_NOT_FOUND`,EMAIL_PROVIDER_API_FAILED:`EMAIL_PROVIDER_API_FAILED`,EMAIL_SEND_FAILED:`EMAIL_SEND_FAILED`,EMAIL_SENT_NOT_STORED:`EMAIL_SENT_NOT_STORED`,EMAIL_BATCH_ITEM_FAILED:`EMAIL_BATCH_ITEM_FAILED`,CALENDAR_PROVIDER_API_FAILED:`CALENDAR_PROVIDER_API_FAILED`,REFLEX_INVALID_TRANSITION:`REFLEX_INVALID_TRANSITION`,REFLEX_INVALID_TOKEN:`REFLEX_INVALID_TOKEN`,REFLEX_CAPABILITY_DENIED:`REFLEX_CAPABILITY_DENIED`,REFLEX_GATEWAY_UNAVAILABLE:`REFLEX_GATEWAY_UNAVAILABLE`,REFLEX_BUNDLE_FAILED:`REFLEX_BUNDLE_FAILED`,REFLEX_EGRESS_DENIED:`REFLEX_EGRESS_DENIED`,REFLEX_PROTOCOL_VIOLATION:`REFLEX_PROTOCOL_VIOLATION`,REFLEX_RUN_FAILED:`REFLEX_RUN_FAILED`,REFLEX_RUN_TIMEOUT:`REFLEX_RUN_TIMEOUT`,REFLEX_DEPENDENCY_DRIFT:`REFLEX_DEPENDENCY_DRIFT`,REFLEX_NOT_READY:`REFLEX_NOT_READY`,REFLEX_INVARIANT_VIOLATION:`REFLEX_INVARIANT_VIOLATION`,EMBEDDING_MODEL_UNAVAILABLE:`EMBEDDING_MODEL_UNAVAILABLE`,EMBEDDING_DIMENSION_MISMATCH:`EMBEDDING_DIMENSION_MISMATCH`};var SchemaError=class extends Error{constructor(t,n=e.UNKNOWN,r){super(t),this.name=`SchemaError`,this.code=n,this.details=r,Object.setPrototypeOf(this,new.target.prototype)}toJSON(){return{name:this.name,code:this.code,message:this.message,details:this.details}}},NotFoundError=class extends SchemaError{constructor(t,n,r=e.RECORD_NOT_FOUND,i=`${t} with id "${n}" not found`){super(i,r,{resourceType:t,resourceId:n}),this._tag=`NotFoundError`,this.name=`NotFoundError`,this.resourceType=t,this.resourceId=n}},ObjectNotFoundError=class extends NotFoundError{constructor(t){super(`Object`,t,e.OBJECT_NOT_FOUND),this.name=`ObjectNotFoundError`}},AttributeNotFoundError=class extends NotFoundError{constructor(t){super(`Attribute`,t,e.ATTRIBUTE_NOT_FOUND),this.name=`AttributeNotFoundError`}},RecordNotFoundError=class extends NotFoundError{constructor(t){super(`Record`,t,e.RECORD_NOT_FOUND),this.name=`RecordNotFoundError`}},SchemaPlanNotFoundError=class extends NotFoundError{constructor(t){super(`Schema plan`,t,e.SCHEMA_PLAN_NOT_FOUND),this.name=`SchemaPlanNotFoundError`}},t=class ValidationError extends SchemaError{constructor(t,n){super(t,e.VALIDATION_FAILED,{errors:n}),this._tag=`ValidationError`,this.name=`ValidationError`,this.errors=n}static fromZodErrors(e){let t=e.map(e=>({path:e.path.map(String),message:e.message})),n=`Validation failed: ${t.map(e=>`${e.path.join(`.`)}: ${e.message}`).join(`, `)}`;return new ValidationError(n,t)}},AmbiguousSchemaChangeError=class extends t{constructor(t,n){super(t,n),this.code=e.AMBIGUOUS_CHANGE,this.name=`AmbiguousSchemaChangeError`}},ProtectedResourceError=class extends SchemaError{constructor(t,n,r){let i=t===`object`?e.PROTECTED_OBJECT:t===`view`?e.PROTECTED_VIEW:e.PROTECTED_ATTRIBUTE;super(`Cannot ${r} system ${t} "${n}"`,i,{resourceType:t,resourceName:n,operation:r}),this.name=`ProtectedResourceError`,this.resourceType=t,this.resourceName=n,this.operation=r}},SyncError=class extends SchemaError{constructor(t,n,r){super(`Failed to sync object "${t}": ${n}`,e.SYNC_FAILED,{objectName:t,cause:r?.message}),this.name=`SyncError`,this.objectName=t,this.cause=r}},SystemEntityImmutableError=class extends SchemaError{constructor(t,n){super(`Cannot mutate system ${t} "${n}". System entities are declared in code and immutable at runtime.`,e.SYSTEM_ENTITY_IMMUTABLE,{entityType:t,entityName:n}),this.name=`SystemEntityImmutableError`,this.entityType=t,this.entityName=n}},SyncConflictError=class extends SchemaError{constructor(t){let n=t.attributeName?`"${t.objectName}.${t.attributeName}"`:`"${t.objectName}"`;super(`Cannot promote runtime entity ${n}: ${t.reason}. Resolve via: (1) relax the code constraint, (2) migrate runtime values manually, or (3) rename the code declaration.`,e.SYNC_CONFLICT,{objectName:t.objectName,attributeName:t.attributeName,reason:t.reason}),this.name=`SyncConflictError`,this.objectName=t.objectName,this.attributeName=t.attributeName,this.reason=t.reason}},SyncCascadeError=class extends SchemaError{constructor(t,n){super(`Cannot demote object "${t}": attributes ${n.join(`, `)} are still declared in code. Remove them from code first, or restore the object.`,e.SYNC_CASCADE,{objectName:t,conflictingAttributes:n}),this.name=`SyncCascadeError`,this.objectName=t,this.conflictingAttributes=n}},OrphanSystemAttributeError=class extends SchemaError{constructor(t,n){super(`Attribute "${t}.${n}" is system:true but its object parent is system:false. This is an invariant violation.`,e.ORPHAN_SYSTEM_ATTRIBUTE,{objectName:t,attributeName:n}),this.name=`OrphanSystemAttributeError`,this.objectName=t,this.attributeName=n}},DuplicateError=class extends SchemaError{constructor(t,n,r){let i=t===`object`?e.DUPLICATE_OBJECT:t===`attribute`?e.DUPLICATE_ATTRIBUTE:e.DUPLICATE,a=`${t.charAt(0).toUpperCase()}${t.slice(1)} "${n}" already exists`;super(r??a,i,{resourceType:t,resourceName:n}),this.name=`DuplicateError`,this.resourceType=t,this.resourceName=n}};const n={builder:`cannot be built by a consumer`,registry:`cannot be registered by a consumer`,bundle:`cannot be claimed by a bundle`,source:`cannot be declared by a schema source`};var ReservedObjectNameError=class extends SchemaError{constructor(t,r){super(`"${t}" is a framework-native object name and ${n[r]}: the framework ships it, pick another name.`,e.RESERVED_OBJECT_NAME,{objectName:t,context:r}),this.name=`ReservedObjectNameError`,this.objectName=t}};function isSchemaError(e){return e instanceof SchemaError}function isNotFoundError(e){return e instanceof NotFoundError}function isValidationError(e){return e instanceof t}function isProtectedResourceError(e){return e instanceof ProtectedResourceError}var ForbiddenError=class extends SchemaError{constructor(t,n,r){super(`No ${n} permission on object "${t}"`,e.FORBIDDEN,{objectName:t,action:n,userId:r}),this._tag=`ForbiddenError`,this.name=`ForbiddenError`,this.objectName=t,this.action=n,this.userId=r}},ProtectedRoleError=class extends SchemaError{constructor(t,n){super(`Cannot ${n} system role "${t}"`,e.PROTECTED_ROLE,{roleName:t,operation:n}),this.name=`ProtectedRoleError`,this.roleName=t,this.operation=n}},RoleNotFoundError=class extends NotFoundError{constructor(t){super(`Role`,t,e.ROLE_NOT_FOUND),this.name=`RoleNotFoundError`}},ConcurrentModificationError=class extends SchemaError{constructor(t){super(`Record ${t} was modified by another request. Please refresh and try again.`,e.CONFLICT,{recordId:t})}},StorageError=class extends SchemaError{constructor(t,n,r,i){let a=t===`upload`?e.STORAGE_UPLOAD_FAILED:t===`download`?e.STORAGE_DOWNLOAD_FAILED:t===`delete`?e.STORAGE_DELETE_FAILED:e.STORAGE_URL_FAILED;super(`Storage ${t} failed: ${n}`,a,{operation:t,path:r,cause:i}),this.name=`StorageError`,this.operation=t,this.path=r,this.cause=i}},AccessDeniedError=class extends SchemaError{constructor(t,n){super(n??`Access denied to resource: ${t}`,e.ACCESS_DENIED,{resource:t,reason:n}),this.name=`AccessDeniedError`,this.resource=t,this.reason=n}},RepositoryError=class extends SchemaError{constructor(t,n,r,i){let a=t===`create`?e.REPOSITORY_CREATE_FAILED:t===`update`?e.REPOSITORY_UPDATE_FAILED:t===`delete`?e.REPOSITORY_DELETE_FAILED:e.REPOSITORY_QUERY_FAILED;super(`Failed to ${t} ${n}: ${r}${i?` (${i})`:``}`,a,{operation:t,entity:n,cause:i}),this.name=`RepositoryError`,this.operation=t,this.entity=n,this.cause=i}};function searchBackendMessage(e,t,n,r){return t===`unavailable`?`Search backend unavailable for ${e}`:`${t===`capacity`?`Search backend out of capacity for ${e}`:`Search backend rejected ${e}`}${n?`: ${n}`:``}${r?` — ${r}`:``}`}var SearchBackendError=class extends SchemaError{constructor(t,n,r={}){let i=r.kind??`unavailable`;super(searchBackendMessage(t,i,r.backendCode,r.detail),i===`unavailable`?e.SEARCH_BACKEND_FAILED:e.SEARCH_BACKEND_REJECTED,{scope:t,cause:n,kind:i,...r.backendCode?{backendCode:r.backendCode}:{}}),this.name=`SearchBackendError`,this.scope=t,this.cause=n,this.kind=i,this.backendCode=r.backendCode}},NotImplementedError=class extends SchemaError{constructor(t,n){let r=n?`${t}: not implemented (${n})`:`${t}: not implemented`;super(r,e.NOT_IMPLEMENTED,{feature:t,milestone:n}),this.name=`NotImplementedError`,this.feature=t,this.milestone=n}},MemoryNotFoundError=class extends NotFoundError{constructor(t){super(`Memory`,t,e.MEMORY_NOT_FOUND),this.name=`MemoryNotFoundError`}},RecordReferencedError=class extends SchemaError{constructor(t,n){let r=n.reduce((e,t)=>e+t.count,0);super(`Cannot delete record: referenced by ${r} record${r>1?`s`:``}`,e.RECORD_REFERENCED,{recordId:t,references:n}),this.name=`RecordReferencedError`,this.recordId=t,this.references=n}},AttributeInUseError=class extends SchemaError{constructor(t,n,r){super(`Cannot delete attribute "${t}": used in ${n}${r===void 0?``:` ${r}`}`,e.ATTRIBUTE_IN_USE,{attributeName:t,usage:n,...r===void 0?{}:{location:r}}),this.name=`AttributeInUseError`,this.attributeName=t,this.usage=n,this.location=r}},ObjectReferencedError=class extends SchemaError{constructor(t,n){super(`Cannot delete object "${t}": target of relations in ${n.join(`, `)}`,e.OBJECT_REFERENCED,{objectName:t,referencingObjects:n}),this.name=`ObjectReferencedError`,this.objectName=t,this.referencingObjects=n}},RealtimeRateLimitedError=class extends SchemaError{constructor(){super(`Supabase Realtime delivery was rate limited`,e.REALTIME_RATE_LIMITED),this.name=`RealtimeRateLimitedError`}},RealtimeDeliveryError=class extends SchemaError{constructor(){super(`Supabase Realtime delivery failed`,e.REALTIME_DELIVERY_FAILED),this.name=`RealtimeDeliveryError`}},RealtimeSubscriptionError=class extends SchemaError{constructor(){super(`Supabase Realtime subscription failed`,e.REALTIME_SUBSCRIPTION_FAILED),this.name=`RealtimeSubscriptionError`}};function isRecordReferencedError(e){return e instanceof RecordReferencedError}function isAttributeInUseError(e){return e instanceof AttributeInUseError}function isObjectReferencedError(e){return e instanceof ObjectReferencedError}export{AccessDeniedError,AmbiguousSchemaChangeError,AttributeInUseError,AttributeNotFoundError,ConcurrentModificationError,DuplicateError,ForbiddenError,MemoryNotFoundError,NotFoundError,NotImplementedError,ObjectNotFoundError,ObjectReferencedError,OrphanSystemAttributeError,ProtectedResourceError,ProtectedRoleError,RealtimeDeliveryError,RealtimeRateLimitedError,RealtimeSubscriptionError,RecordNotFoundError,RecordReferencedError,RepositoryError,ReservedObjectNameError,RoleNotFoundError,SchemaError,e as SchemaErrorCode,SchemaPlanNotFoundError,SearchBackendError,StorageError,SyncCascadeError,SyncConflictError,SyncError,SystemEntityImmutableError,t as ValidationError,isAttributeInUseError,isNotFoundError,isObjectReferencedError,isProtectedResourceError,isRecordReferencedError,isSchemaError,isValidationError};
2
+ const e={DRAFT_REVISION_CONFLICT:`DRAFT_REVISION_CONFLICT`,UNKNOWN:`SCHEMA_UNKNOWN_ERROR`,OBJECT_NOT_FOUND:`SCHEMA_OBJECT_NOT_FOUND`,ATTRIBUTE_NOT_FOUND:`SCHEMA_ATTRIBUTE_NOT_FOUND`,RECORD_NOT_FOUND:`SCHEMA_RECORD_NOT_FOUND`,SOURCE_NOT_FOUND:`SCHEMA_SOURCE_NOT_FOUND`,ROLE_NOT_FOUND:`SCHEMA_ROLE_NOT_FOUND`,MEMORY_NOT_FOUND:`SCHEMA_MEMORY_NOT_FOUND`,VALIDATION_FAILED:`SCHEMA_VALIDATION_FAILED`,INVALID_ATTRIBUTE_NAME:`SCHEMA_INVALID_ATTRIBUTE_NAME`,INVALID_OBJECT_NAME:`SCHEMA_INVALID_OBJECT_NAME`,RESERVED_OBJECT_NAME:`SCHEMA_RESERVED_OBJECT_NAME`,PROTECTED_OBJECT:`SCHEMA_PROTECTED_OBJECT`,PROTECTED_ATTRIBUTE:`SCHEMA_PROTECTED_ATTRIBUTE`,PROTECTED_VIEW:`SCHEMA_PROTECTED_VIEW`,PROTECTED_ROLE:`SCHEMA_PROTECTED_ROLE`,PERMISSION_INVALID_GRANT:`SCHEMA_PERMISSION_INVALID_GRANT`,FORBIDDEN:`SCHEMA_FORBIDDEN`,ACCESS_DENIED:`SCHEMA_ACCESS_DENIED`,WORKSPACE_INVARIANT:`SCHEMA_WORKSPACE_INVARIANT`,STATE_GATE:`SCHEMA_STATE_GATE`,ACTOR_CONTEXT_REQUIRED:`SCHEMA_ACTOR_CONTEXT_REQUIRED`,CONNECTOR_AUTH_FAILED:`SCHEMA_CONNECTOR_AUTH_FAILED`,CONNECTOR_INVALID_STATE:`SCHEMA_CONNECTOR_INVALID_STATE`,CONNECTOR_GRANT_ORPHANED:`SCHEMA_CONNECTOR_GRANT_ORPHANED`,SYNC_FAILED:`SCHEMA_SYNC_FAILED`,SYNC_CONFLICT:`SCHEMA_SYNC_CONFLICT`,SYNC_CASCADE:`SCHEMA_SYNC_CASCADE`,ORPHAN_SYSTEM_ATTRIBUTE:`SCHEMA_ORPHAN_SYSTEM_ATTRIBUTE`,SYSTEM_ENTITY_IMMUTABLE:`SCHEMA_SYSTEM_ENTITY_IMMUTABLE`,AMBIGUOUS_CHANGE:`SCHEMA_AMBIGUOUS_CHANGE`,RECORD_GRANT_ON_WORKSPACE:`RECORD_GRANT_ON_WORKSPACE`,RECORD_GRANT_INVALID_ACTOR:`RECORD_GRANT_INVALID_ACTOR`,RECORD_GRANT_UNSHAREABLE_OBJECT:`RECORD_GRANT_UNSHAREABLE_OBJECT`,DUPLICATE:`SCHEMA_DUPLICATE`,DUPLICATE_OBJECT:`SCHEMA_DUPLICATE_OBJECT`,DUPLICATE_ATTRIBUTE:`SCHEMA_DUPLICATE_ATTRIBUTE`,CONFLICT:`SCHEMA_CONFLICT`,STORAGE_UPLOAD_FAILED:`SCHEMA_STORAGE_UPLOAD_FAILED`,STORAGE_DOWNLOAD_FAILED:`SCHEMA_STORAGE_DOWNLOAD_FAILED`,STORAGE_DELETE_FAILED:`SCHEMA_STORAGE_DELETE_FAILED`,STORAGE_URL_FAILED:`SCHEMA_STORAGE_URL_FAILED`,REPOSITORY_CREATE_FAILED:`SCHEMA_REPOSITORY_CREATE_FAILED`,REPOSITORY_UPDATE_FAILED:`SCHEMA_REPOSITORY_UPDATE_FAILED`,REPOSITORY_DELETE_FAILED:`SCHEMA_REPOSITORY_DELETE_FAILED`,REPOSITORY_QUERY_FAILED:`SCHEMA_REPOSITORY_QUERY_FAILED`,NOT_IMPLEMENTED:`SCHEMA_NOT_IMPLEMENTED`,TIMEOUT:`SCHEMA_TIMEOUT`,RECORD_REFERENCED:`SCHEMA_RECORD_REFERENCED`,ATTRIBUTE_IN_USE:`SCHEMA_ATTRIBUTE_IN_USE`,OBJECT_REFERENCED:`SCHEMA_OBJECT_REFERENCED`,CONFIGURATION_REQUIRED:`CONFIGURATION_REQUIRED`,SEARCH_ADAPTER_REQUIRED:`SEARCH_ADAPTER_REQUIRED`,SEARCH_BACKEND_FAILED:`SEARCH_BACKEND_FAILED`,SEARCH_BACKEND_REJECTED:`SEARCH_BACKEND_REJECTED`,INVARIANT_VIOLATION:`INVARIANT_VIOLATION`,TENANT_CONTEXT_MISSING:`TENANT_CONTEXT_MISSING`,JOB_RUN_METADATA_MISMATCH:`JOB_RUN_METADATA_MISMATCH`,JOB_COALESCED_FAILURE_HANDLED:`JOB_COALESCED_FAILURE_HANDLED`,FEATURE_FLAGS_CONTEXT:`FEATURE_FLAGS_CONTEXT`,REALTIME_RATE_LIMITED:`REALTIME_RATE_LIMITED`,REALTIME_DELIVERY_FAILED:`REALTIME_DELIVERY_FAILED`,REALTIME_SUBSCRIPTION_FAILED:`REALTIME_SUBSCRIPTION_FAILED`,AGENT_UNKNOWN:`AGENT_UNKNOWN`,AGENT_DEPTH_EXCEEDED:`AGENT_DEPTH_EXCEEDED`,AGENT_COST_LIMIT_EXCEEDED:`AGENT_COST_LIMIT_EXCEEDED`,AGENT_TREE_COST_LIMIT_EXCEEDED:`AGENT_TREE_COST_LIMIT_EXCEEDED`,CREDITS_EXHAUSTED:`CREDITS_EXHAUSTED`,QUOTA_EXCEEDED:`QUOTA_EXCEEDED`,AGENT_SESSION_NOT_FOUND:`AGENT_SESSION_NOT_FOUND`,AGENT_DEFINITION_NOT_FOUND:`AGENT_DEFINITION_NOT_FOUND`,AGENT_RUN_CONFIG:`AGENT_RUN_CONFIG`,AGENT_STREAMING:`AGENT_STREAMING`,AGENT_MISSING_ACTOR:`AGENT_MISSING_ACTOR`,AGENT_INVALID_STATE:`AGENT_INVALID_STATE`,AGENT_COMPACTION_IMPOSSIBLE:`AGENT_COMPACTION_IMPOSSIBLE`,AGENT_COMPACTION_TIMEOUT:`AGENT_COMPACTION_TIMEOUT`,AGENT_LEASE_HELD:`AGENT_LEASE_HELD`,AGENT_LEASE_UNAVAILABLE:`AGENT_LEASE_UNAVAILABLE`,AGENT_MESSAGE_NOT_FOUND:`AGENT_MESSAGE_NOT_FOUND`,AGENT_MESSAGE_NOT_EDITABLE:`AGENT_MESSAGE_NOT_EDITABLE`,INVALID_TOOL_INPUT:`INVALID_TOOL_INPUT`,EDIT_MATCH_NOT_FOUND:`EDIT_MATCH_NOT_FOUND`,EDIT_MATCH_AMBIGUOUS:`EDIT_MATCH_AMBIGUOUS`,EDIT_NO_CHANGE:`EDIT_NO_CHANGE`,EDIT_TARGET_UNAVAILABLE:`EDIT_TARGET_UNAVAILABLE`,EDIT_TARGET_UNSUPPORTED:`EDIT_TARGET_UNSUPPORTED`,AGENT_EXECUTION_CANCELLED:`AGENT_EXECUTION_CANCELLED`,AGENT_EXECUTION_TIMEOUT:`AGENT_EXECUTION_TIMEOUT`,AGENT_EXTERNAL_OUTCOME_UNKNOWN:`AGENT_EXTERNAL_OUTCOME_UNKNOWN`,AGENT_TOOL_CANCELLATION_POLICY:`AGENT_TOOL_CANCELLATION_POLICY`,AGENT_CANCELLATION_WATCH_CAPACITY:`AGENT_CANCELLATION_WATCH_CAPACITY`,AGENT_CANCELLATION_CLEANUP:`AGENT_CANCELLATION_CLEANUP`,AGENT_TURN_FINALIZER_STALLED:`AGENT_TURN_FINALIZER_STALLED`,WORKSTATION_NOT_READY:`WORKSTATION_NOT_READY`,WORKSTATION_IN_USE:`WORKSTATION_IN_USE`,WORKSTATION_NOT_CONNECTED:`WORKSTATION_NOT_CONNECTED`,WORKSTATION_AUTH_FAILED:`WORKSTATION_AUTH_FAILED`,WORKSTATION_RUN_FAILED:`WORKSTATION_RUN_FAILED`,DEVICE_NOT_FOUND:`DEVICE_NOT_FOUND`,DEVICE_OFFLINE:`DEVICE_OFFLINE`,DEVICE_CAPABILITY_MISMATCH:`DEVICE_CAPABILITY_MISMATCH`,DEVICE_CHANNEL_PROTOCOL:`DEVICE_CHANNEL_PROTOCOL`,AI_UNKNOWN:`AI_UNKNOWN`,AI_USAGE_LIMIT_EXCEEDED:`AI_USAGE_LIMIT_EXCEEDED`,AI_INVALID_USAGE:`AI_INVALID_USAGE`,AI_INVALID_MODEL:`AI_INVALID_MODEL`,AI_INVALID_MODEL_INPUT:`AI_INVALID_MODEL_INPUT`,AI_REPOSITORY_ERROR:`AI_REPOSITORY_ERROR`,AI_GENERATION_FAILED:`AI_GENERATION_FAILED`,AI_DECISION_FAILED:`AI_DECISION_FAILED`,AI_IMAGE_USAGE_PENDING:`AI_IMAGE_USAGE_PENDING`,AI_IMAGE_GENERATION_INDETERMINATE:`AI_IMAGE_GENERATION_INDETERMINATE`,AI_IMAGE_RESERVATION_CLEANUP_INDETERMINATE:`AI_IMAGE_RESERVATION_CLEANUP_INDETERMINATE`,AI_IMAGE_PUBLICATION_FAILED:`AI_IMAGE_PUBLICATION_FAILED`,FILE_PUBLIC_NOT_ATTACHABLE:`FILE_PUBLIC_NOT_ATTACHABLE`,DOCUMENT_MIME_NOT_ACCEPTED:`DOCUMENT_MIME_NOT_ACCEPTED`,DOCUMENT_MULTIPLE_NOT_ALLOWED:`DOCUMENT_MULTIPLE_NOT_ALLOWED`,DOCUMENT_NOT_FOUND_FOR_OPERATION:`DOCUMENT_NOT_FOUND_FOR_OPERATION`,DOCUMENT_STORAGE_FAILED:`DOCUMENT_STORAGE_FAILED`,DOCUMENT_SIZE_EXCEEDED:`DOCUMENT_SIZE_EXCEEDED`,DOCUMENT_OCR_FAILED:`DOCUMENT_OCR_FAILED`,DOCUMENT_BLOB_EMPTY:`DOCUMENT_BLOB_EMPTY`,DOCUMENT_FILE_TOO_LARGE:`DOCUMENT_FILE_TOO_LARGE`,DOCUMENT_FILE_NOT_FOUND:`DOCUMENT_FILE_NOT_FOUND`,DOCUMENT_FILE_ALREADY_PACKED:`DOCUMENT_FILE_ALREADY_PACKED`,DOCUMENT_RECORD_NOT_FOUND:`DOCUMENT_RECORD_NOT_FOUND`,DOCUMENT_RECORD_OBJECT_MISMATCH:`DOCUMENT_RECORD_OBJECT_MISMATCH`,DOCUMENT_FOLDER_SERVICE_UNAVAILABLE:`DOCUMENT_FOLDER_SERVICE_UNAVAILABLE`,DOCUMENT_FOLDER_PATH_NOT_FOUND:`DOCUMENT_FOLDER_PATH_NOT_FOUND`,EMAIL_PROVIDER_API_FAILED:`EMAIL_PROVIDER_API_FAILED`,EMAIL_SEND_FAILED:`EMAIL_SEND_FAILED`,EMAIL_SENT_NOT_STORED:`EMAIL_SENT_NOT_STORED`,EMAIL_BATCH_ITEM_FAILED:`EMAIL_BATCH_ITEM_FAILED`,CALENDAR_PROVIDER_API_FAILED:`CALENDAR_PROVIDER_API_FAILED`,EMBEDDING_MODEL_UNAVAILABLE:`EMBEDDING_MODEL_UNAVAILABLE`,EMBEDDING_DIMENSION_MISMATCH:`EMBEDDING_DIMENSION_MISMATCH`};var SchemaError=class extends Error{constructor(t,n=e.UNKNOWN,r){super(t),this.name=`SchemaError`,this.code=n,this.details=r,Object.setPrototypeOf(this,new.target.prototype)}toJSON(){return{name:this.name,code:this.code,message:this.message,details:this.details}}},NotFoundError=class extends SchemaError{constructor(t,n,r=e.RECORD_NOT_FOUND,i=`${t} with id "${n}" not found`){super(i,r,{resourceType:t,resourceId:n}),this._tag=`NotFoundError`,this.name=`NotFoundError`,this.resourceType=t,this.resourceId=n}},ObjectNotFoundError=class extends NotFoundError{constructor(t){super(`Object`,t,e.OBJECT_NOT_FOUND),this.name=`ObjectNotFoundError`}},AttributeNotFoundError=class extends NotFoundError{constructor(t){super(`Attribute`,t,e.ATTRIBUTE_NOT_FOUND),this.name=`AttributeNotFoundError`}},RecordNotFoundError=class extends NotFoundError{constructor(t){super(`Record`,t,e.RECORD_NOT_FOUND),this.name=`RecordNotFoundError`}},t=class ValidationError extends SchemaError{constructor(t,n){super(t,e.VALIDATION_FAILED,{errors:n}),this._tag=`ValidationError`,this.name=`ValidationError`,this.errors=n}static fromZodErrors(e){let t=e.map(e=>({path:e.path.map(String),message:e.message})),n=`Validation failed: ${t.map(e=>`${e.path.join(`.`)}: ${e.message}`).join(`, `)}`;return new ValidationError(n,t)}},AmbiguousSchemaChangeError=class extends t{constructor(t,n){super(t,n),this.code=e.AMBIGUOUS_CHANGE,this.name=`AmbiguousSchemaChangeError`}},ProtectedResourceError=class extends SchemaError{constructor(t,n,r){let i=t===`object`?e.PROTECTED_OBJECT:t===`view`?e.PROTECTED_VIEW:e.PROTECTED_ATTRIBUTE;super(`Cannot ${r} system ${t} "${n}"`,i,{resourceType:t,resourceName:n,operation:r}),this.name=`ProtectedResourceError`,this.resourceType=t,this.resourceName=n,this.operation=r}},SyncError=class extends SchemaError{constructor(t,n,r){super(`Failed to sync object "${t}": ${n}`,e.SYNC_FAILED,{objectName:t,cause:r?.message}),this.name=`SyncError`,this.objectName=t,this.cause=r}},SystemEntityImmutableError=class extends SchemaError{constructor(t,n){super(`Cannot mutate system ${t} "${n}". System entities are declared in code and immutable at runtime.`,e.SYSTEM_ENTITY_IMMUTABLE,{entityType:t,entityName:n}),this.name=`SystemEntityImmutableError`,this.entityType=t,this.entityName=n}},SyncConflictError=class extends SchemaError{constructor(t){let n=t.attributeName?`"${t.objectName}.${t.attributeName}"`:`"${t.objectName}"`;super(`Cannot promote runtime entity ${n}: ${t.reason}. Resolve via: (1) relax the code constraint, (2) migrate runtime values manually, or (3) rename the code declaration.`,e.SYNC_CONFLICT,{objectName:t.objectName,attributeName:t.attributeName,reason:t.reason}),this.name=`SyncConflictError`,this.objectName=t.objectName,this.attributeName=t.attributeName,this.reason=t.reason}},SyncCascadeError=class extends SchemaError{constructor(t,n){super(`Cannot demote object "${t}": attributes ${n.join(`, `)} are still declared in code. Remove them from code first, or restore the object.`,e.SYNC_CASCADE,{objectName:t,conflictingAttributes:n}),this.name=`SyncCascadeError`,this.objectName=t,this.conflictingAttributes=n}},OrphanSystemAttributeError=class extends SchemaError{constructor(t,n){super(`Attribute "${t}.${n}" is system:true but its object parent is system:false. This is an invariant violation.`,e.ORPHAN_SYSTEM_ATTRIBUTE,{objectName:t,attributeName:n}),this.name=`OrphanSystemAttributeError`,this.objectName=t,this.attributeName=n}},DuplicateError=class extends SchemaError{constructor(t,n,r){let i=t===`object`?e.DUPLICATE_OBJECT:t===`attribute`?e.DUPLICATE_ATTRIBUTE:e.DUPLICATE,a=`${t.charAt(0).toUpperCase()}${t.slice(1)} "${n}" already exists`;super(r??a,i,{resourceType:t,resourceName:n}),this.name=`DuplicateError`,this.resourceType=t,this.resourceName=n}};const n={builder:`cannot be built by a consumer`,registry:`cannot be registered by a consumer`,bundle:`cannot be claimed by a bundle`,source:`cannot be declared by a schema source`};var ReservedObjectNameError=class extends SchemaError{constructor(t,r){super(`"${t}" is a framework-native object name and ${n[r]}: the framework ships it, pick another name.`,e.RESERVED_OBJECT_NAME,{objectName:t,context:r}),this.name=`ReservedObjectNameError`,this.objectName=t}};function isSchemaError(e){return e instanceof SchemaError}function isNotFoundError(e){return e instanceof NotFoundError}function isValidationError(e){return e instanceof t}function isProtectedResourceError(e){return e instanceof ProtectedResourceError}var ForbiddenError=class extends SchemaError{constructor(t,n,r){super(`No ${n} permission on object "${t}"`,e.FORBIDDEN,{objectName:t,action:n,userId:r}),this._tag=`ForbiddenError`,this.name=`ForbiddenError`,this.objectName=t,this.action=n,this.userId=r}},ProtectedRoleError=class extends SchemaError{constructor(t,n){super(`Cannot ${n} system role "${t}"`,e.PROTECTED_ROLE,{roleName:t,operation:n}),this.name=`ProtectedRoleError`,this.roleName=t,this.operation=n}},InvalidPermissionGrantError=class extends SchemaError{constructor(t){super(`Invalid permission grants: ${t.map(e=>`${e.target} (${e.reason})`).join(`, `)}`,e.PERMISSION_INVALID_GRANT,{issues:t}),this.issues=t,this._tag=`InvalidPermissionGrantError`,this.name=`InvalidPermissionGrantError`}},RoleNotFoundError=class extends NotFoundError{constructor(t){super(`Role`,t,e.ROLE_NOT_FOUND),this.name=`RoleNotFoundError`}},ConcurrentModificationError=class extends SchemaError{constructor(t){super(`Record ${t} was modified by another request. Please refresh and try again.`,e.CONFLICT,{recordId:t})}},StorageError=class extends SchemaError{constructor(t,n,r,i){let a=t===`upload`?e.STORAGE_UPLOAD_FAILED:t===`download`?e.STORAGE_DOWNLOAD_FAILED:t===`delete`?e.STORAGE_DELETE_FAILED:e.STORAGE_URL_FAILED;super(`Storage ${t} failed: ${n}`,a,{operation:t,path:r,cause:i}),this.name=`StorageError`,this.operation=t,this.path=r,this.cause=i}},AccessDeniedError=class extends SchemaError{constructor(t,n){super(n??`Access denied to resource: ${t}`,e.ACCESS_DENIED,{resource:t,reason:n}),this.name=`AccessDeniedError`,this.resource=t,this.reason=n}},RepositoryError=class extends SchemaError{constructor(t,n,r,i){let a=t===`create`?e.REPOSITORY_CREATE_FAILED:t===`update`?e.REPOSITORY_UPDATE_FAILED:t===`delete`?e.REPOSITORY_DELETE_FAILED:e.REPOSITORY_QUERY_FAILED;super(`Failed to ${t} ${n}: ${r}${i?` (${i})`:``}`,a,{operation:t,entity:n,cause:i}),this.name=`RepositoryError`,this.operation=t,this.entity=n,this.cause=i}};function searchBackendMessage(e,t,n,r){return t===`unavailable`?`Search backend unavailable for ${e}`:`${t===`capacity`?`Search backend out of capacity for ${e}`:`Search backend rejected ${e}`}${n?`: ${n}`:``}${r?` — ${r}`:``}`}var SearchBackendError=class extends SchemaError{constructor(t,n,r={}){let i=r.kind??`unavailable`;super(searchBackendMessage(t,i,r.backendCode,r.detail),i===`unavailable`?e.SEARCH_BACKEND_FAILED:e.SEARCH_BACKEND_REJECTED,{scope:t,cause:n,kind:i,...r.backendCode?{backendCode:r.backendCode}:{}}),this.name=`SearchBackendError`,this.scope=t,this.cause=n,this.kind=i,this.backendCode=r.backendCode}},NotImplementedError=class extends SchemaError{constructor(t,n){let r=n?`${t}: not implemented (${n})`:`${t}: not implemented`;super(r,e.NOT_IMPLEMENTED,{feature:t,milestone:n}),this.name=`NotImplementedError`,this.feature=t,this.milestone=n}},MemoryNotFoundError=class extends NotFoundError{constructor(t){super(`Memory`,t,e.MEMORY_NOT_FOUND),this.name=`MemoryNotFoundError`}},RecordReferencedError=class extends SchemaError{constructor(t,n){let r=n.reduce((e,t)=>e+t.count,0);super(`Cannot delete record: referenced by ${r} record${r>1?`s`:``}`,e.RECORD_REFERENCED,{recordId:t,references:n}),this.name=`RecordReferencedError`,this.recordId=t,this.references=n}},AttributeInUseError=class extends SchemaError{constructor(t,n,r){super(`Cannot delete attribute "${t}": used in ${n}${r===void 0?``:` ${r}`}`,e.ATTRIBUTE_IN_USE,{attributeName:t,usage:n,...r===void 0?{}:{location:r}}),this.name=`AttributeInUseError`,this.attributeName=t,this.usage=n,this.location=r}},ObjectReferencedError=class extends SchemaError{constructor(t,n){super(`Cannot delete object "${t}": target of relations in ${n.join(`, `)}`,e.OBJECT_REFERENCED,{objectName:t,referencingObjects:n}),this.name=`ObjectReferencedError`,this.objectName=t,this.referencingObjects=n}},RealtimeRateLimitedError=class extends SchemaError{constructor(){super(`Supabase Realtime delivery was rate limited`,e.REALTIME_RATE_LIMITED),this.name=`RealtimeRateLimitedError`}},RealtimeDeliveryError=class extends SchemaError{constructor(){super(`Supabase Realtime delivery failed`,e.REALTIME_DELIVERY_FAILED),this.name=`RealtimeDeliveryError`}},RealtimeSubscriptionError=class extends SchemaError{constructor(){super(`Supabase Realtime subscription failed`,e.REALTIME_SUBSCRIPTION_FAILED),this.name=`RealtimeSubscriptionError`}};function isRecordReferencedError(e){return e instanceof RecordReferencedError}function isAttributeInUseError(e){return e instanceof AttributeInUseError}function isObjectReferencedError(e){return e instanceof ObjectReferencedError}export{AccessDeniedError,AmbiguousSchemaChangeError,AttributeInUseError,AttributeNotFoundError,ConcurrentModificationError,DuplicateError,ForbiddenError,InvalidPermissionGrantError,MemoryNotFoundError,NotFoundError,NotImplementedError,ObjectNotFoundError,ObjectReferencedError,OrphanSystemAttributeError,ProtectedResourceError,ProtectedRoleError,RealtimeDeliveryError,RealtimeRateLimitedError,RealtimeSubscriptionError,RecordNotFoundError,RecordReferencedError,RepositoryError,ReservedObjectNameError,RoleNotFoundError,SchemaError,e as SchemaErrorCode,SearchBackendError,StorageError,SyncCascadeError,SyncConflictError,SyncError,SystemEntityImmutableError,t as ValidationError,isAttributeInUseError,isNotFoundError,isObjectReferencedError,isProtectedResourceError,isRecordReferencedError,isSchemaError,isValidationError};
@@ -1,5 +1,5 @@
1
1
 
2
- import { i as AttributeType, n as Attribute } from "./attributes-BrWmES5w.mjs";
2
+ import { i as AttributeType, n as Attribute } from "./attributes-Cft68n4u.mjs";
3
3
  import { z as z$1 } from "zod";
4
4
  import { IconName } from "@stndrds/constants";
5
5
  //#region src/types/mutations.d.ts
@@ -1,5 +1,5 @@
1
1
 
2
- import { n as Attribute } from "./attributes-DF899HOt.js";
2
+ import { n as Attribute } from "./attributes-gEcJp-WP.js";
3
3
  import { z as z$1 } from "zod";
4
4
  //#region src/validation/core/types.d.ts
5
5
  /**
@@ -1,5 +1,5 @@
1
1
 
2
- import { n as Attribute } from "./attributes-BrWmES5w.mjs";
2
+ import { n as Attribute } from "./attributes-Cft68n4u.mjs";
3
3
  import { z as z$1 } from "zod";
4
4
  //#region src/validation/core/types.d.ts
5
5
  /**
@@ -1,21 +1,14 @@
1
1
 
2
- import { n as Attribute } from "./attributes-BrWmES5w.mjs";
3
- import { r as Uuid } from "./utils-Cl3b_6d8.mjs";
4
- import { i as ValidationResult, r as ValidationMessages } from "./index-DggAjGTr.mjs";
2
+ import { n as Attribute } from "./attributes-Cft68n4u.mjs";
3
+ import { r as Uuid } from "./utils-CnhbUWev.mjs";
4
+ import { i as ValidationResult, r as ValidationMessages } from "./index-Cga9i2js.mjs";
5
5
  import { z as z$1 } from "zod";
6
6
  import { IconName } from "@stndrds/constants";
7
7
  //#region src/types/document-layout.d.ts
8
8
  interface DocumentLayout {
9
- /** Named sub-folders auto-created at the top of the record's drive when first used via attach --variant. */
10
- variants?: Record<string, DocumentLayoutVariant>;
11
9
  /** Dev-declared folder structures the user can instantiate via the UI inside a record's drive. */
12
10
  presets?: FolderPreset[];
13
11
  }
14
- interface DocumentLayoutVariant {
15
- /** Display title for the auto-created sub-folder. */
16
- title: string;
17
- description?: string;
18
- }
19
12
  interface FolderPreset {
20
13
  id: string;
21
14
  label: string;
@@ -33,6 +26,45 @@ interface PresetNode {
33
26
  /** Max depth allowed for preset.structure to keep instantiation predictable. */
34
27
  declare const MAX_PRESET_DEPTH = 5;
35
28
  //#endregion
29
+ //#region src/types/record-access.d.ts
30
+ /** Roles a record access grant can carry (spec §5.1). */
31
+ declare const RECORD_ACCESS_ROLES: readonly ["reader", "editor"];
32
+ type RecordAccessRole = (typeof RECORD_ACCESS_ROLES)[number];
33
+ /**
34
+ * Why a grant exists — the equivalent of Salesforce's `RowCause` (spec §3):
35
+ * automatic grants are recomputed without ever touching manual shares.
36
+ */
37
+ declare const RECORD_ACCESS_SOURCES: readonly ["manual", "meeting_attendee"];
38
+ type RecordAccessSource = (typeof RECORD_ACCESS_SOURCES)[number];
39
+ /** What the reading actor may do with a record (spec §6.6). */
40
+ type ViewerAccess = "owner" | "editor" | "reader" | "workspace";
41
+ /** One beneficiary of a private record: its effective role and every source that grants it. */
42
+ interface RecordAudienceGrant {
43
+ actorId: Uuid;
44
+ role: RecordAccessRole;
45
+ sources: RecordAccessSource[];
46
+ }
47
+ /** Who can reach a record beyond its owner (`GET /records/:object/:id/access`). */
48
+ interface RecordAudience {
49
+ recordId: Uuid;
50
+ visibility: ResourceVisibility;
51
+ ownedBy: Uuid | null;
52
+ grants: RecordAudienceGrant[];
53
+ }
54
+ /** Narrow an untrusted value (HTTP body, CLI flag) to a grant role. */
55
+ declare function parseRecordAccessRole(value: unknown): RecordAccessRole;
56
+ /**
57
+ * The single derivation of `viewerAccess`, from the row's owner and the
58
+ * `viewer_grant` storage computed FOR this viewer. A private record that is
59
+ * neither owned nor granted can only have been read by the system reader,
60
+ * which reads and never writes: `reader`.
61
+ */
62
+ declare function deriveViewerAccess(record: {
63
+ visibility: ResourceVisibility;
64
+ ownedBy: string | null;
65
+ viewerGrant?: RecordAccessRole | null;
66
+ }, actorIds: readonly string[]): ViewerAccess;
67
+ //#endregion
36
68
  //#region src/types/objects.d.ts
37
69
  /** Visibility scopes shared by resources that can be workspace-wide or actor-private. */
38
70
  declare const RESOURCE_VISIBILITIES: readonly ["workspace", "private"];
@@ -151,6 +183,13 @@ interface ObjectRecord<TValues extends Record<string, unknown> = Record<string,
151
183
  visibility: ResourceVisibility;
152
184
  /** Owning actor for private records; always null for workspace records. */
153
185
  ownedBy: Uuid | null;
186
+ /**
187
+ * What the reading actor may do with this record (spec §6.6): its owner,
188
+ * an editor or reader by grant, or any member of a workspace record.
189
+ * Computed for the viewer that read the row; absent on records built in
190
+ * memory and on rows read without a viewer. Never broadcast nor indexed.
191
+ */
192
+ viewerAccess?: ViewerAccess;
154
193
  /**
155
194
  * Display label computed from the object's labelExpression.
156
195
  * Computed dynamically based on record values.
@@ -342,4 +381,4 @@ declare function getMissingRequiredAttributes(objectDef: ObjectDefinition, data:
342
381
  */
343
382
  declare function isRecordComplete(objectDef: ObjectDefinition, data: Record<string, unknown>): boolean;
344
383
  //#endregion
345
- export { FolderPreset as A, ResourceVisibility as C, parseResourceVisibility as D, Timestamps as E, PresetNode as M, DocumentLayout as O, ReservedObjectName as S, SystemFieldName as T, ObjectRecord as _, validateDraft as a, RESOURCE_VISIBILITIES as b, validateObjectOrThrow as c, createAttributeValidator as d, createFormAttributeValidator as f, ObjectDefinition as g, ObjectAttribute as h, validateAttribute as i, MAX_PRESET_DEPTH as j, DocumentLayoutVariant as k, createDraftValidator as l, ListViewTabVisibility as m, isRecordComplete as n, validateDraftOrThrow as o, LIST_VIEW_TAB_VISIBILITIES as p, rejectUnknownAttributesOrThrow as r, validateObject as s, getMissingRequiredAttributes as t, createObjectValidator as u, RESERVED_ATTRIBUTE_NAMES as v, SYSTEM_FIELD_NAMES as w, ReservedAttributeName as x, RESERVED_OBJECT_NAMES as y };
384
+ export { RecordAccessRole as A, PresetNode as B, ResourceVisibility as C, parseResourceVisibility as D, Timestamps as E, deriveViewerAccess as F, parseRecordAccessRole as I, DocumentLayout as L, RecordAudience as M, RecordAudienceGrant as N, RECORD_ACCESS_ROLES as O, ViewerAccess as P, FolderPreset as R, ReservedObjectName as S, SystemFieldName as T, ObjectRecord as _, validateDraft as a, RESOURCE_VISIBILITIES as b, validateObjectOrThrow as c, createAttributeValidator as d, createFormAttributeValidator as f, ObjectDefinition as g, ObjectAttribute as h, validateAttribute as i, RecordAccessSource as j, RECORD_ACCESS_SOURCES as k, createDraftValidator as l, ListViewTabVisibility as m, isRecordComplete as n, validateDraftOrThrow as o, LIST_VIEW_TAB_VISIBILITIES as p, rejectUnknownAttributesOrThrow as r, validateObject as s, getMissingRequiredAttributes as t, createObjectValidator as u, RESERVED_ATTRIBUTE_NAMES as v, SYSTEM_FIELD_NAMES as w, ReservedAttributeName as x, RESERVED_OBJECT_NAMES as y, MAX_PRESET_DEPTH as z };
@@ -1,21 +1,14 @@
1
1
 
2
- import { n as Attribute } from "./attributes-DF899HOt.js";
3
- import { r as Uuid } from "./utils-Cuz_wSKI.js";
4
- import { i as ValidationResult, r as ValidationMessages } from "./index-OvRk1isl.js";
2
+ import { n as Attribute } from "./attributes-gEcJp-WP.js";
3
+ import { r as Uuid } from "./utils-C6VEXia7.js";
4
+ import { i as ValidationResult, r as ValidationMessages } from "./index-Bbc3qfJ3.js";
5
5
  import { z as z$1 } from "zod";
6
6
  import { IconName } from "@stndrds/constants";
7
7
  //#region src/types/document-layout.d.ts
8
8
  interface DocumentLayout {
9
- /** Named sub-folders auto-created at the top of the record's drive when first used via attach --variant. */
10
- variants?: Record<string, DocumentLayoutVariant>;
11
9
  /** Dev-declared folder structures the user can instantiate via the UI inside a record's drive. */
12
10
  presets?: FolderPreset[];
13
11
  }
14
- interface DocumentLayoutVariant {
15
- /** Display title for the auto-created sub-folder. */
16
- title: string;
17
- description?: string;
18
- }
19
12
  interface FolderPreset {
20
13
  id: string;
21
14
  label: string;
@@ -33,6 +26,45 @@ interface PresetNode {
33
26
  /** Max depth allowed for preset.structure to keep instantiation predictable. */
34
27
  declare const MAX_PRESET_DEPTH = 5;
35
28
  //#endregion
29
+ //#region src/types/record-access.d.ts
30
+ /** Roles a record access grant can carry (spec §5.1). */
31
+ declare const RECORD_ACCESS_ROLES: readonly ["reader", "editor"];
32
+ type RecordAccessRole = (typeof RECORD_ACCESS_ROLES)[number];
33
+ /**
34
+ * Why a grant exists — the equivalent of Salesforce's `RowCause` (spec §3):
35
+ * automatic grants are recomputed without ever touching manual shares.
36
+ */
37
+ declare const RECORD_ACCESS_SOURCES: readonly ["manual", "meeting_attendee"];
38
+ type RecordAccessSource = (typeof RECORD_ACCESS_SOURCES)[number];
39
+ /** What the reading actor may do with a record (spec §6.6). */
40
+ type ViewerAccess = "owner" | "editor" | "reader" | "workspace";
41
+ /** One beneficiary of a private record: its effective role and every source that grants it. */
42
+ interface RecordAudienceGrant {
43
+ actorId: Uuid;
44
+ role: RecordAccessRole;
45
+ sources: RecordAccessSource[];
46
+ }
47
+ /** Who can reach a record beyond its owner (`GET /records/:object/:id/access`). */
48
+ interface RecordAudience {
49
+ recordId: Uuid;
50
+ visibility: ResourceVisibility;
51
+ ownedBy: Uuid | null;
52
+ grants: RecordAudienceGrant[];
53
+ }
54
+ /** Narrow an untrusted value (HTTP body, CLI flag) to a grant role. */
55
+ declare function parseRecordAccessRole(value: unknown): RecordAccessRole;
56
+ /**
57
+ * The single derivation of `viewerAccess`, from the row's owner and the
58
+ * `viewer_grant` storage computed FOR this viewer. A private record that is
59
+ * neither owned nor granted can only have been read by the system reader,
60
+ * which reads and never writes: `reader`.
61
+ */
62
+ declare function deriveViewerAccess(record: {
63
+ visibility: ResourceVisibility;
64
+ ownedBy: string | null;
65
+ viewerGrant?: RecordAccessRole | null;
66
+ }, actorIds: readonly string[]): ViewerAccess;
67
+ //#endregion
36
68
  //#region src/types/objects.d.ts
37
69
  /** Visibility scopes shared by resources that can be workspace-wide or actor-private. */
38
70
  declare const RESOURCE_VISIBILITIES: readonly ["workspace", "private"];
@@ -151,6 +183,13 @@ interface ObjectRecord<TValues extends Record<string, unknown> = Record<string,
151
183
  visibility: ResourceVisibility;
152
184
  /** Owning actor for private records; always null for workspace records. */
153
185
  ownedBy: Uuid | null;
186
+ /**
187
+ * What the reading actor may do with this record (spec §6.6): its owner,
188
+ * an editor or reader by grant, or any member of a workspace record.
189
+ * Computed for the viewer that read the row; absent on records built in
190
+ * memory and on rows read without a viewer. Never broadcast nor indexed.
191
+ */
192
+ viewerAccess?: ViewerAccess;
154
193
  /**
155
194
  * Display label computed from the object's labelExpression.
156
195
  * Computed dynamically based on record values.
@@ -342,4 +381,4 @@ declare function getMissingRequiredAttributes(objectDef: ObjectDefinition, data:
342
381
  */
343
382
  declare function isRecordComplete(objectDef: ObjectDefinition, data: Record<string, unknown>): boolean;
344
383
  //#endregion
345
- export { FolderPreset as A, ResourceVisibility as C, parseResourceVisibility as D, Timestamps as E, PresetNode as M, DocumentLayout as O, ReservedObjectName as S, SystemFieldName as T, ObjectRecord as _, validateDraft as a, RESOURCE_VISIBILITIES as b, validateObjectOrThrow as c, createAttributeValidator as d, createFormAttributeValidator as f, ObjectDefinition as g, ObjectAttribute as h, validateAttribute as i, MAX_PRESET_DEPTH as j, DocumentLayoutVariant as k, createDraftValidator as l, ListViewTabVisibility as m, isRecordComplete as n, validateDraftOrThrow as o, LIST_VIEW_TAB_VISIBILITIES as p, rejectUnknownAttributesOrThrow as r, validateObject as s, getMissingRequiredAttributes as t, createObjectValidator as u, RESERVED_ATTRIBUTE_NAMES as v, SYSTEM_FIELD_NAMES as w, ReservedAttributeName as x, RESERVED_OBJECT_NAMES as y };
384
+ export { RecordAccessRole as A, PresetNode as B, ResourceVisibility as C, parseResourceVisibility as D, Timestamps as E, deriveViewerAccess as F, parseRecordAccessRole as I, DocumentLayout as L, RecordAudience as M, RecordAudienceGrant as N, RECORD_ACCESS_ROLES as O, ViewerAccess as P, FolderPreset as R, ReservedObjectName as S, SystemFieldName as T, ObjectRecord as _, validateDraft as a, RESOURCE_VISIBILITIES as b, validateObjectOrThrow as c, createAttributeValidator as d, createFormAttributeValidator as f, ObjectDefinition as g, ObjectAttribute as h, validateAttribute as i, RecordAccessSource as j, RECORD_ACCESS_SOURCES as k, createDraftValidator as l, ListViewTabVisibility as m, isRecordComplete as n, validateDraftOrThrow as o, LIST_VIEW_TAB_VISIBILITIES as p, rejectUnknownAttributesOrThrow as r, validateObject as s, getMissingRequiredAttributes as t, createObjectValidator as u, RESERVED_ATTRIBUTE_NAMES as v, SYSTEM_FIELD_NAMES as w, ReservedAttributeName as x, RESERVED_OBJECT_NAMES as y, MAX_PRESET_DEPTH as z };
@@ -1,5 +1,5 @@
1
1
 
2
- import { i as AttributeType, n as Attribute } from "./attributes-DF899HOt.js";
2
+ import { i as AttributeType, n as Attribute } from "./attributes-gEcJp-WP.js";
3
3
  import { z as z$1 } from "zod";
4
4
  import { IconName } from "@stndrds/constants";
5
5
  //#region src/types/mutations.d.ts