@makeswift/runtime 0.7.5 → 0.7.7

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 (141) hide show
  1. package/dist/Box.cjs.js +0 -1
  2. package/dist/Box.cjs.js.map +1 -1
  3. package/dist/Box.es.js +0 -1
  4. package/dist/Box.es.js.map +1 -1
  5. package/dist/Button.cjs.js +0 -1
  6. package/dist/Button.cjs.js.map +1 -1
  7. package/dist/Button.es.js +0 -1
  8. package/dist/Button.es.js.map +1 -1
  9. package/dist/Carousel.cjs.js +0 -1
  10. package/dist/Carousel.cjs.js.map +1 -1
  11. package/dist/Carousel.es.js +0 -1
  12. package/dist/Carousel.es.js.map +1 -1
  13. package/dist/Countdown.cjs.js +0 -1
  14. package/dist/Countdown.cjs.js.map +1 -1
  15. package/dist/Countdown.es.js +0 -1
  16. package/dist/Countdown.es.js.map +1 -1
  17. package/dist/Divider.cjs.js +0 -1
  18. package/dist/Divider.cjs.js.map +1 -1
  19. package/dist/Divider.es.js +0 -1
  20. package/dist/Divider.es.js.map +1 -1
  21. package/dist/EditableText.cjs.js +0 -1
  22. package/dist/EditableText.cjs.js.map +1 -1
  23. package/dist/EditableText.es.js +1 -2
  24. package/dist/EditableText.es.js.map +1 -1
  25. package/dist/Embed.cjs.js +0 -1
  26. package/dist/Embed.cjs.js.map +1 -1
  27. package/dist/Embed.es.js +0 -1
  28. package/dist/Embed.es.js.map +1 -1
  29. package/dist/Form.cjs.js +0 -1
  30. package/dist/Form.cjs.js.map +1 -1
  31. package/dist/Form.es.js +0 -1
  32. package/dist/Form.es.js.map +1 -1
  33. package/dist/Image.cjs.js +0 -1
  34. package/dist/Image.cjs.js.map +1 -1
  35. package/dist/Image.es.js +0 -1
  36. package/dist/Image.es.js.map +1 -1
  37. package/dist/LiveProvider.cjs.js +0 -1
  38. package/dist/LiveProvider.cjs.js.map +1 -1
  39. package/dist/LiveProvider.es.js +0 -1
  40. package/dist/LiveProvider.es.js.map +1 -1
  41. package/dist/Navigation.cjs.js +0 -1
  42. package/dist/Navigation.cjs.js.map +1 -1
  43. package/dist/Navigation.es.js +0 -1
  44. package/dist/Navigation.es.js.map +1 -1
  45. package/dist/PreviewProvider.cjs.js +6 -2
  46. package/dist/PreviewProvider.cjs.js.map +1 -1
  47. package/dist/PreviewProvider.es.js +8 -4
  48. package/dist/PreviewProvider.es.js.map +1 -1
  49. package/dist/ReadOnlyText.cjs.js +0 -1
  50. package/dist/ReadOnlyText.cjs.js.map +1 -1
  51. package/dist/ReadOnlyText.es.js +0 -1
  52. package/dist/ReadOnlyText.es.js.map +1 -1
  53. package/dist/Root.cjs.js +0 -1
  54. package/dist/Root.cjs.js.map +1 -1
  55. package/dist/Root.es.js +0 -1
  56. package/dist/Root.es.js.map +1 -1
  57. package/dist/SocialLinks.cjs.js +0 -1
  58. package/dist/SocialLinks.cjs.js.map +1 -1
  59. package/dist/SocialLinks.es.js +0 -1
  60. package/dist/SocialLinks.es.js.map +1 -1
  61. package/dist/Text.cjs.js +0 -1
  62. package/dist/Text.cjs.js.map +1 -1
  63. package/dist/Text.es.js +0 -1
  64. package/dist/Text.es.js.map +1 -1
  65. package/dist/Video.cjs.js +0 -1
  66. package/dist/Video.cjs.js.map +1 -1
  67. package/dist/Video.es.js +0 -1
  68. package/dist/Video.es.js.map +1 -1
  69. package/dist/builder.cjs.js +0 -1
  70. package/dist/builder.cjs.js.map +1 -1
  71. package/dist/builder.es.js +0 -1
  72. package/dist/builder.es.js.map +1 -1
  73. package/dist/components.cjs.js +0 -1
  74. package/dist/components.cjs.js.map +1 -1
  75. package/dist/components.es.js +0 -1
  76. package/dist/components.es.js.map +1 -1
  77. package/dist/constants.cjs.js +18 -3
  78. package/dist/constants.cjs.js.map +1 -1
  79. package/dist/constants.es.js +17 -3
  80. package/dist/constants.es.js.map +1 -1
  81. package/dist/control-serialization.cjs.js +107 -108
  82. package/dist/control-serialization.cjs.js.map +1 -1
  83. package/dist/control-serialization.es.js +1 -2
  84. package/dist/control-serialization.es.js.map +1 -1
  85. package/dist/controls.cjs.js +14 -11
  86. package/dist/controls.cjs.js.map +1 -1
  87. package/dist/controls.es.js +1 -2
  88. package/dist/controls.es.js.map +1 -1
  89. package/dist/index.cjs.js +133 -114
  90. package/dist/index.cjs.js.map +1 -1
  91. package/dist/index.cjs5.js +0 -1
  92. package/dist/index.cjs5.js.map +1 -1
  93. package/dist/index.es.js +107 -88
  94. package/dist/index.es.js.map +1 -1
  95. package/dist/index.es5.js +0 -1
  96. package/dist/index.es5.js.map +1 -1
  97. package/dist/index.es6.js +1 -1
  98. package/dist/main.cjs.js +0 -1
  99. package/dist/main.cjs.js.map +1 -1
  100. package/dist/main.es.js +0 -1
  101. package/dist/main.es.js.map +1 -1
  102. package/dist/next.cjs.js +0 -1
  103. package/dist/next.cjs.js.map +1 -1
  104. package/dist/next.es.js +0 -1
  105. package/dist/next.es.js.map +1 -1
  106. package/dist/prop-controllers.es.js +1 -1
  107. package/dist/react.cjs.js +0 -1
  108. package/dist/react.cjs.js.map +1 -1
  109. package/dist/react.es.js +0 -1
  110. package/dist/react.es.js.map +1 -1
  111. package/dist/rich-text.cjs.js +499 -7
  112. package/dist/rich-text.cjs.js.map +1 -1
  113. package/dist/rich-text.es.js +484 -7
  114. package/dist/rich-text.es.js.map +1 -1
  115. package/dist/types/src/components/builtin/Button/Button.d.ts +1 -1
  116. package/dist/types/src/components/builtin/Form/components/Field/components/Checkbox/index.d.ts +1 -1
  117. package/dist/types/src/controls/control.d.ts +2 -1
  118. package/dist/types/src/controls/control.d.ts.map +1 -1
  119. package/dist/types/src/controls/list.d.ts +20 -0
  120. package/dist/types/src/controls/list.d.ts.map +1 -1
  121. package/dist/types/src/controls/shape.d.ts +21 -0
  122. package/dist/types/src/controls/shape.d.ts.map +1 -1
  123. package/dist/types/src/prop-controllers/instances.d.ts +3 -2
  124. package/dist/types/src/prop-controllers/instances.d.ts.map +1 -1
  125. package/dist/types/src/runtimes/react/controls/control.d.ts +6 -3
  126. package/dist/types/src/runtimes/react/controls/control.d.ts.map +1 -1
  127. package/dist/types/src/runtimes/react/controls/list.d.ts +3 -2
  128. package/dist/types/src/runtimes/react/controls/list.d.ts.map +1 -1
  129. package/dist/types/src/runtimes/react/controls/shape.d.ts +3 -2
  130. package/dist/types/src/runtimes/react/controls/shape.d.ts.map +1 -1
  131. package/dist/types/src/runtimes/react/controls.d.ts.map +1 -1
  132. package/dist/types/src/state/modules/read-only-documents.d.ts +1 -0
  133. package/dist/types/src/state/modules/read-only-documents.d.ts.map +1 -1
  134. package/dist/types/src/state/react-builder-preview.d.ts.map +1 -1
  135. package/dist/types/src/state/react-page.d.ts +6 -0
  136. package/dist/types/src/state/react-page.d.ts.map +1 -1
  137. package/package.json +1 -1
  138. package/dist/control.cjs.js +0 -437
  139. package/dist/control.cjs.js.map +0 -1
  140. package/dist/control.es.js +0 -426
  141. package/dist/control.es.js.map +0 -1
