@aussieljk/forkbook 0.0.1-1 → 0.0.1-3

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 (366) hide show
  1. package/assets/addon-vitest/templates/vitest.config.4.template.ts +2 -2
  2. package/assets/browser/favicon-wrapper.svg +4 -4
  3. package/assets/browser/favicon.svg +1 -1
  4. package/assets/browser/inter-LICENSE.txt +92 -0
  5. package/assets/browser/inter-variable-italic.woff2 +0 -0
  6. package/assets/browser/inter-variable.woff2 +0 -0
  7. package/assets/browser/mirror-ball.png +0 -0
  8. package/assets/builder-vite/iframe.html +8 -24
  9. package/assets/create/rendererAssets/common/Configure.mdx +100 -100
  10. package/assets/create/rendererAssets/common/button.css +1 -1
  11. package/assets/create/rendererAssets/common/header.css +1 -1
  12. package/assets/create/rendererAssets/common/page.css +2 -2
  13. package/assets/server/base-preview-body.html +32 -32
  14. package/assets/server/base-preview-head.html +86 -86
  15. package/assets/server/template.ejs +11 -26
  16. package/dist/_browser-chunks/{Color-OEKZ7XSW.js → Color-PSH7RHPM.js} +5 -5
  17. package/dist/_browser-chunks/{WithTooltip-GZSSFOG3.js → WithTooltip-JLXUJSYD.js} +3 -3
  18. package/dist/_browser-chunks/{chunk-66OCZ54D.js → chunk-3HM3VWJS.js} +1 -1
  19. package/dist/_browser-chunks/{chunk-CFAOWGL7.js → chunk-3M5T7BW4.js} +1 -1
  20. package/dist/_browser-chunks/{chunk-2MEPHP35.js → chunk-4KIQBRD2.js} +1 -1
  21. package/dist/_browser-chunks/{chunk-OQWFVDIN.js → chunk-5H4KFI44.js} +1 -1
  22. package/dist/_browser-chunks/{chunk-C3D4HEFY.js → chunk-6SHRDXGF.js} +24 -24
  23. package/dist/_browser-chunks/{chunk-6SXYJQST.js → chunk-76222HQR.js} +1 -1
  24. package/dist/_browser-chunks/{chunk-JSBKXXXF.js → chunk-7DQREF4S.js} +1 -1
  25. package/dist/_browser-chunks/{chunk-RSPAQWVJ.js → chunk-BNP234B4.js} +1 -1
  26. package/dist/_browser-chunks/{chunk-73OX2G56.js → chunk-DCZTO4JJ.js} +68 -76
  27. package/dist/_browser-chunks/{chunk-PP4R7USA.js → chunk-DS2WQZGO.js} +222 -433
  28. package/dist/_browser-chunks/{chunk-FJGWSWL5.js → chunk-DYNTDJ3O.js} +3 -3
  29. package/dist/_browser-chunks/{chunk-VVWPND3J.js → chunk-EE42XVSP.js} +8 -8
  30. package/dist/_browser-chunks/{chunk-ODVJ3XZJ.js → chunk-GRO2ZYEJ.js} +2 -2
  31. package/dist/_browser-chunks/{chunk-LV5PIKV4.js → chunk-GU3X2J4S.js} +2 -2
  32. package/dist/_browser-chunks/{chunk-MDOL7KML.js → chunk-K2B36HKM.js} +1 -1
  33. package/dist/_browser-chunks/{chunk-CFWWCCZV.js → chunk-K6GRZSXS.js} +1 -1
  34. package/dist/_browser-chunks/{chunk-YTIT5NA5.js → chunk-KYSD26D6.js} +3 -3
  35. package/dist/_browser-chunks/{chunk-RNTIV5CE.js → chunk-LYYXDWR2.js} +9 -9
  36. package/dist/_browser-chunks/{chunk-V5M7Q4HT.js → chunk-MJIDTL3X.js} +4 -14
  37. package/dist/_browser-chunks/{chunk-OD6IBQCC.js → chunk-N3NRW5XX.js} +2 -2
  38. package/dist/_browser-chunks/{chunk-V2G23FV7.js → chunk-N5WQGLI7.js} +1 -1
  39. package/dist/_browser-chunks/{chunk-W5M6NPS3.js → chunk-NMRSYACM.js} +2 -2
  40. package/dist/_browser-chunks/{chunk-YEKO6BHJ.js → chunk-ONTSNQON.js} +1 -1
  41. package/dist/_browser-chunks/{chunk-PFRNG3UC.js → chunk-PPZ2HCWJ.js} +4 -4
  42. package/dist/_browser-chunks/{chunk-EIYAKDGP.js → chunk-SZCSXISG.js} +124 -104
  43. package/dist/_browser-chunks/{chunk-JMC7AIKT.js → chunk-UDQ3XQFC.js} +1 -1
  44. package/dist/_browser-chunks/{chunk-MFMDGWP6.js → chunk-ZLWA5RIE.js} +1 -1
  45. package/dist/_node-chunks/{attached-runtime-O4YTVUKE.js → attached-runtime-KZYKMMDD.js} +29 -29
  46. package/dist/_node-chunks/{builder-manager-FPV2L36T.js → builder-manager-337QQEZ6.js} +32 -32
  47. package/dist/_node-chunks/{chunk-BE6ULVPN.js → chunk-224FM5GP.js} +8 -8
  48. package/dist/_node-chunks/chunk-22OJYYPD.js +18 -0
  49. package/dist/_node-chunks/{chunk-JEC2OK5B.js → chunk-26MVQWHR.js} +7 -7
  50. package/dist/_node-chunks/{chunk-NIHZECYO.js → chunk-27HJO5MV.js} +6 -6
  51. package/dist/_node-chunks/{chunk-I2ANCID7.js → chunk-27KGUS37.js} +25 -25
  52. package/dist/_node-chunks/{chunk-IZISFDKM.js → chunk-2D7P5VUJ.js} +30 -30
  53. package/dist/_node-chunks/{chunk-KGOAOPKR.js → chunk-2OI3EZE2.js} +6 -6
  54. package/dist/_node-chunks/{chunk-7LLQDMVS.js → chunk-34YSGPI4.js} +6 -6
  55. package/dist/_node-chunks/{chunk-4TV3Z3S3.js → chunk-4RSOZZZV.js} +6 -6
  56. package/dist/_node-chunks/{chunk-VQEQ7ZLS.js → chunk-4ZGNL77M.js} +7 -7
  57. package/dist/_node-chunks/{chunk-7TSL7D5D.js → chunk-4ZHC3GG3.js} +6 -6
  58. package/dist/_node-chunks/{chunk-CDRLLNRQ.js → chunk-6RQIIUDQ.js} +9 -9
  59. package/dist/_node-chunks/{chunk-6APBQVEX.js → chunk-7QGX7Z6B.js} +7 -7
  60. package/dist/_node-chunks/{chunk-IJL5JOLL.js → chunk-7VZYI3NI.js} +7 -7
  61. package/dist/_node-chunks/{chunk-2XDUXZGI.js → chunk-A6EXJJZU.js} +8 -8
  62. package/dist/_node-chunks/{chunk-HKQEE62W.js → chunk-AJ3YH5VH.js} +8 -8
  63. package/dist/_node-chunks/{chunk-RHG33T7C.js → chunk-AKBNFQKK.js} +8 -8
  64. package/dist/_node-chunks/{chunk-CWD5A6NI.js → chunk-AKF2FB7S.js} +7 -7
  65. package/dist/_node-chunks/{chunk-RJXEPYEN.js → chunk-ANOZDFMW.js} +13 -13
  66. package/dist/_node-chunks/{chunk-YWMICX2T.js → chunk-APM5SEWT.js} +12 -12
  67. package/dist/_node-chunks/{chunk-R7CY5LX6.js → chunk-AQSROIPB.js} +6 -6
  68. package/dist/_node-chunks/{chunk-MDKFZRYG.js → chunk-CC4WWASR.js} +8 -8
  69. package/dist/_node-chunks/{chunk-JE6JEGXA.js → chunk-CE66ARL5.js} +9 -9
  70. package/dist/_node-chunks/{chunk-GP5YLBNS.js → chunk-CHOJKLHP.js} +8 -8
  71. package/dist/_node-chunks/{chunk-5BTU7UZ5.js → chunk-COJPWKDE.js} +7 -7
  72. package/dist/_node-chunks/{chunk-GT5EHMNM.js → chunk-CVQGQ2MI.js} +7 -7
  73. package/dist/_node-chunks/{chunk-NKAUZU4C.js → chunk-CYPEPQSM.js} +6 -6
  74. package/dist/_node-chunks/{chunk-Y2GH4XO7.js → chunk-D44WSSIU.js} +7 -7
  75. package/dist/_node-chunks/{chunk-RQVK2TOI.js → chunk-DG3DK4ZH.js} +10 -10
  76. package/dist/_node-chunks/{chunk-QVMUIU7S.js → chunk-DI76R3EI.js} +6 -6
  77. package/dist/_node-chunks/{chunk-ILWHW4HU.js → chunk-DSHYY7ZB.js} +14 -14
  78. package/dist/_node-chunks/{chunk-JVQYQTTM.js → chunk-EJ6XL2KN.js} +19 -40
  79. package/dist/_node-chunks/{chunk-AWJOXJAZ.js → chunk-EM3MZKXS.js} +7 -7
  80. package/dist/_node-chunks/{chunk-U4GKV7GZ.js → chunk-EYKTEH7V.js} +10 -10
  81. package/dist/_node-chunks/{chunk-5J3O7EDY.js → chunk-GTM64XRQ.js} +6 -6
  82. package/dist/_node-chunks/{chunk-4PK3LUHM.js → chunk-GURMTBQH.js} +7 -7
  83. package/dist/_node-chunks/{chunk-MJ2UD7FU.js → chunk-HC2QE2VI.js} +6 -6
  84. package/dist/_node-chunks/{chunk-TB6Y6NSL.js → chunk-HG3U5FMZ.js} +8 -8
  85. package/dist/_node-chunks/{chunk-FUYZNTIS.js → chunk-HLT3PHJN.js} +6 -6
  86. package/dist/_node-chunks/{chunk-PBMWZVLD.js → chunk-HNCTPOQK.js} +6 -6
  87. package/dist/_node-chunks/{chunk-ICADUNQM.js → chunk-HOROZKYE.js} +6 -6
  88. package/dist/_node-chunks/{chunk-ULW4SLMN.js → chunk-HS3YKDIQ.js} +10 -10
  89. package/dist/_node-chunks/{chunk-RJUHZH32.js → chunk-I7BJLOF5.js} +6 -6
  90. package/dist/_node-chunks/{chunk-VXDWOVWD.js → chunk-IGAYUOMN.js} +10 -10
  91. package/dist/_node-chunks/{chunk-ILVD64RB.js → chunk-J4WM6PLB.js} +8 -8
  92. package/dist/_node-chunks/{chunk-G6PUNHCI.js → chunk-JD5NDU6F.js} +6 -6
  93. package/dist/_node-chunks/{chunk-356LV3NX.js → chunk-JQDKICKC.js} +6 -6
  94. package/dist/_node-chunks/{chunk-AWXGCPW6.js → chunk-KGJPHNM7.js} +6 -6
  95. package/dist/_node-chunks/{chunk-A724RK5H.js → chunk-KSOJ65P3.js} +6 -6
  96. package/dist/_node-chunks/{chunk-3CLITGI2.js → chunk-LEUTSNSA.js} +6 -6
  97. package/dist/_node-chunks/{chunk-R5FYRP6X.js → chunk-LJ5HNC36.js} +7 -7
  98. package/dist/_node-chunks/{chunk-ASJFOW6O.js → chunk-LMMUUQFW.js} +8 -8
  99. package/dist/_node-chunks/{chunk-SVZ6Q3CS.js → chunk-LNOZLCJT.js} +6 -6
  100. package/dist/_node-chunks/{chunk-ZMEGPR47.js → chunk-MCPP73WS.js} +6 -6
  101. package/dist/_node-chunks/{chunk-5WHA37KG.js → chunk-MMMIVLRV.js} +37 -37
  102. package/dist/_node-chunks/{chunk-CSXS6LVI.js → chunk-MY7DHPSK.js} +6 -6
  103. package/dist/_node-chunks/chunk-MZ4CONV4.js +20 -0
  104. package/dist/_node-chunks/{chunk-HKUNJELN.js → chunk-N4DKR3HN.js} +8 -8
  105. package/dist/_node-chunks/{chunk-XURIZ7IC.js → chunk-NF3GSBMC.js} +8 -8
  106. package/dist/_node-chunks/{chunk-QMU5ODXZ.js → chunk-OA6BPTG5.js} +7 -7
  107. package/dist/_node-chunks/{chunk-2BJIHWOK.js → chunk-OGQBLJGR.js} +6 -6
  108. package/dist/_node-chunks/{chunk-DWE36J35.js → chunk-OMFATFOJ.js} +7 -7
  109. package/dist/_node-chunks/{chunk-AANHLH5M.js → chunk-OSE2FYQP.js} +6 -6
  110. package/dist/_node-chunks/{chunk-X6OWHTYE.js → chunk-PRXD2EYH.js} +6 -6
  111. package/dist/_node-chunks/{chunk-5J3BMBMY.js → chunk-PT7NX73C.js} +6 -6
  112. package/dist/_node-chunks/{chunk-URRTQ2QM.js → chunk-QDZFSC26.js} +6 -6
  113. package/dist/_node-chunks/{chunk-GVSFRNWZ.js → chunk-QTRP6K2A.js} +6 -6
  114. package/dist/_node-chunks/{chunk-PEIAGMSR.js → chunk-R2ZIMVYL.js} +6 -6
  115. package/dist/_node-chunks/{chunk-2UG3IYCC.js → chunk-RGAJGDCU.js} +6 -6
  116. package/dist/_node-chunks/{chunk-JBCKN6P4.js → chunk-RKUAUXH6.js} +6 -6
  117. package/dist/_node-chunks/{chunk-ZBAIFZNB.js → chunk-RNZL535Q.js} +13 -13
  118. package/dist/_node-chunks/{chunk-5GN5N22E.js → chunk-S73KB2DE.js} +24 -24
  119. package/dist/_node-chunks/{chunk-CYPPELO4.js → chunk-SFPEJYWG.js} +22 -32
  120. package/dist/_node-chunks/{chunk-Y2DEKWVE.js → chunk-SPN2VCN7.js} +8 -8
  121. package/dist/_node-chunks/{chunk-2QTI45JU.js → chunk-SVRE646L.js} +35 -35
  122. package/dist/_node-chunks/{chunk-US7L4S72.js → chunk-T5D7JJMY.js} +9 -9
  123. package/dist/_node-chunks/{chunk-M2BRIUUP.js → chunk-TM4SF5U2.js} +7 -7
  124. package/dist/_node-chunks/{chunk-XJSYJTBD.js → chunk-TVYJB2XE.js} +7 -7
  125. package/dist/_node-chunks/{chunk-5RNOGGO6.js → chunk-TY2RQWQ7.js} +6 -6
  126. package/dist/_node-chunks/{chunk-NZ3GOT7V.js → chunk-TZKXP2KS.js} +6 -6
  127. package/dist/_node-chunks/{chunk-WQ7PSP6H.js → chunk-U2C4SK3A.js} +6 -6
  128. package/dist/_node-chunks/{chunk-XCGMRAV5.js → chunk-U3ZISTY3.js} +7 -7
  129. package/dist/_node-chunks/{chunk-7DCDBICW.js → chunk-U736OTI6.js} +13 -13
  130. package/dist/_node-chunks/chunk-U7MSJ3A6.js +11 -0
  131. package/dist/_node-chunks/{chunk-G5OYQQDY.js → chunk-URBTH3SB.js} +6 -6
  132. package/dist/_node-chunks/{chunk-SRXCCL2O.js → chunk-US5P4ZWN.js} +7 -7
  133. package/dist/_node-chunks/{chunk-CXLL2F6O.js → chunk-UWLMMCBV.js} +8 -8
  134. package/dist/_node-chunks/{chunk-B6SKX4JF.js → chunk-V3WMH7C4.js} +7 -7
  135. package/dist/_node-chunks/{chunk-EWXASIWR.js → chunk-W6ZSSLD7.js} +7 -7
  136. package/dist/_node-chunks/{chunk-2JSABFAM.js → chunk-WALLDPES.js} +10 -10
  137. package/dist/_node-chunks/{chunk-7BVUZZIY.js → chunk-WEQUS77K.js} +7 -7
  138. package/dist/_node-chunks/{chunk-GSWBRZLU.js → chunk-WK5562IZ.js} +8 -8
  139. package/dist/_node-chunks/{chunk-BENYUF74.js → chunk-XPSQ3CGZ.js} +38 -42
  140. package/dist/_node-chunks/{chunk-XTTAS346.js → chunk-YM5GSNOW.js} +6 -6
  141. package/dist/_node-chunks/{chunk-6EJ5NPEM.js → chunk-ZZJRM4VQ.js} +7 -7
  142. package/dist/_node-chunks/dist-PLKLDZ2U.js +16 -0
  143. package/dist/_node-chunks/{globby-HWZL7XSQ.js → globby-7JAOKACZ.js} +10 -10
  144. package/dist/_node-chunks/{jiti-GNDCTFYU.js → jiti-NTDVBCL3.js} +7 -7
  145. package/dist/_node-chunks/{lib-DI662U2R.js → lib-GO6OUNCW.js} +7 -7
  146. package/dist/_node-chunks/{local-runtime-4UNT5EZJ.js → local-runtime-75CNASLU.js} +20 -20
  147. package/dist/_node-chunks/{mdx-plugin-ZY6XLLA4.js → mdx-plugin-CC54EOSI.js} +14 -14
  148. package/dist/_node-chunks/{monorepo-B65J4UFS.js → monorepo-YQLAQDZJ.js} +12 -12
  149. package/dist/_node-chunks/{monorepo-optimized-tests-relaxed-limits-no-story-deletion-45ZTNWJS.js → monorepo-optimized-tests-relaxed-limits-no-story-deletion-SNHO4JTH.js} +12 -12
  150. package/dist/_node-chunks/optimized-tests-L75JY37J.js +22 -0
  151. package/dist/_node-chunks/{pattern-copy-play-LOHSM7ID.js → pattern-copy-play-IMDJHSAD.js} +10 -10
  152. package/dist/_node-chunks/postinstallAddon-PSVXEIZJ.js +20 -0
  153. package/dist/_node-chunks/{rehype-external-links-22ZBI6K4.js → rehype-external-links-EZO7JZTZ.js} +9 -9
  154. package/dist/_node-chunks/{rehype-slug-ROZVEEFZ.js → rehype-slug-MECGIEGM.js} +9 -9
  155. package/dist/_node-chunks/{relaxed-limits-EDE2B34G.js → relaxed-limits-4UOQIT3N.js} +12 -12
  156. package/dist/_node-chunks/{run-IR3BRDJV.js → run-3YFS3YCP.js} +17 -17
  157. package/dist/_node-chunks/{run-372BSBV5.js → run-LTXOQNKP.js} +13 -13
  158. package/dist/_node-chunks/session-id-PEDFG544.js +23 -0
  159. package/dist/_node-chunks/{setup-6TMCKUTA.js → setup-2CNFOQBB.js} +9 -9
  160. package/dist/_node-chunks/{vitest.config.4.template-QJBEVCKG.js → vitest.config.4.template-MAPM7IJT.js} +9 -9
  161. package/dist/actions/decorator.js +2 -2
  162. package/dist/actions/index.d.ts +1 -1
  163. package/dist/actions/index.js +2 -2
  164. package/dist/addon-a11y/index.d.ts +3 -3
  165. package/dist/addon-a11y/index.js +1 -1
  166. package/dist/addon-a11y/manager.js +18 -18
  167. package/dist/addon-a11y/preset.js +7 -7
  168. package/dist/addon-a11y/preview.js +1 -1
  169. package/dist/addon-docs/blocks.js +46 -46
  170. package/dist/addon-docs/index.d.ts +19 -19
  171. package/dist/addon-docs/manager.js +5 -5
  172. package/dist/addon-docs/preset.js +10 -10
  173. package/dist/addon-links/preview.d.ts +1 -1
  174. package/dist/addon-mcp/preset.js +27 -19
  175. package/dist/addon-mcp/tools/preview-stories/preview-stories-app-script.js +13 -34
  176. package/dist/addon-ondevice-controls/index.js +1 -1
  177. package/dist/addon-ondevice-controls/register.js +1 -1
  178. package/dist/addon-pseudo-states/index.d.ts +1 -1
  179. package/dist/addon-pseudo-states/preview.d.ts +1 -1
  180. package/dist/addon-themes/index.d.ts +1 -1
  181. package/dist/addon-themes/index.js +2 -2
  182. package/dist/addon-themes/manager.js +1 -1
  183. package/dist/addon-themes/postinstall.js +7 -7
  184. package/dist/addon-themes/preview.js +2 -2
  185. package/dist/addon-vitest/constants.js +8 -8
  186. package/dist/addon-vitest/manager.js +12 -12
  187. package/dist/addon-vitest/node/coverage-reporter.js +8 -8
  188. package/dist/addon-vitest/node/vitest.js +17 -17
  189. package/dist/addon-vitest/postinstall.js +10 -10
  190. package/dist/addon-vitest/preset.js +14 -14
  191. package/dist/addon-vitest/vitest-plugin/global-setup.js +8 -8
  192. package/dist/addon-vitest/vitest-plugin/index.js +17 -17
  193. package/dist/addon-vitest/vitest-plugin/setup-file-with-project-annotations.js +3 -3
  194. package/dist/addon-vitest/vitest-plugin/setup-file.js +1 -1
  195. package/dist/babel/index.js +12 -12
  196. package/dist/backgrounds/index.d.ts +1 -1
  197. package/dist/bin/core.js +59 -59
  198. package/dist/bin/dispatcher.js +10 -10
  199. package/dist/bin/loader.js +9 -9
  200. package/dist/builder-vite/index.js +17 -17
  201. package/dist/builder-vite/preset.js +13 -13
  202. package/dist/channels/index.js +6 -6
  203. package/dist/{chunk-Dw1z1Pki.d.ts → chunk-B2xylxt5.d.ts} +43 -43
  204. package/dist/{chunk-C-bavsOH.d.ts → chunk-BWzbIWPz.d.ts} +1 -1
  205. package/dist/{chunk-CwQKNaYL.d.ts → chunk-BYnH2sbb.d.ts} +1 -1
  206. package/dist/{chunk-CMeX4WRe.d.ts → chunk-CT2iXaHz.d.ts} +1 -1
  207. package/dist/{chunk-DzuY9DXg.d.ts → chunk-DDd8BhTY.d.ts} +2 -2
  208. package/dist/{chunk-BTVrWliM.d.ts → chunk-DF6btpT3.d.ts} +1 -1
  209. package/dist/{chunk-C2p5r3Vt.d.ts → chunk-DIz17UEJ.d.ts} +20 -20
  210. package/dist/{chunk-gCX81nOr.d.ts → chunk-DgzPaTw9.d.ts} +3 -3
  211. package/dist/{chunk-Kt1tW-D1.d.ts → chunk-Dm-iHJ-s.d.ts} +3 -3
  212. package/dist/{chunk-DtHByo32.d.ts → chunk-DuDsmeM7.d.ts} +1 -1
  213. package/dist/{chunk-DEVFdzxR.d.ts → chunk-DvufcbCc.d.ts} +1 -1
  214. package/dist/cli/index.d.ts +1 -1
  215. package/dist/cli/index.js +26 -26
  216. package/dist/cli/tools/sdk/child-host.d.ts +1 -1
  217. package/dist/cli/tools/sdk/child-host.js +17 -17
  218. package/dist/cli/tools/sdk/index.d.ts +1 -1
  219. package/dist/cli/tools/sdk/index.js +18 -18
  220. package/dist/cli-commands/bin/index.js +7 -7
  221. package/dist/common/index.d.ts +2 -2
  222. package/dist/common/index.js +37 -37
  223. package/dist/components/index.d.ts +8 -7
  224. package/dist/components/index.js +223 -228
  225. package/dist/core-events/index.d.ts +1 -1
  226. package/dist/core-server/index.d.ts +2 -2
  227. package/dist/core-server/index.js +77 -77
  228. package/dist/core-server/presets/common-manager.js +49 -49
  229. package/dist/core-server/presets/common-override-preset.js +9 -9
  230. package/dist/core-server/presets/common-preset.js +44 -44
  231. package/dist/create/bin/index.js +7 -7
  232. package/dist/create/index.js +15 -15
  233. package/dist/csf/index.d.ts +5 -5
  234. package/dist/csf/index.js +29 -29
  235. package/dist/csf-tools/index.js +13 -13
  236. package/dist/docs-tools/index.js +2 -2
  237. package/dist/highlight/index.d.ts +1 -1
  238. package/dist/instrumenter/index.js +5 -5
  239. package/dist/manager/_manager-chunks/{globals-runtime-B0I9dSVs.js → globals-runtime-C9lYPobZ.js} +408 -429
  240. package/dist/manager/_manager-chunks/{globals-runtime-f5oIrim0.js → globals-runtime-CejY7Ueo.js} +125 -133
  241. package/dist/manager/_manager-chunks/{globals-runtime-CXoVXiJA.js → globals-runtime-DGHmnlvz.js} +38 -62
  242. package/dist/manager/_manager-chunks/{globals-runtime-BQCkfH1B.js → globals-runtime-DH1Y5Kk_.js} +1 -1
  243. package/dist/manager/_manager-chunks/{runtime-eDVAYF7N.js → runtime-50_aob4S.js} +2 -2
  244. package/dist/manager/_manager-chunks/runtime-89Cb0A8U.js +998 -0
  245. package/dist/manager/_manager-chunks/{runtime-DtyerpFe.js → runtime-B6gJfDvO.js} +58 -58
  246. package/dist/manager/_manager-chunks/{runtime-D94Vq3oR.js → runtime-B9QzcYO3.js} +3 -3
  247. package/dist/manager/_manager-chunks/{runtime-i-PDAHLR.js → runtime-BGvLm94o.js} +3 -3
  248. package/dist/manager/_manager-chunks/{runtime-Bry1Biu7.js → runtime-BzYARKgi.js} +427 -425
  249. package/dist/manager/_manager-chunks/{runtime-DpgBAFGf.js → runtime-CaVSkVCV.js} +1 -1
  250. package/dist/manager/_manager-chunks/{runtime-DcJBhKG9.js → runtime-CcCplmkX.js} +17 -27
  251. package/dist/manager/_manager-chunks/{runtime-B1L9TH89.js → runtime-wL4UO7YO.js} +12 -12
  252. package/dist/manager/globals-runtime.js +1 -1
  253. package/dist/manager/globals.d.ts +12 -12
  254. package/dist/manager/globals.js +12 -12
  255. package/dist/manager/runtime.js +1 -1
  256. package/dist/manager-api/index.d.ts +1 -1
  257. package/dist/manager-api/index.js +18 -47
  258. package/dist/manager-errors.d.ts +1 -1
  259. package/dist/manager-errors.js +2 -2
  260. package/dist/mcp/index.js +8 -8
  261. package/dist/mocking-utils/index.d.ts +2 -2
  262. package/dist/mocking-utils/index.js +15 -15
  263. package/dist/mocking-utils/mocker-runtime.js +2 -2
  264. package/dist/nextjs-vite/index.d.ts +1 -1
  265. package/dist/nextjs-vite/index.js +3 -3
  266. package/dist/nextjs-vite/node/index.d.ts +1 -1
  267. package/dist/nextjs-vite/node/index.js +7 -7
  268. package/dist/nextjs-vite/preset.js +11 -11
  269. package/dist/nextjs-vite/preview.js +1 -1
  270. package/dist/nextjs-vite/vite-plugin/index.js +7 -7
  271. package/dist/nextjs-vite-plugin/index.d.ts +1 -1
  272. package/dist/nextjs-vite-plugin/index.js +11 -11
  273. package/dist/nextjs-vite-plugin/mocks/storybook.global.js +8 -8
  274. package/dist/nextjs-vite-plugin/plugins/next-image/alias/next-image.js +2 -2
  275. package/dist/nextjs-vite-plugin/plugins/next-image/alias/next-legacy-image.js +2 -2
  276. package/dist/node-logger/index.js +9 -9
  277. package/dist/oxc-parser/index.js +10 -10
  278. package/dist/oxc-parser/worker.js +10 -10
  279. package/dist/preview/_chunks/{runtime-CxZK_Ln3.js → runtime-B3y8ocOg.js} +2 -2
  280. package/dist/preview/_chunks/{runtime-CsV4HZPV.js → runtime-BoxmlDdB.js} +66 -66
  281. package/dist/preview/_chunks/{runtime-BwSxqk3t.js → runtime-BsMjBzuq.js} +6 -16
  282. package/dist/preview/_chunks/{runtime-iXdo8CR8.js → runtime-CijtAN7R.js} +4 -4
  283. package/dist/preview/_chunks/{runtime-DuHdxMFA.js → runtime-D7B4bVe_.js} +3 -3
  284. package/dist/preview/_chunks/{runtime-DrTjJkPY.js → runtime-DVM_AHbR.js} +36 -36
  285. package/dist/preview/globals.d.ts +10 -10
  286. package/dist/preview/globals.js +10 -10
  287. package/dist/preview/runtime.js +1 -1
  288. package/dist/preview-api/index.d.ts +1 -1
  289. package/dist/preview-api/index.js +9 -9
  290. package/dist/preview-errors.d.ts +1 -1
  291. package/dist/preview-errors.js +2 -2
  292. package/dist/react/docgen/docgen-worker.js +12 -12
  293. package/dist/react/entry-preview.js +1 -1
  294. package/dist/react/index.d.ts +4 -4
  295. package/dist/react/index.js +3 -3
  296. package/dist/react/preset.js +14 -14
  297. package/dist/react/preview.d.ts +1 -1
  298. package/dist/react/preview.js +2 -2
  299. package/dist/react-native/bin/get-stories.js +8 -8
  300. package/dist/react-native/index.d.ts +6 -6
  301. package/dist/react-native/index.js +21 -20
  302. package/dist/react-native/metro/node.d.ts +2 -2
  303. package/dist/react-native/metro/node.js +9 -9
  304. package/dist/react-native/metro/withStorybook.d.ts +2 -2
  305. package/dist/react-native/metro/withStorybook.js +16 -16
  306. package/dist/react-native/scripts/generate.js +8 -8
  307. package/dist/react-native-theming/index.js +57 -62
  308. package/dist/react-native-ui/index.js +207 -624
  309. package/dist/react-vite/index.d.ts +1 -1
  310. package/dist/react-vite/node/index.d.ts +1 -1
  311. package/dist/react-vite/node/index.js +7 -7
  312. package/dist/react-vite/preset.js +7 -7
  313. package/dist/router/index.js +1 -1
  314. package/dist/server-errors.d.ts +1 -1
  315. package/dist/server-errors.js +9 -9
  316. package/dist/shared/open-service/index.d.ts +1 -1
  317. package/dist/shared/open-service/index.js +2 -2
  318. package/dist/shared/open-service/services/docgen/worker/docgen-worker.js +9 -9
  319. package/dist/shared/open-service/toolsets/docs/public.d.ts +21 -21
  320. package/dist/telemetry/index.js +45 -45
  321. package/dist/test/index.js +2 -2
  322. package/dist/theming/create.js +1 -1
  323. package/dist/theming/index.d.ts +5 -5
  324. package/dist/theming/index.js +16 -16
  325. package/dist/types/index.d.ts +1 -1
  326. package/dist/types/index.js +5 -5
  327. package/dist/viewport/index.d.ts +1 -1
  328. package/package.json +10 -31
  329. package/template/nextjs-vite/cli/js/Button.stories.js +6 -6
  330. package/template/nextjs-vite/cli/js/Configure.mdx +100 -100
  331. package/template/nextjs-vite/cli/js/Header.stories.js +2 -2
  332. package/template/nextjs-vite/cli/js/Page.jsx +2 -2
  333. package/template/nextjs-vite/cli/js/Page.stories.js +2 -2
  334. package/template/nextjs-vite/cli/ts/Button.stories.ts +6 -6
  335. package/template/nextjs-vite/cli/ts/Configure.mdx +84 -84
  336. package/template/nextjs-vite/cli/ts/Header.stories.ts +2 -2
  337. package/template/nextjs-vite/cli/ts/Page.stories.ts +2 -2
  338. package/template/nextjs-vite/cli/ts/Page.tsx +2 -2
  339. package/template/react/cli/js/Button.stories.js +6 -6
  340. package/template/react/cli/js/Header.stories.js +2 -2
  341. package/template/react/cli/js/Page.jsx +2 -2
  342. package/template/react/cli/js/Page.stories.js +2 -2
  343. package/template/react/cli/ts/Button.stories.ts +6 -6
  344. package/template/react/cli/ts/Header.stories.ts +2 -2
  345. package/template/react/cli/ts/Page.stories.ts +2 -2
  346. package/template/react/cli/ts/Page.tsx +2 -2
  347. package/template/react-vite/cli/js/Button.stories.js +6 -6
  348. package/template/react-vite/cli/js/Header.stories.js +2 -2
  349. package/template/react-vite/cli/js/Page.jsx +2 -2
  350. package/template/react-vite/cli/js/Page.stories.js +2 -2
  351. package/template/react-vite/cli/ts/Button.stories.ts +6 -6
  352. package/template/react-vite/cli/ts/Header.stories.ts +2 -2
  353. package/template/react-vite/cli/ts/Page.stories.ts +2 -2
  354. package/template/react-vite/cli/ts/Page.tsx +2 -2
  355. package/assets/browser/nunito-sans-bold-italic.woff2 +0 -0
  356. package/assets/browser/nunito-sans-bold.woff2 +0 -0
  357. package/assets/browser/nunito-sans-italic.woff2 +0 -0
  358. package/assets/browser/nunito-sans-regular.woff2 +0 -0
  359. package/dist/_node-chunks/chunk-BCRWDMAU.js +0 -11
  360. package/dist/_node-chunks/chunk-DUOXRUVQ.js +0 -18
  361. package/dist/_node-chunks/chunk-WVCU34IS.js +0 -23
  362. package/dist/_node-chunks/dist-ZGSN23B7.js +0 -16
  363. package/dist/_node-chunks/optimized-tests-ZMNICF4R.js +0 -22
  364. package/dist/_node-chunks/postinstallAddon-NT5XE7IT.js +0 -20
  365. package/dist/_node-chunks/session-id-OO2WQF5N.js +0 -23
  366. package/dist/manager/_manager-chunks/runtime-Bly6WJLN.js +0 -998
