@vc-shell/create-vc-app 1.1.99-alpha.2 → 1.2.1

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 (86) hide show
  1. package/README.md +26 -552
  2. package/dist/index.js +530 -1901
  3. package/dist/templates/base/_package.json +6 -7
  4. package/dist/templates/base/src/main.ts +4 -0
  5. package/dist/templates/mocks/sample-data/constants.ts +89 -0
  6. package/dist/templates/mocks/sample-data/index.ts +2 -0
  7. package/dist/templates/mocks/sample-data/methods.ts +65 -0
  8. package/dist/templates/modules/classic-module/composables/index.ts +2 -0
  9. package/dist/templates/modules/classic-module/composables/use{{ModuleNamePascalCase}}Details/index.ts +24 -0
  10. package/dist/templates/modules/classic-module/composables/use{{ModuleNamePascalCase}}List/index.ts +47 -0
  11. package/dist/templates/modules/classic-module/index.ts +8 -0
  12. package/dist/templates/modules/classic-module/locales/en.json +37 -0
  13. package/dist/templates/modules/classic-module/locales/index.ts +2 -0
  14. package/dist/templates/modules/classic-module/pages/details.vue +87 -0
  15. package/dist/templates/modules/classic-module/pages/index.ts +2 -0
  16. package/dist/templates/modules/classic-module/pages/list.vue +257 -0
  17. package/dist/templates/sample/classic-module/composables/index.ts +2 -0
  18. package/dist/templates/sample/classic-module/composables/useDetails/index.ts +54 -0
  19. package/dist/templates/sample/classic-module/composables/useList/index.ts +62 -0
  20. package/dist/templates/sample/classic-module/index.ts +8 -0
  21. package/dist/templates/sample/classic-module/locales/en.json +67 -0
  22. package/dist/templates/sample/classic-module/locales/index.ts +2 -0
  23. package/dist/templates/sample/classic-module/pages/details.vue +238 -0
  24. package/dist/templates/sample/classic-module/pages/index.ts +2 -0
  25. package/dist/templates/sample/classic-module/pages/list.vue +300 -0
  26. package/dist/templates/sample/overrides/main.ts +52 -0
  27. package/package.json +7 -12
  28. package/dist/cli/argv.d.ts +0 -4
  29. package/dist/cli/argv.d.ts.map +0 -1
  30. package/dist/cli/constants.d.ts +0 -4
  31. package/dist/cli/constants.d.ts.map +0 -1
  32. package/dist/cli/errors.d.ts +0 -12
  33. package/dist/cli/errors.d.ts.map +0 -1
  34. package/dist/cli/help.d.ts +0 -3
  35. package/dist/cli/help.d.ts.map +0 -1
  36. package/dist/cli/run.d.ts +0 -2
  37. package/dist/cli/run.d.ts.map +0 -1
  38. package/dist/cli/runtime.d.ts +0 -7
  39. package/dist/cli/runtime.d.ts.map +0 -1
  40. package/dist/cli/types.d.ts +0 -30
  41. package/dist/cli/types.d.ts.map +0 -1
  42. package/dist/cli/utils.d.ts +0 -4
  43. package/dist/cli/utils.d.ts.map +0 -1
  44. package/dist/cli/validation.d.ts +0 -5
  45. package/dist/cli/validation.d.ts.map +0 -1
  46. package/dist/commands/generate-blade.d.ts +0 -16
  47. package/dist/commands/generate-blade.d.ts.map +0 -1
  48. package/dist/templates/base/_husky/commit-msg +0 -4
  49. package/dist/templates/base/_husky/pre-commit +0 -4
  50. package/dist/templates/base/ai-guides/.cursorrules-vc-shell +0 -529
  51. package/dist/templates/base/ai-guides/README.md +0 -360
  52. package/dist/templates/base/ai-guides/guides/AI_GUIDE.md +0 -195
  53. package/dist/templates/base/ai-guides/guides/blade-patterns.md +0 -384
  54. package/dist/templates/base/ai-guides/guides/complete-workflow.md +0 -781
  55. package/dist/templates/base/ai-guides/guides/composables-reference.md +0 -338
  56. package/dist/templates/base/ai-guides/guides/troubleshooting.md +0 -529
  57. package/dist/templates/base/ai-guides/guides/ui-components-reference.md +0 -903
  58. package/dist/templates/base/ai-guides/prompts/adapt-existing-module.md +0 -1026
  59. package/dist/templates/base/ai-guides/prompts/advanced-scenarios.md +0 -852
  60. package/dist/templates/base/ai-guides/prompts/api-client-generation.md +0 -877
  61. package/dist/templates/base/ai-guides/prompts/cli-usage.md +0 -640
  62. package/dist/templates/base/ai-guides/prompts/quick-start-scenarios.md +0 -773
  63. package/dist/templates/base/ai-guides/prompts/simple-modifications.md +0 -987
  64. package/dist/templates/base/scripts/release.ts +0 -5
  65. package/dist/templates/blades/details/blade.vue +0 -175
  66. package/dist/templates/blades/grid/blade.vue +0 -340
  67. package/dist/templates/composables/details-composable.ts +0 -101
  68. package/dist/templates/composables/grid-composable.ts +0 -244
  69. package/dist/templates/module/components/index.ts +0 -2
  70. package/dist/templates/module/components/widgets/index.ts +0 -2
  71. package/dist/templates/module/composables/index.ts +0 -3
  72. package/dist/templates/module/index.ts +0 -13
  73. package/dist/templates/module/locales/en.json +0 -65
  74. package/dist/templates/module/locales/index.ts +0 -4
  75. package/dist/templates/module/pages/index.ts +0 -3
  76. package/dist/templates/widgets/widget.vue +0 -113
  77. package/dist/utils/form-builder.d.ts +0 -69
  78. package/dist/utils/form-builder.d.ts.map +0 -1
  79. package/dist/utils/format.d.ts +0 -24
  80. package/dist/utils/format.d.ts.map +0 -1
  81. package/dist/utils/naming.d.ts +0 -44
  82. package/dist/utils/naming.d.ts.map +0 -1
  83. package/dist/utils/register-module.d.ts +0 -21
  84. package/dist/utils/register-module.d.ts.map +0 -1
  85. package/dist/workflows/create-app.d.ts +0 -14
  86. package/dist/workflows/create-app.d.ts.map +0 -1
