@kozou/svelte-ui 1.17.0 → 1.19.0

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 (111) hide show
  1. package/README.md +12 -2
  2. package/build/client/_app/immutable/chunks/{CdzXNSLM.js → C8rrboGe.js} +1 -1
  3. package/build/client/_app/immutable/chunks/C8rrboGe.js.br +0 -0
  4. package/build/client/_app/immutable/chunks/C8rrboGe.js.gz +0 -0
  5. package/build/client/_app/immutable/chunks/CDKppeAs.js +3 -0
  6. package/build/client/_app/immutable/chunks/CDKppeAs.js.br +0 -0
  7. package/build/client/_app/immutable/chunks/CDKppeAs.js.gz +0 -0
  8. package/build/client/_app/immutable/chunks/{OhDywA02.js → T9HP10fl.js} +1 -1
  9. package/build/client/_app/immutable/chunks/T9HP10fl.js.br +0 -0
  10. package/build/client/_app/immutable/chunks/T9HP10fl.js.gz +0 -0
  11. package/build/client/_app/immutable/chunks/{BWWvKZIn.js → nzykfsgm.js} +1 -1
  12. package/build/client/_app/immutable/chunks/nzykfsgm.js.br +0 -0
  13. package/build/client/_app/immutable/chunks/nzykfsgm.js.gz +0 -0
  14. package/build/client/_app/immutable/entry/{app.CXrj_tz3.js → app.BpwV9AbX.js} +2 -2
  15. package/build/client/_app/immutable/entry/app.BpwV9AbX.js.br +0 -0
  16. package/build/client/_app/immutable/entry/app.BpwV9AbX.js.gz +0 -0
  17. package/build/client/_app/immutable/entry/start.CbuVRthS.js +1 -0
  18. package/build/client/_app/immutable/entry/start.CbuVRthS.js.br +0 -0
  19. package/build/client/_app/immutable/entry/start.CbuVRthS.js.gz +0 -0
  20. package/build/client/_app/immutable/nodes/{1.CRI7xzqE.js → 1.CwhfkRjA.js} +1 -1
  21. package/build/client/_app/immutable/nodes/1.CwhfkRjA.js.br +0 -0
  22. package/build/client/_app/immutable/nodes/1.CwhfkRjA.js.gz +0 -0
  23. package/build/client/_app/immutable/nodes/{3.CyWCIPgV.js → 3.EUafBTgD.js} +1 -1
  24. package/build/client/_app/immutable/nodes/3.EUafBTgD.js.br +0 -0
  25. package/build/client/_app/immutable/nodes/3.EUafBTgD.js.gz +0 -0
  26. package/build/client/_app/immutable/nodes/{4.D3j4ZWuz.js → 4.DP1YMUE5.js} +2 -5
  27. package/build/client/_app/immutable/nodes/4.DP1YMUE5.js.br +0 -0
  28. package/build/client/_app/immutable/nodes/4.DP1YMUE5.js.gz +0 -0
  29. package/build/client/_app/immutable/nodes/{6.BDB6GDLX.js → 6.B29N2Lfc.js} +1 -1
  30. package/build/client/_app/immutable/nodes/6.B29N2Lfc.js.br +0 -0
  31. package/build/client/_app/immutable/nodes/6.B29N2Lfc.js.gz +0 -0
  32. package/build/client/_app/immutable/nodes/{7.x-apVi4n.js → 7.CG2wq3TV.js} +1 -1
  33. package/build/client/_app/immutable/nodes/7.CG2wq3TV.js.br +0 -0
  34. package/build/client/_app/immutable/nodes/7.CG2wq3TV.js.gz +0 -0
  35. package/build/client/_app/immutable/nodes/{8.DXu_2Qdx.js → 8.BJ_43uFX.js} +1 -1
  36. package/build/client/_app/immutable/nodes/8.BJ_43uFX.js.br +0 -0
  37. package/build/client/_app/immutable/nodes/8.BJ_43uFX.js.gz +0 -0
  38. package/build/client/_app/version.json +1 -1
  39. package/build/client/_app/version.json.br +0 -0
  40. package/build/client/_app/version.json.gz +0 -0
  41. package/build/server/chunks/{0-DTnqeCaT.js → 0-QvKVS1pE.js} +2 -2
  42. package/build/server/chunks/{0-DTnqeCaT.js.map → 0-QvKVS1pE.js.map} +1 -1
  43. package/build/server/chunks/{1-CApJvP3C.js → 1-DWwBxW4f.js} +3 -3
  44. package/build/server/chunks/{1-CApJvP3C.js.map → 1-DWwBxW4f.js.map} +1 -1
  45. package/build/server/chunks/{3-BFEYL0s0.js → 3-CzkTyNtY.js} +6 -6
  46. package/build/server/chunks/{3-BFEYL0s0.js.map → 3-CzkTyNtY.js.map} +1 -1
  47. package/build/server/chunks/{4-BNWbTUVb.js → 4-OlSudnzY.js} +6 -5
  48. package/build/server/chunks/4-OlSudnzY.js.map +1 -0
  49. package/build/server/chunks/{6-BXAzsPrE.js → 6-BRyrSSQw.js} +3 -3
  50. package/build/server/chunks/{6-BXAzsPrE.js.map → 6-BRyrSSQw.js.map} +1 -1
  51. package/build/server/chunks/{7-D4VY7Eta.js → 7-BUXVvAgT.js} +6 -6
  52. package/build/server/chunks/{7-D4VY7Eta.js.map → 7-BUXVvAgT.js.map} +1 -1
  53. package/build/server/chunks/{8-CAkMPSY4.js → 8-DcM7g1_L.js} +6 -6
  54. package/build/server/chunks/{8-CAkMPSY4.js.map → 8-DcM7g1_L.js.map} +1 -1
  55. package/build/server/chunks/{_page.svelte-D9WnRc7S.js → _page.svelte-B8oSt9qH.js} +4 -4
  56. package/build/server/chunks/{_page.svelte-D9WnRc7S.js.map → _page.svelte-B8oSt9qH.js.map} +1 -1
  57. package/build/server/chunks/{_page.svelte-5hyURw8O.js → _page.svelte-BOCed0K0.js} +3 -3
  58. package/build/server/chunks/{_page.svelte-5hyURw8O.js.map → _page.svelte-BOCed0K0.js.map} +1 -1
  59. package/build/server/chunks/{_page.svelte-Cd_z7eFO.js → _page.svelte-Bf0wrvsv.js} +2 -5
  60. package/build/server/chunks/{_page.svelte-Cd_z7eFO.js.map → _page.svelte-Bf0wrvsv.js.map} +1 -1
  61. package/build/server/chunks/{_page.svelte-CBJR_AG2.js → _page.svelte-Bt3iaOxu.js} +5 -5
  62. package/build/server/chunks/{_page.svelte-CBJR_AG2.js.map → _page.svelte-Bt3iaOxu.js.map} +1 -1
  63. package/build/server/chunks/{_page.svelte-Bqk7F3CL.js → _page.svelte-D6rj2r_S.js} +5 -5
  64. package/build/server/chunks/{_page.svelte-Bqk7F3CL.js.map → _page.svelte-D6rj2r_S.js.map} +1 -1
  65. package/build/server/chunks/{client-BBFG1zLB.js → client-Dcb2GgWd.js} +2 -2
  66. package/build/server/chunks/{client-BBFG1zLB.js.map → client-Dcb2GgWd.js.map} +1 -1
  67. package/build/server/chunks/{composite-form-KsMxMbgc.js → composite-form-D2e4A2Ot.js} +3 -3
  68. package/build/server/chunks/{composite-form-KsMxMbgc.js.map → composite-form-D2e4A2Ot.js.map} +1 -1
  69. package/build/server/chunks/{error.svelte-C_s6PHRr.js → error.svelte-D5Bf_Y4k.js} +3 -3
  70. package/build/server/chunks/{error.svelte-C_s6PHRr.js.map → error.svelte-D5Bf_Y4k.js.map} +1 -1
  71. package/build/server/chunks/{hooks.server-ud8twg77.js → hooks.server-C7mRGu-C.js} +42 -4
  72. package/build/server/chunks/{hooks.server-ud8twg77.js.map → hooks.server-C7mRGu-C.js.map} +1 -1
  73. package/build/server/chunks/{internal2-BaDAe3C9.js → internal2-Cp8lw9Lk.js} +3 -3
  74. package/build/server/chunks/{internal2-BaDAe3C9.js.map → internal2-Cp8lw9Lk.js.map} +1 -1
  75. package/build/server/chunks/{mcp-connection-C9Efo8-2.js → mcp-connection-JeveuASs.js} +26 -8
  76. package/build/server/chunks/mcp-connection-JeveuASs.js.map +1 -0
  77. package/build/server/chunks/{relation-select-composite-field-D0FbNYK6.js → relation-select-composite-field-lu5X6jQi.js} +2 -2
  78. package/build/server/chunks/{relation-select-composite-field-D0FbNYK6.js.map → relation-select-composite-field-lu5X6jQi.js.map} +1 -1
  79. package/build/server/index.js +1 -1
  80. package/build/server/index.js.map +1 -1
  81. package/build/server/manifest.js +8 -8
  82. package/build/server/manifest.js.map +1 -1
  83. package/package.json +5 -5
  84. package/build/client/_app/immutable/chunks/BWWvKZIn.js.br +0 -0
  85. package/build/client/_app/immutable/chunks/BWWvKZIn.js.gz +0 -0
  86. package/build/client/_app/immutable/chunks/Bjn-300u.js +0 -3
  87. package/build/client/_app/immutable/chunks/Bjn-300u.js.br +0 -0
  88. package/build/client/_app/immutable/chunks/Bjn-300u.js.gz +0 -0
  89. package/build/client/_app/immutable/chunks/CdzXNSLM.js.br +0 -0
  90. package/build/client/_app/immutable/chunks/CdzXNSLM.js.gz +0 -0
  91. package/build/client/_app/immutable/chunks/OhDywA02.js.br +0 -0
  92. package/build/client/_app/immutable/chunks/OhDywA02.js.gz +0 -0
  93. package/build/client/_app/immutable/entry/app.CXrj_tz3.js.br +0 -0
  94. package/build/client/_app/immutable/entry/app.CXrj_tz3.js.gz +0 -0
  95. package/build/client/_app/immutable/entry/start.Itp5t-Yk.js +0 -1
  96. package/build/client/_app/immutable/entry/start.Itp5t-Yk.js.br +0 -0
  97. package/build/client/_app/immutable/entry/start.Itp5t-Yk.js.gz +0 -0
  98. package/build/client/_app/immutable/nodes/1.CRI7xzqE.js.br +0 -0
  99. package/build/client/_app/immutable/nodes/1.CRI7xzqE.js.gz +0 -0
  100. package/build/client/_app/immutable/nodes/3.CyWCIPgV.js.br +0 -0
  101. package/build/client/_app/immutable/nodes/3.CyWCIPgV.js.gz +0 -0
  102. package/build/client/_app/immutable/nodes/4.D3j4ZWuz.js.br +0 -0
  103. package/build/client/_app/immutable/nodes/4.D3j4ZWuz.js.gz +0 -0
  104. package/build/client/_app/immutable/nodes/6.BDB6GDLX.js.br +0 -0
  105. package/build/client/_app/immutable/nodes/6.BDB6GDLX.js.gz +0 -0
  106. package/build/client/_app/immutable/nodes/7.x-apVi4n.js.br +0 -0
  107. package/build/client/_app/immutable/nodes/7.x-apVi4n.js.gz +0 -0
  108. package/build/client/_app/immutable/nodes/8.DXu_2Qdx.js.br +0 -0
  109. package/build/client/_app/immutable/nodes/8.DXu_2Qdx.js.gz +0 -0
  110. package/build/server/chunks/4-BNWbTUVb.js.map +0 -1
  111. package/build/server/chunks/mcp-connection-C9Efo8-2.js.map +0 -1
@@ -1,4 +1,4 @@
1
- import { a as resolveMcpPosture, b as buildMcpConnectionInfo, r as resolveMcpHttpPort } from './mcp-connection-C9Efo8-2.js';
1
+ import { a as resolveMcpPosture, b as buildMcpConnectionInfo, r as resolveMcpHttpPort } from './mcp-connection-JeveuASs.js';
2
2
  import { e as error } from './index-CVekYGHP.js';
3
3
  import './index-DBqjc0Yf.js';
4
4
 
@@ -10,7 +10,8 @@ var load = ({ url }) => {
10
10
  requestUrl: url,
11
11
  mcpPort: resolveMcpHttpPort(process.env.KOZOU_MCP_HTTP_PORT),
12
12
  posture,
13
- resourceUrl: process.env.KOZOU_UI_MCP_RESOURCE
13
+ resourceUrl: process.env.KOZOU_UI_MCP_RESOURCE,
14
+ advertisedUrl: process.env.KOZOU_UI_MCP_ADVERTISED_URL
14
15
  }) };
15
16
  };
16
17
 
