@ketvietlab/ketjs-view 0.1.2 → 0.1.5

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.
package/LICENSE CHANGED
@@ -1,6 +1,6 @@
1
1
  MIT License
2
2
 
3
- Copyright (c) 2026 Ketviet
3
+ Copyright (c) 2026 KETVIET JSC, Vietnam
4
4
 
5
5
  Permission is hereby granted, free of charge, to any person obtaining a copy
6
6
  of this software and associated documentation files (the "Software"), to deal
package/dist/form.d.ts ADDED
@@ -0,0 +1,99 @@
1
+ export type FormValues = Record<string, unknown>;
2
+ export type FormFieldType = 'text' | 'id' | 'ref' | 'int' | 'float' | 'decimal' | 'bool' | 'date' | 'datetime' | 'json';
3
+ export type ValidationIssue = {
4
+ /** Null identifies an error concerning the whole form rather than one control. */
5
+ field: string | null;
6
+ code: string;
7
+ messageKey: string;
8
+ params: Readonly<Record<string, unknown>>;
9
+ };
10
+ export type ValidationIssueInput = Omit<ValidationIssue, 'params'> & {
11
+ params?: Readonly<Record<string, unknown>>;
12
+ };
13
+ export type ValidationVerdict = true | ValidationIssueInput | readonly ValidationIssueInput[];
14
+ export type FormFieldRule = {
15
+ type?: FormFieldType;
16
+ required?: boolean;
17
+ /** Trim text before constraints and before returning normalized values. */
18
+ trim?: boolean;
19
+ /** Accept repeated FormData entries and validate each entry with this rule. */
20
+ multiple?: boolean;
21
+ min?: number;
22
+ max?: number;
23
+ minLength?: number;
24
+ maxLength?: number;
25
+ pattern?: RegExp;
26
+ oneOf?: readonly (string | number | boolean)[];
27
+ validate?: (value: unknown, values: Readonly<FormValues>) => ValidationVerdict;
28
+ };
29
+ export type FormSchema<TValues extends FormValues = FormValues> = {
30
+ fields: Record<Extract<keyof TValues, string>, FormFieldRule>;
31
+ /** Unknown inputs are dropped by default, matching the changeset allow-list boundary. */
32
+ unknown?: 'drop' | 'reject';
33
+ validate?: (values: Readonly<Partial<TValues>>, raw: Readonly<FormValues>) => ValidationVerdict;
34
+ };
35
+ type FormValidationDetails = {
36
+ issues: ValidationIssue[];
37
+ fieldErrors: Record<string, ValidationIssue[]>;
38
+ formErrors: ValidationIssue[];
39
+ dropped: string[];
40
+ };
41
+ export type FormValidationResult<TValues extends FormValues = FormValues> = ({
42
+ valid: true;
43
+ values: TValues;
44
+ } & FormValidationDetails) | ({
45
+ valid: false;
46
+ values: Partial<TValues>;
47
+ } & FormValidationDetails);
48
+ export type FormValidationProblem = {
49
+ ok: false;
50
+ code: string;
51
+ message: string;
52
+ issues: ValidationIssue[];
53
+ fieldErrors: Record<string, ValidationIssue[]>;
54
+ formErrors: ValidationIssue[];
55
+ };
56
+ export declare const validationIssue: (field: string | null, code: string, messageKey?: string, params?: Readonly<Record<string, unknown>>) => ValidationIssue;
57
+ export declare const fieldErrorsOf: (issues: readonly ValidationIssue[]) => Record<string, ValidationIssue[]>;
58
+ export declare const formErrorsOf: (issues: readonly ValidationIssue[]) => ValidationIssue[];
59
+ export declare const validationProblem: (source: readonly ValidationIssue[] | Pick<FormValidationResult, 'issues'>, options?: {
60
+ code?: string;
61
+ message?: string;
62
+ }) => FormValidationProblem;
63
+ /** Preserve repeated controls as arrays instead of silently keeping only the last value. */
64
+ export declare const valuesFromFormData: (entries: Iterable<readonly [string, unknown]>) => FormValues;
65
+ export declare const defineFormSchema: <TValues extends FormValues = FormValues>(schema: FormSchema<TValues>) => FormSchema<TValues>;
66
+ export declare function validateForm<TValues extends FormValues = FormValues>(schema: FormSchema<TValues>, input: Readonly<FormValues>): FormValidationResult<TValues>;
67
+ export type ReadonlySignal<T> = {
68
+ (): T;
69
+ peek(): T;
70
+ };
71
+ export type FormController<TValues extends FormValues = FormValues> = {
72
+ values: ReadonlySignal<Readonly<Partial<TValues>>>;
73
+ issues: ReadonlySignal<readonly ValidationIssue[]>;
74
+ touched: ReadonlySignal<readonly string[]>;
75
+ submitted: ReadonlySignal<boolean>;
76
+ submitting: ReadonlySignal<boolean>;
77
+ dirty: ReadonlySignal<boolean>;
78
+ valid: ReadonlySignal<boolean>;
79
+ set(field: Extract<keyof TValues, string>, value: unknown, options?: {
80
+ touch?: boolean;
81
+ }): void;
82
+ touch(field: Extract<keyof TValues, string>): void;
83
+ errors(field: Extract<keyof TValues, string>, visibleOnly?: boolean): ValidationIssue[];
84
+ formErrors(visibleOnly?: boolean): ValidationIssue[];
85
+ validate(): FormValidationResult<TValues>;
86
+ applyServerIssues(source: readonly ValidationIssue[] | Pick<FormValidationProblem, 'issues'>): void;
87
+ reset(values?: Readonly<FormValues>): void;
88
+ submit<TResult>(handler: (values: TValues) => TResult | Promise<TResult>): Promise<{
89
+ ok: false;
90
+ validation: FormValidationResult<TValues>;
91
+ } | {
92
+ ok: true;
93
+ value: TResult;
94
+ }>;
95
+ dispose(): void;
96
+ };
97
+ export declare function createForm<TValues extends FormValues = FormValues>(schema: FormSchema<TValues>, initial?: Readonly<FormValues>): FormController<TValues>;
98
+ export {};
99
+ //# sourceMappingURL=form.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"form.d.ts","sourceRoot":"","sources":["../../../../packages/ketjs-view/src/form.ts"],"names":[],"mappings":"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"}
package/dist/form.js ADDED
@@ -0,0 +1,332 @@
1
+ // Form validation is browser-safe and independent of rendering. The same schema
2
+ // can therefore validate native FormData in an island and untrusted input on the
3
+ // server without shipping a second, subtly different rule set.
4
+ import { batch, computed, signal } from './signal.js';
5
+ export const validationIssue = (field, code, messageKey = `validation.${code}`, params = {}) => ({ field, code, messageKey, params });
6
+ const normalizeIssue = (held) => ({
7
+ ...held,
8
+ params: held.params ?? {},
9
+ });
10
+ const issuesOf = (verdict) => {
11
+ if (verdict === true)
12
+ return [];
13
+ return (Array.isArray(verdict) ? verdict : [verdict]).map(normalizeIssue);
14
+ };
15
+ export const fieldErrorsOf = (issues) => {
16
+ const grouped = new Map();
17
+ for (const held of issues) {
18
+ if (held.field === null)
19
+ continue;
20
+ const bucket = grouped.get(held.field) ?? [];
21
+ bucket.push(held);
22
+ grouped.set(held.field, bucket);
23
+ }
24
+ return Object.fromEntries(grouped);
25
+ };
26
+ export const formErrorsOf = (issues) => issues.filter((held) => held.field === null);
27
+ export const validationProblem = (source, options = {}) => {
28
+ const sourceIssues = Array.isArray(source)
29
+ ? source
30
+ : source.issues;
31
+ const issues = [...sourceIssues];
32
+ return {
33
+ ok: false,
34
+ code: options.code ?? 'E_FORM_INVALID',
35
+ message: options.message ?? 'form validation failed',
36
+ issues,
37
+ fieldErrors: fieldErrorsOf(issues),
38
+ formErrors: formErrorsOf(issues),
39
+ };
40
+ };
41
+ /** Preserve repeated controls as arrays instead of silently keeping only the last value. */
42
+ export const valuesFromFormData = (entries) => {
43
+ const values = new Map();
44
+ for (const [name, value] of entries) {
45
+ if (!values.has(name)) {
46
+ values.set(name, value);
47
+ continue;
48
+ }
49
+ const previous = values.get(name);
50
+ values.set(name, Array.isArray(previous) ? [...previous, value] : [previous, value]);
51
+ }
52
+ return Object.fromEntries(values);
53
+ };
54
+ export const defineFormSchema = (schema) => schema;
55
+ const DECIMAL = /^[+-]?(?:\d+(?:\.\d*)?|\.\d+)$/;
56
+ const DATE = /^(\d{4})-(\d{2})-(\d{2})$/;
57
+ const isDate = (value) => {
58
+ if (typeof value !== 'string')
59
+ return false;
60
+ const match = DATE.exec(value);
61
+ if (!match)
62
+ return false;
63
+ const year = Number(match[1]);
64
+ const month = Number(match[2]);
65
+ const day = Number(match[3]);
66
+ const held = new Date(Date.UTC(year, month - 1, day));
67
+ return held.getUTCFullYear() === year && held.getUTCMonth() === month - 1 && held.getUTCDate() === day;
68
+ };
69
+ const empty = (value) => value == null || (typeof value === 'string' && value.trim() === '');
70
+ const decimalText = (value) => {
71
+ const source = String(value);
72
+ const match = /^([+-]?)(\d+)(?:\.(\d+))?e([+-]?\d+)$/i.exec(source);
73
+ if (!match)
74
+ return source;
75
+ const sign = match[1] ?? '';
76
+ const whole = match[2];
77
+ const digits = whole + (match[3] ?? '');
78
+ const point = whole.length + Number(match[4]);
79
+ if (point <= 0)
80
+ return `${sign}0.${'0'.repeat(-point)}${digits}`;
81
+ if (point >= digits.length)
82
+ return `${sign}${digits}${'0'.repeat(point - digits.length)}`;
83
+ return `${sign}${digits.slice(0, point)}.${digits.slice(point)}`;
84
+ };
85
+ const cast = (type, raw, trim) => {
86
+ if (type === 'text' || type === 'id' || type === 'ref') {
87
+ if (typeof raw !== 'string')
88
+ return { ok: false };
89
+ return { ok: true, value: trim ? raw.trim() : raw };
90
+ }
91
+ if (type === 'int') {
92
+ const value = typeof raw === 'string' && raw.trim() !== '' ? Number(raw) : raw;
93
+ return typeof value === 'number' && Number.isFinite(value) && Number.isInteger(value)
94
+ ? { ok: true, value }
95
+ : { ok: false };
96
+ }
97
+ if (type === 'float') {
98
+ const value = typeof raw === 'string' && raw.trim() !== '' ? Number(raw) : raw;
99
+ return typeof value === 'number' && Number.isFinite(value) ? { ok: true, value } : { ok: false };
100
+ }
101
+ if (type === 'decimal') {
102
+ if (typeof raw === 'number' && Number.isFinite(raw))
103
+ return { ok: true, value: decimalText(raw) };
104
+ if (typeof raw !== 'string' || !DECIMAL.test(raw.trim()))
105
+ return { ok: false };
106
+ return { ok: true, value: raw.trim().replace(/^\+/, '') };
107
+ }
108
+ if (type === 'bool') {
109
+ if (typeof raw === 'boolean')
110
+ return { ok: true, value: raw };
111
+ if (raw === 1 || raw === '1' || raw === 'true' || raw === 'on')
112
+ return { ok: true, value: true };
113
+ if (raw === 0 || raw === '0' || raw === 'false')
114
+ return { ok: true, value: false };
115
+ return { ok: false };
116
+ }
117
+ if (type === 'date')
118
+ return isDate(raw) ? { ok: true, value: raw } : { ok: false };
119
+ if (type === 'datetime') {
120
+ return typeof raw === 'string' && !Number.isNaN(Date.parse(raw))
121
+ ? { ok: true, value: raw }
122
+ : { ok: false };
123
+ }
124
+ if (typeof raw === 'string') {
125
+ try {
126
+ return { ok: true, value: JSON.parse(raw) };
127
+ }
128
+ catch {
129
+ return { ok: false };
130
+ }
131
+ }
132
+ return raw !== null && typeof raw === 'object' ? { ok: true, value: raw } : { ok: false };
133
+ };
134
+ const lengthOf = (value) => {
135
+ if (typeof value === 'string')
136
+ return [...value].length;
137
+ if (Array.isArray(value))
138
+ return value.length;
139
+ return null;
140
+ };
141
+ const checkValue = (field, value, rule, issues) => {
142
+ const values = Array.isArray(value) && rule.multiple ? value : [value];
143
+ for (const held of values) {
144
+ const numeric = typeof held === 'number' ? held : rule.type === 'decimal' ? Number(held) : null;
145
+ if (numeric !== null && rule.min !== undefined && numeric < rule.min)
146
+ issues.push(validationIssue(field, 'min', 'validation.min', { min: rule.min }));
147
+ if (numeric !== null && rule.max !== undefined && numeric > rule.max)
148
+ issues.push(validationIssue(field, 'max', 'validation.max', { max: rule.max }));
149
+ if (rule.pattern && typeof held === 'string') {
150
+ if (!new RegExp(rule.pattern.source, rule.pattern.flags).test(held))
151
+ issues.push(validationIssue(field, 'pattern', 'validation.pattern', { pattern: rule.pattern.source }));
152
+ }
153
+ if (rule.oneOf && !rule.oneOf.some((choice) => Object.is(choice, held)))
154
+ issues.push(validationIssue(field, 'one_of', 'validation.oneOf', { choices: [...rule.oneOf] }));
155
+ }
156
+ const length = lengthOf(value);
157
+ if (length !== null && rule.minLength !== undefined && length < rule.minLength)
158
+ issues.push(validationIssue(field, 'min_length', 'validation.minLength', { min: rule.minLength }));
159
+ if (length !== null && rule.maxLength !== undefined && length > rule.maxLength)
160
+ issues.push(validationIssue(field, 'max_length', 'validation.maxLength', { max: rule.maxLength }));
161
+ };
162
+ export function validateForm(schema, input) {
163
+ const values = {};
164
+ const issues = [];
165
+ const invalid = new Set();
166
+ const fields = Object.keys(schema.fields);
167
+ const dropped = Object.keys(input).filter((field) => !Object.hasOwn(schema.fields, field));
168
+ if (schema.unknown === 'reject')
169
+ for (const field of dropped)
170
+ issues.push(validationIssue(field, 'unknown', 'validation.unknown', { accepted: fields }));
171
+ for (const field of fields) {
172
+ const rule = schema.fields[field];
173
+ const raw = input[field];
174
+ const rawValues = rule.multiple
175
+ ? (Array.isArray(raw) ? raw : empty(raw) ? [] : [raw]).filter((held) => !empty(held))
176
+ : empty(raw)
177
+ ? []
178
+ : [raw];
179
+ if (!rawValues.length) {
180
+ if (rule.required) {
181
+ issues.push(validationIssue(field, 'required'));
182
+ invalid.add(field);
183
+ }
184
+ continue;
185
+ }
186
+ const casted = [];
187
+ for (const rawValue of rawValues) {
188
+ const held = cast(rule.type ?? 'text', rawValue, rule.trim === true);
189
+ if (!held.ok) {
190
+ issues.push(validationIssue(field, 'type', 'validation.type', {
191
+ expected: rule.type ?? 'text',
192
+ actual: typeof rawValue,
193
+ }));
194
+ invalid.add(field);
195
+ break;
196
+ }
197
+ casted.push(held.value);
198
+ }
199
+ if (invalid.has(field))
200
+ continue;
201
+ const value = rule.multiple ? casted : casted[0];
202
+ values[field] = value;
203
+ const before = issues.length;
204
+ checkValue(field, value, rule, issues);
205
+ if (issues.length !== before)
206
+ invalid.add(field);
207
+ }
208
+ for (const field of fields) {
209
+ const rule = schema.fields[field];
210
+ if (!rule.validate || invalid.has(field) || !Object.hasOwn(values, field))
211
+ continue;
212
+ const held = issuesOf(rule.validate(values[field], values));
213
+ issues.push(...held.map((item) => (item.field === null ? { ...item, field } : item)));
214
+ }
215
+ if (schema.validate)
216
+ issues.push(...issuesOf(schema.validate(values, input)));
217
+ const details = {
218
+ issues,
219
+ fieldErrors: fieldErrorsOf(issues),
220
+ formErrors: formErrorsOf(issues),
221
+ dropped,
222
+ };
223
+ return issues.length
224
+ ? { valid: false, values: values, ...details }
225
+ : { valid: true, values: values, ...details };
226
+ }
227
+ const same = (left, right) => {
228
+ if (Object.is(left, right))
229
+ return true;
230
+ if (Array.isArray(left) && Array.isArray(right))
231
+ return left.length === right.length && left.every((held, index) => same(held, right[index]));
232
+ if (left && right && typeof left === 'object' && typeof right === 'object') {
233
+ if (left instanceof Date || right instanceof Date)
234
+ return left instanceof Date && right instanceof Date && left.getTime() === right.getTime();
235
+ if (Object.getPrototypeOf(left) !== Object.prototype || Object.getPrototypeOf(right) !== Object.prototype)
236
+ return false;
237
+ const leftEntries = Object.entries(left);
238
+ const rightRecord = right;
239
+ return (leftEntries.length === Object.keys(rightRecord).length &&
240
+ leftEntries.every(([key, held]) => Object.hasOwn(rightRecord, key) && same(held, rightRecord[key])));
241
+ }
242
+ return false;
243
+ };
244
+ export function createForm(schema, initial = {}) {
245
+ let baseline = { ...initial };
246
+ const valuesState = signal({ ...initial });
247
+ const initialValidation = validateForm(schema, initial);
248
+ const issuesState = signal(initialValidation.issues);
249
+ const touchedState = signal([]);
250
+ const submittedState = signal(false);
251
+ const submittingState = signal(false);
252
+ const dirtyState = computed(() => !same(valuesState(), baseline));
253
+ const validState = computed(() => issuesState().length === 0);
254
+ const validate = () => {
255
+ const result = validateForm(schema, valuesState());
256
+ issuesState.set(result.issues);
257
+ return result;
258
+ };
259
+ return {
260
+ values: valuesState,
261
+ issues: issuesState,
262
+ touched: touchedState,
263
+ submitted: submittedState,
264
+ submitting: submittingState,
265
+ dirty: dirtyState,
266
+ valid: validState,
267
+ set(field, value, options = {}) {
268
+ batch(() => {
269
+ valuesState.set({ ...valuesState.peek(), [field]: value });
270
+ if (options.touch && !touchedState.peek().includes(field))
271
+ touchedState.set([...touchedState.peek(), field]);
272
+ validate();
273
+ });
274
+ },
275
+ touch(field) {
276
+ if (!touchedState.peek().includes(field))
277
+ touchedState.set([...touchedState.peek(), field]);
278
+ validate();
279
+ },
280
+ errors(field, visibleOnly = true) {
281
+ if (visibleOnly && !submittedState.peek() && !touchedState.peek().includes(field))
282
+ return [];
283
+ return issuesState.peek().filter((held) => held.field === field);
284
+ },
285
+ formErrors(visibleOnly = true) {
286
+ if (visibleOnly && !submittedState.peek())
287
+ return [];
288
+ return formErrorsOf(issuesState.peek());
289
+ },
290
+ validate,
291
+ applyServerIssues(source) {
292
+ const held = Array.isArray(source)
293
+ ? source
294
+ : source.issues;
295
+ batch(() => {
296
+ submittedState.set(true);
297
+ issuesState.set(held.map((item) => ({ ...item, params: item.params ?? {} })));
298
+ });
299
+ },
300
+ reset(next) {
301
+ if (next)
302
+ baseline = { ...next };
303
+ const target = { ...baseline };
304
+ const result = validateForm(schema, target);
305
+ batch(() => {
306
+ valuesState.set(target);
307
+ issuesState.set(result.issues);
308
+ touchedState.set([]);
309
+ submittedState.set(false);
310
+ submittingState.set(false);
311
+ });
312
+ },
313
+ async submit(handler) {
314
+ submittedState.set(true);
315
+ const validation = validate();
316
+ if (!validation.valid)
317
+ return { ok: false, validation };
318
+ submittingState.set(true);
319
+ try {
320
+ return { ok: true, value: await handler(validation.values) };
321
+ }
322
+ finally {
323
+ submittingState.set(false);
324
+ }
325
+ },
326
+ dispose() {
327
+ dirtyState.dispose();
328
+ validState.dispose();
329
+ },
330
+ };
331
+ }
332
+ //# sourceMappingURL=form.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"form.js","sourceRoot":"","sources":["../../../../../packages/ketjs-view/src/form.ts"],"names":[],"mappings":"AAAA,gFAAgF;AAChF,iFAAiF;AACjF,+DAA+D;AAE/D,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAwErD,MAAM,CAAC,MAAM,eAAe,GAAG,CAC7B,KAAoB,EACpB,IAAY,EACZ,UAAU,GAAG,cAAc,IAAI,EAAE,EACjC,MAAM,GAAsC,EAAE,EAC7B,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC,CAAA;AAE3D,MAAM,cAAc,GAAG,CAAC,IAA0B,EAAmB,EAAE,CAAC,CAAC;IACvE,GAAG,IAAI;IACP,MAAM,EAAE,IAAI,CAAC,MAAM,IAAI,EAAE;CAC1B,CAAC,CAAA;AAEF,MAAM,QAAQ,GAAG,CAAC,OAA0B,EAAqB,EAAE;IACjE,IAAI,OAAO,KAAK,IAAI;QAAE,OAAO,EAAE,CAAA;IAC/B,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,cAAc,CAAC,CAAA;AAC3E,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,MAAkC,EAAqC,EAAE;IACrG,MAAM,OAAO,GAAG,IAAI,GAAG,EAA6B,CAAA;IACpD,KAAK,MAAM,IAAI,IAAI,MAAM,EAAE,CAAC;QAC1B,IAAI,IAAI,CAAC,KAAK,KAAK,IAAI;YAAE,SAAQ;QACjC,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAA;QAC5C,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QACjB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC,CAAA;IACjC,CAAC;IACD,OAAO,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,CAAA;AACpC,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,MAAkC,EAAqB,EAAE,CACpF,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,KAAK,IAAI,CAAC,CAAA;AAE9C,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAC/B,MAAyE,EACzE,OAAO,GAAwC,EAAE,EAC1B,EAAE;IACzB,MAAM,YAAY,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;QACxC,CAAC,CAAE,MAAqC;QACxC,CAAC,CAAE,MAA+C,CAAC,MAAM,CAAA;IAC3D,MAAM,MAAM,GAAG,CAAC,GAAG,YAAY,CAAC,CAAA;IAChC,OAAO;QACL,EAAE,EAAE,KAAK;QACT,IAAI,EAAE,OAAO,CAAC,IAAI,IAAI,gBAAgB;QACtC,OAAO,EAAE,OAAO,CAAC,OAAO,IAAI,wBAAwB;QACpD,MAAM;QACN,WAAW,EAAE,aAAa,CAAC,MAAM,CAAC;QAClC,UAAU,EAAE,YAAY,CAAC,MAAM,CAAC;KACjC,CAAA;AACH,CAAC,CAAA;AAED,4FAA4F;AAC5F,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,OAA6C,EAAc,EAAE;IAC9F,MAAM,MAAM,GAAG,IAAI,GAAG,EAAmB,CAAA;IACzC,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,OAAO,EAAE,CAAC;QACpC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;YACtB,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,CAAA;YACvB,SAAQ;QACV,CAAC;QACD,MAAM,QAAQ,GAAG,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;QACjC,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAA;IACtF,CAAC;IACD,OAAO,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,CAAA;AACnC,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAC9B,MAA2B,EACN,EAAE,CAAC,MAAM,CAAA;AAEhC,MAAM,OAAO,GAAG,gCAAgC,CAAA;AAChD,MAAM,IAAI,GAAG,2BAA2B,CAAA;AAExC,MAAM,MAAM,GAAG,CAAC,KAAc,EAAmB,EAAE;IACjD,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAA;IAC3C,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;IAC9B,IAAI,CAAC,KAAK;QAAE,OAAO,KAAK,CAAA;IACxB,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;IAC7B,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;IAC9B,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;IAC5B,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC,CAAA;IACrD,OAAO,IAAI,CAAC,cAAc,EAAE,KAAK,IAAI,IAAI,IAAI,CAAC,WAAW,EAAE,KAAK,KAAK,GAAG,CAAC,IAAI,IAAI,CAAC,UAAU,EAAE,KAAK,GAAG,CAAA;AACxG,CAAC,CAAA;AAED,MAAM,KAAK,GAAG,CAAC,KAAc,EAAW,EAAE,CAAC,KAAK,IAAI,IAAI,IAAI,CAAC,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAA;AAE9G,MAAM,WAAW,GAAG,CAAC,KAAa,EAAU,EAAE;IAC5C,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,CAAA;IAC5B,MAAM,KAAK,GAAG,wCAAwC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;IACnE,IAAI,CAAC,KAAK;QAAE,OAAO,MAAM,CAAA;IACzB,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,CAAA;IAC3B,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,CAAW,CAAA;IAChC,MAAM,MAAM,GAAG,KAAK,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAA;IACvC,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;IAC7C,IAAI,KAAK,IAAI,CAAC;QAAE,OAAO,GAAG,IAAI,KAAK,GAAG,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,GAAG,MAAM,EAAE,CAAA;IAChE,IAAI,KAAK,IAAI,MAAM,CAAC,MAAM;QAAE,OAAO,GAAG,IAAI,GAAG,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,CAAA;IACzF,OAAO,GAAG,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAA;AAClE,CAAC,CAAA;AAED,MAAM,IAAI,GAAG,CACX,IAAmB,EACnB,GAAY,EACZ,IAAa,EACiC,EAAE;IAChD,IAAI,IAAI,KAAK,MAAM,IAAI,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,KAAK,EAAE,CAAC;QACvD,IAAI,OAAO,GAAG,KAAK,QAAQ;YAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,CAAA;QACjD,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAA;IACrD,CAAC;IACD,IAAI,IAAI,KAAK,KAAK,EAAE,CAAC;QACnB,MAAM,KAAK,GAAG,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAA;QAC9E,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC;YACnF,CAAC,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE;YACrB,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAA;IACnB,CAAC;IACD,IAAI,IAAI,KAAK,OAAO,EAAE,CAAC;QACrB,MAAM,KAAK,GAAG,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAA;QAC9E,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAA;IAClG,CAAC;IACD,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;QACvB,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC;YAAE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,WAAW,CAAC,GAAG,CAAC,EAAE,CAAA;QACjG,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;YAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,CAAA;QAC9E,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,EAAE,CAAA;IAC3D,CAAC;IACD,IAAI,IAAI,KAAK,MAAM,EAAE,CAAC;QACpB,IAAI,OAAO,GAAG,KAAK,SAAS;YAAE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,CAAA;QAC7D,IAAI,GAAG,KAAK,CAAC,IAAI,GAAG,KAAK,GAAG,IAAI,GAAG,KAAK,MAAM,IAAI,GAAG,KAAK,IAAI;YAAE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAA;QAChG,IAAI,GAAG,KAAK,CAAC,IAAI,GAAG,KAAK,GAAG,IAAI,GAAG,KAAK,OAAO;YAAE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,CAAA;QAClF,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,CAAA;IACtB,CAAC;IACD,IAAI,IAAI,KAAK,MAAM;QAAE,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAA;IAClF,IAAI,IAAI,KAAK,UAAU,EAAE,CAAC;QACxB,OAAO,OAAO,GAAG,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YAC9D,CAAC,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE;YAC1B,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAA;IACnB,CAAC;IACD,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;QAC5B,IAAI,CAAC;YACH,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAA;QAC7C,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,CAAA;QACtB,CAAC;IACH,CAAC;IACD,OAAO,GAAG,KAAK,IAAI,IAAI,OAAO,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAA;AAC3F,CAAC,CAAA;AAED,MAAM,QAAQ,GAAG,CAAC,KAAc,EAAiB,EAAE;IACjD,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,CAAC,GAAG,KAAK,CAAC,CAAC,MAAM,CAAA;IACvD,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC,MAAM,CAAA;IAC7C,OAAO,IAAI,CAAA;AACb,CAAC,CAAA;AAED,MAAM,UAAU,GAAG,CAAC,KAAa,EAAE,KAAc,EAAE,IAAmB,EAAE,MAAyB,EAAQ,EAAE;IACzG,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAA;IACtE,KAAK,MAAM,IAAI,IAAI,MAAM,EAAE,CAAC;QAC1B,MAAM,OAAO,GAAG,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;QAC/F,IAAI,OAAO,KAAK,IAAI,IAAI,IAAI,CAAC,GAAG,KAAK,SAAS,IAAI,OAAO,GAAG,IAAI,CAAC,GAAG;YAClE,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,KAAK,EAAE,gBAAgB,EAAE,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAA;QACjF,IAAI,OAAO,KAAK,IAAI,IAAI,IAAI,CAAC,GAAG,KAAK,SAAS,IAAI,OAAO,GAAG,IAAI,CAAC,GAAG;YAClE,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,KAAK,EAAE,gBAAgB,EAAE,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAA;QACjF,IAAI,IAAI,CAAC,OAAO,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC7C,IAAI,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;gBACjE,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,SAAS,EAAE,oBAAoB,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,CAAA;QAC1G,CAAC;QACD,IAAI,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;YACrE,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,QAAQ,EAAE,kBAAkB,EAAE,EAAE,OAAO,EAAE,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAA;IACnG,CAAC;IACD,MAAM,MAAM,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAA;IAC9B,IAAI,MAAM,KAAK,IAAI,IAAI,IAAI,CAAC,SAAS,KAAK,SAAS,IAAI,MAAM,GAAG,IAAI,CAAC,SAAS;QAC5E,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,YAAY,EAAE,sBAAsB,EAAE,EAAE,GAAG,EAAE,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC,CAAA;IACpG,IAAI,MAAM,KAAK,IAAI,IAAI,IAAI,CAAC,SAAS,KAAK,SAAS,IAAI,MAAM,GAAG,IAAI,CAAC,SAAS;QAC5E,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,YAAY,EAAE,sBAAsB,EAAE,EAAE,GAAG,EAAE,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC,CAAA;AACtG,CAAC,CAAA;AAED,MAAM,UAAU,YAAY,CAC1B,MAA2B,EAC3B,KAA2B;IAE3B,MAAM,MAAM,GAAe,EAAE,CAAA;IAC7B,MAAM,MAAM,GAAsB,EAAE,CAAA;IACpC,MAAM,OAAO,GAAG,IAAI,GAAG,EAAU,CAAA;IACjC,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;IACzC,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAA;IAE1F,IAAI,MAAM,CAAC,OAAO,KAAK,QAAQ;QAC7B,KAAK,MAAM,KAAK,IAAI,OAAO;YACzB,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,SAAS,EAAE,oBAAoB,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,CAAC,CAAA;IAE9F,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAE,CAAA;QAClC,MAAM,GAAG,GAAG,KAAK,CAAC,KAAK,CAAC,CAAA;QACxB,MAAM,SAAS,GAAG,IAAI,CAAC,QAAQ;YAC7B,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YACrF,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC;gBACV,CAAC,CAAC,EAAE;gBACJ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAA;QACX,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC;YACtB,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;gBAClB,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC,CAAA;gBAC/C,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;YACpB,CAAC;YACD,SAAQ;QACV,CAAC;QAED,MAAM,MAAM,GAAc,EAAE,CAAA;QAC5B,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;YACjC,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,MAAM,EAAE,QAAQ,EAAE,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC,CAAA;YACpE,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;gBACb,MAAM,CAAC,IAAI,CACT,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE,iBAAiB,EAAE;oBAChD,QAAQ,EAAE,IAAI,CAAC,IAAI,IAAI,MAAM;oBAC7B,MAAM,EAAE,OAAO,QAAQ;iBACxB,CAAC,CACH,CAAA;gBACD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;gBAClB,MAAK;YACP,CAAC;YACD,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;QACzB,CAAC;QACD,IAAI,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC;YAAE,SAAQ;QAChC,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA;QAChD,MAAM,CAAC,KAAK,CAAC,GAAG,KAAK,CAAA;QACrB,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAA;QAC5B,UAAU,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,CAAC,CAAA;QACtC,IAAI,MAAM,CAAC,MAAM,KAAK,MAAM;YAAE,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;IAClD,CAAC;IAED,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAE,CAAA;QAClC,IAAI,CAAC,IAAI,CAAC,QAAQ,IAAI,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC;YAAE,SAAQ;QACnF,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC,CAAC,CAAA;QAC3D,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACvF,CAAC;IACD,IAAI,MAAM,CAAC,QAAQ;QAAE,MAAM,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,MAA0B,EAAE,KAAK,CAAC,CAAC,CAAC,CAAA;IAEjG,MAAM,OAAO,GAAG;QACd,MAAM;QACN,WAAW,EAAE,aAAa,CAAC,MAAM,CAAC;QAClC,UAAU,EAAE,YAAY,CAAC,MAAM,CAAC;QAChC,OAAO;KACR,CAAA;IACD,OAAO,MAAM,CAAC,MAAM;QAClB,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAA0B,EAAE,GAAG,OAAO,EAAE;QAClE,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,MAAiB,EAAE,GAAG,OAAO,EAAE,CAAA;AAC5D,CAAC;AAyBD,MAAM,IAAI,GAAG,CAAC,IAAa,EAAE,KAAc,EAAW,EAAE;IACtD,IAAI,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,KAAK,CAAC;QAAE,OAAO,IAAI,CAAA;IACvC,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAC7C,OAAO,IAAI,CAAC,MAAM,KAAK,KAAK,CAAC,MAAM,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;IAC9F,IAAI,IAAI,IAAI,KAAK,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC3E,IAAI,IAAI,YAAY,IAAI,IAAI,KAAK,YAAY,IAAI;YAC/C,OAAO,IAAI,YAAY,IAAI,IAAI,KAAK,YAAY,IAAI,IAAI,IAAI,CAAC,OAAO,EAAE,KAAK,KAAK,CAAC,OAAO,EAAE,CAAA;QAC5F,IAAI,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,MAAM,CAAC,SAAS,IAAI,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,KAAK,MAAM,CAAC,SAAS;YACvG,OAAO,KAAK,CAAA;QACd,MAAM,WAAW,GAAG,MAAM,CAAC,OAAO,CAAC,IAAkB,CAAC,CAAA;QACtD,MAAM,WAAW,GAAG,KAAmB,CAAA;QACvC,OAAO,CACL,WAAW,CAAC,MAAM,KAAK,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,MAAM;YACtD,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,WAAW,EAAE,GAAG,CAAC,IAAI,IAAI,CAAC,IAAI,EAAE,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,CACpG,CAAA;IACH,CAAC;IACD,OAAO,KAAK,CAAA;AACd,CAAC,CAAA;AAED,MAAM,UAAU,UAAU,CACxB,MAA2B,EAC3B,OAAO,GAAyB,EAAE;IAElC,IAAI,QAAQ,GAAe,EAAE,GAAG,OAAO,EAAE,CAAA;IACzC,MAAM,WAAW,GAAG,MAAM,CAA6B,EAAE,GAAG,OAAO,EAAsB,CAAC,CAAA;IAC1F,MAAM,iBAAiB,GAAG,YAAY,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACvD,MAAM,WAAW,GAAG,MAAM,CAA6B,iBAAiB,CAAC,MAAM,CAAC,CAAA;IAChF,MAAM,YAAY,GAAG,MAAM,CAAoB,EAAE,CAAC,CAAA;IAClD,MAAM,cAAc,GAAG,MAAM,CAAC,KAAK,CAAC,CAAA;IACpC,MAAM,eAAe,GAAG,MAAM,CAAC,KAAK,CAAC,CAAA;IACrC,MAAM,UAAU,GAAG,QAAQ,CAAC,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,QAAQ,CAAC,CAAC,CAAA;IACjE,MAAM,UAAU,GAAG,QAAQ,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE,CAAC,MAAM,KAAK,CAAC,CAAC,CAAA;IAE7D,MAAM,QAAQ,GAAG,GAAkC,EAAE;QACnD,MAAM,MAAM,GAAG,YAAY,CAAC,MAAM,EAAE,WAAW,EAA0B,CAAC,CAAA;QAC1E,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;QAC9B,OAAO,MAAM,CAAA;IACf,CAAC,CAAA;IAED,OAAO;QACL,MAAM,EAAE,WAAW;QACnB,MAAM,EAAE,WAAW;QACnB,OAAO,EAAE,YAAY;QACrB,SAAS,EAAE,cAAc;QACzB,UAAU,EAAE,eAAe;QAC3B,KAAK,EAAE,UAAU;QACjB,KAAK,EAAE,UAAU;QACjB,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,GAAG,EAAE;YAC5B,KAAK,CAAC,GAAG,EAAE;gBACT,WAAW,CAAC,GAAG,CAAC,EAAE,GAAG,WAAW,CAAC,IAAI,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,CAAC,CAAA;gBAC1D,IAAI,OAAO,CAAC,KAAK,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC;oBACvD,YAAY,CAAC,GAAG,CAAC,CAAC,GAAG,YAAY,CAAC,IAAI,EAAE,EAAE,KAAK,CAAC,CAAC,CAAA;gBACnD,QAAQ,EAAE,CAAA;YACZ,CAAC,CAAC,CAAA;QACJ,CAAC;QACD,KAAK,CAAC,KAAK;YACT,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC;gBAAE,YAAY,CAAC,GAAG,CAAC,CAAC,GAAG,YAAY,CAAC,IAAI,EAAE,EAAE,KAAK,CAAC,CAAC,CAAA;YAC3F,QAAQ,EAAE,CAAA;QACZ,CAAC;QACD,MAAM,CAAC,KAAK,EAAE,WAAW,GAAG,IAAI;YAC9B,IAAI,WAAW,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC;gBAAE,OAAO,EAAE,CAAA;YAC5F,OAAO,WAAW,CAAC,IAAI,EAAE,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,KAAK,KAAK,CAAC,CAAA;QAClE,CAAC;QACD,UAAU,CAAC,WAAW,GAAG,IAAI;YAC3B,IAAI,WAAW,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE;gBAAE,OAAO,EAAE,CAAA;YACpD,OAAO,YAAY,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC,CAAA;QACzC,CAAC;QACD,QAAQ;QACR,iBAAiB,CAAC,MAAM;YACtB,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;gBAChC,CAAC,CAAE,MAAqC;gBACxC,CAAC,CAAE,MAAgD,CAAC,MAAM,CAAA;YAC5D,KAAK,CAAC,GAAG,EAAE;gBACT,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;gBACxB,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,CAAA;YAC/E,CAAC,CAAC,CAAA;QACJ,CAAC;QACD,KAAK,CAAC,IAAI;YACR,IAAI,IAAI;gBAAE,QAAQ,GAAG,EAAE,GAAG,IAAI,EAAE,CAAA;YAChC,MAAM,MAAM,GAAG,EAAE,GAAG,QAAQ,EAAE,CAAA;YAC9B,MAAM,MAAM,GAAG,YAAY,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;YAC3C,KAAK,CAAC,GAAG,EAAE;gBACT,WAAW,CAAC,GAAG,CAAC,MAA0B,CAAC,CAAA;gBAC3C,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;gBAC9B,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;gBACpB,cAAc,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;gBACzB,eAAe,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;YAC5B,CAAC,CAAC,CAAA;QACJ,CAAC;QACD,KAAK,CAAC,MAAM,CAAC,OAAO;YAClB,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;YACxB,MAAM,UAAU,GAAG,QAAQ,EAAE,CAAA;YAC7B,IAAI,CAAC,UAAU,CAAC,KAAK;gBAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE,CAAA;YACvD,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;YACzB,IAAI,CAAC;gBACH,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAA;YAC9D,CAAC;oBAAS,CAAC;gBACT,eAAe,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;YAC5B,CAAC;QACH,CAAC;QACD,OAAO;YACL,UAAU,CAAC,OAAO,EAAE,CAAA;YACpB,UAAU,CAAC,OAAO,EAAE,CAAA;QACtB,CAAC;KACF,CAAA;AACH,CAAC"}
package/dist/index.d.ts CHANGED
@@ -1,14 +1,16 @@
1
1
  export { signal, computed, effect, batch } from './signal.ts';
