@db-vincent/react 0.0.0-stage → 0.1.1

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 (129) hide show
  1. package/dist/components/Accordion/Accordion.d.ts +14 -0
  2. package/dist/components/Accordion/Accordion.d.ts.map +1 -0
  3. package/dist/components/Accordion/index.d.ts +4 -0
  4. package/dist/components/Accordion/index.d.ts.map +1 -0
  5. package/dist/components/Alert/Alert.d.ts +11 -0
  6. package/dist/components/Alert/Alert.d.ts.map +1 -0
  7. package/dist/components/Alert/index.d.ts +3 -0
  8. package/dist/components/Alert/index.d.ts.map +1 -0
  9. package/dist/components/Badge/Badge.d.ts +12 -0
  10. package/dist/components/Badge/Badge.d.ts.map +1 -0
  11. package/dist/components/Badge/index.d.ts +3 -0
  12. package/dist/components/Badge/index.d.ts.map +1 -0
  13. package/dist/components/Breadcrumbs/Breadcrumbs.d.ts +13 -0
  14. package/dist/components/Breadcrumbs/Breadcrumbs.d.ts.map +1 -0
  15. package/dist/components/Breadcrumbs/index.d.ts +4 -0
  16. package/dist/components/Breadcrumbs/index.d.ts.map +1 -0
  17. package/dist/components/Button/Button.d.ts +16 -0
  18. package/dist/components/Button/Button.d.ts.map +1 -0
  19. package/dist/components/Button/index.d.ts +3 -0
  20. package/dist/components/Button/index.d.ts.map +1 -0
  21. package/dist/components/Card/Card.d.ts +13 -0
  22. package/dist/components/Card/Card.d.ts.map +1 -0
  23. package/dist/components/Card/index.d.ts +3 -0
  24. package/dist/components/Card/index.d.ts.map +1 -0
  25. package/dist/components/Checkbox/Checkbox.d.ts +16 -0
  26. package/dist/components/Checkbox/Checkbox.d.ts.map +1 -0
  27. package/dist/components/Checkbox/index.d.ts +3 -0
  28. package/dist/components/Checkbox/index.d.ts.map +1 -0
  29. package/dist/components/Chip/Chip.d.ts +11 -0
  30. package/dist/components/Chip/Chip.d.ts.map +1 -0
  31. package/dist/components/Chip/index.d.ts +3 -0
  32. package/dist/components/Chip/index.d.ts.map +1 -0
  33. package/dist/components/CodeBlock/CodeBlock.d.ts +7 -0
  34. package/dist/components/CodeBlock/CodeBlock.d.ts.map +1 -0
  35. package/dist/components/CodeBlock/index.d.ts +3 -0
  36. package/dist/components/CodeBlock/index.d.ts.map +1 -0
  37. package/dist/components/EmptyState/EmptyState.d.ts +10 -0
  38. package/dist/components/EmptyState/EmptyState.d.ts.map +1 -0
  39. package/dist/components/EmptyState/index.d.ts +3 -0
  40. package/dist/components/EmptyState/index.d.ts.map +1 -0
  41. package/dist/components/Example/Example.d.ts +9 -0
  42. package/dist/components/Example/Example.d.ts.map +1 -0
  43. package/dist/components/Example/index.d.ts +3 -0
  44. package/dist/components/Example/index.d.ts.map +1 -0
  45. package/dist/components/Grid/Grid.d.ts +7 -0
  46. package/dist/components/Grid/Grid.d.ts.map +1 -0
  47. package/dist/components/Grid/index.d.ts +3 -0
  48. package/dist/components/Grid/index.d.ts.map +1 -0
  49. package/dist/components/GridItem/GridItem.d.ts +7 -0
  50. package/dist/components/GridItem/GridItem.d.ts.map +1 -0
  51. package/dist/components/GridItem/index.d.ts +3 -0
  52. package/dist/components/GridItem/index.d.ts.map +1 -0
  53. package/dist/components/Icon/Icon.d.ts +14 -0
  54. package/dist/components/Icon/Icon.d.ts.map +1 -0
  55. package/dist/components/Icon/index.d.ts +3 -0
  56. package/dist/components/Icon/index.d.ts.map +1 -0
  57. package/dist/components/Modal/Modal.d.ts +15 -0
  58. package/dist/components/Modal/Modal.d.ts.map +1 -0
  59. package/dist/components/Modal/index.d.ts +3 -0
  60. package/dist/components/Modal/index.d.ts.map +1 -0
  61. package/dist/components/Navbar/Navbar.d.ts +46 -0
  62. package/dist/components/Navbar/Navbar.d.ts.map +1 -0
  63. package/dist/components/Navbar/index.d.ts +4 -0
  64. package/dist/components/Navbar/index.d.ts.map +1 -0
  65. package/dist/components/PageHeader/PageHeader.d.ts +9 -0
  66. package/dist/components/PageHeader/PageHeader.d.ts.map +1 -0
  67. package/dist/components/PageHeader/index.d.ts +3 -0
  68. package/dist/components/PageHeader/index.d.ts.map +1 -0
  69. package/dist/components/Pagination/Pagination.d.ts +13 -0
  70. package/dist/components/Pagination/Pagination.d.ts.map +1 -0
  71. package/dist/components/Pagination/index.d.ts +3 -0
  72. package/dist/components/Pagination/index.d.ts.map +1 -0
  73. package/dist/components/Radio/Radio.d.ts +16 -0
  74. package/dist/components/Radio/Radio.d.ts.map +1 -0
  75. package/dist/components/Radio/index.d.ts +3 -0
  76. package/dist/components/Radio/index.d.ts.map +1 -0
  77. package/dist/components/RadioGroup/RadioGroup.d.ts +9 -0
  78. package/dist/components/RadioGroup/RadioGroup.d.ts.map +1 -0
  79. package/dist/components/RadioGroup/index.d.ts +3 -0
  80. package/dist/components/RadioGroup/index.d.ts.map +1 -0
  81. package/dist/components/Section/Section.d.ts +9 -0
  82. package/dist/components/Section/Section.d.ts.map +1 -0
  83. package/dist/components/Section/index.d.ts +3 -0
  84. package/dist/components/Section/index.d.ts.map +1 -0
  85. package/dist/components/Select/Select.d.ts +29 -0
  86. package/dist/components/Select/Select.d.ts.map +1 -0
  87. package/dist/components/Select/index.d.ts +4 -0
  88. package/dist/components/Select/index.d.ts.map +1 -0
  89. package/dist/components/Sidebar/Sidebar.d.ts +29 -0
  90. package/dist/components/Sidebar/Sidebar.d.ts.map +1 -0
  91. package/dist/components/Sidebar/index.d.ts +4 -0
  92. package/dist/components/Sidebar/index.d.ts.map +1 -0
  93. package/dist/components/Skeleton/Skeleton.d.ts +8 -0
  94. package/dist/components/Skeleton/Skeleton.d.ts.map +1 -0
  95. package/dist/components/Skeleton/index.d.ts +4 -0
  96. package/dist/components/Skeleton/index.d.ts.map +1 -0
  97. package/dist/components/Spinner/Spinner.d.ts +8 -0
  98. package/dist/components/Spinner/Spinner.d.ts.map +1 -0
  99. package/dist/components/Spinner/index.d.ts +4 -0
  100. package/dist/components/Spinner/index.d.ts.map +1 -0
  101. package/dist/components/Table/Table.d.ts +28 -0
  102. package/dist/components/Table/Table.d.ts.map +1 -0
  103. package/dist/components/Table/index.d.ts +5 -0
  104. package/dist/components/Table/index.d.ts.map +1 -0
  105. package/dist/components/TextField/TextField.d.ts +30 -0
  106. package/dist/components/TextField/TextField.d.ts.map +1 -0
  107. package/dist/components/TextField/index.d.ts +3 -0
  108. package/dist/components/TextField/index.d.ts.map +1 -0
  109. package/dist/components/ThemeToggle/ThemeToggle.d.ts +6 -0
  110. package/dist/components/ThemeToggle/ThemeToggle.d.ts.map +1 -0
  111. package/dist/components/ThemeToggle/index.d.ts +3 -0
  112. package/dist/components/ThemeToggle/index.d.ts.map +1 -0
  113. package/dist/components/Toast/Toast.d.ts +19 -0
  114. package/dist/components/Toast/Toast.d.ts.map +1 -0
  115. package/dist/components/Toast/index.d.ts +4 -0
  116. package/dist/components/Toast/index.d.ts.map +1 -0
  117. package/dist/components/TopBar/TopBar.d.ts +8 -0
  118. package/dist/components/TopBar/TopBar.d.ts.map +1 -0
  119. package/dist/components/TopBar/index.d.ts +3 -0
  120. package/dist/components/TopBar/index.d.ts.map +1 -0
  121. package/dist/components/data/icons.d.ts +2 -0
  122. package/dist/components/data/icons.d.ts.map +1 -0
  123. package/dist/index.css +1 -0
  124. package/dist/index.d.ts +61 -0
  125. package/dist/index.d.ts.map +1 -0
  126. package/dist/index.js +4103 -0
  127. package/dist/index.js.map +1 -0
  128. package/package.json +43 -4
  129. package/README.md +0 -3
