@makeswift/runtime 0.17.2-canary.0 → 0.18.0-canary.2

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 (243) hide show
  1. package/dist/cjs/builder/serialization/control-serialization.js +8 -22
  2. package/dist/cjs/builder/serialization/control-serialization.js.map +1 -1
  3. package/dist/cjs/components/builtin/Box/animations.js.map +1 -1
  4. package/dist/cjs/components/builtin/Box/register.js +5 -5
  5. package/dist/cjs/components/builtin/Box/register.js.map +1 -1
  6. package/dist/cjs/components/builtin/Carousel/Carousel.js.map +1 -1
  7. package/dist/cjs/components/builtin/Carousel/register.js +2 -2
  8. package/dist/cjs/components/builtin/Carousel/register.js.map +1 -1
  9. package/dist/cjs/{controls/control-data-type-key.js → components/hooks/usePropValue.js} +11 -7
  10. package/dist/cjs/components/hooks/usePropValue.js.map +1 -0
  11. package/dist/cjs/components/shared/grid-item.js.map +1 -1
  12. package/dist/cjs/controls/control.js +10 -13
  13. package/dist/cjs/controls/control.js.map +1 -1
  14. package/dist/cjs/controls/image.js +0 -15
  15. package/dist/cjs/controls/image.js.map +1 -1
  16. package/dist/cjs/controls/index.js +3 -19
  17. package/dist/cjs/controls/index.js.map +1 -1
  18. package/dist/cjs/controls/list.js.map +1 -1
  19. package/dist/cjs/controls/rich-text/dto.js.map +1 -1
  20. package/dist/cjs/controls/rich-text-v2/introspection.js.map +1 -1
  21. package/dist/cjs/controls/shape.js.map +1 -1
  22. package/dist/cjs/controls/slot.js.map +1 -1
  23. package/dist/cjs/controls/style-v2.js.map +1 -1
  24. package/dist/cjs/controls/style.js +2 -2
  25. package/dist/cjs/controls/style.js.map +1 -1
  26. package/dist/cjs/next/api-handler/handlers/manifest.js +1 -1
  27. package/dist/cjs/next/components/tests/page-prop-controller.js +105 -0
  28. package/dist/cjs/next/components/tests/page-prop-controller.js.map +1 -0
  29. package/dist/cjs/prop-controllers/descriptors.js +0 -6
  30. package/dist/cjs/prop-controllers/descriptors.js.map +1 -1
  31. package/dist/cjs/prop-controllers/index.js.map +1 -1
  32. package/dist/cjs/runtimes/react/controls/checkbox.js +1 -1
  33. package/dist/cjs/runtimes/react/controls/checkbox.js.map +1 -1
  34. package/dist/cjs/runtimes/react/controls/color.js.map +1 -1
  35. package/dist/cjs/runtimes/react/controls/control.js +18 -18
  36. package/dist/cjs/runtimes/react/controls/control.js.map +1 -1
  37. package/dist/cjs/runtimes/react/controls/icon-radio-group.js.map +1 -1
  38. package/dist/cjs/runtimes/react/controls/number.js +1 -1
  39. package/dist/cjs/runtimes/react/controls/number.js.map +1 -1
  40. package/dist/cjs/runtimes/react/controls/style-v2.js.map +1 -1
  41. package/dist/cjs/runtimes/react/controls/text-area.js +1 -1
  42. package/dist/cjs/runtimes/react/controls/text-area.js.map +1 -1
  43. package/dist/cjs/runtimes/react/controls/text-input.js +1 -1
  44. package/dist/cjs/runtimes/react/controls/text-input.js.map +1 -1
  45. package/dist/cjs/runtimes/react/controls.js +28 -18
  46. package/dist/cjs/runtimes/react/controls.js.map +1 -1
  47. package/dist/cjs/runtimes/react/react-runtime.js.map +1 -1
  48. package/dist/cjs/slate/InlinePlugin/types.js +4 -4
  49. package/dist/cjs/slate/InlinePlugin/types.js.map +1 -1
  50. package/dist/cjs/slate/LinkPlugin/index.js +2 -2
  51. package/dist/cjs/slate/LinkPlugin/index.js.map +1 -1
  52. package/dist/cjs/slate/LinkPlugin/linkPluginWithoutRenderElement.js +2 -2
  53. package/dist/cjs/slate/LinkPlugin/linkPluginWithoutRenderElement.js.map +1 -1
  54. package/dist/cjs/state/modules/breakpoints.js.map +1 -1
  55. package/dist/esm/builder/serialization/control-serialization.js +8 -22
  56. package/dist/esm/builder/serialization/control-serialization.js.map +1 -1
  57. package/dist/esm/components/builtin/Box/animations.js.map +1 -1
  58. package/dist/esm/components/builtin/Box/register.js +6 -5
  59. package/dist/esm/components/builtin/Box/register.js.map +1 -1
  60. package/dist/esm/components/builtin/Carousel/Carousel.js.map +1 -1
  61. package/dist/esm/components/builtin/Carousel/register.js +3 -2
  62. package/dist/esm/components/builtin/Carousel/register.js.map +1 -1
  63. package/dist/esm/components/hooks/usePropValue.js +9 -0
  64. package/dist/esm/components/hooks/usePropValue.js.map +1 -0
  65. package/dist/esm/components/shared/grid-item.js.map +1 -1
  66. package/dist/esm/controls/control.js +10 -7
  67. package/dist/esm/controls/control.js.map +1 -1
  68. package/dist/esm/controls/image.js +0 -12
  69. package/dist/esm/controls/image.js.map +1 -1
  70. package/dist/esm/controls/index.js +1 -9
  71. package/dist/esm/controls/index.js.map +1 -1
  72. package/dist/esm/controls/list.js.map +1 -1
  73. package/dist/esm/controls/rich-text/dto.js.map +1 -1
  74. package/dist/esm/controls/rich-text-v2/introspection.js.map +1 -1
  75. package/dist/esm/controls/shape.js.map +1 -1
  76. package/dist/esm/controls/slot.js.map +1 -1
  77. package/dist/esm/controls/style-v2.js.map +1 -1
  78. package/dist/esm/controls/style.js +1 -1
  79. package/dist/esm/controls/style.js.map +1 -1
  80. package/dist/esm/next/api-handler/handlers/manifest.js +1 -1
  81. package/dist/esm/next/components/tests/page-prop-controller.js +84 -0
  82. package/dist/esm/next/components/tests/page-prop-controller.js.map +1 -0
  83. package/dist/esm/prop-controllers/descriptors.js +0 -5
  84. package/dist/esm/prop-controllers/descriptors.js.map +1 -1
  85. package/dist/esm/prop-controllers/index.js.map +1 -1
  86. package/dist/esm/runtimes/react/controls/checkbox.js +1 -1
  87. package/dist/esm/runtimes/react/controls/checkbox.js.map +1 -1
  88. package/dist/esm/runtimes/react/controls/color.js.map +1 -1
  89. package/dist/esm/runtimes/react/controls/control.js +6 -6
  90. package/dist/esm/runtimes/react/controls/control.js.map +1 -1
  91. package/dist/esm/runtimes/react/controls/icon-radio-group.js.map +1 -1
  92. package/dist/esm/runtimes/react/controls/number.js +1 -1
  93. package/dist/esm/runtimes/react/controls/number.js.map +1 -1
  94. package/dist/esm/runtimes/react/controls/style-v2.js.map +1 -1
  95. package/dist/esm/runtimes/react/controls/text-area.js +1 -1
  96. package/dist/esm/runtimes/react/controls/text-area.js.map +1 -1
  97. package/dist/esm/runtimes/react/controls/text-input.js +1 -1
  98. package/dist/esm/runtimes/react/controls/text-input.js.map +1 -1
  99. package/dist/esm/runtimes/react/controls.js +16 -8
  100. package/dist/esm/runtimes/react/controls.js.map +1 -1
  101. package/dist/esm/runtimes/react/react-runtime.js.map +1 -1
  102. package/dist/esm/slate/InlinePlugin/types.js +1 -1
  103. package/dist/esm/slate/InlinePlugin/types.js.map +1 -1
  104. package/dist/esm/slate/LinkPlugin/index.js +1 -1
  105. package/dist/esm/slate/LinkPlugin/index.js.map +1 -1
  106. package/dist/esm/slate/LinkPlugin/linkPluginWithoutRenderElement.js +1 -1
  107. package/dist/esm/slate/LinkPlugin/linkPluginWithoutRenderElement.js.map +1 -1
  108. package/dist/esm/state/modules/breakpoints.js.map +1 -1
  109. package/dist/types/builder/serialization/control-serialization.d.ts +9 -37
  110. package/dist/types/builder/serialization/control-serialization.d.ts.map +1 -1
  111. package/dist/types/components/builtin/Box/animations.d.ts +2 -1
  112. package/dist/types/components/builtin/Box/animations.d.ts.map +1 -1
  113. package/dist/types/components/builtin/Box/register.d.ts.map +1 -1
  114. package/dist/types/components/builtin/Button/Button.d.ts +2 -2
  115. package/dist/types/components/builtin/Carousel/Carousel.d.ts +2 -2
  116. package/dist/types/components/builtin/Carousel/Carousel.d.ts.map +1 -1
  117. package/dist/types/components/builtin/Carousel/register.d.ts.map +1 -1
  118. package/dist/types/components/hooks/usePropValue.d.ts +3 -0
  119. package/dist/types/components/hooks/usePropValue.d.ts.map +1 -0
  120. package/dist/types/components/shared/grid-item.d.ts +2 -2
  121. package/dist/types/components/shared/grid-item.d.ts.map +1 -1
  122. package/dist/types/controls/__tests__/fixtures/shape.d.ts +3 -3
  123. package/dist/types/controls/__tests__/fixtures/shape.d.ts.map +1 -1
  124. package/dist/types/controls/control.d.ts +1 -9
  125. package/dist/types/controls/control.d.ts.map +1 -1
  126. package/dist/types/controls/image.d.ts +1 -38
  127. package/dist/types/controls/image.d.ts.map +1 -1
  128. package/dist/types/controls/index.d.ts +1 -9
  129. package/dist/types/controls/index.d.ts.map +1 -1
  130. package/dist/types/controls/list.d.ts +2 -11
  131. package/dist/types/controls/list.d.ts.map +1 -1
  132. package/dist/types/controls/shape.d.ts.map +1 -1
  133. package/dist/types/controls/slot.d.ts +1 -1
  134. package/dist/types/controls/slot.d.ts.map +1 -1
  135. package/dist/types/controls/style-v2.d.ts +1 -1
  136. package/dist/types/controls/style-v2.d.ts.map +1 -1
  137. package/dist/types/controls/style.d.ts +1 -1
  138. package/dist/types/controls/style.d.ts.map +1 -1
  139. package/dist/types/next/components/tests/page-gap-x-prop-controller.test.d.ts +1 -1
  140. package/dist/types/next/components/tests/page-gap-x-prop-controller.test.d.ts.map +1 -1
  141. package/dist/types/next/components/tests/page-prop-controller.d.ts +8 -0
  142. package/dist/types/next/components/tests/page-prop-controller.d.ts.map +1 -0
  143. package/dist/types/next/components/tests/page-responsive-number-prop-controller.test.d.ts +3 -0
  144. package/dist/types/next/components/tests/page-responsive-number-prop-controller.test.d.ts.map +1 -0
  145. package/dist/types/prop-controllers/descriptors.d.ts +7 -30
  146. package/dist/types/prop-controllers/descriptors.d.ts.map +1 -1
  147. package/dist/types/prop-controllers/index.d.ts +1 -1
  148. package/dist/types/prop-controllers/index.d.ts.map +1 -1
  149. package/dist/types/runtimes/react/controls/checkbox.d.ts +1 -1
  150. package/dist/types/runtimes/react/controls/checkbox.d.ts.map +1 -1
  151. package/dist/types/runtimes/react/controls/color.d.ts +1 -1
  152. package/dist/types/runtimes/react/controls/color.d.ts.map +1 -1
  153. package/dist/types/runtimes/react/controls/control.d.ts +2 -2
  154. package/dist/types/runtimes/react/controls/control.d.ts.map +1 -1
  155. package/dist/types/runtimes/react/controls/icon-radio-group.d.ts +1 -1
  156. package/dist/types/runtimes/react/controls/icon-radio-group.d.ts.map +1 -1
  157. package/dist/types/runtimes/react/controls/number.d.ts +1 -1
  158. package/dist/types/runtimes/react/controls/number.d.ts.map +1 -1
  159. package/dist/types/runtimes/react/controls/style-v2.d.ts.map +1 -1
  160. package/dist/types/runtimes/react/controls/text-area.d.ts +1 -1
  161. package/dist/types/runtimes/react/controls/text-area.d.ts.map +1 -1
  162. package/dist/types/runtimes/react/controls/text-input.d.ts +1 -1
  163. package/dist/types/runtimes/react/controls/text-input.d.ts.map +1 -1
  164. package/dist/types/runtimes/react/controls.d.ts.map +1 -1
  165. package/dist/types/runtimes/react/react-runtime.d.ts.map +1 -1
  166. package/dist/types/slate/InlinePlugin/index.d.ts +2 -2
  167. package/dist/types/slate/InlinePlugin/types.d.ts +1 -1
  168. package/dist/types/slate/InlinePlugin/types.d.ts.map +1 -1
  169. package/dist/types/slate/LinkPlugin/getValue.d.ts +1 -1
  170. package/dist/types/slate/LinkPlugin/getValue.d.ts.map +1 -1
  171. package/dist/types/slate/LinkPlugin/index.d.ts +1 -1
  172. package/dist/types/slate/LinkPlugin/index.d.ts.map +1 -1
  173. package/dist/types/slate/LinkPlugin/linkPluginWithoutRenderElement.d.ts +1 -1
  174. package/dist/types/state/modules/breakpoints.d.ts +1 -1
  175. package/dist/types/state/modules/breakpoints.d.ts.map +1 -1
  176. package/dist/types/state/react-page.test.d.ts +0 -2
  177. package/dist/types/state/react-page.test.d.ts.map +1 -1
  178. package/package.json +3 -2
  179. package/dist/cjs/components/hooks/useGapXPropControllerData.js +0 -34
  180. package/dist/cjs/components/hooks/useGapXPropControllerData.js.map +0 -1
  181. package/dist/cjs/controls/checkbox.js +0 -41
  182. package/dist/cjs/controls/checkbox.js.map +0 -1
  183. package/dist/cjs/controls/color.js +0 -55
  184. package/dist/cjs/controls/color.js.map +0 -1
  185. package/dist/cjs/controls/combobox.js +0 -34
  186. package/dist/cjs/controls/combobox.js.map +0 -1
  187. package/dist/cjs/controls/control-data-type-key.js.map +0 -1
  188. package/dist/cjs/controls/icon-radio-group.js +0 -45
  189. package/dist/cjs/controls/icon-radio-group.js.map +0 -1
  190. package/dist/cjs/controls/link.js +0 -53
  191. package/dist/cjs/controls/link.js.map +0 -1
  192. package/dist/cjs/controls/number.js +0 -41
  193. package/dist/cjs/controls/number.js.map +0 -1
  194. package/dist/cjs/controls/text-area.js +0 -41
  195. package/dist/cjs/controls/text-area.js.map +0 -1
  196. package/dist/cjs/controls/text-input.js +0 -41
  197. package/dist/cjs/controls/text-input.js.map +0 -1
  198. package/dist/cjs/controls/types.js +0 -17
  199. package/dist/cjs/controls/types.js.map +0 -1
  200. package/dist/esm/components/hooks/useGapXPropControllerData.js +0 -12
  201. package/dist/esm/components/hooks/useGapXPropControllerData.js.map +0 -1
  202. package/dist/esm/controls/checkbox.js +0 -14
  203. package/dist/esm/controls/checkbox.js.map +0 -1
  204. package/dist/esm/controls/color.js +0 -27
  205. package/dist/esm/controls/color.js.map +0 -1
  206. package/dist/esm/controls/combobox.js +0 -9
  207. package/dist/esm/controls/combobox.js.map +0 -1
  208. package/dist/esm/controls/control-data-type-key.js +0 -5
  209. package/dist/esm/controls/control-data-type-key.js.map +0 -1
  210. package/dist/esm/controls/icon-radio-group.js +0 -19
  211. package/dist/esm/controls/icon-radio-group.js.map +0 -1
  212. package/dist/esm/controls/link.js +0 -27
  213. package/dist/esm/controls/link.js.map +0 -1
  214. package/dist/esm/controls/number.js +0 -14
  215. package/dist/esm/controls/number.js.map +0 -1
  216. package/dist/esm/controls/text-area.js +0 -14
  217. package/dist/esm/controls/text-area.js.map +0 -1
  218. package/dist/esm/controls/text-input.js +0 -14
  219. package/dist/esm/controls/text-input.js.map +0 -1
  220. package/dist/esm/controls/types.js +0 -1
  221. package/dist/esm/controls/types.js.map +0 -1
  222. package/dist/types/components/hooks/useGapXPropControllerData.d.ts +0 -3
  223. package/dist/types/components/hooks/useGapXPropControllerData.d.ts.map +0 -1
  224. package/dist/types/controls/checkbox.d.ts +0 -21
  225. package/dist/types/controls/checkbox.d.ts.map +0 -1
  226. package/dist/types/controls/color.d.ts +0 -25
  227. package/dist/types/controls/color.d.ts.map +0 -1
  228. package/dist/types/controls/combobox.d.ts +0 -22
  229. package/dist/types/controls/combobox.d.ts.map +0 -1
  230. package/dist/types/controls/control-data-type-key.d.ts +0 -2
  231. package/dist/types/controls/control-data-type-key.d.ts.map +0 -1
  232. package/dist/types/controls/icon-radio-group.d.ts +0 -32
  233. package/dist/types/controls/icon-radio-group.d.ts.map +0 -1
  234. package/dist/types/controls/link.d.ts +0 -52
  235. package/dist/types/controls/link.d.ts.map +0 -1
  236. package/dist/types/controls/number.d.ts +0 -26
  237. package/dist/types/controls/number.d.ts.map +0 -1
  238. package/dist/types/controls/text-area.d.ts +0 -22
  239. package/dist/types/controls/text-area.d.ts.map +0 -1
  240. package/dist/types/controls/text-input.d.ts +0 -22
  241. package/dist/types/controls/text-input.d.ts.map +0 -1
  242. package/dist/types/controls/types.d.ts +0 -14
  243. package/dist/types/controls/types.d.ts.map +0 -1
