@webiny/website-builder-react 0.0.0-unstable.6f45466a1d → 0.0.0-unstable.7be00a75a9

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 (82) hide show
  1. package/components/ConnectToEditor.js +16 -18
  2. package/components/ConnectToEditor.js.map +1 -1
  3. package/components/DocumentFragment.js +5 -7
  4. package/components/DocumentFragment.js.map +1 -1
  5. package/components/DocumentRenderer.js +37 -46
  6. package/components/DocumentRenderer.js.map +1 -1
  7. package/components/DocumentStoreProvider.js +15 -21
  8. package/components/DocumentStoreProvider.js.map +1 -1
  9. package/components/EditingElementRenderer/EditingElementRenderer.js +31 -35
  10. package/components/EditingElementRenderer/EditingElementRenderer.js.map +1 -1
  11. package/components/EditingElementRenderer/EditingElementRenderer.presenter.js +29 -35
  12. package/components/EditingElementRenderer/EditingElementRenderer.presenter.js.map +1 -1
  13. package/components/EditingElementRenderer/index.js +0 -2
  14. package/components/ElementIndexProvider.js +9 -14
  15. package/components/ElementIndexProvider.js.map +1 -1
  16. package/components/ElementRenderer.js +11 -16
  17. package/components/ElementRenderer.js.map +1 -1
  18. package/components/ElementSlot.js +6 -9
  19. package/components/ElementSlot.js.map +1 -1
  20. package/components/ElementSlotDepthProvider.js +9 -14
  21. package/components/ElementSlotDepthProvider.js.map +1 -1
  22. package/components/FragmentsProvider.js +30 -36
  23. package/components/FragmentsProvider.js.map +1 -1
  24. package/components/LiveElementRenderer.js +53 -68
  25. package/components/LiveElementRenderer.js.map +1 -1
  26. package/components/LiveElementSlot.js +12 -14
  27. package/components/LiveElementSlot.js.map +1 -1
  28. package/components/PreviewElementSlot.js +17 -23
  29. package/components/PreviewElementSlot.js.map +1 -1
  30. package/components/index.js +0 -2
  31. package/components/useBindingsForElement.d.ts +80 -48
  32. package/components/useBindingsForElement.js +13 -11
  33. package/components/useBindingsForElement.js.map +1 -1
  34. package/components/useDocumentState.js +4 -3
  35. package/components/useDocumentState.js.map +1 -1
  36. package/components/useSelectFromState.js +29 -35
  37. package/components/useSelectFromState.js.map +1 -1
  38. package/components/useViewportInfo.js +5 -6
  39. package/components/useViewportInfo.js.map +1 -1
  40. package/createComponent.js +26 -30
  41. package/createComponent.js.map +1 -1
  42. package/createComponent.test.js +108 -119
  43. package/createComponent.test.js.map +1 -1
  44. package/editorComponents/Box.js +3 -6
  45. package/editorComponents/Box.js.map +1 -1
  46. package/editorComponents/Box.manifest.js +15 -14
  47. package/editorComponents/Box.manifest.js.map +1 -1
  48. package/editorComponents/Fragment.js +23 -32
  49. package/editorComponents/Fragment.js.map +1 -1
  50. package/editorComponents/Fragment.manifest.js +14 -11
  51. package/editorComponents/Fragment.manifest.js.map +1 -1
  52. package/editorComponents/Grid.js +33 -61
  53. package/editorComponents/Grid.js.map +1 -1
  54. package/editorComponents/Grid.manifest.js +163 -166
  55. package/editorComponents/Grid.manifest.js.map +1 -1
  56. package/editorComponents/GridColumn.js +3 -6
  57. package/editorComponents/GridColumn.js.map +1 -1
  58. package/editorComponents/GridColumn.manifest.js +20 -17
  59. package/editorComponents/GridColumn.manifest.js.map +1 -1
  60. package/editorComponents/Image.js +99 -119
  61. package/editorComponents/Image.js.map +1 -1
  62. package/editorComponents/Image.manifest.js +33 -32
  63. package/editorComponents/Image.manifest.js.map +1 -1
  64. package/editorComponents/Lexical.js +13 -21
  65. package/editorComponents/Lexical.js.map +1 -1
  66. package/editorComponents/Lexical.manifest.js +17 -14
  67. package/editorComponents/Lexical.manifest.js.map +1 -1
  68. package/editorComponents/Root.js +3 -6
  69. package/editorComponents/Root.js.map +1 -1
  70. package/editorComponents/Root.manifest.js +7 -6
  71. package/editorComponents/Root.manifest.js.map +1 -1
  72. package/editorComponents/index.js +10 -1
  73. package/editorComponents/index.js.map +1 -1
  74. package/index.d.ts +2 -2
  75. package/index.js +1 -3
  76. package/package.json +14 -14
  77. package/types.d.ts +36 -1
  78. package/types.js +0 -3
  79. package/components/EditingElementRenderer/index.js.map +0 -1
  80. package/components/index.js.map +0 -1
  81. package/index.js.map +0 -1
  82. package/types.js.map +0 -1