2
2
  export type { Signal, Computed } from './signal.ts';
3
- export { html, each, when, createRoot, hydrateRoot } from './render.ts';
4
- export type { TemplateResult, Renderable, Root } from './render.ts';
3
+ export { validationIssue, fieldErrorsOf, formErrorsOf, validationProblem, valuesFromFormData, defineFormSchema, validateForm, createForm, } from './form.ts';
4
+ export type { FormValues, FormFieldType, ValidationIssue, ValidationIssueInput, ValidationVerdict, FormFieldRule, FormSchema, FormValidationResult, FormValidationProblem, ReadonlySignal, FormController, } from './form.ts';
5
+ export { html, each, when, isResult, isEach, createRoot, hydrateRoot, DuplicateKeyError, EVENT_PREFIX, } from './render.ts';
6
+ export type { TemplateResult, EachResult, Renderable, Root } from './render.ts';
5
7
  export { mount, mountHydrated } from './mount.ts';
6
8
  export type { Mounted } from './mount.ts';
7
9
  export { countingHost, domHost, escapeHtml } from './host.ts';
8
10
  export type { Host, HostNode } from './host.ts';
9
- export { renderToString, HydrationMismatch, HOLE_MARKER, trustedMarkup, isMarkup } from './ssr.ts';
11
+ export { renderToString, HydrationMismatch, HOLE_MARKER, HOLE_OPEN, trustedMarkup, isMarkup } from './ssr.ts';
10
12
  export type { Markup } from './ssr.ts';
