@sitecore-feaas/clientside 0.6.4 → 0.6.5

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 (71) hide show
  1. package/build/cdn.js.map +1 -1
  2. package/build/components/FEAASComponent.js +1 -2
  3. package/build/components/FEAASComponent.js.map +1 -1
  4. package/build/components/FEAASElement.js.map +1 -1
  5. package/build/components/FEAASLoader.js +1 -2
  6. package/build/components/FEAASLoader.js.map +1 -1
  7. package/build/components/FEAASReactElement.js +1 -2
  8. package/build/components/FEAASReactElement.js.map +1 -1
  9. package/build/components/FEAASStylesheet.js.map +1 -1
  10. package/build/dom/component.js.map +1 -1
  11. package/build/dom/html.js.map +1 -1
  12. package/build/dom/rendering.js.map +1 -1
  13. package/build/dom/scripts.js.map +1 -1
  14. package/build/dom/stylesheet.js.map +1 -1
  15. package/build/dom/thumbnail.js.map +1 -1
  16. package/build/fetch.js +6 -2
  17. package/build/fetch.js.map +1 -1
  18. package/build/headless.js.map +1 -1
  19. package/build/ui/FEAASContext.js +1 -2
  20. package/build/ui/FEAASContext.js.map +1 -1
  21. package/build/ui/FEAASEditor.js +1 -2
  22. package/build/ui/FEAASEditor.js.map +1 -1
  23. package/build/ui/FEAASExternal.js.map +1 -1
  24. package/build/ui/FEAASPicker.js +1 -2
  25. package/build/ui/FEAASPicker.js.map +1 -1
  26. package/build/ui/react.js.map +1 -1
  27. package/build/utils/data.js.map +1 -1
  28. package/build/utils/settings.js.map +1 -1
  29. package/dist/browser/headless.cjs +8 -9
  30. package/dist/browser/headless.cjs.map +4 -4
  31. package/dist/browser/headless.esm.js +8 -9
  32. package/dist/browser/headless.esm.js.map +1 -1
  33. package/dist/browser/index.cjs +10 -11
  34. package/dist/browser/index.cjs.map +4 -4
  35. package/dist/browser/index.esm.js +10 -11
  36. package/dist/browser/index.esm.js.map +1 -1
  37. package/dist/browser/react.cjs +11 -12
  38. package/dist/browser/react.cjs.map +4 -4
  39. package/dist/browser/react.esm.js +11 -12
  40. package/dist/browser/react.esm.js.map +1 -1
  41. package/dist/node/headless.cjs +8 -7
  42. package/dist/node/headless.cjs.map +4 -4
  43. package/dist/node/headless.esm.js +8 -7
  44. package/dist/node/headless.esm.js.map +4 -4
  45. package/dist/node/index.cjs +7 -6
  46. package/dist/node/index.cjs.map +4 -4
  47. package/dist/node/index.esm.js +7 -6
  48. package/dist/node/index.esm.js.map +4 -4
  49. package/dist/node/react.cjs +11 -10
  50. package/dist/node/react.cjs.map +4 -4
  51. package/dist/node/react.esm.js +11 -10
  52. package/dist/node/react.esm.js.map +4 -4
  53. package/headless.cjs +8 -7
  54. package/headless.cjs.map +4 -4
  55. package/headless.js +8 -7
  56. package/headless.js.map +4 -4
  57. package/package.json +3 -4
  58. package/react.cjs +11 -12
  59. package/react.cjs.map +4 -4
  60. package/react.js +11 -12
  61. package/react.js.map +4 -4
  62. package/src/fetch.ts +7 -2
  63. package/test/FEAASBase.test.tsx +4 -4
  64. package/test/FEAASComponent.react.test.tsx +1 -1
  65. package/test/FEAASComponent.test.tsx +1 -1
  66. package/test/FEAASExternal.test.tsx +29 -12
  67. package/test/FEAASStylesheet.test.tsx +1 -1
  68. package/test/fetch.ts +21 -5
  69. package/types/fetch.d.ts +1 -1
  70. package/types/fetch.d.ts.map +1 -1
  71. package/types/utils/settings.d.ts +5 -5
