@makeswift/prop-controllers 0.3.0 → 0.3.1-canary.0

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 (326) hide show
  1. package/dist/cjs/backgrounds/backgrounds.js +297 -0
  2. package/dist/cjs/backgrounds/backgrounds.js.map +1 -0
  3. package/dist/cjs/backgrounds/index.js +23 -0
  4. package/dist/cjs/backgrounds/index.js.map +1 -0
  5. package/dist/cjs/border/border.js +132 -0
  6. package/dist/cjs/border/border.js.map +1 -0
  7. package/dist/cjs/border/index.js +23 -0
  8. package/dist/cjs/border/index.js.map +1 -0
  9. package/dist/cjs/border-radius/border-radius.js +82 -0
  10. package/dist/cjs/border-radius/border-radius.js.map +1 -0
  11. package/dist/cjs/border-radius/index.js +23 -0
  12. package/dist/cjs/border-radius/index.js.map +1 -0
  13. package/dist/cjs/checkbox/checkbox.js +68 -0
  14. package/dist/cjs/checkbox/checkbox.js.map +1 -0
  15. package/dist/cjs/checkbox/index.js +23 -0
  16. package/dist/cjs/checkbox/index.js.map +1 -0
  17. package/dist/cjs/data.js +85 -0
  18. package/dist/cjs/data.js.map +1 -0
  19. package/dist/cjs/date/date.js +68 -0
  20. package/dist/cjs/date/date.js.map +1 -0
  21. package/dist/cjs/date/index.js +23 -0
  22. package/dist/cjs/date/index.js.map +1 -0
  23. package/dist/cjs/element-id/element-id.js +90 -0
  24. package/dist/cjs/element-id/element-id.js.map +1 -0
  25. package/dist/cjs/element-id/index.js +23 -0
  26. package/dist/cjs/element-id/index.js.map +1 -0
  27. package/dist/cjs/font/font.js +70 -0
  28. package/dist/cjs/font/font.js.map +1 -0
  29. package/dist/cjs/font/index.js +23 -0
  30. package/dist/cjs/font/index.js.map +1 -0
  31. package/dist/cjs/gap-x/gap-x.js +40 -0
  32. package/dist/cjs/gap-x/gap-x.js.map +1 -0
  33. package/dist/cjs/gap-x/index.js +23 -0
  34. package/dist/cjs/gap-x/index.js.map +1 -0
  35. package/dist/cjs/gap-y/gap-y.js +68 -0
  36. package/dist/cjs/gap-y/gap-y.js.map +1 -0
  37. package/dist/cjs/gap-y/index.js +23 -0
  38. package/dist/cjs/gap-y/index.js.map +1 -0
  39. package/dist/cjs/grid/grid.js +130 -0
  40. package/dist/cjs/grid/grid.js.map +1 -0
  41. package/dist/cjs/grid/index.js +23 -0
  42. package/dist/cjs/grid/index.js.map +1 -0
  43. package/dist/cjs/image/image.js +95 -0
  44. package/dist/cjs/image/image.js.map +1 -0
  45. package/dist/cjs/image/index.js +23 -0
  46. package/dist/cjs/image/index.js.map +1 -0
  47. package/dist/cjs/images/images.js +147 -0
  48. package/dist/cjs/images/images.js.map +1 -0
  49. package/dist/cjs/images/index.js +23 -0
  50. package/dist/cjs/images/index.js.map +1 -0
  51. package/dist/cjs/index.js +343 -0
  52. package/dist/cjs/index.js.map +1 -0
  53. package/dist/cjs/link/index.js +23 -0
  54. package/dist/cjs/link/index.js.map +1 -0
  55. package/dist/cjs/link/link.js +137 -0
  56. package/dist/cjs/link/link.js.map +1 -0
  57. package/dist/cjs/margin/index.js +23 -0
  58. package/dist/cjs/margin/index.js.map +1 -0
  59. package/dist/cjs/margin/margin.js +94 -0
  60. package/dist/cjs/margin/margin.js.map +1 -0
  61. package/dist/cjs/navigation-links/index.js +23 -0
  62. package/dist/cjs/navigation-links/index.js.map +1 -0
  63. package/dist/cjs/navigation-links/navigation-links.js +226 -0
  64. package/dist/cjs/navigation-links/navigation-links.js.map +1 -0
  65. package/dist/cjs/number.js +66 -0
  66. package/dist/cjs/number.js.map +1 -0
  67. package/dist/cjs/padding/index.js +23 -0
  68. package/dist/cjs/padding/index.js.map +1 -0
  69. package/dist/cjs/padding/padding.js +91 -0
  70. package/dist/cjs/padding/padding.js.map +1 -0
  71. package/dist/cjs/prop-controllers.js +67 -0
  72. package/dist/cjs/prop-controllers.js.map +1 -0
  73. package/dist/cjs/responsive-color.js +106 -0
  74. package/dist/cjs/responsive-color.js.map +1 -0
  75. package/dist/cjs/responsive-icon-radio-group/index.js +23 -0
  76. package/dist/cjs/responsive-icon-radio-group/index.js.map +1 -0
  77. package/dist/cjs/responsive-icon-radio-group/responsive-icon-radio-group.js +42 -0
  78. package/dist/cjs/responsive-icon-radio-group/responsive-icon-radio-group.js.map +1 -0
  79. package/dist/cjs/responsive-length.js +73 -0
  80. package/dist/cjs/responsive-length.js.map +1 -0
  81. package/dist/cjs/responsive-number/index.js +23 -0
  82. package/dist/cjs/responsive-number/index.js.map +1 -0
  83. package/dist/cjs/responsive-number/responsive-number.js +40 -0
  84. package/dist/cjs/responsive-number/responsive-number.js.map +1 -0
  85. package/dist/cjs/responsive-opacity/index.js +23 -0
  86. package/dist/cjs/responsive-opacity/index.js.map +1 -0
  87. package/dist/cjs/responsive-opacity/responsive-opacity.js +43 -0
  88. package/dist/cjs/responsive-opacity/responsive-opacity.js.map +1 -0
  89. package/dist/cjs/responsive-select/index.js +23 -0
  90. package/dist/cjs/responsive-select/index.js.map +1 -0
  91. package/dist/cjs/responsive-select/responsive-select.js +42 -0
  92. package/dist/cjs/responsive-select/responsive-select.js.map +1 -0
  93. package/dist/cjs/shadows.js +126 -0
  94. package/dist/cjs/shadows.js.map +1 -0
  95. package/dist/cjs/social-links/index.js +23 -0
  96. package/dist/cjs/social-links/index.js.map +1 -0
  97. package/dist/cjs/social-links/social-links.js +128 -0
  98. package/dist/cjs/social-links/social-links.js.map +1 -0
  99. package/dist/cjs/table/index.js +23 -0
  100. package/dist/cjs/table/index.js.map +1 -0
  101. package/dist/cjs/table/table.js +91 -0
  102. package/dist/cjs/table/table.js.map +1 -0
  103. package/dist/cjs/table-form-fields/index.js +23 -0
  104. package/dist/cjs/table-form-fields/index.js.map +1 -0
  105. package/dist/cjs/table-form-fields/table-form-fields.js +113 -0
  106. package/dist/cjs/table-form-fields/table-form-fields.js.map +1 -0
  107. package/dist/cjs/text-area/index.js +23 -0
  108. package/dist/cjs/text-area/index.js.map +1 -0
  109. package/dist/cjs/text-area/text-area.js +67 -0
  110. package/dist/cjs/text-area/text-area.js.map +1 -0
  111. package/dist/cjs/text-input/index.js +23 -0
  112. package/dist/cjs/text-input/index.js.map +1 -0
  113. package/dist/cjs/text-input/text-input.js +67 -0
  114. package/dist/cjs/text-input/text-input.js.map +1 -0
  115. package/dist/cjs/text-style/index.js +23 -0
  116. package/dist/cjs/text-style/index.js.map +1 -0
  117. package/dist/cjs/text-style/text-style.js +88 -0
  118. package/dist/cjs/text-style/text-style.js.map +1 -0
  119. package/dist/cjs/utils/associated-types.js +17 -0
  120. package/dist/cjs/utils/associated-types.js.map +1 -0
  121. package/dist/cjs/utils/utils.js +42 -0
  122. package/dist/cjs/utils/utils.js.map +1 -0
  123. package/dist/cjs/versioned.js +66 -0
  124. package/dist/cjs/versioned.js.map +1 -0
  125. package/dist/cjs/video/index.js +23 -0
  126. package/dist/cjs/video/index.js.map +1 -0
  127. package/dist/cjs/video/video.js +75 -0
  128. package/dist/cjs/video/video.js.map +1 -0
  129. package/dist/cjs/width/index.js +23 -0
  130. package/dist/cjs/width/index.js.map +1 -0
  131. package/dist/cjs/width/width.js +76 -0
  132. package/dist/cjs/width/width.js.map +1 -0
  133. package/dist/esm/backgrounds/backgrounds.js +268 -0
  134. package/dist/esm/backgrounds/backgrounds.js.map +1 -0
  135. package/dist/esm/backgrounds/index.js +2 -0
  136. package/dist/esm/backgrounds/index.js.map +1 -0
  137. package/dist/esm/border/border.js +105 -0
  138. package/dist/esm/border/border.js.map +1 -0
  139. package/dist/esm/border/index.js +2 -0
  140. package/dist/esm/border/index.js.map +1 -0
  141. package/dist/esm/border-radius/border-radius.js +58 -0
  142. package/dist/esm/border-radius/border-radius.js.map +1 -0
  143. package/dist/esm/border-radius/index.js +2 -0
  144. package/dist/esm/border-radius/index.js.map +1 -0
  145. package/dist/esm/checkbox/checkbox.js +40 -0
  146. package/dist/esm/checkbox/checkbox.js.map +1 -0
  147. package/dist/esm/checkbox/index.js +2 -0
  148. package/dist/esm/checkbox/index.js.map +1 -0
  149. package/dist/esm/data.js +52 -0
  150. package/dist/esm/data.js.map +1 -0
  151. package/dist/esm/date/date.js +40 -0
  152. package/dist/esm/date/date.js.map +1 -0
  153. package/dist/esm/date/index.js +2 -0
  154. package/dist/esm/date/index.js.map +1 -0
  155. package/dist/esm/element-id/element-id.js +64 -0
  156. package/dist/esm/element-id/element-id.js.map +1 -0
  157. package/dist/esm/element-id/index.js +2 -0
  158. package/dist/esm/element-id/index.js.map +1 -0
  159. package/dist/esm/font/font.js +42 -0
  160. package/dist/esm/font/font.js.map +1 -0
  161. package/dist/esm/font/index.js +2 -0
  162. package/dist/esm/font/index.js.map +1 -0
  163. package/dist/esm/gap-x/gap-x.js +16 -0
  164. package/dist/esm/gap-x/gap-x.js.map +1 -0
  165. package/dist/esm/gap-x/index.js +2 -0
  166. package/dist/esm/gap-x/index.js.map +1 -0
  167. package/dist/esm/gap-y/gap-y.js +40 -0
  168. package/dist/esm/gap-y/gap-y.js.map +1 -0
  169. package/dist/esm/gap-y/index.js +2 -0
  170. package/dist/esm/gap-y/index.js.map +1 -0
  171. package/dist/esm/grid/grid.js +102 -0
  172. package/dist/esm/grid/grid.js.map +1 -0
  173. package/dist/esm/grid/index.js +2 -0
  174. package/dist/esm/grid/index.js.map +1 -0
  175. package/dist/esm/image/image.js +71 -0
  176. package/dist/esm/image/image.js.map +1 -0
  177. package/dist/esm/image/index.js +2 -0
  178. package/dist/esm/image/index.js.map +1 -0
  179. package/dist/esm/images/images.js +119 -0
  180. package/dist/esm/images/images.js.map +1 -0
  181. package/dist/esm/images/index.js +2 -0
  182. package/dist/esm/images/index.js.map +1 -0
  183. package/dist/esm/index.js +336 -0
  184. package/dist/esm/index.js.map +1 -0
  185. package/dist/esm/link/index.js +2 -0
  186. package/dist/esm/link/index.js.map +1 -0
  187. package/dist/esm/link/link.js +108 -0
  188. package/dist/esm/link/link.js.map +1 -0
  189. package/dist/esm/margin/index.js +2 -0
  190. package/dist/esm/margin/index.js.map +1 -0
  191. package/dist/esm/margin/margin.js +69 -0
  192. package/dist/esm/margin/margin.js.map +1 -0
  193. package/dist/esm/navigation-links/index.js +2 -0
  194. package/dist/esm/navigation-links/index.js.map +1 -0
  195. package/dist/esm/navigation-links/navigation-links.js +199 -0
  196. package/dist/esm/navigation-links/navigation-links.js.map +1 -0
  197. package/dist/esm/number.js +39 -0
  198. package/dist/esm/number.js.map +1 -0
  199. package/dist/esm/padding/index.js +2 -0
  200. package/dist/esm/padding/index.js.map +1 -0
  201. package/dist/esm/padding/padding.js +66 -0
  202. package/dist/esm/padding/padding.js.map +1 -0
  203. package/dist/esm/prop-controllers.js +44 -0
  204. package/dist/esm/prop-controllers.js.map +1 -0
  205. package/dist/esm/responsive-color.js +79 -0
  206. package/dist/esm/responsive-color.js.map +1 -0
  207. package/dist/esm/responsive-icon-radio-group/index.js +2 -0
  208. package/dist/esm/responsive-icon-radio-group/index.js.map +1 -0
  209. package/dist/esm/responsive-icon-radio-group/responsive-icon-radio-group.js +21 -0
  210. package/dist/esm/responsive-icon-radio-group/responsive-icon-radio-group.js.map +1 -0
  211. package/dist/esm/responsive-length.js +43 -0
  212. package/dist/esm/responsive-length.js.map +1 -0
  213. package/dist/esm/responsive-number/index.js +2 -0
  214. package/dist/esm/responsive-number/index.js.map +1 -0
  215. package/dist/esm/responsive-number/responsive-number.js +16 -0
  216. package/dist/esm/responsive-number/responsive-number.js.map +1 -0
  217. package/dist/esm/responsive-opacity/index.js +2 -0
  218. package/dist/esm/responsive-opacity/index.js.map +1 -0
  219. package/dist/esm/responsive-opacity/responsive-opacity.js +18 -0
  220. package/dist/esm/responsive-opacity/responsive-opacity.js.map +1 -0
  221. package/dist/esm/responsive-select/index.js +2 -0
  222. package/dist/esm/responsive-select/index.js.map +1 -0
  223. package/dist/esm/responsive-select/responsive-select.js +21 -0
  224. package/dist/esm/responsive-select/responsive-select.js.map +1 -0
  225. package/dist/esm/shadows.js +100 -0
  226. package/dist/esm/shadows.js.map +1 -0
  227. package/dist/esm/social-links/index.js +2 -0
  228. package/dist/esm/social-links/index.js.map +1 -0
  229. package/dist/esm/social-links/social-links.js +98 -0
  230. package/dist/esm/social-links/social-links.js.map +1 -0
  231. package/dist/esm/table/index.js +2 -0
  232. package/dist/esm/table/index.js.map +1 -0
  233. package/dist/esm/table/table.js +64 -0
  234. package/dist/esm/table/table.js.map +1 -0
  235. package/dist/esm/table-form-fields/index.js +2 -0
  236. package/dist/esm/table-form-fields/index.js.map +1 -0
  237. package/dist/esm/table-form-fields/table-form-fields.js +87 -0
  238. package/dist/esm/table-form-fields/table-form-fields.js.map +1 -0
  239. package/dist/esm/text-area/index.js +2 -0
  240. package/dist/esm/text-area/index.js.map +1 -0
  241. package/dist/esm/text-area/text-area.js +39 -0
  242. package/dist/esm/text-area/text-area.js.map +1 -0
  243. package/dist/esm/text-input/index.js +2 -0
  244. package/dist/esm/text-input/index.js.map +1 -0
  245. package/dist/esm/text-input/text-input.js +39 -0
  246. package/dist/esm/text-input/text-input.js.map +1 -0
  247. package/dist/esm/text-style/index.js +2 -0
  248. package/dist/esm/text-style/index.js.map +1 -0
  249. package/dist/esm/text-style/text-style.js +59 -0
  250. package/dist/esm/text-style/text-style.js.map +1 -0
  251. package/dist/esm/utils/associated-types.js +1 -0
  252. package/dist/esm/utils/associated-types.js.map +1 -0
  253. package/dist/esm/utils/utils.js +18 -0
  254. package/dist/esm/utils/utils.js.map +1 -0
  255. package/dist/esm/versioned.js +43 -0
  256. package/dist/esm/versioned.js.map +1 -0
  257. package/dist/esm/video/index.js +2 -0
  258. package/dist/esm/video/index.js.map +1 -0
  259. package/dist/esm/video/video.js +47 -0
  260. package/dist/esm/video/video.js.map +1 -0
  261. package/dist/esm/width/index.js +2 -0
  262. package/dist/esm/width/index.js.map +1 -0
  263. package/dist/esm/width/width.js +49 -0
  264. package/dist/esm/width/width.js.map +1 -0
  265. package/dist/types/backgrounds/backgrounds.d.ts +97 -97
  266. package/dist/types/border/border.d.ts +595 -765
  267. package/dist/types/border/border.d.ts.map +1 -1
  268. package/dist/types/border/index.d.ts +1 -0
  269. package/dist/types/border/index.d.ts.map +1 -1
  270. package/dist/types/border-radius/border-radius.d.ts +23 -23
  271. package/dist/types/border-radius/border-radius.d.ts.map +1 -1
  272. package/dist/types/checkbox/checkbox.d.ts +4 -4
  273. package/dist/types/data.d.ts +5 -5
  274. package/dist/types/data.d.ts.map +1 -1
  275. package/dist/types/date/date.d.ts +4 -4
  276. package/dist/types/element-id/element-id.d.ts +4 -4
  277. package/dist/types/font/font.d.ts +9 -9
  278. package/dist/types/font/font.d.ts.map +1 -1
  279. package/dist/types/gap-x/gap-x.d.ts +204 -120
  280. package/dist/types/gap-x/gap-x.d.ts.map +1 -1
  281. package/dist/types/gap-y/gap-y.d.ts +8 -8
  282. package/dist/types/grid/grid.d.ts +854 -38
  283. package/dist/types/grid/grid.d.ts.map +1 -1
  284. package/dist/types/image/image.d.ts +4 -4
  285. package/dist/types/images/images.d.ts +94 -94
  286. package/dist/types/index.d.ts +1 -1
  287. package/dist/types/index.d.ts.map +1 -1
  288. package/dist/types/link/link.d.ts +21 -21
  289. package/dist/types/link/link.d.ts.map +1 -1
  290. package/dist/types/margin/margin.d.ts +10 -10
  291. package/dist/types/margin/margin.d.ts.map +1 -1
  292. package/dist/types/navigation-links/navigation-links.d.ts +164 -164
  293. package/dist/types/number.d.ts +4 -4
  294. package/dist/types/padding/padding.d.ts +10 -10
  295. package/dist/types/padding/padding.d.ts.map +1 -1
  296. package/dist/types/prop-controllers.d.ts +2 -99
  297. package/dist/types/prop-controllers.d.ts.map +1 -1
  298. package/dist/types/responsive-color.d.ts +9 -9
  299. package/dist/types/responsive-color.d.ts.map +1 -1
  300. package/dist/types/responsive-icon-radio-group/responsive-icon-radio-group.d.ts +88 -35
  301. package/dist/types/responsive-icon-radio-group/responsive-icon-radio-group.d.ts.map +1 -1
  302. package/dist/types/responsive-length.d.ts +14 -14
  303. package/dist/types/responsive-length.d.ts.map +1 -1
  304. package/dist/types/responsive-number/responsive-number.d.ts +118 -67
  305. package/dist/types/responsive-number/responsive-number.d.ts.map +1 -1
  306. package/dist/types/responsive-opacity/responsive-opacity.d.ts +120 -69
  307. package/dist/types/responsive-opacity/responsive-opacity.d.ts.map +1 -1
  308. package/dist/types/responsive-select/responsive-select.d.ts +88 -35
  309. package/dist/types/responsive-select/responsive-select.d.ts.map +1 -1
  310. package/dist/types/shadows.d.ts +7 -7
  311. package/dist/types/shadows.d.ts.map +1 -1
  312. package/dist/types/social-links/social-links.d.ts +4 -4
  313. package/dist/types/table/table.d.ts +4 -4
  314. package/dist/types/table-form-fields/table-form-fields.d.ts +9 -9
  315. package/dist/types/text-area/text-area.d.ts +4 -4
  316. package/dist/types/text-input/text-input.d.ts +4 -4
  317. package/dist/types/text-style/text-style.d.ts +9 -9
  318. package/dist/types/text-style/text-style.d.ts.map +1 -1
  319. package/dist/types/utils/associated-types.d.ts +4 -1
  320. package/dist/types/utils/associated-types.d.ts.map +1 -1
  321. package/dist/types/versioned.d.ts +187 -122
  322. package/dist/types/versioned.d.ts.map +1 -1
  323. package/dist/types/video/video.d.ts +4 -4
  324. package/dist/types/width/width.d.ts +12 -12
  325. package/package.json +9 -7
  326. package/dist/index.cjs +0 -2489
