@stencil/core 5.0.0-alpha.5 → 5.0.0-alpha.7
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/{client-Dnio47yQ.mjs → client-Dd-NB5Ei.mjs} +2324 -2125
- package/dist/compiler/index.d.mts +5 -5
- package/dist/compiler/index.mjs +2 -2
- package/dist/compiler/utils/index.d.mts +2 -2
- package/dist/compiler/utils/index.mjs +3 -3
- package/dist/{compiler-Dxri2g8Z.mjs → compiler-BmT_yLHU.mjs} +13458 -12695
- package/dist/declarations/stencil-public-compiler.d.ts +273 -144
- package/dist/declarations/stencil-public-docs.d.ts +10 -0
- package/dist/declarations/stencil-public-runtime.d.ts +49 -12
- package/dist/{index-D61XZw0f.d.ts → index-BuveMLxy.d.ts} +82 -31
- package/dist/{index-D5zaocDq.d.mts → index-CVhWFUM0.d.mts} +249 -204
- package/dist/{index-Dat4djoo.d.mts → index-ch-cf-bZ.d.mts} +13 -2
- package/dist/index.d.mts +0 -1
- package/dist/index.mjs +1 -1
- package/dist/jsx-runtime.d.mts +18 -0
- package/dist/jsx-runtime.mjs +2 -0
- package/dist/{node-pj6rF4Wt.mjs → node-10UamZmn.mjs} +59 -55
- package/dist/{regular-expression-D0_N0PGa.mjs → regular-expression-CFVJOTUh.mjs} +83 -8
- package/dist/runtime/app-data/index.d.ts +1 -1
- package/dist/runtime/app-data/index.js +15 -9
- package/dist/{runtime-CKyUrF4i.js → runtime/client/lazy.js} +2539 -2199
- package/dist/runtime/client/{index.d.ts → runtime.d.ts} +49 -40
- package/dist/runtime/client/{index.js → runtime.js} +2401 -2185
- package/dist/runtime/index.d.ts +20 -3
- package/dist/runtime/index.js +4956 -2
- package/dist/runtime/server/index.d.mts +30 -39
- package/dist/runtime/server/index.mjs +2369 -2185
- package/dist/runtime/server/runner.d.mts +4 -6
- package/dist/runtime/server/runner.mjs +307 -361
- package/dist/signals/index.d.ts +47 -0
- package/dist/signals/index.js +199 -0
- package/dist/sys/node/index.d.mts +1 -1
- package/dist/sys/node/index.mjs +1 -1
- package/dist/sys/node/worker.mjs +2 -2
- package/dist/testing/index.d.mts +97 -3
- package/dist/testing/index.mjs +199 -50
- package/dist/{validation-BA8nzXu_.mjs → validation-ByxKj8bC.mjs} +21 -32
- package/package.json +41 -27
- package/dist/index-D-XN9HW_.d.ts +0 -30
- package/dist/jsx-runtime-B3vQbWIW.d.ts +0 -28
- package/dist/jsx-runtime.d.ts +0 -2
- package/dist/jsx-runtime.js +0 -2
- /package/dist/{chunk-CjcI7cDX.mjs → chunk-z9aeyW2b.mjs} +0 -0
|
@@ -20,6 +20,11 @@ interface ComponentCompilerPropertyComplexType {
|
|
|
20
20
|
* annotation in the original source file.
|
|
21
21
|
*/
|
|
22
22
|
references: ComponentCompilerTypeReferences;
|
|
23
|
+
/**
|
|
24
|
+
* @internal TypeScript AST node used for semantic type analysis during compilation.
|
|
25
|
+
* Not serialized, only used internally for improved type renaming logic.
|
|
26
|
+
*/
|
|
27
|
+
_astNode?: any;
|
|
23
28
|
}
|
|
24
29
|
/**
|
|
25
30
|
* A record of `ComponentCompilerTypeReference` entities.
|
|
@@ -90,6 +95,11 @@ interface ComponentCompilerMethodComplexType {
|
|
|
90
95
|
parameters: JsonDocMethodParameter[];
|
|
91
96
|
references: ComponentCompilerTypeReferences;
|
|
92
97
|
return: string;
|
|
98
|
+
/**
|
|
99
|
+
* @internal TypeScript AST method node used for semantic type analysis during compilation.
|
|
100
|
+
* Not serialized, only used internally for improved type renaming logic.
|
|
101
|
+
*/
|
|
102
|
+
_astNode?: any;
|
|
93
103
|
}
|
|
94
104
|
//#endregion
|
|
95
105
|
//#region src/declarations/stencil-public-docs.d.ts
|
|
@@ -55,6 +55,28 @@ interface ComponentOptions {
|
|
|
55
55
|
* Array of relative links to folders of assets required by the component.
|
|
56
56
|
*/
|
|
57
57
|
assetsDirs?: string[];
|
|
58
|
+
/**
|
|
59
|
+
* Relative URL to an external stylesheet providing document-level styles for this component.
|
|
60
|
+
* Unlike `styleUrl`, these styles are not scoped to shadow/scoped DOM - they are collected
|
|
61
|
+
* at build time and injected wherever `@import "stencil-globals"` appears in a global stylesheet.
|
|
62
|
+
*
|
|
63
|
+
* Useful for
|
|
64
|
+
* - pre-first-js-render styles (combatting cumulative layout shift)
|
|
65
|
+
* - host element and slotted content style
|
|
66
|
+
* - 'css-only' CEs - those that don't use a JS runtime at all
|
|
67
|
+
*
|
|
68
|
+
* @example
|
|
69
|
+
* ```tsx
|
|
70
|
+
* @Component({ tag: 'my-button', globalStyleUrl: './my-button.global.css' })
|
|
71
|
+
* ```
|
|
72
|
+
*/
|
|
73
|
+
globalStyleUrl?: string;
|
|
74
|
+
/**
|
|
75
|
+
* Inline CSS string providing document-level styles for this component.
|
|
76
|
+
* Collected at build time and injected wherever `@import "stencil-globals"` appears.
|
|
77
|
+
* @see globalStyleUrl
|
|
78
|
+
*/
|
|
79
|
+
globalStyle?: string;
|
|
58
80
|
}
|
|
59
81
|
/**
|
|
60
82
|
* Shadow DOM encapsulation options for the `encapsulation` property.
|
|
@@ -83,7 +105,7 @@ interface ShadowEncapsulation {
|
|
|
83
105
|
}
|
|
84
106
|
/**
|
|
85
107
|
* Patch types for non-shadow DOM components that use slots.
|
|
86
|
-
* - `'all'`: Apply all slot-related patches (equivalent to `
|
|
108
|
+
* - `'all'`: Apply all slot-related patches (equivalent to `lightDomPatches: true`)
|
|
87
109
|
* - `'children'`: Patch child node accessors (children, firstChild, lastChild, etc.)
|
|
88
110
|
* - `'clone'`: Patch `cloneNode()` to handle slotted content
|
|
89
111
|
* - `'insert'`: Patch `appendChild()`, `insertBefore()`, etc. for slot relocation
|
|
@@ -535,15 +557,16 @@ declare function setTagTransformer(transformer: TagTransformer): void;
|
|
|
535
557
|
* @returns the transformed tag e.g. `new-my-tag`
|
|
536
558
|
*/
|
|
537
559
|
declare function transformTag(tag: string): string;
|
|
560
|
+
type MixinFactory = (base: MixedInCtor) => MixedInCtor;
|
|
538
561
|
/**
|
|
539
|
-
*
|
|
562
|
+
* A constructor type that can be used as the base for mixin factories.
|
|
563
|
+
*
|
|
540
564
|
* ```ts
|
|
541
565
|
* import { MixedInCtor } from '@stencil/core';
|
|
542
566
|
*
|
|
543
567
|
* const AFactoryFn = <B extends MixedInCtor>(Base: B) => {class A extends Base { propA = A }; return A;}
|
|
544
568
|
* ```
|
|
545
569
|
*/
|
|
546
|
-
type MixinFactory = (base: MixedInCtor) => MixedInCtor;
|
|
547
570
|
type MixedInCtor<T = {}> = new (...args: any[]) => T;
|
|
548
571
|
/**
|
|
549
572
|
* Compose multiple mixin classes into a single constructor.
|
|
@@ -684,13 +707,21 @@ interface QueueApi {
|
|
|
684
707
|
clear?: () => void;
|
|
685
708
|
flush?: (cb?: () => void) => void;
|
|
686
709
|
}
|
|
710
|
+
/**
|
|
711
|
+
* Minimal interface matched by signal objects (from @stencil/core/signals).
|
|
712
|
+
* Used in JSX attribute types.
|
|
713
|
+
*/
|
|
714
|
+
interface SignalRef<T = any> {
|
|
715
|
+
readonly value: T;
|
|
716
|
+
peek(): T;
|
|
717
|
+
}
|
|
687
718
|
/**
|
|
688
719
|
* Host
|
|
689
720
|
*/
|
|
690
721
|
interface HostAttributes {
|
|
691
722
|
class?: string | {
|
|
692
723
|
[className: string]: boolean;
|
|
693
|
-
}
|
|
724
|
+
} | SignalRef<string>;
|
|
694
725
|
style?: {
|
|
695
726
|
[key: string]: string | undefined;
|
|
696
727
|
};
|
|
@@ -738,7 +769,7 @@ interface FunctionalUtilities {
|
|
|
738
769
|
map: (children: VNode[], cb: (vnode: ChildNode, index: number, array: ChildNode[]) => ChildNode) => VNode[];
|
|
739
770
|
}
|
|
740
771
|
interface FunctionalComponent<T = {}> {
|
|
741
|
-
(props: T, children: VNode[], utils: FunctionalUtilities): VNode |
|
|
772
|
+
(props: T, children: VNode[], utils: FunctionalUtilities): VNode | null;
|
|
742
773
|
}
|
|
743
774
|
/**
|
|
744
775
|
* A Child VDOM node
|
|
@@ -749,7 +780,7 @@ interface FunctionalComponent<T = {}> {
|
|
|
749
780
|
* {@link FunctionalUtilities}).
|
|
750
781
|
*/
|
|
751
782
|
interface ChildNode {
|
|
752
|
-
vtag?: string | number | Function;
|
|
783
|
+
vtag?: string | number | Function | symbol | null;
|
|
753
784
|
vkey?: string | number;
|
|
754
785
|
vtext?: string;
|
|
755
786
|
vchildren?: VNode[];
|
|
@@ -762,11 +793,11 @@ interface ChildNode {
|
|
|
762
793
|
*
|
|
763
794
|
* For further information: https://stenciljs.com/docs/host-element
|
|
764
795
|
*/
|
|
765
|
-
declare const Host:
|
|
796
|
+
declare const Host: (props: HostAttributes) => VNode;
|
|
766
797
|
/**
|
|
767
798
|
* Fragment
|
|
768
799
|
*/
|
|
769
|
-
declare const Fragment:
|
|
800
|
+
declare const Fragment: (props: {}) => VNode;
|
|
770
801
|
/**
|
|
771
802
|
* The "h" namespace is used to import JSX types for elements and attributes.
|
|
772
803
|
* It is imported in order to avoid conflicting global JSX issues.
|
|
@@ -782,6 +813,7 @@ declare namespace h {
|
|
|
782
813
|
function h(sel: any, data: VNodeData | null, children: VNode): VNode;
|
|
783
814
|
function h(sel: any, data: VNodeData | null, ...children: (VNode | string | number)[]): VNode;
|
|
784
815
|
namespace JSX {
|
|
816
|
+
type Element = VNode;
|
|
785
817
|
interface IntrinsicElements extends LocalJSX.IntrinsicElements, JSXBase.IntrinsicElements {
|
|
786
818
|
[tagName: string]: any;
|
|
787
819
|
}
|
|
@@ -818,13 +850,15 @@ declare function jsxs(type: any, props: any, key?: string): VNode;
|
|
|
818
850
|
*/
|
|
819
851
|
interface VNode {
|
|
820
852
|
$flags$: number;
|
|
821
|
-
$tag$: string | number | Function;
|
|
853
|
+
$tag$: string | number | Function | symbol | null;
|
|
822
854
|
$elm$: any;
|
|
823
855
|
$text$: string;
|
|
824
856
|
$children$: VNode[];
|
|
825
857
|
$attrs$?: any;
|
|
826
858
|
$name$?: string;
|
|
827
859
|
$key$?: string | number;
|
|
860
|
+
/** Signal reference for vdom bypass: signal text nodes store the signal here. */
|
|
861
|
+
$signal$?: any;
|
|
828
862
|
}
|
|
829
863
|
interface VNodeData {
|
|
830
864
|
class?: {
|
|
@@ -1471,7 +1505,7 @@ declare namespace JSXBase {
|
|
|
1471
1505
|
autofocus?: boolean | string;
|
|
1472
1506
|
class?: string | {
|
|
1473
1507
|
[className: string]: boolean;
|
|
1474
|
-
}
|
|
1508
|
+
} | SignalRef<string>;
|
|
1475
1509
|
contentEditable?: boolean | string;
|
|
1476
1510
|
contenteditable?: boolean | string;
|
|
1477
1511
|
contextMenu?: string;
|
|
@@ -1530,7 +1564,7 @@ declare namespace JSXBase {
|
|
|
1530
1564
|
interface SVGAttributes<T = SVGElement> extends DOMAttributes<T> {
|
|
1531
1565
|
class?: string | {
|
|
1532
1566
|
[className: string]: boolean;
|
|
1533
|
-
}
|
|
1567
|
+
} | SignalRef<string>;
|
|
1534
1568
|
color?: string;
|
|
1535
1569
|
height?: number | string;
|
|
1536
1570
|
id?: string;
|
|
@@ -1931,10 +1965,13 @@ declare namespace JSXBase {
|
|
|
1931
1965
|
interface JSXAttributes<T = Element> {
|
|
1932
1966
|
key?: string | number;
|
|
1933
1967
|
ref?: (elm?: T) => void;
|
|
1968
|
+
children?: any;
|
|
1934
1969
|
}
|
|
1935
1970
|
interface CustomElementsDefineOptions {
|
|
1936
1971
|
exclude?: string[];
|
|
1937
1972
|
syncQueue?: boolean;
|
|
1973
|
+
/** Scoped custom element registry to define components in. Defaults to the global registry. */
|
|
1974
|
+
registry?: CustomElementRegistry;
|
|
1938
1975
|
jmp?: (c: Function) => any;
|
|
1939
1976
|
raf?: (c: FrameRequestCallback) => number;
|
|
1940
1977
|
ael?: (el: EventTarget, eventName: string, listener: EventListenerOrEventListenerObject, options: boolean | AddEventListenerOptions) => void;
|
|
@@ -1942,4 +1979,4 @@ interface CustomElementsDefineOptions {
|
|
|
1942
1979
|
ce?: (eventName: string, opts?: any) => CustomEvent;
|
|
1943
1980
|
}
|
|
1944
1981
|
//#endregion
|
|
1945
|
-
export { AttachInternals, AttachInternalsDecorator, AttachInternalsOptions, AttrDeserialize, AttrDeserializeDecorator, Build, ChildNode, Component, ComponentDecorator, ComponentDidLoad, ComponentDidUpdate, ComponentInterface, ComponentOptions, ComponentWillLoad, ComponentWillUpdate, CustomElementsDefineOptions, Element, ElementDecorator, EncapsulationOptions, Env, ErrorHandler, Event, EventDecorator, EventEmitter, EventOptions, Fragment, FunctionalComponent, FunctionalUtilities, HTMLStencilElement, Host, HostAttributes, LocalJSX as JSX, JSXAttributes, JSXBase, Listen, ListenDecorator, ListenOptions, ListenTargetOptions, Method, MethodDecorator, MethodOptions, MixedInCtor, Mixin,
|
|
1982
|
+
export { AttachInternals, AttachInternalsDecorator, AttachInternalsOptions, AttrDeserialize, AttrDeserializeDecorator, Build, ChildNode, Component, ComponentDecorator, ComponentDidLoad, ComponentDidUpdate, ComponentInterface, ComponentOptions, ComponentWillLoad, ComponentWillUpdate, CustomElementsDefineOptions, Element, ElementDecorator, EncapsulationOptions, Env, ErrorHandler, Event, EventDecorator, EventEmitter, EventOptions, Fragment, FunctionalComponent, FunctionalUtilities, HTMLStencilElement, Host, HostAttributes, LocalJSX as JSX, JSXAttributes, JSXBase, Listen, ListenDecorator, ListenOptions, ListenTargetOptions, Method, MethodDecorator, MethodOptions, MixedInCtor, Mixin, ModeStyles, NoneEncapsulation, Prop, PropDecorator, PropOptions, PropSerialize, PropSerializeDecorator, QueueApi, RafCallback, ResolutionHandler, ResolveVarFunction, ScopedEncapsulation, ShadowEncapsulation, ShadowRootOptions, SignalRef, SlotPatch, State, StateDecorator, TagTransformer, UserBuildConditionals, VNode, VNodeData, Watch, WatchDecorator, forceUpdate, getAssetPath, getElement, getMode, getRenderingRef, getShadowRoot, h, jsx, jsxs, readTask, render, resolveVar, setAssetPath, setErrorHandler, setMode, setNonce, setPlatformHelpers, setTagTransformer, transformTag, writeTask };
|
|
@@ -96,6 +96,14 @@ interface ComponentInterface {
|
|
|
96
96
|
render?(): any;
|
|
97
97
|
[memberName: string]: any;
|
|
98
98
|
}
|
|
99
|
+
/**
|
|
100
|
+
* Minimal interface matched by signal objects (from @stencil/core/signals).
|
|
101
|
+
* Used in JSX attribute types.
|
|
102
|
+
*/
|
|
103
|
+
interface SignalRef<T = any> {
|
|
104
|
+
readonly value: T;
|
|
105
|
+
peek(): T;
|
|
106
|
+
}
|
|
99
107
|
/**
|
|
100
108
|
* Utilities for working with functional Stencil components. An object
|
|
101
109
|
* conforming to this interface is passed by the Stencil runtime as the third
|
|
@@ -137,7 +145,7 @@ interface FunctionalUtilities {
|
|
|
137
145
|
map: (children: VNode[], cb: (vnode: ChildNode$1, index: number, array: ChildNode$1[]) => ChildNode$1) => VNode[];
|
|
138
146
|
}
|
|
139
147
|
interface FunctionalComponent<T = {}> {
|
|
140
|
-
(props: T, children: VNode[], utils: FunctionalUtilities): VNode |
|
|
148
|
+
(props: T, children: VNode[], utils: FunctionalUtilities): VNode | null;
|
|
141
149
|
}
|
|
142
150
|
/**
|
|
143
151
|
* A Child VDOM node
|
|
@@ -148,7 +156,7 @@ interface FunctionalComponent<T = {}> {
|
|
|
148
156
|
* {@link FunctionalUtilities}).
|
|
149
157
|
*/
|
|
150
158
|
interface ChildNode$1 {
|
|
151
|
-
vtag?: string | number | Function;
|
|
159
|
+
vtag?: string | number | Function | symbol | null;
|
|
152
160
|
vkey?: string | number;
|
|
153
161
|
vtext?: string;
|
|
154
162
|
vchildren?: VNode[];
|
|
@@ -160,13 +168,15 @@ interface ChildNode$1 {
|
|
|
160
168
|
*/
|
|
161
169
|
interface VNode {
|
|
162
170
|
$flags$: number;
|
|
163
|
-
$tag$: string | number | Function;
|
|
171
|
+
$tag$: string | number | Function | symbol | null;
|
|
164
172
|
$elm$: any;
|
|
165
173
|
$text$: string;
|
|
166
174
|
$children$: VNode[];
|
|
167
175
|
$attrs$?: any;
|
|
168
176
|
$name$?: string;
|
|
169
177
|
$key$?: string | number;
|
|
178
|
+
/** Signal reference for vdom bypass: signal text nodes store the signal here. */
|
|
179
|
+
$signal$?: any;
|
|
170
180
|
}
|
|
171
181
|
declare namespace JSXBase {
|
|
172
182
|
interface IntrinsicElements {
|
|
@@ -802,7 +812,7 @@ declare namespace JSXBase {
|
|
|
802
812
|
autofocus?: boolean | string;
|
|
803
813
|
class?: string | {
|
|
804
814
|
[className: string]: boolean;
|
|
805
|
-
}
|
|
815
|
+
} | SignalRef<string>;
|
|
806
816
|
contentEditable?: boolean | string;
|
|
807
817
|
contenteditable?: boolean | string;
|
|
808
818
|
contextMenu?: string;
|
|
@@ -861,7 +871,7 @@ declare namespace JSXBase {
|
|
|
861
871
|
interface SVGAttributes<T = SVGElement> extends DOMAttributes<T> {
|
|
862
872
|
class?: string | {
|
|
863
873
|
[className: string]: boolean;
|
|
864
|
-
}
|
|
874
|
+
} | SignalRef<string>;
|
|
865
875
|
color?: string;
|
|
866
876
|
height?: number | string;
|
|
867
877
|
id?: string;
|
|
@@ -1262,10 +1272,13 @@ declare namespace JSXBase {
|
|
|
1262
1272
|
interface JSXAttributes<T = Element$1> {
|
|
1263
1273
|
key?: string | number;
|
|
1264
1274
|
ref?: (elm?: T) => void;
|
|
1275
|
+
children?: any;
|
|
1265
1276
|
}
|
|
1266
1277
|
interface CustomElementsDefineOptions {
|
|
1267
1278
|
exclude?: string[];
|
|
1268
1279
|
syncQueue?: boolean;
|
|
1280
|
+
/** Scoped custom element registry to define components in. Defaults to the global registry. */
|
|
1281
|
+
registry?: CustomElementRegistry;
|
|
1269
1282
|
jmp?: (c: Function) => any;
|
|
1270
1283
|
raf?: (c: FrameRequestCallback) => number;
|
|
1271
1284
|
ael?: (el: EventTarget, eventName: string, listener: EventListenerOrEventListenerObject, options: boolean | AddEventListenerOptions) => void;
|
|
@@ -1302,6 +1315,7 @@ interface BuildFeatures {
|
|
|
1302
1315
|
vdomStyle: boolean;
|
|
1303
1316
|
vdomText: boolean;
|
|
1304
1317
|
vdomXlink: boolean;
|
|
1318
|
+
vdomSignals: boolean;
|
|
1305
1319
|
slotRelocation: boolean;
|
|
1306
1320
|
patchAll: boolean;
|
|
1307
1321
|
patchChildren: boolean;
|
|
@@ -1348,20 +1362,27 @@ interface BuildConditionals extends Partial<BuildFeatures> {
|
|
|
1348
1362
|
lazyLoad?: boolean;
|
|
1349
1363
|
profile?: boolean;
|
|
1350
1364
|
constructableCSS?: boolean;
|
|
1351
|
-
|
|
1352
|
-
|
|
1353
|
-
|
|
1354
|
-
|
|
1365
|
+
/** True when `compat.lightDomPatches === true` - enables `applyLightDomPatches` shortcut. */
|
|
1366
|
+
lightDomPatches?: boolean;
|
|
1367
|
+
/** Patch `childNodes`/`children` getters on light-dom slotted components. */
|
|
1368
|
+
slotChildNodes?: boolean;
|
|
1369
|
+
/** Patch `cloneNode()` on light-dom slotted components. */
|
|
1370
|
+
slotCloneNode?: boolean;
|
|
1371
|
+
/** Patch `appendChild`/`insertBefore`/`removeChild` on light-dom slotted components. */
|
|
1372
|
+
slotDomMutations?: boolean;
|
|
1373
|
+
/** Patch `textContent` on light-dom slotted components. */
|
|
1374
|
+
slotTextContent?: boolean;
|
|
1355
1375
|
hydratedAttribute?: boolean;
|
|
1356
1376
|
hydratedClass?: boolean;
|
|
1357
1377
|
hydratedSelectorName?: string;
|
|
1378
|
+
/** True when a global-style input contains `@import "stencil-hydrate"` - suppresses dynamic style injection in the loader. */
|
|
1379
|
+
staticHydrationStyles?: boolean;
|
|
1358
1380
|
initializeNextTick?: boolean;
|
|
1359
|
-
shadowDomShim?: boolean;
|
|
1360
1381
|
asyncQueue?: boolean;
|
|
1361
1382
|
additionalTagTransformers?: boolean | 'prod';
|
|
1362
|
-
|
|
1363
|
-
|
|
1364
|
-
|
|
1383
|
+
signalBacking?: boolean;
|
|
1384
|
+
/** True when JSX signal bypass is active - text nodes and attributes backed by Signal objects update the DOM directly. Auto-enabled when `signalBacking: true`. */
|
|
1385
|
+
vdomSignals?: boolean;
|
|
1365
1386
|
}
|
|
1366
1387
|
interface ComponentConstructor {
|
|
1367
1388
|
is?: string;
|
|
@@ -1426,7 +1447,7 @@ interface HostElement extends HTMLElement {
|
|
|
1426
1447
|
disconnectedCallback?: () => void;
|
|
1427
1448
|
host?: Element;
|
|
1428
1449
|
forceUpdate?: () => void;
|
|
1429
|
-
|
|
1450
|
+
__s_ghr?: () => HostRef;
|
|
1430
1451
|
/**
|
|
1431
1452
|
* Unique stencil id for this element
|
|
1432
1453
|
*/
|
|
@@ -1574,61 +1595,61 @@ interface RenderNode extends HostElement {
|
|
|
1574
1595
|
['s-en']?: '' | /*shadow*/'c';
|
|
1575
1596
|
/**
|
|
1576
1597
|
* On a `scoped: true` component
|
|
1577
|
-
* with `
|
|
1598
|
+
* with `lightDomPatches` flag enabled,
|
|
1578
1599
|
* returns the internal `childNodes` of the component
|
|
1579
1600
|
*/
|
|
1580
1601
|
readonly __childNodes?: NodeListOf<ChildNode>;
|
|
1581
1602
|
/**
|
|
1582
1603
|
* On a `scoped: true` component
|
|
1583
|
-
* with `
|
|
1604
|
+
* with `lightDomPatches` flag enabled,
|
|
1584
1605
|
* returns the internal `children` of the component
|
|
1585
1606
|
*/
|
|
1586
1607
|
readonly __children?: HTMLCollectionOf<Element>;
|
|
1587
1608
|
/**
|
|
1588
1609
|
* On a `scoped: true` component
|
|
1589
|
-
* with `
|
|
1610
|
+
* with `lightDomPatches` flag enabled,
|
|
1590
1611
|
* returns the internal `firstChild` of the component
|
|
1591
1612
|
*/
|
|
1592
1613
|
readonly __firstChild?: ChildNode;
|
|
1593
1614
|
/**
|
|
1594
1615
|
* On a `scoped: true` component
|
|
1595
|
-
* with `
|
|
1616
|
+
* with `lightDomPatches` flag enabled,
|
|
1596
1617
|
* returns the internal `lastChild` of the component
|
|
1597
1618
|
*/
|
|
1598
1619
|
readonly __lastChild?: ChildNode;
|
|
1599
1620
|
/**
|
|
1600
1621
|
* On a `scoped: true` component
|
|
1601
|
-
* with `
|
|
1622
|
+
* with `lightDomPatches` flag enabled,
|
|
1602
1623
|
* returns the internal `textContent` of the component
|
|
1603
1624
|
*/
|
|
1604
1625
|
__textContent?: string;
|
|
1605
1626
|
/**
|
|
1606
1627
|
* On a `scoped: true` component
|
|
1607
|
-
* with `
|
|
1628
|
+
* with `lightDomPatches` flag enabled,
|
|
1608
1629
|
* gives access to the original `append` method
|
|
1609
1630
|
*/
|
|
1610
1631
|
__append?: (...nodes: (Node | string)[]) => void;
|
|
1611
1632
|
/**
|
|
1612
1633
|
* On a `scoped: true` component
|
|
1613
|
-
* with `
|
|
1634
|
+
* with `lightDomPatches` flag enabled,
|
|
1614
1635
|
* gives access to the original `prepend` method
|
|
1615
1636
|
*/
|
|
1616
1637
|
__prepend?: (...nodes: (Node | string)[]) => void;
|
|
1617
1638
|
/**
|
|
1618
1639
|
* On a `scoped: true` component
|
|
1619
|
-
* with `
|
|
1640
|
+
* with `lightDomPatches` flag enabled,
|
|
1620
1641
|
* gives access to the original `appendChild` method
|
|
1621
1642
|
*/
|
|
1622
1643
|
__appendChild?: <T extends Node>(newChild: T) => T;
|
|
1623
1644
|
/**
|
|
1624
1645
|
* On a `scoped: true` component
|
|
1625
|
-
* with `
|
|
1646
|
+
* with `lightDomPatches` flag enabled,
|
|
1626
1647
|
* gives access to the original `insertBefore` method
|
|
1627
1648
|
*/
|
|
1628
1649
|
__insertBefore?: <T extends Node>(node: T, child: Node | null) => T;
|
|
1629
1650
|
/**
|
|
1630
1651
|
* On a `scoped: true` component
|
|
1631
|
-
* with `
|
|
1652
|
+
* with `lightDomPatches` flag enabled,
|
|
1632
1653
|
* gives access to the original `removeChild` method
|
|
1633
1654
|
*/
|
|
1634
1655
|
__removeChild?: <T extends Node>(child: T) => T;
|
|
@@ -1666,31 +1687,31 @@ interface PatchedSlotNode extends Node {
|
|
|
1666
1687
|
['s-sr']?: boolean;
|
|
1667
1688
|
/**
|
|
1668
1689
|
* On a `scoped: true` component
|
|
1669
|
-
* with `
|
|
1690
|
+
* with `lightDomPatches` flag enabled,
|
|
1670
1691
|
* returns the actual `parentNode` of the component
|
|
1671
1692
|
*/
|
|
1672
1693
|
__parentNode?: RenderNode;
|
|
1673
1694
|
/**
|
|
1674
1695
|
* On a `scoped: true` component
|
|
1675
|
-
* with `
|
|
1696
|
+
* with `lightDomPatches` flag enabled,
|
|
1676
1697
|
* returns the actual `nextSibling` of the component
|
|
1677
1698
|
*/
|
|
1678
1699
|
__nextSibling?: RenderNode;
|
|
1679
1700
|
/**
|
|
1680
1701
|
* On a `scoped: true` component
|
|
1681
|
-
* with `
|
|
1702
|
+
* with `lightDomPatches` flag enabled,
|
|
1682
1703
|
* returns the actual `previousSibling` of the component
|
|
1683
1704
|
*/
|
|
1684
1705
|
__previousSibling?: RenderNode;
|
|
1685
1706
|
/**
|
|
1686
1707
|
* On a `scoped: true` component
|
|
1687
|
-
* with `
|
|
1708
|
+
* with `lightDomPatches` flag enabled,
|
|
1688
1709
|
* returns the actual `nextElementSibling` of the component
|
|
1689
1710
|
*/
|
|
1690
1711
|
__nextElementSibling?: RenderNode;
|
|
1691
1712
|
/**
|
|
1692
1713
|
* On a `scoped: true` component
|
|
1693
|
-
* with `
|
|
1714
|
+
* with `lightDomPatches` flag enabled,
|
|
1694
1715
|
* returns the actual `nextElementSibling` of the component
|
|
1695
1716
|
*/
|
|
1696
1717
|
__previousElementSibling?: RenderNode;
|
|
@@ -1791,7 +1812,7 @@ type ComponentRuntimeReflectingAttr = [string, string | undefined];
|
|
|
1791
1812
|
* associated {@link HostRef} instance.
|
|
1792
1813
|
*/
|
|
1793
1814
|
type RuntimeRef = HostElement | {
|
|
1794
|
-
|
|
1815
|
+
__s_ghr?: () => HostRef;
|
|
1795
1816
|
};
|
|
1796
1817
|
/**
|
|
1797
1818
|
* Interface used to track an Element, it's virtual Node (`VNode`), and other data
|
|
@@ -1802,6 +1823,9 @@ interface HostRef {
|
|
|
1802
1823
|
$cmpMeta$: ComponentRuntimeMeta;
|
|
1803
1824
|
$hostElement$: HostElement;
|
|
1804
1825
|
$instanceValues$?: Map<string, any>;
|
|
1826
|
+
$signalValues$?: Map<string, import('@preact/signals-core').Signal<any>>;
|
|
1827
|
+
/** Dispose function that tears down all signal effects for this component. */
|
|
1828
|
+
$signalCleanup$?: () => void;
|
|
1805
1829
|
$serializerValues$?: Map<string, string>;
|
|
1806
1830
|
$lazyInstance$?: ComponentInterface;
|
|
1807
1831
|
/**
|
|
@@ -1888,4 +1912,31 @@ interface PlatformRuntime {
|
|
|
1888
1912
|
}
|
|
1889
1913
|
type ChildType = VNode | number | string;
|
|
1890
1914
|
//#endregion
|
|
1891
|
-
|
|
1915
|
+
//#region src/app-data/index.d.ts
|
|
1916
|
+
/**
|
|
1917
|
+
* A collection of default build flags for a Stencil project.
|
|
1918
|
+
*
|
|
1919
|
+
* This collection can be found throughout the Stencil codebase, often imported from the `virtual:app-data` module like so:
|
|
1920
|
+
* ```ts
|
|
1921
|
+
* import { BUILD } from 'virtual:app-data';
|
|
1922
|
+
* ```
|
|
1923
|
+
* and is used to determine if a portion of the output of a Stencil _project_'s compilation step can be eliminated.
|
|
1924
|
+
*
|
|
1925
|
+
* e.g. When `BUILD.allRenderFn` evaluates to `false`, the compiler will eliminate conditional statements like:
|
|
1926
|
+
* ```ts
|
|
1927
|
+
* if (BUILD.allRenderFn) {
|
|
1928
|
+
* // some code that will be eliminated if BUILD.allRenderFn is false
|
|
1929
|
+
* }
|
|
1930
|
+
* ```
|
|
1931
|
+
*
|
|
1932
|
+
* `virtual:app-data`, the module that `BUILD` is imported from, is an alias for the `@stencil/core/runtime/app-data`, and is
|
|
1933
|
+
* partially referenced by {@link STENCIL_APP_DATA_ID}. The `src/compiler/bundle/app-data-plugin.ts` references
|
|
1934
|
+
* `STENCIL_APP_DATA_ID` uses it to replace these defaults with {@link BuildConditionals} that are derived from a
|
|
1935
|
+
* Stencil project's contents (i.e. metadata from the components). This replacement happens at a Stencil project's
|
|
1936
|
+
* compile time. Such code can be found at `src/compiler/app-core/app-data.ts`.
|
|
1937
|
+
*/
|
|
1938
|
+
declare const BUILD: BuildConditionals;
|
|
1939
|
+
declare const Env: {};
|
|
1940
|
+
declare const NAMESPACE: string;
|
|
1941
|
+
//#endregion
|
|
1942
|
+
export { VNode as S, FunctionalComponent as _, ComponentConstructor as a, ResolutionHandler as b, ComponentRuntimeMeta as c, HostRef as d, LazyBundlesRuntimeData as f, CustomElementsDefineOptions as g, RuntimeRef as h, ChildType as i, ComponentRuntimeMetaCompact as l, RenderNode as m, Env as n, ComponentConstructorChangeHandlers as o, PlatformRuntime as p, NAMESPACE as r, ComponentRuntimeHostListener as s, BUILD as t, HostElement as u, HTMLStencilElement as v, TagTransformer as x, JSXBase as y };
|