diff --git a/.eslintrc.cjs b/.eslintrc.cjs index 0b75758..d4943d2 100644 --- a/.eslintrc.cjs +++ b/.eslintrc.cjs @@ -1,31 +1,31 @@ /** @type { import("eslint").Linter.Config } */ module.exports = { - root: true, - extends: [ - 'eslint:recommended', - 'plugin:@typescript-eslint/recommended', - 'plugin:svelte/recommended', - 'prettier' - ], - parser: '@typescript-eslint/parser', - plugins: ['@typescript-eslint'], - parserOptions: { - sourceType: 'module', - ecmaVersion: 2020, - extraFileExtensions: ['.svelte'] - }, - env: { - browser: true, - es2017: true, - node: true - }, - overrides: [ - { - files: ['*.svelte'], - parser: 'svelte-eslint-parser', - parserOptions: { - parser: '@typescript-eslint/parser' - } - } - ] -}; + root: true, + extends: [ + 'eslint:recommended', + 'plugin:@typescript-eslint/recommended', + 'plugin:svelte/recommended', + 'prettier' + ], + parser: '@typescript-eslint/parser', + plugins: ['@typescript-eslint'], + parserOptions: { + sourceType: 'module', + ecmaVersion: 2020, + extraFileExtensions: ['.svelte'] + }, + env: { + browser: true, + es2017: true, + node: true + }, + overrides: [ + { + files: ['*.svelte'], + parser: 'svelte-eslint-parser', + parserOptions: { + parser: '@typescript-eslint/parser' + } + } + ] +} diff --git a/.prettierrc.toml b/.prettierrc.toml index d820ec0..1fe7d42 100644 --- a/.prettierrc.toml +++ b/.prettierrc.toml @@ -1,7 +1,8 @@ overrides = [{ "files" = "*.svelte", "options" = { "parser" = "svelte" } }] -useTabs = true +useTabs = false singleQuote = true trailingComma = "none" printWidth = 100 proseWrap = "always" plugins = ["prettier-plugin-svelte"] +semi = false diff --git a/.vscode/settings.json b/.vscode/settings.json index 222aafe..0d300b7 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -1,4 +1,4 @@ { - "css.customData": [".vscode/tailwind.json"], - "scss.lint.unknownAtRules": "ignore" + "css.customData": [".vscode/tailwind.json"], + "scss.lint.unknownAtRules": "ignore" } diff --git a/.vscode/tailwind.json b/.vscode/tailwind.json index a45bccc..96a1f57 100644 --- a/.vscode/tailwind.json +++ b/.vscode/tailwind.json @@ -1,55 +1,55 @@ { - "version": 1.1, - "atDirectives": [ - { - "name": "@tailwind", - "description": "Use the `@tailwind` directive to insert Tailwind's `base`, `components`, `utilities` and `screens` styles into your CSS.", - "references": [ - { - "name": "Tailwind Documentation", - "url": "https://tailwindcss.com/docs/functions-and-directives#tailwind" - } - ] - }, - { - "name": "@apply", - "description": "Use the `@apply` directive to inline any existing utility classes into your own custom CSS. This is useful when you find a common utility pattern in your HTML that you’d like to extract to a new component.", - "references": [ - { - "name": "Tailwind Documentation", - "url": "https://tailwindcss.com/docs/functions-and-directives#apply" - } - ] - }, - { - "name": "@responsive", - "description": "You can generate responsive variants of your own classes by wrapping their definitions in the `@responsive` directive:\n```css\n@responsive {\n .alert {\n background-color: #E53E3E;\n }\n}\n```\n", - "references": [ - { - "name": "Tailwind Documentation", - "url": "https://tailwindcss.com/docs/functions-and-directives#responsive" - } - ] - }, - { - "name": "@screen", - "description": "The `@screen` directive allows you to create media queries that reference your breakpoints by **name** instead of duplicating their values in your own CSS:\n```css\n@screen sm {\n /* ... */\n}\n```\n…gets transformed into this:\n```css\n@media (min-width: 640px) {\n /* ... */\n}\n```\n", - "references": [ - { - "name": "Tailwind Documentation", - "url": "https://tailwindcss.com/docs/functions-and-directives#screen" - } - ] - }, - { - "name": "@variants", - "description": "Generate `hover`, `focus`, `active` and other **variants** of your own utilities by wrapping their definitions in the `@variants` directive:\n```css\n@variants hover, focus {\n .btn-brand {\n background-color: #3182CE;\n }\n}\n```\n", - "references": [ - { - "name": "Tailwind Documentation", - "url": "https://tailwindcss.com/docs/functions-and-directives#variants" - } - ] - } - ] + "version": 1.1, + "atDirectives": [ + { + "name": "@tailwind", + "description": "Use the `@tailwind` directive to insert Tailwind's `base`, `components`, `utilities` and `screens` styles into your CSS.", + "references": [ + { + "name": "Tailwind Documentation", + "url": "https://tailwindcss.com/docs/functions-and-directives#tailwind" + } + ] + }, + { + "name": "@apply", + "description": "Use the `@apply` directive to inline any existing utility classes into your own custom CSS. This is useful when you find a common utility pattern in your HTML that you’d like to extract to a new component.", + "references": [ + { + "name": "Tailwind Documentation", + "url": "https://tailwindcss.com/docs/functions-and-directives#apply" + } + ] + }, + { + "name": "@responsive", + "description": "You can generate responsive variants of your own classes by wrapping their definitions in the `@responsive` directive:\n```css\n@responsive {\n .alert {\n background-color: #E53E3E;\n }\n}\n```\n", + "references": [ + { + "name": "Tailwind Documentation", + "url": "https://tailwindcss.com/docs/functions-and-directives#responsive" + } + ] + }, + { + "name": "@screen", + "description": "The `@screen` directive allows you to create media queries that reference your breakpoints by **name** instead of duplicating their values in your own CSS:\n```css\n@screen sm {\n /* ... */\n}\n```\n…gets transformed into this:\n```css\n@media (min-width: 640px) {\n /* ... */\n}\n```\n", + "references": [ + { + "name": "Tailwind Documentation", + "url": "https://tailwindcss.com/docs/functions-and-directives#screen" + } + ] + }, + { + "name": "@variants", + "description": "Generate `hover`, `focus`, `active` and other **variants** of your own utilities by wrapping their definitions in the `@variants` directive:\n```css\n@variants hover, focus {\n .btn-brand {\n background-color: #3182CE;\n }\n}\n```\n", + "references": [ + { + "name": "Tailwind Documentation", + "url": "https://tailwindcss.com/docs/functions-and-directives#variants" + } + ] + } + ] } diff --git a/components.json b/components.json index 5e11768..1972f24 100644 --- a/components.json +++ b/components.json @@ -1,14 +1,14 @@ { - "$schema": "https://shadcn-svelte.com/schema.json", - "style": "new-york", - "tailwind": { - "config": "tailwind.config.js", - "css": "src/lib/app.pcss", - "baseColor": "zinc" - }, - "aliases": { - "components": "$lib/components", - "utils": "$lib/utils" - }, - "typescript": true + "$schema": "https://shadcn-svelte.com/schema.json", + "style": "new-york", + "tailwind": { + "config": "tailwind.config.js", + "css": "src/lib/app.pcss", + "baseColor": "zinc" + }, + "aliases": { + "components": "$lib/components", + "utils": "$lib/utils" + }, + "typescript": true } diff --git a/package.json b/package.json index 6d2119a..af44fbb 100644 --- a/package.json +++ b/package.json @@ -1,75 +1,75 @@ { - "name": "coredump", - "version": "0.0.1", - "private": true, - "scripts": { - "dev": "vite dev", - "build": "vite build", - "preview": "vite preview", - "test": "playwright test", - "check": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json", - "check:watch": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json --watch", - "lint": "prettier --check . && eslint .", - "format": "prettier --write ." - }, - "devDependencies": { - "@playwright/test": "^1.28.1", - "@sveltejs/kit": "^2.0.0", - "@sveltejs/vite-plugin-svelte": "^3.0.0", - "@types/eslint": "^8.56.0", - "@typescript-eslint/eslint-plugin": "^7.0.0", - "@typescript-eslint/parser": "^7.0.0", - "autoprefixer": "^10.4.19", - "eslint": "^8.56.0", - "eslint-config-prettier": "^9.1.0", - "eslint-plugin-svelte": "^2.35.1", - "postcss": "^8.4.38", - "prettier": "^3.1.1", - "prettier-plugin-svelte": "^3.1.2", - "svelte": "^4.2.7", - "svelte-check": "^3.6.0", - "svelte-typewriter": "^3.2.3", - "tailwindcss": "^3.4.3", - "tslib": "^2.4.1", - "typescript": "^5.0.0", - "vite": "^5.0.3" - }, - "type": "module", - "trustedDependencies": [ - "svelte-preprocess", - "@sveltejs/kit", - "esbuild", - "@sveltejs/adapter-vercel" - ], - "dependencies": { - "@fontsource/geist-mono": "^5.0.2", - "@fontsource/geist-sans": "^5.0.2", - "@fontsource/merriweather": "^5.0.12", - "@fontsource/zilla-slab": "^5.0.12", - "@svelte-put/toc": "^5.0.1", - "@sveltejs/adapter-vercel": "^5.2.0", - "@types/node": "^20.12.5", - "bits-ui": "^0.21.2", - "clsx": "^2.1.0", - "coredump": "link:", - "dayjs": "^1.11.10", - "mode-watcher": "^0.3.0", - "rehype-highlight": "^7.0.0", - "rehype-katex": "^7.0.0", - "rehype-stringify": "^10.0.0", - "remark-gfm": "^4.0.0", - "remark-gh-alerts": "^0.0.3", - "remark-math": "^6.0.0", - "remark-parse": "^11.0.0", - "remark-rehype": "^11.1.0", - "remark-sectionize": "^2.0.0", - "svelte-radix": "^1.1.0", - "svelte-sonner": "^0.3.21", - "tailwind-merge": "^2.2.2", - "tailwind-variants": "^0.2.1", - "toml": "^3.0.0", - "unified": "^11.0.4", - "vaul-svelte": "^0.3.0" - }, - "packageManager": "pnpm@8.15.5+sha1.a58c038faac410c947dbdb93eb30994037d0fce2" + "name": "coredump", + "version": "0.0.1", + "private": true, + "scripts": { + "dev": "vite dev", + "build": "vite build", + "preview": "vite preview", + "test": "playwright test", + "check": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json", + "check:watch": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json --watch", + "lint": "prettier --check . && eslint .", + "format": "prettier --write ." + }, + "devDependencies": { + "@playwright/test": "^1.28.1", + "@sveltejs/kit": "^2.0.0", + "@sveltejs/vite-plugin-svelte": "^3.0.0", + "@types/eslint": "^8.56.0", + "@typescript-eslint/eslint-plugin": "^7.0.0", + "@typescript-eslint/parser": "^7.0.0", + "autoprefixer": "^10.4.19", + "eslint": "^8.56.0", + "eslint-config-prettier": "^9.1.0", + "eslint-plugin-svelte": "^2.35.1", + "postcss": "^8.4.38", + "prettier": "^3.1.1", + "prettier-plugin-svelte": "^3.1.2", + "svelte": "^4.2.7", + "svelte-check": "^3.6.0", + "svelte-typewriter": "^3.2.3", + "tailwindcss": "^3.4.3", + "tslib": "^2.4.1", + "typescript": "^5.0.0", + "vite": "^5.0.3" + }, + "type": "module", + "trustedDependencies": [ + "svelte-preprocess", + "@sveltejs/kit", + "esbuild", + "@sveltejs/adapter-vercel" + ], + "dependencies": { + "@fontsource/geist-mono": "^5.0.2", + "@fontsource/geist-sans": "^5.0.2", + "@fontsource/merriweather": "^5.0.12", + "@fontsource/zilla-slab": "^5.0.12", + "@svelte-put/toc": "^5.0.1", + "@sveltejs/adapter-vercel": "^5.2.0", + "@types/node": "^20.12.5", + "bits-ui": "^0.21.2", + "clsx": "^2.1.0", + "coredump": "link:", + "dayjs": "^1.11.10", + "mode-watcher": "^0.3.0", + "rehype-highlight": "^7.0.0", + "rehype-katex": "^7.0.0", + "rehype-stringify": "^10.0.0", + "remark-gfm": "^4.0.0", + "remark-gh-alerts": "^0.0.3", + "remark-math": "^6.0.0", + "remark-parse": "^11.0.0", + "remark-rehype": "^11.1.0", + "remark-sectionize": "^2.0.0", + "svelte-radix": "^1.1.0", + "svelte-sonner": "^0.3.21", + "tailwind-merge": "^2.2.2", + "tailwind-variants": "^0.2.1", + "toml": "^3.0.0", + "unified": "^11.0.4", + "vaul-svelte": "^0.3.0" + }, + "packageManager": "pnpm@8.15.5+sha1.a58c038faac410c947dbdb93eb30994037d0fce2" } diff --git a/playwright.config.ts b/playwright.config.ts index 1c5d7a1..1ee99f1 100644 --- a/playwright.config.ts +++ b/playwright.config.ts @@ -1,12 +1,12 @@ -import type { PlaywrightTestConfig } from '@playwright/test'; +import type { PlaywrightTestConfig } from '@playwright/test' const config: PlaywrightTestConfig = { - webServer: { - command: 'npm run build && npm run preview', - port: 4173 - }, - testDir: 'tests', - testMatch: /(.+\.)?(test|spec)\.[jt]s/ -}; + webServer: { + command: 'npm run build && npm run preview', + port: 4173 + }, + testDir: 'tests', + testMatch: /(.+\.)?(test|spec)\.[jt]s/ +} -export default config; +export default config diff --git a/post.schema.json b/post.schema.json index 7b08993..977025b 100644 --- a/post.schema.json +++ b/post.schema.json @@ -1,90 +1,90 @@ { - "$schema": "http://json-schema.org/draft-07/schema#", - "type": "object", - "properties": { - "title": { - "type": "string" - }, - "manifest": { - "type": "object", - "properties": { - "date": { - "type": "string", - "format": "date-time" - }, - "blurb": { - "type": "string" - }, - "description": { - "type": "string" - }, - "type": { - "type": "string" - }, - "authors": { - "type": "array", - "items": { - "type": "string" - } - }, - "tags": { - "type": "object", - "properties": { - "primary": { - "type": "array", - "items": { - "type": "string" - } - }, - "secondary": { - "type": "array", - "items": { - "type": "string" - } - } - }, - "required": ["primary", "secondary"] - } - }, - "required": ["date", "blurb", "description", "type", "authors", "tags"] - }, - "cover": { - "type": "object", - "properties": { - "src": { - "type": "string", - "format": "uri" - }, - "alt": { - "type": "string" - }, - "caption": { - "type": "string" - } - }, - "required": ["src", "alt", "caption"] - } - }, - "required": ["title", "manifest", "cover"], - "optional": { - "type": "object", - "properties": { - "deps": { - "type": "object", - "properties": { - "external": { - "type": "object", - "properties": { - "styles": { - "type": "array", - "items": { - "type": "string" - } - } - } - } - } - } - } - } + "$schema": "http://json-schema.org/draft-07/schema#", + "type": "object", + "properties": { + "title": { + "type": "string" + }, + "manifest": { + "type": "object", + "properties": { + "date": { + "type": "string", + "format": "date-time" + }, + "blurb": { + "type": "string" + }, + "description": { + "type": "string" + }, + "type": { + "type": "string" + }, + "authors": { + "type": "array", + "items": { + "type": "string" + } + }, + "tags": { + "type": "object", + "properties": { + "primary": { + "type": "array", + "items": { + "type": "string" + } + }, + "secondary": { + "type": "array", + "items": { + "type": "string" + } + } + }, + "required": ["primary", "secondary"] + } + }, + "required": ["date", "blurb", "description", "type", "authors", "tags"] + }, + "cover": { + "type": "object", + "properties": { + "src": { + "type": "string", + "format": "uri" + }, + "alt": { + "type": "string" + }, + "caption": { + "type": "string" + } + }, + "required": ["src", "alt", "caption"] + } + }, + "required": ["title", "manifest", "cover"], + "optional": { + "type": "object", + "properties": { + "deps": { + "type": "object", + "properties": { + "external": { + "type": "object", + "properties": { + "styles": { + "type": "array", + "items": { + "type": "string" + } + } + } + } + } + } + } + } } diff --git a/postcss.config.js b/postcss.config.js index 0f77216..2b75bd8 100644 --- a/postcss.config.js +++ b/postcss.config.js @@ -1,6 +1,6 @@ export default { - plugins: { - tailwindcss: {}, - autoprefixer: {} - } -}; + plugins: { + tailwindcss: {}, + autoprefixer: {} + } +} diff --git a/src/app.d.ts b/src/app.d.ts index 743f07b..367926a 100644 --- a/src/app.d.ts +++ b/src/app.d.ts @@ -1,13 +1,13 @@ // See https://kit.svelte.dev/docs/types#app // for information about these interfaces declare global { - namespace App { - // interface Error {} - // interface Locals {} - // interface PageData {} - // interface PageState {} - // interface Platform {} - } + namespace App { + // interface Error {} + // interface Locals {} + // interface PageData {} + // interface PageState {} + // interface Platform {} + } } -export {}; +export {} diff --git a/src/app.html b/src/app.html index 9c1b021..aafa897 100644 --- a/src/app.html +++ b/src/app.html @@ -1,22 +1,22 @@ - - - - - - - %sveltekit.head% - - -
%sveltekit.body%
- + + + + + + + %sveltekit.head% + + +
%sveltekit.body%
+ diff --git a/src/globals.d.ts b/src/globals.d.ts index 8cebc8f..e6bfef7 100644 --- a/src/globals.d.ts +++ b/src/globals.d.ts @@ -1,35 +1,35 @@ interface BlogDocument { - date: Date; - title: string; - content: string; - primaryTags: string[]; - secondaryTags: string[]; - blurb: string; - image: { src: string; alt: string; caption: string }; - description: string; - slug: string; + date: Date + title: string + content: string + primaryTags: string[] + secondaryTags: string[] + blurb: string + image: { src: string; alt: string; caption: string } + description: string + slug: string } -declare module 'remark-sectionize'; +declare module 'remark-sectionize' type PostMeta = { - title: string; - manifest: { - authors: string[]; - date: Date; - tags: { primary: string[]; secondary: string[] }; - blurb: string; - description: string; - highlight: boolean; - }; - cover: { - src: string; - alt: string; - caption: string; - }; - deps?: { - external?: { - styles?: string[]; - }; - }; -}; + title: string + manifest: { + authors: string[] + date: Date + tags: { primary: string[]; secondary: string[] } + blurb: string + description: string + highlight: boolean + } + cover: { + src: string + alt: string + caption: string + } + deps?: { + external?: { + styles?: string[] + } + } +} diff --git a/src/lib/app.pcss b/src/lib/app.pcss index ab32552..e6f9756 100644 --- a/src/lib/app.pcss +++ b/src/lib/app.pcss @@ -3,112 +3,112 @@ @tailwind utilities; @layer base { - :root { - --background: 0 0% 93%; - --foreground: 240 10% 3.9%; + :root { + --background: 0 0% 93%; + --foreground: 240 10% 3.9%; - --muted: 240 4.8% 90%; - --muted-foreground: 240 3.8% 46.1%; + --muted: 240 4.8% 90%; + --muted-foreground: 240 3.8% 46.1%; - --popover: 0 0% 96%; - --popover-foreground: 240 10% 3.9%; + --popover: 0 0% 96%; + --popover-foreground: 240 10% 3.9%; - --card: 0 0% 96%; - --card-foreground: 240 10% 3.9%; + --card: 0 0% 96%; + --card-foreground: 240 10% 3.9%; - --border: 240 5.9% 90%; - --input: 240 5.9% 90%; + --border: 240 5.9% 90%; + --input: 240 5.9% 90%; - --primary: 240 5.9% 10%; - --primary-foreground: 0 0% 98%; + --primary: 240 5.9% 10%; + --primary-foreground: 0 0% 98%; - --secondary: 240 4.8% 90%; - --secondary-foreground: 240 5.9% 12%; + --secondary: 240 4.8% 90%; + --secondary-foreground: 240 5.9% 12%; - --accent: 240 4.8% 90%; - --accent-foreground: 240 5.9% 12%; + --accent: 240 4.8% 90%; + --accent-foreground: 240 5.9% 12%; - --destructive: 0 72.2% 50.6%; - --destructive-foreground: 0 0% 98%; + --destructive: 0 72.2% 50.6%; + --destructive-foreground: 0 0% 98%; - --ring: 240 10% 3.9%; + --ring: 240 10% 3.9%; - --radius: 0.5rem; + --radius: 0.5rem; - --cursor-color: theme('colors.foreground'); - } + --cursor-color: theme('colors.foreground'); + } - .dark { - --background: 240 10% 7%; - --foreground: 0 0% 98%; + .dark { + --background: 240 10% 7%; + --foreground: 0 0% 98%; - --muted: 240 3.7% 15.9%; - --muted-foreground: 240 5% 64.9%; + --muted: 240 3.7% 15.9%; + --muted-foreground: 240 5% 64.9%; - --popover: 240 10% 6%; - --popover-foreground: 0 0% 98%; + --popover: 240 10% 6%; + --popover-foreground: 0 0% 98%; - --card: 240 10% 6%; - --card-foreground: 0 0% 98%; + --card: 240 10% 6%; + --card-foreground: 0 0% 98%; - --border: 240 3.7% 15.9%; - --input: 240 3.7% 15.9%; + --border: 240 3.7% 15.9%; + --input: 240 3.7% 15.9%; - --primary: 0 0% 98%; - --primary-foreground: 240 5.9% 10%; + --primary: 0 0% 98%; + --primary-foreground: 240 5.9% 10%; - --secondary: 240 3.7% 15.9%; - --secondary-foreground: 0 0% 98%; + --secondary: 240 3.7% 15.9%; + --secondary-foreground: 0 0% 98%; - --accent: 240 3.7% 15.9%; - --accent-foreground: 0 0% 98%; + --accent: 240 3.7% 15.9%; + --accent-foreground: 0 0% 98%; - --destructive: 0 62.8% 30.6%; - --destructive-foreground: 0 0% 98%; + --destructive: 0 62.8% 30.6%; + --destructive-foreground: 0 0% 98%; - --ring: 240 4.9% 83.9%; - } + --ring: 240 4.9% 83.9%; + } } @layer base { - * { - @apply border-border; - } - html.smoothscroll { - scroll-behavior: smooth; - } - body { - @apply bg-background text-foreground; - font-family: - Geist Sans, - system-ui, - -apple-system, - BlinkMacSystemFont, - 'Segoe UI', - Roboto, - Oxygen, - Ubuntu, - Cantarell, - 'Open Sans', - 'Helvetica Neue', - sans-serif; - } + * { + @apply border-border; + } + html.smoothscroll { + scroll-behavior: smooth; + } + body { + @apply bg-background text-foreground; + font-family: + Geist Sans, + system-ui, + -apple-system, + BlinkMacSystemFont, + 'Segoe UI', + Roboto, + Oxygen, + Ubuntu, + Cantarell, + 'Open Sans', + 'Helvetica Neue', + sans-serif; + } } @layer components { - .dots-background { - --dot-bg: theme('colors.background'); - --dot-color: theme('colors.muted.foreground'); - --dot-size: 1px; - --dot-space: 22px; - background: - linear-gradient(90deg, var(--dot-bg) calc(var(--dot-space) - var(--dot-size)), transparent 1%) - center / var(--dot-space) var(--dot-space), - linear-gradient(var(--dot-bg) calc(var(--dot-space) - var(--dot-size)), transparent 1%) center / - var(--dot-space) var(--dot-space), - var(--dot-color); - } - .link { - @apply text-blue-500 dark:text-blue-600 hover:text-blue-600 dark:hover:text-blue-500 hover:underline visited:text-purple-500 dark:visited:text-purple-600; - } + .dots-background { + --dot-bg: theme('colors.background'); + --dot-color: theme('colors.muted.foreground'); + --dot-size: 1px; + --dot-space: 22px; + background: + linear-gradient(90deg, var(--dot-bg) calc(var(--dot-space) - var(--dot-size)), transparent 1%) + center / var(--dot-space) var(--dot-space), + linear-gradient(var(--dot-bg) calc(var(--dot-space) - var(--dot-size)), transparent 1%) center / + var(--dot-space) var(--dot-space), + var(--dot-color); + } + .link { + @apply text-blue-500 dark:text-blue-600 hover:text-blue-600 dark:hover:text-blue-500 hover:underline visited:text-purple-500 dark:visited:text-purple-600; + } } diff --git a/src/lib/assets/Coredump.svelte b/src/lib/assets/Coredump.svelte index f71c0ad..0b2efe0 100644 --- a/src/lib/assets/Coredump.svelte +++ b/src/lib/assets/Coredump.svelte @@ -1,266 +1,266 @@ diff --git a/src/lib/assets/Name.svelte b/src/lib/assets/Name.svelte index 64e3a86..75080e0 100644 --- a/src/lib/assets/Name.svelte +++ b/src/lib/assets/Name.svelte @@ -1,289 +1,289 @@ diff --git a/src/lib/components/BackToTop.svelte b/src/lib/components/BackToTop.svelte index 4a20ab2..15951dd 100644 --- a/src/lib/components/BackToTop.svelte +++ b/src/lib/components/BackToTop.svelte @@ -1,29 +1,29 @@ {#if showButton} -
- -
+
+ +
{/if} diff --git a/src/lib/components/Blog/Archive.svelte b/src/lib/components/Blog/Archive.svelte index bd0df08..f32bd59 100644 --- a/src/lib/components/Blog/Archive.svelte +++ b/src/lib/components/Blog/Archive.svelte @@ -1,9 +1,9 @@ - -

Archive

-

2024

- -
- - {#if archived} -
-

Placeholder Title

-

Placeholder

-
- Read more - -
-
- {:else} -

Nothing here yet.

- {/if} -
+ +

Archive

+

2024

+ +
+ + {#if archived} +
+

Placeholder Title

+

Placeholder

+
+ Read more + +
+
+ {:else} +

Nothing here yet.

+ {/if} +
diff --git a/src/lib/components/Blog/Article.svelte b/src/lib/components/Blog/Article.svelte index e62183e..7fd9713 100644 --- a/src/lib/components/Blog/Article.svelte +++ b/src/lib/components/Blog/Article.svelte @@ -1,35 +1,35 @@
- -
-
-

- {doc.title} -

-

- {doc.blurb} -

- -
-
- {doc.image.alt} -
{doc.image.caption}
-
-
+ +
+
+

+ {doc.title} +

+

+ {doc.blurb} +

+ +
+
+ {doc.image.alt} +
{doc.image.caption}
+
+
-
- {@html doc.content} -
+
+ {@html doc.content} +
diff --git a/src/lib/components/Blog/Crumbs.svelte b/src/lib/components/Blog/Crumbs.svelte index 4e09169..da07bf8 100644 --- a/src/lib/components/Blog/Crumbs.svelte +++ b/src/lib/components/Blog/Crumbs.svelte @@ -1,24 +1,24 @@ - - The Coredump - - {#each trail as crumb, i} - {crumb} - - {/each} - - - {title} - - - + + The Coredump + + {#each trail as crumb, i} + {crumb} + + {/each} + + + {title} + + + diff --git a/src/lib/components/Blog/PostCard.svelte b/src/lib/components/Blog/PostCard.svelte index e83cab1..c71db55 100644 --- a/src/lib/components/Blog/PostCard.svelte +++ b/src/lib/components/Blog/PostCard.svelte @@ -1,39 +1,39 @@ - -

- {doc.metadata.title} -

-

{doc.metadata.manifest.blurb}

- -
- - {doc.metadata.cover.alt} -
-

{doc.metadata.manifest.description}

- -
-
+ +

+ {doc.metadata.title} +

+

{doc.metadata.manifest.blurb}

+ +
+ + {doc.metadata.cover.alt} +
+

{doc.metadata.manifest.description}

+ +
+
diff --git a/src/lib/components/Blog/PostMetadata.svelte b/src/lib/components/Blog/PostMetadata.svelte index 986e3e1..2c74b0e 100644 --- a/src/lib/components/Blog/PostMetadata.svelte +++ b/src/lib/components/Blog/PostMetadata.svelte @@ -17,38 +17,38 @@ -->
- {#if !reverseDateAndRest} -

{dayjsDate.format('MMMM DD, YYYY')}

- {/if} - - {#each primaryTags as tag} - {tag} - {/each} - {#each secondaryTags as tag} - {tag} - {/each} - - - - {dayjsDate.fromNow()} | {Math.ceil(length / 238)} min read | {length} words - - {#if reverseDateAndRest} -

{dayjsDate.format('MMMM DD, YYYY')}

- {/if} + {#if !reverseDateAndRest} +

{dayjsDate.format('MMMM DD, YYYY')}

+ {/if} + + {#each primaryTags as tag} + {tag} + {/each} + {#each secondaryTags as tag} + {tag} + {/each} + + + + {dayjsDate.fromNow()} | {Math.ceil(length / 238)} min read | {length} words + + {#if reverseDateAndRest} +

{dayjsDate.format('MMMM DD, YYYY')}

+ {/if}
diff --git a/src/lib/components/Footer.svelte b/src/lib/components/Footer.svelte index 0bf17b0..1e9102a 100644 --- a/src/lib/components/Footer.svelte +++ b/src/lib/components/Footer.svelte @@ -1,26 +1,26 @@ diff --git a/src/lib/components/Loading.svelte b/src/lib/components/Loading.svelte index dff3978..c1012cb 100644 --- a/src/lib/components/Loading.svelte +++ b/src/lib/components/Loading.svelte @@ -1,30 +1,30 @@
-
-
-
+
+
+
diff --git a/src/lib/components/Navbar/Drawer.svelte b/src/lib/components/Navbar/Drawer.svelte index 4c53c1b..6e4b07b 100644 --- a/src/lib/components/Navbar/Drawer.svelte +++ b/src/lib/components/Navbar/Drawer.svelte @@ -1,84 +1,84 @@ - - - - - - -
-
- - - - - - -
- - - - - - - - - - - - - - - - - - - -
-
-
-
- - + + + + + + +
+
+ + + + + + +
+ + + + + + + + + + + + + + + + + + + +
+
+
+
+ + diff --git a/src/lib/components/Navbar/Navbar.svelte b/src/lib/components/Navbar/Navbar.svelte index 993869b..ee8e940 100644 --- a/src/lib/components/Navbar/Navbar.svelte +++ b/src/lib/components/Navbar/Navbar.svelte @@ -1,76 +1,76 @@ diff --git a/src/lib/components/Socials.svelte b/src/lib/components/Socials.svelte index 2b7def2..b0e341d 100644 --- a/src/lib/components/Socials.svelte +++ b/src/lib/components/Socials.svelte @@ -1,103 +1,103 @@
- - - - - - - - - - Discord (for some reason) doesn't support direct links to profiles. You can find me on discord - with my username, @couscousdude. - - - - - - - - -

- You can reach my Gmail at youwenw@gmail.com -

-
-

- Or, if you prefer, you can securely email me on Protonmail at youwenw@protonmail.com -

-
-
+ + + + + + + + + + Discord (for some reason) doesn't support direct links to profiles. You can find me on discord + with my username, @couscousdude. + + + + + + + + +

+ You can reach my Gmail at youwenw@gmail.com +

+
+

+ Or, if you prefer, you can securely email me on Protonmail at youwenw@protonmail.com +

+
+
diff --git a/src/lib/components/TextCycle.svelte b/src/lib/components/TextCycle.svelte index f26a6e3..7ff0caf 100644 --- a/src/lib/components/TextCycle.svelte +++ b/src/lib/components/TextCycle.svelte @@ -1,34 +1,34 @@
- {beforeText} - {#if temp} -

- {items[currentIndex]} -

- {:else} -

- {items[currentIndex]} -

- {/if} + {beforeText} + {#if temp} +

+ {items[currentIndex]} +

+ {:else} +

+ {items[currentIndex]} +

+ {/if}
diff --git a/src/lib/components/ThemePicker.svelte b/src/lib/components/ThemePicker.svelte index f969a2c..c6733d7 100644 --- a/src/lib/components/ThemePicker.svelte +++ b/src/lib/components/ThemePicker.svelte @@ -10,37 +10,37 @@ --> - - - - - {#if !hideLabel} - Color Theme - {/if} - - {#each modes as { value, label } (value)} - changeMode(value)} class={wide ? 'text-md' : ''}> - {label} - {/each} - - + + + + + {#if !hideLabel} + Color Theme + {/if} + + {#each modes as { value, label } (value)} + changeMode(value)} class={wide ? 'text-md' : ''}> + {label} + {/each} + + diff --git a/src/lib/components/Toc/MobileToc.svelte b/src/lib/components/Toc/MobileToc.svelte index cf6d7d4..fe030d8 100644 --- a/src/lib/components/Toc/MobileToc.svelte +++ b/src/lib/components/Toc/MobileToc.svelte @@ -1,40 +1,40 @@ - - - - -

On this page

-
- - {#if $tocStore.items.size} -
    - {#each $tocStore.items.values() as tocItem} -
  1. - - -
  2. - {/each} -
- {/if} -
-
-
-
+ + + + +

On this page

+
+ + {#if $tocStore.items.size} +
    + {#each $tocStore.items.values() as tocItem} +
  1. + + +
  2. + {/each} +
+ {/if} + + + +
diff --git a/src/lib/components/Toc/StickyToc.svelte b/src/lib/components/Toc/StickyToc.svelte index 2e43a5f..38ad5c6 100644 --- a/src/lib/components/Toc/StickyToc.svelte +++ b/src/lib/components/Toc/StickyToc.svelte @@ -1,41 +1,41 @@ - -

On this page

-
- - {#if $tocStore.items.size} -
    - {#each $tocStore.items.values() as tocItem} -
  1. - - -
  2. - {/each} -
- {/if} - + +

On this page

+
+ + {#if $tocStore.items.size} +
    + {#each $tocStore.items.values() as tocItem} +
  1. + + +
  2. + {/each} +
+ {/if} + diff --git a/src/lib/components/Toc/TocHeader.svelte b/src/lib/components/Toc/TocHeader.svelte index a4bfbfd..1589e11 100644 --- a/src/lib/components/Toc/TocHeader.svelte +++ b/src/lib/components/Toc/TocHeader.svelte @@ -1,64 +1,64 @@ diff --git a/src/lib/components/UnderConstruction.svelte b/src/lib/components/UnderConstruction.svelte index 271b5ea..eb361fb 100644 --- a/src/lib/components/UnderConstruction.svelte +++ b/src/lib/components/UnderConstruction.svelte @@ -1,10 +1,10 @@
-
-

- 🚧 Under Construction 🚧 -

-
-

Please excuse the mess! This page is currently under construction.

-
-
+
+

+ 🚧 Under Construction 🚧 +

+
+

Please excuse the mess! This page is currently under construction.

+
+
diff --git a/src/lib/components/ui/accordion/accordion-content.svelte b/src/lib/components/ui/accordion/accordion-content.svelte index c8b12d2..acca1e8 100644 --- a/src/lib/components/ui/accordion/accordion-content.svelte +++ b/src/lib/components/ui/accordion/accordion-content.svelte @@ -1,26 +1,26 @@ -
- -
+
+ +
diff --git a/src/lib/components/ui/accordion/accordion-item.svelte b/src/lib/components/ui/accordion/accordion-item.svelte index 28b93d9..620148b 100644 --- a/src/lib/components/ui/accordion/accordion-item.svelte +++ b/src/lib/components/ui/accordion/accordion-item.svelte @@ -1,14 +1,14 @@ - + diff --git a/src/lib/components/ui/accordion/accordion-trigger.svelte b/src/lib/components/ui/accordion/accordion-trigger.svelte index fcbcf35..e1f202b 100644 --- a/src/lib/components/ui/accordion/accordion-trigger.svelte +++ b/src/lib/components/ui/accordion/accordion-trigger.svelte @@ -1,26 +1,26 @@ - svg]:rotate-180', - className - )} - {...$$restProps} - on:click - > - - - + svg]:rotate-180', + className + )} + {...$$restProps} + on:click + > + + + diff --git a/src/lib/components/ui/accordion/index.ts b/src/lib/components/ui/accordion/index.ts index 71538b5..923a129 100644 --- a/src/lib/components/ui/accordion/index.ts +++ b/src/lib/components/ui/accordion/index.ts @@ -1,17 +1,17 @@ -import { Accordion as AccordionPrimitive } from 'bits-ui'; -import Content from './accordion-content.svelte'; -import Item from './accordion-item.svelte'; -import Trigger from './accordion-trigger.svelte'; +import { Accordion as AccordionPrimitive } from 'bits-ui' +import Content from './accordion-content.svelte' +import Item from './accordion-item.svelte' +import Trigger from './accordion-trigger.svelte' -const Root = AccordionPrimitive.Root; +const Root = AccordionPrimitive.Root export { - Root, - Content, - Item, - Trigger, - // - Root as Accordion, - Content as AccordionContent, - Item as AccordionItem, - Trigger as AccordionTrigger -}; + Root, + Content, + Item, + Trigger, + // + Root as Accordion, + Content as AccordionContent, + Item as AccordionItem, + Trigger as AccordionTrigger +} diff --git a/src/lib/components/ui/alert-dialog/alert-dialog-action.svelte b/src/lib/components/ui/alert-dialog/alert-dialog-action.svelte index 2c5ea4c..797cada 100644 --- a/src/lib/components/ui/alert-dialog/alert-dialog-action.svelte +++ b/src/lib/components/ui/alert-dialog/alert-dialog-action.svelte @@ -1,21 +1,21 @@ - + diff --git a/src/lib/components/ui/alert-dialog/alert-dialog-cancel.svelte b/src/lib/components/ui/alert-dialog/alert-dialog-cancel.svelte index edf6d78..7577761 100644 --- a/src/lib/components/ui/alert-dialog/alert-dialog-cancel.svelte +++ b/src/lib/components/ui/alert-dialog/alert-dialog-cancel.svelte @@ -1,21 +1,21 @@ - + diff --git a/src/lib/components/ui/alert-dialog/alert-dialog-content.svelte b/src/lib/components/ui/alert-dialog/alert-dialog-content.svelte index 3830958..aecbb2e 100644 --- a/src/lib/components/ui/alert-dialog/alert-dialog-content.svelte +++ b/src/lib/components/ui/alert-dialog/alert-dialog-content.svelte @@ -1,27 +1,27 @@ - - - - + + + + diff --git a/src/lib/components/ui/alert-dialog/alert-dialog-description.svelte b/src/lib/components/ui/alert-dialog/alert-dialog-description.svelte index c77c684..7354380 100644 --- a/src/lib/components/ui/alert-dialog/alert-dialog-description.svelte +++ b/src/lib/components/ui/alert-dialog/alert-dialog-description.svelte @@ -1,16 +1,16 @@ - + diff --git a/src/lib/components/ui/alert-dialog/alert-dialog-footer.svelte b/src/lib/components/ui/alert-dialog/alert-dialog-footer.svelte index 329304a..31eb858 100644 --- a/src/lib/components/ui/alert-dialog/alert-dialog-footer.svelte +++ b/src/lib/components/ui/alert-dialog/alert-dialog-footer.svelte @@ -1,16 +1,16 @@
- +
diff --git a/src/lib/components/ui/alert-dialog/alert-dialog-header.svelte b/src/lib/components/ui/alert-dialog/alert-dialog-header.svelte index 434c29c..8d40583 100644 --- a/src/lib/components/ui/alert-dialog/alert-dialog-header.svelte +++ b/src/lib/components/ui/alert-dialog/alert-dialog-header.svelte @@ -1,13 +1,13 @@
- +
diff --git a/src/lib/components/ui/alert-dialog/alert-dialog-overlay.svelte b/src/lib/components/ui/alert-dialog/alert-dialog-overlay.svelte index b8987b8..d8cef07 100644 --- a/src/lib/components/ui/alert-dialog/alert-dialog-overlay.svelte +++ b/src/lib/components/ui/alert-dialog/alert-dialog-overlay.svelte @@ -1,21 +1,21 @@ diff --git a/src/lib/components/ui/alert-dialog/alert-dialog-portal.svelte b/src/lib/components/ui/alert-dialog/alert-dialog-portal.svelte index 347119a..b2a329f 100644 --- a/src/lib/components/ui/alert-dialog/alert-dialog-portal.svelte +++ b/src/lib/components/ui/alert-dialog/alert-dialog-portal.svelte @@ -1,9 +1,9 @@ - + diff --git a/src/lib/components/ui/alert-dialog/alert-dialog-title.svelte b/src/lib/components/ui/alert-dialog/alert-dialog-title.svelte index 75287f3..530d0ff 100644 --- a/src/lib/components/ui/alert-dialog/alert-dialog-title.svelte +++ b/src/lib/components/ui/alert-dialog/alert-dialog-title.svelte @@ -1,14 +1,14 @@ - + diff --git a/src/lib/components/ui/alert-dialog/index.ts b/src/lib/components/ui/alert-dialog/index.ts index fe3ff29..6cd7018 100644 --- a/src/lib/components/ui/alert-dialog/index.ts +++ b/src/lib/components/ui/alert-dialog/index.ts @@ -1,40 +1,40 @@ -import { AlertDialog as AlertDialogPrimitive } from 'bits-ui'; +import { AlertDialog as AlertDialogPrimitive } from 'bits-ui' -import Title from './alert-dialog-title.svelte'; -import Action from './alert-dialog-action.svelte'; -import Cancel from './alert-dialog-cancel.svelte'; -import Portal from './alert-dialog-portal.svelte'; -import Footer from './alert-dialog-footer.svelte'; -import Header from './alert-dialog-header.svelte'; -import Overlay from './alert-dialog-overlay.svelte'; -import Content from './alert-dialog-content.svelte'; -import Description from './alert-dialog-description.svelte'; +import Title from './alert-dialog-title.svelte' +import Action from './alert-dialog-action.svelte' +import Cancel from './alert-dialog-cancel.svelte' +import Portal from './alert-dialog-portal.svelte' +import Footer from './alert-dialog-footer.svelte' +import Header from './alert-dialog-header.svelte' +import Overlay from './alert-dialog-overlay.svelte' +import Content from './alert-dialog-content.svelte' +import Description from './alert-dialog-description.svelte' -const Root = AlertDialogPrimitive.Root; -const Trigger = AlertDialogPrimitive.Trigger; +const Root = AlertDialogPrimitive.Root +const Trigger = AlertDialogPrimitive.Trigger export { - Root, - Title, - Action, - Cancel, - Portal, - Footer, - Header, - Trigger, - Overlay, - Content, - Description, - // - Root as AlertDialog, - Title as AlertDialogTitle, - Action as AlertDialogAction, - Cancel as AlertDialogCancel, - Portal as AlertDialogPortal, - Footer as AlertDialogFooter, - Header as AlertDialogHeader, - Trigger as AlertDialogTrigger, - Overlay as AlertDialogOverlay, - Content as AlertDialogContent, - Description as AlertDialogDescription -}; + Root, + Title, + Action, + Cancel, + Portal, + Footer, + Header, + Trigger, + Overlay, + Content, + Description, + // + Root as AlertDialog, + Title as AlertDialogTitle, + Action as AlertDialogAction, + Cancel as AlertDialogCancel, + Portal as AlertDialogPortal, + Footer as AlertDialogFooter, + Header as AlertDialogHeader, + Trigger as AlertDialogTrigger, + Overlay as AlertDialogOverlay, + Content as AlertDialogContent, + Description as AlertDialogDescription +} diff --git a/src/lib/components/ui/badge/badge.svelte b/src/lib/components/ui/badge/badge.svelte index ba65f8c..64631a7 100644 --- a/src/lib/components/ui/badge/badge.svelte +++ b/src/lib/components/ui/badge/badge.svelte @@ -1,18 +1,18 @@ - + diff --git a/src/lib/components/ui/badge/index.ts b/src/lib/components/ui/badge/index.ts index 0cde6ee..1f4cac8 100644 --- a/src/lib/components/ui/badge/index.ts +++ b/src/lib/components/ui/badge/index.ts @@ -1,20 +1,20 @@ -import { type VariantProps, tv } from 'tailwind-variants'; +import { type VariantProps, tv } from 'tailwind-variants' -export { default as Badge } from './badge.svelte'; +export { default as Badge } from './badge.svelte' export const badgeVariants = tv({ - base: 'inline-flex select-none items-center rounded-md border px-2.5 py-0.5 text-xs font-semibold transition-colors focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2', - variants: { - variant: { - default: 'border-transparent bg-primary text-primary-foreground shadow hover:bg-primary/80', - secondary: 'border-transparent bg-secondary text-secondary-foreground hover:bg-secondary/80', - destructive: - 'border-transparent bg-destructive text-destructive-foreground shadow hover:bg-destructive/80', - outline: 'text-foreground' - } - }, - defaultVariants: { - variant: 'default' - } -}); + base: 'inline-flex select-none items-center rounded-md border px-2.5 py-0.5 text-xs font-semibold transition-colors focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2', + variants: { + variant: { + default: 'border-transparent bg-primary text-primary-foreground shadow hover:bg-primary/80', + secondary: 'border-transparent bg-secondary text-secondary-foreground hover:bg-secondary/80', + destructive: + 'border-transparent bg-destructive text-destructive-foreground shadow hover:bg-destructive/80', + outline: 'text-foreground' + } + }, + defaultVariants: { + variant: 'default' + } +}) -export type Variant = VariantProps['variant']; +export type Variant = VariantProps['variant'] diff --git a/src/lib/components/ui/breadcrumb/breadcrumb-ellipsis.svelte b/src/lib/components/ui/breadcrumb/breadcrumb-ellipsis.svelte index 4fe0d16..f1c1d7d 100644 --- a/src/lib/components/ui/breadcrumb/breadcrumb-ellipsis.svelte +++ b/src/lib/components/ui/breadcrumb/breadcrumb-ellipsis.svelte @@ -1,24 +1,24 @@ diff --git a/src/lib/components/ui/breadcrumb/breadcrumb-item.svelte b/src/lib/components/ui/breadcrumb/breadcrumb-item.svelte index ca5edc1..f983e94 100644 --- a/src/lib/components/ui/breadcrumb/breadcrumb-item.svelte +++ b/src/lib/components/ui/breadcrumb/breadcrumb-item.svelte @@ -1,16 +1,16 @@
  • - +
  • diff --git a/src/lib/components/ui/breadcrumb/breadcrumb-link.svelte b/src/lib/components/ui/breadcrumb/breadcrumb-link.svelte index 27e6ecd..42f4d78 100644 --- a/src/lib/components/ui/breadcrumb/breadcrumb-link.svelte +++ b/src/lib/components/ui/breadcrumb/breadcrumb-link.svelte @@ -1,31 +1,31 @@ {#if asChild} - + {:else} -
    - - + + + {/if} diff --git a/src/lib/components/ui/breadcrumb/breadcrumb-list.svelte b/src/lib/components/ui/breadcrumb/breadcrumb-list.svelte index e8b586a..744420a 100644 --- a/src/lib/components/ui/breadcrumb/breadcrumb-list.svelte +++ b/src/lib/components/ui/breadcrumb/breadcrumb-list.svelte @@ -1,23 +1,23 @@
      - +
    diff --git a/src/lib/components/ui/breadcrumb/breadcrumb-page.svelte b/src/lib/components/ui/breadcrumb/breadcrumb-page.svelte index a9d6d19..b4fc860 100644 --- a/src/lib/components/ui/breadcrumb/breadcrumb-page.svelte +++ b/src/lib/components/ui/breadcrumb/breadcrumb-page.svelte @@ -1,23 +1,23 @@ - + diff --git a/src/lib/components/ui/breadcrumb/breadcrumb-separator.svelte b/src/lib/components/ui/breadcrumb/breadcrumb-separator.svelte index 5b5b886..0613269 100644 --- a/src/lib/components/ui/breadcrumb/breadcrumb-separator.svelte +++ b/src/lib/components/ui/breadcrumb/breadcrumb-separator.svelte @@ -1,25 +1,25 @@ diff --git a/src/lib/components/ui/breadcrumb/breadcrumb.svelte b/src/lib/components/ui/breadcrumb/breadcrumb.svelte index aa2803e..26d7b98 100644 --- a/src/lib/components/ui/breadcrumb/breadcrumb.svelte +++ b/src/lib/components/ui/breadcrumb/breadcrumb.svelte @@ -1,15 +1,15 @@ diff --git a/src/lib/components/ui/breadcrumb/index.ts b/src/lib/components/ui/breadcrumb/index.ts index 773fd60..de69756 100644 --- a/src/lib/components/ui/breadcrumb/index.ts +++ b/src/lib/components/ui/breadcrumb/index.ts @@ -1,25 +1,25 @@ -import Root from './breadcrumb.svelte'; -import Ellipsis from './breadcrumb-ellipsis.svelte'; -import Item from './breadcrumb-item.svelte'; -import Separator from './breadcrumb-separator.svelte'; -import Link from './breadcrumb-link.svelte'; -import List from './breadcrumb-list.svelte'; -import Page from './breadcrumb-page.svelte'; +import Root from './breadcrumb.svelte' +import Ellipsis from './breadcrumb-ellipsis.svelte' +import Item from './breadcrumb-item.svelte' +import Separator from './breadcrumb-separator.svelte' +import Link from './breadcrumb-link.svelte' +import List from './breadcrumb-list.svelte' +import Page from './breadcrumb-page.svelte' export { - Root, - Ellipsis, - Item, - Separator, - Link, - List, - Page, - // - Root as Breadcrumb, - Ellipsis as BreadcrumbEllipsis, - Item as BreadcrumbItem, - Separator as BreadcrumbSeparator, - Link as BreadcrumbLink, - List as BreadcrumbList, - Page as BreadcrumbPage -}; + Root, + Ellipsis, + Item, + Separator, + Link, + List, + Page, + // + Root as Breadcrumb, + Ellipsis as BreadcrumbEllipsis, + Item as BreadcrumbItem, + Separator as BreadcrumbSeparator, + Link as BreadcrumbLink, + List as BreadcrumbList, + Page as BreadcrumbPage +} diff --git a/src/lib/components/ui/button/button.svelte b/src/lib/components/ui/button/button.svelte index f578a57..48697e0 100644 --- a/src/lib/components/ui/button/button.svelte +++ b/src/lib/components/ui/button/button.svelte @@ -1,25 +1,25 @@ - + diff --git a/src/lib/components/ui/button/index.ts b/src/lib/components/ui/button/index.ts index 86b4f18..8edd033 100644 --- a/src/lib/components/ui/button/index.ts +++ b/src/lib/components/ui/button/index.ts @@ -1,49 +1,49 @@ -import type { Button as ButtonPrimitive } from 'bits-ui'; -import { type VariantProps, tv } from 'tailwind-variants'; -import Root from './button.svelte'; +import type { Button as ButtonPrimitive } from 'bits-ui' +import { type VariantProps, tv } from 'tailwind-variants' +import Root from './button.svelte' const buttonVariants = tv({ - base: 'inline-flex items-center justify-center whitespace-nowrap rounded-md text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50', - variants: { - variant: { - default: 'bg-primary text-primary-foreground shadow hover:bg-primary/90', - destructive: 'bg-destructive text-destructive-foreground shadow-sm hover:bg-destructive/90', - outline: - 'border border-input bg-background shadow-sm hover:bg-accent hover:text-accent-foreground', - secondary: 'bg-secondary text-secondary-foreground shadow-sm hover:bg-secondary/80', - ghost: 'hover:bg-accent hover:text-accent-foreground', - link: 'text-primary underline-offset-4 hover:underline' - }, - size: { - default: 'h-9 px-4 py-2', - sm: 'h-8 rounded-md px-3 text-xs', - lg: 'h-10 rounded-md px-8', - icon: 'h-9 w-9' - } - }, - defaultVariants: { - variant: 'default', - size: 'default' - } -}); + base: 'inline-flex items-center justify-center whitespace-nowrap rounded-md text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50', + variants: { + variant: { + default: 'bg-primary text-primary-foreground shadow hover:bg-primary/90', + destructive: 'bg-destructive text-destructive-foreground shadow-sm hover:bg-destructive/90', + outline: + 'border border-input bg-background shadow-sm hover:bg-accent hover:text-accent-foreground', + secondary: 'bg-secondary text-secondary-foreground shadow-sm hover:bg-secondary/80', + ghost: 'hover:bg-accent hover:text-accent-foreground', + link: 'text-primary underline-offset-4 hover:underline' + }, + size: { + default: 'h-9 px-4 py-2', + sm: 'h-8 rounded-md px-3 text-xs', + lg: 'h-10 rounded-md px-8', + icon: 'h-9 w-9' + } + }, + defaultVariants: { + variant: 'default', + size: 'default' + } +}) -type Variant = VariantProps['variant']; -type Size = VariantProps['size']; +type Variant = VariantProps['variant'] +type Size = VariantProps['size'] type Props = ButtonPrimitive.Props & { - variant?: Variant; - size?: Size; -}; + variant?: Variant + size?: Size +} -type Events = ButtonPrimitive.Events; +type Events = ButtonPrimitive.Events export { - Root, - type Props, - type Events, - // - Root as Button, - type Props as ButtonProps, - type Events as ButtonEvents, - buttonVariants -}; + Root, + type Props, + type Events, + // + Root as Button, + type Props as ButtonProps, + type Events as ButtonEvents, + buttonVariants +} diff --git a/src/lib/components/ui/card/card-content.svelte b/src/lib/components/ui/card/card-content.svelte index 52776fa..f2946ac 100644 --- a/src/lib/components/ui/card/card-content.svelte +++ b/src/lib/components/ui/card/card-content.svelte @@ -1,13 +1,13 @@
    - +
    diff --git a/src/lib/components/ui/card/card-description.svelte b/src/lib/components/ui/card/card-description.svelte index 33d2930..e2bd043 100644 --- a/src/lib/components/ui/card/card-description.svelte +++ b/src/lib/components/ui/card/card-description.svelte @@ -1,13 +1,13 @@

    - +

    diff --git a/src/lib/components/ui/card/card-footer.svelte b/src/lib/components/ui/card/card-footer.svelte index c97fd43..78345a3 100644 --- a/src/lib/components/ui/card/card-footer.svelte +++ b/src/lib/components/ui/card/card-footer.svelte @@ -1,13 +1,13 @@
    - +
    diff --git a/src/lib/components/ui/card/card-header.svelte b/src/lib/components/ui/card/card-header.svelte index 43be1c6..54f0a74 100644 --- a/src/lib/components/ui/card/card-header.svelte +++ b/src/lib/components/ui/card/card-header.svelte @@ -1,13 +1,13 @@
    - +
    diff --git a/src/lib/components/ui/card/card-title.svelte b/src/lib/components/ui/card/card-title.svelte index 90d0da9..5ec0b7e 100644 --- a/src/lib/components/ui/card/card-title.svelte +++ b/src/lib/components/ui/card/card-title.svelte @@ -1,21 +1,21 @@ - + diff --git a/src/lib/components/ui/card/card.svelte b/src/lib/components/ui/card/card.svelte index 8f8a21e..87e3685 100644 --- a/src/lib/components/ui/card/card.svelte +++ b/src/lib/components/ui/card/card.svelte @@ -1,22 +1,22 @@
    - +
    diff --git a/src/lib/components/ui/card/index.ts b/src/lib/components/ui/card/index.ts index 86c5408..6102bb2 100644 --- a/src/lib/components/ui/card/index.ts +++ b/src/lib/components/ui/card/index.ts @@ -1,24 +1,24 @@ -import Root from './card.svelte'; -import Content from './card-content.svelte'; -import Description from './card-description.svelte'; -import Footer from './card-footer.svelte'; -import Header from './card-header.svelte'; -import Title from './card-title.svelte'; +import Root from './card.svelte' +import Content from './card-content.svelte' +import Description from './card-description.svelte' +import Footer from './card-footer.svelte' +import Header from './card-header.svelte' +import Title from './card-title.svelte' export { - Root, - Content, - Description, - Footer, - Header, - Title, - // - Root as Card, - Content as CardContent, - Description as CardDescription, - Footer as CardFooter, - Header as CardHeader, - Title as CardTitle -}; + Root, + Content, + Description, + Footer, + Header, + Title, + // + Root as Card, + Content as CardContent, + Description as CardDescription, + Footer as CardFooter, + Header as CardHeader, + Title as CardTitle +} -export type HeadingLevel = 'h1' | 'h2' | 'h3' | 'h4' | 'h5' | 'h6'; +export type HeadingLevel = 'h1' | 'h2' | 'h3' | 'h4' | 'h5' | 'h6' diff --git a/src/lib/components/ui/drawer/drawer-content.svelte b/src/lib/components/ui/drawer/drawer-content.svelte index e2fdb57..105e655 100644 --- a/src/lib/components/ui/drawer/drawer-content.svelte +++ b/src/lib/components/ui/drawer/drawer-content.svelte @@ -1,24 +1,24 @@ - - -
    - - + + +
    + + diff --git a/src/lib/components/ui/drawer/drawer-description.svelte b/src/lib/components/ui/drawer/drawer-description.svelte index cc092ee..a2186eb 100644 --- a/src/lib/components/ui/drawer/drawer-description.svelte +++ b/src/lib/components/ui/drawer/drawer-description.svelte @@ -1,18 +1,18 @@ - + diff --git a/src/lib/components/ui/drawer/drawer-footer.svelte b/src/lib/components/ui/drawer/drawer-footer.svelte index da35d00..78a99ad 100644 --- a/src/lib/components/ui/drawer/drawer-footer.svelte +++ b/src/lib/components/ui/drawer/drawer-footer.svelte @@ -1,16 +1,16 @@
    - +
    diff --git a/src/lib/components/ui/drawer/drawer-header.svelte b/src/lib/components/ui/drawer/drawer-header.svelte index 1c3aa36..5d3e92f 100644 --- a/src/lib/components/ui/drawer/drawer-header.svelte +++ b/src/lib/components/ui/drawer/drawer-header.svelte @@ -1,19 +1,19 @@
    - +
    diff --git a/src/lib/components/ui/drawer/drawer-nested.svelte b/src/lib/components/ui/drawer/drawer-nested.svelte index de5e96a..30957d5 100644 --- a/src/lib/components/ui/drawer/drawer-nested.svelte +++ b/src/lib/components/ui/drawer/drawer-nested.svelte @@ -1,12 +1,12 @@ - + diff --git a/src/lib/components/ui/drawer/drawer-overlay.svelte b/src/lib/components/ui/drawer/drawer-overlay.svelte index c722109..f466216 100644 --- a/src/lib/components/ui/drawer/drawer-overlay.svelte +++ b/src/lib/components/ui/drawer/drawer-overlay.svelte @@ -1,18 +1,18 @@ - + diff --git a/src/lib/components/ui/drawer/drawer-title.svelte b/src/lib/components/ui/drawer/drawer-title.svelte index 9529986..2203a1c 100644 --- a/src/lib/components/ui/drawer/drawer-title.svelte +++ b/src/lib/components/ui/drawer/drawer-title.svelte @@ -1,18 +1,18 @@ - + diff --git a/src/lib/components/ui/drawer/drawer.svelte b/src/lib/components/ui/drawer/drawer.svelte index 2ac8ce5..7fb39a0 100644 --- a/src/lib/components/ui/drawer/drawer.svelte +++ b/src/lib/components/ui/drawer/drawer.svelte @@ -1,12 +1,12 @@ - + diff --git a/src/lib/components/ui/drawer/index.ts b/src/lib/components/ui/drawer/index.ts index f2fc112..3aab76b 100644 --- a/src/lib/components/ui/drawer/index.ts +++ b/src/lib/components/ui/drawer/index.ts @@ -1,40 +1,40 @@ -import { Drawer as DrawerPrimitive } from 'vaul-svelte'; +import { Drawer as DrawerPrimitive } from 'vaul-svelte' -import Root from './drawer.svelte'; -import Content from './drawer-content.svelte'; -import Description from './drawer-description.svelte'; -import Overlay from './drawer-overlay.svelte'; -import Footer from './drawer-footer.svelte'; -import Header from './drawer-header.svelte'; -import Title from './drawer-title.svelte'; -import NestedRoot from './drawer-nested.svelte'; +import Root from './drawer.svelte' +import Content from './drawer-content.svelte' +import Description from './drawer-description.svelte' +import Overlay from './drawer-overlay.svelte' +import Footer from './drawer-footer.svelte' +import Header from './drawer-header.svelte' +import Title from './drawer-title.svelte' +import NestedRoot from './drawer-nested.svelte' -const Trigger = DrawerPrimitive.Trigger; -const Portal = DrawerPrimitive.Portal; -const Close = DrawerPrimitive.Close; +const Trigger = DrawerPrimitive.Trigger +const Portal = DrawerPrimitive.Portal +const Close = DrawerPrimitive.Close export { - Root, - NestedRoot, - Content, - Description, - Overlay, - Footer, - Header, - Title, - Trigger, - Portal, - Close, - // - Root as Drawer, - NestedRoot as DrawerNestedRoot, - Content as DrawerContent, - Description as DrawerDescription, - Overlay as DrawerOverlay, - Footer as DrawerFooter, - Header as DrawerHeader, - Title as DrawerTitle, - Trigger as DrawerTrigger, - Portal as DrawerPortal, - Close as DrawerClose -}; + Root, + NestedRoot, + Content, + Description, + Overlay, + Footer, + Header, + Title, + Trigger, + Portal, + Close, + // + Root as Drawer, + NestedRoot as DrawerNestedRoot, + Content as DrawerContent, + Description as DrawerDescription, + Overlay as DrawerOverlay, + Footer as DrawerFooter, + Header as DrawerHeader, + Title as DrawerTitle, + Trigger as DrawerTrigger, + Portal as DrawerPortal, + Close as DrawerClose +} diff --git a/src/lib/components/ui/dropdown-menu/dropdown-menu-checkbox-item.svelte b/src/lib/components/ui/dropdown-menu/dropdown-menu-checkbox-item.svelte index acd4347..31ecafe 100644 --- a/src/lib/components/ui/dropdown-menu/dropdown-menu-checkbox-item.svelte +++ b/src/lib/components/ui/dropdown-menu/dropdown-menu-checkbox-item.svelte @@ -1,35 +1,35 @@ - - - - - - + + + + + + diff --git a/src/lib/components/ui/dropdown-menu/dropdown-menu-content.svelte b/src/lib/components/ui/dropdown-menu/dropdown-menu-content.svelte index 4054a7e..ff6c5e7 100644 --- a/src/lib/components/ui/dropdown-menu/dropdown-menu-content.svelte +++ b/src/lib/components/ui/dropdown-menu/dropdown-menu-content.svelte @@ -1,26 +1,26 @@ - + diff --git a/src/lib/components/ui/dropdown-menu/dropdown-menu-item.svelte b/src/lib/components/ui/dropdown-menu/dropdown-menu-item.svelte index a6243d7..983a210 100644 --- a/src/lib/components/ui/dropdown-menu/dropdown-menu-item.svelte +++ b/src/lib/components/ui/dropdown-menu/dropdown-menu-item.svelte @@ -1,31 +1,31 @@ - + diff --git a/src/lib/components/ui/dropdown-menu/dropdown-menu-label.svelte b/src/lib/components/ui/dropdown-menu/dropdown-menu-label.svelte index 670a686..a4ed60e 100644 --- a/src/lib/components/ui/dropdown-menu/dropdown-menu-label.svelte +++ b/src/lib/components/ui/dropdown-menu/dropdown-menu-label.svelte @@ -1,19 +1,19 @@ - + diff --git a/src/lib/components/ui/dropdown-menu/dropdown-menu-radio-group.svelte b/src/lib/components/ui/dropdown-menu/dropdown-menu-radio-group.svelte index dd67d44..049125f 100644 --- a/src/lib/components/ui/dropdown-menu/dropdown-menu-radio-group.svelte +++ b/src/lib/components/ui/dropdown-menu/dropdown-menu-radio-group.svelte @@ -1,11 +1,11 @@ - + diff --git a/src/lib/components/ui/dropdown-menu/dropdown-menu-radio-item.svelte b/src/lib/components/ui/dropdown-menu/dropdown-menu-radio-item.svelte index aaab3a0..541ac23 100644 --- a/src/lib/components/ui/dropdown-menu/dropdown-menu-radio-item.svelte +++ b/src/lib/components/ui/dropdown-menu/dropdown-menu-radio-item.svelte @@ -1,35 +1,35 @@ - - - - - - + + + + + + diff --git a/src/lib/components/ui/dropdown-menu/dropdown-menu-separator.svelte b/src/lib/components/ui/dropdown-menu/dropdown-menu-separator.svelte index cc0197e..a78fec8 100644 --- a/src/lib/components/ui/dropdown-menu/dropdown-menu-separator.svelte +++ b/src/lib/components/ui/dropdown-menu/dropdown-menu-separator.svelte @@ -1,14 +1,14 @@ diff --git a/src/lib/components/ui/dropdown-menu/dropdown-menu-shortcut.svelte b/src/lib/components/ui/dropdown-menu/dropdown-menu-shortcut.svelte index eeeb8f7..45cc82e 100644 --- a/src/lib/components/ui/dropdown-menu/dropdown-menu-shortcut.svelte +++ b/src/lib/components/ui/dropdown-menu/dropdown-menu-shortcut.svelte @@ -1,13 +1,13 @@ - + diff --git a/src/lib/components/ui/dropdown-menu/dropdown-menu-sub-content.svelte b/src/lib/components/ui/dropdown-menu/dropdown-menu-sub-content.svelte index a036691..0e8a71a 100644 --- a/src/lib/components/ui/dropdown-menu/dropdown-menu-sub-content.svelte +++ b/src/lib/components/ui/dropdown-menu/dropdown-menu-sub-content.svelte @@ -1,29 +1,29 @@ - + diff --git a/src/lib/components/ui/dropdown-menu/dropdown-menu-sub-trigger.svelte b/src/lib/components/ui/dropdown-menu/dropdown-menu-sub-trigger.svelte index 060ade7..26ebee4 100644 --- a/src/lib/components/ui/dropdown-menu/dropdown-menu-sub-trigger.svelte +++ b/src/lib/components/ui/dropdown-menu/dropdown-menu-sub-trigger.svelte @@ -1,32 +1,32 @@ - - + + diff --git a/src/lib/components/ui/dropdown-menu/index.ts b/src/lib/components/ui/dropdown-menu/index.ts index 52c1f3c..5a3a86a 100644 --- a/src/lib/components/ui/dropdown-menu/index.ts +++ b/src/lib/components/ui/dropdown-menu/index.ts @@ -1,48 +1,48 @@ -import { DropdownMenu as DropdownMenuPrimitive } from 'bits-ui'; -import Item from './dropdown-menu-item.svelte'; -import Label from './dropdown-menu-label.svelte'; -import Content from './dropdown-menu-content.svelte'; -import Shortcut from './dropdown-menu-shortcut.svelte'; -import RadioItem from './dropdown-menu-radio-item.svelte'; -import Separator from './dropdown-menu-separator.svelte'; -import RadioGroup from './dropdown-menu-radio-group.svelte'; -import SubContent from './dropdown-menu-sub-content.svelte'; -import SubTrigger from './dropdown-menu-sub-trigger.svelte'; -import CheckboxItem from './dropdown-menu-checkbox-item.svelte'; +import { DropdownMenu as DropdownMenuPrimitive } from 'bits-ui' +import Item from './dropdown-menu-item.svelte' +import Label from './dropdown-menu-label.svelte' +import Content from './dropdown-menu-content.svelte' +import Shortcut from './dropdown-menu-shortcut.svelte' +import RadioItem from './dropdown-menu-radio-item.svelte' +import Separator from './dropdown-menu-separator.svelte' +import RadioGroup from './dropdown-menu-radio-group.svelte' +import SubContent from './dropdown-menu-sub-content.svelte' +import SubTrigger from './dropdown-menu-sub-trigger.svelte' +import CheckboxItem from './dropdown-menu-checkbox-item.svelte' -const Sub = DropdownMenuPrimitive.Sub; -const Root = DropdownMenuPrimitive.Root; -const Trigger = DropdownMenuPrimitive.Trigger; -const Group = DropdownMenuPrimitive.Group; +const Sub = DropdownMenuPrimitive.Sub +const Root = DropdownMenuPrimitive.Root +const Trigger = DropdownMenuPrimitive.Trigger +const Group = DropdownMenuPrimitive.Group export { - Sub, - Root, - Item, - Label, - Group, - Trigger, - Content, - Shortcut, - Separator, - RadioItem, - SubContent, - SubTrigger, - RadioGroup, - CheckboxItem, - // - Root as DropdownMenu, - Sub as DropdownMenuSub, - Item as DropdownMenuItem, - Label as DropdownMenuLabel, - Group as DropdownMenuGroup, - Content as DropdownMenuContent, - Trigger as DropdownMenuTrigger, - Shortcut as DropdownMenuShortcut, - RadioItem as DropdownMenuRadioItem, - Separator as DropdownMenuSeparator, - RadioGroup as DropdownMenuRadioGroup, - SubContent as DropdownMenuSubContent, - SubTrigger as DropdownMenuSubTrigger, - CheckboxItem as DropdownMenuCheckboxItem -}; + Sub, + Root, + Item, + Label, + Group, + Trigger, + Content, + Shortcut, + Separator, + RadioItem, + SubContent, + SubTrigger, + RadioGroup, + CheckboxItem, + // + Root as DropdownMenu, + Sub as DropdownMenuSub, + Item as DropdownMenuItem, + Label as DropdownMenuLabel, + Group as DropdownMenuGroup, + Content as DropdownMenuContent, + Trigger as DropdownMenuTrigger, + Shortcut as DropdownMenuShortcut, + RadioItem as DropdownMenuRadioItem, + Separator as DropdownMenuSeparator, + RadioGroup as DropdownMenuRadioGroup, + SubContent as DropdownMenuSubContent, + SubTrigger as DropdownMenuSubTrigger, + CheckboxItem as DropdownMenuCheckboxItem +} diff --git a/src/lib/components/ui/popover/index.ts b/src/lib/components/ui/popover/index.ts index 5db432e..edfe342 100644 --- a/src/lib/components/ui/popover/index.ts +++ b/src/lib/components/ui/popover/index.ts @@ -1,17 +1,17 @@ -import { Popover as PopoverPrimitive } from 'bits-ui'; -import Content from './popover-content.svelte'; -const Root = PopoverPrimitive.Root; -const Trigger = PopoverPrimitive.Trigger; -const Close = PopoverPrimitive.Close; +import { Popover as PopoverPrimitive } from 'bits-ui' +import Content from './popover-content.svelte' +const Root = PopoverPrimitive.Root +const Trigger = PopoverPrimitive.Trigger +const Close = PopoverPrimitive.Close export { - Root, - Content, - Trigger, - Close, - // - Root as Popover, - Content as PopoverContent, - Trigger as PopoverTrigger, - Close as PopoverClose -}; + Root, + Content, + Trigger, + Close, + // + Root as Popover, + Content as PopoverContent, + Trigger as PopoverTrigger, + Close as PopoverClose +} diff --git a/src/lib/components/ui/popover/popover-content.svelte b/src/lib/components/ui/popover/popover-content.svelte index 42c1290..129bbae 100644 --- a/src/lib/components/ui/popover/popover-content.svelte +++ b/src/lib/components/ui/popover/popover-content.svelte @@ -1,27 +1,27 @@ - + diff --git a/src/lib/components/ui/scroll-area/index.ts b/src/lib/components/ui/scroll-area/index.ts index d546806..32ac278 100644 --- a/src/lib/components/ui/scroll-area/index.ts +++ b/src/lib/components/ui/scroll-area/index.ts @@ -1,10 +1,10 @@ -import Scrollbar from './scroll-area-scrollbar.svelte'; -import Root from './scroll-area.svelte'; +import Scrollbar from './scroll-area-scrollbar.svelte' +import Root from './scroll-area.svelte' export { - Root, - Scrollbar, - //, - Root as ScrollArea, - Scrollbar as ScrollAreaScrollbar -}; + Root, + Scrollbar, + //, + Root as ScrollArea, + Scrollbar as ScrollAreaScrollbar +} diff --git a/src/lib/components/ui/scroll-area/scroll-area-scrollbar.svelte b/src/lib/components/ui/scroll-area/scroll-area-scrollbar.svelte index c8068cd..533c5fe 100644 --- a/src/lib/components/ui/scroll-area/scroll-area-scrollbar.svelte +++ b/src/lib/components/ui/scroll-area/scroll-area-scrollbar.svelte @@ -1,27 +1,27 @@ - - + + diff --git a/src/lib/components/ui/scroll-area/scroll-area.svelte b/src/lib/components/ui/scroll-area/scroll-area.svelte index e99a152..3f51a22 100644 --- a/src/lib/components/ui/scroll-area/scroll-area.svelte +++ b/src/lib/components/ui/scroll-area/scroll-area.svelte @@ -1,32 +1,32 @@ - - - - - - {#if orientation === 'vertical' || orientation === 'both'} - - {/if} - {#if orientation === 'horizontal' || orientation === 'both'} - - {/if} - + + + + + + {#if orientation === 'vertical' || orientation === 'both'} + + {/if} + {#if orientation === 'horizontal' || orientation === 'both'} + + {/if} + diff --git a/src/lib/components/ui/separator/index.ts b/src/lib/components/ui/separator/index.ts index 768efac..28f2ff2 100644 --- a/src/lib/components/ui/separator/index.ts +++ b/src/lib/components/ui/separator/index.ts @@ -1,7 +1,7 @@ -import Root from './separator.svelte'; +import Root from './separator.svelte' export { - Root, - // - Root as Separator -}; + Root, + // + Root as Separator +} diff --git a/src/lib/components/ui/separator/separator.svelte b/src/lib/components/ui/separator/separator.svelte index 3160e6a..ab2adfb 100644 --- a/src/lib/components/ui/separator/separator.svelte +++ b/src/lib/components/ui/separator/separator.svelte @@ -1,22 +1,22 @@ diff --git a/src/lib/components/ui/sonner/index.ts b/src/lib/components/ui/sonner/index.ts index fcaf06b..ad71c91 100644 --- a/src/lib/components/ui/sonner/index.ts +++ b/src/lib/components/ui/sonner/index.ts @@ -1 +1 @@ -export { default as Toaster } from './sonner.svelte'; +export { default as Toaster } from './sonner.svelte' diff --git a/src/lib/components/ui/sonner/sonner.svelte b/src/lib/components/ui/sonner/sonner.svelte index f1d41c5..3cc8d34 100644 --- a/src/lib/components/ui/sonner/sonner.svelte +++ b/src/lib/components/ui/sonner/sonner.svelte @@ -1,21 +1,21 @@ diff --git a/src/lib/components/ui/tooltip/index.ts b/src/lib/components/ui/tooltip/index.ts index 243cd02..f3a8186 100644 --- a/src/lib/components/ui/tooltip/index.ts +++ b/src/lib/components/ui/tooltip/index.ts @@ -1,15 +1,15 @@ -import { Tooltip as TooltipPrimitive } from 'bits-ui'; -import Content from './tooltip-content.svelte'; +import { Tooltip as TooltipPrimitive } from 'bits-ui' +import Content from './tooltip-content.svelte' -const Root = TooltipPrimitive.Root; -const Trigger = TooltipPrimitive.Trigger; +const Root = TooltipPrimitive.Root +const Trigger = TooltipPrimitive.Trigger export { - Root, - Trigger, - Content, - // - Root as Tooltip, - Content as TooltipContent, - Trigger as TooltipTrigger -}; + Root, + Trigger, + Content, + // + Root as Tooltip, + Content as TooltipContent, + Trigger as TooltipTrigger +} diff --git a/src/lib/components/ui/tooltip/tooltip-content.svelte b/src/lib/components/ui/tooltip/tooltip-content.svelte index 856b8e7..5644fd1 100644 --- a/src/lib/components/ui/tooltip/tooltip-content.svelte +++ b/src/lib/components/ui/tooltip/tooltip-content.svelte @@ -1,28 +1,28 @@ - + diff --git a/src/lib/styles/katex.css b/src/lib/styles/katex.css index 1c7e3b8..873d03e 100644 --- a/src/lib/styles/katex.css +++ b/src/lib/styles/katex.css @@ -1,356 +1,356 @@ @font-face { - font-family: KaTeX_AMS; - font-style: normal; - font-weight: 400; - src: - url($lib/assets/fonts/KaTeX_AMS-Regular.woff2) format('woff2'), - url($lib/assets/fonts/KaTeX_AMS-Regular.woff) format('woff'), - url($lib/assets/fonts/KaTeX_AMS-Regular.ttf) format('truetype'); + font-family: KaTeX_AMS; + font-style: normal; + font-weight: 400; + src: + url($lib/assets/fonts/KaTeX_AMS-Regular.woff2) format('woff2'), + url($lib/assets/fonts/KaTeX_AMS-Regular.woff) format('woff'), + url($lib/assets/fonts/KaTeX_AMS-Regular.ttf) format('truetype'); } @font-face { - font-family: KaTeX_Caligraphic; - font-style: normal; - font-weight: 700; - src: - url($lib/assets/fonts/KaTeX_Caligraphic-Bold.woff2) format('woff2'), - url($lib/assets/fonts/KaTeX_Caligraphic-Bold.woff) format('woff'), - url($lib/assets/fonts/KaTeX_Caligraphic-Bold.ttf) format('truetype'); + font-family: KaTeX_Caligraphic; + font-style: normal; + font-weight: 700; + src: + url($lib/assets/fonts/KaTeX_Caligraphic-Bold.woff2) format('woff2'), + url($lib/assets/fonts/KaTeX_Caligraphic-Bold.woff) format('woff'), + url($lib/assets/fonts/KaTeX_Caligraphic-Bold.ttf) format('truetype'); } @font-face { - font-family: KaTeX_Caligraphic; - font-style: normal; - font-weight: 400; - src: - url($lib/assets/fonts/KaTeX_Caligraphic-Regular.woff2) format('woff2'), - url($lib/assets/fonts/KaTeX_Caligraphic-Regular.woff) format('woff'), - url($lib/assets/fonts/KaTeX_Caligraphic-Regular.ttf) format('truetype'); + font-family: KaTeX_Caligraphic; + font-style: normal; + font-weight: 400; + src: + url($lib/assets/fonts/KaTeX_Caligraphic-Regular.woff2) format('woff2'), + url($lib/assets/fonts/KaTeX_Caligraphic-Regular.woff) format('woff'), + url($lib/assets/fonts/KaTeX_Caligraphic-Regular.ttf) format('truetype'); } @font-face { - font-family: KaTeX_Fraktur; - font-style: normal; - font-weight: 700; - src: - url($lib/assets/fonts/KaTeX_Fraktur-Bold.woff2) format('woff2'), - url($lib/assets/fonts/KaTeX_Fraktur-Bold.woff) format('woff'), - url($lib/assets/fonts/KaTeX_Fraktur-Bold.ttf) format('truetype'); + font-family: KaTeX_Fraktur; + font-style: normal; + font-weight: 700; + src: + url($lib/assets/fonts/KaTeX_Fraktur-Bold.woff2) format('woff2'), + url($lib/assets/fonts/KaTeX_Fraktur-Bold.woff) format('woff'), + url($lib/assets/fonts/KaTeX_Fraktur-Bold.ttf) format('truetype'); } @font-face { - font-family: KaTeX_Fraktur; - font-style: normal; - font-weight: 400; - src: - url($lib/assets/fonts/KaTeX_Fraktur-Regular.woff2) format('woff2'), - url($lib/assets/fonts/KaTeX_Fraktur-Regular.woff) format('woff'), - url($lib/assets/fonts/KaTeX_Fraktur-Regular.ttf) format('truetype'); + font-family: KaTeX_Fraktur; + font-style: normal; + font-weight: 400; + src: + url($lib/assets/fonts/KaTeX_Fraktur-Regular.woff2) format('woff2'), + url($lib/assets/fonts/KaTeX_Fraktur-Regular.woff) format('woff'), + url($lib/assets/fonts/KaTeX_Fraktur-Regular.ttf) format('truetype'); } @font-face { - font-family: KaTeX_Main; - font-style: normal; - font-weight: 700; - src: - url($lib/assets/fonts/KaTeX_Main-Bold.woff2) format('woff2'), - url($lib/assets/fonts/KaTeX_Main-Bold.woff) format('woff'), - url($lib/assets/fonts/KaTeX_Main-Bold.ttf) format('truetype'); + font-family: KaTeX_Main; + font-style: normal; + font-weight: 700; + src: + url($lib/assets/fonts/KaTeX_Main-Bold.woff2) format('woff2'), + url($lib/assets/fonts/KaTeX_Main-Bold.woff) format('woff'), + url($lib/assets/fonts/KaTeX_Main-Bold.ttf) format('truetype'); } @font-face { - font-family: KaTeX_Main; - font-style: italic; - font-weight: 700; - src: - url($lib/assets/fonts/KaTeX_Main-BoldItalic.woff2) format('woff2'), - url($lib/assets/fonts/KaTeX_Main-BoldItalic.woff) format('woff'), - url($lib/assets/fonts/KaTeX_Main-BoldItalic.ttf) format('truetype'); + font-family: KaTeX_Main; + font-style: italic; + font-weight: 700; + src: + url($lib/assets/fonts/KaTeX_Main-BoldItalic.woff2) format('woff2'), + url($lib/assets/fonts/KaTeX_Main-BoldItalic.woff) format('woff'), + url($lib/assets/fonts/KaTeX_Main-BoldItalic.ttf) format('truetype'); } @font-face { - font-family: KaTeX_Main; - font-style: italic; - font-weight: 400; - src: - url($lib/assets/fonts/KaTeX_Main-Italic.woff2) format('woff2'), - url($lib/assets/fonts/KaTeX_Main-Italic.woff) format('woff'), - url($lib/assets/fonts/KaTeX_Main-Italic.ttf) format('truetype'); + font-family: KaTeX_Main; + font-style: italic; + font-weight: 400; + src: + url($lib/assets/fonts/KaTeX_Main-Italic.woff2) format('woff2'), + url($lib/assets/fonts/KaTeX_Main-Italic.woff) format('woff'), + url($lib/assets/fonts/KaTeX_Main-Italic.ttf) format('truetype'); } @font-face { - font-family: KaTeX_Main; - font-style: normal; - font-weight: 400; - src: - url($lib/assets/fonts/KaTeX_Main-Regular.woff2) format('woff2'), - url($lib/assets/fonts/KaTeX_Main-Regular.woff) format('woff'), - url($lib/assets/fonts/KaTeX_Main-Regular.ttf) format('truetype'); + font-family: KaTeX_Main; + font-style: normal; + font-weight: 400; + src: + url($lib/assets/fonts/KaTeX_Main-Regular.woff2) format('woff2'), + url($lib/assets/fonts/KaTeX_Main-Regular.woff) format('woff'), + url($lib/assets/fonts/KaTeX_Main-Regular.ttf) format('truetype'); } @font-face { - font-family: KaTeX_Math; - font-style: italic; - font-weight: 700; - src: - url($lib/assets/fonts/KaTeX_Math-BoldItalic.woff2) format('woff2'), - url($lib/assets/fonts/KaTeX_Math-BoldItalic.woff) format('woff'), - url($lib/assets/fonts/KaTeX_Math-BoldItalic.ttf) format('truetype'); + font-family: KaTeX_Math; + font-style: italic; + font-weight: 700; + src: + url($lib/assets/fonts/KaTeX_Math-BoldItalic.woff2) format('woff2'), + url($lib/assets/fonts/KaTeX_Math-BoldItalic.woff) format('woff'), + url($lib/assets/fonts/KaTeX_Math-BoldItalic.ttf) format('truetype'); } @font-face { - font-family: KaTeX_Math; - font-style: italic; - font-weight: 400; - src: - url($lib/assets/fonts/KaTeX_Math-Italic.woff2) format('woff2'), - url($lib/assets/fonts/KaTeX_Math-Italic.woff) format('woff'), - url($lib/assets/fonts/KaTeX_Math-Italic.ttf) format('truetype'); + font-family: KaTeX_Math; + font-style: italic; + font-weight: 400; + src: + url($lib/assets/fonts/KaTeX_Math-Italic.woff2) format('woff2'), + url($lib/assets/fonts/KaTeX_Math-Italic.woff) format('woff'), + url($lib/assets/fonts/KaTeX_Math-Italic.ttf) format('truetype'); } @font-face { - font-family: 'KaTeX_SansSerif'; - font-style: normal; - font-weight: 700; - src: - url($lib/assets/fonts/KaTeX_SansSerif-Bold.woff2) format('woff2'), - url($lib/assets/fonts/KaTeX_SansSerif-Bold.woff) format('woff'), - url($lib/assets/fonts/KaTeX_SansSerif-Bold.ttf) format('truetype'); + font-family: 'KaTeX_SansSerif'; + font-style: normal; + font-weight: 700; + src: + url($lib/assets/fonts/KaTeX_SansSerif-Bold.woff2) format('woff2'), + url($lib/assets/fonts/KaTeX_SansSerif-Bold.woff) format('woff'), + url($lib/assets/fonts/KaTeX_SansSerif-Bold.ttf) format('truetype'); } @font-face { - font-family: 'KaTeX_SansSerif'; - font-style: italic; - font-weight: 400; - src: - url($lib/assets/fonts/KaTeX_SansSerif-Italic.woff2) format('woff2'), - url($lib/assets/fonts/KaTeX_SansSerif-Italic.woff) format('woff'), - url($lib/assets/fonts/KaTeX_SansSerif-Italic.ttf) format('truetype'); + font-family: 'KaTeX_SansSerif'; + font-style: italic; + font-weight: 400; + src: + url($lib/assets/fonts/KaTeX_SansSerif-Italic.woff2) format('woff2'), + url($lib/assets/fonts/KaTeX_SansSerif-Italic.woff) format('woff'), + url($lib/assets/fonts/KaTeX_SansSerif-Italic.ttf) format('truetype'); } @font-face { - font-family: 'KaTeX_SansSerif'; - font-style: normal; - font-weight: 400; - src: - url($lib/assets/fonts/KaTeX_SansSerif-Regular.woff2) format('woff2'), - url($lib/assets/fonts/KaTeX_SansSerif-Regular.woff) format('woff'), - url($lib/assets/fonts/KaTeX_SansSerif-Regular.ttf) format('truetype'); + font-family: 'KaTeX_SansSerif'; + font-style: normal; + font-weight: 400; + src: + url($lib/assets/fonts/KaTeX_SansSerif-Regular.woff2) format('woff2'), + url($lib/assets/fonts/KaTeX_SansSerif-Regular.woff) format('woff'), + url($lib/assets/fonts/KaTeX_SansSerif-Regular.ttf) format('truetype'); } @font-face { - font-family: KaTeX_Script; - font-style: normal; - font-weight: 400; - src: - url($lib/assets/fonts/KaTeX_Script-Regular.woff2) format('woff2'), - url($lib/assets/fonts/KaTeX_Script-Regular.woff) format('woff'), - url($lib/assets/fonts/KaTeX_Script-Regular.ttf) format('truetype'); + font-family: KaTeX_Script; + font-style: normal; + font-weight: 400; + src: + url($lib/assets/fonts/KaTeX_Script-Regular.woff2) format('woff2'), + url($lib/assets/fonts/KaTeX_Script-Regular.woff) format('woff'), + url($lib/assets/fonts/KaTeX_Script-Regular.ttf) format('truetype'); } @font-face { - font-family: KaTeX_Size1; - font-style: normal; - font-weight: 400; - src: - url($lib/assets/fonts/KaTeX_Size1-Regular.woff2) format('woff2'), - url($lib/assets/fonts/KaTeX_Size1-Regular.woff) format('woff'), - url($lib/assets/fonts/KaTeX_Size1-Regular.ttf) format('truetype'); + font-family: KaTeX_Size1; + font-style: normal; + font-weight: 400; + src: + url($lib/assets/fonts/KaTeX_Size1-Regular.woff2) format('woff2'), + url($lib/assets/fonts/KaTeX_Size1-Regular.woff) format('woff'), + url($lib/assets/fonts/KaTeX_Size1-Regular.ttf) format('truetype'); } @font-face { - font-family: KaTeX_Size2; - font-style: normal; - font-weight: 400; - src: - url($lib/assets/fonts/KaTeX_Size2-Regular.woff2) format('woff2'), - url($lib/assets/fonts/KaTeX_Size2-Regular.woff) format('woff'), - url($lib/assets/fonts/KaTeX_Size2-Regular.ttf) format('truetype'); + font-family: KaTeX_Size2; + font-style: normal; + font-weight: 400; + src: + url($lib/assets/fonts/KaTeX_Size2-Regular.woff2) format('woff2'), + url($lib/assets/fonts/KaTeX_Size2-Regular.woff) format('woff'), + url($lib/assets/fonts/KaTeX_Size2-Regular.ttf) format('truetype'); } @font-face { - font-family: KaTeX_Size3; - font-style: normal; - font-weight: 400; - src: - url($lib/assets/fonts/KaTeX_Size3-Regular.woff2) format('woff2'), - url($lib/assets/fonts/KaTeX_Size3-Regular.woff) format('woff'), - url($lib/assets/fonts/KaTeX_Size3-Regular.ttf) format('truetype'); + font-family: KaTeX_Size3; + font-style: normal; + font-weight: 400; + src: + url($lib/assets/fonts/KaTeX_Size3-Regular.woff2) format('woff2'), + url($lib/assets/fonts/KaTeX_Size3-Regular.woff) format('woff'), + url($lib/assets/fonts/KaTeX_Size3-Regular.ttf) format('truetype'); } @font-face { - font-family: KaTeX_Size4; - font-style: normal; - font-weight: 400; - src: - url($lib/assets/fonts/KaTeX_Size4-Regular.woff2) format('woff2'), - url($lib/assets/fonts/KaTeX_Size4-Regular.woff) format('woff'), - url($lib/assets/fonts/KaTeX_Size4-Regular.ttf) format('truetype'); + font-family: KaTeX_Size4; + font-style: normal; + font-weight: 400; + src: + url($lib/assets/fonts/KaTeX_Size4-Regular.woff2) format('woff2'), + url($lib/assets/fonts/KaTeX_Size4-Regular.woff) format('woff'), + url($lib/assets/fonts/KaTeX_Size4-Regular.ttf) format('truetype'); } @font-face { - font-family: KaTeX_Typewriter; - font-style: normal; - font-weight: 400; - src: - url($lib/assets/fonts/KaTeX_Typewriter-Regular.woff2) format('woff2'), - url($lib/assets/fonts/KaTeX_Typewriter-Regular.woff) format('woff'), - url($lib/assets/fonts/KaTeX_Typewriter-Regular.ttf) format('truetype'); + font-family: KaTeX_Typewriter; + font-style: normal; + font-weight: 400; + src: + url($lib/assets/fonts/KaTeX_Typewriter-Regular.woff2) format('woff2'), + url($lib/assets/fonts/KaTeX_Typewriter-Regular.woff) format('woff'), + url($lib/assets/fonts/KaTeX_Typewriter-Regular.ttf) format('truetype'); } .katex { - text-rendering: auto; - font: - normal 1.21em KaTeX_Main, - Times New Roman, - serif; - line-height: 1.2; - text-indent: 0; + text-rendering: auto; + font: + normal 1.21em KaTeX_Main, + Times New Roman, + serif; + line-height: 1.2; + text-indent: 0; } .katex * { - -ms-high-contrast-adjust: none !important; - border-color: currentColor; + -ms-high-contrast-adjust: none !important; + border-color: currentColor; } .katex .katex-version:after { - content: '0.16.8'; + content: '0.16.8'; } .katex .katex-mathml { - clip: rect(1px, 1px, 1px, 1px); - border: 0; - height: 1px; - overflow: hidden; - padding: 0; - position: absolute; - width: 1px; + clip: rect(1px, 1px, 1px, 1px); + border: 0; + height: 1px; + overflow: hidden; + padding: 0; + position: absolute; + width: 1px; } .katex .katex-html > .newline { - display: block; + display: block; } .katex .base { - position: relative; - white-space: nowrap; - width: -webkit-min-content; - width: -moz-min-content; - width: min-content; + position: relative; + white-space: nowrap; + width: -webkit-min-content; + width: -moz-min-content; + width: min-content; } .katex .base, .katex .strut { - display: inline-block; + display: inline-block; } .katex .textbf { - font-weight: 700; + font-weight: 700; } .katex .textit { - font-style: italic; + font-style: italic; } .katex .textrm { - font-family: KaTeX_Main; + font-family: KaTeX_Main; } .katex .textsf { - font-family: KaTeX_SansSerif; + font-family: KaTeX_SansSerif; } .katex .texttt { - font-family: KaTeX_Typewriter; + font-family: KaTeX_Typewriter; } .katex .mathnormal { - font-family: KaTeX_Math; - font-style: italic; + font-family: KaTeX_Math; + font-style: italic; } .katex .mathit { - font-family: KaTeX_Main; - font-style: italic; + font-family: KaTeX_Main; + font-style: italic; } .katex .mathrm { - font-style: normal; + font-style: normal; } .katex .mathbf { - font-family: KaTeX_Main; - font-weight: 700; + font-family: KaTeX_Main; + font-weight: 700; } .katex .boldsymbol { - font-family: KaTeX_Math; - font-style: italic; - font-weight: 700; + font-family: KaTeX_Math; + font-style: italic; + font-weight: 700; } .katex .amsrm, .katex .mathbb, .katex .textbb { - font-family: KaTeX_AMS; + font-family: KaTeX_AMS; } .katex .mathcal { - font-family: KaTeX_Caligraphic; + font-family: KaTeX_Caligraphic; } .katex .mathfrak, .katex .textfrak { - font-family: KaTeX_Fraktur; + font-family: KaTeX_Fraktur; } .katex .mathtt { - font-family: KaTeX_Typewriter; + font-family: KaTeX_Typewriter; } .katex .mathscr, .katex .textscr { - font-family: KaTeX_Script; + font-family: KaTeX_Script; } .katex .mathsf, .katex .textsf { - font-family: KaTeX_SansSerif; + font-family: KaTeX_SansSerif; } .katex .mathboldsf, .katex .textboldsf { - font-family: KaTeX_SansSerif; - font-weight: 700; + font-family: KaTeX_SansSerif; + font-weight: 700; } .katex .mathitsf, .katex .textitsf { - font-family: KaTeX_SansSerif; - font-style: italic; + font-family: KaTeX_SansSerif; + font-style: italic; } .katex .mainrm { - font-family: KaTeX_Main; - font-style: normal; + font-family: KaTeX_Main; + font-style: normal; } .katex .vlist-t { - border-collapse: collapse; - display: inline-table; - table-layout: fixed; + border-collapse: collapse; + display: inline-table; + table-layout: fixed; } .katex .vlist-r { - display: table-row; + display: table-row; } .katex .vlist { - display: table-cell; - position: relative; - vertical-align: bottom; + display: table-cell; + position: relative; + vertical-align: bottom; } .katex .vlist > span { - display: block; - height: 0; - position: relative; + display: block; + height: 0; + position: relative; } .katex .vlist > span > span { - display: inline-block; + display: inline-block; } .katex .vlist > span > .pstrut { - overflow: hidden; - width: 0; + overflow: hidden; + width: 0; } .katex .vlist-t2 { - margin-right: -2px; + margin-right: -2px; } .katex .vlist-s { - display: table-cell; - font-size: 1px; - min-width: 2px; - vertical-align: bottom; - width: 2px; + display: table-cell; + font-size: 1px; + min-width: 2px; + vertical-align: bottom; + width: 2px; } .katex .vbox { - align-items: baseline; - display: inline-flex; - flex-direction: column; + align-items: baseline; + display: inline-flex; + flex-direction: column; } .katex .hbox { - width: 100%; + width: 100%; } .katex .hbox, .katex .thinbox { - display: inline-flex; - flex-direction: row; + display: inline-flex; + flex-direction: row; } .katex .thinbox { - max-width: 0; - width: 0; + max-width: 0; + width: 0; } .katex .msupsub { - text-align: left; + text-align: left; } .katex .mfrac > span > span { - text-align: center; + text-align: center; } .katex .mfrac .frac-line { - border-bottom-style: solid; - display: inline-block; - width: 100%; + border-bottom-style: solid; + display: inline-block; + width: 100%; } .katex .hdashline, .katex .hline, @@ -358,771 +358,771 @@ .katex .overline .overline-line, .katex .rule, .katex .underline .underline-line { - min-height: 1px; + min-height: 1px; } .katex .mspace { - display: inline-block; + display: inline-block; } .katex .clap, .katex .llap, .katex .rlap { - position: relative; - width: 0; + position: relative; + width: 0; } .katex .clap > .inner, .katex .llap > .inner, .katex .rlap > .inner { - position: absolute; + position: absolute; } .katex .clap > .fix, .katex .llap > .fix, .katex .rlap > .fix { - display: inline-block; + display: inline-block; } .katex .llap > .inner { - right: 0; + right: 0; } .katex .clap > .inner, .katex .rlap > .inner { - left: 0; + left: 0; } .katex .clap > .inner > span { - margin-left: -50%; - margin-right: 50%; + margin-left: -50%; + margin-right: 50%; } .katex .rule { - border: 0 solid; - display: inline-block; - position: relative; + border: 0 solid; + display: inline-block; + position: relative; } .katex .hline, .katex .overline .overline-line, .katex .underline .underline-line { - border-bottom-style: solid; - display: inline-block; - width: 100%; + border-bottom-style: solid; + display: inline-block; + width: 100%; } .katex .hdashline { - border-bottom-style: dashed; - display: inline-block; - width: 100%; + border-bottom-style: dashed; + display: inline-block; + width: 100%; } .katex .sqrt > .root { - margin-left: 0.27777778em; - margin-right: -0.55555556em; + margin-left: 0.27777778em; + margin-right: -0.55555556em; } .katex .fontsize-ensurer.reset-size1.size1, .katex .sizing.reset-size1.size1 { - font-size: 1em; + font-size: 1em; } .katex .fontsize-ensurer.reset-size1.size2, .katex .sizing.reset-size1.size2 { - font-size: 1.2em; + font-size: 1.2em; } .katex .fontsize-ensurer.reset-size1.size3, .katex .sizing.reset-size1.size3 { - font-size: 1.4em; + font-size: 1.4em; } .katex .fontsize-ensurer.reset-size1.size4, .katex .sizing.reset-size1.size4 { - font-size: 1.6em; + font-size: 1.6em; } .katex .fontsize-ensurer.reset-size1.size5, .katex .sizing.reset-size1.size5 { - font-size: 1.8em; + font-size: 1.8em; } .katex .fontsize-ensurer.reset-size1.size6, .katex .sizing.reset-size1.size6 { - font-size: 2em; + font-size: 2em; } .katex .fontsize-ensurer.reset-size1.size7, .katex .sizing.reset-size1.size7 { - font-size: 2.4em; + font-size: 2.4em; } .katex .fontsize-ensurer.reset-size1.size8, .katex .sizing.reset-size1.size8 { - font-size: 2.88em; + font-size: 2.88em; } .katex .fontsize-ensurer.reset-size1.size9, .katex .sizing.reset-size1.size9 { - font-size: 3.456em; + font-size: 3.456em; } .katex .fontsize-ensurer.reset-size1.size10, .katex .sizing.reset-size1.size10 { - font-size: 4.148em; + font-size: 4.148em; } .katex .fontsize-ensurer.reset-size1.size11, .katex .sizing.reset-size1.size11 { - font-size: 4.976em; + font-size: 4.976em; } .katex .fontsize-ensurer.reset-size2.size1, .katex .sizing.reset-size2.size1 { - font-size: 0.83333333em; + font-size: 0.83333333em; } .katex .fontsize-ensurer.reset-size2.size2, .katex .sizing.reset-size2.size2 { - font-size: 1em; + font-size: 1em; } .katex .fontsize-ensurer.reset-size2.size3, .katex .sizing.reset-size2.size3 { - font-size: 1.16666667em; + font-size: 1.16666667em; } .katex .fontsize-ensurer.reset-size2.size4, .katex .sizing.reset-size2.size4 { - font-size: 1.33333333em; + font-size: 1.33333333em; } .katex .fontsize-ensurer.reset-size2.size5, .katex .sizing.reset-size2.size5 { - font-size: 1.5em; + font-size: 1.5em; } .katex .fontsize-ensurer.reset-size2.size6, .katex .sizing.reset-size2.size6 { - font-size: 1.66666667em; + font-size: 1.66666667em; } .katex .fontsize-ensurer.reset-size2.size7, .katex .sizing.reset-size2.size7 { - font-size: 2em; + font-size: 2em; } .katex .fontsize-ensurer.reset-size2.size8, .katex .sizing.reset-size2.size8 { - font-size: 2.4em; + font-size: 2.4em; } .katex .fontsize-ensurer.reset-size2.size9, .katex .sizing.reset-size2.size9 { - font-size: 2.88em; + font-size: 2.88em; } .katex .fontsize-ensurer.reset-size2.size10, .katex .sizing.reset-size2.size10 { - font-size: 3.45666667em; + font-size: 3.45666667em; } .katex .fontsize-ensurer.reset-size2.size11, .katex .sizing.reset-size2.size11 { - font-size: 4.14666667em; + font-size: 4.14666667em; } .katex .fontsize-ensurer.reset-size3.size1, .katex .sizing.reset-size3.size1 { - font-size: 0.71428571em; + font-size: 0.71428571em; } .katex .fontsize-ensurer.reset-size3.size2, .katex .sizing.reset-size3.size2 { - font-size: 0.85714286em; + font-size: 0.85714286em; } .katex .fontsize-ensurer.reset-size3.size3, .katex .sizing.reset-size3.size3 { - font-size: 1em; + font-size: 1em; } .katex .fontsize-ensurer.reset-size3.size4, .katex .sizing.reset-size3.size4 { - font-size: 1.14285714em; + font-size: 1.14285714em; } .katex .fontsize-ensurer.reset-size3.size5, .katex .sizing.reset-size3.size5 { - font-size: 1.28571429em; + font-size: 1.28571429em; } .katex .fontsize-ensurer.reset-size3.size6, .katex .sizing.reset-size3.size6 { - font-size: 1.42857143em; + font-size: 1.42857143em; } .katex .fontsize-ensurer.reset-size3.size7, .katex .sizing.reset-size3.size7 { - font-size: 1.71428571em; + font-size: 1.71428571em; } .katex .fontsize-ensurer.reset-size3.size8, .katex .sizing.reset-size3.size8 { - font-size: 2.05714286em; + font-size: 2.05714286em; } .katex .fontsize-ensurer.reset-size3.size9, .katex .sizing.reset-size3.size9 { - font-size: 2.46857143em; + font-size: 2.46857143em; } .katex .fontsize-ensurer.reset-size3.size10, .katex .sizing.reset-size3.size10 { - font-size: 2.96285714em; + font-size: 2.96285714em; } .katex .fontsize-ensurer.reset-size3.size11, .katex .sizing.reset-size3.size11 { - font-size: 3.55428571em; + font-size: 3.55428571em; } .katex .fontsize-ensurer.reset-size4.size1, .katex .sizing.reset-size4.size1 { - font-size: 0.625em; + font-size: 0.625em; } .katex .fontsize-ensurer.reset-size4.size2, .katex .sizing.reset-size4.size2 { - font-size: 0.75em; + font-size: 0.75em; } .katex .fontsize-ensurer.reset-size4.size3, .katex .sizing.reset-size4.size3 { - font-size: 0.875em; + font-size: 0.875em; } .katex .fontsize-ensurer.reset-size4.size4, .katex .sizing.reset-size4.size4 { - font-size: 1em; + font-size: 1em; } .katex .fontsize-ensurer.reset-size4.size5, .katex .sizing.reset-size4.size5 { - font-size: 1.125em; + font-size: 1.125em; } .katex .fontsize-ensurer.reset-size4.size6, .katex .sizing.reset-size4.size6 { - font-size: 1.25em; + font-size: 1.25em; } .katex .fontsize-ensurer.reset-size4.size7, .katex .sizing.reset-size4.size7 { - font-size: 1.5em; + font-size: 1.5em; } .katex .fontsize-ensurer.reset-size4.size8, .katex .sizing.reset-size4.size8 { - font-size: 1.8em; + font-size: 1.8em; } .katex .fontsize-ensurer.reset-size4.size9, .katex .sizing.reset-size4.size9 { - font-size: 2.16em; + font-size: 2.16em; } .katex .fontsize-ensurer.reset-size4.size10, .katex .sizing.reset-size4.size10 { - font-size: 2.5925em; + font-size: 2.5925em; } .katex .fontsize-ensurer.reset-size4.size11, .katex .sizing.reset-size4.size11 { - font-size: 3.11em; + font-size: 3.11em; } .katex .fontsize-ensurer.reset-size5.size1, .katex .sizing.reset-size5.size1 { - font-size: 0.55555556em; + font-size: 0.55555556em; } .katex .fontsize-ensurer.reset-size5.size2, .katex .sizing.reset-size5.size2 { - font-size: 0.66666667em; + font-size: 0.66666667em; } .katex .fontsize-ensurer.reset-size5.size3, .katex .sizing.reset-size5.size3 { - font-size: 0.77777778em; + font-size: 0.77777778em; } .katex .fontsize-ensurer.reset-size5.size4, .katex .sizing.reset-size5.size4 { - font-size: 0.88888889em; + font-size: 0.88888889em; } .katex .fontsize-ensurer.reset-size5.size5, .katex .sizing.reset-size5.size5 { - font-size: 1em; + font-size: 1em; } .katex .fontsize-ensurer.reset-size5.size6, .katex .sizing.reset-size5.size6 { - font-size: 1.11111111em; + font-size: 1.11111111em; } .katex .fontsize-ensurer.reset-size5.size7, .katex .sizing.reset-size5.size7 { - font-size: 1.33333333em; + font-size: 1.33333333em; } .katex .fontsize-ensurer.reset-size5.size8, .katex .sizing.reset-size5.size8 { - font-size: 1.6em; + font-size: 1.6em; } .katex .fontsize-ensurer.reset-size5.size9, .katex .sizing.reset-size5.size9 { - font-size: 1.92em; + font-size: 1.92em; } .katex .fontsize-ensurer.reset-size5.size10, .katex .sizing.reset-size5.size10 { - font-size: 2.30444444em; + font-size: 2.30444444em; } .katex .fontsize-ensurer.reset-size5.size11, .katex .sizing.reset-size5.size11 { - font-size: 2.76444444em; + font-size: 2.76444444em; } .katex .fontsize-ensurer.reset-size6.size1, .katex .sizing.reset-size6.size1 { - font-size: 0.5em; + font-size: 0.5em; } .katex .fontsize-ensurer.reset-size6.size2, .katex .sizing.reset-size6.size2 { - font-size: 0.6em; + font-size: 0.6em; } .katex .fontsize-ensurer.reset-size6.size3, .katex .sizing.reset-size6.size3 { - font-size: 0.7em; + font-size: 0.7em; } .katex .fontsize-ensurer.reset-size6.size4, .katex .sizing.reset-size6.size4 { - font-size: 0.8em; + font-size: 0.8em; } .katex .fontsize-ensurer.reset-size6.size5, .katex .sizing.reset-size6.size5 { - font-size: 0.9em; + font-size: 0.9em; } .katex .fontsize-ensurer.reset-size6.size6, .katex .sizing.reset-size6.size6 { - font-size: 1em; + font-size: 1em; } .katex .fontsize-ensurer.reset-size6.size7, .katex .sizing.reset-size6.size7 { - font-size: 1.2em; + font-size: 1.2em; } .katex .fontsize-ensurer.reset-size6.size8, .katex .sizing.reset-size6.size8 { - font-size: 1.44em; + font-size: 1.44em; } .katex .fontsize-ensurer.reset-size6.size9, .katex .sizing.reset-size6.size9 { - font-size: 1.728em; + font-size: 1.728em; } .katex .fontsize-ensurer.reset-size6.size10, .katex .sizing.reset-size6.size10 { - font-size: 2.074em; + font-size: 2.074em; } .katex .fontsize-ensurer.reset-size6.size11, .katex .sizing.reset-size6.size11 { - font-size: 2.488em; + font-size: 2.488em; } .katex .fontsize-ensurer.reset-size7.size1, .katex .sizing.reset-size7.size1 { - font-size: 0.41666667em; + font-size: 0.41666667em; } .katex .fontsize-ensurer.reset-size7.size2, .katex .sizing.reset-size7.size2 { - font-size: 0.5em; + font-size: 0.5em; } .katex .fontsize-ensurer.reset-size7.size3, .katex .sizing.reset-size7.size3 { - font-size: 0.58333333em; + font-size: 0.58333333em; } .katex .fontsize-ensurer.reset-size7.size4, .katex .sizing.reset-size7.size4 { - font-size: 0.66666667em; + font-size: 0.66666667em; } .katex .fontsize-ensurer.reset-size7.size5, .katex .sizing.reset-size7.size5 { - font-size: 0.75em; + font-size: 0.75em; } .katex .fontsize-ensurer.reset-size7.size6, .katex .sizing.reset-size7.size6 { - font-size: 0.83333333em; + font-size: 0.83333333em; } .katex .fontsize-ensurer.reset-size7.size7, .katex .sizing.reset-size7.size7 { - font-size: 1em; + font-size: 1em; } .katex .fontsize-ensurer.reset-size7.size8, .katex .sizing.reset-size7.size8 { - font-size: 1.2em; + font-size: 1.2em; } .katex .fontsize-ensurer.reset-size7.size9, .katex .sizing.reset-size7.size9 { - font-size: 1.44em; + font-size: 1.44em; } .katex .fontsize-ensurer.reset-size7.size10, .katex .sizing.reset-size7.size10 { - font-size: 1.72833333em; + font-size: 1.72833333em; } .katex .fontsize-ensurer.reset-size7.size11, .katex .sizing.reset-size7.size11 { - font-size: 2.07333333em; + font-size: 2.07333333em; } .katex .fontsize-ensurer.reset-size8.size1, .katex .sizing.reset-size8.size1 { - font-size: 0.34722222em; + font-size: 0.34722222em; } .katex .fontsize-ensurer.reset-size8.size2, .katex .sizing.reset-size8.size2 { - font-size: 0.41666667em; + font-size: 0.41666667em; } .katex .fontsize-ensurer.reset-size8.size3, .katex .sizing.reset-size8.size3 { - font-size: 0.48611111em; + font-size: 0.48611111em; } .katex .fontsize-ensurer.reset-size8.size4, .katex .sizing.reset-size8.size4 { - font-size: 0.55555556em; + font-size: 0.55555556em; } .katex .fontsize-ensurer.reset-size8.size5, .katex .sizing.reset-size8.size5 { - font-size: 0.625em; + font-size: 0.625em; } .katex .fontsize-ensurer.reset-size8.size6, .katex .sizing.reset-size8.size6 { - font-size: 0.69444444em; + font-size: 0.69444444em; } .katex .fontsize-ensurer.reset-size8.size7, .katex .sizing.reset-size8.size7 { - font-size: 0.83333333em; + font-size: 0.83333333em; } .katex .fontsize-ensurer.reset-size8.size8, .katex .sizing.reset-size8.size8 { - font-size: 1em; + font-size: 1em; } .katex .fontsize-ensurer.reset-size8.size9, .katex .sizing.reset-size8.size9 { - font-size: 1.2em; + font-size: 1.2em; } .katex .fontsize-ensurer.reset-size8.size10, .katex .sizing.reset-size8.size10 { - font-size: 1.44027778em; + font-size: 1.44027778em; } .katex .fontsize-ensurer.reset-size8.size11, .katex .sizing.reset-size8.size11 { - font-size: 1.72777778em; + font-size: 1.72777778em; } .katex .fontsize-ensurer.reset-size9.size1, .katex .sizing.reset-size9.size1 { - font-size: 0.28935185em; + font-size: 0.28935185em; } .katex .fontsize-ensurer.reset-size9.size2, .katex .sizing.reset-size9.size2 { - font-size: 0.34722222em; + font-size: 0.34722222em; } .katex .fontsize-ensurer.reset-size9.size3, .katex .sizing.reset-size9.size3 { - font-size: 0.40509259em; + font-size: 0.40509259em; } .katex .fontsize-ensurer.reset-size9.size4, .katex .sizing.reset-size9.size4 { - font-size: 0.46296296em; + font-size: 0.46296296em; } .katex .fontsize-ensurer.reset-size9.size5, .katex .sizing.reset-size9.size5 { - font-size: 0.52083333em; + font-size: 0.52083333em; } .katex .fontsize-ensurer.reset-size9.size6, .katex .sizing.reset-size9.size6 { - font-size: 0.5787037em; + font-size: 0.5787037em; } .katex .fontsize-ensurer.reset-size9.size7, .katex .sizing.reset-size9.size7 { - font-size: 0.69444444em; + font-size: 0.69444444em; } .katex .fontsize-ensurer.reset-size9.size8, .katex .sizing.reset-size9.size8 { - font-size: 0.83333333em; + font-size: 0.83333333em; } .katex .fontsize-ensurer.reset-size9.size9, .katex .sizing.reset-size9.size9 { - font-size: 1em; + font-size: 1em; } .katex .fontsize-ensurer.reset-size9.size10, .katex .sizing.reset-size9.size10 { - font-size: 1.20023148em; + font-size: 1.20023148em; } .katex .fontsize-ensurer.reset-size9.size11, .katex .sizing.reset-size9.size11 { - font-size: 1.43981481em; + font-size: 1.43981481em; } .katex .fontsize-ensurer.reset-size10.size1, .katex .sizing.reset-size10.size1 { - font-size: 0.24108004em; + font-size: 0.24108004em; } .katex .fontsize-ensurer.reset-size10.size2, .katex .sizing.reset-size10.size2 { - font-size: 0.28929605em; + font-size: 0.28929605em; } .katex .fontsize-ensurer.reset-size10.size3, .katex .sizing.reset-size10.size3 { - font-size: 0.33751205em; + font-size: 0.33751205em; } .katex .fontsize-ensurer.reset-size10.size4, .katex .sizing.reset-size10.size4 { - font-size: 0.38572806em; + font-size: 0.38572806em; } .katex .fontsize-ensurer.reset-size10.size5, .katex .sizing.reset-size10.size5 { - font-size: 0.43394407em; + font-size: 0.43394407em; } .katex .fontsize-ensurer.reset-size10.size6, .katex .sizing.reset-size10.size6 { - font-size: 0.48216008em; + font-size: 0.48216008em; } .katex .fontsize-ensurer.reset-size10.size7, .katex .sizing.reset-size10.size7 { - font-size: 0.57859209em; + font-size: 0.57859209em; } .katex .fontsize-ensurer.reset-size10.size8, .katex .sizing.reset-size10.size8 { - font-size: 0.69431051em; + font-size: 0.69431051em; } .katex .fontsize-ensurer.reset-size10.size9, .katex .sizing.reset-size10.size9 { - font-size: 0.83317261em; + font-size: 0.83317261em; } .katex .fontsize-ensurer.reset-size10.size10, .katex .sizing.reset-size10.size10 { - font-size: 1em; + font-size: 1em; } .katex .fontsize-ensurer.reset-size10.size11, .katex .sizing.reset-size10.size11 { - font-size: 1.19961427em; + font-size: 1.19961427em; } .katex .fontsize-ensurer.reset-size11.size1, .katex .sizing.reset-size11.size1 { - font-size: 0.20096463em; + font-size: 0.20096463em; } .katex .fontsize-ensurer.reset-size11.size2, .katex .sizing.reset-size11.size2 { - font-size: 0.24115756em; + font-size: 0.24115756em; } .katex .fontsize-ensurer.reset-size11.size3, .katex .sizing.reset-size11.size3 { - font-size: 0.28135048em; + font-size: 0.28135048em; } .katex .fontsize-ensurer.reset-size11.size4, .katex .sizing.reset-size11.size4 { - font-size: 0.32154341em; + font-size: 0.32154341em; } .katex .fontsize-ensurer.reset-size11.size5, .katex .sizing.reset-size11.size5 { - font-size: 0.36173633em; + font-size: 0.36173633em; } .katex .fontsize-ensurer.reset-size11.size6, .katex .sizing.reset-size11.size6 { - font-size: 0.40192926em; + font-size: 0.40192926em; } .katex .fontsize-ensurer.reset-size11.size7, .katex .sizing.reset-size11.size7 { - font-size: 0.48231511em; + font-size: 0.48231511em; } .katex .fontsize-ensurer.reset-size11.size8, .katex .sizing.reset-size11.size8 { - font-size: 0.57877814em; + font-size: 0.57877814em; } .katex .fontsize-ensurer.reset-size11.size9, .katex .sizing.reset-size11.size9 { - font-size: 0.69453376em; + font-size: 0.69453376em; } .katex .fontsize-ensurer.reset-size11.size10, .katex .sizing.reset-size11.size10 { - font-size: 0.83360129em; + font-size: 0.83360129em; } .katex .fontsize-ensurer.reset-size11.size11, .katex .sizing.reset-size11.size11 { - font-size: 1em; + font-size: 1em; } .katex .delimsizing.size1 { - font-family: KaTeX_Size1; + font-family: KaTeX_Size1; } .katex .delimsizing.size2 { - font-family: KaTeX_Size2; + font-family: KaTeX_Size2; } .katex .delimsizing.size3 { - font-family: KaTeX_Size3; + font-family: KaTeX_Size3; } .katex .delimsizing.size4 { - font-family: KaTeX_Size4; + font-family: KaTeX_Size4; } .katex .delimsizing.mult .delim-size1 > span { - font-family: KaTeX_Size1; + font-family: KaTeX_Size1; } .katex .delimsizing.mult .delim-size4 > span { - font-family: KaTeX_Size4; + font-family: KaTeX_Size4; } .katex .nulldelimiter { - display: inline-block; - width: 0.12em; + display: inline-block; + width: 0.12em; } .katex .delimcenter, .katex .op-symbol { - position: relative; + position: relative; } .katex .op-symbol.small-op { - font-family: KaTeX_Size1; + font-family: KaTeX_Size1; } .katex .op-symbol.large-op { - font-family: KaTeX_Size2; + font-family: KaTeX_Size2; } .katex .accent > .vlist-t, .katex .op-limits > .vlist-t { - text-align: center; + text-align: center; } .katex .accent .accent-body { - position: relative; + position: relative; } .katex .accent .accent-body:not(.accent-full) { - width: 0; + width: 0; } .katex .overlay { - display: block; + display: block; } .katex .mtable .vertical-separator { - display: inline-block; - min-width: 1px; + display: inline-block; + min-width: 1px; } .katex .mtable .arraycolsep { - display: inline-block; + display: inline-block; } .katex .mtable .col-align-c > .vlist-t { - text-align: center; + text-align: center; } .katex .mtable .col-align-l > .vlist-t { - text-align: left; + text-align: left; } .katex .mtable .col-align-r > .vlist-t { - text-align: right; + text-align: right; } .katex .svg-align { - text-align: left; + text-align: left; } .katex svg { - fill: currentColor; - stroke: currentColor; - fill-rule: nonzero; - fill-opacity: 1; - stroke-width: 1; - stroke-linecap: butt; - stroke-linejoin: miter; - stroke-miterlimit: 4; - stroke-dasharray: none; - stroke-dashoffset: 0; - stroke-opacity: 1; - display: block; - height: inherit; - position: absolute; - width: 100%; + fill: currentColor; + stroke: currentColor; + fill-rule: nonzero; + fill-opacity: 1; + stroke-width: 1; + stroke-linecap: butt; + stroke-linejoin: miter; + stroke-miterlimit: 4; + stroke-dasharray: none; + stroke-dashoffset: 0; + stroke-opacity: 1; + display: block; + height: inherit; + position: absolute; + width: 100%; } .katex svg path { - stroke: none; + stroke: none; } .katex img { - border-style: none; - max-height: none; - max-width: none; - min-height: 0; - min-width: 0; + border-style: none; + max-height: none; + max-width: none; + min-height: 0; + min-width: 0; } .katex .stretchy { - display: block; - overflow: hidden; - position: relative; - width: 100%; + display: block; + overflow: hidden; + position: relative; + width: 100%; } .katex .stretchy:after, .katex .stretchy:before { - content: ''; + content: ''; } .katex .hide-tail { - overflow: hidden; - position: relative; - width: 100%; + overflow: hidden; + position: relative; + width: 100%; } .katex .halfarrow-left { - left: 0; - overflow: hidden; - position: absolute; - width: 50.2%; + left: 0; + overflow: hidden; + position: absolute; + width: 50.2%; } .katex .halfarrow-right { - overflow: hidden; - position: absolute; - right: 0; - width: 50.2%; + overflow: hidden; + position: absolute; + right: 0; + width: 50.2%; } .katex .brace-left { - left: 0; - overflow: hidden; - position: absolute; - width: 25.1%; + left: 0; + overflow: hidden; + position: absolute; + width: 25.1%; } .katex .brace-center { - left: 25%; - overflow: hidden; - position: absolute; - width: 50%; + left: 25%; + overflow: hidden; + position: absolute; + width: 50%; } .katex .brace-right { - overflow: hidden; - position: absolute; - right: 0; - width: 25.1%; + overflow: hidden; + position: absolute; + right: 0; + width: 25.1%; } .katex .x-arrow-pad { - padding: 0 0.5em; + padding: 0 0.5em; } .katex .cd-arrow-pad { - padding: 0 0.55556em 0 0.27778em; + padding: 0 0.55556em 0 0.27778em; } .katex .mover, .katex .munder, .katex .x-arrow { - text-align: center; + text-align: center; } .katex .boxpad { - padding: 0 0.3em; + padding: 0 0.3em; } .katex .fbox, .katex .fcolorbox { - border: 0.04em solid; - box-sizing: border-box; + border: 0.04em solid; + box-sizing: border-box; } .katex .cancel-pad { - padding: 0 0.2em; + padding: 0 0.2em; } .katex .cancel-lap { - margin-left: -0.2em; - margin-right: -0.2em; + margin-left: -0.2em; + margin-right: -0.2em; } .katex .sout { - border-bottom-style: solid; - border-bottom-width: 0.08em; + border-bottom-style: solid; + border-bottom-width: 0.08em; } .katex .angl { - border-right: 0.049em solid; - border-top: 0.049em solid; - box-sizing: border-box; - margin-right: 0.03889em; + border-right: 0.049em solid; + border-top: 0.049em solid; + box-sizing: border-box; + margin-right: 0.03889em; } .katex .anglpad { - padding: 0 0.03889em; + padding: 0 0.03889em; } .katex .eqn-num:before { - content: '(' counter(katexEqnNo) ')'; - counter-increment: katexEqnNo; + content: '(' counter(katexEqnNo) ')'; + counter-increment: katexEqnNo; } .katex .mml-eqn-num:before { - content: '(' counter(mmlEqnNo) ')'; - counter-increment: mmlEqnNo; + content: '(' counter(mmlEqnNo) ')'; + counter-increment: mmlEqnNo; } .katex .mtr-glue { - width: 50%; + width: 50%; } .katex .cd-vert-arrow { - display: inline-block; - position: relative; + display: inline-block; + position: relative; } .katex .cd-label-left { - display: inline-block; - position: absolute; - right: calc(50% + 0.3em); - text-align: left; + display: inline-block; + position: absolute; + right: calc(50% + 0.3em); + text-align: left; } .katex .cd-label-right { - display: inline-block; - left: calc(50% + 0.3em); - position: absolute; - text-align: right; + display: inline-block; + left: calc(50% + 0.3em); + position: absolute; + text-align: right; } .katex-display { - display: block; - margin: 1em 0; - text-align: center; + display: block; + margin: 1em 0; + text-align: center; } .katex-display > .katex { - display: block; - text-align: center; - white-space: nowrap; + display: block; + text-align: center; + white-space: nowrap; } .katex-display > .katex > .katex-html { - display: block; - position: relative; + display: block; + position: relative; } .katex-display > .katex > .katex-html > .tag { - position: absolute; - right: 0; + position: absolute; + right: 0; } .katex-display.leqno > .katex > .katex-html > .tag { - left: 0; - right: auto; + left: 0; + right: auto; } .katex-display.fleqn > .katex { - padding-left: 2em; - text-align: left; + padding-left: 2em; + text-align: left; } body { - counter-reset: katexEqnNo mmlEqnNo; + counter-reset: katexEqnNo mmlEqnNo; } diff --git a/src/lib/styles/markdown.pcss b/src/lib/styles/markdown.pcss index 528291f..c0b1766 100644 --- a/src/lib/styles/markdown.pcss +++ b/src/lib/styles/markdown.pcss @@ -1,167 +1,167 @@ .markdown-body { - @apply text-primary/90; - h2 { - @apply text-3xl font-serif mb-5 mt-16; - } - section:first-child h2 { - @apply mt-6; - } - h3, - h4 { - @apply text-2xl mb-5 mt-12 text-muted-foreground; - } + @apply text-primary/90; + h2 { + @apply text-3xl font-serif mb-5 mt-16; + } + section:first-child h2 { + @apply mt-6; + } + h3, + h4 { + @apply text-2xl mb-5 mt-12 text-muted-foreground; + } - p { - @apply leading-loose my-2; - } + p { + @apply leading-loose my-2; + } - ol, - ul { - margin: 1em; - } - ol li ol, - ol li ul, - ul li ol, - ul li ul { - margin: 0 2em; - } - ol li p, - ul li p { - margin: 0; - } + ol, + ul { + margin: 1em; + } + ol li ol, + ol li ul, + ul li ol, + ul li ul { + margin: 0 2em; + } + ol li p, + ul li p { + margin: 0; + } - a { - @apply text-blue-500 dark:text-blue-600 hover:underline; - } + a { + @apply text-blue-500 dark:text-blue-600 hover:underline; + } - dl { - font-family: monospace; - } - dl dt { - font-weight: bold; - } - dl dd { - margin: -1em 0 1em 1em; - } + dl { + font-family: monospace; + } + dl dt { + font-weight: bold; + } + dl dd { + margin: -1em 0 1em 1em; + } - img { - @apply max-w-[80%] mx-auto my-8 rounded-xl shadow-lg; - } + img { + @apply max-w-[80%] mx-auto my-8 rounded-xl shadow-lg; + } - blockquote:not(.markdown-alert) { - @apply border-l-4 border-l-muted-foreground my-4 pl-4 italic mx-4; - } + blockquote:not(.markdown-alert) { + @apply border-l-4 border-l-muted-foreground my-4 pl-4 italic mx-4; + } - table { - @apply max-w-3xl xl:max-w-5xl; - font-size: 1rem; - text-align: left; - caption-side: bottom; - margin-bottom: 2em; - } - table * { - border: none; - } - table thead, - table tr { - display: table; - table-layout: fixed; - width: 100%; - } - table tr:nth-child(even) { - background-color: rgba(200, 200, 200, 0.2); - } - table tbody { - display: block; - max-height: 70vh; - overflow-y: auto; - } - table td, - table th { - padding: 0.25em; - } + table { + @apply max-w-3xl xl:max-w-5xl; + font-size: 1rem; + text-align: left; + caption-side: bottom; + margin-bottom: 2em; + } + table * { + border: none; + } + table thead, + table tr { + display: table; + table-layout: fixed; + width: 100%; + } + table tr:nth-child(even) { + background-color: rgba(200, 200, 200, 0.2); + } + table tbody { + display: block; + max-height: 70vh; + overflow-y: auto; + } + table td, + table th { + padding: 0.25em; + } - table, - .highlight > pre, - pre.example { - @apply p-4 border-2 border-primary/10 font-sans; - max-height: 70vh; - margin: 1em 0; - overflow: auto; - font-size: 0.85rem; - } + table, + .highlight > pre, + pre.example { + @apply p-4 border-2 border-primary/10 font-sans; + max-height: 70vh; + margin: 1em 0; + overflow: auto; + font-size: 0.85rem; + } - figure { - margin: 1em 0; - } - figure figcaption { - font-family: monospace; - font-size: 0.75em; - text-align: center; - color: grey; - } + figure { + margin: 1em 0; + } + figure figcaption { + font-family: monospace; + font-size: 0.75em; + text-align: center; + color: grey; + } - /* KaTeX formatting */ - .katex-display { - @apply max-w-3xl overflow-x-auto overflow-y-hidden; - } + /* KaTeX formatting */ + .katex-display { + @apply max-w-3xl overflow-x-auto overflow-y-hidden; + } - /* Markdown Alert formatting */ - .markdown-alert { - @apply border-l-4 rounded-xl px-4 py-1 my-4 shadow-md dark:shadow-none; - } - .markdown-alert.markdown-alert-caution { - @apply border-l-red-600 bg-red-100 dark:bg-red-900 dark:text-red-100; - } - .markdown-alert-title { - @apply font-medium text-xl font-sans; - } - .markdown-alert-caution > .markdown-alert-title { - @apply text-red-600 fill-red-600 dark:text-red-100 dark:fill-red-100; - } - .markdown-alert.markdown-alert-tip { - @apply border-l-green-600 bg-green-100 dark:bg-green-900 dark:text-green-100; - } - .markdown-alert-tip > .markdown-alert-title { - @apply text-green-600 fill-green-600 dark:text-green-100 dark:fill-green-100; - } + /* Markdown Alert formatting */ + .markdown-alert { + @apply border-l-4 rounded-xl px-4 py-1 my-4 shadow-md dark:shadow-none; + } + .markdown-alert.markdown-alert-caution { + @apply border-l-red-600 bg-red-100 dark:bg-red-900 dark:text-red-100; + } + .markdown-alert-title { + @apply font-medium text-xl font-sans; + } + .markdown-alert-caution > .markdown-alert-title { + @apply text-red-600 fill-red-600 dark:text-red-100 dark:fill-red-100; + } + .markdown-alert.markdown-alert-tip { + @apply border-l-green-600 bg-green-100 dark:bg-green-900 dark:text-green-100; + } + .markdown-alert-tip > .markdown-alert-title { + @apply text-green-600 fill-green-600 dark:text-green-100 dark:fill-green-100; + } - .markdown-alert.markdown-alert-important { - @apply border-l-purple-600 bg-purple-100 dark:bg-purple-900 dark:text-purple-100; - } - .markdown-alert-important > .markdown-alert-title { - @apply text-purple-600 fill-purple-600 dark:text-purple-100 dark:fill-purple-100; - } + .markdown-alert.markdown-alert-important { + @apply border-l-purple-600 bg-purple-100 dark:bg-purple-900 dark:text-purple-100; + } + .markdown-alert-important > .markdown-alert-title { + @apply text-purple-600 fill-purple-600 dark:text-purple-100 dark:fill-purple-100; + } - .markdown-alert.markdown-alert-note { - @apply border-l-blue-600 bg-blue-100 dark:bg-blue-900 dark:text-blue-100; - } - .markdown-alert-note > .markdown-alert-title { - @apply text-blue-600 fill-blue-600 dark:text-blue-100 dark:fill-blue-100; - } + .markdown-alert.markdown-alert-note { + @apply border-l-blue-600 bg-blue-100 dark:bg-blue-900 dark:text-blue-100; + } + .markdown-alert-note > .markdown-alert-title { + @apply text-blue-600 fill-blue-600 dark:text-blue-100 dark:fill-blue-100; + } - .markdown-alert.markdown-alert-warning { - @apply border-l-yellow-600 bg-yellow-100 dark:bg-yellow-900 dark:text-yellow-100; - } - .markdown-alert-warning > .markdown-alert-title { - @apply text-yellow-600 fill-yellow-600 dark:text-yellow-100 dark:fill-yellow-100; - } - .markdown-alert .markdown-alert-title .octicon { - margin-right: 0.5rem; - overflow: visible !important; + .markdown-alert.markdown-alert-warning { + @apply border-l-yellow-600 bg-yellow-100 dark:bg-yellow-900 dark:text-yellow-100; + } + .markdown-alert-warning > .markdown-alert-title { + @apply text-yellow-600 fill-yellow-600 dark:text-yellow-100 dark:fill-yellow-100; + } + .markdown-alert .markdown-alert-title .octicon { + margin-right: 0.5rem; + overflow: visible !important; - -webkit-mask: var(--oct-icon) no-repeat; - mask: var(--oct-icon) no-repeat; - -webkit-mask-size: 100% 100%; - mask-size: 100% 100%; - background-color: currentColor; - color: inherit; - display: inline-block; - vertical-align: -0.125em; - width: 1em; - height: 1em; - } - .hljs { - @apply my-4 rounded-xl shadow-lg overflow-x-auto text-wrap; - } + -webkit-mask: var(--oct-icon) no-repeat; + mask: var(--oct-icon) no-repeat; + -webkit-mask-size: 100% 100%; + mask-size: 100% 100%; + background-color: currentColor; + color: inherit; + display: inline-block; + vertical-align: -0.125em; + width: 1em; + height: 1em; + } + .hljs { + @apply my-4 rounded-xl shadow-lg overflow-x-auto text-wrap; + } } diff --git a/src/lib/utils.ts b/src/lib/utils.ts index eba19d8..bcd7cfe 100644 --- a/src/lib/utils.ts +++ b/src/lib/utils.ts @@ -1,56 +1,56 @@ -import { type ClassValue, clsx } from 'clsx'; -import { twMerge } from 'tailwind-merge'; -import { cubicOut } from 'svelte/easing'; -import type { TransitionConfig } from 'svelte/transition'; +import { type ClassValue, clsx } from 'clsx' +import { twMerge } from 'tailwind-merge' +import { cubicOut } from 'svelte/easing' +import type { TransitionConfig } from 'svelte/transition' export function cn(...inputs: ClassValue[]) { - return twMerge(clsx(inputs)); + return twMerge(clsx(inputs)) } type FlyAndScaleParams = { - y?: number; - x?: number; - start?: number; - duration?: number; -}; + y?: number + x?: number + start?: number + duration?: number +} export const flyAndScale = ( - node: Element, - params: FlyAndScaleParams = { y: -8, x: 0, start: 0.95, duration: 150 } + node: Element, + params: FlyAndScaleParams = { y: -8, x: 0, start: 0.95, duration: 150 } ): TransitionConfig => { - const style = getComputedStyle(node); - const transform = style.transform === 'none' ? '' : style.transform; + const style = getComputedStyle(node) + const transform = style.transform === 'none' ? '' : style.transform - const scaleConversion = (valueA: number, scaleA: [number, number], scaleB: [number, number]) => { - const [minA, maxA] = scaleA; - const [minB, maxB] = scaleB; + const scaleConversion = (valueA: number, scaleA: [number, number], scaleB: [number, number]) => { + const [minA, maxA] = scaleA + const [minB, maxB] = scaleB - const percentage = (valueA - minA) / (maxA - minA); - const valueB = percentage * (maxB - minB) + minB; + const percentage = (valueA - minA) / (maxA - minA) + const valueB = percentage * (maxB - minB) + minB - return valueB; - }; + return valueB + } - const styleToString = (style: Record): string => { - return Object.keys(style).reduce((str, key) => { - if (style[key] === undefined) return str; - return str + `${key}:${style[key]};`; - }, ''); - }; + const styleToString = (style: Record): string => { + return Object.keys(style).reduce((str, key) => { + if (style[key] === undefined) return str + return str + `${key}:${style[key]};` + }, '') + } - return { - duration: params.duration ?? 200, - delay: 0, - css: (t) => { - const y = scaleConversion(t, [0, 1], [params.y ?? 5, 0]); - const x = scaleConversion(t, [0, 1], [params.x ?? 0, 0]); - const scale = scaleConversion(t, [0, 1], [params.start ?? 0.95, 1]); + return { + duration: params.duration ?? 200, + delay: 0, + css: (t) => { + const y = scaleConversion(t, [0, 1], [params.y ?? 5, 0]) + const x = scaleConversion(t, [0, 1], [params.x ?? 0, 0]) + const scale = scaleConversion(t, [0, 1], [params.start ?? 0.95, 1]) - return styleToString({ - transform: `${transform} translate3d(${x}px, ${y}px, 0) scale(${scale})`, - opacity: t - }); - }, - easing: cubicOut - }; -}; + return styleToString({ + transform: `${transform} translate3d(${x}px, ${y}px, 0) scale(${scale})`, + opacity: t + }) + }, + easing: cubicOut + } +} diff --git a/src/lib/utils/crawl.ts b/src/lib/utils/crawl.ts index 0108281..edffbde 100644 --- a/src/lib/utils/crawl.ts +++ b/src/lib/utils/crawl.ts @@ -1,52 +1,52 @@ -import { readdir, readFile } from 'fs/promises'; -import { join } from 'path'; -import toml from 'toml'; +import { readdir, readFile } from 'fs/promises' +import { join } from 'path' +import toml from 'toml' const crawl = async () => { - const blogPath = join(process.cwd(), 'blog'); - const years = await readdir(blogPath); + const blogPath = join(process.cwd(), 'blog') + const years = await readdir(blogPath) - const posts: { - [key: string]: { - metadata: PostMeta; - content: string; - }; - } = {}; + const posts: { + [key: string]: { + metadata: PostMeta + content: string + } + } = {} - for (const year of years) { - const yearPath = join(blogPath, year); - const directories = await readdir(yearPath); + for (const year of years) { + const yearPath = join(blogPath, year) + const directories = await readdir(yearPath) - for (const directory of directories) { - const postPath = join(yearPath, directory); - try { - await readFile(join(postPath, '.blogignore'), 'utf-8'); - continue; - } catch (error) { - // If the file doesn't exist, continue with the rest of the code - } - const postTomlPath = join(postPath, 'post.toml'); - const contentPath = join(postPath, 'content.md'); + for (const directory of directories) { + const postPath = join(yearPath, directory) + try { + await readFile(join(postPath, '.blogignore'), 'utf-8') + continue + } catch (error) { + // If the file doesn't exist, continue with the rest of the code + } + const postTomlPath = join(postPath, 'post.toml') + const contentPath = join(postPath, 'content.md') - try { - const postToml = await readFile(postTomlPath, 'utf-8'); - const content = await readFile(contentPath, 'utf-8'); + try { + const postToml = await readFile(postTomlPath, 'utf-8') + const content = await readFile(contentPath, 'utf-8') - const metadata = toml.parse(postToml); + const metadata = toml.parse(postToml) - posts[`${year}/${directory}`] = { - metadata, - content - }; - } catch (error) { - throw new Error(`Error reading post: ${error}`); - } - } - return posts; - } -}; + posts[`${year}/${directory}`] = { + metadata, + content + } + } catch (error) { + throw new Error(`Error reading post: ${error}`) + } + } + return posts + } +} -const postsResult = await crawl(); -if (!postsResult) throw new Error('No posts found!'); +const postsResult = await crawl() +if (!postsResult) throw new Error('No posts found!') -export const posts = postsResult; +export const posts = postsResult diff --git a/src/lib/utils/parseMarkdown.ts b/src/lib/utils/parseMarkdown.ts index a45a3be..fb36c3c 100644 --- a/src/lib/utils/parseMarkdown.ts +++ b/src/lib/utils/parseMarkdown.ts @@ -1,34 +1,34 @@ -import { unified } from 'unified'; -import rehypeKatex from 'rehype-katex'; -import rehypeStringify from 'rehype-stringify'; -import remarkMath from 'remark-math'; -import remarkParse from 'remark-parse'; -import remarkRehype from 'remark-rehype'; -import remarkGfm from 'remark-gfm'; -import remarkGhAlerts from 'remark-gh-alerts'; -import remarkSectionize from 'remark-sectionize'; -import rehypeHighlight from 'rehype-highlight'; +import { unified } from 'unified' +import rehypeKatex from 'rehype-katex' +import rehypeStringify from 'rehype-stringify' +import remarkMath from 'remark-math' +import remarkParse from 'remark-parse' +import remarkRehype from 'remark-rehype' +import remarkGfm from 'remark-gfm' +import remarkGhAlerts from 'remark-gh-alerts' +import remarkSectionize from 'remark-sectionize' +import rehypeHighlight from 'rehype-highlight' export default async (markdown: string) => { - try { - const html = String( - await unified() - .use(remarkParse) - .use(remarkSectionize) - .use(remarkGfm) - .use(remarkGhAlerts) - .use(remarkMath) - .use(remarkRehype) - .use(rehypeKatex) - .use(rehypeHighlight) - .use(rehypeStringify) - .process(markdown) - ); + try { + const html = String( + await unified() + .use(remarkParse) + .use(remarkSectionize) + .use(remarkGfm) + .use(remarkGhAlerts) + .use(remarkMath) + .use(remarkRehype) + .use(rehypeKatex) + .use(rehypeHighlight) + .use(rehypeStringify) + .process(markdown) + ) - if (typeof html === 'undefined') throw new Error('No content'); + if (typeof html === 'undefined') throw new Error('No content') - return html; - } catch (e) { - throw new Error(`Failed to parse markdown: ${e}`); - } -}; + return html + } catch (e) { + throw new Error(`Failed to parse markdown: ${e}`) + } +} diff --git a/src/routes/+error.svelte b/src/routes/+error.svelte index a587da4..cdd619d 100644 --- a/src/routes/+error.svelte +++ b/src/routes/+error.svelte @@ -1,20 +1,20 @@ - Error {error.message} - + Error {error.message} +
    -
    -

    Oops!

    -

    An error occurred: {error.message}

    - -
    +
    +

    Oops!

    +

    An error occurred: {error.message}

    + +
    diff --git a/src/routes/+layout.svelte b/src/routes/+layout.svelte index edc1883..e82f03e 100644 --- a/src/routes/+layout.svelte +++ b/src/routes/+layout.svelte @@ -47,4 +47,3 @@