ui-thing 0.0.26 → 0.0.28
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.
- package/CHANGELOG.md +24 -0
- package/dist/index.js +65 -64
- package/dist/index.js.map +1 -1
- package/package.json +8 -7
- package/src/commands/add.ts +21 -4
- package/src/comps.ts +10 -6
- package/src/types.ts +1 -0
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "ui-thing",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.28",
|
|
4
4
|
"description": "CLI used to add Nuxt 3 components to a project",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"types": "./dist/index.d.ts",
|
|
@@ -21,7 +21,8 @@
|
|
|
21
21
|
"format": "npx prettier --write .",
|
|
22
22
|
"release": "npm run build && npx changelogen@latest --release && npm publish && git push --follow-tags",
|
|
23
23
|
"test": "vitest",
|
|
24
|
-
"coverage": "vitest run --coverage"
|
|
24
|
+
"coverage": "vitest run --coverage",
|
|
25
|
+
"clean": "rm -rf dist coverage node_modules package-lock.json && npm install"
|
|
25
26
|
},
|
|
26
27
|
"keywords": [
|
|
27
28
|
"cli",
|
|
@@ -43,7 +44,7 @@
|
|
|
43
44
|
"axios": "^1.6.7",
|
|
44
45
|
"boxen": "^7.1.1",
|
|
45
46
|
"build": "^0.1.4",
|
|
46
|
-
"c12": "^1.
|
|
47
|
+
"c12": "^1.9.0",
|
|
47
48
|
"commander": "^11.1.0",
|
|
48
49
|
"defu": "^6.1.4",
|
|
49
50
|
"execa": "^8.0.1",
|
|
@@ -61,12 +62,12 @@
|
|
|
61
62
|
"@types/figlet": "^1.5.8",
|
|
62
63
|
"@types/fs-extra": "^11.0.4",
|
|
63
64
|
"@types/lodash": "^4.14.202",
|
|
64
|
-
"@types/node": "^20.11.
|
|
65
|
+
"@types/node": "^20.11.20",
|
|
65
66
|
"@types/prompts": "^2.4.9",
|
|
66
|
-
"@vitest/coverage-v8": "^1.
|
|
67
|
+
"@vitest/coverage-v8": "^1.3.1",
|
|
67
68
|
"magicast": "^0.3.3",
|
|
68
|
-
"tsup": "^8.0.
|
|
69
|
+
"tsup": "^8.0.2",
|
|
69
70
|
"typescript": "^5.3.3",
|
|
70
|
-
"vitest": "^1.
|
|
71
|
+
"vitest": "^1.3.1"
|
|
71
72
|
}
|
|
72
73
|
}
|
package/src/commands/add.ts
CHANGED
|
@@ -1,6 +1,8 @@
|
|
|
1
|
+
import { readFileSync } from "fs";
|
|
1
2
|
import path from "node:path";
|
|
2
3
|
import { Command } from "commander";
|
|
3
4
|
import { consola } from "consola";
|
|
5
|
+
import { defu } from "defu";
|
|
4
6
|
import kleur from "kleur";
|
|
5
7
|
import _ from "lodash";
|
|
6
8
|
import prompts from "prompts";
|
|
@@ -159,24 +161,39 @@ export const add = new Command()
|
|
|
159
161
|
cfg.defaultExport.app.head.script ||= [];
|
|
160
162
|
const scriptOneExists = cfg.defaultExport.app.head.script.find(
|
|
161
163
|
(i: any) =>
|
|
162
|
-
i.src === "https://cdnjs.cloudflare.com/ajax/libs/pdfmake/0.2.
|
|
164
|
+
i.src === "https://cdnjs.cloudflare.com/ajax/libs/pdfmake/0.2.9/pdfmake.min.js"
|
|
163
165
|
);
|
|
164
166
|
if (!scriptOneExists) {
|
|
165
167
|
cfg.defaultExport.app.head.script.push({
|
|
166
|
-
src: "https://cdnjs.cloudflare.com/ajax/libs/pdfmake/0.2.
|
|
168
|
+
src: "https://cdnjs.cloudflare.com/ajax/libs/pdfmake/0.2.9/pdfmake.min.js",
|
|
167
169
|
defer: true,
|
|
168
170
|
});
|
|
169
171
|
}
|
|
170
172
|
const scriptTwoExists = cfg.defaultExport.app.head.script.find(
|
|
171
173
|
(i: any) =>
|
|
172
|
-
i.src === "https://cdnjs.cloudflare.com/ajax/libs/pdfmake/0.2.
|
|
174
|
+
i.src === "https://cdnjs.cloudflare.com/ajax/libs/pdfmake/0.2.9/vfs_fonts.min.js"
|
|
173
175
|
);
|
|
174
176
|
if (!scriptTwoExists) {
|
|
175
177
|
cfg.defaultExport.app.head.script.push({
|
|
176
|
-
src: "https://cdnjs.cloudflare.com/ajax/libs/pdfmake/0.2.
|
|
178
|
+
src: "https://cdnjs.cloudflare.com/ajax/libs/pdfmake/0.2.9/vfs_fonts.min.js",
|
|
177
179
|
defer: true,
|
|
178
180
|
});
|
|
179
181
|
}
|
|
182
|
+
// Get package.json and add the overrides
|
|
183
|
+
const packageJson = readFileSync(path.join(currentDirectory, "package.json"), "utf-8");
|
|
184
|
+
// if no package.json file, do nothing
|
|
185
|
+
if (packageJson) {
|
|
186
|
+
const parsedPackageJson = JSON.parse(packageJson);
|
|
187
|
+
parsedPackageJson.overrides = defu(
|
|
188
|
+
{},
|
|
189
|
+
parsedPackageJson.overrides,
|
|
190
|
+
component.overrides
|
|
191
|
+
);
|
|
192
|
+
await writeFile(
|
|
193
|
+
path.join(currentDirectory, "package.json"),
|
|
194
|
+
JSON.stringify(parsedPackageJson, null, 2)
|
|
195
|
+
);
|
|
196
|
+
}
|
|
180
197
|
}
|
|
181
198
|
|
|
182
199
|
// add utils attached to the component
|
package/src/comps.ts
CHANGED
|
@@ -660,19 +660,23 @@ export default [
|
|
|
660
660
|
name: "DataTables.net",
|
|
661
661
|
value: "datatable",
|
|
662
662
|
deps: [
|
|
663
|
-
"datatables.net-buttons-dt",
|
|
664
|
-
"datatables.net-responsive-dt",
|
|
665
|
-
"datatables.net-searchbuilder-dt",
|
|
666
|
-
"datatables.net-select-dt",
|
|
667
|
-
"datatables.net-vue3",
|
|
663
|
+
"datatables.net-buttons-dt@^2.4.3",
|
|
664
|
+
"datatables.net-responsive-dt@^2.5.1",
|
|
665
|
+
"datatables.net-searchbuilder-dt@^1.7.0",
|
|
666
|
+
"datatables.net-select-dt@^1.7.1",
|
|
667
|
+
"datatables.net-vue3@^2.1.3",
|
|
668
668
|
"jszip",
|
|
669
669
|
],
|
|
670
|
+
overrides: {
|
|
671
|
+
"datatables.net": "1.13.10",
|
|
672
|
+
"datatables.net-dt": "1.13.10",
|
|
673
|
+
},
|
|
670
674
|
plugins: [
|
|
671
675
|
{
|
|
672
676
|
fileName: "datatables.client.ts",
|
|
673
677
|
dirPath: "plugins",
|
|
674
678
|
fileContent:
|
|
675
|
-
'import DataTablesCore from "datatables.net";\nimport DataTable from "datatables.net-vue3";\nimport JSZip from "jszip";\n\nimport "datatables.net-buttons-dt";\nimport "datatables.net-buttons/js/buttons.colVis.mjs";\nimport "datatables.net-buttons/js/buttons.html5.mjs";\nimport "datatables.net-buttons/js/buttons.print.mjs";\nimport "datatables.net-responsive-dt";\nimport "datatables.net-searchbuilder-dt";\nimport "datatables.net-select-dt";\n\n// @ts-ignore\nwindow.JSZip = JSZip;\n\nDataTable.use(DataTablesCore);\n\nexport default defineNuxtPlugin((nuxtApp) => {\n nuxtApp.vueApp.component("DataTable", DataTable);\n});\n',
|
|
679
|
+
'import DataTablesCore from "datatables.net";\nimport DataTable from "datatables.net-vue3";\nimport JSZip from "jszip";\n\nimport "datatables.net-buttons";\nimport "datatables.net-buttons-dt";\nimport "datatables.net-buttons/js/buttons.colVis.mjs";\nimport "datatables.net-buttons/js/buttons.html5.mjs";\nimport "datatables.net-buttons/js/buttons.print.mjs";\nimport "datatables.net-responsive-dt";\nimport "datatables.net-searchbuilder-dt";\nimport "datatables.net-select-dt";\n\n// @ts-ignore\nwindow.JSZip = JSZip;\n\nDataTable.use(DataTablesCore);\n\nexport default defineNuxtPlugin((nuxtApp) => {\n nuxtApp.vueApp.component("DataTable", DataTable);\n});\n',
|
|
676
680
|
},
|
|
677
681
|
],
|
|
678
682
|
files: [
|