@gjsify/adwaita-icons 0.1.15 → 0.3.0
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/mimetypes.ts +1 -1
- package/package.json +4 -2
- package/scripts/generate.ts +9 -2
- package/status.ts +0 -5
- package/tsconfig.json +13 -0
package/mimetypes.ts
CHANGED
|
@@ -10,7 +10,7 @@ export const applicationCertificateSymbolic = `<svg height="16px" viewBox="0 0 1
|
|
|
10
10
|
</svg>`;
|
|
11
11
|
|
|
12
12
|
/** application-rss+xml-symbolic */
|
|
13
|
-
export const
|
|
13
|
+
export const applicationRssXmlSymbolic = `<svg height="16px" viewBox="0 0 16 16" width="16px" xmlns="http://www.w3.org/2000/svg">
|
|
14
14
|
<path d="m 2.003906 2.003906 v 1.011719 c 0.007813 0.546875 0.453125 0.984375 1 0.988281 c 0.003906 -0.003906 0.007813 -0.003906 0.011719 -0.003906 v 0.027344 c 4.972656 0 8.988281 4.015625 8.988281 8.988281 c 0.003906 0.546875 0.449219 0.988281 1 0.984375 h 0.011719 h 0.988281 v -0.984375 h -0.003906 c 0 -0.003906 0 -0.003906 0.003906 -0.007813 c -0.003906 -5.972656 -4.804687 -10.84375 -10.746094 -10.972656 c -0.078124 -0.019531 -0.160156 -0.03125 -0.242187 -0.03125 v -0.003906 z m 0 4 v 1.011719 c 0.007813 0.546875 0.453125 0.984375 1 0.988281 c 0.003906 -0.003906 0.007813 -0.003906 0.011719 -0.003906 v 0.015625 c 2.71875 0 4.914063 2.144531 4.996094 4.84375 c -0.007813 0.046875 -0.011719 0.09375 -0.011719 0.144531 c 0 0.550782 0.449219 1 1 1 c 0.007812 -0.003906 0.011719 -0.003906 0.015625 -0.003906 v 0.003906 h 0.984375 v -0.988281 h 0.015625 c 0 -3.792969 -3.046875 -6.898437 -6.820313 -6.992187 c 0 -0.003907 -0.003906 -0.003907 -0.003906 -0.003907 c -0.058594 -0.011719 -0.117187 -0.015625 -0.175781 -0.015625 v -0.003906 z m 2 4 c -1.105468 0 -2 0.894532 -2 2 c 0 1.101563 0.894532 2 2 2 c 1.101563 0 2 -0.898437 2 -2 c 0 -1.105468 -0.898437 -2 -2 -2 z m 0 0" fill="currentColor"/>
|
|
15
15
|
</svg>`;
|
|
16
16
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@gjsify/adwaita-icons",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.3.0",
|
|
4
4
|
"description": "Adwaita symbolic icons as importable SVG strings for browser targets",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "index.ts",
|
|
@@ -52,10 +52,12 @@
|
|
|
52
52
|
}
|
|
53
53
|
},
|
|
54
54
|
"scripts": {
|
|
55
|
+
"check": "tsc --noEmit",
|
|
55
56
|
"generate": "tsx scripts/generate.ts"
|
|
56
57
|
},
|
|
57
58
|
"license": "LGPL-3.0-or-later AND CC-BY-SA-3.0",
|
|
58
59
|
"devDependencies": {
|
|
59
|
-
"tsx": "^4.21.0"
|
|
60
|
+
"tsx": "^4.21.0",
|
|
61
|
+
"typescript": "^6.0.3"
|
|
60
62
|
}
|
|
61
63
|
}
|
package/scripts/generate.ts
CHANGED
|
@@ -29,6 +29,7 @@ const CATEGORIES = [
|
|
|
29
29
|
function toCamelCase(filename: string): string {
|
|
30
30
|
return filename
|
|
31
31
|
.replace(/\.svg$/, '')
|
|
32
|
+
.replace(/[^a-z0-9-]/gi, '-')
|
|
32
33
|
.replace(/-([a-z0-9])/g, (_, c) => c.toUpperCase());
|
|
33
34
|
}
|
|
34
35
|
|
|
@@ -43,7 +44,7 @@ function processSvg(raw: string): string {
|
|
|
43
44
|
return svg;
|
|
44
45
|
}
|
|
45
46
|
|
|
46
|
-
function generateCategory(category: string): { code: string; exports: string[] } {
|
|
47
|
+
function generateCategory(category: string, seen: Set<string>): { code: string; exports: string[] } {
|
|
47
48
|
const dir = join(SYMBOLIC_DIR, category);
|
|
48
49
|
if (!existsSync(dir)) {
|
|
49
50
|
return { code: '', exports: [] };
|
|
@@ -67,6 +68,11 @@ function generateCategory(category: string): { code: string; exports: string[] }
|
|
|
67
68
|
const raw = readFileSync(join(dir, file), 'utf-8');
|
|
68
69
|
const svg = processSvg(raw);
|
|
69
70
|
const name = toCamelCase(file);
|
|
71
|
+
if (seen.has(name)) {
|
|
72
|
+
console.warn(` ⚠ Skipping duplicate "${name}" in ${category} (already exported by an earlier category)`);
|
|
73
|
+
continue;
|
|
74
|
+
}
|
|
75
|
+
seen.add(name);
|
|
70
76
|
exports.push(name);
|
|
71
77
|
lines.push(`/** ${file.replace('.svg', '')} */`);
|
|
72
78
|
lines.push(`export const ${name} = \`${svg.replace(/`/g, '\\`').replace(/\$/g, '\\$')}\`;`);
|
|
@@ -81,9 +87,10 @@ function generateCategory(category: string): { code: string; exports: string[] }
|
|
|
81
87
|
console.log(`Reading icons from: ${SYMBOLIC_DIR}`);
|
|
82
88
|
|
|
83
89
|
const allExports: Map<string, string[]> = new Map();
|
|
90
|
+
const seen = new Set<string>();
|
|
84
91
|
|
|
85
92
|
for (const category of CATEGORIES) {
|
|
86
|
-
const { code, exports } = generateCategory(category);
|
|
93
|
+
const { code, exports } = generateCategory(category, seen);
|
|
87
94
|
if (exports.length === 0) {
|
|
88
95
|
console.log(` ${category}: (empty, skipped)`);
|
|
89
96
|
continue;
|
package/status.ts
CHANGED
|
@@ -1245,11 +1245,6 @@ export const displayBrightnessSymbolic = `<svg height="16px" viewBox="0 0 16 16"
|
|
|
1245
1245
|
<path d="m 8 0 c -0.554688 0 -1 0.445312 -1 1 v 1 c 0 0.554688 0.445312 1 1 1 s 1 -0.445312 1 -1 v -1 c 0 -0.554688 -0.445312 -1 -1 -1 z m -4.992188 2.003906 c -0.257812 0 -0.511718 0.101563 -0.707031 0.296875 c -0.394531 0.390625 -0.394531 1.019531 0 1.414063 l 0.707031 0.707031 c 0.390626 0.390625 1.019532 0.390625 1.414063 0 c 0.390625 -0.394531 0.390625 -1.023437 0 -1.414063 l -0.707031 -0.707031 c -0.195313 -0.195312 -0.453125 -0.296875 -0.707032 -0.296875 z m 9.984376 0 c -0.253907 0 -0.511719 0.101563 -0.707032 0.296875 l -0.707031 0.707031 c -0.390625 0.390626 -0.390625 1.019532 0 1.414063 c 0.394531 0.390625 1.023437 0.390625 1.414063 0 l 0.707031 -0.707031 c 0.394531 -0.394532 0.394531 -1.023438 0 -1.414063 c -0.195313 -0.195312 -0.449219 -0.296875 -0.707031 -0.296875 z m -4.992188 1.996094 c -2.210938 0 -4 1.789062 -4 4 s 1.789062 4 4 4 s 4 -1.789062 4 -4 s -1.789062 -4 -4 -4 z m -7 3 c -0.554688 0 -1 0.445312 -1 1 s 0.445312 1 1 1 h 1 c 0.554688 0 1 -0.445312 1 -1 s -0.445312 -1 -1 -1 z m 13 0 c -0.554688 0 -1 0.445312 -1 1 s 0.445312 1 1 1 h 1 c 0.554688 0 1 -0.445312 1 -1 s -0.445312 -1 -1 -1 z m -10.335938 4.285156 c -0.238281 0.011719 -0.472656 0.109375 -0.65625 0.292969 l -0.707031 0.707031 c -0.394531 0.394532 -0.394531 1.023438 0 1.414063 c 0.390625 0.394531 1.019531 0.394531 1.414063 0 l 0.707031 -0.707031 c 0.390625 -0.390626 0.390625 -1.019532 0 -1.414063 c -0.210937 -0.207031 -0.484375 -0.304687 -0.757813 -0.292969 z m 8.574219 0 c -0.238281 0.011719 -0.476562 0.109375 -0.660156 0.292969 c -0.390625 0.394531 -0.390625 1.023437 0 1.414063 l 0.707031 0.707031 c 0.394532 0.394531 1.023438 0.394531 1.414063 0 c 0.394531 -0.390625 0.394531 -1.019531 0 -1.414063 l -0.707031 -0.707031 c -0.207032 -0.207031 -0.484376 -0.304687 -0.753907 -0.292969 z m -4.289062 1.714844 c -0.53125 0.027344 -0.949219 0.464844 -0.949219 1 v 1 c 0 0.554688 0.445312 1 1 1 s 1 -0.445312 1 -1 v -1 c 0 -0.554688 -0.445312 -1 -1 -1 c -0.015625 0 -0.035156 0 -0.050781 0 z m 0 0" fill="currentColor"/>
|
|
1246
1246
|
</svg>`;
|
|
1247
1247
|
|
|
1248
|
-
/** folder-drag-accept-symbolic */
|
|
1249
|
-
export const folderDragAcceptSymbolic = `<svg height="16px" viewBox="0 0 16 16" width="16px" xmlns="http://www.w3.org/2000/svg">
|
|
1250
|
-
<path d="m 2.96875 0.00390625 c -1.644531 0 -3 1.35546875 -3 2.99999975 v 10 c 0 1.644532 1.355469 3 3 3 h 10 c 1.644531 0 3 -1.355468 3 -3 v -8 c 0 -1.644531 -1.355469 -3 -3 -3 h -3.585938 l -1.707031 -1.707031 c -0.1875 -0.1875 -0.441406 -0.29296875 -0.707031 -0.29296875 z m 0 1.99999975 h 3.585938 l 1.707031 1.707032 c 0.1875 0.1875 0.441406 0.292968 0.707031 0.292968 h 4 c 0.5625 0 1 0.4375 1 1 v 5 h -12 v -7 c 0 -0.5625 0.4375 -1 1 -1 z m -1 10 h 12 v 1 c 0 0.5625 -0.4375 1 -1 1 h -10 c -0.5625 0 -1 -0.4375 -1 -1 z m 0 0" fill="currentColor"/>
|
|
1251
|
-
</svg>`;
|
|
1252
|
-
|
|
1253
1248
|
/** folder-open-symbolic */
|
|
1254
1249
|
export const folderOpenSymbolic = `<svg height="16px" viewBox="0 0 16 16" width="16px" xmlns="http://www.w3.org/2000/svg">
|
|
1255
1250
|
<path d="m 3 1 c -1.644531 0 -3 1.355469 -3 3 v 8 c 0 1.644531 1.355469 3 3 3 h 8.882812 c 0.832032 0 1.578126 -0.402344 2.054688 -0.9375 c 0.472656 -0.53125 0.738281 -1.167969 0.910156 -1.800781 l 0.972656 -2.609375 c 0.390626 -1.449219 -0.09375 -2.652344 -0.820312 -3.167969 c -0.484375 -0.34375 -0.714844 -0.292969 -1 -0.324219 v -1.160156 c 0 -0.855469 -0.558594 -1.589844 -1.09375 -1.828125 c -0.417969 -0.1875 -0.808594 -0.183594 -0.953125 -0.171875 h -3.539063 l -1.707031 -1.707031 c -0.1875 -0.1875 -0.441406 -0.292969 -0.707031 -0.292969 z m 0 2 h 2.585938 l 1.707031 1.707031 c 0.1875 0.1875 0.441406 0.292969 0.707031 0.292969 h 4 v 1 h -5 h 0.039062 c -0.914062 -0.039062 -1.746093 0.394531 -2.1875 0.96875 c -0.714843 1.226562 -1.160156 2.28125 -1.800781 3.71875 c -0.171875 0.527344 0.113281 1.09375 0.636719 1.265625 c 0.527344 0.167969 1.09375 -0.117187 1.261719 -0.640625 c 0.488281 -1.011719 0.921875 -1.816406 1.339843 -2.808594 c 0.210938 -0.503906 0.703126 -0.492187 0.898438 -0.503906 h 5.8125 c 1 0 1.046875 0.703125 0.886719 1.128906 l -0.96875 2.609375 c -0.121094 0.4375 -0.300781 0.800781 -0.476563 0.996094 c -0.175781 0.199219 -0.285156 0.265625 -0.558594 0.265625 h -8.882812 c -0.570312 0 -1 -0.429688 -1 -1 v -8 c 0 -0.570312 0.46875 -0.792969 1 -1 z m 9.105469 1.996094 h 0.003906 v 0.003906 h 0.003906 l -0.003906 0.003906 h -0.003906 v -0.003906 c -0.003907 0 -0.007813 0 -0.011719 0 h -0.003906 l -0.003906 -0.003906 z m 0 0" fill="currentColor"/>
|
package/tsconfig.json
ADDED
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
{
|
|
2
|
+
"compilerOptions": {
|
|
3
|
+
"module": "ESNext",
|
|
4
|
+
"target": "ESNext",
|
|
5
|
+
"lib": ["ESNext", "DOM"],
|
|
6
|
+
"moduleResolution": "bundler",
|
|
7
|
+
"allowImportingTsExtensions": true,
|
|
8
|
+
"noEmit": true,
|
|
9
|
+
"strict": false
|
|
10
|
+
},
|
|
11
|
+
"include": ["*.ts"],
|
|
12
|
+
"exclude": ["scripts"]
|
|
13
|
+
}
|