@furystack/shades 7.2.6 → 8.0.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 (97) hide show
  1. package/package.json +25 -8
  2. package/src/component-factory.spec.tsx +2 -1
  3. package/src/components/lazy-load.spec.tsx +9 -4
  4. package/src/components/route-link.spec.tsx +8 -3
  5. package/src/components/router.spec.tsx +11 -6
  6. package/src/components/router.tsx +2 -2
  7. package/src/models/render-options.ts +0 -4
  8. package/src/models/shade-component.ts +0 -1
  9. package/src/services/location-service.spec.ts +8 -3
  10. package/src/services/resource-manager.spec.ts +1 -0
  11. package/src/services/screen-service.spec.ts +7 -2
  12. package/src/shade-component.ts +0 -2
  13. package/src/shade-resources.integration.spec.tsx +8 -3
  14. package/src/shade.ts +0 -1
  15. package/src/shades.integration.spec.tsx +11 -6
  16. package/types/models/render-options.d.ts +0 -4
  17. package/types/models/render-options.d.ts.map +1 -1
  18. package/types/models/shade-component.d.ts +0 -1
  19. package/types/models/shade-component.d.ts.map +1 -1
  20. package/types/shade-component.d.ts +0 -2
  21. package/types/shade-component.d.ts.map +1 -1
  22. package/types/shade.d.ts +0 -1
  23. package/types/shade.d.ts.map +1 -1
  24. package/dist/component-factory.spec.js +0 -81
  25. package/dist/component-factory.spec.js.map +0 -1
  26. package/dist/components/index.js +0 -20
  27. package/dist/components/index.js.map +0 -1
  28. package/dist/components/lazy-load.js +0 -45
  29. package/dist/components/lazy-load.js.map +0 -1
  30. package/dist/components/lazy-load.spec.js +0 -72
  31. package/dist/components/lazy-load.spec.js.map +0 -1
  32. package/dist/components/route-link.js +0 -28
  33. package/dist/components/route-link.js.map +0 -1
  34. package/dist/components/route-link.spec.js +0 -28
  35. package/dist/components/route-link.spec.js.map +0 -1
  36. package/dist/components/router.js +0 -62
  37. package/dist/components/router.js.map +0 -1
  38. package/dist/components/router.spec.js +0 -84
  39. package/dist/components/router.spec.js.map +0 -1
  40. package/dist/index.js +0 -24
  41. package/dist/index.js.map +0 -1
  42. package/dist/initialize.js +0 -9
  43. package/dist/initialize.js.map +0 -1
  44. package/dist/jsx.js +0 -3
  45. package/dist/jsx.js.map +0 -1
  46. package/dist/models/children-list.js +0 -3
  47. package/dist/models/children-list.js.map +0 -1
  48. package/dist/models/index.js +0 -22
  49. package/dist/models/index.js.map +0 -1
  50. package/dist/models/partial-element.js +0 -3
  51. package/dist/models/partial-element.js.map +0 -1
  52. package/dist/models/render-options.js +0 -3
  53. package/dist/models/render-options.js.map +0 -1
  54. package/dist/models/selection-state.js +0 -3
  55. package/dist/models/selection-state.js.map +0 -1
  56. package/dist/models/shade-component.js +0 -14
  57. package/dist/models/shade-component.js.map +0 -1
  58. package/dist/services/index.js +0 -19
  59. package/dist/services/index.js.map +0 -1
  60. package/dist/services/location-service.js +0 -93
  61. package/dist/services/location-service.js.map +0 -1
  62. package/dist/services/location-service.spec.js +0 -86
  63. package/dist/services/location-service.spec.js.map +0 -1
  64. package/dist/services/resource-manager.js +0 -48
  65. package/dist/services/resource-manager.js.map +0 -1
  66. package/dist/services/resource-manager.spec.js +0 -32
  67. package/dist/services/resource-manager.spec.js.map +0 -1
  68. package/dist/services/screen-service.js +0 -72
  69. package/dist/services/screen-service.js.map +0 -1
  70. package/dist/services/screen-service.spec.js +0 -25
  71. package/dist/services/screen-service.spec.js.map +0 -1
  72. package/dist/shade-component.js +0 -101
  73. package/dist/shade-component.js.map +0 -1
  74. package/dist/shade-resources.integration.spec.js +0 -55
  75. package/dist/shade-resources.integration.spec.js.map +0 -1
  76. package/dist/shade.js +0 -185
  77. package/dist/shade.js.map +0 -1
  78. package/dist/shades.integration.spec.js +0 -251
  79. package/dist/shades.integration.spec.js.map +0 -1
  80. package/types/component-factory.spec.d.ts +0 -2
  81. package/types/component-factory.spec.d.ts.map +0 -1
  82. package/types/components/lazy-load.spec.d.ts +0 -2
  83. package/types/components/lazy-load.spec.d.ts.map +0 -1
  84. package/types/components/route-link.spec.d.ts +0 -2
  85. package/types/components/route-link.spec.d.ts.map +0 -1
  86. package/types/components/router.spec.d.ts +0 -2
  87. package/types/components/router.spec.d.ts.map +0 -1
  88. package/types/services/location-service.spec.d.ts +0 -2
  89. package/types/services/location-service.spec.d.ts.map +0 -1
  90. package/types/services/resource-manager.spec.d.ts +0 -2
  91. package/types/services/resource-manager.spec.d.ts.map +0 -1
  92. package/types/services/screen-service.spec.d.ts +0 -2
  93. package/types/services/screen-service.spec.d.ts.map +0 -1
  94. package/types/shade-resources.integration.spec.d.ts +0 -2
  95. package/types/shade-resources.integration.spec.d.ts.map +0 -1
  96. package/types/shades.integration.spec.d.ts +0 -2
  97. package/types/shades.integration.spec.d.ts.map +0 -1