11
- export { renderIsland, hydrateIslands, createIslandManager, ISLAND_TAG } from './island.ts';
13
+ export { renderIsland, hydrateIslands, createIslandManager, IslandError, ISLAND_TAG } from './island.ts';
12
14
  export type { IslandView, IslandController, IslandFactory, IslandDefinition, IslandRegistry, IslandProps, HydratedIsland, IslandElement, IslandManager, } from './island.ts';
13
15
  export type { JSXChild, JSXComponent, IntrinsicProps } from './jsx-runtime.ts';
14
16
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../packages/ketjs-view/src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,aAAa,CAAA;AAC7D,YAAY,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AACnD,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AACvE,YAAY,EAAE,cAAc,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,aAAa,CAAA;AACnE,OAAO,EAAE,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA;AACjD,YAAY,EAAE,OAAO,EAAE,MAAM,YAAY,CAAA;AACzC,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAA;AAC7D,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AAC/C,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,WAAW,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAA;AAClG,YAAY,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AACtC,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,mBAAmB,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AAC3F,YAAY,EACV,UAAU,EACV,gBAAgB,EAChB,aAAa,EACb,gBAAgB,EAChB,cAAc,EACd,WAAW,EACX,cAAc,EACd,aAAa,EACb,aAAa,GACd,MAAM,aAAa,CAAA;AACpB,YAAY,EAAE,QAAQ,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../packages/ketjs-view/src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,aAAa,CAAA;AAC7D,YAAY,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AACnD,OAAO,EACL,eAAe,EACf,aAAa,EACb,YAAY,EACZ,iBAAiB,EACjB,kBAAkB,EAClB,gBAAgB,EAChB,YAAY,EACZ,UAAU,GACX,MAAM,WAAW,CAAA;AAClB,YAAY,EACV,UAAU,EACV,aAAa,EACb,eAAe,EACf,oBAAoB,EACpB,iBAAiB,EACjB,aAAa,EACb,UAAU,EACV,oBAAoB,EACpB,qBAAqB,EACrB,cAAc,EACd,cAAc,GACf,MAAM,WAAW,CAAA;AAClB,OAAO,EACL,IAAI,EACJ,IAAI,EACJ,IAAI,EACJ,QAAQ,EACR,MAAM,EACN,UAAU,EACV,WAAW,EACX,iBAAiB,EACjB,YAAY,GACb,MAAM,aAAa,CAAA;AACpB,YAAY,EAAE,cAAc,EAAE,UAAU,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,aAAa,CAAA;AAC/E,OAAO,EAAE,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA;AACjD,YAAY,EAAE,OAAO,EAAE,MAAM,YAAY,CAAA;AACzC,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAA;AAC7D,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AAC/C,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,WAAW,EAAE,SAAS,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAA;AAC7G,YAAY,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AACtC,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,mBAAmB,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AACxG,YAAY,EACV,UAAU,EACV,gBAAgB,EAChB,aAAa,EACb,gBAAgB,EAChB,cAAc,EACd,WAAW,EACX,cAAc,EACd,aAAa,EACb,aAAa,GACd,MAAM,aAAa,CAAA;AACpB,YAAY,EAAE,QAAQ,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA"}
package/dist/index.js CHANGED
@@ -1,7 +1,8 @@
1
1
  export { signal, computed, effect, batch } from './signal.js';
