@shopify/hydrogen-react 0.0.0-next-022e862 → 0.0.0-next-c23a62a

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 (230) hide show
  1. package/dist/dev/CartProvider.js +20 -20
  2. package/dist/dev/CartProvider.js.map +1 -1
  3. package/dist/dev/Metafield.js +8 -2
  4. package/dist/dev/Metafield.js.map +1 -1
  5. package/dist/dev/Metafield.mjs +6 -0
  6. package/dist/dev/Metafield.mjs.map +1 -1
  7. package/dist/dev/ModelViewer.js +4 -4
  8. package/dist/dev/ModelViewer.js.map +1 -1
  9. package/dist/dev/ProductProvider.js +14 -14
  10. package/dist/dev/ProductProvider.js.map +1 -1
  11. package/dist/dev/ShopifyProvider.js +4 -4
  12. package/dist/dev/ShopifyProvider.js.map +1 -1
  13. package/dist/dev/Video.js +2 -2
  14. package/dist/dev/_virtual/index.js +5 -0
  15. package/dist/dev/_virtual/index.js.map +1 -0
  16. package/dist/dev/_virtual/index.mjs +5 -0
  17. package/dist/dev/_virtual/index.mjs.map +1 -0
  18. package/dist/dev/_virtual/index2.js +5 -0
  19. package/dist/dev/_virtual/index2.js.map +1 -0
  20. package/dist/dev/_virtual/index2.mjs +5 -0
  21. package/dist/dev/_virtual/index2.mjs.map +1 -0
  22. package/dist/dev/_virtual/use-sync-external-store-shim.development.js +5 -0
  23. package/dist/dev/_virtual/use-sync-external-store-shim.development.js.map +1 -0
  24. package/dist/dev/_virtual/use-sync-external-store-shim.development.mjs +5 -0
  25. package/dist/dev/_virtual/use-sync-external-store-shim.development.mjs.map +1 -0
  26. package/dist/dev/_virtual/use-sync-external-store-shim.production.min.js +5 -0
  27. package/dist/dev/_virtual/use-sync-external-store-shim.production.min.js.map +1 -0
  28. package/dist/dev/_virtual/use-sync-external-store-shim.production.min.mjs +5 -0
  29. package/dist/dev/_virtual/use-sync-external-store-shim.production.min.mjs.map +1 -0
  30. package/dist/dev/_virtual/with-selector.development.js +5 -0
  31. package/dist/dev/_virtual/with-selector.development.js.map +1 -0
  32. package/dist/dev/_virtual/with-selector.development.mjs +5 -0
  33. package/dist/dev/_virtual/with-selector.development.mjs.map +1 -0
  34. package/dist/dev/_virtual/with-selector.js +5 -0
  35. package/dist/dev/_virtual/with-selector.js.map +1 -0
  36. package/dist/dev/_virtual/with-selector.mjs +5 -0
  37. package/dist/dev/_virtual/with-selector.mjs.map +1 -0
  38. package/dist/dev/_virtual/with-selector.production.min.js +5 -0
  39. package/dist/dev/_virtual/with-selector.production.min.js.map +1 -0
  40. package/dist/dev/_virtual/with-selector.production.min.mjs +5 -0
  41. package/dist/dev/_virtual/with-selector.production.min.mjs.map +1 -0
  42. package/dist/dev/cart-hooks.js +4 -4
  43. package/dist/dev/cart-hooks.js.map +1 -1
  44. package/dist/dev/cart-hooks.mjs +3 -3
  45. package/dist/dev/cart-hooks.mjs.map +1 -1
  46. package/dist/dev/index.js +2 -0
  47. package/dist/dev/index.js.map +1 -1
  48. package/dist/dev/index.mjs +2 -0
  49. package/dist/dev/index.mjs.map +1 -1
  50. package/dist/dev/load-script.js +3 -3
  51. package/dist/dev/load-script.js.map +1 -1
  52. package/dist/dev/metafield-parser.js +105 -0
  53. package/dist/dev/metafield-parser.js.map +1 -0
  54. package/dist/dev/metafield-parser.mjs +105 -0
  55. package/dist/dev/metafield-parser.mjs.map +1 -0
  56. package/dist/dev/node_modules/@xstate/fsm/es/index.js +158 -0
  57. package/dist/dev/node_modules/@xstate/fsm/es/index.js.map +1 -0
  58. package/dist/dev/node_modules/@xstate/fsm/es/index.mjs +159 -0
  59. package/dist/dev/node_modules/@xstate/fsm/es/index.mjs.map +1 -0
  60. package/dist/dev/node_modules/@xstate/react/es/fsm.js +94 -0
  61. package/dist/dev/node_modules/@xstate/react/es/fsm.js.map +1 -0
  62. package/dist/dev/node_modules/@xstate/react/es/fsm.mjs +94 -0
  63. package/dist/dev/node_modules/@xstate/react/es/fsm.mjs.map +1 -0
  64. package/dist/dev/node_modules/@xstate/react/es/useConstant.js +30 -0
  65. package/dist/dev/node_modules/@xstate/react/es/useConstant.js.map +1 -0
  66. package/dist/dev/node_modules/@xstate/react/es/useConstant.mjs +12 -0
  67. package/dist/dev/node_modules/@xstate/react/es/useConstant.mjs.map +1 -0
  68. package/dist/dev/node_modules/ts-expect/dist/index.js +13 -0
  69. package/dist/dev/node_modules/ts-expect/dist/index.js.map +1 -0
  70. package/dist/dev/node_modules/ts-expect/dist/index.mjs +15 -0
  71. package/dist/dev/node_modules/ts-expect/dist/index.mjs.map +1 -0
  72. package/dist/dev/node_modules/use-isomorphic-layout-effect/dist/use-isomorphic-layout-effect.browser.esm.js +5 -0
  73. package/dist/dev/node_modules/use-isomorphic-layout-effect/dist/use-isomorphic-layout-effect.browser.esm.js.map +1 -0
  74. package/dist/dev/node_modules/use-isomorphic-layout-effect/dist/use-isomorphic-layout-effect.browser.esm.mjs +6 -0
  75. package/dist/dev/node_modules/use-isomorphic-layout-effect/dist/use-isomorphic-layout-effect.browser.esm.mjs.map +1 -0
  76. package/dist/dev/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim/with-selector.development.js +107 -0
  77. package/dist/dev/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim/with-selector.development.js.map +1 -0
  78. package/dist/dev/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim/with-selector.development.mjs +105 -0
  79. package/dist/dev/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim/with-selector.development.mjs.map +1 -0
  80. package/dist/dev/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim/with-selector.production.min.js +74 -0
  81. package/dist/dev/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim/with-selector.production.min.js.map +1 -0
  82. package/dist/dev/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim/with-selector.production.min.mjs +72 -0
  83. package/dist/dev/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim/with-selector.production.min.mjs.map +1 -0
  84. package/dist/dev/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.development.js +138 -0
  85. package/dist/dev/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.development.js.map +1 -0
  86. package/dist/dev/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.development.mjs +136 -0
  87. package/dist/dev/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.development.mjs.map +1 -0
  88. package/dist/dev/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.production.min.js +60 -0
  89. package/dist/dev/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.production.min.js.map +1 -0
  90. package/dist/dev/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.production.min.mjs +58 -0
  91. package/dist/dev/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.production.min.mjs.map +1 -0
  92. package/dist/dev/node_modules/use-sync-external-store/shim/index.js +21 -0
  93. package/dist/dev/node_modules/use-sync-external-store/shim/index.js.map +1 -0
  94. package/dist/dev/node_modules/use-sync-external-store/shim/index.mjs +21 -0
  95. package/dist/dev/node_modules/use-sync-external-store/shim/index.mjs.map +1 -0
  96. package/dist/dev/node_modules/use-sync-external-store/shim/with-selector.js +12 -0
  97. package/dist/dev/node_modules/use-sync-external-store/shim/with-selector.js.map +1 -0
  98. package/dist/dev/node_modules/use-sync-external-store/shim/with-selector.mjs +11 -0
  99. package/dist/dev/node_modules/use-sync-external-store/shim/with-selector.mjs.map +1 -0
  100. package/dist/dev/node_modules/worktop/cookie/index.js +27 -0
  101. package/dist/dev/node_modules/worktop/cookie/index.js.map +1 -0
  102. package/dist/dev/node_modules/worktop/cookie/index.mjs +27 -0
  103. package/dist/dev/node_modules/worktop/cookie/index.mjs.map +1 -0
  104. package/dist/dev/useCartAPIStateMachine.js +12 -12
  105. package/dist/dev/useCartAPIStateMachine.js.map +1 -1
  106. package/dist/dev/useCartAPIStateMachine.mjs +8 -8
  107. package/dist/dev/useCartAPIStateMachine.mjs.map +1 -1
  108. package/dist/dev/useCartActions.js +11 -11
  109. package/dist/dev/useCartActions.js.map +1 -1
  110. package/dist/dev/useMoney.js +5 -5
  111. package/dist/dev/useMoney.js.map +1 -1
  112. package/dist/prod/CartProvider.js +20 -20
  113. package/dist/prod/CartProvider.js.map +1 -1
  114. package/dist/prod/Metafield.js +2 -2
  115. package/dist/prod/Metafield.js.map +1 -1
  116. package/dist/prod/Metafield.mjs.map +1 -1
  117. package/dist/prod/ModelViewer.js +4 -4
  118. package/dist/prod/ModelViewer.js.map +1 -1
  119. package/dist/prod/ProductProvider.js +14 -14
  120. package/dist/prod/ProductProvider.js.map +1 -1
  121. package/dist/prod/ShopifyProvider.js +4 -4
  122. package/dist/prod/ShopifyProvider.js.map +1 -1
  123. package/dist/prod/Video.js +2 -2
  124. package/dist/prod/_virtual/index.js +5 -0
  125. package/dist/prod/_virtual/index.js.map +1 -0
  126. package/dist/prod/_virtual/index.mjs +5 -0
  127. package/dist/prod/_virtual/index.mjs.map +1 -0
  128. package/dist/prod/_virtual/index2.js +5 -0
  129. package/dist/prod/_virtual/index2.js.map +1 -0
  130. package/dist/prod/_virtual/index2.mjs +5 -0
  131. package/dist/prod/_virtual/index2.mjs.map +1 -0
  132. package/dist/prod/_virtual/use-sync-external-store-shim.development.js +5 -0
  133. package/dist/prod/_virtual/use-sync-external-store-shim.development.js.map +1 -0
  134. package/dist/prod/_virtual/use-sync-external-store-shim.development.mjs +5 -0
  135. package/dist/prod/_virtual/use-sync-external-store-shim.development.mjs.map +1 -0
  136. package/dist/prod/_virtual/use-sync-external-store-shim.production.min.js +5 -0
  137. package/dist/prod/_virtual/use-sync-external-store-shim.production.min.js.map +1 -0
  138. package/dist/prod/_virtual/use-sync-external-store-shim.production.min.mjs +5 -0
  139. package/dist/prod/_virtual/use-sync-external-store-shim.production.min.mjs.map +1 -0
  140. package/dist/prod/_virtual/with-selector.development.js +5 -0
  141. package/dist/prod/_virtual/with-selector.development.js.map +1 -0
  142. package/dist/prod/_virtual/with-selector.development.mjs +5 -0
  143. package/dist/prod/_virtual/with-selector.development.mjs.map +1 -0
  144. package/dist/prod/_virtual/with-selector.js +5 -0
  145. package/dist/prod/_virtual/with-selector.js.map +1 -0
  146. package/dist/prod/_virtual/with-selector.mjs +5 -0
  147. package/dist/prod/_virtual/with-selector.mjs.map +1 -0
  148. package/dist/prod/_virtual/with-selector.production.min.js +5 -0
  149. package/dist/prod/_virtual/with-selector.production.min.js.map +1 -0
  150. package/dist/prod/_virtual/with-selector.production.min.mjs +5 -0
  151. package/dist/prod/_virtual/with-selector.production.min.mjs.map +1 -0
  152. package/dist/prod/cart-hooks.js +4 -4
  153. package/dist/prod/cart-hooks.js.map +1 -1
  154. package/dist/prod/cart-hooks.mjs +3 -3
  155. package/dist/prod/cart-hooks.mjs.map +1 -1
  156. package/dist/prod/index.js +2 -0
  157. package/dist/prod/index.js.map +1 -1
  158. package/dist/prod/index.mjs +2 -0
  159. package/dist/prod/index.mjs.map +1 -1
  160. package/dist/prod/load-script.js +3 -3
  161. package/dist/prod/load-script.js.map +1 -1
  162. package/dist/prod/metafield-parser.js +116 -0
  163. package/dist/prod/metafield-parser.js.map +1 -0
  164. package/dist/prod/metafield-parser.mjs +116 -0
  165. package/dist/prod/metafield-parser.mjs.map +1 -0
  166. package/dist/prod/node_modules/@xstate/fsm/es/index.js +158 -0
  167. package/dist/prod/node_modules/@xstate/fsm/es/index.js.map +1 -0
  168. package/dist/prod/node_modules/@xstate/fsm/es/index.mjs +159 -0
  169. package/dist/prod/node_modules/@xstate/fsm/es/index.mjs.map +1 -0
  170. package/dist/prod/node_modules/@xstate/react/es/fsm.js +94 -0
  171. package/dist/prod/node_modules/@xstate/react/es/fsm.js.map +1 -0
  172. package/dist/prod/node_modules/@xstate/react/es/fsm.mjs +94 -0
  173. package/dist/prod/node_modules/@xstate/react/es/fsm.mjs.map +1 -0
  174. package/dist/prod/node_modules/@xstate/react/es/useConstant.js +30 -0
  175. package/dist/prod/node_modules/@xstate/react/es/useConstant.js.map +1 -0
  176. package/dist/prod/node_modules/@xstate/react/es/useConstant.mjs +12 -0
  177. package/dist/prod/node_modules/@xstate/react/es/useConstant.mjs.map +1 -0
  178. package/dist/prod/node_modules/ts-expect/dist/index.js +13 -0
  179. package/dist/prod/node_modules/ts-expect/dist/index.js.map +1 -0
  180. package/dist/prod/node_modules/ts-expect/dist/index.mjs +15 -0
  181. package/dist/prod/node_modules/ts-expect/dist/index.mjs.map +1 -0
  182. package/dist/prod/node_modules/use-isomorphic-layout-effect/dist/use-isomorphic-layout-effect.browser.esm.js +5 -0
  183. package/dist/prod/node_modules/use-isomorphic-layout-effect/dist/use-isomorphic-layout-effect.browser.esm.js.map +1 -0
  184. package/dist/prod/node_modules/use-isomorphic-layout-effect/dist/use-isomorphic-layout-effect.browser.esm.mjs +6 -0
  185. package/dist/prod/node_modules/use-isomorphic-layout-effect/dist/use-isomorphic-layout-effect.browser.esm.mjs.map +1 -0
  186. package/dist/prod/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim/with-selector.development.js +107 -0
  187. package/dist/prod/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim/with-selector.development.js.map +1 -0
  188. package/dist/prod/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim/with-selector.development.mjs +105 -0
  189. package/dist/prod/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim/with-selector.development.mjs.map +1 -0
  190. package/dist/prod/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim/with-selector.production.min.js +74 -0
  191. package/dist/prod/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim/with-selector.production.min.js.map +1 -0
  192. package/dist/prod/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim/with-selector.production.min.mjs +72 -0
  193. package/dist/prod/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim/with-selector.production.min.mjs.map +1 -0
  194. package/dist/prod/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.development.js +138 -0
  195. package/dist/prod/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.development.js.map +1 -0
  196. package/dist/prod/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.development.mjs +136 -0
  197. package/dist/prod/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.development.mjs.map +1 -0
  198. package/dist/prod/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.production.min.js +60 -0
  199. package/dist/prod/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.production.min.js.map +1 -0
  200. package/dist/prod/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.production.min.mjs +58 -0
  201. package/dist/prod/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.production.min.mjs.map +1 -0
  202. package/dist/prod/node_modules/use-sync-external-store/shim/index.js +21 -0
  203. package/dist/prod/node_modules/use-sync-external-store/shim/index.js.map +1 -0
  204. package/dist/prod/node_modules/use-sync-external-store/shim/index.mjs +21 -0
  205. package/dist/prod/node_modules/use-sync-external-store/shim/index.mjs.map +1 -0
  206. package/dist/prod/node_modules/use-sync-external-store/shim/with-selector.js +12 -0
  207. package/dist/prod/node_modules/use-sync-external-store/shim/with-selector.js.map +1 -0
  208. package/dist/prod/node_modules/use-sync-external-store/shim/with-selector.mjs +11 -0
  209. package/dist/prod/node_modules/use-sync-external-store/shim/with-selector.mjs.map +1 -0
  210. package/dist/prod/node_modules/worktop/cookie/index.js +27 -0
  211. package/dist/prod/node_modules/worktop/cookie/index.js.map +1 -0
  212. package/dist/prod/node_modules/worktop/cookie/index.mjs +27 -0
  213. package/dist/prod/node_modules/worktop/cookie/index.mjs.map +1 -0
  214. package/dist/prod/useCartAPIStateMachine.js +12 -12
  215. package/dist/prod/useCartAPIStateMachine.js.map +1 -1
  216. package/dist/prod/useCartAPIStateMachine.mjs +8 -8
  217. package/dist/prod/useCartAPIStateMachine.mjs.map +1 -1
  218. package/dist/prod/useCartActions.js +11 -11
  219. package/dist/prod/useCartActions.js.map +1 -1
  220. package/dist/prod/useMoney.js +5 -5
  221. package/dist/prod/useMoney.js.map +1 -1
  222. package/dist/types/Metafield.d.ts +3 -0
  223. package/dist/types/index.d.cts +1 -0
  224. package/dist/types/index.d.ts +1 -0
  225. package/dist/types/metafield-parser.d.ts +222 -0
  226. package/dist/umd/hydrogen-react.dev.js +114 -0
  227. package/dist/umd/hydrogen-react.dev.js.map +1 -1
  228. package/dist/umd/hydrogen-react.prod.js +17 -17
  229. package/dist/umd/hydrogen-react.prod.js.map +1 -1
  230. package/package.json +2 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"metafield-parser.mjs","sources":["../../src/metafield-parser.ts"],"sourcesContent":["import type {\n Collection,\n GenericFile,\n Metafield as MetafieldBaseType,\n MoneyV2,\n Page,\n Product,\n ProductVariant,\n} from './storefront-api-types.js';\nimport type {PartialDeep, Simplify} from 'type-fest';\nimport {parseJSON} from './Metafield.js';\nimport {TypeEqual, expectType} from 'ts-expect';\nimport {flattenConnection} from './flatten-connection.js';\n\n/**\n * A temporary function that will be renamed to `parseMetafield()` in a future release.\n *\n * A function that uses `metafield.type` to parse the Metafield's `value` or `reference` or `references` (depending on the `type`) and put it in `metafield.parsedValue`\n *\n * TypeScript developers can use the type `ParsedMetafields` from this package to get the returned object's type correct. For example:\n *\n * ```\n * metafieldParser<ParsedMetafields['boolean']>({type: 'boolean', value: 'false'}\n * ```\n */\nexport function metafieldParser<ReturnGeneric>(\n metafield: PartialDeep<MetafieldBaseType, {recurseIntoArrays: true}>\n): ReturnGeneric {\n if (!metafield.type) {\n const noTypeError = `metafieldParser(): The 'type' field is required in order to parse the Metafield.`;\n if (__HYDROGEN_DEV__) {\n throw new Error(noTypeError);\n } else {\n console.error(`${noTypeError} Returning 'parsedValue' of 'null'`);\n return {\n ...metafield,\n parsedValue: null,\n } as ReturnGeneric;\n }\n }\n\n switch (metafield.type) {\n case 'boolean':\n return {\n ...metafield,\n parsedValue: metafield.value === 'true',\n } as ReturnGeneric;\n\n case 'collection_reference':\n case 'file_reference':\n case 'page_reference':\n case 'product_reference':\n case 'variant_reference':\n return {\n ...metafield,\n parsedValue: metafield.reference,\n } as ReturnGeneric;\n\n case 'color':\n case 'multi_line_text_field':\n case 'single_line_text_field':\n case 'url':\n return {\n ...metafield,\n parsedValue: metafield.value,\n } as ReturnGeneric;\n\n // TODO: 'money' should probably be parsed even further to like `useMoney()`, but that logic needs to be extracted first so it's not a hook\n case 'dimension':\n case 'money':\n case 'json':\n case 'rating':\n case 'volume':\n case 'weight':\n case 'list.color':\n case 'list.dimension':\n case 'list.number_integer':\n case 'list.number_decimal':\n case 'list.rating':\n case 'list.single_line_text_field':\n case 'list.url':\n case 'list.volume':\n case 'list.weight': {\n let parsedValue = null;\n try {\n parsedValue = parseJSON(metafield.value ?? '');\n } catch (err) {\n const parseError = `metafieldParser(): attempted to JSON.parse the 'metafield.value' property, but failed.`;\n if (__HYDROGEN_DEV__) {\n throw new Error(parseError);\n } else {\n console.error(`${parseError} Returning 'null' for 'parsedValue'`);\n }\n parsedValue = null;\n }\n return {\n ...metafield,\n parsedValue,\n } as ReturnGeneric;\n }\n\n case 'date':\n case 'date_time':\n return {\n ...metafield,\n parsedValue: new Date(metafield.value ?? ''),\n } as ReturnGeneric;\n\n case 'list.date':\n case 'list.date_time': {\n const jsonParseValue = parseJSON(metafield?.value ?? '') as string[];\n return {\n ...metafield,\n parsedValue: jsonParseValue.map((dateString) => new Date(dateString)),\n } as ReturnGeneric;\n }\n\n case 'number_decimal':\n case 'number_integer':\n return {\n ...metafield,\n parsedValue: Number(metafield.value),\n } as ReturnGeneric;\n\n case 'list.collection_reference':\n case 'list.file_reference':\n case 'list.page_reference':\n case 'list.product_reference':\n case 'list.variant_reference':\n return {\n ...metafield,\n parsedValue: flattenConnection(metafield.references ?? undefined),\n } as ReturnGeneric;\n\n default: {\n const typeNotFoundError = `metafieldParser(): the 'metafield.type' you passed in is not supported. Your type: \"${metafield.type}\". If you believe this is an error, please open an issue on GitHub.`;\n if (__HYDROGEN_DEV__) {\n throw new Error(typeNotFoundError);\n } else {\n console.error(\n `${typeNotFoundError} Returning 'parsedValue' of 'null'`\n );\n return {\n ...metafield,\n parsedValue: null,\n } as ReturnGeneric;\n }\n }\n }\n}\n\n// taken from https://shopify.dev/apps/metafields/types\nexport const allMetafieldTypesArray = [\n 'boolean',\n 'collection_reference',\n 'color',\n 'date',\n 'date_time',\n 'dimension',\n 'file_reference',\n 'json',\n 'money',\n 'multi_line_text_field',\n 'number_decimal',\n 'number_integer',\n 'page_reference',\n 'product_reference',\n 'rating',\n 'single_line_text_field',\n 'url',\n 'variant_reference',\n 'volume',\n 'weight',\n // list metafields\n 'list.collection_reference',\n 'list.color',\n 'list.date',\n 'list.date_time',\n 'list.dimension',\n 'list.file_reference',\n 'list.number_integer',\n 'list.number_decimal',\n 'list.page_reference',\n 'list.product_reference',\n 'list.rating',\n 'list.single_line_text_field',\n 'list.url',\n 'list.variant_reference',\n 'list.volume',\n 'list.weight',\n] as const;\n\n/** A union of all the supported `metafield.type`s */\nexport type MetafieldTypeTypes = typeof allMetafieldTypesArray[number];\n\n/**\n * A mapping of a Metafield's `type` to the TypeScript type that is returned from `metafieldParser()`\n * For example, when using `metafieldParser()`, the type will be correctly returned when used like the following:\n *\n * ```\n * const parsedMetafield = metafieldParser<ParsedMetafields['boolean']>(metafield);`\n * ```\n * `parsedMetafield.parsedValue`'s type is now `boolean`\n */\nexport type ParsedMetafields<ExtraTypeGeneric = void> = {\n /** A Metafield that's been parsed, with a `parsedValue` of `boolean` */\n boolean: Simplify<BooleanParsedMetafield>;\n /** A Metafield that's been parsed, with a `parsedValue` of a `Collection` object (as defined by the Storefront API) */\n collection_reference: Simplify<CollectionParsedRefMetafield>;\n /** A Metafield that's been parsed, with a `parsedValue` of type `string` */\n color: Simplify<ColorParsedMetafield>;\n /** A Metafield that's been parsed, with a `parsedValue` of type `Date` */\n date: Simplify<DatesParsedMetafield>;\n /** A Metafield that's been parsed, with a `parsedValue` of type `Date` */\n date_time: Simplify<DatesParsedMetafield>;\n /** A Metafield that's been parsed, with a `parsedValue` of type `Measurement` */\n dimension: Simplify<MeasurementParsedMetafield>;\n /** A Metafield that's been parsed, with a `parsedValue` of a `GenericFile` object (as defined by the Storefront API) */\n file_reference: Simplify<FileRefParsedMetafield>;\n /**\n * A Metafield that's been parsed, with a `parsedValue` of type `unknown`, unless you pass in the type as a generic. For example:\n *\n * ```\n * ParsedMetafields<MyJsonType>['json']\n * ```\n */\n json: Simplify<JsonParsedMetafield<ExtraTypeGeneric>>;\n /** A Metafield that's been parsed, with a `parsedValue` of type `Money` */\n money: Simplify<MoneyParsedMetafield>;\n /** A Metafield that's been parsed, with a `parsedValue` of type `string` */\n multi_line_text_field: Simplify<TextParsedMetafield>;\n /** A Metafield that's been parsed, with a `parsedValue` of type `number` */\n number_decimal: Simplify<NumberParsedMetafield>;\n /** A Metafield that's been parsed, with a `parsedValue` of type `number` */\n number_integer: Simplify<NumberParsedMetafield>;\n /** A Metafield that's been parsed, with a `parsedValue` of a `Page` object (as defined by the Storefront API) */\n page_reference: Simplify<PageParsedRefMetafield>;\n /** A Metafield that's been parsed, with a `parsedValue` of a `Product` object (as defined by the Storefront API) */\n product_reference: Simplify<ProductParsedRefMetafield>;\n /** A Metafield that's been parsed, with a `parsedValue` of type `Rating` */\n rating: Simplify<RatingParsedMetafield>;\n /** A Metafield that's been parsed, with a `parsedValue` of type `string` */\n single_line_text_field: Simplify<TextParsedMetafield>;\n /** A Metafield that's been parsed, with a `parsedValue` of type `string` */\n url: Simplify<TextParsedMetafield>;\n /** A Metafield that's been parsed, with a `parsedValue` of a `ProductVariant` object (as defined by the Storefront API) */\n variant_reference: Simplify<VariantParsedRefMetafield>;\n /** A Metafield that's been parsed, with a `parsedValue` of type `Measurement` */\n volume: Simplify<MeasurementParsedMetafield>;\n /** A Metafield that's been parsed, with a `parsedValue` of type `Measurement` */\n weight: Simplify<MeasurementParsedMetafield>;\n // list metafields\n /** A Metafield that's been parsed, with a `parsedValue` of an array of `Collection` objects (as defined by the Storefront API) */\n 'list.collection_reference': Simplify<CollectionListParsedRefMetafield>;\n /** A Metafield that's been parsed, with a `parsedValue` of an array of strings */\n 'list.color': Simplify<ColorListParsedMetafield>;\n /** A Metafield that's been parsed, with a `parsedValue` of an array of Date objects */\n 'list.date': Simplify<DatesListParsedMetafield>;\n /** A Metafield that's been parsed, with a `parsedValue` of an array of Date objects */\n 'list.date_time': Simplify<DatesListParsedMetafield>;\n /** A Metafield that's been parsed, with a `parsedValue` of an array of `Measurement` objects */\n 'list.dimension': Simplify<MeasurementListParsedMetafield>;\n /** A Metafield that's been parsed, with a `parsedValue` of an array of `GenericFile` objects (as defined by the Storefront API) */\n 'list.file_reference': Simplify<FileListParsedRefMetafield>;\n /** A Metafield that's been parsed, with a `parsedValue` of an array of numbers */\n 'list.number_integer': Simplify<NumberListParsedMetafield>;\n /** A Metafield that's been parsed, with a `parsedValue` of an array of numbers */\n 'list.number_decimal': Simplify<NumberListParsedMetafield>;\n /** A Metafield that's been parsed, with a `parsedValue` of an array of `Page` objects (as defined by the Storefront API) */\n 'list.page_reference': Simplify<PageListParsedRefMetafield>;\n /** A Metafield that's been parsed, with a `parsedValue` of an array of `Product` objects (as defined by the Storefront API) */\n 'list.product_reference': Simplify<ProductListParsedRefMetafield>;\n /** A Metafield that's been parsed, with a `parsedValue` of an array of `Rating`s */\n 'list.rating': Simplify<RatingListParsedMetafield>;\n /** A Metafield that's been parsed, with a `parsedValue` of an array of strings */\n 'list.single_line_text_field': Simplify<TextListParsedMetafield>;\n /** A Metafield that's been parsed, with a `parsedValue` of an array of strings */\n 'list.url': Simplify<TextListParsedMetafield>;\n /** A Metafield that's been parsed, with a `parsedValue` of an array of `ProductVariant` objects (as defined by the Storefront API) */\n 'list.variant_reference': Simplify<VariantListParsedRefMetafield>;\n /** A Metafield that's been parsed, with a `parsedValue` of an array of `Measurement`s */\n 'list.volume': Simplify<MeasurementListParsedMetafield>;\n /** A Metafield that's been parsed, with a `parsedValue` of an array of `Measurement`s */\n 'list.weight': Simplify<MeasurementListParsedMetafield>;\n};\n\n// This test is to ensure that ParsedMetafields has a key for every item in 'allMetafieldsTypesArray'\nexpectType<TypeEqual<keyof ParsedMetafields, MetafieldTypeTypes>>(true);\n\ninterface ParsedBase extends MetafieldBaseType {\n type: MetafieldTypeTypes;\n parsedValue: unknown;\n}\n\ninterface BooleanParsedMetafield extends ParsedBase {\n type: 'boolean';\n parsedValue: boolean | null;\n}\ntype CollectionParsedRefMetafield = MetafieldBaseType & {\n type: 'collection_reference';\n parsedValue: Collection | null;\n};\ntype ColorParsedMetafield = MetafieldBaseType & {\n type: 'color';\n parsedValue: string | null;\n};\ntype DatesParsedMetafield = MetafieldBaseType & {\n type: 'date' | 'date_time';\n parsedValue: Date | null;\n};\n\ntype MeasurementParsedMetafield = MetafieldBaseType & {\n type: 'dimension' | 'weight' | 'volume';\n parsedValue: Measurement | null;\n};\n\ntype FileRefParsedMetafield = MetafieldBaseType & {\n type: 'file_reference';\n parsedValue: GenericFile | null;\n};\n\ntype JsonParsedMetafield<JsonTypeGeneric = void> = MetafieldBaseType & {\n type: 'json';\n parsedValue: JsonTypeGeneric extends void ? unknown : JsonTypeGeneric | null;\n};\n\ntype MoneyParsedMetafield = MetafieldBaseType & {\n type: 'money';\n parsedValue: MoneyV2 | null;\n};\n\ntype TextParsedMetafield = MetafieldBaseType & {\n type: 'single_line_text_field' | 'multi_line_text_field' | 'url';\n parsedValue: string | null;\n};\n\ntype NumberParsedMetafield = MetafieldBaseType & {\n type: 'number_decimal' | 'number_integer';\n parsedValue: number | null;\n};\n\ntype PageParsedRefMetafield = MetafieldBaseType & {\n type: 'page_reference';\n parsedValue: Page | null;\n};\n\ntype ProductParsedRefMetafield = MetafieldBaseType & {\n type: 'product_reference';\n parsedValue: Product | null;\n};\n\ntype RatingParsedMetafield = MetafieldBaseType & {\n type: 'rating';\n parsedValue: Rating | null;\n};\n\ntype VariantParsedRefMetafield = MetafieldBaseType & {\n type: 'variant_reference';\n parsedValue: ProductVariant | null;\n};\n\ntype CollectionListParsedRefMetafield = MetafieldBaseType & {\n type: 'list.collection_reference';\n parsedValue: Array<Collection> | null;\n};\n\ntype ColorListParsedMetafield = MetafieldBaseType & {\n type: 'list.color';\n parsedValue: Array<string> | null;\n};\n\ntype DatesListParsedMetafield = MetafieldBaseType & {\n type: 'list.date' | 'list.date_time';\n parsedValue: Array<Date> | null;\n};\n\ntype MeasurementListParsedMetafield = MetafieldBaseType & {\n type: 'list.dimension' | 'list.weight' | 'list.volume';\n parsedValue: Array<Measurement> | null;\n};\n\ntype FileListParsedRefMetafield = MetafieldBaseType & {\n type: 'list.file_reference';\n parsedValue: Array<GenericFile> | null;\n};\n\ntype TextListParsedMetafield = MetafieldBaseType & {\n type: 'list.single_line_text_field' | 'list.url';\n parsedValue: Array<string> | null;\n};\n\ntype NumberListParsedMetafield = MetafieldBaseType & {\n type: 'list.number_decimal' | 'list.number_integer';\n parsedValue: Array<number> | null;\n};\n\ntype PageListParsedRefMetafield = MetafieldBaseType & {\n type: 'list.page_reference';\n parsedValue: Array<Page> | null;\n};\n\ntype ProductListParsedRefMetafield = MetafieldBaseType & {\n type: 'list.product_reference';\n parsedValue: Array<Product> | null;\n};\n\ntype RatingListParsedMetafield = MetafieldBaseType & {\n type: 'list.rating';\n parsedValue: Array<Rating> | null;\n};\n\ntype VariantListParsedRefMetafield = MetafieldBaseType & {\n type: 'list.variant_reference';\n parsedValue: Array<ProductVariant> | null;\n};\n\nexport type Measurement = {\n unit: string;\n value: number;\n};\n\nexport interface Rating {\n value: number;\n scale_min: number;\n scale_max: number;\n}\n"],"names":["expectType"],"mappings":";;;AAyBO,SAAS,gBACd,WACe;;AACX,MAAA,CAAC,UAAU,MAAM;AACnB,UAAM,cAAc;AAGb;AACG,cAAA,MAAM,GAAG,+CAA+C;AACzD,aAAA;AAAA,QACL,GAAG;AAAA,QACH,aAAa;AAAA,MAAA;AAAA,IAEjB;AAAA,EACF;AAEA,UAAQ,UAAU,MAAM;AAAA,IACtB,KAAK;AACI,aAAA;AAAA,QACL,GAAG;AAAA,QACH,aAAa,UAAU,UAAU;AAAA,MAAA;AAAA,IAGrC,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AACI,aAAA;AAAA,QACL,GAAG;AAAA,QACH,aAAa,UAAU;AAAA,MAAA;AAAA,IAG3B,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AACI,aAAA;AAAA,QACL,GAAG;AAAA,QACH,aAAa,UAAU;AAAA,MAAA;AAAA,IAI3B,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK,eAAe;AAClB,UAAI,cAAc;AACd,UAAA;AACY,sBAAA,WAAU,eAAU,UAAV,YAAmB,EAAE;AAAA,eACtC;AACP,cAAM,aAAa;AAGZ;AACG,kBAAA,MAAM,GAAG,+CAA+C;AAAA,QAClE;AACc,sBAAA;AAAA,MAChB;AACO,aAAA;AAAA,QACL,GAAG;AAAA,QACH;AAAA,MAAA;AAAA,IAEJ;AAAA,IAEA,KAAK;AAAA,IACL,KAAK;AACI,aAAA;AAAA,QACL,GAAG;AAAA,QACH,aAAa,IAAI,MAAK,eAAU,UAAV,YAAmB,EAAE;AAAA,MAAA;AAAA,IAG/C,KAAK;AAAA,IACL,KAAK,kBAAkB;AACrB,YAAM,iBAAiB,WAAU,4CAAW,UAAX,YAAoB,EAAE;AAChD,aAAA;AAAA,QACL,GAAG;AAAA,QACH,aAAa,eAAe,IAAI,CAAC,eAAe,IAAI,KAAK,UAAU,CAAC;AAAA,MAAA;AAAA,IAExE;AAAA,IAEA,KAAK;AAAA,IACL,KAAK;AACI,aAAA;AAAA,QACL,GAAG;AAAA,QACH,aAAa,OAAO,UAAU,KAAK;AAAA,MAAA;AAAA,IAGvC,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AAAA,IACL,KAAK;AACI,aAAA;AAAA,QACL,GAAG;AAAA,QACH,aAAa,mBAAkB,eAAU,eAAV,YAAwB,MAAS;AAAA,MAAA;AAAA,IAGpE,SAAS;AACD,YAAA,oBAAoB,uFAAuF,UAAU;AAGpH;AACG,gBAAA;AAAA,UACN,GAAG;AAAA,QAAA;AAEE,eAAA;AAAA,UACL,GAAG;AAAA,UACH,aAAa;AAAA,QAAA;AAAA,MAEjB;AAAA,IACF;AAAA,EACF;AACF;AA0IAA,aAAkE,IAAI;"}
