mlform 0.1.16 → 0.1.19
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/README.md +2 -2
- package/dist/{builtins-DQTX_dwn.js → builtins-6Cv46IXP.js} +99 -105
- package/dist/mlform/builtins.mjs +2 -2
- package/dist/mlform/kit.mjs +9 -7
- package/dist/mlform/primitives.mjs +1 -1
- package/dist/mlform/runtime.mjs +2 -2
- package/dist/mlform/schema.mjs +2 -2
- package/dist/mlform/transport.mjs +1 -1
- package/dist/{primitives-BcXt2QWI.js → primitives-BNBNG2Aa.js} +315 -262
- package/dist/{runtime-BxMSso-p.js → runtime-Eo_q4pgg.js} +355 -362
- package/dist/{schema-D9V7-AkU.js → schema-CNKKJZRx.js} +22 -18
- package/dist/{transport-BG3HPc3-.js → transport-Cloa_erk.js} +8 -8
- package/dist/types/src/builtins/constants.d.ts +0 -4
- package/dist/types/src/builtins/definitions/shared.d.ts +0 -1
- package/dist/types/src/kit/index.d.ts +1 -1
- package/dist/types/src/kit/kinds/define-report-kind.d.ts +7 -1
- package/dist/types/src/kit/kinds/index.d.ts +1 -1
- package/dist/types/src/primitives/components/mounted-report.d.ts +15 -0
- package/dist/types/src/primitives/constants.d.ts +1 -0
- package/dist/types/src/primitives/controller-types.d.ts +3 -3
- package/dist/types/src/schema/mapped-to.d.ts +3 -10
- package/dist/types/src/schema/types/report.d.ts +1 -1
- package/dist/types/src/schema/types/submit.d.ts +2 -2
- package/dist/types/src/transport/types/core.d.ts +2 -2
- package/package.json +3 -2
|
@@ -2,24 +2,28 @@
|
|
|
2
2
|
var e = (e) => e.trim().toLowerCase().normalize("NFD").replace(/[\u0300-\u036f]/g, "").replace(/[^a-z0-9]+/g, "-").replace(/^-+|-+$/g, "") || "item", t = (e, t) => {
|
|
3
3
|
if (typeof e == "string" || typeof e == "number") return e;
|
|
4
4
|
if (e) return (t ? e[t] : void 0) ?? e.default ?? void 0;
|
|
5
|
-
}, n = (e) => String(e), r =
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
5
|
+
}, n = (e) => String(e), r = (e, r) => {
|
|
6
|
+
let i = t(e, r);
|
|
7
|
+
if (r !== void 0 || typeof e != "object" || !e) return i === void 0 ? [] : [i];
|
|
8
|
+
let a = /* @__PURE__ */ new Set();
|
|
9
|
+
return Object.values(e).filter((e) => {
|
|
10
|
+
if (typeof e != "string" && typeof e != "number") return !1;
|
|
11
|
+
let t = n(e);
|
|
12
|
+
return a.has(t) ? !1 : (a.add(t), !0);
|
|
13
|
+
});
|
|
9
14
|
}, i = (e, t) => {
|
|
10
|
-
let r = t.reports
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
if (
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
let
|
|
19
|
-
if (
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
if (t !== void 0) return a.onAlias?.(e, o), t;
|
|
15
|
+
let r = n(e), i = t.reports.filter((e) => typeof e == "object" && !!e && !Array.isArray(e) && n(e.mappedTo ?? "") === r);
|
|
16
|
+
if (i.length > 1) throw Error(`Duplicate report payload for mappedTo "${r}".`);
|
|
17
|
+
let a = i[0];
|
|
18
|
+
if (!a) return;
|
|
19
|
+
if ("payload" in a) return a.payload;
|
|
20
|
+
let { id: o, kind: s, mappedTo: c, ...l } = a;
|
|
21
|
+
return l;
|
|
22
|
+
}, a = (e, t) => {
|
|
23
|
+
let n = r(e.mappedTo, t.backend);
|
|
24
|
+
if (n.length !== 0) for (let e of n) {
|
|
25
|
+
let n = i(e, t);
|
|
26
|
+
if (n !== void 0) return n;
|
|
23
27
|
}
|
|
24
28
|
}, o = class extends Error {
|
|
25
29
|
constructor(e) {
|
|
@@ -166,4 +170,4 @@ var e = (e) => e.trim().toLowerCase().normalize("NFD").replace(/[\u0300-\u036f]/
|
|
|
166
170
|
signal: t.signal
|
|
167
171
|
});
|
|
168
172
|
//#endregion
|
|
169
|
-
export { v as a, l as c,
|
|
173
|
+
export { v as a, l as c, a as d, r as f, b as i, u as l, e as m, C as n, o, t as p, w as r, c as s, T as t, n as u };
|
|
@@ -439,7 +439,7 @@ var e = {
|
|
|
439
439
|
});
|
|
440
440
|
return e.stream(n);
|
|
441
441
|
}, V = (e) => y(e) ? {
|
|
442
|
-
reports:
|
|
442
|
+
reports: Array.isArray(e.reports) ? e.reports : void 0,
|
|
443
443
|
meta: y(e.meta) ? e.meta : void 0,
|
|
444
444
|
raw: "raw" in e ? e.raw : e
|
|
445
445
|
} : { raw: e }, H = (e) => y(e) && typeof e.type == "string" ? e : {
|
|
@@ -609,11 +609,11 @@ var e = {
|
|
|
609
609
|
error: e.error instanceof Error ? e.error.message : String(e.error)
|
|
610
610
|
}))), n;
|
|
611
611
|
}, he = (e) => e.some((e) => e.id !== void 0) ? Object.fromEntries(e.map((e) => [e.id ?? String(e.index), e.response.raw])) : e.map((e) => e.response.raw), Y = (e, t) => {
|
|
612
|
-
let n =
|
|
613
|
-
for (let t of e) for (let
|
|
614
|
-
let o = t.id ?? `transport[${t.index}]`,
|
|
615
|
-
if (
|
|
616
|
-
i.set(
|
|
612
|
+
let n = [], i = /* @__PURE__ */ new Map();
|
|
613
|
+
for (let t of e) for (let e of t.response.reports ?? []) {
|
|
614
|
+
let a = typeof e == "object" && e ? e : {}, o = "mappedTo" in a ? String(a.mappedTo) : String(n.length), s = t.id ?? `transport[${t.index}]`, c = i.get(o);
|
|
615
|
+
if (c) throw Error(r.duplicateFanoutReport(o, c, s));
|
|
616
|
+
i.set(o, s), n.push(e);
|
|
617
617
|
}
|
|
618
618
|
return {
|
|
619
619
|
reports: n,
|
|
@@ -1805,7 +1805,7 @@ var e = {
|
|
|
1805
1805
|
return b(async (t) => {
|
|
1806
1806
|
let r = await n(t);
|
|
1807
1807
|
if (r.length === 0) return {
|
|
1808
|
-
reports:
|
|
1808
|
+
reports: [],
|
|
1809
1809
|
meta: {},
|
|
1810
1810
|
raw: null
|
|
1811
1811
|
};
|
|
@@ -1843,7 +1843,7 @@ var e = {
|
|
|
1843
1843
|
yield {
|
|
1844
1844
|
type: "result",
|
|
1845
1845
|
result: {
|
|
1846
|
-
reports:
|
|
1846
|
+
reports: [],
|
|
1847
1847
|
meta: {},
|
|
1848
1848
|
raw: null
|
|
1849
1849
|
}
|
|
@@ -2,10 +2,6 @@ export declare const builtinReportKinds: {
|
|
|
2
2
|
readonly classifier: "classifier";
|
|
3
3
|
readonly regressor: "regressor";
|
|
4
4
|
};
|
|
5
|
-
export declare const builtinLegacyOutputTypes: {
|
|
6
|
-
readonly classifier: "classifier";
|
|
7
|
-
readonly regressor: "regressor";
|
|
8
|
-
};
|
|
9
5
|
export declare const builtinFieldKinds: {
|
|
10
6
|
readonly text: "text";
|
|
11
7
|
readonly number: "number";
|
|
@@ -39,7 +39,6 @@ export declare const optionSchema: z.ZodUnion<readonly [z.ZodString, z.ZodObject
|
|
|
39
39
|
label: z.ZodString;
|
|
40
40
|
value: z.ZodString;
|
|
41
41
|
}, z.core.$strip>]>;
|
|
42
|
-
export declare const resolveLegacyOutput: (result: SubmitResult, kind: string) => unknown;
|
|
43
42
|
export declare const makeFieldDescriptor: (component: string, config: NormalizedFieldConfig, valueExtras: Record<string, unknown>) => {
|
|
44
43
|
component: string;
|
|
45
44
|
props: {
|
|
@@ -4,5 +4,5 @@ export { mountForm, unmountForm } from './mount-form';
|
|
|
4
4
|
export { createFormView } from './view';
|
|
5
5
|
export { defineFieldKind, defineReportKind } from './kinds';
|
|
6
6
|
export { registerDefinedFieldKind, registerDefinedReportKind } from './kinds';
|
|
7
|
-
export type { DeclarativeFieldKind, DeclarativeReportKind, DefinedFieldKind, DefinedReportKind, ReportRenderSpec, ReportRenderSpecContext, } from './kinds';
|
|
7
|
+
export type { DeclarativeFieldKind, DeclarativeReportKind, DefinedFieldKind, DefinedReportKind, ReportMountCleanup, ReportMountContext, ReportRenderSpec, ReportRenderSpecContext, } from './kinds';
|
|
8
8
|
export type { CreateFormViewOptions, DisclosureState, FormLayoutConfig, FormLayoutFieldNode, FormLayoutGroupNode, FormLayoutNode, FormLayoutReportNode, FormLayoutSectionNode, FormViewController, FormViewFieldItem, FormViewReportItem, FormViewSnapshot, FormViewState, KitDesignSystemSnapshot, KitLabels, MountFormOptions, MountedForm, PanelState, ResolvedFormLayout, ResolvedFormLayoutFieldNode, ResolvedFormLayoutGroupNode, ResolvedFormLayoutNode, ResolvedFormLayoutReportNode, ResolvedFormLayoutSectionNode, ResolvedTabLayout, ResolvedTabsLayout, TabsLayoutConfig, TabsState, TabLayoutConfig, WizardLayoutConfig, WizardState, WizardStepConfig, } from './types';
|
|
@@ -9,9 +9,15 @@ export interface ReportRenderSpecContext<TConfig extends ReportConfig = ReportCo
|
|
|
9
9
|
payload: TPayload;
|
|
10
10
|
result: SubmitResult | null;
|
|
11
11
|
}
|
|
12
|
+
export type ReportMountCleanup = () => void;
|
|
13
|
+
export type ReportMountContext<TConfig extends ReportConfig = ReportConfig, TPayload = unknown> = ReportRenderSpecContext<TConfig, TPayload> & {
|
|
14
|
+
element: HTMLElement;
|
|
15
|
+
signal: AbortSignal;
|
|
16
|
+
};
|
|
12
17
|
export interface ReportRenderSpec<TConfig extends ReportConfig = ReportConfig, TPayload = unknown> {
|
|
13
18
|
summary?: (context: ReportRenderSpecContext<TConfig, TPayload>) => DescriptorSummary | undefined;
|
|
14
|
-
content
|
|
19
|
+
content?: (context: ReportRenderSpecContext<TConfig, TPayload>) => DescriptorContent;
|
|
20
|
+
mount?: (context: ReportMountContext<TConfig, TPayload>) => ReportMountCleanup | void;
|
|
15
21
|
}
|
|
16
22
|
export interface DeclarativeReportKind<TConfig extends ReportConfig = ReportConfig, TPayload = unknown> {
|
|
17
23
|
kind: string;
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
export { defineFieldKind, type DeclarativeFieldKind, type DefinedFieldKind, } from './define-field-kind';
|
|
2
|
-
export { defineReportKind, type DeclarativeReportKind, type DefinedReportKind, type ReportRenderSpec, type ReportRenderSpecContext, } from './define-report-kind';
|
|
2
|
+
export { defineReportKind, type DeclarativeReportKind, type DefinedReportKind, type ReportMountCleanup, type ReportMountContext, type ReportRenderSpec, type ReportRenderSpecContext, } from './define-report-kind';
|
|
3
3
|
export { registerDefinedFieldKind, registerDefinedReportKind } from './register-kind';
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { PrimitiveReportElement } from '../base-report-element';
|
|
2
|
+
import { primitiveTagNames } from '../constants';
|
|
3
|
+
export declare class PrimitiveMountedReportElement extends PrimitiveReportElement {
|
|
4
|
+
#private;
|
|
5
|
+
static styles: import('lit').CSSResultGroup[];
|
|
6
|
+
private accessor mountHost;
|
|
7
|
+
protected updated(): void;
|
|
8
|
+
disconnectedCallback(): void;
|
|
9
|
+
render(): import('lit').TemplateResult<1>;
|
|
10
|
+
}
|
|
11
|
+
declare global {
|
|
12
|
+
interface HTMLElementTagNameMap {
|
|
13
|
+
[primitiveTagNames.mountedReport]: PrimitiveMountedReportElement;
|
|
14
|
+
}
|
|
15
|
+
}
|
|
@@ -8,6 +8,7 @@ export declare const primitiveTagNames: {
|
|
|
8
8
|
readonly reportFrame: "mlf-report-frame";
|
|
9
9
|
readonly declarativeField: "mlf-declarative-field";
|
|
10
10
|
readonly declarativeReport: "mlf-declarative-report";
|
|
11
|
+
readonly mountedReport: "mlf-mounted-report";
|
|
11
12
|
readonly textField: "mlf-text-field";
|
|
12
13
|
readonly numberField: "mlf-number-field";
|
|
13
14
|
readonly booleanField: "mlf-boolean-field";
|
|
@@ -25,7 +25,7 @@ export interface PrimitiveSubmitResult {
|
|
|
25
25
|
fieldValues: Record<string, unknown>;
|
|
26
26
|
serializedValues: Record<string, unknown>;
|
|
27
27
|
serializedFieldValues: Record<string, unknown>;
|
|
28
|
-
reports:
|
|
28
|
+
reports: readonly unknown[];
|
|
29
29
|
reportContexts?: Record<string, PrimitiveReportContext>;
|
|
30
30
|
reportStates: Record<string, unknown>;
|
|
31
31
|
meta: Record<string, unknown>;
|
|
@@ -58,7 +58,7 @@ export interface PrimitiveReportContext {
|
|
|
58
58
|
backend?: string;
|
|
59
59
|
displayValues: Record<string, unknown>;
|
|
60
60
|
modelValues: Record<string, unknown>;
|
|
61
|
-
reports:
|
|
61
|
+
reports: readonly unknown[];
|
|
62
62
|
meta: Record<string, unknown>;
|
|
63
63
|
raw: unknown;
|
|
64
64
|
}
|
|
@@ -127,7 +127,7 @@ export interface PrimitiveReportRequest {
|
|
|
127
127
|
fieldValues: Record<string, unknown>;
|
|
128
128
|
serializedValues: Record<string, unknown>;
|
|
129
129
|
serializedFieldValues: Record<string, unknown>;
|
|
130
|
-
reports:
|
|
130
|
+
reports: readonly unknown[];
|
|
131
131
|
reportContext?: PrimitiveReportContext;
|
|
132
132
|
reportContexts?: Record<string, PrimitiveReportContext>;
|
|
133
133
|
meta: Record<string, unknown>;
|
|
@@ -1,19 +1,12 @@
|
|
|
1
1
|
export type MappedToTarget = string | number;
|
|
2
2
|
export type MappedTo = MappedToTarget | Record<string, MappedToTarget | null | undefined>;
|
|
3
|
-
export type ReportPayloadAliasOptions = {
|
|
4
|
-
aliases?: readonly MappedToTarget[];
|
|
5
|
-
onAlias?: (alias: MappedToTarget, target: MappedToTarget) => void;
|
|
6
|
-
};
|
|
7
3
|
export declare const resolveMappedTo: (mappedTo: MappedTo | undefined, backend: string | undefined) => MappedToTarget | undefined;
|
|
8
4
|
export declare const mappedToKey: (target: MappedToTarget) => string;
|
|
9
|
-
export declare
|
|
10
|
-
constructor();
|
|
11
|
-
}
|
|
5
|
+
export declare const resolveMappedTargets: (mappedTo: MappedTo | undefined, backend: string | undefined) => MappedToTarget[];
|
|
12
6
|
export declare const resolveMappedReportPayload: (report: {
|
|
13
7
|
id?: string;
|
|
14
8
|
mappedTo?: MappedTo;
|
|
15
9
|
}, result: {
|
|
16
10
|
backend?: string;
|
|
17
|
-
reports:
|
|
18
|
-
|
|
19
|
-
}, options?: ReportPayloadAliasOptions) => unknown;
|
|
11
|
+
reports: readonly unknown[];
|
|
12
|
+
}) => unknown;
|
|
@@ -43,7 +43,7 @@ export interface ReportFetchRequest {
|
|
|
43
43
|
fieldValues: Record<string, unknown>;
|
|
44
44
|
serializedValues: Record<string, unknown>;
|
|
45
45
|
serializedFieldValues: Record<string, unknown>;
|
|
46
|
-
reports:
|
|
46
|
+
reports: readonly unknown[];
|
|
47
47
|
reportContext?: ReportContext;
|
|
48
48
|
reportContexts?: Record<string, ReportContext>;
|
|
49
49
|
meta: Record<string, unknown>;
|
|
@@ -20,7 +20,7 @@ export interface ReportContext {
|
|
|
20
20
|
backend?: string;
|
|
21
21
|
displayValues: Record<string, unknown>;
|
|
22
22
|
modelValues: Record<string, unknown>;
|
|
23
|
-
reports:
|
|
23
|
+
reports: readonly unknown[];
|
|
24
24
|
meta: Record<string, unknown>;
|
|
25
25
|
raw: unknown;
|
|
26
26
|
}
|
|
@@ -33,7 +33,7 @@ export interface SubmitResult<TReportState = unknown> {
|
|
|
33
33
|
fieldValues: Record<string, unknown>;
|
|
34
34
|
serializedValues: Record<string, unknown>;
|
|
35
35
|
serializedFieldValues: Record<string, unknown>;
|
|
36
|
-
reports:
|
|
36
|
+
reports: readonly unknown[];
|
|
37
37
|
reportContexts?: Record<string, ReportContext>;
|
|
38
38
|
reportStates: Record<string, TReportState>;
|
|
39
39
|
meta: Record<string, unknown>;
|
|
@@ -44,7 +44,7 @@ export interface SubmitRequest<TField extends Record<string, unknown> = Record<s
|
|
|
44
44
|
signal?: AbortSignal;
|
|
45
45
|
}
|
|
46
46
|
export interface TransportResponse {
|
|
47
|
-
reports?:
|
|
47
|
+
reports?: readonly unknown[];
|
|
48
48
|
meta?: Record<string, unknown>;
|
|
49
49
|
raw?: unknown;
|
|
50
50
|
}
|
|
@@ -57,7 +57,7 @@ export interface SubmitResult<TReportState extends Record<string, unknown> = Rec
|
|
|
57
57
|
fieldValues: Record<string, unknown>;
|
|
58
58
|
serializedValues: Record<string, unknown>;
|
|
59
59
|
serializedFieldValues: Record<string, unknown>;
|
|
60
|
-
reports:
|
|
60
|
+
reports: readonly unknown[];
|
|
61
61
|
reportStates: Record<string, TReportState>;
|
|
62
62
|
meta: Record<string, unknown>;
|
|
63
63
|
raw: unknown;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "mlform",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.19",
|
|
4
4
|
"private": false,
|
|
5
5
|
"description": "Composable form generation utilities for machine learning backend integration",
|
|
6
6
|
"keywords": [
|
|
@@ -89,8 +89,9 @@
|
|
|
89
89
|
"zod": "4.4.3"
|
|
90
90
|
},
|
|
91
91
|
"devDependencies": {
|
|
92
|
-
"@types/node": "^
|
|
92
|
+
"@types/node": "^26.0.0",
|
|
93
93
|
"jsdom": "^29.1.1",
|
|
94
|
+
"playwright": "^1.61.0",
|
|
94
95
|
"typescript": "~6.0.3",
|
|
95
96
|
"vite": "npm:@voidzero-dev/vite-plus-core@latest",
|
|
96
97
|
"vite-plugin-dts": "^5.0.2",
|