@vscode/codicons 0.0.45 → 0.0.46-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.
package/dist/codicon.ttf CHANGED
Binary file
@@ -656,4 +656,7 @@ export const codiconsLibrary = {
656
656
  claude: register('claude', 0xec82),
657
657
  openInWindow: register('open-in-window', 0xec83),
658
658
  newSession: register('new-session', 0xec84),
659
+ terminalSecure: register('terminal-secure', 0xec85),
660
+ chatImport: register('chat-import', 0xec86),
661
+ chatExport: register('chat-export', 0xec87),
659
662
  } as const;
@@ -139,6 +139,16 @@
139
139
  "category": "search",
140
140
  "description": "Case-sensitive search option"
141
141
  },
142
+ "chat-export": {
143
+ "tags": ["chat", "export", "download", "save", "conversation", "message", "bubble", "arrow"],
144
+ "category": "communication",
145
+ "description": "Export or download chat conversation"
146
+ },
147
+ "chat-import": {
148
+ "tags": ["chat", "import", "upload", "load", "conversation", "message", "bubble", "arrow"],
149
+ "category": "communication",
150
+ "description": "Import or upload chat conversation"
151
+ },
142
152
  "check": {
143
153
  "tags": ["checkmark", "select", "checked", "mark", "complete", "finish", "done", "accept", "approve", "success"],
144
154
  "category": "status",
@@ -789,6 +799,11 @@
789
799
  "category": "application",
790
800
  "description": "Terminal or console"
791
801
  },
802
+ "terminal-secure": {
803
+ "tags": ["console", "command", "shell", "cli", "lock", "secure", "protected"],
804
+ "category": "application",
805
+ "description": "Secure terminal"
806
+ },
792
807
  "text-size": {
793
808
  "tags": ["font", "typography", "scale", "zoom"],
794
809
  "category": "text",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vscode/codicons",
3
- "version": "0.0.45",
3
+ "version": "0.0.46-1",
4
4
  "fontVersion": "1.15",
5
5
  "description": "The icon font for Visual Studio Code",
6
6
  "license": "CC-BY-4.0",
@@ -16,7 +16,7 @@
16
16
  "embed-metadata": "node ./scripts/embed-metadata.js",
17
17
  "embed-svg-data": "node ./scripts/embed-svg-data.js",
18
18
  "check-metadata": "node ./scripts/check-metadata.js",
19
- "fonts": "fantasticon",
19
+ "fonts": "node ./scripts/patch-fantasticon.js && fantasticon",
20
20
  "dev": "npm run build && npm run replace-in-vscode",
21
21
  "build": "npm run clean && npm run svgo && npm run fonts && npm run export-to-ts && npm run export-to-csv && npm run copy-metadata && npm run embed-metadata && npm run embed-svg-data && npm run sprite",
22
22
  "version:bump": "node ./scripts/version-bump.js",
@@ -37,10 +37,10 @@
37
37
  },
38
38
  "devDependencies": {
39
39
  "ansi-regex": ">=5.0.1",
40
- "fantasticon": "^1.2.3",
40
+ "fantasticon": "^4.1.0",
41
41
  "husky": "^9.1.7",
42
42
  "opentype.js": "^1.3.4",
43
43
  "svg-sprite": "^2.0.4",
44
- "svgo": "4.0.0"
44
+ "svgo": "4.0.1"
45
45
  }
46
46
  }
