@pantool/components 1.0.0-alpha.1 → 1.0.0-alpha.10

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.
Files changed (114) hide show
  1. package/dist/atoms/avatar/avatar.css +1 -0
  2. package/dist/atoms/avatar/avatar.d.ts +17 -0
  3. package/dist/atoms/avatar/avatar.js +2 -0
  4. package/dist/atoms/avatar/avatar.js.map +1 -0
  5. package/dist/atoms/avatar/avatar.module.js +3 -0
  6. package/dist/atoms/avatar/avatar.module.js.map +1 -0
  7. package/dist/atoms/avatar/index.d.ts +1 -0
  8. package/dist/atoms/avatar/index.js +1 -0
  9. package/dist/atoms/button/button.css +1 -18
  10. package/dist/atoms/button/button.d.ts +5 -5
  11. package/dist/atoms/button/button.js.map +1 -1
  12. package/dist/atoms/button/button.module.js +1 -0
  13. package/dist/atoms/button/button.module.js.map +1 -1
  14. package/dist/atoms/checkbox/checkbox.css +1 -119
  15. package/dist/atoms/checkbox/checkbox.module.js +1 -0
  16. package/dist/atoms/checkbox/checkbox.module.js.map +1 -1
  17. package/dist/atoms/clickable-area/clickable-area.d.ts +15 -0
  18. package/dist/atoms/clickable-area/clickable-area.js +2 -0
  19. package/dist/atoms/clickable-area/clickable-area.js.map +1 -0
  20. package/dist/atoms/clickable-area/index.d.ts +1 -0
  21. package/dist/atoms/clickable-area/index.js +1 -0
  22. package/dist/atoms/clickable-area/styles.css +1 -0
  23. package/dist/atoms/clickable-area/styles.module.js +3 -0
  24. package/dist/atoms/clickable-area/styles.module.js.map +1 -0
  25. package/dist/atoms/collapsible/collapsible.css +1 -0
  26. package/dist/atoms/collapsible/collapsible.d.ts +16 -0
  27. package/dist/atoms/collapsible/collapsible.js +2 -0
  28. package/dist/atoms/collapsible/collapsible.js.map +1 -0
  29. package/dist/atoms/collapsible/collapsible.module.js +3 -0
  30. package/dist/atoms/collapsible/collapsible.module.js.map +1 -0
  31. package/dist/atoms/collapsible/index.d.ts +1 -0
  32. package/dist/atoms/collapsible/index.js +1 -0
  33. package/dist/atoms/combobox/combobox.css +1 -302
  34. package/dist/atoms/combobox/combobox.d.ts +3 -3
  35. package/dist/atoms/combobox/combobox.module.js +1 -0
  36. package/dist/atoms/combobox/combobox.module.js.map +1 -1
  37. package/dist/atoms/combobox/index.d.ts +1 -0
  38. package/dist/atoms/context-menu/context-menu.css +1 -75
  39. package/dist/atoms/context-menu/context-menu.module.js +1 -0
  40. package/dist/atoms/context-menu/context-menu.module.js.map +1 -1
  41. package/dist/atoms/icon/icon.d.ts +2 -2
  42. package/dist/atoms/icon/icon.js.map +1 -1
  43. package/dist/atoms/icon-button/icon-button.css +1 -12
  44. package/dist/atoms/icon-button/icon-button.d.ts +3 -3
  45. package/dist/atoms/icon-button/icon-button.js.map +1 -1
  46. package/dist/atoms/icon-button/icon-button.module.js +1 -0
  47. package/dist/atoms/index.d.ts +8 -3
  48. package/dist/atoms/index.js +1 -1
  49. package/dist/atoms/input/input.css +1 -29
  50. package/dist/atoms/input/input.module.js +1 -0
  51. package/dist/atoms/input/input.module.js.map +1 -1
  52. package/dist/atoms/menu/index.d.ts +1 -0
  53. package/dist/atoms/menu/index.js +1 -0
  54. package/dist/atoms/menu/menu.css +1 -0
  55. package/dist/atoms/menu/menu.d.ts +69 -0
  56. package/dist/atoms/menu/menu.js +2 -0
  57. package/dist/atoms/menu/menu.js.map +1 -0
  58. package/dist/atoms/menu/menu.module.js +3 -0
  59. package/dist/atoms/menu/menu.module.js.map +1 -0
  60. package/dist/atoms/radio/radio.css +1 -142
  61. package/dist/atoms/radio/radio.module.js +1 -0
  62. package/dist/atoms/radio/radio.module.js.map +1 -1
  63. package/dist/atoms/switch/switch.css +1 -68
  64. package/dist/atoms/switch/switch.module.js +1 -0
  65. package/dist/atoms/switch/switch.module.js.map +1 -1
  66. package/dist/atoms/tabs/tabs.css +1 -92
  67. package/dist/atoms/tabs/tabs.d.ts +3 -3
  68. package/dist/atoms/tabs/tabs.module.js +1 -0
  69. package/dist/atoms/tabs/tabs.module.js.map +1 -1
  70. package/dist/atoms/text/text.css +1 -273
  71. package/dist/atoms/text/text.d.ts +3 -3
  72. package/dist/atoms/text/text.module.js +1 -0
  73. package/dist/atoms/text/text.module.js.map +1 -1
  74. package/dist/atoms/toast/toast.css +1 -151
  75. package/dist/atoms/toast/toast.module.js +1 -0
  76. package/dist/atoms/toast/toast.module.js.map +1 -1
  77. package/dist/atoms/tooltip/tooltip.css +1 -92
  78. package/dist/atoms/tooltip/tooltip.d.ts +3 -3
  79. package/dist/atoms/tooltip/tooltip.module.js +1 -0
  80. package/dist/atoms/tooltip/tooltip.module.js.map +1 -1
  81. package/dist/helpers/flex/flex.d.ts +45 -0
  82. package/dist/helpers/flex/flex.js +2 -0
  83. package/dist/helpers/flex/flex.js.map +1 -0
  84. package/dist/helpers/flex/index.d.ts +1 -0
  85. package/dist/helpers/flex/index.js +1 -0
  86. package/dist/helpers/flex/styles.css +1 -0
  87. package/dist/helpers/flex/styles.module.js +3 -0
  88. package/dist/helpers/flex/styles.module.js.map +1 -0
  89. package/dist/helpers/index.d.ts +4 -0
  90. package/dist/helpers/index.js +1 -0
  91. package/dist/helpers/portal/context/portal-config.js.map +1 -1
  92. package/dist/index.d.ts +10 -4
  93. package/dist/index.js +1 -1
  94. package/dist/internals/base-button/base-button.css +1 -262
  95. package/dist/internals/base-button/base-button.d.ts +2 -2
  96. package/dist/internals/base-button/base-button.js.map +1 -1
  97. package/dist/internals/base-button/base-button.module.js +1 -0
  98. package/dist/internals/base-button/base-button.module.js.map +1 -1
  99. package/dist/internals/base-dialog/base-dialog.css +1 -74
  100. package/dist/internals/base-dialog/base-dialog.module.js +1 -0
  101. package/dist/internals/base-field/base-field.css +1 -115
  102. package/dist/internals/base-field/base-field.module.js +1 -0
  103. package/dist/internals/base-field/base-field.module.js.map +1 -1
  104. package/dist/internals/base-svg/base-svg.css +1 -137
  105. package/dist/internals/base-svg/base-svg.d.ts +2 -2
  106. package/dist/internals/base-svg/base-svg.js.map +1 -1
  107. package/dist/internals/base-svg/base-svg.module.js +1 -0
  108. package/dist/internals/base-svg/base-svg.module.js.map +1 -1
  109. package/dist/providers/index.d.ts +0 -3
  110. package/dist/providers/index.js +1 -1
  111. package/dist/providers/toast-provider/toast-provider.css +1 -13
  112. package/dist/providers/toast-provider/toast-provider.module.js +1 -0
  113. package/dist/providers/toast-provider/toast-provider.module.js.map +1 -1
  114. package/package.json +12 -28
