@evitcastudio/kit 1.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/CONTRIBUTING.md +0 -0
  2. package/LICENSE +21 -0
  3. package/README.md +40 -0
  4. package/bin/cli.ts +71 -0
  5. package/bin/index.ts +11 -0
  6. package/bin/resource-builder.ts +196 -0
  7. package/bin/types/shared-types.ts +10 -0
  8. package/bun-build.ts +56 -0
  9. package/bun.lockb +0 -0
  10. package/bunfig.toml +4 -0
  11. package/docs/.nojekyll +1 -0
  12. package/docs/assets/hierarchy.js +1 -0
  13. package/docs/assets/highlight.css +78 -0
  14. package/docs/assets/icons.js +18 -0
  15. package/docs/assets/icons.svg +1 -0
  16. package/docs/assets/main.js +60 -0
  17. package/docs/assets/navigation.js +1 -0
  18. package/docs/assets/search.js +1 -0
  19. package/docs/assets/style.css +1610 -0
  20. package/docs/classes/index.Kit.html +23 -0
  21. package/docs/index.html +15 -0
  22. package/docs/modules/index.html +1 -0
  23. package/docs/modules/types_shared-types.html +1 -0
  24. package/docs/modules.html +1 -0
  25. package/docs/types/types_shared-types.EmitterEvent.html +4 -0
  26. package/docs/types/types_shared-types.Listener.html +1 -0
  27. package/lib/bundle/cli/cli.js +2659 -0
  28. package/lib/event-system.d.ts +12 -0
  29. package/lib/event-system.d.ts.map +1 -0
  30. package/lib/event-system.js +25 -0
  31. package/lib/index.d.ts +2 -0
  32. package/lib/index.d.ts.map +1 -0
  33. package/lib/index.js +1 -0
  34. package/lib/kit.d.ts +54 -0
  35. package/lib/kit.d.ts.map +1 -0
  36. package/lib/kit.js +91 -0
  37. package/lib/types/shared-types.d.ts +18 -0
  38. package/lib/types/shared-types.d.ts.map +1 -0
  39. package/lib/types/shared-types.js +1 -0
  40. package/package.json +53 -0
  41. package/src/event-system.ts +29 -0
  42. package/src/index.ts +1 -0
  43. package/src/kit.ts +106 -0
  44. package/src/types/shared-types.ts +19 -0
  45. package/tests/kit-cli.test.ts +75 -0
  46. package/tests/kit.test.ts +33 -0
  47. package/tsconfig.json +37 -0
