@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,297 @@
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 backgrounds_exports = {};
20
+ __export(backgrounds_exports, {
21
+ Backgrounds: () => Backgrounds,
22
+ BackgroundsPropControllerDataV2Type: () => BackgroundsPropControllerDataV2Type,
23
+ backgroundImageDataSchema: () => backgroundImageDataSchema,
24
+ backgroundsPropControllerDataSchema: () => backgroundsPropControllerDataSchema,
25
+ copyBackgroundsPropControllerData: () => copyBackgroundsPropControllerData,
26
+ createBackgroundsPropControllerDataFromResponsiveBackgroundsData: () => createBackgroundsPropControllerDataFromResponsiveBackgroundsData,
27
+ getBackgroundsPropControllerDataResponsiveBackgroundsData: () => getBackgroundsPropControllerDataResponsiveBackgroundsData,
28
+ getBackgroundsPropControllerFileIds: () => getBackgroundsPropControllerFileIds,
29
+ getBackgroundsPropControllerSwatchIds: () => getBackgroundsPropControllerSwatchIds,
30
+ imageBackgroundDataSchema: () => imageBackgroundDataSchema
31
+ });
32
+ module.exports = __toCommonJS(backgrounds_exports);
33
+ var import_zod = require("zod");
34
+ var import_prop_controllers = require("../prop-controllers");
35
+ var import_ts_pattern = require("ts-pattern");
36
+ var import_data = require("../data");
37
+ const colorBackgroundDataSchema = import_zod.z.object({
38
+ type: import_zod.z.literal("color"),
39
+ id: import_zod.z.string(),
40
+ payload: import_data.colorDataSchema.nullable()
41
+ });
42
+ const gradientStopDataSchema = import_zod.z.object({
43
+ id: import_zod.z.string(),
44
+ location: import_zod.z.number(),
45
+ color: import_data.colorDataSchema.nullable()
46
+ });
47
+ const gradientDataSchema = import_zod.z.object({
48
+ angle: import_zod.z.number().optional(),
49
+ isRadial: import_zod.z.boolean().optional(),
50
+ stops: import_zod.z.array(gradientStopDataSchema)
51
+ });
52
+ const gradientBackgroundDataSchema = import_zod.z.object({
53
+ type: import_zod.z.literal("gradient"),
54
+ id: import_zod.z.string(),
55
+ payload: gradientDataSchema
56
+ });
57
+ const backgroundImagePositionDataSchema = import_zod.z.object({
58
+ x: import_zod.z.number(),
59
+ y: import_zod.z.number()
60
+ });
61
+ const backgroundSizeDataSchema = import_zod.z.union([
62
+ import_zod.z.literal("cover"),
63
+ import_zod.z.literal("contain"),
64
+ import_zod.z.literal("auto")
65
+ ]);
66
+ const backgroundImageRepeatDataSchema = import_zod.z.union([
67
+ import_zod.z.literal("no-repeat"),
68
+ import_zod.z.literal("repeat-x"),
69
+ import_zod.z.literal("repeat-y"),
70
+ import_zod.z.literal("repeat")
71
+ ]);
72
+ const backgroundImageV0DataSchema = import_zod.z.object({
73
+ imageId: import_data.imageDataV0Schema,
74
+ position: backgroundImagePositionDataSchema,
75
+ size: backgroundSizeDataSchema.optional(),
76
+ repeat: backgroundImageRepeatDataSchema.optional(),
77
+ opacity: import_zod.z.number().optional(),
78
+ parallax: import_zod.z.number().optional(),
79
+ priority: import_zod.z.boolean().optional()
80
+ });
81
+ const backgroundImageV1DataSchema = import_zod.z.object({
82
+ version: import_zod.z.literal(1),
83
+ image: import_data.imageDataV1Schema,
84
+ position: backgroundImagePositionDataSchema,
85
+ size: backgroundSizeDataSchema.optional(),
86
+ repeat: backgroundImageRepeatDataSchema.optional(),
87
+ opacity: import_zod.z.number().optional(),
88
+ parallax: import_zod.z.number().optional(),
89
+ priority: import_zod.z.boolean().optional()
90
+ });
91
+ const backgroundImageDataSchema = import_zod.z.union([
92
+ backgroundImageV0DataSchema,
93
+ backgroundImageV1DataSchema
94
+ ]);
95
+ const imageBackgroundV0DataSchema = import_zod.z.object({
96
+ type: import_zod.z.literal("image"),
97
+ id: import_zod.z.string(),
98
+ payload: backgroundImageV0DataSchema
99
+ });
100
+ const imageBackgroundV1DataSchema = import_zod.z.object({
101
+ type: import_zod.z.literal("image-v1"),
102
+ id: import_zod.z.string(),
103
+ payload: backgroundImageV1DataSchema
104
+ });
105
+ const imageBackgroundDataSchema = import_zod.z.union([
106
+ imageBackgroundV0DataSchema,
107
+ imageBackgroundV1DataSchema
108
+ ]);
109
+ const backgroundVideoAspectRatioDataSchema = import_zod.z.union([
110
+ import_zod.z.literal("wide"),
111
+ import_zod.z.literal("standard")
112
+ ]);
113
+ const backgroundVideoDataSchema = import_zod.z.object({
114
+ url: import_zod.z.string().optional(),
115
+ maskColor: import_data.colorDataSchema.nullable().optional(),
116
+ opacity: import_zod.z.number().optional(),
117
+ zoom: import_zod.z.number().optional(),
118
+ aspectRatio: backgroundVideoAspectRatioDataSchema.optional(),
119
+ parallax: import_zod.z.number().optional()
120
+ });
121
+ const videoBackgroundDataSchema = import_zod.z.object({
122
+ type: import_zod.z.literal("video"),
123
+ id: import_zod.z.string(),
124
+ payload: backgroundVideoDataSchema
125
+ });
126
+ const backgroundDataSchema = import_zod.z.union([
127
+ colorBackgroundDataSchema,
128
+ gradientBackgroundDataSchema,
129
+ imageBackgroundDataSchema,
130
+ videoBackgroundDataSchema
131
+ ]);
132
+ const responsiveBackgroundsDataSchema = import_prop_controllers.Schema.responsiveValue(
133
+ import_zod.z.array(backgroundDataSchema)
134
+ );
135
+ const backgroundsPropControllerDataV1Schema = responsiveBackgroundsDataSchema;
136
+ const BackgroundsPropControllerDataV2Type = "prop-controllers::backgrounds::v2";
137
+ const backgroundsPropControllerDataV2Schema = import_zod.z.object({
138
+ [import_prop_controllers.ControlDataTypeKey]: import_zod.z.literal(BackgroundsPropControllerDataV2Type),
139
+ value: responsiveBackgroundsDataSchema
140
+ });
141
+ const backgroundsPropControllerDataSchema = import_zod.z.union([
142
+ backgroundsPropControllerDataV1Schema,
143
+ backgroundsPropControllerDataV2Schema
144
+ ]);
145
+ function Backgrounds(options = {}) {
146
+ return { type: import_prop_controllers.Types.Backgrounds, version: 2, options };
147
+ }
148
+ function getBackgroundsPropControllerDataResponsiveBackgroundsData(data) {
149
+ return (0, import_ts_pattern.match)(data).with(
150
+ { [import_prop_controllers.ControlDataTypeKey]: BackgroundsPropControllerDataV2Type },
151
+ (v2) => v2.value
152
+ ).otherwise((v0) => v0);
153
+ }
154
+ function createBackgroundsPropControllerDataFromResponsiveBackgroundsData(data, definition) {
155
+ return (0, import_ts_pattern.match)(definition).with(
156
+ { version: 2 },
157
+ () => ({
158
+ [import_prop_controllers.ControlDataTypeKey]: BackgroundsPropControllerDataV2Type,
159
+ value: data
160
+ })
161
+ ).otherwise(() => data);
162
+ }
163
+ function getBackgroundsPropControllerFileIds(data) {
164
+ const value = getBackgroundsPropControllerDataResponsiveBackgroundsData(data);
165
+ return value?.flatMap((override) => override.value).flatMap((backgroundItem) => {
166
+ return (0, import_ts_pattern.match)(backgroundItem).with(
167
+ {
168
+ type: "image-v1",
169
+ payload: { image: { type: "makeswift-file" } }
170
+ },
171
+ (item) => [item.payload.image.id]
172
+ ).with({ type: "image", payload: { imageId: import_ts_pattern.P.string } }, (item) => [
173
+ item.payload.imageId
174
+ ]).otherwise(() => []);
175
+ }) ?? [];
176
+ }
177
+ function getBackgroundsPropControllerSwatchIds(data) {
178
+ const value = getBackgroundsPropControllerDataResponsiveBackgroundsData(data);
179
+ return value?.flatMap((override) => override.value).flatMap((backgroundItem) => {
180
+ switch (backgroundItem.type) {
181
+ case "color":
182
+ return backgroundItem.payload?.swatchId == null ? [] : [backgroundItem.payload.swatchId];
183
+ case "gradient":
184
+ return backgroundItem.payload.stops.flatMap(
185
+ (stop) => stop.color == null ? [] : stop.color.swatchId
186
+ );
187
+ default:
188
+ return [];
189
+ }
190
+ }) ?? [];
191
+ }
192
+ function copyResponsiveBackgroundsData(descriptor, data, context) {
193
+ if (data == null)
194
+ return data;
195
+ return data.map((override) => ({
196
+ ...override,
197
+ value: override.value.map((backgroundItem) => {
198
+ return (0, import_ts_pattern.match)([descriptor, backgroundItem]).with([import_ts_pattern.P.any, { type: "color" }], ([, item]) => {
199
+ return {
200
+ ...item,
201
+ payload: item.payload === null ? null : {
202
+ ...item.payload,
203
+ swatchId: context.replacementContext.swatchIds.get(
204
+ item.payload.swatchId
205
+ ) ?? item.payload.swatchId
206
+ }
207
+ };
208
+ }).with([import_ts_pattern.P.any, { type: "gradient" }], ([, item]) => {
209
+ return {
210
+ ...item,
211
+ payload: {
212
+ ...item.payload,
213
+ stops: item.payload.stops.map((stop) => ({
214
+ ...stop,
215
+ color: stop.color == null ? null : {
216
+ ...stop.color,
217
+ swatchId: context.replacementContext.swatchIds.get(
218
+ stop.color.swatchId
219
+ ) ?? stop.color.swatchId
220
+ }
221
+ }))
222
+ }
223
+ };
224
+ }).with(
225
+ [
226
+ { version: import_ts_pattern.P.when((v) => v && v >= 1) },
227
+ {
228
+ type: "image-v1",
229
+ payload: {
230
+ version: 1,
231
+ image: { type: "makeswift-file" }
232
+ }
233
+ }
234
+ ],
235
+ ([, item]) => {
236
+ return {
237
+ ...item,
238
+ payload: {
239
+ ...item.payload,
240
+ image: {
241
+ ...item.payload.image,
242
+ id: context.replacementContext.fileIds.get(
243
+ item.payload.image.id
244
+ ) ?? item.payload.image.id
245
+ }
246
+ }
247
+ };
248
+ }
249
+ ).with(
250
+ [import_ts_pattern.P.any, { type: "image", payload: { imageId: import_ts_pattern.P.string } }],
251
+ ([, item]) => {
252
+ return {
253
+ ...item,
254
+ payload: {
255
+ ...item.payload,
256
+ imageId: context.replacementContext.fileIds.get(
257
+ item.payload.imageId
258
+ ) ?? item.payload.imageId
259
+ }
260
+ };
261
+ }
262
+ ).otherwise(() => backgroundItem);
263
+ })
264
+ }));
265
+ }
266
+ function copyBackgroundsPropControllerData(descriptor, data, context) {
267
+ return (0, import_ts_pattern.match)(data).with(void 0, () => void 0).with(
268
+ { [import_prop_controllers.ControlDataTypeKey]: BackgroundsPropControllerDataV2Type },
269
+ (v1) => {
270
+ const value = copyResponsiveBackgroundsData(
271
+ descriptor,
272
+ v1.value,
273
+ context
274
+ );
275
+ if (value == null)
276
+ return void 0;
277
+ return {
278
+ [import_prop_controllers.ControlDataTypeKey]: BackgroundsPropControllerDataV2Type,
279
+ value
280
+ };
281
+ }
282
+ ).otherwise((v0) => copyResponsiveBackgroundsData(descriptor, v0, context));
283
+ }
284
+ // Annotate the CommonJS export names for ESM import in node:
285
+ 0 && (module.exports = {
286
+ Backgrounds,
287
+ BackgroundsPropControllerDataV2Type,
288
+ backgroundImageDataSchema,
289
+ backgroundsPropControllerDataSchema,
290
+ copyBackgroundsPropControllerData,
291
+ createBackgroundsPropControllerDataFromResponsiveBackgroundsData,
292
+ getBackgroundsPropControllerDataResponsiveBackgroundsData,
293
+ getBackgroundsPropControllerFileIds,
294
+ getBackgroundsPropControllerSwatchIds,
295
+ imageBackgroundDataSchema
296
+ });
297
+ //# sourceMappingURL=backgrounds.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/backgrounds/backgrounds.ts"],"sourcesContent":["import { z } from 'zod'\nimport {\n ControlDataTypeKey,\n CopyContext,\n Options,\n Types,\n Schema,\n} from '../prop-controllers'\nimport { P, match } from 'ts-pattern'\nimport { colorDataSchema, imageDataV0Schema, imageDataV1Schema } from '../data'\n\nconst colorBackgroundDataSchema = z.object({\n type: z.literal('color'),\n id: z.string(),\n payload: colorDataSchema.nullable(),\n})\n\nconst gradientStopDataSchema = z.object({\n id: z.string(),\n location: z.number(),\n color: colorDataSchema.nullable(),\n})\n\nconst gradientDataSchema = z.object({\n angle: z.number().optional(),\n isRadial: z.boolean().optional(),\n stops: z.array(gradientStopDataSchema),\n})\n\nconst gradientBackgroundDataSchema = z.object({\n type: z.literal('gradient'),\n id: z.string(),\n payload: gradientDataSchema,\n})\n\nconst backgroundImagePositionDataSchema = z.object({\n x: z.number(),\n y: z.number(),\n})\n\nconst backgroundSizeDataSchema = z.union([\n z.literal('cover'),\n z.literal('contain'),\n z.literal('auto'),\n])\n\nconst backgroundImageRepeatDataSchema = z.union([\n z.literal('no-repeat'),\n z.literal('repeat-x'),\n z.literal('repeat-y'),\n z.literal('repeat'),\n])\n\nconst backgroundImageV0DataSchema = z.object({\n imageId: imageDataV0Schema,\n position: backgroundImagePositionDataSchema,\n size: backgroundSizeDataSchema.optional(),\n repeat: backgroundImageRepeatDataSchema.optional(),\n opacity: z.number().optional(),\n parallax: z.number().optional(),\n priority: z.boolean().optional(),\n})\n\nconst backgroundImageV1DataSchema = z.object({\n version: z.literal(1),\n image: imageDataV1Schema,\n position: backgroundImagePositionDataSchema,\n size: backgroundSizeDataSchema.optional(),\n repeat: backgroundImageRepeatDataSchema.optional(),\n opacity: z.number().optional(),\n parallax: z.number().optional(),\n priority: z.boolean().optional(),\n})\n\nexport const backgroundImageDataSchema = z.union([\n backgroundImageV0DataSchema,\n backgroundImageV1DataSchema,\n])\n\nexport type BackgroundImageData = z.infer<typeof backgroundImageDataSchema>\n\nconst imageBackgroundV0DataSchema = z.object({\n type: z.literal('image'),\n id: z.string(),\n payload: backgroundImageV0DataSchema,\n})\n\nconst imageBackgroundV1DataSchema = z.object({\n type: z.literal('image-v1'),\n id: z.string(),\n payload: backgroundImageV1DataSchema,\n})\n\nexport const imageBackgroundDataSchema = z.union([\n imageBackgroundV0DataSchema,\n imageBackgroundV1DataSchema,\n])\n\nexport type ImageBackgroundData = z.infer<typeof imageBackgroundDataSchema>\n\nconst backgroundVideoAspectRatioDataSchema = z.union([\n z.literal('wide'),\n z.literal('standard'),\n])\n\nconst backgroundVideoDataSchema = z.object({\n url: z.string().optional(),\n maskColor: colorDataSchema.nullable().optional(),\n opacity: z.number().optional(),\n zoom: z.number().optional(),\n aspectRatio: backgroundVideoAspectRatioDataSchema.optional(),\n parallax: z.number().optional(),\n})\n\nconst videoBackgroundDataSchema = z.object({\n type: z.literal('video'),\n id: z.string(),\n payload: backgroundVideoDataSchema,\n})\n\nconst backgroundDataSchema = z.union([\n colorBackgroundDataSchema,\n gradientBackgroundDataSchema,\n imageBackgroundDataSchema,\n videoBackgroundDataSchema,\n])\n\nexport type BackgroundData = z.infer<typeof backgroundDataSchema>\n\nconst responsiveBackgroundsDataSchema = Schema.responsiveValue(\n z.array(backgroundDataSchema),\n)\n\nexport type ResponsiveBackgroundsData = z.infer<\n typeof responsiveBackgroundsDataSchema\n>\n\nconst backgroundsPropControllerDataV1Schema = responsiveBackgroundsDataSchema\n\nexport type BackgroundsPropControllerDataV1 = z.infer<\n typeof backgroundsPropControllerDataV1Schema\n>\n\nexport const BackgroundsPropControllerDataV2Type =\n 'prop-controllers::backgrounds::v2'\n\nconst backgroundsPropControllerDataV2Schema = z.object({\n [ControlDataTypeKey]: z.literal(BackgroundsPropControllerDataV2Type),\n value: responsiveBackgroundsDataSchema,\n})\n\nexport type BackgroundsPropControllerDataV2 = z.infer<\n typeof backgroundsPropControllerDataV2Schema\n>\n\nexport const backgroundsPropControllerDataSchema = z.union([\n backgroundsPropControllerDataV1Schema,\n backgroundsPropControllerDataV2Schema,\n])\n\nexport type BackgroundsPropControllerData = z.infer<\n typeof backgroundsPropControllerDataSchema\n>\n\nexport type BackgroundsOptions = Options<Record<string, never>>\n\ntype BackgroundsDescriptorV1<_T = BackgroundsPropControllerDataV1> = {\n type: typeof Types.Backgrounds\n version?: 1\n options: BackgroundsOptions\n}\n\ntype BackgroundsDescriptorV2<_T = BackgroundsPropControllerData> = {\n type: typeof Types.Backgrounds\n version: 2\n options: BackgroundsOptions\n}\n\nexport type BackgroundsDescriptor<_T = BackgroundsPropControllerData> =\n | BackgroundsDescriptorV1\n | BackgroundsDescriptorV2\n\nexport type ResolveBackgroundsPropControllerValue<\n T extends BackgroundsDescriptor,\n> = T extends BackgroundsDescriptor\n ? ResponsiveBackgroundsData | undefined\n : never\n\n/**\n * @deprecated Imports from @makeswift/prop-controllers are deprecated. Use\n * @makeswift/runtime/controls instead.\n */\nexport function Backgrounds(\n options: BackgroundsOptions = {},\n): BackgroundsDescriptorV2 {\n return { type: Types.Backgrounds, version: 2, options }\n}\n\nexport function getBackgroundsPropControllerDataResponsiveBackgroundsData(\n data: BackgroundsPropControllerData | undefined,\n): ResponsiveBackgroundsData | undefined {\n return match(data)\n .with(\n { [ControlDataTypeKey]: BackgroundsPropControllerDataV2Type },\n (v2) => v2.value,\n )\n .otherwise((v0) => v0)\n}\n\nexport function createBackgroundsPropControllerDataFromResponsiveBackgroundsData(\n data: ResponsiveBackgroundsData,\n definition: BackgroundsDescriptor,\n): BackgroundsPropControllerData {\n return match(definition)\n .with(\n { version: 2 },\n () =>\n ({\n [ControlDataTypeKey]: BackgroundsPropControllerDataV2Type,\n value: data,\n }) as const,\n )\n .otherwise(() => data)\n}\n\nexport function getBackgroundsPropControllerFileIds(\n data: BackgroundsPropControllerData | undefined,\n): string[] {\n const value = getBackgroundsPropControllerDataResponsiveBackgroundsData(data)\n\n return (\n value\n ?.flatMap((override) => override.value)\n .flatMap((backgroundItem) => {\n return match(backgroundItem)\n .with(\n {\n type: 'image-v1',\n payload: { image: { type: 'makeswift-file' } },\n },\n (item) => [item.payload.image.id],\n )\n .with({ type: 'image', payload: { imageId: P.string } }, (item) => [\n item.payload.imageId,\n ])\n .otherwise(() => [])\n }) ?? []\n )\n}\n\nexport function getBackgroundsPropControllerSwatchIds(\n data: BackgroundsPropControllerData | undefined,\n): string[] {\n const value = getBackgroundsPropControllerDataResponsiveBackgroundsData(data)\n\n return (\n value\n ?.flatMap((override) => override.value)\n .flatMap((backgroundItem) => {\n switch (backgroundItem.type) {\n case 'color':\n return backgroundItem.payload?.swatchId == null\n ? []\n : [backgroundItem.payload.swatchId]\n\n case 'gradient':\n return backgroundItem.payload.stops.flatMap((stop) =>\n stop.color == null ? [] : stop.color.swatchId,\n )\n\n default:\n return []\n }\n }) ?? []\n )\n}\n\nfunction copyResponsiveBackgroundsData(\n descriptor: BackgroundsDescriptor,\n data: ResponsiveBackgroundsData | undefined,\n context: CopyContext,\n): ResponsiveBackgroundsData | undefined {\n if (data == null) return data\n\n return data.map((override) => ({\n ...override,\n value: override.value.map((backgroundItem) => {\n return match([descriptor, backgroundItem])\n .with([P.any, { type: 'color' }], ([, item]) => {\n return {\n ...item,\n payload:\n item.payload === null\n ? null\n : {\n ...item.payload,\n swatchId:\n context.replacementContext.swatchIds.get(\n item.payload.swatchId,\n ) ?? item.payload.swatchId,\n },\n }\n })\n .with([P.any, { type: 'gradient' }], ([, item]) => {\n return {\n ...item,\n payload: {\n ...item.payload,\n stops: item.payload.stops.map((stop) => ({\n ...stop,\n color:\n stop.color == null\n ? null\n : {\n ...stop.color,\n swatchId:\n context.replacementContext.swatchIds.get(\n stop.color.swatchId,\n ) ?? stop.color.swatchId,\n },\n })),\n },\n }\n })\n .with(\n [\n { version: P.when((v) => v && v >= 1) },\n {\n type: 'image-v1',\n payload: {\n version: 1,\n image: { type: 'makeswift-file' },\n },\n },\n ],\n ([, item]) => {\n return {\n ...item,\n payload: {\n ...item.payload,\n image: {\n ...item.payload.image,\n id:\n context.replacementContext.fileIds.get(\n item.payload.image.id,\n ) ?? item.payload.image.id,\n },\n },\n }\n },\n )\n .with(\n [P.any, { type: 'image', payload: { imageId: P.string } }],\n ([, item]) => {\n return {\n ...item,\n payload: {\n ...item.payload,\n imageId:\n context.replacementContext.fileIds.get(\n item.payload.imageId,\n ) ?? item.payload.imageId,\n },\n }\n },\n )\n .otherwise(() => backgroundItem)\n }),\n }))\n}\n\nexport function copyBackgroundsPropControllerData(\n descriptor: BackgroundsDescriptor,\n data: BackgroundsPropControllerData | undefined,\n context: CopyContext,\n): BackgroundsPropControllerData | undefined {\n return match(data)\n .with(undefined, () => undefined)\n .with(\n { [ControlDataTypeKey]: BackgroundsPropControllerDataV2Type },\n (v1) => {\n const value = copyResponsiveBackgroundsData(\n descriptor,\n v1.value,\n context,\n )\n\n if (value == null) return undefined\n\n return {\n [ControlDataTypeKey]: BackgroundsPropControllerDataV2Type,\n value,\n } as const\n },\n )\n .otherwise((v0) => copyResponsiveBackgroundsData(descriptor, v0, context))\n}\n"],"mappings":"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","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 backgrounds_exports = {};
17
+ module.exports = __toCommonJS(backgrounds_exports);
18
+ __reExport(backgrounds_exports, require("./backgrounds"), module.exports);
19
+ // Annotate the CommonJS export names for ESM import in node:
20
+ 0 && (module.exports = {
21
+ ...require("./backgrounds")
22
+ });
23
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/backgrounds/index.ts"],"sourcesContent":["export * from './backgrounds'\n"],"mappings":";;;;;;;;;;;;;;;AAAA;AAAA;AAAA,gCAAc,0BAAd;","names":[]}
@@ -0,0 +1,132 @@
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 border_exports = {};
20
+ __export(border_exports, {
21
+ Border: () => Border,
22
+ BorderPropControllerDataV1Type: () => BorderPropControllerDataV1Type,
23
+ BorderPropControllerFormat: () => BorderPropControllerFormat,
24
+ borderPropControllerDataSchema: () => borderPropControllerDataSchema,
25
+ copyBorderPropControllerData: () => copyBorderPropControllerData,
26
+ createBorderPropControllerDataFromResponsiveBorderData: () => createBorderPropControllerDataFromResponsiveBorderData,
27
+ getBorderPropControllerDataResponsiveBorderData: () => getBorderPropControllerDataResponsiveBorderData,
28
+ getBorderPropControllerDataSwatchIds: () => getBorderPropControllerDataSwatchIds
29
+ });
30
+ module.exports = __toCommonJS(border_exports);
31
+ var import_ts_pattern = require("ts-pattern");
32
+ var import_controls = require("@makeswift/controls");
33
+ var import_prop_controllers = require("../prop-controllers");
34
+ var import_zod = require("zod");
35
+ const responsiveBorderDataSchema = import_prop_controllers.Schema.responsiveValue(import_controls.StyleSchema.border);
36
+ const borderPropControllerDataV0Schema = responsiveBorderDataSchema;
37
+ const BorderPropControllerDataV1Type = "prop-controllers::border::v1";
38
+ const borderPropControllerDataV1Schema = import_zod.z.object({
39
+ [import_prop_controllers.ControlDataTypeKey]: import_zod.z.literal(BorderPropControllerDataV1Type),
40
+ value: responsiveBorderDataSchema
41
+ });
42
+ const borderPropControllerDataSchema = import_zod.z.union([
43
+ borderPropControllerDataV0Schema,
44
+ borderPropControllerDataV1Schema
45
+ ]);
46
+ const BorderPropControllerFormat = {
47
+ ClassName: "makeswift::prop-controllers::border::format::class-name",
48
+ ResponsiveValue: "makeswift::prop-controllers::border::format::responsive-value"
49
+ };
50
+ function Border(options = {}) {
51
+ return { type: import_prop_controllers.Types.Border, version: 1, options };
52
+ }
53
+ Border.Format = BorderPropControllerFormat;
54
+ function getBorderPropControllerDataResponsiveBorderData(data) {
55
+ return (0, import_ts_pattern.match)(data).with(
56
+ { [import_prop_controllers.ControlDataTypeKey]: BorderPropControllerDataV1Type },
57
+ (v1) => v1.value
58
+ ).otherwise((v0) => v0);
59
+ }
60
+ function createBorderPropControllerDataFromResponsiveBorderData(definition, responsiveBorderData) {
61
+ return (0, import_ts_pattern.match)(definition).with(
62
+ { version: 1 },
63
+ () => ({
64
+ [import_prop_controllers.ControlDataTypeKey]: BorderPropControllerDataV1Type,
65
+ value: responsiveBorderData
66
+ })
67
+ ).otherwise(() => responsiveBorderData);
68
+ }
69
+ function getBorderPropControllerDataSwatchIds(data) {
70
+ return getBorderPropControllerDataResponsiveBorderData(data)?.flatMap((override) => override.value).flatMap((borderValue) => {
71
+ return [
72
+ borderValue.borderTop?.color?.swatchId,
73
+ borderValue.borderRight?.color?.swatchId,
74
+ borderValue.borderBottom?.color?.swatchId,
75
+ borderValue.borderLeft?.color?.swatchId
76
+ ].filter(
77
+ (swatchId) => swatchId != null
78
+ );
79
+ }) ?? [];
80
+ }
81
+ function copyResponsiveBorderData(data, context) {
82
+ return data.map((override) => ({
83
+ ...override,
84
+ value: copyBorderValue(override.value)
85
+ }));
86
+ function copyBorderValue({
87
+ borderTop,
88
+ borderRight,
89
+ borderBottom,
90
+ borderLeft
91
+ }) {
92
+ return {
93
+ borderTop: borderTop && copyBorderSide(borderTop),
94
+ borderRight: borderRight && copyBorderSide(borderRight),
95
+ borderBottom: borderBottom && copyBorderSide(borderBottom),
96
+ borderLeft: borderLeft && copyBorderSide(borderLeft)
97
+ };
98
+ }
99
+ function copyBorderSide(borderSide) {
100
+ const { color } = borderSide;
101
+ if (color == null)
102
+ return borderSide;
103
+ return {
104
+ ...borderSide,
105
+ color: {
106
+ ...color,
107
+ swatchId: context.replacementContext.swatchIds.get(color.swatchId) ?? color.swatchId
108
+ }
109
+ };
110
+ }
111
+ }
112
+ function copyBorderPropControllerData(data, context) {
113
+ return (0, import_ts_pattern.match)(data).with(void 0, () => void 0).with(
114
+ { [import_prop_controllers.ControlDataTypeKey]: BorderPropControllerDataV1Type },
115
+ (v1) => ({
116
+ [import_prop_controllers.ControlDataTypeKey]: BorderPropControllerDataV1Type,
117
+ value: copyResponsiveBorderData(v1.value, context)
118
+ })
119
+ ).otherwise((v0) => copyResponsiveBorderData(v0, context));
120
+ }
121
+ // Annotate the CommonJS export names for ESM import in node:
122
+ 0 && (module.exports = {
123
+ Border,
124
+ BorderPropControllerDataV1Type,
125
+ BorderPropControllerFormat,
126
+ borderPropControllerDataSchema,
127
+ copyBorderPropControllerData,
128
+ createBorderPropControllerDataFromResponsiveBorderData,
129
+ getBorderPropControllerDataResponsiveBorderData,
130
+ getBorderPropControllerDataSwatchIds
131
+ });
132
+ //# sourceMappingURL=border.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/border/border.ts"],"sourcesContent":["import { match } from 'ts-pattern'\nimport { StyleSchema } from '@makeswift/controls'\n\nimport {\n ControlDataTypeKey,\n CopyContext,\n ResolveOptions,\n Types,\n Schema,\n} from '../prop-controllers'\n\nimport { z } from 'zod'\n\nconst responsiveBorderDataSchema = Schema.responsiveValue(StyleSchema.border)\n\nexport type ResponsiveBorderData = z.infer<typeof responsiveBorderDataSchema>\n\nconst borderPropControllerDataV0Schema = responsiveBorderDataSchema\n\nexport type BorderPropControllerDataV0 = z.infer<\n typeof borderPropControllerDataV0Schema\n>\n\nexport const BorderPropControllerDataV1Type = 'prop-controllers::border::v1'\n\nconst borderPropControllerDataV1Schema = z.object({\n [ControlDataTypeKey]: z.literal(BorderPropControllerDataV1Type),\n value: responsiveBorderDataSchema,\n})\n\nexport type BorderPropControllerDataV1 = z.infer<\n typeof borderPropControllerDataV1Schema\n>\n\nexport const borderPropControllerDataSchema = z.union([\n borderPropControllerDataV0Schema,\n borderPropControllerDataV1Schema,\n])\n\nexport type BorderPropControllerData = z.infer<\n typeof borderPropControllerDataSchema\n>\n\nexport const BorderPropControllerFormat = {\n ClassName: 'makeswift::prop-controllers::border::format::class-name',\n ResponsiveValue:\n 'makeswift::prop-controllers::border::format::responsive-value',\n} as const\n\nexport type BorderPropControllerFormat =\n (typeof BorderPropControllerFormat)[keyof typeof BorderPropControllerFormat]\n\ntype BorderOptions = { format?: BorderPropControllerFormat }\n\ntype BorderDescriptorV0<\n _T = BorderPropControllerDataV0,\n U extends BorderOptions = BorderOptions,\n> = {\n type: typeof Types.Border\n options: U\n}\n\ntype BorderDescriptorV1<\n _T = BorderPropControllerData,\n U extends BorderOptions = BorderOptions,\n> = {\n type: typeof Types.Border\n version: 1\n options: U\n}\n\nexport type BorderDescriptor<\n _T = BorderPropControllerData,\n U extends BorderOptions = BorderOptions,\n> = BorderDescriptorV0<_T, U> | BorderDescriptorV1<_T, U>\n\nexport type ResolveBorderPropControllerValue<T extends BorderDescriptor> =\n T extends BorderDescriptor\n ? undefined extends ResolveOptions<T['options']>['format']\n ? ResponsiveBorderData | undefined\n : ResolveOptions<\n T['options']\n >['format'] extends typeof BorderPropControllerFormat.ClassName\n ? string\n : ResolveOptions<\n T['options']\n >['format'] extends typeof BorderPropControllerFormat.ResponsiveValue\n ? ResponsiveBorderData | 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 Border<T extends BorderOptions>(\n options: T & BorderOptions = {} as T,\n): BorderDescriptor<BorderPropControllerData, T> {\n return { type: Types.Border, version: 1, options }\n}\n\nBorder.Format = BorderPropControllerFormat\n\nexport function getBorderPropControllerDataResponsiveBorderData(\n data: BorderPropControllerData | undefined,\n): ResponsiveBorderData | undefined {\n return match(data)\n .with(\n { [ControlDataTypeKey]: BorderPropControllerDataV1Type },\n (v1) => v1.value,\n )\n .otherwise((v0) => v0)\n}\n\nexport function createBorderPropControllerDataFromResponsiveBorderData(\n definition: BorderDescriptor,\n responsiveBorderData: ResponsiveBorderData,\n): BorderPropControllerData {\n return match(definition)\n .with(\n { version: 1 },\n () =>\n ({\n [ControlDataTypeKey]: BorderPropControllerDataV1Type,\n value: responsiveBorderData,\n }) as const,\n )\n .otherwise(() => responsiveBorderData)\n}\n\nexport function getBorderPropControllerDataSwatchIds(\n data: BorderPropControllerData | undefined,\n): string[] {\n return (\n getBorderPropControllerDataResponsiveBorderData(data)\n ?.flatMap((override) => override.value)\n .flatMap((borderValue) => {\n return [\n borderValue.borderTop?.color?.swatchId,\n borderValue.borderRight?.color?.swatchId,\n borderValue.borderBottom?.color?.swatchId,\n borderValue.borderLeft?.color?.swatchId,\n ].filter(\n (swatchId): swatchId is NonNullable<typeof swatchId> =>\n swatchId != null,\n )\n }) ?? []\n )\n}\n\nfunction copyResponsiveBorderData(\n data: ResponsiveBorderData,\n context: CopyContext,\n): ResponsiveBorderData {\n return data.map((override) => ({\n ...override,\n value: copyBorderValue(override.value),\n }))\n\n function copyBorderValue({\n borderTop,\n borderRight,\n borderBottom,\n borderLeft,\n }: any): any {\n return {\n borderTop: borderTop && copyBorderSide(borderTop),\n borderRight: borderRight && copyBorderSide(borderRight),\n borderBottom: borderBottom && copyBorderSide(borderBottom),\n borderLeft: borderLeft && copyBorderSide(borderLeft),\n }\n }\n\n function copyBorderSide(borderSide: any): any {\n const { color } = borderSide\n\n if (color == null) return borderSide\n\n return {\n ...borderSide,\n color: {\n ...color,\n swatchId:\n context.replacementContext.swatchIds.get(color.swatchId) ??\n color.swatchId,\n },\n }\n }\n}\n\nexport function copyBorderPropControllerData(\n data: BorderPropControllerData | undefined,\n context: CopyContext,\n): BorderPropControllerData | undefined {\n return match(data)\n .with(undefined, () => undefined)\n .with(\n { [ControlDataTypeKey]: BorderPropControllerDataV1Type },\n (v1) =>\n ({\n [ControlDataTypeKey]: BorderPropControllerDataV1Type,\n value: copyResponsiveBorderData(v1.value, context),\n }) as const,\n )\n .otherwise((v0) => copyResponsiveBorderData(v0, context))\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,wBAAsB;AACtB,sBAA4B;AAE5B,8BAMO;AAEP,iBAAkB;AAElB,MAAM,6BAA6B,+BAAO,gBAAgB,4BAAY,MAAM;AAI5E,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;AAgDO,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,YACA,sBAC0B;AAC1B,aAAO,yBAAM,UAAU,EACpB;AAAA,IACC,EAAE,SAAS,EAAE;AAAA,IACb,OACG;AAAA,MACC,CAAC,0CAAkB,GAAG;AAAA,MACtB,OAAO;AAAA,IACT;AAAA,EACJ,EACC,UAAU,MAAM,oBAAoB;AACzC;AAEO,SAAS,qCACd,MACU;AACV,SACE,gDAAgD,IAAI,GAChD,QAAQ,CAAC,aAAa,SAAS,KAAK,EACrC,QAAQ,CAAC,gBAAgB;AACxB,WAAO;AAAA,MACL,YAAY,WAAW,OAAO;AAAA,MAC9B,YAAY,aAAa,OAAO;AAAA,MAChC,YAAY,cAAc,OAAO;AAAA,MACjC,YAAY,YAAY,OAAO;AAAA,IACjC,EAAE;AAAA,MACA,CAAC,aACC,YAAY;AAAA,IAChB;AAAA,EACF,CAAC,KAAK,CAAC;AAEb;AAEA,SAAS,yBACP,MACA,SACsB;AACtB,SAAO,KAAK,IAAI,CAAC,cAAc;AAAA,IAC7B,GAAG;AAAA,IACH,OAAO,gBAAgB,SAAS,KAAK;AAAA,EACvC,EAAE;AAEF,WAAS,gBAAgB;AAAA,IACvB;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,GAAa;AACX,WAAO;AAAA,MACL,WAAW,aAAa,eAAe,SAAS;AAAA,MAChD,aAAa,eAAe,eAAe,WAAW;AAAA,MACtD,cAAc,gBAAgB,eAAe,YAAY;AAAA,MACzD,YAAY,cAAc,eAAe,UAAU;AAAA,IACrD;AAAA,EACF;AAEA,WAAS,eAAe,YAAsB;AAC5C,UAAM,EAAE,MAAM,IAAI;AAElB,QAAI,SAAS;AAAM,aAAO;AAE1B,WAAO;AAAA,MACL,GAAG;AAAA,MACH,OAAO;AAAA,QACL,GAAG;AAAA,QACH,UACE,QAAQ,mBAAmB,UAAU,IAAI,MAAM,QAAQ,KACvD,MAAM;AAAA,MACV;AAAA,IACF;AAAA,EACF;AACF;AAEO,SAAS,6BACd,MACA,SACsC;AACtC,aAAO,yBAAM,IAAI,EACd,KAAK,QAAW,MAAM,MAAS,EAC/B;AAAA,IACC,EAAE,CAAC,0CAAkB,GAAG,+BAA+B;AAAA,IACvD,CAAC,QACE;AAAA,MACC,CAAC,0CAAkB,GAAG;AAAA,MACtB,OAAO,yBAAyB,GAAG,OAAO,OAAO;AAAA,IACnD;AAAA,EACJ,EACC,UAAU,CAAC,OAAO,yBAAyB,IAAI,OAAO,CAAC;AAC5D;","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 border_exports = {};
17
+ module.exports = __toCommonJS(border_exports);
18
+ __reExport(border_exports, require("./border"), module.exports);
19
+ // Annotate the CommonJS export names for ESM import in node:
20
+ 0 && (module.exports = {
21
+ ...require("./border")
22
+ });
23
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/border/index.ts"],"sourcesContent":["export * from './border'\nexport { type BorderData, type BorderSideData } from '@makeswift/controls'\n"],"mappings":";;;;;;;;;;;;;;;AAAA;AAAA;AAAA,2BAAc,qBAAd;","names":[]}
@@ -0,0 +1,82 @@
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 border_radius_exports = {};
20
+ __export(border_radius_exports, {
21
+ BorderRadius: () => BorderRadius,
22
+ BorderRadiusPropControllerFormat: () => BorderRadiusPropControllerFormat,
23
+ borderRadiusPropControllerDataSchema: () => borderRadiusPropControllerDataSchema,
24
+ createBorderRadiusPropControllerDataFromResponsiveBorderRadiusData: () => createBorderRadiusPropControllerDataFromResponsiveBorderRadiusData,
25
+ getBorderRadiusPropControllerDataResponsiveBorderRadiusData: () => getBorderRadiusPropControllerDataResponsiveBorderRadiusData
26
+ });
27
+ module.exports = __toCommonJS(border_radius_exports);
28
+ var import_zod = require("zod");
29
+ var import_prop_controllers = require("../prop-controllers");
30
+ var import_data = require("../data");
31
+ var import_ts_pattern = require("ts-pattern");
32
+ const borderRadiusDataSchema = import_zod.z.object({
33
+ borderTopLeftRadius: import_data.lengthDataSchema.nullable().optional(),
34
+ borderTopRightRadius: import_data.lengthDataSchema.nullable().optional(),
35
+ borderBottomLeftRadius: import_data.lengthDataSchema.nullable().optional(),
36
+ borderBottomRightRadius: import_data.lengthDataSchema.nullable().optional()
37
+ });
38
+ const responsiveBorderRadiusDataSchema = import_prop_controllers.Schema.responsiveValue(
39
+ borderRadiusDataSchema
40
+ );
41
+ const borderRadiusPropControllerDataV0Schema = responsiveBorderRadiusDataSchema;
42
+ const BorderRadiusPropControllerDataV1Type = "prop-controllers::border-radius::v1";
43
+ const borderRadiusPropControllerDataV1Schema = import_zod.z.object({
44
+ [import_prop_controllers.ControlDataTypeKey]: import_zod.z.literal(BorderRadiusPropControllerDataV1Type),
45
+ value: responsiveBorderRadiusDataSchema
46
+ });
47
+ const borderRadiusPropControllerDataSchema = import_zod.z.union([
48
+ borderRadiusPropControllerDataV0Schema,
49
+ borderRadiusPropControllerDataV1Schema
50
+ ]);
51
+ const BorderRadiusPropControllerFormat = {
52
+ ClassName: "makeswift::prop-controllers::border-radius::format::class-name",
53
+ ResponsiveValue: "makeswift::prop-controllers::border-radius::format::responsive-value"
54
+ };
55
+ function BorderRadius(options = {}) {
56
+ return { type: import_prop_controllers.Types.BorderRadius, version: 1, options };
57
+ }
58
+ BorderRadius.Format = BorderRadiusPropControllerFormat;
59
+ function getBorderRadiusPropControllerDataResponsiveBorderRadiusData(data) {
60
+ return (0, import_ts_pattern.match)(data).with(
61
+ { [import_prop_controllers.ControlDataTypeKey]: BorderRadiusPropControllerDataV1Type },
62
+ (v1) => v1.value
63
+ ).otherwise((v0) => v0);
64
+ }
65
+ function createBorderRadiusPropControllerDataFromResponsiveBorderRadiusData(definition, responsiveBorderRadiusData) {
66
+ return (0, import_ts_pattern.match)(definition).with(
67
+ { version: 1 },
68
+ () => ({
69
+ [import_prop_controllers.ControlDataTypeKey]: BorderRadiusPropControllerDataV1Type,
70
+ value: responsiveBorderRadiusData
71
+ })
72
+ ).otherwise(() => responsiveBorderRadiusData);
73
+ }
74
+ // Annotate the CommonJS export names for ESM import in node:
75
+ 0 && (module.exports = {
76
+ BorderRadius,
77
+ BorderRadiusPropControllerFormat,
78
+ borderRadiusPropControllerDataSchema,
79
+ createBorderRadiusPropControllerDataFromResponsiveBorderRadiusData,
80
+ getBorderRadiusPropControllerDataResponsiveBorderRadiusData
81
+ });
82
+ //# sourceMappingURL=border-radius.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/border-radius/border-radius.ts"],"sourcesContent":["import { z } from 'zod'\nimport {\n ControlDataTypeKey,\n ResolveOptions,\n Types,\n Schema,\n} from '../prop-controllers'\nimport { lengthDataSchema } from '../data'\nimport { match } from 'ts-pattern'\n\nconst borderRadiusDataSchema = z.object({\n borderTopLeftRadius: lengthDataSchema.nullable().optional(),\n borderTopRightRadius: lengthDataSchema.nullable().optional(),\n borderBottomLeftRadius: lengthDataSchema.nullable().optional(),\n borderBottomRightRadius: lengthDataSchema.nullable().optional(),\n})\n\nconst responsiveBorderRadiusDataSchema = Schema.responsiveValue(\n borderRadiusDataSchema,\n)\n\nexport type ResponsiveBorderRadiusData = z.infer<\n typeof responsiveBorderRadiusDataSchema\n>\n\nconst borderRadiusPropControllerDataV0Schema = responsiveBorderRadiusDataSchema\n\ntype BorderRadiusPropControllerDataV0 = z.infer<\n typeof borderRadiusPropControllerDataV0Schema\n>\n\nconst BorderRadiusPropControllerDataV1Type =\n 'prop-controllers::border-radius::v1'\n\nconst borderRadiusPropControllerDataV1Schema = z.object({\n [ControlDataTypeKey]: z.literal(BorderRadiusPropControllerDataV1Type),\n value: responsiveBorderRadiusDataSchema,\n})\n\nexport const borderRadiusPropControllerDataSchema = z.union([\n borderRadiusPropControllerDataV0Schema,\n borderRadiusPropControllerDataV1Schema,\n])\n\nexport type BorderRadiusPropControllerData = z.infer<\n typeof borderRadiusPropControllerDataSchema\n>\n\nexport const BorderRadiusPropControllerFormat = {\n ClassName: 'makeswift::prop-controllers::border-radius::format::class-name',\n ResponsiveValue:\n 'makeswift::prop-controllers::border-radius::format::responsive-value',\n} as const\n\nexport type BorderRadiusPropControllerFormat =\n (typeof BorderRadiusPropControllerFormat)[keyof typeof BorderRadiusPropControllerFormat]\n\ntype BorderRadiusOptions = { format?: BorderRadiusPropControllerFormat }\n\ntype BorderRadiusDescriptorV0<\n _T = BorderRadiusPropControllerDataV0,\n U extends BorderRadiusOptions = BorderRadiusOptions,\n> = {\n type: typeof Types.BorderRadius\n options: U\n}\n\ntype BorderRadiusDescriptorV1<\n _T = BorderRadiusPropControllerData,\n U extends BorderRadiusOptions = BorderRadiusOptions,\n> = {\n type: typeof Types.BorderRadius\n version: 1\n options: U\n}\n\nexport type BorderRadiusDescriptor<\n _T = BorderRadiusPropControllerData,\n U extends BorderRadiusOptions = BorderRadiusOptions,\n> = BorderRadiusDescriptorV0<_T, U> | BorderRadiusDescriptorV1<_T, U>\n\nexport type ResolveBorderRadiusPropControllerValue<\n T extends BorderRadiusDescriptor,\n> = T extends BorderRadiusDescriptor\n ? undefined extends ResolveOptions<T['options']>['format']\n ? ResponsiveBorderRadiusData | undefined\n : ResolveOptions<\n T['options']\n >['format'] extends typeof BorderRadiusPropControllerFormat.ClassName\n ? string\n : ResolveOptions<\n T['options']\n >['format'] extends typeof BorderRadiusPropControllerFormat.ResponsiveValue\n ? ResponsiveBorderRadiusData | 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 BorderRadius<T extends BorderRadiusOptions>(\n options: T & BorderRadiusOptions = {} as T,\n): BorderRadiusDescriptor<BorderRadiusPropControllerData, T> {\n return { type: Types.BorderRadius, version: 1, options }\n}\n\nBorderRadius.Format = BorderRadiusPropControllerFormat\n\nexport function getBorderRadiusPropControllerDataResponsiveBorderRadiusData(\n data: BorderRadiusPropControllerData | undefined,\n): ResponsiveBorderRadiusData | undefined {\n return match(data)\n .with(\n { [ControlDataTypeKey]: BorderRadiusPropControllerDataV1Type },\n (v1) => v1.value,\n )\n .otherwise((v0) => v0)\n}\n\nexport function createBorderRadiusPropControllerDataFromResponsiveBorderRadiusData(\n definition: BorderRadiusDescriptor,\n responsiveBorderRadiusData: ResponsiveBorderRadiusData,\n): BorderRadiusPropControllerData {\n return match(definition)\n .with(\n { version: 1 },\n () =>\n ({\n [ControlDataTypeKey]: BorderRadiusPropControllerDataV1Type,\n value: responsiveBorderRadiusData,\n }) as const,\n )\n .otherwise(() => responsiveBorderRadiusData)\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,iBAAkB;AAClB,8BAKO;AACP,kBAAiC;AACjC,wBAAsB;AAEtB,MAAM,yBAAyB,aAAE,OAAO;AAAA,EACtC,qBAAqB,6BAAiB,SAAS,EAAE,SAAS;AAAA,EAC1D,sBAAsB,6BAAiB,SAAS,EAAE,SAAS;AAAA,EAC3D,wBAAwB,6BAAiB,SAAS,EAAE,SAAS;AAAA,EAC7D,yBAAyB,6BAAiB,SAAS,EAAE,SAAS;AAChE,CAAC;AAED,MAAM,mCAAmC,+BAAO;AAAA,EAC9C;AACF;AAMA,MAAM,yCAAyC;AAM/C,MAAM,uCACJ;AAEF,MAAM,yCAAyC,aAAE,OAAO;AAAA,EACtD,CAAC,0CAAkB,GAAG,aAAE,QAAQ,oCAAoC;AAAA,EACpE,OAAO;AACT,CAAC;AAEM,MAAM,uCAAuC,aAAE,MAAM;AAAA,EAC1D;AAAA,EACA;AACF,CAAC;AAMM,MAAM,mCAAmC;AAAA,EAC9C,WAAW;AAAA,EACX,iBACE;AACJ;AAiDO,SAAS,aACd,UAAmC,CAAC,GACuB;AAC3D,SAAO,EAAE,MAAM,8BAAM,cAAc,SAAS,GAAG,QAAQ;AACzD;AAEA,aAAa,SAAS;AAEf,SAAS,4DACd,MACwC;AACxC,aAAO,yBAAM,IAAI,EACd;AAAA,IACC,EAAE,CAAC,0CAAkB,GAAG,qCAAqC;AAAA,IAC7D,CAAC,OAAO,GAAG;AAAA,EACb,EACC,UAAU,CAAC,OAAO,EAAE;AACzB;AAEO,SAAS,mEACd,YACA,4BACgC;AAChC,aAAO,yBAAM,UAAU,EACpB;AAAA,IACC,EAAE,SAAS,EAAE;AAAA,IACb,OACG;AAAA,MACC,CAAC,0CAAkB,GAAG;AAAA,MACtB,OAAO;AAAA,IACT;AAAA,EACJ,EACC,UAAU,MAAM,0BAA0B;AAC/C;","names":[]}