@webstudio-is/react-sdk 0.51.0 → 0.52.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 (346) hide show
  1. package/lib/cjs/components/{blockquote.cjs → blockquote.js} +2 -1
  2. package/lib/cjs/components/{blockquote.ws.cjs → blockquote.ws.js} +57 -35
  3. package/lib/cjs/components/{body.cjs → body.js} +2 -1
  4. package/lib/cjs/components/{body.ws.cjs → body.ws.js} +30 -46
  5. package/lib/cjs/components/{bold.cjs → bold.js} +2 -1
  6. package/lib/cjs/components/{bold.ws.cjs → bold.ws.js} +6 -1
  7. package/lib/cjs/components/{box.ws.cjs → box.ws.js} +11 -4
  8. package/lib/cjs/components/{button.cjs → button.js} +2 -1
  9. package/lib/cjs/components/{button.ws.cjs → button.ws.js} +6 -1
  10. package/lib/cjs/components/{code.cjs → code.js} +1 -0
  11. package/lib/cjs/components/{code.ws.cjs → code.ws.js} +31 -25
  12. package/lib/cjs/components/{form.cjs → form.js} +2 -1
  13. package/lib/cjs/components/{form.ws.cjs → form.ws.js} +8 -8
  14. package/lib/cjs/components/{heading.ws.cjs → heading.ws.js} +11 -1
  15. package/lib/cjs/components/{image.cjs → image.js} +2 -1
  16. package/lib/cjs/components/{image.ws.cjs → image.ws.js} +15 -11
  17. package/lib/cjs/components/{input.cjs → input.js} +2 -1
  18. package/lib/cjs/components/{input.ws.cjs → input.ws.js} +6 -1
  19. package/lib/cjs/components/{italic.cjs → italic.js} +2 -1
  20. package/lib/cjs/components/{italic.ws.cjs → italic.ws.js} +8 -4
  21. package/lib/cjs/components/{link-block.cjs → link-block.js} +3 -1
  22. package/lib/cjs/components/{link-block.ws.cjs → link-block.ws.js} +7 -7
  23. package/lib/cjs/components/{link.cjs → link.js} +3 -1
  24. package/lib/cjs/components/{link.ws.cjs → link.ws.js} +13 -9
  25. package/lib/cjs/components/{list-item.cjs → list-item.js} +2 -1
  26. package/lib/cjs/components/{list-item.ws.cjs → list-item.ws.js} +6 -1
  27. package/lib/cjs/components/{list.ws.cjs → list.ws.js} +29 -10
  28. package/lib/cjs/components/{paragraph.cjs → paragraph.js} +2 -1
  29. package/lib/cjs/components/{paragraph.ws.cjs → paragraph.ws.js} +6 -1
  30. package/lib/cjs/components/{separator.cjs → separator.js} +2 -1
  31. package/lib/cjs/components/{separator.ws.cjs → separator.ws.js} +27 -11
  32. package/lib/cjs/components/{span.cjs → span.js} +2 -1
  33. package/lib/cjs/components/{span.ws.cjs → span.ws.js} +6 -1
  34. package/lib/cjs/components/{subscript.cjs → subscript.js} +2 -1
  35. package/lib/cjs/components/{subscript.ws.cjs → subscript.ws.js} +6 -1
  36. package/lib/cjs/components/{superscript.cjs → superscript.js} +2 -1
  37. package/lib/cjs/components/{superscript.ws.cjs → superscript.ws.js} +6 -1
  38. package/lib/cjs/components/{text-block.cjs → text-block.js} +2 -1
  39. package/lib/cjs/components/{text-block.ws.cjs → text-block.ws.js} +9 -5
  40. package/lib/cjs/css/css.js +64 -0
  41. package/lib/cjs/css/global-rules.js +37 -0
  42. package/lib/cjs/css/{index.cjs → index.js} +3 -1
  43. package/lib/cjs/css/normalize-type-check.js +26 -0
  44. package/lib/cjs/css/normalize.js +358 -0
  45. package/lib/cjs/css/presets.js +61 -0
  46. package/lib/cjs/css/style-rules.js +62 -0
  47. package/lib/cjs/package.json +1 -0
  48. package/lib/cjs/pubsub/{create.cjs → create.js} +6 -35
  49. package/lib/cjs/pubsub/raf-queue.js +45 -0
  50. package/lib/cjs/tree/{webstudio-component.cjs → webstudio-component.js} +1 -0
  51. package/lib/components/blockquote.js +2 -1
  52. package/lib/components/blockquote.ws.js +57 -35
  53. package/lib/components/body.js +2 -1
  54. package/lib/components/body.ws.js +30 -46
  55. package/lib/components/bold.js +2 -1
  56. package/lib/components/bold.ws.js +7 -2
  57. package/lib/components/box.ws.js +22 -4
  58. package/lib/components/button.js +2 -1
  59. package/lib/components/button.ws.js +7 -2
  60. package/lib/components/code.js +1 -0
  61. package/lib/components/code.ws.js +31 -25
  62. package/lib/components/form.js +2 -1
  63. package/lib/components/form.ws.js +8 -8
  64. package/lib/components/heading.ws.js +11 -1
  65. package/lib/components/image.js +2 -1
  66. package/lib/components/image.ws.js +15 -11
  67. package/lib/components/input.js +2 -1
  68. package/lib/components/input.ws.js +7 -2
  69. package/lib/components/italic.js +2 -1
  70. package/lib/components/italic.ws.js +9 -5
  71. package/lib/components/link-block.js +3 -1
  72. package/lib/components/link-block.ws.js +7 -7
  73. package/lib/components/link.js +3 -1
  74. package/lib/components/link.ws.js +14 -10
  75. package/lib/components/list-item.js +2 -1
  76. package/lib/components/list-item.ws.js +6 -1
  77. package/lib/components/list.ws.js +29 -10
  78. package/lib/components/paragraph.js +2 -1
  79. package/lib/components/paragraph.ws.js +6 -1
  80. package/lib/components/separator.js +2 -1
  81. package/lib/components/separator.ws.js +27 -11
  82. package/lib/components/span.js +2 -1
  83. package/lib/components/span.ws.js +7 -2
  84. package/lib/components/subscript.js +2 -1
  85. package/lib/components/subscript.ws.js +6 -1
  86. package/lib/components/superscript.js +2 -1
  87. package/lib/components/superscript.ws.js +6 -1
  88. package/lib/components/text-block.js +2 -1
  89. package/lib/components/text-block.ws.js +10 -6
  90. package/lib/css/css.js +44 -0
  91. package/lib/css/get-browser-style.js +3 -1
  92. package/lib/css/global-rules.js +20 -0
  93. package/lib/css/index.js +3 -1
  94. package/lib/css/normalize-type-check.js +3 -0
  95. package/lib/css/normalize.js +338 -0
  96. package/lib/css/presets.js +41 -0
  97. package/lib/css/style-rules.js +42 -0
  98. package/lib/pubsub/create.js +6 -25
  99. package/lib/pubsub/raf-queue.js +25 -0
  100. package/lib/tree/webstudio-component.js +1 -0
  101. package/lib/types/app/custom-components/image.d.ts +6 -0
  102. package/lib/types/app/custom-components/index.d.ts +26 -0
  103. package/lib/types/app/custom-components/link-block.d.ts +6 -0
  104. package/lib/types/app/custom-components/link.d.ts +6 -0
  105. package/lib/types/app/custom-components/rich-text-link.d.ts +6 -0
  106. package/lib/types/app/custom-components/shared/remix-link.d.ts +10 -0
  107. package/lib/types/app/handle-request.server.d.ts +2 -0
  108. package/lib/types/app/index.d.ts +3 -0
  109. package/lib/types/app/params.d.ts +5 -0
  110. package/lib/types/app/root.d.ts +8 -0
  111. package/lib/types/components/__generated__/blockquote.props.d.ts +2 -0
  112. package/lib/types/components/__generated__/body.props.d.ts +2 -0
  113. package/lib/types/components/__generated__/bold.props.d.ts +2 -0
  114. package/lib/types/components/__generated__/box.props.d.ts +2 -0
  115. package/lib/types/components/__generated__/button.props.d.ts +2 -0
  116. package/lib/types/components/__generated__/code.props.d.ts +2 -0
  117. package/lib/types/components/__generated__/form.props.d.ts +2 -0
  118. package/lib/types/components/__generated__/fragment.props.d.ts +2 -0
  119. package/lib/types/components/__generated__/heading.props.d.ts +2 -0
  120. package/lib/types/components/__generated__/image.props.d.ts +2 -0
  121. package/lib/types/components/__generated__/input.props.d.ts +2 -0
  122. package/lib/types/components/__generated__/italic.props.d.ts +2 -0
  123. package/lib/types/components/__generated__/link-block.props.d.ts +2 -0
  124. package/lib/types/components/__generated__/link.props.d.ts +2 -0
  125. package/lib/types/components/__generated__/list-item.props.d.ts +2 -0
  126. package/lib/types/components/__generated__/list.props.d.ts +2 -0
  127. package/lib/types/components/__generated__/paragraph.props.d.ts +2 -0
  128. package/lib/types/components/__generated__/rich-text-link.props.d.ts +2 -0
  129. package/lib/types/components/__generated__/separator.props.d.ts +2 -0
  130. package/lib/types/components/__generated__/slot.props.d.ts +2 -0
  131. package/lib/types/components/__generated__/span.props.d.ts +2 -0
  132. package/lib/types/components/__generated__/subscript.props.d.ts +2 -0
  133. package/lib/types/components/__generated__/superscript.props.d.ts +2 -0
  134. package/lib/types/components/__generated__/text-block.props.d.ts +2 -0
  135. package/lib/types/components/blockquote.d.ts +3 -0
  136. package/lib/types/components/blockquote.stories.d.ts +5 -0
  137. package/lib/types/components/blockquote.ws.d.ts +3 -0
  138. package/lib/types/components/body.d.ts +3 -0
  139. package/lib/types/components/body.stories.d.ts +6 -0
  140. package/lib/types/components/body.ws.d.ts +3 -0
  141. package/lib/types/components/bold.d.ts +3 -0
  142. package/lib/types/components/bold.stories.d.ts +5 -0
  143. package/lib/types/components/bold.ws.d.ts +3 -0
  144. package/lib/types/components/box.d.ts +7 -0
  145. package/lib/types/components/box.stories.d.ts +9 -0
  146. package/lib/types/components/box.ws.d.ts +3 -0
  147. package/lib/types/components/button.d.ts +7 -0
  148. package/lib/types/components/button.stories.d.ts +9 -0
  149. package/lib/types/components/button.ws.d.ts +3 -0
  150. package/lib/types/components/code.d.ts +9 -0
  151. package/lib/types/components/code.stories.d.ts +11 -0
  152. package/lib/types/components/code.ws.d.ts +3 -0
  153. package/lib/types/components/component-meta.d.ts +605 -0
  154. package/lib/types/components/components-utils.d.ts +34 -0
  155. package/lib/types/components/components.d.ts +31 -0
  156. package/lib/types/components/form.d.ts +3 -0
  157. package/lib/types/components/form.stories.d.ts +5 -0
  158. package/lib/types/components/form.ws.d.ts +3 -0
  159. package/lib/types/components/fragment.d.ts +6 -0
  160. package/lib/types/components/fragment.ws.d.ts +3 -0
  161. package/lib/types/components/heading.d.ts +7 -0
  162. package/lib/types/components/heading.stories.d.ts +9 -0
  163. package/lib/types/components/heading.ws.d.ts +3 -0
  164. package/lib/types/components/image.d.ts +3 -0
  165. package/lib/types/components/image.stories.d.ts +5 -0
  166. package/lib/types/components/image.ws.d.ts +3 -0
  167. package/lib/types/components/index.d.ts +17 -0
  168. package/lib/types/components/input.d.ts +3 -0
  169. package/lib/types/components/input.stories.d.ts +5 -0
  170. package/lib/types/components/input.ws.d.ts +3 -0
  171. package/lib/types/components/italic.d.ts +3 -0
  172. package/lib/types/components/italic.stories.d.ts +5 -0
  173. package/lib/types/components/italic.ws.d.ts +3 -0
  174. package/lib/types/components/link-block.d.ts +3 -0
  175. package/lib/types/components/link-block.stories.d.ts +13 -0
  176. package/lib/types/components/link-block.ws.d.ts +3 -0
  177. package/lib/types/components/link.d.ts +9 -0
  178. package/lib/types/components/link.stories.d.ts +13 -0
  179. package/lib/types/components/link.ws.d.ts +3 -0
  180. package/lib/types/components/list-item.d.ts +3 -0
  181. package/lib/types/components/list-item.stories.d.ts +5 -0
  182. package/lib/types/components/list-item.ws.d.ts +3 -0
  183. package/lib/types/components/list.d.ts +9 -0
  184. package/lib/types/components/list.stories.d.ts +9 -0
  185. package/lib/types/components/list.ws.d.ts +3 -0
  186. package/lib/types/components/paragraph.d.ts +3 -0
  187. package/lib/types/components/paragraph.stories.d.ts +5 -0
  188. package/lib/types/components/paragraph.ws.d.ts +3 -0
  189. package/lib/types/components/rich-text-link.d.ts +2 -0
  190. package/lib/types/components/rich-text-link.stories.d.ts +13 -0
  191. package/lib/types/components/rich-text-link.ws.d.ts +3 -0
  192. package/lib/types/components/separator.d.ts +3 -0
  193. package/lib/types/components/separator.stories.d.ts +5 -0
  194. package/lib/types/components/separator.ws.d.ts +3 -0
  195. package/lib/types/components/slot.d.ts +6 -0
  196. package/lib/types/components/slot.stories.d.ts +9 -0
  197. package/lib/types/components/slot.ws.d.ts +3 -0
  198. package/lib/types/components/span.d.ts +3 -0
  199. package/lib/types/components/span.stories.d.ts +5 -0
  200. package/lib/types/components/span.ws.d.ts +3 -0
  201. package/lib/types/components/subscript.d.ts +3 -0
  202. package/lib/types/components/subscript.stories.d.ts +5 -0
  203. package/lib/types/components/subscript.ws.d.ts +3 -0
  204. package/lib/types/components/superscript.d.ts +3 -0
  205. package/lib/types/components/superscript.stories.d.ts +5 -0
  206. package/lib/types/components/superscript.ws.d.ts +3 -0
  207. package/lib/types/components/text-block.d.ts +3 -0
  208. package/lib/types/components/text-block.stories.d.ts +5 -0
  209. package/lib/types/components/text-block.ws.d.ts +3 -0
  210. package/lib/types/context.d.ts +9 -0
  211. package/lib/types/css/css.d.ts +10 -0
  212. package/lib/types/css/get-browser-style.d.ts +2 -0
  213. package/lib/types/css/global-rules.d.ts +44 -0
  214. package/lib/types/css/index.d.ts +4 -0
  215. package/lib/types/css/normalize-type-check.d.ts +1 -0
  216. package/lib/types/css/normalize.d.ts +2429 -0
  217. package/lib/types/css/presets.d.ts +38 -0
  218. package/lib/types/css/style-rules.d.ts +248 -0
  219. package/lib/types/css/style-rules.test.d.ts +1 -0
  220. package/lib/types/index.d.ts +9 -0
  221. package/lib/types/props.d.ts +97 -0
  222. package/lib/types/props.test.d.ts +1 -0
  223. package/lib/types/pubsub/create.d.ts +28 -0
  224. package/lib/types/pubsub/index.d.ts +1 -0
  225. package/lib/types/pubsub/raf-queue.d.ts +1 -0
  226. package/lib/types/tree/create-elements-tree.d.ts +16 -0
  227. package/lib/types/tree/index.d.ts +3 -0
  228. package/lib/types/tree/root.d.ts +25 -0
  229. package/lib/types/tree/session-storage-polyfill.d.ts +2 -0
  230. package/lib/types/tree/webstudio-component.d.ts +15 -0
  231. package/package.json +20 -19
  232. package/src/components/blockquote.tsx +1 -1
  233. package/src/components/blockquote.ws.tsx +63 -36
  234. package/src/components/body.tsx +1 -1
  235. package/src/components/body.ws.tsx +39 -47
  236. package/src/components/bold.tsx +1 -1
  237. package/src/components/bold.ws.tsx +10 -2
  238. package/src/components/box.ws.ts +28 -5
  239. package/src/components/button.tsx +1 -1
  240. package/src/components/button.ws.tsx +10 -2
  241. package/src/components/code.tsx +1 -1
  242. package/src/components/code.ws.tsx +36 -28
  243. package/src/components/component-meta.ts +4 -1
  244. package/src/components/form.tsx +1 -1
  245. package/src/components/form.ws.tsx +11 -9
  246. package/src/components/heading.ws.tsx +16 -0
  247. package/src/components/image.tsx +1 -1
  248. package/src/components/image.ws.tsx +19 -12
  249. package/src/components/input.tsx +1 -1
  250. package/src/components/input.ws.tsx +10 -2
  251. package/src/components/italic.tsx +1 -1
  252. package/src/components/italic.ws.tsx +12 -6
  253. package/src/components/link-block.tsx +1 -0
  254. package/src/components/link-block.ws.tsx +10 -8
  255. package/src/components/link.tsx +2 -0
  256. package/src/components/link.ws.tsx +17 -11
  257. package/src/components/list-item.tsx +1 -1
  258. package/src/components/list-item.ws.tsx +8 -0
  259. package/src/components/list.tsx +2 -0
  260. package/src/components/list.ws.tsx +32 -11
  261. package/src/components/paragraph.tsx +1 -1
  262. package/src/components/paragraph.ws.tsx +8 -0
  263. package/src/components/separator.tsx +1 -1
  264. package/src/components/separator.ws.tsx +33 -12
  265. package/src/components/span.tsx +1 -1
  266. package/src/components/span.ws.tsx +10 -2
  267. package/src/components/subscript.tsx +1 -1
  268. package/src/components/subscript.ws.tsx +8 -0
  269. package/src/components/superscript.tsx +1 -1
  270. package/src/components/superscript.ws.tsx +8 -0
  271. package/src/components/text-block.tsx +1 -1
  272. package/src/components/text-block.ws.tsx +14 -7
  273. package/src/context.tsx +2 -1
  274. package/src/css/css.ts +57 -0
  275. package/src/css/get-browser-style.ts +6 -1
  276. package/src/css/global-rules.ts +29 -0
  277. package/src/css/index.ts +3 -1
  278. package/src/css/normalize-type-check.ts +13 -0
  279. package/src/css/normalize.ts +519 -0
  280. package/src/css/presets.ts +42 -0
  281. package/src/css/style-rules.test.ts +147 -0
  282. package/src/css/style-rules.ts +66 -0
  283. package/src/props.ts +0 -2
  284. package/src/pubsub/create.ts +7 -38
  285. package/src/pubsub/raf-queue.ts +31 -0
  286. package/src/tree/create-elements-tree.tsx +2 -1
  287. package/src/tree/webstudio-component.tsx +1 -0
  288. package/lib/cjs/css/categories.cjs +0 -250
  289. package/lib/css/categories.js +0 -230
  290. package/src/css/categories.ts +0 -254
  291. /package/lib/cjs/app/custom-components/{image.cjs → image.js} +0 -0
  292. /package/lib/cjs/app/custom-components/{index.cjs → index.js} +0 -0
  293. /package/lib/cjs/app/custom-components/{link-block.cjs → link-block.js} +0 -0
  294. /package/lib/cjs/app/custom-components/{link.cjs → link.js} +0 -0
  295. /package/lib/cjs/app/custom-components/{rich-text-link.cjs → rich-text-link.js} +0 -0
  296. /package/lib/cjs/app/custom-components/shared/{remix-link.cjs → remix-link.js} +0 -0
  297. /package/lib/cjs/app/{handle-request.server.cjs → handle-request.server.js} +0 -0
  298. /package/lib/cjs/app/{index.cjs → index.js} +0 -0
  299. /package/lib/cjs/app/{params.cjs → params.js} +0 -0
  300. /package/lib/cjs/app/{root.cjs → root.js} +0 -0
  301. /package/lib/cjs/components/__generated__/{blockquote.props.cjs → blockquote.props.js} +0 -0
  302. /package/lib/cjs/components/__generated__/{body.props.cjs → body.props.js} +0 -0
  303. /package/lib/cjs/components/__generated__/{bold.props.cjs → bold.props.js} +0 -0
  304. /package/lib/cjs/components/__generated__/{box.props.cjs → box.props.js} +0 -0
  305. /package/lib/cjs/components/__generated__/{button.props.cjs → button.props.js} +0 -0
  306. /package/lib/cjs/components/__generated__/{code.props.cjs → code.props.js} +0 -0
  307. /package/lib/cjs/components/__generated__/{form.props.cjs → form.props.js} +0 -0
  308. /package/lib/cjs/components/__generated__/{fragment.props.cjs → fragment.props.js} +0 -0
  309. /package/lib/cjs/components/__generated__/{heading.props.cjs → heading.props.js} +0 -0
  310. /package/lib/cjs/components/__generated__/{image.props.cjs → image.props.js} +0 -0
  311. /package/lib/cjs/components/__generated__/{input.props.cjs → input.props.js} +0 -0
  312. /package/lib/cjs/components/__generated__/{italic.props.cjs → italic.props.js} +0 -0
  313. /package/lib/cjs/components/__generated__/{link-block.props.cjs → link-block.props.js} +0 -0
  314. /package/lib/cjs/components/__generated__/{link.props.cjs → link.props.js} +0 -0
  315. /package/lib/cjs/components/__generated__/{list-item.props.cjs → list-item.props.js} +0 -0
  316. /package/lib/cjs/components/__generated__/{list.props.cjs → list.props.js} +0 -0
  317. /package/lib/cjs/components/__generated__/{paragraph.props.cjs → paragraph.props.js} +0 -0
  318. /package/lib/cjs/components/__generated__/{rich-text-link.props.cjs → rich-text-link.props.js} +0 -0
  319. /package/lib/cjs/components/__generated__/{separator.props.cjs → separator.props.js} +0 -0
  320. /package/lib/cjs/components/__generated__/{slot.props.cjs → slot.props.js} +0 -0
  321. /package/lib/cjs/components/__generated__/{span.props.cjs → span.props.js} +0 -0
  322. /package/lib/cjs/components/__generated__/{subscript.props.cjs → subscript.props.js} +0 -0
  323. /package/lib/cjs/components/__generated__/{superscript.props.cjs → superscript.props.js} +0 -0
  324. /package/lib/cjs/components/__generated__/{text-block.props.cjs → text-block.props.js} +0 -0
  325. /package/lib/cjs/components/{box.cjs → box.js} +0 -0
  326. /package/lib/cjs/components/{component-meta.cjs → component-meta.js} +0 -0
  327. /package/lib/cjs/components/{components-utils.cjs → components-utils.js} +0 -0
  328. /package/lib/cjs/components/{components.cjs → components.js} +0 -0
  329. /package/lib/cjs/components/{fragment.cjs → fragment.js} +0 -0
  330. /package/lib/cjs/components/{fragment.ws.cjs → fragment.ws.js} +0 -0
  331. /package/lib/cjs/components/{heading.cjs → heading.js} +0 -0
  332. /package/lib/cjs/components/{index.cjs → index.js} +0 -0
  333. /package/lib/cjs/components/{list.cjs → list.js} +0 -0
  334. /package/lib/cjs/components/{rich-text-link.cjs → rich-text-link.js} +0 -0
  335. /package/lib/cjs/components/{rich-text-link.ws.cjs → rich-text-link.ws.js} +0 -0
  336. /package/lib/cjs/components/{slot.cjs → slot.js} +0 -0
  337. /package/lib/cjs/components/{slot.ws.cjs → slot.ws.js} +0 -0
  338. /package/lib/cjs/{context.cjs → context.js} +0 -0
  339. /package/lib/cjs/css/{get-browser-style.cjs → get-browser-style.js} +0 -0
  340. /package/lib/cjs/{index.cjs → index.js} +0 -0
  341. /package/lib/cjs/{props.cjs → props.js} +0 -0
  342. /package/lib/cjs/pubsub/{index.cjs → index.js} +0 -0
  343. /package/lib/cjs/tree/{create-elements-tree.cjs → create-elements-tree.js} +0 -0
  344. /package/lib/cjs/tree/{index.cjs → index.js} +0 -0
  345. /package/lib/cjs/tree/{root.cjs → root.js} +0 -0
  346. /package/lib/cjs/tree/{session-storage-polyfill.cjs → session-storage-polyfill.js} +0 -0
