@webiny/website-builder-sdk 0.0.0-unstable.e6f0dc8ca7 → 0.0.0-unstable.eb81deee7e

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 (272) hide show
  1. package/BindingsApi.js +29 -36
  2. package/BindingsApi.js.map +1 -1
  3. package/BindingsProcessor.js +34 -43
  4. package/BindingsProcessor.js.map +1 -1
  5. package/BindingsProcessor.test.js +82 -78
  6. package/BindingsProcessor.test.js.map +1 -1
  7. package/BindingsResolver.d.ts +4 -1
  8. package/BindingsResolver.js +99 -119
  9. package/BindingsResolver.js.map +1 -1
  10. package/BindingsResolver.test.js +399 -363
  11. package/BindingsResolver.test.js.map +1 -1
  12. package/ComponentInputTraverser.js +32 -49
  13. package/ComponentInputTraverser.js.map +1 -1
  14. package/ComponentManifestToAstConverter.js +20 -21
  15. package/ComponentManifestToAstConverter.js.map +1 -1
  16. package/ComponentRegistry.d.ts +9 -0
  17. package/ComponentRegistry.js +30 -44
  18. package/ComponentRegistry.js.map +1 -1
  19. package/ComponentResolver.d.ts +3 -2
  20. package/ComponentResolver.js +39 -29
  21. package/ComponentResolver.js.map +1 -1
  22. package/ComponentResolver.test.d.ts +1 -0
  23. package/ComponentResolver.test.js +81 -0
  24. package/ComponentResolver.test.js.map +1 -0
  25. package/ConstraintEvaluator.js +246 -353
  26. package/ConstraintEvaluator.js.map +1 -1
  27. package/ConstraintEvaluator.test.js +1616 -1438
  28. package/ConstraintEvaluator.test.js.map +1 -1
  29. package/ContentSdk.d.ts +14 -0
  30. package/ContentSdk.js +113 -90
  31. package/ContentSdk.js.map +1 -1
  32. package/DocumentStore.js +47 -59
  33. package/DocumentStore.js.map +1 -1
  34. package/DocumentStoreManager.js +17 -16
  35. package/DocumentStoreManager.js.map +1 -1
  36. package/EditingSdk.js +92 -121
  37. package/EditingSdk.js.map +1 -1
  38. package/ElementFactory.js +164 -172
  39. package/ElementFactory.js.map +1 -1
  40. package/ElementFactory.objectListDefaults.test.d.ts +1 -0
  41. package/ElementFactory.objectListDefaults.test.js +423 -0
  42. package/ElementFactory.objectListDefaults.test.js.map +1 -0
  43. package/ElementFactory.test.js +335 -262
  44. package/ElementFactory.test.js.map +1 -1
  45. package/Environment.js +18 -19
  46. package/Environment.js.map +1 -1
  47. package/FunctionConverter.js +8 -7
  48. package/FunctionConverter.js.map +1 -1
  49. package/HashObject.js +11 -26
  50. package/HashObject.js.map +1 -1
  51. package/HotkeyManager.js +40 -47
  52. package/HotkeyManager.js.map +1 -1
  53. package/IBindingsUpdater.js +0 -3
  54. package/IRedirects.js +0 -3
  55. package/InheritanceProcessor.js +99 -139
  56. package/InheritanceProcessor.js.map +1 -1
  57. package/InheritanceProcessor.test.js +178 -179
  58. package/InheritanceProcessor.test.js.map +1 -1
  59. package/InheritedValueResolver.d.ts +18 -1
  60. package/InheritedValueResolver.js +18 -20
  61. package/InheritedValueResolver.js.map +1 -1
  62. package/InputBindingsProcessor.d.ts +23 -2
  63. package/InputBindingsProcessor.js +200 -307
  64. package/InputBindingsProcessor.js.map +1 -1
  65. package/InputBindingsProcessorTokens.test.d.ts +1 -0
  66. package/InputBindingsProcessorTokens.test.js +400 -0
  67. package/InputBindingsProcessorTokens.test.js.map +1 -0
  68. package/InputsBindingsProcessor.test.js +334 -315
  69. package/InputsBindingsProcessor.test.js.map +1 -1
  70. package/InputsUpdater.js +23 -26
  71. package/InputsUpdater.js.map +1 -1
  72. package/LiveSdk.js +12 -13
  73. package/LiveSdk.js.map +1 -1
  74. package/Logger.js +9 -8
  75. package/Logger.js.map +1 -1
  76. package/MouseTracker.js +77 -83
  77. package/MouseTracker.js.map +1 -1
  78. package/NullSdk.js +22 -21
  79. package/NullSdk.js.map +1 -1
  80. package/PreviewDocument.d.ts +1 -0
  81. package/PreviewDocument.js +30 -30
  82. package/PreviewDocument.js.map +1 -1
  83. package/PreviewSdk.d.ts +2 -1
  84. package/PreviewSdk.js +19 -17
  85. package/PreviewSdk.js.map +1 -1
  86. package/PreviewViewport.js +51 -63
  87. package/PreviewViewport.js.map +1 -1
  88. package/ResizeObserver.js +24 -31
  89. package/ResizeObserver.js.map +1 -1
  90. package/StylesBindingsProcessor.d.ts +12 -2
  91. package/StylesBindingsProcessor.js +62 -79
  92. package/StylesBindingsProcessor.js.map +1 -1
  93. package/StylesUpdater.js +20 -25
  94. package/StylesUpdater.js.map +1 -1
  95. package/Theme.js +30 -25
  96. package/Theme.js.map +1 -1
  97. package/ViewportManager.js +89 -101
  98. package/ViewportManager.js.map +1 -1
  99. package/assertBindingShapes.d.ts +31 -0
  100. package/assertBindingShapes.js +64 -0
  101. package/assertBindingShapes.js.map +1 -0
  102. package/assertBindingShapes.test.d.ts +1 -0
  103. package/assertBindingShapes.test.js +131 -0
  104. package/assertBindingShapes.test.js.map +1 -0
  105. package/asset/deliveryUrl.d.ts +41 -0
  106. package/asset/deliveryUrl.js +34 -0
  107. package/asset/deliveryUrl.js.map +1 -0
  108. package/asset/deliveryUrl.test.d.ts +1 -0
  109. package/asset/deliveryUrl.test.js +127 -0
  110. package/asset/deliveryUrl.test.js.map +1 -0
  111. package/asset/geometry.d.ts +7 -0
  112. package/asset/geometry.js +10 -0
  113. package/asset/geometry.js.map +1 -0
  114. package/asset/imageSrcSet.d.ts +63 -0
  115. package/asset/imageSrcSet.js +98 -0
  116. package/asset/imageSrcSet.js.map +1 -0
  117. package/asset/imageSrcSet.test.d.ts +1 -0
  118. package/asset/imageSrcSet.test.js +103 -0
  119. package/asset/imageSrcSet.test.js.map +1 -0
  120. package/asset/index.d.ts +5 -0
  121. package/asset/index.js +5 -0
  122. package/asset/normalize.d.ts +24 -0
  123. package/asset/normalize.js +106 -0
  124. package/asset/normalize.js.map +1 -0
  125. package/asset/normalize.test.d.ts +1 -0
  126. package/asset/normalize.test.js +263 -0
  127. package/asset/normalize.test.js.map +1 -0
  128. package/asset/types.d.ts +2 -0
  129. package/asset/types.js +0 -0
  130. package/constants.js +7 -6
  131. package/constants.js.map +1 -1
  132. package/contentEntry/ContentEntryBindingsResolver.d.ts +30 -0
  133. package/contentEntry/ContentEntryBindingsResolver.js +45 -0
  134. package/contentEntry/ContentEntryBindingsResolver.js.map +1 -0
  135. package/contentEntry/ContentEntryCache.d.ts +46 -0
  136. package/contentEntry/ContentEntryCache.js +50 -0
  137. package/contentEntry/ContentEntryCache.js.map +1 -0
  138. package/contentEntry/resolveContentEntry.d.ts +74 -0
  139. package/contentEntry/resolveContentEntry.js +53 -0
  140. package/contentEntry/resolveContentEntry.js.map +1 -0
  141. package/contentEntry/resolveContentEntry.test.d.ts +1 -0
  142. package/contentEntry/resolveContentEntry.test.js +213 -0
  143. package/contentEntry/resolveContentEntry.test.js.map +1 -0
  144. package/createComponent.d.ts +5 -0
  145. package/createComponent.js +32 -0
  146. package/createComponent.js.map +1 -0
  147. package/createElement.js +5 -6
  148. package/createElement.js.map +1 -1
  149. package/createInput.d.ts +10 -2
  150. package/createInput.js +92 -143
  151. package/createInput.js.map +1 -1
  152. package/createTheme.js +2 -3
  153. package/createTheme.js.map +1 -1
  154. package/dataProviders/ApiClient.d.ts +10 -5
  155. package/dataProviders/ApiClient.js +40 -49
  156. package/dataProviders/ApiClient.js.map +1 -1
  157. package/dataProviders/DefaultDataProvider.d.ts +4 -0
  158. package/dataProviders/DefaultDataProvider.js +91 -58
  159. package/dataProviders/DefaultDataProvider.js.map +1 -1
  160. package/dataProviders/GET_EXPERIMENT_PAUSED.d.ts +1 -0
  161. package/dataProviders/GET_EXPERIMENT_PAUSED.js +17 -0
  162. package/dataProviders/GET_EXPERIMENT_PAUSED.js.map +1 -0
  163. package/dataProviders/GET_PAGE_BY_ID.js +2 -1
  164. package/dataProviders/GET_PAGE_BY_ID.js.map +1 -1
  165. package/dataProviders/GET_PAGE_BY_PATH.js +2 -1
  166. package/dataProviders/GET_PAGE_BY_PATH.js.map +1 -1
  167. package/dataProviders/GET_PAGE_EXPERIMENT.d.ts +1 -0
  168. package/dataProviders/GET_PAGE_EXPERIMENT.js +32 -0
  169. package/dataProviders/GET_PAGE_EXPERIMENT.js.map +1 -0
  170. package/dataProviders/GET_VARIANT_CONTENT.d.ts +1 -0
  171. package/dataProviders/GET_VARIANT_CONTENT.js +24 -0
  172. package/dataProviders/GET_VARIANT_CONTENT.js.map +1 -0
  173. package/dataProviders/LIST_PUBLISHED_PAGES.js +2 -1
  174. package/dataProviders/LIST_PUBLISHED_PAGES.js.map +1 -1
  175. package/dataProviders/NullDataProvider.d.ts +4 -0
  176. package/dataProviders/NullDataProvider.js +30 -20
  177. package/dataProviders/NullDataProvider.js.map +1 -1
  178. package/dataProviders/RedirectsProvider.js +24 -27
  179. package/dataProviders/RedirectsProvider.js.map +1 -1
  180. package/defaultBreakpoints.js +43 -22
  181. package/defaultBreakpoints.js.map +1 -1
  182. package/documentOperations/$addElementReferenceToParent.js +29 -32
  183. package/documentOperations/$addElementReferenceToParent.js.map +1 -1
  184. package/documentOperations/AddElement.js +8 -7
  185. package/documentOperations/AddElement.js.map +1 -1
  186. package/documentOperations/AddToParent.js +14 -13
  187. package/documentOperations/AddToParent.js.map +1 -1
  188. package/documentOperations/IDocumentOperation.js +0 -3
  189. package/documentOperations/RemoveElement.js +9 -15
  190. package/documentOperations/RemoveElement.js.map +1 -1
  191. package/documentOperations/SetGlobalInputBinding.js +23 -22
  192. package/documentOperations/SetGlobalInputBinding.js.map +1 -1
  193. package/documentOperations/SetGlobalStyleBinding.js +23 -23
  194. package/documentOperations/SetGlobalStyleBinding.js.map +1 -1
  195. package/documentOperations/SetInputBindingOverride.js +30 -29
  196. package/documentOperations/SetInputBindingOverride.js.map +1 -1
  197. package/documentOperations/SetStyleBindingOverride.js +30 -31
  198. package/documentOperations/SetStyleBindingOverride.js.map +1 -1
  199. package/documentOperations/index.js +9 -8
  200. package/documentOperations/index.js.map +1 -1
  201. package/experiments/PostHogAnalyticsProvider.d.ts +31 -0
  202. package/experiments/PostHogAnalyticsProvider.js +28 -0
  203. package/experiments/PostHogAnalyticsProvider.js.map +1 -0
  204. package/experiments/analyticsProvider.d.ts +4 -0
  205. package/experiments/analyticsProvider.js +11 -0
  206. package/experiments/analyticsProvider.js.map +1 -0
  207. package/experiments/bucketing.d.ts +27 -0
  208. package/experiments/bucketing.js +91 -0
  209. package/experiments/bucketing.js.map +1 -0
  210. package/experiments/bucketing.test.d.ts +1 -0
  211. package/experiments/bucketing.test.js +183 -0
  212. package/experiments/bucketing.test.js.map +1 -0
  213. package/experiments/index.d.ts +5 -0
  214. package/experiments/index.js +5 -0
  215. package/experiments/render.d.ts +79 -0
  216. package/experiments/render.js +149 -0
  217. package/experiments/render.js.map +1 -0
  218. package/experiments/types.d.ts +108 -0
  219. package/experiments/types.js +4 -0
  220. package/experiments/types.js.map +1 -0
  221. package/findMatchingAstNode.js +11 -13
  222. package/findMatchingAstNode.js.map +1 -1
  223. package/generateElementId.js +2 -1
  224. package/generateElementId.js.map +1 -1
  225. package/headersProvider.js +4 -3
  226. package/headersProvider.js.map +1 -1
  227. package/image/geometry.d.ts +54 -0
  228. package/image/geometry.js +112 -0
  229. package/image/geometry.js.map +1 -0
  230. package/image/geometry.test.d.ts +1 -0
  231. package/image/geometry.test.js +190 -0
  232. package/image/geometry.test.js.map +1 -0
  233. package/image/index.d.ts +3 -0
  234. package/image/index.js +3 -0
  235. package/image/presets.d.ts +6 -0
  236. package/image/presets.js +20 -0
  237. package/image/presets.js.map +1 -0
  238. package/image/types.d.ts +10 -0
  239. package/image/types.js +0 -0
  240. package/index.d.ts +10 -0
  241. package/index.js +10 -2
  242. package/jsonPatch.js +5 -9
  243. package/jsonPatch.js.map +1 -1
  244. package/messages.js +12 -11
  245. package/messages.js.map +1 -1
  246. package/messenger/MessageOrigin.js +12 -11
  247. package/messenger/MessageOrigin.js.map +1 -1
  248. package/messenger/Messenger.js +58 -69
  249. package/messenger/Messenger.js.map +1 -1
  250. package/messenger/index.js +0 -2
  251. package/package.json +12 -9
  252. package/registerComponentGroup.js +5 -6
  253. package/registerComponentGroup.js.map +1 -1
  254. package/tokenBinding.d.ts +26 -0
  255. package/tokenBinding.js +15 -0
  256. package/tokenBinding.js.map +1 -0
  257. package/tokenBinding.test.d.ts +1 -0
  258. package/tokenBinding.test.js +165 -0
  259. package/tokenBinding.test.js.map +1 -0
  260. package/types/ShorthandCssProperties.js +0 -3
  261. package/types/WebsiteBuilderTheme.d.ts +12 -0
  262. package/types/WebsiteBuilderTheme.js +0 -3
  263. package/types.d.ts +96 -1
  264. package/types.js +0 -3
  265. package/IBindingsUpdater.js.map +0 -1
  266. package/IRedirects.js.map +0 -1
  267. package/documentOperations/IDocumentOperation.js.map +0 -1
  268. package/index.js.map +0 -1
  269. package/messenger/index.js.map +0 -1
  270. package/types/ShorthandCssProperties.js.map +0 -1
  271. package/types/WebsiteBuilderTheme.js.map +0 -1
  272. package/types.js.map +0 -1
