@sitecore-feaas/clientside 0.3.11-alpha.1 → 0.3.12
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/build/components/FEAASElement.js +1 -0
- package/build/components/FEAASElement.js.map +1 -1
- package/build/ui/FEAASExternal.js +19 -1
- package/build/ui/FEAASExternal.js.map +1 -1
- package/build/ui/react.js +69 -5
- package/build/ui/react.js.map +1 -1
- package/dist/browser/headless.cjs +6 -6
- package/dist/browser/headless.cjs.map +3 -3
- package/dist/browser/headless.esm.js +1 -1
- package/dist/browser/headless.esm.js.map +1 -1
- package/dist/browser/index.cjs +6 -6
- package/dist/browser/index.cjs.map +3 -3
- package/dist/browser/index.esm.js +6 -6
- package/dist/browser/index.esm.js.map +1 -1
- package/dist/browser/react.cjs +6 -6
- package/dist/browser/react.cjs.map +3 -3
- package/dist/browser/react.esm.js +6 -6
- package/dist/browser/react.esm.js.map +1 -1
- package/dist/node/headless.cjs +4 -4
- package/dist/node/headless.cjs.map +3 -3
- package/dist/node/headless.esm.js +1 -1
- package/dist/node/headless.esm.js.map +1 -1
- package/dist/node/index.cjs +4 -4
- package/dist/node/index.cjs.map +3 -3
- package/dist/node/index.esm.js +4 -4
- package/dist/node/index.esm.js.map +3 -3
- package/dist/node/react.cjs +4 -4
- package/dist/node/react.cjs.map +3 -3
- package/dist/node/react.esm.js +4 -4
- package/dist/node/react.esm.js.map +3 -3
- package/headless.cjs +4 -4
- package/headless.cjs.map +3 -3
- package/headless.js +4 -4
- package/headless.js.map +3 -3
- package/package.json +1 -1
- package/react.cjs +6 -6
- package/react.cjs.map +3 -3
- package/react.js +6 -6
- package/react.js.map +3 -3
- package/src/components/FEAASElement.tsx +1 -0
- package/src/ui/FEAASExternal.tsx +21 -1
- package/src/ui/react.tsx +79 -8
- package/types/components/FEAASElement.d.ts +1 -0
- package/types/components/FEAASElement.d.ts.map +1 -1
- package/types/tsbuildinfo +1 -1
- package/types/ui/FEAASExternal.d.ts +3 -0
- package/types/ui/FEAASExternal.d.ts.map +1 -1
- package/types/ui/react.d.ts +62 -4
- package/types/ui/react.d.ts.map +1 -1
- package/types/ui/tsbuildinfo +1 -1
package/src/ui/FEAASExternal.tsx
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import React from 'react'
|
|
2
2
|
import ReactDOM from 'react-dom'
|
|
3
|
-
import { FEAASElement } from '../components/FEAASElement.js'
|
|
3
|
+
import { FEAASElement, WebComponent } from '../components/FEAASElement.js'
|
|
4
4
|
import { ReactJSX, ReactModules } from '../components/FEAASReactElement.js'
|
|
5
5
|
import { kebabCase, reverseKebabCase } from '../utils/string.js'
|
|
6
6
|
import { Component, FEAASComponentProps } from './react.js'
|
|
@@ -284,10 +284,30 @@ declare global {
|
|
|
284
284
|
}
|
|
285
285
|
}
|
|
286
286
|
}
|
|
287
|
+
interface Window {
|
|
288
|
+
FEAASExternalComponents: RegisteredComponents
|
|
289
|
+
}
|
|
290
|
+
}
|
|
291
|
+
|
|
292
|
+
// Register schemas passed as <feaas-registration components=... />
|
|
293
|
+
class FEAASExternalRegistration extends WebComponent {
|
|
294
|
+
connectedCallback() {
|
|
295
|
+
try {
|
|
296
|
+
;(JSON.parse(this.getAttribute('components')) as any[]).forEach((component) => {
|
|
297
|
+
FEAASExternal.registerComponent(null, component)
|
|
298
|
+
})
|
|
299
|
+
} catch (e) {}
|
|
300
|
+
}
|
|
301
|
+
static register(tagName: string) {
|
|
302
|
+
return FEAASElement.register.call(this, tagName)
|
|
303
|
+
}
|
|
287
304
|
}
|
|
288
305
|
|
|
306
|
+
if (typeof window !== 'undefined' && window)
|
|
307
|
+
Object.defineProperty(window, 'FEAASExternalComponents', { get: () => FEAASExternal.registered })
|
|
289
308
|
FEAASExternal.register('feaas-external')
|
|
290
309
|
FEAASExternal.setRegistrationCallback()
|
|
310
|
+
FEAASExternalRegistration.register('feaas-registration')
|
|
291
311
|
|
|
292
312
|
export const { getComponent, linkComponents, registerComponent } = FEAASExternal
|
|
293
313
|
export { FEAASExternal as External }
|
package/src/ui/react.tsx
CHANGED
|
@@ -5,7 +5,10 @@ import {
|
|
|
5
5
|
getComponentURL,
|
|
6
6
|
getStylesheetURL,
|
|
7
7
|
parseComponentSource,
|
|
8
|
-
|
|
8
|
+
FEAASCDNStylesheetSource,
|
|
9
|
+
FEAASCDNStylesheetParams,
|
|
10
|
+
parseStylesheetSource,
|
|
11
|
+
getStylesheetSource
|
|
9
12
|
} from './index.js'
|
|
10
13
|
import React from 'react'
|
|
11
14
|
import { renderHTMLContent, HTMLNode, parseHTMLContent } from '../dom/html.js'
|
|
@@ -24,10 +27,27 @@ export type FEAASReactComponentProps = FEAASComponentProps & {
|
|
|
24
27
|
lastModified?: Date | string
|
|
25
28
|
}
|
|
26
29
|
|
|
27
|
-
|
|
28
|
-
|
|
30
|
+
/**
|
|
31
|
+
* A component to include a stylesheet using a <link> tag. Placing one in the HEAD ensures that there will be no flash
|
|
32
|
+
* of unstyled content.
|
|
33
|
+
*
|
|
34
|
+
* @param {FEAASCDNStylesheetParams | FEAASCDNStylesheetSource} props - The properties for including the stylesheet.
|
|
35
|
+
* @returns {JSX.Element} The <link> element for the stylesheet.
|
|
36
|
+
*/
|
|
37
|
+
export const FEAASReactStylesheet = (props: FEAASCDNStylesheetParams | FEAASCDNStylesheetSource) => {
|
|
38
|
+
if ('src' in props) {
|
|
39
|
+
props = parseStylesheetSource(props.src)
|
|
40
|
+
}
|
|
41
|
+
return <link rel='stylesheet' href={getStylesheetSource(props)} />
|
|
29
42
|
}
|
|
30
43
|
|
|
44
|
+
/**
|
|
45
|
+
* An asynchronous wrapper over FEAAS.Component for use in React, especially suited for Next.js.
|
|
46
|
+
* This component fetches HTML and data asynchronously for server-side rendering with data mapping.
|
|
47
|
+
*
|
|
48
|
+
* @param {FEAASReactComponentProps} props - The properties for the component.
|
|
49
|
+
* @returns {Promise<JSX.Element>} The JSX element representing the component.
|
|
50
|
+
*/
|
|
31
51
|
export const FEAASReactServerComponent = async ({ ...props }: FEAASReactComponentProps) => {
|
|
32
52
|
const fetchedData = await DataSettings.fetch(props?.data || {})
|
|
33
53
|
|
|
@@ -43,6 +63,13 @@ export const FEAASReactServerComponent = async ({ ...props }: FEAASReactComponen
|
|
|
43
63
|
return FEAASReactComponent({ ...p, data: fetchedData })
|
|
44
64
|
}
|
|
45
65
|
|
|
66
|
+
/**
|
|
67
|
+
* A wrapper over FEAAS.Component for use in React. It converts a passed template HTML into React,
|
|
68
|
+
* allowing external components in the render tree. Data can be provided in JSON format.
|
|
69
|
+
*
|
|
70
|
+
* @param {FEAASReactComponentProps} props - The properties for the component.
|
|
71
|
+
* @returns {JSX.Element} The JSX element representing the component.
|
|
72
|
+
*/
|
|
46
73
|
export function FEAASReactComponent({ data, ...props }: FEAASReactComponentProps) {
|
|
47
74
|
let preload = null
|
|
48
75
|
let children: null | React.ReactNode
|
|
@@ -91,6 +118,13 @@ export function FEAASReactComponent({ data, ...props }: FEAASReactComponentProps
|
|
|
91
118
|
)
|
|
92
119
|
}
|
|
93
120
|
|
|
121
|
+
/**
|
|
122
|
+
* A wrapper over External component that accepts a fallback for rendering in case of a missing component.
|
|
123
|
+
* It accepts properties in camelcase format and ensures no hydration errors on the client-side.
|
|
124
|
+
*
|
|
125
|
+
* @param {FEAASReactExternalComponentProps} props - The properties for the component.
|
|
126
|
+
* @returns {JSX.Element} The JSX element representing the component.
|
|
127
|
+
*/
|
|
94
128
|
export function FEAASReactExternalComponent(props: FEAASReactExternalComponentProps) {
|
|
95
129
|
const { componentName, fallback, ...attributes } = props
|
|
96
130
|
const Component = getComponent(componentName)?.component
|
|
@@ -117,7 +151,14 @@ export function FEAASReactExternalComponent(props: FEAASReactExternalComponentPr
|
|
|
117
151
|
)
|
|
118
152
|
}
|
|
119
153
|
|
|
120
|
-
/**
|
|
154
|
+
/**
|
|
155
|
+
* Converts an HTMLNode into a React tree, ensuring proper context access for external components.
|
|
156
|
+
*
|
|
157
|
+
* @param {HTMLNode} node - The HTML node to be converted.
|
|
158
|
+
* @param {any} [callback] - Callback to customize turning of HTML node into react tree.
|
|
159
|
+
* @param {any} [key] - The key for the React element.
|
|
160
|
+
* @returns {React.ReactNode} The resulting React node.
|
|
161
|
+
*/
|
|
121
162
|
export function HTMLNodeToReact(
|
|
122
163
|
node: HTMLNode,
|
|
123
164
|
callback?: (node: HTMLNode, attributes: Record<string, any>) => [tagName: any, attributes: Record<string, any>],
|
|
@@ -158,6 +199,14 @@ export function HTMLNodeToReact(
|
|
|
158
199
|
const NextComponents = new Map()
|
|
159
200
|
var NextClientsideRenderer: any = null
|
|
160
201
|
var NextDynamicFunction: any = null
|
|
202
|
+
|
|
203
|
+
/**
|
|
204
|
+
* A special case of ExternalComponent designed for Next.js.
|
|
205
|
+
* It uses `next/dynamic` to control rendering on the client, server, or both.
|
|
206
|
+
*
|
|
207
|
+
* @param {FEAASReactExternalComponentProps} props - The properties for the component.
|
|
208
|
+
* @returns {JSX.Element} The JSX element representing the component.
|
|
209
|
+
*/
|
|
161
210
|
export function FEAASNextExternalComponent(props: FEAASReactExternalComponentProps) {
|
|
162
211
|
// See if component is registered in current context
|
|
163
212
|
const { componentName, ...attributes } = props
|
|
@@ -175,23 +224,45 @@ export function FEAASNextExternalComponent(props: FEAASReactExternalComponentPro
|
|
|
175
224
|
const External = NextComponents.get(componentName)
|
|
176
225
|
return <External {...props} fallback={Component ? <Component {...props} /> : null}></External>
|
|
177
226
|
}
|
|
227
|
+
|
|
228
|
+
/**
|
|
229
|
+
* Enables Next.js client/server rendering options for registered components.
|
|
230
|
+
* The `component` argument should be a function exported from a file with a `use client` directive.
|
|
231
|
+
*
|
|
232
|
+
* @param {any} dynamic - The Next dynamic function.
|
|
233
|
+
* @param {any} component - The component function.
|
|
234
|
+
* @returns {any} Augmented bundle.
|
|
235
|
+
*/
|
|
178
236
|
export function enableNextClientsideComponents(dynamic: any, component: any) {
|
|
179
237
|
NextDynamicFunction = dynamic
|
|
180
238
|
NextClientsideRenderer = component
|
|
181
239
|
return component
|
|
182
240
|
}
|
|
183
241
|
|
|
242
|
+
/**
|
|
243
|
+
* Renders a registered external component in a React tree.
|
|
244
|
+
*
|
|
245
|
+
* @param {FEAASReactExternalComponentProps} props - The properties for the component.
|
|
246
|
+
* @returns {JSX.Element} The JSX element representing the component.
|
|
247
|
+
*/
|
|
184
248
|
export function FEAASExternalComponent(props: FEAASReactExternalComponentProps) {
|
|
185
249
|
if (Object.keys(props).length == 0) {
|
|
186
|
-
|
|
187
|
-
return (
|
|
188
|
-
<feaas-registration components={JSON.stringify(Object.values(External.registered))} suppressHydrationWarning />
|
|
189
|
-
)
|
|
250
|
+
return
|
|
190
251
|
}
|
|
191
252
|
if (NextDynamicFunction) return FEAASNextExternalComponent(props)
|
|
192
253
|
return FEAASReactExternalComponent(props)
|
|
193
254
|
}
|
|
255
|
+
export function FEAASReactExternalComponentBundle() {
|
|
256
|
+
return (
|
|
257
|
+
<>
|
|
258
|
+
<feaas-registration components={JSON.stringify(Object.values(External.registered))} suppressHydrationWarning />
|
|
259
|
+
{/** Will not be rendered, but needs to be referenced */}
|
|
260
|
+
{<NextClientsideRenderer />}
|
|
261
|
+
</>
|
|
262
|
+
)
|
|
263
|
+
}
|
|
194
264
|
|
|
265
|
+
export const ExternalComponentBundle = FEAASReactExternalComponentBundle
|
|
195
266
|
export const ExternalComponent = FEAASExternalComponent
|
|
196
267
|
export const ReactExternalComponent = FEAASReactExternalComponent
|
|
197
268
|
export const NextExternalComponent = FEAASNextExternalComponent
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FEAASElement.d.ts","sourceRoot":"","sources":["../../src/components/FEAASElement.tsx"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"FEAASElement.d.ts","sourceRoot":"","sources":["../../src/components/FEAASElement.tsx"],"names":[],"mappings":"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"}
|