@@ -0,0 +1,38 @@
1
+ export declare const borders: {
2
+ readonly borderTopColor: {
3
+ readonly type: "keyword";
4
+ readonly value: "currentColor";
5
+ };
6
+ readonly borderRightColor: {
7
+ readonly type: "keyword";
8
+ readonly value: "currentColor";
9
+ };
10
+ readonly borderBottomColor: {
11
+ readonly type: "keyword";
12
+ readonly value: "currentColor";
13
+ };
14
+ readonly borderLeftColor: {
15
+ readonly type: "keyword";
16
+ readonly value: "currentColor";
17
+ };
18
+ readonly borderTopWidth: {
19
+ readonly type: "unit";
20
+ readonly value: 1;
21
+ readonly unit: "px";
22
+ };
23
+ readonly borderRightWidth: {
24
+ readonly type: "unit";
25
+ readonly value: 1;
26
+ readonly unit: "px";
27
+ };
28
+ readonly borderBottomWidth: {
29
+ readonly type: "unit";
30
+ readonly value: 1;
31
+ readonly unit: "px";
32
+ };
33
+ readonly borderLeftWidth: {
34
+ readonly type: "unit";
35
+ readonly value: 1;
36
+ readonly unit: "px";
37
+ };
38
+ };
@@ -0,0 +1,248 @@
1
+ import type { Style } from "@webstudio-is/css-data";
2
+ type StyleRule = {
3
+ instanceId: string;
4
+ breakpointId: string;
5
+ style: Style;
6
+ };
7
+ /**
8
+ * Merge styles from different style sources
9
+ * and group by instance and breakpoint
10
+ */
11
+ export declare const getStyleRules: (styles: Map<`${string}:${string}:filter` | `${string}:${string}:float` | `${string}:${string}:fontFamily` | `${string}:${string}:width` | `${string}:${string}:height` | `${string}:${string}:color` | `${string}:${string}:left` | `${string}:${string}:right` | `${string}:${string}:top` | `${string}:${string}:bottom` | `${string}:${string}:contain` | `${string}:${string}:clip` | `${string}:${string}:content` | `${string}:${string}:--${string}` | `${string}:${string}:accentColor` | `${string}:${string}:alignContent` | `${string}:${string}:alignItems` | `${string}:${string}:alignSelf` | `${string}:${string}:alignTracks` | `${string}:${string}:animationComposition` | `${string}:${string}:animationDelay` | `${string}:${string}:animationDirection` | `${string}:${string}:animationDuration` | `${string}:${string}:animationFillMode` | `${string}:${string}:animationIterationCount` | `${string}:${string}:animationName` | `${string}:${string}:animationPlayState` | `${string}:${string}:animationTimingFunction` | `${string}:${string}:animationTimeline` | `${string}:${string}:appearance` | `${string}:${string}:aspectRatio` | `${string}:${string}:backdropFilter` | `${string}:${string}:backfaceVisibility` | `${string}:${string}:backgroundAttachment` | `${string}:${string}:backgroundBlendMode` | `${string}:${string}:backgroundClip` | `${string}:${string}:backgroundColor` | `${string}:${string}:backgroundImage` | `${string}:${string}:backgroundOrigin` | `${string}:${string}:backgroundPosition` | `${string}:${string}:backgroundPositionX` | `${string}:${string}:backgroundPositionY` | `${string}:${string}:backgroundRepeat` | `${string}:${string}:backgroundSize` | `${string}:${string}:blockOverflow` | `${string}:${string}:blockSize` | `${string}:${string}:borderBlockColor` | `${string}:${string}:borderBlockStyle` | `${string}:${string}:borderBlockWidth` | `${string}:${string}:borderBlockEndColor` | `${string}:${string}:borderBlockEndStyle` | `${string}:${string}:borderBlockEndWidth` | `${string}:${string}:borderBlockStartColor` | `${string}:${string}:borderBlockStartStyle` | `${string}:${string}:borderBlockStartWidth` | `${string}:${string}:borderBottomColor` | `${string}:${string}:borderBottomLeftRadius` | `${string}:${string}:borderBottomRightRadius` | `${string}:${string}:borderBottomStyle` | `${string}:${string}:borderBottomWidth` | `${string}:${string}:borderCollapse` | `${string}:${string}:borderEndEndRadius` | `${string}:${string}:borderEndStartRadius` | `${string}:${string}:borderImageOutset` | `${string}:${string}:borderImageRepeat` | `${string}:${string}:borderImageSlice` | `${string}:${string}:borderImageSource` | `${string}:${string}:borderImageWidth` | `${string}:${string}:borderInlineColor` | `${string}:${string}:borderInlineStyle` | `${string}:${string}:borderInlineWidth` | `${string}:${string}:borderInlineEndColor` | `${string}:${string}:borderInlineEndStyle` | `${string}:${string}:borderInlineEndWidth` | `${string}:${string}:borderInlineStartColor` | `${string}:${string}:borderInlineStartStyle` | `${string}:${string}:borderInlineStartWidth` | `${string}:${string}:borderLeftColor` | `${string}:${string}:borderLeftStyle` | `${string}:${string}:borderLeftWidth` | `${string}:${string}:borderRightColor` | `${string}:${string}:borderRightStyle` | `${string}:${string}:borderRightWidth` | `${string}:${string}:borderSpacing` | `${string}:${string}:borderStartEndRadius` | `${string}:${string}:borderStartStartRadius` | `${string}:${string}:borderTopColor` | `${string}:${string}:borderTopLeftRadius` | `${string}:${string}:borderTopRightRadius` | `${string}:${string}:borderTopStyle` | `${string}:${string}:borderTopWidth` | `${string}:${string}:boxDecorationBreak` | `${string}:${string}:boxShadow` | `${string}:${string}:boxSizing` | `${string}:${string}:breakAfter` | `${string}:${string}:breakBefore` | `${string}:${string}:breakInside` | `${string}:${string}:captionSide` | `${string}:${string}:caretColor` | `${string}:${string}:caretShape` | `${string}:${string}:clear` | `${string}:${string}:clipPath` | `${string}:${string}:printColorAdjust` | `${string}:${string}:colorScheme` | `${string}:${string}:columnCount` | `${string}:${string}:columnFill` | `${string}:${string}:columnGap` | `${string}:${string}:columnRuleColor` | `${string}:${string}:columnRuleStyle` | `${string}:${string}:columnRuleWidth` | `${string}:${string}:columnSpan` | `${string}:${string}:columnWidth` | `${string}:${string}:containIntrinsicBlockSize` | `${string}:${string}:containIntrinsicHeight` | `${string}:${string}:containIntrinsicInlineSize` | `${string}:${string}:containIntrinsicWidth` | `${string}:${string}:contentVisibility` | `${string}:${string}:counterIncrement` | `${string}:${string}:counterReset` | `${string}:${string}:counterSet` | `${string}:${string}:cursor` | `${string}:${string}:direction` | `${string}:${string}:display` | `${string}:${string}:emptyCells` | `${string}:${string}:flexBasis` | `${string}:${string}:flexDirection` | `${string}:${string}:flexGrow` | `${string}:${string}:flexShrink` | `${string}:${string}:flexWrap` | `${string}:${string}:fontFeatureSettings` | `${string}:${string}:fontKerning` | `${string}:${string}:fontLanguageOverride` | `${string}:${string}:fontOpticalSizing` | `${string}:${string}:fontVariationSettings` | `${string}:${string}:fontSize` | `${string}:${string}:fontSizeAdjust` | `${string}:${string}:fontStretch` | `${string}:${string}:fontStyle` | `${string}:${string}:fontSynthesis` | `${string}:${string}:fontVariant` | `${string}:${string}:fontVariantAlternates` | `${string}:${string}:fontVariantCaps` | `${string}:${string}:fontVariantEastAsian` | `${string}:${string}:fontVariantLigatures` | `${string}:${string}:fontVariantNumeric` | `${string}:${string}:fontVariantPosition` | `${string}:${string}:fontWeight` | `${string}:${string}:forcedColorAdjust` | `${string}:${string}:gridAutoColumns` | `${string}:${string}:gridAutoFlow` | `${string}:${string}:gridAutoRows` | `${string}:${string}:gridColumnEnd` | `${string}:${string}:gridColumnStart` | `${string}:${string}:gridRowEnd` | `${string}:${string}:gridRowStart` | `${string}:${string}:gridTemplateAreas` | `${string}:${string}:gridTemplateColumns` | `${string}:${string}:gridTemplateRows` | `${string}:${string}:hangingPunctuation` | `${string}:${string}:hyphenateCharacter` | `${string}:${string}:hyphens` | `${string}:${string}:imageOrientation` | `${string}:${string}:imageRendering` | `${string}:${string}:imageResolution` | `${string}:${string}:initialLetter` | `${string}:${string}:initialLetterAlign` | `${string}:${string}:inlineSize` | `${string}:${string}:inputSecurity` | `${string}:${string}:insetBlockEnd` | `${string}:${string}:insetBlockStart` | `${string}:${string}:insetInlineEnd` | `${string}:${string}:insetInlineStart` | `${string}:${string}:isolation` | `${string}:${string}:justifyContent` | `${string}:${string}:justifyItems` | `${string}:${string}:justifySelf` | `${string}:${string}:justifyTracks` | `${string}:${string}:letterSpacing` | `${string}:${string}:lineBreak` | `${string}:${string}:lineClamp` | `${string}:${string}:lineHeight` | `${string}:${string}:lineHeightStep` | `${string}:${string}:listStyleImage` | `${string}:${string}:listStylePosition` | `${string}:${string}:listStyleType` | `${string}:${string}:marginBlockEnd` | `${string}:${string}:marginBlockStart` | `${string}:${string}:marginBottom` | `${string}:${string}:marginInlineEnd` | `${string}:${string}:marginInlineStart` | `${string}:${string}:marginLeft` | `${string}:${string}:marginRight` | `${string}:${string}:marginTop` | `${string}:${string}:marginTrim` | `${string}:${string}:maskBorderMode` | `${string}:${string}:maskBorderOutset` | `${string}:${string}:maskBorderRepeat` | `${string}:${string}:maskBorderSlice` | `${string}:${string}:maskBorderSource` | `${string}:${string}:maskBorderWidth` | `${string}:${string}:maskClip` | `${string}:${string}:maskComposite` | `${string}:${string}:maskImage` | `${string}:${string}:maskMode` | `${string}:${string}:maskOrigin` | `${string}:${string}:maskPosition` | `${string}:${string}:maskRepeat` | `${string}:${string}:maskSize` | `${string}:${string}:maskType` | `${string}:${string}:masonryAutoFlow` | `${string}:${string}:mathDepth` | `${string}:${string}:mathShift` | `${string}:${string}:mathStyle` | `${string}:${string}:maxBlockSize` | `${string}:${string}:maxHeight` | `${string}:${string}:maxInlineSize` | `${string}:${string}:maxLines` | `${string}:${string}:maxWidth` | `${string}:${string}:minBlockSize` | `${string}:${string}:minHeight` | `${string}:${string}:minInlineSize` | `${string}:${string}:minWidth` | `${string}:${string}:mixBlendMode` | `${string}:${string}:objectFit` | `${string}:${string}:objectPosition` | `${string}:${string}:offsetAnchor` | `${string}:${string}:offsetDistance` | `${string}:${string}:offsetPath` | `${string}:${string}:offsetPosition` | `${string}:${string}:offsetRotate` | `${string}:${string}:opacity` | `${string}:${string}:order` | `${string}:${string}:orphans` | `${string}:${string}:outlineColor` | `${string}:${string}:outlineOffset` | `${string}:${string}:outlineStyle` | `${string}:${string}:outlineWidth` | `${string}:${string}:overflow` | `${string}:${string}:overflowAnchor` | `${string}:${string}:overflowBlock` | `${string}:${string}:overflowClipMargin` | `${string}:${string}:overflowInline` | `${string}:${string}:overflowWrap` | `${string}:${string}:overflowX` | `${string}:${string}:overflowY` | `${string}:${string}:overscrollBehavior` | `${string}:${string}:overscrollBehaviorBlock` | `${string}:${string}:overscrollBehaviorInline` | `${string}:${string}:overscrollBehaviorX` | `${string}:${string}:overscrollBehaviorY` | `${string}:${string}:paddingBlockEnd` | `${string}:${string}:paddingBlockStart` | `${string}:${string}:paddingBottom` | `${string}:${string}:paddingInlineEnd` | `${string}:${string}:paddingInlineStart` | `${string}:${string}:paddingLeft` | `${string}:${string}:paddingRight` | `${string}:${string}:paddingTop` | `${string}:${string}:pageBreakAfter` | `${string}:${string}:pageBreakBefore` | `${string}:${string}:pageBreakInside` | `${string}:${string}:paintOrder` | `${string}:${string}:perspective` | `${string}:${string}:perspectiveOrigin` | `${string}:${string}:pointerEvents` | `${string}:${string}:position` | `${string}:${string}:quotes` | `${string}:${string}:resize` | `${string}:${string}:rotate` | `${string}:${string}:rowGap` | `${string}:${string}:rubyAlign` | `${string}:${string}:rubyMerge` | `${string}:${string}:rubyPosition` | `${string}:${string}:scale` | `${string}:${string}:scrollbarColor` | `${string}:${string}:scrollbarGutter` | `${string}:${string}:scrollbarWidth` | `${string}:${string}:scrollBehavior` | `${string}:${string}:scrollMarginBlockStart` | `${string}:${string}:scrollMarginBlockEnd` | `${string}:${string}:scrollMarginBottom` | `${string}:${string}:scrollMarginInlineStart` | `${string}:${string}:scrollMarginInlineEnd` | `${string}:${string}:scrollMarginLeft` | `${string}:${string}:scrollMarginRight` | `${string}:${string}:scrollMarginTop` | `${string}:${string}:scrollPaddingBlockStart` | `${string}:${string}:scrollPaddingBlockEnd` | `${string}:${string}:scrollPaddingBottom` | `${string}:${string}:scrollPaddingInlineStart` | `${string}:${string}:scrollPaddingInlineEnd` | `${string}:${string}:scrollPaddingLeft` | `${string}:${string}:scrollPaddingRight` | `${string}:${string}:scrollPaddingTop` | `${string}:${string}:scrollSnapAlign` | `${string}:${string}:scrollSnapStop` | `${string}:${string}:scrollSnapType` | `${string}:${string}:scrollTimelineAxis` | `${string}:${string}:scrollTimelineName` | `${string}:${string}:shapeImageThreshold` | `${string}:${string}:shapeMargin` | `${string}:${string}:shapeOutside` | `${string}:${string}:tabSize` | `${string}:${string}:tableLayout` | `${string}:${string}:textAlign` | `${string}:${string}:textAlignLast` | `${string}:${string}:textCombineUpright` | `${string}:${string}:textDecorationColor` | `${string}:${string}:textDecorationLine` | `${string}:${string}:textDecorationSkip` | `${string}:${string}:textDecorationSkipInk` | `${string}:${string}:textDecorationStyle` | `${string}:${string}:textDecorationThickness` | `${string}:${string}:textEmphasisColor` | `${string}:${string}:textEmphasisPosition` | `${string}:${string}:textEmphasisStyle` | `${string}:${string}:textIndent` | `${string}:${string}:textJustify` | `${string}:${string}:textOrientation` | `${string}:${string}:textOverflow` | `${string}:${string}:textRendering` | `${string}:${string}:textShadow` | `${string}:${string}:textSizeAdjust` | `${string}:${string}:textTransform` | `${string}:${string}:textUnderlineOffset` | `${string}:${string}:textUnderlinePosition` | `${string}:${string}:touchAction` | `${string}:${string}:transform` | `${string}:${string}:transformBox` | `${string}:${string}:transformOrigin` | `${string}:${string}:transformStyle` | `${string}:${string}:transitionDelay` | `${string}:${string}:transitionDuration` | `${string}:${string}:transitionProperty` | `${string}:${string}:transitionTimingFunction` | `${string}:${string}:translate` | `${string}:${string}:unicodeBidi` | `${string}:${string}:userSelect` | `${string}:${string}:verticalAlign` | `${string}:${string}:visibility` | `${string}:${string}:whiteSpace` | `${string}:${string}:widows` | `${string}:${string}:willChange` | `${string}:${string}:wordBreak` | `${string}:${string}:wordSpacing` | `${string}:${string}:wordWrap` | `${string}:${string}:writingMode` | `${string}:${string}:zIndex`, {
12
+ value: {
13
+ type: "unit";
14
+ value: number;
15
+ unit: "number" | "x" | "s" | "%" | "px" | "dppx" | "deg" | "grad" | "rad" | "turn" | "db" | "fr" | "hz" | "khz" | "cm" | "mm" | "q" | "in" | "pt" | "pc" | "em" | "rem" | "ex" | "rex" | "cap" | "rcap" | "ch" | "rch" | "ic" | "ric" | "lh" | "rlh" | "vw" | "svw" | "lvw" | "dvw" | "vh" | "svh" | "lvh" | "dvh" | "vi" | "svi" | "lvi" | "dvi" | "vb" | "svb" | "lvb" | "dvb" | "vmin" | "svmin" | "lvmin" | "dvmin" | "vmax" | "svmax" | "lvmax" | "dvmax" | "cqw" | "cqh" | "cqi" | "cqb" | "cqmin" | "cqmax" | "dpi" | "dpcm" | "st" | "ms";
16
+ } | {
17
+ type: "keyword";
18
+ value: string;
19
+ } | {
20
+ hidden?: boolean | undefined;
21
+ type: "unparsed";
22
+ value: string;
23
+ } | {
24
+ type: "fontFamily";
25
+ value: string[];
26
+ } | {
27
+ type: "rgb";
28
+ alpha: number;
29
+ r: number;
30
+ g: number;
31
+ b: number;
32
+ } | {
33
+ hidden?: boolean | undefined;
34
+ type: "image";
35
+ value: {
36
+ type: "asset";
37
+ value: {
38
+ name: string;
39
+ path: string;
40
+ type: "image";
41
+ format: string;
42
+ id: string;
43
+ projectId: string;
44
+ size: number;
45
+ description: string | null;
46
+ location: "FS" | "REMOTE";
47
+ createdAt: string;
48
+ meta: {
49
+ width: number;
50
+ height: number;
51
+ };
52
+ };
53
+ };
54
+ } | {
55
+ type: "invalid";
56
+ value: string;
57
+ } | {
58
+ type: "unset";
59
+ value: "";
60
+ } | {
61
+ type: "tuple";
62
+ value: ({
63
+ type: "unit";
64
+ value: number;
65
+ unit: "number" | "x" | "s" | "%" | "px" | "dppx" | "deg" | "grad" | "rad" | "turn" | "db" | "fr" | "hz" | "khz" | "cm" | "mm" | "q" | "in" | "pt" | "pc" | "em" | "rem" | "ex" | "rex" | "cap" | "rcap" | "ch" | "rch" | "ic" | "ric" | "lh" | "rlh" | "vw" | "svw" | "lvw" | "dvw" | "vh" | "svh" | "lvh" | "dvh" | "vi" | "svi" | "lvi" | "dvi" | "vb" | "svb" | "lvb" | "dvb" | "vmin" | "svmin" | "lvmin" | "dvmin" | "vmax" | "svmax" | "lvmax" | "dvmax" | "cqw" | "cqh" | "cqi" | "cqb" | "cqmin" | "cqmax" | "dpi" | "dpcm" | "st" | "ms";
66
+ } | {
67
+ type: "keyword";
68
+ value: string;
69
+ } | {
70
+ hidden?: boolean | undefined;
71
+ type: "unparsed";
72
+ value: string;
73
+ })[];
74
+ } | {
75
+ type: "layers";
76
+ value: ({
77
+ type: "unit";
78
+ value: number;
79
+ unit: "number" | "x" | "s" | "%" | "px" | "dppx" | "deg" | "grad" | "rad" | "turn" | "db" | "fr" | "hz" | "khz" | "cm" | "mm" | "q" | "in" | "pt" | "pc" | "em" | "rem" | "ex" | "rex" | "cap" | "rcap" | "ch" | "rch" | "ic" | "ric" | "lh" | "rlh" | "vw" | "svw" | "lvw" | "dvw" | "vh" | "svh" | "lvh" | "dvh" | "vi" | "svi" | "lvi" | "dvi" | "vb" | "svb" | "lvb" | "dvb" | "vmin" | "svmin" | "lvmin" | "dvmin" | "vmax" | "svmax" | "lvmax" | "dvmax" | "cqw" | "cqh" | "cqi" | "cqb" | "cqmin" | "cqmax" | "dpi" | "dpcm" | "st" | "ms";
80
+ } | {
81
+ type: "keyword";
82
+ value: string;
83
+ } | {
84
+ hidden?: boolean | undefined;
85
+ type: "unparsed";
86
+ value: string;
87
+ } | {
88
+ hidden?: boolean | undefined;
89
+ type: "image";
90
+ value: {
91
+ type: "asset";
92
+ value: {
93
+ name: string;
94
+ path: string;
95
+ type: "image";
96
+ format: string;
97
+ id: string;
98
+ projectId: string;
99
+ size: number;
100
+ description: string | null;
101
+ location: "FS" | "REMOTE";
102
+ createdAt: string;
103
+ meta: {
104
+ width: number;
105
+ height: number;
106
+ };
107
+ };
108
+ };
109
+ } | {
110
+ type: "invalid";
111
+ value: string;
112
+ } | {
113
+ type: "tuple";
114
+ value: ({
115
+ type: "unit";
116
+ value: number;
117
+ unit: "number" | "x" | "s" | "%" | "px" | "dppx" | "deg" | "grad" | "rad" | "turn" | "db" | "fr" | "hz" | "khz" | "cm" | "mm" | "q" | "in" | "pt" | "pc" | "em" | "rem" | "ex" | "rex" | "cap" | "rcap" | "ch" | "rch" | "ic" | "ric" | "lh" | "rlh" | "vw" | "svw" | "lvw" | "dvw" | "vh" | "svh" | "lvh" | "dvh" | "vi" | "svi" | "lvi" | "dvi" | "vb" | "svb" | "lvb" | "dvb" | "vmin" | "svmin" | "lvmin" | "dvmin" | "vmax" | "svmax" | "lvmax" | "dvmax" | "cqw" | "cqh" | "cqi" | "cqb" | "cqmin" | "cqmax" | "dpi" | "dpcm" | "st" | "ms";
118
+ } | {
119
+ type: "keyword";
120
+ value: string;
121
+ } | {
122
+ hidden?: boolean | undefined;
123
+ type: "unparsed";
124
+ value: string;
125
+ })[];
126
+ })[];
127
+ } | {
128
+ type: "var";
129
+ value: string;
130
+ fallbacks: ({
131
+ type: "unit";
132
+ value: number;
133
+ unit: "number" | "x" | "s" | "%" | "px" | "dppx" | "deg" | "grad" | "rad" | "turn" | "db" | "fr" | "hz" | "khz" | "cm" | "mm" | "q" | "in" | "pt" | "pc" | "em" | "rem" | "ex" | "rex" | "cap" | "rcap" | "ch" | "rch" | "ic" | "ric" | "lh" | "rlh" | "vw" | "svw" | "lvw" | "dvw" | "vh" | "svh" | "lvh" | "dvh" | "vi" | "svi" | "lvi" | "dvi" | "vb" | "svb" | "lvb" | "dvb" | "vmin" | "svmin" | "lvmin" | "dvmin" | "vmax" | "svmax" | "lvmax" | "dvmax" | "cqw" | "cqh" | "cqi" | "cqb" | "cqmin" | "cqmax" | "dpi" | "dpcm" | "st" | "ms";
134
+ } | {
135
+ type: "keyword";
136
+ value: string;
137
+ } | {
138
+ hidden?: boolean | undefined;
139
+ type: "unparsed";
140
+ value: string;
141
+ } | {
142
+ type: "fontFamily";
143
+ value: string[];
144
+ } | {
145
+ type: "rgb";
146
+ alpha: number;
147
+ r: number;
148
+ g: number;
149
+ b: number;
150
+ } | {
151
+ hidden?: boolean | undefined;
152
+ type: "image";
153
+ value: {
154
+ type: "asset";
155
+ value: {
156
+ name: string;
157
+ path: string;
158
+ type: "image";
159
+ format: string;
160
+ id: string;
161
+ projectId: string;
162
+ size: number;
163
+ description: string | null;
164
+ location: "FS" | "REMOTE";
165
+ createdAt: string;
166
+ meta: {
167
+ width: number;
168
+ height: number;
169
+ };
170
+ };
171
+ };
172
+ } | {
173
+ type: "tuple";
174
+ value: ({
175
+ type: "unit";
176
+ value: number;
177
+ unit: "number" | "x" | "s" | "%" | "px" | "dppx" | "deg" | "grad" | "rad" | "turn" | "db" | "fr" | "hz" | "khz" | "cm" | "mm" | "q" | "in" | "pt" | "pc" | "em" | "rem" | "ex" | "rex" | "cap" | "rcap" | "ch" | "rch" | "ic" | "ric" | "lh" | "rlh" | "vw" | "svw" | "lvw" | "dvw" | "vh" | "svh" | "lvh" | "dvh" | "vi" | "svi" | "lvi" | "dvi" | "vb" | "svb" | "lvb" | "dvb" | "vmin" | "svmin" | "lvmin" | "dvmin" | "vmax" | "svmax" | "lvmax" | "dvmax" | "cqw" | "cqh" | "cqi" | "cqb" | "cqmin" | "cqmax" | "dpi" | "dpcm" | "st" | "ms";
178
+ } | {
179
+ type: "keyword";
180
+ value: string;
181
+ } | {
182
+ hidden?: boolean | undefined;
183
+ type: "unparsed";
184
+ value: string;
185
+ })[];
186
+ } | {
187
+ type: "layers";
188
+ value: ({
189
+ type: "unit";
190
+ value: number;
191
+ unit: "number" | "x" | "s" | "%" | "px" | "dppx" | "deg" | "grad" | "rad" | "turn" | "db" | "fr" | "hz" | "khz" | "cm" | "mm" | "q" | "in" | "pt" | "pc" | "em" | "rem" | "ex" | "rex" | "cap" | "rcap" | "ch" | "rch" | "ic" | "ric" | "lh" | "rlh" | "vw" | "svw" | "lvw" | "dvw" | "vh" | "svh" | "lvh" | "dvh" | "vi" | "svi" | "lvi" | "dvi" | "vb" | "svb" | "lvb" | "dvb" | "vmin" | "svmin" | "lvmin" | "dvmin" | "vmax" | "svmax" | "lvmax" | "dvmax" | "cqw" | "cqh" | "cqi" | "cqb" | "cqmin" | "cqmax" | "dpi" | "dpcm" | "st" | "ms";
192
+ } | {
193
+ type: "keyword";
194
+ value: string;
195
+ } | {
196
+ hidden?: boolean | undefined;
197
+ type: "unparsed";
198
+ value: string;
199
+ } | {
200
+ hidden?: boolean | undefined;
201
+ type: "image";
202
+ value: {
203
+ type: "asset";
204
+ value: {
205
+ name: string;
206
+ path: string;
207
+ type: "image";
208
+ format: string;
209
+ id: string;
210
+ projectId: string;
211
+ size: number;
212
+ description: string | null;
213
+ location: "FS" | "REMOTE";
214
+ createdAt: string;
215
+ meta: {
216
+ width: number;
217
+ height: number;
218
+ };
219
+ };
220
+ };
221
+ } | {
222
+ type: "invalid";
223
+ value: string;
224
+ } | {
225
+ type: "tuple";
226
+ value: ({
227
+ type: "unit";
228
+ value: number;
229
+ unit: "number" | "x" | "s" | "%" | "px" | "dppx" | "deg" | "grad" | "rad" | "turn" | "db" | "fr" | "hz" | "khz" | "cm" | "mm" | "q" | "in" | "pt" | "pc" | "em" | "rem" | "ex" | "rex" | "cap" | "rcap" | "ch" | "rch" | "ic" | "ric" | "lh" | "rlh" | "vw" | "svw" | "lvw" | "dvw" | "vh" | "svh" | "lvh" | "dvh" | "vi" | "svi" | "lvi" | "dvi" | "vb" | "svb" | "lvb" | "dvb" | "vmin" | "svmin" | "lvmin" | "dvmin" | "vmax" | "svmax" | "lvmax" | "dvmax" | "cqw" | "cqh" | "cqi" | "cqb" | "cqmin" | "cqmax" | "dpi" | "dpcm" | "st" | "ms";
230
+ } | {
231
+ type: "keyword";
232
+ value: string;
233
+ } | {
234
+ hidden?: boolean | undefined;
235
+ type: "unparsed";
236
+ value: string;
237
+ })[];
238
+ })[];
239
+ })[];
240
+ };
241
+ styleSourceId: string;
242
+ breakpointId: string;
243
+ property: "filter" | "float" | "fontFamily" | "width" | "height" | "color" | "left" | "right" | "top" | "bottom" | "contain" | "clip" | "content" | `--${string}` | "accentColor" | "alignContent" | "alignItems" | "alignSelf" | "alignTracks" | "animationComposition" | "animationDelay" | "animationDirection" | "animationDuration" | "animationFillMode" | "animationIterationCount" | "animationName" | "animationPlayState" | "animationTimingFunction" | "animationTimeline" | "appearance" | "aspectRatio" | "backdropFilter" | "backfaceVisibility" | "backgroundAttachment" | "backgroundBlendMode" | "backgroundClip" | "backgroundColor" | "backgroundImage" | "backgroundOrigin" | "backgroundPosition" | "backgroundPositionX" | "backgroundPositionY" | "backgroundRepeat" | "backgroundSize" | "blockOverflow" | "blockSize" | "borderBlockColor" | "borderBlockStyle" | "borderBlockWidth" | "borderBlockEndColor" | "borderBlockEndStyle" | "borderBlockEndWidth" | "borderBlockStartColor" | "borderBlockStartStyle" | "borderBlockStartWidth" | "borderBottomColor" | "borderBottomLeftRadius" | "borderBottomRightRadius" | "borderBottomStyle" | "borderBottomWidth" | "borderCollapse" | "borderEndEndRadius" | "borderEndStartRadius" | "borderImageOutset" | "borderImageRepeat" | "borderImageSlice" | "borderImageSource" | "borderImageWidth" | "borderInlineColor" | "borderInlineStyle" | "borderInlineWidth" | "borderInlineEndColor" | "borderInlineEndStyle" | "borderInlineEndWidth" | "borderInlineStartColor" | "borderInlineStartStyle" | "borderInlineStartWidth" | "borderLeftColor" | "borderLeftStyle" | "borderLeftWidth" | "borderRightColor" | "borderRightStyle" | "borderRightWidth" | "borderSpacing" | "borderStartEndRadius" | "borderStartStartRadius" | "borderTopColor" | "borderTopLeftRadius" | "borderTopRightRadius" | "borderTopStyle" | "borderTopWidth" | "boxDecorationBreak" | "boxShadow" | "boxSizing" | "breakAfter" | "breakBefore" | "breakInside" | "captionSide" | "caretColor" | "caretShape" | "clear" | "clipPath" | "printColorAdjust" | "colorScheme" | "columnCount" | "columnFill" | "columnGap" | "columnRuleColor" | "columnRuleStyle" | "columnRuleWidth" | "columnSpan" | "columnWidth" | "containIntrinsicBlockSize" | "containIntrinsicHeight" | "containIntrinsicInlineSize" | "containIntrinsicWidth" | "contentVisibility" | "counterIncrement" | "counterReset" | "counterSet" | "cursor" | "direction" | "display" | "emptyCells" | "flexBasis" | "flexDirection" | "flexGrow" | "flexShrink" | "flexWrap" | "fontFeatureSettings" | "fontKerning" | "fontLanguageOverride" | "fontOpticalSizing" | "fontVariationSettings" | "fontSize" | "fontSizeAdjust" | "fontStretch" | "fontStyle" | "fontSynthesis" | "fontVariant" | "fontVariantAlternates" | "fontVariantCaps" | "fontVariantEastAsian" | "fontVariantLigatures" | "fontVariantNumeric" | "fontVariantPosition" | "fontWeight" | "forcedColorAdjust" | "gridAutoColumns" | "gridAutoFlow" | "gridAutoRows" | "gridColumnEnd" | "gridColumnStart" | "gridRowEnd" | "gridRowStart" | "gridTemplateAreas" | "gridTemplateColumns" | "gridTemplateRows" | "hangingPunctuation" | "hyphenateCharacter" | "hyphens" | "imageOrientation" | "imageRendering" | "imageResolution" | "initialLetter" | "initialLetterAlign" | "inlineSize" | "inputSecurity" | "insetBlockEnd" | "insetBlockStart" | "insetInlineEnd" | "insetInlineStart" | "isolation" | "justifyContent" | "justifyItems" | "justifySelf" | "justifyTracks" | "letterSpacing" | "lineBreak" | "lineClamp" | "lineHeight" | "lineHeightStep" | "listStyleImage" | "listStylePosition" | "listStyleType" | "marginBlockEnd" | "marginBlockStart" | "marginBottom" | "marginInlineEnd" | "marginInlineStart" | "marginLeft" | "marginRight" | "marginTop" | "marginTrim" | "maskBorderMode" | "maskBorderOutset" | "maskBorderRepeat" | "maskBorderSlice" | "maskBorderSource" | "maskBorderWidth" | "maskClip" | "maskComposite" | "maskImage" | "maskMode" | "maskOrigin" | "maskPosition" | "maskRepeat" | "maskSize" | "maskType" | "masonryAutoFlow" | "mathDepth" | "mathShift" | "mathStyle" | "maxBlockSize" | "maxHeight" | "maxInlineSize" | "maxLines" | "maxWidth" | "minBlockSize" | "minHeight" | "minInlineSize" | "minWidth" | "mixBlendMode" | "objectFit" | "objectPosition" | "offsetAnchor" | "offsetDistance" | "offsetPath" | "offsetPosition" | "offsetRotate" | "opacity" | "order" | "orphans" | "outlineColor" | "outlineOffset" | "outlineStyle" | "outlineWidth" | "overflow" | "overflowAnchor" | "overflowBlock" | "overflowClipMargin" | "overflowInline" | "overflowWrap" | "overflowX" | "overflowY" | "overscrollBehavior" | "overscrollBehaviorBlock" | "overscrollBehaviorInline" | "overscrollBehaviorX" | "overscrollBehaviorY" | "paddingBlockEnd" | "paddingBlockStart" | "paddingBottom" | "paddingInlineEnd" | "paddingInlineStart" | "paddingLeft" | "paddingRight" | "paddingTop" | "pageBreakAfter" | "pageBreakBefore" | "pageBreakInside" | "paintOrder" | "perspective" | "perspectiveOrigin" | "pointerEvents" | "position" | "quotes" | "resize" | "rotate" | "rowGap" | "rubyAlign" | "rubyMerge" | "rubyPosition" | "scale" | "scrollbarColor" | "scrollbarGutter" | "scrollbarWidth" | "scrollBehavior" | "scrollMarginBlockStart" | "scrollMarginBlockEnd" | "scrollMarginBottom" | "scrollMarginInlineStart" | "scrollMarginInlineEnd" | "scrollMarginLeft" | "scrollMarginRight" | "scrollMarginTop" | "scrollPaddingBlockStart" | "scrollPaddingBlockEnd" | "scrollPaddingBottom" | "scrollPaddingInlineStart" | "scrollPaddingInlineEnd" | "scrollPaddingLeft" | "scrollPaddingRight" | "scrollPaddingTop" | "scrollSnapAlign" | "scrollSnapStop" | "scrollSnapType" | "scrollTimelineAxis" | "scrollTimelineName" | "shapeImageThreshold" | "shapeMargin" | "shapeOutside" | "tabSize" | "tableLayout" | "textAlign" | "textAlignLast" | "textCombineUpright" | "textDecorationColor" | "textDecorationLine" | "textDecorationSkip" | "textDecorationSkipInk" | "textDecorationStyle" | "textDecorationThickness" | "textEmphasisColor" | "textEmphasisPosition" | "textEmphasisStyle" | "textIndent" | "textJustify" | "textOrientation" | "textOverflow" | "textRendering" | "textShadow" | "textSizeAdjust" | "textTransform" | "textUnderlineOffset" | "textUnderlinePosition" | "touchAction" | "transform" | "transformBox" | "transformOrigin" | "transformStyle" | "transitionDelay" | "transitionDuration" | "transitionProperty" | "transitionTimingFunction" | "translate" | "unicodeBidi" | "userSelect" | "verticalAlign" | "visibility" | "whiteSpace" | "widows" | "willChange" | "wordBreak" | "wordSpacing" | "wordWrap" | "writingMode" | "zIndex";
244
+ }>, styleSourceSelections: Map<string, {
245
+ values: string[];
246
+ instanceId: string;
247
+ }>) => StyleRule[];
248
+ export {};
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,9 @@
1
+ export * from "./css";
2
+ export * from "./tree";
3
+ export * from "./components";
4
+ export * from "./pubsub";
5
+ export * from "./app";
6
+ export * from "./components/components";
7
+ export * from "./components/components-utils";
8
+ export { customComponents, customComponentMetas, customComponentPropsMetas, } from "./app/custom-components";
9
+ export { type WsComponentPropsMeta, type WsComponentMeta, componentCategories, } from "./components/component-meta";
@@ -0,0 +1,97 @@
1
+ import type { Instance, Page, Prop } from "@webstudio-is/project-build";
2
+ export type PropsByInstanceId = Map<Instance["id"], Prop[]>;
3
+ export type Pages = Map<Page["id"], Page>;
4
+ export declare const getPropsByInstanceId: (props: Map<string, {
5
+ required?: boolean | undefined;
6
+ name: string;
7
+ type: "number";
8
+ value: number;
9
+ id: string;
10
+ instanceId: string;
11
+ } | {
12
+ required?: boolean | undefined;
13
+ name: string;
14
+ type: "string";
15
+ value: string;
16
+ id: string;
17
+ instanceId: string;
18
+ } | {
19
+ required?: boolean | undefined;
20
+ name: string;
21
+ type: "boolean";
22
+ value: boolean;
23
+ id: string;
24
+ instanceId: string;
25
+ } | {
26
+ required?: boolean | undefined;
27
+ name: string;
28
+ type: "asset";
29
+ value: string;
30
+ id: string;
31
+ instanceId: string;
32
+ } | {
33
+ required?: boolean | undefined;
34
+ name: string;
35
+ type: "page";
36
+ value: string;
37
+ id: string;
38
+ instanceId: string;
39
+ } | {
40
+ required?: boolean | undefined;
41
+ name: string;
42
+ type: "string[]";
43
+ value: string[];
44
+ id: string;
45
+ instanceId: string;
46
+ }>) => PropsByInstanceId;
47
+ export declare const useInstanceProps: (instanceId: Instance["id"]) => Record<string, string | number | boolean | string[]>;
48
+ export declare const usePropAsset: (instanceId: Instance["id"], name: string) => {
49
+ name: string;
50
+ path: string;
51
+ type: "font";
52
+ format: "ttf" | "woff" | "woff2" | "otf";
53
+ id: string;
54
+ projectId: string;
55
+ size: number;
56
+ description: string | null;
57
+ location: "FS" | "REMOTE";
58
+ createdAt: string;
59
+ meta: {
60
+ style: "normal" | "italic" | "oblique";
61
+ weight: number;
62
+ family: string;
63
+ } | {
64
+ variationAxes: Partial<Record<"wght" | "wdth" | "slnt" | "opsz" | "ital" | "GRAD" | "XTRA" | "XOPQ" | "YOPQ" | "YTLC" | "YTUC" | "YTAS" | "YTDE" | "YTFI", {
65
+ name: string;
66
+ min: number;
67
+ default: number;
68
+ max: number;
69
+ }>>;
70
+ family: string;
71
+ };
72
+ } | {
73
+ name: string;
74
+ path: string;
75
+ type: "image";
76
+ format: string;
77
+ id: string;
78
+ projectId: string;
79
+ size: number;
80
+ description: string | null;
81
+ location: "FS" | "REMOTE";
82
+ createdAt: string;
83
+ meta: {
84
+ width: number;
85
+ height: number;
86
+ };
87
+ } | undefined;
88
+ export declare const resolveUrlProp: (instanceId: Instance["id"], name: string, propsByInstanceId: PropsByInstanceId, pages: Pages) => Page | string | undefined;
89
+ export declare const usePropUrl: (instanceId: Instance["id"], name: string) => string | {
90
+ name: string;
91
+ path: string;
92
+ id: string;
93
+ meta: Record<string, string>;
94
+ title: string;
95
+ rootInstanceId: string;
96
+ } | undefined;
97
+ export declare const getInstanceIdFromComponentProps: (props: Record<string, unknown>) => string;
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,28 @@
1
+ /// <reference types="react" />
2
+ export declare const createPubsub: <PublishMap>() => {
3
+ /**
4
+ * To publish a postMessage event on the current window and parent window from the iframe.
5
+ */
6
+ publish<Type extends keyof PublishMap>(action: undefined extends PublishMap[Type] ? {
7
+ type: Type;
8
+ payload?: PublishMap[Type] | undefined;
9
+ } : {
10
+ type: Type;
11
+ payload: PublishMap[Type];
12
+ }): void;
13
+ /**
14
+ * To publish a postMessage event on the iframe and parent window from the parent window.
15
+ */
16
+ usePublish(): readonly [<Type_1 extends keyof PublishMap>(action: undefined extends PublishMap[Type_1] ? {
17
+ type: Type_1;
18
+ payload?: PublishMap[Type_1] | undefined;
19
+ } : {
20
+ type: Type_1;
21
+ payload: PublishMap[Type_1];
22
+ }) => void, import("react").MutableRefObject<HTMLIFrameElement | null>];
23
+ /**
24
+ * To subscribe a message event on the current window.
25
+ */
26
+ useSubscribe<Type_2 extends keyof PublishMap>(type: Type_2, onAction: (payload: PublishMap[Type_2]) => void): void;
27
+ subscribe<Type_3 extends keyof PublishMap>(type: Type_3, onAction: (payload: PublishMap[Type_3]) => void): import("nanoevents").Unsubscribe;
28
+ };
@@ -0,0 +1 @@
1
+ export * from "./create";
@@ -0,0 +1 @@
1
+ export declare const batchUpdate: (update: () => void) => void;
@@ -0,0 +1,16 @@
1
+ import { type ComponentProps } from "react";
2
+ import type { ReadableAtom } from "nanostores";
3
+ import type { Assets } from "@webstudio-is/asset-uploader";
4
+ import type { Instance } from "@webstudio-is/project-build";
5
+ import type { GetComponent } from "../components/components-utils";
6
+ import type { Pages, PropsByInstanceId } from "../props";
7
+ import type { WebstudioComponent } from "./webstudio-component";
8
+ export declare const createElementsTree: ({ sandbox, instance, propsByInstanceIdStore, assetsStore, pagesStore, Component, getComponent, }: {
9
+ sandbox?: boolean | undefined;
10
+ instance: Instance;
11
+ propsByInstanceIdStore: ReadableAtom<PropsByInstanceId>;
12
+ assetsStore: ReadableAtom<Assets>;
13
+ pagesStore: ReadableAtom<Pages>;
14
+ Component: (props: ComponentProps<typeof WebstudioComponent>) => JSX.Element;
15
+ getComponent: GetComponent;
16
+ }) => JSX.Element;
@@ -0,0 +1,3 @@
1
+ export * from "./create-elements-tree";
2
+ export * from "./root";
3
+ export * from "./webstudio-component";
@@ -0,0 +1,25 @@
1
+ import type { ComponentProps } from "react";
2
+ import type { Build, Page } from "@webstudio-is/project-build";
3
+ import type { Asset } from "@webstudio-is/asset-uploader";
4
+ import { WebstudioComponent } from "./webstudio-component";
5
+ import { registerComponents } from "../components";
6
+ import { type Params } from "../app/params";
7
+ import type { GetComponent } from "../components/components-utils";
8
+ export type Data = {
9
+ page: Page;
10
+ pages: Array<Page>;
11
+ build: Build;
12
+ assets: Array<Asset>;
13
+ params?: Params;
14
+ };
15
+ export type RootPropsData = Omit<Data, "build"> & {
16
+ build: Pick<Data["build"], "instances" | "props">;
17
+ };
18
+ type RootProps = {
19
+ data: RootPropsData;
20
+ Component?: (props: ComponentProps<typeof WebstudioComponent>) => JSX.Element;
21
+ customComponents?: Parameters<typeof registerComponents>[0];
22
+ getComponent: GetComponent;
23
+ };
24
+ export declare const InstanceRoot: ({ data, Component, customComponents, getComponent, }: RootProps) => JSX.Element | null;
25
+ export {};
@@ -0,0 +1,2 @@
1
+ /// <reference types="react" />
2
+ export declare const SessionStoragePolyfill: () => JSX.Element;
@@ -0,0 +1,15 @@
1
+ /// <reference types="react" />
2
+ import type { Instance } from "@webstudio-is/project-build";
3
+ import type { GetComponent } from "../components/components-utils";
4
+ export declare const renderWebstudioComponentChildren: (children: Array<JSX.Element | string> | undefined) => Array<JSX.Element | string | Array<JSX.Element | string>> | undefined;
5
+ type WebstudioComponentProps = {
6
+ instance: Instance;
7
+ instanceSelector: Instance["id"][];
8
+ children: Array<JSX.Element | string>;
9
+ getComponent: GetComponent;
10
+ };
11
+ export declare const WebstudioComponent: ({ instance, instanceSelector, children, getComponent, ...rest }: WebstudioComponentProps) => JSX.Element;
12
+ export declare const idAttribute = "data-ws-id";
13
+ export declare const componentAttribute = "data-ws-component";
14
+ export declare const collapsedAttribute = "data-ws-collapsed";
15
+ export {};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@webstudio-is/react-sdk",
3
- "version": "0.51.0",
3
+ "version": "0.52.0",
4
4
  "description": "Webstudio JavaScript / TypeScript API",
