@kozou/svelte-ui 1.0.0 → 1.1.1

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 (156) hide show
  1. package/README.md +33 -3
  2. package/build/client/_app/immutable/assets/0._vgqT-Ja.css +2 -0
  3. package/build/client/_app/immutable/assets/0._vgqT-Ja.css.br +0 -0
  4. package/build/client/_app/immutable/assets/{0.B45CfnXC.css.gz → 0._vgqT-Ja.css.gz} +0 -0
  5. package/build/client/_app/immutable/chunks/{BatBMP3E.js → B1d2TdTR.js} +3 -3
  6. package/build/client/_app/immutable/chunks/B1d2TdTR.js.br +0 -0
  7. package/build/client/_app/immutable/chunks/B1d2TdTR.js.gz +0 -0
  8. package/build/client/_app/immutable/chunks/BgT5WiOF.js +2 -0
  9. package/build/client/_app/immutable/chunks/BgT5WiOF.js.br +0 -0
  10. package/build/client/_app/immutable/chunks/BgT5WiOF.js.gz +0 -0
  11. package/build/client/_app/immutable/chunks/{Ds-FbTMg.js → Cn0w88Fq.js} +1 -1
  12. package/build/client/_app/immutable/chunks/Cn0w88Fq.js.br +0 -0
  13. package/build/client/_app/immutable/chunks/Cn0w88Fq.js.gz +0 -0
  14. package/build/client/_app/immutable/chunks/D5sfkRNZ.js +1 -0
  15. package/build/client/_app/immutable/chunks/D5sfkRNZ.js.br +0 -0
  16. package/build/client/_app/immutable/chunks/D5sfkRNZ.js.gz +0 -0
  17. package/build/client/_app/immutable/chunks/DPra5YQV.js +214 -0
  18. package/build/client/_app/immutable/chunks/DPra5YQV.js.br +0 -0
  19. package/build/client/_app/immutable/chunks/DPra5YQV.js.gz +0 -0
  20. package/build/client/_app/immutable/chunks/DxikiVqj.js +1 -0
  21. package/build/client/_app/immutable/chunks/DxikiVqj.js.br +0 -0
  22. package/build/client/_app/immutable/chunks/DxikiVqj.js.gz +0 -0
  23. package/build/client/_app/immutable/entry/app.DHE9drsq.js +2 -0
  24. package/build/client/_app/immutable/entry/app.DHE9drsq.js.br +0 -0
  25. package/build/client/_app/immutable/entry/app.DHE9drsq.js.gz +0 -0
  26. package/build/client/_app/immutable/entry/start.BzGMfeBV.js +1 -0
  27. package/build/client/_app/immutable/entry/start.BzGMfeBV.js.br +0 -0
  28. package/build/client/_app/immutable/entry/start.BzGMfeBV.js.gz +0 -0
  29. package/build/client/_app/immutable/nodes/0.BTi1ueXu.js +1 -0
  30. package/build/client/_app/immutable/nodes/0.BTi1ueXu.js.br +0 -0
  31. package/build/client/_app/immutable/nodes/0.BTi1ueXu.js.gz +0 -0
  32. package/build/client/_app/immutable/nodes/1.D560IYiX.js +1 -0
  33. package/build/client/_app/immutable/nodes/1.D560IYiX.js.br +0 -0
  34. package/build/client/_app/immutable/nodes/1.D560IYiX.js.gz +0 -0
  35. package/build/client/_app/immutable/nodes/2.CWOXCYvQ.js +1 -0
  36. package/build/client/_app/immutable/nodes/2.CWOXCYvQ.js.br +0 -0
  37. package/build/client/_app/immutable/nodes/2.CWOXCYvQ.js.gz +0 -0
  38. package/build/client/_app/immutable/nodes/3.BfuWEZdX.js +1 -0
  39. package/build/client/_app/immutable/nodes/3.BfuWEZdX.js.br +0 -0
  40. package/build/client/_app/immutable/nodes/3.BfuWEZdX.js.gz +0 -0
  41. package/build/client/_app/immutable/nodes/4.B99LqPAe.js +1 -0
  42. package/build/client/_app/immutable/nodes/4.B99LqPAe.js.br +0 -0
  43. package/build/client/_app/immutable/nodes/4.B99LqPAe.js.gz +0 -0
  44. package/build/client/_app/immutable/nodes/5.DReWNUeS.js +1 -0
  45. package/build/client/_app/immutable/nodes/5.DReWNUeS.js.br +0 -0
  46. package/build/client/_app/immutable/nodes/5.DReWNUeS.js.gz +0 -0
  47. package/build/client/_app/immutable/nodes/6.k15tkojQ.js +1 -0
  48. package/build/client/_app/immutable/nodes/6.k15tkojQ.js.br +0 -0
  49. package/build/client/_app/immutable/nodes/6.k15tkojQ.js.gz +0 -0
  50. package/build/client/_app/immutable/nodes/{7.mp1zOZZv.js → 7.CjEmXoAF.js} +1 -1
  51. package/build/client/_app/immutable/nodes/7.CjEmXoAF.js.br +1 -0
  52. package/build/client/_app/immutable/nodes/7.CjEmXoAF.js.gz +0 -0
  53. package/build/client/_app/version.json +1 -1
  54. package/build/client/_app/version.json.br +0 -0
  55. package/build/client/_app/version.json.gz +0 -0
  56. package/build/server/chunks/{0-D3i8OEah.js → 0-C4CgvBlc.js} +3 -3
  57. package/build/server/chunks/{0-D3i8OEah.js.map → 0-C4CgvBlc.js.map} +1 -1
  58. package/build/server/chunks/{1-HR1yd0wU.js → 1-9vEmRESU.js} +3 -3
  59. package/build/server/chunks/{1-HR1yd0wU.js.map → 1-9vEmRESU.js.map} +1 -1
  60. package/build/server/chunks/{2-CE6m9qid.js → 2-D9il_3ty.js} +2 -2
  61. package/build/server/chunks/{2-CE6m9qid.js.map → 2-D9il_3ty.js.map} +1 -1
  62. package/build/server/chunks/{3-BfIWDc-d.js → 3-DfrqlU53.js} +3 -3
  63. package/build/server/chunks/3-DfrqlU53.js.map +1 -0
  64. package/build/server/chunks/{4-Dqn3l8BI.js → 4-B5b-ipUm.js} +46 -4
  65. package/build/server/chunks/4-B5b-ipUm.js.map +1 -0
  66. package/build/server/chunks/{5-DA-bCkUw.js → 5-CsUNrHuc.js} +25 -12
  67. package/build/server/chunks/5-CsUNrHuc.js.map +1 -0
  68. package/build/server/chunks/{6-DEjxcpBy.js → 6-DDoMrGFt.js} +23 -12
  69. package/build/server/chunks/6-DDoMrGFt.js.map +1 -0
  70. package/build/server/chunks/{7-BFDTBBBE.js → 7-CKkRKfs8.js} +3 -3
  71. package/build/server/chunks/7-CKkRKfs8.js.map +1 -0
  72. package/build/server/chunks/{_page.svelte-CyAlYQ7a.js → _page.svelte-BEtFIV7C.js} +3 -3
  73. package/build/server/chunks/{_page.svelte-CyAlYQ7a.js.map → _page.svelte-BEtFIV7C.js.map} +1 -1
  74. package/build/server/chunks/_page.svelte-CDGnOeZp.js +167 -0
  75. package/build/server/chunks/_page.svelte-CDGnOeZp.js.map +1 -0
  76. package/build/server/chunks/_page.svelte-DZ2Ayw0S.js +167 -0
  77. package/build/server/chunks/_page.svelte-DZ2Ayw0S.js.map +1 -0
  78. package/build/server/chunks/_server.ts-C-Wy675T.js +19 -0
  79. package/build/server/chunks/_server.ts-C-Wy675T.js.map +1 -0
  80. package/build/server/chunks/{adapter-1jZYeJkL.js → adapter-CXNsjV1V.js} +22 -10
  81. package/build/server/chunks/adapter-CXNsjV1V.js.map +1 -0
  82. package/build/server/chunks/{client-B9o82f8t.js → client-DLR5dxwU.js} +2 -2
  83. package/build/server/chunks/{client-B9o82f8t.js.map → client-DLR5dxwU.js.map} +1 -1
  84. package/build/server/chunks/{zod-from-table-D-zpiAdX.js → composite-form-BHZcuFIS.js} +250 -7
  85. package/build/server/chunks/composite-form-BHZcuFIS.js.map +1 -0
  86. package/build/server/chunks/{error.svelte-CCf63hYR.js → error.svelte-B3vg3Q2F.js} +3 -3
  87. package/build/server/chunks/{error.svelte-CCf63hYR.js.map → error.svelte-B3vg3Q2F.js.map} +1 -1
  88. package/build/server/chunks/{hooks.server-gNQ4wkwm.js → hooks.server-VuiVxiIQ.js} +35 -22
  89. package/build/server/chunks/hooks.server-VuiVxiIQ.js.map +1 -0
  90. package/build/server/chunks/{internal-CCj4Us-1.js → internal-BkKkeKsj.js} +3 -3
  91. package/build/server/chunks/{internal-CCj4Us-1.js.map → internal-BkKkeKsj.js.map} +1 -1
  92. package/build/server/chunks/relation-options-Dzy9DaQG.js +87 -0
  93. package/build/server/chunks/relation-options-Dzy9DaQG.js.map +1 -0
  94. package/build/server/chunks/{widget-registry-CYJ6dCZP.js → widget-registry-hWgMHMd3.js} +283 -43
  95. package/build/server/chunks/widget-registry-hWgMHMd3.js.map +1 -0
  96. package/build/server/index.js +1 -1
  97. package/build/server/manifest.js +16 -9
  98. package/build/server/manifest.js.map +1 -1
  99. package/package.json +4 -4
  100. package/build/client/_app/immutable/assets/0.B45CfnXC.css +0 -2
  101. package/build/client/_app/immutable/assets/0.B45CfnXC.css.br +0 -0
  102. package/build/client/_app/immutable/chunks/1PNfJiP5.js +0 -2
  103. package/build/client/_app/immutable/chunks/1PNfJiP5.js.br +0 -0
  104. package/build/client/_app/immutable/chunks/1PNfJiP5.js.gz +0 -0
  105. package/build/client/_app/immutable/chunks/BatBMP3E.js.br +0 -0
  106. package/build/client/_app/immutable/chunks/BatBMP3E.js.gz +0 -0
  107. package/build/client/_app/immutable/chunks/DhQvJhgX.js +0 -214
  108. package/build/client/_app/immutable/chunks/DhQvJhgX.js.br +0 -0
  109. package/build/client/_app/immutable/chunks/DhQvJhgX.js.gz +0 -0
  110. package/build/client/_app/immutable/chunks/Ds-FbTMg.js.br +0 -0
  111. package/build/client/_app/immutable/chunks/Ds-FbTMg.js.gz +0 -0
  112. package/build/client/_app/immutable/chunks/y9cSQmno.js +0 -1
  113. package/build/client/_app/immutable/chunks/y9cSQmno.js.br +0 -0
  114. package/build/client/_app/immutable/chunks/y9cSQmno.js.gz +0 -0
  115. package/build/client/_app/immutable/entry/app.CZ136DH2.js +0 -2
  116. package/build/client/_app/immutable/entry/app.CZ136DH2.js.br +0 -0
  117. package/build/client/_app/immutable/entry/app.CZ136DH2.js.gz +0 -0
  118. package/build/client/_app/immutable/entry/start.B2SCrcq3.js +0 -1
  119. package/build/client/_app/immutable/entry/start.B2SCrcq3.js.br +0 -0
  120. package/build/client/_app/immutable/entry/start.B2SCrcq3.js.gz +0 -0
  121. package/build/client/_app/immutable/nodes/0.DAriStmJ.js +0 -1
  122. package/build/client/_app/immutable/nodes/0.DAriStmJ.js.br +0 -0
  123. package/build/client/_app/immutable/nodes/0.DAriStmJ.js.gz +0 -0
  124. package/build/client/_app/immutable/nodes/1.C6AP-LKV.js +0 -1
  125. package/build/client/_app/immutable/nodes/1.C6AP-LKV.js.br +0 -0
  126. package/build/client/_app/immutable/nodes/1.C6AP-LKV.js.gz +0 -0
  127. package/build/client/_app/immutable/nodes/2.C3ChRVrO.js +0 -1
  128. package/build/client/_app/immutable/nodes/2.C3ChRVrO.js.br +0 -0
  129. package/build/client/_app/immutable/nodes/2.C3ChRVrO.js.gz +0 -0
  130. package/build/client/_app/immutable/nodes/3.C2gCkFBC.js +0 -1
  131. package/build/client/_app/immutable/nodes/3.C2gCkFBC.js.br +0 -0
  132. package/build/client/_app/immutable/nodes/3.C2gCkFBC.js.gz +0 -0
  133. package/build/client/_app/immutable/nodes/4.BT4cE3lU.js +0 -1
  134. package/build/client/_app/immutable/nodes/4.BT4cE3lU.js.br +0 -0
  135. package/build/client/_app/immutable/nodes/4.BT4cE3lU.js.gz +0 -0
  136. package/build/client/_app/immutable/nodes/5.q_Qsfmij.js +0 -1
  137. package/build/client/_app/immutable/nodes/5.q_Qsfmij.js.br +0 -0
  138. package/build/client/_app/immutable/nodes/5.q_Qsfmij.js.gz +0 -0
  139. package/build/client/_app/immutable/nodes/6.Ca5RA2Y5.js +0 -1
  140. package/build/client/_app/immutable/nodes/6.Ca5RA2Y5.js.br +0 -0
  141. package/build/client/_app/immutable/nodes/6.Ca5RA2Y5.js.gz +0 -0
  142. package/build/client/_app/immutable/nodes/7.mp1zOZZv.js.br +0 -1
  143. package/build/client/_app/immutable/nodes/7.mp1zOZZv.js.gz +0 -0
  144. package/build/server/chunks/3-BfIWDc-d.js.map +0 -1
  145. package/build/server/chunks/4-Dqn3l8BI.js.map +0 -1
  146. package/build/server/chunks/5-DA-bCkUw.js.map +0 -1
  147. package/build/server/chunks/6-DEjxcpBy.js.map +0 -1
  148. package/build/server/chunks/7-BFDTBBBE.js.map +0 -1
  149. package/build/server/chunks/_page.svelte-CYEmRGgG.js +0 -70
  150. package/build/server/chunks/_page.svelte-CYEmRGgG.js.map +0 -1
  151. package/build/server/chunks/_page.svelte-NvCEA5JB.js +0 -70
  152. package/build/server/chunks/_page.svelte-NvCEA5JB.js.map +0 -1
  153. package/build/server/chunks/adapter-1jZYeJkL.js.map +0 -1
  154. package/build/server/chunks/hooks.server-gNQ4wkwm.js.map +0 -1
  155. package/build/server/chunks/widget-registry-CYJ6dCZP.js.map +0 -1
  156. package/build/server/chunks/zod-from-table-D-zpiAdX.js.map +0 -1