@@ -0,0 +1,45 @@
1
+ import { PolymorphicProps, WithBaseProps } from "../../types.js";
2
+ import * as React$1 from "react";
3
+ import { PropValueWithBreakpoints } from "@pantool/lib";
4
+
5
+ //#region src/helpers/flex/flex.d.ts
6
+ type FlexProps<E extends React$1.ElementType = "div"> = PolymorphicProps<E, WithBaseProps<{
7
+ /**
8
+ * The variant of the flex-box.
9
+ *
10
+ * @default "block"
11
+ */
12
+ variant?: "block" | "inline";
13
+ /**
14
+ * Changes how flex-items wrap in the flex-box.
15
+ */
16
+ wrapMode?: PropValueWithBreakpoints<"nowrap" | "wrap" | "wrap-reverse">;
17
+ /**
18
+ * Sets the gap between flex-items in the flex-box.
19
+ */
20
+ gap?: PropValueWithBreakpoints<"xxs" | "xs" | "sm" | "md" | "lg" | "xl" | "xxl">;
21
+ /**
22
+ * Sets the direction of flex-items in the flex-box.
23
+ */
24
+ direction?: PropValueWithBreakpoints<"row" | "column" | "row-reverse" | "column-reverse">;
25
+ /**
26
+ * Defines how the browser distributes space between and around content items
27
+ * along the main-axis of the flex-box.
28
+ */
29
+ justifyContent?: PropValueWithBreakpoints<"start" | "end" | "center" | "between" | "around" | "evenly">;
30
+ /**
31
+ * Controls the alignment of flex-items on the cross-axis in the flex-box.
32
+ */
33
+ alignItems?: PropValueWithBreakpoints<"start" | "end" | "center" | "baseline" | "stretch">;
34
+ /**
35
+ * Sets the distribution of space between and around content items
36
+ * along the cross-axis of the flex-box.
37
+ *
38
+ * (Note: This property has no effect on single rows of flex-items.)
39
+ */
40
+ alignContent?: PropValueWithBreakpoints<"start" | "end" | "center" | "between" | "around" | "evenly" | "stretch">;
41
+ }>>;
42
+ declare const Flex: <E extends React$1.ElementType = "div">(props: FlexProps<E>) => import("react/jsx-runtime").JSX.Element;
43
+ //#endregion
44
+ export { Flex, FlexProps };
45
+ //# sourceMappingURL=flex.d.ts.map
@@ -0,0 +1,2 @@
1
+ import e from"./styles.module.js";import t from"clsx";import"react";import{jsx as n}from"react/jsx-runtime";const r=r=>{let{as:i=`div`,className:a,children:o,wrapMode:s,gap:c,direction:l,justifyContent:u,alignItems:d,alignContent:f,variant:p=`block`,...m}=r;return n(i,{...m,"data-gap":c,"data-wrap-mode":s,"data-direction":l,"data-justify-content":u,"data-align-items":d,"data-align-content":f,"data-variant":p,"data-slot":`flex-root`,className:t(e.root,a),children:o})};export{r as Flex};
2
+ //# sourceMappingURL=flex.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"flex.js","names":["classes"],"sources":["../../../src/helpers/flex/flex.tsx"],"sourcesContent":["import type { PropValueWithBreakpoints } from \"@pantool/lib\";\nimport clsx from \"clsx\";\nimport * as React from \"react\";\nimport type { PolymorphicProps, WithBaseProps } from \"../../types\";\nimport classes from \"./styles.module.css\";\n\nexport type FlexProps<E extends React.ElementType = \"div\"> = PolymorphicProps<\n E,\n WithBaseProps<{\n /**\n * The variant of the flex-box.\n *\n * @default \"block\"\n */\n variant?: \"block\" | \"inline\";\n\n /**\n * Changes how flex-items wrap in the flex-box.\n */\n wrapMode?: PropValueWithBreakpoints<\"nowrap\" | \"wrap\" | \"wrap-reverse\">;\n\n /**\n * Sets the gap between flex-items in the flex-box.\n */\n gap?: PropValueWithBreakpoints<\n \"xxs\" | \"xs\" | \"sm\" | \"md\" | \"lg\" | \"xl\" | \"xxl\"\n >;\n\n /**\n * Sets the direction of flex-items in the flex-box.\n */\n direction?: PropValueWithBreakpoints<\n \"row\" | \"column\" | \"row-reverse\" | \"column-reverse\"\n >;\n\n /**\n * Defines how the browser distributes space between and around content items\n * along the main-axis of the flex-box.\n */\n justifyContent?: PropValueWithBreakpoints<\n \"start\" | \"end\" | \"center\" | \"between\" | \"around\" | \"evenly\"\n >;\n\n /**\n * Controls the alignment of flex-items on the cross-axis in the flex-box.\n */\n alignItems?: PropValueWithBreakpoints<\n \"start\" | \"end\" | \"center\" | \"baseline\" | \"stretch\"\n >;\n\n /**\n * Sets the distribution of space between and around content items\n * along the cross-axis of the flex-box.\n *\n * (Note: This property has no effect on single rows of flex-items.)\n */\n alignContent?: PropValueWithBreakpoints<\n \"start\" | \"end\" | \"center\" | \"between\" | \"around\" | \"evenly\" | \"stretch\"\n >;\n }>\n>;\n\nexport const Flex = <E extends React.ElementType = \"div\">(\n props: FlexProps<E>,\n) => {\n const {\n as: Root = \"div\",\n className,\n children,\n wrapMode,\n gap,\n direction,\n justifyContent,\n alignItems,\n alignContent,\n variant = \"block\",\n ...otherProps\n } = props;\n\n return (\n <Root\n {...otherProps}\n data-gap={gap}\n data-wrap-mode={wrapMode}\n data-direction={direction}\n data-justify-content={justifyContent}\n data-align-items={alignItems}\n data-align-content={alignContent}\n data-variant={variant}\n data-slot=\"flex-root\"\n className={clsx(classes[\"root\"], className)}\n >\n {children}\n </Root>\n );\n};\n"],"mappings":"4GA8DA,MAAa,EACX,GACG,CACH,GAAM,CACJ,GAAI,EAAO,MACX,YACA,WACA,WACA,MACA,YACA,iBACA,aACA,eACA,UAAU,QACV,GAAG,GACD,EAEJ,OACE,EAAC,EAAD,CACE,GAAI,EACJ,WAAU,EACV,iBAAgB,EAChB,iBAAgB,EAChB,uBAAsB,EACtB,mBAAkB,EAClB,qBAAoB,EACpB,eAAc,EACd,YAAU,YACV,UAAW,EAAKA,EAAQ,KAAS,CAAS,EAEzC,UACG,CAAA,CAEV"}
@@ -0,0 +1 @@
1
+ import { Flex, FlexProps } from "./flex.js";
@@ -0,0 +1 @@
1
+ import"./flex.js";
@@ -0,0 +1 @@
1
+ .VYIyxW_root{display:var(--display);gap:var(--gap);flex-direction:var(--direction);flex-wrap:var(--wrap-mode);justify-content:var(--justify-content);align-items:var(--align-items);align-content:var(--align-content)}.VYIyxW_root[data-variant=block]{--display:flex}.VYIyxW_root[data-variant=inline]{--display:inline-flex}.VYIyxW_root[data-gap=xxs]{--gap:var(--spacing-xxs)}.VYIyxW_root[data-gap=xs]{--gap:var(--spacing-xs)}.VYIyxW_root[data-gap=sm]{--gap:var(--spacing-sm)}.VYIyxW_root[data-gap=md]{--gap:var(--spacing-md)}.VYIyxW_root[data-gap=lg]{--gap:var(--spacing-lg)}.VYIyxW_root[data-gap=xl]{--gap:var(--spacing-xl)}.VYIyxW_root[data-gap=xxl]{--gap:var(--spacing-xxl)}.VYIyxW_root[data-direction=row]{--direction:row}.VYIyxW_root[data-direction=column]{--direction:column}.VYIyxW_root[data-direction=row-reverse]{--direction:row-reverse}.VYIyxW_root[data-direction=column-reverse]{--direction:column-reverse}.VYIyxW_root[data-wrap-mode=nowrap]{--wrap-mode:nowrap}.VYIyxW_root[data-wrap-mode=wrap]{--wrap-mode:wrap}.VYIyxW_root[data-wrap-mode=wrap-reverse]{--wrap-mode:wrap-reverse}.VYIyxW_root[data-justify-content=start]{--justify-content:flex-start}.VYIyxW_root[data-justify-content=end]{--justify-content:flex-end}.VYIyxW_root[data-justify-content=center]{--justify-content:center}.VYIyxW_root[data-justify-content=between]{--justify-content:space-between}.VYIyxW_root[data-justify-content=around]{--justify-content:space-around}.VYIyxW_root[data-justify-content=evenly]{--justify-content:space-evenly}.VYIyxW_root[data-align-items=start]{--align-items:flex-start}.VYIyxW_root[data-align-items=end]{--align-items:flex-end}.VYIyxW_root[data-align-items=center]{--align-items:center}.VYIyxW_root[data-align-items=baseline]{--align-items:baseline}.VYIyxW_root[data-align-items=stretch]{--align-items:stretch}.VYIyxW_root[data-align-content=start]{--align-content:flex-start}.VYIyxW_root[data-align-content=end]{--align-content:flex-end}.VYIyxW_root[data-align-content=center]{--align-content:center}.VYIyxW_root[data-align-content=between]{--align-content:space-between}.VYIyxW_root[data-align-content=around]{--align-content:space-around}.VYIyxW_root[data-align-content=evenly]{--align-content:space-evenly}.VYIyxW_root[data-align-content=stretch]{--align-content:stretch}
@@ -0,0 +1,3 @@
1
+ import './styles.css';
2
+ var e={root:`VYIyxW_root`};export{e as default};
3
+ //# sourceMappingURL=styles.module.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"styles.module.js","names":[],"sources":["../../../src/helpers/flex/styles.module.css"],"sourcesContent":[".root {\n display: var(--display);\n gap: var(--gap);\n flex-direction: var(--direction);\n flex-wrap: var(--wrap-mode);\n justify-content: var(--justify-content);\n align-items: var(--align-items);\n align-content: var(--align-content);\n}\n\n.root[data-variant=\"block\"] {\n --display: flex;\n}\n.root[data-variant=\"inline\"] {\n --display: inline-flex;\n}\n\n/* gap */\n.root[data-gap=\"xxs\"] {\n --gap: var(--spacing-xxs);\n}\n.root[data-gap=\"xs\"] {\n --gap: var(--spacing-xs);\n}\n.root[data-gap=\"sm\"] {\n --gap: var(--spacing-sm);\n}\n.root[data-gap=\"md\"] {\n --gap: var(--spacing-md);\n}\n.root[data-gap=\"lg\"] {\n --gap: var(--spacing-lg);\n}\n.root[data-gap=\"xl\"] {\n --gap: var(--spacing-xl);\n}\n.root[data-gap=\"xxl\"] {\n --gap: var(--spacing-xxl);\n}\n\n/* direction */\n.root[data-direction=\"row\"] {\n --direction: row;\n}\n.root[data-direction=\"column\"] {\n --direction: column;\n}\n.root[data-direction=\"row-reverse\"] {\n --direction: row-reverse;\n}\n.root[data-direction=\"column-reverse\"] {\n --direction: column-reverse;\n}\n\n/* wrap-mode */\n.root[data-wrap-mode=\"nowrap\"] {\n --wrap-mode: nowrap;\n}\n.root[data-wrap-mode=\"wrap\"] {\n --wrap-mode: wrap;\n}\n.root[data-wrap-mode=\"wrap-reverse\"] {\n --wrap-mode: wrap-reverse;\n}\n\n/* justify-content */\n.root[data-justify-content=\"start\"] {\n --justify-content: flex-start;\n}\n.root[data-justify-content=\"end\"] {\n --justify-content: flex-end;\n}\n.root[data-justify-content=\"center\"] {\n --justify-content: center;\n}\n.root[data-justify-content=\"between\"] {\n --justify-content: space-between;\n}\n.root[data-justify-content=\"around\"] {\n --justify-content: space-around;\n}\n.root[data-justify-content=\"evenly\"] {\n --justify-content: space-evenly;\n}\n\n/* align-items */\n.root[data-align-items=\"start\"] {\n --align-items: flex-start;\n}\n.root[data-align-items=\"end\"] {\n --align-items: flex-end;\n}\n.root[data-align-items=\"center\"] {\n --align-items: center;\n}\n.root[data-align-items=\"baseline\"] {\n --align-items: baseline;\n}\n.root[data-align-items=\"stretch\"] {\n --align-items: stretch;\n}\n\n/* align-content */\n.root[data-align-content=\"start\"] {\n --align-content: flex-start;\n}\n.root[data-align-content=\"end\"] {\n --align-content: flex-end;\n}\n.root[data-align-content=\"center\"] {\n --align-content: center;\n}\n.root[data-align-content=\"between\"] {\n --align-content: space-between;\n}\n.root[data-align-content=\"around\"] {\n --align-content: space-around;\n}\n.root[data-align-content=\"evenly\"] {\n --align-content: space-evenly;\n}\n.root[data-align-content=\"stretch\"] {\n --align-content: stretch;\n}\n"],"mappings":""}
@@ -0,0 +1,4 @@
1
+ import { Flex, FlexProps } from "./flex/flex.js";
2
+ import { usePortalConfig } from "./portal/context/hooks.js";
3
+ import { PortalConfigProvider } from "./portal/context/provider.js";
4
+ import { Portal, PortalProps } from "./portal/portal.js";
@@ -0,0 +1 @@
1
+ import"./portal/context/hooks.js";import"./portal/context/provider.js";import"./portal/portal.js";import"./portal/index.js";import"./flex/flex.js";import"./flex/index.js";
@@ -1 +1 @@
1
- {"version":3,"file":"portal-config.js","names":[],"sources":["../../../../src/helpers/portal/context/portal-config.ts"],"sourcesContent":["import * as React from \"react\";\n\nexport type PortalConfigValue = {\n /**\n * A function that will resolve the container element for the portals.\n *\n * Please note that this function is only called on the client-side.\n */\n resolveContainer: () => HTMLElement | null;\n};\n\nexport const PortalConfig = React.createContext<PortalConfigValue | null>(null);\n"],"mappings":"wBAWA,MAAa,EAAe,EAAM,cAAwC,IAAI"}
1
+ {"version":3,"file":"portal-config.js","names":["React"],"sources":["../../../../src/helpers/portal/context/portal-config.ts"],"sourcesContent":["import * as React from \"react\";\n\nexport type PortalConfigValue = {\n /**\n * A function that will resolve the container element for the portals.\n *\n * Please note that this function is only called on the client-side.\n */\n resolveContainer: () => HTMLElement | null;\n};\n\nexport const PortalConfig = React.createContext<PortalConfigValue | null>(null);\n"],"mappings":"wBAWA,MAAa,EAAeA,EAAM,cAAwC,IAAI"}
package/dist/index.d.ts CHANGED
@@ -1,21 +1,27 @@
1
1
  import { AlertDialog, AlertDialogProps } from "./atoms/alert-dialog/alert-dialog.js";