2
- export { html, each, when, createRoot, hydrateRoot } from './render.js';
2
+ export { validationIssue, fieldErrorsOf, formErrorsOf, validationProblem, valuesFromFormData, defineFormSchema, validateForm, createForm, } from './form.js';
3
+ export { html, each, when, isResult, isEach, createRoot, hydrateRoot, DuplicateKeyError, EVENT_PREFIX, } from './render.js';
3
4
  export { mount, mountHydrated } from './mount.js';
4
5
  export { countingHost, domHost, escapeHtml } from './host.js';
5
- export { renderToString, HydrationMismatch, HOLE_MARKER, trustedMarkup, isMarkup } from './ssr.js';
6
- export { renderIsland, hydrateIslands, createIslandManager, ISLAND_TAG } from './island.js';
6
+ export { renderToString, HydrationMismatch, HOLE_MARKER, HOLE_OPEN, trustedMarkup, isMarkup } from './ssr.js';
7
+ export { renderIsland, hydrateIslands, createIslandManager, IslandError, ISLAND_TAG } from './island.js';
7
8
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../packages/ketjs-view/src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,aAAa,CAAA;AAE7D,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AAEvE,OAAO,EAAE,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA;AAEjD,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAA;AAE7D,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,WAAW,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAA;AAElG,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,mBAAmB,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../packages/ketjs-view/src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,aAAa,CAAA;AAE7D,OAAO,EACL,eAAe,EACf,aAAa,EACb,YAAY,EACZ,iBAAiB,EACjB,kBAAkB,EAClB,gBAAgB,EAChB,YAAY,EACZ,UAAU,GACX,MAAM,WAAW,CAAA;AAclB,OAAO,EACL,IAAI,EACJ,IAAI,EACJ,IAAI,EACJ,QAAQ,EACR,MAAM,EACN,UAAU,EACV,WAAW,EACX,iBAAiB,EACjB,YAAY,GACb,MAAM,aAAa,CAAA;AAEpB,OAAO,EAAE,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA;AAEjD,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAA;AAE7D,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,WAAW,EAAE,SAAS,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAA;AAE7G,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,mBAAmB,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA"}
package/dist/island.js CHANGED
@@ -184,7 +184,7 @@ export function createIslandManager(host, registry, options = {}) {
184
184
  continue;
185
185
  throw new IslandError({
186
186
  code: 'E_UNKNOWN_ISLAND',
187
- message: `the page places island "${identity.name}", which no installed module provides`,
187
+ message: `the page places island "${identity.name}", which no composed module provides`,
188
188
  hint: `registered islands: ${Object.keys(registry).join(', ') || '(none)'}`,
189
189
  });
190
190
  }
