@standards/schema 1.0.0-alpha.444 → 1.0.0-alpha.446

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 (38) hide show
  1. package/dist/all-2xry8t7d.js +4 -0
  2. package/dist/all-BWpaP2E2.mjs +4 -0
  3. package/dist/api/index.d.mts +110 -69
  4. package/dist/api/index.d.ts +110 -69
  5. package/dist/api/index.js +1 -1
  6. package/dist/api/index.mjs +1 -1
  7. package/dist/attribute-validators-CFa9B00S.mjs +11 -0
  8. package/dist/attribute-validators-Djse5LWc.js +11 -0
  9. package/dist/{exceptions-zQlC2r1F.d.mts → exceptions-BjtmXIip.d.mts} +10 -2
  10. package/dist/{exceptions-YHdKk5N8.d.ts → exceptions-CxTJ-9hJ.d.ts} +10 -2
  11. package/dist/exceptions.d.mts +1 -1
  12. package/dist/exceptions.d.ts +1 -1
  13. package/dist/exceptions.js +1 -1
  14. package/dist/exceptions.mjs +1 -1
  15. package/dist/{index-BxDb1xz7.d.ts → index-BoesrnBX.d.ts} +2204 -3098
  16. package/dist/index.d.mts +4 -4
  17. package/dist/index.d.ts +4 -4
  18. package/dist/index.js +2 -2
  19. package/dist/index.mjs +2 -2
  20. package/dist/record-operation-BBOde9mE.mjs +2 -0
  21. package/dist/record-operation-BLhz84I4.js +2 -0
  22. package/dist/{record-query-CJVicxN7.d.mts → record-query-BMeq7JRi.d.mts} +2185 -3079
  23. package/dist/{utils-CwQlKDYz.d.ts → utils-BdmqhdNL.d.ts} +1 -1
  24. package/dist/{utils-BZMgedee.d.mts → utils-DPto28bh.d.mts} +1 -1
  25. package/dist/utils.d.mts +1 -1
  26. package/dist/utils.d.ts +1 -1
  27. package/dist/validation/all.d.mts +2 -2
  28. package/dist/validation/all.d.ts +2 -2
  29. package/dist/validation/all.js +1 -1
  30. package/dist/validation/all.mjs +1 -1
  31. package/openapi.json +193 -192
  32. package/package.json +2 -2
  33. package/dist/all-BrGOpgV8.js +0 -4
  34. package/dist/all-Df9IeCkI.mjs +0 -4
  35. package/dist/attribute-validators-BJdOkURX.mjs +0 -11
  36. package/dist/attribute-validators-rgM_bLG1.js +0 -11
  37. package/dist/record-operation-BrYpYAKR.js +0 -2
  38. package/dist/record-operation-DSjDUW-6.mjs +0 -2
