@cloudflare/kumo 1.15.0 → 1.17.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 +144 -0
- package/ai/USAGE.md +3 -1
- package/ai/component-registry.json +511 -66
- package/ai/component-registry.md +776 -59
- package/ai/schemas.ts +33 -7
- package/dist/.build-complete +1 -1
- package/dist/ai/schemas.d.ts +158 -39
- package/dist/ai/schemas.d.ts.map +1 -1
- package/dist/ai/schemas.js +456 -418
- package/dist/ai/schemas.js.map +1 -1
- package/dist/chunks/{Legend-mkh1v83sz972e29d.js → Legend-o0ntojbaplmszwk0.js} +115 -101
- package/dist/chunks/Legend-o0ntojbaplmszwk0.js.map +1 -0
- package/dist/chunks/badge-n80t3z8u9ttlxi20.js +120 -0
- package/dist/chunks/badge-n80t3z8u9ttlxi20.js.map +1 -0
- package/dist/chunks/banner-nz0eryqnz3qd86ln.js +79 -0
- package/dist/chunks/banner-nz0eryqnz3qd86ln.js.map +1 -0
- package/dist/chunks/{breadcrumbs-m79gm4gjwbfajpna.js → breadcrumbs-cjgn3w4drahvqnuj.js} +3 -3
- package/dist/chunks/{breadcrumbs-m79gm4gjwbfajpna.js.map → breadcrumbs-cjgn3w4drahvqnuj.js.map} +1 -1
- package/dist/chunks/{button-j0hi0afn33w9lxgi.js → button-odxi0hp4fvi5i2w3.js} +50 -48
- package/dist/chunks/button-odxi0hp4fvi5i2w3.js.map +1 -0
- package/dist/chunks/{checkbox-bvzuggmadtqawis4.js → checkbox-dx8x0rzv582yjv7n.js} +38 -47
- package/dist/chunks/{checkbox-bvzuggmadtqawis4.js.map → checkbox-dx8x0rzv582yjv7n.js.map} +1 -1
- package/dist/chunks/{clipboard-text-mwcknzn75qdvigrd.js → clipboard-text-kyk51d1ze7zvdn4q.js} +55 -54
- package/dist/chunks/clipboard-text-kyk51d1ze7zvdn4q.js.map +1 -0
- package/dist/chunks/{combobox-ndbaroqh1c0u49ye.js → combobox-9fhjzprab46csmon.js} +97 -82
- package/dist/chunks/combobox-9fhjzprab46csmon.js.map +1 -0
- package/dist/chunks/{command-palette-ejoszjfivybu9yi5.js → command-palette-kenx2bbdzd4kpx36.js} +158 -154
- package/dist/chunks/command-palette-kenx2bbdzd4kpx36.js.map +1 -0
- package/dist/chunks/{dialog-gkmecnx48ge38jrr.js → dialog-e05ysa8t2fklw065.js} +22 -20
- package/dist/chunks/dialog-e05ysa8t2fklw065.js.map +1 -0
- package/dist/chunks/{dropdown-i8n7nv3cvkvb1x3e.js → dropdown-g587px7zv3ssaxr4.js} +96 -90
- package/dist/chunks/dropdown-g587px7zv3ssaxr4.js.map +1 -0
- package/dist/chunks/{empty-hrwtammqp0b2nvtf.js → empty-fuz1un7r7mbz0kim.js} +2 -2
- package/dist/chunks/{empty-hrwtammqp0b2nvtf.js.map → empty-fuz1un7r7mbz0kim.js.map} +1 -1
- package/dist/chunks/{field-lweivfadxgpqhuqi.js → field-fq504lyu7ttsh5m9.js} +3 -3
- package/dist/chunks/{field-lweivfadxgpqhuqi.js.map → field-fq504lyu7ttsh5m9.js.map} +1 -1
- package/dist/chunks/hcl-hcu7d6ja6t540ijn.js +8 -0
- package/dist/chunks/hcl-hcu7d6ja6t540ijn.js.map +1 -0
- package/dist/chunks/{input-area-obli4ufvu40bfpgp.js → input-area-nq40szg9110on89c.js} +4 -4
- package/dist/chunks/{input-area-obli4ufvu40bfpgp.js.map → input-area-nq40szg9110on89c.js.map} +1 -1
- package/dist/chunks/{input-group-dwtsd04lzf2bcsdo.js → input-group-hbebbyh8fo6aqydn.js} +3 -3
- package/dist/chunks/{input-group-dwtsd04lzf2bcsdo.js.map → input-group-hbebbyh8fo6aqydn.js.map} +1 -1
- package/dist/chunks/{input-ko2dne1givlxq7sz.js → input-kvhyo3p4859bexvx.js} +4 -4
- package/dist/chunks/input-kvhyo3p4859bexvx.js.map +1 -0
- package/dist/chunks/{label-kjahhybc191quieo.js → label-j9owppbgnn35mebg.js} +3 -3
- package/dist/chunks/{label-kjahhybc191quieo.js.map → label-j9owppbgnn35mebg.js.map} +1 -1
- package/dist/chunks/{layer-card-mu2w82x6ko1nhhtr.js → layer-card-l5yjvrxry1dhte57.js} +8 -8
- package/dist/chunks/{layer-card-mu2w82x6ko1nhhtr.js.map → layer-card-l5yjvrxry1dhte57.js.map} +1 -1
- package/dist/chunks/{link-lpzl5s47pmobk361.js → link-hmmf3k1xn6rm72rt.js} +2 -2
- package/dist/chunks/{link-lpzl5s47pmobk361.js.map → link-hmmf3k1xn6rm72rt.js.map} +1 -1
- package/dist/chunks/{menubar-ifxxdoa35zz79z1q.js → menubar-abojnm0uwjuni8ok.js} +20 -20
- package/dist/chunks/menubar-abojnm0uwjuni8ok.js.map +1 -0
- package/dist/chunks/{meter-fbtqfg0okpwmaiju.js → meter-i84dte2f82qmvn7y.js} +2 -2
- package/dist/chunks/{meter-fbtqfg0okpwmaiju.js.map → meter-i84dte2f82qmvn7y.js.map} +1 -1
- package/dist/chunks/{pagination-eo0gzzm7v5w8niqe.js → pagination-pbd7qqik97ac0l7m.js} +3 -3
- package/dist/chunks/{pagination-eo0gzzm7v5w8niqe.js.map → pagination-pbd7qqik97ac0l7m.js.map} +1 -1
- package/dist/chunks/{popover-dd7hi5ajeoq9od1i.js → popover-i951xjcgezeqr4iv.js} +31 -28
- package/dist/chunks/popover-i951xjcgezeqr4iv.js.map +1 -0
- package/dist/chunks/portal-provider-hwmkdmkpvct0cb76.js +18 -0
- package/dist/chunks/portal-provider-hwmkdmkpvct0cb76.js.map +1 -0
- package/dist/chunks/{radio-oi9iw7ls1t04j377.js → radio-l2vkcue40d84fmo1.js} +13 -16
- package/dist/chunks/{radio-oi9iw7ls1t04j377.js.map → radio-l2vkcue40d84fmo1.js.map} +1 -1
- package/dist/chunks/{select-0m0xklfwdlx8dwba.js → select-paedwa3nlhpq82ua.js} +39 -37
- package/dist/chunks/select-paedwa3nlhpq82ua.js.map +1 -0
- package/dist/chunks/{sensitive-input-rjpykxn2llh0thx1.js → sensitive-input-kznmknpp5h1grc6k.js} +97 -91
- package/dist/chunks/sensitive-input-kznmknpp5h1grc6k.js.map +1 -0
- package/dist/chunks/sidebar-jepeq7gaf4issuw6.js +875 -0
- package/dist/chunks/sidebar-jepeq7gaf4issuw6.js.map +1 -0
- package/dist/chunks/skeleton-line-epxenksfesr2fkcv.js +33 -0
- package/dist/chunks/skeleton-line-epxenksfesr2fkcv.js.map +1 -0
- package/dist/chunks/surface-blo81kgy9g0sexgm.js +36 -0
- package/dist/chunks/surface-blo81kgy9g0sexgm.js.map +1 -0
- package/dist/chunks/{switch-lv4mrrkfl5uc99xo.js → switch-i0zwcp3wq6vsxm1c.js} +64 -64
- package/dist/chunks/{switch-lv4mrrkfl5uc99xo.js.map → switch-i0zwcp3wq6vsxm1c.js.map} +1 -1
- package/dist/chunks/table-nrcw19tlpduayukl.js +183 -0
- package/dist/chunks/table-nrcw19tlpduayukl.js.map +1 -0
- package/dist/chunks/tabs-bw92jb303zxw7w4f.js +92 -0
- package/dist/chunks/{tabs-hy6oa7xtf96d9mxt.js.map → tabs-bw92jb303zxw7w4f.js.map} +1 -1
- package/dist/chunks/{text-gzt92mlji1lug13d.js → text-nmyi1rkwdj37f30f.js} +24 -22
- package/dist/chunks/text-nmyi1rkwdj37f30f.js.map +1 -0
- package/dist/chunks/{toast-kswfqmjysxcrwij3.js → toast-lrnwby56drs7vtae.js} +61 -59
- package/dist/chunks/toast-lrnwby56drs7vtae.js.map +1 -0
- package/dist/chunks/toml-nczb2z9n0o23o3ci.js +8 -0
- package/dist/chunks/toml-nczb2z9n0o23o3ci.js.map +1 -0
- package/dist/chunks/{tooltip-k68wcv9mrigb7rcb.js → tooltip-cit9ltlxfuhwctuj.js} +24 -21
- package/dist/chunks/tooltip-cit9ltlxfuhwctuj.js.map +1 -0
- package/dist/chunks/{vendor-base-ui-cpvkrhz4zgw9nw2b.js → vendor-base-ui-n30qblevnpk9cc5c.js} +551 -549
- package/dist/chunks/{vendor-base-ui-cpvkrhz4zgw9nw2b.js.map → vendor-base-ui-n30qblevnpk9cc5c.js.map} +1 -1
- package/dist/code/server.js +11 -9
- package/dist/code/server.js.map +1 -1
- package/dist/code.js +16 -14
- package/dist/code.js.map +1 -1
- package/dist/components/badge.js +1 -1
- package/dist/components/banner.js +1 -1
- package/dist/components/breadcrumbs.js +1 -1
- package/dist/components/button.js +1 -1
- package/dist/components/chart.js +1 -1
- package/dist/components/checkbox.js +1 -1
- package/dist/components/clipboard-text.js +1 -1
- package/dist/components/combobox.js +1 -1
- package/dist/components/command-palette.js +1 -1
- package/dist/components/dialog.js +1 -1
- package/dist/components/dropdown.js +1 -1
- package/dist/components/empty.js +1 -1
- package/dist/components/field.js +1 -1
- package/dist/components/flow.js +2142 -2090
- 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/layer-card.js +1 -1
- package/dist/components/link.js +1 -1
- package/dist/components/loader.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/sidebar.js +35 -0
- package/dist/components/sidebar.js.map +1 -0
- package/dist/components/surface.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/text.js +1 -1
- package/dist/components/toast.js +2 -2
- package/dist/components/tooltip.js +1 -1
- package/dist/index.js +192 -159
- package/dist/index.js.map +1 -1
- package/dist/primitives/accordion.js +1 -1
- package/dist/primitives/alert-dialog.js +1 -1
- package/dist/primitives/autocomplete.js +1 -1
- package/dist/primitives/avatar.js +1 -1
- package/dist/primitives/button.js +1 -1
- package/dist/primitives/checkbox-group.js +1 -1
- package/dist/primitives/checkbox.js +1 -1
- package/dist/primitives/collapsible.js +1 -1
- package/dist/primitives/combobox.js +1 -1
- package/dist/primitives/context-menu.js +1 -1
- package/dist/primitives/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/scripts/theme-generator/config.d.ts.map +1 -1
- package/dist/scripts/theme-generator/config.js +288 -24
- package/dist/scripts/theme-generator/config.js.map +1 -1
- package/dist/src/code/provider.d.ts.map +1 -1
- package/dist/src/code/server.d.ts.map +1 -1
- package/dist/src/code/types.d.ts +1 -1
- package/dist/src/code/types.d.ts.map +1 -1
- package/dist/src/components/badge/badge.d.ts +95 -22
- package/dist/src/components/badge/badge.d.ts.map +1 -1
- package/dist/src/components/banner/banner.d.ts +2 -0
- package/dist/src/components/banner/banner.d.ts.map +1 -1
- package/dist/src/components/button/button.d.ts +2 -0
- package/dist/src/components/button/button.d.ts.map +1 -1
- package/dist/src/components/chart/EChart.d.ts.map +1 -1
- package/dist/src/components/chart/TimeseriesChart.d.ts +11 -1
- package/dist/src/components/chart/TimeseriesChart.d.ts.map +1 -1
- package/dist/src/components/checkbox/checkbox.d.ts.map +1 -1
- package/dist/src/components/clipboard-text/clipboard-text.d.ts +2 -0
- package/dist/src/components/clipboard-text/clipboard-text.d.ts.map +1 -1
- package/dist/src/components/combobox/combobox.d.ts +8 -1
- package/dist/src/components/combobox/combobox.d.ts.map +1 -1
- package/dist/src/components/command-palette/command-palette.d.ts +9 -2
- package/dist/src/components/command-palette/command-palette.d.ts.map +1 -1
- package/dist/src/components/command-palette/types.d.ts +7 -0
- package/dist/src/components/command-palette/types.d.ts.map +1 -1
- package/dist/src/components/dialog/dialog.d.ts +8 -1
- package/dist/src/components/dialog/dialog.d.ts.map +1 -1
- package/dist/src/components/dropdown/dropdown.d.ts +17 -2
- package/dist/src/components/dropdown/dropdown.d.ts.map +1 -1
- package/dist/src/components/flow/diagram.d.ts.map +1 -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/loader/skeleton-line.d.ts +2 -1
- package/dist/src/components/loader/skeleton-line.d.ts.map +1 -1
- package/dist/src/components/popover/popover.d.ts +8 -1
- package/dist/src/components/popover/popover.d.ts.map +1 -1
- package/dist/src/components/radio/radio.d.ts.map +1 -1
- package/dist/src/components/select/select.d.ts +8 -1
- package/dist/src/components/select/select.d.ts.map +1 -1
- package/dist/src/components/sensitive-input/sensitive-input.d.ts.map +1 -1
- package/dist/src/components/sidebar/index.d.ts +2 -0
- package/dist/src/components/sidebar/index.d.ts.map +1 -0
- package/dist/src/components/sidebar/sidebar.d.ts +556 -0
- package/dist/src/components/sidebar/sidebar.d.ts.map +1 -0
- package/dist/src/components/surface/surface.d.ts +23 -23
- package/dist/src/components/surface/surface.d.ts.map +1 -1
- package/dist/src/components/table/table.d.ts +34 -2
- package/dist/src/components/table/table.d.ts.map +1 -1
- package/dist/src/components/tabs/tabs.d.ts.map +1 -1
- package/dist/src/components/text/text.d.ts +5 -0
- package/dist/src/components/text/text.d.ts.map +1 -1
- package/dist/src/components/toast/toast.d.ts +16 -9
- package/dist/src/components/toast/toast.d.ts.map +1 -1
- package/dist/src/components/tooltip/tooltip.d.ts +11 -6
- package/dist/src/components/tooltip/tooltip.d.ts.map +1 -1
- package/dist/src/index.d.ts +2 -0
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/utils/index.d.ts +1 -0
- package/dist/src/utils/index.d.ts.map +1 -1
- package/dist/src/utils/portal-provider.d.ts +56 -0
- package/dist/src/utils/portal-provider.d.ts.map +1 -0
- package/dist/styles/kumo-binding.css +49 -46
- package/dist/styles/kumo-standalone.css +1 -1
- package/dist/styles/theme-fedramp.css +3 -3
- package/dist/styles/theme-kumo.css +202 -22
- package/dist/utils.js +8 -6
- package/dist/utils.js.map +1 -1
- package/package.json +7 -3
- package/scripts/component-registry/index.ts +12 -0
- package/scripts/theme-generator/config.ts +298 -24
- package/dist/chunks/Legend-mkh1v83sz972e29d.js.map +0 -1
- package/dist/chunks/badge-mrshucy2530o70cq.js +0 -56
- package/dist/chunks/badge-mrshucy2530o70cq.js.map +0 -1
- package/dist/chunks/banner-vzdjbqsb6em7tmdk.js +0 -75
- package/dist/chunks/banner-vzdjbqsb6em7tmdk.js.map +0 -1
- package/dist/chunks/button-j0hi0afn33w9lxgi.js.map +0 -1
- package/dist/chunks/clipboard-text-mwcknzn75qdvigrd.js.map +0 -1
- package/dist/chunks/combobox-ndbaroqh1c0u49ye.js.map +0 -1
- package/dist/chunks/command-palette-ejoszjfivybu9yi5.js.map +0 -1
- package/dist/chunks/dialog-gkmecnx48ge38jrr.js.map +0 -1
- package/dist/chunks/dropdown-i8n7nv3cvkvb1x3e.js.map +0 -1
- package/dist/chunks/input-ko2dne1givlxq7sz.js.map +0 -1
- package/dist/chunks/menubar-ifxxdoa35zz79z1q.js.map +0 -1
- package/dist/chunks/popover-dd7hi5ajeoq9od1i.js.map +0 -1
- package/dist/chunks/select-0m0xklfwdlx8dwba.js.map +0 -1
- package/dist/chunks/sensitive-input-rjpykxn2llh0thx1.js.map +0 -1
- package/dist/chunks/skeleton-line-1j5exu6vv07mmhfb.js +0 -28
- package/dist/chunks/skeleton-line-1j5exu6vv07mmhfb.js.map +0 -1
- package/dist/chunks/surface-dhshylwccuaz91d1.js +0 -21
- package/dist/chunks/surface-dhshylwccuaz91d1.js.map +0 -1
- package/dist/chunks/table-fh7jmfip27vdapxm.js +0 -155
- package/dist/chunks/table-fh7jmfip27vdapxm.js.map +0 -1
- package/dist/chunks/tabs-hy6oa7xtf96d9mxt.js +0 -86
- package/dist/chunks/text-gzt92mlji1lug13d.js.map +0 -1
- package/dist/chunks/toast-kswfqmjysxcrwij3.js.map +0 -1
- package/dist/chunks/tooltip-k68wcv9mrigb7rcb.js.map +0 -1
package/dist/index.js
CHANGED
|
@@ -1,58 +1,60 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
import { B as
|
|
3
|
-
import { B as
|
|
4
|
-
import { a as
|
|
5
|
-
import { B as n } from "./chunks/button-
|
|
6
|
-
import { L as aa, R as ea, b as oa } from "./chunks/button-
|
|
7
|
-
import { D as
|
|
8
|
-
import { C as ia } from "./chunks/checkbox-
|
|
9
|
-
import { C as na } from "./chunks/clipboard-text-
|
|
10
|
-
import { C as
|
|
11
|
-
import { C as ca } from "./chunks/combobox-
|
|
12
|
-
import { a as
|
|
13
|
-
import { d as
|
|
14
|
-
import { D as
|
|
15
|
-
import { C as
|
|
16
|
-
import { F as
|
|
17
|
-
import { b as
|
|
18
|
-
import { I as
|
|
19
|
-
import { i as Ka } from "./chunks/input-
|
|
20
|
-
import { I as
|
|
21
|
-
import { I as
|
|
22
|
-
import { L as
|
|
23
|
-
import { L as
|
|
24
|
-
import { S as ja } from "./chunks/skeleton-line-
|
|
25
|
-
import { M as qa, u as
|
|
26
|
-
import { M as
|
|
27
|
-
import { P as
|
|
28
|
-
import { S as Za } from "./chunks/select-
|
|
29
|
-
import { S as ee } from "./chunks/surface-
|
|
30
|
-
import { S as re } from "./chunks/switch-
|
|
31
|
-
import { T as
|
|
32
|
-
import { T as le } from "./chunks/table-
|
|
33
|
-
import { T as
|
|
34
|
-
import { a as
|
|
35
|
-
import { T as
|
|
36
|
-
import { g as
|
|
37
|
-
import { a as
|
|
38
|
-
import { b as
|
|
39
|
-
import { C as
|
|
40
|
-
import { a as
|
|
41
|
-
import { B as we } from "./chunks/breadcrumbs-
|
|
42
|
-
import { E as
|
|
43
|
-
import { G as $e, a as qe, c as
|
|
44
|
-
import { C as
|
|
45
|
-
import { D as
|
|
2
|
+
import { B as Y } from "./chunks/badge-n80t3z8u9ttlxi20.js";
|
|
3
|
+
import { B as g } from "./chunks/banner-nz0eryqnz3qd86ln.js";
|
|
4
|
+
import { a as Q } from "./chunks/banner-nz0eryqnz3qd86ln.js";
|
|
5
|
+
import { B as n } from "./chunks/button-odxi0hp4fvi5i2w3.js";
|
|
6
|
+
import { L as aa, R as ea, b as oa } from "./chunks/button-odxi0hp4fvi5i2w3.js";
|
|
7
|
+
import { D as sa } from "./chunks/date-range-picker-j318zxjyqz4o3dak.js";
|
|
8
|
+
import { C as ia } from "./chunks/checkbox-dx8x0rzv582yjv7n.js";
|
|
9
|
+
import { C as na } from "./chunks/clipboard-text-kyk51d1ze7zvdn4q.js";
|
|
10
|
+
import { C as ma, a as pa } from "./chunks/code-liq1g6f5lhee305d.js";
|
|
11
|
+
import { C as ca } from "./chunks/combobox-9fhjzprab46csmon.js";
|
|
12
|
+
import { a as h, D as M, c as U, e as S } from "./chunks/dialog-e05ysa8t2fklw065.js";
|
|
13
|
+
import { d as ua, b as xa } from "./chunks/dialog-e05ysa8t2fklw065.js";
|
|
14
|
+
import { D as Ta } from "./chunks/dropdown-g587px7zv3ssaxr4.js";
|
|
15
|
+
import { C as _a } from "./chunks/collapsible-jhzee3ks51d3xowb.js";
|
|
16
|
+
import { F as Ia, a as La, K as Ra, f as Ea } from "./chunks/field-fq504lyu7ttsh5m9.js";
|
|
17
|
+
import { b as ha, K as Ma, L as Ua, a as Da, l as Na } from "./chunks/label-j9owppbgnn35mebg.js";
|
|
18
|
+
import { I as D } from "./chunks/input-kvhyo3p4859bexvx.js";
|
|
19
|
+
import { i as Ka } from "./chunks/input-kvhyo3p4859bexvx.js";
|
|
20
|
+
import { I as va, T as ka } from "./chunks/input-area-nq40szg9110on89c.js";
|
|
21
|
+
import { I as Ba } from "./chunks/input-group-hbebbyh8fo6aqydn.js";
|
|
22
|
+
import { L as Fa } from "./chunks/layer-card-l5yjvrxry1dhte57.js";
|
|
23
|
+
import { L as Ga } from "./chunks/loader-m5wfmqwgucrr4i5v.js";
|
|
24
|
+
import { S as ja } from "./chunks/skeleton-line-epxenksfesr2fkcv.js";
|
|
25
|
+
import { M as qa, u as Ha } from "./chunks/menubar-abojnm0uwjuni8ok.js";
|
|
26
|
+
import { M as Xa } from "./chunks/meter-i84dte2f82qmvn7y.js";
|
|
27
|
+
import { P as Ja } from "./chunks/pagination-pbd7qqik97ac0l7m.js";
|
|
28
|
+
import { S as Za } from "./chunks/select-paedwa3nlhpq82ua.js";
|
|
29
|
+
import { S as ee } from "./chunks/surface-blo81kgy9g0sexgm.js";
|
|
30
|
+
import { S as re } from "./chunks/switch-i0zwcp3wq6vsxm1c.js";
|
|
31
|
+
import { T as te } from "./chunks/tabs-bw92jb303zxw7w4f.js";
|
|
32
|
+
import { T as le } from "./chunks/table-nrcw19tlpduayukl.js";
|
|
33
|
+
import { T as de } from "./chunks/text-nmyi1rkwdj37f30f.js";
|
|
34
|
+
import { a as pe, T as fe, u as ce } from "./chunks/toast-lrnwby56drs7vtae.js";
|
|
35
|
+
import { T as ue, a as xe } from "./chunks/tooltip-cit9ltlxfuhwctuj.js";
|
|
36
|
+
import { g as Te, K as Ae, P as _e } from "./chunks/popover-i951xjcgezeqr4iv.js";
|
|
37
|
+
import { a as Ie, K as Le, S as Re } from "./chunks/sensitive-input-kznmknpp5h1grc6k.js";
|
|
38
|
+
import { b as ge, K as he, R as Me, a as Ue, r as De } from "./chunks/radio-l2vkcue40d84fmo1.js";
|
|
39
|
+
import { C as Oe, a as Ke, K as Ve } from "./chunks/command-palette-kenx2bbdzd4kpx36.js";
|
|
40
|
+
import { a as ke, K as Pe, L as Be, l as ye } from "./chunks/link-hmmf3k1xn6rm72rt.js";
|
|
41
|
+
import { B as we } from "./chunks/breadcrumbs-cjgn3w4drahvqnuj.js";
|
|
42
|
+
import { E as ze } from "./chunks/empty-fuz1un7r7mbz0kim.js";
|
|
43
|
+
import { G as $e, a as qe, c as He, K as We, b as Xe, g as Ye } from "./chunks/grid-m9r71jxo2b8q1972.js";
|
|
44
|
+
import { C as Qe, a as Ze, K as ao, P as eo, g as oo } from "./chunks/cloudflare-logo-bgts2jgsdh7sslw4.js";
|
|
45
|
+
import { D as so } from "./chunks/date-picker-mjocqqbggb76n8rt.js";
|
|
46
46
|
import { Flow as io } from "./components/flow.js";
|
|
47
|
-
import { C as no, a as mo, b as po, T as fo } from "./chunks/Legend-
|
|
48
|
-
import { c as
|
|
49
|
-
import {
|
|
50
|
-
import {
|
|
47
|
+
import { C as no, a as mo, b as po, T as fo } from "./chunks/Legend-o0ntojbaplmszwk0.js";
|
|
48
|
+
import { A as bo, B as uo, K as xo, S as So, w as To, y as Ao, x as _o, d as Co, e as Io, f as Lo, h as Ro, g as Eo, c as go, r as ho, i as Mo, l as Uo, m as Do, k as No, v as Oo, j as Ko, n as Vo, p as vo, o as ko, a as Po, t as Bo, u as yo, b as Fo, q as wo, s as Go, z as zo } from "./chunks/sidebar-jepeq7gaf4issuw6.js";
|
|
49
|
+
import { c as N } from "./chunks/cn-ct4n7r74mh8y0f48.js";
|
|
50
|
+
import { s as $o } from "./chunks/cn-ct4n7r74mh8y0f48.js";
|
|
51
|
+
import { L as Ho, u as Wo } from "./chunks/link-provider-mn2voeohon7cj9o4.js";
|
|
52
|
+
import { K as Yo } from "./chunks/portal-provider-hwmkdmkpvct0cb76.js";
|
|
51
53
|
import { jsx as a, jsxs as e } from "react/jsx-runtime";
|
|
52
|
-
import { useState as
|
|
53
|
-
import { XIcon as K, WarningCircleIcon as
|
|
54
|
-
import { i as
|
|
55
|
-
const
|
|
54
|
+
import { useState as T, useEffect as O, useCallback as d } from "react";
|
|
55
|
+
import { XIcon as K, WarningCircleIcon as V, CheckIcon as v, CopyIcon as k } from "@phosphor-icons/react";
|
|
56
|
+
import { i as Qo } from "./chunks/vendor-base-ui-n30qblevnpk9cc5c.js";
|
|
57
|
+
const H = {
|
|
56
58
|
size: {
|
|
57
59
|
sm: {
|
|
58
60
|
classes: "",
|
|
@@ -66,39 +68,39 @@ const W = {
|
|
|
66
68
|
}, P = {
|
|
67
69
|
size: "base"
|
|
68
70
|
};
|
|
69
|
-
function
|
|
70
|
-
open:
|
|
71
|
-
onOpenChange:
|
|
72
|
-
resourceType:
|
|
71
|
+
function B({
|
|
72
|
+
open: t,
|
|
73
|
+
onOpenChange: A,
|
|
74
|
+
resourceType: m,
|
|
73
75
|
resourceName: o,
|
|
74
|
-
onDelete:
|
|
75
|
-
isDeleting:
|
|
76
|
-
caseSensitive:
|
|
77
|
-
deleteButtonText:
|
|
78
|
-
size:
|
|
76
|
+
onDelete: p,
|
|
77
|
+
isDeleting: s = !1,
|
|
78
|
+
caseSensitive: f = !0,
|
|
79
|
+
deleteButtonText: _,
|
|
80
|
+
size: C = P.size,
|
|
79
81
|
errorMessage: c,
|
|
80
|
-
className:
|
|
82
|
+
className: I
|
|
81
83
|
}) {
|
|
82
|
-
const [
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
}, [
|
|
86
|
-
const
|
|
87
|
-
(r) =>
|
|
88
|
-
[
|
|
89
|
-
), l =
|
|
90
|
-
!l ||
|
|
91
|
-
}, [l,
|
|
84
|
+
const [b, u] = T(""), [L, i] = T(!1);
|
|
85
|
+
O(() => {
|
|
86
|
+
t || (u(""), i(!1));
|
|
87
|
+
}, [t]);
|
|
88
|
+
const x = d(
|
|
89
|
+
(r) => f ? r : r.toLowerCase(),
|
|
90
|
+
[f]
|
|
91
|
+
), l = x(b) === x(o), R = d(async () => {
|
|
92
|
+
!l || s || await p();
|
|
93
|
+
}, [l, s, p]), E = d(async () => {
|
|
92
94
|
await navigator.clipboard.writeText(o), i(!0), setTimeout(() => i(!1), 1500);
|
|
93
95
|
}, [o]);
|
|
94
|
-
return /* @__PURE__ */ a(
|
|
96
|
+
return /* @__PURE__ */ a(h, { open: t, onOpenChange: A, children: /* @__PURE__ */ e(M, { size: C, className: N("p-0", I), children: [
|
|
95
97
|
/* @__PURE__ */ e("div", { className: "flex items-center justify-between border-b border-kumo-line px-6 py-4", children: [
|
|
96
|
-
/* @__PURE__ */ e(
|
|
98
|
+
/* @__PURE__ */ e(U, { className: "text-lg font-semibold", children: [
|
|
97
99
|
"Delete ",
|
|
98
100
|
o
|
|
99
101
|
] }),
|
|
100
102
|
/* @__PURE__ */ a(
|
|
101
|
-
|
|
103
|
+
S,
|
|
102
104
|
{
|
|
103
105
|
render: (r) => /* @__PURE__ */ a(
|
|
104
106
|
n,
|
|
@@ -108,7 +110,7 @@ function y({
|
|
|
108
110
|
shape: "square",
|
|
109
111
|
size: "sm",
|
|
110
112
|
"aria-label": "Close",
|
|
111
|
-
disabled:
|
|
113
|
+
disabled: s,
|
|
112
114
|
children: /* @__PURE__ */ a(K, { size: 18 })
|
|
113
115
|
}
|
|
114
116
|
)
|
|
@@ -117,13 +119,13 @@ function y({
|
|
|
117
119
|
] }),
|
|
118
120
|
/* @__PURE__ */ e("div", { className: "flex flex-col p-6 gap-4", children: [
|
|
119
121
|
/* @__PURE__ */ e("div", { className: "flex flex-col gap-2", children: [
|
|
120
|
-
c && /* @__PURE__ */ a(
|
|
122
|
+
c && /* @__PURE__ */ a(g, { icon: /* @__PURE__ */ a(V, {}), variant: "error", children: c }),
|
|
121
123
|
/* @__PURE__ */ e("p", { className: "text-base text-kumo-subtle max-w-prose text-pretty", children: [
|
|
122
124
|
"This action cannot be undone. This will permanently delete the",
|
|
123
125
|
" ",
|
|
124
126
|
/* @__PURE__ */ a("span", { className: "font-medium text-kumo-default", children: o }),
|
|
125
127
|
" ",
|
|
126
|
-
|
|
128
|
+
m.toLowerCase(),
|
|
127
129
|
"."
|
|
128
130
|
] })
|
|
129
131
|
] }),
|
|
@@ -139,15 +141,15 @@ function y({
|
|
|
139
141
|
"aria-label": `Copy ${o} to clipboard`,
|
|
140
142
|
children: [
|
|
141
143
|
o,
|
|
142
|
-
|
|
143
|
-
|
|
144
|
+
L ? /* @__PURE__ */ a(
|
|
145
|
+
v,
|
|
144
146
|
{
|
|
145
147
|
size: 12,
|
|
146
148
|
weight: "bold",
|
|
147
149
|
className: "inline ml-1.5"
|
|
148
150
|
}
|
|
149
151
|
) : /* @__PURE__ */ a(
|
|
150
|
-
|
|
152
|
+
k,
|
|
151
153
|
{
|
|
152
154
|
size: 12,
|
|
153
155
|
weight: "bold",
|
|
@@ -161,12 +163,12 @@ function y({
|
|
|
161
163
|
"to confirm:"
|
|
162
164
|
] }) }),
|
|
163
165
|
/* @__PURE__ */ a(
|
|
164
|
-
|
|
166
|
+
D,
|
|
165
167
|
{
|
|
166
168
|
placeholder: o,
|
|
167
|
-
value:
|
|
168
|
-
onChange: (r) =>
|
|
169
|
-
disabled:
|
|
169
|
+
value: b,
|
|
170
|
+
onChange: (r) => u(r.target.value),
|
|
171
|
+
disabled: s,
|
|
170
172
|
autoComplete: "off",
|
|
171
173
|
autoCorrect: "off",
|
|
172
174
|
autoCapitalize: "off",
|
|
@@ -179,29 +181,29 @@ function y({
|
|
|
179
181
|
] }),
|
|
180
182
|
/* @__PURE__ */ e("div", { className: "flex justify-end gap-3 border-t border-kumo-line px-6 py-4", children: [
|
|
181
183
|
/* @__PURE__ */ a(
|
|
182
|
-
|
|
184
|
+
S,
|
|
183
185
|
{
|
|
184
|
-
render: (r) => /* @__PURE__ */ a(n, { ...r, variant: "secondary", disabled:
|
|
186
|
+
render: (r) => /* @__PURE__ */ a(n, { ...r, variant: "secondary", disabled: s, children: "Cancel" })
|
|
185
187
|
}
|
|
186
188
|
),
|
|
187
189
|
/* @__PURE__ */ a(
|
|
188
190
|
n,
|
|
189
191
|
{
|
|
190
192
|
variant: "destructive",
|
|
191
|
-
onClick:
|
|
192
|
-
disabled: !l ||
|
|
193
|
-
loading:
|
|
194
|
-
children:
|
|
193
|
+
onClick: R,
|
|
194
|
+
disabled: !l || s,
|
|
195
|
+
loading: s,
|
|
196
|
+
children: _ || `Delete ${m}`
|
|
195
197
|
}
|
|
196
198
|
)
|
|
197
199
|
] })
|
|
198
200
|
] }) });
|
|
199
201
|
}
|
|
200
|
-
|
|
202
|
+
B.displayName = "DeleteResource";
|
|
201
203
|
export {
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
204
|
+
Y as Badge,
|
|
205
|
+
g as Banner,
|
|
206
|
+
Q as BannerVariant,
|
|
205
207
|
we as Breadcrumbs,
|
|
206
208
|
n as Button,
|
|
207
209
|
no as Chart,
|
|
@@ -209,93 +211,124 @@ export {
|
|
|
209
211
|
po as ChartPalette,
|
|
210
212
|
ia as Checkbox,
|
|
211
213
|
na as ClipboardText,
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
214
|
+
Qe as CloudflareLogo,
|
|
215
|
+
ma as Code,
|
|
216
|
+
pa as CodeBlock,
|
|
217
|
+
_a as Collapsible,
|
|
216
218
|
ca as Combobox,
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
219
|
+
Oe as CommandPalette,
|
|
220
|
+
so as DatePicker,
|
|
221
|
+
sa as DateRangePicker,
|
|
222
|
+
B as DeleteResource,
|
|
223
|
+
M as Dialog,
|
|
224
|
+
S as DialogClose,
|
|
225
|
+
ua as DialogDescription,
|
|
226
|
+
h as DialogRoot,
|
|
227
|
+
U as DialogTitle,
|
|
228
|
+
xa as DialogTrigger,
|
|
229
|
+
Ta as DropdownMenu,
|
|
230
|
+
ze as Empty,
|
|
231
|
+
Ia as Field,
|
|
230
232
|
io as Flow,
|
|
231
233
|
$e as Grid,
|
|
232
234
|
qe as GridItem,
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
235
|
+
D as Input,
|
|
236
|
+
va as InputArea,
|
|
237
|
+
Ba as InputGroup,
|
|
236
238
|
Ze as KUMO_CLOUDFLARE_LOGO_DEFAULT_VARIANTS,
|
|
237
239
|
ao as KUMO_CLOUDFLARE_LOGO_VARIANTS,
|
|
238
240
|
Ke as KUMO_COMMAND_PALETTE_DEFAULT_VARIANTS,
|
|
239
|
-
|
|
241
|
+
Ve as KUMO_COMMAND_PALETTE_VARIANTS,
|
|
240
242
|
P as KUMO_DELETE_RESOURCE_DEFAULT_VARIANTS,
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
243
|
+
H as KUMO_DELETE_RESOURCE_VARIANTS,
|
|
244
|
+
La as KUMO_FIELD_DEFAULT_VARIANTS,
|
|
245
|
+
Ra as KUMO_FIELD_VARIANTS,
|
|
246
|
+
He as KUMO_GRID_DEFAULT_VARIANTS,
|
|
247
|
+
We as KUMO_GRID_VARIANTS,
|
|
248
|
+
ha as KUMO_LABEL_DEFAULT_VARIANTS,
|
|
249
|
+
Ma as KUMO_LABEL_VARIANTS,
|
|
250
|
+
ke as KUMO_LINK_DEFAULT_VARIANTS,
|
|
249
251
|
Pe as KUMO_LINK_VARIANTS,
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
252
|
+
Te as KUMO_POPOVER_DEFAULT_VARIANTS,
|
|
253
|
+
Ae as KUMO_POPOVER_VARIANTS,
|
|
254
|
+
ge as KUMO_RADIO_DEFAULT_VARIANTS,
|
|
255
|
+
he as KUMO_RADIO_VARIANTS,
|
|
256
|
+
Ie as KUMO_SENSITIVE_INPUT_DEFAULT_VARIANTS,
|
|
257
|
+
Le as KUMO_SENSITIVE_INPUT_VARIANTS,
|
|
258
|
+
bo as KUMO_SIDEBAR_DEFAULT_VARIANTS,
|
|
259
|
+
uo as KUMO_SIDEBAR_STYLING,
|
|
260
|
+
xo as KUMO_SIDEBAR_VARIANTS,
|
|
261
|
+
Yo as KumoPortalProvider,
|
|
262
|
+
Ua as Label,
|
|
263
|
+
Fa as LayerCard,
|
|
264
|
+
Be as Link,
|
|
259
265
|
aa as LinkButton,
|
|
260
|
-
|
|
261
|
-
|
|
266
|
+
Ho as LinkProvider,
|
|
267
|
+
Ga as Loader,
|
|
262
268
|
qa as MenuBar,
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
269
|
+
Xa as Meter,
|
|
270
|
+
Ja as Pagination,
|
|
271
|
+
_e as Popover,
|
|
266
272
|
eo as PoweredByCloudflare,
|
|
267
|
-
|
|
268
|
-
|
|
273
|
+
Me as Radio,
|
|
274
|
+
Ue as RadioGroup,
|
|
269
275
|
ea as RefreshButton,
|
|
270
276
|
Za as Select,
|
|
271
|
-
|
|
277
|
+
Re as SensitiveInput,
|
|
278
|
+
So as Sidebar,
|
|
279
|
+
To as SidebarCollapsible,
|
|
280
|
+
Ao as SidebarCollapsibleContent,
|
|
281
|
+
_o as SidebarCollapsibleTrigger,
|
|
282
|
+
Co as SidebarContent,
|
|
283
|
+
Io as SidebarFooter,
|
|
284
|
+
Lo as SidebarGroup,
|
|
285
|
+
Ro as SidebarGroupContent,
|
|
286
|
+
Eo as SidebarGroupLabel,
|
|
287
|
+
go as SidebarHeader,
|
|
288
|
+
ho as SidebarInput,
|
|
289
|
+
Mo as SidebarMenu,
|
|
290
|
+
Uo as SidebarMenuAction,
|
|
291
|
+
Do as SidebarMenuBadge,
|
|
292
|
+
No as SidebarMenuButton,
|
|
293
|
+
Oo as SidebarMenuChevron,
|
|
294
|
+
Ko as SidebarMenuItem,
|
|
295
|
+
Vo as SidebarMenuSub,
|
|
296
|
+
vo as SidebarMenuSubButton,
|
|
297
|
+
ko as SidebarMenuSubItem,
|
|
298
|
+
Po as SidebarProvider,
|
|
299
|
+
Bo as SidebarRail,
|
|
300
|
+
yo as SidebarResizeHandle,
|
|
301
|
+
Fo as SidebarRoot,
|
|
302
|
+
wo as SidebarSeparator,
|
|
303
|
+
Go as SidebarTrigger,
|
|
272
304
|
ja as SkeletonLine,
|
|
273
305
|
ee as Surface,
|
|
274
306
|
re as Switch,
|
|
275
307
|
le as Table,
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
308
|
+
te as Tabs,
|
|
309
|
+
de as Text,
|
|
310
|
+
ka as Textarea,
|
|
279
311
|
fo as TimeseriesChart,
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
312
|
+
Qo as Toast,
|
|
313
|
+
pe as ToastProvider,
|
|
314
|
+
fe as Toasty,
|
|
315
|
+
ue as Tooltip,
|
|
316
|
+
xe as TooltipProvider,
|
|
285
317
|
oa as buttonVariants,
|
|
286
|
-
|
|
318
|
+
N as cn,
|
|
287
319
|
Ea as fieldVariants,
|
|
288
320
|
oo as generateCloudflareLogoSvg,
|
|
289
|
-
|
|
290
|
-
|
|
321
|
+
Xe as gridItemVariants,
|
|
322
|
+
Ye as gridVariants,
|
|
291
323
|
Ka as inputVariants,
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
324
|
+
Da as labelContentVariants,
|
|
325
|
+
Na as labelVariants,
|
|
326
|
+
ye as linkVariants,
|
|
327
|
+
De as radioVariants,
|
|
328
|
+
$o as safeRandomId,
|
|
297
329
|
ce as useKumoToastManager,
|
|
298
|
-
|
|
299
|
-
|
|
330
|
+
Wo as useLinkComponent,
|
|
331
|
+
Ha as useMenuNavigation,
|
|
332
|
+
zo as useSidebar
|
|
300
333
|
};
|
|
301
334
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../src/blocks/delete-resource/delete-resource.tsx"],"sourcesContent":["import { useState, useCallback, useEffect } from \"react\";\nimport {\n Dialog,\n DialogRoot,\n DialogTitle,\n DialogClose,\n} from \"../../components/dialog\";\nimport { Input } from \"../../components/input\";\nimport { Button } from \"../../components/button\";\nimport { cn } from \"../../utils/cn\";\nimport {\n CheckIcon,\n CopyIcon,\n WarningCircleIcon,\n XIcon,\n} from \"@phosphor-icons/react\";\nimport { Banner } from \"../../components/banner\";\n\nexport const KUMO_DELETE_RESOURCE_VARIANTS = {\n size: {\n sm: {\n classes: \"\",\n description: \"Small dialog for simple delete confirmations\",\n },\n base: {\n classes: \"\",\n description: \"Default delete confirmation dialog size\",\n },\n },\n} as const;\n\nexport const KUMO_DELETE_RESOURCE_DEFAULT_VARIANTS = {\n size: \"base\",\n} as const;\n\nexport type KumoDeleteResourceSize =\n keyof typeof KUMO_DELETE_RESOURCE_VARIANTS.size;\n\nexport interface KumoDeleteResourceVariantsProps {\n size?: KumoDeleteResourceSize;\n}\n\nexport interface DeleteResourceProps extends KumoDeleteResourceVariantsProps {\n /** Whether the dialog is open */\n open: boolean;\n /** Callback when open state changes */\n onOpenChange: (open: boolean) => void;\n /** The type of resource being deleted (e.g., \"Zone\", \"Worker\", \"KV Namespace\") */\n resourceType: string;\n /** The name of the specific resource being deleted */\n resourceName: string;\n /** Callback when delete is confirmed */\n onDelete: () => void | Promise<void>;\n /** Whether the delete action is in progress */\n isDeleting?: boolean;\n /** Whether the confirmation input should be case-sensitive (default: true) */\n caseSensitive?: boolean;\n /** Custom delete button text (defaults to \"Delete {resourceType}\") */\n deleteButtonText?: string;\n /** Additional className for the dialog */\n className?: string;\n /** Error message to display if the delete action fails */\n errorMessage?: string;\n}\n\nexport function DeleteResource({\n open,\n onOpenChange,\n resourceType,\n resourceName,\n onDelete,\n isDeleting = false,\n caseSensitive = true,\n deleteButtonText,\n size = KUMO_DELETE_RESOURCE_DEFAULT_VARIANTS.size,\n errorMessage,\n className,\n}: DeleteResourceProps) {\n const [confirmationInput, setConfirmationInput] = useState(\"\");\n const [copied, setCopied] = useState(false);\n\n useEffect(() => {\n if (!open) {\n setConfirmationInput(\"\");\n setCopied(false);\n }\n }, [open]);\n\n const normalizeForComparison = useCallback(\n (str: string) => (caseSensitive ? str : str.toLowerCase()),\n [caseSensitive],\n );\n\n const isConfirmed =\n normalizeForComparison(confirmationInput) ===\n normalizeForComparison(resourceName);\n\n const handleDelete = useCallback(async () => {\n if (!isConfirmed || isDeleting) return;\n await onDelete();\n }, [isConfirmed, isDeleting, onDelete]);\n\n const handleCopy = useCallback(async () => {\n await navigator.clipboard.writeText(resourceName);\n setCopied(true);\n setTimeout(() => setCopied(false), 1500);\n }, [resourceName]);\n\n return (\n <DialogRoot open={open} onOpenChange={onOpenChange}>\n <Dialog size={size} className={cn(\"p-0\", className)}>\n <div className=\"flex items-center justify-between border-b border-kumo-line px-6 py-4\">\n <DialogTitle className=\"text-lg font-semibold\">\n Delete {resourceName}\n </DialogTitle>\n <DialogClose\n render={(props) => (\n <Button\n {...props}\n variant=\"ghost\"\n shape=\"square\"\n size=\"sm\"\n aria-label=\"Close\"\n disabled={isDeleting}\n >\n <XIcon size={18} />\n </Button>\n )}\n />\n </div>\n\n <div className=\"flex flex-col p-6 gap-4\">\n <div className=\"flex flex-col gap-2\">\n {errorMessage && (\n <Banner icon={<WarningCircleIcon />} variant=\"error\">\n {errorMessage}\n </Banner>\n )}\n <p className=\"text-base text-kumo-subtle max-w-prose text-pretty\">\n This action cannot be undone. This will permanently delete the{\" \"}\n <span className=\"font-medium text-kumo-default\">\n {resourceName}\n </span>{\" \"}\n {resourceType.toLowerCase()}.\n </p>\n </div>\n\n <div className=\"flex flex-col gap-2\">\n <div className=\"flex items-center gap-1.5 text-base\">\n <span>\n Type{\" \"}\n <button\n className=\"font-mono text-sm inline font-semibold bg-kumo-tint hover:bg-kumo-fill rounded-md px-2 py-1 group hover:cursor-pointer\"\n onClick={handleCopy}\n aria-label={`Copy ${resourceName} to clipboard`}\n >\n {resourceName}\n\n {copied ? (\n <CheckIcon\n size={12}\n weight=\"bold\"\n className=\"inline ml-1.5\"\n />\n ) : (\n <CopyIcon\n size={12}\n weight=\"bold\"\n className=\"inline text-kumo-subtle group-hover:text-kumo-default ml-1.5\"\n />\n )}\n </button>{\" \"}\n to confirm:\n </span>\n </div>\n <Input\n placeholder={resourceName}\n value={confirmationInput}\n onChange={(e) => setConfirmationInput(e.target.value)}\n disabled={isDeleting}\n autoComplete=\"off\"\n autoCorrect=\"off\"\n autoCapitalize=\"off\"\n spellCheck={false}\n aria-label={`Type ${resourceName} to confirm deletion`}\n className=\"w-full\"\n />\n </div>\n </div>\n\n <div className=\"flex justify-end gap-3 border-t border-kumo-line px-6 py-4\">\n <DialogClose\n render={(props) => (\n <Button {...props} variant=\"secondary\" disabled={isDeleting}>\n Cancel\n </Button>\n )}\n />\n <Button\n variant=\"destructive\"\n onClick={handleDelete}\n disabled={!isConfirmed || isDeleting}\n loading={isDeleting}\n >\n {deleteButtonText || `Delete ${resourceType}`}\n </Button>\n </div>\n </Dialog>\n </DialogRoot>\n );\n}\n\nDeleteResource.displayName = \"DeleteResource\";\n"],"names":["KUMO_DELETE_RESOURCE_VARIANTS","KUMO_DELETE_RESOURCE_DEFAULT_VARIANTS","DeleteResource","open","onOpenChange","resourceType","resourceName","onDelete","isDeleting","caseSensitive","deleteButtonText","size","errorMessage","className","confirmationInput","setConfirmationInput","useState","copied","setCopied","useEffect","normalizeForComparison","useCallback","str","isConfirmed","handleDelete","handleCopy","jsx","DialogRoot","jsxs","Dialog","cn","DialogTitle","DialogClose","props","Button","XIcon","Banner","WarningCircleIcon","CheckIcon","CopyIcon","Input","e"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../src/blocks/delete-resource/delete-resource.tsx"],"sourcesContent":["import { useState, useCallback, useEffect } from \"react\";\nimport {\n Dialog,\n DialogRoot,\n DialogTitle,\n DialogClose,\n} from \"../../components/dialog\";\nimport { Input } from \"../../components/input\";\nimport { Button } from \"../../components/button\";\nimport { cn } from \"../../utils/cn\";\nimport {\n CheckIcon,\n CopyIcon,\n WarningCircleIcon,\n XIcon,\n} from \"@phosphor-icons/react\";\nimport { Banner } from \"../../components/banner\";\n\nexport const KUMO_DELETE_RESOURCE_VARIANTS = {\n size: {\n sm: {\n classes: \"\",\n description: \"Small dialog for simple delete confirmations\",\n },\n base: {\n classes: \"\",\n description: \"Default delete confirmation dialog size\",\n },\n },\n} as const;\n\nexport const KUMO_DELETE_RESOURCE_DEFAULT_VARIANTS = {\n size: \"base\",\n} as const;\n\nexport type KumoDeleteResourceSize =\n keyof typeof KUMO_DELETE_RESOURCE_VARIANTS.size;\n\nexport interface KumoDeleteResourceVariantsProps {\n size?: KumoDeleteResourceSize;\n}\n\nexport interface DeleteResourceProps extends KumoDeleteResourceVariantsProps {\n /** Whether the dialog is open */\n open: boolean;\n /** Callback when open state changes */\n onOpenChange: (open: boolean) => void;\n /** The type of resource being deleted (e.g., \"Zone\", \"Worker\", \"KV Namespace\") */\n resourceType: string;\n /** The name of the specific resource being deleted */\n resourceName: string;\n /** Callback when delete is confirmed */\n onDelete: () => void | Promise<void>;\n /** Whether the delete action is in progress */\n isDeleting?: boolean;\n /** Whether the confirmation input should be case-sensitive (default: true) */\n caseSensitive?: boolean;\n /** Custom delete button text (defaults to \"Delete {resourceType}\") */\n deleteButtonText?: string;\n /** Additional className for the dialog */\n className?: string;\n /** Error message to display if the delete action fails */\n errorMessage?: string;\n}\n\nexport function DeleteResource({\n open,\n onOpenChange,\n resourceType,\n resourceName,\n onDelete,\n isDeleting = false,\n caseSensitive = true,\n deleteButtonText,\n size = KUMO_DELETE_RESOURCE_DEFAULT_VARIANTS.size,\n errorMessage,\n className,\n}: DeleteResourceProps) {\n const [confirmationInput, setConfirmationInput] = useState(\"\");\n const [copied, setCopied] = useState(false);\n\n useEffect(() => {\n if (!open) {\n setConfirmationInput(\"\");\n setCopied(false);\n }\n }, [open]);\n\n const normalizeForComparison = useCallback(\n (str: string) => (caseSensitive ? str : str.toLowerCase()),\n [caseSensitive],\n );\n\n const isConfirmed =\n normalizeForComparison(confirmationInput) ===\n normalizeForComparison(resourceName);\n\n const handleDelete = useCallback(async () => {\n if (!isConfirmed || isDeleting) return;\n await onDelete();\n }, [isConfirmed, isDeleting, onDelete]);\n\n const handleCopy = useCallback(async () => {\n await navigator.clipboard.writeText(resourceName);\n setCopied(true);\n setTimeout(() => setCopied(false), 1500);\n }, [resourceName]);\n\n return (\n <DialogRoot open={open} onOpenChange={onOpenChange}>\n <Dialog size={size} className={cn(\"p-0\", className)}>\n <div className=\"flex items-center justify-between border-b border-kumo-line px-6 py-4\">\n <DialogTitle className=\"text-lg font-semibold\">\n Delete {resourceName}\n </DialogTitle>\n <DialogClose\n render={(props) => (\n <Button\n {...props}\n variant=\"ghost\"\n shape=\"square\"\n size=\"sm\"\n aria-label=\"Close\"\n disabled={isDeleting}\n >\n <XIcon size={18} />\n </Button>\n )}\n />\n </div>\n\n <div className=\"flex flex-col p-6 gap-4\">\n <div className=\"flex flex-col gap-2\">\n {errorMessage && (\n <Banner icon={<WarningCircleIcon />} variant=\"error\">\n {errorMessage}\n </Banner>\n )}\n <p className=\"text-base text-kumo-subtle max-w-prose text-pretty\">\n This action cannot be undone. This will permanently delete the{\" \"}\n <span className=\"font-medium text-kumo-default\">\n {resourceName}\n </span>{\" \"}\n {resourceType.toLowerCase()}.\n </p>\n </div>\n\n <div className=\"flex flex-col gap-2\">\n <div className=\"flex items-center gap-1.5 text-base\">\n <span>\n Type{\" \"}\n <button\n className=\"font-mono text-sm inline font-semibold bg-kumo-tint hover:bg-kumo-fill rounded-md px-2 py-1 group hover:cursor-pointer\"\n onClick={handleCopy}\n aria-label={`Copy ${resourceName} to clipboard`}\n >\n {resourceName}\n\n {copied ? (\n <CheckIcon\n size={12}\n weight=\"bold\"\n className=\"inline ml-1.5\"\n />\n ) : (\n <CopyIcon\n size={12}\n weight=\"bold\"\n className=\"inline text-kumo-subtle group-hover:text-kumo-default ml-1.5\"\n />\n )}\n </button>{\" \"}\n to confirm:\n </span>\n </div>\n <Input\n placeholder={resourceName}\n value={confirmationInput}\n onChange={(e) => setConfirmationInput(e.target.value)}\n disabled={isDeleting}\n autoComplete=\"off\"\n autoCorrect=\"off\"\n autoCapitalize=\"off\"\n spellCheck={false}\n aria-label={`Type ${resourceName} to confirm deletion`}\n className=\"w-full\"\n />\n </div>\n </div>\n\n <div className=\"flex justify-end gap-3 border-t border-kumo-line px-6 py-4\">\n <DialogClose\n render={(props) => (\n <Button {...props} variant=\"secondary\" disabled={isDeleting}>\n Cancel\n </Button>\n )}\n />\n <Button\n variant=\"destructive\"\n onClick={handleDelete}\n disabled={!isConfirmed || isDeleting}\n loading={isDeleting}\n >\n {deleteButtonText || `Delete ${resourceType}`}\n </Button>\n </div>\n </Dialog>\n </DialogRoot>\n );\n}\n\nDeleteResource.displayName = \"DeleteResource\";\n"],"names":["KUMO_DELETE_RESOURCE_VARIANTS","KUMO_DELETE_RESOURCE_DEFAULT_VARIANTS","DeleteResource","open","onOpenChange","resourceType","resourceName","onDelete","isDeleting","caseSensitive","deleteButtonText","size","errorMessage","className","confirmationInput","setConfirmationInput","useState","copied","setCopied","useEffect","normalizeForComparison","useCallback","str","isConfirmed","handleDelete","handleCopy","jsx","DialogRoot","jsxs","Dialog","cn","DialogTitle","DialogClose","props","Button","XIcon","Banner","WarningCircleIcon","CheckIcon","CopyIcon","Input","e"],"mappings":"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"}
|