@@ -0,0 +1,300 @@
1
+ <template>
2
+ <VcBlade
3
+ :title="title"
4
+ width="50%"
5
+ :expanded="expanded"
6
+ :closable="closable"
7
+ :toolbar-items="bladeToolbar"
8
+ @close="$emit('close:blade')"
9
+ @expand="$emit('expand:blade')"
10
+ @collapse="$emit('collapse:blade')"
11
+ >
12
+ <!-- Blade contents -->
13
+ <!-- @vue-generic {MockedItem} -->
14
+ <VcTable
15
+ :expanded="expanded"
16
+ class="tw-grow tw-basis-0"
17
+ multiselect
18
+ :loading="loading"
19
+ :columns="columns"
20
+ :sort="sortExpression"
21
+ :pages="pages"
22
+ :total-count="totalCount"
23
+ :search-value="searchValue"
24
+ :current-page="currentPage"
25
+ enable-item-actions
26
+ :item-action-builder="actionBuilder"
27
+ :empty="empty"
28
+ :notfound="notfound"
29
+ :search-placeholder="$t('SAMPLE_APP.PAGES.LIST.SEARCH.PLACEHOLDER')"
30
+ :total-label="$t('SAMPLE_APP.PAGES.LIST.TABLE.TOTALS')"
31
+ :selected-item-id="selectedItemId"
32
+ state-key="SAMPLE_APP"
33
+ :items="data ?? []"
34
+ @item-click="onItemClick"
35
+ @header-click="onHeaderClick"
36
+ @selection-changed="onSelectionChanged"
37
+ @search:change="onSearchList"
38
+ @pagination-click="onPaginationClick"
39
+ >
40
+ </VcTable>
41
+ </VcBlade>
42
+ </template>
43
+
44
+ <script lang="ts" setup>
45
+ import { computed, ref, markRaw, onMounted, watch } from "vue";
46
+ import {
47
+ IActionBuilderResult,
48
+ IBladeToolbar,
49
+ IParentCallArgs,
50
+ ITableColumns,
51
+ useBladeNavigation,
52
+ usePopup,
53
+ useTableSort,
54
+ useFunctions,
55
+ } from "@vc-shell/framework";
56
+ import { useI18n } from "vue-i18n";
57
+ import { useList } from "./../composables";
58
+ import Details from "./details.vue";
59
+ import { MockedItem } from "./../composables/useList";
60
+
61
+ export interface Props {
62
+ expanded?: boolean;
63
+ closable?: boolean;
64
+ param?: string;
65
+ options?: Record<string, unknown>;
66
+ }
67
+
68
+ export interface Emits {
69
+ (event: "parent:call", args: IParentCallArgs): void;
70
+ (event: "collapse:blade"): void;
71
+ (event: "expand:blade"): void;
72
+ (event: "close:blade"): void;
73
+ }
74
+
75
+ defineOptions({
76
+ url: "/sample-list",
77
+ name: "SampleList",
78
+ isWorkspace: true,
79
+ menuItem: {
80
+ title: "SAMPLE_APP.MENU.TITLE",
81
+ icon: "lucide-file",
82
+ priority: 1,
83
+ },
84
+ });
85
+
86
+ const props = withDefaults(defineProps<Props>(), {
87
+ expanded: true,
88
+ closable: true,
89
+ });
90
+
91
+ defineEmits<Emits>();
92
+
93
+ const { t } = useI18n({ useScope: "global" });
94
+ const { openBlade } = useBladeNavigation();
95
+ const { showConfirmation } = usePopup();
96
+ const { debounce } = useFunctions();
97
+
98
+ const { sortExpression, handleSortChange: tableSortHandler } = useTableSort({
99
+ initialDirection: "DESC",
100
+ initialProperty: "createdDate",
101
+ });
102
+
103
+ const { getItems, removeItems, data, loading, totalCount, pages, currentPage, searchQuery } = useList({
104
+ sort: sortExpression.value,
105
+ pageSize: 20,
106
+ });
107
+
108
+ const searchValue = ref();
109
+ const selectedItemId = ref<string>();
110
+ const selectedIds = ref<string[]>([]);
111
+
112
+ const empty = {
113
+ icon: "lucide-file",
114
+ text: computed(() => t("SAMPLE_APP.PAGES.LIST.EMPTY.NO_ITEMS")),
115
+ action: computed(() => t("SAMPLE_APP.PAGES.LIST.EMPTY.ADD")),
116
+ clickHandler: () => {
117
+ addItem();
118
+ },
119
+ };
120
+
121
+ const notfound = {
122
+ icon: "lucide-file",
123
+ text: computed(() => t("SAMPLE_APP.PAGES.LIST.NOT_FOUND.EMPTY")),
124
+ action: computed(() => t("SAMPLE_APP.PAGES.LIST.NOT_FOUND.RESET")),
125
+ clickHandler: async () => {
126
+ searchValue.value = "";
127
+ await getItems({
128
+ ...searchQuery.value,
129
+ keyword: "",
130
+ });
131
+ },
132
+ };
133
+
134
+ watch(
135
+ () => props.param,
136
+ (newVal) => {
137
+ selectedItemId.value = newVal;
138
+ },
139
+ { immediate: true },
140
+ );
141
+
142
+ onMounted(async () => {
143
+ await getItems({
144
+ ...searchQuery.value,
145
+ sort: sortExpression.value,
146
+ });
147
+ });
148
+
149
+ const onSearchList = debounce(async (keyword: string) => {
150
+ searchValue.value = keyword;
151
+ await getItems({
152
+ ...searchQuery.value,
153
+ keyword,
154
+ });
155
+ }, 1000);
156
+
157
+ const addItem = () => {
158
+ openBlade({
159
+ blade: markRaw(Details),
160
+ });
161
+ };
162
+
163
+ const onPaginationClick = async (page: number) => {
164
+ await getItems({
165
+ ...searchQuery.value,
166
+ skip: (page - 1) * (searchQuery.value.take ?? 20),
167
+ });
168
+ };
169
+
170
+ const bladeToolbar = ref<IBladeToolbar[]>([
171
+ {
172
+ id: "refresh",
173
+ title: computed(() => t("SAMPLE_APP.PAGES.LIST.TOOLBAR.REFRESH")),
174
+ icon: "material-refresh",
175
+ async clickHandler() {
176
+ await reload();
177
+ },
178
+ },
179
+ {
180
+ id: "remove",
181
+ icon: "material-delete",
182
+ title: computed(() => t("SAMPLE_APP.PAGES.LIST.TOOLBAR.REMOVE")),
183
+ async clickHandler() {
184
+ await remove(selectedIds.value);
185
+ },
186
+ disabled: computed(() => selectedIds.value.length === 0),
187
+ },
188
+ ]);
189
+
190
+ const columns = ref<ITableColumns[]>([
191
+ {
192
+ id: "imgSrc",
193
+ title: computed(() => t("SAMPLE_APP.PAGES.LIST.TABLE.HEADER.IMAGE")),
194
+ type: "image",
195
+ width: "70px",
196
+ },
197
+ {
198
+ id: "name",
199
+ title: computed(() => t("SAMPLE_APP.PAGES.LIST.TABLE.HEADER.PRODUCT_NAME")),
200
+ alwaysVisible: true,
201
+ },
202
+ {
203
+ id: "description",
204
+ title: computed(() => t("SAMPLE_APP.PAGES.LIST.TABLE.HEADER.DESCRIPTION")),
205
+ },
206
+ {
207
+ id: "price",
208
+ title: computed(() => t("SAMPLE_APP.PAGES.LIST.TABLE.HEADER.PRICE")),
209
+ type: "money",
210
+ alwaysVisible: true,
211
+ },
212
+ {
213
+ id: "salePrice",
214
+ title: computed(() => t("SAMPLE_APP.PAGES.LIST.TABLE.HEADER.SALE_PRICE")),
215
+ type: "money",
216
+ },
217
+ {
218
+ id: "currency.name",
219
+ title: computed(() => t("SAMPLE_APP.PAGES.LIST.TABLE.HEADER.CURRENCY")),
220
+ },
221
+ ]);
222
+
223
+ const title = computed(() => t("SAMPLE_APP.PAGES.LIST.TITLE"));
224
+
225
+ const reload = async () => {
226
+ await getItems({
227
+ ...searchQuery.value,
228
+ skip: (currentPage.value - 1) * (searchQuery.value.take ?? 10),
229
+ sort: sortExpression.value,
230
+ });
231
+ };
232
+
233
+ const onItemClick = (item: { id: string }) => {
234
+ openBlade({
235
+ blade: markRaw(Details),
236
+ param: item.id,
237
+ onOpen() {
238
+ selectedItemId.value = item.id;
239
+ },
240
+ onClose() {
241
+ selectedItemId.value = undefined;
242
+ },
243
+ });
244
+ };
245
+
246
+ const onHeaderClick = (item: ITableColumns) => {
247
+ tableSortHandler(item.id);
248
+ };
249
+
250
+ const onSelectionChanged = (items: MockedItem[]) => {
251
+ selectedIds.value = items.map((item) => item.id!);
252
+ };
253
+
254
+ const actionBuilder = (): IActionBuilderResult[] => {
255
+ const result: IActionBuilderResult[] = [];
256
+ result.push({
257
+ icon: "material-delete",
258
+ title: computed(() => t("SAMPLE_APP.PAGES.LIST.TABLE.ACTIONS.DELETE")),
259
+ type: "danger",
260
+ async clickHandler(_item: MockedItem) {
261
+ if (_item.id) {
262
+ if (!selectedIds.value.includes(_item.id)) {
263
+ selectedIds.value.push(_item.id);
264
+ }
265
+ await remove(selectedIds.value);
266
+ selectedIds.value = [];
267
+ }
268
+ },
269
+ });
270
+
271
+ return result;
272
+ };
273
+
274
+ async function remove(ids: string[]) {
275
+ if (
276
+ await showConfirmation(
277
+ t(`SAMPLE_APP.PAGES.ALERTS.DELETE_SELECTED_CONFIRMATION.MESSAGE`, {
278
+ count: selectedIds.value.length,
279
+ }),
280
+ )
281
+ ) {
282
+ await removeItems({ ids });
283
+ await reload();
284
+ }
285
+ }
286
+
287
+ watch(
288
+ () => sortExpression.value,
289
+ async (newVal) => {
290
+ await getItems({
291
+ sort: newVal,
292
+ });
293
+ },
294
+ );
295
+
296
+ defineExpose({
297
+ title,
298
+ reload,
299
+ });
300
+ </script>
@@ -0,0 +1,52 @@
1
+ import VirtoShellFramework, { notification, useUser, useLanguages } from "@vc-shell/framework";
2
+ import { createApp } from "vue";
3
+ import { router } from "./router";
4
+ import * as locales from "./locales";
5
+ import { RouterView } from "vue-router";
6
+ import {{ModuleNamePascalCase}} from "./modules/{{ModuleName}}";
7
+ import SampleModule from "./modules/sample";
8
+ import { bootstrap } from "./bootstrap";
9
+
10
+ // Load required CSS
11
+ import "@vc-shell/framework/dist/index.css";
12
+
13
+ async function startApp() {
14
+ const { loadUser } = useUser();
15
+ await loadUser();
16
+
17
+ const { currentLocale, setLocale } = useLanguages();
18
+
19
+ const app = createApp(RouterView)
20
+ .use(VirtoShellFramework, {
21
+ router,
22
+ i18n: {
23
+ locale: import.meta.env.APP_I18N_LOCALE,
24
+ fallbackLocale: import.meta.env.APP_I18N_FALLBACK_LOCALE,
25
+ },
26
+ })
27
+ // {{ModuleNamePascalCase}} module initialization
28
+ .use({{ModuleNamePascalCase}}, { router })
29
+ // Sample module initialization
30
+ .use(SampleModule, { router })
31
+ .use(router);
32
+
33
+ bootstrap(app);
34
+
35
+ Object.entries(locales).forEach(([key, message]) => {
36
+ app.config.globalProperties.$mergeLocaleMessage(key, message);
37
+ });
38
+
39
+ setLocale(currentLocale.value);
40
+
41
+ app.config.errorHandler = (err) => {
42
+ notification.error((err as Error).toString(), {
43
+ timeout: 5000,
44
+ });
45
+ };
46
+
47
+ await router.isReady();
48
+
49
+ app.mount("#app");
50
+ }
51
+
52
+ startApp();
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@vc-shell/create-vc-app",
3
3
  "description": "Application scaffolding",
