@furystack/shades 7.1.6 → 7.2.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/shade-resources.integration.spec.js +2 -0
- package/dist/shade-resources.integration.spec.js.map +1 -1
- package/dist/shade.js +16 -4
- package/dist/shade.js.map +1 -1
- package/package.json +5 -5
- package/src/jsx.ts +1 -0
- package/src/shade-resources.integration.spec.tsx +3 -0
- package/src/shade.ts +31 -3
- package/types/jsx.d.ts +1 -0
- package/types/jsx.d.ts.map +1 -1
- package/types/shade.d.ts +9 -0
- package/types/shade.d.ts.map +1 -1
|
@@ -44,6 +44,8 @@ describe('Shade Resources integration tests', () => {
|
|
|
44
44
|
expect(renderCounter).toBeCalledTimes(2);
|
|
45
45
|
obs2.setValue('b');
|
|
46
46
|
expect(document.body.innerHTML).toBe('<div id="root"><shades-example-resource><div><div id="val1">1</div><div id="val2">b</div></div></shades-example-resource></div>');
|
|
47
|
+
const element = document.querySelector('shades-example-resource');
|
|
48
|
+
expect(element.getRenderCount()).toBe(3);
|
|
47
49
|
document.body.innerHTML = '';
|
|
48
50
|
expect(obs1.getObservers().length).toBe(0);
|
|
49
51
|
expect(obs2.getObservers().length).toBe(0);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shade-resources.integration.spec.js","sourceRoot":"","sources":["../src/shade-resources.integration.spec.tsx"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"shade-resources.integration.spec.js","sourceRoot":"","sources":["../src/shade-resources.integration.spec.tsx"],"names":[],"mappings":"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"}
|
package/dist/shade.js
CHANGED
|
@@ -16,15 +16,20 @@ const Shade = (o) => {
|
|
|
16
16
|
const customElementName = o.shadowDomName;
|
|
17
17
|
const existing = customElements.get(customElementName);
|
|
18
18
|
if (!existing) {
|
|
19
|
-
|
|
19
|
+
const ElementBase = o.elementBase || HTMLElement;
|
|
20
|
+
customElements.define(customElementName, class extends ElementBase {
|
|
20
21
|
constructor() {
|
|
21
22
|
super(...arguments);
|
|
23
|
+
this._renderCount = 0;
|
|
22
24
|
this.resourceManager = new resource_manager_1.ResourceManager();
|
|
23
25
|
/**
|
|
24
26
|
* @param options Options for rendering the component
|
|
25
27
|
* @returns the JSX element
|
|
26
28
|
*/
|
|
27
|
-
this.render = (options) =>
|
|
29
|
+
this.render = (options) => {
|
|
30
|
+
this._renderCount++;
|
|
31
|
+
return o.render(options);
|
|
32
|
+
};
|
|
28
33
|
/**
|
|
29
34
|
* @returns values for the current render options
|
|
30
35
|
*/
|
|
@@ -86,6 +91,12 @@ const Shade = (o) => {
|
|
|
86
91
|
};
|
|
87
92
|
this.cleanup = undefined;
|
|
88
93
|
}
|
|
94
|
+
/**
|
|
95
|
+
* @returns the current render count
|
|
96
|
+
*/
|
|
97
|
+
getRenderCount() {
|
|
98
|
+
return this._renderCount;
|
|
99
|
+
}
|
|
89
100
|
connectedCallback() {
|
|
90
101
|
o.onAttach && o.onAttach(this.getRenderOptions());
|
|
91
102
|
this.callConstructed();
|
|
@@ -155,13 +166,14 @@ const Shade = (o) => {
|
|
|
155
166
|
set injector(i) {
|
|
156
167
|
this._injector = i;
|
|
157
168
|
}
|
|
158
|
-
});
|
|
169
|
+
}, o.elementBaseName ? { extends: o.elementBaseName } : undefined);
|
|
159
170
|
}
|
|
160
171
|
else {
|
|
161
172
|
throw Error(`A custom shade with shadow DOM name '${o.shadowDomName}' has already been registered!`);
|
|
162
173
|
}
|
|
163
174
|
return (props, children) => {
|
|
164
|
-
const
|
|
175
|
+
const ElementType = customElements.get(customElementName);
|
|
176
|
+
const el = new ElementType({
|
|
165
177
|
...props,
|
|
166
178
|
});
|
|
167
179
|
el.props = props || {};
|
package/dist/shade.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shade.js","sourceRoot":"","sources":["../src/shade.ts"],"names":[],"mappings":";;;AACA,4CAAkD;
|
|
1
|
+
{"version":3,"file":"shade.js","sourceRoot":"","sources":["../src/shade.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@furystack/shades",
|
|
3
|
-
"version": "7.1
|
|
3
|
+
"version": "7.2.1",
|
|
4
4
|
"description": "Google Authentication Provider for FuryStack",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"files": [
|
|
@@ -30,14 +30,14 @@
|
|
|
30
30
|
"homepage": "https://github.com/furystack/furystack",
|
|
31
31
|
"devDependencies": {
|
|
32
32
|
"@types/jest": "^29.5.0",
|
|
33
|
-
"@types/jsdom": "^21.1.
|
|
34
|
-
"@types/node": "^18.15.
|
|
33
|
+
"@types/jsdom": "^21.1.1",
|
|
34
|
+
"@types/node": "^18.15.9",
|
|
35
35
|
"jsdom": "^21.1.1"
|
|
36
36
|
},
|
|
37
37
|
"dependencies": {
|
|
38
|
-
"@furystack/core": "^11.2.
|
|
38
|
+
"@furystack/core": "^11.2.10",
|
|
39
39
|
"@furystack/inject": "^7.1.7",
|
|
40
|
-
"@furystack/rest": "^4.1.
|
|
40
|
+
"@furystack/rest": "^4.1.15",
|
|
41
41
|
"@furystack/utils": "^3.1.7",
|
|
42
42
|
"path-to-regexp": "^6.2.1",
|
|
43
43
|
"semaphore-async-await": "^1.5.1"
|
package/src/jsx.ts
CHANGED
|
@@ -67,6 +67,9 @@ describe('Shade Resources integration tests', () => {
|
|
|
67
67
|
'<div id="root"><shades-example-resource><div><div id="val1">1</div><div id="val2">b</div></div></shades-example-resource></div>',
|
|
68
68
|
)
|
|
69
69
|
|
|
70
|
+
const element = document.querySelector('shades-example-resource') as JSX.Element
|
|
71
|
+
expect(element.getRenderCount()).toBe(3)
|
|
72
|
+
|
|
70
73
|
document.body.innerHTML = ''
|
|
71
74
|
|
|
72
75
|
expect(obs1.getObservers().length).toBe(0)
|
package/src/shade.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import type { Disposable } from '@furystack/utils'
|
|
2
2
|
import { ObservableValue } from '@furystack/utils'
|
|
3
|
+
import type { Constructable } from '@furystack/inject'
|
|
3
4
|
import { Injector } from '@furystack/inject'
|
|
4
5
|
import type { ChildrenList, RenderOptions } from './models'
|
|
5
6
|
import { ResourceManager } from './services/resource-manager'
|
|
@@ -37,6 +38,16 @@ export type ShadeOptions<TProps> = {
|
|
|
37
38
|
* A factory method that creates a list of disposable resources that will be disposed when the element is detached.
|
|
38
39
|
*/
|
|
39
40
|
resources?: (options: RenderOptions<TProps>) => Disposable[]
|
|
41
|
+
|
|
42
|
+
/**
|
|
43
|
+
* Name of the HTML Element's base class. Needs to be defined if the elementBase is set. E.g.: 'div', 'button', 'input'
|
|
44
|
+
*/
|
|
45
|
+
elementBaseName?: string
|
|
46
|
+
|
|
47
|
+
/**
|
|
48
|
+
* Base class for the custom element. Defaults to HTMLElement. E.g. HTMLButtonElement
|
|
49
|
+
*/
|
|
50
|
+
elementBase?: Constructable<HTMLElement>
|
|
40
51
|
}
|
|
41
52
|
|
|
42
53
|
/**
|
|
@@ -51,9 +62,20 @@ export const Shade = <TProps>(o: ShadeOptions<TProps>) => {
|
|
|
51
62
|
|
|
52
63
|
const existing = customElements.get(customElementName)
|
|
53
64
|
if (!existing) {
|
|
65
|
+
const ElementBase = o.elementBase || HTMLElement
|
|
66
|
+
|
|
54
67
|
customElements.define(
|
|
55
68
|
customElementName,
|
|
56
|
-
class extends
|
|
69
|
+
class extends ElementBase implements JSX.Element {
|
|
70
|
+
private _renderCount = 0
|
|
71
|
+
|
|
72
|
+
/**
|
|
73
|
+
* @returns the current render count
|
|
74
|
+
*/
|
|
75
|
+
public getRenderCount() {
|
|
76
|
+
return this._renderCount
|
|
77
|
+
}
|
|
78
|
+
|
|
57
79
|
public resourceManager = new ResourceManager()
|
|
58
80
|
|
|
59
81
|
public connectedCallback() {
|
|
@@ -81,7 +103,10 @@ export const Shade = <TProps>(o: ShadeOptions<TProps>) => {
|
|
|
81
103
|
* @param options Options for rendering the component
|
|
82
104
|
* @returns the JSX element
|
|
83
105
|
*/
|
|
84
|
-
public render = (options: RenderOptions<TProps>) =>
|
|
106
|
+
public render = (options: RenderOptions<TProps>) => {
|
|
107
|
+
this._renderCount++
|
|
108
|
+
return o.render(options)
|
|
109
|
+
}
|
|
85
110
|
|
|
86
111
|
/**
|
|
87
112
|
* @returns values for the current render options
|
|
@@ -238,15 +263,18 @@ export const Shade = <TProps>(o: ShadeOptions<TProps>) => {
|
|
|
238
263
|
this._injector = i
|
|
239
264
|
}
|
|
240
265
|
},
|
|
266
|
+
o.elementBaseName ? { extends: o.elementBaseName } : undefined,
|
|
241
267
|
)
|
|
242
268
|
} else {
|
|
243
269
|
throw Error(`A custom shade with shadow DOM name '${o.shadowDomName}' has already been registered!`)
|
|
244
270
|
}
|
|
245
271
|
|
|
246
272
|
return (props: TProps, children: ChildrenList) => {
|
|
247
|
-
const
|
|
273
|
+
const ElementType = customElements.get(customElementName)
|
|
274
|
+
const el = new (ElementType as CustomElementConstructor)({
|
|
248
275
|
...(props as TProps & ElementCreationOptions),
|
|
249
276
|
}) as JSX.Element<TProps>
|
|
277
|
+
|
|
250
278
|
el.props = props || ({} as TProps)
|
|
251
279
|
el.shadeChildren = children
|
|
252
280
|
return el as JSX.Element
|
package/types/jsx.d.ts
CHANGED
package/types/jsx.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"jsx.d.ts","sourceRoot":"","sources":["../src/jsx.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AACjD,OAAO,KAAK,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,UAAU,CAAA;AAC5D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAA;AAElE,OAAO,CAAC,MAAM,CAAC;IAEb,MAAM,WAAW,GAAG,CAAC;QACnB,UAAU,OAAO,CAAC,MAAM,GAAG,GAAG,CAAE,SAAQ,WAAW;YACjD,QAAQ,EAAE,QAAQ,CAAA;YAClB,KAAK,EAAE,MAAM,CAAA;YACb,eAAe,EAAE,MAAM,IAAI,CAAA;YAC3B,aAAa,CAAC,EAAE,YAAY,CAAA;YAC5B,eAAe,EAAE,MAAM,IAAI,CAAA;YAC3B,eAAe,EAAE,eAAe,CAAA;
|
|
1
|
+
{"version":3,"file":"jsx.d.ts","sourceRoot":"","sources":["../src/jsx.ts"],"names":[],"mappings":"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"}
|
package/types/shade.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { Disposable } from '@furystack/utils';
|
|
2
|
+
import type { Constructable } from '@furystack/inject';
|
|
2
3
|
import type { ChildrenList, RenderOptions } from './models';
|
|
3
4
|
export type ShadeOptions<TProps> = {
|
|
4
5
|
/**
|
|
@@ -25,6 +26,14 @@ export type ShadeOptions<TProps> = {
|
|
|
25
26
|
* A factory method that creates a list of disposable resources that will be disposed when the element is detached.
|
|
26
27
|
*/
|
|
27
28
|
resources?: (options: RenderOptions<TProps>) => Disposable[];
|
|
29
|
+
/**
|
|
30
|
+
* Name of the HTML Element's base class. Needs to be defined if the elementBase is set. E.g.: 'div', 'button', 'input'
|
|
31
|
+
*/
|
|
32
|
+
elementBaseName?: string;
|
|
33
|
+
/**
|
|
34
|
+
* Base class for the custom element. Defaults to HTMLElement. E.g. HTMLButtonElement
|
|
35
|
+
*/
|
|
36
|
+
elementBase?: Constructable<HTMLElement>;
|
|
28
37
|
};
|
|
29
38
|
/**
|
|
30
39
|
* Factory method for creating Shade components
|
package/types/shade.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shade.d.ts","sourceRoot":"","sources":["../src/shade.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;
|
|
1
|
+
{"version":3,"file":"shade.d.ts","sourceRoot":"","sources":["../src/shade.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAElD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AAEtD,OAAO,KAAK,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AAI3D,MAAM,MAAM,YAAY,CAAC,MAAM,IAAI;IACjC;;OAEG;IACH,aAAa,EAAE,MAAM,CAAA;IAErB;;OAEG;IACH,MAAM,EAAE,CAAC,OAAO,EAAE,aAAa,CAAC,MAAM,CAAC,KAAK,GAAG,CAAC,OAAO,GAAG,MAAM,GAAG,IAAI,CAAA;IAEvE;;OAEG;IACH,WAAW,CAAC,EAAE,CACZ,OAAO,EAAE,aAAa,CAAC,MAAM,CAAC,KAC3B,IAAI,GAAG,SAAS,GAAG,CAAC,MAAM,IAAI,CAAC,GAAG,OAAO,CAAC,IAAI,GAAG,SAAS,GAAG,CAAC,MAAM,IAAI,CAAC,CAAC,CAAA;IAE/E;;OAEG;IACH,QAAQ,CAAC,EAAE,CAAC,OAAO,EAAE,aAAa,CAAC,MAAM,CAAC,KAAK,IAAI,CAAA;IAEnD;;OAEG;IACH,QAAQ,CAAC,EAAE,CAAC,OAAO,EAAE,aAAa,CAAC,MAAM,CAAC,KAAK,IAAI,CAAA;IAEnD;;OAEG;IACH,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,aAAa,CAAC,MAAM,CAAC,KAAK,UAAU,EAAE,CAAA;IAE5D;;OAEG;IACH,eAAe,CAAC,EAAE,MAAM,CAAA;IAExB;;OAEG;IACH,WAAW,CAAC,EAAE,aAAa,CAAC,WAAW,CAAC,CAAA;CACzC,CAAA;AAED;;;;;GAKG;AACH,eAAO,MAAM,KAAK,kGA+NjB,CAAA"}
|