@@ -0,0 +1,95 @@
1
+ /*
2
+ * Temporary Windows compatibility patch for Fantasticon.
3
+ *
4
+ * Context:
5
+ * https://github.com/tancredi/fantasticon/issues/470
6
+ *
7
+ * Fantasticon 4.x builds the SVG discovery pattern internally using `path.join`
8
+ * and then passes that pattern into `glob`. On Windows, `path.join` emits
9
+ * backslashes, so the generated pattern looks like:
10
+ *
11
+ * D:\a\vscode-codicons\vscode-codicons\src\icons\**\*.svg
12
+ *
13
+ * The `glob` package does not interpret those backslashes as path separators in
14
+ * a glob expression. Instead, they are treated as escape characters. The result
15
+ * is that the pattern matches zero files, even though the icons are present on
16
+ * disk and earlier build steps such as `svgo -f ./src/icons/` can see them.
17
+ *
18
+ * That is why the CI failure looks misleading:
19
+ *
20
+ * No SVGs found in D:/a/vscode-codicons/vscode-codicons/src/icons
21
+ *
22
+ * The directory exists. The files exist. The problem is the glob pattern that
23
+ * Fantasticon constructs internally before it searches for the files.
24
+ *
25
+ * We already normalize the paths we pass into `.fantasticonrc.js`, but that is
26
+ * not sufficient because Fantasticon recreates the broken Windows pattern inside
27
+ * its own compiled runtime. The upstream issue thread repeatedly points to the
28
+ * same low-level fix: normalize the generated glob path to forward slashes
29
+ * before `glob` receives it.
30
+ *
31
+ * This script applies exactly that workaround to the installed Fantasticon
32
+ * package on Windows before the `fantasticon` CLI is executed. It patches both
33
+ * the library bundle and the CLI bundle because the published package contains
34
+ * duplicated compiled entrypoints under `dist/`.
35
+ *
36
+ * Scope and intent:
37
+ * - Windows only
38
+ * - No-op on macOS/Linux
39
+ * - Idempotent if the dependency is already patched
40
+ * - Fails loudly if Fantasticon changes shape and the expected line is no longer
41
+ * present, because a silent no-op would hide a broken release path
42
+ *
43
+ * This should be considered a repository-side compatibility shim until the
44
+ * upstream fix from the Fantasticon issue/PR thread lands in a released version
45
+ * that we can consume directly.
46
+ */
47
+ const fs = require('fs');
48
+ const path = require('path');
49
+
50
+ if (process.platform !== 'win32') {
51
+ process.exit(0);
52
+ }
53
+
54
+ const targetFiles = [
55
+ path.resolve(__dirname, '..', 'node_modules', 'fantasticon', 'dist', 'index.cjs'),
56
+ path.resolve(__dirname, '..', 'node_modules', 'fantasticon', 'dist', 'cli', 'index.cjs')
57
+ ];
58
+
59
+ const replacementSuffix = ".replace(/\\\\/g, '/')";
60
+ const targetSnippet = '`**/*.${ASSETS_EXTENSION}`';
61
+ let patchedFileCount = 0;
62
+ let alreadyPatchedCount = 0;
63
+
64
+ for (const targetFile of targetFiles) {
65
+ if (!fs.existsSync(targetFile)) {
66
+ continue;
67
+ }
68
+
69
+ const originalContent = fs.readFileSync(targetFile, 'utf8');
70
+ const patchedContent = originalContent
71
+ .split('\n')
72
+ .map((line) => {
73
+ if (!line.includes('const globPath = ') || !line.includes(targetSnippet) || line.includes(replacementSuffix)) {
74
+ return line;
75
+ }
76
+
77
+ return line.replace(';', `${replacementSuffix};`);
78
+ })
79
+ .join('\n');
80
+
81
+ if (patchedContent !== originalContent) {
82
+ fs.writeFileSync(targetFile, patchedContent, 'utf8');
83
+ patchedFileCount += 1;
84
+ continue;
85
+ }
86
+
87
+ if (originalContent.includes(replacementSuffix)) {
88
+ alreadyPatchedCount += 1;
89
+ }
90
+ }
91
+
92
+ if (patchedFileCount === 0 && alreadyPatchedCount === 0) {
93
+ console.error('fantasticon-fix: expected globPath pattern not found in installed Fantasticon files.');
94
+ process.exit(1);
95
+ }
package/scripts/reset.js CHANGED
@@ -1,13 +1,10 @@
1
1
  const fs = require("fs");
2
- const rimraf = require("rimraf");
3
2
 
4
3
  const outputDirectory = "dist";
5
4
 
6
5
  // clear dist folder