@@ -10,7 +10,6 @@ require("redux");
10
10
  require("redux-thunk");
11
11
  require("./actions.cjs.js");
12
12
  require("./rich-text.cjs.js");
13
- require("./control.cjs.js");
14
13
  require("@emotion/css");
15
14
  require("@emotion/serialize");
16
15
  require("@emotion/utils");
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs5.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"index.cjs5.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
package/dist/index.es.js CHANGED
@@ -45,10 +45,9 @@ import { cache, cx } from "@emotion/css";
45
45
  import { serializeStyles } from "@emotion/serialize";
46
46
  import { registerStyles, insertStyles } from "@emotion/utils";
47
47
  import { jsx, jsxs, Fragment } from "react/jsx-runtime";
48
- import { T as Types, E as ElementID, B as Backgrounds, W as Width, h as ResponsiveIconRadioGroup, M as Margin, P as Padding, i as Border, j as BorderRadius, k as Shadows, G as GapY, l as GapX, m as ResponsiveSelect, n as ResponsiveNumber, o as Checkbox, p as Grid, q as TextInput, L as Link, s as ResponsiveColor, t as TextStyle, u as Images, N as Number$1, D as Date$1, F as Font, v as ResponsiveLength, w as TextArea, x as Table, y as TableFormFields, z as Image, A as ResponsiveOpacity, H as NavigationLinks, J as SocialLinks, K as RichText, V as Video, O as StyleControlProperty, Q as ImageControlValueFormat, I as ImageControlType, C as ColorControlType, U as BorderPropControllerFormat, X as ShadowsPropControllerFormat, Y as BorderRadiusPropControllerFormat, Z as MarginPropControllerFormat, _ as PaddingPropControllerFormat, $ as WidthPropControllerFormat, S as SlotControlType, a0 as RichTextControlType, a as StyleControlType } from "./rich-text.es.js";
48
+ import { e as ShapeControlType, L as ListControlType, T as Types, E as ElementID, B as Backgrounds, W as Width, f as ResponsiveIconRadioGroup, M as Margin, P as Padding, g as Border, h as BorderRadius, i as Shadows, G as GapY, j as GapX, k as ResponsiveSelect, l as ResponsiveNumber, m as Checkbox, n as Grid, o as TextInput, p as Link, q as ResponsiveColor, s as TextStyle, t as Images, N as Number$1, D as Date$1, F as Font, u as ResponsiveLength, v as TextArea, w as Table, x as TableFormFields, y as Image, z as ResponsiveOpacity, A as NavigationLinks, H as SocialLinks, J as RichText, V as Video, K as StyleControlProperty, O as ImageControlValueFormat, S as SlotControlType, Q as LinkControlType, I as ImageControlType, C as ColorControlType, U as BorderPropControllerFormat, X as ShadowsPropControllerFormat, Y as BorderRadiusPropControllerFormat, Z as MarginPropControllerFormat, _ as PaddingPropControllerFormat, $ as WidthPropControllerFormat, a0 as RichTextControlType, a1 as StyleControlType } from "./rich-text.es.js";
49
49
  import { S as SelectControlType, T as TextAreaControlType, a as TextInputControlType, N as NumberControlType, C as CheckboxControlType } from "./text-input.es.js";