@@ -9,7 +9,7 @@ import {
9
9
  import { addons, types } from "@aussieljk/forkbook/manager-api";
10
10
 
11
11
  // src/addon-ondevice-controls/ControlsPanel.tsx
12
- import React3, { useCallback as useCallback7, useState as useState11 } from "react";
12
+ import React2, { useCallback as useCallback6, useState as useState10 } from "react";
13
13
 
14
14
  // src/addon-ondevice-controls/NoControlsWarning.tsx
15
15
  import { styled } from "@aussieljk/forkbook/internal/react-native-theming";
@@ -23,45 +23,27 @@ var Paragraph = styled.Text(({ theme }) => ({
23
23
  textDecorationLine: "underline"
24
24
  })), NoControlsWarning = () => jsxs(View, { style: { padding: 10 }, children: [
25
25
  jsx(Paragraph, { children: "This story is not configured to handle controls." }),
26
- jsxs(Paragraph, { children: [
27
- jsx(
28
- LinkText,
29
- {
30
- onPress: () => Linking.openURL("https://storybook.js.org/docs/react/essentials/controls"),
31
- children: "Learn how to add controls"
32
- }
33
- ),
34
- " ",
35
- "and see",
36
- " ",
37
- jsx(
38
- LinkText,
39
- {
40
- onPress: () => Linking.openURL(
41
- "https://github.com/storybookjs/react-native/tree/next-6.0/examples/expo-example/components/ControlExamples"
42
- ),
43
- children: "examples in the Storybook React Native repository."
44
- }
45
- )
46
- ] })
26
+ jsx(Paragraph, { children: jsx(
27
+ LinkText,
28
+ {
29
+ onPress: () => Linking.openURL("https://forkbook.ljk.dev/docs/react/essentials/controls"),
30
+ children: "Learn how to add controls."
31
+ }
32
+ ) })
47
33
  ] }), NoControlsWarning_default = NoControlsWarning;
48
34
 
49
35
  // src/addon-ondevice-controls/PropForm.tsx
50
- import { styled as styled10 } from "@aussieljk/forkbook/internal/react-native-theming";
36
+ import { styled as styled9 } from "@aussieljk/forkbook/internal/react-native-theming";
51
37
 
52
38
  // src/addon-ondevice-controls/PropField.tsx
53
- import { styled as styled9 } from "@aussieljk/forkbook/internal/react-native-theming";
39
+ import { styled as styled8 } from "@aussieljk/forkbook/internal/react-native-theming";
54
40
 
55
41
  // src/addon-ondevice-controls/types/Text.tsx
56
42
  import { useState as useState2 } from "react";
57
43
 
58
44
  // src/addon-ondevice-controls/types/common.tsx
59
45
  import { styled as styled2 } from "@aussieljk/forkbook/internal/react-native-theming";
60
- import { useLayout } from "@aussieljk/forkbook/internal/react-native-ui-common";
61
- import { forwardRef } from "react";
62
46
  import { Platform, TextInput } from "react-native";
63
- import { BottomSheetTextInput, useBottomSheetInternal } from "@gorhom/bottom-sheet";
64
- import { jsx as jsx2 } from "react/jsx-runtime";
65
47
  function inputStyle({
66
48
  theme,
67
49
  focused = !1,
@@ -95,17 +77,7 @@ function inputStyle({
95
77
  margin: 0
96
78
  };
97
79
  }
98
- var IsNative = Platform.OS === "ios" || Platform.OS === "android", TextInputWithSwitcher = forwardRef(
99
- (props, ref) => {
100
- let { isMobile } = useLayout(), isBottomSheet = useBottomSheetInternal(!0) !== null;
101
- return isMobile && IsNative && isBottomSheet ? (
102
- // @ts-ignore
103
- jsx2(BottomSheetTextInput, { ref, ...props })
104
- ) : jsx2(TextInput, { ref, ...props });
105
- }
106
- );
107
- TextInputWithSwitcher.displayName = "TextInputWithSwitcher";
108
- var Input = styled2(TextInputWithSwitcher)(({ theme, focused, hasError }) => ({
80
+ var Input = styled2(TextInput)(({ theme, focused, hasError }) => ({
109
81
  ...inputStyle({ theme, focused, hasError })
110
82
  }));
111
83
 
@@ -119,10 +91,10 @@ function useResyncValue(value, isPristine, resyncCallback) {
119
91
  }
120
92
 
121
93
  // src/addon-ondevice-controls/types/Text.tsx
122
- import { jsx as jsx3 } from "react/jsx-runtime";
94
+ import { jsx as jsx2 } from "react/jsx-runtime";
123
95
  var TextType = ({ arg, onChange, isPristine }) => {
124
96
  let { setCurrentValue, key } = useResyncValue(arg.value, isPristine), [focused, setFocused] = useState2(!1);
125
- return jsx3(
97
+ return jsx2(
126
98
  Input,
127
99
  {
128
100
  testID: arg.name,
@@ -141,208 +113,47 @@ var TextType = ({ arg, onChange, isPristine }) => {
141
113
  }, Text_default = TextType;
142
114
 
143
115
  // src/addon-ondevice-controls/types/Number.tsx
144
- import { styled as styled4 } from "@aussieljk/forkbook/internal/react-native-theming";
145
- import { useCallback as useCallback2, useState as useState4 } from "react";
146
- import { View as View3 } from "react-native";
147
-
148
- // src/addon-ondevice-controls/components/Slider.tsx
149
- import { useCallback, useEffect as useEffect2, useMemo, useRef, useState as useState3 } from "react";
150
- import {
151
- Animated,
152
- I18nManager,
153
- PanResponder,
154
- StyleSheet,
155
- View as View2
156
- } from "react-native";
157
116
  import { styled as styled3 } from "@aussieljk/forkbook/internal/react-native-theming";
158
- import { jsx as jsx4, jsxs as jsxs2 } from "react/jsx-runtime";
159
- var THUMB_SIZE = 32, THUMB_RADIUS = THUMB_SIZE / 2, THUMB_HIT_SLOP = THUMB_SIZE, SliderContainer = styled3.View({
160
- height: 48,
161
- justifyContent: "center",
162
- paddingHorizontal: 10
163
- }), Track = styled3.View(({ theme }) => ({
164
- height: 4,
165
- borderRadius: 2,
166
- backgroundColor: theme.appBorderColor,
167
- position: "relative",
168
- width: "100%"
169
- })), Fill = styled3.View(({ theme }) => ({
170
- position: "absolute",
171
- top: 0,
172
- height: 4,
173
- borderRadius: 2,
174
- backgroundColor: theme.color.positive
175
- })), Thumb = styled3.View(({ theme }) => ({
176
- width: THUMB_SIZE,
177
- height: THUMB_SIZE,
178
- borderRadius: THUMB_RADIUS,
179
- backgroundColor: theme.color.positive,
180
- borderWidth: 2,
181
- borderColor: theme.background.content,
182
- shadowColor: "#000",
183
- shadowOffset: { width: 0, height: 2 },
184
- shadowOpacity: 0.25,
185
- shadowRadius: 3.84,
186
- elevation: 5
187
- })), clamp = (value, min, max) => Math.max(min, Math.min(max, value)), Slider = ({
188
- minimumValue = 0,
189
- maximumValue = 1,
117
+ import { useCallback, useState as useState3 } from "react";
118
+ import { View as View2 } from "react-native";
119
+
120
+ // src/addon-ondevice-controls/components/SliderWrapper.tsx
121
+ import { Host, Slider } from "@expo/ui/swift-ui";
122
+ import { useRef } from "react";
123
+ import { jsx as jsx3 } from "react/jsx-runtime";
124
+ var SliderWrapper = ({
125
+ minimumValue,
126
+ maximumValue,
190
127
  step,
191
- value = minimumValue,
128
+ value,
192
129
  onValueChange,
193
130
  onSlidingComplete,
194
- disabled = !1,
195
131
  style
196
132
  }) => {
197
- let isRTL = I18nManager.isRTL, initialValueRef = useRef(value ?? minimumValue), [trackWidth, setTrackWidth] = useState3(0), [displayValue, setDisplayValue] = useState3(initialValueRef.current), translateX = useRef(new Animated.Value(0)).current, currentTranslateRef = useRef(0), startTranslateRef = useRef(0), isDraggingRef = useRef(!1), range = maximumValue - minimumValue || 1, clampValue = useCallback(
198
- (raw) => {
199
- let clampedValue = clamp(raw, minimumValue, maximumValue);
200
- if (step && step > 0) {
201
- let steps = Math.round((clampedValue - minimumValue) / step);
202
- clampedValue = minimumValue + steps * step, clampedValue = clamp(clampedValue, minimumValue, maximumValue);
203
- }
204
- return clampedValue;
205
- },
206
- [minimumValue, maximumValue, step]
207
- ), valueToTranslate = useCallback(
208
- (val, width) => {
209
- if (width <= 0) return 0;
210
- let ratio = (clampValue(val) - minimumValue) / range;
211
- return (isRTL ? 1 - ratio : ratio) * width;
212
- },
213
- [clampValue, minimumValue, range, isRTL]
214
- ), translateToValue = useCallback(
215
- (translate, width) => {
216
- if (width <= 0) return clampValue(minimumValue);
217
- let ratio = clamp(translate / width, 0, 1), normalized = isRTL ? 1 - ratio : ratio, raw = minimumValue + normalized * range;
218
- return clampValue(raw);
219
- },
220
- [clampValue, minimumValue, range, isRTL]
221
- ), clampTranslate = useCallback(
222
- (translate, width) => clamp(translate, 0, width),
223
- []
224
- ), updateFromTranslate = useCallback(
225
- (nextTranslate, width, notify) => {
226
- let clampedTranslate = clampTranslate(nextTranslate, width), snappedValue = translateToValue(clampedTranslate, width), snappedTranslate = valueToTranslate(snappedValue, width);
227
- translateX.setValue(snappedTranslate), currentTranslateRef.current = snappedTranslate, setDisplayValue(snappedValue), notify && onValueChange?.(snappedValue);
228
- },
229
- [clampTranslate, translateToValue, valueToTranslate, translateX, onValueChange]
230
- );
231
- useEffect2(() => {
232
- if (isDraggingRef.current) return;
233
- let clamped = clampValue(value ?? minimumValue);
234
- if (setDisplayValue(clamped), trackWidth > 0) {
235
- let translate = valueToTranslate(clamped, trackWidth);
236
- translateX.setValue(translate), currentTranslateRef.current = translate;
237
- }
238
- }, [value, trackWidth, clampValue, valueToTranslate, translateX, minimumValue]);
239
- let handlePanMove = useCallback(
240
- (gestureState, width) => {
241
- let delta = isRTL ? -gestureState.dx : gestureState.dx, nextTranslate = startTranslateRef.current + delta;
242
- updateFromTranslate(nextTranslate, width, !0);
243
- },
244
- [updateFromTranslate, isRTL]
245
- ), handlePanEnd = useCallback(
246
- (width, shouldNotifyComplete) => {
247
- isDraggingRef.current = !1;
248
- let snappedValue = translateToValue(currentTranslateRef.current, width), snappedTranslate = valueToTranslate(snappedValue, width);
249
- translateX.setValue(snappedTranslate), currentTranslateRef.current = snappedTranslate, setDisplayValue(snappedValue), shouldNotifyComplete && (onValueChange?.(snappedValue), onSlidingComplete?.(snappedValue));
250
- },
251
- [translateToValue, valueToTranslate, translateX, onValueChange, onSlidingComplete]
252
- ), panResponder = useMemo(
253
- () => (
254
- // eslint-disable-next-line react-hooks/refs
255
- PanResponder.create({
256
- onStartShouldSetPanResponder: () => !disabled,
257
- onMoveShouldSetPanResponder: () => !disabled,
258
- onStartShouldSetPanResponderCapture: () => !disabled,
259
- onMoveShouldSetPanResponderCapture: () => !disabled,
260
- onPanResponderGrant: (evt) => {
261
- if (disabled || trackWidth <= 0) return;
262
- isDraggingRef.current = !0;
263
- let rawTouchX = evt.nativeEvent.locationX - THUMB_RADIUS, clampedTouch = clamp(rawTouchX, 0, trackWidth), proposedTranslate = isRTL ? trackWidth - clampedTouch : clampedTouch, currentTranslate = currentTranslateRef.current;
264
- if (Math.abs(proposedTranslate - currentTranslate) <= THUMB_HIT_SLOP) {
265
- startTranslateRef.current = currentTranslate;
266
- let currentValue = translateToValue(currentTranslate, trackWidth);
267
- setDisplayValue(currentValue), onValueChange?.(currentValue);
268
- } else
269
- updateFromTranslate(proposedTranslate, trackWidth, !0), startTranslateRef.current = currentTranslateRef.current;
270
- },
271
- onPanResponderMove: (_evt, gestureState) => {
272
- disabled || trackWidth <= 0 || handlePanMove(gestureState, trackWidth);
273
- },
274
- onPanResponderRelease: () => {
275
- trackWidth <= 0 || handlePanEnd(trackWidth, !0);
276
- },
277
- onPanResponderTerminationRequest: () => !1,
278
- onPanResponderTerminate: () => {
279
- trackWidth <= 0 || handlePanEnd(trackWidth, !0);
280
- }
281
- })
282
- ),
283
- [
284
- disabled,
285
- trackWidth,
286
- handlePanMove,
287
- handlePanEnd,
288
- updateFromTranslate,
289
- translateToValue,
290
- onValueChange,
291
- isRTL
292
- ]
293
- ), handleTrackLayout = (event) => {
294
- let { width } = event.nativeEvent.layout, usableWidth = Math.max(width - THUMB_RADIUS * 2, 0);
295
- if (setTrackWidth(usableWidth), usableWidth > 0) {
296
- let translate = valueToTranslate(displayValue, usableWidth);
297
- translateX.setValue(translate), currentTranslateRef.current = translate;
298
- }
299
- }, fillWidth = trackWidth > 0 ? (displayValue - minimumValue) / range * trackWidth : 0, fillStyle = isRTL ? [styles.fillBase, { right: 0, width: fillWidth }] : [styles.fillBase, { left: 0, width: fillWidth }];
300
- return jsx4(SliderContainer, { style, children: jsx4(
301
- View2,
133
+ let latest = useRef(value ?? 0);
134
+ return jsx3(Host, { matchContents: { vertical: !0 }, style, children: jsx3(
135
+ Slider,
302
136
  {
303
- style: styles.touchArea,
304
- onLayout: handleTrackLayout,
305
- ...panResponder.panHandlers,
306
- collapsable: !1,
307
- children: jsxs2(Track, { children: [
308
- jsx4(Fill, { style: fillStyle }),
309
- jsx4(Animated.View, { style: [styles.thumbWrapper, { transform: [{ translateX }] }], children: jsx4(Thumb, {}) })
310
- ] })
137
+ value,
138
+ min: minimumValue,
139
+ max: maximumValue,
140
+ step: step && step > 0 ? step : void 0,
141
+ onValueChange: (next) => {
142
+ latest.current = next, onValueChange?.(next);
143
+ },
144
+ onEditingChanged: (editing) => {
145
+ editing || onSlidingComplete?.(latest.current);
146
+ }
311
147
  }
312
148
  ) });
313
- }, styles = StyleSheet.create({
314
- touchArea: {
315
- height: 48,
316
- justifyContent: "center",
317
- width: "100%",
318
- paddingHorizontal: THUMB_RADIUS
319
- },
320
- thumbWrapper: {
321
- position: "absolute",
322
- top: -THUMB_RADIUS,
323
- left: -THUMB_RADIUS,
324
- pointerEvents: "none"
325
- },
326
- fillBase: {
327
- position: "absolute",
328
- top: 0,
329
- height: 4,
330
- borderRadius: 2
331
- }
332
- }), Slider_default = Slider;
333
-
334
- // src/addon-ondevice-controls/components/SliderWrapper.tsx
335
- import { Platform as Platform2 } from "react-native";
336
- import Slider2 from "@react-native-community/slider";
337
- import { jsx as jsx5 } from "react/jsx-runtime";
338
- var supportedPlatforms = ["android", "ios", "windows", "web"], nativeSliderSupported = supportedPlatforms.includes(Platform2.OS), SliderWrapper = ({ useBuiltInSlider = !1, ...props }) => !nativeSliderSupported || useBuiltInSlider ? jsx5(Slider_default, { ...props }) : jsx5(Slider2, { ...props }), SliderWrapper_default = SliderWrapper;
149
+ }, SliderWrapper_default = SliderWrapper;
339
150
 
340
151
  // src/addon-ondevice-controls/types/Number.tsx
341
- import { jsx as jsx6, jsxs as jsxs3 } from "react/jsx-runtime";
342
- var ValueContainer = styled4.View({ flexDirection: "row" }), LabelText = styled4.Text(({ theme }) => ({
152
+ import { jsx as jsx4, jsxs as jsxs2 } from "react/jsx-runtime";
153
+ var ValueContainer = styled3.View({ flexDirection: "row" }), LabelText = styled3.Text(({ theme }) => ({
343
154
  color: theme.color.mediumdark,
344
155
  fontSize: theme.typography.size.s1
345
- })), ValueText = styled4.Text(({ theme }) => ({
156
+ })), ValueText = styled3.Text(({ theme }) => ({
346
157
  color: theme.color.defaultText,
347
158
  fontSize: theme.typography.size.s1
348
159
  })), getRangeOptions = (arg) => arg.type === "range" ? {
@@ -358,21 +169,21 @@ var ValueContainer = styled4.View({ flexDirection: "row" }), LabelText = styled4
358
169
  max: 100,
359
170
  step: 1
360
171
  }, NumberType = ({ arg, isPristine, onChange = (value) => value }) => {
361
- let showError = Number.isNaN(arg.value), [numStr, setNumStr] = useState4(arg.value?.toString()), updateNumstr = useCallback2(
172
+ let showError = Number.isNaN(arg.value), [numStr, setNumStr] = useState3(arg.value?.toString()), updateNumstr = useCallback(
362
173
  (value) => setNumStr(value?.toString()),
363
174
  []
364
- ), { key, setCurrentValue } = useResyncValue(arg.value, isPristine, updateNumstr), [focused, setFocused] = useState4(!1), handleNormalChangeText = (text) => {
175
+ ), { key, setCurrentValue } = useResyncValue(arg.value, isPristine, updateNumstr), [focused, setFocused] = useState3(!1), handleNormalChangeText = (text) => {
365
176
  let commaReplaced = text.trim().replace(/,/, ".");
366
177
  setNumStr(commaReplaced), commaReplaced === "-" ? (onChange(-1), setCurrentValue(-1)) : (onChange(Number(commaReplaced)), setCurrentValue(Number(commaReplaced)));
367
178
  };
368
179
  if (arg.range || arg.type === "range") {
369
180
  let { min, max, step } = getRangeOptions(arg);
370
- return jsxs3(View3, { children: [
371
- jsxs3(ValueContainer, { children: [
372
- jsx6(LabelText, { children: "Value: " }),
373
- jsx6(ValueText, { children: arg.value })
181
+ return jsxs2(View2, { children: [
182
+ jsxs2(ValueContainer, { children: [
183
+ jsx4(LabelText, { children: "Value: " }),
184
+ jsx4(ValueText, { children: arg.value })
374
185
  ] }),
375
- jsx6(
186
+ jsx4(
376
187
  SliderWrapper_default,
377
188
  {
378
189
  minimumValue: min,
@@ -386,7 +197,7 @@ var ValueContainer = styled4.View({ flexDirection: "row" }), LabelText = styled4
386
197
  )
387
198
  ] }, key);
388
199
  } else
389
- return jsx6(
200
+ return jsx4(
390
201
  Input,
391
202
  {
392
203
  autoCapitalize: "none",
@@ -403,9 +214,9 @@ var ValueContainer = styled4.View({ flexDirection: "row" }), LabelText = styled4
403
214
  }, Number_default = NumberType;
404
215
 
405
216
  // src/addon-ondevice-controls/types/Color.tsx
406
- import { useState as useState6 } from "react";
407
- import { View as View6, TouchableWithoutFeedback, StyleSheet as StyleSheet3, Platform as Platform4, Dimensions } from "react-native";
408
- import { styled as styled5, useTheme } from "@aussieljk/forkbook/internal/react-native-theming";
217
+ import { useState as useState5 } from "react";
218
+ import { View as View5, TouchableWithoutFeedback, StyleSheet as StyleSheet2, Platform as Platform3, Dimensions } from "react-native";
219
+ import { styled as styled4, useTheme } from "@aussieljk/forkbook/internal/react-native-theming";
409
220
 
410
221
  // ../../node_modules/tinycolor2/esm/tinycolor.js
411
222
  function _typeof(obj) {
@@ -1119,7 +930,7 @@ function validateWCAG2Parms(parms) {
1119
930
 
1120
931
  // src/addon-ondevice-controls/components/color-picker/utils.ts
1121
932
  import {
1122
- PanResponder as PanResponder2
933
+ PanResponder
1123
934
  } from "react-native";
1124
935
  function toHsv2(color) {
1125
936
  return tinycolor(color).toHsv();
@@ -1133,7 +944,7 @@ function createPanResponder({
1133
944
  onMove = fn,
1134
945
  onEnd = fn
1135
946
  }) {
1136
- return PanResponder2.create({
947
+ return PanResponder.create({
1137
948
  onStartShouldSetPanResponder: fn,
1138
949
  onStartShouldSetPanResponderCapture: fn,
1139
950
  onMoveShouldSetPanResponder: fn,
@@ -1146,20 +957,20 @@ function createPanResponder({
1146
957
  }
1147
958
 
1148
959
  // src/addon-ondevice-controls/components/color-picker/HoloColorPicker.tsx
1149
- import { useCallback as useCallback3, useEffect as useEffect3, useMemo as useMemo2, useRef as useRef2, useState as useState5 } from "react";
960
+ import { useCallback as useCallback2, useEffect as useEffect2, useMemo, useRef as useRef2, useState as useState4 } from "react";
1150
961
  import {
1151
- I18nManager as I18nManager2,
962
+ I18nManager,
1152
963
  Image,
1153
- StyleSheet as StyleSheet2,
964
+ StyleSheet,
1154
965
  Text,
1155
- View as View4
966
+ View as View3
1156
967
  } from "react-native";
1157
968
 
1158
969
  // src/addon-ondevice-controls/components/color-picker/color-circle.ts
1159
970
  var colorCircle = "data:image/png;base64,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";
1160
971
 
1161
972
  // src/addon-ondevice-controls/components/color-picker/HoloColorPicker.tsx
1162
- import { Fragment, jsx as jsx7, jsxs as jsxs4 } from "react/jsx-runtime";
973
+ import { Fragment, jsx as jsx5, jsxs as jsxs3 } from "react/jsx-runtime";
1163
974
  var getHsv = (color) => tinycolor(color).toHsv();
1164
975
  function HoloColorPicker({
1165
976
  defaultColor,
@@ -1167,17 +978,17 @@ function HoloColorPicker({
1167
978
  onColorChange,
1168
979
  style
1169
980
  }) {
1170
- let [color, setColor] = useState5(() => getHsv(defaultColor)), [pickerSize, setPickerSize] = useState5(0), colorRef = useRef2(color), pickerSizeRef = useRef2(pickerSize), pickerRef = useRef2(null), pickerPageOffsetRef = useRef2({ x: 0, y: 0 });
1171
- useEffect3(() => {
981
+ let [color, setColor] = useState4(() => getHsv(defaultColor)), [pickerSize, setPickerSize] = useState4(0), colorRef = useRef2(color), pickerSizeRef = useRef2(pickerSize), pickerRef = useRef2(null), pickerPageOffsetRef = useRef2({ x: 0, y: 0 });
982
+ useEffect2(() => {
1172
983
  let nextColor = getHsv(defaultColor);
1173
984
  colorRef.current = nextColor, setColor(nextColor);
1174
985
  }, [defaultColor]);
1175
- let updateColor = useCallback3(
986
+ let updateColor = useCallback2(
1176
987
  (nextColor) => {
1177
988
  colorRef.current = nextColor, setColor(nextColor), onColorChange(nextColor);
1178
989
  },
1179
990
  [onColorChange]
1180
- ), handleHueChange = useCallback3(
991
+ ), handleHueChange = useCallback2(
1181
992
  ({ x, y }) => {
1182
993
  let currentPickerSize = pickerSizeRef.current;
1183
994
  if (!currentPickerSize)
@@ -1186,7 +997,7 @@ function HoloColorPicker({
1186
997
  updateColor({ ...colorRef.current, h });
1187
998
  },
1188
999
  [updateColor]
1189
- ), pickerResponder = useMemo2(
1000
+ ), pickerResponder = useMemo(
1190
1001
  () => (
1191
1002
  // eslint-disable-next-line react-hooks/refs
1192
1003
  createPanResponder({
@@ -1210,12 +1021,12 @@ function HoloColorPicker({
1210
1021
  indicatorColor,
1211
1022
  oldColor,
1212
1023
  angle: hueToRad(color.h),
1213
- isRTL: I18nManager2.isRTL
1024
+ isRTL: I18nManager.isRTL
1214
1025
  });
1215
- return jsxs4(View4, { style, children: [
1216
- jsx7(View4, { onLayout, style: styles2.pickerContainer, children: pickerSize ? jsxs4(View4, { children: [
1217
- jsxs4(
1218
- View4,
1026
+ return jsxs3(View3, { style, children: [
1027
+ jsx5(View3, { onLayout, style: styles.pickerContainer, children: pickerSize ? jsxs3(View3, { children: [
1028
+ jsxs3(
1029
+ View3,
1219
1030
  {
1220
1031
  ref: pickerRef,
1221
1032
  onLayout: onPickerLayout,
@@ -1223,34 +1034,34 @@ function HoloColorPicker({
1223
1034
  style: computed.picker,
1224
1035
  collapsable: !1,
1225
1036
  children: [
1226
- jsx7(
1037
+ jsx5(
1227
1038
  Image,
1228
1039
  {
1229
1040
  source: { uri: colorCircle },
1230
1041
  resizeMode: "contain",
1231
- style: styles2.pickerImage
1042
+ style: styles.pickerImage
1232
1043
  }
1233
1044
  ),
1234
- jsx7(View4, { style: [styles2.pickerIndicator, computed.pickerIndicator] })
1045
+ jsx5(View3, { style: [styles.pickerIndicator, computed.pickerIndicator] })
1235
1046
  ]
1236
1047
  }
1237
1048
  ),
1238
- oldColor ? jsxs4(Fragment, { children: [
1239
- jsx7(View4, { style: [styles2.selectedPreview, computed.selectedPreview] }),
1240
- jsx7(View4, { style: [styles2.originalPreview, computed.originalPreview] })
1241
- ] }) : jsx7(View4, { style: [styles2.selectedFullPreview, computed.selectedFullPreview] })
1049
+ oldColor ? jsxs3(Fragment, { children: [
1050
+ jsx5(View3, { style: [styles.selectedPreview, computed.selectedPreview] }),
1051
+ jsx5(View3, { style: [styles.originalPreview, computed.originalPreview] })
1052
+ ] }) : jsx5(View3, { style: [styles.selectedFullPreview, computed.selectedFullPreview] })
1242
1053
  ] }) : null }),
1243
- jsxs4(View4, { children: [
1244
- jsx7(Text, { style: styles2.sliderLabel, children: "Saturation" }),
1245
- jsx7(
1054
+ jsxs3(View3, { children: [
1055
+ jsx5(Text, { style: styles.sliderLabel, children: "Saturation" }),
1056
+ jsx5(
1246
1057
  SliderWrapper_default,
1247
1058
  {
1248
1059
  value: color.s,
1249
1060
  onValueChange: (s) => updateColor({ ...colorRef.current, s })
1250
1061
  }
1251
1062
  ),
1252
- jsx7(Text, { style: styles2.sliderLabel, children: "Lightness" }),
1253
- jsx7(
1063
+ jsx5(Text, { style: styles.sliderLabel, children: "Lightness" }),
1064
+ jsx5(
1254
1065
  SliderWrapper_default,
1255
1066
  {
1256
1067
  value: color.v,
@@ -1313,7 +1124,7 @@ var computeHue = (x, y, pickerSize) => {
1313
1124
  backgroundColor: selectedColor
1314
1125
  }
1315
1126
  };
1316
- }, styles2 = StyleSheet2.create({
1127
+ }, styles = StyleSheet.create({
1317
1128
  pickerContainer: {
1318
1129
  flex: 1,
1319
1130
  alignItems: "center",
@@ -1352,15 +1163,15 @@ var computeHue = (x, y, pickerSize) => {
1352
1163
  });
1353
1164
 
1354
1165
  // src/addon-ondevice-controls/components/ModalPortal.tsx
1355
- import { Modal, Platform as Platform3, View as View5 } from "react-native";
1356
- import { jsx as jsx8 } from "react/jsx-runtime";
1357
- var modalSupported = Platform3.OS !== "macos", ModalPortal = ({
1166
+ import { Modal, Platform as Platform2, View as View4 } from "react-native";
1167
+ import { jsx as jsx6 } from "react/jsx-runtime";
1168
+ var modalSupported = Platform2.OS !== "macos", ModalPortal = ({
1358
1169
  children,
1359
1170
  visible,
1360
1171
  usePortal,
1361
1172
  ...props
1362
- }) => modalSupported && !usePortal ? jsx8(Modal, { visible, ...props, children }) : visible ? jsx8(Portal, { hostName: "storybook-lite-ui-root", children: jsx8(
1363
- View5,
1173
+ }) => modalSupported && !usePortal ? jsx6(Modal, { visible, ...props, children }) : visible ? jsx6(Portal, { hostName: "storybook-lite-ui-root", children: jsx6(
1174
+ View4,
1364
1175
  {
1365
1176
  style: {
1366
1177
  flex: 1,
@@ -1376,8 +1187,8 @@ var modalSupported = Platform3.OS !== "macos", ModalPortal = ({
1376
1187
  ) }) : null;
1377
1188
 
1378
1189
  // src/addon-ondevice-controls/types/Color.tsx
1379
- import { jsx as jsx9, jsxs as jsxs5 } from "react/jsx-runtime";
1380
- var TouchableContainer = styled5.TouchableOpacity(({ theme }) => ({
1190
+ import { jsx as jsx7, jsxs as jsxs4 } from "react/jsx-runtime";
1191
+ var TouchableContainer = styled4.TouchableOpacity(({ theme }) => ({
1381
1192
  width: 44,
1382
1193
  height: 44,
1383
1194
  borderWidth: 1,
@@ -1387,12 +1198,12 @@ var TouchableContainer = styled5.TouchableOpacity(({ theme }) => ({
1387
1198
  backgroundColor: theme.background.content,
1388
1199
  justifyContent: "center",
1389
1200
  alignItems: "center"
1390
- })), Touchable = styled5.View(({ color }) => ({
1201
+ })), Touchable = styled4.View(({ color }) => ({
1391
1202
  width: 38,
1392
1203
  height: 38,
1393
1204
  borderRadius: 4,
1394
1205
  backgroundColor: color
1395
- })), ButtonTouchable = styled5.TouchableOpacity(({ theme, primary }) => ({
1206
+ })), ButtonTouchable = styled4.TouchableOpacity(({ theme, primary }) => ({
1396
1207
  backgroundColor: primary ? theme.color.secondary : theme.button.background,
1397
1208
  borderRadius: 6,
1398
1209
  borderWidth: 1,
@@ -1402,19 +1213,19 @@ var TouchableContainer = styled5.TouchableOpacity(({ theme }) => ({
1402
1213
  paddingHorizontal: 28,
1403
1214
  justifyContent: "center",
1404
1215
  alignItems: "center"
1405
- })), ButtonText = styled5.Text(({ theme, primary }) => ({
1216
+ })), ButtonText = styled4.Text(({ theme, primary }) => ({
1406
1217
  color: primary ? theme.color.lightest : theme.input.color,
1407
1218
  fontSize: theme.typography.size.s2,
1408
1219
  fontWeight: theme.typography.weight.bold
1409
1220
  })), controlHitSlop = { top: 16, right: 16, bottom: 16, left: 16 }, buttonHitSlop = { top: 10, right: 10, bottom: 10, left: 10 }, ColorType = ({ arg, onChange = (value) => value }) => {
1410
- let [displayColorPicker, setDisplayColorPicker] = useState6(!1), [currentColor, setCurrentColor] = useState6(() => toHsv2(arg.value)), theme = useTheme(), openColorPicker = () => {
1221
+ let [displayColorPicker, setDisplayColorPicker] = useState5(!1), [currentColor, setCurrentColor] = useState5(() => toHsv2(arg.value)), theme = useTheme(), openColorPicker = () => {
1411
1222
  setCurrentColor(toHsv2(arg.value)), setDisplayColorPicker(!0);
1412
1223
  }, closeColorPicker = () => {
1413
1224
  setDisplayColorPicker(!1);
1414
1225
  }, onChangeColor = (color) => {
1415
1226
  onChange(fromHsv(color));
1416
1227
  };
1417
- return Platform4.OS === "web" ? jsx9(
1228
+ return Platform3.OS === "web" ? jsx7(
1418
1229
  "input",
1419
1230
  {
1420
1231
  type: "color",
@@ -1433,9 +1244,9 @@ var TouchableContainer = styled5.TouchableOpacity(({ theme }) => ({
1433
1244
  backgroundColor: theme.background.content
1434
1245
  }
1435
1246
  }
1436
- ) : jsxs5(View6, { children: [
1437
- jsx9(TouchableContainer, { onPress: openColorPicker, hitSlop: controlHitSlop, activeOpacity: 0.7, children: jsx9(Touchable, { color: arg.value }) }),
1438
- jsxs5(
1247
+ ) : jsxs4(View5, { children: [
1248
+ jsx7(TouchableContainer, { onPress: openColorPicker, hitSlop: controlHitSlop, activeOpacity: 0.7, children: jsx7(Touchable, { color: arg.value }) }),
1249
+ jsxs4(
1439
1250
  ModalPortal,
1440
1251
  {
1441
1252
  supportedOrientations: ["portrait", "landscape"],
@@ -1444,21 +1255,21 @@ var TouchableContainer = styled5.TouchableOpacity(({ theme }) => ({
1444
1255
  onRequestClose: closeColorPicker,
1445
1256
  animationType: "fade",
1446
1257
  children: [
1447
- jsx9(TouchableWithoutFeedback, { onPress: closeColorPicker, children: jsx9(View6, { style: styles3.modalOverlay }) }),
1448
- jsx9(View6, { style: styles3.centerContainer, children: jsxs5(InnerContainer, { children: [
1449
- jsx9(
1258
+ jsx7(TouchableWithoutFeedback, { onPress: closeColorPicker, children: jsx7(View5, { style: styles2.modalOverlay }) }),
1259
+ jsx7(View5, { style: styles2.centerContainer, children: jsxs4(InnerContainer, { children: [
1260
+ jsx7(
1450
1261
  HoloColorPicker,
1451
1262
  {
1452
1263
  onColorChange: (color) => setCurrentColor(color),
1453
1264
  defaultColor: arg.value,
1454
1265
  oldColor: arg.value,
1455
- style: styles3.picker
1266
+ style: styles2.picker
1456
1267
  }
1457
1268
  ),
1458
- jsxs5(View6, { style: styles3.actionContainer, children: [
1459
- jsx9(ButtonTouchable, { onPress: closeColorPicker, hitSlop: buttonHitSlop, children: jsx9(ButtonText, { children: "Cancel" }) }),
1460
- jsx9(View6, { style: { width: 12 } }),
1461
- jsx9(
1269
+ jsxs4(View5, { style: styles2.actionContainer, children: [
1270
+ jsx7(ButtonTouchable, { onPress: closeColorPicker, hitSlop: buttonHitSlop, children: jsx7(ButtonText, { children: "Cancel" }) }),
1271
+ jsx7(View5, { style: { width: 12 } }),
1272
+ jsx7(
1462
1273
  ButtonTouchable,
1463
1274
  {
1464
1275
  primary: !0,
@@ -1466,7 +1277,7 @@ var TouchableContainer = styled5.TouchableOpacity(({ theme }) => ({
1466
1277
  onPress: () => {
1467
1278
  onChangeColor(currentColor), closeColorPicker();
1468
1279
  },
1469
- children: jsx9(ButtonText, { primary: !0, children: "Select" })
1280
+ children: jsx7(ButtonText, { primary: !0, children: "Select" })
1470
1281
  }
1471
1282
  )
1472
1283
  ] })
@@ -1475,7 +1286,7 @@ var TouchableContainer = styled5.TouchableOpacity(({ theme }) => ({
1475
1286
  }
1476
1287
  )
1477
1288
  ] });
1478
- }, InnerContainer = styled5.View(({ theme }) => ({
1289
+ }, InnerContainer = styled4.View(({ theme }) => ({
1479
1290
  backgroundColor: theme.background.content,
1480
1291
  borderWidth: 1,
1481
1292
  borderColor: theme.appBorderColor,
@@ -1487,7 +1298,7 @@ var TouchableContainer = styled5.TouchableOpacity(({ theme }) => ({
1487
1298
  maxHeight: Dimensions.get("screen").height - 48,
1488
1299
  boxShadow: "0px 0px 16px 0px rgba(0, 0, 0, 0.2)",
1489
1300
  elevation: 10
1490
- })), styles3 = StyleSheet3.create({
1301
+ })), styles2 = StyleSheet2.create({
1491
1302
  actionContainer: {
1492
1303
  paddingTop: 8,
1493
1304
  alignItems: "flex-end",
@@ -1516,26 +1327,26 @@ var Color_default = ColorType;
1516
1327
 
1517
1328
  // src/addon-ondevice-controls/types/Boolean.tsx
1518
1329
  import { Switch } from "react-native";
1519
- import { styled as styled6 } from "@aussieljk/forkbook/internal/react-native-theming";
1520
- import { jsx as jsx10 } from "react/jsx-runtime";
1521
- var Container = styled6.View(() => ({
1330
+ import { styled as styled5 } from "@aussieljk/forkbook/internal/react-native-theming";
1331
+ import { jsx as jsx8 } from "react/jsx-runtime";
1332
+ var Container = styled5.View(() => ({
1522
1333
  alignItems: "flex-start"
1523
- })), BooleanType = ({ arg, onChange }) => jsx10(Container, { children: jsx10(Switch, { testID: arg.name, onValueChange: () => onChange(!arg.value), value: arg.value }) });
1334
+ })), BooleanType = ({ arg, onChange }) => jsx8(Container, { children: jsx8(Switch, { testID: arg.name, onValueChange: () => onChange(!arg.value), value: arg.value }) });
1524
1335
  BooleanType.serialize = (value) => value ? String(value) : null;
1525
1336
  BooleanType.deserialize = (value) => value === "true";
1526
1337
  var Boolean_default = BooleanType;
1527
1338
 
1528
1339
  // src/addon-ondevice-controls/types/Object.tsx
1529
- import { useCallback as useCallback4, useState as useState7 } from "react";
1530
- import { jsx as jsx11 } from "react/jsx-runtime";
1340
+ import { useCallback as useCallback3, useState as useState6 } from "react";
1341
+ import { jsx as jsx9 } from "react/jsx-runtime";
1531
1342
  var ObjectType = ({ arg, onChange, isPristine }) => {
1532
- let getJsonString = useCallback4(() => {
1343
+ let getJsonString = useCallback3(() => {
1533
1344
  try {
1534
1345
  return JSON.stringify(arg.value, null, 2);
1535
1346
  } catch {
1536
1347
  return "";
1537
1348
  }
1538
- }, [arg.value]), [failed, setFailed] = useState7(!1), { key, setCurrentValue } = useResyncValue(arg.value, isPristine), [focused, setFocused] = useState7(!1), handleChange = (value) => {
1349
+ }, [arg.value]), [failed, setFailed] = useState6(!1), { key, setCurrentValue } = useResyncValue(arg.value, isPristine), [focused, setFocused] = useState6(!1), handleChange = (value) => {
1539
1350
  let withReplacedQuotes = value.replace(/[\u2018\u2019]/g, "'").replace(/[\u201C\u201D]/g, '"');
1540
1351
  try {
1541
1352
  let json = JSON.parse(withReplacedQuotes.trim());
@@ -1544,7 +1355,7 @@ var ObjectType = ({ arg, onChange, isPristine }) => {
1544
1355
  setFailed(!0);
1545
1356
  }
1546
1357
  }, extraStyle = failed ? { minHeight: 60, borderWidth: 1, borderColor: "#fadddd", backgroundColor: "#fff5f5" } : { minHeight: 60 };
1547
- return jsx11(
1358
+ return jsx9(
1548
1359
  Input,
1549
1360
  {
1550
1361
  testID: arg.name,
@@ -1567,22 +1378,22 @@ var Object_default = ObjectType;
1567
1378
 
1568
1379
  // src/addon-ondevice-controls/types/Select.tsx
1569
1380
  import { useTheme as useTheme2 } from "@aussieljk/forkbook/internal/react-native-theming";
1570
- import { useMemo as useMemo4 } from "react";
1571
- import { Platform as Platform5, View as View8 } from "react-native";
1381
+ import { useMemo as useMemo3 } from "react";
1382
+ import { Platform as Platform4, View as View7 } from "react-native";
1572
1383
 
1573
1384
  // src/addon-ondevice-controls/components/SelectModal.tsx
1574
- import { styled as styled7 } from "@aussieljk/forkbook/internal/react-native-theming";
1575
- import { useCallback as useCallback5, useEffect as useEffect4, useMemo as useMemo3, useState as useState8 } from "react";
1385
+ import { styled as styled6 } from "@aussieljk/forkbook/internal/react-native-theming";
1386
+ import { useCallback as useCallback4, useEffect as useEffect3, useMemo as useMemo2, useState as useState7 } from "react";
1576
1387
  import {
1577
1388
  ScrollView,
1578
- StyleSheet as StyleSheet4,
1389
+ StyleSheet as StyleSheet3,
1579
1390
  TouchableOpacity,
1580
1391
  TouchableWithoutFeedback as TouchableWithoutFeedback2,
1581
1392
  useWindowDimensions,
1582
- View as View7
1393
+ View as View6
1583
1394
  } from "react-native";
1584
- import { jsx as jsx12, jsxs as jsxs6 } from "react/jsx-runtime";
1585
- var styles4 = StyleSheet4.create({
1395
+ import { jsx as jsx10, jsxs as jsxs5 } from "react/jsx-runtime";
1396
+ var styles3 = StyleSheet3.create({
1586
1397
  overlay: {
1587
1398
  flex: 1,
1588
1399
  padding: "5%",
@@ -1636,7 +1447,7 @@ var styles4 = StyleSheet4.create({
1636
1447
  triggerContent: {
1637
1448
  pointerEvents: "none"
1638
1449
  }
1639
- }), Dialog = styled7.View(({ theme, maxHeight }) => ({
1450
+ }), Dialog = styled6.View(({ theme, maxHeight }) => ({
1640
1451
  maxHeight,
1641
1452
  marginHorizontal: 24,
1642
1453
  backgroundColor: theme.background.content,
@@ -1646,18 +1457,18 @@ var styles4 = StyleSheet4.create({
1646
1457
  overflow: "hidden",
1647
1458
  boxShadow: `0px 8px 24px 0px ${theme.color.border}`,
1648
1459
  elevation: 10
1649
- })), OptionButton = styled7.View(({ theme, selected }) => ({
1460
+ })), OptionButton = styled6.View(({ theme, selected }) => ({
1650
1461
  borderBottomColor: theme.appBorderColor,
1651
1462
  backgroundColor: selected ? theme.color.secondary : void 0
1652
- })), OptionLabel = styled7.Text(({ theme, selected }) => ({
1463
+ })), OptionLabel = styled6.Text(({ theme, selected }) => ({
1653
1464
  color: selected ? theme.color.lightest : theme.color.defaultText,
1654
1465
  fontSize: theme.typography.size.s2,
1655
1466
  fontWeight: selected ? theme.typography.weight.bold : "normal"
1656
- })), Checkmark = styled7.Text(({ theme }) => ({
1467
+ })), Checkmark = styled6.Text(({ theme }) => ({
1657
1468
  color: theme.color.lightest
1658
- })), Footer = styled7.View(({ theme }) => ({
1469
+ })), Footer = styled6.View(({ theme }) => ({
1659
1470
  backgroundColor: theme.barBg
1660
- })), FooterButton = styled7.View(({ theme, primary }) => ({
1471
+ })), FooterButton = styled6.View(({ theme, primary }) => ({
1661
1472
  minHeight: 32,
1662
1473
  borderRadius: theme.input.borderRadius,
1663
1474
  backgroundColor: primary ? theme.color.secondary : theme.button.background,
@@ -1666,7 +1477,7 @@ var styles4 = StyleSheet4.create({
1666
1477
  alignItems: "center",
1667
1478
  justifyContent: "center",
1668
1479
  paddingHorizontal: 12
1669
- })), FooterButtonText = styled7.Text(({ theme, primary }) => ({
1480
+ })), FooterButtonText = styled6.Text(({ theme, primary }) => ({
1670
1481
  color: primary ? theme.color.lightest : theme.input.color,
1671
1482
  fontSize: theme.typography.size.s1,
1672
1483
  fontWeight: theme.typography.weight.bold
@@ -1677,15 +1488,15 @@ var styles4 = StyleSheet4.create({
1677
1488
  onChange,
1678
1489
  children
1679
1490
  }) => {
1680
- let { height } = useWindowDimensions(), [visible, setVisible] = useState8(!1), [selectedKeys, setSelectedKeys] = useState8(() => valueKeys(value, multiple));
1681
- useEffect4(() => {
1491
+ let { height } = useWindowDimensions(), [visible, setVisible] = useState7(!1), [selectedKeys, setSelectedKeys] = useState7(() => valueKeys(value, multiple));
1492
+ useEffect3(() => {
1682
1493
  setSelectedKeys(valueKeys(value, multiple));
1683
1494
  }, [multiple, value]);
1684
- let selectedKeySet = useMemo3(() => new Set(selectedKeys), [selectedKeys]), close = useCallback5(() => {
1495
+ let selectedKeySet = useMemo2(() => new Set(selectedKeys), [selectedKeys]), close = useCallback4(() => {
1685
1496
  setVisible(!1);
1686
- }, []), open = useCallback5(() => {
1497
+ }, []), open = useCallback4(() => {
1687
1498
  setSelectedKeys(valueKeys(value, multiple)), setVisible(!0);
1688
- }, [multiple, value]), selectOption = useCallback5(
1499
+ }, [multiple, value]), selectOption = useCallback4(
1689
1500
  (option) => {
1690
1501
  let key = optionKey(option);
1691
1502
  if (!multiple) {
@@ -1697,13 +1508,13 @@ var styles4 = StyleSheet4.create({
1697
1508
  );
1698
1509
  },
1699
1510
  [close, multiple, onChange]
1700
- ), commitMultiSelect = useCallback5(() => {
1511
+ ), commitMultiSelect = useCallback4(() => {
1701
1512
  onChange(
1702
1513
  options.filter((option) => selectedKeys.includes(optionKey(option))).map((option) => option.key)
1703
1514
  ), close();
1704
1515
  }, [close, onChange, options, selectedKeys]);
1705
- return jsxs6(View7, { children: [
1706
- jsx12(
1516
+ return jsxs5(View6, { children: [
1517
+ jsx10(
1707
1518
  ModalPortal,
1708
1519
  {
1709
1520
  transparent: !0,
@@ -1711,29 +1522,29 @@ var styles4 = StyleSheet4.create({
1711
1522
  visible,
1712
1523
  onRequestClose: close,
1713
1524
  animationType: "none",
1714
- children: jsx12(TouchableWithoutFeedback2, { accessible: !1, onPress: close, children: jsx12(View7, { style: styles4.overlay, children: jsx12(TouchableWithoutFeedback2, { accessible: !1, children: jsxs6(Dialog, { maxHeight: height * 0.75, children: [
1715
- jsx12(
1525
+ children: jsx10(TouchableWithoutFeedback2, { accessible: !1, onPress: close, children: jsx10(View6, { style: styles3.overlay, children: jsx10(TouchableWithoutFeedback2, { accessible: !1, children: jsxs5(Dialog, { maxHeight: height * 0.75, children: [
1526
+ jsx10(
1716
1527
  ScrollView,
1717
1528
  {
1718
- contentContainerStyle: styles4.scrollContent,
1529
+ contentContainerStyle: styles3.scrollContent,
1719
1530
  keyboardShouldPersistTaps: "always",
1720
1531
  children: options.map((option, index) => {
1721
1532
  let key = optionKey(option), selected = selectedKeySet.has(key);
1722
- return jsx12(
1533
+ return jsx10(
1723
1534
  TouchableOpacity,
1724
1535
  {
1725
1536
  testID: `select-modal-${option.label}`,
1726
1537
  activeOpacity: 0.7,
1727
1538
  accessibilityLabel: option.label,
1728
1539
  onPress: () => selectOption(option),
1729
- children: jsx12(
1540
+ children: jsx10(
1730
1541
  OptionButton,
1731
1542
  {
1732
1543
  selected,
1733
- style: [styles4.option, index === options.length - 1 && styles4.lastOption],
1734
- children: jsxs6(View7, { style: styles4.optionContent, children: [
1735
- jsx12(OptionLabel, { selected, style: styles4.optionText, children: option.label }),
1736
- jsx12(View7, { style: styles4.indicator, children: selected && jsx12(Checkmark, { style: styles4.checkmark, children: "\u2713" }) })
1544
+ style: [styles3.option, index === options.length - 1 && styles3.lastOption],
1545
+ children: jsxs5(View6, { style: styles3.optionContent, children: [
1546
+ jsx10(OptionLabel, { selected, style: styles3.optionText, children: option.label }),
1547
+ jsx10(View6, { style: styles3.indicator, children: selected && jsx10(Checkmark, { style: styles3.checkmark, children: "\u2713" }) })
1737
1548
  ] })
1738
1549
  }
1739
1550
  )
@@ -1743,26 +1554,26 @@ var styles4 = StyleSheet4.create({
1743
1554
  })
1744
1555
  }
1745
1556
  ),
1746
- multiple && jsx12(Footer, { style: [styles4.footer, styles4.doneFooter], children: jsx12(TouchableOpacity, { activeOpacity: 0.7, onPress: commitMultiSelect, children: jsx12(FooterButton, { primary: !0, children: jsx12(FooterButtonText, { primary: !0, style: styles4.buttonText, children: "Done" }) }) }) }),
1747
- jsx12(Footer, { style: [styles4.footer, multiple && styles4.cancelFooter], children: jsx12(TouchableOpacity, { activeOpacity: 0.7, onPress: close, children: jsx12(FooterButton, { children: jsx12(FooterButtonText, { style: styles4.buttonText, children: "Cancel" }) }) }) })
1557
+ multiple && jsx10(Footer, { style: [styles3.footer, styles3.doneFooter], children: jsx10(TouchableOpacity, { activeOpacity: 0.7, onPress: commitMultiSelect, children: jsx10(FooterButton, { primary: !0, children: jsx10(FooterButtonText, { primary: !0, style: styles3.buttonText, children: "Done" }) }) }) }),
1558
+ jsx10(Footer, { style: [styles3.footer, multiple && styles3.cancelFooter], children: jsx10(TouchableOpacity, { activeOpacity: 0.7, onPress: close, children: jsx10(FooterButton, { children: jsx10(FooterButtonText, { style: styles3.buttonText, children: "Cancel" }) }) }) })
1748
1559
  ] }) }) }) })
1749
1560
  }
1750
1561
  ),
1751
- jsx12(TouchableOpacity, { activeOpacity: 0.7, onPress: open, children: jsx12(View7, { style: styles4.triggerContent, children }) })
1562
+ jsx10(TouchableOpacity, { activeOpacity: 0.7, onPress: open, children: jsx10(View6, { style: styles3.triggerContent, children }) })
1752
1563
  ] });
1753
1564
  };
1754
1565
 
1755
1566
  // src/addon-ondevice-controls/types/Select.tsx
1756
- import { jsx as jsx13 } from "react/jsx-runtime";
1567
+ import { jsx as jsx11 } from "react/jsx-runtime";
1757
1568
  var getOptions = (options, labels) => Array.isArray(options) ? options.map((val) => ({ key: val, label: String(labels?.[val] || val) })) : Object.keys(options).map((key) => ({
1758
1569
  label: String(key),
1759
1570
  key: options[key]
1760
1571
  })), SelectType = ({ arg, onChange }) => {
1761
- let { value } = arg, options = useMemo4(
1572
+ let { value } = arg, options = useMemo3(
1762
1573
  () => getOptions(arg.options, arg.control.labels),
1763
1574
  [arg.control.labels, arg.options]
1764
1575
  ), theme = useTheme2(), selected = options.find(({ key }) => value === key)?.label ?? "";
1765
- return Platform5.OS === "web" ? jsx13(
1576
+ return Platform4.OS === "web" ? jsx11(
1766
1577
  "select",
1767
1578
  {
1768
1579
  value,
@@ -1776,9 +1587,9 @@ var getOptions = (options, labels) => Array.isArray(options) ? options.map((val)
1776
1587
  },
1777
1588
  multiple: arg.type === "multi-select",
1778
1589
  style: inputStyle({ theme }),
1779
- children: options.map(({ label, key }) => jsx13("option", { value: key, children: label }, `${label}-${key}`))
1590
+ children: options.map(({ label, key }) => jsx11("option", { value: key, children: label }, `${label}-${key}`))
1780
1591
  }
1781
- ) : jsx13(View8, { children: arg.type === "multi-select" ? jsx13(SelectModal, { options, value, multiple: !0, onChange, children: jsx13(
1592
+ ) : jsx11(View7, { children: arg.type === "multi-select" ? jsx11(SelectModal, { options, value, multiple: !0, onChange, children: jsx11(
1782
1593
  Input,
1783
1594
  {
1784
1595
  editable: !1,
@@ -1786,7 +1597,7 @@ var getOptions = (options, labels) => Array.isArray(options) ? options.map((val)
1786
1597
  autoCapitalize: "none",
1787
1598
  underlineColorAndroid: "transparent"
1788
1599
  }
1789
- ) }) : jsx13(SelectModal, { options, value, onChange, children: jsx13(
1600
+ ) }) : jsx11(SelectModal, { options, value, onChange, children: jsx11(
1790
1601
  Input,
1791
1602
  {
1792
1603
  editable: !1,
@@ -1798,42 +1609,20 @@ var getOptions = (options, labels) => Array.isArray(options) ? options.map((val)
1798
1609
  }, Select_default = SelectType;
1799
1610
 
1800
1611
  // src/addon-ondevice-controls/types/Date.tsx
1801
- import { useTheme as useTheme3 } from "@aussieljk/forkbook/internal/react-native-theming";
1802
- import DateTimePicker from "@react-native-community/datetimepicker";
1803
- import { useMemo as useMemo5 } from "react";
1804
- import { Platform as Platform6, View as View9 } from "react-native";
1805
- import { jsx as jsx14 } from "react/jsx-runtime";
1612
+ import { DatePicker, Host as Host2 } from "@expo/ui/swift-ui";
1613
+ import { useMemo as useMemo4 } from "react";
1614
+ import { jsx as jsx12 } from "react/jsx-runtime";
1806
1615
  var DateType = ({ onChange, arg: { name, value } }) => {
1807
- let theme = useTheme3(), date = useMemo5(() => {
1616
+ let date = useMemo4(() => {
1808
1617
  let dateValue = new Date(value);
1809
1618
  return isNaN(dateValue.valueOf()) ? /* @__PURE__ */ new Date() : dateValue;
1810
- }, [value]), webDateString = useMemo5(
1811
- () => `${date.getFullYear()}-${`${date.getMonth() + 1}`.padStart(2, "0")}-${`${date.getDate()}`.padStart(
1812
- 2,
1813
- "0"
1814
- )}T${`${date.getHours()}`.padStart(2, "0")}:${`${date.getMinutes()}`.padStart(2, "0")}`,
1815
- [date]
1816
- );
1817
- return Platform6.OS === "web" ? jsx14(View9, { testID: name, children: jsx14(
1818
- "input",
1819
- {
1820
- type: "datetime-local",
1821
- defaultValue: webDateString,
1822
- onChange: (e) => {
1823
- let target = e.currentTarget, newDate = new Date(target.value);
1824
- onChange(newDate);
1825
- },
1826
- style: inputStyle({ theme })
1827
- }
1828
- ) }) : jsx14(View9, { testID: name, children: jsx14(
1829
- DateTimePicker,
1619
+ }, [value]);
1620
+ return jsx12(Host2, { matchContents: !0, testID: name, children: jsx12(
1621
+ DatePicker,
1830
1622
  {
1831
- value: date,
1832
- mode: "datetime",
1833
- display: "compact",
1834
- onChange: (_event, picked) => {
1835
- picked && onChange(picked);
1836
- }
1623
+ selection: date,
1624
+ displayedComponents: ["date", "hourAndMinute"],
1625
+ onDateChange: onChange
1837
1626
  }
1838
1627
  ) });
1839
1628
  };
@@ -1842,8 +1631,8 @@ DateType.deserialize = (value) => parseFloat(value);
1842
1631
  var Date_default = DateType;
1843
1632
 
1844
1633
  // src/addon-ondevice-controls/types/Array.tsx
1845
- import { useState as useState9 } from "react";
1846
- import { jsx as jsx15 } from "react/jsx-runtime";
1634
+ import { useState as useState8 } from "react";
1635
+ import { jsx as jsx13 } from "react/jsx-runtime";
1847
1636
  function formatArray(value, separator) {
1848
1637
  return value === "" ? [] : value.split(separator);
1849
1638
  }
@@ -1852,8 +1641,8 @@ var ArrayType = ({
1852
1641
  onChange = () => null,
1853
1642
  isPristine
1854
1643
  }) => {
1855
- let { setCurrentValue, key } = useResyncValue(value, isPristine), [focused, setFocused] = useState9(!1);
1856
- return jsx15(
1644
+ let { setCurrentValue, key } = useResyncValue(value, isPristine), [focused, setFocused] = useState8(!1);
1645
+ return jsx13(
1857
1646
  Input,
1858
1647
  {
1859
1648
  testID: name,
@@ -1876,23 +1665,23 @@ ArrayType.deserialize = (value) => Array.isArray(value) ? value : Object.keys(va
1876
1665
  var Array_default = ArrayType;
1877
1666
 
1878
1667
  // src/addon-ondevice-controls/types/Radio.tsx
1879
- import React2 from "react";
1668
+ import React from "react";
1880
1669
 
1881
1670
  // src/addon-ondevice-controls/components/RadioSelect.tsx
1882
- import { styled as styled8 } from "@aussieljk/forkbook/internal/react-native-theming";
1883
- import { jsx as jsx16, jsxs as jsxs7 } from "react/jsx-runtime";
1884
- var radioHitSlop = { top: 8, right: 12, bottom: 8, left: 12 }, RadioContainer = styled8.View(({ isInline }) => ({
1671
+ import { styled as styled7 } from "@aussieljk/forkbook/internal/react-native-theming";
1672
+ import { jsx as jsx14, jsxs as jsxs6 } from "react/jsx-runtime";
1673
+ var radioHitSlop = { top: 8, right: 12, bottom: 8, left: 12 }, RadioContainer = styled7.View(({ isInline }) => ({
1885
1674
  flexDirection: isInline ? "row" : "column",
1886
1675
  alignItems: isInline ? "center" : "flex-start",
1887
1676
  flexWrap: "wrap",
1888
1677
  gap: isInline ? 8 : 2
1889
- })), RadioTouchable = styled8.TouchableOpacity(({ isInline }) => ({
1678
+ })), RadioTouchable = styled7.TouchableOpacity(({ isInline }) => ({
1890
1679
  alignItems: "center",
1891
1680
  flexDirection: "row",
1892
1681
  minHeight: isInline ? 36 : 32,
1893
1682
  paddingVertical: isInline ? 4 : 2,
1894
1683
  paddingRight: 6
1895
- })), RadioCircle = styled8.View(({ theme }) => ({
1684
+ })), RadioCircle = styled7.View(({ theme }) => ({
1896
1685
  width: 20,
1897
1686
  height: 20,
1898
1687
  borderWidth: 2,
@@ -1901,16 +1690,16 @@ var radioHitSlop = { top: 8, right: 12, bottom: 8, left: 12 }, RadioContainer =
1901
1690
  backgroundColor: theme.background.content,
1902
1691
  alignItems: "center",
1903
1692
  justifyContent: "center"
1904
- })), RadioInnerCircle = styled8.View(({ theme, selected }) => ({
1693
+ })), RadioInnerCircle = styled7.View(({ theme, selected }) => ({
1905
1694
  width: 10,
1906
1695
  height: 10,
1907
1696
  borderRadius: 5,
1908
1697
  backgroundColor: selected ? theme.color.positive : theme.background.content
1909
- })), RadioLabel = styled8.Text(({ theme }) => ({
1698
+ })), RadioLabel = styled7.Text(({ theme }) => ({
1910
1699
  fontSize: theme.typography.size.s1 + 1,
1911
1700
  paddingStart: 12,
1912
1701
  color: theme.color.defaultText
1913
- })), RadioSelect = ({ data = [], value = "", onChange, isInline }) => jsx16(RadioContainer, { isInline, children: data.map((item) => jsxs7(
1702
+ })), RadioSelect = ({ data = [], value = "", onChange, isInline }) => jsx14(RadioContainer, { isInline, children: data.map((item) => jsxs6(
1914
1703
  RadioTouchable,
1915
1704
  {
1916
1705
  isInline,
@@ -1922,24 +1711,24 @@ var radioHitSlop = { top: 8, right: 12, bottom: 8, left: 12 }, RadioContainer =
1922
1711
  onChange(item);
1923
1712
  },
1924
1713
  children: [
1925
- jsx16(RadioCircle, { children: jsx16(RadioInnerCircle, { selected: value === item.key }) }),
1926
- jsx16(RadioLabel, { children: item.label })
1714
+ jsx14(RadioCircle, { children: jsx14(RadioInnerCircle, { selected: value === item.key }) }),
1715
+ jsx14(RadioLabel, { children: item.label })
1927
1716
  ]
1928
1717
  },
1929
1718
  item.label
1930
1719
  )) }), RadioSelect_default = RadioSelect;
1931
1720
 
1932
1721
  // src/addon-ondevice-controls/types/Radio.tsx
1933
- import { jsx as jsx17 } from "react/jsx-runtime";
1722
+ import { jsx as jsx15 } from "react/jsx-runtime";
1934
1723
  var getOptions2 = (arg) => arg.options ? arg.options : arg.control?.options ? arg.control.options : [], RadioType = ({ onChange, arg }) => {
1935
- let data = React2.useMemo(() => {
1724
+ let data = React.useMemo(() => {
1936
1725
  let options = getOptions2(arg);
1937
1726
  return Array.isArray(options) ? arg.control?.labels && Array.isArray(arg.control.labels) ? options.map((val, i) => ({ key: val, label: arg.control?.labels?.at(i) ?? val })) : options.map((val) => ({ key: val, label: val })) : Object.keys(options).map((key) => ({
1938
1727
  label: key,
1939
1728
  key: options[key]
1940
1729
  }));
1941
- }, [arg]), onChangeOption = React2.useCallback((option) => onChange(option.key), [onChange]);
1942
- return jsx17(
1730
+ }, [arg]), onChangeOption = React.useCallback((option) => onChange(option.key), [onChange]);
1731
+ return jsx15(
1943
1732
  RadioSelect_default,
1944
1733
  {
1945
1734
  isInline: arg.type === "inline-radio",
@@ -1970,29 +1759,29 @@ var types_default = {
1970
1759
  };
1971
1760
 
1972
1761
  // src/addon-ondevice-controls/PropField.tsx
1973
- import { jsx as jsx18, jsxs as jsxs8 } from "react/jsx-runtime";
1974
- var InvalidTypeText = styled9.Text(({ theme }) => ({
1762
+ import { jsx as jsx16, jsxs as jsxs7 } from "react/jsx-runtime";
1763
+ var InvalidTypeText = styled8.Text(({ theme }) => ({
1975
1764
  color: theme.color.negative
1976
- })), InvalidType = ({ arg }) => jsxs8(InvalidTypeText, { children: [
1765
+ })), InvalidType = ({ arg }) => jsxs7(InvalidTypeText, { children: [
1977
1766
  "Invalid type: ",
1978
1767
  arg.type
1979
1768
  ] }), PropField = ({ onChange, arg, isPristine }) => {
1980
1769
  let InputType = types_default[arg.type];
1981
- return InputType ? jsx18(InputType, { arg, isPristine, onChange }) : jsx18(InvalidType, { arg });
1770
+ return InputType ? jsx16(InputType, { arg, isPristine, onChange }) : jsx16(InvalidType, { arg });
1982
1771
  }, PropField_default = PropField;
1983
1772
 
1984
1773
  // src/addon-ondevice-controls/PropForm.tsx
1985
- import { Image as Image2, TouchableOpacity as TouchableOpacity2, View as View10 } from "react-native";
1986
- import { jsx as jsx19, jsxs as jsxs9 } from "react/jsx-runtime";
1987
- var Container2 = styled10.View(() => ({ paddingTop: 0 })), Label = styled10.Text(({ theme }) => ({
1774
+ import { Image as Image2, TouchableOpacity as TouchableOpacity2, View as View8 } from "react-native";
1775
+ import { jsx as jsx17, jsxs as jsxs8 } from "react/jsx-runtime";
1776
+ var Container2 = styled9.View(() => ({ paddingTop: 0 })), Label = styled9.Text(({ theme }) => ({
1988
1777
  fontSize: theme.typography.size.s2 - 1,
1989
1778
  fontWeight: "bold",
1990
1779
  color: theme.color.defaultText
1991
- })), TableHeaderText = styled10.Text(({ theme }) => ({
1780
+ })), TableHeaderText = styled9.Text(({ theme }) => ({
1992
1781
  fontWeight: "bold",
1993
1782
  fontSize: theme.typography.size.s2 - 1,
1994
1783
  color: theme.base === "light" ? curriedTransparentize$1(0.25, theme.color.defaultText) : curriedTransparentize$1(0.45, theme.color.defaultText)
1995
- })), TableRow = styled10.View(({ theme, hasBottomBorder }) => ({
1784
+ })), TableRow = styled9.View(({ theme, hasBottomBorder }) => ({
1996
1785
  flexDirection: "row",
1997
1786
  columnGap: 10,
1998
1787
  paddingVertical: 10,
@@ -2003,11 +1792,11 @@ var Container2 = styled10.View(() => ({ paddingTop: 0 })), Label = styled10.Text
2003
1792
  let makeChangeHandler = (name) => (value) => {
2004
1793
  onFieldChange({ [name]: value });
2005
1794
  };
2006
- return jsxs9(Container2, { children: [
2007
- jsxs9(TableRow, { hasBottomBorder: !0, children: [
2008
- jsx19(TableHeaderText, { style: { width: "25%", paddingVertical: 10 }, children: "Name" }),
2009
- jsxs9(
2010
- View10,
1795
+ return jsxs8(Container2, { children: [
1796
+ jsxs8(TableRow, { hasBottomBorder: !0, children: [
1797
+ jsx17(TableHeaderText, { style: { width: "25%", paddingVertical: 10 }, children: "Name" }),
1798
+ jsxs8(
1799
+ View8,
2011
1800
  {
2012
1801
  style: {
2013
1802
  width: "75%",
@@ -2016,8 +1805,8 @@ var Container2 = styled10.View(() => ({ paddingTop: 0 })), Label = styled10.Text
2016
1805
  alignItems: "center"
2017
1806
  },
2018
1807
  children: [
2019
- jsx19(TableHeaderText, { children: "Control" }),
2020
- jsx19(
1808
+ jsx17(TableHeaderText, { children: "Control" }),
1809
+ jsx17(
2021
1810
  TouchableOpacity2,
2022
1811
  {
2023
1812
  onPress: onReset,
@@ -2026,7 +1815,7 @@ var Container2 = styled10.View(() => ({ paddingTop: 0 })), Label = styled10.Text
2026
1815
  padding: 10
2027
1816
  },
2028
1817
  hitSlop: { top: 10, bottom: 10, left: 10, right: 10 },
2029
- children: jsx19(
1818
+ children: jsx17(
2030
1819
  Image2,
2031
1820
  {
2032
1821
  source: {
@@ -2045,9 +1834,9 @@ var Container2 = styled10.View(() => ({ paddingTop: 0 })), Label = styled10.Text
2045
1834
  ] }),
2046
1835
  Object.values(args).map((arg, i) => {
2047
1836
  let changeHandler = makeChangeHandler(arg.name);
2048
- return jsxs9(TableRow, { hasBottomBorder: i !== Object.values(args).length - 1, children: [
2049
- jsx19(Label, { style: { width: "25%" }, children: arg.name }),
2050
- jsx19(View10, { style: { width: "75%" }, children: jsx19(PropField_default, { arg, isPristine, onChange: changeHandler }) })
1837
+ return jsxs8(TableRow, { hasBottomBorder: i !== Object.values(args).length - 1, children: [
1838
+ jsx17(Label, { style: { width: "25%" }, children: arg.name }),
1839
+ jsx17(View8, { style: { width: "75%" }, children: jsx17(PropField_default, { arg, isPristine, onChange: changeHandler }) })
2051
1840
  ] }, arg.name);
2052
1841
  })
2053
1842
  ] });
@@ -2079,32 +1868,32 @@ function getControlArgTypes(argTypes, args) {
2079
1868
  }
2080
1869
 
2081
1870
  // src/addon-ondevice-controls/hooks.ts
2082
- import { useState as useState10, useEffect as useEffect5, useCallback as useCallback6 } from "react";
1871
+ import { useState as useState9, useEffect as useEffect4, useCallback as useCallback5 } from "react";
2083
1872
  import {
2084
1873
  UPDATE_STORY_ARGS,
2085
1874
  RESET_STORY_ARGS,
2086
1875
  STORY_ARGS_UPDATED
2087
1876
  } from "@aussieljk/forkbook/internal/core-events";
2088
1877
  var getControlArgs = (story) => story.unmappedArgs ?? story.args, useArgs = (storyId, storyStore) => {
2089
- let getStoryControlArgs = useCallback6(() => {
1878
+ let getStoryControlArgs = useCallback5(() => {
2090
1879
  let story = storyStore.fromId(storyId);
2091
1880
  if (!story)
2092
1881
  throw new Error(`Unknown story: ${storyId}`);
2093
1882
  return getControlArgs(story);
2094
- }, [storyId, storyStore]), [args, setArgs] = useState10(getStoryControlArgs);
2095
- useEffect5(() => {
1883
+ }, [storyId, storyStore]), [args, setArgs] = useState9(getStoryControlArgs);
1884
+ useEffect4(() => {
2096
1885
  setArgs(getStoryControlArgs());
2097
1886
  let cb = (changed) => {
2098
1887
  changed.storyId === storyId && setArgs(changed.args);
2099
1888
  };
2100
1889
  return storyStore._channel.on(STORY_ARGS_UPDATED, cb), () => storyStore._channel.off(STORY_ARGS_UPDATED, cb);
2101
1890
  }, [storyId]);
2102
- let updateArgs = useCallback6(
1891
+ let updateArgs = useCallback5(
2103
1892
  (newArgs) => {
2104
1893
  storyStore._channel.emit(UPDATE_STORY_ARGS, { storyId, updatedArgs: newArgs });
2105
1894
  },
2106
1895
  [storyId, storyStore]
2107
- ), resetArgs = useCallback6(
1896
+ ), resetArgs = useCallback5(
2108
1897
  (argNames) => {
2109
1898
  storyStore._channel.emit(RESET_STORY_ARGS, { storyId, argNames });
2110
1899
  },
@@ -2114,23 +1903,23 @@ var getControlArgs = (story) => story.unmappedArgs ?? story.args, useArgs = (sto
2114
1903
  };
2115
1904
 
2116
1905
  // src/addon-ondevice-controls/ControlsPanel.tsx
2117
- import { jsx as jsx20 } from "react/jsx-runtime";
1906
+ import { jsx as jsx18 } from "react/jsx-runtime";
2118
1907
  var ControlsPanel = ({ api }) => {
2119
- let store = api.store(), storyId = store.getSelection()?.storyId, [isPristine, setIsPristine] = useState11(!0), [argsFromHook, updateArgs, resetArgs] = useArgs(storyId, store), { argsObject, parameters } = React3.useMemo(() => {
1908
+ let store = api.store(), storyId = store.getSelection()?.storyId, [isPristine, setIsPristine] = useState10(!0), [argsFromHook, updateArgs, resetArgs] = useArgs(storyId, store), { argsObject, parameters } = React2.useMemo(() => {
2120
1909
  let { argTypes, parameters: storyParameters } = store.fromId(storyId);
2121
1910
  return {
2122
1911
  parameters: storyParameters,
2123
1912
  argsObject: getControlArgTypes(argTypes, argsFromHook)
2124
1913
  };
2125
- }, [store, storyId, argsFromHook]), hasControls = Object.keys(argsObject).length > 0, isArgsStory = parameters.__isArgsStory, showWarning = !(hasControls && isArgsStory), updateArgsOnFieldChange = useCallback7(
1914
+ }, [store, storyId, argsFromHook]), hasControls = Object.keys(argsObject).length > 0, isArgsStory = parameters.__isArgsStory, showWarning = !(hasControls && isArgsStory), updateArgsOnFieldChange = useCallback6(
2126
1915
  (args) => {
2127
1916
  updateArgs(args), setIsPristine(!1);
2128
1917
  },
2129
1918
  [updateArgs]
2130
- ), handleReset = useCallback7(() => {
1919
+ ), handleReset = useCallback6(() => {
2131
1920
  resetArgs(), setIsPristine(!0);
2132
1921
  }, [resetArgs]);
2133
- return showWarning ? jsx20(NoControlsWarning_default, {}) : jsx20(
1922
+ return showWarning ? jsx18(NoControlsWarning_default, {}) : jsx18(
2134
1923
  PropForm_default,
2135
1924
  {
2136
1925
  args: argsObject,
@@ -2142,19 +1931,19 @@ var ControlsPanel = ({ api }) => {
2142
1931
  }, ControlsPanel_default = ControlsPanel;
2143
1932
 
2144
1933
  // src/addon-ondevice-controls/Panel.tsx
2145
- import { Fragment as Fragment2, jsx as jsx21 } from "react/jsx-runtime";
2146
- var AddonPanel = ({ children }) => jsx21(Fragment2, { children });
1934
+ import { Fragment as Fragment2, jsx as jsx19 } from "react/jsx-runtime";
1935
+ var AddonPanel = ({ children }) => jsx19(Fragment2, { children });
2147
1936
  AddonPanel.displayName = "AddonPanel";
2148
1937
 
2149
1938
  // src/addon-ondevice-controls/index.tsx
2150
- import { jsx as jsx22 } from "react/jsx-runtime";
1939
+ import { jsx as jsx20 } from "react/jsx-runtime";
2151
1940
  var ADDON_ID = "RNCONTROLS", PARAM_KEY = "controls";
2152
1941
  function register() {
2153
1942
  addons.register(ADDON_ID, (api) => {
2154
1943
  addons.add(ADDON_ID, {
2155
1944
  type: types.PANEL,
2156
1945
  title: "Controls",
2157
- render: ({ active }) => jsx22(AddonPanel, { active, children: jsx22(ControlsPanel_default, { api }) }),
1946
+ render: ({ active }) => jsx20(AddonPanel, { active, children: jsx20(ControlsPanel_default, { api }) }),
2158
1947
  paramKey: PARAM_KEY
2159
1948
  });
2160
1949
  });