5
5
  "author": "Webstudio <github@webstudio.is>",
6
6
  "homepage": "https://webstudio.is",
@@ -8,9 +8,9 @@
8
8
  "devDependencies": {
9
9
  "@babel/core": "^7.21.0",
10
10
  "@jest/globals": "^29.3.1",
11
- "@remix-run/node": "1.14.3",
12
- "@remix-run/react": "1.14.3",
13
- "@remix-run/server-runtime": "1.14.3",
11
+ "@remix-run/node": "1.15.0",
12
+ "@remix-run/react": "1.15.0",
13
+ "@remix-run/server-runtime": "1.15.0",
14
14
  "@storybook/react": "^6.5.16",
15
15
  "@types/node": "^18.11.18",
16
16
  "@types/react": "^17.0.24",
@@ -18,8 +18,7 @@
18
18
  "jest": "^29.3.1",
19
19
  "react": "^17.0.2",
20
20
  "react-dom": "^17.0.2",
21
- "remix-utils": "^4.1.0",
22
- "typescript": "4.9.5",
21
+ "typescript": "5.0.3",
23
22
  "zod": "^3.19.1",
24
23
  "@webstudio-is/jest-config": "^1.0.2",
25
24
  "@webstudio-is/scripts": "^0.0.0",
@@ -31,32 +30,33 @@
31
30
  "@remix-run/server-runtime": "1.9.0",
32
31
  "react": "^17.0.2",
33
32
  "react-dom": "^17.0.2",
34
- "remix-utils": "^4.1.0",
35
33
  "zod": "^3.19.1"
36
34
  },
