UNPKG

ranui

Version:

A framework-agnostic Web Components UI library built on native custom elements, with TypeScript types, light/dark theming, SSR and PWA support.

483 lines 13.7 kB
{ "name": "ranui", "version": "0.5.0-alpha.6", "description": "A framework-agnostic Web Components UI library built on native custom elements, with TypeScript types, light/dark theming, SSR and PWA support.", "main": "dist/index.cjs", "module": "dist/index.js", "type": "module", "types": "./dist/index.d.ts", "typesVersions": { "*": { "builder": [ "./dist/builder.d.ts" ], "ssr": [ "./dist/ssr.d.ts" ], "ssr-stream": [ "./dist/ssr-stream.d.ts" ], "testing": [ "./dist/testing.d.ts" ], "theme": [ "./dist/theme.d.ts" ], "i18n": [ "./dist/i18n.d.ts" ], "typings": [ "./dist/typings.d.ts" ], "button": [ "./dist/components/button/index.d.ts" ], "icon": [ "./dist/components/icon/index.d.ts" ], "image": [ "./dist/components/image/index.d.ts" ], "input": [ "./dist/components/input/index.d.ts" ], "message": [ "./dist/components/message/index.d.ts" ], "skeleton": [ "./dist/components/skeleton/index.d.ts" ], "tab": [ "./dist/components/tab/index.d.ts" ], "tabpane": [ "./dist/components/tabpane/index.d.ts" ], "radar": [ "./dist/components/radar/index.d.ts" ], "modal": [ "./dist/components/modal/index.d.ts" ], "select": [ "./dist/components/select/index.d.ts" ], "progress": [ "./dist/components/progress/index.d.ts" ], "player": [ "./dist/components/player/index.d.ts" ], "popover": [ "./dist/components/popover/index.d.ts" ], "dropdown": [ "./dist/components/dropdown/index.d.ts" ], "loading": [ "./dist/components/loading/index.d.ts" ], "colorpicker": [ "./dist/components/colorpicker/index.d.ts" ], "math": [ "./dist/components/math/index.d.ts" ], "mermaid": [ "./dist/components/mermaid/index.d.ts" ], "markdown": [ "./dist/components/markdown/index.d.ts" ], "checkbox": [ "./dist/components/checkbox/index.d.ts" ], "card": [ "./dist/components/card/index.d.ts" ], "conversation": [ "./dist/components/conversation/index.d.ts" ], "reasoning": [ "./dist/components/reasoning/index.d.ts" ], "tool-card": [ "./dist/components/tool-card/index.d.ts" ], "token-meter": [ "./dist/components/token-meter/index.d.ts" ], "state-dot": [ "./dist/components/state-dot/index.d.ts" ], "disclosure-row": [ "./dist/components/disclosure-row/index.d.ts" ], "attachments": [ "./dist/components/attachments/index.d.ts" ], "voice-button": [ "./dist/components/voice-button/index.d.ts" ], "scratch": [ "./dist/components/scratch/index.d.ts" ], "section": [ "./dist/components/section/index.d.ts" ], "router": [ "./dist/components/router/index.d.ts" ], "route": [ "./dist/components/route/index.d.ts" ], "link": [ "./dist/components/link/index.d.ts" ], "theme-switch": [ "./dist/components/theme-switch/index.d.ts" ], "*": [ "./dist/index.d.ts" ] } }, "homepage": "https://ran.chaxus.com/src/ranui/", "repository": { "type": "git", "url": "git+https://github.com/chaxus/ran.git", "directory": "packages/ranui" }, "bugs": { "url": "https://github.com/chaxus/ran/issues" }, "author": "chaxus", "license": "MIT", "engines": { "node": ">=20.19.0" }, "files": [ "dist", "typings.d.ts", "docs/DESIGN.md", "docs/COMPONENTS.md", "docs/BUILDER.md", "docs/style-tokens-public.md" ], "keywords": [ "ranui", "ran", "web-components", "web components", "custom-elements", "custom-element", "shadow-dom", "framework-agnostic", "component", "components", "ui", "ui-library", "component-library", "design", "typescript", "ssr", "pwa" ], "exports": { ".": { "types": "./dist/index.d.ts", "import": "./dist/index.js", "require": "./dist/index.cjs" }, "./style": "./dist/ranui.css", "./fonts": "./dist/fonts/fonts.css", "./builder": { "types": "./dist/builder.d.ts", "import": "./dist/builder.js", "require": "./dist/index.cjs" }, "./ssr": { "types": "./dist/ssr.d.ts", "import": "./dist/ssr.js", "require": "./dist/index.cjs" }, "./ssr-stream": { "types": "./dist/ssr-stream.d.ts", "import": "./dist/ssr-stream.js", "require": "./dist/index.cjs" }, "./theme": { "types": "./dist/theme.d.ts", "import": "./dist/theme.js", "require": "./dist/index.cjs" }, "./testing": { "types": "./dist/testing.d.ts", "import": "./dist/testing.js", "require": "./dist/index.cjs" }, "./i18n": { "types": "./dist/i18n.d.ts", "import": "./dist/i18n.js", "require": "./dist/index.cjs" }, "./button": { "types": "./dist/components/button/index.d.ts", "import": "./dist/button.js", "require": "./dist/index.cjs" }, "./icon": { "types": "./dist/components/icon/index.d.ts", "import": "./dist/icon.js", "require": "./dist/index.cjs" }, "./icons": { "types": "./dist/index.d.ts", "import": "./dist/icons.js", "require": "./dist/index.cjs" }, "./image": { "types": "./dist/components/image/index.d.ts", "import": "./dist/image.js", "require": "./dist/index.cjs" }, "./input": { "types": "./dist/components/input/index.d.ts", "import": "./dist/input.js", "require": "./dist/index.cjs" }, "./message": { "types": "./dist/components/message/index.d.ts", "import": "./dist/message.js", "require": "./dist/index.cjs" }, "./skeleton": { "types": "./dist/components/skeleton/index.d.ts", "import": "./dist/skeleton.js", "require": "./dist/index.cjs" }, "./tab": { "types": "./dist/components/tab/index.d.ts", "import": "./dist/tab.js", "require": "./dist/index.cjs" }, "./tabpane": { "types": "./dist/components/tabpane/index.d.ts", "import": "./dist/tabpane.js", "require": "./dist/index.cjs" }, "./radar": { "types": "./dist/components/radar/index.d.ts", "import": "./dist/radar.js", "require": "./dist/index.cjs" }, "./modal": { "types": "./dist/components/modal/index.d.ts", "import": "./dist/modal.js", "require": "./dist/index.cjs" }, "./select": { "types": "./dist/components/select/index.d.ts", "import": "./dist/select.js", "require": "./dist/index.cjs" }, "./progress": { "types": "./dist/components/progress/index.d.ts", "import": "./dist/progress.js", "require": "./dist/index.cjs" }, "./player": { "types": "./dist/components/player/index.d.ts", "import": "./dist/player.js", "require": "./dist/index.cjs" }, "./popover": { "types": "./dist/components/popover/index.d.ts", "import": "./dist/popover.js", "require": "./dist/index.cjs" }, "./dropdown": { "types": "./dist/components/dropdown/index.d.ts", "import": "./dist/dropdown.js", "require": "./dist/index.cjs" }, "./content": { "types": "./dist/index.d.ts", "import": "./dist/content.js", "require": "./dist/index.cjs" }, "./loading": { "types": "./dist/components/loading/index.d.ts", "import": "./dist/loading.js", "require": "./dist/index.cjs" }, "./colorpicker": { "types": "./dist/components/colorpicker/index.d.ts", "import": "./dist/colorpicker.js", "require": "./dist/index.cjs" }, "./math": { "types": "./dist/components/math/index.d.ts", "import": "./dist/math.js", "require": "./dist/index.cjs" }, "./mermaid": { "types": "./dist/components/mermaid/index.d.ts", "import": "./dist/mermaid.js", "require": "./dist/index.cjs" }, "./markdown": { "types": "./dist/components/markdown/index.d.ts", "import": "./dist/markdown.js", "require": "./dist/index.cjs" }, "./checkbox": { "types": "./dist/components/checkbox/index.d.ts", "import": "./dist/checkbox.js", "require": "./dist/index.cjs" }, "./card": { "types": "./dist/components/card/index.d.ts", "import": "./dist/card.js", "require": "./dist/index.cjs" }, "./conversation": { "types": "./dist/components/conversation/index.d.ts", "import": "./dist/conversation.js", "require": "./dist/index.cjs" }, "./reasoning": { "types": "./dist/components/reasoning/index.d.ts", "import": "./dist/reasoning.js", "require": "./dist/index.cjs" }, "./attachments": { "types": "./dist/components/attachments/index.d.ts", "import": "./dist/attachments.js", "require": "./dist/index.cjs" }, "./voice-button": { "types": "./dist/components/voice-button/index.d.ts", "import": "./dist/voice-button.js", "require": "./dist/index.cjs" }, "./tool-card": { "types": "./dist/components/tool-card/index.d.ts", "import": "./dist/tool-card.js", "require": "./dist/index.cjs" }, "./token-meter": { "types": "./dist/components/token-meter/index.d.ts", "import": "./dist/token-meter.js", "require": "./dist/index.cjs" }, "./state-dot": { "types": "./dist/components/state-dot/index.d.ts", "import": "./dist/state-dot.js", "require": "./dist/index.cjs" }, "./disclosure-row": { "types": "./dist/components/disclosure-row/index.d.ts", "import": "./dist/disclosure-row.js", "require": "./dist/index.cjs" }, "./scratch": { "types": "./dist/components/scratch/index.d.ts", "import": "./dist/scratch.js", "require": "./dist/index.cjs" }, "./section": { "types": "./dist/components/section/index.d.ts", "import": "./dist/section.js", "require": "./dist/index.cjs" }, "./router": { "types": "./dist/components/router/index.d.ts", "import": "./dist/router.js", "require": "./dist/index.cjs" }, "./route": { "types": "./dist/components/route/index.d.ts", "import": "./dist/route.js", "require": "./dist/index.cjs" }, "./link": { "types": "./dist/components/link/index.d.ts", "import": "./dist/link.js", "require": "./dist/index.cjs" }, "./theme-switch": { "types": "./dist/components/theme-switch/index.d.ts", "import": "./dist/theme-switch.js", "require": "./dist/index.cjs" }, "./type": { "types": "./dist/index.d.ts", "import": "./dist/index.js", "require": "./dist/index.js" }, "./typings": { "types": "./dist/typings.d.ts", "import": "./dist/typings.d.ts", "require": "./dist/index.js" }, "./dist/*": { "types": "./dist/*", "import": "./dist/*", "require": "./dist/*" } }, "devDependencies": { "@playwright/test": "1.62.1", "@types/node": "26.1.2", "@vitest/coverage-v8": "4.1.10", "jsdom": "30.0.1", "less": "4.8.1", "rollup-plugin-visualizer": "7.0.1", "terser": "5.49.2", "tsx": "4.23.10", "typescript": "7.0.2", "vite": "8.2.1", "vitest": "4.1.10" }, "dependencies": { "dashjs": "5.2.0", "dompurify": "3.4.13", "hls.js": "1.6.17", "marked": "18.0.9", "mermaid": "11.16.1", "mpegts.js": "1.8.1", "remend": "1.3.0", "shiki": "4.4.3", "temml": "0.13.4", "ranuts": "0.4.1-alpha.2" }, "scripts": { "dev": "vite --host", "build": "sh ./bin/build.sh", "build:release": "sh -c \"RANUI_MINIFY=terser RANUI_CSS_MINIFY=esbuild sh ./bin/build.sh\"", "build:analyze": "sh -c \"RANUI_ANALYZE=true RANUI_MINIFY=esbuild RANUI_CSS_MINIFY=esbuild sh ./bin/build.sh\"", "build:es": "vite build -c ./build/config.es.ts", "build:bundle": "vite build -c ./build/config.bundle.ts", "build:iife": "tsx ./bin/build-iife.ts", "prepublish": "npm run build", "test": "sh ./bin/test.sh", "test:unit": "vitest run", "test:unit:watch": "vitest", "test:unit:coverage": "vitest run --coverage", "test:ssr": "vitest run --config vitest.config.ssr.ts", "test:ssr:watch": "vitest --config vitest.config.ssr.ts", "test:all": "pnpm -F ranuts build && npm run tsc && npm run test:unit && npm run test:ssr", "e2e:install": "playwright install chromium", "test:e2e": "npm run e2e:install && playwright test", "test:report": "playwright show-report", "test:ui": "npm run e2e:install && playwright test --ui", "test:update": "npm run e2e:install && playwright test --update-snapshots", "tsc": "tsc --noEmit", "doc:style": "tsx ./bin/generate-style-docs.ts", "doc:style:check": "tsx ./bin/generate-style-docs.ts --check", "doc:api": "tsx ./bin/generate-component-api.ts", "doc:api:check": "tsx ./bin/generate-component-api.ts --check", "verify:design": "tsx ./bin/verify-design-rules.ts" } }