@@ -0,0 +1,11 @@
1
+ /*! © 2025-2026 AND YOU CREATE SAS (RCS Paris 940 190 614). Proprietary — see LICENSE (Standards SDK License 1.0). */
2
+ import"./zod-locale.mjs";import{SchemaError as e,SchemaErrorCode as t,ValidationError as n}from"./exceptions.mjs";import*as r from"zod";import{COLORS as i,ICONS as a}from"@standards/constants";const o={createdAt:`createdAt`,updatedAt:`updatedAt`,createdBy:`createdBy`,lastUpdatedBy:`lastUpdatedBy`,attachments:`attachments`,parentId:`parentId`,childIds:`childIds`};function getSystemAttributeI18nKey(e){return o[e]}const s={createdAt:{id:`system:createdAt`,name:`createdAt`,label:`Created time`,type:`date`,required:!1,system:!0,icon:`clock-circle`,description:`When this record was created`},updatedAt:{id:`system:updatedAt`,name:`updatedAt`,label:`Last edited time`,type:`date`,required:!1,system:!0,icon:`clock-circle`,description:`When this record was last modified`},createdBy:{id:`system:createdBy`,name:`createdBy`,label:`Created by`,type:`user`,required:!1,system:!0,multiple:!1,actors:!0,icon:`user`,description:`Actor who created this record`},lastUpdatedBy:{id:`system:lastUpdatedBy`,name:`lastUpdatedBy`,label:`Last edited by`,type:`user`,required:!1,system:!0,multiple:!1,actors:!0,icon:`user`,description:`Actor who last modified this record`},attachments:{id:`system:attachments`,name:`attachments`,label:`Attachments`,type:`document`,required:!1,system:!0,hidden:!0,icon:`paperclip`,description:`Free-form document attachments`}};function getSystemAttributeList(){return Object.values(s)}function isManagedSystemAttribute(e){return e.id?.startsWith(`system:`)??!1}const c=[`hierarchy:parentId`,`hierarchy:childIds`],l=/* @__PURE__ */ new Set([`parentId`,`childIds`]),ee=6;function getHierarchyAttributes(e){if(!e.hierarchical)return[];let t=[{object:e.name}];return[{id:c[0],name:`parentId`,label:`Parent`,type:`relation`,cardinality:`one`,targets:t,required:!1,system:!0,icon:`corner-left-up`,description:`The record this one sits under`},{id:c[1],name:`childIds`,label:`Sub-items`,type:`relation`,cardinality:`many`,targets:t,required:!1,system:!0,icon:`corner-down-right`,description:`The records that sit under this one`}]}function isHierarchyAttribute(e){return e.id?.startsWith(`hierarchy:`)??!1}function getObjectSystemAttributes(e){return[...getSystemAttributeList(),...getHierarchyAttributes(e)]}const u=[`is`,`is_not`,`contains`,`not_contains`,`starts_with`,`ends_with`,`is_empty`,`is_not_empty`],d=[`is`,`is_not`,`less_than`,`greater_than`,`less_or_equal`,`greater_or_equal`,`is_empty`,`is_not_empty`],f=[`is`],p=[`is`,`is_not`,`less_than`,`greater_than`,`less_or_equal`,`greater_or_equal`,`is_within`,`on_day_month`,`is_empty`,`is_not_empty`],m=[`is`,`is_not`,`any_of`,`none_of`,`is_empty`,`is_not_empty`],h=[`any_of`,`none_of`,`is_empty`,`is_not_empty`],g=[`is`,`is_not`,`any_of`,`none_of`,`is_empty`,`is_not_empty`],_=[`is_empty`,`is_not_empty`],v=[`is`,`is_not`,`less_than`,`greater_than`,`less_or_equal`,`greater_or_equal`,`contains`,`not_contains`,`is_empty`,`is_not_empty`],y=[`city`,`postalCode`,`country`];function isLocationFilterProperty(e){return y.includes(e)}const b={text:u,richtext:[],number:d,checkbox:f,date:p,phone:[`is`,`is_not`,`contains`,`not_contains`,`starts_with`,`is_empty`,`is_not_empty`],currency:d,status:m,select:m,multiselect:h,location:[],user:g,relation:g,formula:v,document:_},x={text:{value:`plain`,traits:[`placeholder`,`searchable`,`sortable`]},richtext:{value:`plain`,traits:[`searchable`,`content`]},number:{value:`plain`,traits:[`placeholder`,`sortable`]},checkbox:{value:`boolean`,traits:[`sortable`]},date:{value:`plain`,traits:[`placeholder`,`sortable`]},phone:{value:`plain`,traits:[`placeholder`,`searchable`,`sortable`]},currency:{value:`plain`,traits:[`placeholder`,`sortable`,`groupable`]},status:{value:`options`,traits:[`searchable`,`sortable`,`groupable`]},location:{value:`plain`,traits:[]},select:{value:`options`,traits:[`placeholder`,`searchable`,`sortable`]},multiselect:{value:`options`,traits:[`placeholder`,`searchable`]},user:{value:`reference`,traits:[]},relation:{value:`reference`,traits:[`qualified`]},formula:{value:`computed`,traits:[]},rollup:{value:`computed`,traits:[]},document:{value:`reference`,traits:[`content`,`qualified`]}};function descriptorOf(e){return Object.prototype.hasOwnProperty.call(x,e)?x[e]:void 0}function isValueKindType(e,t){return descriptorOf(e)?.value===t}function hasValueKind(e,t){return isValueKindType(e.type,t)}function hasTypeTrait(e,t){return descriptorOf(e)?.traits.includes(t)??!1}const te={plain:`static`,boolean:`automatic`,options:`static`,reference:`static`,computed:`forbidden`};function getAttributeCapabilities(e){let t=!!(e.hidden||e.archived),n=!e.archived,r=descriptorOf(e.type)?.value,i=r===`computed`,a=e.type===`document`,o=r===`reference`&&!isHierarchyAttribute(e),s=getAttributeCardinality(e),c=t?[]:getRawFilterOperators(e),l=c.length>0&&!t,ee=!t&&hasTypeTrait(e.type,`searchable`),u=!t&&hasTypeTrait(e.type,`sortable`),d=!t&&hasTypeTrait(e.type,`groupable`),f=!t&&(e.type===`status`||e.type===`select`),p=isManagedSystemAttribute(e),m=i||a||p,h=!(t||m),g=r===void 0?`forbidden`:te[r],_=r===`boolean`||i?`forbidden`:`allowed`,v=supportsMaxItems(e),y=hasTypeTrait(e.type,`placeholder`),b=hasTypeTrait(e.type,`content`),x=!(!e.deprecated||t),S=resolveEditMode(e);return{lifecycle:{active:n,deprecated:!!e.deprecated,visibleInArchitect:!0,visibleInRuntime:!t,warningWhenDeprecated:x},storage:{mode:i?`computed`:o?`edge`:`value`,cardinality:s,edgeBacked:o,preservesExistingValues:!!e.archived,qualifiedProperties:hasTypeTrait(e.type,`qualified`),polymorphic:getPolymorphicCapability(e),maxItems:v},authoring:{editable:h,readOnly:m,directEdit:h&&S===`inline`,required:_,defaultValue:g,placeholder:y,maxItems:v},presentation:{formField:!t&&e.type!==`richtext`,tableCell:!(t||b),defaultColumn:!(t||b),compactDisplay:!t,popoverEditor:!t&&S===`popover`,placeholder:y,warningWhenDeprecated:x},query:{filterable:l,searchable:ee,sortable:u,groupable:d,kanbanGroupable:f,operators:c},agent:{readable:!t,writable:h&&!a,compactReadable:!t,contentReadable:!t&&b,requiresDedicatedTool:a},exchange:{importable:!t,exportable:!t,schemaExportable:!0,metadataExportable:!1}}}function getAttributeFilterOperators(e){return getAttributeCapabilities(e).query.operators}function isAttributeFilterable(e){return getAttributeCapabilities(e).query.filterable}function isAttributeSearchable(e){return getAttributeCapabilities(e).query.searchable}function isAttributeSortable$1(e){return getAttributeCapabilities(e).query.sortable}function isAttributeGroupable(e){return getAttributeCapabilities(e).query.groupable}function isAttributeKanbanGroupable(e){return getAttributeCapabilities(e).query.kanbanGroupable}function resolveEffectiveFilterType(e){if(e.type!==`rollup`)return e.type;let t=e;if(t.function===`earliest`||t.function===`latest`)return`date`;if(t.function===`original`){let e=t.targetAttributeType;if(e&&hasFilterOperatorEntry(e))return e}return`number`}function getRollupFilterOperators$1(e){let t=resolveEffectiveFilterType(e);return hasFilterOperatorEntry(t)?b[t]:b.number}function getRawFilterOperators(e){return e.type===`rollup`?getRollupFilterOperators$1(e):b[e.type]??[]}function getAttributeCardinality(e){return e.type===`multiselect`||e.type===`document`||e.type===`user`&&e.multiple===!0||e.type===`relation`&&e.cardinality===`many`?`many`:`one`}function getPolymorphicCapability(e){if(e.type!==`relation`)return`none`;let t=e.targets??[];return t.length===1&&t[0]?.object===`*`?`internal`:t.length>1?`code-only`:`none`}function supportsMaxItems(e){return e.type===`multiselect`||e.type===`relation`&&e.cardinality===`many`}function resolveEditMode(e){switch(e.type){case`checkbox`:return`inline`;case`number`:return e.renderAs===`rating`?`inline`:`default`;case`select`:case`multiselect`:return e.renderAs===`badges`?`inline`:`popover`;case`status`:case`relation`:case`user`:case`date`:return`popover`;default:return`default`}}function hasFilterOperatorEntry(e){return Object.prototype.hasOwnProperty.call(b,e)}const S=[`text`,`richtext`,`number`,`checkbox`,`date`,`phone`,`currency`,`status`,`location`,`select`,`multiselect`,`user`,`relation`,`formula`,`rollup`,`document`],ne=`*`;function relationTargetsOf(e){return e.type!==`relation`||!Array.isArray(e.targets)?[]:e.targets.map(e=>e.object).filter(e=>e!==`*`)}function isUniversalRelation(e){return e.targets.length===1&&e.targets[0].object===`*`}function isBilateralRelation(e){return e.bilateral!==void 0}function inferInverseCardinality(e){return`many`}function isAttributeSortable(e){return isAttributeSortable$1(e)}const re=b,C=[`is_empty`,`is_not_empty`];function isNoValueOperator(e){return C.includes(e)}function getRollupFilterOperators(e){return getRollupFilterOperators$1(e)}const w=[`skill`,`memory`,`drives`,`artifact`,`meeting`];function isNativeObjectName(e){return w.includes(e)}const T=[`workspace`,`private`],E=[`all`,...T,`shared`],D=[...T,`shared`];function parseRecordListScope(e){if(typeof e==`string`&&D.includes(e))return e;throw new n(`visibility must be one of: ${D.join(`, `)} (received: ${String(e)})`,[])}function parseResourceVisibility(e){if(typeof e==`string`&&T.includes(e))return e;throw new n(`visibility must be one of: ${T.join(`, `)} (received: ${String(e)})`,[])}const O=[`id`,`createdAt`,`updatedAt`,`createdBy`,`lastUpdatedBy`,`visibility`,`ownedBy`],k=[...O,`objectId`,`label`,`embeddingText`,`values`,`metadata`,`deletedAt`,`deletedBy`,`schemaVersion`,`appearance`,`owned_by`,`parentId`,`childIds`,`passedAt`],ie=w,A={attributesPerObject:300,tabsPerView:24,groupsPerFormTab:12,fieldsPerGroup:60,fieldsPerFormTab:150,columnsPerTab:50,displayAttributesPerCard:8,optionsPerAttribute:200,sidePanelAttributes:100,sidePanelPanes:20,filterRulesPerTab:50,sortsPerTab:20,emailAttributesPerTab:30,objectsPerPlan:20,mutationsPerPlan:500,planBytes:524288,historyDefault:20,historyMax:50,iconQueries:5,iconResults:20,labelLength:128,attributeDescriptionLength:120};function characterCount(e){return[...e].length}const ae=Object.keys(i),oe=new Set(a),se=r.enum(ae).describe(`A color id from the palette`),j=r.string().superRefine((e,t)=>{oe.has(e)||t.addIssue({code:`custom`,message:`Invalid icon name`})}).transform(e=>e),M=[1,2,3,4,5,6,7,8,9,10,11,12],ce=M.length;function isBlockWidth(e){return M.includes(e)}const le=/^\d{4}-\d{2}-\d{2}$/u;function isCalendarDay(e){if(!le.test(e))return!1;let t=/* @__PURE__ */ new Date(`${e}T00:00:00Z`);return!Number.isNaN(t.getTime())&&t.toISOString().slice(0,10)===e}function isDynamicValue(e){return typeof e==`object`&&!!e&&!Array.isArray(e)&&`dynamic`in e}function currentActor(){return{dynamic:`actor`,ref:`current`}}function today(){return{dynamic:`date`,anchor:`today`}}function now(){return{dynamic:`date`,anchor:`now`}}function toAmount(e){if(typeof e==`number`)return Number.isFinite(e)?e:null;if(typeof e==`string`&&e.trim()!==``){let t=Number(e);return Number.isFinite(t)?t:null}return null}function extractCurrencyFilterValue(e){return typeof e==`object`&&e?`value`in e?toAmount(e.value):null:toAmount(e)}function extractFilterValue(e){return e==null?null:typeof e==`object`&&`value`in e?e.value??null:e}const ue=/* @__PURE__ */ new Set([`is_not`,`not_contains`,`none_of`,`is_empty`]),de={is_not:`is`,not_contains:`contains`,none_of:`any_of`,is_empty:`is_not_empty`};function getOperatorPolarity(e){return ue.has(e)?`none`:`any`}function normalizeForEdgeRpc(e){return de[e]??e}const N={is:`any_of`,is_not:`none_of`};function toMultiValueOperator(e){return N[e]??e}const fe=new Set(Object.values(N).filter(e=>e!==void 0));function isSetMembershipOperator(e){return fe.has(e)}function canonicalizeFilterValue(e,t){let r=e.value;if(isNoValueOperator(e.operator)||r==null||isDynamicValue(r))return;if(isSetMembershipOperator(e.operator)){Array.isArray(r)||(e.value=[r]);return}if(t!==`currency`)return;let i=extractCurrencyFilterValue(r);if(i!==null){e.value=i;return}if(!hasCurrencyAmount(r))return;let a=`Filter on a currency attribute expected a numeric amount, received ${JSON.stringify(r)}`;throw new n(a,[{path:[`value`],message:a}])}function hasCurrencyAmount(e){return typeof e!=`object`||`value`in e&&e.value!=null}const pe=`__`;function parseQualifiedAttribute(e){let t=e.indexOf(`__`);return t<=0||t+2>=e.length?{kind:`scalar`,attribute:e}:{kind:`qualified`,root:e.slice(0,t),property:e.slice(t+2)}}function buildQualifiedAttribute(e,t){return`${e}__${t}`}const P=b.text,me=[`is`,`is_not`,`is_empty`,`is_not_empty`],F=[`is`,`is_not`,`any_of`,`none_of`,`is_empty`,`is_not_empty`],I={id:F,objectId:F,tenantId:F,label:b.text,createdAt:b.date,updatedAt:b.date,deletedAt:b.date,createdBy:b.user,lastUpdatedBy:b.user,parentId:F,childIds:[`is_empty`,`is_not_empty`]},he=/* @__PURE__ */ new Set([`createdAt`,`updatedAt`,`deletedAt`]);function offeredOn(e,t){return he.has(e)?t.filter(e=>e!==`on_day_month`):t}function fullyOffered(e,t,n,r){return{target:e,attribute:t,...r?{property:r}:{},operators:n,offered:n}}function attributeFilterTarget(e){let t=isHierarchyAttribute(e)?systemColumnFilterTarget(e.name):void 0;if(t)return t;let n=getAttributeFilterOperators(e);return{target:e.name,attribute:e.name,operators:n,offered:offeredOn(e.name,n)}}function locationPartFilterTarget(e,t){return{target:buildQualifiedAttribute(e,t),attribute:e,property:t,operators:P,offered:t===`country`?me:P}}function edgePropertyFilterTarget(e,t){let n=hasOperatorEntry(t.type)?b[t.type]:[];return fullyOffered(buildQualifiedAttribute(e,t.name),e,n,t.name)}function hasOperatorEntry(e){return Object.prototype.hasOwnProperty.call(b,e)}const ge=[`is`,`is_not`,`is_empty`,`is_not_empty`];function isMetadataKeyPath(e){return e.startsWith(`metadata.`)?e.slice(9).split(`.`).every(e=>e.length>0):!1}function systemColumnFilterTarget(e){if(isMetadataKeyPath(e))return{target:e,attribute:e,operators:ge,offered:[]};let t=Object.prototype.hasOwnProperty.call(I,e)?I[e]:void 0;return t?{target:e,attribute:e,operators:t,offered:offeredOn(e,t)}:void 0}function filterOperatorsOfType(e){return isAttributeType(e)?getAttributeFilterOperators({type:e}):[]}function isAttributeType(e){return S.includes(e)}function isLocationPartOperator(e){return P.includes(e)}function carriesEdgeProperties(e){return hasTypeTrait(e.type,`qualified`)}function filterTargetsOf(e){let t=[];for(let n of e){if(n.type===`location`){for(let e of y)t.push(locationPartFilterTarget(n.name,e));continue}if(t.push(attributeFilterTarget(n)),!carriesEdgeProperties(n))continue;let e=n.properties?.definitions;for(let r of e??[])t.push(edgePropertyFilterTarget(n.name,r))}let n=new Set(e.map(e=>e.name));for(let e of Object.keys(I)){if(n.has(e))continue;let r=systemColumnFilterTarget(e);r&&t.push(r)}return t.filter(e=>e.operators.length>0)}const L={eq:`is`,equals:`is`,equal:`is`,"==":`is`,"=":`is`,neq:`is_not`,notEqual:`is_not`,isNot:`is_not`,"!=":`is_not`,"<>":`is_not`,lt:`less_than`,"<":`less_than`,gt:`greater_than`,">":`greater_than`,lte:`less_or_equal`,"<=":`less_or_equal`,gte:`greater_or_equal`,">=":`greater_or_equal`,in:`any_of`,isAnyOf:`any_of`,anyOf:`any_of`,oneOf:`any_of`,notIn:`none_of`,not_in:`none_of`,isNoneOf:`none_of`,noneOf:`none_of`,notOneOf:`none_of`,startsWith:`starts_with`,beginsWith:`starts_with`,endsWith:`ends_with`,doesNotContain:`not_contains`,notContain:`not_contains`,isEmpty:`is_empty`,isNotEmpty:`is_not_empty`};function normalizeOperator(e){return L[e]??e}function normalizeFilterRule(e){let t=normalizeOperator(e.operator);return t===e.operator?e:{...e,operator:t}}const R=864e5,_e=/* @__PURE__ */ new Set([`days`,`weeks`,`months`,`years`]),ve=/* @__PURE__ */ new Set([`past`,`future`]);function isRelativeDateValue(e){if(typeof e!=`object`||!e)return!1;let t=e;return typeof t.amount==`number`&&Number.isFinite(t.amount)&&t.amount>0&&typeof t.unit==`string`&&_e.has(t.unit)&&typeof t.direction==`string`&&ve.has(t.direction)}function utcDayStart(e){return Date.UTC(e.getUTCFullYear(),e.getUTCMonth(),e.getUTCDate())}function shiftUtcDay(e,t,n){if(n===`days`)return e+t*R;if(n===`weeks`)return e+t*7*R;let r=new Date(e),i=r.getUTCFullYear()+(n===`years`?t:0),a=r.getUTCMonth()+(n===`months`?t:0),o=new Date(Date.UTC(i,a+1,0)).getUTCDate();return Date.UTC(i,a,Math.min(r.getUTCDate(),o))}function resolveIsWithinBounds(e,t=/* @__PURE__ */ new Date){if(!isRelativeDateValue(e))return null;let n=utcDayStart(t),r=Math.trunc(e.amount),i=e.direction===`past`?{startMs:shiftUtcDay(n,-r,e.unit),endMs:n+R}:{startMs:n,endMs:shiftUtcDay(n,r,e.unit)+R};return Number.isFinite(i.startMs)&&Number.isFinite(i.endMs)?i:null}function resolveUtcDayBounds(e){if(!Number.isFinite(e))return null;let t=utcDayStart(new Date(e));return Number.isFinite(t)?{startMs:t,endMs:t+R}:null}function toUtcDayString(e){return new Date(e).toISOString().slice(0,10)}const z=/* @__PURE__ */ new Set([`relation`,`document`,`user`]),B={id:`text`,objectId:`text`,objectName:`text`,tenantId:`text`,label:`text`,createdAt:`date`,updatedAt:`date`,deletedAt:`date`,deletedBy:`user`,createdBy:`user`,lastUpdatedBy:`user`,visibility:`select`,ownedBy:`user`,parentId:`text`,childIds:`relation`},V={before:`"less_than"`,after:`"greater_than"`,on_or_before:`"less_or_equal"`,on_or_after:`"greater_or_equal"`,is_checked:`"is" with value true`,is_not_checked:`"is" with value false`,day_month_eq:`"on_day_month"`},ye=new Set(Object.entries(b).filter(([,e])=>e.includes(`any_of`)&&!e.includes(`contains`)).map(([e])=>e)),be={contains:`any_of`,not_contains:`none_of`};function resolveCanonicalOperator(e,t){let r=V[e];if(r){let t=`Unknown filter operator "${e}" — use ${r}`;throw new n(t,[{path:[`operator`],message:t}])}let i=normalizeOperator(e),a=be[i];if(a&&ye.has(t)){let e=`Operator "${i}" is not valid for type "${t}" — use "${a}"`;throw new n(e,[{path:[`operator`],message:e}])}return i}function assertPropertyOperator(e,t,r){let i=resolveCanonicalOperator(e,t);if(!r.includes(i)){let i=`Operator "${e}" is not valid for property type "${t}". Valid operators: ${r.length?r.join(`, `):`(no operators registered for this type)`}.`;throw new n(i,[{path:[`operator`],message:i}])}return i}function assertRelativeDateValue(e){if(e.operator===`is_within`&&!isRelativeDateValue(e.value)){let e=`Operator "is_within" requires a relative-date value { amount: positive number, unit: days|weeks|months|years, direction: past|future }`;throw new n(e,[{path:[`value`],message:e}])}}const xe=/^(\d{4}-\d{2}-\d{2})(?:[T ](?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z|[+-](?:(?:0\d|1[0-3])(?::[0-5]\d)?|14(?::00)?))?)?$/,Se=/* @__PURE__ */ new Set([`is`,`is_not`,`less_than`,`less_or_equal`,`greater_than`,`greater_or_equal`]);function assertAbsoluteDateValue(e,t){if(t!==`date`||!Se.has(e.operator))return;let r=e.value;if(r==null||isDynamicValue(r)||typeof r==`string`&&isCastableDay(r))return;let i=`Filter on a date attribute expected a YYYY-MM-DD day, optionally followed by a time, received ${JSON.stringify(r)}`;throw new n(i,[{path:[`value`],message:i}])}function isCastableDay(e){let t=xe.exec(e)?.[1];return!t||t.startsWith(`0000-`)?!1:isCalendarDay(t)}function resolveComparandType(e){return e.type===`formula`&&e.returnType===`date`?`date`:resolveEffectiveFilterType(e)}function applyCanonicalForm(e,t,n){e.operator=t,canonicalizeFilterValue(e,n),assertRelativeDateValue(e),assertAbsoluteDateValue(e,n)}function assertDynamicValueForAttribute(e,t){if(!isDynamicValue(e.value))return;let r=e.value;if(r.dynamic===`actor`&&t!==`user`){let e=`actor token (@me) is only valid on user attributes, not "${t}"`;throw new n(e,[{path:[`value`],message:e}])}if(r.dynamic===`date`&&t!==`date`){let e=`date token (@today/@now) is only valid on date attributes, not "${t}"`;throw new n(e,[{path:[`value`],message:e}])}}const H=y.map(e=>`"${e}"`).join(`, `);function operatorList(e){return e.length?e.join(`, `):`(not filterable)`}function qualifyWithSchema(e){if(z.has(e.type))return e.properties}function locationPartsHint(e){return e===`location`?` A location is filtered on one of its parts: set "property" to one of ${H} and use a text operator (e.g. contains).`:``}function dottedPathHint(e,t,n){let r=` Dotted paths are not supported — `;if(n.type===`location`)return`${r}set "attribute" to "${e}" and "property" to ${isLocationFilterProperty(t)?`"${t}"`:`one of ${H}`}.`;let i=qualifyWithSchema(n);if(i){let n=i.definitions.map(e=>`"${e.name}"`).join(`, `);return`${r}set "attribute" to "${e}" and "property" to ${i.definitions.some(e=>e.name===t)?`"${t}"`:`one of ${n}`} to filter on the edge property.`}let a=attributeFilterTarget(n).operators;return`${r}${a.length?`set "attribute" to "${e}" and use one of ${a.join(`, `)}`:`"${e}" is not filterable`}; the full-text "query" parameter matches tokens by relevance, not values.`}function collectQualifiedRuleIssues(e,t){try{return validateQualifiedRule({...e},t),[]}catch(e){if(!(e instanceof n))throw e;return e.errors.map(e=>({...e,path:[...e.path]}))}}function validateQualifiedRule(e,t){if(typeof e.attribute!=`string`){let e=`A filter rule needs an attribute: filters are one combinator and a flat list of rules`;throw new n(e,[{path:[`attribute`],message:e}])}let r=t.attributes.find(t=>t.name===e.attribute),i=r?[]:systemColumnFilterTarget(e.attribute)?.operators??[];if(!r&&i.length===0){let[r,...i]=e.attribute.split(`.`),a=i.length>0?t.attributes.find(e=>e.name===r):void 0,o=a?dottedPathHint(r??``,i[0]??``,a):e.attribute.includes(`.`)?` Dotted paths are not supported — filter on the attribute name alone with a structured operator (contains, any_of, …); the full-text "query" parameter matches tokens by relevance, not values.`:``,s=`Unknown attribute: ${e.attribute}${o}`;throw new n(s,[{path:[`attribute`],message:s}])}if(e.quantifier!==void 0&&!e.property){let e=`quantifier is only valid on qualified edge rules (set "property")`;throw new n(e,[{path:[`quantifier`],message:e}])}if(!r){if(e.property)throw new n(`Cannot qualify system attribute "${e.attribute}"`,[{path:[`property`],message:`"${e.attribute}" is a system column, not a reference`}]);let t=B[e.attribute]??`text`,r=resolveCanonicalOperator(e.operator,t);if(!i.includes(r)){let t=`Operator "${e.operator}" is not valid for system attribute "${e.attribute}". Valid operators: ${i.join(`, `)}.`;throw new n(t,[{path:[`operator`],message:t}])}applyCanonicalForm(e,r,t);return}if(!e.property){assertDynamicValueForAttribute(e,r.type);let t=attributeFilterTarget(r).operators,i=resolveCanonicalOperator(e.operator,r.type);if(!t.includes(i)){let i=`Operator "${e.operator}" is not valid for attribute "${r.name}". Valid operators: ${operatorList(t)}.${locationPartsHint(r.type)}`;throw new n(i,[{path:[`operator`],message:i}])}applyCanonicalForm(e,i,resolveComparandType(r));return}if(r.type===`location`){if(e.quantifier!==void 0){let e=`quantifier is not valid on a location part — a location is one value, not a set of edges`;throw new n(e,[{path:[`quantifier`],message:e}])}if(!isLocationFilterProperty(e.property)){let t=`Property "${e.property}" is not a part of location "${e.attribute}". Valid parts: ${H}.`;throw new n(t,[{path:[`property`],message:t}])}assertDynamicValueForAttribute(e,`text`);let{operators:t}=locationPartFilterTarget(r.name,e.property);applyCanonicalForm(e,assertPropertyOperator(e.operator,`text`,t),`text`);return}if(!z.has(r.type))throw new n(`Cannot qualify ${r.type} attribute "${e.attribute}"`,[{path:[`property`],message:`Attribute "${e.attribute}" is not a reference type`}]);let a=r.properties;if(!a)throw new n(`Attribute "${e.attribute}" has no qualifyWith schema`,[{path:[`property`],message:`"${e.attribute}" has no qualifyWith`}]);let o=a.definitions.find(t=>t.name===e.property);if(!o)throw new n(`Property "${e.property}" not defined on "${e.attribute}".qualifyWith()`,[{path:[`property`],message:`Unknown property: ${e.property}`}]);let{operators:s}=edgePropertyFilterTarget(r.name,o);applyCanonicalForm(e,assertPropertyOperator(e.operator,o.type,s),o.type)}const Ce=r.array(r.string()).max(A.columnsPerTab),U=r.array(r.string().min(1)).max(A.columnsPerTab).refine(e=>new Set(e).size===e.length,{message:`Displayed attribute names must be unique`}),we=r.object({attribute:r.string().describe(`Attribute to sort by`),direction:r.enum([`asc`,`desc`]).describe(`asc or desc`)}).strict(),W=r.array(we).max(A.sortsPerTab),Te=r.object({amount:r.number().describe(`Count`),unit:r.enum([`days`,`weeks`,`months`,`years`]).describe(`Unit`),direction:r.enum([`past`,`future`]).describe(`Past or future`)}).strict(),Ee=r.object({value:r.number().nullable().describe(`Amount`),code:r.array(r.string()).optional().describe(`Currency codes`)}).strict(),De=r.object({phoneNumber:r.string().nullable().describe(`Number`),countryCode:r.string().optional().describe(`ISO country code`)}).strict(),Oe=r.discriminatedUnion(`dynamic`,[r.object({dynamic:r.literal(`actor`).describe(`Resolved at filter time`),ref:r.literal(`current`).describe(`The current actor`)}).strict(),r.object({dynamic:r.literal(`date`).describe(`Resolved at filter time`),anchor:r.enum([`today`,`now`]).describe(`Anchor`)}).strict()]),ke=r.object({month:r.number().describe(`1-12`),day:r.number().describe(`Day`)}).strict(),Ae=r.union([r.string(),r.number(),r.boolean(),r.array(r.string()),Te,Ee,De,ke,Oe,r.null()]),je=r.enum([`is`,`is_not`,`contains`,`not_contains`,`starts_with`,`ends_with`,`is_empty`,`is_not_empty`,`less_than`,`greater_than`,`less_or_equal`,`greater_or_equal`,`is_within`,`on_day_month`,`any_of`,`none_of`],{error:e=>{let t=e.input,n=typeof t==`string`?V[t]:void 0;return n?`Unknown filter operator "${t}" — use ${n}`:void 0}}),Me=r.object({attribute:r.string().describe(`Attribute to filter on`),property:r.string().optional().describe(`Qualified edge property`),quantifier:r.enum([`any`,`none`]).optional().describe(`For a multi-value attribute`),operator:je.describe(`Comparison`),value:Ae.describe(`Comparison value, by attribute type`)}).strict(),Ne=r.array(Me).max(A.filterRulesPerTab),G=r.object({combinator:r.enum([`and`,`or`]).describe(`Match every rule or any rule`),rules:Ne.describe(`The rules`)}).strict(),K=r.object({object:r.string().optional().describe(`Every record of this object`),relation:r.string().optional().describe(`Records linked through this relation`)}).strict().superRefine((e,t)=>{e.object===void 0&&e.relation===void 0&&t.addIssue({code:`custom`,message:`Collection source must define an object, a relation, or both`})}).transform(e=>e.relation===void 0?{object:e.object}:e.object===void 0?{relation:e.relation}:{object:e.object,relation:e.relation}),q=1e4;function isPlainJsonObject(e){let t=Object.getPrototypeOf(e);return t===null||t===Object.prototype||Object.getPrototypeOf(t)===null&&t.constructor?.name===`Object`}function addJsonIssue(e,t,n=[]){e.addIssue({code:`custom`,message:t,path:n})}function pushJsonArrayChildren(e,t,n,r){for(let n of Reflect.ownKeys(e))n!==`length`&&(n===`__proto__`?addJsonIssue(r,`The __proto__ key is not allowed in custom props`,[...t.path,n]):typeof n!=`symbol`&&/^(0|[1-9]\d*)$/.test(n)||addJsonIssue(r,`Arrays cannot contain non-index JSON properties`,[...t.path,n]));for(let i=e.length-1;i>=0;i--){let a=Object.getOwnPropertyDescriptor(e,String(i)),o=[...t.path,i];a&&`value`in a?n.push({kind:`enter`,value:a.value,path:o,depth:t.depth+1}):addJsonIssue(r,`Sparse arrays are not valid JSON values`,o)}}function pushJsonObjectChildren(e,t,n,r){let i=Reflect.ownKeys(e);for(let a=i.length-1;a>=0;a--){let o=i[a],s=[...t.path,o];if(o===`__proto__`){addJsonIssue(r,`The __proto__ key is not allowed in custom props`,s);continue}if(typeof o==`symbol`){addJsonIssue(r,`Symbol keys are not valid JSON keys`,s);continue}let c=Object.getOwnPropertyDescriptor(e,o);c?.enumerable&&`value`in c?n.push({kind:`enter`,value:c.value,path:s,depth:t.depth+1}):addJsonIssue(r,`Custom props must contain enumerable data properties only`,s)}}function validateJsonProps(e,t){if(typeof e!=`object`||!e){addJsonIssue(t,`Expected a plain JSON object`);return}try{if(Array.isArray(e)||!isPlainJsonObject(e)){addJsonIssue(t,`Expected a plain JSON object`);return}}catch{addJsonIssue(t,`Custom props contain an object that cannot be safely inspected`);return}let n=/* @__PURE__ */ new WeakSet,r=[{kind:`enter`,value:e,path:[],depth:0}],i=0;for(;r.length>0;){let e=r.pop();if(!e)break;if(e.kind===`exit`){n.delete(e.value);continue}if(i++,i>q){addJsonIssue(t,`Custom props cannot exceed ${q.toLocaleString(`en-US`)} total JSON nodes`,e.path);return}if(e.depth>64){addJsonIssue(t,`Custom props cannot exceed depth 64`,e.path);continue}let a=e.value;if(!(a===null||typeof a==`string`||typeof a==`boolean`||typeof a==`number`&&Number.isFinite(a))){if(typeof a!=`object`)addJsonIssue(t,`Expected a JSON value`,e.path);else if(n.has(a))addJsonIssue(t,`Custom props cannot contain circular references`,e.path);else try{if(Array.isArray(a)){n.add(a),r.push({kind:`exit`,value:a}),pushJsonArrayChildren(a,e,r,t);continue}if(!isPlainJsonObject(a)){addJsonIssue(t,`Expected an array or plain JSON object`,e.path);continue}n.add(a),r.push({kind:`exit`,value:a}),pushJsonObjectChildren(a,e,r,t)}catch{addJsonIssue(t,`Custom props contain an object that cannot be safely inspected`,e.path)}}}}const Pe=r.unknown().superRefine(validateJsonProps).transform(e=>e),J=r.literal(M),Fe={span:J.optional().describe(`Columns of 12 this field occupies`),label:r.string().optional().describe(`Overrides the attribute's label`),readOnly:r.boolean().optional().describe(`Shows the value, not editable`)},Ie=r.object({attribute:r.string().describe(`Attribute API name shown by this field`),...Fe}).strict(),Le=r.object({name:r.string().describe(`Group API name, unique in the form`),label:r.string().describe(`Label people see`),description:r.string().optional().describe(`Extra context under the label`),collapsible:r.boolean().optional().describe(`Whether the group can be collapsed`),collapsed:r.boolean().optional().describe(`Whether the group starts collapsed`),fields:r.array(Ie).max(A.fieldsPerGroup).describe(`Fields in this group, in order`)}).strict();function refineFormContent(e,t){e.groups.reduce((e,t)=>e+t.fields.length,0)>A.fieldsPerFormTab&&t.addIssue({code:`too_big`,origin:`array`,maximum:A.fieldsPerFormTab,inclusive:!0,message:`A form content can contain at most ${A.fieldsPerFormTab} fields`,path:[`groups`]});let n=/* @__PURE__ */ new Set,r=/* @__PURE__ */ new Set;e.groups.forEach((e,i)=>{n.has(e.name)&&t.addIssue({code:`custom`,message:`Duplicate group name "${e.name}"`,path:[`groups`,i,`name`]}),n.add(e.name),e.fields.forEach((e,n)=>{r.has(e.attribute)&&t.addIssue({code:`custom`,message:`Duplicate field attribute "${e.attribute}"`,path:[`groups`,i,`fields`,n,`attribute`]}),r.add(e.attribute)})})}const Y={name:r.string().describe(`Content API name, unique in the view`),label:r.string().optional().describe(`Label people see`),icon:j.optional().describe(`Icon name`),placement:r.enum([`main`,`aside`,`grid`]).describe(`main: the tab strip. aside: the side panel. grid: a page block`),width:J.optional().describe(`Page block width in twelfths of its line`),height:r.number().int().positive().optional().describe(`Page block height in rows, for kinds that stretch`),joined:r.boolean().optional().describe(`Page block sharing the card of the block before it`)},Re={...Y,type:r.literal(`collection`),source:K.describe(`object: every record; relation: records linked to this record; both: records of object whose relation points at this record`),visibility:r.enum(E).optional().describe(`all: no scope; workspace: every member; private: viewer's own; shared: private records other members shared with the viewer`),columns:r.array(r.union([r.string(),r.object({relationProperty:r.string().refine(e=>e.trim().length>0).describe(`Qualified edge property shown as a column`)}).strict()])).max(A.columnsPerTab).optional().describe(`Table columns, in order`),descriptionAttribute:r.string().optional().describe(`Secondary line under each row's title (list layout)`),displayAttributes:U.optional().describe(`Attributes shown on each card`),filters:G.optional().describe(`Restricts which records show`),sorts:W.optional().describe(`Sort order`),actions:r.enum([`create`,`update`,`delete`,`attach`,`detach`]).array().optional().describe(`Offered actions; absent = every action, [] = none`),openMode:r.enum([`page`,`peek`]).optional().describe(`page or peek (the record panel)`),createMode:r.enum([`page`,`peek`,`inline`]).optional().describe(`page, peek, or inline (creates without opening)`)},ze=r.object({...Re,layout:r.enum([`table`,`list`,`kanban`]).describe(`table columns, list cards, kanban board grouped by a select/status attribute`),columnSizing:r.record(r.string(),r.number()).optional().describe(`Column widths in pixels, by attribute name`),groupByAttribute:r.string().optional().describe(`Kanban only: the select or status attribute that names the columns`),kanbanColumnOrder:r.array(r.string()).optional().describe(`Kanban: column order by option value`),kanbanColumnVisibility:r.record(r.string(),r.boolean()).optional().describe(`Kanban: which columns are shown`),kanbanPinnedColumns:r.array(r.string()).optional().describe(`Kanban: columns pinned first`)}).strict().superRefine((e,t)=>{let n=[`groupByAttribute`,`kanbanColumnOrder`,`kanbanColumnVisibility`,`kanbanPinnedColumns`];if(e.layout===`kanban`)e.groupByAttribute===void 0&&t.addIssue({code:`custom`,path:[`groupByAttribute`],message:`A kanban layout requires groupByAttribute`});else for(let r of n)e[r]!==void 0&&t.addIssue({code:`custom`,path:[r],message:`Only a kanban layout groups by an attribute`})}),X={...Y,type:r.literal(`form`),groups:r.array(Le).max(A.groupsPerFormTab).describe(`Field groups, in order`),formColumns:r.union([r.literal(1),r.literal(2),r.literal(3)]).optional().describe(`Grid columns, 1-3`),density:r.enum([`compact`,`comfortable`,`spacious`]).optional().describe(`Vertical spacing between fields`)},Be=r.object(X).strict().superRefine(refineFormContent),Ve=r.object({...X,groups:X.groups.min(1,`A published form content requires at least one group`)}).strict().superRefine(refineFormContent),Z=[ze,r.object({...Y,type:r.literal(`custom`),extension:r.string().describe(`Name of a registered extension`),parameters:r.lazy(()=>Pe).optional().describe(`Extension parameters`)}).strict(),r.object({...Y,type:r.literal(`activity`)}).strict(),r.object({...Y,type:r.literal(`richtext`),attribute:r.string().describe(`Richtext attribute edited in place`),titleAttribute:r.string().optional().describe(`Text attribute shown as the title`)}).strict(),r.object({...Y,type:r.literal(`documents`),allowUpload:r.boolean().optional().describe(`Lets people add files here`),allowRemove:r.boolean().optional().describe(`Lets people remove files here`),hideAttachments:r.boolean().optional().describe(`Hides files attached elsewhere (e.g. emails)`),relations:r.array(r.string()).optional().describe(`Document relations shown; the record's own files if absent`)}).strict(),r.object({...Y,type:r.literal(`forms`),objectName:r.string().optional().describe(`Limits to this object's published forms`)}).strict(),r.object({...Y,type:r.literal(`emails`),emailAttributes:r.array(r.string()).max(A.emailAttributesPerTab).describe(`Addresses`)}).strict(),r.object({...Y,type:r.literal(`meetings`),emailAttributes:r.array(r.string()).max(A.emailAttributesPerTab).describe(`Addresses`)}).strict(),r.object({...Y,type:r.literal(`page`),page:r.object({object:r.string().describe(`Its object`),name:r.string().describe(`Its name`)}).strict().describe(`The record page this tab renders`)}).strict()],He=r.discriminatedUnion(`type`,[Be,...Z]),Q=r.discriminatedUnion(`type`,[Ve,...Z]),$={name:r.string(),label:r.string(),description:r.string().optional(),icon:j.optional()};function contentViewBaseSchemaFor(e){let t=r.array(e).max(A.tabsPerView);return r.discriminatedUnion(`context`,[r.object({...$,object:r.string(),context:r.enum([`collection`,`record`]),default:r.boolean().optional(),anchors:r.record(r.string(),r.object({after:r.string()}).strict()).optional(),contents:t}).strict(),r.object({...$,object:r.string().optional(),context:r.literal(`page`),home:r.boolean().optional(),contents:t}).strict()])}const Ue=contentViewBaseSchemaFor(He),We=contentViewBaseSchemaFor(Q);function addDuplicateContentNameIssues(e,t){let n=/* @__PURE__ */ new Set;e.contents.forEach((e,r)=>{n.has(e.name)&&t.addIssue({code:`custom`,message:`Duplicate content name "${e.name}"`,path:[`contents`,r,`name`]}),n.add(e.name)})}const Ge=[`width`,`height`,`joined`];function addPlacementIssues(e,t){e.contents.forEach((n,r)=>{let i=n.placement===`grid`;if(!i)for(let e of Ge)n[e]!==void 0&&t.addIssue({code:`custom`,message:`Only a page block takes ${e}`,path:[`contents`,r,e]});e.context===`page`&&!i&&t.addIssue({code:`custom`,message:`Content "${n.name}" of a page must be placed on the grid`,path:[`contents`,r,`placement`]}),e.context!==`page`&&i&&t.addIssue({code:`custom`,message:`Content "${n.name}" cannot be placed on a grid outside a page`,path:[`contents`,r,`placement`]})}),e.contents.forEach((e,n)=>{e.type===`custom`&&e.extension===`heading`&&(e.label===void 0||e.label.trim()===``)&&t.addIssue({code:`custom`,message:`A heading needs a label`,path:[`contents`,n,`label`]})}),e.home&&e.object!==void 0&&t.addIssue({code:`custom`,message:`Only a standalone page can be the home`,path:[`home`]})}const Ke=Ue.superRefine((e,t)=>{let n=e;addDuplicateContentNameIssues(n,t),addPlacementIssues(n,t)}),qe=We.superRefine((e,t)=>{let n=e;addDuplicateContentNameIssues(n,t),addPlacementIssues(n,t),e.context!==`page`&&!e.contents.some(e=>e.placement===`main`)&&t.addIssue({code:`custom`,message:`A published view requires at least one main content`,path:[`contents`]})});function isPlainRecord(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}const Je=new Set(a),Ye=/^[a-zA-Z_][a-zA-Z0-9_]*$/,Xe=/^[a-z][a-z0-9-]*$/,Ze=A.labelLength,Qe=r.string().min(1,`Object name cannot be empty`).max(63,`Object name is too long (max 63 characters)`).regex(/^[a-z][a-z0-9-]*$/,{message:`Invalid object name format.
3
+ Name must be in kebab-case (slug format):
4
+ ✅ Valid: 'products', 'user-profiles', 'order-items'
5
+ ❌ Invalid: 'Products', 'userProfiles', 'user_profiles'`});function validateObjectName(n){try{Qe.parse(n)}catch(n){throw n instanceof r.ZodError?new e(n.issues[0].message,t.INVALID_OBJECT_NAME):n}}function validateViewName(e){if(!e||e.length===0)throw new n(`View name cannot be empty`,[{path:[`name`],message:`View name cannot be empty`}]);if(e.length>63)throw new n(`View name is too long`,[{path:[`name`],message:`View name is too long (max 63 characters)`}]);if(!Xe.test(e))throw new n(`Invalid view name format`,[{path:[`name`],message:`View name must be in kebab-case (e.g., 'detail', 'list-view')`}])}function assertUniqueBy(e,t,n){let r=/* @__PURE__ */ new Set;for(let i of e){let e=t(i);if(r.has(e))throw n(e);r.add(e)}}const $e=r.string().min(1,`Attribute name cannot be empty`).max(63,`Attribute name is too long (max 63 characters)`).regex(Ye,{message:`Invalid attribute name format.
6
+ Name must be a valid variable identifier:
7
+ ✅ Valid: 'firstName', 'first_name', 'FirstName', 'FIRST_NAME'
8
+ ❌ Invalid: 'first-name', 'first name', '123name', 'first.name'`}).refine(e=>!k.includes(e),{message:`This is a reserved attribute name. Reserved names: ${k.join(`, `)}`});function validateAttributeName(e){if(!e||e.length===0)throw Error(`[AttributeBuilder] Attribute name cannot be empty`);if(e.length>63)throw Error(`[AttributeBuilder] Attribute name is too long (max 63 characters)`);if(!Ye.test(e))throw Error(`[AttributeBuilder] Invalid attribute name format.
9
+ Name must be a valid variable identifier:
10
+ ✅ Valid: 'firstName', 'first_name', 'FirstName', 'FIRST_NAME'
11
+ ❌ Invalid: 'first-name', 'first name', '123name', 'first.name'`);if(k.includes(e))throw Error(`[AttributeBuilder] "${e}" is a reserved name and cannot be used as an attribute name.\nReserved names: ${k.join(`, `)}`)}function validateLabel(e){if(!e||e.length===0)throw Error(`[AttributeBuilder] Attribute label cannot be empty`);if(e.length>Ze)throw Error(`[AttributeBuilder] Attribute label is too long (max ${Ze} characters)`)}function validateIconName(e,t){if(!Je.has(e))throw Error(`[AttributeBuilder] Invalid icon "${e}" in ${t}.\nIcon must be one of the predefined icons from @standards/constants.`)}function validateOptions(e,t){let n=/* @__PURE__ */ new Set;for(let r of t){if(!r.value?.trim())throw Error(`[AttributeBuilder] Option in "${e}" has an empty or missing value.`);if(!r.label?.trim())throw Error(`[AttributeBuilder] Option "${r.value}" in "${e}" has an empty or missing label.`);if(n.has(r.value))throw Error(`[AttributeBuilder] Duplicate option value "${r.value}" in "${e}".`);n.add(r.value)}for(let n of t){if(n.inverse===void 0)continue;let r=t.find(e=>e.value===n.inverse);if(!r)throw Error(`[AttributeBuilder] Option "${n.value}" in "${e}" has inverse "${n.inverse}" which does not match any option value.`);if(r.inverse!==n.value)throw Error(`[AttributeBuilder] Inverse mismatch in "${e}": "${n.value}" points to "${n.inverse}", but "${n.inverse}" points to "${r.inverse??`(none)`}". Inverse pairs must be symmetric.`)}}export{b as ATTRIBUTE_FILTER_OPERATORS,$e as ATTRIBUTE_NAME_SCHEMA,S as ATTRIBUTE_TYPES,x as ATTRIBUTE_TYPE_DESCRIPTORS,c as HIERARCHY_ATTRIBUTE_IDS,l as HIERARCHY_ATTRIBUTE_NAMES,ee as HIERARCHY_CHILD_IDS_LIMIT,E as LIST_VIEW_TAB_VISIBILITIES,y as LOCATION_FILTER_PROPERTIES,w as NATIVE_OBJECT_NAMES,C as NO_VALUE_OPERATORS,Qe as OBJECT_NAME_SCHEMA,re as OPERATORS_BY_TYPE,ce as PAGE_GRID_COLUMNS,pe as QUALIFIED_SEPARATOR,D as RECORD_LIST_SCOPES,ne as RELATION_TARGET_ANY,V as REMOVED_OPERATOR_REPLACEMENTS,k as RESERVED_ATTRIBUTE_NAMES,ie as RESERVED_OBJECT_NAMES,T as RESOURCE_VISIBILITIES,A as SCHEMA_LIMITS,L as SYNONYM_ALIASES,s as SYSTEM_ATTRIBUTES,o as SYSTEM_ATTRIBUTE_I18N_KEYS,O as SYSTEM_FIELD_NAMES,B as SYSTEM_FILTER_ATTRIBUTE_TYPES,assertUniqueBy,attributeFilterTarget,buildQualifiedAttribute,canonicalizeFilterValue,characterCount,collectQualifiedRuleIssues,K as collectionContentSourceSchema,se as colorIdSchema,Ce as columnsSchema,qe as contentViewDefinitionSchema,currentActor,U as displayAttributesSchema,Ke as draftContentViewDefinitionSchema,edgePropertyFilterTarget,extractCurrencyFilterValue,extractFilterValue,filterOperatorsOfType,G as filterStateSchema,filterTargetsOf,getAttributeCapabilities,getAttributeFilterOperators,getHierarchyAttributes,getObjectSystemAttributes,getOperatorPolarity,getRollupFilterOperators,getSystemAttributeI18nKey,getSystemAttributeList,hasTypeTrait,hasValueKind,j as iconNameSchema,inferInverseCardinality,isAttributeFilterable,isAttributeGroupable,isAttributeKanbanGroupable,isAttributeSearchable,isAttributeSortable,isBilateralRelation,isBlockWidth,isCalendarDay,isDynamicValue,isHierarchyAttribute,isLocationFilterProperty,isLocationPartOperator,isManagedSystemAttribute,isNativeObjectName,isNoValueOperator,isPlainRecord,isRelativeDateValue,isSetMembershipOperator,isUniversalRelation,isValueKindType,locationPartFilterTarget,normalizeFilterRule,normalizeForEdgeRpc,normalizeOperator,now,parseQualifiedAttribute,parseRecordListScope,parseResourceVisibility,Q as publishedViewContentDefinitionSchema,relationTargetsOf,resolveEffectiveFilterType,resolveIsWithinBounds,resolveUtcDayBounds,W as sortsSchema,systemColumnFilterTarget,toMultiValueOperator,toUtcDayString,today,J as twelfthsSchema,validateAttributeName,validateIconName,validateLabel,validateObjectName,validateOptions,validateQualifiedRule,validateViewName};
@@ -0,0 +1,11 @@
1
+ /*! © 2025-2026 AND YOU CREATE SAS (RCS Paris 940 190 614). Proprietary — see LICENSE (Standards SDK License 1.0). */
2
+ var e=Object.create,t=Object.defineProperty,n=Object.getOwnPropertyDescriptor,r=Object.getOwnPropertyNames,i=Object.getPrototypeOf,a=Object.prototype.hasOwnProperty,__exportAll=(e,n)=>{let r=Object.setPrototypeOf({},null);for(var i in e)t(r,i,{get:e[i],enumerable:!0});return n&1||t(r,Symbol.toStringTag,{value:`Module`}),n&2?r:Object.preventExtensions(r)},__copyProps=(e,i,o,s)=>{if(i&&typeof i==`object`||typeof i==`function`)for(var c=r(i),l=0,u=c.length,d;l<u;l++)d=c[l],!a.call(e,d)&&d!==o&&t(e,d,{get:(e=>i[e]).bind(null,d),enumerable:!(s=n(i,d))||s.enumerable});return e},__toESM=(n,r,o)=>(o=n==null?{}:e(i(n)),__copyProps(r||!n||!n.__esModule||!a.call(n,`default`)?t(o,`default`,{value:n,enumerable:!0}):o,n));require("./zod-locale.js");const o=require("./exceptions.js");let s=require("zod");s=__toESM(s);let c=require("@standards/constants");const l={createdAt:`createdAt`,updatedAt:`updatedAt`,createdBy:`createdBy`,lastUpdatedBy:`lastUpdatedBy`,attachments:`attachments`,parentId:`parentId`,childIds:`childIds`};function getSystemAttributeI18nKey(e){return l[e]}const u={createdAt:{id:`system:createdAt`,name:`createdAt`,label:`Created time`,type:`date`,required:!1,system:!0,icon:`clock-circle`,description:`When this record was created`},updatedAt:{id:`system:updatedAt`,name:`updatedAt`,label:`Last edited time`,type:`date`,required:!1,system:!0,icon:`clock-circle`,description:`When this record was last modified`},createdBy:{id:`system:createdBy`,name:`createdBy`,label:`Created by`,type:`user`,required:!1,system:!0,multiple:!1,actors:!0,icon:`user`,description:`Actor who created this record`},lastUpdatedBy:{id:`system:lastUpdatedBy`,name:`lastUpdatedBy`,label:`Last edited by`,type:`user`,required:!1,system:!0,multiple:!1,actors:!0,icon:`user`,description:`Actor who last modified this record`},attachments:{id:`system:attachments`,name:`attachments`,label:`Attachments`,type:`document`,required:!1,system:!0,hidden:!0,icon:`paperclip`,description:`Free-form document attachments`}};function getSystemAttributeList(){return Object.values(u)}function isManagedSystemAttribute(e){return e.id?.startsWith(`system:`)??!1}const d=[`hierarchy:parentId`,`hierarchy:childIds`],f=/* @__PURE__ */ new Set([`parentId`,`childIds`]);function getHierarchyAttributes(e){if(!e.hierarchical)return[];let t=[{object:e.name}];return[{id:d[0],name:`parentId`,label:`Parent`,type:`relation`,cardinality:`one`,targets:t,required:!1,system:!0,icon:`corner-left-up`,description:`The record this one sits under`},{id:d[1],name:`childIds`,label:`Sub-items`,type:`relation`,cardinality:`many`,targets:t,required:!1,system:!0,icon:`corner-down-right`,description:`The records that sit under this one`}]}function isHierarchyAttribute(e){return e.id?.startsWith(`hierarchy:`)??!1}function getObjectSystemAttributes(e){return[...getSystemAttributeList(),...getHierarchyAttributes(e)]}const p=[`is`,`is_not`,`contains`,`not_contains`,`starts_with`,`ends_with`,`is_empty`,`is_not_empty`],m=[`is`,`is_not`,`less_than`,`greater_than`,`less_or_equal`,`greater_or_equal`,`is_empty`,`is_not_empty`],h=[`is`],g=[`is`,`is_not`,`less_than`,`greater_than`,`less_or_equal`,`greater_or_equal`,`is_within`,`on_day_month`,`is_empty`,`is_not_empty`],_=[`is`,`is_not`,`any_of`,`none_of`,`is_empty`,`is_not_empty`],v=[`any_of`,`none_of`,`is_empty`,`is_not_empty`],y=[`is`,`is_not`,`any_of`,`none_of`,`is_empty`,`is_not_empty`],b=[`is_empty`,`is_not_empty`],x=[`is`,`is_not`,`less_than`,`greater_than`,`less_or_equal`,`greater_or_equal`,`contains`,`not_contains`,`is_empty`,`is_not_empty`],S=[`city`,`postalCode`,`country`];function isLocationFilterProperty(e){return S.includes(e)}const C={text:p,richtext:[],number:m,checkbox:h,date:g,phone:[`is`,`is_not`,`contains`,`not_contains`,`starts_with`,`is_empty`,`is_not_empty`],currency:m,status:_,select:_,multiselect:v,location:[],user:y,relation:y,formula:x,document:b},w={text:{value:`plain`,traits:[`placeholder`,`searchable`,`sortable`]},richtext:{value:`plain`,traits:[`searchable`,`content`]},number:{value:`plain`,traits:[`placeholder`,`sortable`]},checkbox:{value:`boolean`,traits:[`sortable`]},date:{value:`plain`,traits:[`placeholder`,`sortable`]},phone:{value:`plain`,traits:[`placeholder`,`searchable`,`sortable`]},currency:{value:`plain`,traits:[`placeholder`,`sortable`,`groupable`]},status:{value:`options`,traits:[`searchable`,`sortable`,`groupable`]},location:{value:`plain`,traits:[]},select:{value:`options`,traits:[`placeholder`,`searchable`,`sortable`]},multiselect:{value:`options`,traits:[`placeholder`,`searchable`]},user:{value:`reference`,traits:[]},relation:{value:`reference`,traits:[`qualified`]},formula:{value:`computed`,traits:[]},rollup:{value:`computed`,traits:[]},document:{value:`reference`,traits:[`content`,`qualified`]}};function descriptorOf(e){return Object.prototype.hasOwnProperty.call(w,e)?w[e]:void 0}function isValueKindType(e,t){return descriptorOf(e)?.value===t}function hasValueKind(e,t){return isValueKindType(e.type,t)}function hasTypeTrait(e,t){return descriptorOf(e)?.traits.includes(t)??!1}const ee={plain:`static`,boolean:`automatic`,options:`static`,reference:`static`,computed:`forbidden`};function getAttributeCapabilities(e){let t=!!(e.hidden||e.archived),n=!e.archived,r=descriptorOf(e.type)?.value,i=r===`computed`,a=e.type===`document`,o=r===`reference`&&!isHierarchyAttribute(e),s=getAttributeCardinality(e),c=t?[]:getRawFilterOperators(e),l=c.length>0&&!t,u=!t&&hasTypeTrait(e.type,`searchable`),d=!t&&hasTypeTrait(e.type,`sortable`),f=!t&&hasTypeTrait(e.type,`groupable`),p=!t&&(e.type===`status`||e.type===`select`),m=isManagedSystemAttribute(e),h=i||a||m,g=!(t||h),_=r===void 0?`forbidden`:ee[r],v=r===`boolean`||i?`forbidden`:`allowed`,y=supportsMaxItems(e),b=hasTypeTrait(e.type,`placeholder`),x=hasTypeTrait(e.type,`content`),S=!(!e.deprecated||t),C=resolveEditMode(e);return{lifecycle:{active:n,deprecated:!!e.deprecated,visibleInArchitect:!0,visibleInRuntime:!t,warningWhenDeprecated:S},storage:{mode:i?`computed`:o?`edge`:`value`,cardinality:s,edgeBacked:o,preservesExistingValues:!!e.archived,qualifiedProperties:hasTypeTrait(e.type,`qualified`),polymorphic:getPolymorphicCapability(e),maxItems:y},authoring:{editable:g,readOnly:h,directEdit:g&&C===`inline`,required:v,defaultValue:_,placeholder:b,maxItems:y},presentation:{formField:!t&&e.type!==`richtext`,tableCell:!(t||x),defaultColumn:!(t||x),compactDisplay:!t,popoverEditor:!t&&C===`popover`,placeholder:b,warningWhenDeprecated:S},query:{filterable:l,searchable:u,sortable:d,groupable:f,kanbanGroupable:p,operators:c},agent:{readable:!t,writable:g&&!a,compactReadable:!t,contentReadable:!t&&x,requiresDedicatedTool:a},exchange:{importable:!t,exportable:!t,schemaExportable:!0,metadataExportable:!1}}}function getAttributeFilterOperators(e){return getAttributeCapabilities(e).query.operators}function isAttributeFilterable(e){return getAttributeCapabilities(e).query.filterable}function isAttributeSearchable(e){return getAttributeCapabilities(e).query.searchable}function isAttributeSortable$1(e){return getAttributeCapabilities(e).query.sortable}function isAttributeGroupable(e){return getAttributeCapabilities(e).query.groupable}function isAttributeKanbanGroupable(e){return getAttributeCapabilities(e).query.kanbanGroupable}function resolveEffectiveFilterType(e){if(e.type!==`rollup`)return e.type;let t=e;if(t.function===`earliest`||t.function===`latest`)return`date`;if(t.function===`original`){let e=t.targetAttributeType;if(e&&hasFilterOperatorEntry(e))return e}return`number`}function getRollupFilterOperators$1(e){let t=resolveEffectiveFilterType(e);return hasFilterOperatorEntry(t)?C[t]:C.number}function getRawFilterOperators(e){return e.type===`rollup`?getRollupFilterOperators$1(e):C[e.type]??[]}function getAttributeCardinality(e){return e.type===`multiselect`||e.type===`document`||e.type===`user`&&e.multiple===!0||e.type===`relation`&&e.cardinality===`many`?`many`:`one`}function getPolymorphicCapability(e){if(e.type!==`relation`)return`none`;let t=e.targets??[];return t.length===1&&t[0]?.object===`*`?`internal`:t.length>1?`code-only`:`none`}function supportsMaxItems(e){return e.type===`multiselect`||e.type===`relation`&&e.cardinality===`many`}function resolveEditMode(e){switch(e.type){case`checkbox`:return`inline`;case`number`:return e.renderAs===`rating`?`inline`:`default`;case`select`:case`multiselect`:return e.renderAs===`badges`?`inline`:`popover`;case`status`:case`relation`:case`user`:case`date`:return`popover`;default:return`default`}}function hasFilterOperatorEntry(e){return Object.prototype.hasOwnProperty.call(C,e)}const T=[`text`,`richtext`,`number`,`checkbox`,`date`,`phone`,`currency`,`status`,`location`,`select`,`multiselect`,`user`,`relation`,`formula`,`rollup`,`document`];function relationTargetsOf(e){return e.type!==`relation`||!Array.isArray(e.targets)?[]:e.targets.map(e=>e.object).filter(e=>e!==`*`)}function isUniversalRelation(e){return e.targets.length===1&&e.targets[0].object===`*`}function isBilateralRelation(e){return e.bilateral!==void 0}function inferInverseCardinality(e){return`many`}function isAttributeSortable(e){return isAttributeSortable$1(e)}const te=C,E=[`is_empty`,`is_not_empty`];function isNoValueOperator(e){return E.includes(e)}function getRollupFilterOperators(e){return getRollupFilterOperators$1(e)}const D=[`skill`,`memory`,`drives`,`artifact`,`meeting`];function isNativeObjectName(e){return D.includes(e)}const O=[`workspace`,`private`],k=[`all`,...O,`shared`],A=[...O,`shared`];function parseRecordListScope(e){if(typeof e==`string`&&A.includes(e))return e;throw new o.ValidationError(`visibility must be one of: ${A.join(`, `)} (received: ${String(e)})`,[])}function parseResourceVisibility(e){if(typeof e==`string`&&O.includes(e))return e;throw new o.ValidationError(`visibility must be one of: ${O.join(`, `)} (received: ${String(e)})`,[])}const ne=[`id`,`createdAt`,`updatedAt`,`createdBy`,`lastUpdatedBy`,`visibility`,`ownedBy`],j=[...ne,`objectId`,`label`,`embeddingText`,`values`,`metadata`,`deletedAt`,`deletedBy`,`schemaVersion`,`appearance`,`owned_by`,`parentId`,`childIds`,`passedAt`],re=D,M={attributesPerObject:300,tabsPerView:24,groupsPerFormTab:12,fieldsPerGroup:60,fieldsPerFormTab:150,columnsPerTab:50,displayAttributesPerCard:8,optionsPerAttribute:200,sidePanelAttributes:100,sidePanelPanes:20,filterRulesPerTab:50,sortsPerTab:20,emailAttributesPerTab:30,objectsPerPlan:20,mutationsPerPlan:500,planBytes:524288,historyDefault:20,historyMax:50,iconQueries:5,iconResults:20,labelLength:128,attributeDescriptionLength:120};function characterCount(e){return[...e].length}const ie=Object.keys(c.COLORS),ae=new Set(c.ICONS),oe=s.enum(ie).describe(`A color id from the palette`),N=s.string().superRefine((e,t)=>{ae.has(e)||t.addIssue({code:`custom`,message:`Invalid icon name`})}).transform(e=>e),P=[1,2,3,4,5,6,7,8,9,10,11,12],se=P.length;function isBlockWidth(e){return P.includes(e)}const ce=/^\d{4}-\d{2}-\d{2}$/u;function isCalendarDay(e){if(!ce.test(e))return!1;let t=/* @__PURE__ */ new Date(`${e}T00:00:00Z`);return!Number.isNaN(t.getTime())&&t.toISOString().slice(0,10)===e}function isDynamicValue(e){return typeof e==`object`&&!!e&&!Array.isArray(e)&&`dynamic`in e}function currentActor(){return{dynamic:`actor`,ref:`current`}}function today(){return{dynamic:`date`,anchor:`today`}}function now(){return{dynamic:`date`,anchor:`now`}}function toAmount(e){if(typeof e==`number`)return Number.isFinite(e)?e:null;if(typeof e==`string`&&e.trim()!==``){let t=Number(e);return Number.isFinite(t)?t:null}return null}function extractCurrencyFilterValue(e){return typeof e==`object`&&e?`value`in e?toAmount(e.value):null:toAmount(e)}function extractFilterValue(e){return e==null?null:typeof e==`object`&&`value`in e?e.value??null:e}const le=/* @__PURE__ */ new Set([`is_not`,`not_contains`,`none_of`,`is_empty`]),ue={is_not:`is`,not_contains:`contains`,none_of:`any_of`,is_empty:`is_not_empty`};function getOperatorPolarity(e){return le.has(e)?`none`:`any`}function normalizeForEdgeRpc(e){return ue[e]??e}const F={is:`any_of`,is_not:`none_of`};function toMultiValueOperator(e){return F[e]??e}const de=new Set(Object.values(F).filter(e=>e!==void 0));function isSetMembershipOperator(e){return de.has(e)}function canonicalizeFilterValue(e,t){let n=e.value;if(isNoValueOperator(e.operator)||n==null||isDynamicValue(n))return;if(isSetMembershipOperator(e.operator)){Array.isArray(n)||(e.value=[n]);return}if(t!==`currency`)return;let r=extractCurrencyFilterValue(n);if(r!==null){e.value=r;return}if(!hasCurrencyAmount(n))return;let i=`Filter on a currency attribute expected a numeric amount, received ${JSON.stringify(n)}`;throw new o.ValidationError(i,[{path:[`value`],message:i}])}function hasCurrencyAmount(e){return typeof e!=`object`||`value`in e&&e.value!=null}function parseQualifiedAttribute(e){let t=e.indexOf(`__`);return t<=0||t+2>=e.length?{kind:`scalar`,attribute:e}:{kind:`qualified`,root:e.slice(0,t),property:e.slice(t+2)}}function buildQualifiedAttribute(e,t){return`${e}__${t}`}const I=C.text,fe=[`is`,`is_not`,`is_empty`,`is_not_empty`],L=[`is`,`is_not`,`any_of`,`none_of`,`is_empty`,`is_not_empty`],R={id:L,objectId:L,tenantId:L,label:C.text,createdAt:C.date,updatedAt:C.date,deletedAt:C.date,createdBy:C.user,lastUpdatedBy:C.user,parentId:L,childIds:[`is_empty`,`is_not_empty`]},pe=/* @__PURE__ */ new Set([`createdAt`,`updatedAt`,`deletedAt`]);function offeredOn(e,t){return pe.has(e)?t.filter(e=>e!==`on_day_month`):t}function fullyOffered(e,t,n,r){return{target:e,attribute:t,...r?{property:r}:{},operators:n,offered:n}}function attributeFilterTarget(e){let t=isHierarchyAttribute(e)?systemColumnFilterTarget(e.name):void 0;if(t)return t;let n=getAttributeFilterOperators(e);return{target:e.name,attribute:e.name,operators:n,offered:offeredOn(e.name,n)}}function locationPartFilterTarget(e,t){return{target:buildQualifiedAttribute(e,t),attribute:e,property:t,operators:I,offered:t===`country`?fe:I}}function edgePropertyFilterTarget(e,t){let n=hasOperatorEntry(t.type)?C[t.type]:[];return fullyOffered(buildQualifiedAttribute(e,t.name),e,n,t.name)}function hasOperatorEntry(e){return Object.prototype.hasOwnProperty.call(C,e)}const me=[`is`,`is_not`,`is_empty`,`is_not_empty`];function isMetadataKeyPath(e){return e.startsWith(`metadata.`)?e.slice(9).split(`.`).every(e=>e.length>0):!1}function systemColumnFilterTarget(e){if(isMetadataKeyPath(e))return{target:e,attribute:e,operators:me,offered:[]};let t=Object.prototype.hasOwnProperty.call(R,e)?R[e]:void 0;return t?{target:e,attribute:e,operators:t,offered:offeredOn(e,t)}:void 0}function filterOperatorsOfType(e){return isAttributeType(e)?getAttributeFilterOperators({type:e}):[]}function isAttributeType(e){return T.includes(e)}function isLocationPartOperator(e){return I.includes(e)}function carriesEdgeProperties(e){return hasTypeTrait(e.type,`qualified`)}function filterTargetsOf(e){let t=[];for(let n of e){if(n.type===`location`){for(let e of S)t.push(locationPartFilterTarget(n.name,e));continue}if(t.push(attributeFilterTarget(n)),!carriesEdgeProperties(n))continue;let e=n.properties?.definitions;for(let r of e??[])t.push(edgePropertyFilterTarget(n.name,r))}let n=new Set(e.map(e=>e.name));for(let e of Object.keys(R)){if(n.has(e))continue;let r=systemColumnFilterTarget(e);r&&t.push(r)}return t.filter(e=>e.operators.length>0)}const z={eq:`is`,equals:`is`,equal:`is`,"==":`is`,"=":`is`,neq:`is_not`,notEqual:`is_not`,isNot:`is_not`,"!=":`is_not`,"<>":`is_not`,lt:`less_than`,"<":`less_than`,gt:`greater_than`,">":`greater_than`,lte:`less_or_equal`,"<=":`less_or_equal`,gte:`greater_or_equal`,">=":`greater_or_equal`,in:`any_of`,isAnyOf:`any_of`,anyOf:`any_of`,oneOf:`any_of`,notIn:`none_of`,not_in:`none_of`,isNoneOf:`none_of`,noneOf:`none_of`,notOneOf:`none_of`,startsWith:`starts_with`,beginsWith:`starts_with`,endsWith:`ends_with`,doesNotContain:`not_contains`,notContain:`not_contains`,isEmpty:`is_empty`,isNotEmpty:`is_not_empty`};function normalizeOperator(e){return z[e]??e}function normalizeFilterRule(e){let t=normalizeOperator(e.operator);return t===e.operator?e:{...e,operator:t}}const B=864e5,he=/* @__PURE__ */ new Set([`days`,`weeks`,`months`,`years`]),ge=/* @__PURE__ */ new Set([`past`,`future`]);function isRelativeDateValue(e){if(typeof e!=`object`||!e)return!1;let t=e;return typeof t.amount==`number`&&Number.isFinite(t.amount)&&t.amount>0&&typeof t.unit==`string`&&he.has(t.unit)&&typeof t.direction==`string`&&ge.has(t.direction)}function utcDayStart(e){return Date.UTC(e.getUTCFullYear(),e.getUTCMonth(),e.getUTCDate())}function shiftUtcDay(e,t,n){if(n===`days`)return e+t*B;if(n===`weeks`)return e+t*7*B;let r=new Date(e),i=r.getUTCFullYear()+(n===`years`?t:0),a=r.getUTCMonth()+(n===`months`?t:0),o=new Date(Date.UTC(i,a+1,0)).getUTCDate();return Date.UTC(i,a,Math.min(r.getUTCDate(),o))}function resolveIsWithinBounds(e,t=/* @__PURE__ */ new Date){if(!isRelativeDateValue(e))return null;let n=utcDayStart(t),r=Math.trunc(e.amount),i=e.direction===`past`?{startMs:shiftUtcDay(n,-r,e.unit),endMs:n+B}:{startMs:n,endMs:shiftUtcDay(n,r,e.unit)+B};return Number.isFinite(i.startMs)&&Number.isFinite(i.endMs)?i:null}function resolveUtcDayBounds(e){if(!Number.isFinite(e))return null;let t=utcDayStart(new Date(e));return Number.isFinite(t)?{startMs:t,endMs:t+B}:null}function toUtcDayString(e){return new Date(e).toISOString().slice(0,10)}const V=/* @__PURE__ */ new Set([`relation`,`document`,`user`]),H={id:`text`,objectId:`text`,objectName:`text`,tenantId:`text`,label:`text`,createdAt:`date`,updatedAt:`date`,deletedAt:`date`,deletedBy:`user`,createdBy:`user`,lastUpdatedBy:`user`,visibility:`select`,ownedBy:`user`,parentId:`text`,childIds:`relation`},U={before:`"less_than"`,after:`"greater_than"`,on_or_before:`"less_or_equal"`,on_or_after:`"greater_or_equal"`,is_checked:`"is" with value true`,is_not_checked:`"is" with value false`,day_month_eq:`"on_day_month"`},_e=new Set(Object.entries(C).filter(([,e])=>e.includes(`any_of`)&&!e.includes(`contains`)).map(([e])=>e)),ve={contains:`any_of`,not_contains:`none_of`};function resolveCanonicalOperator(e,t){let n=U[e];if(n){let t=`Unknown filter operator "${e}" — use ${n}`;throw new o.ValidationError(t,[{path:[`operator`],message:t}])}let r=normalizeOperator(e),i=ve[r];if(i&&_e.has(t)){let e=`Operator "${r}" is not valid for type "${t}" — use "${i}"`;throw new o.ValidationError(e,[{path:[`operator`],message:e}])}return r}function assertPropertyOperator(e,t,n){let r=resolveCanonicalOperator(e,t);if(!n.includes(r)){let r=`Operator "${e}" is not valid for property type "${t}". Valid operators: ${n.length?n.join(`, `):`(no operators registered for this type)`}.`;throw new o.ValidationError(r,[{path:[`operator`],message:r}])}return r}function assertRelativeDateValue(e){if(e.operator===`is_within`&&!isRelativeDateValue(e.value)){let e=`Operator "is_within" requires a relative-date value { amount: positive number, unit: days|weeks|months|years, direction: past|future }`;throw new o.ValidationError(e,[{path:[`value`],message:e}])}}const ye=/^(\d{4}-\d{2}-\d{2})(?:[T ](?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z|[+-](?:(?:0\d|1[0-3])(?::[0-5]\d)?|14(?::00)?))?)?$/,be=/* @__PURE__ */ new Set([`is`,`is_not`,`less_than`,`less_or_equal`,`greater_than`,`greater_or_equal`]);function assertAbsoluteDateValue(e,t){if(t!==`date`||!be.has(e.operator))return;let n=e.value;if(n==null||isDynamicValue(n)||typeof n==`string`&&isCastableDay(n))return;let r=`Filter on a date attribute expected a YYYY-MM-DD day, optionally followed by a time, received ${JSON.stringify(n)}`;throw new o.ValidationError(r,[{path:[`value`],message:r}])}function isCastableDay(e){let t=ye.exec(e)?.[1];return!t||t.startsWith(`0000-`)?!1:isCalendarDay(t)}function resolveComparandType(e){return e.type===`formula`&&e.returnType===`date`?`date`:resolveEffectiveFilterType(e)}function applyCanonicalForm(e,t,n){e.operator=t,canonicalizeFilterValue(e,n),assertRelativeDateValue(e),assertAbsoluteDateValue(e,n)}function assertDynamicValueForAttribute(e,t){if(!isDynamicValue(e.value))return;let n=e.value;if(n.dynamic===`actor`&&t!==`user`){let e=`actor token (@me) is only valid on user attributes, not "${t}"`;throw new o.ValidationError(e,[{path:[`value`],message:e}])}if(n.dynamic===`date`&&t!==`date`){let e=`date token (@today/@now) is only valid on date attributes, not "${t}"`;throw new o.ValidationError(e,[{path:[`value`],message:e}])}}const W=S.map(e=>`"${e}"`).join(`, `);function operatorList(e){return e.length?e.join(`, `):`(not filterable)`}function qualifyWithSchema(e){if(V.has(e.type))return e.properties}function locationPartsHint(e){return e===`location`?` A location is filtered on one of its parts: set "property" to one of ${W} and use a text operator (e.g. contains).`:``}function dottedPathHint(e,t,n){let r=` Dotted paths are not supported — `;if(n.type===`location`)return`${r}set "attribute" to "${e}" and "property" to ${isLocationFilterProperty(t)?`"${t}"`:`one of ${W}`}.`;let i=qualifyWithSchema(n);if(i){let n=i.definitions.map(e=>`"${e.name}"`).join(`, `);return`${r}set "attribute" to "${e}" and "property" to ${i.definitions.some(e=>e.name===t)?`"${t}"`:`one of ${n}`} to filter on the edge property.`}let a=attributeFilterTarget(n).operators;return`${r}${a.length?`set "attribute" to "${e}" and use one of ${a.join(`, `)}`:`"${e}" is not filterable`}; the full-text "query" parameter matches tokens by relevance, not values.`}function collectQualifiedRuleIssues(e,t){try{return validateQualifiedRule({...e},t),[]}catch(e){if(!(e instanceof o.ValidationError))throw e;return e.errors.map(e=>({...e,path:[...e.path]}))}}function validateQualifiedRule(e,t){if(typeof e.attribute!=`string`){let e=`A filter rule needs an attribute: filters are one combinator and a flat list of rules`;throw new o.ValidationError(e,[{path:[`attribute`],message:e}])}let n=t.attributes.find(t=>t.name===e.attribute),r=n?[]:systemColumnFilterTarget(e.attribute)?.operators??[];if(!n&&r.length===0){let[n,...r]=e.attribute.split(`.`),i=r.length>0?t.attributes.find(e=>e.name===n):void 0,a=i?dottedPathHint(n??``,r[0]??``,i):e.attribute.includes(`.`)?` Dotted paths are not supported — filter on the attribute name alone with a structured operator (contains, any_of, …); the full-text "query" parameter matches tokens by relevance, not values.`:``,s=`Unknown attribute: ${e.attribute}${a}`;throw new o.ValidationError(s,[{path:[`attribute`],message:s}])}if(e.quantifier!==void 0&&!e.property){let e=`quantifier is only valid on qualified edge rules (set "property")`;throw new o.ValidationError(e,[{path:[`quantifier`],message:e}])}if(!n){if(e.property)throw new o.ValidationError(`Cannot qualify system attribute "${e.attribute}"`,[{path:[`property`],message:`"${e.attribute}" is a system column, not a reference`}]);let t=H[e.attribute]??`text`,n=resolveCanonicalOperator(e.operator,t);if(!r.includes(n)){let t=`Operator "${e.operator}" is not valid for system attribute "${e.attribute}". Valid operators: ${r.join(`, `)}.`;throw new o.ValidationError(t,[{path:[`operator`],message:t}])}applyCanonicalForm(e,n,t);return}if(!e.property){assertDynamicValueForAttribute(e,n.type);let t=attributeFilterTarget(n).operators,r=resolveCanonicalOperator(e.operator,n.type);if(!t.includes(r)){let r=`Operator "${e.operator}" is not valid for attribute "${n.name}". Valid operators: ${operatorList(t)}.${locationPartsHint(n.type)}`;throw new o.ValidationError(r,[{path:[`operator`],message:r}])}applyCanonicalForm(e,r,resolveComparandType(n));return}if(n.type===`location`){if(e.quantifier!==void 0){let e=`quantifier is not valid on a location part — a location is one value, not a set of edges`;throw new o.ValidationError(e,[{path:[`quantifier`],message:e}])}if(!isLocationFilterProperty(e.property)){let t=`Property "${e.property}" is not a part of location "${e.attribute}". Valid parts: ${W}.`;throw new o.ValidationError(t,[{path:[`property`],message:t}])}assertDynamicValueForAttribute(e,`text`);let{operators:t}=locationPartFilterTarget(n.name,e.property);applyCanonicalForm(e,assertPropertyOperator(e.operator,`text`,t),`text`);return}if(!V.has(n.type))throw new o.ValidationError(`Cannot qualify ${n.type} attribute "${e.attribute}"`,[{path:[`property`],message:`Attribute "${e.attribute}" is not a reference type`}]);let i=n.properties;if(!i)throw new o.ValidationError(`Attribute "${e.attribute}" has no qualifyWith schema`,[{path:[`property`],message:`"${e.attribute}" has no qualifyWith`}]);let a=i.definitions.find(t=>t.name===e.property);if(!a)throw new o.ValidationError(`Property "${e.property}" not defined on "${e.attribute}".qualifyWith()`,[{path:[`property`],message:`Unknown property: ${e.property}`}]);let{operators:s}=edgePropertyFilterTarget(n.name,a);applyCanonicalForm(e,assertPropertyOperator(e.operator,a.type,s),a.type)}const xe=s.array(s.string()).max(M.columnsPerTab),G=s.array(s.string().min(1)).max(M.columnsPerTab).refine(e=>new Set(e).size===e.length,{message:`Displayed attribute names must be unique`}),Se=s.object({attribute:s.string().describe(`Attribute to sort by`),direction:s.enum([`asc`,`desc`]).describe(`asc or desc`)}).strict(),K=s.array(Se).max(M.sortsPerTab),Ce=s.object({amount:s.number().describe(`Count`),unit:s.enum([`days`,`weeks`,`months`,`years`]).describe(`Unit`),direction:s.enum([`past`,`future`]).describe(`Past or future`)}).strict(),we=s.object({value:s.number().nullable().describe(`Amount`),code:s.array(s.string()).optional().describe(`Currency codes`)}).strict(),Te=s.object({phoneNumber:s.string().nullable().describe(`Number`),countryCode:s.string().optional().describe(`ISO country code`)}).strict(),Ee=s.discriminatedUnion(`dynamic`,[s.object({dynamic:s.literal(`actor`).describe(`Resolved at filter time`),ref:s.literal(`current`).describe(`The current actor`)}).strict(),s.object({dynamic:s.literal(`date`).describe(`Resolved at filter time`),anchor:s.enum([`today`,`now`]).describe(`Anchor`)}).strict()]),De=s.object({month:s.number().describe(`1-12`),day:s.number().describe(`Day`)}).strict(),Oe=s.union([s.string(),s.number(),s.boolean(),s.array(s.string()),Ce,we,Te,De,Ee,s.null()]),ke=s.enum([`is`,`is_not`,`contains`,`not_contains`,`starts_with`,`ends_with`,`is_empty`,`is_not_empty`,`less_than`,`greater_than`,`less_or_equal`,`greater_or_equal`,`is_within`,`on_day_month`,`any_of`,`none_of`],{error:e=>{let t=e.input,n=typeof t==`string`?U[t]:void 0;return n?`Unknown filter operator "${t}" — use ${n}`:void 0}}),Ae=s.object({attribute:s.string().describe(`Attribute to filter on`),property:s.string().optional().describe(`Qualified edge property`),quantifier:s.enum([`any`,`none`]).optional().describe(`For a multi-value attribute`),operator:ke.describe(`Comparison`),value:Oe.describe(`Comparison value, by attribute type`)}).strict(),je=s.array(Ae).max(M.filterRulesPerTab),q=s.object({combinator:s.enum([`and`,`or`]).describe(`Match every rule or any rule`),rules:je.describe(`The rules`)}).strict(),J=s.object({object:s.string().optional().describe(`Every record of this object`),relation:s.string().optional().describe(`Records linked through this relation`)}).strict().superRefine((e,t)=>{e.object===void 0&&e.relation===void 0&&t.addIssue({code:`custom`,message:`Collection source must define an object, a relation, or both`})}).transform(e=>e.relation===void 0?{object:e.object}:e.object===void 0?{relation:e.relation}:{object:e.object,relation:e.relation}),Y=1e4;function isPlainJsonObject(e){let t=Object.getPrototypeOf(e);return t===null||t===Object.prototype||Object.getPrototypeOf(t)===null&&t.constructor?.name===`Object`}function addJsonIssue(e,t,n=[]){e.addIssue({code:`custom`,message:t,path:n})}function pushJsonArrayChildren(e,t,n,r){for(let n of Reflect.ownKeys(e))n!==`length`&&(n===`__proto__`?addJsonIssue(r,`The __proto__ key is not allowed in custom props`,[...t.path,n]):typeof n!=`symbol`&&/^(0|[1-9]\d*)$/.test(n)||addJsonIssue(r,`Arrays cannot contain non-index JSON properties`,[...t.path,n]));for(let i=e.length-1;i>=0;i--){let a=Object.getOwnPropertyDescriptor(e,String(i)),o=[...t.path,i];a&&`value`in a?n.push({kind:`enter`,value:a.value,path:o,depth:t.depth+1}):addJsonIssue(r,`Sparse arrays are not valid JSON values`,o)}}function pushJsonObjectChildren(e,t,n,r){let i=Reflect.ownKeys(e);for(let a=i.length-1;a>=0;a--){let o=i[a],s=[...t.path,o];if(o===`__proto__`){addJsonIssue(r,`The __proto__ key is not allowed in custom props`,s);continue}if(typeof o==`symbol`){addJsonIssue(r,`Symbol keys are not valid JSON keys`,s);continue}let c=Object.getOwnPropertyDescriptor(e,o);c?.enumerable&&`value`in c?n.push({kind:`enter`,value:c.value,path:s,depth:t.depth+1}):addJsonIssue(r,`Custom props must contain enumerable data properties only`,s)}}function validateJsonProps(e,t){if(typeof e!=`object`||!e){addJsonIssue(t,`Expected a plain JSON object`);return}try{if(Array.isArray(e)||!isPlainJsonObject(e)){addJsonIssue(t,`Expected a plain JSON object`);return}}catch{addJsonIssue(t,`Custom props contain an object that cannot be safely inspected`);return}let n=/* @__PURE__ */ new WeakSet,r=[{kind:`enter`,value:e,path:[],depth:0}],i=0;for(;r.length>0;){let e=r.pop();if(!e)break;if(e.kind===`exit`){n.delete(e.value);continue}if(i++,i>Y){addJsonIssue(t,`Custom props cannot exceed ${Y.toLocaleString(`en-US`)} total JSON nodes`,e.path);return}if(e.depth>64){addJsonIssue(t,`Custom props cannot exceed depth 64`,e.path);continue}let a=e.value;if(!(a===null||typeof a==`string`||typeof a==`boolean`||typeof a==`number`&&Number.isFinite(a))){if(typeof a!=`object`)addJsonIssue(t,`Expected a JSON value`,e.path);else if(n.has(a))addJsonIssue(t,`Custom props cannot contain circular references`,e.path);else try{if(Array.isArray(a)){n.add(a),r.push({kind:`exit`,value:a}),pushJsonArrayChildren(a,e,r,t);continue}if(!isPlainJsonObject(a)){addJsonIssue(t,`Expected an array or plain JSON object`,e.path);continue}n.add(a),r.push({kind:`exit`,value:a}),pushJsonObjectChildren(a,e,r,t)}catch{addJsonIssue(t,`Custom props contain an object that cannot be safely inspected`,e.path)}}}}const Me=s.unknown().superRefine(validateJsonProps).transform(e=>e),X=s.literal(P),Ne={span:X.optional().describe(`Columns of 12 this field occupies`),label:s.string().optional().describe(`Overrides the attribute's label`),readOnly:s.boolean().optional().describe(`Shows the value, not editable`)},Pe=s.object({attribute:s.string().describe(`Attribute API name shown by this field`),...Ne}).strict(),Fe=s.object({name:s.string().describe(`Group API name, unique in the form`),label:s.string().describe(`Label people see`),description:s.string().optional().describe(`Extra context under the label`),collapsible:s.boolean().optional().describe(`Whether the group can be collapsed`),collapsed:s.boolean().optional().describe(`Whether the group starts collapsed`),fields:s.array(Pe).max(M.fieldsPerGroup).describe(`Fields in this group, in order`)}).strict();function refineFormContent(e,t){e.groups.reduce((e,t)=>e+t.fields.length,0)>M.fieldsPerFormTab&&t.addIssue({code:`too_big`,origin:`array`,maximum:M.fieldsPerFormTab,inclusive:!0,message:`A form content can contain at most ${M.fieldsPerFormTab} fields`,path:[`groups`]});let n=/* @__PURE__ */ new Set,r=/* @__PURE__ */ new Set;e.groups.forEach((e,i)=>{n.has(e.name)&&t.addIssue({code:`custom`,message:`Duplicate group name "${e.name}"`,path:[`groups`,i,`name`]}),n.add(e.name),e.fields.forEach((e,n)=>{r.has(e.attribute)&&t.addIssue({code:`custom`,message:`Duplicate field attribute "${e.attribute}"`,path:[`groups`,i,`fields`,n,`attribute`]}),r.add(e.attribute)})})}const Z={name:s.string().describe(`Content API name, unique in the view`),label:s.string().optional().describe(`Label people see`),icon:N.optional().describe(`Icon name`),placement:s.enum([`main`,`aside`,`grid`]).describe(`main: the tab strip. aside: the side panel. grid: a page block`),width:X.optional().describe(`Page block width in twelfths of its line`),height:s.number().int().positive().optional().describe(`Page block height in rows, for kinds that stretch`),joined:s.boolean().optional().describe(`Page block sharing the card of the block before it`)},Ie={...Z,type:s.literal(`collection`),source:J.describe(`object: every record; relation: records linked to this record; both: records of object whose relation points at this record`),visibility:s.enum(k).optional().describe(`all: no scope; workspace: every member; private: viewer's own; shared: private records other members shared with the viewer`),columns:s.array(s.union([s.string(),s.object({relationProperty:s.string().refine(e=>e.trim().length>0).describe(`Qualified edge property shown as a column`)}).strict()])).max(M.columnsPerTab).optional().describe(`Table columns, in order`),descriptionAttribute:s.string().optional().describe(`Secondary line under each row's title (list layout)`),displayAttributes:G.optional().describe(`Attributes shown on each card`),filters:q.optional().describe(`Restricts which records show`),sorts:K.optional().describe(`Sort order`),actions:s.enum([`create`,`update`,`delete`,`attach`,`detach`]).array().optional().describe(`Offered actions; absent = every action, [] = none`),openMode:s.enum([`page`,`peek`]).optional().describe(`page or peek (the record panel)`),createMode:s.enum([`page`,`peek`,`inline`]).optional().describe(`page, peek, or inline (creates without opening)`)},Le=s.object({...Ie,layout:s.enum([`table`,`list`,`kanban`]).describe(`table columns, list cards, kanban board grouped by a select/status attribute`),columnSizing:s.record(s.string(),s.number()).optional().describe(`Column widths in pixels, by attribute name`),groupByAttribute:s.string().optional().describe(`Kanban only: the select or status attribute that names the columns`),kanbanColumnOrder:s.array(s.string()).optional().describe(`Kanban: column order by option value`),kanbanColumnVisibility:s.record(s.string(),s.boolean()).optional().describe(`Kanban: which columns are shown`),kanbanPinnedColumns:s.array(s.string()).optional().describe(`Kanban: columns pinned first`)}).strict().superRefine((e,t)=>{let n=[`groupByAttribute`,`kanbanColumnOrder`,`kanbanColumnVisibility`,`kanbanPinnedColumns`];if(e.layout===`kanban`)e.groupByAttribute===void 0&&t.addIssue({code:`custom`,path:[`groupByAttribute`],message:`A kanban layout requires groupByAttribute`});else for(let r of n)e[r]!==void 0&&t.addIssue({code:`custom`,path:[r],message:`Only a kanban layout groups by an attribute`})}),Q={...Z,type:s.literal(`form`),groups:s.array(Fe).max(M.groupsPerFormTab).describe(`Field groups, in order`),formColumns:s.union([s.literal(1),s.literal(2),s.literal(3)]).optional().describe(`Grid columns, 1-3`),density:s.enum([`compact`,`comfortable`,`spacious`]).optional().describe(`Vertical spacing between fields`)},Re=s.object(Q).strict().superRefine(refineFormContent),ze=s.object({...Q,groups:Q.groups.min(1,`A published form content requires at least one group`)}).strict().superRefine(refineFormContent),$=[Le,s.object({...Z,type:s.literal(`custom`),extension:s.string().describe(`Name of a registered extension`),parameters:s.lazy(()=>Me).optional().describe(`Extension parameters`)}).strict(),s.object({...Z,type:s.literal(`activity`)}).strict(),s.object({...Z,type:s.literal(`richtext`),attribute:s.string().describe(`Richtext attribute edited in place`),titleAttribute:s.string().optional().describe(`Text attribute shown as the title`)}).strict(),s.object({...Z,type:s.literal(`documents`),allowUpload:s.boolean().optional().describe(`Lets people add files here`),allowRemove:s.boolean().optional().describe(`Lets people remove files here`),hideAttachments:s.boolean().optional().describe(`Hides files attached elsewhere (e.g. emails)`),relations:s.array(s.string()).optional().describe(`Document relations shown; the record's own files if absent`)}).strict(),s.object({...Z,type:s.literal(`forms`),objectName:s.string().optional().describe(`Limits to this object's published forms`)}).strict(),s.object({...Z,type:s.literal(`emails`),emailAttributes:s.array(s.string()).max(M.emailAttributesPerTab).describe(`Addresses`)}).strict(),s.object({...Z,type:s.literal(`meetings`),emailAttributes:s.array(s.string()).max(M.emailAttributesPerTab).describe(`Addresses`)}).strict(),s.object({...Z,type:s.literal(`page`),page:s.object({object:s.string().describe(`Its object`),name:s.string().describe(`Its name`)}).strict().describe(`The record page this tab renders`)}).strict()],Be=s.discriminatedUnion(`type`,[Re,...$]),Ve=s.discriminatedUnion(`type`,[ze,...$]),He={name:s.string(),label:s.string(),description:s.string().optional(),icon:N.optional()};function contentViewBaseSchemaFor(e){let t=s.array(e).max(M.tabsPerView);return s.discriminatedUnion(`context`,[s.object({...He,object:s.string(),context:s.enum([`collection`,`record`]),default:s.boolean().optional(),anchors:s.record(s.string(),s.object({after:s.string()}).strict()).optional(),contents:t}).strict(),s.object({...He,object:s.string().optional(),context:s.literal(`page`),home:s.boolean().optional(),contents:t}).strict()])}const Ue=contentViewBaseSchemaFor(Be),We=contentViewBaseSchemaFor(Ve);function addDuplicateContentNameIssues(e,t){let n=/* @__PURE__ */ new Set;e.contents.forEach((e,r)=>{n.has(e.name)&&t.addIssue({code:`custom`,message:`Duplicate content name "${e.name}"`,path:[`contents`,r,`name`]}),n.add(e.name)})}const Ge=[`width`,`height`,`joined`];function addPlacementIssues(e,t){e.contents.forEach((n,r)=>{let i=n.placement===`grid`;if(!i)for(let e of Ge)n[e]!==void 0&&t.addIssue({code:`custom`,message:`Only a page block takes ${e}`,path:[`contents`,r,e]});e.context===`page`&&!i&&t.addIssue({code:`custom`,message:`Content "${n.name}" of a page must be placed on the grid`,path:[`contents`,r,`placement`]}),e.context!==`page`&&i&&t.addIssue({code:`custom`,message:`Content "${n.name}" cannot be placed on a grid outside a page`,path:[`contents`,r,`placement`]})}),e.contents.forEach((e,n)=>{e.type===`custom`&&e.extension===`heading`&&(e.label===void 0||e.label.trim()===``)&&t.addIssue({code:`custom`,message:`A heading needs a label`,path:[`contents`,n,`label`]})}),e.home&&e.object!==void 0&&t.addIssue({code:`custom`,message:`Only a standalone page can be the home`,path:[`home`]})}const Ke=Ue.superRefine((e,t)=>{let n=e;addDuplicateContentNameIssues(n,t),addPlacementIssues(n,t)}),qe=We.superRefine((e,t)=>{let n=e;addDuplicateContentNameIssues(n,t),addPlacementIssues(n,t),e.context!==`page`&&!e.contents.some(e=>e.placement===`main`)&&t.addIssue({code:`custom`,message:`A published view requires at least one main content`,path:[`contents`]})});function isPlainRecord(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}const Je=new Set(c.ICONS),Ye=/^[a-zA-Z_][a-zA-Z0-9_]*$/,Xe=/^[a-z][a-z0-9-]*$/,Ze=M.labelLength,Qe=s.string().min(1,`Object name cannot be empty`).max(63,`Object name is too long (max 63 characters)`).regex(/^[a-z][a-z0-9-]*$/,{message:`Invalid object name format.
3
+ Name must be in kebab-case (slug format):
4
+ ✅ Valid: 'products', 'user-profiles', 'order-items'
5
+ ❌ Invalid: 'Products', 'userProfiles', 'user_profiles'`});function validateObjectName(e){try{Qe.parse(e)}catch(e){throw e instanceof s.ZodError?new o.SchemaError(e.issues[0].message,o.SchemaErrorCode.INVALID_OBJECT_NAME):e}}function validateViewName(e){if(!e||e.length===0)throw new o.ValidationError(`View name cannot be empty`,[{path:[`name`],message:`View name cannot be empty`}]);if(e.length>63)throw new o.ValidationError(`View name is too long`,[{path:[`name`],message:`View name is too long (max 63 characters)`}]);if(!Xe.test(e))throw new o.ValidationError(`Invalid view name format`,[{path:[`name`],message:`View name must be in kebab-case (e.g., 'detail', 'list-view')`}])}function assertUniqueBy(e,t,n){let r=/* @__PURE__ */ new Set;for(let i of e){let e=t(i);if(r.has(e))throw n(e);r.add(e)}}const $e=s.string().min(1,`Attribute name cannot be empty`).max(63,`Attribute name is too long (max 63 characters)`).regex(Ye,{message:`Invalid attribute name format.
6
+ Name must be a valid variable identifier:
7
+ ✅ Valid: 'firstName', 'first_name', 'FirstName', 'FIRST_NAME'
8
+ ❌ Invalid: 'first-name', 'first name', '123name', 'first.name'`}).refine(e=>!j.includes(e),{message:`This is a reserved attribute name. Reserved names: ${j.join(`, `)}`});function validateAttributeName(e){if(!e||e.length===0)throw Error(`[AttributeBuilder] Attribute name cannot be empty`);if(e.length>63)throw Error(`[AttributeBuilder] Attribute name is too long (max 63 characters)`);if(!Ye.test(e))throw Error(`[AttributeBuilder] Invalid attribute name format.
9
+ Name must be a valid variable identifier:
10
+ ✅ Valid: 'firstName', 'first_name', 'FirstName', 'FIRST_NAME'
11
+ ❌ Invalid: 'first-name', 'first name', '123name', 'first.name'`);if(j.includes(e))throw Error(`[AttributeBuilder] "${e}" is a reserved name and cannot be used as an attribute name.\nReserved names: ${j.join(`, `)}`)}function validateLabel(e){if(!e||e.length===0)throw Error(`[AttributeBuilder] Attribute label cannot be empty`);if(e.length>Ze)throw Error(`[AttributeBuilder] Attribute label is too long (max ${Ze} characters)`)}function validateIconName(e,t){if(!Je.has(e))throw Error(`[AttributeBuilder] Invalid icon "${e}" in ${t}.\nIcon must be one of the predefined icons from @standards/constants.`)}function validateOptions(e,t){let n=/* @__PURE__ */ new Set;for(let r of t){if(!r.value?.trim())throw Error(`[AttributeBuilder] Option in "${e}" has an empty or missing value.`);if(!r.label?.trim())throw Error(`[AttributeBuilder] Option "${r.value}" in "${e}" has an empty or missing label.`);if(n.has(r.value))throw Error(`[AttributeBuilder] Duplicate option value "${r.value}" in "${e}".`);n.add(r.value)}for(let n of t){if(n.inverse===void 0)continue;let r=t.find(e=>e.value===n.inverse);if(!r)throw Error(`[AttributeBuilder] Option "${n.value}" in "${e}" has inverse "${n.inverse}" which does not match any option value.`);if(r.inverse!==n.value)throw Error(`[AttributeBuilder] Inverse mismatch in "${e}": "${n.value}" points to "${n.inverse}", but "${n.inverse}" points to "${r.inverse??`(none)`}". Inverse pairs must be symmetric.`)}}Object.defineProperty(exports,"ATTRIBUTE_FILTER_OPERATORS",{enumerable:!0,get:function(){return C}}),Object.defineProperty(exports,"ATTRIBUTE_NAME_SCHEMA",{enumerable:!0,get:function(){return $e}}),Object.defineProperty(exports,"ATTRIBUTE_TYPES",{enumerable:!0,get:function(){return T}}),Object.defineProperty(exports,"ATTRIBUTE_TYPE_DESCRIPTORS",{enumerable:!0,get:function(){return w}}),Object.defineProperty(exports,"HIERARCHY_ATTRIBUTE_IDS",{enumerable:!0,get:function(){return d}}),Object.defineProperty(exports,"HIERARCHY_ATTRIBUTE_NAMES",{enumerable:!0,get:function(){return f}}),Object.defineProperty(exports,"HIERARCHY_CHILD_IDS_LIMIT",{enumerable:!0,get:function(){return 6}}),Object.defineProperty(exports,"LIST_VIEW_TAB_VISIBILITIES",{enumerable:!0,get:function(){return k}}),Object.defineProperty(exports,"LOCATION_FILTER_PROPERTIES",{enumerable:!0,get:function(){return S}}),Object.defineProperty(exports,"NATIVE_OBJECT_NAMES",{enumerable:!0,get:function(){return D}}),Object.defineProperty(exports,"NO_VALUE_OPERATORS",{enumerable:!0,get:function(){return E}}),Object.defineProperty(exports,"OBJECT_NAME_SCHEMA",{enumerable:!0,get:function(){return Qe}}),Object.defineProperty(exports,"OPERATORS_BY_TYPE",{enumerable:!0,get:function(){return te}}),Object.defineProperty(exports,"PAGE_GRID_COLUMNS",{enumerable:!0,get:function(){return se}}),Object.defineProperty(exports,"QUALIFIED_SEPARATOR",{enumerable:!0,get:function(){return`__`}}),Object.defineProperty(exports,"RECORD_LIST_SCOPES",{enumerable:!0,get:function(){return A}}),Object.defineProperty(exports,"RELATION_TARGET_ANY",{enumerable:!0,get:function(){return`*`}}),Object.defineProperty(exports,"REMOVED_OPERATOR_REPLACEMENTS",{enumerable:!0,get:function(){return U}}),Object.defineProperty(exports,"RESERVED_ATTRIBUTE_NAMES",{enumerable:!0,get:function(){return j}}),Object.defineProperty(exports,"RESERVED_OBJECT_NAMES",{enumerable:!0,get:function(){return re}}),Object.defineProperty(exports,"RESOURCE_VISIBILITIES",{enumerable:!0,get:function(){return O}}),Object.defineProperty(exports,"SCHEMA_LIMITS",{enumerable:!0,get:function(){return M}}),Object.defineProperty(exports,"SYNONYM_ALIASES",{enumerable:!0,get:function(){return z}}),Object.defineProperty(exports,"SYSTEM_ATTRIBUTES",{enumerable:!0,get:function(){return u}}),Object.defineProperty(exports,"SYSTEM_ATTRIBUTE_I18N_KEYS",{enumerable:!0,get:function(){return l}}),Object.defineProperty(exports,"SYSTEM_FIELD_NAMES",{enumerable:!0,get:function(){return ne}}),Object.defineProperty(exports,"SYSTEM_FILTER_ATTRIBUTE_TYPES",{enumerable:!0,get:function(){return H}}),Object.defineProperty(exports,"__exportAll",{enumerable:!0,get:function(){return __exportAll}}),Object.defineProperty(exports,"__toESM",{enumerable:!0,get:function(){return __toESM}}),Object.defineProperty(exports,"assertUniqueBy",{enumerable:!0,get:function(){return assertUniqueBy}}),Object.defineProperty(exports,"attributeFilterTarget",{enumerable:!0,get:function(){return attributeFilterTarget}}),Object.defineProperty(exports,"buildQualifiedAttribute",{enumerable:!0,get:function(){return buildQualifiedAttribute}}),Object.defineProperty(exports,"canonicalizeFilterValue",{enumerable:!0,get:function(){return canonicalizeFilterValue}}),Object.defineProperty(exports,"characterCount",{enumerable:!0,get:function(){return characterCount}}),Object.defineProperty(exports,"collectQualifiedRuleIssues",{enumerable:!0,get:function(){return collectQualifiedRuleIssues}}),Object.defineProperty(exports,"collectionContentSourceSchema",{enumerable:!0,get:function(){return J}}),Object.defineProperty(exports,"colorIdSchema",{enumerable:!0,get:function(){return oe}}),Object.defineProperty(exports,"columnsSchema",{enumerable:!0,get:function(){return xe}}),Object.defineProperty(exports,"contentViewDefinitionSchema",{enumerable:!0,get:function(){return qe}}),Object.defineProperty(exports,"currentActor",{enumerable:!0,get:function(){return currentActor}}),Object.defineProperty(exports,"displayAttributesSchema",{enumerable:!0,get:function(){return G}}),Object.defineProperty(exports,"draftContentViewDefinitionSchema",{enumerable:!0,get:function(){return Ke}}),Object.defineProperty(exports,"edgePropertyFilterTarget",{enumerable:!0,get:function(){return edgePropertyFilterTarget}}),Object.defineProperty(exports,"extractCurrencyFilterValue",{enumerable:!0,get:function(){return extractCurrencyFilterValue}}),Object.defineProperty(exports,"extractFilterValue",{enumerable:!0,get:function(){return extractFilterValue}}),Object.defineProperty(exports,"filterOperatorsOfType",{enumerable:!0,get:function(){return filterOperatorsOfType}}),Object.defineProperty(exports,"filterStateSchema",{enumerable:!0,get:function(){return q}}),Object.defineProperty(exports,"filterTargetsOf",{enumerable:!0,get:function(){return filterTargetsOf}}),Object.defineProperty(exports,"getAttributeCapabilities",{enumerable:!0,get:function(){return getAttributeCapabilities}}),Object.defineProperty(exports,"getAttributeFilterOperators",{enumerable:!0,get:function(){return getAttributeFilterOperators}}),Object.defineProperty(exports,"getHierarchyAttributes",{enumerable:!0,get:function(){return getHierarchyAttributes}}),Object.defineProperty(exports,"getObjectSystemAttributes",{enumerable:!0,get:function(){return getObjectSystemAttributes}}),Object.defineProperty(exports,"getOperatorPolarity",{enumerable:!0,get:function(){return getOperatorPolarity}}),Object.defineProperty(exports,"getRollupFilterOperators",{enumerable:!0,get:function(){return getRollupFilterOperators}}),Object.defineProperty(exports,"getSystemAttributeI18nKey",{enumerable:!0,get:function(){return getSystemAttributeI18nKey}}),Object.defineProperty(exports,"getSystemAttributeList",{enumerable:!0,get:function(){return getSystemAttributeList}}),Object.defineProperty(exports,"hasTypeTrait",{enumerable:!0,get:function(){return hasTypeTrait}}),Object.defineProperty(exports,"hasValueKind",{enumerable:!0,get:function(){return hasValueKind}}),Object.defineProperty(exports,"iconNameSchema",{enumerable:!0,get:function(){return N}}),Object.defineProperty(exports,"inferInverseCardinality",{enumerable:!0,get:function(){return inferInverseCardinality}}),Object.defineProperty(exports,"isAttributeFilterable",{enumerable:!0,get:function(){return isAttributeFilterable}}),Object.defineProperty(exports,"isAttributeGroupable",{enumerable:!0,get:function(){return isAttributeGroupable}}),Object.defineProperty(exports,"isAttributeKanbanGroupable",{enumerable:!0,get:function(){return isAttributeKanbanGroupable}}),Object.defineProperty(exports,"isAttributeSearchable",{enumerable:!0,get:function(){return isAttributeSearchable}}),Object.defineProperty(exports,"isAttributeSortable",{enumerable:!0,get:function(){return isAttributeSortable}}),Object.defineProperty(exports,"isBilateralRelation",{enumerable:!0,get:function(){return isBilateralRelation}}),Object.defineProperty(exports,"isBlockWidth",{enumerable:!0,get:function(){return isBlockWidth}}),Object.defineProperty(exports,"isCalendarDay",{enumerable:!0,get:function(){return isCalendarDay}}),Object.defineProperty(exports,"isDynamicValue",{enumerable:!0,get:function(){return isDynamicValue}}),Object.defineProperty(exports,"isHierarchyAttribute",{enumerable:!0,get:function(){return isHierarchyAttribute}}),Object.defineProperty(exports,"isLocationFilterProperty",{enumerable:!0,get:function(){return isLocationFilterProperty}}),Object.defineProperty(exports,"isLocationPartOperator",{enumerable:!0,get:function(){return isLocationPartOperator}}),Object.defineProperty(exports,"isManagedSystemAttribute",{enumerable:!0,get:function(){return isManagedSystemAttribute}}),Object.defineProperty(exports,"isNativeObjectName",{enumerable:!0,get:function(){return isNativeObjectName}}),Object.defineProperty(exports,"isNoValueOperator",{enumerable:!0,get:function(){return isNoValueOperator}}),Object.defineProperty(exports,"isPlainRecord",{enumerable:!0,get:function(){return isPlainRecord}}),Object.defineProperty(exports,"isRelativeDateValue",{enumerable:!0,get:function(){return isRelativeDateValue}}),Object.defineProperty(exports,"isSetMembershipOperator",{enumerable:!0,get:function(){return isSetMembershipOperator}}),Object.defineProperty(exports,"isUniversalRelation",{enumerable:!0,get:function(){return isUniversalRelation}}),Object.defineProperty(exports,"isValueKindType",{enumerable:!0,get:function(){return isValueKindType}}),Object.defineProperty(exports,"locationPartFilterTarget",{enumerable:!0,get:function(){return locationPartFilterTarget}}),Object.defineProperty(exports,"normalizeFilterRule",{enumerable:!0,get:function(){return normalizeFilterRule}}),Object.defineProperty(exports,"normalizeForEdgeRpc",{enumerable:!0,get:function(){return normalizeForEdgeRpc}}),Object.defineProperty(exports,"normalizeOperator",{enumerable:!0,get:function(){return normalizeOperator}}),Object.defineProperty(exports,"now",{enumerable:!0,get:function(){return now}}),Object.defineProperty(exports,"parseQualifiedAttribute",{enumerable:!0,get:function(){return parseQualifiedAttribute}}),Object.defineProperty(exports,"parseRecordListScope",{enumerable:!0,get:function(){return parseRecordListScope}}),Object.defineProperty(exports,"parseResourceVisibility",{enumerable:!0,get:function(){return parseResourceVisibility}}),Object.defineProperty(exports,"publishedViewContentDefinitionSchema",{enumerable:!0,get:function(){return Ve}}),Object.defineProperty(exports,"relationTargetsOf",{enumerable:!0,get:function(){return relationTargetsOf}}),Object.defineProperty(exports,"resolveEffectiveFilterType",{enumerable:!0,get:function(){return resolveEffectiveFilterType}}),Object.defineProperty(exports,"resolveIsWithinBounds",{enumerable:!0,get:function(){return resolveIsWithinBounds}}),Object.defineProperty(exports,"resolveUtcDayBounds",{enumerable:!0,get:function(){return resolveUtcDayBounds}}),Object.defineProperty(exports,"sortsSchema",{enumerable:!0,get:function(){return K}}),Object.defineProperty(exports,"systemColumnFilterTarget",{enumerable:!0,get:function(){return systemColumnFilterTarget}}),Object.defineProperty(exports,"toMultiValueOperator",{enumerable:!0,get:function(){return toMultiValueOperator}}),Object.defineProperty(exports,"toUtcDayString",{enumerable:!0,get:function(){return toUtcDayString}}),Object.defineProperty(exports,"today",{enumerable:!0,get:function(){return today}}),Object.defineProperty(exports,"twelfthsSchema",{enumerable:!0,get:function(){return X}}),Object.defineProperty(exports,"validateAttributeName",{enumerable:!0,get:function(){return validateAttributeName}}),Object.defineProperty(exports,"validateIconName",{enumerable:!0,get:function(){return validateIconName}}),Object.defineProperty(exports,"validateLabel",{enumerable:!0,get:function(){return validateLabel}}),Object.defineProperty(exports,"validateObjectName",{enumerable:!0,get:function(){return validateObjectName}}),Object.defineProperty(exports,"validateOptions",{enumerable:!0,get:function(){return validateOptions}}),Object.defineProperty(exports,"validateQualifiedRule",{enumerable:!0,get:function(){return validateQualifiedRule}}),Object.defineProperty(exports,"validateViewName",{enumerable:!0,get:function(){return validateViewName}});
@@ -153,8 +153,16 @@ export declare const SchemaErrorCode: {
153
153
  readonly DUPLICATE_ATTRIBUTE: "SCHEMA_DUPLICATE_ATTRIBUTE";
154
154
  /** A second live memory page with the same profile or subject key. */
155
155
  readonly MEMORY_PAGE_EXISTS: "SCHEMA_MEMORY_PAGE_EXISTS";
156
- /** propose_memory called more than the hourly budget allows for one actor. */
157
- readonly MEMORY_PROPOSAL_RATE_LIMITED: "SCHEMA_MEMORY_PROPOSAL_RATE_LIMITED";
156
+ /** A memory `add` on a page already holding its line cap. */
157
+ readonly MEMORY_LINE_CAP: "SCHEMA_MEMORY_LINE_CAP";
158
+ /** A memory write an outsider's words could have shaped: a consigne, the workspace profile, a sourceless line. */
159
+ readonly MEMORY_UNTRUSTED: "SCHEMA_MEMORY_UNTRUSTED";
160
+ /** A memory write whose sources admit no page the caller may write. */
161
+ readonly MEMORY_SCOPE: "SCHEMA_MEMORY_SCOPE";
162
+ /** A person's interactive memory `add` calls past the hourly budget. */
163
+ readonly MEMORY_RATE_LIMITED: "SCHEMA_MEMORY_RATE_LIMITED";
164
+ /** A memory write this session's role may not make (a routine's parent, a chat's rewrite). */
165
+ readonly MEMORY_WRITER: "SCHEMA_MEMORY_WRITER";
158
166
  readonly CONFLICT: "SCHEMA_CONFLICT";
159
167
  /**
160
168
  * A queued record operation was rolled back unsent because an earlier
@@ -154,8 +154,16 @@ export declare const SchemaErrorCode: {
154
154
  readonly DUPLICATE_ATTRIBUTE: "SCHEMA_DUPLICATE_ATTRIBUTE";
155
155
  /** A second live memory page with the same profile or subject key. */
156
156
  readonly MEMORY_PAGE_EXISTS: "SCHEMA_MEMORY_PAGE_EXISTS";
157
- /** propose_memory called more than the hourly budget allows for one actor. */
158
- readonly MEMORY_PROPOSAL_RATE_LIMITED: "SCHEMA_MEMORY_PROPOSAL_RATE_LIMITED";
157
+ /** A memory `add` on a page already holding its line cap. */
158
+ readonly MEMORY_LINE_CAP: "SCHEMA_MEMORY_LINE_CAP";
159
+ /** A memory write an outsider's words could have shaped: a consigne, the workspace profile, a sourceless line. */
160
+ readonly MEMORY_UNTRUSTED: "SCHEMA_MEMORY_UNTRUSTED";
161
+ /** A memory write whose sources admit no page the caller may write. */
162
+ readonly MEMORY_SCOPE: "SCHEMA_MEMORY_SCOPE";
163
+ /** A person's interactive memory `add` calls past the hourly budget. */
164
+ readonly MEMORY_RATE_LIMITED: "SCHEMA_MEMORY_RATE_LIMITED";
165
+ /** A memory write this session's role may not make (a routine's parent, a chat's rewrite). */
166
+ readonly MEMORY_WRITER: "SCHEMA_MEMORY_WRITER";
159
167
  readonly CONFLICT: "SCHEMA_CONFLICT";
160
168
  /**
161
169
  * A queued record operation was rolled back unsent because an earlier
@@ -1,3 +1,3 @@
1
1
 
2
- import { AccessDeniedError, AggregateErrorCode, AggregateValidationError, AmbiguousSchemaChangeError, AttributeInUseError, AttributeNotFoundError, AttributeRetypeRefusal, AttributeUsage, ConcurrentModificationError, DuplicateError, ExportTooLargeError, ForbiddenError, InvalidPermissionGrantError, LogoProviderUnavailableError, LogoSearchRateLimitedError, MemoryNotFoundError, NotFoundError, NotImplementedError, ObjectNotFoundError, ObjectReferencedError, OrphanSystemAttributeError, PageReference, PageReferencedError, ProtectedResourceError, ProtectedRoleError, QueryTimeoutError, RealtimeDeliveryError, RealtimeRateLimitedError, RealtimeSubscriptionError, RecordNotFoundError, RecordReference, RecordReferencedError, RepositoryError, RepositoryOperation, ReservedObjectNameError, RetypeRefuseReason, RoleNotFoundError, SCHEMA_ERROR_HTTP_STATUS, SchemaError, SchemaErrorCode, SchemaErrorJson, SearchBackendError, SearchBackendErrorOptions, SearchBackendFailureKind, SearchPathNotIndexedError, StorageError, StorageOperation, SyncCascadeError, SyncConflictError, SyncError, SystemEntityImmutableError, ToolGroupGrantError, ToolGroupGrantErrorCode, ValidationError, ValidationErrorDetail, WorkspaceInvariantReason, isAttributeInUseError, isNotFoundError, isObjectReferencedError, isProtectedResourceError, isRecordReferencedError, isSchemaError, isValidationError } from "./exceptions-zQlC2r1F.mjs";
2
+ import { AccessDeniedError, AggregateErrorCode, AggregateValidationError, AmbiguousSchemaChangeError, AttributeInUseError, AttributeNotFoundError, AttributeRetypeRefusal, AttributeUsage, ConcurrentModificationError, DuplicateError, ExportTooLargeError, ForbiddenError, InvalidPermissionGrantError, LogoProviderUnavailableError, LogoSearchRateLimitedError, MemoryNotFoundError, NotFoundError, NotImplementedError, ObjectNotFoundError, ObjectReferencedError, OrphanSystemAttributeError, PageReference, PageReferencedError, ProtectedResourceError, ProtectedRoleError, QueryTimeoutError, RealtimeDeliveryError, RealtimeRateLimitedError, RealtimeSubscriptionError, RecordNotFoundError, RecordReference, RecordReferencedError, RepositoryError, RepositoryOperation, ReservedObjectNameError, RetypeRefuseReason, RoleNotFoundError, SCHEMA_ERROR_HTTP_STATUS, SchemaError, SchemaErrorCode, SchemaErrorJson, SearchBackendError, SearchBackendErrorOptions, SearchBackendFailureKind, SearchPathNotIndexedError, StorageError, StorageOperation, SyncCascadeError, SyncConflictError, SyncError, SystemEntityImmutableError, ToolGroupGrantError, ToolGroupGrantErrorCode, ValidationError, ValidationErrorDetail, WorkspaceInvariantReason, isAttributeInUseError, isNotFoundError, isObjectReferencedError, isProtectedResourceError, isRecordReferencedError, isSchemaError, isValidationError } from "./exceptions-BjtmXIip.mjs";
3
3
  export { AccessDeniedError, AggregateErrorCode, AggregateValidationError, AmbiguousSchemaChangeError, AttributeInUseError, AttributeNotFoundError, AttributeRetypeRefusal, AttributeUsage, ConcurrentModificationError, DuplicateError, ExportTooLargeError, ForbiddenError, InvalidPermissionGrantError, LogoProviderUnavailableError, LogoSearchRateLimitedError, MemoryNotFoundError, NotFoundError, NotImplementedError, ObjectNotFoundError, ObjectReferencedError, OrphanSystemAttributeError, PageReference, PageReferencedError, ProtectedResourceError, ProtectedRoleError, QueryTimeoutError, RealtimeDeliveryError, RealtimeRateLimitedError, RealtimeSubscriptionError, RecordNotFoundError, RecordReference, RecordReferencedError, RepositoryError, RepositoryOperation, ReservedObjectNameError, RetypeRefuseReason, RoleNotFoundError, SCHEMA_ERROR_HTTP_STATUS, SchemaError, SchemaErrorCode, SchemaErrorJson, SearchBackendError, SearchBackendErrorOptions, SearchBackendFailureKind, SearchPathNotIndexedError, StorageError, StorageOperation, SyncCascadeError, SyncConflictError, SyncError, SystemEntityImmutableError, ToolGroupGrantError, ToolGroupGrantErrorCode, ValidationError, ValidationErrorDetail, WorkspaceInvariantReason, isAttributeInUseError, isNotFoundError, isObjectReferencedError, isProtectedResourceError, isRecordReferencedError, isSchemaError, isValidationError };
@@ -1,3 +1,3 @@
1
1
 
2
- import { AccessDeniedError, AggregateErrorCode, AggregateValidationError, AmbiguousSchemaChangeError, AttributeInUseError, AttributeNotFoundError, AttributeRetypeRefusal, AttributeUsage, ConcurrentModificationError, DuplicateError, ExportTooLargeError, ForbiddenError, InvalidPermissionGrantError, LogoProviderUnavailableError, LogoSearchRateLimitedError, MemoryNotFoundError, NotFoundError, NotImplementedError, ObjectNotFoundError, ObjectReferencedError, OrphanSystemAttributeError, PageReference, PageReferencedError, ProtectedResourceError, ProtectedRoleError, QueryTimeoutError, RealtimeDeliveryError, RealtimeRateLimitedError, RealtimeSubscriptionError, RecordNotFoundError, RecordReference, RecordReferencedError, RepositoryError, RepositoryOperation, ReservedObjectNameError, RetypeRefuseReason, RoleNotFoundError, SCHEMA_ERROR_HTTP_STATUS, SchemaError, SchemaErrorCode, SchemaErrorJson, SearchBackendError, SearchBackendErrorOptions, SearchBackendFailureKind, SearchPathNotIndexedError, StorageError, StorageOperation, SyncCascadeError, SyncConflictError, SyncError, SystemEntityImmutableError, ToolGroupGrantError, ToolGroupGrantErrorCode, ValidationError, ValidationErrorDetail, WorkspaceInvariantReason, isAttributeInUseError, isNotFoundError, isObjectReferencedError, isProtectedResourceError, isRecordReferencedError, isSchemaError, isValidationError } from "./exceptions-YHdKk5N8.js";
2
+ import { AccessDeniedError, AggregateErrorCode, AggregateValidationError, AmbiguousSchemaChangeError, AttributeInUseError, AttributeNotFoundError, AttributeRetypeRefusal, AttributeUsage, ConcurrentModificationError, DuplicateError, ExportTooLargeError, ForbiddenError, InvalidPermissionGrantError, LogoProviderUnavailableError, LogoSearchRateLimitedError, MemoryNotFoundError, NotFoundError, NotImplementedError, ObjectNotFoundError, ObjectReferencedError, OrphanSystemAttributeError, PageReference, PageReferencedError, ProtectedResourceError, ProtectedRoleError, QueryTimeoutError, RealtimeDeliveryError, RealtimeRateLimitedError, RealtimeSubscriptionError, RecordNotFoundError, RecordReference, RecordReferencedError, RepositoryError, RepositoryOperation, ReservedObjectNameError, RetypeRefuseReason, RoleNotFoundError, SCHEMA_ERROR_HTTP_STATUS, SchemaError, SchemaErrorCode, SchemaErrorJson, SearchBackendError, SearchBackendErrorOptions, SearchBackendFailureKind, SearchPathNotIndexedError, StorageError, StorageOperation, SyncCascadeError, SyncConflictError, SyncError, SystemEntityImmutableError, ToolGroupGrantError, ToolGroupGrantErrorCode, ValidationError, ValidationErrorDetail, WorkspaceInvariantReason, isAttributeInUseError, isNotFoundError, isObjectReferencedError, isProtectedResourceError, isRecordReferencedError, isSchemaError, isValidationError } from "./exceptions-CxTJ-9hJ.js";
3
3
  export { AccessDeniedError, AggregateErrorCode, AggregateValidationError, AmbiguousSchemaChangeError, AttributeInUseError, AttributeNotFoundError, AttributeRetypeRefusal, AttributeUsage, ConcurrentModificationError, DuplicateError, ExportTooLargeError, ForbiddenError, InvalidPermissionGrantError, LogoProviderUnavailableError, LogoSearchRateLimitedError, MemoryNotFoundError, NotFoundError, NotImplementedError, ObjectNotFoundError, ObjectReferencedError, OrphanSystemAttributeError, PageReference, PageReferencedError, ProtectedResourceError, ProtectedRoleError, QueryTimeoutError, RealtimeDeliveryError, RealtimeRateLimitedError, RealtimeSubscriptionError, RecordNotFoundError, RecordReference, RecordReferencedError, RepositoryError, RepositoryOperation, ReservedObjectNameError, RetypeRefuseReason, RoleNotFoundError, SCHEMA_ERROR_HTTP_STATUS, SchemaError, SchemaErrorCode, SchemaErrorJson, SearchBackendError, SearchBackendErrorOptions, SearchBackendFailureKind, SearchPathNotIndexedError, StorageError, StorageOperation, SyncCascadeError, SyncConflictError, SyncError, SystemEntityImmutableError, ToolGroupGrantError, ToolGroupGrantErrorCode, ValidationError, ValidationErrorDetail, WorkspaceInvariantReason, isAttributeInUseError, isNotFoundError, isObjectReferencedError, isProtectedResourceError, isRecordReferencedError, isSchemaError, isValidationError };
@@ -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
- Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e={CONNECTOR_INVALID_SIGNATURE:`SCHEMA_CONNECTOR_INVALID_SIGNATURE`,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`,RECORD_ID_UNAVAILABLE:`SCHEMA_RECORD_ID_UNAVAILABLE`,BUNDLE_NOT_FOUND:`SCHEMA_BUNDLE_NOT_FOUND`,NEWS_ENTRY_NOT_FOUND:`NEWS_ENTRY_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`,ACTOR_REQUIRED:`ACTOR_CONTEXT_REQUIRED`,ACTOR_CONTEXT_LOST:`ACTOR_CONTEXT_LOST`,TENANT_CONFIRMATION_MISMATCH:`SCHEMA_TENANT_CONFIRMATION_MISMATCH`,SESSION_REQUIRED:`SCHEMA_SESSION_REQUIRED`,API_KEY_OWNER_ROLE_REFUSED:`SCHEMA_API_KEY_OWNER_ROLE_REFUSED`,CONNECTOR_API_FAILED:`SCHEMA_CONNECTOR_API_FAILED`,CONNECTOR_AUTH_FAILED:`SCHEMA_CONNECTOR_AUTH_FAILED`,CONNECTOR_INVALID_STATE:`SCHEMA_CONNECTOR_INVALID_STATE`,CONNECTOR_ACCOUNT_MISMATCH:`SCHEMA_CONNECTOR_ACCOUNT_MISMATCH`,CONNECTOR_GRANT_ORPHANED:`SCHEMA_CONNECTOR_GRANT_ORPHANED`,OAUTH_COMPLETION_REFUSED:`SCHEMA_OAUTH_COMPLETION_REFUSED`,OAUTH_COMPLETION_OTHER_WORKSPACE:`SCHEMA_OAUTH_COMPLETION_OTHER_WORKSPACE`,OAUTH_TICKET_INVALID:`SCHEMA_OAUTH_TICKET_INVALID`,OAUTH_CLIENT_OUTDATED:`SCHEMA_OAUTH_CLIENT_OUTDATED`,SYNC_FAILED:`SCHEMA_SYNC_FAILED`,SYNC_CONFLICT:`SCHEMA_SYNC_CONFLICT`,SYNC_CASCADE:`SCHEMA_SYNC_CASCADE`,ORPHAN_SYSTEM_ATTRIBUTE:`SCHEMA_ORPHAN_SYSTEM_ATTRIBUTE`,MIGRATIONS_PENDING:`SCHEMA_MIGRATIONS_PENDING`,BUILD_MISMATCH:`SCHEMA_BUILD_MISMATCH`,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`,RECORD_PARENT_INVALID:`RECORD_PARENT_INVALID`,RECORD_HIERARCHY_WRITE:`RECORD_HIERARCHY_WRITE`,RECORD_MOVE_IMPACT_CHANGED:`RECORD_MOVE_IMPACT_CHANGED`,RECORD_HIERARCHY_OFF_REFUSED:`RECORD_HIERARCHY_OFF_REFUSED`,AGENT_GRANT_ON_WORKSPACE:`AGENT_GRANT_ON_WORKSPACE`,AGENT_GRANT_INVALID_ACTOR:`AGENT_GRANT_INVALID_ACTOR`,PAGE_GRANT_ON_WORKSPACE:`PAGE_GRANT_ON_WORKSPACE`,PAGE_GRANT_INVALID_ACTOR:`PAGE_GRANT_INVALID_ACTOR`,DEVICE_GRANT_ON_PERSONAL:`DEVICE_GRANT_ON_PERSONAL`,DEVICE_GRANT_INVALID_ACTOR:`DEVICE_GRANT_INVALID_ACTOR`,AGENT_SCHEDULE_AUDIENCE_ON_WORKSPACE:`AGENT_SCHEDULE_AUDIENCE_ON_WORKSPACE`,AGENT_SCHEDULE_AUDIENCE_HARNESS:`AGENT_SCHEDULE_AUDIENCE_HARNESS`,AGENT_SCHEDULE_AUDIENCE_TOOL:`AGENT_SCHEDULE_AUDIENCE_TOOL`,RECORD_COUNT_GROUP_BY_MULTI_VALUED:`RECORD_COUNT_GROUP_BY_MULTI_VALUED`,RECORD_COUNT_GROUP_BY_UNSUPPORTED:`RECORD_COUNT_GROUP_BY_UNSUPPORTED`,AGGREGATE_SEARCH_UNSUPPORTED:`AGGREGATE_SEARCH_UNSUPPORTED`,PAGE_REFERENCED:`PAGE_REFERENCED`,DUPLICATE:`SCHEMA_DUPLICATE`,DUPLICATE_OBJECT:`SCHEMA_DUPLICATE_OBJECT`,DUPLICATE_ATTRIBUTE:`SCHEMA_DUPLICATE_ATTRIBUTE`,MEMORY_PAGE_EXISTS:`SCHEMA_MEMORY_PAGE_EXISTS`,MEMORY_PROPOSAL_RATE_LIMITED:`SCHEMA_MEMORY_PROPOSAL_RATE_LIMITED`,CONFLICT:`SCHEMA_CONFLICT`,OPERATION_ABANDONED:`SCHEMA_OPERATION_ABANDONED`,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`,QUERY_TIMEOUT:`QUERY_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`,SEARCH_PATH_NOT_INDEXED:`SEARCH_PATH_NOT_INDEXED`,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`,LOGO_PROVIDER_UNAVAILABLE:`LOGO_PROVIDER_UNAVAILABLE`,LOGO_SEARCH_RATE_LIMITED:`LOGO_SEARCH_RATE_LIMITED`,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`,CONCURRENCY_LIMIT:`CONCURRENCY_LIMIT`,EXPORT_TOO_LARGE:`EXPORT_TOO_LARGE`,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_TRIGGER_THREAD_BUSY:`AGENT_TRIGGER_THREAD_BUSY`,AGENT_TOOL_GROUP_UNKNOWN:`AGENT_TOOL_GROUP_UNKNOWN`,AGENT_TOOL_GROUP_NOT_CONTAINED:`AGENT_TOOL_GROUP_NOT_CONTAINED`,AGENT_TOOL_GROUP_SCOPE_MISSING:`AGENT_TOOL_GROUP_SCOPE_MISSING`,AGENT_TOOL_GROUP_HARNESS:`AGENT_TOOL_GROUP_HARNESS`,AGENT_TOOL_GROUP_NEEDS_PERSON:`AGENT_TOOL_GROUP_NEEDS_PERSON`,AGENT_TOOL_GROUP_REQUIRES:`AGENT_TOOL_GROUP_REQUIRES`,AGENT_COMPACTION_IMPOSSIBLE:`AGENT_COMPACTION_IMPOSSIBLE`,AGENT_COMPACTION_TIMEOUT:`AGENT_COMPACTION_TIMEOUT`,AGENT_SESSION_OWNER_FENCED:`AGENT_SESSION_OWNER_FENCED`,AGENT_TURN_RESUME_EXHAUSTED:`AGENT_TURN_RESUME_EXHAUSTED`,AGENT_SESSION_STREAM_CURSOR_EXPIRED:`AGENT_SESSION_STREAM_CURSOR_EXPIRED`,AGENT_MESSAGE_NOT_FOUND:`AGENT_MESSAGE_NOT_FOUND`,AGENT_MESSAGE_NOT_EDITABLE:`AGENT_MESSAGE_NOT_EDITABLE`,INVALID_TOOL_INPUT:`INVALID_TOOL_INPUT`,TOOL_FAILED:`TOOL_FAILED`,REFERENCE_NOT_FOUND:`REFERENCE_NOT_FOUND`,REFERENCE_INVALID:`REFERENCE_INVALID`,CAPABILITY_UNAVAILABLE:`CAPABILITY_UNAVAILABLE`,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_TURN_FINALIZER_STALLED:`AGENT_TURN_FINALIZER_STALLED`,ENVIRONMENT_NOT_READY:`ENVIRONMENT_NOT_READY`,ENVIRONMENT_IN_USE:`ENVIRONMENT_IN_USE`,ENVIRONMENT_MODEL_ACCESS_MISSING:`ENVIRONMENT_MODEL_ACCESS_MISSING`,ENVIRONMENT_BUILD_FAILED:`ENVIRONMENT_BUILD_FAILED`,ENVIRONMENT_RUN_FAILED:`ENVIRONMENT_RUN_FAILED`,MACHINE_LEASE_FENCED:`MACHINE_LEASE_FENCED`,MACHINE_ENV_FILE_FAILED:`MACHINE_ENV_FILE_FAILED`,LINK_TOKEN_INVALID:`LINK_TOKEN_INVALID`,SANDBOX_PROVIDER_FAILED:`SANDBOX_PROVIDER_FAILED`,CLOUD_BROWSER_LAUNCH_FAILED:`CLOUD_BROWSER_LAUNCH_FAILED`,CLOUD_BROWSER_PROVIDER_FAILED:`CLOUD_BROWSER_PROVIDER_FAILED`,CLOUD_BROWSER_CLOSED:`CLOUD_BROWSER_CLOSED`,BROWSER_PROFILE_LOCKED:`BROWSER_PROFILE_LOCKED`,AGENT_BROWSER_COMMAND_REFUSED:`AGENT_BROWSER_COMMAND_REFUSED`,ENV_VAR_NOT_FOUND:`ENV_VAR_NOT_FOUND`,DEVICE_NOT_FOUND:`DEVICE_NOT_FOUND`,DEVICE_OFFLINE:`DEVICE_OFFLINE`,DEVICE_ENROLLMENT_REFUSED:`DEVICE_ENROLLMENT_REFUSED`,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_SEND_NOT_GRANTED:`EMAIL_SEND_NOT_GRANTED`,EMAIL_BATCH_ITEM_FAILED:`EMAIL_BATCH_ITEM_FAILED`,EMAIL_SCOPE_UNSUPPORTED:`EMAIL_SCOPE_UNSUPPORTED`,EMAIL_CATEGORY_LIMIT:`EMAIL_CATEGORY_LIMIT`,CALENDAR_PROVIDER_API_FAILED:`CALENDAR_PROVIDER_API_FAILED`,EMBEDDING_MODEL_UNAVAILABLE:`EMBEDDING_MODEL_UNAVAILABLE`,EMBEDDING_DIMENSION_MISMATCH:`EMBEDDING_DIMENSION_MISMATCH`,SKILL_SOURCE_UNAVAILABLE:`SKILL_SOURCE_UNAVAILABLE`},t={SCHEMA_OBJECT_NOT_FOUND:404,SCHEMA_RECORD_NOT_FOUND:404,SCHEMA_BUNDLE_NOT_FOUND:404,NEWS_ENTRY_NOT_FOUND:404,SCHEMA_ATTRIBUTE_NOT_FOUND:404,SCHEMA_ROLE_NOT_FOUND:404,DEVICE_NOT_FOUND:404,ENV_VAR_NOT_FOUND:404,SCHEMA_FORBIDDEN:403,SCHEMA_WORKSPACE_INVARIANT:403,SCHEMA_STATE_GATE:403,JOB_RUN_METADATA_MISMATCH:403,SCHEMA_CONNECTOR_AUTH_FAILED:409,SCHEMA_CONNECTOR_ACCOUNT_MISMATCH:409,SCHEMA_CONNECTOR_INVALID_SIGNATURE:401,SCHEMA_CONNECTOR_API_FAILED:502,SCHEMA_ACTOR_CONTEXT_REQUIRED:403,SCHEMA_OAUTH_COMPLETION_REFUSED:403,SCHEMA_OAUTH_COMPLETION_OTHER_WORKSPACE:403,SCHEMA_OAUTH_TICKET_INVALID:400,SCHEMA_OAUTH_CLIENT_OUTDATED:400,SCHEMA_ACCESS_DENIED:403,SCHEMA_TENANT_CONFIRMATION_MISMATCH:403,ACTOR_CONTEXT_REQUIRED:401,ACTOR_CONTEXT_LOST:500,SCHEMA_API_KEY_OWNER_ROLE_REFUSED:403,SCHEMA_SESSION_REQUIRED:403,CREDITS_EXHAUSTED:402,QUOTA_EXCEEDED:409,CONCURRENCY_LIMIT:429,EXPORT_TOO_LARGE:413,AGENT_SESSION_OWNER_FENCED:409,AGENT_SESSION_STREAM_CURSOR_EXPIRED:410,SCHEMA_VALIDATION_FAILED:400,SCHEMA_INVALID_ATTRIBUTE_NAME:400,SCHEMA_INVALID_OBJECT_NAME:400,SCHEMA_RESERVED_OBJECT_NAME:400,SCHEMA_PERMISSION_INVALID_GRANT:400,AI_INVALID_MODEL:400,AI_INVALID_MODEL_INPUT:400,DEVICE_CHANNEL_PROTOCOL:400,SCHEMA_RECORD_ID_UNAVAILABLE:409,SCHEMA_OPERATION_ABANDONED:409,SCHEMA_DUPLICATE:409,SCHEMA_DUPLICATE_OBJECT:409,SCHEMA_DUPLICATE_ATTRIBUTE:409,SCHEMA_MEMORY_PAGE_EXISTS:409,SCHEMA_CONFLICT:409,DRAFT_REVISION_CONFLICT:409,DEVICE_OFFLINE:409,DEVICE_ENROLLMENT_REFUSED:401,SCHEMA_OBJECT_REFERENCED:409,SCHEMA_ATTRIBUTE_IN_USE:409,CONFIGURATION_REQUIRED:503,SEARCH_BACKEND_FAILED:503,SEARCH_BACKEND_REJECTED:503,SEARCH_PATH_NOT_INDEXED:503,EMBEDDING_MODEL_UNAVAILABLE:503,SKILL_SOURCE_UNAVAILABLE:503,AGENT_MESSAGE_NOT_FOUND:404,AGENT_MESSAGE_NOT_EDITABLE:409,AGENT_SESSION_NOT_FOUND:404,AGENT_DEFINITION_NOT_FOUND:404,AGENT_INVALID_STATE:409,AGENT_TRIGGER_THREAD_BUSY:409,AGENT_TOOL_GROUP_REQUIRES:400,AGENT_TOOL_GROUP_UNKNOWN:400,AGENT_TOOL_GROUP_NOT_CONTAINED:400,AGENT_TOOL_GROUP_SCOPE_MISSING:400,AGENT_TOOL_GROUP_HARNESS:400,AGENT_TOOL_GROUP_NEEDS_PERSON:400,ENVIRONMENT_NOT_READY:400,ENVIRONMENT_IN_USE:409,ENVIRONMENT_MODEL_ACCESS_MISSING:400,ENVIRONMENT_BUILD_FAILED:400,ENVIRONMENT_RUN_FAILED:400,MACHINE_LEASE_FENCED:409,MACHINE_ENV_FILE_FAILED:502,LINK_TOKEN_INVALID:400,SANDBOX_PROVIDER_FAILED:502,CLOUD_BROWSER_LAUNCH_FAILED:502,CLOUD_BROWSER_PROVIDER_FAILED:502,CLOUD_BROWSER_CLOSED:404,BROWSER_PROFILE_LOCKED:409,AGENT_BROWSER_COMMAND_REFUSED:400,REALTIME_RATE_LIMITED:429,LOGO_SEARCH_RATE_LIMITED:429,LOGO_PROVIDER_UNAVAILABLE:503,SCHEMA_MEMORY_PROPOSAL_RATE_LIMITED:429,REALTIME_DELIVERY_FAILED:502,REALTIME_SUBSCRIPTION_FAILED:503,SCHEMA_PROTECTED_OBJECT:403,SCHEMA_PROTECTED_ATTRIBUTE:403,SCHEMA_PROTECTED_VIEW:403,SCHEMA_PROTECTED_ROLE:400,SCHEMA_SYSTEM_ENTITY_IMMUTABLE:403,SCHEMA_SYNC_CONFLICT:409,SCHEMA_SYNC_CASCADE:409,SCHEMA_AMBIGUOUS_CHANGE:400,RECORD_GRANT_ON_WORKSPACE:400,RECORD_GRANT_INVALID_ACTOR:400,RECORD_GRANT_UNSHAREABLE_OBJECT:400,RECORD_PARENT_INVALID:400,RECORD_HIERARCHY_WRITE:400,RECORD_MOVE_IMPACT_CHANGED:409,RECORD_HIERARCHY_OFF_REFUSED:400,AGENT_GRANT_ON_WORKSPACE:400,AGENT_GRANT_INVALID_ACTOR:400,PAGE_GRANT_ON_WORKSPACE:400,PAGE_GRANT_INVALID_ACTOR:400,DEVICE_GRANT_ON_PERSONAL:400,DEVICE_GRANT_INVALID_ACTOR:400,AGENT_SCHEDULE_AUDIENCE_ON_WORKSPACE:400,AGENT_SCHEDULE_AUDIENCE_HARNESS:400,AGENT_SCHEDULE_AUDIENCE_TOOL:400,RECORD_COUNT_GROUP_BY_MULTI_VALUED:400,RECORD_COUNT_GROUP_BY_UNSUPPORTED:400,AGGREGATE_SEARCH_UNSUPPORTED:400,PAGE_REFERENCED:400,SCHEMA_TIMEOUT:408,QUERY_TIMEOUT:504,CALENDAR_PROVIDER_API_FAILED:502,EMAIL_PROVIDER_API_FAILED:502,EMAIL_CATEGORY_LIMIT:400,EMAIL_SEND_FAILED:502,EMAIL_SENT_NOT_STORED:502,EMAIL_SEND_NOT_GRANTED:403,EMBEDDING_DIMENSION_MISMATCH:502,AI_DECISION_FAILED:502,DOCUMENT_MIME_NOT_ACCEPTED:400,DOCUMENT_MULTIPLE_NOT_ALLOWED:400,DOCUMENT_NOT_FOUND_FOR_OPERATION:404,DOCUMENT_SIZE_EXCEEDED:400,DOCUMENT_FILE_TOO_LARGE:400,DOCUMENT_FILE_NOT_FOUND:404,DOCUMENT_FILE_ALREADY_PACKED:409,FILE_PUBLIC_NOT_ATTACHABLE:400,DOCUMENT_BLOB_EMPTY:422,SCHEMA_UNKNOWN_ERROR:500,SCHEMA_NOT_IMPLEMENTED:500,INVARIANT_VIOLATION:500,TENANT_CONTEXT_MISSING:500,SCHEMA_SYNC_FAILED:500,SCHEMA_ORPHAN_SYSTEM_ATTRIBUTE:500,SCHEMA_MIGRATIONS_PENDING:500,SCHEMA_BUILD_MISMATCH:503,SCHEMA_STORAGE_UPLOAD_FAILED:500,SCHEMA_STORAGE_DOWNLOAD_FAILED:500,SCHEMA_STORAGE_DELETE_FAILED:500,SCHEMA_STORAGE_URL_FAILED:500,DOCUMENT_STORAGE_FAILED:500,SCHEMA_REPOSITORY_CREATE_FAILED:500,SCHEMA_REPOSITORY_UPDATE_FAILED:500,SCHEMA_REPOSITORY_DELETE_FAILED:500,SCHEMA_REPOSITORY_QUERY_FAILED:500,AI_REPOSITORY_ERROR:500,SEARCH_ADAPTER_REQUIRED:500,DOCUMENT_FOLDER_SERVICE_UNAVAILABLE:500,DOCUMENT_OCR_FAILED:500,AI_UNKNOWN:500,AI_GENERATION_FAILED:500,AI_USAGE_LIMIT_EXCEEDED:500,AI_INVALID_USAGE:500,SCHEMA_MEMORY_NOT_FOUND:500,SCHEMA_RECORD_REFERENCED:500,DOCUMENT_RECORD_NOT_FOUND:500,DOCUMENT_RECORD_OBJECT_MISMATCH:500,DOCUMENT_FOLDER_PATH_NOT_FOUND:500,SCHEMA_CONNECTOR_INVALID_STATE:500,SCHEMA_CONNECTOR_GRANT_ORPHANED:500,AGENT_UNKNOWN:500,AGENT_DEPTH_EXCEEDED:500,AGENT_COST_LIMIT_EXCEEDED:500,AGENT_TREE_COST_LIMIT_EXCEEDED:500,AGENT_RUN_CONFIG:500,AGENT_STREAMING:500,AGENT_MISSING_ACTOR:500,AGENT_COMPACTION_IMPOSSIBLE:500,AGENT_COMPACTION_TIMEOUT:500,AGENT_EXECUTION_CANCELLED:500,AGENT_EXECUTION_TIMEOUT:500,AGENT_TURN_FINALIZER_STALLED:500,AGENT_TURN_RESUME_EXHAUSTED:500,JOB_COALESCED_FAILURE_HANDLED:500,EMAIL_BATCH_ITEM_FAILED:500,EMAIL_SCOPE_UNSUPPORTED:500,AI_IMAGE_USAGE_PENDING:500,AI_IMAGE_GENERATION_INDETERMINATE:500,AI_IMAGE_RESERVATION_CLEANUP_INDETERMINATE:500,AI_IMAGE_PUBLICATION_FAILED:500,INVALID_TOOL_INPUT:500,TOOL_FAILED:500,REFERENCE_NOT_FOUND:500,REFERENCE_INVALID:500,CAPABILITY_UNAVAILABLE:500,EDIT_MATCH_NOT_FOUND:500,EDIT_MATCH_AMBIGUOUS:500,EDIT_NO_CHANGE:500,EDIT_TARGET_UNAVAILABLE:500,EDIT_TARGET_UNSUPPORTED:500},n={LAST_OWNER:`last_owner`};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`}},r=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 r{constructor(t,n){super(t,n),this.code=e.AMBIGUOUS_CHANGE,this.name=`AmbiguousSchemaChangeError`}},AggregateValidationError=class extends r{constructor(e,t,n=[]){super(t,n),this.name=`AggregateValidationError`,this.code=e}},PageReferencedError=class extends r{constructor(t,n){super(t,n.map(e=>({path:[`views`,e.object,e.view,`contents`,e.content],message:`Tab "${e.content}" of ${e.object}.${e.view} references this page`}))),this.code=e.PAGE_REFERENCED,this.name=`PageReferencedError`,this.references=n}},ToolGroupGrantError=class extends r{constructor(e,t,n){super(n,[{path:[`toolGroups`],message:n,code:e}]),this.name=`ToolGroupGrantError`,this.code=e,this.grant=t}},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 i={builder:`cannot be built by a consumer`,bundle:`cannot be claimed by a bundle`};var ReservedObjectNameError=class extends SchemaError{constructor(t,n){super(`"${t}" is a framework-native object name and ${i[n]}: the framework ships it, pick another name.`,e.RESERVED_OBJECT_NAME,{objectName:t,context:n}),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 r}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}},SearchPathNotIndexedError=class extends SchemaError{constructor(t,n,r){super(`Search index cannot ${n} on a requested path of ${t} yet`,e.SEARCH_PATH_NOT_INDEXED,{scope:t,role:n,cause:r}),this.name=`SearchPathNotIndexedError`,this.scope=t,this.role=n,this.cause=r}},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){let i=typeof n==`object`?n:void 0;super(i?`Cannot retype attribute "${t}": ${i.reason}`:`Cannot delete attribute "${t}": used in ${n}${r===void 0?``:` ${r}`}`,e.ATTRIBUTE_IN_USE,i?{attributeName:t,usage:`retype`,...i}:{attributeName:t,usage:n,...r===void 0?{}:{location:r}}),this.name=`AttributeInUseError`,this.attributeName=t,this.usage=typeof n==`object`?`retype`:n,this.location=r,this.retype=i}},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}},LogoProviderUnavailableError=class extends SchemaError{constructor(t,n={}){super(`The logo provider is unavailable: ${t}`,e.LOGO_PROVIDER_UNAVAILABLE),this.name=`LogoProviderUnavailableError`,this.retryAfterMs=n.retryAfterMs}},LogoSearchRateLimitedError=class extends SchemaError{constructor(){super(`Too many logo searches, try again in a minute`,e.LOGO_SEARCH_RATE_LIMITED),this.name=`LogoSearchRateLimitedError`}},RealtimeRateLimitedError=class extends SchemaError{constructor(){super(`Supabase Realtime delivery was rate limited`,e.REALTIME_RATE_LIMITED),this.name=`RealtimeRateLimitedError`}},ExportTooLargeError=class extends SchemaError{constructor(t,n,{atLeast:r=!1}={}){super(`Export of ${r?`at least `:``}${t} records exceeds the ${n} limit`,e.EXPORT_TOO_LARGE,{total:t,max:n}),this.name=`ExportTooLargeError`}},QueryTimeoutError=class extends SchemaError{constructor(){super(`The query took too long`,e.QUERY_TIMEOUT),this.name=`QueryTimeoutError`}},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}exports.AccessDeniedError=AccessDeniedError,exports.AggregateValidationError=AggregateValidationError,exports.AmbiguousSchemaChangeError=AmbiguousSchemaChangeError,exports.AttributeInUseError=AttributeInUseError,exports.AttributeNotFoundError=AttributeNotFoundError,exports.ConcurrentModificationError=ConcurrentModificationError,exports.DuplicateError=DuplicateError,exports.ExportTooLargeError=ExportTooLargeError,exports.ForbiddenError=ForbiddenError,exports.InvalidPermissionGrantError=InvalidPermissionGrantError,exports.LogoProviderUnavailableError=LogoProviderUnavailableError,exports.LogoSearchRateLimitedError=LogoSearchRateLimitedError,exports.MemoryNotFoundError=MemoryNotFoundError,exports.NotFoundError=NotFoundError,exports.NotImplementedError=NotImplementedError,exports.ObjectNotFoundError=ObjectNotFoundError,exports.ObjectReferencedError=ObjectReferencedError,exports.OrphanSystemAttributeError=OrphanSystemAttributeError,exports.PageReferencedError=PageReferencedError,exports.ProtectedResourceError=ProtectedResourceError,exports.ProtectedRoleError=ProtectedRoleError,exports.QueryTimeoutError=QueryTimeoutError,exports.RealtimeDeliveryError=RealtimeDeliveryError,exports.RealtimeRateLimitedError=RealtimeRateLimitedError,exports.RealtimeSubscriptionError=RealtimeSubscriptionError,exports.RecordNotFoundError=RecordNotFoundError,exports.RecordReferencedError=RecordReferencedError,exports.RepositoryError=RepositoryError,exports.ReservedObjectNameError=ReservedObjectNameError,exports.RoleNotFoundError=RoleNotFoundError,exports.SCHEMA_ERROR_HTTP_STATUS=t,exports.SchemaError=SchemaError,exports.SchemaErrorCode=e,exports.SearchBackendError=SearchBackendError,exports.SearchPathNotIndexedError=SearchPathNotIndexedError,exports.StorageError=StorageError,exports.SyncCascadeError=SyncCascadeError,exports.SyncConflictError=SyncConflictError,exports.SyncError=SyncError,exports.SystemEntityImmutableError=SystemEntityImmutableError,exports.ToolGroupGrantError=ToolGroupGrantError,exports.ValidationError=r,exports.WorkspaceInvariantReason=n,exports.isAttributeInUseError=isAttributeInUseError,exports.isNotFoundError=isNotFoundError,exports.isObjectReferencedError=isObjectReferencedError,exports.isProtectedResourceError=isProtectedResourceError,exports.isRecordReferencedError=isRecordReferencedError,exports.isSchemaError=isSchemaError,exports.isValidationError=isValidationError;
2
+ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e={CONNECTOR_INVALID_SIGNATURE:`SCHEMA_CONNECTOR_INVALID_SIGNATURE`,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`,RECORD_ID_UNAVAILABLE:`SCHEMA_RECORD_ID_UNAVAILABLE`,BUNDLE_NOT_FOUND:`SCHEMA_BUNDLE_NOT_FOUND`,NEWS_ENTRY_NOT_FOUND:`NEWS_ENTRY_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`,ACTOR_REQUIRED:`ACTOR_CONTEXT_REQUIRED`,ACTOR_CONTEXT_LOST:`ACTOR_CONTEXT_LOST`,TENANT_CONFIRMATION_MISMATCH:`SCHEMA_TENANT_CONFIRMATION_MISMATCH`,SESSION_REQUIRED:`SCHEMA_SESSION_REQUIRED`,API_KEY_OWNER_ROLE_REFUSED:`SCHEMA_API_KEY_OWNER_ROLE_REFUSED`,CONNECTOR_API_FAILED:`SCHEMA_CONNECTOR_API_FAILED`,CONNECTOR_AUTH_FAILED:`SCHEMA_CONNECTOR_AUTH_FAILED`,CONNECTOR_INVALID_STATE:`SCHEMA_CONNECTOR_INVALID_STATE`,CONNECTOR_ACCOUNT_MISMATCH:`SCHEMA_CONNECTOR_ACCOUNT_MISMATCH`,CONNECTOR_GRANT_ORPHANED:`SCHEMA_CONNECTOR_GRANT_ORPHANED`,OAUTH_COMPLETION_REFUSED:`SCHEMA_OAUTH_COMPLETION_REFUSED`,OAUTH_COMPLETION_OTHER_WORKSPACE:`SCHEMA_OAUTH_COMPLETION_OTHER_WORKSPACE`,OAUTH_TICKET_INVALID:`SCHEMA_OAUTH_TICKET_INVALID`,OAUTH_CLIENT_OUTDATED:`SCHEMA_OAUTH_CLIENT_OUTDATED`,SYNC_FAILED:`SCHEMA_SYNC_FAILED`,SYNC_CONFLICT:`SCHEMA_SYNC_CONFLICT`,SYNC_CASCADE:`SCHEMA_SYNC_CASCADE`,ORPHAN_SYSTEM_ATTRIBUTE:`SCHEMA_ORPHAN_SYSTEM_ATTRIBUTE`,MIGRATIONS_PENDING:`SCHEMA_MIGRATIONS_PENDING`,BUILD_MISMATCH:`SCHEMA_BUILD_MISMATCH`,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`,RECORD_PARENT_INVALID:`RECORD_PARENT_INVALID`,RECORD_HIERARCHY_WRITE:`RECORD_HIERARCHY_WRITE`,RECORD_MOVE_IMPACT_CHANGED:`RECORD_MOVE_IMPACT_CHANGED`,RECORD_HIERARCHY_OFF_REFUSED:`RECORD_HIERARCHY_OFF_REFUSED`,AGENT_GRANT_ON_WORKSPACE:`AGENT_GRANT_ON_WORKSPACE`,AGENT_GRANT_INVALID_ACTOR:`AGENT_GRANT_INVALID_ACTOR`,PAGE_GRANT_ON_WORKSPACE:`PAGE_GRANT_ON_WORKSPACE`,PAGE_GRANT_INVALID_ACTOR:`PAGE_GRANT_INVALID_ACTOR`,DEVICE_GRANT_ON_PERSONAL:`DEVICE_GRANT_ON_PERSONAL`,DEVICE_GRANT_INVALID_ACTOR:`DEVICE_GRANT_INVALID_ACTOR`,AGENT_SCHEDULE_AUDIENCE_ON_WORKSPACE:`AGENT_SCHEDULE_AUDIENCE_ON_WORKSPACE`,AGENT_SCHEDULE_AUDIENCE_HARNESS:`AGENT_SCHEDULE_AUDIENCE_HARNESS`,AGENT_SCHEDULE_AUDIENCE_TOOL:`AGENT_SCHEDULE_AUDIENCE_TOOL`,RECORD_COUNT_GROUP_BY_MULTI_VALUED:`RECORD_COUNT_GROUP_BY_MULTI_VALUED`,RECORD_COUNT_GROUP_BY_UNSUPPORTED:`RECORD_COUNT_GROUP_BY_UNSUPPORTED`,AGGREGATE_SEARCH_UNSUPPORTED:`AGGREGATE_SEARCH_UNSUPPORTED`,PAGE_REFERENCED:`PAGE_REFERENCED`,DUPLICATE:`SCHEMA_DUPLICATE`,DUPLICATE_OBJECT:`SCHEMA_DUPLICATE_OBJECT`,DUPLICATE_ATTRIBUTE:`SCHEMA_DUPLICATE_ATTRIBUTE`,MEMORY_PAGE_EXISTS:`SCHEMA_MEMORY_PAGE_EXISTS`,MEMORY_LINE_CAP:`SCHEMA_MEMORY_LINE_CAP`,MEMORY_UNTRUSTED:`SCHEMA_MEMORY_UNTRUSTED`,MEMORY_SCOPE:`SCHEMA_MEMORY_SCOPE`,MEMORY_RATE_LIMITED:`SCHEMA_MEMORY_RATE_LIMITED`,MEMORY_WRITER:`SCHEMA_MEMORY_WRITER`,CONFLICT:`SCHEMA_CONFLICT`,OPERATION_ABANDONED:`SCHEMA_OPERATION_ABANDONED`,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`,QUERY_TIMEOUT:`QUERY_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`,SEARCH_PATH_NOT_INDEXED:`SEARCH_PATH_NOT_INDEXED`,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`,LOGO_PROVIDER_UNAVAILABLE:`LOGO_PROVIDER_UNAVAILABLE`,LOGO_SEARCH_RATE_LIMITED:`LOGO_SEARCH_RATE_LIMITED`,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`,CONCURRENCY_LIMIT:`CONCURRENCY_LIMIT`,EXPORT_TOO_LARGE:`EXPORT_TOO_LARGE`,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_TRIGGER_THREAD_BUSY:`AGENT_TRIGGER_THREAD_BUSY`,AGENT_TOOL_GROUP_UNKNOWN:`AGENT_TOOL_GROUP_UNKNOWN`,AGENT_TOOL_GROUP_NOT_CONTAINED:`AGENT_TOOL_GROUP_NOT_CONTAINED`,AGENT_TOOL_GROUP_SCOPE_MISSING:`AGENT_TOOL_GROUP_SCOPE_MISSING`,AGENT_TOOL_GROUP_HARNESS:`AGENT_TOOL_GROUP_HARNESS`,AGENT_TOOL_GROUP_NEEDS_PERSON:`AGENT_TOOL_GROUP_NEEDS_PERSON`,AGENT_TOOL_GROUP_REQUIRES:`AGENT_TOOL_GROUP_REQUIRES`,AGENT_COMPACTION_IMPOSSIBLE:`AGENT_COMPACTION_IMPOSSIBLE`,AGENT_COMPACTION_TIMEOUT:`AGENT_COMPACTION_TIMEOUT`,AGENT_SESSION_OWNER_FENCED:`AGENT_SESSION_OWNER_FENCED`,AGENT_TURN_RESUME_EXHAUSTED:`AGENT_TURN_RESUME_EXHAUSTED`,AGENT_SESSION_STREAM_CURSOR_EXPIRED:`AGENT_SESSION_STREAM_CURSOR_EXPIRED`,AGENT_MESSAGE_NOT_FOUND:`AGENT_MESSAGE_NOT_FOUND`,AGENT_MESSAGE_NOT_EDITABLE:`AGENT_MESSAGE_NOT_EDITABLE`,INVALID_TOOL_INPUT:`INVALID_TOOL_INPUT`,TOOL_FAILED:`TOOL_FAILED`,REFERENCE_NOT_FOUND:`REFERENCE_NOT_FOUND`,REFERENCE_INVALID:`REFERENCE_INVALID`,CAPABILITY_UNAVAILABLE:`CAPABILITY_UNAVAILABLE`,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_TURN_FINALIZER_STALLED:`AGENT_TURN_FINALIZER_STALLED`,ENVIRONMENT_NOT_READY:`ENVIRONMENT_NOT_READY`,ENVIRONMENT_IN_USE:`ENVIRONMENT_IN_USE`,ENVIRONMENT_MODEL_ACCESS_MISSING:`ENVIRONMENT_MODEL_ACCESS_MISSING`,ENVIRONMENT_BUILD_FAILED:`ENVIRONMENT_BUILD_FAILED`,ENVIRONMENT_RUN_FAILED:`ENVIRONMENT_RUN_FAILED`,MACHINE_LEASE_FENCED:`MACHINE_LEASE_FENCED`,MACHINE_ENV_FILE_FAILED:`MACHINE_ENV_FILE_FAILED`,LINK_TOKEN_INVALID:`LINK_TOKEN_INVALID`,SANDBOX_PROVIDER_FAILED:`SANDBOX_PROVIDER_FAILED`,CLOUD_BROWSER_LAUNCH_FAILED:`CLOUD_BROWSER_LAUNCH_FAILED`,CLOUD_BROWSER_PROVIDER_FAILED:`CLOUD_BROWSER_PROVIDER_FAILED`,CLOUD_BROWSER_CLOSED:`CLOUD_BROWSER_CLOSED`,BROWSER_PROFILE_LOCKED:`BROWSER_PROFILE_LOCKED`,AGENT_BROWSER_COMMAND_REFUSED:`AGENT_BROWSER_COMMAND_REFUSED`,ENV_VAR_NOT_FOUND:`ENV_VAR_NOT_FOUND`,DEVICE_NOT_FOUND:`DEVICE_NOT_FOUND`,DEVICE_OFFLINE:`DEVICE_OFFLINE`,DEVICE_ENROLLMENT_REFUSED:`DEVICE_ENROLLMENT_REFUSED`,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_SEND_NOT_GRANTED:`EMAIL_SEND_NOT_GRANTED`,EMAIL_BATCH_ITEM_FAILED:`EMAIL_BATCH_ITEM_FAILED`,EMAIL_SCOPE_UNSUPPORTED:`EMAIL_SCOPE_UNSUPPORTED`,EMAIL_CATEGORY_LIMIT:`EMAIL_CATEGORY_LIMIT`,CALENDAR_PROVIDER_API_FAILED:`CALENDAR_PROVIDER_API_FAILED`,EMBEDDING_MODEL_UNAVAILABLE:`EMBEDDING_MODEL_UNAVAILABLE`,EMBEDDING_DIMENSION_MISMATCH:`EMBEDDING_DIMENSION_MISMATCH`,SKILL_SOURCE_UNAVAILABLE:`SKILL_SOURCE_UNAVAILABLE`},t={SCHEMA_OBJECT_NOT_FOUND:404,SCHEMA_RECORD_NOT_FOUND:404,SCHEMA_BUNDLE_NOT_FOUND:404,NEWS_ENTRY_NOT_FOUND:404,SCHEMA_ATTRIBUTE_NOT_FOUND:404,SCHEMA_ROLE_NOT_FOUND:404,DEVICE_NOT_FOUND:404,ENV_VAR_NOT_FOUND:404,SCHEMA_FORBIDDEN:403,SCHEMA_WORKSPACE_INVARIANT:403,SCHEMA_STATE_GATE:403,JOB_RUN_METADATA_MISMATCH:403,SCHEMA_CONNECTOR_AUTH_FAILED:409,SCHEMA_CONNECTOR_ACCOUNT_MISMATCH:409,SCHEMA_CONNECTOR_INVALID_SIGNATURE:401,SCHEMA_CONNECTOR_API_FAILED:502,SCHEMA_ACTOR_CONTEXT_REQUIRED:403,SCHEMA_OAUTH_COMPLETION_REFUSED:403,SCHEMA_OAUTH_COMPLETION_OTHER_WORKSPACE:403,SCHEMA_OAUTH_TICKET_INVALID:400,SCHEMA_OAUTH_CLIENT_OUTDATED:400,SCHEMA_ACCESS_DENIED:403,SCHEMA_TENANT_CONFIRMATION_MISMATCH:403,ACTOR_CONTEXT_REQUIRED:401,ACTOR_CONTEXT_LOST:500,SCHEMA_API_KEY_OWNER_ROLE_REFUSED:403,SCHEMA_SESSION_REQUIRED:403,CREDITS_EXHAUSTED:402,QUOTA_EXCEEDED:409,CONCURRENCY_LIMIT:429,EXPORT_TOO_LARGE:413,AGENT_SESSION_OWNER_FENCED:409,AGENT_SESSION_STREAM_CURSOR_EXPIRED:410,SCHEMA_VALIDATION_FAILED:400,SCHEMA_INVALID_ATTRIBUTE_NAME:400,SCHEMA_INVALID_OBJECT_NAME:400,SCHEMA_RESERVED_OBJECT_NAME:400,SCHEMA_PERMISSION_INVALID_GRANT:400,AI_INVALID_MODEL:400,AI_INVALID_MODEL_INPUT:400,DEVICE_CHANNEL_PROTOCOL:400,SCHEMA_RECORD_ID_UNAVAILABLE:409,SCHEMA_OPERATION_ABANDONED:409,SCHEMA_DUPLICATE:409,SCHEMA_DUPLICATE_OBJECT:409,SCHEMA_DUPLICATE_ATTRIBUTE:409,SCHEMA_MEMORY_PAGE_EXISTS:409,SCHEMA_CONFLICT:409,DRAFT_REVISION_CONFLICT:409,DEVICE_OFFLINE:409,DEVICE_ENROLLMENT_REFUSED:401,SCHEMA_OBJECT_REFERENCED:409,SCHEMA_ATTRIBUTE_IN_USE:409,CONFIGURATION_REQUIRED:503,SEARCH_BACKEND_FAILED:503,SEARCH_BACKEND_REJECTED:503,SEARCH_PATH_NOT_INDEXED:503,EMBEDDING_MODEL_UNAVAILABLE:503,SKILL_SOURCE_UNAVAILABLE:503,AGENT_MESSAGE_NOT_FOUND:404,AGENT_MESSAGE_NOT_EDITABLE:409,AGENT_SESSION_NOT_FOUND:404,AGENT_DEFINITION_NOT_FOUND:404,AGENT_INVALID_STATE:409,AGENT_TRIGGER_THREAD_BUSY:409,AGENT_TOOL_GROUP_REQUIRES:400,AGENT_TOOL_GROUP_UNKNOWN:400,AGENT_TOOL_GROUP_NOT_CONTAINED:400,AGENT_TOOL_GROUP_SCOPE_MISSING:400,AGENT_TOOL_GROUP_HARNESS:400,AGENT_TOOL_GROUP_NEEDS_PERSON:400,ENVIRONMENT_NOT_READY:400,ENVIRONMENT_IN_USE:409,ENVIRONMENT_MODEL_ACCESS_MISSING:400,ENVIRONMENT_BUILD_FAILED:400,ENVIRONMENT_RUN_FAILED:400,MACHINE_LEASE_FENCED:409,MACHINE_ENV_FILE_FAILED:502,LINK_TOKEN_INVALID:400,SANDBOX_PROVIDER_FAILED:502,CLOUD_BROWSER_LAUNCH_FAILED:502,CLOUD_BROWSER_PROVIDER_FAILED:502,CLOUD_BROWSER_CLOSED:404,BROWSER_PROFILE_LOCKED:409,AGENT_BROWSER_COMMAND_REFUSED:400,REALTIME_RATE_LIMITED:429,LOGO_SEARCH_RATE_LIMITED:429,LOGO_PROVIDER_UNAVAILABLE:503,SCHEMA_MEMORY_RATE_LIMITED:429,SCHEMA_MEMORY_UNTRUSTED:403,SCHEMA_MEMORY_SCOPE:403,SCHEMA_MEMORY_WRITER:403,SCHEMA_MEMORY_LINE_CAP:409,REALTIME_DELIVERY_FAILED:502,REALTIME_SUBSCRIPTION_FAILED:503,SCHEMA_PROTECTED_OBJECT:403,SCHEMA_PROTECTED_ATTRIBUTE:403,SCHEMA_PROTECTED_VIEW:403,SCHEMA_PROTECTED_ROLE:400,SCHEMA_SYSTEM_ENTITY_IMMUTABLE:403,SCHEMA_SYNC_CONFLICT:409,SCHEMA_SYNC_CASCADE:409,SCHEMA_AMBIGUOUS_CHANGE:400,RECORD_GRANT_ON_WORKSPACE:400,RECORD_GRANT_INVALID_ACTOR:400,RECORD_GRANT_UNSHAREABLE_OBJECT:400,RECORD_PARENT_INVALID:400,RECORD_HIERARCHY_WRITE:400,RECORD_MOVE_IMPACT_CHANGED:409,RECORD_HIERARCHY_OFF_REFUSED:400,AGENT_GRANT_ON_WORKSPACE:400,AGENT_GRANT_INVALID_ACTOR:400,PAGE_GRANT_ON_WORKSPACE:400,PAGE_GRANT_INVALID_ACTOR:400,DEVICE_GRANT_ON_PERSONAL:400,DEVICE_GRANT_INVALID_ACTOR:400,AGENT_SCHEDULE_AUDIENCE_ON_WORKSPACE:400,AGENT_SCHEDULE_AUDIENCE_HARNESS:400,AGENT_SCHEDULE_AUDIENCE_TOOL:400,RECORD_COUNT_GROUP_BY_MULTI_VALUED:400,RECORD_COUNT_GROUP_BY_UNSUPPORTED:400,AGGREGATE_SEARCH_UNSUPPORTED:400,PAGE_REFERENCED:400,SCHEMA_TIMEOUT:408,QUERY_TIMEOUT:504,CALENDAR_PROVIDER_API_FAILED:502,EMAIL_PROVIDER_API_FAILED:502,EMAIL_CATEGORY_LIMIT:400,EMAIL_SEND_FAILED:502,EMAIL_SENT_NOT_STORED:502,EMAIL_SEND_NOT_GRANTED:403,EMBEDDING_DIMENSION_MISMATCH:502,AI_DECISION_FAILED:502,DOCUMENT_MIME_NOT_ACCEPTED:400,DOCUMENT_MULTIPLE_NOT_ALLOWED:400,DOCUMENT_NOT_FOUND_FOR_OPERATION:404,DOCUMENT_SIZE_EXCEEDED:400,DOCUMENT_FILE_TOO_LARGE:400,DOCUMENT_FILE_NOT_FOUND:404,DOCUMENT_FILE_ALREADY_PACKED:409,FILE_PUBLIC_NOT_ATTACHABLE:400,DOCUMENT_BLOB_EMPTY:422,SCHEMA_UNKNOWN_ERROR:500,SCHEMA_NOT_IMPLEMENTED:500,INVARIANT_VIOLATION:500,TENANT_CONTEXT_MISSING:500,SCHEMA_SYNC_FAILED:500,SCHEMA_ORPHAN_SYSTEM_ATTRIBUTE:500,SCHEMA_MIGRATIONS_PENDING:500,SCHEMA_BUILD_MISMATCH:503,SCHEMA_STORAGE_UPLOAD_FAILED:500,SCHEMA_STORAGE_DOWNLOAD_FAILED:500,SCHEMA_STORAGE_DELETE_FAILED:500,SCHEMA_STORAGE_URL_FAILED:500,DOCUMENT_STORAGE_FAILED:500,SCHEMA_REPOSITORY_CREATE_FAILED:500,SCHEMA_REPOSITORY_UPDATE_FAILED:500,SCHEMA_REPOSITORY_DELETE_FAILED:500,SCHEMA_REPOSITORY_QUERY_FAILED:500,AI_REPOSITORY_ERROR:500,SEARCH_ADAPTER_REQUIRED:500,DOCUMENT_FOLDER_SERVICE_UNAVAILABLE:500,DOCUMENT_OCR_FAILED:500,AI_UNKNOWN:500,AI_GENERATION_FAILED:500,AI_USAGE_LIMIT_EXCEEDED:500,AI_INVALID_USAGE:500,SCHEMA_MEMORY_NOT_FOUND:500,SCHEMA_RECORD_REFERENCED:500,DOCUMENT_RECORD_NOT_FOUND:500,DOCUMENT_RECORD_OBJECT_MISMATCH:500,DOCUMENT_FOLDER_PATH_NOT_FOUND:500,SCHEMA_CONNECTOR_INVALID_STATE:500,SCHEMA_CONNECTOR_GRANT_ORPHANED:500,AGENT_UNKNOWN:500,AGENT_DEPTH_EXCEEDED:500,AGENT_COST_LIMIT_EXCEEDED:500,AGENT_TREE_COST_LIMIT_EXCEEDED:500,AGENT_RUN_CONFIG:500,AGENT_STREAMING:500,AGENT_MISSING_ACTOR:500,AGENT_COMPACTION_IMPOSSIBLE:500,AGENT_COMPACTION_TIMEOUT:500,AGENT_EXECUTION_CANCELLED:500,AGENT_EXECUTION_TIMEOUT:500,AGENT_TURN_FINALIZER_STALLED:500,AGENT_TURN_RESUME_EXHAUSTED:500,JOB_COALESCED_FAILURE_HANDLED:500,EMAIL_BATCH_ITEM_FAILED:500,EMAIL_SCOPE_UNSUPPORTED:500,AI_IMAGE_USAGE_PENDING:500,AI_IMAGE_GENERATION_INDETERMINATE:500,AI_IMAGE_RESERVATION_CLEANUP_INDETERMINATE:500,AI_IMAGE_PUBLICATION_FAILED:500,INVALID_TOOL_INPUT:500,TOOL_FAILED:500,REFERENCE_NOT_FOUND:500,REFERENCE_INVALID:500,CAPABILITY_UNAVAILABLE:500,EDIT_MATCH_NOT_FOUND:500,EDIT_MATCH_AMBIGUOUS:500,EDIT_NO_CHANGE:500,EDIT_TARGET_UNAVAILABLE:500,EDIT_TARGET_UNSUPPORTED:500},n={LAST_OWNER:`last_owner`};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`}},r=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 r{constructor(t,n){super(t,n),this.code=e.AMBIGUOUS_CHANGE,this.name=`AmbiguousSchemaChangeError`}},AggregateValidationError=class extends r{constructor(e,t,n=[]){super(t,n),this.name=`AggregateValidationError`,this.code=e}},PageReferencedError=class extends r{constructor(t,n){super(t,n.map(e=>({path:[`views`,e.object,e.view,`contents`,e.content],message:`Tab "${e.content}" of ${e.object}.${e.view} references this page`}))),this.code=e.PAGE_REFERENCED,this.name=`PageReferencedError`,this.references=n}},ToolGroupGrantError=class extends r{constructor(e,t,n){super(n,[{path:[`toolGroups`],message:n,code:e}]),this.name=`ToolGroupGrantError`,this.code=e,this.grant=t}},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 i={builder:`cannot be built by a consumer`,bundle:`cannot be claimed by a bundle`};var ReservedObjectNameError=class extends SchemaError{constructor(t,n){super(`"${t}" is a framework-native object name and ${i[n]}: the framework ships it, pick another name.`,e.RESERVED_OBJECT_NAME,{objectName:t,context:n}),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 r}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}},SearchPathNotIndexedError=class extends SchemaError{constructor(t,n,r){super(`Search index cannot ${n} on a requested path of ${t} yet`,e.SEARCH_PATH_NOT_INDEXED,{scope:t,role:n,cause:r}),this.name=`SearchPathNotIndexedError`,this.scope=t,this.role=n,this.cause=r}},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){let i=typeof n==`object`?n:void 0;super(i?`Cannot retype attribute "${t}": ${i.reason}`:`Cannot delete attribute "${t}": used in ${n}${r===void 0?``:` ${r}`}`,e.ATTRIBUTE_IN_USE,i?{attributeName:t,usage:`retype`,...i}:{attributeName:t,usage:n,...r===void 0?{}:{location:r}}),this.name=`AttributeInUseError`,this.attributeName=t,this.usage=typeof n==`object`?`retype`:n,this.location=r,this.retype=i}},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}},LogoProviderUnavailableError=class extends SchemaError{constructor(t,n={}){super(`The logo provider is unavailable: ${t}`,e.LOGO_PROVIDER_UNAVAILABLE),this.name=`LogoProviderUnavailableError`,this.retryAfterMs=n.retryAfterMs}},LogoSearchRateLimitedError=class extends SchemaError{constructor(){super(`Too many logo searches, try again in a minute`,e.LOGO_SEARCH_RATE_LIMITED),this.name=`LogoSearchRateLimitedError`}},RealtimeRateLimitedError=class extends SchemaError{constructor(){super(`Supabase Realtime delivery was rate limited`,e.REALTIME_RATE_LIMITED),this.name=`RealtimeRateLimitedError`}},ExportTooLargeError=class extends SchemaError{constructor(t,n,{atLeast:r=!1}={}){super(`Export of ${r?`at least `:``}${t} records exceeds the ${n} limit`,e.EXPORT_TOO_LARGE,{total:t,max:n}),this.name=`ExportTooLargeError`}},QueryTimeoutError=class extends SchemaError{constructor(){super(`The query took too long`,e.QUERY_TIMEOUT),this.name=`QueryTimeoutError`}},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}exports.AccessDeniedError=AccessDeniedError,exports.AggregateValidationError=AggregateValidationError,exports.AmbiguousSchemaChangeError=AmbiguousSchemaChangeError,exports.AttributeInUseError=AttributeInUseError,exports.AttributeNotFoundError=AttributeNotFoundError,exports.ConcurrentModificationError=ConcurrentModificationError,exports.DuplicateError=DuplicateError,exports.ExportTooLargeError=ExportTooLargeError,exports.ForbiddenError=ForbiddenError,exports.InvalidPermissionGrantError=InvalidPermissionGrantError,exports.LogoProviderUnavailableError=LogoProviderUnavailableError,exports.LogoSearchRateLimitedError=LogoSearchRateLimitedError,exports.MemoryNotFoundError=MemoryNotFoundError,exports.NotFoundError=NotFoundError,exports.NotImplementedError=NotImplementedError,exports.ObjectNotFoundError=ObjectNotFoundError,exports.ObjectReferencedError=ObjectReferencedError,exports.OrphanSystemAttributeError=OrphanSystemAttributeError,exports.PageReferencedError=PageReferencedError,exports.ProtectedResourceError=ProtectedResourceError,exports.ProtectedRoleError=ProtectedRoleError,exports.QueryTimeoutError=QueryTimeoutError,exports.RealtimeDeliveryError=RealtimeDeliveryError,exports.RealtimeRateLimitedError=RealtimeRateLimitedError,exports.RealtimeSubscriptionError=RealtimeSubscriptionError,exports.RecordNotFoundError=RecordNotFoundError,exports.RecordReferencedError=RecordReferencedError,exports.RepositoryError=RepositoryError,exports.ReservedObjectNameError=ReservedObjectNameError,exports.RoleNotFoundError=RoleNotFoundError,exports.SCHEMA_ERROR_HTTP_STATUS=t,exports.SchemaError=SchemaError,exports.SchemaErrorCode=e,exports.SearchBackendError=SearchBackendError,exports.SearchPathNotIndexedError=SearchPathNotIndexedError,exports.StorageError=StorageError,exports.SyncCascadeError=SyncCascadeError,exports.SyncConflictError=SyncConflictError,exports.SyncError=SyncError,exports.SystemEntityImmutableError=SystemEntityImmutableError,exports.ToolGroupGrantError=ToolGroupGrantError,exports.ValidationError=r,exports.WorkspaceInvariantReason=n,exports.isAttributeInUseError=isAttributeInUseError,exports.isNotFoundError=isNotFoundError,exports.isObjectReferencedError=isObjectReferencedError,exports.isProtectedResourceError=isProtectedResourceError,exports.isRecordReferencedError=isRecordReferencedError,exports.isSchemaError=isSchemaError,exports.isValidationError=isValidationError;