material-icon-theme 4.14.0 → 4.16.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.
Files changed (185) hide show
  1. package/.eslintrc.json +51 -51
  2. package/.github/FUNDING.yml +3 -3
  3. package/.github/ISSUE_TEMPLATE/bug_report.md +34 -34
  4. package/.github/ISSUE_TEMPLATE/icon_request.md +27 -27
  5. package/.github/workflows/build.yml +45 -45
  6. package/.github/workflows/color-check.yml +22 -22
  7. package/.github/workflows/release.yml +73 -73
  8. package/.prettierrc +7 -7
  9. package/.vscode/extensions.json +3 -3
  10. package/.vscode/launch.json +43 -43
  11. package/.vscode/settings.json +14 -14
  12. package/.vscode/tasks.json +32 -32
  13. package/.vscodeignore +20 -20
  14. package/CHANGELOG.md +1135 -1101
  15. package/CONTRIBUTING.md +62 -62
  16. package/LICENSE.md +8 -8
  17. package/README.md +209 -209
  18. package/build/web-extension.webpack.config.js +62 -62
  19. package/build/webpack.config.js +39 -39
  20. package/changelog.config.json +4 -4
  21. package/icons/astyle.svg +4 -4
  22. package/icons/blitz.svg +4 -4
  23. package/icons/cypress.svg +4 -4
  24. package/icons/dependabot.svg +4 -4
  25. package/icons/dinophp.svg +16 -16
  26. package/icons/figma.svg +10 -10
  27. package/icons/folder-angular-open.svg +2 -2
  28. package/icons/folder-angular.svg +2 -2
  29. package/icons/folder-cypress-open.svg +5 -5
  30. package/icons/folder-cypress.svg +5 -5
  31. package/icons/folder-java-open.svg +2 -2
  32. package/icons/folder-java.svg +2 -2
  33. package/icons/folder-next-open.svg +2 -2
  34. package/icons/folder-next.svg +2 -2
  35. package/icons/folder-queue-open.svg +2 -2
  36. package/icons/folder-queue.svg +2 -2
  37. package/icons/folder-resolver-open.svg +2 -2
  38. package/icons/folder-resolver.svg +2 -2
  39. package/icons/folder-serverless-open.svg +5 -5
  40. package/icons/folder-serverless.svg +5 -5
  41. package/icons/folder-target-open.svg +2 -2
  42. package/icons/folder-target.svg +2 -2
  43. package/icons/folder-unity-open.svg +2 -0
  44. package/icons/folder-unity.svg +2 -0
  45. package/icons/folder-vercel-open.svg +4 -4
  46. package/icons/folder-vercel.svg +4 -4
  47. package/icons/gleam.svg +4 -4
  48. package/icons/gridsome.svg +4 -4
  49. package/icons/hardhat.svg +3 -3
  50. package/icons/lighthouse.svg +2 -2
  51. package/icons/ndst.svg +7 -7
  52. package/icons/next.svg +3 -3
  53. package/icons/next_light.svg +2 -2
  54. package/icons/odin.svg +6 -6
  55. package/icons/parcel.svg +4 -4
  56. package/icons/playwright.svg +7 -7
  57. package/icons/pnpm.svg +9 -9
  58. package/icons/pnpm_light.svg +7 -7
  59. package/icons/poetry.svg +1 -0
  60. package/icons/processing.svg +10 -1
  61. package/icons/remix.svg +4 -4
  62. package/icons/remix_light.svg +4 -4
  63. package/icons/rome.svg +5 -5
  64. package/icons/serverless.svg +4 -4
  65. package/icons/siyuan.svg +9 -9
  66. package/icons/steadybit.svg +1 -0
  67. package/icons/svgr.svg +4 -4
  68. package/icons/tauri.svg +9 -9
  69. package/icons/template.svg +4 -4
  70. package/icons/tobi.svg +4 -4
  71. package/icons/tobimake.svg +14 -14
  72. package/icons/turborepo.svg +12 -0
  73. package/icons/turborepo_light.svg +12 -0
  74. package/images/contributors.png +0 -0
  75. package/images/fileIcons.png +0 -0
  76. package/images/folderIcons.png +0 -0
  77. package/logo.svg +21 -21
  78. package/material-colors.yml +257 -257
  79. package/package.json +264 -264
  80. package/package.nls.de.json +35 -35
  81. package/package.nls.es.json +32 -32
  82. package/package.nls.fr.json +32 -32
  83. package/package.nls.ja.json +35 -35
  84. package/package.nls.json +35 -35
  85. package/package.nls.nl.json +35 -35
  86. package/package.nls.pl.json +35 -35
  87. package/package.nls.pt-BR.json +32 -32
  88. package/package.nls.pt-PT.json +32 -32
  89. package/package.nls.ru.json +32 -32
  90. package/package.nls.zh-CN.json +32 -32
  91. package/package.nls.zh-TW.json +32 -32
  92. package/src/commands/activate.ts +26 -26
  93. package/src/commands/explorerArrows.ts +55 -55
  94. package/src/commands/folderColor.ts +96 -96
  95. package/src/commands/folders.ts +55 -55
  96. package/src/commands/grayscale.ts +55 -55
  97. package/src/commands/iconPacks.ts +68 -68
  98. package/src/commands/index.ts +30 -30
  99. package/src/commands/opacity.ts +46 -46
  100. package/src/commands/restoreConfig.ts +14 -14
  101. package/src/commands/saturation.ts +46 -46
  102. package/src/extension.ts +35 -35
  103. package/src/helpers/changeDetection.ts +68 -68
  104. package/src/helpers/customIcons.ts +8 -8
  105. package/src/helpers/fileConfig.ts +37 -37
  106. package/src/helpers/index.ts +100 -100
  107. package/src/helpers/objects.ts +58 -58
  108. package/src/helpers/types.ts +7 -7
  109. package/src/helpers/versioning.ts +73 -73
  110. package/src/i18n/index.ts +78 -78
  111. package/src/i18n/lang-de.ts +54 -54
  112. package/src/i18n/lang-en.ts +53 -53
  113. package/src/i18n/lang-es.ts +53 -53
  114. package/src/i18n/lang-fr.ts +53 -53
  115. package/src/i18n/lang-ja.ts +54 -54
  116. package/src/i18n/lang-nl.ts +54 -54
  117. package/src/i18n/lang-pl.ts +52 -52
  118. package/src/i18n/lang-pt-br.ts +53 -53
  119. package/src/i18n/lang-pt-pt.ts +53 -53
  120. package/src/i18n/lang-ru.ts +52 -52
  121. package/src/i18n/lang-uk.ts +54 -54
  122. package/src/i18n/lang-zh-cn.ts +52 -52
  123. package/src/i18n/lang-zh-tw.ts +52 -52
  124. package/src/icons/fileIcons.ts +1854 -1782
  125. package/src/icons/folderIcons.ts +754 -711
  126. package/src/icons/generator/constants.ts +29 -29
  127. package/src/icons/generator/fileGenerator.ts +216 -216
  128. package/src/icons/generator/folderGenerator.ts +340 -340
  129. package/src/icons/generator/iconOpacity.ts +111 -111
  130. package/src/icons/generator/iconSaturation.ts +140 -140
  131. package/src/icons/generator/index.ts +7 -7
  132. package/src/icons/generator/jsonGenerator.ts +187 -187
  133. package/src/icons/generator/languageGenerator.ts +127 -127
  134. package/src/icons/index.ts +4 -4
  135. package/src/icons/languageIcons.ts +134 -134
  136. package/src/messages/outdated.ts +33 -33
  137. package/src/messages/reload.ts +32 -32
  138. package/src/messages/start.ts +12 -12
  139. package/src/messages/update.ts +48 -48
  140. package/src/messages/welcome.ts +47 -47
  141. package/src/models/helpers/index.ts +1 -1
  142. package/src/models/helpers/themeStatus.ts +5 -5
  143. package/src/models/i18n/index.ts +1 -1
  144. package/src/models/i18n/translation.ts +50 -50
  145. package/src/models/iconConfiguration.ts +37 -37
  146. package/src/models/icons/defaultIcon.ts +16 -16
  147. package/src/models/icons/files/fileIcon.ts +49 -49
  148. package/src/models/icons/files/fileTypes.ts +14 -14
  149. package/src/models/icons/files/index.ts +2 -2
  150. package/src/models/icons/folders/folderIcon.ts +34 -34
  151. package/src/models/icons/folders/folderTheme.ts +23 -23
  152. package/src/models/icons/folders/index.ts +2 -2
  153. package/src/models/icons/iconJsonOptions.ts +23 -23
  154. package/src/models/icons/iconPack.ts +12 -12
  155. package/src/models/icons/index.ts +6 -6
  156. package/src/models/icons/languages/index.ts +1 -1
  157. package/src/models/icons/languages/languageIdentifier.ts +26 -26
  158. package/src/models/index.ts +4 -4
  159. package/src/models/scripts/contributors/contributor.ts +22 -22
  160. package/src/models/scripts/contributors/contributorsConfig.ts +10 -10
  161. package/src/scripts/contributors/contributors.css +24 -24
  162. package/src/scripts/contributors/index.ts +138 -138
  163. package/src/scripts/helpers/painter.ts +5 -5
  164. package/src/scripts/helpers/screenshots.ts +32 -32
  165. package/src/scripts/helpers/similarity.ts +47 -47
  166. package/src/scripts/helpers/titleCase.ts +7 -7
  167. package/src/scripts/icons/checks/checkIconAvailability.ts +215 -215
  168. package/src/scripts/icons/checks/checkIconConflicts.ts +154 -154
  169. package/src/scripts/icons/checks/checkIconUsage.ts +141 -141
  170. package/src/scripts/icons/checks/index.ts +7 -7
  171. package/src/scripts/icons/generateJson.ts +11 -11
  172. package/src/scripts/preview/index.ts +40 -40
  173. package/src/scripts/preview/preview.ts +165 -165
  174. package/src/scripts/preview/style.css +48 -48
  175. package/src/test/runTest.ts +26 -26
  176. package/src/test/spec/i18n/i18n.spec.ts +61 -61
  177. package/src/test/spec/icons/fileIcons.spec.ts +250 -250
  178. package/src/test/spec/icons/folderIcons.spec.ts +418 -418
  179. package/src/test/spec/icons/languageIcons.spec.ts +184 -184
  180. package/src/test/spec/index.ts +36 -36
  181. package/src/web/extension.ts +10 -10
  182. package/svgo.config.js +11 -11
  183. package/tsconfig.json +23 -23
  184. package/.github/workflows/greetings.yml +0 -17
  185. package/icons/processing_light.svg +0 -1
