@vc-shell/create-vc-app 1.0.340 → 1.1.0-alpha.2

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 (84) hide show
  1. package/CHANGELOG.md +22 -0
  2. package/README.md +30 -30
  3. package/dist/index.js +154 -186
  4. package/dist/templates/base/LICENSE +12 -12
  5. package/dist/templates/base/README.md +54 -54
  6. package/dist/templates/base/_browserslistrc +3 -3
  7. package/dist/templates/base/_commitlintrc.json +3 -3
  8. package/dist/templates/base/_editorconfig +22 -22
  9. package/dist/templates/base/_env +3 -3
  10. package/dist/templates/base/_env.local +1 -1
  11. package/dist/templates/base/_eslintignore +3 -3
  12. package/dist/templates/base/_eslintrc.js +41 -41
  13. package/dist/templates/base/_github/COMMIT_CONVENTION.md +91 -91
  14. package/dist/templates/base/_github/PULL_REQUEST_TEMPLATE.md +8 -8
  15. package/dist/templates/base/_gitignore +71 -71
  16. package/dist/templates/base/_husky/commit-msg +4 -4
  17. package/dist/templates/base/_husky/pre-commit +4 -4
  18. package/dist/templates/base/_package.json +5 -6
  19. package/dist/templates/base/_prettierignore +4 -4
  20. package/dist/templates/base/_prettierrc +4 -4
  21. package/dist/templates/base/_vscode/extensions.json +14 -14
  22. package/dist/templates/base/_vscode/settings.json +14 -14
  23. package/dist/templates/base/_yarn/releases/yarn-4.0.2.cjs +893 -893
  24. package/dist/templates/base/_yarnrc.yml +7 -7
  25. package/dist/templates/base/index.html +26 -26
  26. package/dist/templates/base/postcss.config.cjs +6 -6
  27. package/dist/templates/base/public/assets/app-select.svg +11 -11
  28. package/dist/templates/base/public/assets/logo-white.svg +21 -21
  29. package/dist/templates/base/public/assets/logo.svg +8 -8
  30. package/dist/templates/base/public/img/icons/safari-pinned-tab.svg +32 -32
  31. package/dist/templates/base/scripts/release.ts +18 -18
  32. package/dist/templates/base/src/api_client/README.md +78 -78
  33. package/dist/templates/base/src/composables/index.ts +1 -1
  34. package/dist/templates/base/src/env.d.ts +9 -9
  35. package/dist/templates/base/src/locales/en.json +3 -3
  36. package/dist/templates/base/src/locales/index.ts +2 -2
  37. package/dist/templates/base/src/router/index.ts +10 -10
  38. package/dist/templates/base/src/router/routes.ts +78 -78
  39. package/dist/templates/base/src/shims-vue.d.ts +63 -63
  40. package/dist/templates/base/src/styles/base.scss +38 -38
  41. package/dist/templates/base/src/styles/colors.scss +10 -10
  42. package/dist/templates/base/src/styles/custom.scss +2 -2
  43. package/dist/templates/base/tailwind.config.ts +7 -7
  44. package/dist/templates/base/tsconfig.json +16 -16
  45. package/dist/templates/base/vite.config.mts +5 -5
  46. package/dist/templates/mocks/sample-data/constants.ts +86 -86
  47. package/dist/templates/mocks/sample-data/index.ts +2 -2
  48. package/dist/templates/mocks/sample-data/methods.ts +65 -65
  49. package/dist/templates/modules/classic-module/composables/index.ts +2 -2
  50. package/dist/templates/modules/classic-module/composables/use{{ModuleNamePascalCase}}Details/index.ts +19 -19
  51. package/dist/templates/modules/classic-module/composables/use{{ModuleNamePascalCase}}List/index.ts +23 -23
  52. package/dist/templates/modules/classic-module/index.ts +8 -8
  53. package/dist/templates/modules/classic-module/locales/en.json +28 -28
  54. package/dist/templates/modules/classic-module/locales/index.ts +2 -2
  55. package/dist/templates/modules/classic-module/pages/details.vue +61 -61
  56. package/dist/templates/modules/classic-module/pages/index.ts +2 -2
  57. package/dist/templates/modules/classic-module/pages/list.vue +162 -162
  58. package/dist/templates/modules/dynamic-module/composables/index.ts +2 -2
  59. package/dist/templates/modules/dynamic-module/composables/use{{ModuleNamePascalCase}}Details/index.ts +37 -37
  60. package/dist/templates/modules/dynamic-module/composables/use{{ModuleNamePascalCase}}List/index.ts +49 -49
  61. package/dist/templates/modules/dynamic-module/index.ts +8 -8
  62. package/dist/templates/modules/dynamic-module/locales/en.json +35 -35
  63. package/dist/templates/modules/dynamic-module/locales/index.ts +2 -2
  64. package/dist/templates/modules/dynamic-module/pages/details.ts +20 -20
  65. package/dist/templates/modules/dynamic-module/pages/index.ts +4 -4
  66. package/dist/templates/modules/dynamic-module/pages/list.ts +35 -35
  67. package/dist/templates/sample/classic-module/composables/index.ts +2 -2
  68. package/dist/templates/sample/classic-module/composables/useDetails/index.ts +41 -41
  69. package/dist/templates/sample/classic-module/composables/useList/index.ts +41 -41
  70. package/dist/templates/sample/classic-module/index.ts +8 -8
  71. package/dist/templates/sample/classic-module/locales/en.json +59 -59
  72. package/dist/templates/sample/classic-module/locales/index.ts +2 -2
  73. package/dist/templates/sample/classic-module/pages/details.vue +257 -257
  74. package/dist/templates/sample/classic-module/pages/index.ts +2 -2
  75. package/dist/templates/sample/dynamic-module/composables/index.ts +2 -2
  76. package/dist/templates/sample/dynamic-module/composables/useDetails/index.ts +46 -46
  77. package/dist/templates/sample/dynamic-module/composables/useList/index.ts +50 -50
  78. package/dist/templates/sample/dynamic-module/index.ts +8 -8
  79. package/dist/templates/sample/dynamic-module/locales/en.json +69 -69
  80. package/dist/templates/sample/dynamic-module/locales/index.ts +2 -2
  81. package/dist/templates/sample/dynamic-module/pages/details.ts +100 -100
  82. package/dist/templates/sample/dynamic-module/pages/index.ts +4 -4
  83. package/dist/templates/sample/dynamic-module/pages/list.ts +81 -81
  84. package/package.json +4 -3