@@ -0,0 +1,10 @@
1
+ export type { AssetCrop, AssetFocalPoint } from "@webiny/sdk";
2
+ export type AspectRatioInput = number | {
3
+ width: number;
4
+ height: number;
5
+ };
6
+ export interface AspectRatioPreset {
7
+ id: string;
8
+ label: string;
9
+ ratio: number;
10
+ }
package/image/types.js ADDED
File without changes
package/index.d.ts CHANGED
@@ -8,6 +8,12 @@ export * from "./DocumentStore.js";
8
8
  export * from "./Logger.js";
9
9
  export * from "./FunctionConverter.js";
10
10
  export * from "./createInput.js";
11
+ export * from "./contentEntry/resolveContentEntry.js";
12
+ export * from "./contentEntry/ContentEntryCache.js";
13
+ export * from "./contentEntry/ContentEntryBindingsResolver.js";
14
+ export * from "./createComponent.js";
15
+ export * from "./image/index.js";
16
+ export * from "./asset/index.js";
11
17
  export * from "./MouseTracker.js";
12
18
  export * from "./ViewportManager.js";
13
19
  export * from "./messenger/Messenger.js";
@@ -21,11 +27,15 @@ export * from "./createElement.js";
21
27
  export * from "./registerComponentGroup.js";
