@sitecore-feaas/clientside 0.1.53 → 0.1.55

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (122) hide show
  1. package/README.md +41 -7
  2. package/build/components/FEAASBase.js +12 -9
  3. package/build/components/FEAASBase.js.map +1 -1
  4. package/build/components/FEAASComponent.js +3 -2
  5. package/build/components/FEAASComponent.js.map +1 -1
  6. package/build/components/FEAASElement.js +2 -1
  7. package/build/components/FEAASElement.js.map +1 -1
  8. package/build/components/FEAASLoader.js +3 -2
  9. package/build/components/FEAASLoader.js.map +1 -1
  10. package/build/components/FEAASStylesheet.js +1 -1
  11. package/build/components/FEAASStylesheet.js.map +1 -1
  12. package/build/dom/data.js +0 -6
  13. package/build/dom/data.js.map +1 -1
  14. package/build/dom/html.js +7 -0
  15. package/build/dom/html.js.map +1 -1
  16. package/build/dom/rendering.js +8 -5
  17. package/build/dom/rendering.js.map +1 -1
  18. package/build/dom/thumbnail.js +247 -0
  19. package/build/dom/thumbnail.js.map +1 -0
  20. package/build/fetch.js +4 -2
  21. package/build/fetch.js.map +1 -1
  22. package/build/headless.js +2 -0
  23. package/build/headless.js.map +1 -1
  24. package/build/ui/FEAASContext.js +10 -4
  25. package/build/ui/FEAASContext.js.map +1 -1
  26. package/build/ui/FEAASEditor.js +7 -6
  27. package/build/ui/FEAASEditor.js.map +1 -1
  28. package/build/ui/FEAASExternal.js +12 -10
  29. package/build/ui/FEAASExternal.js.map +1 -1
  30. package/build/ui/FEAASPicker.js +10 -4
  31. package/build/ui/FEAASPicker.js.map +1 -1
  32. package/build/utils/datapath.js +29 -0
  33. package/build/utils/datapath.js.map +1 -0
  34. package/build/utils/promise.js +27 -0
  35. package/build/utils/promise.js.map +1 -1
  36. package/dist/browser/headless.cjs +8 -5
  37. package/dist/browser/headless.cjs.map +4 -4
  38. package/dist/browser/headless.esm.js +8 -5
  39. package/dist/browser/headless.esm.js.map +1 -1
  40. package/dist/browser/index.cjs +8 -5
  41. package/dist/browser/index.cjs.map +4 -4
  42. package/dist/browser/index.esm.js +8 -5
  43. package/dist/browser/index.esm.js.map +1 -1
  44. package/dist/browser/react.cjs +8 -5
  45. package/dist/browser/react.cjs.map +4 -4
  46. package/dist/browser/react.esm.js +8 -5
  47. package/dist/browser/react.esm.js.map +1 -1
  48. package/dist/node/headless.cjs +6 -3
  49. package/dist/node/headless.cjs.map +4 -4
  50. package/dist/node/headless.esm.js +6 -3
  51. package/dist/node/headless.esm.js.map +4 -4
  52. package/dist/node/index.cjs +6 -3
  53. package/dist/node/index.cjs.map +4 -4
  54. package/dist/node/index.esm.js +6 -3
  55. package/dist/node/index.esm.js.map +4 -4
  56. package/dist/node/react.cjs +6 -3
  57. package/dist/node/react.cjs.map +4 -4
  58. package/dist/node/react.esm.js +6 -3
  59. package/dist/node/react.esm.js.map +4 -4
  60. package/headless.cjs +6 -3
  61. package/headless.cjs.map +4 -4
  62. package/headless.js +6 -3
  63. package/headless.js.map +4 -4
  64. package/package.json +2 -1
  65. package/react.cjs +8 -5
  66. package/react.cjs.map +4 -4
  67. package/react.js +8 -5
  68. package/react.js.map +4 -4
  69. package/src/components/FEAASBase.tsx +12 -10
  70. package/src/components/FEAASComponent.tsx +1 -1
  71. package/src/components/FEAASLoader.tsx +1 -1
  72. package/src/components/FEAASStylesheet.tsx +1 -1
  73. package/src/dom/data.ts +0 -8
  74. package/src/dom/html.ts +8 -0
  75. package/src/dom/rendering.ts +9 -4
  76. package/src/dom/thumbnail.ts +293 -0
  77. package/src/fetch.ts +5 -3
  78. package/src/headless.ts +2 -0
  79. package/src/ui/FEAASContext.tsx +9 -3
  80. package/src/ui/FEAASEditor.tsx +5 -5
  81. package/src/ui/FEAASExternal.tsx +10 -10
  82. package/src/ui/FEAASPicker.tsx +10 -3
  83. package/src/utils/datapath.ts +31 -0
  84. package/src/utils/promise.ts +29 -2
  85. package/test/FEAASComponent.react.test.tsx +3 -6
  86. package/test/FEAASComponent.test.tsx +2 -1
  87. package/test/FEAASExternal.test.tsx +50 -4
  88. package/test/cjs/tsconfig.json +9 -0
  89. package/test/fetch.ts +1 -1
  90. package/types/components/FEAASBase.d.ts +12 -9
  91. package/types/components/FEAASBase.d.ts.map +1 -1
  92. package/types/components/FEAASComponent.d.ts +1 -1
  93. package/types/components/FEAASComponent.d.ts.map +1 -1
  94. package/types/components/FEAASLoader.d.ts +1 -1
  95. package/types/components/FEAASLoader.d.ts.map +1 -1
  96. package/types/components/FEAASStylesheet.d.ts +1 -1
  97. package/types/components/FEAASStylesheet.d.ts.map +1 -1
  98. package/types/dom/data.d.ts +0 -2
  99. package/types/dom/data.d.ts.map +1 -1
  100. package/types/dom/html.d.ts +2 -0
  101. package/types/dom/html.d.ts.map +1 -1
  102. package/types/dom/rendering.d.ts.map +1 -1
  103. package/types/dom/thumbnail.d.ts +82 -0
  104. package/types/dom/thumbnail.d.ts.map +1 -0
  105. package/types/fetch.d.ts +6 -4
  106. package/types/fetch.d.ts.map +1 -1
  107. package/types/headless.d.ts +2 -0
  108. package/types/headless.d.ts.map +1 -1
  109. package/types/tsbuildinfo +1 -1
  110. package/types/tsbuildinfo_ui +1 -1
  111. package/types/ui/FEAASContext.d.ts +9 -5
  112. package/types/ui/FEAASContext.d.ts.map +1 -1
  113. package/types/ui/FEAASEditor.d.ts +2 -2
  114. package/types/ui/FEAASEditor.d.ts.map +1 -1
  115. package/types/ui/FEAASExternal.d.ts +2 -2
  116. package/types/ui/FEAASExternal.d.ts.map +1 -1
  117. package/types/ui/FEAASPicker.d.ts +5 -5
  118. package/types/ui/FEAASPicker.d.ts.map +1 -1
  119. package/types/utils/datapath.d.ts +6 -0
  120. package/types/utils/datapath.d.ts.map +1 -0
  121. package/types/utils/promise.d.ts +28 -1
  122. package/types/utils/promise.d.ts.map +1 -1
@@ -1,14 +1,41 @@
1
1
  export type ControlledPromise<T> = Promise<T> & {
2
- resolve: (...args: any) => void
2
+ resolve: (result?: T) => void
3
3
  reject: (e: Error) => void
4
4
  restart: () => ControlledPromise<T>
5
5
  first: ControlledPromise<T>
6
6
  }
7
7
 