@@ -0,0 +1,167 @@
1
+ import { q as escape_html, o as ensure_array_like, a6 as store_get, d as attr, a7 as store_mutate, m as derived, ab as unsubscribe_stores } from './dev-yFiAtg5l.js';
2
+ import { s as superForm } from './composite-form-BHZcuFIS.js';
3
+ import { R as Relation_select_composite_field, a as Relation_select_field, r as resolveWidget } from './widget-registry-hWgMHMd3.js';
4
+ import 'clsx';
5
+ import './internal-BkKkeKsj.js';
6
+ import 'node:module';
7
+ import './index-DBqjc0Yf.js';
8
+ import './client-DLR5dxwU.js';
9
+ import './app-DST8OmzT.js';
10
+ import './index-5kYmxIr9.js';
11
+ import 'zod/v4/core';
12
+ import 'zod';
13
+ import './resource-id-PDcQeAnc.js';
14
+
15
+ //#region src/routes/tables/[table]/new/+page.svelte
16
+ function _page($$renderer, $$props) {
17
+ $$renderer.component(($$renderer) => {
18
+ var $$store_subs;
19
+ let { data } = $$props;
20
+ const relationByField = derived(() => new Map(data.relations.filter((r) => (r.fields ?? [r.field]).length === 1).map((r) => [r.field, r])));
21
+ const compositeLayout = derived(() => {
22
+ const hostByField = /* @__PURE__ */ new Map();
23
+ const memberFields = /* @__PURE__ */ new Set();
24
+ for (const config of data.relations) {
25
+ const fields = config.fields ?? [config.field];
26
+ if (fields.length < 2) continue;
27
+ const grouped = new Set(fields);
28
+ const ordered = data.table.columns.filter((c) => grouped.has(c.name)).map((c) => c.name);
29
+ if (ordered.length !== fields.length) continue;
30
+ hostByField.set(ordered[0], config);
31
+ for (const field of ordered.slice(1)) memberFields.add(field);
32
+ }
33
+ return {
34
+ hostByField,
35
+ memberFields
36
+ };
37
+ });
38
+ const { form, errors, submitting } = superForm(data.form, { dataType: "json" });
39
+ const relationForm = form;
40
+ function memberColumns(config) {
41
+ const grouped = new Set(config.fields ?? [config.field]);
42
+ return data.table.columns.filter((c) => grouped.has(c.name));
43
+ }
44
+ function applyComposite(config, components) {
45
+ const keyFields = config.keyFields ?? [config.field];
46
+ relationForm.update((current) => {
47
+ const next = { ...current };
48
+ keyFields.forEach((field, i) => {
49
+ next[field] = components === null ? "" : components[i];
50
+ });
51
+ return next;
52
+ });
53
+ }
54
+ let $$settled = true;
55
+ let $$inner_renderer;
56
+ function $$render_inner($$renderer) {
57
+ $$renderer.push(`<h1 class="mb-1 text-2xl font-semibold">New ${escape_html(data.table.label)}</h1> <p class="mb-6 text-sm text-muted-foreground">${escape_html(data.table.qualifiedName)}</p> <form method="POST" class="space-y-4"><!--[-->`);
58
+ const each_array = ensure_array_like(data.table.columns);
59
+ for (let $$index_2 = 0, $$length = each_array.length; $$index_2 < $$length; $$index_2++) {
60
+ let col = each_array[$$index_2];
61
+ const required = !col.nullable && !col.readonly && !col.isPrimaryKey && !col.dbCanSupply;
62
+ const relation = relationByField().get(col.name);
63
+ const composite = compositeLayout().hostByField.get(col.name);
64
+ $$renderer.push(`<div>`);
65
+ if (compositeLayout().memberFields.has(col.name)) $$renderer.push("<!--[0-->");
66
+ else if (composite) {
67
+ $$renderer.push("<!--[1-->");
68
+ const members = memberColumns(composite);
69
+ const groupRequired = members.some((c) => !c.nullable && !c.readonly && !c.isPrimaryKey);
70
+ const groupReadonly = members.some((c) => c.readonly);
71
+ $$renderer.push(`<!---->`);
72
+ Relation_select_composite_field($$renderer, {
73
+ name: composite.field,
74
+ label: members.map((c) => c.label).join(", "),
75
+ resource: composite.resource,
76
+ labelField: composite.labelField,
77
+ searchFields: composite.searchFields,
78
+ initialOptions: data.initialOptions[composite.field] ?? [],
79
+ values: (composite.keyFields ?? [composite.field]).map((field) => store_get($$store_subs ??= {}, "$relationForm", relationForm)[field]),
80
+ onpick: (components) => applyComposite(composite, components),
81
+ required: groupRequired,
82
+ readonly: groupReadonly
83
+ });
84
+ $$renderer.push(`<!----> <!--[-->`);
85
+ const each_array_1 = ensure_array_like(members);
86
+ for (let $$index = 0, $$length = each_array_1.length; $$index < $$length; $$index++) {
87
+ let member = each_array_1[$$index];
88
+ $$renderer.push(`<input type="hidden"${attr("name", member.name)}${attr("value", store_get($$store_subs ??= {}, "$relationForm", relationForm)[member.name] === null || store_get($$store_subs ??= {}, "$relationForm", relationForm)[member.name] === void 0 ? "" : String(store_get($$store_subs ??= {}, "$relationForm", relationForm)[member.name]))}/>`);
89
+ }
90
+ $$renderer.push(`<!--]--> <!--[-->`);
91
+ const each_array_2 = ensure_array_like(members);
92
+ for (let $$index_1 = 0, $$length = each_array_2.length; $$index_1 < $$length; $$index_1++) {
93
+ let member = each_array_2[$$index_1];
94
+ if (store_get($$store_subs ??= {}, "$errors", errors)[member.name]) {
95
+ $$renderer.push("<!--[0-->");
96
+ $$renderer.push(`<p class="mt-1 text-sm text-destructive">${escape_html(member.label)}: ${escape_html(store_get($$store_subs ??= {}, "$errors", errors)[member.name])}</p>`);
97
+ } else $$renderer.push("<!--[-1-->");
98
+ $$renderer.push(`<!--]-->`);
99
+ }
100
+ $$renderer.push(`<!--]-->`);
101
+ } else if (col.widget === "relation-select" && relation) {
102
+ $$renderer.push("<!--[2-->");
103
+ $$renderer.push(`<!---->`);
104
+ Relation_select_field($$renderer, {
105
+ name: col.name,
106
+ label: col.label,
107
+ resource: relation.resource,
108
+ labelField: relation.labelField,
109
+ searchFields: relation.searchFields,
110
+ initialOptions: data.initialOptions[col.name] ?? [],
111
+ required,
112
+ readonly: col.readonly,
113
+ get value() {
114
+ return store_get($$store_subs ??= {}, "$relationForm", relationForm)[col.name];
115
+ },
116
+ set value($$value) {
117
+ store_mutate($$store_subs ??= {}, "$relationForm", relationForm, store_get($$store_subs ??= {}, "$relationForm", relationForm)[col.name] = $$value);
118
+ $$settled = false;
119
+ }
120
+ });
121
+ $$renderer.push(`<!---->`);
122
+ } else {
123
+ $$renderer.push("<!--[-1-->");
124
+ const Widget = resolveWidget(col.widget);
125
+ if (Widget) {
126
+ $$renderer.push("<!--[-->");
127
+ Widget($$renderer, {
128
+ name: col.name,
129
+ label: col.label,
130
+ options: col.enumValues,
131
+ required,
132
+ readonly: col.readonly,
133
+ get value() {
134
+ return store_get($$store_subs ??= {}, "$form", form)[col.name];
135
+ },
136
+ set value($$value) {
137
+ store_mutate($$store_subs ??= {}, "$form", form, store_get($$store_subs ??= {}, "$form", form)[col.name] = $$value);
138
+ $$settled = false;
139
+ }
140
+ });
141
+ $$renderer.push("<!--]-->");
142
+ } else {
143
+ $$renderer.push("<!--[!-->");
144
+ $$renderer.push("<!--]-->");
145
+ }
146
+ }
147
+ $$renderer.push(`<!--]--> `);
148
+ if (!composite && !compositeLayout().memberFields.has(col.name) && store_get($$store_subs ??= {}, "$errors", errors)[col.name]) {
149
+ $$renderer.push("<!--[0-->");
150
+ $$renderer.push(`<p class="mt-1 text-sm text-destructive">${escape_html(store_get($$store_subs ??= {}, "$errors", errors)[col.name])}</p>`);
151
+ } else $$renderer.push("<!--[-1-->");
152
+ $$renderer.push(`<!--]--></div>`);
153
+ }
154
+ $$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) ? "Saving…" : "Save")}</button> <a${attr("href", `/tables/${data.table.qualifiedName}`)} class="rounded-md border border-border px-4 py-2 text-sm font-medium">Cancel</a></div></form>`);
155
+ }
156
+ do {
157
+ $$settled = true;
158
+ $$inner_renderer = $$renderer.copy();
159
+ $$render_inner($$inner_renderer);
160
+ } while (!$$settled);
161
+ $$renderer.subsume($$inner_renderer);
162
+ if ($$store_subs) unsubscribe_stores($$store_subs);
163
+ });
164
+ }
165
+
166
+ export { _page as default };
167
+ //# sourceMappingURL=_page.svelte-DZ2Ayw0S.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"_page.svelte-DZ2Ayw0S.js","sources":["../../../.svelte-kit/adapter-node/entries/pages/tables/_table_/new/_page.svelte.js"],"sourcesContent":["import { H as escape_html, V as attr, c as unsubscribe_stores, i as ensure_array_like, o as store_get, r as derived, s as store_mutate } from \"../../../../../chunks/dev.js\";\nimport { l as superForm } from \"../../../../../chunks/relation-field-config.js\";\nimport { n as Relation_select_field, r as Relation_select_composite_field, t as resolveWidget } from \"../../../../../chunks/widget-registry.js\";\n//#region src/routes/tables/[table]/new/+page.svelte\nfunction _page($$renderer, $$props) {\n\t$$renderer.component(($$renderer) => {\n\t\tvar $$store_subs;\n\t\tlet { data } = $$props;\n\t\tconst relationByField = derived(() => new Map(data.relations.filter((r) => (r.fields ?? [r.field]).length === 1).map((r) => [r.field, r])));\n\t\tconst compositeLayout = derived(() => {\n\t\t\tconst hostByField = /* @__PURE__ */ new Map();\n\t\t\tconst memberFields = /* @__PURE__ */ new Set();\n\t\t\tfor (const config of data.relations) {\n\t\t\t\tconst fields = config.fields ?? [config.field];\n\t\t\t\tif (fields.length < 2) continue;\n\t\t\t\tconst grouped = new Set(fields);\n\t\t\t\tconst ordered = data.table.columns.filter((c) => grouped.has(c.name)).map((c) => c.name);\n\t\t\t\tif (ordered.length !== fields.length) continue;\n\t\t\t\thostByField.set(ordered[0], config);\n\t\t\t\tfor (const field of ordered.slice(1)) memberFields.add(field);\n\t\t\t}\n\t\t\treturn {\n\t\t\t\thostByField,\n\t\t\t\tmemberFields\n\t\t\t};\n\t\t});\n\t\tconst { form, errors, enhance, submitting } = superForm(data.form, { dataType: \"json\" });\n\t\tconst relationForm = form;\n\t\tfunction memberColumns(config) {\n\t\t\tconst grouped = new Set(config.fields ?? [config.field]);\n\t\t\treturn data.table.columns.filter((c) => grouped.has(c.name));\n\t\t}\n\t\tfunction applyComposite(config, components) {\n\t\t\tconst keyFields = config.keyFields ?? [config.field];\n\t\t\trelationForm.update((current) => {\n\t\t\t\tconst next = { ...current };\n\t\t\t\tkeyFields.forEach((field, i) => {\n\t\t\t\t\tnext[field] = components === null ? \"\" : components[i];\n\t\t\t\t});\n\t\t\t\treturn next;\n\t\t\t});\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\">New ${escape_html(data.table.label)}</h1> <p class=\"mb-6 text-sm text-muted-foreground\">${escape_html(data.table.qualifiedName)}</p> <form method=\"POST\" class=\"space-y-4\"><!--[-->`);\n\t\t\tconst each_array = ensure_array_like(data.table.columns);\n\t\t\tfor (let $$index_2 = 0, $$length = each_array.length; $$index_2 < $$length; $$index_2++) {\n\t\t\t\tlet col = each_array[$$index_2];\n\t\t\t\tconst required = !col.nullable && !col.readonly && !col.isPrimaryKey && !col.dbCanSupply;\n\t\t\t\tconst relation = relationByField().get(col.name);\n\t\t\t\tconst composite = compositeLayout().hostByField.get(col.name);\n\t\t\t\t$$renderer.push(`<div>`);\n\t\t\t\tif (compositeLayout().memberFields.has(col.name)) $$renderer.push(\"<!--[0-->\");\n\t\t\t\telse if (composite) {\n\t\t\t\t\t$$renderer.push(\"<!--[1-->\");\n\t\t\t\t\tconst members = memberColumns(composite);\n\t\t\t\t\tconst groupRequired = members.some((c) => !c.nullable && !c.readonly && !c.isPrimaryKey);\n\t\t\t\t\tconst groupReadonly = members.some((c) => c.readonly);\n\t\t\t\t\t$$renderer.push(`<!---->`);\n\t\t\t\t\tRelation_select_composite_field($$renderer, {\n\t\t\t\t\t\tname: composite.field,\n\t\t\t\t\t\tlabel: members.map((c) => c.label).join(\", \"),\n\t\t\t\t\t\tresource: composite.resource,\n\t\t\t\t\t\tlabelField: composite.labelField,\n\t\t\t\t\t\tsearchFields: composite.searchFields,\n\t\t\t\t\t\tinitialOptions: data.initialOptions[composite.field] ?? [],\n\t\t\t\t\t\tvalues: (composite.keyFields ?? [composite.field]).map((field) => store_get($$store_subs ??= {}, \"$relationForm\", relationForm)[field]),\n\t\t\t\t\t\tonpick: (components) => applyComposite(composite, components),\n\t\t\t\t\t\trequired: groupRequired,\n\t\t\t\t\t\treadonly: groupReadonly\n\t\t\t\t\t});\n\t\t\t\t\t$$renderer.push(`<!----> <!--[-->`);\n\t\t\t\t\tconst each_array_1 = ensure_array_like(members);\n\t\t\t\t\tfor (let $$index = 0, $$length = each_array_1.length; $$index < $$length; $$index++) {\n\t\t\t\t\t\tlet member = each_array_1[$$index];\n\t\t\t\t\t\t$$renderer.push(`<input type=\"hidden\"${attr(\"name\", member.name)}${attr(\"value\", store_get($$store_subs ??= {}, \"$relationForm\", relationForm)[member.name] === null || store_get($$store_subs ??= {}, \"$relationForm\", relationForm)[member.name] === void 0 ? \"\" : String(store_get($$store_subs ??= {}, \"$relationForm\", relationForm)[member.name]))}/>`);\n\t\t\t\t\t}\n\t\t\t\t\t$$renderer.push(`<!--]--> <!--[-->`);\n\t\t\t\t\tconst each_array_2 = ensure_array_like(members);\n\t\t\t\t\tfor (let $$index_1 = 0, $$length = each_array_2.length; $$index_1 < $$length; $$index_1++) {\n\t\t\t\t\t\tlet member = each_array_2[$$index_1];\n\t\t\t\t\t\tif (store_get($$store_subs ??= {}, \"$errors\", errors)[member.name]) {\n\t\t\t\t\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t\t\t\t\t$$renderer.push(`<p class=\"mt-1 text-sm text-destructive\">${escape_html(member.label)}: ${escape_html(store_get($$store_subs ??= {}, \"$errors\", errors)[member.name])}</p>`);\n\t\t\t\t\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t\t\t\t\t$$renderer.push(`<!--]-->`);\n\t\t\t\t\t}\n\t\t\t\t\t$$renderer.push(`<!--]-->`);\n\t\t\t\t} else if (col.widget === \"relation-select\" && relation) {\n\t\t\t\t\t$$renderer.push(\"<!--[2-->\");\n\t\t\t\t\t$$renderer.push(`<!---->`);\n\t\t\t\t\tRelation_select_field($$renderer, {\n\t\t\t\t\t\tname: col.name,\n\t\t\t\t\t\tlabel: col.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[col.name] ?? [],\n\t\t\t\t\t\trequired,\n\t\t\t\t\t\treadonly: col.readonly,\n\t\t\t\t\t\tget value() {\n\t\t\t\t\t\t\treturn store_get($$store_subs ??= {}, \"$relationForm\", relationForm)[col.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)[col.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(col.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: col.name,\n\t\t\t\t\t\t\tlabel: col.label,\n\t\t\t\t\t\t\toptions: col.enumValues,\n\t\t\t\t\t\t\trequired,\n\t\t\t\t\t\t\treadonly: col.readonly,\n\t\t\t\t\t\t\tget value() {\n\t\t\t\t\t\t\t\treturn store_get($$store_subs ??= {}, \"$form\", form)[col.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)[col.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 (!composite && !compositeLayout().memberFields.has(col.name) && store_get($$store_subs ??= {}, \"$errors\", errors)[col.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)[col.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) ? \"Saving…\" : \"Save\")}</button> <a${attr(\"href\", `/tables/${data.table.qualifiedName}`)} 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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"}
@@ -0,0 +1,19 @@
1
+ import { g as getAdapter } from './adapter-CXNsjV1V.js';
2
+ import { s as searchRelationOptions } from './relation-options-Dzy9DaQG.js';
3
+ import { j as json } from './index-5kYmxIr9.js';
4
+ import './resource-id-PDcQeAnc.js';
5
+ import './index-DBqjc0Yf.js';
6
+
7
+ //#region src/routes/relation-options/+server.ts
8
+ var GET = async ({ url, locals }) => {
9
+ return json({ options: await searchRelationOptions(locals.schema, getAdapter(locals.schema), {
10
+ resource: url.searchParams.get("resource"),
11
+ label: url.searchParams.get("label"),
12
+ fields: url.searchParams.get("fields"),
13
+ query: url.searchParams.get("q"),
14
+ limit: url.searchParams.get("limit")
15
+ }) });
16
+ };
17
+
18
+ export { GET };
19
+ //# sourceMappingURL=_server.ts-C-Wy675T.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"_server.ts-C-Wy675T.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/relation-options/_server.ts.js"],"sourcesContent":["import { t as getAdapter } from \"../../../chunks/adapter.js\";\nimport { r as searchRelationOptions } from \"../../../chunks/relation-options.js\";\nimport { json } from \"@sveltejs/kit\";\n//#region src/routes/relation-options/+server.ts\nvar GET = async ({ url, locals }) => {\n\treturn json({ options: await searchRelationOptions(locals.schema, getAdapter(locals.schema), {\n\t\tresource: url.searchParams.get(\"resource\"),\n\t\tlabel: url.searchParams.get(\"label\"),\n\t\tfields: url.searchParams.get(\"fields\"),\n\t\tquery: url.searchParams.get(\"q\"),\n\t\tlimit: url.searchParams.get(\"limit\")\n\t}) });\n};\n//#endregion\nexport { GET };\n"],"names":[],"mappings":";;;;;;AAGA;AACG,IAAC,GAAG,GAAG,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK;AACrC,CAAC,OAAO,IAAI,CAAC,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE;AAC9F,EAAE,QAAQ,EAAE,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,UAAU,CAAC;AAC5C,EAAE,KAAK,EAAE,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC;AACtC,EAAE,MAAM,EAAE,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC;AACxC,EAAE,KAAK,EAAE,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC;AAClC,EAAE,KAAK,EAAE,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO;AACrC,EAAE,CAAC,EAAE,CAAC;AACN;;;;"}
@@ -127,10 +127,11 @@ var PostgrestDataAdapter = class {
127
127
  }
128
128
  async searchRelation(resource, params) {
129
129
  const { schema, table } = splitResource(resource, this.defaultSchema);
130
- const primaryKey = keyColumns(this.resolvePrimaryKey(resource))[0];
130
+ const primaryKey = keyColumns(this.resolvePrimaryKey(resource));
131
131
  const limit = params.limit ?? DEFAULT_RELATION_LIMIT$1;
132
132
  const query = new URLSearchParams();
133
- query.set("select", `${primaryKey},${params.labelField}`);
133
+ const selectFields = primaryKey.includes(params.labelField) ? primaryKey : [...primaryKey, params.labelField];
134
+ query.set("select", selectFields.join(","));
134
135
  if (params.query.length > 0 && params.searchFields.length > 0) {
135
136
  const orExpr = params.searchFields.map((field) => `${field}.ilike.*${params.query}*`).join(",");
136
137
  query.set("or", `(${orExpr})`);
@@ -145,7 +146,7 @@ var PostgrestDataAdapter = class {
145
146
  const response = await this.send("GET", url, headers, void 0);
146
147
  await assertOk$1(response, url);
147
148
  return (await readJson$1(response, url)).map((row) => ({
148
- id: row[primaryKey],
149
+ id: primaryKey.length === 1 ? row[primaryKey[0]] : primaryKey.map((column) => row[column]),
149
150
  label: String(row[params.labelField] ?? "")
150
151
  }));
151
152
  }
@@ -200,9 +201,14 @@ function makePrimaryKeyResolver(pk) {
200
201
  if (typeof pk === "function") return pk;
201
202
  return () => pk;
202
203
  }
203
- /** Normalize a resolver result to the ordered list of key columns. */
204
+ /** Normalize a resolver result to the ordered list of key columns. An empty
205
+ * list is rejected loudly: a key-less resource cannot be addressed by id —
206
+ * silently accepting it would, e.g., let a zero-column key match a
207
+ * zero-component id and emit an unfiltered (table-wide) mutation. */
204
208
  function keyColumns(pk) {
205
- return Array.isArray(pk) ? pk : [pk];
209
+ const columns = Array.isArray(pk) ? pk : [pk];
210
+ if (columns.length === 0) throw adapterConfigError("PostgrestDataAdapter: the primaryKey resolver returned no key columns.");
211
+ return columns;
206
212
  }
207
213
  /** Normalize a ResourceId to the ordered list of key values. */
208
214
  function asResourceIdArray(id) {
@@ -504,17 +510,23 @@ function getAdapter(schema) {
504
510
  });
505
511
  return cached;
506
512
  }
513
+ var DEFAULT_RESOLVER_SCHEMA = "public";
507
514
  /** Build a primary-key resolver from the schema: each resource maps to its
508
- * ordered key columns. Falls back to the adapter default ('id') for unknown
509
- * resources or when no schema is available. */
515
+ * ordered key columns. A bare (schema-less) resource name is matched
516
+ * against the default schema, the same normalization the adapter applies.
517
+ * A known key-less table keeps its empty key list so the adapter rejects
518
+ * by-id operations loudly instead of filtering on a possibly non-unique
519
+ * 'id' column (wrong-row reads / mutations). The 'id' fallback applies
520
+ * only to unknown resources or when no schema is available. */
510
521
  function primaryKeyResolver(schema) {
511
522
  if (schema === void 0) return void 0;
512
523
  return (resource) => {
513
- const table = schema.tables.find((t) => t.qualifiedName === resource);
514
- if (table !== void 0 && table.primaryKey.length > 0) return table.primaryKey;
524
+ const qualified = resource.includes(".") ? resource : `${DEFAULT_RESOLVER_SCHEMA}.${resource}`;
525
+ const table = schema.tables.find((t) => t.qualifiedName === qualified);
526
+ if (table !== void 0) return table.primaryKey;
515
527
  return "id";
516
528
  };
517
529
  }
518
530
 
519
531
  export { getAdapter as g };
520
- //# sourceMappingURL=adapter-1jZYeJkL.js.map
532
+ //# sourceMappingURL=adapter-CXNsjV1V.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"adapter-CXNsjV1V.js","sources":["../../../.svelte-kit/adapter-node/chunks/adapter.js"],"sourcesContent":["//#region src/lib/adapter/errors.ts\nvar AdapterError = class extends Error {\n\tstatus;\n\turl;\n\tresponseBody;\n\tcode;\n\tconstructor(init) {\n\t\tsuper(init.message);\n\t\tthis.name = \"AdapterError\";\n\t\tthis.status = init.status;\n\t\tthis.url = init.url;\n\t\tthis.responseBody = init.responseBody;\n\t\tthis.code = init.code;\n\t}\n};\n//#endregion\n//#region src/lib/adapter/postgrest.ts\nvar DEFAULT_PAGE_SIZE$1 = 50;\nvar DEFAULT_SCHEMA = \"public\";\nvar DEFAULT_PRIMARY_KEY = \"id\";\nvar DEFAULT_RELATION_LIMIT$1 = 20;\nvar OR_FILTER_KEY$1 = \"__or\";\nvar FILTER_OPERATORS = new Set([\n\t\"eq\",\n\t\"neq\",\n\t\"gt\",\n\t\"gte\",\n\t\"lt\",\n\t\"lte\",\n\t\"like\",\n\t\"ilike\",\n\t\"in\",\n\t\"is\"\n]);\nvar PostgrestAdapterError = class extends AdapterError {\n\tconstructor(init) {\n\t\tsuper(init);\n\t\tthis.name = \"PostgrestAdapterError\";\n\t}\n};\nvar PostgrestDataAdapter = class {\n\tbaseUrl;\n\tdefaultSchema;\n\tresolvePrimaryKey;\n\tstaticHeaders;\n\tfetchImpl;\n\tdefaultPageSize;\n\tconstructor(opts) {\n\t\tif (typeof opts.baseUrl !== \"string\" || opts.baseUrl.length === 0) throw adapterConfigError(\"PostgrestDataAdapter: `baseUrl` is required.\");\n\t\tthis.baseUrl = stripTrailingSlash$1(opts.baseUrl);\n\t\tthis.defaultSchema = opts.defaultSchema ?? DEFAULT_SCHEMA;\n\t\tthis.resolvePrimaryKey = makePrimaryKeyResolver(opts.primaryKey);\n\t\tthis.staticHeaders = { ...opts.headers ?? {} };\n\t\tthis.defaultPageSize = opts.defaultPageSize ?? DEFAULT_PAGE_SIZE$1;\n\t\tconst resolvedFetch = opts.fetch ?? globalThis.fetch;\n\t\tif (typeof resolvedFetch !== \"function\") throw adapterConfigError(\"PostgrestDataAdapter: a `fetch` implementation is required (none injected, none on globalThis).\");\n\t\tthis.fetchImpl = resolvedFetch;\n\t}\n\tasync list(resource, params) {\n\t\tconst { schema, table } = splitResource(resource, this.defaultSchema);\n\t\tconst pageSize = params.pageSize ?? this.defaultPageSize;\n\t\tconst page = params.page ?? 1;\n\t\tconst offset = (page - 1) * pageSize;\n\t\tconst query = new URLSearchParams();\n\t\tappendFilters$1(query, params.filters);\n\t\tappendOrder(query, params.sort);\n\t\tquery.set(\"limit\", String(pageSize));\n\t\tquery.set(\"offset\", String(offset));\n\t\tconst url = `${this.baseUrl}/${encodeURIComponent(table)}?${query.toString()}`;\n\t\tconst headers = {\n\t\t\t...this.staticHeaders,\n\t\t\tAccept: \"application/json\",\n\t\t\tPrefer: \"count=exact\"\n\t\t};\n\t\taddProfileHeader(headers, schema, this.defaultSchema, \"read\");\n\t\tconst response = await this.send(\"GET\", url, headers, void 0);\n\t\tawait assertOk$1(response, url);\n\t\tconst rows = await readJson$1(response, url);\n\t\treturn {\n\t\t\trows,\n\t\t\ttotal: parseContentRangeTotal(response.headers.get(\"content-range\"), rows.length),\n\t\t\tpage,\n\t\t\tpageSize\n\t\t};\n\t}\n\tasync get(resource, id) {\n\t\tconst { schema, table } = splitResource(resource, this.defaultSchema);\n\t\tconst query = new URLSearchParams();\n\t\tthis.appendKeyEquals(query, resource, id);\n\t\tquery.set(\"limit\", \"1\");\n\t\tconst url = `${this.baseUrl}/${encodeURIComponent(table)}?${query.toString()}`;\n\t\tconst headers = {\n\t\t\t...this.staticHeaders,\n\t\t\tAccept: \"application/vnd.pgrst.object+json\"\n\t\t};\n\t\taddProfileHeader(headers, schema, this.defaultSchema, \"read\");\n\t\tconst response = await this.send(\"GET\", url, headers, void 0);\n\t\tawait assertOk$1(response, url);\n\t\treturn await readJson$1(response, url);\n\t}\n\tasync create(resource, data) {\n\t\tconst { schema, table } = splitResource(resource, this.defaultSchema);\n\t\tconst url = `${this.baseUrl}/${encodeURIComponent(table)}`;\n\t\tconst headers = this.mutationHeaders(schema);\n\t\tconst response = await this.send(\"POST\", url, headers, JSON.stringify(data));\n\t\tawait assertOk$1(response, url);\n\t\treturn await readJson$1(response, url);\n\t}\n\tasync update(resource, id, data) {\n\t\tconst { schema, table } = splitResource(resource, this.defaultSchema);\n\t\tconst query = new URLSearchParams();\n\t\tthis.appendKeyEquals(query, resource, id);\n\t\tconst url = `${this.baseUrl}/${encodeURIComponent(table)}?${query.toString()}`;\n\t\tconst headers = this.mutationHeaders(schema);\n\t\tconst response = await this.send(\"PATCH\", url, headers, JSON.stringify(data));\n\t\tawait assertOk$1(response, url);\n\t\treturn await readJson$1(response, url);\n\t}\n\tasync delete(resource, id) {\n\t\tconst { schema, table } = splitResource(resource, this.defaultSchema);\n\t\tconst query = new URLSearchParams();\n\t\tthis.appendKeyEquals(query, resource, id);\n\t\tconst url = `${this.baseUrl}/${encodeURIComponent(table)}?${query.toString()}`;\n\t\tconst headers = { ...this.staticHeaders };\n\t\taddProfileHeader(headers, schema, this.defaultSchema, \"write\");\n\t\tawait assertOk$1(await this.send(\"DELETE\", url, headers, void 0), url);\n\t}\n\tasync searchRelation(resource, params) {\n\t\tconst { schema, table } = splitResource(resource, this.defaultSchema);\n\t\tconst primaryKey = keyColumns(this.resolvePrimaryKey(resource));\n\t\tconst limit = params.limit ?? DEFAULT_RELATION_LIMIT$1;\n\t\tconst query = new URLSearchParams();\n\t\tconst selectFields = primaryKey.includes(params.labelField) ? primaryKey : [...primaryKey, params.labelField];\n\t\tquery.set(\"select\", selectFields.join(\",\"));\n\t\tif (params.query.length > 0 && params.searchFields.length > 0) {\n\t\t\tconst orExpr = params.searchFields.map((field) => `${field}.ilike.*${params.query}*`).join(\",\");\n\t\t\tquery.set(\"or\", `(${orExpr})`);\n\t\t}\n\t\tquery.set(\"limit\", String(limit));\n\t\tconst url = `${this.baseUrl}/${encodeURIComponent(table)}?${query.toString()}`;\n\t\tconst headers = {\n\t\t\t...this.staticHeaders,\n\t\t\tAccept: \"application/json\"\n\t\t};\n\t\taddProfileHeader(headers, schema, this.defaultSchema, \"read\");\n\t\tconst response = await this.send(\"GET\", url, headers, void 0);\n\t\tawait assertOk$1(response, url);\n\t\treturn (await readJson$1(response, url)).map((row) => ({\n\t\t\tid: primaryKey.length === 1 ? row[primaryKey[0]] : primaryKey.map((column) => row[column]),\n\t\t\tlabel: String(row[params.labelField] ?? \"\")\n\t\t}));\n\t}\n\t/**\n\t* Append the per-column equality filters that address a row by id. A\n\t* composite key expands to `?col0=eq.v0&col1=eq.v1` in `primaryKey`\n\t* declaration order (Kozou v1.0 dev spec §3.7); a single-column key keeps\n\t* the `?col=eq.value` form. The id component count must match the key\n\t* arity (else a config error, surfacing a wiring mismatch).\n\t*/\n\tappendKeyEquals(query, resource, id) {\n\t\tconst columns = keyColumns(this.resolvePrimaryKey(resource));\n\t\tconst values = asResourceIdArray(id);\n\t\tif (columns.length !== values.length) throw adapterConfigError(`PostgrestDataAdapter: resource \"${resource}\" has a ${columns.length}-column primary key (${columns.join(\", \")}) but ${values.length} id component(s) were supplied.`);\n\t\tcolumns.forEach((column, i) => {\n\t\t\tquery.set(column, `eq.${serializeFilterValue(values[i])}`);\n\t\t});\n\t}\n\tmutationHeaders(schema) {\n\t\tconst headers = {\n\t\t\t...this.staticHeaders,\n\t\t\tAccept: \"application/vnd.pgrst.object+json\",\n\t\t\t\"Content-Type\": \"application/json\",\n\t\t\tPrefer: \"return=representation\"\n\t\t};\n\t\taddProfileHeader(headers, schema, this.defaultSchema, \"write\");\n\t\treturn headers;\n\t}\n\tasync send(method, url, headers, body) {\n\t\ttry {\n\t\t\treturn await this.fetchImpl(url, {\n\t\t\t\tmethod,\n\t\t\t\theaders,\n\t\t\t\tbody\n\t\t\t});\n\t\t} catch (cause) {\n\t\t\tthrow new PostgrestAdapterError({\n\t\t\t\tmessage: `PostgrestDataAdapter: ${method} ${url} failed before reaching the server: ${cause.message}`,\n\t\t\t\tstatus: 0,\n\t\t\t\turl,\n\t\t\t\tresponseBody: null,\n\t\t\t\tcode: \"network\"\n\t\t\t});\n\t\t}\n\t}\n};\nfunction stripTrailingSlash$1(url) {\n\treturn url.endsWith(\"/\") ? url.slice(0, -1) : url;\n}\nfunction makePrimaryKeyResolver(pk) {\n\tif (pk === void 0) return () => DEFAULT_PRIMARY_KEY;\n\tif (typeof pk === \"function\") return pk;\n\treturn () => pk;\n}\n/** Normalize a resolver result to the ordered list of key columns. An empty\n* list is rejected loudly: a key-less resource cannot be addressed by id —\n* silently accepting it would, e.g., let a zero-column key match a\n* zero-component id and emit an unfiltered (table-wide) mutation. */\nfunction keyColumns(pk) {\n\tconst columns = Array.isArray(pk) ? pk : [pk];\n\tif (columns.length === 0) throw adapterConfigError(\"PostgrestDataAdapter: the primaryKey resolver returned no key columns.\");\n\treturn columns;\n}\n/** Normalize a ResourceId to the ordered list of key values. */\nfunction asResourceIdArray(id) {\n\treturn Array.isArray(id) ? id : [id];\n}\nfunction splitResource(resource, defaultSchema) {\n\tconst idx = resource.indexOf(\".\");\n\tif (idx === -1) return {\n\t\tschema: defaultSchema,\n\t\ttable: resource\n\t};\n\treturn {\n\t\tschema: resource.slice(0, idx),\n\t\ttable: resource.slice(idx + 1)\n\t};\n}\nfunction appendFilters$1(query, filters) {\n\tif (!filters) return;\n\tfor (const [key, value] of Object.entries(filters)) {\n\t\tif (value === void 0) continue;\n\t\tif (key === OR_FILTER_KEY$1) {\n\t\t\tquery.set(\"or\", `(${serializeOrExpression(value)})`);\n\t\t\tcontinue;\n\t\t}\n\t\tif (typeof value === \"string\" && hasOperatorPrefix(value)) {\n\t\t\tquery.set(key, value);\n\t\t\tcontinue;\n\t\t}\n\t\tquery.set(key, `eq.${serializeFilterValue(value)}`);\n\t}\n}\n/** Whether a filter value begins with a `<op>.` prefix from the known\n* operator set. Split on the first `.` via indexOf (no regex, ReDoS-safe). */\nfunction hasOperatorPrefix(value) {\n\tconst dot = value.indexOf(\".\");\n\treturn dot > 0 && FILTER_OPERATORS.has(value.slice(0, dot));\n}\nfunction serializeOrExpression(value) {\n\tif (typeof value === \"string\") return value;\n\tif (Array.isArray(value)) return value.map(String).join(\",\");\n\treturn String(value);\n}\nfunction serializeFilterValue(value) {\n\tif (value === null) return \"null\";\n\tif (typeof value === \"string\") return value;\n\treturn String(value);\n}\nfunction appendOrder(query, sort) {\n\tif (!sort || sort.length === 0) return;\n\tquery.set(\"order\", sort.map((s) => `${s.field}.${s.order}`).join(\",\"));\n}\nfunction addProfileHeader(headers, schema, defaultSchema, direction) {\n\tif (schema === defaultSchema) return;\n\theaders[direction === \"read\" ? \"Accept-Profile\" : \"Content-Profile\"] = schema;\n}\nfunction parseContentRangeTotal(header, fallback) {\n\tif (!header) return fallback;\n\tconst match = header.match(/\\/(\\d+)$/);\n\tif (!match) return fallback;\n\treturn Number(match[1]);\n}\nasync function readJson$1(response, url) {\n\ttry {\n\t\treturn await response.json();\n\t} catch (cause) {\n\t\tthrow new PostgrestAdapterError({\n\t\t\tmessage: `PostgrestDataAdapter: failed to parse JSON response from ${url}: ${cause.message}`,\n\t\t\tstatus: response.status,\n\t\t\turl,\n\t\t\tresponseBody: null,\n\t\t\tcode: \"parse\"\n\t\t});\n\t}\n}\nasync function assertOk$1(response, url) {\n\tif (response.ok) return;\n\tlet body = null;\n\ttry {\n\t\tbody = await response.text();\n\t} catch {\n\t\tbody = null;\n\t}\n\tthrow new PostgrestAdapterError({\n\t\tmessage: `PostgrestDataAdapter: request to ${url} failed with status ${response.status}`,\n\t\tstatus: response.status,\n\t\turl,\n\t\tresponseBody: body,\n\t\tcode: \"http\"\n\t});\n}\nfunction adapterConfigError(message) {\n\treturn new PostgrestAdapterError({\n\t\tmessage,\n\t\tstatus: 0,\n\t\turl: \"\",\n\t\tresponseBody: null,\n\t\tcode: \"config\"\n\t});\n}\n//#endregion\n//#region src/lib/adapter/kozou-api.ts\nvar DEFAULT_PAGE_SIZE = 50;\nvar DEFAULT_RELATION_LIMIT = 20;\nvar OR_FILTER_KEY = \"__or\";\nvar KozouApiAdapterError = class extends AdapterError {\n\tconstructor(init) {\n\t\tsuper(init);\n\t\tthis.name = \"KozouApiAdapterError\";\n\t}\n};\nvar KozouApiDataAdapter = class {\n\tbaseUrl;\n\tstaticHeaders;\n\tfetchImpl;\n\tdefaultPageSize;\n\tconstructor(opts) {\n\t\tif (typeof opts.baseUrl !== \"string\" || opts.baseUrl.length === 0) throw configError(\"KozouApiDataAdapter: `baseUrl` is required.\");\n\t\tthis.baseUrl = stripTrailingSlash(opts.baseUrl);\n\t\tthis.staticHeaders = { ...opts.headers ?? {} };\n\t\tthis.defaultPageSize = opts.defaultPageSize ?? DEFAULT_PAGE_SIZE;\n\t\tconst resolvedFetch = opts.fetch ?? globalThis.fetch;\n\t\tif (typeof resolvedFetch !== \"function\") throw configError(\"KozouApiDataAdapter: a `fetch` implementation is required (none injected, none on globalThis).\");\n\t\tthis.fetchImpl = resolvedFetch;\n\t}\n\tasync list(resource, params) {\n\t\tconst page = params.page ?? 1;\n\t\tconst pageSize = params.pageSize ?? this.defaultPageSize;\n\t\tconst query = new URLSearchParams();\n\t\tquery.set(\"page\", String(page));\n\t\tquery.set(\"pageSize\", String(pageSize));\n\t\tappendSort(query, params.sort);\n\t\tif (params.search !== void 0 && params.search.length > 0) query.set(\"search\", params.search);\n\t\tappendFilters(query, params.filters);\n\t\tconst url = `${this.baseUrl}/${encodeResource(resource)}?${query.toString()}`;\n\t\tconst body = await this.getJson(url);\n\t\treturn {\n\t\t\trows: Array.isArray(body.rows) ? body.rows : [],\n\t\t\ttotal: typeof body.total === \"number\" ? body.total : body.rows?.length ?? 0,\n\t\t\tpage: typeof body.page === \"number\" ? body.page : page,\n\t\t\tpageSize: typeof body.pageSize === \"number\" ? body.pageSize : pageSize\n\t\t};\n\t}\n\tasync get(resource, id) {\n\t\tconst url = this.itemUrl(resource, id);\n\t\treturn await this.getJson(url);\n\t}\n\tasync create(resource, data) {\n\t\tconst url = `${this.baseUrl}/${encodeResource(resource)}`;\n\t\treturn await this.sendJson(\"POST\", url, data);\n\t}\n\tasync update(resource, id, data) {\n\t\treturn await this.sendJson(\"PATCH\", this.itemUrl(resource, id), data);\n\t}\n\tasync delete(resource, id) {\n\t\tconst url = this.itemUrl(resource, id);\n\t\tconst headers = {\n\t\t\t...this.staticHeaders,\n\t\t\tAccept: \"application/json\"\n\t\t};\n\t\tawait assertOk(await this.send(\"DELETE\", url, headers, void 0), url);\n\t}\n\tasync searchRelation(resource, params) {\n\t\tconst query = new URLSearchParams();\n\t\tquery.set(\"as\", \"options\");\n\t\tquery.set(\"label\", params.labelField);\n\t\tif (params.searchFields.length > 0) query.set(\"fields\", params.searchFields.join(\",\"));\n\t\tif (params.query.length > 0) query.set(\"q\", params.query);\n\t\tquery.set(\"limit\", String(params.limit ?? DEFAULT_RELATION_LIMIT));\n\t\tconst url = `${this.baseUrl}/${encodeResource(resource)}?${query.toString()}`;\n\t\tconst body = await this.getJson(url);\n\t\treturn Array.isArray(body.options) ? body.options : [];\n\t}\n\titemUrl(resource, id) {\n\t\tconst segment = Array.isArray(id) ? id.map((part) => encodeURIComponent(String(part))).join(\",\") : encodeURIComponent(String(id));\n\t\treturn `${this.baseUrl}/${encodeResource(resource)}/${segment}`;\n\t}\n\tasync getJson(url) {\n\t\tconst headers = {\n\t\t\t...this.staticHeaders,\n\t\t\tAccept: \"application/json\"\n\t\t};\n\t\tconst response = await this.send(\"GET\", url, headers, void 0);\n\t\tawait assertOk(response, url);\n\t\treturn readJson(response, url);\n\t}\n\tasync sendJson(method, url, data) {\n\t\tconst headers = {\n\t\t\t...this.staticHeaders,\n\t\t\tAccept: \"application/json\",\n\t\t\t\"Content-Type\": \"application/json\"\n\t\t};\n\t\tconst response = await this.send(method, url, headers, JSON.stringify(data));\n\t\tawait assertOk(response, url);\n\t\treturn readJson(response, url);\n\t}\n\tasync send(method, url, headers, body) {\n\t\ttry {\n\t\t\treturn await this.fetchImpl(url, {\n\t\t\t\tmethod,\n\t\t\t\theaders,\n\t\t\t\tbody\n\t\t\t});\n\t\t} catch (cause) {\n\t\t\tthrow new KozouApiAdapterError({\n\t\t\t\tmessage: `KozouApiDataAdapter: ${method} ${url} failed before reaching the server: ${cause.message}`,\n\t\t\t\tstatus: 0,\n\t\t\t\turl,\n\t\t\t\tresponseBody: null,\n\t\t\t\tcode: \"network\"\n\t\t\t});\n\t\t}\n\t}\n};\nfunction stripTrailingSlash(url) {\n\treturn url.endsWith(\"/\") ? url.slice(0, -1) : url;\n}\nfunction encodeResource(resource) {\n\treturn encodeURIComponent(resource);\n}\nfunction appendSort(query, sort) {\n\tif (!sort || sort.length === 0) return;\n\tquery.set(\"sort\", sort.map((s) => `${s.field}.${s.order}`).join(\",\"));\n}\nfunction appendFilters(query, filters) {\n\tif (!filters) return;\n\tfor (const [key, value] of Object.entries(filters)) {\n\t\tif (value === void 0 || key === OR_FILTER_KEY) continue;\n\t\tquery.set(key, String(value));\n\t}\n}\nasync function readJson(response, url) {\n\ttry {\n\t\treturn await response.json();\n\t} catch (cause) {\n\t\tthrow new KozouApiAdapterError({\n\t\t\tmessage: `KozouApiDataAdapter: failed to parse JSON response from ${url}: ${cause.message}`,\n\t\t\tstatus: response.status,\n\t\t\turl,\n\t\t\tresponseBody: null,\n\t\t\tcode: \"parse\"\n\t\t});\n\t}\n}\nasync function assertOk(response, url) {\n\tif (response.ok) return;\n\tlet body = null;\n\ttry {\n\t\tbody = await response.text();\n\t} catch {\n\t\tbody = null;\n\t}\n\tthrow new KozouApiAdapterError({\n\t\tmessage: `KozouApiDataAdapter: request to ${url} failed with status ${response.status}`,\n\t\tstatus: response.status,\n\t\turl,\n\t\tresponseBody: body,\n\t\tcode: \"http\"\n\t});\n}\nfunction configError(message) {\n\treturn new KozouApiAdapterError({\n\t\tmessage,\n\t\tstatus: 0,\n\t\turl: \"\",\n\t\tresponseBody: null,\n\t\tcode: \"config\"\n\t});\n}\n//#endregion\n//#region src/lib/server/adapter.ts\nvar DEFAULT_POSTGREST_URL = \"http://localhost:3000\";\nvar DEFAULT_API_URL = \"http://localhost:3335\";\nvar cached = null;\nvar cachedSchema = null;\n/**\n* Resolve the configured DataAdapter.\n*\n* The in-house API adapter resolves primary keys server-side, so it ignores\n* `schema`. The REST adapter must address rows by their actual key columns\n* (a composite key expands to per-column filters), so it is wired with a\n* resolver derived from the live SchemaContext. The singleton is rebuilt when\n* the schema identity changes — the schema cache hands out a new object on its\n* TTL refresh — so the resolver tracks DDL changes.\n*/\nfunction getAdapter(schema) {\n\tconst nextSchema = schema ?? null;\n\tif (cached !== null && cachedSchema === nextSchema) return cached;\n\tcachedSchema = nextSchema;\n\tif ((process.env.KOZOU_ADAPTER_KIND ?? \"postgrest\") === \"api\") {\n\t\tconst baseUrl = process.env.KOZOU_ADAPTER_URL ?? DEFAULT_API_URL;\n\t\tconst token = process.env.KOZOU_ADAPTER_TOKEN;\n\t\tcached = new KozouApiDataAdapter({\n\t\t\tbaseUrl,\n\t\t\theaders: token !== void 0 && token.length > 0 ? { Authorization: `Bearer ${token}` } : void 0\n\t\t});\n\t} else cached = new PostgrestDataAdapter({\n\t\tbaseUrl: process.env.KOZOU_ADAPTER_URL ?? DEFAULT_POSTGREST_URL,\n\t\tprimaryKey: primaryKeyResolver(schema)\n\t});\n\treturn cached;\n}\nvar DEFAULT_RESOLVER_SCHEMA = \"public\";\n/** Build a primary-key resolver from the schema: each resource maps to its\n* ordered key columns. A bare (schema-less) resource name is matched\n* against the default schema, the same normalization the adapter applies.\n* A known key-less table keeps its empty key list so the adapter rejects\n* by-id operations loudly instead of filtering on a possibly non-unique\n* 'id' column (wrong-row reads / mutations). The 'id' fallback applies\n* only to unknown resources or when no schema is available. */\nfunction primaryKeyResolver(schema) {\n\tif (schema === void 0) return void 0;\n\treturn (resource) => {\n\t\tconst qualified = resource.includes(\".\") ? resource : `${DEFAULT_RESOLVER_SCHEMA}.${resource}`;\n\t\tconst table = schema.tables.find((t) => t.qualifiedName === qualified);\n\t\tif (table !== void 0) return table.primaryKey;\n\t\treturn \"id\";\n\t};\n}\n//#endregion\nexport { getAdapter as t };\n"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { w as index_server_exports } from './internal-CCj4Us-1.js';
1
+ import { w as index_server_exports } from './internal-BkKkeKsj.js';
2
2
  import { U as noop } from './dev-yFiAtg5l.js';
3
3
 
4
4
  var is_legacy = noop.toString().includes("$$") || /function \w+\(\) \{\}/.test(noop.toString());
@@ -66,4 +66,4 @@ async function applyAction(result) {
66
66
  }
67
67
 
68
68
  export { afterNavigate as a, applyAction as b, invalidateAll as i };
69
- //# sourceMappingURL=client-B9o82f8t.js.map
69
+ //# sourceMappingURL=client-DLR5dxwU.js.map