pascal-vscode 0.0.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 (47) hide show
  1. package/.changeset/README.md +8 -0
  2. package/.changeset/better-showers-knock.md +5 -0
  3. package/.changeset/config.json +12 -0
  4. package/.changeset/pre.json +10 -0
  5. package/.editorconfig +15 -0
  6. package/.github/FUNDING.yml +6 -0
  7. package/.github/ISSUE_TEMPLATE/bug_report.yml +47 -0
  8. package/.github/PULL_REQUEST_TEMPLATE.md +5 -0
  9. package/.github/actions/setup-git-commiter/action.yml +49 -0
  10. package/.github/actions/setup-pnpm/action.yml +42 -0
  11. package/.github/issue_labeler.yml +2 -0
  12. package/.github/labeler.yml +9 -0
  13. package/.github/renovate.json5 +48 -0
  14. package/.github/workflows/check_merge.yml +109 -0
  15. package/.github/workflows/cleanup_cache.yml +46 -0
  16. package/.github/workflows/diff_dependencies.yml +26 -0
  17. package/.github/workflows/format.yml +45 -0
  18. package/.github/workflows/label_issue.yml +18 -0
  19. package/.github/workflows/label_pr.yml +16 -0
  20. package/.github/workflows/lint_pr_title.yml +49 -0
  21. package/.github/workflows/release.yml +67 -0
  22. package/.prettierignore +25 -0
  23. package/.vscode/extensions.json +10 -0
  24. package/.vscode/launch.json +25 -0
  25. package/.vscode/settings.json +13 -0
  26. package/.vscode/tasks.json +17 -0
  27. package/.vscodeignore +32 -0
  28. package/CHANGELOG.md +7 -0
  29. package/CODE_OF_CONDUCT.md +65 -0
  30. package/CONTRIBUTING.md +86 -0
  31. package/LICENSE +21 -0
  32. package/README.md +51 -0
  33. package/assets/icon.png +0 -0
  34. package/assets/icon.svg +1 -0
  35. package/assets/preview.png +0 -0
  36. package/biome.jsonc +113 -0
  37. package/dist/browser.js +1 -0
  38. package/dist/extension.js +1 -0
  39. package/eslint.config.js +91 -0
  40. package/package.json +78 -0
  41. package/pnpm-workspace.yaml +4 -0
  42. package/prettier.config.mjs +17 -0
  43. package/scripts/build.js +107 -0
  44. package/src/browser.ts +14 -0
  45. package/src/extension.ts +4 -0
  46. package/themes/default.json +358 -0
  47. package/tsconfig.json +24 -0