8
+ /**
9
+ * ControlledPromise is a function that returns a promise with additional methods for resolve, reject, restart, and
10
+ * first. This allows more granular control over the promise resolution process. It also avoids unhandled rejections by
11
+ * catching any errors and passing them to the onFailure callback.
12
+ *
13
+ * @example
14
+ * const promise = ControlledPromise(
15
+ * (result) => console.log(result),
16
+ * (error) => console.error(error)
17
+ * )
18
+ * promise.resolve('Success') // logs: "Success"
19
+ * promise.reject(new Error('Failure')) // logs: Error: Failure
20
+ *
21
+ * @template T The type of value that the promise will resolve with.
22
+ * @param {(result: T) => void} [onSuccess] - A callback function that is called when the promise is successfully
23
+ * resolved. The resolved value is passed to this function.
24
+ * @param {(e: Error) => void} [onFailure=(e: Error) => {}] - A callback function that is called when the promise is
25
+ * rejected. The Error object is passed to this function. Default is `(e: Error) => {}`
26
+ * @returns {ControlledPromise<T>} A ControlledPromise object with the following properties:
27
+ *
28
+ * - Resolve: A function that when called, will resolve the promise.
29
+ * - Reject: A function that when called, will reject the promise with the provided error.
30
+ * - Restart: A function that when called, will restart the promise. This creates a new promise and replaces the current
31
+ * promise with the new one.
32
+ * - First: The first promise that was created by the restart function. This property is initially undefined, and is set
33
+ * when the restart function is called for the first time.
34
+ */
8
35
  export function ControlledPromise<T>(onSuccess?: (result: T) => void, onFailure = (e: Error) => {}) {
9
36
  var first: ControlledPromise<T>
10
37
  const restart = () => {
11
- var resolve: (...args: any) => void
38
+ var resolve: (result?: T) => void
12
39
  var reject: (e: Error) => void
13
40
  const promise = new Promise<T>((success, failure) => {
14
41
  resolve = (value: T) => {
@@ -1,10 +1,7 @@
1
- import { beforeEach, afterAll, beforeAll, describe, expect, it, vi } from 'vitest'
2
- import { FEAASComponent } from '../src/components/FEAASComponent.js'
3
- import { renderDOMContent } from '../src/dom/rendering.js'
4
- import { clearFetchCache } from '../src/fetch.js'
5
- import { Component } from '../src/ui/react.js'
6
- import ReactDOM from 'react-dom'
7
1
  import React from 'react'
2
+ import ReactDOM from 'react-dom'
3
+ import { describe, expect, it } from 'vitest'
4
+ import { Component } from '../src/ui/react.js'
8
5
 
9
6
  async function test(react: any, html: string) {
10
7
  const div = document.createElement('div')
@@ -31,7 +31,7 @@ describe('Components', () => {
31
31
  }
32
32
  })
33
33
 
34
- // Fixme change to production component
34
+ // Fixme юhange to production component
35
35
  document.body.innerHTML =
36
36
  '<feaas-component with-stylesheet="false" library="L" cdn="CDN" component="C" version="V" revision="R"></feaas-component>'
37
37
 
@@ -179,6 +179,7 @@ describe('Components', () => {
179
179
  expect(spy).toHaveBeenNthCalledWith(1, 'CDN/components/L/C1/V/R.html', undefined)
180
180
  expect(spy).toHaveBeenCalledTimes(1)
181
181
  expect(component.innerHTML).toContain('C1')
182
+ await expect(component.whenLoaded).resolves.toEqual('C1')
182
183
 
183
184
  component.setAttribute('component', 'C2')
184
185
  await expect(component.whenRendered).resolves.toEqual(component)
@@ -8,6 +8,7 @@ describe('External', () => {
8
8
  return React.createElement('div', {}, `Hello my name is ${props.firstName} and my tel is ${props.telephone}`)
9
9
  }
10
10
  const helloSchema = {
11
+ name: 'MyTestComponent',
11
12
  properties: {
12
13
  firstName: {
13
14
  type: 'string'
@@ -20,8 +21,45 @@ describe('External', () => {
20
21
  function Hello2(props: { firstName: string; address: string }) {
21
22
  return React.createElement('div', {}, `Hello my name is ${props.firstName} and my address is ${props.address}`)
22
23
  }
24
+ function TypesComponent(props: {
25
+ stringProp: string
26
+ numberProp: number
27
+ booleanProp: boolean
28
+ arrayProp: number[]
29
+ objectProp: { value: string }
30
+ }) {
31
+ return React.createElement(
32
+ 'div',
33
+ {},
34
+ `Text: ${props.stringProp}, Number + 1: ${props.numberProp + 1}, Boolean: ${
35
+ props.booleanProp === true ? 'it is true' : 'error'
36
+ }, Array (joined): ${props.arrayProp.join(', ')}, Object: ${props.objectProp.value}`
37
+ )
38
+ }
39
+ const typesComponentSchema = {
40
+ properties: {
41
+ stringProp: {
42
+ type: 'string'
43
+ },
44
+ numberProp: {
45
+ type: 'number'
46
+ },
47
+ booleanProp: {
48
+ type: 'boolean'
49
+ },
50
+ arrayProp: {
51
+ type: 'array',
52
+ items: {
53
+ type: 'number'
54
+ }
55
+ },
56
+ objectProp: {
57
+ type: 'object'
58
+ }
59
+ }
60
+ }
23
61
  it('can register and render component', async () => {
24
- Clientside.External.registerComponent(Hello, helloSchema, 'MyTestComponent')
62
+ Clientside.External.registerComponent(Hello, helloSchema)
25
63
  document.body.innerHTML =
26
64
  '<feaas-external id="external-component" class="-component" data-attributes-keys="first-name,telephone" first-name="Chuck" telephone="45657890875643" data-attributes="{&quot;first-name&quot;:&quot;Chuck&quot;,&quot;telephone&quot;:&quot;45657890875643&quot;}" data-external-id="MyTestComponent" contenteditable="false"></feaas-external>'
27
65
  const component = document.getElementById('external-component') as FEAASExternal
@@ -44,8 +82,8 @@ describe('External', () => {
44
82
  expect(component.innerHTML).toEqual('')
45
83
  })
46
84
  it('can register and render multiple components', async () => {
47
- Clientside.External.registerComponent(Hello, {}, 'MyTestComponent1')
48
- Clientside.External.registerComponent(Hello2, {}, 'MyTestComponent2')
85
+ Clientside.External.registerComponent(Hello, { name: 'MyTestComponent1' })
86
+ Clientside.External.registerComponent(Hello2, { name: 'MyTestComponent2' })
49
87
  document.body.innerHTML =
50
88
  '<feaas-external id="external-component1" class="-component" data-attributes-keys="first-name,telephone" first-name="Chuck" telephone="45657890875643" data-attributes="{&quot;first-name&quot;:&quot;Chuck&quot;,&quot;telephone&quot;:&quot;45657890875643&quot;}" data-external-id="MyTestComponent1" contenteditable="false"></feaas-external>' +
51
89
  '<feaas-external id="external-component2" class="-component" data-attributes-keys="first-name,address" first-name="George" address="Test street 12" data-attributes="{&quot;first-name&quot;:&quot;George&quot;,&quot;address&quot;:&quot;Test street 12&quot;}" data-external-id="MyTestComponent2" contenteditable="false"></feaas-external>'
@@ -56,5 +94,13 @@ describe('External', () => {
56
94
  await expect(component2.whenRendered).resolves.toEqual(component2)
57
95
  expect(component2.innerHTML).toEqual('<div>Hello my name is George and my address is Test street 12</div>')
58
96
  })
59
- // TODO: add test for props parsing
97
+ it('can successfully parse component props', async () => {
98
+ Clientside.External.registerComponent(TypesComponent, typesComponentSchema)
99
+ document.body.innerHTML = `<feaas-external id="types-component" class="-component" data-attributes-keys="string-prop,number-prop,boolean-prop,array-prop,object-prop" string-prop="this is a string" number-prop="5" boolean-prop="true" array-prop="[1,2,3,4,5]" object-prop="{&quot;value&quot;:&quot;object value&quot;}" data-attributes="{&quot;first-name&quot;:&quot;Chuck&quot;,&quot;telephone&quot;:&quot;45657890875643&quot;}" data-external-id="TypesComponent" contenteditable="false"></feaas-external>`
100
+ const typesComponent = document.getElementById('types-component') as FEAASExternal
101
+ await expect(typesComponent.whenRendered).resolves.toEqual(typesComponent)
102
+ expect(typesComponent.innerHTML).toEqual(
103
+ '<div>Text: this is a string, Number + 1: 6, Boolean: it is true, Array (joined): 1, 2, 3, 4, 5, Object: object value</div>'
104
+ )
105
+ })
60
106
  })
@@ -0,0 +1,9 @@
1
+ {
2
+ "compilerOptions": {
3
+ "types": ["react", "react-dom", "node"],
4
+ "rootDir": ".",
5
+ "noEmit": true
6
+ },
7
+ "include": ["./**/*.ts", "./**/*.tsx", "../scripts/setup.ts"],
8
+ "exclude": []
9
+ }
package/test/fetch.ts CHANGED
@@ -113,7 +113,7 @@ describe('Fetch', () => {
113
113
  })
114
114
  } else {
115
115
  return new Response('A', {
116
- headers: {
116
+ headers: {
117
117
  date: yesterday.toUTCString()
118
118
  }
119
119
  })
@@ -19,15 +19,18 @@ export interface ReactPayload {
19
19
  * Initialization lifecycle:
20
20
  *
21
21
  * - `set(props)`
22
- * - `load() => payload`
23
- * - `onLoad?(payload)`
24
- * - `update()`
25
- * - `render(payload, props)`
26
- * - `whenRendered`
27
- * - - / If needs to reload, e.g. bypass cache /
28
- * - - `onLoad(newPayload) `
29
- * - - `whenRendered`
30
- * - `whenLoaded`
22
+ * - `scheduleRender()` - any attribute change causes render to schedule to next frame
23
+ * - `whenRendered.restart()` - rendering promise is reset and will resolve after render
24
+ * - `advance()` - called on next frame
25
+ * - `if (isReadyToLoad()) => boolean` - check if component has all necessary properties to load
26
+ * - `load() => payload` => component is loaded
27
+ * - `onLoad?(payload)` => invoke loaded callback
28
+ * - `advance()` => going further in state machine
29
+ * - `flush()` => flushes all react changes if needed
30
+ * - `update()` => component-specific method (or react) to render changes to dom
31
+ * - `render(payload, props)` => render means react
32
+ * - `whenRendered.resolve()` - rendering promise is resolved after rendering
33
+ * - `whenLoaded.resolved()` - resolved after loading and rendering
31
34
  */
32
35
  export declare class FEAASBase<Props = any, Payload = any> extends WebComponent {
33
36
  static observedAttributes: string[];
@@ -1 +1 @@
1
- {"version":3,"file":"FEAASBase.d.ts","sourceRoot":"","sources":["../../src/components/FEAASBase.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"FEAASBase.d.ts","sourceRoot":"","sources":["../../src/components/FEAASBase.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAyB,YAAY,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAC3E,OAAO,KAAK,cAAc,MAAM,kBAAkB,CAAA;AAClD,OAAO,KAAK,QAAQ,MAAM,WAAW,CAAA;AACrC,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;AAEvD,MAAM,MAAM,cAAc,CAAC,CAAC,EAAE,CAAC,SAAS,MAAM,CAAC,IAAI,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;AAGnF,QAAA,IAAI,YAAY;;;CAOC,CAAA;AAEjB,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,OAAO,KAAK,CAAA;IACnB,QAAQ,EAAE,OAAO,QAAQ,CAAA;IACzB,cAAc,EAAE,OAAO,cAAc,CAAA;CACtC;AACD;;;;;;;;;;;;;;;;;;GAkBG;AACH,qBAAa,SAAS,CAAC,KAAK,GAAG,GAAG,EAAE,OAAO,GAAG,GAAG,CAAE,SAAQ,YAAY;IACrE,MAAM,CAAC,kBAAkB,EAAE,MAAM,EAAE,CAAA;IAEnC,YAAY,iBAAuB;IAEnC,yCAAyC;IACzC,QAAQ,CAAC,OAAO,CAAC,EAAE,WAAW,GAAG,GAAG;IAIpC,wCAAwC;IACxC,KAAK,EAAE,KAAK,CAAA;IACZ,SAAS,EAAE,KAAK,CAAA;IAEhB,4BAA4B;IAC5B,UAAU,EAAE,MAAM,CAAA;IAElB,mCAAmC;IACnC,SAAS,UAAQ;IAEjB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CAAK;IACpC,WAAW,EAAE,SAAS,EAAE,CAAK;IAE7B,6BAA6B;IAC7B,OAAO,EAAE,OAAO,CAAA;IAChB,UAAU,6BAER;;IAQF,wFAAwF;IACxF,OAAO,IAAI,SAAS,GAAG,WAAW,GAAG,UAAU;IAI/C,yEAAyE;IACzE,wBAAwB,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM;IAIzE,+EAA+E;IAC/E,iBAAiB;IAGjB,oBAAoB;IAGpB;;;;;;;OAOG;IACH,KAAK;IAgBL,GAAG,CAAC,GAAG,IAAI,EAAE,GAAG;IAIhB,gEAAgE;IAChE,OAAO;IAOP,SAAS,CAAC,SAAS,UAAO;IAU1B,WAAW,CAAC,IAAI,GAAE,WAAW,GAAG,UAA2B,EAAE,SAAS,UAAO,GAAG,WAAW,EAAE;IAa7F,iEAAiE;IACjE,WAAW,CAAC,KAAK,EAAE,KAAK;IAYxB,4CAA4C;IAC5C,gBAAgB,CAAC,MAAM,EAAE,SAAS;IAYlC,0CAA0C;IAC1C,cAAc,CAAC,MAAM,EAAE,SAAS,GAAG,OAAO,GAAG,IAAI;IAkBjD,gBAAgB;IAIhB;;;OAGG;IACH,aAAa;IAIb,4BAA4B;IAC5B,OAAO,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,GAAE,MAAmB,EAAE,OAAO,UAAQ;IAcjE,kBAAkB;IAIlB,MAAM,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAA;IAElC,mCAAmC;IAC7B,OAAO;IA2Bb,KAAK;IASL,+EAA+E;IAC/E,IAAI;IAIJ;;;;OAIG;IACH,MAAM,IAAI,GAAG;IAqBb,oBAAoB,IAAI,SAAS;IAajC,YAAY,EAAE,KAAK,CAAC,iBAAiB,CAAA;IACrC,kBAAkB,EAAE,KAAK,GAAG,IAAI,EAAE,GAAG,KAAK,KAAK,CAAC,SAAS,CAAC;QAAE,QAAQ,EAAE,GAAG,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,EAAE;QAAE,KAAK,EAAE,KAAK,CAAA;KAAE,CAAC,CAAA;IAC5G,SAAS,EAAE,cAAc,CAAC,IAAI,CAAA;IAE9B,qBAAqB,CAAC,MAAM,GAAE,SAAgB,EAAE,WAAW,SAAiB;;;;;;;sBAK5D,GAAG;kBAAQ,MAAM;;sBAAjB,GAAG;kBAAQ,MAAM;;;;;qCAWJ,KAAK,aAAa,GAAG;;;;uBAVrC,KAAK;;uBAAL,KAAK;;0BADF,GAAG;sBAAQ,MAAM;;uBACpB,KAAK;;uBAAL,KAAK;;uBAAL,KAAK;;;;0BADF,GAAG;sBAAQ,MAAM;;;;;;;0BAAjB,GAAG;sBAAQ,MAAM;;uBACpB,KAAK;;;;0BADF,GAAG;sBAAQ,MAAM;;uBACpB,KAAK;;;0BADF,GAAG;sBAAQ,MAAM;;uBACpB,KAAK;;;;;0BADF,GAAG;sBAAQ,MAAM;;;0BAAjB,GAAG;sBAAQ,MAAM;;;0BAAjB,GAAG;sBAAQ,MAAM;;uBACpB,KAAK;;;0BADF,GAAG;sBAAQ,MAAM;;uBACpB,KAAK;;;;sBADF,GAAG;kBAAQ,MAAM;;;;;qCAWJ,KAAK,aAAa,GAAG;;;;uBAVrC,KAAK;;uBAAL,KAAK;;0BADF,GAAG;sBAAQ,MAAM;;uBACpB,KAAK;;uBAAL,KAAK;;uBAAL,KAAK;;;;0BADF,GAAG;sBAAQ,MAAM;;;;;;;0BAAjB,GAAG;sBAAQ,MAAM;;uBACpB,KAAK;;;;0BADF,GAAG;sBAAQ,MAAM;;uBACpB,KAAK;;;0BADF,GAAG;sBAAQ,MAAM;;uBACpB,KAAK;;;;;0BADF,GAAG;sBAAQ,MAAM;;;0BAAjB,GAAG;sBAAQ,MAAM;;;0BAAjB,GAAG;sBAAQ,MAAM;;uBACpB,KAAK;;;0BADF,GAAG;sBAAQ,MAAM;;uBACpB,KAAK;;;wCAMyB,KAAK;;;;;IAuBhD,eAAe,CAAC,MAAM,GAAE,SAAgB,EAAE,KAAK,CAAC,EAAE,GAAG;IAWrD,eAAe,CAAC,MAAM,GAAE,SAAgB,EAAE,WAAW,SAAiB;IAuBtE,GAAG,EAAE,MAAM,CAAA;IACX,MAAM;IAGN,gBAAgB,EAAE,CAAC,IAAI,CAAC,EAAE,SAAS,KAAK,IAAI,CAAA;IAE5C;;;OAGG;IACH,MAAM,CAAC,CAAC,KAAK,EAAE,KAAK,CAAC,iBAAiB,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,OAAO,GAAG,SAAS,GAAG,YAAY;IAE1F,aAAa,EAAE,OAAO,CAAA;IACtB,aAAa;IAMb,mBAAmB,IAAI,WAAW,GAAG,UAAU;IAI/C,mDAAmD;IACnD,GAAG,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC,KAAK,CAAC;IA2B9B,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAItC,2EAA2E;IAC3E,WAAW,EAAE,OAAO,CAAA;IACpB,YAAY,0BAGX;IACD,cAAc;IAWd,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM;IAQvC,mBAAmB,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,OAAO;IAWhD,MAAM,CAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM;CAM9C;AAED,OAAO,EAAE,SAAS,IAAI,IAAI,EAAE,CAAA"}
@@ -1,5 +1,5 @@
1
1
  import { FEAASBase } from './FEAASBase.js';
2
- export declare function FEAASComponentsProps(element?: FEAASBase): {
2
+ export declare function FEAASComponentsProps(element: FEAASBase): {
3
3
  data: any;
4
4
  cdn: string;
5
5
  library: string;
@@ -1 +1 @@
1
- {"version":3,"file":"FEAASComponent.d.ts","sourceRoot":"","sources":["../../src/components/FEAASComponent.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAE1C,wBAAgB,oBAAoB,CAAC,OAAO,GAAE,SAAgB;;;;;;;;;;;;;;EA6B7D;AACD,MAAM,MAAM,oBAAoB,GAAG,UAAU,CAAC,OAAO,oBAAoB,CAAC,CAAA;AAC1E,qBAAa,cAAe,SAAQ,SAAS,CAAC,oBAAoB,EAAE,MAAM,CAAC;IACzE,MAAM,CAAC,kBAAkB,WAYxB;IAED,YAAY;;;;;;;;;;;;;;OAOsB;IAElC,YAAY,EAAE,OAAO,CAAA;IACrB,OAAO,CAAC,IAAI,EAAE,GAAG;IAIjB,QAAQ;;;;;;;;;;;;;;;IAIR,wBAAwB,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI;IAUhF,SAAS,IAAI,GAAG;;IAahB,IAAI;IASJ,WAAW;IAaX,aAAa;IAMb,MAAM,SAAU,MAAM,UAGrB;IAEK,IAAI;IAsBV,MAAM;CAYP;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,GAAG,CAAC;QACZ,UAAU,iBAAiB;YACzB,iBAAiB,EAAE;gBACjB,IAAI,CAAC,EAAE,GAAG,CAAA;gBACV,QAAQ,CAAC,EAAE,MAAM,CAAA;gBACjB,QAAQ,CAAC,EAAE,MAAM,CAAA;gBACjB,QAAQ,CAAC,EAAE,OAAO,CAAA;gBAClB,QAAQ,CAAC,EAAE,GAAG,CAAA;gBACd,uBAAuB,CAAC,EAAE;oBAAE,MAAM,EAAE,MAAM,CAAA;iBAAE,CAAA;gBAC5C,eAAe,CAAC,EAAE,MAAM,CAAA;gBACxB,iBAAiB,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,EAAE,CAAA;aAC1C,GAAG,CACA;gBACE,kCAAkC;gBAClC,QAAQ,CAAC,EAAE,MAAM,CAAA;gBACjB,GAAG,CAAC,EAAE,MAAM,CAAA;gBACZ,OAAO,EAAE,MAAM,CAAA;gBACf,SAAS,EAAE,MAAM,CAAA;gBACjB,OAAO,CAAC,EAAE,MAAM,CAAA;gBAChB,QAAQ,CAAC,EAAE,oBAAoB,CAAC,UAAU,CAAC,CAAA;aAC5C,GACD;gBAAE,GAAG,EAAE,MAAM,CAAA;aAAE,GACf;gBAAE,QAAQ,EAAE,MAAM,CAAA;aAAE,CACvB,CAAA;SACF;KACF;CACF;AAGD,OAAO,EAAE,cAAc,IAAI,SAAS,EAAE,oBAAoB,IAAI,cAAc,EAAE,CAAA"}
1
+ {"version":3,"file":"FEAASComponent.d.ts","sourceRoot":"","sources":["../../src/components/FEAASComponent.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAE1C,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,SAAS;;;;;;;;;;;;;;EA6BtD;AACD,MAAM,MAAM,oBAAoB,GAAG,UAAU,CAAC,OAAO,oBAAoB,CAAC,CAAA;AAC1E,qBAAa,cAAe,SAAQ,SAAS,CAAC,oBAAoB,EAAE,MAAM,CAAC;IACzE,MAAM,CAAC,kBAAkB,WAYxB;IAED,YAAY;;;;;;;;;;;;;;OAOsB;IAElC,YAAY,EAAE,OAAO,CAAA;IACrB,OAAO,CAAC,IAAI,EAAE,GAAG;IAIjB,QAAQ;;;;;;;;;;;;;;;IAIR,wBAAwB,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI;IAUhF,SAAS,IAAI,GAAG;;IAahB,IAAI;IASJ,WAAW;IAaX,aAAa;IAMb,MAAM,SAAU,MAAM,UAGrB;IAEK,IAAI;IAsBV,MAAM;CAYP;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,GAAG,CAAC;QACZ,UAAU,iBAAiB;YACzB,iBAAiB,EAAE;gBACjB,IAAI,CAAC,EAAE,GAAG,CAAA;gBACV,QAAQ,CAAC,EAAE,MAAM,CAAA;gBACjB,QAAQ,CAAC,EAAE,MAAM,CAAA;gBACjB,QAAQ,CAAC,EAAE,OAAO,CAAA;gBAClB,QAAQ,CAAC,EAAE,GAAG,CAAA;gBACd,uBAAuB,CAAC,EAAE;oBAAE,MAAM,EAAE,MAAM,CAAA;iBAAE,CAAA;gBAC5C,eAAe,CAAC,EAAE,MAAM,CAAA;gBACxB,iBAAiB,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,EAAE,CAAA;aAC1C,GAAG,CACA;gBACE,kCAAkC;gBAClC,QAAQ,CAAC,EAAE,MAAM,CAAA;gBACjB,GAAG,CAAC,EAAE,MAAM,CAAA;gBACZ,OAAO,EAAE,MAAM,CAAA;gBACf,SAAS,EAAE,MAAM,CAAA;gBACjB,OAAO,CAAC,EAAE,MAAM,CAAA;gBAChB,QAAQ,CAAC,EAAE,oBAAoB,CAAC,UAAU,CAAC,CAAA;aAC5C,GACD;gBAAE,GAAG,EAAE,MAAM,CAAA;aAAE,GACf;gBAAE,QAAQ,EAAE,MAAM,CAAA;aAAE,CACvB,CAAA;SACF;KACF;CACF;AAGD,OAAO,EAAE,cAAc,IAAI,SAAS,EAAE,oBAAoB,IAAI,cAAc,EAAE,CAAA"}
@@ -1,5 +1,5 @@
1
1
  import { FEAASBase } from './FEAASBase.js';
2
- export declare function FEAASLoaderProps(element?: HTMLElement): {
2
+ export declare function FEAASLoaderProps(element: HTMLElement): {
3
3
  opacity: number;
4
4
  hidden: boolean;
5
5
  };
@@ -1 +1 @@
1
- {"version":3,"file":"FEAASLoader.d.ts","sourceRoot":"","sources":["../../src/components/FEAASLoader.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAE1C,wBAAgB,gBAAgB,CAAC,OAAO,GAAE,WAAkB;;;EAK3D;AACD,KAAK,gBAAgB,GAAG,UAAU,CAAC,OAAO,gBAAgB,CAAC,CAAA;AAE3D,qBAAa,WAAY,SAAQ,SAAS,CAAC,gBAAgB,EAAE,MAAM,CAAC;IAClE,UAAU,EAAE,gBAAgB,CAAA;IAC5B,MAAM,EAAE,cAAc,CAAA;IAEtB,QAAQ;;;;IAIR,YAAY;;;OAEkB;IAE9B,MAAM,CAAC,kBAAkB,WAAwB;IAEjD,wBAAwB,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI;IAgBhF,iBAAiB;IA6EjB,MAAM;CAGP;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,GAAG,CAAC;QACZ,UAAU,iBAAiB;YACzB,cAAc,EAAE,GAAG,CAAA;SACpB;KACF;CACF;AAGD,OAAO,EAAE,WAAW,IAAI,MAAM,EAAE,CAAA"}
1
+ {"version":3,"file":"FEAASLoader.d.ts","sourceRoot":"","sources":["../../src/components/FEAASLoader.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAE1C,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,WAAW;;;EAKpD;AACD,KAAK,gBAAgB,GAAG,UAAU,CAAC,OAAO,gBAAgB,CAAC,CAAA;AAE3D,qBAAa,WAAY,SAAQ,SAAS,CAAC,gBAAgB,EAAE,MAAM,CAAC;IAClE,UAAU,EAAE,gBAAgB,CAAA;IAC5B,MAAM,EAAE,cAAc,CAAA;IAEtB,QAAQ;;;;IAIR,YAAY;;;OAEkB;IAE9B,MAAM,CAAC,kBAAkB,WAAwB;IAEjD,wBAAwB,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI;IAgBhF,iBAAiB;IA6EjB,MAAM;CAGP;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,GAAG,CAAC;QACZ,UAAU,iBAAiB;YACzB,cAAc,EAAE,GAAG,CAAA;SACpB;KACF;CACF;AAGD,OAAO,EAAE,WAAW,IAAI,MAAM,EAAE,CAAA"}
@@ -1,6 +1,6 @@
1
1
  import { FEAASCDNStylesheetParams } from '../cdn.js';
2
2
  import { FEAASBase } from './FEAASBase.js';
3
- export declare function FEAASStylesheetProps(element?: FEAASBase): FEAASCDNStylesheetParams;
3
+ export declare function FEAASStylesheetProps(element: FEAASBase): FEAASCDNStylesheetParams;
4
4
  export type FEAASStylesheetProps = ReturnType<typeof FEAASStylesheetProps>;
5
5
  export declare class FEAASStylesheet extends FEAASBase<FEAASStylesheetProps, string> {
6
6
  getProps(): FEAASCDNStylesheetParams;
@@ -1 +1 @@
1
- {"version":3,"file":"FEAASStylesheet.d.ts","sourceRoot":"","sources":["../../src/components/FEAASStylesheet.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAmB,wBAAwB,EAAyB,MAAM,WAAW,CAAA;AAE5F,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAE1C,wBAAgB,oBAAoB,CAAC,OAAO,GAAE,SAAgB,4BAU7D;AACD,MAAM,MAAM,oBAAoB,GAAG,UAAU,CAAC,OAAO,oBAAoB,CAAC,CAAA;AAE1E,qBAAa,eAAgB,SAAQ,SAAS,CAAC,oBAAoB,EAAE,MAAM,CAAC;IAC1E,QAAQ;IAIR,aAAa,IAAI,OAAO;IAIxB,MAAM,SAAU,MAAM,UAGrB;IAED,IAAI;CAGL;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,GAAG,CAAC;QACZ,UAAU,iBAAiB;YACzB,kBAAkB,EAAE,OAAO,CAAC,oBAAoB,CAAC,GAAG;gBAAE,QAAQ,CAAC,EAAE,GAAG,CAAA;aAAE,CAAA;SACvE;KACF;CACF;AAED,OAAO,EAAE,eAAe,IAAI,UAAU,EAAE,CAAA"}
1
+ {"version":3,"file":"FEAASStylesheet.d.ts","sourceRoot":"","sources":["../../src/components/FEAASStylesheet.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAmB,wBAAwB,EAAyB,MAAM,WAAW,CAAA;AAE5F,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAE1C,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,SAAS,4BAUtD;AACD,MAAM,MAAM,oBAAoB,GAAG,UAAU,CAAC,OAAO,oBAAoB,CAAC,CAAA;AAE1E,qBAAa,eAAgB,SAAQ,SAAS,CAAC,oBAAoB,EAAE,MAAM,CAAC;IAC1E,QAAQ;IAIR,aAAa,IAAI,OAAO;IAIxB,MAAM,SAAU,MAAM,UAGrB;IAED,IAAI;CAGL;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,GAAG,CAAC;QACZ,UAAU,iBAAiB;YACzB,kBAAkB,EAAE,OAAO,CAAC,oBAAoB,CAAC,GAAG;gBAAE,QAAQ,CAAC,EAAE,GAAG,CAAA;aAAE,CAAA;SACvE;KACF;CACF;AAED,OAAO,EAAE,eAAe,IAAI,UAAU,EAAE,CAAA"}
@@ -1,7 +1,5 @@
1
1
  import { JSONPath } from 'jsonpath-plus';
2
2
  export type Datascopes = Record<string, any> | any[];
3
- export declare function cleanCollectionBit(path: string): string;
4
- export declare function normalizeCollectionScope(path: string): string;
5
3
  export declare function queryScopes(scopes: any, datapath: string, singleValue?: boolean, json?: any): any;
6
4
  export type CH1Node = {
7
5
  type: string;
@@ -1 +1 @@
1
- {"version":3,"file":"data.d.ts","sourceRoot":"","sources":["../../src/dom/data.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AAExC,MAAM,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,GAAG,EAAE,CAAA;AAEpD,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,UAE9C;AAED,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,MAAM,UAEpD;AAED,wBAAgB,WAAW,CAAC,MAAM,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,EAAE,WAAW,UAAQ,EAAE,IAAI,GAAE,GAAY,OAsDjG;AAED,MAAM,MAAM,OAAO,GACf;IACE,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,OAAO,CAAC,EAAE,OAAO,EAAE,CAAA;IACnB,KAAK,CAAC,EAAE,OAAO,EAAE,CAAA;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;CAC5B,GACD,OAAO,EAAE,CAAA;AAQb,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,CAqCtF;AAED,OAAO,EAAE,QAAQ,EAAE,CAAA"}
1
+ {"version":3,"file":"data.d.ts","sourceRoot":"","sources":["../../src/dom/data.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AAExC,MAAM,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,GAAG,EAAE,CAAA;AAEpD,wBAAgB,WAAW,CAAC,MAAM,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,EAAE,WAAW,UAAQ,EAAE,IAAI,GAAE,GAAY,OAsDjG;AAED,MAAM,MAAM,OAAO,GACf;IACE,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,OAAO,CAAC,EAAE,OAAO,EAAE,CAAA;IACnB,KAAK,CAAC,EAAE,OAAO,EAAE,CAAA;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;CAC5B,GACD,OAAO,EAAE,CAAA;AAQb,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,CAqCtF;AAED,OAAO,EAAE,QAAQ,EAAE,CAAA"}
@@ -19,9 +19,11 @@ declare class HTMLNode {
19
19
  removeAttribute(attrName: string): void;
20
20
  appendChild(newNode: HTMLNode): void;
21
21
  get tagName(): string;
22
+ get localName(): string;
22
23
  get innerHTML(): string;
23
24
  set innerHTML(html: string);
24
25
  get outerHTML(): string;
26
+ get children(): HTMLNode[];
25
27
  closest(selector: string): HTMLNode | null;
26
28
  querySelectorAll(selector: string): HTMLNode[];
27
29
  querySelector(selector: string): HTMLNode;
@@ -1 +1 @@
1
- {"version":3,"file":"html.d.ts","sourceRoot":"","sources":["../../src/dom/html.ts"],"names":[],"mappings":"AAAA,0EAA0E;AAE1E,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAA;AACtC,OAAO,EAAE,mBAAmB,EAAoB,MAAM,gBAAgB,CAAA;AAEtE,KAAK,aAAa,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAA;AAEpD,cAAM,QAAQ;IACZ,QAAQ,EAAE,MAAM,CAAA;IAChB,QAAQ,EAAE,MAAM,CAAA;IAChB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,UAAU,EAAE,aAAa,EAAE,CAAA;IAC3B,UAAU,EAAE,QAAQ,EAAE,CAAA;IACtB,UAAU,CAAC,EAAE,QAAQ,CAAA;gBAET,QAAQ,EAAE,MAAM,EAAE,QAAQ,GAAE,MAAU,EAAE,WAAW,CAAC,EAAE,MAAM;IAQxE,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM;IASxC,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAK9C,YAAY,CAAC,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,QAAQ,GAAG,IAAI;IAY9D,eAAe,CAAC,QAAQ,EAAE,MAAM;IAOhC,WAAW,CAAC,OAAO,EAAE,QAAQ;IAK7B,IAAI,OAAO,WAEV;IACD,IAAI,SAAS,IAGO,MAAM,CADzB;IACD,IAAI,SAAS,CAAC,IAAI,EAAE,MAAM,EAEzB;IACD,IAAI,SAAS,WAEZ;IAED,OAAO,CAAC,QAAQ,EAAE,MAAM,GAAG,QAAQ,GAAG,IAAI;IAc1C,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,QAAQ,EAAE;IAwB9C,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,QAAQ;IAIzC,OAAO,CAAC,WAAW;IAgBnB,WAAW,CAAC,KAAK,EAAE,QAAQ,GAAG,QAAQ;IAQtC,IAAI,eAAe,IAAI,QAAQ,GAAG,IAAI,CAErC;IAED,IAAI,WAAW,IAAI,QAAQ,GAAG,IAAI,CAEjC;IAED,IAAI,sBAAsB,IAAI,QAAQ,GAAG,IAAI,CAE5C;IAED,IAAI,kBAAkB,IAAI,QAAQ,GAAG,IAAI,CAExC;IACD,SAAS,CAAC,IAAI,GAAE,OAAe,GAAG,QAAQ;IAiB1C,IAAI,aAAa,aAEhB;IAED,aAAa;4BACS,MAAM,GAAG,QAAQ;MAGtC;CACF;AA+CD,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,QAAQ,EAAE,CAgDlD;AAED,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAOhD;AAWD,wBAAgB,aAAa,CAAC,KAAK,EAAE,QAAQ,EAAE,GAAG,MAAM,CAmBvD;AAED,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,UAAU,EAAE,MAAM,CAAC,EAAE,mBAAmB,UAIlG"}
1
+ {"version":3,"file":"html.d.ts","sourceRoot":"","sources":["../../src/dom/html.ts"],"names":[],"mappings":"AAAA,0EAA0E;AAE1E,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAA;AACtC,OAAO,EAAE,mBAAmB,EAAoB,MAAM,gBAAgB,CAAA;AAEtE,KAAK,aAAa,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAA;AAEpD,cAAM,QAAQ;IACZ,QAAQ,EAAE,MAAM,CAAA;IAChB,QAAQ,EAAE,MAAM,CAAA;IAChB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,UAAU,EAAE,aAAa,EAAE,CAAA;IAC3B,UAAU,EAAE,QAAQ,EAAE,CAAA;IACtB,UAAU,CAAC,EAAE,QAAQ,CAAA;gBAET,QAAQ,EAAE,MAAM,EAAE,QAAQ,GAAE,MAAU,EAAE,WAAW,CAAC,EAAE,MAAM;IAQxE,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM;IASxC,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAK9C,YAAY,CAAC,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,QAAQ,GAAG,IAAI;IAY9D,eAAe,CAAC,QAAQ,EAAE,MAAM;IAOhC,WAAW,CAAC,OAAO,EAAE,QAAQ;IAK7B,IAAI,OAAO,WAEV;IAED,IAAI,SAAS,WAEZ;IAED,IAAI,SAAS,IAGO,MAAM,CADzB;IACD,IAAI,SAAS,CAAC,IAAI,EAAE,MAAM,EAEzB;IACD,IAAI,SAAS,WAEZ;IACD,IAAI,QAAQ,eAEX;IAED,OAAO,CAAC,QAAQ,EAAE,MAAM,GAAG,QAAQ,GAAG,IAAI;IAc1C,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,QAAQ,EAAE;IAwB9C,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,QAAQ;IAIzC,OAAO,CAAC,WAAW;IAgBnB,WAAW,CAAC,KAAK,EAAE,QAAQ,GAAG,QAAQ;IAQtC,IAAI,eAAe,IAAI,QAAQ,GAAG,IAAI,CAErC;IAED,IAAI,WAAW,IAAI,QAAQ,GAAG,IAAI,CAEjC;IAED,IAAI,sBAAsB,IAAI,QAAQ,GAAG,IAAI,CAE5C;IAED,IAAI,kBAAkB,IAAI,QAAQ,GAAG,IAAI,CAExC;IACD,SAAS,CAAC,IAAI,GAAE,OAAe,GAAG,QAAQ;IAiB1C,IAAI,aAAa,aAEhB;IAED,aAAa;4BACS,MAAM,GAAG,QAAQ;MAGtC;CACF;AA+CD,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,QAAQ,EAAE,CAgDlD;AAED,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAOhD;AAWD,wBAAgB,aAAa,CAAC,KAAK,EAAE,QAAQ,EAAE,GAAG,MAAM,CAmBvD;AAED,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,UAAU,EAAE,MAAM,CAAC,EAAE,mBAAmB,UAIlG"}
@@ -1 +1 @@
1
- {"version":3,"file":"rendering.d.ts","sourceRoot":"","sources":["../../src/dom/rendering.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,WAAW,CAAA;AAClD,OAAO,EAAE,UAAU,EAA+D,MAAM,WAAW,CAAA;AAInG,MAAM,WAAW,mBAAmB;IAClC,eAAe,CAAC,EAAE,CAAC,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,MAAM,CAAA;IAC/E,WAAW,CAAC,EAAE,CAAC,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,GAAG,KAAK,GAAG,CAAA;IACtD,YAAY,CAAC,EAAE,CAAC,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,KAAK,GAAG,CAAA;IAC1E,YAAY,CAAC,EAAE,CAAC,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,GAAG,KAAK,OAAO,CAAA;IAC5D,QAAQ,CAAC,EAAE,CAAC,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,GAAG,KAAK,IAAI,CAAA;CACrD;AAED,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,MAAM,CAAA;CACjB;AAED,MAAM,MAAM,mBAAmB,CAAC,CAAC,GAAG,UAAU,IAAI,OAAO,CAAC,gBAAgB,CAAC,GAAG;IAC5E,IAAI,CAAC,EAAE,CAAC,CAAA;CACT,GAAG,CAAC,gBAAgB,GAAG,sBAAsB,CAAC,GAC7C,mBAAmB,CAAA;AAsDrB,wBAAgB,eAAe,CAAC,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,CAAC,EAAE,mBAAmB,QAgEhH;AAID,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE,WAAW,GAAG,gBAAgB,EACrC,UAAU,CAAC,EAAE,GAAG,EAChB,MAAM,CAAC,EAAE,mBAAmB,EAC5B,QAAQ,CAAC,EAAE,OAAO,eA0CnB;AAKD,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,UAAU,EAAE,MAAM,CAAC,EAAE,mBAAmB,eAcpH;AAED,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,UAAU,EAAE,MAAM,CAAC,EAAE,mBAAmB,EAAE,OAAO,UAAQ,UAWnH"}
1
+ {"version":3,"file":"rendering.d.ts","sourceRoot":"","sources":["../../src/dom/rendering.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,WAAW,CAAA;AAClD,OAAO,EAAE,UAAU,EAAqC,MAAM,WAAW,CAAA;AAKzE,MAAM,WAAW,mBAAmB;IAClC,eAAe,CAAC,EAAE,CAAC,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,MAAM,CAAA;IAC/E,WAAW,CAAC,EAAE,CAAC,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,GAAG,KAAK,GAAG,CAAA;IACtD,YAAY,CAAC,EAAE,CAAC,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,KAAK,GAAG,CAAA;IAC1E,YAAY,CAAC,EAAE,CAAC,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,GAAG,KAAK,OAAO,CAAA;IAC5D,QAAQ,CAAC,EAAE,CAAC,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,GAAG,KAAK,IAAI,CAAA;CACrD;AAED,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,MAAM,CAAA;CACjB;AAED,MAAM,MAAM,mBAAmB,CAAC,CAAC,GAAG,UAAU,IAAI,OAAO,CAAC,gBAAgB,CAAC,GAAG;IAC5E,IAAI,CAAC,EAAE,CAAC,CAAA;CACT,GAAG,CAAC,gBAAgB,GAAG,sBAAsB,CAAC,GAC7C,mBAAmB,CAAA;AAsDrB,wBAAgB,eAAe,CAAC,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,CAAC,EAAE,mBAAmB,QAoEhH;AAID,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE,WAAW,GAAG,gBAAgB,EACrC,UAAU,CAAC,EAAE,GAAG,EAChB,MAAM,CAAC,EAAE,mBAAmB,EAC5B,QAAQ,CAAC,EAAE,OAAO,eA0CnB;AAKD,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,UAAU,EAAE,MAAM,CAAC,EAAE,mBAAmB,eAcpH;AAED,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,UAAU,EAAE,MAAM,CAAC,EAAE,mBAAmB,EAAE,OAAO,UAAQ,UAWnH"}
@@ -0,0 +1,82 @@
1
+ import type { VersionModel, ComponentModel } from '@sitecore-feaas/sdk';
2
+ export type Callback = (image: HTMLImageElement, isCached: boolean) => void;
3
+ export declare const convertBase64toBlob: (base64: string) => Promise<Blob>;
4
+ /** Parse fetch response as blob and turn it into HTMLImageElement off thread */
5
+ export declare const responseToImage: (response: Response) => Promise<HTMLImageElement>;
6
+ /**
7
+ * Retrieves the version of a given component that best fits a specific display width.
8
+ *
9
+ * The function ensures that the version data for the component is available and selects the one that is most suitable
10
+ * for a display width of 800 pixels.
11
+ *
12
+ * @param {ComponentModel} component - The component for which the version needs to be obtained.
13
+ * @returns {Promise<VersionModel>} - A promise that resolves to the most suitable version for a display width of 800
14
+ * pixels.
15
+ */
16
+ export declare function getVersionForThumbnail(component: ComponentModel): Promise<VersionModel>;
17
+ /**
18
+ * Ensures an up-to-date thumbnail for a specific component and version.
19
+ *
20
+ * This operation initiates thumbnail load and, if that fails or if file is out of date, a new thumbnail is generated.
21
+ * It can work with a callback, which is designed to potentially fire twice for enhancing user experience. This dual
22
+ * firing allows for an immediate display of a possibly stale cached image while downloading or generating new version
23
+ * in the background.
24
+ *
25
+ * 1. The first call can happen with the stale cached or outdated image.
26
+ * 2. The second call occurs with the up-to-date loaded or freshly generated generated image.
27
+ *
28
+ * @param {ComponentModel} component - Relevant component.
29
+ * @param {VersionModel} [version] - Relevant version (optional, falls back to responsive).
30
+ * @param {Callback} [callback] - Callback to handle the loaded or generated image (optional).
31
+ * @returns {Promise<HTMLImageElement | null>} - The final thumbnail image (either loaded or freshly generated).
32
+ */
33
+ export declare function get(component: ComponentModel, version?: VersionModel, callback?: Callback): Promise<HTMLImageElement>;
34
+ /**
35
+ * Retrieves the thumbnail image for a given component/version combination, with a responsive default if version is not
36
+ * provided.
37
+ *
38
+ * The resulting HTML <img> element will have `width`, `height`, and `src` properties ready for use. Although it can
39
+ * operate as a regular promise that resolves when the thumbnail is loaded, it also supports a callback for an enhanced
40
+ * user experience. This callback may be invoked twice, depending on the state of the cache:
41
+ *
42
+ * 1. The first call occurs if the image was previously cached by the browser, but the cache is stale.
43
+ * 2. The second call happens when the image is updated from a fresh download. By this design, the user gets to see a
44
+ * cached image immediately while the updated image is being downloaded in the background.
45
+ *
46
+ * If the version of a component is known to be newer than remote file, the function will throw `InvalidResponse` error.
47
+ * As a way to handle that error, the `generate` function may be used to produce new thumbnail (@see render).
48
+ *
49
+ * @param {ComponentModel} component - The component to load a thumbnail for.
50
+ * @param {VersionModel} [version] - The version of the component to load a thumbnail for. If not provided, a version
51
+ * suitable for a responsive component is selected.
52
+ * @param {Callback} [callback] - A callback to handle the loaded image. This callback may be invoked twice for the
53
+ * reasons described above.
54
+ * @returns {Promise<HTMLImageElement>} - The thumbnail image for the component/version combination.
55
+ */
56
+ export declare function load(component: ComponentModel, version?: VersionModel, callback?: Callback): Promise<HTMLImageElement>;
57
+ /**
58
+ * Creates a thumbnail image for a given component and version.
59
+ *
60
+ * First, it determines the appropriate version to use. If not provided, it attempts to fetch one suitable for
61
+ * thumbnail. It then leverages `render` to generate an image with provided parameters and finally, if the component
62
+ * isn't new, uploads the generated as a Blob onto cdn for future retrieval.
63
+ *
64
+ * @param {ComponentModel} component - Component instance.
65
+ * @param {VersionModel} [version] - Version instance.
66
+ * @returns {Promise<HTMLImageElement | null>} Thumbnail image or null if generation isn't possible.
67
+ */
68
+ export declare function generate(component: ComponentModel, version?: VersionModel): Promise<HTMLImageElement>;
69
+ /**
70
+ * Uploads a thumbnail Blob to a CDN, enabling it for future retrieval.
71
+ *
72
+ * It constructs a URL based on component and version information, if available. The thumbnail's blob is uploaded with
73
+ * several metadata points, including identifiers and timestamps. Upon successful upload, it sends a no-cache fetch
74
+ * request to the constructed URL to bust the cache.
75
+ *
76
+ * @param {ComponentModel} component - Component instance.
77
+ * @param {VersionModel} version - Version instance.
78
+ * @param {Blob} blob - Blob instance to upload.
79
+ * @returns {Promise<string>} URL of the uploaded Blob.
80
+ */
81
+ export declare function upload(component: ComponentModel, version: VersionModel, blob: Blob): Promise<string>;
82
+ //# sourceMappingURL=thumbnail.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"thumbnail.d.ts","sourceRoot":"","sources":["../../src/dom/thumbnail.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAc,YAAY,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AAInF,MAAM,MAAM,QAAQ,GAAG,CAAC,KAAK,EAAE,gBAAgB,EAAE,QAAQ,EAAE,OAAO,KAAK,IAAI,CAAA;AAE3E,eAAO,MAAM,mBAAmB,WAAY,MAAM,kBAA4C,CAAA;AAE9F,gFAAgF;AAChF,eAAO,MAAM,eAAe,aAAc,QAAQ,KAAG,QAAQ,gBAAgB,CAUzE,CAAA;AAEJ;;;;;;;;;GASG;AACH,wBAAsB,sBAAsB,CAAC,SAAS,EAAE,cAAc,GAAG,OAAO,CAAC,YAAY,CAAC,CAG7F;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAsB,GAAG,CAAC,SAAS,EAAE,cAAc,EAAE,OAAO,CAAC,EAAE,YAAY,EAAE,QAAQ,CAAC,EAAE,QAAQ,6BAqB/F;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAsB,IAAI,CACxB,SAAS,EAAE,cAAc,EACzB,OAAO,CAAC,EAAE,YAAY,EACtB,QAAQ,CAAC,EAAE,QAAQ,GAClB,OAAO,CAAC,gBAAgB,CAAC,CAmC3B;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,QAAQ,CAAC,SAAS,EAAE,cAAc,EAAE,OAAO,CAAC,EAAE,YAAY,6BAkB/E;AAkFD;;;;;;;;;;;GAWG;AACH,wBAAsB,MAAM,CAAC,SAAS,EAAE,cAAc,EAAE,OAAO,EAAE,YAAY,EAAE,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,CA+B1G"}
package/types/fetch.d.ts CHANGED
@@ -12,12 +12,12 @@ import { ControlledPromise } from './utils/promise.js';
12
12
  * errors will not be caught. Function throws when unable to fetch valid response.
13
13
  */
14
14
  declare const phases: readonly ["initial", "check", "updated"];
15
- export type ValidatableRequestPhase = typeof phases[number];
15
+ export type ValidatableRequestPhase = (typeof phases)[number];
16
16
  export type FetchCache = Record<string, FetchCacheRequest>;
17
17
  export interface ValidatableRequest {
18
18
  url: Parameters<typeof fetch>[0];
19
19
  options?: Parameters<typeof fetch>[1];
20
- validator?: (resposne: Response) => boolean;
20
+ validator?: (resposne: Response, isCached: boolean) => boolean;
21
21
  callback?: (response: Response, status: ValidatableRequestPhase, isCached: boolean) => any;
22
22
  isCached?: boolean;
23
23
  response?: Response;
@@ -34,12 +34,14 @@ export declare var fetchCache: Record<string, FetchCacheRequest>;
34
34
  export declare function clearFetchCache(): void;
35
35
  export declare function fetchAndRevalidate(url: ValidatableRequest['url'], options?: ValidatableRequest['options'], validator?: ValidatableRequest['validator'], callback?: ValidatableRequest['callback'], cache?: FetchCache): Promise<Response>;
36
36
  export declare function getFetchCache(url: Parameters<typeof fetch>[0], dontCreate?: boolean): FetchCacheRequest;
37
+ export declare class InvalidResponse extends Error {
38
+ }
37
39
  export declare function fetchWithCacheAwareness({ url, options, validator, callback, cache }: ValidatableRequest, phase?: ValidatableRequestPhase): Promise<{
38
40
  url: RequestInfo | URL;
39
41
  options: RequestInit;
40
42
  isCached: boolean;
41
43
  response: Response;
42
- validator: (resposne: Response) => boolean;
44
+ validator: (resposne: Response, isCached: boolean) => boolean;
43
45
  callback: (response: Response, status: "initial" | "check" | "updated", isCached: boolean) => any;
44
46
  cache: FetchCache;
45
47
  }>;
@@ -49,7 +51,7 @@ export declare function fetchBypassingCache(request: ValidatableRequest): Promis
49
51
  options: RequestInit;
50
52
  isCached: boolean;
51
53
  response: Response;
52
- validator: (resposne: Response) => boolean;
54
+ validator: (resposne: Response, isCached: boolean) => boolean;
53
55
  callback: (response: Response, status: "initial" | "check" | "updated", isCached: boolean) => any;
54
56
  cache: FetchCache;
55
57
  }>;
@@ -1 +1 @@
1
- {"version":3,"file":"fetch.d.ts","sourceRoot":"","sources":["../src/fetch.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAA;AAEtD;;;;;;;;;;;GAWG;AACH,QAAA,MAAM,MAAM,0CAA2C,CAAA;AACvD,MAAM,MAAM,uBAAuB,GAAG,OAAO,MAAM,CAAC,MAAM,CAAC,CAAA;AAC3D,MAAM,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAA;AAC1D,MAAM,WAAW,kBAAkB;IACjC,GAAG,EAAE,UAAU,CAAC,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;IAChC,OAAO,CAAC,EAAE,UAAU,CAAC,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;IACrC,SAAS,CAAC,EAAE,CAAC,QAAQ,EAAE,QAAQ,KAAK,OAAO,CAAA;IAC3C,QAAQ,CAAC,EAAE,CAAC,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,uBAAuB,EAAE,QAAQ,EAAE,OAAO,KAAK,GAAG,CAAA;IAC1F,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,QAAQ,CAAC,EAAE,QAAQ,CAAA;IACnB,KAAK,CAAC,EAAE,UAAU,CAAA;CACnB;AAED,MAAM,MAAM,iBAAiB,GAAG;IAC9B,KAAK,EAAE,uBAAuB,CAAA;IAC9B,OAAO,EAAE,iBAAiB,CAAC,QAAQ,CAAC,CAAA;IACpC,KAAK,EAAE,iBAAiB,CAAC,QAAQ,CAAC,CAAA;IAClC,OAAO,EAAE,iBAAiB,CAAC,QAAQ,CAAC,CAAA;IACpC,KAAK,EAAE,iBAAiB,CAAC,QAAQ,CAAC,CAAA;CACnC,CAAA;AAED,eAAO,IAAI,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,iBAAiB,CAAM,CAAA;AAC7D,wBAAgB,eAAe,SAE9B;AAED,wBAAsB,kBAAkB,CACtC,GAAG,EAAE,kBAAkB,CAAC,KAAK,CAAC,EAC9B,OAAO,CAAC,EAAE,kBAAkB,CAAC,SAAS,CAAC,EACvC,SAAS,CAAC,EAAE,kBAAkB,CAAC,WAAW,CAAC,EAC3C,QAAQ,CAAC,EAAE,kBAAkB,CAAC,UAAU,CAAC,EACzC,KAAK,GAAE,UAAuB,qBAM/B;AAED,wBAAgB,aAAa,CAAC,GAAG,EAAE,UAAU,CAAC,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,UAAU,UAAQ,qBAajF;AAED,wBAAsB,uBAAuB,CAC3C,EAAE,GAAG,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE,kBAAkB,EAChE,KAAK,GAAE,uBAAmC;;;;;;;;GAmC3C;AAED,wBAAsB,oBAAoB,CACxC,OAAO,EAAE,kBAAkB,GAAG,QAAQ,CAAC,IAAI,CAAC,kBAAkB,EAAE,UAAU,CAAC,CAAC,gFA0B7E;AAED,wBAAsB,mBAAmB,CAAC,OAAO,EAAE,kBAAkB;;;;;;;;GAWpE"}
1
+ {"version":3,"file":"fetch.d.ts","sourceRoot":"","sources":["../src/fetch.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAA;AAEtD;;;;;;;;;;;GAWG;AACH,QAAA,MAAM,MAAM,0CAA2C,CAAA;AACvD,MAAM,MAAM,uBAAuB,GAAG,CAAC,OAAO,MAAM,CAAC,CAAC,MAAM,CAAC,CAAA;AAC7D,MAAM,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAA;AAC1D,MAAM,WAAW,kBAAkB;IACjC,GAAG,EAAE,UAAU,CAAC,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;IAChC,OAAO,CAAC,EAAE,UAAU,CAAC,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;IACrC,SAAS,CAAC,EAAE,CAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,KAAK,OAAO,CAAA;IAC9D,QAAQ,CAAC,EAAE,CAAC,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,uBAAuB,EAAE,QAAQ,EAAE,OAAO,KAAK,GAAG,CAAA;IAC1F,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,QAAQ,CAAC,EAAE,QAAQ,CAAA;IACnB,KAAK,CAAC,EAAE,UAAU,CAAA;CACnB;AAED,MAAM,MAAM,iBAAiB,GAAG;IAC9B,KAAK,EAAE,uBAAuB,CAAA;IAC9B,OAAO,EAAE,iBAAiB,CAAC,QAAQ,CAAC,CAAA;IACpC,KAAK,EAAE,iBAAiB,CAAC,QAAQ,CAAC,CAAA;IAClC,OAAO,EAAE,iBAAiB,CAAC,QAAQ,CAAC,CAAA;IACpC,KAAK,EAAE,iBAAiB,CAAC,QAAQ,CAAC,CAAA;CACnC,CAAA;AAED,eAAO,IAAI,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,iBAAiB,CAAM,CAAA;AAC7D,wBAAgB,eAAe,SAE9B;AAED,wBAAsB,kBAAkB,CACtC,GAAG,EAAE,kBAAkB,CAAC,KAAK,CAAC,EAC9B,OAAO,CAAC,EAAE,kBAAkB,CAAC,SAAS,CAAC,EACvC,SAAS,CAAC,EAAE,kBAAkB,CAAC,WAAW,CAAC,EAC3C,QAAQ,CAAC,EAAE,kBAAkB,CAAC,UAAU,CAAC,EACzC,KAAK,GAAE,UAAuB,qBAM/B;AAED,wBAAgB,aAAa,CAAC,GAAG,EAAE,UAAU,CAAC,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,UAAU,UAAQ,qBAajF;AAED,qBAAa,eAAgB,SAAQ,KAAK;CAAG;AAE7C,wBAAsB,uBAAuB,CAC3C,EAAE,GAAG,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE,kBAAkB,EAChE,KAAK,GAAE,uBAAmC;;;;;;;;GAmC3C;AAED,wBAAsB,oBAAoB,CACxC,OAAO,EAAE,kBAAkB,GAAG,QAAQ,CAAC,IAAI,CAAC,kBAAkB,EAAE,UAAU,CAAC,CAAC,gFA0B7E;AAED,wBAAsB,mBAAmB,CAAC,OAAO,EAAE,kBAAkB;;;;;;;;GAWpE"}
@@ -15,6 +15,8 @@ export * from './components/FEAASElement.js';
15
15
  export * from './components/FEAASComponent.js';
16
16
  export * from './components/FEAASLoader.js';
17
17
  export * from './components/FEAASStylesheet.js';
18
+ export * from './utils/datapath.js';
19
+ export * as Thumbnail from './dom/thumbnail.js';
18
20
  declare global {
19
21
  interface Window {
20
22
  FEAASLoading: Promise<any>;
@@ -1 +1 @@
1
- {"version":3,"file":"headless.d.ts","sourceRoot":"","sources":["../src/headless.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,YAAY,MAAM,8BAA8B,CAAA;AAEvD,cAAc,oBAAoB,CAAA;AAClC,cAAc,eAAe,CAAA;AAC7B,cAAc,kBAAkB,CAAA;AAChC,cAAc,qBAAqB,CAAA;AACnC,cAAc,oBAAoB,CAAA;AAClC,cAAc,YAAY,CAAA;AAC1B,cAAc,UAAU,CAAA;AACxB,cAAc,2BAA2B,CAAA;AACzC,cAAc,8BAA8B,CAAA;AAC5C,cAAc,gCAAgC,CAAA;AAC9C,cAAc,6BAA6B,CAAA;AAC3C,cAAc,iCAAiC,CAAA;AAE/C,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,MAAM;QACd,YAAY,EAAE,OAAO,CAAC,GAAG,CAAC,CAAA;QAC1B,YAAY,EAAE,OAAO,YAAY,CAAA;KAClC;CACF"}
1
+ {"version":3,"file":"headless.d.ts","sourceRoot":"","sources":["../src/headless.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,YAAY,MAAM,8BAA8B,CAAA;AAEvD,cAAc,oBAAoB,CAAA;AAClC,cAAc,eAAe,CAAA;AAC7B,cAAc,kBAAkB,CAAA;AAChC,cAAc,qBAAqB,CAAA;AACnC,cAAc,oBAAoB,CAAA;AAClC,cAAc,YAAY,CAAA;AAC1B,cAAc,UAAU,CAAA;AACxB,cAAc,2BAA2B,CAAA;AACzC,cAAc,8BAA8B,CAAA;AAC5C,cAAc,gCAAgC,CAAA;AAC9C,cAAc,6BAA6B,CAAA;AAC3C,cAAc,iCAAiC,CAAA;AAC/C,cAAc,qBAAqB,CAAA;AACnC,OAAO,KAAK,SAAS,MAAM,oBAAoB,CAAA;AAE/C,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,MAAM;QACd,YAAY,EAAE,OAAO,CAAC,GAAG,CAAC,CAAA;QAC1B,YAAY,EAAE,OAAO,YAAY,CAAA;KAClC;CACF"}