2
+ import { Avatar, AvatarProps } from "./atoms/avatar/avatar.js";
2
3
  import { Button, ButtonProps } from "./atoms/button/button.js";
3
4
  import { Checkbox, CheckboxProps } from "./atoms/checkbox/checkbox.js";
5
+ import { MergeElementProps, MergeElementPropsWithOmitted, PolymorphicProps, PolymorphicPropsWithOmitted, WithBaseProps, WithColorProps, WithRef } from "./types.js";
6
+ import { ClickableArea, ClickableAreaProps } from "./atoms/clickable-area/clickable-area.js";
7
+ import { Collapsible } from "./atoms/collapsible/collapsible.js";
8
+ import { ComboboxItem } from "./atoms/combobox/components/item.js";
4
9
  import { Combobox, ComboboxGroup, ComboboxProps } from "./atoms/combobox/combobox.js";
10
+ import { ConditionGuard, ConditionGuardProps } from "./atoms/condition-guard/condition-guard.js";
5
11
  import { ContextMenu } from "./atoms/context-menu/context-menu.js";
6
12
  import { Dialog, DialogProps } from "./atoms/dialog/dialog.js";
7
- import { Icon, IconProps } from "./atoms/icon/icon.js";
8
13
  import { IconButton, IconButtonProps } from "./atoms/icon-button/icon-button.js";
14
+ import { Icon, IconProps } from "./atoms/icon/icon.js";
9
15
  import { Input, InputProps } from "./atoms/input/input.js";
16
+ import { BaseItem, CheckboxItem, GroupItem, Menu, MenuItemsByMode, MenuMode, MenuProps, NormalItem, RadioItem, SeparatorItem, SubmenuItem } from "./atoms/menu/menu.js";
10
17
  import { Radio, RadioGroup, RadioGroupProps, RadioProps } from "./atoms/radio/radio.js";
11
18
  import { Switch, SwitchProps } from "./atoms/switch/switch.js";
12
19
  import { Tabs, TabsList, TabsListProps, TabsPanel, TabsPanelProps, TabsTab, TabsTabProps } from "./atoms/tabs/tabs.js";
13
20
  import { TabsListState, TabsPanelState, TabsRootChangeEventDetails, TabsRootState, TabsTabState, TabsTabValue } from "./atoms/tabs/index.js";
14
- import { MergeElementProps, MergeElementPropsWithOmitted, PolymorphicProps, PolymorphicPropsWithOmitted, WithBaseProps, WithColorProps, WithRef } from "./types.js";
15
21
  import { Text, TextColor, TextProps, TextVariant } from "./atoms/text/text.js";
16
22
  import { Toast, ToastData, ToastProps } from "./atoms/toast/toast.js";
17
23
  import { Tooltip, TooltipProps, TooltipProvider, TooltipProviderProps } from "./atoms/tooltip/tooltip.js";
18
- import { ConditionGuard, ConditionGuardProps } from "./atoms/condition-guard/condition-guard.js";
24
+ import { Flex, FlexProps } from "./helpers/flex/flex.js";
19
25
  import { usePortalConfig } from "./helpers/portal/context/hooks.js";
20
26
  import { PortalConfigProvider } from "./helpers/portal/context/provider.js";
21
27
  import { Portal, PortalProps } from "./helpers/portal/portal.js";
@@ -24,4 +30,4 @@ import { useAlertDialog } from "./providers/alert-dialog-provider/hooks.js";
24
30
  import { DialogContext, DialogProvider, DialogProviderProps, showDialog } from "./providers/dialog-provider/dialog-provider.js";
25
31
  import { useDialog } from "./providers/dialog-provider/hooks.js";
26
32
  import { ToastProvider, ToastProviderProps, toaster } from "./providers/toast-provider/toast-provider.js";
