@shopify/shop-minis-cli 0.0.37 → 0.0.82

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 (362) hide show
  1. package/.eslintrc.cjs +78 -0
  2. package/.vscode/extensions.json +3 -0
  3. package/.vscode/launch.json +29 -0
  4. package/.vscode/settings.json +8 -0
  5. package/.vscode/shop-minis-cli.code-workspace +8 -0
  6. package/build/commands/cancel-submission/cancel-submission.d.ts +1 -0
  7. package/build/commands/cancel-submission/cancel-submission.js +57 -0
  8. package/build/commands/cancel-submission/cancel-submission.js.map +1 -0
  9. package/build/commands/cancel-submission/index.d.ts +2 -0
  10. package/build/commands/cancel-submission/index.js +18 -0
  11. package/build/commands/cancel-submission/index.js.map +1 -0
  12. package/build/commands/cancel-submission/types.d.ts +3 -0
  13. package/build/commands/cancel-submission/types.js +2 -0
  14. package/build/commands/cancel-submission/types.js.map +1 -0
  15. package/build/commands/check-submission/index.d.ts +2 -0
  16. package/build/commands/check-submission/index.js +55 -0
  17. package/build/commands/check-submission/index.js.map +1 -0
  18. package/build/commands/check-submission/types.d.ts +3 -0
  19. package/build/commands/check-submission/types.js +2 -0
  20. package/build/commands/check-submission/types.js.map +1 -0
  21. package/build/commands/codemod/index.d.ts +3 -0
  22. package/build/commands/codemod/index.js +47 -0
  23. package/build/commands/codemod/index.js.map +1 -0
  24. package/build/commands/codemod/releases/index.d.ts +7 -0
  25. package/build/commands/codemod/releases/index.js +58 -0
  26. package/build/commands/codemod/releases/index.js.map +1 -0
  27. package/build/commands/codemod/releases/types.d.ts +9 -0
  28. package/build/commands/codemod/releases/types.js +2 -0
  29. package/build/commands/codemod/releases/types.js.map +1 -0
  30. package/build/commands/codemod/releases/v0-0-42/index.d.ts +3 -0
  31. package/build/commands/codemod/releases/v0-0-42/index.js +46 -0
  32. package/build/commands/codemod/releases/v0-0-42/index.js.map +1 -0
  33. package/build/commands/codemod/releases/v0-0-42/reset-files.d.ts +7 -0
  34. package/build/commands/codemod/releases/v0-0-42/reset-files.js +83 -0
  35. package/build/commands/codemod/releases/v0-0-42/reset-files.js.map +1 -0
  36. package/build/commands/codemod/releases/v0-0-43.d.ts +3 -0
  37. package/build/commands/codemod/releases/v0-0-43.js +32 -0
  38. package/build/commands/codemod/releases/v0-0-43.js.map +1 -0
  39. package/build/commands/codemod/releases/v0-0-44.d.ts +3 -0
  40. package/build/commands/codemod/releases/v0-0-44.js +214 -0
  41. package/build/commands/codemod/releases/v0-0-44.js.map +1 -0
  42. package/build/commands/codemod/releases/v0-0-45.d.ts +3 -0
  43. package/build/commands/codemod/releases/v0-0-45.js +23 -0
  44. package/build/commands/codemod/releases/v0-0-45.js.map +1 -0
  45. package/build/commands/codemod/releases/v0-0-50.d.ts +3 -0
  46. package/build/commands/codemod/releases/v0-0-50.js +34 -0
  47. package/build/commands/codemod/releases/v0-0-50.js.map +1 -0
  48. package/build/commands/codemod/releases/v0-0-54.d.ts +3 -0
  49. package/build/commands/codemod/releases/v0-0-54.js +70 -0
  50. package/build/commands/codemod/releases/v0-0-54.js.map +1 -0
  51. package/build/commands/codemod/releases/v0-0-56.d.ts +3 -0
  52. package/build/commands/codemod/releases/v0-0-56.js +48 -0
  53. package/build/commands/codemod/releases/v0-0-56.js.map +1 -0
  54. package/build/commands/codemod/releases/v0-0-57.d.ts +3 -0
  55. package/build/commands/codemod/releases/v0-0-57.js +41 -0
  56. package/build/commands/codemod/releases/v0-0-57.js.map +1 -0
  57. package/build/commands/codemod/releases/v0-0-58.d.ts +3 -0
  58. package/build/commands/codemod/releases/v0-0-58.js +68 -0
  59. package/build/commands/codemod/releases/v0-0-58.js.map +1 -0
  60. package/build/commands/codemod/releases/v0-0-61.d.ts +3 -0
  61. package/build/commands/codemod/releases/v0-0-61.js +30 -0
  62. package/build/commands/codemod/releases/v0-0-61.js.map +1 -0
  63. package/build/commands/codemod/releases/v0-0-63.d.ts +3 -0
  64. package/build/commands/codemod/releases/v0-0-63.js +42 -0
  65. package/build/commands/codemod/releases/v0-0-63.js.map +1 -0
  66. package/build/commands/codemod/releases/v0-0-64.d.ts +3 -0
  67. package/build/commands/codemod/releases/v0-0-64.js +47 -0
  68. package/build/commands/codemod/releases/v0-0-64.js.map +1 -0
  69. package/build/commands/codemod/releases/v0-0-75.d.ts +3 -0
  70. package/build/commands/codemod/releases/v0-0-75.js +30 -0
  71. package/build/commands/codemod/releases/v0-0-75.js.map +1 -0
  72. package/build/commands/codemod/releases/v0-0-76.d.ts +3 -0
  73. package/build/commands/codemod/releases/v0-0-76.js +32 -0
  74. package/build/commands/codemod/releases/v0-0-76.js.map +1 -0
  75. package/build/commands/codemod/releases/v0-0-77.d.ts +3 -0
  76. package/build/commands/codemod/releases/v0-0-77.js +39 -0
  77. package/build/commands/codemod/releases/v0-0-77.js.map +1 -0
  78. package/build/commands/codemod/releases/v0-0-79.d.ts +3 -0
  79. package/build/commands/codemod/releases/v0-0-79.js +35 -0
  80. package/build/commands/codemod/releases/v0-0-79.js.map +1 -0
  81. package/build/commands/config.d.ts +14 -0
  82. package/build/commands/config.js +42 -0
  83. package/build/commands/config.js.map +1 -0
  84. package/build/commands/create-mini/index.js +84 -68
  85. package/build/commands/create-mini/index.js.map +1 -1
  86. package/build/commands/create-mini/utils/template-app.d.ts +1 -1
  87. package/build/commands/create-mini/utils/template-app.js +38 -38
  88. package/build/commands/create-mini/utils/template-app.js.map +1 -1
  89. package/build/commands/dev/index.d.ts +3 -0
  90. package/build/commands/dev/index.js +51 -22
  91. package/build/commands/dev/index.js.map +1 -1
  92. package/build/commands/dev/utils/android.d.ts +6 -4
  93. package/build/commands/dev/utils/android.js +55 -67
  94. package/build/commands/dev/utils/android.js.map +1 -1
  95. package/build/commands/dev/utils/binaries.d.ts +2 -80
  96. package/build/commands/dev/utils/binaries.js +10 -166
  97. package/build/commands/dev/utils/binaries.js.map +1 -1
  98. package/build/commands/dev/utils/build-type.d.ts +2 -0
  99. package/build/commands/dev/utils/build-type.js +14 -0
  100. package/build/commands/dev/utils/build-type.js.map +1 -0
  101. package/build/commands/dev/utils/deeplink.d.ts +3 -3
  102. package/build/commands/dev/utils/deeplink.js +13 -18
  103. package/build/commands/dev/utils/deeplink.js.map +1 -1
  104. package/build/commands/dev/utils/interactive-terminal.d.ts +4 -2
  105. package/build/commands/dev/utils/interactive-terminal.js +66 -107
  106. package/build/commands/dev/utils/interactive-terminal.js.map +1 -1
  107. package/build/commands/dev/utils/metro/metro-config.js +17 -20
  108. package/build/commands/dev/utils/metro/metro-config.js.map +1 -1
  109. package/build/commands/dev/utils/metro/metro-reporter.d.ts +3 -4
  110. package/build/commands/dev/utils/metro/metro-reporter.js +6 -13
  111. package/build/commands/dev/utils/metro/metro-reporter.js.map +1 -1
  112. package/build/commands/dev/utils/metro/metro-server-middleware.d.ts +1 -0
  113. package/build/commands/dev/utils/metro/metro-server-middleware.js +11 -12
  114. package/build/commands/dev/utils/metro/metro-server-middleware.js.map +1 -1
  115. package/build/commands/dev/utils/metro/metro-server.d.ts +2 -2
  116. package/build/commands/dev/utils/metro/metro-server.js +7 -14
  117. package/build/commands/dev/utils/metro/metro-server.js.map +1 -1
  118. package/build/commands/dev/utils/network.d.ts +20 -0
  119. package/build/commands/dev/utils/network.js +122 -0
  120. package/build/commands/dev/utils/network.js.map +1 -0
  121. package/build/commands/dev/utils/platform.d.ts +18 -0
  122. package/build/commands/dev/utils/platform.js +41 -0
  123. package/build/commands/dev/utils/platform.js.map +1 -0
  124. package/build/commands/dev/utils/prompt-binary-upgrade.d.ts +1 -0
  125. package/build/commands/dev/utils/prompt-binary-upgrade.js +12 -0
  126. package/build/commands/dev/utils/prompt-binary-upgrade.js.map +1 -0
  127. package/build/commands/dev/utils/qr-code.js +3 -10
  128. package/build/commands/dev/utils/qr-code.js.map +1 -1
  129. package/build/commands/dev/utils/simulator.d.ts +5 -2
  130. package/build/commands/dev/utils/simulator.js +43 -37
  131. package/build/commands/dev/utils/simulator.js.map +1 -1
  132. package/build/commands/dev/utils/start-app/config.d.ts +5 -0
  133. package/build/commands/dev/utils/start-app/config.js +25 -0
  134. package/build/commands/dev/utils/start-app/config.js.map +1 -0
  135. package/build/commands/dev/utils/start-app/start-app-with-options.d.ts +2 -0
  136. package/build/commands/dev/utils/start-app/start-app-with-options.js +94 -0
  137. package/build/commands/dev/utils/start-app/start-app-with-options.js.map +1 -0
  138. package/build/commands/dev/utils/start-app/start-app.d.ts +2 -0
  139. package/build/commands/dev/utils/start-app/start-app.js +10 -0
  140. package/build/commands/dev/utils/start-app/start-app.js.map +1 -0
  141. package/build/commands/dev/utils/start-app/types.d.ts +20 -0
  142. package/build/commands/dev/utils/start-app/types.js +2 -0
  143. package/build/commands/dev/utils/start-app/types.js.map +1 -0
  144. package/build/commands/dev/utils/types.d.ts +24 -0
  145. package/build/commands/dev/utils/types.js +7 -0
  146. package/build/commands/dev/utils/types.js.map +1 -0
  147. package/build/commands/dev/utils/version.d.ts +64 -0
  148. package/build/commands/dev/utils/version.js +101 -0
  149. package/build/commands/dev/utils/version.js.map +1 -0
  150. package/build/commands/dev/utils/with-retries.js +1 -5
  151. package/build/commands/dev/utils/with-retries.js.map +1 -1
  152. package/build/commands/doctor/index.d.ts +6 -0
  153. package/build/commands/doctor/index.js +21 -0
  154. package/build/commands/doctor/index.js.map +1 -0
  155. package/build/commands/doctor/utils/diagnose-dependencies.d.ts +7 -0
  156. package/build/commands/doctor/utils/diagnose-dependencies.js +108 -0
  157. package/build/commands/doctor/utils/diagnose-dependencies.js.map +1 -0
  158. package/build/commands/generate-graphql-types/index.d.ts +1 -0
  159. package/build/commands/generate-graphql-types/index.js +43 -27
  160. package/build/commands/generate-graphql-types/index.js.map +1 -1
  161. package/build/commands/info/index.d.ts +3 -0
  162. package/build/commands/info/index.js +42 -0
  163. package/build/commands/info/index.js.map +1 -0
  164. package/build/commands/setup/index.d.ts +2 -0
  165. package/build/commands/setup/index.js +81 -0
  166. package/build/commands/setup/index.js.map +1 -0
  167. package/build/commands/submit/config.d.ts +9 -0
  168. package/build/commands/submit/config.js +18 -0
  169. package/build/commands/submit/config.js.map +1 -0
  170. package/build/commands/submit/errors.d.ts +19 -0
  171. package/build/commands/submit/errors.js +87 -0
  172. package/build/commands/submit/errors.js.map +1 -0
  173. package/build/commands/submit/gcs.d.ts +6 -0
  174. package/build/commands/submit/gcs.js +10 -0
  175. package/build/commands/submit/gcs.js.map +1 -0
  176. package/build/commands/submit/index.d.ts +2 -0
  177. package/build/commands/submit/index.js +25 -0
  178. package/build/commands/submit/index.js.map +1 -0
  179. package/build/commands/submit/submit.d.ts +5 -0
  180. package/build/commands/submit/submit.js +222 -0
  181. package/build/commands/submit/submit.js.map +1 -0
  182. package/build/commands/submit/tasks.d.ts +37 -0
  183. package/build/commands/submit/tasks.js +91 -0
  184. package/build/commands/submit/tasks.js.map +1 -0
  185. package/build/commands/submit/types.d.ts +14 -0
  186. package/build/commands/submit/types.js +2 -0
  187. package/build/commands/submit/types.js.map +1 -0
  188. package/build/commands/submit/utils/assert-core-dependencies-version.d.ts +1 -0
  189. package/build/commands/submit/utils/assert-core-dependencies-version.js +58 -0
  190. package/build/commands/submit/utils/assert-core-dependencies-version.js.map +1 -0
  191. package/build/commands/submit/utils/request-entry-point-params.d.ts +1 -0
  192. package/build/commands/submit/utils/request-entry-point-params.js +41 -0
  193. package/build/commands/submit/utils/request-entry-point-params.js.map +1 -0
  194. package/build/commands/submit/validation.d.ts +1 -0
  195. package/build/commands/submit/validation.js +11 -0
  196. package/build/commands/submit/validation.js.map +1 -0
  197. package/build/commands/upgrade/index.d.ts +13 -0
  198. package/build/commands/upgrade/index.js +53 -0
  199. package/build/commands/upgrade/index.js.map +1 -0
  200. package/build/commands/upgrade/utils/cli.d.ts +1 -0
  201. package/build/commands/upgrade/utils/cli.js +15 -0
  202. package/build/commands/upgrade/utils/cli.js.map +1 -0
  203. package/build/commands/validate-manifest/index.d.ts +3 -0
  204. package/build/commands/validate-manifest/index.js +29 -0
  205. package/build/commands/validate-manifest/index.js.map +1 -0
  206. package/build/data/accept-invitation.d.ts +4 -0
  207. package/build/data/accept-invitation.js +16 -0
  208. package/build/data/accept-invitation.js.map +1 -0
  209. package/build/data/cancel-submission.d.ts +22 -0
  210. package/build/data/cancel-submission.js +26 -0
  211. package/build/data/cancel-submission.js.map +1 -0
  212. package/build/data/create-submission.d.ts +20 -0
  213. package/build/data/create-submission.js +27 -0
  214. package/build/data/create-submission.js.map +1 -0
  215. package/build/data/create-upload.d.ts +21 -0
  216. package/build/data/create-upload.js +40 -0
  217. package/build/data/create-upload.js.map +1 -0
  218. package/build/data/get-submissions.d.ts +27 -0
  219. package/build/data/get-submissions.js +33 -0
  220. package/build/data/get-submissions.js.map +1 -0
  221. package/build/data/gql-client.d.ts +8 -0
  222. package/build/data/gql-client.js +9 -0
  223. package/build/data/gql-client.js.map +1 -0
  224. package/build/data/mini.d.ts +5 -0
  225. package/build/data/mini.js +14 -0
  226. package/build/data/mini.js.map +1 -0
  227. package/build/data/types/autogenerated/shop-minis-admin-api/fragment-masking.d.ts +13 -0
  228. package/build/data/types/autogenerated/shop-minis-admin-api/fragment-masking.js +7 -0
  229. package/build/data/types/autogenerated/shop-minis-admin-api/fragment-masking.js.map +1 -0
  230. package/build/data/types/autogenerated/shop-minis-admin-api/gql.d.ts +75 -0
  231. package/build/data/types/autogenerated/shop-minis-admin-api/gql.js +24 -0
  232. package/build/data/types/autogenerated/shop-minis-admin-api/gql.js.map +1 -0
  233. package/build/data/types/autogenerated/shop-minis-admin-api/graphql.d.ts +1570 -0
  234. package/build/data/types/autogenerated/shop-minis-admin-api/graphql.js +1062 -0
  235. package/build/data/types/autogenerated/shop-minis-admin-api/graphql.js.map +1 -0
  236. package/build/data/types/autogenerated/shop-minis-admin-api/index.d.ts +2 -0
  237. package/build/data/types/autogenerated/shop-minis-admin-api/index.js +3 -0
  238. package/build/data/types/autogenerated/shop-minis-admin-api/index.js.map +1 -0
  239. package/build/dev-panel/asset-manifest.json +6 -9
  240. package/build/dev-panel/index.html +1 -1
  241. package/build/dev-panel/static/css/{main.31436fe3.css → main.7f1ee407.css} +2 -2
  242. package/build/dev-panel/static/css/main.7f1ee407.css.map +1 -0
  243. package/build/dev-panel/static/js/{main.27f47095.js → main.6625699c.js} +3 -3
  244. package/build/dev-panel/static/js/main.6625699c.js.map +1 -0
  245. package/build/index.d.ts +1 -1
  246. package/build/index.js +30 -15
  247. package/build/index.js.map +1 -1
  248. package/build/schemas/manifest.schema.json +198 -0
  249. package/build/utils/archive.d.ts +30 -0
  250. package/build/utils/archive.js +38 -0
  251. package/build/utils/archive.js.map +1 -0
  252. package/build/utils/common-tasks.d.ts +1 -0
  253. package/build/utils/common-tasks.js +49 -0
  254. package/build/utils/common-tasks.js.map +1 -0
  255. package/build/utils/development-params.d.ts +13 -0
  256. package/build/utils/development-params.js +42 -0
  257. package/build/utils/development-params.js.map +1 -0
  258. package/build/{commands/utils → utils}/exec-async-child-process.d.ts +1 -1
  259. package/build/{commands/utils → utils}/exec-async-child-process.js +6 -13
  260. package/build/utils/exec-async-child-process.js.map +1 -0
  261. package/build/utils/file.d.ts +1 -0
  262. package/build/utils/file.js +7 -0
  263. package/build/utils/file.js.map +1 -0
  264. package/build/utils/minis-manifest.d.ts +6 -0
  265. package/build/utils/minis-manifest.js +56 -0
  266. package/build/utils/minis-manifest.js.map +1 -0
  267. package/build/utils/package-manager.d.ts +38 -0
  268. package/build/utils/package-manager.js +98 -0
  269. package/build/utils/package-manager.js.map +1 -0
  270. package/build/utils/patch-package.d.ts +5 -0
  271. package/build/utils/patch-package.js +76 -0
  272. package/build/utils/patch-package.js.map +1 -0
  273. package/build/utils/replace-strings-in-template.d.ts +1 -0
  274. package/build/utils/replace-strings-in-template.js +15 -0
  275. package/build/utils/replace-strings-in-template.js.map +1 -0
  276. package/build/utils/semver.d.ts +1 -0
  277. package/build/utils/semver.js +19 -0
  278. package/build/utils/semver.js.map +1 -0
  279. package/build/{commands/utils → utils}/wrap-with-loading-indicator.d.ts +1 -1
  280. package/build/utils/wrap-with-loading-indicator.js +16 -0
  281. package/build/utils/wrap-with-loading-indicator.js.map +1 -0
  282. package/package.json +35 -28
  283. package/scripts/graphql-codegen.ts +23 -0
  284. package/scripts/test-template.ts +63 -0
  285. package/shipit.alpha.yml +3 -0
  286. package/templates/__template_blank/src/index.tsx +5 -4
  287. package/templates/__template_blank/src/types.ts +1 -1
  288. package/templates/__template_common/.eslintrc.js +16 -0
  289. package/templates/__template_common/assets.d.ts +14 -0
  290. package/templates/__template_common/babel.config.js +3 -17
  291. package/templates/__template_common/gitignore +2 -0
  292. package/templates/__template_common/index.tsx +3 -6
  293. package/templates/__template_common/metro.config.js +4 -30
  294. package/templates/__template_common/package.json +17 -47
  295. package/templates/__template_common/src/manifest.json +1 -27
  296. package/templates/__template_hello_world/src/components/ComponentLink.ts +31 -19
  297. package/templates/__template_hello_world/src/components/ComponentListItem.tsx +1 -0
  298. package/templates/__template_hello_world/src/components/FeaturedComponents.tsx +4 -2
  299. package/templates/__template_hello_world/src/components/quiz/ImageCarouselSlide.tsx +54 -0
  300. package/templates/__template_hello_world/src/components/quiz/MultipleChoiceSlide.tsx +77 -0
  301. package/templates/__template_hello_world/src/components/quiz/QuizProvider.tsx +64 -0
  302. package/templates/__template_hello_world/src/components/quiz/QuizSlide.tsx +79 -0
  303. package/templates/__template_hello_world/src/components/quiz/QuizSlideCommander.tsx +35 -0
  304. package/templates/__template_hello_world/src/components/quiz/TextFieldSlide.tsx +84 -0
  305. package/templates/__template_hello_world/src/components/quiz/TextSlide.tsx +6 -0
  306. package/templates/__template_hello_world/src/components/quiz/types.ts +72 -0
  307. package/templates/__template_hello_world/src/data/Test.graphql.d.ts +69 -76
  308. package/templates/__template_hello_world/src/data/TestProducts.graphql +30 -0
  309. package/templates/__template_hello_world/src/data/TestProducts.graphql.d.ts +159 -81
  310. package/templates/__template_hello_world/src/fixtures/mocked-products-with-variants.ts +274 -0
  311. package/templates/__template_hello_world/src/hooks/useQuizData.ts +26 -0
  312. package/templates/__template_hello_world/src/hooks/useQuizState.ts +27 -0
  313. package/templates/__template_hello_world/src/index.tsx +6 -5
  314. package/templates/__template_hello_world/src/routes.tsx +46 -22
  315. package/templates/__template_hello_world/src/screens/AccordionScreen.tsx +73 -0
  316. package/templates/__template_hello_world/src/screens/BottomSheetScreen.tsx +6 -5
  317. package/templates/__template_hello_world/src/screens/HomeScreen.tsx +14 -3
  318. package/templates/__template_hello_world/src/screens/{ImageCarouselScreen.tsx → ImageMultipleChoiceScreen.tsx} +4 -6
  319. package/templates/__template_hello_world/src/screens/InputScreen.tsx +13 -70
  320. package/templates/__template_hello_world/src/screens/QuizResultScreen.tsx +82 -0
  321. package/templates/__template_hello_world/src/screens/QuizScreen.tsx +40 -0
  322. package/templates/__template_hello_world/src/screens/QuizSlideScreen.tsx +150 -0
  323. package/templates/__template_hello_world/src/screens/ShopActionsScreen.tsx +48 -0
  324. package/templates/__template_hello_world/src/screens/VariantPickerScreen.tsx +120 -0
  325. package/templates/__template_hello_world/src/types.ts +27 -24
  326. package/templates/__template_hello_world/src/utils/mockQuizData.ts +330 -0
  327. package/templates/__template_hello_world/src/utils/quizUtils.ts +75 -0
  328. package/templates/__template_snowboardz/src/components/SkillLevelIcon.tsx +1 -4
  329. package/templates/__template_snowboardz/src/components/SkillLevelPicker.tsx +7 -1
  330. package/templates/__template_snowboardz/src/data/TestProducts.graphql +1 -1
  331. package/templates/__template_snowboardz/src/data/TestProducts.graphql.d.ts +84 -74
  332. package/templates/__template_snowboardz/src/index.tsx +6 -5
  333. package/templates/__template_snowboardz/src/routes.tsx +2 -2
  334. package/templates/__template_snowboardz/src/types.ts +3 -3
  335. package/build/commands/check/index.d.ts +0 -5
  336. package/build/commands/check/index.js +0 -77
  337. package/build/commands/check/index.js.map +0 -1
  338. package/build/commands/check/utils/versions.d.ts +0 -1
  339. package/build/commands/check/utils/versions.js +0 -14
  340. package/build/commands/check/utils/versions.js.map +0 -1
  341. package/build/commands/dev/utils/binaries.test.d.ts +0 -1
  342. package/build/commands/dev/utils/binaries.test.js +0 -275
  343. package/build/commands/dev/utils/binaries.test.js.map +0 -1
  344. package/build/commands/dev/utils/minis-manifest.d.ts +0 -1
  345. package/build/commands/dev/utils/minis-manifest.js +0 -24
  346. package/build/commands/dev/utils/minis-manifest.js.map +0 -1
  347. package/build/commands/utils/exec-async-child-process.js.map +0 -1
  348. package/build/commands/utils/wrap-with-loading-indicator.js +0 -23
  349. package/build/commands/utils/wrap-with-loading-indicator.js.map +0 -1
  350. package/build/dev-panel/middleware.d.ts +0 -4
  351. package/build/dev-panel/middleware.js +0 -11
  352. package/build/dev-panel/middleware.js.map +0 -1
  353. package/build/dev-panel/static/css/main.31436fe3.css.map +0 -1
  354. package/build/dev-panel/static/js/main.27f47095.js.map +0 -1
  355. package/build/dev-panel/static/media/bottomsheet.fe525b8722f6d504a185.png +0 -0
  356. package/build/dev-panel/static/media/navigation.597434370a97c328a970.png +0 -0
  357. package/build/dev-panel/static/media/stories.a425b6972a5338fabdad.png +0 -0
  358. package/templates/__template_blank/src/custom.d.ts +0 -4
  359. package/templates/__template_common/.eslintrc.json +0 -132
  360. package/templates/__template_common/patches/react-native+0.68.5.patch +0 -173
  361. package/templates/__template_hello_world/src/utils/getFlagEmoji.spec.tsx +0 -19
  362. /package/build/dev-panel/static/js/{main.27f47095.js.LICENSE.txt → main.6625699c.js.LICENSE.txt} +0 -0
