@govnepal/ui 0.2.1 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (134) hide show
  1. package/dist/Accordion.d.ts +17 -0
  2. package/dist/Accordion.d.ts.map +1 -0
  3. package/dist/Accordion.js +19 -0
  4. package/dist/Accordion.js.map +1 -0
  5. package/dist/AddressBlock.d.ts +28 -0
  6. package/dist/AddressBlock.d.ts.map +1 -0
  7. package/dist/AddressBlock.js +10 -0
  8. package/dist/AddressBlock.js.map +1 -0
  9. package/dist/AmountInput.d.ts +18 -0
  10. package/dist/AmountInput.d.ts.map +1 -0
  11. package/dist/AmountInput.js +7 -0
  12. package/dist/AmountInput.js.map +1 -0
  13. package/dist/BackLink.d.ts +7 -0
  14. package/dist/BackLink.d.ts.map +1 -0
  15. package/dist/BackLink.js +14 -0
  16. package/dist/BackLink.js.map +1 -0
  17. package/dist/Breadcrumb.d.ts +16 -0
  18. package/dist/Breadcrumb.d.ts.map +1 -0
  19. package/dist/Breadcrumb.js +9 -0
  20. package/dist/Breadcrumb.js.map +1 -0
  21. package/dist/Card.d.ts +16 -0
  22. package/dist/Card.d.ts.map +1 -0
  23. package/dist/Card.js +7 -0
  24. package/dist/Card.js.map +1 -0
  25. package/dist/CharacterCount.d.ts +7 -0
  26. package/dist/CharacterCount.d.ts.map +1 -0
  27. package/dist/CharacterCount.js +26 -0
  28. package/dist/CharacterCount.js.map +1 -0
  29. package/dist/ConfirmationDialog.d.ts +24 -0
  30. package/dist/ConfirmationDialog.d.ts.map +1 -0
  31. package/dist/ConfirmationDialog.js +13 -0
  32. package/dist/ConfirmationDialog.js.map +1 -0
  33. package/dist/CookieBanner.d.ts +18 -0
  34. package/dist/CookieBanner.d.ts.map +1 -0
  35. package/dist/CookieBanner.js +9 -0
  36. package/dist/CookieBanner.js.map +1 -0
  37. package/dist/EmptyState.d.ts +13 -0
  38. package/dist/EmptyState.d.ts.map +1 -0
  39. package/dist/EmptyState.js +11 -0
  40. package/dist/EmptyState.js.map +1 -0
  41. package/dist/FileUpload.d.ts +19 -0
  42. package/dist/FileUpload.d.ts.map +1 -0
  43. package/dist/FileUpload.js +18 -0
  44. package/dist/FileUpload.js.map +1 -0
  45. package/dist/Footer.d.ts +22 -0
  46. package/dist/Footer.d.ts.map +1 -0
  47. package/dist/Footer.js +7 -0
  48. package/dist/Footer.js.map +1 -0
  49. package/dist/IconButton.d.ts +15 -0
  50. package/dist/IconButton.d.ts.map +1 -0
  51. package/dist/IconButton.js +6 -0
  52. package/dist/IconButton.js.map +1 -0
  53. package/dist/LoadingState.d.ts +17 -0
  54. package/dist/LoadingState.d.ts.map +1 -0
  55. package/dist/LoadingState.js +20 -0
  56. package/dist/LoadingState.js.map +1 -0
  57. package/dist/MaskedValue.d.ts +21 -0
  58. package/dist/MaskedValue.d.ts.map +1 -0
  59. package/dist/MaskedValue.js +18 -0
  60. package/dist/MaskedValue.js.map +1 -0
  61. package/dist/Modal.d.ts +18 -0
  62. package/dist/Modal.d.ts.map +1 -0
  63. package/dist/Modal.js +68 -0
  64. package/dist/Modal.js.map +1 -0
  65. package/dist/OfflineBanner.d.ts +11 -0
  66. package/dist/OfflineBanner.d.ts.map +1 -0
  67. package/dist/OfflineBanner.js +11 -0
  68. package/dist/OfflineBanner.js.map +1 -0
  69. package/dist/OtpInput.d.ts +21 -0
  70. package/dist/OtpInput.d.ts.map +1 -0
  71. package/dist/OtpInput.js +11 -0
  72. package/dist/OtpInput.js.map +1 -0
  73. package/dist/Pagination.d.ts +11 -0
  74. package/dist/Pagination.d.ts.map +1 -0
  75. package/dist/Pagination.js +26 -0
  76. package/dist/Pagination.js.map +1 -0
  77. package/dist/PasswordInput.d.ts +18 -0
  78. package/dist/PasswordInput.d.ts.map +1 -0
  79. package/dist/PasswordInput.js +18 -0
  80. package/dist/PasswordInput.js.map +1 -0
  81. package/dist/ProgressBar.d.ts +8 -0
  82. package/dist/ProgressBar.d.ts.map +1 -0
  83. package/dist/ProgressBar.js +18 -0
  84. package/dist/ProgressBar.js.map +1 -0
  85. package/dist/QrCode.d.ts +22 -0
  86. package/dist/QrCode.d.ts.map +1 -0
  87. package/dist/QrCode.js +6 -0
  88. package/dist/QrCode.js.map +1 -0
  89. package/dist/SearchBox.d.ts +16 -0
  90. package/dist/SearchBox.d.ts.map +1 -0
  91. package/dist/SearchBox.js +16 -0
  92. package/dist/SearchBox.js.map +1 -0
  93. package/dist/SessionTimeoutWarning.d.ts +17 -0
  94. package/dist/SessionTimeoutWarning.d.ts.map +1 -0
  95. package/dist/SessionTimeoutWarning.js +17 -0
  96. package/dist/SessionTimeoutWarning.js.map +1 -0
  97. package/dist/SkipLink.d.ts +6 -0
  98. package/dist/SkipLink.d.ts.map +1 -0
  99. package/dist/SkipLink.js +14 -0
  100. package/dist/SkipLink.js.map +1 -0
  101. package/dist/SummaryList.d.ts +18 -0
  102. package/dist/SummaryList.d.ts.map +1 -0
  103. package/dist/SummaryList.js +6 -0
  104. package/dist/SummaryList.js.map +1 -0
  105. package/dist/Table.d.ts +22 -0
  106. package/dist/Table.d.ts.map +1 -0
  107. package/dist/Table.js +6 -0
  108. package/dist/Table.js.map +1 -0
  109. package/dist/Tabs.d.ts +20 -0
  110. package/dist/Tabs.d.ts.map +1 -0
  111. package/dist/Tabs.js +38 -0
  112. package/dist/Tabs.js.map +1 -0
  113. package/dist/Tag.d.ts +11 -0
  114. package/dist/Tag.d.ts.map +1 -0
  115. package/dist/Tag.js +11 -0
  116. package/dist/Tag.js.map +1 -0
  117. package/dist/Textarea.d.ts +15 -0
  118. package/dist/Textarea.d.ts.map +1 -0
  119. package/dist/Textarea.js +13 -0
  120. package/dist/Textarea.js.map +1 -0
  121. package/dist/Toast.d.ts +11 -0
  122. package/dist/Toast.d.ts.map +1 -0
  123. package/dist/Toast.js +31 -0
  124. package/dist/Toast.js.map +1 -0
  125. package/dist/Toggle.d.ts +22 -0
  126. package/dist/Toggle.d.ts.map +1 -0
  127. package/dist/Toggle.js +9 -0
  128. package/dist/Toggle.js.map +1 -0
  129. package/dist/generated/statusTaxonomy.js +1 -1
  130. package/dist/index.d.ts +32 -0
  131. package/dist/index.d.ts.map +1 -1
  132. package/dist/index.js +38 -0
  133. package/dist/index.js.map +1 -1
  134. package/package.json +2 -2
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Table.d.ts","sourceRoot":"","sources":["../src/Table.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAGvC;;;;;GAKG;AACH,MAAM,WAAW,MAAM,CAAC,CAAC;IACvB,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,SAAS,CAAC;IAClB,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,KAAK,SAAS,CAAC;IAC9B,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,wBAAgB,KAAK,CAAC,CAAC,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,EAAE;IACjF,OAAO,CAAC,EAAE,SAAS,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;IACrB,IAAI,EAAE,CAAC,EAAE,CAAC;IACV,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,CAAC,GAAG,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,KAAK,MAAM,GAAG,MAAM,CAAC;IACtD,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,+BA0BA"}
package/dist/Table.js ADDED
@@ -0,0 +1,6 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { cx } from "./cx.js";
3
+ export function Table({ caption, columns, rows, sticky, getRowKey, className }) {
4
+ return (_jsxs("table", { className: cx("gov-table", sticky && "gov-table--sticky", className), children: [caption && _jsx("caption", { children: caption }), _jsx("thead", { children: _jsx("tr", { children: columns.map((col) => (_jsx("th", { scope: "col", className: col.numeric ? "gov-table__num" : undefined, children: col.header }, col.key))) }) }), _jsx("tbody", { children: rows.map((row, i) => (_jsx("tr", { children: columns.map((col) => (_jsx("td", { className: col.numeric ? "gov-table__num" : undefined, children: col.render(row) }, col.key))) }, getRowKey(row, i)))) })] }));
5
+ }
6
+ //# sourceMappingURL=Table.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Table.js","sourceRoot":"","sources":["../src/Table.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,EAAE,EAAE,MAAM,SAAS,CAAC;AAe7B,MAAM,UAAU,KAAK,CAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,EAO9E;IACC,OAAO,CACL,iBAAO,SAAS,EAAE,EAAE,CAAC,WAAW,EAAE,MAAM,IAAI,mBAAmB,EAAE,SAAS,CAAC,aACxE,OAAO,IAAI,4BAAU,OAAO,GAAW,EACxC,0BACE,uBACG,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CACpB,aAAkB,KAAK,EAAC,KAAK,EAAC,SAAS,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,SAAS,YAChF,GAAG,CAAC,MAAM,IADJ,GAAG,CAAC,GAAG,CAEX,CACN,CAAC,GACC,GACC,EACR,0BACG,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,CACpB,uBACG,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CACpB,aAAkB,SAAS,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,SAAS,YACpE,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,IADT,GAAG,CAAC,GAAG,CAEX,CACN,CAAC,IALK,SAAS,CAAC,GAAG,EAAE,CAAC,CAAC,CAMrB,CACN,CAAC,GACI,IACF,CACT,CAAC;AACJ,CAAC"}
package/dist/Tabs.d.ts ADDED
@@ -0,0 +1,20 @@
1
+ import { type ReactNode } from "react";
2
+ /**
3
+ * Tabs (components/tabs.md) — switch between parallel views of one subject. Implements the WAI-ARIA
4
+ * tabs pattern: role tablist/tab/tabpanel, aria-selected, and a roving tabindex where the arrow
5
+ * keys move between tabs (Home/End to the ends) while Tab moves into the panel. The selected tab is
6
+ * marked by weight + an underline indicator, never colour alone (§4.1).
7
+ *
8
+ * Not for ordered steps (that is the Stepper) or page navigation (that is links).
9
+ */
10
+ export interface TabItem {
11
+ id: string;
12
+ label: ReactNode;
13
+ content: ReactNode;
14
+ }
15
+ export declare function Tabs({ tabs, defaultTab, className }: {
16
+ tabs: TabItem[];
17
+ defaultTab?: string;
18
+ className?: string;
19
+ }): import("react").JSX.Element;
20
+ //# sourceMappingURL=Tabs.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Tabs.d.ts","sourceRoot":"","sources":["../src/Tabs.tsx"],"names":[],"mappings":"AAEA,OAAO,EAA+C,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAGpF;;;;;;;GAOG;AACH,MAAM,WAAW,OAAO;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,SAAS,CAAC;IACjB,OAAO,EAAE,SAAS,CAAC;CACpB;AAED,wBAAgB,IAAI,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,SAAS,EAAE,EAAE;IAAE,IAAI,EAAE,OAAO,EAAE,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,+BAiEjH"}
package/dist/Tabs.js ADDED
@@ -0,0 +1,38 @@
1
+ "use client";
2
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
+ import { useId, useRef, useState } from "react";
4
+ import { cx } from "./cx.js";
5
+ export function Tabs({ tabs, defaultTab, className }) {
6
+ const baseId = useId();
7
+ const [active, setActive] = useState(defaultTab ?? tabs[0]?.id);
8
+ const tabRefs = useRef({});
9
+ const focusTab = (id) => {
10
+ setActive(id);
11
+ tabRefs.current[id]?.focus();
12
+ };
13
+ const onKeyDown = (event, index) => {
14
+ const last = tabs.length - 1;
15
+ let next = null;
16
+ if (event.key === "ArrowRight")
17
+ next = index === last ? 0 : index + 1;
18
+ else if (event.key === "ArrowLeft")
19
+ next = index === 0 ? last : index - 1;
20
+ else if (event.key === "Home")
21
+ next = 0;
22
+ else if (event.key === "End")
23
+ next = last;
24
+ if (next !== null) {
25
+ event.preventDefault();
26
+ focusTab(tabs[next].id);
27
+ }
28
+ };
29
+ return (_jsxs("div", { className: cx("gov-tabs", className), children: [_jsx("div", { className: "gov-tabs__list", role: "tablist", children: tabs.map((tab, i) => {
30
+ const selected = tab.id === active;
31
+ return (_jsx("button", { ref: (el) => {
32
+ tabRefs.current[tab.id] = el;
33
+ }, role: "tab", id: `${baseId}-tab-${tab.id}`, "aria-selected": selected, "aria-controls": `${baseId}-panel-${tab.id}`,
34
+ // Roving tabindex: only the active tab is in the tab order; arrows move within.
35
+ tabIndex: selected ? 0 : -1, className: "gov-tabs__tab", type: "button", onClick: () => setActive(tab.id), onKeyDown: (e) => onKeyDown(e, i), children: tab.label }, tab.id));
36
+ }) }), tabs.map((tab) => (_jsx("div", { role: "tabpanel", id: `${baseId}-panel-${tab.id}`, "aria-labelledby": `${baseId}-tab-${tab.id}`, hidden: tab.id !== active, tabIndex: 0, className: "gov-tabs__panel", children: tab.content }, tab.id)))] }));
37
+ }
38
+ //# sourceMappingURL=Tabs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Tabs.js","sourceRoot":"","sources":["../src/Tabs.tsx"],"names":[],"mappings":"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"}
package/dist/Tag.d.ts ADDED
@@ -0,0 +1,11 @@
1
+ import type { ReactNode } from "react";
2
+ /**
3
+ * Tag (components/tag.md) — a neutral, non-status categorical label. It deliberately never uses a
4
+ * status colour (that is the Badge's job, drawn from the status taxonomy) so the two are never
5
+ * confused. Not interactive.
6
+ */
7
+ export declare function Tag({ children, className }: {
8
+ children: ReactNode;
9
+ className?: string;
10
+ }): import("react").JSX.Element;
11
+ //# sourceMappingURL=Tag.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Tag.d.ts","sourceRoot":"","sources":["../src/Tag.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAGvC;;;;GAIG;AACH,wBAAgB,GAAG,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAE;IAAE,QAAQ,EAAE,SAAS,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,+BAEvF"}
package/dist/Tag.js ADDED
@@ -0,0 +1,11 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { cx } from "./cx.js";
3
+ /**
4
+ * Tag (components/tag.md) — a neutral, non-status categorical label. It deliberately never uses a
5
+ * status colour (that is the Badge's job, drawn from the status taxonomy) so the two are never
6
+ * confused. Not interactive.
7
+ */
8
+ export function Tag({ children, className }) {
9
+ return _jsx("span", { className: cx("gov-tag", className), children: children });
10
+ }
11
+ //# sourceMappingURL=Tag.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Tag.js","sourceRoot":"","sources":["../src/Tag.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,EAAE,EAAE,MAAM,SAAS,CAAC;AAE7B;;;;GAIG;AACH,MAAM,UAAU,GAAG,CAAC,EAAE,QAAQ,EAAE,SAAS,EAA+C;IACtF,OAAO,eAAM,SAAS,EAAE,EAAE,CAAC,SAAS,EAAE,SAAS,CAAC,YAAG,QAAQ,GAAQ,CAAC;AACtE,CAAC"}
@@ -0,0 +1,15 @@
1
+ import { type TextareaHTMLAttributes, type ReactNode } from "react";
2
+ /**
3
+ * Textarea (components/textarea.md) — multi-line free text. Same accessibility contract as
4
+ * TextInput: bound label, aria-describedby joining hint then error, aria-invalid on error, a stable
5
+ * id, and the value NEVER cleared on error (§7.1). Devanagari input is never blocked (§5.3).
6
+ */
7
+ interface TextareaProps extends Omit<TextareaHTMLAttributes<HTMLTextAreaElement>, "id"> {
8
+ label: ReactNode;
9
+ id?: string;
10
+ hint?: ReactNode;
11
+ error?: ReactNode;
12
+ }
13
+ export declare function Textarea({ label, id, hint, error, className, ...rest }: TextareaProps): import("react").JSX.Element;
14
+ export {};
15
+ //# sourceMappingURL=Textarea.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Textarea.d.ts","sourceRoot":"","sources":["../src/Textarea.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAS,KAAK,sBAAsB,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAG3E;;;;GAIG;AACH,UAAU,aAAc,SAAQ,IAAI,CAAC,sBAAsB,CAAC,mBAAmB,CAAC,EAAE,IAAI,CAAC;IACrF,KAAK,EAAE,SAAS,CAAC;IACjB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,KAAK,CAAC,EAAE,SAAS,CAAC;CACnB;AAED,wBAAgB,QAAQ,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,IAAI,EAAE,EAAE,aAAa,+BAkCrF"}
@@ -0,0 +1,13 @@
1
+ "use client";
2
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
+ import { useId } from "react";
4
+ import { cx } from "./cx.js";
5
+ export function Textarea({ label, id, hint, error, className, ...rest }) {
6
+ const generatedId = useId();
7
+ const fieldId = id ?? generatedId;
8
+ const hintId = hint ? `${fieldId}-hint` : undefined;
9
+ const errorId = error ? `${fieldId}-error` : undefined;
10
+ const describedBy = [hintId, errorId].filter(Boolean).join(" ") || undefined;
11
+ return (_jsxs("div", { className: cx("gov-field", error ? "gov-field--error" : undefined), children: [_jsx("label", { className: "gov-field__label", htmlFor: fieldId, children: label }), hint && (_jsx("span", { className: "gov-field__hint", id: hintId, children: hint })), _jsx("textarea", { id: fieldId, className: cx("gov-textarea", className), "aria-describedby": describedBy, "aria-invalid": error ? true : undefined, ...rest }), error && (_jsxs("span", { className: "gov-field__error", id: errorId, children: [_jsx("svg", { className: "gov-field__error-icon", viewBox: "0 0 24 24", "aria-hidden": "true", fill: "currentColor", children: _jsx("path", { d: "M12 2a10 10 0 100 20 10 10 0 000-20zm-1 5h2v6h-2V7zm0 8h2v2h-2v-2z" }) }), error] }))] }));
12
+ }
13
+ //# sourceMappingURL=Textarea.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Textarea.js","sourceRoot":"","sources":["../src/Textarea.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,OAAO,EAAE,KAAK,EAA+C,MAAM,OAAO,CAAC;AAC3E,OAAO,EAAE,EAAE,EAAE,MAAM,SAAS,CAAC;AAc7B,MAAM,UAAU,QAAQ,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,IAAI,EAAiB;IACpF,MAAM,WAAW,GAAG,KAAK,EAAE,CAAC;IAC5B,MAAM,OAAO,GAAG,EAAE,IAAI,WAAW,CAAC;IAClC,MAAM,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC,GAAG,OAAO,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;IACpD,MAAM,OAAO,GAAG,KAAK,CAAC,CAAC,CAAC,GAAG,OAAO,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;IACvD,MAAM,WAAW,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,SAAS,CAAC;IAE7E,OAAO,CACL,eAAK,SAAS,EAAE,EAAE,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,SAAS,CAAC,aACrE,gBAAO,SAAS,EAAC,kBAAkB,EAAC,OAAO,EAAE,OAAO,YACjD,KAAK,GACA,EACP,IAAI,IAAI,CACP,eAAM,SAAS,EAAC,iBAAiB,EAAC,EAAE,EAAE,MAAM,YACzC,IAAI,GACA,CACR,EACD,mBACE,EAAE,EAAE,OAAO,EACX,SAAS,EAAE,EAAE,CAAC,cAAc,EAAE,SAAS,CAAC,sBACtB,WAAW,kBACf,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,KAClC,IAAI,GACR,EACD,KAAK,IAAI,CACR,gBAAM,SAAS,EAAC,kBAAkB,EAAC,EAAE,EAAE,OAAO,aAC5C,cAAK,SAAS,EAAC,uBAAuB,EAAC,OAAO,EAAC,WAAW,iBAAa,MAAM,EAAC,IAAI,EAAC,cAAc,YAC/F,eAAM,CAAC,EAAC,oEAAoE,GAAG,GAC3E,EACL,KAAK,IACD,CACR,IACG,CACP,CAAC;AACJ,CAAC"}
@@ -0,0 +1,11 @@
1
+ import { type ReactNode } from "react";
2
+ interface ToastContextValue {
3
+ /** Raise a transient confirmation. Never pass anything the user must keep. */
4
+ toast: (message: ReactNode, variant?: "success" | "info") => void;
5
+ }
6
+ export declare function ToastProvider({ children }: {
7
+ children: ReactNode;
8
+ }): import("react").JSX.Element;
9
+ export declare function useToast(): ToastContextValue;
10
+ export {};
11
+ //# sourceMappingURL=Toast.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Toast.d.ts","sourceRoot":"","sources":["../src/Toast.tsx"],"names":[],"mappings":"AAEA,OAAO,EAA+D,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAepG,UAAU,iBAAiB;IACzB,8EAA8E;IAC9E,KAAK,EAAE,CAAC,OAAO,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,SAAS,GAAG,MAAM,KAAK,IAAI,CAAC;CACnE;AAKD,wBAAgB,aAAa,CAAC,EAAE,QAAQ,EAAE,EAAE;IAAE,QAAQ,EAAE,SAAS,CAAA;CAAE,+BAyBlE;AAgBD,wBAAgB,QAAQ,IAAI,iBAAiB,CAI5C"}
package/dist/Toast.js ADDED
@@ -0,0 +1,31 @@
1
+ "use client";
2
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
+ import { createContext, useCallback, useContext, useEffect, useState } from "react";
4
+ const ToastContext = createContext(null);
5
+ const DISMISS_MS = 4000;
6
+ export function ToastProvider({ children }) {
7
+ const [toasts, setToasts] = useState([]);
8
+ // A monotonic counter would use Date.now(); keep a simple incrementing id in state instead.
9
+ const [nextId, setNextId] = useState(1);
10
+ const toast = useCallback((message, variant = "success") => {
11
+ setNextId((id) => {
12
+ setToasts((current) => [...current, { id, variant, message }]);
13
+ return id + 1;
14
+ });
15
+ }, []);
16
+ return (_jsxs(ToastContext.Provider, { value: { toast }, children: [children, _jsx("div", { className: "gov-toast-region", role: "status", "aria-live": "polite", children: toasts.map((t) => (_jsx(ToastItem, { toast: t, onDone: () => setToasts((c) => c.filter((x) => x.id !== t.id)) }, t.id))) })] }));
17
+ }
18
+ function ToastItem({ toast, onDone }) {
19
+ useEffect(() => {
20
+ const timer = setTimeout(onDone, DISMISS_MS);
21
+ return () => clearTimeout(timer);
22
+ }, [onDone]);
23
+ return (_jsxs("div", { className: `gov-toast gov-toast--${toast.variant}`, children: [_jsx("span", { "aria-hidden": "true", children: toast.variant === "success" ? "✓" : "ℹ" }), toast.message] }));
24
+ }
25
+ export function useToast() {
26
+ const value = useContext(ToastContext);
27
+ if (!value)
28
+ throw new Error("useToast must be used within a <ToastProvider>.");
29
+ return value;
30
+ }
31
+ //# sourceMappingURL=Toast.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Toast.js","sourceRoot":"","sources":["../src/Toast.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,UAAU,EAAE,SAAS,EAAE,QAAQ,EAAkB,MAAM,OAAO,CAAC;AAoBpG,MAAM,YAAY,GAAG,aAAa,CAA2B,IAAI,CAAC,CAAC;AACnE,MAAM,UAAU,GAAG,IAAI,CAAC;AAExB,MAAM,UAAU,aAAa,CAAC,EAAE,QAAQ,EAA2B;IACjE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAiB,EAAE,CAAC,CAAC;IACzD,4FAA4F;IAC5F,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IAExC,MAAM,KAAK,GAAG,WAAW,CACvB,CAAC,OAAkB,EAAE,UAA8B,SAAS,EAAE,EAAE;QAC9D,SAAS,CAAC,CAAC,EAAE,EAAE,EAAE;YACf,SAAS,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,GAAG,OAAO,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC;YAC/D,OAAO,EAAE,GAAG,CAAC,CAAC;QAChB,CAAC,CAAC,CAAC;IACL,CAAC,EACD,EAAE,CACH,CAAC;IAEF,OAAO,CACL,MAAC,YAAY,CAAC,QAAQ,IAAC,KAAK,EAAE,EAAE,KAAK,EAAE,aACpC,QAAQ,EACT,cAAK,SAAS,EAAC,kBAAkB,EAAC,IAAI,EAAC,QAAQ,eAAW,QAAQ,YAC/D,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CACjB,KAAC,SAAS,IAAY,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,IAA9E,CAAC,CAAC,EAAE,CAA8E,CACnG,CAAC,GACE,IACgB,CACzB,CAAC;AACJ,CAAC;AAED,SAAS,SAAS,CAAC,EAAE,KAAK,EAAE,MAAM,EAA+C;IAC/E,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,KAAK,GAAG,UAAU,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;QAC7C,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;IACnC,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;IAEb,OAAO,CACL,eAAK,SAAS,EAAE,wBAAwB,KAAK,CAAC,OAAO,EAAE,aACrD,8BAAkB,MAAM,YAAE,KAAK,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,GAAQ,EACxE,KAAK,CAAC,OAAO,IACV,CACP,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,QAAQ;IACtB,MAAM,KAAK,GAAG,UAAU,CAAC,YAAY,CAAC,CAAC;IACvC,IAAI,CAAC,KAAK;QAAE,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAC;IAC/E,OAAO,KAAK,CAAC;AACf,CAAC"}
@@ -0,0 +1,22 @@
1
+ import { type ReactNode } from "react";
2
+ /**
3
+ * Toggle switch (components/toggle.md) — a single on/off setting with IMMEDIATE effect (no separate
4
+ * save). A declaration or a form-submitted choice is a Checkbox, never a toggle (§7.1). The state is
5
+ * conveyed by more than colour — position plus an on/off word — never colour alone (§4.1). Renders
6
+ * role="switch" with aria-checked so the state is announced.
7
+ */
8
+ interface ToggleProps {
9
+ label: ReactNode;
10
+ checked: boolean;
11
+ onChange: (checked: boolean) => void;
12
+ /** On/off words shown beside the switch so state isn't carried by colour/position alone. */
13
+ stateLabels?: {
14
+ on: string;
15
+ off: string;
16
+ };
17
+ disabled?: boolean;
18
+ className?: string;
19
+ }
20
+ export declare function Toggle({ label, checked, onChange, stateLabels, disabled, className }: ToggleProps): import("react").JSX.Element;
21
+ export {};
22
+ //# sourceMappingURL=Toggle.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Toggle.d.ts","sourceRoot":"","sources":["../src/Toggle.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAS,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAG9C;;;;;GAKG;AACH,UAAU,WAAW;IACnB,KAAK,EAAE,SAAS,CAAC;IACjB,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;IACrC,4FAA4F;IAC5F,WAAW,CAAC,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,CAAC;IAC1C,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,wBAAgB,MAAM,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAE,WAAW,+BAyBjG"}
package/dist/Toggle.js ADDED
@@ -0,0 +1,9 @@
1
+ "use client";
2
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
+ import { useId } from "react";
4
+ import { cx } from "./cx.js";
5
+ export function Toggle({ label, checked, onChange, stateLabels, disabled, className }) {
6
+ const labelId = useId();
7
+ return (_jsxs("span", { className: cx("gov-toggle-field", className), style: { display: "inline-flex", alignItems: "center", gap: "var(--gov-space-3)" }, children: [_jsx("button", { type: "button", role: "switch", "aria-checked": checked, "aria-labelledby": labelId, disabled: disabled, className: "gov-toggle", onClick: () => onChange(!checked), children: _jsx("span", { className: "gov-toggle__track", "aria-hidden": "true", children: _jsx("span", { className: "gov-toggle__handle" }) }) }), _jsxs("span", { id: labelId, children: [label, stateLabels && (_jsxs("span", { className: "gov-text-secondary gov-text-small", children: [" \u2014 ", checked ? stateLabels.on : stateLabels.off] }))] })] }));
8
+ }
9
+ //# sourceMappingURL=Toggle.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Toggle.js","sourceRoot":"","sources":["../src/Toggle.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,OAAO,EAAE,KAAK,EAAkB,MAAM,OAAO,CAAC;AAC9C,OAAO,EAAE,EAAE,EAAE,MAAM,SAAS,CAAC;AAkB7B,MAAM,UAAU,MAAM,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,QAAQ,EAAE,SAAS,EAAe;IAChG,MAAM,OAAO,GAAG,KAAK,EAAE,CAAC;IACxB,OAAO,CACL,gBAAM,SAAS,EAAE,EAAE,CAAC,kBAAkB,EAAE,SAAS,CAAC,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,QAAQ,EAAE,GAAG,EAAE,oBAAoB,EAAE,aACpI,iBACE,IAAI,EAAC,QAAQ,EACb,IAAI,EAAC,QAAQ,kBACC,OAAO,qBACJ,OAAO,EACxB,QAAQ,EAAE,QAAQ,EAClB,SAAS,EAAC,YAAY,EACtB,OAAO,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,YAEjC,eAAM,SAAS,EAAC,mBAAmB,iBAAa,MAAM,YACpD,eAAM,SAAS,EAAC,oBAAoB,GAAG,GAClC,GACA,EACT,gBAAM,EAAE,EAAE,OAAO,aACd,KAAK,EACL,WAAW,IAAI,CACd,gBAAM,SAAS,EAAC,mCAAmC,yBAAK,OAAO,CAAC,CAAC,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,GAAG,IAAQ,CAC3G,IACI,IACF,CACR,CAAC;AACJ,CAAC"}
@@ -1,4 +1,4 @@
1
- // GENERATED from design-guidelines 0.2.0-dev (816565b5) — do not edit.
1
+ // GENERATED from design-guidelines 0.2.0-dev (43560eec) — do not edit.
2
2
  // Source: data/status-taxonomy.yaml (§7.3.2). Regenerate with build/generate.mjs.