@@ -0,0 +1,29 @@
1
+ import "@db-vincent/components/styles/input.css";
2
+ import "@db-vincent/components/styles/select.css";
3
+ export interface Option {
4
+ value: string;
5
+ label: string;
6
+ description?: string;
7
+ disabled?: boolean;
8
+ }
9
+ export interface SelectProps {
10
+ label?: string;
11
+ id?: string;
12
+ name?: string;
13
+ options: Option[];
14
+ value?: string;
15
+ values?: string[];
16
+ multiple?: boolean;
17
+ placeholder?: string;
18
+ hint?: string;
19
+ error?: string;
20
+ disabled?: boolean;
21
+ required?: boolean;
22
+ optional?: boolean;
23
+ size?: "sm" | "md" | "lg";
24
+ className?: string;
25
+ onChange?: (values: string[]) => void;
26
+ children?: React.ReactNode;
27
+ }
28
+ export default function Select({ label, id, name, options, value, values, multiple, placeholder, hint, error, disabled, required, optional, size, className, onChange, }: SelectProps): import("react").JSX.Element;
29
+ //# sourceMappingURL=Select.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Select.d.ts","sourceRoot":"","sources":["../../../src/components/Select/Select.tsx"],"names":[],"mappings":"AAAA,OAAO,yCAAyC,CAAC;AACjD,OAAO,0CAA0C,CAAC;AAIlD,MAAM,WAAW,MAAM;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,WAAW,WAAW;IAC1B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,IAAI,CAAC,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,IAAI,CAAC;IACtC,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B;AAED,MAAM,CAAC,OAAO,UAAU,MAAM,CAAC,EAC7B,KAAK,EACL,EAAE,EACF,IAAI,EACJ,OAAO,EACP,KAAK,EACL,MAAM,EACN,QAAgB,EAChB,WAAW,EACX,IAAI,EACJ,KAAK,EACL,QAAgB,EAChB,QAAgB,EAChB,QAAgB,EAChB,IAAW,EACX,SAAS,EACT,QAAQ,GACT,EAAE,WAAW,+BAkUb"}
@@ -0,0 +1,4 @@
1
+ export { default } from "./Select";
2
+ export type { SelectProps } from "./Select";
3
+ export type { Option } from "./Select";
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/Select/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AACnC,YAAY,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAC5C,YAAY,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC"}
@@ -0,0 +1,29 @@
1
+ import "@db-vincent/components/styles/nav.css";
2
+ export interface NavItem {
3
+ label: string;
4
+ href: string;
5
+ icon?: string;
6
+ active?: boolean;
7
+ badge?: string;
8
+ open?: boolean;
9
+ children?: {
10
+ label: string;
11
+ href: string;
12
+ active?: boolean;
13
+ }[];
14
+ }
15
+ export interface NavGroup {
16
+ label?: string;
17
+ items: NavItem[];
18
+ }
19
+ export interface SidebarProps {
20
+ brand: string;
21
+ brandHref?: string;
22
+ groups: NavGroup[];
23
+ label?: string;
24
+ id?: string;
25
+ className?: string;
26
+ children?: React.ReactNode;
27
+ }
28
+ export default function Sidebar({ brand, brandHref, groups, label, id, className, children, }: SidebarProps): import("react").JSX.Element;
29
+ //# sourceMappingURL=Sidebar.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Sidebar.d.ts","sourceRoot":"","sources":["../../../src/components/Sidebar/Sidebar.tsx"],"names":[],"mappings":"AAAA,OAAO,uCAAuC,CAAC;AAK/C,MAAM,WAAW,OAAO;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,QAAQ,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,OAAO,CAAA;KAAE,EAAE,CAAC;CAChE;AAED,MAAM,WAAW,QAAQ;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,OAAO,EAAE,CAAC;CAClB;AAED,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,QAAQ,EAAE,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B;AAED,MAAM,CAAC,OAAO,UAAU,OAAO,CAAC,EAC9B,KAAK,EACL,SAAe,EACf,MAAM,EACN,KAAiB,EACjB,EAAiB,EACjB,SAAS,EACT,QAAQ,GACT,EAAE,YAAY,+BA4Nd"}
@@ -0,0 +1,4 @@
1
+ export { default } from "./Sidebar";
2
+ export type { SidebarProps } from "./Sidebar";
3
+ export type { NavItem, NavGroup } from "./Sidebar";
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/Sidebar/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,YAAY,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAC9C,YAAY,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC"}
@@ -0,0 +1,8 @@
1
+ import "@db-vincent/components/styles/skeleton.css";
2
+ export type SkeletonVariant = "heading" | "text" | "image";
3
+ export interface SkeletonProps {
4
+ variant?: SkeletonVariant;
5
+ className?: string;
6
+ }
7
+ export default function Skeleton({ variant, className, }: SkeletonProps): import("react").JSX.Element;
8
+ //# sourceMappingURL=Skeleton.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Skeleton.d.ts","sourceRoot":"","sources":["../../../src/components/Skeleton/Skeleton.tsx"],"names":[],"mappings":"AAAA,OAAO,4CAA4C,CAAC;AAEpD,MAAM,MAAM,eAAe,GAAG,SAAS,GAAG,MAAM,GAAG,OAAO,CAAC;AAE3D,MAAM,WAAW,aAAa;IAC5B,OAAO,CAAC,EAAE,eAAe,CAAC;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,CAAC,OAAO,UAAU,QAAQ,CAAC,EAC/B,OAAgB,EAChB,SAAS,GACV,EAAE,aAAa,+BAMf"}
@@ -0,0 +1,4 @@
1
+ export { default } from "./Skeleton";
2
+ export type { SkeletonProps } from "./Skeleton";
3
+ export type { SkeletonVariant } from "./Skeleton";
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/Skeleton/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AACrC,YAAY,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAChD,YAAY,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC"}
@@ -0,0 +1,8 @@
1
+ import "@db-vincent/components/styles/spinner.css";
2
+ export type SpinnerSize = "sm" | "md" | "lg";
3
+ export interface SpinnerProps {
4
+ size?: SpinnerSize;
5
+ className?: string;
6
+ }
7
+ export default function Spinner({ size, className }: SpinnerProps): import("react").JSX.Element;
8
+ //# sourceMappingURL=Spinner.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Spinner.d.ts","sourceRoot":"","sources":["../../../src/components/Spinner/Spinner.tsx"],"names":[],"mappings":"AAAA,OAAO,2CAA2C,CAAC;AAEnD,MAAM,MAAM,WAAW,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;AAE7C,MAAM,WAAW,YAAY;IAC3B,IAAI,CAAC,EAAE,WAAW,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,CAAC,OAAO,UAAU,OAAO,CAAC,EAAE,IAAW,EAAE,SAAS,EAAE,EAAE,YAAY,+BAMvE"}
@@ -0,0 +1,4 @@
1
+ export { default } from "./Spinner";
2
+ export type { SpinnerProps } from "./Spinner";
3
+ export type { SpinnerSize } from "./Spinner";
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/Spinner/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,YAAY,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAC9C,YAAY,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC"}
@@ -0,0 +1,28 @@
1
+ import "@db-vincent/components/styles/input.css";
2
+ import "@db-vincent/components/styles/table.css";
3
+ export type Cell = string | number | {
4
+ text: string | number;
5
+ mono?: boolean;
6
+ kbd?: boolean;
7
+ swatch?: string;
8
+ };
9
+ export interface Column {
10
+ key: string;
11
+ label: string;
12
+ align?: "start" | "end";
13
+ numeric?: boolean;
14
+ }
15
+ export interface TableProps {
16
+ columns: Column[];
17
+ rows: Record<string, Cell>[];
18
+ caption: string;
19
+ hideCaption?: boolean;
20
+ empty?: string;
21
+ sortable?: boolean;
22
+ filterable?: boolean;
23
+ filterLabel?: string;
24
+ filterPlaceholder?: string;
25
+ className?: string;
26
+ }
27
+ export default function Table({ columns, rows, caption, hideCaption, empty, sortable, filterable, filterLabel, filterPlaceholder, className, }: TableProps): import("react").JSX.Element;
28
+ //# sourceMappingURL=Table.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Table.d.ts","sourceRoot":"","sources":["../../../src/components/Table/Table.tsx"],"names":[],"mappings":"AAAA,OAAO,yCAAyC,CAAC;AACjD,OAAO,yCAAyC,CAAC;AAIjD,MAAM,MAAM,IAAI,GACZ,MAAM,GACN,MAAM,GACN;IACE,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC;IACtB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC;AAEN,MAAM,WAAW,MAAM;IACrB,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,OAAO,GAAG,KAAK,CAAC;IACxB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,EAAE,CAAC;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,CAAC,OAAO,UAAU,KAAK,CAAC,EAC5B,OAAO,EACP,IAAI,EACJ,OAAO,EACP,WAAmB,EACnB,KAAyB,EACzB,QAAgB,EAChB,UAAkB,EAClB,WAA2B,EAC3B,iBAA6B,EAC7B,SAAS,GACV,EAAE,UAAU,+BAuOZ"}
@@ -0,0 +1,5 @@
1
+ export { default } from "./Table";
2
+ export type { TableProps } from "./Table";
3
+ export type { Column } from "./Table";
4
+ export type { Cell } from "./Table";
5
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/Table/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,YAAY,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAC1C,YAAY,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AACtC,YAAY,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC"}
@@ -0,0 +1,30 @@
1
+ import "@db-vincent/components/styles/input.css";
2
+ export interface TextFieldProps {
3
+ label?: string;
4
+ id?: string;
5
+ name?: string;
6
+ type?: string;
7
+ value?: string;
8
+ placeholder?: string;
9
+ hint?: string;
10
+ error?: string;
11
+ valid?: boolean;
12
+ validate?: boolean;
13
+ disabled?: boolean;
14
+ required?: boolean;
15
+ optional?: boolean;
16
+ multiline?: boolean;
17
+ rows?: number;
18
+ maxlength?: number;
19
+ minlength?: number;
20
+ pattern?: string;
21
+ count?: boolean;
22
+ size?: "sm" | "md" | "lg";
23
+ autocomplete?: string;
24
+ inputmode?: "text" | "numeric" | "decimal" | "email" | "tel" | "search" | "url";
25
+ className?: string;
26
+ onChange?: (value: string) => void;
27
+ children?: React.ReactNode;
28
+ }
29
+ export default function TextField({ label, id, name, type, value, placeholder, hint, error, valid, validate, disabled, required, optional, multiline, rows, maxlength, minlength, pattern, count, size, autocomplete, inputmode, className, onChange, }: TextFieldProps): import("react").JSX.Element;
30
+ //# sourceMappingURL=TextField.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TextField.d.ts","sourceRoot":"","sources":["../../../src/components/TextField/TextField.tsx"],"names":[],"mappings":"AAAA,OAAO,yCAAyC,CAAC;AAIjD,MAAM,WAAW,cAAc;IAC7B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,IAAI,CAAC,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;IAC1B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,EACR,MAAM,GAAG,SAAS,GAAG,SAAS,GAAG,OAAO,GAAG,KAAK,GAAG,QAAQ,GAAG,KAAK,CAAC;IACtE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACnC,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B;AAED,MAAM,CAAC,OAAO,UAAU,SAAS,CAAC,EAChC,KAAK,EACL,EAAE,EACF,IAAI,EACJ,IAAa,EACb,KAAK,EACL,WAAW,EACX,IAAI,EACJ,KAAK,EACL,KAAa,EACb,QAAgB,EAChB,QAAgB,EAChB,QAAgB,EAChB,QAAgB,EAChB,SAAiB,EACjB,IAAQ,EACR,SAAS,EACT,SAAS,EACT,OAAO,EACP,KAAa,EACb,IAAW,EACX,YAAY,EACZ,SAAS,EACT,SAAS,EACT,QAAQ,GACT,EAAE,cAAc,+BAmNhB"}
@@ -0,0 +1,3 @@
1
+ export { default } from "./TextField";
2
+ export type { TextFieldProps } from "./TextField";
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/TextField/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AACtC,YAAY,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC"}
@@ -0,0 +1,6 @@
1
+ import "@db-vincent/components/styles/theme-toggle.css";
2
+ export interface ThemeToggleProps {
3
+ className?: string;
4
+ }
5
+ export default function ThemeToggle({ className }: ThemeToggleProps): import("react").JSX.Element;
6
+ //# sourceMappingURL=ThemeToggle.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ThemeToggle.d.ts","sourceRoot":"","sources":["../../../src/components/ThemeToggle/ThemeToggle.tsx"],"names":[],"mappings":"AAAA,OAAO,gDAAgD,CAAC;AAKxD,MAAM,WAAW,gBAAgB;IAC/B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,CAAC,OAAO,UAAU,WAAW,CAAC,EAAE,SAAS,EAAE,EAAE,gBAAgB,+BAmDlE"}
@@ -0,0 +1,3 @@
1
+ export { default } from "./ThemeToggle";
2
+ export type { ThemeToggleProps } from "./ThemeToggle";
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/ThemeToggle/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACxC,YAAY,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC"}
@@ -0,0 +1,19 @@
1
+ import "@db-vincent/components/styles/toast.css";
2
+ export type ToastTone = "info" | "success" | "warning" | "danger" | "error" | "loading";
3
+ export interface ToastProps {
4
+ tone?: ToastTone;
5
+ type?: ToastTone;
6
+ title: string;
7
+ message?: string;
8
+ description?: string;
9
+ dismissible?: boolean;
10
+ icon?: boolean;
11
+ triggerLabel?: string;
12
+ triggerVariant?: "primary" | "secondary" | "ghost" | "danger";
13
+ duration?: number;
14
+ id?: string;
15
+ className?: string;
16
+ children?: React.ReactNode;
17
+ }
18
+ export default function Toast({ tone: toneProp, type: typeProp, title, message, description, dismissible, icon, triggerLabel, triggerVariant, duration, id, className, children, }: ToastProps): import("react").JSX.Element;
19
+ //# sourceMappingURL=Toast.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Toast.d.ts","sourceRoot":"","sources":["../../../src/components/Toast/Toast.tsx"],"names":[],"mappings":"AAAA,OAAO,yCAAyC,CAAC;AAIjD,MAAM,MAAM,SAAS,GACnB,MAAM,GAAG,SAAS,GAAG,SAAS,GAAG,QAAQ,GAAG,OAAO,GAAG,SAAS,CAAC;AAElE,MAAM,WAAW,UAAU;IACzB,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,cAAc,CAAC,EAAE,SAAS,GAAG,WAAW,GAAG,OAAO,GAAG,QAAQ,CAAC;IAC9D,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B;AAUD,MAAM,CAAC,OAAO,UAAU,KAAK,CAAC,EAC5B,IAAI,EAAE,QAAQ,EACd,IAAI,EAAE,QAAQ,EACd,KAAK,EACL,OAAO,EACP,WAAW,EACX,WAAkB,EAClB,IAAW,EACX,YAAY,EACZ,cAA4B,EAC5B,QAAe,EACf,EAAE,EACF,SAAS,EACT,QAAQ,GACT,EAAE,UAAU,+BA4FZ"}
@@ -0,0 +1,4 @@
1
+ export { default } from "./Toast";
2
+ export type { ToastProps } from "./Toast";
3
+ export type { ToastTone } from "./Toast";
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/Toast/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,YAAY,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAC1C,YAAY,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC"}
@@ -0,0 +1,8 @@
1
+ import "@db-vincent/components/styles/topbar.css";
2
+ export interface TopBarProps {
3
+ className?: string;
4
+ start?: React.ReactNode;
5
+ actions?: React.ReactNode;
6
+ }
7
+ export default function TopBar({ className, start, actions }: TopBarProps): import("react").JSX.Element;
8
+ //# sourceMappingURL=TopBar.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TopBar.d.ts","sourceRoot":"","sources":["../../../src/components/TopBar/TopBar.tsx"],"names":[],"mappings":"AAAA,OAAO,0CAA0C,CAAC;AAElD,MAAM,WAAW,WAAW;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACxB,OAAO,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B;AAED,MAAM,CAAC,OAAO,UAAU,MAAM,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,WAAW,+BAWxE"}
@@ -0,0 +1,3 @@
1
+ export { default } from "./TopBar";
2
+ export type { TopBarProps } from "./TopBar";
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/TopBar/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AACnC,YAAY,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare const ICONS: Record<string, string>;
2
+ //# sourceMappingURL=icons.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"icons.d.ts","sourceRoot":"","sources":["../../../src/components/data/icons.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAuGxC,CAAC"}
package/dist/index.css ADDED
@@ -0,0 +1 @@
1
+ @layer components{.ds-accordion{display:grid;gap:var(--accordion-gap);max-width:var(--accordion-max-width);width:100%}.ds-accordion__item{background:var(--accordion-item-bg);border:1px solid var(--accordion-item-border);border-radius:var(--accordion-item-radius);overflow:hidden}.ds-accordion__trigger{align-items:center;background:transparent;color:var(--accordion-trigger-fg);cursor:pointer;display:flex;font-size:var(--accordion-font-size);font-weight:var(--weight-medium);gap:var(--space-4);justify-content:space-between;list-style:none;padding:var(--accordion-trigger-padding-y) var(--accordion-trigger-padding-x);transition:background-color var(--duration-fast) var(--ease-standard);width:100%}.ds-accordion__trigger::-webkit-details-marker{display:none}.ds-accordion__trigger:hover{background:var(--accordion-trigger-bg-hover)}.ds-accordion__item[open] .ds-accordion__trigger{background:var(--accordion-trigger-bg-open)}.ds-accordion__trigger:focus-visible{outline:var(--accordion-focus-width) solid var(--accordion-focus-color);outline-offset:var(--accordion-focus-offset)}.ds-accordion__icon{color:var(--accordion-icon);transition:transform var(--duration-base) var(--ease-standard)}.ds-accordion__item[open] .ds-accordion__icon{transform:rotate(180deg)}.ds-accordion__panel{background:var(--accordion-panel-bg);border-top:1px solid var(--accordion-panel-border);color:var(--accordion-panel-fg);font-size:var(--accordion-font-size);line-height:var(--leading-base);padding:var(--accordion-panel-padding)}.ds-accordion__panel>*+*{margin-top:var(--space-3)}@media(prefers-reduced-motion:reduce){.ds-accordion__icon{transition:none}}}@layer components{.ds-alert{background:var(--alert-info-bg);border:1px solid var(--alert-info-border);border-radius:var(--alert-radius);color:var(--alert-info-fg);display:flex;gap:var(--alert-gap);padding:var(--alert-padding)}.ds-alert--success{background:var(--alert-success-bg);border-color:var(--alert-success-border);color:var(--alert-success-fg)}.ds-alert--warning{background:var(--alert-warning-bg);border-color:var(--alert-warning-border);color:var(--alert-warning-fg)}.ds-alert--danger{background:var(--alert-danger-bg);border-color:var(--alert-danger-border);color:var(--alert-danger-fg)}.ds-alert__icon{flex:none;margin-block-start:.1rem}.ds-alert__content{flex:1;min-width:0}.ds-alert__title{font-size:var(--alert-title-size);font-weight:var(--weight-semibold);line-height:var(--leading-sm)}.ds-alert__body{color:var(--alert-body-fg);font-size:var(--alert-body-size);line-height:var(--leading-sm);margin-block-start:var(--space-1)}.ds-alert__actions{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-block-start:var(--space-3)}.ds-alert__close{align-items:center;background:transparent;border:0;border-radius:var(--radius-sm);color:var(--alert-info-close-fg);display:inline-flex;flex:none;height:var(--space-7);justify-content:center;transition:background-color var(--duration-fast) var(--ease-standard);width:var(--space-7)}.ds-alert--success .ds-alert__close{color:var(--alert-success-close-fg)}.ds-alert--warning .ds-alert__close{color:var(--alert-warning-close-fg)}.ds-alert--danger .ds-alert__close{color:var(--alert-danger-close-fg)}.ds-alert__close:hover{background:var(--alert-info-close-bg-hover)}.ds-alert--success .ds-alert__close:hover{background:var(--alert-success-close-bg-hover)}.ds-alert--warning .ds-alert__close:hover{background:var(--alert-warning-close-bg-hover)}.ds-alert--danger .ds-alert__close:hover{background:var(--alert-danger-close-bg-hover)}.ds-alert__close:focus-visible{outline:var(--alert-focus-width) solid var(--alert-focus-color);outline-offset:var(--alert-focus-offset)}}@layer components{.ds-badge{align-items:center;background:var(--badge-neutral-bg);border-radius:var(--badge-radius);color:var(--badge-neutral-fg);display:inline-flex;font-family:var(--badge-font);font-size:var(--badge-font-size);font-weight:var(--badge-font-weight);gap:var(--space-1);height:var(--badge-height);letter-spacing:var(--type-overline-tracking);line-height:1;padding-inline:var(--badge-padding-x);text-transform:uppercase;white-space:nowrap}.ds-badge--accent{background:var(--badge-accent-bg);color:var(--badge-accent-fg)}.ds-badge--success{background:var(--badge-success-bg);color:var(--badge-success-fg)}.ds-badge--warning{background:var(--badge-warning-bg);color:var(--badge-warning-fg)}.ds-badge--danger{background:var(--badge-danger-bg);color:var(--badge-danger-fg)}.ds-badge__dot{background:currentColor;border-radius:var(--radius-full);height:var(--badge-dot-size);width:var(--badge-dot-size)}}@layer components{.ds-breadcrumbs{font-size:var(--breadcrumbs-font-size)}.ds-breadcrumbs__list{align-items:center;display:flex;flex-wrap:wrap;gap:var(--breadcrumbs-gap);list-style:none;margin:0;padding:0}.ds-breadcrumbs__item{align-items:center;display:inline-flex;gap:var(--breadcrumbs-gap);min-width:0}.ds-breadcrumbs__link{border-radius:var(--radius-xs);color:var(--breadcrumbs-link-fg);text-decoration:none}.ds-breadcrumbs__link:hover{color:var(--breadcrumbs-link-fg-hover);text-decoration:underline;text-underline-offset:.18em}.ds-breadcrumbs__link:focus-visible{outline:var(--breadcrumbs-focus-width) solid var(--breadcrumbs-focus-color);outline-offset:var(--breadcrumbs-focus-offset)}.ds-breadcrumbs__current{color:var(--breadcrumbs-current-fg);font-weight:var(--weight-medium);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ds-breadcrumbs__separator{color:var(--breadcrumbs-separator-fg);flex:none}}@layer components{.ds-button{align-items:center;background:var(--button-secondary-bg);border:1px solid var(--button-secondary-border);border-radius:var(--button-radius);color:var(--button-secondary-fg);display:inline-flex;font-family:var(--button-font);font-size:var(--button-font-md);font-weight:var(--button-font-weight);gap:var(--button-gap);height:var(--button-height-md);justify-content:center;line-height:1;padding-inline:var(--button-padding-x-md);position:relative;text-decoration:none;transition:background-color var(--duration-fast) var(--ease-standard),border-color var(--duration-fast) var(--ease-standard),color var(--duration-fast) var(--ease-standard),box-shadow var(--duration-fast) var(--ease-standard);-webkit-user-select:none;user-select:none;white-space:nowrap}.ds-button:hover{background:var(--button-secondary-bg-hover);border-color:var(--button-secondary-border-hover)}.ds-button:active{background:var(--button-secondary-bg-active)}.ds-button:focus-visible{outline:var(--button-focus-width) solid var(--button-focus-color);outline-offset:var(--button-focus-offset)}.ds-button--primary{background:var(--button-primary-bg);border-color:var(--button-primary-border);color:var(--button-primary-fg)}.ds-button--primary:hover{background:var(--button-primary-bg-hover);border-color:var(--button-primary-border-hover)}.ds-button--primary:active{background:var(--button-primary-bg-active)}.ds-button--ghost{background:var(--button-ghost-bg);border-color:var(--button-ghost-border);color:var(--button-ghost-fg)}.ds-button--ghost:hover{background:var(--button-ghost-bg-hover);color:var(--button-ghost-fg-hover)}.ds-button--ghost:active{background:var(--button-ghost-bg-active)}.ds-button--danger{background:var(--button-danger-bg);border-color:var(--button-danger-border);color:var(--button-danger-fg)}.ds-button--danger:hover{background:var(--button-danger-bg-hover)}.ds-button--sm{font-size:var(--button-font-sm);height:var(--button-height-sm);padding-inline:var(--button-padding-x-sm)}.ds-button--lg{font-size:var(--button-font-lg);height:var(--button-height-lg);padding-inline:var(--button-padding-x-lg)}.ds-button--block{width:100%}.ds-button--icon{aspect-ratio:1;padding-inline:var(--space-0);width:var(--button-height-md)}.ds-button--icon.ds-button--sm{width:var(--button-height-sm)}.ds-button--icon.ds-button--lg{width:var(--button-height-lg)}.ds-button__icon{align-items:center;display:inline-flex;height:var(--button-icon-size-md);justify-content:center;width:var(--button-icon-size-md)}.ds-button--sm .ds-button__icon{height:var(--button-icon-size-sm);width:var(--button-icon-size-sm)}.ds-button--lg .ds-button__icon{height:var(--button-icon-size-lg);width:var(--button-icon-size-lg)}.ds-button[aria-disabled=true],.ds-button:disabled{background:var(--button-disabled-bg);border-color:var(--button-disabled-border);color:var(--button-disabled-fg);cursor:not-allowed;pointer-events:none}.ds-button__spinner{animation:ds-button-spin var(--duration-slower) linear infinite;border:var(--spinner-stroke) solid currentColor;border-right-color:transparent;border-radius:var(--radius-full);height:var(--space-4);width:var(--space-4)}.ds-button[aria-busy=true]{cursor:progress}@keyframes ds-button-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.ds-button__spinner{animation-duration:1.6s}}}@layer components{.ds-card{background:var(--card-bg);border:1px solid var(--card-border);border-radius:var(--card-radius);color:var(--card-fg);display:block;overflow:hidden;transition:border-color var(--duration-fast) var(--ease-standard),box-shadow var(--duration-fast) var(--ease-standard),transform var(--duration-fast) var(--ease-standard)}.ds-card--accent{background:var(--card-accent-bg);border-color:var(--card-accent-border)}.ds-card--raised{background:var(--card-raised-bg);border-color:var(--card-raised-border);box-shadow:var(--card-raised-shadow)}.ds-card--flat{background:var(--card-flat-bg);border-color:var(--card-flat-border);box-shadow:none}a.ds-card{text-decoration:none}a.ds-card:hover{border-color:var(--card-hover-border);box-shadow:var(--card-raised-shadow);transform:translateY(-1px)}a.ds-card:focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring-color);outline-offset:var(--focus-ring-offset)}.ds-card__header{padding:var(--card-padding) var(--card-padding) 0}.ds-card__header>*+*{margin-block-start:var(--card-header-gap)}.ds-card__eyebrow{color:var(--card-meta-fg);font-family:var(--font-body);font-size:var(--type-overline-size);font-weight:var(--type-overline-weight);letter-spacing:var(--type-overline-tracking);margin-block-end:var(--space-2);text-transform:uppercase}.ds-card__title{color:var(--card-title-fg);font-size:var(--text-lg);font-weight:var(--weight-semibold);letter-spacing:var(--type-heading-tracking);line-height:var(--leading-lg)}.ds-card__meta{color:var(--card-meta-fg);font-size:var(--text-sm);line-height:var(--leading-sm)}.ds-card__body{color:var(--card-body-fg);font-size:var(--text-sm);line-height:var(--leading-base);padding:var(--card-padding)}.ds-card__header+.ds-card__body{padding-block-start:var(--space-3)}.ds-card__footer{align-items:center;background:var(--card-footer-bg);border-top:1px solid var(--card-footer-border);display:flex;gap:var(--space-3);padding:var(--space-3) var(--card-padding)}@media(prefers-reduced-motion:reduce){.ds-card{transition:none}a.ds-card:hover{transform:none}}}@layer components{.ds-choice{align-items:flex-start;cursor:pointer;display:inline-flex;gap:var(--checkbox-gap);position:relative}.ds-choice__input{height:var(--checkbox-size);inset-block-start:var(--space-0-5);margin:0;opacity:0;position:absolute;width:var(--checkbox-size)}.ds-choice__box{align-items:center;background:var(--checkbox-bg);border:1px solid var(--checkbox-border);border-radius:var(--checkbox-radius);color:transparent;display:inline-flex;flex:none;height:var(--checkbox-size);justify-content:center;margin-block-start:var(--space-0-5);transition:background-color var(--duration-fast) var(--ease-standard),border-color var(--duration-fast) var(--ease-standard);width:var(--checkbox-size)}.ds-choice__box svg{height:80%;stroke-width:3;width:80%}.ds-choice:hover .ds-choice__input:not(:disabled)+.ds-choice__box{background:var(--checkbox-bg-hover);border-color:var(--checkbox-border-checked)}.ds-choice__input:checked+.ds-choice__box{background:var(--checkbox-bg-checked);border-color:var(--checkbox-border-checked);color:var(--checkbox-fg-check)}.ds-choice__input:focus-visible+.ds-choice__box{outline:var(--checkbox-focus-width) solid var(--checkbox-focus-color);outline-offset:var(--checkbox-focus-offset)}.ds-choice__input:disabled+.ds-choice__box{background:var(--checkbox-bg-disabled);border-color:var(--checkbox-border);cursor:not-allowed}.ds-choice__input:checked:disabled+.ds-choice__box{color:var(--checkbox-fg-disabled)}.ds-choice:has(.ds-choice__input:disabled){cursor:not-allowed}.ds-choice__label{color:var(--checkbox-label-fg);font-size:var(--text-sm);line-height:var(--leading-sm)}.ds-choice:has(.ds-choice__input:disabled) .ds-choice__label{color:var(--checkbox-label-fg-disabled)}.ds-choice__description{color:var(--color-text-tertiary);display:block;font-size:var(--text-sm);line-height:var(--leading-sm);margin-block-start:var(--space-0-5)}.ds-choice--radio .ds-choice__box{border-radius:var(--radius-full)}.ds-choice--radio .ds-choice__input:checked+.ds-choice__box{background:var(--radio-bg-checked);border-color:var(--radio-border-checked)}.ds-choice--radio .ds-choice__box:after{background:var(--radio-dot);border-radius:var(--radius-full);content:"";height:var(--radio-dot-size);transform:scale(0);transition:transform var(--duration-fast) var(--ease-standard);width:var(--radio-dot-size)}.ds-choice--radio .ds-choice__input:checked+.ds-choice__box:after{transform:scale(1)}.ds-choice--radio .ds-choice__input:disabled+.ds-choice__box{background:var(--radio-bg-disabled)}.ds-choice-group{border:0;display:grid;gap:var(--space-3);padding:0}.ds-choice-group__legend{color:var(--color-text-primary);font-size:var(--text-sm);font-weight:var(--weight-medium);margin-block-end:var(--space-2);padding:0}.ds-choice-group__hint{color:var(--color-text-secondary);font-size:var(--text-sm);margin-block-end:var(--space-3)}}@layer components{.ds-chip{align-items:center;background:var(--chip-bg);border:1px solid var(--chip-border);border-radius:var(--chip-radius);color:var(--chip-fg);display:inline-flex;font-family:var(--font-body);font-size:var(--chip-font-size);gap:var(--space-1-5);height:var(--chip-height);line-height:1;padding-inline:var(--chip-padding-x);text-decoration:none;transition:background-color var(--duration-fast) var(--ease-standard),border-color var(--duration-fast) var(--ease-standard),color var(--duration-fast) var(--ease-standard);white-space:nowrap}button.ds-chip{cursor:pointer}.ds-chip--sm{font-size:var(--text-xs);gap:var(--space-1);height:var(--chip-height-sm);padding-inline:var(--space-2-5)}.ds-chip__check{display:none;margin-inline-start:calc(-1 * var(--space-0-5))}.ds-chip[aria-pressed=true] .ds-chip__check{display:block}.ds-chip.is-disabled,.ds-chip:disabled{color:var(--chip-fg-disabled);cursor:not-allowed;pointer-events:none}.ds-chip:hover{background:var(--chip-bg-hover);border-color:var(--chip-border-hover);color:var(--chip-fg-hover)}.ds-chip[aria-pressed=true],.ds-chip.is-selected{background:var(--chip-bg-selected);border-color:var(--chip-border-selected);color:var(--chip-fg-selected)}.ds-chip:focus-visible{outline:var(--chip-focus-width) solid var(--chip-focus-color);outline-offset:var(--chip-focus-offset)}.ds-chip__remove{align-items:center;background:transparent;border:0;border-radius:var(--radius-full);color:inherit;display:inline-flex;height:var(--space-4);justify-content:center;margin-inline-end:calc(-1 * var(--space-1));padding:0;position:relative;width:var(--space-4)}.ds-chip__remove:after{content:"";inset:calc(-1 * var(--space-1));position:absolute}.ds-chip__remove:hover{background:var(--chip-remove-bg-hover)}.ds-chip__remove:focus-visible{outline:var(--chip-focus-width) solid var(--chip-focus-color);outline-offset:var(--chip-focus-offset)}.ds-chip__remove:disabled{color:var(--chip-fg-disabled);cursor:not-allowed}}@layer components{.ds-code{margin:0;max-width:100%;min-width:0}.ds-code__label{color:var(--code-label-fg);font-family:var(--font-body);font-size:var(--code-label-size);font-weight:var(--type-overline-weight);letter-spacing:var(--type-overline-tracking);text-transform:uppercase;margin-block-end:var(--code-label-margin)}.ds-code__pre{background:var(--code-bg);border:1px solid var(--code-border);border-radius:var(--code-radius);color:var(--code-fg);font-family:var(--font-mono);font-size:var(--code-font-size);line-height:var(--code-line-height);margin:0;max-width:100%;overflow-x:auto;padding:var(--code-padding);scrollbar-color:var(--code-scrollbar) transparent;scrollbar-width:thin;-moz-tab-size:2;tab-size:2;white-space:pre}.ds-code__pre code{background:none;border-radius:0;font-size:inherit;padding:0}}@layer components{.ds-empty{align-items:center;display:flex;flex-direction:column;gap:var(--empty-gap);padding:var(--empty-padding);text-align:center}.ds-empty--dashed{border:1px dashed var(--empty-dashed-border);border-radius:var(--empty-radius)}.ds-empty__icon{align-items:center;background:var(--empty-icon-bg);border-radius:var(--radius-full);color:var(--empty-icon-fg);display:inline-flex;height:var(--empty-icon-size);justify-content:center;margin-block-end:var(--space-2);width:var(--empty-icon-size)}.ds-empty__skeleton{display:grid;gap:var(--empty-skeleton-gap);max-width:var(--empty-skeleton-width);width:100%}.ds-empty__title{color:var(--empty-title-fg);font-size:var(--empty-title-size);font-weight:var(--weight-semibold);letter-spacing:var(--type-heading-tracking);line-height:var(--leading-lg)}.ds-empty__body{color:var(--empty-body-fg);font-size:var(--empty-body-size);line-height:var(--leading-base);max-width:var(--empty-max-width)}.ds-empty__actions{display:flex;flex-wrap:wrap;gap:var(--space-3);justify-content:center;margin-block-start:var(--space-2)}}@layer components{.ds-example{display:grid;gap:var(--example-gap);grid-template-columns:minmax(0,1fr);margin:0;min-width:0}.ds-example+.ds-example{margin-block-start:var(--space-8)}.ds-example__caption{align-items:baseline;display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-3);justify-content:space-between}.ds-example__title{color:var(--example-label-fg);font-family:var(--font-body);font-size:var(--type-overline-size);font-weight:var(--type-overline-weight);letter-spacing:var(--type-overline-tracking);text-transform:uppercase}.ds-example__description{color:var(--example-description-fg);font-size:var(--text-sm)}.ds-example__preview{background:var(--example-bg);border:1px solid var(--example-border);border-radius:var(--example-radius);min-height:var(--example-preview-min);min-width:0;padding:var(--example-padding)}@media(max-width:699px){.ds-example__preview{padding:var(--space-4)}}.ds-example__preview--flush{overflow:hidden;padding:0}}@layer components{.ds-grid{display:grid;gap:var(--grid-gap);grid-template-columns:repeat(var(--grid-columns, 12),minmax(0,1fr))}.ds-grid--gap-sm{gap:var(--grid-gap-sm)}.ds-grid--gap-lg{gap:var(--grid-gap-lg)}.ds-grid--auto{grid-template-columns:repeat(auto-fit,minmax(min(var(--grid-min, 16rem),100%),1fr))}.ds-grid--masonry{columns:var(--grid-masonry-columns, 3);column-gap:var(--grid-gap);display:block}.ds-grid--masonry>*{break-inside:avoid;margin-block-end:var(--grid-gap)}.ds-grid__item{grid-column:span var(--grid-item-span, 1);min-width:0}.ds-grid__container{margin-inline:auto;max-width:var(--grid-container);padding-inline:var(--grid-gutter);width:100%}@media(max-width:700px){.ds-grid{grid-template-columns:repeat(var(--grid-columns-phone, 1),minmax(0,1fr))}.ds-grid--masonry{columns:1}.ds-grid__item{grid-column:span var(--grid-item-span-phone, 1)}}}@layer components{.ds-modal{background:var(--modal-bg);border:1px solid var(--modal-border);border-radius:var(--modal-radius);box-shadow:var(--modal-shadow);color:var(--modal-fg);margin:auto;max-height:calc(100dvh - var(--space-8));max-width:var(--modal-max-width-md);overflow:auto;padding:0;width:calc(100% - var(--space-8))}.ds-modal::backdrop{background:var(--modal-backdrop)}.ds-modal--sheet{border-end-start-radius:0;border-end-end-radius:0;margin-block:auto 0;max-height:90dvh;max-width:var(--modal-max-width-lg);width:100%}@media(max-width:699px){.ds-modal--sheet{max-width:100%}}.ds-modal[open]{animation:ds-modal-in var(--duration-base) var(--ease-enter)}.ds-modal--sheet[open]{animation:ds-sheet-in var(--duration-base) var(--ease-enter)}.ds-modal--sm{max-width:var(--modal-max-width-sm)}.ds-modal--lg{max-width:var(--modal-max-width-lg)}.ds-modal__header{align-items:flex-start;display:flex;gap:var(--modal-gap);justify-content:space-between;padding:var(--modal-padding) var(--modal-padding) 0}.ds-modal__title{color:var(--modal-title-fg);font-size:var(--text-lg);font-weight:var(--weight-semibold);letter-spacing:var(--type-heading-tracking);line-height:var(--leading-lg)}.ds-modal__description{color:var(--modal-body-fg);font-size:var(--text-sm);max-width:none;line-height:var(--leading-base);margin-block-start:var(--space-2)}.ds-modal__close{align-items:center;background:transparent;border:0;border-radius:var(--radius-sm);color:var(--modal-close-fg);display:inline-flex;flex:none;height:var(--space-8);justify-content:center;margin:calc(-1 * var(--space-1));width:var(--space-8)}.ds-modal__close:hover{background:var(--modal-close-bg-hover)}.ds-modal__close:focus-visible{outline:var(--modal-focus-width) solid var(--modal-focus-color);outline-offset:var(--modal-focus-offset)}.ds-modal__body{color:var(--modal-body-fg);font-size:var(--text-sm);line-height:var(--leading-base);padding:var(--modal-gap) var(--modal-padding) var(--modal-padding)}.ds-modal__footer{align-items:center;background:var(--modal-footer-bg);border-top:1px solid var(--modal-border);border-end-end-radius:inherit;border-end-start-radius:inherit;display:flex;gap:var(--space-3);justify-content:flex-end;padding:var(--space-4) var(--modal-padding)}@keyframes ds-modal-in{0%{opacity:0;transform:translateY(var(--space-2)) scale(.985)}to{opacity:1;transform:none}}@keyframes ds-sheet-in{0%{transform:translateY(100%)}to{transform:none}}@media(prefers-reduced-motion:reduce){.ds-modal[open],.ds-modal--sheet[open]{animation:none}}}@layer components{.ds-navbar{background-color:transparent;container:ds-navbar / inline-size;position:relative;transition:background-color var(--duration-base) var(--ease-standard),backdrop-filter var(--duration-base) var(--ease-standard),-webkit-backdrop-filter var(--duration-base) var(--ease-standard)}.ds-navbar[data-scrolled=true]{-webkit-backdrop-filter:blur(var(--navbar-blur)) saturate(1.4);backdrop-filter:blur(var(--navbar-blur)) saturate(1.4);background-color:color-mix(in srgb,var(--navbar-bg) var(--navbar-tint),transparent)}@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))){.ds-navbar[data-scrolled=true]{background-color:var(--navbar-bg)}}.ds-navbar--sticky{position:sticky;top:0;z-index:var(--z-sticky)}.ds-navbar:has(.ds-navbar__viewport:not([hidden])){z-index:var(--z-popover)}.ds-navbar__inner{align-items:center;display:flex;gap:var(--navbar-gap);min-height:var(--navbar-height);padding-inline:var(--navbar-padding-x)}.ds-navbar__brand{align-items:center;border-radius:var(--navbar-link-radius);color:var(--navbar-brand-fg);display:inline-flex;flex:none;font-size:var(--navbar-brand-size);font-weight:var(--weight-semibold);gap:var(--space-2-5);letter-spacing:var(--type-heading-tracking);text-decoration:none}.ds-navbar__mark{align-items:center;background:var(--navbar-brand-mark-bg);border-radius:var(--radius-md);color:var(--navbar-brand-mark-fg);display:inline-flex;height:var(--space-8);justify-content:center;width:var(--space-8)}.ds-navbar__start{align-items:center;display:flex;flex:1 1 auto;min-width:0}.ds-navbar__start:empty{display:none}.ds-navbar__actions{align-items:center;display:flex;flex:none;gap:var(--space-1);margin-inline-start:auto}.ds-navbar__actions:empty{display:none}.ds-navbar__nav{position:relative}.ds-navbar__list{align-items:center;display:flex;gap:var(--space-0-5);list-style:none;margin:0;padding:0}.ds-navbar__trigger{align-items:center;background:transparent;border:0;border-radius:var(--navbar-link-radius);color:var(--navbar-link-fg);cursor:pointer;display:inline-flex;font:inherit;font-size:var(--navbar-link-size);font-weight:var(--weight-medium);gap:var(--navbar-link-gap);height:var(--navbar-link-height);padding-inline:var(--navbar-link-padding-x);position:relative;text-decoration:none;transition:background-color var(--duration-fast) var(--ease-standard),color var(--duration-fast) var(--ease-standard);white-space:nowrap}.ds-navbar__trigger:hover,.ds-navbar__trigger[aria-expanded=true]{background:var(--navbar-link-bg-hover);color:var(--navbar-link-fg-hover)}.ds-navbar__trigger[aria-expanded=true]{background:var(--navbar-link-bg-open)}.ds-navbar__trigger[aria-current=page],.ds-navbar__trigger.is-current{background:var(--navbar-link-bg-current);color:var(--navbar-link-fg-current)}.ds-navbar__trigger[aria-current=page]:hover,.ds-navbar__trigger.is-current:hover,.ds-navbar__trigger.is-current[aria-expanded=true]{background:var(--navbar-link-bg-current-hover)}.ds-navbar__trigger[aria-current=page] .ds-icon:not(.ds-navbar__chevron),.ds-navbar__trigger.is-current .ds-icon:not(.ds-navbar__chevron){color:var(--navbar-current-icon-fg)}.ds-navbar__chevron{color:var(--navbar-row-icon-fg);transition:transform var(--duration-base) var(--ease-standard)}[aria-expanded=true]>.ds-navbar__chevron,.ds-navbar__disclosure[open]>summary .ds-navbar__chevron{transform:rotate(180deg)}.ds-navbar__viewport{background:var(--navbar-viewport-bg);border:1px solid var(--navbar-viewport-border);border-radius:var(--navbar-viewport-radius);box-shadow:var(--navbar-viewport-shadow);height:var(--ds-navbar-viewport-h, auto);left:0;overflow:hidden;position:absolute;top:calc(100% + var(--navbar-viewport-offset));transform:translate(var(--ds-navbar-viewport-x, 0));transition:transform var(--duration-slow) var(--ease-standard),width var(--duration-slow) var(--ease-standard),height var(--duration-slow) var(--ease-standard);width:var(--ds-navbar-viewport-w, auto)}.ds-navbar__viewport[hidden]{display:none}.ds-navbar__viewport[data-instant=true]{animation:ds-navbar-viewport-in var(--duration-base) var(--ease-enter);transition:none}.ds-navbar__panel{left:0;position:absolute;top:0}.ds-navbar__panel:not([hidden]){animation:ds-navbar-panel-in var(--duration-base) var(--ease-enter);display:grid;gap:var(--navbar-panel-gap);padding:var(--navbar-panel-padding)}.ds-navbar__panel--list{width:var(--navbar-panel-width-list)}.ds-navbar__panel--grid{width:var(--navbar-panel-width-grid)}.ds-navbar__panel--grid .ds-navbar__rows{grid-template-columns:repeat(2,minmax(0,1fr))}.ds-navbar__panel--featured{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);width:var(--navbar-panel-width-grid)}.ds-navbar__panel--groups{grid-auto-columns:var(--navbar-panel-width-group);grid-auto-flow:column}.ds-navbar__panel--groups .ds-navbar__group+.ds-navbar__group{border-inline-start:1px solid var(--navbar-sheet-border);padding-inline-start:var(--navbar-panel-gap)}.ds-navbar__group{display:grid;align-content:start;gap:var(--space-1)}.ds-navbar__eyebrow{color:var(--navbar-eyebrow-fg);font-size:var(--type-overline-size);font-weight:var(--type-overline-weight);letter-spacing:var(--type-overline-tracking);line-height:var(--type-overline-leading);margin:0;padding:var(--space-2) var(--space-3) var(--space-1);text-transform:uppercase}.ds-navbar__rows{display:grid;gap:var(--space-0-5);list-style:none;margin:0;padding:0}.ds-navbar__row{align-items:flex-start;border-radius:var(--navbar-row-radius);color:var(--navbar-row-fg);display:flex;gap:var(--space-3);padding:var(--navbar-row-padding);text-decoration:none;transition:background-color var(--duration-fast) var(--ease-standard)}.ds-navbar__row:hover,.ds-navbar__row:focus-visible{background:var(--navbar-row-bg-hover)}.ds-navbar__row[aria-current=page]{background:var(--navbar-row-bg-current)}.ds-navbar__row[aria-current=page]:hover,.ds-navbar__row[aria-current=page]:focus-visible{background:var(--navbar-link-bg-current-hover)}.ds-navbar__row[aria-current=page] .ds-navbar__row-icon{color:var(--navbar-current-icon-fg)}.ds-navbar__row-icon{color:var(--navbar-row-icon-fg);display:inline-flex;flex:none;margin-block-start:var(--space-0-5)}.ds-navbar__row-body{display:grid;gap:var(--space-0-5);min-width:0}.ds-navbar__row-title{font-size:var(--text-sm);font-weight:var(--weight-medium);line-height:var(--leading-sm)}.ds-navbar__row-desc{color:var(--navbar-row-desc-fg);display:-webkit-box;font-size:var(--text-sm);line-height:var(--leading-sm);overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2}.ds-navbar__feature{align-content:end;background:var(--navbar-feature-bg);border-radius:var(--navbar-row-radius);color:var(--navbar-row-fg);display:grid;gap:var(--space-1);min-height:var(--navbar-feature-min-height);padding:var(--space-4);text-decoration:none;transition:background-color var(--duration-fast) var(--ease-standard)}.ds-navbar__feature:hover,.ds-navbar__feature:focus-visible{background:var(--navbar-feature-bg-hover)}.ds-navbar__feature .ds-navbar__eyebrow{padding:0}.ds-navbar__feature-icon{align-items:center;align-self:start;background:var(--navbar-feature-icon-bg);border-radius:var(--radius-md);color:var(--navbar-feature-icon-fg);display:inline-flex;height:var(--space-10);justify-content:center;margin-block-end:auto;width:var(--space-10)}.ds-navbar__feature-title{font-size:var(--text-lg);font-weight:var(--weight-semibold);letter-spacing:var(--type-heading-tracking);line-height:var(--leading-lg)}.ds-navbar__brand:focus-visible,.ds-navbar__trigger:focus-visible,.ds-navbar__row:focus-visible,.ds-navbar__feature:focus-visible,.ds-navbar__toggle:focus-visible,.ds-navbar__sheet-link:focus-visible,.ds-navbar__sheet-sublink:focus-visible{outline:var(--navbar-focus-width) solid var(--navbar-focus-color);outline-offset:var(--navbar-focus-offset)}.ds-navbar__row:focus-visible,.ds-navbar__feature:focus-visible,.ds-navbar__sheet-link:focus-visible,.ds-navbar__sheet-sublink:focus-visible{outline-offset:calc(-1 * var(--navbar-focus-width))}.ds-navbar__toggle{align-items:center;background:transparent;border:0;border-radius:var(--navbar-link-radius);color:var(--navbar-toggle-fg);cursor:pointer;display:none;flex:none;height:var(--space-10);justify-content:center;margin-inline-end:calc(-1 * var(--space-2));transition:background-color var(--duration-fast) var(--ease-standard);width:var(--space-10)}.ds-navbar__toggle:hover{background:var(--navbar-toggle-bg-hover)}.ds-navbar__sheet{background:var(--navbar-sheet-bg);border:1px solid var(--navbar-sheet-border);border-radius:var(--navbar-sheet-radius);box-shadow:var(--navbar-viewport-shadow);color:var(--navbar-row-fg);inset:var(--navbar-sheet-inset) var(--navbar-sheet-inset) auto auto;margin:0;max-height:calc(100dvh - 2 * var(--navbar-sheet-inset));max-width:var(--navbar-sheet-max-width);overflow-y:auto;overscroll-behavior:contain;padding:0;position:fixed;transform-origin:top right;width:calc(100% - 2 * var(--navbar-sheet-inset))}.ds-navbar__sheet[open]{animation:ds-navbar-sheet-in var(--duration-base) var(--ease-enter);display:flex;flex-direction:column}.ds-navbar__sheet::backdrop{background:var(--navbar-sheet-backdrop)}:root:has(.ds-navbar__sheet[open]){overflow:hidden}.ds-navbar__sheet-head{align-items:center;display:flex;justify-content:space-between;min-height:var(--space-16);padding-inline:var(--navbar-sheet-padding)}.ds-navbar__sheet-head form{display:contents}.ds-navbar__sheet-head .ds-navbar__toggle{display:inline-flex}.ds-navbar__sheet-title{font-size:var(--text-sm);font-weight:var(--weight-semibold)}.ds-navbar__sheet-nav{padding:var(--space-2) var(--space-3) var(--space-4)}.ds-navbar__sheet-list,.ds-navbar__sheet-group ul{display:grid;gap:var(--space-0-5);list-style:none;margin:0;padding:0}.ds-navbar__sheet-link{align-items:center;border-radius:var(--navbar-row-radius);color:var(--navbar-row-fg);cursor:pointer;display:flex;font-size:var(--navbar-sheet-row-size);font-weight:var(--weight-medium);gap:var(--space-3);list-style:none;min-height:var(--navbar-sheet-row-height);padding-inline:var(--space-3);text-decoration:none;transition:background-color var(--duration-fast) var(--ease-standard)}.ds-navbar__sheet-link::-webkit-details-marker{display:none}.ds-navbar__sheet-link .ds-navbar__chevron{margin-inline-start:auto}.ds-navbar__sheet-link:hover{background:var(--navbar-row-bg-hover)}.ds-navbar__sheet-panel{display:grid;gap:var(--space-1);padding:var(--space-1) 0 var(--space-2) var(--space-3)}.ds-navbar__sheet-group .ds-navbar__eyebrow{padding-inline:var(--space-3)}.ds-navbar__sheet-sublink{border-radius:var(--navbar-row-radius);color:var(--navbar-row-fg);display:grid;gap:var(--space-0-5);padding:var(--space-2) var(--space-3);text-decoration:none;transition:background-color var(--duration-fast) var(--ease-standard)}.ds-navbar__sheet-sublink:hover{background:var(--navbar-row-bg-hover)}.ds-navbar__sheet-link[aria-current=page],.ds-navbar__sheet-sublink[aria-current=page]{background:var(--navbar-row-bg-current)}.ds-navbar__sheet-link.is-current .ds-icon:not(.ds-navbar__chevron),.ds-navbar__sheet-link[aria-current=page] .ds-icon{color:var(--navbar-current-icon-fg)}.ds-navbar__sheet-footer{border-top:1px solid var(--navbar-sheet-border);display:grid;gap:var(--space-5);margin-block-start:auto;padding:var(--space-5) var(--navbar-sheet-padding) var(--navbar-sheet-padding)}.ds-navbar__sheet-meta{display:grid;gap:var(--space-3) var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));list-style:none;margin:0;padding:0}.ds-navbar__sheet-meta a{border-radius:var(--radius-xs);color:var(--navbar-sheet-meta-fg);font-size:var(--text-sm);font-weight:var(--weight-medium);text-decoration:none}.ds-navbar__sheet-meta a:hover{color:var(--navbar-row-fg)}.ds-navbar__sheet-meta a:focus-visible{outline:var(--navbar-focus-width) solid var(--navbar-focus-color);outline-offset:var(--navbar-focus-offset)}.ds-navbar__sheet-actions{display:grid;gap:var(--space-2)}.ds-navbar[data-collapsed=true] .ds-navbar__nav{display:none}.ds-navbar[data-collapsed=true] .ds-navbar__toggle{display:inline-flex}.ds-navbar[data-collapsed=true] .ds-navbar__brand~.ds-navbar__start{display:none}@container ds-navbar (max-width: 719px){.ds-navbar:not([data-collapsed]) .ds-navbar__nav{display:none}.ds-navbar:not([data-collapsed]) .ds-navbar__toggle{display:inline-flex}.ds-navbar:not([data-collapsed]) .ds-navbar__brand~.ds-navbar__start{display:none}}@container ds-navbar (max-width: 719px){.ds-navbar__inner{padding-inline:var(--space-4)}}@keyframes ds-navbar-viewport-in{0%{opacity:0;transform:translate(var(--ds-navbar-viewport-x, 0)) translateY(calc(-1 * var(--space-1)))}}@keyframes ds-navbar-panel-in{0%{opacity:0}}@keyframes ds-navbar-sheet-in{0%{opacity:0;transform:translateY(calc(-1 * var(--space-2))) scale(.98)}}@media(prefers-reduced-motion:reduce){.ds-navbar__viewport,.ds-navbar__viewport[data-instant=true],.ds-navbar__panel:not([hidden]),.ds-navbar__sheet[open],.ds-navbar__chevron{animation:none;transition:none}}}@layer components{.ds-page-header{display:grid;gap:var(--page-header-gap)}.ds-page-header__title{color:var(--page-header-title-fg);font-size:var(--page-header-title-size);letter-spacing:var(--page-header-title-tracking);line-height:var(--page-header-title-leading);max-width:var(--page-header-title-max);text-wrap:balance}.ds-page-header__lede{color:var(--page-header-lede-fg);font-size:var(--page-header-lede-size);line-height:var(--page-header-lede-leading);max-width:var(--page-header-lede-max)}.ds-page-header__meta{align-items:center;display:flex;flex-wrap:wrap;gap:var(--page-header-meta-gap)}.ds-page-header__actions{align-items:center;display:flex;flex-wrap:wrap;gap:var(--page-header-actions-gap);margin-block-start:var(--page-header-actions-margin)}.ds-page-header__meta:empty,.ds-page-header__lede:empty,.ds-page-header__actions:empty{display:none}.ds-page-header--display .ds-page-header__title{font-size:var(--page-header-display-size);letter-spacing:var(--page-header-display-tracking);line-height:var(--page-header-display-leading);max-width:var(--page-header-title-max)}.ds-page-header--display .ds-page-header__lede{margin-block-start:var(--space-1)}.ds-page-header__title em{color:var(--page-header-emphasis-fg);font-style:normal}}@layer components{.ds-pagination{align-items:center;display:flex;gap:var(--pagination-gap)}.ds-pagination__list{align-items:center;display:flex;gap:var(--pagination-gap);list-style:none;margin:0;padding:0}.ds-pagination__link,.ds-pagination__ellipsis{align-items:center;border:0;border-radius:var(--pagination-radius);display:inline-flex;font-family:inherit;font-size:var(--pagination-font-size);height:var(--pagination-item-size);justify-content:center;min-width:var(--pagination-item-size);padding-inline:var(--space-2)}.ds-pagination__link{background:var(--pagination-bg);color:var(--pagination-fg);cursor:pointer;text-decoration:none}.ds-pagination__link:hover{background:var(--pagination-bg-hover);color:var(--pagination-fg-hover)}.ds-pagination__link:focus-visible{outline:var(--pagination-focus-width) solid var(--pagination-focus-color);outline-offset:var(--pagination-focus-offset)}.ds-pagination__link[aria-disabled=true],.ds-pagination__link:disabled{background:transparent;color:var(--pagination-fg-disabled);cursor:not-allowed;pointer-events:none}.ds-pagination__link[aria-current=page]{background:var(--pagination-bg-current);color:var(--pagination-fg-current);cursor:default;font-weight:var(--weight-semibold)}.ds-pagination__ellipsis{color:var(--pagination-fg-disabled)}.ds-pagination__link--direction{gap:var(--space-1-5);padding-inline:var(--space-3)}@media(max-width:700px){.ds-pagination__link--direction .ds-pagination__label{display:none}}}@layer components{.ds-section{border-top:1px solid var(--section-border);margin-block-start:var(--section-margin-top);padding-block-start:var(--section-padding-top)}.ds-section__head{align-items:baseline;display:flex;gap:var(--section-head-gap);justify-content:space-between}.ds-section__title{font-size:var(--section-title-size);letter-spacing:var(--type-title-sm-tracking);line-height:var(--section-title-leading);margin-block-end:var(--section-title-margin)}.ds-section__index{color:var(--section-index-fg);font-family:var(--font-mono);font-size:var(--section-index-size);font-variant-numeric:tabular-nums}.ds-section__intro{color:var(--section-intro-fg);font-size:var(--section-intro-size);line-height:var(--leading-base);margin-block-end:var(--section-intro-margin);max-width:var(--section-intro-max)}}@layer components{.ds-field{display:grid;gap:var(--space-1-5);width:100%}.ds-field__label{color:var(--input-label-fg);font-family:var(--input-font);font-size:var(--text-sm);font-weight:var(--weight-medium);line-height:var(--leading-sm)}.ds-field__optional{color:var(--input-hint-fg);font-weight:var(--weight-regular)}.ds-field__required{color:var(--input-required-fg)}.ds-field__control{position:relative}.ds-input{background:var(--input-bg);border:1px solid var(--input-border);border-radius:var(--input-radius);color:var(--input-fg);font-family:var(--input-font);font-size:var(--input-font-size);height:var(--input-height-md);line-height:var(--leading-sm);padding:var(--input-padding-y) var(--input-padding-x);transition:border-color var(--duration-fast) var(--ease-standard),box-shadow var(--duration-fast) var(--ease-standard),background-color var(--duration-fast) var(--ease-standard);width:100%}.ds-input::placeholder{color:var(--input-placeholder);opacity:1}.ds-input:hover:not(:disabled):not(:focus){background:var(--input-bg-hover);border-color:var(--input-border-hover)}.ds-input:focus{border-color:var(--input-border-focus);box-shadow:0 0 0 var(--input-focus-width) var(--input-bg),0 0 0 calc(var(--input-focus-width) * 2) var(--input-ring-focus);outline:none}.ds-input--sm{height:var(--input-height-sm)}.ds-input--lg{height:var(--input-height-lg)}.ds-input--with-state{padding-inline-end:var(--space-10)}.ds-input.is-invalid{border-color:var(--input-border-invalid)}.ds-input.is-invalid:focus{box-shadow:0 0 0 var(--input-focus-width) var(--input-bg),0 0 0 calc(var(--input-focus-width) * 2) var(--input-ring-invalid)}.ds-input.is-valid{border-color:var(--input-border-valid)}.ds-input:disabled{background:var(--input-bg-disabled);border-color:var(--input-border);color:var(--input-fg-disabled);cursor:not-allowed}.ds-input:disabled::placeholder{color:var(--input-fg-disabled)}textarea.ds-input{height:auto;min-height:var(--space-24);resize:vertical}.ds-field__hint,.ds-field__error{align-items:flex-start;display:flex;font-family:var(--input-font);font-size:var(--text-sm);gap:var(--space-1);line-height:var(--leading-sm)}.ds-field__hint{color:var(--input-hint-fg)}.ds-field__error{color:var(--input-error-fg);font-weight:var(--weight-medium)}.ds-field__error[hidden],.ds-field__hint[hidden]{display:none}.ds-field__count{color:var(--input-count-fg);font-family:var(--font-mono);font-size:var(--text-xs);font-variant-numeric:tabular-nums;justify-self:end}.ds-field__state{align-items:center;color:var(--input-border-valid);display:inline-flex;height:var(--space-4);position:absolute;right:var(--input-padding-x);top:50%;transform:translateY(-50%);width:var(--space-4)}.ds-field--reveal .ds-field__state{right:calc(var(--input-padding-x) + var(--space-7))}.ds-field--reveal .ds-input{padding-inline-end:calc(var(--space-10) + var(--space-2))}.ds-field--reveal .ds-input--with-state{padding-inline-end:calc(var(--space-10) + var(--space-6))}.ds-field__reveal{align-items:center;background:transparent;border:0;border-radius:var(--radius-sm);color:var(--input-reveal-fg);cursor:pointer;display:inline-flex;height:var(--space-7);justify-content:center;position:absolute;right:calc(var(--input-padding-x) - var(--space-1));top:50%;transform:translateY(-50%);width:var(--space-7)}.ds-field__reveal:hover:not(:disabled){background:var(--input-reveal-bg-hover);color:var(--input-reveal-fg-hover)}.ds-field__reveal:focus-visible{outline:var(--input-focus-width) solid var(--input-ring-focus);outline-offset:calc(var(--input-focus-offset) - 2px)}.ds-field__reveal:disabled{color:var(--input-fg-disabled);cursor:not-allowed}.ds-field__reveal [hidden]{display:none}}@layer components{.ds-select{position:relative;width:100%}.ds-select__control{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--select-bg);border:1px solid var(--select-border);border-radius:var(--select-radius);color:var(--select-fg);font-family:var(--font-body);font-size:var(--text-sm);height:var(--select-height);line-height:var(--leading-sm);padding-inline:var(--select-padding-x) var(--space-10);transition:border-color var(--duration-fast) var(--ease-standard),box-shadow var(--duration-fast) var(--ease-standard);width:100%}.ds-select--sm .ds-select__control{height:var(--select-height-sm)}.ds-select--lg .ds-select__control{font-size:var(--text-base);height:var(--select-height-lg)}.ds-select__control:hover:not(:disabled){border-color:var(--select-border-hover)}.ds-select__control:focus{border-color:var(--select-border-focus);box-shadow:0 0 0 var(--select-focus-width) var(--select-focus-offset-color),0 0 0 calc(var(--select-focus-width) * 2) var(--select-border-focus);outline:none}.ds-select__control:disabled{background:var(--select-bg-disabled);color:var(--select-fg-disabled);cursor:not-allowed}.ds-select__control.is-invalid{border-color:var(--select-border-invalid)}.ds-select__anchor{position:relative}.ds-select__trigger{align-items:center;cursor:pointer;display:flex;gap:var(--space-2);justify-content:space-between;text-align:start}.ds-select__trigger.is-placeholder .ds-select__value{color:var(--select-placeholder)}.ds-select__value{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ds-select__chevron{color:var(--select-chevron);pointer-events:none;position:absolute;right:var(--select-padding-x);top:50%;transform:translateY(-50%);transition:transform var(--duration-fast) var(--ease-standard)}.ds-select.is-open .ds-select__chevron{transform:translateY(-50%) rotate(180deg)}.ds-select [data-ds-values]{display:none}.ds-select__popup{background:var(--select-popup-bg);border:1px solid var(--select-popup-border);border-radius:var(--select-popup-radius);box-shadow:var(--select-popup-shadow);inset-inline:0;max-height:var(--select-popup-max-height);overflow-y:auto;padding:var(--select-popup-padding);position:absolute;top:calc(100% + var(--select-popup-gap));z-index:var(--select-popup-z)}.ds-select__popup[hidden]{display:none}.ds-select__list{display:grid;gap:var(--space-0-5);list-style:none;margin:0;padding:0}.ds-select__option{align-items:center;border-radius:var(--select-option-radius);color:var(--select-option-fg);cursor:pointer;display:flex;gap:var(--space-3);justify-content:space-between;padding:var(--select-option-padding-y) var(--select-option-padding-x)}.ds-select__option:hover,.ds-select__option.is-active{background:var(--select-option-bg-hover)}.ds-select__option[aria-selected=true]{background:var(--select-option-bg-selected);color:var(--select-option-fg-selected)}.ds-select__option[aria-disabled=true]{color:var(--select-option-fg-muted);cursor:not-allowed}.ds-select__option[aria-disabled=true]:hover{background:transparent}.ds-select__option:focus-visible{outline:var(--select-focus-width) solid var(--select-border-focus);outline-offset:calc(-1 * var(--select-focus-offset))}.ds-select__option-text{display:grid;gap:var(--space-0-5);min-width:0}.ds-select__option-label{font-size:var(--text-sm);line-height:var(--leading-sm)}.ds-select__option-description{color:inherit;color:var(--select-option-description);font-size:var(--text-sm);line-height:var(--leading-sm)}.ds-select__indicator{align-items:center;border:1px solid var(--select-border);border-radius:var(--radius-xs);color:transparent;display:inline-flex;flex:none;height:var(--select-indicator-size);justify-content:center;width:var(--select-indicator-size)}.ds-select__option[aria-selected=true] .ds-select__indicator{background:var(--select-indicator-bg);border-color:var(--select-indicator-bg);color:var(--select-indicator-fg)}.ds-select:not(.ds-select--multiple) .ds-select__indicator{background:transparent;border-color:transparent}.ds-select:not(.ds-select--multiple) .ds-select__option[aria-selected=true] .ds-select__indicator{background:transparent;color:var(--select-option-fg-selected)}.ds-select__footer{border-top:1px solid var(--select-popup-footer-border);margin-block-start:var(--select-popup-gap);padding-block-start:var(--select-popup-gap)}.ds-select__done{background:transparent;border:0;border-radius:var(--select-option-radius);color:var(--select-option-fg-selected);cursor:pointer;font:inherit;font-size:var(--text-sm);font-weight:var(--weight-medium);padding:var(--select-option-padding-y) var(--select-option-padding-x);text-align:start;width:100%}.ds-select__done:hover{background:var(--select-option-bg-hover)}.ds-select__done:focus-visible{outline:var(--select-focus-width) solid var(--select-border-focus);outline-offset:calc(-1 * var(--select-focus-offset))}}@layer components{.ds-nav{background:var(--nav-bg);border-inline-end:1px solid var(--nav-border);display:flex;flex-direction:column;height:100dvh;padding:var(--space-4);width:var(--nav-width)}.ds-nav__brand{align-items:center;color:var(--nav-brand-fg);display:flex;font-size:var(--nav-brand-size);font-weight:var(--weight-semibold);gap:var(--space-2-5);letter-spacing:var(--type-heading-tracking);min-height:var(--space-10);padding-inline:var(--nav-item-padding-x);text-decoration:none}.ds-nav__brand-mark{align-items:center;background:var(--nav-brand-mark-bg);border-radius:var(--radius-sm);color:var(--nav-brand-mark-fg);display:inline-flex;height:var(--space-7);justify-content:center;width:var(--space-7)}.ds-nav__scroll{flex:1;margin-block-start:var(--space-6);overflow-y:auto;scrollbar-color:var(--nav-scrollbar) transparent;scrollbar-width:thin}.ds-nav__group+.ds-nav__group{margin-block-start:var(--space-6)}.ds-nav__group-label{color:var(--nav-group-label-fg);font-family:var(--font-body);font-size:var(--nav-group-label-size);font-weight:var(--type-overline-weight);letter-spacing:var(--type-overline-tracking);padding-inline:var(--nav-item-padding-x);text-transform:uppercase}.ds-nav__list{display:grid;gap:var(--space-0-5);list-style:none;margin-block-start:var(--space-2);padding:0}.ds-nav__link,.ds-nav__summary{align-items:center;border-radius:var(--nav-item-radius);color:var(--nav-item-fg);display:flex;font-size:var(--text-sm);gap:var(--nav-item-gap);min-height:var(--nav-item-height);padding:var(--space-1) var(--nav-item-padding-x);text-decoration:none;transition:background-color var(--duration-fast) var(--ease-standard),color var(--duration-fast) var(--ease-standard);width:100%}.ds-nav__link:hover,.ds-nav__summary:hover{background:var(--nav-item-bg-hover);color:var(--nav-item-fg-hover)}.ds-nav__link[aria-current=page]{background:var(--nav-item-bg-active);color:var(--nav-item-fg-active);font-weight:var(--weight-medium)}.ds-nav__link[aria-current=page] .ds-nav__icon{color:var(--nav-item-indicator)}.ds-nav__link:focus-visible,.ds-nav__summary:focus-visible{outline:var(--nav-focus-width) solid var(--nav-focus-color);outline-offset:var(--nav-focus-offset)}.ds-nav__icon{color:var(--nav-icon);flex:none}.ds-nav__summary[data-active=true]{color:var(--nav-item-fg-active);font-weight:var(--weight-medium)}.ds-nav__summary[data-active=true] .ds-nav__icon{color:var(--nav-item-indicator)}.ds-nav__badge{margin-inline-start:auto}.ds-nav__summary{cursor:pointer;justify-content:flex-start;list-style:none}.ds-nav__summary::-webkit-details-marker{display:none}.ds-nav__summary .ds-nav__chevron{margin-inline-start:auto;transition:transform var(--duration-fast) var(--ease-standard)}.ds-nav__submenu[open]>.ds-nav__summary .ds-nav__chevron{transform:rotate(90deg)}.ds-nav__submenu .ds-nav__list{border-inline-start:1px solid var(--nav-border);margin-block-start:var(--space-1);margin-inline-start:calc(var(--nav-item-padding-x) + var(--space-2));padding-inline-start:var(--space-2)}.ds-nav__footer{border-top:1px solid var(--nav-border);margin-block-start:var(--space-4);padding-block-start:var(--space-4)}.ds-nav__mobilebar{align-items:center;background:var(--nav-mobilebar-bg);border-bottom:1px solid var(--nav-border);display:none;gap:var(--space-3);justify-content:space-between;min-height:var(--layout-header);padding-inline:var(--space-4);position:sticky;top:0;z-index:var(--z-sticky)}.ds-nav__toggle{align-items:center;background:var(--nav-toggle-bg);border:1px solid var(--nav-toggle-border);border-radius:var(--radius-sm);color:var(--nav-toggle-fg);display:inline-flex;height:var(--space-10);justify-content:center;width:var(--space-10)}.ds-nav__toggle:focus-visible{outline:var(--nav-focus-width) solid var(--nav-focus-color);outline-offset:var(--nav-focus-offset)}.ds-nav__backdrop{background:var(--nav-mobile-backdrop);top:0;right:0;bottom:0;left:0;opacity:0;position:fixed;transition:opacity var(--duration-base) var(--ease-standard);visibility:hidden;z-index:var(--z-overlay)}@media(max-width:900px){.ds-nav{inset-block:0;inset-inline-start:0;position:fixed;transform:translate(-100%);transition:transform var(--duration-base) var(--ease-standard);z-index:var(--z-modal)}.ds-nav__mobilebar{display:flex}.ds-nav__backdrop{display:block}.ds-nav[data-open=true]{transform:none}.ds-nav[data-open=true]+.ds-nav__backdrop{opacity:1;visibility:visible}}@media(prefers-reduced-motion:reduce){.ds-nav,.ds-nav__backdrop{transition:none}}}@layer components{.ds-skeleton{background:var(--skeleton-bg);border-radius:var(--skeleton-radius);display:block;overflow:hidden;position:relative}.ds-skeleton:after{animation:ds-skeleton-shimmer var(--skeleton-duration) var(--ease-standard) infinite;background:linear-gradient(90deg,transparent,var(--skeleton-highlight),transparent);content:"";top:0;right:0;bottom:0;left:0;position:absolute;transform:translate(-100%)}.ds-skeleton--heading{border-radius:var(--radius-sm);height:var(--skeleton-heading-height);width:42%}.ds-skeleton--text{height:var(--skeleton-text-height);width:100%}.ds-skeleton--text:last-child{width:72%}.ds-skeleton--image{aspect-ratio:16 / 9;border-radius:var(--skeleton-image-radius);width:100%}.ds-skeleton-stack{display:grid;gap:var(--skeleton-text-gap)}@keyframes ds-skeleton-shimmer{to{transform:translate(100%)}}@media(prefers-reduced-motion:reduce){.ds-skeleton:after{animation:none;background:var(--skeleton-bg);opacity:0}}}@layer components{.ds-spinner{border:var(--spinner-stroke) solid var(--spinner-track);border-radius:var(--radius-full);border-top-color:var(--spinner-indicator);display:inline-block;height:var(--spinner-size-md);width:var(--spinner-size-md)}.ds-spinner--sm{height:var(--spinner-size-sm);width:var(--spinner-size-sm)}.ds-spinner--lg{height:var(--spinner-size-lg);width:var(--spinner-size-lg)}.ds-spinner--slow{animation:ds-spinner-rotate calc(var(--spinner-duration) * 2) linear infinite}.ds-spinner{animation:ds-spinner-rotate var(--spinner-duration) linear infinite}@keyframes ds-spinner-rotate{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.ds-spinner,.ds-spinner--slow{animation-duration:2.4s}}}@layer components{.ds-table-wrap{border:1px solid var(--table-border);border-radius:var(--table-radius);overflow-x:auto;width:100%}.ds-table__toolbar{align-items:center;background:var(--table-toolbar-bg);border-bottom:1px solid var(--table-border);display:flex;gap:var(--table-toolbar-gap);padding:var(--table-toolbar-padding)}.ds-table__filter{max-width:var(--table-filter-width)}.ds-table__count{color:var(--table-caption-fg);font-family:var(--table-numeric-font);font-size:var(--text-sm);margin-inline-start:auto;white-space:nowrap}.ds-table{background:var(--table-bg);border-collapse:collapse;font-size:var(--table-cell-size);width:100%}.ds-table--wide{min-width:var(--table-min-width)}.ds-table__caption{color:var(--table-caption-fg);font-size:var(--table-caption-size);padding:var(--space-3) var(--table-cell-padding-x);text-align:start}.ds-table thead{background:var(--table-header-bg)}.ds-table th{color:var(--table-header-fg);font-family:var(--font-body);font-size:var(--table-header-size);font-weight:var(--type-overline-weight);letter-spacing:var(--type-overline-tracking);padding:var(--space-2-5) var(--table-cell-padding-x);text-align:start;text-transform:uppercase;white-space:nowrap}.ds-table td{border-top:1px solid var(--table-row-border);color:var(--table-cell-fg);padding:var(--table-cell-padding-y) var(--table-cell-padding-x);vertical-align:middle}.ds-table tbody tr{transition:background-color var(--duration-fast) var(--ease-standard)}.ds-table tbody tr:hover{background:var(--table-row-hover)}.ds-table tbody tr[aria-selected=true]{background:var(--table-row-selected)}.ds-table__sort-button{align-items:center;background:transparent;border:0;border-radius:var(--radius-xs);color:inherit;cursor:pointer;display:inline-flex;font:inherit;gap:var(--space-1);letter-spacing:inherit;padding:0;text-transform:inherit}.ds-table__sort-button:hover{color:var(--table-sort-hover)}.ds-table__sort-button:focus-visible{outline:var(--table-focus-width) solid var(--table-focus-color);outline-offset:var(--table-focus-offset)}.ds-table__sort{color:var(--table-cell-fg-muted);display:inline-flex;transition:transform var(--duration-fast) var(--ease-standard)}.ds-table__sort-dir,th[aria-sort=ascending] .ds-table__sort-idle,th[aria-sort=descending] .ds-table__sort-idle{display:none}th[aria-sort=ascending] .ds-table__sort-dir,th[aria-sort=descending] .ds-table__sort-dir{display:block}th[aria-sort=ascending] .ds-table__sort,th[aria-sort=descending] .ds-table__sort{color:var(--table-sort-hover)}th[aria-sort=ascending] .ds-table__sort-dir{transform:rotate(180deg)}.ds-table .is-numeric{font-family:var(--table-numeric-font);font-variant-numeric:tabular-nums;text-align:end;white-space:nowrap}.ds-table .is-end{text-align:end}.ds-table th.is-numeric .ds-table__sort-button,.ds-table th.is-end .ds-table__sort-button{flex-direction:row-reverse}.ds-table__muted{color:var(--table-cell-fg-muted)}.ds-table__mono{font-family:var(--table-numeric-font);font-size:var(--text-sm);font-variant-numeric:tabular-nums;white-space:nowrap}.ds-table__swatch{border:1px solid var(--table-border);border-radius:var(--radius-xs);display:inline-block;height:var(--space-3);margin-inline-end:var(--space-2);vertical-align:-.1em;width:var(--space-3)}.ds-table__empty{color:var(--table-cell-fg-muted);padding:var(--space-10) var(--table-cell-padding-x);text-align:center}}@layer components{.ds-theme-toggle__sun,.ds-theme-toggle__moon{align-items:center;display:inline-flex}.ds-theme-toggle__sun{display:none}[data-theme=dark] .ds-theme-toggle__sun{display:inline-flex}[data-theme=dark] .ds-theme-toggle__moon{display:none}@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .ds-theme-toggle__sun{display:inline-flex}:root:not([data-theme=light]) .ds-theme-toggle__moon{display:none}}}@layer components{.ds-toast{align-items:center;background:var(--toast-bg);border:1px solid var(--toast-border);border-radius:var(--toast-radius);box-shadow:var(--toast-shadow);color:var(--toast-fg);display:flex;gap:var(--toast-gap);max-width:min(var(--toast-width),calc(100vw - var(--space-8)));min-width:0;padding:var(--toast-padding);pointer-events:auto;width:100%}.ds-toast__icon{color:var(--toast-icon-fg);display:inline-flex;flex:none}.ds-toast--info .ds-toast__icon{color:var(--toast-info-icon)}.ds-toast--success .ds-toast__icon{color:var(--toast-success-icon)}.ds-toast--warning .ds-toast__icon{color:var(--toast-warning-icon)}.ds-toast--danger .ds-toast__icon{color:var(--toast-danger-icon)}.ds-toast--loading .ds-toast__icon{animation:ds-toast-spin calc(var(--duration-slower) * 2) linear infinite;color:var(--toast-loading-icon)}.ds-toast__content{display:grid;flex:1;gap:var(--toast-body-gap);min-width:0}.ds-toast__title{color:var(--toast-fg);font-size:var(--toast-title-size);font-weight:var(--toast-title-weight);line-height:var(--leading-sm);margin:0}.ds-toast__body{color:var(--toast-body-fg);font-size:var(--toast-body-size);line-height:var(--leading-sm);margin:0}.ds-toast__actions{align-items:center;display:flex;flex:none;gap:var(--space-2)}.ds-toast__action{align-items:center;background:var(--toast-action-bg);border:1px solid var(--toast-action-border);border-radius:var(--toast-action-radius);color:var(--toast-action-fg);cursor:pointer;display:inline-flex;font:inherit;font-size:var(--toast-action-font-size);font-weight:var(--toast-action-font-weight);height:var(--toast-action-height);justify-content:center;padding-inline:var(--toast-action-padding-x);text-decoration:none;transition:background-color var(--duration-fast) var(--ease-standard),border-color var(--duration-fast) var(--ease-standard);white-space:nowrap}.ds-toast__action:hover{background:var(--toast-action-bg-hover)}.ds-toast__action:focus-visible{outline:var(--toast-focus-width) solid var(--toast-focus-color);outline-offset:var(--toast-focus-offset)}.ds-toast__close{align-items:center;background:transparent;border:0;border-radius:var(--radius-sm);color:var(--toast-close-fg);cursor:pointer;display:inline-flex;flex:none;height:var(--space-7);justify-content:center;padding:0;transition:background-color var(--duration-fast) var(--ease-standard),color var(--duration-fast) var(--ease-standard);width:var(--space-7)}.ds-toast__close:hover{background:var(--toast-close-bg-hover);color:var(--toast-close-fg-hover)}.ds-toast__close:focus-visible{outline:var(--toast-focus-width) solid var(--toast-focus-color);outline-offset:var(--toast-focus-offset)}.ds-toast-region{bottom:var(--space-4);display:flex;flex-direction:column;gap:var(--toast-viewport-gap);inset-inline-end:var(--space-4);max-width:calc(100vw - var(--space-8));pointer-events:none;position:fixed;width:min(var(--toast-width),calc(100vw - var(--space-8)));z-index:var(--z-toast)}.ds-toast-region .ds-toast{animation:ds-toast-in var(--duration-base) var(--ease-standard);bottom:0;inset-inline-end:0;position:absolute;transform:translateY(calc(var(--toast-index, 0) * var(--toast-stack-peek) * -1)) scale(calc(1 - var(--toast-index, 0) * var(--toast-stack-scale-step)));transform-origin:bottom center;transition:transform var(--duration-base) var(--ease-spring),opacity var(--duration-base) var(--ease-standard);z-index:calc(100 - var(--toast-index, 0))}.ds-toast-region:hover .ds-toast,.ds-toast-region:focus-within .ds-toast{transform:translateY(calc(-1 * var(--toast-offset, 0px))) scale(1)}.ds-toast-region .ds-toast[data-toast-leaving]{animation:ds-toast-out var(--duration-fast) var(--ease-exit) forwards}.ds-toast-region .ds-toast[data-toast-limited]{opacity:0;pointer-events:none;transform:translateY(var(--space-3)) scale(.98);transition:opacity var(--duration-fast) var(--ease-exit)}@keyframes ds-toast-in{0%{opacity:0}}@keyframes ds-toast-out{to{opacity:0}}@keyframes ds-toast-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.ds-toast-region .ds-toast,.ds-toast-region .ds-toast[data-toast-leaving],.ds-toast--loading .ds-toast__icon{animation:none;transition:none}}}@layer components{.ds-topbar{background:var(--topbar-bg);border-bottom:1px solid var(--topbar-border)}.ds-topbar__inner{align-items:center;display:flex;gap:var(--topbar-gap);min-height:var(--topbar-height);padding-inline:var(--topbar-padding-x)}.ds-topbar__start{flex:1 1 auto;min-width:0}.ds-topbar__actions{display:flex;flex-shrink:0;gap:var(--topbar-gap);margin-inline-start:auto}.ds-topbar__start:empty+.ds-topbar__actions{margin-inline-start:0}}
@@ -0,0 +1,61 @@
1
+ export { default as Accordion } from "./components/Accordion";
2
+ export { default as Alert } from "./components/Alert";
3
+ export { default as Badge } from "./components/Badge";
4
+ export { default as Breadcrumbs } from "./components/Breadcrumbs";
5
+ export { default as Button } from "./components/Button";
6
+ export { default as Card } from "./components/Card";
7
+ export { default as Checkbox } from "./components/Checkbox";
8
+ export { default as Chip } from "./components/Chip";
9
+ export { default as CodeBlock } from "./components/CodeBlock";
10
+ export { default as EmptyState } from "./components/EmptyState";
11
+ export { default as Example } from "./components/Example";
12
+ export { default as Grid } from "./components/Grid";
13
+ export { default as GridItem } from "./components/GridItem";
14
+ export { default as Icon } from "./components/Icon";
15
+ export { default as Modal } from "./components/Modal";
16
+ export { default as Navbar } from "./components/Navbar";
17
+ export { default as PageHeader } from "./components/PageHeader";
18
+ export { default as Pagination } from "./components/Pagination";
19
+ export { default as Radio } from "./components/Radio";
20
+ export { default as RadioGroup } from "./components/RadioGroup";
21
+ export { default as Section } from "./components/Section";
22
+ export { default as Select } from "./components/Select";
23
+ export { default as Sidebar } from "./components/Sidebar";
24
+ export { default as Skeleton } from "./components/Skeleton";
25
+ export { default as Spinner } from "./components/Spinner";
26
+ export { default as Table } from "./components/Table";
27
+ export { default as TextField } from "./components/TextField";
28
+ export { default as ThemeToggle } from "./components/ThemeToggle";
29
+ export { default as Toast } from "./components/Toast";
30
+ export { default as TopBar } from "./components/TopBar";
31
+ export type { AccordionProps, AccordionItem } from "./components/Accordion";
32
+ export type { AlertProps } from "./components/Alert";
33
+ export type { BadgeProps } from "./components/Badge";
34
+ export type { BreadcrumbsProps, BreadcrumbItem, } from "./components/Breadcrumbs";
35
+ export type { ButtonProps } from "./components/Button";
36
+ export type { CardProps } from "./components/Card";
37
+ export type { CheckboxProps } from "./components/Checkbox";
38
+ export type { ChipProps } from "./components/Chip";
39
+ export type { CodeBlockProps } from "./components/CodeBlock";
40
+ export type { EmptyStateProps } from "./components/EmptyState";
41
+ export type { ExampleProps } from "./components/Example";
42
+ export type { GridProps } from "./components/Grid";
43
+ export type { GridItemProps } from "./components/GridItem";
44
+ export type { IconProps } from "./components/Icon";
45
+ export type { ModalProps } from "./components/Modal";
46
+ export type { NavbarProps, NavItem, NavGroup, NavLink, NavFeature, FooterLink, } from "./components/Navbar";
47
+ export type { PageHeaderProps } from "./components/PageHeader";
48
+ export type { PaginationProps } from "./components/Pagination";
49
+ export type { RadioProps } from "./components/Radio";
50
+ export type { RadioGroupProps } from "./components/RadioGroup";
51
+ export type { SectionProps } from "./components/Section";
52
+ export type { SelectProps, Option } from "./components/Select";
53
+ export type { SidebarProps, NavItem as SidebarNavItem, NavGroup as SidebarNavGroup, } from "./components/Sidebar";
54
+ export type { SkeletonProps, SkeletonVariant } from "./components/Skeleton";
55
+ export type { SpinnerProps, SpinnerSize } from "./components/Spinner";
56
+ export type { TableProps, Column, Cell } from "./components/Table";
57
+ export type { TextFieldProps } from "./components/TextField";
58
+ export type { ThemeToggleProps } from "./components/ThemeToggle";
59
+ export type { ToastProps, ToastTone } from "./components/Toast";
60
+ export type { TopBarProps } from "./components/TopBar";
61
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,OAAO,IAAI,KAAK,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,OAAO,IAAI,KAAK,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,OAAO,IAAI,IAAI,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,OAAO,IAAI,IAAI,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,OAAO,IAAI,IAAI,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,OAAO,IAAI,IAAI,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,OAAO,IAAI,KAAK,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,OAAO,IAAI,KAAK,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,OAAO,IAAI,KAAK,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,OAAO,IAAI,KAAK,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAExD,YAAY,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAC5E,YAAY,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AACrD,YAAY,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AACrD,YAAY,EACV,gBAAgB,EAChB,cAAc,GACf,MAAM,0BAA0B,CAAC;AAClC,YAAY,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AACvD,YAAY,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AACnD,YAAY,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAC3D,YAAY,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AACnD,YAAY,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAC7D,YAAY,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC/D,YAAY,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACzD,YAAY,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AACnD,YAAY,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAC3D,YAAY,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AACnD,YAAY,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AACrD,YAAY,EACV,WAAW,EACX,OAAO,EACP,QAAQ,EACR,OAAO,EACP,UAAU,EACV,UAAU,GACX,MAAM,qBAAqB,CAAC;AAC7B,YAAY,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC/D,YAAY,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC/D,YAAY,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AACrD,YAAY,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC/D,YAAY,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACzD,YAAY,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC/D,YAAY,EACV,YAAY,EACZ,OAAO,IAAI,cAAc,EACzB,QAAQ,IAAI,eAAe,GAC5B,MAAM,sBAAsB,CAAC;AAC9B,YAAY,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAC5E,YAAY,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACtE,YAAY,EAAE,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAC;AACnE,YAAY,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAC7D,YAAY,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AACjE,YAAY,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAChE,YAAY,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC"}