@cloudflare/kumo 1.1.0 → 1.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +16 -0
- package/LICENSE +21 -0
- package/ai/component-registry.json +111 -3
- package/ai/component-registry.md +9 -2
- package/ai/schemas.ts +3 -1
- package/dist/.build-complete +1 -1
- package/dist/{breadcrumbs-B5SY2CWj.js → breadcrumbs-DyKi7BcP.js} +2 -2
- package/dist/{breadcrumbs-B5SY2CWj.js.map → breadcrumbs-DyKi7BcP.js.map} +1 -1
- package/dist/{button-E2-hZMZE.js → button-Bh96oxRL.js} +3 -3
- package/dist/{button-E2-hZMZE.js.map → button-Bh96oxRL.js.map} +1 -1
- package/dist/catalog.js +1 -1
- package/dist/{checkbox-BexIU_lZ.js → checkbox-C1LPq8eL.js} +3 -3
- package/dist/{checkbox-BexIU_lZ.js.map → checkbox-C1LPq8eL.js.map} +1 -1
- package/dist/{clipboard-text-BFHWMjmr.js → clipboard-text-CJSI9X2m.js} +3 -3
- package/dist/{clipboard-text-BFHWMjmr.js.map → clipboard-text-CJSI9X2m.js.map} +1 -1
- package/dist/{combobox-Dld0kS0U.js → combobox-CWxn5aHA.js} +4 -4
- package/dist/{combobox-Dld0kS0U.js.map → combobox-CWxn5aHA.js.map} +1 -1
- package/dist/command-line/cli.js +0 -0
- package/dist/command-line/commands/add.js +0 -0
- package/dist/command-line/commands/blocks.js +0 -0
- package/dist/command-line/commands/doc.js +0 -0
- package/dist/command-line/commands/init.js +0 -0
- package/dist/command-line/commands/ls.js +0 -0
- package/dist/{command-palette-BgQ680BG.js → command-palette-BxmGYxBv.js} +2 -2
- package/dist/{command-palette-BgQ680BG.js.map → command-palette-BxmGYxBv.js.map} +1 -1
- package/dist/components/breadcrumbs.js +1 -1
- package/dist/components/button.js +1 -1
- package/dist/components/checkbox.js +1 -1
- package/dist/components/clipboard-text.js +1 -1
- package/dist/components/combobox.js +1 -1
- package/dist/components/command-palette.js +1 -1
- package/dist/components/dialog.js +1 -1
- package/dist/components/dropdown.js +1 -1
- package/dist/components/empty.js +1 -1
- package/dist/components/field.js +1 -1
- package/dist/components/input.js +3 -3
- package/dist/components/label.js +1 -1
- package/dist/components/link.js +1 -1
- package/dist/components/menubar.js +1 -1
- package/dist/components/meter.js +1 -1
- package/dist/components/pagination.js +1 -1
- package/dist/components/popover.js +1 -1
- package/dist/components/radio.js +1 -1
- package/dist/components/select.js +1 -1
- package/dist/components/sensitive-input.js +1 -1
- package/dist/components/switch.js +1 -1
- package/dist/components/table.js +1 -1
- package/dist/components/tabs.js +1 -1
- package/dist/components/toast.js +6 -4
- package/dist/components/tooltip.js +1 -1
- package/dist/{dialog-B1TaN0oR.js → dialog-x9n9wI13.js} +18 -18
- package/dist/dialog-x9n9wI13.js.map +1 -0
- package/dist/{dropdown-D0rhYKeG.js → dropdown-BAyk1knz.js} +7 -7
- package/dist/{dropdown-D0rhYKeG.js.map → dropdown-BAyk1knz.js.map} +1 -1
- package/dist/{empty-DzCqjea-.js → empty-D03cbzRS.js} +2 -2
- package/dist/{empty-DzCqjea-.js.map → empty-D03cbzRS.js.map} +1 -1
- package/dist/{field-V3J0Ql_V.js → field-B7ORz5ej.js} +3 -3
- package/dist/{field-V3J0Ql_V.js.map → field-B7ORz5ej.js.map} +1 -1
- package/dist/index.js +268 -121
- package/dist/index.js.map +1 -1
- package/dist/{input-Dqvc2AB_.js → input-D6YgDfDG.js} +3 -3
- package/dist/{input-Dqvc2AB_.js.map → input-D6YgDfDG.js.map} +1 -1
- package/dist/{input-area-B9qajxvZ.js → input-area-DN_Ncliw.js} +10 -10
- package/dist/{input-area-B9qajxvZ.js.map → input-area-DN_Ncliw.js.map} +1 -1
- package/dist/{input-group-Bl6tgD5-.js → input-group-BXzBwH4p.js} +29 -29
- package/dist/{input-group-Bl6tgD5-.js.map → input-group-BXzBwH4p.js.map} +1 -1
- package/dist/{label-87HQArUG.js → label-B4FY8MX_.js} +2 -2
- package/dist/{label-87HQArUG.js.map → label-B4FY8MX_.js.map} +1 -1
- package/dist/{link-6TIZ4JIw.js → link-CcuZKqob.js} +8 -8
- package/dist/{link-6TIZ4JIw.js.map → link-CcuZKqob.js.map} +1 -1
- package/dist/{menubar-DLwLRFB1.js → menubar-CzimiryS.js} +2 -2
- package/dist/{menubar-DLwLRFB1.js.map → menubar-CzimiryS.js.map} +1 -1
- package/dist/{meter-DKUuvXxS.js → meter-BrJnHJ3Q.js} +2 -2
- package/dist/{meter-DKUuvXxS.js.map → meter-BrJnHJ3Q.js.map} +1 -1
- package/dist/{pagination-C4HQqodz.js → pagination-D0x9KQSk.js} +2 -2
- package/dist/{pagination-C4HQqodz.js.map → pagination-D0x9KQSk.js.map} +1 -1
- package/dist/{popover-DhdIqrP7.js → popover-CtKDH8Yc.js} +11 -11
- package/dist/{popover-DhdIqrP7.js.map → popover-CtKDH8Yc.js.map} +1 -1
- package/dist/primitives/accordion.js +1 -1
- package/dist/primitives/alert-dialog.js +1 -1
- package/dist/primitives/autocomplete.js +1 -1
- package/dist/primitives/avatar.js +1 -1
- package/dist/primitives/button.js +1 -1
- package/dist/primitives/checkbox-group.js +1 -1
- package/dist/primitives/checkbox.js +1 -1
- package/dist/primitives/collapsible.js +1 -1
- package/dist/primitives/combobox.js +1 -1
- package/dist/primitives/context-menu.js +1 -1
- package/dist/primitives/dialog.js +1 -1
- package/dist/primitives/direction-provider.js +1 -1
- package/dist/primitives/field.js +1 -1
- package/dist/primitives/fieldset.js +1 -1
- package/dist/primitives/form.js +1 -1
- package/dist/primitives/input.js +1 -1
- package/dist/primitives/menu.js +1 -1
- package/dist/primitives/menubar.js +1 -1
- package/dist/primitives/meter.js +1 -1
- package/dist/primitives/navigation-menu.js +1 -1
- package/dist/primitives/number-field.js +1 -1
- package/dist/primitives/popover.js +1 -1
- package/dist/primitives/preview-card.js +1 -1
- package/dist/primitives/progress.js +1 -1
- package/dist/primitives/radio-group.js +1 -1
- package/dist/primitives/radio.js +1 -1
- package/dist/primitives/scroll-area.js +1 -1
- package/dist/primitives/select.js +1 -1
- package/dist/primitives/separator.js +1 -1
- package/dist/primitives/slider.js +1 -1
- package/dist/primitives/switch.js +1 -1
- package/dist/primitives/tabs.js +1 -1
- package/dist/primitives/toast.js +1 -1
- package/dist/primitives/toggle-group.js +1 -1
- package/dist/primitives/toggle.js +1 -1
- package/dist/primitives/toolbar.js +1 -1
- package/dist/primitives/tooltip.js +1 -1
- package/dist/primitives.js +1 -1
- package/dist/{radio-BVAG7hNp.js → radio-CYejLANA.js} +6 -6
- package/dist/{radio-BVAG7hNp.js.map → radio-CYejLANA.js.map} +1 -1
- package/dist/{schemas-Cbid4MwW.js → schemas-C2YJKpDC.js} +5 -1
- package/dist/{schemas-Cbid4MwW.js.map → schemas-C2YJKpDC.js.map} +1 -1
- package/dist/{select-B5Vb3zou.js → select-D4rKQAax.js} +4 -4
- package/dist/{select-B5Vb3zou.js.map → select-D4rKQAax.js.map} +1 -1
- package/dist/{sensitive-input-D5HCV04N.js → sensitive-input-DYvAmxkN.js} +19 -19
- package/dist/{sensitive-input-D5HCV04N.js.map → sensitive-input-DYvAmxkN.js.map} +1 -1
- package/dist/src/blocks/delete-resource/delete-resource.d.ts +46 -0
- package/dist/src/blocks/delete-resource/delete-resource.d.ts.map +1 -0
- package/dist/src/blocks/delete-resource/index.d.ts +2 -0
- package/dist/src/blocks/delete-resource/index.d.ts.map +1 -0
- package/dist/src/components/dialog/dialog.d.ts +1 -1
- package/dist/src/components/toast/index.d.ts +2 -0
- package/dist/src/components/toast/index.d.ts.map +1 -1
- package/dist/src/components/toast/toast.d.ts +53 -3
- package/dist/src/components/toast/toast.d.ts.map +1 -1
- package/dist/src/index.d.ts +2 -1
- package/dist/src/index.d.ts.map +1 -1
- package/dist/styles/kumo-standalone.css +1 -1
- package/dist/{switch-D4duMhJ0.js → switch-z7FE1nQE.js} +3 -3
- package/dist/{switch-D4duMhJ0.js.map → switch-z7FE1nQE.js.map} +1 -1
- package/dist/{table-KuvHGpL8.js → table-Sd2Etb1N.js} +2 -2
- package/dist/{table-KuvHGpL8.js.map → table-Sd2Etb1N.js.map} +1 -1
- package/dist/{tabs-lQup-IbT.js → tabs-DAEeuQLd.js} +2 -2
- package/dist/{tabs-lQup-IbT.js.map → tabs-DAEeuQLd.js.map} +1 -1
- package/dist/toast-B8ebpHaU.js +248 -0
- package/dist/toast-B8ebpHaU.js.map +1 -0
- package/dist/{tooltip-DJWsDTWJ.js → tooltip-C4DRhJi1.js} +6 -6
- package/dist/{tooltip-DJWsDTWJ.js.map → tooltip-C4DRhJi1.js.map} +1 -1
- package/dist/{vendor-base-ui-DWIDNgE1.js → vendor-base-ui-kX0wjdav.js} +32 -31
- package/dist/{vendor-base-ui-DWIDNgE1.js.map → vendor-base-ui-kX0wjdav.js.map} +1 -1
- package/package.json +46 -46
- package/dist/dialog-B1TaN0oR.js.map +0 -1
- package/dist/toast-8YyyQuqZ.js +0 -69
- package/dist/toast-8YyyQuqZ.js.map +0 -1
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@cloudflare/kumo",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.3.0",
|
|
4
4
|
"private": false,
|
|
5
5
|
"type": "module",
|
|
6
6
|
"description": "Kumo - Cloudflare's component library for building modern web applications",
|
|
@@ -366,30 +366,6 @@
|
|
|
366
366
|
"access": "public",
|
|
367
367
|
"registry": "https://registry.npmjs.org"
|
|
368
368
|
},
|
|
369
|
-
"scripts": {
|
|
370
|
-
"prepublish": "pnpm run clean && pnpm run build && pnpm run test:unit",
|
|
371
|
-
"build": "vite build --mode production && tsx scripts/css-build.ts && tsx src/command-line/build-cli.ts",
|
|
372
|
-
"dev": "vite build --watch --mode development",
|
|
373
|
-
"new:component": "plop component",
|
|
374
|
-
"clean": "rm -rf dist",
|
|
375
|
-
"codegen": "pnpm run codegen:primitives && pnpm run codegen:themes && pnpm run codegen:registry",
|
|
376
|
-
"codegen:themes": "tsx scripts/theme-generator/index.ts",
|
|
377
|
-
"migrate:tokens": "tsx scripts/theme-generator/migrate.ts",
|
|
378
|
-
"codegen:primitives": "tsx scripts/generate-primitives.ts",
|
|
379
|
-
"codegen:registry": "pnpm --filter @cloudflare/kumo-docs-astro codegen:demos && tsx scripts/component-registry/index.ts",
|
|
380
|
-
"lint": "pnpm run lint:oxlint && pnpm run lint:eslint",
|
|
381
|
-
"lint:oxlint": "oxlint --config .oxlintrc.json src/** --type-aware",
|
|
382
|
-
"lint:eslint": "eslint src/",
|
|
383
|
-
"test": "CI=true vitest run --project=unit",
|
|
384
|
-
"test:ui": "vitest --ui",
|
|
385
|
-
"test:run": "vitest run",
|
|
386
|
-
"test:unit": "vitest run --project=unit",
|
|
387
|
-
"test:coverage": "vitest run --coverage",
|
|
388
|
-
"test:exports": "vitest run --project=unit tests/imports/export-path-validation.test.ts",
|
|
389
|
-
"typecheck": "tsc --noEmit",
|
|
390
|
-
"validate:build": "vitest run --project=unit tests/imports/export-path-validation.test.ts",
|
|
391
|
-
"validate:changeset": "tsx ../../ci/scripts/validate-kumo-changeset.ts"
|
|
392
|
-
},
|
|
393
369
|
"peerDependencies": {
|
|
394
370
|
"@phosphor-icons/react": "^2.1.10",
|
|
395
371
|
"react": "^18.0.0 || ^19.0.0",
|
|
@@ -407,35 +383,59 @@
|
|
|
407
383
|
"tailwind-merge": "^3.4.0"
|
|
408
384
|
},
|
|
409
385
|
"devDependencies": {
|
|
410
|
-
"@tailwindcss/cli": "
|
|
411
|
-
"@tailwindcss/vite": "
|
|
386
|
+
"@tailwindcss/cli": "^4.1.17",
|
|
387
|
+
"@tailwindcss/vite": "^4.1.17",
|
|
412
388
|
"@testing-library/react": "16.3.1",
|
|
413
389
|
"@testing-library/user-event": "14.6.1",
|
|
414
390
|
"@types/glob": "9.0.0",
|
|
415
|
-
"@types/node": "
|
|
416
|
-
"@types/react": "
|
|
417
|
-
"@types/react-dom": "
|
|
418
|
-
"@vitest/browser": "
|
|
419
|
-
"@vitest/ui": "
|
|
391
|
+
"@types/node": "^22.10.2",
|
|
392
|
+
"@types/react": "19.2.4",
|
|
393
|
+
"@types/react-dom": "19.2.3",
|
|
394
|
+
"@vitest/browser": "^3.2.4",
|
|
395
|
+
"@vitest/ui": "^3.2.4",
|
|
420
396
|
"esbuild": "0.27.2",
|
|
421
|
-
"eslint": "
|
|
422
|
-
"eslint-plugin-jsx-a11y": "
|
|
397
|
+
"eslint": "^9.17.0",
|
|
398
|
+
"eslint-plugin-jsx-a11y": "^6.10.2",
|
|
423
399
|
"glob": "13.0.0",
|
|
424
|
-
"happy-dom": "
|
|
425
|
-
"oxlint": "
|
|
426
|
-
"oxlint-tsgolint": "
|
|
427
|
-
"playwright": "
|
|
400
|
+
"happy-dom": "^15.11.7",
|
|
401
|
+
"oxlint": "1.42.0",
|
|
402
|
+
"oxlint-tsgolint": "0.11.3",
|
|
403
|
+
"playwright": "^1.57.0",
|
|
428
404
|
"plop": "4.0.4",
|
|
429
405
|
"rollup-plugin-preserve-directives": "0.4.0",
|
|
430
|
-
"tailwindcss": "
|
|
406
|
+
"tailwindcss": "^4.1.17",
|
|
431
407
|
"ts-json-schema-generator": "2.4.0",
|
|
432
|
-
"tsx": "
|
|
433
|
-
"typescript": "
|
|
408
|
+
"tsx": "^4.19.2",
|
|
409
|
+
"typescript": "^5.9.2",
|
|
434
410
|
"typescript-eslint": "^8.18.1",
|
|
435
|
-
"vite": "
|
|
436
|
-
"vite-plugin-dts": "
|
|
437
|
-
"vitest": "
|
|
438
|
-
"wrangler": "
|
|
411
|
+
"vite": "^7.1.7",
|
|
412
|
+
"vite-plugin-dts": "^4.3.0",
|
|
413
|
+
"vitest": "^3.2.4",
|
|
414
|
+
"wrangler": "^4.59.1",
|
|
439
415
|
"zod": "^4.0.0"
|
|
416
|
+
},
|
|
417
|
+
"scripts": {
|
|
418
|
+
"prepublish": "pnpm run clean && pnpm run build && pnpm run test:unit",
|
|
419
|
+
"build": "vite build --mode production && tsx scripts/css-build.ts && tsx src/command-line/build-cli.ts",
|
|
420
|
+
"dev": "vite build --watch --mode development",
|
|
421
|
+
"new:component": "plop component",
|
|
422
|
+
"clean": "rm -rf dist",
|
|
423
|
+
"codegen": "pnpm run codegen:primitives && pnpm run codegen:themes && pnpm run codegen:registry",
|
|
424
|
+
"codegen:themes": "tsx scripts/theme-generator/index.ts",
|
|
425
|
+
"migrate:tokens": "tsx scripts/theme-generator/migrate.ts",
|
|
426
|
+
"codegen:primitives": "tsx scripts/generate-primitives.ts",
|
|
427
|
+
"codegen:registry": "pnpm --filter @cloudflare/kumo-docs-astro codegen:demos && tsx scripts/component-registry/index.ts",
|
|
428
|
+
"lint": "pnpm run lint:oxlint && pnpm run lint:eslint",
|
|
429
|
+
"lint:oxlint": "oxlint --config .oxlintrc.json src/** --type-aware",
|
|
430
|
+
"lint:eslint": "eslint src/",
|
|
431
|
+
"test": "CI=true vitest run --project=unit",
|
|
432
|
+
"test:ui": "vitest --ui",
|
|
433
|
+
"test:run": "vitest run",
|
|
434
|
+
"test:unit": "vitest run --project=unit",
|
|
435
|
+
"test:coverage": "vitest run --coverage",
|
|
436
|
+
"test:exports": "vitest run --project=unit tests/imports/export-path-validation.test.ts",
|
|
437
|
+
"typecheck": "tsc --noEmit",
|
|
438
|
+
"validate:build": "vitest run --project=unit tests/imports/export-path-validation.test.ts",
|
|
439
|
+
"validate:changeset": "tsx ../../ci/scripts/validate-kumo-changeset.ts"
|
|
440
440
|
}
|
|
441
|
-
}
|
|
441
|
+
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"dialog-B1TaN0oR.js","sources":["../src/components/dialog/dialog.tsx"],"sourcesContent":["import type { CSSProperties, FC, ReactNode } from \"react\";\nimport { Dialog as DialogBase } from \"@base-ui/react/dialog\";\nimport { Surface } from \"../surface\";\nimport { cn } from \"../../utils/cn\";\n\nexport const KUMO_DIALOG_VARIANTS = {\n size: {\n base: {\n classes: \"min-w-96\",\n description: \"Default dialog width\",\n },\n sm: {\n classes: \"min-w-72\",\n description: \"Small dialog for simple confirmations\",\n },\n lg: {\n classes: \"min-w-[32rem]\",\n description: \"Large dialog for complex content\",\n },\n xl: {\n classes: \"min-w-[48rem]\",\n description: \"Extra large dialog for detailed views\",\n },\n },\n} as const;\n\nexport const KUMO_DIALOG_DEFAULT_VARIANTS = {\n size: \"base\",\n} as const;\n\nexport const KUMO_DIALOG_STYLING = {\n dimensions: {\n sm: {\n width: 350,\n titleSize: 20,\n descSize: 16,\n padding: 16,\n gap: 8,\n buttonSize: \"sm\",\n },\n base: {\n width: 384,\n titleSize: 20,\n descSize: 16,\n padding: 24,\n gap: 16,\n buttonSize: \"base\",\n },\n lg: {\n width: 512,\n titleSize: 20,\n descSize: 16,\n padding: 24,\n gap: 16,\n buttonSize: \"base\",\n },\n xl: {\n width: 768,\n titleSize: 20,\n descSize: 16,\n padding: 24,\n gap: 16,\n buttonSize: \"base\",\n },\n },\n baseTokens: {\n background: \"color-surface\",\n text: \"text-color-surface\",\n borderRadius: 12,\n shadow: \"shadow-m\",\n },\n backdrop: {\n background: \"color-surface-secondary\",\n opacity: 0.8,\n },\n header: {\n title: { fontWeight: 600, color: \"text-color-surface\" },\n closeIcon: { name: \"ph-x\", size: 20, color: \"text-color-muted\" },\n },\n description: {\n fontWeight: 400,\n color: \"text-color-muted\",\n },\n buttons: {\n primary: { background: \"color-primary\", text: \"white\" },\n secondary: { ring: \"color-border\", text: \"text-color-surface\" },\n },\n} as const;\n\n// Derived types from KUMO_DIALOG_VARIANTS\nexport type KumoDialogSize = keyof typeof KUMO_DIALOG_VARIANTS.size;\n\nexport interface KumoDialogVariantsProps {\n size?: KumoDialogSize;\n}\n\nexport function dialogVariants({\n size = KUMO_DIALOG_DEFAULT_VARIANTS.size,\n}: KumoDialogVariantsProps = {}) {\n return cn(\n // Base styles\n \"shadow-m z-modal fixed top-1/2 left-1/2 max-w-[calc(100vw-3rem)] -translate-x-1/2 -translate-y-1/2 overflow-hidden rounded-xl bg-kumo-base text-kumo-default duration-150 data-ending-style:scale-90 data-ending-style:opacity-0 data-starting-style:scale-90 data-starting-style:opacity-0\",\n // Apply size from KUMO_DIALOG_VARIANTS\n KUMO_DIALOG_VARIANTS.size[size].classes,\n );\n}\n\nexport type DialogProps = KumoDialogVariantsProps & {\n className?: string;\n children: ReactNode;\n style?: CSSProperties;\n};\n\nfunction DialogContent({\n className,\n children,\n style,\n size = KUMO_DIALOG_DEFAULT_VARIANTS.size,\n}: DialogProps) {\n return (\n <DialogBase.Portal>\n <DialogBase.Backdrop className=\"z-modal fixed inset-0 bg-kumo-overlay opacity-80 transition-all duration-150 data-ending-style:opacity-0 data-starting-style:opacity-0\" />\n <Surface\n as={DialogBase.Popup}\n className={cn(dialogVariants({ size }), className)}\n style={\n {\n transitionProperty: \"scale, opacity\",\n transitionTimingFunction:\n \"var(--default-transition-timing-function)\",\n \"--tw-shadow\":\n \"0 20px 25px -5px rgb(0 0 0 / 0.03), 0 8px 10px -6px rgb(0 0 0 / 0.03)\",\n ...style,\n } as CSSProperties\n }\n >\n {children}\n </Surface>\n </DialogBase.Portal>\n );\n}\n\ntype DialogComponent = FC<DialogProps> & {\n Root: typeof DialogBase.Root;\n Trigger: typeof DialogBase.Trigger;\n Title: typeof DialogBase.Title;\n Description: typeof DialogBase.Description;\n Close: typeof DialogBase.Close;\n};\n\nconst Dialog = Object.assign(DialogContent, {\n Root: DialogBase.Root,\n Trigger: DialogBase.Trigger,\n Title: DialogBase.Title,\n Description: DialogBase.Description,\n Close: DialogBase.Close,\n}) as DialogComponent;\n\nconst DialogRoot = Dialog.Root;\nconst DialogTrigger = Dialog.Trigger;\nconst DialogTitle = Dialog.Title;\nconst DialogDescription = Dialog.Description;\nconst DialogClose = Dialog.Close;\n\nexport {\n Dialog,\n DialogRoot,\n DialogTrigger,\n DialogTitle,\n DialogDescription,\n DialogClose,\n};\n"],"names":["KUMO_DIALOG_VARIANTS","KUMO_DIALOG_DEFAULT_VARIANTS","dialogVariants","size","cn","DialogContent","className","children","style","jsxs","DialogBase.Portal","jsx","DialogBase.Backdrop","Surface","DialogBase.Popup","Dialog","DialogBase.Root","DialogBase.Trigger","DialogBase.Title","DialogBase.Description","DialogBase.Close","DialogRoot","DialogTrigger","DialogTitle","DialogDescription","DialogClose"],"mappings":";;;;;AAKO,MAAMA,IAAuB;AAAA,EAClC,MAAM;AAAA,IACJ,MAAM;AAAA,MACJ,SAAS;AAAA,MACT,aAAa;AAAA,IAAA;AAAA,IAEf,IAAI;AAAA,MACF,SAAS;AAAA,MACT,aAAa;AAAA,IAAA;AAAA,IAEf,IAAI;AAAA,MACF,SAAS;AAAA,MACT,aAAa;AAAA,IAAA;AAAA,IAEf,IAAI;AAAA,MACF,SAAS;AAAA,MACT,aAAa;AAAA,IAAA;AAAA,EACf;AAEJ,GAEaC,IAA+B;AAAA,EAC1C,MAAM;AACR;AAoEO,SAASC,EAAe;AAAA,EAC7B,MAAAC,IAAOF,EAA6B;AACtC,IAA6B,IAAI;AAC/B,SAAOG;AAAA;AAAA,IAEL;AAAA;AAAA,IAEAJ,EAAqB,KAAKG,CAAI,EAAE;AAAA,EAAA;AAEpC;AAQA,SAASE,EAAc;AAAA,EACrB,WAAAC;AAAA,EACA,UAAAC;AAAA,EACA,OAAAC;AAAA,EACA,MAAAL,IAAOF,EAA6B;AACtC,GAAgB;AACd,SACE,gBAAAQ,EAACC,GAAA,EACC,UAAA;AAAA,IAAA,gBAAAC,EAACC,GAAA,EAAoB,WAAU,yIAAA,CAAyI;AAAA,IACxK,gBAAAD;AAAA,MAACE;AAAA,MAAA;AAAA,QACC,IAAIC;AAAAA,QACJ,WAAWV,EAAGF,EAAe,EAAE,MAAAC,EAAA,CAAM,GAAGG,CAAS;AAAA,QACjD,OACE;AAAA,UACE,oBAAoB;AAAA,UACpB,0BACE;AAAA,UACF,eACE;AAAA,UACF,GAAGE;AAAA,QAAA;AAAA,QAIN,UAAAD;AAAA,MAAA;AAAA,IAAA;AAAA,EACH,GACF;AAEJ;AAUA,MAAMQ,IAAS,OAAO,OAAOV,GAAe;AAAA,EAC1C,MAAMW;AAAAA,EACN,SAASC;AAAAA,EACT,OAAOC;AAAAA,EACP,aAAaC;AAAAA,EACb,OAAOC;AACT,CAAC,GAEKC,IAAaN,EAAO,MACpBO,IAAgBP,EAAO,SACvBQ,IAAcR,EAAO,OACrBS,IAAoBT,EAAO,aAC3BU,IAAcV,EAAO;"}
|
package/dist/toast-8YyyQuqZ.js
DELETED
|
@@ -1,69 +0,0 @@
|
|
|
1
|
-
"use client";
|
|
2
|
-
import { jsxs as e, jsx as t } from "react/jsx-runtime";
|
|
3
|
-
import { c as r } from "./cn-Bhsu1vx2.js";
|
|
4
|
-
import { aS as o, aT as n, aU as i, aV as d, aW as l, aX as c, aY as m, aZ as p, a_ as f } from "./vendor-base-ui-DWIDNgE1.js";
|
|
5
|
-
function x({ children: a }) {
|
|
6
|
-
return /* @__PURE__ */ e(o, { children: [
|
|
7
|
-
a,
|
|
8
|
-
/* @__PURE__ */ t(n, { children: /* @__PURE__ */ t(i, { className: "fixed top-auto right-4 bottom-4 z-10 mx-auto flex w-[250px] sm:right-8 sm:bottom-8 sm:w-[300px]", children: /* @__PURE__ */ t(v, {}) }) })
|
|
9
|
-
] });
|
|
10
|
-
}
|
|
11
|
-
function v() {
|
|
12
|
-
const { toasts: a } = d();
|
|
13
|
-
return a.map((s) => /* @__PURE__ */ t(
|
|
14
|
-
l,
|
|
15
|
-
{
|
|
16
|
-
toast: s,
|
|
17
|
-
className: r(
|
|
18
|
-
"absolute right-0 bottom-0 left-auto z-[calc(1000-var(--toast-index))] mr-0 h-[var(--height)] w-full origin-bottom rounded-lg border border-kumo-fill bg-kumo-control bg-clip-padding p-4 shadow-lg select-none",
|
|
19
|
-
"[--gap:0.75rem] [--height:var(--toast-frontmost-height,var(--toast-height))] [--offset-y:calc(var(--toast-offset-y)*-1+calc(var(--toast-index)*var(--gap)*-1)+var(--toast-swipe-movement-y))] [--peek:0.75rem] [--scale:calc(max(0,1-(var(--toast-index)*0.1)))] [--shrink:calc(1-var(--scale))]",
|
|
20
|
-
"[transform:translateX(var(--toast-swipe-movement-x))_translateY(calc(var(--toast-swipe-movement-y)-(var(--toast-index)*var(--peek))-(var(--shrink)*var(--height))))_scale(var(--scale))] [transition:transform_0.5s_cubic-bezier(0.22,1,0.36,1),opacity_0.5s,height_0.15s]",
|
|
21
|
-
"after:absolute after:top-full after:left-0 after:h-[calc(var(--gap)+1px)] after:w-full after:content-['']",
|
|
22
|
-
"data-[ending-style]:opacity-0 data-[expanded]:h-[var(--toast-height)] data-[expanded]:[transform:translateX(var(--toast-swipe-movement-x))_translateY(calc(var(--offset-y)))] data-[limited]:opacity-0 data-[starting-style]:[transform:translateY(150%)]",
|
|
23
|
-
"data-[ending-style]:data-[swipe-direction=down]:[transform:translateY(calc(var(--toast-swipe-movement-y)+150%))] data-[expanded]:data-[ending-style]:data-[swipe-direction=down]:[transform:translateY(calc(var(--toast-swipe-movement-y)+150%))]",
|
|
24
|
-
"data-[ending-style]:data-[swipe-direction=left]:[transform:translateX(calc(var(--toast-swipe-movement-x)-150%))_translateY(var(--offset-y))] data-[expanded]:data-[ending-style]:data-[swipe-direction=left]:[transform:translateX(calc(var(--toast-swipe-movement-x)-150%))_translateY(var(--offset-y))]",
|
|
25
|
-
"data-[ending-style]:data-[swipe-direction=right]:[transform:translateX(calc(var(--toast-swipe-movement-x)+150%))_translateY(var(--offset-y))] data-[expanded]:data-[ending-style]:data-[swipe-direction=right]:[transform:translateX(calc(var(--toast-swipe-movement-x)+150%))_translateY(var(--offset-y))]",
|
|
26
|
-
"data-[ending-style]:data-[swipe-direction=up]:[transform:translateY(calc(var(--toast-swipe-movement-y)-150%))] data-[expanded]:data-[ending-style]:data-[swipe-direction=up]:[transform:translateY(calc(var(--toast-swipe-movement-y)-150%))]",
|
|
27
|
-
"[&[data-ending-style]:not([data-limited]):not([data-swipe-direction])]:[transform:translateY(150%)]"
|
|
28
|
-
),
|
|
29
|
-
children: /* @__PURE__ */ e(c, { className: "overflow-hidden transition-opacity [transition-duration:250ms] data-[behind]:pointer-events-none data-[behind]:opacity-0 data-[expanded]:pointer-events-auto data-[expanded]:opacity-100", children: [
|
|
30
|
-
/* @__PURE__ */ t(m, { className: "text-[0.975rem] leading-5 font-medium text-kumo-default" }),
|
|
31
|
-
/* @__PURE__ */ t(p, { className: "text-[0.925rem] leading-5 text-kumo-subtle" }),
|
|
32
|
-
/* @__PURE__ */ t(
|
|
33
|
-
f,
|
|
34
|
-
{
|
|
35
|
-
className: "absolute top-2 right-2 flex h-5 w-5 items-center justify-center rounded border-none bg-transparent text-kumo-subtle hover:bg-kumo-fill-hover hover:text-kumo-strong",
|
|
36
|
-
"aria-label": "Close",
|
|
37
|
-
children: /* @__PURE__ */ t(h, { className: "h-4 w-4" })
|
|
38
|
-
}
|
|
39
|
-
)
|
|
40
|
-
] })
|
|
41
|
-
},
|
|
42
|
-
s.id
|
|
43
|
-
));
|
|
44
|
-
}
|
|
45
|
-
function h(a) {
|
|
46
|
-
return /* @__PURE__ */ e(
|
|
47
|
-
"svg",
|
|
48
|
-
{
|
|
49
|
-
xmlns: "http://www.w3.org/2000/svg",
|
|
50
|
-
width: "24",
|
|
51
|
-
height: "24",
|
|
52
|
-
viewBox: "0 0 24 24",
|
|
53
|
-
fill: "none",
|
|
54
|
-
stroke: "currentColor",
|
|
55
|
-
strokeWidth: "2",
|
|
56
|
-
strokeLinecap: "round",
|
|
57
|
-
strokeLinejoin: "round",
|
|
58
|
-
...a,
|
|
59
|
-
children: [
|
|
60
|
-
/* @__PURE__ */ t("path", { d: "M18 6 6 18" }),
|
|
61
|
-
/* @__PURE__ */ t("path", { d: "m6 6 12 12" })
|
|
62
|
-
]
|
|
63
|
-
}
|
|
64
|
-
);
|
|
65
|
-
}
|
|
66
|
-
export {
|
|
67
|
-
x as T
|
|
68
|
-
};
|
|
69
|
-
//# sourceMappingURL=toast-8YyyQuqZ.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"toast-8YyyQuqZ.js","sources":["../src/components/toast/toast.tsx"],"sourcesContent":["import { Toast } from \"@base-ui/react/toast\";\nimport type React from \"react\";\nimport { cn } from \"../../utils/cn\";\n\n/**\n * Toast styling configuration for Figma plugin consumption.\n * Toast has no user-facing variants but documents the styling structure.\n */\nexport const KUMO_TOAST_VARIANTS = {\n root: {\n classes: \"rounded-lg border border-kumo-fill bg-kumo-control p-4 shadow-lg\",\n description: \"Toast container with background, border, and shadow\",\n },\n title: {\n classes: \"text-[0.975rem] leading-5 font-medium text-kumo-default\",\n description: \"Toast title with primary text color\",\n },\n description: {\n classes: \"text-[0.925rem] leading-5 text-kumo-subtle\",\n description: \"Toast description with muted text color\",\n },\n close: {\n classes:\n \"absolute top-2 right-2 flex h-5 w-5 items-center justify-center rounded border-none bg-transparent text-kumo-subtle hover:bg-kumo-fill-hover hover:text-kumo-strong\",\n description: \"Close button with X icon\",\n },\n} as const;\n\nexport const KUMO_TOAST_DEFAULT_VARIANTS = {} as const;\n\n/**\n * Toast styling configuration for Figma plugin consumption.\n * Provides structured metadata for generating Toast components in Figma.\n */\nexport const KUMO_TOAST_STYLING = {\n container: {\n width: 300,\n padding: 16,\n borderRadius: 8,\n background: \"color-secondary\",\n border: \"color-color\",\n shadow: \"shadow-lg\",\n gap: 4,\n },\n title: {\n fontSize: 16,\n fontWeight: 500,\n color: \"text-color-surface\",\n },\n description: {\n fontSize: 15,\n fontWeight: 400,\n color: \"text-color-muted\",\n },\n closeButton: {\n size: 20,\n iconSize: 16,\n iconName: \"ph-x\",\n iconColor: \"text-color-muted\",\n hoverBackground: \"color-color-2\",\n hoverColor: \"text-color-label\",\n borderRadius: 4,\n },\n} as const;\n\n// Derived types from KUMO_TOAST_VARIANTS\nexport interface KumoToastVariantsProps {}\n\nexport function toastVariants(_props: KumoToastVariantsProps = {}) {\n return cn(\n // Base styles for toast root\n \"absolute right-0 bottom-0 left-auto z-[calc(1000-var(--toast-index))] mr-0 h-[var(--height)] w-full origin-bottom rounded-lg border border-kumo-fill bg-kumo-control bg-clip-padding p-4 shadow-lg select-none\",\n );\n}\n\nexport interface ToastyProps extends KumoToastVariantsProps {\n children: React.ReactNode;\n}\n\nexport function Toasty({ children }: ToastyProps) {\n return (\n <Toast.Provider>\n {children}\n <Toast.Portal>\n <Toast.Viewport className=\"fixed top-auto right-4 bottom-4 z-10 mx-auto flex w-[250px] sm:right-8 sm:bottom-8 sm:w-[300px]\">\n <ToastList />\n </Toast.Viewport>\n </Toast.Portal>\n </Toast.Provider>\n );\n}\n\nfunction ToastList() {\n const { toasts } = Toast.useToastManager();\n return toasts.map((toast) => (\n <Toast.Root\n key={toast.id}\n toast={toast}\n className={cn(\n \"absolute right-0 bottom-0 left-auto z-[calc(1000-var(--toast-index))] mr-0 h-[var(--height)] w-full origin-bottom rounded-lg border border-kumo-fill bg-kumo-control bg-clip-padding p-4 shadow-lg select-none\",\n \"[--gap:0.75rem] [--height:var(--toast-frontmost-height,var(--toast-height))] [--offset-y:calc(var(--toast-offset-y)*-1+calc(var(--toast-index)*var(--gap)*-1)+var(--toast-swipe-movement-y))] [--peek:0.75rem] [--scale:calc(max(0,1-(var(--toast-index)*0.1)))] [--shrink:calc(1-var(--scale))]\",\n \"[transform:translateX(var(--toast-swipe-movement-x))_translateY(calc(var(--toast-swipe-movement-y)-(var(--toast-index)*var(--peek))-(var(--shrink)*var(--height))))_scale(var(--scale))] [transition:transform_0.5s_cubic-bezier(0.22,1,0.36,1),opacity_0.5s,height_0.15s]\",\n \"after:absolute after:top-full after:left-0 after:h-[calc(var(--gap)+1px)] after:w-full after:content-['']\",\n \"data-[ending-style]:opacity-0 data-[expanded]:h-[var(--toast-height)] data-[expanded]:[transform:translateX(var(--toast-swipe-movement-x))_translateY(calc(var(--offset-y)))] data-[limited]:opacity-0 data-[starting-style]:[transform:translateY(150%)]\",\n \"data-[ending-style]:data-[swipe-direction=down]:[transform:translateY(calc(var(--toast-swipe-movement-y)+150%))] data-[expanded]:data-[ending-style]:data-[swipe-direction=down]:[transform:translateY(calc(var(--toast-swipe-movement-y)+150%))]\",\n \"data-[ending-style]:data-[swipe-direction=left]:[transform:translateX(calc(var(--toast-swipe-movement-x)-150%))_translateY(var(--offset-y))] data-[expanded]:data-[ending-style]:data-[swipe-direction=left]:[transform:translateX(calc(var(--toast-swipe-movement-x)-150%))_translateY(var(--offset-y))]\",\n \"data-[ending-style]:data-[swipe-direction=right]:[transform:translateX(calc(var(--toast-swipe-movement-x)+150%))_translateY(var(--offset-y))] data-[expanded]:data-[ending-style]:data-[swipe-direction=right]:[transform:translateX(calc(var(--toast-swipe-movement-x)+150%))_translateY(var(--offset-y))]\",\n \"data-[ending-style]:data-[swipe-direction=up]:[transform:translateY(calc(var(--toast-swipe-movement-y)-150%))] data-[expanded]:data-[ending-style]:data-[swipe-direction=up]:[transform:translateY(calc(var(--toast-swipe-movement-y)-150%))]\",\n \"[&[data-ending-style]:not([data-limited]):not([data-swipe-direction])]:[transform:translateY(150%)]\",\n )}\n >\n <Toast.Content className=\"overflow-hidden transition-opacity [transition-duration:250ms] data-[behind]:pointer-events-none data-[behind]:opacity-0 data-[expanded]:pointer-events-auto data-[expanded]:opacity-100\">\n <Toast.Title className=\"text-[0.975rem] leading-5 font-medium text-kumo-default\" />\n <Toast.Description className=\"text-[0.925rem] leading-5 text-kumo-subtle\" />\n <Toast.Close\n className=\"absolute top-2 right-2 flex h-5 w-5 items-center justify-center rounded border-none bg-transparent text-kumo-subtle hover:bg-kumo-fill-hover hover:text-kumo-strong\"\n aria-label=\"Close\"\n >\n <XIcon className=\"h-4 w-4\" />\n </Toast.Close>\n </Toast.Content>\n </Toast.Root>\n ));\n}\n\nfunction XIcon(props: React.ComponentProps<\"svg\">) {\n return (\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"24\"\n height=\"24\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n {...props}\n >\n <path d=\"M18 6 6 18\" />\n <path d=\"m6 6 12 12\" />\n </svg>\n );\n}\n"],"names":["Toasty","children","jsxs","Toast.Provider","jsx","Toast.Portal","Toast.Viewport","ToastList","toasts","Toast.useToastManager","toast","Toast.Root","cn","Toast.Content","Toast.Title","Toast.Description","Toast.Close","XIcon","props"],"mappings":";;;;AA+EO,SAASA,EAAO,EAAE,UAAAC,KAAyB;AAChD,SACE,gBAAAC,EAACC,GAAA,EACE,UAAA;AAAA,IAAAF;AAAA,IACD,gBAAAG,EAACC,GAAA,EACC,UAAA,gBAAAD,EAACE,GAAA,EAAe,WAAU,mGACxB,UAAA,gBAAAF,EAACG,GAAA,CAAA,CAAU,GACb,EAAA,CACF;AAAA,EAAA,GACF;AAEJ;AAEA,SAASA,IAAY;AACnB,QAAM,EAAE,QAAAC,EAAA,IAAWC,EAAM;AACzB,SAAOD,EAAO,IAAI,CAACE,MACjB,gBAAAN;AAAA,IAACO;AAAAA,IAAA;AAAA,MAEC,OAAAD;AAAA,MACA,WAAWE;AAAA,QACT;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,MAAA;AAAA,MAGF,UAAA,gBAAAV,EAACW,GAAA,EAAc,WAAU,4LACvB,UAAA;AAAA,QAAA,gBAAAT,EAACU,GAAA,EAAY,WAAU,0DAAA,CAA0D;AAAA,QACjF,gBAAAV,EAACW,GAAA,EAAkB,WAAU,6CAAA,CAA6C;AAAA,QAC1E,gBAAAX;AAAA,UAACY;AAAAA,UAAA;AAAA,YACC,WAAU;AAAA,YACV,cAAW;AAAA,YAEX,UAAA,gBAAAZ,EAACa,GAAA,EAAM,WAAU,UAAA,CAAU;AAAA,UAAA;AAAA,QAAA;AAAA,MAC7B,EAAA,CACF;AAAA,IAAA;AAAA,IAxBKP,EAAM;AAAA,EAAA,CA0Bd;AACH;AAEA,SAASO,EAAMC,GAAoC;AACjD,SACE,gBAAAhB;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,OAAM;AAAA,MACN,OAAM;AAAA,MACN,QAAO;AAAA,MACP,SAAQ;AAAA,MACR,MAAK;AAAA,MACL,QAAO;AAAA,MACP,aAAY;AAAA,MACZ,eAAc;AAAA,MACd,gBAAe;AAAA,MACd,GAAGgB;AAAA,MAEJ,UAAA;AAAA,QAAA,gBAAAd,EAAC,QAAA,EAAK,GAAE,aAAA,CAAa;AAAA,QACrB,gBAAAA,EAAC,QAAA,EAAK,GAAE,aAAA,CAAa;AAAA,MAAA;AAAA,IAAA;AAAA,EAAA;AAG3B;"}
|