@@ -0,0 +1,84 @@
1
+ import { jsx } from "react/jsx-runtime";
2
+ import { render, screen } from "@testing-library/react";
3
+ import "@testing-library/jest-dom";
4
+ import { Types } from "@makeswift/prop-controllers";
5
+ import { randomUUID } from "crypto";
6
+ import { Page } from "../page";
7
+ import { act } from "react-dom/test-utils";
8
+ import { ReactRuntimeProvider } from "../../context/react-runtime";
9
+ import { ReactRuntime } from "../../../react";
10
+ import {
11
+ createMakeswiftPageSnapshot,
12
+ createRootComponent
13
+ } from "../../../utils/tests/element-data-test-test";
14
+ const pagePropControllerTest = (propDef, value, component, assert) => describe("Page", () => {
15
+ test(`can render ${propDef.type} v0 data`, async () => {
16
+ const descriptorV0 = {
17
+ type: propDef.type,
18
+ options: {}
19
+ };
20
+ const TestComponentType = "TestComponent";
21
+ const testId = "test-id";
22
+ const elementData = createRootComponent([
23
+ {
24
+ key: randomUUID(),
25
+ type: TestComponentType,
26
+ props: {
27
+ propKey: propDef.toPropData(value, descriptorV0)
28
+ }
29
+ }
30
+ ]);
31
+ const snapshot = createMakeswiftPageSnapshot(elementData);
32
+ const runtime = new ReactRuntime();
33
+ runtime.registerComponent(component(testId), {
34
+ type: TestComponentType,
35
+ label: "TestComponent",
36
+ props: {
37
+ propKey: propDef()
38
+ }
39
+ });
40
+ await act(
41
+ async () => render(
42
+ /* @__PURE__ */ jsx(ReactRuntimeProvider, { runtime, children: /* @__PURE__ */ jsx(Page, { snapshot }) })
43
+ )
44
+ );
45
+ assert(screen.getByTestId(testId));
46
+ });
47
+ test(`can render ${propDef.type} v1 data`, async () => {
48
+ const gapXDefinitionV1 = {
49
+ type: Types.GapX,
50
+ version: 1,
51
+ options: {}
52
+ };
53
+ const TestComponentType = "TestComponent";
54
+ const testId = "test-id";
55
+ const elementData = createRootComponent([
56
+ {
57
+ key: randomUUID(),
58
+ type: TestComponentType,
59
+ props: {
60
+ propKey: propDef.toPropData(value, gapXDefinitionV1)
61
+ }
62
+ }
63
+ ]);
64
+ const snapshot = createMakeswiftPageSnapshot(elementData);
65
+ const runtime = new ReactRuntime();
66
+ runtime.registerComponent(component(testId), {
67
+ type: TestComponentType,
68
+ label: "TestComponent",
69
+ props: {
70
+ propKey: propDef()
71
+ }
72
+ });
73
+ await act(
74
+ async () => render(
75
+ /* @__PURE__ */ jsx(ReactRuntimeProvider, { runtime, children: /* @__PURE__ */ jsx(Page, { snapshot }) })
76
+ )
77
+ );
78
+ assert(screen.getByTestId(testId));
79
+ });
80
+ });
81
+ export {
82
+ pagePropControllerTest
83
+ };
84
+ //# sourceMappingURL=page-prop-controller.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../src/next/components/tests/page-prop-controller.tsx"],"sourcesContent":["/** @jest-environment jsdom */\n\nimport { render, screen } from '@testing-library/react'\nimport '@testing-library/jest-dom'\n\nimport { Types, type Descriptor, type PropDef, type Value } from '@makeswift/prop-controllers'\n\nimport { type ElementData, type ComponentType } from '../../../state/react-page'\nimport { randomUUID } from 'crypto'\n\nimport { Page } from '../page'\nimport { act } from 'react-dom/test-utils'\nimport { ReactRuntimeProvider } from '../../context/react-runtime'\nimport { ReactRuntime } from '../../../react'\nimport {\n createMakeswiftPageSnapshot,\n createRootComponent,\n} from '../../../utils/tests/element-data-test-test'\n\nexport const pagePropControllerTest = <\n P extends PropDef,\n C extends ComponentType<{ propKey: Value<PropDef> | undefined }>,\n>(\n propDef: P,\n value: Value<typeof propDef>,\n component: (testId: string) => C,\n assert: (element: HTMLElement) => void,\n) =>\n describe('Page', () => {\n test(`can render ${propDef.type} v0 data`, async () => {\n // Arrange\n const descriptorV0: Descriptor<typeof propDef> = {\n type: propDef.type,\n options: {},\n }\n\n const TestComponentType = 'TestComponent'\n const testId = 'test-id'\n\n const elementData: ElementData = createRootComponent([\n {\n key: randomUUID(),\n type: TestComponentType,\n props: {\n propKey: propDef.toPropData(value, descriptorV0),\n },\n },\n ])\n const snapshot = createMakeswiftPageSnapshot(elementData)\n const runtime = new ReactRuntime()\n\n runtime.registerComponent(component(testId), {\n type: TestComponentType,\n label: 'TestComponent',\n props: {\n propKey: propDef(),\n },\n })\n\n await act(async () =>\n render(\n <ReactRuntimeProvider runtime={runtime}>\n <Page snapshot={snapshot} />\n </ReactRuntimeProvider>,\n ),\n )\n\n assert(screen.getByTestId(testId))\n })\n\n test(`can render ${propDef.type} v1 data`, async () => {\n // Arrange\n const gapXDefinitionV1: Descriptor<typeof propDef> = {\n type: Types.GapX,\n version: 1,\n options: {},\n }\n\n const TestComponentType = 'TestComponent'\n const testId = 'test-id'\n const elementData: ElementData = createRootComponent([\n {\n key: randomUUID(),\n type: TestComponentType,\n props: {\n propKey: propDef.toPropData(value, gapXDefinitionV1),\n },\n },\n ])\n const snapshot = createMakeswiftPageSnapshot(elementData)\n const runtime = new ReactRuntime()\n\n runtime.registerComponent(component(testId), {\n type: TestComponentType,\n label: 'TestComponent',\n props: {\n propKey: propDef(),\n },\n })\n\n await act(async () =>\n render(\n <ReactRuntimeProvider runtime={runtime}>\n <Page snapshot={snapshot} />\n </ReactRuntimeProvider>,\n ),\n )\n\n assert(screen.getByTestId(testId))\n })\n })\n"],"mappings":"AA8DY;AA5DZ,SAAS,QAAQ,cAAc;AAC/B,OAAO;AAEP,SAAS,aAAwD;AAGjE,SAAS,kBAAkB;AAE3B,SAAS,YAAY;AACrB,SAAS,WAAW;AACpB,SAAS,4BAA4B;AACrC,SAAS,oBAAoB;AAC7B;AAAA,EACE;AAAA,EACA;AAAA,OACK;AAEA,MAAM,yBAAyB,CAIpC,SACA,OACA,WACA,WAEA,SAAS,QAAQ,MAAM;AACrB,OAAK,cAAc,QAAQ,IAAI,YAAY,YAAY;AAErD,UAAM,eAA2C;AAAA,MAC/C,MAAM,QAAQ;AAAA,MACd,SAAS,CAAC;AAAA,IACZ;AAEA,UAAM,oBAAoB;AAC1B,UAAM,SAAS;AAEf,UAAM,cAA2B,oBAAoB;AAAA,MACnD;AAAA,QACE,KAAK,WAAW;AAAA,QAChB,MAAM;AAAA,QACN,OAAO;AAAA,UACL,SAAS,QAAQ,WAAW,OAAO,YAAY;AAAA,QACjD;AAAA,MACF;AAAA,IACF,CAAC;AACD,UAAM,WAAW,4BAA4B,WAAW;AACxD,UAAM,UAAU,IAAI,aAAa;AAEjC,YAAQ,kBAAkB,UAAU,MAAM,GAAG;AAAA,MAC3C,MAAM;AAAA,MACN,OAAO;AAAA,MACP,OAAO;AAAA,QACL,SAAS,QAAQ;AAAA,MACnB;AAAA,IACF,CAAC;AAED,UAAM;AAAA,MAAI,YACR;AAAA,QACE,oBAAC,wBAAqB,SACpB,8BAAC,QAAK,UAAoB,GAC5B;AAAA,MACF;AAAA,IACF;AAEA,WAAO,OAAO,YAAY,MAAM,CAAC;AAAA,EACnC,CAAC;AAED,OAAK,cAAc,QAAQ,IAAI,YAAY,YAAY;AAErD,UAAM,mBAA+C;AAAA,MACnD,MAAM,MAAM;AAAA,MACZ,SAAS;AAAA,MACT,SAAS,CAAC;AAAA,IACZ;AAEA,UAAM,oBAAoB;AAC1B,UAAM,SAAS;AACf,UAAM,cAA2B,oBAAoB;AAAA,MACnD;AAAA,QACE,KAAK,WAAW;AAAA,QAChB,MAAM;AAAA,QACN,OAAO;AAAA,UACL,SAAS,QAAQ,WAAW,OAAO,gBAAgB;AAAA,QACrD;AAAA,MACF;AAAA,IACF,CAAC;AACD,UAAM,WAAW,4BAA4B,WAAW;AACxD,UAAM,UAAU,IAAI,aAAa;AAEjC,YAAQ,kBAAkB,UAAU,MAAM,GAAG;AAAA,MAC3C,MAAM;AAAA,MACN,OAAO;AAAA,MACP,OAAO;AAAA,QACL,SAAS,QAAQ;AAAA,MACnB;AAAA,IACF,CAAC;AAED,UAAM;AAAA,MAAI,YACR;AAAA,QACE,oBAAC,wBAAqB,SACpB,8BAAC,QAAK,UAAoB,GAC5B;AAAA,MACF;AAAA,IACF;AAEA,WAAO,OAAO,YAAY,MAAM,CAAC;AAAA,EACnC,CAAC;AACH,CAAC;","names":[]}
@@ -1,7 +1,6 @@
1
1
  import { StyleControlType } from "../controls/style";