package/src/fetch.ts CHANGED
@@ -21,9 +21,14 @@ export type FetchCacheRequest = {
21
21
  final: ControlledPromise<Response>
22
22
  }
23
23
 
24
- export var fetchCache: Record<string, FetchCacheRequest> = {}
24
+ /** Prototype-free map so dynamic URL keys like "__proto__" cannot pollute Object.prototype. */
25
+ function createFetchCache(): FetchCache {
26
+ return Object.create(null) as FetchCache
27
+ }
28
+
29
+ export var fetchCache: FetchCache = createFetchCache()
25
30
  export function clearFetchCache() {
26
- fetchCache = {}
31
+ fetchCache = createFetchCache()
27
32
  }
28
33
 
29
34
  /**
@@ -89,8 +89,8 @@ describe('React', function () {
89
89
 
90
90
  // Initialization promise is rejected
91
91
  await Promise.all([
92
- expect(() => component.whenRendered).rejects.toEqual(new Error(errorType)),
93
- expect(() => component.whenLoaded).rejects.toEqual(new Error(errorType))
92
+ expect(component.whenRendered).rejects.toEqual(new Error(errorType)),
93
+ expect(component.whenLoaded).rejects.toEqual(new Error(errorType))
94
94
  ])
95
95
 
96
96
  // feaasEvent is dispatched and bubbled to dom
@@ -122,7 +122,7 @@ describe('React', function () {
122
122
 
123
123
  // Initialization promise is rejected
124
124
  await Promise.all([
125
- expect(() => component.whenRendered).rejects.toEqual(new Error(errorType)),
125
+ expect(component.whenRendered).rejects.toEqual(new Error(errorType)),
126
126
  expect(component.whenLoaded).resolves.toBeTruthy()
127
127
  ])
128
128
 
@@ -166,7 +166,7 @@ describe('React', function () {
166
166
 
167
167
  // Execute logic after initialization
168
168
  callback(component)
169
- await expect(() => component.whenRendered).rejects.toEqual(new Error(errorType))
169
+ await expect(component.whenRendered).rejects.toEqual(new Error(errorType))
170
170
 
171
171
  // feaasEvent is dispatched and bubbled to dom
172
172
  expect(errors.splice(0)).toEqual([new Error(errorType)])
@@ -1,7 +1,7 @@
1
1
  import { createRoot, hydrateRoot } from 'react-dom/client'
2
2
  import React, { useContext } from 'react'
3
3
  import { flushSync } from 'react-dom'
4
- import { describe, expect, it, beforeEach, vi, afterEach } from 'vitest'
4
+ import { describe, expect, it, beforeEach, vi } from 'vitest'
5
5
  import {
6
6
  Component,
7
7
  ExternalComponent,
@@ -448,7 +448,7 @@ describe('Components', () => {
448
448
  // Renders cached version initially
449
449
  await expect(component.whenRendered).resolves.toEqual(component)
450
450
  expect(component.innerHTML).toContain('<p>YESTERDAY</p>')
451
- expect(spy).toHaveBeenCalledTimes(2)
451
+ expect(spy).toHaveBeenCalledTimes(3)
452
452
 
453
453
  // whenLoaded only fires when ensures that up-to-date version is loaded
454
454
  await expect(component.whenLoaded).resolves.toBeTruthy()
@@ -1,15 +1,33 @@
1
- import { beforeEach, describe, expect, it } from 'vitest'
1
+ import { afterEach, beforeEach, describe, expect, it, vi } from 'vitest'
2
2
  import React from 'react'
3
+ import ReactDOM from 'react-dom'
3
4
  import * as Clientside from '../src/ui/react.js'
4
5
  import FEAASExternal from '../src/ui/FEAASExternal.js'
5
- import { vi } from 'vitest'
6
6
  import ReactDOMClient from 'react-dom/client'
7
7
 
8
- vi.mock('https://cdn.skypack.dev/react-dom/client', () => {
9
- return ReactDOMClient
10
- })
8
+ const reactModules = { React, ReactDOM, ReactDOMClient }
11
9
 
12
10
  describe('External', () => {
11
+ beforeEach(() => {
12
+ document.open()
13
+ document.write('<html><head></head><body></body></html>')
14
+ document.close()
15
+ vi.spyOn(FEAASExternal.prototype, 'load').mockResolvedValue(reactModules)
16
+ })
17
+
18
+ afterEach(async () => {
19
+ document.querySelectorAll('feaas-external').forEach((element) => element.remove())
20
+ document.body.innerHTML = ''
21
+ vi.restoreAllMocks()
22
+ await new Promise((resolve) => setImmediate(resolve))
23
+ })
24
+
25
+ async function expectRendered(component: FEAASExternal) {
26
+ await expect(component.whenLoaded).resolves.toBeTruthy()
27
+ await expect(component.whenRendered).resolves.toEqual(component)
28
+ await new Promise((resolve) => setImmediate(resolve))
29
+ }
30
+
13
31
  function Hello(props: { firstName: string; telephone: string }) {
14
32
  return React.createElement('div', {}, `Hello my name is ${props.firstName} and my tel is ${props.telephone}`)
15
33
  }
@@ -69,17 +87,16 @@ describe('External', () => {
69
87
  Clientside.External.registerComponent(Hello, helloSchema)
70
88
  document.body.innerHTML =
71
89
  '<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>'
72
- debugger
73
90
 
74
91
  const component = document.getElementById('external-component') as FEAASExternal
75
- await expect(component.whenRendered).resolves.toEqual(component)
92
+ await expectRendered(component)
76
93
  expect(component.innerHTML).toEqual('<div>Hello my name is Chuck and my tel is 45657890875643</div>')
77
94
  })
78
95
  it('should return empty if component is not registered', async () => {
79
96
  document.body.innerHTML =
80
97
  '<feaas-external id="external-component" class="-component" data-external-id="NotRegisteredComponent" contenteditable="false"></feaas-external>'
81
98
  const component = document.getElementById('external-component') as FEAASExternal
82
- await expect(component.whenRendered).resolves.toEqual(component)
99
+ await expectRendered(component)
83
100
  expect(component.innerHTML).toEqual('')
84
101
  })
85
102
  it('can register and render multiple components', async () => {
@@ -89,17 +106,17 @@ describe('External', () => {
89
106
  '<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>' +
90
107
  '<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>'
91
108
  const component1 = document.getElementById('external-component1') as FEAASExternal
92
- await expect(component1.whenRendered).resolves.toEqual(component1)
109
+ await expectRendered(component1)
93
110
  expect(component1.innerHTML).toEqual('<div>Hello my name is Chuck and my tel is 45657890875643</div>')
94
111
  const component2 = document.getElementById('external-component2') as FEAASExternal
95
- await expect(component2.whenRendered).resolves.toEqual(component2)
112
+ await expectRendered(component2)
96
113
  expect(component2.innerHTML).toEqual('<div>Hello my name is George and my address is Test street 12</div>')
97
114
  })
98
115
  it('can successfully parse component props', async () => {
99
116
  Clientside.External.registerComponent(TypesComponent, typesComponentSchema)
100
117
  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>`
101
118
  const typesComponent = document.getElementById('types-component') as FEAASExternal
102
- await expect(typesComponent.whenRendered).resolves.toEqual(typesComponent)
119
+ await expectRendered(typesComponent)
103
120
  expect(typesComponent.innerHTML).toEqual(
104
121
  '<div>Text: this is a string, Number + 1: 6, Boolean: it is true, Array (joined): 1, 2, 3, 4, 5, Object: object value</div>'
105
122
  )
@@ -109,7 +126,7 @@ describe('External', () => {
109
126
  document.body.innerHTML = `<feaas-external id="types-component" class="-component" datasources='{"my": {"arrayProp": [1,2,3], "objectProp": {"value": 333}, "numberProp": 1, "booleanProp": false, "stringProp": "Hey"}}' data-external-id="TypesComponent" contenteditable="false"></feaas-external>`
110
127
  const typesComponent = document.getElementById('types-component') as FEAASExternal
111
128
 
112
- await expect(typesComponent.whenRendered).resolves.toEqual(typesComponent)
129
+ await expectRendered(typesComponent)
113
130
  expect(typesComponent.innerHTML).toEqual(
114
131
  '<div>Text: Hey, Number + 1: 2, Boolean: error, Array (joined): 1, 2, 3, Object: 333</div>'
115
132
  )
@@ -131,7 +131,7 @@ describe('Stylesheet', () => {
131
131
  const stylesheet = document.body.firstElementChild as FEAASStylesheet
132
132
 
133
133
  await expect(stylesheet.whenRendered).resolves.toEqual(stylesheet)
134
- expect(spy).toHaveBeenCalledTimes(2)
134
+ expect(spy).toHaveBeenCalledTimes(3)
135
135
  expect(document.head.querySelector('style').textContent).toContain('YESTERDAY {}')
136
136
 
137
137
  // whenLoaded only fires when ensures that up-to-date version is loaded
package/test/fetch.ts CHANGED
@@ -84,20 +84,20 @@ describe('Fetch', () => {
84
84
  status: 400
85
85
  })
86
86
  )
87
- expect(() =>
87
+ await expect(
88
88
  fetchAndRevalidate('a', undefined, undefined, callback1).then((r) => r.clone().text())
89
89
  ).rejects.toEqual(new Error('Fetch failed'))
90
- expect(() =>
90
+ await expect(
91
91
  fetchAndRevalidate('a', undefined, undefined, callback2).then((r) => r.clone().text())
92
92
  ).rejects.toEqual(new Error('Fetch failed'))
93
93
  expect(spy).toHaveBeenCalledTimes(1)
94
94
  expect(phases1).toEqual([])
95
95
  expect(phases2).toEqual([])
96
- expect(() => fetchAndRevalidate('a').then((r) => r.clone().text())).rejects.toEqual(new Error('Fetch failed'))
96
+ await expect(fetchAndRevalidate('a').then((r) => r.clone().text())).rejects.toEqual(new Error('Fetch failed'))
97
97
  clearFetchCache()
98
- expect(() => fetchAndRevalidate('a').then((r) => r.clone().text())).rejects.toEqual(new Error('Fetch failed'))
98
+ await expect(fetchAndRevalidate('a').then((r) => r.clone().text())).rejects.toEqual(new Error('Fetch failed'))
99
99
  expect(spy).toHaveBeenCalledTimes(2)
100
- expect(() => fetchAndRevalidate('a').then((r) => r.clone().text())).rejects.toEqual(new Error('Fetch failed'))
100
+ await expect(fetchAndRevalidate('a').then((r) => r.clone().text())).rejects.toEqual(new Error('Fetch failed'))
101
101
  expect(spy).toHaveBeenCalledTimes(2)
102
102
  expect(phases1).toEqual([])
103
103
  expect(phases2).toEqual([])
@@ -251,4 +251,20 @@ describe('Fetch', () => {
251
251
  ])
252
252
  expect(spy).toHaveBeenCalledTimes(6)
253
253
  })
254
+ it('should not pollute Object.prototype when cache key is __proto__', async () => {
255
+ const spy = vi.spyOn(global, 'fetch')
256
+ spy.mockImplementation(
257
+ async () =>
258
+ new Response('A', {
259
+ headers: {
260
+ date: todayNoon.toUTCString()
261
+ }
262
+ })
263
+ )
264
+
265
+ await fetchAndRevalidate('__proto__', undefined, undefined, callback1)
266
+
267
+ expect(Object.prototype.hasOwnProperty('phase')).toBe(false)
268
+ expect(({} as Record<string, unknown>).phase).toBeUndefined()
269
+ })
254
270
  })
package/types/fetch.d.ts CHANGED
@@ -18,7 +18,7 @@ export type FetchCacheRequest = {
18
18
  updated: ControlledPromise<Response>;
19
19
  final: ControlledPromise<Response>;
20
20
  };
21
- export declare var fetchCache: Record<string, FetchCacheRequest>;
21
+ export declare var fetchCache: FetchCache;
22
22
  export declare function clearFetchCache(): void;
23
23
  /**
24
24
  * Utility to cache-bust static files. It relies on reading Date header to detect cached response, so it requires CORS
@@ -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,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;;;;;;;;;;;GAWG;AACH,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;;;;;;;;;;;;;;;GAeG;AACH,wBAAsB,uBAAuB,CAC3C,EAAE,GAAG,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE,kBAAkB,EAChE,KAAK,GAAE,uBAAmC;;;;;;;;GAmC3C;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;;;;;;;GAOG;AACH,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,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;AAOD,eAAO,IAAI,UAAU,EAAE,UAA+B,CAAA;AACtD,wBAAgB,eAAe,SAE9B;AAED;;;;;;;;;;;GAWG;AACH,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;;;;;;;;;;;;;;;GAeG;AACH,wBAAsB,uBAAuB,CAC3C,EAAE,GAAG,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE,kBAAkB,EAChE,KAAK,GAAE,uBAAmC;;;;;;;;GAmC3C;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;;;;;;;GAOG;AACH,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,7 +15,7 @@ export declare function clean(settings: any): Partial<{
15
15
  params: Record<string, any>;
16
16
  headers: Record<string, string>;
17
17
  jsonpath: string;
18
- method: "GET" | "POST" | "OPTIONS" | "PUT" | "DELETE" | "UPDATE" | "HEAD";
18
+ method: "HEAD" | "GET" | "POST" | "OPTIONS" | "PUT" | "DELETE" | "UPDATE";
19
19
  body: Record<string, any>;
20
20
  url: string;
21
21
  }>;
@@ -29,7 +29,7 @@ export declare const isDataSettings: (data: any) => data is {
29
29
  params: Record<string, any>;
30
30
  headers: Record<string, string>;
31
31
  jsonpath: string;
32
- method: "GET" | "POST" | "OPTIONS" | "PUT" | "DELETE" | "UPDATE" | "HEAD";
32
+ method: "HEAD" | "GET" | "POST" | "OPTIONS" | "PUT" | "DELETE" | "UPDATE";
33
33
  body: Record<string, any>;
34
34
  url: string;
35
35
  };
@@ -51,7 +51,7 @@ export declare function DataSettings(settings: any): {
51
51
  params: Record<string, any>;
52
52
  headers: Record<string, string>;
53
53
  jsonpath: string;
54
- method: "GET" | "POST" | "OPTIONS" | "PUT" | "DELETE" | "UPDATE" | "HEAD";
54
+ method: "HEAD" | "GET" | "POST" | "OPTIONS" | "PUT" | "DELETE" | "UPDATE";
55
55
  body: Record<string, any>;
56
56
  url: string;
57
57
  };
@@ -62,7 +62,7 @@ export declare namespace DataSettings {
62
62
  params: Record<string, any>;
63
63
  headers: Record<string, string>;
64
64
  jsonpath: string;
65
- method: "GET" | "POST" | "OPTIONS" | "PUT" | "DELETE" | "UPDATE" | "HEAD";
65
+ method: "HEAD" | "GET" | "POST" | "OPTIONS" | "PUT" | "DELETE" | "UPDATE";
66
66
  body: Record<string, any>;
67
67
  url: string;
68
68
  }, datasourceId?: string) => Promise<Data>;
@@ -71,7 +71,7 @@ export declare namespace DataSettings {
71
71
  params: Record<string, any>;
72
72
  headers: Record<string, string>;
73
73
  jsonpath: string;
74
- method: "GET" | "POST" | "OPTIONS" | "PUT" | "DELETE" | "UPDATE" | "HEAD";
74
+ method: "HEAD" | "GET" | "POST" | "OPTIONS" | "PUT" | "DELETE" | "UPDATE";
75
75
  body: Record<string, any>;
76
76
  url: string;
77
77
  };