glass-easel 0.2.0 → 0.3.0

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.
Files changed (197) hide show
  1. package/.eslintignore +4 -0
  2. package/dist/glass_easel.all.js +2 -2
  3. package/dist/glass_easel.all.js.map +1 -1
  4. package/dist/glass_easel.d.ts +2546 -0
  5. package/dist/glass_easel.domlike.global.js +2 -2
  6. package/dist/glass_easel.domlike.global.js.map +1 -1
  7. package/guide/zh_CN/appendix/backend_protocol.md +164 -74
  8. package/jest.unit.config.js +7 -4
  9. package/package.json +7 -5
  10. package/rollup.config.ts +101 -0
  11. package/src/backend/backend_protocol.ts +26 -345
  12. package/src/backend/composed_backend_protocol.ts +10 -264
  13. package/src/backend/current_window_backend_context.ts +478 -0
  14. package/src/backend/domlike_backend_protocol.ts +9 -498
  15. package/src/backend/empty_backend.ts +265 -0
  16. package/src/backend/empty_composed_backend.ts +245 -0
  17. package/src/backend/index.ts +18 -0
  18. package/src/backend/suggested_backend_protocol.ts +62 -11
  19. package/src/behavior.ts +131 -442
  20. package/src/class_list.ts +328 -222
  21. package/src/component.ts +349 -184
  22. package/src/component_params.ts +54 -25
  23. package/src/component_space.ts +36 -15
  24. package/src/data_path.ts +22 -34
  25. package/src/data_proxy.ts +334 -27
  26. package/src/devtool.ts +89 -0
  27. package/src/element.ts +667 -285
  28. package/src/element_iterator.ts +9 -4
  29. package/src/event.ts +39 -20
  30. package/src/external_shadow_tree.ts +2 -2
  31. package/src/func_arr.ts +55 -101
  32. package/src/global_options.ts +18 -42
  33. package/src/index.ts +72 -73
  34. package/src/mutation_observer.ts +10 -7
  35. package/src/native_node.ts +79 -35
  36. package/src/node.ts +23 -30
  37. package/src/relation.ts +101 -12
  38. package/src/render.ts +5 -3
  39. package/src/selector.ts +9 -7
  40. package/src/shadow_root.ts +96 -240
  41. package/src/template_engine.ts +10 -7
  42. package/src/text_node.ts +43 -19
  43. package/src/tmpl/index.ts +38 -30
  44. package/src/tmpl/native_rendering.ts +14 -21
  45. package/src/tmpl/proc_gen_wrapper.ts +189 -151
  46. package/src/tmpl/proc_gen_wrapper_dom.ts +10 -8
  47. package/src/tmpl/range_list_diff.ts +30 -9
  48. package/src/trait_behaviors.ts +1 -1
  49. package/src/type_symbol.ts +36 -0
  50. package/src/virtual_node.ts +26 -13
  51. package/src/warning.ts +119 -0
  52. package/tests/base/composed_backend.ts +143 -142
  53. package/tests/base/env.ts +76 -3
  54. package/tests/base/match.ts +24 -22
  55. package/tests/base/shadow_backend.ts +917 -0
  56. package/tests/core/backend.test.ts +53 -1
  57. package/tests/core/behavior.test.ts +1 -1
  58. package/tests/core/data_update.test.ts +135 -0
  59. package/tests/core/misc.test.ts +91 -21
  60. package/tests/core/placeholder.test.ts +66 -25
  61. package/tests/core/slot.test.ts +161 -23
  62. package/tests/legacy/component.test.js +152 -78
  63. package/tests/legacy/data_path.test.js +19 -19
  64. package/tests/legacy/data_proxy.test.js +14 -7
  65. package/tests/legacy/external.test.js +8 -8
  66. package/tests/legacy/mutation_observer.test.js +7 -5
  67. package/tests/legacy/slot.test.js +2 -3
  68. package/tests/legacy/virtual.test.js +258 -25
  69. package/tests/tmpl/binding_map.test.ts +201 -195
  70. package/tests/tmpl/event.test.ts +138 -23
  71. package/tests/tmpl/expression.test.ts +15 -15
  72. package/tests/tmpl/lvalue.test.ts +101 -0
  73. package/tests/tmpl/structure.test.ts +486 -43
  74. package/tests/types/chaining.test.ts +27 -30
  75. package/tests/types/createElement.test.ts +5 -4
  76. package/tests/types/definition.test.ts +11 -14
  77. package/tsconfig.json +1 -3
  78. package/dist/glass_easel.all.d.ts +0 -1
  79. package/dist/glass_easel.domlike.global.d.ts +0 -1
  80. package/dist/index.d.ts +0 -1
  81. package/dist/index.js +0 -1
  82. package/dist/types/src/backend/backend_protocol.d.ts +0 -141
  83. package/dist/types/src/backend/backend_protocol.d.ts.map +0 -1
  84. package/dist/types/src/backend/composed_backend_protocol.d.ts +0 -102
  85. package/dist/types/src/backend/composed_backend_protocol.d.ts.map +0 -1
  86. package/dist/types/src/backend/domlike_backend_protocol.d.ts +0 -100
  87. package/dist/types/src/backend/domlike_backend_protocol.d.ts.map +0 -1
  88. package/dist/types/src/backend/mode.d.ts +0 -65
  89. package/dist/types/src/backend/mode.d.ts.map +0 -1
  90. package/dist/types/src/backend/suggested_backend_protocol.d.ts +0 -30
  91. package/dist/types/src/backend/suggested_backend_protocol.d.ts.map +0 -1
  92. package/dist/types/src/behavior.d.ts +0 -434
  93. package/dist/types/src/behavior.d.ts.map +0 -1
  94. package/dist/types/src/class_list.d.ts +0 -83
  95. package/dist/types/src/class_list.d.ts.map +0 -1
  96. package/dist/types/src/component.d.ts +0 -325
  97. package/dist/types/src/component.d.ts.map +0 -1
  98. package/dist/types/src/component_params.d.ts +0 -236
  99. package/dist/types/src/component_params.d.ts.map +0 -1
  100. package/dist/types/src/component_space.d.ts +0 -211
  101. package/dist/types/src/component_space.d.ts.map +0 -1
  102. package/dist/types/src/data_path.d.ts +0 -5
  103. package/dist/types/src/data_path.d.ts.map +0 -1
  104. package/dist/types/src/data_proxy.d.ts +0 -107
  105. package/dist/types/src/data_proxy.d.ts.map +0 -1
  106. package/dist/types/src/data_utils.d.ts +0 -3
  107. package/dist/types/src/data_utils.d.ts.map +0 -1
  108. package/dist/types/src/element.d.ts +0 -365
  109. package/dist/types/src/element.d.ts.map +0 -1
  110. package/dist/types/src/element_iterator.d.ts +0 -43
  111. package/dist/types/src/element_iterator.d.ts.map +0 -1
  112. package/dist/types/src/event.d.ts +0 -105
  113. package/dist/types/src/event.d.ts.map +0 -1
  114. package/dist/types/src/external_shadow_tree.d.ts +0 -20
  115. package/dist/types/src/external_shadow_tree.d.ts.map +0 -1
  116. package/dist/types/src/func_arr.d.ts +0 -39
  117. package/dist/types/src/func_arr.d.ts.map +0 -1
  118. package/dist/types/src/global_options.d.ts +0 -120
  119. package/dist/types/src/global_options.d.ts.map +0 -1
  120. package/dist/types/src/index.d.ts +0 -43
  121. package/dist/types/src/index.d.ts.map +0 -1
  122. package/dist/types/src/mutation_observer.d.ts +0 -79
  123. package/dist/types/src/mutation_observer.d.ts.map +0 -1
  124. package/dist/types/src/native_node.d.ts +0 -11
  125. package/dist/types/src/native_node.d.ts.map +0 -1
  126. package/dist/types/src/node.d.ts +0 -48
  127. package/dist/types/src/node.d.ts.map +0 -1
  128. package/dist/types/src/relation.d.ts +0 -46
  129. package/dist/types/src/relation.d.ts.map +0 -1
  130. package/dist/types/src/render.d.ts +0 -3
  131. package/dist/types/src/render.d.ts.map +0 -1
  132. package/dist/types/src/selector.d.ts +0 -32
  133. package/dist/types/src/selector.d.ts.map +0 -1
  134. package/dist/types/src/shadow_root.d.ts +0 -174
  135. package/dist/types/src/shadow_root.d.ts.map +0 -1
  136. package/dist/types/src/template_engine.d.ts +0 -56
  137. package/dist/types/src/template_engine.d.ts.map +0 -1
  138. package/dist/types/src/text_node.d.ts +0 -44
  139. package/dist/types/src/text_node.d.ts.map +0 -1
  140. package/dist/types/src/tmpl/index.d.ts +0 -19
  141. package/dist/types/src/tmpl/index.d.ts.map +0 -1
  142. package/dist/types/src/tmpl/native_rendering.d.ts +0 -45
  143. package/dist/types/src/tmpl/native_rendering.d.ts.map +0 -1
  144. package/dist/types/src/tmpl/proc_gen_wrapper.d.ts +0 -89
  145. package/dist/types/src/tmpl/proc_gen_wrapper.d.ts.map +0 -1
  146. package/dist/types/src/tmpl/proc_gen_wrapper_dom.d.ts +0 -50
  147. package/dist/types/src/tmpl/proc_gen_wrapper_dom.d.ts.map +0 -1
  148. package/dist/types/src/tmpl/range_list_diff.d.ts +0 -19
  149. package/dist/types/src/tmpl/range_list_diff.d.ts.map +0 -1
  150. package/dist/types/src/trait_behaviors.d.ts +0 -38
  151. package/dist/types/src/trait_behaviors.d.ts.map +0 -1
  152. package/dist/types/src/virtual_node.d.ts +0 -10
  153. package/dist/types/src/virtual_node.d.ts.map +0 -1
  154. package/dist/types/tests/backend/domlike.test.d.ts +0 -2
  155. package/dist/types/tests/backend/domlike.test.d.ts.map +0 -1
  156. package/dist/types/tests/base/composed_backend.d.ts +0 -123
  157. package/dist/types/tests/base/composed_backend.d.ts.map +0 -1
  158. package/dist/types/tests/base/env.d.ts +0 -30
  159. package/dist/types/tests/base/env.d.ts.map +0 -1
  160. package/dist/types/tests/base/match.d.ts +0 -9
  161. package/dist/types/tests/base/match.d.ts.map +0 -1
  162. package/dist/types/tests/core/backend.test.d.ts +0 -2
  163. package/dist/types/tests/core/backend.test.d.ts.map +0 -1
  164. package/dist/types/tests/core/behavior.test.d.ts +0 -2
  165. package/dist/types/tests/core/behavior.test.d.ts.map +0 -1
  166. package/dist/types/tests/core/component_space.test.d.ts +0 -2
  167. package/dist/types/tests/core/component_space.test.d.ts.map +0 -1
  168. package/dist/types/tests/core/data_update.test.d.ts +0 -2
  169. package/dist/types/tests/core/data_update.test.d.ts.map +0 -1
  170. package/dist/types/tests/core/misc.test.d.ts +0 -2
  171. package/dist/types/tests/core/misc.test.d.ts.map +0 -1
  172. package/dist/types/tests/core/placeholder.test.d.ts +0 -2
  173. package/dist/types/tests/core/placeholder.test.d.ts.map +0 -1
  174. package/dist/types/tests/core/slot.test.d.ts +0 -2
  175. package/dist/types/tests/core/slot.test.d.ts.map +0 -1
  176. package/dist/types/tests/core/trait_behaviors.test.d.ts +0 -2
  177. package/dist/types/tests/core/trait_behaviors.test.d.ts.map +0 -1
  178. package/dist/types/tests/tmpl/binding_map.test.d.ts +0 -2
  179. package/dist/types/tests/tmpl/binding_map.test.d.ts.map +0 -1
  180. package/dist/types/tests/tmpl/event.test.d.ts +0 -2
  181. package/dist/types/tests/tmpl/event.test.d.ts.map +0 -1
  182. package/dist/types/tests/tmpl/expression.test.d.ts +0 -2
  183. package/dist/types/tests/tmpl/expression.test.d.ts.map +0 -1
  184. package/dist/types/tests/tmpl/lvalue.test.d.ts +0 -2
  185. package/dist/types/tests/tmpl/lvalue.test.d.ts.map +0 -1
  186. package/dist/types/tests/tmpl/native_rendering.test.d.ts +0 -2
  187. package/dist/types/tests/tmpl/native_rendering.test.d.ts.map +0 -1
  188. package/dist/types/tests/tmpl/structure.test.d.ts +0 -2
  189. package/dist/types/tests/tmpl/structure.test.d.ts.map +0 -1
  190. package/dist/types/tests/types/chaining.test.d.ts +0 -2
  191. package/dist/types/tests/types/chaining.test.d.ts.map +0 -1
  192. package/dist/types/tests/types/createElement.test.d.ts +0 -2
  193. package/dist/types/tests/types/createElement.test.d.ts.map +0 -1
  194. package/dist/types/tests/types/definition.test.d.ts +0 -2
  195. package/dist/types/tests/types/definition.test.d.ts.map +0 -1
  196. package/webpack.config.js +0 -275
  197. /package/src/backend/{mode.ts → shared.ts} +0 -0
