vibe64 0.1.47 → 0.1.49

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 (150) hide show
  1. package/bin/run.js +1734 -1687
  2. package/bin/server.js +75 -75
  3. package/bin/upgrade-state.js +4539 -4471
  4. package/dist/assets/GithubBrowserTabs-BwpiRS2u.js +1 -0
  5. package/dist/assets/{LocalDatabaseServer-6VzPWZxG.js → LocalDatabaseServer-u_Ky7bNS.js} +1 -1
  6. package/dist/assets/{Vibe64AuthSettingsButton-TLwqAxDo.js → Vibe64AuthSettingsButton-BCwswT1G.js} +1 -1
  7. package/dist/assets/{Vibe64DashboardShell-B4dQ-oHD.js → Vibe64DashboardShell-CWlgrR2B.js} +1 -1
  8. package/dist/assets/{Vibe64DatabaseWorkspace-Bh5WIPOj.js → Vibe64DatabaseWorkspace-Dhs8_H0P.js} +1 -1
  9. package/dist/assets/Vibe64OutputControls-Dn548CZa.js +8 -0
  10. package/dist/assets/{Vibe64RepositoryWorkspace-idDg94lc.js → Vibe64RepositoryWorkspace-C-8S4JUF.js} +1 -1
  11. package/dist/assets/{Vibe64SessionFiles-Z9zxosyl.js → Vibe64SessionFiles-Cx6J7DDN.js} +2 -3
  12. package/dist/assets/{Vibe64UiStoryboardView-CrCDWMdR.js → Vibe64UiStoryboardView-DHyhJiWS.js} +1 -1
  13. package/dist/assets/{Vibe64UnavailableSessions-TqsxvGSf.js → Vibe64UnavailableSessions-Da4RxIhA.js} +1 -1
  14. package/dist/assets/{_sessionId_-7F1VGOou.js → _sessionId_-DCpgDPSI.js} +1 -1
  15. package/dist/assets/_slug_-BbEWp01a.js +25 -0
  16. package/dist/assets/{_slug_-B16mTWjj.css → _slug_-DerKOisL.css} +1 -1
  17. package/dist/assets/{access-Cx9RH95J.js → access-D4di2sCr.js} +1 -1
  18. package/dist/assets/{app-DPx4KKOa.js → app-Adr9Iz8p.js} +1 -1
  19. package/dist/assets/asyncModuleRecovery-DJsn5NrL.js +1 -0
  20. package/dist/assets/{changes-DYsuQLFW.js → changes-3Dd1O8Lu.js} +1 -1
  21. package/dist/assets/client-BAXHGUOC.js +1 -0
  22. package/dist/assets/{client-BYsDPxR3.js → client-CCZIu6yc.js} +1 -1
  23. package/dist/assets/{conversation-3ln-WnbL.css → conversation-CSDHdGDb.css} +1 -1
  24. package/dist/assets/conversation-DG9lp25w.js +8 -0
  25. package/dist/assets/conversation-ErAO1CmH.js +13 -0
  26. package/dist/assets/{dashboard-CWswAbYP.js → dashboard-0tCzDYCX.js} +1 -1
  27. package/dist/assets/english-definitions-DeiQ-jTT.js +1 -0
  28. package/dist/assets/env-DsyQ2MFX.js +1 -0
  29. package/dist/assets/{health-C0f6s-G1.js → health-DyTXU-nb.js} +1 -1
  30. package/dist/assets/{history-BQjETNB9.js → history-BXGAdPMI.js} +1 -1
  31. package/dist/assets/{incoming-COpY201m.js → incoming-yajkdGBY.js} +1 -1
  32. package/dist/assets/{index-MWACm8Pp.css → index-B-dukXUB.css} +1 -1
  33. package/dist/assets/index-CGz4Yow6.js +136 -0
  34. package/dist/assets/{integrations-BBkvNRHu.js → integrations-BMrXET36.js} +10 -2
  35. package/dist/assets/issues-kc1XBZCK.js +1 -0
  36. package/dist/assets/{learning-B8_wHoe1.js → learning-CIE5ghYv.js} +1 -1
  37. package/dist/assets/linkPath-Ch9eft18.js +1 -0
  38. package/dist/assets/{placement-DXvgK433.js → placement-BNmlke_j.js} +1 -1
  39. package/dist/assets/placement-DYM3JJ-F.js +1 -0
  40. package/dist/assets/publish-DTh6amqi.js +3 -0
  41. package/dist/assets/pull-requests-CbfGSSIh.js +1 -0
  42. package/dist/assets/{repository-BNPt7UWc.js → repository-BstMh-bG.js} +1 -1
  43. package/dist/assets/settings-Bf8C6dls.js +1 -0
  44. package/dist/assets/{studioGateApi-BVdclhPL.js → studioGateApi-mkX1eOTX.js} +1 -1
  45. package/dist/assets/{studioUrls-CGKCbM_d.js → studioUrls-B0-GdWh8.js} +1 -1
  46. package/dist/assets/useArchivedVibe64Sessions-DIOpfUxD.js +1 -0
  47. package/dist/assets/useCommand-CVuya6vG.js +1 -0
  48. package/dist/assets/useEndpointResource-7-YDfAxX.js +1 -0
  49. package/dist/assets/usePaths-Y6UuQxmI.js +1 -0
  50. package/dist/assets/{useUiFeedback-B51xtCAK.js → useUiFeedback-Bd3rao6E.js} +1 -1
  51. package/dist/assets/useVibe64ConversationLog-ChJOU2SD.js +1 -0
  52. package/dist/assets/{useVibe64DatabaseTools-BE_yXZFn.js → useVibe64DatabaseTools-DKV-TeNJ.js} +1 -1
  53. package/dist/assets/{useVibe64ProjectScope-D7b8n1gx.js → useVibe64ProjectScope-DXjsKKhl.js} +1 -1
  54. package/dist/assets/useVibe64SessionData-BkIHUrP5.js +1 -0
  55. package/dist/assets/useVibe64SessionSelection-N8wX5oqo.js +1 -0
  56. package/dist/assets/{useVibe64SystemGraph-CDDcsye4.js → useVibe64SystemGraph-Db_eD-X8.js} +1 -1
  57. package/dist/assets/{useVibe64Terminal-Zr3Mig2L.js → useVibe64Terminal-B9EWJ9Ba.js} +2 -2
  58. package/dist/assets/vibe64ProjectScope.local-l5_-E6pq.js +1 -0
  59. package/dist/assets/vibe64RepositoryRealtime-CHT4-6VN.js +1 -0
  60. package/dist/assets/vibe64SessionFocus-CS6Ex53G.js +1 -0
  61. package/dist/assets/vibe64SessionFocus-CSm4YJQD.css +1 -0
  62. package/dist/assets/vibe64SessionRequestConfig-xIx-5jxQ.js +1 -0
  63. package/dist/index.html +26 -22
  64. package/docs/colleague-usage/ai-accounts.md +6 -2
  65. package/docs/colleague-usage/ai-balance-and-allowance.md +15 -2
  66. package/docs/colleague-usage/coding-agent-failures.md +2 -1
  67. package/docs/colleague-usage/coding-agent-goals.md +8 -3
  68. package/docs/colleague-usage/coding-agents.md +16 -0
  69. package/docs/colleague-usage/github-work.md +14 -0
  70. package/docs/colleague-usage/preview-browser-checks.md +5 -3
  71. package/docs/colleague-usage/project-setup.md +6 -3
  72. package/docs/colleague-usage/running-vibe64-on-your-computer.md +3 -1
  73. package/docs/colleague-usage/sessions.md +35 -7
  74. package/docs/colleague-usage/starter-apps.md +3 -0
  75. package/docs/colleague-usage/temporary-chat-context.md +2 -1
  76. package/docs/colleague-usage/temporary-chats.md +17 -5
  77. package/node_modules/@jskit-ai/assistant-core/CHANGELOG.md +539 -0
  78. package/node_modules/@jskit-ai/assistant-core/locales/en.json +383 -0
  79. package/node_modules/@jskit-ai/assistant-core/package.json +3 -2
  80. package/node_modules/@jskit-ai/assistant-runtime/CHANGELOG.md +138 -0
  81. package/node_modules/@jskit-ai/assistant-runtime/README.md +2 -1
  82. package/node_modules/@jskit-ai/assistant-runtime/locales/en.json +137 -0
  83. package/node_modules/@jskit-ai/assistant-runtime/package.json +3 -2
  84. package/node_modules/@jskit-ai/assistant-runtime/src/server/repositories/assistantConfigRepository.js +223 -203
  85. package/node_modules/@jskit-ai/assistant-runtime/src/server/repositories/conversationsRepository.js +286 -266
  86. package/node_modules/@jskit-ai/assistant-runtime/src/server/repositories/messagesRepository.js +270 -250
  87. package/node_modules/@jskit-ai/assistant-voice/locales/en.json +182 -0
  88. package/node_modules/@jskit-ai/assistant-voice/package.json +3 -2
  89. package/node_modules/@jskit-ai/connector-google-calendar/CHANGELOG.md +83 -0
  90. package/node_modules/@jskit-ai/connector-google-calendar/locales/en.json +91 -0
  91. package/node_modules/@jskit-ai/connector-google-calendar/package.json +4 -3
  92. package/node_modules/@jskit-ai/connectors-catalog/CHANGELOG.md +1722 -0
  93. package/node_modules/@jskit-ai/connectors-catalog/README.md +11 -0
  94. package/node_modules/@jskit-ai/connectors-catalog/locales/en.json +3139 -0
  95. package/node_modules/@jskit-ai/connectors-catalog/package.json +5 -4
  96. package/node_modules/@jskit-ai/connectors-core/CHANGELOG.md +183 -0
  97. package/node_modules/@jskit-ai/connectors-core/locales/en.json +92 -0
  98. package/node_modules/@jskit-ai/connectors-core/package.json +3 -2
  99. package/node_modules/@jskit-ai/http-runtime/CHANGELOG.md +31 -0
  100. package/node_modules/@jskit-ai/http-runtime/locales/en.json +14 -0
  101. package/node_modules/@jskit-ai/http-runtime/package.json +3 -2
  102. package/node_modules/@jskit-ai/kernel/CHANGELOG.md +182 -0
  103. package/node_modules/@jskit-ai/kernel/locales/en.json +94 -0
  104. package/node_modules/@jskit-ai/kernel/package.json +6 -2
  105. package/node_modules/@jskit-ai/payments-core/CHANGELOG.md +128 -0
  106. package/node_modules/@jskit-ai/payments-core/locales/en.json +77 -0
  107. package/node_modules/@jskit-ai/payments-core/package.json +3 -2
  108. package/node_modules/@jskit-ai/realtime/CHANGELOG.md +20 -0
  109. package/node_modules/@jskit-ai/realtime/locales/en.json +14 -0
  110. package/node_modules/@jskit-ai/realtime/package.json +3 -2
  111. package/node_modules/@jskit-ai/resource-core/package.json +1 -1
  112. package/node_modules/@jskit-ai/resource-crud-core/package.json +1 -1
  113. package/node_modules/@jskit-ai/uploads-runtime/CHANGELOG.md +35 -0
  114. package/node_modules/@jskit-ai/uploads-runtime/locales/en.json +15 -0
  115. package/node_modules/@jskit-ai/uploads-runtime/package.json +3 -2
  116. package/node_modules/@local/vibe64-execution/src/host/execHelper.js +49 -48
  117. package/node_modules/@local/vibe64-execution/src/server/gitTurnCheckpointCommand.js +1327 -0
  118. package/node_modules/@local/vibe64-genesis/bin/vibe64-genesis-host-context +430 -390
  119. package/node_modules/@local/vibe64-genesis/src/server/index.js +45 -45
  120. package/node_modules/@local/vibe64-genesis/src/server/promptContext.js +119 -119
  121. package/node_modules/@local/vibe64-runtime/src/server/codexAppServerProcess.js +57 -57
  122. package/node_modules/@local/vibe64-sessions/package.json +2 -1
  123. package/node_modules/@local/vibe64-terminals/src/server/opencodeSessionEnvironmentPlugin.js +195 -175
  124. package/node_modules/@local/vibe64-terminals/src/server/sessionWorkOperationCommand.js +1385 -1362
  125. package/package.json +15 -15
  126. package/server.bundle.mjs +44206 -42825
  127. package/dist/assets/GithubBrowserTabs-D-Z3TlA8.js +0 -1
  128. package/dist/assets/Vibe64OutputControls-DtybwgL3.js +0 -8
  129. package/dist/assets/_slug_-Bq84T_Iv.js +0 -24
  130. package/dist/assets/conversation-Bn7wpATa.js +0 -2
  131. package/dist/assets/conversation-CNcCrV-R.js +0 -16
  132. package/dist/assets/definitions-CEbi4qae.js +0 -1
  133. package/dist/assets/env-X7EOFLtl.js +0 -1
  134. package/dist/assets/index-CBo1BEk6.js +0 -138
  135. package/dist/assets/issues-BiSiUd5o.js +0 -1
  136. package/dist/assets/placement-B5T1LR7m.js +0 -1
  137. package/dist/assets/publish-CeLZE2AG.js +0 -3
  138. package/dist/assets/pull-requests-pTdQOT7i.js +0 -1
  139. package/dist/assets/settings-lecRzZ-r.js +0 -1
  140. package/dist/assets/useArchivedVibe64Sessions-DHYRnyJD.js +0 -1
  141. package/dist/assets/useCommand-Epd2yHhQ.js +0 -1
  142. package/dist/assets/useEndpointResource-DBRQISI_.js +0 -1
  143. package/dist/assets/usePaths-DdAnjVDj.js +0 -1
  144. package/dist/assets/useVibe64ConversationLog-DboM3tYN.js +0 -1
  145. package/dist/assets/useVibe64SessionData-CreWtQAO.js +0 -1
  146. package/dist/assets/useVibe64SessionSelection-CDaX4uwY.js +0 -1
  147. package/dist/assets/vibe64ProjectScope.local-BxTBYuRg.js +0 -1
  148. package/dist/assets/vibe64RepositoryRealtime-C-J0I5jY.js +0 -1
  149. package/dist/assets/vibe64SessionFocus-DSW5Irm6.css +0 -1
  150. package/dist/assets/vibe64SessionFocus-DzqbVq60.js +0 -1
@@ -1,12 +1,12 @@
1
1
  import { createRequire as __vibe64CreateRequire } from 'node:module';const require=__vibe64CreateRequire(import.meta.url);