50
50
  import { C as ComboboxControlType } from "./combobox.es.js";
51
- import { S as ShapeControlType, L as ListControlType, b as LinkControlType } from "./control.es.js";
52
51
  import { useSyncExternalStore } from "use-sync-external-store/shim";
53
52
  import { createStore, applyMiddleware } from "redux";
54
53
  import thunk from "redux-thunk";
@@ -966,7 +965,7 @@ function useCachedSite(siteId) {
966
965
  const site = useSyncExternalStore(client.subscribe, getSnapshot, getSnapshot);
967
966
  return site;
968
967
  }
969
- const version = "0.7.5";
968
+ const version = "0.7.7";
970
969
  class Makeswift {
971
970
  constructor(apiKey, { apiOrigin = "https://api.makeswift.com" } = {}) {
972
971
  __publicField(this, "apiKey");
@@ -1350,7 +1349,7 @@ Read more about dynamic catch-all routes here: https://nextjs.org/docs/routing/d
1350
1349
  previewMode: true,
1351
1350
  interactionMode: true,
1352
1351
  clientSideNavigation: true,
1353
- elementFromPoint: true
1352
+ elementFromPoint: false
1354
1353
  });
1355
1354
  }
1356
1355
  case "revalidate": {
@@ -3356,11 +3355,19 @@ function useLinkControlValue(link, _definition) {
3356
3355
  function ListControlValue({
3357
3356
  definition,
3358
3357
  data,
3359
- children
3358
+ children,
3359
+ control
3360
3360
  }) {
3361
+ const [controls, setControls] = useState(/* @__PURE__ */ new Map());
3362
+ useEffect(() => {
3363
+ if (control == null || data == null)
3364
+ return;
3365
+ setControls(control.setItemsControl(data));
3366
+ }, [data, control]);
3361
3367
  return (data != null ? data : []).reduce((renderFn, item) => (listControlValue) => /* @__PURE__ */ jsx(ControlValue, {
3362
3368
  definition: definition.config.type,
3363
3369
  data: item.value,
3370
+ control: controls == null ? void 0 : controls.get(item.id),
3364
3371
  children: (value) => renderFn([value, ...listControlValue])
3365
3372
  }), children)([]);
3366
3373
  }
@@ -3373,98 +3380,18 @@ function useSelectControlValue(data, definition) {
3373
3380
  function ShapeControlValue({
3374
3381
  definition,
3375
3382
  data,
3376
- children
3383
+ children,
3384
+ control
3377
3385
  }) {
3378
3386
  return Object.entries(definition.config.type).reduceRight((renderFn, [key, controlDefinition]) => (shapeControlValue) => /* @__PURE__ */ jsx(ControlValue, {
3379
3387
  definition: controlDefinition,
3380
3388
  data: data == null ? void 0 : data[key],
3389
+ control: control == null ? void 0 : control.controls.get(key),
3381
3390
  children: (value) => renderFn(__spreadProps(__spreadValues({}, shapeControlValue), {
3382
3391
  [key]: value
3383
3392
  }))
3384
3393
  }), children)({});
3385
3394
  }
3386
- function useTextAreaValue(data, definition) {
3387
- return data != null ? data : definition.config.defaultValue;
3388
- }
3389
- function useTextInputValue(data, definition) {
3390
- return data != null ? data : definition.config.defaultValue;
3391
- }
3392
- function ControlValue({
3393
- data,
3394
- definition,
3395
- children
3396
- }) {
3397
- switch (definition.type) {
3398
- case CheckboxControlType:
3399
- return /* @__PURE__ */ jsx(RenderHook, {
3400
- hook: useCheckboxControlValue,
3401
- parameters: [data, definition],
3402
- children: (value) => children(value)
3403
- }, definition.type);
3404
- case NumberControlType:
3405
- return /* @__PURE__ */ jsx(RenderHook, {
3406
- hook: useNumber,
3407
- parameters: [data, definition],
3408
- children: (value) => children(value)
3409
- }, definition.type);
3410
- case TextInputControlType:
3411
- return /* @__PURE__ */ jsx(RenderHook, {
3412
- hook: useTextInputValue,
3413
- parameters: [data, definition],
3414
- children: (value) => children(value)
3415
- }, definition.type);
3416
- case TextAreaControlType:
3417
- return /* @__PURE__ */ jsx(RenderHook, {
3418
- hook: useTextAreaValue,
3419
- parameters: [data, definition],
3420
- children: (value) => children(value)
3421
- }, definition.type);
3422
- case SelectControlType:
3423
- return /* @__PURE__ */ jsx(RenderHook, {
3424
- hook: useSelectControlValue,
3425
- parameters: [data, definition],
3426
- children: (value) => children(value)
3427
- }, definition.type);
3428
- case ColorControlType:
3429
- return /* @__PURE__ */ jsx(RenderHook, {
3430
- hook: useColorValue,
3431
- parameters: [data, definition],
3432
- children: (value) => children(value)
3433
- }, definition.type);
3434
- case ImageControlType:
3435
- return /* @__PURE__ */ jsx(RenderHook, {
3436
- hook: useImageControlValue,
3437
- parameters: [data, definition],
3438
- children: (value) => children(value)
3439
- }, definition.type);
3440
- case LinkControlType:
3441
- return /* @__PURE__ */ jsx(RenderHook, {
3442
- hook: useLinkControlValue,
3443
- parameters: [data, definition],
3444
- children: (value) => children(value)
3445
- }, definition.type);
3446
- case ComboboxControlType:
3447
- return /* @__PURE__ */ jsx(RenderHook, {
3448
- hook: useComboboxControlValue,
3449
- parameters: [data],
3450
- children: (value) => children(value)
3451
- }, definition.type);
3452
- case ShapeControlType:
3453
- return /* @__PURE__ */ jsx(ShapeControlValue, {
3454
- definition,
3455
- data,
3456
- children: (value) => children(value)
3457
- });
3458
- case ListControlType:
3459
- return /* @__PURE__ */ jsx(ListControlValue, {
3460
- definition,
3461
- data,
3462
- children: (value) => children(value)
3463
- });
3464
- default:
3465
- return children(data);
3466
- }
3467
- }
3468
3395
  function pollBoxModel({
3469
3396
  element,
3470
3397
  onBoxModelChange
@@ -3627,6 +3554,97 @@ function SlotPlaceholder({
3627
3554
  })
3628
3555
  });
3629
3556
  }
3557
+ function useTextAreaValue(data, definition) {
3558
+ return data != null ? data : definition.config.defaultValue;
3559
+ }
3560
+ function useTextInputValue(data, definition) {
3561
+ return data != null ? data : definition.config.defaultValue;
3562
+ }
3563
+ function ControlValue({
3564
+ data,
3565
+ definition,
3566
+ children,
3567
+ control
3568
+ }) {
3569
+ switch (definition.type) {
3570
+ case CheckboxControlType:
3571
+ return /* @__PURE__ */ jsx(RenderHook, {
3572
+ hook: useCheckboxControlValue,
3573
+ parameters: [data, definition],
3574
+ children: (value) => children(value)
3575
+ }, definition.type);
3576
+ case NumberControlType:
3577
+ return /* @__PURE__ */ jsx(RenderHook, {
3578
+ hook: useNumber,
3579
+ parameters: [data, definition],
3580
+ children: (value) => children(value)
3581
+ }, definition.type);
3582
+ case TextInputControlType:
3583
+ return /* @__PURE__ */ jsx(RenderHook, {
3584
+ hook: useTextInputValue,
3585
+ parameters: [data, definition],
3586
+ children: (value) => children(value)
3587
+ }, definition.type);
3588
+ case TextAreaControlType:
3589
+ return /* @__PURE__ */ jsx(RenderHook, {
3590
+ hook: useTextAreaValue,
3591
+ parameters: [data, definition],
3592
+ children: (value) => children(value)
3593
+ }, definition.type);
3594
+ case SelectControlType:
3595
+ return /* @__PURE__ */ jsx(RenderHook, {
3596
+ hook: useSelectControlValue,
3597
+ parameters: [data, definition],
3598
+ children: (value) => children(value)
3599
+ }, definition.type);
3600
+ case ColorControlType:
3601
+ return /* @__PURE__ */ jsx(RenderHook, {
3602
+ hook: useColorValue,
3603
+ parameters: [data, definition],
3604
+ children: (value) => children(value)
3605
+ }, definition.type);
3606
+ case ImageControlType:
3607
+ return /* @__PURE__ */ jsx(RenderHook, {
3608
+ hook: useImageControlValue,
3609
+ parameters: [data, definition],
3610
+ children: (value) => children(value)
3611
+ }, definition.type);
3612
+ case LinkControlType:
3613
+ return /* @__PURE__ */ jsx(RenderHook, {
3614
+ hook: useLinkControlValue,
3615
+ parameters: [data, definition],
3616
+ children: (value) => children(value)
3617
+ }, definition.type);
3618
+ case ComboboxControlType:
3619
+ return /* @__PURE__ */ jsx(RenderHook, {
3620
+ hook: useComboboxControlValue,
3621
+ parameters: [data],
3622
+ children: (value) => children(value)
3623
+ }, definition.type);
3624
+ case ShapeControlType:
3625
+ return /* @__PURE__ */ jsx(ShapeControlValue, {
3626
+ definition,
3627
+ data,
3628
+ control,
3629
+ children: (value) => children(value)
3630
+ });
3631
+ case ListControlType:
3632
+ return /* @__PURE__ */ jsx(ListControlValue, {
3633
+ definition,
3634
+ data,
3635
+ control,
3636
+ children: (value) => children(value)
3637
+ });
3638
+ case SlotControlType:
3639
+ return /* @__PURE__ */ jsx(RenderHook, {
3640
+ hook: useSlot,
3641
+ parameters: [data, control],
3642
+ children: (value) => children(value)
3643
+ }, definition.type);
3644
+ default:
3645
+ return children(data);
3646
+ }
3647
+ }
3630
3648
  const Text = forwardNextDynamicRef((patch) => dynamic(() => patch(import("./index.es5.js"))));
3631
3649
  function useRichText(data, control) {
3632
3650
  const textCallbackRef = useCallback((handle) => {
@@ -3692,6 +3710,7 @@ function PropsValue({
3692
3710
  return /* @__PURE__ */ jsx(ControlValue, {
3693
3711
  definition: descriptor,
3694
3712
  data: props[propName],
3713
+ control: propControllers == null ? void 0 : propControllers[propName],
3695
3714
  children: (value) => renderFn(__spreadProps(__spreadValues({}, propsValue), {
3696
3715
  [propName]: value
3697
3716
  }))