@adaptive-ds/solid-ui 0.14.0 → 0.15.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/dist/input/check/CheckBoolean.d.ts.map +1 -1
- package/dist/input/check/CheckBoolean.js.map +1 -1
- package/dist/input/check/CheckBooleanSingle.d.ts.map +1 -1
- package/dist/input/check/CheckBooleanSingle.js.map +1 -1
- package/dist/input/check/CheckMultiple.js.map +1 -1
- package/dist/input/search/searchInputSignal.d.ts.map +1 -1
- package/dist/input/search/searchInputSignal.js.map +1 -1
- package/dist/input/select/SelectMultiple.d.ts.map +1 -1
- package/dist/input/select/SelectMultiple.js.map +1 -1
- package/dist/input/select/SelectSingleNative.d.ts.map +1 -1
- package/dist/input/select/SelectSingleNative.js.map +1 -1
- package/dist/input/switch/SwitchSingle.d.ts.map +1 -1
- package/dist/input/switch/SwitchSingle.js.map +1 -1
- package/dist/interactive/button/ButtonIconOnly.d.ts.map +1 -1
- package/dist/interactive/button/ButtonIconOnly.js.map +1 -1
- package/dist/interactive/dialog/CorvuDialog.d.ts +2 -0
- package/dist/interactive/dialog/CorvuDialog.d.ts.map +1 -1
- package/dist/interactive/dialog/CorvuDialog.js +74 -66
- package/dist/interactive/dialog/CorvuDialog.js.map +1 -1
- package/dist/interactive/dialog/CorvuDialogIcon.d.ts.map +1 -1
- package/dist/interactive/dialog/CorvuDialogIcon.js +1 -1
- package/dist/interactive/dialog/CorvuDialogIcon.js.map +1 -1
- package/dist/interactive/popover/CorvuPopover.d.ts +2 -0
- package/dist/interactive/popover/CorvuPopover.d.ts.map +1 -1
- package/dist/interactive/popover/CorvuPopover.js +6 -0
- package/dist/interactive/popover/CorvuPopover.js.map +1 -1
- package/dist/interactive/popover/CorvuPopoverIcon.d.ts +2 -0
- package/dist/interactive/popover/CorvuPopoverIcon.d.ts.map +1 -1
- package/dist/interactive/popover/CorvuPopoverIcon.js +9 -1
- package/dist/interactive/popover/CorvuPopoverIcon.js.map +1 -1
- package/dist/interactive/sidebar/Sidebar.d.ts +16 -0
- package/dist/interactive/sidebar/Sidebar.d.ts.map +1 -0
- package/dist/interactive/sidebar/Sidebar.js +46 -0
- package/dist/interactive/sidebar/Sidebar.js.map +1 -0
- package/dist/interactive/sidebar/SidebarMobileDrawer.d.ts +7 -0
- package/dist/interactive/sidebar/SidebarMobileDrawer.d.ts.map +1 -0
- package/dist/interactive/sidebar/SidebarMobileDrawer.js +21 -0
- package/dist/interactive/sidebar/SidebarMobileDrawer.js.map +1 -0
- package/dist/interactive/sidebar/SidebarState.d.ts +7 -0
- package/dist/interactive/sidebar/SidebarState.d.ts.map +1 -0
- package/dist/interactive/sidebar/SidebarState.js +0 -0
- package/dist/interactive/sidebar/SidebarToggle.d.ts +16 -0
- package/dist/interactive/sidebar/SidebarToggle.d.ts.map +1 -0
- package/dist/interactive/sidebar/SidebarToggle.js +47 -0
- package/dist/interactive/sidebar/SidebarToggle.js.map +1 -0
- package/dist/interactive/sidebar/createSidebarState.d.ts +3 -0
- package/dist/interactive/sidebar/createSidebarState.d.ts.map +1 -0
- package/dist/interactive/sidebar/createSidebarState.js +13 -0
- package/dist/interactive/sidebar/createSidebarState.js.map +1 -0
- package/dist/interactive/sidebar/index.d.ts +4 -0
- package/dist/interactive/sidebar/index.d.ts.map +1 -0
- package/dist/interactive/sidebar/index.js +4 -0
- package/dist/interactive/tabs/TabsTop.d.ts.map +1 -1
- package/dist/interactive/tabs/TabsTop.js.map +1 -1
- package/dist/interactive/theme/ThemeButton.d.ts.map +1 -1
- package/dist/interactive/theme/ThemeButton.js +4 -6
- package/dist/interactive/theme/ThemeButton.js.map +1 -1
- package/dist/interactive/toast/toastIconCva.d.ts.map +1 -1
- package/dist/interactive/toast/toastIconCva.js.map +1 -1
- package/dist/interactive/toggle/ToggleButton.d.ts.map +1 -1
- package/dist/interactive/toggle/ToggleButton.js.map +1 -1
- package/dist/interactive/toggle/ToggleButtonIconOnly.d.ts.map +1 -1
- package/dist/interactive/toggle/ToggleButtonIconOnly.js.map +1 -1
- package/dist/node_modules/@corvu/popover/dist/index.js +1 -1
- package/dist/solid-ui.css +65 -37
- package/dist/static/grid/classesGridCols.d.ts.map +1 -1
- package/dist/static/grid/classesGridCols.js.map +1 -1
- package/dist/static/icon/linkIcons.js.map +1 -1
- package/dist/static/icons/iconApple.d.ts.map +1 -1
- package/dist/static/icons/iconApple.js.map +1 -1
- package/dist/static/icons/iconBluesky.d.ts.map +1 -1
- package/dist/static/icons/iconBluesky.js.map +1 -1
- package/dist/static/icons/iconDevTo.d.ts.map +1 -1
- package/dist/static/icons/iconDevTo.js.map +1 -1
- package/dist/static/icons/iconGithub.d.ts.map +1 -1
- package/dist/static/icons/iconGithub.js.map +1 -1
- package/dist/static/icons/iconGoogle.d.ts.map +1 -1
- package/dist/static/icons/iconGoogle.js.map +1 -1
- package/dist/static/icons/iconXcom.d.ts.map +1 -1
- package/dist/static/icons/iconXcom.js.map +1 -1
- package/dist/static/loaders/LoaderShuffle4Dots.module.css.js +2 -2
- package/dist/static/loaders/LoaderShuffle4Dots.module.css.js.map +1 -1
- package/dist/static/loaders/LoaderShuffle9Squares.module.css.js +3 -3
- package/dist/static/loaders/LoaderShuffle9Squares.module.css.js.map +1 -1
- package/dist/static/loaders/LoaderSpin4Square.module.css.js +2 -2
- package/dist/static/loaders/LoaderSpin4Square.module.css.js.map +1 -1
- package/dist/static/timeline/Timeline.d.ts.map +1 -1
- package/dist/static/timeline/Timeline.js.map +1 -1
- package/dist/utils/HasGetOptions.d.ts.map +1 -1
- package/dist/utils/createLocalStore.d.ts.map +1 -1
- package/dist/utils/createLocalStore.js.map +1 -1
- package/dist/utils/createStoreObject.d.ts.map +1 -1
- package/dist/utils/createStoreObject.js.map +1 -1
- package/package.json +7 -6
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CheckBoolean.d.ts","sourceRoot":"","sources":["../../../ui/input/check/CheckBoolean.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAA;AACnE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,mCAAmC,CAAA;AAC7E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAA;AAC7D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAA;AACnE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAA;AACvD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAA;AAGvE,MAAM,WAAW,iBACf,SAAQ,SAAS,
|
|
1
|
+
{"version":3,"file":"CheckBoolean.d.ts","sourceRoot":"","sources":["../../../ui/input/check/CheckBoolean.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAA;AACnE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,mCAAmC,CAAA;AAC7E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAA;AAC7D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAA;AACnE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAA;AACvD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAA;AAGvE,MAAM,WAAW,iBACf,SAAQ,SAAS,EAAE,oBAAoB,EAAE,YAAY,EAAE,iBAAiB,EAAE,eAAe;IACzF,WAAW,EAAE,YAAY,CAAC,OAAO,CAAC,CAAA;IAClC,SAAS,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,MAAM,CAAA;IACrC,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB;AAED,wBAAgB,YAAY,CAAC,CAAC,EAAE,iBAAiB,kCA2ChD"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CheckBoolean.js","names":["buttonVariant","ButtonIcon","classMerge","SignalObject","MayHaveButtonVariant","MayHaveClass","MayHaveDisabled","MayHaveId","MayHaveInnerClass","mdiCheckboxBlankCircleOutline","mdiCheckboxMarkedCircle","CheckBooleanProps","valueSignal","valueText","value","optionClass","CheckBoolean","p","currentValue","get","_el$","_tmpl$","_el$2","firstChild","_$insert","_$createComponent","role","aria-selected","icon","onClick","set","variant","_$memo","filled","outline","class","innerClass","disabled","children","_$effect","_p$","_v$","id","_v$2","e","_$setAttribute","t","_$className","undefined"],"sources":["../../../ui/input/check/CheckBoolean.tsx"],"sourcesContent":["import { buttonVariant } from \"#ui/interactive/button/buttonCva.js\"\nimport { ButtonIcon } from \"#ui/interactive/button/ButtonIcon.jsx\"\nimport { classMerge } from \"#ui/utils/classMerge.js\"\nimport type { SignalObject } from \"#ui/utils/createSignalObject.js\"\nimport type { MayHaveButtonVariant } from \"#ui/utils/MayHaveButtonVariant.js\"\nimport type { MayHaveClass } from \"#ui/utils/MayHaveClass.js\"\nimport type { MayHaveDisabled } from \"#ui/utils/MayHaveDisabled.js\"\nimport type { MayHaveId } from \"#ui/utils/MayHaveId.js\"\nimport type { MayHaveInnerClass } from \"#ui/utils/MayHaveInnerClass.js\"\nimport { mdiCheckboxBlankCircleOutline, mdiCheckboxMarkedCircle } from \"@mdi/js\"\n\nexport interface CheckBooleanProps\n extends MayHaveId
|
|
1
|
+
{"version":3,"file":"CheckBoolean.js","names":["buttonVariant","ButtonIcon","classMerge","SignalObject","MayHaveButtonVariant","MayHaveClass","MayHaveDisabled","MayHaveId","MayHaveInnerClass","mdiCheckboxBlankCircleOutline","mdiCheckboxMarkedCircle","CheckBooleanProps","valueSignal","valueText","value","optionClass","CheckBoolean","p","currentValue","get","_el$","_tmpl$","_el$2","firstChild","_$insert","_$createComponent","role","aria-selected","icon","onClick","set","variant","_$memo","filled","outline","class","innerClass","disabled","children","_$effect","_p$","_v$","id","_v$2","e","_$setAttribute","t","_$className","undefined"],"sources":["../../../ui/input/check/CheckBoolean.tsx"],"sourcesContent":["import { buttonVariant } from \"#ui/interactive/button/buttonCva.js\"\nimport { ButtonIcon } from \"#ui/interactive/button/ButtonIcon.jsx\"\nimport { classMerge } from \"#ui/utils/classMerge.js\"\nimport type { SignalObject } from \"#ui/utils/createSignalObject.js\"\nimport type { MayHaveButtonVariant } from \"#ui/utils/MayHaveButtonVariant.js\"\nimport type { MayHaveClass } from \"#ui/utils/MayHaveClass.js\"\nimport type { MayHaveDisabled } from \"#ui/utils/MayHaveDisabled.js\"\nimport type { MayHaveId } from \"#ui/utils/MayHaveId.js\"\nimport type { MayHaveInnerClass } from \"#ui/utils/MayHaveInnerClass.js\"\nimport { mdiCheckboxBlankCircleOutline, mdiCheckboxMarkedCircle } from \"@mdi/js\"\n\nexport interface CheckBooleanProps\n extends MayHaveId, MayHaveButtonVariant, MayHaveClass, MayHaveInnerClass, MayHaveDisabled {\n valueSignal: SignalObject<boolean>\n valueText: (value: boolean) => string\n optionClass?: string\n}\n\nexport function CheckBoolean(p: CheckBooleanProps) {\n const currentValue = () => p.valueSignal.get()\n\n return (\n <div\n id={p.id}\n class={classMerge(\n \"group border border-input\",\n \"px-2 py-2\",\n \"ring-offset-background\",\n \"rounded-md\",\n \"focus-within:ring-2 focus-within:ring-ring focus-within:ring-offset-2\",\n \"flex flex-col justify-center gap-1\", // layout\n p.class,\n )}\n >\n <div class=\"flex gap-2\">\n <ButtonIcon\n role=\"option\"\n aria-selected={!currentValue()}\n icon={!currentValue() ? mdiCheckboxMarkedCircle : mdiCheckboxBlankCircleOutline}\n onClick={() => p.valueSignal.set(false)}\n variant={!currentValue() ? (p.variant ?? buttonVariant.filled) : buttonVariant.outline}\n class={classMerge(\"justify-start text-left\", p.innerClass, p.optionClass)}\n disabled={p.disabled}\n >\n {p.valueText(false)}\n </ButtonIcon>\n\n <ButtonIcon\n role=\"option\"\n aria-selected={currentValue()}\n icon={currentValue() ? mdiCheckboxMarkedCircle : mdiCheckboxBlankCircleOutline}\n onClick={() => p.valueSignal.set(true)}\n variant={currentValue() ? (p.variant ?? buttonVariant.filled) : buttonVariant.outline}\n class={classMerge(\"justify-start text-left\", p.innerClass, p.optionClass)}\n disabled={p.disabled}\n >\n {p.valueText(true)}\n </ButtonIcon>\n </div>\n </div>\n )\n}\n"],"mappings":";;;;;;;AAkBA,SAAgBgB,aAAaC,GAAsB;CACjD,MAAMC,qBAAqBD,EAAEL,YAAYO,KAAK;AAE9C,eAAA;EAAA,IAAAC,OAAAC,QAAA,EAAAC,QAAAF,KAAAG;AAAAC,SAAAF,OAAAG,gBAcOxB,YAAU;GACTyB,MAAI;GAAA,KAAA,mBAAA;AAAA,WACW,CAACR,cAAc;;GAAA,IAC9BU,OAAI;AAAA,WAAE,CAACV,cAAc,GAAGR,0BAA0BD;;GAClDoB,eAAeZ,EAAEL,YAAYkB,IAAI,MAAM;GAAA,IACvCC,UAAO;AAAA,WAAEC,WAAA,CAAA,CAAA,CAACd,cAAc,CAAA,EAAA,GAAID,EAAEc,WAAW/B,cAAciC,SAAUjC,cAAckC;;GAAO,KAAA,WAAA;AAAA,WAC/EhC,WAAW,2BAA2Be,EAAEmB,YAAYnB,EAAEF,YAAY;;GAAA,IACzEsB,WAAQ;AAAA,WAAEpB,EAAEoB;;GAAQ,IAAAC,WAAA;AAAA,WAEnBrB,EAAEJ,UAAU,MAAM;;GAAA,CAAA,EAAA,KAAA;AAAAW,SAAAF,OAAAG,gBAGpBxB,YAAU;GACTyB,MAAI;GAAA,KAAA,mBAAA;AAAA,WACWR,cAAc;;GAAA,IAC7BU,OAAI;AAAA,WAAEV,cAAc,GAAGR,0BAA0BD;;GACjDoB,eAAeZ,EAAEL,YAAYkB,IAAI,KAAK;GAAA,IACtCC,UAAO;AAAA,WAAEC,WAAA,CAAA,CAAAd,cAAc,CAAA,EAAA,GAAID,EAAEc,WAAW/B,cAAciC,SAAUjC,cAAckC;;GAAO,KAAA,WAAA;AAAA,WAC9EhC,WAAW,2BAA2Be,EAAEmB,YAAYnB,EAAEF,YAAY;;GAAA,IACzEsB,WAAQ;AAAA,WAAEpB,EAAEoB;;GAAQ,IAAAC,WAAA;AAAA,WAEnBrB,EAAEJ,UAAU,KAAK;;GAAA,CAAA,EAAA,KAAA;AAAA0B,UAAAC,QAAA;GAAA,IAAAC,MAjClBxB,EAAEyB,IAAEC,OACDzC,WACL,6BACA,aACA,0BACA,cACA,yEACA,sCACAe,EAAEkB,MACH;AAAAM,WAAAD,IAAAI,KAAAC,aAAAzB,MAAA,MAAAoB,IAAAI,IAAAH,IAAA;AAAAE,YAAAH,IAAAM,KAAAC,UAAA3B,MAAAoB,IAAAM,IAAAH,KAAA;AAAA,UAAAH;KAAA;GAAAI,GAAAI,KAAAA;GAAAF,GAAAE,KAAAA;GAAA,CAAA;AAAA,SAAA5B;KAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CheckBooleanSingle.d.ts","sourceRoot":"","sources":["../../../ui/input/check/CheckBooleanSingle.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAA;AACnE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,mCAAmC,CAAA;AAC7E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAA;AAC7D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAA;AACnE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAA;AACvD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAA;AAGvE,MAAM,WAAW,uBACf,SAAQ,SAAS,
|
|
1
|
+
{"version":3,"file":"CheckBooleanSingle.d.ts","sourceRoot":"","sources":["../../../ui/input/check/CheckBooleanSingle.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAA;AACnE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,mCAAmC,CAAA;AAC7E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAA;AAC7D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAA;AACnE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAA;AACvD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAA;AAGvE,MAAM,WAAW,uBACf,SAAQ,SAAS,EAAE,oBAAoB,EAAE,YAAY,EAAE,iBAAiB,EAAE,eAAe;IACzF,WAAW,EAAE,YAAY,CAAC,OAAO,CAAC,CAAA;IAClC,SAAS,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,MAAM,CAAA;IACrC,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB;AAED,wBAAgB,kBAAkB,CAAC,CAAC,EAAE,uBAAuB,kCA8B5D"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CheckBooleanSingle.js","names":["buttonVariant","ButtonIcon","classMerge","SignalObject","MayHaveButtonVariant","MayHaveClass","MayHaveDisabled","MayHaveId","MayHaveInnerClass","mdiCheckboxBlankCircleOutline","mdiCheckboxMarkedCircle","CheckBooleanSingleProps","valueSignal","valueText","value","optionClass","CheckBooleanSingle","p","label","get","isSelected","_el$","_tmpl$","_$insert","_$createComponent","role","aria-selected","icon","onClick","toggleOption","variant","filled","class","innerClass","disabled","children","_$effect","_p$","_v$","id","_v$2","e","_$setAttribute","t","_$className","undefined","set"],"sources":["../../../ui/input/check/CheckBooleanSingle.tsx"],"sourcesContent":["import { buttonVariant } from \"#ui/interactive/button/buttonCva.js\"\nimport { ButtonIcon } from \"#ui/interactive/button/ButtonIcon.jsx\"\nimport { classMerge } from \"#ui/utils/classMerge.js\"\nimport type { SignalObject } from \"#ui/utils/createSignalObject.js\"\nimport type { MayHaveButtonVariant } from \"#ui/utils/MayHaveButtonVariant.js\"\nimport type { MayHaveClass } from \"#ui/utils/MayHaveClass.js\"\nimport type { MayHaveDisabled } from \"#ui/utils/MayHaveDisabled.js\"\nimport type { MayHaveId } from \"#ui/utils/MayHaveId.js\"\nimport type { MayHaveInnerClass } from \"#ui/utils/MayHaveInnerClass.js\"\nimport { mdiCheckboxBlankCircleOutline, mdiCheckboxMarkedCircle } from \"@mdi/js\"\n\nexport interface CheckBooleanSingleProps\n extends MayHaveId
|
|
1
|
+
{"version":3,"file":"CheckBooleanSingle.js","names":["buttonVariant","ButtonIcon","classMerge","SignalObject","MayHaveButtonVariant","MayHaveClass","MayHaveDisabled","MayHaveId","MayHaveInnerClass","mdiCheckboxBlankCircleOutline","mdiCheckboxMarkedCircle","CheckBooleanSingleProps","valueSignal","valueText","value","optionClass","CheckBooleanSingle","p","label","get","isSelected","_el$","_tmpl$","_$insert","_$createComponent","role","aria-selected","icon","onClick","toggleOption","variant","filled","class","innerClass","disabled","children","_$effect","_p$","_v$","id","_v$2","e","_$setAttribute","t","_$className","undefined","set"],"sources":["../../../ui/input/check/CheckBooleanSingle.tsx"],"sourcesContent":["import { buttonVariant } from \"#ui/interactive/button/buttonCva.js\"\nimport { ButtonIcon } from \"#ui/interactive/button/ButtonIcon.jsx\"\nimport { classMerge } from \"#ui/utils/classMerge.js\"\nimport type { SignalObject } from \"#ui/utils/createSignalObject.js\"\nimport type { MayHaveButtonVariant } from \"#ui/utils/MayHaveButtonVariant.js\"\nimport type { MayHaveClass } from \"#ui/utils/MayHaveClass.js\"\nimport type { MayHaveDisabled } from \"#ui/utils/MayHaveDisabled.js\"\nimport type { MayHaveId } from \"#ui/utils/MayHaveId.js\"\nimport type { MayHaveInnerClass } from \"#ui/utils/MayHaveInnerClass.js\"\nimport { mdiCheckboxBlankCircleOutline, mdiCheckboxMarkedCircle } from \"@mdi/js\"\n\nexport interface CheckBooleanSingleProps\n extends MayHaveId, MayHaveButtonVariant, MayHaveClass, MayHaveInnerClass, MayHaveDisabled {\n valueSignal: SignalObject<boolean>\n valueText: (value: boolean) => string\n optionClass?: string\n}\n\nexport function CheckBooleanSingle(p: CheckBooleanSingleProps) {\n const label = () => p.valueText(p.valueSignal.get())\n const isSelected = () => p.valueSignal.get()\n\n return (\n <div\n id={p.id}\n class={classMerge(\n \"group border border-input\",\n \"px-2 py-2\",\n \"ring-offset-background\",\n \"rounded-md\",\n \"focus-within:ring-2 focus-within:ring-ring focus-within:ring-offset-2\",\n \"flex flex-col justify-center\", // layout\n p.class,\n )}\n >\n <ButtonIcon\n role=\"option\"\n aria-selected={isSelected()}\n icon={isSelected() ? mdiCheckboxMarkedCircle : mdiCheckboxBlankCircleOutline}\n onClick={() => toggleOption(p)}\n variant={p.variant ?? buttonVariant.filled}\n class={classMerge(\"justify-start text-left\", p.innerClass, p.optionClass)}\n disabled={p.disabled}\n >\n {label()}\n </ButtonIcon>\n </div>\n )\n}\n\nfunction toggleOption(p: CheckBooleanSingleProps) {\n p.valueSignal.set(!p.valueSignal.get())\n}\n"],"mappings":";;;;;;;AAkBA,SAAgBgB,mBAAmBC,GAA4B;CAC7D,MAAMC,cAAcD,EAAEJ,UAAUI,EAAEL,YAAYO,KAAK,CAAC;CACpD,MAAMC,mBAAmBH,EAAEL,YAAYO,KAAK;AAE5C,eAAA;EAAA,IAAAE,OAAAC,QAAA;AAAAC,SAAAF,MAAAG,gBAaKvB,YAAU;GACTwB,MAAI;GAAA,KAAA,mBAAA;AAAA,WACWL,YAAY;;GAAA,IAC3BO,OAAI;AAAA,WAAEP,YAAY,GAAGV,0BAA0BD;;GAC/CmB,eAAeC,aAAaZ,EAAE;GAAA,IAC9Ba,UAAO;AAAA,WAAEb,EAAEa,WAAW9B,cAAc+B;;GAAM,KAAA,WAAA;AAAA,WACnC7B,WAAW,2BAA2Be,EAAEgB,YAAYhB,EAAEF,YAAY;;GAAA,IACzEmB,WAAQ;AAAA,WAAEjB,EAAEiB;;GAAQ,IAAAC,WAAA;AAAA,WAEnBjB,OAAO;;GAAA,CAAA,CAAA;AAAAkB,UAAAC,QAAA;GAAA,IAAAC,MApBNrB,EAAEsB,IAAEC,OACDtC,WACL,6BACA,aACA,0BACA,cACA,yEACA,gCACAe,EAAEe,MACH;AAAAM,WAAAD,IAAAI,KAAAC,aAAArB,MAAA,MAAAgB,IAAAI,IAAAH,IAAA;AAAAE,YAAAH,IAAAM,KAAAC,UAAAvB,MAAAgB,IAAAM,IAAAH,KAAA;AAAA,UAAAH;KAAA;GAAAI,GAAAI,KAAAA;GAAAF,GAAAE,KAAAA;GAAA,CAAA;AAAA,SAAAxB;KAAA;;AAiBP,SAASQ,aAAaZ,GAA4B;AAChDA,GAAEL,YAAYkC,IAAI,CAAC7B,EAAEL,YAAYO,KAAK,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CheckMultiple.js","names":["classesTextMuted","buttonVariant","ButtonIcon","classesGridCols3xl","classArr","classMerge","SignalObject","MayHaveButtonVariant","MayHaveClass","MayHaveDisabled","MayHaveId","MayHaveInnerClass","mdiCheckboxBlankCircleOutline","mdiCheckboxMarkedCircle","For","Show","splitProps","CheckMultipleProps","valueSignal","T","getOptions","valueText","value","valueTextClass","valueTextSubtitle","valueTextSubtitleClass","optionClass","CheckMultiple","p","local","others","_el$","_tmpl$","_$insert","_$createComponent","OptionList","_$mergeProps","variant","innerClass","_$effect","_p$","_v$","id","_v$2","class","e","_$setAttribute","t","_$className","undefined","_el$2","each","children","option","CheckOption","disabled","length","CheckOptionProps","label","subtitle","isSelected","get","includes","role","aria-selected","icon","onClick","toggleOption","filled","_el$3","_tmpl$2","_el$4","firstChild","when","_el$5","_tmpl$3","optionAmount","base","hasOption","optionRemove","optionAdd","newValues","filter","v","set","sort","a","b","localeCompare"],"sources":["../../../ui/input/check/CheckMultiple.tsx"],"sourcesContent":["import { classesTextMuted } from \"#ui/classes/classesTextMuted.js\"\nimport { buttonVariant } from \"#ui/interactive/button/buttonCva.js\"\nimport { ButtonIcon } from \"#ui/interactive/button/ButtonIcon.jsx\"\nimport { classesGridCols3xl } from \"#ui/static/grid/classesGridCols.js\"\nimport { classArr } from \"#ui/utils/classArr.js\"\nimport { classMerge } from \"#ui/utils/classMerge.js\"\nimport type { SignalObject } from \"#ui/utils/createSignalObject.js\"\nimport type { MayHaveButtonVariant } from \"#ui/utils/MayHaveButtonVariant.js\"\nimport type { MayHaveClass } from \"#ui/utils/MayHaveClass.js\"\nimport type { MayHaveDisabled } from \"#ui/utils/MayHaveDisabled.js\"\nimport type { MayHaveId } from \"#ui/utils/MayHaveId.js\"\nimport type { MayHaveInnerClass } from \"#ui/utils/MayHaveInnerClass.js\"\nimport { mdiCheckboxBlankCircleOutline, mdiCheckboxMarkedCircle } from \"@mdi/js\"\nimport { For, Show, splitProps } from \"solid-js\"\n\nexport interface CheckMultipleProps<T extends string>\n extends MayHaveId, MayHaveButtonVariant, MayHaveClass, MayHaveInnerClass, MayHaveDisabled {\n // state\n valueSignal: SignalObject<T[]>\n getOptions: () => T[]\n valueText?: (value: T) => string\n valueTextClass?: string\n valueTextSubtitle?: (value: T) => string | undefined\n valueTextSubtitleClass?: string\n // styling\n optionClass?: string\n}\n\nexport function CheckMultiple<T extends string = string>(p: CheckMultipleProps<T>) {\n const [local, others] = splitProps(p, [\"class\"])\n return (\n <div\n id={p.id}\n class={classArr(\n \"group border border-input\",\n \"px-2 py-2\",\n \"ring-offset-background\",\n \"rounded-md\",\n \"focus-within:ring-2 focus-within:ring-ring focus-within:ring-offset-2\",\n \"flex flex-col justify-center gap-1\", // layout\n local.class,\n )}\n >\n <OptionList\n {...others}\n valueSignal={p.valueSignal}\n getOptions={p.getOptions}\n valueText={p.valueText}\n valueTextClass={p.valueTextClass}\n valueTextSubtitle={p.valueTextSubtitle}\n valueTextSubtitleClass={p.valueTextSubtitleClass}\n variant={p.variant}\n optionClass={p.optionClass}\n innerClass={p.innerClass}\n />\n </div>\n )\n}\n\nfunction OptionList<T extends string = string>(p: CheckMultipleProps<T>) {\n return (\n <div class={innerClass(p.getOptions().length, p.innerClass)}>\n <For each={p.getOptions()}>\n {(option) => (\n <CheckOption\n option={option}\n valueSignal={p.valueSignal}\n valueText={p.valueText}\n valueTextClass={p.valueTextClass}\n valueTextSubtitle={p.valueTextSubtitle}\n valueTextSubtitleClass={p.valueTextSubtitleClass}\n optionClass={p.optionClass}\n variant={p.variant}\n disabled={p.disabled}\n />\n )}\n </For>\n </div>\n )\n}\n\ninterface CheckOptionProps<T extends string
|
|
1
|
+
{"version":3,"file":"CheckMultiple.js","names":["classesTextMuted","buttonVariant","ButtonIcon","classesGridCols3xl","classArr","classMerge","SignalObject","MayHaveButtonVariant","MayHaveClass","MayHaveDisabled","MayHaveId","MayHaveInnerClass","mdiCheckboxBlankCircleOutline","mdiCheckboxMarkedCircle","For","Show","splitProps","CheckMultipleProps","valueSignal","T","getOptions","valueText","value","valueTextClass","valueTextSubtitle","valueTextSubtitleClass","optionClass","CheckMultiple","p","local","others","_el$","_tmpl$","_$insert","_$createComponent","OptionList","_$mergeProps","variant","innerClass","_$effect","_p$","_v$","id","_v$2","class","e","_$setAttribute","t","_$className","undefined","_el$2","each","children","option","CheckOption","disabled","length","CheckOptionProps","label","subtitle","isSelected","get","includes","role","aria-selected","icon","onClick","toggleOption","filled","_el$3","_tmpl$2","_el$4","firstChild","when","_el$5","_tmpl$3","optionAmount","base","hasOption","optionRemove","optionAdd","newValues","filter","v","set","sort","a","b","localeCompare"],"sources":["../../../ui/input/check/CheckMultiple.tsx"],"sourcesContent":["import { classesTextMuted } from \"#ui/classes/classesTextMuted.js\"\nimport { buttonVariant } from \"#ui/interactive/button/buttonCva.js\"\nimport { ButtonIcon } from \"#ui/interactive/button/ButtonIcon.jsx\"\nimport { classesGridCols3xl } from \"#ui/static/grid/classesGridCols.js\"\nimport { classArr } from \"#ui/utils/classArr.js\"\nimport { classMerge } from \"#ui/utils/classMerge.js\"\nimport type { SignalObject } from \"#ui/utils/createSignalObject.js\"\nimport type { MayHaveButtonVariant } from \"#ui/utils/MayHaveButtonVariant.js\"\nimport type { MayHaveClass } from \"#ui/utils/MayHaveClass.js\"\nimport type { MayHaveDisabled } from \"#ui/utils/MayHaveDisabled.js\"\nimport type { MayHaveId } from \"#ui/utils/MayHaveId.js\"\nimport type { MayHaveInnerClass } from \"#ui/utils/MayHaveInnerClass.js\"\nimport { mdiCheckboxBlankCircleOutline, mdiCheckboxMarkedCircle } from \"@mdi/js\"\nimport { For, Show, splitProps } from \"solid-js\"\n\nexport interface CheckMultipleProps<T extends string>\n extends MayHaveId, MayHaveButtonVariant, MayHaveClass, MayHaveInnerClass, MayHaveDisabled {\n // state\n valueSignal: SignalObject<T[]>\n getOptions: () => T[]\n valueText?: (value: T) => string\n valueTextClass?: string\n valueTextSubtitle?: (value: T) => string | undefined\n valueTextSubtitleClass?: string\n // styling\n optionClass?: string\n}\n\nexport function CheckMultiple<T extends string = string>(p: CheckMultipleProps<T>) {\n const [local, others] = splitProps(p, [\"class\"])\n return (\n <div\n id={p.id}\n class={classArr(\n \"group border border-input\",\n \"px-2 py-2\",\n \"ring-offset-background\",\n \"rounded-md\",\n \"focus-within:ring-2 focus-within:ring-ring focus-within:ring-offset-2\",\n \"flex flex-col justify-center gap-1\", // layout\n local.class,\n )}\n >\n <OptionList\n {...others}\n valueSignal={p.valueSignal}\n getOptions={p.getOptions}\n valueText={p.valueText}\n valueTextClass={p.valueTextClass}\n valueTextSubtitle={p.valueTextSubtitle}\n valueTextSubtitleClass={p.valueTextSubtitleClass}\n variant={p.variant}\n optionClass={p.optionClass}\n innerClass={p.innerClass}\n />\n </div>\n )\n}\n\nfunction OptionList<T extends string = string>(p: CheckMultipleProps<T>) {\n return (\n <div class={innerClass(p.getOptions().length, p.innerClass)}>\n <For each={p.getOptions()}>\n {(option) => (\n <CheckOption\n option={option}\n valueSignal={p.valueSignal}\n valueText={p.valueText}\n valueTextClass={p.valueTextClass}\n valueTextSubtitle={p.valueTextSubtitle}\n valueTextSubtitleClass={p.valueTextSubtitleClass}\n optionClass={p.optionClass}\n variant={p.variant}\n disabled={p.disabled}\n />\n )}\n </For>\n </div>\n )\n}\n\ninterface CheckOptionProps<T extends string> extends MayHaveButtonVariant, MayHaveDisabled, MayHaveInnerClass {\n option: T\n valueSignal: SignalObject<T[]>\n valueText?: (value: T) => string\n valueTextClass?: string\n valueTextSubtitle?: (value: T) => string | undefined\n valueTextSubtitleClass?: string\n optionClass?: string\n}\n\nfunction CheckOption<T extends string>(p: CheckOptionProps<T>) {\n const label = () => (p.valueText ? p.valueText(p.option) : p.option)\n const subtitle = () => (p.valueTextSubtitle ? p.valueTextSubtitle(p.option) : undefined)\n const isSelected = () => p.valueSignal.get().includes(p.option)\n\n return (\n <ButtonIcon\n role=\"option\"\n aria-selected={isSelected()}\n icon={isSelected() ? mdiCheckboxMarkedCircle : mdiCheckboxBlankCircleOutline}\n // iconRight={isSelected() ? mdiCheckboxMarkedCircle : mdiCheckboxBlankCircleOutline}\n onClick={() => toggleOption(p)}\n variant={p.variant ?? buttonVariant.filled}\n class={classMerge(\"justify-start text-left\", p.optionClass)}\n disabled={p.disabled}\n >\n <span class=\"flex flex-col items-start\">\n <span class={p.valueTextClass}>{label()}</span>\n <Show when={subtitle()}>\n {(subtitle) => <span class={classMerge(classesTextMuted, p.valueTextSubtitleClass)}>{subtitle()}</span>}\n </Show>\n </span>\n </ButtonIcon>\n )\n}\n\nfunction innerClass(optionAmount: number, innerClass?: string): string {\n if (innerClass) return innerClass\n if (optionAmount <= 0) return \"\"\n const base = \"gap-x-2 gap-y-1\"\n if (optionAmount <= 5) return classArr(\"grid grid-cols-1\", base)\n if (optionAmount <= 9) return classArr(\"grid grid-cols-2\", base)\n return classArr(classesGridCols3xl, base)\n}\n\nfunction toggleOption<T extends string>(p: CheckOptionProps<T>) {\n const hasOption = p.valueSignal.get().includes(p.option)\n if (hasOption) {\n optionRemove(p)\n } else {\n optionAdd(p)\n }\n}\n\nfunction optionRemove<T extends string>(p: CheckOptionProps<T>) {\n const newValues = p.valueSignal.get().filter((v) => v !== p.option)\n p.valueSignal.set(newValues)\n}\n\nfunction optionAdd<T extends string>(p: CheckOptionProps<T>) {\n const newValues = [...p.valueSignal.get(), p.option]\n newValues.sort((a, b) => a.localeCompare(b))\n p.valueSignal.set(newValues)\n}\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"searchInputSignal.d.ts","sourceRoot":"","sources":["../../../ui/input/search/searchInputSignal.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"searchInputSignal.d.ts","sourceRoot":"","sources":["../../../ui/input/search/searchInputSignal.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,iBAAiB,gEAAyB,CAAA;AAEvD,eAAO,MAAM,0BAA0B,qDAAsC,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"searchInputSignal.js","names":[],"sources":["../../../ui/input/search/searchInputSignal.ts"],"sourcesContent":["import { createSignalObject } from \"#ui/utils/createSignalObject.js\"\nimport { scheduleIdle } from \"@solid-primitives/scheduled\"\n\
|
|
1
|
+
{"version":3,"file":"searchInputSignal.js","names":[],"sources":["../../../ui/input/search/searchInputSignal.ts"],"sourcesContent":["import { createSignalObject } from \"#ui/utils/createSignalObject.js\"\nimport { scheduleIdle } from \"@solid-primitives/scheduled\"\n\nexport const searchInputSignal = createSignalObject(\"\")\n\nexport const searchInputDebouncedSignal = scheduleIdle(searchInputSignal.get)\n// export const searchInputDebouncedSignal = createMemo(() => {\n// return scheduleIdle(searchInputSignal.get)\n// })\n"],"mappings":";;;AAGA,IAAa,oBAAoB,mBAAmB,GAAG;AAEvD,IAAa,6BAA6B,aAAa,kBAAkB,IAAI"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SelectMultiple.d.ts","sourceRoot":"","sources":["../../../ui/input/select/SelectMultiple.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,yCAAyC,CAAA;AAIlF,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,0CAA0C,CAAA;AAMjF,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAC/D,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,wCAAwC,CAAA;AACvF,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAA;AACjE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAA;AACnE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAA;AAC7D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAA;AACnE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAA;AACvD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAA;AAKvE;;GAEG;AACH,MAAM,WAAW,mBACf,
|
|
1
|
+
{"version":3,"file":"SelectMultiple.d.ts","sourceRoot":"","sources":["../../../ui/input/select/SelectMultiple.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,yCAAyC,CAAA;AAIlF,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,0CAA0C,CAAA;AAMjF,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAC/D,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,wCAAwC,CAAA;AACvF,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAA;AACjE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAA;AACnE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAA;AAC7D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAA;AACnE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAA;AACvD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAA;AAKvE;;GAEG;AACH,MAAM,WAAW,mBACf,SACE,yBAAyB,EACzB,aAAa,EACb,gBAAgB,EAChB,SAAS,EACT,YAAY,EACZ,iBAAiB,EACjB,eAAe,EACf,eAAe;IACjB,WAAW,EAAE,iBAAiB,CAAA;IAC9B,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,KAAK,CAAC,EAAE,mBAAmB,CAAA;CAC5B;AAED,wBAAgB,cAAc,CAAC,CAAC,EAAE,mBAAmB,kCAuCpD"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SelectMultiple.js","names":["SelectMultipleTexts","selectMultipleTextDefault","buttonVariant","ButtonIcon","CorvuPopoverProps","CorvuPopover","classesGridCols3xl","classArr","classMerge","SignalObject","HasGetOptions","HasValueSignalStringArray","MayHaveValueText","MayHaveChildren","MayHaveClass","MayHaveDisabled","MayHaveId","MayHaveInnerClass","mdiCheck","mdiClose","mdiPlus","Key","For","mergeProps","SelectMultipleProps","buttonProps","textNoEntries","textAddEntry","addEntryClass","noItemsClass","listOptionClass","texts","SelectMultiple","p","buttonClass","class","icon","children","addEntry","disabled","_el$","_tmpl$","_$insert","_$createComponent","SelectedValues","valueSignal","valueText","_$mergeProps","OptionList","id","getOptions","innerClass","_$effect","_p$","_v$","_v$2","e","_$setAttribute","t","_$className","undefined","SelectedValuesProps","value","_el$2","_tmpl$2","each","get","by","item","fallback","NoItems","SelectedValue","option","MultiselectOptionState","SelectedValueProps","label","_el$3","_tmpl$3","variant","filled","iconRight","data-value","onMouseDown","_e","optionRemove","onClick","title","removeX","OptionListProps","_el$4","_tmpl$4","index","ListOption","getInnerClass","length","optionAmount","base","ListOptionProps","role","aria-selected","optionIsSelected","toggleOption","ghost","hasOption","optionAdd","newValues","filter","v","set","sort","a","b","localeCompare","includes","NoItemsProps","_el$5","noEntries"],"sources":["../../../ui/input/select/SelectMultiple.tsx"],"sourcesContent":["import type { SelectMultipleTexts } from \"#ui/input/select/SelectMultipleTexts.js\"\nimport { selectMultipleTextDefault } from \"#ui/input/select/SelectMultipleTexts.js\"\nimport { buttonVariant } from \"#ui/interactive/button/buttonCva.js\"\nimport { ButtonIcon } from \"#ui/interactive/button/ButtonIcon.jsx\"\nimport type { CorvuPopoverProps } from \"#ui/interactive/popover/CorvuPopover.jsx\"\nimport { CorvuPopover } from \"#ui/interactive/popover/CorvuPopover.jsx\"\nimport { classesGridCols3xl } from \"#ui/static/grid/classesGridCols.js\"\nimport { classArr } from \"#ui/utils/classArr.js\"\nimport { classMerge } from \"#ui/utils/classMerge.js\"\nimport type { SignalObject } from \"#ui/utils/createSignalObject.js\"\nimport type { HasGetOptions } from \"#ui/utils/HasGetOptions.js\"\nimport type { HasValueSignalStringArray } from \"#ui/utils/HasValueSignalStringArray.js\"\nimport type { MayHaveValueText } from \"#ui/utils/HasValueText.js\"\nimport type { MayHaveChildren } from \"#ui/utils/MayHaveChildren.js\"\nimport type { MayHaveClass } from \"#ui/utils/MayHaveClass.js\"\nimport type { MayHaveDisabled } from \"#ui/utils/MayHaveDisabled.js\"\nimport type { MayHaveId } from \"#ui/utils/MayHaveId.js\"\nimport type { MayHaveInnerClass } from \"#ui/utils/MayHaveInnerClass.js\"\nimport { mdiCheck, mdiClose, mdiPlus } from \"@mdi/js\"\nimport { Key } from \"@solid-primitives/keyed\"\nimport { For, mergeProps } from \"solid-js\"\n\n/**\n * https://github.com/radix-ui/primitives/blob/main/packages/react/checkbox/src/Checkbox.tsx\n */\nexport interface SelectMultipleProps\n extends HasValueSignalStringArray,\n HasGetOptions,\n MayHaveValueText,\n MayHaveId,\n MayHaveClass,\n MayHaveInnerClass,\n MayHaveChildren,\n MayHaveDisabled {\n buttonProps: CorvuPopoverProps\n textNoEntries?: string\n textAddEntry?: string\n addEntryClass?: string\n noItemsClass?: string\n listOptionClass?: string\n texts?: SelectMultipleTexts\n}\n\nexport function SelectMultiple(p: SelectMultipleProps) {\n const texts = p.texts ?? selectMultipleTextDefault\n\n const buttonClass = classMerge(p.addEntryClass, p.buttonProps.class)\n const buttonProps = mergeProps(p.buttonProps, {\n icon: mdiPlus,\n children: p.textAddEntry ?? texts.addEntry,\n class: buttonClass,\n disabled: p.disabled,\n })\n return (\n <div\n id={p.id}\n class={classArr(\n \"group border border-input\",\n \"px-2 py-2 text-sm\",\n \"ring-offset-background \",\n \"rounded-md\",\n \"focus-within:ring-2 focus-within:ring-ring focus-within:ring-offset-2\",\n \"flex flex-col items-center justify-center gap-1\", // layout\n p.class,\n )}\n >\n <SelectedValues valueSignal={p.valueSignal} valueText={p.valueText} noItemsClass={p.noItemsClass} texts={texts} />\n <CorvuPopover {...buttonProps}>\n <OptionList\n id={p.id}\n valueSignal={p.valueSignal}\n getOptions={p.getOptions}\n valueText={p.valueText}\n noItemsClass={p.noItemsClass}\n listOptionClass={p.listOptionClass}\n innerClass={p.innerClass}\n disabled={p.disabled}\n texts={texts}\n />\n </CorvuPopover>\n </div>\n )\n}\n\ninterface SelectedValuesProps {\n valueSignal: SignalObject<string[]>\n valueText?: (value: string) => string\n noItemsClass?: string\n texts: SelectMultipleTexts\n}\n\nfunction SelectedValues(p: SelectedValuesProps) {\n return (\n <ul class={\"flex flex-wrap gap-1 m-0 p-0 list-none\"}>\n <Key each={p.valueSignal.get()} by={(item) => item} fallback={<NoItems class={p.noItemsClass} texts={p.texts} />}>\n {(item) => (\n <SelectedValue option={item()} valueSignal={p.valueSignal} valueText={p.valueText} texts={p.texts} />\n )}\n </Key>\n </ul>\n )\n}\n\ninterface MultiselectOptionState {\n option: string\n valueSignal: SignalObject<string[]>\n valueText?: (value: string) => string\n}\n\ninterface SelectedValueProps extends MultiselectOptionState {\n texts: SelectMultipleTexts\n}\n\nfunction SelectedValue(p: SelectedValueProps) {\n const label = () => (p.valueText ? p.valueText(p.option) : p.option)\n return (\n <li class=\"contents\">\n <ButtonIcon\n variant={buttonVariant.filled}\n iconRight={mdiClose}\n class={\"text-sm px-2 py-1\"}\n data-value={p.option}\n onMouseDown={(_e) => optionRemove(p)}\n onClick={(_e) => optionRemove(p)}\n title={p.texts.removeX(label())}\n >\n {label()}\n </ButtonIcon>\n </li>\n )\n}\n\ninterface OptionListProps\n extends HasValueSignalStringArray,\n HasGetOptions,\n MayHaveValueText,\n MayHaveId,\n MayHaveInnerClass,\n MayHaveDisabled {\n noItemsClass?: string\n listOptionClass?: string\n texts: SelectMultipleTexts\n}\n\nfunction OptionList(p: OptionListProps) {\n return (\n <div role=\"listbox\" aria-multiselectable=\"true\" class={getInnerClass(p.getOptions().length, p.innerClass)}>\n <For each={p.getOptions()} fallback={<NoItems class={p.noItemsClass} texts={p.texts} />}>\n {(option, index) => (\n <ListOption\n id={p.id}\n option={option}\n index={index()}\n valueSignal={p.valueSignal}\n valueText={p.valueText}\n listOptionClass={p.listOptionClass}\n disabled={p.disabled}\n />\n )}\n </For>\n </div>\n )\n}\n\nfunction getInnerClass(optionAmount: number, innerClass?: string): string {\n if (innerClass) return innerClass\n if (optionAmount <= 0) return \"\"\n const base = \" gap-x-2 gap-y-1\"\n if (optionAmount <= 5) return `grid grid-cols-1${base}`\n if (optionAmount <= 9) return `grid grid-cols-2${base}`\n if (optionAmount > 9) return classesGridCols3xl + base\n return \"\"\n}\n\ninterface ListOptionProps extends MayHaveId, MultiselectOptionState, MayHaveDisabled {\n index: number\n listOptionClass?: string\n}\n\nfunction ListOption(p: ListOptionProps) {\n const label = () => (p.valueText ? p.valueText(p.option) : p.option)\n return (\n <ButtonIcon\n // id={`${p.id}-option-${p.index}`}\n role=\"option\"\n aria-selected={optionIsSelected(p)}\n iconRight={optionIsSelected(p) ? mdiCheck : undefined}\n onClick={() => {\n toggleOption(p)\n }}\n variant={buttonVariant.ghost}\n class={classMerge(\"justify-start\", p.listOptionClass)}\n disabled={p.disabled}\n >\n {label()}\n </ButtonIcon>\n )\n}\n\nfunction toggleOption(p: MultiselectOptionState) {\n const hasOption = optionIsSelected(p)\n if (hasOption) {\n return optionRemove(p)\n }\n return optionAdd(p)\n}\n\nfunction optionRemove(p: MultiselectOptionState) {\n const newValues = p.valueSignal.get().filter((v) => v !== p.option)\n p.valueSignal.set(newValues)\n}\n\nfunction optionAdd(p: MultiselectOptionState) {\n const newValues = [...p.valueSignal.get(), p.option]\n newValues.sort((a, b) => a.localeCompare(b))\n p.valueSignal.set(newValues)\n}\n\nfunction optionIsSelected(p: MultiselectOptionState) {\n return p.valueSignal.get().includes(p.option)\n}\n\ninterface NoItemsProps extends MayHaveClass {\n texts?: SelectMultipleTexts\n}\n\nfunction NoItems(p: NoItemsProps) {\n return (\n <div\n class={classMerge(\n \"py-2 px-3\",\n // button\n \"rounded-md ring-offset-background\", // rounded, rings\n \"border border-slate-200 dark:border-slate-700 dark:hover:bg-slate-900\", // border\n p.class,\n )}\n >\n {p.texts?.noEntries ?? \"No entries\"}\n </div>\n )\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"SelectMultiple.js","names":["SelectMultipleTexts","selectMultipleTextDefault","buttonVariant","ButtonIcon","CorvuPopoverProps","CorvuPopover","classesGridCols3xl","classArr","classMerge","SignalObject","HasGetOptions","HasValueSignalStringArray","MayHaveValueText","MayHaveChildren","MayHaveClass","MayHaveDisabled","MayHaveId","MayHaveInnerClass","mdiCheck","mdiClose","mdiPlus","Key","For","mergeProps","SelectMultipleProps","buttonProps","textNoEntries","textAddEntry","addEntryClass","noItemsClass","listOptionClass","texts","SelectMultiple","p","buttonClass","class","icon","children","addEntry","disabled","_el$","_tmpl$","_$insert","_$createComponent","SelectedValues","valueSignal","valueText","_$mergeProps","OptionList","id","getOptions","innerClass","_$effect","_p$","_v$","_v$2","e","_$setAttribute","t","_$className","undefined","SelectedValuesProps","value","_el$2","_tmpl$2","each","get","by","item","fallback","NoItems","SelectedValue","option","MultiselectOptionState","SelectedValueProps","label","_el$3","_tmpl$3","variant","filled","iconRight","data-value","onMouseDown","_e","optionRemove","onClick","title","removeX","OptionListProps","_el$4","_tmpl$4","index","ListOption","getInnerClass","length","optionAmount","base","ListOptionProps","role","aria-selected","optionIsSelected","toggleOption","ghost","hasOption","optionAdd","newValues","filter","v","set","sort","a","b","localeCompare","includes","NoItemsProps","_el$5","noEntries"],"sources":["../../../ui/input/select/SelectMultiple.tsx"],"sourcesContent":["import type { SelectMultipleTexts } from \"#ui/input/select/SelectMultipleTexts.js\"\nimport { selectMultipleTextDefault } from \"#ui/input/select/SelectMultipleTexts.js\"\nimport { buttonVariant } from \"#ui/interactive/button/buttonCva.js\"\nimport { ButtonIcon } from \"#ui/interactive/button/ButtonIcon.jsx\"\nimport type { CorvuPopoverProps } from \"#ui/interactive/popover/CorvuPopover.jsx\"\nimport { CorvuPopover } from \"#ui/interactive/popover/CorvuPopover.jsx\"\nimport { classesGridCols3xl } from \"#ui/static/grid/classesGridCols.js\"\nimport { classArr } from \"#ui/utils/classArr.js\"\nimport { classMerge } from \"#ui/utils/classMerge.js\"\nimport type { SignalObject } from \"#ui/utils/createSignalObject.js\"\nimport type { HasGetOptions } from \"#ui/utils/HasGetOptions.js\"\nimport type { HasValueSignalStringArray } from \"#ui/utils/HasValueSignalStringArray.js\"\nimport type { MayHaveValueText } from \"#ui/utils/HasValueText.js\"\nimport type { MayHaveChildren } from \"#ui/utils/MayHaveChildren.js\"\nimport type { MayHaveClass } from \"#ui/utils/MayHaveClass.js\"\nimport type { MayHaveDisabled } from \"#ui/utils/MayHaveDisabled.js\"\nimport type { MayHaveId } from \"#ui/utils/MayHaveId.js\"\nimport type { MayHaveInnerClass } from \"#ui/utils/MayHaveInnerClass.js\"\nimport { mdiCheck, mdiClose, mdiPlus } from \"@mdi/js\"\nimport { Key } from \"@solid-primitives/keyed\"\nimport { For, mergeProps } from \"solid-js\"\n\n/**\n * https://github.com/radix-ui/primitives/blob/main/packages/react/checkbox/src/Checkbox.tsx\n */\nexport interface SelectMultipleProps\n extends\n HasValueSignalStringArray,\n HasGetOptions,\n MayHaveValueText,\n MayHaveId,\n MayHaveClass,\n MayHaveInnerClass,\n MayHaveChildren,\n MayHaveDisabled {\n buttonProps: CorvuPopoverProps\n textNoEntries?: string\n textAddEntry?: string\n addEntryClass?: string\n noItemsClass?: string\n listOptionClass?: string\n texts?: SelectMultipleTexts\n}\n\nexport function SelectMultiple(p: SelectMultipleProps) {\n const texts = p.texts ?? selectMultipleTextDefault\n\n const buttonClass = classMerge(p.addEntryClass, p.buttonProps.class)\n const buttonProps = mergeProps(p.buttonProps, {\n icon: mdiPlus,\n children: p.textAddEntry ?? texts.addEntry,\n class: buttonClass,\n disabled: p.disabled,\n })\n return (\n <div\n id={p.id}\n class={classArr(\n \"group border border-input\",\n \"px-2 py-2 text-sm\",\n \"ring-offset-background \",\n \"rounded-md\",\n \"focus-within:ring-2 focus-within:ring-ring focus-within:ring-offset-2\",\n \"flex flex-col items-center justify-center gap-1\", // layout\n p.class,\n )}\n >\n <SelectedValues valueSignal={p.valueSignal} valueText={p.valueText} noItemsClass={p.noItemsClass} texts={texts} />\n <CorvuPopover {...buttonProps}>\n <OptionList\n id={p.id}\n valueSignal={p.valueSignal}\n getOptions={p.getOptions}\n valueText={p.valueText}\n noItemsClass={p.noItemsClass}\n listOptionClass={p.listOptionClass}\n innerClass={p.innerClass}\n disabled={p.disabled}\n texts={texts}\n />\n </CorvuPopover>\n </div>\n )\n}\n\ninterface SelectedValuesProps {\n valueSignal: SignalObject<string[]>\n valueText?: (value: string) => string\n noItemsClass?: string\n texts: SelectMultipleTexts\n}\n\nfunction SelectedValues(p: SelectedValuesProps) {\n return (\n <ul class={\"flex flex-wrap gap-1 m-0 p-0 list-none\"}>\n <Key each={p.valueSignal.get()} by={(item) => item} fallback={<NoItems class={p.noItemsClass} texts={p.texts} />}>\n {(item) => (\n <SelectedValue option={item()} valueSignal={p.valueSignal} valueText={p.valueText} texts={p.texts} />\n )}\n </Key>\n </ul>\n )\n}\n\ninterface MultiselectOptionState {\n option: string\n valueSignal: SignalObject<string[]>\n valueText?: (value: string) => string\n}\n\ninterface SelectedValueProps extends MultiselectOptionState {\n texts: SelectMultipleTexts\n}\n\nfunction SelectedValue(p: SelectedValueProps) {\n const label = () => (p.valueText ? p.valueText(p.option) : p.option)\n return (\n <li class=\"contents\">\n <ButtonIcon\n variant={buttonVariant.filled}\n iconRight={mdiClose}\n class={\"text-sm px-2 py-1\"}\n data-value={p.option}\n onMouseDown={(_e) => optionRemove(p)}\n onClick={(_e) => optionRemove(p)}\n title={p.texts.removeX(label())}\n >\n {label()}\n </ButtonIcon>\n </li>\n )\n}\n\ninterface OptionListProps\n extends HasValueSignalStringArray, HasGetOptions, MayHaveValueText, MayHaveId, MayHaveInnerClass, MayHaveDisabled {\n noItemsClass?: string\n listOptionClass?: string\n texts: SelectMultipleTexts\n}\n\nfunction OptionList(p: OptionListProps) {\n return (\n <div role=\"listbox\" aria-multiselectable=\"true\" class={getInnerClass(p.getOptions().length, p.innerClass)}>\n <For each={p.getOptions()} fallback={<NoItems class={p.noItemsClass} texts={p.texts} />}>\n {(option, index) => (\n <ListOption\n id={p.id}\n option={option}\n index={index()}\n valueSignal={p.valueSignal}\n valueText={p.valueText}\n listOptionClass={p.listOptionClass}\n disabled={p.disabled}\n />\n )}\n </For>\n </div>\n )\n}\n\nfunction getInnerClass(optionAmount: number, innerClass?: string): string {\n if (innerClass) return innerClass\n if (optionAmount <= 0) return \"\"\n const base = \" gap-x-2 gap-y-1\"\n if (optionAmount <= 5) return `grid grid-cols-1${base}`\n if (optionAmount <= 9) return `grid grid-cols-2${base}`\n if (optionAmount > 9) return classesGridCols3xl + base\n return \"\"\n}\n\ninterface ListOptionProps extends MayHaveId, MultiselectOptionState, MayHaveDisabled {\n index: number\n listOptionClass?: string\n}\n\nfunction ListOption(p: ListOptionProps) {\n const label = () => (p.valueText ? p.valueText(p.option) : p.option)\n return (\n <ButtonIcon\n // id={`${p.id}-option-${p.index}`}\n role=\"option\"\n aria-selected={optionIsSelected(p)}\n iconRight={optionIsSelected(p) ? mdiCheck : undefined}\n onClick={() => {\n toggleOption(p)\n }}\n variant={buttonVariant.ghost}\n class={classMerge(\"justify-start\", p.listOptionClass)}\n disabled={p.disabled}\n >\n {label()}\n </ButtonIcon>\n )\n}\n\nfunction toggleOption(p: MultiselectOptionState) {\n const hasOption = optionIsSelected(p)\n if (hasOption) {\n return optionRemove(p)\n }\n return optionAdd(p)\n}\n\nfunction optionRemove(p: MultiselectOptionState) {\n const newValues = p.valueSignal.get().filter((v) => v !== p.option)\n p.valueSignal.set(newValues)\n}\n\nfunction optionAdd(p: MultiselectOptionState) {\n const newValues = [...p.valueSignal.get(), p.option]\n newValues.sort((a, b) => a.localeCompare(b))\n p.valueSignal.set(newValues)\n}\n\nfunction optionIsSelected(p: MultiselectOptionState) {\n return p.valueSignal.get().includes(p.option)\n}\n\ninterface NoItemsProps extends MayHaveClass {\n texts?: SelectMultipleTexts\n}\n\nfunction NoItems(p: NoItemsProps) {\n return (\n <div\n class={classMerge(\n \"py-2 px-3\",\n // button\n \"rounded-md ring-offset-background\", // rounded, rings\n \"border border-slate-200 dark:border-slate-700 dark:hover:bg-slate-900\", // border\n p.class,\n )}\n >\n {p.texts?.noEntries ?? \"No entries\"}\n </div>\n )\n}\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SelectSingleNative.d.ts","sourceRoot":"","sources":["../../../ui/input/select/SelectSingleNative.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,6CAA6C,CAAA;AAG1F,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAC/D,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,mCAAmC,CAAA;AAC7E,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAA;AACjE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAA;AACnE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAA;AAC7D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAA;AACnE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAA;AAGvD,MAAM,MAAM,cAAc,GAAG,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,CAAA;AAEtD,MAAM,WAAW,uBACf,
|
|
1
|
+
{"version":3,"file":"SelectSingleNative.d.ts","sourceRoot":"","sources":["../../../ui/input/select/SelectSingleNative.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,6CAA6C,CAAA;AAG1F,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAC/D,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,mCAAmC,CAAA;AAC7E,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAA;AACjE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAA;AACnE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAA;AAC7D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAA;AACnE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAA;AAGvD,MAAM,MAAM,cAAc,GAAG,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,CAAA;AAEtD,MAAM,WAAW,uBACf,SACE,oBAAoB,EACpB,aAAa,EACb,gBAAgB,EAChB,YAAY,EACZ,SAAS,EACT,eAAe,EACf,eAAe;IACjB,KAAK,CAAC,EAAE,uBAAuB,CAAA;CAChC;AAED,wBAAgB,kBAAkB,CAAC,CAAC,EAAE,uBAAuB,kCAyB5D"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SelectSingleNative.js","names":["classesDisabledDirectly","SelectSingleNativeTexts","selectSingleNativeTextDefault","classArr","HasGetOptions","HasValueSignalString","MayHaveValueText","MayHaveChildren","MayHaveClass","MayHaveDisabled","MayHaveId","Key","StringStringFn","value","SelectSingleNativeProps","texts","SelectSingleNative","p","_el$","_tmpl$","addEventListener","e","onChange","_$insert","_$createComponent","each","getOptions","by","item","fallback","NoItems","children","getItem","SelectItem","itemValue","valueText","_$effect","_p$","_v$","id","_v$2","disabled","class","_v$3","_$setAttribute","t","_$className","a","undefined","valueSignal","get","Event","currentTarget","HTMLSelectElement","target","set","NoItemsProps","_el$2","_tmpl$2","noEntries","SelectItemProps","_el$3","_tmpl$3","getDisplayValue","hasValue"],"sources":["../../../ui/input/select/SelectSingleNative.tsx"],"sourcesContent":["import { classesDisabledDirectly } from \"#ui/classes/classesDisabledDirectly.js\"\nimport type { SelectSingleNativeTexts } from \"#ui/input/select/SelectSingleNativeTexts.js\"\nimport { selectSingleNativeTextDefault } from \"#ui/input/select/SelectSingleNativeTexts.js\"\nimport { classArr } from \"#ui/utils/classArr.js\"\nimport type { HasGetOptions } from \"#ui/utils/HasGetOptions.js\"\nimport type { HasValueSignalString } from \"#ui/utils/HasValueSignalString.js\"\nimport type { MayHaveValueText } from \"#ui/utils/HasValueText.js\"\nimport type { MayHaveChildren } from \"#ui/utils/MayHaveChildren.js\"\nimport type { MayHaveClass } from \"#ui/utils/MayHaveClass.js\"\nimport type { MayHaveDisabled } from \"#ui/utils/MayHaveDisabled.js\"\nimport type { MayHaveId } from \"#ui/utils/MayHaveId.js\"\nimport { Key } from \"@solid-primitives/keyed\"\n\nexport type StringStringFn = (value: string) => string\n\nexport interface SelectSingleNativeProps\n extends
|
|
1
|
+
{"version":3,"file":"SelectSingleNative.js","names":["classesDisabledDirectly","SelectSingleNativeTexts","selectSingleNativeTextDefault","classArr","HasGetOptions","HasValueSignalString","MayHaveValueText","MayHaveChildren","MayHaveClass","MayHaveDisabled","MayHaveId","Key","StringStringFn","value","SelectSingleNativeProps","texts","SelectSingleNative","p","_el$","_tmpl$","addEventListener","e","onChange","_$insert","_$createComponent","each","getOptions","by","item","fallback","NoItems","children","getItem","SelectItem","itemValue","valueText","_$effect","_p$","_v$","id","_v$2","disabled","class","_v$3","_$setAttribute","t","_$className","a","undefined","valueSignal","get","Event","currentTarget","HTMLSelectElement","target","set","NoItemsProps","_el$2","_tmpl$2","noEntries","SelectItemProps","_el$3","_tmpl$3","getDisplayValue","hasValue"],"sources":["../../../ui/input/select/SelectSingleNative.tsx"],"sourcesContent":["import { classesDisabledDirectly } from \"#ui/classes/classesDisabledDirectly.js\"\nimport type { SelectSingleNativeTexts } from \"#ui/input/select/SelectSingleNativeTexts.js\"\nimport { selectSingleNativeTextDefault } from \"#ui/input/select/SelectSingleNativeTexts.js\"\nimport { classArr } from \"#ui/utils/classArr.js\"\nimport type { HasGetOptions } from \"#ui/utils/HasGetOptions.js\"\nimport type { HasValueSignalString } from \"#ui/utils/HasValueSignalString.js\"\nimport type { MayHaveValueText } from \"#ui/utils/HasValueText.js\"\nimport type { MayHaveChildren } from \"#ui/utils/MayHaveChildren.js\"\nimport type { MayHaveClass } from \"#ui/utils/MayHaveClass.js\"\nimport type { MayHaveDisabled } from \"#ui/utils/MayHaveDisabled.js\"\nimport type { MayHaveId } from \"#ui/utils/MayHaveId.js\"\nimport { Key } from \"@solid-primitives/keyed\"\n\nexport type StringStringFn = (value: string) => string\n\nexport interface SelectSingleNativeProps\n extends\n HasValueSignalString,\n HasGetOptions,\n MayHaveValueText,\n MayHaveClass,\n MayHaveId,\n MayHaveChildren,\n MayHaveDisabled {\n texts?: SelectSingleNativeTexts\n}\n\nexport function SelectSingleNative(p: SelectSingleNativeProps) {\n const texts = p.texts ?? selectSingleNativeTextDefault\n\n return (\n <select\n id={p.id}\n class={classArr(\n \"block w-full p-2.5\",\n \"text-gray-900 dark:text-white\", // text\n \"placeholder:text-muted-foreground\", // text placeholder\n \"bg-gray-50 dark:bg-gray-700\", // bg\n \"rounded-lg border border-gray-300 dark:border-gray-500\", // border\n \"focus:ring-blue-500 focus:border-blue-500 dark:focus:border-blue-500 dark:focus:ring-blue-500\",\n p.disabled && classesDisabledDirectly,\n p.class,\n )}\n value={p.valueSignal.get()}\n onChange={(e) => onChange(e, p)}\n disabled={p.disabled}\n >\n <Key each={p.getOptions()} by={(item) => item} fallback={<NoItems texts={texts} />}>\n {(getItem) => <SelectItem itemValue={getItem()} valueText={p.valueText} />}\n </Key>\n </select>\n )\n}\n\nfunction onChange(\n e: Event & {\n currentTarget: HTMLSelectElement\n target: HTMLSelectElement\n },\n p: SelectSingleNativeProps,\n): void {\n p.valueSignal.set(e.currentTarget.value)\n}\n\ninterface NoItemsProps extends MayHaveClass {\n texts: SelectSingleNativeTexts\n}\n\nfunction NoItems(p: NoItemsProps) {\n return <div class={p.class}>{p.texts.noEntries}</div>\n}\n\ninterface SelectItemProps extends MayHaveClass {\n itemValue: string\n valueText?: StringStringFn\n}\n\nfunction SelectItem(p: SelectItemProps) {\n return (\n <option value={p.itemValue} class={p.class}>\n {getDisplayValue(p.itemValue, p.valueText)}\n </option>\n )\n}\n\nfunction getDisplayValue(itemValue: string, valueText?: StringStringFn) {\n if (!valueText) return itemValue\n const hasValue = valueText(itemValue)\n if (!hasValue) return itemValue\n return hasValue\n}\n"],"mappings":";;;;;;;AA2BA,SAAgBgB,mBAAmBC,GAA4B;CAC7D,MAAMF,QAAQE,EAAEF,SAASb;AAEzB,eAAA;EAAA,IAAAgB,OAAAC,QAAA;AAAAD,OAAAE,iBAAA,WAceC,MAAMC,SAASD,GAAGJ,EAAE,CAAA;AAAAM,SAAAL,MAAAM,gBAG9Bb,KAAG;GAAA,IAACc,OAAI;AAAA,WAAER,EAAES,YAAY;;GAAEC,KAAKC,SAASA;GAAI,IAAEC,WAAQ;AAAA,WAAAL,gBAAGM,SAAO,EAAQf,OAAK,CAAA;;GAAAgB,WAC1EC,YAAOR,gBAAMS,YAAU;IAAA,IAACC,YAAS;AAAA,YAAEF,SAAS;;IAAA,IAAEG,YAAS;AAAA,YAAElB,EAAEkB;;IAAS,CAAA;GAAI,CAAA,CAAA;AAAAC,UAAAC,QAAA;GAAA,IAAAC,MAhBxErB,EAAEsB,IAAEC,OACDrC,SACL,sBACA,iCACA,qCACA,+BACA,0DACA,iGACAc,EAAEwB,YAAAA,iCACFxB,EAAEyB,MACH,EAAAC,OAGS1B,EAAEwB;AAAQH,WAAAD,IAAAhB,KAAAuB,aAAA1B,MAAA,MAAAmB,IAAAhB,IAAAiB,IAAA;AAAAE,YAAAH,IAAAQ,KAAAC,UAAA5B,MAAAmB,IAAAQ,IAAAL,KAAA;AAAAG,YAAAN,IAAAU,MAAA7B,KAAAuB,WAAAJ,IAAAU,IAAAJ;AAAA,UAAAN;KAAA;GAAAhB,GAAA2B,KAAAA;GAAAH,GAAAG,KAAAA;GAAAD,GAAAC,KAAAA;GAAA,CAAA;AAAAZ,eAAAlB,KAAAL,QAFbI,EAAEgC,YAAYC,KAAK,CAAA;AAAA,SAAAhC;KAAA;;AAWhC,SAASI,SACPD,GAIAJ,GACM;AACNA,GAAEgC,YAAYM,IAAIlC,EAAE+B,cAAcvC,MAAM;;AAO1C,SAASiB,QAAQb,GAAiB;AAChC,eAAA;EAAA,IAAAwC,QAAAC,SAAA;AAAAnC,SAAAkC,aAA6BxC,EAAEF,MAAM4C,UAAS;AAAAvB,eAAAU,UAAAW,OAA3BxC,EAAEyB,MAAK,CAAA;AAAA,SAAAe;KAAA;;AAQ5B,SAASxB,WAAWhB,GAAoB;AACtC,eAAA;EAAA,IAAA4C,QAAAC,SAAA;AAAAvC,SAAAsC,aAEKE,gBAAgB9C,EAAEiB,WAAWjB,EAAEkB,UAAU,CAAA;AAAAC,eAAAU,UAAAe,OADT5C,EAAEyB,MAAK,CAAA;AAAAN,eAAAyB,MAAAhD,QAA3BI,EAAEiB,UAAS;AAAA,SAAA2B;KAAA;;AAM9B,SAASE,gBAAgB7B,WAAmBC,WAA4B;AACtE,KAAI,CAACA,UAAW,QAAOD;CACvB,MAAM8B,WAAW7B,UAAUD,UAAU;AACrC,KAAI,CAAC8B,SAAU,QAAO9B;AACtB,QAAO8B"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SwitchSingle.d.ts","sourceRoot":"","sources":["../../../ui/input/switch/SwitchSingle.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAC/D,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,mCAAmC,CAAA;AAC7E,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAA;AACjE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAA;AAC7D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAA;AACnE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAA;AAGvD;;GAEG;AACH,MAAM,WAAW,iBACf,SAAQ,oBAAoB,
|
|
1
|
+
{"version":3,"file":"SwitchSingle.d.ts","sourceRoot":"","sources":["../../../ui/input/switch/SwitchSingle.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAC/D,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,mCAAmC,CAAA;AAC7E,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAA;AACjE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAA;AAC7D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAA;AACnE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAA;AAGvD;;GAEG;AACH,MAAM,WAAW,iBACf,SAAQ,oBAAoB,EAAE,aAAa,EAAE,gBAAgB,EAAE,SAAS,EAAE,eAAe,EAAE,YAAY;IACvG,KAAK,CAAC,EAAE,iBAAiB,CAAA;CAC1B;AAED,MAAM,MAAM,iBAAiB,GAAG;IAC9B,SAAS,EAAE,MAAM,CAAA;CAClB,CAAA;AAED,wBAAgB,YAAY,CAAC,CAAC,EAAE,iBAAiB,kCAkChD"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SwitchSingle.js","names":["ttt","classArr","SignalObject","HasGetOptions","HasValueSignalString","MayHaveValueText","MayHaveClass","MayHaveDisabled","MayHaveId","Key","SwitchSingleProps","texts","SwitchSingleTexts","noEntries","SwitchSingle","p","filled","const","_el$","_tmpl$","_$insert","_$createComponent","each","getOptions","by","item","fallback","NoItems","children","Option","valueSignal","disabled","valueText","_$effect","_p$","_v$","id","_v$2","_v$3","class","e","_$setAttribute","t","a","_$className","undefined","NoItemsProps","_el$2","_tmpl$2","Option2Props","value","_el$3","_tmpl$3","$$click","optionToggle","getText","_v$4","_v$5","isChecked","_v$6","_v$7","_v$8","_v$9","o","i","n","get","set","_$delegateEvents"],"sources":["../../../ui/input/switch/SwitchSingle.tsx"],"sourcesContent":["import { ttt } from \"#ui/i18n/ttt.js\"\nimport { classArr } from \"#ui/utils/classArr.js\"\nimport type { SignalObject } from \"#ui/utils/createSignalObject.js\"\nimport type { HasGetOptions } from \"#ui/utils/HasGetOptions.js\"\nimport type { HasValueSignalString } from \"#ui/utils/HasValueSignalString.js\"\nimport type { MayHaveValueText } from \"#ui/utils/HasValueText.js\"\nimport type { MayHaveClass } from \"#ui/utils/MayHaveClass.js\"\nimport type { MayHaveDisabled } from \"#ui/utils/MayHaveDisabled.js\"\nimport type { MayHaveId } from \"#ui/utils/MayHaveId.js\"\nimport { Key } from \"@solid-primitives/keyed\"\n\n/**\n * https://github.com/radix-ui/primitives/blob/main/packages/react/radio-group/src/Radio.tsx\n */\nexport interface SwitchSingleProps\n extends HasValueSignalString
|
|
1
|
+
{"version":3,"file":"SwitchSingle.js","names":["ttt","classArr","SignalObject","HasGetOptions","HasValueSignalString","MayHaveValueText","MayHaveClass","MayHaveDisabled","MayHaveId","Key","SwitchSingleProps","texts","SwitchSingleTexts","noEntries","SwitchSingle","p","filled","const","_el$","_tmpl$","_$insert","_$createComponent","each","getOptions","by","item","fallback","NoItems","children","Option","valueSignal","disabled","valueText","_$effect","_p$","_v$","id","_v$2","_v$3","class","e","_$setAttribute","t","a","_$className","undefined","NoItemsProps","_el$2","_tmpl$2","Option2Props","value","_el$3","_tmpl$3","$$click","optionToggle","getText","_v$4","_v$5","isChecked","_v$6","_v$7","_v$8","_v$9","o","i","n","get","set","_$delegateEvents"],"sources":["../../../ui/input/switch/SwitchSingle.tsx"],"sourcesContent":["import { ttt } from \"#ui/i18n/ttt.js\"\nimport { classArr } from \"#ui/utils/classArr.js\"\nimport type { SignalObject } from \"#ui/utils/createSignalObject.js\"\nimport type { HasGetOptions } from \"#ui/utils/HasGetOptions.js\"\nimport type { HasValueSignalString } from \"#ui/utils/HasValueSignalString.js\"\nimport type { MayHaveValueText } from \"#ui/utils/HasValueText.js\"\nimport type { MayHaveClass } from \"#ui/utils/MayHaveClass.js\"\nimport type { MayHaveDisabled } from \"#ui/utils/MayHaveDisabled.js\"\nimport type { MayHaveId } from \"#ui/utils/MayHaveId.js\"\nimport { Key } from \"@solid-primitives/keyed\"\n\n/**\n * https://github.com/radix-ui/primitives/blob/main/packages/react/radio-group/src/Radio.tsx\n */\nexport interface SwitchSingleProps\n extends HasValueSignalString, HasGetOptions, MayHaveValueText, MayHaveId, MayHaveDisabled, MayHaveClass {\n texts?: SwitchSingleTexts\n}\n\nexport type SwitchSingleTexts = {\n noEntries: string\n}\n\nexport function SwitchSingle(p: SwitchSingleProps) {\n const filled = true\n const texts =\n p.texts ??\n ({\n noEntries: ttt(\"No entries\"),\n } as const satisfies SwitchSingleTexts)\n\n return (\n <div\n id={p.id}\n role=\"radiogroup\"\n data-disabled={p.disabled}\n class={classArr(\n \"flex flex-wrap gap-2\",\n // \"grid gap-2 rounded-md p-2\",\n filled && \"bg-white dark:bg-black\", // bg\n filled && \"border border-slate-200 dark:border-slate-700\", // border\n p.class,\n )}\n >\n <Key each={p.getOptions()} by={(item) => item} fallback={<NoItems texts={texts} />}>\n {(item) => (\n <Option\n item={item()}\n valueSignal={p.valueSignal}\n disabled={p.disabled}\n filled={filled}\n valueText={p.valueText}\n />\n )}\n </Key>\n </div>\n )\n}\n\ninterface NoItemsProps extends MayHaveClass {\n texts: SwitchSingleTexts\n}\n\nfunction NoItems(p: NoItemsProps) {\n return <div class={p.class}>{p.texts.noEntries}</div>\n}\n\ninterface Option2Props extends MayHaveClass {\n item: string\n valueSignal: SignalObject<string>\n filled: boolean\n valueText?: (value: string) => string\n disabled?: boolean\n}\n\nfunction Option(p: Option2Props) {\n return (\n <button\n type=\"button\"\n role=\"radio\"\n disabled={p.disabled}\n aria-checked={isChecked(p)}\n data-checked={isChecked(p)}\n data-state={isChecked(p) ? \"checked\" : \"unchecked\"}\n data-disabled={p.disabled}\n value={isChecked(p) ? \"on\" : \"off\"}\n class={classArr(\n \"cursor-pointer select-none\",\n \"rounded-sm\",\n \"px-3 py-2 text-center\",\n isChecked(p) ? \"bg-blue-500 text-white\" : \"hover:bg-slate-50 dark:hover:bg-slate-900\", // bg hover\n \"flex gap-2\",\n p.class,\n )}\n onClick={() => optionToggle(p)}\n >\n {getText(p)}\n </button>\n )\n}\n\nfunction optionToggle(p: Option2Props) {\n if (p.valueSignal.get() === p.item) return\n p.valueSignal.set(p.item)\n}\n\nfunction isChecked(p: Option2Props) {\n return p.item === p.valueSignal.get()\n}\n\nfunction getText(p: Option2Props): string {\n return p.valueText ? p.valueText(p.item) : p.item\n}\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ButtonIconOnly.d.ts","sourceRoot":"","sources":["../../../ui/interactive/button/ButtonIconOnly.tsx"],"names":[],"mappings":"AACA,OAAO,EAAqB,KAAK,cAAc,EAAE,MAAM,qCAAqC,CAAA;AAI5F,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAA;AACnD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAA;AACrD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAA;AAEnE,OAAO,EAAa,KAAK,gBAAgB,EAAE,MAAM,+BAA+B,CAAA;AAChF,OAAO,EAAE,KAAK,SAAS,EAAE,KAAK,cAAc,EAAc,MAAM,UAAU,CAAA;AAE1E,MAAM,WAAW,mBACf,
|
|
1
|
+
{"version":3,"file":"ButtonIconOnly.d.ts","sourceRoot":"","sources":["../../../ui/interactive/button/ButtonIconOnly.tsx"],"names":[],"mappings":"AACA,OAAO,EAAqB,KAAK,cAAc,EAAE,MAAM,qCAAqC,CAAA;AAI5F,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAA;AACnD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAA;AACrD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAA;AAEnE,OAAO,EAAa,KAAK,gBAAgB,EAAE,MAAM,+BAA+B,CAAA;AAChF,OAAO,EAAE,KAAK,SAAS,EAAE,KAAK,cAAc,EAAc,MAAM,UAAU,CAAA;AAE1E,MAAM,WAAW,mBACf,SACE,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC,EACvC,cAAc,EACd,QAAQ,EACR,OAAO,EACP,gBAAgB,EAChB,eAAe;IACjB,SAAS,CAAC,EAAE,OAAO,CAAA;CACpB;AAED,eAAO,MAAM,cAAc,EAAE,SAAS,CAAC,mBAAmB,CAyCzD,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ButtonIconOnly.js","names":["classesDisabledDirectly","buttonCvaIconOnly","ButtonCvaProps","buttonIconCva","classesButtonClickAnimation","Icon","HasIcon","HasTitle","MayHaveChildren","isDisabled","isLoading","MayHaveIsLoading","Component","ComponentProps","splitProps","ButtonIconOnlyProps","Omit","iconRight","ButtonIconOnly","p","s","rest","_el$","_tmpl$","_$spread","_$mergeProps","class","variant","title","type","_$insert","_c$","_$memo","_$createComponent","path","icon","children","disabled","iconClass","_c$2"],"sources":["../../../ui/interactive/button/ButtonIconOnly.tsx"],"sourcesContent":["import { classesDisabledDirectly } from \"#ui/classes/classesDisabledDirectly.js\"\nimport { buttonCvaIconOnly, type ButtonCvaProps } from \"#ui/interactive/button/buttonCva.js\"\nimport { buttonIconCva } from \"#ui/interactive/button/buttonIconCva.js\"\nimport { classesButtonClickAnimation } from \"#ui/interactive/button/classesButtonClickAnimation.js\"\nimport { Icon } from \"#ui/static/icon/Icon.jsx\"\nimport type { HasIcon } from \"#ui/utils/HasIcon.js\"\nimport type { HasTitle } from \"#ui/utils/HasTitle.js\"\nimport type { MayHaveChildren } from \"#ui/utils/MayHaveChildren.js\"\nimport { isDisabled } from \"#ui/utils/MayHaveDisabledAccessor.js\"\nimport { isLoading, type MayHaveIsLoading } from \"#ui/utils/MayHaveIsLoading.js\"\nimport { type Component, type ComponentProps, splitProps } from \"solid-js\"\n\nexport interface ButtonIconOnlyProps\n extends
|
|
1
|
+
{"version":3,"file":"ButtonIconOnly.js","names":["classesDisabledDirectly","buttonCvaIconOnly","ButtonCvaProps","buttonIconCva","classesButtonClickAnimation","Icon","HasIcon","HasTitle","MayHaveChildren","isDisabled","isLoading","MayHaveIsLoading","Component","ComponentProps","splitProps","ButtonIconOnlyProps","Omit","iconRight","ButtonIconOnly","p","s","rest","_el$","_tmpl$","_$spread","_$mergeProps","class","variant","title","type","_$insert","_c$","_$memo","_$createComponent","path","icon","children","disabled","iconClass","_c$2"],"sources":["../../../ui/interactive/button/ButtonIconOnly.tsx"],"sourcesContent":["import { classesDisabledDirectly } from \"#ui/classes/classesDisabledDirectly.js\"\nimport { buttonCvaIconOnly, type ButtonCvaProps } from \"#ui/interactive/button/buttonCva.js\"\nimport { buttonIconCva } from \"#ui/interactive/button/buttonIconCva.js\"\nimport { classesButtonClickAnimation } from \"#ui/interactive/button/classesButtonClickAnimation.js\"\nimport { Icon } from \"#ui/static/icon/Icon.jsx\"\nimport type { HasIcon } from \"#ui/utils/HasIcon.js\"\nimport type { HasTitle } from \"#ui/utils/HasTitle.js\"\nimport type { MayHaveChildren } from \"#ui/utils/MayHaveChildren.js\"\nimport { isDisabled } from \"#ui/utils/MayHaveDisabledAccessor.js\"\nimport { isLoading, type MayHaveIsLoading } from \"#ui/utils/MayHaveIsLoading.js\"\nimport { type Component, type ComponentProps, splitProps } from \"solid-js\"\n\nexport interface ButtonIconOnlyProps\n extends\n Omit<ComponentProps<\"button\">, \"title\">,\n ButtonCvaProps,\n HasTitle,\n HasIcon,\n MayHaveIsLoading,\n MayHaveChildren {\n iconRight?: boolean\n}\n\nexport const ButtonIconOnly: Component<ButtonIconOnlyProps> = (p) => {\n const [s, rest] = splitProps(p, [\n // button\n \"variant\",\n \"size\",\n \"class\",\n // state\n \"isLoading\",\n // icons\n \"title\",\n \"icon\",\n \"iconRight\",\n \"iconClass\",\n // default\n \"type\",\n \"disabled\",\n \"children\",\n ])\n return (\n <button\n class={buttonCvaIconOnly(s.variant, isLoading(p), isDisabled(p), classesButtonClickAnimation, s.class)}\n title={s.title}\n type={s.type ?? \"button\"}\n {...rest}\n >\n {!s.iconRight && (\n <Icon\n path={s.icon}\n class={buttonIconCva(\n s.variant,\n s.children && \"mr-2\",\n s.isLoading && \"animate-spin-faster\",\n s.disabled && classesDisabledDirectly,\n s.iconClass,\n )}\n />\n )}\n {s.children}\n {s.iconRight && <Icon path={s.icon} class={buttonIconCva(s.variant, s.iconClass)} />}\n </button>\n )\n}\n"],"mappings":";;;;;;;;;;;AAuBA,IAAakB,kBAAkDC,MAAM;CACnE,MAAM,CAACC,GAAGC,QAAQP,WAAWK,GAAG;EAE9B;EACA;EACA;EAEA;EAEA;EACA;EACA;EACA;EAEA;EACA;EACA;EACD,CAAC;AACF,eAAA;EAAA,IAAAG,OAAAC,QAAA;AAAAC,SAAAF,MAAAG,aAAA;GAAA,KAAA,WAAA;AAAA,WAEWxB,kBAAkBmB,EAAEO,SAASjB,UAAUS,EAAE,EAAEV,WAAWU,EAAE,EAAEf,6BAA6BgB,EAAEM,MAAM;;GAAA,IACtGE,QAAK;AAAA,WAAER,EAAEQ;;GAAK,IACdC,OAAI;AAAA,WAAET,EAAES,QAAQ;;GAAQ,EACpBR,KAAI,EAAA,OAAA,KAAA;AAAAS,SAAAR,aAAA;GAAA,IAAAS,MAAAC,WAAA,CAAA,CAEP,CAACZ,EAAEH,UAAS;AAAA,gBAAZc,KAAA,IAAAE,gBACE5B,MAAI;IAAA,IACH6B,OAAI;AAAA,YAAEd,EAAEe;;IAAI,KAAA,WAAA;AAAA,YACLhC,cACLiB,EAAEO,SACFP,EAAEgB,YAAY,QACdhB,EAAEV,aAAa,uBACfU,EAAEiB,YAAAA,iCACFjB,EAAEkB,UACH;;IAAA,CAEJ;MAAA,EAAA,KAAA;AAAAR,SAAAR,YACAF,EAAEgB,UAAQ,KAAA;AAAAN,SAAAR,aAAA;GAAA,IAAAiB,OAAAP,WAAA,CAAA,CACVZ,EAAEH,UAAS;AAAA,gBAAXsB,MAAA,IAAAN,gBAAgB5B,MAAI;IAAA,IAAC6B,OAAI;AAAA,YAAEd,EAAEe;;IAAI,KAAA,WAAA;AAAA,YAAShC,cAAciB,EAAEO,SAASP,EAAEkB,UAAU;;IAAA,CAAI;MAAA,EAAA,KAAA;AAAA,SAAAhB;KAAA"}
|
|
@@ -11,6 +11,8 @@ export interface CorvuDialogProps extends MayHaveClass, MayHaveInnerClass, MayHa
|
|
|
11
11
|
titleClass?: string;
|
|
12
12
|
descriptionClass?: string;
|
|
13
13
|
texts?: CorcuDialogTexts;
|
|
14
|
+
open?: boolean;
|
|
15
|
+
onOpenChange?: (open: boolean) => void;
|
|
14
16
|
}
|
|
15
17
|
export declare function CorvuDialog(p: CorvuDialogProps): JSX.Element;
|
|
16
18
|
//# sourceMappingURL=CorvuDialog.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CorvuDialog.d.ts","sourceRoot":"","sources":["../../../ui/interactive/dialog/CorvuDialog.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wCAAwC,CAAA;AAI9E,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,4CAA4C,CAAA;AAIlF,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAA;AACnE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAA;AAC7D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAA;AAGvE,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,UAAU,CAAA;AAEnC,MAAM,WAAW,gBAAiB,SAAQ,YAAY,EAAE,iBAAiB,EAAE,eAAe,EAAE,gBAAgB;IAC1G,cAAc,CAAC,EAAE,GAAG,CAAC,OAAO,CAAA;IAC5B,KAAK,EAAE,MAAM,CAAA;IACb,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,KAAK,CAAC,EAAE,gBAAgB,CAAA;
|
|
1
|
+
{"version":3,"file":"CorvuDialog.d.ts","sourceRoot":"","sources":["../../../ui/interactive/dialog/CorvuDialog.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wCAAwC,CAAA;AAI9E,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,4CAA4C,CAAA;AAIlF,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAA;AACnE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAA;AAC7D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAA;AAGvE,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,UAAU,CAAA;AAEnC,MAAM,WAAW,gBAAiB,SAAQ,YAAY,EAAE,iBAAiB,EAAE,eAAe,EAAE,gBAAgB;IAC1G,cAAc,CAAC,EAAE,GAAG,CAAC,OAAO,CAAA;IAC5B,KAAK,EAAE,MAAM,CAAA;IACb,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,KAAK,CAAC,EAAE,gBAAgB,CAAA;IAExB,IAAI,CAAC,EAAE,OAAO,CAAA;IACd,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAA;CACvC;AAED,wBAAgB,WAAW,CAAC,CAAC,EAAE,gBAAgB,eAyC9C"}
|
|
@@ -4,92 +4,100 @@ import { buttonCva2, buttonCvaIconOnly, buttonVariant } from "../button/buttonCv
|
|
|
4
4
|
import "../../classes/classesDisabledDirectly.js";
|
|
5
5
|
import { buttonIconCva } from "../button/buttonIconCva.js";
|
|
6
6
|
import { Icon } from "../../static/icon/Icon.js";
|
|
7
|
-
import { index_default } from "../../node_modules/@corvu/dialog/dist/index.js";
|
|
8
7
|
import { classesDialogContentMerge, classesDialogOverlayMerge } from "./classesDialogContent.js";
|
|
9
8
|
import { corvuDialogTextDefault } from "./CorcuDialogTexts.js";
|
|
9
|
+
import { index_default } from "../../node_modules/@corvu/dialog/dist/index.js";
|
|
10
10
|
import { createComponent, insert, memo, template } from "solid-js/web";
|
|
11
11
|
import { mdiClose } from "@mdi/js";
|
|
12
12
|
//#region ui/interactive/dialog/CorvuDialog.tsx
|
|
13
|
-
var _tmpl$ = /* @__PURE__ */ template(`<header class="flex items-
|
|
13
|
+
var _tmpl$ = /* @__PURE__ */ template(`<header class="flex items-center justify-between gap-2 mb-4"><div>`);
|
|
14
14
|
function CorvuDialog(p) {
|
|
15
15
|
const texts = p.texts ?? corvuDialogTextDefault;
|
|
16
|
-
return createComponent(index_default, {
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
return p.icon;
|
|
26
|
-
},
|
|
27
|
-
get ["class"]() {
|
|
28
|
-
return buttonIconCva(p.variant, p.buttonChildren && "mr-2", p.iconClass);
|
|
29
|
-
}
|
|
30
|
-
})),
|
|
31
|
-
memo(() => p.buttonChildren),
|
|
32
|
-
memo(() => memo(() => !!p.iconRight)() && createComponent(Icon, {
|
|
33
|
-
get path() {
|
|
34
|
-
return p.iconRight;
|
|
35
|
-
},
|
|
36
|
-
get ["class"]() {
|
|
37
|
-
return buttonIconCva(p.variant, p.buttonChildren && "ml-2", p.iconClass);
|
|
38
|
-
}
|
|
39
|
-
}))
|
|
40
|
-
];
|
|
41
|
-
}
|
|
42
|
-
}), createComponent(index_default.Portal, { get children() {
|
|
43
|
-
return [createComponent(index_default.Overlay, { get ["class"]() {
|
|
44
|
-
return classesDialogOverlayMerge();
|
|
45
|
-
} }), createComponent(index_default.Content, {
|
|
16
|
+
return createComponent(index_default, {
|
|
17
|
+
get open() {
|
|
18
|
+
return p.open;
|
|
19
|
+
},
|
|
20
|
+
get onOpenChange() {
|
|
21
|
+
return p.onOpenChange;
|
|
22
|
+
},
|
|
23
|
+
get children() {
|
|
24
|
+
return [createComponent(index_default.Trigger, {
|
|
46
25
|
get ["class"]() {
|
|
47
|
-
return
|
|
26
|
+
return buttonCva2(p.variant, p.size, classesButtonClickAnimation, (p.disabled || p.isDisabled?.()) && "cursor-not-allowed opacity-70", p.class);
|
|
48
27
|
},
|
|
49
28
|
get children() {
|
|
50
|
-
return [
|
|
51
|
-
|
|
52
|
-
|
|
29
|
+
return [
|
|
30
|
+
memo(() => memo(() => !!p.icon)() && createComponent(Icon, {
|
|
31
|
+
get path() {
|
|
32
|
+
return p.icon;
|
|
33
|
+
},
|
|
53
34
|
get ["class"]() {
|
|
54
|
-
return
|
|
35
|
+
return buttonIconCva(p.variant, p.buttonChildren && "mr-2", p.iconClass);
|
|
36
|
+
}
|
|
37
|
+
})),
|
|
38
|
+
memo(() => p.buttonChildren),
|
|
39
|
+
memo(() => memo(() => !!p.iconRight)() && createComponent(Icon, {
|
|
40
|
+
get path() {
|
|
41
|
+
return p.iconRight;
|
|
55
42
|
},
|
|
56
|
-
get
|
|
57
|
-
return p.
|
|
43
|
+
get ["class"]() {
|
|
44
|
+
return buttonIconCva(p.variant, p.buttonChildren && "ml-2", p.iconClass);
|
|
58
45
|
}
|
|
59
|
-
})
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
46
|
+
}))
|
|
47
|
+
];
|
|
48
|
+
}
|
|
49
|
+
}), createComponent(index_default.Portal, { get children() {
|
|
50
|
+
return [createComponent(index_default.Overlay, { get ["class"]() {
|
|
51
|
+
return classesDialogOverlayMerge();
|
|
52
|
+
} }), createComponent(index_default.Content, {
|
|
53
|
+
get ["class"]() {
|
|
54
|
+
return classesDialogContentMerge(p.innerClass);
|
|
55
|
+
},
|
|
56
|
+
get children() {
|
|
57
|
+
return [(() => {
|
|
58
|
+
var _el$ = _tmpl$(), _el$2 = _el$.firstChild;
|
|
59
|
+
insert(_el$2, createComponent(index_default.Label, {
|
|
63
60
|
get ["class"]() {
|
|
64
|
-
return classMerge("text-
|
|
61
|
+
return classMerge("text-lg font-semibold", p.titleClass);
|
|
65
62
|
},
|
|
66
63
|
get children() {
|
|
67
|
-
return p.
|
|
64
|
+
return p.title;
|
|
68
65
|
}
|
|
69
|
-
});
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
return buttonCvaIconOnly(buttonVariant.outline, false, false);
|
|
74
|
-
},
|
|
75
|
-
get title() {
|
|
76
|
-
return texts.closeDialog;
|
|
77
|
-
},
|
|
78
|
-
get children() {
|
|
79
|
-
return createComponent(Icon, {
|
|
80
|
-
path: mdiClose,
|
|
66
|
+
}), null);
|
|
67
|
+
insert(_el$2, (() => {
|
|
68
|
+
var _c$ = memo(() => !!p.description);
|
|
69
|
+
return () => _c$() && createComponent(index_default.Description, {
|
|
81
70
|
get ["class"]() {
|
|
82
|
-
return
|
|
71
|
+
return classMerge("text-muted-foreground", p.descriptionClass);
|
|
72
|
+
},
|
|
73
|
+
get children() {
|
|
74
|
+
return p.description;
|
|
83
75
|
}
|
|
84
76
|
});
|
|
85
|
-
}
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
77
|
+
})(), null);
|
|
78
|
+
insert(_el$, createComponent(index_default.Close, {
|
|
79
|
+
get ["class"]() {
|
|
80
|
+
return buttonCvaIconOnly(buttonVariant.outline, false, false);
|
|
81
|
+
},
|
|
82
|
+
get title() {
|
|
83
|
+
return texts.closeDialog;
|
|
84
|
+
},
|
|
85
|
+
get children() {
|
|
86
|
+
return createComponent(Icon, {
|
|
87
|
+
path: mdiClose,
|
|
88
|
+
get ["class"]() {
|
|
89
|
+
return buttonIconCva(buttonVariant.outline, "");
|
|
90
|
+
}
|
|
91
|
+
});
|
|
92
|
+
}
|
|
93
|
+
}), null);
|
|
94
|
+
return _el$;
|
|
95
|
+
})(), memo(() => p.children)];
|
|
96
|
+
}
|
|
97
|
+
})];
|
|
98
|
+
} })];
|
|
99
|
+
}
|
|
100
|
+
});
|
|
93
101
|
}
|
|
94
102
|
//#endregion
|
|
95
103
|
export { CorvuDialog };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CorvuDialog.js","names":["classesDisabledDirectly","buttonCva2","buttonCvaIconOnly","buttonVariant","ButtonIcon1Props","buttonIconCva","classesButtonClickAnimation","classesDialogContentMerge","classesDialogOverlayMerge","CorcuDialogTexts","corvuDialogTextDefault","Icon","classMerge","MayHaveChildren","MayHaveClass","MayHaveInnerClass","Dialog","mdiClose","JSX","CorvuDialogProps","buttonChildren","Element","title","description","titleClass","descriptionClass","texts","CorvuDialog","p","_$createComponent","children","Trigger","class","variant","size","disabled","isDisabled","_$memo","icon","path","iconClass","iconRight","Portal","Overlay","Content","innerClass","_el$","_tmpl$","_el$2","firstChild","_$insert","Label","_c$","Description","Close","outline","closeDialog"],"sources":["../../../ui/interactive/dialog/CorvuDialog.tsx"],"sourcesContent":["import { classesDisabledDirectly } from \"#ui/classes/classesDisabledDirectly.js\"\nimport { buttonCva2, buttonCvaIconOnly, buttonVariant } from \"#ui/interactive/button/buttonCva.js\"\nimport type { ButtonIcon1Props } from \"#ui/interactive/button/ButtonIcon1.jsx\"\nimport { buttonIconCva } from \"#ui/interactive/button/buttonIconCva.js\"\nimport { classesButtonClickAnimation } from \"#ui/interactive/button/classesButtonClickAnimation.js\"\nimport { classesDialogContentMerge, classesDialogOverlayMerge } from \"#ui/interactive/dialog/classesDialogContent.js\"\nimport type { CorcuDialogTexts } from \"#ui/interactive/dialog/CorcuDialogTexts.js\"\nimport { corvuDialogTextDefault } from \"#ui/interactive/dialog/CorcuDialogTexts.js\"\nimport { Icon } from \"#ui/static/icon/Icon.jsx\"\nimport { classMerge } from \"#ui/utils/classMerge.js\"\nimport type { MayHaveChildren } from \"#ui/utils/MayHaveChildren.js\"\nimport type { MayHaveClass } from \"#ui/utils/MayHaveClass.js\"\nimport type { MayHaveInnerClass } from \"#ui/utils/MayHaveInnerClass.js\"\nimport Dialog from \"@corvu/dialog\"\nimport { mdiClose } from \"@mdi/js\"\nimport type { JSX } from \"solid-js\"\n\nexport interface CorvuDialogProps extends MayHaveClass, MayHaveInnerClass, MayHaveChildren, ButtonIcon1Props {\n buttonChildren?: JSX.Element\n title: string\n description?: string\n titleClass?: string\n descriptionClass?: string\n texts?: CorcuDialogTexts\n}\n\nexport function CorvuDialog(p: CorvuDialogProps) {\n const texts = p.texts ?? corvuDialogTextDefault\n\n return (\n <Dialog>\n <Dialog.Trigger\n class={buttonCva2(\n p.variant,\n p.size,\n classesButtonClickAnimation,\n (p.disabled || p.isDisabled?.()) && classesDisabledDirectly,\n p.class,\n )}\n >\n {p.icon && <Icon path={p.icon} class={buttonIconCva(p.variant, p.buttonChildren && \"mr-2\", p.iconClass)} />}\n {p.buttonChildren}\n {p.iconRight && (\n <Icon path={p.iconRight} class={buttonIconCva(p.variant, p.buttonChildren && \"ml-2\", p.iconClass)} />\n )}\n </Dialog.Trigger>\n <Dialog.Portal>\n <Dialog.Overlay class={classesDialogOverlayMerge()} />\n <Dialog.Content class={classesDialogContentMerge(p.innerClass)}>\n <header class=\"flex items-
|
|
1
|
+
{"version":3,"file":"CorvuDialog.js","names":["classesDisabledDirectly","buttonCva2","buttonCvaIconOnly","buttonVariant","ButtonIcon1Props","buttonIconCva","classesButtonClickAnimation","classesDialogContentMerge","classesDialogOverlayMerge","CorcuDialogTexts","corvuDialogTextDefault","Icon","classMerge","MayHaveChildren","MayHaveClass","MayHaveInnerClass","Dialog","mdiClose","JSX","CorvuDialogProps","buttonChildren","Element","title","description","titleClass","descriptionClass","texts","open","onOpenChange","CorvuDialog","p","_$createComponent","children","Trigger","class","variant","size","disabled","isDisabled","_$memo","icon","path","iconClass","iconRight","Portal","Overlay","Content","innerClass","_el$","_tmpl$","_el$2","firstChild","_$insert","Label","_c$","Description","Close","outline","closeDialog"],"sources":["../../../ui/interactive/dialog/CorvuDialog.tsx"],"sourcesContent":["import { classesDisabledDirectly } from \"#ui/classes/classesDisabledDirectly.js\"\nimport { buttonCva2, buttonCvaIconOnly, buttonVariant } from \"#ui/interactive/button/buttonCva.js\"\nimport type { ButtonIcon1Props } from \"#ui/interactive/button/ButtonIcon1.jsx\"\nimport { buttonIconCva } from \"#ui/interactive/button/buttonIconCva.js\"\nimport { classesButtonClickAnimation } from \"#ui/interactive/button/classesButtonClickAnimation.js\"\nimport { classesDialogContentMerge, classesDialogOverlayMerge } from \"#ui/interactive/dialog/classesDialogContent.js\"\nimport type { CorcuDialogTexts } from \"#ui/interactive/dialog/CorcuDialogTexts.js\"\nimport { corvuDialogTextDefault } from \"#ui/interactive/dialog/CorcuDialogTexts.js\"\nimport { Icon } from \"#ui/static/icon/Icon.jsx\"\nimport { classMerge } from \"#ui/utils/classMerge.js\"\nimport type { MayHaveChildren } from \"#ui/utils/MayHaveChildren.js\"\nimport type { MayHaveClass } from \"#ui/utils/MayHaveClass.js\"\nimport type { MayHaveInnerClass } from \"#ui/utils/MayHaveInnerClass.js\"\nimport Dialog from \"@corvu/dialog\"\nimport { mdiClose } from \"@mdi/js\"\nimport type { JSX } from \"solid-js\"\n\nexport interface CorvuDialogProps extends MayHaveClass, MayHaveInnerClass, MayHaveChildren, ButtonIcon1Props {\n buttonChildren?: JSX.Element\n title: string\n description?: string\n titleClass?: string\n descriptionClass?: string\n texts?: CorcuDialogTexts\n\n open?: boolean\n onOpenChange?: (open: boolean) => void\n}\n\nexport function CorvuDialog(p: CorvuDialogProps) {\n const texts = p.texts ?? corvuDialogTextDefault\n\n return (\n <Dialog open={p.open} onOpenChange={p.onOpenChange}>\n <Dialog.Trigger\n class={buttonCva2(\n p.variant,\n p.size,\n classesButtonClickAnimation,\n (p.disabled || p.isDisabled?.()) && classesDisabledDirectly,\n p.class,\n )}\n >\n {p.icon && <Icon path={p.icon} class={buttonIconCva(p.variant, p.buttonChildren && \"mr-2\", p.iconClass)} />}\n {p.buttonChildren}\n {p.iconRight && (\n <Icon path={p.iconRight} class={buttonIconCva(p.variant, p.buttonChildren && \"ml-2\", p.iconClass)} />\n )}\n </Dialog.Trigger>\n <Dialog.Portal>\n <Dialog.Overlay class={classesDialogOverlayMerge()} />\n <Dialog.Content class={classesDialogContentMerge(p.innerClass)}>\n <header class=\"flex items-center justify-between gap-2 mb-4\">\n <div>\n <Dialog.Label class={classMerge(\"text-lg font-semibold\", p.titleClass)}>{p.title}</Dialog.Label>\n {p.description && (\n <Dialog.Description class={classMerge(\"text-muted-foreground\", p.descriptionClass)}>\n {p.description}\n </Dialog.Description>\n )}\n </div>\n <Dialog.Close class={buttonCvaIconOnly(buttonVariant.outline, false, false)} title={texts.closeDialog}>\n <Icon path={mdiClose} class={buttonIconCva(buttonVariant.outline, \"\")} />\n </Dialog.Close>\n </header>\n {p.children}\n </Dialog.Content>\n </Dialog.Portal>\n </Dialog>\n )\n}\n"],"mappings":";;;;;;;;;;;;;AA6BA,SAAgB6B,YAAYC,GAAqB;CAC/C,MAAMJ,QAAQI,EAAEJ,SAAShB;AAEzB,QAAAqB,gBACGf,eAAM;EAAA,IAACW,OAAI;AAAA,UAAEG,EAAEH;;EAAI,IAAEC,eAAY;AAAA,UAAEE,EAAEF;;EAAY,IAAAI,WAAA;AAAA,UAAA,CAAAD,gBAC/Cf,cAAOiB,SAAO;IAAA,KAAA,WAAA;AAAA,YACNhC,WACL6B,EAAEK,SACFL,EAAEM,MACF9B,8BACCwB,EAAEO,YAAYP,EAAEQ,cAAc,KAAA,iCAC/BR,EAAEI,MACH;;IAAA,IAAAF,WAAA;AAAA,YAAA;MAAAO,WAEAA,WAAA,CAAA,CAAAT,EAAEU,KAAI,EAAA,IAAAT,gBAAKpB,MAAI;OAAA,IAAC8B,OAAI;AAAA,eAAEX,EAAEU;;OAAI,KAAA,WAAA;AAAA,eAASnC,cAAcyB,EAAEK,SAASL,EAAEV,kBAAkB,QAAQU,EAAEY,UAAU;;OAAA,CAAI,CAAA;MAAAH,WAC1GT,EAAEV,eAAc;MAAAmB,WAChBA,WAAA,CAAA,CAAAT,EAAEa,UAAS,EAAA,IAAAZ,gBACTpB,MAAI;OAAA,IAAC8B,OAAI;AAAA,eAAEX,EAAEa;;OAAS,KAAA,WAAA;AAAA,eAAStC,cAAcyB,EAAEK,SAASL,EAAEV,kBAAkB,QAAQU,EAAEY,UAAU;;OAAA,CAClG,CAAA;MAAA;;IAAA,CAAA,EAAAX,gBAEFf,cAAO4B,QAAM,EAAA,IAAAZ,WAAA;AAAA,WAAA,CAAAD,gBACXf,cAAO6B,SAAO,EAAA,KAAA,WAAA;AAAA,YAAQrC,2BAA2B;OAAA,CAAA,EAAAuB,gBACjDf,cAAO8B,SAAO;KAAA,KAAA,WAAA;AAAA,aAAQvC,0BAA0BuB,EAAEiB,WAAW;;KAAA,IAAAf,WAAA;AAAA,aAAA,QAAA;OAAA,IAAAgB,OAAAC,QAAA,EAAAC,QAAAF,KAAAG;AAAAC,cAAAF,OAAAnB,gBAGvDf,cAAOqC,OAAK;QAAA,KAAA,WAAA;AAAA,gBAAQzC,WAAW,yBAAyBkB,EAAEN,WAAW;;QAAA,IAAAQ,WAAA;AAAA,gBAAGF,EAAER;;QAAK,CAAA,EAAA,KAAA;AAAA8B,cAAAF,cAAA;QAAA,IAAAI,MAAAf,WAAA,CAAA,CAC/ET,EAAEP,YAAW;AAAA,qBAAb+B,KAAA,IAAAvB,gBACEf,cAAOuC,aAAW;SAAA,KAAA,WAAA;AAAA,iBAAQ3C,WAAW,yBAAyBkB,EAAEL,iBAAiB;;SAAA,IAAAO,WAAA;AAAA,iBAC/EF,EAAEP;;SAAW,CAEjB;WAAA,EAAA,KAAA;AAAA6B,cAAAJ,MAAAjB,gBAEFf,cAAOwC,OAAK;QAAA,KAAA,WAAA;AAAA,gBAAQtD,kBAAkBC,cAAcsD,SAAS,OAAO,MAAM;;QAAA,IAAEnC,QAAK;AAAA,gBAAEI,MAAMgC;;QAAW,IAAA1B,WAAA;AAAA,gBAAAD,gBAClGpB,MAAI;UAAC8B,MAAMxB;UAAQ,KAAA,WAAA;AAAA,kBAASZ,cAAcF,cAAcsD,SAAS,GAAG;;UAAA,CAAA;;QAAA,CAAA,EAAA,KAAA;AAAA,cAAAT;UAAA,EAAAT,WAGxET,EAAEE,SAAQ,CAAA;;KAAA,CAAA,CAAA;MAAA,CAAA,CAAA;;EAAA,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CorvuDialogIcon.d.ts","sourceRoot":"","sources":["../../../ui/interactive/dialog/CorvuDialogIcon.tsx"],"names":[],"mappings":"AACA,OAAO,EAAoC,KAAK,cAAc,EAAE,MAAM,qCAAqC,CAAA;AAG3G,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,4CAA4C,CAAA;AAIlF,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAA;AACnD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAA;AACrD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAA;AACnE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAA;AAC7D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAA;AACvE,OAAO,EAAa,KAAK,gBAAgB,EAAE,MAAM,+BAA+B,CAAA;AAIhF,OAAO,EAAc,KAAK,SAAS,EAAE,KAAK,cAAc,EAAE,MAAM,UAAU,CAAA;AAE1E,MAAM,WAAW,oBACf,
|
|
1
|
+
{"version":3,"file":"CorvuDialogIcon.d.ts","sourceRoot":"","sources":["../../../ui/interactive/dialog/CorvuDialogIcon.tsx"],"names":[],"mappings":"AACA,OAAO,EAAoC,KAAK,cAAc,EAAE,MAAM,qCAAqC,CAAA;AAG3G,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,4CAA4C,CAAA;AAIlF,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAA;AACnD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAA;AACrD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAA;AACnE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAA;AAC7D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAA;AACvE,OAAO,EAAa,KAAK,gBAAgB,EAAE,MAAM,+BAA+B,CAAA;AAIhF,OAAO,EAAc,KAAK,SAAS,EAAE,KAAK,cAAc,EAAE,MAAM,UAAU,CAAA;AAE1E,MAAM,WAAW,oBACf,SACE,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC,EACvC,cAAc,EACd,OAAO,EACP,QAAQ,EACR,YAAY,EACZ,iBAAiB,EACjB,eAAe,EACf,gBAAgB;IAClB,WAAW,EAAE,MAAM,CAAA;IACnB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,KAAK,CAAC,EAAE,gBAAgB,CAAA;CACzB;AAED,eAAO,MAAM,eAAe,EAAE,SAAS,CAAC,oBAAoB,CA+D3D,CAAA"}
|
|
@@ -5,9 +5,9 @@ import { buttonCvaIconOnly, buttonVariant } from "../button/buttonCva.js";
|
|
|
5
5
|
import "../../classes/classesDisabledDirectly.js";
|
|
6
6
|
import { buttonIconCva } from "../button/buttonIconCva.js";
|
|
7
7
|
import { Icon } from "../../static/icon/Icon.js";
|
|
8
|
-
import { index_default } from "../../node_modules/@corvu/dialog/dist/index.js";
|
|
9
8
|
import { classesDialogContentMerge, classesDialogOverlayMerge } from "./classesDialogContent.js";
|
|
10
9
|
import { corvuDialogTextDefault } from "./CorcuDialogTexts.js";
|
|
10
|
+
import { index_default } from "../../node_modules/@corvu/dialog/dist/index.js";
|
|
11
11
|
import { splitProps } from "solid-js";
|
|
12
12
|
import { createComponent, insert, memo, mergeProps as mergeProps$1, template } from "solid-js/web";
|
|
13
13
|
import { mdiClose } from "@mdi/js";
|