@@ -1,173 +1,17 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.maybePromptBinaryUpgrade = exports.downloadBinary = exports.getLatestRemoteVersion = exports.getLatestDownloadedVersion = exports.isVersionAvailableLocally = exports.getLatestVersionFromFilesList = exports.binaryFileNameToVersion = exports.versionToBinaryFileName = exports.getBinaryFileExtensionForPlatform = exports.BINARIES_PATH = void 0;
7
- const path_1 = __importDefault(require("path"));
8
- const http_1 = __importDefault(require("http"));
9
- const storage_1 = require("@google-cloud/storage");
10
- const fs_extra_1 = __importDefault(require("fs-extra"));
11
- const semver_1 = require("semver");
12
- const lodash_1 = __importDefault(require("lodash"));
13
- const prompts_1 = __importDefault(require("prompts"));
14
- exports.BINARIES_PATH = path_1.default.join(process.cwd(), './.minis-cache');
15
- // TODO: set up domain and ssl certificate for cdn
16
- // https://console.cloud.google.com/net-services/cdn/backendBucket/details/minis-binaries-backend-bucket?project=arrive-167720
17
- // https://console.cloud.google.com/storage/browser/minis_cli_binaries
18
- const CDN_ADDRESS = 'http://35.244.235.176/';
19
- try {
20
- fs_extra_1.default.mkdirSync(exports.BINARIES_PATH);
21
- }
22
- catch {
23
- // directory already exists. do nothing
24
- }
25
- const GOOGLE_CLOUD_BUCKET_NAME = 'minis_cli_binaries';
26
- const bucket = new storage_1.Storage().bucket(GOOGLE_CLOUD_BUCKET_NAME);
27
- /**
28
- * Returns the file extension used for each platform.
29
- * android: .apk
30
- * ios: .zip (we intentionally compress .app files before uploading them to the cloud storage)
31
- */
32
- function getBinaryFileExtensionForPlatform(platform) {
33
- return platform === 'ios' ? '.zip' : '.apk';
34
- }
35
- exports.getBinaryFileExtensionForPlatform = getBinaryFileExtensionForPlatform;
36
- /**
37
- * @example
38
- * platform android
39
- * version 2.76.0
40
- * returns "2-76-0.apk"
41
- *
42
- * platform ios
43
- * version 2.55.0+4
44
- * returns "2-55-0+4.zip"
45
- */
46
- function versionToBinaryFileName(version, platform) {
47
- return (version.replace(/\./g, '-') + getBinaryFileExtensionForPlatform(platform));
48
- }
49
- exports.versionToBinaryFileName = versionToBinaryFileName;
50
- /**
51
- * @example
52
- * binaryFileName "2-76-0.apk"
53
- * returns "2.76.0"
54
- *
55
- * binaryFileName "2-16-0+3.zip"
56
- * returns "2.16.0+3"
57
- */
58
- function binaryFileNameToVersion(binaryFileName) {
59
- return binaryFileName.split('.')[0].replace(/-/g, '.');
60
- }
61
- exports.binaryFileNameToVersion = binaryFileNameToVersion;
62
- /**
63
- * @example
64
- * filenames ["2-76-0+3.apk", "2-76-0+3.zip", "2-77-0.apk", "2-77-0.zip", "2-77-0+1.apk", "2-77-0+1.zip"]
65
- * returns "2.77.0+1"
66
- */
67
- function getLatestVersionFromFilesList(filenames) {
68
- const localVersions = lodash_1.default.uniq(filenames
69
- .map(binaryFileNameToVersion)
70
- .filter(version => (0, semver_1.valid)(version)));
71
- localVersions.sort(semver_1.compareBuild);
72
- const last = localVersions.slice(-1)[0];
73
- return last ?? null;
74
- }
75
- exports.getLatestVersionFromFilesList = getLatestVersionFromFilesList;
1
+ import { readdir } from 'node:fs/promises';
2
+ import { PATHS } from '../../config.js';
3
+ import { metadataToBinaryFileName } from './version.js';
76
4
  /**
77
5
  * Returns a boolean indicating if the binary for the given version and platform is already downloaded in the system
78
6
  */