package/dist/shade.js DELETED
@@ -1,185 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Shade = void 0;
4
- const utils_1 = require("@furystack/utils");
5
- const inject_1 = require("@furystack/inject");
6
- const resource_manager_1 = require("./services/resource-manager");
7
- const services_1 = require("./services");
8
- /**
9
- * Factory method for creating Shade components
10
- *
11
- * @param o for component creation
12
- * @returns the JSX element
13
- */
14
- const Shade = (o) => {
15
- // register shadow-dom element
16
- const customElementName = o.shadowDomName;
17
- const existing = customElements.get(customElementName);
18
- if (!existing) {
19
- const ElementBase = o.elementBase || HTMLElement;
20
- customElements.define(customElementName, class extends ElementBase {
21
- constructor() {
22
- super(...arguments);
23
- this._renderCount = 0;
24
- this.resourceManager = new resource_manager_1.ResourceManager();
25
- /**
26
- * @param options Options for rendering the component
27
- * @returns the JSX element
28
- */
29
- this.render = (options) => {
30
- this._renderCount++;
31
- return o.render(options);
32
- };
33
- /**
34
- * @returns values for the current render options
35
- */
36
- this.getRenderOptions = () => {
37
- const renderOptions = {
38
- props: this.props,
39
- injector: this.injector,
40
- children: this.shadeChildren,
41
- element: this,
42
- useObservable: (key, obesrvable, callback, getLast) => this.resourceManager.useObservable(key, obesrvable, callback || (() => this.updateComponent()), getLast),
43
- useState: (key, initialValue) => this.resourceManager.useState(key, initialValue, this.updateComponent.bind(this)),
44
- useSearchState: (key, initialValue) => this.resourceManager.useObservable(`useSearchState-${key}`, this.injector.getInstance(services_1.LocationService).useSearchParam(key, initialValue), () => this.updateComponent()),
45
- useStoredState: (key, initialValue, storageArea = localStorage) => {
46
- const getFromStorage = () => {
47
- const value = storageArea?.getItem(key);
48
- return value ? JSON.parse(value) : initialValue;
49
- };
50
- const setToStorage = (value) => {
51
- if (JSON.stringify(value) !== storageArea?.getItem(key)) {
52
- const newValue = JSON.stringify(value);
53
- storageArea?.setItem(key, newValue);
54
- }
55
- if (JSON.stringify(observable.getValue()) !== JSON.stringify(value)) {
56
- observable.setValue(value);
57
- }
58
- };
59
- const observable = this.resourceManager.useDisposable(`useStoredState-${key}`, () => new utils_1.ObservableValue(getFromStorage()));
60
- const updateFromStorageEvent = (e) => {
61
- e.key === key &&
62
- e.storageArea === storageArea &&
63
- setToStorage((e.newValue && JSON.parse(e.newValue)) || initialValue);
64
- };
65
- this.resourceManager.useDisposable(`useStoredState-${key}-storage-event`, () => {
66
- window.addEventListener('storage', updateFromStorageEvent);
67
- const channelName = `useStoredState-broadcast-channel`;
68
- const messageChannel = new BroadcastChannel(channelName);
69
- messageChannel.onmessage = (e) => {
70
- if (e.data.key === key) {
71
- setToStorage(e.data.value);
72
- }
73
- };
74
- const subscription = observable.subscribe((value) => {
75
- messageChannel.postMessage({ key, value });
76
- });
77
- return {
78
- dispose: () => {
79
- window.removeEventListener('storage', updateFromStorageEvent);
80
- subscription.dispose();
81
- messageChannel.close();
82
- },
83
- };
84
- });
85
- observable.subscribe(setToStorage);
86
- return this.resourceManager.useObservable(`useStoredState-${key}`, observable, () => this.updateComponent());
87
- },
88
- useDisposable: this.resourceManager.useDisposable.bind(this.resourceManager),
89
- };
90
- return renderOptions;
91
- };
92
- this.cleanup = undefined;
93
- }
94
- /**
95
- * @returns the current render count
96
- */
97
- getRenderCount() {
98
- return this._renderCount;
99
- }
100
- connectedCallback() {
101
- o.onAttach?.(this.getRenderOptions());
102
- this.callConstructed();
103
- }
104
- disconnectedCallback() {
105
- o.onDetach?.(this.getRenderOptions());
106
- this.resourceManager.dispose();
107
- this.cleanup?.();
108
- }
109
- /**
110
- * Updates the component in the DOM.
111
- */
112
- updateComponent() {
113
- const renderResult = this.render(this.getRenderOptions());
114
- if (renderResult === null || renderResult === undefined) {
115
- this.innerHTML = '';
116
- }
117
- if (typeof renderResult === 'string' || typeof renderResult === 'number') {
118
- this.innerHTML = renderResult;
119
- }
120
- if (renderResult instanceof HTMLElement) {
121
- this.replaceChildren(renderResult);
122
- }
123
- if (renderResult instanceof DocumentFragment) {
124
- this.replaceChildren(renderResult);
125
- }
126
- }
127
- /**
128
- * Finialize the component initialization after it gets the Props. Called by the framework internally
129
- */
130
- callConstructed() {
131
- this.updateComponent();
132
- const cleanupResult = o.constructed && o.constructed(this.getRenderOptions());
133
- if (cleanupResult instanceof Promise) {
134
- cleanupResult.then((cleanup) => (this.cleanup = cleanup));
135
- }
136
- else {
137
- // construct is not async
138
- this.cleanup = cleanupResult;
139
- }
140
- }
141
- getInjectorFromParent() {
142
- let parent = this.parentElement;
143
- while (parent) {
144
- if (parent.injector) {
145
- return parent.injector;
146
- }
147
- parent = parent.parentElement;
148
- }
149
- }
150
- get injector() {
151
- if (this._injector) {
152
- return this._injector;
153
- }
154
- const fromProps = this.props?.injector;
155
- if (fromProps && fromProps instanceof inject_1.Injector) {
156
- return fromProps;
157
- }
158
- const fromParent = this.getInjectorFromParent();
159
- if (fromParent) {
160
- this._injector = fromParent;
161
- return fromParent;
162
- }
163
- // Injector not set explicitly and not found on parents!
164
- return new inject_1.Injector();
165
- }
166
- set injector(i) {
167
- this._injector = i;
168
- }
169
- }, o.elementBaseName ? { extends: o.elementBaseName } : undefined);
170
- }
171
- else {
172
- throw Error(`A custom shade with shadow DOM name '${o.shadowDomName}' has already been registered!`);
173
- }
174
- return (props, children) => {
175
- const ElementType = customElements.get(customElementName);
176
- const el = new ElementType({
177
- ...props,
178
- });
179
- el.props = props || {};
180
- el.shadeChildren = children;
181
- return el;
182
- };
183
- };
184
- exports.Shade = Shade;
185
- //# sourceMappingURL=shade.js.map
package/dist/shade.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"shade.js","sourceRoot":"","sources":["../src/shade.ts"],"names":[],"mappings":"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"}
@@ -1,251 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const inject_1 = require("@furystack/inject");
4
- const utils_1 = require("@furystack/utils");
5
- const util_1 = require("util");
6
- global.TextEncoder = util_1.TextEncoder;
7
- global.TextDecoder = util_1.TextDecoder;
8
- const initialize_1 = require("./initialize");
9
- const shade_1 = require("./shade");
10
- const shade_component_1 = require("./shade-component");
11
- describe('Shades integration tests', () => {
12
- beforeEach(() => (document.body.innerHTML = '<div id="root"></div>'));
13
- afterEach(() => (document.body.innerHTML = ''));
14
- it('Should mount a custom component to a Shade root', () => {
15
- const injector = new inject_1.Injector();
16
- const rootElement = document.getElementById('root');
17
- const ExampleComponent = (0, shade_1.Shade)({ render: () => (0, shade_component_1.createComponent)("div", null, "Hello"), shadowDomName: 'shades-example' });
18
- (0, initialize_1.initializeShadeRoot)({
19
- injector,
20
- rootElement,
21
- jsxElement: (0, shade_component_1.createComponent)(ExampleComponent, null),
22
- });
23
- expect(document.body.innerHTML).toBe('<div id="root"><shades-example><div>Hello</div></shades-example></div>');
24
- });
25
- it('Should mount a custom component with a string render result', () => {
26
- const injector = new inject_1.Injector();
27
- const rootElement = document.getElementById('root');
28
- const ExampleComponent = (0, shade_1.Shade)({ render: () => 'Hello', shadowDomName: 'shades-string-render-result' });
29
- (0, initialize_1.initializeShadeRoot)({
30
- injector,
31
- rootElement,
32
- jsxElement: (0, shade_component_1.createComponent)(ExampleComponent, null),
33
- });
34
- expect(document.body.innerHTML).toBe('<div id="root"><shades-string-render-result>Hello</shades-string-render-result></div>');
35
- });
36
- it('Should mount a custom component with null render result', async () => {
37
- await (0, utils_1.usingAsync)(new inject_1.Injector(), async (injector) => {
38
- const rootElement = document.getElementById('root');
39
- const ExampleComponent = (0, shade_1.Shade)({ render: () => null, shadowDomName: 'shades-null-render-result' });
40
- (0, initialize_1.initializeShadeRoot)({
41
- injector,
42
- rootElement,
43
- jsxElement: (0, shade_component_1.createComponent)(ExampleComponent, null),
44
- });
45
- expect(document.body.innerHTML).toBe('<div id="root"><shades-null-render-result></shades-null-render-result></div>');
46
- });
47
- });
48
- it('Should mount a custom component with a document fragment render result', async () => {
49
- await (0, utils_1.usingAsync)(new inject_1.Injector(), async (injector) => {
50
- const rootElement = document.getElementById('root');
51
- const ExampleComponent = (0, shade_1.Shade)({
52
- render: () => ((0, shade_component_1.createComponent)(shade_component_1.createComponent, null,
53
- (0, shade_component_1.createComponent)("p", null, "1"),
54
- (0, shade_component_1.createComponent)("p", null, "2"))),
55
- shadowDomName: 'shades-fragment-render-result',
56
- });
57
- (0, initialize_1.initializeShadeRoot)({
58
- injector,
59
- rootElement,
60
- jsxElement: (0, shade_component_1.createComponent)(ExampleComponent, null),
61
- });
62
- expect(document.body.innerHTML).toBe('<div id="root"><shades-fragment-render-result><p>1</p><p>2</p></shades-fragment-render-result></div>');
63
- });
64
- });
65
- it('Should mount a custom component with a nested document fragment render result', async () => {
66
- await (0, utils_1.usingAsync)(new inject_1.Injector(), async (injector) => {
67
- const rootElement = document.getElementById('root');
68
- const ExampleComponent = (0, shade_1.Shade)({
69
- render: () => ((0, shade_component_1.createComponent)("p", null,
70
- (0, shade_component_1.createComponent)(shade_component_1.createComponent, null,
71
- (0, shade_component_1.createComponent)("p", null, "1"),
72
- (0, shade_component_1.createComponent)("p", null, "2")))),
73
- shadowDomName: 'shades-fragment-render-result-nested',
74
- });
75
- (0, initialize_1.initializeShadeRoot)({
76
- injector,
77
- rootElement,
78
- jsxElement: (0, shade_component_1.createComponent)(ExampleComponent, null),
79
- });
80
- expect(document.body.innerHTML).toBe('<div id="root"><shades-fragment-render-result-nested><p><p>1</p><p>2</p></p></shades-fragment-render-result-nested></div>');
81
- });
82
- });
83
- it('Should mount a custom component with a document fragment that contains custom components', async () => {
84
- await (0, utils_1.usingAsync)(new inject_1.Injector(), async (injector) => {
85
- const rootElement = document.getElementById('root');
86
- const CustomComponent = (0, shade_1.Shade)({
87
- shadowDomName: 'shades-fragment-test-custom-component',
88
- render: () => (0, shade_component_1.createComponent)("p", null, "Hello"),
89
- });
90
- const ExampleComponent = (0, shade_1.Shade)({
91
- render: () => ((0, shade_component_1.createComponent)(shade_component_1.createComponent, null,
92
- (0, shade_component_1.createComponent)(CustomComponent, null),
93
- (0, shade_component_1.createComponent)(CustomComponent, null))),
94
- shadowDomName: 'shades-fragment-render-result-2',
95
- });
96
- (0, initialize_1.initializeShadeRoot)({
97
- injector,
98
- rootElement,
99
- jsxElement: (0, shade_component_1.createComponent)(ExampleComponent, null),
100
- });
101
- expect(document.body.innerHTML).toBe('<div id="root"><shades-fragment-render-result-2><shades-fragment-test-custom-component><p>Hello</p></shades-fragment-test-custom-component><shades-fragment-test-custom-component><p>Hello</p></shades-fragment-test-custom-component></shades-fragment-render-result-2></div>');
102
- });
103
- });
104
- it('Should mount nested Shades components', async () => {
105
- await (0, utils_1.usingAsync)(new inject_1.Injector(), async (injector) => {
106
- const rootElement = document.getElementById('root');
107
- const ExampleComponent = (0, shade_1.Shade)({
108
- render: ({ children }) => (0, shade_component_1.createComponent)("div", null, children),
109
- shadowDomName: 'shades-example-2',
110
- });
111
- const ExampleSubs = (0, shade_1.Shade)({
112
- render: ({ props }) => (0, shade_component_1.createComponent)("div", null, props.no),
113
- shadowDomName: 'shades-example-sub',
114
- });
115
- (0, initialize_1.initializeShadeRoot)({
116
- injector,
117
- rootElement,
118
- jsxElement: ((0, shade_component_1.createComponent)(ExampleComponent, null,
119
- (0, shade_component_1.createComponent)(ExampleSubs, { no: 1 }),
120
- (0, shade_component_1.createComponent)(ExampleSubs, { no: 2 }),
121
- (0, shade_component_1.createComponent)(ExampleSubs, { no: 3 }))),
122
- });
123
- expect(document.body.innerHTML).toBe('<div id="root"><shades-example-2><div><shades-example-sub><div>1</div></shades-example-sub><shades-example-sub><div>2</div></shades-example-sub><shades-example-sub><div>3</div></shades-example-sub></div></shades-example-2></div>');
124
- });
125
- });
126
- it("Should execute the constructed and constructed's cleanup callback", async () => {
127
- await (0, utils_1.usingAsync)(new inject_1.Injector(), async (injector) => {
128
- const rootElement = document.getElementById('root');
129
- const cleanup = jest.fn();
130
- const constructed = jest.fn(() => cleanup);
131
- const ExampleComponent = (0, shade_1.Shade)({
132
- constructed,
133
- shadowDomName: 'example-component-1',
134
- render: () => (0, shade_component_1.createComponent)("div", null, "Hello"),
135
- });
136
- (0, initialize_1.initializeShadeRoot)({
137
- injector,
138
- rootElement,
139
- jsxElement: (0, shade_component_1.createComponent)(ExampleComponent, null),
140
- });
141
- expect(constructed).toBeCalled();
142
- expect(cleanup).not.toBeCalled();
143
- document.body.innerHTML = '';
144
- expect(cleanup).toBeCalled();
145
- });
146
- });
147
- it('Should execute the onAttach and onDetach callbacks', async () => {
148
- await (0, utils_1.usingAsync)(new inject_1.Injector(), async (injector) => {
149
- const rootElement = document.getElementById('root');
150
- const onAttach = jest.fn();
151
- const onDetach = jest.fn();
152
- const ExampleComponent = (0, shade_1.Shade)({
153
- onAttach,
154
- onDetach,
155
- shadowDomName: 'example-component-2',
156
- render: () => (0, shade_component_1.createComponent)("div", null, "Hello"),
157
- });
158
- (0, initialize_1.initializeShadeRoot)({
159
- injector,
160
- rootElement,
161
- jsxElement: (0, shade_component_1.createComponent)(ExampleComponent, null),
162
- });
163
- expect(onAttach).toBeCalled();
164
- expect(onDetach).not.toBeCalled();
165
- document.body.innerHTML = '';
166
- expect(onDetach).toBeCalled();
167
- });
168
- });
169
- it('Should update state', async () => {
170
- await (0, utils_1.usingAsync)(new inject_1.Injector(), async (injector) => {
171
- const rootElement = document.getElementById('root');
172
- const ExampleComponent = (0, shade_1.Shade)({
173
- shadowDomName: 'example-component-3',
174
- render: ({ useState }) => {
175
- const [count, setCount] = useState('count', 0);
176
- return ((0, shade_component_1.createComponent)("div", null,
177
- "Count is ",
178
- count,
179
- (0, shade_component_1.createComponent)("button", { id: "plus", onclick: () => setCount(count + 1) }, "+"),
180
- (0, shade_component_1.createComponent)("button", { id: "minus", onclick: () => setCount(count - 1) }, "-")));
181
- },
182
- });
183
- (0, initialize_1.initializeShadeRoot)({
184
- injector,
185
- rootElement,
186
- jsxElement: (0, shade_component_1.createComponent)(ExampleComponent, null),
187
- });
188
- const plus = () => document.getElementById('plus')?.click();
189
- const minus = () => document.getElementById('minus')?.click();
190
- const expectCount = (count) => expect(document.body.innerHTML).toContain(`Count is ${count}`);
191
- expectCount(0);
192
- plus();
193
- expectCount(1);
194
- plus();
195
- expectCount(2);
196
- minus();
197
- minus();
198
- expectCount(0);
199
- });
200
- });
201
- it('Should allow children update after unmount and remount', async () => {
202
- await (0, utils_1.usingAsync)(new inject_1.Injector(), async (injector) => {
203
- const rootElement = document.getElementById('root');
204
- const Parent = (0, shade_1.Shade)({
205
- shadowDomName: 'shade-remount-parent',
206
- render: ({ children, useState }) => {
207
- const [areChildrenVisible, setAreChildrenVisible] = useState('areChildrenVisible', true);
208
- return ((0, shade_component_1.createComponent)("div", null,
209
- (0, shade_component_1.createComponent)("button", { id: "showHideChildren", onclick: () => {
210
- setAreChildrenVisible(!areChildrenVisible);
211
- } }, "Toggle"),
212
- areChildrenVisible ? children : null));
213
- },
214
- });
215
- const Child = (0, shade_1.Shade)({
216
- shadowDomName: 'example-remount-child',
217
- render: ({ useState }) => {
218
- const [count, setCount] = useState('count', 0);
219
- return ((0, shade_component_1.createComponent)("div", null,
220
- "Count is ",
221
- `${count}`,
222
- (0, shade_component_1.createComponent)("button", { id: "plus", onclick: () => setCount(count + 1) }, "+"),
223
- (0, shade_component_1.createComponent)("button", { id: "minus", onclick: () => setCount(count - 1) }, "-")));
224
- },
225
- });
226
- (0, initialize_1.initializeShadeRoot)({
227
- injector,
228
- rootElement,
229
- jsxElement: ((0, shade_component_1.createComponent)(Parent, null,
230
- (0, shade_component_1.createComponent)(Child, null))),
231
- });
232
- const plus = () => document.getElementById('plus')?.click();
233
- const minus = () => document.getElementById('minus')?.click();
234
- const expectCount = (count) => expect(document.body.innerHTML).toContain(`Count is ${count}`);
235
- const toggleChildren = () => document.getElementById('showHideChildren')?.click();
236
- expectCount(0);
237
- plus();
238
- expectCount(1);
239
- toggleChildren();
240
- expect(document.getElementById('plus')).toBeNull();
241
- toggleChildren();
242
- expect(document.getElementById('plus')).toBeDefined();
243
- expectCount(0);
244
- plus();
245
- expectCount(1);
246
- minus();
247
- expectCount(0);
248
- });
249
- });
250
- });
251
- //# sourceMappingURL=shades.integration.spec.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"shades.integration.spec.js","sourceRoot":"","sources":["../src/shades.integration.spec.tsx"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- import './jsx';
2
- //# sourceMappingURL=component-factory.spec.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"component-factory.spec.d.ts","sourceRoot":"","sources":["../src/component-factory.spec.tsx"],"names":[],"mappings":"AACA,OAAO,OAAO,CAAA"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=lazy-load.spec.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"lazy-load.spec.d.ts","sourceRoot":"","sources":["../../src/components/lazy-load.spec.tsx"],"names":[],"mappings":""}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=route-link.spec.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"route-link.spec.d.ts","sourceRoot":"","sources":["../../src/components/route-link.spec.tsx"],"names":[],"mappings":""}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=router.spec.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"router.spec.d.ts","sourceRoot":"","sources":["../../src/components/router.spec.tsx"],"names":[],"mappings":""}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=location-service.spec.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"location-service.spec.d.ts","sourceRoot":"","sources":["../../src/services/location-service.spec.ts"],"names":[],"mappings":""}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=resource-manager.spec.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"resource-manager.spec.d.ts","sourceRoot":"","sources":["../../src/services/resource-manager.spec.ts"],"names":[],"mappings":""}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=screen-service.spec.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"screen-service.spec.d.ts","sourceRoot":"","sources":["../../src/services/screen-service.spec.ts"],"names":[],"mappings":""}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=shade-resources.integration.spec.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"shade-resources.integration.spec.d.ts","sourceRoot":"","sources":["../src/shade-resources.integration.spec.tsx"],"names":[],"mappings":""}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=shades.integration.spec.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"shades.integration.spec.d.ts","sourceRoot":"","sources":["../src/shades.integration.spec.tsx"],"names":[],"mappings":""}