7
- rimraf(outputDirectory, function () {
8
-
9
- console.log(`deleted "${outputDirectory}" folder`);
10
-
11
- // re-create dist folder
12
- fs.mkdirSync(outputDirectory);
13
- });
6
+ fs.rmSync(outputDirectory, { recursive: true, force: true });
7
+ console.log(`deleted "${outputDirectory}" folder`);
8
+
9
+ // re-create dist folder
10
+ fs.mkdirSync(outputDirectory, { recursive: true });
@@ -0,0 +1 @@
1
+ <svg width="16" height="16" viewBox="0 0 16 16" xmlns="http://www.w3.org/2000/svg" fill="currentColor"><path d="M6.037 12.117C6.08 12.501 6.164 12.873 6.283 13.23L4.625 14.681C3.992 15.236 3 14.786 3 13.944V12.002H2.5C1.119 12.002 0 10.883 0 9.50195V4.50195C0 3.12095 1.119 2.00195 2.5 2.00195H11.5C12.881 2.00195 14 3.11995 14 4.50095V6.60795C13.683 6.44495 13.349 6.31295 13 6.21395V4.50195C13 3.67395 12.328 3.00095 11.5 3.00095H2.5C1.672 3.00095 1 3.67395 1 4.50195V9.50195C1 10.33 1.672 11.002 2.5 11.002H4V13.9L6.037 12.118V12.117ZM16 11.5C16 13.985 13.985 16 11.5 16C9.015 16 7 13.985 7 11.5C7 9.01495 9.015 6.99995 11.5 6.99995C13.985 6.99995 16 9.01495 16 11.5ZM13.854 11.147C13.659 10.952 13.342 10.952 13.147 11.147L12.001 12.293V9.49995C12.001 9.22395 11.777 8.99995 11.501 8.99995C11.225 8.99995 11.001 9.22395 11.001 9.49995V12.293L9.855 11.147C9.66 10.952 9.343 10.952 9.148 11.147C8.953 11.342 8.953 11.659 9.148 11.854L11.148 13.854L11.151 13.857C11.198 13.904 11.253 13.939 11.311 13.963C11.369 13.987 11.433 14.001 11.499 14.001H11.505C11.572 14.001 11.635 13.987 11.693 13.963C11.752 13.939 11.807 13.902 11.855 13.855L13.855 11.855C14.05 11.66 14.05 11.343 13.855 11.148L13.854 11.147Z"/></svg>
@@ -0,0 +1 @@
1
+ <svg width="16" height="16" viewBox="0 0 16 16" xmlns="http://www.w3.org/2000/svg" fill="currentColor"><path d="M6.037 12.117C6.08 12.501 6.164 12.873 6.283 13.23L4.625 14.681C3.992 15.236 3 14.786 3 13.944V12.002H2.5C1.119 12.002 0 10.883 0 9.50195V4.50195C0 3.12095 1.119 2.00195 2.5 2.00195H11.5C12.881 2.00195 14 3.11995 14 4.50095V6.60795C13.683 6.44495 13.349 6.31295 13 6.21395V4.50195C13 3.67395 12.328 3.00095 11.5 3.00095H2.5C1.672 3.00095 1 3.67395 1 4.50195V9.50195C1 10.33 1.672 11.002 2.5 11.002H4V13.9L6.037 12.118V12.117ZM16 11.5C16 13.985 13.985 16 11.5 16C9.015 16 7 13.985 7 11.5C7 9.01495 9.015 6.99995 11.5 6.99995C13.985 6.99995 16 9.01495 16 11.5ZM13.854 11.147L11.854 9.14695L11.851 9.14395C11.804 9.09695 11.749 9.06195 11.691 9.03795C11.633 9.01395 11.569 8.99995 11.503 8.99995H11.497C11.43 8.99995 11.367 9.01395 11.309 9.03795C11.25 9.06195 11.195 9.09895 11.147 9.14595L9.147 11.146C8.952 11.341 8.952 11.658 9.147 11.853C9.342 12.048 9.659 12.048 9.854 11.853L11 10.707V13.5C11 13.776 11.224 14 11.5 14C11.776 14 12 13.776 12 13.5V10.707L13.146 11.853C13.341 12.048 13.658 12.048 13.853 11.853C14.048 11.658 14.048 11.341 13.853 11.146L13.854 11.147Z"/></svg>
@@ -1 +1 @@
1
- <svg width="16" height="16" viewBox="0 0 16 16" xmlns="http://www.w3.org/2000/svg" fill="currentColor"><path d="M14 6.76601L15 5.76601V12C15 13.654 13.654 15 12 15H4C2.346 15 1 13.654 1 12V4.00001C1 2.34601 2.346 1.00001 4 1.00001H10.233L9.233 2.00001H4C2.897 2.00001 2 2.89701 2 4.00001V12C2 13.103 2.897 14 4 14H12C13.103 14 14 13.103 14 12V6.76601ZM15.453 0.547012H15.452C14.722 -0.182988 13.538 -0.182988 12.807 0.547012L7.978 5.37601C7.696 5.65801 7.497 6.01001 7.4 6.39701L7.026 7.89501C6.863 8.54601 7.453 9.13601 8.105 8.97401L9.603 8.59901C9.989 8.50201 10.342 8.30301 10.624 8.02101L15.453 3.19201C16.183 2.46201 16.183 1.27801 15.453 0.547012Z"/></svg>
1
+ <svg width="16" height="16" viewBox="0 0 16 16" xmlns="http://www.w3.org/2000/svg" fill="currentColor"><path d="M14.452 1.548C14.087 1.183 13.608 1 13.13 1C12.652 1 12.173 1.183 11.808 1.548L6.979 6.377C6.697 6.659 6.498 7.011 6.401 7.398L6.027 8.896C5.883 9.473 6.329 10.002 6.886 10.002C6.958 10.002 7.031 9.993 7.106 9.975L8.604 9.601C8.99 9.504 9.343 9.305 9.625 9.023L14.454 4.194C15.184 3.464 15.184 2.28 14.454 1.549L14.452 1.548ZM13.745 3.485L8.916 8.314C8.763 8.467 8.57 8.576 8.36 8.629L7.04 8.962L7.371 7.64C7.424 7.43 7.532 7.237 7.686 7.084L12.516 2.255C12.68 2.091 12.899 2 13.131 2C13.363 2 13.582 2.091 13.746 2.255C14.085 2.594 14.085 3.146 13.746 3.486L13.745 3.485ZM13 7.768L14 6.768V11.5C14 12.878 12.879 14 11.5 14H4.5C3.121 14 2 12.878 2 11.5V4.5C2 3.122 3.121 2 4.5 2H9.236L8.236 3H4.5C3.673 3 3 3.673 3 4.5V11.5C3 12.327 3.673 13 4.5 13H11.5C12.327 13 13 12.327 13 11.5V7.768Z"/></svg>
@@ -0,0 +1 @@
1
+ <svg width="16" height="16" viewBox="0 0 16 16" xmlns="http://www.w3.org/2000/svg" fill="currentColor"><path d="M15 3H14.5V2C14.5 0.895 13.605 0 12.5 0C11.395 0 10.5 0.895 10.5 2V3H10C9.448 3 9 3.448 9 4V8C9 8.552 9.448 9 10 9H15C15.552 9 16 8.552 16 8V4C16 3.448 15.552 3 15 3ZM12.5 6.75C12.086 6.75 11.75 6.414 11.75 6C11.75 5.586 12.086 5.25 12.5 5.25C12.914 5.25 13.25 5.586 13.25 6C13.25 6.414 12.914 6.75 12.5 6.75ZM13.5 3H11.5V2C11.5 1.448 11.948 1 12.5 1C13.052 1 13.5 1.448 13.5 2V3ZM14 10H15V12.5C15 13.879 13.879 15 12.5 15H3.5C2.121 15 1 13.879 1 12.5V3.5C1 2.122 2.121 1 3.5 1H9V2H3.5C2.673 2 2 2.673 2 3.5V12.5C2 13.327 2.673 14 3.5 14H12.5C13.327 14 14 13.327 14 12.5V10ZM7 11.5C7 11.224 7.224 11 7.5 11H12.5C12.776 11 13 11.224 13 11.5C13 11.776 12.776 12 12.5 12H7.5C7.224 12 7 11.776 7 11.5ZM3.146 11.147L5.792 8.501L3.146 5.855C2.951 5.66 2.951 5.343 3.146 5.148C3.341 4.953 3.658 4.953 3.853 5.148L6.853 8.148C7.048 8.343 7.048 8.66 6.853 8.855L3.854 11.854C3.756 11.952 3.628 12 3.5 12C3.372 12 3.244 11.951 3.146 11.854C2.951 11.659 2.951 11.342 3.146 11.147Z"/></svg>
@@ -1725,5 +1725,14 @@
1725
1725
  ],
