Skip to content

Commit 40d6ca2

Browse files
committed
v2.0.0 convert to ts
1 parent db5605d commit 40d6ca2

71 files changed

Lines changed: 2674 additions & 164535 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.gitignore

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,12 @@
11
node_modules/
22
dist/
3-
.DS_STORE
3+
.DS_Store
4+
.DS_Store?
5+
._*
6+
.Spotlight-V100
7+
.Trashes
8+
ehthumbs.db
9+
Thumbs.db
10+
*.log
11+
*.tmp
12+
*.temp

bun-build.ts

Lines changed: 95 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,95 @@
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()} Evitca Studio, "doubleactii"`,
10+
` *`,
11+
` * ${packageJson.name} is privately licensed.`,
12+
` */`,
13+
].join('\n');
14+
15+
function logMessage(level: string, message: string): void {
16+
const colors: Record<string, string> = { error: '#c42847', info: '#ffa552' };
17+
const levelFormatted = level.charAt(0).toUpperCase() + level.slice(1);
18+
const color = colors[level] || '#ffa552';
19+
console.log(chalk.hex(color)(`[${levelFormatted}]`), `${message}`);
20+
}
21+
22+
const startTime = Date.now();
23+
24+
await Promise.all([
25+
// ES Module version
26+
Bun.build({
27+
entrypoints: ['./src/index.ts'],
28+
outdir: './dist/',
29+
naming: `${packageJson.name}.js`,
30+
banner: banner,
31+
target: 'browser',
32+
splitting: false,
33+
minify: false,
34+
format: 'esm',
35+
sourcemap: 'external'
36+
}),
37+
// ES Module minified version
38+
Bun.build({
39+
entrypoints: ['./src/index.ts'],
40+
outdir: './dist/',
41+
naming: `${packageJson.name}.min.js`,
42+
minify: true,
43+
banner: banner,
44+
target: 'browser',
45+
splitting: false,
46+
format: 'esm',
47+
sourcemap: 'external'
48+
}),
49+
// IIFE version
50+
Bun.build({
51+
entrypoints: ['./src/index.ts'],
52+
outdir: './dist/',
53+
naming: `${packageJson.name}-iife.js`,
54+
format: 'iife',
55+
minify: false,
56+
banner: banner,
57+
target: 'browser',
58+
splitting: false,
59+
sourcemap: 'external'
60+
}),
61+
// IIFE minified version
62+
Bun.build({
63+
entrypoints: ['./src/index.ts'],
64+
outdir: './dist/',
65+
naming: `${packageJson.name}-iife.min.js`,
66+
format: 'iife',
67+
minify: true,
68+
banner: banner,
69+
target: 'browser',
70+
splitting: false,
71+
sourcemap: 'external'
72+
})
73+
]);
74+
75+
// Replace VERSION_REPLACE_ME with actual version in all generated files
76+
const filesToUpdate = [
77+
`dist/${packageJson.name}.js`,
78+
`dist/${packageJson.name}.min.js`,
79+
`dist/${packageJson.name}-iife.js`,
80+
`dist/${packageJson.name}-iife.min.js`
81+
];
82+
83+
for (const file of filesToUpdate) {
84+
try {
85+
const content = await Bun.file(file).text();
86+
const updatedContent = content.replace(/VERSION_REPLACE_ME/g, packageJson.version);
87+
await Bun.write(file, updatedContent);
88+
} catch (error) {
89+
// File might not exist, that's okay
90+
}
91+
}
92+
93+
94+
const elapsed = Date.now() - startTime;
95+
logMessage('info', `Build completed in ${elapsed}ms`);

bun.lock

Lines changed: 171 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

docs/.nojekyll

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -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.

docs/assets/highlight.css

Lines changed: 99 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,99 @@
1+
:root {
2+
--light-hl-0: #AF00DB;
3+
--dark-hl-0: #C586C0;
4+
--light-hl-1: #000000;
5+
--dark-hl-1: #D4D4D4;
6+
--light-hl-2: #001080;
7+
--dark-hl-2: #9CDCFE;
8+
--light-hl-3: #A31515;
9+
--dark-hl-3: #CE9178;
10+
--light-hl-4: #800000;
11+
--dark-hl-4: #808080;
12+
--light-hl-5: #800000;
13+
--dark-hl-5: #569CD6;
14+
--light-hl-6: #E50000;
15+
--dark-hl-6: #9CDCFE;
16+
--light-hl-7: #008000;
17+
--dark-hl-7: #6A9955;
18+
--light-hl-8: #795E26;
19+
--dark-hl-8: #DCDCAA;
20+
--light-hl-9: #098658;
21+
--dark-hl-9: #B5CEA8;
22+
--light-hl-10: #0000FF;
23+
--dark-hl-10: #569CD6;
24+
--light-code-background: #FFFFFF;
25+
--dark-code-background: #1E1E1E;
26+
}
27+
28+
@media (prefers-color-scheme: light) { :root {
29+
--hl-0: var(--light-hl-0);
30+
--hl-1: var(--light-hl-1);
31+
--hl-2: var(--light-hl-2);
32+
--hl-3: var(--light-hl-3);
33+
--hl-4: var(--light-hl-4);
34+
--hl-5: var(--light-hl-5);
35+
--hl-6: var(--light-hl-6);
36+
--hl-7: var(--light-hl-7);
37+
--hl-8: var(--light-hl-8);
38+
--hl-9: var(--light-hl-9);
39+
--hl-10: var(--light-hl-10);
40+
--code-background: var(--light-code-background);
41+
} }
42+
43+
@media (prefers-color-scheme: dark) { :root {
44+
--hl-0: var(--dark-hl-0);
45+
--hl-1: var(--dark-hl-1);
46+
--hl-2: var(--dark-hl-2);
47+
--hl-3: var(--dark-hl-3);
48+
--hl-4: var(--dark-hl-4);
49+
--hl-5: var(--dark-hl-5);
50+
--hl-6: var(--dark-hl-6);
51+
--hl-7: var(--dark-hl-7);
52+
--hl-8: var(--dark-hl-8);
53+
--hl-9: var(--dark-hl-9);
54+
--hl-10: var(--dark-hl-10);
55+
--code-background: var(--dark-code-background);
56+
} }
57+
58+
:root[data-theme='light'] {
59+
--hl-0: var(--light-hl-0);
60+
--hl-1: var(--light-hl-1);
61+
--hl-2: var(--light-hl-2);
62+
--hl-3: var(--light-hl-3);
63+
--hl-4: var(--light-hl-4);
64+
--hl-5: var(--light-hl-5);
65+
--hl-6: var(--light-hl-6);
66+
--hl-7: var(--light-hl-7);
67+
--hl-8: var(--light-hl-8);
68+
--hl-9: var(--light-hl-9);
69+
--hl-10: var(--light-hl-10);
70+
--code-background: var(--light-code-background);
71+
}
72+
73+
:root[data-theme='dark'] {
74+
--hl-0: var(--dark-hl-0);
75+
--hl-1: var(--dark-hl-1);
76+
--hl-2: var(--dark-hl-2);
77+
--hl-3: var(--dark-hl-3);
78+
--hl-4: var(--dark-hl-4);
79+
--hl-5: var(--dark-hl-5);
80+
--hl-6: var(--dark-hl-6);
81+
--hl-7: var(--dark-hl-7);
82+
--hl-8: var(--dark-hl-8);
83+
--hl-9: var(--dark-hl-9);
84+
--hl-10: var(--dark-hl-10);
85+
--code-background: var(--dark-code-background);
86+
}
87+
88+
.hl-0 { color: var(--hl-0); }
89+
.hl-1 { color: var(--hl-1); }
90+
.hl-2 { color: var(--hl-2); }
91+
.hl-3 { color: var(--hl-3); }
92+
.hl-4 { color: var(--hl-4); }
93+
.hl-5 { color: var(--hl-5); }
94+
.hl-6 { color: var(--hl-6); }
95+
.hl-7 { color: var(--hl-7); }
96+
.hl-8 { color: var(--hl-8); }
97+
.hl-9 { color: var(--hl-9); }
98+
.hl-10 { color: var(--hl-10); }
99+
pre, code { background: var(--code-background); }

0 commit comments

Comments
 (0)