27
- export { AlertDialog, AlertDialogContext, AlertDialogProps, AlertDialogProvider, AlertDialogProviderProps, Button, ButtonProps, Checkbox, CheckboxProps, Combobox, ComboboxGroup, ComboboxProps, ConditionGuard, ConditionGuardProps, ContextMenu, Dialog, DialogContext, DialogProps, DialogProvider, DialogProviderProps, Icon, IconButton, IconButtonProps, IconProps, Input, InputProps, MergeElementProps, MergeElementPropsWithOmitted, PolymorphicProps, PolymorphicPropsWithOmitted, Portal, PortalConfigProvider, PortalProps, Radio, RadioGroup, RadioGroupProps, RadioProps, Switch, SwitchProps, Tabs, TabsList, type TabsListProps, type TabsListState, TabsPanel, type TabsPanelProps, type TabsPanelState, type TabsRootChangeEventDetails, type TabsRootState, TabsTab, type TabsTabProps, type TabsTabState, type TabsTabValue, Text, TextColor, TextProps, TextVariant, Toast, ToastData, ToastProps, ToastProvider, ToastProviderProps, Tooltip, TooltipProps, TooltipProvider, TooltipProviderProps, WithBaseProps, WithColorProps, WithRef, showAlertDialog, showDialog, toaster, useAlertDialog, useDialog, usePortalConfig };
33
+ export { AlertDialog, AlertDialogContext, AlertDialogProps, AlertDialogProvider, AlertDialogProviderProps, Avatar, AvatarProps, BaseItem, Button, ButtonProps, Checkbox, CheckboxItem, CheckboxProps, ClickableArea, ClickableAreaProps, Collapsible, Combobox, ComboboxGroup, type ComboboxItem, ComboboxProps, ConditionGuard, ConditionGuardProps, ContextMenu, Dialog, DialogContext, DialogProps, DialogProvider, DialogProviderProps, Flex, FlexProps, GroupItem, Icon, IconButton, IconButtonProps, IconProps, Input, InputProps, Menu, MenuItemsByMode, MenuMode, MenuProps, MergeElementProps, MergeElementPropsWithOmitted, NormalItem, PolymorphicProps, PolymorphicPropsWithOmitted, Portal, PortalConfigProvider, PortalProps, Radio, RadioGroup, RadioGroupProps, RadioItem, RadioProps, SeparatorItem, SubmenuItem, Switch, SwitchProps, Tabs, TabsList, type TabsListProps, type TabsListState, TabsPanel, type TabsPanelProps, type TabsPanelState, type TabsRootChangeEventDetails, type TabsRootState, TabsTab, type TabsTabProps, type TabsTabState, type TabsTabValue, Text, TextColor, TextProps, TextVariant, Toast, ToastData, ToastProps, ToastProvider, ToastProviderProps, Tooltip, TooltipProps, TooltipProvider, TooltipProviderProps, WithBaseProps, WithColorProps, WithRef, showAlertDialog, showDialog, toaster, useAlertDialog, useDialog, usePortalConfig };
package/dist/index.js CHANGED
@@ -1 +1 @@
1
- import{Button as e}from"./atoms/button/button.js";import{Text as t}from"./atoms/text/text.js";import{usePortalConfig as n}from"./helpers/portal/context/hooks.js";import{PortalConfigProvider as r}from"./helpers/portal/context/provider.js";import{Portal as i}from"./helpers/portal/portal.js";import{AlertDialog as a}from"./atoms/alert-dialog/alert-dialog.js";import{Icon as o}from"./atoms/icon/icon.js";import{Checkbox as s}from"./atoms/checkbox/checkbox.js";import{Combobox as c}from"./atoms/combobox/combobox.js";import{ContextMenu as l}from"./atoms/context-menu/context-menu.js";import{Dialog as u}from"./atoms/dialog/dialog.js";import{IconButton as d}from"./atoms/icon-button/icon-button.js";import{Input as f}from"./atoms/input/input.js";import{Radio as p,RadioGroup as m}from"./atoms/radio/radio.js";import{Switch as h}from"./atoms/switch/switch.js";import{Tabs as g,TabsList as _,TabsPanel as v,TabsTab as y}from"./atoms/tabs/tabs.js";import{Toast as b}from"./atoms/toast/toast.js";import{Tooltip as x,TooltipProvider as S}from"./atoms/tooltip/tooltip.js";import{ConditionGuard as C}from"./atoms/condition-guard/condition-guard.js";import"./atoms/index.js";import{AlertDialogContext as w,AlertDialogProvider as T,showAlertDialog as E}from"./providers/alert-dialog-provider/alert-dialog-provider.js";import{useAlertDialog as D}from"./providers/alert-dialog-provider/hooks.js";import{DialogContext as O,DialogProvider as k,showDialog as A}from"./providers/dialog-provider/dialog-provider.js";import{useDialog as j}from"./providers/dialog-provider/hooks.js";import{ToastProvider as M,toaster as N}from"./providers/toast-provider/toast-provider.js";import"./providers/index.js";import"./types.js";export{a as AlertDialog,w as AlertDialogContext,T as AlertDialogProvider,e as Button,s as Checkbox,c as Combobox,C as ConditionGuard,l as ContextMenu,u as Dialog,O as DialogContext,k as DialogProvider,o as Icon,d as IconButton,f as Input,i as Portal,r as PortalConfigProvider,p as Radio,m as RadioGroup,h as Switch,g as Tabs,_ as TabsList,v as TabsPanel,y as TabsTab,t as Text,b as Toast,M as ToastProvider,x as Tooltip,S as TooltipProvider,E as showAlertDialog,A as showDialog,N as toaster,D as useAlertDialog,j as useDialog,n as usePortalConfig};
1
+ import{Button as e}from"./atoms/button/button.js";import{Text as t}from"./atoms/text/text.js";import{usePortalConfig as n}from"./helpers/portal/context/hooks.js";import{PortalConfigProvider as r}from"./helpers/portal/context/provider.js";import{Portal as i}from"./helpers/portal/portal.js";import{AlertDialog as a}from"./atoms/alert-dialog/alert-dialog.js";import{Avatar as o}from"./atoms/avatar/avatar.js";import{Icon as s}from"./atoms/icon/icon.js";import{Checkbox as c}from"./atoms/checkbox/checkbox.js";import{ClickableArea as l}from"./atoms/clickable-area/clickable-area.js";import{Collapsible as u}from"./atoms/collapsible/collapsible.js";import{Combobox as d}from"./atoms/combobox/combobox.js";import{ConditionGuard as f}from"./atoms/condition-guard/condition-guard.js";import{ContextMenu as p}from"./atoms/context-menu/context-menu.js";import{Dialog as m}from"./atoms/dialog/dialog.js";import{IconButton as h}from"./atoms/icon-button/icon-button.js";import{Input as g}from"./atoms/input/input.js";import{Flex as _}from"./helpers/flex/flex.js";import"./helpers/index.js";import{Menu as v}from"./atoms/menu/menu.js";import{Radio as y,RadioGroup as b}from"./atoms/radio/radio.js";import{Switch as x}from"./atoms/switch/switch.js";import{Tabs as S,TabsList as C,TabsPanel as w,TabsTab as T}from"./atoms/tabs/tabs.js";import{Toast as E}from"./atoms/toast/toast.js";import{Tooltip as D,TooltipProvider as O}from"./atoms/tooltip/tooltip.js";import"./atoms/index.js";import{AlertDialogContext as k,AlertDialogProvider as A,showAlertDialog as j}from"./providers/alert-dialog-provider/alert-dialog-provider.js";import{useAlertDialog as M}from"./providers/alert-dialog-provider/hooks.js";import{DialogContext as N,DialogProvider as P,showDialog as F}from"./providers/dialog-provider/dialog-provider.js";import{useDialog as I}from"./providers/dialog-provider/hooks.js";import{ToastProvider as L,toaster as R}from"./providers/toast-provider/toast-provider.js";import"./providers/index.js";import"./types.js";export{a as AlertDialog,k as AlertDialogContext,A as AlertDialogProvider,o as Avatar,e as Button,c as Checkbox,l as ClickableArea,u as Collapsible,d as Combobox,f as ConditionGuard,p as ContextMenu,m as Dialog,N as DialogContext,P as DialogProvider,_ as Flex,s as Icon,h as IconButton,g as Input,v as Menu,i as Portal,r as PortalConfigProvider,y as Radio,b as RadioGroup,x as Switch,S as Tabs,C as TabsList,w as TabsPanel,T as TabsTab,t as Text,E as Toast,L as ToastProvider,D as Tooltip,O as TooltipProvider,j as showAlertDialog,F as showDialog,R as toaster,M as useAlertDialog,I as useDialog,n as usePortalConfig};
@@ -1,262 +1 @@
1
- ._4R_YnW_root {
2
- box-sizing: border-box;
3
- cursor: pointer;
4
- user-select: none;
5
- font-family: var(--typography-typeface-ltr);
6
- font-weight: var(--typography-body-2-weight);
7
- border-radius: var(--radius-full);
8
- height: var(--btn-height);
9
- padding: 0 var(--btn-padding-x);
10
- font-size: var(--btn-font-size);
11
- background-color: var(--btn-bg);
12
- color: var(--btn-text);
13
- border: none;
14
- border: 1px solid var(--btn-border);
15
- outline: none;
16
- justify-content: center;
17
- align-items: center;
18
- text-decoration: none;
19
- transition: background-color .2s, color .2s, border-color .2s, opacity .2s;
20
- display: inline-flex;
21
- }
22
-
23
- ._4R_YnW_root[data-size="sm"] {
24
- --btn-height: 1.5rem;
25
- --btn-icon-size: 1rem;
26
- --btn-padding-x: var(--spacing-sm);
27
- --btn-font-size: var(--typography-body-2-size);
28
- }
29
-
30
- ._4R_YnW_root[data-size="md"] {
31
- --btn-height: 2rem;
32
- --btn-icon-size: 1.5rem;
33
- --btn-padding-x: var(--spacing-md);
34
- --btn-font-size: var(--typography-body-2-size);
35
- }
36
-
37
- ._4R_YnW_root[data-size="lg"] {
38
- --btn-height: 2.5rem;
39
- --btn-icon-size: 2rem;
40
- --btn-padding-x: var(--spacing-lg);
41
- --btn-font-size: var(--typography-body-1-size);
42
- }
43
-
44
- ._4R_YnW_root[data-fluid] {
45
- width: 100%;
46
- }
47
-
48
- ._4R_YnW_root:focus-visible {
49
- outline-style: solid;
50
- outline-width: var(--stroke-focus-ring);
51
- outline-color: var(--color-action-info-base);
52
- outline-offset: var(--spacing-xxs);
53
- }
54
-
55
- ._4R_YnW_root[disabled], ._4R_YnW_root[data-disabled] {
56
- cursor: not-allowed;
57
- opacity: .5;
58
- }
59
-
60
- ._4R_YnW_root[data-color="neutral"][data-variant="filled"] {
61
- --btn-bg: var(--color-action-neutral-base);
62
- --btn-text: var(--color-on-neutral);
63
- --btn-border: transparent;
64
- }
65
-
66
- ._4R_YnW_root[data-color="neutral"][data-variant="filled"]:hover:not([disabled]) {
67
- --btn-bg: var(--color-action-neutral-hover);
68
- }
69
-
70
- ._4R_YnW_root[data-color="neutral"][data-variant="filled"]:active:not([disabled]) {
71
- --btn-bg: var(--color-action-neutral-active);
72
- }
73
-
74
- ._4R_YnW_root[data-color="neutral"][data-variant="outlined"] {
75
- --btn-bg: transparent;
76
- --btn-text: var(--color-content-neutral-base);
77
- --btn-border: var(--color-content-neutral-base);
78
- }
79
-
80
- ._4R_YnW_root[data-color="neutral"][data-variant="outlined"]:hover:not([disabled]) {
81
- --btn-bg: var(--color-surface-secondary);
82
- }
83
-
84
- ._4R_YnW_root[data-color="neutral"][data-variant="ghost"] {
85
- --btn-bg: transparent;
86
- --btn-text: var(--color-content-neutral-base);
87
- --btn-border: transparent;
88
- }
89
-
90
- ._4R_YnW_root[data-color="neutral"][data-variant="ghost"]:hover:not([disabled]) {
91
- --btn-bg: var(--color-surface-secondary);
92
- }
93
-
94
- ._4R_YnW_root[data-color="brand"][data-variant="filled"] {
95
- --btn-bg: var(--color-action-brand-base);
96
- --btn-text: var(--color-on-brand);
97
- --btn-border: transparent;
98
- }
99
-
100
- ._4R_YnW_root[data-color="brand"][data-variant="filled"]:hover:not([disabled]) {
101
- --btn-bg: var(--color-action-brand-hover);
102
- }
103
-
104
- ._4R_YnW_root[data-color="brand"][data-variant="filled"]:active:not([disabled]) {
105
- --btn-bg: var(--color-action-brand-active);
106
- }
107
-
108
- ._4R_YnW_root[data-color="brand"][data-variant="outlined"] {
109
- --btn-bg: transparent;
110
- --btn-text: var(--color-content-brand-base);
111
- --btn-border: var(--color-content-brand-base);
112
- }
113
-
114
- ._4R_YnW_root[data-color="brand"][data-variant="outlined"]:hover:not([disabled]) {
115
- --btn-bg: var(--color-surface-secondary);
116
- }
117
-
118
- ._4R_YnW_root[data-color="brand"][data-variant="ghost"] {
119
- --btn-bg: transparent;
120
- --btn-text: var(--color-content-brand-base);
121
- --btn-border: transparent;
122
- }
123
-
124
- ._4R_YnW_root[data-color="brand"][data-variant="ghost"]:hover:not([disabled]) {
125
- --btn-bg: var(--color-surface-secondary);
126
- }
127
-
128
- ._4R_YnW_root[data-color="positive"][data-variant="filled"] {
129
- --btn-bg: var(--color-action-positive-base);
130
- --btn-text: var(--color-on-positive);
131
- --btn-border: transparent;
132
- }
133
-
134
- ._4R_YnW_root[data-color="positive"][data-variant="filled"]:hover:not([disabled]) {
135
- --btn-bg: var(--color-action-positive-hover);
136
- }
137
-
138
- ._4R_YnW_root[data-color="positive"][data-variant="filled"]:active:not([disabled]) {
139
- --btn-bg: var(--color-action-positive-active);
140
- }
141
-
142
- ._4R_YnW_root[data-color="positive"][data-variant="outlined"] {
143
- --btn-bg: transparent;
144
- --btn-text: var(--color-content-positive-base);
145
- --btn-border: var(--color-content-positive-base);
146
- }
147
-
148
- ._4R_YnW_root[data-color="positive"][data-variant="outlined"]:hover:not([disabled]) {
149
- --btn-bg: var(--color-surface-secondary);
150
- }
151
-
152
- ._4R_YnW_root[data-color="positive"][data-variant="ghost"] {
153
- --btn-bg: transparent;
154
- --btn-text: var(--color-content-positive-base);
155
- --btn-border: transparent;
156
- }
157
-
158
- ._4R_YnW_root[data-color="positive"][data-variant="ghost"]:hover:not([disabled]) {
159
- --btn-bg: var(--color-surface-secondary);
160
- }
161
-
162
- ._4R_YnW_root[data-color="negative"][data-variant="filled"] {
163
- --btn-bg: var(--color-action-negative-base);
164
- --btn-text: var(--color-on-negative);
165
- --btn-border: transparent;
166
- }
167
-
168
- ._4R_YnW_root[data-color="negative"][data-variant="filled"]:hover:not([disabled]) {
169
- --btn-bg: var(--color-action-negative-hover);
170
- }
171
-
172
- ._4R_YnW_root[data-color="negative"][data-variant="filled"]:active:not([disabled]) {
173
- --btn-bg: var(--color-action-negative-active);
174
- }
175
-
176
- ._4R_YnW_root[data-color="negative"][data-variant="outlined"] {
177
- --btn-bg: transparent;
178
- --btn-text: var(--color-content-negative-base);
179
- --btn-border: var(--color-content-negative-base);
180
- }
181
-
182
- ._4R_YnW_root[data-color="negative"][data-variant="outlined"]:hover:not([disabled]) {
183
- --btn-bg: var(--color-surface-secondary);
184
- }
185
-
186
- ._4R_YnW_root[data-color="negative"][data-variant="ghost"] {
187
- --btn-bg: transparent;
188
- --btn-text: var(--color-content-negative-base);
189
- --btn-border: transparent;
190
- }
191
-
192
- ._4R_YnW_root[data-color="negative"][data-variant="ghost"]:hover:not([disabled]) {
193
- --btn-bg: var(--color-surface-secondary);
194
- }
195
-
196
- ._4R_YnW_root[data-color="warn"][data-variant="filled"] {
197
- --btn-bg: var(--color-action-warn-base);
198
- --btn-text: var(--color-on-warn);
199
- --btn-border: transparent;
200
- }
201
-
202
- ._4R_YnW_root[data-color="warn"][data-variant="filled"]:hover:not([disabled]) {
203
- --btn-bg: var(--color-action-warn-hover);
204
- }
205
-
206
- ._4R_YnW_root[data-color="warn"][data-variant="filled"]:active:not([disabled]) {
207
- --btn-bg: var(--color-action-warn-active);
208
- }
209
-
210
- ._4R_YnW_root[data-color="warn"][data-variant="outlined"] {
211
- --btn-bg: transparent;
212
- --btn-text: var(--color-content-warn-base);
213
- --btn-border: var(--color-content-warn-base);
214
- }
215
-
216
- ._4R_YnW_root[data-color="warn"][data-variant="outlined"]:hover:not([disabled]) {
217
- --btn-bg: var(--color-surface-secondary);
218
- }
219
-
220
- ._4R_YnW_root[data-color="warn"][data-variant="ghost"] {
221
- --btn-bg: transparent;
222
- --btn-text: var(--color-content-warn-base);
223
- --btn-border: transparent;
224
- }
225
-
226
- ._4R_YnW_root[data-color="warn"][data-variant="ghost"]:hover:not([disabled]) {
227
- --btn-bg: var(--color-surface-secondary);
228
- }
229
-
230
- ._4R_YnW_root[data-color="info"][data-variant="filled"] {
231
- --btn-bg: var(--color-action-info-base);
232
- --btn-text: var(--color-on-info);
233
- --btn-border: transparent;
234
- }
235
-
236
- ._4R_YnW_root[data-color="info"][data-variant="filled"]:hover:not([disabled]) {
237
- --btn-bg: var(--color-action-info-hover);
238
- }
239
-
240
- ._4R_YnW_root[data-color="info"][data-variant="filled"]:active:not([disabled]) {
241
- --btn-bg: var(--color-action-info-active);
242
- }
243
-
244
- ._4R_YnW_root[data-color="info"][data-variant="outlined"] {
245
- --btn-bg: transparent;
246
- --btn-text: var(--color-content-info-base);
247
- --btn-border: var(--color-content-info-base);
248
- }
249
-
250
- ._4R_YnW_root[data-color="info"][data-variant="outlined"]:hover:not([disabled]) {
251
- --btn-bg: var(--color-surface-secondary);
252
- }
253
-
254
- ._4R_YnW_root[data-color="info"][data-variant="ghost"] {
255
- --btn-bg: transparent;
256
- --btn-text: var(--color-content-info-base);
257
- --btn-border: transparent;
258
- }
259
-
260
- ._4R_YnW_root[data-color="info"][data-variant="ghost"]:hover:not([disabled]) {
261
- --btn-bg: var(--color-surface-secondary);
262
- }
1
+ ._4R_YnW_root{box-sizing:border-box;cursor:pointer;user-select:none;font-family:var(--typography-typeface-ltr);font-weight:var(--typography-body-2-weight);border-radius:var(--radius-md);height:var(--btn-height);padding:0 var(--btn-padding-x);font-size:var(--btn-font-size);background-color:var(--btn-bg);color:var(--btn-text);border:none;border:1px solid var(--btn-border);outline:none;justify-content:center;align-items:center;text-decoration:none;transition:background-color .2s,color .2s,border-color .2s,opacity .2s;display:inline-flex}._4R_YnW_root[data-size=sm]{--btn-height:1.5rem;--btn-icon-size:1rem;--btn-padding-x:var(--spacing-sm);--btn-font-size:var(--typography-body-2-size)}._4R_YnW_root[data-size=md]{--btn-height:2rem;--btn-icon-size:1.5rem;--btn-padding-x:var(--spacing-md);--btn-font-size:var(--typography-body-2-size)}._4R_YnW_root[data-size=lg]{--btn-height:2.5rem;--btn-icon-size:2rem;--btn-padding-x:var(--spacing-lg);--btn-font-size:var(--typography-body-1-size)}._4R_YnW_root[data-fluid]{width:100%}._4R_YnW_root:focus-visible{outline-style:solid;outline-width:var(--stroke-focus-ring);outline-color:var(--color-action-info-base);outline-offset:var(--spacing-xxs)}._4R_YnW_root[disabled],._4R_YnW_root[data-disabled]{cursor:not-allowed;opacity:.5}._4R_YnW_root[data-color=neutral][data-variant=filled]{--btn-bg:var(--color-action-neutral-base);--btn-text:var(--color-on-neutral);--btn-border:transparent}._4R_YnW_root[data-color=neutral][data-variant=filled]:hover:not([disabled]){--btn-bg:var(--color-action-neutral-hover)}._4R_YnW_root[data-color=neutral][data-variant=filled]:active:not([disabled]){--btn-bg:var(--color-action-neutral-active)}._4R_YnW_root[data-color=neutral][data-variant=outlined]{--btn-bg:transparent;--btn-text:var(--color-content-neutral-base);--btn-border:var(--color-content-neutral-base)}._4R_YnW_root[data-color=neutral][data-variant=outlined]:hover:not([disabled]){--btn-bg:var(--color-surface-secondary)}._4R_YnW_root[data-color=neutral][data-variant=ghost]{--btn-bg:transparent;--btn-text:var(--color-content-neutral-base);--btn-border:transparent}._4R_YnW_root[data-color=neutral][data-variant=ghost]:hover:not([disabled]){--btn-bg:var(--color-surface-secondary)}._4R_YnW_root[data-color=brand][data-variant=filled]{--btn-bg:var(--color-action-brand-base);--btn-text:var(--color-on-brand);--btn-border:transparent}._4R_YnW_root[data-color=brand][data-variant=filled]:hover:not([disabled]){--btn-bg:var(--color-action-brand-hover)}._4R_YnW_root[data-color=brand][data-variant=filled]:active:not([disabled]){--btn-bg:var(--color-action-brand-active)}._4R_YnW_root[data-color=brand][data-variant=outlined]{--btn-bg:transparent;--btn-text:var(--color-content-brand-base);--btn-border:var(--color-content-brand-base)}._4R_YnW_root[data-color=brand][data-variant=outlined]:hover:not([disabled]){--btn-bg:var(--color-surface-secondary)}._4R_YnW_root[data-color=brand][data-variant=ghost]{--btn-bg:transparent;--btn-text:var(--color-content-brand-base);--btn-border:transparent}._4R_YnW_root[data-color=brand][data-variant=ghost]:hover:not([disabled]){--btn-bg:var(--color-surface-secondary)}._4R_YnW_root[data-color=positive][data-variant=filled]{--btn-bg:var(--color-action-positive-base);--btn-text:var(--color-on-positive);--btn-border:transparent}._4R_YnW_root[data-color=positive][data-variant=filled]:hover:not([disabled]){--btn-bg:var(--color-action-positive-hover)}._4R_YnW_root[data-color=positive][data-variant=filled]:active:not([disabled]){--btn-bg:var(--color-action-positive-active)}._4R_YnW_root[data-color=positive][data-variant=outlined]{--btn-bg:transparent;--btn-text:var(--color-content-positive-base);--btn-border:var(--color-content-positive-base)}._4R_YnW_root[data-color=positive][data-variant=outlined]:hover:not([disabled]){--btn-bg:var(--color-surface-secondary)}._4R_YnW_root[data-color=positive][data-variant=ghost]{--btn-bg:transparent;--btn-text:var(--color-content-positive-base);--btn-border:transparent}._4R_YnW_root[data-color=positive][data-variant=ghost]:hover:not([disabled]){--btn-bg:var(--color-surface-secondary)}._4R_YnW_root[data-color=negative][data-variant=filled]{--btn-bg:var(--color-action-negative-base);--btn-text:var(--color-on-negative);--btn-border:transparent}._4R_YnW_root[data-color=negative][data-variant=filled]:hover:not([disabled]){--btn-bg:var(--color-action-negative-hover)}._4R_YnW_root[data-color=negative][data-variant=filled]:active:not([disabled]){--btn-bg:var(--color-action-negative-active)}._4R_YnW_root[data-color=negative][data-variant=outlined]{--btn-bg:transparent;--btn-text:var(--color-content-negative-base);--btn-border:var(--color-content-negative-base)}._4R_YnW_root[data-color=negative][data-variant=outlined]:hover:not([disabled]){--btn-bg:var(--color-surface-secondary)}._4R_YnW_root[data-color=negative][data-variant=ghost]{--btn-bg:transparent;--btn-text:var(--color-content-negative-base);--btn-border:transparent}._4R_YnW_root[data-color=negative][data-variant=ghost]:hover:not([disabled]){--btn-bg:var(--color-surface-secondary)}._4R_YnW_root[data-color=warn][data-variant=filled]{--btn-bg:var(--color-action-warn-base);--btn-text:var(--color-on-warn);--btn-border:transparent}._4R_YnW_root[data-color=warn][data-variant=filled]:hover:not([disabled]){--btn-bg:var(--color-action-warn-hover)}._4R_YnW_root[data-color=warn][data-variant=filled]:active:not([disabled]){--btn-bg:var(--color-action-warn-active)}._4R_YnW_root[data-color=warn][data-variant=outlined]{--btn-bg:transparent;--btn-text:var(--color-content-warn-base);--btn-border:var(--color-content-warn-base)}._4R_YnW_root[data-color=warn][data-variant=outlined]:hover:not([disabled]){--btn-bg:var(--color-surface-secondary)}._4R_YnW_root[data-color=warn][data-variant=ghost]{--btn-bg:transparent;--btn-text:var(--color-content-warn-base);--btn-border:transparent}._4R_YnW_root[data-color=warn][data-variant=ghost]:hover:not([disabled]){--btn-bg:var(--color-surface-secondary)}._4R_YnW_root[data-color=info][data-variant=filled]{--btn-bg:var(--color-action-info-base);--btn-text:var(--color-on-info);--btn-border:transparent}._4R_YnW_root[data-color=info][data-variant=filled]:hover:not([disabled]){--btn-bg:var(--color-action-info-hover)}._4R_YnW_root[data-color=info][data-variant=filled]:active:not([disabled]){--btn-bg:var(--color-action-info-active)}._4R_YnW_root[data-color=info][data-variant=outlined]{--btn-bg:transparent;--btn-text:var(--color-content-info-base);--btn-border:var(--color-content-info-base)}._4R_YnW_root[data-color=info][data-variant=outlined]:hover:not([disabled]){--btn-bg:var(--color-surface-secondary)}._4R_YnW_root[data-color=info][data-variant=ghost]{--btn-bg:transparent;--btn-text:var(--color-content-info-base);--btn-border:transparent}._4R_YnW_root[data-color=info][data-variant=ghost]:hover:not([disabled]){--btn-bg:var(--color-surface-secondary)}
@@ -1,8 +1,8 @@
1
- import * as React from "react";
1
+ import * as React$1 from "react";
2
2
  import { Button } from "@base-ui/react/button";