2
- import{normalizeDbRecordId as qn,createWithTransaction as Bn}from"@jskit-ai/database-runtime/shared";var Kn=Object.freeze(["none","pending","committed","rolledBack","unknown"]);function g(e,{fallback:t=""}={}){return String(e||"").trim()||t}function S(e,{fallback:t={}}={}){return!e||typeof e!="object"||Array.isArray(e)?{...t}:e}function se(e,{fallback:t=null}={}){if(e==null)return t;let n=String(e).trim();return/^[1-9][0-9]*$/.test(n)?n:t}function H(e,{
2
+ import{normalizeDbRecordId as Bn,createWithTransaction as Un}from"@jskit-ai/database-runtime/shared";var Jn=Object.freeze(["none","pending","committed","rolledBack","unknown"]);function g(e,{fallback:t=""}={}){return String(e||"").trim()||t}function S(e,{fallback:t={}}={}){return!e||typeof e!="object"||Array.isArray(e)?{...t}:e}function se(e,{fallback:t=null}={}){if(e==null)return t;let n=String(e).trim();return/^[1-9][0-9]*$/.test(n)?n:t}function H(e,{
3
3
  fallback:t=null}={}){return e==null?t:typeof e=="string"?se(e,{fallback:t}):typeof e=="number"?!Number.isSafeInteger(e)||
4
- e<1?t:se(e,{fallback:t}):typeof e=="bigint"?e<1n?t:se(e,{fallback:t}):t}function K(e){return String(e||"").trim().toLowerCase()}import{resolveInsertedRecordId as Vn}from"@jskit-ai/database-runtime/shared";import{normalizeDbRecordId as Sa}from"@jskit-ai/database-runtime/shared/repositoryOptions";var kt=Object.freeze(["assistant"]);var $e=Object.freeze({META:"meta",ASSISTANT_DELTA:"assistant_delta",ASSISTANT_MESSAGE:"assistant_message",TOOL_CALL:"too\
5
- l_call",TOOL_RESULT:"tool_result",ERROR:"error",DONE:"done"}),bo=new Set(Object.values($e));function O(e){if(e===null||typeof e!="object")return!1;let t=Object.getPrototypeOf(e);return t===Object.prototype||t===null||
6
- xt(t)}function xt(e){return e!==null&&typeof e=="object"&&Object.getPrototypeOf(e)===null&&Reflect.ownKeys(e).length===0}function ae(e){return e!==null&&typeof e=="object"&&O(e.structure)&&O(e.operations)&&typeof e.validateWith=="function"&&
4
+ e<1?t:se(e,{fallback:t}):typeof e=="bigint"?e<1n?t:se(e,{fallback:t}):t}function K(e){return String(e||"").trim().toLowerCase()}import{resolveInsertedRecordId as qn}from"@jskit-ai/database-runtime/shared";import{normalizeDbRecordId as Ia}from"@jskit-ai/database-runtime/shared/repositoryOptions";var xt=Object.freeze(["assistant"]);var $e=Object.freeze({META:"meta",ASSISTANT_DELTA:"assistant_delta",ASSISTANT_MESSAGE:"assistant_message",TOOL_CALL:"too\
5
+ l_call",TOOL_RESULT:"tool_result",ERROR:"error",DONE:"done"}),Oo=new Set(Object.values($e));function O(e){if(e===null||typeof e!="object")return!1;let t=Object.getPrototypeOf(e);return t===Object.prototype||t===null||
6
+ Vt(t)}function Vt(e){return e!==null&&typeof e=="object"&&Object.getPrototypeOf(e)===null&&Reflect.ownKeys(e).length===0}function ae(e){return e!==null&&typeof e=="object"&&O(e.structure)&&O(e.operations)&&typeof e.validateWith=="function"&&
7
7
  typeof e.toJsonSchema=="function"&&typeof e.cleanup=="function"}function J(e,t){if(!Object.hasOwn(t,"items"))return null;
8
8
  let{items:n}=t;if(ae(n))return{kind:"schema",schema:n};if(!O(n)||typeof n.type!="string")throw new Error(`Array field "${e}\
9
- " must define items as either a Schema instance or a field definition object.`);return{kind:"definition",definition:n}}function F(e,t){
9
+ " must define items as either a Schema instance or a field definition object.`);return{kind:"definition",definition:n}}function D(e,t){
10
10
  if(!Object.hasOwn(t,"values"))return null;let{values:n}=t;if(ae(n))return{kind:"schema",schema:n};if(!O(n)||typeof n.type!=
11
11
  "string")throw new Error(`Object field "${e}" must define values as either a Schema instance or a field definition objec\
12
12
  t.`);return{kind:"definition",definition:n}}function G(e,t){let n=Object.hasOwn(t,"schema"),r=Object.hasOwn(t,"values"),
@@ -14,132 +14,132 @@ o=Object.hasOwn(t,"additionalProperties");if(n&&r)throw new Error(`Object field
14
14
  ues.`);if(o&&t.additionalProperties!==!0)throw new Error(`Object field "${e}" only supports additionalProperties: true.`);
15
15
  if(r&&t.additionalProperties===!0)throw new Error(`Object field "${e}" cannot define both values and additionalPropertie\
16
16
  s: true.`);if(n){if(!ae(t.schema))throw new Error(`Object field "${e}" must define schema as a Schema instance.`);return{
17
- kind:"nested",schema:t.schema,allowAdditionalProperties:t.additionalProperties===!0}}return r?{kind:"map",valuesConfig:F(
18
- e,t)}:t.additionalProperties===!0?{kind:"opaque"}:{kind:"plain"}}function z(e){return e?.type==="number"||e?.type==="integer"||e?.type==="epochMilliseconds"||e?.type==="epochSeconds"}var ce="^(?:0|-?[1-9]\\d*)$",Le="\\d{4}",Me="0[1-9]|1[0-2]",De="0[1-9]|[12]\\d|3[01]",Fe="[01]\\d|2[0-3]",C="[0-5]\\d",W=`\
19
- (?:${Fe}):${C}`,ke=`(?:Z|[+-](?:${Fe}):${C})`,xe=`(${Le})-(${Me})-(${De})`,Ve=`${Le}-(?:${Me})-(?:${De})`,qe=`^${Ve}$`,Vt=new RegExp(
20
- `^${xe}$`),qt=new RegExp(`^${W}(?::${C}(?:\\.(\\d+))?)?$`),Bt=new RegExp(`^${xe}T${W}:${C}(?:\\.(\\d+))?${ke}$`),Ut=new RegExp(
21
- ce),Ht=[31,28,31,30,31,30,31,31,30,31,30,31];function Kt(e){return e%4===0&&(e%100!==0||e%400===0)}function Jt(e,t){return t===
22
- 2?Kt(e)?29:28:Ht[t-1]}function Be(e,t,n){let r=Number(e),o=Number(t),i=Number(n);return o>=1&&o<=12&&i>=1&&i<=Jt(r,o)}function k(e,t){
17
+ kind:"nested",schema:t.schema,allowAdditionalProperties:t.additionalProperties===!0}}return r?{kind:"map",valuesConfig:D(
18
+ e,t)}:t.additionalProperties===!0?{kind:"opaque"}:{kind:"plain"}}function v(e){return e?.type==="number"||e?.type==="integer"||e?.type==="epochMilliseconds"||e?.type==="epochSeconds"}var ce="^(?:0|-?[1-9]\\d*)$",ke="\\d{4}",Le="0[1-9]|1[0-2]",Me="0[1-9]|[12]\\d|3[01]",De="[01]\\d|2[0-3]",C="[0-5]\\d",W=`\
19
+ (?:${De}):${C}`,Fe=`(?:Z|[+-](?:${De}):${C})`,xe=`(${ke})-(${Le})-(${Me})`,Ve=`${ke}-(?:${Le})-(?:${Me})`,qe=`^${Ve}$`,qt=new RegExp(
20
+ `^${xe}$`),Bt=new RegExp(`^${W}(?::${C}(?:\\.(\\d+))?)?$`),Ut=new RegExp(`^${xe}T${W}:${C}(?:\\.(\\d+))?${Fe}$`),Ht=new RegExp(
21
+ ce),Kt=[31,28,31,30,31,30,31,31,30,31,30,31];function Jt(e){return e%4===0&&(e%100!==0||e%400===0)}function Gt(e,t){return t===
22
+ 2?Jt(e)?29:28:Kt[t-1]}function Be(e,t,n){let r=Number(e),o=Number(t),i=Number(n);return o>=1&&o<=12&&i>=1&&i<=Gt(r,o)}function F(e,t){
23
23
  let n=e.temporalPrecision;if(n!==void 0){if(!Number.isInteger(n)||n<0)throw new Error(`temporalPrecision for "${t}" must\
24
24
  be a non-negative integer.`);return n}}function Ue(e,t){return e===void 0?!0:t===void 0||e.length<=t}function He(e){if(typeof e!=
25
- "string")return!1;let t=Vt.exec(e);return t!==null&&Be(t[1],t[2],t[3])}function Ke(e,t){if(typeof e!="string")return!1;let n=qt.
26
- exec(e);return n!==null&&Ue(n[1],t)}function Je(e,t){if(typeof e!="string")return!1;let n=Bt.exec(e);return n===null?!1:
25
+ "string")return!1;let t=qt.exec(e);return t!==null&&Be(t[1],t[2],t[3])}function Ke(e,t){if(typeof e!="string")return!1;let n=Bt.
26
+ exec(e);return n!==null&&Ue(n[1],t)}function Je(e,t){if(typeof e!="string")return!1;let n=Ut.exec(e);return n===null?!1:
27
27
  Be(n[1],n[2],n[3])&&Ue(n[4],t)}function Ge(e){return e===void 0?"(?:\\.\\d+)?":e===0?"":`(?:\\.\\d{1,${e}})?`}function We(e,t){
28
- let n=k(e,t);return`^${W}(?::${C}${Ge(n)})?$`}function Xe(e,t){let n=k(e,t);return`^${Ve}T${W}:${C}${Ge(n)}${ke}$`}function ue(e,t){
29
- let n;if(typeof e=="number")n=e;else if(typeof e=="string"&&Ut.test(e))n=Number(e);else return null;return!Number.isSafeInteger(
30
- n)||n<-t||n>t?null:n===0?0:n}var Gt=new Set(["__proto__","prototype","constructor"]);function f(e,t,n){Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0})}function Wt(e,t){if(Gt.
31
- has(e))throw new Error(`${t}() received unsafe path segment "${e}".`)}function Xt(e){return typeof e!="string"?e:e.replace(
28
+ let n=F(e,t);return`^${W}(?::${C}${Ge(n)})?$`}function Xe(e,t){let n=F(e,t);return`^${Ve}T${W}:${C}${Ge(n)}${Fe}$`}function ue(e,t){
29
+ let n;if(typeof e=="number")n=e;else if(typeof e=="string"&&Ht.test(e))n=Number(e);else return null;return!Number.isSafeInteger(
30
+ n)||n<-t||n>t?null:n===0?0:n}var Wt=new Set(["__proto__","prototype","constructor"]);function f(e,t,n){Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0})}function Xt(e,t){if(Wt.
31
+ has(e))throw new Error(`${t}() received unsafe path segment "${e}".`)}function Yt(e){return typeof e!="string"?e:e.replace(
32
32
  /\[(.+?)\]/g,".$1").replace(/^\.+/,"").replace(/\.+/g,".").replace(/\.$/,"")}function le(e,t,{normalize:n=!1,allowEmpty:r=!1}={}){
33
- let o=n?Xt(e):e;if(typeof o!="string"||o.trim()===""){if(r&&o==="")return[];throw new Error(`${t}() expects a non-empty \
33
+ let o=n?Yt(e):e;if(typeof o!="string"||o.trim()===""){if(r&&o==="")return[];throw new Error(`${t}() expects a non-empty \
34
34
  dotted path string.`)}let i=o.split(".");if(i.some(s=>s===""))throw new Error(`${t}() received an invalid path "${o}".`);
35
- for(let s of i)Wt(s,t);return i}var Yt="http://json-schema.org/draft-07/schema#",A="x-json-rest-schema",fe=["object","array","string","number","boolean"],
36
- de=Symbol("json-rest-schema.exportContext"),Qt=["true","1","yes","y","on"],Zt=["false","0","no","n","off"];function Ye(e){
37
- return{anyOf:[{type:"integer",minimum:-e,maximum:e},{type:"string",pattern:ce}]}}function I(e,t){return{[A]:{[e]:t}}}var er={
35
+ for(let s of i)Xt(s,t);return i}var Qt="http://json-schema.org/draft-07/schema#",A="x-json-rest-schema",fe=["object","array","string","number","boolean"],
36
+ de=Symbol("json-rest-schema.exportContext"),Zt=["true","1","yes","y","on"],er=["false","0","no","n","off"];function Ye(e){
37
+ return{anyOf:[{type:"integer",minimum:-e,maximum:e},{type:"string",pattern:ce}]}}function R(e,t){return{[A]:{[e]:t}}}var tr={
38
38
  none:()=>({type:fe}),blob:()=>({type:fe}),serialize:()=>({type:fe}),object:()=>({type:"object"}),array:()=>({type:"array"}),
39
39
  file:()=>({type:"string"}),string:()=>({type:"string"}),number:()=>({type:["number","string"]}),integer:()=>({type:["int\
40
40
  eger","string"]}),epochMilliseconds:()=>Ye(864e13),epochSeconds:()=>Ye(864e10),dateTime:({definition:e,fieldName:t})=>({
41
41
  type:"string",format:"date-time",pattern:Xe(e,t)}),date:()=>({type:"string",format:"date",pattern:qe}),time:({definition:e,
42
42
  fieldName:t})=>({type:"string",pattern:We(e,t)}),boolean:({definition:e})=>{if(e.strictBoolean===!0)return{type:"boolean"};
43
- let t=new Set([...Qt,String(e.stringTrueWhen||"true").trim().toLowerCase()]),n=new Set([...Zt,String(e.stringFalseWhen||
43
+ let t=new Set([...Zt,String(e.stringTrueWhen||"true").trim().toLowerCase()]),n=new Set([...er,String(e.stringFalseWhen||
44
44
  "false").trim().toLowerCase()]);return{anyOf:[{type:"boolean"},{type:"number",enum:[0,1]},{type:"string",enum:[...n,...t]}]}},
45
- id:()=>({type:["integer","string"],minimum:1,pattern:"^[1-9][0-9]*$"})},tr={minLength:({definition:e,parameterValue:t})=>e.
45
+ id:()=>({type:["integer","string"],minimum:1,pattern:"^[1-9][0-9]*$"})},rr={minLength:({definition:e,parameterValue:t})=>e.
46
46
  type==="string"?{minLength:t}:null,maxLength:({definition:e,parameterValue:t})=>e.type==="string"?{maxLength:t}:null,min:({
47
- definition:e,parameterValue:t})=>z(e)?{minimum:t}:null,max:({definition:e,parameterValue:t})=>z(e)?{maximum:t}:null,pattern:({
47
+ definition:e,parameterValue:t})=>v(e)?{minimum:t}:null,max:({definition:e,parameterValue:t})=>v(e)?{maximum:t}:null,pattern:({
48
48
  definition:e,parameterValue:t})=>e.type==="string"?{pattern:t instanceof RegExp?t.source:t}:null,enum:({parameterValue:e})=>({
49
49
  enum:e}),notEmpty:({parameterValue:e,definition:t})=>!e||t.type==="array"?null:{minLength:1},uppercase:({parameterValue:e})=>e?
50
- I("transforms",{uppercase:!0}):null,lowercase:({parameterValue:e})=>e?I("transforms",{lowercase:!0}):null,length:({parameterValue:e})=>I(
51
- "transforms",{length:e}),unsigned:({parameterValue:e})=>e?I("metadata",{unsigned:!0}):null,precision:({parameterValue:e})=>I(
52
- "metadata",{precision:e}),scale:({parameterValue:e})=>I("metadata",{scale:e}),temporalPrecision:({parameterValue:e})=>I(
50
+ R("transforms",{uppercase:!0}):null,lowercase:({parameterValue:e})=>e?R("transforms",{lowercase:!0}):null,length:({parameterValue:e})=>R(
51
+ "transforms",{length:e}),unsigned:({parameterValue:e})=>e?R("metadata",{unsigned:!0}):null,precision:({parameterValue:e})=>R(
52
+ "metadata",{precision:e}),scale:({parameterValue:e})=>R("metadata",{scale:e}),temporalPrecision:({parameterValue:e})=>R(
53
53
  "metadata",{temporalPrecision:e}),strictBoolean:()=>null,required:()=>null,nullable:()=>null,nullOnEmpty:()=>null,defaultTo:()=>null};
54
54
  function ye(e,t){for(let n of Object.keys(t)){let r=t[n],o=e[n];if(r&&o&&typeof r=="object"&&typeof o=="object"&&!Array.
55
- isArray(r)&&!Array.isArray(o)){ye(o,r);continue}e[n]=r}}function rr(e,t){if(!t||typeof t!="object"||Array.isArray(t))throw new Error(
55
+ isArray(r)&&!Array.isArray(o)){ye(o,r);continue}e[n]=r}}function nr(e,t){if(!t||typeof t!="object"||Array.isArray(t))throw new Error(
56
56
  "JSON Schema export hooks must return an object or null.");for(let n of Object.keys(t)){if(n===A&&e[n]&&typeof e[n]=="ob\
57
- ject"&&typeof t[n]=="object"&&!Array.isArray(e[n])&&!Array.isArray(t[n])){ye(e[n],t[n]);continue}e[n]=t[n]}}function nr(e,t){
58
- let r=[...Array.isArray(e.anyOf)&&Object.keys(e).length===1?e.anyOf:[e],...t];return r.length===1?e:{anyOf:r}}function or(e,t){
57
+ ject"&&typeof t[n]=="object"&&!Array.isArray(e[n])&&!Array.isArray(t[n])){ye(e[n],t[n]);continue}e[n]=t[n]}}function or(e,t){
58
+ let r=[...Array.isArray(e.anyOf)&&Object.keys(e).length===1?e.anyOf:[e],...t];return r.length===1?e:{anyOf:r}}function ir(e,t){
59
59
  if(!Object.hasOwn(e.types,t.type))throw new Error(`No casting function for type: ${t.type}`);let n=e.types[t.type];if(typeof n.
60
- toJsonSchema=="function")return n.toJsonSchema;let r=er[t.type];if(!r)throw new Error(`Type '${t.type}' cannot be export\
61
- ed to JSON Schema without a toJsonSchema hook.`);return r}function ir(e,t,n){if(!Object.hasOwn(e.validators,t))return null;
62
- let r=e.validators[t];if(typeof r.toJsonSchema=="function")return r.toJsonSchema;let o=tr[t];if(o)return o;throw new Error(
60
+ toJsonSchema=="function")return n.toJsonSchema;let r=tr[t.type];if(!r)throw new Error(`Type '${t.type}' cannot be export\
61
+ ed to JSON Schema without a toJsonSchema hook.`);return r}function sr(e,t,n){if(!Object.hasOwn(e.validators,t))return null;
62
+ let r=e.validators[t];if(typeof r.toJsonSchema=="function")return r.toJsonSchema;let o=rr[t];if(o)return o;throw new Error(
63
63
  `Validator '${t}' on field '${n}' cannot be exported to JSON Schema without a toJsonSchema hook.`)}function Qe(e){if(e===
64
64
  void 0)return"create";if(["create","replace","patch"].includes(e))return e;throw new Error(`Unsupported JSON Schema expo\
65
- rt mode '${e}'. Expected 'create', 'replace', or 'patch'.`)}function sr(e,t={}){if(t.mode!==void 0&&t.operation!==void 0){
65
+ rt mode '${e}'. Expected 'create', 'replace', or 'patch'.`)}function ar(e,t={}){if(t.mode!==void 0&&t.operation!==void 0){
66
66
  let n=Qe(t.mode);if(n!==t.operation)throw new Error(`Conflicting JSON Schema export options: mode '${n}' does not match \
67
67
  operation '${t.operation}'.`)}if(t.operation!==void 0){if(!Object.hasOwn(e.operations,t.operation))throw new Error(`Unkn\
68
- own JSON Schema export operation '${t.operation}'.`);return t.operation}return Qe(t.mode)}function ar(e,t={}){if(t.operationName!==
69
- void 0&&t.operationDescriptor!==void 0)return{operationName:t.operationName,operation:t.operationDescriptor};let n=sr(e,
70
- t);return{operationName:n,operation:e.operations[n]}}function cr(e={}){let t={...e};return Object.defineProperty(t,de,{value:{
68
+ own JSON Schema export operation '${t.operation}'.`);return t.operation}return Qe(t.mode)}function cr(e,t={}){if(t.operationName!==
69
+ void 0&&t.operationDescriptor!==void 0)return{operationName:t.operationName,operation:t.operationDescriptor};let n=ar(e,
70
+ t);return{operationName:n,operation:e.operations[n]}}function ur(e={}){let t={...e};return Object.defineProperty(t,de,{value:{
71
71
  definitions:{},nodes:[],nextDefinitionId:1,rootNode:null},enumerable:!1}),t}function Y(e={}){return e[de]?e[de]:{definitions:{},
72
- nodes:[],nextDefinitionId:1,rootNode:null}}function ur(e){return String(e).replace(/[^a-zA-Z0-9]+/g,"_").replace(/^_+|_+$/g,
72
+ nodes:[],nextDefinitionId:1,rootNode:null}}function lr(e){return String(e).replace(/[^a-zA-Z0-9]+/g,"_").replace(/^_+|_+$/g,
73
73
  "")||"operation"}function pe(e){return O(e)&&Object.keys(e).length===1&&typeof e.$ref=="string"}function X(e){return pe(
74
- e)?{allOf:[e]}:e}function lr(e,t,n,r,o){return e.nodes.find(i=>i.schema===t&&i.operationName===n&&i.operation===r&&i.additionalProperties===
75
- o)||null}function fr(e,t){let n=ur(t),r=`SchemaNode_${e.nextDefinitionId}_${n}`;return e.nextDefinitionId+=1,r}function Ze(e,t,n,r,o,{
76
- root:i=!1}={}){let s=Y(t),a=lr(s,e,n,r,o);if(a)return i&&(a.pointer="#",s.rootNode=a),a;let c={schema:e,operationName:n,
77
- operation:r,additionalProperties:o,status:"new",definitionName:i?null:fr(s,n),pointer:i?"#":null};return i?s.rootNode=c:
74
+ e)?{allOf:[e]}:e}function fr(e,t,n,r,o){return e.nodes.find(i=>i.schema===t&&i.operationName===n&&i.operation===r&&i.additionalProperties===
75
+ o)||null}function dr(e,t){let n=lr(t),r=`SchemaNode_${e.nextDefinitionId}_${n}`;return e.nextDefinitionId+=1,r}function Ze(e,t,n,r,o,{
76
+ root:i=!1}={}){let s=Y(t),a=fr(s,e,n,r,o);if(a)return i&&(a.pointer="#",s.rootNode=a),a;let c={schema:e,operationName:n,
77
+ operation:r,additionalProperties:o,status:"new",definitionName:i?null:dr(s,n),pointer:i?"#":null};return i?s.rootNode=c:
78
78
  c.pointer=`#/definitions/${c.definitionName}`,s.nodes.push(c),c}function et(e,t){if(e.status==="built")return{$ref:e.pointer};
79
79
  if(e.status==="building")return{$ref:e.pointer};let n=Y(t);e.status="building",e.pointer!=="#"&&(n.definitions[e.definitionName]=
80
- {});let r=dr(e.schema,t,e.operationName,e.operation,e.additionalProperties);return e.status="built",e.pointer==="#"?r:(n.
80
+ {});let r=pr(e.schema,t,e.operationName,e.operation,e.additionalProperties);return e.status="built",e.pointer==="#"?r:(n.
81
81
  definitions[e.definitionName]=r,{$ref:e.pointer})}function ge(e,t,n,r,o=!1){let i=Y(t),s=Ze(e,t,n,r,o);return i.rootNode===
82
- s?{$ref:"#"}:et(s,t)}function x(e,{referenceBacked:t=!1}={}){return{schema:e,referenceBacked:t}}function dr(e,t,n,r,o=!1){
82
+ s?{$ref:"#"}:et(s,t)}function x(e,{referenceBacked:t=!1}={}){return{schema:e,referenceBacked:t}}function pr(e,t,n,r,o=!1){
83
83
  let i={},s=[];for(let[c,u]of Object.entries(e.structure))f(i,c,Se(e,c,u,t,n,r)),r.enforceRequired&&u.required===!0&&s.push(
84
- c);let a={type:"object",properties:i,additionalProperties:o};return s.length>0&&(a.required=s),a}function pr(e,t,n,r,o,i){
84
+ c);let a={type:"object",properties:i,additionalProperties:o};return s.length>0&&(a.required=s),a}function mr(e,t,n,r,o,i){
85
85
  let s=J(t,n);if(!s)return null;if(s.kind==="schema")return{...X(ge(s.schema,r,"replace",s.schema.operations.replace,!1)),
86
86
  [A]:{castType:"object"}};let a=n.items.type==="object"&&Object.hasOwn(n.items,"schema")?"replace":o,c=a==="replace"?e.operations.
87
- replace:i;return Se(e,`${t}[]`,n.items,r,a,c)}function mr(e,t,n,r,o,i){let s=F(t,n);if(!s)return null;if(s.kind==="schem\
87
+ replace:i;return Se(e,`${t}[]`,n.items,r,a,c)}function hr(e,t,n,r,o,i){let s=D(t,n);if(!s)return null;if(s.kind==="schem\
88
88
  a")return{...X(ge(s.schema,r,"replace",s.schema.operations.replace,!1)),[A]:{castType:"object"}};let a=s.definition.type===
89
89
  "object"&&Object.hasOwn(s.definition,"schema")?"replace":o,c=a==="replace"?e.operations.replace:i;return Se(e,`${t}.*`,s.
90
- definition,r,a,c)}function hr(e,t,n,r,o,i){if(n.type==="object"){let a=G(t,n);if(a.kind==="nested")return x(ge(a.schema,
90
+ definition,r,a,c)}function yr(e,t,n,r,o,i){if(n.type==="object"){let a=G(t,n);if(a.kind==="nested")return x(ge(a.schema,
91
91
  r,o,i,a.allowAdditionalProperties===!0),{referenceBacked:!0});if(a.kind==="opaque")return x({type:"object",additionalProperties:!0});
92
- if(a.kind==="map")return x({type:"object",additionalProperties:mr(e,t,n,r,o,i)})}let s=or(e,n)({schema:e,fieldName:t,definition:n,
92
+ if(a.kind==="map")return x({type:"object",additionalProperties:hr(e,t,n,r,o,i)})}let s=ir(e,n)({schema:e,fieldName:t,definition:n,
93
93
  operation:o,mode:o,options:r});if(!s||typeof s!="object"||Array.isArray(s))throw new Error(`Type '${n.type}' on field '${t}\
94
- ' returned an invalid JSON Schema fragment.`);if(n.type==="array"){let a=pr(e,t,n,r,o,i);if(a)return x({...s,items:a},{referenceBacked:pe(
94
+ ' returned an invalid JSON Schema fragment.`);if(n.type==="array"){let a=mr(e,t,n,r,o,i);if(a)return x({...s,items:a},{referenceBacked:pe(
95
95
  s)})}return x(s,{referenceBacked:pe(s)})}function Se(e,t,n,r,o,i){let s={schema:e,fieldName:t,definition:n,operation:o,mode:o,
96
- options:r},a=hr(e,t,n,r,o,i),c=a.referenceBacked?X(a.schema):{...a.schema},u={castType:n.type};for(let d of Object.keys(
97
- n)){if(d==="type"||!Object.hasOwn(e.validators,d))continue;let m=ir(e,d,t);if(!m)continue;let y=m({...s,parameterName:d,
98
- parameterValue:n[d],fieldSchema:{...c}});y&&rr(c,y)}c[A]&&(ye(u,c[A]),delete c[A]);let l=[];n.nullable===!0&&l.push({type:"\
99
- null"}),n.nullOnEmpty===!0&&l.push({const:""});let p=X(nr(c,l));if(n.defaultTo!==void 0&&i.applyDefaults)if(typeof n.defaultTo!=
96
+ options:r},a=yr(e,t,n,r,o,i),c=a.referenceBacked?X(a.schema):{...a.schema},u={castType:n.type};for(let d of Object.keys(
97
+ n)){if(d==="type"||!Object.hasOwn(e.validators,d))continue;let m=sr(e,d,t);if(!m)continue;let y=m({...s,parameterName:d,
98
+ parameterValue:n[d],fieldSchema:{...c}});y&&nr(c,y)}c[A]&&(ye(u,c[A]),delete c[A]);let l=[];n.nullable===!0&&l.push({type:"\
99
+ null"}),n.nullOnEmpty===!0&&l.push({const:""});let p=X(or(c,l));if(n.defaultTo!==void 0&&i.applyDefaults)if(typeof n.defaultTo!=
100
100
  "function"){let d=e._normalizeDefault(n,n.defaultTo,{fieldPath:t,currentObject:{},containerKey:t,objectBeforeCast:{},options:{},
101
101
  settings:e._buildOperationSettings(o,i,{})});if(Object.keys(d.errors).length>0){let m=Object.values(d.errors)[0];throw new Error(
102
102
  `defaultTo for "${t}" is invalid (${m.code}).`)}p.default=d.value}else u.defaults={providedByFunction:!0};return p[A]=u,
103
- p}function tt(e,t={}){let n=cr(t),{operationName:r,operation:o}=ar(e,n),i=n.additionalProperties===void 0?!1:n.additionalProperties,
104
- s=Y(n),a=Ze(e,n,r,o,i,{root:!0}),c={$schema:Yt,...et(a,n)};return Object.keys(s.definitions).length>0&&(c.definitions=s.
105
- definitions),c}function rt(e){return e!==null&&(typeof e=="object"||typeof e=="function")&&typeof e.then=="function"}function we(e){return e instanceof
106
- L}function yr(){return{self:!1,children:{}}}function nt(e){return Object.keys(e.children).length>0}function P(e,t){return`${e}\
103
+ p}function tt(e,t={}){let n=ur(t),{operationName:r,operation:o}=cr(e,n),i=n.additionalProperties===void 0?!1:n.additionalProperties,
104
+ s=Y(n),a=Ze(e,n,r,o,i,{root:!0}),c={$schema:Qt,...et(a,n)};return Object.keys(s.definitions).length>0&&(c.definitions=s.
105
+ definitions),c}function rt(e){return e!==null&&(typeof e=="object"||typeof e=="function")&&typeof e.then=="function"}function Te(e){return e instanceof
106
+ k}function gr(){return{self:!1,children:{}}}function nt(e){return Object.keys(e.children).length>0}function P(e,t){return`${e}\
107
107
  .${String(t)}`}function ut(e,t){return e===""?String(t):P(e,t)}function ot(e,t){if(e===t)return"";let n=`${t}.`;return e.
108
- startsWith(n)?e.slice(n.length):null}function v(e,t){let n={};for(let r of Object.values(e)){let o=P(t,r.field);f(n,o,{...r,
109
- field:o})}return n}function Ee(e){return le(e,"validatePath")}function it(e){let t={};for(let n of e){let r=Ee(n),o=t;for(let i=0;i<
110
- r.length;i++){let s=r[i];Object.hasOwn(o,s)||f(o,s,yr()),i===r.length-1&&(o[s].self=!0),o=o[s].children}}return t}function gr(e,t){
108
+ startsWith(n)?e.slice(n.length):null}function z(e,t){let n={};for(let r of Object.values(e)){let o=P(t,r.field);f(n,o,{...r,
109
+ field:o})}return n}function be(e){return le(e,"validatePath")}function it(e){let t={};for(let n of e){let r=be(n),o=t;for(let i=0;i<
110
+ r.length;i++){let s=r[i];Object.hasOwn(o,s)||f(o,s,gr()),i===r.length-1&&(o[s].self=!0),o=o[s].children}}return t}function Sr(e,t){
111
111
  let n=e;for(let r of t){if(n==null||typeof n!="object"||!Object.hasOwn(n,r))return;n=n[r]}return n}function Q(e){return e===
112
112
  null?!0:Array.isArray(e)||O(e)?Object.keys(e).length>0:e!==void 0}function st(e){return[...e].sort((t,n)=>{let r=/^[0-9]+$/.
113
- test(t),o=/^[0-9]+$/.test(n);return r&&o?Number(t)-Number(n):r?-1:o?1:t.localeCompare(n)})}function Sr(e){return/^[0-9]+$/.
114
- test(e)}function br(e,t=new WeakMap){if(t.has(e))return t.get(e);let n=Object.create(L.prototype);return t.set(e,n),n.structure=
113
+ test(t),o=/^[0-9]+$/.test(n);return r&&o?Number(t)-Number(n):r?-1:o?1:t.localeCompare(n)})}function Er(e){return/^[0-9]+$/.
114
+ test(e)}function Or(e,t=new WeakMap){if(t.has(e))return t.get(e);let n=Object.create(k.prototype);return t.set(e,n),n.structure=
115
115
  null,n.types=e.types,n.validators=e.validators,n.operations=e.operations,n.structure=ee(Z(e.structure,t)),n._installOperationMethods(),
116
- Object.freeze(n)}function Z(e,t=new WeakMap){if(e===null||typeof e!="object")return e;if(we(e))return br(e,t);if(e instanceof
116
+ Object.freeze(n)}function Z(e,t=new WeakMap){if(e===null||typeof e!="object")return e;if(Te(e))return Or(e,t);if(e instanceof
117
117
  Date)return new Date(e.getTime());if(e instanceof RegExp){let r=new RegExp(e.source,e.flags);return r.lastIndex=e.lastIndex,
118
118
  r}if(t.has(e))return t.get(e);if(Array.isArray(e)){let r=[];t.set(e,r);for(let o of e)r.push(Z(o,t));return r}if(!O(e))return e;
119
119
  let n={};t.set(e,n);for(let[r,o]of Object.entries(e))f(n,r,Z(o,t));return n}function ee(e,t=new WeakSet){if(e===null||typeof e!=
120
- "object"||t.has(e)||we(e))return e;if(t.add(e),Array.isArray(e))for(let n of e)ee(n,t);else for(let n of Reflect.ownKeys(
121
- e))ee(e[n],t);return Object.freeze(e)}function be(e){return ee(Z(e))}function Te(e,t,n=""){if(!we(e)||!Array.isArray(t)||
120
+ "object"||t.has(e)||Te(e))return e;if(t.add(e),Array.isArray(e))for(let n of e)ee(n,t);else for(let n of Reflect.ownKeys(
121
+ e))ee(e[n],t);return Object.freeze(e)}function Ee(e){return ee(Z(e))}function we(e,t,n=""){if(!Te(e)||!Array.isArray(t)||
122
122
  t.length<1)return null;let[r,...o]=t;if(!Object.hasOwn(e.structure,r))return null;let i=e.structure[r];if(o.length<1)return i;
123
123
  let s=ut(n,r);return lt(e,i,o,s)}function lt(e,t,n,r){if(t?.type==="object"){let o=e._resolveObjectFieldMode(r,t);return o.
124
- kind!=="nested"?null:Te(o.schema,n,r)}if(t?.type==="array"){let o=e._resolveArrayItemsConfig(r,t);if(!o||n.length<1)return null;
125
- let[i,...s]=n;if(!Sr(i))return null;let a=P(r,i);return o.kind==="schema"?s.length<1?null:Te(o.schema,s,a):s.length<1?o.
124
+ kind!=="nested"?null:we(o.schema,n,r)}if(t?.type==="array"){let o=e._resolveArrayItemsConfig(r,t);if(!o||n.length<1)return null;
125
+ let[i,...s]=n;if(!Er(i))return null;let a=P(r,i);return o.kind==="schema"?s.length<1?null:we(o.schema,s,a):s.length<1?o.
126
126
  definition:lt(e,o.definition,s,a)}return null}function $(e,t){let n={...e};if(Array.isArray(e.skipFields)){let r=e.skipFields.
127
127
  map(o=>ot(o,t)).filter(o=>o!==null&&o!=="");r.length>0?n.skipFields=r:delete n.skipFields}if(O(e.skipParams)){let r={};for(let[
128
128
  o,i]of Object.entries(e.skipParams)){let s=ot(o,t);s===null||s===""||f(r,s,i)}Object.keys(r).length>0?n.skipParams=r:delete n.
129
- skipParams}return n}var Or=Object.freeze({create:Object.freeze({targetFields:"schema",enforceRequired:!0,applyDefaults:!0,
129
+ skipParams}return n}var br=Object.freeze({create:Object.freeze({targetFields:"schema",enforceRequired:!0,applyDefaults:!0,
130
130
  outputFields:"validated",rejectExplicitUndefined:!0}),replace:Object.freeze({targetFields:"schema",enforceRequired:!0,applyDefaults:!0,
131
131
  outputFields:"validated",rejectExplicitUndefined:!0}),patch:Object.freeze({targetFields:"input",enforceRequired:!1,applyDefaults:!1,
132
132
  outputFields:"input",rejectExplicitUndefined:!0})});function at(e,t,n,r){let o=t[n];if(!r.includes(o))throw new Error(`O\
133
133
  peration "${e}" must define ${n} as one of: ${r.join(", ")}.`)}function Oe(e,t,n,r=!0){let o=t[n];if(!(o===void 0&&!r)&&
134
- typeof o!="boolean")throw new Error(`Operation "${e}" must define ${n} as a boolean.`)}function Er(e,t){if(typeof t!="ob\
134
+ typeof o!="boolean")throw new Error(`Operation "${e}" must define ${n} as a boolean.`)}function wr(e,t){if(typeof t!="ob\
135
135
  ject"||t===null||Array.isArray(t))throw new Error(`Operation "${e}" must be an object.`);return at(e,t,"targetFields",["\
136
136
  schema","input"]),Oe(e,t,"enforceRequired"),Oe(e,t,"applyDefaults"),at(e,t,"outputFields",["validated","input"]),Oe(e,t,
137
137
  "rejectExplicitUndefined",!1),Object.freeze({targetFields:t.targetFields,enforceRequired:t.enforceRequired,applyDefaults:t.
138
138
  applyDefaults,outputFields:t.outputFields,rejectExplicitUndefined:t.rejectExplicitUndefined===void 0?!0:t.rejectExplicitUndefined})}
139
139
  function Tr(e={}){if(typeof e!="object"||e===null||Array.isArray(e))throw new Error("Schema operations must be an object\
140
- .");let t=Object.create(null);for(let[n,r]of Object.entries(Or))f(t,n,r);for(let[n,r]of Object.entries(e))f(t,n,Er(n,r));
140
+ .");let t=Object.create(null);for(let[n,r]of Object.entries(br))f(t,n,r);for(let[n,r]of Object.entries(e))f(t,n,wr(n,r));
141
141
  return Object.freeze(t)}function ct(e){let t=Object.create(null);for(let[n,r]of Object.entries(e))f(t,n,r);return Object.
142
- freeze(t)}function wr(e){let t={...e};return delete t.operation,delete t.mode,t}var L=class{constructor(t,n,r,o={}){this.
142
+ freeze(t)}function _r(e){let t={...e};return delete t.operation,delete t.mode,t}var k=class{constructor(t,n,r,o={}){this.
143
143
  structure=t,this.types=ct(n),this.validators=ct(r),this.operations=Tr(o),this._installOperationMethods()}_typeError(t){return this.
144
144
  _paramError(t,"TYPE_CAST_FAILED","Value could not be cast to the required type.")}_paramError(t,n,r,o={}){let i=new Error(
145
145
  r);return i.errorObject={field:t,code:n,message:r,params:o},i}_paramToBeSkipped(t,n,r){return typeof n!="object"||n===null?
@@ -155,18 +155,18 @@ rejectExplicitUndefined,defaultedFields:new Set,isFieldPresent:o=>Object.hasOwn(
155
155
  n))throw new Error(`${t}() expects a plain object input.`)}_resolvePathValidationRequest(t={}){let n=t.operation??t.mode??
156
156
  "patch";if(Object.hasOwn(t,"operation")&&Object.hasOwn(t,"mode")&&t.operation!==t.mode)throw new Error("Path validation \
157
157
  options `operation` and `mode` must match when both are provided.");if(!Object.hasOwn(this.operations,n))throw new Error(
158
- `Unknown operation "${n}".`);let r=this.operations[n];return{operationName:n,operation:r,validationOptions:wr(t)}}_buildOperationResult(t,n,r){
158
+ `Unknown operation "${n}".`);let r=this.operations[n];return{operationName:n,operation:r,validationOptions:_r(t)}}_buildOperationResult(t,n,r){
159
159
  let o={};for(let i of r.outputFieldNames){if(!Object.hasOwn(this.structure,i))continue;let s=r.isFieldPresent(i);(n[i]!==
160
160
  void 0||s&&t[i]===null||r.defaultedFields.has(i))&&(!s&&!r.defaultedFields.has(i)||f(o,i,n[i]))}return o}_resolveObjectFieldMode(t,n){
161
- return G(t,n)}_resolveArrayItemsConfig(t,n){return J(t,n)}_resolveObjectValuesConfig(t,n){return F(t,n)}_buildArrayItemSettings(t,n){
161
+ return G(t,n)}_resolveArrayItemsConfig(t,n){return J(t,n)}_resolveObjectValuesConfig(t,n){return D(t,n)}_buildArrayItemSettings(t,n){
162
162
  return t.type==="object"&&Object.hasOwn(t,"schema")?{...n,operationName:"replace",operation:this.operations.replace}:n}_castValue(t,n,r,o,i,s,a,c){
163
163
  let u=t.nullable===!0||a.nullable===!0,l=t.nullOnEmpty===!0||a.nullOnEmpty===!0;if(!Object.hasOwn(this.types,t.type))throw new Error(
164
164
  `No casting function for type: ${t.type}`);let p=this.types[t.type];if(n===null)return u?(f(o,i,null),{errors:{},shouldContinue:!1}):
165
165
  {errors:this._singleErrorMap({field:r,code:"NOT_NULLABLE",message:"Field cannot be null",params:{}}),shouldContinue:!1};
166
166
  if(n===""&&l)return f(o,i,null),{errors:{},shouldContinue:!1};let d={schema:this,definition:t,value:n,fieldName:r,object:o,
167
167
  objectBeforeCast:s,valueBeforeCast:n,options:a,mode:c.operationName,operation:c.operationName,fieldPresent:!0,computedOptions:{
168
- nullable:u||l,nullOnEmpty:l},throwTypeError:()=>{throw this._typeError(r)},throwParamError:(m,y,T)=>{throw this._paramError(
169
- r,m,y,T)}};try{let m=p(d);if(rt(m))throw new Error(`Type handler for "${t.type}" must be synchronous.`);m!==void 0&&(f(o,
168
+ nullable:u||l,nullOnEmpty:l},throwTypeError:()=>{throw this._typeError(r)},throwParamError:(m,y,w)=>{throw this._paramError(
169
+ r,m,y,w)}};try{let m=p(d);if(rt(m))throw new Error(`Type handler for "${t.type}" must be synchronous.`);m!==void 0&&(f(o,
170
170
  i,m),d.value=m)}catch(m){if(m.errorObject)return{errors:this._singleErrorMap(m.errorObject),shouldContinue:!1};throw m}return{
171
171
  errors:{},context:d,shouldContinue:!0}}_runFieldValidators(t,n,r,o,i,s){for(let a of Object.keys(t)){if(a==="type"||this.
172
172
  _paramToBeSkipped(a,s.skipParams,n)||!Object.hasOwn(this.validators,a))continue;let c=this.validators[a];try{i.parameterName=
@@ -181,18 +181,18 @@ c,n,r,o,i,s):c.kind==="map"?this._validateObjectValues(n,r,o,c.valuesConfig,i,s)
181
181
  _resolveArrayItemsConfig(n,t);return a?this._validateArrayItems(n,r,o,a,i,s):{}}_validateNestedObjectSchema(t,n,r,o,i,s){
182
182
  let a=r[o],c=t.allowAdditionalProperties?this._extractKnownObjectFields(a,t.schema):a,u=t.schema._validateWithOperation(
183
183
  s.operationName,s.operation,c,$(i,n));return f(r,o,t.allowAdditionalProperties?this._mergeKnownAndPassthroughObjectFields(
184
- a,t.schema,u.validatedObject):u.validatedObject),v(u.errors,n)}_extractKnownObjectFields(t,n){let r={};for(let[o,i]of Object.
184
+ a,t.schema,u.validatedObject):u.validatedObject),z(u.errors,n)}_extractKnownObjectFields(t,n){let r={};for(let[o,i]of Object.
185
185
  entries(t))Object.hasOwn(n.structure,o)&&f(r,o,i);return r}_mergeKnownAndPassthroughObjectFields(t,n,r){let o={};for(let i of Object.
186
186
  keys(t)){if(!Object.hasOwn(n.structure,i)){f(o,i,t[i]);continue}Object.hasOwn(r,i)&&f(o,i,r[i])}for(let[i,s]of Object.entries(
187
187
  r))Object.hasOwn(o,i)||f(o,i,s);return o}_validateObjectValues(t,n,r,o,i,s){let a=n[r],c={...a},u={};f(n,r,c);for(let l of Object.
188
188
  keys(a)){let p=P(t,l);if(this._fieldToBeSkipped(p,i))continue;let d=c[l];if(d===void 0){s.rejectExplicitUndefined?this._mergeErrors(
189
189
  u,this._singleErrorMap(this._typeError(p).errorObject)):delete c[l];continue}if(o.kind==="schema"){let y=o.schema._validateWithOperation(
190
- "replace",o.schema.operations.replace,d,$(i,p));f(c,l,y.validatedObject),this._mergeErrors(u,v(y.errors,p));continue}let m=this.
190
+ "replace",o.schema.operations.replace,d,$(i,p));f(c,l,y.validatedObject),this._mergeErrors(u,z(y.errors,p));continue}let m=this.
191
191
  _normalizeAndValidateValue(o.definition,d,p,c,l,a,i,this._buildArrayItemSettings(o.definition,s));this._mergeErrors(u,m)}
192
192
  return u}_validateArrayItems(t,n,r,o,i,s){let a=n[r],c=a.slice(),u={};f(n,r,c);for(let l=0;l<c.length;l++){let p=P(t,l);
193
193
  if(this._fieldToBeSkipped(p,i))continue;if(!Object.hasOwn(a,l)||c[l]===void 0){s.rejectExplicitUndefined?this._mergeErrors(
194
194
  u,this._singleErrorMap(this._typeError(p).errorObject)):delete c[l];continue}if(o.kind==="schema"){let m=o.schema._validateWithOperation(
195
- "replace",o.schema.operations.replace,c[l],$(i,p));f(c,l,m.validatedObject),this._mergeErrors(u,v(m.errors,p));continue}
195
+ "replace",o.schema.operations.replace,c[l],$(i,p));f(c,l,m.validatedObject),this._mergeErrors(u,z(m.errors,p));continue}
196
196
  let d=this._normalizeAndValidateValue(o.definition,c[l],p,c,l,a,i,this._buildArrayItemSettings(o.definition,s));this._mergeErrors(
197
197
  u,d)}return u}_validateField(t,n,r,o,i){if(!Object.hasOwn(this.structure,t))return{};let s=this.structure[t];if(this._fieldToBeSkipped(
198
198
  t,o))return{};let a=i.isFieldPresent(t),c=n[t],u=c===void 0;return i.enforceRequired&&s.required&&(!a||u)&&!this._paramToBeSkipped(
@@ -210,45 +210,45 @@ path "${u}".`);let l=this._validateSelectedField(c,t[c],n,a,r,o,u);this._mergeEr
210
210
  if(!Object.hasOwn(this.structure,t))return{};let c=this.structure[t],u=n.self===!0,l=nt(n);if(this._fieldToBeSkipped(a,i))
211
211
  return{};let p=Object.hasOwn(r,t),d=r[t],m={};if(!p){if(u&&s.enforceRequired&&c.required&&!this._paramToBeSkipped("requi\
212
212
  red",i.skipParams,a)&&this._mergeErrors(m,this._singleErrorMap({field:a,code:"REQUIRED",message:"Field is required",params:{}})),
213
- u&&s.applyDefaults&&c.defaultTo!==void 0){let w=typeof c.defaultTo=="function"?c.defaultTo():c.defaultTo,R=this._normalizeDefault(
214
- c,w,{fieldPath:a,currentObject:o,containerKey:t,objectBeforeCast:r,options:i,settings:s});this._mergeErrors(m,R.errors),
215
- Object.keys(R.errors).length===0&&f(o,t,R.value)}return m}if(d===void 0)return u&&s.rejectExplicitUndefined?this._singleErrorMap(
216
- this._typeError(a).errorObject):{};let y={[t]:d};if(u){let w=this._normalizeAndValidateValue(c,d,a,y,t,r,i,s);return Object.
217
- hasOwn(y,t)&&y[t]!==void 0?f(o,t,y[t]):y[t]===null&&f(o,t,null),w}if(!l)return{};let T=this._castValue(c,d,a,y,t,r,i,s);
218
- if(Object.keys(T.errors).length>0)return T.errors;if(!T.shouldContinue)return{};let U=this._validateSelectedDescendants(
213
+ u&&s.applyDefaults&&c.defaultTo!==void 0){let T=typeof c.defaultTo=="function"?c.defaultTo():c.defaultTo,I=this._normalizeDefault(
214
+ c,T,{fieldPath:a,currentObject:o,containerKey:t,objectBeforeCast:r,options:i,settings:s});this._mergeErrors(m,I.errors),
215
+ Object.keys(I.errors).length===0&&f(o,t,I.value)}return m}if(d===void 0)return u&&s.rejectExplicitUndefined?this._singleErrorMap(
216
+ this._typeError(a).errorObject):{};let y={[t]:d};if(u){let T=this._normalizeAndValidateValue(c,d,a,y,t,r,i,s);return Object.
217
+ hasOwn(y,t)&&y[t]!==void 0?f(o,t,y[t]):y[t]===null&&f(o,t,null),T}if(!l)return{};let w=this._castValue(c,d,a,y,t,r,i,s);
218
+ if(Object.keys(w.errors).length>0)return w.errors;if(!w.shouldContinue)return{};let U=this._validateSelectedDescendants(
219
219
  c,n.children,a,y,t,i,s);return Q(y[t])&&f(o,t,y[t]),U}_validateSelectedDescendants(t,n,r,o,i,s,a){if(t.type==="object"){
220
220
  let c=this._resolveObjectFieldMode(r,t);if(c.kind!=="nested")throw new Error(`Schema path "${r}" does not support nested\
221
221
  field selection.`);let u=o[i];if(!O(u))return{};let l=c.schema._validateSelectedTree(n,u,$(s,r),{...a,defaultedFields:new Set});
222
- return f(o,i,l.validatedObject),v(l.errors,r)}if(t.type==="array"){let c=this._resolveArrayItemsConfig(r,t);if(!c)throw new Error(
222
+ return f(o,i,l.validatedObject),z(l.errors,r)}if(t.type==="array"){let c=this._resolveArrayItemsConfig(r,t);if(!c)throw new Error(
223
223
  `Schema path "${r}" does not define array items for nested selection.`);return this._validateSelectedArrayItems(r,o,i,c,
224
224
  n,s,a)}throw new Error(`Schema path "${r}" does not support nested field selection.`)}_validateSelectedArrayItems(t,n,r,o,i,s,a){
225
225
  let c=[],u=n[r],l={};f(n,r,c);for(let p of st(Object.keys(i))){if(!/^[0-9]+$/.test(p))throw new Error(`Schema path "${P(
226
- t,p)}" is invalid because array segments must use numeric indexes.`);let d=Number(p),m=P(t,d),y=i[p],T=y.self===!0,U=nt(
227
- y);if(this._fieldToBeSkipped(m,s))continue;if(!Object.hasOwn(u,d)){T&&a.rejectExplicitUndefined&&f(l,m,this._typeError(m).
228
- errorObject);continue}let w=u[d];if(w===void 0){T&&a.rejectExplicitUndefined&&f(l,m,this._typeError(m).errorObject);continue}
229
- if(o.kind==="schema"){if(T){let ie=o.schema._validateWithOperation("replace",o.schema.operations.replace,w,$(s,m));Q(ie.
230
- validatedObject)&&f(c,d,ie.validatedObject),this._mergeErrors(l,v(ie.errors,m));continue}if(!U)continue;let D=o.schema._validateSelectedTree(
231
- y.children,w,$(s,m),{...a,operationName:"replace",operation:o.schema.operations.replace,defaultedFields:new Set});Q(D.validatedObject)&&
232
- f(c,d,D.validatedObject),this._mergeErrors(l,v(D.errors,m));continue}let R=this._buildArrayItemSettings(o.definition,a),
233
- _=[w];if(T){let D=this._normalizeAndValidateValue(o.definition,w,m,_,0,u,s,R);Object.hasOwn(_,0)&&_[0]!==void 0?f(c,d,_[0]):
234
- _[0]===null&&f(c,d,null),this._mergeErrors(l,D);continue}if(!U)continue;let oe=this._castValue(o.definition,w,m,_,0,u,s,
235
- R);if(Object.keys(oe.errors).length>0){this._mergeErrors(l,oe.errors);continue}if(!oe.shouldContinue)continue;let Mt=this.
236
- _validateSelectedDescendants(o.definition,y.children,m,_,0,s,R);Q(_[0])&&f(c,d,_[0]),this._mergeErrors(l,Mt)}return l}validateWith(t,n,r={}){
226
+ t,p)}" is invalid because array segments must use numeric indexes.`);let d=Number(p),m=P(t,d),y=i[p],w=y.self===!0,U=nt(
227
+ y);if(this._fieldToBeSkipped(m,s))continue;if(!Object.hasOwn(u,d)){w&&a.rejectExplicitUndefined&&f(l,m,this._typeError(m).
228
+ errorObject);continue}let T=u[d];if(T===void 0){w&&a.rejectExplicitUndefined&&f(l,m,this._typeError(m).errorObject);continue}
229
+ if(o.kind==="schema"){if(w){let ie=o.schema._validateWithOperation("replace",o.schema.operations.replace,T,$(s,m));Q(ie.
230
+ validatedObject)&&f(c,d,ie.validatedObject),this._mergeErrors(l,z(ie.errors,m));continue}if(!U)continue;let M=o.schema._validateSelectedTree(
231
+ y.children,T,$(s,m),{...a,operationName:"replace",operation:o.schema.operations.replace,defaultedFields:new Set});Q(M.validatedObject)&&
232
+ f(c,d,M.validatedObject),this._mergeErrors(l,z(M.errors,m));continue}let I=this._buildArrayItemSettings(o.definition,a),
233
+ _=[T];if(w){let M=this._normalizeAndValidateValue(o.definition,T,m,_,0,u,s,I);Object.hasOwn(_,0)&&_[0]!==void 0?f(c,d,_[0]):
234
+ _[0]===null&&f(c,d,null),this._mergeErrors(l,M);continue}if(!U)continue;let oe=this._castValue(o.definition,T,m,_,0,u,s,
235
+ I);if(Object.keys(oe.errors).length>0){this._mergeErrors(l,oe.errors);continue}if(!oe.shouldContinue)continue;let Mt=this.
236
+ _validateSelectedDescendants(o.definition,y.children,m,_,0,s,I);Q(_[0])&&f(c,d,_[0]),this._mergeErrors(l,Mt)}return l}validateWith(t,n,r={}){
237
237
  if(!Object.hasOwn(this.operations,t))throw new Error(`Unknown operation "${t}".`);let o=this.operations[t];return this._assertPlainObjectInput(
238
- t,n),this._validateWithOperation(t,o,n,r)}validateAt(t,n,r={}){this._assertPlainObjectInput("validateAt",n);let o=Ee(t),
238
+ t,n),this._validateWithOperation(t,o,n,r)}validateAt(t,n,r={}){this._assertPlainObjectInput("validateAt",n);let o=be(t),
239
239
  {operationName:i,operation:s,validationOptions:a}=this._resolvePathValidationRequest(r),c=this._validateSelectedTree(it(
240
- [t]),n,a,this._buildOperationSettings(i,s,n));return{validatedValue:gr(c.validatedObject,o),errors:c.errors}}validatePaths(t,n,r={}){
240
+ [t]),n,a,this._buildOperationSettings(i,s,n));return{validatedValue:Sr(c.validatedObject,o),errors:c.errors}}validatePaths(t,n,r={}){
241
241
  if(this._assertPlainObjectInput("validatePaths",n),!Array.isArray(t)||t.length===0)throw new Error("validatePaths() expe\
242
242
  cts a non-empty array of schema paths.");let{operationName:o,operation:i,validationOptions:s}=this._resolvePathValidationRequest(
243
243
  r);return this._validateSelectedTree(it(t),n,s,this._buildOperationSettings(o,i,n))}_installOperationMethods(){for(let t of Object.
244
244
  keys(this.operations)){if(t in this)throw new Error(`Operation name "${t}" is reserved and cannot be used as a schema me\
245
- thod.`);this[t]=(n,r={})=>this.validateWith(t,n,r)}}toJsonSchema(t={}){return tt(this,t)}getFieldDefinitions(){return be(
245
+ thod.`);this[t]=(n,r={})=>this.validateWith(t,n,r)}}toJsonSchema(t={}){return tt(this,t)}getFieldDefinitions(){return Ee(
246
246
  this.structure)}getFieldDefinition(t){if(typeof t!="string"||t.trim()==="")throw new Error("Field path must be a non-emp\
247
- ty string.");let n=Te(this,Ee(t.trim()));return n===null?null:be(n)}getFieldMessages(t){let n=this.getFieldDefinition(t);
248
- return!n||typeof n.messages!="object"||n.messages===null?Object.freeze({}):be(n.messages)}cleanup(t,n){let r={};for(let o of Object.
249
- keys(t))Object.hasOwn(this.structure,o)&&this.structure[o][n]&&f(r,o,t[o]);return r}};var{parse:Fo,stringify:_r}=JSON,{keys:ko}=Object,Ar=String,jr="string";var ft="object",Rr=(e,t)=>t;var dt=(e,t,n)=>{let r=Ar(t.push(n)-1);return e.set(n,r),r};var pt=(e,t,n)=>{let r=t&&typeof t===ft?(l,p)=>l===""||-1<t.indexOf(l)?p:void 0:t||Rr,o=new Map,i=[],s=[],a=+dt(o,i,r.call(
250
- {"":e},"",e)),c=!a;for(;a<i.length;)c=!0,s[a]=_r(i[a++],u,n);return"["+s.join(",")+"]";function u(l,p){if(c)return c=!c,
251
- p;let d=r.call(this,l,p);switch(typeof d){case ft:if(d===null)return d;case jr:return o.get(d)||dt(o,i,d)}return d}};var Pr=new Set(["true","1","yes","y","on"]),Nr=new Set(["false","0","no","n","off"]);function zr(e){return e!==null&&(typeof e==
247
+ ty string.");let n=we(this,be(t.trim()));return n===null?null:Ee(n)}getFieldMessages(t){let n=this.getFieldDefinition(t);
248
+ return!n||typeof n.messages!="object"||n.messages===null?Object.freeze({}):Ee(n.messages)}cleanup(t,n){let r={};for(let o of Object.
249
+ keys(t))Object.hasOwn(this.structure,o)&&this.structure[o][n]&&f(r,o,t[o]);return r}};var{parse:Fo,stringify:Ar}=JSON,{keys:xo}=Object,jr=String,Ir="string";var ft="object",Rr=(e,t)=>t;var dt=(e,t,n)=>{let r=jr(t.push(n)-1);return e.set(n,r),r};var pt=(e,t,n)=>{let r=t&&typeof t===ft?(l,p)=>l===""||-1<t.indexOf(l)?p:void 0:t||Rr,o=new Map,i=[],s=[],a=+dt(o,i,r.call(
250
+ {"":e},"",e)),c=!a;for(;a<i.length;)c=!0,s[a]=Ar(i[a++],u,n);return"["+s.join(",")+"]";function u(l,p){if(c)return c=!c,
251
+ p;let d=r.call(this,l,p);switch(typeof d){case ft:if(d===null)return d;case Ir:return o.get(d)||dt(o,i,d)}return d}};var Nr=new Set(["true","1","yes","y","on"]),vr=new Set(["false","0","no","n","off"]);function Cr(e){return e!==null&&(typeof e==
252
252
  "object"||typeof e=="function")&&typeof e.then=="function"}function mt(e){if(typeof e=="number")return Number.isFinite(e)?
253
253
  e:null;if(typeof e=="bigint"){let t=Number(e);return Number.isSafeInteger(t)?t:null}if(typeof e=="string"){let t=e.trim();
254
254
  if(t==="")return null;let n=Number(t);return Number.isFinite(n)?n:null}return null}function _e(e,t){if(Object.is(e,t))return!0;
@@ -256,32 +256,32 @@ if(e instanceof Date&&t instanceof Date)return e.getTime()===t.getTime();if(e in
256
256
  source===t.source&&e.flags===t.flags;if(Array.isArray(e)||Array.isArray(t)){if(!Array.isArray(e)||!Array.isArray(t)||e.length!==
257
257
  t.length)return!1;for(let o=0;o<e.length;o++)if(!_e(e[o],t[o]))return!1;return!0}if(e===null||t===null||typeof e!="objec\
258
258
  t"||typeof t!="object"||Object.getPrototypeOf(e)!==Object.getPrototypeOf(t))return!1;let n=Object.keys(e),r=Object.keys(
259
- t);if(n.length!==r.length)return!1;for(let o of n)if(!Object.hasOwn(t,o)||!_e(e[o],t[o]))return!1;return!0}var Cr={install(e){
259
+ t);if(n.length!==r.length)return!1;for(let o of n)if(!Object.hasOwn(t,o)||!_e(e[o],t[o]))return!1;return!0}var zr={install(e){
260
260
  let{addType:t,addValidator:n}=e;t("none",r=>r.value),t("file",r=>{let o=r.value;o==null&&r.throwTypeError();let i=typeof o;
261
261
  if(i==="string"||i==="number"||i==="boolean"){let s=o.toString();return r.definition.noTrim?s:s.trim()}r.throwTypeError()}),
262
262
  t("string",r=>{let o=r.value;if(o==null)return"";let i=typeof o;if(i==="string"||i==="number"||i==="boolean"){let s=o.toString();
263
263
  return r.definition.noTrim?s:s.trim()}r.throwTypeError()}),t("blob",r=>r.value),t("number",r=>{let o=mt(r.value);return o===
264
264
  null&&r.throwTypeError(),o}),t("integer",r=>{let o=mt(r.value);return(o===null||!Number.isInteger(o))&&r.throwTypeError(),
265
265
  o}),t("epochMilliseconds",r=>{let o=ue(r.value,864e13);return o===null&&r.throwTypeError(),o}),t("epochSeconds",r=>{let o=ue(
266
- r.value,864e10);return o===null&&r.throwTypeError(),o}),t("dateTime",r=>{let o=k(r.definition,r.fieldName);return Je(r.value,
267
- o)||r.throwTypeError(),r.value}),t("date",r=>(He(r.value)||r.throwTypeError(),r.value)),t("time",r=>{let o=k(r.definition,
266
+ r.value,864e10);return o===null&&r.throwTypeError(),o}),t("dateTime",r=>{let o=F(r.definition,r.fieldName);return Je(r.value,
267
+ o)||r.throwTypeError(),r.value}),t("date",r=>(He(r.value)||r.throwTypeError(),r.value)),t("time",r=>{let o=F(r.definition,
268
268
  r.fieldName);return Ke(r.value,o)||r.throwTypeError(),r.value}),t("array",r=>r.definition.type==="array"&&!Array.isArray(
269
269
  r.value)?[r.value]:r.value),t("object",r=>(O(r.value)||r.throwTypeError(),r.value)),t("serialize",r=>{try{return JSON.stringify(
270
270
  r.value)}catch{try{return pt(r.value)}catch{r.throwTypeError()}}}),t("boolean",r=>{if(typeof r.value=="boolean")return r.
271
271
  value;if(typeof r.value=="number"){if(r.value===1)return!0;if(r.value===0)return!1;r.throwTypeError()}if(typeof r.value==
272
272
  "bigint"){if(r.value===1n)return!0;if(r.value===0n)return!1;r.throwTypeError()}if(typeof r.value=="string"){let o=String(
273
273
  r.definition.stringFalseWhen||"false").trim().toLowerCase(),i=String(r.definition.stringTrueWhen||"true").trim().toLowerCase(),
274
- s=r.value.trim().toLowerCase(),a=new Set([...Nr,o]),c=new Set([...Pr,i]);if(a.has(s))return!1;if(c.has(s))return!0}r.throwTypeError()}),
274
+ s=r.value.trim().toLowerCase(),a=new Set([...vr,o]),c=new Set([...Nr,i]);if(a.has(s))return!1;if(c.has(s))return!0}r.throwTypeError()}),
275
275
  t("id",r=>{if(typeof r.value=="number"){if(Number.isSafeInteger(r.value)&&r.value>0)return r.value;r.throwTypeError()}if(typeof r.
276
276
  value=="bigint"){if(r.value>0n&&r.value<=BigInt(Number.MAX_SAFE_INTEGER))return Number(r.value);r.throwTypeError()}if(typeof r.
277
277
  value=="string"){let o=r.value.trim();/^[1-9][0-9]*$/.test(o)||r.throwTypeError();let i=Number(o);return Number.isSafeInteger(
278
278
  i)||r.throwTypeError(),i}r.throwTypeError()}),n("minLength",r=>{r.value!==void 0&&r.definition.type==="string"&&r.value.
279
279
  toString&&r.value.toString().length<r.parameterValue&&r.throwParamError("MIN_LENGTH",`Length must be at least ${r.parameterValue}\
280
- characters.`,{min:r.parameterValue,actual:r.value.toString().length})}),n("min",r=>{r.value!==void 0&&z(r.definition)&&
280
+ characters.`,{min:r.parameterValue,actual:r.value.toString().length})}),n("min",r=>{r.value!==void 0&&v(r.definition)&&
281
281
  typeof r.value=="number"&&r.value<r.parameterValue&&r.throwParamError("MIN_VALUE",`Value must be at least ${r.parameterValue}\
282
282
  .`,{min:r.parameterValue,actual:r.value})}),n("maxLength",r=>{r.value!==void 0&&r.definition.type==="string"&&r.value.toString&&
283
283
  r.value.toString().length>r.parameterValue&&r.throwParamError("MAX_LENGTH",`Length must be no more than ${r.parameterValue}\
284
- characters.`,{max:r.parameterValue,actual:r.value.toString().length})}),n("max",r=>{r.value!==void 0&&z(r.definition)&&
284
+ characters.`,{max:r.parameterValue,actual:r.value.toString().length})}),n("max",r=>{r.value!==void 0&&v(r.definition)&&
285
285
  typeof r.value=="number"&&r.value>r.parameterValue&&r.throwParamError("MAX_VALUE",`Value must be no more than ${r.parameterValue}\
286
286
  .`,{max:r.parameterValue,actual:r.value})}),n("enum",r=>{if(!Array.isArray(r.parameterValue))throw new Error(`Enum for ${r.
287
287
  fieldName} must be an array.`);r.parameterValue.some(i=>_e(i,r.value))||r.throwParamError("ENUM_VALUE","Value must match\
@@ -292,7 +292,7 @@ r.throwParamError("PATTERN","Value does not match the required pattern.",{patter
292
292
  parameterValue){if(r.definition.type!=="boolean")throw new Error(`strictBoolean can only be used on boolean fields (${r.
293
293
  fieldName}).`);typeof r.valueBeforeCast!="boolean"&&r.throwParamError("STRICT_BOOLEAN","Value must be a boolean.")}}),n(
294
294
  "validator",r=>{if(typeof r.parameterValue!="function")throw new Error(`Validator for ${r.fieldName} must be a function.`);
295
- let o=r.parameterValue(r.value,r.object,r);if(zr(o))throw new Error(`Custom validator for "${r.fieldName}" must be synch\
295
+ let o=r.parameterValue(r.value,r.object,r);if(Cr(o))throw new Error(`Custom validator for "${r.fieldName}" must be synch\
296
296
  ronous.`);typeof o=="string"&&r.throwParamError("CUSTOM_VALIDATOR_FAILED",o)}),n("uppercase",r=>{if(typeof r.value=="str\
297
297
  ing")return r.value.toUpperCase()}),n("lowercase",r=>{if(typeof r.value=="string")return r.value.toLowerCase()}),n("leng\
298
298
  th",r=>{if(typeof r.value=="string")return r.value.substr(0,r.parameterValue);Number.isInteger(Number(r.valueBeforeCast))&&
@@ -301,134 +301,154 @@ ed character range.",{max:r.parameterValue,actual:String(r.valueBeforeCast).leng
301
301
  typeof r.value=="string"&&r.value===""&&r.throwParamError("NOT_EMPTY","Field cannot be empty.")}),n("required",()=>{}),n(
302
302
  "unsigned",()=>{}),n("precision",()=>{}),n("scale",()=>{}),n("temporalPrecision",r=>{if(r.definition.type!=="time"&&r.definition.
303
303
  type!=="dateTime")throw new Error(`temporalPrecision can only be used on time or dateTime fields (${r.fieldName}).`)}),n(
304
- "nullable",()=>{}),n("nullOnEmpty",()=>{}),n("defaultTo",()=>{})}},ht=Cr;var St=new WeakMap,bt=new WeakMap,Ot=Symbol.for("json-rest-schema.registry-metadata");function vr(e,t,n){if(typeof n!="f\
305
- unction")throw new Error(`Type handler for '${t}' must be a function.`);f(e,t,n)}function $r(e,t,n){if(typeof n!="functi\
304
+ "nullable",()=>{}),n("nullOnEmpty",()=>{}),n("defaultTo",()=>{})}},ht=zr;var St=new WeakMap,Et=new WeakMap,Ot=Symbol.for("json-rest-schema.registry-metadata");function $r(e,t,n){if(typeof n!="f\
305
+ unction")throw new Error(`Type handler for '${t}' must be a function.`);f(e,t,n)}function kr(e,t,n){if(typeof n!="functi\
306
306
  on")throw new Error(`Validator handler for '${t}' must be a function.`);f(e,t,n)}function te(e={}){let t=Object.create(null);
307
307
  for(let[n,r]of Object.entries(e))f(t,n,r);return t}function Lr(e,t){if(typeof e.install!="function")throw new Error("Plu\
308
- gin must have an install method.");e.install(t)}function yt(e,t,n){St.set(e,t),bt.set(e,n),Object.defineProperty(e,Ot,{value:Object.
308
+ gin must have an install method.");e.install(t)}function yt(e,t,n){St.set(e,t),Et.set(e,n),Object.defineProperty(e,Ot,{value:Object.
309
309
  freeze({getTypes:()=>t,getValidators:()=>n}),enumerable:!1,configurable:!1,writable:!1})}function Mr(e){if(!e||typeof e!=
310
- "object"&&typeof e!="function")return null;let t=St.get(e),n=bt.get(e);if(t&&n)return{types:t,validators:n};let r=e[Ot];
310
+ "object"&&typeof e!="function")return null;let t=St.get(e),n=Et.get(e);if(t&&n)return{types:t,validators:n};let r=e[Ot];
311
311
  return r&&typeof r.getTypes=="function"&&typeof r.getValidators=="function"?{types:r.getTypes(),validators:r.getValidators()}:
312
312
  typeof e=="object"&&e.types&&typeof e.types=="object"&&e.validators&&typeof e.validators=="object"&&typeof e.create=="fu\
313
313
  nction"&&typeof e.replace=="function"&&typeof e.patch=="function"&&typeof e.toJsonSchema=="function"?{types:e.types,validators:e.
314
314
  validators}:null}function Dr(e){return e.length===1&&Array.isArray(e[0])?e[0]:e}function Fr(e,t){return e===t}function gt(e,t,n){
315
315
  for(let[r,o]of Object.entries(t)){if(Object.hasOwn(e,r)&&!Fr(e[r],o))throw new Error(`Cannot merge schema factories with\
316
- conflicting ${n} "${r}".`);f(e,r,o)}}function kr(e,t,n){let r=Dr(n).filter(Boolean);if(r.length<1)return{types:te(e),validators:te(
316
+ conflicting ${n} "${r}".`);f(e,r,o)}}function xr(e,t,n){let r=Dr(n).filter(Boolean);if(r.length<1)return{types:te(e),validators:te(
317
317
  t)};let o=Object.create(null),i=Object.create(null);for(let s of r){let a=Mr(s);if(!a)throw new Error("Factory sources m\
318
318
  ust be schema instances or schema factories created by json-rest-schema.");gt(o,a.types,"type"),gt(i,a.validators,"valid\
319
- ator")}return{types:o,validators:i}}function Et({types:e={},validators:t={},installCore:n=!0}={}){let r=te(e),o=te(t),i=(s,a={})=>{
320
- let c=new L(s,r,o,a.operations);return yt(c,r,o),c};return yt(i,r,o),i.addType=(s,a)=>{vr(r,s,a)},i.addValidator=(s,a)=>{
321
- $r(o,s,a)},i.use=s=>{Lr(s,{addType:i.addType,addValidator:i.addValidator})},i.createFactory=(...s)=>{let a=kr(r,o,s);return Et(
322
- {types:a.types,validators:a.validators,installCore:!1})},n&&i.use(ht),i}var h=Et({installCore:!0});function b(e,t=new WeakSet){if(!e||typeof e!="object"||t.has(e))return e;t.add(e);for(let n of Object.getOwnPropertyNames(
323
- e))b(e[n],t);return Object.freeze(e)}var xr=new Set(["create","replace","patch"]),ai=Object.freeze({REQUIRED:"required",TYPE_CAST_FAILED:"default",NOT_NULLABLE:"\
324
- default",MIN_LENGTH:"minLength",MAX_LENGTH:"maxLength",MIN_VALUE:"min",MAX_VALUE:"max",PATTERN:"pattern",ENUM_VALUE:"enu\
325
- m",FIELD_NOT_ALLOWED:"additionalProperties",CUSTOM_VALIDATOR_FAILED:"default"});function V(e){return!!e&&typeof e=="obje\
326
- ct"&&typeof e.create=="function"&&typeof e.replace=="function"&&typeof e.patch=="function"&&typeof e.toJsonSchema=="func\
327
- tion"}function Tt(e=null,{defaultMode:t="create",context:n="schema definition.mode"}={}){let r=S(e),o=g(t).toLowerCase()||"cre\
328
- ate",i=Object.prototype.hasOwnProperty.call(r,"mode")?g(r.mode).toLowerCase():"";if(!i)return o;if(!xr.has(i))throw new TypeError(
329
- `${n} must be one of: create, replace, patch.`);return i}function qr(e){return!!e&&typeof e=="object"&&!Array.isArray(e)&&(Object.prototype.hasOwnProperty.call(e,"schema")||Object.
319
+ ator")}return{types:o,validators:i}}function bt({types:e={},validators:t={},installCore:n=!0}={}){let r=te(e),o=te(t),i=(s,a={})=>{
320
+ let c=new k(s,r,o,a.operations);return yt(c,r,o),c};return yt(i,r,o),i.addType=(s,a)=>{$r(r,s,a)},i.addValidator=(s,a)=>{
321
+ kr(o,s,a)},i.use=s=>{Lr(s,{addType:i.addType,addValidator:i.addValidator})},i.createFactory=(...s)=>{let a=xr(r,o,s);return bt(
322
+ {types:a.types,validators:a.validators,installCore:!1})},n&&i.use(ht),i}var h=bt({installCore:!0});function E(e,t=new WeakSet){if(!e||typeof e!="object"||t.has(e))return e;t.add(e);for(let n of Object.getOwnPropertyNames(
323
+ e))E(e[n],t);return Object.freeze(e)}var Vr=new Set(["create","replace","patch"]),ci=Object.freeze({REQUIRED:{messageKey:"required",code:"kernel.validation.f\
324
+ ield.required"},TYPE_CAST_FAILED:{messageKey:"default",code:"kernel.validation.field.typeCastFailed"},NOT_NULLABLE:{messageKey:"\
325
+ default",code:"kernel.validation.field.notNullable"},MIN_LENGTH:{messageKey:"minLength",code:"kernel.validation.field.mi\
326
+ nLength"},MAX_LENGTH:{messageKey:"maxLength",code:"kernel.validation.field.maxLength"},MIN_VALUE:{messageKey:"min",code:"\
327
+ kernel.validation.field.minValue"},MAX_VALUE:{messageKey:"max",code:"kernel.validation.field.maxValue"},PATTERN:{messageKey:"\
328
+ pattern",code:"kernel.validation.field.pattern"},ENUM_VALUE:{messageKey:"enum",code:"kernel.validation.field.enumValue"},
329
+ FIELD_NOT_ALLOWED:{messageKey:"additionalProperties",code:"kernel.validation.field.notAllowed"},CUSTOM_VALIDATOR_FAILED:{
330
+ messageKey:"validator",code:""},STRICT_BOOLEAN:{messageKey:"default",code:"kernel.validation.field.strictBoolean"},RANGE_EXCEEDED:{
331
+ messageKey:"default",code:"kernel.validation.field.rangeExceeded"},NOT_EMPTY:{messageKey:"default",code:"kernel.validati\
332
+ on.field.notEmpty"}}),ui=Object.freeze({code:"kernel.validation.invalid",message:"Invalid value."});function V(e){return!!e&&
333
+ typeof e=="object"&&typeof e.create=="function"&&typeof e.replace=="function"&&typeof e.patch=="function"&&typeof e.toJsonSchema==
334
+ "function"}function Tt(e=null,{defaultMode:t="create",context:n="schema definition.mode"}={}){let r=S(e),o=g(t).toLowerCase()||"cre\
335
+ ate",i=Object.prototype.hasOwnProperty.call(r,"mode")?g(r.mode).toLowerCase():"";if(!i)return o;if(!Vr.has(i))throw new TypeError(
336
+ `${n} must be one of: create, replace, patch.`);return i}function Br(e){return!!e&&typeof e=="object"&&!Array.isArray(e)&&(Object.prototype.hasOwnProperty.call(e,"schema")||Object.
330
337
  prototype.hasOwnProperty.call(e,"mode"))}function j(e,{context:t="schema definition",defaultMode:n=""}={}){if(e==null)return null;
331
- if(!qr(e))throw new TypeError(`${t} must be a schema definition object.`);let r=S(e);if(!Object.prototype.hasOwnProperty.
338
+ if(!Br(e))throw new TypeError(`${t} must be a schema definition object.`);let r=S(e);if(!Object.prototype.hasOwnProperty.
332
339
  call(r,"schema"))throw new TypeError(`${t}.schema is required.`);if(!V(r.schema))throw new TypeError(`${t}.schema must b\
333
340
  e a json-rest-schema schema instance.`);let o={schema:r.schema},i=g(n).toLowerCase();return o.mode=Tt(r,{defaultMode:i||
334
- "patch",context:`${t}.mode`}),Object.freeze(o)}function M(e){let t=j(e,{context:"cursor list item",defaultMode:"replace"});return b({schema:h({items:{type:"array",required:!0,
335
- items:t.schema},nextCursor:{type:"string",required:!1,nullable:!0,minLength:1}}),mode:"replace"})}var Br=h({cursor:{type:"id",required:!1},limit:{type:"number",required:!1,min:1,unsigned:!0}}),Ur=Object.freeze({schema:Br,
336
- mode:"patch"});var wt=Object.freeze({type:"string",pattern:"^(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d)?$",minLength:5}),Hr=Object.freeze(
337
- {...wt,nullable:!0});var E="^[1-9][0-9]*$",Ae=b({type:"string",minLength:1,pattern:E}),Jr=b({...Ae,nullable:!0}),Gr=b({schema:h({recordId:{...Ae,
338
- required:!0,messages:{pattern:"Record id must be a canonical positive integer string."}}}),mode:"patch"});var Wr=Object.freeze(["body","query","params","input","output"]);function N(e,t="patch",{context:n="schema definition"}={}){
341
+ "patch",context:`${t}.mode`}),Object.freeze(o)}function L(e){let t=j(e,{context:"cursor list item",defaultMode:"replace"});return E({schema:h({items:{type:"array",required:!0,
342
+ items:t.schema},nextCursor:{type:"string",required:!1,nullable:!0,minLength:1}}),mode:"replace"})}var Ur=h({cursor:{type:"id",required:!1},limit:{type:"number",required:!1,min:1,unsigned:!0}}),Hr=Object.freeze({schema:Ur,
343
+ mode:"patch"});var _t=Object.freeze({type:"string",pattern:"^(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d)?$",minLength:5}),Kr=Object.freeze(
344
+ {..._t,nullable:!0});var Ci=new Map([{keyword:"required",code:"kernel.validation.required"},{keyword:"type",code:"kernel.validation.type"},{keyword:"\
345
+ minLength",code:"kernel.validation.minLength"},{keyword:"maxLength",code:"kernel.validation.maxLength"},{keyword:"minimu\
346
+ m",code:"kernel.validation.minimum"},{keyword:"maximum",code:"kernel.validation.maximum"},{keyword:"exclusiveMinimum",code:"\
347
+ kernel.validation.exclusiveMinimum"},{keyword:"exclusiveMaximum",code:"kernel.validation.exclusiveMaximum"},{keyword:"mu\
348
+ ltipleOf",code:"kernel.validation.multipleOf"},{keyword:"pattern",code:"kernel.validation.pattern"},{keyword:"format",code:"\
349
+ kernel.validation.format"},{keyword:"enum",code:"kernel.validation.enum"},{keyword:"const",code:"kernel.validation.const"},
350
+ {keyword:"minItems",code:"kernel.validation.minItems"},{keyword:"maxItems",code:"kernel.validation.maxItems"},{keyword:"\
351
+ additionalItems",code:"kernel.validation.additionalItems"},{keyword:"uniqueItems",code:"kernel.validation.uniqueItems"},
352
+ {keyword:"minProperties",code:"kernel.validation.minProperties"},{keyword:"maxProperties",code:"kernel.validation.maxPro\
353
+ perties"},{keyword:"additionalProperties",code:"kernel.validation.additionalProperties"},{keyword:"propertyNames",code:"\
354
+ kernel.validation.propertyNames"},{keyword:"oneOf",code:"kernel.validation.oneOf"},{keyword:"anyOf",code:"kernel.validat\
355
+ ion.anyOf"},{keyword:"not",code:"kernel.validation.not"},{keyword:"if",code:"kernel.validation.if"}].map(({keyword:e,code:t})=>[
356
+ e,t]));var b="^[1-9][0-9]*$",Ae=E({type:"string",minLength:1,pattern:b}),Gr=E({...Ae,nullable:!0}),Wr=E({schema:h({recordId:{...Ae,
357
+ required:!0,messages:{pattern:{code:"kernel.validation.recordIdInvalid",message:"Record id must be a canonical positive \
358
+ integer string."}}}}),mode:"patch"});var Xr=Object.freeze(["body","query","params","input","output"]);function N(e,t="patch",{context:n="schema definition"}={}){
339
359
  return j({schema:e,mode:t},{context:n,defaultMode:"patch"})}function je(e,{context:t="schema definition",defaultMode:n="\
340
- patch"}={}){if(e==null)return e;let r=V(e)?{schema:e,mode:n}:e;return j(r,{context:t,defaultMode:n})}function Xr(e,t={}){
360
+ patch"}={}){if(e==null)return e;let r=V(e)?{schema:e,mode:n}:e;return j(r,{context:t,defaultMode:n})}function Yr(e,t={}){
341
361
  let n=g(e).toLowerCase();if(n==="output")return"replace";if(n!=="body")return"patch";let r=g(t?.method).toUpperCase();return r===
342
- "POST"?"create":r==="PUT"?"replace":"patch"}function Yr(e,t=null,n=null){if(!t||typeof t!="object"||Array.isArray(t))throw new TypeError(
362
+ "POST"?"create":r==="PUT"?"replace":"patch"}function Qr(e,t=null,n=null){if(!t||typeof t!="object"||Array.isArray(t))throw new TypeError(
343
363
  `defineResource operations.${e} must be an object.`);let r=S(t),o={...r};n&&typeof n=="object"&&!Array.isArray(n)&&!Object.
344
- hasOwn(r,"messages")&&(o.messages=n);for(let i of Wr){if(!Object.hasOwn(r,i))continue;let s=Xr(i,r);o[i]=je(r[i],{context:`\
345
- defineResource operations.${e}.${i}`,defaultMode:s})}return b(o)}function Qr(e=null,t=null){let n=S(e),r={};for(let[o,i]of Object.
346
- entries(n)){let s=g(o);s&&(r[s]=Yr(s,i,t))}return Object.freeze(r)}function Zr(e,{context:t="defineResource resource.nam\
364
+ hasOwn(r,"messages")&&(o.messages=n);for(let i of Xr){if(!Object.hasOwn(r,i))continue;let s=Yr(i,r);o[i]=je(r[i],{context:`\
365
+ defineResource operations.${e}.${i}`,defaultMode:s})}return E(o)}function Zr(e=null,t=null){let n=S(e),r={};for(let[o,i]of Object.
366
+ entries(n)){let s=g(o);s&&(r[s]=Qr(s,i,t))}return Object.freeze(r)}function en(e,{context:t="defineResource resource.nam\
347
367
  espace"}={}){let n=g(e);if(!n)throw new TypeError(`${t} requires a non-empty namespace.`);return n}function re(e={}){let t=S(
348
- e),n=Object.hasOwn(t,"messages")?S(t.messages):null;return b({...t,namespace:Zr(t.namespace),...n?{messages:n}:{},operations:Qr(
349
- t.operations,n)})}var Re=8e3,_t=20,rn=200,At=500,Ie={type:"array",required:!1,maxItems:10,items:{type:"string",minLength:1,maxLength:256}},
350
- nn=h({attachmentIds:Ie,role:{type:"string",required:!0,enum:["user","assistant"]},content:{type:"string",required:!0,minLength:1,
351
- maxLength:Re}}),on=h({locale:{type:"string",required:!1,maxLength:64},timezone:{type:"string",required:!1,maxLength:64}}),
352
- sn=h({attachmentIds:Ie,integrationId:{type:"string",required:!1,minLength:1,maxLength:128},messageId:{type:"string",required:!0,
353
- minLength:1,maxLength:128},conversationId:{type:"string",required:!1,minLength:1,pattern:E},input:{type:"string",required:!0,
354
- minLength:1,maxLength:Re},history:{type:"array",required:!1,maxItems:_t,items:nn},clientContext:{type:"object",required:!1,
355
- schema:on}}),an=h({cursor:{type:"id",required:!1},limit:{type:"number",required:!1,min:1,max:rn},status:{type:"string",required:!1,
356
- minLength:1,maxLength:32}}),Pe=h({id:{type:"string",required:!0,minLength:1,pattern:E},workspaceId:{type:"string",required:!0,
357
- nullable:!0,minLength:1,pattern:E},title:{type:"string",required:!0},createdByUserId:{type:"string",required:!0,nullable:!0,
358
- minLength:1,pattern:E},status:{type:"string",required:!0},provider:{type:"string",required:!0},model:{type:"string",required:!0},
368
+ e),n=Object.hasOwn(t,"messages")?S(t.messages):null;return E({...t,namespace:en(t.namespace),...n?{messages:n}:{},operations:Zr(
369
+ t.operations,n)})}var Ie=8e3,At=20,nn=200,jt=500,Re={type:"array",required:!1,maxItems:10,items:{type:"string",minLength:1,maxLength:256}},
370
+ on=h({attachmentIds:Re,role:{type:"string",required:!0,enum:["user","assistant"]},content:{type:"string",required:!0,minLength:1,
371
+ maxLength:Ie}}),sn=h({locale:{type:"string",required:!1,maxLength:64},timezone:{type:"string",required:!1,maxLength:64}}),
372
+ an=h({attachmentIds:Re,integrationId:{type:"string",required:!1,minLength:1,maxLength:128},messageId:{type:"string",required:!0,
373
+ minLength:1,maxLength:128},conversationId:{type:"string",required:!1,minLength:1,pattern:b},input:{type:"string",required:!0,
374
+ minLength:1,maxLength:Ie},history:{type:"array",required:!1,maxItems:At,items:on},clientContext:{type:"object",required:!1,
375
+ schema:sn}}),cn=h({cursor:{type:"id",required:!1},limit:{type:"number",required:!1,min:1,max:nn},status:{type:"string",required:!1,
376
+ minLength:1,maxLength:32}}),Pe=h({id:{type:"string",required:!0,minLength:1,pattern:b},workspaceId:{type:"string",required:!0,
377
+ nullable:!0,minLength:1,pattern:b},title:{type:"string",required:!0},createdByUserId:{type:"string",required:!0,nullable:!0,
378
+ minLength:1,pattern:b},status:{type:"string",required:!0},provider:{type:"string",required:!0},model:{type:"string",required:!0},
359
379
  surfaceId:{type:"string",required:!0},startedAt:{type:"string",required:!0,minLength:1},endedAt:{type:"string",required:!0,
360
380
  nullable:!0,minLength:1},messageCount:{type:"integer",required:!0,min:0},metadata:{type:"object",required:!0,additionalProperties:!0},
361
- createdAt:{type:"string",required:!0,minLength:1},updatedAt:{type:"string",required:!0,minLength:1}}),cn=h({id:{type:"st\
362
- ring",required:!0,minLength:1,pattern:E},conversationId:{type:"string",required:!0,minLength:1,pattern:E},workspaceId:{type:"\
363
- string",required:!0,nullable:!0,minLength:1,pattern:E},seq:{type:"integer",required:!0,min:1},role:{type:"string",required:!0,
381
+ createdAt:{type:"string",required:!0,minLength:1},updatedAt:{type:"string",required:!0,minLength:1}}),un=h({id:{type:"st\
382
+ ring",required:!0,minLength:1,pattern:b},conversationId:{type:"string",required:!0,minLength:1,pattern:b},workspaceId:{type:"\
383
+ string",required:!0,nullable:!0,minLength:1,pattern:b},seq:{type:"integer",required:!0,min:1},role:{type:"string",required:!0,
364
384
  minLength:1},kind:{type:"string",required:!0,minLength:1},clientMessageSid:{type:"string",required:!0},actorUserId:{type:"\
365
- string",required:!0,nullable:!0,minLength:1,pattern:E},contentText:{type:"string",required:!0,nullable:!0},createdAt:{type:"\
366
- string",required:!0,minLength:1},metadata:{type:"object",required:!0,additionalProperties:!0}}),un=h({conversationId:{type:"\
367
- id",required:!0}}),ln=h({page:{type:"number",required:!1,min:1},pageSize:{type:"number",required:!1,min:1,max:At}}),fn=h(
385
+ string",required:!0,nullable:!0,minLength:1,pattern:b},contentText:{type:"string",required:!0,nullable:!0},createdAt:{type:"\
386
+ string",required:!0,minLength:1},metadata:{type:"object",required:!0,additionalProperties:!0}}),ln=h({conversationId:{type:"\
387
+ id",required:!0}}),fn=h({page:{type:"number",required:!1,min:1},pageSize:{type:"number",required:!1,min:1,max:jt}}),dn=h(
368
388
  {page:{type:"integer",required:!0,min:1},pageSize:{type:"integer",required:!0,min:1},total:{type:"integer",required:!0,min:0},
369
389
  totalPages:{type:"integer",required:!0,min:1},conversation:{type:"object",required:!0,schema:Pe},entries:{type:"array",required:!0,
370
- items:cn}}),dn=N(Pe,"replace"),pn=re({namespace:"assistant",operations:{chatStream:{method:"POST",body:sn},conversationsList:{
371
- method:"GET",query:an,output:M(N(Pe,"replace"))},conversationMessagesList:{method:"GET",params:un,query:ln,output:fn}}});function jt(e={},t=""){let n={};for(let[r,o]of Object.entries(e)){let i=o?.operations?.[t];if(!i)continue;let s={...o};delete s.
372
- operations,i!==!0&&Object.assign(s,i),n[r]=s}return n}function mn(e=""){return g(e).toLowerCase().replace(/[^a-z0-9-]+/g,"-").replace(/-+/g,"-").replace(/^-+|-+$/g,"")}function Ne(e,{
373
- context:t="requireCrudNamespace"}={}){let n=mn(e);if(!n)throw new TypeError(`${t} requires a non-empty namespace.`);return n}
374
- function Rt(e=""){return`${Ne(e,{context:"resolveCrudRecordChangedEvent"}).replace(/-/g,"_")}.record.changed`}var hn=Object.freeze(["list","view","create","patch","delete"]),It=Object.freeze(["list","view","create","replace","patc\
375
- h","delete"]),yn=b({list:{method:"GET",outputKind:"list",includeRealtimeEvent:!0},view:{method:"GET",outputKind:"record"},
390
+ items:un}}),pn=N(Pe,"replace"),mn=re({namespace:"assistant",operations:{chatStream:{method:"POST",body:an},conversationsList:{
391
+ method:"GET",query:cn,output:L(N(Pe,"replace"))},conversationMessagesList:{method:"GET",params:ln,query:fn,output:dn}}});function It(e={},t=""){let n={};for(let[r,o]of Object.entries(e)){let i=o?.operations?.[t];if(!i)continue;let s={...o};delete s.
392
+ operations,i!==!0&&Object.assign(s,i),n[r]=s}return n}function hn(e=""){return g(e).toLowerCase().replace(/[^a-z0-9-]+/g,"-").replace(/-+/g,"-").replace(/^-+|-+$/g,"")}function Ne(e,{
393
+ context:t="requireCrudNamespace"}={}){let n=hn(e);if(!n)throw new TypeError(`${t} requires a non-empty namespace.`);return n}
394
+ function Rt(e=""){return`${Ne(e,{context:"resolveCrudRecordChangedEvent"}).replace(/-/g,"_")}.record.changed`}var yn=Object.freeze(["list","view","create","patch","delete"]),Pt=Object.freeze(["list","view","create","replace","patc\
395
+ h","delete"]),gn=E({list:{method:"GET",outputKind:"list",includeRealtimeEvent:!0},view:{method:"GET",outputKind:"record"},
376
396
  create:{method:"POST",outputKind:"record",bodyOperation:"create",bodyMode:"create",explicitBodyKeys:["createBody","body"]},
377
397
  replace:{method:"PUT",outputKind:"record",bodyOperation:"replace",bodyMode:"replace",explicitBodyKeys:["replaceBody","bo\
378
398
  dy","createBody"]},patch:{method:"PATCH",outputKind:"record",bodyOperation:"patch",bodyMode:"patch",explicitBodyKeys:["p\
379
- atchBody","body"]},delete:{method:"DELETE",outputKind:"delete"}});function Pt(){return{type:"string",required:!0,minLength:1,
380
- pattern:E}}function gn(e={}){return g(e?.contract?.lookup?.containerKey)}function ze(e={},t="output"){return jt(e?.schema,
381
- t)}function Sn(e={}){let t=ze(e,"output");if(Object.keys(t).length<1)throw new Error("defineCrudResource derived output \
382
- requires explicit crud.output or at least one schema field with operations.output.");let n={id:Pt(),...t},r=gn(e);return r&&
383
- (n[r]={type:"object",required:!1}),N(h(n),"replace",{context:"defineCrudResource derived output"})}function bn(e={},t="p\
384
- atch",n="patch"){let r=ze(e,t);if(t==="replace"&&Object.keys(r).length===0&&(r=ze(e,"create")),Object.keys(r).length<1){
399
+ atchBody","body"]},delete:{method:"DELETE",outputKind:"delete"}});function Nt(){return{type:"string",required:!0,minLength:1,
400
+ pattern:b}}function Sn(e={}){return g(e?.contract?.lookup?.containerKey)}function ve(e={},t="output"){return It(e?.schema,
401
+ t)}function En(e={}){let t=ve(e,"output");if(Object.keys(t).length<1)throw new Error("defineCrudResource derived output \
402
+ requires explicit crud.output or at least one schema field with operations.output.");let n={id:Nt(),...t},r=Sn(e);return r&&
403
+ (n[r]={type:"object",required:!1}),N(h(n),"replace",{context:"defineCrudResource derived output"})}function On(e={},t="p\
404
+ atch",n="patch"){let r=ve(e,t);if(t==="replace"&&Object.keys(r).length===0&&(r=ve(e,"create")),Object.keys(r).length<1){
385
405
  let o=t==="replace"?"operations.replace or operations.create":`operations.${t}`;throw new Error(`defineCrudResource deri\
386
406
  ved ${t} body requires explicit crud.${t}Body or at least one schema field with ${o}.`)}return N(h(r),n,{context:`define\
387
- CrudResource derived ${t} body`})}function On(){return N(h({id:Pt(),deleted:{type:"boolean",required:!0}}),"replace",{context:"\
388
- defineCrudResource delete output"})}function En(e="",{context:t="crud operation name"}={}){let n=g(e).toLowerCase();if(It.
389
- includes(n))return n;throw new Error(`${t} must be one of: ${It.join(", ")}. Received: ${JSON.stringify(e)}.`)}function Tn(e=""){
390
- let t=yn[e];if(t)return t;throw new Error(`createCrudOperationDefinition received unsupported operation "${e}".`)}function wn(e={}){
391
- let t=Array.isArray(e?.crudOperations)?e.crudOperations:hn,n=[],r=new Set;for(let o of t){let i=En(o,{context:"defineCru\
392
- dResource crudOperations"});r.has(i)||(r.add(i),n.push(i))}return n}function _n(e={},t=[]){for(let n of Array.isArray(t)?
407
+ CrudResource derived ${t} body`})}function bn(){return N(h({id:Nt(),deleted:{type:"boolean",required:!0}}),"replace",{context:"\
408
+ defineCrudResource delete output"})}function wn(e="",{context:t="crud operation name"}={}){let n=g(e).toLowerCase();if(Pt.
409
+ includes(n))return n;throw new Error(`${t} must be one of: ${Pt.join(", ")}. Received: ${JSON.stringify(e)}.`)}function Tn(e=""){
410
+ let t=gn[e];if(t)return t;throw new Error(`createCrudOperationDefinition received unsupported operation "${e}".`)}function _n(e={}){
411
+ let t=Array.isArray(e?.crudOperations)?e.crudOperations:yn,n=[],r=new Set;for(let o of t){let i=wn(o,{context:"defineCru\
412
+ dResource crudOperations"});r.has(i)||(r.add(i),n.push(i))}return n}function An(e={},t=[]){for(let n of Array.isArray(t)?
393
413
  t:[])if(Object.hasOwn(e,n)&&e[n]!=null)return e[n];return null}function q(e={},t=[],{context:n="defineCrudResource schem\
394
- a definition",defaultMode:r="patch"}={}){let o=_n(e,t);return o==null?null:je(o,{context:n,defaultMode:r})}function An(e,t={}){
414
+ a definition",defaultMode:r="patch"}={}){let o=An(e,t);return o==null?null:je(o,{context:n,defaultMode:r})}function jn(e,t={}){
395
415
  let n=q(t,["listOutput"],{context:"defineCrudResource crud.listOutput",defaultMode:"replace"});if(n)return n;let r=q(t,[
396
- "listItemOutput"],{context:"defineCrudResource crud.listItemOutput",defaultMode:"replace"});return r?M(r):M(e())}function jn(e={},t={}){
416
+ "listItemOutput"],{context:"defineCrudResource crud.listItemOutput",defaultMode:"replace"});return r?L(r):L(e())}function In(e={},t={}){
397
417
  let n=null,r=!1;return function(){return r||(n=q(t,["output"],{context:"defineCrudResource crud.output",defaultMode:"rep\
398
- lace"})||Sn(e),r=!0),n}}function Rn(e,t={},n={}){let r=q(n,e.explicitBodyKeys,{context:`defineCrudResource operations.${e.
399
- bodyOperation}.body`,defaultMode:e.bodyMode});return r||bn(t,e.bodyOperation,e.bodyMode)}function In(e,t,n={}){if(e.outputKind===
400
- "list")return An(t,n);if(e.outputKind==="record")return t();if(e.outputKind==="delete")return q(n,["deleteOutput"],{context:"\
401
- defineCrudResource operations.delete.output",defaultMode:"replace"})||On();throw new Error(`resolveCrudOutputDefinition \
402
- received unsupported output kind "${e.outputKind}".`)}function Pn(e,{namespace:t="",resource:n={},crudConfig:r={},resolveRecordOutputDefinition:o}={}){
418
+ lace"})||En(e),r=!0),n}}function Rn(e,t={},n={}){let r=q(n,e.explicitBodyKeys,{context:`defineCrudResource operations.${e.
419
+ bodyOperation}.body`,defaultMode:e.bodyMode});return r||On(t,e.bodyOperation,e.bodyMode)}function Pn(e,t,n={}){if(e.outputKind===
420
+ "list")return jn(t,n);if(e.outputKind==="record")return t();if(e.outputKind==="delete")return q(n,["deleteOutput"],{context:"\
421
+ defineCrudResource operations.delete.output",defaultMode:"replace"})||bn();throw new Error(`resolveCrudOutputDefinition \
422
+ received unsupported output kind "${e.outputKind}".`)}function Nn(e,{namespace:t="",resource:n={},crudConfig:r={},resolveRecordOutputDefinition:o}={}){
403
423
  let i=Tn(e),s={method:i.method};return i.includeRealtimeEvent&&(s.realtime={events:[Rt(t)]}),i.bodyOperation&&(s.body=Rn(
404
- i,n,r)),s.output=In(i,o,r),s}function Nn(e={}){let t=Ne(e?.namespace,{context:"createDefaultCrudOperations resource.name\
405
- space"}),n=S(e?.crud),r=jn(e,n),o={};for(let i of wn(e))o[i]=Pn(i,{namespace:t,resource:e,crudConfig:n,resolveRecordOutputDefinition:r});
406
- return o}function zn(e,t){let n=S(e),r=S(t),o={...S(n.realtime),...S(r.realtime)};return{...n,...r,...Object.keys(o).length>
407
- 0?{realtime:o}:{}}}function Cn(e={},t={}){let n=S(e),r=S(t),o={};for(let[i,s]of Object.entries(n))o[i]=zn(s,r[i]);for(let[
408
- i,s]of Object.entries(r))Object.hasOwn(o,i)||(o[i]=s);return o}function Nt(e={}){let t=S(e),{crud:n,crudOperations:r,...o}=t;
409
- return re({...o,operations:Cn(Nn(t),o.operations)})}var ne=12e3,vn=h({targetSurfaceId:{type:"string",required:!0,minLength:1,maxLength:64},scopeKey:{type:"string",required:!0,
410
- minLength:1,maxLength:160},workspaceId:{type:"string",required:!0,nullable:!0,minLength:1,pattern:E},settings:{type:"obj\
411
- ect",required:!0,schema:h({systemPrompt:{type:"string",required:!0,maxLength:ne}})}}),$n=h({systemPrompt:{type:"string",
424
+ i,n,r)),s.output=Pn(i,o,r),s}function vn(e={}){let t=Ne(e?.namespace,{context:"createDefaultCrudOperations resource.name\
425
+ space"}),n=S(e?.crud),r=In(e,n),o={};for(let i of _n(e))o[i]=Nn(i,{namespace:t,resource:e,crudConfig:n,resolveRecordOutputDefinition:r});
426
+ return o}function Cn(e,t){let n=S(e),r=S(t),o={...S(n.realtime),...S(r.realtime)};return{...n,...r,...Object.keys(o).length>
427
+ 0?{realtime:o}:{}}}function zn(e={},t={}){let n=S(e),r=S(t),o={};for(let[i,s]of Object.entries(n))o[i]=Cn(s,r[i]);for(let[
428
+ i,s]of Object.entries(r))Object.hasOwn(o,i)||(o[i]=s);return o}function vt(e={}){let t=S(e),{crud:n,crudOperations:r,...o}=t;
429
+ return re({...o,operations:zn(vn(t),o.operations)})}var ne=12e3,$n=h({targetSurfaceId:{type:"string",required:!0,minLength:1,maxLength:64},scopeKey:{type:"string",required:!0,
430
+ minLength:1,maxLength:160},workspaceId:{type:"string",required:!0,nullable:!0,minLength:1,pattern:b},settings:{type:"obj\
431
+ ect",required:!0,schema:h({systemPrompt:{type:"string",required:!0,maxLength:ne}})}}),kn=h({systemPrompt:{type:"string",
412
432
  required:!1,maxLength:ne,messages:{maxLength:`Assistant system prompt must be at most ${ne} characters.`,default:"Assist\
413
- ant system prompt must be valid text."}}}),Ln=Nt({namespace:"assistantConfig",crudOperations:["view","patch"],crud:{output:vn,
414
- patchBody:$n}});var zt=b({kind:"jsonapi-resource",responseType:"assistant-settings",responseKind:"record"}),Mn=b({...zt,requestType:"ass\
415
- istant-settings"}),Dn=b({kind:"jsonapi-resource",responseType:"assistant-conversations",responseKind:"collection"}),Fn=b(
416
- {kind:"jsonapi-resource",responseType:"assistant-conversation-messages",responseKind:"record"});var kn=Object.freeze({settingsChanged:"assistant.settings.changed"});var Ct=Object.freeze(["active","completed","failed","aborted"]),zs=new Set(Ct);var Ds=Object.freeze([/^(?:let me|i(?:'|’)ll|i will|i(?:'|’)m going to|i am going to)\s+(?:(?:first|now|quickly)\s+)*(?:analy[sz]e|call|check|confirm|do|execute|fetch|find|inspect|investigate|load|look up|open|prepare|query|read|retrieve|review|run|search|summarize|test|try|use|verify)\b/iu,
433
+ ant system prompt must be valid text."}}}),Ln=vt({namespace:"assistantConfig",crudOperations:["view","patch"],crud:{output:$n,
434
+ patchBody:kn}});var Ct=E({kind:"jsonapi-resource",responseType:"assistant-settings",responseKind:"record"}),Mn=E({...Ct,requestType:"ass\
435
+ istant-settings"}),Dn=E({kind:"jsonapi-resource",responseType:"assistant-conversations",responseKind:"collection"}),Fn=E(
436
+ {kind:"jsonapi-resource",responseType:"assistant-conversation-messages",responseKind:"record"});var xn=Object.freeze({settingsChanged:"assistant.settings.changed"});var zt=Object.freeze(["active","completed","failed","aborted"]),xs=new Set(zt);var Ks=Object.freeze([/^(?:let me|i(?:'|’)ll|i will|i(?:'|’)m going to|i am going to)\s+(?:(?:first|now|quickly)\s+)*(?:analy[sz]e|call|check|confirm|do|execute|fetch|find|inspect|investigate|load|look up|open|prepare|query|read|retrieve|review|run|search|summarize|test|try|use|verify)\b/iu,
417
437
  /^(?:analy[sz]ing|calling|checking|confirming|executing|fetching|finding|inspecting|investigating|loading|looking up|opening|preparing|querying|reading|retrieving|reviewing|running|searching|summarizing|testing|trying|using|verifying)\b/iu,
418
- /^(?:one moment|please wait)\b/iu]);function vt(e){return Vn(e,{fallback:""})||""}var B=Object.freeze({configTable:"assistant_config",conversationsTable:"assistant_conversations",messagesTable:"assistan\
419
- t_messages",turnRequestsTable:"assistant_turn_requests"});function ve(e=""){return K(e)}function Lt(e){return H(e,{fallback:null})}function Un(e){return qn(e,{fallback:null})}function Hn(e,t=null){
420
- let n=ve(e);if(!n)throw new TypeError("assistantConfigRepository requires targetSurfaceId.");let r=Lt(t);return r?`${n}:\
421
- workspace:${r}`:`${n}:global`}function $t(e={}){return{targetSurfaceId:ve(e.target_surface_id),scopeKey:g(e.scope_key),workspaceId:Un(
438
+ /^(?:one moment|please wait)\b/iu]);function $t(e){return qn(e,{fallback:""})||""}var B=Object.freeze({configTable:"assistant_config",conversationsTable:"assistant_conversations",messagesTable:"assistan\
439
+ t_messages",turnRequestsTable:"assistant_turn_requests"});function ze(e=""){return K(e)}function Lt(e){return H(e,{fallback:null})}function Hn(e){return Bn(e,{fallback:null})}function Kn(e,t=null){
440
+ let n=ze(e);if(!n)throw new TypeError("assistantConfigRepository requires targetSurfaceId.");let r=Lt(t);return r?`${n}:\
441
+ workspace:${r}`:`${n}:global`}function kt(e={}){return{targetSurfaceId:ze(e.target_surface_id),scopeKey:g(e.scope_key),workspaceId:Hn(
422
442
  e.workspace_id),settings:{systemPrompt:String(e.system_prompt||"")}}}function Ce({targetSurfaceId:e="",workspaceId:t=null}={}){
423
- let n=ve(e);if(!n)throw new TypeError("assistantConfigRepository requires targetSurfaceId.");let r=Lt(t);return{targetSurfaceId:n,
424
- scopeKey:Hn(n,r),workspaceId:r,settings:{systemPrompt:""}}}function Ia(e){if(!e||typeof e!="function")throw new Error("c\
425
- reateAssistantConfigRepository requires knex client.");let t=Bn(e);async function n({targetSurfaceId:o="",workspaceId:i=null}={},s={}){
443
+ let n=ze(e);if(!n)throw new TypeError("assistantConfigRepository requires targetSurfaceId.");let r=Lt(t);return{targetSurfaceId:n,
444
+ scopeKey:Kn(n,r),workspaceId:r,settings:{systemPrompt:""}}}function Ma(e){if(!e||typeof e!="function")throw new Error("c\
445
+ reateAssistantConfigRepository requires knex client.");let t=Un(e);async function n({targetSurfaceId:o="",workspaceId:i=null}={},s={}){
426
446
  let a=s?.trx||e,c=Ce({targetSurfaceId:o,workspaceId:i}),u=await a(B.configTable).where({target_surface_id:c.targetSurfaceId,
427
- scope_key:c.scopeKey}).first();return u?$t(u):null}async function r({targetSurfaceId:o="",workspaceId:i=null,patch:s={}}={},a={}){
447
+ scope_key:c.scopeKey}).first();return u?kt(u):null}async function r({targetSurfaceId:o="",workspaceId:i=null,patch:s={}}={},a={}){
428
448
  let c=a?.trx||e,u=Ce({targetSurfaceId:o,workspaceId:i}),l=await n(u,{trx:c}),p=Object.hasOwn(s||{},"systemPrompt")?String(
429
449
  s.systemPrompt||""):String(l?.settings?.systemPrompt||u.settings.systemPrompt),d=new Date;if(l)return await c(B.configTable).
430
450
  where({target_surface_id:u.targetSurfaceId,scope_key:u.scopeKey}).update({workspace_id:u.workspaceId,system_prompt:p,updated_at:d}),
431
451
  {...u,settings:{systemPrompt:p}};let m=await c(B.configTable).insert({target_surface_id:u.targetSurfaceId,scope_key:u.scopeKey,
432
- workspace_id:u.workspaceId,system_prompt:p,created_at:d,updated_at:d}),y=vt(m);if(!y)return{...u,settings:{systemPrompt:p}};
433
- let T=await c(B.configTable).where({id:y}).first();return T?$t(T):{...u,settings:{systemPrompt:p}}}return Object.freeze(
434
- {withTransaction:t,createDefaultRecord:Ce,findByScope:n,upsertByScope:r})}export{Ia as createRepository};
452
+ workspace_id:u.workspaceId,system_prompt:p,created_at:d,updated_at:d}),y=$t(m);if(!y)return{...u,settings:{systemPrompt:p}};
453
+ let w=await c(B.configTable).where({id:y}).first();return w?kt(w):{...u,settings:{systemPrompt:p}}}return Object.freeze(
454
+ {withTransaction:t,createDefaultRecord:Ce,findByScope:n,upsertByScope:r})}export{Ma as createRepository};