svger-cli 2.0.5 → 2.0.6
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/.svgerconfig.example.json +119 -119
- package/CHANGELOG.md +155 -63
- package/DEVELOPMENT.md +352 -352
- package/LICENSE +20 -20
- package/README.md +2654 -2132
- package/SECURITY.md +68 -68
- package/bin/svg-tool.js +2 -2
- package/dist/core/framework-templates.js +285 -285
- package/dist/core/style-compiler.js +201 -201
- package/dist/core/template-manager.js +348 -348
- package/dist/services/svg-service.js +12 -12
- package/dist/templates/ComponentTemplate.js +17 -17
- package/docs/ADR-SVG-INTRGRATION-METHODS-001.adr.md +157 -157
- package/docs/ADR-SVG-INTRGRATION-METHODS-002.adr.md +549 -549
- package/docs/FRAMEWORK-GUIDE.md +768 -768
- package/docs/IMPLEMENTATION-SUMMARY.md +376 -376
- package/package.json +177 -179
package/package.json
CHANGED
|
@@ -1,179 +1,177 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "svger-cli",
|
|
3
|
-
"version": "2.0.
|
|
4
|
-
"description": "Enterprise-grade, zero-dependency SVG to component converter supporting React, Vue, Angular, Svelte, Solid, Lit, Preact & Vanilla. Features auto-generated TypeScript exports, responsive design, themes, performance optimization & 85% faster processing than SVGR.",
|
|
5
|
-
"main": "dist/index.js",
|
|
6
|
-
"types": "dist/index.d.ts",
|
|
7
|
-
"type": "module",
|
|
8
|
-
"bin": {
|
|
9
|
-
"svger-cli": "./bin/svg-tool.js",
|
|
10
|
-
"svger": "./bin/svg-tool.js"
|
|
11
|
-
},
|
|
12
|
-
"exports": {
|
|
13
|
-
".": {
|
|
14
|
-
"types": "./dist/index.d.ts",
|
|
15
|
-
"import": "./dist/index.js",
|
|
16
|
-
"default": "./dist/index.js"
|
|
17
|
-
},
|
|
18
|
-
"./package.json": "./package.json"
|
|
19
|
-
},
|
|
20
|
-
"files": [
|
|
21
|
-
"dist/**/*.js",
|
|
22
|
-
"dist/**/*.d.ts",
|
|
23
|
-
"bin/svg-tool.js",
|
|
24
|
-
"README.md",
|
|
25
|
-
"LICENSE",
|
|
26
|
-
"CHANGELOG.md",
|
|
27
|
-
"SECURITY.md",
|
|
28
|
-
"DEVELOPMENT.md",
|
|
29
|
-
"docs/**/*.md",
|
|
30
|
-
".svgerconfig.example.json"
|
|
31
|
-
],
|
|
32
|
-
"scripts": {
|
|
33
|
-
"build": "npm run clean && tsc -p tsconfig.json",
|
|
34
|
-
"build:watch": "tsc -p tsconfig.json --watch",
|
|
35
|
-
"clean": "node -e \"require('fs').rmSync('dist', {recursive: true, force: true})\"",
|
|
36
|
-
"dev": "ts-node --esm src/cli.ts",
|
|
37
|
-
"test": "npm run test:frameworks && npm run test:config && npm run test:e2e",
|
|
38
|
-
"test:frameworks": "node frameworks.test.js",
|
|
39
|
-
"test:config": "tsc tests/config-options.test.ts --outDir dist-tests --module es2022 --target es2022 --moduleResolution bundler && node dist-tests/config-options.test.js",
|
|
40
|
-
"test:e2e": "tsc tests/e2e-complete.test.ts --outDir dist-tests --module es2022 --target es2022 --moduleResolution bundler && node dist-tests/e2e-complete.test.js",
|
|
41
|
-
"test:watch": "jest --watch",
|
|
42
|
-
"test:coverage": "jest --coverage",
|
|
43
|
-
"test:integration": "jest --testPathPattern=integration",
|
|
44
|
-
"test:all": "npm run test:frameworks && npm run test:config && npm run test:e2e",
|
|
45
|
-
"lint": "eslint src --ext .ts,.tsx",
|
|
46
|
-
"lint:fix": "eslint src --ext .ts,.tsx --fix",
|
|
47
|
-
"typecheck": "tsc --noEmit",
|
|
48
|
-
"format": "prettier --write \"src/**/*.{ts,tsx,json,md}\"",
|
|
49
|
-
"format:check": "prettier --check \"src/**/*.{ts,tsx,json,md}\"",
|
|
50
|
-
"
|
|
51
|
-
"
|
|
52
|
-
"release": "npm version
|
|
53
|
-
"release:
|
|
54
|
-
"
|
|
55
|
-
"
|
|
56
|
-
"
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
"
|
|
61
|
-
"
|
|
62
|
-
"
|
|
63
|
-
"
|
|
64
|
-
"
|
|
65
|
-
"
|
|
66
|
-
"
|
|
67
|
-
"
|
|
68
|
-
"
|
|
69
|
-
"
|
|
70
|
-
"
|
|
71
|
-
"
|
|
72
|
-
"
|
|
73
|
-
"
|
|
74
|
-
"
|
|
75
|
-
"
|
|
76
|
-
"
|
|
77
|
-
"
|
|
78
|
-
"
|
|
79
|
-
"
|
|
80
|
-
"
|
|
81
|
-
"
|
|
82
|
-
"
|
|
83
|
-
"
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
"
|
|
88
|
-
"
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
"
|
|
94
|
-
"
|
|
95
|
-
"
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
"
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
"
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
"
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
"
|
|
115
|
-
"
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
"
|
|
119
|
-
|
|
120
|
-
"
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
"
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
"
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
"
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
"@
|
|
137
|
-
"@
|
|
138
|
-
"
|
|
139
|
-
"
|
|
140
|
-
"eslint": "^
|
|
141
|
-
"
|
|
142
|
-
"
|
|
143
|
-
"jest": "^29.
|
|
144
|
-
"
|
|
145
|
-
"
|
|
146
|
-
"
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
"
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
"
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
}
|
|
179
|
-
}
|
|
1
|
+
{
|
|
2
|
+
"name": "svger-cli",
|
|
3
|
+
"version": "2.0.6",
|
|
4
|
+
"description": "Enterprise-grade, zero-dependency SVG to component converter supporting React, Vue, Angular, Svelte, Solid, Lit, Preact & Vanilla. Features auto-generated TypeScript exports, responsive design, themes, performance optimization & 85% faster processing than SVGR.",
|
|
5
|
+
"main": "dist/index.js",
|
|
6
|
+
"types": "dist/index.d.ts",
|
|
7
|
+
"type": "module",
|
|
8
|
+
"bin": {
|
|
9
|
+
"svger-cli": "./bin/svg-tool.js",
|
|
10
|
+
"svger": "./bin/svg-tool.js"
|
|
11
|
+
},
|
|
12
|
+
"exports": {
|
|
13
|
+
".": {
|
|
14
|
+
"types": "./dist/index.d.ts",
|
|
15
|
+
"import": "./dist/index.js",
|
|
16
|
+
"default": "./dist/index.js"
|
|
17
|
+
},
|
|
18
|
+
"./package.json": "./package.json"
|
|
19
|
+
},
|
|
20
|
+
"files": [
|
|
21
|
+
"dist/**/*.js",
|
|
22
|
+
"dist/**/*.d.ts",
|
|
23
|
+
"bin/svg-tool.js",
|
|
24
|
+
"README.md",
|
|
25
|
+
"LICENSE",
|
|
26
|
+
"CHANGELOG.md",
|
|
27
|
+
"SECURITY.md",
|
|
28
|
+
"DEVELOPMENT.md",
|
|
29
|
+
"docs/**/*.md",
|
|
30
|
+
".svgerconfig.example.json"
|
|
31
|
+
],
|
|
32
|
+
"scripts": {
|
|
33
|
+
"build": "npm run clean && tsc -p tsconfig.json",
|
|
34
|
+
"build:watch": "tsc -p tsconfig.json --watch",
|
|
35
|
+
"clean": "node -e \"require('fs').rmSync('dist', {recursive: true, force: true})\"",
|
|
36
|
+
"dev": "ts-node --esm src/cli.ts",
|
|
37
|
+
"test": "npm run test:frameworks && npm run test:config && npm run test:e2e",
|
|
38
|
+
"test:frameworks": "node frameworks.test.js",
|
|
39
|
+
"test:config": "tsc tests/config-options.test.ts --outDir dist-tests --module es2022 --target es2022 --moduleResolution bundler && node dist-tests/config-options.test.js",
|
|
40
|
+
"test:e2e": "tsc tests/e2e-complete.test.ts --outDir dist-tests --module es2022 --target es2022 --moduleResolution bundler && node dist-tests/e2e-complete.test.js",
|
|
41
|
+
"test:watch": "jest --watch",
|
|
42
|
+
"test:coverage": "jest --coverage",
|
|
43
|
+
"test:integration": "jest --testPathPattern=integration",
|
|
44
|
+
"test:all": "npm run test:frameworks && npm run test:config && npm run test:e2e",
|
|
45
|
+
"lint": "eslint src --ext .ts,.tsx",
|
|
46
|
+
"lint:fix": "eslint src --ext .ts,.tsx --fix",
|
|
47
|
+
"typecheck": "tsc --noEmit",
|
|
48
|
+
"format": "prettier --write \"src/**/*.{ts,tsx,json,md}\"",
|
|
49
|
+
"format:check": "prettier --check \"src/**/*.{ts,tsx,json,md}\"",
|
|
50
|
+
"prepack": "npm run build",
|
|
51
|
+
"release": "npm version patch && npm publish",
|
|
52
|
+
"release:minor": "npm version minor && npm publish",
|
|
53
|
+
"release:major": "npm version major && npm publish",
|
|
54
|
+
"docs:generate": "typedoc --out docs/api src/index.ts",
|
|
55
|
+
"benchmark": "node --loader ts-node/esm scripts/benchmark.ts",
|
|
56
|
+
"validate": "npm run typecheck && npm run lint && npm run test"
|
|
57
|
+
},
|
|
58
|
+
"keywords": [
|
|
59
|
+
"svg",
|
|
60
|
+
"react",
|
|
61
|
+
"vue",
|
|
62
|
+
"angular",
|
|
63
|
+
"svelte",
|
|
64
|
+
"solid",
|
|
65
|
+
"preact",
|
|
66
|
+
"lit",
|
|
67
|
+
"cli",
|
|
68
|
+
"components",
|
|
69
|
+
"typescript",
|
|
70
|
+
"zero-dependency",
|
|
71
|
+
"performance",
|
|
72
|
+
"design-system",
|
|
73
|
+
"responsive",
|
|
74
|
+
"enterprise",
|
|
75
|
+
"batch-processing",
|
|
76
|
+
"icon-generation",
|
|
77
|
+
"frontend-tooling",
|
|
78
|
+
"web-components",
|
|
79
|
+
"component-library",
|
|
80
|
+
"svg-optimization",
|
|
81
|
+
"framework-agnostic",
|
|
82
|
+
"developer-tools",
|
|
83
|
+
"build-tools"
|
|
84
|
+
],
|
|
85
|
+
"author": {
|
|
86
|
+
"name": "Faeze Mohades",
|
|
87
|
+
"email": "faezemohades@gmail.com",
|
|
88
|
+
"url": "https://github.com/faezemohades"
|
|
89
|
+
},
|
|
90
|
+
"contributors": [
|
|
91
|
+
{
|
|
92
|
+
"name": "Navid Rezadoost",
|
|
93
|
+
"email": "navidrezadoost07@gmail.com",
|
|
94
|
+
"url": "https://www.linkedin.com/in/navid-rezadoost-5526b9173/",
|
|
95
|
+
"role": "Core Developer & Technical Lead"
|
|
96
|
+
},
|
|
97
|
+
{
|
|
98
|
+
"name": "Ehsan Jafari",
|
|
99
|
+
"role": "Technical Requirements & Architecture"
|
|
100
|
+
}
|
|
101
|
+
],
|
|
102
|
+
"maintainers": [
|
|
103
|
+
{
|
|
104
|
+
"name": "Faeze Mohades",
|
|
105
|
+
"email": "faezemohades@gmail.com"
|
|
106
|
+
},
|
|
107
|
+
{
|
|
108
|
+
"name": "Navid Rezadoost",
|
|
109
|
+
"email": "navidrezadoost07@gmail.com"
|
|
110
|
+
}
|
|
111
|
+
],
|
|
112
|
+
"repository": {
|
|
113
|
+
"type": "git",
|
|
114
|
+
"url": "git+https://github.com/faezemohades/svger-cli.git",
|
|
115
|
+
"directory": "."
|
|
116
|
+
},
|
|
117
|
+
"homepage": "https://github.com/faezemohades/svger-cli#readme",
|
|
118
|
+
"bugs": {
|
|
119
|
+
"url": "https://github.com/faezemohades/svger-cli/issues",
|
|
120
|
+
"email": "faezemohades@gmail.com"
|
|
121
|
+
},
|
|
122
|
+
"funding": [
|
|
123
|
+
{
|
|
124
|
+
"type": "github",
|
|
125
|
+
"url": "https://github.com/sponsors/faezemohades"
|
|
126
|
+
},
|
|
127
|
+
{
|
|
128
|
+
"type": "buymeacoffee",
|
|
129
|
+
"url": "https://buymeacoffee.com/faezemohades"
|
|
130
|
+
}
|
|
131
|
+
],
|
|
132
|
+
"license": "MIT",
|
|
133
|
+
"devDependencies": {
|
|
134
|
+
"@types/jest": "^29.5.12",
|
|
135
|
+
"@types/node": "^24.10.1",
|
|
136
|
+
"@typescript-eslint/eslint-plugin": "^7.18.0",
|
|
137
|
+
"@typescript-eslint/parser": "^7.18.0",
|
|
138
|
+
"eslint": "^8.57.1",
|
|
139
|
+
"eslint-config-prettier": "^9.1.0",
|
|
140
|
+
"eslint-plugin-prettier": "^5.2.1",
|
|
141
|
+
"jest": "^29.7.0",
|
|
142
|
+
"prettier": "^3.3.3",
|
|
143
|
+
"ts-jest": "^29.2.5",
|
|
144
|
+
"ts-node": "^10.9.2",
|
|
145
|
+
"typedoc": "^0.28.14",
|
|
146
|
+
"typescript": "^5.6.3"
|
|
147
|
+
},
|
|
148
|
+
"peerDependencies": {
|
|
149
|
+
"node": ">=18.17.0"
|
|
150
|
+
},
|
|
151
|
+
"engines": {
|
|
152
|
+
"node": ">=18.17.0",
|
|
153
|
+
"npm": ">=9.0.0"
|
|
154
|
+
},
|
|
155
|
+
"os": [
|
|
156
|
+
"darwin",
|
|
157
|
+
"linux",
|
|
158
|
+
"win32"
|
|
159
|
+
],
|
|
160
|
+
"cpu": [
|
|
161
|
+
"x64",
|
|
162
|
+
"arm64"
|
|
163
|
+
],
|
|
164
|
+
"packageManager": "npm@10.8.2",
|
|
165
|
+
"preferGlobal": true,
|
|
166
|
+
"config": {
|
|
167
|
+
"commitizen": {
|
|
168
|
+
"path": "cz-conventional-changelog"
|
|
169
|
+
}
|
|
170
|
+
},
|
|
171
|
+
"browserslist": [
|
|
172
|
+
"node >= 18.17.0"
|
|
173
|
+
],
|
|
174
|
+
"volta": {
|
|
175
|
+
"node": "18.20.4"
|
|
176
|
+
}
|
|
177
|
+
}
|