22
28
  export * from "./jsonPatch.js";
23
29
  export * from "./headersProvider.js";
30
+ export * from "./experiments/index.js";
24
31
  export * from "./ComponentManifestToAstConverter.js";
25
32
  export * from "./findMatchingAstNode.js";
26
33
  export * from "./InheritanceProcessor.js";
27
34
  export * from "./InputBindingsProcessor.js";
28
35
  export * from "./StylesBindingsProcessor.js";
36
+ export * from "./tokenBinding.js";
29
37
  export * from "./ElementFactory.js";
30
38
  export * from "./ConstraintEvaluator.js";
39
+ export * from "./generateElementId.js";
31
40
  export { StyleSettings } from "./constants.js";
41
+ export * from "./assertBindingShapes.js";
package/index.js CHANGED
@@ -8,6 +8,12 @@ export * from "./DocumentStore.js";
8
8
  export * from "./Logger.js";
9
9
  export * from "./FunctionConverter.js";
10
10
  export * from "./createInput.js";
11
+ export * from "./contentEntry/resolveContentEntry.js";
12
+ export * from "./contentEntry/ContentEntryCache.js";
13
+ export * from "./contentEntry/ContentEntryBindingsResolver.js";
14
+ export * from "./createComponent.js";
15
+ export * from "./image/index.js";
16
+ export * from "./asset/index.js";
11
17
  export * from "./MouseTracker.js";
12
18
  export * from "./ViewportManager.js";
13
19
  export * from "./messenger/Messenger.js";
@@ -20,13 +26,15 @@ export * from "./createElement.js";
20
26
  export * from "./registerComponentGroup.js";
21
27
  export * from "./jsonPatch.js";
22
28
  export * from "./headersProvider.js";
29
+ export * from "./experiments/index.js";
23
30
  export * from "./ComponentManifestToAstConverter.js";
24
31
  export * from "./findMatchingAstNode.js";
25
32
  export * from "./InheritanceProcessor.js";
26
33
  export * from "./InputBindingsProcessor.js";
27
34
  export * from "./StylesBindingsProcessor.js";
35
+ export * from "./tokenBinding.js";
28
36
  export * from "./ElementFactory.js";
29
37
  export * from "./ConstraintEvaluator.js";
38
+ export * from "./generateElementId.js";
39
+ export * from "./assertBindingShapes.js";
30
40
  export { StyleSettings } from "./constants.js";