3
3
 
4
4
  //#region src/internals/base-button/base-button.d.ts
5
- interface BaseButtonProps extends React.ComponentPropsWithoutRef<typeof Button> {
5
+ interface BaseButtonProps extends React$1.ComponentPropsWithoutRef<typeof Button> {
6
6
  /** The visual style of the button. */
7
7
  variant?: "filled" | "outlined" | "ghost";
8
8
  /** The semantic color palette applied to the button. */
@@ -1 +1 @@
1
- {"version":3,"file":"base-button.js","names":["BaseUIButton","styles"],"sources":["../../../src/internals/base-button/base-button.tsx"],"sourcesContent":["import * as React from \"react\";\nimport { Button as BaseUIButton } from \"@base-ui/react/button\";\nimport styles from \"./base-button.module.css\";\n\nexport interface BaseButtonProps extends React.ComponentPropsWithoutRef<\n typeof BaseUIButton\n> {\n /** The visual style of the button. */\n variant?: \"filled\" | \"outlined\" | \"ghost\";\n /** The semantic color palette applied to the button. */\n color?: \"neutral\" | \"brand\" | \"positive\" | \"negative\" | \"warn\" | \"info\";\n /** The size of the button, affecting height, padding, and font size. */\n size?: \"sm\" | \"md\" | \"lg\";\n /** If true, the button is in a loading state and becomes disabled. */\n pending?: boolean;\n /** If true, the button will take up 100% of its container's width. */\n fluid?: boolean;\n}\n\nexport const BaseButton = React.forwardRef<HTMLButtonElement, BaseButtonProps>(\n (props, ref) => {\n const {\n className,\n variant = \"filled\",\n color = \"neutral\",\n size = \"md\",\n pending = false,\n fluid = false,\n disabled,\n children,\n ...rest\n } = props;\n\n return (\n <BaseUIButton\n ref={ref}\n className={`${styles[\"root\"]} ${className || \"\"}`.trim()}\n data-variant={variant}\n data-color={color}\n data-size={size}\n data-pending={pending ? \"\" : undefined}\n data-fluid={fluid ? \"\" : undefined}\n disabled={disabled || pending}\n {...rest}\n >\n {children}\n </BaseUIButton>\n );\n },\n);\n"],"mappings":"sJAmBA,MAAa,EAAa,EAAM,YAC7B,EAAO,IAAQ,CACd,GAAM,CACJ,YACA,UAAU,SACV,QAAQ,UACR,OAAO,KACP,UAAU,GACV,QAAQ,GACR,WACA,WACA,GAAG,GACD,EAEJ,OACE,EAACA,EAAD,CACO,MACL,UAAW,GAAGC,EAAO,KAAQ,GAAG,GAAa,KAAK,KAAK,EACvD,eAAc,EACd,aAAY,EACZ,YAAW,EACX,eAAc,EAAU,GAAK,IAAA,GAC7B,aAAY,EAAQ,GAAK,IAAA,GACzB,SAAU,GAAY,EACtB,GAAI,EAEH,UACW,CAAA,CAElB,CACF"}
1
+ {"version":3,"file":"base-button.js","names":["React","BaseUIButton","styles"],"sources":["../../../src/internals/base-button/base-button.tsx"],"sourcesContent":["import * as React from \"react\";\nimport { Button as BaseUIButton } from \"@base-ui/react/button\";\nimport styles from \"./base-button.module.css\";\n\nexport interface BaseButtonProps extends React.ComponentPropsWithoutRef<\n typeof BaseUIButton\n> {\n /** The visual style of the button. */\n variant?: \"filled\" | \"outlined\" | \"ghost\";\n /** The semantic color palette applied to the button. */\n color?: \"neutral\" | \"brand\" | \"positive\" | \"negative\" | \"warn\" | \"info\";\n /** The size of the button, affecting height, padding, and font size. */\n size?: \"sm\" | \"md\" | \"lg\";\n /** If true, the button is in a loading state and becomes disabled. */\n pending?: boolean;\n /** If true, the button will take up 100% of its container's width. */\n fluid?: boolean;\n}\n\nexport const BaseButton = React.forwardRef<HTMLButtonElement, BaseButtonProps>(\n (props, ref) => {\n const {\n className,\n variant = \"filled\",\n color = \"neutral\",\n size = \"md\",\n pending = false,\n fluid = false,\n disabled,\n children,\n ...rest\n } = props;\n\n return (\n <BaseUIButton\n ref={ref}\n className={`${styles[\"root\"]} ${className || \"\"}`.trim()}\n data-variant={variant}\n data-color={color}\n data-size={size}\n data-pending={pending ? \"\" : undefined}\n data-fluid={fluid ? \"\" : undefined}\n disabled={disabled || pending}\n {...rest}\n >\n {children}\n </BaseUIButton>\n );\n },\n);\n"],"mappings":"sJAmBA,MAAa,EAAaA,EAAM,YAC7B,EAAO,IAAQ,CACd,GAAM,CACJ,YACA,UAAU,SACV,QAAQ,UACR,OAAO,KACP,UAAU,GACV,QAAQ,GACR,WACA,WACA,GAAG,GACD,EAEJ,OACE,EAACC,EAAD,CACO,MACL,UAAW,GAAGC,EAAO,KAAQ,GAAG,GAAa,KAAK,KAAK,EACvD,eAAc,EACd,aAAY,EACZ,YAAW,EACX,eAAc,EAAU,GAAK,IAAA,GAC7B,aAAY,EAAQ,GAAK,IAAA,GACzB,SAAU,GAAY,EACtB,GAAI,EAEH,UACW,CAAA,CAElB,CACF"}
@@ -1,2 +1,3 @@
1
+ import './base-button.css';
1
2
  var e={root:`_4R_YnW_root`};export{e as default};
2
3
  //# sourceMappingURL=base-button.module.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"base-button.module.js","names":[],"sources":["../../../src/internals/base-button/base-button.module.css"],"sourcesContent":[".root {\n /* 1. Map internal variables to CSS properties */\n display: inline-flex;\n align-items: center;\n justify-content: center;\n box-sizing: border-box;\n outline: none;\n border: none;\n cursor: pointer;\n user-select: none;\n text-decoration: none;\n font-family: var(--typography-typeface-ltr);\n font-weight: var(--typography-body-2-weight);\n border-radius: var(--radius-full);\n transition:\n background-color 0.2s,\n color 0.2s,\n border-color 0.2s,\n opacity 0.2s;\n\n /* Apply local variables */\n height: var(--btn-height);\n padding: 0 var(--btn-padding-x);\n font-size: var(--btn-font-size);\n background-color: var(--btn-bg);\n color: var(--btn-text);\n border: 1px solid var(--btn-border);\n}\n\n/* --- Sizes --- */\n.root[data-size=\"sm\"] {\n --btn-height: 1.5rem;\n --btn-icon-size: 1rem;\n --btn-padding-x: var(--spacing-sm);\n --btn-font-size: var(--typography-body-2-size);\n}\n\n.root[data-size=\"md\"] {\n --btn-height: 2rem;\n --btn-icon-size: 1.5rem;\n --btn-padding-x: var(--spacing-md);\n --btn-font-size: var(--typography-body-2-size);\n}\n\n.root[data-size=\"lg\"] {\n --btn-height: 2.5rem;\n --btn-icon-size: 2rem;\n --btn-padding-x: var(--spacing-lg);\n --btn-font-size: var(--typography-body-1-size);\n}\n\n/* --- Layout Modifiers --- */\n.root[data-fluid] {\n width: 100%;\n}\n\n/* --- Focus Ring (Base UI provides data-focus-visible) --- */\n.root:focus-visible {\n outline-style: solid;\n outline-width: var(--stroke-focus-ring);\n outline-color: var(--color-action-info-base);\n outline-offset: var(--spacing-xxs);\n}\n\n/* --- Disabled State --- */\n.root[disabled],\n.root[data-disabled] {\n cursor: not-allowed;\n opacity: 0.5;\n}\n\n/* --- Variants & Colors: BRAND Example --- */\n/* (You would duplicate this block for neutral, positive, negative, etc.) */\n\n/* Brand Filled */\n.root[data-color=\"brand\"][data-variant=\"filled\"] {\n --btn-bg: var(--color-action-brand-base);\n --btn-text: var(--color-on-brand);\n --btn-border: transparent;\n}\n.root[data-color=\"brand\"][data-variant=\"filled\"]:hover:not([disabled]) {\n --btn-bg: var(--color-action-brand-hover);\n}\n.root[data-color=\"brand\"][data-variant=\"filled\"]:active:not([disabled]) {\n --btn-bg: var(--color-action-brand-active);\n}\n\n/* Brand Outlined */\n.root[data-color=\"brand\"][data-variant=\"outlined\"] {\n --btn-bg: transparent;\n --btn-text: var(--color-content-brand-base);\n --btn-border: var(--color-content-brand-base);\n}\n.root[data-color=\"brand\"][data-variant=\"outlined\"]:hover:not([disabled]) {\n --btn-bg: var(--color-surface-secondary);\n}\n\n/* Brand Ghost */\n.root[data-color=\"brand\"][data-variant=\"ghost\"] {\n --btn-bg: transparent;\n --btn-text: var(--color-content-brand-base);\n --btn-border: transparent;\n}\n.root[data-color=\"brand\"][data-variant=\"ghost\"]:hover:not([disabled]) {\n --btn-bg: var(--color-surface-secondary);\n}\n\n/* --- Variants & Colors --- */\n\n/* Neutral Filled */\n.root[data-color=\"neutral\"][data-variant=\"filled\"] {\n --btn-bg: var(--color-action-neutral-base);\n --btn-text: var(--color-on-neutral);\n --btn-border: transparent;\n}\n.root[data-color=\"neutral\"][data-variant=\"filled\"]:hover:not([disabled]) {\n --btn-bg: var(--color-action-neutral-hover);\n}\n.root[data-color=\"neutral\"][data-variant=\"filled\"]:active:not([disabled]) {\n --btn-bg: var(--color-action-neutral-active);\n}\n\n/* Neutral Outlined */\n.root[data-color=\"neutral\"][data-variant=\"outlined\"] {\n --btn-bg: transparent;\n --btn-text: var(--color-content-neutral-base);\n --btn-border: var(--color-content-neutral-base);\n}\n.root[data-color=\"neutral\"][data-variant=\"outlined\"]:hover:not([disabled]) {\n --btn-bg: var(--color-surface-secondary);\n}\n\n/* Neutral Ghost */\n.root[data-color=\"neutral\"][data-variant=\"ghost\"] {\n --btn-bg: transparent;\n --btn-text: var(--color-content-neutral-base);\n --btn-border: transparent;\n}\n.root[data-color=\"neutral\"][data-variant=\"ghost\"]:hover:not([disabled]) {\n --btn-bg: var(--color-surface-secondary);\n}\n\n/* Brand Filled */\n.root[data-color=\"brand\"][data-variant=\"filled\"] {\n --btn-bg: var(--color-action-brand-base);\n --btn-text: var(--color-on-brand);\n --btn-border: transparent;\n}\n.root[data-color=\"brand\"][data-variant=\"filled\"]:hover:not([disabled]) {\n --btn-bg: var(--color-action-brand-hover);\n}\n.root[data-color=\"brand\"][data-variant=\"filled\"]:active:not([disabled]) {\n --btn-bg: var(--color-action-brand-active);\n}\n\n/* Brand Outlined */\n.root[data-color=\"brand\"][data-variant=\"outlined\"] {\n --btn-bg: transparent;\n --btn-text: var(--color-content-brand-base);\n --btn-border: var(--color-content-brand-base);\n}\n.root[data-color=\"brand\"][data-variant=\"outlined\"]:hover:not([disabled]) {\n --btn-bg: var(--color-surface-secondary);\n}\n\n/* Brand Ghost */\n.root[data-color=\"brand\"][data-variant=\"ghost\"] {\n --btn-bg: transparent;\n --btn-text: var(--color-content-brand-base);\n --btn-border: transparent;\n}\n.root[data-color=\"brand\"][data-variant=\"ghost\"]:hover:not([disabled]) {\n --btn-bg: var(--color-surface-secondary);\n}\n\n/* Positive Filled */\n.root[data-color=\"positive\"][data-variant=\"filled\"] {\n --btn-bg: var(--color-action-positive-base);\n --btn-text: var(--color-on-positive);\n --btn-border: transparent;\n}\n.root[data-color=\"positive\"][data-variant=\"filled\"]:hover:not([disabled]) {\n --btn-bg: var(--color-action-positive-hover);\n}\n.root[data-color=\"positive\"][data-variant=\"filled\"]:active:not([disabled]) {\n --btn-bg: var(--color-action-positive-active);\n}\n\n/* Positive Outlined */\n.root[data-color=\"positive\"][data-variant=\"outlined\"] {\n --btn-bg: transparent;\n --btn-text: var(--color-content-positive-base);\n --btn-border: var(--color-content-positive-base);\n}\n.root[data-color=\"positive\"][data-variant=\"outlined\"]:hover:not([disabled]) {\n --btn-bg: var(--color-surface-secondary);\n}\n\n/* Positive Ghost */\n.root[data-color=\"positive\"][data-variant=\"ghost\"] {\n --btn-bg: transparent;\n --btn-text: var(--color-content-positive-base);\n --btn-border: transparent;\n}\n.root[data-color=\"positive\"][data-variant=\"ghost\"]:hover:not([disabled]) {\n --btn-bg: var(--color-surface-secondary);\n}\n\n/* Negative Filled */\n.root[data-color=\"negative\"][data-variant=\"filled\"] {\n --btn-bg: var(--color-action-negative-base);\n --btn-text: var(--color-on-negative);\n --btn-border: transparent;\n}\n.root[data-color=\"negative\"][data-variant=\"filled\"]:hover:not([disabled]) {\n --btn-bg: var(--color-action-negative-hover);\n}\n.root[data-color=\"negative\"][data-variant=\"filled\"]:active:not([disabled]) {\n --btn-bg: var(--color-action-negative-active);\n}\n\n/* Negative Outlined */\n.root[data-color=\"negative\"][data-variant=\"outlined\"] {\n --btn-bg: transparent;\n --btn-text: var(--color-content-negative-base);\n --btn-border: var(--color-content-negative-base);\n}\n.root[data-color=\"negative\"][data-variant=\"outlined\"]:hover:not([disabled]) {\n --btn-bg: var(--color-surface-secondary);\n}\n\n/* Negative Ghost */\n.root[data-color=\"negative\"][data-variant=\"ghost\"] {\n --btn-bg: transparent;\n --btn-text: var(--color-content-negative-base);\n --btn-border: transparent;\n}\n.root[data-color=\"negative\"][data-variant=\"ghost\"]:hover:not([disabled]) {\n --btn-bg: var(--color-surface-secondary);\n}\n\n/* Warn Filled */\n.root[data-color=\"warn\"][data-variant=\"filled\"] {\n --btn-bg: var(--color-action-warn-base);\n --btn-text: var(--color-on-warn);\n --btn-border: transparent;\n}\n.root[data-color=\"warn\"][data-variant=\"filled\"]:hover:not([disabled]) {\n --btn-bg: var(--color-action-warn-hover);\n}\n.root[data-color=\"warn\"][data-variant=\"filled\"]:active:not([disabled]) {\n --btn-bg: var(--color-action-warn-active);\n}\n\n/* Warn Outlined */\n.root[data-color=\"warn\"][data-variant=\"outlined\"] {\n --btn-bg: transparent;\n --btn-text: var(--color-content-warn-base);\n --btn-border: var(--color-content-warn-base);\n}\n.root[data-color=\"warn\"][data-variant=\"outlined\"]:hover:not([disabled]) {\n --btn-bg: var(--color-surface-secondary);\n}\n\n/* Warn Ghost */\n.root[data-color=\"warn\"][data-variant=\"ghost\"] {\n --btn-bg: transparent;\n --btn-text: var(--color-content-warn-base);\n --btn-border: transparent;\n}\n.root[data-color=\"warn\"][data-variant=\"ghost\"]:hover:not([disabled]) {\n --btn-bg: var(--color-surface-secondary);\n}\n\n/* Info Filled */\n.root[data-color=\"info\"][data-variant=\"filled\"] {\n --btn-bg: var(--color-action-info-base);\n --btn-text: var(--color-on-info);\n --btn-border: transparent;\n}\n.root[data-color=\"info\"][data-variant=\"filled\"]:hover:not([disabled]) {\n --btn-bg: var(--color-action-info-hover);\n}\n.root[data-color=\"info\"][data-variant=\"filled\"]:active:not([disabled]) {\n --btn-bg: var(--color-action-info-active);\n}\n\n/* Info Outlined */\n.root[data-color=\"info\"][data-variant=\"outlined\"] {\n --btn-bg: transparent;\n --btn-text: var(--color-content-info-base);\n --btn-border: var(--color-content-info-base);\n}\n.root[data-color=\"info\"][data-variant=\"outlined\"]:hover:not([disabled]) {\n --btn-bg: var(--color-surface-secondary);\n}\n\n/* Info Ghost */\n.root[data-color=\"info\"][data-variant=\"ghost\"] {\n --btn-bg: transparent;\n --btn-text: var(--color-content-info-base);\n --btn-border: transparent;\n}\n.root[data-color=\"info\"][data-variant=\"ghost\"]:hover:not([disabled]) {\n --btn-bg: var(--color-surface-secondary);\n}\n"],"mappings":"AAEA,IAAA,EAAU,CAAA,KAAO,cAAA"}
1
+ {"version":3,"file":"base-button.module.js","names":[],"sources":["../../../src/internals/base-button/base-button.module.css"],"sourcesContent":[".root {\n /* 1. Map internal variables to CSS properties */\n display: inline-flex;\n align-items: center;\n justify-content: center;\n box-sizing: border-box;\n outline: none;\n border: none;\n cursor: pointer;\n user-select: none;\n text-decoration: none;\n font-family: var(--typography-typeface-ltr);\n font-weight: var(--typography-body-2-weight);\n border-radius: var(--radius-md);\n transition:\n background-color 0.2s,\n color 0.2s,\n border-color 0.2s,\n opacity 0.2s;\n\n /* Apply local variables */\n height: var(--btn-height);\n padding: 0 var(--btn-padding-x);\n font-size: var(--btn-font-size);\n background-color: var(--btn-bg);\n color: var(--btn-text);\n border: 1px solid var(--btn-border);\n}\n\n/* --- Sizes --- */\n.root[data-size=\"sm\"] {\n --btn-height: 1.5rem;\n --btn-icon-size: 1rem;\n --btn-padding-x: var(--spacing-sm);\n --btn-font-size: var(--typography-body-2-size);\n}\n\n.root[data-size=\"md\"] {\n --btn-height: 2rem;\n --btn-icon-size: 1.5rem;\n --btn-padding-x: var(--spacing-md);\n --btn-font-size: var(--typography-body-2-size);\n}\n\n.root[data-size=\"lg\"] {\n --btn-height: 2.5rem;\n --btn-icon-size: 2rem;\n --btn-padding-x: var(--spacing-lg);\n --btn-font-size: var(--typography-body-1-size);\n}\n\n/* --- Layout Modifiers --- */\n.root[data-fluid] {\n width: 100%;\n}\n\n/* --- Focus Ring (Base UI provides data-focus-visible) --- */\n.root:focus-visible {\n outline-style: solid;\n outline-width: var(--stroke-focus-ring);\n outline-color: var(--color-action-info-base);\n outline-offset: var(--spacing-xxs);\n}\n\n/* --- Disabled State --- */\n.root[disabled],\n.root[data-disabled] {\n cursor: not-allowed;\n opacity: 0.5;\n}\n\n/* --- Variants & Colors: BRAND Example --- */\n/* (You would duplicate this block for neutral, positive, negative, etc.) */\n\n/* Brand Filled */\n.root[data-color=\"brand\"][data-variant=\"filled\"] {\n --btn-bg: var(--color-action-brand-base);\n --btn-text: var(--color-on-brand);\n --btn-border: transparent;\n}\n.root[data-color=\"brand\"][data-variant=\"filled\"]:hover:not([disabled]) {\n --btn-bg: var(--color-action-brand-hover);\n}\n.root[data-color=\"brand\"][data-variant=\"filled\"]:active:not([disabled]) {\n --btn-bg: var(--color-action-brand-active);\n}\n\n/* Brand Outlined */\n.root[data-color=\"brand\"][data-variant=\"outlined\"] {\n --btn-bg: transparent;\n --btn-text: var(--color-content-brand-base);\n --btn-border: var(--color-content-brand-base);\n}\n.root[data-color=\"brand\"][data-variant=\"outlined\"]:hover:not([disabled]) {\n --btn-bg: var(--color-surface-secondary);\n}\n\n/* Brand Ghost */\n.root[data-color=\"brand\"][data-variant=\"ghost\"] {\n --btn-bg: transparent;\n --btn-text: var(--color-content-brand-base);\n --btn-border: transparent;\n}\n.root[data-color=\"brand\"][data-variant=\"ghost\"]:hover:not([disabled]) {\n --btn-bg: var(--color-surface-secondary);\n}\n\n/* --- Variants & Colors --- */\n\n/* Neutral Filled */\n.root[data-color=\"neutral\"][data-variant=\"filled\"] {\n --btn-bg: var(--color-action-neutral-base);\n --btn-text: var(--color-on-neutral);\n --btn-border: transparent;\n}\n.root[data-color=\"neutral\"][data-variant=\"filled\"]:hover:not([disabled]) {\n --btn-bg: var(--color-action-neutral-hover);\n}\n.root[data-color=\"neutral\"][data-variant=\"filled\"]:active:not([disabled]) {\n --btn-bg: var(--color-action-neutral-active);\n}\n\n/* Neutral Outlined */\n.root[data-color=\"neutral\"][data-variant=\"outlined\"] {\n --btn-bg: transparent;\n --btn-text: var(--color-content-neutral-base);\n --btn-border: var(--color-content-neutral-base);\n}\n.root[data-color=\"neutral\"][data-variant=\"outlined\"]:hover:not([disabled]) {\n --btn-bg: var(--color-surface-secondary);\n}\n\n/* Neutral Ghost */\n.root[data-color=\"neutral\"][data-variant=\"ghost\"] {\n --btn-bg: transparent;\n --btn-text: var(--color-content-neutral-base);\n --btn-border: transparent;\n}\n.root[data-color=\"neutral\"][data-variant=\"ghost\"]:hover:not([disabled]) {\n --btn-bg: var(--color-surface-secondary);\n}\n\n/* Brand Filled */\n.root[data-color=\"brand\"][data-variant=\"filled\"] {\n --btn-bg: var(--color-action-brand-base);\n --btn-text: var(--color-on-brand);\n --btn-border: transparent;\n}\n.root[data-color=\"brand\"][data-variant=\"filled\"]:hover:not([disabled]) {\n --btn-bg: var(--color-action-brand-hover);\n}\n.root[data-color=\"brand\"][data-variant=\"filled\"]:active:not([disabled]) {\n --btn-bg: var(--color-action-brand-active);\n}\n\n/* Brand Outlined */\n.root[data-color=\"brand\"][data-variant=\"outlined\"] {\n --btn-bg: transparent;\n --btn-text: var(--color-content-brand-base);\n --btn-border: var(--color-content-brand-base);\n}\n.root[data-color=\"brand\"][data-variant=\"outlined\"]:hover:not([disabled]) {\n --btn-bg: var(--color-surface-secondary);\n}\n\n/* Brand Ghost */\n.root[data-color=\"brand\"][data-variant=\"ghost\"] {\n --btn-bg: transparent;\n --btn-text: var(--color-content-brand-base);\n --btn-border: transparent;\n}\n.root[data-color=\"brand\"][data-variant=\"ghost\"]:hover:not([disabled]) {\n --btn-bg: var(--color-surface-secondary);\n}\n\n/* Positive Filled */\n.root[data-color=\"positive\"][data-variant=\"filled\"] {\n --btn-bg: var(--color-action-positive-base);\n --btn-text: var(--color-on-positive);\n --btn-border: transparent;\n}\n.root[data-color=\"positive\"][data-variant=\"filled\"]:hover:not([disabled]) {\n --btn-bg: var(--color-action-positive-hover);\n}\n.root[data-color=\"positive\"][data-variant=\"filled\"]:active:not([disabled]) {\n --btn-bg: var(--color-action-positive-active);\n}\n\n/* Positive Outlined */\n.root[data-color=\"positive\"][data-variant=\"outlined\"] {\n --btn-bg: transparent;\n --btn-text: var(--color-content-positive-base);\n --btn-border: var(--color-content-positive-base);\n}\n.root[data-color=\"positive\"][data-variant=\"outlined\"]:hover:not([disabled]) {\n --btn-bg: var(--color-surface-secondary);\n}\n\n/* Positive Ghost */\n.root[data-color=\"positive\"][data-variant=\"ghost\"] {\n --btn-bg: transparent;\n --btn-text: var(--color-content-positive-base);\n --btn-border: transparent;\n}\n.root[data-color=\"positive\"][data-variant=\"ghost\"]:hover:not([disabled]) {\n --btn-bg: var(--color-surface-secondary);\n}\n\n/* Negative Filled */\n.root[data-color=\"negative\"][data-variant=\"filled\"] {\n --btn-bg: var(--color-action-negative-base);\n --btn-text: var(--color-on-negative);\n --btn-border: transparent;\n}\n.root[data-color=\"negative\"][data-variant=\"filled\"]:hover:not([disabled]) {\n --btn-bg: var(--color-action-negative-hover);\n}\n.root[data-color=\"negative\"][data-variant=\"filled\"]:active:not([disabled]) {\n --btn-bg: var(--color-action-negative-active);\n}\n\n/* Negative Outlined */\n.root[data-color=\"negative\"][data-variant=\"outlined\"] {\n --btn-bg: transparent;\n --btn-text: var(--color-content-negative-base);\n --btn-border: var(--color-content-negative-base);\n}\n.root[data-color=\"negative\"][data-variant=\"outlined\"]:hover:not([disabled]) {\n --btn-bg: var(--color-surface-secondary);\n}\n\n/* Negative Ghost */\n.root[data-color=\"negative\"][data-variant=\"ghost\"] {\n --btn-bg: transparent;\n --btn-text: var(--color-content-negative-base);\n --btn-border: transparent;\n}\n.root[data-color=\"negative\"][data-variant=\"ghost\"]:hover:not([disabled]) {\n --btn-bg: var(--color-surface-secondary);\n}\n\n/* Warn Filled */\n.root[data-color=\"warn\"][data-variant=\"filled\"] {\n --btn-bg: var(--color-action-warn-base);\n --btn-text: var(--color-on-warn);\n --btn-border: transparent;\n}\n.root[data-color=\"warn\"][data-variant=\"filled\"]:hover:not([disabled]) {\n --btn-bg: var(--color-action-warn-hover);\n}\n.root[data-color=\"warn\"][data-variant=\"filled\"]:active:not([disabled]) {\n --btn-bg: var(--color-action-warn-active);\n}\n\n/* Warn Outlined */\n.root[data-color=\"warn\"][data-variant=\"outlined\"] {\n --btn-bg: transparent;\n --btn-text: var(--color-content-warn-base);\n --btn-border: var(--color-content-warn-base);\n}\n.root[data-color=\"warn\"][data-variant=\"outlined\"]:hover:not([disabled]) {\n --btn-bg: var(--color-surface-secondary);\n}\n\n/* Warn Ghost */\n.root[data-color=\"warn\"][data-variant=\"ghost\"] {\n --btn-bg: transparent;\n --btn-text: var(--color-content-warn-base);\n --btn-border: transparent;\n}\n.root[data-color=\"warn\"][data-variant=\"ghost\"]:hover:not([disabled]) {\n --btn-bg: var(--color-surface-secondary);\n}\n\n/* Info Filled */\n.root[data-color=\"info\"][data-variant=\"filled\"] {\n --btn-bg: var(--color-action-info-base);\n --btn-text: var(--color-on-info);\n --btn-border: transparent;\n}\n.root[data-color=\"info\"][data-variant=\"filled\"]:hover:not([disabled]) {\n --btn-bg: var(--color-action-info-hover);\n}\n.root[data-color=\"info\"][data-variant=\"filled\"]:active:not([disabled]) {\n --btn-bg: var(--color-action-info-active);\n}\n\n/* Info Outlined */\n.root[data-color=\"info\"][data-variant=\"outlined\"] {\n --btn-bg: transparent;\n --btn-text: var(--color-content-info-base);\n --btn-border: var(--color-content-info-base);\n}\n.root[data-color=\"info\"][data-variant=\"outlined\"]:hover:not([disabled]) {\n --btn-bg: var(--color-surface-secondary);\n}\n\n/* Info Ghost */\n.root[data-color=\"info\"][data-variant=\"ghost\"] {\n --btn-bg: transparent;\n --btn-text: var(--color-content-info-base);\n --btn-border: transparent;\n}\n.root[data-color=\"info\"][data-variant=\"ghost\"]:hover:not([disabled]) {\n --btn-bg: var(--color-surface-secondary);\n}\n"],"mappings":""}
@@ -1,74 +1 @@
1
- ._9nsqjG_backdrop {
2
- background-color: var(--color-surface-backdrop-overlay);
3
- backdrop-filter: blur(.5rem);
4
- z-index: 1000;
5
- transition: opacity .2s;
6
- position: fixed;
7
- inset: 0;
8
-
9
- &[data-starting-style], &[data-ending-style] {
10
- opacity: 0;
11
- }
12
- }
13
-
14
- ._9nsqjG_popup {
15
- --background: var(--color-surface-base);
16
- --foreground: var(--color-content-neutral-base);
17
- --border: var(--color-border-primary);
18
- z-index: 1010;
19
- box-sizing: border-box;
20
- background-color: var(--background);
21
- width: calc(100vw - 2rem);
22
- max-width: 28rem;
23
- color: var(--foreground);
24
- border: 1px solid var(--border);
25
- border-radius: var(--spacing-sm);
26
- padding: var(--spacing-xl);
27
- gap: var(--spacing-md);
28
- flex-direction: column;
29
- transition: opacity .2s cubic-bezier(.22, 1, .36, 1), transform .2s cubic-bezier(.22, 1, .36, 1);
30
- display: flex;
31
- position: fixed;
32
- top: 50%;
33
- left: 50%;
34
- transform: translate(-50%, -50%);
35
-
36
- &[data-starting-style], &[data-ending-style] {
37
- opacity: 0;
38
- transform: translate(-50%, -46%);
39
- }
40
-
41
- &:focus-visible {
42
- outline-style: solid;
43
- outline-width: var(--stroke-focus-ring);
44
- outline-color: var(--color-action-info-base);
45
- outline-offset: var(--spacing-xxs);
46
- }
47
-
48
- &[data-variant="neutral"] {
49
- --border: var(--color-action-neutral-muted);
50
- }
51
-
52
- &[data-variant="positive"] {
53
- --border: var(--color-action-positive-muted);
54
- }
55
-
56
- &[data-variant="negative"] {
57
- --border: var(--color-action-negative-muted);
58
- }
59
-
60
- &[data-variant="warn"] {
61
- --border: var(--color-action-warn-muted);
62
- }
63
-
64
- &[data-variant="info"] {
65
- --border: var(--color-action-info-muted);
66
- }
67
- }
68
-
69
- ._9nsqjG_actions {
70
- justify-content: flex-end;
71
- gap: var(--spacing-sm);
72
- margin-top: var(--spacing-xs);
73
- display: flex;
74
- }
1
+ ._9nsqjG_backdrop{background-color:var(--color-surface-backdrop-overlay);backdrop-filter:blur(.5rem);z-index:1000;transition:opacity .2s;position:fixed;inset:0;&[data-starting-style],&[data-ending-style]{opacity:0}}._9nsqjG_popup{--background:var(--color-surface-base);--foreground:var(--color-content-neutral-base);--border:var(--color-border-primary);z-index:1010;box-sizing:border-box;background-color:var(--background);width:calc(100vw - 2rem);max-width:28rem;color:var(--foreground);border:1px solid var(--border);border-radius:var(--spacing-sm);padding:var(--spacing-xl);gap:var(--spacing-md);flex-direction:column;transition:opacity .2s cubic-bezier(.22,1,.36,1),transform .2s cubic-bezier(.22,1,.36,1);display:flex;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);&[data-starting-style],&[data-ending-style]{opacity:0;transform:translate(-50%,-46%)}&:focus-visible{outline-style:solid;outline-width:var(--stroke-focus-ring);outline-color:var(--color-action-info-base);outline-offset:var(--spacing-xxs)}&[data-variant=neutral]{--border:var(--color-action-neutral-muted)}&[data-variant=positive]{--border:var(--color-action-positive-muted)}&[data-variant=negative]{--border:var(--color-action-negative-muted)}&[data-variant=warn]{--border:var(--color-action-warn-muted)}&[data-variant=info]{--border:var(--color-action-info-muted)}}._9nsqjG_actions{justify-content:flex-end;gap:var(--spacing-sm);margin-top:var(--spacing-xs);display:flex}
@@ -1,2 +1,3 @@
1
+ import './base-dialog.css';
1
2
  var e={actions:`_9nsqjG_actions`,backdrop:`_9nsqjG_backdrop`,popup:`_9nsqjG_popup`};export{e as default};
2
3
  //# sourceMappingURL=base-dialog.module.js.map