@elyracode/mini-lit 0.9.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +22 -0
- package/dist/Alert.d.ts +12 -0
- package/dist/Alert.d.ts.map +1 -0
- package/dist/Alert.js +35 -0
- package/dist/Alert.js.map +1 -0
- package/dist/Badge.d.ts +8 -0
- package/dist/Badge.d.ts.map +1 -0
- package/dist/Badge.js +19 -0
- package/dist/Badge.js.map +1 -0
- package/dist/Button.d.ts +14 -0
- package/dist/Button.d.ts.map +1 -0
- package/dist/Button.js +60 -0
- package/dist/Button.js.map +1 -0
- package/dist/Card.d.ts +19 -0
- package/dist/Card.d.ts.map +1 -0
- package/dist/Card.js +76 -0
- package/dist/Card.js.map +1 -0
- package/dist/Checkbox.d.ts +15 -0
- package/dist/Checkbox.d.ts.map +1 -0
- package/dist/Checkbox.js +49 -0
- package/dist/Checkbox.js.map +1 -0
- package/dist/CodeBlock.d.ts +11 -0
- package/dist/CodeBlock.d.ts.map +1 -0
- package/dist/CodeBlock.js +90 -0
- package/dist/CodeBlock.js.map +1 -0
- package/dist/CopyButton.d.ts +11 -0
- package/dist/CopyButton.d.ts.map +1 -0
- package/dist/CopyButton.js +65 -0
- package/dist/CopyButton.js.map +1 -0
- package/dist/Dialog.d.ts +24 -0
- package/dist/Dialog.d.ts.map +1 -0
- package/dist/Dialog.js +72 -0
- package/dist/Dialog.js.map +1 -0
- package/dist/DialogBase.d.ts +13 -0
- package/dist/DialogBase.d.ts.map +1 -0
- package/dist/DialogBase.js +48 -0
- package/dist/DialogBase.js.map +1 -0
- package/dist/Diff.d.ts +8 -0
- package/dist/Diff.d.ts.map +1 -0
- package/dist/Diff.js +47 -0
- package/dist/Diff.js.map +1 -0
- package/dist/DownloadButton.d.ts +16 -0
- package/dist/DownloadButton.d.ts.map +1 -0
- package/dist/DownloadButton.js +53 -0
- package/dist/DownloadButton.js.map +1 -0
- package/dist/FileButton.d.ts +9 -0
- package/dist/FileButton.d.ts.map +1 -0
- package/dist/FileButton.js +53 -0
- package/dist/FileButton.js.map +1 -0
- package/dist/Input.d.ts +28 -0
- package/dist/Input.d.ts.map +1 -0
- package/dist/Input.js +58 -0
- package/dist/Input.js.map +1 -0
- package/dist/Label.d.ts +9 -0
- package/dist/Label.d.ts.map +1 -0
- package/dist/Label.js +17 -0
- package/dist/Label.js.map +1 -0
- package/dist/LanguageSelector.d.ts +14 -0
- package/dist/LanguageSelector.d.ts.map +1 -0
- package/dist/LanguageSelector.js +92 -0
- package/dist/LanguageSelector.js.map +1 -0
- package/dist/MarkdownBlock.d.ts +10 -0
- package/dist/MarkdownBlock.d.ts.map +1 -0
- package/dist/MarkdownBlock.js +257 -0
- package/dist/MarkdownBlock.js.map +1 -0
- package/dist/ModeToggle.d.ts +14 -0
- package/dist/ModeToggle.d.ts.map +1 -0
- package/dist/ModeToggle.js +59 -0
- package/dist/ModeToggle.js.map +1 -0
- package/dist/PreviewCode.d.ts +12 -0
- package/dist/PreviewCode.d.ts.map +1 -0
- package/dist/PreviewCode.js +80 -0
- package/dist/PreviewCode.js.map +1 -0
- package/dist/PreviewCodeToggle.d.ts +15 -0
- package/dist/PreviewCodeToggle.d.ts.map +1 -0
- package/dist/PreviewCodeToggle.js +55 -0
- package/dist/PreviewCodeToggle.js.map +1 -0
- package/dist/Progress.d.ts +10 -0
- package/dist/Progress.d.ts.map +1 -0
- package/dist/Progress.js +27 -0
- package/dist/Progress.js.map +1 -0
- package/dist/PromptDialog.d.ts +20 -0
- package/dist/PromptDialog.d.ts.map +1 -0
- package/dist/PromptDialog.js +114 -0
- package/dist/PromptDialog.js.map +1 -0
- package/dist/Select.d.ts +25 -0
- package/dist/Select.d.ts.map +1 -0
- package/dist/Select.js +335 -0
- package/dist/Select.js.map +1 -0
- package/dist/Separator.d.ts +10 -0
- package/dist/Separator.d.ts.map +1 -0
- package/dist/Separator.js +19 -0
- package/dist/Separator.js.map +1 -0
- package/dist/Sidebar.d.ts +27 -0
- package/dist/Sidebar.d.ts.map +1 -0
- package/dist/Sidebar.js +151 -0
- package/dist/Sidebar.js.map +1 -0
- package/dist/SplitPanel.d.ts +40 -0
- package/dist/SplitPanel.d.ts.map +1 -0
- package/dist/SplitPanel.js +275 -0
- package/dist/SplitPanel.js.map +1 -0
- package/dist/Switch.d.ts +13 -0
- package/dist/Switch.d.ts.map +1 -0
- package/dist/Switch.js +48 -0
- package/dist/Switch.js.map +1 -0
- package/dist/Textarea.d.ts +21 -0
- package/dist/Textarea.d.ts.map +1 -0
- package/dist/Textarea.js +67 -0
- package/dist/Textarea.js.map +1 -0
- package/dist/ThemeToggle.d.ts +11 -0
- package/dist/ThemeToggle.d.ts.map +1 -0
- package/dist/ThemeToggle.js +91 -0
- package/dist/ThemeToggle.js.map +1 -0
- package/dist/component.d.ts +190 -0
- package/dist/component.d.ts.map +1 -0
- package/dist/component.js +241 -0
- package/dist/component.js.map +1 -0
- package/dist/i18n.d.ts +73 -0
- package/dist/i18n.d.ts.map +1 -0
- package/dist/i18n.js +146 -0
- package/dist/i18n.js.map +1 -0
- package/dist/icons.d.ts +7 -0
- package/dist/icons.d.ts.map +1 -0
- package/dist/icons.js +21 -0
- package/dist/icons.js.map +1 -0
- package/dist/index.d.ts +4 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +8 -0
- package/dist/index.js.map +1 -0
- package/dist/mini.d.ts +19 -0
- package/dist/mini.d.ts.map +1 -0
- package/dist/mini.js +29 -0
- package/dist/mini.js.map +1 -0
- package/llms.txt +681 -0
- package/package.json +69 -0
- package/src/styles/base.css +63 -0
- package/src/styles/themes/claude.css +155 -0
- package/src/styles/themes/default.css +102 -0
- package/src/styles/utils/markdown.css +104 -0
- package/src/styles/utils/math.css +7 -0
- package/src/styles/utils/syntax-highlighting.css +134 -0
package/package.json
ADDED
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@elyracode/mini-lit",
|
|
3
|
+
"version": "0.9.4",
|
|
4
|
+
"description": "Lightweight Lit components with shadcn-inspired theming and Tailwind CSS integration (fork of @mariozechner/mini-lit)",
|
|
5
|
+
"type": "module",
|
|
6
|
+
"main": "./dist/index.js",
|
|
7
|
+
"module": "./dist/index.js",
|
|
8
|
+
"types": "./dist/index.d.ts",
|
|
9
|
+
"files": [
|
|
10
|
+
"dist",
|
|
11
|
+
"src/styles",
|
|
12
|
+
"README.md",
|
|
13
|
+
"llms.txt"
|
|
14
|
+
],
|
|
15
|
+
"exports": {
|
|
16
|
+
".": {
|
|
17
|
+
"types": "./dist/index.d.ts",
|
|
18
|
+
"import": "./dist/index.js"
|
|
19
|
+
},
|
|
20
|
+
"./dist/*": "./dist/*",
|
|
21
|
+
"./styles/*": "./src/styles/*"
|
|
22
|
+
},
|
|
23
|
+
"scripts": {
|
|
24
|
+
"clean": "shx rm -rf dist",
|
|
25
|
+
"build": "tsc",
|
|
26
|
+
"dev": "tsc --watch --preserveWatchOutput",
|
|
27
|
+
"check": "tsc --noEmit",
|
|
28
|
+
"test": "vitest --run",
|
|
29
|
+
"prepublishOnly": "npm run clean && npm run build"
|
|
30
|
+
},
|
|
31
|
+
"dependencies": {
|
|
32
|
+
"@preact/signals-core": "^1.12.1",
|
|
33
|
+
"class-variance-authority": "^0.7.1",
|
|
34
|
+
"diff": "^8.0.2",
|
|
35
|
+
"highlight.js": "^11.11.1",
|
|
36
|
+
"html-parse-string": "^0.0.9",
|
|
37
|
+
"katex": "^0.16.22",
|
|
38
|
+
"lucide": "^0.544.0",
|
|
39
|
+
"marked": "^16.3.0",
|
|
40
|
+
"tailwind-merge": "^3.3.1",
|
|
41
|
+
"tailwind-variants": "^3.1.1",
|
|
42
|
+
"uhtml": "^5.0.9"
|
|
43
|
+
},
|
|
44
|
+
"peerDependencies": {
|
|
45
|
+
"lit": "^3.3.1"
|
|
46
|
+
},
|
|
47
|
+
"devDependencies": {
|
|
48
|
+
"@types/node": "^24.5.2",
|
|
49
|
+
"happy-dom": "^20.0.8",
|
|
50
|
+
"shx": "^0.4.0",
|
|
51
|
+
"typescript": "^5.7.3",
|
|
52
|
+
"vitest": "^3.2.4"
|
|
53
|
+
},
|
|
54
|
+
"keywords": [
|
|
55
|
+
"lit",
|
|
56
|
+
"web-components",
|
|
57
|
+
"ui",
|
|
58
|
+
"components",
|
|
59
|
+
"tailwind",
|
|
60
|
+
"mini-lit"
|
|
61
|
+
],
|
|
62
|
+
"author": "Knut W. Horne",
|
|
63
|
+
"license": "MIT",
|
|
64
|
+
"repository": {
|
|
65
|
+
"type": "git",
|
|
66
|
+
"url": "git+https://github.com/kwhorne/elyra.git",
|
|
67
|
+
"directory": "packages/mini-lit"
|
|
68
|
+
}
|
|
69
|
+
}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
/* Base styles for mini-lit */
|
|
2
|
+
|
|
3
|
+
/* Enable manual dark mode with class for Tailwind v4 */
|
|
4
|
+
@custom-variant dark (&:where(.dark, .dark *));
|
|
5
|
+
|
|
6
|
+
/* Utility styles that are commonly needed */
|
|
7
|
+
@import "./utils/syntax-highlighting.css";
|
|
8
|
+
@import "./utils/math.css";
|
|
9
|
+
@import "./utils/markdown.css";
|
|
10
|
+
|
|
11
|
+
/* biome-ignore lint/suspicious/noUnknownAtRules: Tailwind */
|
|
12
|
+
@theme inline {
|
|
13
|
+
--color-background: var(--background);
|
|
14
|
+
--color-foreground: var(--foreground);
|
|
15
|
+
--color-card: var(--card);
|
|
16
|
+
--color-card-foreground: var(--card-foreground);
|
|
17
|
+
--color-popover: var(--popover);
|
|
18
|
+
--color-popover-foreground: var(--popover-foreground);
|
|
19
|
+
--color-primary: var(--primary);
|
|
20
|
+
--color-primary-foreground: var(--primary-foreground);
|
|
21
|
+
--color-secondary: var(--secondary);
|
|
22
|
+
--color-secondary-foreground: var(--secondary-foreground);
|
|
23
|
+
--color-muted: var(--muted);
|
|
24
|
+
--color-muted-foreground: var(--muted-foreground);
|
|
25
|
+
--color-accent: var(--accent);
|
|
26
|
+
--color-accent-foreground: var(--accent-foreground);
|
|
27
|
+
--color-destructive: var(--destructive);
|
|
28
|
+
--color-destructive-foreground: var(--destructive-foreground);
|
|
29
|
+
--color-border: var(--border);
|
|
30
|
+
--color-input: var(--input);
|
|
31
|
+
--color-ring: var(--ring);
|
|
32
|
+
--color-chart-1: var(--chart-1);
|
|
33
|
+
--color-chart-2: var(--chart-2);
|
|
34
|
+
--color-chart-3: var(--chart-3);
|
|
35
|
+
--color-chart-4: var(--chart-4);
|
|
36
|
+
--color-chart-5: var(--chart-5);
|
|
37
|
+
--color-sidebar: var(--sidebar);
|
|
38
|
+
--color-sidebar-foreground: var(--sidebar-foreground);
|
|
39
|
+
--color-sidebar-primary: var(--sidebar-primary);
|
|
40
|
+
--color-sidebar-primary-foreground: var(--sidebar-primary-foreground);
|
|
41
|
+
--color-sidebar-accent: var(--sidebar-accent);
|
|
42
|
+
--color-sidebar-accent-foreground: var(--sidebar-accent-foreground);
|
|
43
|
+
--color-sidebar-border: var(--sidebar-border);
|
|
44
|
+
--color-sidebar-ring: var(--sidebar-ring);
|
|
45
|
+
|
|
46
|
+
--font-family-sans: var(--font-sans);
|
|
47
|
+
--font-family-mono: var(--font-mono);
|
|
48
|
+
--font-family-serif: var(--font-serif);
|
|
49
|
+
|
|
50
|
+
--radius-sm: calc(var(--radius) - 4px);
|
|
51
|
+
--radius-md: calc(var(--radius) - 2px);
|
|
52
|
+
--radius-lg: var(--radius);
|
|
53
|
+
--radius-xl: calc(var(--radius) + 4px);
|
|
54
|
+
|
|
55
|
+
--shadow-2xs: var(--shadow-2xs);
|
|
56
|
+
--shadow-xs: var(--shadow-xs);
|
|
57
|
+
--shadow-sm: var(--shadow-sm);
|
|
58
|
+
--shadow: var(--shadow);
|
|
59
|
+
--shadow-md: var(--shadow-md);
|
|
60
|
+
--shadow-lg: var(--shadow-lg);
|
|
61
|
+
--shadow-xl: var(--shadow-xl);
|
|
62
|
+
--shadow-2xl: var(--shadow-2xl);
|
|
63
|
+
}
|
|
@@ -0,0 +1,155 @@
|
|
|
1
|
+
/* Import base styles including dark mode variant and utilities */
|
|
2
|
+
@import "../base.css";
|
|
3
|
+
|
|
4
|
+
:root {
|
|
5
|
+
--background: oklch(0.9818 0.0054 95.0986);
|
|
6
|
+
--foreground: oklch(0.3438 0.0269 95.7226);
|
|
7
|
+
--card: oklch(0.9818 0.0054 95.0986);
|
|
8
|
+
--card-foreground: oklch(0.1908 0.002 106.5859);
|
|
9
|
+
--popover: oklch(1 0 0);
|
|
10
|
+
--popover-foreground: oklch(0.2671 0.0196 98.939);
|
|
11
|
+
--primary: oklch(0.6171 0.1375 39.0427);
|
|
12
|
+
--primary-foreground: oklch(1 0 0);
|
|
13
|
+
--secondary: oklch(0.9245 0.0138 92.9892);
|
|
14
|
+
--secondary-foreground: oklch(0.4334 0.0177 98.6048);
|
|
15
|
+
--muted: oklch(0.9341 0.0153 90.239);
|
|
16
|
+
--muted-foreground: oklch(0.6059 0.0075 97.4233);
|
|
17
|
+
--accent: oklch(0.9245 0.0138 92.9892);
|
|
18
|
+
--accent-foreground: oklch(0.2671 0.0196 98.939);
|
|
19
|
+
--destructive: oklch(0.1908 0.002 106.5859);
|
|
20
|
+
--destructive-foreground: oklch(1 0 0);
|
|
21
|
+
--border: oklch(0.8847 0.0069 97.3627);
|
|
22
|
+
--input: oklch(0.7621 0.0156 98.3528);
|
|
23
|
+
--ring: oklch(0.6171 0.1375 39.0427);
|
|
24
|
+
--chart-1: oklch(0.5583 0.1276 42.9956);
|
|
25
|
+
--chart-2: oklch(0.6898 0.1581 290.4107);
|
|
26
|
+
--chart-3: oklch(0.8816 0.0276 93.128);
|
|
27
|
+
--chart-4: oklch(0.8822 0.0403 298.1792);
|
|
28
|
+
--chart-5: oklch(0.5608 0.1348 42.0584);
|
|
29
|
+
--sidebar: oklch(0.9663 0.008 98.8792);
|
|
30
|
+
--sidebar-foreground: oklch(0.359 0.0051 106.6524);
|
|
31
|
+
--sidebar-primary: oklch(0.6171 0.1375 39.0427);
|
|
32
|
+
--sidebar-primary-foreground: oklch(0.9881 0 0);
|
|
33
|
+
--sidebar-accent: oklch(0.9245 0.0138 92.9892);
|
|
34
|
+
--sidebar-accent-foreground: oklch(0.325 0 0);
|
|
35
|
+
--sidebar-border: oklch(0.9401 0 0);
|
|
36
|
+
--sidebar-ring: oklch(0.7731 0 0);
|
|
37
|
+
--font-sans:
|
|
38
|
+
ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial,
|
|
39
|
+
"Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
|
|
40
|
+
--font-serif: ui-serif, Georgia, Cambria, "Times New Roman", Times, serif;
|
|
41
|
+
--font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
|
|
42
|
+
--radius: 0.5rem;
|
|
43
|
+
--shadow-2xs: 0 1px 3px 0px hsl(0 0% 0% / 0.05);
|
|
44
|
+
--shadow-xs: 0 1px 3px 0px hsl(0 0% 0% / 0.05);
|
|
45
|
+
--shadow-sm: 0 1px 3px 0px hsl(0 0% 0% / 0.1), 0 1px 2px -1px hsl(0 0% 0% / 0.1);
|
|
46
|
+
--shadow: 0 1px 3px 0px hsl(0 0% 0% / 0.1), 0 1px 2px -1px hsl(0 0% 0% / 0.1);
|
|
47
|
+
--shadow-md: 0 1px 3px 0px hsl(0 0% 0% / 0.1), 0 2px 4px -1px hsl(0 0% 0% / 0.1);
|
|
48
|
+
--shadow-lg: 0 1px 3px 0px hsl(0 0% 0% / 0.1), 0 4px 6px -1px hsl(0 0% 0% / 0.1);
|
|
49
|
+
--shadow-xl: 0 1px 3px 0px hsl(0 0% 0% / 0.1), 0 8px 10px -1px hsl(0 0% 0% / 0.1);
|
|
50
|
+
--shadow-2xl: 0 1px 3px 0px hsl(0 0% 0% / 0.25);
|
|
51
|
+
--tracking-normal: 0em;
|
|
52
|
+
--spacing: 0.25rem;
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
.dark {
|
|
56
|
+
--background: oklch(0.2679 0.0036 106.6427);
|
|
57
|
+
--foreground: oklch(0.8074 0.0142 93.0137);
|
|
58
|
+
--card: oklch(0.2679 0.0036 106.6427);
|
|
59
|
+
--card-foreground: oklch(0.9818 0.0054 95.0986);
|
|
60
|
+
--popover: oklch(0.3085 0.0035 106.6039);
|
|
61
|
+
--popover-foreground: oklch(0.9211 0.004 106.4781);
|
|
62
|
+
--primary: oklch(0.6724 0.1308 38.7559);
|
|
63
|
+
--primary-foreground: oklch(1 0 0);
|
|
64
|
+
--secondary: oklch(0.9818 0.0054 95.0986);
|
|
65
|
+
--secondary-foreground: oklch(0.3085 0.0035 106.6039);
|
|
66
|
+
--muted: oklch(0.2213 0.0038 106.707);
|
|
67
|
+
--muted-foreground: oklch(0.7713 0.0169 99.0657);
|
|
68
|
+
--accent: oklch(0.213 0.0078 95.4245);
|
|
69
|
+
--accent-foreground: oklch(0.9663 0.008 98.8792);
|
|
70
|
+
--destructive: oklch(0.6368 0.2078 25.3313);
|
|
71
|
+
--destructive-foreground: oklch(1 0 0);
|
|
72
|
+
--border: oklch(0.3618 0.0101 106.8928);
|
|
73
|
+
--input: oklch(0.4336 0.0113 100.2195);
|
|
74
|
+
--ring: oklch(0.6724 0.1308 38.7559);
|
|
75
|
+
--chart-1: oklch(0.5583 0.1276 42.9956);
|
|
76
|
+
--chart-2: oklch(0.6898 0.1581 290.4107);
|
|
77
|
+
--chart-3: oklch(0.213 0.0078 95.4245);
|
|
78
|
+
--chart-4: oklch(0.3074 0.0516 289.323);
|
|
79
|
+
--chart-5: oklch(0.5608 0.1348 42.0584);
|
|
80
|
+
--sidebar: oklch(0.2357 0.0024 67.7077);
|
|
81
|
+
--sidebar-foreground: oklch(0.8074 0.0142 93.0137);
|
|
82
|
+
--sidebar-primary: oklch(0.325 0 0);
|
|
83
|
+
--sidebar-primary-foreground: oklch(0.9881 0 0);
|
|
84
|
+
--sidebar-accent: oklch(0.168 0.002 106.6177);
|
|
85
|
+
--sidebar-accent-foreground: oklch(0.8074 0.0142 93.0137);
|
|
86
|
+
--sidebar-border: oklch(0.9401 0 0);
|
|
87
|
+
--sidebar-ring: oklch(0.7731 0 0);
|
|
88
|
+
--font-sans:
|
|
89
|
+
ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial,
|
|
90
|
+
"Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
|
|
91
|
+
--font-serif: ui-serif, Georgia, Cambria, "Times New Roman", Times, serif;
|
|
92
|
+
--font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
|
|
93
|
+
--radius: 0.5rem;
|
|
94
|
+
--shadow-2xs: 0 1px 3px 0px hsl(0 0% 0% / 0.05);
|
|
95
|
+
--shadow-xs: 0 1px 3px 0px hsl(0 0% 0% / 0.05);
|
|
96
|
+
--shadow-sm: 0 1px 3px 0px hsl(0 0% 0% / 0.1), 0 1px 2px -1px hsl(0 0% 0% / 0.1);
|
|
97
|
+
--shadow: 0 1px 3px 0px hsl(0 0% 0% / 0.1), 0 1px 2px -1px hsl(0 0% 0% / 0.1);
|
|
98
|
+
--shadow-md: 0 1px 3px 0px hsl(0 0% 0% / 0.1), 0 2px 4px -1px hsl(0 0% 0% / 0.1);
|
|
99
|
+
--shadow-lg: 0 1px 3px 0px hsl(0 0% 0% / 0.1), 0 4px 6px -1px hsl(0 0% 0% / 0.1);
|
|
100
|
+
--shadow-xl: 0 1px 3px 0px hsl(0 0% 0% / 0.1), 0 8px 10px -1px hsl(0 0% 0% / 0.1);
|
|
101
|
+
--shadow-2xl: 0 1px 3px 0px hsl(0 0% 0% / 0.25);
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
@theme inline {
|
|
105
|
+
--color-background: var(--background);
|
|
106
|
+
--color-foreground: var(--foreground);
|
|
107
|
+
--color-card: var(--card);
|
|
108
|
+
--color-card-foreground: var(--card-foreground);
|
|
109
|
+
--color-popover: var(--popover);
|
|
110
|
+
--color-popover-foreground: var(--popover-foreground);
|
|
111
|
+
--color-primary: var(--primary);
|
|
112
|
+
--color-primary-foreground: var(--primary-foreground);
|
|
113
|
+
--color-secondary: var(--secondary);
|
|
114
|
+
--color-secondary-foreground: var(--secondary-foreground);
|
|
115
|
+
--color-muted: var(--muted);
|
|
116
|
+
--color-muted-foreground: var(--muted-foreground);
|
|
117
|
+
--color-accent: var(--accent);
|
|
118
|
+
--color-accent-foreground: var(--accent-foreground);
|
|
119
|
+
--color-destructive: var(--destructive);
|
|
120
|
+
--color-destructive-foreground: var(--destructive-foreground);
|
|
121
|
+
--color-border: var(--border);
|
|
122
|
+
--color-input: var(--input);
|
|
123
|
+
--color-ring: var(--ring);
|
|
124
|
+
--color-chart-1: var(--chart-1);
|
|
125
|
+
--color-chart-2: var(--chart-2);
|
|
126
|
+
--color-chart-3: var(--chart-3);
|
|
127
|
+
--color-chart-4: var(--chart-4);
|
|
128
|
+
--color-chart-5: var(--chart-5);
|
|
129
|
+
--color-sidebar: var(--sidebar);
|
|
130
|
+
--color-sidebar-foreground: var(--sidebar-foreground);
|
|
131
|
+
--color-sidebar-primary: var(--sidebar-primary);
|
|
132
|
+
--color-sidebar-primary-foreground: var(--sidebar-primary-foreground);
|
|
133
|
+
--color-sidebar-accent: var(--sidebar-accent);
|
|
134
|
+
--color-sidebar-accent-foreground: var(--sidebar-accent-foreground);
|
|
135
|
+
--color-sidebar-border: var(--sidebar-border);
|
|
136
|
+
--color-sidebar-ring: var(--sidebar-ring);
|
|
137
|
+
|
|
138
|
+
--font-family-sans: var(--font-sans);
|
|
139
|
+
--font-family-mono: var(--font-mono);
|
|
140
|
+
--font-family-serif: var(--font-serif);
|
|
141
|
+
|
|
142
|
+
--radius-sm: calc(var(--radius) - 4px);
|
|
143
|
+
--radius-md: calc(var(--radius) - 2px);
|
|
144
|
+
--radius-lg: var(--radius);
|
|
145
|
+
--radius-xl: calc(var(--radius) + 4px);
|
|
146
|
+
|
|
147
|
+
--shadow-2xs: var(--shadow-2xs);
|
|
148
|
+
--shadow-xs: var(--shadow-xs);
|
|
149
|
+
--shadow-sm: var(--shadow-sm);
|
|
150
|
+
--shadow: var(--shadow);
|
|
151
|
+
--shadow-md: var(--shadow-md);
|
|
152
|
+
--shadow-lg: var(--shadow-lg);
|
|
153
|
+
--shadow-xl: var(--shadow-xl);
|
|
154
|
+
--shadow-2xl: var(--shadow-2xl);
|
|
155
|
+
}
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
/* Import base styles including dark mode variant and utilities */
|
|
2
|
+
@import "../base.css";
|
|
3
|
+
|
|
4
|
+
:root {
|
|
5
|
+
--background: oklch(1 0 0);
|
|
6
|
+
--foreground: oklch(0.145 0 0);
|
|
7
|
+
--card: oklch(1 0 0);
|
|
8
|
+
--card-foreground: oklch(0.145 0 0);
|
|
9
|
+
--popover: oklch(1 0 0);
|
|
10
|
+
--popover-foreground: oklch(0.145 0 0);
|
|
11
|
+
--primary: oklch(0.205 0 0);
|
|
12
|
+
--primary-foreground: oklch(0.985 0 0);
|
|
13
|
+
--secondary: oklch(0.97 0 0);
|
|
14
|
+
--secondary-foreground: oklch(0.205 0 0);
|
|
15
|
+
--muted: oklch(0.97 0 0);
|
|
16
|
+
--muted-foreground: oklch(0.556 0 0);
|
|
17
|
+
--accent: oklch(0.97 0 0);
|
|
18
|
+
--accent-foreground: oklch(0.4 0.18 240);
|
|
19
|
+
--destructive: oklch(0.577 0.245 27.325);
|
|
20
|
+
--destructive-foreground: oklch(1 0 0);
|
|
21
|
+
--border: oklch(0.922 0 0);
|
|
22
|
+
--input: oklch(0.922 0 0);
|
|
23
|
+
--ring: oklch(0.708 0 0);
|
|
24
|
+
--chart-1: oklch(0.81 0.1 252);
|
|
25
|
+
--chart-2: oklch(53.553% 0.02798 259.829);
|
|
26
|
+
--chart-3: oklch(0.55 0.22 263);
|
|
27
|
+
--chart-4: oklch(0.49 0.22 264);
|
|
28
|
+
--chart-5: oklch(0.42 0.18 266);
|
|
29
|
+
--sidebar: oklch(0.985 0 0);
|
|
30
|
+
--sidebar-foreground: oklch(0.145 0 0);
|
|
31
|
+
--sidebar-primary: oklch(0.205 0 0);
|
|
32
|
+
--sidebar-primary-foreground: oklch(0.985 0 0);
|
|
33
|
+
--sidebar-accent: oklch(0.97 0 0);
|
|
34
|
+
--sidebar-accent-foreground: oklch(0.205 0 0);
|
|
35
|
+
--sidebar-border: oklch(0.922 0 0);
|
|
36
|
+
--sidebar-ring: oklch(0.708 0 0);
|
|
37
|
+
--font-sans:
|
|
38
|
+
ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial,
|
|
39
|
+
"Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
|
|
40
|
+
--font-serif: ui-serif, Georgia, Cambria, "Times New Roman", Times, serif;
|
|
41
|
+
--font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
|
|
42
|
+
--radius: 0.625rem;
|
|
43
|
+
--shadow-2xs: 0 1px 3px 0px hsl(0 0% 0% / 0.05);
|
|
44
|
+
--shadow-xs: 0 1px 3px 0px hsl(0 0% 0% / 0.05);
|
|
45
|
+
--shadow-sm: 0 1px 3px 0px hsl(0 0% 0% / 0.1), 0 1px 2px -1px hsl(0 0% 0% / 0.1);
|
|
46
|
+
--shadow: 0 1px 3px 0px hsl(0 0% 0% / 0.1), 0 1px 2px -1px hsl(0 0% 0% / 0.1);
|
|
47
|
+
--shadow-md: 0 1px 3px 0px hsl(0 0% 0% / 0.1), 0 2px 4px -1px hsl(0 0% 0% / 0.1);
|
|
48
|
+
--shadow-lg: 0 1px 3px 0px hsl(0 0% 0% / 0.1), 0 4px 6px -1px hsl(0 0% 0% / 0.1);
|
|
49
|
+
--shadow-xl: 0 1px 3px 0px hsl(0 0% 0% / 0.1), 0 8px 10px -1px hsl(0 0% 0% / 0.1);
|
|
50
|
+
--shadow-2xl: 0 1px 3px 0px hsl(0 0% 0% / 0.25);
|
|
51
|
+
--tracking-normal: 0em;
|
|
52
|
+
--spacing: 0.25rem;
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
.dark {
|
|
56
|
+
--background: oklch(0.145 0 0);
|
|
57
|
+
--foreground: oklch(0.985 0 0);
|
|
58
|
+
--card: oklch(0.205 0 0);
|
|
59
|
+
--card-foreground: oklch(0.985 0 0);
|
|
60
|
+
--popover: oklch(0.269 0 0);
|
|
61
|
+
--popover-foreground: oklch(0.985 0 0);
|
|
62
|
+
--primary: oklch(0.922 0 0);
|
|
63
|
+
--primary-foreground: oklch(0.205 0 0);
|
|
64
|
+
--secondary: oklch(0.269 0 0);
|
|
65
|
+
--secondary-foreground: oklch(0.985 0 0);
|
|
66
|
+
--muted: oklch(0.269 0 0);
|
|
67
|
+
--muted-foreground: oklch(0.708 0 0);
|
|
68
|
+
--accent: oklch(0.371 0 0);
|
|
69
|
+
--accent-foreground: oklch(0.75 0.18 85);
|
|
70
|
+
--destructive: oklch(0.704 0.191 22.216);
|
|
71
|
+
--destructive-foreground: oklch(0.985 0 0);
|
|
72
|
+
--border: oklch(0.275 0 0);
|
|
73
|
+
--input: oklch(0.325 0 0);
|
|
74
|
+
--ring: oklch(0.556 0 0);
|
|
75
|
+
--chart-1: oklch(0.81 0.1 252);
|
|
76
|
+
--chart-2: oklch(0.62 0.19 260);
|
|
77
|
+
--chart-3: oklch(0.55 0.22 263);
|
|
78
|
+
--chart-4: oklch(0.49 0.22 264);
|
|
79
|
+
--chart-5: oklch(0.42 0.18 266);
|
|
80
|
+
--sidebar: oklch(0.205 0 0);
|
|
81
|
+
--sidebar-foreground: oklch(0.985 0 0);
|
|
82
|
+
--sidebar-primary: oklch(0.488 0.243 264.376);
|
|
83
|
+
--sidebar-primary-foreground: oklch(0.985 0 0);
|
|
84
|
+
--sidebar-accent: oklch(0.269 0 0);
|
|
85
|
+
--sidebar-accent-foreground: oklch(0.985 0 0);
|
|
86
|
+
--sidebar-border: oklch(0.275 0 0);
|
|
87
|
+
--sidebar-ring: oklch(0.439 0 0);
|
|
88
|
+
--font-sans:
|
|
89
|
+
ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial,
|
|
90
|
+
"Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
|
|
91
|
+
--font-serif: ui-serif, Georgia, Cambria, "Times New Roman", Times, serif;
|
|
92
|
+
--font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
|
|
93
|
+
--radius: 0.625rem;
|
|
94
|
+
--shadow-2xs: 0 1px 3px 0px hsl(0 0% 0% / 0.05);
|
|
95
|
+
--shadow-xs: 0 1px 3px 0px hsl(0 0% 0% / 0.05);
|
|
96
|
+
--shadow-sm: 0 1px 3px 0px hsl(0 0% 0% / 0.1), 0 1px 2px -1px hsl(0 0% 0% / 0.1);
|
|
97
|
+
--shadow: 0 1px 3px 0px hsl(0 0% 0% / 0.1), 0 1px 2px -1px hsl(0 0% 0% / 0.1);
|
|
98
|
+
--shadow-md: 0 1px 3px 0px hsl(0 0% 0% / 0.1), 0 2px 4px -1px hsl(0 0% 0% / 0.1);
|
|
99
|
+
--shadow-lg: 0 1px 3px 0px hsl(0 0% 0% / 0.1), 0 4px 6px -1px hsl(0 0% 0% / 0.1);
|
|
100
|
+
--shadow-xl: 0 1px 3px 0px hsl(0 0% 0% / 0.1), 0 8px 10px -1px hsl(0 0% 0% / 0.1);
|
|
101
|
+
--shadow-2xl: 0 1px 3px 0px hsl(0 0% 0% / 0.25);
|
|
102
|
+
}
|
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
/* Markdown content styles using Tailwind utilities */
|
|
2
|
+
|
|
3
|
+
.markdown-content h1 {
|
|
4
|
+
@apply text-2xl font-semibold mt-5 mb-2;
|
|
5
|
+
}
|
|
6
|
+
|
|
7
|
+
.markdown-content h2 {
|
|
8
|
+
@apply text-xl font-semibold mt-4 mb-2;
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
.markdown-content h3 {
|
|
12
|
+
@apply text-lg font-semibold mt-3 mb-2;
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
.markdown-content h4 {
|
|
16
|
+
@apply text-base font-semibold mt-3 mb-2;
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
.markdown-content h5 {
|
|
20
|
+
@apply text-sm font-semibold mt-2 mb-1;
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
.markdown-content h6 {
|
|
24
|
+
@apply text-xs font-semibold mt-2 mb-1;
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
.markdown-content p {
|
|
28
|
+
@apply leading-relaxed mt-4 first:mt-0 max-w-full;
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
.markdown-content a {
|
|
32
|
+
@apply text-primary underline hover:text-primary/80;
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
.markdown-content strong {
|
|
36
|
+
@apply font-semibold;
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
.markdown-content em {
|
|
40
|
+
@apply italic;
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
.markdown-content ul {
|
|
44
|
+
@apply list-disc my-4 pl-6 space-y-2;
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
.markdown-content ol {
|
|
48
|
+
@apply list-decimal my-4 pl-6 space-y-2;
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
.markdown-content li {
|
|
52
|
+
@apply leading-relaxed;
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
/* Nested lists should have less top margin */
|
|
56
|
+
.markdown-content li > ul,
|
|
57
|
+
.markdown-content li > ol {
|
|
58
|
+
@apply mt-2 mb-0;
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
/* Paragraphs in lists need proper spacing */
|
|
62
|
+
.markdown-content li > p {
|
|
63
|
+
@apply mb-2;
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
.markdown-content li > p:last-child {
|
|
67
|
+
@apply mb-0;
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
.markdown-content blockquote {
|
|
71
|
+
@apply border-l-4 border-border pl-4 my-4 text-muted-foreground;
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
.markdown-content code:not(.hljs) {
|
|
75
|
+
@apply bg-muted text-foreground px-1.5 py-0.5 rounded text-sm;
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
.markdown-content table {
|
|
79
|
+
@apply w-full border-collapse m-0;
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
.markdown-content th {
|
|
83
|
+
@apply bg-muted text-foreground font-semibold p-2 border-b border-r border-border text-left;
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
.markdown-content th:last-child {
|
|
87
|
+
@apply border-r-0;
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
.markdown-content td {
|
|
91
|
+
@apply p-2 text-foreground border-b border-r border-border;
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
.markdown-content td:last-child {
|
|
95
|
+
@apply border-r-0;
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
.markdown-content tr:last-child td {
|
|
99
|
+
@apply border-b-0;
|
|
100
|
+
}
|
|
101
|
+
|
|
102
|
+
.markdown-content hr {
|
|
103
|
+
@apply border-0 border-t border-border my-8;
|
|
104
|
+
}
|
|
@@ -0,0 +1,134 @@
|
|
|
1
|
+
/* Syntax highlighting colors - GitHub Light theme (default) */
|
|
2
|
+
:root {
|
|
3
|
+
--syntax-keyword: oklch(0.577 0.245 27.325); /* #d73a49 */
|
|
4
|
+
--syntax-entity: oklch(0.511 0.136 307.715); /* #6f42c1 */
|
|
5
|
+
--syntax-constant: oklch(0.435 0.141 237.016); /* #005cc5 */
|
|
6
|
+
--syntax-string: oklch(0.296 0.103 244.038); /* #032f62 */
|
|
7
|
+
--syntax-variable: oklch(0.608 0.178 54.291); /* #e36209 */
|
|
8
|
+
--syntax-comment: oklch(0.54 0.019 247.858); /* #6a737d */
|
|
9
|
+
--syntax-tag: oklch(0.403 0.111 145.348); /* #22863a */
|
|
10
|
+
--syntax-heading: oklch(0.435 0.141 237.016); /* #005cc5 */
|
|
11
|
+
--syntax-list: oklch(0.537 0.108 88.766); /* #735c0f */
|
|
12
|
+
--syntax-addition-bg: oklch(0.984 0.029 166.113); /* #f0fff4 */
|
|
13
|
+
--syntax-addition-fg: oklch(0.403 0.111 145.348); /* #22863a */
|
|
14
|
+
--syntax-deletion-bg: oklch(0.981 0.025 17.672); /* #ffeef0 */
|
|
15
|
+
--syntax-deletion-fg: oklch(0.431 0.183 27.522); /* #b31d28 */
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
/* Syntax highlighting colors - GitHub Dark theme */
|
|
19
|
+
.dark {
|
|
20
|
+
--syntax-keyword: oklch(0.698 0.159 21.174); /* #ff7b72 */
|
|
21
|
+
--syntax-entity: oklch(0.792 0.124 307.715); /* #d2a8ff */
|
|
22
|
+
--syntax-constant: oklch(0.732 0.137 237.016); /* #79c0ff */
|
|
23
|
+
--syntax-string: oklch(0.786 0.08 237.016); /* #a5d6ff */
|
|
24
|
+
--syntax-variable: oklch(0.74 0.141 54.291); /* #ffa657 */
|
|
25
|
+
--syntax-comment: oklch(0.626 0.025 247.858); /* #8b949e */
|
|
26
|
+
--syntax-tag: oklch(0.812 0.159 145.348); /* #7ee787 */
|
|
27
|
+
--syntax-heading: oklch(0.523 0.181 237.016); /* #1f6feb */
|
|
28
|
+
--syntax-list: oklch(0.866 0.141 88.766); /* #f2cc60 */
|
|
29
|
+
--syntax-addition-bg: oklch(0.188 0.06 166.113); /* #033a16 */
|
|
30
|
+
--syntax-addition-fg: oklch(0.87 0.147 145.348); /* #aff5b4 */
|
|
31
|
+
--syntax-deletion-bg: oklch(0.233 0.129 17.672); /* #67060c */
|
|
32
|
+
--syntax-deletion-fg: oklch(0.92 0.067 17.672); /* #ffdcd7 */
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
/* Keywords */
|
|
36
|
+
.hljs-doctag,
|
|
37
|
+
.hljs-keyword,
|
|
38
|
+
.hljs-meta .hljs-keyword,
|
|
39
|
+
.hljs-template-tag,
|
|
40
|
+
.hljs-template-variable,
|
|
41
|
+
.hljs-type,
|
|
42
|
+
.hljs-variable.language_ {
|
|
43
|
+
color: var(--syntax-keyword);
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
/* Entity (functions, classes) */
|
|
47
|
+
.hljs-title,
|
|
48
|
+
.hljs-title.class_,
|
|
49
|
+
.hljs-title.class_.inherited__,
|
|
50
|
+
.hljs-title.function_ {
|
|
51
|
+
color: var(--syntax-entity);
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
/* Constants */
|
|
55
|
+
.hljs-attr,
|
|
56
|
+
.hljs-attribute,
|
|
57
|
+
.hljs-literal,
|
|
58
|
+
.hljs-meta,
|
|
59
|
+
.hljs-number,
|
|
60
|
+
.hljs-operator,
|
|
61
|
+
.hljs-variable,
|
|
62
|
+
.hljs-selector-attr,
|
|
63
|
+
.hljs-selector-class,
|
|
64
|
+
.hljs-selector-id {
|
|
65
|
+
color: var(--syntax-constant);
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
/* Strings */
|
|
69
|
+
.hljs-regexp,
|
|
70
|
+
.hljs-string,
|
|
71
|
+
.hljs-meta .hljs-string {
|
|
72
|
+
color: var(--syntax-string);
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
/* Built-in variables */
|
|
76
|
+
.hljs-built_in,
|
|
77
|
+
.hljs-symbol {
|
|
78
|
+
color: var(--syntax-variable);
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
/* Comments */
|
|
82
|
+
.hljs-comment,
|
|
83
|
+
.hljs-code,
|
|
84
|
+
.hljs-formula {
|
|
85
|
+
color: var(--syntax-comment);
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
/* Tags */
|
|
89
|
+
.hljs-name,
|
|
90
|
+
.hljs-quote,
|
|
91
|
+
.hljs-selector-tag,
|
|
92
|
+
.hljs-selector-pseudo {
|
|
93
|
+
color: var(--syntax-tag);
|
|
94
|
+
}
|
|
95
|
+
|
|
96
|
+
/* Default text */
|
|
97
|
+
.hljs-subst {
|
|
98
|
+
color: var(--color-text-primary);
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
/* Section headings */
|
|
102
|
+
.hljs-section {
|
|
103
|
+
color: var(--syntax-heading);
|
|
104
|
+
font-weight: bold;
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
/* Bullets */
|
|
108
|
+
.hljs-bullet {
|
|
109
|
+
color: var(--syntax-list);
|
|
110
|
+
}
|
|
111
|
+
|
|
112
|
+
/* Emphasis */
|
|
113
|
+
.hljs-emphasis {
|
|
114
|
+
color: var(--color-text-primary);
|
|
115
|
+
font-style: italic;
|
|
116
|
+
}
|
|
117
|
+
|
|
118
|
+
/* Strong */
|
|
119
|
+
.hljs-strong {
|
|
120
|
+
color: var(--color-text-primary);
|
|
121
|
+
font-weight: bold;
|
|
122
|
+
}
|
|
123
|
+
|
|
124
|
+
/* Additions */
|
|
125
|
+
.hljs-addition {
|
|
126
|
+
color: var(--syntax-addition-fg);
|
|
127
|
+
background-color: var(--syntax-addition-bg);
|
|
128
|
+
}
|
|
129
|
+
|
|
130
|
+
/* Deletions */
|
|
131
|
+
.hljs-deletion {
|
|
132
|
+
color: var(--syntax-deletion-fg);
|
|
133
|
+
background-color: var(--syntax-deletion-bg);
|
|
134
|
+
}
|