@torpor/ui 0.3.5 → 0.3.6

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 (225) hide show
  1. package/dist/metafile-esm.json +1 -1
  2. package/package.json +5 -2
  3. package/CHANGELOG.md +0 -344
  4. package/scripts/postbuild.ts +0 -127
  5. package/src/Accordion/Accordion.torp +0 -230
  6. package/src/Accordion/AccordionContent.torp +0 -46
  7. package/src/Accordion/AccordionHeader.torp +0 -45
  8. package/src/Accordion/AccordionItem.torp +0 -101
  9. package/src/Accordion/AccordionTrigger.torp +0 -70
  10. package/src/Accordion/AccordionTypes.ts +0 -36
  11. package/src/Accordion/index.ts +0 -7
  12. package/src/Breadcrumb/Breadcrumb.torp +0 -45
  13. package/src/Breadcrumb/BreadcrumbItem.torp +0 -30
  14. package/src/Breadcrumb/BreadcrumbSeparator.torp +0 -27
  15. package/src/Breadcrumb/index.ts +0 -5
  16. package/src/Calendar/Calendar.torp +0 -277
  17. package/src/Calendar/CalendarDay.torp +0 -78
  18. package/src/Calendar/CalendarTypes.ts +0 -22
  19. package/src/Calendar/index.ts +0 -4
  20. package/src/Contextual/Contextual.torp +0 -129
  21. package/src/Contextual/ContextualContent.torp +0 -112
  22. package/src/Contextual/ContextualTrigger.torp +0 -70
  23. package/src/Contextual/ContextualTypes.ts +0 -30
  24. package/src/Contextual/index.ts +0 -5
  25. package/src/Dialog/Dialog.torp +0 -136
  26. package/src/Dialog/DialogBody.torp +0 -44
  27. package/src/Dialog/DialogButton.torp +0 -66
  28. package/src/Dialog/DialogFooter.torp +0 -25
  29. package/src/Dialog/DialogHeader.torp +0 -45
  30. package/src/Dialog/DialogTypes.ts +0 -17
  31. package/src/Dialog/index.ts +0 -7
  32. package/src/Disclosure/Disclosure.torp +0 -82
  33. package/src/Disclosure/DisclosureContent.torp +0 -46
  34. package/src/Disclosure/DisclosureHeader.torp +0 -45
  35. package/src/Disclosure/DisclosureTrigger.torp +0 -47
  36. package/src/Disclosure/DisclosureTypes.ts +0 -13
  37. package/src/Disclosure/index.ts +0 -6
  38. package/src/Drawer/Drawer.torp +0 -127
  39. package/src/Drawer/DrawerContent.torp +0 -83
  40. package/src/Drawer/DrawerOverlay.torp +0 -42
  41. package/src/Drawer/DrawerTrigger.torp +0 -39
  42. package/src/Drawer/DrawerTypes.ts +0 -24
  43. package/src/Drawer/index.ts +0 -6
  44. package/src/Form/CheckBox.torp +0 -94
  45. package/src/Form/Field.torp +0 -95
  46. package/src/Form/File.torp +0 -102
  47. package/src/Form/Form.torp +0 -147
  48. package/src/Form/FormTypes.ts +0 -35
  49. package/src/Form/Hidden.torp +0 -25
  50. package/src/Form/Input.torp +0 -112
  51. package/src/Form/Label.torp +0 -35
  52. package/src/Form/Message.torp +0 -39
  53. package/src/Form/Option.torp +0 -28
  54. package/src/Form/Select.torp +0 -101
  55. package/src/Form/StandardSchemaV1.ts +0 -70
  56. package/src/Form/TextArea.torp +0 -105
  57. package/src/Form/index.ts +0 -13
  58. package/src/Menu/Menu.torp +0 -174
  59. package/src/Menu/MenuButton.torp +0 -74
  60. package/src/Menu/MenuCheck.torp +0 -89
  61. package/src/Menu/MenuGroup.torp +0 -31
  62. package/src/Menu/MenuIndicator.torp +0 -40
  63. package/src/Menu/MenuPopout.torp +0 -83
  64. package/src/Menu/MenuPopoutContent.torp +0 -84
  65. package/src/Menu/MenuPopoutTrigger.torp +0 -128
  66. package/src/Menu/MenuRadio.torp +0 -103
  67. package/src/Menu/MenuRadioGroup.torp +0 -109
  68. package/src/Menu/MenuSeparator.torp +0 -26
  69. package/src/Menu/MenuTypes.ts +0 -60
  70. package/src/Menu/index.ts +0 -25
  71. package/src/MenuBar/MenuBar.torp +0 -162
  72. package/src/MenuBar/MenuBarItem.torp +0 -116
  73. package/src/MenuBar/MenuBarItemContent.torp +0 -119
  74. package/src/MenuBar/MenuBarItemTrigger.torp +0 -99
  75. package/src/MenuBar/MenuBarTypes.ts +0 -36
  76. package/src/MenuBar/index.ts +0 -6
  77. package/src/Modal/Modal.torp +0 -122
  78. package/src/Modal/ModalContent.torp +0 -81
  79. package/src/Modal/ModalOverlay.torp +0 -42
  80. package/src/Modal/ModalTrigger.torp +0 -54
  81. package/src/Modal/ModalTypes.ts +0 -22
  82. package/src/Modal/index.ts +0 -10
  83. package/src/Modal/showModal.ts +0 -19
  84. package/src/Modal/showPrompt.ts +0 -23
  85. package/src/NavMenu/NavMenu.torp +0 -190
  86. package/src/NavMenu/NavMenuButton.torp +0 -55
  87. package/src/NavMenu/NavMenuElement.torp +0 -55
  88. package/src/NavMenu/NavMenuGroup.torp +0 -41
  89. package/src/NavMenu/NavMenuGroupHeader.torp +0 -41
  90. package/src/NavMenu/NavMenuLink.torp +0 -60
  91. package/src/NavMenu/NavMenuPopout.torp +0 -89
  92. package/src/NavMenu/NavMenuPopoutButton.torp +0 -129
  93. package/src/NavMenu/NavMenuPopoutContent.torp +0 -92
  94. package/src/NavMenu/NavMenuSeparator.torp +0 -24
  95. package/src/NavMenu/NavMenuTypes.ts +0 -32
  96. package/src/NavMenu/index.ts +0 -23
  97. package/src/Notification/Notification.torp +0 -71
  98. package/src/Notification/NotificationClose.torp +0 -39
  99. package/src/Notification/NotificationContainer.torp +0 -26
  100. package/src/Notification/NotificationContent.torp +0 -25
  101. package/src/Notification/NotificationTypes.ts +0 -5
  102. package/src/Notification/index.ts +0 -13
  103. package/src/Notification/showNotification.ts +0 -30
  104. package/src/Popover/Popover.torp +0 -129
  105. package/src/Popover/PopoverContent.torp +0 -117
  106. package/src/Popover/PopoverTrigger.torp +0 -62
  107. package/src/Popover/PopoverTypes.ts +0 -30
  108. package/src/Popover/index.ts +0 -6
  109. package/src/Popover/showPopover.ts +0 -24
  110. package/src/Slider/Slider.torp +0 -84
  111. package/src/Slider/index.ts +0 -3
  112. package/src/TabGroup/TabContent.torp +0 -49
  113. package/src/TabGroup/TabGroup.torp +0 -250
  114. package/src/TabGroup/TabGroupTypes.ts +0 -44
  115. package/src/TabGroup/TabHeader.torp +0 -81
  116. package/src/TabGroup/TabList.torp +0 -61
  117. package/src/TabGroup/TabTrigger.torp +0 -76
  118. package/src/TabGroup/index.ts +0 -7
  119. package/src/ambient.d.ts +0 -7
  120. package/src/icons/ArrowDown.torp +0 -18
  121. package/src/icons/ArrowLeft.torp +0 -18
  122. package/src/icons/ArrowRight.torp +0 -18
  123. package/src/icons/ArrowUp.torp +0 -18
  124. package/src/icons/Bars.torp +0 -20
  125. package/src/icons/Check.torp +0 -18
  126. package/src/icons/ChevronDown.torp +0 -18
  127. package/src/icons/ChevronLeft.torp +0 -18
  128. package/src/icons/ChevronRight.torp +0 -18
  129. package/src/icons/ChevronUp.torp +0 -18
  130. package/src/icons/Cross.torp +0 -19
  131. package/src/icons/IconTypes.ts +0 -10
  132. package/src/icons/Loading.torp +0 -19
  133. package/src/icons/Minus.torp +0 -18
  134. package/src/icons/Plus.torp +0 -19
  135. package/src/icons/index.ts +0 -31
  136. package/src/motion/fade.ts +0 -16
  137. package/src/motion/grow.ts +0 -23
  138. package/src/motion/index.ts +0 -6
  139. package/src/motion/measure.ts +0 -28
  140. package/src/motion/slide.ts +0 -45
  141. package/src/mount/clickPopover.ts +0 -51
  142. package/src/mount/contextPopover.ts +0 -51
  143. package/src/mount/disableScroll.ts +0 -28
  144. package/src/mount/hoverPopover.ts +0 -58
  145. package/src/mount/hoverTrigger.ts +0 -59
  146. package/src/mount/trapFocus.ts +0 -58
  147. package/src/utils/dateUtils.ts +0 -244
  148. package/src/utils/documentEvents.ts +0 -17
  149. package/src/utils/getId.ts +0 -6
  150. package/src/utils/getScrollParent.ts +0 -22
  151. package/src/utils/setContextPosition.ts +0 -31
  152. package/src/utils/setPopoverPosition.ts +0 -142
  153. package/test/Accordion/accessibility.test.ts +0 -59
  154. package/test/Accordion/components/AccordionAccessibility.torp +0 -44
  155. package/test/Accordion/components/AccordionKeyboard.torp +0 -32
  156. package/test/Accordion/components/AccordionList.torp +0 -23
  157. package/test/Accordion/components/AccordionMultiple.torp +0 -32
  158. package/test/Accordion/components/AccordionSingle.torp +0 -32
  159. package/test/Accordion/for-items.test.ts +0 -52
  160. package/test/Accordion/keyboard.test.ts +0 -64
  161. package/test/Accordion/multiple-item-toggle.test.ts +0 -32
  162. package/test/Accordion/multiple-item-value.test.ts +0 -17
  163. package/test/Accordion/single-item-toggle.test.ts +0 -31
  164. package/test/Accordion/single-item-value.test.ts +0 -17
  165. package/test/Breadcrumb/accessibility.test.ts +0 -29
  166. package/test/Breadcrumb/basic.test.ts +0 -17
  167. package/test/Breadcrumb/components/BreadcrumbTest.torp +0 -15
  168. package/test/Calendar/components/CalendarTest.torp +0 -9
  169. package/test/Calendar/default.test.ts +0 -18
  170. package/test/Dialog/accessibility-alert.test.ts +0 -40
  171. package/test/Dialog/accessibility-modal.test.ts +0 -52
  172. package/test/Dialog/components/DialogAccessibility.torp +0 -25
  173. package/test/Dialog/components/DialogFunction.torp +0 -36
  174. package/test/Dialog/components/DialogModal.torp +0 -30
  175. package/test/Dialog/components/DialogVariable.torp +0 -33
  176. package/test/Dialog/function.test.ts +0 -26
  177. package/test/Dialog/variable.test.ts +0 -27
  178. package/test/Disclosure/accessibility.test.ts +0 -31
  179. package/test/Disclosure/components/DisclosureTest.torp +0 -17
  180. package/test/Disclosure/default.test.ts +0 -15
  181. package/test/Disclosure/toggle.test.ts +0 -20
  182. package/test/Form/components/FieldTest.torp +0 -25
  183. package/test/Form/components/FormTest.torp +0 -31
  184. package/test/Form/components/InputTest.torp +0 -9
  185. package/test/Form/field.test.ts +0 -34
  186. package/test/Form/form.test.ts +0 -34
  187. package/test/Form/input.test.ts +0 -19
  188. package/test/Menu/accessibility.test.ts +0 -83
  189. package/test/Menu/basic.test.ts +0 -58
  190. package/test/Menu/components/MenuAccessibility.torp +0 -59
  191. package/test/Menu/components/MenuBasic.torp +0 -58
  192. package/test/MenuBar/accessibility.test.ts +0 -87
  193. package/test/MenuBar/basic.test.ts +0 -22
  194. package/test/MenuBar/components/MenuBarAccessibility.torp +0 -34
  195. package/test/MenuBar/components/MenuBarBasic.torp +0 -25
  196. package/test/NavMenu/accessibility.test.ts +0 -97
  197. package/test/NavMenu/basic.test.ts +0 -22
  198. package/test/NavMenu/components/NavMenuAccessibility.torp +0 -35
  199. package/test/NavMenu/components/NavMenuBasic.torp +0 -28
  200. package/test/Notification/accessibility.test.ts +0 -21
  201. package/test/Notification/components/CustomNotification.torp +0 -14
  202. package/test/Notification/components/NotificationAccessibility.torp +0 -14
  203. package/test/Notification/components/NotificationFunction.torp +0 -17
  204. package/test/Notification/components/NotificationVariable.torp +0 -22
  205. package/test/Notification/function.test.ts +0 -25
  206. package/test/Notification/variable.test.ts +0 -25
  207. package/test/Popover/components/CustomDialog.torp +0 -25
  208. package/test/Popover/components/PopoverFunction.torp +0 -37
  209. package/test/Popover/components/PopoverTrigger.torp +0 -36
  210. package/test/Popover/components/PopoverVariable.torp +0 -40
  211. package/test/Popover/function.test.ts +0 -21
  212. package/test/Popover/trigger.test.ts +0 -27
  213. package/test/Popover/variable.test.ts +0 -27
  214. package/test/TabGroup/accessibility.test.ts +0 -67
  215. package/test/TabGroup/components/TabGroupAccessibility.torp +0 -28
  216. package/test/TabGroup/components/TabGroupKeyboard.torp +0 -28
  217. package/test/TabGroup/components/TabGroupList.torp +0 -26
  218. package/test/TabGroup/components/TabGroupTrigger.torp +0 -28
  219. package/test/TabGroup/for-items.test.ts +0 -52
  220. package/test/TabGroup/item-trigger.test.ts +0 -33
  221. package/test/TabGroup/item-value.test.ts +0 -17
  222. package/test/TabGroup/keyboard.test.ts +0 -72
  223. package/tsconfig.json +0 -4
  224. package/tsup.config.ts +0 -37
  225. package/vitest.config.ts +0 -12