@@ -5,6 +5,15 @@ import { Lexical } from "./Lexical.manifest.js";
5
5
  import { Root } from "./Root.manifest.js";
6
6
  import { GridColumn } from "./GridColumn.manifest.js";
7
7
  import { Fragment } from "./Fragment.manifest.js";
8
- export const editorComponents = [Root, Box, Grid, GridColumn, Image, Lexical, Fragment];
8
+ const editorComponents = [
9
+ Root,
10
+ Box,
11
+ Grid,
12
+ GridColumn,
13
+ Image,
14
+ Lexical,
15
+ Fragment
16
+ ];
17
+ export { editorComponents };
9
18
 
10
19
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["Box","Grid","Image","Lexical","Root","GridColumn","Fragment","editorComponents"],"sources":["index.ts"],"sourcesContent":["import { Box } from \"./Box.manifest.js\";\nimport { Grid } from \"./Grid.manifest.js\";\nimport { Image } from \"./Image.manifest.js\";\nimport { Lexical } from \"./Lexical.manifest.js\";\nimport { Root } from \"./Root.manifest.js\";\nimport { GridColumn } from \"./GridColumn.manifest.js\";\nimport { Fragment } from \"./Fragment.manifest.js\";\n\nexport const editorComponents = [Root, Box, Grid, GridColumn, Image, Lexical, Fragment];\n"],"mappings":"AAAA,SAASA,GAAG;AACZ,SAASC,IAAI;AACb,SAASC,KAAK;AACd,SAASC,OAAO;AAChB,SAASC,IAAI;AACb,SAASC,UAAU;AACnB,SAASC,QAAQ;AAEjB,OAAO,MAAMC,gBAAgB,GAAG,CAACH,IAAI,EAAEJ,GAAG,EAAEC,IAAI,EAAEI,UAAU,EAAEH,KAAK,EAAEC,OAAO,EAAEG,QAAQ,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"editorComponents/index.js","sources":["../../src/editorComponents/index.ts"],"sourcesContent":["import { Box } from \"./Box.manifest.js\";\nimport { Grid } from \"./Grid.manifest.js\";\nimport { Image } from \"./Image.manifest.js\";\nimport { Lexical } from \"./Lexical.manifest.js\";\nimport { Root } from \"./Root.manifest.js\";\nimport { GridColumn } from \"./GridColumn.manifest.js\";\nimport { Fragment } from \"./Fragment.manifest.js\";\n\nexport const editorComponents = [Root, Box, Grid, GridColumn, Image, Lexical, Fragment];\n"],"names":["editorComponents","Root","Box","Grid","GridColumn","Image","Lexical","Fragment"],"mappings":";;;;;;;AAQO,MAAMA,mBAAmB;IAACC;IAAMC;IAAKC;IAAMC;IAAYC;IAAOC;IAASC;CAAS"}
package/index.d.ts CHANGED
@@ -1,4 +1,4 @@
1
1
  export * from "./components/index.js";
2
2
  export * from "./createComponent.js";
3
- export { createTextInput, createLongTextInput, createNumberInput, createBooleanInput, createColorInput, createFileInput, createDateInput, createLexicalInput, createSelectInput, createRadioInput, createObjectInput, createTagsInput, createSlotInput, createInput, createElement, createTheme, contentSdk, environment, setHeadersProvider, getHeadersProvider, registerComponentGroup, type CssProperties, type Document, type DocumentElement, type Breakpoint, type CreateElementParams, type ContentSDKConfig, type ComponentManifest, type ComponentInput, type WebsiteBuilderThemeInput, StyleSettings } from "@webiny/website-builder-sdk";
4
- export type { ComponentProps, ComponentPropsWithChildren } from "./types.js";
3
+ export { createTextInput, createLongTextInput, createNumberInput, createBooleanInput, createColorInput, createFileInput, createDateInput, createLexicalInput, createSelectInput, createRadioInput, createObjectInput, createTagsInput, createSlotInput, createInput, createElement, createTheme, contentSdk, environment, setHeadersProvider, getHeadersProvider, registerComponentGroup, type CssProperties, type Document, type DocumentElement, type Breakpoint, type CreateElementParams, type ContentSDKConfig, type ComponentManifest, type ComponentInput, type ComponentConstraint, type WebsiteBuilderThemeInput, StyleSettings } from "@webiny/website-builder-sdk";
4
+ export type { ComponentProps, ComponentPropsWithChildren, InferManifest, InferComponentChange, InferDescendantChange } from "./types.js";
package/index.js CHANGED
@@ -1,5 +1,3 @@
1
1
  export * from "./components/index.js";
