@llui/dom 0.0.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.
- package/LICENSE +21 -0
- package/README.md +15 -0
- package/dist/addressed.d.ts +16 -0
- package/dist/addressed.d.ts.map +1 -0
- package/dist/addressed.js +40 -0
- package/dist/addressed.js.map +1 -0
- package/dist/binding.d.ts +18 -0
- package/dist/binding.d.ts.map +1 -0
- package/dist/binding.js +62 -0
- package/dist/binding.js.map +1 -0
- package/dist/chain-update.d.ts +7 -0
- package/dist/chain-update.d.ts.map +1 -0
- package/dist/chain-update.js +16 -0
- package/dist/chain-update.js.map +1 -0
- package/dist/component.d.ts +3 -0
- package/dist/component.d.ts.map +1 -0
- package/dist/component.js +4 -0
- package/dist/component.js.map +1 -0
- package/dist/devtools.d.ts +113 -0
- package/dist/devtools.d.ts.map +1 -0
- package/dist/devtools.js +390 -0
- package/dist/devtools.js.map +1 -0
- package/dist/el-split.d.ts +3 -0
- package/dist/el-split.d.ts.map +1 -0
- package/dist/el-split.js +54 -0
- package/dist/el-split.js.map +1 -0
- package/dist/el-template.d.ts +17 -0
- package/dist/el-template.d.ts.map +1 -0
- package/dist/el-template.js +64 -0
- package/dist/el-template.js.map +1 -0
- package/dist/elements.d.ts +80 -0
- package/dist/elements.d.ts.map +1 -0
- package/dist/elements.js +234 -0
- package/dist/elements.js.map +1 -0
- package/dist/form.d.ts +30 -0
- package/dist/form.d.ts.map +1 -0
- package/dist/form.js +12 -0
- package/dist/form.js.map +1 -0
- package/dist/hmr.d.ts +20 -0
- package/dist/hmr.d.ts.map +1 -0
- package/dist/hmr.js +98 -0
- package/dist/hmr.js.map +1 -0
- package/dist/hydrate.d.ts +29 -0
- package/dist/hydrate.d.ts.map +1 -0
- package/dist/hydrate.js +96 -0
- package/dist/hydrate.js.map +1 -0
- package/dist/index.d.ts +28 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +34 -0
- package/dist/index.js.map +1 -0
- package/dist/merge-handlers.d.ts +7 -0
- package/dist/merge-handlers.d.ts.map +1 -0
- package/dist/merge-handlers.js +16 -0
- package/dist/merge-handlers.js.map +1 -0
- package/dist/mount.d.ts +14 -0
- package/dist/mount.d.ts.map +1 -0
- package/dist/mount.js +182 -0
- package/dist/mount.js.map +1 -0
- package/dist/primitives/branch.d.ts +3 -0
- package/dist/primitives/branch.d.ts.map +1 -0
- package/dist/primitives/branch.js +94 -0
- package/dist/primitives/branch.js.map +1 -0
- package/dist/primitives/child.d.ts +3 -0
- package/dist/primitives/child.d.ts.map +1 -0
- package/dist/primitives/child.js +77 -0
- package/dist/primitives/child.js.map +1 -0
- package/dist/primitives/context.d.ts +45 -0
- package/dist/primitives/context.d.ts.map +1 -0
- package/dist/primitives/context.js +87 -0
- package/dist/primitives/context.js.map +1 -0
- package/dist/primitives/each.d.ts +3 -0
- package/dist/primitives/each.d.ts.map +1 -0
- package/dist/primitives/each.js +515 -0
- package/dist/primitives/each.js.map +1 -0
- package/dist/primitives/error-boundary.d.ts +6 -0
- package/dist/primitives/error-boundary.d.ts.map +1 -0
- package/dist/primitives/error-boundary.js +32 -0
- package/dist/primitives/error-boundary.js.map +1 -0
- package/dist/primitives/foreign.d.ts +3 -0
- package/dist/primitives/foreign.d.ts.map +1 -0
- package/dist/primitives/foreign.js +80 -0
- package/dist/primitives/foreign.js.map +1 -0
- package/dist/primitives/memo.d.ts +3 -0
- package/dist/primitives/memo.d.ts.map +1 -0
- package/dist/primitives/memo.js +30 -0
- package/dist/primitives/memo.js.map +1 -0
- package/dist/primitives/on-mount.d.ts +2 -0
- package/dist/primitives/on-mount.d.ts.map +1 -0
- package/dist/primitives/on-mount.js +23 -0
- package/dist/primitives/on-mount.js.map +1 -0
- package/dist/primitives/portal.d.ts +3 -0
- package/dist/primitives/portal.d.ts.map +1 -0
- package/dist/primitives/portal.js +31 -0
- package/dist/primitives/portal.js.map +1 -0
- package/dist/primitives/selector.d.ts +22 -0
- package/dist/primitives/selector.d.ts.map +1 -0
- package/dist/primitives/selector.js +104 -0
- package/dist/primitives/selector.js.map +1 -0
- package/dist/primitives/show.d.ts +3 -0
- package/dist/primitives/show.d.ts.map +1 -0
- package/dist/primitives/show.js +12 -0
- package/dist/primitives/show.js.map +1 -0
- package/dist/primitives/slice.d.ts +23 -0
- package/dist/primitives/slice.d.ts.map +1 -0
- package/dist/primitives/slice.js +57 -0
- package/dist/primitives/slice.js.map +1 -0
- package/dist/primitives/text.d.ts +2 -0
- package/dist/primitives/text.d.ts.map +1 -0
- package/dist/primitives/text.js +35 -0
- package/dist/primitives/text.js.map +1 -0
- package/dist/render-context.d.ts +14 -0
- package/dist/render-context.d.ts.map +1 -0
- package/dist/render-context.js +14 -0
- package/dist/render-context.js.map +1 -0
- package/dist/runtime.d.ts +4 -0
- package/dist/runtime.d.ts.map +1 -0
- package/dist/runtime.js +14 -0
- package/dist/runtime.js.map +1 -0
- package/dist/scope.d.ts +24 -0
- package/dist/scope.d.ts.map +1 -0
- package/dist/scope.js +102 -0
- package/dist/scope.js.map +1 -0
- package/dist/slice-handler.d.ts +31 -0
- package/dist/slice-handler.d.ts.map +1 -0
- package/dist/slice-handler.js +34 -0
- package/dist/slice-handler.js.map +1 -0
- package/dist/ssr-dom.d.ts +12 -0
- package/dist/ssr-dom.d.ts.map +1 -0
- package/dist/ssr-dom.js +36 -0
- package/dist/ssr-dom.js.map +1 -0
- package/dist/ssr.d.ts +11 -0
- package/dist/ssr.d.ts.map +1 -0
- package/dist/ssr.js +127 -0
- package/dist/ssr.js.map +1 -0
- package/dist/structural.d.ts +4 -0
- package/dist/structural.d.ts.map +1 -0
- package/dist/structural.js +2 -0
- package/dist/structural.js.map +1 -0
- package/dist/types.d.ts +145 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +3 -0
- package/dist/types.js.map +1 -0
- package/dist/update-loop.d.ts +31 -0
- package/dist/update-loop.d.ts.map +1 -0
- package/dist/update-loop.js +236 -0
- package/dist/update-loop.js.map +1 -0
- package/dist/view-helpers.d.ts +44 -0
- package/dist/view-helpers.d.ts.map +1 -0
- package/dist/view-helpers.js +24 -0
- package/dist/view-helpers.js.map +1 -0
- package/package.json +56 -0
package/dist/elements.js
ADDED
|
@@ -0,0 +1,234 @@
|
|
|
1
|
+
import { getRenderContext } from './render-context';
|
|
2
|
+
import { createBinding, applyBinding } from './binding';
|
|
3
|
+
import { FULL_MASK } from './update-loop';
|
|
4
|
+
// DOM properties set via elem[key] = value rather than setAttribute
|
|
5
|
+
const PROP_KEYS = new Set([
|
|
6
|
+
'value',
|
|
7
|
+
'checked',
|
|
8
|
+
'selected',
|
|
9
|
+
'disabled',
|
|
10
|
+
'readOnly',
|
|
11
|
+
'multiple',
|
|
12
|
+
'indeterminate',
|
|
13
|
+
'defaultValue',
|
|
14
|
+
'defaultChecked',
|
|
15
|
+
'innerHTML',
|
|
16
|
+
'textContent',
|
|
17
|
+
]);
|
|
18
|
+
function classifyKind(key) {
|
|
19
|
+
if (key === 'class' || key === 'className')
|
|
20
|
+
return 'class';
|
|
21
|
+
if (key.startsWith('style.'))
|
|
22
|
+
return 'style';
|
|
23
|
+
if (PROP_KEYS.has(key))
|
|
24
|
+
return 'prop';
|
|
25
|
+
return 'attr';
|
|
26
|
+
}
|
|
27
|
+
function resolveKey(key, kind) {
|
|
28
|
+
if (kind === 'class')
|
|
29
|
+
return undefined;
|
|
30
|
+
if (kind === 'style')
|
|
31
|
+
return key.slice(6); // strip 'style.'
|
|
32
|
+
if (kind === 'prop')
|
|
33
|
+
return key;
|
|
34
|
+
// attr
|
|
35
|
+
if (key === 'className')
|
|
36
|
+
return 'class';
|
|
37
|
+
return key;
|
|
38
|
+
}
|
|
39
|
+
function createElement(tag, propsOrChildren, maybeChildren) {
|
|
40
|
+
const el = document.createElement(tag);
|
|
41
|
+
const ctx = getRenderContext();
|
|
42
|
+
// Distinguish (props, children) from (children,) — if first arg is an Array, it's children
|
|
43
|
+
const props = Array.isArray(propsOrChildren)
|
|
44
|
+
? undefined
|
|
45
|
+
: propsOrChildren;
|
|
46
|
+
const children = Array.isArray(propsOrChildren)
|
|
47
|
+
? propsOrChildren
|
|
48
|
+
: maybeChildren;
|
|
49
|
+
if (props) {
|
|
50
|
+
for (const [rawKey, value] of Object.entries(props)) {
|
|
51
|
+
if (rawKey === 'key')
|
|
52
|
+
continue;
|
|
53
|
+
// Event handler
|
|
54
|
+
if (/^on[A-Z]/.test(rawKey)) {
|
|
55
|
+
const eventName = rawKey.slice(2).toLowerCase();
|
|
56
|
+
el.addEventListener(eventName, value);
|
|
57
|
+
continue;
|
|
58
|
+
}
|
|
59
|
+
// Reactive binding — value is a function
|
|
60
|
+
if (typeof value === 'function') {
|
|
61
|
+
const kind = classifyKind(rawKey);
|
|
62
|
+
const key = resolveKey(rawKey, kind);
|
|
63
|
+
const accessor = value;
|
|
64
|
+
const perItem = value.length === 0;
|
|
65
|
+
const binding = createBinding(ctx.rootScope, {
|
|
66
|
+
mask: FULL_MASK,
|
|
67
|
+
accessor,
|
|
68
|
+
kind,
|
|
69
|
+
node: el,
|
|
70
|
+
key,
|
|
71
|
+
perItem,
|
|
72
|
+
});
|
|
73
|
+
const initialValue = perItem ? value() : accessor(ctx.state);
|
|
74
|
+
binding.lastValue = initialValue;
|
|
75
|
+
applyBinding({ kind, node: el, key }, initialValue);
|
|
76
|
+
continue;
|
|
77
|
+
}
|
|
78
|
+
// Static prop
|
|
79
|
+
const kind = classifyKind(rawKey);
|
|
80
|
+
const key = resolveKey(rawKey, kind);
|
|
81
|
+
applyBinding({ kind, node: el, key }, value);
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
if (children) {
|
|
85
|
+
for (const child of children) {
|
|
86
|
+
if (typeof child === 'string') {
|
|
87
|
+
el.appendChild(document.createTextNode(child));
|
|
88
|
+
}
|
|
89
|
+
else if (Array.isArray(child)) {
|
|
90
|
+
for (const node of child)
|
|
91
|
+
el.appendChild(node);
|
|
92
|
+
}
|
|
93
|
+
else {
|
|
94
|
+
el.appendChild(child);
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
return el;
|
|
99
|
+
}
|
|
100
|
+
/* v8 ignore start — mechanical tag wrappers */
|
|
101
|
+
// prettier-ignore
|
|
102
|
+
export const a = ((p, c) => createElement('a', p, c));
|
|
103
|
+
// prettier-ignore
|
|
104
|
+
export const abbr = ((p, c) => createElement('abbr', p, c));
|
|
105
|
+
// prettier-ignore
|
|
106
|
+
export const article = ((p, c) => createElement('article', p, c));
|
|
107
|
+
// prettier-ignore
|
|
108
|
+
export const aside = ((p, c) => createElement('aside', p, c));
|
|
109
|
+
// prettier-ignore
|
|
110
|
+
export const b = ((p, c) => createElement('b', p, c));
|
|
111
|
+
// prettier-ignore
|
|
112
|
+
export const blockquote = ((p, c) => createElement('blockquote', p, c));
|
|
113
|
+
// prettier-ignore
|
|
114
|
+
export const br = ((p) => createElement('br', p));
|
|
115
|
+
// prettier-ignore
|
|
116
|
+
export const button = ((p, c) => createElement('button', p, c));
|
|
117
|
+
// prettier-ignore
|
|
118
|
+
export const canvas = ((p, c) => createElement('canvas', p, c));
|
|
119
|
+
// prettier-ignore
|
|
120
|
+
export const code = ((p, c) => createElement('code', p, c));
|
|
121
|
+
// prettier-ignore
|
|
122
|
+
export const dd = ((p, c) => createElement('dd', p, c));
|
|
123
|
+
// prettier-ignore
|
|
124
|
+
export const details = ((p, c) => createElement('details', p, c));
|
|
125
|
+
// prettier-ignore
|
|
126
|
+
export const dialog = ((p, c) => createElement('dialog', p, c));
|
|
127
|
+
// prettier-ignore
|
|
128
|
+
export const div = ((p, c) => createElement('div', p, c));
|
|
129
|
+
// prettier-ignore
|
|
130
|
+
export const dl = ((p, c) => createElement('dl', p, c));
|
|
131
|
+
// prettier-ignore
|
|
132
|
+
export const dt = ((p, c) => createElement('dt', p, c));
|
|
133
|
+
// prettier-ignore
|
|
134
|
+
export const em = ((p, c) => createElement('em', p, c));
|
|
135
|
+
// prettier-ignore
|
|
136
|
+
export const fieldset = ((p, c) => createElement('fieldset', p, c));
|
|
137
|
+
// prettier-ignore
|
|
138
|
+
export const figcaption = ((p, c) => createElement('figcaption', p, c));
|
|
139
|
+
// prettier-ignore
|
|
140
|
+
export const figure = ((p, c) => createElement('figure', p, c));
|
|
141
|
+
// prettier-ignore
|
|
142
|
+
export const footer = ((p, c) => createElement('footer', p, c));
|
|
143
|
+
// prettier-ignore
|
|
144
|
+
export const form = ((p, c) => createElement('form', p, c));
|
|
145
|
+
// prettier-ignore
|
|
146
|
+
export const h1 = ((p, c) => createElement('h1', p, c));
|
|
147
|
+
// prettier-ignore
|
|
148
|
+
export const h2 = ((p, c) => createElement('h2', p, c));
|
|
149
|
+
// prettier-ignore
|
|
150
|
+
export const h3 = ((p, c) => createElement('h3', p, c));
|
|
151
|
+
// prettier-ignore
|
|
152
|
+
export const h4 = ((p, c) => createElement('h4', p, c));
|
|
153
|
+
// prettier-ignore
|
|
154
|
+
export const h5 = ((p, c) => createElement('h5', p, c));
|
|
155
|
+
// prettier-ignore
|
|
156
|
+
export const h6 = ((p, c) => createElement('h6', p, c));
|
|
157
|
+
// prettier-ignore
|
|
158
|
+
export const header = ((p, c) => createElement('header', p, c));
|
|
159
|
+
// prettier-ignore
|
|
160
|
+
export const hr = ((p) => createElement('hr', p));
|
|
161
|
+
// prettier-ignore
|
|
162
|
+
export const i = ((p, c) => createElement('i', p, c));
|
|
163
|
+
// prettier-ignore
|
|
164
|
+
export const iframe = ((p, c) => createElement('iframe', p, c));
|
|
165
|
+
// prettier-ignore
|
|
166
|
+
export const img = ((p) => createElement('img', p));
|
|
167
|
+
// prettier-ignore
|
|
168
|
+
export const input = ((p) => createElement('input', p));
|
|
169
|
+
// prettier-ignore
|
|
170
|
+
export const label = ((p, c) => createElement('label', p, c));
|
|
171
|
+
// prettier-ignore
|
|
172
|
+
export const legend = ((p, c) => createElement('legend', p, c));
|
|
173
|
+
// prettier-ignore
|
|
174
|
+
export const li = ((p, c) => createElement('li', p, c));
|
|
175
|
+
// prettier-ignore
|
|
176
|
+
export const main = ((p, c) => createElement('main', p, c));
|
|
177
|
+
// prettier-ignore
|
|
178
|
+
export const mark = ((p, c) => createElement('mark', p, c));
|
|
179
|
+
// prettier-ignore
|
|
180
|
+
export const nav = ((p, c) => createElement('nav', p, c));
|
|
181
|
+
// prettier-ignore
|
|
182
|
+
export const ol = ((p, c) => createElement('ol', p, c));
|
|
183
|
+
// prettier-ignore
|
|
184
|
+
export const optgroup = ((p, c) => createElement('optgroup', p, c));
|
|
185
|
+
// prettier-ignore
|
|
186
|
+
export const option = ((p, c) => createElement('option', p, c));
|
|
187
|
+
// prettier-ignore
|
|
188
|
+
export const output = ((p, c) => createElement('output', p, c));
|
|
189
|
+
// prettier-ignore
|
|
190
|
+
export const p = ((p, c) => createElement('p', p, c));
|
|
191
|
+
// prettier-ignore
|
|
192
|
+
export const pre = ((p, c) => createElement('pre', p, c));
|
|
193
|
+
// prettier-ignore
|
|
194
|
+
export const progress = ((p, c) => createElement('progress', p, c));
|
|
195
|
+
// prettier-ignore
|
|
196
|
+
export const section = ((p, c) => createElement('section', p, c));
|
|
197
|
+
// prettier-ignore
|
|
198
|
+
export const select = ((p, c) => createElement('select', p, c));
|
|
199
|
+
// prettier-ignore
|
|
200
|
+
export const small = ((p, c) => createElement('small', p, c));
|
|
201
|
+
// prettier-ignore
|
|
202
|
+
export const span = ((p, c) => createElement('span', p, c));
|
|
203
|
+
// prettier-ignore
|
|
204
|
+
export const strong = ((p, c) => createElement('strong', p, c));
|
|
205
|
+
// prettier-ignore
|
|
206
|
+
export const sub = ((p, c) => createElement('sub', p, c));
|
|
207
|
+
// prettier-ignore
|
|
208
|
+
export const summary = ((p, c) => createElement('summary', p, c));
|
|
209
|
+
// prettier-ignore
|
|
210
|
+
export const sup = ((p, c) => createElement('sup', p, c));
|
|
211
|
+
// prettier-ignore
|
|
212
|
+
export const table = ((p, c) => createElement('table', p, c));
|
|
213
|
+
// prettier-ignore
|
|
214
|
+
export const tbody = ((p, c) => createElement('tbody', p, c));
|
|
215
|
+
// prettier-ignore
|
|
216
|
+
export const td = ((p, c) => createElement('td', p, c));
|
|
217
|
+
// prettier-ignore
|
|
218
|
+
export const textarea = ((p, c) => createElement('textarea', p, c));
|
|
219
|
+
// prettier-ignore
|
|
220
|
+
export const tfoot = ((p, c) => createElement('tfoot', p, c));
|
|
221
|
+
// prettier-ignore
|
|
222
|
+
export const th = ((p, c) => createElement('th', p, c));
|
|
223
|
+
// prettier-ignore
|
|
224
|
+
export const thead = ((p, c) => createElement('thead', p, c));
|
|
225
|
+
// prettier-ignore
|
|
226
|
+
export const time = ((p, c) => createElement('time', p, c));
|
|
227
|
+
// prettier-ignore
|
|
228
|
+
export const tr = ((p, c) => createElement('tr', p, c));
|
|
229
|
+
// prettier-ignore
|
|
230
|
+
export const ul = ((p, c) => createElement('ul', p, c));
|
|
231
|
+
// prettier-ignore
|
|
232
|
+
export const video = ((p, c) => createElement('video', p, c));
|
|
233
|
+
/* v8 ignore stop */
|
|
234
|
+
//# sourceMappingURL=elements.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"elements.js","sourceRoot":"","sources":["../src/elements.ts"],"names":[],"mappings":"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"}
|
package/dist/form.d.ts
ADDED
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Type utility for form field messages.
|
|
3
|
+
* Generates a discriminated union where each field gets its own typed variant,
|
|
4
|
+
* avoiding the need to define one message type per field.
|
|
5
|
+
*
|
|
6
|
+
* Usage:
|
|
7
|
+
* type Fields = { name: string; email: string; age: number }
|
|
8
|
+
* type Msg = FieldMsg<Fields> | { type: 'submit' }
|
|
9
|
+
* // Produces: { type: 'setField'; field: 'name'; value: string }
|
|
10
|
+
* // | { type: 'setField'; field: 'email'; value: string }
|
|
11
|
+
* // | { type: 'setField'; field: 'age'; value: number }
|
|
12
|
+
* // | { type: 'submit' }
|
|
13
|
+
*/
|
|
14
|
+
export type FieldMsg<Fields extends Record<string, unknown>> = {
|
|
15
|
+
[K in keyof Fields]: {
|
|
16
|
+
type: 'setField';
|
|
17
|
+
field: K;
|
|
18
|
+
value: Fields[K];
|
|
19
|
+
};
|
|
20
|
+
}[keyof Fields];
|
|
21
|
+
/**
|
|
22
|
+
* Apply a field update to state immutably.
|
|
23
|
+
* Returns a new state object with the specified field updated.
|
|
24
|
+
*
|
|
25
|
+
* Usage in update():
|
|
26
|
+
* case 'setField':
|
|
27
|
+
* return [applyField(state, msg.field, msg.value), []]
|
|
28
|
+
*/
|
|
29
|
+
export declare function applyField<S extends Record<string, unknown>, K extends keyof S>(state: S, field: K, value: S[K]): S;
|
|
30
|
+
//# sourceMappingURL=form.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"form.d.ts","sourceRoot":"","sources":["../src/form.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AACH,MAAM,MAAM,QAAQ,CAAC,MAAM,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI;KAC5D,CAAC,IAAI,MAAM,MAAM,GAAG;QAAE,IAAI,EAAE,UAAU,CAAC;QAAC,KAAK,EAAE,CAAC,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,CAAA;KAAE;CACtE,CAAC,MAAM,MAAM,CAAC,CAAA;AAEf;;;;;;;GAOG;AACH,wBAAgB,UAAU,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC,SAAS,MAAM,CAAC,EAC7E,KAAK,EAAE,CAAC,EACR,KAAK,EAAE,CAAC,EACR,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,GACV,CAAC,CAEH"}
|
package/dist/form.js
ADDED
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Apply a field update to state immutably.
|
|
3
|
+
* Returns a new state object with the specified field updated.
|
|
4
|
+
*
|
|
5
|
+
* Usage in update():
|
|
6
|
+
* case 'setField':
|
|
7
|
+
* return [applyField(state, msg.field, msg.value), []]
|
|
8
|
+
*/
|
|
9
|
+
export function applyField(state, field, value) {
|
|
10
|
+
return { ...state, [field]: value };
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=form.js.map
|
package/dist/form.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"form.js","sourceRoot":"","sources":["../src/form.ts"],"names":[],"mappings":"AAiBA;;;;;;;GAOG;AACH,MAAM,UAAU,UAAU,CACxB,KAAQ,EACR,KAAQ,EACR,KAAW;IAEX,OAAO,EAAE,GAAG,KAAK,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,CAAA;AACrC,CAAC"}
|
package/dist/hmr.d.ts
ADDED
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import type { ComponentDef, AppHandle } from './types';
|
|
2
|
+
/**
|
|
3
|
+
* Enable HMR state preservation. Called by compiler-generated dev code.
|
|
4
|
+
* Importing this module registers it with mountApp for hot-swapping.
|
|
5
|
+
*/
|
|
6
|
+
export declare function enableHmr(): void;
|
|
7
|
+
export declare function registerForHmr(name: string, inst: object, container: HTMLElement): void;
|
|
8
|
+
export declare function unregisterForHmr(name: string, inst: object): void;
|
|
9
|
+
/**
|
|
10
|
+
* Hot-swap a component definition on all live instances.
|
|
11
|
+
*
|
|
12
|
+
* Preserves the current state. Replaces update, view, onEffect, and __dirty.
|
|
13
|
+
* Disposes the old scope tree (removing old DOM and bindings),
|
|
14
|
+
* re-runs view(currentState, send) to rebuild fresh DOM.
|
|
15
|
+
*
|
|
16
|
+
* Returns an AppHandle for the first instance (for mountApp compatibility),
|
|
17
|
+
* or null if no instances are registered (first mount).
|
|
18
|
+
*/
|
|
19
|
+
export declare function replaceComponent<S, M, E>(name: string, newDef: ComponentDef<S, M, E>): AppHandle | null;
|
|
20
|
+
//# sourceMappingURL=hmr.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hmr.d.ts","sourceRoot":"","sources":["../src/hmr.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,SAAS,CAAA;AAUtD;;;GAGG;AACH,wBAAgB,SAAS,IAAI,IAAI,CAEhC;AAWD,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,WAAW,GAAG,IAAI,CAIvF;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAMjE;AAED;;;;;;;;;GASG;AACH,wBAAgB,gBAAgB,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EACtC,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,GAC5B,SAAS,GAAG,IAAI,CAiElB"}
|
package/dist/hmr.js
ADDED
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
import { flushInstance } from './update-loop';
|
|
2
|
+
import { createScope, disposeScope } from './scope';
|
|
3
|
+
import { setRenderContext, clearRenderContext } from './render-context';
|
|
4
|
+
import { setFlatBindings } from './binding';
|
|
5
|
+
import { unregisterInstance } from './runtime';
|
|
6
|
+
import { _setHmrModule } from './mount';
|
|
7
|
+
import { createView } from './view-helpers';
|
|
8
|
+
/**
|
|
9
|
+
* Enable HMR state preservation. Called by compiler-generated dev code.
|
|
10
|
+
* Importing this module registers it with mountApp for hot-swapping.
|
|
11
|
+
*/
|
|
12
|
+
export function enableHmr() {
|
|
13
|
+
_setHmrModule({ enableHmr, registerForHmr, unregisterForHmr, replaceComponent });
|
|
14
|
+
}
|
|
15
|
+
const hmrRegistry = new Map();
|
|
16
|
+
export function registerForHmr(name, inst, container) {
|
|
17
|
+
const entries = hmrRegistry.get(name) ?? [];
|
|
18
|
+
entries.push({ inst: inst, container });
|
|
19
|
+
hmrRegistry.set(name, entries);
|
|
20
|
+
}
|
|
21
|
+
export function unregisterForHmr(name, inst) {
|
|
22
|
+
const entries = hmrRegistry.get(name);
|
|
23
|
+
if (!entries)
|
|
24
|
+
return;
|
|
25
|
+
const idx = entries.findIndex((e) => e.inst === inst);
|
|
26
|
+
if (idx !== -1)
|
|
27
|
+
entries.splice(idx, 1);
|
|
28
|
+
if (entries.length === 0)
|
|
29
|
+
hmrRegistry.delete(name);
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* Hot-swap a component definition on all live instances.
|
|
33
|
+
*
|
|
34
|
+
* Preserves the current state. Replaces update, view, onEffect, and __dirty.
|
|
35
|
+
* Disposes the old scope tree (removing old DOM and bindings),
|
|
36
|
+
* re-runs view(currentState, send) to rebuild fresh DOM.
|
|
37
|
+
*
|
|
38
|
+
* Returns an AppHandle for the first instance (for mountApp compatibility),
|
|
39
|
+
* or null if no instances are registered (first mount).
|
|
40
|
+
*/
|
|
41
|
+
export function replaceComponent(name, newDef) {
|
|
42
|
+
const entries = hmrRegistry.get(name);
|
|
43
|
+
if (!entries || entries.length === 0)
|
|
44
|
+
return null;
|
|
45
|
+
let handle = null;
|
|
46
|
+
for (const { inst, container } of entries) {
|
|
47
|
+
const typedInst = inst;
|
|
48
|
+
// Replace functions on the live definition
|
|
49
|
+
typedInst.def = {
|
|
50
|
+
...typedInst.def,
|
|
51
|
+
update: newDef.update,
|
|
52
|
+
view: newDef.view,
|
|
53
|
+
onEffect: newDef.onEffect,
|
|
54
|
+
__dirty: newDef.__dirty,
|
|
55
|
+
};
|
|
56
|
+
// Dispose old scope tree — removes all old DOM nodes and bindings
|
|
57
|
+
disposeScope(typedInst.rootScope);
|
|
58
|
+
container.textContent = '';
|
|
59
|
+
// Create fresh scope tree
|
|
60
|
+
typedInst.rootScope = createScope(null);
|
|
61
|
+
typedInst.allBindings = [];
|
|
62
|
+
typedInst.structuralBlocks = [];
|
|
63
|
+
// Re-run view with current state
|
|
64
|
+
setFlatBindings(typedInst.allBindings);
|
|
65
|
+
setRenderContext({
|
|
66
|
+
rootScope: typedInst.rootScope,
|
|
67
|
+
state: typedInst.state,
|
|
68
|
+
allBindings: typedInst.allBindings,
|
|
69
|
+
structuralBlocks: typedInst.structuralBlocks,
|
|
70
|
+
container,
|
|
71
|
+
send: typedInst.send,
|
|
72
|
+
});
|
|
73
|
+
const nodes = typedInst.def.view(createView(typedInst.send));
|
|
74
|
+
clearRenderContext();
|
|
75
|
+
setFlatBindings(null);
|
|
76
|
+
for (const node of nodes) {
|
|
77
|
+
container.appendChild(node);
|
|
78
|
+
}
|
|
79
|
+
// Return AppHandle for the first instance
|
|
80
|
+
if (!handle) {
|
|
81
|
+
handle = {
|
|
82
|
+
dispose() {
|
|
83
|
+
unregisterForHmr(name, inst);
|
|
84
|
+
inst.abortController.abort();
|
|
85
|
+
unregisterInstance(inst);
|
|
86
|
+
disposeScope(typedInst.rootScope);
|
|
87
|
+
container.textContent = '';
|
|
88
|
+
},
|
|
89
|
+
flush() {
|
|
90
|
+
flushInstance(inst);
|
|
91
|
+
},
|
|
92
|
+
};
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
console.log(`[LLui HMR] ${name} updated — state preserved`);
|
|
96
|
+
return handle;
|
|
97
|
+
}
|
|
98
|
+
//# sourceMappingURL=hmr.js.map
|
package/dist/hmr.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hmr.js","sourceRoot":"","sources":["../src/hmr.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Hydration mode: patches document.createElement/createTextNode/createComment
|
|
3
|
+
* to return existing server-rendered DOM nodes instead of creating new ones.
|
|
4
|
+
*
|
|
5
|
+
* During hydration, view() runs normally but DOM creation calls return
|
|
6
|
+
* pre-existing nodes from the server HTML. Bindings and event listeners
|
|
7
|
+
* are attached to the reused nodes.
|
|
8
|
+
*/
|
|
9
|
+
export declare function isHydrating(): boolean;
|
|
10
|
+
export declare function startHydration(container: HTMLElement): void;
|
|
11
|
+
export declare function endHydration(): void;
|
|
12
|
+
/**
|
|
13
|
+
* Claim the next child node from the server HTML.
|
|
14
|
+
* Falls back to creating a new node if none found (mismatch).
|
|
15
|
+
*/
|
|
16
|
+
export declare function claimElement(tag: string): HTMLElement;
|
|
17
|
+
export declare function claimText(content: string): Text;
|
|
18
|
+
export declare function claimComment(content: string): Comment;
|
|
19
|
+
/**
|
|
20
|
+
* Push cursor into an element's children.
|
|
21
|
+
* Called when view() starts appending children to an element.
|
|
22
|
+
*/
|
|
23
|
+
export declare function pushCursor(parent: Node): void;
|
|
24
|
+
/**
|
|
25
|
+
* Pop cursor back to parent.
|
|
26
|
+
* Called when view() finishes appending children to an element.
|
|
27
|
+
*/
|
|
28
|
+
export declare function popCursor(): void;
|
|
29
|
+
//# sourceMappingURL=hydrate.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hydrate.d.ts","sourceRoot":"","sources":["../src/hydrate.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAUH,wBAAgB,WAAW,IAAI,OAAO,CAErC;AAED,wBAAgB,cAAc,CAAC,SAAS,EAAE,WAAW,GAAG,IAAI,CAI3D;AAED,wBAAgB,YAAY,IAAI,IAAI,CAGnC;AAED;;;GAGG;AACH,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,WAAW,CAqBrD;AAED,wBAAgB,SAAS,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAoB/C;AAED,wBAAgB,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAerD;AAED;;;GAGG;AACH,wBAAgB,UAAU,CAAC,MAAM,EAAE,IAAI,GAAG,IAAI,CAI7C;AAED;;;GAGG;AACH,wBAAgB,SAAS,IAAI,IAAI,CAIhC"}
|
package/dist/hydrate.js
ADDED
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Hydration mode: patches document.createElement/createTextNode/createComment
|
|
3
|
+
* to return existing server-rendered DOM nodes instead of creating new ones.
|
|
4
|
+
*
|
|
5
|
+
* During hydration, view() runs normally but DOM creation calls return
|
|
6
|
+
* pre-existing nodes from the server HTML. Bindings and event listeners
|
|
7
|
+
* are attached to the reused nodes.
|
|
8
|
+
*/
|
|
9
|
+
const cursorStack = [];
|
|
10
|
+
let hydrating = false;
|
|
11
|
+
export function isHydrating() {
|
|
12
|
+
return hydrating;
|
|
13
|
+
}
|
|
14
|
+
export function startHydration(container) {
|
|
15
|
+
hydrating = true;
|
|
16
|
+
cursorStack.length = 0;
|
|
17
|
+
cursorStack.push({ parent: container, index: 0 });
|
|
18
|
+
}
|
|
19
|
+
export function endHydration() {
|
|
20
|
+
hydrating = false;
|
|
21
|
+
cursorStack.length = 0;
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Claim the next child node from the server HTML.
|
|
25
|
+
* Falls back to creating a new node if none found (mismatch).
|
|
26
|
+
*/
|
|
27
|
+
export function claimElement(tag) {
|
|
28
|
+
if (!hydrating)
|
|
29
|
+
return document.createElement(tag);
|
|
30
|
+
const cursor = cursorStack[cursorStack.length - 1];
|
|
31
|
+
const child = cursor.parent.childNodes[cursor.index];
|
|
32
|
+
if (child && child.nodeType === 1 && child.tagName.toLowerCase() === tag) {
|
|
33
|
+
cursor.index++;
|
|
34
|
+
return child;
|
|
35
|
+
}
|
|
36
|
+
// Mismatch — create a new element (hydration mismatch warning)
|
|
37
|
+
if (typeof console !== 'undefined') {
|
|
38
|
+
console.warn(`[LLui hydration] expected <${tag}> at index ${cursor.index}, got ${child ? `<${child.tagName?.toLowerCase?.() ?? child.nodeType}>` : 'nothing'}`);
|
|
39
|
+
}
|
|
40
|
+
const el = document.createElement(tag);
|
|
41
|
+
cursor.parent.insertBefore(el, child ?? null);
|
|
42
|
+
cursor.index++;
|
|
43
|
+
return el;
|
|
44
|
+
}
|
|
45
|
+
export function claimText(content) {
|
|
46
|
+
if (!hydrating)
|
|
47
|
+
return document.createTextNode(content);
|
|
48
|
+
const cursor = cursorStack[cursorStack.length - 1];
|
|
49
|
+
const child = cursor.parent.childNodes[cursor.index];
|
|
50
|
+
if (child && child.nodeType === 3) {
|
|
51
|
+
cursor.index++;
|
|
52
|
+
// Update content in case it differs (reactive initial value)
|
|
53
|
+
if (child.textContent !== content) {
|
|
54
|
+
child.textContent = content;
|
|
55
|
+
}
|
|
56
|
+
return child;
|
|
57
|
+
}
|
|
58
|
+
// No text node — create one
|
|
59
|
+
const text = document.createTextNode(content);
|
|
60
|
+
cursor.parent.insertBefore(text, child ?? null);
|
|
61
|
+
cursor.index++;
|
|
62
|
+
return text;
|
|
63
|
+
}
|
|
64
|
+
export function claimComment(content) {
|
|
65
|
+
if (!hydrating)
|
|
66
|
+
return document.createComment(content);
|
|
67
|
+
const cursor = cursorStack[cursorStack.length - 1];
|
|
68
|
+
const child = cursor.parent.childNodes[cursor.index];
|
|
69
|
+
if (child && child.nodeType === 8) {
|
|
70
|
+
cursor.index++;
|
|
71
|
+
return child;
|
|
72
|
+
}
|
|
73
|
+
const comment = document.createComment(content);
|
|
74
|
+
cursor.parent.insertBefore(comment, child ?? null);
|
|
75
|
+
cursor.index++;
|
|
76
|
+
return comment;
|
|
77
|
+
}
|
|
78
|
+
/**
|
|
79
|
+
* Push cursor into an element's children.
|
|
80
|
+
* Called when view() starts appending children to an element.
|
|
81
|
+
*/
|
|
82
|
+
export function pushCursor(parent) {
|
|
83
|
+
if (hydrating) {
|
|
84
|
+
cursorStack.push({ parent, index: 0 });
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
/**
|
|
88
|
+
* Pop cursor back to parent.
|
|
89
|
+
* Called when view() finishes appending children to an element.
|
|
90
|
+
*/
|
|
91
|
+
export function popCursor() {
|
|
92
|
+
if (hydrating) {
|
|
93
|
+
cursorStack.pop();
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
//# sourceMappingURL=hydrate.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hydrate.js","sourceRoot":"","sources":["../src/hydrate.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAOH,MAAM,WAAW,GAAsB,EAAE,CAAA;AACzC,IAAI,SAAS,GAAG,KAAK,CAAA;AAErB,MAAM,UAAU,WAAW;IACzB,OAAO,SAAS,CAAA;AAClB,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,SAAsB;IACnD,SAAS,GAAG,IAAI,CAAA;IAChB,WAAW,CAAC,MAAM,GAAG,CAAC,CAAA;IACtB,WAAW,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAA;AACnD,CAAC;AAED,MAAM,UAAU,YAAY;IAC1B,SAAS,GAAG,KAAK,CAAA;IACjB,WAAW,CAAC,MAAM,GAAG,CAAC,CAAA;AACxB,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,YAAY,CAAC,GAAW;IACtC,IAAI,CAAC,SAAS;QAAE,OAAO,QAAQ,CAAC,aAAa,CAAC,GAAG,CAAC,CAAA;IAElD,MAAM,MAAM,GAAG,WAAW,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,CAAE,CAAA;IACnD,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;IAEpD,IAAI,KAAK,IAAI,KAAK,CAAC,QAAQ,KAAK,CAAC,IAAK,KAAiB,CAAC,OAAO,CAAC,WAAW,EAAE,KAAK,GAAG,EAAE,CAAC;QACtF,MAAM,CAAC,KAAK,EAAE,CAAA;QACd,OAAO,KAAoB,CAAA;IAC7B,CAAC;IAED,+DAA+D;IAC/D,IAAI,OAAO,OAAO,KAAK,WAAW,EAAE,CAAC;QACnC,OAAO,CAAC,IAAI,CACV,8BAA8B,GAAG,cAAc,MAAM,CAAC,KAAK,SAAS,KAAK,CAAC,CAAC,CAAC,IAAK,KAAiB,CAAC,OAAO,EAAE,WAAW,EAAE,EAAE,IAAI,KAAK,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC,SAAS,EAAE,CAC/J,CAAA;IACH,CAAC;IACD,MAAM,EAAE,GAAG,QAAQ,CAAC,aAAa,CAAC,GAAG,CAAC,CAAA;IACtC,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,EAAE,EAAE,KAAK,IAAI,IAAI,CAAC,CAAA;IAC7C,MAAM,CAAC,KAAK,EAAE,CAAA;IACd,OAAO,EAAE,CAAA;AACX,CAAC;AAED,MAAM,UAAU,SAAS,CAAC,OAAe;IACvC,IAAI,CAAC,SAAS;QAAE,OAAO,QAAQ,CAAC,cAAc,CAAC,OAAO,CAAC,CAAA;IAEvD,MAAM,MAAM,GAAG,WAAW,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,CAAE,CAAA;IACnD,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;IAEpD,IAAI,KAAK,IAAI,KAAK,CAAC,QAAQ,KAAK,CAAC,EAAE,CAAC;QAClC,MAAM,CAAC,KAAK,EAAE,CAAA;QACd,6DAA6D;QAC7D,IAAI,KAAK,CAAC,WAAW,KAAK,OAAO,EAAE,CAAC;YAClC,KAAK,CAAC,WAAW,GAAG,OAAO,CAAA;QAC7B,CAAC;QACD,OAAO,KAAa,CAAA;IACtB,CAAC;IAED,4BAA4B;IAC5B,MAAM,IAAI,GAAG,QAAQ,CAAC,cAAc,CAAC,OAAO,CAAC,CAAA;IAC7C,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,EAAE,KAAK,IAAI,IAAI,CAAC,CAAA;IAC/C,MAAM,CAAC,KAAK,EAAE,CAAA;IACd,OAAO,IAAI,CAAA;AACb,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,OAAe;IAC1C,IAAI,CAAC,SAAS;QAAE,OAAO,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,CAAA;IAEtD,MAAM,MAAM,GAAG,WAAW,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,CAAE,CAAA;IACnD,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;IAEpD,IAAI,KAAK,IAAI,KAAK,CAAC,QAAQ,KAAK,CAAC,EAAE,CAAC;QAClC,MAAM,CAAC,KAAK,EAAE,CAAA;QACd,OAAO,KAAgB,CAAA;IACzB,CAAC;IAED,MAAM,OAAO,GAAG,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,CAAA;IAC/C,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,OAAO,EAAE,KAAK,IAAI,IAAI,CAAC,CAAA;IAClD,MAAM,CAAC,KAAK,EAAE,CAAA;IACd,OAAO,OAAO,CAAA;AAChB,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,UAAU,CAAC,MAAY;IACrC,IAAI,SAAS,EAAE,CAAC;QACd,WAAW,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAA;IACxC,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,SAAS;IACvB,IAAI,SAAS,EAAE,CAAC;QACd,WAAW,CAAC,GAAG,EAAE,CAAA;IACnB,CAAC;AACH,CAAC"}
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
export type { ComponentDef, Send, Props, AppHandle, Scope, Binding, BindingKind, TransitionOptions, BranchOptions, ShowOptions, EachOptions, ItemAccessor, PortalOptions, ForeignOptions, ChildOptions, } from './types';
|
|
2
|
+
export { component } from './component';
|
|
3
|
+
export { createView, type View } from './view-helpers';
|
|
4
|
+
export { mountApp, hydrateApp, type MountOptions } from './mount';
|
|
5
|
+
export type { LluiDebugAPI } from './devtools';
|
|
6
|
+
export { flush } from './runtime';
|
|
7
|
+
export { addressOf } from './addressed';
|
|
8
|
+
export { renderToString } from './ssr';
|
|
9
|
+
export { mergeHandlers } from './merge-handlers';
|
|
10
|
+
export { createContext, provide, useContext, type Context } from './primitives/context';
|
|
11
|
+
export { sliceHandler } from './slice-handler';
|
|
12
|
+
export { text } from './primitives/text';
|
|
13
|
+
export { branch } from './primitives/branch';
|
|
14
|
+
export { each } from './primitives/each';
|
|
15
|
+
export { show } from './primitives/show';
|
|
16
|
+
export { slice } from './primitives/slice';
|
|
17
|
+
export { portal } from './primitives/portal';
|
|
18
|
+
export { foreign } from './primitives/foreign';
|
|
19
|
+
export { child } from './primitives/child';
|
|
20
|
+
export { memo } from './primitives/memo';
|
|
21
|
+
export { selector } from './primitives/selector';
|
|
22
|
+
export { onMount } from './primitives/on-mount';
|
|
23
|
+
export { errorBoundary } from './primitives/error-boundary';
|
|
24
|
+
export { a, abbr, article, aside, b, blockquote, br, button, canvas, code, dd, details, dialog, div, dl, dt, em, fieldset, figcaption, figure, footer, form, h1, h2, h3, h4, h5, h6, header, hr, i, iframe, img, input, label, legend, li, main, mark, nav, ol, optgroup, option, output, p, pre, progress, section, select, small, span, strong, sub, summary, sup, table, tbody, td, textarea, tfoot, th, thead, time, tr, ul, video, } from './elements';
|
|
25
|
+
export { applyField, type FieldMsg } from './form';
|
|
26
|
+
export { elSplit } from './el-split';
|
|
27
|
+
export { elTemplate } from './el-template';
|
|
28
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA,YAAY,EACV,YAAY,EACZ,IAAI,EACJ,KAAK,EACL,SAAS,EACT,KAAK,EACL,OAAO,EACP,WAAW,EACX,iBAAiB,EACjB,aAAa,EACb,WAAW,EACX,WAAW,EACX,YAAY,EACZ,aAAa,EACb,cAAc,EACd,YAAY,GACb,MAAM,SAAS,CAAA;AAIhB,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AACvC,OAAO,EAAE,UAAU,EAAE,KAAK,IAAI,EAAE,MAAM,gBAAgB,CAAA;AAItD,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,KAAK,YAAY,EAAE,MAAM,SAAS,CAAA;AAGjE,YAAY,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AAI9C,OAAO,EAAE,KAAK,EAAE,MAAM,WAAW,CAAA;AACjC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AACvC,OAAO,EAAE,cAAc,EAAE,MAAM,OAAO,CAAA;AACtC,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAA;AAChD,OAAO,EAAE,aAAa,EAAE,OAAO,EAAE,UAAU,EAAE,KAAK,OAAO,EAAE,MAAM,sBAAsB,CAAA;AACvF,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAA;AAI9C,OAAO,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAA;AACxC,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAA;AAC5C,OAAO,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAA;AACxC,OAAO,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAA;AACxC,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAA;AAC1C,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAA;AAC5C,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAA;AAC9C,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAA;AAC1C,OAAO,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAA;AACxC,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAA;AAChD,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAA;AAC/C,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAA;AAI3D,OAAO,EACL,CAAC,EACD,IAAI,EACJ,OAAO,EACP,KAAK,EACL,CAAC,EACD,UAAU,EACV,EAAE,EACF,MAAM,EACN,MAAM,EACN,IAAI,EACJ,EAAE,EACF,OAAO,EACP,MAAM,EACN,GAAG,EACH,EAAE,EACF,EAAE,EACF,EAAE,EACF,QAAQ,EACR,UAAU,EACV,MAAM,EACN,MAAM,EACN,IAAI,EACJ,EAAE,EACF,EAAE,EACF,EAAE,EACF,EAAE,EACF,EAAE,EACF,EAAE,EACF,MAAM,EACN,EAAE,EACF,CAAC,EACD,MAAM,EACN,GAAG,EACH,KAAK,EACL,KAAK,EACL,MAAM,EACN,EAAE,EACF,IAAI,EACJ,IAAI,EACJ,GAAG,EACH,EAAE,EACF,QAAQ,EACR,MAAM,EACN,MAAM,EACN,CAAC,EACD,GAAG,EACH,QAAQ,EACR,OAAO,EACP,MAAM,EACN,KAAK,EACL,IAAI,EACJ,MAAM,EACN,GAAG,EACH,OAAO,EACP,GAAG,EACH,KAAK,EACL,KAAK,EACL,EAAE,EACF,QAAQ,EACR,KAAK,EACL,EAAE,EACF,KAAK,EACL,IAAI,EACJ,EAAE,EACF,EAAE,EACF,KAAK,GACN,MAAM,YAAY,CAAA;AAInB,OAAO,EAAE,UAAU,EAAE,KAAK,QAAQ,EAAE,MAAM,QAAQ,CAAA;AAIlD,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAA;AACpC,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA"}
|
package/dist/index.js
ADDED
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
// ── Types ─────────────────────────────────────────────────────────
|
|
2
|
+
// ── Component ─────────────────────────────────────────────────────
|
|
3
|
+
export { component } from './component';
|
|
4
|
+
export { createView } from './view-helpers';
|
|
5
|
+
// ── Mount ─────────────────────────────────────────────────────────
|
|
6
|
+
export { mountApp, hydrateApp } from './mount';
|
|
7
|
+
// ── Runtime ───────────────────────────────────────────────────────
|
|
8
|
+
export { flush } from './runtime';
|
|
9
|
+
export { addressOf } from './addressed';
|
|
10
|
+
export { renderToString } from './ssr';
|
|
11
|
+
export { mergeHandlers } from './merge-handlers';
|
|
12
|
+
export { createContext, provide, useContext } from './primitives/context';
|
|
13
|
+
export { sliceHandler } from './slice-handler';
|
|
14
|
+
// ── View Primitives ───────────────────────────────────────────────
|
|
15
|
+
export { text } from './primitives/text';
|
|
16
|
+
export { branch } from './primitives/branch';
|
|
17
|
+
export { each } from './primitives/each';
|
|
18
|
+
export { show } from './primitives/show';
|
|
19
|
+
export { slice } from './primitives/slice';
|
|
20
|
+
export { portal } from './primitives/portal';
|
|
21
|
+
export { foreign } from './primitives/foreign';
|
|
22
|
+
export { child } from './primitives/child';
|
|
23
|
+
export { memo } from './primitives/memo';
|
|
24
|
+
export { selector } from './primitives/selector';
|
|
25
|
+
export { onMount } from './primitives/on-mount';
|
|
26
|
+
export { errorBoundary } from './primitives/error-boundary';
|
|
27
|
+
// ── Element Helpers ───────────────────────────────────────────────
|
|
28
|
+
export { a, abbr, article, aside, b, blockquote, br, button, canvas, code, dd, details, dialog, div, dl, dt, em, fieldset, figcaption, figure, footer, form, h1, h2, h3, h4, h5, h6, header, hr, i, iframe, img, input, label, legend, li, main, mark, nav, ol, optgroup, option, output, p, pre, progress, section, select, small, span, strong, sub, summary, sup, table, tbody, td, textarea, tfoot, th, thead, time, tr, ul, video, } from './elements';
|
|
29
|
+
// ── Form Utilities ────────────────────────────────────────────────
|
|
30
|
+
export { applyField } from './form';
|
|
31
|
+
// ── Compiler Target ───────────────────────────────────────────────
|
|
32
|
+
export { elSplit } from './el-split';
|
|
33
|
+
export { elTemplate } from './el-template';
|
|
34
|
+
//# sourceMappingURL=index.js.map
|