@@ -1,28 +0,0 @@
1
- import {
2
- TabGroup,
3
- TabList,
4
- TabHeader,
5
- TabTrigger,
6
- TabContent,
7
- } from "../../../src/TabGroup/index";
8
-
9
- export default function TabGroupKeyboard() {
10
- @render {
11
- <TabGroup value={$props?.value}>
12
- <TabList>
13
- <TabHeader as="h4">
14
- <TabTrigger>Header 1</TabTrigger>
15
- </TabHeader>
16
- <TabHeader as="h4">
17
- <TabTrigger>Header 2</TabTrigger>
18
- </TabHeader>
19
- <TabHeader as="h4">
20
- <TabTrigger>Header 3</TabTrigger>
21
- </TabHeader>
22
- </TabList>
23
- <TabContent>Content 1</TabContent>
24
- <TabContent>Content 2</TabContent>
25
- <TabContent>Content 3</TabContent>
26
- </TabGroup>
27
- }
28
- }
@@ -1,26 +0,0 @@
1
- import {
2
- TabGroup,
3
- TabList,
4
- TabHeader,
5
- TabTrigger,
6
- TabContent,
7
- } from "../../../src/TabGroup/index";
8
-
9
- export default function TabGroupList() {
10
- @render {
11
- <TabGroup value={$props?.value}>
12
- <TabList>
13
- @for (let item of $props.items) {
14
- @key = item.id
15
- <TabHeader as="h4">
16
- <TabTrigger>{item.header}</TabTrigger>
17
- </TabHeader>
18
- }
19
- </TabList>
20
- @for (let item of $props.items) {
21
- @key = item.id
22
- <TabContent>{item.text}</TabContent>
23
- }
24
- </TabGroup>
25
- }
26
- }
@@ -1,28 +0,0 @@
1
- import {
2
- TabGroup,
3
- TabList,
4
- TabHeader,
5
- TabTrigger,
6
- TabContent,
7
- } from "../../../src/TabGroup/index";
8
-
9
- export default function TabGroupTrigger() {
10
- @render {
11
- <TabGroup value={$props?.value}>
12
- <TabList>
13
- <TabHeader as="h4">
14
- <TabTrigger>Header 1</TabTrigger>
15
- </TabHeader>
16
- <TabHeader as="h4">
17
- <TabTrigger>Header 2</TabTrigger>
18
- </TabHeader>
19
- <TabHeader as="h4">
20
- <TabTrigger>Header 3</TabTrigger>
21
- </TabHeader>
22
- </TabList>
23
- <TabContent>Content 1</TabContent>
24
- <TabContent>Content 2</TabContent>
25
- <TabContent>Content 3</TabContent>
26
- </TabGroup>
27
- }
28
- }
@@ -1,52 +0,0 @@
1
- import { getByText, queryByText } from "@testing-library/dom";
2
- import "@testing-library/jest-dom/vitest";
3
- import userEvent from "@testing-library/user-event";
4
- import { $watch, mount } from "@torpor/view";
5
- import { describe, expect, it } from "vitest";
6
- import TabGroupList from "./components/TabGroupList.torp";
7
-
8
- describe("TabGroup", () => {
9
- it("Items in a for loop", async () => {
10
- let $state = $watch({
11
- value: "1",
12
- items: [
13
- { id: 0, header: "Item 1", text: "Content 1" },
14
- { id: 1, header: "Item 2", text: "Content 2" },
15
- { id: 2, header: "Item 3", text: "Content 3" },
16
- ],
17
- });
18
-
19
- const container = document.createElement("div");
20
- document.body.appendChild(container);
21
- mount(container, TabGroupList, $state);
22
-
23
- expect(queryByText(container, "Content 1")).not.toBeInTheDocument();
24
- expect(queryByText(container, "Item 2")).toBeInTheDocument();
25
- expect(queryByText(container, "Content 2")).toBeInTheDocument();
26
- expect(queryByText(container, "Content 3")).not.toBeInTheDocument();
27
-
28
- $state.items.splice(1, 1);
29
-
30
- expect(queryByText(container, "Content 1")).not.toBeInTheDocument();
31
- expect(queryByText(container, "Item 2")).not.toBeInTheDocument();
32
- expect(queryByText(container, "Content 2")).not.toBeInTheDocument();
33
- expect(queryByText(container, "Content 3")).not.toBeInTheDocument();
34
-
35
- // Clicking header 1 should reveal body 1
36
- await userEvent.click(getByText(container, "Item 1"));
37
- expect(queryByText(container, "Content 1")).toBeInTheDocument();
38
-
39
- $state.items.push({ id: 3, header: "Item 4", text: "Content 4" });
40
-
41
- expect(queryByText(container, "Content 1")).toBeInTheDocument();
42
- expect(queryByText(container, "Content 2")).not.toBeInTheDocument();
43
- expect(queryByText(container, "Content 3")).not.toBeInTheDocument();
44
- expect(queryByText(container, "Item 4")).toBeInTheDocument();
45
- expect(queryByText(container, "Content 4")).not.toBeInTheDocument();
46
-
47
- // Clicking header 4 should reveal body 4
48
- await userEvent.click(getByText(container, "Item 4"));
49
- expect(queryByText(container, "Content 1")).not.toBeInTheDocument();
50
- expect(queryByText(container, "Content 4")).toBeInTheDocument();
51
- });
52
- });
@@ -1,33 +0,0 @@
1
- import { getByText, queryByText } from "@testing-library/dom";
2
- import "@testing-library/jest-dom/vitest";
3
- import userEvent from "@testing-library/user-event";
4
- import { mount } from "@torpor/view";
5
- import { describe, expect, it } from "vitest";
6
- import TabGroupTrigger from "./components/TabGroupTrigger.torp";
7
-
8
- describe("TabGroup", () => {
9
- it("Item trigger", async () => {
10
- const container = document.createElement("div");
11
- document.body.appendChild(container);
12
- mount(container, TabGroupTrigger);
13
-
14
- expect(queryByText(container, "Content 1")).toBeInTheDocument();
15
- expect(queryByText(container, "Content 2")).not.toBeInTheDocument();
16
- expect(queryByText(container, "Content 3")).not.toBeInTheDocument();
17
-
18
- // Clicking header 3 should hide body 1 and reveal body 3
19
- await userEvent.click(getByText(container, "Header 3"));
20
- expect(queryByText(container, "Content 1")).not.toBeInTheDocument();
21
- expect(queryByText(container, "Content 3")).toBeInTheDocument();
22
-
23
- // Clicking header 2 should hide body 3 and reveal body 2
24
- await userEvent.click(getByText(container, "Header 2"));
25
- expect(queryByText(container, "Content 3")).not.toBeInTheDocument();
26
- expect(queryByText(container, "Content 2")).toBeInTheDocument();
27
-
28
- // Clicking header 2 again should keep body 2
29
- await userEvent.click(getByText(container, "Header 2"));
30
- expect(queryByText(container, "Content 3")).not.toBeInTheDocument();
31
- expect(queryByText(container, "Content 2")).toBeInTheDocument();
32
- });
33
- });
@@ -1,17 +0,0 @@
1
- import { queryByText } from "@testing-library/dom";
2
- import "@testing-library/jest-dom/vitest";
3
- import { mount } from "@torpor/view";
4
- import { describe, expect, it } from "vitest";
5
- import TabGroupTrigger from "./components/TabGroupTrigger.torp";
6
-
7
- describe("TabGroup", () => {
8
- it("Item default value", async () => {
9
- const container = document.createElement("div");
10
- document.body.appendChild(container);
11
- mount(container, TabGroupTrigger, { value: "1" });
12
-
13
- expect(queryByText(container, "Content 1")).not.toBeInTheDocument();
14
- expect(queryByText(container, "Content 2")).toBeInTheDocument();
15
- expect(queryByText(container, "Content 3")).not.toBeInTheDocument();
16
- });
17
- });
@@ -1,72 +0,0 @@
1
- import { fireEvent, getByText, queryByText } from "@testing-library/dom";
2
- import "@testing-library/jest-dom/vitest";
3
- import { mount } from "@torpor/view";
4
- import { describe, expect, it } from "vitest";
5
- import TabGroupKeyboard from "./components/TabGroupKeyboard.torp";
6
-
7
- describe("TabGroup", () => {
8
- it("Keyboard", async () => {
9
- const container = document.createElement("div");
10
- document.body.appendChild(container);
11
- mount(container, TabGroupKeyboard, { value: "0" });
12
-
13
- // Tests from https://www.w3.org/WAI/ARIA/apg/patterns/tabs/
14
-
15
- // Enter or Space:
16
- // * When focus is on the tab header for a collapsed panel, expands
17
- // the associated panel. If the implementation allows only one panel
18
- // to be expanded, and if another panel is expanded, collapses that
19
- // panel
20
- // * When focus is on the tab header for an expanded panel, collapses
21
- // the panel if the implementation supports collapsing. Some
22
- // implementations require one panel to be expanded at all times and
23
- // allow only one panel to be expanded; so, they do not support a
24
- // collapse function
25
- // NOTE: I don't think we can test this
26
- // NOTE: TabGroup headers are buttons so this functionality should be baked in by default
27
- //screen.queryByText('Header 1').focus();
28
- //expect(screen.queryByText('Content 1')).not.toBeInTheDocument();
29
- //fireEvent(screen.getByText('Header 1'), { key: 'Space' });
30
- //expect(screen.queryByText('Content 1')).toBeInTheDocument();
31
- //fireEvent(screen.getByText('Header 1'), { key: 'Space' });
32
- //expect(screen.queryByText('Content 1')).not.toBeInTheDocument();
33
-
34
- // Tab: Moves focus to the next focusable element; all focusable
35
- // elements in the tab are included in the page Tab sequence
36
- // NOTE: I don't think we can test this
37
- //fireEvent(screen.getByText('Header 1'), { key: 'Tab' });
38
- //expect(document.activeElement).toBe(screen.queryByText('Header 2'));
39
-
40
- // Shift + Tab: Moves focus to the previous focusable element; all
41
- // focusable elements in the tab are included in the page Tab
42
- // sequence
43
- // NOTE: I don't think we can test this
44
- //fireEvent(screen.getByText('Header 2'), { key: 'Tab', shiftKey: true });
45
- //expect(document.activeElement).toBe(screen.queryByText('Header 1'));
46
-
47
- // Right Arrow: If focus is on a tab header, moves focus to the next tab
48
- // header. If focus is on the last tab header, either does nothing or
49
- // moves focus to the first tab header
50
- fireEvent(
51
- getByText(container, "Header 1"),
52
- new KeyboardEvent("keydown", { key: "ArrowRight" }),
53
- );
54
- expect(document.activeElement).toBe(queryByText(container, "Header 2"));
55
-
56
- // Left Arrow: If focus is on a tab header, moves focus to the previous
57
- // tab header. If focus is on the first tab header, either does nothing
58
- // or moves focus to the last tab header
59
- fireEvent(getByText(container, "Header 2"), new KeyboardEvent("keydown", { key: "ArrowLeft" }));
60
- expect(document.activeElement).toBe(queryByText(container, "Header 1"));
61
-
62
- // Home: When focus is on a tab header, moves focus to the first tab
63
- // header
64
- fireEvent(getByText(container, "Header 3"), new KeyboardEvent("keydown", { key: "Home" }));
65
- expect(document.activeElement).toBe(queryByText(container, "Header 1"));
66
-
67
- // End: When focus is on a tab header, moves focus to the last tab
68
- // header
69
- fireEvent(getByText(container, "Header 1"), new KeyboardEvent("keydown", { key: "End" }));
70
- expect(document.activeElement).toBe(queryByText(container, "Header 3"));
71
- });
72
- });
package/tsconfig.json DELETED
@@ -1,4 +0,0 @@
1
- {
2
- "extends": "../../tsconfig.json",
3
- "include": ["src"]
4
- }
package/tsup.config.ts DELETED
@@ -1,37 +0,0 @@
1
- import { type Options, defineConfig } from "tsup";
2
-
3
- type Config =
4
- | Options
5
- | Options[]
6
- | ((overrideOptions: Options) => Options | Options[] | Promise<Options | Options[]>);
7
-
8
- export default defineConfig({
9
- entry: [
10
- "src/Accordion/index.ts",
11
- "src/Breadcrumb/index.ts",
12
- "src/Calendar/index.ts",
13
- "src/Contextual/index.ts",
14
- "src/Dialog/index.ts",
15
- "src/Disclosure/index.ts",
16
- "src/Drawer/index.ts",
17
- "src/Form/index.ts",
18
- "src/Menu/index.ts",
19
- "src/MenuBar/index.ts",
20
- "src/Modal/index.ts",
21
- "src/NavMenu/index.ts",
22
- "src/Notification/index.ts",
23
- "src/Popover/index.ts",
24
- "src/TabGroup/index.ts",
25
- "src/icons/index.ts",
26
- "src/motion/index.ts",
27
- ],
28
- format: "esm",
29
- dts: { entry: ["src/motion/index.ts"] },
30
- clean: true,
31
- metafile: true,
32
- sourcemap: true,
33
- loader: {
34
- ".torp": "file",
35
- },
36
- onSuccess: "npm run build:fix",
37
- }) satisfies Config as Config;
package/vitest.config.ts DELETED
@@ -1,12 +0,0 @@
1
- import torpor from "@torpor/unplugin/vite";
2
- import { type ViteUserConfigFnObject, defineConfig } from "vitest/config";
3
-
4
- export default defineConfig(({ mode }) => ({
5
- plugins: [torpor()],
6
- resolve: {
7
- conditions: mode === "test" ? ["browser"] : [],
8
- },
9
- test: {
10
- environment: "jsdom",
11
- },
12
- })) satisfies ViteUserConfigFnObject as ViteUserConfigFnObject;