@sitecore-feaas/clientside 0.2.1 → 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +7 -7
- package/build/components/FEAASComponent.js +72 -10
- package/build/components/FEAASComponent.js.map +1 -1
- package/build/components/FEAASElement.js +19 -5
- package/build/components/FEAASElement.js.map +1 -1
- package/build/dom/rendering.js.map +1 -1
- package/build/dom/thumbnail.js +29 -24
- package/build/dom/thumbnail.js.map +1 -1
- package/build/headless.js +5 -0
- package/build/headless.js.map +1 -1
- package/build/ui/FEAAS.js +5 -0
- package/build/ui/FEAAS.js.map +1 -0
- package/build/ui/FEAASContext.js +9 -6
- package/build/ui/FEAASContext.js.map +1 -1
- package/build/ui/FEAASExternal.js +68 -4
- package/build/ui/FEAASExternal.js.map +1 -1
- package/build/ui/FEAASPicker.js +15 -5
- package/build/ui/FEAASPicker.js.map +1 -1
- package/build/ui/index.js +3 -4
- package/build/ui/index.js.map +1 -1
- package/build/ui/react.js +23 -8
- package/build/ui/react.js.map +1 -1
- package/build/utils/datapath.js +15 -0
- package/build/utils/datapath.js.map +1 -1
- package/build/utils/fetch.js +40 -0
- package/build/utils/fetch.js.map +1 -0
- package/build/utils/settings.js +60 -0
- package/build/utils/settings.js.map +1 -0
- package/dist/browser/headless.cjs +8 -6
- package/dist/browser/headless.cjs.map +4 -4
- package/dist/browser/headless.esm.js +8 -6
- package/dist/browser/headless.esm.js.map +1 -1
- package/dist/browser/index.cjs +8 -6
- package/dist/browser/index.cjs.map +4 -4
- package/dist/browser/index.esm.js +8 -6
- package/dist/browser/index.esm.js.map +1 -1
- package/dist/browser/react.cjs +8 -6
- package/dist/browser/react.cjs.map +4 -4
- package/dist/browser/react.esm.js +8 -6
- package/dist/browser/react.esm.js.map +1 -1
- package/dist/node/headless.cjs +6 -4
- package/dist/node/headless.cjs.map +4 -4
- package/dist/node/headless.esm.js +6 -4
- package/dist/node/headless.esm.js.map +4 -4
- package/dist/node/index.cjs +7 -5
- package/dist/node/index.cjs.map +4 -4
- package/dist/node/index.esm.js +7 -5
- package/dist/node/index.esm.js.map +4 -4
- package/dist/node/react.cjs +6 -4
- package/dist/node/react.cjs.map +4 -4
- package/dist/node/react.esm.js +6 -4
- package/dist/node/react.esm.js.map +4 -4
- package/headless.cjs +6 -4
- package/headless.cjs.map +4 -4
- package/headless.js +6 -4
- package/headless.js.map +4 -4
- package/package.json +2 -2
- package/react.cjs +8 -6
- package/react.cjs.map +4 -4
- package/react.js +8 -6
- package/react.js.map +4 -4
- package/scripts/build.js +1 -1
- package/src/components/FEAASComponent.tsx +101 -10
- package/src/components/FEAASElement.tsx +30 -5
- package/src/dom/rendering.ts +1 -0
- package/src/dom/thumbnail.ts +29 -24
- package/src/headless.ts +5 -0
- package/src/ui/FEAAS.tsx +4 -0
- package/src/ui/FEAASContext.tsx +10 -1
- package/src/ui/FEAASExternal.tsx +75 -16
- package/src/ui/FEAASPicker.tsx +19 -7
- package/src/ui/index.ts +4 -4
- package/src/ui/react.tsx +48 -14
- package/src/utils/datapath.ts +17 -0
- package/src/utils/fetch.ts +60 -0
- package/src/utils/settings.ts +69 -0
- package/test/FEAASComponent.react.test.tsx +1 -1
- package/test/FEAASComponent.test.tsx +1 -0
- package/test/FEAASComponentData.test.tsx +215 -0
- package/test/FEAASContext.test.tsx +3 -3
- package/test/FEAASExternal.test.tsx +1 -8
- package/test/ServerComponent.test.tsx +33 -0
- package/test/fetch-data.ts +55 -0
- package/test/settings.test.ts +78 -0
- package/types/components/FEAASComponent.d.ts +33 -1
- package/types/components/FEAASComponent.d.ts.map +1 -1
- package/types/components/FEAASElement.d.ts +10 -1
- package/types/components/FEAASElement.d.ts.map +1 -1
- package/types/dom/rendering.d.ts.map +1 -1
- package/types/dom/thumbnail.d.ts +16 -16
- package/types/dom/thumbnail.d.ts.map +1 -1
- package/types/headless.d.ts +5 -0
- package/types/headless.d.ts.map +1 -1
- package/types/tsbuildinfo +1 -1
- package/types/ui/FEAAS.d.ts +5 -0
- package/types/ui/FEAAS.d.ts.map +1 -0
- package/types/ui/FEAASContext.d.ts +8 -0
- package/types/ui/FEAASContext.d.ts.map +1 -1
- package/types/ui/FEAASExternal.d.ts +56 -3
- package/types/ui/FEAASExternal.d.ts.map +1 -1
- package/types/ui/FEAASPicker.d.ts +10 -6
- package/types/ui/FEAASPicker.d.ts.map +1 -1
- package/types/ui/index.d.ts +1 -4
- package/types/ui/index.d.ts.map +1 -1
- package/types/ui/react.d.ts +7 -2
- package/types/ui/react.d.ts.map +1 -1
- package/types/ui/tsbuildinfo +1 -1
- package/types/utils/datapath.d.ts +2 -0
- package/types/utils/datapath.d.ts.map +1 -1
- package/types/utils/fetch.d.ts +9 -0
- package/types/utils/fetch.d.ts.map +1 -0
- package/types/utils/settings.d.ts +13 -0
- package/types/utils/settings.d.ts.map +1 -0
package/build/ui/FEAASContext.js
CHANGED
|
@@ -1,13 +1,15 @@
|
|
|
1
1
|
import { FEAASElement } from '../components/FEAASElement.js';
|
|
2
2
|
import { ControlledPromise } from '../utils/promise.js';
|
|
3
3
|
export function FEAASContextProps(element) {
|
|
4
|
-
var _a, _b, _c, _d;
|
|
4
|
+
var _a, _b, _c, _d, _e;
|
|
5
5
|
return {
|
|
6
6
|
library: element === null || element === void 0 ? void 0 : element.getAttribute('library'),
|
|
7
7
|
src: (_a = element === null || element === void 0 ? void 0 : element.getAttribute('src')) !== null && _a !== void 0 ? _a : '/context.js',
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
8
|
+
// override environment
|
|
9
|
+
environment: (_b = element === null || element === void 0 ? void 0 : element.getAttribute('environment')) !== null && _b !== void 0 ? _b : undefined,
|
|
10
|
+
frontend: (_c = element === null || element === void 0 ? void 0 : element.getAttribute('frontend')) !== null && _c !== void 0 ? _c : 'https://components.sitecorecloud.io',
|
|
11
|
+
backend: (_d = element === null || element === void 0 ? void 0 : element.getAttribute('backend')) !== null && _d !== void 0 ? _d : 'https://components.sitecorecloud.io/api',
|
|
12
|
+
cdn: (_e = element === null || element === void 0 ? void 0 : element.getAttribute('cdn')) !== null && _e !== void 0 ? _e : 'https://feaas.blob.core.windows.net',
|
|
11
13
|
auth: null,
|
|
12
14
|
isolate: (element === null || element === void 0 ? void 0 : element.getAttribute('isolate')) == null || (element === null || element === void 0 ? void 0 : element.getAttribute('isolate')) == 'true'
|
|
13
15
|
};
|
|
@@ -60,6 +62,7 @@ class FEAASContext extends FEAASElement {
|
|
|
60
62
|
}
|
|
61
63
|
/** Pull in children FEAAS react elements into the shadow DOM so they receieve the styles */
|
|
62
64
|
connectedCallback() {
|
|
65
|
+
this.setAttribute('feaas-role', 'ui');
|
|
63
66
|
//if (this.props.isolate)
|
|
64
67
|
Array.from(this.children).forEach((child) => {
|
|
65
68
|
this.getRoot().appendChild(child);
|
|
@@ -82,10 +85,10 @@ class FEAASContext extends FEAASElement {
|
|
|
82
85
|
placement: 'top',
|
|
83
86
|
portalProps
|
|
84
87
|
};
|
|
85
|
-
return (React.createElement(AppContext, { backend: this.props.backend, libraryId: this.props.library, container: this.getRoot(), auth: this.props.auth, getTheme: this.getTheme, onStatusChange: this.onStatusChange, modalProps: {
|
|
88
|
+
return (React.createElement(AppContext, { environment: this.props.environment, backend: this.props.backend, libraryId: this.props.library, container: this.getRoot(), auth: this.props.auth, getTheme: this.getTheme, onStatusChange: this.onStatusChange, modalProps: {
|
|
86
89
|
portalProps
|
|
87
90
|
}, chakraProps: {
|
|
88
|
-
resetScope: '
|
|
91
|
+
resetScope: ':where([feaas-role="ui"])',
|
|
89
92
|
cssVarsRoot: ':host',
|
|
90
93
|
resetCSS: true,
|
|
91
94
|
toastOptions: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FEAASContext.js","sourceRoot":"","sources":["../../src/ui/FEAASContext.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAkB,MAAM,+BAA+B,CAAA;AAC5E,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;
|
|
1
|
+
{"version":3,"file":"FEAASContext.js","sourceRoot":"","sources":["../../src/ui/FEAASContext.tsx"],"names":[],"mappings":"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"}
|
|
@@ -17,6 +17,7 @@ const addTitles = (properties) => Object.keys(properties).reduce((acc, key) => {
|
|
|
17
17
|
}
|
|
18
18
|
return acc;
|
|
19
19
|
}, {});
|
|
20
|
+
/** Converts the keys of an object to kebab case. */
|
|
20
21
|
const objectKeysToKebabCase = (object = {}) => Object.keys(object).reduce((acc, key) => {
|
|
21
22
|
acc[kebabCase(key)] = object[key];
|
|
22
23
|
return acc;
|
|
@@ -52,6 +53,7 @@ const transformUiSchema = (uiSchema, properties) => {
|
|
|
52
53
|
});
|
|
53
54
|
return transformed;
|
|
54
55
|
};
|
|
56
|
+
/** Parses a property value based on its property name and type defined in the JSON properties object. */
|
|
55
57
|
export const parseProps = (propName, propValue, properties) => {
|
|
56
58
|
var _a;
|
|
57
59
|
//@ts-ignore
|
|
@@ -103,11 +105,72 @@ class FEAASExternal extends FEAASElement {
|
|
|
103
105
|
getProps() {
|
|
104
106
|
return FEAASExternalProps(this);
|
|
105
107
|
}
|
|
106
|
-
|
|
107
|
-
|
|
108
|
+
/**
|
|
109
|
+
* Register React component to be renderable as Sitecore component (in Components and Pages). Properties are defined
|
|
110
|
+
* as {@link https://json-schema.org JSON Schema}, from which a configuration form will be produced using
|
|
111
|
+
* {@link https://rjsf-team.github.io/react-jsonschema-form/ RJSF library}. The library allows passing a
|
|
112
|
+
* {@link https://rjsf-team.github.io/react-jsonschema-form/docs/api-reference/uiSchema UI Schema} that allows tight
|
|
113
|
+
* customization of form widgets, styles and behavior.
|
|
114
|
+
*
|
|
115
|
+
* @param {React.ComponentType} component React component that will be rendered.
|
|
116
|
+
* @param {string} options.title Component name as presented to the user.
|
|
117
|
+
* @param {JSONSchema['properties']} options.properties Object of properties.
|
|
118
|
+
* @param {JSONSchema['type']} options.properties[].type JSON Schema type of a property.
|
|
119
|
+
* @param {string} [options.properties[].title] Optional title displayed to the user.
|
|
120
|
+
* @param {string} [options.group] Optional Image to be displayed in the UI.
|
|
121
|
+
* @param {string} [options.thumbnail] Optional title displayed to the user.
|
|
122
|
+
* @param {UISchema} [options.ui] Optional component groupping.
|
|
123
|
+
* @see https://rjsf-team.github.io/react-jsonschema-form/docs/api-reference/uiSchema
|
|
124
|
+
* @see https://json-schema.org
|
|
125
|
+
* @example
|
|
126
|
+
*
|
|
127
|
+
* FEAAS.External.registerComponent(MyComponent, {
|
|
128
|
+
* // Name of a component as it will be presented to the user
|
|
129
|
+
* name: 'My Component',
|
|
130
|
+
* // Title of a component as it will be presented in the inputs form
|
|
131
|
+
* title: 'My Component',
|
|
132
|
+
* // Optional: Thumbnail image for component to be displayed in UI
|
|
133
|
+
* thumbnail: 'http://examaple.com/component.jpg',
|
|
134
|
+
* // Optional: Group components by name
|
|
135
|
+
* group: 'Assorted components',
|
|
136
|
+
* // Definitions of three configurable properties that MyComponent accepts
|
|
137
|
+
* properties: {
|
|
138
|
+
* // Color is a string, but only Red/Green/Blue are allowed
|
|
139
|
+
* color: { type: 'string', enum: ['red', 'green', 'blue'] },
|
|
140
|
+
* // Text is a property labelled as "Text summary"
|
|
141
|
+
* text: { type: 'string', title: 'Text summary' },
|
|
142
|
+
* // Count is a number with 1 as default value
|
|
143
|
+
* count: { type: 'number', default: 1 }
|
|
144
|
+
* },
|
|
145
|
+
* // Optional UI schema customization
|
|
146
|
+
* ui: {
|
|
147
|
+
* // Present color choices as radio buttons
|
|
148
|
+
* color: { 'ui:widget': 'radio' },
|
|
149
|
+
* // Text is a textarea with 5 rows
|
|
150
|
+
* text: { 'ui:widget': 'textarea', 'ui:options': { rows: 5 } },
|
|
151
|
+
* // Count is a number field with spinner button
|
|
152
|
+
* count: { 'ui:widget': 'updown' }
|
|
153
|
+
* },
|
|
154
|
+
* // Color and text area required properties
|
|
155
|
+
* required: ['color', 'text']
|
|
156
|
+
* })
|
|
157
|
+
*
|
|
158
|
+
*/
|
|
159
|
+
static registerComponent(component, options) {
|
|
160
|
+
if (!options.name)
|
|
161
|
+
throw new Error('Could not register external component. Please make sure you provide a name in the options');
|
|
162
|
+
const id = options.name;
|
|
108
163
|
const { thumbnail, group, ui: uiSchema, ...schemaOptions } = options;
|
|
109
164
|
const schema = { ...schemaOptions, type: 'object' };
|
|
110
|
-
FEAASExternal.registered[id] = {
|
|
165
|
+
FEAASExternal.registered[id] = {
|
|
166
|
+
component,
|
|
167
|
+
name: id,
|
|
168
|
+
schema,
|
|
169
|
+
uiSchema,
|
|
170
|
+
thumbnail,
|
|
171
|
+
group,
|
|
172
|
+
title: (schema === null || schema === void 0 ? void 0 : schema.title) || id
|
|
173
|
+
};
|
|
111
174
|
FEAASExternal.setRegistrationCallback();
|
|
112
175
|
}
|
|
113
176
|
static setRegistrationCallback() {
|
|
@@ -136,7 +199,7 @@ class FEAASExternal extends FEAASElement {
|
|
|
136
199
|
}
|
|
137
200
|
/*static loadComponents() {
|
|
138
201
|
const components = JSON.parse(sessionStorage.getItem('feaas-external-components'))
|
|
139
|
-
components.forEach((c: { name: string; schema: any; component: React.
|
|
202
|
+
components.forEach((c: { name: string; schema: any; component: React.ComponentType }) => {
|
|
140
203
|
const name = c.name
|
|
141
204
|
const schema = c.schema
|
|
142
205
|
const component = eval('(' + c.component + ')')
|
|
@@ -153,5 +216,6 @@ FEAASExternal.registered = {};
|
|
|
153
216
|
export default FEAASExternal;
|
|
154
217
|
FEAASExternal.register('feaas-external');
|
|
155
218
|
FEAASExternal.setRegistrationCallback();
|
|
219
|
+
export const registerComponent = FEAASExternal.registerComponent;
|
|
156
220
|
export { FEAASExternal as External };
|
|
157
221
|
//# sourceMappingURL=FEAASExternal.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FEAASExternal.js","sourceRoot":"","sources":["../../src/ui/FEAASExternal.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,QAAQ,MAAM,WAAW,CAAA;AAChC,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAA;AAE5D,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AAChE,OAAO,EAAE,SAAS,EAAuB,MAAM,YAAY,CAAA;AAG3D,uGAAuG;AACvG,MAAM,SAAS,GAAG,CAAC,UAAkC,EAAE,EAAE,CACvD,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,CAAC,GAA2B,EAAE,GAAG,EAAE,EAAE;IAClE,IAAI,UAAU,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE;QACzB,GAAG,CAAC,GAAG,CAAC,GAAG,UAAU,CAAC,GAAG,CAAC,CAAA;KAC3B;SAAM;QACL,MAAM,KAAK,GAAG,GAAG;aACd,KAAK,CAAC,GAAG,CAAC;aACV,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;aACzE,IAAI,CAAC,GAAG,CAAC,CAAA;QACZ,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,UAAU,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,CAAA;KACzC;IACD,OAAO,GAAG,CAAA;AACZ,CAAC,EAAE,EAAE,CAAC,CAAA;AAER,MAAM,qBAAqB,GAAG,CAAC,SAAiC,EAAE,EAAE,EAAE,CACpE,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC,GAA2B,EAAE,GAAG,EAAE,EAAE;IAC9D,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAA;IACjC,OAAO,GAAG,CAAA;AACZ,CAAC,EAAE,EAAE,CAAC,CAAA;AAER,MAAM,eAAe,GAAG,CAAC,
|
|
1
|
+
{"version":3,"file":"FEAASExternal.js","sourceRoot":"","sources":["../../src/ui/FEAASExternal.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,QAAQ,MAAM,WAAW,CAAA;AAChC,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAA;AAE5D,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AAChE,OAAO,EAAE,SAAS,EAAuB,MAAM,YAAY,CAAA;AAG3D,uGAAuG;AACvG,MAAM,SAAS,GAAG,CAAC,UAAkC,EAAE,EAAE,CACvD,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,CAAC,GAA2B,EAAE,GAAG,EAAE,EAAE;IAClE,IAAI,UAAU,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE;QACzB,GAAG,CAAC,GAAG,CAAC,GAAG,UAAU,CAAC,GAAG,CAAC,CAAA;KAC3B;SAAM;QACL,MAAM,KAAK,GAAG,GAAG;aACd,KAAK,CAAC,GAAG,CAAC;aACV,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;aACzE,IAAI,CAAC,GAAG,CAAC,CAAA;QACZ,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,UAAU,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,CAAA;KACzC;IACD,OAAO,GAAG,CAAA;AACZ,CAAC,EAAE,EAAE,CAAC,CAAA;AAER,oDAAoD;AACpD,MAAM,qBAAqB,GAAG,CAAC,SAAiC,EAAE,EAAE,EAAE,CACpE,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC,GAA2B,EAAE,GAAG,EAAE,EAAE;IAC9D,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAA;IACjC,OAAO,GAAG,CAAA;AACZ,CAAC,EAAE,EAAE,CAAC,CAAA;AAER,MAAM,eAAe,GAAG,CAAC,MAAkB,EAAE,EAAE;IAC7C,IAAI,CAAC,MAAM;QAAE,OAAM;IACnB,IAAI,CAAC,MAAM,CAAC,UAAU;QAAE,OAAO,MAAM,CAAA;IACrC,IAAI,UAAU,EAAE,QAAQ,CAAA;IAExB,2BAA2B;IAC3B,UAAU,GAAG,qBAAqB,CAAC,MAAM,CAAC,UAAU,CAAC,CAAA;IACrD,QAAQ,GAAG,CAAC,MAAM,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,IAAY,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAA;IAEzE,kCAAkC;IAClC,UAAU,GAAG,SAAS,CAAC,UAAU,CAAC,CAAA;IAElC,+FAA+F;IAC/F,MAAM,KAAK,GAAW,SAAS,CAAA;IAC/B,OAAO,EAAE,GAAG,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAA;AACnD,CAAC,CAAA;AAED,MAAM,iBAAiB,GAAG,CAAC,QAAkB,EAAE,UAAkC,EAAE,EAAE;IACnF,IAAI,CAAC,QAAQ,IAAI,CAAC,UAAU;QAAE,OAAM;IACpC,IAAI,WAAqB,CAAA;IAEzB,qBAAqB;IACrB,WAAW,GAAG,qBAAqB,CAAC,QAAQ,CAAC,CAAA;IAE7C,oDAAoD;IACpD,MAAM,gBAAgB,GAAG,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,kBAAkB,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAA;IAC/G,gBAAgB,CAAC,OAAO,CAAC,CAAC,YAAY,EAAE,EAAE;QACxC,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC;YAAE,WAAW,CAAC,YAAY,CAAC,GAAG,EAAE,WAAW,EAAE,QAAQ,EAAE,CAAA;aAChF,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC,WAAW,CAAC;YAAE,WAAW,CAAC,YAAY,CAAC,CAAC,WAAW,CAAC,GAAG,QAAQ,CAAA;IACrG,CAAC,CAAC,CAAA;IAEF,OAAO,WAAW,CAAA;AACpB,CAAC,CAAA;AACD,yGAAyG;AACzG,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,QAAgB,EAAE,SAAiB,EAAE,UAAoC,EAAE,EAAE;;IACtG,YAAY;IACZ,QAAQ,MAAA,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAG,QAAQ,CAAC,0CAAE,IAAI,EAAE;QACpC,KAAK,QAAQ;YACX,OAAO,SAAS,CAAA;QAClB,KAAK,QAAQ;YACX,OAAO,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAA;QAC9B,KAAK,OAAO;YACV,OAAO,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAA;QAC9B,KAAK,QAAQ;YACX,OAAO,CAAC,SAAS,CAAA;QACnB,KAAK,SAAS;YACZ,OAAO,CAAC,SAAS,CAAA;QACnB,KAAK,SAAS;YACZ,OAAO,SAAS,KAAK,MAAM,CAAA;QAC7B;YACE,OAAO,SAAS,CAAA;KACnB;AACH,CAAC,CAAA;AAED,MAAM,UAAU,kBAAkB,CAAC,OAAqB;;IACtD,MAAM,UAAU,GAAG,OAAO,CAAC,iBAAiB,EAAE,CAAA;IAC9C,MAAM,EAAE,GAAG,OAAO,CAAC,YAAY,CAAC,kBAAkB,CAAC,CAAA;IACnD,MAAM,MAAM,GAAe,MAAA,aAAa,CAAC,UAAU,CAAC,EAAE,CAAC,0CAAE,MAAM,CAAA;IAC/D,MAAM,KAAK,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE;QAC7C,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,IAAI,EAAE,iBAAiB,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE;YAC5F,MAAM,KAAK,GAAG,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,CAAA;YACxC,OAAO,EAAE,GAAG,IAAI,EAAE,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,EAAE,UAAU,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,UAAU,CAAC,EAAE,CAAA;SAC5G;aAAM;YACL,OAAO,IAAI,CAAA;SACZ;IACH,CAAC,EAAE,EAAE,CAAC,CAAA;IACN,OAAO,KAAK,CAAA;AACd,CAAC;AAOD,MAAqB,aAAc,SAAQ,YAA8C;IAGvF,IAAI;QACF,OAAO,OAAO,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAA;IAC7C,CAAC;IAED,MAAM,CAAC,KAAyB,EAAE,EAAE,KAAK,EAAgB;;QACvD,MAAM,EAAE,cAAc,EAAE,EAAE,EAAE,GAAG,KAAK,CAAA;QACpC,MAAM,SAAS,GAAG,MAAA,aAAa,CAAC,UAAU,CAAC,EAAE,CAAC,0CAAE,SAAS,CAAA;QACzD,IAAI,CAAC,SAAS;YAAE,OAAO,CAAC,IAAI,CAAC,8DAA8D,CAAC,CAAA;QAC5F,OAAO,0CAAG,SAAS,IAAI,oBAAC,SAAS,OAAK,KAAK,GAAI,CAAI,CAAA;IACrD,CAAC;IAED,QAAQ;QACN,OAAO,kBAAkB,CAAC,IAAI,CAAC,CAAA;IACjC,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAkDG;IACH,MAAM,CAAC,iBAAiB,CAAC,SAA8B,EAAE,OAAiC;QACxF,IAAI,CAAC,OAAO,CAAC,IAAI;YACf,MAAM,IAAI,KAAK,CAAC,2FAA2F,CAAC,CAAA;QAC9G,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAA;QACvB,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,EAAE,EAAE,QAAQ,EAAE,GAAG,aAAa,EAAE,GAAG,OAAO,CAAA;QACpE,MAAM,MAAM,GAAG,EAAE,GAAG,aAAa,EAAE,IAAI,EAAE,QAAQ,EAAgB,CAAA;QACjE,aAAa,CAAC,UAAU,CAAC,EAAE,CAAC,GAAG;YAC7B,SAAS;YACT,IAAI,EAAE,EAAE;YACR,MAAM;YACN,QAAQ;YACR,SAAS;YACT,KAAK;YACL,KAAK,EAAE,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,KAAK,KAAI,EAAE;SAC3B,CAAA;QACD,aAAa,CAAC,uBAAuB,EAAE,CAAA;IACzC,CAAC;IAED,MAAM,CAAC,uBAAuB;QAC5B,YAAY,CAAC,aAAa,CAAC,oBAAoB,CAAC,CAAA;QAChD,aAAa,CAAC,oBAAoB,GAAG,UAAU,CAAC,GAAG,EAAE;;YACnD,IAAI,OAAO,MAAM,KAAK,WAAW,EAAE;gBACjC,sCAAsC;gBACtC,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE;;oBAAC,OAAA,CAAC;wBACpE,GAAG,aAAa,CAAC,UAAU,CAAC,EAAE,CAAC;wBAC/B,IAAI,EAAE,EAAE;wBACR,MAAM,EAAE,eAAe,CAAC,aAAa,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC;wBAC5D,QAAQ,EAAE,iBAAiB,CACzB,aAAa,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,QAAQ,EACrC,MAAA,aAAa,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,MAAM,0CAAE,UAAU,CAChD;wBACD,gEAAgE;qBACjE,CAAC,CAAA;iBAAA,CAAC,CAAA;gBAEH,+CAA+C;gBAC/C,MAAA,MAAM,CAAC,MAAM,0CAAE,WAAW,CACxB,IAAI,CAAC,SAAS,CAAC;oBACb,MAAM,EAAE,qBAAqB;oBAC7B,IAAI,EAAE,UAAU;iBACjB,CAAC,EACF,GAAG,CACJ,CAAA;aACF;QACH,CAAC,EAAE,EAAE,CAAC,CAAA;IACR,CAAC;IAED;;;;;;;;OAQG;IAEH,MAAM,CAAC,OAAO,CAAC,KAA0D;;QACvE,MAAM,GAAG,GACP,CAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,GAAG,KAAI,CAAC,OAAO,MAAM,KAAK,WAAW,CAAC,CAAC,CAAC,MAAA,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,kBAAkB,CAAC,0CAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;QAC9G,OAAO,GAAG,CAAC,CAAC,CAAC,oBAAC,SAAS,IAAC,GAAG,EAAE,GAAG,KAAM,KAAK,GAAI,CAAC,CAAC,CAAC,IAAI,CAAA;IACxD,CAAC;;AAhIM,wBAAU,GAAyB,EAAE,CAAA;eADzB,aAAa;AAiJlC,aAAa,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAA;AACxC,aAAa,CAAC,uBAAuB,EAAE,CAAA;AAEvC,MAAM,CAAC,MAAM,iBAAiB,GAAG,aAAa,CAAC,iBAAiB,CAAA;AAChE,OAAO,EAAE,aAAa,IAAI,QAAQ,EAAE,CAAA"}
|
package/build/ui/FEAASPicker.js
CHANGED
|
@@ -12,7 +12,8 @@ export function FEAASPickerProps(element) {
|
|
|
12
12
|
variant: element === null || element === void 0 ? void 0 : element.getAttribute('variant'),
|
|
13
13
|
context: undefined,
|
|
14
14
|
onClose: undefined,
|
|
15
|
-
|
|
15
|
+
setAttribute: undefined,
|
|
16
|
+
getAttribute: undefined
|
|
16
17
|
};
|
|
17
18
|
}
|
|
18
19
|
class FEAASPicker extends FEAASElement {
|
|
@@ -28,13 +29,22 @@ class FEAASPicker extends FEAASElement {
|
|
|
28
29
|
load() {
|
|
29
30
|
return this.import(this.formatURL(this.props.src, this.props.frontend));
|
|
30
31
|
}
|
|
32
|
+
connectedCallback() {
|
|
33
|
+
this.setAttribute('feaas-role', 'ui');
|
|
34
|
+
super.connectedCallback();
|
|
35
|
+
}
|
|
31
36
|
render({ placeholder, context, mode, children, variant }, { Picker, React, useLibrary }) {
|
|
37
|
+
const [renders, forceRender] = React.useReducer((c) => c + 1, 0);
|
|
32
38
|
const collections = useLibrary('collections');
|
|
39
|
+
const components = useLibrary('components');
|
|
33
40
|
const rules = useLibrary('stylesheet.styles');
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
41
|
+
const component = components.find((c) => c.id == (context === null || context === void 0 ? void 0 : context.getAttribute('component')));
|
|
42
|
+
return (React.createElement(Picker, { rules: rules, collections: collections, themeContext: context, placeholder: placeholder, component: component, versionId: context.getAttribute('version'), mode: mode || 'component', setAttribute: (context, attribute, value) => {
|
|
43
|
+
this.props.setAttribute(context, attribute, value);
|
|
44
|
+
forceRender();
|
|
45
|
+
}, context: context, variant: variant, onModeChange: (mode) => {
|
|
46
|
+
this.set({ mode });
|
|
47
|
+
} }, children));
|
|
38
48
|
}
|
|
39
49
|
}
|
|
40
50
|
FEAASPicker.observedAttributes = ['library', 'mode', 'frontend', 'src', 'hidden', 'variant'];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FEAASPicker.js","sourceRoot":"","sources":["../../src/ui/FEAASPicker.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAA;AAE5D,MAAM,UAAU,gBAAgB,CAAC,OAA+B;;IAC9D,OAAO;QACL,IAAI,EAAE,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,YAAY,CAAC,MAAM,CAAC,KAAI,QAAQ;QAC/C,IAAI,EAAE,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,YAAY,CAAC,MAAM,CAAC,KAAI,QAAQ;QAC/C,IAAI,EAAE,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,YAAY,CAAC,MAAM,
|
|
1
|
+
{"version":3,"file":"FEAASPicker.js","sourceRoot":"","sources":["../../src/ui/FEAASPicker.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAA;AAE5D,MAAM,UAAU,gBAAgB,CAAC,OAA+B;;IAC9D,OAAO;QACL,IAAI,EAAE,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,YAAY,CAAC,MAAM,CAAC,KAAI,QAAQ;QAC/C,IAAI,EAAE,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,YAAY,CAAC,MAAM,CAAC,KAAI,QAAQ;QAC/C,IAAI,EAAE,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,YAAY,CAAC,MAAM,CAA2C;QAC7E,WAAW,EAAE,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,YAAY,CAAC,aAAa,CAAC,KAAI,UAAU;QAC/D,QAAQ,EAAE,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,mBAAmB,CAAC,UAAU,CAAC,mCAAI,qCAAqC;QAC3F,GAAG,EAAE,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,YAAY,CAAC,KAAK,CAAC,mCAAI,YAAY;QACjD,MAAM,EAAE,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,YAAY,CAAC,QAAQ,CAAC,KAAI,IAAI;QAC/C,OAAO,EAAE,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,YAAY,CAAC,SAAS,CAAyB;QACjE,OAAO,EAAE,SAAsD;QAC/D,OAAO,EAAE,SAAqC;QAC9C,YAAY,EAAE,SAA+C;QAC7D,YAAY,EAAE,SAA+C;KAC9D,CAAA;AACH,CAAC;AAGD,MAAa,WAAY,SAAQ,YAAyD;IAA1F;;QAGE,iBAAY,GAAG;YACb,MAAM,EAAE,KAAK;SACe,CAAA;IA6ChC,CAAC;IA3CC,QAAQ;QACN,OAAO,gBAAgB,CAAC,IAAI,CAAC,CAAA;IAC/B,CAAC;IAED,IAAI;QACF,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAA;IACzE,CAAC;IACD,iBAAiB;QACf,IAAI,CAAC,YAAY,CAAC,YAAY,EAAE,IAAI,CAAC,CAAA;QACrC,KAAK,CAAC,iBAAiB,EAAE,CAAA;IAC3B,CAAC;IACD,MAAM,CACJ,EAAE,WAAW,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAA6C,EAC5F,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,EAA6B;QAExD,MAAM,CAAC,OAAO,EAAE,WAAW,CAAC,GAAG,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAA;QAChE,MAAM,WAAW,GAAG,UAAU,CAAC,aAAa,CAAC,CAAA;QAC7C,MAAM,UAAU,GAAG,UAAU,CAAC,YAAY,CAAC,CAAA;QAC3C,MAAM,KAAK,GAAG,UAAU,CAAC,mBAAmB,CAAC,CAAA;QAC7C,MAAM,SAAS,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAI,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,YAAY,CAAC,WAAW,CAAC,CAAA,CAAC,CAAA;QACpF,OAAO,CACL,oBAAC,MAAM,IACL,KAAK,EAAE,KAAK,EACZ,WAAW,EAAE,WAAW,EACxB,YAAY,EAAE,OAAO,EACrB,WAAW,EAAE,WAAW,EACxB,SAAS,EAAE,SAAS,EACpB,SAAS,EAAE,OAAO,CAAC,YAAY,CAAC,SAAS,CAAC,EAC1C,IAAI,EAAE,IAAI,IAAI,WAAW,EACzB,YAAY,EAAE,CAAC,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,EAAE;gBAC1C,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,OAAO,EAAE,SAAS,EAAE,KAAK,CAAC,CAAA;gBAClD,WAAW,EAAE,CAAA;YACf,CAAC,EACD,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,OAAO,EAChB,YAAY,EAAE,CAAC,IAAI,EAAE,EAAE;gBACrB,IAAI,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,CAAC,CAAA;YACpB,CAAC,IAEA,QAAQ,CACF,CACV,CAAA;IACH,CAAC;;AAhDM,8BAAkB,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,CAAC,AAA9D,CAA8D;SAD5E,WAAW;AA2DxB,OAAO,EAAE,WAAW,IAAI,MAAM,EAAE,CAAA;AAChC,WAAW,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAA"}
|
package/build/ui/index.js
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
|
-
export * from '
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
export * from './FEAASContext.js';
|
|
1
|
+
export * from './FEAAS.js';
|
|
2
|
+
import * as FEAAS from './FEAAS.js';
|
|
3
|
+
FEAAS.Context.prototype.clientside = FEAAS;
|
|
5
4
|
//# sourceMappingURL=index.js.map
|
package/build/ui/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/ui/index.ts"],"names":[],"mappings":"AAAA,cAAc,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/ui/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAA;AAC1B,OAAO,KAAK,KAAK,MAAM,YAAY,CAAA;AAEnC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,UAAU,GAAG,KAAK,CAAA"}
|
package/build/ui/react.js
CHANGED
|
@@ -1,20 +1,35 @@
|
|
|
1
|
-
|
|
2
|
-
import { parseComponentSource } from './index.js';
|
|
1
|
+
import { fetchComponent, getComponentURL, getStylesheetURL, parseComponentSource } from './index.js';
|
|
3
2
|
import React from 'react';
|
|
4
3
|
import { renderHTMLContent } from '../dom/html.js';
|
|
4
|
+
import { fetchData } from '../utils/fetch.js';
|
|
5
5
|
export { renderHTMLContent };
|
|
6
6
|
export { External } from './FEAASExternal.js';
|
|
7
|
+
export * from './index.js';
|
|
8
|
+
export * from '../headless.js';
|
|
9
|
+
export const ServerComponent = async (props) => {
|
|
10
|
+
const fetchedData = await fetchData((props === null || props === void 0 ? void 0 : props.data) || {});
|
|
11
|
+
const p = { ...props };
|
|
12
|
+
if (('src' in p || 'component' in p) && (p === null || p === void 0 ? void 0 : p.template) == null) {
|
|
13
|
+
const response = await fetchComponent(p);
|
|
14
|
+
p.template = response.template;
|
|
15
|
+
// p.lastModified = response.lastModified
|
|
16
|
+
}
|
|
17
|
+
return FEAASEmbed({ ...p, data: fetchedData });
|
|
18
|
+
};
|
|
7
19
|
export function FEAASEmbed({ data, ...props }) {
|
|
20
|
+
let html = '';
|
|
21
|
+
let preload = null;
|
|
8
22
|
if ('template' in props && props.template) {
|
|
9
|
-
|
|
23
|
+
html = renderHTMLContent(props.template, data || {});
|
|
10
24
|
}
|
|
11
25
|
if ('src' in props) {
|
|
12
|
-
props = {
|
|
13
|
-
...parseComponentSource(props.src),
|
|
14
|
-
...props
|
|
15
|
-
};
|
|
26
|
+
props = { ...parseComponentSource(props.src), ...props };
|
|
16
27
|
}
|
|
17
|
-
return (React.createElement(
|
|
28
|
+
return (React.createElement(React.Fragment, null,
|
|
29
|
+
'preload' in props && preload === true && 'src' in props && (React.createElement(React.Fragment, null,
|
|
30
|
+
React.createElement("link", { rel: 'preload', as: 'fetch', href: getComponentURL(props.src), crossOrigin: 'anonymous' }),
|
|
31
|
+
React.createElement("link", { rel: 'preload', as: 'style', href: getStylesheetURL(props.src), crossOrigin: 'anonymous' }))),
|
|
32
|
+
React.createElement("feaas-component", { ...props, template: null, data: typeof data == 'string' ? data : data ? JSON.stringify(data) : null, dangerouslySetInnerHTML: { __html: html || '' } })));
|
|
18
33
|
}
|
|
19
34
|
export const Component = FEAASEmbed;
|
|
20
35
|
//# sourceMappingURL=react.js.map
|
package/build/ui/react.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"react.js","sourceRoot":"","sources":["../../src/ui/react.tsx"],"names":[],"mappings":"AAAA,cAAc,
|
|
1
|
+
{"version":3,"file":"react.js","sourceRoot":"","sources":["../../src/ui/react.tsx"],"names":[],"mappings":"AAAA,OAAO,EAEL,cAAc,EACd,eAAe,EACf,gBAAgB,EAChB,oBAAoB,EACrB,MAAM,YAAY,CAAA;AACnB,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAA;AAClD,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAE7C,OAAO,EAAE,iBAAiB,EAAE,CAAA;AAC5B,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAA;AAC7C,cAAc,YAAY,CAAA;AAC1B,cAAc,gBAAgB,CAAA;AAE9B,MAAM,CAAC,MAAM,eAAe,GAAG,KAAK,EAAE,KAA+B,EAAE,EAAE;IACvE,MAAM,WAAW,GAAG,MAAM,SAAS,CAAC,CAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,IAAI,KAAI,EAAE,CAAC,CAAA;IAEtD,MAAM,CAAC,GAAG,EAAE,GAAG,KAAK,EAAE,CAAA;IAEtB,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,WAAW,IAAI,CAAC,CAAC,IAAI,CAAA,CAAC,aAAD,CAAC,uBAAD,CAAC,CAAE,QAAQ,KAAI,IAAI,EAAE;QAC3D,MAAM,QAAQ,GAAG,MAAM,cAAc,CAAC,CAAC,CAAC,CAAA;QAExC,CAAC,CAAC,QAAQ,GAAG,QAAQ,CAAC,QAAQ,CAAA;QAC9B,yCAAyC;KAC1C;IAED,OAAO,UAAU,CAAC,EAAE,GAAG,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC,CAAA;AAChD,CAAC,CAAA;AAED,MAAM,UAAU,UAAU,CAAC,EAAE,IAAI,EAAE,GAAG,KAAK,EAAkE;IAC3G,IAAI,IAAI,GAAG,EAAE,CAAA;IACb,IAAI,OAAO,GAAG,IAAI,CAAA;IAElB,IAAI,UAAU,IAAI,KAAK,IAAI,KAAK,CAAC,QAAQ,EAAE;QACzC,IAAI,GAAG,iBAAiB,CAAC,KAAK,CAAC,QAAQ,EAAE,IAAI,IAAI,EAAE,CAAC,CAAA;KACrD;IAED,IAAI,KAAK,IAAI,KAAK,EAAE;QAClB,KAAK,GAAG,EAAE,GAAG,oBAAoB,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,GAAG,KAAK,EAAE,CAAA;KACzD;IAED,OAAO,CACL;QACG,SAAS,IAAI,KAAK,IAAI,OAAO,KAAK,IAAI,IAAI,KAAK,IAAI,KAAK,IAAI,CAC3D;YACE,8BAAM,GAAG,EAAC,SAAS,EAAC,EAAE,EAAC,OAAO,EAAC,IAAI,EAAE,eAAe,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,WAAW,EAAC,WAAW,GAAG;YAC3F,8BAAM,GAAG,EAAC,SAAS,EAAC,EAAE,EAAC,OAAO,EAAC,IAAI,EAAE,gBAAgB,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,WAAW,EAAC,WAAW,GAAG,CAC3F,CACJ;QACD,4CACM,KAAK,EACT,QAAQ,EAAE,IAAI,EACd,IAAI,EAAE,OAAO,IAAI,IAAI,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,EACzE,uBAAuB,EAAE,EAAE,MAAM,EAAE,IAAI,IAAI,EAAE,EAAE,GAC/C,CACD,CACJ,CAAA;AACH,CAAC;AAED,MAAM,CAAC,MAAM,SAAS,GAAG,UAAU,CAAA"}
|
package/build/utils/datapath.js
CHANGED
|
@@ -26,4 +26,19 @@ export function cleanCollectionBit(path) {
|
|
|
26
26
|
export function normalizeCollectionScope(path) {
|
|
27
27
|
return cleanCollectionBit(path) + '.*';
|
|
28
28
|
}
|
|
29
|
+
export function getHumanizedLabel(path, maxBits = 2) {
|
|
30
|
+
var bits = cleanCollectionBit(path)
|
|
31
|
+
.split(/]\.|\.\*\./g)
|
|
32
|
+
.pop()
|
|
33
|
+
.split(/\./g)
|
|
34
|
+
.slice(-3);
|
|
35
|
+
bits = bits.filter((b) => isNaN(parseInt(b)));
|
|
36
|
+
return bits
|
|
37
|
+
.map((bit) => bit.charAt(0).toUpperCase() + bit.slice(1))
|
|
38
|
+
.slice(-maxBits)
|
|
39
|
+
.join(' ');
|
|
40
|
+
}
|
|
41
|
+
export function getLastPathBit(path) {
|
|
42
|
+
return cleanCollectionBit(path).split('.').pop();
|
|
43
|
+
}
|
|
29
44
|
//# sourceMappingURL=datapath.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"datapath.js","sourceRoot":"","sources":["../../src/utils/datapath.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,SAAiB,EAAE,EAAE;;IAC9C,MAAM,KAAK,GAAG,QAAQ,CAAC,MAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,KAAK,CAAC,aAAa,CAAC,0CAAG,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;IAChE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,CAAC;QAAE,OAAO,MAAM,CAAC,KAAK,CAAC,CAAA;IACpD,OAAO,IAAI,CAAA;AACb,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,SAAiB,EAAE,EAAE;;IAC9C,MAAM,IAAI,GAAG,MAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAClB,KAAK,CAAC,cAAc,CAAC,0CAAG,CAAC,EAC1B,KAAK,CAAC,UAAU,EAChB,MAAM,CAAC,OAAO,EACd,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;QACX,qBAAqB;QACrB,IAAI,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC;YAAE,OAAO,GAAG,CAAA;QACpC,SAAS;QACT,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,eAAe,CAAC,CAAA;QACxC,OAAO,KAAK,IAAI,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;IACpG,CAAC,CAAC,CAAA;IACJ,IAAI,CAAC,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,KAAK,CAAC,OAAO,CAAC,CAAA;QAAE,OAAO,IAAI,CAAA;IACtC,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;AACvB,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,QAAgB,EAAE,EAAE,WAAC,OAAA,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,KAAK,CAAC,oBAAoB,CAAC,0CAAG,CAAC,CAAC,CAAA,EAAA,CAAA;AAE5F,MAAM,UAAU,kBAAkB,CAAC,IAAY;IAC7C,OAAO,IAAI,CAAC,OAAO,CAAC,uBAAuB,EAAE,EAAE,CAAC,CAAA;AAClD,CAAC;AAED,MAAM,UAAU,wBAAwB,CAAC,IAAY;IACnD,OAAO,kBAAkB,CAAC,IAAI,CAAC,GAAG,IAAI,CAAA;AACxC,CAAC"}
|
|
1
|
+
{"version":3,"file":"datapath.js","sourceRoot":"","sources":["../../src/utils/datapath.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
export const isDataSettings = (data) => {
|
|
2
|
+
if (typeof data.url != 'string')
|
|
3
|
+
return false;
|
|
4
|
+
for (var property in data) {
|
|
5
|
+
if (property == 'body' ||
|
|
6
|
+
property == 'params' ||
|
|
7
|
+
property == 'headers' ||
|
|
8
|
+
property == 'url' ||
|
|
9
|
+
property === 'method' ||
|
|
10
|
+
(property == 'jsonpath' && typeof data[property] == 'string')) {
|
|
11
|
+
continue;
|
|
12
|
+
}
|
|
13
|
+
return false;
|
|
14
|
+
}
|
|
15
|
+
return true;
|
|
16
|
+
};
|
|
17
|
+
const performFetch = async (settings) => {
|
|
18
|
+
try {
|
|
19
|
+
const response = await fetch(settings.url, settings);
|
|
20
|
+
if (!response)
|
|
21
|
+
return {};
|
|
22
|
+
return await response.json();
|
|
23
|
+
}
|
|
24
|
+
catch (e) {
|
|
25
|
+
return {};
|
|
26
|
+
}
|
|
27
|
+
};
|
|
28
|
+
export async function fetchData(data) {
|
|
29
|
+
if (!data)
|
|
30
|
+
return data;
|
|
31
|
+
if (isDataSettings(data))
|
|
32
|
+
return performFetch(data);
|
|
33
|
+
const keys = Object.keys(data);
|
|
34
|
+
const allRequests = await Promise.all(keys.map((key) => (isDataSettings(data[key]) ? performFetch(data[key]) : null)).filter(Boolean));
|
|
35
|
+
return keys.reduce((obj, key) => ({
|
|
36
|
+
...obj,
|
|
37
|
+
[key]: isDataSettings(data[key]) ? allRequests.shift() : data[key]
|
|
38
|
+
}), {});
|
|
39
|
+
}
|
|
40
|
+
//# sourceMappingURL=fetch.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fetch.js","sourceRoot":"","sources":["../../src/utils/fetch.ts"],"names":[],"mappings":"AAIA,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,IAAS,EAAwB,EAAE;IAChE,IAAI,OAAO,IAAI,CAAC,GAAG,IAAI,QAAQ;QAAE,OAAO,KAAK,CAAA;IAE7C,KAAK,IAAI,QAAQ,IAAI,IAAI,EAAE;QACzB,IACE,QAAQ,IAAI,MAAM;YAClB,QAAQ,IAAI,QAAQ;YACpB,QAAQ,IAAI,SAAS;YACrB,QAAQ,IAAI,KAAK;YACjB,QAAQ,KAAK,QAAQ;YACrB,CAAC,QAAQ,IAAI,UAAU,IAAI,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,QAAQ,CAAC,EAC7D;YACA,SAAQ;SACT;QAED,OAAO,KAAK,CAAA;KACb;IAED,OAAO,IAAI,CAAA;AACb,CAAC,CAAA;AAED,MAAM,YAAY,GAAG,KAAK,EACxB,QAEC,EACc,EAAE;IACjB,IAAI;QACF,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAA;QAEpD,IAAI,CAAC,QAAQ;YAAE,OAAO,EAAE,CAAA;QAExB,OAAO,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAA;KAC7B;IAAC,OAAO,CAAC,EAAE;QACV,OAAO,EAAE,CAAA;KACV;AACH,CAAC,CAAA;AAED,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,IAA+D;IAC7F,IAAI,CAAC,IAAI;QAAE,OAAO,IAAI,CAAA;IAEtB,IAAI,cAAc,CAAC,IAAI,CAAC;QAAE,OAAO,YAAY,CAAC,IAAI,CAAC,CAAA;IAEnD,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAE9B,MAAM,WAAW,GAAG,MAAM,OAAO,CAAC,GAAG,CACnC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAsB,EAAE,EAAE,CAAC,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CACnH,CAAA;IAED,OAAO,IAAI,CAAC,MAAM,CAChB,CAAC,GAAG,EAAE,GAAsB,EAAE,EAAE,CAAC,CAAC;QAChC,GAAG,GAAG;QACN,CAAC,GAAG,CAAC,EAAE,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;KACnE,CAAC,EACF,EAAE,CACH,CAAA;AACH,CAAC"}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
export function clean(settings) {
|
|
2
|
+
let cleanSettings = {};
|
|
3
|
+
const hasNoBody = (settings === null || settings === void 0 ? void 0 : settings.method) === 'GET' || (settings === null || settings === void 0 ? void 0 : settings.method) === 'HEAD' || Object.keys((settings === null || settings === void 0 ? void 0 : settings.body) || {}).length === 0;
|
|
4
|
+
const hasNoHeaders = settings.headers &&
|
|
5
|
+
(Object.keys(settings.headers).length === 0 ||
|
|
6
|
+
(Object.keys(settings.headers).length === 1 &&
|
|
7
|
+
(settings.headers['Content-type'] || settings.headers['Content-Type']) &&
|
|
8
|
+
(settings.headers['Content-type'] === 'application/json' ||
|
|
9
|
+
settings.headers['Content-Type'] === 'application/json')));
|
|
10
|
+
const hasNoParams = settings.params || Object.keys(settings.params || {}).length === 0;
|
|
11
|
+
if (settings.method && settings.method !== 'GET')
|
|
12
|
+
cleanSettings = { ...cleanSettings, method: settings.method };
|
|
13
|
+
if (settings.body && !hasNoBody)
|
|
14
|
+
cleanSettings = { ...cleanSettings, body: settings.body };
|
|
15
|
+
cleanSettings = {
|
|
16
|
+
...cleanSettings,
|
|
17
|
+
headers: hasNoHeaders ? { 'Content-type': 'application/json' } : settings.headers
|
|
18
|
+
};
|
|
19
|
+
if (settings.params && !hasNoParams)
|
|
20
|
+
cleanSettings = { ...cleanSettings, params: settings.params };
|
|
21
|
+
return { ...cleanSettings, url: settings.url || '' };
|
|
22
|
+
}
|
|
23
|
+
export function toFetchArguments(settings) {
|
|
24
|
+
const normalized = normalize(settings);
|
|
25
|
+
let body = null;
|
|
26
|
+
const contentType = normalized.headers['Content-Type'] || normalized.headers['Content-type'];
|
|
27
|
+
const isJson = contentType === 'application/json';
|
|
28
|
+
const isForm = contentType === 'multipart/form-data';
|
|
29
|
+
const isUrlEncoded = contentType === 'application/x-www-form-urlencoded';
|
|
30
|
+
if (isJson)
|
|
31
|
+
body = JSON.stringify(normalized.body);
|
|
32
|
+
if (isForm)
|
|
33
|
+
body = Object.keys(normalized.body).reduce((form, key) => {
|
|
34
|
+
form.append(key, normalized.body[key]);
|
|
35
|
+
return form;
|
|
36
|
+
}, new FormData());
|
|
37
|
+
if (isUrlEncoded)
|
|
38
|
+
body = new URLSearchParams(normalized.body);
|
|
39
|
+
const params = Object.keys(normalized.params).length ? `?${new URLSearchParams(normalized.params)}` : '';
|
|
40
|
+
let url = `${normalized.url}${params}`;
|
|
41
|
+
let options = {};
|
|
42
|
+
if (body)
|
|
43
|
+
options.body = body;
|
|
44
|
+
if (Object.keys(normalized.headers).length)
|
|
45
|
+
options.headers = normalized.headers;
|
|
46
|
+
if (normalized.method !== 'GET')
|
|
47
|
+
options.method = normalized.method;
|
|
48
|
+
return [url, options];
|
|
49
|
+
}
|
|
50
|
+
export function normalize(settings) {
|
|
51
|
+
return {
|
|
52
|
+
params: (settings === null || settings === void 0 ? void 0 : settings.params) || {},
|
|
53
|
+
headers: (settings === null || settings === void 0 ? void 0 : settings.headers) || {},
|
|
54
|
+
jsonpath: (settings === null || settings === void 0 ? void 0 : settings.jsonpath) || '$',
|
|
55
|
+
method: (settings === null || settings === void 0 ? void 0 : settings.method) || 'GET',
|
|
56
|
+
body: (settings === null || settings === void 0 ? void 0 : settings.body) || {},
|
|
57
|
+
url: (settings === null || settings === void 0 ? void 0 : settings.url) || ''
|
|
58
|
+
};
|
|
59
|
+
}
|
|
60
|
+
//# sourceMappingURL=settings.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"settings.js","sourceRoot":"","sources":["../../src/utils/settings.ts"],"names":[],"mappings":"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"}
|