3
3
  export const STATUS_TAXONOMY = {
4
4
  "draft": { label: "Draft", label_ne: "मस्यौदा", badge: "neutral", requiresAction: false },
package/dist/index.d.ts CHANGED
@@ -27,5 +27,37 @@ export { Stepper, type Step } from "./Stepper.js";
27
27
  export { LanguageSwitcher } from "./LanguageSwitcher.js";
28
28
  export { Emblem, Flag } from "./Emblem.js";
29
29
  export { Header } from "./Header.js";
30
+ export { SkipLink } from "./SkipLink.js";
31
+ export { BackLink } from "./BackLink.js";
32
+ export { Breadcrumb, type Crumb } from "./Breadcrumb.js";
33
+ export { Pagination } from "./Pagination.js";
34
+ export { Tabs, type TabItem } from "./Tabs.js";
35
+ export { Footer } from "./Footer.js";
36
+ export { Card } from "./Card.js";
37
+ export { IconButton } from "./IconButton.js";
38
+ export { Modal } from "./Modal.js";
39
+ export { ConfirmationDialog } from "./ConfirmationDialog.js";
40
+ export { ToastProvider, useToast } from "./Toast.js";
41
+ export { Toggle } from "./Toggle.js";
42
+ export { Textarea } from "./Textarea.js";
43
+ export { CharacterCount } from "./CharacterCount.js";
44
+ export { SummaryList, type SummaryRow } from "./SummaryList.js";
45
+ export { Tag } from "./Tag.js";
46
+ export { Table, type Column } from "./Table.js";
47
+ export { EmptyState } from "./EmptyState.js";
48
+ export { LoadingState, Skeleton } from "./LoadingState.js";
49
+ export { ProgressBar } from "./ProgressBar.js";
50
+ export { Accordion, type AccordionSection } from "./Accordion.js";
51
+ export { PasswordInput } from "./PasswordInput.js";
52
+ export { OtpInput } from "./OtpInput.js";
53
+ export { AmountInput } from "./AmountInput.js";
54
+ export { SearchBox } from "./SearchBox.js";
55
+ export { FileUpload } from "./FileUpload.js";
56
+ export { AddressBlock, type AddressValue } from "./AddressBlock.js";
57
+ export { MaskedValue } from "./MaskedValue.js";
58
+ export { QrCode } from "./QrCode.js";
59
+ export { CookieBanner } from "./CookieBanner.js";
60
+ export { OfflineBanner } from "./OfflineBanner.js";
61
+ export { SessionTimeoutWarning } from "./SessionTimeoutWarning.js";
30
62
  export { STATUS_TAXONOMY, type StatusId, type StatusEntry, type BadgeVariant } from "./generated/statusTaxonomy.js";
31
63
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAKH,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAC7D,YAAY,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACzF,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC7D,YAAY,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAEhF,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC5D,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,UAAU,EAAE,KAAK,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC/D,OAAO,EAAE,MAAM,EAAE,KAAK,YAAY,EAAE,MAAM,aAAa,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,KAAK,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAClE,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACnC,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACnC,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,OAAO,EAAE,KAAK,IAAI,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAErC,OAAO,EAAE,eAAe,EAAE,KAAK,QAAQ,EAAE,KAAK,WAAW,EAAE,KAAK,YAAY,EAAE,MAAM,+BAA+B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -28,5 +28,43 @@ export { Stepper } from "./Stepper.js";
28
28
  export { LanguageSwitcher } from "./LanguageSwitcher.js";
29
29
  export { Emblem, Flag } from "./Emblem.js";
30
30
  export { Header } from "./Header.js";
31
+ // Navigation
32
+ export { SkipLink } from "./SkipLink.js";
33
+ export { BackLink } from "./BackLink.js";
34
+ export { Breadcrumb } from "./Breadcrumb.js";
35
+ export { Pagination } from "./Pagination.js";
36
+ export { Tabs } from "./Tabs.js";
37
+ export { Footer } from "./Footer.js";
38
+ // Core / overlays
39
+ export { Card } from "./Card.js";
40
+ export { IconButton } from "./IconButton.js";
41
+ export { Modal } from "./Modal.js";
42
+ export { ConfirmationDialog } from "./ConfirmationDialog.js";
43
+ export { ToastProvider, useToast } from "./Toast.js";
44
+ // Forms / data
45
+ export { Toggle } from "./Toggle.js";
46
+ export { Textarea } from "./Textarea.js";
47
+ export { CharacterCount } from "./CharacterCount.js";
48
+ export { SummaryList } from "./SummaryList.js";
49
+ export { Tag } from "./Tag.js";
50
+ // Data display
51
+ export { Table } from "./Table.js";
52
+ export { EmptyState } from "./EmptyState.js";
53
+ export { LoadingState, Skeleton } from "./LoadingState.js";
54
+ export { ProgressBar } from "./ProgressBar.js";
55
+ export { Accordion } from "./Accordion.js";
56
+ // Forms (batch B)
57
+ export { PasswordInput } from "./PasswordInput.js";
58
+ export { OtpInput } from "./OtpInput.js";
59
+ export { AmountInput } from "./AmountInput.js";
60
+ export { SearchBox } from "./SearchBox.js";
61
+ export { FileUpload } from "./FileUpload.js";
62
+ export { AddressBlock } from "./AddressBlock.js";
63
+ // Government / trust
64
+ export { MaskedValue } from "./MaskedValue.js";
65
+ export { QrCode } from "./QrCode.js";
66
+ export { CookieBanner } from "./CookieBanner.js";
67
+ export { OfflineBanner } from "./OfflineBanner.js";
68
+ export { SessionTimeoutWarning } from "./SessionTimeoutWarning.js";
31
69
  export { STATUS_TAXONOMY } from "./generated/statusTaxonomy.js";
32
70
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,gGAAgG;AAChG,kGAAkG;AAClG,0FAA0F;AAC1F,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAE7D,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAG7D,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC5D,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,UAAU,EAAoB,MAAM,iBAAiB,CAAC;AAC/D,OAAO,EAAE,MAAM,EAAqB,MAAM,aAAa,CAAC;AACxD,OAAO,EAAE,YAAY,EAAmB,MAAM,mBAAmB,CAAC;AAClE,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACnC,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACnC,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,OAAO,EAAa,MAAM,cAAc,CAAC;AAClD,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAErC,OAAO,EAAE,eAAe,EAAsD,MAAM,+BAA+B,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@govnepal/ui",
3
- "version": "0.2.1",
3
+ "version": "0.4.0",
4
4
  "description": "Civic Calm React components — the behavior layer (ARIA, keyboard, focus) over @govnepal/css.",
5
5
  "license": "MIT",
6
6
  "type": "module",
@@ -37,7 +37,7 @@
37
37
  "react-dom": ">=18"
38
38
  },
39
39
  "dependencies": {
40
- "@govnepal/css": "^0.2.0",
40
+ "@govnepal/css": "^0.4.0",
41
41
  "@govnepal/tokens": "^0.2.0"
42
42
  },
43
43
  "devDependencies": {