@@ -0,0 +1,25 @@
1
+ # Deep Directories
2
+ **/dist
3
+ **/node_modules
4
+ **/.vscode-test
5
+
6
+ # Directories
7
+ .github
8
+ .changeset
9
+
10
+ # Files
11
+ vitest.config.ts.timestamp*
12
+ pnpm-lock.yaml
13
+
14
+ # Formatted by Biome
15
+ **/*.json
16
+ **/*.jsonc
17
+ **/*.js
18
+ **/*.ts
19
+ **/*.tsx
20
+ **/*.jsx
21
+ **/*.mjs
22
+ **/*.cjs
23
+ **/*.css
24
+
25
+ CHANGELOG.md
@@ -0,0 +1,10 @@
1
+ {
2
+ // See http://go.microsoft.com/fwlink/?LinkId=827846
3
+ // for the documentation about the extensions.json format
4
+ "recommendations": [
5
+ "biomejs.biome",
6
+ "editorconfig.editorconfig",
7
+ "esbenp.prettier-vscode",
8
+ "dbaeumer.vscode-eslint"
9
+ ]
10
+ }
@@ -0,0 +1,25 @@
1
+ // A launch configuration that launches the extension 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 Theme",
10
+ "type": "extensionHost",
11
+ "request": "launch",
12
+ "runtimeExecutable": "${execPath}",
13
+ "preLaunchTask": "${defaultBuildTask}",
14
+ "args": ["--extensionDevelopmentPath=${workspaceFolder}", "--disable-extensions", "${file}"]
15
+ },
16
+ {
17
+ "name": "Launch Theme (with extensions)",
18
+ "type": "extensionHost",
19
+ "request": "launch",
20
+ "runtimeExecutable": "${execPath}",
21
+ "preLaunchTask": "${defaultBuildTask}",
22
+ "args": ["--extensionDevelopmentPath=${workspaceFolder}", "${file}"]
23
+ }
24
+ ]
25
+ }
@@ -0,0 +1,13 @@
1
+ // Place your settings in this file to overwrite default and user settings.
2
+ {
3
+ "files.exclude": {
4
+ "out": false, // set this to true to hide the "out" folder with the compiled JS files
5
+ "dist": false // set this to true to hide the "dist" folder with the compiled JS files
6
+ },
7
+ "search.exclude": {
8
+ "out": true, // set this to false to include "out" folder in search results
9
+ "dist": true // set this to false to include "dist" folder in search results
10
+ },
11
+ // Turn off tsc task auto detection since we have the necessary tasks as npm scripts
12
+ "typescript.tsc.autoDetect": "off"
13
+ }
@@ -0,0 +1,17 @@
1
+ {
2
+ "version": "2.0.0",
3
+ "tasks": [
4
+ {
5
+ "type": "shell",
6
+ "command": "pnpm",
7
+ "args": ["run", "build"],
8
+ "group": {
9
+ "kind": "build",
10
+ "isDefault": true
11
+ },
12
+ "problemMatcher": [],
13
+ "label": "pnpm: build",
14
+ "detail": "pnpm run prebuild && tsdown"
15
+ }
16
+ ]
17
+ }
package/.vscodeignore ADDED
@@ -0,0 +1,32 @@
1
+ # IDE and test files
2
+ .vscode/**
3
+ .vscode-test/**
4
+
5
+ # Source files
6
+ src/**
7
+ scripts/**
8
+
9
+ # Configuration files
10
+ .gitignore
11
+ .yarnrc
12
+ **/tsconfig.json
13
+ **/eslint.config.js
14
+ **/biome.jsonc
15
+ **/prettier.config.mjs
16
+ .eslintcache
17
+ .prettierignore
18
+
19
+ # Build artifacts
20
+ **/*.map
21
+
22
+ # Documentation
23
+ vsc-extension-quickstart.md
24
+
25
+ # Version control and CI
26
+ .github/**
27
+ .changeset/**
28
+
29
+ # Dependencies
30
+ node_modules/**
31
+ pnpm-lock.yaml
32
+
package/CHANGELOG.md ADDED
@@ -0,0 +1,7 @@
1
+ # pascal
2
+
3
+ ## 0.0.1
4
+
5
+ ### Patch Changes
6
+
7
+ - [`b8ff049`](https://github.com/hadez8877/pascal/commit/b8ff04919ecc00cd1e960ac782a2121888708b81) Thanks [@hadez8877](https://github.com/hadez8877)! - 🎉 Launch initial release
@@ -0,0 +1,65 @@
1
+ # Contributor Covenant Code of Conduct
2
+
3
+ ## Our Pledge
4
+
5
+ We as members, contributors, and maintainers of OpenCLI pledge to make participation in our community a harassment-free experience for everyone, regardless of age, body size, visible or invisible disability, ethnicity, sex characteristics, gender identity and expression, level of experience, education, socio-economic status, nationality, personal appearance, race, caste, color, religion, or sexual identity and orientation.
6
+
7
+ We pledge to act and interact in ways that contribute to an open, welcoming, diverse, inclusive, and healthy community.
8
+
9
+ ## Our Standards
10
+
11
+ Examples of behavior that contributes to a positive environment:
12
+
13
+ - Using welcoming and inclusive language.
14
+ - Being respectful of differing viewpoints and experiences.
15
+ - Giving and gracefully accepting constructive feedback.
16
+ - Focusing on what is best for the community.
17
+ - Showing empathy towards other community members.
18
+
19
+ Examples of unacceptable behavior:
20
+
21
+ - The use of sexualized language or imagery, and sexual attention or advances of any kind.
22
+ - Trolling, insulting or derogatory comments, and personal or political attacks.
23
+ - Public or private harassment.
24
+ - Publishing others' private information, such as a physical or email address, without their explicit permission.
25
+ - Other conduct which could reasonably be considered inappropriate in a professional setting.
26
+
27
+ ## Enforcement Responsibilities
28
+
29
+ Maintainers are responsible for clarifying and enforcing our standards of acceptable behavior and will take appropriate and fair corrective action in response to any behavior that they deem inappropriate, threatening, offensive, or harmful.
30
+
31
+ Maintainers have the right and responsibility to remove, edit, or reject comments, commits, code, wiki edits, issues, and other contributions that are not aligned to this Code of Conduct, and will communicate reasons for moderation decisions when appropriate.
32
+
33
+ ## Scope
34
+
35
+ This Code of Conduct applies within all community spaces, including the GitHub repository, issues, pull requests, discussions, and the Discord server. It also applies when an individual is officially representing the project in public spaces.
36
+
37
+ ## Enforcement
38
+
39
+ Instances of abusive, harassing, or otherwise unacceptable behavior may be reported — please [open a security advisory](https://github.com/hadez8877/pascal/security/advisories/new) or contact the maintainers directly through the Discord server. All complaints will be reviewed and investigated promptly and fairly. Maintainers are obligated to respect the privacy and security of the reporter.
40
+
41
+ ## Enforcement Guidelines
42
+
43
+ Maintainers will follow these guidelines when determining consequences for any action in violation of this Code of Conduct:
44
+
45
+ **1. Correction**
46
+ A private, written warning from maintainers, providing clarity around the nature of the violation and an explanation of why the behavior was inappropriate. A public apology may be requested.
47
+
48
+ **2. Warning**
49
+ A warning with consequences for continued behavior. No interaction with the people involved, including unsolicited interaction with those enforcing the Code of Conduct, for a specified period of time.
50
+
51
+ **3. Temporary Ban**
52
+ A temporary ban from any sort of interaction or public communication with the community for a specified period of time.
53
+
54
+ **4. Permanent Ban**
55
+ A permanent ban from any sort of public interaction within the community.
56
+
57
+ ## Attribution
58
+
59
+ This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4,
60
+ available at https://www.contributor-covenant.org/version/1/4/code-of-conduct.html
61
+
62
+ [homepage]: https://www.contributor-covenant.org
63
+
64
+ For answers to common questions about this code of conduct, see
65
+ https://www.contributor-covenant.org/faq
@@ -0,0 +1,86 @@
1
+ # Contributor Manual
2
+
3
+ Thank you for considering contributing to Pascal! Here's how you can help.
4
+
5
+ ## Development Setup
6
+
7
+ ```shell
8
+ # Clone the repository
9
+ git clone https://github.com/your-username/pascal.git
10
+ cd pascal
11
+
12
+ # Install dependencies and build
13
+ pnpm install
14
+ pnpm run build
15
+ ```
16
+
17
+ Press `F5` to launch an Extension Development Host window with the theme loaded.
18
+
19
+ ## Making Changes
20
+
21
+ ### Theme Colors
22
+
23
+ See the [VS Code Theme Documentation](https://code.visualstudio.com/api/extension-capabilities/theming) for available keys.
24
+
25
+ ## Code Quality
26
+
27
+ All checks must pass before a pull request is merged:
28
+
29
+ ```shell
30
+ pnpm run typecheck
31
+ pnpm run lint
32
+ pnpm run format
33
+ ```
34
+
35
+ We use:
36
+
37
+ - **[Biome](https://biomejs.dev)** for linting and formatting (primary)
38
+ - **[Prettier](https://prettier.io)** for additional formatting (fallback)
39
+ - **[ESLint](https://eslint.org)** with typescript-eslint for deeper analysis
40
+ - **[TypeScript](https://www.typescriptlang.org)** with strict mode
41
+
42
+ ### Linting
43
+
44
+ ```shell
45
+ pnpm run lint
46
+ ```
47
+
48
+ ### Formatting
49
+
50
+ ```shell
51
+ pnpm run format
52
+ ```
53
+
54
+ ## Versioning
55
+
56
+ This project uses [Changesets](https://github.com/changesets/changesets) for version management.
57
+
58
+ When your changes affect the published package, run:
59
+
60
+ ```shell
61
+ pnpm changeset --empty
62
+ ```
63
+
64
+ Add the generated file to your commit.
65
+
66
+ ## Pull Request Process
67
+
68
+ 1. Create a feature branch from `main`
69
+ 2. Make your changes
70
+ 3. Run all checks (`typecheck`, `lint`, `format`)
71
+ 4. Add a changeset if needed
72
+ 5. Open a pull request with a clear title and description
73
+ 6. If your change affects the UI, include screenshots showing before and after
74
+
75
+ ## Reporting Issues
76
+
77
+ Open an issue at [github.com/hadez8877/pascal/issues](https://github.com/hadez8877/pascal/issues) with:
78
+
79
+ - A clear description of the problem
80
+ - Steps to reproduce
81
+ - Screenshots if applicable
82
+ - Your environment (Extension version, OS)
83
+
84
+ ## Code of Conduct
85
+
86
+ This project follows the [Contributor Covenant](CODE_OF_CONDUCT.md). By participating, you agree to uphold it.
package/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2026 Fabricio Pasapera Viera (@Hadez)
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
package/README.md ADDED
@@ -0,0 +1,51 @@
1
+ <div align="center">
2
+ <img alt="Pascal logo" src="assets/icon.png" height="200px" />
3
+ <h1>Pascal</h1>
4
+ <p>
5
+ A modern dark theme for your favorite editors, shells and more
6
+ <br/>
7
+ by <a href="https://github.com/hadez8877">@Hadez</a>
8
+ </p>
9
+
10
+ <p align="center">
11
+ <img alt="Version" src="https://img.shields.io/open-vsx/v/hadez8877/pascal?style=for-the-badge">
12
+ <img alt="Downloads" src="https://img.shields.io/open-vsx/dt/hadez8877/pascal?style=for-the-badge">
13
+ <img alt="Rating" src="https://img.shields.io/open-vsx/stars/hadez8877/pascal?style=for-the-badge">
14
+ </p>
15
+ </div>
16
+
17
+ ## What is Pascal?
18
+
19
+ Pascal is a dark theme for editors, shells, and more. The palette is tuned for long coding sessions: enough contrast to read code clearly, not so intense that your eyes notice it after an hour.
20
+
21
+ ### Preview
22
+
23
+ ![Preview](assets/preview.png)
24
+
25
+ ## Installation
26
+
27
+ #### Install using Command Palette
28
+
29
+ 1. Go to `View -> Command Palette` or press `Ctrl+Shift+P`
30
+ 2. Then enter `Install Extension`
31
+ 3. Write `Pascal`
32
+ 4. Select it or press Enter to install
33
+
34
+ #### Install using Git
35
+
36
+ If you are a git user, you can install the theme and keep up to date by cloning the repo:
37
+
38
+ ```shell
39
+ git clone https://github.com/hadez8877/pascal.git ~/.<your-editor>/extensions/pascal
40
+ cd ~/.<your-editor>/extensions/pascal
41
+
42
+ # Install dependencies
43
+ pnpm install
44
+
45
+ # Build the theme
46
+ pnpm run build
47
+ ```
48
+
49
+ #### Activating theme
50
+
51
+ Run your editor. The Pascal theme will be available from `File -> Preferences -> Color Theme` dropdown menu.
Binary file
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" width="256" height="256" viewBox="-0 -0 256 256"><defs><linearGradient id="g" x2="0" y2="1"><stop stop-color="#111"/><stop offset="1" stop-color="#444"/></linearGradient></defs><path fill="#f7f7f7" stroke="url(#g)" stroke-linecap="round" stroke-linejoin="round" stroke-width="28" d="M141.56 31.47c.743-.01 1.49-.018 2.25-.027 2.45-.022 4.9-.015 7.35-.006q2.56-.008 5.12-.02 5.36-.014 10.72.01c4.58.017 9.15-.007 13.73-.042 3.52-.022 7.05-.02 10.57-.012q2.53 0 5.06-.02a416 416 0 0 1 7.8.02l2.1-.036c3.85.076 5.36.59 8.36 3.08 3.27 4.05 3.44 6.37 3.09 11.59-1.93 3.85-4.28 6.42-7.5 9.25l-2.69 2.36c-3.65 3.1-7.37 6.12-11.09 9.14-2.64 2.19-5.19 4.44-7.72 6.75-4.36 3.97-8.86 7.71-13.44 11.41-3.24 2.64-6.41 5.35-9.56 8.09.67 3.31 1.91 5.94 3.52 8.9.52.96 1.04 1.92 1.58 2.91l1.71 3.12 1.77 3.25c4.67 8.53 9.47 16.98 14.32 25.41 5.17 8.99 10.2 18.07 15.26 27.12q2.86 5.11 5.72 10.21l1.92 3.43 3.65 6.49a739 739 0 0 1 3.19 5.75 135 135 0 0 0 3.29 5.55c1.55 4.24 1.55 7.59.043 11.86-2.29 3.23-5.02 5.83-7.94 8.5l-2.25 2.16c-4.62 4.41-6.76 6.45-13.28 6.52l-3.52.048-3.88.036-4.08.05c-12.43.144-24.87.22-37.3.278-9.18.045-18.36.122-27.55.242-6.46.082-12.93.12-19.39.14-3.86.01-7.71.04-11.56.106-27.82.478-27.82.478-35.44-5.92A109 109 0 0 1 50 214a137 137 0 0 0-4.66-3.71 1893 1893 0 0 1-3.96-3.22l-2.06-1.67c-8.67-7.05-8.67-7.05-9.25-11.71-.295-3.62-.053-4.71 1.62-8.12 2.65-2.94 4.55-4.34 8.5-4.84l2.4-.04 2.73-.061 2.92-.035 3.01-.059c3.17-.06 6.34-.106 9.51-.152l6.45-.117q7.9-.143 15.8-.258l-1.42-1.39a3550 3550 0 0 1-14.65-14.41q-2.73-2.69-5.47-5.37c-2.63-2.57-5.25-5.16-7.86-7.75l-2.47-2.39c-8.29-8.29-9.52-14.35-9.58-25.97l.008-4.39-.015-4.56q-.013-4.76.003-9.53c.011-4.06-.009-8.12-.038-12.18-.018-3.14-.018-6.27-.012-9.41q0-2.24-.019-4.49c-.015-2.09-.004-4.19.013-6.28v-3.6C42.11 64.31 43.52 62.13 46 59c3.37-2.15 6.66-2.45 10.62-1.89 5.57 2.09 9.6 7.28 13.66 11.49q1.59 1.61 3.19 3.22c2.79 2.82 5.56 5.66 8.32 8.5 2.83 2.9 5.68 5.78 8.53 8.67A3680 3680 0 0 1 107 106c3.09-7.32 5.56-14.72 7.82-22.32l1.04-3.47q1.63-5.45 3.26-10.89 1.1-3.67 2.21-7.35 2.02-6.73 4.04-13.47l.88-2.9a84 84 0 0 0 1.24-4.75c1.77-7.74 6.71-9.45 14.07-9.38" paint-order="stroke fill"/></svg>
Binary file
package/biome.jsonc ADDED
@@ -0,0 +1,113 @@
1
+ {
2
+ "$schema": "https://biomejs.dev/schemas/2.4.15/schema.json",
3
+ "files": {
4
+ "includes": ["**", "!!**/dist"]
5
+ },
6
+ "vcs": {
7
+ "enabled": true,
8
+ "clientKind": "git",
9
+ "useIgnoreFile": true
10
+ },
11
+ "formatter": {
12
+ "indentStyle": "tab",
13
+ "indentWidth": 2,
14
+ "lineWidth": 100,
15
+ "includes": ["**", "!**/.changeset", "!**/pnpm-lock.yaml"],
16
+ "expand": "auto"
17
+ },
18
+ "assist": {
19
+ "actions": {
20
+ "source": {
21
+ "organizeImports": "on"
22
+ }
23
+ }
24
+ },
25
+ "linter": {
26
+ "enabled": true,
27
+
28
+ "domains": {
29
+ "test": "recommended"
30
+ },
31
+ "rules": {
32
+ "recommended": false,
33
+ "style": {
34
+ "useNodejsImportProtocol": "error",
35
+ // Enforce separate type imports for type-only imports to avoid bundling unneeded code
36
+ "useImportType": "error",
37
+ "useExportType": "error",
38
+ "useNumberNamespace": "warn",
39
+ "noInferrableTypes": "error"
40
+ },
41
+ "suspicious": {
42
+ // This one is specific to catch `console.log`. The rest of logs are permitted
43
+ "noConsole": {
44
+ "level": "warn",
45
+ "options": {
46
+ "allow": ["error", "warn", "info", "debug"]
47
+ }
48
+ },
49
+ "noVar": "error",
50
+ "noDoubleEquals": "error",
51
+ "noDebugger": "error",
52
+ "noDuplicateCase": "error",
53
+ "noExplicitAny": "off",
54
+ // To enable later
55
+ "noImplicitAnyLet": "off",
56
+ "noSparseArray": "error"
57
+ },
58
+ "correctness": {
59
+ "noUnusedVariables": {
60
+ "level": "error",
61
+ "options": {
62
+ "ignoreRestSiblings": true
63
+ }
64
+ },
65
+ "noUnusedFunctionParameters": "error",
66
+ "noUnusedImports": "error",
67
+ "noUnreachable": "error",
68
+ "noConstantCondition": "warn",
69
+ "noConstructorReturn": "error",
70
+ "noEmptyPattern": "error"
71
+ },
72
+ "complexity": {
73
+ // There are many violations which require manual check
74
+ "noForEach": "off",
75
+ "noUselessFragments": "warn",
76
+ "useFlatMap": "warn",
77
+ // To enable later, as there are many warnings
78
+ "useOptionalChain": "off"
79
+ },
80
+ "performance": {
81
+ "noAccumulatingSpread": "warn"
82
+ }
83
+ }
84
+ },
85
+ "javascript": {
86
+ "formatter": {
87
+ "trailingCommas": "none",
88
+ "quoteStyle": "single",
89
+ "semicolons": "always"
90
+ }
91
+ },
92
+ "json": {
93
+ "parser": {
94
+ "allowComments": true,
95
+ "allowTrailingCommas": false
96
+ },
97
+ "formatter": {
98
+ "indentStyle": "space",
99
+ "trailingCommas": "none"
100
+ }
101
+ },
102
+ "overrides": [
103
+ {
104
+ // Workaround to format files like npm does
105
+ "includes": ["**/package.json"],
106
+ "json": {
107
+ "formatter": {
108
+ "expand": "always"
109
+ }
110
+ }
111
+ }
112
+ ]
113
+ }
@@ -0,0 +1 @@
1
+ import{window as t,workspace as e}from"vscode";const i=o=>{o.subscriptions.push(e.onDidChangeConfiguration(n=>{n.affectsConfiguration("pascal")&&t.showErrorMessage("VSCode Web doesn't support advanced Pascal options at the moment.")}))};export{i as activate};
@@ -0,0 +1 @@
1
+ const t=async()=>{};export{t as activate};
@@ -0,0 +1,91 @@
1
+ import path from 'node:path';
2
+ import { fileURLToPath } from 'node:url';
3
+ import { globalIgnores } from 'eslint/config';
4
+ // plugins
5
+ import regexpEslint from 'eslint-plugin-regexp';
6
+ import tseslint from 'typescript-eslint';
7
+
8
+ const typescriptEslint = tseslint.plugin;
9
+
10
+ // parsers
11
+ const typescriptParser = tseslint.parser;
12
+
13
+ const __filename = fileURLToPath(import.meta.url);
14
+ const __dirname = path.dirname(__filename);
15
+
16
+ /** @type {import('eslint').Config[]} */
17
+ const config = [
18
+ // If ignores is used without any other keys in the configuration object, then the patterns act as global ignores.
19
+ // ref: https://eslint.org/docs/latest/use/configure/configuration-files#globally-ignoring-files-with-ignores
20
+ globalIgnores(['**/.*', '**/*.d.ts', 'dist/', 'scripts/', '.github/', '.changeset/']),
21
+
22
+ ...tseslint.configs.recommendedTypeChecked,
23
+ ...tseslint.configs.stylisticTypeChecked,
24
+ regexpEslint.configs['flat/recommended'],
25
+ {
26
+ languageOptions: {
27
+ parser: typescriptParser,
28
+ parserOptions: {
29
+ // See https://typescript-eslint.io/blog/project-service/
30
+ projectService: true,
31
+ tsconfigRootDir: __dirname
32
+ }
33
+ },
34
+ plugins: {
35
+ '@typescript-eslint': typescriptEslint,
36
+ regexp: regexpEslint
37
+ },
38
+ rules: {
39
+ // Type-aware rules that Biome cannot replace
40
+ '@typescript-eslint/switch-exhaustiveness-check': 'error',
41
+ '@typescript-eslint/no-shadow': 'error',
42
+
43
+ // Disable "no-floating-promises" rule for all source files until we have the bandwidth to address all the errors.
44
+ '@typescript-eslint/no-floating-promises': 'off',
45
+
46
+ // Disabled - now handled by Biome
47
+ 'no-console': 'off', // Biome: suspicious.noConsole
48
+ '@typescript-eslint/no-unused-vars': 'off', // Biome: correctness.noUnusedVariables
49
+ 'prefer-const': 'off', // Biome: style.useConst
50
+ '@typescript-eslint/consistent-type-imports': 'off', // Biome: style.useImportType
51
+ '@typescript-eslint/await-thenable': 'off',
52
+ '@typescript-eslint/array-type': 'off',
53
+ '@typescript-eslint/ban-ts-comment': 'off',
54
+ '@typescript-eslint/class-literal-property-style': 'off',
55
+ '@typescript-eslint/consistent-indexed-object-style': 'off',
56
+ '@typescript-eslint/consistent-type-definitions': 'off',
57
+ '@typescript-eslint/dot-notation': 'off',
58
+ '@typescript-eslint/no-inferrable-types': 'off',
59
+ '@typescript-eslint/no-base-to-string': 'off',
60
+ '@typescript-eslint/no-empty-function': 'off',
61
+ '@typescript-eslint/no-misused-promises': 'off',
62
+ '@typescript-eslint/no-redundant-type-constituents': 'off',
63
+ '@typescript-eslint/no-this-alias': 'off',
64
+ '@typescript-eslint/no-unsafe-argument': 'off',
65
+ '@typescript-eslint/no-unsafe-assignment': 'off',
66
+ '@typescript-eslint/no-unsafe-call': 'off',
67
+ '@typescript-eslint/no-unsafe-member-access': 'off',
68
+ '@typescript-eslint/no-unused-expressions': 'off',
69
+ '@typescript-eslint/only-throw-error': 'off',
70
+ '@typescript-eslint/no-unsafe-return': 'off',
71
+ '@typescript-eslint/no-unnecessary-type-assertion': 'off',
72
+ '@typescript-eslint/prefer-nullish-coalescing': 'off',
73
+ '@typescript-eslint/prefer-optional-chain': 'off',
74
+ '@typescript-eslint/prefer-promise-reject-errors': 'off',
75
+ '@typescript-eslint/prefer-string-starts-ends-with': 'off',
76
+ '@typescript-eslint/require-await': 'off',
77
+ '@typescript-eslint/restrict-plus-operands': 'off',
78
+ '@typescript-eslint/restrict-template-expressions': 'off',
79
+ '@typescript-eslint/sort-type-constituents': 'off',
80
+ '@typescript-eslint/unbound-method': 'off',
81
+ '@typescript-eslint/no-explicit-any': 'off',
82
+
83
+ // Regex-specific rules (no Biome equivalent)
84
+ 'regexp/use-ignore-case': 'off',
85
+ 'regexp/prefer-regexp-exec': 'warn',
86
+ 'regexp/prefer-regexp-test': 'warn'
87
+ }
88
+ }
89
+ ];
90
+
91
+ export default config;
package/package.json ADDED
@@ -0,0 +1,78 @@
1
+ {
2
+ "name": "pascal-vscode",
3
+ "displayName": "Pascal",
4
+ "publisher": "hadez8877",
5
+ "description": "A modern dark theme for many editors, shells, and more!",
6
+ "version": "0.0.0",
7
+ "type": "module",
8
+ "main": "dist/extension.js",
9
+ "browser": "dist/browser.js",
10
+ "categories": [
11
+ "Themes"
12
+ ],
13
+ "icon": "assets/icon.png",
14
+ "activationEvents": [
15
+ "onStartupFinished"
16
+ ],
17
+ "contributes": {
18
+ "themes": [
19
+ {
20
+ "label": "Pascal (Default)",
21
+ "uiTheme": "vs-dark",
22
+ "path": "themes/default.json"
23
+ }
24
+ ]
25
+ },
26
+ "configuration": {
27
+ "title": "Pascal",
28
+ "properties": {
29
+ "pascal.editorTheme": {
30
+ "type": "string",
31
+ "default": "Pascal (Default)",
32
+ "markdownDescription": "Switch to different editor theme",
33
+ "enum": [
34
+ "Pascal (Default)"
35
+ ]
36
+ }
37
+ }
38
+ },
39
+ "repository": {
40
+ "type": "git",
41
+ "url": "https://github.com/hadez8877/pascal.git"
42
+ },
43
+ "bugs": {
44
+ "url": "https://github.com/hadez8877/pascal/issues"
45
+ },
46
+ "scripts": {
47
+ "build": "tsc -b && node scripts/build.js --minify",
48
+ "lint": "biome lint . && eslint --cache --concurrency=auto .",
49
+ "format": "pnpm run format:code && pnpm run format:imports",
50
+ "format:code": "biome format --write && prettier -w \"**/*\" --ignore-unknown --cache",
51
+ "format:imports": "biome check --formatter-enabled=false --write",
52
+ "version": "changeset version && pnpm install --no-frozen-lockfile && pnpm run format"
53
+ },
54
+ "devDependencies": {
55
+ "@biomejs/biome": "2.4.15",
56
+ "@changesets/changelog-github": "^0.5.2",
57
+ "@changesets/cli": "^2.29.8",
58
+ "@types/node": "^24.10.1",
59
+ "@types/vscode": "^1.88.0",
60
+ "@vscode/vsce": "^3.9.2",
61
+ "esbuild": "0.27.3",
62
+ "eslint": "^10.4.0",
63
+ "eslint-plugin-regexp": "^3.1.1",
64
+ "ovsx": "^0.10.10",
65
+ "piccolore": "0.1.3",
66
+ "prettier": "^3.8.4",
67
+ "tinyglobby": "0.2.16",
68
+ "tsdown": "^0.22.2",
69
+ "typescript": "~6.0.3",
70
+ "typescript-eslint": "^8.56.1"
71
+ },
72
+ "license": "MIT",
73
+ "engines": {
74
+ "node": ">=22.12.0",
75
+ "vscode": "^1.88.0"
76
+ },
77
+ "packageManager": "pnpm@11.9.0"
78
+ }
@@ -0,0 +1,4 @@
1
+ allowBuilds:
2
+ '@vscode/vsce-sign': true
3
+ esbuild: true
4
+ keytar: true