@shopify/shop-minis-cli 0.0.123 → 0.0.125

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 (62) hide show
  1. package/build/commands/codemod/releases/index.js +2 -0
  2. package/build/commands/codemod/releases/index.js.map +1 -1
  3. package/build/commands/codemod/releases/v0-0-125.d.ts +3 -0
  4. package/build/commands/codemod/releases/v0-0-125.js +37 -0
  5. package/build/commands/codemod/releases/v0-0-125.js.map +1 -0
  6. package/build/commands/create-extension/utils/add-target-to-config.js +5 -0
  7. package/build/commands/create-extension/utils/add-target-to-config.js.map +1 -1
  8. package/build/commands/dev/utils/android.js +1 -0
  9. package/build/commands/dev/utils/android.js.map +1 -1
  10. package/build/commands/dev/utils/development-stores.d.ts +2 -0
  11. package/build/commands/dev/utils/development-stores.js +37 -0
  12. package/build/commands/dev/utils/development-stores.js.map +1 -0
  13. package/build/commands/dev/utils/interactive-terminal.d.ts +2 -8
  14. package/build/commands/dev/utils/interactive-terminal.js +23 -37
  15. package/build/commands/dev/utils/interactive-terminal.js.map +1 -1
  16. package/build/commands/dev/utils/metro/metro-reporter.d.ts +8 -0
  17. package/build/commands/dev/utils/metro/metro-reporter.js +20 -0
  18. package/build/commands/dev/utils/metro/metro-reporter.js.map +1 -1
  19. package/build/commands/dev/utils/start-app/config.js +1 -2
  20. package/build/commands/dev/utils/start-app/config.js.map +1 -1
  21. package/build/commands/dev/utils/start-app/start-app-with-options.d.ts +3 -2
  22. package/build/commands/dev/utils/start-app/start-app-with-options.js +10 -9
  23. package/build/commands/dev/utils/start-app/start-app-with-options.js.map +1 -1
  24. package/build/commands/dev/utils/start-app/start-app.d.ts +3 -2
  25. package/build/commands/dev/utils/start-app/start-app.js +1 -1
  26. package/build/commands/dev/utils/start-app/start-app.js.map +1 -1
  27. package/build/commands/dev/utils/start-app/types.d.ts +0 -6
  28. package/build/commands/generate-graphql-types/utils/generate-graphql-types.js +2 -41
  29. package/build/commands/generate-graphql-types/utils/generate-graphql-types.js.map +1 -1
  30. package/build/commands/generate-graphql-types/utils/get-graphql-config.d.ts +1 -0
  31. package/build/commands/generate-graphql-types/utils/get-graphql-config.js +11 -0
  32. package/build/commands/generate-graphql-types/utils/get-graphql-config.js.map +1 -0
  33. package/build/commands/open-development-store/index.d.ts +12 -0
  34. package/build/commands/open-development-store/index.js +95 -0
  35. package/build/commands/open-development-store/index.js.map +1 -0
  36. package/build/commands/open-development-store/utils/prompt-deeplink-host.d.ts +6 -0
  37. package/build/commands/open-development-store/utils/prompt-deeplink-host.js +33 -0
  38. package/build/commands/open-development-store/utils/prompt-deeplink-host.js.map +1 -0
  39. package/build/constants/extensions.d.ts +0 -3
  40. package/build/constants/extensions.js +0 -4
  41. package/build/constants/extensions.js.map +1 -1
  42. package/build/data/get-development-stores.d.ts +6 -0
  43. package/build/data/get-development-stores.js +18 -0
  44. package/build/data/get-development-stores.js.map +1 -0
  45. package/build/data/types/autogenerated/shop-minis-admin-api/gql.d.ts +7 -0
  46. package/build/data/types/autogenerated/shop-minis-admin-api/gql.js +1 -0
  47. package/build/data/types/autogenerated/shop-minis-admin-api/gql.js.map +1 -1
  48. package/build/data/types/autogenerated/shop-minis-admin-api/graphql.d.ts +24 -0
  49. package/build/data/types/autogenerated/shop-minis-admin-api/graphql.js +39 -0
  50. package/build/data/types/autogenerated/shop-minis-admin-api/graphql.js.map +1 -1
  51. package/build/index.js +2 -0
  52. package/build/index.js.map +1 -1
  53. package/build/schemas/manifest.schema.json +0 -6
  54. package/build/utils/loading-state-handlers.d.ts +10 -0
  55. package/build/utils/loading-state-handlers.js +23 -0
  56. package/build/utils/loading-state-handlers.js.map +1 -0
  57. package/package.json +1 -1
  58. package/templates/__template_common/index.tsx +1 -3
  59. package/templates/__template_shoppable_posts/src/App.tsx +8 -3
  60. package/templates/__template_shoppable_videos/src/App.tsx +8 -3
  61. package/templates/extensions/queries/__template_product-page/input.graphql +3 -0
  62. package/templates/extensions/queries/__template_product-page/input.graphql.d.ts +10 -0