@@ -1 +1 @@
1
- {"version":3,"file":"island.js","sourceRoot":"","sources":["../../../../../packages/ketjs-view/src/island.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"island.js","sourceRoot":"","sources":["../../../../../packages/ketjs-view/src/island.ts"],"names":[],"mappings":"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"}
package/dist/render.d.ts CHANGED
@@ -21,6 +21,23 @@ export declare function each<T>(items: Iterable<T>, keyOf: (item: T, i: number)
21
21
  export declare const isEach: (v: unknown) => v is EachResult;
22
22
  export declare function when(cond: unknown, render: () => TemplateResult, otherwise?: () => TemplateResult): TemplateResult | string;
23
23
  export declare const EVENT_PREFIX = "on:";
24
+ /**
25
+ * A key identifies one entry, so two entries cannot share one.
26
+ *
27
+ * The list is reconciled through a Map from key to instance. Two entries with the
28
+ * same key collide in it: one instance ends up standing for both, the other is
29
+ * dropped, and the positions the reordering pass reads are positions of a list
30
+ * that no longer exists. What reaches the screen is a row missing and the rest out
31
+ * of order — and because the Map keeps the collision, the next render is wrong too.
32
+ *
33
+ * None of that announces itself, which is why this does. A duplicate key is always
34
+ * a mistake in `keyOf`, never something the renderer can interpret.
35
+ */
36
+ export declare class DuplicateKeyError extends Error {
37
+ code: string;
38
+ hint: string;
39
+ constructor(key: unknown);
40
+ }
24
41
  export type Root = {
25
42
  render(result: TemplateResult): void;
26
43
  /** Detach behaviour; optionally remove the rendered nodes too. */
@@ -1 +1 @@
1
- {"version":3,"file":"render.d.ts","sourceRoot":"","sources":["../../../../packages/ketjs-view/src/render.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AAE/C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AAEtC,QAAA,MAAM,MAAM,eAAuB,CAAA;AACnC,QAAA,MAAM,IAAI,eAAqB,CAAA;AAE/B,MAAM,MAAM,cAAc,GAAG;IAAE,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC;IAAC,OAAO,EAAE,SAAS,MAAM,EAAE,CAAC;IAAC,MAAM,EAAE,OAAO,EAAE,CAAA;CAAE,CAAA;AAC9F,MAAM,MAAM,UAAU,GAAG;IACvB,CAAC,IAAI,CAAC,EAAE,IAAI,CAAA;IACZ,KAAK,EAAE,OAAO,EAAE,CAAA;IAChB,KAAK,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,OAAO,CAAA;IAC5C,MAAM,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,cAAc,CAAA;CACrD,CAAA;AACD,iFAAiF;AACjF,MAAM,MAAM,UAAU,GAAG,cAAc,GAAG,UAAU,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,GAAG,SAAS,CAAA;AAE5G,wBAAgB,IAAI,CAAC,OAAO,EAAE,oBAAoB,EAAE,GAAG,MAAM,EAAE,OAAO,EAAE,GAAG,cAAc,CAExF;AACD,eAAO,MAAM,QAAQ,MAAO,OAAO,KAAG,CAAC,IAAI,cAAmD,CAAA;AAE9F,wBAAgB,IAAI,CAAC,CAAC,EACpB,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,EAClB,KAAK,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,MAAM,KAAK,OAAO,EACtC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,MAAM,KAAK,cAAc,GAC7C,UAAU,CAOZ;AACD,eAAO,MAAM,MAAM,MAAO,OAAO,KAAG,CAAC,IAAI,UAAyC,CAAA;AAElF,wBAAgB,IAAI,CAClB,IAAI,EAAE,OAAO,EACb,MAAM,EAAE,MAAM,cAAc,EAC5B,SAAS,CAAC,EAAE,MAAM,cAAc,GAC/B,cAAc,GAAG,MAAM,CAEzB;AAWD,eAAO,MAAM,YAAY,QAAQ,CAAA;AA6VjC,MAAM,MAAM,IAAI,GAAG;IACjB,MAAM,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,CAAA;IACpC,kEAAkE;IAClE,OAAO,CAAC,OAAO,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,IAAI,CAAA;CAC9C,CAAA;AAED,wBAAgB,UAAU,CAAC,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,GAAG,IAAI,CAgBhE;AA8ID;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,EAAE,cAAc,GAAG,IAAI,CAuBzF"}
1
+ {"version":3,"file":"render.d.ts","sourceRoot":"","sources":["../../../../packages/ketjs-view/src/render.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AAE/C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AAEtC,QAAA,MAAM,MAAM,eAAuB,CAAA;AACnC,QAAA,MAAM,IAAI,eAAqB,CAAA;AAE/B,MAAM,MAAM,cAAc,GAAG;IAAE,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC;IAAC,OAAO,EAAE,SAAS,MAAM,EAAE,CAAC;IAAC,MAAM,EAAE,OAAO,EAAE,CAAA;CAAE,CAAA;AAC9F,MAAM,MAAM,UAAU,GAAG;IACvB,CAAC,IAAI,CAAC,EAAE,IAAI,CAAA;IACZ,KAAK,EAAE,OAAO,EAAE,CAAA;IAChB,KAAK,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,OAAO,CAAA;IAC5C,MAAM,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,cAAc,CAAA;CACrD,CAAA;AACD,iFAAiF;AACjF,MAAM,MAAM,UAAU,GAAG,cAAc,GAAG,UAAU,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,GAAG,SAAS,CAAA;AAE5G,wBAAgB,IAAI,CAAC,OAAO,EAAE,oBAAoB,EAAE,GAAG,MAAM,EAAE,OAAO,EAAE,GAAG,cAAc,CAExF;AACD,eAAO,MAAM,QAAQ,MAAO,OAAO,KAAG,CAAC,IAAI,cAAmD,CAAA;AAE9F,wBAAgB,IAAI,CAAC,CAAC,EACpB,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,EAClB,KAAK,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,MAAM,KAAK,OAAO,EACtC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,MAAM,KAAK,cAAc,GAC7C,UAAU,CAOZ;AACD,eAAO,MAAM,MAAM,MAAO,OAAO,KAAG,CAAC,IAAI,UAAyC,CAAA;AAElF,wBAAgB,IAAI,CAClB,IAAI,EAAE,OAAO,EACb,MAAM,EAAE,MAAM,cAAc,EAC5B,SAAS,CAAC,EAAE,MAAM,cAAc,GAC/B,cAAc,GAAG,MAAM,CAEzB;AAWD,eAAO,MAAM,YAAY,QAAQ,CAAA;AAoNjC;;;;;;;;;;;GAWG;AACH,qBAAa,iBAAkB,SAAQ,KAAK;IAC1C,IAAI,SAAoB;IACxB,IAAI,EAAE,MAAM,CAAA;IACZ,YAAY,GAAG,EAAE,OAAO,EAIvB;CACF;AAyJD,MAAM,MAAM,IAAI,GAAG;IACjB,MAAM,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,CAAA;IACpC,kEAAkE;IAClE,OAAO,CAAC,OAAO,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,IAAI,CAAA;CAC9C,CAAA;AAED,wBAAgB,UAAU,CAAC,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,GAAG,IAAI,CAgBhE;AAoJD;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,EAAE,cAAc,GAAG,IAAI,CAuBzF"}
package/dist/render.js CHANGED
@@ -168,6 +168,11 @@ class Part {
168
168
  return;
169
169
  }
170
170
  }
171
+ // Only here, never on the fast path above: identical keys in identical places
172
+ // are the ones the previous render already checked, so re-checking them would
173
+ // be the one allocation that path exists to avoid. A first render has no
174
+ // previous keys and so always arrives here.
175
+ assertUniqueKeys(nextKeys);
171
176
  // Where each surviving entry used to sit is carried on the instance itself, so
172
177
  // this pass needs no Map — and counting the reused ones tells us whether
173
178
  // anything was removed at all, so it needs no Set either. Both used to be built
@@ -223,6 +228,35 @@ class Part {
223
228
  this.keys = nextKeys;
224
229
  }
225
230
  }
231
+ /**
232
+ * A key identifies one entry, so two entries cannot share one.
233
+ *
234
+ * The list is reconciled through a Map from key to instance. Two entries with the
235
+ * same key collide in it: one instance ends up standing for both, the other is
236
+ * dropped, and the positions the reordering pass reads are positions of a list
237
+ * that no longer exists. What reaches the screen is a row missing and the rest out
238
+ * of order — and because the Map keeps the collision, the next render is wrong too.
239
+ *
240
+ * None of that announces itself, which is why this does. A duplicate key is always
241
+ * a mistake in `keyOf`, never something the renderer can interpret.
242
+ */
243
+ export class DuplicateKeyError extends Error {
244
+ code = 'E_DUPLICATE_KEY';
245
+ hint;
246
+ constructor(key) {
247
+ super(`each() received the key ${JSON.stringify(key) ?? String(key)} twice`);
248
+ this.name = 'DuplicateKeyError';
249
+ this.hint = 'keyOf must return a distinct value per item — an id rather than a field several items share';
250
+ }
251
+ }
252
+ function assertUniqueKeys(keys) {
253
+ const seen = new Set();
254
+ for (const key of keys) {
255
+ if (seen.has(key))
256
+ throw new DuplicateKeyError(key);
257
+ seen.add(key);
258
+ }
259
+ }
226
260
  // Longest increasing subsequence over positions; -1 marks a brand new entry and can
227
261
  // never be part of it. Returns a flag per index rather than a Set: the caller reads
228
262
  // it once per entry, which a typed array does without allocating a hash.
@@ -426,12 +460,19 @@ function hydrateInstance(host, strings, values, parent, cursor) {
426
460
  part.kind = 'each';
427
461
  part.keyed = new Map();
428
462
  part.keys = [];
463
+ // Adopting the server's nodes builds the same Map a client render does, so a
464
+ // duplicate key collides here exactly as it would there — and the page it
465
+ // corrupts is one the server had rendered correctly, since SSR walks the
466
+ // items in order and never consults a key.
429
467
  for (let i = 0; i < value.items.length; i++) {
430
468
  const item = value.items[i];
431
469
  const res = value.render(item, i);
432
470
  const r = hydrateInstance(host, res.strings, res.values, part.parent, c);
433
- part.keyed.set(value.keyOf(item, i), r.instance);
434
- part.keys.push(value.keyOf(item, i));
471
+ const key = value.keyOf(item, i);
472
+ if (part.keyed.has(key))
473
+ throw new DuplicateKeyError(key);
474
+ part.keyed.set(key, r.instance);
475
+ part.keys.push(key);
435
476
  c = r.cursor;
436
477
  }
437
478
  return;
@@ -1 +1 @@
1
- {"version":3,"file":"render.js","sourceRoot":"","sources":["../../../../../packages/ketjs-view/src/render.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"render.js","sourceRoot":"","sources":["../../../../../packages/ketjs-view/src/render.ts"],"names":[],"mappings":"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"}
package/dist/ssr.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"ssr.d.ts","sourceRoot":"","sources":["../../../../packages/ketjs-view/src/ssr.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAc,cAAc,EAAE,MAAM,aAAa,CAAA;AAG7D,eAAO,MAAM,WAAW,MAAM,CAAA;AAC9B,eAAO,MAAM,SAAS,OAAO,CAAA;AAkB7B,wBAAgB,cAAc,CAAC,MAAM,EAAE,cAAc,GAAG,MAAM,CAI7D;AAED;;;;;;;;;;GAUG;AACH,OAAO,CAAC,MAAM,MAAM,EAAE,OAAO,MAAM,CAAA;AACnC,MAAM,MAAM,MAAM,GAAG;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,EAAE,IAAI,CAAA;CAAE,CAAA;AACvE,eAAO,MAAM,QAAQ,MAAO,OAAO,KAAG,CAAC,IAAI,MAId,CAAA;AAE7B,0EAA0E;AAC1E,eAAO,MAAM,aAAa,SAAU,MAAM,KAAG,MAA6D,CAAA;AA4F1G,qBAAa,iBAAkB,SAAQ,KAAK;IAC1C,IAAI,SAAyB;IAC7B,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;IACnB,YAAY,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAMtD;CACF"}
1
+ {"version":3,"file":"ssr.d.ts","sourceRoot":"","sources":["../../../../packages/ketjs-view/src/ssr.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAc,cAAc,EAAE,MAAM,aAAa,CAAA;AAG7D,eAAO,MAAM,WAAW,MAAM,CAAA;AAC9B,eAAO,MAAM,SAAS,OAAO,CAAA;AAkB7B,wBAAgB,cAAc,CAAC,MAAM,EAAE,cAAc,GAAG,MAAM,CAI7D;AAED;;;;;;;;;;GAUG;AACH,OAAO,CAAC,MAAM,MAAM,EAAE,OAAO,MAAM,CAAA;AACnC,MAAM,MAAM,MAAM,GAAG;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,EAAE,IAAI,CAAA;CAAE,CAAA;AACvE,eAAO,MAAM,QAAQ,MAAO,OAAO,KAAG,CAAC,IAAI,MAId,CAAA;AAE7B,0EAA0E;AAC1E,eAAO,MAAM,aAAa,SAAU,MAAM,KAAG,MAA6D,CAAA;AA8F1G,qBAAa,iBAAkB,SAAQ,KAAK;IAC1C,IAAI,SAAyB;IAC7B,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;IACnB,YAAY,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAMtD;CACF"}
package/dist/ssr.js CHANGED
@@ -8,7 +8,7 @@
8
8
  // Only holes need markers. Everything else is described by the template itself, so
9
9
  // the walk knows exactly how many nodes each construct occupies.
10
10
  import { templateFor } from './template.js';
11
- import { isResult, isEach } from './render.js';
11
+ import { EVENT_PREFIX, isResult, isEach } from './render.js';
12
12
  import { escapeHtml } from './host.js';
13
13
  export const HOLE_MARKER = 'k';
14
14
  export const HOLE_OPEN = 'k[';
@@ -93,8 +93,10 @@ function writeResult(result, out) {
93
93
  out.push(`<${el.tag}`);
94
94
  for (const a of el.attrs) {
95
95
  // on:* is behaviour, not markup. It is attached during hydration and must
96
- // never appear in the HTML, where it would be a dead string at best.
97
- if (a.name.startsWith('on:'))
96
+ // never appear in the HTML, where it would be a dead string at best. The
97
+ // prefix is the renderer's constant, not a second copy of it: the two walks
98
+ // have to agree on what counts as an event or SSR emits what hydration binds.
99
+ if (a.name.startsWith(EVENT_PREFIX))
98
100
  continue;
99
101
  const v = a.hole != null ? result.values[a.hole] : a.value;
100
102
  if (v == null || v === false)
package/dist/ssr.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"ssr.js","sourceRoot":"","sources":["../../../../../packages/ketjs-view/src/ssr.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ssr.js","sourceRoot":"","sources":["../../../../../packages/ketjs-view/src/ssr.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"template.d.ts","sourceRoot":"","sources":["../../../../packages/ketjs-view/src/template.ts"],"names":[],"mappings":"AAIA,MAAM,MAAM,OAAO,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAA;AACrD,MAAM,MAAM,OAAO,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAA;AACrD,MAAM,MAAM,OAAO,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,CAAA;AACrE,MAAM,MAAM,KAAK,GAAG;IAAE,IAAI,EAAE,IAAI,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,OAAO,EAAE,CAAC;IAAC,QAAQ,EAAE,OAAO,EAAE,CAAA;CAAE,CAAA;AACtF,MAAM,MAAM,OAAO,GAAG,OAAO,GAAG,OAAO,GAAG,KAAK,CAAA;AAC/C,MAAM,MAAM,OAAO,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,OAAO,EAAE,CAAA;CAAE,CAAA;AAoB3D,wBAAgB,aAAa,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,GAAG,OAAO,CAyFjE;AAGD,wBAAgB,WAAW,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,GAAG,OAAO,CAO/D"}
1
+ {"version":3,"file":"template.d.ts","sourceRoot":"","sources":["../../../../packages/ketjs-view/src/template.ts"],"names":[],"mappings":"AAIA,MAAM,MAAM,OAAO,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAA;AACrD,MAAM,MAAM,OAAO,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAA;AACrD,MAAM,MAAM,OAAO,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,CAAA;AACrE,MAAM,MAAM,KAAK,GAAG;IAAE,IAAI,EAAE,IAAI,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,OAAO,EAAE,CAAC;IAAC,QAAQ,EAAE,OAAO,EAAE,CAAA;CAAE,CAAA;AACtF,MAAM,MAAM,OAAO,GAAG,OAAO,GAAG,OAAO,GAAG,KAAK,CAAA;AAC/C,MAAM,MAAM,OAAO,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,OAAO,EAAE,CAAA;CAAE,CAAA;AA6C3D,wBAAgB,aAAa,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,GAAG,OAAO,CA2GjE;AAGD,wBAAgB,WAAW,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,GAAG,OAAO,CAO/D"}
package/dist/template.js CHANGED
@@ -3,6 +3,29 @@
3
3
  // site for the life of the process, and every later render only touches holes.
4
4
  const MARK = ''; // OBJECT REPLACEMENT CHARACTER: never appears in real markup
5
5
  const holeRe = new RegExp(MARK + '(\\d+)' + MARK);
6
+ /**
7
+ * A value is a hole, or it is nothing.
8
+ *
9
+ * A hole substitutes for one whole thing: a child, or the entire value of one
10
+ * attribute. Anywhere else, the marker is not a hole the renderer knows how to
11
+ * fill — it is a character in a static string, and it used to reach the page as
12
+ * one. `class="a ${x}"` rendered `class="a 0"`, silently, on the server and in
13
+ * the browser alike.
14
+ *
15
+ * Parsing runs once per call site for the life of the process, so refusing here
16
+ * costs nothing at render time and turns a bug you have to see to believe into one
17
+ * the first render names.
18
+ */
19
+ class TemplateError extends Error {
20
+ code = 'E_TEMPLATE_HOLE';
21
+ hint;
22
+ constructor(message, hint) {
23
+ super(message);
24
+ this.name = 'TemplateError';
25
+ this.hint = hint;
26
+ }
27
+ }
28
+ const hasMark = (value) => value.includes(MARK);
6
29
  const VOID = new Set([
7
30
  'area',
8
31
  'base',
@@ -62,6 +85,9 @@ export function parseTemplate(strings) {
62
85
  while (j < src.length && /[^\s/>]/.test(src[j]))
63
86
  j++;
64
87
  const tag = src.slice(lt + 1, j);
88
+ if (hasMark(tag)) {
89
+ throw new TemplateError('an element name cannot be a hole', 'the tag decides the shape of the tree, which is fixed per call site — branch with when() and write each tag out');
90
+ }
65
91
  const attrs = [];
66
92
  for (;;) {
67
93
  while (j < src.length && /\s/.test(src[j]))
@@ -72,6 +98,9 @@ export function parseTemplate(strings) {
72
98
  while (k < src.length && /[^\s=/>]/.test(src[k]))
73
99
  k++;
74
100
  const name = src.slice(j, k);
101
+ if (hasMark(name)) {
102
+ throw new TemplateError('an attribute name cannot be a hole', 'a hole fills an attribute value; to add an attribute conditionally, pass null as its value');
103
+ }
75
104
  if (!name) {
76
105
  j = k + 1;
77
106
  continue;
@@ -101,7 +130,10 @@ export function parseTemplate(strings) {
101
130
  k = e;
102
131
  }
103
132
  const hm = holeRe.exec(raw);
104
- if (hm && hm[0] === raw)
133
+ if (hm && hm[0] !== raw) {
134
+ throw new TemplateError(`an attribute takes a whole value or none: "${name}" mixes a hole with static text`, `write ${name}=\${...} and build the whole value in the expression, not "text \${...}"`);
135
+ }
136
+ if (hm)
105
137
  attrs.push({ name, hole: Number(hm[1]) });
106
138
  else
107
139
  attrs.push({ name, value: raw });
@@ -1 +1 @@
1
- {"version":3,"file":"template.js","sourceRoot":"","sources":["../../../../../packages/ketjs-view/src/template.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"template.js","sourceRoot":"","sources":["../../../../../packages/ketjs-view/src/template.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ketvietlab/ketjs-view",
3
- "version": "0.1.2",
3
+ "version": "0.1.5",
4
4
  "description": "Ket view layer — signals, surgical DOM rendering, SSR, hydration and islands. Browser-safe, zero dependencies.",
5
5
  "type": "module",
6
6
  "license": "MIT",