2
2
  const Types = {
3
3
  ResponsiveIconRadioGroup: "ResponsiveIconRadioGroup",
4
- ResponsiveNumber: "ResponsiveNumber",
5
4
  ResponsiveOpacity: "ResponsiveOpacity",
6
5
  ResponsiveSelect: "ResponsiveSelect",
7
6
  SocialLinks: "SocialLinks",
@@ -11,9 +10,6 @@ const Types = {
11
10
  function ResponsiveIconRadioGroup(options) {
12
11
  return { type: Types.ResponsiveIconRadioGroup, options };
13
12
  }
14
- function ResponsiveNumber(options = {}) {
15
- return { type: Types.ResponsiveNumber, options };
16
- }
17
13
  function ResponsiveOpacity(options = {}) {
18
14
  return { type: Types.ResponsiveOpacity, options };
19
15
  }
@@ -54,7 +50,6 @@ function TextInput(options = {}) {
54
50
  }
55
51
  export {
56
52
  ResponsiveIconRadioGroup,
57
- ResponsiveNumber,
58
53
  ResponsiveOpacity,
59
54
  ResponsiveSelect,
60
55
  SocialLinks,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/prop-controllers/descriptors.ts"],"sourcesContent":["import { ResponsiveColor } from '../runtimes/react/controls'\nimport { StyleControlFormattedValue } from '../runtimes/react/controls/style'\nimport type { Data } from '../state/react-page'\nimport { NumberControlDefinition } from '../controls/number'\nimport { NumberControlValue } from '../runtimes/react/controls/number'\nimport { StyleControlType } from '../controls/style'\nimport {\n CheckboxControlDefinition,\n ColorControlDefinition,\n ComboboxControlDefinition,\n ImageControlDefinition,\n LinkControlDefinition,\n ListControlDefinition,\n SelectControlDefinition,\n ShapeControlDefinition,\n SlotControlDefinition,\n TextAreaControlDefinition,\n TextInputControlDefinition,\n StyleControlDefinition,\n RichTextV2ControlDefinition,\n StyleV2ControlDefinition,\n TypographyControlDefinition,\n} from '../controls'\nimport { TextInputControlValue } from '../runtimes/react/controls/text-input'\nimport { TextAreaControlValue } from '../runtimes/react/controls/text-area'\nimport { ColorControlValue } from '../runtimes/react/controls/color'\nimport { SelectControlValue } from '../runtimes/react/controls/select'\nimport { CheckboxControlValue } from '../runtimes/react/controls/checkbox'\nimport { ResolveImageControlValue } from '../runtimes/react/controls/image'\nimport { ShapeControlValue } from '../runtimes/react/controls/shape'\nimport { ListControlValue } from '../runtimes/react/controls/list'\nimport { ComboboxControlValue } from '../runtimes/react/controls/combobox'\nimport { LinkControlValue } from '../runtimes/react/controls/link'\nimport { SlotControlValue } from '../runtimes/react/controls/slot'\nimport { RichTextControlDefinition } from '../controls/rich-text'\nimport { RichTextControlValue } from '../runtimes/react/controls/rich-text/rich-text'\nimport { RichTextV2ControlValue } from '../runtimes/react/controls/rich-text-v2'\nimport { StyleV2ControlFormattedValue } from '../runtimes/react/controls/style-v2'\nimport { IconRadioGroupControlDefinition } from '../controls/icon-radio-group'\nimport { IconRadioGroupControlValue } from '../runtimes/react/controls/icon-radio-group'\nimport { TypographyControlValue } from '../runtimes/react/controls/typography'\nimport {\n BorderDescriptor,\n CheckboxDescriptor,\n LinkDescriptor,\n ResolveLinkPropControllerValue,\n Types as PropControllerTypes,\n ResponsiveValueType,\n ShadowsDescriptor,\n ResolveShadowsPropControllerValue,\n ResponsiveValue,\n Options,\n ResponsiveLengthDescriptor,\n ResolveResponsiveLengthPropControllerValue,\n NumberDescriptor,\n ResolveNumberPropControllerValue,\n ResponsiveColorDescriptor,\n ResolveCheckboxPropControllerValue,\n BorderRadiusDescriptor,\n ResolveBorderPropControllerValue,\n ResolveBorderRadiusPropControllerValue,\n DateDescriptor,\n ResolveDatePropControllerValue,\n FontDescriptor,\n ResolveFontPropControllerValue,\n VideoDescriptor,\n ResolveVideoPropControllerValue,\n TableDescriptor,\n ResolveTablePropControllerValue,\n MarginDescriptor,\n ResolveMarginPropControllerValue,\n PaddingDescriptor,\n ResolvePaddingPropControllerValue,\n WidthDescriptor,\n ResolveWidthPropControllerValue,\n TextStyleDescriptor,\n ResolveTextStylePropControllerValue,\n NavigationLinksDescriptor,\n ResolveNavigationLinksPropControllerValue,\n TextAreaDescriptor,\n ResolveTextAreaPropControllerValue,\n ResolveGapXPropControllerValue,\n GapXDescriptor,\n ResolveGapYPropControllerValue,\n GapYDescriptor,\n ElementIDDescriptor,\n ResolveElementIDPropControllerValue,\n TableFormFieldsDescriptor,\n ResolveTableFormFieldsPropControllerValue,\n GridDescriptor,\n ResolveGridPropControllerValue,\n ImageDescriptor,\n ResolveImagePropControllerValue,\n ImagesDescriptor,\n ResolveImagesPropControllerValue,\n BackgroundsDescriptor,\n ResolveBackgroundsPropControllerValue,\n} from '@makeswift/prop-controllers'\nimport { DeletedPropControllerDescriptor } from './deleted'\n\nexport type { Data }\n\ntype IconName =\n | 'HeightAuto16'\n | 'HeightMatch16'\n | 'VerticalAlignStart16'\n | 'VerticalAlignMiddle16'\n | 'VerticalAlignEnd16'\n | 'VerticalAlignSpaceBetween16'\n | 'ButtonPill16'\n | 'ButtonRounded16'\n | 'ButtonSquare16'\n | 'SizeSmall16'\n | 'SizeMedium16'\n | 'SizeLarge16'\n | 'ArrowInside16'\n | 'ArrowCenter16'\n | 'ArrowOutside16'\n | 'CountdownSolid16'\n | 'CountdownSolidSplit16'\n | 'CountdownOutline16'\n | 'CountdownOutlineSplit16'\n | 'CountdownNaked16'\n | 'Sun16'\n | 'Moon16'\n | 'AlignLeft16'\n | 'AlignCenter16'\n | 'AlignRight16'\n | 'Star16'\n | 'StarCircle16'\n | 'StarRoundedSquare16'\n | 'StarSquare16'\n\nexport type Gap = { value: number; unit: 'px' }\n\nexport const Types = {\n ResponsiveIconRadioGroup: 'ResponsiveIconRadioGroup',\n ResponsiveNumber: 'ResponsiveNumber',\n ResponsiveOpacity: 'ResponsiveOpacity',\n ResponsiveSelect: 'ResponsiveSelect',\n SocialLinks: 'SocialLinks',\n TextInput: 'TextInput',\n Style: StyleControlType,\n} as const\n\nexport type IconRadioGroupOption<T extends string> = { value: T; label: string; icon: IconName }\n\nexport type ResponsiveIconRadioGroupValue<T extends string = string> = ResponsiveValue<T>\n\nexport type ResponsiveIconRadioGroupOptions<T extends string = string, U extends T = T> = Options<{\n label?: string\n options: IconRadioGroupOption<T>[]\n defaultValue?: U\n hidden?: boolean\n}>\n\nexport type ResponsiveIconRadioGroupDescriptor<\n T extends ResponsiveIconRadioGroupValue<string> = ResponsiveIconRadioGroupValue<string>,\n> = {\n type: typeof Types.ResponsiveIconRadioGroup\n options: ResponsiveIconRadioGroupOptions<ResponsiveValueType<T>>\n}\n\n// HACK(miguel): We have to use a layer of indirection with `_T` and `T` because otherwise the\n// values provided would undergo type widening. For some reason, the extra layer of indirection\n// reuslts in TypeScript not widening types. Note, this only happens when the returned value of this\n// function is passed to another as an argument, which is common with the `registerComponent` API.\n/**\n * @deprecated Imports from `@makeswift/runtime/prop-controllers` are deprecated. Use\n * `@makeswift/runtime/controls` instead.\n */\nexport function ResponsiveIconRadioGroup<_T extends string, T extends _T, U extends T>(\n options: ResponsiveIconRadioGroupOptions<T, U>,\n): ResponsiveIconRadioGroupDescriptor<ResponsiveIconRadioGroupValue<T>> {\n return { type: Types.ResponsiveIconRadioGroup, options }\n}\n\nexport type ResponsiveNumberValue = ResponsiveValue<number>\n\nexport type ResponsiveNumberOptions = Options<{\n label?: string\n defaultValue?: number\n min?: number\n max?: number\n step?: number\n suffix?: string\n hidden?: boolean\n}>\n\nexport type ResponsiveNumberDescriptor<_T = ResponsiveNumberValue> = {\n type: typeof Types.ResponsiveNumber\n options: ResponsiveNumberOptions\n}\n\n/**\n * @deprecated Imports from `@makeswift/runtime/prop-controllers` are deprecated. Use\n * `@makeswift/runtime/controls` instead.\n */\nexport function ResponsiveNumber(\n options: ResponsiveNumberOptions = {},\n): ResponsiveNumberDescriptor {\n return { type: Types.ResponsiveNumber, options }\n}\n\nexport type ResponsiveOpacityValue = ResponsiveValue<number>\n\ntype ResponsiveOpacityOptions = Options<Record<string, never>>\n\ntype ResponsiveOpacityDescriptor<_T = ResponsiveOpacityValue> = {\n type: typeof Types.ResponsiveOpacity\n options: ResponsiveOpacityOptions\n}\n\n/**\n * @deprecated Imports from `@makeswift/runtime/prop-controllers` are deprecated. Use\n * `@makeswift/runtime/controls` instead.\n */\nexport function ResponsiveOpacity(\n options: ResponsiveOpacityOptions = {},\n): ResponsiveOpacityDescriptor {\n return { type: Types.ResponsiveOpacity, options }\n}\n\nexport type ResponsiveSelectValue<T extends string = string> = ResponsiveValue<T>\n\nexport type SelectLabelOrientation = 'vertical' | 'horizontal'\n\nexport type SelectOption<T extends string> = { value: T; label: string }\n\nexport type ResponsiveSelectOptions<T extends string = string, U extends T = T> = Options<{\n label?: string\n labelOrientation?: SelectLabelOrientation\n options: SelectOption<T>[]\n defaultValue?: U\n hidden?: boolean\n}>\n\nexport type ResponsiveSelectDescriptor<\n T extends ResponsiveSelectValue<string> = ResponsiveSelectValue<string>,\n> = {\n type: typeof Types.ResponsiveSelect\n options: ResponsiveSelectOptions<ResponsiveValueType<T>>\n}\n\n// HACK(miguel): We have to use a layer of indirection with `_T` and `T` because otherwise the\n// values provided would undergo type widening. For some reason, the extra layer of indirection\n// reuslts in TypeScript not widening types. Note, this only happens when the returned value of this\n// function is passed to another as an argument, which is common with the `registerComponent` API.\n/**\n * @deprecated Imports from `@makeswift/runtime/prop-controllers` are deprecated. Use\n * `@makeswift/runtime/controls` instead.\n */\nexport function ResponsiveSelect<_T extends string, T extends _T, U extends T>(\n options: ResponsiveSelectOptions<T, U>,\n): ResponsiveSelectDescriptor<ResponsiveSelectValue<T>> {\n return { type: Types.ResponsiveSelect, options }\n}\n\nexport const socialLinkTypesV0 = [\n 'angellist',\n 'codepen',\n 'discord',\n 'dribbble',\n 'facebook',\n 'github',\n 'instagram',\n 'linkedin',\n 'medium',\n 'pinterest',\n 'reddit',\n 'rss',\n 'snapchat',\n 'soundcloud',\n 'spotify',\n 'telegram',\n 'tumblr',\n 'twitch',\n 'twitter',\n 'vimeo',\n 'whatsapp',\n 'yelp',\n 'youtube',\n] as const\n\ntype SocialLinkTypeV0 = typeof socialLinkTypesV0[number]\n\nexport const socialLinkTypesV1 = [...socialLinkTypesV0, 'x', 'slack'] as const\n\ntype SocialLinkTypeV1 = typeof socialLinkTypesV1[number]\n\ntype SocialLinkV0 = { type: SocialLinkTypeV0; url: string }\n\ntype SocialLinkV1 = { type: SocialLinkTypeV1; url: string }\n\ntype SocialLinksLinkV0 = { id: string; payload: SocialLinkV0 }\n\ntype SocialLinksLinkV1 = { id: string; payload: SocialLinkV1 }\n\ntype SocialLinksValueV0 = { links: SocialLinksLinkV0[]; openInNewTab: boolean }\n\ntype SocialLinksValueV1 = { links: SocialLinksLinkV1[]; openInNewTab: boolean }\n\nexport type SocialLinksValue = SocialLinksValueV0 | SocialLinksValueV1\n\ntype SocialLinksOptions = Options<{ preset?: SocialLinksValueV1 }>\n\nexport type SocialLinksDescriptor<_T = SocialLinksValueV1> = {\n type: typeof Types.SocialLinks\n options: SocialLinksOptions\n version?: 1\n}\n\n/**\n * @deprecated Imports from `@makeswift/runtime/prop-controllers` are deprecated. Use\n * `@makeswift/runtime/controls` instead.\n */\nexport function SocialLinks(options: SocialLinksOptions = {}): SocialLinksDescriptor {\n return { type: Types.SocialLinks, options, version: 1 }\n}\n\nexport type TextInputValue = string\n\nexport type TextInputOptions = Options<{ label?: string; placeholder?: string; hidden?: boolean }>\n\nexport type TextInputDescriptor<_T = TextInputValue> = {\n type: typeof Types.TextInput\n options: TextInputOptions\n}\n\n/**\n * @deprecated Imports from `@makeswift/runtime/prop-controllers` are deprecated. Use\n * `@makeswift/runtime/controls` instead.\n */\nexport function TextInput(options: TextInputOptions = {}): TextInputDescriptor {\n return { type: Types.TextInput, options }\n}\n\nexport type Descriptor<T extends Data = Data> =\n | DeletedPropControllerDescriptor<T>\n | BackgroundsDescriptor<T>\n | BorderDescriptor<T>\n | BorderRadiusDescriptor<T>\n | CheckboxDescriptor<T>\n | DateDescriptor<T>\n | ElementIDDescriptor<T>\n | FontDescriptor<T>\n | GapXDescriptor<T>\n | GapYDescriptor<T>\n | GridDescriptor<T>\n | ImageDescriptor<T>\n | ImagesDescriptor<T>\n | LinkDescriptor<T>\n | MarginDescriptor<T>\n | NavigationLinksDescriptor<T>\n | NumberDescriptor<T>\n | PaddingDescriptor<T>\n | ResponsiveColorDescriptor<T>\n | ResponsiveIconRadioGroupDescriptor<\n T extends ResponsiveIconRadioGroupValue<string> ? T : ResponsiveIconRadioGroupValue<string>\n >\n | ResponsiveLengthDescriptor<T>\n | ResponsiveNumberDescriptor<T>\n | ResponsiveOpacityDescriptor<T>\n | ResponsiveSelectDescriptor<\n T extends ResponsiveSelectValue<string> ? T : ResponsiveSelectValue<string>\n >\n | ShadowsDescriptor<T>\n | SocialLinksDescriptor<T>\n | TableDescriptor<T>\n | TableFormFieldsDescriptor<T>\n | TextAreaDescriptor<T>\n | TextInputDescriptor<T>\n | TextStyleDescriptor<T>\n | VideoDescriptor<T>\n | WidthDescriptor<T>\n | StyleControlDefinition\n | StyleV2ControlDefinition\n | NumberControlDefinition\n | CheckboxControlDefinition\n | TextInputControlDefinition\n | TextAreaControlDefinition\n | SelectControlDefinition\n | ColorControlDefinition\n | IconRadioGroupControlDefinition\n | ImageControlDefinition\n | ComboboxControlDefinition\n | ShapeControlDefinition\n | ListControlDefinition\n | LinkControlDefinition\n | SlotControlDefinition\n | RichTextControlDefinition\n | RichTextV2ControlDefinition\n | TypographyControlDefinition\n\nexport type PanelDescriptorType =\n | typeof PropControllerTypes.Backgrounds\n | typeof Types.ResponsiveIconRadioGroup\n | typeof PropControllerTypes.Margin\n | typeof PropControllerTypes.Padding\n | typeof PropControllerTypes.Shadows\n | typeof PropControllerTypes.Border\n | typeof PropControllerTypes.GapY\n | typeof PropControllerTypes.GapX\n | typeof PropControllerTypes.BorderRadius\n | typeof PropControllerTypes.Checkbox\n | typeof Types.TextInput\n | typeof PropControllerTypes.Link\n | typeof Types.ResponsiveSelect\n | typeof PropControllerTypes.ResponsiveColor\n | typeof PropControllerTypes.TextStyle\n | typeof PropControllerTypes.Images\n | typeof Types.ResponsiveNumber\n | typeof PropControllerTypes.Number\n | typeof PropControllerTypes.Date\n | typeof PropControllerTypes.Font\n | typeof PropControllerTypes.TextArea\n | typeof PropControllerTypes.Table\n | typeof PropControllerTypes.Image\n | typeof Types.ResponsiveOpacity\n | typeof Types.SocialLinks\n | typeof PropControllerTypes.Video\n | typeof PropControllerTypes.NavigationLinks\n\nexport type PanelDescriptor<T extends Data = Data> = Extract<\n Descriptor<T>,\n { type: PanelDescriptorType }\n>\n\nexport type DescriptorValueType<T extends Descriptor> = T extends NumberControlDefinition\n ? NumberControlValue<T>\n : T extends CheckboxControlDefinition\n ? CheckboxControlValue<T>\n : T extends TextInputControlDefinition\n ? TextInputControlValue<T>\n : T extends TextAreaControlDefinition\n ? TextAreaControlValue<T>\n : T extends SelectControlDefinition\n ? SelectControlValue<T>\n : T extends ColorControlDefinition\n ? ColorControlValue<T>\n : T extends StyleControlDefinition\n ? StyleControlFormattedValue\n : T extends StyleV2ControlDefinition\n ? StyleV2ControlFormattedValue\n : T extends IconRadioGroupControlDefinition\n ? IconRadioGroupControlValue<T>\n : T extends ImageControlDefinition\n ? ResolveImageControlValue<T>\n : T extends ComboboxControlDefinition\n ? ComboboxControlValue<T>\n : T extends ShapeControlDefinition\n ? ShapeControlValue<T>\n : T extends ListControlDefinition\n ? ListControlValue<T>\n : T extends LinkControlDefinition\n ? LinkControlValue<T>\n : T extends SlotControlDefinition\n ? SlotControlValue\n : T extends RichTextControlDefinition\n ? RichTextControlValue\n : T extends RichTextV2ControlDefinition\n ? RichTextV2ControlValue\n : T extends StyleV2ControlDefinition\n ? StyleV2ControlFormattedValue\n : T extends TypographyControlDefinition\n ? TypographyControlValue\n : T['type'] extends typeof PropControllerTypes.ResponsiveColor\n ? // TODO(miguel): We're not importing a resolver type from `@makeswift/prop-controllers` because\n // the resolved type is tightly coupled with the runtime (i.e., it's the result of an API call).\n // This means that we probably want to rethink how types are resolved and where that lives.\n ResponsiveColor | null | undefined\n : T['type'] extends typeof PropControllerTypes.Backgrounds\n ? ResolveBackgroundsPropControllerValue<\n Extract<T, { type: typeof PropControllerTypes.Backgrounds }>\n >\n : T['type'] extends typeof PropControllerTypes.Checkbox\n ? ResolveCheckboxPropControllerValue<Extract<T, { type: typeof PropControllerTypes.Checkbox }>>\n : T['type'] extends typeof PropControllerTypes.Date\n ? ResolveDatePropControllerValue<Extract<T, { type: typeof PropControllerTypes.Date }>>\n : T['type'] extends typeof PropControllerTypes.ElementID\n ? ResolveElementIDPropControllerValue<Extract<T, { type: typeof PropControllerTypes.ElementID }>>\n : T['type'] extends typeof PropControllerTypes.Font\n ? ResolveFontPropControllerValue<Extract<T, { type: typeof PropControllerTypes.Font }>>\n : T['type'] extends typeof PropControllerTypes.GapX\n ? ResolveGapXPropControllerValue<Extract<T, { type: typeof PropControllerTypes.GapX }>>\n : T['type'] extends typeof PropControllerTypes.GapY\n ? ResolveGapYPropControllerValue<Extract<T, { type: typeof PropControllerTypes.GapY }>>\n : T['type'] extends typeof PropControllerTypes.Grid\n ? ResolveGridPropControllerValue<Extract<T, { type: typeof PropControllerTypes.Grid }>>\n : T['type'] extends typeof PropControllerTypes.Image\n ? ResolveImagePropControllerValue<Extract<T, { type: typeof PropControllerTypes.Image }>>\n : T['type'] extends typeof PropControllerTypes.Images\n ? ResolveImagesPropControllerValue<Extract<T, { type: typeof PropControllerTypes.Images }>>\n : T['type'] extends typeof PropControllerTypes.Link\n ? ResolveLinkPropControllerValue<Extract<T, { type: typeof PropControllerTypes.Link }>>\n : T['type'] extends typeof PropControllerTypes.Width\n ? ResolveWidthPropControllerValue<Extract<T, { type: typeof PropControllerTypes.Width }>>\n : T['type'] extends typeof PropControllerTypes.Padding\n ? ResolvePaddingPropControllerValue<Extract<T, { type: typeof PropControllerTypes.Padding }>>\n : T['type'] extends typeof PropControllerTypes.Margin\n ? ResolveMarginPropControllerValue<Extract<T, { type: typeof PropControllerTypes.Margin }>>\n : T['type'] extends typeof PropControllerTypes.NavigationLinks\n ? ResolveNavigationLinksPropControllerValue<\n Extract<T, { type: typeof PropControllerTypes.NavigationLinks }>\n >\n : T['type'] extends typeof PropControllerTypes.BorderRadius\n ? ResolveBorderRadiusPropControllerValue<\n Extract<T, { type: typeof PropControllerTypes.BorderRadius }>\n >\n : T['type'] extends typeof PropControllerTypes.Shadows\n ? ResolveShadowsPropControllerValue<Extract<T, { type: typeof PropControllerTypes.Shadows }>>\n : T['type'] extends typeof PropControllerTypes.ResponsiveLength\n ? ResolveResponsiveLengthPropControllerValue<\n Extract<T, { type: typeof PropControllerTypes.ResponsiveLength }>\n >\n : T['type'] extends typeof PropControllerTypes.Border\n ? ResolveBorderPropControllerValue<Extract<T, { type: typeof PropControllerTypes.Border }>>\n : T['type'] extends typeof PropControllerTypes.Number\n ? ResolveNumberPropControllerValue<Extract<T, { type: typeof PropControllerTypes.Number }>>\n : T['type'] extends typeof PropControllerTypes.Table\n ? ResolveTablePropControllerValue<Extract<T, { type: typeof PropControllerTypes.Table }>>\n : T['type'] extends typeof PropControllerTypes.TableFormFields\n ? ResolveTableFormFieldsPropControllerValue<\n Extract<T, { type: typeof PropControllerTypes.TableFormFields }>\n >\n : T['type'] extends typeof PropControllerTypes.TextStyle\n ? ResolveTextStylePropControllerValue<Extract<T, { type: typeof PropControllerTypes.TextStyle }>>\n : T['type'] extends typeof PropControllerTypes.TextArea\n ? ResolveTextAreaPropControllerValue<Extract<T, { type: typeof PropControllerTypes.TextArea }>>\n : T['type'] extends typeof PropControllerTypes.Video\n ? ResolveVideoPropControllerValue<Extract<T, { type: typeof PropControllerTypes.Video }>>\n : T extends Descriptor<infer U>\n ? U | undefined\n : never\n\nexport type PanelDescriptorValueType<T extends PanelDescriptor> = T extends PanelDescriptor<infer U>\n ? U\n : never\n"],"mappings":"AAKA,SAAS,wBAAwB;AAkI1B,MAAM,QAAQ;AAAA,EACnB,0BAA0B;AAAA,EAC1B,kBAAkB;AAAA,EAClB,mBAAmB;AAAA,EACnB,kBAAkB;AAAA,EAClB,aAAa;AAAA,EACb,WAAW;AAAA,EACX,OAAO;AACT;AA4BO,SAAS,yBACd,SACsE;AACtE,SAAO,EAAE,MAAM,MAAM,0BAA0B,QAAQ;AACzD;AAuBO,SAAS,iBACd,UAAmC,CAAC,GACR;AAC5B,SAAO,EAAE,MAAM,MAAM,kBAAkB,QAAQ;AACjD;AAeO,SAAS,kBACd,UAAoC,CAAC,GACR;AAC7B,SAAO,EAAE,MAAM,MAAM,mBAAmB,QAAQ;AAClD;AA+BO,SAAS,iBACd,SACsD;AACtD,SAAO,EAAE,MAAM,MAAM,kBAAkB,QAAQ;AACjD;AAEO,MAAM,oBAAoB;AAAA,EAC/B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF;AAIO,MAAM,oBAAoB,CAAC,GAAG,mBAAmB,KAAK,OAAO;AA8B7D,SAAS,YAAY,UAA8B,CAAC,GAA0B;AACnF,SAAO,EAAE,MAAM,MAAM,aAAa,SAAS,SAAS,EAAE;AACxD;AAeO,SAAS,UAAU,UAA4B,CAAC,GAAwB;AAC7E,SAAO,EAAE,MAAM,MAAM,WAAW,QAAQ;AAC1C;","names":[]}
1
+ {"version":3,"sources":["../../../src/prop-controllers/descriptors.ts"],"sourcesContent":["import {\n CheckboxControlDefinition,\n IconRadioGroupControlDefinition,\n NumberControlDefinition,\n TextInputControlDefinition,\n TextAreaControlDefinition,\n} from '@makeswift/controls'\nimport { ResponsiveColor } from '../runtimes/react/controls'\nimport { StyleControlFormattedValue } from '../runtimes/react/controls/style'\nimport type { Data } from '../state/react-page'\nimport { NumberControlValue } from '../runtimes/react/controls/number'\nimport { StyleControlType } from '../controls/style'\nimport {\n ColorControlDefinition,\n ComboboxControlDefinition,\n ImageControlDefinition,\n LinkControlDefinition,\n ListControlDefinition,\n SelectControlDefinition,\n ShapeControlDefinition,\n SlotControlDefinition,\n StyleControlDefinition,\n RichTextV2ControlDefinition,\n StyleV2ControlDefinition,\n TypographyControlDefinition,\n} from '../controls'\nimport { TextInputControlValue } from '../runtimes/react/controls/text-input'\nimport { TextAreaControlValue } from '../runtimes/react/controls/text-area'\nimport { ColorControlValue } from '../runtimes/react/controls/color'\nimport { SelectControlValue } from '../runtimes/react/controls/select'\nimport { CheckboxControlValue } from '../runtimes/react/controls/checkbox'\nimport { ResolveImageControlValue } from '../runtimes/react/controls/image'\nimport { ShapeControlValue } from '../runtimes/react/controls/shape'\nimport { ListControlValue } from '../runtimes/react/controls/list'\nimport { ComboboxControlValue } from '../runtimes/react/controls/combobox'\nimport { LinkControlValue } from '../runtimes/react/controls/link'\nimport { SlotControlValue } from '../runtimes/react/controls/slot'\nimport { RichTextControlDefinition } from '../controls/rich-text'\nimport { RichTextControlValue } from '../runtimes/react/controls/rich-text/rich-text'\nimport { RichTextV2ControlValue } from '../runtimes/react/controls/rich-text-v2'\nimport { StyleV2ControlFormattedValue } from '../runtimes/react/controls/style-v2'\nimport { IconRadioGroupControlValue } from '../runtimes/react/controls/icon-radio-group'\nimport { TypographyControlValue } from '../runtimes/react/controls/typography'\nimport {\n BorderDescriptor,\n CheckboxDescriptor,\n LinkDescriptor,\n ResolveLinkPropControllerValue,\n Types as PropControllerTypes,\n ResponsiveValueType,\n ShadowsDescriptor,\n ResolveShadowsPropControllerValue,\n ResponsiveValue,\n Options,\n ResponsiveLengthDescriptor,\n ResolveResponsiveLengthPropControllerValue,\n NumberDescriptor,\n ResolveNumberPropControllerValue,\n ResponsiveColorDescriptor,\n ResolveCheckboxPropControllerValue,\n BorderRadiusDescriptor,\n ResolveBorderPropControllerValue,\n ResolveBorderRadiusPropControllerValue,\n DateDescriptor,\n ResolveDatePropControllerValue,\n FontDescriptor,\n ResolveFontPropControllerValue,\n VideoDescriptor,\n ResolveVideoPropControllerValue,\n TableDescriptor,\n ResolveTablePropControllerValue,\n MarginDescriptor,\n ResolveMarginPropControllerValue,\n PaddingDescriptor,\n ResolvePaddingPropControllerValue,\n WidthDescriptor,\n ResolveWidthPropControllerValue,\n TextStyleDescriptor,\n ResolveTextStylePropControllerValue,\n NavigationLinksDescriptor,\n ResolveNavigationLinksPropControllerValue,\n TextAreaDescriptor,\n ResolveTextAreaPropControllerValue,\n GapX,\n ResponsiveNumber,\n ResolveGapYPropControllerValue,\n GapYDescriptor,\n ElementIDDescriptor,\n ResolveElementIDPropControllerValue,\n TableFormFieldsDescriptor,\n ResolveTableFormFieldsPropControllerValue,\n GridDescriptor,\n ResolveGridPropControllerValue,\n ImageDescriptor,\n ResolveImagePropControllerValue,\n ImagesDescriptor,\n ResolveImagesPropControllerValue,\n BackgroundsDescriptor,\n ResolveBackgroundsPropControllerValue,\n type Descriptor as PropDescriptor,\n type Value as PropValue,\n} from '@makeswift/prop-controllers'\nimport { DeletedPropControllerDescriptor } from './deleted'\n\nexport type { Data }\n\ntype IconName =\n | 'HeightAuto16'\n | 'HeightMatch16'\n | 'VerticalAlignStart16'\n | 'VerticalAlignMiddle16'\n | 'VerticalAlignEnd16'\n | 'VerticalAlignSpaceBetween16'\n | 'ButtonPill16'\n | 'ButtonRounded16'\n | 'ButtonSquare16'\n | 'SizeSmall16'\n | 'SizeMedium16'\n | 'SizeLarge16'\n | 'ArrowInside16'\n | 'ArrowCenter16'\n | 'ArrowOutside16'\n | 'CountdownSolid16'\n | 'CountdownSolidSplit16'\n | 'CountdownOutline16'\n | 'CountdownOutlineSplit16'\n | 'CountdownNaked16'\n | 'Sun16'\n | 'Moon16'\n | 'AlignLeft16'\n | 'AlignCenter16'\n | 'AlignRight16'\n | 'Star16'\n | 'StarCircle16'\n | 'StarRoundedSquare16'\n | 'StarSquare16'\n\nexport type Gap = { value: number; unit: 'px' }\n\nexport const Types = {\n ResponsiveIconRadioGroup: 'ResponsiveIconRadioGroup',\n ResponsiveOpacity: 'ResponsiveOpacity',\n ResponsiveSelect: 'ResponsiveSelect',\n SocialLinks: 'SocialLinks',\n TextInput: 'TextInput',\n Style: StyleControlType,\n} as const\n\nexport type IconRadioGroupOption<T extends string> = { value: T; label: string; icon: IconName }\n\nexport type ResponsiveIconRadioGroupValue<T extends string = string> = ResponsiveValue<T>\n\nexport type ResponsiveIconRadioGroupOptions<T extends string = string, U extends T = T> = Options<{\n label?: string\n options: IconRadioGroupOption<T>[]\n defaultValue?: U\n hidden?: boolean\n}>\n\nexport type ResponsiveIconRadioGroupDescriptor<\n T extends ResponsiveIconRadioGroupValue<string> = ResponsiveIconRadioGroupValue<string>,\n> = {\n type: typeof Types.ResponsiveIconRadioGroup\n options: ResponsiveIconRadioGroupOptions<ResponsiveValueType<T>>\n}\n\n// HACK(miguel): We have to use a layer of indirection with `_T` and `T` because otherwise the\n// values provided would undergo type widening. For some reason, the extra layer of indirection\n// reuslts in TypeScript not widening types. Note, this only happens when the returned value of this\n// function is passed to another as an argument, which is common with the `registerComponent` API.\n/**\n * @deprecated Imports from `@makeswift/runtime/prop-controllers` are deprecated. Use\n * `@makeswift/runtime/controls` instead.\n */\nexport function ResponsiveIconRadioGroup<_T extends string, T extends _T, U extends T>(\n options: ResponsiveIconRadioGroupOptions<T, U>,\n): ResponsiveIconRadioGroupDescriptor<ResponsiveIconRadioGroupValue<T>> {\n return { type: Types.ResponsiveIconRadioGroup, options }\n}\n\nexport type ResponsiveOpacityValue = ResponsiveValue<number>\n\ntype ResponsiveOpacityOptions = Options<Record<string, never>>\n\ntype ResponsiveOpacityDescriptor<_T = ResponsiveOpacityValue> = {\n type: typeof Types.ResponsiveOpacity\n options: ResponsiveOpacityOptions\n}\n\n/**\n * @deprecated Imports from `@makeswift/runtime/prop-controllers` are deprecated. Use\n * `@makeswift/runtime/controls` instead.\n */\nexport function ResponsiveOpacity(\n options: ResponsiveOpacityOptions = {},\n): ResponsiveOpacityDescriptor {\n return { type: Types.ResponsiveOpacity, options }\n}\n\nexport type ResponsiveSelectValue<T extends string = string> = ResponsiveValue<T>\n\nexport type SelectLabelOrientation = 'vertical' | 'horizontal'\n\nexport type SelectOption<T extends string> = { value: T; label: string }\n\nexport type ResponsiveSelectOptions<T extends string = string, U extends T = T> = Options<{\n label?: string\n labelOrientation?: SelectLabelOrientation\n options: SelectOption<T>[]\n defaultValue?: U\n hidden?: boolean\n}>\n\nexport type ResponsiveSelectDescriptor<\n T extends ResponsiveSelectValue<string> = ResponsiveSelectValue<string>,\n> = {\n type: typeof Types.ResponsiveSelect\n options: ResponsiveSelectOptions<ResponsiveValueType<T>>\n}\n\n// HACK(miguel): We have to use a layer of indirection with `_T` and `T` because otherwise the\n// values provided would undergo type widening. For some reason, the extra layer of indirection\n// reuslts in TypeScript not widening types. Note, this only happens when the returned value of this\n// function is passed to another as an argument, which is common with the `registerComponent` API.\n/**\n * @deprecated Imports from `@makeswift/runtime/prop-controllers` are deprecated. Use\n * `@makeswift/runtime/controls` instead.\n */\nexport function ResponsiveSelect<_T extends string, T extends _T, U extends T>(\n options: ResponsiveSelectOptions<T, U>,\n): ResponsiveSelectDescriptor<ResponsiveSelectValue<T>> {\n return { type: Types.ResponsiveSelect, options }\n}\n\nexport const socialLinkTypesV0 = [\n 'angellist',\n 'codepen',\n 'discord',\n 'dribbble',\n 'facebook',\n 'github',\n 'instagram',\n 'linkedin',\n 'medium',\n 'pinterest',\n 'reddit',\n 'rss',\n 'snapchat',\n 'soundcloud',\n 'spotify',\n 'telegram',\n 'tumblr',\n 'twitch',\n 'twitter',\n 'vimeo',\n 'whatsapp',\n 'yelp',\n 'youtube',\n] as const\n\ntype SocialLinkTypeV0 = typeof socialLinkTypesV0[number]\n\nexport const socialLinkTypesV1 = [...socialLinkTypesV0, 'x', 'slack'] as const\n\ntype SocialLinkTypeV1 = typeof socialLinkTypesV1[number]\n\ntype SocialLinkV0 = { type: SocialLinkTypeV0; url: string }\n\ntype SocialLinkV1 = { type: SocialLinkTypeV1; url: string }\n\ntype SocialLinksLinkV0 = { id: string; payload: SocialLinkV0 }\n\ntype SocialLinksLinkV1 = { id: string; payload: SocialLinkV1 }\n\ntype SocialLinksValueV0 = { links: SocialLinksLinkV0[]; openInNewTab: boolean }\n\ntype SocialLinksValueV1 = { links: SocialLinksLinkV1[]; openInNewTab: boolean }\n\nexport type SocialLinksValue = SocialLinksValueV0 | SocialLinksValueV1\n\ntype SocialLinksOptions = Options<{ preset?: SocialLinksValueV1 }>\n\nexport type SocialLinksDescriptor<_T = SocialLinksValueV1> = {\n type: typeof Types.SocialLinks\n options: SocialLinksOptions\n version?: 1\n}\n\n/**\n * @deprecated Imports from `@makeswift/runtime/prop-controllers` are deprecated. Use\n * `@makeswift/runtime/controls` instead.\n */\nexport function SocialLinks(options: SocialLinksOptions = {}): SocialLinksDescriptor {\n return { type: Types.SocialLinks, options, version: 1 }\n}\n\nexport type TextInputValue = string\n\nexport type TextInputOptions = Options<{ label?: string; placeholder?: string; hidden?: boolean }>\n\nexport type TextInputDescriptor<_T = TextInputValue> = {\n type: typeof Types.TextInput\n options: TextInputOptions\n}\n\n/**\n * @deprecated Imports from `@makeswift/runtime/prop-controllers` are deprecated. Use\n * `@makeswift/runtime/controls` instead.\n */\nexport function TextInput(options: TextInputOptions = {}): TextInputDescriptor {\n return { type: Types.TextInput, options }\n}\n\nexport type Descriptor<T extends Data = Data> =\n | DeletedPropControllerDescriptor<T>\n | BackgroundsDescriptor<T>\n | BorderDescriptor<T>\n | BorderRadiusDescriptor<T>\n | CheckboxDescriptor<T>\n | DateDescriptor<T>\n | ElementIDDescriptor<T>\n | FontDescriptor<T>\n | PropDescriptor<typeof GapX>\n | GapYDescriptor<T>\n | GridDescriptor<T>\n | ImageDescriptor<T>\n | ImagesDescriptor<T>\n | LinkDescriptor<T>\n | MarginDescriptor<T>\n | NavigationLinksDescriptor<T>\n | NumberDescriptor<T>\n | PaddingDescriptor<T>\n | ResponsiveColorDescriptor<T>\n | ResponsiveIconRadioGroupDescriptor<\n T extends ResponsiveIconRadioGroupValue<string> ? T : ResponsiveIconRadioGroupValue<string>\n >\n | ResponsiveLengthDescriptor<T>\n | PropDescriptor<typeof ResponsiveNumber>\n | ResponsiveOpacityDescriptor<T>\n | ResponsiveSelectDescriptor<\n T extends ResponsiveSelectValue<string> ? T : ResponsiveSelectValue<string>\n >\n | ShadowsDescriptor<T>\n | SocialLinksDescriptor<T>\n | TableDescriptor<T>\n | TableFormFieldsDescriptor<T>\n | TextAreaDescriptor<T>\n | TextInputDescriptor<T>\n | TextStyleDescriptor<T>\n | VideoDescriptor<T>\n | WidthDescriptor<T>\n | StyleControlDefinition\n | StyleV2ControlDefinition\n | NumberControlDefinition\n | CheckboxControlDefinition\n | TextInputControlDefinition\n | TextAreaControlDefinition\n | SelectControlDefinition\n | ColorControlDefinition\n | IconRadioGroupControlDefinition\n | ImageControlDefinition\n | ComboboxControlDefinition\n | ShapeControlDefinition\n | ListControlDefinition\n | LinkControlDefinition\n | SlotControlDefinition\n | RichTextControlDefinition\n | RichTextV2ControlDefinition\n | TypographyControlDefinition\n\nexport type PanelDescriptorType =\n | typeof PropControllerTypes.Backgrounds\n | typeof Types.ResponsiveIconRadioGroup\n | typeof PropControllerTypes.Margin\n | typeof PropControllerTypes.Padding\n | typeof PropControllerTypes.Shadows\n | typeof PropControllerTypes.Border\n | typeof PropControllerTypes.GapY\n | typeof PropControllerTypes.GapX\n | typeof PropControllerTypes.BorderRadius\n | typeof PropControllerTypes.Checkbox\n | typeof Types.TextInput\n | typeof PropControllerTypes.Link\n | typeof Types.ResponsiveSelect\n | typeof PropControllerTypes.ResponsiveColor\n | typeof PropControllerTypes.TextStyle\n | typeof PropControllerTypes.Images\n | typeof PropControllerTypes.ResponsiveNumber\n | typeof PropControllerTypes.Number\n | typeof PropControllerTypes.Date\n | typeof PropControllerTypes.Font\n | typeof PropControllerTypes.TextArea\n | typeof PropControllerTypes.Table\n | typeof PropControllerTypes.Image\n | typeof Types.ResponsiveOpacity\n | typeof Types.SocialLinks\n | typeof PropControllerTypes.Video\n | typeof PropControllerTypes.NavigationLinks\n\nexport type PanelDescriptor<T extends Data = Data> = Extract<\n Descriptor<T>,\n { type: PanelDescriptorType }\n>\n\nexport type DescriptorValueType<T extends Descriptor> = T extends NumberControlDefinition\n ? NumberControlValue<T>\n : T extends CheckboxControlDefinition\n ? CheckboxControlValue<T>\n : T extends TextInputControlDefinition\n ? TextInputControlValue<T>\n : T extends TextAreaControlDefinition\n ? TextAreaControlValue<T>\n : T extends SelectControlDefinition\n ? SelectControlValue<T>\n : T extends ColorControlDefinition\n ? ColorControlValue<T>\n : T extends StyleControlDefinition\n ? StyleControlFormattedValue\n : T extends StyleV2ControlDefinition\n ? StyleV2ControlFormattedValue\n : T extends IconRadioGroupControlDefinition\n ? IconRadioGroupControlValue<T>\n : T extends ImageControlDefinition\n ? ResolveImageControlValue<T>\n : T extends ComboboxControlDefinition\n ? ComboboxControlValue<T>\n : T extends ShapeControlDefinition\n ? ShapeControlValue<T>\n : T extends ListControlDefinition\n ? ListControlValue<T>\n : T extends LinkControlDefinition\n ? LinkControlValue<T>\n : T extends SlotControlDefinition\n ? SlotControlValue\n : T extends RichTextControlDefinition\n ? RichTextControlValue\n : T extends RichTextV2ControlDefinition\n ? RichTextV2ControlValue\n : T extends StyleV2ControlDefinition\n ? StyleV2ControlFormattedValue\n : T extends TypographyControlDefinition\n ? TypographyControlValue\n : T['type'] extends typeof PropControllerTypes.ResponsiveColor\n ? // TODO(miguel): We're not importing a resolver type from `@makeswift/prop-controllers` because\n // the resolved type is tightly coupled with the runtime (i.e., it's the result of an API call).\n // This means that we probably want to rethink how types are resolved and where that lives.\n ResponsiveColor | null | undefined\n : T['type'] extends typeof PropControllerTypes.Backgrounds\n ? ResolveBackgroundsPropControllerValue<\n Extract<T, { type: typeof PropControllerTypes.Backgrounds }>\n >\n : T['type'] extends typeof PropControllerTypes.Checkbox\n ? ResolveCheckboxPropControllerValue<Extract<T, { type: typeof PropControllerTypes.Checkbox }>>\n : T['type'] extends typeof PropControllerTypes.Date\n ? ResolveDatePropControllerValue<Extract<T, { type: typeof PropControllerTypes.Date }>>\n : T['type'] extends typeof PropControllerTypes.ElementID\n ? ResolveElementIDPropControllerValue<Extract<T, { type: typeof PropControllerTypes.ElementID }>>\n : T['type'] extends typeof PropControllerTypes.Font\n ? ResolveFontPropControllerValue<Extract<T, { type: typeof PropControllerTypes.Font }>>\n : T['type'] extends typeof PropControllerTypes.GapX\n ? PropValue<T> | undefined\n : T['type'] extends typeof PropControllerTypes.GapY\n ? ResolveGapYPropControllerValue<Extract<T, { type: typeof PropControllerTypes.GapY }>>\n : T['type'] extends typeof PropControllerTypes.Grid\n ? ResolveGridPropControllerValue<Extract<T, { type: typeof PropControllerTypes.Grid }>>\n : T['type'] extends typeof PropControllerTypes.Image\n ? ResolveImagePropControllerValue<Extract<T, { type: typeof PropControllerTypes.Image }>>\n : T['type'] extends typeof PropControllerTypes.Images\n ? ResolveImagesPropControllerValue<Extract<T, { type: typeof PropControllerTypes.Images }>>\n : T['type'] extends typeof PropControllerTypes.ResponsiveNumber\n ? PropValue<T> | undefined\n : T['type'] extends typeof PropControllerTypes.Link\n ? ResolveLinkPropControllerValue<Extract<T, { type: typeof PropControllerTypes.Link }>>\n : T['type'] extends typeof PropControllerTypes.Width\n ? ResolveWidthPropControllerValue<Extract<T, { type: typeof PropControllerTypes.Width }>>\n : T['type'] extends typeof PropControllerTypes.Padding\n ? ResolvePaddingPropControllerValue<Extract<T, { type: typeof PropControllerTypes.Padding }>>\n : T['type'] extends typeof PropControllerTypes.Margin\n ? ResolveMarginPropControllerValue<Extract<T, { type: typeof PropControllerTypes.Margin }>>\n : T['type'] extends typeof PropControllerTypes.NavigationLinks\n ? ResolveNavigationLinksPropControllerValue<\n Extract<T, { type: typeof PropControllerTypes.NavigationLinks }>\n >\n : T['type'] extends typeof PropControllerTypes.BorderRadius\n ? ResolveBorderRadiusPropControllerValue<\n Extract<T, { type: typeof PropControllerTypes.BorderRadius }>\n >\n : T['type'] extends typeof PropControllerTypes.Shadows\n ? ResolveShadowsPropControllerValue<Extract<T, { type: typeof PropControllerTypes.Shadows }>>\n : T['type'] extends typeof PropControllerTypes.ResponsiveLength\n ? ResolveResponsiveLengthPropControllerValue<\n Extract<T, { type: typeof PropControllerTypes.ResponsiveLength }>\n >\n : T['type'] extends typeof PropControllerTypes.Border\n ? ResolveBorderPropControllerValue<Extract<T, { type: typeof PropControllerTypes.Border }>>\n : T['type'] extends typeof PropControllerTypes.Number\n ? ResolveNumberPropControllerValue<Extract<T, { type: typeof PropControllerTypes.Number }>>\n : T['type'] extends typeof PropControllerTypes.Table\n ? ResolveTablePropControllerValue<Extract<T, { type: typeof PropControllerTypes.Table }>>\n : T['type'] extends typeof PropControllerTypes.TableFormFields\n ? ResolveTableFormFieldsPropControllerValue<\n Extract<T, { type: typeof PropControllerTypes.TableFormFields }>\n >\n : T['type'] extends typeof PropControllerTypes.TextStyle\n ? ResolveTextStylePropControllerValue<Extract<T, { type: typeof PropControllerTypes.TextStyle }>>\n : T['type'] extends typeof PropControllerTypes.TextArea\n ? ResolveTextAreaPropControllerValue<Extract<T, { type: typeof PropControllerTypes.TextArea }>>\n : T['type'] extends typeof PropControllerTypes.Video\n ? ResolveVideoPropControllerValue<Extract<T, { type: typeof PropControllerTypes.Video }>>\n : T extends Descriptor<infer U>\n ? U | undefined\n : never\n\nexport type PanelDescriptorValueType<T extends PanelDescriptor> = T extends PanelDescriptor<infer U>\n ? U\n : never\n"],"mappings":"AAWA,SAAS,wBAAwB;AAgI1B,MAAM,QAAQ;AAAA,EACnB,0BAA0B;AAAA,EAC1B,mBAAmB;AAAA,EACnB,kBAAkB;AAAA,EAClB,aAAa;AAAA,EACb,WAAW;AAAA,EACX,OAAO;AACT;AA4BO,SAAS,yBACd,SACsE;AACtE,SAAO,EAAE,MAAM,MAAM,0BAA0B,QAAQ;AACzD;AAeO,SAAS,kBACd,UAAoC,CAAC,GACR;AAC7B,SAAO,EAAE,MAAM,MAAM,mBAAmB,QAAQ;AAClD;AA+BO,SAAS,iBACd,SACsD;AACtD,SAAO,EAAE,MAAM,MAAM,kBAAkB,QAAQ;AACjD;AAEO,MAAM,oBAAoB;AAAA,EAC/B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF;AAIO,MAAM,oBAAoB,CAAC,GAAG,mBAAmB,KAAK,OAAO;AA8B7D,SAAS,YAAY,UAA8B,CAAC,GAA0B;AACnF,SAAO,EAAE,MAAM,MAAM,aAAa,SAAS,SAAS,EAAE;AACxD;AAeO,SAAS,UAAU,UAA4B,CAAC,GAAwB;AAC7E,SAAO,EAAE,MAAM,MAAM,WAAW,QAAQ;AAC1C;","names":[]}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/prop-controllers/index.ts"],"sourcesContent":["export type {\n Data,\n Descriptor as PropControllerDescriptor,\n DescriptorValueType as PropControllerDescriptorValueType,\n ResponsiveNumberDescriptor,\n ResponsiveNumberOptions,\n ResponsiveNumberValue,\n ResponsiveIconRadioGroupDescriptor,\n ResponsiveIconRadioGroupValue,\n ResponsiveSelectDescriptor,\n ResponsiveSelectValue,\n TextInputDescriptor,\n TextInputValue,\n PanelDescriptor,\n PanelDescriptorType,\n PanelDescriptorValueType,\n SocialLinksDescriptor,\n SocialLinksValue,\n} from './descriptors'\nexport type {\n ResponsiveValueType,\n Device,\n DeviceOverride,\n ResponsiveValue,\n} from '@makeswift/prop-controllers'\nexport { socialLinkTypesV0, socialLinkTypesV1 } from './descriptors'\nexport * as Props from './descriptors'\nexport type {\n PropControllerMessage,\n RichTextPropControllerMessage,\n TableFormFieldsMessage,\n} from './instances'\nexport { RichTextPropControllerMessageType, TableFormFieldsMessageType } from './instances'\nexport * as Introspection from './introspection'\nexport { DELETED_PROP_CONTROLLER_TYPES } from './deleted'\n"],"mappings":"AAyBA,SAAS,mBAAmB,yBAAyB;AACrD,YAAY,WAAW;AAMvB,SAAS,mCAAmC,kCAAkC;AAC9E,YAAY,mBAAmB;AAC/B,SAAS,qCAAqC;","names":[]}
1
+ {"version":3,"sources":["../../../src/prop-controllers/index.ts"],"sourcesContent":["export type {\n Data,\n Descriptor as PropControllerDescriptor,\n DescriptorValueType as PropControllerDescriptorValueType,\n ResponsiveIconRadioGroupDescriptor,\n ResponsiveIconRadioGroupValue,\n ResponsiveSelectDescriptor,\n ResponsiveSelectValue,\n TextInputDescriptor,\n TextInputValue,\n PanelDescriptor,\n PanelDescriptorType,\n PanelDescriptorValueType,\n SocialLinksDescriptor,\n SocialLinksValue,\n} from './descriptors'\nexport type {\n ResponsiveValueType,\n Device,\n DeviceOverride,\n ResponsiveValue,\n} from '@makeswift/prop-controllers'\nexport { socialLinkTypesV0, socialLinkTypesV1 } from './descriptors'\nexport * as Props from './descriptors'\nexport type {\n PropControllerMessage,\n RichTextPropControllerMessage,\n TableFormFieldsMessage,\n} from './instances'\nexport { RichTextPropControllerMessageType, TableFormFieldsMessageType } from './instances'\nexport * as Introspection from './introspection'\nexport { DELETED_PROP_CONTROLLER_TYPES } from './deleted'\n"],"mappings":"AAsBA,SAAS,mBAAmB,yBAAyB;AACrD,YAAY,WAAW;AAMvB,SAAS,mCAAmC,kCAAkC;AAC9E,YAAY,mBAAmB;AAC/B,SAAS,qCAAqC;","names":[]}
@@ -2,7 +2,7 @@ import { match } from "ts-pattern";
2
2
  import {
3
3
  CheckboxControlDataTypeKey,
4
4
  CheckboxControlDataTypeValueV1
5
- } from "../../../controls";
5
+ } from "@makeswift/controls";
6
6
  function useCheckboxControlValue(data, definition) {
7
7
  const value = match(data).with({ [CheckboxControlDataTypeKey]: CheckboxControlDataTypeValueV1 }, (val) => val.value).otherwise((val) => val) ?? definition.config.defaultValue;
8
8
  return value;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/runtimes/react/controls/checkbox.ts"],"sourcesContent":["import { match } from 'ts-pattern'\nimport {\n CheckboxControlData,\n CheckboxControlDataTypeKey,\n CheckboxControlDataTypeValueV1,\n CheckboxControlDefinition,\n} from '../../../controls'\n\nexport type CheckboxControlValue<T extends CheckboxControlDefinition> =\n undefined extends T['config']['defaultValue'] ? boolean | undefined : boolean\n\nexport function useCheckboxControlValue<T extends CheckboxControlDefinition>(\n data: CheckboxControlData | undefined,\n definition: T,\n): CheckboxControlValue<T> {\n const value: boolean | undefined =\n match(data)\n .with({ [CheckboxControlDataTypeKey]: CheckboxControlDataTypeValueV1 }, val => val.value)\n .otherwise(val => val) ?? definition.config.defaultValue\n\n return value as CheckboxControlValue<T>\n}\n"],"mappings":"AAAA,SAAS,aAAa;AACtB;AAAA,EAEE;AAAA,EACA;AAAA,OAEK;AAKA,SAAS,wBACd,MACA,YACyB;AACzB,QAAM,QACJ,MAAM,IAAI,EACP,KAAK,EAAE,CAAC,0BAA0B,GAAG,+BAA+B,GAAG,SAAO,IAAI,KAAK,EACvF,UAAU,SAAO,GAAG,KAAK,WAAW,OAAO;AAEhD,SAAO;AACT;","names":[]}
1
+ {"version":3,"sources":["../../../../../src/runtimes/react/controls/checkbox.ts"],"sourcesContent":["import { match } from 'ts-pattern'\nimport {\n CheckboxControlData,\n CheckboxControlDataTypeKey,\n CheckboxControlDataTypeValueV1,\n CheckboxControlDefinition,\n} from '@makeswift/controls'\n\nexport type CheckboxControlValue<T extends CheckboxControlDefinition> =\n undefined extends T['config']['defaultValue'] ? boolean | undefined : boolean\n\nexport function useCheckboxControlValue<T extends CheckboxControlDefinition>(\n data: CheckboxControlData | undefined,\n definition: T,\n): CheckboxControlValue<T> {\n const value: boolean | undefined =\n match(data)\n .with({ [CheckboxControlDataTypeKey]: CheckboxControlDataTypeValueV1 }, val => val.value)\n .otherwise(val => val) ?? definition.config.defaultValue\n\n return value as CheckboxControlValue<T>\n}\n"],"mappings":"AAAA,SAAS,aAAa;AACtB;AAAA,EAEE;AAAA,EACA;AAAA,OAEK;AAKA,SAAS,wBACd,MACA,YACyB;AACzB,QAAM,QACJ,MAAM,IAAI,EACP,KAAK,EAAE,CAAC,0BAA0B,GAAG,+BAA+B,GAAG,SAAO,IAAI,KAAK,EACvF,UAAU,SAAO,GAAG,KAAK,WAAW,OAAO;AAEhD,SAAO;AACT;","names":[]}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/runtimes/react/controls/color.ts"],"sourcesContent":["import Color from 'color'\nimport { ColorControlData, ColorControlDefinition } from '../../../controls/color'\nimport { useSwatch } from '../hooks/makeswift-api'\n\nexport type ColorControlValue<T extends ColorControlDefinition> =\n undefined extends T['config']['defaultValue'] ? string | undefined : string\n\nexport function useColorValue<T extends ColorControlDefinition>(\n data: ColorControlData | undefined,\n definition: T,\n): ColorControlValue<any> {\n const swatchId = data?.swatchId ?? null\n const swatch = useSwatch(swatchId)\n const alpha = data?.alpha ?? 1\n\n if (swatch == null) {\n const { defaultValue } = definition.config\n\n if (defaultValue === undefined) return undefined as ColorControlValue<T>\n\n let defaultColor\n try {\n defaultColor = Color(definition.config.defaultValue)\n } catch {\n defaultColor = Color()\n }\n\n return defaultColor.rgb().string()\n }\n\n return Color({ h: swatch.hue, s: swatch.saturation, l: swatch.lightness })\n .alpha(alpha)\n .rgb()\n .string()\n}\n"],"mappings":"AAAA,OAAO,WAAW;AAElB,SAAS,iBAAiB;AAKnB,SAAS,cACd,MACA,YACwB;AACxB,QAAM,WAAW,MAAM,YAAY;AACnC,QAAM,SAAS,UAAU,QAAQ;AACjC,QAAM,QAAQ,MAAM,SAAS;AAE7B,MAAI,UAAU,MAAM;AAClB,UAAM,EAAE,aAAa,IAAI,WAAW;AAEpC,QAAI,iBAAiB;AAAW,aAAO;AAEvC,QAAI;AACJ,QAAI;AACF,qBAAe,MAAM,WAAW,OAAO,YAAY;AAAA,IACrD,QAAQ;AACN,qBAAe,MAAM;AAAA,IACvB;AAEA,WAAO,aAAa,IAAI,EAAE,OAAO;AAAA,EACnC;AAEA,SAAO,MAAM,EAAE,GAAG,OAAO,KAAK,GAAG,OAAO,YAAY,GAAG,OAAO,UAAU,CAAC,EACtE,MAAM,KAAK,EACX,IAAI,EACJ,OAAO;AACZ;","names":[]}
1
+ {"version":3,"sources":["../../../../../src/runtimes/react/controls/color.ts"],"sourcesContent":["import Color from 'color'\nimport { ColorControlData, ColorControlDefinition } from '@makeswift/controls'\nimport { useSwatch } from '../hooks/makeswift-api'\n\nexport type ColorControlValue<T extends ColorControlDefinition> =\n undefined extends T['config']['defaultValue'] ? string | undefined : string\n\nexport function useColorValue<T extends ColorControlDefinition>(\n data: ColorControlData | undefined,\n definition: T,\n): ColorControlValue<any> {\n const swatchId = data?.swatchId ?? null\n const swatch = useSwatch(swatchId)\n const alpha = data?.alpha ?? 1\n\n if (swatch == null) {\n const { defaultValue } = definition.config\n\n if (defaultValue === undefined) return undefined as ColorControlValue<T>\n\n let defaultColor\n try {\n defaultColor = Color(definition.config.defaultValue)\n } catch {\n defaultColor = Color()\n }\n\n return defaultColor.rgb().string()\n }\n\n return Color({ h: swatch.hue, s: swatch.saturation, l: swatch.lightness })\n .alpha(alpha)\n .rgb()\n .string()\n}\n"],"mappings":"AAAA,OAAO,WAAW;AAElB,SAAS,iBAAiB;AAKnB,SAAS,cACd,MACA,YACwB;AACxB,QAAM,WAAW,MAAM,YAAY;AACnC,QAAM,SAAS,UAAU,QAAQ;AACjC,QAAM,QAAQ,MAAM,SAAS;AAE7B,MAAI,UAAU,MAAM;AAClB,UAAM,EAAE,aAAa,IAAI,WAAW;AAEpC,QAAI,iBAAiB;AAAW,aAAO;AAEvC,QAAI;AACJ,QAAI;AACF,qBAAe,MAAM,WAAW,OAAO,YAAY;AAAA,IACrD,QAAQ;AACN,qBAAe,MAAM;AAAA,IACvB;AAEA,WAAO,aAAa,IAAI,EAAE,OAAO;AAAA,EACnC;AAEA,SAAO,MAAM,EAAE,GAAG,OAAO,KAAK,GAAG,OAAO,YAAY,GAAG,OAAO,UAAU,CAAC,EACtE,MAAM,KAAK,EACX,IAAI,EACJ,OAAO;AACZ;","names":[]}
@@ -1,12 +1,17 @@
1
1
  import { jsx } from "react/jsx-runtime";
2
2
  import {
3
3
  CheckboxControlType,
4
+ NumberControlType,
5
+ TextInputControlType,
6
+ TextAreaControlType
7
+ } from "@makeswift/controls";
8
+ import {
4
9
  ColorControlType,
5
10
  ComboboxControlType,
11
+ IconRadioGroupControlType,
6
12
  ImageControlType,
7
13
  LinkControlType,
8
14
  ListControlType,
9
- NumberControlType,
10
15
  RichTextControlType,
11
16
  RichTextV2ControlType,
12
17
  SelectControlType,
@@ -14,13 +19,8 @@ import {
14
19
  SlotControlType,
15
20
  StyleControlType,
16
21
  StyleV2ControlType,
17
- TextAreaControlType,
18
- TextInputControlType,
19
22
  TypographyControlType
20
23
  } from "../../../controls";
21
- import {
22
- IconRadioGroupControlType
23
- } from "../../../controls/icon-radio-group";
24
24
  import { RenderHook } from "../components";
25
25
  import { useCheckboxControlValue } from "./checkbox";
26
26
  import { useColorValue } from "./color";
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/runtimes/react/controls/control.tsx"],"sourcesContent":["import {\n CheckboxControlData,\n CheckboxControlDefinition,\n CheckboxControlType,\n ColorControlData,\n ColorControlDefinition,\n ColorControlType,\n ComboboxControlData,\n ComboboxControlDefinition,\n ComboboxControlType,\n ControlDefinition,\n ControlDefinitionData,\n ImageControlData,\n ImageControlDefinition,\n ImageControlType,\n LinkControlData,\n LinkControlDefinition,\n LinkControlType,\n ListControl,\n ListControlData,\n ListControlDefinition,\n ListControlType,\n NumberControlData,\n NumberControlDefinition,\n NumberControlType,\n RichTextControl,\n RichTextControlData,\n RichTextControlDefinition,\n RichTextControlType,\n RichTextV2Control,\n RichTextV2ControlData,\n RichTextV2ControlDefinition,\n RichTextV2ControlType,\n SelectControlData,\n SelectControlDefinition,\n SelectControlType,\n ShapeControl,\n ShapeControlData,\n ShapeControlDefinition,\n ShapeControlType,\n SlotControl,\n SlotControlData,\n SlotControlDefinition,\n SlotControlType,\n StyleControl,\n StyleControlData,\n StyleControlDefinition,\n StyleControlType,\n StyleV2Control,\n StyleV2ControlData,\n StyleV2ControlDefinition,\n StyleV2ControlType,\n TextAreaControlData,\n TextAreaControlDefinition,\n TextAreaControlType,\n TextInputControlData,\n TextInputControlDefinition,\n TextInputControlType,\n TypographyControlData,\n TypographyControlDefinition,\n TypographyControlType,\n} from '../../../controls'\nimport {\n IconRadioGroupControlData,\n IconRadioGroupControlDefinition,\n IconRadioGroupControlType,\n} from '../../../controls/icon-radio-group'\nimport { AnyPropController } from '../../../prop-controllers/instances'\nimport { RenderHook } from '../components'\nimport { CheckboxControlValue, useCheckboxControlValue } from './checkbox'\nimport { ColorControlValue, useColorValue } from './color'\nimport { ComboboxControlValue, useComboboxControlValue } from './combobox'\nimport { IconRadioGroupControlValue, useIconRadioGroupValue } from './icon-radio-group'\nimport { ResolveImageControlValue, useImageControlValue } from './image'\nimport { LinkControlValue, useLinkControlValue } from './link'\nimport { ListControlValue } from './list'\nimport { NumberControlValue, useNumber } from './number'\nimport { RichTextControlValue, useRichText } from './rich-text/rich-text'\nimport { RichTextV2ControlValue, useRichTextV2 } from './rich-text-v2'\nimport { SelectControlValue, useSelectControlValue } from './select'\nimport { ShapeControlValue } from './shape'\nimport { SlotControlValue, useSlot } from './slot'\nimport { StyleControlFormattedValue, useFormattedStyle } from './style'\nimport { StyleV2ControlFormattedValue, StyleV2ControlValue } from './style-v2'\nimport { TextAreaControlValue, useTextAreaValue } from './text-area'\nimport { TextInputControlValue, useTextInputValue } from './text-input'\nimport { TypographyControlValue, useTypographyValue } from './typography'\n\nexport type ControlDefinitionValue<T extends ControlDefinition> =\n T extends CheckboxControlDefinition\n ? CheckboxControlValue<T>\n : T extends NumberControlDefinition\n ? NumberControlValue<T>\n : T extends TextInputControlDefinition\n ? TextInputControlValue<T>\n : T extends TextAreaControlDefinition\n ? TextAreaControlValue<T>\n : T extends SelectControlDefinition\n ? SelectControlValue<T>\n : T extends ColorControlDefinition\n ? ColorControlValue<T>\n : T extends ImageControlDefinition\n ? ResolveImageControlValue<T>\n : T extends IconRadioGroupControlDefinition\n ? IconRadioGroupControlValue<T>\n : T extends LinkControlDefinition\n ? LinkControlValue<T>\n : T extends ComboboxControlDefinition\n ? ComboboxControlValue<T>\n : T extends ShapeControlDefinition\n ? ShapeControlValue<T>\n : T extends ListControlDefinition\n ? ListControlValue<T>\n : T extends SlotControlDefinition\n ? SlotControlValue\n : T extends RichTextControlDefinition\n ? RichTextControlValue\n : T extends RichTextV2ControlDefinition\n ? RichTextV2ControlValue\n : T extends StyleControlDefinition\n ? StyleControlFormattedValue\n : T extends StyleV2ControlDefinition\n ? StyleV2ControlFormattedValue\n : T extends TypographyControlDefinition\n ? TypographyControlValue\n : never\n\ntype ControlValueProps<T extends ControlDefinition> = {\n definition: T\n data: ControlDefinitionData<T> | undefined\n children(value: ControlDefinitionValue<T>): JSX.Element\n control?: AnyPropController\n}\n\nexport function ControlValue<T extends ControlDefinition>({\n data,\n definition,\n children,\n control,\n}: ControlValueProps<T>): JSX.Element {\n switch (definition.type) {\n case CheckboxControlType:\n return (\n <RenderHook\n key={definition.type}\n hook={useCheckboxControlValue}\n parameters={[data as CheckboxControlData, definition]}\n >\n {value => children(value as ControlDefinitionValue<T>)}\n </RenderHook>\n )\n\n case NumberControlType:\n return (\n <RenderHook\n key={definition.type}\n hook={useNumber}\n parameters={[data as NumberControlData, definition]}\n >\n {value => children(value as ControlDefinitionValue<T>)}\n </RenderHook>\n )\n\n case TextInputControlType:\n return (\n <RenderHook\n key={definition.type}\n hook={useTextInputValue}\n parameters={[data as TextInputControlData, definition]}\n >\n {value => children(value as ControlDefinitionValue<T>)}\n </RenderHook>\n )\n\n case TextAreaControlType:\n return (\n <RenderHook\n key={definition.type}\n hook={useTextAreaValue}\n parameters={[data as TextAreaControlData, definition]}\n >\n {value => children(value as ControlDefinitionValue<T>)}\n </RenderHook>\n )\n\n case SelectControlType:\n return (\n <RenderHook\n key={definition.type}\n hook={useSelectControlValue}\n parameters={[data as SelectControlData, definition]}\n >\n {value => children(value as ControlDefinitionValue<T>)}\n </RenderHook>\n )\n\n case ColorControlType:\n return (\n <RenderHook\n key={definition.type}\n hook={useColorValue}\n parameters={[data as ColorControlData, definition]}\n >\n {value => children(value as ControlDefinitionValue<T>)}\n </RenderHook>\n )\n\n case IconRadioGroupControlType:\n return (\n <RenderHook\n key={definition.type}\n hook={useIconRadioGroupValue}\n parameters={[data as IconRadioGroupControlData, definition]}\n >\n {value => children(value as ControlDefinitionValue<T>)}\n </RenderHook>\n )\n\n case ImageControlType:\n return (\n <RenderHook\n key={definition.type}\n hook={useImageControlValue}\n parameters={[data as ImageControlData, definition]}\n >\n {value => children(value as ControlDefinitionValue<T>)}\n </RenderHook>\n )\n\n case LinkControlType:\n return (\n <RenderHook\n key={definition.type}\n hook={useLinkControlValue}\n parameters={[data as LinkControlData, definition]}\n >\n {value => children(value as ControlDefinitionValue<T>)}\n </RenderHook>\n )\n\n case ComboboxControlType:\n return (\n <RenderHook\n key={definition.type}\n hook={useComboboxControlValue}\n parameters={[data as ComboboxControlData]}\n >\n {value => children(value as ControlDefinitionValue<T>)}\n </RenderHook>\n )\n\n case ShapeControlType:\n return (\n <ShapeControlValue\n definition={definition}\n data={data as ShapeControlData}\n control={control as ShapeControl}\n >\n {value => children(value as ControlDefinitionValue<T>)}\n </ShapeControlValue>\n )\n\n case ListControlType:\n return (\n <ListControlValue\n definition={definition}\n data={data as ListControlData}\n control={control as ListControl}\n >\n {value => children(value as ControlDefinitionValue<T>)}\n </ListControlValue>\n )\n\n case StyleV2ControlType:\n return (\n <StyleV2ControlValue\n key={definition.type}\n data={data as StyleV2ControlData}\n definition={definition}\n control={control as StyleV2Control}\n >\n {value => children(value as ControlDefinitionValue<T>)}\n </StyleV2ControlValue>\n )\n\n case SlotControlType:\n return (\n <RenderHook\n key={definition.type}\n hook={useSlot}\n parameters={[data as unknown as SlotControlData, control as SlotControl]}\n >\n {value => children(value as ControlDefinitionValue<T>)}\n </RenderHook>\n )\n\n case RichTextControlType:\n return (\n <RenderHook\n key={definition.type}\n hook={useRichText}\n parameters={[data as unknown as RichTextControlData, control as RichTextControl]}\n >\n {value => children(value as ControlDefinitionValue<T>)}\n </RenderHook>\n )\n\n case RichTextV2ControlType:\n return (\n <RenderHook\n key={definition.type}\n hook={useRichTextV2}\n parameters={[\n data as unknown as RichTextV2ControlData,\n definition,\n control as RichTextV2Control,\n ]}\n >\n {value => children(value as ControlDefinitionValue<T>)}\n </RenderHook>\n )\n\n case StyleControlType:\n return (\n <RenderHook\n key={definition.type}\n hook={useFormattedStyle}\n parameters={[data as unknown as StyleControlData, definition, control as StyleControl]}\n >\n {value => children(value as ControlDefinitionValue<T>)}\n </RenderHook>\n )\n\n case TypographyControlType:\n return (\n <RenderHook\n key={definition.type}\n hook={useTypographyValue}\n parameters={[data as unknown as TypographyControlData[number]]}\n >\n {value => children(value as ControlDefinitionValue<T>)}\n </RenderHook>\n )\n\n default:\n return children(data as ControlDefinitionValue<T>)\n }\n}\n"],"mappings":"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","names":[]}
1
+ {"version":3,"sources":["../../../../../src/runtimes/react/controls/control.tsx"],"sourcesContent":["import {\n CheckboxControlData,\n CheckboxControlDefinition,\n CheckboxControlType,\n NumberControlData,\n NumberControlDefinition,\n NumberControlType,\n TextInputControlData,\n TextInputControlDefinition,\n TextInputControlType,\n TextAreaControlData,\n TextAreaControlDefinition,\n TextAreaControlType,\n} from '@makeswift/controls'\nimport {\n ColorControlData,\n ColorControlDefinition,\n ColorControlType,\n ComboboxControlData,\n ComboboxControlDefinition,\n ComboboxControlType,\n ControlDefinition,\n ControlDefinitionData,\n IconRadioGroupControlData,\n IconRadioGroupControlDefinition,\n IconRadioGroupControlType,\n ImageControlData,\n ImageControlDefinition,\n ImageControlType,\n LinkControlData,\n LinkControlDefinition,\n LinkControlType,\n ListControl,\n ListControlData,\n ListControlDefinition,\n ListControlType,\n RichTextControl,\n RichTextControlData,\n RichTextControlDefinition,\n RichTextControlType,\n RichTextV2Control,\n RichTextV2ControlData,\n RichTextV2ControlDefinition,\n RichTextV2ControlType,\n SelectControlData,\n SelectControlDefinition,\n SelectControlType,\n ShapeControl,\n ShapeControlData,\n ShapeControlDefinition,\n ShapeControlType,\n SlotControl,\n SlotControlData,\n SlotControlDefinition,\n SlotControlType,\n StyleControl,\n StyleControlData,\n StyleControlDefinition,\n StyleControlType,\n StyleV2Control,\n StyleV2ControlData,\n StyleV2ControlDefinition,\n StyleV2ControlType,\n TypographyControlData,\n TypographyControlDefinition,\n TypographyControlType,\n} from '../../../controls'\n\nimport { AnyPropController } from '../../../prop-controllers/instances'\nimport { RenderHook } from '../components'\nimport { CheckboxControlValue, useCheckboxControlValue } from './checkbox'\nimport { ColorControlValue, useColorValue } from './color'\nimport { ComboboxControlValue, useComboboxControlValue } from './combobox'\nimport { IconRadioGroupControlValue, useIconRadioGroupValue } from './icon-radio-group'\nimport { ResolveImageControlValue, useImageControlValue } from './image'\nimport { LinkControlValue, useLinkControlValue } from './link'\nimport { ListControlValue } from './list'\nimport { NumberControlValue, useNumber } from './number'\nimport { RichTextControlValue, useRichText } from './rich-text/rich-text'\nimport { RichTextV2ControlValue, useRichTextV2 } from './rich-text-v2'\nimport { SelectControlValue, useSelectControlValue } from './select'\nimport { ShapeControlValue } from './shape'\nimport { SlotControlValue, useSlot } from './slot'\nimport { StyleControlFormattedValue, useFormattedStyle } from './style'\nimport { StyleV2ControlFormattedValue, StyleV2ControlValue } from './style-v2'\nimport { TextAreaControlValue, useTextAreaValue } from './text-area'\nimport { TextInputControlValue, useTextInputValue } from './text-input'\nimport { TypographyControlValue, useTypographyValue } from './typography'\n\nexport type ControlDefinitionValue<T extends ControlDefinition> =\n T extends CheckboxControlDefinition\n ? CheckboxControlValue<T>\n : T extends NumberControlDefinition\n ? NumberControlValue<T>\n : T extends TextInputControlDefinition\n ? TextInputControlValue<T>\n : T extends TextAreaControlDefinition\n ? TextAreaControlValue<T>\n : T extends SelectControlDefinition\n ? SelectControlValue<T>\n : T extends ColorControlDefinition\n ? ColorControlValue<T>\n : T extends ImageControlDefinition\n ? ResolveImageControlValue<T>\n : T extends IconRadioGroupControlDefinition\n ? IconRadioGroupControlValue<T>\n : T extends LinkControlDefinition\n ? LinkControlValue<T>\n : T extends ComboboxControlDefinition\n ? ComboboxControlValue<T>\n : T extends ShapeControlDefinition\n ? ShapeControlValue<T>\n : T extends ListControlDefinition\n ? ListControlValue<T>\n : T extends SlotControlDefinition\n ? SlotControlValue\n : T extends RichTextControlDefinition\n ? RichTextControlValue\n : T extends RichTextV2ControlDefinition\n ? RichTextV2ControlValue\n : T extends StyleControlDefinition\n ? StyleControlFormattedValue\n : T extends StyleV2ControlDefinition\n ? StyleV2ControlFormattedValue\n : T extends TypographyControlDefinition\n ? TypographyControlValue\n : never\n\ntype ControlValueProps<T extends ControlDefinition> = {\n definition: T\n data: ControlDefinitionData<T> | undefined\n children(value: ControlDefinitionValue<T>): JSX.Element\n control?: AnyPropController\n}\n\nexport function ControlValue<T extends ControlDefinition>({\n data,\n definition,\n children,\n control,\n}: ControlValueProps<T>): JSX.Element {\n switch (definition.type) {\n case CheckboxControlType:\n return (\n <RenderHook\n key={definition.type}\n hook={useCheckboxControlValue}\n parameters={[data as CheckboxControlData, definition]}\n >\n {value => children(value as ControlDefinitionValue<T>)}\n </RenderHook>\n )\n\n case NumberControlType:\n return (\n <RenderHook\n key={definition.type}\n hook={useNumber}\n parameters={[data as NumberControlData, definition]}\n >\n {value => children(value as ControlDefinitionValue<T>)}\n </RenderHook>\n )\n\n case TextInputControlType:\n return (\n <RenderHook\n key={definition.type}\n hook={useTextInputValue}\n parameters={[data as TextInputControlData, definition]}\n >\n {value => children(value as ControlDefinitionValue<T>)}\n </RenderHook>\n )\n\n case TextAreaControlType:\n return (\n <RenderHook\n key={definition.type}\n hook={useTextAreaValue}\n parameters={[data as TextAreaControlData, definition]}\n >\n {value => children(value as ControlDefinitionValue<T>)}\n </RenderHook>\n )\n\n case SelectControlType:\n return (\n <RenderHook\n key={definition.type}\n hook={useSelectControlValue}\n parameters={[data as SelectControlData, definition]}\n >\n {value => children(value as ControlDefinitionValue<T>)}\n </RenderHook>\n )\n\n case ColorControlType:\n return (\n <RenderHook\n key={definition.type}\n hook={useColorValue}\n parameters={[data as ColorControlData, definition]}\n >\n {value => children(value as ControlDefinitionValue<T>)}\n </RenderHook>\n )\n\n case IconRadioGroupControlType:\n return (\n <RenderHook\n key={definition.type}\n hook={useIconRadioGroupValue}\n parameters={[data as IconRadioGroupControlData, definition]}\n >\n {value => children(value as ControlDefinitionValue<T>)}\n </RenderHook>\n )\n\n case ImageControlType:\n return (\n <RenderHook\n key={definition.type}\n hook={useImageControlValue}\n parameters={[data as ImageControlData, definition]}\n >\n {value => children(value as ControlDefinitionValue<T>)}\n </RenderHook>\n )\n\n case LinkControlType:\n return (\n <RenderHook\n key={definition.type}\n hook={useLinkControlValue}\n parameters={[data as LinkControlData, definition]}\n >\n {value => children(value as ControlDefinitionValue<T>)}\n </RenderHook>\n )\n\n case ComboboxControlType:\n return (\n <RenderHook\n key={definition.type}\n hook={useComboboxControlValue}\n parameters={[data as ComboboxControlData]}\n >\n {value => children(value as ControlDefinitionValue<T>)}\n </RenderHook>\n )\n\n case ShapeControlType:\n return (\n <ShapeControlValue\n definition={definition}\n data={data as ShapeControlData}\n control={control as ShapeControl}\n >\n {value => children(value as ControlDefinitionValue<T>)}\n </ShapeControlValue>\n )\n\n case ListControlType:\n return (\n <ListControlValue\n definition={definition}\n data={data as ListControlData}\n control={control as ListControl}\n >\n {value => children(value as ControlDefinitionValue<T>)}\n </ListControlValue>\n )\n\n case StyleV2ControlType:\n return (\n <StyleV2ControlValue\n key={definition.type}\n data={data as StyleV2ControlData}\n definition={definition}\n control={control as StyleV2Control}\n >\n {value => children(value as ControlDefinitionValue<T>)}\n </StyleV2ControlValue>\n )\n\n case SlotControlType:\n return (\n <RenderHook\n key={definition.type}\n hook={useSlot}\n parameters={[data as unknown as SlotControlData, control as SlotControl]}\n >\n {value => children(value as ControlDefinitionValue<T>)}\n </RenderHook>\n )\n\n case RichTextControlType:\n return (\n <RenderHook\n key={definition.type}\n hook={useRichText}\n parameters={[data as unknown as RichTextControlData, control as RichTextControl]}\n >\n {value => children(value as ControlDefinitionValue<T>)}\n </RenderHook>\n )\n\n case RichTextV2ControlType:\n return (\n <RenderHook\n key={definition.type}\n hook={useRichTextV2}\n parameters={[\n data as unknown as RichTextV2ControlData,\n definition,\n control as RichTextV2Control,\n ]}\n >\n {value => children(value as ControlDefinitionValue<T>)}\n </RenderHook>\n )\n\n case StyleControlType:\n return (\n <RenderHook\n key={definition.type}\n hook={useFormattedStyle}\n parameters={[data as unknown as StyleControlData, definition, control as StyleControl]}\n >\n {value => children(value as ControlDefinitionValue<T>)}\n </RenderHook>\n )\n\n case TypographyControlType:\n return (\n <RenderHook\n key={definition.type}\n hook={useTypographyValue}\n parameters={[data as unknown as TypographyControlData[number]]}\n >\n {value => children(value as ControlDefinitionValue<T>)}\n </RenderHook>\n )\n\n default:\n return children(data as ControlDefinitionValue<T>)\n }\n}\n"],"mappings":"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","names":[]}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/runtimes/react/controls/icon-radio-group.ts"],"sourcesContent":["import {\n IconRadioGroupControlData,\n IconRadioGroupControlDefinition,\n} from '../../../controls/icon-radio-group'\n\nexport type IconRadioGroupControlValue<T extends IconRadioGroupControlDefinition> =\n undefined extends T['config']['defaultValue']\n ? IconRadioGroupControlData | undefined\n : IconRadioGroupControlData\n\nexport function useIconRadioGroupValue<T extends IconRadioGroupControlDefinition>(\n iconRadioGroupControlData: IconRadioGroupControlData | undefined,\n controlDefinition: T,\n): IconRadioGroupControlValue<T> {\n return (iconRadioGroupControlData ??\n controlDefinition.config.defaultValue) as IconRadioGroupControlValue<T>\n}\n"],"mappings":"AAUO,SAAS,uBACd,2BACA,mBAC+B;AAC/B,SAAQ,6BACN,kBAAkB,OAAO;AAC7B;","names":[]}
1
+ {"version":3,"sources":["../../../../../src/runtimes/react/controls/icon-radio-group.ts"],"sourcesContent":["import { IconRadioGroupControlData, IconRadioGroupControlDefinition } from '@makeswift/controls'\n\nexport type IconRadioGroupControlValue<T extends IconRadioGroupControlDefinition> =\n undefined extends T['config']['defaultValue']\n ? IconRadioGroupControlData | undefined\n : IconRadioGroupControlData\n\nexport function useIconRadioGroupValue<T extends IconRadioGroupControlDefinition>(\n iconRadioGroupControlData: IconRadioGroupControlData | undefined,\n controlDefinition: T,\n): IconRadioGroupControlValue<T> {\n return (iconRadioGroupControlData ??\n controlDefinition.config.defaultValue) as IconRadioGroupControlValue<T>\n}\n"],"mappings":"AAOO,SAAS,uBACd,2BACA,mBAC+B;AAC/B,SAAQ,6BACN,kBAAkB,OAAO;AAC7B;","names":[]}
@@ -2,7 +2,7 @@ import { match } from "ts-pattern";
2
2
  import {
3
3
  NumberControlDataTypeKey,
4
4
  NumberControlDataTypeValueV1
5
- } from "../../../controls";
5
+ } from "@makeswift/controls";
6
6
  function useNumber(data, definition) {
7
7
  const value = match(data).with({ [NumberControlDataTypeKey]: NumberControlDataTypeValueV1 }, (val) => val.value).otherwise((val) => val) ?? definition.config.defaultValue;
8
8
  return value;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/runtimes/react/controls/number.ts"],"sourcesContent":["import { match } from 'ts-pattern'\nimport {\n NumberControlData,\n NumberControlDataTypeKey,\n NumberControlDataTypeValueV1,\n NumberControlDefinition,\n} from '../../../controls'\n\nexport type NumberControlValue<T extends NumberControlDefinition> =\n undefined extends T['config']['defaultValue'] ? number | undefined : number\n\nexport function useNumber<T extends NumberControlDefinition>(\n data: NumberControlData | undefined,\n definition: T,\n): NumberControlValue<T> {\n const value: number | undefined =\n match(data)\n .with({ [NumberControlDataTypeKey]: NumberControlDataTypeValueV1 }, val => val.value)\n .otherwise(val => val) ?? definition.config.defaultValue\n\n return value as NumberControlValue<T>\n}\n"],"mappings":"AAAA,SAAS,aAAa;AACtB;AAAA,EAEE;AAAA,EACA;AAAA,OAEK;AAKA,SAAS,UACd,MACA,YACuB;AACvB,QAAM,QACJ,MAAM,IAAI,EACP,KAAK,EAAE,CAAC,wBAAwB,GAAG,6BAA6B,GAAG,SAAO,IAAI,KAAK,EACnF,UAAU,SAAO,GAAG,KAAK,WAAW,OAAO;AAEhD,SAAO;AACT;","names":[]}
1
+ {"version":3,"sources":["../../../../../src/runtimes/react/controls/number.ts"],"sourcesContent":["import { match } from 'ts-pattern'\nimport {\n NumberControlData,\n NumberControlDataTypeKey,\n NumberControlDataTypeValueV1,\n NumberControlDefinition,\n} from '@makeswift/controls'\n\nexport type NumberControlValue<T extends NumberControlDefinition> =\n undefined extends T['config']['defaultValue'] ? number | undefined : number\n\nexport function useNumber<T extends NumberControlDefinition>(\n data: NumberControlData | undefined,\n definition: T,\n): NumberControlValue<T> {\n const value: number | undefined =\n match(data)\n .with({ [NumberControlDataTypeKey]: NumberControlDataTypeValueV1 }, val => val.value)\n .otherwise(val => val) ?? definition.config.defaultValue\n\n return value as NumberControlValue<T>\n}\n"],"mappings":"AAAA,SAAS,aAAa;AACtB;AAAA,EAEE;AAAA,EACA;AAAA,OAEK;AAKA,SAAS,UACd,MACA,YACuB;AACvB,QAAM,QACJ,MAAM,IAAI,EACP,KAAK,EAAE,CAAC,wBAAwB,GAAG,6BAA6B,GAAG,SAAO,IAAI,KAAK,EACnF,UAAU,SAAO,GAAG,KAAK,WAAW,OAAO;AAEhD,SAAO;AACT;","names":[]}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/runtimes/react/controls/style-v2.tsx"],"sourcesContent":["import { StyleV2Control, StyleV2ControlData, StyleV2ControlDefinition } from '../../../controls'\nimport { useStyle } from '../use-style'\nimport {\n findBreakpointOverride,\n getBaseBreakpoint,\n getBreakpointMediaQuery,\n mergeOrCoalesceFallbacks,\n} from '../../../state/modules/breakpoints'\nimport { CSSObject } from '@emotion/css'\n\nimport { ControlDefinitionValue, ControlValue } from './control'\nimport { RenderHook } from '../components'\nimport { DeviceOverride } from '../../../controls/types'\nimport { useBreakpoints } from '../hooks/use-breakpoints'\n\nfunction useStyleControlCssObject(\n styleControlData: StyleV2ControlData,\n controlDefinition: StyleV2ControlDefinition,\n): CSSObject {\n const breakpoints = useBreakpoints()\n\n return {\n ...controlDefinition.config.getStyle(\n findBreakpointOverride(\n breakpoints,\n styleControlData,\n getBaseBreakpoint(breakpoints).id,\n mergeOrCoalesceFallbacks,\n )?.value,\n ),\n ...breakpoints.reduce((styles, breakpoint) => {\n return {\n ...styles,\n [getBreakpointMediaQuery(breakpoint)]: controlDefinition.config.getStyle(\n findBreakpointOverride(\n breakpoints,\n styleControlData,\n breakpoint.id,\n mergeOrCoalesceFallbacks,\n )?.value,\n ),\n }\n }, {}),\n }\n}\n\nexport type StyleV2ControlFormattedValue = string\n\nexport function useFormattedStyleV2<T extends StyleV2ControlDefinition>(\n styleControlData: StyleV2ControlData,\n controlDefinition: T,\n): StyleV2ControlFormattedValue {\n const styles = useStyleControlCssObject(styleControlData, controlDefinition)\n\n return useStyle(styles)\n}\n\ntype StyleV2ControlValueProps<T extends StyleV2ControlDefinition> = {\n definition: T\n data: StyleV2ControlData | undefined\n children(value: string): JSX.Element\n control?: StyleV2Control\n}\n\nexport function StyleV2ControlValue<T extends StyleV2ControlDefinition>({\n definition,\n data,\n children,\n control,\n}: StyleV2ControlValueProps<T>): JSX.Element {\n return (data ?? []).reduceRight(\n (renderFn, deviceOverrideData: DeviceOverride<any>) => responsiveValue => {\n return (\n <ControlValue\n definition={definition.config.type}\n data={deviceOverrideData.value}\n control={control?.control}\n >\n {value => renderFn([{ ...deviceOverrideData, value }, ...responsiveValue])}\n </ControlValue>\n )\n },\n (value: StyleV2ControlData) => {\n return (\n <RenderHook\n key={definition.type}\n hook={useFormattedStyleV2}\n parameters={[value, definition]}\n >\n {value => children(value as ControlDefinitionValue<T>)}\n </RenderHook>\n )\n },\n )([])\n}\n"],"mappings":"AAyEQ;AAxER,SAAS,gBAAgB;AACzB;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACK;AAGP,SAAiC,oBAAoB;AACrD,SAAS,kBAAkB;AAE3B,SAAS,sBAAsB;AAE/B,SAAS,yBACP,kBACA,mBACW;AACX,QAAM,cAAc,eAAe;AAEnC,SAAO;AAAA,IACL,GAAG,kBAAkB,OAAO;AAAA,MAC1B;AAAA,QACE;AAAA,QACA;AAAA,QACA,kBAAkB,WAAW,EAAE;AAAA,QAC/B;AAAA,MACF,GAAG;AAAA,IACL;AAAA,IACA,GAAG,YAAY,OAAO,CAAC,QAAQ,eAAe;AAC5C,aAAO;AAAA,QACL,GAAG;AAAA,QACH,CAAC,wBAAwB,UAAU,CAAC,GAAG,kBAAkB,OAAO;AAAA,UAC9D;AAAA,YACE;AAAA,YACA;AAAA,YACA,WAAW;AAAA,YACX;AAAA,UACF,GAAG;AAAA,QACL;AAAA,MACF;AAAA,IACF,GAAG,CAAC,CAAC;AAAA,EACP;AACF;AAIO,SAAS,oBACd,kBACA,mBAC8B;AAC9B,QAAM,SAAS,yBAAyB,kBAAkB,iBAAiB;AAE3E,SAAO,SAAS,MAAM;AACxB;AASO,SAAS,oBAAwD;AAAA,EACtE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,GAA6C;AAC3C,UAAQ,QAAQ,CAAC,GAAG;AAAA,IAClB,CAAC,UAAU,uBAA4C,qBAAmB;AACxE,aACE;AAAA,QAAC;AAAA;AAAA,UACC,YAAY,WAAW,OAAO;AAAA,UAC9B,MAAM,mBAAmB;AAAA,UACzB,SAAS,SAAS;AAAA,UAEjB,qBAAS,SAAS,CAAC,EAAE,GAAG,oBAAoB,MAAM,GAAG,GAAG,eAAe,CAAC;AAAA;AAAA,MAC3E;AAAA,IAEJ;AAAA,IACA,CAAC,UAA8B;AAC7B,aACE;AAAA,QAAC;AAAA;AAAA,UAEC,MAAM;AAAA,UACN,YAAY,CAAC,OAAO,UAAU;AAAA,UAE7B,WAAAA,WAAS,SAASA,MAAkC;AAAA;AAAA,QAJhD,WAAW;AAAA,MAKlB;AAAA,IAEJ;AAAA,EACF,EAAE,CAAC,CAAC;AACN;","names":["value"]}
1
+ {"version":3,"sources":["../../../../../src/runtimes/react/controls/style-v2.tsx"],"sourcesContent":["import { DeviceOverride } from '@makeswift/controls'\nimport { StyleV2Control, StyleV2ControlData, StyleV2ControlDefinition } from '../../../controls'\nimport { useStyle } from '../use-style'\nimport {\n findBreakpointOverride,\n getBaseBreakpoint,\n getBreakpointMediaQuery,\n mergeOrCoalesceFallbacks,\n} from '../../../state/modules/breakpoints'\nimport { CSSObject } from '@emotion/css'\n\nimport { ControlDefinitionValue, ControlValue } from './control'\nimport { RenderHook } from '../components'\nimport { useBreakpoints } from '../hooks/use-breakpoints'\n\nfunction useStyleControlCssObject(\n styleControlData: StyleV2ControlData,\n controlDefinition: StyleV2ControlDefinition,\n): CSSObject {\n const breakpoints = useBreakpoints()\n\n return {\n ...controlDefinition.config.getStyle(\n findBreakpointOverride(\n breakpoints,\n styleControlData,\n getBaseBreakpoint(breakpoints).id,\n mergeOrCoalesceFallbacks,\n )?.value,\n ),\n ...breakpoints.reduce((styles, breakpoint) => {\n return {\n ...styles,\n [getBreakpointMediaQuery(breakpoint)]: controlDefinition.config.getStyle(\n findBreakpointOverride(\n breakpoints,\n styleControlData,\n breakpoint.id,\n mergeOrCoalesceFallbacks,\n )?.value,\n ),\n }\n }, {}),\n }\n}\n\nexport type StyleV2ControlFormattedValue = string\n\nexport function useFormattedStyleV2<T extends StyleV2ControlDefinition>(\n styleControlData: StyleV2ControlData,\n controlDefinition: T,\n): StyleV2ControlFormattedValue {\n const styles = useStyleControlCssObject(styleControlData, controlDefinition)\n\n return useStyle(styles)\n}\n\ntype StyleV2ControlValueProps<T extends StyleV2ControlDefinition> = {\n definition: T\n data: StyleV2ControlData | undefined\n children(value: string): JSX.Element\n control?: StyleV2Control\n}\n\nexport function StyleV2ControlValue<T extends StyleV2ControlDefinition>({\n definition,\n data,\n children,\n control,\n}: StyleV2ControlValueProps<T>): JSX.Element {\n return (data ?? []).reduceRight(\n (renderFn, deviceOverrideData: DeviceOverride<any>) => responsiveValue => {\n return (\n <ControlValue\n definition={definition.config.type}\n data={deviceOverrideData.value}\n control={control?.control}\n >\n {value => renderFn([{ ...deviceOverrideData, value }, ...responsiveValue])}\n </ControlValue>\n )\n },\n (value: StyleV2ControlData) => {\n return (\n <RenderHook\n key={definition.type}\n hook={useFormattedStyleV2}\n parameters={[value, definition]}\n >\n {value => children(value as ControlDefinitionValue<T>)}\n </RenderHook>\n )\n },\n )([])\n}\n"],"mappings":"AAyEQ;AAvER,SAAS,gBAAgB;AACzB;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACK;AAGP,SAAiC,oBAAoB;AACrD,SAAS,kBAAkB;AAC3B,SAAS,sBAAsB;AAE/B,SAAS,yBACP,kBACA,mBACW;AACX,QAAM,cAAc,eAAe;AAEnC,SAAO;AAAA,IACL,GAAG,kBAAkB,OAAO;AAAA,MAC1B;AAAA,QACE;AAAA,QACA;AAAA,QACA,kBAAkB,WAAW,EAAE;AAAA,QAC/B;AAAA,MACF,GAAG;AAAA,IACL;AAAA,IACA,GAAG,YAAY,OAAO,CAAC,QAAQ,eAAe;AAC5C,aAAO;AAAA,QACL,GAAG;AAAA,QACH,CAAC,wBAAwB,UAAU,CAAC,GAAG,kBAAkB,OAAO;AAAA,UAC9D;AAAA,YACE;AAAA,YACA;AAAA,YACA,WAAW;AAAA,YACX;AAAA,UACF,GAAG;AAAA,QACL;AAAA,MACF;AAAA,IACF,GAAG,CAAC,CAAC;AAAA,EACP;AACF;AAIO,SAAS,oBACd,kBACA,mBAC8B;AAC9B,QAAM,SAAS,yBAAyB,kBAAkB,iBAAiB;AAE3E,SAAO,SAAS,MAAM;AACxB;AASO,SAAS,oBAAwD;AAAA,EACtE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,GAA6C;AAC3C,UAAQ,QAAQ,CAAC,GAAG;AAAA,IAClB,CAAC,UAAU,uBAA4C,qBAAmB;AACxE,aACE;AAAA,QAAC;AAAA;AAAA,UACC,YAAY,WAAW,OAAO;AAAA,UAC9B,MAAM,mBAAmB;AAAA,UACzB,SAAS,SAAS;AAAA,UAEjB,qBAAS,SAAS,CAAC,EAAE,GAAG,oBAAoB,MAAM,GAAG,GAAG,eAAe,CAAC;AAAA;AAAA,MAC3E;AAAA,IAEJ;AAAA,IACA,CAAC,UAA8B;AAC7B,aACE;AAAA,QAAC;AAAA;AAAA,UAEC,MAAM;AAAA,UACN,YAAY,CAAC,OAAO,UAAU;AAAA,UAE7B,WAAAA,WAAS,SAASA,MAAkC;AAAA;AAAA,QAJhD,WAAW;AAAA,MAKlB;AAAA,IAEJ;AAAA,EACF,EAAE,CAAC,CAAC;AACN;","names":["value"]}
@@ -2,7 +2,7 @@ import { match } from "ts-pattern";
2
2
  import {
3
3
  TextAreaControlDataTypeKey,
4
4
  TextAreaControlDataTypeValueV1
5
- } from "../../../controls";
5
+ } from "@makeswift/controls";
6
6
  function useTextAreaValue(data, definition) {
7
7
  const value = match(data).with({ [TextAreaControlDataTypeKey]: TextAreaControlDataTypeValueV1 }, (val) => val.value).otherwise((val) => val) ?? definition.config.defaultValue;
8
8
  return value;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/runtimes/react/controls/text-area.ts"],"sourcesContent":["import { match } from 'ts-pattern'\nimport {\n TextAreaControlData,\n TextAreaControlDataTypeKey,\n TextAreaControlDataTypeValueV1,\n TextAreaControlDefinition,\n} from '../../../controls'\n\nexport type TextAreaControlValue<T extends TextAreaControlDefinition> =\n undefined extends T['config']['defaultValue'] ? string | undefined : string\n\nexport function useTextAreaValue<T extends TextAreaControlDefinition>(\n data: TextAreaControlData | undefined,\n definition: T,\n): TextAreaControlValue<T> {\n const value: string | undefined =\n match(data)\n .with({ [TextAreaControlDataTypeKey]: TextAreaControlDataTypeValueV1 }, val => val.value)\n .otherwise(val => val) ?? definition.config.defaultValue\n\n return value as TextAreaControlValue<T>\n}\n"],"mappings":"AAAA,SAAS,aAAa;AACtB;AAAA,EAEE;AAAA,EACA;AAAA,OAEK;AAKA,SAAS,iBACd,MACA,YACyB;AACzB,QAAM,QACJ,MAAM,IAAI,EACP,KAAK,EAAE,CAAC,0BAA0B,GAAG,+BAA+B,GAAG,SAAO,IAAI,KAAK,EACvF,UAAU,SAAO,GAAG,KAAK,WAAW,OAAO;AAEhD,SAAO;AACT;","names":[]}
1
+ {"version":3,"sources":["../../../../../src/runtimes/react/controls/text-area.ts"],"sourcesContent":["import { match } from 'ts-pattern'\nimport {\n TextAreaControlData,\n TextAreaControlDataTypeKey,\n TextAreaControlDataTypeValueV1,\n TextAreaControlDefinition,\n} from '@makeswift/controls'\n\nexport type TextAreaControlValue<T extends TextAreaControlDefinition> =\n undefined extends T['config']['defaultValue'] ? string | undefined : string\n\nexport function useTextAreaValue<T extends TextAreaControlDefinition>(\n data: TextAreaControlData | undefined,\n definition: T,\n): TextAreaControlValue<T> {\n const value: string | undefined =\n match(data)\n .with({ [TextAreaControlDataTypeKey]: TextAreaControlDataTypeValueV1 }, val => val.value)\n .otherwise(val => val) ?? definition.config.defaultValue\n\n return value as TextAreaControlValue<T>\n}\n"],"mappings":"AAAA,SAAS,aAAa;AACtB;AAAA,EAEE;AAAA,EACA;AAAA,OAEK;AAKA,SAAS,iBACd,MACA,YACyB;AACzB,QAAM,QACJ,MAAM,IAAI,EACP,KAAK,EAAE,CAAC,0BAA0B,GAAG,+BAA+B,GAAG,SAAO,IAAI,KAAK,EACvF,UAAU,SAAO,GAAG,KAAK,WAAW,OAAO;AAEhD,SAAO;AACT;","names":[]}
@@ -2,7 +2,7 @@ import { match } from "ts-pattern";
2
2
  import {
3
3
  TextInputControlDataTypeKey,
4
4
  TextInputControlDataTypeValueV1
5
- } from "../../../controls";
5
+ } from "@makeswift/controls";
6
6
  function useTextInputValue(data, definition) {
7
7
  const value = match(data).with({ [TextInputControlDataTypeKey]: TextInputControlDataTypeValueV1 }, (val) => val.value).otherwise((val) => val) ?? definition.config.defaultValue;
8
8
  return value;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/runtimes/react/controls/text-input.ts"],"sourcesContent":["import { match } from 'ts-pattern'\nimport {\n TextInputControlData,\n TextInputControlDataTypeKey,\n TextInputControlDataTypeValueV1,\n TextInputControlDefinition,\n} from '../../../controls'\n\nexport type TextInputControlValue<T extends TextInputControlDefinition> =\n undefined extends T['config']['defaultValue'] ? string | undefined : string\n\nexport function useTextInputValue<T extends TextInputControlDefinition>(\n data: TextInputControlData | undefined,\n definition: T,\n): TextInputControlValue<T> {\n const value: string | undefined =\n match(data)\n .with({ [TextInputControlDataTypeKey]: TextInputControlDataTypeValueV1 }, val => val.value)\n .otherwise(val => val) ?? definition.config.defaultValue\n\n return value as TextInputControlValue<T>\n}\n"],"mappings":"AAAA,SAAS,aAAa;AACtB;AAAA,EAEE;AAAA,EACA;AAAA,OAEK;AAKA,SAAS,kBACd,MACA,YAC0B;AAC1B,QAAM,QACJ,MAAM,IAAI,EACP,KAAK,EAAE,CAAC,2BAA2B,GAAG,gCAAgC,GAAG,SAAO,IAAI,KAAK,EACzF,UAAU,SAAO,GAAG,KAAK,WAAW,OAAO;AAEhD,SAAO;AACT;","names":[]}
1
+ {"version":3,"sources":["../../../../../src/runtimes/react/controls/text-input.ts"],"sourcesContent":["import { match } from 'ts-pattern'\nimport {\n TextInputControlData,\n TextInputControlDataTypeKey,\n TextInputControlDataTypeValueV1,\n TextInputControlDefinition,\n} from '@makeswift/controls'\n\nexport type TextInputControlValue<T extends TextInputControlDefinition> =\n undefined extends T['config']['defaultValue'] ? string | undefined : string\n\nexport function useTextInputValue<T extends TextInputControlDefinition>(\n data: TextInputControlData | undefined,\n definition: T,\n): TextInputControlValue<T> {\n const value: string | undefined =\n match(data)\n .with({ [TextInputControlDataTypeKey]: TextInputControlDataTypeValueV1 }, val => val.value)\n .otherwise(val => val) ?? definition.config.defaultValue\n\n return value as TextInputControlValue<T>\n}\n"],"mappings":"AAAA,SAAS,aAAa;AACtB;AAAA,EAEE;AAAA,EACA;AAAA,OAEK;AAKA,SAAS,kBACd,MACA,YAC0B;AAC1B,QAAM,QACJ,MAAM,IAAI,EACP,KAAK,EAAE,CAAC,2BAA2B,GAAG,gCAAgC,GAAG,SAAO,IAAI,KAAK,EACzF,UAAU,SAAO,GAAG,KAAK,WAAW,OAAO;AAEhD,SAAO;AACT;","names":[]}
@@ -1,5 +1,6 @@
1
1
  import { jsx } from "react/jsx-runtime";
2
2
  import { useRef } from "react";
3
+ import { CheckboxControlType, IconRadioGroupControlType, NumberControlType, TextInputControlType, TextAreaControlType } from "@makeswift/controls";
3
4
  import * as ReactPage from "../../state/react-page";
4
5
  import {
5
6
  useBoxShadow,
@@ -20,19 +21,15 @@ import {
20
21
  useResponsiveWidth
21
22
  } from "../../components/utils/responsive-style";
22
23
  import {
23
- CheckboxControlType,
24
24
  ColorControlType,
25
25
  ComboboxControlType,
26
26
  ImageControlType,
27
27
  LinkControlType,
28
28
  ListControlType,
29
- NumberControlType,
30
29
  SelectControlType,
31
30
  ShapeControlType,
32
31
  SlotControlType,
33
32
  StyleControlType,
34
- TextAreaControlType,
35
- TextInputControlType,
36
33
  RichTextControlType,
37
34
  RichTextV2ControlType,
38
35
  StyleV2ControlType,
@@ -45,7 +42,6 @@ import { useSlot } from "./controls/slot";
45
42
  import { useStyle } from "./use-style";
46
43
  import { useRichText } from "./controls/rich-text/rich-text";
47
44
  import { useRichTextV2 } from "./controls/rich-text-v2";
48
- import { IconRadioGroupControlType } from "../../controls/icon-radio-group";
49
45
  import { useStore } from "./hooks/use-store";
50
46
  import { useDocumentKey } from "./hooks/use-document-key";
51
47
  import { useSelector } from "./hooks/use-selector";
@@ -62,7 +58,9 @@ import {
62
58
  getPaddingPropControllerDataResponsivePaddingData,
63
59
  PaddingPropControllerFormat,
64
60
  getWidthPropControllerDataResponsiveLengthData,
65
- WidthPropControllerFormat
61
+ WidthPropControllerFormat,
62
+ GapX,
63
+ ResponsiveNumber
66
64
  } from "@makeswift/prop-controllers";
67
65
  import { useResponsiveLengthPropControllerData } from "../../components/hooks/useResponsiveLengthPropControllerData";
68
66
  import { useNumberPropControllerData } from "../../components/hooks/useNumberPropControllerData";
@@ -70,7 +68,7 @@ import { useResponsiveColorPropControllerData } from "../../components/hooks/use
70
68
  import { useTextStylePropControllerData } from "../../components/hooks/useTextStylePropControllerData";
71
69
  import { useNavigationLinksPropControllerData } from "../../components/hooks/useNavigationLinksPropControllerData";
72
70
  import { useTextAreaPropControllerData } from "../../components/hooks/useTextAreaPropControllerData";
73
- import { useGapXPropControllerData } from "../../components/hooks/useGapXPropControllerData";
71
+ import { usePropValue } from "../../components/hooks/usePropValue";
74
72
  import { useGapYPropControllerData } from "../../components/hooks/useGapYPropControllerData";
75
73
  import { useElementIDPropControllerData } from "../../components/hooks/useElementIDPropControllerData";
76
74
  import { useTableFormFieldsPropControllerData } from "../../components/hooks/useTableFormFieldsPropControllerData";
@@ -306,6 +304,16 @@ function PropsValue({ element, children }) {
306
304
  },
307
305
  descriptor.type
308
306
  );
307
+ case PropControllerTypes.ResponsiveNumber:
308
+ return /* @__PURE__ */ jsx(
309
+ RenderHook,
310
+ {
311
+ hook: (data) => usePropValue(ResponsiveNumber, data),
312
+ parameters: [props[propName]],
313
+ children: (value) => renderFn({ ...propsValue, [propName]: value })
314
+ },
315
+ descriptor.type
316
+ );
309
317
  case PropControllerTypes.ResponsiveLength:
310
318
  return /* @__PURE__ */ jsx(
311
319
  RenderHook,
@@ -458,7 +466,7 @@ function PropsValue({ element, children }) {
458
466
  return /* @__PURE__ */ jsx(
459
467
  RenderHook,
460
468
  {
461
- hook: useGapXPropControllerData,
469
+ hook: (data) => usePropValue(GapX, data),
462
470
  parameters: [props[propName]],
463
471
  children: (value) => renderFn({ ...propsValue, [propName]: value })
464
472
  },