@@ -21,11 +22,11 @@ var _page_server_ts = /*#__PURE__*/Object.freeze({
21
22
 
22
23
  const index = 4;
23
24
  let component_cache;
24
- const component = async () => component_cache ??= (await import('./_page.svelte-Cd_z7eFO.js')).default;
25
+ const component = async () => component_cache ??= (await import('./_page.svelte-Bf0wrvsv.js')).default;
25
26
  const server_id = "src/routes/connect/+page.server.ts";
26
- const imports = ["_app/immutable/nodes/4.D3j4ZWuz.js","_app/immutable/chunks/ClT4djUO.js","_app/immutable/chunks/xihTtKlq.js"];
27
+ const imports = ["_app/immutable/nodes/4.DP1YMUE5.js","_app/immutable/chunks/ClT4djUO.js","_app/immutable/chunks/xihTtKlq.js"];
27
28
  const stylesheets = [];
28
29
  const fonts = [];
29
30
 
30
31
  export { component, fonts, imports, index, _page_server_ts as server, server_id, stylesheets };
31
- //# sourceMappingURL=4-BNWbTUVb.js.map
32
+ //# sourceMappingURL=4-OlSudnzY.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"4-OlSudnzY.js","sources":["../../../.svelte-kit/adapter-node/entries/pages/connect/_page.server.ts.js","../../../.svelte-kit/adapter-node/nodes/4.js"],"sourcesContent":["import { n as resolveMcpHttpPort, r as resolveMcpPosture, t as buildMcpConnectionInfo } from \"../../../chunks/mcp-connection.js\";\nimport { error } from \"@sveltejs/kit\";\n//#region src/routes/connect/+page.server.ts\nvar load = ({ url }) => {\n\tconst posture = resolveMcpPosture(process.env.KOZOU_UI_MCP_POSTURE);\n\tif (posture === \"off\") error(404, \"The MCP HTTP endpoint is turned off for this runtime (server.mcp.http.enabled: false), so there is nothing to connect an agent to.\");\n\treturn { connection: buildMcpConnectionInfo({\n\t\trequestUrl: url,\n\t\tmcpPort: resolveMcpHttpPort(process.env.KOZOU_MCP_HTTP_PORT),\n\t\tposture,\n\t\tresourceUrl: process.env.KOZOU_UI_MCP_RESOURCE,\n\t\tadvertisedUrl: process.env.KOZOU_UI_MCP_ADVERTISED_URL\n\t}) };\n};\n//#endregion\nexport { load };\n","import * as server from '../entries/pages/connect/_page.server.ts.js';\n\nexport const index = 4;\nlet component_cache;\nexport const component = async () => component_cache ??= (await import('../entries/pages/connect/_page.svelte.js')).default;\nexport { server };\nexport const server_id = \"src/routes/connect/+page.server.ts\";\nexport const imports = [\"_app/immutable/nodes/4.DP1YMUE5.js\",\"_app/immutable/chunks/ClT4djUO.js\",\"_app/immutable/chunks/xihTtKlq.js\"];\nexport const stylesheets = [];\nexport const fonts = [];\n"],"names":[],"mappings":";;;;AAEA;AACA,IAAI,IAAI,GAAG,CAAC,EAAE,GAAG,EAAE,KAAK;AACxB,CAAC,MAAM,OAAO,GAAG,iBAAiB,CAAC,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC;AACpE,CAAC,IAAI,OAAO,KAAK,KAAK,EAAE,KAAK,CAAC,GAAG,EAAE,oIAAoI,CAAC;AACxK,CAAC,OAAO,EAAE,UAAU,EAAE,sBAAsB,CAAC;AAC7C,EAAE,UAAU,EAAE,GAAG;AACjB,EAAE,OAAO,EAAE,kBAAkB,CAAC,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC;AAC9D,EAAE,OAAO;AACT,EAAE,WAAW,EAAE,OAAO,CAAC,GAAG,CAAC,qBAAqB;AAChD,EAAE,aAAa,EAAE,OAAO,CAAC,GAAG,CAAC;AAC7B,EAAE,CAAC,EAAE;AACL,CAAC;;;;;;;ACXW,MAAC,KAAK,GAAG;AACrB,IAAI,eAAe;AACP,MAAC,SAAS,GAAG,YAAY,eAAe,KAAK,CAAC,MAAM,OAAO,4BAA0C,CAAC,EAAE;AAExG,MAAC,SAAS,GAAG;AACb,MAAC,OAAO,GAAG,CAAC,oCAAoC,CAAC,mCAAmC,CAAC,mCAAmC;AACxH,MAAC,WAAW,GAAG;AACf,MAAC,KAAK,GAAG;;;;"}
@@ -147,11 +147,11 @@ var _page_server_ts = /*#__PURE__*/Object.freeze({
147
147
 
148
148
  const index = 6;
149
149
  let component_cache;
150
- const component = async () => component_cache ??= (await import('./_page.svelte-5hyURw8O.js')).default;
150
+ const component = async () => component_cache ??= (await import('./_page.svelte-BOCed0K0.js')).default;
151
151
  const server_id = "src/routes/tables/[table]/[id]/+page.server.ts";
152
- const imports = ["_app/immutable/nodes/6.BDB6GDLX.js","_app/immutable/chunks/ClT4djUO.js","_app/immutable/chunks/OhDywA02.js","_app/immutable/chunks/Bjn-300u.js","_app/immutable/chunks/xihTtKlq.js"];
152
+ const imports = ["_app/immutable/nodes/6.B29N2Lfc.js","_app/immutable/chunks/ClT4djUO.js","_app/immutable/chunks/T9HP10fl.js","_app/immutable/chunks/CDKppeAs.js","_app/immutable/chunks/xihTtKlq.js"];
153
153
  const stylesheets = [];
154
154
  const fonts = [];
155
155
 
156
156
  export { component, fonts, imports, index, _page_server_ts as server, server_id, stylesheets };
157
- //# sourceMappingURL=6-BXAzsPrE.js.map
157
+ //# sourceMappingURL=6-BRyrSSQw.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"6-BXAzsPrE.js","sources":["../../../.svelte-kit/adapter-node/entries/pages/tables/_table_/_id_/_page.server.ts.js","../../../.svelte-kit/adapter-node/nodes/6.js"],"sourcesContent":["import { t as getAdapter } from \"../../../../../chunks/adapter.js\";\nimport { n as parseResourceId, t as encodeResourceId } from \"../../../../../chunks/resource-id.js\";\nimport { t as adapterErrorToFailure } from \"../../../../../chunks/adapter-error.js\";\nimport { error, fail, redirect } from \"@sveltejs/kit\";\n//#region ../ui-core/dist/detail/resolve-fk-labels.js\nasync function resolveFkLabels(args) {\n\tconst { table, row, schema, loadRow } = args;\n\tconst out = {};\n\tconst lookups = [];\n\tconst claims = /* @__PURE__ */ new Map();\n\tfor (const relation of table.relations) {\n\t\tconst first = (relation.fields ?? [relation.field])[0];\n\t\tclaims.set(first, (claims.get(first) ?? 0) + 1);\n\t}\n\tfor (const relation of table.relations) {\n\t\tconst fields = relation.fields ?? [relation.field];\n\t\tif (fields.length > 1) {\n\t\t\tif ((claims.get(fields[0]) ?? 0) > 1) continue;\n\t\t\tconst lookup = compositeLookup(fields, relation, row, schema, loadRow, out);\n\t\t\tif (lookup !== null) lookups.push(lookup);\n\t\t\tcontinue;\n\t\t}\n\t\tconst rawValue = row[relation.field];\n\t\tif (rawValue === null || rawValue === void 0) continue;\n\t\tif (typeof rawValue !== \"string\" && typeof rawValue !== \"number\") continue;\n\t\tconst value = rawValue;\n\t\tconst referencedQualifiedName = `${relation.references.schema}.${relation.references.table}`;\n\t\tconst referencedTable = schema.tables.find((t) => t.qualifiedName === referencedQualifiedName);\n\t\tif (referencedTable === void 0) {\n\t\t\tout[relation.field] = {\n\t\t\t\tvalue,\n\t\t\t\tlabel: null,\n\t\t\t\treferencedQualifiedName\n\t\t\t};\n\t\t\tcontinue;\n\t\t}\n\t\tlookups.push(loadRow(referencedQualifiedName, value).then((targetRow) => {\n\t\t\tconst label = projectLabel(referencedTable, targetRow);\n\t\t\tout[relation.field] = {\n\t\t\t\tvalue,\n\t\t\t\tlabel,\n\t\t\t\treferencedQualifiedName\n\t\t\t};\n\t\t}));\n\t}\n\tawait Promise.all(lookups);\n\treturn out;\n}\n/** Build the lookup for a composite relation, or return `null` when it\n* cannot be resolved (the raw values then render as-is). The target row is\n* fetched by primary key, so the relation must reference the target's full\n* primary key (in any column order) and every component must be present.\n* The resolved entry is keyed by the relation's first column. */\nfunction compositeLookup(fields, relation, row, schema, loadRow, out) {\n\tconst referencedQualifiedName = `${relation.references.schema}.${relation.references.table}`;\n\tconst referencedTable = schema.tables.find((t) => t.qualifiedName === referencedQualifiedName);\n\tif (referencedTable === void 0) return null;\n\tconst refColumns = relation.references.columns ?? [relation.references.column];\n\tif (refColumns.length !== fields.length) return null;\n\tconst primaryKey = referencedTable.primaryKey;\n\tif (primaryKey.length !== refColumns.length || !primaryKey.every((column) => refColumns.includes(column))) return null;\n\tconst components = [];\n\tfor (const keyColumn of primaryKey) {\n\t\tconst raw = row[fields[refColumns.indexOf(keyColumn)]];\n\t\tif (raw === null || raw === void 0) return null;\n\t\tif (typeof raw !== \"string\" && typeof raw !== \"number\") return null;\n\t\tcomponents.push(raw);\n\t}\n\tconst value = encodeResourceId(components);\n\treturn loadRow(referencedQualifiedName, components).then((targetRow) => {\n\t\tconst label = projectLabel(referencedTable, targetRow);\n\t\tout[fields[0]] = {\n\t\t\tvalue,\n\t\t\tlabel,\n\t\t\treferencedQualifiedName\n\t\t};\n\t});\n}\nfunction projectLabel(referencedTable, targetRow) {\n\tif (targetRow === null) return null;\n\tconst display = referencedTable.displayField;\n\tif (display === null) return null;\n\tconst value = targetRow[display];\n\tif (value === null || value === void 0) return null;\n\treturn String(value);\n}\n//#endregion\n//#region src/routes/tables/[table]/[id]/+page.server.ts\nfunction findTable(tables, slug) {\n\treturn tables.find((t) => t.qualifiedName === slug) ?? null;\n}\nfunction tableViewModel(table) {\n\treturn {\n\t\tqualifiedName: table.qualifiedName,\n\t\tlabel: table.label,\n\t\tcanDelete: table.rawTable.privileges?.delete !== false,\n\t\tcolumns: table.columns.map((c) => ({\n\t\t\tname: c.name,\n\t\t\tlabel: c.label,\n\t\t\twidget: c.widget,\n\t\t\tisPrimaryKey: c.isPrimaryKey,\n\t\t\tisForeignKey: c.isForeignKey\n\t\t}))\n\t};\n}\nvar load = async ({ params, locals }) => {\n\tconst table = findTable(locals.schema.tables, params.table);\n\tif (!table) throw error(404, `Unknown table: ${params.table}`);\n\tconst adapter = getAdapter(locals.schema);\n\tconst id = parseResourceId(params.id, table.primaryKey);\n\tconst row = await adapter.get(table.qualifiedName, id);\n\tconst fkLabels = await resolveFkLabels({\n\t\ttable,\n\t\trow,\n\t\tschema: locals.schema,\n\t\tloadRow: (qualifiedName, id) => locals.fkRowCache.get(qualifiedName, id, (qn, identifier) => adapter.get(qn, identifier).catch(() => null))\n\t});\n\treturn {\n\t\ttable: tableViewModel(table),\n\t\trow,\n\t\tfkLabels,\n\t\tid: encodeResourceId(id)\n\t};\n};\nvar actions = { delete: async ({ params, locals }) => {\n\tconst table = findTable(locals.schema.tables, params.table);\n\tif (!table) throw error(404, `Unknown table: ${params.table}`);\n\tif (table.rawTable.privileges?.delete === false) throw error(403, `The configured role may not delete from ${table.qualifiedName}.`);\n\tconst id = parseResourceId(params.id, table.primaryKey);\n\ttry {\n\t\tawait getAdapter(locals.schema).delete(table.qualifiedName, id);\n\t} catch (err) {\n\t\tconst failure = adapterErrorToFailure(err);\n\t\tif (failure !== null) return fail(failure.status, { message: failure.message });\n\t\tthrow err;\n\t}\n\tthrow redirect(303, `/tables/${table.qualifiedName}`);\n} };\n//#endregion\nexport { actions, load };\n","import * as server from '../entries/pages/tables/_table_/_id_/_page.server.ts.js';\n\nexport const index = 6;\nlet component_cache;\nexport const component = async () => component_cache ??= (await import('../entries/pages/tables/_table_/_id_/_page.svelte.js')).default;\nexport { server };\nexport const server_id = \"src/routes/tables/[table]/[id]/+page.server.ts\";\nexport const imports = [\"_app/immutable/nodes/6.BDB6GDLX.js\",\"_app/immutable/chunks/ClT4djUO.js\",\"_app/immutable/chunks/OhDywA02.js\",\"_app/immutable/chunks/Bjn-300u.js\",\"_app/immutable/chunks/xihTtKlq.js\"];\nexport const stylesheets = [];\nexport const fonts = [];\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"6-BRyrSSQw.js","sources":["../../../.svelte-kit/adapter-node/entries/pages/tables/_table_/_id_/_page.server.ts.js","../../../.svelte-kit/adapter-node/nodes/6.js"],"sourcesContent":["import { t as getAdapter } from \"../../../../../chunks/adapter.js\";\nimport { n as parseResourceId, t as encodeResourceId } from \"../../../../../chunks/resource-id.js\";\nimport { t as adapterErrorToFailure } from \"../../../../../chunks/adapter-error.js\";\nimport { error, fail, redirect } from \"@sveltejs/kit\";\n//#region ../ui-core/dist/detail/resolve-fk-labels.js\nasync function resolveFkLabels(args) {\n\tconst { table, row, schema, loadRow } = args;\n\tconst out = {};\n\tconst lookups = [];\n\tconst claims = /* @__PURE__ */ new Map();\n\tfor (const relation of table.relations) {\n\t\tconst first = (relation.fields ?? [relation.field])[0];\n\t\tclaims.set(first, (claims.get(first) ?? 0) + 1);\n\t}\n\tfor (const relation of table.relations) {\n\t\tconst fields = relation.fields ?? [relation.field];\n\t\tif (fields.length > 1) {\n\t\t\tif ((claims.get(fields[0]) ?? 0) > 1) continue;\n\t\t\tconst lookup = compositeLookup(fields, relation, row, schema, loadRow, out);\n\t\t\tif (lookup !== null) lookups.push(lookup);\n\t\t\tcontinue;\n\t\t}\n\t\tconst rawValue = row[relation.field];\n\t\tif (rawValue === null || rawValue === void 0) continue;\n\t\tif (typeof rawValue !== \"string\" && typeof rawValue !== \"number\") continue;\n\t\tconst value = rawValue;\n\t\tconst referencedQualifiedName = `${relation.references.schema}.${relation.references.table}`;\n\t\tconst referencedTable = schema.tables.find((t) => t.qualifiedName === referencedQualifiedName);\n\t\tif (referencedTable === void 0) {\n\t\t\tout[relation.field] = {\n\t\t\t\tvalue,\n\t\t\t\tlabel: null,\n\t\t\t\treferencedQualifiedName\n\t\t\t};\n\t\t\tcontinue;\n\t\t}\n\t\tlookups.push(loadRow(referencedQualifiedName, value).then((targetRow) => {\n\t\t\tconst label = projectLabel(referencedTable, targetRow);\n\t\t\tout[relation.field] = {\n\t\t\t\tvalue,\n\t\t\t\tlabel,\n\t\t\t\treferencedQualifiedName\n\t\t\t};\n\t\t}));\n\t}\n\tawait Promise.all(lookups);\n\treturn out;\n}\n/** Build the lookup for a composite relation, or return `null` when it\n* cannot be resolved (the raw values then render as-is). The target row is\n* fetched by primary key, so the relation must reference the target's full\n* primary key (in any column order) and every component must be present.\n* The resolved entry is keyed by the relation's first column. */\nfunction compositeLookup(fields, relation, row, schema, loadRow, out) {\n\tconst referencedQualifiedName = `${relation.references.schema}.${relation.references.table}`;\n\tconst referencedTable = schema.tables.find((t) => t.qualifiedName === referencedQualifiedName);\n\tif (referencedTable === void 0) return null;\n\tconst refColumns = relation.references.columns ?? [relation.references.column];\n\tif (refColumns.length !== fields.length) return null;\n\tconst primaryKey = referencedTable.primaryKey;\n\tif (primaryKey.length !== refColumns.length || !primaryKey.every((column) => refColumns.includes(column))) return null;\n\tconst components = [];\n\tfor (const keyColumn of primaryKey) {\n\t\tconst raw = row[fields[refColumns.indexOf(keyColumn)]];\n\t\tif (raw === null || raw === void 0) return null;\n\t\tif (typeof raw !== \"string\" && typeof raw !== \"number\") return null;\n\t\tcomponents.push(raw);\n\t}\n\tconst value = encodeResourceId(components);\n\treturn loadRow(referencedQualifiedName, components).then((targetRow) => {\n\t\tconst label = projectLabel(referencedTable, targetRow);\n\t\tout[fields[0]] = {\n\t\t\tvalue,\n\t\t\tlabel,\n\t\t\treferencedQualifiedName\n\t\t};\n\t});\n}\nfunction projectLabel(referencedTable, targetRow) {\n\tif (targetRow === null) return null;\n\tconst display = referencedTable.displayField;\n\tif (display === null) return null;\n\tconst value = targetRow[display];\n\tif (value === null || value === void 0) return null;\n\treturn String(value);\n}\n//#endregion\n//#region src/routes/tables/[table]/[id]/+page.server.ts\nfunction findTable(tables, slug) {\n\treturn tables.find((t) => t.qualifiedName === slug) ?? null;\n}\nfunction tableViewModel(table) {\n\treturn {\n\t\tqualifiedName: table.qualifiedName,\n\t\tlabel: table.label,\n\t\tcanDelete: table.rawTable.privileges?.delete !== false,\n\t\tcolumns: table.columns.map((c) => ({\n\t\t\tname: c.name,\n\t\t\tlabel: c.label,\n\t\t\twidget: c.widget,\n\t\t\tisPrimaryKey: c.isPrimaryKey,\n\t\t\tisForeignKey: c.isForeignKey\n\t\t}))\n\t};\n}\nvar load = async ({ params, locals }) => {\n\tconst table = findTable(locals.schema.tables, params.table);\n\tif (!table) throw error(404, `Unknown table: ${params.table}`);\n\tconst adapter = getAdapter(locals.schema);\n\tconst id = parseResourceId(params.id, table.primaryKey);\n\tconst row = await adapter.get(table.qualifiedName, id);\n\tconst fkLabels = await resolveFkLabels({\n\t\ttable,\n\t\trow,\n\t\tschema: locals.schema,\n\t\tloadRow: (qualifiedName, id) => locals.fkRowCache.get(qualifiedName, id, (qn, identifier) => adapter.get(qn, identifier).catch(() => null))\n\t});\n\treturn {\n\t\ttable: tableViewModel(table),\n\t\trow,\n\t\tfkLabels,\n\t\tid: encodeResourceId(id)\n\t};\n};\nvar actions = { delete: async ({ params, locals }) => {\n\tconst table = findTable(locals.schema.tables, params.table);\n\tif (!table) throw error(404, `Unknown table: ${params.table}`);\n\tif (table.rawTable.privileges?.delete === false) throw error(403, `The configured role may not delete from ${table.qualifiedName}.`);\n\tconst id = parseResourceId(params.id, table.primaryKey);\n\ttry {\n\t\tawait getAdapter(locals.schema).delete(table.qualifiedName, id);\n\t} catch (err) {\n\t\tconst failure = adapterErrorToFailure(err);\n\t\tif (failure !== null) return fail(failure.status, { message: failure.message });\n\t\tthrow err;\n\t}\n\tthrow redirect(303, `/tables/${table.qualifiedName}`);\n} };\n//#endregion\nexport { actions, load };\n","import * as server from '../entries/pages/tables/_table_/_id_/_page.server.ts.js';\n\nexport const index = 6;\nlet component_cache;\nexport const component = async () => component_cache ??= (await import('../entries/pages/tables/_table_/_id_/_page.svelte.js')).default;\nexport { server };\nexport const server_id = \"src/routes/tables/[table]/[id]/+page.server.ts\";\nexport const imports = [\"_app/immutable/nodes/6.B29N2Lfc.js\",\"_app/immutable/chunks/ClT4djUO.js\",\"_app/immutable/chunks/T9HP10fl.js\",\"_app/immutable/chunks/CDKppeAs.js\",\"_app/immutable/chunks/xihTtKlq.js\"];\nexport const stylesheets = [];\nexport const fonts = [];\n"],"names":[],"mappings":"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"}
@@ -1,16 +1,16 @@
1
1
  import { g as getAdapter } from './adapter-DVhZVTjg.js';
2
2
  import { p as parseResourceId, e as encodeResourceId } from './resource-id-CFSW_3aR.js';
3
3
  import { l as loadInitialRelationOptions, e as ensureSelectedOptions } from './relation-options-jz3t9Tvk.js';
4
- import { g as relationFieldConfigs, p as promoteCompositeMemberWidgets, e as demoteUnpickableRelations, f as readFormWithCompositePicks, j as superValidate, z as zod, k as zodFromTable, a as buildMutationPayload } from './composite-form-KsMxMbgc.js';
4
+ import { g as relationFieldConfigs, p as promoteCompositeMemberWidgets, e as demoteUnpickableRelations, f as readFormWithCompositePicks, j as superValidate, z as zod, k as zodFromTable, a as buildMutationPayload } from './composite-form-D2e4A2Ot.js';
5
5
  import { a as adapterErrorToFailure } from './adapter-error-yHvEGaY7.js';
6
6
  import { a as applyPrivilegeReadonly } from './privilege-readonly-CK4k2aYO.js';
7
7
  import { e as error, f as fail, r as redirect } from './index-CVekYGHP.js';
8
- import './internal2-BaDAe3C9.js';
8
+ import './internal2-Cp8lw9Lk.js';
9
9
  import './server-1sE9LKAu.js';
10
10
  import 'clsx';
11
11
  import './index-DBqjc0Yf.js';
12
12
  import 'node:module';
13
- import './client-BBFG1zLB.js';
13
+ import './client-Dcb2GgWd.js';
14
14
  import './app-CYD2rz7t.js';
15
15
  import 'zod/v4/core';
16
16
  import 'zod';
@@ -89,11 +89,11 @@ var _page_server_ts = /*#__PURE__*/Object.freeze({
89
89
 
90
90
  const index = 7;
91
91
  let component_cache;
92
- const component = async () => component_cache ??= (await import('./_page.svelte-CBJR_AG2.js')).default;
92
+ const component = async () => component_cache ??= (await import('./_page.svelte-Bt3iaOxu.js')).default;
93
93
  const server_id = "src/routes/tables/[table]/[id]/edit/+page.server.ts";
94
- const imports = ["_app/immutable/nodes/7.x-apVi4n.js","_app/immutable/chunks/ClT4djUO.js","_app/immutable/chunks/CdzXNSLM.js","_app/immutable/chunks/Bjn-300u.js","_app/immutable/chunks/OhDywA02.js","_app/immutable/chunks/xihTtKlq.js","_app/immutable/chunks/D5sfkRNZ.js","_app/immutable/chunks/BWWvKZIn.js"];
94
+ const imports = ["_app/immutable/nodes/7.CG2wq3TV.js","_app/immutable/chunks/ClT4djUO.js","_app/immutable/chunks/C8rrboGe.js","_app/immutable/chunks/CDKppeAs.js","_app/immutable/chunks/T9HP10fl.js","_app/immutable/chunks/xihTtKlq.js","_app/immutable/chunks/D5sfkRNZ.js","_app/immutable/chunks/nzykfsgm.js"];
95
95
  const stylesheets = [];
96
96
  const fonts = [];
97
97
 
98
98
  export { component, fonts, imports, index, _page_server_ts as server, server_id, stylesheets };
99
- //# sourceMappingURL=7-D4VY7Eta.js.map
99
+ //# sourceMappingURL=7-BUXVvAgT.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"7-D4VY7Eta.js","sources":["../../../.svelte-kit/adapter-node/entries/pages/tables/_table_/_id_/edit/_page.server.ts.js","../../../.svelte-kit/adapter-node/nodes/7.js"],"sourcesContent":["import { t as getAdapter } from \"../../../../../../chunks/adapter.js\";\nimport { n as parseResourceId, t as encodeResourceId } from \"../../../../../../chunks/resource-id.js\";\nimport { n as loadInitialRelationOptions, t as ensureSelectedOptions } from \"../../../../../../chunks/relation-options.js\";\nimport { t as superValidate } from \"../../../../../../chunks/dist.js\";\nimport { i as buildMutationPayload, n as readFormWithCompositePicks, o as zod, r as zodFromTable } from \"../../../../../../chunks/composite-form.js\";\nimport { i as demoteUnpickableRelations, o as promoteCompositeMemberWidgets, s as relationFieldConfigs } from \"../../../../../../chunks/relation-field-config.js\";\nimport { t as adapterErrorToFailure } from \"../../../../../../chunks/adapter-error.js\";\nimport { t as applyPrivilegeReadonly } from \"../../../../../../chunks/privilege-readonly.js\";\nimport { error, fail, redirect } from \"@sveltejs/kit\";\n//#region src/routes/tables/[table]/[id]/edit/+page.server.ts\nfunction findTable(tables, slug) {\n\treturn tables.find((t) => t.qualifiedName === slug) ?? null;\n}\nfunction tableViewModel(table) {\n\treturn {\n\t\tqualifiedName: table.qualifiedName,\n\t\tlabel: table.label,\n\t\tprimaryKey: table.primaryKey,\n\t\tcolumns: table.columns.map((c) => ({\n\t\t\tname: c.name,\n\t\t\tlabel: c.label,\n\t\t\twidget: c.widget,\n\t\t\tenumValues: c.enumValues ?? [],\n\t\t\tnullable: c.nullable,\n\t\t\treadonly: c.readonly || c.isPrimaryKey,\n\t\t\tisPrimaryKey: c.isPrimaryKey\n\t\t}))\n\t};\n}\nvar load = async ({ params, locals }) => {\n\tconst found = findTable(locals.schema.tables, params.table);\n\tif (!found) throw error(404, `Unknown table: ${params.table}`);\n\tconst table = applyPrivilegeReadonly(found, \"update\");\n\tconst adapter = getAdapter(locals.schema);\n\tconst id = parseResourceId(params.id, table.primaryKey);\n\tconst row = await adapter.get(table.qualifiedName, id);\n\tconst relations = relationFieldConfigs(table, locals.schema);\n\tconst formTable = promoteCompositeMemberWidgets(demoteUnpickableRelations(table, relations), relations);\n\tconst form = await superValidate(row, zod(zodFromTable(formTable)));\n\tconst initialOptions = await loadInitialRelationOptions(adapter, relations);\n\tawait ensureSelectedOptions(adapter, relations, row, initialOptions);\n\treturn {\n\t\ttable: tableViewModel(formTable),\n\t\tform,\n\t\tid: encodeResourceId(id),\n\t\trelations,\n\t\tinitialOptions\n\t};\n};\nvar actions = { default: async ({ request, params, locals }) => {\n\tconst found = findTable(locals.schema.tables, params.table);\n\tif (!found) throw error(404, `Unknown table: ${params.table}`);\n\tconst table = applyPrivilegeReadonly(found, \"update\");\n\tconst relations = relationFieldConfigs(table, locals.schema);\n\tconst formTable = promoteCompositeMemberWidgets(demoteUnpickableRelations(table, relations), relations);\n\tconst submission = await readFormWithCompositePicks(request, relations);\n\tif (submission === null) return fail(400, { form: await superValidate(zod(zodFromTable(formTable))) });\n\tconst form = await superValidate(submission, zod(zodFromTable(formTable)));\n\tif (!form.valid) return fail(400, { form });\n\tconst payload = buildMutationPayload(formTable, form.data, \"update\");\n\tconst id = parseResourceId(params.id, table.primaryKey);\n\ttry {\n\t\tawait getAdapter(locals.schema).update(table.qualifiedName, id, payload);\n\t} catch (err) {\n\t\tconst failure = adapterErrorToFailure(err);\n\t\tif (failure !== null) {\n\t\t\tform.valid = false;\n\t\t\tform.message = failure.message;\n\t\t\treturn fail(failure.status, { form });\n\t\t}\n\t\tthrow err;\n\t}\n\tthrow redirect(303, `/tables/${table.qualifiedName}/${encodeResourceId(id)}`);\n} };\n//#endregion\nexport { actions, load };\n","import * as server from '../entries/pages/tables/_table_/_id_/edit/_page.server.ts.js';\n\nexport const index = 7;\nlet component_cache;\nexport const component = async () => component_cache ??= (await import('../entries/pages/tables/_table_/_id_/edit/_page.svelte.js')).default;\nexport { server };\nexport const server_id = \"src/routes/tables/[table]/[id]/edit/+page.server.ts\";\nexport const imports = [\"_app/immutable/nodes/7.x-apVi4n.js\",\"_app/immutable/chunks/ClT4djUO.js\",\"_app/immutable/chunks/CdzXNSLM.js\",\"_app/immutable/chunks/Bjn-300u.js\",\"_app/immutable/chunks/OhDywA02.js\",\"_app/immutable/chunks/xihTtKlq.js\",\"_app/immutable/chunks/D5sfkRNZ.js\",\"_app/immutable/chunks/BWWvKZIn.js\"];\nexport const stylesheets = [];\nexport const fonts = [];\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"7-BUXVvAgT.js","sources":["../../../.svelte-kit/adapter-node/entries/pages/tables/_table_/_id_/edit/_page.server.ts.js","../../../.svelte-kit/adapter-node/nodes/7.js"],"sourcesContent":["import { t as getAdapter } from \"../../../../../../chunks/adapter.js\";\nimport { n as parseResourceId, t as encodeResourceId } from \"../../../../../../chunks/resource-id.js\";\nimport { n as loadInitialRelationOptions, t as ensureSelectedOptions } from \"../../../../../../chunks/relation-options.js\";\nimport { t as superValidate } from \"../../../../../../chunks/dist.js\";\nimport { i as buildMutationPayload, n as readFormWithCompositePicks, o as zod, r as zodFromTable } from \"../../../../../../chunks/composite-form.js\";\nimport { i as demoteUnpickableRelations, o as promoteCompositeMemberWidgets, s as relationFieldConfigs } from \"../../../../../../chunks/relation-field-config.js\";\nimport { t as adapterErrorToFailure } from \"../../../../../../chunks/adapter-error.js\";\nimport { t as applyPrivilegeReadonly } from \"../../../../../../chunks/privilege-readonly.js\";\nimport { error, fail, redirect } from \"@sveltejs/kit\";\n//#region src/routes/tables/[table]/[id]/edit/+page.server.ts\nfunction findTable(tables, slug) {\n\treturn tables.find((t) => t.qualifiedName === slug) ?? null;\n}\nfunction tableViewModel(table) {\n\treturn {\n\t\tqualifiedName: table.qualifiedName,\n\t\tlabel: table.label,\n\t\tprimaryKey: table.primaryKey,\n\t\tcolumns: table.columns.map((c) => ({\n\t\t\tname: c.name,\n\t\t\tlabel: c.label,\n\t\t\twidget: c.widget,\n\t\t\tenumValues: c.enumValues ?? [],\n\t\t\tnullable: c.nullable,\n\t\t\treadonly: c.readonly || c.isPrimaryKey,\n\t\t\tisPrimaryKey: c.isPrimaryKey\n\t\t}))\n\t};\n}\nvar load = async ({ params, locals }) => {\n\tconst found = findTable(locals.schema.tables, params.table);\n\tif (!found) throw error(404, `Unknown table: ${params.table}`);\n\tconst table = applyPrivilegeReadonly(found, \"update\");\n\tconst adapter = getAdapter(locals.schema);\n\tconst id = parseResourceId(params.id, table.primaryKey);\n\tconst row = await adapter.get(table.qualifiedName, id);\n\tconst relations = relationFieldConfigs(table, locals.schema);\n\tconst formTable = promoteCompositeMemberWidgets(demoteUnpickableRelations(table, relations), relations);\n\tconst form = await superValidate(row, zod(zodFromTable(formTable)));\n\tconst initialOptions = await loadInitialRelationOptions(adapter, relations);\n\tawait ensureSelectedOptions(adapter, relations, row, initialOptions);\n\treturn {\n\t\ttable: tableViewModel(formTable),\n\t\tform,\n\t\tid: encodeResourceId(id),\n\t\trelations,\n\t\tinitialOptions\n\t};\n};\nvar actions = { default: async ({ request, params, locals }) => {\n\tconst found = findTable(locals.schema.tables, params.table);\n\tif (!found) throw error(404, `Unknown table: ${params.table}`);\n\tconst table = applyPrivilegeReadonly(found, \"update\");\n\tconst relations = relationFieldConfigs(table, locals.schema);\n\tconst formTable = promoteCompositeMemberWidgets(demoteUnpickableRelations(table, relations), relations);\n\tconst submission = await readFormWithCompositePicks(request, relations);\n\tif (submission === null) return fail(400, { form: await superValidate(zod(zodFromTable(formTable))) });\n\tconst form = await superValidate(submission, zod(zodFromTable(formTable)));\n\tif (!form.valid) return fail(400, { form });\n\tconst payload = buildMutationPayload(formTable, form.data, \"update\");\n\tconst id = parseResourceId(params.id, table.primaryKey);\n\ttry {\n\t\tawait getAdapter(locals.schema).update(table.qualifiedName, id, payload);\n\t} catch (err) {\n\t\tconst failure = adapterErrorToFailure(err);\n\t\tif (failure !== null) {\n\t\t\tform.valid = false;\n\t\t\tform.message = failure.message;\n\t\t\treturn fail(failure.status, { form });\n\t\t}\n\t\tthrow err;\n\t}\n\tthrow redirect(303, `/tables/${table.qualifiedName}/${encodeResourceId(id)}`);\n} };\n//#endregion\nexport { actions, load };\n","import * as server from '../entries/pages/tables/_table_/_id_/edit/_page.server.ts.js';\n\nexport const index = 7;\nlet component_cache;\nexport const component = async () => component_cache ??= (await import('../entries/pages/tables/_table_/_id_/edit/_page.svelte.js')).default;\nexport { server };\nexport const server_id = \"src/routes/tables/[table]/[id]/edit/+page.server.ts\";\nexport const imports = [\"_app/immutable/nodes/7.CG2wq3TV.js\",\"_app/immutable/chunks/ClT4djUO.js\",\"_app/immutable/chunks/C8rrboGe.js\",\"_app/immutable/chunks/CDKppeAs.js\",\"_app/immutable/chunks/T9HP10fl.js\",\"_app/immutable/chunks/xihTtKlq.js\",\"_app/immutable/chunks/D5sfkRNZ.js\",\"_app/immutable/chunks/nzykfsgm.js\"];\nexport const stylesheets = [];\nexport const fonts = [];\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AASA;AACA,SAAS,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE;AACjC,CAAC,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,aAAa,KAAK,IAAI,CAAC,IAAI,IAAI;AAC5D;AACA,SAAS,cAAc,CAAC,KAAK,EAAE;AAC/B,CAAC,OAAO;AACR,EAAE,aAAa,EAAE,KAAK,CAAC,aAAa;AACpC,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK;AACpB,EAAE,UAAU,EAAE,KAAK,CAAC,UAAU;AAC9B,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM;AACrC,GAAG,IAAI,EAAE,CAAC,CAAC,IAAI;AACf,GAAG,KAAK,EAAE,CAAC,CAAC,KAAK;AACjB,GAAG,MAAM,EAAE,CAAC,CAAC,MAAM;AACnB,GAAG,UAAU,EAAE,CAAC,CAAC,UAAU,IAAI,EAAE;AACjC,GAAG,QAAQ,EAAE,CAAC,CAAC,QAAQ;AACvB,GAAG,QAAQ,EAAE,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,YAAY;AACzC,GAAG,YAAY,EAAE,CAAC,CAAC;AACnB,GAAG,CAAC;AACJ,EAAE;AACF;AACA,IAAI,IAAI,GAAG,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK;AACzC,CAAC,MAAM,KAAK,GAAG,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC;AAC5D,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,KAAK,CAAC,GAAG,EAAE,CAAC,eAAe,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;AAC/D,CAAC,MAAM,KAAK,GAAG,sBAAsB,CAAC,KAAK,EAAE,QAAQ,CAAC;AACtD,CAAC,MAAM,OAAO,GAAG,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC;AAC1C,CAAC,MAAM,EAAE,GAAG,eAAe,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,CAAC,UAAU,CAAC;AACxD,CAAC,MAAM,GAAG,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,aAAa,EAAE,EAAE,CAAC;AACvD,CAAC,MAAM,SAAS,GAAG,oBAAoB,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC;AAC7D,CAAC,MAAM,SAAS,GAAG,6BAA6B,CAAC,yBAAyB,CAAC,KAAK,EAAE,SAAS,CAAC,EAAE,SAAS,CAAC;AACxG,CAAC,MAAM,IAAI,GAAG,MAAM,aAAa,CAAC,GAAG,EAAE,GAAG,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC,CAAC;AACpE,CAAC,MAAM,cAAc,GAAG,MAAM,0BAA0B,CAAC,OAAO,EAAE,SAAS,CAAC;AAC5E,CAAC,MAAM,qBAAqB,CAAC,OAAO,EAAE,SAAS,EAAE,GAAG,EAAE,cAAc,CAAC;AACrE,CAAC,OAAO;AACR,EAAE,KAAK,EAAE,cAAc,CAAC,SAAS,CAAC;AAClC,EAAE,IAAI;AACN,EAAE,EAAE,EAAE,gBAAgB,CAAC,EAAE,CAAC;AAC1B,EAAE,SAAS;AACX,EAAE;AACF,EAAE;AACF,CAAC;AACD,IAAI,OAAO,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK;AAChE,CAAC,MAAM,KAAK,GAAG,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC;AAC5D,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,KAAK,CAAC,GAAG,EAAE,CAAC,eAAe,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;AAC/D,CAAC,MAAM,KAAK,GAAG,sBAAsB,CAAC,KAAK,EAAE,QAAQ,CAAC;AACtD,CAAC,MAAM,SAAS,GAAG,oBAAoB,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC;AAC7D,CAAC,MAAM,SAAS,GAAG,6BAA6B,CAAC,yBAAyB,CAAC,KAAK,EAAE,SAAS,CAAC,EAAE,SAAS,CAAC;AACxG,CAAC,MAAM,UAAU,GAAG,MAAM,0BAA0B,CAAC,OAAO,EAAE,SAAS,CAAC;AACxE,CAAC,IAAI,UAAU,KAAK,IAAI,EAAE,OAAO,IAAI,CAAC,GAAG,EAAE,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC,GAAG,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC;AACvG,CAAC,MAAM,IAAI,GAAG,MAAM,aAAa,CAAC,UAAU,EAAE,GAAG,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC,CAAC;AAC3E,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,OAAO,IAAI,CAAC,GAAG,EAAE,EAAE,IAAI,EAAE,CAAC;AAC5C,CAAC,MAAM,OAAO,GAAG,oBAAoB,CAAC,SAAS,EAAE,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC;AACrE,CAAC,MAAM,EAAE,GAAG,eAAe,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,CAAC,UAAU,CAAC;AACxD,CAAC,IAAI;AACL,EAAE,MAAM,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,aAAa,EAAE,EAAE,EAAE,OAAO,CAAC;AAC1E,CAAC,CAAC,CAAC,OAAO,GAAG,EAAE;AACf,EAAE,MAAM,OAAO,GAAG,qBAAqB,CAAC,GAAG,CAAC;AAC5C,EAAE,IAAI,OAAO,KAAK,IAAI,EAAE;AACxB,GAAG,IAAI,CAAC,KAAK,GAAG,KAAK;AACrB,GAAG,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO;AACjC,GAAG,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,CAAC;AACxC,EAAE;AACF,EAAE,MAAM,GAAG;AACX,CAAC;AACD,CAAC,MAAM,QAAQ,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,KAAK,CAAC,aAAa,CAAC,CAAC,EAAE,gBAAgB,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AAC9E,CAAC,EAAE;;;;;;;;ACvES,MAAC,KAAK,GAAG;AACrB,IAAI,eAAe;AACP,MAAC,SAAS,GAAG,YAAY,eAAe,KAAK,CAAC,MAAM,OAAO,4BAA2D,CAAC,EAAE;AAEzH,MAAC,SAAS,GAAG;AACb,MAAC,OAAO,GAAG,CAAC,oCAAoC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC,CAAC,mCAAmC;AAC5S,MAAC,WAAW,GAAG;AACf,MAAC,KAAK,GAAG;;;;"}
@@ -1,16 +1,16 @@
1
1
  import { g as getAdapter } from './adapter-DVhZVTjg.js';
2
2
  import { r as rowIdSegment } from './resource-id-CFSW_3aR.js';
3
3
  import { l as loadInitialRelationOptions } from './relation-options-jz3t9Tvk.js';
4
- import { g as relationFieldConfigs, p as promoteCompositeMemberWidgets, e as demoteUnpickableRelations, f as readFormWithCompositePicks, j as superValidate, z as zod, k as zodFromTable, a as buildMutationPayload, d as dbCanSupplyColumn } from './composite-form-KsMxMbgc.js';
4
+ import { g as relationFieldConfigs, p as promoteCompositeMemberWidgets, e as demoteUnpickableRelations, f as readFormWithCompositePicks, j as superValidate, z as zod, k as zodFromTable, a as buildMutationPayload, d as dbCanSupplyColumn } from './composite-form-D2e4A2Ot.js';
5
5
  import { a as adapterErrorToFailure } from './adapter-error-yHvEGaY7.js';
6
6
  import { a as applyPrivilegeReadonly } from './privilege-readonly-CK4k2aYO.js';
7
7
  import { e as error, f as fail, r as redirect } from './index-CVekYGHP.js';
8
- import './internal2-BaDAe3C9.js';
8
+ import './internal2-Cp8lw9Lk.js';
9
9
  import './server-1sE9LKAu.js';
10
10
  import 'clsx';
11
11
  import './index-DBqjc0Yf.js';
12
12
  import 'node:module';
13
- import './client-BBFG1zLB.js';
13
+ import './client-Dcb2GgWd.js';
14
14
  import './app-CYD2rz7t.js';
15
15
  import 'zod/v4/core';
16
16
  import 'zod';
@@ -86,11 +86,11 @@ var _page_server_ts = /*#__PURE__*/Object.freeze({
86
86
 
87
87
  const index = 8;
88
88
  let component_cache;
89
- const component = async () => component_cache ??= (await import('./_page.svelte-Bqk7F3CL.js')).default;
89
+ const component = async () => component_cache ??= (await import('./_page.svelte-D6rj2r_S.js')).default;
90
90
  const server_id = "src/routes/tables/[table]/new/+page.server.ts";
91
- const imports = ["_app/immutable/nodes/8.DXu_2Qdx.js","_app/immutable/chunks/ClT4djUO.js","_app/immutable/chunks/CdzXNSLM.js","_app/immutable/chunks/Bjn-300u.js","_app/immutable/chunks/OhDywA02.js","_app/immutable/chunks/xihTtKlq.js","_app/immutable/chunks/D5sfkRNZ.js","_app/immutable/chunks/BWWvKZIn.js"];
91
+ const imports = ["_app/immutable/nodes/8.BJ_43uFX.js","_app/immutable/chunks/ClT4djUO.js","_app/immutable/chunks/C8rrboGe.js","_app/immutable/chunks/CDKppeAs.js","_app/immutable/chunks/T9HP10fl.js","_app/immutable/chunks/xihTtKlq.js","_app/immutable/chunks/D5sfkRNZ.js","_app/immutable/chunks/nzykfsgm.js"];
92
92
  const stylesheets = [];
93
93
  const fonts = [];
94
94
 
95
95
  export { component, fonts, imports, index, _page_server_ts as server, server_id, stylesheets };
96
- //# sourceMappingURL=8-CAkMPSY4.js.map
96
+ //# sourceMappingURL=8-DcM7g1_L.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"8-CAkMPSY4.js","sources":["../../../.svelte-kit/adapter-node/entries/pages/tables/_table_/new/_page.server.ts.js","../../../.svelte-kit/adapter-node/nodes/8.js"],"sourcesContent":["import { t as getAdapter } from \"../../../../../chunks/adapter.js\";\nimport { r as rowIdSegment } from \"../../../../../chunks/resource-id.js\";\nimport { n as loadInitialRelationOptions } from \"../../../../../chunks/relation-options.js\";\nimport { t as superValidate } from \"../../../../../chunks/dist.js\";\nimport { a as dbCanSupplyColumn, i as buildMutationPayload, n as readFormWithCompositePicks, o as zod, r as zodFromTable } from \"../../../../../chunks/composite-form.js\";\nimport { i as demoteUnpickableRelations, o as promoteCompositeMemberWidgets, s as relationFieldConfigs } from \"../../../../../chunks/relation-field-config.js\";\nimport { t as adapterErrorToFailure } from \"../../../../../chunks/adapter-error.js\";\nimport { t as applyPrivilegeReadonly } from \"../../../../../chunks/privilege-readonly.js\";\nimport { error, fail, redirect } from \"@sveltejs/kit\";\n//#region src/routes/tables/[table]/new/+page.server.ts\nfunction findTable(tables, slug) {\n\treturn tables.find((t) => t.qualifiedName === slug) ?? null;\n}\nfunction tableViewModel(table) {\n\treturn {\n\t\tqualifiedName: table.qualifiedName,\n\t\tlabel: table.label,\n\t\tprimaryKey: table.primaryKey,\n\t\tcolumns: table.columns.map((c) => ({\n\t\t\tname: c.name,\n\t\t\tlabel: c.label,\n\t\t\twidget: c.widget,\n\t\t\tenumValues: c.enumValues ?? [],\n\t\t\tnullable: c.nullable,\n\t\t\tdbCanSupply: dbCanSupplyColumn(c),\n\t\t\treadonly: c.readonly || c.isPrimaryKey && c.defaultExpr !== null,\n\t\t\tisPrimaryKey: c.isPrimaryKey\n\t\t}))\n\t};\n}\nvar load = async ({ params, locals }) => {\n\tconst found = findTable(locals.schema.tables, params.table);\n\tif (!found) throw error(404, `Unknown table: ${params.table}`);\n\tconst table = applyPrivilegeReadonly(found, \"create\");\n\tconst relations = relationFieldConfigs(table, locals.schema);\n\tconst formTable = promoteCompositeMemberWidgets(demoteUnpickableRelations(table, relations), relations);\n\tconst form = await superValidate(zod(zodFromTable(formTable)));\n\tconst initialOptions = await loadInitialRelationOptions(getAdapter(locals.schema), relations);\n\treturn {\n\t\ttable: tableViewModel(formTable),\n\t\tform,\n\t\trelations,\n\t\tinitialOptions\n\t};\n};\nvar actions = { default: async ({ request, params, locals }) => {\n\tconst found = findTable(locals.schema.tables, params.table);\n\tif (!found) throw error(404, `Unknown table: ${params.table}`);\n\tconst table = applyPrivilegeReadonly(found, \"create\");\n\tconst relations = relationFieldConfigs(table, locals.schema);\n\tconst formTable = promoteCompositeMemberWidgets(demoteUnpickableRelations(table, relations), relations);\n\tconst submission = await readFormWithCompositePicks(request, relations);\n\tif (submission === null) return fail(400, { form: await superValidate(zod(zodFromTable(formTable))) });\n\tconst form = await superValidate(submission, zod(zodFromTable(formTable)));\n\tif (!form.valid) return fail(400, { form });\n\tconst payload = buildMutationPayload(formTable, form.data);\n\tlet created;\n\ttry {\n\t\tcreated = await getAdapter(locals.schema).create(table.qualifiedName, payload);\n\t} catch (err) {\n\t\tconst failure = adapterErrorToFailure(err);\n\t\tif (failure !== null) {\n\t\t\tform.valid = false;\n\t\t\tform.message = failure.message;\n\t\t\treturn fail(failure.status, { form });\n\t\t}\n\t\tthrow err;\n\t}\n\tconst segment = rowIdSegment(created, table.primaryKey);\n\tthrow redirect(303, segment !== null ? `/tables/${table.qualifiedName}/${segment}` : `/tables/${table.qualifiedName}`);\n} };\n//#endregion\nexport { actions, load };\n","import * as server from '../entries/pages/tables/_table_/new/_page.server.ts.js';\n\nexport const index = 8;\nlet component_cache;\nexport const component = async () => component_cache ??= (await import('../entries/pages/tables/_table_/new/_page.svelte.js')).default;\nexport { server };\nexport const server_id = \"src/routes/tables/[table]/new/+page.server.ts\";\nexport const imports = [\"_app/immutable/nodes/8.DXu_2Qdx.js\",\"_app/immutable/chunks/ClT4djUO.js\",\"_app/immutable/chunks/CdzXNSLM.js\",\"_app/immutable/chunks/Bjn-300u.js\",\"_app/immutable/chunks/OhDywA02.js\",\"_app/immutable/chunks/xihTtKlq.js\",\"_app/immutable/chunks/D5sfkRNZ.js\",\"_app/immutable/chunks/BWWvKZIn.js\"];\nexport const stylesheets = [];\nexport const fonts = [];\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"8-DcM7g1_L.js","sources":["../../../.svelte-kit/adapter-node/entries/pages/tables/_table_/new/_page.server.ts.js","../../../.svelte-kit/adapter-node/nodes/8.js"],"sourcesContent":["import { t as getAdapter } from \"../../../../../chunks/adapter.js\";\nimport { r as rowIdSegment } from \"../../../../../chunks/resource-id.js\";\nimport { n as loadInitialRelationOptions } from \"../../../../../chunks/relation-options.js\";\nimport { t as superValidate } from \"../../../../../chunks/dist.js\";\nimport { a as dbCanSupplyColumn, i as buildMutationPayload, n as readFormWithCompositePicks, o as zod, r as zodFromTable } from \"../../../../../chunks/composite-form.js\";\nimport { i as demoteUnpickableRelations, o as promoteCompositeMemberWidgets, s as relationFieldConfigs } from \"../../../../../chunks/relation-field-config.js\";\nimport { t as adapterErrorToFailure } from \"../../../../../chunks/adapter-error.js\";\nimport { t as applyPrivilegeReadonly } from \"../../../../../chunks/privilege-readonly.js\";\nimport { error, fail, redirect } from \"@sveltejs/kit\";\n//#region src/routes/tables/[table]/new/+page.server.ts\nfunction findTable(tables, slug) {\n\treturn tables.find((t) => t.qualifiedName === slug) ?? null;\n}\nfunction tableViewModel(table) {\n\treturn {\n\t\tqualifiedName: table.qualifiedName,\n\t\tlabel: table.label,\n\t\tprimaryKey: table.primaryKey,\n\t\tcolumns: table.columns.map((c) => ({\n\t\t\tname: c.name,\n\t\t\tlabel: c.label,\n\t\t\twidget: c.widget,\n\t\t\tenumValues: c.enumValues ?? [],\n\t\t\tnullable: c.nullable,\n\t\t\tdbCanSupply: dbCanSupplyColumn(c),\n\t\t\treadonly: c.readonly || c.isPrimaryKey && c.defaultExpr !== null,\n\t\t\tisPrimaryKey: c.isPrimaryKey\n\t\t}))\n\t};\n}\nvar load = async ({ params, locals }) => {\n\tconst found = findTable(locals.schema.tables, params.table);\n\tif (!found) throw error(404, `Unknown table: ${params.table}`);\n\tconst table = applyPrivilegeReadonly(found, \"create\");\n\tconst relations = relationFieldConfigs(table, locals.schema);\n\tconst formTable = promoteCompositeMemberWidgets(demoteUnpickableRelations(table, relations), relations);\n\tconst form = await superValidate(zod(zodFromTable(formTable)));\n\tconst initialOptions = await loadInitialRelationOptions(getAdapter(locals.schema), relations);\n\treturn {\n\t\ttable: tableViewModel(formTable),\n\t\tform,\n\t\trelations,\n\t\tinitialOptions\n\t};\n};\nvar actions = { default: async ({ request, params, locals }) => {\n\tconst found = findTable(locals.schema.tables, params.table);\n\tif (!found) throw error(404, `Unknown table: ${params.table}`);\n\tconst table = applyPrivilegeReadonly(found, \"create\");\n\tconst relations = relationFieldConfigs(table, locals.schema);\n\tconst formTable = promoteCompositeMemberWidgets(demoteUnpickableRelations(table, relations), relations);\n\tconst submission = await readFormWithCompositePicks(request, relations);\n\tif (submission === null) return fail(400, { form: await superValidate(zod(zodFromTable(formTable))) });\n\tconst form = await superValidate(submission, zod(zodFromTable(formTable)));\n\tif (!form.valid) return fail(400, { form });\n\tconst payload = buildMutationPayload(formTable, form.data);\n\tlet created;\n\ttry {\n\t\tcreated = await getAdapter(locals.schema).create(table.qualifiedName, payload);\n\t} catch (err) {\n\t\tconst failure = adapterErrorToFailure(err);\n\t\tif (failure !== null) {\n\t\t\tform.valid = false;\n\t\t\tform.message = failure.message;\n\t\t\treturn fail(failure.status, { form });\n\t\t}\n\t\tthrow err;\n\t}\n\tconst segment = rowIdSegment(created, table.primaryKey);\n\tthrow redirect(303, segment !== null ? `/tables/${table.qualifiedName}/${segment}` : `/tables/${table.qualifiedName}`);\n} };\n//#endregion\nexport { actions, load };\n","import * as server from '../entries/pages/tables/_table_/new/_page.server.ts.js';\n\nexport const index = 8;\nlet component_cache;\nexport const component = async () => component_cache ??= (await import('../entries/pages/tables/_table_/new/_page.svelte.js')).default;\nexport { server };\nexport const server_id = \"src/routes/tables/[table]/new/+page.server.ts\";\nexport const imports = [\"_app/immutable/nodes/8.BJ_43uFX.js\",\"_app/immutable/chunks/ClT4djUO.js\",\"_app/immutable/chunks/C8rrboGe.js\",\"_app/immutable/chunks/CDKppeAs.js\",\"_app/immutable/chunks/T9HP10fl.js\",\"_app/immutable/chunks/xihTtKlq.js\",\"_app/immutable/chunks/D5sfkRNZ.js\",\"_app/immutable/chunks/nzykfsgm.js\"];\nexport const stylesheets = [];\nexport const fonts = [];\n"],"names":[],"mappings":"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"}
@@ -1,11 +1,11 @@
1
1
  import { q as escape_html, o as ensure_array_like, a7 as store_mutate, a6 as store_get, d as attr, m as derived, ab as unsubscribe_stores } from './server-1sE9LKAu.js';
2
- import { h as superForm } from './composite-form-KsMxMbgc.js';
2
+ import { h as superForm } from './composite-form-D2e4A2Ot.js';
3
3
  import { R as Relation_select_field, r as resolveWidget } from './widget-registry-D4uP1dwJ.js';
4
4
  import 'clsx';
5
- import './internal2-BaDAe3C9.js';
5
+ import './internal2-Cp8lw9Lk.js';
6
6
  import './index-DBqjc0Yf.js';
7
7
  import 'node:module';
8
- import './client-BBFG1zLB.js';
8
+ import './client-Dcb2GgWd.js';
9
9
  import './app-CYD2rz7t.js';
10
10
  import './index-CVekYGHP.js';
11
11
  import 'zod/v4/core';
@@ -140,4 +140,4 @@ function _page($$renderer, $$props) {
140
140
  }
141
141
 
142
142
  export { _page as default };
143
- //# sourceMappingURL=_page.svelte-D9WnRc7S.js.map
143
+ //# sourceMappingURL=_page.svelte-B8oSt9qH.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"_page.svelte-D9WnRc7S.js","sources":["../../../.svelte-kit/adapter-node/entries/pages/actions/_fn_/_page.svelte.js"],"sourcesContent":["import { a as store_get, b as attr, n as derived, o as store_mutate, r as ensure_array_like, s as unsubscribe_stores, x as escape_html } from \"../../../../chunks/server.js\";\nimport { r as superForm } from \"../../../../chunks/dist.js\";\nimport { n as Relation_select_field, t as resolveWidget } from \"../../../../chunks/widget-registry.js\";\n//#region src/routes/actions/[fn]/+page.svelte\nfunction _page($$renderer, $$props) {\n\t$$renderer.component(($$renderer) => {\n\t\tvar $$store_subs;\n\t\tlet { data, form: actionData } = $$props;\n\t\tconst relationByField = derived(() => new Map(data.relations.map((r) => [r.field, r])));\n\t\tconst { form, errors, enhance, submitting } = superForm(data.form, { dataType: \"json\" });\n\t\tconst relationForm = form;\n\t\tconst rpcOk = derived(() => actionData !== null && actionData !== void 0 && \"rpcOk\" in actionData);\n\t\tconst rpcError = derived(() => actionData && \"rpcError\" in actionData ? actionData.rpcError : null);\n\t\tconst resultText = derived(() => {\n\t\t\tif (actionData === null || actionData === void 0 || !(\"rpcResult\" in actionData)) return null;\n\t\t\treturn actionData.rpcResult === null ? null : JSON.stringify(actionData.rpcResult, null, 2);\n\t\t});\n\t\tlet $$settled = true;\n\t\tlet $$inner_renderer;\n\t\tfunction $$render_inner($$renderer) {\n\t\t\t$$renderer.push(`<h1 class=\"mb-1 text-2xl font-semibold\">${escape_html(data.action.label)}</h1> <p class=\"mb-2 text-sm text-muted-foreground\">${escape_html(data.action.qualifiedName)}</p> <div class=\"mb-6 flex flex-wrap gap-2 text-xs\"><span class=\"rounded-full border border-border px-2 py-0.5 text-muted-foreground\">${escape_html(data.action.security === \"definer\" ? \"security definer\" : \"security invoker\")}</span> <span class=\"rounded-full border border-border px-2 py-0.5 text-muted-foreground\">${escape_html(data.action.volatility)}</span></div> `);\n\t\t\tif (data.action.description) {\n\t\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t\t$$renderer.push(`<p class=\"mb-4 whitespace-pre-line text-sm\">${escape_html(data.action.description)}</p>`);\n\t\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t\t$$renderer.push(`<!--]--> `);\n\t\t\tif (data.action.aiDescription) {\n\t\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t\t$$renderer.push(`<div class=\"mb-4 rounded-md border border-border bg-muted/40 p-3 text-sm\"><div class=\"mb-1 font-medium\">AI notes</div> <p class=\"whitespace-pre-line text-muted-foreground\">${escape_html(data.action.aiDescription)}</p></div>`);\n\t\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t\t$$renderer.push(`<!--]--> `);\n\t\t\tif (data.action.policy.length > 0) {\n\t\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t\t$$renderer.push(`<div class=\"mb-4 rounded-md border border-border bg-muted/40 p-3 text-sm\"><div class=\"mb-1 font-medium\">Policy</div> <ul class=\"list-disc pl-5 text-muted-foreground\"><!--[-->`);\n\t\t\t\tconst each_array = ensure_array_like(data.action.policy);\n\t\t\t\tfor (let $$index = 0, $$length = each_array.length; $$index < $$length; $$index++) {\n\t\t\t\t\tlet rule = each_array[$$index];\n\t\t\t\t\t$$renderer.push(`<li>${escape_html(rule)}</li>`);\n\t\t\t\t}\n\t\t\t\t$$renderer.push(`<!--]--></ul></div>`);\n\t\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t\t$$renderer.push(`<!--]--> `);\n\t\t\tif (rpcError()) {\n\t\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t\t$$renderer.push(`<p class=\"mb-4 rounded-md border border-destructive/50 bg-destructive/10 p-3 text-sm text-destructive\">${escape_html(rpcError())}</p>`);\n\t\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t\t$$renderer.push(`<!--]--> `);\n\t\t\tif (rpcOk()) {\n\t\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t\t$$renderer.push(`<div class=\"mb-4 rounded-md border border-border bg-muted/40 p-3\"><div class=\"mb-1 text-sm font-medium\">Result</div> `);\n\t\t\t\tif (resultText() === null) {\n\t\t\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t\t\t$$renderer.push(`<p class=\"text-sm text-muted-foreground\">No result (the action returned void).</p>`);\n\t\t\t\t} else {\n\t\t\t\t\t$$renderer.push(\"<!--[-1-->\");\n\t\t\t\t\t$$renderer.push(`<pre class=\"overflow-x-auto text-sm\"><code>${escape_html(resultText())}</code></pre>`);\n\t\t\t\t}\n\t\t\t\t$$renderer.push(`<!--]--></div>`);\n\t\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t\t$$renderer.push(`<!--]--> <form method=\"POST\" class=\"space-y-4\"><!--[-->`);\n\t\t\tconst each_array_1 = ensure_array_like(data.action.args);\n\t\t\tfor (let $$index_1 = 0, $$length = each_array_1.length; $$index_1 < $$length; $$index_1++) {\n\t\t\t\tlet arg = each_array_1[$$index_1];\n\t\t\t\tconst relation = relationByField().get(arg.name);\n\t\t\t\t$$renderer.push(`<div>`);\n\t\t\t\tif (arg.widget === \"relation-select\" && relation) {\n\t\t\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t\t\t$$renderer.push(`<!---->`);\n\t\t\t\t\tRelation_select_field($$renderer, {\n\t\t\t\t\t\tname: arg.name,\n\t\t\t\t\t\tlabel: arg.label,\n\t\t\t\t\t\tresource: relation.resource,\n\t\t\t\t\t\tlabelField: relation.labelField,\n\t\t\t\t\t\tsearchFields: relation.searchFields,\n\t\t\t\t\t\tinitialOptions: data.initialOptions[arg.name] ?? [],\n\t\t\t\t\t\trequired: arg.required,\n\t\t\t\t\t\treadonly: false,\n\t\t\t\t\t\tget value() {\n\t\t\t\t\t\t\treturn store_get($$store_subs ??= {}, \"$relationForm\", relationForm)[arg.name];\n\t\t\t\t\t\t},\n\t\t\t\t\t\tset value($$value) {\n\t\t\t\t\t\t\tstore_mutate($$store_subs ??= {}, \"$relationForm\", relationForm, store_get($$store_subs ??= {}, \"$relationForm\", relationForm)[arg.name] = $$value);\n\t\t\t\t\t\t\t$$settled = false;\n\t\t\t\t\t\t}\n\t\t\t\t\t});\n\t\t\t\t\t$$renderer.push(`<!---->`);\n\t\t\t\t} else {\n\t\t\t\t\t$$renderer.push(\"<!--[-1-->\");\n\t\t\t\t\tconst Widget = resolveWidget(arg.widget);\n\t\t\t\t\tif (Widget) {\n\t\t\t\t\t\t$$renderer.push(\"<!--[-->\");\n\t\t\t\t\t\tWidget($$renderer, {\n\t\t\t\t\t\t\tname: arg.name,\n\t\t\t\t\t\t\tlabel: arg.label,\n\t\t\t\t\t\t\toptions: arg.enumValues,\n\t\t\t\t\t\t\trequired: arg.required,\n\t\t\t\t\t\t\treadonly: false,\n\t\t\t\t\t\t\tget value() {\n\t\t\t\t\t\t\t\treturn store_get($$store_subs ??= {}, \"$form\", form)[arg.name];\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tset value($$value) {\n\t\t\t\t\t\t\t\tstore_mutate($$store_subs ??= {}, \"$form\", form, store_get($$store_subs ??= {}, \"$form\", form)[arg.name] = $$value);\n\t\t\t\t\t\t\t\t$$settled = false;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t});\n\t\t\t\t\t\t$$renderer.push(\"<!--]-->\");\n\t\t\t\t\t} else {\n\t\t\t\t\t\t$$renderer.push(\"<!--[!-->\");\n\t\t\t\t\t\t$$renderer.push(\"<!--]-->\");\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\t$$renderer.push(`<!--]--> `);\n\t\t\t\tif (store_get($$store_subs ??= {}, \"$errors\", errors)[arg.name]) {\n\t\t\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t\t\t$$renderer.push(`<p class=\"mt-1 text-sm text-destructive\">${escape_html(store_get($$store_subs ??= {}, \"$errors\", errors)[arg.name])}</p>`);\n\t\t\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t\t\t$$renderer.push(`<!--]--></div>`);\n\t\t\t}\n\t\t\t$$renderer.push(`<!--]--> <div class=\"flex gap-3\"><button type=\"submit\"${attr(\"disabled\", store_get($$store_subs ??= {}, \"$submitting\", submitting), true)} class=\"rounded-md bg-primary px-4 py-2 text-sm font-medium text-primary-foreground disabled:opacity-50\">${escape_html(store_get($$store_subs ??= {}, \"$submitting\", submitting) ? \"Running…\" : \"Run action\")}</button> <a href=\"/\" class=\"rounded-md border border-border px-4 py-2 text-sm font-medium\">Cancel</a></div></form>`);\n\t\t}\n\t\tdo {\n\t\t\t$$settled = true;\n\t\t\t$$inner_renderer = $$renderer.copy();\n\t\t\t$$render_inner($$inner_renderer);\n\t\t} while (!$$settled);\n\t\t$$renderer.subsume($$inner_renderer);\n\t\tif ($$store_subs) unsubscribe_stores($$store_subs);\n\t});\n}\n//#endregion\nexport { _page as default };\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"_page.svelte-B8oSt9qH.js","sources":["../../../.svelte-kit/adapter-node/entries/pages/actions/_fn_/_page.svelte.js"],"sourcesContent":["import { a as store_get, b as attr, n as derived, o as store_mutate, r as ensure_array_like, s as unsubscribe_stores, x as escape_html } from \"../../../../chunks/server.js\";\nimport { r as superForm } from \"../../../../chunks/dist.js\";\nimport { n as Relation_select_field, t as resolveWidget } from \"../../../../chunks/widget-registry.js\";\n//#region src/routes/actions/[fn]/+page.svelte\nfunction _page($$renderer, $$props) {\n\t$$renderer.component(($$renderer) => {\n\t\tvar $$store_subs;\n\t\tlet { data, form: actionData } = $$props;\n\t\tconst relationByField = derived(() => new Map(data.relations.map((r) => [r.field, r])));\n\t\tconst { form, errors, enhance, submitting } = superForm(data.form, { dataType: \"json\" });\n\t\tconst relationForm = form;\n\t\tconst rpcOk = derived(() => actionData !== null && actionData !== void 0 && \"rpcOk\" in actionData);\n\t\tconst rpcError = derived(() => actionData && \"rpcError\" in actionData ? actionData.rpcError : null);\n\t\tconst resultText = derived(() => {\n\t\t\tif (actionData === null || actionData === void 0 || !(\"rpcResult\" in actionData)) return null;\n\t\t\treturn actionData.rpcResult === null ? null : JSON.stringify(actionData.rpcResult, null, 2);\n\t\t});\n\t\tlet $$settled = true;\n\t\tlet $$inner_renderer;\n\t\tfunction $$render_inner($$renderer) {\n\t\t\t$$renderer.push(`<h1 class=\"mb-1 text-2xl font-semibold\">${escape_html(data.action.label)}</h1> <p class=\"mb-2 text-sm text-muted-foreground\">${escape_html(data.action.qualifiedName)}</p> <div class=\"mb-6 flex flex-wrap gap-2 text-xs\"><span class=\"rounded-full border border-border px-2 py-0.5 text-muted-foreground\">${escape_html(data.action.security === \"definer\" ? \"security definer\" : \"security invoker\")}</span> <span class=\"rounded-full border border-border px-2 py-0.5 text-muted-foreground\">${escape_html(data.action.volatility)}</span></div> `);\n\t\t\tif (data.action.description) {\n\t\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t\t$$renderer.push(`<p class=\"mb-4 whitespace-pre-line text-sm\">${escape_html(data.action.description)}</p>`);\n\t\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t\t$$renderer.push(`<!--]--> `);\n\t\t\tif (data.action.aiDescription) {\n\t\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t\t$$renderer.push(`<div class=\"mb-4 rounded-md border border-border bg-muted/40 p-3 text-sm\"><div class=\"mb-1 font-medium\">AI notes</div> <p class=\"whitespace-pre-line text-muted-foreground\">${escape_html(data.action.aiDescription)}</p></div>`);\n\t\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t\t$$renderer.push(`<!--]--> `);\n\t\t\tif (data.action.policy.length > 0) {\n\t\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t\t$$renderer.push(`<div class=\"mb-4 rounded-md border border-border bg-muted/40 p-3 text-sm\"><div class=\"mb-1 font-medium\">Policy</div> <ul class=\"list-disc pl-5 text-muted-foreground\"><!--[-->`);\n\t\t\t\tconst each_array = ensure_array_like(data.action.policy);\n\t\t\t\tfor (let $$index = 0, $$length = each_array.length; $$index < $$length; $$index++) {\n\t\t\t\t\tlet rule = each_array[$$index];\n\t\t\t\t\t$$renderer.push(`<li>${escape_html(rule)}</li>`);\n\t\t\t\t}\n\t\t\t\t$$renderer.push(`<!--]--></ul></div>`);\n\t\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t\t$$renderer.push(`<!--]--> `);\n\t\t\tif (rpcError()) {\n\t\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t\t$$renderer.push(`<p class=\"mb-4 rounded-md border border-destructive/50 bg-destructive/10 p-3 text-sm text-destructive\">${escape_html(rpcError())}</p>`);\n\t\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t\t$$renderer.push(`<!--]--> `);\n\t\t\tif (rpcOk()) {\n\t\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t\t$$renderer.push(`<div class=\"mb-4 rounded-md border border-border bg-muted/40 p-3\"><div class=\"mb-1 text-sm font-medium\">Result</div> `);\n\t\t\t\tif (resultText() === null) {\n\t\t\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t\t\t$$renderer.push(`<p class=\"text-sm text-muted-foreground\">No result (the action returned void).</p>`);\n\t\t\t\t} else {\n\t\t\t\t\t$$renderer.push(\"<!--[-1-->\");\n\t\t\t\t\t$$renderer.push(`<pre class=\"overflow-x-auto text-sm\"><code>${escape_html(resultText())}</code></pre>`);\n\t\t\t\t}\n\t\t\t\t$$renderer.push(`<!--]--></div>`);\n\t\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t\t$$renderer.push(`<!--]--> <form method=\"POST\" class=\"space-y-4\"><!--[-->`);\n\t\t\tconst each_array_1 = ensure_array_like(data.action.args);\n\t\t\tfor (let $$index_1 = 0, $$length = each_array_1.length; $$index_1 < $$length; $$index_1++) {\n\t\t\t\tlet arg = each_array_1[$$index_1];\n\t\t\t\tconst relation = relationByField().get(arg.name);\n\t\t\t\t$$renderer.push(`<div>`);\n\t\t\t\tif (arg.widget === \"relation-select\" && relation) {\n\t\t\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t\t\t$$renderer.push(`<!---->`);\n\t\t\t\t\tRelation_select_field($$renderer, {\n\t\t\t\t\t\tname: arg.name,\n\t\t\t\t\t\tlabel: arg.label,\n\t\t\t\t\t\tresource: relation.resource,\n\t\t\t\t\t\tlabelField: relation.labelField,\n\t\t\t\t\t\tsearchFields: relation.searchFields,\n\t\t\t\t\t\tinitialOptions: data.initialOptions[arg.name] ?? [],\n\t\t\t\t\t\trequired: arg.required,\n\t\t\t\t\t\treadonly: false,\n\t\t\t\t\t\tget value() {\n\t\t\t\t\t\t\treturn store_get($$store_subs ??= {}, \"$relationForm\", relationForm)[arg.name];\n\t\t\t\t\t\t},\n\t\t\t\t\t\tset value($$value) {\n\t\t\t\t\t\t\tstore_mutate($$store_subs ??= {}, \"$relationForm\", relationForm, store_get($$store_subs ??= {}, \"$relationForm\", relationForm)[arg.name] = $$value);\n\t\t\t\t\t\t\t$$settled = false;\n\t\t\t\t\t\t}\n\t\t\t\t\t});\n\t\t\t\t\t$$renderer.push(`<!---->`);\n\t\t\t\t} else {\n\t\t\t\t\t$$renderer.push(\"<!--[-1-->\");\n\t\t\t\t\tconst Widget = resolveWidget(arg.widget);\n\t\t\t\t\tif (Widget) {\n\t\t\t\t\t\t$$renderer.push(\"<!--[-->\");\n\t\t\t\t\t\tWidget($$renderer, {\n\t\t\t\t\t\t\tname: arg.name,\n\t\t\t\t\t\t\tlabel: arg.label,\n\t\t\t\t\t\t\toptions: arg.enumValues,\n\t\t\t\t\t\t\trequired: arg.required,\n\t\t\t\t\t\t\treadonly: false,\n\t\t\t\t\t\t\tget value() {\n\t\t\t\t\t\t\t\treturn store_get($$store_subs ??= {}, \"$form\", form)[arg.name];\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tset value($$value) {\n\t\t\t\t\t\t\t\tstore_mutate($$store_subs ??= {}, \"$form\", form, store_get($$store_subs ??= {}, \"$form\", form)[arg.name] = $$value);\n\t\t\t\t\t\t\t\t$$settled = false;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t});\n\t\t\t\t\t\t$$renderer.push(\"<!--]-->\");\n\t\t\t\t\t} else {\n\t\t\t\t\t\t$$renderer.push(\"<!--[!-->\");\n\t\t\t\t\t\t$$renderer.push(\"<!--]-->\");\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\t$$renderer.push(`<!--]--> `);\n\t\t\t\tif (store_get($$store_subs ??= {}, \"$errors\", errors)[arg.name]) {\n\t\t\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t\t\t$$renderer.push(`<p class=\"mt-1 text-sm text-destructive\">${escape_html(store_get($$store_subs ??= {}, \"$errors\", errors)[arg.name])}</p>`);\n\t\t\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t\t\t$$renderer.push(`<!--]--></div>`);\n\t\t\t}\n\t\t\t$$renderer.push(`<!--]--> <div class=\"flex gap-3\"><button type=\"submit\"${attr(\"disabled\", store_get($$store_subs ??= {}, \"$submitting\", submitting), true)} class=\"rounded-md bg-primary px-4 py-2 text-sm font-medium text-primary-foreground disabled:opacity-50\">${escape_html(store_get($$store_subs ??= {}, \"$submitting\", submitting) ? \"Running…\" : \"Run action\")}</button> <a href=\"/\" class=\"rounded-md border border-border px-4 py-2 text-sm font-medium\">Cancel</a></div></form>`);\n\t\t}\n\t\tdo {\n\t\t\t$$settled = true;\n\t\t\t$$inner_renderer = $$renderer.copy();\n\t\t\t$$render_inner($$inner_renderer);\n\t\t} while (!$$settled);\n\t\t$$renderer.subsume($$inner_renderer);\n\t\tif ($$store_subs) unsubscribe_stores($$store_subs);\n\t});\n}\n//#endregion\nexport { _page as default };\n"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { d as attr, q as escape_html, o as ensure_array_like } from './server-1sE9LKAu.js';
2
- import './internal2-BaDAe3C9.js';
3
- import './client-BBFG1zLB.js';
2
+ import './internal2-Cp8lw9Lk.js';
3
+ import './client-Dcb2GgWd.js';
4
4
  import 'clsx';
5
5
  import './index-DBqjc0Yf.js';
6
6
  import 'node:module';
@@ -93,4 +93,4 @@ function _page($$renderer, $$props) {
93
93
  }
94
94
 
95
95
  export { _page as default };
96
- //# sourceMappingURL=_page.svelte-5hyURw8O.js.map
96
+ //# sourceMappingURL=_page.svelte-BOCed0K0.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"_page.svelte-5hyURw8O.js","sources":["../../../.svelte-kit/adapter-node/entries/pages/tables/_table_/_id_/_page.svelte.js"],"sourcesContent":["import { b as attr, r as ensure_array_like, x as escape_html } from \"../../../../../chunks/server.js\";\nimport \"../../../../../chunks/forms.js\";\n//#region ../ui-core/dist/detail/format-cell.js\nfunction formatCellValue(input) {\n\tconst { value, widget } = input;\n\tif (value === null || value === void 0) return \"\";\n\tswitch (widget) {\n\t\tcase \"boolean\": return value ? \"Yes\" : \"No\";\n\t\tcase \"date\": return formatDate(value);\n\t\tcase \"datetime\": return formatDateTime(value);\n\t\tcase \"json\":\n\t\t\tif (typeof value === \"object\") try {\n\t\t\t\treturn JSON.stringify(value, null, 2);\n\t\t\t} catch {\n\t\t\t\treturn String(value);\n\t\t\t}\n\t\t\treturn String(value);\n\t\tdefault:\n\t\t\tif (typeof value === \"object\") try {\n\t\t\t\treturn JSON.stringify(value);\n\t\t\t} catch {\n\t\t\t\treturn String(value);\n\t\t\t}\n\t\t\treturn String(value);\n\t}\n}\nfunction formatDate(value) {\n\tconst d = new Date(value);\n\tif (Number.isNaN(d.getTime())) return String(value);\n\treturn d.toISOString().slice(0, 10);\n}\nfunction formatDateTime(value) {\n\tconst d = new Date(value);\n\tif (Number.isNaN(d.getTime())) return String(value);\n\treturn d.toISOString().replace(\"T\", \" \").slice(0, 19);\n}\n//#endregion\n//#region src/routes/tables/[table]/[id]/+page.svelte\nfunction _page($$renderer, $$props) {\n\t$$renderer.component(($$renderer) => {\n\t\tlet { data, form } = $$props;\n\t\t$$renderer.push(`<a${attr(\"href\", `/tables/${data.table.qualifiedName}`)} class=\"mb-4 inline-flex items-center gap-1 text-sm text-muted-foreground hover:text-foreground\"><span aria-hidden=\"true\">←</span> ${escape_html(data.table.label)}</a> <h1 class=\"mb-1 text-2xl font-semibold\">${escape_html(data.table.label)}</h1> <p class=\"mb-6 text-sm text-muted-foreground\">${escape_html(data.table.qualifiedName)} / ${escape_html(data.id)}</p> <dl class=\"space-y-4\"><!--[-->`);\n\t\tconst each_array = ensure_array_like(data.table.columns);\n\t\tfor (let $$index = 0, $$length = each_array.length; $$index < $$length; $$index++) {\n\t\t\tlet col = each_array[$$index];\n\t\t\tconst rawValue = data.row[col.name];\n\t\t\tconst fkLabel = data.fkLabels[col.name];\n\t\t\t$$renderer.push(`<div><dt class=\"text-sm font-medium text-muted-foreground\">${escape_html(col.label)}</dt> <dd class=\"mt-1 text-sm\">`);\n\t\t\tif (col.widget === \"json\") {\n\t\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t\t$$renderer.push(`<pre class=\"overflow-x-auto rounded-md bg-muted p-2 font-mono text-xs\">${escape_html(formatCellValue({\n\t\t\t\t\tvalue: rawValue,\n\t\t\t\t\twidget: col.widget\n\t\t\t\t}))}</pre>`);\n\t\t\t} else if (col.widget === \"image-url\" && rawValue) {\n\t\t\t\t$$renderer.push(\"<!--[1-->\");\n\t\t\t\t$$renderer.push(`<img${attr(\"src\", String(rawValue))}${attr(\"alt\", col.label)} class=\"max-h-48 rounded-md border border-border object-contain\" loading=\"lazy\"/>`);\n\t\t\t} else if (rawValue === null || rawValue === void 0) {\n\t\t\t\t$$renderer.push(\"<!--[2-->\");\n\t\t\t\t$$renderer.push(`<span class=\"text-muted-foreground\">—</span>`);\n\t\t\t} else if (fkLabel !== void 0 && fkLabel.label !== null) {\n\t\t\t\t$$renderer.push(\"<!--[3-->\");\n\t\t\t\t$$renderer.push(`<a${attr(\"href\", `/tables/${fkLabel.referencedQualifiedName}/${fkLabel.value}`)} class=\"text-primary underline\">${escape_html(fkLabel.label)}</a> <span class=\"ml-1 text-xs text-muted-foreground\">(${escape_html(formatCellValue({\n\t\t\t\t\tvalue: rawValue,\n\t\t\t\t\twidget: col.widget\n\t\t\t\t}))})</span>`);\n\t\t\t} else {\n\t\t\t\t$$renderer.push(\"<!--[-1-->\");\n\t\t\t\t$$renderer.push(`${escape_html(formatCellValue({\n\t\t\t\t\tvalue: rawValue,\n\t\t\t\t\twidget: col.widget\n\t\t\t\t}))}`);\n\t\t\t}\n\t\t\t$$renderer.push(`<!--]--></dd></div>`);\n\t\t}\n\t\t$$renderer.push(`<!--]--></dl> `);\n\t\tif (form?.message) {\n\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t$$renderer.push(`<p role=\"alert\" class=\"mt-8 rounded-md border border-destructive bg-destructive/10 px-3 py-2 text-sm text-destructive\">${escape_html(form.message)}</p>`);\n\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t$$renderer.push(`<!--]--> <div class=\"mt-8 flex flex-wrap gap-3\"><a${attr(\"href\", `/tables/${data.table.qualifiedName}/${data.id}/edit`)} class=\"rounded-md bg-primary px-4 py-2 text-sm font-medium text-primary-foreground\">Edit</a> `);\n\t\tif (data.table.canDelete) {\n\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t$$renderer.push(`<form method=\"POST\" action=\"?/delete\"><button type=\"submit\" class=\"rounded-md border border-destructive px-4 py-2 text-sm font-medium text-destructive\">Delete</button></form>`);\n\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t$$renderer.push(`<!--]--> <a${attr(\"href\", `/tables/${data.table.qualifiedName}`)} class=\"rounded-md border border-border px-4 py-2 text-sm font-medium\">Back</a></div>`);\n\t});\n}\n//#endregion\nexport { _page as default };\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"_page.svelte-BOCed0K0.js","sources":["../../../.svelte-kit/adapter-node/entries/pages/tables/_table_/_id_/_page.svelte.js"],"sourcesContent":["import { b as attr, r as ensure_array_like, x as escape_html } from \"../../../../../chunks/server.js\";\nimport \"../../../../../chunks/forms.js\";\n//#region ../ui-core/dist/detail/format-cell.js\nfunction formatCellValue(input) {\n\tconst { value, widget } = input;\n\tif (value === null || value === void 0) return \"\";\n\tswitch (widget) {\n\t\tcase \"boolean\": return value ? \"Yes\" : \"No\";\n\t\tcase \"date\": return formatDate(value);\n\t\tcase \"datetime\": return formatDateTime(value);\n\t\tcase \"json\":\n\t\t\tif (typeof value === \"object\") try {\n\t\t\t\treturn JSON.stringify(value, null, 2);\n\t\t\t} catch {\n\t\t\t\treturn String(value);\n\t\t\t}\n\t\t\treturn String(value);\n\t\tdefault:\n\t\t\tif (typeof value === \"object\") try {\n\t\t\t\treturn JSON.stringify(value);\n\t\t\t} catch {\n\t\t\t\treturn String(value);\n\t\t\t}\n\t\t\treturn String(value);\n\t}\n}\nfunction formatDate(value) {\n\tconst d = new Date(value);\n\tif (Number.isNaN(d.getTime())) return String(value);\n\treturn d.toISOString().slice(0, 10);\n}\nfunction formatDateTime(value) {\n\tconst d = new Date(value);\n\tif (Number.isNaN(d.getTime())) return String(value);\n\treturn d.toISOString().replace(\"T\", \" \").slice(0, 19);\n}\n//#endregion\n//#region src/routes/tables/[table]/[id]/+page.svelte\nfunction _page($$renderer, $$props) {\n\t$$renderer.component(($$renderer) => {\n\t\tlet { data, form } = $$props;\n\t\t$$renderer.push(`<a${attr(\"href\", `/tables/${data.table.qualifiedName}`)} class=\"mb-4 inline-flex items-center gap-1 text-sm text-muted-foreground hover:text-foreground\"><span aria-hidden=\"true\">←</span> ${escape_html(data.table.label)}</a> <h1 class=\"mb-1 text-2xl font-semibold\">${escape_html(data.table.label)}</h1> <p class=\"mb-6 text-sm text-muted-foreground\">${escape_html(data.table.qualifiedName)} / ${escape_html(data.id)}</p> <dl class=\"space-y-4\"><!--[-->`);\n\t\tconst each_array = ensure_array_like(data.table.columns);\n\t\tfor (let $$index = 0, $$length = each_array.length; $$index < $$length; $$index++) {\n\t\t\tlet col = each_array[$$index];\n\t\t\tconst rawValue = data.row[col.name];\n\t\t\tconst fkLabel = data.fkLabels[col.name];\n\t\t\t$$renderer.push(`<div><dt class=\"text-sm font-medium text-muted-foreground\">${escape_html(col.label)}</dt> <dd class=\"mt-1 text-sm\">`);\n\t\t\tif (col.widget === \"json\") {\n\t\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t\t$$renderer.push(`<pre class=\"overflow-x-auto rounded-md bg-muted p-2 font-mono text-xs\">${escape_html(formatCellValue({\n\t\t\t\t\tvalue: rawValue,\n\t\t\t\t\twidget: col.widget\n\t\t\t\t}))}</pre>`);\n\t\t\t} else if (col.widget === \"image-url\" && rawValue) {\n\t\t\t\t$$renderer.push(\"<!--[1-->\");\n\t\t\t\t$$renderer.push(`<img${attr(\"src\", String(rawValue))}${attr(\"alt\", col.label)} class=\"max-h-48 rounded-md border border-border object-contain\" loading=\"lazy\"/>`);\n\t\t\t} else if (rawValue === null || rawValue === void 0) {\n\t\t\t\t$$renderer.push(\"<!--[2-->\");\n\t\t\t\t$$renderer.push(`<span class=\"text-muted-foreground\">—</span>`);\n\t\t\t} else if (fkLabel !== void 0 && fkLabel.label !== null) {\n\t\t\t\t$$renderer.push(\"<!--[3-->\");\n\t\t\t\t$$renderer.push(`<a${attr(\"href\", `/tables/${fkLabel.referencedQualifiedName}/${fkLabel.value}`)} class=\"text-primary underline\">${escape_html(fkLabel.label)}</a> <span class=\"ml-1 text-xs text-muted-foreground\">(${escape_html(formatCellValue({\n\t\t\t\t\tvalue: rawValue,\n\t\t\t\t\twidget: col.widget\n\t\t\t\t}))})</span>`);\n\t\t\t} else {\n\t\t\t\t$$renderer.push(\"<!--[-1-->\");\n\t\t\t\t$$renderer.push(`${escape_html(formatCellValue({\n\t\t\t\t\tvalue: rawValue,\n\t\t\t\t\twidget: col.widget\n\t\t\t\t}))}`);\n\t\t\t}\n\t\t\t$$renderer.push(`<!--]--></dd></div>`);\n\t\t}\n\t\t$$renderer.push(`<!--]--></dl> `);\n\t\tif (form?.message) {\n\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t$$renderer.push(`<p role=\"alert\" class=\"mt-8 rounded-md border border-destructive bg-destructive/10 px-3 py-2 text-sm text-destructive\">${escape_html(form.message)}</p>`);\n\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t$$renderer.push(`<!--]--> <div class=\"mt-8 flex flex-wrap gap-3\"><a${attr(\"href\", `/tables/${data.table.qualifiedName}/${data.id}/edit`)} class=\"rounded-md bg-primary px-4 py-2 text-sm font-medium text-primary-foreground\">Edit</a> `);\n\t\tif (data.table.canDelete) {\n\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t$$renderer.push(`<form method=\"POST\" action=\"?/delete\"><button type=\"submit\" class=\"rounded-md border border-destructive px-4 py-2 text-sm font-medium text-destructive\">Delete</button></form>`);\n\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t$$renderer.push(`<!--]--> <a${attr(\"href\", `/tables/${data.table.qualifiedName}`)} class=\"rounded-md border border-border px-4 py-2 text-sm font-medium\">Back</a></div>`);\n\t});\n}\n//#endregion\nexport { _page as default };\n"],"names":[],"mappings":"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"}
@@ -11,13 +11,10 @@ function _page($$renderer, $$props) {
11
11
  — no extra command to run:</p> <pre class="overflow-x-auto rounded-md bg-muted p-3 font-mono text-sm">${escape_html(data.connection.httpUrl)}</pre></section> <section class="mb-8 max-w-3xl"><h2 class="mb-2 text-lg font-semibold">Claude Desktop &amp; Cursor</h2> <p class="mb-2 text-sm text-muted-foreground">Add this under <code class="font-mono">mcpServers</code> in the client's MCP
12
12
  config, then fully quit and reopen the app. No secret is needed — the server
13
13
  already holds the database connection.</p> <pre class="overflow-x-auto rounded-md bg-muted p-3 font-mono text-xs">${escape_html(data.connection.jsonConfig)}</pre></section> <section class="mb-8 max-w-3xl"><h2 class="mb-2 text-lg font-semibold">Claude Code (CLI)</h2> <p class="mb-2 text-sm text-muted-foreground">Run this once in your project:</p> <pre class="overflow-x-auto rounded-md bg-muted p-3 font-mono text-sm">${escape_html(data.connection.claudeCodeCommand)}</pre></section> <section class="mb-8 max-w-3xl rounded-md border border-border p-4"><h2 class="mb-1 text-sm font-semibold">Good to know</h2> <ul class="list-disc space-y-1 pl-5 text-sm text-muted-foreground"><li>The tools are <strong>read-only</strong>: an agent can read your schema's
14
- meaning, never mutate data, through this surface.</li> <li>${escape_html(data.connection.authNote)}</li> <li>The URL above uses the host Kozou is configured with
15
- (<code class="font-mono">localhost</code> by default) and the MCP port; if
16
- you reach Kozou through a different host — a proxy or another machine —
17
- adjust the host accordingly.</li> <li>Full setup, the stdio transport, troubleshooting, and what each tool
14
+ meaning, never mutate data, through this surface.</li> <li>${escape_html(data.connection.authNote)}</li> <li>${escape_html(data.connection.addressNote)}</li> <li>Full setup, the stdio transport, troubleshooting, and what each tool
18
15
  returns are in the <a href="https://kozou.org/guides/connect-mcp/" class="text-primary underline" target="_blank" rel="noreferrer">Connect an AI agent guide</a>.</li></ul></section>`);
19
16
  });
20
17
  }
21
18
 
22
19
  export { _page as default };
23
- //# sourceMappingURL=_page.svelte-Cd_z7eFO.js.map
20
+ //# sourceMappingURL=_page.svelte-Bf0wrvsv.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"_page.svelte-Cd_z7eFO.js","sources":["../../../.svelte-kit/adapter-node/entries/pages/connect/_page.svelte.js"],"sourcesContent":["import { x as escape_html } from \"../../../chunks/server.js\";\n//#region src/routes/connect/+page.svelte\nfunction _page($$renderer, $$props) {\n\t$$renderer.component(($$renderer) => {\n\t\tlet { data } = $$props;\n\t\t$$renderer.push(`<a href=\"/\" class=\"mb-4 inline-flex items-center gap-1 text-sm text-muted-foreground hover:text-foreground\"><span aria-hidden=\"true\">←</span> Dashboard</a> <h1 class=\"mb-1 text-2xl font-semibold\">Connect an AI agent</h1> <p class=\"mb-8 max-w-3xl text-sm text-muted-foreground\">Point an AI agent — Claude Desktop, Cursor, or Claude Code — at this database\n over <a href=\"https://modelcontextprotocol.io/\" class=\"text-primary underline\" target=\"_blank\" rel=\"noreferrer\">MCP</a>. It can then read what your tables, views, and columns <em>mean</em> — the descriptions you wrote in <code class=\"font-mono\">COMMENT</code> — through <strong>read-only</strong> tools. There is no data access and no\n write path on this surface.</p> <section class=\"mb-8 max-w-3xl\"><h2 class=\"mb-2 text-lg font-semibold\">Endpoint</h2> <p class=\"mb-2 text-sm text-muted-foreground\"><code class=\"font-mono\">kozou dev</code> already serves the MCP endpoint here\n — no extra command to run:</p> <pre class=\"overflow-x-auto rounded-md bg-muted p-3 font-mono text-sm\">${escape_html(data.connection.httpUrl)}</pre></section> <section class=\"mb-8 max-w-3xl\"><h2 class=\"mb-2 text-lg font-semibold\">Claude Desktop &amp; Cursor</h2> <p class=\"mb-2 text-sm text-muted-foreground\">Add this under <code class=\"font-mono\">mcpServers</code> in the client's MCP\n config, then fully quit and reopen the app. No secret is needed — the server\n already holds the database connection.</p> <pre class=\"overflow-x-auto rounded-md bg-muted p-3 font-mono text-xs\">${escape_html(data.connection.jsonConfig)}</pre></section> <section class=\"mb-8 max-w-3xl\"><h2 class=\"mb-2 text-lg font-semibold\">Claude Code (CLI)</h2> <p class=\"mb-2 text-sm text-muted-foreground\">Run this once in your project:</p> <pre class=\"overflow-x-auto rounded-md bg-muted p-3 font-mono text-sm\">${escape_html(data.connection.claudeCodeCommand)}</pre></section> <section class=\"mb-8 max-w-3xl rounded-md border border-border p-4\"><h2 class=\"mb-1 text-sm font-semibold\">Good to know</h2> <ul class=\"list-disc space-y-1 pl-5 text-sm text-muted-foreground\"><li>The tools are <strong>read-only</strong>: an agent can read your schema's\n meaning, never mutate data, through this surface.</li> <li>${escape_html(data.connection.authNote)}</li> <li>The URL above uses the host Kozou is configured with\n (<code class=\"font-mono\">localhost</code> by default) and the MCP port; if\n you reach Kozou through a different host — a proxy or another machine —\n adjust the host accordingly.</li> <li>Full setup, the stdio transport, troubleshooting, and what each tool\n returns are in the <a href=\"https://kozou.org/guides/connect-mcp/\" class=\"text-primary underline\" target=\"_blank\" rel=\"noreferrer\">Connect an AI agent guide</a>.</li></ul></section>`);\n\t});\n}\n//#endregion\nexport { _page as default };\n"],"names":[],"mappings":";;;AACA;AACA,SAAS,KAAK,CAAC,UAAU,EAAE,OAAO,EAAE;AACpC,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,UAAU,KAAK;AACtC,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,OAAO;AACxB,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC;AACnB;AACA;AACA,0GAA0G,EAAE,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;AACjJ;AACA,sHAAsH,EAAE,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,uQAAuQ,EAAE,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAAC;AACxd,iEAAiE,EAAE,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;AACzG;AACA;AACA;AACA,2LAA2L,CAAC,CAAC;AAC7L,CAAC,CAAC,CAAC;AACH;;;;"}
1
+ {"version":3,"file":"_page.svelte-Bf0wrvsv.js","sources":["../../../.svelte-kit/adapter-node/entries/pages/connect/_page.svelte.js"],"sourcesContent":["import { x as escape_html } from \"../../../chunks/server.js\";\n//#region src/routes/connect/+page.svelte\nfunction _page($$renderer, $$props) {\n\t$$renderer.component(($$renderer) => {\n\t\tlet { data } = $$props;\n\t\t$$renderer.push(`<a href=\"/\" class=\"mb-4 inline-flex items-center gap-1 text-sm text-muted-foreground hover:text-foreground\"><span aria-hidden=\"true\">←</span> Dashboard</a> <h1 class=\"mb-1 text-2xl font-semibold\">Connect an AI agent</h1> <p class=\"mb-8 max-w-3xl text-sm text-muted-foreground\">Point an AI agent — Claude Desktop, Cursor, or Claude Code — at this database\n over <a href=\"https://modelcontextprotocol.io/\" class=\"text-primary underline\" target=\"_blank\" rel=\"noreferrer\">MCP</a>. It can then read what your tables, views, and columns <em>mean</em> — the descriptions you wrote in <code class=\"font-mono\">COMMENT</code> — through <strong>read-only</strong> tools. There is no data access and no\n write path on this surface.</p> <section class=\"mb-8 max-w-3xl\"><h2 class=\"mb-2 text-lg font-semibold\">Endpoint</h2> <p class=\"mb-2 text-sm text-muted-foreground\"><code class=\"font-mono\">kozou dev</code> already serves the MCP endpoint here\n — no extra command to run:</p> <pre class=\"overflow-x-auto rounded-md bg-muted p-3 font-mono text-sm\">${escape_html(data.connection.httpUrl)}</pre></section> <section class=\"mb-8 max-w-3xl\"><h2 class=\"mb-2 text-lg font-semibold\">Claude Desktop &amp; Cursor</h2> <p class=\"mb-2 text-sm text-muted-foreground\">Add this under <code class=\"font-mono\">mcpServers</code> in the client's MCP\n config, then fully quit and reopen the app. No secret is needed — the server\n already holds the database connection.</p> <pre class=\"overflow-x-auto rounded-md bg-muted p-3 font-mono text-xs\">${escape_html(data.connection.jsonConfig)}</pre></section> <section class=\"mb-8 max-w-3xl\"><h2 class=\"mb-2 text-lg font-semibold\">Claude Code (CLI)</h2> <p class=\"mb-2 text-sm text-muted-foreground\">Run this once in your project:</p> <pre class=\"overflow-x-auto rounded-md bg-muted p-3 font-mono text-sm\">${escape_html(data.connection.claudeCodeCommand)}</pre></section> <section class=\"mb-8 max-w-3xl rounded-md border border-border p-4\"><h2 class=\"mb-1 text-sm font-semibold\">Good to know</h2> <ul class=\"list-disc space-y-1 pl-5 text-sm text-muted-foreground\"><li>The tools are <strong>read-only</strong>: an agent can read your schema's\n meaning, never mutate data, through this surface.</li> <li>${escape_html(data.connection.authNote)}</li> <li>${escape_html(data.connection.addressNote)}</li> <li>Full setup, the stdio transport, troubleshooting, and what each tool\n returns are in the <a href=\"https://kozou.org/guides/connect-mcp/\" class=\"text-primary underline\" target=\"_blank\" rel=\"noreferrer\">Connect an AI agent guide</a>.</li></ul></section>`);\n\t});\n}\n//#endregion\nexport { _page as default };\n"],"names":[],"mappings":";;;AACA;AACA,SAAS,KAAK,CAAC,UAAU,EAAE,OAAO,EAAE;AACpC,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,UAAU,KAAK;AACtC,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,OAAO;AACxB,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC;AACnB;AACA;AACA,0GAA0G,EAAE,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;AACjJ;AACA,sHAAsH,EAAE,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,uQAAuQ,EAAE,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAAC;AACxd,iEAAiE,EAAE,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,UAAU,EAAE,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;AAC9J,2LAA2L,CAAC,CAAC;AAC7L,CAAC,CAAC,CAAC;AACH;;;;"}
@@ -1,12 +1,12 @@
1
1
  import { d as attr, q as escape_html, a6 as store_get, o as ensure_array_like, a7 as store_mutate, m as derived, ab as unsubscribe_stores } from './server-1sE9LKAu.js';
2
- import { h as superForm } from './composite-form-KsMxMbgc.js';
2
+ import { h as superForm } from './composite-form-D2e4A2Ot.js';
3
3
  import { R as Relation_select_field, r as resolveWidget } from './widget-registry-D4uP1dwJ.js';
4
- import { R as Relation_select_composite_field } from './relation-select-composite-field-D0FbNYK6.js';
4
+ import { R as Relation_select_composite_field } from './relation-select-composite-field-lu5X6jQi.js';
5
5
  import 'clsx';
6
- import './internal2-BaDAe3C9.js';
6
+ import './internal2-Cp8lw9Lk.js';
7
7
  import './index-DBqjc0Yf.js';
8
8
  import 'node:module';
9
- import './client-BBFG1zLB.js';
9
+ import './client-Dcb2GgWd.js';
10
10
  import './app-CYD2rz7t.js';
11
11
  import './index-CVekYGHP.js';
12
12
  import 'zod/v4/core';
@@ -170,4 +170,4 @@ function _page($$renderer, $$props) {
170
170
  }
171
171
 
172
172
  export { _page as default };
173
- //# sourceMappingURL=_page.svelte-CBJR_AG2.js.map
173
+ //# sourceMappingURL=_page.svelte-Bt3iaOxu.js.map