@@ -1,120 +0,0 @@
1
- import { StyleScopeId } from './class_list';
2
- import { Context as BackendContext } from './backend/backend_protocol';
3
- import { TemplateEngine } from './template_engine';
4
- import { ComponentSpace } from './component_space';
5
- import { GeneralComponent, GeneralBackendContext } from '.';
6
- /**
7
- * The deep copy strategy
8
- *
9
- * Higher level indicates more accuracy but probably less performance.
10
- */
11
- export declare enum DeepCopyKind {
12
- /**
13
- * Avoid deep copy
14
- *
15
- * This avoids any copy, and recursive objects can be handled without any failing.
16
- * However, changing non-copied data will sometimes break the logic.
17
- */
18
- None = "none",
19
- /**
20
- * Do a simple deep copy
21
- *
22
- * This simply clones each enumerable fields in an object to a new object.
23
- * It causes stack overflow in recursive objects.
24
- * Everything in prototypes is ignored.
25
- */
26
- Simple = "simple",
27
- /**
28
- * Do a deep copy with recursion detection
29
- *
30
- * This clones each enumerable fields in an object to a new object.
31
- * It can handle recursive objects by recursive detection.
32
- * Everything in prototypes is ignored.
33
- */
34
- SimpleWithRecursion = "simple-recursion"
35
- }
36
- export declare const getDefaultComponentSpace: () => ComponentSpace;
37
- export declare const getDefaultBackendContext: () => GeneralBackendContext;
38
- /**
39
- * Options for a component
40
- */
41
- export type ComponentOptions = {
42
- /** Is external component or not */
43
- externalComponent?: boolean;
44
- /** The host node tag name (only valid in external components) */
45
- hostNodeTagName?: string;
46
- /** The template engine */
47
- templateEngine?: TemplateEngine;
48
- /** The style scope */
49
- styleScope?: StyleScopeId;
50
- /** An extra style scope assigned to the component */
51
- extraStyleScope?: StyleScopeId | null;
52
- /** Enable multiple slots or not */
53
- multipleSlots?: boolean;
54
- /** Enable dynamic slots or not */
55
- dynamicSlots?: boolean;
56
- /** Enable direct slots or not */
57
- directSlots?: boolean;
58
- /** Write property values of components to backend with `setAttribute` */
59
- reflectToAttributes?: boolean;
60
- /** Allow properties and methods to be able to visit directly in component instance */
61
- writeFieldsToNode?: boolean;
62
- /** Write node ID to backend node */
63
- writeIdToDOM?: boolean;
64
- /** Use the methods in method caller as the event handlers or not */
65
- useMethodCallerListeners?: boolean;
66
- /** Generate a prefix for ID written to backend node */
67
- idPrefixGenerator?: ((this: GeneralComponent) => string) | null;
68
- /** Filter some fields out when applying to templates */
69
- pureDataPattern?: RegExp | null;
70
- /** Decide how to deep copy component data when updates */
71
- dataDeepCopy?: DeepCopyKind;
72
- /** Decide how to deep copy when a property changes */
73
- propertyPassingDeepCopy?: DeepCopyKind;
74
- /** Enable listener change events or not */
75
- listenerChangeLifetimes?: boolean;
76
- /** Component host node is virtual or not */
77
- virtualHost?: boolean;
78
- /** Init component with property values or not */
79
- propertyEarlyInit?: boolean;
80
- };
81
- export type NormalizedComponentOptions = {
82
- externalComponent: boolean;
83
- hostNodeTagName: string;
84
- templateEngine: TemplateEngine;
85
- styleScope: StyleScopeId;
86
- extraStyleScope: StyleScopeId | null;
87
- multipleSlots: boolean;
88
- dynamicSlots: boolean;
89
- directSlots: boolean;
90
- reflectToAttributes: boolean;
91
- writeFieldsToNode: boolean;
92
- writeIdToDOM: boolean;
93
- useMethodCallerListeners: boolean;
94
- idPrefixGenerator: ((this: GeneralComponent) => string) | null;
95
- pureDataPattern: RegExp | null;
96
- dataDeepCopy: DeepCopyKind;
97
- propertyPassingDeepCopy: DeepCopyKind;
98
- listenerChangeLifetimes: boolean;
99
- virtualHost: boolean;
100
- propertyEarlyInit: boolean;
101
- };
102
- /**
103
- * Options for global environment
104
- */
105
- export type EnvironmentOptions = {
106
- /** The default component space */
107
- defaultComponentSpace: ComponentSpace | null;
108
- /** Throw errors when errors caught in event callbacks (useful in testing scripts) */
109
- throwGlobalError: boolean;
110
- /** Write some extra attributes to DOM backend (for testing) */
111
- writeExtraInfoToAttr: boolean;
112
- /** The default backend context */
113
- backendContext: BackendContext | null;
114
- };
115
- /**
116
- * The default options
117
- */
118
- export declare const globalOptions: NormalizedComponentOptions & EnvironmentOptions;
119
- export declare const normalizeComponentOptions: (componentOptions: ComponentOptions | undefined, baseComponentOptions?: NormalizedComponentOptions) => NormalizedComponentOptions;
120
- //# sourceMappingURL=global_options.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"global_options.d.ts","sourceRoot":"","sources":["../../../src/global_options.ts"],"names":[],"mappings":"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"}
@@ -1,43 +0,0 @@
1
- export { TextNode } from './text_node';
2
- export { NativeNode } from './native_node';
3
- export { ShadowRoot } from './shadow_root';
4
- export { VirtualNode } from './virtual_node';
5
- export { globalOptions, DeepCopyKind, ComponentOptions, EnvironmentOptions, NormalizedComponentOptions, getDefaultComponentSpace, } from './global_options';
6
- export { Element, StyleSegmentIndex } from './element';
7
- export * as dataUtils from './data_utils';
8
- export * as dataPath from './data_path';
9
- export { DataGroup, GeneralDataGroup, DataValue, DataObserver, DataChange, PropertyChange, DataUpdateCallback, } from './data_proxy';
10
- export { Event, ShadowedEvent, EventBubbleStatus, EventOptions, EventListener, EventListenerOptions, MutLevel as EventMutLevel, } from './event';
11
- export * as typeUtils from './component_params';
12
- export { Behavior, GeneralBehavior, BehaviorBuilder, GeneralBehaviorBuilder, BuilderContext, NormalizedPropertyType, } from './behavior';
13
- export { Component, ComponentDefinition, GeneralComponent, GeneralComponentDefinition, } from './component';
14
- export { MutationObserver as Observer, MutationObserver } from './mutation_observer';
15
- export * as mutationObserver from './mutation_observer';
16
- export { Node, dumpElement, dumpElementToString, dumpSingleElementToString, GeneralBackendElement, GeneralBackendContext, NodeCast, } from './node';
17
- export { ElementIterator, ElementIteratorType } from './element_iterator';
18
- export { FuncArr, GeneralFuncType, safeCallback, addGlobalErrorListener, removeGlobalErrorListener, addGlobalWarningListener, removeGlobalWarningListener, } from './func_arr';
19
- export { ParsedSelector } from './selector';
20
- export { StyleScopeManager, ClassList, StyleScopeId } from './class_list';
21
- export { RelationType, RelationListener, RelationFailedListener } from './relation';
22
- export { TraitBehavior } from './trait_behaviors';
23
- export { triggerRender } from './render';
24
- export { ComponentSpace } from './component_space';
25
- export { ExternalShadowRoot } from './external_shadow_tree';
26
- export * as template from './tmpl';
27
- export * as backend from './backend/backend_protocol';
28
- export * as composedBackend from './backend/composed_backend_protocol';
29
- export * as domlikeBackend from './backend/domlike_backend_protocol';
30
- export { BackendMode } from './backend/mode';
31
- export * as templateEngine from './template_engine';
32
- export * as glassEaselTemplate from './tmpl';
33
- import { ComponentParams, DataList, PropertyList, MethodList, ComponentInstance, Empty } from './component_params';
34
- import { Behavior } from './behavior';
35
- import { ComponentDefinition, GeneralComponent, GeneralComponentDefinition } from './component';
36
- import { Event } from './event';
37
- export declare const registerBehavior: <TData extends DataList = Empty, TProperty extends PropertyList = Empty, TMethod extends MethodList = Empty>(def: ComponentParams<TData, TProperty, TMethod> & ThisType<ComponentInstance<TData, TProperty, TMethod>>) => Behavior<TData, TProperty, TMethod, never>;
38
- export declare const registerElement: <TData extends DataList = Empty, TProperty extends PropertyList = Empty, TMethod extends MethodList = Empty>(def: ComponentParams<TData, TProperty, TMethod> & ThisType<ComponentInstance<TData, TProperty, TMethod>>) => ComponentDefinition<TData, TProperty, TMethod>;
39
- export declare function createElement(tagName: string, compDef?: GeneralComponentDefinition): GeneralComponent;
40
- export declare function createElement<TData extends DataList, TProperty extends PropertyList, TMethod extends MethodList>(tagName: string, compDef: ComponentDefinition<TData, TProperty, TMethod>): ComponentInstance<TData, TProperty, TMethod>;
41
- export declare const triggerEvent: typeof Event.triggerEvent;
42
- export declare const triggerExternalEvent: typeof Event.triggerExternalEvent;
43
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"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"}
@@ -1,79 +0,0 @@
1
- import { Element, Node, TextNode } from '.';
2
- import { FuncArr } from './func_arr';
3
- /**
4
- * What the observer will listen
5
- */
6
- export type MutationObserverOptions = {
7
- /** Attribute changes, including property, id, slot, and class changes */
8
- properties: boolean;
9
- /** Child nodes changes */
10
- childList: boolean;
11
- /** Text content changes */
12
- characterData: boolean;
13
- /** Enable property, childList, and characterData changes in subtree */
14
- subtree: boolean;
15
- /** Attached status changes */
16
- attachStatus: boolean;
17
- };
18
- export type MutationObserverAttrEvent = {
19
- type: 'properties';
20
- target: Element;
21
- propertyName?: string;
22
- attributeName?: string;
23
- };
24
- export type MutationObserverTextEvent = {
25
- type: 'characterData';
26
- target: TextNode;
27
- };
28
- export type MutationObserverChildEvent = {
29
- type: 'childList';
30
- target: Node;
31
- addedNodes?: Node[];
32
- removedNodes?: Node[];
33
- };
34
- export type MutationObserverAttachEvent = {
35
- type: 'attachStatus';
36
- target: Element;
37
- status: 'attached' | 'detached';
38
- };
39
- export type MutationObserverEvent = MutationObserverAttrEvent | MutationObserverTextEvent | MutationObserverChildEvent | MutationObserverAttachEvent;
40
- export type MutationObserverListener<T> = (this: Element, ev: T) => void;
41
- export declare class MutationObserverTarget {
42
- private _$boundElement;
43
- private _$subtreeObserversCount;
44
- attrObservers: FuncArr<MutationObserverListener<MutationObserverAttrEvent>> | null;
45
- textObservers: FuncArr<MutationObserverListener<MutationObserverTextEvent>> | null;
46
- childObservers: FuncArr<MutationObserverListener<MutationObserverChildEvent>> | null;
47
- attachObservers: FuncArr<MutationObserverListener<MutationObserverAttachEvent>> | null;
48
- constructor(boundElement: Element);
49
- attachChild(child: Element): void;
50
- detachChild(child: Element): void;
51
- updateSubtreeCount(diff: number): void;
52
- hasSubtreeListeners(): boolean;
53
- static callAttrObservers(node: Element, eventObj: MutationObserverAttrEvent): void;
54
- static callTextObservers(textNode: TextNode, eventObj: MutationObserverTextEvent): void;
55
- static callChildObservers(node: Element, eventObj: MutationObserverChildEvent): void;
56
- static callAttachObservers(node: Element, eventObj: MutationObserverAttachEvent): void;
57
- }
58
- /**
59
- * An observer that can observe shadow tree changes
60
- *
61
- * Like DOM MutationObserver,
62
- * this observer can observe attributes, text content, and child nodes changes.
63
- * It can optionally observe changes in a subtree.
64
- * Further more, it can listen attached/detached events on an element.
65
- */
66
- export declare class MutationObserver {
67
- private _$listener;
68
- private _$normalizedListener;
69
- private _$subtreeListenersCount;
70
- private _$boundFuncArrs;
71
- private _$boundTarget;
72
- constructor(listener: (ev: MutationObserverEvent) => void);
73
- static create(listener: (ev: MutationObserverEvent) => void): MutationObserver;
74
- /** Start observation */
75
- observe(targetElement: Element, options?: MutationObserverOptions): void;
76
- /** End observation */
77
- disconnect(): void;
78
- }
79
- //# sourceMappingURL=mutation_observer.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"mutation_observer.d.ts","sourceRoot":"","sources":["../../../src/mutation_observer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,GAAG,CAAA;AAC3C,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAA;AAEpC;;GAEG;AACH,MAAM,MAAM,uBAAuB,GAAG;IACpC,yEAAyE;IACzE,UAAU,EAAE,OAAO,CAAA;IACnB,0BAA0B;IAC1B,SAAS,EAAE,OAAO,CAAA;IAClB,2BAA2B;IAC3B,aAAa,EAAE,OAAO,CAAA;IACtB,uEAAuE;IACvE,OAAO,EAAE,OAAO,CAAA;IAChB,8BAA8B;IAC9B,YAAY,EAAE,OAAO,CAAA;CACtB,CAAA;AAED,MAAM,MAAM,yBAAyB,GAAG;IACtC,IAAI,EAAE,YAAY,CAAA;IAClB,MAAM,EAAE,OAAO,CAAA;IACf,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,aAAa,CAAC,EAAE,MAAM,CAAA;CACvB,CAAA;AAED,MAAM,MAAM,yBAAyB,GAAG;IACtC,IAAI,EAAE,eAAe,CAAA;IACrB,MAAM,EAAE,QAAQ,CAAA;CACjB,CAAA;AAED,MAAM,MAAM,0BAA0B,GAAG;IACvC,IAAI,EAAE,WAAW,CAAA;IACjB,MAAM,EAAE,IAAI,CAAA;IACZ,UAAU,CAAC,EAAE,IAAI,EAAE,CAAA;IACnB,YAAY,CAAC,EAAE,IAAI,EAAE,CAAA;CACtB,CAAA;AAED,MAAM,MAAM,2BAA2B,GAAG;IACxC,IAAI,EAAE,cAAc,CAAA;IACpB,MAAM,EAAE,OAAO,CAAA;IACf,MAAM,EAAE,UAAU,GAAG,UAAU,CAAA;CAChC,CAAA;AAED,MAAM,MAAM,qBAAqB,GAC7B,yBAAyB,GACzB,yBAAyB,GACzB,0BAA0B,GAC1B,2BAA2B,CAAA;AAE/B,MAAM,MAAM,wBAAwB,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,KAAK,IAAI,CAAA;AAExE,qBAAa,sBAAsB;IACjC,OAAO,CAAC,cAAc,CAAS;IAC/B,OAAO,CAAC,uBAAuB,CAAI;IACnC,aAAa,EAAE,OAAO,CAAC,wBAAwB,CAAC,yBAAyB,CAAC,CAAC,GAAG,IAAI,CAAO;IACzF,aAAa,EAAE,OAAO,CAAC,wBAAwB,CAAC,yBAAyB,CAAC,CAAC,GAAG,IAAI,CAAO;IACzF,cAAc,EAAE,OAAO,CAAC,wBAAwB,CAAC,0BAA0B,CAAC,CAAC,GAAG,IAAI,CAAO;IAC3F,eAAe,EAAE,OAAO,CAAC,wBAAwB,CAAC,2BAA2B,CAAC,CAAC,GAAG,IAAI,CAAO;gBAEjF,YAAY,EAAE,OAAO;IAIjC,WAAW,CAAC,KAAK,EAAE,OAAO;IAS1B,WAAW,CAAC,KAAK,EAAE,OAAO;IAM1B,kBAAkB,CAAC,IAAI,EAAE,MAAM;IAa/B,mBAAmB,IAAI,OAAO;IAI9B,MAAM,CAAC,iBAAiB,CAAC,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,yBAAyB;IAY3E,MAAM,CAAC,iBAAiB,CAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,yBAAyB;IAUhF,MAAM,CAAC,kBAAkB,CAAC,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,0BAA0B;IAY7E,MAAM,CAAC,mBAAmB,CAAC,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,2BAA2B;CAIhF;AAED;;;;;;;GAOG;AACH,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,UAAU,CAAwD;IAC1E,OAAO,CAAC,oBAAoB,CAAwD;IACpF,OAAO,CAAC,uBAAuB,CAAI;IACnC,OAAO,CAAC,eAAe,CAAiE;IACxF,OAAO,CAAC,aAAa,CAAsC;gBAE/C,QAAQ,EAAE,CAAC,EAAE,EAAE,qBAAqB,KAAK,IAAI;IAKzD,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,EAAE,EAAE,qBAAqB,KAAK,IAAI,GAAG,gBAAgB;IAI9E,wBAAwB;IACxB,OAAO,CACL,aAAa,EAAE,OAAO,EACtB,OAAO,GAAE,uBAMR;IA0DH,sBAAsB;IACtB,UAAU;CAWX"}
@@ -1,11 +0,0 @@
1
- import { Element } from './element';
2
- import { ShadowRoot } from './shadow_root';
3
- import { ModelBindingListener } from './data_proxy';
4
- export declare class NativeNode extends Element {
5
- is: string;
6
- private _$modelBindingListeners?;
7
- constructor();
8
- static create(tagName: string, owner: ShadowRoot, stylingName?: string, placeholderHandler?: () => void): NativeNode;
9
- setModelBindingListener(propName: string, listener: ModelBindingListener): void;
10
- }
11
- //# sourceMappingURL=native_node.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"native_node.d.ts","sourceRoot":"","sources":["../../../src/native_node.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACnC,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AAG1C,OAAO,EAAa,oBAAoB,EAAE,MAAM,cAAc,CAAA;AAE9D,qBAAa,UAAW,SAAQ,OAAO;IACrC,EAAE,EAAE,MAAM,CAAA;IACV,OAAO,CAAC,uBAAuB,CAAC,CAA0C;;IAQ1E,MAAM,CAAC,MAAM,CACX,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,UAAU,EACjB,WAAW,CAAC,EAAE,MAAM,EACpB,kBAAkB,CAAC,EAAE,MAAM,IAAI,GAC9B,UAAU;IA8Cb,uBAAuB,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,oBAAoB;CA6BzE"}
@@ -1,48 +0,0 @@
1
- import * as backend from './backend/backend_protocol';
2
- import * as composedBackend from './backend/composed_backend_protocol';
3
- import * as domlikeBackend from './backend/domlike_backend_protocol';
4
- import { TextNode } from './text_node';
5
- import { Element } from './element';
6
- import { VirtualNode } from './virtual_node';
7
- import { ComponentDefinition } from './component';
8
- import { NativeNode } from './native_node';
9
- import { DataList, PropertyList, MethodList, ComponentInstance } from './component_params';
10
- export type GeneralBackendContext = backend.Context | composedBackend.Context | domlikeBackend.Context;
11
- export type GeneralBackendElement = backend.Element | composedBackend.Element | domlikeBackend.Element;
12
- export type Node = TextNode | Element;
13
- export interface NodeCast {
14
- /**
15
- * Cast a node to a text node
16
- *
17
- * Returns `null` if the element is not a text node.
18
- */
19
- asTextNode(): TextNode | null;
20
- /**
21
- * Cast a node to an element (native node, virtual node, or component node)
22
- *
23
- * Returns `null` if the element is not a text node.
24
- */
25
- asElement(): Element | null;
26
- /**
27
- * Cast an element to a native node
28
- *
29
- * Returns `null` if the element is not a native node.
30
- */
31
- asNativeNode(): NativeNode | null;
32
- /**
33
- * Cast an element to a virtual node
34
- *
35
- * Returns `null` if the element is not a virtual node.
36
- */
37
- asVirtualNode(): VirtualNode | null;
38
- /**
39
- * Cast an element to the instance of the specified component
40
- *
41
- * Returns `null` if the element is not the instance of the specified component.
42
- */
43
- asInstanceOf<UData extends DataList, UProperty extends PropertyList, UMethod extends MethodList>(componentDefinition: ComponentDefinition<UData, UProperty, UMethod>): ComponentInstance<UData, UProperty, UMethod> | null;
44
- }
45
- export declare const dumpSingleElementToString: (elem: any) => string;
46
- export declare const dumpElementToString: (elem: any, composed: boolean, tabDepth?: number) => string;
47
- export declare const dumpElement: (elem: any, composed: boolean) => void;
48
- //# sourceMappingURL=node.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"node.d.ts","sourceRoot":"","sources":["../../../src/node.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,OAAO,MAAM,4BAA4B,CAAA;AACrD,OAAO,KAAK,eAAe,MAAM,qCAAqC,CAAA;AACtE,OAAO,KAAK,cAAc,MAAM,oCAAoC,CAAA;AACpE,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AACtC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACnC,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AAC5C,OAAO,EAAa,mBAAmB,EAAE,MAAM,aAAa,CAAA;AAC5D,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AAC1C,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAA;AAE1F,MAAM,MAAM,qBAAqB,GAC7B,OAAO,CAAC,OAAO,GACf,eAAe,CAAC,OAAO,GACvB,cAAc,CAAC,OAAO,CAAA;AAE1B,MAAM,MAAM,qBAAqB,GAC7B,OAAO,CAAC,OAAO,GACf,eAAe,CAAC,OAAO,GACvB,cAAc,CAAC,OAAO,CAAA;AAE1B,MAAM,MAAM,IAAI,GAAG,QAAQ,GAAG,OAAO,CAAA;AAErC,MAAM,WAAW,QAAQ;IACvB;;;;OAIG;IACH,UAAU,IAAI,QAAQ,GAAG,IAAI,CAAA;IAE7B;;;;OAIG;IACH,SAAS,IAAI,OAAO,GAAG,IAAI,CAAA;IAE3B;;;;OAIG;IACH,YAAY,IAAI,UAAU,GAAG,IAAI,CAAA;IAEjC;;;;OAIG;IACH,aAAa,IAAI,WAAW,GAAG,IAAI,CAAA;IAEnC;;;;OAIG;IACH,YAAY,CAAC,KAAK,SAAS,QAAQ,EAAE,SAAS,SAAS,YAAY,EAAE,OAAO,SAAS,UAAU,EAC7F,mBAAmB,EAAE,mBAAmB,CAAC,KAAK,EAAE,SAAS,EAAE,OAAO,CAAC,GAClE,iBAAiB,CAAC,KAAK,EAAE,SAAS,EAAE,OAAO,CAAC,GAAG,IAAI,CAAA;CACvD;AA2BD,eAAO,MAAM,yBAAyB,SAAU,GAAG,WAwBlD,CAAA;AAED,eAAO,MAAM,mBAAmB,SAAU,GAAG,YAAY,OAAO,8BAgC/D,CAAA;AAED,eAAO,MAAM,WAAW,SAAU,GAAG,YAAY,OAAO,SAGvD,CAAA"}
@@ -1,46 +0,0 @@
1
- import { GeneralBehavior } from './behavior';
2
- import { GeneralComponent } from './component';
3
- import { TraitBehavior } from './trait_behaviors';
4
- export declare const enum RelationType {
5
- Ancestor = 0,
6
- Descendant = 1,
7
- ParentNonVirtualNode = 2,
8
- ChildNonVirtualNode = 3,
9
- ParentComponent = 4,
10
- ChildComponent = 5
11
- }
12
- export type RelationListener = (target: unknown) => void;
13
- export type RelationFailedListener = () => void;
14
- export type RelationDefinition = {
15
- target: GeneralBehavior | TraitBehavior<{
16
- [x: string]: unknown;
17
- }, {
18
- [x: string]: unknown;
19
- }>;
20
- type: RelationType;
21
- linked: RelationListener | null;
22
- linkChanged: RelationListener | null;
23
- unlinked: RelationListener | null;
24
- linkFailed: RelationFailedListener | null;
25
- };
26
- export type RelationDefinitionGroup = {
27
- definitions: RelationDefinition[][];
28
- keyMap: {
29
- [key: string | symbol]: [RelationType, number];
30
- };
31
- };
32
- export declare const generateRelationDefinitionGroup: (relations?: {
33
- [key: string]: RelationDefinition;
34
- } | undefined) => RelationDefinitionGroup | null;
35
- export declare const cloneRelationDefinitionGroup: (group: RelationDefinitionGroup) => RelationDefinitionGroup;
36
- export declare class Relation {
37
- private _$comp;
38
- private _$group;
39
- private _$sharedGroup;
40
- private _$links;
41
- constructor(associatedComponent: GeneralComponent, group: RelationDefinitionGroup | null);
42
- add(relation: RelationDefinition): symbol;
43
- triggerLinkEvent(parentType: RelationType.ParentComponent | RelationType.ParentNonVirtualNode | RelationType.Ancestor, isDetach: boolean): void;
44
- getLinkedTargets(key: string | symbol): GeneralComponent[];
45
- }
46
- //# sourceMappingURL=relation.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"relation.d.ts","sourceRoot":"","sources":["../../../src/relation.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AAC5C,OAAO,EAAa,gBAAgB,EAAE,MAAM,aAAa,CAAA;AAGzD,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AAEjD,0BAAkB,YAAY;IAC5B,QAAQ,IAAI;IACZ,UAAU,IAAA;IACV,oBAAoB,IAAA;IACpB,mBAAmB,IAAA;IACnB,eAAe,IAAA;IACf,cAAc,IAAA;CACf;AAID,MAAM,MAAM,gBAAgB,GAAG,CAAC,MAAM,EAAE,OAAO,KAAK,IAAI,CAAA;AAExD,MAAM,MAAM,sBAAsB,GAAG,MAAM,IAAI,CAAA;AAE/C,MAAM,MAAM,kBAAkB,GAAG;IAC/B,MAAM,EAAE,eAAe,GAAG,aAAa,CAAC;QAAE,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAAA;KAAE,EAAE;QAAE,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAAA;KAAE,CAAC,CAAA;IAC3F,IAAI,EAAE,YAAY,CAAA;IAClB,MAAM,EAAE,gBAAgB,GAAG,IAAI,CAAA;IAC/B,WAAW,EAAE,gBAAgB,GAAG,IAAI,CAAA;IACpC,QAAQ,EAAE,gBAAgB,GAAG,IAAI,CAAA;IACjC,UAAU,EAAE,sBAAsB,GAAG,IAAI,CAAA;CAC1C,CAAA;AAED,MAAM,MAAM,uBAAuB,GAAG;IACpC,WAAW,EAAE,kBAAkB,EAAE,EAAE,CAAA;IACnC,MAAM,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,CAAC,YAAY,EAAE,MAAM,CAAC,CAAA;KAAE,CAAA;CAC3D,CAAA;AAED,eAAO,MAAM,+BAA+B;;kBAExC,uBAAuB,GAAG,IAsB7B,CAAA;AAED,eAAO,MAAM,4BAA4B,UAChC,uBAAuB,KAC7B,uBAQF,CAAA;AAED,qBAAa,QAAQ;IACnB,OAAO,CAAC,MAAM,CAAkB;IAChC,OAAO,CAAC,OAAO,CAAgC;IAC/C,OAAO,CAAC,aAAa,CAAS;IAC9B,OAAO,CAAC,OAAO,CAAoE;gBAEvE,mBAAmB,EAAE,gBAAgB,EAAE,KAAK,EAAE,uBAAuB,GAAG,IAAI;IA0BxF,GAAG,CAAC,QAAQ,EAAE,kBAAkB,GAAG,MAAM;IAsCzC,gBAAgB,CACd,UAAU,EACN,YAAY,CAAC,eAAe,GAC5B,YAAY,CAAC,oBAAoB,GACjC,YAAY,CAAC,QAAQ,EACzB,QAAQ,EAAE,OAAO;IAsInB,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,gBAAgB,EAAE;CAyD3D"}
@@ -1,3 +0,0 @@
1
- import { Element } from './element';
2
- export declare const triggerRender: (element: Element, callback?: ((err: Error | null) => void) | undefined) => void;
3
- //# sourceMappingURL=render.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"render.d.ts","sourceRoot":"","sources":["../../../src/render.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAcnC,eAAO,MAAM,aAAa,YAAa,OAAO,oBAAmB,KAAK,GAAG,IAAI,KAAK,IAAI,sBAGrF,CAAA"}
@@ -1,32 +0,0 @@
1
- import { Element } from '.';
2
- declare const enum SegmentRelation {
3
- Child = 0,
4
- Descendant = 1,
5
- CrossShadowDescendant = 2
6
- }
7
- type Segment = {
8
- id: string;
9
- classes: string[];
10
- relation: SegmentRelation;
11
- };
12
- type Union = Segment[];
13
- /** A parsed selector that can be used in selector queries */
14
- export declare class ParsedSelector {
15
- unions: Union[];
16
- private static _$parseSegment;
17
- constructor(str: string);
18
- /** Whether the selector is empty */
19
- isEmpty(): boolean;
20
- private static _$testSelectorSegment;
21
- /**
22
- * Test whether the specified node matches the selector
23
- *
24
- * If `root` is specified, than the selector is match inside this subtree;
25
- * otherwise it match in the whole tree.
26
- */
27
- testSelector(root: Element | null, node: Element): boolean;
28
- /** Queries an element or elements that matches this selector */
29
- query(root: Element, findOne: boolean): Element[] | Element | null;
30
- }
31
- export {};
32
- //# sourceMappingURL=selector.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"selector.d.ts","sourceRoot":"","sources":["../../../src/selector.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAsD,MAAM,GAAG,CAAA;AAE/E,mBAAW,eAAe;IACxB,KAAK,IAAA;IACL,UAAU,IAAA;IACV,qBAAqB,IAAA;CACtB;AAED,KAAK,OAAO,GAAG;IACb,EAAE,EAAE,MAAM,CAAA;IACV,OAAO,EAAE,MAAM,EAAE,CAAA;IACjB,QAAQ,EAAE,eAAe,CAAA;CAC1B,CAAA;AAED,KAAK,KAAK,GAAG,OAAO,EAAE,CAAA;AAOtB,6DAA6D;AAC7D,qBAAa,cAAc;IACzB,MAAM,EAAE,KAAK,EAAE,CAAK;IAEpB,OAAO,CAAC,MAAM,CAAC,cAAc;gBAcjB,GAAG,EAAE,MAAM;IA6BvB,oCAAoC;IACpC,OAAO,IAAI,OAAO;IAIlB,OAAO,CAAC,MAAM,CAAC,qBAAqB;IAuEpC;;;;;OAKG;IACH,YAAY,CAAC,IAAI,EAAE,OAAO,GAAG,IAAI,EAAE,IAAI,EAAE,OAAO,GAAG,OAAO;IAyB1D,gEAAgE;IAChE,KAAK,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO,EAAE,GAAG,OAAO,GAAG,IAAI;CAgCnE"}
@@ -1,174 +0,0 @@
1
- import * as backend from './backend/backend_protocol';
2
- import { VirtualNode } from './virtual_node';
3
- import { GeneralComponentDefinition, GeneralComponent } from './component';
4
- import { TextNode } from './text_node';
5
- import { NativeNode } from './native_node';
6
- import { DoubleLinkedList, Element } from './element';
7
- import { Node } from './node';
8
- export declare const enum SlotMode {
9
- Direct = 0,
10
- Single = 1,
11
- Multiple = 2,
12
- Dynamic = 3
13
- }
14
- export declare class ShadowRoot extends VirtualNode {
15
- private _$host;
16
- /** @internal */
17
- _$backendShadowRoot: backend.ShadowRootContext | null;
18
- private _$slotMode;
19
- private _$idMap;
20
- private _$singleSlot?;
21
- private _$slots?;
22
- private _$slotsList?;
23
- private _$dynamicSlotsInserted?;
24
- private _$dynamicSlots?;
25
- private _$requiredSlotValueNames?;
26
- private _$propertyPassingDeepCopy?;
27
- private _$insertDynamicSlotHandler?;
28
- private _$removeDynamicSlotHandler?;
29
- private _$updateDynamicSlotHandler?;
30
- constructor();
31
- static createShadowRoot(host: GeneralComponent): ShadowRoot;
32
- getHostNode(): GeneralComponent;
33
- createTextNode(text?: string): TextNode;
34
- createNativeNode(tagName: string): NativeNode;
35
- createVirtualNode(virtualName?: string): VirtualNode;
36
- createNativeNodeWithInit(tagName: string, stylingName: string, placeholderHandler: (() => void) | undefined, initPropValues?: (comp: NativeNode) => void): NativeNode;
37
- /**
38
- * Create a component if possible
39
- *
40
- * Placeholding status should be checked with `checkComponentPlaceholder` .
41
- * This function may create a native node if the using target is native node.
42
- */
43
- createComponent(tagName: string, usingKey?: string, genericTargets?: {
44
- [key: string]: string;
45
- }, placeholderCallback?: (c: GeneralComponentDefinition) => void, initPropValues?: (comp: GeneralComponent | NativeNode) => void): GeneralComponent | NativeNode;
46
- /**
47
- * Create a component if the given tag name is a component in the space, or a native node if not
48
- *
49
- * The component `using` map is not used.
50
- * Consider using `checkComponentPlaceholder` to check if the tag name is in the `using` map.
51
- * The global using registered with `ComponentSpace.prototype.getGlobalUsingComponent` is still used.
52
- */
53
- createComponentOrNativeNode(tagName: string, genericTargets?: {
54
- [key: string]: string;
55
- }, initPropValues?: (comp: GeneralComponent | NativeNode) => void): GeneralComponent | NativeNode;
56
- /**
57
- * Find whether this component is placeholding or not
58
- *
59
- * This method will only find in the component `using` list and `generics` list.
60
- * If not found, returns `undefined` .
61
- * If the placeholder will be used, returns `true` ; `false` otherwise.
62
- */
63
- checkComponentPlaceholder(usingKey: string): boolean | undefined;
64
- getElementById(id: string): Element | undefined;
65
- /** @internal */
66
- _$markIdCacheDirty(): void;
67
- /** @internal */
68
- _$getIdMap(): {
69
- [id: string]: Element;
70
- };
71
- /** Get the slot element with the specified name */
72
- getSlotElementFromName(name: string): Element | Element[] | null;
73
- /**
74
- * Get the slot element for the slot content
75
- *
76
- * The provided node must be a valid child node of the host of this shadow root.
77
- * Otherwise the behavior is undefined.
78
- */
79
- getContainingSlot(elem: Node | null): Element | null;
80
- /**
81
- * Get the elements that should be composed in specified slot
82
- *
83
- * This method always returns a new array (or null if the specified slot is invalid).
84
- * It is convenient but less performant.
85
- * For better performance, consider using `forEachNodeInSpecifiedSlot` .
86
- */
87
- getSlotContentArray(slot: Element): Node[] | null;
88
- /**
89
- * Iterate slots
90
- */
91
- forEachSlot(f: (slot: Element) => boolean | void): void;
92
- /**
93
- * Iterate through elements ahd their corresponding slots (including slots-inherited nodes)
94
- * @param f A function to execute for each element. Return false to break the iteration.
95
- * @returns A boolean indicating whether the iteration is complete.
96
- */
97
- forEachNodeInSlot(f: (node: Node, slot: Element | null | undefined) => boolean | void): boolean;
98
- /**
99
- * Iterate through elements of a specified slot (including slots-inherited nodes)
100
- * @param f A function to execute for each element. Return false to break the iteration.
101
- * @returns A boolean indicating whether the iteration is complete.
102
- */
103
- forEachNodeInSpecifiedSlot(slot: Element | null, f: (node: Node) => boolean | void): boolean;
104
- /**
105
- * Iterate through elements ahd their corresponding slots (NOT including slots-inherited nodes)
106
- * @param f A function to execute for each element. Return false to break the iteration.
107
- * @returns A boolean indicating whether the iteration is complete.
108
- */
109
- forEachSlotContentInSlot(f: (node: Node, slot: Element | null | undefined) => boolean | void): boolean;
110
- /**
111
- * Iterate through elements of a specified slot (NOT including slots-inherited nodes)
112
- * @param f A function to execute for each element. Return false to break the iteration.
113
- * @returns A boolean indicating whether the iteration is complete.
114
- */
115
- forEachSlotContentInSpecifiedSlot(slot: Element | null, f: (node: Node) => boolean | void): boolean;
116
- /**
117
- * Check whether a node is connected to this shadow root
118
- */
119
- isConnected(node: Node): boolean;
120
- /** @internal */
121
- private _$applyMultipleSlotInsertion;
122
- /** @internal */
123
- private _$applyMultipleSlotsRemoval;
124
- /** @internal */
125
- _$applySlotRename(slot: Element, newName: string, oldName: string): void;
126
- /** @internal */
127
- _$applySlotsInsertion(slotStart: DoubleLinkedList<Element>, slotEnd: DoubleLinkedList<Element>, move: boolean): void;
128
- /** @internal */
129
- _$applySlotsRemoval(slotStart: DoubleLinkedList<Element>, slotEnd: DoubleLinkedList<Element>, move: boolean): void;
130
- /**
131
- * Set the dynamic slot handlers
132
- *
133
- * If the handlers have not been set yet,
134
- * the `insertSlotHandler` will be called for each slot that has been added to the shadow tree,
135
- * otherwise call `updateSlotHandler` for each slots.
136
- */
137
- setDynamicSlotHandler(requiredSlotValueNames: string[], insertSlotHandler: (slots: {
138
- slot: Element;
139
- name: string;
140
- slotValues: {
141
- [name: string]: unknown;
142
- };
143
- }[]) => void, removeSlotHandler: (slots: Element[]) => void, updateSlotHandler: (slot: Element, slotValues: {
144
- [name: string]: unknown;
145
- }, updatePathTree: {
146
- [name: string]: true;
147
- }) => void): void;
148
- /**
149
- * Use the same dynamic slot handlers with the `source`
150
- */
151
- useDynamicSlotHandlerFrom(source: ShadowRoot): void;
152
- /**
153
- * Update a slot value
154
- *
155
- * The updated value should be applied with `applySlotValueUpdates` call.
156
- */
157
- replaceSlotValue(slot: Element, name: string, value: unknown): void;
158
- /**
159
- * Apply slot value updates
160
- */
161
- applySlotValueUpdates(slot: Element): void;
162
- applySlotUpdates(): void;
163
- /**
164
- * Get slot mode
165
- */
166
- getSlotMode(): SlotMode;
167
- /** @internal */
168
- static _$updateSubtreeSlotNodes(parentNode: Element, elements: Node[], shadowRoot: ShadowRoot | null, oldShadowRoot: ShadowRoot | null, posIndex: number): {
169
- updateContainingSlot: () => void;
170
- removeSlotNodes: () => void;
171
- insertSlotNodes: () => void;
172
- } | undefined;
173
- }
174
- //# sourceMappingURL=shadow_root.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"shadow_root.d.ts","sourceRoot":"","sources":["../../../src/shadow_root.ts"],"names":[],"mappings":"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"}