@@ -1,78 +1,78 @@
1
- import { RouteRecordRaw } from "vue-router";
2
- import App from "../pages/App.vue";
3
- import { Invite, Login, ResetPassword, useBladeNavigation, ChangePasswordPage } from "@vc-shell/framework";
4
- // eslint-disable-next-line import/no-unresolved
5
- import whiteLogoImage from "/assets/logo-white.svg";
6
- // eslint-disable-next-line import/no-unresolved
7
- import bgImage from "/assets/background.jpg";
8
-
9
- export const routes: RouteRecordRaw[] = [
10
- {
11
- path: "/",
12
- component: App,
13
- name: "App",
14
- meta: {
15
- root: true,
16
- },
17
- children: [],
18
- redirect: (to) => {
19
- if (to.name === "App") {
20
- return { path: "/{{ModuleName}}", params: to.params };
21
- }
22
- return to.path;
23
- },
24
- },
25
- {
26
- name: "Login",
27
- path: "/login",
28
- component: Login,
29
- props: () => ({
30
- logo: whiteLogoImage,
31
- background: bgImage,
32
- title: "{{AppNameSentenceCase}}",
33
- }),
34
- },
35
- {
36
- name: "Invite",
37
- path: "/invite",
38
- component: Invite,
39
- props: (route) => ({
40
- userId: route.query.userId,
41
- token: route.query.token,
42
- userName: route.query.userName,
43
- logo: whiteLogoImage,
44
- background: bgImage,
45
- }),
46
- },
47
- {
48
- name: "ResetPassword",
49
- path: "/resetpassword",
50
- component: ResetPassword,
51
- props: (route) => ({
52
- userId: route.query.userId,
53
- token: route.query.token,
54
- userName: route.query.userName,
55
- logo: whiteLogoImage,
56
- background: bgImage,
57
- }),
58
- },
59
- {
60
- name: "ChangePassword",
61
- path: "/changepassword",
62
- component: ChangePasswordPage,
63
- meta: {
64
- forced: true,
65
- },
66
- props: (route) => ({
67
- background: bgImage,
68
- }),
69
- },
70
- {
71
- path: "/:pathMatch(.*)*",
72
- component: App,
73
- beforeEnter: async (to) => {
74
- const { routeResolver } = useBladeNavigation();
75
- return routeResolver(to);
76
- },
77
- },
78
- ];
1
+ import { RouteRecordRaw } from "vue-router";
2
+ import App from "../pages/App.vue";
3
+ import { Invite, Login, ResetPassword, useBladeNavigation, ChangePasswordPage } from "@vc-shell/framework";
4
+ // eslint-disable-next-line import/no-unresolved
5
+ import whiteLogoImage from "/assets/logo-white.svg";
6
+ // eslint-disable-next-line import/no-unresolved
7
+ import bgImage from "/assets/background.jpg";
8
+
9
+ export const routes: RouteRecordRaw[] = [
10
+ {
11
+ path: "/",
12
+ component: App,
13
+ name: "App",
14
+ meta: {
15
+ root: true,
16
+ },
17
+ children: [],
18
+ redirect: (to) => {
19
+ if (to.name === "App") {
20
+ return { path: "/{{ModuleName}}", params: to.params };
21
+ }
22
+ return to.path;
23
+ },
24
+ },
25
+ {
26
+ name: "Login",
27
+ path: "/login",
28
+ component: Login,
29
+ props: () => ({
30
+ logo: whiteLogoImage,
31
+ background: bgImage,
32
+ title: "{{AppNameSentenceCase}}",
33
+ }),
34
+ },
35
+ {
36
+ name: "Invite",
37
+ path: "/invite",
38
+ component: Invite,
39
+ props: (route) => ({
40
+ userId: route.query.userId,
41
+ token: route.query.token,
42
+ userName: route.query.userName,
43
+ logo: whiteLogoImage,
44
+ background: bgImage,
45
+ }),
46
+ },
47
+ {
48
+ name: "ResetPassword",
49
+ path: "/resetpassword",
50
+ component: ResetPassword,
51
+ props: (route) => ({
52
+ userId: route.query.userId,
53
+ token: route.query.token,
54
+ userName: route.query.userName,
55
+ logo: whiteLogoImage,
56
+ background: bgImage,
57
+ }),
58
+ },
59
+ {
60
+ name: "ChangePassword",
61
+ path: "/changepassword",
62
+ component: ChangePasswordPage,
63
+ meta: {
64
+ forced: true,
65
+ },
66
+ props: (route) => ({
67
+ background: bgImage,
68
+ }),
69
+ },
70
+ {
71
+ path: "/:pathMatch(.*)*",
72
+ component: App,
73
+ beforeEnter: async (to) => {
74
+ const { routeResolver } = useBladeNavigation();
75
+ return routeResolver(to);
76
+ },
77
+ },
78
+ ];
@@ -1,63 +1,63 @@
1
- /* eslint-disable */
2
- import {CoreBladeAdditionalSettings} from "@vc-shell/framework";
3
- import {Ref, Plugin} from "vue";
4
- import {DynamicGridSchema, DynamicDetailsSchema} from "@vc-shell/framework";
5
- import * as vue from "vue";
6
- import * as vueRouter from "vue-router";
7
- import * as veeValidate from "vee-validate";
8
- import * as vueI18n from "vue-i18n";
9
- import moment from "moment";
10
- import type {Component} from "vue";
11
-
12
- declare module "*.vue" {
13
- import type {DefineComponent} from "vue";
14
- const component: DefineComponent<{}, {}, any>;
15
- export default component;
16
- }
17
-
18
- declare module "@vue/runtime-core" {
19
- interface ComponentCustomProperties {
20
- $hasAccess: (permissions: string | string[]) => boolean;
21
- $isPhone: Ref<boolean>;
22
- $isTablet: Ref<boolean>;
23
- $isMobile: Ref<boolean>;
24
- $isDesktop: Ref<boolean>;
25
- $isTouch: boolean;
26
- $dynamicModules: {
27
- [x: string]: {
28
- components?: { [key: string]: Component };
29
- composables?: { [key: string]: (...args: any[]) => any };
30
- default: { install: (app: any, options?: any) => void };
31
- schema: { [key: string]: DynamicGridSchema | DynamicDetailsSchema };
32
- locales: { [key: string]: { [key: string]: string } };
33
- notificationTemplates?: { [key: string]: Component };
34
- };
35
- };
36
- }
37
-
38
- interface ComponentOptionsBase extends CoreBladeAdditionalSettings {
39
- }
40
- }
41
-
42
- declare global {
43
- interface Window {
44
- VcShellDynamicModules: {
45
- [x: string]: {
46
- components?: { [key: string]: Component };
47
- composables?: { [key: string]: (...args: any[]) => any };
48
- default: { install: (app: any, options?: any) => void };
49
- schema: { [key: string]: DynamicGridSchema | DynamicDetailsSchema };
50
- locales: { [key: string]: { [key: string]: string } };
51
- notificationTemplates?: { [key: string]: Component };
52
- };
53
- };
54
- Vue: typeof vue;
55
- VueRouter: typeof vueRouter;
56
- VeeValidate: typeof veeValidate;
57
- VueI18n: typeof vueI18n;
58
- moment: moment;
59
- VcShellFramework: any;
60
- }
61
- }
62
-
63
- export {};
1
+ /* eslint-disable */
2
+ import {CoreBladeAdditionalSettings} from "@vc-shell/framework";
3
+ import {Ref, Plugin} from "vue";
4
+ import {DynamicGridSchema, DynamicDetailsSchema} from "@vc-shell/framework";
5
+ import * as vue from "vue";
6
+ import * as vueRouter from "vue-router";
7
+ import * as veeValidate from "vee-validate";
8
+ import * as vueI18n from "vue-i18n";
9
+ import moment from "moment";
10
+ import type {Component} from "vue";
11
+
12
+ declare module "*.vue" {
13
+ import type {DefineComponent} from "vue";
14
+ const component: DefineComponent<{}, {}, any>;
15
+ export default component;
16
+ }
17
+
18
+ declare module "@vue/runtime-core" {
19
+ interface ComponentCustomProperties {
20
+ $hasAccess: (permissions: string | string[]) => boolean;
21
+ $isPhone: Ref<boolean>;
22
+ $isTablet: Ref<boolean>;
23
+ $isMobile: Ref<boolean>;
24
+ $isDesktop: Ref<boolean>;
25
+ $isTouch: boolean;
26
+ $dynamicModules: {
27
+ [x: string]: {
28
+ components?: { [key: string]: Component };
29
+ composables?: { [key: string]: (...args: any[]) => any };
30
+ default: { install: (app: any, options?: any) => void };
31
+ schema: { [key: string]: DynamicGridSchema | DynamicDetailsSchema };
32
+ locales: { [key: string]: { [key: string]: string } };
33
+ notificationTemplates?: { [key: string]: Component };
34
+ };
35
+ };
36
+ }
37
+
38
+ interface ComponentOptionsBase extends CoreBladeAdditionalSettings {
39
+ }
40
+ }
41
+
42
+ declare global {
43
+ interface Window {
44
+ VcShellDynamicModules: {
45
+ [x: string]: {
46
+ components?: { [key: string]: Component };
47
+ composables?: { [key: string]: (...args: any[]) => any };
48
+ default: { install: (app: any, options?: any) => void };
49
+ schema: { [key: string]: DynamicGridSchema | DynamicDetailsSchema };
50
+ locales: { [key: string]: { [key: string]: string } };
51
+ notificationTemplates?: { [key: string]: Component };
52
+ };
53
+ };
54
+ Vue: typeof vue;
55
+ VueRouter: typeof vueRouter;
56
+ VeeValidate: typeof veeValidate;
57
+ VueI18n: typeof vueI18n;
58
+ moment: moment;
59
+ VcShellFramework: any;
60
+ }
61
+ }
62
+
63
+ export {};
@@ -1,38 +1,38 @@
1
- @tailwind base;
2
-
3
- @layer base {
4
- html,
5
- body,
6
- #app {
7
- @apply tw-font-roboto tw-h-full tw-w-full tw-m-0 tw-fixed tw-overflow-hidden tw-overscroll-y-none;
8
- }
9
-
10
- body {
11
- @apply tw-text-sm tw-text-[color:var(--base-text-color)];
12
- }
13
- }
14
-
15
- h1,
16
- h2,
17
- h3,
18
- h4,
19
- h5,
20
- h6,
21
- button,
22
- input,
23
- select,
24
- textarea {
25
- @apply tw-font-roboto;
26
- }
27
- ::-webkit-input-placeholder {
28
- @apply tw-font-roboto;
29
- }
30
- :-moz-placeholder {
31
- @apply tw-font-roboto;
32
- }
33
- ::-moz-placeholder {
34
- @apply tw-font-roboto;
35
- }
36
- :-ms-input-placeholder {
37
- @apply tw-font-roboto;
38
- }
1
+ @tailwind base;
2
+
3
+ @layer base {
4
+ html,
5
+ body,
6
+ #app {
7
+ @apply tw-font-roboto tw-h-full tw-w-full tw-m-0 tw-fixed tw-overflow-hidden tw-overscroll-y-none;
8
+ }
9
+
10
+ body {
11
+ @apply tw-text-sm tw-text-[color:var(--base-text-color)];
12
+ }
13
+ }
14
+
15
+ h1,
16
+ h2,
17
+ h3,
18
+ h4,
19
+ h5,
20
+ h6,
21
+ button,
22
+ input,
23
+ select,
24
+ textarea {
25
+ @apply tw-font-roboto;
26
+ }
27
+ ::-webkit-input-placeholder {
28
+ @apply tw-font-roboto;
29
+ }
30
+ :-moz-placeholder {
31
+ @apply tw-font-roboto;
32
+ }
33
+ ::-moz-placeholder {
34
+ @apply tw-font-roboto;
35
+ }
36
+ :-ms-input-placeholder {
37
+ @apply tw-font-roboto;
38
+ }
@@ -1,10 +1,10 @@
1
- /* Do not edit this file. Use custom.scss to add custom colors */
2
-
3
- :root {
4
- --base-text-color: var(--neutrals-950);
5
- --base-error-color: var(--danger-500);
6
- --base-border-color: var(--neutrals-200);
7
- --app-background: var(--secondary-200);
8
- --empty-grid-icon-color: var(--secondary-500);
9
- --mobile-card-count-color: var(--primary-500);
10
- }
1
+ /* Do not edit this file. Use custom.scss to add custom colors */
2
+
3
+ :root {
4
+ --base-text-color: var(--neutrals-950);
5
+ --base-error-color: var(--danger-500);
6
+ --base-border-color: var(--neutrals-200);
7
+ --app-background: var(--secondary-200);
8
+ --empty-grid-icon-color: var(--secondary-500);
9
+ --mobile-card-count-color: var(--primary-500);
10
+ }
@@ -1,2 +1,2 @@
1
- /* Custom styles.
2
- */
1
+ /* Custom styles.
2
+ */
@@ -1,7 +1,7 @@
1
- import defaultConfig, { content } from "@vc-shell/framework/tailwind.config";
2
-
3
- export default {
4
- prefix: "tw-",
5
- content: [...content, "./src/**/*.{vue,js,ts,jsx,tsx}"],
6
- theme: defaultConfig.theme,
7
- };
1
+ import defaultConfig, { content } from "@vc-shell/framework/tailwind.config";
2
+
3
+ export default {
4
+ prefix: "tw-",
5
+ content: [...content, "./src/**/*.{vue,js,ts,jsx,tsx}"],
6
+ theme: defaultConfig.theme,
7
+ };
@@ -1,16 +1,16 @@
1
- {
2
- "extends": "@vc-shell/ts-config/tsconfig.json",
3
- "compilerOptions": {
4
- "baseUrl": ".",
5
- "outDir": "dist",
6
- "rootDir": "src",
7
- "types": [
8
- "vite/client",
9
- ]
10
- },
11
- "include": [
12
- "./src/**/*.ts",
13
- "./src/**/*.vue",
14
- "./src/**/*.json"
15
- ]
16
- }
1
+ {
2
+ "extends": "@vc-shell/ts-config/tsconfig.json",
3
+ "compilerOptions": {
4
+ "baseUrl": ".",
5
+ "outDir": "dist",
6
+ "rootDir": "src",
7
+ "types": [
8
+ "vite/client",
9
+ ]
10
+ },
11
+ "include": [
12
+ "./src/**/*.ts",
13
+ "./src/**/*.vue",
14
+ "./src/**/*.json"
15
+ ]
16
+ }
@@ -1,5 +1,5 @@
1
- import { getApplicationConfiguration } from "@vc-shell/config-generator";
2
-
3
- export default getApplicationConfiguration({
4
- // Add you extra Vite configuration here
5
- });
1
+ import { getApplicationConfiguration } from "@vc-shell/config-generator";
2
+
3
+ export default getApplicationConfiguration({
4
+ // Add you extra Vite configuration here
5
+ });
@@ -1,86 +1,86 @@
1
- interface MockedItem {
2
- imgSrc: string;
3
- name: string;
4
- id: string;
5
- description: string;
6
- price: number;
7
- salePrice: number;
8
- guid: string;
9
- currency: string;
10
- }
11
-
12
- interface MockedQuery {
13
- keyword?: string;
14
- }
15
-
16
- const mockedItems: MockedItem[] = [
17
- {
18
- id: "beb211ea-1379-5a79-832c-9577ad387feb",
19
- name: "Product 1",
20
- imgSrc: "https://via.placeholder.com/150",
21
- description: "Product 1 description",
22
- price: 100,
23
- salePrice: 90,
24
- guid: "a1e26bcd-2704-5a3f-b97c-3e32e3d77a38",
25
- currency: "USD",
26
- },
27
- {
28
- id: "44b96758-792a-5449-b649-f2a0cd614c4b",
29
- name: "Product 2",
30
- imgSrc: "https://via.placeholder.com/150",
31
- description: "Product 2 description",
32
- price: 200,
33
- salePrice: 90,
34
- guid: "0ab995c0-3798-5011-a4ae-498e4c683cfd",
35
- currency: "USD",
36
- },
37
- {
38
- id: "605b2bfb-ba13-5687-91d5-0261b4b60524",
39
- name: "Product 3",
40
- imgSrc: "https://via.placeholder.com/150",
41
- description: "Product 3 description",
42
- price: 300,
43
- salePrice: 90,
44
- guid: "8a9b6954-7bf7-58b2-a146-c68e06fa7bb4",
45
- currency: "USD",
46
- },
47
- {
48
- id: "5ca8185c-0c28-59bf-ab40-991f134e6db3",
49
- name: "Product 4",
50
- imgSrc: "https://via.placeholder.com/150",
51
- description: "Product 4 description",
52
- price: 400,
53
- salePrice: 90,
54
- guid: "261364c5-f976-5c86-a92c-b0f0ea14efc7",
55
- currency: "USD",
56
- },
57
- {
58
- id: "077930cb-0874-5f85-9a5b-daafdd0bf860",
59
- name: "Product 5",
60
- imgSrc: "https://via.placeholder.com/150",
61
- description: "Product 5 description",
62
- price: 500,
63
- salePrice: 90,
64
- guid: "74d302ef-31e6-5432-91f1-d92c87ee2d2a",
65
- currency: "USD",
66
- },
67
- ];
68
-
69
- const currencyOptions = [
70
- {
71
- value: "USD",
72
- label: "USD",
73
- },
74
- {
75
- value: "EUR",
76
- label: "EUR",
77
- },
78
- {
79
- value: "GBP",
80
- label: "GBP",
81
- },
82
- ];
83
-
84
- export { mockedItems, currencyOptions };
85
-
86
- export type { MockedItem, MockedQuery };
1
+ interface MockedItem {
2
+ imgSrc: string;
3
+ name: string;
4
+ id: string;
5
+ description: string;
6
+ price: number;
7
+ salePrice: number;
8
+ guid: string;
9
+ currency: string;
10
+ }
11
+
12
+ interface MockedQuery {
13
+ keyword?: string;
14
+ }
15
+
16
+ const mockedItems: MockedItem[] = [
17
+ {
18
+ id: "beb211ea-1379-5a79-832c-9577ad387feb",
19
+ name: "Product 1",
20
+ imgSrc: "https://via.placeholder.com/150",
21
+ description: "Product 1 description",
22
+ price: 100,
23
+ salePrice: 90,
24
+ guid: "a1e26bcd-2704-5a3f-b97c-3e32e3d77a38",
25
+ currency: "USD",
26
+ },
27
+ {
28
+ id: "44b96758-792a-5449-b649-f2a0cd614c4b",
29
+ name: "Product 2",
30
+ imgSrc: "https://via.placeholder.com/150",
31
+ description: "Product 2 description",
32
+ price: 200,
33
+ salePrice: 90,
34
+ guid: "0ab995c0-3798-5011-a4ae-498e4c683cfd",
35
+ currency: "USD",
36
+ },
37
+ {
38
+ id: "605b2bfb-ba13-5687-91d5-0261b4b60524",
39
+ name: "Product 3",
40
+ imgSrc: "https://via.placeholder.com/150",
41
+ description: "Product 3 description",
42
+ price: 300,
43
+ salePrice: 90,
44
+ guid: "8a9b6954-7bf7-58b2-a146-c68e06fa7bb4",
45
+ currency: "USD",
46
+ },
47
+ {
48
+ id: "5ca8185c-0c28-59bf-ab40-991f134e6db3",
49
+ name: "Product 4",
50
+ imgSrc: "https://via.placeholder.com/150",
51
+ description: "Product 4 description",
52
+ price: 400,
53
+ salePrice: 90,
54
+ guid: "261364c5-f976-5c86-a92c-b0f0ea14efc7",
55
+ currency: "USD",
56
+ },
57
+ {
58
+ id: "077930cb-0874-5f85-9a5b-daafdd0bf860",
59
+ name: "Product 5",
60
+ imgSrc: "https://via.placeholder.com/150",
61
+ description: "Product 5 description",
62
+ price: 500,
63
+ salePrice: 90,
64
+ guid: "74d302ef-31e6-5432-91f1-d92c87ee2d2a",
65
+ currency: "USD",
66
+ },
67
+ ];
68
+
69
+ const currencyOptions = [
70
+ {
71
+ value: "USD",
72
+ label: "USD",
73
+ },
74
+ {
75
+ value: "EUR",
76
+ label: "EUR",
77
+ },
78
+ {
79
+ value: "GBP",
80
+ label: "GBP",
81
+ },
82
+ ];
83
+
84
+ export { mockedItems, currencyOptions };
85
+
86
+ export type { MockedItem, MockedQuery };
@@ -1,2 +1,2 @@
1
- export * from './constants'
2
- export * from './methods'
1
+ export * from './constants'
2
+ export * from './methods'