1726
1726
  "60548": [
1727
1727
  "new-session"
1728
+ ],
1729
+ "60549": [
1730
+ "terminal-secure"
1731
+ ],
1732
+ "60550": [
1733
+ "chat-import"
1734
+ ],
1735
+ "60551": [
1736
+ "chat-export"
1728
1737
  ]
1729
1738
  }
@@ -139,6 +139,16 @@
139
139
  "category": "search",
140
140
  "description": "Case-sensitive search option"
141
141
  },
142
+ "chat-export": {
143
+ "tags": ["chat", "export", "download", "save", "conversation", "message", "bubble", "arrow"],
144
+ "category": "communication",
145
+ "description": "Export or download chat conversation"
146
+ },
147
+ "chat-import": {
148
+ "tags": ["chat", "import", "upload", "load", "conversation", "message", "bubble", "arrow"],
149
+ "category": "communication",
150
+ "description": "Import or upload chat conversation"
151
+ },
142
152
  "check": {
143
153
  "tags": ["checkmark", "select", "checked", "mark", "complete", "finish", "done", "accept", "approve", "success"],
144
154
  "category": "status",
@@ -789,6 +799,11 @@
789
799
  "category": "application",
790
800
  "description": "Terminal or console"
791
801
  },
802
+ "terminal-secure": {
803
+ "tags": ["console", "command", "shell", "cli", "lock", "secure", "protected"],
804
+ "category": "application",
805
+ "description": "Secure terminal"
806
+ },
792
807
  "text-size": {
793
808
  "tags": ["font", "typography", "scale", "zoom"],
794
809
  "category": "text",