@makeswift/runtime 0.0.0-1faafb3 → 0.0.0-20221019211549

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 (619) hide show
  1. package/api.js +1 -0
  2. package/box-model.js +1 -0
  3. package/builder.js +1 -0
  4. package/components.js +1 -0
  5. package/controls.js +1 -0
  6. package/dist/Box.cjs.js +507 -0
  7. package/dist/Box.cjs.js.map +1 -0
  8. package/dist/Box.es.js +501 -0
  9. package/dist/Box.es.js.map +1 -0
  10. package/dist/Button.cjs.js +315 -0
  11. package/dist/Button.cjs.js.map +1 -0
  12. package/dist/Button.es.js +308 -0
  13. package/dist/Button.es.js.map +1 -0
  14. package/dist/Carousel.cjs.js +493 -0
  15. package/dist/Carousel.cjs.js.map +1 -0
  16. package/dist/Carousel.es.js +487 -0
  17. package/dist/Carousel.es.js.map +1 -0
  18. package/dist/Countdown.cjs.js +347 -0
  19. package/dist/Countdown.cjs.js.map +1 -0
  20. package/dist/Countdown.es.js +341 -0
  21. package/dist/Countdown.es.js.map +1 -0
  22. package/dist/Divider.cjs.js +122 -0
  23. package/dist/Divider.cjs.js.map +1 -0
  24. package/dist/Divider.es.js +116 -0
  25. package/dist/Divider.es.js.map +1 -0
  26. package/dist/Embed.cjs.js +136 -0
  27. package/dist/Embed.cjs.js.map +1 -0
  28. package/dist/Embed.es.js +130 -0
  29. package/dist/Embed.es.js.map +1 -0
  30. package/dist/Form.cjs.js +1731 -0
  31. package/dist/Form.cjs.js.map +1 -0
  32. package/dist/Form.es.js +1704 -0
  33. package/dist/Form.es.js.map +1 -0
  34. package/dist/Image.cjs2.js +155 -0
  35. package/dist/Image.cjs2.js.map +1 -0
  36. package/dist/Image.es2.js +148 -0
  37. package/dist/Image.es2.js.map +1 -0
  38. package/dist/Navigation.cjs.js +742 -0
  39. package/dist/Navigation.cjs.js.map +1 -0
  40. package/dist/Navigation.es.js +716 -0
  41. package/dist/Navigation.es.js.map +1 -0
  42. package/dist/Root.cjs.js +149 -0
  43. package/dist/Root.cjs.js.map +1 -0
  44. package/dist/Root.es.js +143 -0
  45. package/dist/Root.es.js.map +1 -0
  46. package/dist/SocialLinks.cjs.js +906 -0
  47. package/dist/SocialLinks.cjs.js.map +1 -0
  48. package/dist/SocialLinks.es.js +880 -0
  49. package/dist/SocialLinks.es.js.map +1 -0
  50. package/dist/Text.cjs.js +482 -0
  51. package/dist/Text.cjs.js.map +1 -0
  52. package/dist/Text.es.js +474 -0
  53. package/dist/Text.es.js.map +1 -0
  54. package/dist/Video.cjs.js +128 -0
  55. package/dist/Video.cjs.js.map +1 -0
  56. package/dist/Video.es.js +121 -0
  57. package/dist/Video.es.js.map +1 -0
  58. package/dist/actions.cjs.js +140 -17
  59. package/dist/actions.cjs.js.map +1 -1
  60. package/dist/actions.es.js +122 -16
  61. package/dist/actions.es.js.map +1 -1
  62. package/dist/api.cjs.js +6 -0
  63. package/dist/api.cjs.js.map +1 -0
  64. package/dist/api.es.js +3 -0
  65. package/dist/api.es.js.map +1 -0
  66. package/dist/box-model.cjs.js +2 -2
  67. package/dist/box-model.es.js +1 -0
  68. package/dist/box-model.es.js.map +1 -1
  69. package/dist/box-models.cjs.js +28 -156
  70. package/dist/box-models.cjs.js.map +1 -1
  71. package/dist/box-models.es.js +31 -159
  72. package/dist/box-models.es.js.map +1 -1
  73. package/dist/builder.cjs.js +13 -0
  74. package/dist/builder.cjs.js.map +1 -0
  75. package/dist/builder.es.js +4 -0
  76. package/dist/builder.es.js.map +1 -0
  77. package/dist/color.cjs.js +8 -0
  78. package/dist/color.cjs.js.map +1 -0
  79. package/dist/color.es.js +6 -0
  80. package/dist/color.es.js.map +1 -0
  81. package/dist/components.cjs.js +107 -6901
  82. package/dist/components.cjs.js.map +1 -1
  83. package/dist/components.es.js +66 -6866
  84. package/dist/components.es.js.map +1 -1
  85. package/dist/constants.cjs.js +15 -0
  86. package/dist/constants.cjs.js.map +1 -0
  87. package/dist/constants.es.js +14 -0
  88. package/dist/constants.es.js.map +1 -0
  89. package/dist/control-serialization.cjs.js +485 -0
  90. package/dist/control-serialization.cjs.js.map +1 -0
  91. package/dist/control-serialization.es.js +478 -0
  92. package/dist/control-serialization.es.js.map +1 -0
  93. package/dist/controls.cjs.js +38 -0
  94. package/dist/controls.cjs.js.map +1 -0
  95. package/dist/controls.es.js +6 -0
  96. package/dist/controls.es.js.map +1 -0
  97. package/dist/cssMediaRules.cjs.js +210 -0
  98. package/dist/cssMediaRules.cjs.js.map +1 -0
  99. package/dist/cssMediaRules.es.js +201 -0
  100. package/dist/cssMediaRules.es.js.map +1 -0
  101. package/dist/graphql.cjs.js +365 -0
  102. package/dist/graphql.cjs.js.map +1 -0
  103. package/dist/graphql.es.js +356 -0
  104. package/dist/graphql.es.js.map +1 -0
  105. package/dist/image.cjs.js +282 -0
  106. package/dist/image.cjs.js.map +1 -0
  107. package/dist/image.es.js +240 -0
  108. package/dist/image.es.js.map +1 -0
  109. package/dist/index.cjs.js +3211 -0
  110. package/dist/index.cjs.js.map +1 -0
  111. package/dist/index.cjs2.js +522 -0
  112. package/dist/index.cjs2.js.map +1 -0
  113. package/dist/index.cjs3.js +146 -0
  114. package/dist/index.cjs3.js.map +1 -0
  115. package/dist/index.cjs4.js +18 -0
  116. package/dist/index.cjs4.js.map +1 -0
  117. package/dist/index.es.js +3104 -0
  118. package/dist/index.es.js.map +1 -0
  119. package/dist/index.es2.js +514 -0
  120. package/dist/index.es2.js.map +1 -0
  121. package/dist/index.es3.js +140 -0
  122. package/dist/index.es3.js.map +1 -0
  123. package/dist/index.es4.js +13 -0
  124. package/dist/index.es4.js.map +1 -0
  125. package/dist/main.cjs.js +16 -2
  126. package/dist/main.cjs.js.map +1 -1
  127. package/dist/main.es.js +7 -1
  128. package/dist/main.es.js.map +1 -1
  129. package/dist/next.cjs.js +432 -0
  130. package/dist/next.cjs.js.map +1 -0
  131. package/dist/next.es.js +416 -0
  132. package/dist/next.es.js.map +1 -0
  133. package/dist/placeholders.cjs.js +13 -0
  134. package/dist/placeholders.cjs.js.map +1 -0
  135. package/dist/placeholders.es.js +12 -0
  136. package/dist/placeholders.es.js.map +1 -0
  137. package/dist/prop-controllers.cjs.js +6 -175
  138. package/dist/prop-controllers.cjs.js.map +1 -1
  139. package/dist/prop-controllers.es.js +2 -173
  140. package/dist/prop-controllers.es.js.map +1 -1
  141. package/dist/react-builder-preview.cjs.js +257 -4138
  142. package/dist/react-builder-preview.cjs.js.map +1 -1
  143. package/dist/react-builder-preview.es.js +249 -4134
  144. package/dist/react-builder-preview.es.js.map +1 -1
  145. package/dist/react-page.cjs.js +602 -0
  146. package/dist/react-page.cjs.js.map +1 -0
  147. package/dist/react-page.es.js +566 -0
  148. package/dist/react-page.es.js.map +1 -0
  149. package/dist/react.cjs.js +41 -7
  150. package/dist/react.cjs.js.map +1 -1
  151. package/dist/react.es.js +33 -1
  152. package/dist/react.es.js.map +1 -1
  153. package/dist/shape.cjs.js +20 -0
  154. package/dist/shape.cjs.js.map +1 -0
  155. package/dist/shape.es.js +14 -0
  156. package/dist/shape.es.js.map +1 -0
  157. package/dist/slot.cjs.js +130 -0
  158. package/dist/slot.cjs.js.map +1 -0
  159. package/dist/slot.es.js +123 -0
  160. package/dist/slot.es.js.map +1 -0
  161. package/dist/text-input.cjs.js +38 -0
  162. package/dist/text-input.cjs.js.map +1 -0
  163. package/dist/text-input.es.js +26 -0
  164. package/dist/text-input.es.js.map +1 -0
  165. package/dist/types/src/api/constants.d.ts +4 -0
  166. package/dist/types/src/api/constants.d.ts.map +1 -0
  167. package/dist/types/src/api/generated/graphql.d.ts +175 -0
  168. package/dist/types/src/api/generated/graphql.d.ts.map +1 -0
  169. package/dist/types/src/api/index.d.ts +3 -0
  170. package/dist/types/src/api/index.d.ts.map +1 -0
  171. package/dist/types/src/api/introspection.d.ts +10 -0
  172. package/dist/types/src/api/introspection.d.ts.map +1 -0
  173. package/dist/types/src/api/react.d.ts +27 -0
  174. package/dist/types/src/api/react.d.ts.map +1 -0
  175. package/dist/types/src/api/types.d.ts +4 -0
  176. package/dist/types/src/api/types.d.ts.map +1 -0
  177. package/dist/types/src/box-model.d.ts +3 -0
  178. package/dist/types/src/box-model.d.ts.map +1 -0
  179. package/dist/types/src/builder/index.d.ts +2 -0
  180. package/dist/types/src/builder/index.d.ts.map +1 -0
  181. package/dist/types/src/builder/serialization/control-serialization.d.ts +301 -0
  182. package/dist/types/src/builder/serialization/control-serialization.d.ts.map +1 -0
  183. package/dist/types/src/builder/serialization/controls/combobox.d.ts +5 -0
  184. package/dist/types/src/builder/serialization/controls/combobox.d.ts.map +1 -0
  185. package/dist/types/src/builder/serialization/controls/list.d.ts +5 -0
  186. package/dist/types/src/builder/serialization/controls/list.d.ts.map +1 -0
  187. package/dist/types/src/builder/serialization/controls/shape.d.ts +5 -0
  188. package/dist/types/src/builder/serialization/controls/shape.d.ts.map +1 -0
  189. package/dist/types/src/builder/serialization/controls/types.d.ts +10 -0
  190. package/dist/types/src/builder/serialization/controls/types.d.ts.map +1 -0
  191. package/dist/types/src/builder/serialization/function-serialization.d.ts +12 -0
  192. package/dist/types/src/builder/serialization/function-serialization.d.ts.map +1 -0
  193. package/dist/types/src/builder/serialization/index.d.ts +4 -0
  194. package/dist/types/src/builder/serialization/index.d.ts.map +1 -0
  195. package/dist/types/{components → src/components/builtin}/Box/Box.d.ts +8 -5
  196. package/dist/types/src/components/builtin/Box/Box.d.ts.map +1 -0
  197. package/dist/types/{components → src/components/builtin}/Box/animations.d.ts +3 -10
  198. package/dist/types/src/components/builtin/Box/animations.d.ts.map +1 -0
  199. package/dist/types/{components → src/components/builtin}/Box/components/Placeholder/index.d.ts +0 -0
  200. package/dist/types/src/components/builtin/Box/components/Placeholder/index.d.ts.map +1 -0
  201. package/dist/types/src/components/builtin/Box/constants.d.ts +9 -0
  202. package/dist/types/src/components/builtin/Box/constants.d.ts.map +1 -0
  203. package/dist/types/{components → src/components/builtin}/Box/index.d.ts +1 -1
  204. package/dist/types/src/components/builtin/Box/index.d.ts.map +1 -0
  205. package/dist/types/src/components/builtin/Box/register.d.ts +3 -0
  206. package/dist/types/src/components/builtin/Box/register.d.ts.map +1 -0
  207. package/dist/types/src/components/builtin/Button/Button.d.ts +117 -0
  208. package/dist/types/src/components/builtin/Button/Button.d.ts.map +1 -0
  209. package/dist/types/src/components/builtin/Button/contants.d.ts +2 -0
  210. package/dist/types/src/components/builtin/Button/contants.d.ts.map +1 -0
  211. package/dist/types/src/components/builtin/Button/index.d.ts +2 -0
  212. package/dist/types/src/components/builtin/Button/index.d.ts.map +1 -0
  213. package/dist/types/src/components/builtin/Button/register.d.ts +3 -0
  214. package/dist/types/src/components/builtin/Button/register.d.ts.map +1 -0
  215. package/dist/types/src/components/builtin/Carousel/Carousel.d.ts +26 -0
  216. package/dist/types/src/components/builtin/Carousel/Carousel.d.ts.map +1 -0
  217. package/dist/types/src/components/builtin/Carousel/index.d.ts +2 -0
  218. package/dist/types/src/components/builtin/Carousel/index.d.ts.map +1 -0
  219. package/dist/types/src/components/builtin/Carousel/register.d.ts +3 -0
  220. package/dist/types/src/components/builtin/Carousel/register.d.ts.map +1 -0
  221. package/dist/types/src/components/builtin/Countdown/Countdown.d.ts +25 -0
  222. package/dist/types/src/components/builtin/Countdown/Countdown.d.ts.map +1 -0
  223. package/dist/types/src/components/builtin/Countdown/index.d.ts +2 -0
  224. package/dist/types/src/components/builtin/Countdown/index.d.ts.map +1 -0
  225. package/dist/types/src/components/builtin/Countdown/register.d.ts +3 -0
  226. package/dist/types/src/components/builtin/Countdown/register.d.ts.map +1 -0
  227. package/dist/types/src/components/builtin/Divider/Divider.d.ts +15 -0
  228. package/dist/types/src/components/builtin/Divider/Divider.d.ts.map +1 -0
  229. package/dist/types/src/components/builtin/Divider/index.d.ts +2 -0
  230. package/dist/types/src/components/builtin/Divider/index.d.ts.map +1 -0
  231. package/dist/types/src/components/builtin/Divider/register.d.ts +3 -0
  232. package/dist/types/src/components/builtin/Divider/register.d.ts.map +1 -0
  233. package/dist/types/src/components/builtin/Embed/Embed.d.ts +11 -0
  234. package/dist/types/src/components/builtin/Embed/Embed.d.ts.map +1 -0
  235. package/dist/types/src/components/builtin/Embed/index.d.ts +2 -0
  236. package/dist/types/src/components/builtin/Embed/index.d.ts.map +1 -0
  237. package/dist/types/src/components/builtin/Embed/register.d.ts +3 -0
  238. package/dist/types/src/components/builtin/Embed/register.d.ts.map +1 -0
  239. package/dist/types/src/components/builtin/Form/Form.d.ts +33 -0
  240. package/dist/types/src/components/builtin/Form/Form.d.ts.map +1 -0
  241. package/dist/types/src/components/builtin/Form/components/Field/components/Checkbox/index.d.ts +15 -0
  242. package/dist/types/src/components/builtin/Form/components/Field/components/Checkbox/index.d.ts.map +1 -0
  243. package/dist/types/src/components/builtin/Form/components/Field/components/CheckboxTableField/index.d.ts +15 -0
  244. package/dist/types/src/components/builtin/Form/components/Field/components/CheckboxTableField/index.d.ts.map +1 -0
  245. package/dist/types/src/components/builtin/Form/components/Field/components/EmailTableField/index.d.ts +11 -0
  246. package/dist/types/src/components/builtin/Form/components/Field/components/EmailTableField/index.d.ts.map +1 -0
  247. package/dist/types/src/components/builtin/Form/components/Field/components/Input/index.d.ts +14 -0
  248. package/dist/types/src/components/builtin/Form/components/Field/components/Input/index.d.ts.map +1 -0
  249. package/dist/types/src/components/builtin/Form/components/Field/components/Label/index.d.ts +16 -0
  250. package/dist/types/src/components/builtin/Form/components/Field/components/Label/index.d.ts.map +1 -0
  251. package/dist/types/src/components/builtin/Form/components/Field/components/LongTextTableField/index.d.ts +10 -0
  252. package/dist/types/src/components/builtin/Form/components/Field/components/LongTextTableField/index.d.ts.map +1 -0
  253. package/dist/types/src/components/builtin/Form/components/Field/components/MultipleSelectTableField/index.d.ts +23 -0
  254. package/dist/types/src/components/builtin/Form/components/Field/components/MultipleSelectTableField/index.d.ts.map +1 -0
  255. package/dist/types/src/components/builtin/Form/components/Field/components/NumberTableField/index.d.ts +11 -0
  256. package/dist/types/src/components/builtin/Form/components/Field/components/NumberTableField/index.d.ts.map +1 -0
  257. package/dist/types/src/components/builtin/Form/components/Field/components/PhoneNumberTableField/index.d.ts +11 -0
  258. package/dist/types/src/components/builtin/Form/components/Field/components/PhoneNumberTableField/index.d.ts.map +1 -0
  259. package/dist/types/src/components/builtin/Form/components/Field/components/PlaceholderTableField/index.d.ts +3 -0
  260. package/dist/types/src/components/builtin/Form/components/Field/components/PlaceholderTableField/index.d.ts.map +1 -0
  261. package/dist/types/src/components/builtin/Form/components/Field/components/RadioButton/index.d.ts +17 -0
  262. package/dist/types/src/components/builtin/Form/components/Field/components/RadioButton/index.d.ts.map +1 -0
  263. package/dist/types/src/components/builtin/Form/components/Field/components/SingleLineTextTableField/index.d.ts +11 -0
  264. package/dist/types/src/components/builtin/Form/components/Field/components/SingleLineTextTableField/index.d.ts.map +1 -0
  265. package/dist/types/src/components/builtin/Form/components/Field/components/SingleSelectTableField/components/TableColumnRadioButtonGroup/index.d.ts +23 -0
  266. package/dist/types/src/components/builtin/Form/components/Field/components/SingleSelectTableField/components/TableColumnRadioButtonGroup/index.d.ts.map +1 -0
  267. package/dist/types/src/components/builtin/Form/components/Field/components/SingleSelectTableField/components/TableColumnSingleSelect/index.d.ts +19 -0
  268. package/dist/types/src/components/builtin/Form/components/Field/components/SingleSelectTableField/components/TableColumnSingleSelect/index.d.ts.map +1 -0
  269. package/dist/types/src/components/builtin/Form/components/Field/components/SingleSelectTableField/index.d.ts +24 -0
  270. package/dist/types/src/components/builtin/Form/components/Field/components/SingleSelectTableField/index.d.ts.map +1 -0
  271. package/dist/types/src/components/builtin/Form/components/Field/components/TextArea/index.d.ts +13 -0
  272. package/dist/types/src/components/builtin/Form/components/Field/components/TextArea/index.d.ts.map +1 -0
  273. package/dist/types/src/components/builtin/Form/components/Field/components/URLTableField/index.d.ts +11 -0
  274. package/dist/types/src/components/builtin/Form/components/Field/components/URLTableField/index.d.ts.map +1 -0
  275. package/dist/types/src/components/builtin/Form/components/Field/index.d.ts +19 -0
  276. package/dist/types/src/components/builtin/Form/components/Field/index.d.ts.map +1 -0
  277. package/dist/types/src/components/builtin/Form/components/Field/services/cssField.d.ts +11 -0
  278. package/dist/types/src/components/builtin/Form/components/Field/services/cssField.d.ts.map +1 -0
  279. package/dist/types/src/components/builtin/Form/components/Placeholder/index.d.ts +10 -0
  280. package/dist/types/src/components/builtin/Form/components/Placeholder/index.d.ts.map +1 -0
  281. package/dist/types/src/components/builtin/Form/components/Spinner/index.d.ts +3 -0
  282. package/dist/types/src/components/builtin/Form/components/Spinner/index.d.ts.map +1 -0
  283. package/dist/types/src/components/builtin/Form/context/FormContext.d.ts +39 -0
  284. package/dist/types/src/components/builtin/Form/context/FormContext.d.ts.map +1 -0
  285. package/dist/types/src/components/builtin/Form/index.d.ts +2 -0
  286. package/dist/types/src/components/builtin/Form/index.d.ts.map +1 -0
  287. package/dist/types/src/components/builtin/Form/register.d.ts +3 -0
  288. package/dist/types/src/components/builtin/Form/register.d.ts.map +1 -0
  289. package/dist/types/src/components/builtin/Form/types.d.ts +62 -0
  290. package/dist/types/src/components/builtin/Form/types.d.ts.map +1 -0
  291. package/dist/types/src/components/builtin/Image/Image.d.ts +26 -0
  292. package/dist/types/src/components/builtin/Image/Image.d.ts.map +1 -0
  293. package/dist/types/src/components/builtin/Image/index.d.ts +2 -0
  294. package/dist/types/src/components/builtin/Image/index.d.ts.map +1 -0
  295. package/dist/types/src/components/builtin/Image/register.d.ts +3 -0
  296. package/dist/types/src/components/builtin/Image/register.d.ts.map +1 -0
  297. package/dist/types/src/components/builtin/Navigation/Navigation.d.ts +24 -0
  298. package/dist/types/src/components/builtin/Navigation/Navigation.d.ts.map +1 -0
  299. package/dist/types/src/components/builtin/Navigation/components/DropDownButton/index.d.ts +100 -0
  300. package/dist/types/src/components/builtin/Navigation/components/DropDownButton/index.d.ts.map +1 -0
  301. package/dist/types/src/components/builtin/Navigation/components/LinksPlaceholder/index.d.ts +8 -0
  302. package/dist/types/src/components/builtin/Navigation/components/LinksPlaceholder/index.d.ts.map +1 -0
  303. package/dist/types/src/components/builtin/Navigation/components/MobileMenu/components/MobileDropDownButton/index.d.ts +101 -0
  304. package/dist/types/src/components/builtin/Navigation/components/MobileMenu/components/MobileDropDownButton/index.d.ts.map +1 -0
  305. package/dist/types/src/components/builtin/Navigation/components/MobileMenu/index.d.ts +14 -0
  306. package/dist/types/src/components/builtin/Navigation/components/MobileMenu/index.d.ts.map +1 -0
  307. package/dist/types/src/components/builtin/Navigation/index.d.ts +2 -0
  308. package/dist/types/src/components/builtin/Navigation/index.d.ts.map +1 -0
  309. package/dist/types/src/components/builtin/Navigation/register.d.ts +3 -0
  310. package/dist/types/src/components/builtin/Navigation/register.d.ts.map +1 -0
  311. package/dist/types/src/components/builtin/Root/Root.d.ts +12 -0
  312. package/dist/types/src/components/builtin/Root/Root.d.ts.map +1 -0
  313. package/dist/types/{components → src/components/builtin}/Root/components/Placeholder/index.d.ts +0 -0
  314. package/dist/types/src/components/builtin/Root/components/Placeholder/index.d.ts.map +1 -0
  315. package/dist/types/{components → src/components/builtin}/Root/index.d.ts +0 -0
  316. package/dist/types/src/components/builtin/Root/index.d.ts.map +1 -0
  317. package/dist/types/src/components/builtin/Root/register.d.ts +3 -0
  318. package/dist/types/src/components/builtin/Root/register.d.ts.map +1 -0
  319. package/dist/types/src/components/builtin/SocialLinks/SocialLinks.d.ts +19 -0
  320. package/dist/types/src/components/builtin/SocialLinks/SocialLinks.d.ts.map +1 -0
  321. package/dist/types/src/components/builtin/SocialLinks/components/SocialLinksPlaceholder/index.d.ts +8 -0
  322. package/dist/types/src/components/builtin/SocialLinks/components/SocialLinksPlaceholder/index.d.ts.map +1 -0
  323. package/dist/types/src/components/builtin/SocialLinks/index.d.ts +2 -0
  324. package/dist/types/src/components/builtin/SocialLinks/index.d.ts.map +1 -0
  325. package/dist/types/src/components/builtin/SocialLinks/options.d.ts +118 -0
  326. package/dist/types/src/components/builtin/SocialLinks/options.d.ts.map +1 -0
  327. package/dist/types/src/components/builtin/SocialLinks/register.d.ts +3 -0
  328. package/dist/types/src/components/builtin/SocialLinks/register.d.ts.map +1 -0
  329. package/dist/types/src/components/builtin/Text/Text.d.ts +16 -0
  330. package/dist/types/src/components/builtin/Text/Text.d.ts.map +1 -0
  331. package/dist/types/src/components/builtin/Text/components/RichTextEditor/components/Block/index.d.ts +13 -0
  332. package/dist/types/src/components/builtin/Text/components/RichTextEditor/components/Block/index.d.ts.map +1 -0
  333. package/dist/types/src/components/builtin/Text/components/RichTextEditor/components/Mark/hooks/useTypographyMark.d.ts +25 -0
  334. package/dist/types/src/components/builtin/Text/components/RichTextEditor/components/Mark/hooks/useTypographyMark.d.ts.map +1 -0
  335. package/dist/types/src/components/builtin/Text/components/RichTextEditor/components/Mark/index.d.ts +13 -0
  336. package/dist/types/src/components/builtin/Text/components/RichTextEditor/components/Mark/index.d.ts.map +1 -0
  337. package/dist/types/src/components/builtin/Text/components/RichTextEditor/index.d.ts +5 -0
  338. package/dist/types/src/components/builtin/Text/components/RichTextEditor/index.d.ts.map +1 -0
  339. package/dist/types/src/components/builtin/Text/components/RichTextEditor/plugins/DeviceOverridesBlocks.d.ts +3 -0
  340. package/dist/types/src/components/builtin/Text/components/RichTextEditor/plugins/DeviceOverridesBlocks.d.ts.map +1 -0
  341. package/dist/types/src/components/builtin/Text/components/RichTextEditor/plugins/DeviceOverridesMarks.d.ts +3 -0
  342. package/dist/types/src/components/builtin/Text/components/RichTextEditor/plugins/DeviceOverridesMarks.d.ts.map +1 -0
  343. package/dist/types/src/components/builtin/Text/components/RichTextEditor/plugins/Inlines.d.ts +3 -0
  344. package/dist/types/src/components/builtin/Text/components/RichTextEditor/plugins/Inlines.d.ts.map +1 -0
  345. package/dist/types/src/components/builtin/Text/components/RichTextEditor/plugins/Link.d.ts +3 -0
  346. package/dist/types/src/components/builtin/Text/components/RichTextEditor/plugins/Link.d.ts.map +1 -0
  347. package/dist/types/src/components/builtin/Text/index.d.ts +2 -0
  348. package/dist/types/src/components/builtin/Text/index.d.ts.map +1 -0
  349. package/dist/types/src/components/builtin/Text/register.d.ts +3 -0
  350. package/dist/types/src/components/builtin/Text/register.d.ts.map +1 -0
  351. package/dist/types/src/components/builtin/Video/Video.d.ts +12 -0
  352. package/dist/types/src/components/builtin/Video/Video.d.ts.map +1 -0
  353. package/dist/types/src/components/builtin/Video/index.d.ts +2 -0
  354. package/dist/types/src/components/builtin/Video/index.d.ts.map +1 -0
  355. package/dist/types/src/components/builtin/Video/register.d.ts +3 -0
  356. package/dist/types/src/components/builtin/Video/register.d.ts.map +1 -0
  357. package/dist/types/src/components/builtin/constants.d.ts +20 -0
  358. package/dist/types/src/components/builtin/constants.d.ts.map +1 -0
  359. package/dist/types/src/components/builtin/index.d.ts +16 -0
  360. package/dist/types/src/components/builtin/index.d.ts.map +1 -0
  361. package/dist/types/src/components/builtin/register.d.ts +3 -0
  362. package/dist/types/src/components/builtin/register.d.ts.map +1 -0
  363. package/dist/types/src/components/hooks/index.d.ts +8 -0
  364. package/dist/types/src/components/hooks/index.d.ts.map +1 -0
  365. package/dist/types/src/components/hooks/useBackgrounds.d.ts +59 -0
  366. package/dist/types/src/components/hooks/useBackgrounds.d.ts.map +1 -0
  367. package/dist/types/src/components/hooks/useBorder.d.ts +19 -0
  368. package/dist/types/src/components/hooks/useBorder.d.ts.map +1 -0
  369. package/dist/types/src/components/hooks/useBoxShadow.d.ts +19 -0
  370. package/dist/types/src/components/hooks/useBoxShadow.d.ts.map +1 -0
  371. package/dist/types/src/components/hooks/useFile.d.ts +13 -0
  372. package/dist/types/src/components/hooks/useFile.d.ts.map +1 -0
  373. package/dist/types/src/components/hooks/useIsomorphicLayoutEffect.d.ts +3 -0
  374. package/dist/types/src/components/hooks/useIsomorphicLayoutEffect.d.ts.map +1 -0
  375. package/dist/types/{components → src/components}/hooks/useMediaQuery.d.ts +0 -0
  376. package/dist/types/src/components/hooks/useMediaQuery.d.ts.map +1 -0
  377. package/dist/types/src/components/hooks/usePage.d.ts +7 -0
  378. package/dist/types/src/components/hooks/usePage.d.ts.map +1 -0
  379. package/dist/types/src/components/hooks/useResponsiveColor.d.ts +7 -0
  380. package/dist/types/src/components/hooks/useResponsiveColor.d.ts.map +1 -0
  381. package/dist/types/src/components/hooks/useTableFormFieldRefs.d.ts +8 -0
  382. package/dist/types/src/components/hooks/useTableFormFieldRefs.d.ts.map +1 -0
  383. package/dist/types/src/components/hooks/useTypography.d.ts +24 -0
  384. package/dist/types/src/components/hooks/useTypography.d.ts.map +1 -0
  385. package/dist/types/src/components/index.d.ts +5 -0
  386. package/dist/types/src/components/index.d.ts.map +1 -0
  387. package/dist/types/src/components/page/BodySnippet.d.ts +7 -0
  388. package/dist/types/src/components/page/BodySnippet.d.ts.map +1 -0
  389. package/dist/types/src/components/page/Page.d.ts +28 -0
  390. package/dist/types/src/components/page/Page.d.ts.map +1 -0
  391. package/dist/types/src/components/page/index.d.ts +2 -0
  392. package/dist/types/src/components/page/index.d.ts.map +1 -0
  393. package/dist/types/src/components/shared/BackgroundsContainer/components/BackgroundVideo/index.d.ts +11 -0
  394. package/dist/types/src/components/shared/BackgroundsContainer/components/BackgroundVideo/index.d.ts.map +1 -0
  395. package/dist/types/src/components/shared/BackgroundsContainer/components/Backgrounds/index.d.ts +8 -0
  396. package/dist/types/src/components/shared/BackgroundsContainer/components/Backgrounds/index.d.ts.map +1 -0
  397. package/dist/types/src/components/shared/BackgroundsContainer/components/Parallax/index.d.ts +11 -0
  398. package/dist/types/src/components/shared/BackgroundsContainer/components/Parallax/index.d.ts.map +1 -0
  399. package/dist/types/src/components/shared/BackgroundsContainer/index.d.ts +11 -0
  400. package/dist/types/src/components/shared/BackgroundsContainer/index.d.ts.map +1 -0
  401. package/dist/types/src/components/shared/FallbackComponent/FallbackComponent.d.ts +7 -0
  402. package/dist/types/src/components/shared/FallbackComponent/FallbackComponent.d.ts.map +1 -0
  403. package/dist/types/src/components/shared/FallbackComponent/index.d.ts +2 -0
  404. package/dist/types/src/components/shared/FallbackComponent/index.d.ts.map +1 -0
  405. package/dist/types/src/components/shared/GutterContainer/index.d.ts +8 -0
  406. package/dist/types/src/components/shared/GutterContainer/index.d.ts.map +1 -0
  407. package/dist/types/src/components/shared/Link/index.d.ts +9 -0
  408. package/dist/types/src/components/shared/Link/index.d.ts.map +1 -0
  409. package/dist/types/src/components/utils/colorToString.d.ts +3 -0
  410. package/dist/types/src/components/utils/colorToString.d.ts.map +1 -0
  411. package/dist/types/{components → src/components}/utils/columns.d.ts +0 -0
  412. package/dist/types/src/components/utils/columns.d.ts.map +1 -0
  413. package/dist/types/{components → src/components}/utils/cssMediaRules.d.ts +23 -1
  414. package/dist/types/src/components/utils/cssMediaRules.d.ts.map +1 -0
  415. package/dist/types/{components → src/components}/utils/devices.d.ts +1 -0
  416. package/dist/types/src/components/utils/devices.d.ts.map +1 -0
  417. package/dist/types/src/components/utils/isNonNullable.d.ts +2 -0
  418. package/dist/types/src/components/utils/isNonNullable.d.ts.map +1 -0
  419. package/dist/types/src/components/utils/placeholders.d.ts +17 -0
  420. package/dist/types/src/components/utils/placeholders.d.ts.map +1 -0
  421. package/dist/types/src/components/utils/queries.d.ts +10 -0
  422. package/dist/types/src/components/utils/queries.d.ts.map +1 -0
  423. package/dist/types/src/components/utils/responsive-style.d.ts +9 -0
  424. package/dist/types/src/components/utils/responsive-style.d.ts.map +1 -0
  425. package/dist/types/src/components/utils/types.d.ts +10 -0
  426. package/dist/types/src/components/utils/types.d.ts.map +1 -0
  427. package/dist/types/src/controls/checkbox.d.ts +13 -0
  428. package/dist/types/src/controls/checkbox.d.ts.map +1 -0
  429. package/dist/types/src/controls/color.d.ts +16 -0
  430. package/dist/types/src/controls/color.d.ts.map +1 -0
  431. package/dist/types/src/controls/combobox.d.ts +22 -0
  432. package/dist/types/src/controls/combobox.d.ts.map +1 -0
  433. package/dist/types/src/controls/control.d.ts +14 -0
  434. package/dist/types/src/controls/control.d.ts.map +1 -0
  435. package/dist/types/src/controls/image.d.ts +24 -0
  436. package/dist/types/src/controls/image.d.ts.map +1 -0
  437. package/dist/types/src/controls/index.d.ts +15 -0
  438. package/dist/types/src/controls/index.d.ts.map +1 -0
  439. package/dist/types/src/controls/link.d.ts +50 -0
  440. package/dist/types/src/controls/link.d.ts.map +1 -0
  441. package/dist/types/src/controls/list.d.ts +26 -0
  442. package/dist/types/src/controls/list.d.ts.map +1 -0
  443. package/dist/types/src/controls/number.d.ts +18 -0
  444. package/dist/types/src/controls/number.d.ts.map +1 -0
  445. package/dist/types/src/controls/select.d.ts +22 -0
  446. package/dist/types/src/controls/select.d.ts.map +1 -0
  447. package/dist/types/src/controls/shape.d.ts +15 -0
  448. package/dist/types/src/controls/shape.d.ts.map +1 -0
  449. package/dist/types/src/controls/slot.d.ts +42 -0
  450. package/dist/types/src/controls/slot.d.ts.map +1 -0
  451. package/dist/types/src/controls/style.d.ts +206 -0
  452. package/dist/types/src/controls/style.d.ts.map +1 -0
  453. package/dist/types/src/controls/text-area.d.ts +14 -0
  454. package/dist/types/src/controls/text-area.d.ts.map +1 -0
  455. package/dist/types/src/controls/text-input.d.ts +13 -0
  456. package/dist/types/src/controls/text-input.d.ts.map +1 -0
  457. package/dist/types/src/controls/types.d.ts +14 -0
  458. package/dist/types/src/controls/types.d.ts.map +1 -0
  459. package/dist/types/{index.d.ts → src/index.d.ts} +3 -1
  460. package/dist/types/src/index.d.ts.map +1 -0
  461. package/dist/types/src/next/api-handler.d.ts +31 -0
  462. package/dist/types/src/next/api-handler.d.ts.map +1 -0
  463. package/dist/types/src/next/client.d.ts +68 -0
  464. package/dist/types/src/next/client.d.ts.map +1 -0
  465. package/dist/types/src/next/document.d.ts +7 -0
  466. package/dist/types/src/next/document.d.ts.map +1 -0
  467. package/dist/types/src/next/dynamic.d.ts +13 -0
  468. package/dist/types/src/next/dynamic.d.ts.map +1 -0
  469. package/dist/types/src/next/index.d.ts +24 -0
  470. package/dist/types/src/next/index.d.ts.map +1 -0
  471. package/dist/types/src/next/preview-mode.d.ts +11 -0
  472. package/dist/types/src/next/preview-mode.d.ts.map +1 -0
  473. package/dist/types/{prop-controllers → src/prop-controllers}/descriptors.d.ts +132 -45
  474. package/dist/types/src/prop-controllers/descriptors.d.ts.map +1 -0
  475. package/dist/types/src/prop-controllers/index.d.ts +5 -0
  476. package/dist/types/src/prop-controllers/index.d.ts.map +1 -0
  477. package/dist/types/src/prop-controllers/instances.d.ts +102 -0
  478. package/dist/types/src/prop-controllers/instances.d.ts.map +1 -0
  479. package/dist/types/src/prop-controllers/introspection.d.ts +10 -0
  480. package/dist/types/src/prop-controllers/introspection.d.ts.map +1 -0
  481. package/dist/types/src/react.d.ts +4 -0
  482. package/dist/types/src/react.d.ts.map +1 -0
  483. package/dist/types/src/runtimes/react/components/index.d.ts +2 -0
  484. package/dist/types/src/runtimes/react/components/index.d.ts.map +1 -0
  485. package/dist/types/src/runtimes/react/components/render-hook.d.ts +14 -0
  486. package/dist/types/src/runtimes/react/components/render-hook.d.ts.map +1 -0
  487. package/dist/types/src/runtimes/react/controls/checkbox.d.ts +4 -0
  488. package/dist/types/src/runtimes/react/controls/checkbox.d.ts.map +1 -0
  489. package/dist/types/src/runtimes/react/controls/color.d.ts +4 -0
  490. package/dist/types/src/runtimes/react/controls/color.d.ts.map +1 -0
  491. package/dist/types/src/runtimes/react/controls/combobox.d.ts +4 -0
  492. package/dist/types/src/runtimes/react/controls/combobox.d.ts.map +1 -0
  493. package/dist/types/src/runtimes/react/controls/control.d.ts +22 -0
  494. package/dist/types/src/runtimes/react/controls/control.d.ts.map +1 -0
  495. package/dist/types/src/runtimes/react/controls/image.d.ts +13 -0
  496. package/dist/types/src/runtimes/react/controls/image.d.ts.map +1 -0
  497. package/dist/types/src/runtimes/react/controls/link.d.ts +11 -0
  498. package/dist/types/src/runtimes/react/controls/link.d.ts.map +1 -0
  499. package/dist/types/src/runtimes/react/controls/list.d.ts +13 -0
  500. package/dist/types/src/runtimes/react/controls/list.d.ts.map +1 -0
  501. package/dist/types/src/runtimes/react/controls/number.d.ts +4 -0
  502. package/dist/types/src/runtimes/react/controls/number.d.ts.map +1 -0
  503. package/dist/types/src/runtimes/react/controls/select.d.ts +4 -0
  504. package/dist/types/src/runtimes/react/controls/select.d.ts.map +1 -0
  505. package/dist/types/src/runtimes/react/controls/shape.d.ts +14 -0
  506. package/dist/types/src/runtimes/react/controls/shape.d.ts.map +1 -0
  507. package/dist/types/src/runtimes/react/controls/slot.d.ts +30 -0
  508. package/dist/types/src/runtimes/react/controls/slot.d.ts.map +1 -0
  509. package/dist/types/src/runtimes/react/controls/style.d.ts +4 -0
  510. package/dist/types/src/runtimes/react/controls/style.d.ts.map +1 -0
  511. package/dist/types/src/runtimes/react/controls/text-area.d.ts +4 -0
  512. package/dist/types/src/runtimes/react/controls/text-area.d.ts.map +1 -0
  513. package/dist/types/src/runtimes/react/controls/text-input.d.ts +4 -0
  514. package/dist/types/src/runtimes/react/controls/text-input.d.ts.map +1 -0
  515. package/dist/types/src/runtimes/react/controls.d.ts +13 -0
  516. package/dist/types/src/runtimes/react/controls.d.ts.map +1 -0
  517. package/dist/types/src/runtimes/react/find-dom-node.d.ts +7 -0
  518. package/dist/types/src/runtimes/react/find-dom-node.d.ts.map +1 -0
  519. package/dist/types/src/runtimes/react/index.d.ts +48 -0
  520. package/dist/types/src/runtimes/react/index.d.ts.map +1 -0
  521. package/dist/types/src/runtimes/react/use-style.d.ts +3 -0
  522. package/dist/types/src/runtimes/react/use-style.d.ts.map +1 -0
  523. package/dist/types/src/state/actions.d.ts +291 -0
  524. package/dist/types/src/state/actions.d.ts.map +1 -0
  525. package/dist/types/{state → src/state}/modules/box-models.d.ts +5 -5
  526. package/dist/types/src/state/modules/box-models.d.ts.map +1 -0
  527. package/dist/types/{state → src/state}/modules/components-meta.d.ts +0 -0
  528. package/dist/types/src/state/modules/components-meta.d.ts.map +1 -0
  529. package/dist/types/src/state/modules/is-in-builder.d.ts +6 -0
  530. package/dist/types/src/state/modules/is-in-builder.d.ts.map +1 -0
  531. package/dist/types/src/state/modules/prop-controller-handles.d.ts +17 -0
  532. package/dist/types/src/state/modules/prop-controller-handles.d.ts.map +1 -0
  533. package/dist/types/{state → src/state}/modules/prop-controllers.d.ts +1 -0
  534. package/dist/types/src/state/modules/prop-controllers.d.ts.map +1 -0
  535. package/dist/types/{state → src/state}/modules/react-components.d.ts +4 -2
  536. package/dist/types/src/state/modules/react-components.d.ts.map +1 -0
  537. package/dist/types/{state → src/state}/modules/read-only-documents.d.ts +8 -4
  538. package/dist/types/src/state/modules/read-only-documents.d.ts.map +1 -0
  539. package/dist/types/{state → src/state}/modules/read-write-documents.d.ts +1 -1
  540. package/dist/types/src/state/modules/read-write-documents.d.ts.map +1 -0
  541. package/dist/types/{state → src/state}/react-builder-preview.d.ts +16 -11
  542. package/dist/types/src/state/react-builder-preview.d.ts.map +1 -0
  543. package/dist/types/src/state/react-page.d.ts +38 -0
  544. package/dist/types/src/state/react-page.d.ts.map +1 -0
  545. package/dist/types/src/utils/clamp.d.ts +3 -0
  546. package/dist/types/src/utils/clamp.d.ts.map +1 -0
  547. package/dist/types/src/utils/coalesce.d.ts +3 -0
  548. package/dist/types/src/utils/coalesce.d.ts.map +1 -0
  549. package/dist/types/src/utils/constants.d.ts +6 -0
  550. package/dist/types/src/utils/constants.d.ts.map +1 -0
  551. package/dist/types/{utils → src/utils}/deepEqual.d.ts +0 -0
  552. package/dist/types/src/utils/deepEqual.d.ts.map +1 -0
  553. package/dist/types/src/utils/intersection.d.ts +4 -0
  554. package/dist/types/src/utils/intersection.d.ts.map +1 -0
  555. package/dist/types/{utils → src/utils}/is.d.ts +0 -0
  556. package/dist/types/src/utils/is.d.ts.map +1 -0
  557. package/dist/types/src/utils/keys.d.ts +5 -0
  558. package/dist/types/src/utils/keys.d.ts.map +1 -0
  559. package/dist/types/{utils → src/utils}/shallowEqual.d.ts +0 -0
  560. package/dist/types/src/utils/shallowEqual.d.ts.map +1 -0
  561. package/dist/types/src/utils/shallowMerge.d.ts +2 -0
  562. package/dist/types/src/utils/shallowMerge.d.ts.map +1 -0
  563. package/dist/useBoxShadow.cjs.js +78 -0
  564. package/dist/useBoxShadow.cjs.js.map +1 -0
  565. package/dist/useBoxShadow.es.js +77 -0
  566. package/dist/useBoxShadow.es.js.map +1 -0
  567. package/dist/useMediaQuery.cjs.js +26 -0
  568. package/dist/useMediaQuery.cjs.js.map +1 -0
  569. package/dist/useMediaQuery.es.js +25 -0
  570. package/dist/useMediaQuery.es.js.map +1 -0
  571. package/next/plugin.js +1 -0
  572. package/next.js +1 -0
  573. package/package.json +105 -24
  574. package/prop-controllers.js +1 -0
  575. package/react.js +1 -0
  576. package/dist/react.cjs2.js +0 -835
  577. package/dist/react.cjs2.js.map +0 -1
  578. package/dist/react.es2.js +0 -810
  579. package/dist/react.es2.js.map +0 -1
  580. package/dist/types/box-model.d.ts +0 -3
  581. package/dist/types/box-model.d.ts.map +0 -1
  582. package/dist/types/components/Box/Box.d.ts.map +0 -1
  583. package/dist/types/components/Box/animations.d.ts.map +0 -1
  584. package/dist/types/components/Box/components/Placeholder/index.d.ts.map +0 -1
  585. package/dist/types/components/Box/index.d.ts.map +0 -1
  586. package/dist/types/components/Root/Root.d.ts +0 -11
  587. package/dist/types/components/Root/Root.d.ts.map +0 -1
  588. package/dist/types/components/Root/components/Placeholder/index.d.ts.map +0 -1
  589. package/dist/types/components/Root/index.d.ts.map +0 -1
  590. package/dist/types/components/hooks/index.d.ts +0 -2
  591. package/dist/types/components/hooks/index.d.ts.map +0 -1
  592. package/dist/types/components/hooks/useMediaQuery.d.ts.map +0 -1
  593. package/dist/types/components/index.d.ts +0 -4
  594. package/dist/types/components/index.d.ts.map +0 -1
  595. package/dist/types/components/utils/columns.d.ts.map +0 -1
  596. package/dist/types/components/utils/cssMediaRules.d.ts.map +0 -1
  597. package/dist/types/components/utils/devices.d.ts.map +0 -1
  598. package/dist/types/index.d.ts.map +0 -1
  599. package/dist/types/prop-controllers/descriptors.d.ts.map +0 -1
  600. package/dist/types/prop-controllers/index.d.ts +0 -3
  601. package/dist/types/prop-controllers/index.d.ts.map +0 -1
  602. package/dist/types/react.d.ts +0 -4
  603. package/dist/types/react.d.ts.map +0 -1
  604. package/dist/types/runtimes/react.d.ts +0 -28
  605. package/dist/types/runtimes/react.d.ts.map +0 -1
  606. package/dist/types/state/actions.d.ts +0 -124
  607. package/dist/types/state/actions.d.ts.map +0 -1
  608. package/dist/types/state/modules/box-models.d.ts.map +0 -1
  609. package/dist/types/state/modules/components-meta.d.ts.map +0 -1
  610. package/dist/types/state/modules/prop-controllers.d.ts.map +0 -1
  611. package/dist/types/state/modules/react-components.d.ts.map +0 -1
  612. package/dist/types/state/modules/read-only-documents.d.ts.map +0 -1
  613. package/dist/types/state/modules/read-write-documents.d.ts.map +0 -1
  614. package/dist/types/state/react-builder-preview.d.ts.map +0 -1
  615. package/dist/types/state/react-page.d.ts +0 -28
  616. package/dist/types/state/react-page.d.ts.map +0 -1
  617. package/dist/types/utils/deepEqual.d.ts.map +0 -1
  618. package/dist/types/utils/is.d.ts.map +0 -1
  619. package/dist/types/utils/shallowEqual.d.ts.map +0 -1