2
2
  export * from "./createComponent.js";
3
- export { createTextInput, createLongTextInput, createNumberInput, createBooleanInput, createColorInput, createFileInput, createDateInput, createLexicalInput, createSelectInput, createRadioInput, createObjectInput, createTagsInput, createSlotInput, createInput, createElement, createTheme, contentSdk, environment, setHeadersProvider, getHeadersProvider, registerComponentGroup, StyleSettings } from "@webiny/website-builder-sdk";
4
-
5
- //# sourceMappingURL=index.js.map
3
+ export { StyleSettings, contentSdk, createBooleanInput, createColorInput, createDateInput, createElement, createFileInput, createInput, createLexicalInput, createLongTextInput, createNumberInput, createObjectInput, createRadioInput, createSelectInput, createSlotInput, createTagsInput, createTextInput, createTheme, environment, getHeadersProvider, registerComponentGroup, setHeadersProvider } from "@webiny/website-builder-sdk";
package/package.json CHANGED
@@ -1,8 +1,7 @@
1
1
  {
2
2
  "name": "@webiny/website-builder-react",
3
- "version": "0.0.0-unstable.6f45466a1d",
3
+ "version": "0.0.0-unstable.7be00a75a9",
4
4
  "type": "module",
5
- "main": "index.js",
6
5
  "repository": {
7
6
  "type": "git",
8
7
  "url": "https://github.com/webiny/webiny-js.git"
@@ -18,22 +17,23 @@
18
17
  ],
19
18
  "license": "MIT",
20
19
  "dependencies": {
21
- "@webiny/website-builder-sdk": "0.0.0-unstable.6f45466a1d",
20
+ "@webiny/website-builder-sdk": "0.0.0-unstable.7be00a75a9",
22
21
  "deep-equal": "2.2.3",
23
- "mobx": "6.15.0",
24
- "mobx-react-lite": "3.4.3",
25
- "react": "18.2.0",
26
- "react-dom": "18.2.0"
22
+ "mobx": "6.15.3",
23
+ "mobx-react-lite": "4.1.1",
24
+ "react": "18.3.1",
25
+ "react-dom": "18.3.1"
27
26
  },
28
27
  "devDependencies": {
29
- "@types/react": "18.2.79",
30
- "@webiny/build-tools": "0.0.0-unstable.6f45466a1d",
31
- "typescript": "5.9.3",
32
- "vitest": "3.2.4"
28
+ "@types/react": "18.3.29",
29
+ "@webiny/build-tools": "0.0.0-unstable.7be00a75a9",
30
+ "typescript": "6.0.3",
31
+ "vitest": "4.1.7"
33
32
  },
34
33
  "publishConfig": {
35
- "access": "public",
36
- "directory": "dist"
34
+ "access": "public"
37
35
  },
38
- "gitHead": "6f45466a1d9fb94f6156923501eb90ac303b81a5"
36
+ "webiny": {
37
+ "publishFrom": "dist"
38
+ }
39
39
  }