@@ -0,0 +1,94 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+ var margin_exports = {};
20
+ __export(margin_exports, {
21
+ Margin: () => Margin,
22
+ MarginPropControllerDataV1Type: () => MarginPropControllerDataV1Type,
23
+ MarginPropControllerFormat: () => MarginPropControllerFormat,
24
+ createMarginPropControllerDataFromResponsiveMarginData: () => createMarginPropControllerDataFromResponsiveMarginData,
25
+ getMarginPropControllerDataResponsiveMarginData: () => getMarginPropControllerDataResponsiveMarginData,
26
+ marginPropControllerDataSchema: () => marginPropControllerDataSchema
27
+ });
28
+ module.exports = __toCommonJS(margin_exports);
29
+ var import_ts_pattern = require("ts-pattern");
30
+ var import_prop_controllers = require("../prop-controllers");
31
+ var import_zod = require("zod");
32
+ const marginSideDataSchema = import_zod.z.union([
33
+ import_zod.z.object({
34
+ value: import_zod.z.number(),
35
+ unit: import_zod.z.literal("px")
36
+ }),
37
+ import_zod.z.literal("auto")
38
+ ]);
39
+ const marginDataSchema = import_zod.z.object({
40
+ marginTop: marginSideDataSchema.nullable().optional(),
41
+ marginRight: marginSideDataSchema.nullable().optional(),
42
+ marginBottom: marginSideDataSchema.nullable().optional(),
43
+ marginLeft: marginSideDataSchema.nullable().optional()
44
+ }).transform((v) => ({
45
+ marginTop: v.marginTop,
46
+ marginRight: v.marginRight,
47
+ marginBottom: v.marginBottom,
48
+ marginLeft: v.marginLeft
49
+ }));
50
+ const responsiveMarginDataSchema = import_prop_controllers.Schema.responsiveValue(marginDataSchema);
51
+ const marginPropControllerDataV0Schema = responsiveMarginDataSchema;
52
+ const MarginPropControllerDataV1Type = "prop-controllers::margin::v1";
53
+ const marginPropControllerDataV1Schema = import_zod.z.object({
54
+ [import_prop_controllers.ControlDataTypeKey]: import_zod.z.literal(MarginPropControllerDataV1Type),
55
+ value: responsiveMarginDataSchema
56
+ });
57
+ const marginPropControllerDataSchema = import_zod.z.union([
58
+ marginPropControllerDataV0Schema,
59
+ marginPropControllerDataV1Schema
60
+ ]);
61
+ const MarginPropControllerFormat = {
62
+ ClassName: "makeswift::prop-controllers::margin::format::class-name",
63
+ ResponsiveValue: "makeswift::prop-controllers::margin::format::responsive-value"
64
+ };
65
+ function Margin(options = {}) {
66
+ return { type: import_prop_controllers.Types.Margin, version: 1, options };
67
+ }
68
+ Margin.Format = MarginPropControllerFormat;
69
+ function getMarginPropControllerDataResponsiveMarginData(data) {
70
+ return (0, import_ts_pattern.match)(data).with(
71
+ { [import_prop_controllers.ControlDataTypeKey]: MarginPropControllerDataV1Type },
72
+ (v1) => v1.value
73
+ ).otherwise((v0) => v0);
74
+ }
75
+ function createMarginPropControllerDataFromResponsiveMarginData(responsiveMarginData, definition) {
76
+ return (0, import_ts_pattern.match)(definition).with(
77
+ { version: 1 },
78
+ import_ts_pattern.P.nullish,
79
+ () => ({
80
+ [import_prop_controllers.ControlDataTypeKey]: MarginPropControllerDataV1Type,
81
+ value: responsiveMarginData
82
+ })
83
+ ).otherwise(() => responsiveMarginData);
84
+ }
85
+ // Annotate the CommonJS export names for ESM import in node:
86
+ 0 && (module.exports = {
87
+ Margin,
88
+ MarginPropControllerDataV1Type,
89
+ MarginPropControllerFormat,
90
+ createMarginPropControllerDataFromResponsiveMarginData,
91
+ getMarginPropControllerDataResponsiveMarginData,
92
+ marginPropControllerDataSchema
93
+ });
94
+ //# sourceMappingURL=margin.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/margin/margin.ts"],"sourcesContent":["import { P, match } from 'ts-pattern'\nimport {\n ControlDataTypeKey,\n ResolveOptions,\n Types,\n Schema,\n} from '../prop-controllers'\nimport { z } from 'zod'\n\nconst marginSideDataSchema = z.union([\n z.object({\n value: z.number(),\n unit: z.literal('px'),\n }),\n z.literal('auto'),\n])\n\nexport type MarginSideData = z.infer<typeof marginSideDataSchema>\n\nconst marginDataSchema = z\n .object({\n marginTop: marginSideDataSchema.nullable().optional(),\n marginRight: marginSideDataSchema.nullable().optional(),\n marginBottom: marginSideDataSchema.nullable().optional(),\n marginLeft: marginSideDataSchema.nullable().optional(),\n })\n // To make the key required.\n .transform((v) => ({\n marginTop: v.marginTop,\n marginRight: v.marginRight,\n marginBottom: v.marginBottom,\n marginLeft: v.marginLeft,\n }))\n\nexport type MarginData = z.infer<typeof marginDataSchema>\n\nconst responsiveMarginDataSchema = Schema.responsiveValue(marginDataSchema)\n\nexport type ResponsiveMarginData = z.infer<typeof responsiveMarginDataSchema>\n\nconst marginPropControllerDataV0Schema = responsiveMarginDataSchema\n\nexport type MarginPropControllerDataV0 = z.infer<\n typeof marginPropControllerDataV0Schema\n>\n\nexport const MarginPropControllerDataV1Type = 'prop-controllers::margin::v1'\n\nconst marginPropControllerDataV1Schema = z.object({\n [ControlDataTypeKey]: z.literal(MarginPropControllerDataV1Type),\n value: responsiveMarginDataSchema,\n})\n\nexport type MarginPropControllerDataV1 = z.infer<\n typeof marginPropControllerDataV1Schema\n>\n\nexport const marginPropControllerDataSchema = z.union([\n marginPropControllerDataV0Schema,\n marginPropControllerDataV1Schema,\n])\n\nexport type MarginPropControllerData = z.infer<\n typeof marginPropControllerDataSchema\n>\n\nexport const MarginPropControllerFormat = {\n ClassName: 'makeswift::prop-controllers::margin::format::class-name',\n ResponsiveValue:\n 'makeswift::prop-controllers::margin::format::responsive-value',\n} as const\n\nexport type MarginPropControllerFormat =\n (typeof MarginPropControllerFormat)[keyof typeof MarginPropControllerFormat]\n\ntype MarginOptions = {\n preset?: MarginPropControllerData\n format?: MarginPropControllerFormat\n}\n\ntype MarginDescriptorV0<\n _T = MarginPropControllerDataV0,\n U extends MarginOptions = MarginOptions,\n> = {\n type: typeof Types.Margin\n options: U\n}\n\ntype MarginDescriptorV1<\n _T = MarginPropControllerData,\n U extends MarginOptions = MarginOptions,\n> = {\n type: typeof Types.Margin\n version: 1\n options: U\n}\n\nexport type MarginDescriptor<\n _T = MarginPropControllerData,\n U extends MarginOptions = MarginOptions,\n> = MarginDescriptorV0<_T, U> | MarginDescriptorV1<_T, U>\n\nexport type ResolveMarginPropControllerValue<T extends MarginDescriptor> =\n T extends MarginDescriptor\n ? undefined extends ResolveOptions<T['options']>['format']\n ? ResponsiveMarginData | undefined\n : ResolveOptions<\n T['options']\n >['format'] extends typeof MarginPropControllerFormat.ClassName\n ? string\n : ResolveOptions<\n T['options']\n >['format'] extends typeof MarginPropControllerFormat.ResponsiveValue\n ? ResponsiveMarginData | undefined\n : never\n : never\n\n/**\n * @deprecated Imports from `@makeswift/prop-controllers` are deprecated. Use\n * `@makeswift/runtime/controls` instead.\n */\nexport function Margin<T extends MarginOptions>(\n options: T & MarginOptions = {} as T,\n): MarginDescriptor<MarginPropControllerData, T> {\n return { type: Types.Margin, version: 1, options }\n}\n\nMargin.Format = MarginPropControllerFormat\n\nexport function getMarginPropControllerDataResponsiveMarginData(\n data: MarginPropControllerData | undefined,\n): ResponsiveMarginData | undefined {\n return match(data)\n .with(\n { [ControlDataTypeKey]: MarginPropControllerDataV1Type },\n (v1) => v1.value,\n )\n .otherwise((v0) => v0)\n}\n\nexport function createMarginPropControllerDataFromResponsiveMarginData(\n responsiveMarginData: ResponsiveMarginData,\n definition?: MarginDescriptor,\n): MarginPropControllerData {\n return match(definition)\n .with(\n { version: 1 },\n P.nullish,\n () =>\n ({\n [ControlDataTypeKey]: MarginPropControllerDataV1Type,\n value: responsiveMarginData,\n }) as const,\n )\n .otherwise(() => responsiveMarginData)\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,wBAAyB;AACzB,8BAKO;AACP,iBAAkB;AAElB,MAAM,uBAAuB,aAAE,MAAM;AAAA,EACnC,aAAE,OAAO;AAAA,IACP,OAAO,aAAE,OAAO;AAAA,IAChB,MAAM,aAAE,QAAQ,IAAI;AAAA,EACtB,CAAC;AAAA,EACD,aAAE,QAAQ,MAAM;AAClB,CAAC;AAID,MAAM,mBAAmB,aACtB,OAAO;AAAA,EACN,WAAW,qBAAqB,SAAS,EAAE,SAAS;AAAA,EACpD,aAAa,qBAAqB,SAAS,EAAE,SAAS;AAAA,EACtD,cAAc,qBAAqB,SAAS,EAAE,SAAS;AAAA,EACvD,YAAY,qBAAqB,SAAS,EAAE,SAAS;AACvD,CAAC,EAEA,UAAU,CAAC,OAAO;AAAA,EACjB,WAAW,EAAE;AAAA,EACb,aAAa,EAAE;AAAA,EACf,cAAc,EAAE;AAAA,EAChB,YAAY,EAAE;AAChB,EAAE;AAIJ,MAAM,6BAA6B,+BAAO,gBAAgB,gBAAgB;AAI1E,MAAM,mCAAmC;AAMlC,MAAM,iCAAiC;AAE9C,MAAM,mCAAmC,aAAE,OAAO;AAAA,EAChD,CAAC,0CAAkB,GAAG,aAAE,QAAQ,8BAA8B;AAAA,EAC9D,OAAO;AACT,CAAC;AAMM,MAAM,iCAAiC,aAAE,MAAM;AAAA,EACpD;AAAA,EACA;AACF,CAAC;AAMM,MAAM,6BAA6B;AAAA,EACxC,WAAW;AAAA,EACX,iBACE;AACJ;AAmDO,SAAS,OACd,UAA6B,CAAC,GACiB;AAC/C,SAAO,EAAE,MAAM,8BAAM,QAAQ,SAAS,GAAG,QAAQ;AACnD;AAEA,OAAO,SAAS;AAET,SAAS,gDACd,MACkC;AAClC,aAAO,yBAAM,IAAI,EACd;AAAA,IACC,EAAE,CAAC,0CAAkB,GAAG,+BAA+B;AAAA,IACvD,CAAC,OAAO,GAAG;AAAA,EACb,EACC,UAAU,CAAC,OAAO,EAAE;AACzB;AAEO,SAAS,uDACd,sBACA,YAC0B;AAC1B,aAAO,yBAAM,UAAU,EACpB;AAAA,IACC,EAAE,SAAS,EAAE;AAAA,IACb,oBAAE;AAAA,IACF,OACG;AAAA,MACC,CAAC,0CAAkB,GAAG;AAAA,MACtB,OAAO;AAAA,IACT;AAAA,EACJ,EACC,UAAU,MAAM,oBAAoB;AACzC;","names":[]}
@@ -0,0 +1,23 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __copyProps = (to, from, except, desc) => {
7
+ if (from && typeof from === "object" || typeof from === "function") {
8
+ for (let key of __getOwnPropNames(from))
9
+ if (!__hasOwnProp.call(to, key) && key !== except)
10
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
11
+ }
12
+ return to;
13
+ };
14
+ var __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "default"), secondTarget && __copyProps(secondTarget, mod, "default"));
15
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
16
+ var navigation_links_exports = {};
17
+ module.exports = __toCommonJS(navigation_links_exports);
18
+ __reExport(navigation_links_exports, require("./navigation-links"), module.exports);
19
+ // Annotate the CommonJS export names for ESM import in node:
20
+ 0 && (module.exports = {
21
+ ...require("./navigation-links")
22
+ });
23
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/navigation-links/index.ts"],"sourcesContent":["export * from './navigation-links'\n"],"mappings":";;;;;;;;;;;;;;;AAAA;AAAA;AAAA,qCAAc,+BAAd;","names":[]}
@@ -0,0 +1,226 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+ var navigation_links_exports = {};
20
+ __export(navigation_links_exports, {
21
+ NavigationLinks: () => NavigationLinks,
22
+ NavigationLinksPropControllerDataV1Type: () => NavigationLinksPropControllerDataV1Type,
23
+ copyNavigationLinksPropControllerData: () => copyNavigationLinksPropControllerData,
24
+ createNavigationLinksPropControllerDataFromNavigationLinksData: () => createNavigationLinksPropControllerDataFromNavigationLinksData,
25
+ getNavigationLinksPropControllerDataNavigationLinksData: () => getNavigationLinksPropControllerDataNavigationLinksData,
26
+ getNavigationLinksPropControllerPageIds: () => getNavigationLinksPropControllerPageIds,
27
+ getNavigationLinksPropControllerSwatchIds: () => getNavigationLinksPropControllerSwatchIds,
28
+ navigationLinksPropControllerDataSchema: () => navigationLinksPropControllerDataSchema
29
+ });
30
+ module.exports = __toCommonJS(navigation_links_exports);
31
+ var import_ts_pattern = require("ts-pattern");
32
+ var import_prop_controllers = require("../prop-controllers");
33
+ var import_zod = require("zod");
34
+ var import_data = require("../data");
35
+ var import_text_style = require("../text-style");
36
+ var import_link = require("../link");
37
+ var import_responsive_color = require("../responsive-color");
38
+ const buttonVariantSchema = import_zod.z.enum([
39
+ "flat",
40
+ "outline",
41
+ "shadow",
42
+ "clear",
43
+ "blocky",
44
+ "bubbly",
45
+ "skewed"
46
+ ]);
47
+ const buttonShapeSchema = import_zod.z.enum(["pill", "rounded", "square"]);
48
+ const buttonSizeSchema = import_zod.z.enum(["small", "medium", "large"]);
49
+ const navigationButtonSchema = import_zod.z.object({
50
+ id: import_zod.z.string(),
51
+ type: import_zod.z.literal("button"),
52
+ payload: import_zod.z.object({
53
+ label: import_zod.z.string(),
54
+ link: import_link.linkDataSchema.optional(),
55
+ variant: import_prop_controllers.Schema.responsiveValue(buttonVariantSchema).optional(),
56
+ shape: import_prop_controllers.Schema.responsiveValue(buttonShapeSchema).optional(),
57
+ size: import_prop_controllers.Schema.responsiveValue(buttonSizeSchema).optional(),
58
+ textColor: import_prop_controllers.Schema.responsiveValue(import_data.colorDataSchema).optional(),
59
+ color: import_prop_controllers.Schema.responsiveValue(import_data.colorDataSchema).optional(),
60
+ textStyle: import_prop_controllers.Schema.responsiveValue(import_text_style.textStyleDataSchema).optional()
61
+ })
62
+ });
63
+ const navigationDropdownCaretTypeSchema = import_zod.z.union([
64
+ import_zod.z.literal("caret"),
65
+ import_zod.z.literal("plus"),
66
+ import_zod.z.literal("arrow-down"),
67
+ import_zod.z.literal("chevron-down")
68
+ ]);
69
+ const navigationDropdownLinkSchema = import_zod.z.object({
70
+ id: import_zod.z.string(),
71
+ payload: import_zod.z.object({
72
+ label: import_zod.z.string(),
73
+ link: import_link.linkDataSchema.optional(),
74
+ color: import_prop_controllers.Schema.responsiveValue(import_data.colorDataSchema).optional(),
75
+ textStyle: import_prop_controllers.Schema.responsiveValue(import_text_style.textStyleDataSchema).optional()
76
+ })
77
+ });
78
+ const navigationDropdownSchema = import_zod.z.object({
79
+ id: import_zod.z.string(),
80
+ type: import_zod.z.literal("dropdown"),
81
+ payload: import_zod.z.object({
82
+ label: import_zod.z.string(),
83
+ caret: navigationDropdownCaretTypeSchema.optional(),
84
+ links: import_zod.z.array(navigationDropdownLinkSchema).optional(),
85
+ variant: import_prop_controllers.Schema.responsiveValue(buttonVariantSchema).optional(),
86
+ shape: import_prop_controllers.Schema.responsiveValue(buttonShapeSchema).optional(),
87
+ size: import_prop_controllers.Schema.responsiveValue(buttonSizeSchema).optional(),
88
+ textColor: import_prop_controllers.Schema.responsiveValue(import_data.colorDataSchema).optional(),
89
+ color: import_prop_controllers.Schema.responsiveValue(import_data.colorDataSchema).optional(),
90
+ textStyle: import_prop_controllers.Schema.responsiveValue(import_text_style.textStyleDataSchema).optional()
91
+ })
92
+ });
93
+ const navigationLinksDataSchema = import_zod.z.array(
94
+ import_zod.z.union([navigationButtonSchema, navigationDropdownSchema])
95
+ );
96
+ const navigationLinksPropControllerDataV0Schema = navigationLinksDataSchema;
97
+ const NavigationLinksPropControllerDataV1Type = "prop-controllers::navigation-links::v1";
98
+ const navigationLinksPropControllerDataV1Schema = import_zod.z.object({
99
+ [import_prop_controllers.ControlDataTypeKey]: import_zod.z.literal(NavigationLinksPropControllerDataV1Type),
100
+ value: navigationLinksDataSchema
101
+ });
102
+ const navigationLinksPropControllerDataSchema = import_zod.z.union([
103
+ navigationLinksPropControllerDataV0Schema,
104
+ navigationLinksPropControllerDataV1Schema
105
+ ]);
106
+ function NavigationLinks(options = {}) {
107
+ return { type: import_prop_controllers.Types.NavigationLinks, version: 1, options };
108
+ }
109
+ function getNavigationLinksPropControllerDataNavigationLinksData(data) {
110
+ return (0, import_ts_pattern.match)(data).with(
111
+ { [import_prop_controllers.ControlDataTypeKey]: NavigationLinksPropControllerDataV1Type },
112
+ (v1) => v1.value
113
+ ).otherwise((v0) => v0);
114
+ }
115
+ function createNavigationLinksPropControllerDataFromNavigationLinksData(navigationLinksData, definition) {
116
+ return (0, import_ts_pattern.match)(definition).with(
117
+ { version: 1 },
118
+ () => ({
119
+ [import_prop_controllers.ControlDataTypeKey]: NavigationLinksPropControllerDataV1Type,
120
+ value: navigationLinksData
121
+ })
122
+ ).otherwise(() => navigationLinksData);
123
+ }
124
+ function getNavigationLinksPropControllerPageIds(data) {
125
+ if (data == null)
126
+ return [];
127
+ const value = getNavigationLinksPropControllerDataNavigationLinksData(data);
128
+ return value?.flatMap((item) => {
129
+ switch (item.type) {
130
+ case "button": {
131
+ if (item.payload.link == null)
132
+ return [];
133
+ switch (item.payload.link.type) {
134
+ case "OPEN_PAGE":
135
+ return item.payload.link.payload.pageId == null ? [] : [item.payload.link.payload.pageId];
136
+ default:
137
+ return [];
138
+ }
139
+ }
140
+ case "dropdown": {
141
+ return item.payload.links?.flatMap((link) => {
142
+ if (link.payload.link == null)
143
+ return [];
144
+ switch (link.payload.link.type) {
145
+ case "OPEN_PAGE":
146
+ return link.payload.link.payload.pageId == null ? [] : [link.payload.link.payload.pageId];
147
+ default:
148
+ return [];
149
+ }
150
+ }) ?? [];
151
+ }
152
+ }
153
+ }) ?? [];
154
+ }
155
+ function getNavigationLinksPropControllerSwatchIds(data) {
156
+ if (data == null)
157
+ return [];
158
+ const value = getNavigationLinksPropControllerDataNavigationLinksData(data);
159
+ return value?.flatMap((item) => {
160
+ switch (item.type) {
161
+ case "button":
162
+ case "dropdown":
163
+ return [
164
+ ...item.payload.color?.map((override) => override.value).map((color) => color.swatchId) ?? [],
165
+ ...item.payload.textColor?.map((override) => override.value).map((color) => color.swatchId) ?? []
166
+ ];
167
+ }
168
+ }) ?? [];
169
+ }
170
+ function copyNavigationLinksData(data, context) {
171
+ return data?.map((item) => {
172
+ switch (item.type) {
173
+ case "button": {
174
+ const { color, link } = item.payload;
175
+ return {
176
+ ...item,
177
+ payload: {
178
+ ...item.payload,
179
+ link: (0, import_link.copyLinkData)(link, context),
180
+ color: color != null ? (0, import_responsive_color.copyResponsiveColorData)(color, context) : void 0
181
+ }
182
+ };
183
+ }
184
+ case "dropdown": {
185
+ const { color, links } = item.payload;
186
+ return {
187
+ ...item,
188
+ payload: {
189
+ ...item.payload,
190
+ links: links != null ? links.map((link) => ({
191
+ ...link,
192
+ payload: {
193
+ ...link.payload,
194
+ link: (0, import_link.copyLinkData)(link.payload.link, context)
195
+ }
196
+ })) : void 0,
197
+ color: color != null ? (0, import_responsive_color.copyResponsiveColorData)(color, context) : void 0
198
+ }
199
+ };
200
+ }
201
+ default:
202
+ return item;
203
+ }
204
+ });
205
+ }
206
+ function copyNavigationLinksPropControllerData(data, context) {
207
+ return (0, import_ts_pattern.match)(data).with(void 0, () => void 0).with(
208
+ { [import_prop_controllers.ControlDataTypeKey]: NavigationLinksPropControllerDataV1Type },
209
+ (v1) => ({
210
+ [import_prop_controllers.ControlDataTypeKey]: NavigationLinksPropControllerDataV1Type,
211
+ value: copyNavigationLinksData(v1.value, context)
212
+ })
213
+ ).otherwise((v0) => copyNavigationLinksData(v0, context));
214
+ }
215
+ // Annotate the CommonJS export names for ESM import in node:
216
+ 0 && (module.exports = {
217
+ NavigationLinks,
218
+ NavigationLinksPropControllerDataV1Type,
219
+ copyNavigationLinksPropControllerData,
220
+ createNavigationLinksPropControllerDataFromNavigationLinksData,
221
+ getNavigationLinksPropControllerDataNavigationLinksData,
222
+ getNavigationLinksPropControllerPageIds,
223
+ getNavigationLinksPropControllerSwatchIds,
224
+ navigationLinksPropControllerDataSchema
225
+ });
226
+ //# sourceMappingURL=navigation-links.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/navigation-links/navigation-links.ts"],"sourcesContent":["import { match } from 'ts-pattern'\nimport {\n ControlDataTypeKey,\n CopyContext,\n Options,\n Types,\n Schema,\n} from '../prop-controllers'\nimport { z } from 'zod'\nimport { colorDataSchema } from '../data'\nimport { textStyleDataSchema } from '../text-style'\nimport { copyLinkData, linkDataSchema } from '../link'\nimport { copyResponsiveColorData } from '../responsive-color'\n\nconst buttonVariantSchema = z.enum([\n 'flat',\n 'outline',\n 'shadow',\n 'clear',\n 'blocky',\n 'bubbly',\n 'skewed',\n])\n\nconst buttonShapeSchema = z.enum(['pill', 'rounded', 'square'])\n\nconst buttonSizeSchema = z.enum(['small', 'medium', 'large'])\n\nconst navigationButtonSchema = z.object({\n id: z.string(),\n type: z.literal('button'),\n payload: z.object({\n label: z.string(),\n link: linkDataSchema.optional(),\n variant: Schema.responsiveValue(buttonVariantSchema).optional(),\n shape: Schema.responsiveValue(buttonShapeSchema).optional(),\n size: Schema.responsiveValue(buttonSizeSchema).optional(),\n textColor: Schema.responsiveValue(colorDataSchema).optional(),\n color: Schema.responsiveValue(colorDataSchema).optional(),\n textStyle: Schema.responsiveValue(textStyleDataSchema).optional(),\n }),\n})\n\nexport type NavigationButtonData = z.infer<typeof navigationButtonSchema>\n\nconst navigationDropdownCaretTypeSchema = z.union([\n z.literal('caret'),\n z.literal('plus'),\n z.literal('arrow-down'),\n z.literal('chevron-down'),\n])\n\nconst navigationDropdownLinkSchema = z.object({\n id: z.string(),\n payload: z.object({\n label: z.string(),\n link: linkDataSchema.optional(),\n color: Schema.responsiveValue(colorDataSchema).optional(),\n textStyle: Schema.responsiveValue(textStyleDataSchema).optional(),\n }),\n})\n\nconst navigationDropdownSchema = z.object({\n id: z.string(),\n type: z.literal('dropdown'),\n payload: z.object({\n label: z.string(),\n caret: navigationDropdownCaretTypeSchema.optional(),\n links: z.array(navigationDropdownLinkSchema).optional(),\n variant: Schema.responsiveValue(buttonVariantSchema).optional(),\n shape: Schema.responsiveValue(buttonShapeSchema).optional(),\n size: Schema.responsiveValue(buttonSizeSchema).optional(),\n textColor: Schema.responsiveValue(colorDataSchema).optional(),\n color: Schema.responsiveValue(colorDataSchema).optional(),\n textStyle: Schema.responsiveValue(textStyleDataSchema).optional(),\n }),\n})\n\nexport type NavigationDropdownData = z.infer<typeof navigationDropdownSchema>\n\nconst navigationLinksDataSchema = z.array(\n z.union([navigationButtonSchema, navigationDropdownSchema]),\n)\n\nexport type NavigationLinksData = z.infer<typeof navigationLinksDataSchema>\n\nconst navigationLinksPropControllerDataV0Schema = navigationLinksDataSchema\n\nexport type NavigationLinksPropControllerDataV0 = z.infer<\n typeof navigationLinksPropControllerDataV0Schema\n>\n\nexport const NavigationLinksPropControllerDataV1Type =\n 'prop-controllers::navigation-links::v1'\n\nconst navigationLinksPropControllerDataV1Schema = z.object({\n [ControlDataTypeKey]: z.literal(NavigationLinksPropControllerDataV1Type),\n value: navigationLinksDataSchema,\n})\n\nexport type NavigationLinksPropControllerDataV1 = z.infer<\n typeof navigationLinksPropControllerDataV1Schema\n>\n\nexport const navigationLinksPropControllerDataSchema = z.union([\n navigationLinksPropControllerDataV0Schema,\n navigationLinksPropControllerDataV1Schema,\n])\n\nexport type NavigationLinksPropControllerData = z.infer<\n typeof navigationLinksPropControllerDataSchema\n>\n\ntype NavigationLinksOptions = Options<Record<string, never>>\n\ntype NavigationLinksDescriptorV0<\n _T = NavigationLinksPropControllerDataV0,\n U extends NavigationLinksOptions = NavigationLinksOptions,\n> = {\n type: typeof Types.NavigationLinks\n options: U\n}\n\ntype NavigationLinksDescriptorV1<\n _T = NavigationLinksPropControllerData,\n U extends NavigationLinksOptions = NavigationLinksOptions,\n> = {\n type: typeof Types.NavigationLinks\n version: 1\n options: U\n}\n\nexport type NavigationLinksDescriptor<\n _T = NavigationLinksPropControllerData,\n U extends NavigationLinksOptions = NavigationLinksOptions,\n> = NavigationLinksDescriptorV0<_T, U> | NavigationLinksDescriptorV1<_T, U>\n\nexport type ResolveNavigationLinksPropControllerValue<\n T extends NavigationLinksDescriptor,\n> = T extends NavigationLinksDescriptor\n ? NavigationLinksData | undefined\n : never\n\n/**\n * @deprecated Imports from `@makeswift/prop-controllers` are deprecated. Use\n * `@makeswift/runtime/controls` instead.\n */\nexport function NavigationLinks(\n options: NavigationLinksOptions = {},\n): NavigationLinksDescriptor<NavigationLinksPropControllerData> {\n return { type: Types.NavigationLinks, version: 1, options }\n}\n\nexport function getNavigationLinksPropControllerDataNavigationLinksData(\n data: NavigationLinksPropControllerData | undefined,\n): NavigationLinksData | undefined {\n return match(data)\n .with(\n { [ControlDataTypeKey]: NavigationLinksPropControllerDataV1Type },\n (v1) => v1.value,\n )\n .otherwise((v0) => v0)\n}\n\nexport function createNavigationLinksPropControllerDataFromNavigationLinksData(\n navigationLinksData: NavigationLinksData,\n definition: NavigationLinksDescriptor,\n): NavigationLinksPropControllerData {\n return match(definition)\n .with(\n { version: 1 },\n () =>\n ({\n [ControlDataTypeKey]: NavigationLinksPropControllerDataV1Type,\n value: navigationLinksData,\n }) as const,\n )\n .otherwise(() => navigationLinksData)\n}\n\nexport function getNavigationLinksPropControllerPageIds(\n data: NavigationLinksPropControllerData | null | undefined,\n): string[] {\n if (data == null) return []\n\n const value = getNavigationLinksPropControllerDataNavigationLinksData(data)\n\n return (\n value?.flatMap((item) => {\n switch (item.type) {\n case 'button': {\n if (item.payload.link == null) return []\n\n switch (item.payload.link.type) {\n case 'OPEN_PAGE':\n return item.payload.link.payload.pageId == null\n ? []\n : [item.payload.link.payload.pageId]\n\n default:\n return []\n }\n }\n\n case 'dropdown': {\n return (\n item.payload.links?.flatMap((link) => {\n if (link.payload.link == null) return []\n\n switch (link.payload.link.type) {\n case 'OPEN_PAGE':\n return link.payload.link.payload.pageId == null\n ? []\n : [link.payload.link.payload.pageId]\n\n default:\n return []\n }\n }) ?? []\n )\n }\n }\n }) ?? []\n )\n}\n\nexport function getNavigationLinksPropControllerSwatchIds(\n data: NavigationLinksPropControllerData | null | undefined,\n): string[] {\n if (data == null) return []\n\n const value = getNavigationLinksPropControllerDataNavigationLinksData(data)\n\n return (\n value?.flatMap((item) => {\n switch (item.type) {\n case 'button':\n case 'dropdown':\n return [\n ...(item.payload.color\n ?.map((override) => override.value)\n .map((color) => color.swatchId) ?? []),\n ...(item.payload.textColor\n ?.map((override) => override.value)\n .map((color) => color.swatchId) ?? []),\n ]\n }\n }) ?? []\n )\n}\n\nfunction copyNavigationLinksData(\n data: NavigationLinksData,\n context: CopyContext,\n): NavigationLinksData {\n return data?.map((item) => {\n switch (item.type) {\n case 'button': {\n const { color, link } = item.payload\n\n return {\n ...item,\n payload: {\n ...item.payload,\n link: copyLinkData(link, context),\n color:\n color != null\n ? copyResponsiveColorData(color, context)\n : undefined,\n },\n }\n }\n\n case 'dropdown': {\n const { color, links } = item.payload\n\n return {\n ...item,\n payload: {\n ...item.payload,\n links:\n links != null\n ? links.map((link) => ({\n ...link,\n payload: {\n ...link.payload,\n link: copyLinkData(link.payload.link, context),\n },\n }))\n : undefined,\n color:\n color != null\n ? copyResponsiveColorData(color, context)\n : undefined,\n },\n }\n }\n\n default:\n return item\n }\n })\n}\n\nexport function copyNavigationLinksPropControllerData(\n data: NavigationLinksPropControllerData | undefined,\n context: CopyContext,\n): NavigationLinksPropControllerData | undefined {\n return match(data)\n .with(undefined, () => undefined)\n .with(\n { [ControlDataTypeKey]: NavigationLinksPropControllerDataV1Type },\n (v1) =>\n ({\n [ControlDataTypeKey]: NavigationLinksPropControllerDataV1Type,\n value: copyNavigationLinksData(v1.value, context),\n }) as const,\n )\n .otherwise((v0) => copyNavigationLinksData(v0, context))\n}\n"],"mappings":"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","names":[]}
@@ -0,0 +1,66 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+ var number_exports = {};
20
+ __export(number_exports, {
21
+ Number: () => Number,
22
+ createNumberPropControllerDataFromNumber: () => createNumberPropControllerDataFromNumber,
23
+ getNumberPropControllerDataNumber: () => getNumberPropControllerDataNumber,
24
+ numberPropControllerDataSchema: () => numberPropControllerDataSchema
25
+ });
26
+ module.exports = __toCommonJS(number_exports);
27
+ var import_zod = require("zod");
28
+ var import_prop_controllers = require("./prop-controllers");
29
+ var import_ts_pattern = require("ts-pattern");
30
+ const numberPropControllerDataV0Schema = import_zod.z.number();
31
+ const NumberPropControllerDataV1Type = "prop-controllers::number::v1";
32
+ const numberPropControllerDataV1Schema = import_zod.z.object({
33
+ [import_prop_controllers.ControlDataTypeKey]: import_zod.z.literal(NumberPropControllerDataV1Type),
34
+ value: import_zod.z.number()
35
+ });
36
+ const numberPropControllerDataSchema = import_zod.z.union([
37
+ numberPropControllerDataV0Schema,
38
+ numberPropControllerDataV1Schema
39
+ ]);
40
+ function Number(options = {}) {
41
+ return { type: import_prop_controllers.Types.Number, version: 1, options };
42
+ }
43
+ function getNumberPropControllerDataNumber(data) {
44
+ return (0, import_ts_pattern.match)(data).with(
45
+ { [import_prop_controllers.ControlDataTypeKey]: NumberPropControllerDataV1Type },
46
+ (v1) => v1.value
47
+ ).otherwise((v0) => v0);
48
+ }
49
+ function createNumberPropControllerDataFromNumber(value, definition) {
50
+ return (0, import_ts_pattern.match)(definition).with(
51
+ { version: 1 },
52
+ import_ts_pattern.P.nullish,
53
+ () => ({
54
+ [import_prop_controllers.ControlDataTypeKey]: NumberPropControllerDataV1Type,
55
+ value
56
+ })
57
+ ).otherwise(() => value);
58
+ }
59
+ // Annotate the CommonJS export names for ESM import in node:
60
+ 0 && (module.exports = {
61
+ Number,
62
+ createNumberPropControllerDataFromNumber,
63
+ getNumberPropControllerDataNumber,
64
+ numberPropControllerDataSchema
65
+ });
66
+ //# sourceMappingURL=number.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/number.ts"],"sourcesContent":["import { z } from 'zod'\nimport { ControlDataTypeKey, Options, Types } from './prop-controllers'\nimport { P, match } from 'ts-pattern'\n\nconst numberPropControllerDataV0Schema = z.number()\n\ntype NumberPropControllerDataV0 = z.infer<\n typeof numberPropControllerDataV0Schema\n>\n\nconst NumberPropControllerDataV1Type = 'prop-controllers::number::v1'\n\nconst numberPropControllerDataV1Schema = z.object({\n [ControlDataTypeKey]: z.literal(NumberPropControllerDataV1Type),\n value: z.number(),\n})\n\ntype NumberPropControllerDataV1 = z.infer<\n typeof numberPropControllerDataV1Schema\n>\n\nexport const numberPropControllerDataSchema = z.union([\n numberPropControllerDataV0Schema,\n numberPropControllerDataV1Schema,\n])\n\nexport type NumberPropControllerData = z.infer<\n typeof numberPropControllerDataSchema\n>\n\nexport type NumberOptions = Options<{\n preset?: NumberPropControllerData\n label?: string\n defaultValue?: number\n min?: number\n max?: number\n step?: number\n suffix?: string\n hidden?: boolean\n}>\n\ntype NumberDescriptorV0<_T = NumberPropControllerDataV0> = {\n type: typeof Types.Number\n options: NumberOptions\n}\n\ntype NumberDescriptorV1<_T = NumberPropControllerDataV1> = {\n type: typeof Types.Number\n version: 1\n options: NumberOptions\n}\n\nexport type NumberDescriptor<_T = NumberPropControllerData> =\n | NumberDescriptorV0\n | NumberDescriptorV1\n\nexport type ResolveNumberPropControllerValue<T extends NumberDescriptor> =\n T extends NumberDescriptor ? number | undefined : never\n\n/**\n * @deprecated Imports from `@makeswift/runtime/prop-controllers` are deprecated. Use\n * `@makeswift/runtime/controls` instead.\n */\nexport function Number(options: NumberOptions = {}): NumberDescriptorV1 {\n return { type: Types.Number, version: 1, options }\n}\n\nexport function getNumberPropControllerDataNumber(\n data: NumberPropControllerData,\n): number {\n return match(data)\n .with(\n { [ControlDataTypeKey]: NumberPropControllerDataV1Type },\n (v1) => v1.value,\n )\n .otherwise((v0) => v0)\n}\n\nexport function createNumberPropControllerDataFromNumber(\n value: number,\n definition?: NumberDescriptor,\n): NumberPropControllerData {\n return match(definition)\n .with(\n { version: 1 },\n P.nullish,\n () =>\n ({\n [ControlDataTypeKey]: NumberPropControllerDataV1Type,\n value,\n } as const),\n )\n .otherwise(() => value)\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,iBAAkB;AAClB,8BAAmD;AACnD,wBAAyB;AAEzB,MAAM,mCAAmC,aAAE,OAAO;AAMlD,MAAM,iCAAiC;AAEvC,MAAM,mCAAmC,aAAE,OAAO;AAAA,EAChD,CAAC,0CAAkB,GAAG,aAAE,QAAQ,8BAA8B;AAAA,EAC9D,OAAO,aAAE,OAAO;AAClB,CAAC;AAMM,MAAM,iCAAiC,aAAE,MAAM;AAAA,EACpD;AAAA,EACA;AACF,CAAC;AAuCM,SAAS,OAAO,UAAyB,CAAC,GAAuB;AACtE,SAAO,EAAE,MAAM,8BAAM,QAAQ,SAAS,GAAG,QAAQ;AACnD;AAEO,SAAS,kCACd,MACQ;AACR,aAAO,yBAAM,IAAI,EACd;AAAA,IACC,EAAE,CAAC,0CAAkB,GAAG,+BAA+B;AAAA,IACvD,CAAC,OAAO,GAAG;AAAA,EACb,EACC,UAAU,CAAC,OAAO,EAAE;AACzB;AAEO,SAAS,yCACd,OACA,YAC0B;AAC1B,aAAO,yBAAM,UAAU,EACpB;AAAA,IACC,EAAE,SAAS,EAAE;AAAA,IACb,oBAAE;AAAA,IACF,OACG;AAAA,MACC,CAAC,0CAAkB,GAAG;AAAA,MACtB;AAAA,IACF;AAAA,EACJ,EACC,UAAU,MAAM,KAAK;AAC1B;","names":[]}
@@ -0,0 +1,23 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __copyProps = (to, from, except, desc) => {
7
+ if (from && typeof from === "object" || typeof from === "function") {
8
+ for (let key of __getOwnPropNames(from))
9
+ if (!__hasOwnProp.call(to, key) && key !== except)
10
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
11
+ }
12
+ return to;
13
+ };
14
+ var __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "default"), secondTarget && __copyProps(secondTarget, mod, "default"));
15
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
16
+ var padding_exports = {};
17
+ module.exports = __toCommonJS(padding_exports);
18
+ __reExport(padding_exports, require("./padding"), module.exports);
19
+ // Annotate the CommonJS export names for ESM import in node:
20
+ 0 && (module.exports = {
21
+ ...require("./padding")
22
+ });
23
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/padding/index.ts"],"sourcesContent":["export * from './padding'\n"],"mappings":";;;;;;;;;;;;;;;AAAA;AAAA;AAAA,4BAAc,sBAAd;","names":[]}
@@ -0,0 +1,91 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+ var padding_exports = {};
20
+ __export(padding_exports, {
21
+ Padding: () => Padding,
22
+ PaddingPropControllerDataV1Type: () => PaddingPropControllerDataV1Type,
23
+ PaddingPropControllerFormat: () => PaddingPropControllerFormat,
24
+ createPaddingPropControllerDataFromResponsivePaddingData: () => createPaddingPropControllerDataFromResponsivePaddingData,
25
+ getPaddingPropControllerDataResponsivePaddingData: () => getPaddingPropControllerDataResponsivePaddingData,
26
+ paddingPropControllerDataSchema: () => paddingPropControllerDataSchema
27
+ });
28
+ module.exports = __toCommonJS(padding_exports);
29
+ var import_ts_pattern = require("ts-pattern");
30
+ var import_prop_controllers = require("../prop-controllers");
31
+ var import_zod = require("zod");
32
+ const paddingSideDataSchema = import_zod.z.object({
33
+ value: import_zod.z.number(),
34
+ unit: import_zod.z.literal("px")
35
+ });
36
+ const paddingDataSchema = import_zod.z.object({
37
+ paddingTop: paddingSideDataSchema.nullable().optional(),
38
+ paddingRight: paddingSideDataSchema.nullable().optional(),
39
+ paddingBottom: paddingSideDataSchema.nullable().optional(),
40
+ paddingLeft: paddingSideDataSchema.nullable().optional()
41
+ }).transform((v) => ({
42
+ paddingTop: v.paddingTop,
43
+ paddingRight: v.paddingRight,
44
+ paddingBottom: v.paddingBottom,
45
+ paddingLeft: v.paddingLeft
46
+ }));
47
+ const responsivePaddingDataSchema = import_prop_controllers.Schema.responsiveValue(paddingDataSchema);
48
+ const paddingPropControllerDataV0Schema = responsivePaddingDataSchema;
49
+ const PaddingPropControllerDataV1Type = "prop-controllers::padding::v1";
50
+ const paddingPropControllerDataV1Schema = import_zod.z.object({
51
+ [import_prop_controllers.ControlDataTypeKey]: import_zod.z.literal(PaddingPropControllerDataV1Type),
52
+ value: responsivePaddingDataSchema
53
+ });
54
+ const paddingPropControllerDataSchema = import_zod.z.union([
55
+ paddingPropControllerDataV0Schema,
56
+ paddingPropControllerDataV1Schema
57
+ ]);
58
+ const PaddingPropControllerFormat = {
59
+ ClassName: "makeswift::prop-controllers::padding::format::class-name",
60
+ ResponsiveValue: "makeswift::prop-controllers::padding::format::responsive-value"
61
+ };
62
+ function Padding(options = {}) {
63
+ return { type: import_prop_controllers.Types.Padding, version: 1, options };
64
+ }
65
+ Padding.Format = PaddingPropControllerFormat;
66
+ function getPaddingPropControllerDataResponsivePaddingData(data) {
67
+ return (0, import_ts_pattern.match)(data).with(
68
+ { [import_prop_controllers.ControlDataTypeKey]: PaddingPropControllerDataV1Type },
69
+ (v1) => v1.value
70
+ ).otherwise((v0) => v0);
71
+ }
72
+ function createPaddingPropControllerDataFromResponsivePaddingData(responsivePaddingData, definition) {
73
+ return (0, import_ts_pattern.match)(definition).with(
74
+ { version: 1 },
75
+ import_ts_pattern.P.nullish,
76
+ () => ({
77
+ [import_prop_controllers.ControlDataTypeKey]: PaddingPropControllerDataV1Type,
78
+ value: responsivePaddingData
79
+ })
80
+ ).otherwise(() => responsivePaddingData);
81
+ }
82
+ // Annotate the CommonJS export names for ESM import in node:
83
+ 0 && (module.exports = {
84
+ Padding,
85
+ PaddingPropControllerDataV1Type,
86
+ PaddingPropControllerFormat,
87
+ createPaddingPropControllerDataFromResponsivePaddingData,
88
+ getPaddingPropControllerDataResponsivePaddingData,
89
+ paddingPropControllerDataSchema
90
+ });
91
+ //# sourceMappingURL=padding.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/padding/padding.ts"],"sourcesContent":["import { P, match } from 'ts-pattern'\nimport {\n ControlDataTypeKey,\n ResolveOptions,\n Types,\n Schema,\n} from '../prop-controllers'\nimport { z } from 'zod'\n\nconst paddingSideDataSchema = z.object({\n value: z.number(),\n unit: z.literal('px'),\n})\n\nexport type PaddingSideData = z.infer<typeof paddingSideDataSchema>\n\nconst paddingDataSchema = z\n .object({\n paddingTop: paddingSideDataSchema.nullable().optional(),\n paddingRight: paddingSideDataSchema.nullable().optional(),\n paddingBottom: paddingSideDataSchema.nullable().optional(),\n paddingLeft: paddingSideDataSchema.nullable().optional(),\n })\n // To make the key required.\n .transform((v) => ({\n paddingTop: v.paddingTop,\n paddingRight: v.paddingRight,\n paddingBottom: v.paddingBottom,\n paddingLeft: v.paddingLeft,\n }))\n\nexport type PaddingData = z.infer<typeof paddingDataSchema>\n\nconst responsivePaddingDataSchema = Schema.responsiveValue(paddingDataSchema)\n\nexport type ResponsivePaddingData = z.infer<typeof responsivePaddingDataSchema>\n\nconst paddingPropControllerDataV0Schema = responsivePaddingDataSchema\n\nexport type PaddingPropControllerDataV0 = z.infer<\n typeof paddingPropControllerDataV0Schema\n>\n\nexport const PaddingPropControllerDataV1Type = 'prop-controllers::padding::v1'\n\nconst paddingPropControllerDataV1Schema = z.object({\n [ControlDataTypeKey]: z.literal(PaddingPropControllerDataV1Type),\n value: responsivePaddingDataSchema,\n})\n\nexport type PaddingPropControllerDataV1 = z.infer<\n typeof paddingPropControllerDataV1Schema\n>\n\nexport const paddingPropControllerDataSchema = z.union([\n paddingPropControllerDataV0Schema,\n paddingPropControllerDataV1Schema,\n])\n\nexport type PaddingPropControllerData = z.infer<\n typeof paddingPropControllerDataSchema\n>\n\nexport const PaddingPropControllerFormat = {\n ClassName: 'makeswift::prop-controllers::padding::format::class-name',\n ResponsiveValue:\n 'makeswift::prop-controllers::padding::format::responsive-value',\n} as const\n\nexport type PaddingPropControllerFormat =\n (typeof PaddingPropControllerFormat)[keyof typeof PaddingPropControllerFormat]\n\ntype PaddingOptions = {\n preset?: PaddingPropControllerData\n format?: PaddingPropControllerFormat\n}\n\ntype PaddingDescriptorV0<\n _T = PaddingPropControllerDataV0,\n U extends PaddingOptions = PaddingOptions,\n> = {\n type: typeof Types.Padding\n options: U\n}\n\ntype PaddingDescriptorV1<\n _T = PaddingPropControllerData,\n U extends PaddingOptions = PaddingOptions,\n> = {\n type: typeof Types.Padding\n version: 1\n options: U\n}\n\nexport type PaddingDescriptor<\n _T = PaddingPropControllerData,\n U extends PaddingOptions = PaddingOptions,\n> = PaddingDescriptorV0<_T, U> | PaddingDescriptorV1<_T, U>\n\nexport type ResolvePaddingPropControllerValue<T extends PaddingDescriptor> =\n T extends PaddingDescriptor\n ? undefined extends ResolveOptions<T['options']>['format']\n ? ResponsivePaddingData | undefined\n : ResolveOptions<\n T['options']\n >['format'] extends typeof PaddingPropControllerFormat.ClassName\n ? string\n : ResolveOptions<\n T['options']\n >['format'] extends typeof PaddingPropControllerFormat.ResponsiveValue\n ? ResponsivePaddingData | undefined\n : never\n : never\n\n/**\n * @deprecated Imports from `@makeswift/prop-controllers` are deprecated. Use\n * `@makeswift/runtime/controls` instead.\n */\nexport function Padding<T extends PaddingOptions>(\n options: T & PaddingOptions = {} as T,\n): PaddingDescriptor<PaddingPropControllerData, T> {\n return { type: Types.Padding, version: 1, options }\n}\n\nPadding.Format = PaddingPropControllerFormat\n\nexport function getPaddingPropControllerDataResponsivePaddingData(\n data: PaddingPropControllerData | undefined,\n): ResponsivePaddingData | undefined {\n return match(data)\n .with(\n { [ControlDataTypeKey]: PaddingPropControllerDataV1Type },\n (v1) => v1.value,\n )\n .otherwise((v0) => v0)\n}\n\nexport function createPaddingPropControllerDataFromResponsivePaddingData(\n responsivePaddingData: ResponsivePaddingData,\n definition?: PaddingDescriptor,\n): PaddingPropControllerData {\n return match(definition)\n .with(\n { version: 1 },\n P.nullish,\n () =>\n ({\n [ControlDataTypeKey]: PaddingPropControllerDataV1Type,\n value: responsivePaddingData,\n }) as const,\n )\n .otherwise(() => responsivePaddingData)\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,wBAAyB;AACzB,8BAKO;AACP,iBAAkB;AAElB,MAAM,wBAAwB,aAAE,OAAO;AAAA,EACrC,OAAO,aAAE,OAAO;AAAA,EAChB,MAAM,aAAE,QAAQ,IAAI;AACtB,CAAC;AAID,MAAM,oBAAoB,aACvB,OAAO;AAAA,EACN,YAAY,sBAAsB,SAAS,EAAE,SAAS;AAAA,EACtD,cAAc,sBAAsB,SAAS,EAAE,SAAS;AAAA,EACxD,eAAe,sBAAsB,SAAS,EAAE,SAAS;AAAA,EACzD,aAAa,sBAAsB,SAAS,EAAE,SAAS;AACzD,CAAC,EAEA,UAAU,CAAC,OAAO;AAAA,EACjB,YAAY,EAAE;AAAA,EACd,cAAc,EAAE;AAAA,EAChB,eAAe,EAAE;AAAA,EACjB,aAAa,EAAE;AACjB,EAAE;AAIJ,MAAM,8BAA8B,+BAAO,gBAAgB,iBAAiB;AAI5E,MAAM,oCAAoC;AAMnC,MAAM,kCAAkC;AAE/C,MAAM,oCAAoC,aAAE,OAAO;AAAA,EACjD,CAAC,0CAAkB,GAAG,aAAE,QAAQ,+BAA+B;AAAA,EAC/D,OAAO;AACT,CAAC;AAMM,MAAM,kCAAkC,aAAE,MAAM;AAAA,EACrD;AAAA,EACA;AACF,CAAC;AAMM,MAAM,8BAA8B;AAAA,EACzC,WAAW;AAAA,EACX,iBACE;AACJ;AAmDO,SAAS,QACd,UAA8B,CAAC,GACkB;AACjD,SAAO,EAAE,MAAM,8BAAM,SAAS,SAAS,GAAG,QAAQ;AACpD;AAEA,QAAQ,SAAS;AAEV,SAAS,kDACd,MACmC;AACnC,aAAO,yBAAM,IAAI,EACd;AAAA,IACC,EAAE,CAAC,0CAAkB,GAAG,gCAAgC;AAAA,IACxD,CAAC,OAAO,GAAG;AAAA,EACb,EACC,UAAU,CAAC,OAAO,EAAE;AACzB;AAEO,SAAS,yDACd,uBACA,YAC2B;AAC3B,aAAO,yBAAM,UAAU,EACpB;AAAA,IACC,EAAE,SAAS,EAAE;AAAA,IACb,oBAAE;AAAA,IACF,OACG;AAAA,MACC,CAAC,0CAAkB,GAAG;AAAA,MACtB,OAAO;AAAA,IACT;AAAA,EACJ,EACC,UAAU,MAAM,qBAAqB;AAC1C;","names":[]}