4
- "version": "1.1.99-alpha.2",
4
+ "version": "1.2.1",
5
5
  "type": "module",
6
6
  "bin": "./dist/index.js",
7
7
  "files": [
@@ -13,29 +13,24 @@
13
13
  "postbuild": "shx cp -R src/templates dist/"
14
14
  },
15
15
  "devDependencies": {
16
- "@types/lodash-es": "^4.17.12",
17
- "@types/pluralize": "^0.0.33",
18
16
  "@types/prompts": "^2.4.4",
19
- "@vc-shell/ts-config": "1.1.99-alpha.2",
17
+ "@vc-shell/ts-config": "1.2.1",
20
18
  "copyfiles": "^2.4.1",
21
19
  "cross-env": "^7.0.3",
22
20
  "shx": "^0.3.4",
23
- "typescript": "^5.8.3",
24
- "vite": "^6.3.3",
25
- "vite-plugin-dts": "^3.6.4"
21
+ "typescript": "^5.8.3"
26
22
  },
27
23
  "dependencies": {
28
24
  "chalk": "^2.4.2",
29
- "lodash-es": "^4.17.21",
30
25
  "mri": "^1.2.0",
31
- "pluralize": "^8.0.0",
32
- "prettier": "^3.4.2",
33
26
  "prompts": "^2.4.2",
34
- "tslib": "^2.5.3"
27
+ "tslib": "^2.5.3",
28
+ "vite": "^6.3.3",
29
+ "vite-plugin-dts": "^3.6.4"
35
30
  },