@@ -0,0 +1,158 @@
1
+ "use strict";
2
+ Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
3
+ /*! *****************************************************************************
4
+ Copyright (c) Microsoft Corporation.
5
+
6
+ Permission to use, copy, modify, and/or distribute this software for any
7
+ purpose with or without fee is hereby granted.
8
+
9
+ THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
10
+ REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
11
+ AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
12
+ INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
13
+ LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
14
+ OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
15
+ PERFORMANCE OF THIS SOFTWARE.
16
+ ***************************************************************************** */
17
+ function t(t2, n) {
18
+ var e2 = "function" == typeof Symbol && t2[Symbol.iterator];
19
+ if (!e2)
20
+ return t2;
21
+ var r2, i2, o2 = e2.call(t2), a2 = [];
22
+ try {
23
+ for (; (void 0 === n || n-- > 0) && !(r2 = o2.next()).done; )
24
+ a2.push(r2.value);
25
+ } catch (t3) {
26
+ i2 = { error: t3 };
27
+ } finally {
28
+ try {
29
+ r2 && !r2.done && (e2 = o2.return) && e2.call(o2);
30
+ } finally {
31
+ if (i2)
32
+ throw i2.error;
33
+ }
34
+ }
35
+ return a2;
36
+ }
37
+ exports.InterpreterStatus = void 0;
38
+ !function(t2) {
39
+ t2[t2.NotStarted = 0] = "NotStarted", t2[t2.Running = 1] = "Running", t2[t2.Stopped = 2] = "Stopped";
40
+ }(exports.InterpreterStatus || (exports.InterpreterStatus = {}));
41
+ var e = { type: "xstate.init" };
42
+ function r(t2) {
43
+ return void 0 === t2 ? [] : [].concat(t2);
44
+ }
45
+ function i(t2) {
46
+ return { type: "xstate.assign", assignment: t2 };
47
+ }
48
+ function o(t2, n) {
49
+ return "string" == typeof (t2 = "string" == typeof t2 && n && n[t2] ? n[t2] : t2) ? { type: t2 } : "function" == typeof t2 ? { type: t2.name, exec: t2 } : t2;
50
+ }
51
+ function a(t2) {
52
+ return function(n) {
53
+ return t2 === n;
54
+ };
55
+ }
56
+ function u(t2) {
57
+ return "string" == typeof t2 ? { type: t2 } : t2;
58
+ }
59
+ function c(t2, n) {
60
+ return { value: t2, context: n, actions: [], changed: false, matches: a(t2) };
61
+ }
62
+ function f(t2, n, e2) {
63
+ var r2 = n, i2 = false;
64
+ return [t2.filter(function(t3) {
65
+ if ("xstate.assign" === t3.type) {
66
+ i2 = true;
67
+ var n2 = Object.assign({}, r2);
68
+ return "function" == typeof t3.assignment ? n2 = t3.assignment(r2, e2) : Object.keys(t3.assignment).forEach(function(i3) {
69
+ n2[i3] = "function" == typeof t3.assignment[i3] ? t3.assignment[i3](r2, e2) : t3.assignment[i3];
70
+ }), r2 = n2, false;
71
+ }
72
+ return true;
73
+ }), r2, i2];
74
+ }
75
+ function s(n, i2) {
76
+ void 0 === i2 && (i2 = {});
77
+ var s2 = t(f(r(n.states[n.initial].entry).map(function(t2) {
78
+ return o(t2, i2.actions);
79
+ }), n.context, e), 2), l2 = s2[0], v2 = s2[1], y = { config: n, _options: i2, initialState: { value: n.initial, actions: l2, context: v2, matches: a(n.initial) }, transition: function(e2, i3) {
80
+ var s3, l3, v3 = "string" == typeof e2 ? { value: e2, context: n.context } : e2, p = v3.value, g = v3.context, d = u(i3), x = n.states[p];
81
+ if (x.on) {
82
+ var m = r(x.on[d.type]);
83
+ try {
84
+ for (var h = function(t2) {
85
+ var n2 = "function" == typeof Symbol && Symbol.iterator, e3 = n2 && t2[n2], r2 = 0;
86
+ if (e3)
87
+ return e3.call(t2);
88
+ if (t2 && "number" == typeof t2.length)
89
+ return { next: function() {
90
+ return t2 && r2 >= t2.length && (t2 = void 0), { value: t2 && t2[r2++], done: !t2 };
91
+ } };
92
+ throw new TypeError(n2 ? "Object is not iterable." : "Symbol.iterator is not defined.");
93
+ }(m), b = h.next(); !b.done; b = h.next()) {
94
+ var S = b.value;
95
+ if (void 0 === S)
96
+ return c(p, g);
97
+ var w = "string" == typeof S ? { target: S } : S, j = w.target, E = w.actions, R = void 0 === E ? [] : E, N = w.cond, O = void 0 === N ? function() {
98
+ return true;
99
+ } : N, _ = void 0 === j, k = null != j ? j : p, T = n.states[k];
100
+ if (O(g, d)) {
101
+ var q = t(f((_ ? r(R) : [].concat(x.exit, R, T.entry).filter(function(t2) {
102
+ return t2;
103
+ })).map(function(t2) {
104
+ return o(t2, y._options.actions);
105
+ }), g, d), 3), z = q[0], A = q[1], B = q[2], C = null != j ? j : p;
106
+ return { value: C, context: A, actions: z, changed: j !== p || z.length > 0 || B, matches: a(C) };
107
+ }
108
+ }
109
+ } catch (t2) {
110
+ s3 = { error: t2 };
111
+ } finally {
112
+ try {
113
+ b && !b.done && (l3 = h.return) && l3.call(h);
114
+ } finally {
115
+ if (s3)
116
+ throw s3.error;
117
+ }
118
+ }
119
+ }
120
+ return c(p, g);
121
+ } };
122
+ return y;
123
+ }
124
+ var l = function(t2, n) {
125
+ return t2.actions.forEach(function(e2) {
126
+ var r2 = e2.exec;
127
+ return r2 && r2(t2.context, n);
128
+ });
129
+ };
130
+ function v(t2) {
131
+ var r2 = t2.initialState, i2 = exports.InterpreterStatus.NotStarted, o2 = /* @__PURE__ */ new Set(), c2 = { _machine: t2, send: function(e2) {
132
+ i2 === exports.InterpreterStatus.Running && (r2 = t2.transition(r2, e2), l(r2, u(e2)), o2.forEach(function(t3) {
133
+ return t3(r2);
134
+ }));
135
+ }, subscribe: function(t3) {
136
+ return o2.add(t3), t3(r2), { unsubscribe: function() {
137
+ return o2.delete(t3);
138
+ } };
139
+ }, start: function(o3) {
140
+ if (o3) {
141
+ var u2 = "object" == typeof o3 ? o3 : { context: t2.config.context, value: o3 };
142
+ r2 = { value: u2.value, actions: [], context: u2.context, matches: a(u2.value) };
143
+ } else
144
+ r2 = t2.initialState;
145
+ return i2 = exports.InterpreterStatus.Running, l(r2, e), c2;
146
+ }, stop: function() {
147
+ return i2 = exports.InterpreterStatus.Stopped, o2.clear(), c2;
148
+ }, get state() {
149
+ return r2;
150
+ }, get status() {
151
+ return i2;
152
+ } };
153
+ return c2;
154
+ }
155
+ exports.assign = i;
156
+ exports.createMachine = s;
157
+ exports.interpret = v;
158
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":["../../../../../../../../node_modules/@xstate/fsm/es/index.js"],"sourcesContent":["/*! *****************************************************************************\nCopyright (c) Microsoft Corporation.\n\nPermission to use, copy, modify, and/or distribute this software for any\npurpose with or without fee is hereby granted.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\nPERFORMANCE OF THIS SOFTWARE.\n***************************************************************************** */\nfunction t(t,n){var e=\"function\"==typeof Symbol&&t[Symbol.iterator];if(!e)return t;var r,i,o=e.call(t),a=[];try{for(;(void 0===n||n-- >0)&&!(r=o.next()).done;)a.push(r.value)}catch(t){i={error:t}}finally{try{r&&!r.done&&(e=o.return)&&e.call(o)}finally{if(i)throw i.error}}return a}var n;!function(t){t[t.NotStarted=0]=\"NotStarted\",t[t.Running=1]=\"Running\",t[t.Stopped=2]=\"Stopped\"}(n||(n={}));var e={type:\"xstate.init\"};function r(t){return void 0===t?[]:[].concat(t)}function i(t){return{type:\"xstate.assign\",assignment:t}}function o(t,n){return\"string\"==typeof(t=\"string\"==typeof t&&n&&n[t]?n[t]:t)?{type:t}:\"function\"==typeof t?{type:t.name,exec:t}:t}function a(t){return function(n){return t===n}}function u(t){return\"string\"==typeof t?{type:t}:t}function c(t,n){return{value:t,context:n,actions:[],changed:!1,matches:a(t)}}function f(t,n,e){var r=n,i=!1;return[t.filter((function(t){if(\"xstate.assign\"===t.type){i=!0;var n=Object.assign({},r);return\"function\"==typeof t.assignment?n=t.assignment(r,e):Object.keys(t.assignment).forEach((function(i){n[i]=\"function\"==typeof t.assignment[i]?t.assignment[i](r,e):t.assignment[i]})),r=n,!1}return!0})),r,i]}function s(n,i){void 0===i&&(i={});var s=t(f(r(n.states[n.initial].entry).map((function(t){return o(t,i.actions)})),n.context,e),2),l=s[0],v=s[1],y={config:n,_options:i,initialState:{value:n.initial,actions:l,context:v,matches:a(n.initial)},transition:function(e,i){var s,l,v=\"string\"==typeof e?{value:e,context:n.context}:e,p=v.value,g=v.context,d=u(i),x=n.states[p];if(x.on){var m=r(x.on[d.type]);try{for(var h=function(t){var n=\"function\"==typeof Symbol&&Symbol.iterator,e=n&&t[n],r=0;if(e)return e.call(t);if(t&&\"number\"==typeof t.length)return{next:function(){return t&&r>=t.length&&(t=void 0),{value:t&&t[r++],done:!t}}};throw new TypeError(n?\"Object is not iterable.\":\"Symbol.iterator is not defined.\")}(m),b=h.next();!b.done;b=h.next()){var S=b.value;if(void 0===S)return c(p,g);var w=\"string\"==typeof S?{target:S}:S,j=w.target,E=w.actions,R=void 0===E?[]:E,N=w.cond,O=void 0===N?function(){return!0}:N,_=void 0===j,k=null!=j?j:p,T=n.states[k];if(O(g,d)){var q=t(f((_?r(R):[].concat(x.exit,R,T.entry).filter((function(t){return t}))).map((function(t){return o(t,y._options.actions)})),g,d),3),z=q[0],A=q[1],B=q[2],C=null!=j?j:p;return{value:C,context:A,actions:z,changed:j!==p||z.length>0||B,matches:a(C)}}}}catch(t){s={error:t}}finally{try{b&&!b.done&&(l=h.return)&&l.call(h)}finally{if(s)throw s.error}}}return c(p,g)}};return y}var l=function(t,n){return t.actions.forEach((function(e){var r=e.exec;return r&&r(t.context,n)}))};function v(t){var r=t.initialState,i=n.NotStarted,o=new Set,c={_machine:t,send:function(e){i===n.Running&&(r=t.transition(r,e),l(r,u(e)),o.forEach((function(t){return t(r)})))},subscribe:function(t){return o.add(t),t(r),{unsubscribe:function(){return o.delete(t)}}},start:function(o){if(o){var u=\"object\"==typeof o?o:{context:t.config.context,value:o};r={value:u.value,actions:[],context:u.context,matches:a(u.value)}}else r=t.initialState;return i=n.Running,l(r,e),c},stop:function(){return i=n.Stopped,o.clear(),c},get state(){return r},get status(){return i}};return c}export{n as InterpreterStatus,i as assign,s as createMachine,v as interpret};\n"],"names":["t","e","r","i","o","a","n","s","l","v","c","u"],"mappings":"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"}
@@ -0,0 +1,159 @@
1
+ /*! *****************************************************************************
2
+ Copyright (c) Microsoft Corporation.
3
+
4
+ Permission to use, copy, modify, and/or distribute this software for any
5
+ purpose with or without fee is hereby granted.
6
+
7
+ THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
8
+ REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
9
+ AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
10
+ INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
11
+ LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
12
+ OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
13
+ PERFORMANCE OF THIS SOFTWARE.
14
+ ***************************************************************************** */
15
+ function t(t2, n2) {
16
+ var e2 = "function" == typeof Symbol && t2[Symbol.iterator];
17
+ if (!e2)
18
+ return t2;
19
+ var r2, i2, o2 = e2.call(t2), a2 = [];
20
+ try {
21
+ for (; (void 0 === n2 || n2-- > 0) && !(r2 = o2.next()).done; )
22
+ a2.push(r2.value);
23
+ } catch (t3) {
24
+ i2 = { error: t3 };
25
+ } finally {
26
+ try {
27
+ r2 && !r2.done && (e2 = o2.return) && e2.call(o2);
28
+ } finally {
29
+ if (i2)
30
+ throw i2.error;
31
+ }
32
+ }
33
+ return a2;
34
+ }
35
+ var n;
36
+ !function(t2) {
37
+ t2[t2.NotStarted = 0] = "NotStarted", t2[t2.Running = 1] = "Running", t2[t2.Stopped = 2] = "Stopped";
38
+ }(n || (n = {}));
39
+ var e = { type: "xstate.init" };
40
+ function r(t2) {
41
+ return void 0 === t2 ? [] : [].concat(t2);
42
+ }
43
+ function i(t2) {
44
+ return { type: "xstate.assign", assignment: t2 };
45
+ }
46
+ function o(t2, n2) {
47
+ return "string" == typeof (t2 = "string" == typeof t2 && n2 && n2[t2] ? n2[t2] : t2) ? { type: t2 } : "function" == typeof t2 ? { type: t2.name, exec: t2 } : t2;
48
+ }
49
+ function a(t2) {
50
+ return function(n2) {
51
+ return t2 === n2;
52
+ };
53
+ }
54
+ function u(t2) {
55
+ return "string" == typeof t2 ? { type: t2 } : t2;
56
+ }
57
+ function c(t2, n2) {
58
+ return { value: t2, context: n2, actions: [], changed: false, matches: a(t2) };
59
+ }
60
+ function f(t2, n2, e2) {
61
+ var r2 = n2, i2 = false;
62
+ return [t2.filter(function(t3) {
63
+ if ("xstate.assign" === t3.type) {
64
+ i2 = true;
65
+ var n3 = Object.assign({}, r2);
66
+ return "function" == typeof t3.assignment ? n3 = t3.assignment(r2, e2) : Object.keys(t3.assignment).forEach(function(i3) {
67
+ n3[i3] = "function" == typeof t3.assignment[i3] ? t3.assignment[i3](r2, e2) : t3.assignment[i3];
68
+ }), r2 = n3, false;
69
+ }
70
+ return true;
71
+ }), r2, i2];
72
+ }
73
+ function s(n2, i2) {
74
+ void 0 === i2 && (i2 = {});
75
+ var s2 = t(f(r(n2.states[n2.initial].entry).map(function(t2) {
76
+ return o(t2, i2.actions);
77
+ }), n2.context, e), 2), l2 = s2[0], v2 = s2[1], y = { config: n2, _options: i2, initialState: { value: n2.initial, actions: l2, context: v2, matches: a(n2.initial) }, transition: function(e2, i3) {
78
+ var s3, l3, v3 = "string" == typeof e2 ? { value: e2, context: n2.context } : e2, p = v3.value, g = v3.context, d = u(i3), x = n2.states[p];
79
+ if (x.on) {
80
+ var m = r(x.on[d.type]);
81
+ try {
82
+ for (var h = function(t2) {
83
+ var n3 = "function" == typeof Symbol && Symbol.iterator, e3 = n3 && t2[n3], r2 = 0;
84
+ if (e3)
85
+ return e3.call(t2);
86
+ if (t2 && "number" == typeof t2.length)
87
+ return { next: function() {
88
+ return t2 && r2 >= t2.length && (t2 = void 0), { value: t2 && t2[r2++], done: !t2 };
89
+ } };
90
+ throw new TypeError(n3 ? "Object is not iterable." : "Symbol.iterator is not defined.");
91
+ }(m), b = h.next(); !b.done; b = h.next()) {
92
+ var S = b.value;
93
+ if (void 0 === S)
94
+ return c(p, g);
95
+ var w = "string" == typeof S ? { target: S } : S, j = w.target, E = w.actions, R = void 0 === E ? [] : E, N = w.cond, O = void 0 === N ? function() {
96
+ return true;
97
+ } : N, _ = void 0 === j, k = null != j ? j : p, T = n2.states[k];
98
+ if (O(g, d)) {
99
+ var q = t(f((_ ? r(R) : [].concat(x.exit, R, T.entry).filter(function(t2) {
100
+ return t2;
101
+ })).map(function(t2) {
102
+ return o(t2, y._options.actions);
103
+ }), g, d), 3), z = q[0], A = q[1], B = q[2], C = null != j ? j : p;
104
+ return { value: C, context: A, actions: z, changed: j !== p || z.length > 0 || B, matches: a(C) };
105
+ }
106
+ }
107
+ } catch (t2) {
108
+ s3 = { error: t2 };
109
+ } finally {
110
+ try {
111
+ b && !b.done && (l3 = h.return) && l3.call(h);
112
+ } finally {
113
+ if (s3)
114
+ throw s3.error;
115
+ }
116
+ }
117
+ }
118
+ return c(p, g);
119
+ } };
120
+ return y;
121
+ }
122
+ var l = function(t2, n2) {
123
+ return t2.actions.forEach(function(e2) {
124
+ var r2 = e2.exec;
125
+ return r2 && r2(t2.context, n2);
126
+ });
127
+ };
128
+ function v(t2) {
129
+ var r2 = t2.initialState, i2 = n.NotStarted, o2 = /* @__PURE__ */ new Set(), c2 = { _machine: t2, send: function(e2) {
130
+ i2 === n.Running && (r2 = t2.transition(r2, e2), l(r2, u(e2)), o2.forEach(function(t3) {
131
+ return t3(r2);
132
+ }));
133
+ }, subscribe: function(t3) {
134
+ return o2.add(t3), t3(r2), { unsubscribe: function() {
135
+ return o2.delete(t3);
136
+ } };
137
+ }, start: function(o3) {
138
+ if (o3) {
139
+ var u2 = "object" == typeof o3 ? o3 : { context: t2.config.context, value: o3 };
140
+ r2 = { value: u2.value, actions: [], context: u2.context, matches: a(u2.value) };
141
+ } else
142
+ r2 = t2.initialState;
143
+ return i2 = n.Running, l(r2, e), c2;
144
+ }, stop: function() {
145
+ return i2 = n.Stopped, o2.clear(), c2;
146
+ }, get state() {
147
+ return r2;
148
+ }, get status() {
149
+ return i2;
150
+ } };
151
+ return c2;
152
+ }
153
+ export {
154
+ n as InterpreterStatus,
155
+ i as assign,
156
+ s as createMachine,
157
+ v as interpret
158
+ };
159
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.mjs","sources":["../../../../../../../../node_modules/@xstate/fsm/es/index.js"],"sourcesContent":["/*! *****************************************************************************\nCopyright (c) Microsoft Corporation.\n\nPermission to use, copy, modify, and/or distribute this software for any\npurpose with or without fee is hereby granted.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\nPERFORMANCE OF THIS SOFTWARE.\n***************************************************************************** */\nfunction t(t,n){var e=\"function\"==typeof Symbol&&t[Symbol.iterator];if(!e)return t;var r,i,o=e.call(t),a=[];try{for(;(void 0===n||n-- >0)&&!(r=o.next()).done;)a.push(r.value)}catch(t){i={error:t}}finally{try{r&&!r.done&&(e=o.return)&&e.call(o)}finally{if(i)throw i.error}}return a}var n;!function(t){t[t.NotStarted=0]=\"NotStarted\",t[t.Running=1]=\"Running\",t[t.Stopped=2]=\"Stopped\"}(n||(n={}));var e={type:\"xstate.init\"};function r(t){return void 0===t?[]:[].concat(t)}function i(t){return{type:\"xstate.assign\",assignment:t}}function o(t,n){return\"string\"==typeof(t=\"string\"==typeof t&&n&&n[t]?n[t]:t)?{type:t}:\"function\"==typeof t?{type:t.name,exec:t}:t}function a(t){return function(n){return t===n}}function u(t){return\"string\"==typeof t?{type:t}:t}function c(t,n){return{value:t,context:n,actions:[],changed:!1,matches:a(t)}}function f(t,n,e){var r=n,i=!1;return[t.filter((function(t){if(\"xstate.assign\"===t.type){i=!0;var n=Object.assign({},r);return\"function\"==typeof t.assignment?n=t.assignment(r,e):Object.keys(t.assignment).forEach((function(i){n[i]=\"function\"==typeof t.assignment[i]?t.assignment[i](r,e):t.assignment[i]})),r=n,!1}return!0})),r,i]}function s(n,i){void 0===i&&(i={});var s=t(f(r(n.states[n.initial].entry).map((function(t){return o(t,i.actions)})),n.context,e),2),l=s[0],v=s[1],y={config:n,_options:i,initialState:{value:n.initial,actions:l,context:v,matches:a(n.initial)},transition:function(e,i){var s,l,v=\"string\"==typeof e?{value:e,context:n.context}:e,p=v.value,g=v.context,d=u(i),x=n.states[p];if(x.on){var m=r(x.on[d.type]);try{for(var h=function(t){var n=\"function\"==typeof Symbol&&Symbol.iterator,e=n&&t[n],r=0;if(e)return e.call(t);if(t&&\"number\"==typeof t.length)return{next:function(){return t&&r>=t.length&&(t=void 0),{value:t&&t[r++],done:!t}}};throw new TypeError(n?\"Object is not iterable.\":\"Symbol.iterator is not defined.\")}(m),b=h.next();!b.done;b=h.next()){var S=b.value;if(void 0===S)return c(p,g);var w=\"string\"==typeof S?{target:S}:S,j=w.target,E=w.actions,R=void 0===E?[]:E,N=w.cond,O=void 0===N?function(){return!0}:N,_=void 0===j,k=null!=j?j:p,T=n.states[k];if(O(g,d)){var q=t(f((_?r(R):[].concat(x.exit,R,T.entry).filter((function(t){return t}))).map((function(t){return o(t,y._options.actions)})),g,d),3),z=q[0],A=q[1],B=q[2],C=null!=j?j:p;return{value:C,context:A,actions:z,changed:j!==p||z.length>0||B,matches:a(C)}}}}catch(t){s={error:t}}finally{try{b&&!b.done&&(l=h.return)&&l.call(h)}finally{if(s)throw s.error}}}return c(p,g)}};return y}var l=function(t,n){return t.actions.forEach((function(e){var r=e.exec;return r&&r(t.context,n)}))};function v(t){var r=t.initialState,i=n.NotStarted,o=new Set,c={_machine:t,send:function(e){i===n.Running&&(r=t.transition(r,e),l(r,u(e)),o.forEach((function(t){return t(r)})))},subscribe:function(t){return o.add(t),t(r),{unsubscribe:function(){return o.delete(t)}}},start:function(o){if(o){var u=\"object\"==typeof o?o:{context:t.config.context,value:o};r={value:u.value,actions:[],context:u.context,matches:a(u.value)}}else r=t.initialState;return i=n.Running,l(r,e),c},stop:function(){return i=n.Stopped,o.clear(),c},get state(){return r},get status(){return i}};return c}export{n as InterpreterStatus,i as assign,s as createMachine,v as interpret};\n"],"names":["t","n","e","r","i","o","a","s","l","v","c","u"],"mappings":"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"}
@@ -0,0 +1,94 @@
1
+ "use strict";
2
+ Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
3
+ const index = require("../../fsm/es/index.js");
4
+ const require$$0 = require("react");
5
+ const useIsomorphicLayoutEffect_browser_esm = require("../../../use-isomorphic-layout-effect/dist/use-isomorphic-layout-effect.browser.esm.js");
6
+ require("../../../use-sync-external-store/shim/with-selector.js");
7
+ const useConstant = require("./useConstant.js");
8
+ const withSelector = require("../../../../_virtual/with-selector.js");
9
+ var __read = globalThis && globalThis.__read || function(o, n) {
10
+ var m = typeof Symbol === "function" && o[Symbol.iterator];
11
+ if (!m)
12
+ return o;
13
+ var i = m.call(o), r, ar = [], e;
14
+ try {
15
+ while ((n === void 0 || n-- > 0) && !(r = i.next()).done)
16
+ ar.push(r.value);
17
+ } catch (error) {
18
+ e = { error };
19
+ } finally {
20
+ try {
21
+ if (r && !r.done && (m = i["return"]))
22
+ m.call(i);
23
+ } finally {
24
+ if (e)
25
+ throw e.error;
26
+ }
27
+ }
28
+ return ar;
29
+ };
30
+ function identity(a) {
31
+ return a;
32
+ }
33
+ var getServiceState = function(service) {
34
+ var currentValue;
35
+ service.subscribe(function(state) {
36
+ currentValue = state;
37
+ }).unsubscribe();
38
+ return currentValue;
39
+ };
40
+ function useMachine(stateMachine, options) {
41
+ var persistedStateRef = require$$0.useRef();
42
+ if (process.env.NODE_ENV !== "production") {
43
+ var _a = __read(require$$0.useState(stateMachine), 1), initialMachine = _a[0];
44
+ if (stateMachine !== initialMachine) {
45
+ console.warn("Machine given to `useMachine` has changed between renders. This is not supported and might lead to unexpected results.\nPlease make sure that you pass the same Machine as argument each time.");
46
+ }
47
+ }
48
+ var _b = __read(useConstant(function() {
49
+ var queue2 = [];
50
+ var service2 = index.interpret(index.createMachine(stateMachine.config, options ? options : stateMachine._options));
51
+ var send = service2.send;
52
+ service2.send = function(event) {
53
+ if (service2.status === index.InterpreterStatus.NotStarted) {
54
+ queue2.push(event);
55
+ return;
56
+ }
57
+ send(event);
58
+ persistedStateRef.current = service2.state;
59
+ };
60
+ return [service2, queue2];
61
+ }), 2), service = _b[0], queue = _b[1];
62
+ useIsomorphicLayoutEffect_browser_esm(function() {
63
+ if (options) {
64
+ service._machine._options = options;
65
+ }
66
+ });
67
+ var useServiceResult = useService(service);
68
+ require$$0.useEffect(function() {
69
+ service.start(persistedStateRef.current);
70
+ queue.forEach(service.send);
71
+ persistedStateRef.current = service.state;
72
+ return function() {
73
+ service.stop();
74
+ };
75
+ }, []);
76
+ return useServiceResult;
77
+ }
78
+ var isEqual = function(_prevState, nextState) {
79
+ return nextState.changed === false;
80
+ };
81
+ function useService(service) {
82
+ var getSnapshot = require$$0.useCallback(function() {
83
+ return getServiceState(service);
84
+ }, [service]);
85
+ var subscribe = require$$0.useCallback(function(handleStoreChange) {
86
+ var unsubscribe = service.subscribe(handleStoreChange).unsubscribe;
87
+ return unsubscribe;
88
+ }, [service]);
89
+ var storeSnapshot = withSelector.withSelector.exports.useSyncExternalStoreWithSelector(subscribe, getSnapshot, getSnapshot, identity, isEqual);
90
+ return [storeSnapshot, service.send, service];
91
+ }
92
+ exports.useMachine = useMachine;
93
+ exports.useService = useService;
94
+ //# sourceMappingURL=fsm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fsm.js","sources":["../../../../../../../../node_modules/@xstate/react/es/fsm.js"],"sourcesContent":["var __read = (this && this.__read) || function (o, n) {\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\n if (!m) return o;\n var i = m.call(o), r, ar = [], e;\n try {\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\n }\n catch (error) { e = { error: error }; }\n finally {\n try {\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\n }\n finally { if (e) throw e.error; }\n }\n return ar;\n};\nimport { createMachine, interpret, InterpreterStatus } from '@xstate/fsm';\nimport { useCallback, useEffect, useRef, useState } from 'react';\nimport useIsomorphicLayoutEffect from 'use-isomorphic-layout-effect';\nimport { useSyncExternalStoreWithSelector } from 'use-sync-external-store/shim/with-selector';\nimport useConstant from './useConstant';\nfunction identity(a) {\n return a;\n}\nvar getServiceState = function (service) {\n var currentValue;\n service\n .subscribe(function (state) {\n currentValue = state;\n })\n .unsubscribe();\n return currentValue;\n};\nexport function useMachine(stateMachine, options) {\n var persistedStateRef = useRef();\n if (process.env.NODE_ENV !== 'production') {\n var _a = __read(useState(stateMachine), 1), initialMachine = _a[0];\n if (stateMachine !== initialMachine) {\n console.warn('Machine given to `useMachine` has changed between renders. This is not supported and might lead to unexpected results.\\n' +\n 'Please make sure that you pass the same Machine as argument each time.');\n }\n }\n var _b = __read(useConstant(function () {\n var queue = [];\n var service = interpret(createMachine(stateMachine.config, options ? options : stateMachine._options));\n var send = service.send;\n service.send = function (event) {\n if (service.status === InterpreterStatus.NotStarted) {\n queue.push(event);\n return;\n }\n send(event);\n persistedStateRef.current = service.state;\n };\n return [service, queue];\n }), 2), service = _b[0], queue = _b[1];\n useIsomorphicLayoutEffect(function () {\n if (options) {\n service._machine._options = options;\n }\n });\n var useServiceResult = useService(service);\n useEffect(function () {\n service.start(persistedStateRef.current);\n queue.forEach(service.send);\n persistedStateRef.current = service.state;\n return function () {\n service.stop();\n };\n }, []);\n return useServiceResult;\n}\nvar isEqual = function (_prevState, nextState) { return nextState.changed === false; };\nexport function useService(service) {\n var getSnapshot = useCallback(function () { return getServiceState(service); }, [service]);\n var subscribe = useCallback(function (handleStoreChange) {\n var unsubscribe = service.subscribe(handleStoreChange).unsubscribe;\n return unsubscribe;\n }, [service]);\n var storeSnapshot = useSyncExternalStoreWithSelector(subscribe, getSnapshot, getSnapshot, identity, isEqual);\n return [storeSnapshot, service.send, service];\n}\n"],"names":["this","useRef","useState","queue","service","interpret","createMachine","InterpreterStatus","useIsomorphicLayoutEffect","useEffect","useCallback","useSyncExternalStoreWithSelector"],"mappings":";;;;;;;;AAAA,IAAI,SAAUA,cAAQA,WAAK,UAAW,SAAU,GAAG,GAAG;AAClD,MAAI,IAAI,OAAO,WAAW,cAAc,EAAE,OAAO;AACjD,MAAI,CAAC;AAAG,WAAO;AACf,MAAI,IAAI,EAAE,KAAK,CAAC,GAAG,GAAG,KAAK,CAAE,GAAE;AAC/B,MAAI;AACA,YAAQ,MAAM,UAAU,MAAM,MAAM,EAAE,IAAI,EAAE,KAAM,GAAE;AAAM,SAAG,KAAK,EAAE,KAAK;AAAA,EAC5E,SACM,OAAP;AAAgB,QAAI,EAAE,MAAc;AAAA,EAAG,UAC/B;AACJ,QAAI;AACA,UAAI,KAAK,CAAC,EAAE,SAAS,IAAI,EAAE;AAAY,UAAE,KAAK,CAAC;AAAA,IAClD,UACO;AAAE,UAAI;AAAG,cAAM,EAAE;AAAA,IAAQ;AAAA,EACpC;AACD,SAAO;AACX;AAMA,SAAS,SAAS,GAAG;AACjB,SAAO;AACX;AACA,IAAI,kBAAkB,SAAU,SAAS;AACrC,MAAI;AACJ,UACK,UAAU,SAAU,OAAO;AAC5B,mBAAe;AAAA,EACvB,CAAK,EACI;AACL,SAAO;AACX;AACO,SAAS,WAAW,cAAc,SAAS;AAC9C,MAAI,oBAAoBC,WAAAA;AACxB,MAAI,QAAQ,IAAI,aAAa,cAAc;AACvC,QAAI,KAAK,OAAOC,WAAAA,SAAS,YAAY,GAAG,CAAC,GAAG,iBAAiB,GAAG;AAChE,QAAI,iBAAiB,gBAAgB;AACjC,cAAQ,KAAK,gMAC+D;AAAA,IAC/E;AAAA,EACJ;AACD,MAAI,KAAK,OAAO,YAAY,WAAY;AACpC,QAAIC,SAAQ,CAAA;AACZ,QAAIC,WAAUC,MAAAA,UAAUC,MAAa,cAAC,aAAa,QAAQ,UAAU,UAAU,aAAa,QAAQ,CAAC;AACrG,QAAI,OAAOF,SAAQ;AACnB,IAAAA,SAAQ,OAAO,SAAU,OAAO;AAC5B,UAAIA,SAAQ,WAAWG,MAAiB,kBAAC,YAAY;AACjD,QAAAJ,OAAM,KAAK,KAAK;AAChB;AAAA,MACH;AACD,WAAK,KAAK;AACV,wBAAkB,UAAUC,SAAQ;AAAA,IAChD;AACQ,WAAO,CAACA,UAASD,MAAK;AAAA,EAC9B,CAAK,GAAG,CAAC,GAAG,UAAU,GAAG,IAAI,QAAQ,GAAG;AACpCK,wCAA0B,WAAY;AAClC,QAAI,SAAS;AACT,cAAQ,SAAS,WAAW;AAAA,IAC/B;AAAA,EACT,CAAK;AACD,MAAI,mBAAmB,WAAW,OAAO;AACzCC,aAAAA,UAAU,WAAY;AAClB,YAAQ,MAAM,kBAAkB,OAAO;AACvC,UAAM,QAAQ,QAAQ,IAAI;AAC1B,sBAAkB,UAAU,QAAQ;AACpC,WAAO,WAAY;AACf,cAAQ,KAAI;AAAA,IACxB;AAAA,EACK,GAAE,CAAE,CAAA;AACL,SAAO;AACX;AACA,IAAI,UAAU,SAAU,YAAY,WAAW;AAAE,SAAO,UAAU,YAAY;;AACvE,SAAS,WAAW,SAAS;AAChC,MAAI,cAAcC,uBAAY,WAAY;AAAE,WAAO,gBAAgB,OAAO;AAAA,EAAI,GAAE,CAAC,OAAO,CAAC;AACzF,MAAI,YAAYA,uBAAY,SAAU,mBAAmB;AACrD,QAAI,cAAc,QAAQ,UAAU,iBAAiB,EAAE;AACvD,WAAO;AAAA,EACf,GAAO,CAAC,OAAO,CAAC;AACZ,MAAI,gBAAgBC,aAAAA,aAAAA,QAAAA,iCAAiC,WAAW,aAAa,aAAa,UAAU,OAAO;AAC3G,SAAO,CAAC,eAAe,QAAQ,MAAM,OAAO;AAChD;;;"}
@@ -0,0 +1,94 @@
1
+ import { interpret as v, createMachine as s, InterpreterStatus as n } from "../../fsm/es/index.mjs";
2
+ import { useRef, useState, useEffect, useCallback } from "react";
3
+ import index from "../../../use-isomorphic-layout-effect/dist/use-isomorphic-layout-effect.browser.esm.mjs";
4
+ import "../../../use-sync-external-store/shim/with-selector.mjs";
5
+ import useConstant from "./useConstant.mjs";
6
+ import { w as withSelector } from "../../../../_virtual/with-selector.mjs";
7
+ var __read = globalThis && globalThis.__read || function(o, n2) {
8
+ var m = typeof Symbol === "function" && o[Symbol.iterator];
9
+ if (!m)
10
+ return o;
11
+ var i = m.call(o), r, ar = [], e;
12
+ try {
13
+ while ((n2 === void 0 || n2-- > 0) && !(r = i.next()).done)
14
+ ar.push(r.value);
15
+ } catch (error) {
16
+ e = { error };
17
+ } finally {
18
+ try {
19
+ if (r && !r.done && (m = i["return"]))
20
+ m.call(i);
21
+ } finally {
22
+ if (e)
23
+ throw e.error;
24
+ }
25
+ }
26
+ return ar;
27
+ };
28
+ function identity(a) {
29
+ return a;
30
+ }
31
+ var getServiceState = function(service) {
32
+ var currentValue;
33
+ service.subscribe(function(state) {
34
+ currentValue = state;
35
+ }).unsubscribe();
36
+ return currentValue;
37
+ };
38
+ function useMachine(stateMachine, options) {
39
+ var persistedStateRef = useRef();
40
+ if (process.env.NODE_ENV !== "production") {
41
+ var _a = __read(useState(stateMachine), 1), initialMachine = _a[0];
42
+ if (stateMachine !== initialMachine) {
43
+ console.warn("Machine given to `useMachine` has changed between renders. This is not supported and might lead to unexpected results.\nPlease make sure that you pass the same Machine as argument each time.");
44
+ }
45
+ }
46
+ var _b = __read(useConstant(function() {
47
+ var queue2 = [];
48
+ var service2 = v(s(stateMachine.config, options ? options : stateMachine._options));
49
+ var send = service2.send;
50
+ service2.send = function(event) {
51
+ if (service2.status === n.NotStarted) {
52
+ queue2.push(event);
53
+ return;
54
+ }
55
+ send(event);
56
+ persistedStateRef.current = service2.state;
57
+ };
58
+ return [service2, queue2];
59
+ }), 2), service = _b[0], queue = _b[1];
60
+ index(function() {
61
+ if (options) {
62
+ service._machine._options = options;
63
+ }
64
+ });
65
+ var useServiceResult = useService(service);
66
+ useEffect(function() {
67
+ service.start(persistedStateRef.current);
68
+ queue.forEach(service.send);
69
+ persistedStateRef.current = service.state;
70
+ return function() {
71
+ service.stop();
72
+ };
73
+ }, []);
74
+ return useServiceResult;
75
+ }
76
+ var isEqual = function(_prevState, nextState) {
77
+ return nextState.changed === false;
78
+ };
79
+ function useService(service) {
80
+ var getSnapshot = useCallback(function() {
81
+ return getServiceState(service);
82
+ }, [service]);
83
+ var subscribe = useCallback(function(handleStoreChange) {
84
+ var unsubscribe = service.subscribe(handleStoreChange).unsubscribe;
85
+ return unsubscribe;
86
+ }, [service]);
87
+ var storeSnapshot = withSelector.exports.useSyncExternalStoreWithSelector(subscribe, getSnapshot, getSnapshot, identity, isEqual);
88
+ return [storeSnapshot, service.send, service];
89
+ }
90
+ export {
91
+ useMachine,
92
+ useService
93
+ };
94
+ //# sourceMappingURL=fsm.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fsm.mjs","sources":["../../../../../../../../node_modules/@xstate/react/es/fsm.js"],"sourcesContent":["var __read = (this && this.__read) || function (o, n) {\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\n if (!m) return o;\n var i = m.call(o), r, ar = [], e;\n try {\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\n }\n catch (error) { e = { error: error }; }\n finally {\n try {\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\n }\n finally { if (e) throw e.error; }\n }\n return ar;\n};\nimport { createMachine, interpret, InterpreterStatus } from '@xstate/fsm';\nimport { useCallback, useEffect, useRef, useState } from 'react';\nimport useIsomorphicLayoutEffect from 'use-isomorphic-layout-effect';\nimport { useSyncExternalStoreWithSelector } from 'use-sync-external-store/shim/with-selector';\nimport useConstant from './useConstant';\nfunction identity(a) {\n return a;\n}\nvar getServiceState = function (service) {\n var currentValue;\n service\n .subscribe(function (state) {\n currentValue = state;\n })\n .unsubscribe();\n return currentValue;\n};\nexport function useMachine(stateMachine, options) {\n var persistedStateRef = useRef();\n if (process.env.NODE_ENV !== 'production') {\n var _a = __read(useState(stateMachine), 1), initialMachine = _a[0];\n if (stateMachine !== initialMachine) {\n console.warn('Machine given to `useMachine` has changed between renders. This is not supported and might lead to unexpected results.\\n' +\n 'Please make sure that you pass the same Machine as argument each time.');\n }\n }\n var _b = __read(useConstant(function () {\n var queue = [];\n var service = interpret(createMachine(stateMachine.config, options ? options : stateMachine._options));\n var send = service.send;\n service.send = function (event) {\n if (service.status === InterpreterStatus.NotStarted) {\n queue.push(event);\n return;\n }\n send(event);\n persistedStateRef.current = service.state;\n };\n return [service, queue];\n }), 2), service = _b[0], queue = _b[1];\n useIsomorphicLayoutEffect(function () {\n if (options) {\n service._machine._options = options;\n }\n });\n var useServiceResult = useService(service);\n useEffect(function () {\n service.start(persistedStateRef.current);\n queue.forEach(service.send);\n persistedStateRef.current = service.state;\n return function () {\n service.stop();\n };\n }, []);\n return useServiceResult;\n}\nvar isEqual = function (_prevState, nextState) { return nextState.changed === false; };\nexport function useService(service) {\n var getSnapshot = useCallback(function () { return getServiceState(service); }, [service]);\n var subscribe = useCallback(function (handleStoreChange) {\n var unsubscribe = service.subscribe(handleStoreChange).unsubscribe;\n return unsubscribe;\n }, [service]);\n var storeSnapshot = useSyncExternalStoreWithSelector(subscribe, getSnapshot, getSnapshot, identity, isEqual);\n return [storeSnapshot, service.send, service];\n}\n"],"names":["this","n","queue","service","interpret","createMachine","InterpreterStatus","useIsomorphicLayoutEffect","useSyncExternalStoreWithSelector"],"mappings":";;;;;;AAAA,IAAI,SAAUA,cAAQA,WAAK,UAAW,SAAU,GAAGC,IAAG;AAClD,MAAI,IAAI,OAAO,WAAW,cAAc,EAAE,OAAO;AACjD,MAAI,CAAC;AAAG,WAAO;AACf,MAAI,IAAI,EAAE,KAAK,CAAC,GAAG,GAAG,KAAK,CAAE,GAAE;AAC/B,MAAI;AACA,YAAQA,OAAM,UAAUA,OAAM,MAAM,EAAE,IAAI,EAAE,KAAM,GAAE;AAAM,SAAG,KAAK,EAAE,KAAK;AAAA,EAC5E,SACM,OAAP;AAAgB,QAAI,EAAE,MAAc;AAAA,EAAG,UAC/B;AACJ,QAAI;AACA,UAAI,KAAK,CAAC,EAAE,SAAS,IAAI,EAAE;AAAY,UAAE,KAAK,CAAC;AAAA,IAClD,UACO;AAAE,UAAI;AAAG,cAAM,EAAE;AAAA,IAAQ;AAAA,EACpC;AACD,SAAO;AACX;AAMA,SAAS,SAAS,GAAG;AACjB,SAAO;AACX;AACA,IAAI,kBAAkB,SAAU,SAAS;AACrC,MAAI;AACJ,UACK,UAAU,SAAU,OAAO;AAC5B,mBAAe;AAAA,EACvB,CAAK,EACI;AACL,SAAO;AACX;AACO,SAAS,WAAW,cAAc,SAAS;AAC9C,MAAI,oBAAoB;AACxB,MAAI,QAAQ,IAAI,aAAa,cAAc;AACvC,QAAI,KAAK,OAAO,SAAS,YAAY,GAAG,CAAC,GAAG,iBAAiB,GAAG;AAChE,QAAI,iBAAiB,gBAAgB;AACjC,cAAQ,KAAK,gMAC+D;AAAA,IAC/E;AAAA,EACJ;AACD,MAAI,KAAK,OAAO,YAAY,WAAY;AACpC,QAAIC,SAAQ,CAAA;AACZ,QAAIC,WAAUC,EAAUC,EAAc,aAAa,QAAQ,UAAU,UAAU,aAAa,QAAQ,CAAC;AACrG,QAAI,OAAOF,SAAQ;AACnB,IAAAA,SAAQ,OAAO,SAAU,OAAO;AAC5B,UAAIA,SAAQ,WAAWG,EAAkB,YAAY;AACjD,QAAAJ,OAAM,KAAK,KAAK;AAChB;AAAA,MACH;AACD,WAAK,KAAK;AACV,wBAAkB,UAAUC,SAAQ;AAAA,IAChD;AACQ,WAAO,CAACA,UAASD,MAAK;AAAA,EAC9B,CAAK,GAAG,CAAC,GAAG,UAAU,GAAG,IAAI,QAAQ,GAAG;AACpCK,QAA0B,WAAY;AAClC,QAAI,SAAS;AACT,cAAQ,SAAS,WAAW;AAAA,IAC/B;AAAA,EACT,CAAK;AACD,MAAI,mBAAmB,WAAW,OAAO;AACzC,YAAU,WAAY;AAClB,YAAQ,MAAM,kBAAkB,OAAO;AACvC,UAAM,QAAQ,QAAQ,IAAI;AAC1B,sBAAkB,UAAU,QAAQ;AACpC,WAAO,WAAY;AACf,cAAQ,KAAI;AAAA,IACxB;AAAA,EACK,GAAE,CAAE,CAAA;AACL,SAAO;AACX;AACA,IAAI,UAAU,SAAU,YAAY,WAAW;AAAE,SAAO,UAAU,YAAY;;AACvE,SAAS,WAAW,SAAS;AAChC,MAAI,cAAc,YAAY,WAAY;AAAE,WAAO,gBAAgB,OAAO;AAAA,EAAI,GAAE,CAAC,OAAO,CAAC;AACzF,MAAI,YAAY,YAAY,SAAU,mBAAmB;AACrD,QAAI,cAAc,QAAQ,UAAU,iBAAiB,EAAE;AACvD,WAAO;AAAA,EACf,GAAO,CAAC,OAAO,CAAC;AACZ,MAAI,gBAAgBC,aAAAA,QAAAA,iCAAiC,WAAW,aAAa,aAAa,UAAU,OAAO;AAC3G,SAAO,CAAC,eAAe,QAAQ,MAAM,OAAO;AAChD;"}
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+ const require$$0 = require("react");
3
+ function _interopNamespace(e) {
4
+ if (e && e.__esModule)
5
+ return e;
6
+ const n = Object.create(null, { [Symbol.toStringTag]: { value: "Module" } });
7
+ if (e) {
8
+ for (const k in e) {
9
+ if (k !== "default") {
10
+ const d = Object.getOwnPropertyDescriptor(e, k);
11
+ Object.defineProperty(n, k, d.get ? d : {
12
+ enumerable: true,
13
+ get: () => e[k]
14
+ });
15
+ }
16
+ }
17
+ }
18
+ n.default = e;
19
+ return Object.freeze(n);
20
+ }
21
+ const require$$0__namespace = /* @__PURE__ */ _interopNamespace(require$$0);
22
+ function useConstant(fn) {
23
+ var ref = require$$0__namespace.useRef();
24
+ if (!ref.current) {
25
+ ref.current = { v: fn() };
26
+ }
27
+ return ref.current.v;
28
+ }
29
+ module.exports = useConstant;
30
+ //# sourceMappingURL=useConstant.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useConstant.js","sources":["../../../../../../../../node_modules/@xstate/react/es/useConstant.js"],"sourcesContent":["import * as React from 'react';\nexport default function useConstant(fn) {\n var ref = React.useRef();\n if (!ref.current) {\n ref.current = { v: fn() };\n }\n return ref.current.v;\n}\n"],"names":["React"],"mappings":";;;;;;;;;;;;;;;;;;;;;AACe,SAAS,YAAY,IAAI;AACpC,MAAI,MAAMA,sBAAM;AAChB,MAAI,CAAC,IAAI,SAAS;AACd,QAAI,UAAU,EAAE,GAAG,GAAI,EAAA;AAAA,EAC1B;AACD,SAAO,IAAI,QAAQ;AACvB;;"}