@@ -0,0 +1,10 @@
1
+ import ora from 'ora';
2
+ export declare class LoadingStateHandlers {
3
+ _loading: ora.Ora | null;
4
+ loadingStart: (logMessage: string, options?: {
5
+ endPreviousLoadingWithStatus?: 'succeed' | 'fail' | 'warn' | 'info';
6
+ endPreviousLoadingWithMessage?: string;
7
+ }) => void;
8
+ loadingEnd: (endState?: 'succeed' | 'fail' | 'warn' | 'info', logMessage?: string) => void;
9
+ loadingUpdate: (text: string) => void;
10
+ }
@@ -0,0 +1,23 @@
1
+ import ora from 'ora';
2
+ export class LoadingStateHandlers {
3
+ _loading = null;
4
+ loadingStart = (logMessage, options = {}) => {
5
+ if (this._loading) {
6
+ this.loadingEnd(options.endPreviousLoadingWithStatus, options.endPreviousLoadingWithMessage);
7
+ }
8
+ this._loading = ora({ text: logMessage }).start();
9
+ };
10
+ loadingEnd = (endState = 'succeed', logMessage) => {
11
+ if (!this._loading) {
12
+ return;
13
+ }
14
+ this._loading[endState](logMessage);
15
+ this._loading = null;
16
+ };
17
+ loadingUpdate = (text) => {
18
+ if (this._loading) {
19
+ this._loading.text = text;
20
+ }
21
+ };
22
+ }
23
+ //# sourceMappingURL=loading-state-handlers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"loading-state-handlers.js","sourceRoot":"","sources":["../../src/utils/loading-state-handlers.ts"],"names":[],"mappings":"AAAA,OAAO,GAAG,MAAM,KAAK,CAAA;AAErB,MAAM,OAAO,oBAAoB;IAC/B,QAAQ,GAAmB,IAAI,CAAA;IAE/B,YAAY,GAAG,CACb,UAAkB,EAClB,UAGI,EAAE,EACN,EAAE;QACF,IAAI,IAAI,CAAC,QAAQ,EAAE;YACjB,IAAI,CAAC,UAAU,CACb,OAAO,CAAC,4BAA4B,EACpC,OAAO,CAAC,6BAA6B,CACtC,CAAA;SACF;QAED,IAAI,CAAC,QAAQ,GAAG,GAAG,CAAC,EAAC,IAAI,EAAE,UAAU,EAAC,CAAC,CAAC,KAAK,EAAE,CAAA;IACjD,CAAC,CAAA;IAED,UAAU,GAAG,CACX,WAAiD,SAAS,EAC1D,UAAmB,EACnB,EAAE;QACF,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;YAClB,OAAM;SACP;QAED,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,UAAU,CAAC,CAAA;QACnC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAA;IACtB,CAAC,CAAA;IAED,aAAa,GAAG,CAAC,IAAY,EAAE,EAAE;QAC/B,IAAI,IAAI,CAAC,QAAQ,EAAE;YACjB,IAAI,CAAC,QAAQ,CAAC,IAAI,GAAG,IAAI,CAAA;SAC1B;IACH,CAAC,CAAA;CACF"}
package/package.json CHANGED
@@ -4,7 +4,7 @@
4
4
  "access": "public",
5
5
  "@shopify:registry": "https://registry.npmjs.org/"
6
6
  },
7
- "version": "0.0.123",
7
+ "version": "0.0.125",
8
8
  "description": "Shop Minis CLI",
9
9
  "main": "build/index.js",