package/types.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import type { CssProperties, DocumentElement } from "@webiny/website-builder-sdk";
1
+ import type { CssProperties, DocumentElement, ComponentManifestInput, ComponentChangeHandler, DescendantChangeHandler } from "@webiny/website-builder-sdk";
2
2
  export type ComponentProps<TInputs = unknown> = {
3
3
  inputs: TInputs;
4
4
  styles: CssProperties;
@@ -12,3 +12,38 @@ export type ExtractInputs<T> = T extends {
12
12
  inputs: infer I;
13
13
  } ? I : never;
14
14
  export type ExtractInputNames<T extends (props: any) => any> = keyof ExtractInputs<Parameters<T>[0]>;
15
+ /**
16
+ * Infer the full typed ComponentManifestInput from a React component.
17
+ *
18
+ * @example
19
+ * ```ts
20
+ * import type { InferManifest } from "@webiny/website-builder-nextjs";
21
+ * import type { Funnel } from "./Funnel.js";
22
+ *
23
+ * type FunnelManifest = InferManifest<typeof Funnel>;
24
+ *
25
+ * // Use indexed access for callback types:
26
+ * const handler: FunnelManifest["onDescendantChange"] = ctx => {
27
+ * ctx.inputs.registry; // fully typed
28
+ * };
29
+ * ```
30
+ */
31
+ export type InferManifest<T extends (props: any) => any> = ComponentManifestInput<ExtractInputs<Parameters<T>[0]>>;
32
+ /**
33
+ * Extract a single typed onChange handler from a component.
34
+ *
35
+ * @example
36
+ * ```ts
37
+ * const handler: InferComponentChange<typeof Funnel> = ctx => { ... };
38
+ * ```
39
+ */
40
+ export type InferComponentChange<T extends (props: any) => any> = ComponentChangeHandler<ExtractInputs<Parameters<T>[0]>>;
41
+ /**
42
+ * Extract a single typed onDescendantChange handler from a component.
43
+ *
44
+ * @example
45
+ * ```ts
46
+ * const handler: InferDescendantChange<typeof Funnel> = ctx => { ... };
47
+ * ```
48
+ */
49
+ export type InferDescendantChange<T extends (props: any) => any> = DescendantChangeHandler<ExtractInputs<Parameters<T>[0]>>;
package/types.js CHANGED
@@ -1,3 +0,0 @@
1
- export {};
2
-
3
- //# sourceMappingURL=types.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":[],"sources":["index.ts"],"sourcesContent":["export * from \"./EditingElementRenderer.js\";\n"],"mappings":"AAAA","ignoreList":[]}
@@ -1 +0,0 @@
1
- {"version":3,"names":[],"sources":["index.ts"],"sourcesContent":["export * from \"./DocumentRenderer.js\";\nexport * from \"./DocumentFragment.js\";\nexport * from \"./ElementSlot.js\";\nexport * from \"./DocumentStoreProvider.js\";\n"],"mappings":"AAAA;AACA;AACA;AACA","ignoreList":[]}
package/index.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"names":["createTextInput","createLongTextInput","createNumberInput","createBooleanInput","createColorInput","createFileInput","createDateInput","createLexicalInput","createSelectInput","createRadioInput","createObjectInput","createTagsInput","createSlotInput","createInput","createElement","createTheme","contentSdk","environment","setHeadersProvider","getHeadersProvider","registerComponentGroup","StyleSettings"],"sources":["index.ts"],"sourcesContent":["export * from \"./components/index.js\";\nexport * from \"./createComponent.js\";\n\nexport {\n createTextInput,\n createLongTextInput,\n createNumberInput,\n createBooleanInput,\n createColorInput,\n createFileInput,\n createDateInput,\n createLexicalInput,\n createSelectInput,\n createRadioInput,\n createObjectInput,\n createTagsInput,\n createSlotInput,\n createInput,\n createElement,\n createTheme,\n contentSdk,\n environment,\n setHeadersProvider,\n getHeadersProvider,\n registerComponentGroup,\n type CssProperties,\n type Document,\n type DocumentElement,\n type Breakpoint,\n type CreateElementParams,\n type ContentSDKConfig,\n type ComponentManifest,\n type ComponentInput,\n type WebsiteBuilderThemeInput,\n StyleSettings\n} from \"@webiny/website-builder-sdk\";\n\nexport type { ComponentProps, ComponentPropsWithChildren } from \"./types.js\";\n"],"mappings":"AAAA;AACA;AAEA,SACIA,eAAe,EACfC,mBAAmB,EACnBC,iBAAiB,EACjBC,kBAAkB,EAClBC,gBAAgB,EAChBC,eAAe,EACfC,eAAe,EACfC,kBAAkB,EAClBC,iBAAiB,EACjBC,gBAAgB,EAChBC,iBAAiB,EACjBC,eAAe,EACfC,eAAe,EACfC,WAAW,EACXC,aAAa,EACbC,WAAW,EACXC,UAAU,EACVC,WAAW,EACXC,kBAAkB,EAClBC,kBAAkB,EAClBC,sBAAsB,EAUtBC,aAAa,QACV,6BAA6B","ignoreList":[]}
package/types.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"names":[],"sources":["types.ts"],"sourcesContent":["import type { CssProperties, DocumentElement } from \"@webiny/website-builder-sdk\";\n\nexport type ComponentProps<TInputs = unknown> = {\n inputs: TInputs;\n styles: CssProperties;\n element: DocumentElement;\n breakpoint: string;\n};\n\nexport type ComponentPropsWithChildren<TInputs = unknown> = ComponentProps<\n TInputs & { children: React.ReactNode }\n>;\n\nexport type ExtractInputs<T> = T extends { inputs: infer I } ? I : never;\n\nexport type ExtractInputNames<T extends (props: any) => any> = keyof ExtractInputs<\n Parameters<T>[0]\n>;\n"],"mappings":"","ignoreList":[]}