@@ -0,0 +1,1704 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __defProps = Object.defineProperties;
3
+ var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
4
+ var __getOwnPropSymbols = Object.getOwnPropertySymbols;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __propIsEnum = Object.prototype.propertyIsEnumerable;
7
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
8
+ var __spreadValues = (a, b) => {
9
+ for (var prop in b || (b = {}))
10
+ if (__hasOwnProp.call(b, prop))
11
+ __defNormalProp(a, prop, b[prop]);
12
+ if (__getOwnPropSymbols)
13
+ for (var prop of __getOwnPropSymbols(b)) {
14
+ if (__propIsEnum.call(b, prop))
15
+ __defNormalProp(a, prop, b[prop]);
16
+ }
17
+ return a;
18
+ };
19
+ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
20
+ var __objRest = (source, exclude) => {
21
+ var target = {};
22
+ for (var prop in source)
23
+ if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)
24
+ target[prop] = source[prop];
25
+ if (source != null && __getOwnPropSymbols)
26
+ for (var prop of __getOwnPropSymbols(source)) {
27
+ if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))
28
+ target[prop] = source[prop];
29
+ }
30
+ return target;
31
+ };
32
+ import * as React from "react";
33
+ import { forwardRef, useRef, useImperativeHandle, useState, useEffect, useMemo } from "react";
34
+ import styled, { css, keyframes } from "styled-components";
35
+ import { Field as Field$1, getIn, Formik } from "formik";
36
+ import { c as cssMediaRules, a as cssWidth, b as cssMargin, i as cssTextStyle, h as cssGridItem } from "./cssMediaRules.es.js";
37
+ import { r as Shapes, s as Sizes, C as Contrasts, p as colorToString, t as useFormContext, u as useIsInBuilder, v as useQuery, T as TABLE_BY_ID, w as useMutation, x as Provider, A as Alignments } from "./index.es.js";
38
+ import { jsx, jsxs, Fragment } from "react/jsx-runtime";
39
+ import ColorHelper from "color";
40
+ import Button$1 from "./Button.es.js";
41
+ import { L as Link } from "./index.es3.js";
42
+ import { g as getBox } from "./box-models.es.js";
43
+ import { gql } from "@apollo/client";
44
+ import "use-sync-external-store/shim/with-selector";
45
+ import "./react-page.es.js";
46
+ import "redux";
47
+ import "redux-thunk";
48
+ import "./actions.es.js";
49
+ import "./image.es.js";
50
+ import "./color.es.js";
51
+ import "./slot.es.js";
52
+ import "next/dynamic";
53
+ import "@apollo/client/link/batch-http";
54
+ import "slate";
55
+ import "./graphql.es.js";
56
+ import "./shape.es.js";
57
+ import "./text-input.es.js";
58
+ import "@emotion/css";
59
+ import "scroll-into-view-if-needed";
60
+ import "react-dom";
61
+ import "html-react-parser";
62
+ import "next/head";
63
+ import "@emotion/server/create-instance";
64
+ import "next/document";
65
+ import "cookie";
66
+ import "cors";
67
+ import "http-proxy";
68
+ import "set-cookie-parser";
69
+ import "uuid/v4";
70
+ import "corporate-ipsum";
71
+ import "css-box-model";
72
+ import "next/link";
73
+ var _path;
74
+ function _extends$1() {
75
+ _extends$1 = Object.assign || function(target) {
76
+ for (var i = 1; i < arguments.length; i++) {
77
+ var source = arguments[i];
78
+ for (var key in source) {
79
+ if (Object.prototype.hasOwnProperty.call(source, key)) {
80
+ target[key] = source[key];
81
+ }
82
+ }
83
+ }
84
+ return target;
85
+ };
86
+ return _extends$1.apply(this, arguments);
87
+ }
88
+ var SvgCheck12 = function SvgCheck122(props) {
89
+ return /* @__PURE__ */ React.createElement("svg", _extends$1({
90
+ width: 12,
91
+ height: 12,
92
+ viewBox: "0 0 12 12",
93
+ xmlns: "http://www.w3.org/2000/svg"
94
+ }, props), _path || (_path = /* @__PURE__ */ React.createElement("path", {
95
+ fillRule: "evenodd",
96
+ clipRule: "evenodd",
97
+ d: "M11.7071 1.79289C12.0976 2.18342 12.0976 2.81658 11.7071 3.20711L4.70711 10.2071C4.31658 10.5976 3.68342 10.5976 3.29289 10.2071L0.292893 7.20711C-0.0976311 6.81658 -0.0976311 6.18342 0.292893 5.79289C0.683417 5.40237 1.31658 5.40237 1.70711 5.79289L4 8.08579L10.2929 1.79289C10.6834 1.40237 11.3166 1.40237 11.7071 1.79289Z"
98
+ })));
99
+ };
100
+ function getSizeHeight$2(size) {
101
+ switch (size) {
102
+ case Sizes.SMALL:
103
+ return 30;
104
+ case Sizes.MEDIUM:
105
+ return 38;
106
+ case Sizes.LARGE:
107
+ return 48;
108
+ default:
109
+ throw new Error(`Invalid form size "${size}"`);
110
+ }
111
+ }
112
+ function getSizeHorizontalPadding(size) {
113
+ switch (size) {
114
+ case Sizes.SMALL:
115
+ return 8;
116
+ case Sizes.MEDIUM:
117
+ return 12;
118
+ case Sizes.LARGE:
119
+ return 16;
120
+ default:
121
+ throw new Error(`Invalid form size "${size}"`);
122
+ }
123
+ }
124
+ function getSizeVerticalPadding(size) {
125
+ switch (size) {
126
+ case Sizes.SMALL:
127
+ return 3;
128
+ case Sizes.MEDIUM:
129
+ return 7;
130
+ case Sizes.LARGE:
131
+ return 11;
132
+ default:
133
+ throw new Error(`Invalid form size "${size}"`);
134
+ }
135
+ }
136
+ function getShapeBorderRadius(shape) {
137
+ switch (shape) {
138
+ case Shapes.SQUARE:
139
+ return 0;
140
+ case Shapes.ROUNDED:
141
+ return 4;
142
+ case Shapes.PILL:
143
+ return 500;
144
+ default:
145
+ throw new Error(`Invalid form shape "${shape}"`);
146
+ }
147
+ }
148
+ function getContrastBorderColor(contrast, error) {
149
+ switch (contrast) {
150
+ case Contrasts.LIGHT:
151
+ return error ? "rgba(255, 0, 0, 0.7)" : "rgba(0, 0, 0, 0.25)";
152
+ case Contrasts.DARK:
153
+ return error ? "rgba(255, 0, 0, 0.7)" : "rgba(255, 255, 255, 0.6)";
154
+ default:
155
+ throw new Error(`Invalid form contrast "${contrast}"`);
156
+ }
157
+ }
158
+ function getContrastBackgroundColor(contrast) {
159
+ switch (contrast) {
160
+ case Contrasts.LIGHT:
161
+ return "white";
162
+ case Contrasts.DARK:
163
+ return "rgba(0, 0, 0, 0.7)";
164
+ default:
165
+ throw new Error(`Invalid form contrast "${contrast}"`);
166
+ }
167
+ }
168
+ function getContrastColor$1(contrast) {
169
+ switch (contrast) {
170
+ case Contrasts.LIGHT:
171
+ return "rgba(0, 0, 0, 0.95)";
172
+ case Contrasts.DARK:
173
+ return "white";
174
+ default:
175
+ throw new Error(`Invalid form contrast "${contrast}"`);
176
+ }
177
+ }
178
+ function getContrastPlaceholderColor(contrast) {
179
+ switch (contrast) {
180
+ case Contrasts.LIGHT:
181
+ return "rgba(0, 0, 0, 0.3)";
182
+ case Contrasts.DARK:
183
+ return "rgba(255,255,255,0.3)";
184
+ default:
185
+ throw new Error(`Invalid form contrast "${contrast}"`);
186
+ }
187
+ }
188
+ function cssField() {
189
+ return css`
190
+ display: block;
191
+ width: 100%;
192
+ outline: none;
193
+ border-width: 1px;
194
+ border-style: solid;
195
+ transition: border-color 200ms;
196
+ ${(props) => cssMediaRules([props.shape, props.size, props.contrast, props.brandColor], ([
197
+ shape = Shapes.ROUNDED,
198
+ size = Sizes.MEDIUM,
199
+ contrast = Contrasts.LIGHT,
200
+ brandColor = { swatch: { hue: 0, saturation: 0, lightness: 0 }, alpha: 1 }
201
+ ]) => css`
202
+ padding: ${getSizeVerticalPadding(size)}px ${getSizeHorizontalPadding(size)}px;
203
+ border-radius: ${getShapeBorderRadius(shape)}px;
204
+ border-color: ${getContrastBorderColor(contrast, props.error)};
205
+ color: ${getContrastColor$1(contrast)};
206
+ background-color: ${getContrastBackgroundColor(contrast)};
207
+
208
+ :focus,
209
+ :focus-within {
210
+ border-color: ${colorToString(brandColor)};
211
+ }
212
+
213
+ ::placeholder {
214
+ color: ${getContrastPlaceholderColor(contrast)};
215
+ }
216
+ `)}
217
+ `;
218
+ }
219
+ function getSizeHeight$1(size) {
220
+ switch (size) {
221
+ case Sizes.SMALL:
222
+ return 36;
223
+ case Sizes.MEDIUM:
224
+ return 42;
225
+ case Sizes.LARGE:
226
+ return 48;
227
+ default:
228
+ throw new Error(`Invalid form size "${size}"`);
229
+ }
230
+ }
231
+ const Base$2 = styled.input.withConfig({
232
+ shouldForwardProp: (prop, defaultValidator) => !["shape", "size", "contrast", "brandColor", "error"].includes(prop.toString()) && defaultValidator(prop)
233
+ })`
234
+ ${cssField()}
235
+ ${(props) => cssMediaRules([props.size], ([size = Sizes.MEDIUM]) => css`
236
+ min-height: ${getSizeHeight$1(size)}px;
237
+ max-height: ${getSizeHeight$1(size)}px;
238
+ `)}
239
+ `;
240
+ var Input$2 = forwardRef(function Input(_a, ref) {
241
+ var _b = _a, {
242
+ error = false,
243
+ form
244
+ } = _b, restOfProps = __objRest(_b, [
245
+ "error",
246
+ "form"
247
+ ]);
248
+ const {
249
+ shape,
250
+ size,
251
+ contrast,
252
+ brandColor
253
+ } = useFormContext();
254
+ return /* @__PURE__ */ jsx(Base$2, __spreadProps(__spreadValues({}, restOfProps), {
255
+ ref,
256
+ error,
257
+ shape,
258
+ size,
259
+ contrast,
260
+ brandColor
261
+ }));
262
+ });
263
+ const Container$3 = styled.div.withConfig({
264
+ shouldForwardProp: (prop) => !["width", "margin"].includes(prop.toString())
265
+ })`
266
+ display: flex;
267
+ flex-direction: column;
268
+ ${cssWidth()};
269
+ ${cssMargin()};
270
+ `;
271
+ const Label$2 = styled.div`
272
+ max-width: 120px;
273
+ min-width: 60px;
274
+ height: 8px;
275
+ border-radius: 2px;
276
+ background-color: #a1a8c2;
277
+ opacity: 0.4;
278
+ margin-bottom: 8px;
279
+ `;
280
+ const Input$1 = styled.div`
281
+ min-width: 80px;
282
+ height: 32px;
283
+ border-radius: 4px;
284
+ border-width: 2px;
285
+ border-style: solid;
286
+ border-color: #a1a8c2;
287
+ opacity: 0.4;
288
+ `;
289
+ const Button = styled.div`
290
+ min-width: 140px;
291
+ height: 32px;
292
+ border-radius: 4px;
293
+ background-color: #a1a8c2;
294
+ opacity: 0.4;
295
+ `;
296
+ var Placeholder = forwardRef(function Placeholder2({
297
+ className,
298
+ width,
299
+ margin
300
+ }, ref) {
301
+ return /* @__PURE__ */ jsxs(Container$3, {
302
+ ref,
303
+ className,
304
+ width,
305
+ margin,
306
+ children: [/* @__PURE__ */ jsxs("div", {
307
+ style: {
308
+ display: "flex",
309
+ flexDirection: "column",
310
+ marginBottom: 16
311
+ },
312
+ children: [/* @__PURE__ */ jsx(Label$2, {}), /* @__PURE__ */ jsx(Input$1, {})]
313
+ }), /* @__PURE__ */ jsxs("div", {
314
+ style: {
315
+ display: "flex",
316
+ flexDirection: "column",
317
+ marginBottom: 16
318
+ },
319
+ children: [/* @__PURE__ */ jsx(Label$2, {}), /* @__PURE__ */ jsx(Input$1, {})]
320
+ }), /* @__PURE__ */ jsx("div", {
321
+ style: {
322
+ display: "flex",
323
+ flexDirection: "column",
324
+ justifyContent: "flex-end"
325
+ },
326
+ children: /* @__PURE__ */ jsx(Button, {})
327
+ })]
328
+ });
329
+ });
330
+ function getSizeHeight(size) {
331
+ switch (size) {
332
+ case Sizes.SMALL:
333
+ return 14;
334
+ case Sizes.MEDIUM:
335
+ return 18;
336
+ case Sizes.LARGE:
337
+ return 22;
338
+ default:
339
+ throw new Error(`Invalid form size "${size}"`);
340
+ }
341
+ }
342
+ function getContrastColor(contrast) {
343
+ switch (contrast) {
344
+ case Contrasts.LIGHT:
345
+ return "rgba(0, 0, 0, 0.8)";
346
+ case Contrasts.DARK:
347
+ return "rgba(255, 255, 255, 0.95)";
348
+ default:
349
+ throw new Error(`Invalid form contrast "${contrast}"`);
350
+ }
351
+ }
352
+ const Base$1 = styled.label.withConfig({
353
+ shouldForwardProp: (prop, defaultValidator) => !["contrast", "size", "textStyle", "textColor"].includes(prop.toString()) && defaultValidator(prop)
354
+ })`
355
+ display: block;
356
+ margin: 0 0 0.25em 0;
357
+ ${cssTextStyle()}
358
+ ${(props) => cssMediaRules([props.size, props.contrast, props.textColor], ([size = Sizes.MEDIUM, contrast = Contrasts.LIGHT, textColor]) => css`
359
+ min-height: ${getSizeHeight(size)}px;
360
+ color: ${textColor == null ? getContrastColor(contrast) : colorToString(textColor)};
361
+ `)}
362
+ `;
363
+ function Label$1(props) {
364
+ const {
365
+ contrast,
366
+ size,
367
+ labelTextStyle,
368
+ labelTextColor
369
+ } = useFormContext();
370
+ return /* @__PURE__ */ jsx(Base$1, __spreadProps(__spreadValues({}, props), {
371
+ contrast,
372
+ size,
373
+ textStyle: labelTextStyle,
374
+ textColor: labelTextColor
375
+ }));
376
+ }
377
+ var SingleLineTextTableField = forwardRef(function SingleLineTextTableField2(_c, ref) {
378
+ var _d = _c, {
379
+ id,
380
+ label = "",
381
+ name,
382
+ error,
383
+ hideLabel = false
384
+ } = _d, restOfProps = __objRest(_d, [
385
+ "id",
386
+ "label",
387
+ "name",
388
+ "error",
389
+ "hideLabel"
390
+ ]);
391
+ return /* @__PURE__ */ jsxs(Fragment, {
392
+ children: [!hideLabel && /* @__PURE__ */ jsx(Label$1, {
393
+ htmlFor: id,
394
+ children: label
395
+ }), /* @__PURE__ */ jsx(Input$2, __spreadProps(__spreadValues({}, restOfProps), {
396
+ "aria-label": label,
397
+ ref,
398
+ id,
399
+ name,
400
+ type: "text",
401
+ error: error != null
402
+ }))]
403
+ });
404
+ });
405
+ const Base = styled.textarea.withConfig({
406
+ shouldForwardProp: (prop, defaultValidator) => !["error", "shape", "size", "contrast", "brandColor"].includes(prop.toString()) && defaultValidator(prop)
407
+ })`
408
+ resize: vertical;
409
+ ${cssField()}
410
+ `;
411
+ var TextArea = forwardRef(function TextArea2(_e, ref) {
412
+ var _f = _e, {
413
+ error = false,
414
+ form
415
+ } = _f, restOfProps = __objRest(_f, [
416
+ "error",
417
+ "form"
418
+ ]);
419
+ const {
420
+ shape,
421
+ size,
422
+ contrast,
423
+ brandColor
424
+ } = useFormContext();
425
+ return /* @__PURE__ */ jsx(Base, __spreadProps(__spreadValues({}, restOfProps), {
426
+ ref,
427
+ rows: 4,
428
+ error,
429
+ shape,
430
+ size,
431
+ contrast,
432
+ brandColor
433
+ }));
434
+ });
435
+ var LongTextTableField = forwardRef(function LongTextTableField2(_g2, ref) {
436
+ var _h = _g2, {
437
+ id,
438
+ label = "",
439
+ error,
440
+ hideLabel = false
441
+ } = _h, restOfProps = __objRest(_h, [
442
+ "id",
443
+ "label",
444
+ "error",
445
+ "hideLabel"
446
+ ]);
447
+ return /* @__PURE__ */ jsxs(Fragment, {
448
+ children: [!hideLabel && /* @__PURE__ */ jsx(Label$1, {
449
+ htmlFor: id,
450
+ children: label
451
+ }), /* @__PURE__ */ jsx(TextArea, __spreadProps(__spreadValues({}, restOfProps), {
452
+ "aria-label": label,
453
+ ref,
454
+ id,
455
+ error: error != null
456
+ }))]
457
+ });
458
+ });
459
+ function getCheckmarkColor$1({
460
+ swatch: {
461
+ hue: h,
462
+ saturation: s,
463
+ lightness: l
464
+ },
465
+ alpha: a
466
+ }) {
467
+ return ColorHelper({
468
+ h,
469
+ s,
470
+ l
471
+ }).alpha(a).isLight() ? "rgba(0, 0, 0, 0.7)" : "rgba(255, 255, 255, 0.95)";
472
+ }
473
+ const Container$2 = styled.div.withConfig({
474
+ shouldForwardProp: (prop) => !["size"].includes(prop)
475
+ })`
476
+ position: relative;
477
+ ${(props) => cssMediaRules([props.size], ([size = Sizes.MEDIUM]) => css`
478
+ height: ${getSizeHeight(size)}px;
479
+ width: ${getSizeHeight(size)}px;
480
+ `)}
481
+ `;
482
+ const FakeCheckbox = styled.div.withConfig({
483
+ shouldForwardProp: (prop) => !["contrast", "error"].includes(prop)
484
+ })`
485
+ position: absolute;
486
+ width: 100%;
487
+ height: 100%;
488
+ border-style: solid;
489
+ border-radius: 4px;
490
+ pointer-events: none;
491
+ border-width: 1px;
492
+ ${(props) => cssMediaRules([props.contrast], ([contrast = Contrasts.LIGHT]) => css`
493
+ border-color: ${getContrastBorderColor(contrast, props.error)};
494
+ background-color: ${getContrastBackgroundColor(contrast)};
495
+ `)}
496
+ `;
497
+ const HiddenCheckbox = styled.input.withConfig({
498
+ shouldForwardProp: (prop, defaultValidator) => !["size", "brandColor", "contrast", "error"].includes(prop) && defaultValidator(prop)
499
+ })`
500
+ position: absolute;
501
+ opacity: 0;
502
+ width: 100%;
503
+ height: 100%;
504
+ cursor: pointer;
505
+
506
+ &:disabled {
507
+ cursor: no-drop;
508
+
509
+ & ~ ${FakeCheckbox} {
510
+ opacity: 0.5;
511
+ }
512
+ }
513
+
514
+ &:checked ~ ${FakeCheckbox} {
515
+ ${(props) => cssMediaRules([props.brandColor], ([{
516
+ swatch = {
517
+ hue: 0,
518
+ saturation: 0,
519
+ lightness: 0
520
+ },
521
+ alpha = 1
522
+ } = {}]) => css`
523
+ background-color: ${colorToString({
524
+ swatch,
525
+ alpha
526
+ })};
527
+ `)}
528
+ border-color: transparent;
529
+
530
+ &::after {
531
+ content: '';
532
+ position: absolute;
533
+ box-sizing: content-box;
534
+ width: 25%;
535
+ height: 50%;
536
+ ${(props) => cssMediaRules([props.size], ([size = Sizes.MEDIUM]) => css`
537
+ border-width: ${getSizeHeight(size) * 0.1}px;
538
+ border-left: 0;
539
+ border-top: 0;
540
+ `)}
541
+ border-style: solid;
542
+ ${(props) => cssMediaRules([props.brandColor], ([{
543
+ swatch = {
544
+ hue: 0,
545
+ saturation: 0,
546
+ lightness: 0
547
+ },
548
+ alpha = 1
549
+ } = {}]) => css`
550
+ border-color: ${getCheckmarkColor$1({
551
+ swatch,
552
+ alpha
553
+ })};
554
+ `)}
555
+ transform: rotate(45deg) translate3d(91%, -23%, 0);
556
+ }
557
+ }
558
+
559
+ &:not(:disabled) {
560
+ &:focus ~ ${FakeCheckbox} {
561
+ ${(props) => cssMediaRules([props.brandColor], ([brandColor = {
562
+ swatch: {
563
+ hue: 0,
564
+ saturation: 0,
565
+ lightness: 0
566
+ },
567
+ alpha: 1
568
+ }]) => css`
569
+ border-color: ${colorToString(brandColor)};
570
+ `)}
571
+ }
572
+ }
573
+
574
+ &:not(:disabled):checked {
575
+ &:focus ~ ${FakeCheckbox} {
576
+ ${(props) => cssMediaRules([props.contrast], ([contrast = Contrasts.LIGHT]) => css`
577
+ border-color: ${getContrastBorderColor(contrast, props.error)};
578
+ `)}
579
+ }
580
+ }
581
+ `;
582
+ var Checkbox = forwardRef(function Checkbox2(_i, ref) {
583
+ var _j = _i, {
584
+ error,
585
+ className,
586
+ style,
587
+ form
588
+ } = _j, restOfProps = __objRest(_j, [
589
+ "error",
590
+ "className",
591
+ "style",
592
+ "form"
593
+ ]);
594
+ const {
595
+ size,
596
+ contrast,
597
+ brandColor
598
+ } = useFormContext();
599
+ return /* @__PURE__ */ jsxs(Container$2, {
600
+ size,
601
+ children: [/* @__PURE__ */ jsx(HiddenCheckbox, __spreadProps(__spreadValues({}, restOfProps), {
602
+ type: "checkbox",
603
+ ref,
604
+ error,
605
+ size,
606
+ contrast,
607
+ brandColor
608
+ })), /* @__PURE__ */ jsx(FakeCheckbox, {
609
+ className,
610
+ error,
611
+ contrast,
612
+ style
613
+ })]
614
+ });
615
+ });
616
+ const StyledLabel$2 = styled(Label$1)`
617
+ display: flex;
618
+ align-items: center;
619
+ margin: 0;
620
+ ${(props) => cssMediaRules([props.size], ([size = Sizes.MEDIUM]) => css`
621
+ min-height: ${getSizeHeight$1(size)}px;
622
+ max-height: ${getSizeHeight$1(size)}px;
623
+ `)}
624
+ `;
625
+ const CheckboxContainer$1 = styled.span`
626
+ margin-right: 8px;
627
+ `;
628
+ var CheckboxTableField = forwardRef(function CheckboxTableField2(_k, ref) {
629
+ var _l = _k, {
630
+ form,
631
+ id,
632
+ name,
633
+ label = "",
634
+ value = false,
635
+ error
636
+ } = _l, restOfProps = __objRest(_l, [
637
+ "form",
638
+ "id",
639
+ "name",
640
+ "label",
641
+ "value",
642
+ "error"
643
+ ]);
644
+ const {
645
+ size
646
+ } = useFormContext();
647
+ function handleChange(event) {
648
+ form.setFieldValue(name, event.currentTarget.checked);
649
+ }
650
+ return /* @__PURE__ */ jsxs(StyledLabel$2, {
651
+ htmlFor: id,
652
+ size,
653
+ children: [/* @__PURE__ */ jsx(CheckboxContainer$1, {
654
+ children: /* @__PURE__ */ jsx(Checkbox, __spreadProps(__spreadValues({}, restOfProps), {
655
+ "aria-label": label,
656
+ checked: value,
657
+ onChange: handleChange,
658
+ ref,
659
+ id,
660
+ error: error != null
661
+ }))
662
+ }), label]
663
+ });
664
+ });
665
+ const MainLabel = styled(Label$1)`
666
+ margin: 0 0 4px 0;
667
+ `;
668
+ const StyledLabel$1 = styled(Label$1)`
669
+ display: flex;
670
+ align-items: center;
671
+ margin: 8px 0;
672
+
673
+ &:last-of-type {
674
+ margin-bottom: 0;
675
+ }
676
+ `;
677
+ const CheckboxContainer = styled.span`
678
+ margin-right: 8px;
679
+ `;
680
+ var MultipleSelectTableField = forwardRef(function MultipleSelectTableField2(_m, ref) {
681
+ var _n = _m, {
682
+ tableColumn,
683
+ label = "",
684
+ required,
685
+ value = [],
686
+ onChange,
687
+ hideLabel = false
688
+ } = _n, restOfProps = __objRest(_n, [
689
+ "tableColumn",
690
+ "label",
691
+ "required",
692
+ "value",
693
+ "onChange",
694
+ "hideLabel"
695
+ ]);
696
+ const handle = useRef({
697
+ validity: {
698
+ valueMissing: required === true && value.length === 0,
699
+ typeMismatch: false
700
+ }
701
+ });
702
+ useImperativeHandle(ref, () => handle.current, []);
703
+ function handleChange(event) {
704
+ handle.current.validity.valueMissing = required === true && !event.currentTarget.checked && value.filter((v) => v !== event.currentTarget.value).length === 0;
705
+ onChange(event);
706
+ }
707
+ return /* @__PURE__ */ jsxs("div", {
708
+ children: [!hideLabel && /* @__PURE__ */ jsx(MainLabel, {
709
+ children: label
710
+ }), tableColumn.options.map((option) => /* @__PURE__ */ jsxs(StyledLabel$1, {
711
+ htmlFor: option.id,
712
+ children: [/* @__PURE__ */ jsx(CheckboxContainer, {
713
+ children: /* @__PURE__ */ jsx(Checkbox, __spreadProps(__spreadValues({}, restOfProps), {
714
+ "aria-label": label,
715
+ onChange: handleChange,
716
+ checked: value.includes(option.name),
717
+ id: option.id,
718
+ value: option.name
719
+ }))
720
+ }), option.name]
721
+ }, option.id))]
722
+ });
723
+ });
724
+ function getCheckmarkColor({
725
+ swatch: {
726
+ hue: h,
727
+ saturation: s,
728
+ lightness: l
729
+ } = {
730
+ hue: 0,
731
+ saturation: 0,
732
+ lightness: 0
733
+ },
734
+ alpha: a
735
+ }) {
736
+ return ColorHelper({
737
+ h,
738
+ s,
739
+ l
740
+ }).alpha(a).isLight() ? "rgba(0, 0, 0, 0.7)" : "rgba(255, 255, 255, 0.95)";
741
+ }
742
+ const Container$1 = styled.div.withConfig({
743
+ shouldForwardProp: (prop) => !["size"].includes(prop.toString())
744
+ })`
745
+ position: relative;
746
+ ${(props) => cssMediaRules([props.size], ([size = Sizes.MEDIUM]) => css`
747
+ height: ${getSizeHeight(size)}px;
748
+ width: ${getSizeHeight(size)}px;
749
+ `)}
750
+ `;
751
+ const FakeRadioButton = styled.div.withConfig({
752
+ shouldForwardProp: (prop) => !["contrast", "error"].includes(prop.toString())
753
+ })`
754
+ position: absolute;
755
+ width: 100%;
756
+ height: 100%;
757
+ border-style: solid;
758
+ border-radius: 50%;
759
+ pointer-events: none;
760
+ border-width: 1px;
761
+ ${(props) => cssMediaRules([props.contrast], ([contrast = Contrasts.LIGHT]) => css`
762
+ border-color: ${getContrastBorderColor(contrast, props.error)};
763
+ background-color: ${getContrastBackgroundColor(contrast)};
764
+ `)}
765
+ `;
766
+ const HiddenRadioButton = styled.input.withConfig({
767
+ shouldForwardProp: (prop) => !["brandColor", "contrast", "error"].includes(prop.toString())
768
+ }).attrs({
769
+ type: "radio"
770
+ })`
771
+ position: absolute;
772
+ opacity: 0;
773
+ width: 100%;
774
+ height: 100%;
775
+ cursor: pointer;
776
+
777
+ &:disabled {
778
+ cursor: no-drop;
779
+
780
+ & ~ ${FakeRadioButton} {
781
+ opacity: 0.5;
782
+ }
783
+ }
784
+
785
+ &:checked ~ ${FakeRadioButton} {
786
+ ${(props) => cssMediaRules([props.brandColor], ([brandColor = {
787
+ swatch: {
788
+ hue: 0,
789
+ saturation: 0,
790
+ lightness: 0
791
+ },
792
+ alpha: 1
793
+ }]) => css`
794
+ background-color: ${colorToString(brandColor)};
795
+ `)}
796
+ border-color: transparent;
797
+
798
+ &::after {
799
+ content: '';
800
+ position: absolute;
801
+ box-sizing: content-box;
802
+ top: 50%;
803
+ left: 50%;
804
+ width: 50%;
805
+ height: 50%;
806
+ border-radius: 50%;
807
+ transform: translate(-50%, -50%);
808
+ ${(props) => cssMediaRules([props.brandColor], ([brandColor = {
809
+ swatch: {
810
+ hue: 0,
811
+ saturation: 0,
812
+ lightness: 0
813
+ },
814
+ alpha: 1
815
+ }]) => css`
816
+ background-color: ${getCheckmarkColor(brandColor)};
817
+ `)}
818
+ }
819
+ }
820
+
821
+ &:not(:disabled) {
822
+ &:focus ~ ${FakeRadioButton} {
823
+ ${(props) => cssMediaRules([props.brandColor], ([brandColor = {
824
+ swatch: {
825
+ hue: 0,
826
+ saturation: 0,
827
+ lightness: 0
828
+ },
829
+ alpha: 1
830
+ }]) => css`
831
+ border-color: ${colorToString(brandColor)};
832
+ `)}
833
+ }
834
+ }
835
+
836
+ &:not(:disabled):checked {
837
+ &:focus ~ ${FakeRadioButton} {
838
+ ${(props) => cssMediaRules([props.contrast], ([contrast = Contrasts.LIGHT]) => css`
839
+ border-color: ${getContrastBorderColor(contrast, props.error)};
840
+ `)}
841
+ }
842
+ }
843
+ `;
844
+ var RadioButton = forwardRef(function RadioButton2(_o, ref) {
845
+ var _p = _o, {
846
+ error,
847
+ className,
848
+ style,
849
+ form
850
+ } = _p, restOfProps = __objRest(_p, [
851
+ "error",
852
+ "className",
853
+ "style",
854
+ "form"
855
+ ]);
856
+ const {
857
+ size,
858
+ contrast,
859
+ brandColor
860
+ } = useFormContext();
861
+ return /* @__PURE__ */ jsxs(Container$1, {
862
+ size,
863
+ children: [/* @__PURE__ */ jsx(HiddenRadioButton, __spreadProps(__spreadValues({}, restOfProps), {
864
+ ref,
865
+ error,
866
+ contrast,
867
+ brandColor
868
+ })), /* @__PURE__ */ jsx(FakeRadioButton, {
869
+ className,
870
+ error,
871
+ contrast,
872
+ style
873
+ })]
874
+ });
875
+ });
876
+ const StyledLabel = styled(Label$1)`
877
+ display: flex;
878
+ align-items: center;
879
+ margin: 8px 0;
880
+
881
+ &:last-of-type {
882
+ margin-bottom: 0;
883
+ }
884
+ `;
885
+ const RadioButtonContainer = styled.span`
886
+ margin-right: 8px;
887
+ `;
888
+ var TableColumnRadioButtonGroup = forwardRef(function TableColumnRadioButtonGroup2(_q, ref) {
889
+ var _r = _q, {
890
+ tableColumn,
891
+ label = "",
892
+ value = "",
893
+ required = false,
894
+ hideLabel = false,
895
+ onChange
896
+ } = _r, restOfProps = __objRest(_r, [
897
+ "tableColumn",
898
+ "label",
899
+ "value",
900
+ "required",
901
+ "hideLabel",
902
+ "onChange"
903
+ ]);
904
+ const handle = useRef({
905
+ validity: {
906
+ valueMissing: required === true && value === "",
907
+ typeMismatch: false
908
+ }
909
+ });
910
+ useImperativeHandle(ref, () => handle.current, []);
911
+ function handleChange(event) {
912
+ handle.current.validity.valueMissing = required === true && !event.currentTarget.checked;
913
+ onChange(event);
914
+ }
915
+ return /* @__PURE__ */ jsxs("div", {
916
+ children: [!hideLabel && /* @__PURE__ */ jsx(Label$1, {
917
+ as: "p",
918
+ children: label
919
+ }), tableColumn.options.map((option) => /* @__PURE__ */ jsxs(StyledLabel, {
920
+ htmlFor: option.id,
921
+ "aria-label": label,
922
+ children: [/* @__PURE__ */ jsx(RadioButtonContainer, {
923
+ children: /* @__PURE__ */ jsx(RadioButton, __spreadProps(__spreadValues({}, restOfProps), {
924
+ onChange: handleChange,
925
+ checked: value === option.name,
926
+ id: option.id,
927
+ value: option.name
928
+ }))
929
+ }), option.name]
930
+ }, option.id))]
931
+ });
932
+ });
933
+ const Container = styled.div.withConfig({
934
+ shouldForwardProp: (prop) => !["error", "shape", "size", "contrast", "brandColor"].includes(prop.toString())
935
+ })`
936
+ ${cssField()}
937
+ display: flex;
938
+ align-items: center;
939
+ position: relative;
940
+ user-select: none;
941
+ border-color: #f19eb9;
942
+
943
+ &:focus,
944
+ &:focus-within {
945
+ border-color: #e54e7f;
946
+ }
947
+
948
+ ${(props) => cssMediaRules([props.size, props.contrast], ([size = Sizes.MEDIUM, contrast = Contrasts.LIGHT]) => css`
949
+ min-height: ${getSizeHeight$2(size)}px;
950
+ max-height: ${getSizeHeight$2(size)}px;
951
+
952
+ &::after {
953
+ content: '';
954
+ position: absolute;
955
+ right: ${getSizeHorizontalPadding(size)}px;
956
+ top: 50%;
957
+ transform: translate3d(0, -25%, 0);
958
+ border: solid 0.35em transparent;
959
+ border-top-color: ${getContrastColor$1(contrast)};
960
+ }
961
+ `)}
962
+ `;
963
+ const Select = styled.select`
964
+ appearance: none;
965
+ position: absolute;
966
+ top: 0;
967
+ left: 0;
968
+ opacity: 0;
969
+ width: 100%;
970
+ height: 100%;
971
+ `;
972
+ var TableColumnSingleSelect = forwardRef(function TableColumnSingleSelect2(_s, ref) {
973
+ var _t = _s, {
974
+ id,
975
+ tableColumn,
976
+ value = "",
977
+ label = "",
978
+ error = false,
979
+ hideLabel = false,
980
+ form
981
+ } = _t, restOfProps = __objRest(_t, [
982
+ "id",
983
+ "tableColumn",
984
+ "value",
985
+ "label",
986
+ "error",
987
+ "hideLabel",
988
+ "form"
989
+ ]);
990
+ const {
991
+ shape,
992
+ size,
993
+ contrast,
994
+ brandColor
995
+ } = useFormContext();
996
+ return /* @__PURE__ */ jsxs(Fragment, {
997
+ children: [!hideLabel && /* @__PURE__ */ jsx(Label$1, {
998
+ htmlFor: id,
999
+ children: label
1000
+ }), /* @__PURE__ */ jsxs(Container, {
1001
+ error,
1002
+ shape,
1003
+ size,
1004
+ contrast,
1005
+ brandColor,
1006
+ children: [/* @__PURE__ */ jsx("span", {
1007
+ children: value === "" ? "-" : value
1008
+ }), /* @__PURE__ */ jsxs(Select, __spreadProps(__spreadValues({}, restOfProps), {
1009
+ "aria-label": label,
1010
+ ref,
1011
+ id,
1012
+ value,
1013
+ children: [/* @__PURE__ */ jsx("option", {
1014
+ value: "",
1015
+ children: "-"
1016
+ }), tableColumn.options.map((option) => /* @__PURE__ */ jsx("option", {
1017
+ value: option.name,
1018
+ children: option.name
1019
+ }, option.id))]
1020
+ }))]
1021
+ })]
1022
+ });
1023
+ });
1024
+ var SingleSelectTableField = forwardRef(function SingleSelectTableField2(_u, ref) {
1025
+ var _v = _u, {
1026
+ type
1027
+ } = _v, restOfProps = __objRest(_v, [
1028
+ "type"
1029
+ ]);
1030
+ return type === "select" ? /* @__PURE__ */ jsx(TableColumnSingleSelect, __spreadProps(__spreadValues({}, restOfProps), {
1031
+ ref
1032
+ })) : /* @__PURE__ */ jsx(TableColumnRadioButtonGroup, __spreadProps(__spreadValues({}, restOfProps), {
1033
+ ref
1034
+ }));
1035
+ });
1036
+ var PhoneNumberTableField = forwardRef(function PhoneNumberTableField2(_w, ref) {
1037
+ var _x = _w, {
1038
+ id,
1039
+ label = "",
1040
+ name,
1041
+ error,
1042
+ hideLabel = false
1043
+ } = _x, restOfProps = __objRest(_x, [
1044
+ "id",
1045
+ "label",
1046
+ "name",
1047
+ "error",
1048
+ "hideLabel"
1049
+ ]);
1050
+ return /* @__PURE__ */ jsxs(Fragment, {
1051
+ children: [!hideLabel && /* @__PURE__ */ jsx(Label$1, {
1052
+ htmlFor: id,
1053
+ children: label
1054
+ }), /* @__PURE__ */ jsx(Input$2, __spreadProps(__spreadValues({}, restOfProps), {
1055
+ "aria-label": label,
1056
+ ref,
1057
+ id,
1058
+ name,
1059
+ type: "tel",
1060
+ error: error != null
1061
+ }))]
1062
+ });
1063
+ });
1064
+ var EmailTableField = forwardRef(function EmailTableField2(_y, ref) {
1065
+ var _z = _y, {
1066
+ id,
1067
+ label = "",
1068
+ name,
1069
+ error,
1070
+ hideLabel = false
1071
+ } = _z, restOfProps = __objRest(_z, [
1072
+ "id",
1073
+ "label",
1074
+ "name",
1075
+ "error",
1076
+ "hideLabel"
1077
+ ]);
1078
+ return /* @__PURE__ */ jsxs(Fragment, {
1079
+ children: [!hideLabel && /* @__PURE__ */ jsx(Label$1, {
1080
+ htmlFor: id,
1081
+ children: label
1082
+ }), /* @__PURE__ */ jsx(Input$2, __spreadProps(__spreadValues({}, restOfProps), {
1083
+ "aria-label": label,
1084
+ ref,
1085
+ id,
1086
+ name,
1087
+ type: "email",
1088
+ error: error != null
1089
+ }))]
1090
+ });
1091
+ });
1092
+ var URLTableField = forwardRef(function URLTableField2(_A, ref) {
1093
+ var _B = _A, {
1094
+ id,
1095
+ label = "",
1096
+ name,
1097
+ error,
1098
+ hideLabel = false
1099
+ } = _B, restOfProps = __objRest(_B, [
1100
+ "id",
1101
+ "label",
1102
+ "name",
1103
+ "error",
1104
+ "hideLabel"
1105
+ ]);
1106
+ return /* @__PURE__ */ jsxs(Fragment, {
1107
+ children: [!hideLabel && /* @__PURE__ */ jsx(Label$1, {
1108
+ htmlFor: id,
1109
+ children: label
1110
+ }), /* @__PURE__ */ jsx(Input$2, __spreadProps(__spreadValues({}, restOfProps), {
1111
+ "aria-label": label,
1112
+ ref,
1113
+ id,
1114
+ name,
1115
+ type: "url",
1116
+ error: error != null
1117
+ }))]
1118
+ });
1119
+ });
1120
+ var NumberTableField = forwardRef(function NumberTableField2(_C, ref) {
1121
+ var _D = _C, {
1122
+ id,
1123
+ label = "",
1124
+ name,
1125
+ error,
1126
+ hideLabel = false
1127
+ } = _D, restOfProps = __objRest(_D, [
1128
+ "id",
1129
+ "label",
1130
+ "name",
1131
+ "error",
1132
+ "hideLabel"
1133
+ ]);
1134
+ return /* @__PURE__ */ jsxs(Fragment, {
1135
+ children: [!hideLabel && /* @__PURE__ */ jsx(Label$1, {
1136
+ htmlFor: id,
1137
+ children: label
1138
+ }), /* @__PURE__ */ jsx(Input$2, __spreadProps(__spreadValues({}, restOfProps), {
1139
+ "aria-label": label,
1140
+ ref,
1141
+ id,
1142
+ name,
1143
+ type: "number",
1144
+ error: error != null
1145
+ }))]
1146
+ });
1147
+ });
1148
+ const Label = styled.div.withConfig({
1149
+ shouldForwardProp: (prop) => !["size"].includes(prop.toString())
1150
+ })`
1151
+ display: block;
1152
+ max-width: 120px;
1153
+ min-width: 60px;
1154
+ border-radius: 2px;
1155
+ background-color: #5f49f4;
1156
+ opacity: 0.4;
1157
+ ${(props) => cssMediaRules([props.size], ([size = Sizes.MEDIUM]) => css`
1158
+ margin: calc(0.25 * ${getSizeHeight(size)}px + 2px) 0;
1159
+ min-height: ${0.5 * getSizeHeight(size)}px;
1160
+ max-height: ${0.5 * getSizeHeight(size)}px;
1161
+ `)}
1162
+ `;
1163
+ const Input2 = styled.div.withConfig({
1164
+ shouldForwardProp: (prop) => !["shape", "size"].includes(prop.toString())
1165
+ })`
1166
+ display: block;
1167
+ width: 100%;
1168
+ border-width: 2px;
1169
+ border-style: solid;
1170
+ border-color: #5f49f4;
1171
+ opacity: 0.4;
1172
+ ${(props) => cssMediaRules([props.shape, props.size], ([shape = Shapes.ROUNDED, size = Sizes.MEDIUM]) => css`
1173
+ min-height: ${getSizeHeight$1(size)}px;
1174
+ max-height: ${getSizeHeight$1(size)}px;
1175
+ border-radius: ${getShapeBorderRadius(shape)}px;
1176
+ `)}
1177
+ `;
1178
+ function PlaceholderTableField() {
1179
+ const {
1180
+ size,
1181
+ shape
1182
+ } = useFormContext();
1183
+ return /* @__PURE__ */ jsxs(Fragment, {
1184
+ children: [/* @__PURE__ */ jsx(Label, {
1185
+ size
1186
+ }), /* @__PURE__ */ jsx(Input2, {
1187
+ shape,
1188
+ size
1189
+ })]
1190
+ });
1191
+ }
1192
+ function getTypeMismatchErrorMessage(tableColumn, label) {
1193
+ switch ((tableColumn || {}).__typename) {
1194
+ case "PhoneNumberTableColumn":
1195
+ return `${label} field must be a valid phone number.`;
1196
+ case "EmailTableColumn":
1197
+ return `${label} field must be a valid email.`;
1198
+ case "URLTableColumn":
1199
+ return `${label} field must be a valid URL.`;
1200
+ case "NumberTableColumn":
1201
+ return `${label} field must be a valid number.`;
1202
+ case "SingleLineTextTableColumn":
1203
+ case "LongTextTableColumn":
1204
+ case "CheckboxTableColumn":
1205
+ default:
1206
+ return `${label} field is invalid.`;
1207
+ }
1208
+ }
1209
+ function getTableColumnField(tableColumn) {
1210
+ switch ((tableColumn || {}).__typename) {
1211
+ case "SingleLineTextTableColumn":
1212
+ return SingleLineTextTableField;
1213
+ case "LongTextTableColumn":
1214
+ return LongTextTableField;
1215
+ case "CheckboxTableColumn":
1216
+ return CheckboxTableField;
1217
+ case "MultipleSelectTableColumn":
1218
+ return MultipleSelectTableField;
1219
+ case "SingleSelectTableColumn":
1220
+ return SingleSelectTableField;
1221
+ case "PhoneNumberTableColumn":
1222
+ return PhoneNumberTableField;
1223
+ case "EmailTableColumn":
1224
+ return EmailTableField;
1225
+ case "URLTableColumn":
1226
+ return URLTableField;
1227
+ case "NumberTableColumn":
1228
+ return NumberTableField;
1229
+ default:
1230
+ return SingleLineTextTableField;
1231
+ }
1232
+ }
1233
+ function Field({
1234
+ tableColumn,
1235
+ tableFormField: {
1236
+ id,
1237
+ label = "",
1238
+ placeholder,
1239
+ required = false,
1240
+ hidden = false,
1241
+ type = "radio",
1242
+ hideLabel = false
1243
+ }
1244
+ }) {
1245
+ const TableColumnField = getTableColumnField(tableColumn);
1246
+ const input = useRef(null);
1247
+ if (!tableColumn)
1248
+ return /* @__PURE__ */ jsx(PlaceholderTableField, {});
1249
+ function validate() {
1250
+ let errorMessage;
1251
+ if (input.current) {
1252
+ const {
1253
+ validity = {}
1254
+ } = input.current;
1255
+ if (validity.valueMissing)
1256
+ errorMessage = `${label} is required.`;
1257
+ if (validity.typeMismatch)
1258
+ errorMessage = getTypeMismatchErrorMessage(tableColumn, label);
1259
+ }
1260
+ return errorMessage;
1261
+ }
1262
+ return /* @__PURE__ */ jsx(Field$1, {
1263
+ name: tableColumn.name,
1264
+ validate,
1265
+ children: ({
1266
+ field,
1267
+ form
1268
+ }) => hidden ? /* @__PURE__ */ jsx("input", __spreadProps(__spreadValues({}, field), {
1269
+ ref: input,
1270
+ type: "hidden"
1271
+ })) : /* @__PURE__ */ jsx(TableColumnField, __spreadProps(__spreadValues({}, field), {
1272
+ type,
1273
+ form,
1274
+ tableColumn,
1275
+ ref: input,
1276
+ id,
1277
+ error: getIn(form.touched, field.name) && getIn(form.errors, field.name),
1278
+ label,
1279
+ placeholder,
1280
+ required,
1281
+ hideLabel
1282
+ }))
1283
+ });
1284
+ }
1285
+ var _g;
1286
+ function _extends() {
1287
+ _extends = Object.assign || function(target) {
1288
+ for (var i = 1; i < arguments.length; i++) {
1289
+ var source = arguments[i];
1290
+ for (var key in source) {
1291
+ if (Object.prototype.hasOwnProperty.call(source, key)) {
1292
+ target[key] = source[key];
1293
+ }
1294
+ }
1295
+ }
1296
+ return target;
1297
+ };
1298
+ return _extends.apply(this, arguments);
1299
+ }
1300
+ var SvgSpinner20 = function SvgSpinner202(props) {
1301
+ return /* @__PURE__ */ React.createElement("svg", _extends({
1302
+ xmlns: "http://www.w3.org/2000/svg",
1303
+ width: 20,
1304
+ height: 20
1305
+ }, props), _g || (_g = /* @__PURE__ */ React.createElement("g", {
1306
+ fill: "none",
1307
+ strokeWidth: 2,
1308
+ transform: "translate(1 1)"
1309
+ }, /* @__PURE__ */ React.createElement("circle", {
1310
+ stroke: "currentColor",
1311
+ cx: 9,
1312
+ cy: 9,
1313
+ r: 9,
1314
+ strokeOpacity: 0.4
1315
+ }), /* @__PURE__ */ React.createElement("path", {
1316
+ strokeLinecap: "round",
1317
+ d: "M9 18A9 9 0 0 0 9 0"
1318
+ }))));
1319
+ };
1320
+ const spin = keyframes`
1321
+ from {
1322
+ transform: rotate(0deg);
1323
+ }
1324
+ to {
1325
+ transform: rotate(360deg);
1326
+ }
1327
+ `;
1328
+ const Icon = styled(SvgSpinner20)`
1329
+ display: inline-flex;
1330
+ animation: ${spin} 1s linear infinite;
1331
+ stroke: currentColor;
1332
+ `;
1333
+ function Spinner() {
1334
+ return /* @__PURE__ */ jsx(Icon, {});
1335
+ }
1336
+ function useTableFormFieldRefs(propController, { fieldsCount }) {
1337
+ const [container, setContainer] = useState(null);
1338
+ const [items, setItems] = useState(Array(fieldsCount + 1).fill(null));
1339
+ const isInBuilder = useIsInBuilder();
1340
+ useEffect(() => {
1341
+ if (!isInBuilder)
1342
+ return;
1343
+ let animationFrameHandle = requestAnimationFrame(handleAnimationFrameRequest);
1344
+ return () => {
1345
+ cancelAnimationFrame(animationFrameHandle);
1346
+ };
1347
+ function handleAnimationFrameRequest() {
1348
+ if (propController == null)
1349
+ return;
1350
+ if (container != null)
1351
+ propController.tableFormLayoutChange({ layout: getBox(container) });
1352
+ items.map((item, index) => {
1353
+ if (item == null)
1354
+ return;
1355
+ propController.tableFormFieldLayoutChange({ index, layout: getBox(item) });
1356
+ });
1357
+ animationFrameHandle = requestAnimationFrame(handleAnimationFrameRequest);
1358
+ }
1359
+ }, [propController, container, items, isInBuilder]);
1360
+ const itemRefs = useMemo(() => Array.from({ length: fieldsCount + 1 }).map((_, index) => (item) => {
1361
+ setItems((is) => [...is.slice(0, index), item, ...is.slice(index + 1)]);
1362
+ }), [fieldsCount, setItems]);
1363
+ return { container: setContainer, items: itemRefs };
1364
+ }
1365
+ const LOCAL_STORAGE_NAMESPACE = "@@makeswift/components/form";
1366
+ function getSizeFontSize(size) {
1367
+ switch (size) {
1368
+ case Sizes.SMALL:
1369
+ return 12;
1370
+ case Sizes.MEDIUM:
1371
+ return 14;
1372
+ case Sizes.LARGE:
1373
+ return 18;
1374
+ default:
1375
+ throw new Error(`Invalid form size "${size}"`);
1376
+ }
1377
+ }
1378
+ const GridForm = styled.form.withConfig({
1379
+ shouldForwardProp: (prop) => !["size", "width", "margin"].includes(prop)
1380
+ })`
1381
+ display: flex;
1382
+ flex-wrap: wrap;
1383
+ width: 100%;
1384
+ ${(props) => cssMediaRules([props.size], ([size = Sizes.MEDIUM]) => css`
1385
+ font-size: ${getSizeFontSize(size)}px;
1386
+ `)}
1387
+ ${cssWidth()}
1388
+ ${cssMargin()}
1389
+ `;
1390
+ const GridItem = styled.div.withConfig({
1391
+ shouldForwardProp: (prop) => !["grid", "index", "rowGap", "columnGap"].includes(prop)
1392
+ })`
1393
+ align-self: flex-end;
1394
+ flex-direction: column;
1395
+ ${cssGridItem()}
1396
+ `;
1397
+ function getAlignmentMargin(alignment) {
1398
+ switch (alignment) {
1399
+ case Alignments.LEFT:
1400
+ return "0 auto 0 0";
1401
+ case Alignments.RIGHT:
1402
+ return "0 0 0 auto";
1403
+ default:
1404
+ return "0 auto";
1405
+ }
1406
+ }
1407
+ const StyledButton = styled((props) => /* @__PURE__ */ jsx(Button$1, __spreadProps(__spreadValues({}, props), {
1408
+ as: "button"
1409
+ }))).withConfig({
1410
+ shouldForwardProp: (prop) => !["alignment"].includes(prop.toString())
1411
+ })`
1412
+ display: flex;
1413
+ align-items: center;
1414
+ justify-content: center;
1415
+ ${(props) => cssMediaRules([props.size, props.alignment], ([size = Sizes.MEDIUM, alignment = Alignments.CENTER]) => css`
1416
+ min-height: ${getSizeHeight$1(size)}px;
1417
+ max-height: ${getSizeHeight$1(size)}px;
1418
+ margin: ${getAlignmentMargin(alignment)};
1419
+ padding-top: 0;
1420
+ padding-bottom: 0;
1421
+ `)}
1422
+ `;
1423
+ const ErrorContainer = styled.div`
1424
+ padding: 8px 16px;
1425
+ background-color: #f19eb9;
1426
+ border-radius: 4px;
1427
+ margin-top: 16px;
1428
+ `;
1429
+ const IconContainer = styled.div`
1430
+ fill: currentColor;
1431
+ `;
1432
+ const ErrorMessage = styled.p`
1433
+ font-size: 12px;
1434
+ margin: 8px 0;
1435
+ color: rgba(127, 0, 0, 0.95);
1436
+ `;
1437
+ function getTableColumnDefaultValue(tableColumn) {
1438
+ switch (tableColumn.__typename) {
1439
+ case "CheckboxTableColumn":
1440
+ return false;
1441
+ case "MultipleSelectTableColumn":
1442
+ return [];
1443
+ case "SingleLineTextTableColumn":
1444
+ case "LongTextTableColumn":
1445
+ case "SingleSelectTableColumn":
1446
+ case "PhoneNumberTableColumn":
1447
+ case "EmailTableColumn":
1448
+ case "URLTableColumn":
1449
+ case "NumberTableColumn":
1450
+ default:
1451
+ return "";
1452
+ }
1453
+ }
1454
+ const CREATE_TABLE_RECORD = gql`
1455
+ mutation CreateTableRecord($input: CreateTableRecordInput!) {
1456
+ createTableRecord(input: $input) {
1457
+ tableRecord {
1458
+ id
1459
+ }
1460
+ }
1461
+ }
1462
+ `;
1463
+ const Form = forwardRef(function Form2({
1464
+ id,
1465
+ tableId,
1466
+ fields: fieldsProp,
1467
+ submitLabel = "Submit",
1468
+ submitLink,
1469
+ shape,
1470
+ size,
1471
+ contrast,
1472
+ brandColor,
1473
+ gap,
1474
+ width,
1475
+ margin,
1476
+ submitTextStyle,
1477
+ submitVariant,
1478
+ submitTextColor,
1479
+ submitWidth,
1480
+ submitAlignment,
1481
+ labelTextStyle,
1482
+ labelTextColor
1483
+ }, ref) {
1484
+ const fields = useMemo(() => {
1485
+ var _a;
1486
+ return (_a = fieldsProp == null ? void 0 : fieldsProp.fields) != null ? _a : [];
1487
+ }, [fieldsProp]);
1488
+ const grid = useMemo(() => {
1489
+ var _a;
1490
+ return (_a = fieldsProp == null ? void 0 : fieldsProp.grid) != null ? _a : [];
1491
+ }, [fieldsProp]);
1492
+ const {
1493
+ data: {
1494
+ table
1495
+ } = {}
1496
+ } = useQuery(TABLE_BY_ID, {
1497
+ skip: tableId == null,
1498
+ variables: {
1499
+ id: tableId
1500
+ }
1501
+ });
1502
+ const [createTableRecord] = useMutation(CREATE_TABLE_RECORD);
1503
+ const [refEl, setRefEl] = useState(null);
1504
+ const [propControllers, setPropControllers] = useState(null);
1505
+ const [initialValues, setInitialValues] = useState(() => fields.reduce((acc, formField) => {
1506
+ const tableColumn = table && table.columns.find((field) => field.id === formField.tableColumnId);
1507
+ const defaultValue = formField ? formField.defaultValue : null;
1508
+ if (tableColumn) {
1509
+ acc[tableColumn.name] = defaultValue == null ? getTableColumnDefaultValue(tableColumn) : defaultValue;
1510
+ }
1511
+ return acc;
1512
+ }, {}));
1513
+ const controller = propControllers == null ? void 0 : propControllers.fields;
1514
+ const {
1515
+ container,
1516
+ items
1517
+ } = useTableFormFieldRefs(controller, {
1518
+ fieldsCount: fields.length
1519
+ });
1520
+ const [isDone, setIsDone] = useState(false);
1521
+ const linkRef = useRef(null);
1522
+ useImperativeHandle(ref, () => ({
1523
+ getBoxModel() {
1524
+ return refEl instanceof Element ? getBox(refEl) : null;
1525
+ },
1526
+ setPropControllers
1527
+ }), [refEl, setPropControllers]);
1528
+ useEffect(() => {
1529
+ container(refEl);
1530
+ }, [container, refEl]);
1531
+ useEffect(() => {
1532
+ if (!isDone)
1533
+ return;
1534
+ let timeoutId = setTimeout(() => setIsDone(false), 2500);
1535
+ return () => clearTimeout(timeoutId);
1536
+ }, [isDone]);
1537
+ function getTableColumn({
1538
+ tableColumnId
1539
+ }) {
1540
+ return table && table.columns.find((field) => tableColumnId === field.id);
1541
+ }
1542
+ async function handleSubmit(values, {
1543
+ setSubmitting,
1544
+ resetForm,
1545
+ setStatus
1546
+ }) {
1547
+ if (table) {
1548
+ const columns = [];
1549
+ fields.forEach((field) => {
1550
+ const tableColumn = getTableColumn(field);
1551
+ if (tableColumn) {
1552
+ const data = values[tableColumn.name];
1553
+ if (data) {
1554
+ columns.push({
1555
+ columnId: field.tableColumnId,
1556
+ data
1557
+ });
1558
+ if (field.autofill) {
1559
+ localStorage.setItem(`${LOCAL_STORAGE_NAMESPACE}/${tableColumn.name}`, JSON.stringify(data));
1560
+ }
1561
+ }
1562
+ }
1563
+ });
1564
+ try {
1565
+ await createTableRecord({
1566
+ variables: {
1567
+ input: {
1568
+ data: {
1569
+ tableId: table.id,
1570
+ columns
1571
+ }
1572
+ }
1573
+ }
1574
+ });
1575
+ setIsDone(true);
1576
+ setInitialValues((prev) => fields.reduce((acc, field) => {
1577
+ const tableColumn = getTableColumn(field);
1578
+ if (tableColumn) {
1579
+ const data = values[tableColumn.name];
1580
+ if (data && field.autofill)
1581
+ return __spreadProps(__spreadValues({}, acc), {
1582
+ [tableColumn.name]: data
1583
+ });
1584
+ }
1585
+ return acc;
1586
+ }, __spreadValues({}, prev)));
1587
+ resetForm();
1588
+ if (linkRef.current != null)
1589
+ linkRef.current.click();
1590
+ } catch (error) {
1591
+ setStatus({
1592
+ error: "An unexpected error has occurred, please try again later"
1593
+ });
1594
+ } finally {
1595
+ setSubmitting(false);
1596
+ }
1597
+ }
1598
+ }
1599
+ useEffect(() => {
1600
+ setInitialValues((prev) => fields.reduce((acc, formField) => {
1601
+ const tableColumn = table && table.columns.find((field) => field.id === formField.tableColumnId);
1602
+ if (tableColumn && formField.autofill) {
1603
+ const storedValue = localStorage.getItem(`${LOCAL_STORAGE_NAMESPACE}/${tableColumn.name}`);
1604
+ if (storedValue) {
1605
+ try {
1606
+ acc[tableColumn.name] = JSON.parse(storedValue);
1607
+ } catch (e) {
1608
+ }
1609
+ }
1610
+ }
1611
+ return acc;
1612
+ }, __spreadValues({}, prev)));
1613
+ }, [fields, table]);
1614
+ return /* @__PURE__ */ jsx(Provider, {
1615
+ value: {
1616
+ shape,
1617
+ size,
1618
+ contrast,
1619
+ brandColor,
1620
+ labelTextStyle,
1621
+ labelTextColor
1622
+ },
1623
+ children: tableId == null ? /* @__PURE__ */ jsx(Placeholder, {
1624
+ ref: setRefEl,
1625
+ width,
1626
+ margin
1627
+ }) : /* @__PURE__ */ jsx(Fragment, {
1628
+ children: /* @__PURE__ */ jsx(Formik, {
1629
+ onSubmit: handleSubmit,
1630
+ initialValues,
1631
+ initialStatus: {
1632
+ error: null
1633
+ },
1634
+ enableReinitialize: true,
1635
+ children: (formik) => {
1636
+ const error = formik.status && formik.status.error;
1637
+ const errors = fields.map((field) => {
1638
+ const tableColumn = getTableColumn(field);
1639
+ return tableColumn && getIn(formik.touched, tableColumn.name) && getIn(formik.errors, tableColumn.name);
1640
+ }).filter((message) => typeof message === "string");
1641
+ return /* @__PURE__ */ jsxs(Fragment, {
1642
+ children: [/* @__PURE__ */ jsxs(GridForm, {
1643
+ ref: setRefEl,
1644
+ id,
1645
+ width,
1646
+ margin,
1647
+ size,
1648
+ onSubmit: formik.handleSubmit,
1649
+ onReset: formik.handleReset,
1650
+ noValidate: true,
1651
+ children: [fields.map((field, index) => {
1652
+ const tableColumn = getTableColumn(field);
1653
+ return /* @__PURE__ */ jsx(GridItem, {
1654
+ ref: items[index],
1655
+ grid,
1656
+ index,
1657
+ rowGap: gap,
1658
+ columnGap: gap,
1659
+ children: /* @__PURE__ */ jsx(Field, {
1660
+ tableColumn,
1661
+ tableFormField: field
1662
+ })
1663
+ }, field.id);
1664
+ }), /* @__PURE__ */ jsxs(GridItem, {
1665
+ ref: items[fields.length],
1666
+ grid,
1667
+ index: fields.length,
1668
+ rowGap: gap,
1669
+ columnGap: gap,
1670
+ children: [/* @__PURE__ */ jsx(StyledButton, {
1671
+ type: "submit",
1672
+ disabled: formik.isSubmitting || isDone,
1673
+ shape,
1674
+ size,
1675
+ color: brandColor,
1676
+ variant: submitVariant,
1677
+ textColor: submitTextColor,
1678
+ width: submitWidth,
1679
+ alignment: submitAlignment,
1680
+ textStyle: submitTextStyle,
1681
+ children: formik.isSubmitting ? /* @__PURE__ */ jsx(Spinner, {}) : isDone ? /* @__PURE__ */ jsx(IconContainer, {
1682
+ children: /* @__PURE__ */ jsx(SvgCheck12, {})
1683
+ }) : submitLabel
1684
+ }), (errors.length > 0 || error) && /* @__PURE__ */ jsxs(ErrorContainer, {
1685
+ children: [errors.map((message) => /* @__PURE__ */ jsx(ErrorMessage, {
1686
+ children: message
1687
+ }, message)), error != null && /* @__PURE__ */ jsx(ErrorMessage, {
1688
+ children: error
1689
+ })]
1690
+ })]
1691
+ })]
1692
+ }), submitLink != null && /* @__PURE__ */ jsx(Link, {
1693
+ ref: linkRef,
1694
+ hidden: true,
1695
+ link: submitLink
1696
+ })]
1697
+ });
1698
+ }
1699
+ })
1700
+ })
1701
+ });
1702
+ });
1703
+ export { Form as default };
1704
+ //# sourceMappingURL=Form.es.js.map