10
10
  "bin": {
@@ -2,6 +2,4 @@ import {renderDevelopmentMini} from '@shopify/shop-minis-runtime/src/utils/rende
2
2
 
3
3
  import MiniApp from './src'
4
4
 
5
- renderDevelopmentMini(MiniApp, {
6
- enableApiSandbox: true,
7
- })
5
+ renderDevelopmentMini(MiniApp)
@@ -3,7 +3,6 @@ import {StatusBar} from 'react-native'
3
3
  import {
4
4
  ShoppablePosts,
5
5
  useMinisParams,
6
- MINIS_SANDBOX_SHOP_GID,
7
6
  SafeAreaView,
8
7
  Box,
9
8
  shoppablePostsFixture,
@@ -13,12 +12,14 @@ import {
13
12
  * A stub type to get you started. Remove this in favor of the type of your extension input query data moving forward.
14
13
  */
15
14
  interface MyExtensionDataType {
16
- shopId: string
15
+ shop?: {
16
+ id: string
17
+ }
17
18
  }
18
19
 
19
20
  export function App() {
20
21
  const {extensionData} = useMinisParams<MyExtensionDataType>()
21
- const shopId = extensionData?.shopId || MINIS_SANDBOX_SHOP_GID
22
+ const shopId = extensionData?.shop?.id
22
23
 
23
24
  const shoppablePosts = useMemo(() => {
24
25
  // Format your data in to the shape expected by `<ShoppablePosts />`
@@ -26,6 +27,10 @@ export function App() {
26
27
  return shoppablePostsFixture
27
28
  }, [])
28
29
 
30
+ if (!shopId) {
31
+ throw new Error('Shop not found')
32
+ }
33
+
29
34
  return (
30
35
  <Box backgroundColor="foregrounds-contrasting-inverted" flex={1}>
31
36
  <StatusBar barStyle="light-content" />
@@ -3,7 +3,6 @@ import {StatusBar} from 'react-native'
3
3
  import {
4
4
  ShoppableVideos,
5
5
  useMinisParams,
6
- MINIS_SANDBOX_SHOP_GID,
7
6
  Box,
8
7
  shoppableVideosFixture,
9
8
  } from '@shopify/shop-minis-platform-sdk'
@@ -12,12 +11,14 @@ import {
12
11
  * A stub type to get you started. Remove this in favor of the type of your extension input query data moving forward.
13
12
  */
14
13
  interface MyExtensionDataType {
15
- shopId: string
14
+ shop?: {
15
+ id: string
16
+ }
16
17
  }
17
18
 
18
19
  export function App() {
19
20
  const {extensionData} = useMinisParams<MyExtensionDataType>()
20
- const shopId = extensionData?.shopId || MINIS_SANDBOX_SHOP_GID
21
+ const shopId = extensionData?.shop?.id
21
22
 
22
23
  const shoppableVideos = useMemo(() => {
23
24
  // Format your data in to the shape expected by `<ShoppableVideos />`
@@ -25,6 +26,10 @@ export function App() {
25
26
  return shoppableVideosFixture
26
27
  }, [])
27
28
 
29
+ if (!shopId) {
30
+ throw new Error('Shop not found')
31
+ }
32
+
28
33
  return (
29
34
  <Box backgroundColor="foregrounds-contrasting-inverted" flex={1}>
30
35
  <StatusBar barStyle="light-content" />
@@ -3,4 +3,7 @@ query __QUERY_NAME__ {
3
3
  id
4
4
  title
5
5
  }
6
+ shop {
7
+ id
8
+ }
6
9
  }
@@ -6,9 +6,14 @@ export namespace __QUERY_NAME__QueryPartialData {
6
6
  id?: string | null;
7
7
  title?: string | null;
8
8
  }
9
+ export interface Shop {
10
+ __typename?: "Shop" | null;
11
+ id?: string | null;
12
+ }
9
13
  }
10
14
  export interface __QUERY_NAME__QueryPartialData {
11
15
  product?: __QUERY_NAME__QueryPartialData.Product | null;
16
+ shop?: __QUERY_NAME__QueryPartialData.Shop | null;
12
17
  }
13
18
  export namespace __QUERY_NAME__QueryData {
14
19
  export interface Product {
@@ -16,9 +21,14 @@ export namespace __QUERY_NAME__QueryData {
16
21
  id: string;
17
22
  title: string;
18
23
  }
24
+ export interface Shop {
25
+ __typename: "Shop";
26
+ id: string;
27
+ }
19
28
  }
20
29
  export interface __QUERY_NAME__QueryData {
21
30
  product?: __QUERY_NAME__QueryData.Product | null;
31
+ shop?: __QUERY_NAME__QueryData.Shop | null;
22
32
  }
23
33
  declare const document: DocumentNode<__QUERY_NAME__QueryData, never, __QUERY_NAME__QueryPartialData> & TypedDocumentNode<__QUERY_NAME__QueryData, {
24
34
  [key: string]: never;