31
-
32
- //# sourceMappingURL=index.js.map
package/jsonPatch.js CHANGED
@@ -1,12 +1,8 @@
1
- // @ts-expect-error We need this hack.
2
- import * as fjp from "fast-json-patch/index.mjs";
3
- export const jsonPatch = {
4
- compare: (tree1, tree2, invertible) => {
5
- return fjp.compare(tree1, tree2, invertible);
6
- },
7
- applyPatch: (document, patch, validateOperation, mutateDocument, banPrototypeModifications) => {
8
- return fjp.applyPatch(document, patch, validateOperation, mutateDocument, banPrototypeModifications);
9
- }
1
+ import * as __rspack_external_fast_json_patch_index_mjs_25f05694 from "fast-json-patch/index.mjs";
2
+ const jsonPatch = {
3
+ compare: (tree1, tree2, invertible)=>__rspack_external_fast_json_patch_index_mjs_25f05694.compare(tree1, tree2, invertible),
4
+ applyPatch: (document, patch, validateOperation, mutateDocument, banPrototypeModifications)=>__rspack_external_fast_json_patch_index_mjs_25f05694.applyPatch(document, patch, validateOperation, mutateDocument, banPrototypeModifications)
10
5
  };
6
+ export { jsonPatch };
11
7
 
12
8
  //# sourceMappingURL=jsonPatch.js.map
package/jsonPatch.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"names":["fjp","jsonPatch","compare","tree1","tree2","invertible","applyPatch","document","patch","validateOperation","mutateDocument","banPrototypeModifications"],"sources":["jsonPatch.ts"],"sourcesContent":["import type { Operation, Validator, PatchResult } from \"fast-json-patch\";\n// @ts-expect-error We need this hack.\nimport * as fjp from \"fast-json-patch/index.mjs\";\n\nexport type { Operation as JsonPatchOperation, PatchResult as JsonPatchResult };\n\nexport const jsonPatch = {\n compare: (tree1: object | any[], tree2: object | any[], invertible?: boolean): Operation[] => {\n return fjp.compare(tree1, tree2, invertible);\n },\n applyPatch: <T>(\n document: T,\n patch: Operation[],\n validateOperation?: boolean | Validator<T>,\n mutateDocument?: boolean,\n banPrototypeModifications?: boolean\n ): PatchResult<T> => {\n return fjp.applyPatch(\n document,\n patch,\n validateOperation,\n mutateDocument,\n banPrototypeModifications\n );\n }\n};\n"],"mappings":"AACA;AACA,OAAO,KAAKA,GAAG,MAAM,2BAA2B;AAIhD,OAAO,MAAMC,SAAS,GAAG;EACrBC,OAAO,EAAEA,CAACC,KAAqB,EAAEC,KAAqB,EAAEC,UAAoB,KAAkB;IAC1F,OAAOL,GAAG,CAACE,OAAO,CAACC,KAAK,EAAEC,KAAK,EAAEC,UAAU,CAAC;EAChD,CAAC;EACDC,UAAU,EAAEA,CACRC,QAAW,EACXC,KAAkB,EAClBC,iBAA0C,EAC1CC,cAAwB,EACxBC,yBAAmC,KAClB;IACjB,OAAOX,GAAG,CAACM,UAAU,CACjBC,QAAQ,EACRC,KAAK,EACLC,iBAAiB,EACjBC,cAAc,EACdC,yBACJ,CAAC;EACL;AACJ,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"jsonPatch.js","sources":["../src/jsonPatch.ts"],"sourcesContent":["import type { Operation, Validator, PatchResult } from \"fast-json-patch\";\n// @ts-expect-error We need this hack.\nimport * as fjp from \"fast-json-patch/index.mjs\";\n\nexport type { Operation as JsonPatchOperation, PatchResult as JsonPatchResult };\n\nexport const jsonPatch = {\n compare: (tree1: object | any[], tree2: object | any[], invertible?: boolean): Operation[] => {\n return fjp.compare(tree1, tree2, invertible);\n },\n applyPatch: <T>(\n document: T,\n patch: Operation[],\n validateOperation?: boolean | Validator<T>,\n mutateDocument?: boolean,\n banPrototypeModifications?: boolean\n ): PatchResult<T> => {\n return fjp.applyPatch(\n document,\n patch,\n validateOperation,\n mutateDocument,\n banPrototypeModifications\n );\n }\n};\n"],"names":["jsonPatch","tree1","tree2","invertible","fjp","document","patch","validateOperation","mutateDocument","banPrototypeModifications"],"mappings":";AAMO,MAAMA,YAAY;IACrB,SAAS,CAACC,OAAuBC,OAAuBC,aAC7CC,qDAAAA,OAAW,CAACH,OAAOC,OAAOC;IAErC,YAAY,CACRE,UACAC,OACAC,mBACAC,gBACAC,4BAEOL,qDAAAA,UAAc,CACjBC,UACAC,OACAC,mBACAC,gBACAC;AAGZ"}
package/messages.js CHANGED
@@ -1,13 +1,14 @@
1
- export const DOCUMENT_SET = "document.set";
2
- export const DOCUMENT_PATCH = "document.patch";
3
- export const PREVIEW_COMPONENT_REGISTER = "preview.component.register";
4
- export const PREVIEW_READY = "preview.ready";
5
- export const PREVIEW_COMPONENTGROUP_REGISTER = "preview.componentGroup.register";
6
- export const PREVIEW_VIEWPORT_CHANGE_START = "preview.viewport.change.start";
7
- export const PREVIEW_VIEWPORT_CHANGE_END = "preview.viewport.change.end";
8
- export const PREVIEW_ELEMENT_POSITIONS = "preview.element.positions";
9
- export const PREVIEW_ELEMENT_CLICK = "preview.element.click";
10
- export const PREVIEW_ELEMENT_ENTER = "preview.element.enter";
11
- export const PREVIEW_ELEMENT_LEAVE = "preview.element.leave";
1
+ const DOCUMENT_SET = "document.set";
2
+ const DOCUMENT_PATCH = "document.patch";
3
+ const PREVIEW_COMPONENT_REGISTER = "preview.component.register";
4
+ const PREVIEW_READY = "preview.ready";
5
+ const PREVIEW_COMPONENTGROUP_REGISTER = "preview.componentGroup.register";
6
+ const PREVIEW_VIEWPORT_CHANGE_START = "preview.viewport.change.start";
7
+ const PREVIEW_VIEWPORT_CHANGE_END = "preview.viewport.change.end";
8
+ const PREVIEW_ELEMENT_POSITIONS = "preview.element.positions";
9
+ const PREVIEW_ELEMENT_CLICK = "preview.element.click";
10
+ const PREVIEW_ELEMENT_ENTER = "preview.element.enter";
11
+ const PREVIEW_ELEMENT_LEAVE = "preview.element.leave";
12
+ export { DOCUMENT_PATCH, DOCUMENT_SET, PREVIEW_COMPONENTGROUP_REGISTER, PREVIEW_COMPONENT_REGISTER, PREVIEW_ELEMENT_CLICK, PREVIEW_ELEMENT_ENTER, PREVIEW_ELEMENT_LEAVE, PREVIEW_ELEMENT_POSITIONS, PREVIEW_READY, PREVIEW_VIEWPORT_CHANGE_END, PREVIEW_VIEWPORT_CHANGE_START };
12
13
 
13
14
  //# sourceMappingURL=messages.js.map