File without changes
package/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2024 Jared Bates, Evitca Studio, "doubleactii"
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,40 @@
1
+ # Kit
2
+
3
+ **Kit** is a lightweight, extensible 2D framework for game development in TypeScript. Designed to be simple and modular, Kit lets you build powerful projects through a plugin-driven architecture.
4
+
5
+ **Lightweight and modular**: Core functionality is minimal; plugins add power.
6
+ **Plugin support**: Easily extend Kit with official or third-party plugins.
7
+ **Event system**: Decouple functionality with a robust event-driven API.
8
+ **TypeScript-first**: Full TypeScript support for strong typing and modern workflows.
9
+
10
+ # Install
11
+ ```bash
12
+ npm i @evitcastudio/kit
13
+ ```
14
+
15
+ # Using Kit with plugins
16
+
17
+ ```ts
18
+ import { Plugin } from 'custom-plugin';
19
+
20
+ // Initialize an array of plugins.
21
+ Kit.init([Plugin]);
22
+
23
+ // or you can just register one plugin
24
+ Kit.registerPlugin(Plugin);
25
+ ```
26
+
27
+ # Listening for plugin events
28
+
29
+ ```js
30
+ const listener = (pEvent) => {
31
+ const { data, timestamp } = pEvent;
32
+ // Here you can use the data that the event sent down.
33
+ }
34
+
35
+ // Here you listen for an event from the plugin: `Plugin`, under the event name of `eventName`
36
+ Kit.on('Plugin', 'eventName', listener);
37
+
38
+ // You can also stop listening for an event
39
+ Kit.off('Plugin', 'eventName', listener);
40
+ ```
package/bin/cli.ts ADDED
@@ -0,0 +1,71 @@
1
+ #!/usr/bin/env node
2
+ import { Command } from 'commander';
3
+ import { KitCLI } from '.';
4
+ import type { ProcessOptions } from './types/shared-types';
5
+ import packageJSON from '../package.json';
6
+
7
+ const program = new Command();
8
+
9
+ program
10
+ .version(`${packageJSON.version}`)
11
+ .description(`Kit - ${packageJSON['cli-description']}`);
12
+
13
+ program
14
+ .option('-i, --in <path>', 'Input directory')
15
+ .option('-o, --out <path>', 'Output directory')
16
+ .option('-is, --ignore-sound', 'Ignore sound files', false)
17
+ .option('-v, --verbose', 'Enable verbose mode', false);
18
+
19
+ program.helpInformation = () => {
20
+ return `
21
+ Kit CLI - ${packageJSON['cli-description']}
22
+ Version: ${packageJSON.version}
23
+
24
+ Usage: kit <command> [options]
25
+
26
+ Commands:
27
+ build Build resources from the specified directory
28
+ --help Display this help message
29
+
30
+ Options:
31
+ -i, --in <path> Input directory (required)
32
+ -o, --out <path> Output directory (required)
33
+ -is, --ignore-sound Ignore sound files (optional)
34
+ -v, --verbose Enable verbose mode for debugging
35
+
36
+ Examples:
37
+ kit build --in ./src --out ./dist --verbose
38
+ kit build --in ./resources --out ./dist --ignore-sound
39
+ `;
40
+ };
41
+
42
+ // Display help if no command is provided
43
+ if (!process.argv.slice(2).length) {
44
+ program.help();
45
+ }
46
+
47
+ // Build Command
48
+ program
49
+ .command('build')
50
+ .description('Build resources from the specified directory')
51
+ .action(() => {
52
+ const flags = program.opts();
53
+
54
+ if (!flags.in || !flags.out) {
55
+ console.error('Error: --in and --out are required flags for the build command.');
56
+ process.exit(1);
57
+ }
58
+
59
+ const ProcessOptions: ProcessOptions = {
60
+ inDirectory: flags.in,
61
+ outDirectory: flags.out,
62
+ ignoreSound: flags.ignoreSound || false,
63
+ verbose: flags.verbose || false,
64
+ };
65
+
66
+ KitCLI.processResources(ProcessOptions);
67
+ });
68
+
69
+ program.parse(process.argv);
70
+
71
+
package/bin/index.ts ADDED
@@ -0,0 +1,11 @@
1
+ import { processResources } from './resource-builder';
2
+ import type { ProcessOptions } from './types/shared-types';
3
+
4
+ export class KitCLI {
5
+ /**
6
+ * Start resource builder.
7
+ */
8
+ static async processResources(pProcessOptions: ProcessOptions): Promise<void> {
9
+ await processResources(pProcessOptions);
10
+ }
11
+ }
@@ -0,0 +1,196 @@
1
+ import { promises as fs } from 'fs';
2
+ import { join, extname, basename } from 'path';
3
+ import chalk from 'chalk';
4
+ import { v4 as uuidv4 } from 'uuid';
5
+ import type { ProcessOptions } from './types/shared-types';
6
+
7
+ // Logging helpers
8
+ const log = console.log;
9
+ const info = chalk.hex('#ffa552');
10
+ const error = chalk.hex('#c42847');
11
+ const alert = chalk.hex('#EFF2C0');
12
+
13
+ // Resource types and valid file extensions
14
+ const RESOURCE_TYPES = ['interface', 'icon', 'map', 'sound', 'macros'] as const;
15
+ const VALID_EXTENSIONS = ['vyint', 'vyi', 'vym', 'vymac', 'mp3', 'aac', 'wav', 'm4a', 'ogg', 'flac'] as const;
16
+
17
+ type ResourceJSON = Record<typeof RESOURCE_TYPES[number], { resourceIdentifier: string; fileName: string }[]>;
18
+
19
+ // State variables
20
+ let resourceJSON: ResourceJSON = initializeResourceJSON();
21
+ let isVerbose: boolean | undefined = false;
22
+ let ignoringSound: boolean | undefined = false;
23
+ let resourceInDirectory = '';
24
+ let resourceOutDirectory = '';
25
+ const resourcesToProcess: { filePath: string; type: typeof RESOURCE_TYPES[number] }[] = [];
26
+
27
+ /**
28
+ * Initializes the resource JSON structure.
29
+ */
30
+ function initializeResourceJSON(): ResourceJSON {
31
+ return RESOURCE_TYPES.reduce((acc, type) => {
32
+ acc[type] = [];
33
+ return acc;
34
+ }, {} as ResourceJSON);
35
+ }
36
+
37
+ /**
38
+ * Processes a single file and updates the resource JSON.
39
+ */
40
+ function prepareFileForProcessing(filePath: string): void {
41
+ const extension = extname(filePath).slice(1);
42
+ const fileName = filePath.replace(/^.*[\\\/]/, '');
43
+ const resourceIdentifier = `${uuidv4()}.${extension}`;
44
+
45
+ const type = getResourceType(extension);
46
+ if (!type) return;
47
+
48
+ if (type === 'sound' && ignoringSound) {
49
+ logVerbose(`[Ignored File] ${filePath} (ignoreSound flag enabled)`);
50
+ return;
51
+ }
52
+
53
+ resourcesToProcess.push({ filePath, type });
54
+ resourceJSON[type].push({ resourceIdentifier, fileName });
55
+ }
56
+
57
+ /**
58
+ * Determines the resource type based on the file extension.
59
+ */
60
+ function getResourceType(pExtension: string): typeof RESOURCE_TYPES[number] | null {
61
+ switch (pExtension) {
62
+ case 'vyint': return 'interface';
63
+ case 'vyi': return 'icon';
64
+ case 'vym': return 'map';
65
+ case 'vymac': return 'macros';
66
+ case 'mp3':
67
+ case 'aac':
68
+ case 'wav':
69
+ case 'm4a':
70
+ case 'ogg':
71
+ case 'flac': return 'sound';
72
+ default: return null;
73
+ }
74
+ }
75
+
76
+ /**
77
+ * Processes a directory and its contents recursively.
78
+ */
79
+ async function processDirectory(pDirectoryPath: string): Promise<void> {
80
+ try {
81
+ const contents = await fs.readdir(pDirectoryPath);
82
+
83
+ for (const item of contents) {
84
+ const itemPath = join(pDirectoryPath, item);
85
+ const stats = await fs.stat(itemPath);
86
+
87
+ if (stats.isDirectory()) {
88
+ await processDirectory(itemPath);
89
+ } else if (isValidExtension(extname(itemPath).slice(1))) {
90
+ prepareFileForProcessing(itemPath);
91
+ }
92
+ }
93
+ } catch (pError) {
94
+ logError(`[Error] Processing directory: ${pError}`);
95
+ }
96
+ }
97
+
98
+ /**
99
+ * Checks if a file extension is valid.
100
+ */
101
+ function isValidExtension(pExtension: string): boolean {
102
+ return VALID_EXTENSIONS.includes(pExtension as typeof VALID_EXTENSIONS[number]);
103
+ }
104
+
105
+ /**
106
+ * Executes all file copy operations in parallel after preparation.
107
+ */
108
+ async function processAllFiles(): Promise<void> {
109
+ try {
110
+ // Create copy operations for all files
111
+ const copyOperations = resourcesToProcess.map(({ filePath, type }) => {
112
+ const fileName = basename(filePath); // Use path.basename for cleaner code
113
+ const resource = resourceJSON[type].find(res => res.fileName === fileName);
114
+
115
+ if (!resource) {
116
+ throw new Error(`Resource not found for file: ${fileName}`);
117
+ }
118
+
119
+ const destination = join(resourceOutDirectory, 'resources', type);
120
+ return copyFile(filePath, destination, resource.resourceIdentifier);
121
+ });
122
+
123
+ // Execute all copy operations concurrently
124
+ await Promise.all(copyOperations);
125
+
126
+ logVerbose(`[Kit CLI] All resources have been processed.`);
127
+ await saveResourceJSON();
128
+ } catch (pError: any) {
129
+ logError(`[Error] Processing files in batch: ${pError.message}`);
130
+ }
131
+ }
132
+
133
+
134
+ /**
135
+ * Copies a file to the specified directory.
136
+ */
137
+ async function copyFile(pSource: string, pDestinationDir: string, pNewName: string): Promise<void> {
138
+ try {
139
+ await fs.mkdir(pDestinationDir, { recursive: true });
140
+ await fs.copyFile(pSource, join(pDestinationDir, pNewName));
141
+ } catch (pError) {
142
+ logError(`[Error] Copying file ${pSource}: ${pError}`);
143
+ }
144
+ }
145
+
146
+ /**
147
+ * Saves the resource JSON to a file.
148
+ */
149
+ async function saveResourceJSON(): Promise<void> {
150
+ const filePath = join(resourceOutDirectory, 'resource.json');
151
+ try {
152
+ await fs.writeFile(filePath, JSON.stringify(resourceJSON, null, 2));
153
+ } catch (pError) {
154
+ logError(`[Error] Saving resource JSON: ${pError}`);
155
+ }
156
+ }
157
+
158
+ /**
159
+ * Main entry point for building resources.
160
+ */
161
+ export async function processResources({ inDirectory, outDirectory, verbose, ignoreSound }: ProcessOptions): Promise<void> {
162
+ // Initialize state
163
+ resourceInDirectory = inDirectory;
164
+ resourceOutDirectory = outDirectory;
165
+ isVerbose = verbose;
166
+ ignoringSound = ignoreSound;
167
+ resourceJSON = initializeResourceJSON();
168
+
169
+ // Validate inputs
170
+ if (!resourceInDirectory || !resourceOutDirectory) {
171
+ logError('[Error] Input and output directories must be specified');
172
+ return;
173
+ }
174
+
175
+ // Process resources
176
+ await processDirectory(resourceInDirectory);
177
+
178
+ if (resourcesToProcess.length > 0) {
179
+ await processAllFiles();
180
+ } else {
181
+ logAlert('No resources found!');
182
+ await saveResourceJSON();
183
+ }
184
+ }
185
+
186
+ function logVerbose(pMessage: string): void {
187
+ if (isVerbose) log(info(pMessage));
188
+ }
189
+
190
+ function logError(pMessage: string): void {
191
+ log(error(pMessage));
192
+ }
193
+
194
+ function logAlert(pMessage: string): void {
195
+ log(alert(pMessage));
196
+ }
@@ -0,0 +1,10 @@
1
+ declare global {
2
+ type ProcessOptions = {
3
+ inDirectory: string,
4
+ outDirectory: string,
5
+ verbose?: boolean,
6
+ ignoreSound?: boolean
7
+ }
8
+ }
9
+
10
+ export type { ProcessOptions };
package/bun-build.ts ADDED
@@ -0,0 +1,56 @@
1
+ import Bun from 'bun';
2
+ import chalk from 'chalk';
3
+ import packageJson from './package.json';
4
+
5
+ const banner = [
6
+ `/*!`,
7
+ ` * ${packageJson.name}@${packageJson.version} ${packageJson.repository.url}`,
8
+ ` * Compiled ${new Date().toUTCString().replace(/GMT/g, 'UTC')}`,
9
+ ` * Copyright (c) ${new Date().getFullYear()} Jared Bates, Evitca Studio, "doubleactii"`,
10
+ ` *`,
11
+ ` * ${packageJson.name} is licensed under the MIT License.`,
12
+ ` * http://www.opensource.org/licenses/mit-license`,
13
+ ` */`,
14
+ ].join('\n');
15
+
16
+
17
+ function logMessage(pLevel: string, pMessage: string): void {
18
+ const colors = { error: '#c42847', info: '#ffa552' };
19
+ const levelFormatted = pLevel.charAt(0).toUpperCase() + pLevel.slice(1);
20
+ const color = colors[pLevel] || '#ffa552';
21
+ console.log(chalk.hex(color)(`[${levelFormatted}]`), `${pMessage}`);
22
+ };
23
+
24
+ const oldNow = Date.now();
25
+
26
+ await Promise.all([
27
+ // Natural version
28
+ Bun.build({
29
+ entrypoints: ['./src/index.ts'],
30
+ outdir: './dist/bundle',
31
+ naming: 'kit.js',
32
+ banner: banner,
33
+ target: 'browser'
34
+ }),
35
+ // Minified version
36
+ Bun.build({
37
+ entrypoints: ['./src/index.ts'],
38
+ outdir: './dist/bundle/min',
39
+ naming: 'kit.min.js',
40
+ minify: true,
41
+ banner: banner,
42
+ target: 'browser'
43
+ }),
44
+ // CLI version
45
+ Bun.build({
46
+ entrypoints: ['./bin/cli.ts'],
47
+ outdir: './lib/bundle/cli',
48
+ naming: 'cli.js',
49
+ banner: banner,
50
+ target: 'node'
51
+ })
52
+ ]);
53
+
54
+ const elapsed = Date.now() - oldNow;
55
+
56
+ logMessage('info', `Client Build took: ${elapsed}ms`);
package/bun.lockb ADDED
Binary file
package/bunfig.toml ADDED
@@ -0,0 +1,4 @@
1
+ [test]
2
+
3
+ # always enable coverage
4
+ coverage = true
package/docs/.nojekyll ADDED
@@ -0,0 +1 @@
1
+ TypeDoc added this file to prevent GitHub Pages from using Jekyll. You can turn off this behavior by setting the `githubPages` option to false.
@@ -0,0 +1 @@
1
+ window.hierarchyData = "eJyrVirKzy8pVrKKjtVRKkpNy0lNLsnMzytWsqqurQUAmx4Kpg=="
@@ -0,0 +1,78 @@
1
+ :root {
2
+ --light-hl-0: #795E26;
3
+ --dark-hl-0: #DCDCAA;
4
+ --light-hl-1: #000000;
5
+ --dark-hl-1: #D4D4D4;
6
+ --light-hl-2: #A31515;
7
+ --dark-hl-2: #CE9178;
8
+ --light-hl-3: #AF00DB;
9
+ --dark-hl-3: #C586C0;
10
+ --light-hl-4: #001080;
11
+ --dark-hl-4: #9CDCFE;
12
+ --light-hl-5: #008000;
13
+ --dark-hl-5: #6A9955;
14
+ --light-hl-6: #0000FF;
15
+ --dark-hl-6: #569CD6;
16
+ --light-hl-7: #0070C1;
17
+ --dark-hl-7: #4FC1FF;
18
+ --light-code-background: #FFFFFF;
19
+ --dark-code-background: #1E1E1E;
20
+ }
21
+
22
+ @media (prefers-color-scheme: light) { :root {
23
+ --hl-0: var(--light-hl-0);
24
+ --hl-1: var(--light-hl-1);
25
+ --hl-2: var(--light-hl-2);
26
+ --hl-3: var(--light-hl-3);
27
+ --hl-4: var(--light-hl-4);
28
+ --hl-5: var(--light-hl-5);
29
+ --hl-6: var(--light-hl-6);
30
+ --hl-7: var(--light-hl-7);
31
+ --code-background: var(--light-code-background);
32
+ } }
33
+
34
+ @media (prefers-color-scheme: dark) { :root {
35
+ --hl-0: var(--dark-hl-0);
36
+ --hl-1: var(--dark-hl-1);
37
+ --hl-2: var(--dark-hl-2);
38
+ --hl-3: var(--dark-hl-3);
39
+ --hl-4: var(--dark-hl-4);
40
+ --hl-5: var(--dark-hl-5);
41
+ --hl-6: var(--dark-hl-6);
42
+ --hl-7: var(--dark-hl-7);
43
+ --code-background: var(--dark-code-background);
44
+ } }
45
+
46
+ :root[data-theme='light'] {
47
+ --hl-0: var(--light-hl-0);
48
+ --hl-1: var(--light-hl-1);
49
+ --hl-2: var(--light-hl-2);
50
+ --hl-3: var(--light-hl-3);
51
+ --hl-4: var(--light-hl-4);
52
+ --hl-5: var(--light-hl-5);
53
+ --hl-6: var(--light-hl-6);
54
+ --hl-7: var(--light-hl-7);
55
+ --code-background: var(--light-code-background);
56
+ }
57
+
58
+ :root[data-theme='dark'] {
59
+ --hl-0: var(--dark-hl-0);
60
+ --hl-1: var(--dark-hl-1);
61
+ --hl-2: var(--dark-hl-2);
62
+ --hl-3: var(--dark-hl-3);
63
+ --hl-4: var(--dark-hl-4);
64
+ --hl-5: var(--dark-hl-5);
65
+ --hl-6: var(--dark-hl-6);
66
+ --hl-7: var(--dark-hl-7);
67
+ --code-background: var(--dark-code-background);
68
+ }
69
+
70
+ .hl-0 { color: var(--hl-0); }
71
+ .hl-1 { color: var(--hl-1); }
72
+ .hl-2 { color: var(--hl-2); }
73
+ .hl-3 { color: var(--hl-3); }
74
+ .hl-4 { color: var(--hl-4); }
75
+ .hl-5 { color: var(--hl-5); }
76
+ .hl-6 { color: var(--hl-6); }
77
+ .hl-7 { color: var(--hl-7); }
78
+ pre, code { background: var(--code-background); }
@@ -0,0 +1,18 @@
1
+ (function() {
2
+ addIcons();
3
+ function addIcons() {
4
+ if (document.readyState === "loading") return document.addEventListener("DOMContentLoaded", addIcons);
5
+ const svg = document.body.appendChild(document.createElementNS("http://www.w3.org/2000/svg", "svg"));
6
+ svg.innerHTML = `<g id="icon-1" class="tsd-no-select"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-module)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="6"></rect><text fill="var(--color-icon-text)" x="50%" y="50%" dominant-baseline="central" text-anchor="middle">M</text></g><g id="icon-2" class="tsd-no-select"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-module)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="6"></rect><text fill="var(--color-icon-text)" x="50%" y="50%" dominant-baseline="central" text-anchor="middle">M</text></g><g id="icon-4" class="tsd-no-select"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-namespace)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="6"></rect><text fill="var(--color-icon-text)" x="50%" y="50%" dominant-baseline="central" text-anchor="middle">N</text></g><g id="icon-8" class="tsd-no-select"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-enum)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="6"></rect><text fill="var(--color-icon-text)" x="50%" y="50%" dominant-baseline="central" text-anchor="middle">E</text></g><g id="icon-16" class="tsd-no-select"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-property)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="12"></rect><text fill="var(--color-icon-text)" x="50%" y="50%" dominant-baseline="central" text-anchor="middle">P</text></g><g id="icon-32" class="tsd-no-select"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-variable)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="6"></rect><text fill="var(--color-icon-text)" x="50%" y="50%" dominant-baseline="central" text-anchor="middle">V</text></g><g id="icon-64" class="tsd-no-select"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-function)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="6"></rect><text fill="var(--color-icon-text)" x="50%" y="50%" dominant-baseline="central" text-anchor="middle">F</text></g><g id="icon-128" class="tsd-no-select"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-class)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="6"></rect><text fill="var(--color-icon-text)" x="50%" y="50%" dominant-baseline="central" text-anchor="middle">C</text></g><g id="icon-256" class="tsd-no-select"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-interface)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="6"></rect><text fill="var(--color-icon-text)" x="50%" y="50%" dominant-baseline="central" text-anchor="middle">I</text></g><g id="icon-512" class="tsd-no-select"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-constructor)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="12"></rect><text fill="var(--color-icon-text)" x="50%" y="50%" dominant-baseline="central" text-anchor="middle">C</text></g><g id="icon-1024" class="tsd-no-select"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-property)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="12"></rect><text fill="var(--color-icon-text)" x="50%" y="50%" dominant-baseline="central" text-anchor="middle">P</text></g><g id="icon-2048" class="tsd-no-select"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-method)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="12"></rect><text fill="var(--color-icon-text)" x="50%" y="50%" dominant-baseline="central" text-anchor="middle">M</text></g><g id="icon-4096" class="tsd-no-select"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-function)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="6"></rect><text fill="var(--color-icon-text)" x="50%" y="50%" dominant-baseline="central" text-anchor="middle">F</text></g><g id="icon-8192" class="tsd-no-select"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-property)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="12"></rect><text fill="var(--color-icon-text)" x="50%" y="50%" dominant-baseline="central" text-anchor="middle">P</text></g><g id="icon-16384" class="tsd-no-select"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-constructor)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="12"></rect><text fill="var(--color-icon-text)" x="50%" y="50%" dominant-baseline="central" text-anchor="middle">C</text></g><g id="icon-32768" class="tsd-no-select"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-property)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="12"></rect><text fill="var(--color-icon-text)" x="50%" y="50%" dominant-baseline="central" text-anchor="middle">P</text></g><g id="icon-65536" class="tsd-no-select"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-type-alias)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="6"></rect><text fill="var(--color-icon-text)" x="50%" y="50%" dominant-baseline="central" text-anchor="middle">T</text></g><g id="icon-131072" class="tsd-no-select"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-type-alias)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="6"></rect><text fill="var(--color-icon-text)" x="50%" y="50%" dominant-baseline="central" text-anchor="middle">T</text></g><g id="icon-262144" class="tsd-no-select"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-accessor)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="12"></rect><text fill="var(--color-icon-text)" x="50%" y="50%" dominant-baseline="central" text-anchor="middle">A</text></g><g id="icon-524288" class="tsd-no-select"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-accessor)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="12"></rect><text fill="var(--color-icon-text)" x="50%" y="50%" dominant-baseline="central" text-anchor="middle">A</text></g><g id="icon-1048576" class="tsd-no-select"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-accessor)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="12"></rect><text fill="var(--color-icon-text)" x="50%" y="50%" dominant-baseline="central" text-anchor="middle">A</text></g><g id="icon-2097152" class="tsd-no-select"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-type-alias)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="6"></rect><text fill="var(--color-icon-text)" x="50%" y="50%" dominant-baseline="central" text-anchor="middle">T</text></g><g id="icon-4194304" class="tsd-no-select"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-reference)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="12"></rect><text fill="var(--color-icon-text)" x="50%" y="50%" dominant-baseline="central" text-anchor="middle">R</text></g><g id="icon-8388608" class="tsd-no-select"><rect fill="var(--color-icon-background)" stroke="var(--color-document)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="6"></rect><g stroke="var(--color-icon-text)" fill="none" stroke-width="1.5"><polygon points="6,5 6,19 18,19, 18,10 13,5"></polygon><line x1="9" y1="9" x2="13" y2="9"></line><line x1="9" y1="12" x2="15" y2="12"></line><line x1="9" y1="15" x2="15" y2="15"></line></g></g><g id="icon-folder" class="tsd-no-select"><rect fill="var(--color-icon-background)" stroke="var(--color-document)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="6"></rect><g stroke="var(--color-icon-text)" fill="none" stroke-width="1.5"><polygon points="5,5 10,5 12,8 19,8 19,18 5,18"></polygon></g></g><g id="icon-chevronDown" class="tsd-no-select"><path d="M4.93896 8.531L12 15.591L19.061 8.531L16.939 6.409L12 11.349L7.06098 6.409L4.93896 8.531Z" fill="var(--color-icon-text)"></path></g><g id="icon-chevronSmall" class="tsd-no-select"><path d="M1.5 5.50969L8 11.6609L14.5 5.50969L12.5466 3.66086L8 7.96494L3.45341 3.66086L1.5 5.50969Z" fill="var(--color-icon-text)"></path></g><g id="icon-checkbox" class="tsd-no-select"><rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none"></rect><path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none"></path></g><g id="icon-menu" class="tsd-no-select"><rect x="1" y="3" width="14" height="2" fill="var(--color-icon-text)"></rect><rect x="1" y="7" width="14" height="2" fill="var(--color-icon-text)"></rect><rect x="1" y="11" width="14" height="2" fill="var(--color-icon-text)"></rect></g><g id="icon-search" class="tsd-no-select"><path d="M15.7824 13.833L12.6666 10.7177C12.5259 10.5771 12.3353 10.499 12.1353 10.499H11.6259C12.4884 9.39596 13.001 8.00859 13.001 6.49937C13.001 2.90909 10.0914 0 6.50048 0C2.90959 0 0 2.90909 0 6.49937C0 10.0896 2.90959 12.9987 6.50048 12.9987C8.00996 12.9987 9.39756 12.4863 10.5008 11.6239V12.1332C10.5008 12.3332 10.5789 12.5238 10.7195 12.6644L13.8354 15.7797C14.1292 16.0734 14.6042 16.0734 14.8948 15.7797L15.7793 14.8954C16.0731 14.6017 16.0731 14.1267 15.7824 13.833ZM6.50048 10.499C4.29094 10.499 2.50018 8.71165 2.50018 6.49937C2.50018 4.29021 4.28781 2.49976 6.50048 2.49976C8.71001 2.49976 10.5008 4.28708 10.5008 6.49937C10.5008 8.70852 8.71314 10.499 6.50048 10.499Z" fill="var(--color-icon-text)"></path></g><g id="icon-anchor" class="tsd-no-select"><g stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></g></g><g id="icon-alertNote" class="tsd-no-select"><path fill="var(--color-alert-note)" d="M0 8a8 8 0 1 1 16 0A8 8 0 0 1 0 8Zm8-6.5a6.5 6.5 0 1 0 0 13 6.5 6.5 0 0 0 0-13ZM6.5 7.75A.75.75 0 0 1 7.25 7h1a.75.75 0 0 1 .75.75v2.75h.25a.75.75 0 0 1 0 1.5h-2a.75.75 0 0 1 0-1.5h.25v-2h-.25a.75.75 0 0 1-.75-.75ZM8 6a1 1 0 1 1 0-2 1 1 0 0 1 0 2Z"></path></g><g id="icon-alertTip" class="tsd-no-select"><path fill="var(--color-alert-tip)" d="M8 1.5c-2.363 0-4 1.69-4 3.75 0 .984.424 1.625.984 2.304l.214.253c.223.264.47.556.673.848.284.411.537.896.621 1.49a.75.75 0 0 1-1.484.211c-.04-.282-.163-.547-.37-.847a8.456 8.456 0 0 0-.542-.68c-.084-.1-.173-.205-.268-.32C3.201 7.75 2.5 6.766 2.5 5.25 2.5 2.31 4.863 0 8 0s5.5 2.31 5.5 5.25c0 1.516-.701 2.5-1.328 3.259-.095.115-.184.22-.268.319-.207.245-.383.453-.541.681-.208.3-.33.565-.37.847a.751.751 0 0 1-1.485-.212c.084-.593.337-1.078.621-1.489.203-.292.45-.584.673-.848.075-.088.147-.173.213-.253.561-.679.985-1.32.985-2.304 0-2.06-1.637-3.75-4-3.75ZM5.75 12h4.5a.75.75 0 0 1 0 1.5h-4.5a.75.75 0 0 1 0-1.5ZM6 15.25a.75.75 0 0 1 .75-.75h2.5a.75.75 0 0 1 0 1.5h-2.5a.75.75 0 0 1-.75-.75Z"></path></g><g id="icon-alertImportant" class="tsd-no-select"><path fill="var(--color-alert-important)" d="M0 1.75C0 .784.784 0 1.75 0h12.5C15.216 0 16 .784 16 1.75v9.5A1.75 1.75 0 0 1 14.25 13H8.06l-2.573 2.573A1.458 1.458 0 0 1 3 14.543V13H1.75A1.75 1.75 0 0 1 0 11.25Zm1.75-.25a.25.25 0 0 0-.25.25v9.5c0 .138.112.25.25.25h2a.75.75 0 0 1 .75.75v2.19l2.72-2.72a.749.749 0 0 1 .53-.22h6.5a.25.25 0 0 0 .25-.25v-9.5a.25.25 0 0 0-.25-.25Zm7 2.25v2.5a.75.75 0 0 1-1.5 0v-2.5a.75.75 0 0 1 1.5 0ZM9 9a1 1 0 1 1-2 0 1 1 0 0 1 2 0Z"></path></g><g id="icon-alertWarning" class="tsd-no-select"><path fill="var(--color-alert-warning)" d="M6.457 1.047c.659-1.234 2.427-1.234 3.086 0l6.082 11.378A1.75 1.75 0 0 1 14.082 15H1.918a1.75 1.75 0 0 1-1.543-2.575Zm1.763.707a.25.25 0 0 0-.44 0L1.698 13.132a.25.25 0 0 0 .22.368h12.164a.25.25 0 0 0 .22-.368Zm.53 3.996v2.5a.75.75 0 0 1-1.5 0v-2.5a.75.75 0 0 1 1.5 0ZM9 11a1 1 0 1 1-2 0 1 1 0 0 1 2 0Z"></path></g><g id="icon-alertCaution" class="tsd-no-select"><path fill="var(--color-alert-caution)" d="M4.47.22A.749.749 0 0 1 5 0h6c.199 0 .389.079.53.22l4.25 4.25c.141.14.22.331.22.53v6a.749.749 0 0 1-.22.53l-4.25 4.25A.749.749 0 0 1 11 16H5a.749.749 0 0 1-.53-.22L.22 11.53A.749.749 0 0 1 0 11V5c0-.199.079-.389.22-.53Zm.84 1.28L1.5 5.31v5.38l3.81 3.81h5.38l3.81-3.81V5.31L10.69 1.5ZM8 4a.75.75 0 0 1 .75.75v3.5a.75.75 0 0 1-1.5 0v-3.5A.75.75 0 0 1 8 4Zm0 8a1 1 0 1 1 0-2 1 1 0 0 1 0 2Z"></path></g>`;
7
+ svg.style.display = "none";
8
+ if (location.protocol === "file:") updateUseElements();
9
+ }
10
+
11
+ function updateUseElements() {
12
+ document.querySelectorAll("use").forEach(el => {
13
+ if (el.getAttribute("href").includes("#icon-")) {
14
+ el.setAttribute("href", el.getAttribute("href").replace(/.*#/, "#"));
15
+ }
16
+ });
17
+ }
18
+ })()
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg"><g id="icon-1" class="tsd-no-select"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-module)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="6"></rect><text fill="var(--color-icon-text)" x="50%" y="50%" dominant-baseline="central" text-anchor="middle">M</text></g><g id="icon-2" class="tsd-no-select"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-module)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="6"></rect><text fill="var(--color-icon-text)" x="50%" y="50%" dominant-baseline="central" text-anchor="middle">M</text></g><g id="icon-4" class="tsd-no-select"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-namespace)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="6"></rect><text fill="var(--color-icon-text)" x="50%" y="50%" dominant-baseline="central" text-anchor="middle">N</text></g><g id="icon-8" class="tsd-no-select"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-enum)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="6"></rect><text fill="var(--color-icon-text)" x="50%" y="50%" dominant-baseline="central" text-anchor="middle">E</text></g><g id="icon-16" class="tsd-no-select"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-property)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="12"></rect><text fill="var(--color-icon-text)" x="50%" y="50%" dominant-baseline="central" text-anchor="middle">P</text></g><g id="icon-32" class="tsd-no-select"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-variable)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="6"></rect><text fill="var(--color-icon-text)" x="50%" y="50%" dominant-baseline="central" text-anchor="middle">V</text></g><g id="icon-64" class="tsd-no-select"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-function)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="6"></rect><text fill="var(--color-icon-text)" x="50%" y="50%" dominant-baseline="central" text-anchor="middle">F</text></g><g id="icon-128" class="tsd-no-select"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-class)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="6"></rect><text fill="var(--color-icon-text)" x="50%" y="50%" dominant-baseline="central" text-anchor="middle">C</text></g><g id="icon-256" class="tsd-no-select"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-interface)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="6"></rect><text fill="var(--color-icon-text)" x="50%" y="50%" dominant-baseline="central" text-anchor="middle">I</text></g><g id="icon-512" class="tsd-no-select"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-constructor)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="12"></rect><text fill="var(--color-icon-text)" x="50%" y="50%" dominant-baseline="central" text-anchor="middle">C</text></g><g id="icon-1024" class="tsd-no-select"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-property)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="12"></rect><text fill="var(--color-icon-text)" x="50%" y="50%" dominant-baseline="central" text-anchor="middle">P</text></g><g id="icon-2048" class="tsd-no-select"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-method)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="12"></rect><text fill="var(--color-icon-text)" x="50%" y="50%" dominant-baseline="central" text-anchor="middle">M</text></g><g id="icon-4096" class="tsd-no-select"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-function)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="6"></rect><text fill="var(--color-icon-text)" x="50%" y="50%" dominant-baseline="central" text-anchor="middle">F</text></g><g id="icon-8192" class="tsd-no-select"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-property)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="12"></rect><text fill="var(--color-icon-text)" x="50%" y="50%" dominant-baseline="central" text-anchor="middle">P</text></g><g id="icon-16384" class="tsd-no-select"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-constructor)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="12"></rect><text fill="var(--color-icon-text)" x="50%" y="50%" dominant-baseline="central" text-anchor="middle">C</text></g><g id="icon-32768" class="tsd-no-select"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-property)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="12"></rect><text fill="var(--color-icon-text)" x="50%" y="50%" dominant-baseline="central" text-anchor="middle">P</text></g><g id="icon-65536" class="tsd-no-select"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-type-alias)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="6"></rect><text fill="var(--color-icon-text)" x="50%" y="50%" dominant-baseline="central" text-anchor="middle">T</text></g><g id="icon-131072" class="tsd-no-select"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-type-alias)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="6"></rect><text fill="var(--color-icon-text)" x="50%" y="50%" dominant-baseline="central" text-anchor="middle">T</text></g><g id="icon-262144" class="tsd-no-select"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-accessor)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="12"></rect><text fill="var(--color-icon-text)" x="50%" y="50%" dominant-baseline="central" text-anchor="middle">A</text></g><g id="icon-524288" class="tsd-no-select"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-accessor)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="12"></rect><text fill="var(--color-icon-text)" x="50%" y="50%" dominant-baseline="central" text-anchor="middle">A</text></g><g id="icon-1048576" class="tsd-no-select"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-accessor)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="12"></rect><text fill="var(--color-icon-text)" x="50%" y="50%" dominant-baseline="central" text-anchor="middle">A</text></g><g id="icon-2097152" class="tsd-no-select"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-type-alias)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="6"></rect><text fill="var(--color-icon-text)" x="50%" y="50%" dominant-baseline="central" text-anchor="middle">T</text></g><g id="icon-4194304" class="tsd-no-select"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-reference)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="12"></rect><text fill="var(--color-icon-text)" x="50%" y="50%" dominant-baseline="central" text-anchor="middle">R</text></g><g id="icon-8388608" class="tsd-no-select"><rect fill="var(--color-icon-background)" stroke="var(--color-document)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="6"></rect><g stroke="var(--color-icon-text)" fill="none" stroke-width="1.5"><polygon points="6,5 6,19 18,19, 18,10 13,5"></polygon><line x1="9" y1="9" x2="13" y2="9"></line><line x1="9" y1="12" x2="15" y2="12"></line><line x1="9" y1="15" x2="15" y2="15"></line></g></g><g id="icon-folder" class="tsd-no-select"><rect fill="var(--color-icon-background)" stroke="var(--color-document)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="6"></rect><g stroke="var(--color-icon-text)" fill="none" stroke-width="1.5"><polygon points="5,5 10,5 12,8 19,8 19,18 5,18"></polygon></g></g><g id="icon-chevronDown" class="tsd-no-select"><path d="M4.93896 8.531L12 15.591L19.061 8.531L16.939 6.409L12 11.349L7.06098 6.409L4.93896 8.531Z" fill="var(--color-icon-text)"></path></g><g id="icon-chevronSmall" class="tsd-no-select"><path d="M1.5 5.50969L8 11.6609L14.5 5.50969L12.5466 3.66086L8 7.96494L3.45341 3.66086L1.5 5.50969Z" fill="var(--color-icon-text)"></path></g><g id="icon-checkbox" class="tsd-no-select"><rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none"></rect><path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none"></path></g><g id="icon-menu" class="tsd-no-select"><rect x="1" y="3" width="14" height="2" fill="var(--color-icon-text)"></rect><rect x="1" y="7" width="14" height="2" fill="var(--color-icon-text)"></rect><rect x="1" y="11" width="14" height="2" fill="var(--color-icon-text)"></rect></g><g id="icon-search" class="tsd-no-select"><path d="M15.7824 13.833L12.6666 10.7177C12.5259 10.5771 12.3353 10.499 12.1353 10.499H11.6259C12.4884 9.39596 13.001 8.00859 13.001 6.49937C13.001 2.90909 10.0914 0 6.50048 0C2.90959 0 0 2.90909 0 6.49937C0 10.0896 2.90959 12.9987 6.50048 12.9987C8.00996 12.9987 9.39756 12.4863 10.5008 11.6239V12.1332C10.5008 12.3332 10.5789 12.5238 10.7195 12.6644L13.8354 15.7797C14.1292 16.0734 14.6042 16.0734 14.8948 15.7797L15.7793 14.8954C16.0731 14.6017 16.0731 14.1267 15.7824 13.833ZM6.50048 10.499C4.29094 10.499 2.50018 8.71165 2.50018 6.49937C2.50018 4.29021 4.28781 2.49976 6.50048 2.49976C8.71001 2.49976 10.5008 4.28708 10.5008 6.49937C10.5008 8.70852 8.71314 10.499 6.50048 10.499Z" fill="var(--color-icon-text)"></path></g><g id="icon-anchor" class="tsd-no-select"><g stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></g></g><g id="icon-alertNote" class="tsd-no-select"><path fill="var(--color-alert-note)" d="M0 8a8 8 0 1 1 16 0A8 8 0 0 1 0 8Zm8-6.5a6.5 6.5 0 1 0 0 13 6.5 6.5 0 0 0 0-13ZM6.5 7.75A.75.75 0 0 1 7.25 7h1a.75.75 0 0 1 .75.75v2.75h.25a.75.75 0 0 1 0 1.5h-2a.75.75 0 0 1 0-1.5h.25v-2h-.25a.75.75 0 0 1-.75-.75ZM8 6a1 1 0 1 1 0-2 1 1 0 0 1 0 2Z"></path></g><g id="icon-alertTip" class="tsd-no-select"><path fill="var(--color-alert-tip)" d="M8 1.5c-2.363 0-4 1.69-4 3.75 0 .984.424 1.625.984 2.304l.214.253c.223.264.47.556.673.848.284.411.537.896.621 1.49a.75.75 0 0 1-1.484.211c-.04-.282-.163-.547-.37-.847a8.456 8.456 0 0 0-.542-.68c-.084-.1-.173-.205-.268-.32C3.201 7.75 2.5 6.766 2.5 5.25 2.5 2.31 4.863 0 8 0s5.5 2.31 5.5 5.25c0 1.516-.701 2.5-1.328 3.259-.095.115-.184.22-.268.319-.207.245-.383.453-.541.681-.208.3-.33.565-.37.847a.751.751 0 0 1-1.485-.212c.084-.593.337-1.078.621-1.489.203-.292.45-.584.673-.848.075-.088.147-.173.213-.253.561-.679.985-1.32.985-2.304 0-2.06-1.637-3.75-4-3.75ZM5.75 12h4.5a.75.75 0 0 1 0 1.5h-4.5a.75.75 0 0 1 0-1.5ZM6 15.25a.75.75 0 0 1 .75-.75h2.5a.75.75 0 0 1 0 1.5h-2.5a.75.75 0 0 1-.75-.75Z"></path></g><g id="icon-alertImportant" class="tsd-no-select"><path fill="var(--color-alert-important)" d="M0 1.75C0 .784.784 0 1.75 0h12.5C15.216 0 16 .784 16 1.75v9.5A1.75 1.75 0 0 1 14.25 13H8.06l-2.573 2.573A1.458 1.458 0 0 1 3 14.543V13H1.75A1.75 1.75 0 0 1 0 11.25Zm1.75-.25a.25.25 0 0 0-.25.25v9.5c0 .138.112.25.25.25h2a.75.75 0 0 1 .75.75v2.19l2.72-2.72a.749.749 0 0 1 .53-.22h6.5a.25.25 0 0 0 .25-.25v-9.5a.25.25 0 0 0-.25-.25Zm7 2.25v2.5a.75.75 0 0 1-1.5 0v-2.5a.75.75 0 0 1 1.5 0ZM9 9a1 1 0 1 1-2 0 1 1 0 0 1 2 0Z"></path></g><g id="icon-alertWarning" class="tsd-no-select"><path fill="var(--color-alert-warning)" d="M6.457 1.047c.659-1.234 2.427-1.234 3.086 0l6.082 11.378A1.75 1.75 0 0 1 14.082 15H1.918a1.75 1.75 0 0 1-1.543-2.575Zm1.763.707a.25.25 0 0 0-.44 0L1.698 13.132a.25.25 0 0 0 .22.368h12.164a.25.25 0 0 0 .22-.368Zm.53 3.996v2.5a.75.75 0 0 1-1.5 0v-2.5a.75.75 0 0 1 1.5 0ZM9 11a1 1 0 1 1-2 0 1 1 0 0 1 2 0Z"></path></g><g id="icon-alertCaution" class="tsd-no-select"><path fill="var(--color-alert-caution)" d="M4.47.22A.749.749 0 0 1 5 0h6c.199 0 .389.079.53.22l4.25 4.25c.141.14.22.331.22.53v6a.749.749 0 0 1-.22.53l-4.25 4.25A.749.749 0 0 1 11 16H5a.749.749 0 0 1-.53-.22L.22 11.53A.749.749 0 0 1 0 11V5c0-.199.079-.389.22-.53Zm.84 1.28L1.5 5.31v5.38l3.81 3.81h5.38l3.81-3.81V5.31L10.69 1.5ZM8 4a.75.75 0 0 1 .75.75v3.5a.75.75 0 0 1-1.5 0v-3.5A.75.75 0 0 1 8 4Zm0 8a1 1 0 1 1 0-2 1 1 0 0 1 0 2Z"></path></g></svg>