@fukict/basic 0.1.8 → 0.1.10
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/dist/component-class/fukict.d.ts +11 -18
- package/dist/component-class/fukict.d.ts.map +1 -1
- package/dist/component-class/fukict.js +50 -65
- package/dist/component-class/fukict.js.map +1 -1
- package/dist/dev.d.ts +26 -0
- package/dist/dev.d.ts.map +1 -0
- package/dist/dev.js +46 -0
- package/dist/dev.js.map +1 -0
- package/dist/index.d.ts +2 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -1
- package/dist/metadata.d.ts +1 -1
- package/dist/metadata.js +1 -1
- package/dist/metadata.js.map +1 -1
- package/dist/renderer/class-helpers.d.ts +1 -2
- package/dist/renderer/class-helpers.d.ts.map +1 -1
- package/dist/renderer/class-helpers.js +6 -7
- package/dist/renderer/class-helpers.js.map +1 -1
- package/dist/renderer/create.js +3 -3
- package/dist/renderer/create.js.map +1 -1
- package/dist/renderer/diff/class.js +2 -2
- package/dist/renderer/diff/class.js.map +1 -1
- package/dist/renderer/diff/element.js +1 -1
- package/dist/renderer/diff/element.js.map +1 -1
- package/dist/renderer/diff/fragment.d.ts +1 -1
- package/dist/renderer/diff/fragment.js +4 -4
- package/dist/renderer/diff/fragment.js.map +1 -1
- package/dist/renderer/diff/function.d.ts +1 -1
- package/dist/renderer/diff/function.js +7 -7
- package/dist/renderer/diff/function.js.map +1 -1
- package/dist/renderer/diff/helpers.js +12 -12
- package/dist/renderer/diff/helpers.js.map +1 -1
- package/dist/renderer/diff/primitive.js +2 -2
- package/dist/renderer/diff/primitive.js.map +1 -1
- package/dist/renderer/index.d.ts.map +1 -1
- package/dist/renderer/index.js +17 -0
- package/dist/renderer/index.js.map +1 -1
- package/dist/renderer/mount.js +9 -9
- package/dist/renderer/mount.js.map +1 -1
- package/dist/renderer/vnode-helpers.js +5 -5
- package/dist/renderer/vnode-helpers.js.map +1 -1
- package/dist/types/class.d.ts +2 -2
- package/dist/types/class.d.ts.map +1 -1
- package/dist/types/core.d.ts +15 -16
- package/dist/types/core.d.ts.map +1 -1
- package/dist/types/core.js.map +1 -1
- package/dist/types/dev.d.ts +21 -0
- package/dist/types/dev.d.ts.map +1 -0
- package/dist/types/dev.js +8 -0
- package/dist/types/dev.js.map +1 -0
- package/dist/types/index.d.ts +1 -0
- package/dist/types/index.d.ts.map +1 -1
- package/dist/utils/context.d.ts +2 -3
- package/dist/utils/context.d.ts.map +1 -1
- package/dist/utils/context.js +6 -22
- package/dist/utils/context.js.map +1 -1
- package/dist/utils/dom-helpers.d.ts +3 -3
- package/dist/utils/dom-helpers.js +7 -7
- package/dist/utils/dom-helpers.js.map +1 -1
- package/package.json +1 -1
|
@@ -54,12 +54,12 @@ export declare abstract class Fukict<P extends Record<string, any> = {}, S exten
|
|
|
54
54
|
* Unique component instance ID (for debugging)
|
|
55
55
|
* @internal
|
|
56
56
|
*/
|
|
57
|
-
readonly
|
|
57
|
+
readonly $id: number;
|
|
58
58
|
/**
|
|
59
59
|
* Component name (for debugging)
|
|
60
60
|
* @internal
|
|
61
61
|
*/
|
|
62
|
-
readonly
|
|
62
|
+
readonly $name: string;
|
|
63
63
|
/**
|
|
64
64
|
* Component props (readonly)
|
|
65
65
|
* Automatically includes optional children property and fukict attributes
|
|
@@ -85,30 +85,23 @@ export declare abstract class Fukict<P extends Record<string, any> = {}, S exten
|
|
|
85
85
|
* Current rendered VNode (component's internal render result)
|
|
86
86
|
* @internal
|
|
87
87
|
*/
|
|
88
|
-
|
|
88
|
+
_render: VNode | null;
|
|
89
89
|
/**
|
|
90
|
-
*
|
|
91
|
-
* Used for context traversal - child can access parent's context via
|
|
90
|
+
* Parent component instance
|
|
91
|
+
* Used for context traversal - child can access parent's context via _parent
|
|
92
92
|
* @internal
|
|
93
93
|
*/
|
|
94
|
-
|
|
94
|
+
_parent: Fukict | null;
|
|
95
95
|
/**
|
|
96
96
|
* Parent DOM container
|
|
97
97
|
* @internal
|
|
98
98
|
*/
|
|
99
|
-
|
|
99
|
+
_container: Element | null;
|
|
100
100
|
/**
|
|
101
|
-
*
|
|
101
|
+
* Lifecycle phase (prevents re-entrant calls during lifecycle)
|
|
102
102
|
* @internal
|
|
103
103
|
*/
|
|
104
|
-
|
|
105
|
-
/**
|
|
106
|
-
* Lifecycle execution flags (prevent re-entrant calls during lifecycle)
|
|
107
|
-
* @internal
|
|
108
|
-
*/
|
|
109
|
-
__inUpdating__: boolean;
|
|
110
|
-
__inMounting__: boolean;
|
|
111
|
-
__inUnmounting__: boolean;
|
|
104
|
+
_phase: 'idle' | 'mounting' | 'updating' | 'unmounting';
|
|
112
105
|
/**
|
|
113
106
|
* Constructor
|
|
114
107
|
*/
|
|
@@ -150,8 +143,8 @@ export declare abstract class Fukict<P extends Record<string, any> = {}, S exten
|
|
|
150
143
|
* if context not found.
|
|
151
144
|
*
|
|
152
145
|
* Search order:
|
|
153
|
-
* 1. Current component's
|
|
154
|
-
* 2. Parent component's context (via
|
|
146
|
+
* 1. Current component's _render.__context__ (if component provided its own context)
|
|
147
|
+
* 2. Parent component's context (via _parent)
|
|
155
148
|
*
|
|
156
149
|
* @param key - Context key (Symbol or string)
|
|
157
150
|
* @param defaultValue - Default value if context not found
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fukict.d.ts","sourceRoot":"","sources":["../../src/component-class/fukict.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAErD,OAAO,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC1D,OAAO,KAAK,EACV,qBAAqB,EACrB,kBAAkB,EAClB,mBAAmB,EACpB,MAAM,4BAA4B,CAAC;AAOpC;;;;GAIG;AACH,MAAM,WAAW,SAAS;IACxB,QAAQ,CAAC,EAAE,UAAU,GAAG,UAAU,EAAE,CAAC;CACtC;AAED;;GAEG;AACH,MAAM,MAAM,oBAAoB,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,IAAI,CAAC,GACjE,SAAS,GACT,kBAAkB,GAClB,mBAAmB,GACnB,qBAAqB,CAAC;AAExB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AACH,8BAAsB,MAAM,CAC1B,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,EAAE,EAClC,CAAC,SAAS,KAAK,GAAG,KAAK;IAEvB;;;OAGG;IACH,QAAQ,CAAC,
|
|
1
|
+
{"version":3,"file":"fukict.d.ts","sourceRoot":"","sources":["../../src/component-class/fukict.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAErD,OAAO,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC1D,OAAO,KAAK,EACV,qBAAqB,EACrB,kBAAkB,EAClB,mBAAmB,EACpB,MAAM,4BAA4B,CAAC;AAOpC;;;;GAIG;AACH,MAAM,WAAW,SAAS;IACxB,QAAQ,CAAC,EAAE,UAAU,GAAG,UAAU,EAAE,CAAC;CACtC;AAED;;GAEG;AACH,MAAM,MAAM,oBAAoB,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,IAAI,CAAC,GACjE,SAAS,GACT,kBAAkB,GAClB,mBAAmB,GACnB,qBAAqB,CAAC;AAExB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AACH,8BAAsB,MAAM,CAC1B,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,EAAE,EAClC,CAAC,SAAS,KAAK,GAAG,KAAK;IAEvB;;;OAGG;IACH,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IAErB;;;OAGG;IACH,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IAEvB;;;OAGG;IACH,SAAS,CAAC,QAAQ,CAAC,KAAK,EAAE,oBAAoB,CAAC,CAAC,CAAC,CAAC;IAElD;;;;;;;OAOG;IACH,SAAS,CAAC,MAAM,EAAE,CAAC,CAAC;IAEpB;;;;;OAKG;IACH,QAAQ,CAAC,KAAK,EAAE,IAAI,CAAC;IAErB;;;OAGG;IACH,OAAO,EAAE,KAAK,GAAG,IAAI,CAAC;IAEtB;;;;OAIG;IACH,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAEvB;;;OAGG;IACH,UAAU,EAAE,OAAO,GAAG,IAAI,CAAC;IAE3B;;;OAGG;IACH,MAAM,EAAE,MAAM,GAAG,UAAU,GAAG,UAAU,GAAG,YAAY,CAAC;IAExD;;OAEG;gBACS,KAAK,EAAE,oBAAoB,CAAC,CAAC,CAAC;IAiB1C;;;;OAIG;IACH,QAAQ,CAAC,MAAM,IAAI,KAAK,GAAG,IAAI,GAAG,SAAS;IAE3C;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACH,SAAS,CAAC,cAAc,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,KAAK,EAAE,CAAC,GAAG,IAAI;IAkBjE;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA4BG;IACH,SAAS,CAAC,UAAU,CAAC,CAAC,EACpB,GAAG,EAAE,MAAM,GAAG,MAAM,EACpB,YAAY,CAAC,EAAE,CAAC,GACf,CAAC,GAAG,SAAS;IAsBhB;;;;;;;;OAQG;IACH,MAAM,CAAC,QAAQ,CAAC,EAAE,oBAAoB,CAAC,CAAC,CAAC,GAAG,IAAI;IAgDhD;;;;;OAKG;IACH,OAAO,CAAC,IAAI,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAEhC;;;;;OAKG;IACH,aAAa,CAAC,IAAI,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAEtC;;;;;OAKG;IACH,OAAO,CAAC,CAAC,SAAS,EAAE,oBAAoB,CAAC,CAAC,CAAC,GAAG,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAElE;;;;;OAKG;IACH,KAAK,CAAC,SAAS,EAAE,OAAO,EAAE,WAAW,CAAC,EAAE,OAAO,GAAG,IAAI;IA6BtD;;;;;OAKG;IACH,OAAO,IAAI,IAAI;CAkBhB"}
|
|
@@ -49,12 +49,12 @@ export class Fukict {
|
|
|
49
49
|
* Unique component instance ID (for debugging)
|
|
50
50
|
* @internal
|
|
51
51
|
*/
|
|
52
|
-
|
|
52
|
+
$id;
|
|
53
53
|
/**
|
|
54
54
|
* Component name (for debugging)
|
|
55
55
|
* @internal
|
|
56
56
|
*/
|
|
57
|
-
|
|
57
|
+
$name;
|
|
58
58
|
/**
|
|
59
59
|
* Component props (readonly)
|
|
60
60
|
* Automatically includes optional children property and fukict attributes
|
|
@@ -80,47 +80,37 @@ export class Fukict {
|
|
|
80
80
|
* Current rendered VNode (component's internal render result)
|
|
81
81
|
* @internal
|
|
82
82
|
*/
|
|
83
|
-
|
|
83
|
+
_render;
|
|
84
84
|
/**
|
|
85
|
-
*
|
|
86
|
-
* Used for context traversal - child can access parent's context via
|
|
85
|
+
* Parent component instance
|
|
86
|
+
* Used for context traversal - child can access parent's context via _parent
|
|
87
87
|
* @internal
|
|
88
88
|
*/
|
|
89
|
-
|
|
89
|
+
_parent;
|
|
90
90
|
/**
|
|
91
91
|
* Parent DOM container
|
|
92
92
|
* @internal
|
|
93
93
|
*/
|
|
94
|
-
|
|
94
|
+
_container;
|
|
95
95
|
/**
|
|
96
|
-
*
|
|
96
|
+
* Lifecycle phase (prevents re-entrant calls during lifecycle)
|
|
97
97
|
* @internal
|
|
98
98
|
*/
|
|
99
|
-
|
|
100
|
-
/**
|
|
101
|
-
* Lifecycle execution flags (prevent re-entrant calls during lifecycle)
|
|
102
|
-
* @internal
|
|
103
|
-
*/
|
|
104
|
-
__inUpdating__;
|
|
105
|
-
__inMounting__;
|
|
106
|
-
__inUnmounting__;
|
|
99
|
+
_phase;
|
|
107
100
|
/**
|
|
108
101
|
* Constructor
|
|
109
102
|
*/
|
|
110
103
|
constructor(props) {
|
|
111
|
-
this
|
|
112
|
-
this
|
|
104
|
+
this.$id = ++componentIdCounter;
|
|
105
|
+
this.$name = this.constructor.name;
|
|
113
106
|
this.props = props;
|
|
114
107
|
this.$slots = {};
|
|
115
108
|
// Initialize instance fields (avoid field initializers for better memory efficiency)
|
|
116
109
|
this.$refs = {};
|
|
117
|
-
this.
|
|
118
|
-
this.
|
|
119
|
-
this.
|
|
120
|
-
this.
|
|
121
|
-
this.__inUpdating__ = false;
|
|
122
|
-
this.__inMounting__ = false;
|
|
123
|
-
this.__inUnmounting__ = false;
|
|
110
|
+
this._render = null;
|
|
111
|
+
this._parent = null;
|
|
112
|
+
this._container = null;
|
|
113
|
+
this._phase = 'idle';
|
|
124
114
|
// Note: Do NOT call render() here!
|
|
125
115
|
// render() will be called in mount() after subclass constructor completes
|
|
126
116
|
}
|
|
@@ -148,17 +138,17 @@ export class Fukict {
|
|
|
148
138
|
* ```
|
|
149
139
|
*/
|
|
150
140
|
provideContext(key, value) {
|
|
151
|
-
if (!this.
|
|
152
|
-
console.warn(`[Fukict] Cannot provide context in component "${this
|
|
141
|
+
if (!this._render) {
|
|
142
|
+
console.warn(`[Fukict] Cannot provide context in component "${this.$name}": _render is null. ` +
|
|
153
143
|
`Make sure to call provideContext() after component is mounted.`);
|
|
154
144
|
return;
|
|
155
145
|
}
|
|
156
|
-
if (!this.
|
|
157
|
-
this.
|
|
158
|
-
__parent__: getParentContext(this.
|
|
146
|
+
if (!this._render.__context__) {
|
|
147
|
+
this._render.__context__ = {
|
|
148
|
+
__parent__: getParentContext(this._render),
|
|
159
149
|
};
|
|
160
150
|
}
|
|
161
|
-
this.
|
|
151
|
+
this._render.__context__[key] = createImmutableProxy(value);
|
|
162
152
|
}
|
|
163
153
|
/**
|
|
164
154
|
* Get context value from current or parent contexts
|
|
@@ -167,8 +157,8 @@ export class Fukict {
|
|
|
167
157
|
* if context not found.
|
|
168
158
|
*
|
|
169
159
|
* Search order:
|
|
170
|
-
* 1. Current component's
|
|
171
|
-
* 2. Parent component's context (via
|
|
160
|
+
* 1. Current component's _render.__context__ (if component provided its own context)
|
|
161
|
+
* 2. Parent component's context (via _parent)
|
|
172
162
|
*
|
|
173
163
|
* @param key - Context key (Symbol or string)
|
|
174
164
|
* @param defaultValue - Default value if context not found
|
|
@@ -191,8 +181,8 @@ export class Fukict {
|
|
|
191
181
|
*/
|
|
192
182
|
getContext(key, defaultValue) {
|
|
193
183
|
// First, check if this component has its own context
|
|
194
|
-
if (this.
|
|
195
|
-
let currentContext = this.
|
|
184
|
+
if (this._render && this._render.__context__) {
|
|
185
|
+
let currentContext = this._render.__context__;
|
|
196
186
|
// Traverse up the chain starting from current component
|
|
197
187
|
while (currentContext) {
|
|
198
188
|
if (key in currentContext) {
|
|
@@ -202,12 +192,8 @@ export class Fukict {
|
|
|
202
192
|
}
|
|
203
193
|
}
|
|
204
194
|
// If not found in own context chain, look in parent component
|
|
205
|
-
if (this.
|
|
206
|
-
|
|
207
|
-
if (parentInstance) {
|
|
208
|
-
// Recursively search in parent
|
|
209
|
-
return parentInstance.getContext(key, defaultValue);
|
|
210
|
-
}
|
|
195
|
+
if (this._parent) {
|
|
196
|
+
return this._parent.getContext(key, defaultValue);
|
|
211
197
|
}
|
|
212
198
|
return defaultValue;
|
|
213
199
|
}
|
|
@@ -222,13 +208,13 @@ export class Fukict {
|
|
|
222
208
|
*/
|
|
223
209
|
update(newProps) {
|
|
224
210
|
// Prevent re-entrant update during lifecycle hooks
|
|
225
|
-
if (this.
|
|
226
|
-
console.warn(`[Fukict] Component "${this
|
|
211
|
+
if (this._phase !== 'idle') {
|
|
212
|
+
console.warn(`[Fukict] Component "${this.$name}" tried to update during lifecycle execution (phase: ${this._phase}). ` +
|
|
227
213
|
`This is not allowed and the update was ignored. ` +
|
|
228
214
|
`Do not call update() or trigger parent updates in mounted/updated/beforeUnmount hooks.`);
|
|
229
215
|
return;
|
|
230
216
|
}
|
|
231
|
-
this.
|
|
217
|
+
this._phase = 'updating';
|
|
232
218
|
const prevProps = this.props;
|
|
233
219
|
// Update props (use current props if not provided)
|
|
234
220
|
if (newProps !== undefined) {
|
|
@@ -241,18 +227,18 @@ export class Fukict {
|
|
|
241
227
|
? createPrimitiveVNode(rawVNode)
|
|
242
228
|
: rawVNode;
|
|
243
229
|
// Preserve context from old VNode to new VNode
|
|
244
|
-
if (this.
|
|
245
|
-
newVNode.__context__ = this.
|
|
230
|
+
if (this._render?.__context__) {
|
|
231
|
+
newVNode.__context__ = this._render.__context__;
|
|
246
232
|
}
|
|
247
233
|
// Diff and patch (let diff handle all cases including PrimitiveVNode)
|
|
248
|
-
if (this.
|
|
249
|
-
diff(this.
|
|
234
|
+
if (this._render && this._container) {
|
|
235
|
+
diff(this._render, newVNode, this._container);
|
|
250
236
|
}
|
|
251
|
-
this.
|
|
237
|
+
this._render = newVNode;
|
|
252
238
|
// Call lifecycle hook (protected from re-entry)
|
|
253
239
|
// eslint-disable-next-line @typescript-eslint/no-floating-promises -- async lifecycle hooks are intentionally not awaited
|
|
254
240
|
this.updated?.(prevProps);
|
|
255
|
-
this.
|
|
241
|
+
this._phase = 'idle';
|
|
256
242
|
}
|
|
257
243
|
/**
|
|
258
244
|
* Mount component to DOM
|
|
@@ -261,26 +247,25 @@ export class Fukict {
|
|
|
261
247
|
* @sealed
|
|
262
248
|
*/
|
|
263
249
|
mount(container, placeholder) {
|
|
264
|
-
this.
|
|
265
|
-
this.
|
|
266
|
-
this.__inMounting__ = true;
|
|
250
|
+
this._container = placeholder?.parentElement || container;
|
|
251
|
+
this._phase = 'mounting';
|
|
267
252
|
// First render (if not already rendered)
|
|
268
|
-
if (!this.
|
|
253
|
+
if (!this._render) {
|
|
269
254
|
const rawVNode = this.render();
|
|
270
255
|
// Wrap null/undefined as PrimitiveVNode
|
|
271
|
-
this.
|
|
256
|
+
this._render =
|
|
272
257
|
rawVNode === null || rawVNode === undefined
|
|
273
258
|
? createPrimitiveVNode(rawVNode)
|
|
274
259
|
: rawVNode;
|
|
275
260
|
}
|
|
276
|
-
// Create real DOM for instance.
|
|
277
|
-
createRealNode(this.
|
|
278
|
-
// Recursively activate nested components in instance.
|
|
261
|
+
// Create real DOM for instance._render (pass this for fukict:ref)
|
|
262
|
+
createRealNode(this._render, this);
|
|
263
|
+
// Recursively activate nested components in instance._render
|
|
279
264
|
activate({
|
|
280
|
-
vnode: this.
|
|
265
|
+
vnode: this._render,
|
|
281
266
|
...(placeholder ? { placeholder } : { container }),
|
|
282
267
|
onMounted: () => {
|
|
283
|
-
this.
|
|
268
|
+
this._phase = 'idle';
|
|
284
269
|
// eslint-disable-next-line @typescript-eslint/no-floating-promises -- async lifecycle hooks are intentionally not awaited
|
|
285
270
|
this.mounted?.();
|
|
286
271
|
},
|
|
@@ -293,17 +278,17 @@ export class Fukict {
|
|
|
293
278
|
* @sealed
|
|
294
279
|
*/
|
|
295
280
|
unmount() {
|
|
296
|
-
this.
|
|
281
|
+
this._phase = 'unmounting';
|
|
297
282
|
// eslint-disable-next-line @typescript-eslint/no-floating-promises -- async lifecycle hooks are intentionally not awaited
|
|
298
283
|
this.beforeUnmount?.();
|
|
299
|
-
removeNode(this.
|
|
284
|
+
removeNode(this._render, this._container);
|
|
300
285
|
// Clear all refs ($refs now store instances directly, not Ref wrappers)
|
|
301
286
|
for (const key in this.$refs) {
|
|
302
287
|
delete this.$refs[key];
|
|
303
288
|
}
|
|
304
|
-
this.
|
|
305
|
-
this.
|
|
306
|
-
this.
|
|
289
|
+
this._render = null;
|
|
290
|
+
this._container = null;
|
|
291
|
+
this._phase = 'idle';
|
|
307
292
|
}
|
|
308
293
|
}
|
|
309
294
|
//# sourceMappingURL=fukict.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fukict.js","sourceRoot":"","sources":["../../src/component-class/fukict.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAC7D,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAShD,OAAO,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAC7E,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAEnD,mDAAmD;AACnD,IAAI,kBAAkB,GAAG,CAAC,CAAC;AAoB3B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AACH,MAAM,OAAgB,MAAM;IAI1B;;;OAGG;IACM,
|
|
1
|
+
{"version":3,"file":"fukict.js","sourceRoot":"","sources":["../../src/component-class/fukict.ts"],"names":[],"mappings":"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"}
|
package/dist/dev.d.ts
ADDED
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { FukictDevInfo } from './types';
|
|
2
|
+
/**
|
|
3
|
+
* Get or initialize the global dev info object.
|
|
4
|
+
* Returns `undefined` in production or non-browser environments.
|
|
5
|
+
*/
|
|
6
|
+
export declare function getDevInfo(): FukictDevInfo | undefined;
|
|
7
|
+
/**
|
|
8
|
+
* Register ecosystem package dev context onto `window.__FUKICT__`.
|
|
9
|
+
*
|
|
10
|
+
* @param key - Context key (e.g. 'stores', 'router')
|
|
11
|
+
* @param value - Context value
|
|
12
|
+
* @returns The dev info object, or `undefined` if not in dev mode
|
|
13
|
+
*
|
|
14
|
+
* @example
|
|
15
|
+
* ```typescript
|
|
16
|
+
* // In @fukict/flux
|
|
17
|
+
* import { registerDevContext } from '@fukict/basic';
|
|
18
|
+
* registerDevContext('stores', []);
|
|
19
|
+
*
|
|
20
|
+
* // In @fukict/router
|
|
21
|
+
* import { registerDevContext } from '@fukict/basic';
|
|
22
|
+
* registerDevContext('router', { instance: this, mode, routes });
|
|
23
|
+
* ```
|
|
24
|
+
*/
|
|
25
|
+
export declare function registerDevContext(key: string, value: unknown): FukictDevInfo | undefined;
|
|
26
|
+
//# sourceMappingURL=dev.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dev.d.ts","sourceRoot":"","sources":["../src/dev.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAExC;;;GAGG;AACH,wBAAgB,UAAU,IAAI,aAAa,GAAG,SAAS,CAQtD;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,kBAAkB,CAChC,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,OAAO,GACb,aAAa,GAAG,SAAS,CAM3B"}
|
package/dist/dev.js
ADDED
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Dev-mode utilities for Fukict ecosystem packages.
|
|
3
|
+
*
|
|
4
|
+
* Provides a unified API for registering dev context on `window.__FUKICT__`.
|
|
5
|
+
* Only active in dev mode (process.env.NODE_ENV !== 'production').
|
|
6
|
+
*/
|
|
7
|
+
import { METADATA } from './metadata.js';
|
|
8
|
+
/**
|
|
9
|
+
* Get or initialize the global dev info object.
|
|
10
|
+
* Returns `undefined` in production or non-browser environments.
|
|
11
|
+
*/
|
|
12
|
+
export function getDevInfo() {
|
|
13
|
+
if (process.env.NODE_ENV !== 'production' && typeof window !== 'undefined') {
|
|
14
|
+
if (!window.__FUKICT__) {
|
|
15
|
+
window.__FUKICT__ = { version: METADATA.version, roots: [] };
|
|
16
|
+
}
|
|
17
|
+
return window.__FUKICT__;
|
|
18
|
+
}
|
|
19
|
+
return undefined;
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Register ecosystem package dev context onto `window.__FUKICT__`.
|
|
23
|
+
*
|
|
24
|
+
* @param key - Context key (e.g. 'stores', 'router')
|
|
25
|
+
* @param value - Context value
|
|
26
|
+
* @returns The dev info object, or `undefined` if not in dev mode
|
|
27
|
+
*
|
|
28
|
+
* @example
|
|
29
|
+
* ```typescript
|
|
30
|
+
* // In @fukict/flux
|
|
31
|
+
* import { registerDevContext } from '@fukict/basic';
|
|
32
|
+
* registerDevContext('stores', []);
|
|
33
|
+
*
|
|
34
|
+
* // In @fukict/router
|
|
35
|
+
* import { registerDevContext } from '@fukict/basic';
|
|
36
|
+
* registerDevContext('router', { instance: this, mode, routes });
|
|
37
|
+
* ```
|
|
38
|
+
*/
|
|
39
|
+
export function registerDevContext(key, value) {
|
|
40
|
+
const devInfo = getDevInfo();
|
|
41
|
+
if (devInfo) {
|
|
42
|
+
devInfo[key] = value;
|
|
43
|
+
}
|
|
44
|
+
return devInfo;
|
|
45
|
+
}
|
|
46
|
+
//# sourceMappingURL=dev.js.map
|
package/dist/dev.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dev.js","sourceRoot":"","sources":["../src/dev.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAGzC;;;GAGG;AACH,MAAM,UAAU,UAAU;IACxB,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,YAAY,IAAI,OAAO,MAAM,KAAK,WAAW,EAAE,CAAC;QAC3E,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC;YACvB,MAAM,CAAC,UAAU,GAAG,EAAE,OAAO,EAAE,QAAQ,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;QAC/D,CAAC;QACD,OAAO,MAAM,CAAC,UAAU,CAAC;IAC3B,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,UAAU,kBAAkB,CAChC,GAAW,EACX,KAAc;IAEd,MAAM,OAAO,GAAG,UAAU,EAAE,CAAC;IAC7B,IAAI,OAAO,EAAE,CAAC;QACZ,OAAO,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;IACvB,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
*/
|
|
6
6
|
import { METADATA } from './metadata.js';
|
|
7
7
|
export { METADATA };
|
|
8
|
-
export declare const VERSION: "0.1.
|
|
8
|
+
export declare const VERSION: "0.1.10";
|
|
9
9
|
export type { VNode, VNodeChild, ElementVNode, FragmentVNode, FunctionComponentVNode, ClassComponentVNode, UnregisterFn, RefCallback, CSSProperties, ClassValue, RuntimeAttributes, EventHandlers, HTMLAttributes, SVGAttributes, Slots, Ref, Refs, FukictLifecycle, FukictComponent, FukictProps, FukictSlots, FukictConstructor, } from './types/index.js';
|
|
10
10
|
export type { Context, ContextData } from './types/context.js';
|
|
11
11
|
export { VNodeType } from './types/index.js';
|
|
@@ -19,4 +19,5 @@ export { attach, replaceNode, unmount, diff } from './renderer/index.js';
|
|
|
19
19
|
export { createRealNode } from './renderer/create.js';
|
|
20
20
|
export { isDomArray, normalizeDom, getFirstDomNode, getAllDomNodes, isVNode, } from './utils/dom-helpers.js';
|
|
21
21
|
export * as dom from './dom/index.js';
|
|
22
|
+
export { getDevInfo, registerDevContext } from './dev.js';
|
|
22
23
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAEzC,OAAO,EAAE,QAAQ,EAAE,CAAC;AAEpB,eAAO,MAAM,OAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAEzC,OAAO,EAAE,QAAQ,EAAE,CAAC;AAEpB,eAAO,MAAM,OAAO,UAAmB,CAAC;AAGxC,YAAY,EACV,KAAK,EACL,UAAU,EACV,YAAY,EACZ,aAAa,EACb,sBAAsB,EACtB,mBAAmB,EACnB,YAAY,EACZ,WAAW,EACX,aAAa,EACb,UAAU,EACV,iBAAiB,EACjB,aAAa,EACb,cAAc,EACd,aAAa,EACb,KAAK,EACL,GAAG,EACH,IAAI,EACJ,eAAe,EACf,eAAe,EACf,WAAW,EACX,WAAW,EACX,iBAAiB,GAClB,MAAM,kBAAkB,CAAC;AAG1B,YAAY,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAE/D,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAG7C,YAAY,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AAE1C,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAG5C,OAAO,EAAE,WAAW,EAAE,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AAG/D,OAAO,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAC;AAGpD,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAC7D,YAAY,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAGvE,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAC;AAGzE,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAGtD,OAAO,EACL,UAAU,EACV,YAAY,EACZ,eAAe,EACf,cAAc,EACd,OAAO,GACR,MAAM,wBAAwB,CAAC;AAGhC,OAAO,KAAK,GAAG,MAAM,gBAAgB,CAAC;AAGtC,OAAO,EAAE,UAAU,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -23,4 +23,6 @@ export { createRealNode } from './renderer/create.js';
|
|
|
23
23
|
export { isDomArray, normalizeDom, getFirstDomNode, getAllDomNodes, isVNode, } from './utils/dom-helpers.js';
|
|
24
24
|
// DOM utilities (exported for widget package use)
|
|
25
25
|
export * as dom from './dom/index.js';
|
|
26
|
+
// Dev-mode utilities (for ecosystem packages)
|
|
27
|
+
export { getDevInfo, registerDevContext } from './dev.js';
|
|
26
28
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,mBAAmB;AACnB,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAEzC,OAAO,EAAE,QAAQ,EAAE,CAAC;AAEpB,MAAM,CAAC,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC;AA+BxC,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAK7C,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAE5C,iBAAiB;AACjB,OAAO,EAAE,WAAW,EAAE,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AAE/D,kBAAkB;AAClB,OAAO,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAC;AAEpD,qBAAqB;AACrB,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAG7D,YAAY;AACZ,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAC;AAEzE,gDAAgD;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAEtD,uBAAuB;AACvB,OAAO,EACL,UAAU,EACV,YAAY,EACZ,eAAe,EACf,cAAc,EACd,OAAO,GACR,MAAM,wBAAwB,CAAC;AAEhC,kDAAkD;AAClD,OAAO,KAAK,GAAG,MAAM,gBAAgB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,mBAAmB;AACnB,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAEzC,OAAO,EAAE,QAAQ,EAAE,CAAC;AAEpB,MAAM,CAAC,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC;AA+BxC,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAK7C,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAE5C,iBAAiB;AACjB,OAAO,EAAE,WAAW,EAAE,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AAE/D,kBAAkB;AAClB,OAAO,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAC;AAEpD,qBAAqB;AACrB,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAG7D,YAAY;AACZ,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAC;AAEzE,gDAAgD;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAEtD,uBAAuB;AACvB,OAAO,EACL,UAAU,EACV,YAAY,EACZ,eAAe,EACf,cAAc,EACd,OAAO,GACR,MAAM,wBAAwB,CAAC;AAEhC,kDAAkD;AAClD,OAAO,KAAK,GAAG,MAAM,gBAAgB,CAAC;AAEtC,8CAA8C;AAC9C,OAAO,EAAE,UAAU,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC"}
|
package/dist/metadata.d.ts
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
*/
|
|
5
5
|
export declare const METADATA: {
|
|
6
6
|
readonly name: "@fukict/basic";
|
|
7
|
-
readonly version: "0.1.
|
|
7
|
+
readonly version: "0.1.10";
|
|
8
8
|
readonly description: "Lightweight DOM rendering basic with extension mechanism";
|
|
9
9
|
readonly author: "Fukict Team";
|
|
10
10
|
readonly license: "MIT";
|
package/dist/metadata.js
CHANGED
package/dist/metadata.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"metadata.js","sourceRoot":"","sources":["../src/metadata.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,CAAC,MAAM,QAAQ,GAAG;IACtB,IAAI,EAAE,eAAe;IACrB,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"metadata.js","sourceRoot":"","sources":["../src/metadata.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,CAAC,MAAM,QAAQ,GAAG;IACtB,IAAI,EAAE,eAAe;IACrB,OAAO,EAAE,QAAQ;IACjB,WAAW,EAAE,0DAA0D;IACvE,MAAM,EAAE,aAAa;IACrB,OAAO,EAAE,KAAK;IACd,QAAQ,EAAE,EAAE;IACZ,UAAU,EAAE,sCAAsC;CAC1C,CAAC"}
|
|
@@ -6,8 +6,7 @@ import type { ClassComponentVNode } from '../types/index.js';
|
|
|
6
6
|
* 1. Saves instance to vnode
|
|
7
7
|
* 2. Extracts and sets slots from children, marks slot owner
|
|
8
8
|
* 3. Registers instance to parent's $refs (if fukict:ref is specified)
|
|
9
|
-
* 4.
|
|
10
|
-
* 5. Updates parent instance reference on wrapper VNode
|
|
9
|
+
* 4. Sets parent instance reference
|
|
11
10
|
*
|
|
12
11
|
* Used by both renderClassComponent (create) and diffClassComponent (update).
|
|
13
12
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"class-helpers.d.ts","sourceRoot":"","sources":["../../src/renderer/class-helpers.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,mBAAmB,EAAS,MAAM,mBAAmB,CAAC;AAgDpE
|
|
1
|
+
{"version":3,"file":"class-helpers.d.ts","sourceRoot":"","sources":["../../src/renderer/class-helpers.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,mBAAmB,EAAS,MAAM,mBAAmB,CAAC;AAgDpE;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,wBAAwB,CACtC,KAAK,EAAE,mBAAmB,EAC1B,QAAQ,EAAE,OAAO,EACjB,cAAc,CAAC,EAAE,OAAO,GACvB,IAAI,CAuCN"}
|
|
@@ -39,8 +39,7 @@ function markRefOwner(slots, refOwner) {
|
|
|
39
39
|
* 1. Saves instance to vnode
|
|
40
40
|
* 2. Extracts and sets slots from children, marks slot owner
|
|
41
41
|
* 3. Registers instance to parent's $refs (if fukict:ref is specified)
|
|
42
|
-
* 4.
|
|
43
|
-
* 5. Updates parent instance reference on wrapper VNode
|
|
42
|
+
* 4. Sets parent instance reference
|
|
44
43
|
*
|
|
45
44
|
* Used by both renderClassComponent (create) and diffClassComponent (update).
|
|
46
45
|
*
|
|
@@ -73,11 +72,11 @@ export function setupClassComponentVNode(vnode, instance, parentInstance) {
|
|
|
73
72
|
targetInternal.$refs[refName] = instance;
|
|
74
73
|
}
|
|
75
74
|
}
|
|
76
|
-
// 4.
|
|
77
|
-
|
|
78
|
-
//
|
|
79
|
-
if (parentInstance) {
|
|
80
|
-
|
|
75
|
+
// 4. Set parent instance reference (for context chain)
|
|
76
|
+
// Only update when parentInstance is explicitly provided (during creation).
|
|
77
|
+
// During diff, parentInstance is undefined — preserve existing _parent.
|
|
78
|
+
if (parentInstance !== undefined) {
|
|
79
|
+
instanceInternal._parent = parentInstance;
|
|
81
80
|
}
|
|
82
81
|
}
|
|
83
82
|
//# sourceMappingURL=class-helpers.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"class-helpers.js","sourceRoot":"","sources":["../../src/renderer/class-helpers.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAqB1D;;;;;;;;;;;GAWG;AACH,SAAS,YAAY,CAAC,KAA8B,EAAE,QAAiB;IACrE,IAAI,CAAC,QAAQ;QAAE,OAAO;IAEtB,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;QACxC,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;YACxB,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;gBACnB,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,IAAI,UAAU,IAAI,KAAK,EAAE,CAAC;oBAC7D,KAA2B,CAAC,YAAY,GAAG,QAAQ,CAAC;gBACvD,CAAC;YACH,CAAC,CAAC,CAAC;QACL,CAAC;aAAM,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,IAAI,UAAU,IAAI,IAAI,EAAE,CAAC;YACjE,IAA0B,CAAC,YAAY,GAAG,QAAQ,CAAC;QACtD,CAAC;IACH,CAAC;AACH,CAAC;AAED
|
|
1
|
+
{"version":3,"file":"class-helpers.js","sourceRoot":"","sources":["../../src/renderer/class-helpers.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAqB1D;;;;;;;;;;;GAWG;AACH,SAAS,YAAY,CAAC,KAA8B,EAAE,QAAiB;IACrE,IAAI,CAAC,QAAQ;QAAE,OAAO;IAEtB,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;QACxC,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;YACxB,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;gBACnB,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,IAAI,UAAU,IAAI,KAAK,EAAE,CAAC;oBAC7D,KAA2B,CAAC,YAAY,GAAG,QAAQ,CAAC;gBACvD,CAAC;YACH,CAAC,CAAC,CAAC;QACL,CAAC;aAAM,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,IAAI,UAAU,IAAI,IAAI,EAAE,CAAC;YACjE,IAA0B,CAAC,YAAY,GAAG,QAAQ,CAAC;QACtD,CAAC;IACH,CAAC;AACH,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,wBAAwB,CACtC,KAA0B,EAC1B,QAAiB,EACjB,cAAwB;IAExB,MAAM,gBAAgB,GAAG,QAAqC,CAAC;IAE/D,4BAA4B;IAC5B,KAAK,CAAC,YAAY,GAAG,QAAQ,CAAC;IAE9B,yCAAyC;IACzC,6EAA6E;IAC7E,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;QACnB,MAAM,KAAK,GAAG,YAAY,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QAE3C,yDAAyD;QACzD,uFAAuF;QACvF,YAAY,CAAC,KAAK,EAAE,cAAc,CAAC,CAAC;QAEpC,gBAAgB,CAAC,MAAM,GAAG,KAAK,CAAC;IAClC,CAAC;IAED,4CAA4C;IAC5C,2DAA2D;IAC3D,wDAAwD;IACxD,MAAM,SAAS,GAAI,KAA2B,CAAC,YAAY,IAAI,cAAc,CAAC;IAE9E,IAAI,SAAS,IAAI,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,KAAK,CAAC,YAAY,CAAC,EAAE,CAAC;QAC1D,MAAM,OAAO,GAAY,KAAK,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;QACnD,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;YAChC,MAAM,cAAc,GAAG,SAAsC,CAAC;YAE9D,8DAA8D;YAC9D,cAAc,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,QAAQ,CAAC;QAC3C,CAAC;IACH,CAAC;IAED,uDAAuD;IACvD,4EAA4E;IAC5E,wEAAwE;IACxE,IAAI,cAAc,KAAK,SAAS,EAAE,CAAC;QACjC,gBAAgB,CAAC,OAAO,GAAG,cAAc,CAAC;IAC5C,CAAC;AACH,CAAC"}
|
package/dist/renderer/create.js
CHANGED
|
@@ -155,7 +155,7 @@ function renderFunctionComponent(vnode, componentInstance) {
|
|
|
155
155
|
// Type assertion after runtime check
|
|
156
156
|
const funcVNode = vnode;
|
|
157
157
|
const { type, props, children } = funcVNode;
|
|
158
|
-
// Merge children into props
|
|
158
|
+
// Merge children into props
|
|
159
159
|
const propsWithChildren = {
|
|
160
160
|
...props,
|
|
161
161
|
children: children.length === 1 ? children[0] : children,
|
|
@@ -193,9 +193,9 @@ function renderClassComponent(vnode, componentInstance) {
|
|
|
193
193
|
// 2. Setup ClassComponentVNode: instance, slots, refs, wrapper, parent reference
|
|
194
194
|
setupClassComponentVNode(classVNode, instance, componentInstance);
|
|
195
195
|
// 3. Create comment placeholder with instance ID and name
|
|
196
|
-
const placeholder = dom.createComment(`fukict:${instance
|
|
196
|
+
const placeholder = dom.createComment(`fukict:${instance.$name}#${instance.$id}`);
|
|
197
197
|
// 4. Save placeholder to vnode
|
|
198
|
-
classVNode.
|
|
198
|
+
classVNode.__node__ = placeholder;
|
|
199
199
|
return placeholder;
|
|
200
200
|
}
|
|
201
201
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create.js","sourceRoot":"","sources":["../../src/renderer/create.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"create.js","sourceRoot":"","sources":["../../src/renderer/create.ts"],"names":[],"mappings":"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"}
|
|
@@ -26,10 +26,10 @@ export function diffClassComponent(oldVNode, newVNode, container, parentInstance
|
|
|
26
26
|
console.warn('[diffClassComponent] Instance is undefined, skipping diff');
|
|
27
27
|
return;
|
|
28
28
|
}
|
|
29
|
-
// Setup ClassComponentVNode: instance, slots, refs,
|
|
29
|
+
// Setup ClassComponentVNode: instance, slots, refs, parent reference
|
|
30
30
|
setupClassComponentVNode(newClassVNode, instance, parentInstance);
|
|
31
31
|
// Copy placeholder from old vnode
|
|
32
|
-
newClassVNode.
|
|
32
|
+
newClassVNode.__node__ = oldClassVNode.__node__;
|
|
33
33
|
// Check detached mode
|
|
34
34
|
if (newClassVNode.props && newClassVNode.props['fukict:detach']) {
|
|
35
35
|
// Detached mode: only update props, skip update()
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"class.js","sourceRoot":"","sources":["../../../src/renderer/diff/class.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,EAAE,wBAAwB,EAAE,MAAM,qBAAqB,CAAC;AAC/D,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAU3C;;;;;GAKG;AACH,MAAM,UAAU,kBAAkB,CAChC,QAAe,EACf,QAAe,EACf,SAAkB,EAClB,cAAgC;IAEhC,IACE,QAAQ,CAAC,QAAQ,KAAK,SAAS,CAAC,cAAc;QAC9C,QAAQ,CAAC,QAAQ,KAAK,SAAS,CAAC,cAAc,EAC9C,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC;IAClD,CAAC;IAED,qCAAqC;IACrC,MAAM,aAAa,GAAG,QAA+B,CAAC;IACtD,MAAM,aAAa,GAAG,QAA+B,CAAC;IAEtD,2CAA2C;IAC3C,IAAI,aAAa,CAAC,IAAI,KAAK,aAAa,CAAC,IAAI,EAAE,CAAC;QAC9C,WAAW,CAAC,aAAa,EAAE,aAAa,EAAE,SAAS,CAAC,CAAC;QACrD,OAAO;IACT,CAAC;IAED,iBAAiB;IACjB,MAAM,QAAQ,GAAG,aAAa,CAAC,YAElB,CAAC;IAEd,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,OAAO,CAAC,IAAI,CAAC,2DAA2D,CAAC,CAAC;QAC1E,OAAO;IACT,CAAC;IAED,
|
|
1
|
+
{"version":3,"file":"class.js","sourceRoot":"","sources":["../../../src/renderer/diff/class.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,EAAE,wBAAwB,EAAE,MAAM,qBAAqB,CAAC;AAC/D,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAU3C;;;;;GAKG;AACH,MAAM,UAAU,kBAAkB,CAChC,QAAe,EACf,QAAe,EACf,SAAkB,EAClB,cAAgC;IAEhC,IACE,QAAQ,CAAC,QAAQ,KAAK,SAAS,CAAC,cAAc;QAC9C,QAAQ,CAAC,QAAQ,KAAK,SAAS,CAAC,cAAc,EAC9C,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC;IAClD,CAAC;IAED,qCAAqC;IACrC,MAAM,aAAa,GAAG,QAA+B,CAAC;IACtD,MAAM,aAAa,GAAG,QAA+B,CAAC;IAEtD,2CAA2C;IAC3C,IAAI,aAAa,CAAC,IAAI,KAAK,aAAa,CAAC,IAAI,EAAE,CAAC;QAC9C,WAAW,CAAC,aAAa,EAAE,aAAa,EAAE,SAAS,CAAC,CAAC;QACrD,OAAO;IACT,CAAC;IAED,iBAAiB;IACjB,MAAM,QAAQ,GAAG,aAAa,CAAC,YAElB,CAAC;IAEd,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,OAAO,CAAC,IAAI,CAAC,2DAA2D,CAAC,CAAC;QAC1E,OAAO;IACT,CAAC;IAED,qEAAqE;IACrE,wBAAwB,CAAC,aAAa,EAAE,QAAQ,EAAE,cAAc,CAAC,CAAC;IAElE,kCAAkC;IAClC,aAAa,CAAC,QAAQ,GAAG,aAAa,CAAC,QAAQ,CAAC;IAEhD,sBAAsB;IACtB,IAAI,aAAa,CAAC,KAAK,IAAI,aAAa,CAAC,KAAK,CAAC,eAAe,CAAC,EAAE,CAAC;QAChE,kDAAkD;QAClD,gEAAgE;QAC/D,QAAQ,CAAC,KAA6B,GAAG,aAAa,CAAC,KAAK,CAAC;QAC9D,OAAO;IACT,CAAC;IAED,8CAA8C;IAC9C,IAAI,OAAO,QAAQ,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;QAC1C,QAAQ,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC;IAC7C,CAAC;AACH,CAAC"}
|