package/messages.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"names":["DOCUMENT_SET","DOCUMENT_PATCH","PREVIEW_COMPONENT_REGISTER","PREVIEW_READY","PREVIEW_COMPONENTGROUP_REGISTER","PREVIEW_VIEWPORT_CHANGE_START","PREVIEW_VIEWPORT_CHANGE_END","PREVIEW_ELEMENT_POSITIONS","PREVIEW_ELEMENT_CLICK","PREVIEW_ELEMENT_ENTER","PREVIEW_ELEMENT_LEAVE"],"sources":["messages.ts"],"sourcesContent":["export const DOCUMENT_SET = \"document.set\";\nexport const DOCUMENT_PATCH = \"document.patch\";\nexport const PREVIEW_COMPONENT_REGISTER = \"preview.component.register\";\nexport const PREVIEW_READY = \"preview.ready\";\nexport const PREVIEW_COMPONENTGROUP_REGISTER = \"preview.componentGroup.register\";\nexport const PREVIEW_VIEWPORT_CHANGE_START = \"preview.viewport.change.start\";\nexport const PREVIEW_VIEWPORT_CHANGE_END = \"preview.viewport.change.end\";\nexport const PREVIEW_ELEMENT_POSITIONS = \"preview.element.positions\";\nexport const PREVIEW_ELEMENT_CLICK = \"preview.element.click\";\nexport const PREVIEW_ELEMENT_ENTER = \"preview.element.enter\";\nexport const PREVIEW_ELEMENT_LEAVE = \"preview.element.leave\";\n"],"mappings":"AAAA,OAAO,MAAMA,YAAY,GAAG,cAAc;AAC1C,OAAO,MAAMC,cAAc,GAAG,gBAAgB;AAC9C,OAAO,MAAMC,0BAA0B,GAAG,4BAA4B;AACtE,OAAO,MAAMC,aAAa,GAAG,eAAe;AAC5C,OAAO,MAAMC,+BAA+B,GAAG,iCAAiC;AAChF,OAAO,MAAMC,6BAA6B,GAAG,+BAA+B;AAC5E,OAAO,MAAMC,2BAA2B,GAAG,6BAA6B;AACxE,OAAO,MAAMC,yBAAyB,GAAG,2BAA2B;AACpE,OAAO,MAAMC,qBAAqB,GAAG,uBAAuB;AAC5D,OAAO,MAAMC,qBAAqB,GAAG,uBAAuB;AAC5D,OAAO,MAAMC,qBAAqB,GAAG,uBAAuB","ignoreList":[]}
1
+ {"version":3,"file":"messages.js","sources":["../src/messages.ts"],"sourcesContent":["export const DOCUMENT_SET = \"document.set\";\nexport const DOCUMENT_PATCH = \"document.patch\";\nexport const PREVIEW_COMPONENT_REGISTER = \"preview.component.register\";\nexport const PREVIEW_READY = \"preview.ready\";\nexport const PREVIEW_COMPONENTGROUP_REGISTER = \"preview.componentGroup.register\";\nexport const PREVIEW_VIEWPORT_CHANGE_START = \"preview.viewport.change.start\";\nexport const PREVIEW_VIEWPORT_CHANGE_END = \"preview.viewport.change.end\";\nexport const PREVIEW_ELEMENT_POSITIONS = \"preview.element.positions\";\nexport const PREVIEW_ELEMENT_CLICK = \"preview.element.click\";\nexport const PREVIEW_ELEMENT_ENTER = \"preview.element.enter\";\nexport const PREVIEW_ELEMENT_LEAVE = \"preview.element.leave\";\n"],"names":["DOCUMENT_SET","DOCUMENT_PATCH","PREVIEW_COMPONENT_REGISTER","PREVIEW_READY","PREVIEW_COMPONENTGROUP_REGISTER","PREVIEW_VIEWPORT_CHANGE_START","PREVIEW_VIEWPORT_CHANGE_END","PREVIEW_ELEMENT_POSITIONS","PREVIEW_ELEMENT_CLICK","PREVIEW_ELEMENT_ENTER","PREVIEW_ELEMENT_LEAVE"],"mappings":"AAAO,MAAMA,eAAe;AACrB,MAAMC,iBAAiB;AACvB,MAAMC,6BAA6B;AACnC,MAAMC,gBAAgB;AACtB,MAAMC,kCAAkC;AACxC,MAAMC,gCAAgC;AACtC,MAAMC,8BAA8B;AACpC,MAAMC,4BAA4B;AAClC,MAAMC,wBAAwB;AAC9B,MAAMC,wBAAwB;AAC9B,MAAMC,wBAAwB"}
@@ -1,14 +1,15 @@
1
- export class MessageOrigin {
2
- constructor(getWindow, origin) {
3
- this.getWindow = getWindow;
4
- this.origin = origin;
5
- }
6
- matches(event) {
7
- return event.origin === this.origin;
8
- }
9
- get window() {
10
- return this.getWindow();
11
- }
1
+ class MessageOrigin {
2
+ constructor(getWindow, origin){
3
+ this.getWindow = getWindow;
4
+ this.origin = origin;
5
+ }
6
+ matches(event) {
7
+ return event.origin === this.origin;
8
+ }
9
+ get window() {
10
+ return this.getWindow();
11
+ }
12
12
  }
13
+ export { MessageOrigin };
13
14
 
14
15
  //# sourceMappingURL=MessageOrigin.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["MessageOrigin","constructor","getWindow","origin","matches","event","window"],"sources":["MessageOrigin.ts"],"sourcesContent":["export class MessageOrigin {\n private readonly getWindow: () => Window;\n public readonly origin: string;\n\n constructor(getWindow: () => Window, origin: string) {\n this.getWindow = getWindow;\n this.origin = origin;\n }\n\n matches(event: MessageEvent): boolean {\n return event.origin === this.origin;\n }\n\n get window() {\n return this.getWindow();\n }\n}\n"],"mappings":"AAAA,OAAO,MAAMA,aAAa,CAAC;EAIvBC,WAAWA,CAACC,SAAuB,EAAEC,MAAc,EAAE;IACjD,IAAI,CAACD,SAAS,GAAGA,SAAS;IAC1B,IAAI,CAACC,MAAM,GAAGA,MAAM;EACxB;EAEAC,OAAOA,CAACC,KAAmB,EAAW;IAClC,OAAOA,KAAK,CAACF,MAAM,KAAK,IAAI,CAACA,MAAM;EACvC;EAEA,IAAIG,MAAMA,CAAA,EAAG;IACT,OAAO,IAAI,CAACJ,SAAS,CAAC,CAAC;EAC3B;AACJ","ignoreList":[]}
1
+ {"version":3,"file":"messenger/MessageOrigin.js","sources":["../../src/messenger/MessageOrigin.ts"],"sourcesContent":["export class MessageOrigin {\n private readonly getWindow: () => Window;\n public readonly origin: string;\n\n constructor(getWindow: () => Window, origin: string) {\n this.getWindow = getWindow;\n this.origin = origin;\n }\n\n matches(event: MessageEvent): boolean {\n return event.origin === this.origin;\n }\n\n get window() {\n return this.getWindow();\n }\n}\n"],"names":["MessageOrigin","getWindow","origin","event"],"mappings":"AAAO,MAAMA;IAIT,YAAYC,SAAuB,EAAEC,MAAc,CAAE;QACjD,IAAI,CAAC,SAAS,GAAGD;QACjB,IAAI,CAAC,MAAM,GAAGC;IAClB;IAEA,QAAQC,KAAmB,EAAW;QAClC,OAAOA,MAAM,MAAM,KAAK,IAAI,CAAC,MAAM;IACvC;IAEA,IAAI,SAAS;QACT,OAAO,IAAI,CAAC,SAAS;IACzB;AACJ"}
@@ -1,80 +1,69 @@
1
1
  import { isMatch } from "matcher";
2
2
  import { logger } from "../Logger.js";
3
- const ignored = ["preview.mouse.move", "preview.component.register", "preview.scroll", "preview.viewport", "preview.viewport.change.start", "preview.viewport.change.end"];
4
- export class Messenger {
5
- listeners = new Map();
6
- constructor(source, target,
7
- // Pattern to filter events this Messenger handles.
8
- pattern) {
9
- this.source = source;
10
- this.target = target;
11
- this.pattern = pattern;
12
- this.prefixGlob = pattern.replace(/\*+$/, "");
13
- this.handleMessage = this.handleMessage.bind(this);
14
- this.source.window.addEventListener("message", this.handleMessage);
15
- }
16
- handleMessage(event) {
17
- const {
18
- type,
19
- payload
20
- } = event.data || {};
21
- if (!this.target.matches(event)) {
22
- return;
3
+ const ignored = [
4
+ "preview.mouse.move",
5
+ "preview.component.register",
6
+ "preview.scroll",
7
+ "preview.viewport",
8
+ "preview.viewport.change.start",
9
+ "preview.viewport.change.end"
10
+ ];
11
+ class Messenger {
12
+ constructor(source, target, pattern){
13
+ this.source = source;
14
+ this.target = target;
15
+ this.listeners = new Map();
16
+ this.pattern = pattern;
17
+ this.prefixGlob = pattern.replace(/\*+$/, "");
18
+ this.handleMessage = this.handleMessage.bind(this);
19
+ this.source.window.addEventListener("message", this.handleMessage);
23
20
  }
24
- if (!type || !isMatch(type, this.pattern)) {
25
- return;
21
+ handleMessage(event) {
22
+ const { type, payload } = event.data || {};
23
+ if (!this.target.matches(event)) return;
24
+ if (!type || !isMatch(type, this.pattern)) return;
25
+ const logicalType = this.stripPrefix(type);
26
+ if (!this.isIgnored(logicalType)) logger.debug({
27
+ type,
28
+ payload
29
+ }, `${this.getTime()} --> [${this.source.origin}][${logicalType}]`);
30
+ const handlers = this.listeners.get(logicalType);
31
+ if (handlers) handlers.forEach((fn)=>fn(payload, logicalType));
26
32
  }
27
- const logicalType = this.stripPrefix(type);
28
- if (!this.isIgnored(logicalType)) {
29
- logger.debug({
30
- type,
31
- payload
32
- }, `${this.getTime()} --> [${this.source.origin}][${logicalType}]`);
33
+ stripPrefix(fullType) {
34
+ return fullType.startsWith(this.prefixGlob) ? fullType.slice(this.prefixGlob.length) : fullType;
33
35
  }
34
- const handlers = this.listeners.get(logicalType);
35
- if (handlers) {
36
- handlers.forEach(fn => fn(payload, logicalType));
36
+ isIgnored(logicalType) {
37
+ return ignored.includes(logicalType);
37
38
  }
38
- }
39
- stripPrefix(fullType) {
40
- return fullType.startsWith(this.prefixGlob) ? fullType.slice(this.prefixGlob.length) : fullType;
41
- }
42
- isIgnored(logicalType) {
43
- return ignored.includes(logicalType);
44
- }
45
- on(logicalType, handler) {
46
- if (!this.listeners.has(logicalType)) {
47
- this.listeners.set(logicalType, new Set());
39
+ on(logicalType, handler) {
40
+ if (!this.listeners.has(logicalType)) this.listeners.set(logicalType, new Set());
41
+ this.listeners.get(logicalType).add(handler);
42
+ return ()=>{
43
+ const listeners = this.listeners.get(logicalType);
44
+ if (listeners) listeners.delete(handler);
45
+ };
48
46
  }
49
- this.listeners.get(logicalType).add(handler);
50
- return () => {
51
- const listeners = this.listeners.get(logicalType);
52
- if (listeners) {
53
- listeners.delete(handler);
54
- }
55
- };
56
- }
57
- send(logicalType, payload) {
58
- const fullType = this.prefixGlob + logicalType;
59
- if (!this.isIgnored(logicalType)) {
60
- logger.debug({
61
- type: fullType,
62
- payload
63
- }, `${this.getTime()} <-- [${this.source.origin}][${logicalType}]`);
47
+ send(logicalType, payload) {
48
+ const fullType = this.prefixGlob + logicalType;
49
+ if (!this.isIgnored(logicalType)) logger.debug({
50
+ type: fullType,
51
+ payload
52
+ }, `${this.getTime()} <-- [${this.source.origin}][${logicalType}]`);
53
+ this.target.window.postMessage({
54
+ type: fullType,
55
+ payload
56
+ }, this.target.origin);
57
+ }
58
+ dispose() {
59
+ this.source.window.removeEventListener("message", this.handleMessage);
60
+ this.listeners.clear();
61
+ }
62
+ getTime() {
63
+ const date = new Date();
64
+ return `${date.getHours()}:${date.getMinutes()}:${date.getSeconds()}.${date.getMilliseconds()}`;
64
65
  }
65
- this.target.window.postMessage({
66
- type: fullType,
67
- payload
68
- }, this.target.origin);
69
- }
70
- dispose() {
71
- this.source.window.removeEventListener("message", this.handleMessage);
72
- this.listeners.clear();
73
- }
74
- getTime() {
75
- const date = new Date();
76
- return `${date.getHours()}:${date.getMinutes()}:${date.getSeconds()}.${date.getMilliseconds()}`;
77
- }
78
66
  }
67
+ export { Messenger };
79
68
 
80
69
  //# sourceMappingURL=Messenger.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["isMatch","logger","ignored","Messenger","listeners","Map","constructor","source","target","pattern","prefixGlob","replace","handleMessage","bind","window","addEventListener","event","type","payload","data","matches","logicalType","stripPrefix","isIgnored","debug","getTime","origin","handlers","get","forEach","fn","fullType","startsWith","slice","length","includes","on","handler","has","set","Set","add","delete","send","postMessage","dispose","removeEventListener","clear","date","Date","getHours","getMinutes","getSeconds","getMilliseconds"],"sources":["Messenger.ts"],"sourcesContent":["import { isMatch } from \"matcher\";\nimport type { MessageOrigin } from \"./MessageOrigin.js\";\nimport { logger } from \"../Logger.js\";\n\nexport type Message<T = any> = {\n type: string;\n payload: T;\n};\n\ntype Handler<T = any> = (payload: T, logicalType: string, wildcardMatch?: string) => void;\n\nconst ignored = [\n \"preview.mouse.move\",\n \"preview.component.register\",\n \"preview.scroll\",\n \"preview.viewport\",\n \"preview.viewport.change.start\",\n \"preview.viewport.change.end\"\n];\n\nexport class Messenger {\n private listeners = new Map<string, Set<Handler>>();\n private readonly pattern: string;\n private readonly prefixGlob: string;\n\n constructor(\n private source: MessageOrigin,\n private target: MessageOrigin,\n // Pattern to filter events this Messenger handles.\n pattern: string\n ) {\n this.pattern = pattern;\n this.prefixGlob = pattern.replace(/\\*+$/, \"\");\n this.handleMessage = this.handleMessage.bind(this);\n this.source.window.addEventListener(\"message\", this.handleMessage);\n }\n\n private handleMessage(event: MessageEvent) {\n const { type, payload } = event.data || {};\n if (!this.target.matches(event)) {\n return;\n }\n\n if (!type || !isMatch(type, this.pattern)) {\n return;\n }\n\n const logicalType = this.stripPrefix(type);\n\n if (!this.isIgnored(logicalType)) {\n logger.debug(\n {\n type,\n payload\n },\n `${this.getTime()} --> [${this.source.origin}][${logicalType}]`\n );\n }\n\n const handlers = this.listeners.get(logicalType);\n if (handlers) {\n handlers.forEach(fn => fn(payload, logicalType));\n }\n }\n\n private stripPrefix(fullType: string): string {\n return fullType.startsWith(this.prefixGlob)\n ? fullType.slice(this.prefixGlob.length)\n : fullType;\n }\n\n private isIgnored(logicalType: string): boolean {\n return ignored.includes(logicalType);\n }\n\n on<T = any>(logicalType: string, handler: Handler<T>) {\n if (!this.listeners.has(logicalType)) {\n this.listeners.set(logicalType, new Set());\n }\n this.listeners.get(logicalType)!.add(handler);\n return () => {\n const listeners = this.listeners.get(logicalType);\n if (listeners) {\n listeners.delete(handler);\n }\n };\n }\n\n send<T = any>(logicalType: string, payload?: T) {\n const fullType = this.prefixGlob + logicalType;\n\n if (!this.isIgnored(logicalType)) {\n logger.debug(\n {\n type: fullType,\n payload\n },\n `${this.getTime()} <-- [${this.source.origin}][${logicalType}]`\n );\n }\n\n this.target.window.postMessage({ type: fullType, payload }, this.target.origin);\n }\n\n dispose() {\n this.source.window.removeEventListener(\"message\", this.handleMessage);\n this.listeners.clear();\n }\n\n getTime() {\n const date = new Date();\n return `${date.getHours()}:${date.getMinutes()}:${date.getSeconds()}.${date.getMilliseconds()}`;\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"messenger/Messenger.js","sources":["../../src/messenger/Messenger.ts"],"sourcesContent":["import { isMatch } from \"matcher\";\nimport type { MessageOrigin } from \"./MessageOrigin.js\";\nimport { logger } from \"../Logger.js\";\n\nexport type Message<T = any> = {\n type: string;\n payload: T;\n};\n\ntype Handler<T = any> = (payload: T, logicalType: string, wildcardMatch?: string) => void;\n\nconst ignored = [\n \"preview.mouse.move\",\n \"preview.component.register\",\n \"preview.scroll\",\n \"preview.viewport\",\n \"preview.viewport.change.start\",\n \"preview.viewport.change.end\"\n];\n\nexport class Messenger {\n private listeners = new Map<string, Set<Handler>>();\n private readonly pattern: string;\n private readonly prefixGlob: string;\n\n constructor(\n private source: MessageOrigin,\n private target: MessageOrigin,\n // Pattern to filter events this Messenger handles.\n pattern: string\n ) {\n this.pattern = pattern;\n this.prefixGlob = pattern.replace(/\\*+$/, \"\");\n this.handleMessage = this.handleMessage.bind(this);\n this.source.window.addEventListener(\"message\", this.handleMessage);\n }\n\n private handleMessage(event: MessageEvent) {\n const { type, payload } = event.data || {};\n if (!this.target.matches(event)) {\n return;\n }\n\n if (!type || !isMatch(type, this.pattern)) {\n return;\n }\n\n const logicalType = this.stripPrefix(type);\n\n if (!this.isIgnored(logicalType)) {\n logger.debug(\n {\n type,\n payload\n },\n `${this.getTime()} --> [${this.source.origin}][${logicalType}]`\n );\n }\n\n const handlers = this.listeners.get(logicalType);\n if (handlers) {\n handlers.forEach(fn => fn(payload, logicalType));\n }\n }\n\n private stripPrefix(fullType: string): string {\n return fullType.startsWith(this.prefixGlob)\n ? fullType.slice(this.prefixGlob.length)\n : fullType;\n }\n\n private isIgnored(logicalType: string): boolean {\n return ignored.includes(logicalType);\n }\n\n on<T = any>(logicalType: string, handler: Handler<T>) {\n if (!this.listeners.has(logicalType)) {\n this.listeners.set(logicalType, new Set());\n }\n this.listeners.get(logicalType)!.add(handler);\n return () => {\n const listeners = this.listeners.get(logicalType);\n if (listeners) {\n listeners.delete(handler);\n }\n };\n }\n\n send<T = any>(logicalType: string, payload?: T) {\n const fullType = this.prefixGlob + logicalType;\n\n if (!this.isIgnored(logicalType)) {\n logger.debug(\n {\n type: fullType,\n payload\n },\n `${this.getTime()} <-- [${this.source.origin}][${logicalType}]`\n );\n }\n\n this.target.window.postMessage({ type: fullType, payload }, this.target.origin);\n }\n\n dispose() {\n this.source.window.removeEventListener(\"message\", this.handleMessage);\n this.listeners.clear();\n }\n\n getTime() {\n const date = new Date();\n return `${date.getHours()}:${date.getMinutes()}:${date.getSeconds()}.${date.getMilliseconds()}`;\n }\n}\n"],"names":["ignored","Messenger","source","target","pattern","Map","event","type","payload","isMatch","logicalType","logger","handlers","fn","fullType","handler","Set","listeners","date","Date"],"mappings":";;AAWA,MAAMA,UAAU;IACZ;IACA;IACA;IACA;IACA;IACA;CACH;AAEM,MAAMC;IAKT,YACYC,MAAqB,EACrBC,MAAqB,EAE7BC,OAAe,CACjB;aAJUF,MAAM,GAANA;aACAC,MAAM,GAANA;aANJ,SAAS,GAAG,IAAIE;QAUpB,IAAI,CAAC,OAAO,GAAGD;QACf,IAAI,CAAC,UAAU,GAAGA,QAAQ,OAAO,CAAC,QAAQ;QAC1C,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI;QACjD,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,gBAAgB,CAAC,WAAW,IAAI,CAAC,aAAa;IACrE;IAEQ,cAAcE,KAAmB,EAAE;QACvC,MAAM,EAAEC,IAAI,EAAEC,OAAO,EAAE,GAAGF,MAAM,IAAI,IAAI,CAAC;QACzC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAACA,QACrB;QAGJ,IAAI,CAACC,QAAQ,CAACE,QAAQF,MAAM,IAAI,CAAC,OAAO,GACpC;QAGJ,MAAMG,cAAc,IAAI,CAAC,WAAW,CAACH;QAErC,IAAI,CAAC,IAAI,CAAC,SAAS,CAACG,cAChBC,OAAO,KAAK,CACR;YACIJ;YACAC;QACJ,GACA,GAAG,IAAI,CAAC,OAAO,GAAG,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,EAAEE,YAAY,CAAC,CAAC;QAIvE,MAAME,WAAW,IAAI,CAAC,SAAS,CAAC,GAAG,CAACF;QACpC,IAAIE,UACAA,SAAS,OAAO,CAACC,CAAAA,KAAMA,GAAGL,SAASE;IAE3C;IAEQ,YAAYI,QAAgB,EAAU;QAC1C,OAAOA,SAAS,UAAU,CAAC,IAAI,CAAC,UAAU,IACpCA,SAAS,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,IACrCA;IACV;IAEQ,UAAUJ,WAAmB,EAAW;QAC5C,OAAOV,QAAQ,QAAQ,CAACU;IAC5B;IAEA,GAAYA,WAAmB,EAAEK,OAAmB,EAAE;QAClD,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAACL,cACpB,IAAI,CAAC,SAAS,CAAC,GAAG,CAACA,aAAa,IAAIM;QAExC,IAAI,CAAC,SAAS,CAAC,GAAG,CAACN,aAAc,GAAG,CAACK;QACrC,OAAO;YACH,MAAME,YAAY,IAAI,CAAC,SAAS,CAAC,GAAG,CAACP;YACrC,IAAIO,WACAA,UAAU,MAAM,CAACF;QAEzB;IACJ;IAEA,KAAcL,WAAmB,EAAEF,OAAW,EAAE;QAC5C,MAAMM,WAAW,IAAI,CAAC,UAAU,GAAGJ;QAEnC,IAAI,CAAC,IAAI,CAAC,SAAS,CAACA,cAChBC,OAAO,KAAK,CACR;YACI,MAAMG;YACNN;QACJ,GACA,GAAG,IAAI,CAAC,OAAO,GAAG,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,EAAEE,YAAY,CAAC,CAAC;QAIvE,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC;YAAE,MAAMI;YAAUN;QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM;IAClF;IAEA,UAAU;QACN,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,mBAAmB,CAAC,WAAW,IAAI,CAAC,aAAa;QACpE,IAAI,CAAC,SAAS,CAAC,KAAK;IACxB;IAEA,UAAU;QACN,MAAMU,OAAO,IAAIC;QACjB,OAAO,GAAGD,KAAK,QAAQ,GAAG,CAAC,EAAEA,KAAK,UAAU,GAAG,CAAC,EAAEA,KAAK,UAAU,GAAG,CAAC,EAAEA,KAAK,eAAe,IAAI;IACnG;AACJ"}
@@ -1,4 +1,2 @@
1
1
  export * from "./MessageOrigin.js";
2
2
  export * from "./Messenger.js";
3
-
4
- //# sourceMappingURL=index.js.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@webiny/website-builder-sdk",
3
- "version": "0.0.0-unstable.e6f0dc8ca7",
3
+ "version": "0.0.0-unstable.eb81deee7e",
4
4
  "type": "module",
5
5
  "repository": {
6
6
  "type": "git",
@@ -12,6 +12,8 @@
12
12
  "author": "Pavel Denisjuk",
13
13
  "license": "MIT",
14
14
  "dependencies": {
15
+ "@webiny/sdk": "0.0.0-unstable.eb81deee7e",
16
+ "@webiny/theme-common": "0.0.0-unstable.eb81deee7e",
15
17
  "csstype": "3.2.3",
16
18
  "deep-equal": "2.2.3",
17
19
  "deepmerge": "4.3.1",
@@ -20,8 +22,8 @@
20
22
  "is-hotkey": "0.2.0",
21
23
  "lodash": "4.18.1",
22
24
  "matcher": "6.0.0",
23
- "mobx": "6.15.3",
24
- "nanoid": "5.1.11",
25
+ "mobx": "7.0.3",
26
+ "nanoid": "6.0.1",
25
27
  "nanoid-dictionary": "5.0.0",
26
28
  "pino": "10.3.1",
27
29
  "pino-pretty": "13.1.3"
@@ -29,13 +31,12 @@
29
31
  "devDependencies": {
30
32
  "@types/deep-equal": "1.0.4",
31
33
  "@types/is-hotkey": "0.1.10",
32
- "@webiny/build-tools": "0.0.0-unstable.e6f0dc8ca7",
33
- "typescript": "6.0.3",
34
- "vitest": "4.1.5"
34
+ "@webiny/build-tools": "0.0.0-unstable.eb81deee7e",
35
+ "typescript": "7.0.2",
36
+ "vitest": "4.1.11"
35
37
  },
36
38
  "publishConfig": {
37
- "access": "public",
38
- "directory": "dist"
39
+ "access": "public"
39
40
  },
40
41
  "adio": {
41
42
  "ignore": {
@@ -44,5 +45,7 @@
44
45
  ]
45
46
  }
46
47
  },
47
- "gitHead": "e6f0dc8ca741c1fcc3fec9a5b9e86fdd49544641"
48
+ "webiny": {
49
+ "publishFrom": "dist"
50
+ }
48
51
  }
@@ -1,10 +1,9 @@
1
1
  import { contentSdk } from "./ContentSdk.js";
2
- export const registerComponentGroup = group => {
3
- const editingSdk = contentSdk.getEditingSdk();
4
- if (!editingSdk) {
5
- return;
6
- }
7
- editingSdk.registerComponentGroup(group);
2
+ const registerComponentGroup = (group)=>{
3
+ const editingSdk = contentSdk.getEditingSdk();
4
+ if (!editingSdk) return;
5
+ editingSdk.registerComponentGroup(group);
8
6
  };
7
+ export { registerComponentGroup };
9
8
 
10
9
  //# sourceMappingURL=registerComponentGroup.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["contentSdk","registerComponentGroup","group","editingSdk","getEditingSdk"],"sources":["registerComponentGroup.ts"],"sourcesContent":["import type { ComponentGroup } from \"./types.js\";\nimport { contentSdk } from \"./ContentSdk.js\";\n\nexport const registerComponentGroup = (group: ComponentGroup) => {\n const editingSdk = contentSdk.getEditingSdk();\n\n if (!editingSdk) {\n return;\n }\n\n editingSdk.registerComponentGroup(group);\n};\n"],"mappings":"AACA,SAASA,UAAU;AAEnB,OAAO,MAAMC,sBAAsB,GAAIC,KAAqB,IAAK;EAC7D,MAAMC,UAAU,GAAGH,UAAU,CAACI,aAAa,CAAC,CAAC;EAE7C,IAAI,CAACD,UAAU,EAAE;IACb;EACJ;EAEAA,UAAU,CAACF,sBAAsB,CAACC,KAAK,CAAC;AAC5C,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"registerComponentGroup.js","sources":["../src/registerComponentGroup.ts"],"sourcesContent":["import type { ComponentGroup } from \"./types.js\";\nimport { contentSdk } from \"./ContentSdk.js\";\n\nexport const registerComponentGroup = (group: ComponentGroup) => {\n const editingSdk = contentSdk.getEditingSdk();\n\n if (!editingSdk) {\n return;\n }\n\n editingSdk.registerComponentGroup(group);\n};\n"],"names":["registerComponentGroup","group","editingSdk","contentSdk"],"mappings":";AAGO,MAAMA,yBAAyB,CAACC;IACnC,MAAMC,aAAaC,WAAW,aAAa;IAE3C,IAAI,CAACD,YACD;IAGJA,WAAW,sBAAsB,CAACD;AACtC"}
@@ -0,0 +1,26 @@
1
+ import type { TokenReference, ValueBinding } from "./types.js";
2
+ /**
3
+ * Design token references in element styles — see the Theme design brief, section 7.1.
4
+ *
5
+ * Content stores a *structured* reference, never a resolved value and never a raw CSS variable
6
+ * string. Storing `var(--wby-color-surface-page)` would bake the naming convention into customer
7
+ * data, making a prefix change a data migration; and Admin needs the structured form to show which
8
+ * token is selected when a picker is reopened.
9
+ *
10
+ * The renderer converts a reference to `var(--wby-…)` at output time. That conversion lives here so
11
+ * there is exactly one place that knows the mapping.
12
+ */
13
+ export declare const isTokenBinding: (binding: ValueBinding | undefined) => binding is ValueBinding & {
14
+ token: TokenReference;
15
+ };
16
+ /**
17
+ * Emits the CSS value for a reference.
18
+ *
19
+ * The stored fallback is emitted as the `var()` second argument. That matters when no theme is
20
+ * active — a variable that resolves to nothing makes the browser drop the whole declaration, so
21
+ * content authored under a theme would visibly lose its colour the moment the theme is deactivated.
22
+ * With a fallback it keeps rendering the value it had when it was picked.
23
+ */
24
+ export declare const tokenToCssValue: (reference: TokenReference) => string;
25
+ /** Builds a reference, capturing the currently resolved value as the fallback. */
26
+ export declare const createTokenReference: (path: string, fallback?: string) => TokenReference;
@@ -0,0 +1,15 @@
1
+ import { toCssVariableName } from "@webiny/theme-common/naming/cssVariable.js";
2
+ const isTokenBinding = (binding)=>Boolean(binding?.token?.path);
3
+ const tokenToCssValue = (reference)=>{
4
+ const variable = toCssVariableName(reference.path);
5
+ return reference.fallback ? `var(${variable}, ${reference.fallback})` : `var(${variable})`;
6
+ };
7
+ const createTokenReference = (path, fallback)=>fallback ? {
8
+ path,
9
+ fallback
10
+ } : {
11
+ path
12
+ };
13
+ export { createTokenReference, isTokenBinding, tokenToCssValue };
14
+
15
+ //# sourceMappingURL=tokenBinding.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tokenBinding.js","sources":["../src/tokenBinding.ts"],"sourcesContent":["import { toCssVariableName } from \"@webiny/theme-common/naming/cssVariable.js\";\nimport type { TokenReference, ValueBinding } from \"~/types.js\";\n\n/**\n * Design token references in element styles — see the Theme design brief, section 7.1.\n *\n * Content stores a *structured* reference, never a resolved value and never a raw CSS variable\n * string. Storing `var(--wby-color-surface-page)` would bake the naming convention into customer\n * data, making a prefix change a data migration; and Admin needs the structured form to show which\n * token is selected when a picker is reopened.\n *\n * The renderer converts a reference to `var(--wby-…)` at output time. That conversion lives here so\n * there is exactly one place that knows the mapping.\n */\n\nexport const isTokenBinding = (\n binding: ValueBinding | undefined\n): binding is ValueBinding & { token: TokenReference } => {\n return Boolean(binding?.token?.path);\n};\n\n/**\n * Emits the CSS value for a reference.\n *\n * The stored fallback is emitted as the `var()` second argument. That matters when no theme is\n * active — a variable that resolves to nothing makes the browser drop the whole declaration, so\n * content authored under a theme would visibly lose its colour the moment the theme is deactivated.\n * With a fallback it keeps rendering the value it had when it was picked.\n */\nexport const tokenToCssValue = (reference: TokenReference): string => {\n const variable = toCssVariableName(reference.path);\n\n return reference.fallback ? `var(${variable}, ${reference.fallback})` : `var(${variable})`;\n};\n\n/** Builds a reference, capturing the currently resolved value as the fallback. */\nexport const createTokenReference = (path: string, fallback?: string): TokenReference => {\n return fallback ? { path, fallback } : { path };\n};\n"],"names":["isTokenBinding","binding","Boolean","tokenToCssValue","reference","variable","toCssVariableName","createTokenReference","path","fallback"],"mappings":";AAeO,MAAMA,iBAAiB,CAC1BC,UAEOC,QAAQD,SAAS,OAAO;AAW5B,MAAME,kBAAkB,CAACC;IAC5B,MAAMC,WAAWC,kBAAkBF,UAAU,IAAI;IAEjD,OAAOA,UAAU,QAAQ,GAAG,CAAC,IAAI,EAAEC,SAAS,EAAE,EAAED,UAAU,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,EAAEC,SAAS,CAAC,CAAC;AAC9F;AAGO,MAAME,uBAAuB,CAACC,MAAcC,WACxCA,WAAW;QAAED;QAAMC;IAAS,IAAI;QAAED;IAAK"}
@@ -0,0 +1 @@
1
+ export {};