@makeswift/runtime 0.24.0-canary.0 → 0.24.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 (484) hide show
  1. package/dist/cjs/api/react.js +28 -7
  2. package/dist/cjs/api/react.js.map +1 -1
  3. package/dist/cjs/api/site-version.js +36 -0
  4. package/dist/cjs/api/site-version.js.map +1 -0
  5. package/dist/cjs/components/builtin/Box/register.js +3 -3
  6. package/dist/cjs/components/builtin/Box/register.js.map +1 -1
  7. package/dist/cjs/components/builtin/Button/register.js +2 -2
  8. package/dist/cjs/components/builtin/Button/register.js.map +1 -1
  9. package/dist/cjs/components/builtin/Carousel/Carousel.js +6 -5
  10. package/dist/cjs/components/builtin/Carousel/Carousel.js.map +1 -1
  11. package/dist/cjs/components/builtin/Carousel/register.js +2 -2
  12. package/dist/cjs/components/builtin/Carousel/register.js.map +1 -1
  13. package/dist/cjs/components/builtin/Countdown/register.js +2 -2
  14. package/dist/cjs/components/builtin/Countdown/register.js.map +1 -1
  15. package/dist/cjs/components/builtin/Form/register.js +4 -4
  16. package/dist/cjs/components/builtin/Form/register.js.map +1 -1
  17. package/dist/cjs/components/builtin/Image/Image.js +3 -3
  18. package/dist/cjs/components/builtin/Image/Image.js.map +1 -1
  19. package/dist/cjs/components/builtin/Navigation/register.js +4 -4
  20. package/dist/cjs/components/builtin/Navigation/register.js.map +1 -1
  21. package/dist/cjs/components/builtin/SocialLinks/register.js +3 -3
  22. package/dist/cjs/components/builtin/SocialLinks/register.js.map +1 -1
  23. package/dist/cjs/components/builtin/Text/register.js +3 -3
  24. package/dist/cjs/components/builtin/Text/register.js.map +1 -1
  25. package/dist/cjs/components/hooks/useMediaQuery.js +5 -5
  26. package/dist/cjs/components/hooks/useMediaQuery.js.map +1 -1
  27. package/dist/cjs/components/page/Page.js +7 -4
  28. package/dist/cjs/components/page/Page.js.map +1 -1
  29. package/dist/cjs/components/page/PageHead.js +17 -8
  30. package/dist/cjs/components/page/PageHead.js.map +1 -1
  31. package/dist/cjs/components/page/page-seo-settings.js +43 -0
  32. package/dist/cjs/components/page/page-seo-settings.js.map +1 -0
  33. package/dist/cjs/components/shared/Link/index.js +3 -1
  34. package/dist/cjs/components/shared/Link/index.js.map +1 -1
  35. package/dist/cjs/components/utils/responsive-style.js +2 -3
  36. package/dist/cjs/components/utils/responsive-style.js.map +1 -1
  37. package/dist/cjs/core/index.js +18 -2
  38. package/dist/cjs/core/index.js.map +1 -1
  39. package/dist/cjs/jest-setup.js +3 -0
  40. package/dist/cjs/jest-setup.js.map +1 -1
  41. package/dist/cjs/locale.js +79 -0
  42. package/dist/cjs/locale.js.map +1 -1
  43. package/dist/cjs/next/api-handler/handlers/clear-draft.js +64 -0
  44. package/dist/cjs/next/api-handler/handlers/clear-draft.js.map +1 -0
  45. package/dist/cjs/next/api-handler/handlers/manifest.js +3 -2
  46. package/dist/cjs/next/api-handler/handlers/manifest.js.map +1 -1
  47. package/dist/cjs/next/api-handler/handlers/redirect-draft.js +77 -0
  48. package/dist/cjs/next/api-handler/handlers/redirect-draft.js.map +1 -0
  49. package/dist/cjs/next/api-handler/handlers/redirect-preview.js +67 -0
  50. package/dist/cjs/next/api-handler/handlers/redirect-preview.js.map +1 -0
  51. package/dist/cjs/next/api-handler/handlers/utils/draft.js +53 -0
  52. package/dist/cjs/next/api-handler/handlers/utils/draft.js.map +1 -0
  53. package/dist/cjs/next/api-handler/handlers/webhook/index.js +3 -3
  54. package/dist/cjs/next/api-handler/handlers/webhook/index.js.map +1 -1
  55. package/dist/cjs/next/api-handler/handlers/webhook/site-published.js +8 -5
  56. package/dist/cjs/next/api-handler/handlers/webhook/site-published.js.map +1 -1
  57. package/dist/cjs/next/api-handler/handlers/webhook/types.js.map +1 -1
  58. package/dist/cjs/next/api-handler/index.js +24 -9
  59. package/dist/cjs/next/api-handler/index.js.map +1 -1
  60. package/dist/cjs/next/cache.js +29 -0
  61. package/dist/cjs/next/cache.js.map +1 -0
  62. package/dist/cjs/next/client.js +135 -60
  63. package/dist/cjs/next/client.js.map +1 -1
  64. package/dist/cjs/next/components/page.js +3 -2
  65. package/dist/cjs/next/components/page.js.map +1 -1
  66. package/dist/cjs/next/components/tests/controls/color-control/fixtures.js +51 -0
  67. package/dist/cjs/next/components/tests/controls/color-control/fixtures.js.map +1 -0
  68. package/dist/cjs/next/components/tests/controls/page-control-prop-rendering.js +91 -35
  69. package/dist/cjs/next/components/tests/controls/page-control-prop-rendering.js.map +1 -1
  70. package/dist/cjs/next/components/tests/controls/rich-text-v2-control/fixtures.js +91 -0
  71. package/dist/cjs/next/components/tests/controls/rich-text-v2-control/fixtures.js.map +1 -0
  72. package/dist/cjs/next/components/tests/controls/style-control/fixtures.js +60 -0
  73. package/dist/cjs/next/components/tests/controls/style-control/fixtures.js.map +1 -0
  74. package/dist/cjs/next/components/tests/prop-controllers/page-prop-controller.js +20 -11
  75. package/dist/cjs/next/components/tests/prop-controllers/page-prop-controller.js.map +1 -1
  76. package/dist/cjs/next/document.js +1 -3
  77. package/dist/cjs/next/document.js.map +1 -1
  78. package/dist/cjs/next/draft-mode/index.js +3 -3
  79. package/dist/cjs/next/draft-mode/index.js.map +1 -1
  80. package/dist/cjs/next/hooks/use-is-pages-router.js.map +1 -1
  81. package/dist/cjs/next/index.js +0 -3
  82. package/dist/cjs/next/index.js.map +1 -1
  83. package/dist/cjs/next/middleware/index.js +29 -0
  84. package/dist/cjs/next/middleware/index.js.map +1 -0
  85. package/dist/cjs/next/middleware/request-utils.js +49 -0
  86. package/dist/cjs/next/middleware/request-utils.js.map +1 -0
  87. package/dist/cjs/next/preview-mode.js +4 -110
  88. package/dist/cjs/next/preview-mode.js.map +1 -1
  89. package/dist/cjs/next/root-style-registry.js +24 -20
  90. package/dist/cjs/next/root-style-registry.js.map +1 -1
  91. package/dist/cjs/next/server.js +0 -3
  92. package/dist/cjs/next/server.js.map +1 -1
  93. package/dist/cjs/next/tests/test-utils.js +61 -0
  94. package/dist/cjs/next/tests/test-utils.js.map +1 -0
  95. package/dist/cjs/runtimes/react/components/Document.js +1 -1
  96. package/dist/cjs/runtimes/react/components/Document.js.map +1 -1
  97. package/dist/cjs/runtimes/react/components/ElementData.js +1 -0
  98. package/dist/cjs/runtimes/react/components/ElementData.js.map +1 -1
  99. package/dist/cjs/runtimes/react/components/RuntimeProvider.js +14 -3
  100. package/dist/cjs/runtimes/react/components/RuntimeProvider.js.map +1 -1
  101. package/dist/cjs/runtimes/react/components/draft-switcher/draft-switcher.js +72 -0
  102. package/dist/cjs/runtimes/react/components/draft-switcher/draft-switcher.js.map +1 -0
  103. package/dist/cjs/runtimes/react/components/draft-switcher/draft-toolbar.js +79 -0
  104. package/dist/cjs/runtimes/react/components/draft-switcher/draft-toolbar.js.map +1 -0
  105. package/dist/cjs/runtimes/react/components/hooks/use-builder-connection-ping.js +67 -0
  106. package/dist/cjs/runtimes/react/components/hooks/use-builder-connection-ping.js.map +1 -0
  107. package/dist/cjs/runtimes/react/components/hooks/use-builder-handshake.js +45 -0
  108. package/dist/cjs/runtimes/react/components/hooks/use-builder-handshake.js.map +1 -0
  109. package/dist/cjs/runtimes/react/controls/rich-text-v2/EditableTextV2/usePresetValue.js +1 -1
  110. package/dist/cjs/runtimes/react/controls/rich-text-v2/EditableTextV2/usePresetValue.js.map +1 -1
  111. package/dist/cjs/runtimes/react/hooks/use-cache-data.js +2 -2
  112. package/dist/cjs/runtimes/react/hooks/use-cache-data.js.map +1 -1
  113. package/dist/cjs/runtimes/react/hooks/use-document-context.js +8 -13
  114. package/dist/cjs/runtimes/react/hooks/use-document-context.js.map +1 -1
  115. package/dist/cjs/runtimes/react/hooks/use-register-document.js +8 -1
  116. package/dist/cjs/runtimes/react/hooks/use-register-document.js.map +1 -1
  117. package/dist/cjs/runtimes/react/hooks/use-resolvable-record.js +68 -0
  118. package/dist/cjs/runtimes/react/hooks/use-resolvable-record.js.map +1 -0
  119. package/dist/cjs/runtimes/react/hooks/use-resolved-props.js +6 -5
  120. package/dist/cjs/runtimes/react/hooks/use-resolved-props.js.map +1 -1
  121. package/dist/cjs/runtimes/react/hooks/use-resolved-value.js +1 -1
  122. package/dist/cjs/runtimes/react/hooks/use-resolved-value.js.map +1 -1
  123. package/dist/cjs/runtimes/react/hooks/use-resource-resolver.js +2 -1
  124. package/dist/cjs/runtimes/react/hooks/use-resource-resolver.js.map +1 -1
  125. package/dist/cjs/runtimes/react/hooks/use-stylesheet-factory.js +1 -2
  126. package/dist/cjs/runtimes/react/hooks/use-stylesheet-factory.js.map +1 -1
  127. package/dist/cjs/runtimes/react/host-api-client.js +5 -1
  128. package/dist/cjs/runtimes/react/host-api-client.js.map +1 -1
  129. package/dist/cjs/{utils/tests/breakpoint-test-util.js → runtimes/react/testing/breakpoints.js} +4 -4
  130. package/dist/cjs/runtimes/react/testing/breakpoints.js.map +1 -0
  131. package/dist/cjs/{utils/tests/element-data-test-test.js → runtimes/react/testing/element-data.js} +33 -7
  132. package/dist/cjs/runtimes/react/testing/element-data.js.map +1 -0
  133. package/dist/cjs/runtimes/react/testing/index.js +27 -0
  134. package/dist/cjs/runtimes/react/testing/index.js.map +1 -0
  135. package/dist/cjs/runtimes/react/testing/react-provider.js +38 -0
  136. package/dist/cjs/runtimes/react/testing/react-provider.js.map +1 -0
  137. package/dist/cjs/runtimes/react/use-style.js +2 -2
  138. package/dist/cjs/runtimes/react/use-style.js.map +1 -1
  139. package/dist/cjs/slate/BlockPlugin/setBlockKeyForDevice.js +1 -2
  140. package/dist/cjs/slate/BlockPlugin/setBlockKeyForDevice.js.map +1 -1
  141. package/dist/cjs/slate/TypographyPlugin/setActiveTypographyStyle.js +2 -2
  142. package/dist/cjs/slate/TypographyPlugin/setActiveTypographyStyle.js.map +1 -1
  143. package/dist/cjs/slate/selectors.js +2 -3
  144. package/dist/cjs/slate/selectors.js.map +1 -1
  145. package/dist/cjs/state/makeswift-api-client.js +23 -12
  146. package/dist/cjs/state/makeswift-api-client.js.map +1 -1
  147. package/dist/cjs/state/modules/breakpoints.js +1 -44
  148. package/dist/cjs/state/modules/breakpoints.js.map +1 -1
  149. package/dist/cjs/state/modules/element-trees.js +10 -7
  150. package/dist/cjs/state/modules/element-trees.js.map +1 -1
  151. package/dist/esm/api/react.js +28 -7
  152. package/dist/esm/api/react.js.map +1 -1
  153. package/dist/esm/api/site-version.js +10 -0
  154. package/dist/esm/api/site-version.js.map +1 -0
  155. package/dist/esm/components/builtin/Box/register.js +1 -1
  156. package/dist/esm/components/builtin/Box/register.js.map +1 -1
  157. package/dist/esm/components/builtin/Button/register.js +1 -1
  158. package/dist/esm/components/builtin/Button/register.js.map +1 -1
  159. package/dist/esm/components/builtin/Carousel/Carousel.js +5 -4
  160. package/dist/esm/components/builtin/Carousel/Carousel.js.map +1 -1
  161. package/dist/esm/components/builtin/Carousel/register.js +1 -1
  162. package/dist/esm/components/builtin/Carousel/register.js.map +1 -1
  163. package/dist/esm/components/builtin/Countdown/register.js +1 -1
  164. package/dist/esm/components/builtin/Countdown/register.js.map +1 -1
  165. package/dist/esm/components/builtin/Form/register.js +1 -1
  166. package/dist/esm/components/builtin/Form/register.js.map +1 -1
  167. package/dist/esm/components/builtin/Image/Image.js +1 -1
  168. package/dist/esm/components/builtin/Image/Image.js.map +1 -1
  169. package/dist/esm/components/builtin/Navigation/register.js +1 -1
  170. package/dist/esm/components/builtin/Navigation/register.js.map +1 -1
  171. package/dist/esm/components/builtin/SocialLinks/register.js +1 -1
  172. package/dist/esm/components/builtin/SocialLinks/register.js.map +1 -1
  173. package/dist/esm/components/builtin/Text/register.js +1 -1
  174. package/dist/esm/components/builtin/Text/register.js.map +1 -1
  175. package/dist/esm/components/hooks/useMediaQuery.js +1 -1
  176. package/dist/esm/components/hooks/useMediaQuery.js.map +1 -1
  177. package/dist/esm/components/page/Page.js +5 -2
  178. package/dist/esm/components/page/Page.js.map +1 -1
  179. package/dist/esm/components/page/PageHead.js +17 -8
  180. package/dist/esm/components/page/PageHead.js.map +1 -1
  181. package/dist/esm/components/page/page-seo-settings.js +19 -0
  182. package/dist/esm/components/page/page-seo-settings.js.map +1 -0
  183. package/dist/esm/components/shared/Link/index.js +3 -1
  184. package/dist/esm/components/shared/Link/index.js.map +1 -1
  185. package/dist/esm/components/utils/responsive-style.js +3 -2
  186. package/dist/esm/components/utils/responsive-style.js.map +1 -1
  187. package/dist/esm/core/index.js +18 -2
  188. package/dist/esm/core/index.js.map +1 -1
  189. package/dist/esm/jest-setup.js +4 -1
  190. package/dist/esm/jest-setup.js.map +1 -1
  191. package/dist/esm/locale.js +79 -0
  192. package/dist/esm/locale.js.map +1 -1
  193. package/dist/esm/next/api-handler/handlers/clear-draft.js +50 -0
  194. package/dist/esm/next/api-handler/handlers/clear-draft.js.map +1 -0
  195. package/dist/esm/next/api-handler/handlers/manifest.js +3 -2
  196. package/dist/esm/next/api-handler/handlers/manifest.js.map +1 -1
  197. package/dist/esm/next/api-handler/handlers/redirect-draft.js +63 -0
  198. package/dist/esm/next/api-handler/handlers/redirect-draft.js.map +1 -0
  199. package/dist/esm/next/api-handler/handlers/redirect-preview.js +53 -0
  200. package/dist/esm/next/api-handler/handlers/redirect-preview.js.map +1 -0
  201. package/dist/esm/next/api-handler/handlers/utils/draft.js +24 -0
  202. package/dist/esm/next/api-handler/handlers/utils/draft.js.map +1 -0
  203. package/dist/esm/next/api-handler/handlers/webhook/index.js +3 -3
  204. package/dist/esm/next/api-handler/handlers/webhook/index.js.map +1 -1
  205. package/dist/esm/next/api-handler/handlers/webhook/site-published.js +7 -3
  206. package/dist/esm/next/api-handler/handlers/webhook/site-published.js.map +1 -1
  207. package/dist/esm/next/api-handler/handlers/webhook/types.js.map +1 -1
  208. package/dist/esm/next/api-handler/index.js +28 -9
  209. package/dist/esm/next/api-handler/index.js.map +1 -1
  210. package/dist/esm/next/cache.js +5 -0
  211. package/dist/esm/next/cache.js.map +1 -0
  212. package/dist/esm/next/client.js +128 -54
  213. package/dist/esm/next/client.js.map +1 -1
  214. package/dist/esm/next/components/page.js +3 -2
  215. package/dist/esm/next/components/page.js.map +1 -1
  216. package/dist/esm/next/components/tests/controls/color-control/fixtures.js +24 -0
  217. package/dist/esm/next/components/tests/controls/color-control/fixtures.js.map +1 -0
  218. package/dist/esm/next/components/tests/controls/page-control-prop-rendering.js +82 -39
  219. package/dist/esm/next/components/tests/controls/page-control-prop-rendering.js.map +1 -1
  220. package/dist/esm/next/components/tests/controls/rich-text-v2-control/fixtures.js +56 -0
  221. package/dist/esm/next/components/tests/controls/rich-text-v2-control/fixtures.js.map +1 -0
  222. package/dist/esm/next/components/tests/controls/style-control/fixtures.js +35 -0
  223. package/dist/esm/next/components/tests/controls/style-control/fixtures.js.map +1 -0
  224. package/dist/esm/next/components/tests/prop-controllers/page-prop-controller.js +7 -11
  225. package/dist/esm/next/components/tests/prop-controllers/page-prop-controller.js.map +1 -1
  226. package/dist/esm/next/document.js +1 -3
  227. package/dist/esm/next/document.js.map +1 -1
  228. package/dist/esm/next/draft-mode/index.js +1 -1
  229. package/dist/esm/next/draft-mode/index.js.map +1 -1
  230. package/dist/esm/next/hooks/use-is-pages-router.js.map +1 -1
  231. package/dist/esm/next/index.js +0 -2
  232. package/dist/esm/next/index.js.map +1 -1
  233. package/dist/esm/next/middleware/index.js +5 -0
  234. package/dist/esm/next/middleware/index.js.map +1 -0
  235. package/dist/esm/next/middleware/request-utils.js +28 -0
  236. package/dist/esm/next/middleware/request-utils.js.map +1 -0
  237. package/dist/esm/next/preview-mode.js +2 -105
  238. package/dist/esm/next/preview-mode.js.map +1 -1
  239. package/dist/esm/next/root-style-registry.js +24 -20
  240. package/dist/esm/next/root-style-registry.js.map +1 -1
  241. package/dist/esm/next/server.js +0 -2
  242. package/dist/esm/next/server.js.map +1 -1
  243. package/dist/esm/next/tests/test-utils.js +37 -0
  244. package/dist/esm/next/tests/test-utils.js.map +1 -0
  245. package/dist/esm/runtimes/react/components/Document.js +2 -2
  246. package/dist/esm/runtimes/react/components/Document.js.map +1 -1
  247. package/dist/esm/runtimes/react/components/ElementData.js +1 -0
  248. package/dist/esm/runtimes/react/components/ElementData.js.map +1 -1
  249. package/dist/esm/runtimes/react/components/RuntimeProvider.js +15 -4
  250. package/dist/esm/runtimes/react/components/RuntimeProvider.js.map +1 -1
  251. package/dist/esm/runtimes/react/components/draft-switcher/draft-switcher.js +48 -0
  252. package/dist/esm/runtimes/react/components/draft-switcher/draft-switcher.js.map +1 -0
  253. package/dist/esm/runtimes/react/components/draft-switcher/draft-toolbar.js +55 -0
  254. package/dist/esm/runtimes/react/components/draft-switcher/draft-toolbar.js.map +1 -0
  255. package/dist/esm/runtimes/react/components/hooks/use-builder-connection-ping.js +43 -0
  256. package/dist/esm/runtimes/react/components/hooks/use-builder-connection-ping.js.map +1 -0
  257. package/dist/esm/runtimes/react/components/hooks/use-builder-handshake.js +21 -0
  258. package/dist/esm/runtimes/react/components/hooks/use-builder-handshake.js.map +1 -0
  259. package/dist/esm/runtimes/react/controls/rich-text-v2/EditableTextV2/usePresetValue.js +2 -2
  260. package/dist/esm/runtimes/react/controls/rich-text-v2/EditableTextV2/usePresetValue.js.map +1 -1
  261. package/dist/esm/runtimes/react/hooks/use-cache-data.js +2 -2
  262. package/dist/esm/runtimes/react/hooks/use-cache-data.js.map +1 -1
  263. package/dist/esm/runtimes/react/hooks/use-document-context.js +6 -11
  264. package/dist/esm/runtimes/react/hooks/use-document-context.js.map +1 -1
  265. package/dist/esm/runtimes/react/hooks/use-register-document.js +9 -2
  266. package/dist/esm/runtimes/react/hooks/use-register-document.js.map +1 -1
  267. package/dist/esm/runtimes/react/hooks/use-resolvable-record.js +44 -0
  268. package/dist/esm/runtimes/react/hooks/use-resolvable-record.js.map +1 -0
  269. package/dist/esm/runtimes/react/hooks/use-resolved-props.js +6 -5
  270. package/dist/esm/runtimes/react/hooks/use-resolved-props.js.map +1 -1
  271. package/dist/esm/runtimes/react/hooks/use-resolved-value.js +1 -1
  272. package/dist/esm/runtimes/react/hooks/use-resolved-value.js.map +1 -1
  273. package/dist/esm/runtimes/react/hooks/use-resource-resolver.js +3 -2
  274. package/dist/esm/runtimes/react/hooks/use-resource-resolver.js.map +1 -1
  275. package/dist/esm/runtimes/react/hooks/use-stylesheet-factory.js +2 -2
  276. package/dist/esm/runtimes/react/hooks/use-stylesheet-factory.js.map +1 -1
  277. package/dist/esm/runtimes/react/host-api-client.js +5 -1
  278. package/dist/esm/runtimes/react/host-api-client.js.map +1 -1
  279. package/dist/esm/{utils/tests/breakpoint-test-util.js → runtimes/react/testing/breakpoints.js} +1 -1
  280. package/dist/esm/runtimes/react/testing/breakpoints.js.map +1 -0
  281. package/dist/esm/{utils/tests/element-data-test-test.js → runtimes/react/testing/element-data.js} +29 -4
  282. package/dist/esm/runtimes/react/testing/element-data.js.map +1 -0
  283. package/dist/esm/runtimes/react/testing/index.js +4 -0
  284. package/dist/esm/runtimes/react/testing/index.js.map +1 -0
  285. package/dist/esm/runtimes/react/testing/react-provider.js +14 -0
  286. package/dist/esm/runtimes/react/testing/react-provider.js.map +1 -0
  287. package/dist/esm/runtimes/react/use-style.js +2 -2
  288. package/dist/esm/runtimes/react/use-style.js.map +1 -1
  289. package/dist/esm/slate/BlockPlugin/setBlockKeyForDevice.js +4 -2
  290. package/dist/esm/slate/BlockPlugin/setBlockKeyForDevice.js.map +1 -1
  291. package/dist/esm/slate/TypographyPlugin/setActiveTypographyStyle.js +3 -1
  292. package/dist/esm/slate/TypographyPlugin/setActiveTypographyStyle.js.map +1 -1
  293. package/dist/esm/slate/selectors.js +4 -2
  294. package/dist/esm/slate/selectors.js.map +1 -1
  295. package/dist/esm/state/makeswift-api-client.js +22 -11
  296. package/dist/esm/state/makeswift-api-client.js.map +1 -1
  297. package/dist/esm/state/modules/breakpoints.js +1 -42
  298. package/dist/esm/state/modules/breakpoints.js.map +1 -1
  299. package/dist/esm/state/modules/element-trees.js +10 -7
  300. package/dist/esm/state/modules/element-trees.js.map +1 -1
  301. package/dist/types/api/react.d.ts +4 -1
  302. package/dist/types/api/react.d.ts.map +1 -1
  303. package/dist/types/api/site-version.d.ts +6 -0
  304. package/dist/types/api/site-version.d.ts.map +1 -0
  305. package/dist/types/components/builtin/Box/register.d.ts.map +1 -1
  306. package/dist/types/components/builtin/Button/register.d.ts.map +1 -1
  307. package/dist/types/components/builtin/Carousel/Carousel.d.ts.map +1 -1
  308. package/dist/types/components/builtin/Image/Image.d.ts.map +1 -1
  309. package/dist/types/components/hooks/useMediaQuery.d.ts +1 -1
  310. package/dist/types/components/hooks/useMediaQuery.d.ts.map +1 -1
  311. package/dist/types/components/page/Page.d.ts +3 -1
  312. package/dist/types/components/page/Page.d.ts.map +1 -1
  313. package/dist/types/components/page/PageHead.d.ts +3 -1
  314. package/dist/types/components/page/PageHead.d.ts.map +1 -1
  315. package/dist/types/components/page/page-seo-settings.d.ts +11 -0
  316. package/dist/types/components/page/page-seo-settings.d.ts.map +1 -0
  317. package/dist/types/components/shared/Link/index.d.ts.map +1 -1
  318. package/dist/types/components/utils/responsive-style.d.ts +1 -1
  319. package/dist/types/components/utils/responsive-style.d.ts.map +1 -1
  320. package/dist/types/controls/link.d.ts +1 -1
  321. package/dist/types/core/index.d.ts +1 -1
  322. package/dist/types/core/index.d.ts.map +1 -1
  323. package/dist/types/locale.d.ts +3 -3
  324. package/dist/types/locale.d.ts.map +1 -1
  325. package/dist/types/next/api-handler/handlers/clear-draft.d.ts +20 -0
  326. package/dist/types/next/api-handler/handlers/clear-draft.d.ts.map +1 -0
  327. package/dist/types/next/api-handler/handlers/manifest.d.ts +1 -0
  328. package/dist/types/next/api-handler/handlers/manifest.d.ts.map +1 -1
  329. package/dist/types/next/api-handler/handlers/redirect-draft.d.ts +18 -0
  330. package/dist/types/next/api-handler/handlers/redirect-draft.d.ts.map +1 -0
  331. package/dist/types/next/api-handler/handlers/redirect-preview.d.ts +18 -0
  332. package/dist/types/next/api-handler/handlers/redirect-preview.d.ts.map +1 -0
  333. package/dist/types/next/api-handler/handlers/utils/draft.d.ts +16 -0
  334. package/dist/types/next/api-handler/handlers/utils/draft.d.ts.map +1 -0
  335. package/dist/types/next/api-handler/handlers/webhook/index.d.ts +9 -11
  336. package/dist/types/next/api-handler/handlers/webhook/index.d.ts.map +1 -1
  337. package/dist/types/next/api-handler/handlers/webhook/site-published.d.ts +6 -3
  338. package/dist/types/next/api-handler/handlers/webhook/site-published.d.ts.map +1 -1
  339. package/dist/types/next/api-handler/handlers/webhook/types.d.ts +13 -12
  340. package/dist/types/next/api-handler/handlers/webhook/types.d.ts.map +1 -1
  341. package/dist/types/next/api-handler/index.d.ts +10 -5
  342. package/dist/types/next/api-handler/index.d.ts.map +1 -1
  343. package/dist/types/next/cache.d.ts +2 -0
  344. package/dist/types/next/cache.d.ts.map +1 -0
  345. package/dist/types/next/client.d.ts +14 -12
  346. package/dist/types/next/client.d.ts.map +1 -1
  347. package/dist/types/next/components/page.d.ts +21 -1
  348. package/dist/types/next/components/page.d.ts.map +1 -1
  349. package/dist/types/next/components/tests/controls/color-control/client.test.d.ts +3 -0
  350. package/dist/types/next/components/tests/controls/color-control/client.test.d.ts.map +1 -0
  351. package/dist/types/next/components/tests/controls/color-control/fixtures.d.ts +11 -0
  352. package/dist/types/next/components/tests/controls/color-control/fixtures.d.ts.map +1 -0
  353. package/dist/types/next/components/tests/controls/color-control/server.test.d.ts +2 -0
  354. package/dist/types/next/components/tests/controls/color-control/server.test.d.ts.map +1 -0
  355. package/dist/types/next/components/tests/controls/page-control-prop-rendering.d.ts +2 -3
  356. package/dist/types/next/components/tests/controls/page-control-prop-rendering.d.ts.map +1 -1
  357. package/dist/types/next/components/tests/controls/rich-text-v2-control/client.test.d.ts +2 -0
  358. package/dist/types/next/components/tests/controls/rich-text-v2-control/client.test.d.ts.map +1 -0
  359. package/dist/types/next/components/tests/controls/rich-text-v2-control/fixtures.d.ts +42 -0
  360. package/dist/types/next/components/tests/controls/rich-text-v2-control/fixtures.d.ts.map +1 -0
  361. package/dist/types/next/components/tests/controls/rich-text-v2-control/server.test.d.ts +2 -0
  362. package/dist/types/next/components/tests/controls/rich-text-v2-control/server.test.d.ts.map +1 -0
  363. package/dist/types/next/components/tests/controls/style-control/client.test.d.ts +2 -0
  364. package/dist/types/next/components/tests/controls/style-control/client.test.d.ts.map +1 -0
  365. package/dist/types/next/components/tests/controls/style-control/fixtures.d.ts +6 -0
  366. package/dist/types/next/components/tests/controls/style-control/fixtures.d.ts.map +1 -0
  367. package/dist/types/next/components/tests/controls/style-control/server.test.d.ts +2 -0
  368. package/dist/types/next/components/tests/controls/style-control/server.test.d.ts.map +1 -0
  369. package/dist/types/next/components/tests/makeswift-page-metadata-rendering.test.d.ts +3 -0
  370. package/dist/types/next/components/tests/makeswift-page-metadata-rendering.test.d.ts.map +1 -0
  371. package/dist/types/next/components/tests/prop-controllers/page-prop-controller.d.ts.map +1 -1
  372. package/dist/types/next/document.d.ts +1 -5
  373. package/dist/types/next/document.d.ts.map +1 -1
  374. package/dist/types/next/draft-mode/index.d.ts +2 -2
  375. package/dist/types/next/hooks/use-is-pages-router.d.ts.map +1 -1
  376. package/dist/types/next/index.d.ts +0 -1
  377. package/dist/types/next/index.d.ts.map +1 -1
  378. package/dist/types/next/middleware/index.d.ts +2 -0
  379. package/dist/types/next/middleware/index.d.ts.map +1 -0
  380. package/dist/types/next/middleware/request-utils.d.ts +3 -0
  381. package/dist/types/next/middleware/request-utils.d.ts.map +1 -0
  382. package/dist/types/next/middleware/request-utils.test.d.ts +2 -0
  383. package/dist/types/next/middleware/request-utils.test.d.ts.map +1 -0
  384. package/dist/types/next/preview-mode.d.ts +3 -10
  385. package/dist/types/next/preview-mode.d.ts.map +1 -1
  386. package/dist/types/next/root-style-registry.d.ts +2 -1
  387. package/dist/types/next/root-style-registry.d.ts.map +1 -1
  388. package/dist/types/next/server.d.ts +0 -1
  389. package/dist/types/next/server.d.ts.map +1 -1
  390. package/dist/types/next/tests/client.error-handling.test.d.ts +2 -0
  391. package/dist/types/next/tests/client.error-handling.test.d.ts.map +1 -0
  392. package/dist/types/next/tests/client.get-page-snapshot.test.d.ts +2 -0
  393. package/dist/types/next/tests/client.get-page-snapshot.test.d.ts.map +1 -0
  394. package/dist/types/next/tests/client.get-resources.test.d.ts +2 -0
  395. package/dist/types/next/tests/client.get-resources.test.d.ts.map +1 -0
  396. package/dist/types/next/tests/server.makeswift-api-handler.test.d.ts +2 -0
  397. package/dist/types/next/tests/server.makeswift-api-handler.test.d.ts.map +1 -0
  398. package/dist/types/next/tests/test-utils.d.ts +8 -0
  399. package/dist/types/next/tests/test-utils.d.ts.map +1 -0
  400. package/dist/types/runtimes/react/components/Document.d.ts.map +1 -1
  401. package/dist/types/runtimes/react/components/ElementData.d.ts.map +1 -1
  402. package/dist/types/runtimes/react/components/RuntimeProvider.d.ts +2 -1
  403. package/dist/types/runtimes/react/components/RuntimeProvider.d.ts.map +1 -1
  404. package/dist/types/runtimes/react/components/draft-switcher/draft-switcher.d.ts +4 -0
  405. package/dist/types/runtimes/react/components/draft-switcher/draft-switcher.d.ts.map +1 -0
  406. package/dist/types/runtimes/react/components/draft-switcher/draft-toolbar.d.ts +6 -0
  407. package/dist/types/runtimes/react/components/draft-switcher/draft-toolbar.d.ts.map +1 -0
  408. package/dist/types/runtimes/react/components/hooks/use-builder-connection-ping.d.ts +4 -0
  409. package/dist/types/runtimes/react/components/hooks/use-builder-connection-ping.d.ts.map +1 -0
  410. package/dist/types/runtimes/react/components/hooks/use-builder-handshake.d.ts +4 -0
  411. package/dist/types/runtimes/react/components/hooks/use-builder-handshake.d.ts.map +1 -0
  412. package/dist/types/runtimes/react/hooks/use-cache-data.d.ts.map +1 -1
  413. package/dist/types/runtimes/react/hooks/use-document-context.d.ts +2 -7
  414. package/dist/types/runtimes/react/hooks/use-document-context.d.ts.map +1 -1
  415. package/dist/types/runtimes/react/hooks/use-register-document.d.ts.map +1 -1
  416. package/dist/types/runtimes/react/hooks/use-resolvable-record.d.ts +3 -0
  417. package/dist/types/runtimes/react/hooks/use-resolvable-record.d.ts.map +1 -0
  418. package/dist/types/runtimes/react/hooks/use-resolved-props.d.ts.map +1 -1
  419. package/dist/types/runtimes/react/hooks/use-resource-resolver.d.ts.map +1 -1
  420. package/dist/types/runtimes/react/hooks/use-stylesheet-factory.d.ts.map +1 -1
  421. package/dist/types/runtimes/react/host-api-client.d.ts.map +1 -1
  422. package/dist/types/{utils/tests/breakpoint-test-util.d.ts → runtimes/react/testing/breakpoints.d.ts} +1 -1
  423. package/dist/types/runtimes/react/testing/breakpoints.d.ts.map +1 -0
  424. package/dist/types/{utils/tests/element-data-test-test.d.ts → runtimes/react/testing/element-data.d.ts} +7 -3
  425. package/dist/types/runtimes/react/testing/element-data.d.ts.map +1 -0
  426. package/dist/types/runtimes/react/testing/index.d.ts +4 -0
  427. package/dist/types/runtimes/react/testing/index.d.ts.map +1 -0
  428. package/dist/types/runtimes/react/testing/react-provider.d.ts +8 -0
  429. package/dist/types/runtimes/react/testing/react-provider.d.ts.map +1 -0
  430. package/dist/types/slate/BlockPlugin/setBlockKeyForDevice.d.ts +1 -1
  431. package/dist/types/slate/BlockPlugin/setBlockKeyForDevice.d.ts.map +1 -1
  432. package/dist/types/slate/TypographyPlugin/setActiveTypographyStyle.d.ts +1 -1
  433. package/dist/types/slate/TypographyPlugin/setActiveTypographyStyle.d.ts.map +1 -1
  434. package/dist/types/slate/selectors.d.ts +1 -2
  435. package/dist/types/slate/selectors.d.ts.map +1 -1
  436. package/dist/types/state/makeswift-api-client.d.ts +2 -1
  437. package/dist/types/state/makeswift-api-client.d.ts.map +1 -1
  438. package/dist/types/state/modules/__tests__/fixtures/element-trees-demo-component.d.ts +7 -0
  439. package/dist/types/state/modules/__tests__/fixtures/element-trees-demo-component.d.ts.map +1 -0
  440. package/dist/types/state/modules/__tests__/fixtures/element-trees.d.ts +239 -0
  441. package/dist/types/state/modules/__tests__/fixtures/element-trees.d.ts.map +1 -1
  442. package/dist/types/state/modules/breakpoints.d.ts +2 -7
  443. package/dist/types/state/modules/breakpoints.d.ts.map +1 -1
  444. package/dist/types/state/modules/element-trees.d.ts +1 -1
  445. package/dist/types/state/modules/element-trees.d.ts.map +1 -1
  446. package/package.json +17 -5
  447. package/dist/cjs/next/api-handler/handlers/proxy-draft-mode.js +0 -80
  448. package/dist/cjs/next/api-handler/handlers/proxy-draft-mode.js.map +0 -1
  449. package/dist/cjs/next/api-handler/handlers/proxy-preview-mode.js +0 -100
  450. package/dist/cjs/next/api-handler/handlers/proxy-preview-mode.js.map +0 -1
  451. package/dist/cjs/next/draft-mode/draft-mode-script.js +0 -137
  452. package/dist/cjs/next/draft-mode/draft-mode-script.js.map +0 -1
  453. package/dist/cjs/runtimes/react/resolvable-record.js +0 -67
  454. package/dist/cjs/runtimes/react/resolvable-record.js.map +0 -1
  455. package/dist/cjs/utils/tests/breakpoint-test-util.js.map +0 -1
  456. package/dist/cjs/utils/tests/element-data-test-test.js.map +0 -1
  457. package/dist/esm/next/api-handler/handlers/proxy-draft-mode.js +0 -60
  458. package/dist/esm/next/api-handler/handlers/proxy-draft-mode.js.map +0 -1
  459. package/dist/esm/next/api-handler/handlers/proxy-preview-mode.js +0 -80
  460. package/dist/esm/next/api-handler/handlers/proxy-preview-mode.js.map +0 -1
  461. package/dist/esm/next/draft-mode/draft-mode-script.js +0 -103
  462. package/dist/esm/next/draft-mode/draft-mode-script.js.map +0 -1
  463. package/dist/esm/runtimes/react/resolvable-record.js +0 -43
  464. package/dist/esm/runtimes/react/resolvable-record.js.map +0 -1
  465. package/dist/esm/utils/tests/breakpoint-test-util.js.map +0 -1
  466. package/dist/esm/utils/tests/element-data-test-test.js.map +0 -1
  467. package/dist/types/next/api-handler/handlers/proxy-draft-mode.d.ts +0 -20
  468. package/dist/types/next/api-handler/handlers/proxy-draft-mode.d.ts.map +0 -1
  469. package/dist/types/next/api-handler/handlers/proxy-draft-mode.test.d.ts +0 -2
  470. package/dist/types/next/api-handler/handlers/proxy-draft-mode.test.d.ts.map +0 -1
  471. package/dist/types/next/api-handler/handlers/proxy-preview-mode.d.ts +0 -20
  472. package/dist/types/next/api-handler/handlers/proxy-preview-mode.d.ts.map +0 -1
  473. package/dist/types/next/components/tests/controls/color-control.test.d.ts +0 -3
  474. package/dist/types/next/components/tests/controls/color-control.test.d.ts.map +0 -1
  475. package/dist/types/next/components/tests/controls/rich-text-v2-control.test.d.ts +0 -2
  476. package/dist/types/next/components/tests/controls/rich-text-v2-control.test.d.ts.map +0 -1
  477. package/dist/types/next/components/tests/controls/style-control.test.d.ts +0 -2
  478. package/dist/types/next/components/tests/controls/style-control.test.d.ts.map +0 -1
  479. package/dist/types/next/draft-mode/draft-mode-script.d.ts +0 -6
  480. package/dist/types/next/draft-mode/draft-mode-script.d.ts.map +0 -1
  481. package/dist/types/runtimes/react/resolvable-record.d.ts +0 -3
  482. package/dist/types/runtimes/react/resolvable-record.d.ts.map +0 -1
  483. package/dist/types/utils/tests/breakpoint-test-util.d.ts.map +0 -1
  484. package/dist/types/utils/tests/element-data-test-test.d.ts.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/utils/responsive-style.ts"],"sourcesContent":["import { WidthProperty } from 'csstype'\nimport { CSSObject } from '@emotion/css'\n\nimport type { ResponsiveValueType as ExtractResponsiveValue } from '@makeswift/controls'\n\nimport type {\n LengthData,\n ResponsiveBorderRadiusData,\n ResponsiveMarginData,\n ResponsivePaddingData,\n ResponsiveValue,\n ResponsiveLengthData,\n ResponsiveTextStyleData,\n} from '@makeswift/prop-controllers'\n\nimport {\n FallbackStrategy,\n join as joinResponsiveValues,\n type Breakpoints,\n} from '@makeswift/controls'\n\nimport { getBreakpoint, getBreakpointMediaQuery } from '../../state/modules/breakpoints'\n\nimport { useBreakpoints } from '../../runtimes/react/hooks/use-breakpoints'\n\nimport { getIndexes } from './columns'\nimport { PaddingPropertyData, paddingPropertyDataToStyle } from '../../css/padding'\nimport { MarginPropertyData, marginPropertyDataToStyle } from '../../css/margin'\nimport { BorderRadiusPropertyData, borderRadiusPropertyDataToStyle } from '../../css/border-radius'\nimport { BorderPropertyData, borderPropertyDataToStyle } from '../../css/border'\nimport { BorderPropControllerData } from '../hooks/useBorder'\nimport { colorToString } from './colorToString'\nimport { BoxShadow, ResponsiveBoxShadow } from '../hooks'\nimport { DropFirst } from './drop-first'\n\nexport function responsiveStyle<V, A extends ReadonlyArray<ResponsiveValue<V> | null | undefined>>(\n breakpoints: Breakpoints,\n responsiveValues: A,\n join: (values: { [K in keyof A]: ExtractResponsiveValue<A[K]> | undefined }) => CSSObject,\n strategy?: FallbackStrategy<V>,\n): CSSObject {\n return joinResponsiveValues(breakpoints, responsiveValues, join, strategy).reduce(\n (acc, { deviceId, value }) => {\n const breakpoint = getBreakpoint(breakpoints, deviceId)\n const mediaQuery = getBreakpointMediaQuery(breakpoint)\n\n return {\n ...acc,\n [mediaQuery]: {\n ...(acc[mediaQuery] as CSSObject),\n ...value,\n },\n }\n },\n {} as CSSObject,\n )\n}\n\nexport function useResponsiveStyle<\n V,\n A extends ReadonlyArray<ResponsiveValue<V> | null | undefined>,\n>(\n responsiveValues: A,\n join: (values: { [K in keyof A]: ExtractResponsiveValue<A[K]> | undefined }) => CSSObject,\n strategy?: FallbackStrategy<V>,\n): CSSObject {\n return responsiveStyle(useBreakpoints(), responsiveValues, join, strategy)\n}\n\nexport function responsiveWidth(\n breakpoints: Breakpoints,\n widthData: ResponsiveLengthData | undefined,\n defaultValue: LengthData | WidthProperty<string | number> = '100%',\n): CSSObject {\n return {\n maxWidth: '100%',\n ...responsiveStyle(breakpoints, [widthData], ([width = defaultValue]) => ({\n width: typeof width === 'object' ? `${width.value}${width.unit}` : width,\n })),\n }\n}\n\nexport function useResponsiveWidth(\n ...args: DropFirst<Parameters<typeof responsiveWidth>>\n): CSSObject {\n return responsiveWidth(useBreakpoints(), ...args)\n}\n\nexport function responsivePadding(\n breakpoints: Breakpoints,\n paddingData: ResponsivePaddingData | undefined,\n defaultValue: PaddingPropertyData = {} as PaddingPropertyData,\n): CSSObject {\n return responsiveStyle(breakpoints, [paddingData], ([padding = {} as PaddingPropertyData]) =>\n paddingPropertyDataToStyle(\n padding,\n Object.assign(\n { paddingTop: 0, paddingRight: 0, paddingBottom: 0, paddingLeft: 0 },\n defaultValue,\n ),\n ),\n )\n}\n\nexport function useResponsivePadding(\n ...args: DropFirst<Parameters<typeof responsivePadding>>\n): CSSObject {\n return responsivePadding(useBreakpoints(), ...args)\n}\n\nexport function responsiveMargin(\n breakpoints: Breakpoints,\n marginData: ResponsiveMarginData | undefined,\n defaultValue: MarginPropertyData = {} as MarginPropertyData,\n): CSSObject {\n return responsiveStyle(breakpoints, [marginData], ([margin = {} as MarginPropertyData]) =>\n marginPropertyDataToStyle(\n margin,\n Object.assign(\n { marginTop: 0, marginRight: 'auto', marginBottom: 0, marginLeft: 'auto' },\n defaultValue,\n ),\n ),\n )\n}\n\nexport function useResponsiveMargin(\n ...args: DropFirst<Parameters<typeof responsiveMargin>>\n): CSSObject {\n return responsiveMargin(useBreakpoints(), ...args)\n}\n\nexport function responsiveBorderRadius(\n breakpoints: Breakpoints,\n borderRadiusData: ResponsiveBorderRadiusData | undefined,\n defaultValue: BorderRadiusPropertyData = {} as BorderRadiusPropertyData,\n): CSSObject {\n return responsiveStyle(breakpoints, [borderRadiusData], ([borderRadius = {}]) =>\n borderRadiusPropertyDataToStyle(\n borderRadius,\n Object.assign(\n {\n borderTopLeftRadius: 0,\n borderTopRightRadius: 0,\n borderBottomRightRadius: 0,\n borderBottomLeftRadius: 0,\n },\n defaultValue,\n ),\n ),\n )\n}\n\nexport function useResponsiveBorderRadius(\n ...args: DropFirst<Parameters<typeof responsiveBorderRadius>>\n): CSSObject {\n return responsiveBorderRadius(useBreakpoints(), ...args)\n}\n\nexport function useResponsiveBorder(\n borderData: BorderPropControllerData | undefined,\n defaultValue: BorderPropertyData = {},\n): CSSObject {\n return useResponsiveStyle([borderData], ([border = {}]) =>\n borderPropertyDataToStyle(\n border,\n Object.assign(\n {\n borderTop: '0px solid black',\n borderRight: '0px solid black',\n borderBottom: '0px solid black',\n borderLeft: '0px solid black',\n },\n defaultValue,\n ),\n ),\n )\n}\n\nconst floor =\n (d: number) =>\n (v: number): number =>\n Math.floor(10 ** d * v) / 10 ** d\n\nexport function responsiveGridItem(\n breakpoints: Breakpoints,\n props: {\n grid: ResponsiveValue<{ spans: number[][]; count: number }>\n index: number\n columnGap?: ResponsiveValue<LengthData>\n rowGap?: ResponsiveValue<LengthData>\n },\n): CSSObject {\n return {\n display: 'flex',\n ...responsiveStyle(\n breakpoints,\n [props.grid, props.columnGap, props.rowGap] as const,\n ([\n { spans, count } = { spans: [[12]], count: 12 },\n columnGap = { value: 0, unit: 'px' },\n rowGap = { value: 0, unit: 'px' },\n ]) => {\n const [rowIndex, columnIndex] = getIndexes(spans, props.index)\n const firstCol = columnIndex === 0\n const lastCol = columnIndex === spans[rowIndex].length - 1\n const span = spans[rowIndex][columnIndex]\n const fraction = floor(5)(span / count)\n const width = `${fraction} * (100% + ${columnGap.value}${columnGap.unit})`\n const excessWidth = `${Number(firstCol) + Number(lastCol)} * ${columnGap.value}${\n columnGap.unit\n } / 2`\n const iePrecisionError = '0.01px'\n const flexBasis = `calc(${width} - ${excessWidth} - ${iePrecisionError})`\n const firstRow = rowIndex === 0\n const lastRow = rowIndex === spans.length - 1\n\n return span === 0\n ? { display: 'none' }\n : {\n flexBasis,\n minWidth: flexBasis,\n // NOTE: IE11 width breaks without max width\n // https://github.com/philipwalton/flexbugs/issues/3\n maxWidth: flexBasis,\n paddingLeft: firstCol ? 0 : `${columnGap.value / 2}${columnGap.unit}`,\n paddingRight: lastCol ? 0 : `${columnGap.value / 2}${columnGap.unit}`,\n paddingTop: firstRow ? 0 : `${rowGap.value / 2}${rowGap.unit}`,\n paddingBottom: lastRow ? 0 : `${rowGap.value / 2}${rowGap.unit}`,\n }\n },\n ),\n }\n}\n\nexport function useResponsiveGridItem(\n ...args: DropFirst<Parameters<typeof responsiveGridItem>>\n): CSSObject {\n return responsiveGridItem(useBreakpoints(), ...args)\n}\n\nconst getBoxShadow = (shadows: BoxShadow) =>\n shadows\n .map(\n ({ payload: { inset, offsetX, offsetY, blurRadius, spreadRadius, color } }) =>\n `${inset ? 'inset ' : ''}${offsetX.toFixed(1)}px ${offsetY.toFixed(\n 1,\n )}px ${blurRadius}px ${spreadRadius}px ${\n color != null ? colorToString(color) : 'rgba(0,0,0,0.2)'\n }`,\n )\n .filter(Boolean)\n .join()\n\nexport function responsiveShadow(\n breakpoints: Breakpoints,\n value: ResponsiveBoxShadow | undefined,\n): CSSObject {\n return responsiveStyle(breakpoints, [value], ([shadow = []]) => ({\n boxShadow: getBoxShadow(shadow),\n }))\n}\n\nexport function useResponsiveShadow(\n ...args: DropFirst<Parameters<typeof responsiveShadow>>\n): CSSObject {\n return responsiveShadow(useBreakpoints(), ...args)\n}\n\nexport function responsiveTextStyle(\n breakpoints: Breakpoints,\n value: ResponsiveTextStyleData | undefined,\n): CSSObject {\n return responsiveStyle(\n breakpoints,\n [value],\n ([\n textStyle = {\n fontFamily: null,\n letterSpacing: null,\n fontSize: null,\n fontWeight: null,\n textTransform: [],\n fontStyle: [],\n },\n ]) => {\n const {\n fontSize,\n fontWeight,\n fontStyle = [],\n textTransform = [],\n letterSpacing,\n fontFamily,\n } = textStyle\n\n return {\n ...(fontFamily == null ? {} : { fontFamily: `\"${fontFamily}\"` }),\n ...(fontWeight == null ? {} : { fontWeight }),\n ...(letterSpacing == null ? {} : { letterSpacing }),\n ...(fontSize == null ? {} : { fontSize: `${fontSize.value}${fontSize.unit}` }),\n ...(textTransform.includes('uppercase') ? { textTransform: 'uppercase' } : {}),\n ...(fontStyle.includes('italic') ? { fontStyle: 'italic' } : {}),\n }\n },\n )\n}\n\nexport function useResponsiveTextStyle(\n ...args: DropFirst<Parameters<typeof responsiveTextStyle>>\n): CSSObject {\n return responsiveTextStyle(useBreakpoints(), ...args)\n}\n"],"mappings":"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","names":[]}
1
+ {"version":3,"sources":["../../../../src/components/utils/responsive-style.ts"],"sourcesContent":["import { WidthProperty } from 'csstype'\nimport { CSSObject } from '@emotion/css'\n\nimport type { ResponsiveValueType as ExtractResponsiveValue } from '@makeswift/controls'\n\nimport type {\n LengthData,\n ResponsiveBorderRadiusData,\n ResponsiveMarginData,\n ResponsivePaddingData,\n ResponsiveValue,\n ResponsiveLengthData,\n ResponsiveTextStyleData,\n} from '@makeswift/prop-controllers'\n\nimport {\n type Breakpoints,\n type FallbackStrategy,\n join as joinResponsiveValues,\n getBreakpoint,\n getBreakpointMediaQuery,\n} from '@makeswift/controls'\n\nimport { useBreakpoints } from '../../runtimes/react/hooks/use-breakpoints'\n\nimport { getIndexes } from './columns'\nimport { PaddingPropertyData, paddingPropertyDataToStyle } from '../../css/padding'\nimport { MarginPropertyData, marginPropertyDataToStyle } from '../../css/margin'\nimport { BorderRadiusPropertyData, borderRadiusPropertyDataToStyle } from '../../css/border-radius'\nimport { BorderPropertyData, borderPropertyDataToStyle } from '../../css/border'\nimport { BorderPropControllerData } from '../hooks/useBorder'\nimport { colorToString } from './colorToString'\nimport { BoxShadow, ResponsiveBoxShadow } from '../hooks'\nimport { DropFirst } from './drop-first'\n\nexport function responsiveStyle<V, A extends ReadonlyArray<ResponsiveValue<V> | null | undefined>>(\n breakpoints: Breakpoints,\n responsiveValues: A,\n join: (values: { [K in keyof A]: ExtractResponsiveValue<A[K]> | undefined }) => CSSObject,\n strategy?: FallbackStrategy<V>,\n): CSSObject {\n return joinResponsiveValues(breakpoints, responsiveValues, join, strategy).reduce(\n (acc, { deviceId, value }) => {\n const breakpoint = getBreakpoint(breakpoints, deviceId)\n const mediaQuery = getBreakpointMediaQuery(breakpoint)\n\n return {\n ...acc,\n [mediaQuery]: {\n ...(acc[mediaQuery] as CSSObject),\n ...value,\n },\n }\n },\n {} as CSSObject,\n )\n}\n\nexport function useResponsiveStyle<\n V,\n A extends ReadonlyArray<ResponsiveValue<V> | null | undefined>,\n>(\n responsiveValues: A,\n join: (values: { [K in keyof A]: ExtractResponsiveValue<A[K]> | undefined }) => CSSObject,\n strategy?: FallbackStrategy<V>,\n): CSSObject {\n return responsiveStyle(useBreakpoints(), responsiveValues, join, strategy)\n}\n\nexport function responsiveWidth(\n breakpoints: Breakpoints,\n widthData: ResponsiveLengthData | undefined,\n defaultValue: LengthData | WidthProperty<string | number> = '100%',\n): CSSObject {\n return {\n maxWidth: '100%',\n ...responsiveStyle(breakpoints, [widthData], ([width = defaultValue]) => ({\n width: typeof width === 'object' ? `${width.value}${width.unit}` : width,\n })),\n }\n}\n\nexport function useResponsiveWidth(\n ...args: DropFirst<Parameters<typeof responsiveWidth>>\n): CSSObject {\n return responsiveWidth(useBreakpoints(), ...args)\n}\n\nexport function responsivePadding(\n breakpoints: Breakpoints,\n paddingData: ResponsivePaddingData | undefined,\n defaultValue: PaddingPropertyData = {} as PaddingPropertyData,\n): CSSObject {\n return responsiveStyle(breakpoints, [paddingData], ([padding = {} as PaddingPropertyData]) =>\n paddingPropertyDataToStyle(\n padding,\n Object.assign(\n { paddingTop: 0, paddingRight: 0, paddingBottom: 0, paddingLeft: 0 },\n defaultValue,\n ),\n ),\n )\n}\n\nexport function useResponsivePadding(\n ...args: DropFirst<Parameters<typeof responsivePadding>>\n): CSSObject {\n return responsivePadding(useBreakpoints(), ...args)\n}\n\nexport function responsiveMargin(\n breakpoints: Breakpoints,\n marginData: ResponsiveMarginData | undefined,\n defaultValue: MarginPropertyData = {} as MarginPropertyData,\n): CSSObject {\n return responsiveStyle(breakpoints, [marginData], ([margin = {} as MarginPropertyData]) =>\n marginPropertyDataToStyle(\n margin,\n Object.assign(\n { marginTop: 0, marginRight: 'auto', marginBottom: 0, marginLeft: 'auto' },\n defaultValue,\n ),\n ),\n )\n}\n\nexport function useResponsiveMargin(\n ...args: DropFirst<Parameters<typeof responsiveMargin>>\n): CSSObject {\n return responsiveMargin(useBreakpoints(), ...args)\n}\n\nexport function responsiveBorderRadius(\n breakpoints: Breakpoints,\n borderRadiusData: ResponsiveBorderRadiusData | undefined,\n defaultValue: BorderRadiusPropertyData = {} as BorderRadiusPropertyData,\n): CSSObject {\n return responsiveStyle(breakpoints, [borderRadiusData], ([borderRadius = {}]) =>\n borderRadiusPropertyDataToStyle(\n borderRadius,\n Object.assign(\n {\n borderTopLeftRadius: 0,\n borderTopRightRadius: 0,\n borderBottomRightRadius: 0,\n borderBottomLeftRadius: 0,\n },\n defaultValue,\n ),\n ),\n )\n}\n\nexport function useResponsiveBorderRadius(\n ...args: DropFirst<Parameters<typeof responsiveBorderRadius>>\n): CSSObject {\n return responsiveBorderRadius(useBreakpoints(), ...args)\n}\n\nexport function useResponsiveBorder(\n borderData: BorderPropControllerData | undefined,\n defaultValue: BorderPropertyData = {},\n): CSSObject {\n return useResponsiveStyle([borderData], ([border = {}]) =>\n borderPropertyDataToStyle(\n border,\n Object.assign(\n {\n borderTop: '0px solid black',\n borderRight: '0px solid black',\n borderBottom: '0px solid black',\n borderLeft: '0px solid black',\n },\n defaultValue,\n ),\n ),\n )\n}\n\nconst floor =\n (d: number) =>\n (v: number): number =>\n Math.floor(10 ** d * v) / 10 ** d\n\nexport function responsiveGridItem(\n breakpoints: Breakpoints,\n props: {\n grid: ResponsiveValue<{ spans: number[][]; count: number }>\n index: number\n columnGap?: ResponsiveValue<LengthData>\n rowGap?: ResponsiveValue<LengthData>\n },\n): CSSObject {\n return {\n display: 'flex',\n ...responsiveStyle(\n breakpoints,\n [props.grid, props.columnGap, props.rowGap] as const,\n ([\n { spans, count } = { spans: [[12]], count: 12 },\n columnGap = { value: 0, unit: 'px' },\n rowGap = { value: 0, unit: 'px' },\n ]) => {\n const [rowIndex, columnIndex] = getIndexes(spans, props.index)\n const firstCol = columnIndex === 0\n const lastCol = columnIndex === spans[rowIndex].length - 1\n const span = spans[rowIndex][columnIndex]\n const fraction = floor(5)(span / count)\n const width = `${fraction} * (100% + ${columnGap.value}${columnGap.unit})`\n const excessWidth = `${Number(firstCol) + Number(lastCol)} * ${columnGap.value}${\n columnGap.unit\n } / 2`\n const iePrecisionError = '0.01px'\n const flexBasis = `calc(${width} - ${excessWidth} - ${iePrecisionError})`\n const firstRow = rowIndex === 0\n const lastRow = rowIndex === spans.length - 1\n\n return span === 0\n ? { display: 'none' }\n : {\n flexBasis,\n minWidth: flexBasis,\n // NOTE: IE11 width breaks without max width\n // https://github.com/philipwalton/flexbugs/issues/3\n maxWidth: flexBasis,\n paddingLeft: firstCol ? 0 : `${columnGap.value / 2}${columnGap.unit}`,\n paddingRight: lastCol ? 0 : `${columnGap.value / 2}${columnGap.unit}`,\n paddingTop: firstRow ? 0 : `${rowGap.value / 2}${rowGap.unit}`,\n paddingBottom: lastRow ? 0 : `${rowGap.value / 2}${rowGap.unit}`,\n }\n },\n ),\n }\n}\n\nexport function useResponsiveGridItem(\n ...args: DropFirst<Parameters<typeof responsiveGridItem>>\n): CSSObject {\n return responsiveGridItem(useBreakpoints(), ...args)\n}\n\nconst getBoxShadow = (shadows: BoxShadow) =>\n shadows\n .map(\n ({ payload: { inset, offsetX, offsetY, blurRadius, spreadRadius, color } }) =>\n `${inset ? 'inset ' : ''}${offsetX.toFixed(1)}px ${offsetY.toFixed(\n 1,\n )}px ${blurRadius}px ${spreadRadius}px ${\n color != null ? colorToString(color) : 'rgba(0,0,0,0.2)'\n }`,\n )\n .filter(Boolean)\n .join()\n\nexport function responsiveShadow(\n breakpoints: Breakpoints,\n value: ResponsiveBoxShadow | undefined,\n): CSSObject {\n return responsiveStyle(breakpoints, [value], ([shadow = []]) => ({\n boxShadow: getBoxShadow(shadow),\n }))\n}\n\nexport function useResponsiveShadow(\n ...args: DropFirst<Parameters<typeof responsiveShadow>>\n): CSSObject {\n return responsiveShadow(useBreakpoints(), ...args)\n}\n\nexport function responsiveTextStyle(\n breakpoints: Breakpoints,\n value: ResponsiveTextStyleData | undefined,\n): CSSObject {\n return responsiveStyle(\n breakpoints,\n [value],\n ([\n textStyle = {\n fontFamily: null,\n letterSpacing: null,\n fontSize: null,\n fontWeight: null,\n textTransform: [],\n fontStyle: [],\n },\n ]) => {\n const {\n fontSize,\n fontWeight,\n fontStyle = [],\n textTransform = [],\n letterSpacing,\n fontFamily,\n } = textStyle\n\n return {\n ...(fontFamily == null ? {} : { fontFamily: `\"${fontFamily}\"` }),\n ...(fontWeight == null ? {} : { fontWeight }),\n ...(letterSpacing == null ? {} : { letterSpacing }),\n ...(fontSize == null ? {} : { fontSize: `${fontSize.value}${fontSize.unit}` }),\n ...(textTransform.includes('uppercase') ? { textTransform: 'uppercase' } : {}),\n ...(fontStyle.includes('italic') ? { fontStyle: 'italic' } : {}),\n }\n },\n )\n}\n\nexport function useResponsiveTextStyle(\n ...args: DropFirst<Parameters<typeof responsiveTextStyle>>\n): CSSObject {\n return responsiveTextStyle(useBreakpoints(), ...args)\n}\n"],"mappings":"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","names":[]}
@@ -2,12 +2,28 @@ import {
2
2
  ControlDefinition,
3
3
  ControlInstance,
4
4
  DefaultControlInstance,
5
- ShapeV2Control
5
+ ShapeV2Control,
6
+ getBaseBreakpoint,
7
+ getBreakpoint,
8
+ findBreakpointOverride,
9
+ findNextFallback,
10
+ mergeOrCoalesceFallbacks,
11
+ mergeResponsiveValues,
12
+ shallowMergeFallbacks,
13
+ getViewportStyle
6
14
  } from "@makeswift/controls";
7
15
  export {
8
16
  ControlDefinition,
9
17
  ControlInstance,
10
18
  DefaultControlInstance,
11
- ShapeV2Control
19
+ ShapeV2Control,
20
+ findBreakpointOverride,
21
+ findNextFallback,
22
+ getBaseBreakpoint,
23
+ getBreakpoint,
24
+ getViewportStyle,
25
+ mergeOrCoalesceFallbacks,
26
+ mergeResponsiveValues,
27
+ shallowMergeFallbacks
12
28
  };
13
29
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/core/index.ts"],"sourcesContent":["export {\n type ConfigType,\n type Data,\n type DataType,\n type ValueType,\n type ResolvedValueType,\n type ControlMessage,\n type ReplacementContext,\n type SendMessageType,\n ControlDefinition,\n ControlInstance,\n DefaultControlInstance,\n ShapeV2Control,\n} from '@makeswift/controls'\n"],"mappings":"AAAA;AAAA,EASE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACK;","names":[]}
1
+ {"version":3,"sources":["../../../src/core/index.ts"],"sourcesContent":["export {\n type Breakpoint,\n type BreakpointId,\n type Breakpoints,\n type ConfigType,\n type Data,\n type DataType,\n type DeviceOverride,\n type FallbackStrategy,\n type ValueType,\n type ResolvedValueType,\n type ResponsiveValue,\n type ControlMessage,\n type ReplacementContext,\n type SendMessageType,\n ControlDefinition,\n ControlInstance,\n DefaultControlInstance,\n ShapeV2Control,\n getBaseBreakpoint,\n getBreakpoint,\n findBreakpointOverride,\n findNextFallback,\n mergeOrCoalesceFallbacks,\n mergeResponsiveValues,\n shallowMergeFallbacks,\n getViewportStyle,\n} from '@makeswift/controls'\n"],"mappings":"AAAA;AAAA,EAeE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACK;","names":[]}
@@ -1,10 +1,13 @@
1
1
  import "@testing-library/jest-dom";
2
- import { matchers } from "@emotion/jest";
2
+ import { matchers, createSerializer } from "@emotion/jest";
3
3
  import { server } from "./mocks/server";
4
4
  beforeAll(() => server.listen());
5
5
  afterEach(() => server.resetHandlers());
6
6
  afterAll(() => server.close());
7
7
  expect.extend(matchers);
8
+ if (typeof window !== "undefined") {
9
+ expect.addSnapshotSerializer(createSerializer());
10
+ }
8
11
  jest.mock("uuid", () => ({
9
12
  v4: jest.fn(() => "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"),
10
13
  v5: jest.fn(() => "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx")
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/jest-setup.ts"],"sourcesContent":["import '@testing-library/jest-dom'\nimport { matchers } from '@emotion/jest'\nimport { server } from './mocks/server'\n\nbeforeAll(() => server.listen())\nafterEach(() => server.resetHandlers())\nafterAll(() => server.close())\n\nexpect.extend(matchers)\n\njest.mock('uuid', () => ({\n v4: jest.fn(() => 'xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx'),\n v5: jest.fn(() => 'xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx'),\n}))\n\nif (typeof window !== 'undefined') {\n Object.defineProperty(window, 'matchMedia', {\n writable: true,\n value: jest.fn().mockImplementation(query => ({\n matches: false,\n media: query,\n onchange: null,\n addListener: jest.fn(), // deprecated\n removeListener: jest.fn(), // deprecated\n addEventListener: jest.fn(),\n removeEventListener: jest.fn(),\n dispatchEvent: jest.fn(),\n })),\n })\n\n Object.defineProperty(window, 'IntersectionObserver', {\n writable: true,\n value: jest.fn().mockImplementation(() => ({\n observe: jest.fn(),\n unobserve: jest.fn(),\n disconnect: jest.fn(),\n })),\n })\n}\n"],"mappings":"AAAA,OAAO;AACP,SAAS,gBAAgB;AACzB,SAAS,cAAc;AAEvB,UAAU,MAAM,OAAO,OAAO,CAAC;AAC/B,UAAU,MAAM,OAAO,cAAc,CAAC;AACtC,SAAS,MAAM,OAAO,MAAM,CAAC;AAE7B,OAAO,OAAO,QAAQ;AAEtB,KAAK,KAAK,QAAQ,OAAO;AAAA,EACvB,IAAI,KAAK,GAAG,MAAM,sCAAsC;AAAA,EACxD,IAAI,KAAK,GAAG,MAAM,sCAAsC;AAC1D,EAAE;AAEF,IAAI,OAAO,WAAW,aAAa;AACjC,SAAO,eAAe,QAAQ,cAAc;AAAA,IAC1C,UAAU;AAAA,IACV,OAAO,KAAK,GAAG,EAAE,mBAAmB,YAAU;AAAA,MAC5C,SAAS;AAAA,MACT,OAAO;AAAA,MACP,UAAU;AAAA,MACV,aAAa,KAAK,GAAG;AAAA;AAAA,MACrB,gBAAgB,KAAK,GAAG;AAAA;AAAA,MACxB,kBAAkB,KAAK,GAAG;AAAA,MAC1B,qBAAqB,KAAK,GAAG;AAAA,MAC7B,eAAe,KAAK,GAAG;AAAA,IACzB,EAAE;AAAA,EACJ,CAAC;AAED,SAAO,eAAe,QAAQ,wBAAwB;AAAA,IACpD,UAAU;AAAA,IACV,OAAO,KAAK,GAAG,EAAE,mBAAmB,OAAO;AAAA,MACzC,SAAS,KAAK,GAAG;AAAA,MACjB,WAAW,KAAK,GAAG;AAAA,MACnB,YAAY,KAAK,GAAG;AAAA,IACtB,EAAE;AAAA,EACJ,CAAC;AACH;","names":[]}
1
+ {"version":3,"sources":["../../src/jest-setup.ts"],"sourcesContent":["import '@testing-library/jest-dom'\nimport { matchers, createSerializer } from '@emotion/jest'\nimport { server } from './mocks/server'\n\nbeforeAll(() => server.listen())\nafterEach(() => server.resetHandlers())\nafterAll(() => server.close())\n\nexpect.extend(matchers)\nif (typeof window !== 'undefined') {\n // jest-environment jsdom\n expect.addSnapshotSerializer(createSerializer())\n}\n\njest.mock('uuid', () => ({\n v4: jest.fn(() => 'xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx'),\n v5: jest.fn(() => 'xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx'),\n}))\n\nif (typeof window !== 'undefined') {\n Object.defineProperty(window, 'matchMedia', {\n writable: true,\n value: jest.fn().mockImplementation(query => ({\n matches: false,\n media: query,\n onchange: null,\n addListener: jest.fn(), // deprecated\n removeListener: jest.fn(), // deprecated\n addEventListener: jest.fn(),\n removeEventListener: jest.fn(),\n dispatchEvent: jest.fn(),\n })),\n })\n\n Object.defineProperty(window, 'IntersectionObserver', {\n writable: true,\n value: jest.fn().mockImplementation(() => ({\n observe: jest.fn(),\n unobserve: jest.fn(),\n disconnect: jest.fn(),\n })),\n })\n}\n"],"mappings":"AAAA,OAAO;AACP,SAAS,UAAU,wBAAwB;AAC3C,SAAS,cAAc;AAEvB,UAAU,MAAM,OAAO,OAAO,CAAC;AAC/B,UAAU,MAAM,OAAO,cAAc,CAAC;AACtC,SAAS,MAAM,OAAO,MAAM,CAAC;AAE7B,OAAO,OAAO,QAAQ;AACtB,IAAI,OAAO,WAAW,aAAa;AAEjC,SAAO,sBAAsB,iBAAiB,CAAC;AACjD;AAEA,KAAK,KAAK,QAAQ,OAAO;AAAA,EACvB,IAAI,KAAK,GAAG,MAAM,sCAAsC;AAAA,EACxD,IAAI,KAAK,GAAG,MAAM,sCAAsC;AAC1D,EAAE;AAEF,IAAI,OAAO,WAAW,aAAa;AACjC,SAAO,eAAe,QAAQ,cAAc;AAAA,IAC1C,UAAU;AAAA,IACV,OAAO,KAAK,GAAG,EAAE,mBAAmB,YAAU;AAAA,MAC5C,SAAS;AAAA,MACT,OAAO;AAAA,MACP,UAAU;AAAA,MACV,aAAa,KAAK,GAAG;AAAA;AAAA,MACrB,gBAAgB,KAAK,GAAG;AAAA;AAAA,MACxB,kBAAkB,KAAK,GAAG;AAAA,MAC1B,qBAAqB,KAAK,GAAG;AAAA,MAC7B,eAAe,KAAK,GAAG;AAAA,IACzB,EAAE;AAAA,EACJ,CAAC;AAED,SAAO,eAAe,QAAQ,wBAAwB;AAAA,IACpD,UAAU;AAAA,IACV,OAAO,KAAK,GAAG,EAAE,mBAAmB,OAAO;AAAA,MACzC,SAAS,KAAK,GAAG;AAAA,MACjB,WAAW,KAAK,GAAG;AAAA,MACnB,YAAY,KAAK,GAAG;AAAA,IACtB,EAAE;AAAA,EACJ,CAAC;AACH;","names":[]}
@@ -20,16 +20,23 @@ const languageCodeSchema = z.enum([
20
20
  "ab",
21
21
  "ae",
22
22
  "af",
23
+ "agq",
23
24
  "ak",
24
25
  "am",
25
26
  "an",
26
27
  "ar",
28
+ "arn",
27
29
  "as",
30
+ "asa",
31
+ "ast",
28
32
  "av",
29
33
  "ay",
30
34
  "az",
31
35
  "ba",
36
+ "bas",
32
37
  "be",
38
+ "bem",
39
+ "bez",
33
40
  "bg",
34
41
  "bh",
35
42
  "bi",
@@ -37,10 +44,16 @@ const languageCodeSchema = z.enum([
37
44
  "bn",
38
45
  "bo",
39
46
  "br",
47
+ "brx",
40
48
  "bs",
49
+ "byn",
41
50
  "ca",
51
+ "ccp",
42
52
  "ce",
53
+ "ceb",
54
+ "cgg",
43
55
  "ch",
56
+ "chr",
44
57
  "co",
45
58
  "cr",
46
59
  "cs",
@@ -48,9 +61,14 @@ const languageCodeSchema = z.enum([
48
61
  "cv",
49
62
  "cy",
50
63
  "da",
64
+ "dav",
51
65
  "de",
66
+ "dsb",
67
+ "dua",
52
68
  "dv",
69
+ "dyo",
53
70
  "dz",
71
+ "ebu",
54
72
  "ee",
55
73
  "el",
56
74
  "en",
@@ -58,20 +76,26 @@ const languageCodeSchema = z.enum([
58
76
  "es",
59
77
  "et",
60
78
  "eu",
79
+ "ewo",
61
80
  "fa",
62
81
  "ff",
63
82
  "fi",
83
+ "fil",
64
84
  "fj",
65
85
  "fo",
66
86
  "fr",
87
+ "fur",
67
88
  "fy",
68
89
  "ga",
69
90
  "gd",
70
91
  "gl",
71
92
  "gn",
93
+ "gsw",
72
94
  "gu",
95
+ "guz",
73
96
  "gv",
74
97
  "ha",
98
+ "haw",
75
99
  "he",
76
100
  "hi",
77
101
  "ho",
@@ -91,52 +115,84 @@ const languageCodeSchema = z.enum([
91
115
  "it",
92
116
  "iu",
93
117
  "ja",
118
+ "jgo",
119
+ "jmc",
94
120
  "jv",
95
121
  "ka",
122
+ "kab",
123
+ "kam",
124
+ "kde",
125
+ "kea",
96
126
  "kg",
127
+ "khq",
97
128
  "ki",
98
129
  "kj",
99
130
  "kk",
131
+ "kkj",
100
132
  "kl",
133
+ "kln",
101
134
  "km",
102
135
  "kn",
103
136
  "ko",
137
+ "kok",
104
138
  "kr",
105
139
  "ks",
140
+ "ksb",
141
+ "ksf",
142
+ "ksh",
106
143
  "ku",
107
144
  "kv",
108
145
  "kw",
109
146
  "ky",
110
147
  "la",
148
+ "lag",
111
149
  "lb",
112
150
  "lg",
113
151
  "li",
152
+ "lkt",
114
153
  "ln",
115
154
  "lo",
116
155
  "lt",
117
156
  "lu",
157
+ "luo",
158
+ "luy",
118
159
  "lv",
160
+ "mas",
161
+ "mer",
162
+ "mfe",
119
163
  "mg",
164
+ "mgh",
165
+ "mgo",
120
166
  "mh",
121
167
  "mi",
122
168
  "mk",
123
169
  "ml",
124
170
  "mn",
171
+ "moh",
125
172
  "mr",
126
173
  "ms",
127
174
  "mt",
175
+ "mua",
128
176
  "my",
129
177
  "na",
178
+ "naq",
130
179
  "nb",
131
180
  "nd",
181
+ "nds",
132
182
  "ne",
133
183
  "ng",
134
184
  "nl",
185
+ "nmg",
135
186
  "nn",
187
+ "nnh",
136
188
  "no",
189
+ "nqo",
137
190
  "nr",
191
+ "nso",
192
+ "nus",
138
193
  "nv",
139
194
  "ny",
195
+ "nyn",
140
196
  "oc",
141
197
  "oj",
142
198
  "om",
@@ -148,34 +204,51 @@ const languageCodeSchema = z.enum([
148
204
  "ps",
149
205
  "pt",
150
206
  "qu",
207
+ "quc",
151
208
  "rm",
152
209
  "rn",
153
210
  "ro",
211
+ "rof",
154
212
  "ru",
155
213
  "rw",
214
+ "rwk",
156
215
  "sa",
216
+ "sah",
217
+ "saq",
218
+ "sbp",
157
219
  "sc",
158
220
  "sd",
159
221
  "se",
222
+ "seh",
223
+ "ses",
160
224
  "sg",
225
+ "shi",
161
226
  "si",
162
227
  "sk",
163
228
  "sl",
164
229
  "sm",
230
+ "sma",
231
+ "smj",
232
+ "smn",
233
+ "sms",
165
234
  "sn",
166
235
  "so",
167
236
  "sq",
168
237
  "sr",
169
238
  "ss",
239
+ "ssy",
170
240
  "st",
171
241
  "su",
172
242
  "sv",
173
243
  "sw",
244
+ "syr",
174
245
  "ta",
175
246
  "te",
247
+ "teo",
176
248
  "tg",
177
249
  "th",
178
250
  "ti",
251
+ "tig",
179
252
  "tk",
180
253
  "tl",
181
254
  "tn",
@@ -184,24 +257,30 @@ const languageCodeSchema = z.enum([
184
257
  "ts",
185
258
  "tt",
186
259
  "tw",
260
+ "twq",
187
261
  "ty",
262
+ "tzm",
188
263
  "ug",
189
264
  "uk",
190
265
  "ur",
191
266
  "uz",
267
+ "vai",
192
268
  "ve",
193
269
  "vi",
194
270
  "vo",
195
271
  "wa",
196
272
  "wo",
197
273
  "xh",
274
+ "xog",
198
275
  "yi",
199
276
  "yo",
200
277
  "za",
278
+ "zgh",
201
279
  "zh",
202
280
  "zu"
203
281
  ]);
204
282
  const countryCodeSchema = z.enum([
283
+ "419",
205
284
  "AF",
206
285
  "AX",
207
286
  "AL",
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/locale.ts"],"sourcesContent":["import { z } from 'zod'\n\nexport const localeStringSchema = z.string().transform((value, ctx) => {\n const { language, region } = new Intl.Locale(value)\n\n const languageResult = languageCodeSchema.safeParse(language)\n\n if (languageResult.success && region == null && value === languageResult.data) {\n return languageResult.data\n }\n\n const countryCodeResult = countryCodeSchema.safeParse(region)\n\n if (\n languageResult.success &&\n countryCodeResult.success &&\n value === `${languageResult.data}-${countryCodeResult.data}`\n ) {\n return `${languageResult.data}-${countryCodeResult.data}` as const\n }\n\n ctx.addIssue({\n code: z.ZodIssueCode.custom,\n message: `Locale is not supported: '${value}'. Make sure the locale is in the format of 'language', e.g. 'en', or 'language-country', e.g. 'en-US'.`,\n })\n\n return z.NEVER\n})\n\nexport type LocaleString = LanguageCode | `${LanguageCode}-${CountryCode}`\n\ntype LanguageCode = z.infer<typeof languageCodeSchema>\ntype CountryCode = z.infer<typeof countryCodeSchema>\n\nconst languageCodeSchema = z.enum([\n 'aa',\n 'ab',\n 'ae',\n 'af',\n 'ak',\n 'am',\n 'an',\n 'ar',\n 'as',\n 'av',\n 'ay',\n 'az',\n 'ba',\n 'be',\n 'bg',\n 'bh',\n 'bi',\n 'bm',\n 'bn',\n 'bo',\n 'br',\n 'bs',\n 'ca',\n 'ce',\n 'ch',\n 'co',\n 'cr',\n 'cs',\n 'cu',\n 'cv',\n 'cy',\n 'da',\n 'de',\n 'dv',\n 'dz',\n 'ee',\n 'el',\n 'en',\n 'eo',\n 'es',\n 'et',\n 'eu',\n 'fa',\n 'ff',\n 'fi',\n 'fj',\n 'fo',\n 'fr',\n 'fy',\n 'ga',\n 'gd',\n 'gl',\n 'gn',\n 'gu',\n 'gv',\n 'ha',\n 'he',\n 'hi',\n 'ho',\n 'hr',\n 'ht',\n 'hu',\n 'hy',\n 'hz',\n 'ia',\n 'id',\n 'ie',\n 'ig',\n 'ii',\n 'ik',\n 'io',\n 'is',\n 'it',\n 'iu',\n 'ja',\n 'jv',\n 'ka',\n 'kg',\n 'ki',\n 'kj',\n 'kk',\n 'kl',\n 'km',\n 'kn',\n 'ko',\n 'kr',\n 'ks',\n 'ku',\n 'kv',\n 'kw',\n 'ky',\n 'la',\n 'lb',\n 'lg',\n 'li',\n 'ln',\n 'lo',\n 'lt',\n 'lu',\n 'lv',\n 'mg',\n 'mh',\n 'mi',\n 'mk',\n 'ml',\n 'mn',\n 'mr',\n 'ms',\n 'mt',\n 'my',\n 'na',\n 'nb',\n 'nd',\n 'ne',\n 'ng',\n 'nl',\n 'nn',\n 'no',\n 'nr',\n 'nv',\n 'ny',\n 'oc',\n 'oj',\n 'om',\n 'or',\n 'os',\n 'pa',\n 'pi',\n 'pl',\n 'ps',\n 'pt',\n 'qu',\n 'rm',\n 'rn',\n 'ro',\n 'ru',\n 'rw',\n 'sa',\n 'sc',\n 'sd',\n 'se',\n 'sg',\n 'si',\n 'sk',\n 'sl',\n 'sm',\n 'sn',\n 'so',\n 'sq',\n 'sr',\n 'ss',\n 'st',\n 'su',\n 'sv',\n 'sw',\n 'ta',\n 'te',\n 'tg',\n 'th',\n 'ti',\n 'tk',\n 'tl',\n 'tn',\n 'to',\n 'tr',\n 'ts',\n 'tt',\n 'tw',\n 'ty',\n 'ug',\n 'uk',\n 'ur',\n 'uz',\n 've',\n 'vi',\n 'vo',\n 'wa',\n 'wo',\n 'xh',\n 'yi',\n 'yo',\n 'za',\n 'zh',\n 'zu',\n])\n\nconst countryCodeSchema = z.enum([\n 'AF',\n 'AX',\n 'AL',\n 'DZ',\n 'AS',\n 'AD',\n 'AO',\n 'AI',\n 'AQ',\n 'AG',\n 'AR',\n 'AM',\n 'AW',\n 'AU',\n 'AT',\n 'AZ',\n 'BS',\n 'BH',\n 'BD',\n 'BB',\n 'BY',\n 'BE',\n 'BZ',\n 'BJ',\n 'BM',\n 'BT',\n 'BO',\n 'BQ',\n 'BA',\n 'BW',\n 'BV',\n 'BR',\n 'IO',\n 'BN',\n 'BG',\n 'BF',\n 'BI',\n 'KH',\n 'CM',\n 'CA',\n 'CV',\n 'KY',\n 'CF',\n 'TD',\n 'CL',\n 'CN',\n 'CX',\n 'CC',\n 'CO',\n 'KM',\n 'CG',\n 'CD',\n 'CK',\n 'CR',\n 'CI',\n 'HR',\n 'CU',\n 'CW',\n 'CY',\n 'CZ',\n 'DK',\n 'DJ',\n 'DM',\n 'DO',\n 'EC',\n 'EG',\n 'SV',\n 'GQ',\n 'ER',\n 'EE',\n 'ET',\n 'FK',\n 'FO',\n 'FJ',\n 'FI',\n 'FR',\n 'GF',\n 'PF',\n 'TF',\n 'GA',\n 'GM',\n 'GE',\n 'DE',\n 'GH',\n 'GI',\n 'GR',\n 'GL',\n 'GD',\n 'GP',\n 'GU',\n 'GT',\n 'GG',\n 'GN',\n 'GW',\n 'GY',\n 'HT',\n 'HM',\n 'VA',\n 'HN',\n 'HK',\n 'HU',\n 'IS',\n 'IN',\n 'ID',\n 'IR',\n 'IQ',\n 'IE',\n 'IM',\n 'IL',\n 'IT',\n 'JM',\n 'JP',\n 'JE',\n 'JO',\n 'KZ',\n 'KE',\n 'KI',\n 'KP',\n 'KR',\n 'KW',\n 'KG',\n 'LA',\n 'LV',\n 'LB',\n 'LS',\n 'LR',\n 'LY',\n 'LI',\n 'LT',\n 'LU',\n 'MO',\n 'MK',\n 'MG',\n 'MW',\n 'MY',\n 'MV',\n 'ML',\n 'MT',\n 'MH',\n 'MQ',\n 'MR',\n 'MU',\n 'YT',\n 'MX',\n 'FM',\n 'MD',\n 'MC',\n 'MN',\n 'ME',\n 'MS',\n 'MA',\n 'MZ',\n 'MM',\n 'NA',\n 'NR',\n 'NP',\n 'NL',\n 'NC',\n 'NZ',\n 'NI',\n 'NE',\n 'NG',\n 'NU',\n 'NF',\n 'MP',\n 'NO',\n 'OM',\n 'PK',\n 'PW',\n 'PS',\n 'PA',\n 'PG',\n 'PY',\n 'PE',\n 'PH',\n 'PN',\n 'PL',\n 'PT',\n 'PR',\n 'QA',\n 'RE',\n 'RO',\n 'RU',\n 'RW',\n 'BL',\n 'SH',\n 'KN',\n 'LC',\n 'MF',\n 'PM',\n 'VC',\n 'WS',\n 'SM',\n 'ST',\n 'SA',\n 'SN',\n 'RS',\n 'SC',\n 'SL',\n 'SG',\n 'SX',\n 'SK',\n 'SI',\n 'SB',\n 'SO',\n 'ZA',\n 'GS',\n 'SS',\n 'ES',\n 'LK',\n 'SD',\n 'SR',\n 'SJ',\n 'SZ',\n 'SE',\n 'CH',\n 'SY',\n 'TW',\n 'TJ',\n 'TZ',\n 'TH',\n 'TL',\n 'TG',\n 'TK',\n 'TO',\n 'TT',\n 'TN',\n 'TR',\n 'TM',\n 'TC',\n 'TV',\n 'UG',\n 'UA',\n 'AE',\n 'GB',\n 'US',\n 'UM',\n 'UY',\n 'UZ',\n 'VU',\n 'VE',\n 'VN',\n 'VG',\n 'VI',\n 'WF',\n 'EH',\n 'YE',\n 'ZM',\n 'ZW',\n])\n"],"mappings":"AAAA,SAAS,SAAS;AAEX,MAAM,qBAAqB,EAAE,OAAO,EAAE,UAAU,CAAC,OAAO,QAAQ;AACrE,QAAM,EAAE,UAAU,OAAO,IAAI,IAAI,KAAK,OAAO,KAAK;AAElD,QAAM,iBAAiB,mBAAmB,UAAU,QAAQ;AAE5D,MAAI,eAAe,WAAW,UAAU,QAAQ,UAAU,eAAe,MAAM;AAC7E,WAAO,eAAe;AAAA,EACxB;AAEA,QAAM,oBAAoB,kBAAkB,UAAU,MAAM;AAE5D,MACE,eAAe,WACf,kBAAkB,WAClB,UAAU,GAAG,eAAe,IAAI,IAAI,kBAAkB,IAAI,IAC1D;AACA,WAAO,GAAG,eAAe,IAAI,IAAI,kBAAkB,IAAI;AAAA,EACzD;AAEA,MAAI,SAAS;AAAA,IACX,MAAM,EAAE,aAAa;AAAA,IACrB,SAAS,6BAA6B,KAAK;AAAA,EAC7C,CAAC;AAED,SAAO,EAAE;AACX,CAAC;AAOD,MAAM,qBAAqB,EAAE,KAAK;AAAA,EAChC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,CAAC;AAED,MAAM,oBAAoB,EAAE,KAAK;AAAA,EAC/B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,CAAC;","names":[]}
1
+ {"version":3,"sources":["../../src/locale.ts"],"sourcesContent":["import { z } from 'zod'\n\nexport const localeStringSchema = z.string().transform((value, ctx) => {\n const { language, region } = new Intl.Locale(value)\n\n const languageResult = languageCodeSchema.safeParse(language)\n\n if (languageResult.success && region == null && value === languageResult.data) {\n return languageResult.data\n }\n\n const countryCodeResult = countryCodeSchema.safeParse(region)\n\n if (\n languageResult.success &&\n countryCodeResult.success &&\n value === `${languageResult.data}-${countryCodeResult.data}`\n ) {\n return `${languageResult.data}-${countryCodeResult.data}` as const\n }\n\n ctx.addIssue({\n code: z.ZodIssueCode.custom,\n message: `Locale is not supported: '${value}'. Make sure the locale is in the format of 'language', e.g. 'en', or 'language-country', e.g. 'en-US'.`,\n })\n\n return z.NEVER\n})\n\nexport type LocaleString = LanguageCode | `${LanguageCode}-${CountryCode}`\n\ntype LanguageCode = z.infer<typeof languageCodeSchema>\ntype CountryCode = z.infer<typeof countryCodeSchema>\n\nconst languageCodeSchema = z.enum([\n 'aa',\n 'ab',\n 'ae',\n 'af',\n 'agq',\n 'ak',\n 'am',\n 'an',\n 'ar',\n 'arn',\n 'as',\n 'asa',\n 'ast',\n 'av',\n 'ay',\n 'az',\n 'ba',\n 'bas',\n 'be',\n 'bem',\n 'bez',\n 'bg',\n 'bh',\n 'bi',\n 'bm',\n 'bn',\n 'bo',\n 'br',\n 'brx',\n 'bs',\n 'byn',\n 'ca',\n 'ccp',\n 'ce',\n 'ceb',\n 'cgg',\n 'ch',\n 'chr',\n 'co',\n 'cr',\n 'cs',\n 'cu',\n 'cv',\n 'cy',\n 'da',\n 'dav',\n 'de',\n 'dsb',\n 'dua',\n 'dv',\n 'dyo',\n 'dz',\n 'ebu',\n 'ee',\n 'el',\n 'en',\n 'eo',\n 'es',\n 'et',\n 'eu',\n 'ewo',\n 'fa',\n 'ff',\n 'fi',\n 'fil',\n 'fj',\n 'fo',\n 'fr',\n 'fur',\n 'fy',\n 'ga',\n 'gd',\n 'gl',\n 'gn',\n 'gsw',\n 'gu',\n 'guz',\n 'gv',\n 'ha',\n 'haw',\n 'he',\n 'hi',\n 'ho',\n 'hr',\n 'ht',\n 'hu',\n 'hy',\n 'hz',\n 'ia',\n 'id',\n 'ie',\n 'ig',\n 'ii',\n 'ik',\n 'io',\n 'is',\n 'it',\n 'iu',\n 'ja',\n 'jgo',\n 'jmc',\n 'jv',\n 'ka',\n 'kab',\n 'kam',\n 'kde',\n 'kea',\n 'kg',\n 'khq',\n 'ki',\n 'kj',\n 'kk',\n 'kkj',\n 'kl',\n 'kln',\n 'km',\n 'kn',\n 'ko',\n 'kok',\n 'kr',\n 'ks',\n 'ksb',\n 'ksf',\n 'ksh',\n 'ku',\n 'kv',\n 'kw',\n 'ky',\n 'la',\n 'lag',\n 'lb',\n 'lg',\n 'li',\n 'lkt',\n 'ln',\n 'lo',\n 'lt',\n 'lu',\n 'luo',\n 'luy',\n 'lv',\n 'mas',\n 'mer',\n 'mfe',\n 'mg',\n 'mgh',\n 'mgo',\n 'mh',\n 'mi',\n 'mk',\n 'ml',\n 'mn',\n 'moh',\n 'mr',\n 'ms',\n 'mt',\n 'mua',\n 'my',\n 'na',\n 'naq',\n 'nb',\n 'nd',\n 'nds',\n 'ne',\n 'ng',\n 'nl',\n 'nmg',\n 'nn',\n 'nnh',\n 'no',\n 'nqo',\n 'nr',\n 'nso',\n 'nus',\n 'nv',\n 'ny',\n 'nyn',\n 'oc',\n 'oj',\n 'om',\n 'or',\n 'os',\n 'pa',\n 'pi',\n 'pl',\n 'ps',\n 'pt',\n 'qu',\n 'quc',\n 'rm',\n 'rn',\n 'ro',\n 'rof',\n 'ru',\n 'rw',\n 'rwk',\n 'sa',\n 'sah',\n 'saq',\n 'sbp',\n 'sc',\n 'sd',\n 'se',\n 'seh',\n 'ses',\n 'sg',\n 'shi',\n 'si',\n 'sk',\n 'sl',\n 'sm',\n 'sma',\n 'smj',\n 'smn',\n 'sms',\n 'sn',\n 'so',\n 'sq',\n 'sr',\n 'ss',\n 'ssy',\n 'st',\n 'su',\n 'sv',\n 'sw',\n 'syr',\n 'ta',\n 'te',\n 'teo',\n 'tg',\n 'th',\n 'ti',\n 'tig',\n 'tk',\n 'tl',\n 'tn',\n 'to',\n 'tr',\n 'ts',\n 'tt',\n 'tw',\n 'twq',\n 'ty',\n 'tzm',\n 'ug',\n 'uk',\n 'ur',\n 'uz',\n 'vai',\n 've',\n 'vi',\n 'vo',\n 'wa',\n 'wo',\n 'xh',\n 'xog',\n 'yi',\n 'yo',\n 'za',\n 'zgh',\n 'zh',\n 'zu',\n])\n\nconst countryCodeSchema = z.enum([\n '419',\n 'AF',\n 'AX',\n 'AL',\n 'DZ',\n 'AS',\n 'AD',\n 'AO',\n 'AI',\n 'AQ',\n 'AG',\n 'AR',\n 'AM',\n 'AW',\n 'AU',\n 'AT',\n 'AZ',\n 'BS',\n 'BH',\n 'BD',\n 'BB',\n 'BY',\n 'BE',\n 'BZ',\n 'BJ',\n 'BM',\n 'BT',\n 'BO',\n 'BQ',\n 'BA',\n 'BW',\n 'BV',\n 'BR',\n 'IO',\n 'BN',\n 'BG',\n 'BF',\n 'BI',\n 'KH',\n 'CM',\n 'CA',\n 'CV',\n 'KY',\n 'CF',\n 'TD',\n 'CL',\n 'CN',\n 'CX',\n 'CC',\n 'CO',\n 'KM',\n 'CG',\n 'CD',\n 'CK',\n 'CR',\n 'CI',\n 'HR',\n 'CU',\n 'CW',\n 'CY',\n 'CZ',\n 'DK',\n 'DJ',\n 'DM',\n 'DO',\n 'EC',\n 'EG',\n 'SV',\n 'GQ',\n 'ER',\n 'EE',\n 'ET',\n 'FK',\n 'FO',\n 'FJ',\n 'FI',\n 'FR',\n 'GF',\n 'PF',\n 'TF',\n 'GA',\n 'GM',\n 'GE',\n 'DE',\n 'GH',\n 'GI',\n 'GR',\n 'GL',\n 'GD',\n 'GP',\n 'GU',\n 'GT',\n 'GG',\n 'GN',\n 'GW',\n 'GY',\n 'HT',\n 'HM',\n 'VA',\n 'HN',\n 'HK',\n 'HU',\n 'IS',\n 'IN',\n 'ID',\n 'IR',\n 'IQ',\n 'IE',\n 'IM',\n 'IL',\n 'IT',\n 'JM',\n 'JP',\n 'JE',\n 'JO',\n 'KZ',\n 'KE',\n 'KI',\n 'KP',\n 'KR',\n 'KW',\n 'KG',\n 'LA',\n 'LV',\n 'LB',\n 'LS',\n 'LR',\n 'LY',\n 'LI',\n 'LT',\n 'LU',\n 'MO',\n 'MK',\n 'MG',\n 'MW',\n 'MY',\n 'MV',\n 'ML',\n 'MT',\n 'MH',\n 'MQ',\n 'MR',\n 'MU',\n 'YT',\n 'MX',\n 'FM',\n 'MD',\n 'MC',\n 'MN',\n 'ME',\n 'MS',\n 'MA',\n 'MZ',\n 'MM',\n 'NA',\n 'NR',\n 'NP',\n 'NL',\n 'NC',\n 'NZ',\n 'NI',\n 'NE',\n 'NG',\n 'NU',\n 'NF',\n 'MP',\n 'NO',\n 'OM',\n 'PK',\n 'PW',\n 'PS',\n 'PA',\n 'PG',\n 'PY',\n 'PE',\n 'PH',\n 'PN',\n 'PL',\n 'PT',\n 'PR',\n 'QA',\n 'RE',\n 'RO',\n 'RU',\n 'RW',\n 'BL',\n 'SH',\n 'KN',\n 'LC',\n 'MF',\n 'PM',\n 'VC',\n 'WS',\n 'SM',\n 'ST',\n 'SA',\n 'SN',\n 'RS',\n 'SC',\n 'SL',\n 'SG',\n 'SX',\n 'SK',\n 'SI',\n 'SB',\n 'SO',\n 'ZA',\n 'GS',\n 'SS',\n 'ES',\n 'LK',\n 'SD',\n 'SR',\n 'SJ',\n 'SZ',\n 'SE',\n 'CH',\n 'SY',\n 'TW',\n 'TJ',\n 'TZ',\n 'TH',\n 'TL',\n 'TG',\n 'TK',\n 'TO',\n 'TT',\n 'TN',\n 'TR',\n 'TM',\n 'TC',\n 'TV',\n 'UG',\n 'UA',\n 'AE',\n 'GB',\n 'US',\n 'UM',\n 'UY',\n 'UZ',\n 'VU',\n 'VE',\n 'VN',\n 'VG',\n 'VI',\n 'WF',\n 'EH',\n 'YE',\n 'ZM',\n 'ZW',\n])\n"],"mappings":"AAAA,SAAS,SAAS;AAEX,MAAM,qBAAqB,EAAE,OAAO,EAAE,UAAU,CAAC,OAAO,QAAQ;AACrE,QAAM,EAAE,UAAU,OAAO,IAAI,IAAI,KAAK,OAAO,KAAK;AAElD,QAAM,iBAAiB,mBAAmB,UAAU,QAAQ;AAE5D,MAAI,eAAe,WAAW,UAAU,QAAQ,UAAU,eAAe,MAAM;AAC7E,WAAO,eAAe;AAAA,EACxB;AAEA,QAAM,oBAAoB,kBAAkB,UAAU,MAAM;AAE5D,MACE,eAAe,WACf,kBAAkB,WAClB,UAAU,GAAG,eAAe,IAAI,IAAI,kBAAkB,IAAI,IAC1D;AACA,WAAO,GAAG,eAAe,IAAI,IAAI,kBAAkB,IAAI;AAAA,EACzD;AAEA,MAAI,SAAS;AAAA,IACX,MAAM,EAAE,aAAa;AAAA,IACrB,SAAS,6BAA6B,KAAK;AAAA,EAC7C,CAAC;AAED,SAAO,EAAE;AACX,CAAC;AAOD,MAAM,qBAAqB,EAAE,KAAK;AAAA,EAChC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,CAAC;AAED,MAAM,oBAAoB,EAAE,KAAK;AAAA,EAC/B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,CAAC;","names":[]}
@@ -0,0 +1,50 @@
1
+ import { NextResponse } from "next/server";
2
+ import { P, match } from "ts-pattern";
3
+ import {
4
+ MAKESWIFT_DRAFT_DATA_COOKIE,
5
+ PRERENDER_BYPASS_COOKIE,
6
+ PREVIEW_DATA_COOKIE,
7
+ SET_COOKIE_HEADER,
8
+ cookieSettingOptions
9
+ } from "./utils/draft";
10
+ import { serialize as serializeCookie } from "cookie";
11
+ function clearCookiesHeader(cookieNames) {
12
+ const headers = new Headers();
13
+ cookieNames.forEach((name) => {
14
+ headers.append(
15
+ SET_COOKIE_HEADER,
16
+ serializeCookie(name, "", { ...cookieSettingOptions, expires: /* @__PURE__ */ new Date(0) })
17
+ );
18
+ });
19
+ const setCookieHeader = headers.get(SET_COOKIE_HEADER);
20
+ if (setCookieHeader == null) {
21
+ throw new Error(
22
+ `Could not generate set-cookie header to clear cookies: ${cookieNames.join(", ")}`
23
+ );
24
+ }
25
+ return setCookieHeader;
26
+ }
27
+ const routeHandlerPattern = [P.instanceOf(Request), P.any, P.any];
28
+ const apiRoutePattern = [P.any, P.any, P.any];
29
+ async function clearDraftHandler(...args) {
30
+ return match(args).with(routeHandlerPattern, (args2) => clearDraftRouteHandler(...args2)).with(apiRoutePattern, (args2) => clearDraftApiRouteHandler(...args2)).exhaustive();
31
+ }
32
+ async function clearDraftRouteHandler(_request, _context, {}) {
33
+ const headers = new Headers();
34
+ headers.append(
35
+ SET_COOKIE_HEADER,
36
+ clearCookiesHeader([PRERENDER_BYPASS_COOKIE, MAKESWIFT_DRAFT_DATA_COOKIE])
37
+ );
38
+ return NextResponse.json({ __brand: "ClearDraftResponse" }, { headers });
39
+ }
40
+ async function clearDraftApiRouteHandler(_req, res, {}) {
41
+ res.setHeader(
42
+ SET_COOKIE_HEADER,
43
+ clearCookiesHeader([PRERENDER_BYPASS_COOKIE, PREVIEW_DATA_COOKIE])
44
+ );
45
+ return res.json({ __brand: "ClearDraftResponse" });
46
+ }
47
+ export {
48
+ clearDraftHandler as default
49
+ };
50
+ //# sourceMappingURL=clear-draft.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../src/next/api-handler/handlers/clear-draft.ts"],"sourcesContent":["import { NextApiRequest, NextApiResponse } from 'next'\nimport { NextRequest, NextResponse } from 'next/server'\nimport { P, match } from 'ts-pattern'\nimport {\n MAKESWIFT_DRAFT_DATA_COOKIE,\n PRERENDER_BYPASS_COOKIE,\n PREVIEW_DATA_COOKIE,\n SET_COOKIE_HEADER,\n cookieSettingOptions,\n} from './utils/draft'\nimport { serialize as serializeCookie } from 'cookie'\n\nfunction clearCookiesHeader(cookieNames: string[]): string {\n const headers = new Headers()\n\n cookieNames.forEach(name => {\n headers.append(\n SET_COOKIE_HEADER,\n serializeCookie(name, '', { ...cookieSettingOptions, expires: new Date(0) }),\n )\n })\n\n const setCookieHeader = headers.get(SET_COOKIE_HEADER)\n\n if (setCookieHeader == null) {\n throw new Error(\n `Could not generate set-cookie header to clear cookies: ${cookieNames.join(', ')}`,\n )\n }\n\n return setCookieHeader\n}\n\ntype Context = { params: { [key: string]: string | string[] } }\n\ntype ClearDraftError = string\n\ntype Response = { __brand: 'ClearDraftResponse' }\n\nexport type ClearDraftResponse = ClearDraftError | Response\n\ntype ClearDraftHandlerArgs =\n | [request: NextRequest, context: Context, params: { apiKey: string }]\n | [req: NextApiRequest, res: NextApiResponse<ClearDraftResponse>, params: { apiKey: string }]\n\nconst routeHandlerPattern = [P.instanceOf(Request), P.any, P.any] as const\nconst apiRoutePattern = [P.any, P.any, P.any] as const\n\nexport default async function clearDraftHandler(\n request: NextRequest,\n context: Context,\n { apiKey }: { apiKey: string },\n): Promise<NextResponse<ClearDraftResponse>>\nexport default async function clearDraftHandler(\n req: NextApiRequest,\n res: NextApiResponse<ClearDraftResponse>,\n { apiKey }: { apiKey: string },\n): Promise<void>\nexport default async function clearDraftHandler(\n ...args: ClearDraftHandlerArgs\n): Promise<NextResponse<ClearDraftResponse> | void> {\n return match(args)\n .with(routeHandlerPattern, args => clearDraftRouteHandler(...args))\n .with(apiRoutePattern, args => clearDraftApiRouteHandler(...args))\n .exhaustive()\n}\n\nasync function clearDraftRouteHandler(\n _request: NextRequest,\n _context: Context,\n {}: { apiKey: string },\n): Promise<NextResponse<ClearDraftResponse>> {\n const headers = new Headers()\n\n headers.append(\n SET_COOKIE_HEADER,\n clearCookiesHeader([PRERENDER_BYPASS_COOKIE, MAKESWIFT_DRAFT_DATA_COOKIE]),\n )\n\n return NextResponse.json({ __brand: 'ClearDraftResponse' }, { headers })\n}\n\nasync function clearDraftApiRouteHandler(\n _req: NextApiRequest,\n res: NextApiResponse<ClearDraftResponse>,\n {}: { apiKey: string },\n): Promise<void> {\n res.setHeader(\n SET_COOKIE_HEADER,\n clearCookiesHeader([PRERENDER_BYPASS_COOKIE, PREVIEW_DATA_COOKIE]),\n )\n\n return res.json({ __brand: 'ClearDraftResponse' })\n}\n"],"mappings":"AACA,SAAsB,oBAAoB;AAC1C,SAAS,GAAG,aAAa;AACzB;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACK;AACP,SAAS,aAAa,uBAAuB;AAE7C,SAAS,mBAAmB,aAA+B;AACzD,QAAM,UAAU,IAAI,QAAQ;AAE5B,cAAY,QAAQ,UAAQ;AAC1B,YAAQ;AAAA,MACN;AAAA,MACA,gBAAgB,MAAM,IAAI,EAAE,GAAG,sBAAsB,SAAS,oBAAI,KAAK,CAAC,EAAE,CAAC;AAAA,IAC7E;AAAA,EACF,CAAC;AAED,QAAM,kBAAkB,QAAQ,IAAI,iBAAiB;AAErD,MAAI,mBAAmB,MAAM;AAC3B,UAAM,IAAI;AAAA,MACR,0DAA0D,YAAY,KAAK,IAAI,CAAC;AAAA,IAClF;AAAA,EACF;AAEA,SAAO;AACT;AAcA,MAAM,sBAAsB,CAAC,EAAE,WAAW,OAAO,GAAG,EAAE,KAAK,EAAE,GAAG;AAChE,MAAM,kBAAkB,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG;AAY5C,eAAO,qBACF,MAC+C;AAClD,SAAO,MAAM,IAAI,EACd,KAAK,qBAAqB,CAAAA,UAAQ,uBAAuB,GAAGA,KAAI,CAAC,EACjE,KAAK,iBAAiB,CAAAA,UAAQ,0BAA0B,GAAGA,KAAI,CAAC,EAChE,WAAW;AAChB;AAEA,eAAe,uBACb,UACA,UACA,CAAC,GAC0C;AAC3C,QAAM,UAAU,IAAI,QAAQ;AAE5B,UAAQ;AAAA,IACN;AAAA,IACA,mBAAmB,CAAC,yBAAyB,2BAA2B,CAAC;AAAA,EAC3E;AAEA,SAAO,aAAa,KAAK,EAAE,SAAS,qBAAqB,GAAG,EAAE,QAAQ,CAAC;AACzE;AAEA,eAAe,0BACb,MACA,KACA,CAAC,GACc;AACf,MAAI;AAAA,IACF;AAAA,IACA,mBAAmB,CAAC,yBAAyB,mBAAmB,CAAC;AAAA,EACnE;AAEA,SAAO,IAAI,KAAK,EAAE,SAAS,qBAAqB,CAAC;AACnD;","names":["args"]}
@@ -14,7 +14,7 @@ async function handler(...args) {
14
14
  const supportsDraftMode = match(args).with(routeHandlerPattern, () => true).with(apiRoutePattern, () => false).exhaustive();
15
15
  const supportsWebhook = match(args).with(routeHandlerPattern, () => true).with(apiRoutePattern, () => false).exhaustive();
16
16
  const body = {
17
- version: "0.24.0-canary.0",
17
+ version: "0.24.0",
18
18
  previewMode: supportsPreviewMode,
19
19
  draftMode: supportsDraftMode,
20
20
  interactionMode: true,
@@ -24,7 +24,8 @@ async function handler(...args) {
24
24
  siteVersions: true,
25
25
  unstable_siteVersions: true,
26
26
  localizedPageSSR: true,
27
- webhook: supportsWebhook
27
+ webhook: supportsWebhook,
28
+ localizedPagesOnlineByDefault: true
28
29
  };
29
30
  return match(args).with(routeHandlerPattern, () => NextResponse.json(body)).with(apiRoutePattern, ([, res]) => res.json(body)).exhaustive();
30
31
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/next/api-handler/handlers/manifest.ts"],"sourcesContent":["import { NextApiRequest, NextApiResponse } from 'next'\nimport { NextRequest, NextResponse } from 'next/server'\nimport { P, match } from 'ts-pattern'\n\ntype Context = { params: { [key: string]: string | string[] } }\n\nexport type Manifest = {\n version: string\n previewMode: boolean\n interactionMode: boolean\n clientSideNavigation: boolean\n elementFromPoint: boolean\n customBreakpoints: boolean\n siteVersions: boolean\n unstable_siteVersions: boolean\n localizedPageSSR: boolean\n webhook: boolean\n}\n\ntype ManifestError = { message: string }\n\nexport type ManifestResponse = Manifest | ManifestError\n\ntype ManifestHandlerArgs =\n | [request: NextRequest, context: Context, params: { apiKey: string }]\n | [req: NextApiRequest, res: NextApiResponse<ManifestResponse>, params: { apiKey: string }]\n\nconst routeHandlerPattern = [P.instanceOf(Request), P.any, P.any] as const\nconst apiRoutePattern = [P.any, P.any, P.any] as const\n\nexport default async function handler(\n request: NextRequest,\n context: Context,\n { apiKey }: { apiKey: string },\n): Promise<NextResponse<ManifestResponse>>\nexport default async function handler(\n req: NextApiRequest,\n res: NextApiResponse<ManifestResponse>,\n { apiKey }: { apiKey: string },\n): Promise<void>\nexport default async function handler(\n ...args: ManifestHandlerArgs\n): Promise<NextResponse<ManifestResponse> | void> {\n const [, , { apiKey }] = args\n\n const secret = match(args)\n .with(routeHandlerPattern, ([request]) => request.nextUrl.searchParams.get('secret'))\n .with(apiRoutePattern, ([req]) => req.query.secret)\n .exhaustive()\n\n if (secret !== apiKey) {\n const status = 401\n const body = { message: 'Unauthorized' }\n\n return match(args)\n .with(routeHandlerPattern, () => NextResponse.json(body, { status }))\n .with(apiRoutePattern, ([, res]) => res.status(status).json(body))\n .exhaustive()\n }\n\n const supportsPreviewMode = match(args)\n .with(routeHandlerPattern, () => false)\n .with(apiRoutePattern, () => true)\n .exhaustive()\n\n const supportsDraftMode = match(args)\n .with(routeHandlerPattern, () => true)\n .with(apiRoutePattern, () => false)\n .exhaustive()\n\n const supportsWebhook = match(args)\n .with(routeHandlerPattern, () => true)\n .with(apiRoutePattern, () => false)\n .exhaustive()\n\n const body = {\n version: PACKAGE_VERSION,\n previewMode: supportsPreviewMode,\n draftMode: supportsDraftMode,\n interactionMode: true,\n clientSideNavigation: false,\n elementFromPoint: false,\n customBreakpoints: true,\n siteVersions: true,\n unstable_siteVersions: true,\n localizedPageSSR: true,\n webhook: supportsWebhook,\n }\n\n return match(args)\n .with(routeHandlerPattern, () => NextResponse.json(body))\n .with(apiRoutePattern, ([, res]) => res.json(body))\n .exhaustive()\n}\n"],"mappings":"AACA,SAAsB,oBAAoB;AAC1C,SAAS,GAAG,aAAa;AAyBzB,MAAM,sBAAsB,CAAC,EAAE,WAAW,OAAO,GAAG,EAAE,KAAK,EAAE,GAAG;AAChE,MAAM,kBAAkB,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG;AAY5C,eAAO,WACF,MAC6C;AAChD,QAAM,CAAC,EAAE,EAAE,EAAE,OAAO,CAAC,IAAI;AAEzB,QAAM,SAAS,MAAM,IAAI,EACtB,KAAK,qBAAqB,CAAC,CAAC,OAAO,MAAM,QAAQ,QAAQ,aAAa,IAAI,QAAQ,CAAC,EACnF,KAAK,iBAAiB,CAAC,CAAC,GAAG,MAAM,IAAI,MAAM,MAAM,EACjD,WAAW;AAEd,MAAI,WAAW,QAAQ;AACrB,UAAM,SAAS;AACf,UAAMA,QAAO,EAAE,SAAS,eAAe;AAEvC,WAAO,MAAM,IAAI,EACd,KAAK,qBAAqB,MAAM,aAAa,KAAKA,OAAM,EAAE,OAAO,CAAC,CAAC,EACnE,KAAK,iBAAiB,CAAC,CAAC,EAAE,GAAG,MAAM,IAAI,OAAO,MAAM,EAAE,KAAKA,KAAI,CAAC,EAChE,WAAW;AAAA,EAChB;AAEA,QAAM,sBAAsB,MAAM,IAAI,EACnC,KAAK,qBAAqB,MAAM,KAAK,EACrC,KAAK,iBAAiB,MAAM,IAAI,EAChC,WAAW;AAEd,QAAM,oBAAoB,MAAM,IAAI,EACjC,KAAK,qBAAqB,MAAM,IAAI,EACpC,KAAK,iBAAiB,MAAM,KAAK,EACjC,WAAW;AAEd,QAAM,kBAAkB,MAAM,IAAI,EAC/B,KAAK,qBAAqB,MAAM,IAAI,EACpC,KAAK,iBAAiB,MAAM,KAAK,EACjC,WAAW;AAEd,QAAM,OAAO;AAAA,IACX,SAAS;AAAA,IACT,aAAa;AAAA,IACb,WAAW;AAAA,IACX,iBAAiB;AAAA,IACjB,sBAAsB;AAAA,IACtB,kBAAkB;AAAA,IAClB,mBAAmB;AAAA,IACnB,cAAc;AAAA,IACd,uBAAuB;AAAA,IACvB,kBAAkB;AAAA,IAClB,SAAS;AAAA,EACX;AAEA,SAAO,MAAM,IAAI,EACd,KAAK,qBAAqB,MAAM,aAAa,KAAK,IAAI,CAAC,EACvD,KAAK,iBAAiB,CAAC,CAAC,EAAE,GAAG,MAAM,IAAI,KAAK,IAAI,CAAC,EACjD,WAAW;AAChB;","names":["body"]}
1
+ {"version":3,"sources":["../../../../../src/next/api-handler/handlers/manifest.ts"],"sourcesContent":["import { NextApiRequest, NextApiResponse } from 'next'\nimport { NextRequest, NextResponse } from 'next/server'\nimport { P, match } from 'ts-pattern'\n\ntype Context = { params: { [key: string]: string | string[] } }\n\nexport type Manifest = {\n version: string\n previewMode: boolean\n interactionMode: boolean\n clientSideNavigation: boolean\n elementFromPoint: boolean\n customBreakpoints: boolean\n siteVersions: boolean\n unstable_siteVersions: boolean\n localizedPageSSR: boolean\n webhook: boolean\n localizedPagesOnlineByDefault: boolean\n}\n\ntype ManifestError = { message: string }\n\nexport type ManifestResponse = Manifest | ManifestError\n\ntype ManifestHandlerArgs =\n | [request: NextRequest, context: Context, params: { apiKey: string }]\n | [req: NextApiRequest, res: NextApiResponse<ManifestResponse>, params: { apiKey: string }]\n\nconst routeHandlerPattern = [P.instanceOf(Request), P.any, P.any] as const\nconst apiRoutePattern = [P.any, P.any, P.any] as const\n\nexport default async function handler(\n request: NextRequest,\n context: Context,\n { apiKey }: { apiKey: string },\n): Promise<NextResponse<ManifestResponse>>\nexport default async function handler(\n req: NextApiRequest,\n res: NextApiResponse<ManifestResponse>,\n { apiKey }: { apiKey: string },\n): Promise<void>\nexport default async function handler(\n ...args: ManifestHandlerArgs\n): Promise<NextResponse<ManifestResponse> | void> {\n const [, , { apiKey }] = args\n\n const secret = match(args)\n .with(routeHandlerPattern, ([request]) => request.nextUrl.searchParams.get('secret'))\n .with(apiRoutePattern, ([req]) => req.query.secret)\n .exhaustive()\n\n if (secret !== apiKey) {\n const status = 401\n const body = { message: 'Unauthorized' }\n\n return match(args)\n .with(routeHandlerPattern, () => NextResponse.json(body, { status }))\n .with(apiRoutePattern, ([, res]) => res.status(status).json(body))\n .exhaustive()\n }\n\n const supportsPreviewMode = match(args)\n .with(routeHandlerPattern, () => false)\n .with(apiRoutePattern, () => true)\n .exhaustive()\n\n const supportsDraftMode = match(args)\n .with(routeHandlerPattern, () => true)\n .with(apiRoutePattern, () => false)\n .exhaustive()\n\n const supportsWebhook = match(args)\n .with(routeHandlerPattern, () => true)\n .with(apiRoutePattern, () => false)\n .exhaustive()\n\n const body = {\n version: PACKAGE_VERSION,\n previewMode: supportsPreviewMode,\n draftMode: supportsDraftMode,\n interactionMode: true,\n clientSideNavigation: false,\n elementFromPoint: false,\n customBreakpoints: true,\n siteVersions: true,\n unstable_siteVersions: true,\n localizedPageSSR: true,\n webhook: supportsWebhook,\n localizedPagesOnlineByDefault: true,\n }\n\n return match(args)\n .with(routeHandlerPattern, () => NextResponse.json(body))\n .with(apiRoutePattern, ([, res]) => res.json(body))\n .exhaustive()\n}\n"],"mappings":"AACA,SAAsB,oBAAoB;AAC1C,SAAS,GAAG,aAAa;AA0BzB,MAAM,sBAAsB,CAAC,EAAE,WAAW,OAAO,GAAG,EAAE,KAAK,EAAE,GAAG;AAChE,MAAM,kBAAkB,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG;AAY5C,eAAO,WACF,MAC6C;AAChD,QAAM,CAAC,EAAE,EAAE,EAAE,OAAO,CAAC,IAAI;AAEzB,QAAM,SAAS,MAAM,IAAI,EACtB,KAAK,qBAAqB,CAAC,CAAC,OAAO,MAAM,QAAQ,QAAQ,aAAa,IAAI,QAAQ,CAAC,EACnF,KAAK,iBAAiB,CAAC,CAAC,GAAG,MAAM,IAAI,MAAM,MAAM,EACjD,WAAW;AAEd,MAAI,WAAW,QAAQ;AACrB,UAAM,SAAS;AACf,UAAMA,QAAO,EAAE,SAAS,eAAe;AAEvC,WAAO,MAAM,IAAI,EACd,KAAK,qBAAqB,MAAM,aAAa,KAAKA,OAAM,EAAE,OAAO,CAAC,CAAC,EACnE,KAAK,iBAAiB,CAAC,CAAC,EAAE,GAAG,MAAM,IAAI,OAAO,MAAM,EAAE,KAAKA,KAAI,CAAC,EAChE,WAAW;AAAA,EAChB;AAEA,QAAM,sBAAsB,MAAM,IAAI,EACnC,KAAK,qBAAqB,MAAM,KAAK,EACrC,KAAK,iBAAiB,MAAM,IAAI,EAChC,WAAW;AAEd,QAAM,oBAAoB,MAAM,IAAI,EACjC,KAAK,qBAAqB,MAAM,IAAI,EACpC,KAAK,iBAAiB,MAAM,KAAK,EACjC,WAAW;AAEd,QAAM,kBAAkB,MAAM,IAAI,EAC/B,KAAK,qBAAqB,MAAM,IAAI,EACpC,KAAK,iBAAiB,MAAM,KAAK,EACjC,WAAW;AAEd,QAAM,OAAO;AAAA,IACX,SAAS;AAAA,IACT,aAAa;AAAA,IACb,WAAW;AAAA,IACX,iBAAiB;AAAA,IACjB,sBAAsB;AAAA,IACtB,kBAAkB;AAAA,IAClB,mBAAmB;AAAA,IACnB,cAAc;AAAA,IACd,uBAAuB;AAAA,IACvB,kBAAkB;AAAA,IAClB,SAAS;AAAA,IACT,+BAA+B;AAAA,EACjC;AAEA,SAAO,MAAM,IAAI,EACd,KAAK,qBAAqB,MAAM,aAAa,KAAK,IAAI,CAAC,EACvD,KAAK,iBAAiB,CAAC,CAAC,EAAE,GAAG,MAAM,IAAI,KAAK,IAAI,CAAC,EACjD,WAAW;AAChB;","names":["body"]}
@@ -0,0 +1,63 @@
1
+ import { NextResponse } from "next/server";
2
+ import { P, match } from "ts-pattern";
3
+ import { cookies, draftMode } from "next/headers";
4
+ import { serialize as serializeCookie } from "cookie";
5
+ import { MakeswiftSiteVersion } from "../../../api/site-version";
6
+ import {
7
+ cookieSettingOptions,
8
+ MAKESWIFT_DRAFT_DATA_COOKIE,
9
+ PRERENDER_BYPASS_COOKIE,
10
+ SearchParams,
11
+ SET_COOKIE_HEADER
12
+ } from "./utils/draft";
13
+ const routeHandlerPattern = [P.instanceOf(Request), P.any, P.any];
14
+ const apiRoutePattern = [P.any, P.any, P.any];
15
+ async function redirectDraftHandler(...args) {
16
+ return match(args).with(routeHandlerPattern, (args2) => redirectDraftRouteHandler(...args2)).with(apiRoutePattern, (args2) => redirectDraftApiRouteHandler(...args2)).exhaustive();
17
+ }
18
+ async function redirectDraftRouteHandler(request, _context, { apiKey }) {
19
+ const secret = request.nextUrl.searchParams.get(SearchParams.DraftMode);
20
+ if (secret == null) {
21
+ return new NextResponse("Unauthorized to enable draft mode: no secret provided", {
22
+ status: 401
23
+ });
24
+ }
25
+ if (secret !== apiKey) {
26
+ return new NextResponse("Unauthorized to enable draft mode: incorrect secret", { status: 401 });
27
+ }
28
+ const draft = await draftMode();
29
+ const cookieStore = await cookies();
30
+ draft.enable();
31
+ const prerenderBypassCookie = cookieStore.get(PRERENDER_BYPASS_COOKIE);
32
+ if (prerenderBypassCookie?.value == null) {
33
+ return new NextResponse("Could not retrieve draft mode bypass cookie", { status: 500 });
34
+ }
35
+ const draftCookies = [
36
+ prerenderBypassCookie,
37
+ {
38
+ name: MAKESWIFT_DRAFT_DATA_COOKIE,
39
+ // Eventually, we can make this value dynamic using the request
40
+ value: JSON.stringify({ makeswift: true, siteVersion: MakeswiftSiteVersion.Working })
41
+ }
42
+ ];
43
+ const redirectProtocol = request.headers.get("x-forwarded-proto") ?? request.nextUrl.protocol.replace(":", "");
44
+ const redirectHost = request.headers.get("x-forwarded-host") ?? request.headers.get("host") ?? request.nextUrl.host;
45
+ const redirectUrl = new URL(
46
+ `${redirectProtocol}://${redirectHost}${request.nextUrl.pathname}${request.nextUrl.search}`
47
+ );
48
+ redirectUrl.searchParams.delete(SearchParams.DraftMode);
49
+ const headers = new Headers();
50
+ draftCookies.forEach(({ name, value }) => {
51
+ headers.append(SET_COOKIE_HEADER, serializeCookie(name, value, { ...cookieSettingOptions }));
52
+ });
53
+ return NextResponse.redirect(redirectUrl, { headers });
54
+ }
55
+ async function redirectDraftApiRouteHandler(_req, res, {}) {
56
+ const message = "Cannot request draft endpoint from an API handler registered in `pages`. Move your Makeswift API handler to the `app` directory";
57
+ console.error(message);
58
+ return res.status(500).send(message);
59
+ }
60
+ export {
61
+ redirectDraftHandler as default
62
+ };
63
+ //# sourceMappingURL=redirect-draft.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../src/next/api-handler/handlers/redirect-draft.ts"],"sourcesContent":["import { NextApiRequest, NextApiResponse } from 'next'\nimport { NextRequest, NextResponse } from 'next/server'\nimport { P, match } from 'ts-pattern'\nimport { cookies, draftMode } from 'next/headers'\n\nimport { serialize as serializeCookie } from 'cookie'\n\nimport { MakeswiftSiteVersion } from '../../../api/site-version'\nimport {\n cookieSettingOptions,\n MAKESWIFT_DRAFT_DATA_COOKIE,\n PRERENDER_BYPASS_COOKIE,\n SearchParams,\n SET_COOKIE_HEADER,\n} from './utils/draft'\n\ntype Context = { params: { [key: string]: string | string[] } }\n\ntype RedirectDraftError = string\n\ntype Response = unknown\n\nexport type RedirectDraftResponse = RedirectDraftError | Response\n\ntype RedirectDraftHandlerArgs =\n | [request: NextRequest, context: Context, params: { apiKey: string }]\n | [req: NextApiRequest, res: NextApiResponse<RedirectDraftResponse>, params: { apiKey: string }]\n\nconst routeHandlerPattern = [P.instanceOf(Request), P.any, P.any] as const\nconst apiRoutePattern = [P.any, P.any, P.any] as const\n\nexport default async function redirectDraftHandler(\n request: NextRequest,\n context: Context,\n { apiKey }: { apiKey: string },\n): Promise<NextResponse<RedirectDraftResponse>>\nexport default async function redirectDraftHandler(\n req: NextApiRequest,\n res: NextApiResponse<RedirectDraftResponse>,\n { apiKey }: { apiKey: string },\n): Promise<void>\nexport default async function redirectDraftHandler(\n ...args: RedirectDraftHandlerArgs\n): Promise<NextResponse<RedirectDraftResponse> | void> {\n return match(args)\n .with(routeHandlerPattern, args => redirectDraftRouteHandler(...args))\n .with(apiRoutePattern, args => redirectDraftApiRouteHandler(...args))\n .exhaustive()\n}\n\nasync function redirectDraftRouteHandler(\n request: NextRequest,\n _context: Context,\n { apiKey }: { apiKey: string },\n): Promise<NextResponse<RedirectDraftResponse>> {\n const secret = request.nextUrl.searchParams.get(SearchParams.DraftMode)\n\n if (secret == null) {\n return new NextResponse('Unauthorized to enable draft mode: no secret provided', {\n status: 401,\n })\n }\n if (secret !== apiKey) {\n return new NextResponse('Unauthorized to enable draft mode: incorrect secret', { status: 401 })\n }\n\n const draft = await draftMode()\n const cookieStore = await cookies()\n\n draft.enable()\n\n const prerenderBypassCookie = cookieStore.get(PRERENDER_BYPASS_COOKIE)\n\n if (prerenderBypassCookie?.value == null) {\n return new NextResponse('Could not retrieve draft mode bypass cookie', { status: 500 })\n }\n\n const draftCookies: { name: string; value: string }[] = [\n prerenderBypassCookie,\n {\n name: MAKESWIFT_DRAFT_DATA_COOKIE,\n // Eventually, we can make this value dynamic using the request\n value: JSON.stringify({ makeswift: true, siteVersion: MakeswiftSiteVersion.Working }),\n },\n ]\n\n const redirectProtocol =\n request.headers.get('x-forwarded-proto') ?? request.nextUrl.protocol.replace(':', '')\n\n const redirectHost =\n request.headers.get('x-forwarded-host') ?? request.headers.get('host') ?? request.nextUrl.host\n\n const redirectUrl = new URL(\n `${redirectProtocol}://${redirectHost}${request.nextUrl.pathname}${request.nextUrl.search}`,\n )\n\n redirectUrl.searchParams.delete(SearchParams.DraftMode)\n\n const headers = new Headers()\n draftCookies.forEach(({ name, value }) => {\n headers.append(SET_COOKIE_HEADER, serializeCookie(name, value, { ...cookieSettingOptions }))\n })\n\n return NextResponse.redirect(redirectUrl, { headers })\n}\n\nasync function redirectDraftApiRouteHandler(\n _req: NextApiRequest,\n res: NextApiResponse<RedirectDraftResponse>,\n {}: { apiKey: string },\n): Promise<void> {\n const message =\n 'Cannot request draft endpoint from an API handler registered in `pages`. Move your Makeswift API handler to the `app` directory'\n console.error(message)\n return res.status(500).send(message)\n}\n"],"mappings":"AACA,SAAsB,oBAAoB;AAC1C,SAAS,GAAG,aAAa;AACzB,SAAS,SAAS,iBAAiB;AAEnC,SAAS,aAAa,uBAAuB;AAE7C,SAAS,4BAA4B;AACrC;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACK;AAcP,MAAM,sBAAsB,CAAC,EAAE,WAAW,OAAO,GAAG,EAAE,KAAK,EAAE,GAAG;AAChE,MAAM,kBAAkB,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG;AAY5C,eAAO,wBACF,MACkD;AACrD,SAAO,MAAM,IAAI,EACd,KAAK,qBAAqB,CAAAA,UAAQ,0BAA0B,GAAGA,KAAI,CAAC,EACpE,KAAK,iBAAiB,CAAAA,UAAQ,6BAA6B,GAAGA,KAAI,CAAC,EACnE,WAAW;AAChB;AAEA,eAAe,0BACb,SACA,UACA,EAAE,OAAO,GACqC;AAC9C,QAAM,SAAS,QAAQ,QAAQ,aAAa,IAAI,aAAa,SAAS;AAEtE,MAAI,UAAU,MAAM;AAClB,WAAO,IAAI,aAAa,yDAAyD;AAAA,MAC/E,QAAQ;AAAA,IACV,CAAC;AAAA,EACH;AACA,MAAI,WAAW,QAAQ;AACrB,WAAO,IAAI,aAAa,uDAAuD,EAAE,QAAQ,IAAI,CAAC;AAAA,EAChG;AAEA,QAAM,QAAQ,MAAM,UAAU;AAC9B,QAAM,cAAc,MAAM,QAAQ;AAElC,QAAM,OAAO;AAEb,QAAM,wBAAwB,YAAY,IAAI,uBAAuB;AAErE,MAAI,uBAAuB,SAAS,MAAM;AACxC,WAAO,IAAI,aAAa,+CAA+C,EAAE,QAAQ,IAAI,CAAC;AAAA,EACxF;AAEA,QAAM,eAAkD;AAAA,IACtD;AAAA,IACA;AAAA,MACE,MAAM;AAAA;AAAA,MAEN,OAAO,KAAK,UAAU,EAAE,WAAW,MAAM,aAAa,qBAAqB,QAAQ,CAAC;AAAA,IACtF;AAAA,EACF;AAEA,QAAM,mBACJ,QAAQ,QAAQ,IAAI,mBAAmB,KAAK,QAAQ,QAAQ,SAAS,QAAQ,KAAK,EAAE;AAEtF,QAAM,eACJ,QAAQ,QAAQ,IAAI,kBAAkB,KAAK,QAAQ,QAAQ,IAAI,MAAM,KAAK,QAAQ,QAAQ;AAE5F,QAAM,cAAc,IAAI;AAAA,IACtB,GAAG,gBAAgB,MAAM,YAAY,GAAG,QAAQ,QAAQ,QAAQ,GAAG,QAAQ,QAAQ,MAAM;AAAA,EAC3F;AAEA,cAAY,aAAa,OAAO,aAAa,SAAS;AAEtD,QAAM,UAAU,IAAI,QAAQ;AAC5B,eAAa,QAAQ,CAAC,EAAE,MAAM,MAAM,MAAM;AACxC,YAAQ,OAAO,mBAAmB,gBAAgB,MAAM,OAAO,EAAE,GAAG,qBAAqB,CAAC,CAAC;AAAA,EAC7F,CAAC;AAED,SAAO,aAAa,SAAS,aAAa,EAAE,QAAQ,CAAC;AACvD;AAEA,eAAe,6BACb,MACA,KACA,CAAC,GACc;AACf,QAAM,UACJ;AACF,UAAQ,MAAM,OAAO;AACrB,SAAO,IAAI,OAAO,GAAG,EAAE,KAAK,OAAO;AACrC;","names":["args"]}