36
31
  "publishConfig": {
37
32
  "access": "public",
38
33
  "registry": "https://registry.npmjs.org/"
39
34
  },
40
- "gitHead": "600130c2990298afce79325b440f745160a1e4bf"
35
+ "gitHead": "75afdc6afb8a3563385e526f9384a34557fe3561"
41
36
  }
@@ -1,4 +0,0 @@
1
- import { CLIArgs } from './types.js';
2
-
3
- export declare function parseArgs(rawArgv?: string[]): CLIArgs;
4
- //# sourceMappingURL=argv.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"argv.d.ts","sourceRoot":"","sources":["../../src/cli/argv.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAE1C,wBAAgB,SAAS,CAAC,OAAO,GAAE,MAAM,EAAyB,GAAG,OAAO,CAmB3E"}
@@ -1,4 +0,0 @@
1
- export declare const renameFiles: Record<string, string | undefined>;
2
- export declare const SUPPORTED_TEMPLATE_EXTENSIONS: string[];
3
- export declare const MIN_NODE_VERSION = "18.0.0";
4
- //# sourceMappingURL=constants.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/cli/constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAiB1D,CAAC;AAEF,eAAO,MAAM,6BAA6B,UAAyC,CAAC;AAEpF,eAAO,MAAM,gBAAgB,WAAW,CAAC"}
@@ -1,12 +0,0 @@
1
- export declare class CLIError extends Error {
2
- readonly exitCode: number;
3
- constructor(message: string, exitCode?: number);
4
- }
5
- export declare class ValidationError extends CLIError {
6
- readonly issues: string[];
7
- constructor(issues: string[]);
8
- }
9
- export declare class UserCancelledError extends CLIError {
10
- constructor();
11
- }
12
- //# sourceMappingURL=errors.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/cli/errors.ts"],"names":[],"mappings":"AAAA,qBAAa,QAAS,SAAQ,KAAK;IACjC,SAAgB,QAAQ,EAAE,MAAM,CAAC;gBAErB,OAAO,EAAE,MAAM,EAAE,QAAQ,SAAI;CAK1C;AAED,qBAAa,eAAgB,SAAQ,QAAQ;IAC3C,SAAgB,MAAM,EAAE,MAAM,EAAE,CAAC;gBAErB,MAAM,EAAE,MAAM,EAAE;CAK7B;AAED,qBAAa,kBAAmB,SAAQ,QAAQ;;CAK/C"}
@@ -1,3 +0,0 @@
1
- export declare function showHelp(): void;
2
- export declare function showVersion(): void;
3
- //# sourceMappingURL=help.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"help.d.ts","sourceRoot":"","sources":["../../src/cli/help.ts"],"names":[],"mappings":"AAGA,wBAAgB,QAAQ,IAAI,IAAI,CAgE/B;AAED,wBAAgB,WAAW,IAAI,IAAI,CAElC"}
package/dist/cli/run.d.ts DELETED
@@ -1,2 +0,0 @@
1
- export declare function runCLI(rawArgv: string[]): Promise<number>;
2
- //# sourceMappingURL=run.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"run.d.ts","sourceRoot":"","sources":["../../src/cli/run.ts"],"names":[],"mappings":"AAaA,wBAAsB,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CA8B/D"}
@@ -1,7 +0,0 @@
1
- export interface NodeCompatibility {
2
- compatible: boolean;
3
- currentVersion: string;
4
- minVersion: string;
5
- }
6
- export declare function checkNodeVersion(): NodeCompatibility;
7
- //# sourceMappingURL=runtime.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../../src/cli/runtime.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,iBAAiB;IAChC,UAAU,EAAE,OAAO,CAAC;IACpB,cAAc,EAAE,MAAM,CAAC;IACvB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,wBAAgB,gBAAgB,IAAI,iBAAiB,CAUpD"}
@@ -1,30 +0,0 @@
1
- export interface CLIArgs {
2
- _: string[];
3
- name?: string;
4
- "app-name"?: string;
5
- "package-name"?: string;
6
- "module-name"?: string;
7
- "base-path"?: string;
8
- overwrite?: boolean;
9
- help?: boolean;
10
- h?: boolean;
11
- version?: boolean;
12
- v?: boolean;
13
- type?: "grid" | "details";
14
- module?: string;
15
- composable?: boolean;
16
- locales?: boolean;
17
- widget?: boolean;
18
- "is-workspace"?: boolean;
19
- path?: string;
20
- "form-fields"?: string;
21
- "skip-form-editor"?: boolean;
22
- "skip-module-gen"?: boolean;
23
- }
24
- export interface CreateAppConfig {
25
- appName: string;
26
- packageName: string;
27
- basePath: string;
28
- moduleName?: string;
29
- }
30
- //# sourceMappingURL=types.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/cli/types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,OAAO;IACtB,CAAC,EAAE,MAAM,EAAE,CAAC;IACZ,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,CAAC,CAAC,EAAE,OAAO,CAAC;IACZ,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,CAAC,CAAC,EAAE,OAAO,CAAC;IACZ,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B;AAED,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB"}
@@ -1,4 +0,0 @@
1
- export declare function isValidName(appName: string): boolean;
2
- export declare function toValidName(appName: string): string;
3
- export declare function toValidBasePath(basePath: string): string;
4
- //# sourceMappingURL=utils.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/cli/utils.ts"],"names":[],"mappings":"AAAA,wBAAgB,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAEpD;AAED,wBAAgB,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAOnD;AAED,wBAAgB,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAOxD"}
@@ -1,5 +0,0 @@
1
- import { CLIArgs } from './types.js';
2
-
3
- export declare function validateBasePath(basePath: string): boolean;
4
- export declare function validateArgs(args: CLIArgs): string[];
5
- //# sourceMappingURL=validation.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"validation.d.ts","sourceRoot":"","sources":["../../src/cli/validation.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAE1C,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAE1D;AAED,wBAAgB,YAAY,CAAC,IAAI,EAAE,OAAO,GAAG,MAAM,EAAE,CAYpD"}
@@ -1,16 +0,0 @@
1
- interface BladeGeneratorArgs {
2
- name?: string;
3
- type?: "grid" | "details";
4
- module?: string;
5
- composable?: boolean;
6
- locales?: boolean;
7
- widget?: boolean;
8
- isWorkspace?: boolean;
9
- path?: string;
10
- formFields?: string;
11
- skipFormEditor?: boolean;
12
- _skipActionPrompt?: boolean;
13
- }
14
- export declare function generateBlade(args?: BladeGeneratorArgs): Promise<void>;
15
- export {};
16
- //# sourceMappingURL=generate-blade.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"generate-blade.d.ts","sourceRoot":"","sources":["../../src/commands/generate-blade.ts"],"names":[],"mappings":"AA8BA,UAAU,kBAAkB;IAC1B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,cAAc,CAAC,EAAE,OAAO,CAAC;IAEzB,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B;AAiBD,wBAAsB,aAAa,CAAC,IAAI,GAAE,kBAAuB,iBAmFhE"}
@@ -1,4 +0,0 @@
1
- #!/bin/sh
2
- . "$(dirname "$0")/_/husky.sh"
3
-
4
- #npx --no-install commitlint --edit "$1"
@@ -1,4 +0,0 @@
1
- #!/bin/sh
2
- . "$(dirname "$0")/_/husky.sh"
3
-
4
- #npm run lint-staged