@cloudflare/kumo 1.9.0 → 1.11.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 +197 -0
- package/ai/component-registry.json +55 -38
- package/ai/component-registry.md +252 -56
- package/ai/schemas.ts +4 -3
- package/dist/.build-complete +1 -1
- package/dist/Legend-AE5XCSyU.js +388 -0
- package/dist/Legend-AE5XCSyU.js.map +1 -0
- package/dist/abap-DBQ6eW1v.js +8 -0
- package/dist/abap-DBQ6eW1v.js.map +1 -0
- package/dist/actionscript-3-DiEsS-FW.js +8 -0
- package/dist/actionscript-3-DiEsS-FW.js.map +1 -0
- package/dist/ada-DGQ_5PSJ.js +8 -0
- package/dist/ada-DGQ_5PSJ.js.map +1 -0
- package/dist/ai/schemas.d.ts +16 -2
- package/dist/ai/schemas.d.ts.map +1 -1
- package/dist/{schemas-CdpAeJKO.js → ai/schemas.js} +117 -116
- package/dist/ai/schemas.js.map +1 -0
- package/dist/andromeeda-0OVEHq5k.js +6 -0
- package/dist/andromeeda-0OVEHq5k.js.map +1 -0
- package/dist/angular-html-C3bwzvDd.js +34 -0
- package/dist/angular-html-C3bwzvDd.js.map +1 -0
- package/dist/angular-ts-fBH42fxp.js +23 -0
- package/dist/angular-ts-fBH42fxp.js.map +1 -0
- package/dist/apache-Bbrn7pkv.js +8 -0
- package/dist/apache-Bbrn7pkv.js.map +1 -0
- package/dist/apex-D7jlLUJl.js +8 -0
- package/dist/apex-D7jlLUJl.js.map +1 -0
- package/dist/apl-Cal58rzR.js +18 -0
- package/dist/apl-Cal58rzR.js.map +1 -0
- package/dist/applescript-AZMDCVmb.js +8 -0
- package/dist/applescript-AZMDCVmb.js.map +1 -0
- package/dist/ara-D7lI3smf.js +8 -0
- package/dist/ara-D7lI3smf.js.map +1 -0
- package/dist/asciidoc-B_JWnvj-.js +8 -0
- package/dist/asciidoc-B_JWnvj-.js.map +1 -0
- package/dist/asm-CF39_jeh.js +8 -0
- package/dist/asm-CF39_jeh.js.map +1 -0
- package/dist/astro-DvJenNvt.js +20 -0
- package/dist/astro-DvJenNvt.js.map +1 -0
- package/dist/aurora-x-lzSm_5DI.js +6 -0
- package/dist/aurora-x-lzSm_5DI.js.map +1 -0
- package/dist/awk-D1dwqHUl.js +8 -0
- package/dist/awk-D1dwqHUl.js.map +1 -0
- package/dist/ayu-dark-C_pOwMAx.js +6 -0
- package/dist/ayu-dark-C_pOwMAx.js.map +1 -0
- package/dist/ayu-light-C25DTeWu.js +6 -0
- package/dist/ayu-light-C25DTeWu.js.map +1 -0
- package/dist/ayu-mirage-9IoMPoai.js +6 -0
- package/dist/ayu-mirage-9IoMPoai.js.map +1 -0
- package/dist/{badge-Dc99vsfo.js → badge-DUfmrhhZ.js} +23 -18
- package/dist/badge-DUfmrhhZ.js.map +1 -0
- package/dist/ballerina-0aHuYbBL.js +8 -0
- package/dist/ballerina-0aHuYbBL.js.map +1 -0
- package/dist/bat-hp8TkMW_.js +8 -0
- package/dist/bat-hp8TkMW_.js.map +1 -0
- package/dist/beancount-DhXwArMG.js +8 -0
- package/dist/beancount-DhXwArMG.js.map +1 -0
- package/dist/berry-SKcQ_bn6.js +8 -0
- package/dist/berry-SKcQ_bn6.js.map +1 -0
- package/dist/bibtex-CKeuI1gX.js +8 -0
- package/dist/bibtex-CKeuI1gX.js.map +1 -0
- package/dist/bicep-Bb1Z8c8o.js +8 -0
- package/dist/bicep-Bb1Z8c8o.js.map +1 -0
- package/dist/bird2-C3rWbj4Z.js +8 -0
- package/dist/bird2-C3rWbj4Z.js.map +1 -0
- package/dist/blade-THHHddQO.js +22 -0
- package/dist/blade-THHHddQO.js.map +1 -0
- package/dist/breadcrumbs-BPtbCStQ.js +166 -0
- package/dist/breadcrumbs-BPtbCStQ.js.map +1 -0
- package/dist/bsl-CflI2mMp.js +10 -0
- package/dist/bsl-CflI2mMp.js.map +1 -0
- package/dist/c-D5qA7m19.js +8 -0
- package/dist/c-D5qA7m19.js.map +1 -0
- package/dist/c3-COOn93H9.js +8 -0
- package/dist/c3-COOn93H9.js.map +1 -0
- package/dist/cadence-Dxfo-G8_.js +8 -0
- package/dist/cadence-Dxfo-G8_.js.map +1 -0
- package/dist/cairo-CY6szQm5.js +10 -0
- package/dist/cairo-CY6szQm5.js.map +1 -0
- package/dist/catalog.js +1 -1
- package/dist/catalog.js.map +1 -1
- package/dist/catppuccin-frappe-CpIXPvSU.js +6 -0
- package/dist/catppuccin-frappe-CpIXPvSU.js.map +1 -0
- package/dist/catppuccin-latte-xiJp113n.js +6 -0
- package/dist/catppuccin-latte-xiJp113n.js.map +1 -0
- package/dist/catppuccin-macchiato-CUb8G_sh.js +6 -0
- package/dist/catppuccin-macchiato-CUb8G_sh.js.map +1 -0
- package/dist/catppuccin-mocha-_pSbIuk3.js +6 -0
- package/dist/catppuccin-mocha-_pSbIuk3.js.map +1 -0
- package/dist/checkbox-ZiHzIOCx.js +220 -0
- package/dist/checkbox-ZiHzIOCx.js.map +1 -0
- package/dist/clarity-S9WX3mE2.js +8 -0
- package/dist/clarity-S9WX3mE2.js.map +1 -0
- package/dist/{clipboard-text-1d0rHIhb.js → clipboard-text-DXs1GdOt.js} +4 -4
- package/dist/clipboard-text-DXs1GdOt.js.map +1 -0
- package/dist/clojure-CMSQ2cRZ.js +8 -0
- package/dist/clojure-CMSQ2cRZ.js.map +1 -0
- package/dist/cmake-BjGOmuDM.js +8 -0
- package/dist/cmake-BjGOmuDM.js.map +1 -0
- package/dist/cobol-CdczAIkZ.js +12 -0
- package/dist/cobol-CdczAIkZ.js.map +1 -0
- package/dist/code/server.js +58 -0
- package/dist/code/server.js.map +1 -0
- package/dist/code-T2wPDiM0.js.map +1 -1
- package/dist/code.js +205 -0
- package/dist/code.js.map +1 -0
- package/dist/codeowners-CJleX2EU.js +8 -0
- package/dist/codeowners-CJleX2EU.js.map +1 -0
- package/dist/codeql-C_xiqGOC.js +8 -0
- package/dist/codeql-C_xiqGOC.js.map +1 -0
- package/dist/coffee-DbwFrMGw.js +10 -0
- package/dist/coffee-DbwFrMGw.js.map +1 -0
- package/dist/{collapsible-OBNkTO48.js → collapsible-C3LJ1dfZ.js} +13 -11
- package/dist/collapsible-C3LJ1dfZ.js.map +1 -0
- package/dist/combobox--ec3iibR.js +336 -0
- package/dist/combobox--ec3iibR.js.map +1 -0
- package/dist/command-line/cli.js +4 -0
- package/dist/command-line/commands/add.js +4 -0
- package/dist/{command-palette-B80cqB7K.js → command-palette-B_J7o7P-.js} +49 -49
- package/dist/command-palette-B_J7o7P-.js.map +1 -0
- package/dist/common-lisp-bZFDzkJA.js +8 -0
- package/dist/common-lisp-bZFDzkJA.js.map +1 -0
- package/dist/components/badge.js +1 -1
- package/dist/components/breadcrumbs.js +1 -1
- package/dist/components/chart.js +9 -0
- package/dist/components/chart.js.map +1 -0
- package/dist/components/checkbox.js +1 -1
- package/dist/components/clipboard-text.js +1 -1
- package/dist/components/collapsible.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/field.js +1 -1
- package/dist/components/flow.js +1998 -1924
- package/dist/components/flow.js.map +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 +2 -2
- package/dist/components/tooltip.js +1 -1
- package/dist/coq-BHwvPA1n.js +8 -0
- package/dist/coq-BHwvPA1n.js.map +1 -0
- package/dist/cpp-8X-mPrPy.js +20 -0
- package/dist/cpp-8X-mPrPy.js.map +1 -0
- package/dist/crystal-ClltT4Pm.js +20 -0
- package/dist/crystal-ClltT4Pm.js.map +1 -0
- package/dist/csharp-Byem5RBI.js +8 -0
- package/dist/csharp-Byem5RBI.js.map +1 -0
- package/dist/css-qd-96f_M.js +8 -0
- package/dist/css-qd-96f_M.js.map +1 -0
- package/dist/csv-CF_FKHnB.js +8 -0
- package/dist/csv-CF_FKHnB.js.map +1 -0
- package/dist/cue-I1Agx594.js +8 -0
- package/dist/cue-I1Agx594.js.map +1 -0
- package/dist/cypher-plLNBUt5.js +8 -0
- package/dist/cypher-plLNBUt5.js.map +1 -0
- package/dist/d-CEuq9VFi.js +8 -0
- package/dist/d-CEuq9VFi.js.map +1 -0
- package/dist/dark-plus-BoH9QJRG.js +6 -0
- package/dist/dark-plus-BoH9QJRG.js.map +1 -0
- package/dist/dart-BW14f2cB.js +8 -0
- package/dist/dart-BW14f2cB.js.map +1 -0
- package/dist/dax-3tjM9tVE.js +8 -0
- package/dist/dax-3tjM9tVE.js.map +1 -0
- package/dist/desktop-C_s7lQ2C.js +8 -0
- package/dist/desktop-C_s7lQ2C.js.map +1 -0
- package/dist/dialog-DGaQTZVR.js +112 -0
- package/dist/dialog-DGaQTZVR.js.map +1 -0
- package/dist/diff-B9PHDIQg.js +8 -0
- package/dist/diff-B9PHDIQg.js.map +1 -0
- package/dist/docker-rmWVNdXq.js +8 -0
- package/dist/docker-rmWVNdXq.js.map +1 -0
- package/dist/dotenv-DZArZ0py.js +8 -0
- package/dist/dotenv-DZArZ0py.js.map +1 -0
- package/dist/dracula-CdWPhGUA.js +6 -0
- package/dist/dracula-CdWPhGUA.js.map +1 -0
- package/dist/dracula-soft-DRgtS4KI.js +6 -0
- package/dist/dracula-soft-DRgtS4KI.js.map +1 -0
- package/dist/dream-maker-DNRMl5wX.js +8 -0
- package/dist/dream-maker-DNRMl5wX.js.map +1 -0
- package/dist/{dropdown-CfS4QcSR.js → dropdown-DBfVqi0v.js} +74 -75
- package/dist/dropdown-DBfVqi0v.js.map +1 -0
- package/dist/edge-CQUaQiBB.js +14 -0
- package/dist/edge-CQUaQiBB.js.map +1 -0
- package/dist/elixir-BIX3y1uJ.js +10 -0
- package/dist/elixir-BIX3y1uJ.js.map +1 -0
- package/dist/elm-DNVN4B4L.js +10 -0
- package/dist/elm-DNVN4B4L.js.map +1 -0
- package/dist/emacs-lisp-C3TqDViv.js +8 -0
- package/dist/emacs-lisp-C3TqDViv.js.map +1 -0
- package/dist/engine-compile-D-n7xALU.js +2621 -0
- package/dist/engine-compile-D-n7xALU.js.map +1 -0
- package/dist/engine-javascript-BGkeRc0U.js +26 -0
- package/dist/engine-javascript-BGkeRc0U.js.map +1 -0
- package/dist/engine-oniguruma-T2xha06Q.js +304 -0
- package/dist/engine-oniguruma-T2xha06Q.js.map +1 -0
- package/dist/erb-CPJOs_gM.js +12 -0
- package/dist/erb-CPJOs_gM.js.map +1 -0
- package/dist/erlang-X97pCGTS.js +10 -0
- package/dist/erlang-X97pCGTS.js.map +1 -0
- package/dist/everforest-dark-C9JXzteI.js +6 -0
- package/dist/everforest-dark-C9JXzteI.js.map +1 -0
- package/dist/everforest-light-xBi4ZMR7.js +6 -0
- package/dist/everforest-light-xBi4ZMR7.js.map +1 -0
- package/dist/fennel-fKVJGO8V.js +8 -0
- package/dist/fennel-fKVJGO8V.js.map +1 -0
- package/dist/{field-B8xISAuX.js → field-CQmGKOVZ.js} +11 -11
- package/dist/{field-B8xISAuX.js.map → field-CQmGKOVZ.js.map} +1 -1
- package/dist/fish-BB5DT4M2.js +8 -0
- package/dist/fish-BB5DT4M2.js.map +1 -0
- package/dist/fluent-AMVPEbdR.js +8 -0
- package/dist/fluent-AMVPEbdR.js.map +1 -0
- package/dist/fortran-fixed-form-J4xKprxx.js +10 -0
- package/dist/fortran-fixed-form-J4xKprxx.js.map +1 -0
- package/dist/fortran-free-form-89VVYcvD.js +8 -0
- package/dist/fortran-free-form-89VVYcvD.js.map +1 -0
- package/dist/fsharp-BnRQMxrz.js +10 -0
- package/dist/fsharp-BnRQMxrz.js.map +1 -0
- package/dist/gdresource-DGR3GPIj.js +12 -0
- package/dist/gdresource-DGR3GPIj.js.map +1 -0
- package/dist/gdscript-8-4n2AaI.js +8 -0
- package/dist/gdscript-8-4n2AaI.js.map +1 -0
- package/dist/gdshader-BCM6bIM_.js +8 -0
- package/dist/gdshader-BCM6bIM_.js.map +1 -0
- package/dist/genie-CxR2u3hD.js +8 -0
- package/dist/genie-CxR2u3hD.js.map +1 -0
- package/dist/gherkin-BhW6oAYW.js +8 -0
- package/dist/gherkin-BhW6oAYW.js.map +1 -0
- package/dist/git-commit-DSzkYnqf.js +10 -0
- package/dist/git-commit-DSzkYnqf.js.map +1 -0
- package/dist/git-rebase-CY0sqDHH.js +10 -0
- package/dist/git-rebase-CY0sqDHH.js.map +1 -0
- package/dist/github-dark-EGgK0P1m.js +6 -0
- package/dist/github-dark-EGgK0P1m.js.map +1 -0
- package/dist/github-dark-default-69UGLTaR.js +6 -0
- package/dist/github-dark-default-69UGLTaR.js.map +1 -0
- package/dist/github-dark-dimmed-CnBHruXC.js +6 -0
- package/dist/github-dark-dimmed-CnBHruXC.js.map +1 -0
- package/dist/github-dark-high-contrast-Dz2ZsuOt.js +6 -0
- package/dist/github-dark-high-contrast-Dz2ZsuOt.js.map +1 -0
- package/dist/github-light-C7TbDuh5.js +6 -0
- package/dist/github-light-C7TbDuh5.js.map +1 -0
- package/dist/github-light-default-C1fruPEw.js +6 -0
- package/dist/github-light-default-C1fruPEw.js.map +1 -0
- package/dist/github-light-high-contrast-SmWFD2B-.js +6 -0
- package/dist/github-light-high-contrast-SmWFD2B-.js.map +1 -0
- package/dist/gleam-PNso-9g-.js +8 -0
- package/dist/gleam-PNso-9g-.js.map +1 -0
- package/dist/glimmer-js-DY9OBWW6.js +16 -0
- package/dist/glimmer-js-DY9OBWW6.js.map +1 -0
- package/dist/glimmer-ts-CKjdlzG3.js +16 -0
- package/dist/glimmer-ts-CKjdlzG3.js.map +1 -0
- package/dist/glsl-Bo9QfxI7.js +10 -0
- package/dist/glsl-Bo9QfxI7.js.map +1 -0
- package/dist/gn-B8imrxEe.js +8 -0
- package/dist/gn-B8imrxEe.js.map +1 -0
- package/dist/gnuplot-z48QnpzZ.js +8 -0
- package/dist/gnuplot-z48QnpzZ.js.map +1 -0
- package/dist/go-BUI2a86a.js +8 -0
- package/dist/go-BUI2a86a.js.map +1 -0
- package/dist/graphql-CYUl2j62.js +16 -0
- package/dist/graphql-CYUl2j62.js.map +1 -0
- package/dist/groovy-BZajDB1h.js +8 -0
- package/dist/groovy-BZajDB1h.js.map +1 -0
- package/dist/gruvbox-dark-hard-DEp4fn0U.js +6 -0
- package/dist/gruvbox-dark-hard-DEp4fn0U.js.map +1 -0
- package/dist/gruvbox-dark-medium-D3l-n4N3.js +6 -0
- package/dist/gruvbox-dark-medium-D3l-n4N3.js.map +1 -0
- package/dist/gruvbox-dark-soft-Ca_lMr1K.js +6 -0
- package/dist/gruvbox-dark-soft-Ca_lMr1K.js.map +1 -0
- package/dist/gruvbox-light-hard-D5BcqPys.js +6 -0
- package/dist/gruvbox-light-hard-D5BcqPys.js.map +1 -0
- package/dist/gruvbox-light-medium-C_7vC_ep.js +6 -0
- package/dist/gruvbox-light-medium-C_7vC_ep.js.map +1 -0
- package/dist/gruvbox-light-soft-YeHuiVT9.js +6 -0
- package/dist/gruvbox-light-soft-YeHuiVT9.js.map +1 -0
- package/dist/hack-Bo7_3XMo.js +12 -0
- package/dist/hack-Bo7_3XMo.js.map +1 -0
- package/dist/haml-lAa-UgZq.js +12 -0
- package/dist/haml-lAa-UgZq.js.map +1 -0
- package/dist/handlebars-C-lypSbJ.js +16 -0
- package/dist/handlebars-C-lypSbJ.js.map +1 -0
- package/dist/haskell-CyfJi0Qi.js +8 -0
- package/dist/haskell-CyfJi0Qi.js.map +1 -0
- package/dist/haxe-DHpItfCt.js +8 -0
- package/dist/haxe-DHpItfCt.js.map +1 -0
- package/dist/hcl-C-f84Y9W.js +8 -0
- package/dist/hcl-C-f84Y9W.js.map +1 -0
- package/dist/hjson-8VYQauSm.js +8 -0
- package/dist/hjson-8VYQauSm.js.map +1 -0
- package/dist/hlsl-Bi2Lb4au.js +8 -0
- package/dist/hlsl-Bi2Lb4au.js.map +1 -0
- package/dist/horizon-DyGYchkb.js +6 -0
- package/dist/horizon-DyGYchkb.js.map +1 -0
- package/dist/horizon-bright-DatYugLo.js +6 -0
- package/dist/horizon-bright-DatYugLo.js.map +1 -0
- package/dist/houston-DaTAsj92.js +6 -0
- package/dist/houston-DaTAsj92.js.map +1 -0
- package/dist/html-BXZx6WkT.js +12 -0
- package/dist/html-BXZx6WkT.js.map +1 -0
- package/dist/html-derivative-CaPNhXFu.js +10 -0
- package/dist/html-derivative-CaPNhXFu.js.map +1 -0
- package/dist/http-BJ0BMq9T.js +16 -0
- package/dist/http-BJ0BMq9T.js.map +1 -0
- package/dist/hurl-D_d_bmYM.js +14 -0
- package/dist/hurl-D_d_bmYM.js.map +1 -0
- package/dist/hxml-C8H9PCaB.js +10 -0
- package/dist/hxml-C8H9PCaB.js.map +1 -0
- package/dist/hy-Cf7WyqnA.js +8 -0
- package/dist/hy-Cf7WyqnA.js.map +1 -0
- package/dist/imba-4cu8YWL6.js +8 -0
- package/dist/imba-4cu8YWL6.js.map +1 -0
- package/dist/index-yfbAkHut.js +7313 -0
- package/dist/index-yfbAkHut.js.map +1 -0
- package/dist/index.js +72 -67
- package/dist/index.js.map +1 -1
- package/dist/ini-DdlAq5Sk.js +8 -0
- package/dist/ini-DdlAq5Sk.js.map +1 -0
- package/dist/{input-area-DCaAN9nG.js → input-area-BgpN8siO.js} +3 -3
- package/dist/{input-area-DCaAN9nG.js.map → input-area-BgpN8siO.js.map} +1 -1
- package/dist/{input-DCzpefuq.js → input-gGpJCiT7.js} +3 -3
- package/dist/{input-DCzpefuq.js.map → input-gGpJCiT7.js.map} +1 -1
- package/dist/{input-group-BbaVpJnA.js → input-group-DwPPwJEW.js} +5 -5
- package/dist/input-group-DwPPwJEW.js.map +1 -0
- package/dist/java-DZX_qz_V.js +8 -0
- package/dist/java-DZX_qz_V.js.map +1 -0
- package/dist/javascript-Dcop9YgO.js +8 -0
- package/dist/javascript-Dcop9YgO.js.map +1 -0
- package/dist/jinja-CYDaN8cn.js +13 -0
- package/dist/jinja-CYDaN8cn.js.map +1 -0
- package/dist/jison-B8TKZKc6.js +10 -0
- package/dist/jison-B8TKZKc6.js.map +1 -0
- package/dist/json-BONZstWZ.js +8 -0
- package/dist/json-BONZstWZ.js.map +1 -0
- package/dist/json5-C-4cnXW0.js +8 -0
- package/dist/json5-C-4cnXW0.js.map +1 -0
- package/dist/jsonc-CIx6BVP6.js +8 -0
- package/dist/jsonc-CIx6BVP6.js.map +1 -0
- package/dist/jsonl-DFezC0c-.js +8 -0
- package/dist/jsonl-DFezC0c-.js.map +1 -0
- package/dist/jsonnet-CrYiLnuZ.js +8 -0
- package/dist/jsonnet-CrYiLnuZ.js.map +1 -0
- package/dist/jssm-DPqP_6Yy.js +8 -0
- package/dist/jssm-DPqP_6Yy.js.map +1 -0
- package/dist/jsx-Buo8VY2N.js +8 -0
- package/dist/jsx-Buo8VY2N.js.map +1 -0
- package/dist/julia-BGc-upw8.js +18 -0
- package/dist/julia-BGc-upw8.js.map +1 -0
- package/dist/just-Btim_Xbp.js +20 -0
- package/dist/just-Btim_Xbp.js.map +1 -0
- package/dist/kanagawa-dragon-CrRYMC-y.js +6 -0
- package/dist/kanagawa-dragon-CrRYMC-y.js.map +1 -0
- package/dist/kanagawa-lotus-CpAeLZo_.js +6 -0
- package/dist/kanagawa-lotus-CpAeLZo_.js.map +1 -0
- package/dist/kanagawa-wave-DgLnfzgl.js +6 -0
- package/dist/kanagawa-wave-DgLnfzgl.js.map +1 -0
- package/dist/kdl-D5mP0US-.js +8 -0
- package/dist/kdl-D5mP0US-.js.map +1 -0
- package/dist/kotlin-Bj4GXgal.js +8 -0
- package/dist/kotlin-Bj4GXgal.js.map +1 -0
- package/dist/kusto-xKgi3EM3.js +8 -0
- package/dist/kusto-xKgi3EM3.js.map +1 -0
- package/dist/label-hoE9-Nzo.js +62 -0
- package/dist/label-hoE9-Nzo.js.map +1 -0
- package/dist/laserwave-DwIE46bX.js +6 -0
- package/dist/laserwave-DwIE46bX.js.map +1 -0
- package/dist/latex-Ba_x0_mo.js +10 -0
- package/dist/latex-Ba_x0_mo.js.map +1 -0
- package/dist/lean-CFZjFqaI.js +8 -0
- package/dist/lean-CFZjFqaI.js.map +1 -0
- package/dist/less-Cah4u9hl.js +8 -0
- package/dist/less-Cah4u9hl.js.map +1 -0
- package/dist/light-plus-uDz5yXau.js +6 -0
- package/dist/light-plus-uDz5yXau.js.map +1 -0
- package/dist/{link-DJq9RWpK.js → link-BFszrye7.js} +20 -14
- package/dist/link-BFszrye7.js.map +1 -0
- package/dist/liquid-DUwftMLD.js +16 -0
- package/dist/liquid-DUwftMLD.js.map +1 -0
- package/dist/llvm-p6MskI4D.js +8 -0
- package/dist/llvm-p6MskI4D.js.map +1 -0
- package/dist/log-B-eGB3gN.js +8 -0
- package/dist/log-B-eGB3gN.js.map +1 -0
- package/dist/logo-_QhIaHqR.js +8 -0
- package/dist/logo-_QhIaHqR.js.map +1 -0
- package/dist/lua-DXBtl-xZ.js +10 -0
- package/dist/lua-DXBtl-xZ.js.map +1 -0
- package/dist/luau-cNt0OAd4.js +8 -0
- package/dist/luau-cNt0OAd4.js.map +1 -0
- package/dist/make-LOzELzzn.js +8 -0
- package/dist/make-LOzELzzn.js.map +1 -0
- package/dist/markdown-CPiFXKuQ.js +8 -0
- package/dist/markdown-CPiFXKuQ.js.map +1 -0
- package/dist/marko-B5j5W6dr.js +16 -0
- package/dist/marko-B5j5W6dr.js.map +1 -0
- package/dist/material-theme-BNmHEIvm.js +6 -0
- package/dist/material-theme-BNmHEIvm.js.map +1 -0
- package/dist/material-theme-darker-DSlFkdBn.js +6 -0
- package/dist/material-theme-darker-DSlFkdBn.js.map +1 -0
- package/dist/material-theme-lighter-DMthFo49.js +6 -0
- package/dist/material-theme-lighter-DMthFo49.js.map +1 -0
- package/dist/material-theme-ocean-Bza3srwZ.js +6 -0
- package/dist/material-theme-ocean-Bza3srwZ.js.map +1 -0
- package/dist/material-theme-palenight-cC7823m_.js +6 -0
- package/dist/material-theme-palenight-cC7823m_.js.map +1 -0
- package/dist/matlab-BXc70sGh.js +8 -0
- package/dist/matlab-BXc70sGh.js.map +1 -0
- package/dist/mdc-DIfFG4VK.js +14 -0
- package/dist/mdc-DIfFG4VK.js.map +1 -0
- package/dist/mdx-DDEEGmMw.js +8 -0
- package/dist/mdx-DDEEGmMw.js.map +1 -0
- package/dist/{menubar-Chchzst0.js → menubar-DF-6twXU.js} +14 -14
- package/dist/menubar-DF-6twXU.js.map +1 -0
- package/dist/mermaid-BbhKaiym.js +8 -0
- package/dist/mermaid-BbhKaiym.js.map +1 -0
- package/dist/{meter-Wk7_EhaO.js → meter-CP6NBKRN.js} +4 -4
- package/dist/{meter-Wk7_EhaO.js.map → meter-CP6NBKRN.js.map} +1 -1
- package/dist/min-dark-B2RGEXlR.js +6 -0
- package/dist/min-dark-B2RGEXlR.js.map +1 -0
- package/dist/min-light-CdvDdehu.js +6 -0
- package/dist/min-light-CdvDdehu.js.map +1 -0
- package/dist/mipsasm-A-azREv6.js +8 -0
- package/dist/mipsasm-A-azREv6.js.map +1 -0
- package/dist/mojo-eENZKkWN.js +8 -0
- package/dist/mojo-eENZKkWN.js.map +1 -0
- package/dist/monokai-DfGcBwbw.js +6 -0
- package/dist/monokai-DfGcBwbw.js.map +1 -0
- package/dist/moonbit-OY9Cnyv0.js +8 -0
- package/dist/moonbit-OY9Cnyv0.js.map +1 -0
- package/dist/move-DQ3SUBHm.js +8 -0
- package/dist/move-DQ3SUBHm.js.map +1 -0
- package/dist/narrat-DEs1QMww.js +8 -0
- package/dist/narrat-DEs1QMww.js.map +1 -0
- package/dist/nextflow-BLqoZa2U.js +10 -0
- package/dist/nextflow-BLqoZa2U.js.map +1 -0
- package/dist/nextflow-groovy-sn5GPI4S.js +8 -0
- package/dist/nextflow-groovy-sn5GPI4S.js.map +1 -0
- package/dist/nginx-DV2C2lFg.js +10 -0
- package/dist/nginx-DV2C2lFg.js.map +1 -0
- package/dist/night-owl-Cx4f311z.js +6 -0
- package/dist/night-owl-Cx4f311z.js.map +1 -0
- package/dist/night-owl-light-CFIwPg_e.js +6 -0
- package/dist/night-owl-light-CFIwPg_e.js.map +1 -0
- package/dist/nim-DX5HB9SQ.js +22 -0
- package/dist/nim-DX5HB9SQ.js.map +1 -0
- package/dist/nix-BbTJzn8W.js +11 -0
- package/dist/nix-BbTJzn8W.js.map +1 -0
- package/dist/nord-N4OTOgI2.js +6 -0
- package/dist/nord-N4OTOgI2.js.map +1 -0
- package/dist/nushell-CRsPhsIw.js +8 -0
- package/dist/nushell-CRsPhsIw.js.map +1 -0
- package/dist/objective-c-7VQzYTNs.js +8 -0
- package/dist/objective-c-7VQzYTNs.js.map +1 -0
- package/dist/objective-cpp-C_AHgfC8.js +8 -0
- package/dist/objective-cpp-C_AHgfC8.js.map +1 -0
- package/dist/ocaml-N0gcbB8P.js +8 -0
- package/dist/ocaml-N0gcbB8P.js.map +1 -0
- package/dist/odin-CbArZjV2.js +8 -0
- package/dist/odin-CbArZjV2.js.map +1 -0
- package/dist/one-dark-pro-CFjKUJ8l.js +6 -0
- package/dist/one-dark-pro-CFjKUJ8l.js.map +1 -0
- package/dist/one-light-cHFZvryT.js +6 -0
- package/dist/one-light-cHFZvryT.js.map +1 -0
- package/dist/openscad-9QYZdZML.js +8 -0
- package/dist/openscad-9QYZdZML.js.map +1 -0
- package/dist/pagination-BWkeDEqb.js +224 -0
- package/dist/pagination-BWkeDEqb.js.map +1 -0
- package/dist/pascal-Chee6n3j.js +8 -0
- package/dist/pascal-Chee6n3j.js.map +1 -0
- package/dist/perl-Bo9cWF9y.js +18 -0
- package/dist/perl-Bo9cWF9y.js.map +1 -0
- package/dist/php-Cbqedh5-.js +20 -0
- package/dist/php-Cbqedh5-.js.map +1 -0
- package/dist/pkl-DmRpyJfO.js +8 -0
- package/dist/pkl-DmRpyJfO.js.map +1 -0
- package/dist/plastic-BWaSpRpp.js +6 -0
- package/dist/plastic-BWaSpRpp.js.map +1 -0
- package/dist/plsql-DXyBT3AN.js +8 -0
- package/dist/plsql-DXyBT3AN.js.map +1 -0
- package/dist/po-Duw5KTH-.js +8 -0
- package/dist/po-Duw5KTH-.js.map +1 -0
- package/dist/poimandres-DtrtfOBO.js +6 -0
- package/dist/poimandres-DtrtfOBO.js.map +1 -0
- package/dist/polar-C9ZZjIU6.js +8 -0
- package/dist/polar-C9ZZjIU6.js.map +1 -0
- package/dist/{popover-D20xpmdk.js → popover-B5CWcu7v.js} +2 -2
- package/dist/{popover-D20xpmdk.js.map → popover-B5CWcu7v.js.map} +1 -1
- package/dist/postcss-D9nF9Ns4.js +8 -0
- package/dist/postcss-D9nF9Ns4.js.map +1 -0
- package/dist/powerquery-Bf1siwRH.js +8 -0
- package/dist/powerquery-Bf1siwRH.js.map +1 -0
- package/dist/powershell-DbLFMYnO.js +8 -0
- package/dist/powershell-DbLFMYnO.js.map +1 -0
- 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/csp-provider.js +1 -1
- package/dist/primitives/dialog.js +1 -1
- package/dist/primitives/direction-provider.js +1 -1
- package/dist/primitives/drawer.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/prisma-DQmdODpM.js +8 -0
- package/dist/prisma-DQmdODpM.js.map +1 -0
- package/dist/prolog-BhDhfNq2.js +8 -0
- package/dist/prolog-BhDhfNq2.js.map +1 -0
- package/dist/proto-8YBPwIZV.js +8 -0
- package/dist/proto-8YBPwIZV.js.map +1 -0
- package/dist/pug-Cd1k_DIC.js +14 -0
- package/dist/pug-Cd1k_DIC.js.map +1 -0
- package/dist/puppet-DWeotfji.js +8 -0
- package/dist/puppet-DWeotfji.js.map +1 -0
- package/dist/purescript-BlRfpTfS.js +8 -0
- package/dist/purescript-BlRfpTfS.js.map +1 -0
- package/dist/python--QhWBEuB.js +8 -0
- package/dist/python--QhWBEuB.js.map +1 -0
- package/dist/qml-D5YeakZo.js +10 -0
- package/dist/qml-D5YeakZo.js.map +1 -0
- package/dist/qmldir-Cvb9I9Hu.js +8 -0
- package/dist/qmldir-Cvb9I9Hu.js.map +1 -0
- package/dist/qss-MOxpdvNy.js +8 -0
- package/dist/qss-MOxpdvNy.js.map +1 -0
- package/dist/r-CPa3sP0i.js +8 -0
- package/dist/r-CPa3sP0i.js.map +1 -0
- package/dist/racket-u4Z5W-hW.js +8 -0
- package/dist/racket-u4Z5W-hW.js.map +1 -0
- package/dist/{radio-ibVa4Y8a.js → radio-BQTXNBkS.js} +26 -26
- package/dist/radio-BQTXNBkS.js.map +1 -0
- package/dist/raku-DD1-d8EI.js +8 -0
- package/dist/raku-DD1-d8EI.js.map +1 -0
- package/dist/razor-CvgW6g5F.js +12 -0
- package/dist/razor-CvgW6g5F.js.map +1 -0
- package/dist/red-nqtx3ZzA.js +6 -0
- package/dist/red-nqtx3ZzA.js.map +1 -0
- package/dist/reg-D39ozI4Z.js +8 -0
- package/dist/reg-D39ozI4Z.js.map +1 -0
- package/dist/regexp-C-mTs3Xt.js +8 -0
- package/dist/regexp-C-mTs3Xt.js.map +1 -0
- package/dist/rel-CvIujmyu.js +8 -0
- package/dist/rel-CvIujmyu.js.map +1 -0
- package/dist/riscv-BDw_rTFU.js +8 -0
- package/dist/riscv-BDw_rTFU.js.map +1 -0
- package/dist/ron-Dr-HoCkP.js +8 -0
- package/dist/ron-Dr-HoCkP.js.map +1 -0
- package/dist/rose-pine-Ca6P34ai.js +6 -0
- package/dist/rose-pine-Ca6P34ai.js.map +1 -0
- package/dist/rose-pine-dawn-CSsyidmk.js +6 -0
- package/dist/rose-pine-dawn-CSsyidmk.js.map +1 -0
- package/dist/rose-pine-moon-DFcWGQ4j.js +6 -0
- package/dist/rose-pine-moon-DFcWGQ4j.js.map +1 -0
- package/dist/rosmsg-D3QLmOd5.js +8 -0
- package/dist/rosmsg-D3QLmOd5.js.map +1 -0
- package/dist/rst-BVJfTGcR.js +24 -0
- package/dist/rst-BVJfTGcR.js.map +1 -0
- package/dist/ruby-0gZcrdnG.js +32 -0
- package/dist/ruby-0gZcrdnG.js.map +1 -0
- package/dist/rust-CiVdiDo-.js +8 -0
- package/dist/rust-CiVdiDo-.js.map +1 -0
- package/dist/sas-Df_jutC7.js +10 -0
- package/dist/sas-Df_jutC7.js.map +1 -0
- package/dist/sass-CnN1LcIf.js +8 -0
- package/dist/sass-CnN1LcIf.js.map +1 -0
- package/dist/scala-D_7p1-Ff.js +8 -0
- package/dist/scala-D_7p1-Ff.js.map +1 -0
- package/dist/scheme-kuKKlndT.js +8 -0
- package/dist/scheme-kuKKlndT.js.map +1 -0
- package/dist/scripts/theme-generator/config.d.ts +6 -0
- package/dist/scripts/theme-generator/config.d.ts.map +1 -0
- package/dist/scripts/theme-generator/config.js +394 -0
- package/dist/scripts/theme-generator/config.js.map +1 -0
- package/dist/scripts/theme-generator/generate-css.d.ts +31 -0
- package/dist/scripts/theme-generator/generate-css.d.ts.map +1 -0
- package/dist/scripts/theme-generator/index.d.ts +13 -0
- package/dist/scripts/theme-generator/index.d.ts.map +1 -0
- package/dist/scripts/theme-generator/migrate.d.ts +56 -0
- package/dist/scripts/theme-generator/migrate.d.ts.map +1 -0
- package/dist/scripts/theme-generator/types.d.ts +76 -0
- package/dist/scripts/theme-generator/types.d.ts.map +1 -0
- package/dist/scripts/theme-generator/types.js +2 -0
- package/dist/scripts/theme-generator/types.js.map +1 -0
- package/dist/scss-Cnx3ZIbn.js +10 -0
- package/dist/scss-Cnx3ZIbn.js.map +1 -0
- package/dist/sdbl-C99B6EXT.js +8 -0
- package/dist/sdbl-C99B6EXT.js.map +1 -0
- package/dist/select-BWUNPPHQ.js +123 -0
- package/dist/select-BWUNPPHQ.js.map +1 -0
- package/dist/{sensitive-input-DHDRZRC7.js → sensitive-input-A6Kw7URa.js} +4 -4
- package/dist/{sensitive-input-DHDRZRC7.js.map → sensitive-input-A6Kw7URa.js.map} +1 -1
- package/dist/shaderlab-r5kupfNY.js +10 -0
- package/dist/shaderlab-r5kupfNY.js.map +1 -0
- package/dist/shellscript-C9yrawww.js +8 -0
- package/dist/shellscript-C9yrawww.js.map +1 -0
- package/dist/shellsession-Vfxwd5pt.js +10 -0
- package/dist/shellsession-Vfxwd5pt.js.map +1 -0
- package/dist/slack-dark-DPwE-fTd.js +6 -0
- package/dist/slack-dark-DPwE-fTd.js.map +1 -0
- package/dist/slack-ochin-XQpb-bu3.js +6 -0
- package/dist/slack-ochin-XQpb-bu3.js.map +1 -0
- package/dist/smalltalk-DBHjpWnU.js +8 -0
- package/dist/smalltalk-DBHjpWnU.js.map +1 -0
- package/dist/snazzy-light-B301-rZ_.js +6 -0
- package/dist/snazzy-light-B301-rZ_.js.map +1 -0
- package/dist/solarized-dark-Bmasqmd6.js +6 -0
- package/dist/solarized-dark-Bmasqmd6.js.map +1 -0
- package/dist/solarized-light-D79sTVew.js +6 -0
- package/dist/solarized-light-D79sTVew.js.map +1 -0
- package/dist/solidity-DiELThdT.js +8 -0
- package/dist/solidity-DiELThdT.js.map +1 -0
- package/dist/soy-JFzJcdvc.js +10 -0
- package/dist/soy-JFzJcdvc.js.map +1 -0
- package/dist/sparql-DFkbfk9m.js +10 -0
- package/dist/sparql-DFkbfk9m.js.map +1 -0
- package/dist/splunk-D_3lOa0g.js +8 -0
- package/dist/splunk-D_3lOa0g.js.map +1 -0
- package/dist/sql-BUQKMpen.js +8 -0
- package/dist/sql-BUQKMpen.js.map +1 -0
- package/dist/src/code/code-highlighted.d.ts +32 -0
- package/dist/src/code/code-highlighted.d.ts.map +1 -0
- package/dist/src/code/context.d.ts +16 -0
- package/dist/src/code/context.d.ts.map +1 -0
- package/dist/src/code/index.d.ts +31 -0
- package/dist/src/code/index.d.ts.map +1 -0
- package/dist/src/code/provider.d.ts +7 -0
- package/dist/src/code/provider.d.ts.map +1 -0
- package/dist/src/code/server.d.ts +96 -0
- package/dist/src/code/server.d.ts.map +1 -0
- package/dist/src/code/types.d.ts +89 -0
- package/dist/src/code/types.d.ts.map +1 -0
- package/dist/src/code/use-shiki-highlighter.d.ts +36 -0
- package/dist/src/code/use-shiki-highlighter.d.ts.map +1 -0
- package/dist/src/command-line/commands/add.d.ts.map +1 -1
- package/dist/src/components/badge/badge.d.ts +4 -0
- package/dist/src/components/badge/badge.d.ts.map +1 -1
- package/dist/src/components/breadcrumbs/breadcrumbs.d.ts.map +1 -1
- package/dist/src/components/chart/Color.d.ts +96 -0
- package/dist/src/components/chart/Color.d.ts.map +1 -0
- package/dist/src/components/chart/EChart.d.ts +130 -0
- package/dist/src/components/chart/EChart.d.ts.map +1 -0
- package/dist/src/components/chart/Legend.d.ts +42 -0
- package/dist/src/components/chart/Legend.d.ts.map +1 -0
- package/dist/src/components/chart/TimeseriesChart.d.ts +94 -0
- package/dist/src/components/chart/TimeseriesChart.d.ts.map +1 -0
- package/dist/src/components/chart/index.d.ts +5 -0
- package/dist/src/components/chart/index.d.ts.map +1 -0
- package/dist/src/components/code/code.d.ts +19 -0
- package/dist/src/components/code/code.d.ts.map +1 -1
- package/dist/src/components/collapsible/collapsible.d.ts.map +1 -1
- package/dist/src/components/combobox/combobox.d.ts +33 -2
- package/dist/src/components/combobox/combobox.d.ts.map +1 -1
- package/dist/src/components/dialog/dialog.d.ts +41 -2
- package/dist/src/components/dialog/dialog.d.ts.map +1 -1
- package/dist/src/components/dropdown/dropdown.d.ts.map +1 -1
- package/dist/src/components/flow/connectors.d.ts +4 -0
- package/dist/src/components/flow/connectors.d.ts.map +1 -1
- package/dist/src/components/flow/diagram.d.ts +35 -2
- package/dist/src/components/flow/diagram.d.ts.map +1 -1
- package/dist/src/components/flow/node.d.ts +6 -1
- package/dist/src/components/flow/node.d.ts.map +1 -1
- package/dist/src/components/flow/parallel.d.ts.map +1 -1
- package/dist/src/components/flow/use-children.d.ts +20 -2
- package/dist/src/components/flow/use-children.d.ts.map +1 -1
- package/dist/src/components/label/label.d.ts.map +1 -1
- package/dist/src/components/link/link.d.ts +2 -2
- package/dist/src/components/link/link.d.ts.map +1 -1
- package/dist/src/components/pagination/pagination.d.ts.map +1 -1
- package/dist/src/components/radio/radio.d.ts.map +1 -1
- package/dist/src/components/select/select.d.ts +29 -6
- package/dist/src/components/select/select.d.ts.map +1 -1
- package/dist/src/components/switch/switch.d.ts.map +1 -1
- package/dist/src/components/table/table.d.ts +3 -1
- package/dist/src/components/table/table.d.ts.map +1 -1
- package/dist/src/components/tabs/tabs.d.ts +6 -2
- package/dist/src/components/tabs/tabs.d.ts.map +1 -1
- package/dist/src/components/toast/toast.d.ts +1 -0
- package/dist/src/components/toast/toast.d.ts.map +1 -1
- package/dist/src/components/tooltip/tooltip.d.ts.map +1 -1
- package/dist/src/index.d.ts +1 -0
- package/dist/src/index.d.ts.map +1 -1
- package/dist/ssh-config-DNaBVjVu.js +8 -0
- package/dist/ssh-config-DNaBVjVu.js.map +1 -0
- package/dist/stata-DLB0gsgJ.js +10 -0
- package/dist/stata-DLB0gsgJ.js.map +1 -0
- package/dist/styles/kumo-binding.css +31 -0
- package/dist/styles/kumo-standalone.css +1 -1
- package/dist/styles/kumo.css +67 -0
- package/dist/styles/theme-fedramp.css +13 -0
- package/dist/styles/theme-kumo.css +88 -2
- package/dist/stylus-D51fN9sH.js +8 -0
- package/dist/stylus-D51fN9sH.js.map +1 -0
- package/dist/surrealql-sFzY-ODM.js +10 -0
- package/dist/surrealql-sFzY-ODM.js.map +1 -0
- package/dist/svelte-CvDgWedh.js +16 -0
- package/dist/svelte-CvDgWedh.js.map +1 -0
- package/dist/swift-DwwnjRI-.js +8 -0
- package/dist/swift-DwwnjRI-.js.map +1 -0
- package/dist/{switch-DrbaX2iC.js → switch-CmUFBiJv.js} +4 -4
- package/dist/switch-CmUFBiJv.js.map +1 -0
- package/dist/synthwave-84-H0OiUA6S.js +6 -0
- package/dist/synthwave-84-H0OiUA6S.js.map +1 -0
- package/dist/system-verilog-Crpmwi64.js +8 -0
- package/dist/system-verilog-Crpmwi64.js.map +1 -0
- package/dist/systemd-DpPksTVO.js +8 -0
- package/dist/systemd-DpPksTVO.js.map +1 -0
- package/dist/{table-CH9KC36S.js → table-CbU4Oe3o.js} +39 -33
- package/dist/table-CbU4Oe3o.js.map +1 -0
- package/dist/{tabs-B-Fxc6Zo.js → tabs-uLzHh6SR.js} +16 -15
- package/dist/tabs-uLzHh6SR.js.map +1 -0
- package/dist/talonscript-C0B9tdh0.js +8 -0
- package/dist/talonscript-C0B9tdh0.js.map +1 -0
- package/dist/tasl-De-6_1ux.js +8 -0
- package/dist/tasl-De-6_1ux.js.map +1 -0
- package/dist/tcl-tdOXVFhT.js +8 -0
- package/dist/tcl-tdOXVFhT.js.map +1 -0
- package/dist/templ-D3k0ETqq.js +14 -0
- package/dist/templ-D3k0ETqq.js.map +1 -0
- package/dist/terraform-C65cvXJK.js +8 -0
- package/dist/terraform-C65cvXJK.js.map +1 -0
- package/dist/tex-4pYKQzZ9.js +10 -0
- package/dist/tex-4pYKQzZ9.js.map +1 -0
- package/dist/{toast-DUYp3EtH.js → toast-B-d56fkl.js} +125 -93
- package/dist/toast-B-d56fkl.js.map +1 -0
- package/dist/tokyo-night-BcIcd5FP.js +6 -0
- package/dist/tokyo-night-BcIcd5FP.js.map +1 -0
- package/dist/toml-BTLaxjFB.js +8 -0
- package/dist/toml-BTLaxjFB.js.map +1 -0
- package/dist/{tooltip-D-KwZQDV.js → tooltip-C7p2iJ0y.js} +24 -18
- package/dist/tooltip-C7p2iJ0y.js.map +1 -0
- package/dist/ts-tags-DeeA5bAv.js +43 -0
- package/dist/ts-tags-DeeA5bAv.js.map +1 -0
- package/dist/tsv-BSiNlNds.js +8 -0
- package/dist/tsv-BSiNlNds.js.map +1 -0
- package/dist/tsx-1QZ5GNk-.js +8 -0
- package/dist/tsx-1QZ5GNk-.js.map +1 -0
- package/dist/turtle-B1Pzn5av.js +8 -0
- package/dist/turtle-B1Pzn5av.js.map +1 -0
- package/dist/twig-C2HueQmu.js +20 -0
- package/dist/twig-C2HueQmu.js.map +1 -0
- package/dist/typescript-CLMZXfG9.js +8 -0
- package/dist/typescript-CLMZXfG9.js.map +1 -0
- package/dist/typespec-C5gqdlO4.js +8 -0
- package/dist/typespec-C5gqdlO4.js.map +1 -0
- package/dist/typst-pX4dU_Sd.js +8 -0
- package/dist/typst-pX4dU_Sd.js.map +1 -0
- package/dist/v-C_UlMRpP.js +8 -0
- package/dist/v-C_UlMRpP.js.map +1 -0
- package/dist/vala-B0RfnRiT.js +8 -0
- package/dist/vala-B0RfnRiT.js.map +1 -0
- package/dist/vb-DYbmUkLw.js +8 -0
- package/dist/vb-DYbmUkLw.js.map +1 -0
- package/dist/{vendor-base-ui-Bsg5ebHI.js → vendor-base-ui-DN1j_aJS.js} +261 -259
- package/dist/{vendor-base-ui-Bsg5ebHI.js.map → vendor-base-ui-DN1j_aJS.js.map} +1 -1
- package/dist/verilog-BUqLwf8h.js +8 -0
- package/dist/verilog-BUqLwf8h.js.map +1 -0
- package/dist/vesper-BW8Q9P3p.js +6 -0
- package/dist/vesper-BW8Q9P3p.js.map +1 -0
- package/dist/vhdl-e6zXgkQJ.js +8 -0
- package/dist/vhdl-e6zXgkQJ.js.map +1 -0
- package/dist/viml-Bw7DMabC.js +8 -0
- package/dist/viml-Bw7DMabC.js.map +1 -0
- package/dist/vitesse-black-BBGvp4RB.js +6 -0
- package/dist/vitesse-black-BBGvp4RB.js.map +1 -0
- package/dist/vitesse-dark-qcbI9VBy.js +6 -0
- package/dist/vitesse-dark-qcbI9VBy.js.map +1 -0
- package/dist/vitesse-light-BL2wQDaR.js +6 -0
- package/dist/vitesse-light-BL2wQDaR.js.map +1 -0
- package/dist/vue-DKeMdoTK.js +33 -0
- package/dist/vue-DKeMdoTK.js.map +1 -0
- package/dist/vue-html-CEfeAKp2.js +10 -0
- package/dist/vue-html-CEfeAKp2.js.map +1 -0
- package/dist/vue-vine-CjuPBhXu.js +20 -0
- package/dist/vue-vine-CjuPBhXu.js.map +1 -0
- package/dist/vyper-Dc9KcbZ_.js +8 -0
- package/dist/vyper-Dc9KcbZ_.js.map +1 -0
- package/dist/wasm-Bae8j78o.js +8 -0
- package/dist/wasm-Bae8j78o.js.map +1 -0
- package/dist/wasm-D5B682Xt.js +9 -0
- package/dist/wasm-D5B682Xt.js.map +1 -0
- package/dist/wenyan-j7Mu9-Zf.js +8 -0
- package/dist/wenyan-j7Mu9-Zf.js.map +1 -0
- package/dist/wgsl-DEgz941F.js +8 -0
- package/dist/wgsl-DEgz941F.js.map +1 -0
- package/dist/wikitext-CFdiH6zG.js +8 -0
- package/dist/wikitext-CFdiH6zG.js.map +1 -0
- package/dist/wit-CQDxIROw.js +8 -0
- package/dist/wit-CQDxIROw.js.map +1 -0
- package/dist/wolfram-BkETUL8d.js +8 -0
- package/dist/wolfram-BkETUL8d.js.map +1 -0
- package/dist/xml-CKSarKBc.js +10 -0
- package/dist/xml-CKSarKBc.js.map +1 -0
- package/dist/xsl-oImqe_65.js +10 -0
- package/dist/xsl-oImqe_65.js.map +1 -0
- package/dist/yaml-CqFcuW2H.js +8 -0
- package/dist/yaml-CqFcuW2H.js.map +1 -0
- package/dist/zenscript-DfbVeZ74.js +8 -0
- package/dist/zenscript-DfbVeZ74.js.map +1 -0
- package/dist/zig--LeFnMpj.js +8 -0
- package/dist/zig--LeFnMpj.js.map +1 -0
- package/package.json +35 -10
- package/scripts/css-build.ts +5 -1
- package/scripts/theme-generator/config.ts +20 -2
- package/scripts/theme-generator/generate-css.test.ts +30 -0
- package/scripts/theme-generator/generate-css.ts +104 -6
- package/dist/badge-Dc99vsfo.js.map +0 -1
- package/dist/breadcrumbs-DyKi7BcP.js +0 -132
- package/dist/breadcrumbs-DyKi7BcP.js.map +0 -1
- package/dist/checkbox-CfFoTNFI.js +0 -224
- package/dist/checkbox-CfFoTNFI.js.map +0 -1
- package/dist/clipboard-text-1d0rHIhb.js.map +0 -1
- package/dist/collapsible-OBNkTO48.js.map +0 -1
- package/dist/combobox-vnvi22pn.js +0 -250
- package/dist/combobox-vnvi22pn.js.map +0 -1
- package/dist/command-palette-B80cqB7K.js.map +0 -1
- package/dist/dialog-C4BIM-74.js +0 -97
- package/dist/dialog-C4BIM-74.js.map +0 -1
- package/dist/dropdown-CfS4QcSR.js.map +0 -1
- package/dist/input-group-BbaVpJnA.js.map +0 -1
- package/dist/label-Cd6nCDWj.js +0 -58
- package/dist/label-Cd6nCDWj.js.map +0 -1
- package/dist/link-DJq9RWpK.js.map +0 -1
- package/dist/menubar-Chchzst0.js.map +0 -1
- package/dist/pagination-DFHoZwPJ.js +0 -208
- package/dist/pagination-DFHoZwPJ.js.map +0 -1
- package/dist/radio-ibVa4Y8a.js.map +0 -1
- package/dist/schemas-CdpAeJKO.js.map +0 -1
- package/dist/select-DtcT1zGm.js +0 -122
- package/dist/select-DtcT1zGm.js.map +0 -1
- package/dist/switch-DrbaX2iC.js.map +0 -1
- package/dist/table-CH9KC36S.js.map +0 -1
- package/dist/tabs-B-Fxc6Zo.js.map +0 -1
- package/dist/toast-DUYp3EtH.js.map +0 -1
- package/dist/tooltip-D-KwZQDV.js.map +0 -1
- /package/dist/{src/blocks → blocks-source}/delete-resource/delete-resource.tsx +0 -0
- /package/dist/{src/blocks → blocks-source}/page-header/page-header.tsx +0 -0
- /package/dist/{src/blocks → blocks-source}/resource-list/resource-list.test.tsx +0 -0
- /package/dist/{src/blocks → blocks-source}/resource-list/resource-list.tsx +0 -0
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,202 @@
|
|
|
1
1
|
# @cloudflare/kumo
|
|
2
2
|
|
|
3
|
+
## 1.11.0
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- 140f4ab: **Select: Improved label API to match Input component pattern**
|
|
8
|
+
- `hideLabel` is now deprecated. When `label` is provided, the label is **visible by default** (previously hidden by default).
|
|
9
|
+
- For visible labels: `<Select label="Country" />` (no changes needed if you were using `hideLabel={false}`)
|
|
10
|
+
- For hidden labels: Use `<Select aria-label="Select a country" />` instead of `<Select label="Country" hideLabel={true} />`
|
|
11
|
+
- **Bug fix**: Placeholder text now displays correctly when using object map `items` format (e.g., `items={{ a: "Option A" }}`). Previously, placeholders only worked with array format items.
|
|
12
|
+
|
|
13
|
+
**Backward compatibility**: `hideLabel={true}` still works but shows a deprecation warning in development. Existing code using `hideLabel={false}` requires no changes.
|
|
14
|
+
|
|
15
|
+
**Migration guide:**
|
|
16
|
+
|
|
17
|
+
```tsx
|
|
18
|
+
// Before (label hidden by default)
|
|
19
|
+
<Select label="Country" /> // label was sr-only
|
|
20
|
+
<Select label="Country" hideLabel={false} /> // label was visible
|
|
21
|
+
|
|
22
|
+
// After (label visible by default, matching Input)
|
|
23
|
+
<Select label="Country" /> // label is now visible
|
|
24
|
+
<Select aria-label="Country" /> // use aria-label for hidden labels
|
|
25
|
+
```
|
|
26
|
+
|
|
27
|
+
- f1c6392: Add optional `id` prop to `Flow.Node` for stable node identification and connector test IDs
|
|
28
|
+
- da03394: Avoid adding multiple toasts with the same ID. Use a subtle bump animation when a toast with an existing ID is added.
|
|
29
|
+
|
|
30
|
+
### Patch Changes
|
|
31
|
+
|
|
32
|
+
- a53ec1b: Fix theme token flicker by generating stable light/dark fallback variables with safer scope and layer precedence.
|
|
33
|
+
- cb121bc: fix: add defensive styles to prevent global CSS pollution
|
|
34
|
+
|
|
35
|
+
## Problem
|
|
36
|
+
|
|
37
|
+
When Kumo components are used in applications with aggressive global styles (e.g., Stratus's `cfBaseStyles` layer), certain elements get polluted:
|
|
38
|
+
- `label { margin-bottom: 1rem }` adds unwanted margins to all labels
|
|
39
|
+
- `button { background: gray }` affects unstyled button wrappers (e.g., tooltip triggers)
|
|
40
|
+
- `a { color: var(--text-color-primary) }` can override link colors if the consuming app defines `--text-color-primary` differently
|
|
41
|
+
|
|
42
|
+
## Solution
|
|
43
|
+
|
|
44
|
+
Add defensive Tailwind utility classes directly to components. These:
|
|
45
|
+
1. Reset commonly-polluted properties to safe defaults
|
|
46
|
+
2. Use `cn()` (tailwind-merge) so consumer styles via `className` still override them
|
|
47
|
+
3. Are no-ops in clean CSS environments (no visual change in Kumo docs)
|
|
48
|
+
|
|
49
|
+
## Changes
|
|
50
|
+
|
|
51
|
+
### Label margins (`m-0`)
|
|
52
|
+
- **Label**: `labelVariants()` now includes `m-0`
|
|
53
|
+
- **Field**: `FieldBase.Label` gets `m-0`
|
|
54
|
+
- **Checkbox**: label wrapper gets `m-0`
|
|
55
|
+
- **Radio**: label wrapper gets `m-0`
|
|
56
|
+
- **Switch**: label wrapper gets `m-0`
|
|
57
|
+
|
|
58
|
+
### Button trigger resets
|
|
59
|
+
- **Tooltip trigger** (when `!asChild`): `bg-transparent border-none shadow-none p-0 m-0 h-auto min-h-0 leading-[0] inline-flex items-center`
|
|
60
|
+
- **Collapsible trigger**: `bg-transparent border-none shadow-none p-0 m-0`
|
|
61
|
+
|
|
62
|
+
### Link color namespace fix
|
|
63
|
+
- **Link**: Changed from `text-primary` to `text-kumo-link` to avoid collision with consuming apps that define `--text-color-primary` differently
|
|
64
|
+
|
|
65
|
+
### Label tooltip composition
|
|
66
|
+
- **Label**: Tooltip trigger now uses `<Button variant="ghost" size="xs" shape="square">` with `asChild`, leveraging composition instead of relying on defensive resets
|
|
67
|
+
|
|
68
|
+
## Docs
|
|
69
|
+
|
|
70
|
+
Added "Custom Trigger" section to Tooltip docs demonstrating that `className` can fully override defensive styles when not using `asChild`.
|
|
71
|
+
|
|
72
|
+
- c6a3fb3: fix(dropdown): use Base UI CheckboxItemIndicator for proper accessibility
|
|
73
|
+
|
|
74
|
+
Replace custom Checkbox component with Base UI's CheckboxItemIndicator in DropdownMenuCheckboxItem. The previous implementation nested an interactive Checkbox inside the menuitemcheckbox role, causing duplicate accessibility labels. CheckboxItemIndicator is automatically aria-hidden and only renders when checked, following the standard Base UI pattern.
|
|
75
|
+
|
|
76
|
+
- 1bfffaa: Fix Field error message line height by adding `leading-snug` for consistent text spacing
|
|
77
|
+
- 5d16fdb: Improve info banner dark mode contrast for WCAG AA compliance. Changes `kumo-info` from `blue-700` (L=48.8%) to `blue-400` (L=70.7%), achieving 7.97:1 contrast ratio against the banner background.
|
|
78
|
+
- 8b964f5: Fix Combobox.TriggerValue icon misalignment caused by inherited line-height
|
|
79
|
+
|
|
80
|
+
The caret icon span was inheriting `line-height` from the parent button's `text-base` class, causing the span's height to exceed the icon's height (e.g., 21.5px vs 16px). The icon sits at the top of the span by default, so when the span is centered via `top-1/2 -translate-y-1/2`, the icon appears offset.
|
|
81
|
+
|
|
82
|
+
Added `flex items-center` to the icon wrapper to ensure proper vertical centering regardless of inherited styles. This matches the pattern used in TriggerInput.
|
|
83
|
+
|
|
84
|
+
- 529274d: fix(Pagination): use aria-label instead of label for PageSize select
|
|
85
|
+
|
|
86
|
+
The Select component now shows visible labels by default. Since Pagination.PageSize
|
|
87
|
+
already displays "Per page:" text next to the select, the internal Select should use
|
|
88
|
+
`aria-label` for accessibility without showing a duplicate visible label.
|
|
89
|
+
|
|
90
|
+
- 2f0e572: chore(toast): replace inline XIcon with Phosphor icon
|
|
91
|
+
- ee1099d: Prevent password managers autofilling Pagination input field
|
|
92
|
+
- 6dc952f: fix(tabs): improve focus ring and hover styling
|
|
93
|
+
- Fixed focus ring to use proper `ring-kumo-ring` token instead of browser default blue
|
|
94
|
+
- Segmented variant: inset focus ring to avoid overlap with adjacent tabs, hidden on active tab
|
|
95
|
+
- Underline variant: added padding for better focus ring spacing around text
|
|
96
|
+
- Added subtle hover states for both variants
|
|
97
|
+
|
|
98
|
+
- 2352344: fix(Tabs): pass TabItem render prop through to Base UI for custom tab rendering (e.g., link-based tabs)
|
|
99
|
+
|
|
100
|
+
## 1.10.0
|
|
101
|
+
|
|
102
|
+
### Minor Changes
|
|
103
|
+
|
|
104
|
+
- 5505610: Add Shiki-powered `CodeHighlighted` component for syntax highlighting
|
|
105
|
+
- **New entry point**: `@cloudflare/kumo/code` - keeps Shiki out of main bundle
|
|
106
|
+
- **ShikiProvider**: Lazy-loads Shiki on first render, shares instance across all children
|
|
107
|
+
- **CodeHighlighted**: Syntax highlighting with line numbers, line highlighting, copy button
|
|
108
|
+
- **Server utilities**: `@cloudflare/kumo/code/server` for SSR/static highlighting
|
|
109
|
+
- **Themes**: Ships with `github-light` and `vesper` defaults, supports any Shiki theme
|
|
110
|
+
- **i18n**: Customizable labels via provider or per-component
|
|
111
|
+
- **CSS customization**: `--kumo-code-highlight-bg` variable for highlight color
|
|
112
|
+
- **Deprecates**: Legacy `Code` and `CodeBlock` components (will be removed in v2)
|
|
113
|
+
|
|
114
|
+
- 003128b: feat(combobox): add size prop with xs, sm, base, lg variants matching Input component
|
|
115
|
+
- 1cad157: feat(flow): make nested lists work inside parallel nodes
|
|
116
|
+
- 9d89256: Add `role` prop to Dialog component supporting both `"dialog"` (default) and `"alertdialog"` ARIA roles
|
|
117
|
+
|
|
118
|
+
**New Feature:**
|
|
119
|
+
- `Dialog.Root` now accepts a `role` prop to specify the dialog's ARIA semantics
|
|
120
|
+
- When `role="alertdialog"` is used, the dialog uses Base UI's AlertDialog primitives for proper accessibility
|
|
121
|
+
- This provides correct screen reader announcements for confirmation and destructive action dialogs
|
|
122
|
+
|
|
123
|
+
**When to use `role="alertdialog"`:**
|
|
124
|
+
- Destructive actions (delete, discard, remove)
|
|
125
|
+
- Confirmation flows requiring explicit user acknowledgment
|
|
126
|
+
- Actions that cannot be undone
|
|
127
|
+
- Critical warnings or errors
|
|
128
|
+
|
|
129
|
+
**Example:**
|
|
130
|
+
|
|
131
|
+
```tsx
|
|
132
|
+
// Standard dialog (default)
|
|
133
|
+
<Dialog.Root>
|
|
134
|
+
<Dialog.Trigger render={(p) => <Button {...p}>Edit</Button>} />
|
|
135
|
+
<Dialog>...</Dialog>
|
|
136
|
+
</Dialog.Root>
|
|
137
|
+
|
|
138
|
+
// Alert dialog for destructive actions
|
|
139
|
+
<Dialog.Root role="alertdialog">
|
|
140
|
+
<Dialog.Trigger render={(p) => <Button variant="destructive" {...p}>Delete</Button>} />
|
|
141
|
+
<Dialog>...</Dialog>
|
|
142
|
+
</Dialog.Root>
|
|
143
|
+
```
|
|
144
|
+
|
|
145
|
+
- e6218d2: Add TimeseriesChart component with ECharts integration, supporting legends, gradient fills, custom axis formatting, loading skeleton state, and configurable color palettes.
|
|
146
|
+
- a7eb061: feat(select): auto-render options from items prop when children omitted
|
|
147
|
+
|
|
148
|
+
The Select component now automatically renders Select.Option elements from the items prop when children are not explicitly provided.
|
|
149
|
+
|
|
150
|
+
### Patch Changes
|
|
151
|
+
|
|
152
|
+
- 5943e77: Add missing `success` background and tint semantic color tokens (`bg-kumo-success`, `bg-kumo-success-tint`) for parity with `info`, `warning`, and `danger`. Fix `text-kumo-success` dark mode contrast by using `green-400` instead of `green-500`. Add new `success` Badge variant for positive state indicators.
|
|
153
|
+
- 35d5c42: fix(breadcrumbs): improve mobile breadcrumb readability
|
|
154
|
+
|
|
155
|
+
breadcrumbs now render a compact mobile trail for deeper hierarchies by collapsing early levels to `...` and keeping the trailing path visible. labels in breadcrumb links and the current page now truncate correctly to prevent stacking or overlap on narrow viewports.
|
|
156
|
+
|
|
157
|
+
- 02d0d65: fix(badge): prevent crash when unknown variant is passed
|
|
158
|
+
|
|
159
|
+
Add defensive fallback to primary variant when an unrecognized variant string is provided to Badge component. This prevents "Cannot read properties of undefined (reading 'classes')" errors when consumers use a variant that doesn't exist in their installed version.
|
|
160
|
+
|
|
161
|
+
- 3170d65: fix(code): Fix CodeHighlighted dark mode, layout, and SSR issues
|
|
162
|
+
- Fix dark mode: Make `<pre>` background transparent so container's `bg-kumo-base` handles theming and border-radius is respected
|
|
163
|
+
- Fix layout: Wrap Shiki output in overflow container to prevent line highlight negative margins from being clipped
|
|
164
|
+
- Fix width: Add `w-full` to container for proper full-width display
|
|
165
|
+
- Fix SSR: Remove `"use client"` directive from `@cloudflare/kumo/code/server` entry point so server utilities work in RSC/SSR contexts
|
|
166
|
+
|
|
167
|
+
- 31ce577: fix(CommandPalette): add explicit text-base class to Item component for consistent 14px font size
|
|
168
|
+
- ee5a632: Fix Select to render description and error when hideLabel is true
|
|
169
|
+
|
|
170
|
+
Previously, the `description` and `error` props were silently ignored when
|
|
171
|
+
`hideLabel` was `true` (the default). Now, helper text and error messages
|
|
172
|
+
display correctly even when the label is visually hidden.
|
|
173
|
+
|
|
174
|
+
- 409d32b: Fix TypeScript errors when consumers type-check their projects with kumo installed.
|
|
175
|
+
|
|
176
|
+
Previously, TypeScript would attempt to type-check raw `.tsx` and `.ts` source files
|
|
177
|
+
shipped in the package (block sources in `dist/src/blocks/`, `ai/schemas.ts`, and
|
|
178
|
+
`scripts/theme-generator/*.ts`), causing build failures in downstream projects.
|
|
179
|
+
|
|
180
|
+
This change:
|
|
181
|
+
- Moves block source files to a separate `dist/blocks-source/` directory
|
|
182
|
+
- Compiles `ai/schemas.ts` and `scripts/theme-generator/*.ts` to JavaScript
|
|
183
|
+
- Updates package exports to point to compiled `.js` files with proper `.d.ts` types
|
|
184
|
+
|
|
185
|
+
- 7816318: fix(inputs): expand small control hit areas
|
|
186
|
+
- e7f0c80: Fix pagination component to properly wrap numbers in `tabular-nums` class for consistent number alignment. Both the page range and total count now use tabular numerals.
|
|
187
|
+
- c0341b4: Simplify Select placeholder implementation by using Base UI's native placeholder prop on SelectBase.Value instead of manually injecting placeholder items into the items array. This provides a cleaner, more intuitive API that aligns with standard HTML select behavior while maintaining backward compatibility with the null-value placeholder pattern.
|
|
188
|
+
- 35d5c42: fix(breadcrumbs): enhance mobile breadcrumb display for better readability
|
|
189
|
+
- abb7f8c: Add `variant="compact"` prop to Table.Header for a more condensed header style
|
|
190
|
+
- 8972cc4: Fix Combobox group label styling to use semantic token and correct padding
|
|
191
|
+
- bb49d4b: Standardize z-index usage with isolation containment
|
|
192
|
+
- Add `isolation: isolate` to components with internal stacking (Tabs, MenuBar, InputGroup, Flow/Parallel)
|
|
193
|
+
- Simplify internal z-index values to `z-0`/`z-1`/`z-2` instead of arbitrary values like `z-10`/`z-20`
|
|
194
|
+
- Remove superfluous `z-10` from CommandPalette List
|
|
195
|
+
- Update Toast viewport to `z-1` (matching Base UI's documented pattern)
|
|
196
|
+
- Update ClipboardText viewport to use `isolate` instead of `z-50`
|
|
197
|
+
|
|
198
|
+
This prevents z-index values from leaking outside component boundaries.
|
|
199
|
+
|
|
3
200
|
## 1.9.0
|
|
4
201
|
|
|
5
202
|
### Minor Changes
|
|
@@ -16,6 +16,7 @@
|
|
|
16
16
|
"primary",
|
|
17
17
|
"secondary",
|
|
18
18
|
"destructive",
|
|
19
|
+
"success",
|
|
19
20
|
"outline",
|
|
20
21
|
"beta"
|
|
21
22
|
],
|
|
@@ -23,6 +24,7 @@
|
|
|
23
24
|
"primary": "Default high-emphasis badge for important labels",
|
|
24
25
|
"secondary": "Subtle badge for secondary information",
|
|
25
26
|
"destructive": "Error or danger state indicator",
|
|
27
|
+
"success": "Success or positive state indicator",
|
|
26
28
|
"outline": "Bordered badge with transparent background",
|
|
27
29
|
"beta": "Indicates beta or experimental features"
|
|
28
30
|
},
|
|
@@ -30,6 +32,7 @@
|
|
|
30
32
|
"primary": "bg-kumo-contrast text-kumo-inverse",
|
|
31
33
|
"secondary": "bg-kumo-fill text-kumo-default",
|
|
32
34
|
"destructive": "bg-kumo-danger text-white",
|
|
35
|
+
"success": "bg-kumo-success text-white",
|
|
33
36
|
"outline": "border border-kumo-fill bg-transparent text-kumo-default",
|
|
34
37
|
"beta": "border border-dashed border-kumo-brand bg-transparent text-kumo-link"
|
|
35
38
|
},
|
|
@@ -47,10 +50,11 @@
|
|
|
47
50
|
}
|
|
48
51
|
},
|
|
49
52
|
"examples": [
|
|
50
|
-
"<div className=\"flex flex-wrap items-center gap-2\">\n <Badge variant=\"primary\">Primary</Badge>\n <Badge variant=\"secondary\">Secondary</Badge>\n <Badge variant=\"destructive\">Destructive</Badge>\n <Badge variant=\"outline\">Outline</Badge>\n <Badge variant=\"beta\">Beta</Badge>\n </div>",
|
|
53
|
+
"<div className=\"flex flex-wrap items-center gap-2\">\n <Badge variant=\"primary\">Primary</Badge>\n <Badge variant=\"secondary\">Secondary</Badge>\n <Badge variant=\"destructive\">Destructive</Badge>\n <Badge variant=\"success\">Success</Badge>\n <Badge variant=\"outline\">Outline</Badge>\n <Badge variant=\"beta\">Beta</Badge>\n </div>",
|
|
51
54
|
"<Badge variant=\"primary\">Primary</Badge>",
|
|
52
55
|
"<Badge variant=\"secondary\">Secondary</Badge>",
|
|
53
56
|
"<Badge variant=\"destructive\">Destructive</Badge>",
|
|
57
|
+
"<Badge variant=\"success\">Success</Badge>",
|
|
54
58
|
"<Badge variant=\"outline\">Outline</Badge>",
|
|
55
59
|
"<Badge variant=\"beta\">Beta</Badge>",
|
|
56
60
|
"<p className=\"flex items-center gap-2\">\n Workers\n <Badge variant=\"beta\">Beta</Badge>\n </p>"
|
|
@@ -59,6 +63,7 @@
|
|
|
59
63
|
"bg-kumo-contrast",
|
|
60
64
|
"bg-kumo-danger",
|
|
61
65
|
"bg-kumo-fill",
|
|
66
|
+
"bg-kumo-success",
|
|
62
67
|
"border-kumo-brand",
|
|
63
68
|
"border-kumo-fill",
|
|
64
69
|
"text-kumo-default",
|
|
@@ -1934,13 +1939,7 @@
|
|
|
1934
1939
|
"description": "Additional CSS classes merged via `cn()`."
|
|
1935
1940
|
}
|
|
1936
1941
|
},
|
|
1937
|
-
"examples": [
|
|
1938
|
-
"<CodeBlock\n lang=\"tsx\"\n code={`const greeting = \"Hello, World!\";\nconsole.log(greeting);`}\n />",
|
|
1939
|
-
"<CodeBlock\n lang=\"tsx\"\n code={`interface User {\n id: string;\n name: string;\n email: string;\n}\n\nconst user: User = {\n id: \"1\",\n name: \"John Doe\",\n email: \"john@example.com\"\n};`}\n />",
|
|
1940
|
-
"<CodeBlock\n lang=\"bash\"\n code={`npm install @cloudflare/kumo\npnpm add @cloudflare/kumo`}\n />",
|
|
1941
|
-
"<CodeBlock\n lang=\"jsonc\"\n code={`{\n \"name\": \"kumo\",\n \"version\": \"1.0.0\",\n \"dependencies\": {\n \"react\": \"^19.0.0\"\n }\n}`}\n />",
|
|
1942
|
-
"<Code\n lang=\"bash\"\n code=\"export API_KEY={{apiKey}}\"\n values={{\n apiKey: { value: \"sk_live_123\", highlight: true },\n }}\n />"
|
|
1943
|
-
],
|
|
1942
|
+
"examples": [],
|
|
1944
1943
|
"colors": [
|
|
1945
1944
|
"bg-kumo-base",
|
|
1946
1945
|
"border-kumo-fill",
|
|
@@ -2031,6 +2030,18 @@
|
|
|
2031
2030
|
"importPath": "@cloudflare/kumo",
|
|
2032
2031
|
"category": "Input",
|
|
2033
2032
|
"props": {
|
|
2033
|
+
"size": {
|
|
2034
|
+
"type": "enum",
|
|
2035
|
+
"optional": true,
|
|
2036
|
+
"description": "Size of the combobox trigger. Matches Input component sizes.\n- `\"xs\"` — Extra small for compact UIs (h-5 / 20px)\n- `\"sm\"` — Small for secondary fields (h-6.5 / 26px)\n- `\"base\"` — Default size (h-9 / 36px)\n- `\"lg\"` — Large for prominent fields (h-10 / 40px)",
|
|
2037
|
+
"values": [
|
|
2038
|
+
"xs",
|
|
2039
|
+
"sm",
|
|
2040
|
+
"base",
|
|
2041
|
+
"lg"
|
|
2042
|
+
],
|
|
2043
|
+
"default": "base"
|
|
2044
|
+
},
|
|
2034
2045
|
"inputSide": {
|
|
2035
2046
|
"type": "enum",
|
|
2036
2047
|
"optional": true,
|
|
@@ -2109,15 +2120,19 @@
|
|
|
2109
2120
|
"<Combobox\n value={value}\n onValueChange={(v) => setValue(v as ServerLocation | null)}\n items={servers}\n >\n <Combobox.TriggerInput\n className=\"w-[200px]\"\n placeholder=\"Select server\"\n />\n <Combobox.Content>\n <Combobox.Empty />\n <Combobox.List>\n {(group: ServerLocationGroup) => (\n <Combobox.Group key={group.value} items={group.items}>\n <Combobox.GroupLabel>{group.value}</Combobox.GroupLabel>\n <Combobox.Collection>\n {(item: ServerLocation) => (\n <Combobox.Item key={item.value} value={item}>\n {item.label}\n </Combobox.Item>\n )}\n </Combobox.Collection>\n </Combobox.Group>\n )}\n </Combobox.List>\n </Combobox.Content>\n </Combobox>",
|
|
2110
2121
|
"<div className=\"flex gap-2\">\n <Combobox\n value={value}\n onValueChange={setValue}\n items={bots}\n isItemEqualToValue={(bot: BotItem, selected: BotItem) =>\n bot.value === selected.value\n }\n multiple\n >\n <Combobox.TriggerMultipleWithInput\n className=\"w-[400px]\"\n placeholder=\"Select bots\"\n renderItem={(selected: BotItem) => (\n <Combobox.Chip key={selected.value}>{selected.label}</Combobox.Chip>\n )}\n inputSide=\"right\"\n />\n <Combobox.Content className=\"max-h-[200px] min-w-auto overflow-y-auto\">\n <Combobox.Empty />\n <Combobox.List>\n {(item: BotItem) => (\n <Combobox.Item key={item.value} value={item}>\n <div className=\"flex gap-2\">\n <Text>{item.label}</Text>\n <Text variant=\"secondary\">{item.author}</Text>\n </div>\n </Combobox.Item>\n )}\n </Combobox.List>\n </Combobox.Content>\n </Combobox>\n <Button variant=\"primary\">Submit</Button>\n </div>",
|
|
2111
2122
|
"<div className=\"w-80\">\n <Combobox\n items={databases}\n value={value}\n onValueChange={setValue}\n label=\"Database\"\n description=\"Select your preferred database\"\n >\n <Combobox.TriggerInput placeholder=\"Select database\" />\n <Combobox.Content>\n <Combobox.Empty />\n <Combobox.List>\n {(item: DatabaseItem) => (\n <Combobox.Item key={item.value} value={item}>\n {item.label}\n </Combobox.Item>\n )}\n </Combobox.List>\n </Combobox.Content>\n </Combobox>\n </div>",
|
|
2112
|
-
"<div className=\"w-80\">\n <Combobox\n items={databases}\n value={value}\n onValueChange={setValue}\n label=\"Database\"\n error={{ message: \"Please select a database\", match: true }}\n >\n <Combobox.TriggerInput placeholder=\"Select database\" />\n <Combobox.Content>\n <Combobox.Empty />\n <Combobox.List>\n {(item: DatabaseItem) => (\n <Combobox.Item key={item.value} value={item}>\n {item.label}\n </Combobox.Item>\n )}\n </Combobox.List>\n </Combobox.Content>\n </Combobox>\n </div>"
|
|
2123
|
+
"<div className=\"w-80\">\n <Combobox\n items={databases}\n value={value}\n onValueChange={setValue}\n label=\"Database\"\n error={{ message: \"Please select a database\", match: true }}\n >\n <Combobox.TriggerInput placeholder=\"Select database\" />\n <Combobox.Content>\n <Combobox.Empty />\n <Combobox.List>\n {(item: DatabaseItem) => (\n <Combobox.Item key={item.value} value={item}>\n {item.label}\n </Combobox.Item>\n )}\n </Combobox.List>\n </Combobox.Content>\n </Combobox>\n </div>",
|
|
2124
|
+
"<div className=\"flex flex-wrap items-center gap-4\">\n <Combobox\n size=\"sm\"\n value={smValue}\n onValueChange={(v) => setSmValue(v as string | null)}\n items={fruits.slice(0, 8)}\n >\n <Combobox.TriggerInput placeholder=\"Small (sm)\" />\n <Combobox.Content>\n <Combobox.Empty />\n <Combobox.List>\n {(item: string) => (\n <Combobox.Item key={item} value={item}>\n {item}\n </Combobox.Item>\n )}\n </Combobox.List>\n </Combobox.Content>\n </Combobox>\n <Combobox\n size=\"base\"\n value={baseValue}\n onValueChange={(v) => setBaseValue(v as string | null)}\n items={fruits.slice(0, 8)}\n >\n <Combobox.TriggerInput placeholder=\"Base (default)\" />\n <Combobox.Content>\n <Combobox.Empty />\n <Combobox.List>\n {(item: string) => (\n <Combobox.Item key={item} value={item}>\n {item}\n </Combobox.Item>\n )}\n </Combobox.List>\n </Combobox.Content>\n </Combobox>\n </div>",
|
|
2125
|
+
"<div className=\"flex flex-wrap items-center gap-4\">\n <Combobox\n size=\"sm\"\n value={smValue}\n onValueChange={(v) => setSmValue(v as Language)}\n items={languages}\n >\n <Combobox.TriggerValue className=\"w-[160px]\" />\n <Combobox.Content>\n <Combobox.Input placeholder=\"Search\" />\n <Combobox.Empty />\n <Combobox.List>\n {(item: Language) => (\n <Combobox.Item key={item.value} value={item}>\n {item.emoji} {item.label}\n </Combobox.Item>\n )}\n </Combobox.List>\n </Combobox.Content>\n </Combobox>\n <Combobox\n size=\"base\"\n value={baseValue}\n onValueChange={(v) => setBaseValue(v as Language)}\n items={languages}\n >\n <Combobox.TriggerValue className=\"w-[180px]\" />\n <Combobox.Content>\n <Combobox.Input placeholder=\"Search\" />\n <Combobox.Empty />\n <Combobox.List>\n {(item: Language) => (\n <Combobox.Item key={item.value} value={item}>\n {item.emoji} {item.label}\n </Combobox.Item>\n )}\n </Combobox.List>\n </Combobox.Content>\n </Combobox>\n </div>"
|
|
2113
2126
|
],
|
|
2114
2127
|
"colors": [
|
|
2115
2128
|
"bg-kumo-control",
|
|
2116
2129
|
"bg-kumo-fill-hover",
|
|
2117
2130
|
"bg-kumo-overlay",
|
|
2131
|
+
"border-kumo-line",
|
|
2118
2132
|
"fill-kumo-ring",
|
|
2119
2133
|
"ring-kumo-line",
|
|
2120
2134
|
"text-kumo-default",
|
|
2135
|
+
"text-kumo-strong",
|
|
2121
2136
|
"text-kumo-subtle"
|
|
2122
2137
|
],
|
|
2123
2138
|
"subComponents": {
|
|
@@ -2234,9 +2249,9 @@
|
|
|
2234
2249
|
}
|
|
2235
2250
|
},
|
|
2236
2251
|
"examples": [
|
|
2237
|
-
"<div className=\"flex flex-col items-start gap-4\">\n <Button onClick={() => setOpen(true)}>Open Command Palette</Button>\n {selectedItem && (\n <p className=\"text-sm text-kumo-subtle\">\n Last selected:{\" \"}\n <span className=\"text-kumo-default\">{selectedItem}</span>\n </p>\n )}\n\n <CommandPalette.Root\n open={open}\n onOpenChange={setOpen}\n items={
|
|
2252
|
+
"<div className=\"flex flex-col items-start gap-4\">\n <Button onClick={() => setOpen(true)}>Open Command Palette</Button>\n {selectedItem && (\n <p className=\"text-sm text-kumo-subtle\">\n Last selected:{\" \"}\n <span className=\"text-kumo-default\">{selectedItem}</span>\n </p>\n )}\n\n <CommandPalette.Root\n open={open}\n onOpenChange={setOpen}\n items={filteredGroups}\n value={search}\n onValueChange={setSearch}\n itemToStringValue={(group) => group.label}\n onSelect={(item, { newTab }) => {\n console.log(\"Selected:\", item.title, newTab ? \"(new tab)\" : \"\");\n handleSelect(item);\n }}\n getSelectableItems={getSelectableItems}\n >\n <CommandPalette.Input placeholder=\"Type a command or search...\" />\n <CommandPalette.List>\n <CommandPalette.Results>\n {(group: CommandGroup) => (\n <CommandPalette.Group key={group.id} items={group.items}>\n <CommandPalette.GroupLabel>\n {group.label}\n </CommandPalette.GroupLabel>\n <CommandPalette.Items>\n {(item: CommandItem) => (\n <CommandPalette.Item\n key={item.id}\n value={item}\n onClick={() => handleSelect(item)}\n >\n <span className=\"flex items-center gap-3\">\n {item.icon && (\n <span className=\"text-kumo-subtle\">{item.icon}</span>\n )}\n <span>{item.title}</span>\n </span>\n </CommandPalette.Item>\n )}\n </CommandPalette.Items>\n </CommandPalette.Group>\n )}\n </CommandPalette.Results>\n <CommandPalette.Empty>No commands found</CommandPalette.Empty>\n </CommandPalette.List>\n <CommandPalette.Footer>\n <span className=\"flex items-center gap-2\">\n <kbd className=\"rounded border border-kumo-line bg-kumo-base px-1.5 py-0.5 text-[10px]\">\n ↑↓\n </kbd>\n <span>Navigate</span>\n </span>\n <span className=\"flex items-center gap-2\">\n <kbd className=\"rounded border border-kumo-line bg-kumo-base px-1.5 py-0.5 text-[10px]\">\n ↵\n </kbd>\n <span>Select</span>\n </span>\n </CommandPalette.Footer>\n </CommandPalette.Root>\n </div>",
|
|
2238
2253
|
"<div>\n <Button onClick={() => setOpen(true)}>Open Simple Palette</Button>\n\n <CommandPalette.Root\n open={open}\n onOpenChange={setOpen}\n items={simpleItems}\n value={search}\n onValueChange={setSearch}\n itemToStringValue={(item) => item.title}\n onSelect={(item) => {\n console.log(\"Selected:\", item.title);\n setOpen(false);\n }}\n getSelectableItems={(items) => items}\n >\n <CommandPalette.Input placeholder=\"Search actions...\" />\n <CommandPalette.List>\n <CommandPalette.Results>\n {(item: SimpleItem) => (\n <CommandPalette.Item\n key={item.id}\n value={item}\n onClick={() => {\n console.log(\"Clicked:\", item.title);\n setOpen(false);\n }}\n >\n {item.title}\n </CommandPalette.Item>\n )}\n </CommandPalette.Results>\n <CommandPalette.Empty>No actions found</CommandPalette.Empty>\n </CommandPalette.List>\n </CommandPalette.Root>\n </div>",
|
|
2239
|
-
"<div>\n <Button onClick={handleOpen}>Open with Loading</Button>\n\n <CommandPalette.Root\n open={open}\n onOpenChange={setOpen}\n items={loading ? [] :
|
|
2254
|
+
"<div>\n <Button onClick={handleOpen}>Open with Loading</Button>\n\n <CommandPalette.Root\n open={open}\n onOpenChange={setOpen}\n items={loading ? [] : filteredGroups}\n value={search}\n onValueChange={setSearch}\n itemToStringValue={(group) => group.label}\n getSelectableItems={getSelectableItems}\n >\n <CommandPalette.Input placeholder=\"Search...\" />\n <CommandPalette.List>\n {loading ? (\n <CommandPalette.Loading />\n ) : (\n <>\n <CommandPalette.Results>\n {(group: CommandGroup) => (\n <CommandPalette.Group key={group.id} items={group.items}>\n <CommandPalette.GroupLabel>\n {group.label}\n </CommandPalette.GroupLabel>\n <CommandPalette.Items>\n {(item: CommandItem) => (\n <CommandPalette.Item\n key={item.id}\n value={item}\n onClick={() => setOpen(false)}\n >\n <span className=\"flex items-center gap-3\">\n {item.icon && (\n <span className=\"text-kumo-subtle\">\n {item.icon}\n </span>\n )}\n <span>{item.title}</span>\n </span>\n </CommandPalette.Item>\n )}\n </CommandPalette.Items>\n </CommandPalette.Group>\n )}\n </CommandPalette.Results>\n <CommandPalette.Empty>No results found</CommandPalette.Empty>\n </>\n )}\n </CommandPalette.List>\n </CommandPalette.Root>\n </div>",
|
|
2240
2255
|
"<div>\n <Button onClick={() => setOpen(true)}>Open with ResultItem</Button>\n\n <CommandPalette.Root\n open={open}\n onOpenChange={setOpen}\n items={searchResults}\n value={search}\n onValueChange={setSearch}\n itemToStringValue={(item) => item.title}\n getSelectableItems={(items) => items}\n >\n <CommandPalette.Input placeholder=\"Search documentation...\" />\n <CommandPalette.List>\n <CommandPalette.Results>\n {(item: SearchResult) => (\n <CommandPalette.ResultItem\n key={item.id}\n value={item}\n title={item.title}\n breadcrumbs={item.breadcrumbs}\n icon={item.icon}\n onClick={() => {\n console.log(\"Navigate to:\", item.title);\n setOpen(false);\n }}\n />\n )}\n </CommandPalette.Results>\n <CommandPalette.Empty>No pages found</CommandPalette.Empty>\n </CommandPalette.List>\n <CommandPalette.Footer>\n <span className=\"flex items-center gap-2\">\n <kbd className=\"rounded border border-kumo-line bg-kumo-base px-1.5 py-0.5 text-[10px]\">\n ↑↓\n </kbd>\n <span>Navigate</span>\n </span>\n <span className=\"flex items-center gap-2\">\n <kbd className=\"rounded border border-kumo-line bg-kumo-base px-1.5 py-0.5 text-[10px]\">\n ⌘↵\n </kbd>\n <span>Open in new tab</span>\n </span>\n </CommandPalette.Footer>\n </CommandPalette.Root>\n </div>"
|
|
2241
2256
|
],
|
|
2242
2257
|
"colors": [
|
|
@@ -2447,6 +2462,7 @@
|
|
|
2447
2462
|
"<Dialog.Root>\n <Dialog.Trigger render={(p) => <Button {...p}>Click me</Button>} />\n <Dialog className=\"p-8\">\n <div className=\"mb-4 flex items-start justify-between gap-4\">\n <Dialog.Title className=\"text-2xl font-semibold\">\n Modal Title\n </Dialog.Title>\n <Dialog.Close\n aria-label=\"Close\"\n render={(props) => (\n <Button\n {...props}\n variant=\"secondary\"\n shape=\"square\"\n icon={<X />}\n aria-label=\"Close\"\n />\n )}\n />\n </div>\n <Dialog.Description className=\"text-kumo-subtle\">\n Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do\n eiusmod tempor incididunt ut labore et dolore magna aliqua.\n </Dialog.Description>\n </Dialog>\n </Dialog.Root>",
|
|
2448
2463
|
"<Dialog.Root>\n <Dialog.Trigger render={(p) => <Button {...p}>Delete</Button>} />\n <Dialog className=\"p-8\">\n <div className=\"mb-4 flex items-start justify-between gap-4\">\n <Dialog.Title className=\"text-2xl font-semibold\">\n Modal Title\n </Dialog.Title>\n <Dialog.Close\n aria-label=\"Close\"\n render={(props) => (\n <Button\n {...props}\n variant=\"secondary\"\n shape=\"square\"\n icon={<X />}\n aria-label=\"Close\"\n />\n )}\n />\n </div>\n <Dialog.Description className=\"text-kumo-subtle\">\n Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do\n eiusmod tempor incididunt ut labore et dolore magna aliqua.\n </Dialog.Description>\n <div className=\"mt-8 flex justify-end gap-2\">\n <Dialog.Close\n render={(props) => (\n <Button variant=\"secondary\" {...props}>\n Cancel\n </Button>\n )}\n />\n <Dialog.Close\n render={(props) => (\n <Button variant=\"destructive\" {...props}>\n Delete\n </Button>\n )}\n />\n </div>\n </Dialog>\n </Dialog.Root>",
|
|
2449
2464
|
"<Dialog.Root disablePointerDismissal>\n <Dialog.Trigger\n render={(p) => (\n <Button {...p} variant=\"destructive\">\n Delete Project\n </Button>\n )}\n />\n <Dialog className=\"p-8\">\n <div className=\"mb-4 flex items-center gap-3\">\n <div className=\"flex h-10 w-10 items-center justify-center rounded-full bg-kumo-danger/20\">\n <Warning size={20} className=\"text-kumo-danger\" />\n </div>\n <Dialog.Title className=\"text-xl font-semibold\">\n Delete Project?\n </Dialog.Title>\n </div>\n <Dialog.Description className=\"text-kumo-subtle\">\n This action cannot be undone. This will permanently delete the project\n and all associated data.\n </Dialog.Description>\n <div className=\"mt-8 flex justify-end gap-2\">\n <Dialog.Close\n render={(props) => (\n <Button variant=\"secondary\" {...props}>\n Cancel\n </Button>\n )}\n />\n <Dialog.Close\n render={(props) => (\n <Button variant=\"destructive\" {...props}>\n Delete\n </Button>\n )}\n />\n </div>\n </Dialog>\n </Dialog.Root>",
|
|
2465
|
+
"<Dialog.Root role=\"alertdialog\">\n <Dialog.Trigger\n render={(p) => (\n <Button {...p} variant=\"destructive\">\n Delete Account\n </Button>\n )}\n />\n <Dialog className=\"p-8\">\n <div className=\"mb-4 flex items-center gap-3\">\n <div className=\"flex h-10 w-10 items-center justify-center rounded-full bg-kumo-danger/20\">\n <Warning size={20} className=\"text-kumo-danger\" weight=\"fill\" />\n </div>\n <Dialog.Title className=\"text-xl font-semibold\">\n Delete Account?\n </Dialog.Title>\n </div>\n <Dialog.Description className=\"text-kumo-subtle\">\n This action cannot be undone. All your data will be permanently\n removed from our servers. Are you sure you want to proceed?\n </Dialog.Description>\n <div className=\"mt-8 flex justify-end gap-2\">\n <Dialog.Close\n render={(props) => (\n <Button variant=\"secondary\" {...props}>\n Cancel\n </Button>\n )}\n />\n <Dialog.Close\n render={(props) => (\n <Button variant=\"destructive\" {...props}>\n Delete Account\n </Button>\n )}\n />\n </div>\n </Dialog>\n </Dialog.Root>",
|
|
2450
2466
|
"<Dialog.Root>\n <Dialog.Trigger render={(p) => <Button {...p}>Open Form</Button>} />\n <Dialog className=\"p-8\">\n <div className=\"mb-4 flex items-start justify-between gap-4\">\n <Dialog.Title className=\"text-2xl font-semibold\">\n Create Resource\n </Dialog.Title>\n <Dialog.Close\n aria-label=\"Close\"\n render={(props) => (\n <Button\n {...props}\n variant=\"secondary\"\n shape=\"square\"\n icon={<X />}\n aria-label=\"Close\"\n />\n )}\n />\n </div>\n <Dialog.Description className=\"mb-4 text-kumo-subtle\">\n Select a region for your new resource.\n </Dialog.Description>\n <Select\n className=\"w-full\"\n renderValue={(v) =>\n regions.find((r) => r.value === v)?.label ?? \"Select region...\"\n }\n >\n {regions.map((region) => (\n <Select.Option key={region.value} value={region.value}>\n {region.label}\n </Select.Option>\n ))}\n </Select>\n <div className=\"mt-8 flex justify-end gap-2\">\n <Dialog.Close\n render={(props) => (\n <Button variant=\"secondary\" {...props}>\n Cancel\n </Button>\n )}\n />\n <Button variant=\"primary\">Create</Button>\n </div>\n </Dialog>\n </Dialog.Root>",
|
|
2451
2467
|
"<Dialog.Root>\n <Dialog.Trigger render={(p) => <Button {...p}>Open Form</Button>} />\n <Dialog className=\"p-8\">\n <div className=\"mb-4 flex items-start justify-between gap-4\">\n <Dialog.Title className=\"text-2xl font-semibold\">\n Create Resource\n </Dialog.Title>\n <Dialog.Close\n aria-label=\"Close\"\n render={(props) => (\n <Button\n {...props}\n variant=\"secondary\"\n shape=\"square\"\n icon={<X />}\n aria-label=\"Close\"\n />\n )}\n />\n </div>\n <Dialog.Description className=\"mb-4 text-kumo-subtle\">\n Search and select a region for your new resource.\n </Dialog.Description>\n <Combobox value={value} onValueChange={setValue} items={regions}>\n <Combobox.TriggerInput\n className=\"w-full\"\n placeholder=\"Search regions...\"\n />\n <Combobox.Content>\n <Combobox.Empty>No regions found</Combobox.Empty>\n <Combobox.List>\n {(item: { value: string; label: string }) => (\n <Combobox.Item key={item.value} value={item}>\n {item.label}\n </Combobox.Item>\n )}\n </Combobox.List>\n </Combobox.Content>\n </Combobox>\n <div className=\"mt-8 flex justify-end gap-2\">\n <Dialog.Close\n render={(props) => (\n <Button variant=\"secondary\" {...props}>\n Cancel\n </Button>\n )}\n />\n <Button variant=\"primary\">Create</Button>\n </div>\n </Dialog>\n </Dialog.Root>",
|
|
2452
2468
|
"<Dialog.Root>\n <Dialog.Trigger render={(p) => <Button {...p}>Open Form</Button>} />\n <Dialog className=\"p-8\">\n <div className=\"mb-4 flex items-start justify-between gap-4\">\n <Dialog.Title className=\"text-2xl font-semibold\">\n Resource Actions\n </Dialog.Title>\n <Dialog.Close\n aria-label=\"Close\"\n render={(props) => (\n <Button\n {...props}\n variant=\"secondary\"\n shape=\"square\"\n icon={<X />}\n aria-label=\"Close\"\n />\n )}\n />\n </div>\n <Dialog.Description className=\"mb-4 text-kumo-subtle\">\n Choose an action for the selected resource.\n </Dialog.Description>\n <DropdownMenu>\n <DropdownMenu.Trigger render={<Button>Actions</Button>} />\n <DropdownMenu.Content>\n <DropdownMenu.Item>Edit</DropdownMenu.Item>\n <DropdownMenu.Item>Duplicate</DropdownMenu.Item>\n <DropdownMenu.Separator />\n <DropdownMenu.Item variant=\"danger\">Delete</DropdownMenu.Item>\n </DropdownMenu.Content>\n </DropdownMenu>\n <div className=\"mt-8 flex justify-end\">\n <Dialog.Close\n render={(props) => (\n <Button variant=\"secondary\" {...props}>\n Close\n </Button>\n )}\n />\n </div>\n </Dialog>\n </Dialog.Root>"
|
|
@@ -3112,7 +3128,7 @@
|
|
|
3112
3128
|
"<Input label=\"Phone Number\" required={false} placeholder=\"+1 555-0000\" />",
|
|
3113
3129
|
"<Input\n label=\"API Key\"\n labelTooltip=\"Find this in your dashboard settings under API > Keys\"\n placeholder=\"sk_live_...\"\n />",
|
|
3114
3130
|
"<Checkbox\n label={\n <span>\n I agree to the <strong>Terms of Service</strong>\n </span>\n }\n />",
|
|
3115
|
-
"<div className=\"flex max-w-md flex-col gap-4\">\n <Input label=\"Full Name\" placeholder=\"John Doe\" />\n <Input\n label=\"Email\"\n labelTooltip=\"We'll send your receipt here\"\n placeholder=\"john@example.com\"\n type=\"email\"\n />\n <Input label=\"Company\" required={false} placeholder=\"Acme Inc.\" />\n <Select label=\"Country\"
|
|
3131
|
+
"<div className=\"flex max-w-md flex-col gap-4\">\n <Input label=\"Full Name\" placeholder=\"John Doe\" />\n <Input\n label=\"Email\"\n labelTooltip=\"We'll send your receipt here\"\n placeholder=\"john@example.com\"\n type=\"email\"\n />\n <Input label=\"Company\" required={false} placeholder=\"Acme Inc.\" />\n <Select label=\"Country\" placeholder=\"Select a country\">\n <Select.Option value=\"us\">United States</Select.Option>\n <Select.Option value=\"uk\">United Kingdom</Select.Option>\n <Select.Option value=\"ca\">Canada</Select.Option>\n </Select>\n </div>",
|
|
3116
3132
|
"<div className=\"flex flex-col gap-3\">\n <Label>Default</Label>\n <Label showOptional>Optional</Label>\n <Label tooltip=\"Important field\">With Tooltip</Label>\n </div>"
|
|
3117
3133
|
],
|
|
3118
3134
|
"colors": [
|
|
@@ -3206,14 +3222,7 @@
|
|
|
3206
3222
|
"plain": "Link without underline decoration"
|
|
3207
3223
|
},
|
|
3208
3224
|
"classes": {
|
|
3209
|
-
"
|
|
3210
|
-
"current": "text-current underline underline-offset-[0.15em] decoration-[0.0625em] link-current transition-colors",
|
|
3211
|
-
"plain": "text-primary hover:text-primary/70 transition-colors"
|
|
3212
|
-
},
|
|
3213
|
-
"stateClasses": {
|
|
3214
|
-
"plain": {
|
|
3215
|
-
"hover": "hover:text-primary/70"
|
|
3216
|
-
}
|
|
3225
|
+
"current": "text-current underline underline-offset-[0.15em] decoration-[0.0625em] link-current transition-colors"
|
|
3217
3226
|
},
|
|
3218
3227
|
"default": "inline"
|
|
3219
3228
|
},
|
|
@@ -3297,7 +3306,9 @@
|
|
|
3297
3306
|
"<p className=\"text-base text-kumo-danger\">\n This error message contains a{\" \"}\n <Link href=\"#\" variant=\"current\">\n link\n </Link>{\" \"}\n that inherits the red color from its parent.\n </p>",
|
|
3298
3307
|
"<div className=\"flex flex-col gap-x-6 gap-y-4 text-base md:flex-row\">\n <Link render={<CustomRouterLink href=\"/dashboard\" />} variant=\"inline\">\n Dashboard (via render)\n </Link>\n <Link\n render={\n <CustomRouterLink\n href=\"https://developers.cloudflare.com\"\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n />\n }\n variant=\"inline\"\n >\n Cloudflare Docs <Link.ExternalIcon />\n </Link>\n </div>"
|
|
3299
3308
|
],
|
|
3300
|
-
"colors": [
|
|
3309
|
+
"colors": [
|
|
3310
|
+
"text-kumo-link"
|
|
3311
|
+
],
|
|
3301
3312
|
"subComponents": {
|
|
3302
3313
|
"ExternalIcon": {
|
|
3303
3314
|
"name": "ExternalIcon",
|
|
@@ -3445,7 +3456,7 @@
|
|
|
3445
3456
|
"<Meter label=\"Progress\" value={40} showValue={false} />",
|
|
3446
3457
|
"<Meter label=\"Quota reached\" value={100} />",
|
|
3447
3458
|
"<Meter label=\"Memory usage\" value={15} />",
|
|
3448
|
-
"<Meter\n label=\"Upload progress\"\n value={80}\n indicatorClassName=\"from-
|
|
3459
|
+
"<Meter\n label=\"Upload progress\"\n value={80}\n indicatorClassName=\"from-kumo-success via-kumo-success to-kumo-success\"\n />"
|
|
3449
3460
|
],
|
|
3450
3461
|
"colors": [
|
|
3451
3462
|
"bg-kumo-fill",
|
|
@@ -3778,12 +3789,11 @@
|
|
|
3778
3789
|
"label": {
|
|
3779
3790
|
"type": "ReactNode",
|
|
3780
3791
|
"optional": true,
|
|
3781
|
-
"description": "Label content for the select
|
|
3792
|
+
"description": "Label content for the select. When provided, enables the Field wrapper with a visible label above the select. For accessibility without a visible label, use `aria-label` instead."
|
|
3782
3793
|
},
|
|
3783
3794
|
"hideLabel": {
|
|
3784
3795
|
"type": "boolean",
|
|
3785
|
-
"optional": true
|
|
3786
|
-
"description": "Visually hide the label while keeping it accessible to screen readers. Set to `false` to show a visible label above the select via the Field wrapper."
|
|
3796
|
+
"optional": true
|
|
3787
3797
|
},
|
|
3788
3798
|
"placeholder": {
|
|
3789
3799
|
"type": "string",
|
|
@@ -3840,21 +3850,25 @@
|
|
|
3840
3850
|
}
|
|
3841
3851
|
},
|
|
3842
3852
|
"examples": [
|
|
3843
|
-
"<Select\n className=\"w-[200px]\"\n value={value}\n onValueChange={(v) => setValue(v ?? \"apple\")}\n items={{ apple: \"Apple\", banana: \"Banana\", cherry: \"Cherry\" }}\n
|
|
3844
|
-
"<Select\n className=\"w-[200px]\"\n value={value}\n onValueChange={(v) => setValue(v
|
|
3845
|
-
"<Select\n className=\"w-[
|
|
3846
|
-
"<Select\n
|
|
3847
|
-
"<Select className=\"w-[200px]\"
|
|
3848
|
-
"<Select\n className=\"w-[200px]\"\n
|
|
3849
|
-
"<Select
|
|
3850
|
-
"<Select\n className=\"w-[200px]\"\n
|
|
3853
|
+
"<Select\n label=\"Favorite Fruit\"\n className=\"w-[200px]\"\n value={value}\n onValueChange={(v) => setValue(v ?? \"apple\")}\n items={{ apple: \"Apple\", banana: \"Banana\", cherry: \"Cherry\" }}\n />",
|
|
3854
|
+
"<Select\n aria-label=\"Select a fruit\"\n className=\"w-[200px]\"\n value={value}\n onValueChange={(v) => setValue(v ?? \"apple\")}\n items={{ apple: \"Apple\", banana: \"Banana\", cherry: \"Cherry\" }}\n />",
|
|
3855
|
+
"<Select\n label=\"Issue Type\"\n description=\"Choose the category that best describes your issue\"\n error={!value ? \"Please select an issue type\" : undefined}\n className=\"w-[280px]\"\n value={value}\n onValueChange={(v) => setValue(v as string | null)}\n items={{\n bug: \"Bug\",\n documentation: \"Documentation\",\n feature: \"Feature\",\n }}\n />",
|
|
3856
|
+
"<Select\n label=\"Category\"\n placeholder=\"Choose a category...\"\n className=\"w-[200px]\"\n value={value}\n onValueChange={(v) => setValue(v as string | null)}\n items={{\n bug: \"Bug\",\n documentation: \"Documentation\",\n feature: \"Feature\",\n }}\n />",
|
|
3857
|
+
"<Select\n label=\"Priority\"\n labelTooltip=\"Higher priority issues are addressed first\"\n placeholder=\"Select priority\"\n className=\"w-[200px]\"\n value={value}\n onValueChange={(v) => setValue(v as string | null)}\n items={{\n low: \"Low\",\n medium: \"Medium\",\n high: \"High\",\n critical: \"Critical\",\n }}\n />",
|
|
3858
|
+
"<Select\n label=\"Language\"\n className=\"w-[200px]\"\n renderValue={(v) => (\n <span>\n {v.emoji} {v.label}\n </span>\n )}\n value={value}\n onValueChange={(v) => setValue(v as (typeof languages)[0])}\n >\n {languages.map((language) => (\n <Select.Option key={language.value} value={language}>\n {language.emoji} {language.label}\n </Select.Option>\n ))}\n </Select>",
|
|
3859
|
+
"<Select aria-label=\"Loading select\" className=\"w-[200px]\" loading />",
|
|
3860
|
+
"<Select\n label=\"Assignee\"\n className=\"w-[200px]\"\n loading={loading}\n value={value}\n onValueChange={(v) => setValue(v as string | null)}\n placeholder=\"Select assignee\"\n items={items}\n />",
|
|
3861
|
+
"<Select\n label=\"Visible Columns\"\n className=\"w-[250px]\"\n multiple\n renderValue={(value) => {\n if (value.length > 3) {\n return (\n <span className=\"line-clamp-1\">\n {value.slice(0, 2).join(\", \") + ` and ${value.length - 2} more`}\n </span>\n );\n }\n return <span>{value.join(\", \")}</span>;\n }}\n value={value}\n onValueChange={(v) => setValue(v as string[])}\n >\n <Select.Option value=\"Name\">Name</Select.Option>\n <Select.Option value=\"Location\">Location</Select.Option>\n <Select.Option value=\"Size\">Size</Select.Option>\n <Select.Option value=\"Read\">Read</Select.Option>\n <Select.Option value=\"Write\">Write</Select.Option>\n <Select.Option value=\"CreatedAt\">Created At</Select.Option>\n </Select>",
|
|
3862
|
+
"<Select\n label=\"Author\"\n description=\"Select the primary author for this document\"\n className=\"w-[200px]\"\n onValueChange={(v) => setValue(v as (typeof authors)[0] | null)}\n value={value}\n isItemEqualToValue={(item, value) => item?.id === value?.id}\n renderValue={(author) => {\n return author?.name ?? \"Select an author\";\n }}\n >\n {authors.map((author) => (\n <Select.Option key={author.id} value={author}>\n <div className=\"flex w-[300px] items-center justify-between gap-2\">\n <Text>{author.name}</Text>\n <Text variant=\"secondary\">{author.title}</Text>\n </div>\n </Select.Option>\n ))}\n </Select>"
|
|
3851
3863
|
],
|
|
3852
3864
|
"colors": [
|
|
3853
3865
|
"bg-kumo-control",
|
|
3854
3866
|
"bg-kumo-overlay",
|
|
3855
3867
|
"ring-kumo-line",
|
|
3856
3868
|
"ring-kumo-ring",
|
|
3857
|
-
"text-kumo-
|
|
3869
|
+
"text-kumo-danger",
|
|
3870
|
+
"text-kumo-default",
|
|
3871
|
+
"text-kumo-subtle"
|
|
3858
3872
|
],
|
|
3859
3873
|
"subComponents": {
|
|
3860
3874
|
"Option": {
|
|
@@ -4291,16 +4305,19 @@
|
|
|
4291
4305
|
"examples": [
|
|
4292
4306
|
"<LayerCard>\n <LayerCard.Primary className=\"p-0\">\n <Table>\n <Table.Header>\n <Table.Row>\n <Table.Head>Subject</Table.Head>\n <Table.Head>From</Table.Head>\n <Table.Head>Date</Table.Head>\n </Table.Row>\n </Table.Header>\n <Table.Body>\n {emailData.slice(0, 3).map((row) => (\n <Table.Row key={row.id}>\n <Table.Cell>{row.subject}</Table.Cell>\n <Table.Cell>{row.from}</Table.Cell>\n <Table.Cell>{row.date}</Table.Cell>\n </Table.Row>\n ))}\n </Table.Body>\n </Table>\n </LayerCard.Primary>\n </LayerCard>",
|
|
4293
4307
|
"<LayerCard>\n <LayerCard.Primary className=\"p-0\">\n <Table>\n <Table.Header>\n <Table.Row>\n <Table.CheckHead\n checked={selectedIds.size === rows.length}\n indeterminate={\n selectedIds.size > 0 && selectedIds.size < rows.length\n }\n onValueChange={toggleAll}\n aria-label=\"Select all rows\"\n />\n <Table.Head>Subject</Table.Head>\n <Table.Head>From</Table.Head>\n <Table.Head>Date</Table.Head>\n </Table.Row>\n </Table.Header>\n <Table.Body>\n {rows.map((row) => (\n <Table.Row key={row.id}>\n <Table.CheckCell\n checked={selectedIds.has(row.id)}\n onValueChange={() => toggleRow(row.id)}\n aria-label={`Select ${row.subject}`}\n />\n <Table.Cell>{row.subject}</Table.Cell>\n <Table.Cell>{row.from}</Table.Cell>\n <Table.Cell>{row.date}</Table.Cell>\n </Table.Row>\n ))}\n </Table.Body>\n </Table>\n </LayerCard.Primary>\n </LayerCard>",
|
|
4308
|
+
"<LayerCard>\n <LayerCard.Primary className=\"p-0\">\n <Table>\n <Table.Header variant=\"compact\">\n <Table.Row>\n <Table.Head>Subject</Table.Head>\n <Table.Head>From</Table.Head>\n <Table.Head>Date</Table.Head>\n </Table.Row>\n </Table.Header>\n <Table.Body>\n {emailData.slice(0, 3).map((row) => (\n <Table.Row key={row.id}>\n <Table.Cell>{row.subject}</Table.Cell>\n <Table.Cell>{row.from}</Table.Cell>\n <Table.Cell>{row.date}</Table.Cell>\n </Table.Row>\n ))}\n </Table.Body>\n </Table>\n </LayerCard.Primary>\n </LayerCard>",
|
|
4294
4309
|
"<LayerCard>\n <LayerCard.Primary className=\"p-0\">\n <Table>\n <Table.Header>\n <Table.Row>\n <Table.CheckHead\n checked={selectedIds.size === rows.length}\n indeterminate={\n selectedIds.size > 0 && selectedIds.size < rows.length\n }\n onValueChange={toggleAll}\n aria-label=\"Select all rows\"\n />\n <Table.Head>Subject</Table.Head>\n <Table.Head>From</Table.Head>\n <Table.Head>Date</Table.Head>\n </Table.Row>\n </Table.Header>\n <Table.Body>\n {rows.map((row) => (\n <Table.Row\n key={row.id}\n variant={selectedIds.has(row.id) ? \"selected\" : \"default\"}\n >\n <Table.CheckCell\n checked={selectedIds.has(row.id)}\n onValueChange={() => toggleRow(row.id)}\n aria-label={`Select ${row.subject}`}\n />\n <Table.Cell>{row.subject}</Table.Cell>\n <Table.Cell>{row.from}</Table.Cell>\n <Table.Cell>{row.date}</Table.Cell>\n </Table.Row>\n ))}\n </Table.Body>\n </Table>\n </LayerCard.Primary>\n </LayerCard>",
|
|
4295
4310
|
"<LayerCard>\n <LayerCard.Primary className=\"p-0\">\n <Table layout=\"fixed\">\n <colgroup>\n <col />\n <col className=\"w-[150px]\" />\n <col className=\"w-[150px]\" />\n </colgroup>\n <Table.Header>\n <Table.Row>\n <Table.Head>Subject</Table.Head>\n <Table.Head>From</Table.Head>\n <Table.Head>Date</Table.Head>\n </Table.Row>\n </Table.Header>\n <Table.Body>\n {emailData.map((row) => (\n <Table.Row key={row.id}>\n <Table.Cell>{row.subject}</Table.Cell>\n <Table.Cell>{row.from}</Table.Cell>\n <Table.Cell>{row.date}</Table.Cell>\n </Table.Row>\n ))}\n </Table.Body>\n </Table>\n </LayerCard.Primary>\n </LayerCard>",
|
|
4296
4311
|
"<LayerCard>\n <LayerCard.Primary className=\"w-full overflow-x-auto p-0\">\n <Table layout=\"fixed\">\n <colgroup>\n <col />{\" \"}\n {/* Checkbox column - width handled by Table.CheckHead/CheckCell */}\n <col />\n <col style={{ width: \"150px\" }} />\n <col style={{ width: \"120px\" }} />\n <col style={{ width: \"50px\" }} />\n </colgroup>\n <Table.Header>\n <Table.Row>\n <Table.CheckHead\n checked={selectedIds.size === emailData.length}\n indeterminate={\n selectedIds.size > 0 && selectedIds.size < emailData.length\n }\n onValueChange={toggleAll}\n aria-label=\"Select all rows\"\n />\n <Table.Head>Subject</Table.Head>\n <Table.Head>From</Table.Head>\n <Table.Head>Date</Table.Head>\n <Table.Head></Table.Head>\n </Table.Row>\n </Table.Header>\n <Table.Body>\n {emailData.map((row) => (\n <Table.Row\n key={row.id}\n variant={selectedIds.has(row.id) ? \"selected\" : \"default\"}\n >\n <Table.CheckCell\n checked={selectedIds.has(row.id)}\n onValueChange={() => toggleRow(row.id)}\n aria-label={`Select ${row.subject}`}\n />\n <Table.Cell>\n <div className=\"flex items-center gap-2\">\n <EnvelopeSimple size={16} />\n <span className=\"truncate\">{row.subject}</span>\n {row.tags && (\n <div className=\"ml-2 inline-flex gap-1\">\n {row.tags.map((tag) => (\n <Badge key={tag}>{tag}</Badge>\n ))}\n </div>\n )}\n </div>\n </Table.Cell>\n <Table.Cell>\n <span className=\"truncate\">{row.from}</span>\n </Table.Cell>\n <Table.Cell>\n <span className=\"truncate\">{row.date}</span>\n </Table.Cell>\n <Table.Cell className=\"text-right\">\n <DropdownMenu>\n <DropdownMenu.Trigger\n render={\n <Button\n variant=\"ghost\"\n size=\"sm\"\n shape=\"square\"\n aria-label=\"More options\"\n >\n <DotsThree weight=\"bold\" size={16} />\n </Button>\n }\n />\n <DropdownMenu.Content>\n <DropdownMenu.Item icon={Eye}>View</DropdownMenu.Item>\n <DropdownMenu.Item icon={PencilSimple}>\n Edit\n </DropdownMenu.Item>\n <DropdownMenu.Separator />\n <DropdownMenu.Item icon={Trash} variant=\"danger\">\n Delete\n </DropdownMenu.Item>\n </DropdownMenu.Content>\n </DropdownMenu>\n </Table.Cell>\n </Table.Row>\n ))}\n </Table.Body>\n </Table>\n </LayerCard.Primary>\n </LayerCard>"
|
|
4297
4312
|
],
|
|
4298
4313
|
"colors": [
|
|
4299
4314
|
"bg-kumo-base",
|
|
4315
|
+
"bg-kumo-elevated",
|
|
4300
4316
|
"bg-kumo-ring",
|
|
4301
4317
|
"bg-kumo-tint",
|
|
4302
4318
|
"border-kumo-fill",
|
|
4303
|
-
"text-kumo-default"
|
|
4319
|
+
"text-kumo-default",
|
|
4320
|
+
"text-kumo-strong"
|
|
4304
4321
|
],
|
|
4305
4322
|
"subComponents": {
|
|
4306
4323
|
"Header": {
|
|
@@ -4413,14 +4430,13 @@
|
|
|
4413
4430
|
"<Tabs\n variant=\"underline\"\n tabs={[\n { value: \"tab1\", label: \"Tab 1\" },\n { value: \"tab2\", label: \"Tab 2\" },\n { value: \"tab3\", label: \"Tab 3\" },\n ]}\n selectedValue=\"tab1\"\n />",
|
|
4414
4431
|
"<div className=\"space-y-4\">\n <Tabs\n tabs={[\n { value: \"tab1\", label: \"Tab 1\" },\n { value: \"tab2\", label: \"Tab 2\" },\n { value: \"tab3\", label: \"Tab 3\" },\n ]}\n value={activeTab}\n onValueChange={setActiveTab}\n />\n <p className=\"text-sm text-kumo-subtle\">\n Active tab: <code className=\"text-sm\">{activeTab}</code>\n </p>\n </div>",
|
|
4415
4432
|
"<Tabs\n tabs={[\n { value: \"overview\", label: \"Overview\" },\n { value: \"analytics\", label: \"Analytics\" },\n { value: \"reports\", label: \"Reports\" },\n { value: \"notifications\", label: \"Notifications\" },\n { value: \"settings\", label: \"Settings\" },\n { value: \"billing\", label: \"Billing\" },\n ]}\n selectedValue=\"overview\"\n />",
|
|
4416
|
-
"<Tabs\n tabs={[\n {\n value: \"tab1\",\n label: \"Regular Tab\",\n },\n {\n value: \"tab2\",\n label: \"Link Tab\",\n render: (props) => <a {...props} href=\"#tab2\" />,\n },\n {\n value: \"tab3\",\n label: \"
|
|
4433
|
+
"<Tabs\n tabs={[\n {\n value: \"tab1\",\n label: \"Regular Tab\",\n },\n {\n value: \"tab2\",\n label: \"Link Tab\",\n render: (props) => <a {...props} href=\"#tab2\" />,\n },\n {\n value: \"tab3\",\n label: \"Cloudflare\",\n render: (props) => (\n <a {...props} href=\"https://cloudflare.com\" target=\"_blank\" />\n ),\n },\n ]}\n selectedValue=\"tab1\"\n />"
|
|
4417
4434
|
],
|
|
4418
4435
|
"colors": [
|
|
4419
4436
|
"bg-kumo-brand",
|
|
4420
4437
|
"bg-kumo-overlay",
|
|
4421
4438
|
"bg-kumo-tint",
|
|
4422
4439
|
"border-kumo-line",
|
|
4423
|
-
"border-kumo-tint",
|
|
4424
4440
|
"ring-kumo-fill-hover",
|
|
4425
4441
|
"ring-kumo-ring",
|
|
4426
4442
|
"text-kumo-default",
|
|
@@ -4687,7 +4703,8 @@
|
|
|
4687
4703
|
"examples": [
|
|
4688
4704
|
"<TooltipProvider>\n <Tooltip content=\"Add new item\" asChild>\n <Button shape=\"square\" icon={PlusIcon} aria-label=\"Add new item\" />\n </Tooltip>\n </TooltipProvider>",
|
|
4689
4705
|
"<TooltipProvider>\n <Tooltip content=\"Add\" asChild>\n <Button shape=\"square\" icon={PlusIcon} aria-label=\"Add\" />\n </Tooltip>\n </TooltipProvider>",
|
|
4690
|
-
"<TooltipProvider>\n <div className=\"flex gap-2\">\n <Tooltip content=\"Add\" asChild>\n <Button shape=\"square\" icon={PlusIcon} aria-label=\"Add\" />\n </Tooltip>\n <Tooltip content=\"Change language\" asChild>\n <Button\n shape=\"square\"\n icon={TranslateIcon}\n aria-label=\"Change language\"\n />\n </Tooltip>\n </div>\n </TooltipProvider>"
|
|
4706
|
+
"<TooltipProvider>\n <div className=\"flex gap-2\">\n <Tooltip content=\"Add\" asChild>\n <Button shape=\"square\" icon={PlusIcon} aria-label=\"Add\" />\n </Tooltip>\n <Tooltip content=\"Change language\" asChild>\n <Button\n shape=\"square\"\n icon={TranslateIcon}\n aria-label=\"Change language\"\n />\n </Tooltip>\n </div>\n </TooltipProvider>",
|
|
4707
|
+
"<TooltipProvider>\n <Tooltip\n content=\"Click to learn more\"\n className=\"inline-flex items-center gap-1.5 rounded-full bg-kumo-brand px-3 py-1.5 text-sm font-medium text-white shadow-md transition-transform hover:scale-105 active:scale-95\"\n >\n <Info className=\"size-4\" />\n <span>Help</span>\n </Tooltip>\n </TooltipProvider>"
|
|
4691
4708
|
],
|
|
4692
4709
|
"colors": [
|
|
4693
4710
|
"bg-kumo-base",
|