package/.eslintrc.json CHANGED
@@ -1,51 +1,51 @@
1
- {
2
- "extends": ["plugin:prettier/recommended"],
3
- "env": {
4
- "browser": true,
5
- "es6": true,
6
- "node": true
7
- },
8
- "parser": "@typescript-eslint/parser",
9
- "parserOptions": {
10
- "project": "tsconfig.json",
11
- "sourceType": "module"
12
- },
13
- "plugins": ["@typescript-eslint"],
14
- "rules": {
15
- "@typescript-eslint/naming-convention": [
16
- "error",
17
- {
18
- "selector": "variable",
19
- "format": ["camelCase"]
20
- }
21
- ],
22
- "@typescript-eslint/prefer-namespace-keyword": "error",
23
- "no-trailing-spaces": "error",
24
- "camelcase": "error",
25
- "prefer-const": "error",
26
- "eqeqeq": ["error", "smart"],
27
- "id-blacklist": [
28
- "error",
29
- "any",
30
- "Number",
31
- "number",
32
- "String",
33
- "string",
34
- "Boolean",
35
- "boolean",
36
- "Undefined"
37
- ],
38
- "id-match": "error",
39
- "no-eval": "error",
40
- "no-underscore-dangle": "error",
41
- "no-unsafe-finally": "error",
42
- "no-var": "error",
43
- "spaced-comment": "error",
44
- "prettier/prettier": [
45
- "error",
46
- {
47
- "endOfLine": "auto"
48
- }
49
- ]
50
- }
51
- }
1
+ {
2
+ "extends": ["plugin:prettier/recommended"],
3
+ "env": {
4
+ "browser": true,
5
+ "es6": true,
6
+ "node": true
7
+ },
8
+ "parser": "@typescript-eslint/parser",
9
+ "parserOptions": {
10
+ "project": "tsconfig.json",
11
+ "sourceType": "module"
12
+ },
13
+ "plugins": ["@typescript-eslint"],
14
+ "rules": {
15
+ "@typescript-eslint/naming-convention": [
16
+ "error",
17
+ {
18
+ "selector": "variable",
19
+ "format": ["camelCase"]
20
+ }
21
+ ],
22
+ "@typescript-eslint/prefer-namespace-keyword": "error",
23
+ "no-trailing-spaces": "error",
24
+ "camelcase": "error",
25
+ "prefer-const": "error",
26
+ "eqeqeq": ["error", "smart"],
27
+ "id-blacklist": [
28
+ "error",
29
+ "any",
30
+ "Number",
31
+ "number",
32
+ "String",
33
+ "string",
34
+ "Boolean",
35
+ "boolean",
36
+ "Undefined"
37
+ ],
38
+ "id-match": "error",
39
+ "no-eval": "error",
40
+ "no-underscore-dangle": "error",
41
+ "no-unsafe-finally": "error",
42
+ "no-var": "error",
43
+ "spaced-comment": "error",
44
+ "prettier/prettier": [
45
+ "error",
46
+ {
47
+ "endOfLine": "auto"
48
+ }
49
+ ]
50
+ }
51
+ }
@@ -1,3 +1,3 @@
1
- # These are supported funding model platforms
2
- github: [pkief]
3
- custom: ['https://paypal.me/philippkief', 'https://buymeacoffee.com/pkief']
1
+ # These are supported funding model platforms
2
+ github: [pkief]
3
+ custom: ['https://paypal.me/philippkief', 'https://buymeacoffee.com/pkief']
@@ -1,34 +1,34 @@
1
- ---
2
- name: Bug report
3
- about: Create a report to help us improve
4
- title: ''
5
- labels: ''
6
- assignees: ''
7
-
8
- ---
9
-
10
- **Describe the bug**
11
- A clear and concise description of what the bug is.
12
-
13
- **To Reproduce**
14
- Steps to reproduce the behavior:
15
- 1. Go to '...'
16
- 2. Click on '....'
17
- 3. Scroll down to '....'
18
- 4. See error
19
-
20
- **Expected behavior**
21
- A clear and concise description of what you expected to happen.
22
-
23
- **Screenshots**
24
- If applicable, add screenshots to help explain your problem.
25
-
26
- **Computer information (please complete the following information):**
27
- - OS edition: [e.g. Windows 10 Home]
28
- - OS build: [e.g. 19042.1165]
29
- - Browser [e.g. chrome, safari]
30
- - Version [e.g. 22]
31
- - VSCode version [e.g. 1.59.1]
32
-
33
- **Additional context**
34
- Add any other context about the problem here.
1
+ ---
2
+ name: Bug report
3
+ about: Create a report to help us improve
4
+ title: ''
5
+ labels: ''
6
+ assignees: ''
7
+
8
+ ---
9
+
10
+ **Describe the bug**
11
+ A clear and concise description of what the bug is.
12
+
13
+ **To Reproduce**
14
+ Steps to reproduce the behavior:
15
+ 1. Go to '...'
16
+ 2. Click on '....'
17
+ 3. Scroll down to '....'
18
+ 4. See error
19
+
20
+ **Expected behavior**
21
+ A clear and concise description of what you expected to happen.
22
+
23
+ **Screenshots**
24
+ If applicable, add screenshots to help explain your problem.
25
+
26
+ **Computer information (please complete the following information):**
27
+ - OS edition: [e.g. Windows 10 Home]
28
+ - OS build: [e.g. 19042.1165]
29
+ - Browser [e.g. chrome, safari]
30
+ - Version [e.g. 22]
31
+ - VSCode version [e.g. 1.59.1]
32
+
33
+ **Additional context**
34
+ Add any other context about the problem here.
@@ -1,27 +1,27 @@
1
- ---
2
- name: Icon Request
3
- about: Ask for specific icons to be added
4
- title: '[Icon Request] <icon_name>'
5
- labels: ''
6
- assignees: ''
7
-
8
- ---
9
-
10
- **Icon Type**
11
- - [ ] Folder
12
- - [ ] File
13
-
14
- **Folder Names**
15
- <!-- delete if not applicable -->
16
- - ...
17
-
18
- **File Names**
19
- <!-- delete if not applicable -->
20
- - ...
21
-
22
- **Graphic ideas**
23
- <!-- include a link to sample icons if possible -->
24
- A clear description of the icon you would like. If the icons are separate for folder and files, please create separate issues.
25
-
26
- **Additional context**
27
- Add any other context about the problem here.
1
+ ---
2
+ name: Icon Request
3
+ about: Ask for specific icons to be added
4
+ title: '[Icon Request] <icon_name>'
5
+ labels: ''
6
+ assignees: ''
7
+
8
+ ---
9
+
10
+ **Icon Type**
11
+ - [ ] Folder
12
+ - [ ] File
13
+
14
+ **Folder Names**
15
+ <!-- delete if not applicable -->
16
+ - ...
17
+
18
+ **File Names**
19
+ <!-- delete if not applicable -->
20
+ - ...
21
+
22
+ **Graphic ideas**
23
+ <!-- include a link to sample icons if possible -->
24
+ A clear description of the icon you would like. If the icons are separate for folder and files, please create separate issues.
25
+
26
+ **Additional context**
27
+ Add any other context about the problem here.
@@ -1,45 +1,45 @@
1
- name: Build + Test
2
-
3
- on: [push, pull_request]
4
-
5
- jobs:
6
- test:
7
- runs-on: ${{ matrix.os }}
8
- strategy:
9
- matrix:
10
- os: [windows-latest, ubuntu-latest]
11
- node-version: [16.x]
12
-
13
- name: ${{ matrix.os }} (Node.js ${{ matrix.node-version }})
14
-
15
- steps:
16
- - name: Checkout 🛎
17
- uses: actions/checkout@v2
18
- - name: Setup Node.js ${{ matrix.node-version }} ⚙
19
- uses: actions/setup-node@v2
20
- with:
21
- node-version: ${{ matrix.node-version }}
22
- - name: Run display server 🖥
23
- run: /usr/bin/Xvfb :99 -screen 0 1024x768x24 > /dev/null 2>&1 & echo "Started xvfb"
24
- shell: bash
25
- if: ${{ success() && matrix.os == 'ubuntu-latest' }}
26
- - name: Install node_modules 📦
27
- run: npm ci
28
- - name: Cache node_modules 💾
29
- uses: actions/cache@v2
30
- env:
31
- cache-name: cache-node-modules
32
- with:
33
- # npm cache files are stored in `~/.npm` on Linux/macOS
34
- path: ~/.npm
35
- key: ${{ runner.os }}-build-${{ env.cache-name }}-${{ hashFiles('**/package-lock.json') }}
36
- restore-keys: |
37
- ${{ runner.os }}-build-${{ env.cache-name }}-
38
- ${{ runner.os }}-build-
39
- ${{ runner.os }}-
40
- - name: Test + Build 🚀
41
- run: |
42
- npm test
43
- npm run vscode:prepublish
44
- env:
45
- DISPLAY: ':99.0'
1
+ name: Build + Test
2
+
3
+ on: [push, pull_request]
4
+
5
+ jobs:
6
+ test:
7
+ runs-on: ${{ matrix.os }}
8
+ strategy:
9
+ matrix:
10
+ os: [windows-latest, ubuntu-latest]
11
+ node-version: [16.x]
12
+
13
+ name: ${{ matrix.os }} (Node.js ${{ matrix.node-version }})
14
+
15
+ steps:
16
+ - name: Checkout 🛎
17
+ uses: actions/checkout@v2
18
+ - name: Setup Node.js ${{ matrix.node-version }} ⚙
19
+ uses: actions/setup-node@v2
20
+ with:
21
+ node-version: ${{ matrix.node-version }}
22
+ - name: Run display server 🖥
23
+ run: /usr/bin/Xvfb :99 -screen 0 1024x768x24 > /dev/null 2>&1 & echo "Started xvfb"
24
+ shell: bash
25
+ if: ${{ success() && matrix.os == 'ubuntu-latest' }}
26
+ - name: Install node_modules 📦
27
+ run: npm ci
28
+ - name: Cache node_modules 💾
29
+ uses: actions/cache@v2
30
+ env:
31
+ cache-name: cache-node-modules
32
+ with:
33
+ # npm cache files are stored in `~/.npm` on Linux/macOS
34
+ path: ~/.npm
35
+ key: ${{ runner.os }}-build-${{ env.cache-name }}-${{ hashFiles('**/package-lock.json') }}
36
+ restore-keys: |
37
+ ${{ runner.os }}-build-${{ env.cache-name }}-
38
+ ${{ runner.os }}-build-
39
+ ${{ runner.os }}-
40
+ - name: Test + Build 🚀
41
+ run: |
42
+ npm test
43
+ npm run vscode:prepublish
44
+ env:
45
+ DISPLAY: ':99.0'
@@ -1,22 +1,22 @@
1
- name: Check SVG icon colors
2
-
3
- on:
4
- pull_request:
5
- paths:
6
- - 'icons/*.svg'
7
-
8
- jobs:
9
- color-check:
10
- name: SVG Color Check
11
- runs-on: ubuntu-latest
12
- env:
13
- TARGET_BRANCH: ${{ github.event.pull_request.base.ref }}
14
- steps:
15
- - name: Checkout 🛎️
16
- uses: actions/checkout@v2
17
- with:
18
- fetch-depth: 0
19
- - name: Check colors 🎨
20
- run: |
21
- svgFiles=$(git diff origin/${{ env.TARGET_BRANCH }} --name-only | grep '.svg$')
22
- npx svg-color-linter --colors material-colors.yml ${svgFiles}
1
+ name: Check SVG icon colors
2
+
3
+ on:
4
+ pull_request:
5
+ paths:
6
+ - 'icons/*.svg'
7
+
8
+ jobs:
9
+ color-check:
10
+ name: SVG Color Check
11
+ runs-on: ubuntu-latest
12
+ env:
13
+ TARGET_BRANCH: ${{ github.event.pull_request.base.ref }}
14
+ steps:
15
+ - name: Checkout 🛎️
16
+ uses: actions/checkout@v2
17
+ with:
18
+ fetch-depth: 0
19
+ - name: Check colors 🎨
20
+ run: |
21
+ svgFiles=$(git diff origin/${{ env.TARGET_BRANCH }} --diff-filter=ACMRTUX --name-only | grep '.svg$')
22
+ npx svg-color-linter --colors material-colors.yml ${svgFiles}
@@ -1,73 +1,73 @@
1
- name: Release + Publish
2
-
3
- on:
4
- workflow_dispatch:
5
- inputs:
6
- versionChange:
7
- type: choice
8
- description: Select the version change
9
- requried: true
10
- options:
11
- - major
12
- - minor
13
- - patch
14
-
15
- jobs:
16
- release:
17
- runs-on: ubuntu-latest
18
- env:
19
- VERSION_CHANGE: ${{ github.event.inputs.versionChange }}
20
- steps:
21
- - name: Checkout 🛎️
22
- uses: actions/checkout@v2
23
- with:
24
- fetch-depth: 0
25
- - name: Setup Node.js ⚙️
26
- uses: actions/setup-node@v2
27
- with:
28
- node-version: 'lts/*'
29
- registry-url: 'https://registry.npmjs.org'
30
- - name: Install node_modules 📦
31
- run: |
32
- npm ci
33
- npm install --global vsce
34
- - name: Update version ↗
35
- run: |
36
- git config --global user.name 'Philipp Kief'
37
- git config --global user.email 'PKief@users.noreply.github.com'
38
- git config --global push.followTags true
39
- npm version ${{ env.VERSION_CHANGE }} -m "Release %s"
40
- - name: Get meta data 🔍
41
- run: |
42
- NODE_VERSION=$(node -p -e "require('./package.json').version")
43
- echo VERSION=$NODE_VERSION >> $GITHUB_ENV
44
- NODE_NAME=$(node -p -e "require('./package.json').name")
45
- echo NAME=$NODE_NAME >> $GITHUB_ENV
46
- NODE_DISPLAY_NAME=$(node -p -e "require('./package.json').displayName")
47
- echo DISPLAY_NAME=$NODE_DISPLAY_NAME >> $GITHUB_ENV
48
- - name: Build ⚒️
49
- run: vsce package
50
- - name: Push tags 📌
51
- run: git push
52
- - name: Release ${{ env.VERSION }} 🔆
53
- uses: softprops/action-gh-release@v1
54
- with:
55
- files: ${{ env.NAME }}-${{ env.VERSION }}.vsix
56
- tag_name: v${{ env.VERSION }}
57
- name: ${{ env.DISPLAY_NAME }} v${{ env.VERSION }}
58
- generate_release_notes: true
59
- - name: Publish to Open VSX Registry 🌐
60
- uses: HaaLeo/publish-vscode-extension@v1
61
- with:
62
- pat: ${{ secrets.OPEN_VSX_TOKEN }}
63
- extensionFile: ${{ env.NAME }}-${{ env.VERSION }}.vsix
64
- - name: Publish to Visual Studio Marketplace 🌐
65
- uses: HaaLeo/publish-vscode-extension@v1
66
- with:
67
- pat: ${{ secrets.VS_MARKETPLACE_TOKEN }}
68
- registryUrl: https://marketplace.visualstudio.com
69
- extensionFile: ${{ env.NAME }}-${{ env.VERSION }}.vsix
70
- - name: Publish to NPM Registry 🌐
71
- run: npm publish
72
- env:
73
- NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
1
+ name: Release + Publish
2
+
3
+ on:
4
+ workflow_dispatch:
5
+ inputs:
6
+ versionChange:
7
+ type: choice
8
+ description: Select the version change
9
+ requried: true
10
+ options:
11
+ - major
12
+ - minor
13
+ - patch
14
+
15
+ jobs:
16
+ release:
17
+ runs-on: ubuntu-latest
18
+ env:
19
+ VERSION_CHANGE: ${{ github.event.inputs.versionChange }}
20
+ steps:
21
+ - name: Checkout 🛎️
22
+ uses: actions/checkout@v2
23
+ with:
24
+ fetch-depth: 0
25
+ - name: Setup Node.js ⚙️
26
+ uses: actions/setup-node@v2
27
+ with:
28
+ node-version: 'lts/*'
29
+ registry-url: 'https://registry.npmjs.org'
30
+ - name: Install node_modules 📦
31
+ run: |
32
+ npm ci
33
+ npm install --global vsce
34
+ - name: Update version ↗
35
+ run: |
36
+ git config --global user.name 'Philipp Kief'
37
+ git config --global user.email 'PKief@users.noreply.github.com'
38
+ git config --global push.followTags true
39
+ npm version ${{ env.VERSION_CHANGE }} -m "Release %s"
40
+ - name: Get meta data 🔍
41
+ run: |
42
+ NODE_VERSION=$(node -p -e "require('./package.json').version")
43
+ echo VERSION=$NODE_VERSION >> $GITHUB_ENV
44
+ NODE_NAME=$(node -p -e "require('./package.json').name")
45
+ echo NAME=$NODE_NAME >> $GITHUB_ENV
46
+ NODE_DISPLAY_NAME=$(node -p -e "require('./package.json').displayName")
47
+ echo DISPLAY_NAME=$NODE_DISPLAY_NAME >> $GITHUB_ENV
48
+ - name: Build ⚒️
49
+ run: vsce package
50
+ - name: Push tags 📌
51
+ run: git push
52
+ - name: Release ${{ env.VERSION }} 🔆
53
+ uses: softprops/action-gh-release@v1
54
+ with:
55
+ files: ${{ env.NAME }}-${{ env.VERSION }}.vsix
56
+ tag_name: v${{ env.VERSION }}
57
+ name: ${{ env.DISPLAY_NAME }} v${{ env.VERSION }}
58
+ generate_release_notes: true
59
+ - name: Publish to Open VSX Registry 🌐
60
+ uses: HaaLeo/publish-vscode-extension@v1
61
+ with:
62
+ pat: ${{ secrets.OPEN_VSX_TOKEN }}
63
+ extensionFile: ${{ env.NAME }}-${{ env.VERSION }}.vsix
64
+ - name: Publish to Visual Studio Marketplace 🌐
65
+ uses: HaaLeo/publish-vscode-extension@v1
66
+ with:
67
+ pat: ${{ secrets.VS_MARKETPLACE_TOKEN }}
68
+ registryUrl: https://marketplace.visualstudio.com
69
+ extensionFile: ${{ env.NAME }}-${{ env.VERSION }}.vsix
70
+ - name: Publish to NPM Registry 🌐
71
+ run: npm publish
72
+ env:
73
+ NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
package/.prettierrc CHANGED
@@ -1,7 +1,7 @@
1
- {
2
- "trailingComma": "es5",
3
- "tabWidth": 2,
4
- "semi": true,
5
- "singleQuote": true,
6
- "endOfLine": "auto"
7
- }
1
+ {
2
+ "trailingComma": "es5",
3
+ "tabWidth": 2,
4
+ "semi": true,
5
+ "singleQuote": true,
6
+ "endOfLine": "auto"
7
+ }
@@ -1,3 +1,3 @@
1
- {
2
- "recommendations": ["dbaeumer.vscode-eslint", "esbenp.prettier-vscode"]
3
- }
1
+ {
2
+ "recommendations": ["dbaeumer.vscode-eslint", "esbenp.prettier-vscode"]
3
+ }
@@ -1,43 +1,43 @@
1
- // A launch configuration that compiles the extension and then opens it inside a new window
2
- // Use IntelliSense to learn about possible attributes.
3
- // Hover to view descriptions of existing attributes.
4
- // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
5
- {
6
- "version": "0.2.0",
7
- "configurations": [
8
- {
9
- "name": "Launch Extension",
10
- "type": "extensionHost",
11
- "request": "launch",
12
- "runtimeExecutable": "${execPath}",
13
- "args": ["--extensionDevelopmentPath=${workspaceFolder}"],
14
- "outFiles": ["${workspaceFolder}/dist/**/*.js"],
15
- "smartStep": true,
16
- "preLaunchTask": "npm: build"
17
- },
18
- {
19
- "name": "Run Web Extension in VS Code",
20
- "type": "pwa-extensionHost",
21
- "debugWebWorkerHost": true,
22
- "request": "launch",
23
- "args": [
24
- "--extensionDevelopmentPath=${workspaceFolder}",
25
- "--extensionDevelopmentKind=web"
26
- ],
27
- "outFiles": ["${workspaceFolder}/dist/web/**/*.js"],
28
- "preLaunchTask": "npm: watch-web"
29
- },
30
- {
31
- "name": "Launch Tests",
32
- "type": "extensionHost",
33
- "request": "launch",
34
- "runtimeExecutable": "${execPath}",
35
- "args": [
36
- "--extensionDevelopmentPath=${workspaceFolder}",
37
- "--extensionTestsPath=${workspaceFolder}/out/test/spec/index"
38
- ],
39
- "outFiles": ["${workspaceFolder}/out/test/**/*.js"],
40
- "preLaunchTask": "npm: pretest"
41
- }
42
- ]
43
- }
1
+ // A launch configuration that compiles the extension and then opens it inside a new window
2
+ // Use IntelliSense to learn about possible attributes.
3
+ // Hover to view descriptions of existing attributes.
4
+ // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
5
+ {
6
+ "version": "0.2.0",
7
+ "configurations": [
8
+ {
9
+ "name": "Launch Extension",
10
+ "type": "extensionHost",
11
+ "request": "launch",
12
+ "runtimeExecutable": "${execPath}",
13
+ "args": ["--extensionDevelopmentPath=${workspaceFolder}"],
14
+ "outFiles": ["${workspaceFolder}/dist/**/*.js"],
15
+ "smartStep": true,
16
+ "preLaunchTask": "npm: build"
17
+ },
18
+ {
19
+ "name": "Run Web Extension in VS Code",
20
+ "type": "pwa-extensionHost",
21
+ "debugWebWorkerHost": true,
22
+ "request": "launch",
23
+ "args": [
24
+ "--extensionDevelopmentPath=${workspaceFolder}",
25
+ "--extensionDevelopmentKind=web"
26
+ ],
27
+ "outFiles": ["${workspaceFolder}/dist/web/**/*.js"],
28
+ "preLaunchTask": "npm: watch-web"
29
+ },
30
+ {
31
+ "name": "Launch Tests",
32
+ "type": "extensionHost",
33
+ "request": "launch",
34
+ "runtimeExecutable": "${execPath}",
35
+ "args": [
36
+ "--extensionDevelopmentPath=${workspaceFolder}",
37
+ "--extensionTestsPath=${workspaceFolder}/out/test/spec/index"
38
+ ],
39
+ "outFiles": ["${workspaceFolder}/out/test/**/*.js"],
40
+ "preLaunchTask": "npm: pretest"
41
+ }
42
+ ]
43
+ }
@@ -1,14 +1,14 @@
1
- {
2
- "files.exclude": {
3
- "out": false
4
- },
5
- "search.exclude": {
6
- "out": true
7
- },
8
- "editor.defaultFormatter": "esbenp.prettier-vscode",
9
- "editor.codeActionsOnSave": {
10
- "source.fixAll.eslint": true
11
- },
12
- "eslint.validate": ["typescript"],
13
- "editor.formatOnSave": true
14
- }
1
+ {
2
+ "files.exclude": {
3
+ "out": false
4
+ },
5
+ "search.exclude": {
6
+ "out": true
7
+ },
8
+ "editor.defaultFormatter": "esbenp.prettier-vscode",
9
+ "editor.codeActionsOnSave": {
10
+ "source.fixAll.eslint": true
11
+ },
12
+ "eslint.validate": ["typescript"],
13
+ "editor.formatOnSave": true
14
+ }