37
35
  "dependencies": {
38
36
  "@nanostores/react": "^0.4.1",
39
37
  "detect-font": "^0.1.5",
40
- "mitt": "^3.0.0",
38
+ "html-tags": "^3.2.0",
39
+ "nanoevents": "^7.0.1",
41
40
  "nanostores": "^0.7.1",
42
- "warn-once": "^0.1.1",
43
- "@webstudio-is/asset-uploader": "^0.51.0",
44
- "@webstudio-is/css-data": "^0.51.0",
45
- "@webstudio-is/css-vars": "^0.51.0",
46
- "@webstudio-is/generate-arg-types": "^0.51.0",
47
- "@webstudio-is/icons": "^0.51.0",
48
- "@webstudio-is/image": "^0.51.0",
49
- "@webstudio-is/prisma-client": "^0.51.0",
50
- "@webstudio-is/project-build": "^0.51.0"
41
+ "@webstudio-is/asset-uploader": "^0.52.0",
42
+ "@webstudio-is/css-data": "^0.52.0",
43
+ "@webstudio-is/css-engine": "^0.52.0",
44
+ "@webstudio-is/css-vars": "^0.52.0",
45
+ "@webstudio-is/fonts": "^0.52.0",
46
+ "@webstudio-is/generate-arg-types": "^0.52.0",
47
+ "@webstudio-is/image": "^0.52.0",
48
+ "@webstudio-is/icons": "^0.52.0",
49
+ "@webstudio-is/prisma-client": "^0.52.0",
50
+ "@webstudio-is/project-build": "^0.52.0"
51
51
  },
52
52
  "exports": {
53
53
  ".": {
54
54
  "source": "./src/index.ts",
55
55
  "import": "./lib/index.js",
56
- "require": "./lib/cjs/index.cjs"
56
+ "require": "./lib/cjs/index.js"
57
57
  }
58
58
  },
59
- "types": "src/index.ts",
59
+ "types": "lib/types/index.d.ts",
60
60
  "files": [
61
61
  "lib/*",
62
62
  "src/*",
@@ -69,6 +69,7 @@
69
69
  "dev": "build-package --watch",
70
70
  "build": "build-package",
71
71
  "build:args": "generate-arg-types './src/components/*.tsx !./src/**/*.stories.tsx !./src/**/*.ws.tsx' && prettier --write \"**/*.props.ts\"",
72
+ "dts": "tsc --emitDeclarationOnly --declaration --declarationDir lib/types",
72
73
  "typecheck": "tsc --noEmit",
73
74
  "test": "NODE_OPTIONS=--experimental-vm-modules jest --passWithNoTests",
74
75
  "lint": "eslint ./src --ext .ts,.tsx --max-warnings 0",