glass-easel 0.1.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.
- package/README.md +40 -0
- package/dist/glass_easel.all.d.ts +1 -0
- package/dist/glass_easel.all.js +2 -0
- package/dist/glass_easel.all.js.map +1 -0
- package/dist/glass_easel.domlike.global.d.ts +1 -0
- package/dist/glass_easel.domlike.global.js +2 -0
- package/dist/glass_easel.domlike.global.js.map +1 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.js +1 -0
- package/dist/types/src/backend/backend_protocol.d.ts +119 -0
- package/dist/types/src/backend/backend_protocol.d.ts.map +1 -0
- package/dist/types/src/backend/composed_backend_protocol.d.ts +90 -0
- package/dist/types/src/backend/composed_backend_protocol.d.ts.map +1 -0
- package/dist/types/src/backend/domlike_backend_protocol.d.ts +76 -0
- package/dist/types/src/backend/domlike_backend_protocol.d.ts.map +1 -0
- package/dist/types/src/backend/mode.d.ts +46 -0
- package/dist/types/src/backend/mode.d.ts.map +1 -0
- package/dist/types/src/backend/suggested_backend_protocol.d.ts +30 -0
- package/dist/types/src/backend/suggested_backend_protocol.d.ts.map +1 -0
- package/dist/types/src/behavior.d.ts +428 -0
- package/dist/types/src/behavior.d.ts.map +1 -0
- package/dist/types/src/class_list.d.ts +79 -0
- package/dist/types/src/class_list.d.ts.map +1 -0
- package/dist/types/src/component.d.ts +291 -0
- package/dist/types/src/component.d.ts.map +1 -0
- package/dist/types/src/component_params.d.ts +239 -0
- package/dist/types/src/component_params.d.ts.map +1 -0
- package/dist/types/src/component_space.d.ts +164 -0
- package/dist/types/src/component_space.d.ts.map +1 -0
- package/dist/types/src/data_path.d.ts +5 -0
- package/dist/types/src/data_path.d.ts.map +1 -0
- package/dist/types/src/data_proxy.d.ts +107 -0
- package/dist/types/src/data_proxy.d.ts.map +1 -0
- package/dist/types/src/data_utils.d.ts +3 -0
- package/dist/types/src/data_utils.d.ts.map +1 -0
- package/dist/types/src/element.d.ts +275 -0
- package/dist/types/src/element.d.ts.map +1 -0
- package/dist/types/src/element_iterator.d.ts +43 -0
- package/dist/types/src/element_iterator.d.ts.map +1 -0
- package/dist/types/src/event.d.ts +104 -0
- package/dist/types/src/event.d.ts.map +1 -0
- package/dist/types/src/external_shadow_tree.d.ts +20 -0
- package/dist/types/src/external_shadow_tree.d.ts.map +1 -0
- package/dist/types/src/func_arr.d.ts +39 -0
- package/dist/types/src/func_arr.d.ts.map +1 -0
- package/dist/types/src/global_options.d.ts +111 -0
- package/dist/types/src/global_options.d.ts.map +1 -0
- package/dist/types/src/index.d.ts +43 -0
- package/dist/types/src/index.d.ts.map +1 -0
- package/dist/types/src/mutation_observer.d.ts +79 -0
- package/dist/types/src/mutation_observer.d.ts.map +1 -0
- package/dist/types/src/native_node.d.ts +8 -0
- package/dist/types/src/native_node.d.ts.map +1 -0
- package/dist/types/src/node.d.ts +49 -0
- package/dist/types/src/node.d.ts.map +1 -0
- package/dist/types/src/relation.d.ts +47 -0
- package/dist/types/src/relation.d.ts.map +1 -0
- package/dist/types/src/render.d.ts +3 -0
- package/dist/types/src/render.d.ts.map +1 -0
- package/dist/types/src/selector.d.ts +32 -0
- package/dist/types/src/selector.d.ts.map +1 -0
- package/dist/types/src/shadow_root.d.ts +136 -0
- package/dist/types/src/shadow_root.d.ts.map +1 -0
- package/dist/types/src/template_engine.d.ts +18 -0
- package/dist/types/src/template_engine.d.ts.map +1 -0
- package/dist/types/src/text_node.d.ts +32 -0
- package/dist/types/src/text_node.d.ts.map +1 -0
- package/dist/types/src/tmpl/index.d.ts +18 -0
- package/dist/types/src/tmpl/index.d.ts.map +1 -0
- package/dist/types/src/tmpl/native_rendering.d.ts +45 -0
- package/dist/types/src/tmpl/native_rendering.d.ts.map +1 -0
- package/dist/types/src/tmpl/proc_gen_wrapper.d.ts +80 -0
- package/dist/types/src/tmpl/proc_gen_wrapper.d.ts.map +1 -0
- package/dist/types/src/tmpl/proc_gen_wrapper_dom.d.ts +50 -0
- package/dist/types/src/tmpl/proc_gen_wrapper_dom.d.ts.map +1 -0
- package/dist/types/src/tmpl/range_list_diff.d.ts +19 -0
- package/dist/types/src/tmpl/range_list_diff.d.ts.map +1 -0
- package/dist/types/src/trait_behaviors.d.ts +38 -0
- package/dist/types/src/trait_behaviors.d.ts.map +1 -0
- package/dist/types/src/virtual_node.d.ts +10 -0
- package/dist/types/src/virtual_node.d.ts.map +1 -0
- package/dist/types/tests/backend/domlike.test.d.ts +2 -0
- package/dist/types/tests/backend/domlike.test.d.ts.map +1 -0
- package/dist/types/tests/base/env.d.ts +29 -0
- package/dist/types/tests/base/env.d.ts.map +1 -0
- package/dist/types/tests/base/match.d.ts +9 -0
- package/dist/types/tests/base/match.d.ts.map +1 -0
- package/dist/types/tests/core/backend.test.d.ts +2 -0
- package/dist/types/tests/core/backend.test.d.ts.map +1 -0
- package/dist/types/tests/core/behavior.test.d.ts +2 -0
- package/dist/types/tests/core/behavior.test.d.ts.map +1 -0
- package/dist/types/tests/core/component_space.test.d.ts +2 -0
- package/dist/types/tests/core/component_space.test.d.ts.map +1 -0
- package/dist/types/tests/core/data_update.test.d.ts +2 -0
- package/dist/types/tests/core/data_update.test.d.ts.map +1 -0
- package/dist/types/tests/core/misc.test.d.ts +2 -0
- package/dist/types/tests/core/misc.test.d.ts.map +1 -0
- package/dist/types/tests/core/placeholder.test.d.ts +2 -0
- package/dist/types/tests/core/placeholder.test.d.ts.map +1 -0
- package/dist/types/tests/core/slot.test.d.ts +2 -0
- package/dist/types/tests/core/slot.test.d.ts.map +1 -0
- package/dist/types/tests/core/trait_behaviors.test.d.ts +2 -0
- package/dist/types/tests/core/trait_behaviors.test.d.ts.map +1 -0
- package/dist/types/tests/tmpl/binding_map.test.d.ts +2 -0
- package/dist/types/tests/tmpl/binding_map.test.d.ts.map +1 -0
- package/dist/types/tests/tmpl/event.test.d.ts +2 -0
- package/dist/types/tests/tmpl/event.test.d.ts.map +1 -0
- package/dist/types/tests/tmpl/expression.test.d.ts +2 -0
- package/dist/types/tests/tmpl/expression.test.d.ts.map +1 -0
- package/dist/types/tests/tmpl/lvalue.test.d.ts +2 -0
- package/dist/types/tests/tmpl/lvalue.test.d.ts.map +1 -0
- package/dist/types/tests/tmpl/native_rendering.test.d.ts +2 -0
- package/dist/types/tests/tmpl/native_rendering.test.d.ts.map +1 -0
- package/dist/types/tests/tmpl/structure.test.d.ts +2 -0
- package/dist/types/tests/tmpl/structure.test.d.ts.map +1 -0
- package/dist/types/tests/types/chaining.test.d.ts +2 -0
- package/dist/types/tests/types/chaining.test.d.ts.map +1 -0
- package/dist/types/tests/types/createElement.test.d.ts +2 -0
- package/dist/types/tests/types/createElement.test.d.ts.map +1 -0
- package/dist/types/tests/types/definition.test.d.ts +2 -0
- package/dist/types/tests/types/definition.test.d.ts.map +1 -0
- package/guide/zh_CN/advanced/binding_map_update.md +32 -0
- package/guide/zh_CN/advanced/build_args.md +28 -0
- package/guide/zh_CN/advanced/component_filter.md +70 -0
- package/guide/zh_CN/advanced/component_space.md +124 -0
- package/guide/zh_CN/advanced/custom_backend.md +53 -0
- package/guide/zh_CN/advanced/error_listener.md +32 -0
- package/guide/zh_CN/advanced/external_component.md +73 -0
- package/guide/zh_CN/advanced/template_engine.md +61 -0
- package/guide/zh_CN/appendix/backend_protocol.md +501 -0
- package/guide/zh_CN/appendix/list_diff_algorithm.md +406 -0
- package/guide/zh_CN/basic/beginning.md +94 -0
- package/guide/zh_CN/basic/component.md +156 -0
- package/guide/zh_CN/basic/event.md +169 -0
- package/guide/zh_CN/basic/lifetime.md +66 -0
- package/guide/zh_CN/basic/method.md +62 -0
- package/guide/zh_CN/basic/template.md +135 -0
- package/guide/zh_CN/data_management/advanced_update.md +170 -0
- package/guide/zh_CN/data_management/data_deep_copy.md +157 -0
- package/guide/zh_CN/data_management/data_observer.md +154 -0
- package/guide/zh_CN/data_management/property_early_init.md +31 -0
- package/guide/zh_CN/data_management/pure_data_pattern.md +21 -0
- package/guide/zh_CN/index.md +93 -0
- package/guide/zh_CN/interaction/behavior.md +52 -0
- package/guide/zh_CN/interaction/component_path.md +37 -0
- package/guide/zh_CN/interaction/generic.md +73 -0
- package/guide/zh_CN/interaction/placeholder.md +40 -0
- package/guide/zh_CN/interaction/relation.md +151 -0
- package/guide/zh_CN/interaction/slot.md +137 -0
- package/guide/zh_CN/interaction/template_import.md +94 -0
- package/guide/zh_CN/interaction/trait_behavior.md +117 -0
- package/guide/zh_CN/styling/external_class.md +46 -0
- package/guide/zh_CN/styling/style_isolation.md +54 -0
- package/guide/zh_CN/styling/virtual_host.md +52 -0
- package/guide/zh_CN/tree/element_iterator.md +54 -0
- package/guide/zh_CN/tree/mutation_observer.md +52 -0
- package/guide/zh_CN/tree/node_tree.md +142 -0
- package/guide/zh_CN/tree/node_tree_modification.md +78 -0
- package/guide/zh_CN/tree/selector.md +66 -0
- package/jest.config.js +6 -0
- package/jest.dts.config.js +9 -0
- package/jest.unit.config.js +14 -0
- package/package.json +28 -0
- package/src/backend/backend_protocol.ts +313 -0
- package/src/backend/composed_backend_protocol.ts +252 -0
- package/src/backend/domlike_backend_protocol.ts +370 -0
- package/src/backend/mode.ts +51 -0
- package/src/backend/suggested_backend_protocol.ts +83 -0
- package/src/behavior.ts +1655 -0
- package/src/bootstrap_dom_dev.js +22 -0
- package/src/class_list.ts +376 -0
- package/src/component.ts +1309 -0
- package/src/component_params.ts +461 -0
- package/src/component_space.ts +547 -0
- package/src/data_path.ts +225 -0
- package/src/data_proxy.ts +670 -0
- package/src/data_utils.ts +50 -0
- package/src/element.ts +1966 -0
- package/src/element_iterator.ts +158 -0
- package/src/event.ts +401 -0
- package/src/external_shadow_tree.ts +27 -0
- package/src/func_arr.ts +198 -0
- package/src/global_options.ts +242 -0
- package/src/index.ts +187 -0
- package/src/mutation_observer.ts +252 -0
- package/src/native_node.ts +74 -0
- package/src/node.ts +174 -0
- package/src/relation.ts +380 -0
- package/src/render.ts +25 -0
- package/src/selector.ts +218 -0
- package/src/shadow_root.ts +766 -0
- package/src/template_engine.ts +45 -0
- package/src/text_node.ts +149 -0
- package/src/tmpl/index.ts +199 -0
- package/src/tmpl/native_rendering.ts +175 -0
- package/src/tmpl/proc_gen_wrapper.ts +954 -0
- package/src/tmpl/proc_gen_wrapper_dom.ts +230 -0
- package/src/tmpl/range_list_diff.ts +443 -0
- package/src/trait_behaviors.ts +51 -0
- package/src/virtual_node.ts +51 -0
- package/tests/backend/domlike.test.ts +254 -0
- package/tests/base/env.ts +78 -0
- package/tests/base/match.ts +185 -0
- package/tests/core/backend.test.ts +144 -0
- package/tests/core/behavior.test.ts +546 -0
- package/tests/core/component_space.test.ts +212 -0
- package/tests/core/data_update.test.ts +461 -0
- package/tests/core/misc.test.ts +339 -0
- package/tests/core/placeholder.test.ts +180 -0
- package/tests/core/slot.test.ts +1495 -0
- package/tests/core/trait_behaviors.test.ts +153 -0
- package/tests/legacy/README.md +3 -0
- package/tests/legacy/behavior.test.js +293 -0
- package/tests/legacy/component.test.js +1247 -0
- package/tests/legacy/data_path.test.js +149 -0
- package/tests/legacy/data_proxy.test.js +759 -0
- package/tests/legacy/element_iterator.test.js +148 -0
- package/tests/legacy/event.test.js +849 -0
- package/tests/legacy/external.test.js +510 -0
- package/tests/legacy/extra_info.test.js +109 -0
- package/tests/legacy/generics.test.js +176 -0
- package/tests/legacy/mutation_observer.test.js +210 -0
- package/tests/legacy/relation.test.js +517 -0
- package/tests/legacy/selector.test.js +263 -0
- package/tests/legacy/slot.test.js +915 -0
- package/tests/legacy/virtual.test.js +394 -0
- package/tests/tmpl/binding_map.test.ts +208 -0
- package/tests/tmpl/event.test.ts +206 -0
- package/tests/tmpl/expression.test.ts +429 -0
- package/tests/tmpl/lvalue.test.ts +160 -0
- package/tests/tmpl/native_rendering.test.ts +155 -0
- package/tests/tmpl/structure.test.ts +998 -0
- package/tests/types/chaining.test.ts +614 -0
- package/tests/types/createElement.test.ts +82 -0
- package/tests/types/definition.test.ts +442 -0
- package/tsconfig.json +11 -0
- package/webpack.config.js +270 -0
|
@@ -0,0 +1,136 @@
|
|
|
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 { Element } from './element';
|
|
7
|
+
import { Node } from './node';
|
|
8
|
+
export declare class ShadowRoot extends VirtualNode {
|
|
9
|
+
private _$host;
|
|
10
|
+
/** @internal */
|
|
11
|
+
_$backendShadowRoot: backend.ShadowRootContext | null;
|
|
12
|
+
private _$idMap;
|
|
13
|
+
private _$slotCacheDirty;
|
|
14
|
+
private _$appliedSlotCacheDirty;
|
|
15
|
+
private _$singleSlot?;
|
|
16
|
+
private _$appliedSingleSlot?;
|
|
17
|
+
private _$slots?;
|
|
18
|
+
private _$appliedSlots?;
|
|
19
|
+
private _$dynamicSlotSet?;
|
|
20
|
+
private _$appliedDynamicSlots?;
|
|
21
|
+
private _$requiredSlotValueNames?;
|
|
22
|
+
private _$propertyPassingDeepCopy?;
|
|
23
|
+
private _$insertDynamicSlotHandler?;
|
|
24
|
+
private _$removeDynamicSlotHandler?;
|
|
25
|
+
private _$updateDynamicSlotHandler?;
|
|
26
|
+
constructor();
|
|
27
|
+
static createShadowRoot(host: GeneralComponent): ShadowRoot;
|
|
28
|
+
getHostNode(): GeneralComponent;
|
|
29
|
+
createTextNode(text?: string): TextNode;
|
|
30
|
+
createNativeNode(tagName: string): NativeNode;
|
|
31
|
+
createVirtualNode(virtualName?: string): VirtualNode;
|
|
32
|
+
createComponent(tagName: string, usingKey?: string, genericTargets?: {
|
|
33
|
+
[key: string]: string;
|
|
34
|
+
}, placeholderCallback?: (c: GeneralComponentDefinition) => void, initPropValues?: (comp: GeneralComponent) => void): GeneralComponent;
|
|
35
|
+
/**
|
|
36
|
+
* Create a component if the given tag name is a component in the space, or a native node if not
|
|
37
|
+
*
|
|
38
|
+
* The component `using` map is not used.
|
|
39
|
+
* The tag name is not a relative path to the host component, but an absolute path.
|
|
40
|
+
*/
|
|
41
|
+
createComponentOrNativeNode(tagName: string, genericTargets?: {
|
|
42
|
+
[key: string]: string;
|
|
43
|
+
}, initPropValues?: (comp: GeneralComponent | NativeNode) => void): GeneralComponent | NativeNode;
|
|
44
|
+
/**
|
|
45
|
+
* Find whether this component is placeholding or not
|
|
46
|
+
*
|
|
47
|
+
* This method will only find in the component `using` list and `generics` list.
|
|
48
|
+
* If not found, returns `undefined` .
|
|
49
|
+
* If the placeholder will be used, returns `true` ; `false` otherwise.
|
|
50
|
+
*/
|
|
51
|
+
checkComponentPlaceholder(usingKey: string): boolean | undefined;
|
|
52
|
+
getElementById(id: string): Element | undefined;
|
|
53
|
+
/** @internal */
|
|
54
|
+
_$markIdCacheDirty(): void;
|
|
55
|
+
/** @internal */
|
|
56
|
+
_$getIdMap(): {
|
|
57
|
+
[id: string]: Element;
|
|
58
|
+
};
|
|
59
|
+
/** Get the slot element if the component is in single-slot mode, or `undefined` if not */
|
|
60
|
+
getSingleSlotElement(): Element | null | undefined;
|
|
61
|
+
/** Get the slot element with the specified name */
|
|
62
|
+
getSlotElementFromName(name: string): Element | Element[] | null;
|
|
63
|
+
/**
|
|
64
|
+
* Get the slot element for the slot content
|
|
65
|
+
*
|
|
66
|
+
* The provided node must be a valid child node of the host of this shadow root.
|
|
67
|
+
* Otherwise the behavior is undefined.
|
|
68
|
+
*/
|
|
69
|
+
getContainingSlot(elem: Node | null): Element | null;
|
|
70
|
+
/**
|
|
71
|
+
* Get the elements that should be composed in specified slot
|
|
72
|
+
*
|
|
73
|
+
* This method always returns a new array (or null if the specified slot is invalid).
|
|
74
|
+
* It is convinient but less performant.
|
|
75
|
+
* For better performance, consider using `forEachNodeInSpecifiedSlot` .
|
|
76
|
+
*/
|
|
77
|
+
getSlotContentArray(slot: Element): Node[] | null;
|
|
78
|
+
/**
|
|
79
|
+
* Iterate slots
|
|
80
|
+
*/
|
|
81
|
+
forEachSlot(f: (slot: Element) => boolean | void): void;
|
|
82
|
+
/**
|
|
83
|
+
* Iterate elements with their slots
|
|
84
|
+
*/
|
|
85
|
+
forEachNodeInSlot(f: (node: Node, slot: Element | undefined) => boolean | void): void;
|
|
86
|
+
/**
|
|
87
|
+
* Iterate elements in specified slot
|
|
88
|
+
*/
|
|
89
|
+
forEachNodeInSpecifiedSlot(slot: Element | string, f: (node: Node, posIndex: number) => void): void;
|
|
90
|
+
/** @internal */
|
|
91
|
+
_$markSlotCacheDirty(): void;
|
|
92
|
+
/** @internal */
|
|
93
|
+
_$checkSlotChanges(): void;
|
|
94
|
+
private _$updateSlotCache;
|
|
95
|
+
/**
|
|
96
|
+
* Returns `true` if the component is in multiple-slot mode
|
|
97
|
+
*/
|
|
98
|
+
isMultipleSlots(): boolean;
|
|
99
|
+
/**
|
|
100
|
+
* Returns `true` if the component is in dynamic-slot mode
|
|
101
|
+
*/
|
|
102
|
+
isDynamicSlots(): boolean;
|
|
103
|
+
/**
|
|
104
|
+
* Set the dynamic slot handlers
|
|
105
|
+
*
|
|
106
|
+
* The updated value should be applied with `applySlotUpdates` call.
|
|
107
|
+
* If the handlers have not been set yet,
|
|
108
|
+
* the `insertSlotHandler` will be called for each slot that has been added to the shadow tree.
|
|
109
|
+
*/
|
|
110
|
+
setDynamicSlotHandler(requiredSlotValueNames: string[], insertSlotHandler: (slot: Element, name: string, slotValues: {
|
|
111
|
+
[name: string]: unknown;
|
|
112
|
+
}) => void, removeSlotHandler: (slot: Element) => void, updateSlotHandler: (slot: Element, slotValues: {
|
|
113
|
+
[name: string]: unknown;
|
|
114
|
+
}, updatePathTree: {
|
|
115
|
+
[name: string]: true;
|
|
116
|
+
}) => void): void;
|
|
117
|
+
/**
|
|
118
|
+
* Use the same dynamic slot handlers with the `source`
|
|
119
|
+
*/
|
|
120
|
+
useDynamicSlotHandlerFrom(source: ShadowRoot): void;
|
|
121
|
+
/**
|
|
122
|
+
* Update a slot value
|
|
123
|
+
*
|
|
124
|
+
* The updated value should be applied with `applySlotValueUpdates` call.
|
|
125
|
+
*/
|
|
126
|
+
replaceSlotValue(slot: Element, name: string, value: unknown): void;
|
|
127
|
+
/**
|
|
128
|
+
* Apply slot value updates
|
|
129
|
+
*/
|
|
130
|
+
applySlotValueUpdates(slot: Element): void;
|
|
131
|
+
/**
|
|
132
|
+
* Apply all pending slot updates
|
|
133
|
+
*/
|
|
134
|
+
applySlotUpdates(): void;
|
|
135
|
+
}
|
|
136
|
+
//# sourceMappingURL=shadow_root.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"shadow_root.d.ts","sourceRoot":"","sources":["../../../src/shadow_root.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { GeneralBehavior } from './behavior';
|
|
2
|
+
import { GeneralComponentInstance } from './component_params';
|
|
3
|
+
import { ShadowRoot } from './shadow_root';
|
|
4
|
+
import { DataChange, DataValue } from './data_proxy';
|
|
5
|
+
import { NormalizedComponentOptions } from './global_options';
|
|
6
|
+
import { ExternalShadowRoot } from './external_shadow_tree';
|
|
7
|
+
export interface TemplateEngine {
|
|
8
|
+
create(behavior: GeneralBehavior, componentOptions: NormalizedComponentOptions): Template;
|
|
9
|
+
}
|
|
10
|
+
export interface Template {
|
|
11
|
+
createInstance(elem: GeneralComponentInstance): TemplateInstance;
|
|
12
|
+
}
|
|
13
|
+
export interface TemplateInstance {
|
|
14
|
+
shadowRoot: ShadowRoot | ExternalShadowRoot;
|
|
15
|
+
initValues(data: DataValue): void;
|
|
16
|
+
updateValues(data: DataValue, changes: DataChange[]): void;
|
|
17
|
+
}
|
|
18
|
+
//# sourceMappingURL=template_engine.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"template_engine.d.ts","sourceRoot":"","sources":["../../../src/template_engine.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,eAAe,EAChB,MAAM,YAAY,CAAA;AACnB,OAAO,EACL,wBAAwB,EACzB,MAAM,oBAAoB,CAAA;AAC3B,OAAO,EACL,UAAU,EACX,MAAM,eAAe,CAAA;AACtB,OAAO,EACL,UAAU,EACV,SAAS,EACV,MAAM,cAAc,CAAA;AACrB,OAAO,EACL,0BAA0B,EAC3B,MAAM,kBAAkB,CAAA;AACzB,OAAO,EACL,kBAAkB,EACnB,MAAM,wBAAwB,CAAA;AAE/B,MAAM,WAAW,cAAc;IAC7B,MAAM,CACJ,QAAQ,EAAE,eAAe,EACzB,gBAAgB,EAAE,0BAA0B,GAC3C,QAAQ,CAAA;CACZ;AAED,MAAM,WAAW,QAAQ;IACvB,cAAc,CACZ,IAAI,EAAE,wBAAwB,GAC7B,gBAAgB,CAAA;CACpB;AAED,MAAM,WAAW,gBAAgB;IAC/B,UAAU,EAAE,UAAU,GAAG,kBAAkB,CAAA;IAE3C,UAAU,CACR,IAAI,EAAE,SAAS,GACd,IAAI,CAAA;IAEP,YAAY,CACV,IAAI,EAAE,SAAS,EACf,OAAO,EAAE,UAAU,EAAE,GACpB,IAAI,CAAA;CACR"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { ShadowRoot } from './shadow_root';
|
|
2
|
+
import { Element } from './element';
|
|
3
|
+
import { GeneralBackendElement, NodeCast } from './node';
|
|
4
|
+
export declare class TextNode implements NodeCast {
|
|
5
|
+
private _$backendElement;
|
|
6
|
+
private _$text;
|
|
7
|
+
ownerShadowRoot: ShadowRoot;
|
|
8
|
+
parentNode: Element | null;
|
|
9
|
+
/** @internal */
|
|
10
|
+
_$destroyOnDetach: boolean;
|
|
11
|
+
/** @internal */
|
|
12
|
+
_$nodeSlotElement: Element | null;
|
|
13
|
+
constructor(text: string, owner: ShadowRoot);
|
|
14
|
+
static create(text: string, ownerShadowRoot: ShadowRoot): TextNode;
|
|
15
|
+
asTextNode(): TextNode;
|
|
16
|
+
asElement(): null;
|
|
17
|
+
asNativeNode(): null;
|
|
18
|
+
asVirtualNode(): null;
|
|
19
|
+
asInstanceOf(): null;
|
|
20
|
+
/** Destroy the backend element */
|
|
21
|
+
destroyBackendElement(): void;
|
|
22
|
+
/** Destroy the backend element on next detach */
|
|
23
|
+
destroyBackendElementOnDetach(): void;
|
|
24
|
+
/** Get the backend element */
|
|
25
|
+
getBackendElement(): GeneralBackendElement | null;
|
|
26
|
+
/** Get composed parent (including virtual nodes) */
|
|
27
|
+
getComposedParent(): Element | null;
|
|
28
|
+
get $$(): GeneralBackendElement | null;
|
|
29
|
+
get textContent(): string;
|
|
30
|
+
set textContent(text: string);
|
|
31
|
+
}
|
|
32
|
+
//# sourceMappingURL=text_node.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"text_node.d.ts","sourceRoot":"","sources":["../../../src/text_node.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,UAAU,EACX,MAAM,eAAe,CAAA;AACtB,OAAO,EACL,OAAO,EACR,MAAM,WAAW,CAAA;AAIlB,OAAO,EACL,qBAAqB,EAAE,QAAQ,EAChC,MAAM,QAAQ,CAAA;AASf,qBAAa,QAAS,YAAW,QAAQ;IACvC,OAAO,CAAC,gBAAgB,CAA8B;IACtD,OAAO,CAAC,MAAM,CAAQ;IACtB,eAAe,EAAE,UAAU,CAAA;IAC3B,UAAU,EAAE,OAAO,GAAG,IAAI,CAAA;IAC1B,gBAAgB;IAChB,iBAAiB,UAAQ;IACzB,gBAAgB;IAChB,iBAAiB,EAAE,OAAO,GAAG,IAAI,CAAA;gBAG/B,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,UAAU;IAuBnB,MAAM,CAAC,MAAM,CACX,IAAI,EAAE,MAAM,EACZ,eAAe,EAAE,UAAU,GAC1B,QAAQ;IAIX,UAAU,IAAI,QAAQ;IAKtB,SAAS,IAAI,IAAI;IAKjB,YAAY,IAAI,IAAI;IAKpB,aAAa,IAAI,IAAI;IAKrB,YAAY,IAAI,IAAI;IAIpB,kCAAkC;IAClC,qBAAqB;IAWrB,iDAAiD;IACjD,6BAA6B;IAI7B,8BAA8B;IAC9B,iBAAiB,IAAI,qBAAqB,GAAG,IAAI;IAIjD,oDAAoD;IACpD,iBAAiB,IAAI,OAAO,GAAG,IAAI;IAYnC,IAAI,EAAE,iCAEL;IAED,IAAI,WAAW,IAIO,MAAM,CAF3B;IAED,IAAI,WAAW,CAAC,IAAI,EAAE,MAAM,EAe3B;CACF"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { templateEngine, GeneralBehavior, NormalizedComponentOptions } from '..';
|
|
2
|
+
import { ProcGenWrapper, ProcGen } from './proc_gen_wrapper';
|
|
3
|
+
export declare const DEFAULT_PROC_GEN_GROUP: (name: string) => ProcGen;
|
|
4
|
+
export type ProcGenGroup = (name: string) => ProcGen;
|
|
5
|
+
export type ProcGenGroupList = {
|
|
6
|
+
[path: string]: ProcGenGroup;
|
|
7
|
+
};
|
|
8
|
+
export type ComponentTemplate = {
|
|
9
|
+
groupList?: ProcGenGroupList;
|
|
10
|
+
content: (name: string) => ProcGen;
|
|
11
|
+
updateMode?: string;
|
|
12
|
+
disallowNativeNode?: boolean;
|
|
13
|
+
procGenWrapperType?: typeof ProcGenWrapper;
|
|
14
|
+
};
|
|
15
|
+
export declare class GlassEaselTemplateEngine implements templateEngine.TemplateEngine {
|
|
16
|
+
create(behavior: GeneralBehavior, componentOptions: NormalizedComponentOptions): templateEngine.Template;
|
|
17
|
+
}
|
|
18
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/tmpl/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAIL,cAAc,EACd,eAAe,EACf,0BAA0B,EAE3B,MAAM,IAAI,CAAA;AAGX,OAAO,EACL,cAAc,EAEd,OAAO,EAGR,MAAM,oBAAoB,CAAA;AAQ3B,eAAO,MAAM,sBAAsB,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAgC,CAAA;AAEvF,MAAM,MAAM,YAAY,GAAG,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAA;AAEpD,MAAM,MAAM,gBAAgB,GAAG;IAAE,CAAC,IAAI,EAAE,MAAM,GAAG,YAAY,CAAA;CAAE,CAAA;AAE/D,MAAM,MAAM,iBAAiB,GAAG;IAC9B,SAAS,CAAC,EAAE,gBAAgB,CAAC;IAC7B,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC;IACnC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,kBAAkB,CAAC,EAAE,OAAO,cAAc,CAAC;CAC5C,CAAA;AAQD,qBAAa,wBAAyB,YAAW,cAAc,CAAC,cAAc;IAC5E,MAAM,CACJ,QAAQ,EAAE,eAAe,EACzB,gBAAgB,EAAE,0BAA0B,GAC3C,cAAc,CAAC,QAAQ;CAM3B"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { ExternalShadowRoot, DataValue, templateEngine, GeneralFuncType, GeneralBehavior, Event, ShadowedEvent, GeneralBackendElement, GeneralComponent } from '..';
|
|
2
|
+
import { DataChange } from '../data_proxy';
|
|
3
|
+
import { ProcGenEnv, ProcGen, BindingMapGen } from './proc_gen_wrapper';
|
|
4
|
+
import { ProcGenWrapperDom } from './proc_gen_wrapper_dom';
|
|
5
|
+
export type ExternalEvent = Event<unknown> & {
|
|
6
|
+
target: Element;
|
|
7
|
+
currentTarget: Element;
|
|
8
|
+
};
|
|
9
|
+
export declare const DEFAULT_PROC_GEN_GROUP_DOM: (name: string) => ProcGen;
|
|
10
|
+
export declare class GlassEaselTemplateDOM implements templateEngine.Template {
|
|
11
|
+
data: DataValue;
|
|
12
|
+
innerData: DataValue;
|
|
13
|
+
genObjectGroupEnv: ProcGenEnv;
|
|
14
|
+
updateMode: string;
|
|
15
|
+
methods: {
|
|
16
|
+
[name: string]: GeneralFuncType;
|
|
17
|
+
};
|
|
18
|
+
constructor(behavior: GeneralBehavior);
|
|
19
|
+
createInstance(comp: GeneralComponent): templateEngine.TemplateInstance;
|
|
20
|
+
}
|
|
21
|
+
export declare class GlassEaselTemplateDOMInstance implements templateEngine.TemplateInstance, ExternalShadowRoot {
|
|
22
|
+
template: GlassEaselTemplateDOM;
|
|
23
|
+
comp: GeneralComponent;
|
|
24
|
+
shadowRoot: ExternalShadowRoot;
|
|
25
|
+
shadowRootElement: Element;
|
|
26
|
+
root: GeneralBackendElement;
|
|
27
|
+
slot: GeneralBackendElement;
|
|
28
|
+
idMap: {
|
|
29
|
+
[key: string]: Element;
|
|
30
|
+
};
|
|
31
|
+
listeners: Array<unknown>;
|
|
32
|
+
procGenWrapper: ProcGenWrapperDom;
|
|
33
|
+
bindingMapGen: {
|
|
34
|
+
[field: string]: BindingMapGen[];
|
|
35
|
+
} | undefined;
|
|
36
|
+
constructor(template: GlassEaselTemplateDOM, comp: GeneralComponent);
|
|
37
|
+
initValues(data: DataValue): void;
|
|
38
|
+
getIdMap(): {
|
|
39
|
+
[key: string]: GeneralBackendElement;
|
|
40
|
+
};
|
|
41
|
+
updateValues(data: DataValue, changes: DataChange[]): void;
|
|
42
|
+
setListener<T>(elem: GeneralBackendElement, ev: string, listener: (event: ShadowedEvent<T>) => unknown): void;
|
|
43
|
+
handleEvent(elem: GeneralBackendElement, event: Event<unknown>): void;
|
|
44
|
+
}
|
|
45
|
+
//# sourceMappingURL=native_rendering.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"native_rendering.d.ts","sourceRoot":"","sources":["../../../../src/tmpl/native_rendering.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,kBAAkB,EAClB,SAAS,EACT,cAAc,EACd,eAAe,EACf,eAAe,EACf,KAAK,EACL,aAAa,EACb,qBAAqB,EAErB,gBAAgB,EACjB,MAAM,IAAI,CAAA;AACX,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AAC1C,OAAO,EACL,UAAU,EACV,OAAO,EACP,aAAa,EACd,MAAM,oBAAoB,CAAA;AAC3B,OAAO,EACL,iBAAiB,EAClB,MAAM,wBAAwB,CAAA;AAS/B,MAAM,MAAM,aAAa,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG;IAAE,MAAM,EAAE,OAAO,CAAC;IAAC,aAAa,EAAE,OAAO,CAAA;CAAE,CAAA;AAQxF,eAAO,MAAM,0BAA0B,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAoC,CAAA;AAE/F,qBAAa,qBAAsB,YAAW,cAAc,CAAC,QAAQ;IACnE,IAAI,EAAE,SAAS,CAAA;IACf,SAAS,EAAE,SAAS,CAAA;IACpB,iBAAiB,EAAE,UAAU,CAAA;IAC7B,UAAU,EAAE,MAAM,CAAA;IAClB,OAAO,EAAE;QAAE,CAAC,IAAI,EAAE,MAAM,GAAG,eAAe,CAAA;KAAE,CAAA;gBAG1C,QAAQ,EAAE,eAAe;IAiB3B,cAAc,CACZ,IAAI,EAAE,gBAAgB,GACrB,cAAc,CAAC,gBAAgB;CAGnC;AAED,qBAAa,6BACb,YAAW,cAAc,CAAC,gBAAgB,EAAE,kBAAkB;IAC5D,QAAQ,EAAE,qBAAqB,CAAA;IAC/B,IAAI,EAAE,gBAAgB,CAAA;IACtB,UAAU,EAAE,kBAAkB,CAAA;IAC9B,iBAAiB,EAAE,OAAO,CAAA;IAC1B,IAAI,EAAE,qBAAqB,CAAA;IAC3B,IAAI,EAAE,qBAAqB,CAAA;IAC3B,KAAK,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;KAAE,CAAA;IACjC,SAAS,EAAE,KAAK,CAAC,OAAO,CAAC,CAAA;IACzB,cAAc,EAAE,iBAAiB,CAAA;IACjC,aAAa,EAAE;QAAE,CAAC,KAAK,EAAE,MAAM,GAAG,aAAa,EAAE,CAAA;KAAE,GAAG,SAAS,CAAA;gBAEnD,QAAQ,EAAE,qBAAqB,EAAE,IAAI,EAAE,gBAAgB;IAoBnE,UAAU,CACR,IAAI,EAAE,SAAS;IAejB,QAAQ,IAAI;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,qBAAqB,CAAA;KAAE;IAIpD,YAAY,CACV,IAAI,EAAE,SAAS,EACf,OAAO,EAAE,UAAU,EAAE;IAUvB,WAAW,CAAC,CAAC,EACX,IAAI,EAAE,qBAAqB,EAC3B,EAAE,EAAE,MAAM,EACV,QAAQ,EAAE,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC,CAAC,KAAK,OAAO;IAUhD,WAAW,CAAC,IAAI,EAAE,qBAAqB,EAAE,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC;CAuB/D"}
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
import { ProcGenGroupList } from '.';
|
|
2
|
+
import { DataValue, Element, ShadowRoot, TextNode, GeneralComponent, Node, ShadowedEvent } from '..';
|
|
3
|
+
import { DataPath } from '../data_path';
|
|
4
|
+
import { RangeListManager } from './range_list_diff';
|
|
5
|
+
export type UpdatePathTreeNode = true | {
|
|
6
|
+
[key: string]: UpdatePathTreeNode;
|
|
7
|
+
} | UpdatePathTreeNode[];
|
|
8
|
+
export type UpdatePathTreeRoot = UpdatePathTreeNode | undefined;
|
|
9
|
+
type TmplArgs = {
|
|
10
|
+
key?: number | string;
|
|
11
|
+
keyList?: RangeListManager;
|
|
12
|
+
scopeData?: unknown;
|
|
13
|
+
dynEvListeners?: {
|
|
14
|
+
[name: string]: (ev: ShadowedEvent<unknown>) => boolean | undefined;
|
|
15
|
+
};
|
|
16
|
+
index?: number;
|
|
17
|
+
dynamicSlotNameMatched?: boolean;
|
|
18
|
+
slotProps?: Record<string, [DataValue, DataPath | null, boolean]>;
|
|
19
|
+
slotPropsUpdatePathTree?: Record<string, UpdatePathTreeRoot>;
|
|
20
|
+
};
|
|
21
|
+
export type TmplNode = Node & {
|
|
22
|
+
_$wxTmplArgs?: TmplArgs;
|
|
23
|
+
};
|
|
24
|
+
export declare const getTmplArgs: (elem: Node) => TmplArgs;
|
|
25
|
+
export declare const dataValueToString: (v: DataValue) => string;
|
|
26
|
+
export type ProcGen = (wrapper: ProcGenWrapper, isCreation: boolean, data: DataValue, dataUpdatePathTree: UpdatePathTreeRoot) => {
|
|
27
|
+
C: DefineChildren;
|
|
28
|
+
B?: {
|
|
29
|
+
[field: string]: BindingMapGen[];
|
|
30
|
+
};
|
|
31
|
+
};
|
|
32
|
+
export type ProcGenEnv = {
|
|
33
|
+
group: (name: string) => ProcGen;
|
|
34
|
+
list: ProcGenGroupList;
|
|
35
|
+
};
|
|
36
|
+
export type BindingMapGen = (data: DataValue, elementUpdated: (elem: Element) => void, updateText: (node: TextNode, content: string) => void) => void;
|
|
37
|
+
export type DefineChildren = (isCreation: boolean, defineTextNode: DefineTextNode, defineElement: DefineElement, defineIfGroup: DefineIfGroup, defineForLoop: DefineForLoop, defineSlot: DefineSlot, definePureVirtualNode: DefinePureVirtualNode, dynamicSlotValues: {
|
|
38
|
+
[name: string]: unknown;
|
|
39
|
+
} | undefined, slotValueUpdatePathTrees: UpdatePathTreeNode | undefined) => void;
|
|
40
|
+
type DefineTextNode = (text: string | undefined, textInit?: (elem: TextNode) => boolean) => void;
|
|
41
|
+
type DefineElement = (tag: string, genericImpls: {
|
|
42
|
+
[key: string]: string;
|
|
43
|
+
}, propertyInit: (elem: Element, isCreation: boolean) => void, children: DefineChildren, slot?: string, dynamicSlotValueNames?: string[]) => void;
|
|
44
|
+
type DefineIfGroup = (branchKey: number | string, branchFunc: DefineChildren) => void;
|
|
45
|
+
type DefineForLoop = (list: DataValue[], key: string | null, oriListUpdatePathTree: UpdatePathTreeRoot, lvaluePath: DataPath | null, itemCallback: (isCreation: boolean, item: DataValue, index: number | string, itemUpdatePathTree: UpdatePathTreeRoot, indexUpdatePathTree: UpdatePathTreeRoot, itemLvaluePath: DataPath | null, defineTextNode: DefineTextNode, defineElement: DefineElement, defineIfGroup: DefineIfGroup, defineForLoop: DefineForLoop, defineSlot: DefineSlot, definePureVirtualNode: DefinePureVirtualNode) => void) => void;
|
|
46
|
+
type DefineSlot = (name: string | undefined, slotValueInit?: (elem: Element) => void) => void;
|
|
47
|
+
type DefinePureVirtualNode = (children: DefineChildren, slot: string | undefined) => void;
|
|
48
|
+
export declare class ProcGenWrapper {
|
|
49
|
+
shadowRoot: ShadowRoot;
|
|
50
|
+
procGen: ProcGen;
|
|
51
|
+
disallowNativeNode: boolean;
|
|
52
|
+
bindingMapDisabled: boolean;
|
|
53
|
+
constructor(shadowRoot: ShadowRoot, procGen: ProcGen, disallowNativeNode: boolean);
|
|
54
|
+
create(data: DataValue): {
|
|
55
|
+
[field: string]: BindingMapGen[];
|
|
56
|
+
} | undefined;
|
|
57
|
+
update(data: DataValue, dataUpdatePathTree: UpdatePathTreeRoot): void;
|
|
58
|
+
bindingMapUpdate(field: string, data: DataValue, bindingMapGenList: {
|
|
59
|
+
[field: string]: BindingMapGen[];
|
|
60
|
+
}): boolean;
|
|
61
|
+
handleChildrenCreation(children: DefineChildren, parentNode: Element, slotElement: Element | undefined, dynamicSlotName: string | undefined): void;
|
|
62
|
+
handleChildrenUpdate(children: DefineChildren, parentNode: Element, slotElement: Element | undefined, dynamicSlotName: string | undefined): void;
|
|
63
|
+
dynamicSlotUpdate(elem: GeneralComponent, dynamicSlotValueNames: string[] | undefined, children: DefineChildren): ShadowRoot | null;
|
|
64
|
+
createDynamicPlaceholder(slotElement: Element): Element;
|
|
65
|
+
createCommonElement(tagName: string, genericImpls: {
|
|
66
|
+
[key: string]: string;
|
|
67
|
+
}, propertyInit: (elem: Element, isCreation: boolean) => void, children: DefineChildren, dynamicSlotValueNames: string[] | undefined): Element;
|
|
68
|
+
s(elem: Element, v: string): void;
|
|
69
|
+
l(elem: Element, name: string, value: unknown): void;
|
|
70
|
+
i(elem: Element, v: string): void;
|
|
71
|
+
c(elem: Element, v: string): void;
|
|
72
|
+
y(elem: Element, v: string): void;
|
|
73
|
+
d(elem: Element, name: string, v: unknown): void;
|
|
74
|
+
m(elem: Element, name: string, v: unknown): void;
|
|
75
|
+
v(elem: Element, evName: string, v: string, final: boolean, mutated: boolean, capture: boolean, isDynamic: boolean): void;
|
|
76
|
+
sd(elem: Element, scopeData: unknown): void;
|
|
77
|
+
r(elem: Element, name: string, v: unknown, lvaluePath?: DataPath): void;
|
|
78
|
+
}
|
|
79
|
+
export {};
|
|
80
|
+
//# sourceMappingURL=proc_gen_wrapper.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"proc_gen_wrapper.d.ts","sourceRoot":"","sources":["../../../../src/tmpl/proc_gen_wrapper.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import { DataValue, Node, ShadowedEvent } from '..';
|
|
2
|
+
import { DataPath } from '../data_path';
|
|
3
|
+
import { RangeListManager } from './range_list_diff';
|
|
4
|
+
import { ProcGen, BindingMapGen, UpdatePathTreeRoot } from './proc_gen_wrapper';
|
|
5
|
+
import type { GlassEaselTemplateDOMInstance } from './native_rendering';
|
|
6
|
+
type TmplArgs = {
|
|
7
|
+
key?: number | string;
|
|
8
|
+
keyList?: RangeListManager;
|
|
9
|
+
scopeData?: unknown;
|
|
10
|
+
dynEvListeners?: {
|
|
11
|
+
[name: string]: (ev: ShadowedEvent<unknown>) => boolean | undefined;
|
|
12
|
+
};
|
|
13
|
+
index?: number;
|
|
14
|
+
slotProps?: Record<string, [DataValue, DataPath | null, boolean]>;
|
|
15
|
+
slotPropsUpdatePathTree?: Record<string, UpdatePathTreeRoot>;
|
|
16
|
+
};
|
|
17
|
+
export type TmplNode = Node & {
|
|
18
|
+
_$wxTmplArgs?: TmplArgs;
|
|
19
|
+
};
|
|
20
|
+
declare const noop: () => void;
|
|
21
|
+
export type DefineChildren = (isCreation: boolean, defineTextNode: DefineTextNode, defineElement: DefineElement, defineIfGroup: typeof noop, defineForLoop: typeof noop, defineSlot: DefineSlot, definePureVirtualNode: DefinePureVirtualNode) => void;
|
|
22
|
+
type DefineTextNode = (text: string | undefined, textInit?: (elem: Text) => void) => void;
|
|
23
|
+
type DefineElement = (tag: string, genericImpls: {
|
|
24
|
+
[key: string]: string;
|
|
25
|
+
}, propertyInit: (elem: HTMLElement, isCreation: boolean) => void, children: DefineChildren, slot: string | undefined) => void;
|
|
26
|
+
type DefineSlot = () => void;
|
|
27
|
+
type DefinePureVirtualNode = (children: DefineChildren, slot: string | undefined) => void;
|
|
28
|
+
export declare class ProcGenWrapperDom {
|
|
29
|
+
shadowRoot: GlassEaselTemplateDOMInstance;
|
|
30
|
+
procGen: ProcGen;
|
|
31
|
+
constructor(shadowRoot: GlassEaselTemplateDOMInstance, procGen: ProcGen);
|
|
32
|
+
create(data: DataValue): {
|
|
33
|
+
[field: string]: BindingMapGen[];
|
|
34
|
+
} | undefined;
|
|
35
|
+
bindingMapUpdate(field: string, data: DataValue, bindingMapGenList: {
|
|
36
|
+
[field: string]: BindingMapGen[];
|
|
37
|
+
}): void;
|
|
38
|
+
handleChildrenCreation(children: DefineChildren, parentNode: HTMLElement): void;
|
|
39
|
+
s(): void;
|
|
40
|
+
i(elem: HTMLElement, v: string): void;
|
|
41
|
+
c(elem: HTMLElement, v: string): void;
|
|
42
|
+
y(elem: HTMLElement, v: string): void;
|
|
43
|
+
d(elem: HTMLElement, name: string, v: unknown): void;
|
|
44
|
+
m(): void;
|
|
45
|
+
v(elem: HTMLElement, evName: string, v: string, final: boolean): void;
|
|
46
|
+
sd(): void;
|
|
47
|
+
r(elem: HTMLElement, name: string, v: unknown): void;
|
|
48
|
+
}
|
|
49
|
+
export {};
|
|
50
|
+
//# sourceMappingURL=proc_gen_wrapper_dom.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"proc_gen_wrapper_dom.d.ts","sourceRoot":"","sources":["../../../../src/tmpl/proc_gen_wrapper_dom.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { Element, VirtualNode } from '..';
|
|
2
|
+
import { DataValue } from '../data_proxy';
|
|
3
|
+
import { UpdatePathTreeRoot } from './proc_gen_wrapper';
|
|
4
|
+
export declare class RangeListManager {
|
|
5
|
+
keyName: string | null;
|
|
6
|
+
rawKeys: string[];
|
|
7
|
+
keyMap: {
|
|
8
|
+
[key: string]: number;
|
|
9
|
+
};
|
|
10
|
+
sharedKeyMap: {
|
|
11
|
+
[key: string]: number[];
|
|
12
|
+
} | undefined;
|
|
13
|
+
items: DataValue[];
|
|
14
|
+
indexes: (string | number)[] | null;
|
|
15
|
+
constructor(keyName: string | null, dataList: DataValue, elem: Element, newListItem: (item: DataValue, index: number | string) => VirtualNode);
|
|
16
|
+
updateKeys(dataList: DataValue): void;
|
|
17
|
+
diff(dataList: DataValue[], oriUpdatePathTree: UpdatePathTreeRoot, elem: Element, newListItem: (item: DataValue, index: string | number) => VirtualNode, updateListItem: (item: DataValue, index: string | number, updatePathTree: UpdatePathTreeRoot, indexChanged: boolean, node: VirtualNode) => void): void;
|
|
18
|
+
}
|
|
19
|
+
//# sourceMappingURL=range_list_diff.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"range_list_diff.d.ts","sourceRoot":"","sources":["../../../../src/tmpl/range_list_diff.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,OAAO,EACP,WAAW,EACZ,MAAM,IAAI,CAAA;AACX,OAAO,EACL,SAAS,EACV,MAAM,eAAe,CAAA;AACtB,OAAO,EAAsB,kBAAkB,EAAE,MAAM,oBAAoB,CAAA;AAG3E,qBAAa,gBAAgB;IAC3B,OAAO,EAAE,MAAM,GAAG,IAAI,CAAA;IACtB,OAAO,EAAG,MAAM,EAAE,CAAA;IAClB,MAAM,EAAG;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAA;IAClC,YAAY,EAAG;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,CAAA;KAAE,GAAG,SAAS,CAAA;IACtD,KAAK,EAAG,SAAS,EAAE,CAAA;IACnB,OAAO,EAAG,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,GAAG,IAAI,CAAA;gBAGlC,OAAO,EAAE,MAAM,GAAG,IAAI,EACtB,QAAQ,EAAE,SAAS,EACnB,IAAI,EAAE,OAAO,EACb,WAAW,EAAE,CACX,IAAI,EAAE,SAAS,EACf,KAAK,EAAE,MAAM,GAAG,MAAM,KACnB,WAAW;IAelB,UAAU,CAAC,QAAQ,EAAE,SAAS;IAoF9B,IAAI,CACF,QAAQ,EAAE,SAAS,EAAE,EACrB,iBAAiB,EAAE,kBAAkB,EACrC,IAAI,EAAE,OAAO,EACb,WAAW,EAAE,CACX,IAAI,EAAE,SAAS,EACf,KAAK,EAAE,MAAM,GAAG,MAAM,KACnB,WAAW,EAChB,cAAc,EAAE,CACd,IAAI,EAAE,SAAS,EACf,KAAK,EAAE,MAAM,GAAG,MAAM,EACtB,cAAc,EAAE,kBAAkB,EAClC,YAAY,EAAE,OAAO,EACrB,IAAI,EAAE,WAAW,KACd,IAAI;CAgTZ"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { ComponentSpace } from '.';
|
|
2
|
+
/**
|
|
3
|
+
* Interface that can be implement dynamically
|
|
4
|
+
*
|
|
5
|
+
* A `TraitBehavior` is like a TypeScript interface, but can be implemented dynamically.
|
|
6
|
+
* It requires the implementors to implement `TIn` .
|
|
7
|
+
* Also, it can provide do a transform from `TIn` to `TOut` as common logic of the trait.
|
|
8
|
+
*/
|
|
9
|
+
export declare class TraitBehavior<TIn extends {
|
|
10
|
+
[key: string]: unknown;
|
|
11
|
+
}, TOut extends {
|
|
12
|
+
[key: string]: unknown;
|
|
13
|
+
} = TIn> {
|
|
14
|
+
/** @internal */
|
|
15
|
+
private _$trans?;
|
|
16
|
+
ownerSpace: ComponentSpace;
|
|
17
|
+
/** @internal */
|
|
18
|
+
constructor(ownerSpace: ComponentSpace, trans?: (impl: TIn) => TOut);
|
|
19
|
+
/** @internal */
|
|
20
|
+
_$implement(impl: TIn): TOut;
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* A manager that can implement multiple different trait behaviors
|
|
24
|
+
*/
|
|
25
|
+
export declare class TraitGroup {
|
|
26
|
+
private _$traits;
|
|
27
|
+
implement<TIn extends {
|
|
28
|
+
[key: string]: unknown;
|
|
29
|
+
}, TOut extends {
|
|
30
|
+
[key: string]: unknown;
|
|
31
|
+
}>(traitBehavior: TraitBehavior<TIn, TOut>, impl: TIn): void;
|
|
32
|
+
get<TIn extends {
|
|
33
|
+
[key: string]: unknown;
|
|
34
|
+
}, TOut extends {
|
|
35
|
+
[key: string]: unknown;
|
|
36
|
+
}>(traitBehavior: TraitBehavior<TIn, TOut>): TOut | undefined;
|
|
37
|
+
}
|
|
38
|
+
//# sourceMappingURL=trait_behaviors.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"trait_behaviors.d.ts","sourceRoot":"","sources":["../../../src/trait_behaviors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,GAAG,CAAA;AAElC;;;;;;GAMG;AACH,qBAAa,aAAa,CACxB,GAAG,SAAS;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;CAAE,EACtC,IAAI,SAAS;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;CAAE,GAAG,GAAG;IAE7C,gBAAgB;IAChB,OAAO,CAAC,OAAO,CAAC,CAAqB;IACrC,UAAU,EAAE,cAAc,CAAA;IAE1B,gBAAgB;gBAEJ,UAAU,EAAE,cAAc,EAAE,KAAK,CAAC,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,IAAI;IAKnE,gBAAgB;IAChB,WAAW,CAAC,IAAI,EAAE,GAAG,GAAG,IAAI;CAG7B;AAED;;GAEG;AACH,qBAAa,UAAU;IACrB,OAAO,CAAC,QAAQ,CAA2D;IAE3E,SAAS,CACP,GAAG,SAAS;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;KAAE,EACtC,IAAI,SAAS;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;KAAE,EACvC,aAAa,EAAE,aAAa,CAAC,GAAG,EAAE,IAAI,CAAC,EAAE,IAAI,EAAE,GAAG;IAKpD,GAAG,CACD,GAAG,SAAS;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;KAAE,EACtC,IAAI,SAAS;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;KAAE,EACvC,aAAa,EAAE,aAAa,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,IAAI,GAAG,SAAS;CAG7D"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { Element } from './element';
|
|
2
|
+
import { ShadowRoot } from './shadow_root';
|
|
3
|
+
import { GeneralBackendContext } from '.';
|
|
4
|
+
export declare class VirtualNode extends Element {
|
|
5
|
+
is: string;
|
|
6
|
+
constructor();
|
|
7
|
+
protected _$initializeVirtual(virtualName: string, owner: ShadowRoot | null, nodeTreeContext: GeneralBackendContext): void;
|
|
8
|
+
static create(virtualName: string, owner: ShadowRoot): VirtualNode;
|
|
9
|
+
}
|
|
10
|
+
//# sourceMappingURL=virtual_node.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"virtual_node.d.ts","sourceRoot":"","sources":["../../../src/virtual_node.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,OAAO,EACR,MAAM,WAAW,CAAA;AAClB,OAAO,EACL,UAAU,EACX,MAAM,eAAe,CAAA;AAKtB,OAAO,EACL,qBAAqB,EACtB,MAAM,GAAG,CAAA;AAEV,qBAAa,WAAY,SAAQ,OAAO;IACtC,EAAE,EAAE,MAAM,CAAA;;IAQV,SAAS,CAAC,mBAAmB,CAC3B,WAAW,EAAE,MAAM,EACnB,KAAK,EAAE,UAAU,GAAG,IAAI,EACxB,eAAe,EAAE,qBAAqB;IAgBxC,MAAM,CAAC,MAAM,CACX,WAAW,EAAE,MAAM,EACnB,KAAK,EAAE,UAAU,GAChB,WAAW;CAKf"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"domlike.test.d.ts","sourceRoot":"","sources":["../../../../tests/backend/domlike.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import * as glassEasel from '../../src';
|
|
2
|
+
export declare const execWithWarn: <T>(expectCount: number, func: () => T) => T;
|
|
3
|
+
type TemplateOptions = {
|
|
4
|
+
updateMode?: string;
|
|
5
|
+
disallowNativeNode?: boolean;
|
|
6
|
+
};
|
|
7
|
+
export declare const tmpl: (src: string, options?: TemplateOptions) => {
|
|
8
|
+
updateMode?: string | undefined;
|
|
9
|
+
disallowNativeNode?: boolean | undefined;
|
|
10
|
+
groupList: {
|
|
11
|
+
[key: string]: any;
|
|
12
|
+
};
|
|
13
|
+
content: any;
|
|
14
|
+
};
|
|
15
|
+
export declare const multiTmpl: (src: {
|
|
16
|
+
[path: string]: string;
|
|
17
|
+
}, options?: TemplateOptions) => {
|
|
18
|
+
updateMode?: string | undefined;
|
|
19
|
+
disallowNativeNode?: boolean | undefined;
|
|
20
|
+
groupList: {
|
|
21
|
+
[key: string]: any;
|
|
22
|
+
};
|
|
23
|
+
content: any;
|
|
24
|
+
};
|
|
25
|
+
export declare const domBackend: glassEasel.domlikeBackend.CurrentWindowBackendContext;
|
|
26
|
+
export declare const shadowBackend: glassEasel.backend.EmptyBackendContext;
|
|
27
|
+
export declare const composedBackend: glassEasel.composedBackend.EmptyComposedBackendContext;
|
|
28
|
+
export {};
|
|
29
|
+
//# sourceMappingURL=env.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"env.d.ts","sourceRoot":"","sources":["../../../../tests/base/env.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,UAAU,MAAM,WAAW,CAAA;AAiBvC,eAAO,MAAM,YAAY,mBAAoB,MAAM,qBAalD,CAAA;AAED,KAAK,eAAe,GAAG;IACrB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,kBAAkB,CAAC,EAAE,OAAO,CAAA;CAC7B,CAAA;AAED,eAAO,MAAM,IAAI,QAAS,MAAM,YAAY,eAAe;;;;;;;CAc1D,CAAA;AAED,eAAO,MAAM,SAAS;;aAA+C,eAAe;;;;;;;CAgBnF,CAAA;AAED,eAAO,MAAM,UAAU,uDAA8D,CAAA;AACrF,eAAO,MAAM,aAAa,wCAA+C,CAAA;AACzE,eAAO,MAAM,eAAe,wDAA+D,CAAA"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { GeneralComponent, Element } from '../../src';
|
|
2
|
+
export declare const native: (structure: {
|
|
3
|
+
element: GeneralComponent;
|
|
4
|
+
childNodes?: {
|
|
5
|
+
element: GeneralComponent;
|
|
6
|
+
}[];
|
|
7
|
+
}) => void;
|
|
8
|
+
export declare const virtual: (elem: Element, defDomElem?: HTMLElement, defIndex?: number) => number;
|
|
9
|
+
//# sourceMappingURL=match.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"match.d.ts","sourceRoot":"","sources":["../../../../tests/base/match.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,gBAAgB,EAGhB,OAAO,EAMR,MAAM,WAAW,CAAA;AAYlB,eAAO,MAAM,MAAM,cACN;IACT,OAAO,EAAE,gBAAgB,CAAC;IAC1B,UAAU,CAAC,EAAE;QAAE,OAAO,EAAE,gBAAgB,CAAA;KAAE,EAAE,CAAC;CAC9C,SAeF,CAAA;AAsCD,eAAO,MAAM,OAAO,SACZ,OAAO,eACA,WAAW,aACb,MAAM,KAChB,MAoGF,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"backend.test.d.ts","sourceRoot":"","sources":["../../../../tests/core/backend.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"behavior.test.d.ts","sourceRoot":"","sources":["../../../../tests/core/behavior.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"component_space.test.d.ts","sourceRoot":"","sources":["../../../../tests/core/component_space.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"data_update.test.d.ts","sourceRoot":"","sources":["../../../../tests/core/data_update.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"misc.test.d.ts","sourceRoot":"","sources":["../../../../tests/core/misc.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"placeholder.test.d.ts","sourceRoot":"","sources":["../../../../tests/core/placeholder.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"slot.test.d.ts","sourceRoot":"","sources":["../../../../tests/core/slot.test.ts"],"names":[],"mappings":""}
|