79
- async function isVersionAvailableLocally(platform, version) {
80
- const localBinariesList = await fs_extra_1.default.readdir(exports.BINARIES_PATH);
81
- const fileName = versionToBinaryFileName(version, platform);
82
- return localBinariesList.includes(fileName);
83
- }
84
- exports.isVersionAvailableLocally = isVersionAvailableLocally;
85
- /**
86
- * Gets the biggest version in the downloads folder for the given platform.
87
- */
88
- async function getLatestDownloadedVersion(platform) {
89
- const localBinariesList = await fs_extra_1.default.readdir(exports.BINARIES_PATH);
90
- const localBinariesForPlatform = localBinariesList.filter(name => name.endsWith(getBinaryFileExtensionForPlatform(platform)));
91
- return getLatestVersionFromFilesList(localBinariesForPlatform);
92
- }
93
- exports.getLatestDownloadedVersion = getLatestDownloadedVersion;
94
- /**
95
- * Returns the latest version that's present in the remote storage of binaries
96
- * TODO: this won't handle a bucket that has more than 50 files.
97
- */
98
- async function getLatestRemoteVersion(platform) {
99
- const filesResponse = await bucket.getFiles();
100
- const filesMetadata = filesResponse[0];
101
- const fileNames = filesMetadata
102
- .map(file => file.name)
103
- .filter(name => name.endsWith(getBinaryFileExtensionForPlatform(platform)));
104
- return getLatestVersionFromFilesList(fileNames);
105
- }
106
- exports.getLatestRemoteVersion = getLatestRemoteVersion;
107
- /**
108
- * Downloads a binary from the remote storage
109
- * @returns Promise that resolves to the downloaded version
110
- */
111
- async function downloadBinary(platform, { onProgress, version, } = {}) {
112
- const versionToDownload = version || (await getLatestRemoteVersion(platform));
113
- const isVersionAlreadyDownloaded = await isVersionAvailableLocally(platform, versionToDownload);
114
- if (isVersionAlreadyDownloaded) {
115
- onProgress?.(100);
116
- return versionToDownload;
117
- }
118
- const fileName = versionToBinaryFileName(versionToDownload, platform);
119
- const bucketResponse = await bucket.getFiles({
120
- prefix: fileName,
121
- });
122
- const remoteFile = bucketResponse[0][0];
123
- const fileSize = parseInt(remoteFile.metadata.size, 10);
124
- return new Promise((resolve, reject) => {
125
- const writeStream = fs_extra_1.default.createWriteStream(`${exports.BINARIES_PATH}/${fileName}`);
126
- const progressInterval = setInterval(() => {
127
- const progress = Math.round((writeStream.bytesWritten / fileSize) * 100);
128
- onProgress?.(progress);
129
- }, 200);
130
- http_1.default.get(`${CDN_ADDRESS}${fileName}`, cdnResponse => {
131
- cdnResponse.pipe(writeStream);
132
- writeStream.on('finish', () => {
133
- writeStream.close();
134
- onProgress?.(100);
135
- resolve(versionToDownload);
136
- clearInterval(progressInterval);
137
- });
138
- writeStream.on('error', err => {
139
- reject(err);
140
- clearInterval(progressInterval);
141
- });
142
- });
143
- });
144
- }
145
- exports.downloadBinary = downloadBinary;
146
- /**
147
- * Compares the current version against the latest available version.
148
- *
149
- * Does nothing if the current version is already the latest.
150
- * Otherwise prompts the user to download the new version.
151
- */
152
- async function maybePromptBinaryUpgrade(platform, { currentVersion, onProgress, onDownloadStart, } = {}) {
153
- const _currentVersion = currentVersion || (await getLatestDownloadedVersion(platform));
154
- const latestVersion = await getLatestRemoteVersion(platform);
155
- if (latestVersion === _currentVersion) {
156
- // returns early if user is already on latest version
157
- return null;
7
+ export async function isVersionAvailableLocally(version) {
8
+ const localBinariesList = await readdir(PATHS.CACHE_DIR);
9
+ try {
10
+ const fileName = metadataToBinaryFileName(version);
11
+ return localBinariesList.includes(fileName);
158
12
  }
159
- const { shouldUpdate } = await (0, prompts_1.default)({
160
- type: 'confirm',
161
- initial: true,
162
- name: 'shouldUpdate',
163
- message: "There's a new version of Shop available. Do you want to upgrade?",
164
- });
165
- if (shouldUpdate) {
166
- onDownloadStart?.(latestVersion);
167
- await downloadBinary(platform, { version: latestVersion, onProgress });
168
- return latestVersion;
13
+ catch {
14
+ return false;
169
15
  }
170
- return null;
171
16
  }
172
- exports.maybePromptBinaryUpgrade = maybePromptBinaryUpgrade;
173
17
  //# sourceMappingURL=binaries.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"binaries.js","sourceRoot":"","sources":["../../../../src/commands/dev/utils/binaries.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"binaries.js","sourceRoot":"","sources":["../../../../src/commands/dev/utils/binaries.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,OAAO,EAAC,MAAM,kBAAkB,CAAA;AAExC,OAAO,EAAC,KAAK,EAAC,MAAM,iBAAiB,CAAA;AAGrC,OAAO,EAAC,wBAAwB,EAAC,MAAM,cAAc,CAAA;AAErD;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,yBAAyB,CAAC,OAAuB;IACrE,MAAM,iBAAiB,GAAG,MAAM,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,CAAA;IACxD,IAAI;QACF,MAAM,QAAQ,GAAG,wBAAwB,CAAC,OAAO,CAAC,CAAA;QAElD,OAAO,iBAAiB,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAA;KAC5C;IAAC,MAAM;QACN,OAAO,KAAK,CAAA;KACb;AACH,CAAC"}
@@ -0,0 +1,2 @@
1
+ import { BuildType } from './types.js';
2
+ export declare function getBuildTypeForBinaryBuildType(type: string): BuildType;
@@ -0,0 +1,14 @@
1
+ import { BuildType } from './types.js';
2
+ export function getBuildTypeForBinaryBuildType(type) {
3
+ switch (type) {
4
+ case 'release':
5
+ return BuildType.Release;
6
+ case 'nightly':
7
+ return BuildType.Nightly;
8
+ case 'snapshot':
9
+ return BuildType.Snapshot;
10
+ default:
11
+ throw new Error(`Invalid build type: ${type}`);
12
+ }
13
+ }
14
+ //# sourceMappingURL=build-type.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"build-type.js","sourceRoot":"","sources":["../../../../src/commands/dev/utils/build-type.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,SAAS,EAAC,MAAM,YAAY,CAAA;AAEpC,MAAM,UAAU,8BAA8B,CAAC,IAAY;IACzD,QAAQ,IAAI,EAAE;QACZ,KAAK,SAAS;YACZ,OAAO,SAAS,CAAC,OAAO,CAAA;QAC1B,KAAK,SAAS;YACZ,OAAO,SAAS,CAAC,OAAO,CAAA;QAC1B,KAAK,UAAU;YACb,OAAO,SAAS,CAAC,QAAQ,CAAA;QAC3B;YACE,MAAM,IAAI,KAAK,CAAC,uBAAuB,IAAI,EAAE,CAAC,CAAA;KACjD;AACH,CAAC"}
@@ -1,3 +1,3 @@
1
- import type { DevCommandOptions } from '..';
2
- export declare function getBundleUrl({ host }: DevCommandOptions): Promise<string>;
3
- export declare function getDeeplink(miniHandle: string, options: DevCommandOptions, universalLink?: boolean): Promise<string>;
1
+ import type { DevCommandOptions } from '../index.js';
2
+ export declare function getBundleUrl({ host }: DevCommandOptions): string;
3
+ export declare function getDeeplink(miniHandle: string, options: DevCommandOptions, universalLink?: boolean): string;
@@ -1,30 +1,25 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getDeeplink = exports.getBundleUrl = void 0;
4
- async function getBundleUrl({ host }) {
1
+ import { outputDebug } from '@shopify/cli-kit/node/output';
2
+ import { getDevelopmentEntryPointParamsQueryString } from '../../../utils/development-params.js';
3
+ export function getBundleUrl({ host }) {
5
4
  return `http://${host}:8082/index.bundle`;
6
5
  }
7
- exports.getBundleUrl = getBundleUrl;
8
- async function getDeeplinkParams(miniHandle, options) {
9
- const bundleUrl = await getBundleUrl(options);
6
+ function getDeeplinkParams(miniHandle, options) {
7
+ const bundleUrl = getBundleUrl(options);
10
8
  const params = {
11
9
  handle: miniHandle,
12
10
  bundleUrl: encodeURIComponent(bundleUrl),
13
11
  rnVersion: process.env.npm_package_dependencies_react_native,
14
- manifest: {},
15
- entryPointsParams: null,
16
12
  };
17
13
  const stringifiedParams = JSON.stringify(params);
18
14
  return Buffer.from(stringifiedParams).toString('base64');
19
15
  }
20
- async function getDeeplink(miniHandle, options, universalLink = false) {
21
- const deeplinkParams = await getDeeplinkParams(miniHandle, options);
22
- if (universalLink) {
23
- return `https://shop.app/mini/remote/${deeplinkParams}`;
24
- }
25
- else {
26
- return `arrive://mini/remote/${deeplinkParams}`;
27
- }
16
+ export function getDeeplink(miniHandle, options, universalLink = false) {
17
+ const deeplinkParams = getDeeplinkParams(miniHandle, options);
18
+ const developmentParams = getDevelopmentEntryPointParamsQueryString();
19
+ const deeplink = universalLink
20
+ ? `https://shop.app/mini/remote/${deeplinkParams}${developmentParams}`
21
+ : `arrive://mini/remote/${deeplinkParams}${developmentParams}`;
22
+ outputDebug(`Deeplink: ${deeplink}`);
23
+ return deeplink;
28
24
  }
29
- exports.getDeeplink = getDeeplink;
30
25
  //# sourceMappingURL=deeplink.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"deeplink.js","sourceRoot":"","sources":["../../../../src/commands/dev/utils/deeplink.ts"],"names":[],"mappings":";;;AAEO,KAAK,UAAU,YAAY,CAAC,EAAC,IAAI,EAAoB;IAC1D,OAAO,UAAU,IAAI,oBAAoB,CAAA;AAC3C,CAAC;AAFD,oCAEC;AAED,KAAK,UAAU,iBAAiB,CAC9B,UAAkB,EAClB,OAA0B;IAE1B,MAAM,SAAS,GAAG,MAAM,YAAY,CAAC,OAAO,CAAC,CAAA;IAE7C,MAAM,MAAM,GAAG;QACb,MAAM,EAAE,UAAU;QAClB,SAAS,EAAE,kBAAkB,CAAC,SAAS,CAAC;QACxC,SAAS,EAAE,OAAO,CAAC,GAAG,CAAC,qCAAqC;QAC5D,QAAQ,EAAE,EAAE;QACZ,iBAAiB,EAAE,IAAI;KACxB,CAAA;IAED,MAAM,iBAAiB,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAA;IAEhD,OAAO,MAAM,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAA;AAC1D,CAAC;AAEM,KAAK,UAAU,WAAW,CAC/B,UAAkB,EAClB,OAA0B,EAC1B,aAAa,GAAG,KAAK;IAErB,MAAM,cAAc,GAAG,MAAM,iBAAiB,CAAC,UAAU,EAAE,OAAO,CAAC,CAAA;IAEnE,IAAI,aAAa,EAAE;QACjB,OAAO,gCAAgC,cAAc,EAAE,CAAA;KACxD;SAAM;QACL,OAAO,wBAAwB,cAAc,EAAE,CAAA;KAChD;AACH,CAAC;AAZD,kCAYC"}
1
+ {"version":3,"file":"deeplink.js","sourceRoot":"","sources":["../../../../src/commands/dev/utils/deeplink.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,WAAW,EAAC,MAAM,8BAA8B,CAAA;AAGxD,OAAO,EAAC,yCAAyC,EAAC,MAAM,sCAAsC,CAAA;AAE9F,MAAM,UAAU,YAAY,CAAC,EAAC,IAAI,EAAoB;IACpD,OAAO,UAAU,IAAI,oBAAoB,CAAA;AAC3C,CAAC;AAED,SAAS,iBAAiB,CAAC,UAAkB,EAAE,OAA0B;IACvE,MAAM,SAAS,GAAG,YAAY,CAAC,OAAO,CAAC,CAAA;IAEvC,MAAM,MAAM,GAAG;QACb,MAAM,EAAE,UAAU;QAClB,SAAS,EAAE,kBAAkB,CAAC,SAAS,CAAC;QACxC,SAAS,EAAE,OAAO,CAAC,GAAG,CAAC,qCAAqC;KAC7D,CAAA;IAED,MAAM,iBAAiB,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAA;IAEhD,OAAO,MAAM,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAA;AAC1D,CAAC;AAED,MAAM,UAAU,WAAW,CACzB,UAAkB,EAClB,OAA0B,EAC1B,aAAa,GAAG,KAAK;IAErB,MAAM,cAAc,GAAG,iBAAiB,CAAC,UAAU,EAAE,OAAO,CAAC,CAAA;IAC7D,MAAM,iBAAiB,GAAG,yCAAyC,EAAE,CAAA;IAErE,MAAM,QAAQ,GAAG,aAAa;QAC5B,CAAC,CAAC,gCAAgC,cAAc,GAAG,iBAAiB,EAAE;QACtE,CAAC,CAAC,wBAAwB,cAAc,GAAG,iBAAiB,EAAE,CAAA;IAEhE,WAAW,CAAC,aAAa,QAAQ,EAAE,CAAC,CAAA;IAEpC,OAAO,QAAQ,CAAA;AACjB,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import { Ora } from 'ora';
2
- import type { DevCommandOptions } from '..';
2
+ import type { DevCommandOptions } from '../index.js';
3
3
  export declare class InteractiveTerminal {
4
4
  miniHandle: string;
5
5
  options: DevCommandOptions;
@@ -18,6 +18,8 @@ export declare class InteractiveTerminal {
18
18
  loadingEnd(endState?: 'succeed' | 'fail' | 'warn' | 'info', logMessage?: string): void;
19
19
  handleKeyPress: (key: string) => Promise<void>;
20
20
  showSetupAndroidHomeInstructions(): Promise<void>;
21
- startAndroidApp(deviceId: string): Promise<void>;
22
21
  printDeeplinkQRCode(): Promise<void>;
22
+ private startApp;
23
+ private get deeplink();
24
+ private get loadingHandlers();
23
25
  }
@@ -1,30 +1,26 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.InteractiveTerminal = void 0;
7
- const ora_1 = __importDefault(require("ora"));
8
- const chalk_1 = __importDefault(require("chalk"));
9
- const open_1 = __importDefault(require("open"));
10
- const middleware_1 = require("../../../dev-panel/middleware");
11
- const android_1 = require("./android");
12
- const simulator_1 = require("./simulator");
13
- const qr_code_1 = require("./qr-code");
14
- const deeplink_1 = require("./deeplink");
15
- const minis_manifest_1 = require("./minis-manifest");
16
- const binaries_1 = require("./binaries");
1
+ import chalk from 'chalk';
2
+ import open from 'open';
3
+ import ora from 'ora';
4
+ import { getMiniManifest } from '../../../utils/minis-manifest.js';
5
+ import { androidHomeExists } from '../../config.js';
6
+ import { maybeLaunchEmulator, promptForAndroidDevices } from './android.js';
7
+ import { getBundleUrl, getDeeplink } from './deeplink.js';
8
+ import { printQRCode } from './qr-code.js';
9
+ import { bootSimulator, promptForSimulator } from './simulator.js';
10
+ import { Platform } from './platform.js';
11
+ import { startApp } from './start-app/start-app.js';
12
+ import { DEV_PANEL_BASE_URL } from './metro/metro-server-middleware.js';
17
13
  const { stdin } = process;
18
14
  function clearTerminal() {
19
15
  process.stdout.write('\x1B[2J\x1B[3J\x1B[H');
20
16
  }
21
17
  const CTRL_C = '\u0003';
22
- class InteractiveTerminal {
18
+ export class InteractiveTerminal {
23
19
  miniHandle;
24
20
  options;
25
21
  _loading;
26
22
  constructor(options) {
27
- this.miniHandle = (0, minis_manifest_1.getMiniManifest)().handle;
23
+ this.miniHandle = getMiniManifest().handle;
28
24
  this.options = options;
29
25
  }
30
26
  startWaitingForCommand = () => {
@@ -61,13 +57,13 @@ class InteractiveTerminal {
61
57
  }));
62
58
  };
63
59
  logInstructions() {
64
- console.log(`\n› Press ${chalk_1.default.cyan.bold(`a`)} │ Open on Android device or emulator
65
- › Press ${chalk_1.default.cyan.bold(`i`)} │ Open in iOS simulator`);
66
- console.log(`\n› Press ${chalk_1.default.cyan.bold(`q`)} │ Print QR code in terminal. Scan to open your Shop Mini on an iOS device with Shop installed
67
- › Press ${chalk_1.default.cyan.bold(`d`)} │ Open Developer Dashboard in web browser`);
68
- console.log(`\n› Press ${chalk_1.default.cyan.bold(`?`)} │ Show all commands
60
+ console.log(`\n› Press ${chalk.cyan.bold(`a`)} │ Open on Android device or emulator
61
+ › Press ${chalk.cyan.bold(`i`)} │ Open in iOS simulator`);
62
+ console.log(`\n› Press ${chalk.cyan.bold(`q`)} │ Print QR code in terminal. Scan to open your Shop Mini on an iOS device with Shop installed
63
+ › Press ${chalk.cyan.bold(`d`)} │ Open Developer Dashboard in web browser`);
64
+ console.log(`\n› Press ${chalk.cyan.bold(`?`)} │ Show all commands
69
65
  `);
70
- console.log(chalk_1.default.dim('Press Ctrl+C to exit.'));
66
+ console.log(chalk.dim('Press Ctrl+C to exit.'));
71
67
  }
72
68
  start() {
73
69
  this.logInstructions();
@@ -90,7 +86,7 @@ class InteractiveTerminal {
90
86
  if (this._loading) {
91
87
  this.loadingEnd(options.endPreviousLoadingWithStatus, options.endPreviousLoadingWithMessage);
92
88
  }
93
- this._loading = (0, ora_1.default)({ text: logMessage }).start();
89
+ this._loading = ora({ text: logMessage }).start();
94
90
  }
95
91
  loadingEnd(endState = 'succeed', logMessage) {
96
92
  if (!this._loading) {
@@ -107,70 +103,40 @@ class InteractiveTerminal {
107
103
  }
108
104
  case 'a': {
109
105
  clearTerminal();
110
- if (!(0, android_1.androidHomeExists)()) {
106
+ if (!androidHomeExists()) {
111
107
  this.showSetupAndroidHomeInstructions();
112
108
  break;
113
109
  }
114
- const device = await (0, android_1.promptForAndroidDevices)();
110
+ const device = await promptForAndroidDevices();
115
111
  if (device) {
116
112
  if (device.type === 'emulator') {
117
113
  this.loadingStart('Launching emulator');
118
- const emulatorId = await (0, android_1.maybeLaunchEmulator)(device.name);
114
+ const emulatorId = await maybeLaunchEmulator(device.name);
119
115
  if (!emulatorId) {
120
116
  this.loadingEnd('fail', `Couldn't launch emulator ${device.name}`);
121
117
  break;
122
118
  }
123
- await this.startAndroidApp(emulatorId);
119
+ await this.startApp(Platform.Android, emulatorId);
124
120
  }
125
121
  else {
126
- await this.startAndroidApp(device.name);
122
+ await this.startApp(Platform.Android, device.name);
127
123
  }
128
124
  }
129
125
  else {
130
126
  console.log('\nNo connected devices or emulators were found\n');
131
- console.log(`See ${chalk_1.default.blue.underline.bold('https://developer.android.com/studio/command-line/adb#Enabling')} for instructions on how to enable USB debugging on your device.`);
132
- console.log(`Or ${chalk_1.default.blue.underline.bold('https://developer.android.com/studio/run/emulator#get-started')} for instructions on how to create an emulator.`);
127
+ console.log(`See ${chalk.blue.underline.bold('https://developer.android.com/studio/command-line/adb#Enabling')} for instructions on how to enable USB debugging on your device.`);
128
+ console.log(`Or ${chalk.blue.underline.bold('https://developer.android.com/studio/run/emulator#get-started')} for instructions on how to create an emulator.`);
133
129
  this.waitForAnyKeyAndPrintInstructions();
134
130
  }
135
131
  break;
136
132
  }
137
133
  case 'i': {
138
134
  clearTerminal();
139
- const simulator = await (0, simulator_1.promptForSimulator)();
135
+ const simulator = await promptForSimulator();
140
136
  if (simulator) {
141
137
  this.loadingStart('Launching simulator');
142
- await (0, simulator_1.bootSimulator)(simulator.udid);
143
- const installedShopVersion = await (0, simulator_1.getInstalledShopVersion)(simulator.udid);
144
- if (installedShopVersion) {
145
- this.loadingEnd();
146
- // We assume that the version being used in the simulator matches the biggest version in the downloads folder
147
- // because version returned by the simulator does not include build numbers.
148
- const upgradedVersion = await (0, binaries_1.maybePromptBinaryUpgrade)('ios', {
149
- onDownloadStart: () => {
150
- this.loadingStart('Downloading Shop (0%)');
151
- },
152
- onProgress: progress => {
153
- this._loading.text = `Downloading Shop (${progress}%)`;
154
- },
155
- });
156
- if (upgradedVersion) {
157
- this.loadingStart('Installing Shop');
158
- await (0, simulator_1.installShopInSimulator)(simulator.udid, upgradedVersion);
159
- }
160
- }
161
- else {
162
- this.loadingStart('Downloading Shop (0%)');
163
- const downloadedVersion = await (0, binaries_1.downloadBinary)('ios', {
164
- onProgress: progress => {
165
- this._loading.text = `Downloading Shop (${progress}%)`;
166
- },
167
- });
168
- this.loadingStart('Installing Shop\n ↪ You can skip onboarding, or log in with your existing Shop account (optional).');
169
- await (0, simulator_1.installShopInSimulator)(simulator.udid, downloadedVersion);
170
- }
171
- this.loadingStart('Opening Shop');
172
- await (0, simulator_1.deeplinkToSimulator)(simulator.udid, await (0, deeplink_1.getDeeplink)(this.miniHandle, this.options));
173
- this.loadingEnd();
138
+ await bootSimulator(simulator.udid);
139
+ await this.startApp(Platform.IOS, simulator.udid);
174
140
  }
175
141
  else {
176
142
  console.log('\nNo simulator was selected\n');
@@ -183,13 +149,13 @@ class InteractiveTerminal {
183
149
  }
184
150
  case 'd': {
185
151
  // TODO: Should we send these as params? or should the dev panel website already know how to fetch them without the need of query params?
186
- // Advantadge would be that people could just type the base url in the browser whenever they want to open the dev panel. That's impossible with the query params being required
152
+ // Advantage would be that people could just type the base url in the browser whenever they want to open the dev panel. That's impossible with the query params being required
187
153
  const paramsObj = {
188
- bundleUrl: await (0, deeplink_1.getBundleUrl)(this.options),
189
- deepLink: await (0, deeplink_1.getDeeplink)(this.miniHandle, this.options, true),
154
+ bundleUrl: getBundleUrl(this.options),
155
+ deepLink: getDeeplink(this.miniHandle, this.options, true),
190
156
  };
191
157
  const searchParams = `?${new URLSearchParams(paramsObj).toString()}`;
192
- (0, open_1.default)(`${middleware_1.DEV_PANEL_BASE_URL}${searchParams}`);
158
+ open(`${DEV_PANEL_BASE_URL}${searchParams}`);
193
159
  break;
194
160
  }
195
161
  case CTRL_C: {
@@ -204,49 +170,42 @@ class InteractiveTerminal {
204
170
  }
205
171
  };
206
172
  async showSetupAndroidHomeInstructions() {
207
- console.warn(chalk_1.default.red("ANDROID_HOME environment variable is not set. Set Android SDK path to continue. Instructions on how to set it can be found on Android's developer docs."));
208
- console.log(`See ${chalk_1.default.blue.underline.bold('https://developer.android.com/studio/command-line/variables')}`);
173
+ console.warn(chalk.red("ANDROID_HOME environment variable is not set. Set Android SDK path to continue. Instructions on how to set it can be found on Android's developer docs."));
174
+ console.log(`See ${chalk.blue.underline.bold('https://developer.android.com/studio/command-line/variables')}`);
209
175
  await this.waitForAnyKeyAndPrintInstructions();
210
176
  }
211
- async startAndroidApp(deviceId) {
212
- const installedShopVersion = await (0, android_1.getInstalledShopVersion)(deviceId);
213
- if (installedShopVersion) {
214
- this.loadingEnd();
215
- // We assume that the version being used in the emulator matches the biggest version in the downloads folder
216
- // because version returned by the emulator does not include build numbers.
217
- const upgradedVersion = await (0, binaries_1.maybePromptBinaryUpgrade)('android', {
218
- onDownloadStart: () => {
219
- this.loadingStart('Downloading Shop (0%)');
220
- },
221
- onProgress: progress => {
222
- this._loading.text = `Downloading Shop (${progress}%)`;
223
- },
224
- });
225
- if (upgradedVersion) {
226
- this.loadingStart('Installing Shop');
227
- await (0, android_1.installShopInEmulator)(deviceId, upgradedVersion);
228
- }
229
- }
230
- else {
231
- this.loadingStart('Downloading Shop (0%)');
232
- const downloadedVersion = await (0, binaries_1.downloadBinary)('android', {
233
- onProgress: progress => {
234
- this._loading.text = `Downloading Shop (${progress}%)`;
235
- },
236
- });
237
- this.loadingStart('Installing Shop\n ↪ You can skip onboarding, or log in with your existing Shop account (optional).');
238
- await (0, android_1.installShopInEmulator)(deviceId, downloadedVersion);
239
- }
240
- this.loadingStart('Opening Shop');
241
- await (0, android_1.connectDevelopmentServer)(deviceId);
242
- await (0, android_1.deeplinkToEmulator)(deviceId, await (0, deeplink_1.getDeeplink)(this.miniHandle, this.options));
243
- this.loadingEnd();
244
- }
245
177
  async printDeeplinkQRCode() {
246
178
  console.log('\n');
247
- await (0, qr_code_1.printQRCode)(await (0, deeplink_1.getDeeplink)(this.miniHandle, this.options, true));
179
+ await printQRCode(getDeeplink(this.miniHandle, this.options, true));
248
180
  console.log('Scan the QR code to open Shop Mini on your device (requires the Shop app to be installed)\n');
249
181
  }
182
+ async startApp(platform, deviceId) {
183
+ try {
184
+ await startApp({
185
+ platform,
186
+ deviceId,
187
+ deeplink: this.deeplink,
188
+ buildType: this.options.buildType,
189
+ snapshotVersion: this.options.snapshotVersion,
190
+ }, this.loadingHandlers);
191
+ }
192
+ catch (err) {
193
+ this.loadingHandlers.onLoadingEnd('fail', err?.message || err);
194
+ }
195
+ }
196
+ get deeplink() {
197
+ return getDeeplink(this.miniHandle, this.options);
198
+ }
199
+ get loadingHandlers() {
200
+ return {
201
+ onLoadingStart: this.loadingStart.bind(this),
202
+ onLoadingEnd: this.loadingEnd.bind(this),
203
+ onLoadingUpdate: (text) => {
204
+ if (this._loading) {
205
+ this._loading.text = text;
206
+ }
207
+ },
208
+ };
209
+ }
250
210
  }
251
- exports.InteractiveTerminal = InteractiveTerminal;
252
211
  //# sourceMappingURL=interactive-terminal.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"interactive-terminal.js","sourceRoot":"","sources":["../../../../src/commands/dev/utils/interactive-terminal.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"interactive-terminal.js","sourceRoot":"","sources":["../../../../src/commands/dev/utils/interactive-terminal.ts"],"names":[],"mappings":"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"}