@sitecore-feaas/clientside 0.2.0 → 0.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/README.md +51 -31
- package/build/components/FEAASComponent.js +2 -2
- package/build/components/FEAASComponent.js.map +1 -1
- package/build/components/FEAASElement.js +408 -37
- package/build/components/FEAASElement.js.map +1 -1
- package/build/components/FEAASLoader.js +2 -2
- package/build/components/FEAASLoader.js.map +1 -1
- package/build/components/FEAASReactElement.js +47 -0
- package/build/components/FEAASReactElement.js.map +1 -0
- package/build/components/FEAASStylesheet.js +2 -2
- package/build/components/FEAASStylesheet.js.map +1 -1
- package/build/headless.js +4 -3
- package/build/headless.js.map +1 -1
- package/build/ui/FEAASContext.js +14 -5
- package/build/ui/FEAASContext.js.map +1 -1
- package/build/ui/FEAASEditor.js +2 -2
- package/build/ui/FEAASEditor.js.map +1 -1
- package/build/ui/FEAASExternal.js +65 -23
- package/build/ui/FEAASExternal.js.map +1 -1
- package/build/ui/FEAASPicker.js +3 -2
- package/build/ui/FEAASPicker.js.map +1 -1
- package/dist/browser/headless.cjs +5 -5
- package/dist/browser/headless.cjs.map +4 -4
- package/dist/browser/headless.esm.js +5 -5
- package/dist/browser/headless.esm.js.map +1 -1
- package/dist/browser/index.cjs +7 -7
- package/dist/browser/index.cjs.map +4 -4
- package/dist/browser/index.esm.js +7 -7
- package/dist/browser/index.esm.js.map +1 -1
- package/dist/browser/react.cjs +6 -6
- package/dist/browser/react.cjs.map +4 -4
- package/dist/browser/react.esm.js +6 -6
- package/dist/browser/react.esm.js.map +1 -1
- package/dist/node/headless.cjs +3 -3
- package/dist/node/headless.cjs.map +4 -4
- package/dist/node/headless.esm.js +2 -2
- package/dist/node/headless.esm.js.map +4 -4
- package/dist/node/index.cjs +4 -4
- package/dist/node/index.cjs.map +4 -4
- package/dist/node/index.esm.js +3 -3
- package/dist/node/index.esm.js.map +4 -4
- package/dist/node/react.cjs +4 -4
- package/dist/node/react.cjs.map +4 -4
- package/dist/node/react.esm.js +4 -4
- package/dist/node/react.esm.js.map +4 -4
- package/headless.cjs +3 -3
- package/headless.cjs.map +4 -4
- package/headless.js +3 -3
- package/headless.js.map +4 -4
- package/package.json +10 -2
- package/react.cjs +6 -6
- package/react.cjs.map +4 -4
- package/react.js +6 -6
- package/react.js.map +4 -4
- package/scripts/test-setup.ts +1 -0
- package/src/components/FEAASComponent.tsx +4 -4
- package/src/components/FEAASElement.tsx +467 -42
- package/src/components/FEAASLoader.tsx +2 -2
- package/src/components/FEAASReactElement.tsx +61 -0
- package/src/components/FEAASStylesheet.tsx +3 -3
- package/src/headless.ts +5 -4
- package/src/ui/FEAASContext.tsx +16 -7
- package/src/ui/FEAASEditor.tsx +7 -7
- package/src/ui/FEAASExternal.tsx +76 -23
- package/src/ui/FEAASPicker.tsx +4 -3
- package/src/ui/tsconfig.json +1 -1
- package/test/FEAASBase.test.tsx +2 -2
- package/test/FEAASComponent.test.tsx +3 -1
- package/test/FEAASContext.test.tsx +206 -29
- package/test/FEAASPicker.test.tsx +4 -2
- package/types/components/FEAASComponent.d.ts +3 -3
- package/types/components/FEAASComponent.d.ts.map +1 -1
- package/types/components/FEAASElement.d.ts +292 -23
- package/types/components/FEAASElement.d.ts.map +1 -1
- package/types/components/FEAASLoader.d.ts +2 -2
- package/types/components/FEAASLoader.d.ts.map +1 -1
- package/types/components/FEAASReactElement.d.ts +30 -0
- package/types/components/FEAASReactElement.d.ts.map +1 -0
- package/types/components/FEAASStylesheet.d.ts +3 -3
- package/types/components/FEAASStylesheet.d.ts.map +1 -1
- package/types/headless.d.ts +4 -3
- package/types/headless.d.ts.map +1 -1
- package/types/tsbuildinfo +1 -1
- package/types/ui/FEAASContext.d.ts +8 -7
- package/types/ui/FEAASContext.d.ts.map +1 -1
- package/types/ui/FEAASEditor.d.ts +6 -6
- package/types/ui/FEAASEditor.d.ts.map +1 -1
- package/types/ui/FEAASExternal.d.ts +8 -10
- package/types/ui/FEAASExternal.d.ts.map +1 -1
- package/types/ui/FEAASPicker.d.ts +7 -6
- package/types/ui/FEAASPicker.d.ts.map +1 -1
- package/types/ui/tsbuildinfo +1 -0
- package/build/components/FEAASBase.js +0 -416
- package/build/components/FEAASBase.js.map +0 -1
- package/src/components/FEAASBase.tsx +0 -485
- package/types/components/FEAASBase.d.ts +0 -299
- package/types/components/FEAASBase.d.ts.map +0 -1
- package/types/tsbuildinfo_ui +0 -1
package/README.md
CHANGED
|
@@ -193,6 +193,24 @@ const options = {
|
|
|
193
193
|
type: 'string',
|
|
194
194
|
title: 'Telephone',
|
|
195
195
|
minLength: 10
|
|
196
|
+
},
|
|
197
|
+
bold: {
|
|
198
|
+
type: 'boolean',
|
|
199
|
+
title: 'Show text in bold weight'
|
|
200
|
+
}
|
|
201
|
+
},
|
|
202
|
+
ui: {
|
|
203
|
+
firstName: {
|
|
204
|
+
'ui:autofocus': true,
|
|
205
|
+
'ui:placeholder': 'Write your first name'
|
|
206
|
+
},
|
|
207
|
+
telephone: {
|
|
208
|
+
'ui:options': {
|
|
209
|
+
inputType: 'tel'
|
|
210
|
+
}
|
|
211
|
+
},
|
|
212
|
+
bold: {
|
|
213
|
+
'ui:widget': 'radio'
|
|
196
214
|
}
|
|
197
215
|
}
|
|
198
216
|
}
|
|
@@ -218,6 +236,8 @@ user when embedding this Component.
|
|
|
218
236
|
**Required**<br/> Type: String Array<br/> Required: no<br/> Description: Array of keys from Inputs (Props) that should
|
|
219
237
|
be required
|
|
220
238
|
|
|
239
|
+
**UI**<br/> Type: JSONSchema object<br/> Required: no<br/> Description: Any UI specific configuration for the inputs form rendering in the builder
|
|
240
|
+
|
|
221
241
|
_We use React JSONSchema Form to generate a form for the component properties. You can read more about React JSONSchema
|
|
222
242
|
Form here:_ https://react-jsonschema-form.readthedocs.io
|
|
223
243
|
|
|
@@ -393,27 +413,30 @@ It is possible to use the styles as a part of BYOC component as well.
|
|
|
393
413
|
Each element type like button, card, section has a dedicated class making it recieve the style. Designers can create
|
|
394
414
|
their own element types, but some are built in. FEAAS class name starts with dash.
|
|
395
415
|
|
|
396
|
-
|
|
397
|
-
|
|
398
|
-
|
|
399
|
-
|
|
400
|
-
|
|
401
|
-
|
|
402
|
-
|
|
403
|
-
|
|
404
|
-
-
|
|
405
|
-
|
|
406
|
-
|
|
407
|
-
|
|
408
|
-
|
|
409
|
-
|
|
410
|
-
|
|
411
|
-
|
|
412
|
-
-
|
|
413
|
-
|
|
414
|
-
|
|
415
|
-
|
|
416
|
-
|
|
416
|
+
### Text elements
|
|
417
|
+
|
|
418
|
+
- `-paragraph` or `<p>`
|
|
419
|
+
- `-heading1` or `<h1>`
|
|
420
|
+
- `-heading2` or `<h2>`
|
|
421
|
+
- `-heading3` or `<h3>`
|
|
422
|
+
- `-heading4` or `<h4>`
|
|
423
|
+
- `-heading5` or `<h5>`
|
|
424
|
+
- `-heading6` or `<h6>`
|
|
425
|
+
|
|
426
|
+
###Block elements
|
|
427
|
+
|
|
428
|
+
- `-card`
|
|
429
|
+
- `-section` or `<section>`
|
|
430
|
+
- `-blockquote` or `<blockquote>`
|
|
431
|
+
- `-block--media`
|
|
432
|
+
- `-block--my-custom-type` - custom block type
|
|
433
|
+
|
|
434
|
+
### Inline elements
|
|
435
|
+
|
|
436
|
+
- `-button` or `<button>`
|
|
437
|
+
- `-link` or `<a>`
|
|
438
|
+
- `-inline--badge`
|
|
439
|
+
- `-inline--my-custom-type` - custom inline type
|
|
417
440
|
|
|
418
441
|
Applying the above classes inside an container with `-feaas -theme--name` classes will apply default theme styles for
|
|
419
442
|
each. It is possible to use specific element styles defined in style guides overriding theme defaults with extra
|
|
@@ -436,14 +459,11 @@ of the badge
|
|
|
436
459
|
</button>
|
|
437
460
|
|
|
438
461
|
<!--
|
|
439
|
-
"Primary" button with "instance" style created in builder.
|
|
440
|
-
|
|
441
|
-
|
|
442
|
-
In
|
|
443
|
-
|
|
444
|
-
up the instance style from the document. In this case, only t
|
|
445
|
-
he *typography* rule of the button was altered, so others
|
|
446
|
-
(like spacing or decoration) still retain the link to shared styles.
|
|
462
|
+
"Primary" button with "instance" style created in builder. Style is bundled inline as a part of the html output.
|
|
463
|
+
User can choose to start with reusable rule and "customize it". In that case the instance style is linked with
|
|
464
|
+
the original. Removing the className belonging to instance style clears up the instance style from the document.
|
|
465
|
+
In this case, only the *typography* rule of the button was altered, so others (like spacing or decoration) still
|
|
466
|
+
retain the link to shared styles.
|
|
447
467
|
-->
|
|
448
468
|
<style>
|
|
449
469
|
.-typography--chunky[data-instance-id="unique"][class][class][class] {
|
|
@@ -671,6 +691,7 @@ customizations and redefinitions do not rely on specificity.
|
|
|
671
691
|
|
|
672
692
|
- **Gap override** (codename) - Child element can override the gap set by its parent. Used in builder. Similar to _
|
|
673
693
|
align-self_ and _justify-self_ logic of flexbox. Independent from direction of layout.
|
|
694
|
+
|
|
674
695
|
```CSS
|
|
675
696
|
/* Even though element style has lower priority than layout rule,
|
|
676
697
|
the ---self-- family of variables can be redefined on element itself */
|
|
@@ -679,6 +700,7 @@ customizations and redefinitions do not rely on specificity.
|
|
|
679
700
|
---self--column-gap: 10px;
|
|
680
701
|
}
|
|
681
702
|
```
|
|
703
|
+
|
|
682
704
|
- **Paragraph spacing** - like gap, but for text elements. Takes precedence over vertical gap. Because text elements can
|
|
683
705
|
not be direct children inside horizontal layouts, does not care about direction.
|
|
684
706
|
|
|
@@ -689,5 +711,3 @@ customizations and redefinitions do not rely on specificity.
|
|
|
689
711
|
}
|
|
690
712
|
|
|
691
713
|
```
|
|
692
|
-
|
|
693
|
-
> > > > > > > Stashed changes
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { DEFAULT_CDN_URL, fetchAndRevalidateComponent, parseComponentSource } from '../cdn.js';
|
|
2
2
|
import { renderDOMContent, renderDOMElement } from '../dom/rendering.js';
|
|
3
3
|
import { loadStylesheetAllowStale } from '../headless.js';
|
|
4
|
-
import {
|
|
4
|
+
import { FEAASElement } from './FEAASElement.js';
|
|
5
5
|
export function FEAASComponentsProps(element) {
|
|
6
6
|
var _a, _b, _c, _d, _e, _f, _g, _h;
|
|
7
7
|
let data;
|
|
@@ -35,7 +35,7 @@ export function FEAASComponentsProps(element) {
|
|
|
35
35
|
withStylesheet: element.getAttribute('with-stylesheet') != 'false'
|
|
36
36
|
};
|
|
37
37
|
}
|
|
38
|
-
class FEAASComponent extends
|
|
38
|
+
class FEAASComponent extends FEAASElement {
|
|
39
39
|
setData(data) {
|
|
40
40
|
this.set({ data });
|
|
41
41
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FEAASComponent.js","sourceRoot":"","sources":["../../src/components/FEAASComponent.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAA2B,2BAA2B,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAA;AACvH,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAA;AACxE,OAAO,EAAE,wBAAwB,EAAE,MAAM,gBAAgB,CAAA;AACzD,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"FEAASComponent.js","sourceRoot":"","sources":["../../src/components/FEAASComponent.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,47 +1,418 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
1
|
+
import { ControlledPromise } from '../utils/promise.js';
|
|
2
|
+
// Shim in case it's required in node.js environment
|
|
3
|
+
var WebComponent = typeof HTMLElement == 'undefined'
|
|
4
|
+
? // @ts-ignore
|
|
5
|
+
typeof windowJSDOM != 'undefined'
|
|
6
|
+
? // @ts-ignore
|
|
7
|
+
windowJSDOM.HTMLElement
|
|
8
|
+
: class {
|
|
9
|
+
}
|
|
10
|
+
: HTMLElement;
|
|
11
|
+
/**
|
|
12
|
+
* FEAASElement is a superclass for FEAAS components with optional react support.
|
|
13
|
+
*
|
|
14
|
+
* Initialization lifecycle:
|
|
15
|
+
*
|
|
16
|
+
* - `set(props)`
|
|
17
|
+
* - `scheduleRender()` - any attribute change causes render to schedule to next frame
|
|
18
|
+
* - `whenRendered.restart()` - rendering promise is reset and will resolve after render
|
|
19
|
+
* - `advance()` - called on next frame
|
|
20
|
+
* - `if (isReadyToLoad()) => boolean` - check if component has all necessary properties to load
|
|
21
|
+
* - `load() => payload` => component is loaded
|
|
22
|
+
* - `onLoad?(payload)` => invoke loaded callback
|
|
23
|
+
* - `advance()` => going further in state machine
|
|
24
|
+
* - `flush()` => flushes all react changes if needed
|
|
25
|
+
* - `update()` => component-specific method (or react) to render changes to dom
|
|
26
|
+
* - `render(payload, props)` => render means react
|
|
27
|
+
* - `whenRendered.resolve()` - rendering promise is resolved after rendering
|
|
28
|
+
* - `whenLoaded.resolved()` - resolved after loading and rendering
|
|
29
|
+
*/
|
|
30
|
+
export class FEAASElement extends WebComponent {
|
|
31
|
+
/** Return attributes as parsed values */
|
|
32
|
+
getProps(context) {
|
|
33
|
+
return {};
|
|
34
|
+
}
|
|
35
|
+
constructor() {
|
|
36
|
+
super();
|
|
37
|
+
this.defaultProps = {};
|
|
38
|
+
/** Is/was component in the dom? */
|
|
39
|
+
this.connected = false;
|
|
40
|
+
this.refs = {};
|
|
41
|
+
this.descendants = [];
|
|
42
|
+
this.whenLoaded = ControlledPromise((payload) => {
|
|
43
|
+
this.payload = payload;
|
|
44
|
+
});
|
|
45
|
+
this.whenRendered = ControlledPromise(() => (this.initialized = true), () => cancelAnimationFrame(this.nextRender));
|
|
46
|
+
this.addEventListener('feaasMount', this);
|
|
47
|
+
this.addEventListener('feaasUnmount', this);
|
|
48
|
+
}
|
|
49
|
+
/** Attaches shadow root if getShadowRootOptions any settings, or uses element itself */
|
|
50
|
+
getRoot() {
|
|
51
|
+
return this;
|
|
52
|
+
}
|
|
53
|
+
/** Attribute changes trigger props parsing and schedules re-rendering */
|
|
54
|
+
attributeChangedCallback(name, oldValue, newValue) {
|
|
55
|
+
this.set();
|
|
56
|
+
}
|
|
57
|
+
/** Components parses its attributes when connected, and schedules rendeirng */
|
|
58
|
+
connectedCallback() {
|
|
59
|
+
this.mount();
|
|
60
|
+
}
|
|
61
|
+
disconnectedCallback() {
|
|
62
|
+
this.unmount();
|
|
63
|
+
}
|
|
64
|
+
/**
|
|
65
|
+
* Web components are initialized depth-first, making child elements render before its parents. This could here
|
|
66
|
+
* attempts to avoid this and inverts the initialization logic, so that children are initialized in the context of its
|
|
67
|
+
* already-initialized parents.
|
|
68
|
+
*
|
|
69
|
+
* FEAAS components dispatch `feaasMount` event that allows components to store references to each other. In addition
|
|
70
|
+
* it allows external scripts to listen for initialization of FEAAS components
|
|
71
|
+
*/
|
|
72
|
+
mount() {
|
|
73
|
+
try {
|
|
74
|
+
const parent = this.getParent();
|
|
75
|
+
// Allow parent component to initialize first
|
|
76
|
+
if (parent && !parent.connected)
|
|
77
|
+
return;
|
|
78
|
+
if (this.connected)
|
|
79
|
+
return;
|
|
80
|
+
this.connected = true;
|
|
81
|
+
this.log('FEAAS: Mount', this.tagName, this);
|
|
82
|
+
this.dispatchEvent(new Event('feaasMount', { bubbles: true, composed: true }));
|
|
83
|
+
this.getElements().map((element) => { var _a; return (_a = element.mount) === null || _a === void 0 ? void 0 : _a.call(element); });
|
|
84
|
+
this.set();
|
|
85
|
+
}
|
|
86
|
+
catch (e) {
|
|
87
|
+
this.onError(e);
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
log(...args) {
|
|
91
|
+
if (typeof process != 'undefined' && process.env.TESTING)
|
|
92
|
+
return;
|
|
93
|
+
console.log(...args);
|
|
94
|
+
}
|
|
95
|
+
/** Nothing special happens on unmount, except setting a flag */
|
|
96
|
+
unmount() {
|
|
97
|
+
if (!this.connected)
|
|
98
|
+
return;
|
|
99
|
+
this.log('FEAAS: Unmount', this);
|
|
100
|
+
this.dispatchEvent(new Event('feaasUnmount', { bubbles: true, composed: true }));
|
|
101
|
+
this.connected = false;
|
|
102
|
+
}
|
|
103
|
+
getParent(onlyFeaas = true) {
|
|
104
|
+
for (var p = this; (p = p.parentElement || (p.parentNode instanceof ShadowRoot ? p.parentNode.host : null));) {
|
|
105
|
+
if (!onlyFeaas || p.tagName.startsWith('FEAAS-'))
|
|
106
|
+
return p;
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
getElements(root = this.getRoot(), onlyFeaas = true) {
|
|
110
|
+
return Array.from(root.querySelectorAll('*'))
|
|
111
|
+
.map((el) => [
|
|
112
|
+
!onlyFeaas || el.tagName.startsWith('FEAAS-') ? el : null,
|
|
113
|
+
el.shadowRoot ? this.getElements(el.shadowRoot, onlyFeaas) : null
|
|
114
|
+
])
|
|
115
|
+
.flat()
|
|
116
|
+
.filter(Boolean);
|
|
117
|
+
}
|
|
118
|
+
/** Catch-all event handler that dispatches events to callback */
|
|
119
|
+
handleEvent(event) {
|
|
120
|
+
const target = event.composedPath()[0];
|
|
121
|
+
switch (event.type) {
|
|
122
|
+
case 'feaasMount':
|
|
123
|
+
if (target != this)
|
|
124
|
+
this.nestedCallback(target);
|
|
125
|
+
break;
|
|
126
|
+
case 'feaasUnmount':
|
|
127
|
+
if (target != this)
|
|
128
|
+
this.unnestedCallback(target);
|
|
129
|
+
break;
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
/** Act on children element being removed */
|
|
133
|
+
unnestedCallback(target) {
|
|
134
|
+
const index = this.descendants.indexOf(target);
|
|
135
|
+
if (index == -1)
|
|
136
|
+
return;
|
|
137
|
+
this.log('FEAAS: Unnest', this, target);
|
|
138
|
+
this.descendants.splice(index, -1);
|
|
139
|
+
this.refs[target.getComponentName()] = null;
|
|
140
|
+
if (target.refs.parent == this)
|
|
141
|
+
target.refs.parent = null;
|
|
142
|
+
if (target.refs.top == this) {
|
|
143
|
+
target.refs.top = target.refs.parent;
|
|
144
|
+
}
|
|
145
|
+
}
|
|
146
|
+
/** Act on children element being added */
|
|
147
|
+
nestedCallback(target) {
|
|
148
|
+
var _a, _b;
|
|
149
|
+
const index = this.descendants.indexOf(target);
|
|
150
|
+
if (index != -1)
|
|
151
|
+
return;
|
|
152
|
+
this.descendants.push(target);
|
|
153
|
+
this.log('FEAAS: Nest', this, target);
|
|
154
|
+
this.refs[target.getComponentName()] = target;
|
|
155
|
+
target.refs.top = this;
|
|
156
|
+
(_a = target.refs).parent || (_a.parent = this);
|
|
157
|
+
if (target.render) {
|
|
158
|
+
for (var p = target.refs.parent; p; p = p.refs.parent) {
|
|
159
|
+
if (p.render) {
|
|
160
|
+
(_b = target.refs).parentReact || (_b.parentReact = p);
|
|
161
|
+
target.refs.topReact = p;
|
|
162
|
+
}
|
|
163
|
+
}
|
|
164
|
+
}
|
|
165
|
+
}
|
|
166
|
+
getComponentName() {
|
|
167
|
+
return this.tagName.replace('FEAAS-', '').toLowerCase();
|
|
168
|
+
}
|
|
169
|
+
/**
|
|
170
|
+
* Check if lazy component is ready to be loaded. For example a component may stay unloaded unless certain attributes
|
|
171
|
+
* are set
|
|
172
|
+
*/
|
|
173
|
+
isReadyToLoad() {
|
|
174
|
+
return this.payload === undefined && this.getAttribute('hidden') == null;
|
|
175
|
+
}
|
|
176
|
+
/** Generic error handler */
|
|
177
|
+
onError(error, where = 'uncaught', handled = false) {
|
|
178
|
+
const event = new CustomEvent('feaasError', { bubbles: true, composed: true, detail: error });
|
|
179
|
+
this.dispatchEvent(event);
|
|
180
|
+
this.whenLoaded.reject(error);
|
|
181
|
+
if (!event.defaultPrevented && !handled) {
|
|
182
|
+
this.whenRendered.reject(error);
|
|
183
|
+
try {
|
|
184
|
+
this.unmount();
|
|
185
|
+
}
|
|
186
|
+
catch (e) { }
|
|
187
|
+
return true;
|
|
188
|
+
}
|
|
189
|
+
return false;
|
|
190
|
+
}
|
|
191
|
+
shouldUpdateOnLoad() {
|
|
192
|
+
return true;
|
|
193
|
+
}
|
|
194
|
+
/** Load lazy component & render */
|
|
195
|
+
async advance() {
|
|
196
|
+
try {
|
|
197
|
+
if (this.payload === undefined) {
|
|
198
|
+
if (!this.isReadyToLoad())
|
|
199
|
+
return;
|
|
200
|
+
this.payload = null;
|
|
201
|
+
this.dispatchEvent(new Event('feaasLoad', { bubbles: true, composed: true }));
|
|
202
|
+
const loaded = await this.load().catch((e) => {
|
|
203
|
+
this.payload = undefined;
|
|
204
|
+
throw e;
|
|
205
|
+
});
|
|
206
|
+
this.whenLoaded.resolve(loaded);
|
|
207
|
+
// Allow component to handle the post-loading
|
|
208
|
+
if (this.onLoad) {
|
|
209
|
+
return;
|
|
210
|
+
}
|
|
211
|
+
}
|
|
212
|
+
else if (this.payload == null) {
|
|
213
|
+
return;
|
|
214
|
+
}
|
|
215
|
+
this.flush();
|
|
216
|
+
this.whenRendered.resolve(this);
|
|
217
|
+
}
|
|
218
|
+
catch (e) {
|
|
219
|
+
this.onError(e);
|
|
220
|
+
}
|
|
221
|
+
}
|
|
222
|
+
flush() {
|
|
223
|
+
var _a, _b;
|
|
224
|
+
const flushSync = (_b = (_a = this.payload) === null || _a === void 0 ? void 0 : _a.ReactDOM) === null || _b === void 0 ? void 0 : _b.flushSync;
|
|
225
|
+
if (flushSync) {
|
|
226
|
+
flushSync(() => this.update());
|
|
227
|
+
}
|
|
228
|
+
else {
|
|
229
|
+
this.update();
|
|
230
|
+
}
|
|
231
|
+
}
|
|
232
|
+
/** Invoke preloading logic that needs to finish before component can render */
|
|
3
233
|
load() {
|
|
4
|
-
return Promise.
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
234
|
+
return Promise.resolve(null);
|
|
235
|
+
}
|
|
236
|
+
/**
|
|
237
|
+
* Component-specific logic that updates the DOM. Default render implementation assume react rendering, in that case
|
|
238
|
+
* the component needs to provide React & ReactDOM references in its payload. Web component redefine its render to not
|
|
239
|
+
* use react at all
|
|
240
|
+
*/
|
|
241
|
+
update() {
|
|
242
|
+
var _a, _b, _c;
|
|
243
|
+
//this.log('FEAAS: React', this.tagName, this.payload)
|
|
244
|
+
if (this.payload == null)
|
|
245
|
+
return;
|
|
246
|
+
if (!this.render)
|
|
247
|
+
return;
|
|
248
|
+
const { React, ReactDOM, ReactDOMClient } = this.payload || {};
|
|
249
|
+
if (!React)
|
|
250
|
+
throw new Error(`${this.tagName}: React is not present in payload`);
|
|
251
|
+
if (!ReactDOM)
|
|
252
|
+
throw new Error(`${this.tagName}: ReactDOM is not present in payload`);
|
|
253
|
+
if (!this.refs.topReact && !this.forceUpdateReact) {
|
|
254
|
+
if (ReactDOMClient) {
|
|
255
|
+
this.reactRoot || (this.reactRoot = ReactDOMClient.createRoot(this.getReactRootElement()));
|
|
256
|
+
this.reactRoot.render(this.getReactElement());
|
|
257
|
+
}
|
|
258
|
+
else {
|
|
259
|
+
ReactDOM.render(this.getReactElement(), this.getReactRootElement());
|
|
260
|
+
}
|
|
261
|
+
}
|
|
262
|
+
else if (this.forceUpdateReact) {
|
|
263
|
+
(_a = this.forceUpdateReact) === null || _a === void 0 ? void 0 : _a.call(this);
|
|
264
|
+
}
|
|
265
|
+
else {
|
|
266
|
+
(_c = (_b = this.refs.topReact).forceUpdateReact) === null || _c === void 0 ? void 0 : _c.call(_b);
|
|
267
|
+
}
|
|
268
|
+
}
|
|
269
|
+
invokeReactRendering() {
|
|
270
|
+
const { React, ReactDOM } = this.payload || {};
|
|
271
|
+
if (!this.connected)
|
|
272
|
+
return null;
|
|
273
|
+
const children = this.descendants
|
|
274
|
+
.filter((r) => {
|
|
275
|
+
return r.refs.parentReact == this && r.payload;
|
|
276
|
+
})
|
|
277
|
+
.map((child, index) => {
|
|
278
|
+
return this.getReactElement(child);
|
|
11
279
|
});
|
|
280
|
+
return this.render({ ...this.props, children }, this.payload);
|
|
12
281
|
}
|
|
13
|
-
|
|
14
|
-
|
|
282
|
+
getReactErrorBoundary(target = this, displayName = target.tagName) {
|
|
283
|
+
if (this.reactErrorBoundary)
|
|
284
|
+
return this.reactErrorBoundary;
|
|
285
|
+
const { React, ReactDOM } = target.payload || {};
|
|
286
|
+
return (this.reactErrorBoundary || (this.reactErrorBoundary = class FEAASErrorBoundary extends React.Component {
|
|
287
|
+
constructor() {
|
|
288
|
+
super(...arguments);
|
|
289
|
+
this.state = {
|
|
290
|
+
error: null
|
|
291
|
+
};
|
|
292
|
+
}
|
|
293
|
+
static getDerivedStateFromError(error) {
|
|
294
|
+
return { error: error };
|
|
295
|
+
}
|
|
296
|
+
componentDidCatch(error, errorInfo) {
|
|
297
|
+
console.error(`FEAAS: ${target.tagName} Error:`, error, errorInfo);
|
|
298
|
+
target.onError(error, 'react');
|
|
299
|
+
//this.setState({ error: error })
|
|
300
|
+
}
|
|
301
|
+
render() {
|
|
302
|
+
if (this.state.error) {
|
|
303
|
+
// target.classList.add('feaas-error')
|
|
304
|
+
return;
|
|
305
|
+
//return <h1>There seems to be a problem.</h1>
|
|
306
|
+
}
|
|
307
|
+
//if (target.classList.contains('feaas-error')) target.classList.remove('feaas-error')
|
|
308
|
+
return this.props.children;
|
|
309
|
+
}
|
|
310
|
+
}));
|
|
15
311
|
}
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
312
|
+
getReactElement(target = this, props) {
|
|
313
|
+
const { React, ReactDOM } = target.payload || {};
|
|
314
|
+
const ErrorBoundary = this.getReactErrorBoundary();
|
|
315
|
+
const Wrapper = this.getReactWrapper(target);
|
|
316
|
+
return (React.createElement(ErrorBoundary, { key: target.tagName + '-' + target.getUID(), slot: target.getAttribute('slot') },
|
|
317
|
+
React.createElement(Wrapper, null)));
|
|
21
318
|
}
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
319
|
+
getReactWrapper(target = this, displayName = target.tagName) {
|
|
320
|
+
if (target.reactWrapper)
|
|
321
|
+
return target.reactWrapper;
|
|
322
|
+
const { React, ReactDOM } = target.payload || {};
|
|
323
|
+
target.reactWrapper = (props) => {
|
|
324
|
+
if (target.render) {
|
|
325
|
+
const [value, forceUpdateReact] = React.useReducer((r) => r + 1, 0);
|
|
326
|
+
target.forceUpdateReact = forceUpdateReact;
|
|
327
|
+
return ReactDOM.createPortal(React.createElement(React.Fragment, null, target.invokeReactRendering()), target.getReactRootElement());
|
|
328
|
+
}
|
|
329
|
+
else {
|
|
330
|
+
return target.update();
|
|
331
|
+
}
|
|
26
332
|
};
|
|
333
|
+
Object.assign(target.reactWrapper, {
|
|
334
|
+
key: target.tagName + '-' + target.getUID(),
|
|
335
|
+
displayName: displayName
|
|
336
|
+
});
|
|
337
|
+
return target.reactWrapper;
|
|
338
|
+
}
|
|
339
|
+
getUID() {
|
|
340
|
+
return (this.uid || (this.uid = String(Math.random())));
|
|
341
|
+
}
|
|
342
|
+
getShadowRoot() {
|
|
343
|
+
if (!this.shadowRoot) {
|
|
344
|
+
this.attachShadow({ mode: 'open' });
|
|
345
|
+
}
|
|
346
|
+
return this.shadowRoot;
|
|
347
|
+
}
|
|
348
|
+
getReactRootElement() {
|
|
349
|
+
return this.useShadowRoot ? this.getShadowRoot() : this.getRoot();
|
|
350
|
+
}
|
|
351
|
+
/** Set props and return values on new next tick */
|
|
352
|
+
set(overrides) {
|
|
353
|
+
try {
|
|
354
|
+
this.scheduleRender();
|
|
355
|
+
this.overrides = {
|
|
356
|
+
...this.overrides,
|
|
357
|
+
...overrides
|
|
358
|
+
};
|
|
359
|
+
this.props = {
|
|
360
|
+
...this.getProps(),
|
|
361
|
+
...this.overrides
|
|
362
|
+
};
|
|
363
|
+
for (var property in this.props) {
|
|
364
|
+
const value = this.props[property];
|
|
365
|
+
const attribute = property.replace(/([a-z])([A-Z])/g, '$1-$2').toLowerCase();
|
|
366
|
+
if (value == null || value === this.defaultProps[property]) {
|
|
367
|
+
this.removeAttribute(attribute);
|
|
368
|
+
}
|
|
369
|
+
else if (typeof value == 'string' || typeof value == 'number' || typeof value == 'boolean') {
|
|
370
|
+
if (this.getAttribute(attribute) != String(value))
|
|
371
|
+
this.setAttribute(attribute, String(value));
|
|
372
|
+
}
|
|
373
|
+
}
|
|
374
|
+
}
|
|
375
|
+
catch (e) {
|
|
376
|
+
this.whenRendered.reject(e);
|
|
377
|
+
this.onError(e, 'set');
|
|
378
|
+
}
|
|
379
|
+
return this;
|
|
380
|
+
}
|
|
381
|
+
import(path) {
|
|
382
|
+
return import(/* @vite-ignore */ /* webpackIgnore: true */ path);
|
|
383
|
+
}
|
|
384
|
+
scheduleRender() {
|
|
385
|
+
if (this.nextRender == null) {
|
|
386
|
+
this.whenRendered = this.whenRendered.restart();
|
|
387
|
+
}
|
|
388
|
+
cancelAnimationFrame(this.nextRender);
|
|
389
|
+
this.nextRender = requestAnimationFrame(() => {
|
|
390
|
+
this.nextRender = null;
|
|
391
|
+
this.advance().catch((e) => { });
|
|
392
|
+
});
|
|
393
|
+
}
|
|
394
|
+
formatURL(src, hostname) {
|
|
395
|
+
if (typeof src == 'string' && src.match(/^\/[^\/]/)) {
|
|
396
|
+
return hostname + src;
|
|
397
|
+
}
|
|
398
|
+
else {
|
|
399
|
+
return src;
|
|
400
|
+
}
|
|
401
|
+
}
|
|
402
|
+
getContextAttribute(name, element = this) {
|
|
403
|
+
for (var p = this; (p = p.parentElement || (p.parentNode instanceof ShadowRoot ? p.parentNode.host : null));) {
|
|
404
|
+
if (p.getAttribute(name) != null)
|
|
405
|
+
return p.getAttribute(name);
|
|
406
|
+
}
|
|
407
|
+
return this.getAttribute(name);
|
|
27
408
|
}
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
}, [counter]);
|
|
35
|
-
return (React.createElement(React.Fragment, null,
|
|
36
|
-
React.createElement("p", null,
|
|
37
|
-
"Rendering attribute: ",
|
|
38
|
-
counter),
|
|
39
|
-
React.createElement("p", null,
|
|
40
|
-
"Triggered updates: ",
|
|
41
|
-
updates)));
|
|
409
|
+
static register(tagName, win) {
|
|
410
|
+
if (win == null)
|
|
411
|
+
win = typeof window != 'undefined' ? window : null;
|
|
412
|
+
if (win && !win.customElements.get(tagName)) {
|
|
413
|
+
win.customElements.define(tagName, this);
|
|
414
|
+
}
|
|
42
415
|
}
|
|
43
416
|
}
|
|
44
|
-
|
|
45
|
-
MyComponent.observedAttributes = ['counter'];
|
|
46
|
-
export { MyComponent };
|
|
417
|
+
export { FEAASElement as Element };
|
|
47
418
|
//# sourceMappingURL=FEAASElement.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FEAASElement.js","sourceRoot":"","sources":["../../src/components/FEAASElement.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAW1C,MAAM,CAAC,OAAO,OAAO,YAAgB,SAAQ,SAA0B;IACrE,IAAI;QACF,OAAO,OAAO,CAAC,GAAG,CAAC;YACjB,6BAA6B;YAC7B,MAAM,CAAC,+BAA+B,CAAC;YACvC,aAAa;YACb,MAAM,CAAC,mCAAmC,CAAC;SAC5C,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,EAAE,QAAQ,CAAC,EAAE,EAAE;YAC5B,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAA;QAC5B,CAAC,CAAC,CAAA;IACJ,CAAC;IAED,MAAM,CAAC,EAAK,EAAE,EAAE,KAAK,EAAgB;QACnC,OAAO,yCAAK,CAAA;IACd,CAAC;CACF;AAMD,MAAa,WAAY,SAAQ,YAA8B;IAA/D;;QAIE,kBAAa,GAAG,IAAI,CAAA;IAuBtB,CAAC;IArBC,0DAA0D;IAC1D,QAAQ;QACN,OAAO;YACL,OAAO,EAAE,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;SAClD,CAAA;IACH,CAAC;IAED,2DAA2D;IAC3D,mDAAmD;IACnD,MAAM,CAAC,EAAE,OAAO,EAAoB,EAAE,EAAE,KAAK,EAAgB;QAC3D,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAA;QAC/C,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;YACnB,UAAU,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAA;QAC1B,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAA;QACb,OAAO,CACL;YACE;;gBAAyB,OAAO,CAAK;YACrC;;gBAAuB,OAAO,CAAK,CAClC,CACJ,CAAA;IACH,CAAC;;AAzBD,mEAAmE;AAC5D,8BAAkB,GAAG,CAAC,SAAS,CAAC,AAAd,CAAc;SAF5B,WAAW"}
|
|
1
|
+
{"version":3,"file":"FEAASElement.js","sourceRoot":"","sources":["../../src/components/FEAASElement.tsx"],"names":[],"mappings":"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"}
|