@torpor/ui 0.3.7 → 1.0.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 (346) hide show
  1. package/README.md +83 -7
  2. package/dist/Accordion/Accordion.torp +43 -165
  3. package/dist/Accordion/AccordionContent.torp +6 -6
  4. package/dist/Accordion/AccordionHeader.torp +7 -11
  5. package/dist/Accordion/AccordionItem.torp +24 -24
  6. package/dist/Accordion/AccordionTrigger.torp +17 -8
  7. package/dist/Accordion/AccordionTypes.ts +6 -6
  8. package/dist/Accordion/index.d.ts +23 -25
  9. package/dist/Accordion/index.js +6 -22
  10. package/dist/Breadcrumb/Breadcrumb.torp +12 -10
  11. package/dist/Breadcrumb/BreadcrumbItem.torp +6 -6
  12. package/dist/Breadcrumb/BreadcrumbList.torp +21 -0
  13. package/dist/Breadcrumb/BreadcrumbSeparator.torp +4 -4
  14. package/dist/Breadcrumb/index.d.ts +39 -15
  15. package/dist/Breadcrumb/index.js +5 -14
  16. package/dist/Calendar/Calendar.torp +163 -156
  17. package/dist/Calendar/CalendarDay.torp +91 -45
  18. package/dist/Calendar/CalendarDayHeader.torp +36 -0
  19. package/dist/Calendar/CalendarGrid.torp +104 -0
  20. package/dist/Calendar/CalendarGridHeader.torp +43 -0
  21. package/dist/Calendar/CalendarHeader.torp +48 -0
  22. package/dist/Calendar/CalendarHeaderTrigger.torp +54 -0
  23. package/dist/Calendar/CalendarTypes.ts +25 -4
  24. package/dist/Calendar/buildDays.ts +54 -0
  25. package/dist/Calendar/index.d.ts +191 -5
  26. package/dist/Calendar/index.js +8 -10
  27. package/dist/Carousel/Carousel.torp +180 -0
  28. package/dist/Carousel/CarouselIndicators.torp +65 -0
  29. package/dist/Carousel/CarouselNext.torp +43 -0
  30. package/dist/Carousel/CarouselPrevious.torp +44 -0
  31. package/dist/Carousel/CarouselSlide.torp +57 -0
  32. package/dist/Carousel/CarouselTypes.ts +28 -0
  33. package/dist/Carousel/index.d.ts +147 -0
  34. package/dist/Carousel/index.js +6 -0
  35. package/dist/Charts/BarChart.torp +70 -0
  36. package/dist/Charts/Chart.torp +120 -0
  37. package/dist/Charts/ChartBars.torp +78 -0
  38. package/dist/Charts/ChartColumns.torp +66 -0
  39. package/dist/Charts/ChartGrid.torp +54 -0
  40. package/dist/Charts/ChartLines.torp +60 -0
  41. package/dist/Charts/ChartTypes.ts +25 -0
  42. package/dist/Charts/ChartXAxis.torp +83 -0
  43. package/dist/Charts/ChartYAxis.torp +105 -0
  44. package/dist/Charts/ColumnChart.torp +70 -0
  45. package/dist/{Chart → Charts}/GridLines.torp +7 -4
  46. package/dist/Charts/LineChart.torp +73 -0
  47. package/dist/{Chart → Charts}/PieChart.torp +14 -20
  48. package/dist/{Chart → Charts}/ScatterChart.torp +45 -38
  49. package/dist/{Chart → Charts}/SparkLine.torp +16 -19
  50. package/dist/{Chart → Charts}/XAxis.torp +18 -12
  51. package/dist/{Chart → Charts}/YAxis.torp +15 -9
  52. package/dist/Charts/index.d.ts +469 -0
  53. package/dist/Charts/index.js +17 -0
  54. package/dist/ColorPicker/ColorPalette.torp +154 -0
  55. package/dist/ColorPicker/ColorPicker.torp +157 -0
  56. package/dist/ColorPicker/index.d.ts +85 -0
  57. package/dist/ColorPicker/index.js +3 -0
  58. package/dist/ComboBox/ComboBox.torp +205 -0
  59. package/dist/ComboBox/ComboBoxContent.torp +112 -0
  60. package/dist/ComboBox/ComboBoxInput.torp +145 -0
  61. package/dist/ComboBox/ComboBoxTrigger.torp +49 -0
  62. package/dist/ComboBox/ComboBoxTypes.ts +39 -0
  63. package/dist/ComboBox/index.d.ts +152 -0
  64. package/dist/ComboBox/index.js +6 -0
  65. package/dist/CommandPalette/CommandPalette.torp +220 -0
  66. package/dist/CommandPalette/CommandTypes.ts +14 -0
  67. package/dist/CommandPalette/index.d.ts +45 -0
  68. package/dist/CommandPalette/index.js +2 -0
  69. package/dist/Contextual/Contextual.torp +39 -52
  70. package/dist/Contextual/ContextualContent.torp +29 -73
  71. package/dist/Contextual/ContextualHover.torp +112 -0
  72. package/dist/Contextual/ContextualTrigger.torp +31 -42
  73. package/dist/Contextual/ContextualTypes.ts +5 -18
  74. package/dist/Contextual/index.d.ts +44 -27
  75. package/dist/Contextual/index.js +5 -14
  76. package/dist/DataGrid/DataGrid.torp +496 -0
  77. package/dist/DataGrid/DataGridTypes.ts +25 -0
  78. package/dist/DataGrid/index.d.ts +90 -0
  79. package/dist/DataGrid/index.js +3 -0
  80. package/dist/DataGrid/sortRows.ts +32 -0
  81. package/dist/DatePicker/DatePicker.torp +222 -0
  82. package/dist/DatePicker/DatePickerHeader.torp +20 -0
  83. package/dist/DatePicker/index.d.ts +55 -0
  84. package/dist/DatePicker/index.js +2 -0
  85. package/dist/DateRangePicker/DateRangePicker.torp +311 -0
  86. package/dist/DateRangePicker/DateRangePickerDay.torp +137 -0
  87. package/dist/DateRangePicker/DateRangePickerTypes.ts +21 -0
  88. package/dist/DateRangePicker/index.d.ts +76 -0
  89. package/dist/DateRangePicker/index.js +3 -0
  90. package/dist/Dialog/Dialog.torp +33 -30
  91. package/dist/Dialog/DialogBody.torp +5 -9
  92. package/dist/Dialog/DialogButton.torp +14 -11
  93. package/dist/Dialog/DialogFooter.torp +3 -7
  94. package/dist/Dialog/DialogHeader.torp +6 -10
  95. package/dist/Dialog/DialogTypes.ts +2 -2
  96. package/dist/Dialog/index.d.ts +28 -26
  97. package/dist/Dialog/index.js +6 -22
  98. package/dist/Disclosure/Disclosure.torp +18 -18
  99. package/dist/Disclosure/DisclosureContent.torp +5 -6
  100. package/dist/Disclosure/DisclosureHeader.torp +7 -11
  101. package/dist/Disclosure/DisclosureTrigger.torp +4 -5
  102. package/dist/Disclosure/DisclosureTypes.ts +1 -1
  103. package/dist/Disclosure/index.d.ts +14 -16
  104. package/dist/Disclosure/index.js +5 -18
  105. package/dist/Drawer/Drawer.torp +21 -51
  106. package/dist/Drawer/DrawerContent.torp +67 -13
  107. package/dist/Drawer/DrawerOverlay.torp +4 -4
  108. package/dist/Drawer/DrawerTrigger.torp +16 -4
  109. package/dist/Drawer/DrawerTypes.ts +4 -1
  110. package/dist/Drawer/index.d.ts +16 -20
  111. package/dist/Drawer/index.js +5 -18
  112. package/dist/FocusGroup/FocusGroup.torp +70 -0
  113. package/dist/FocusGroup/FocusGroupButton.torp +59 -0
  114. package/dist/FocusGroup/FocusGroupTypes.ts +14 -0
  115. package/dist/FocusGroup/index.d.ts +44 -0
  116. package/dist/FocusGroup/index.js +3 -0
  117. package/dist/Form/CheckBox.torp +28 -20
  118. package/dist/Form/Field.torp +17 -17
  119. package/dist/Form/File.torp +31 -22
  120. package/dist/Form/FileDrop.torp +187 -0
  121. package/dist/Form/Form.torp +24 -22
  122. package/dist/Form/FormTypes.ts +2 -0
  123. package/dist/Form/FormValues.torp +37 -0
  124. package/dist/Form/Hidden.torp +4 -12
  125. package/dist/Form/Input.torp +38 -32
  126. package/dist/Form/Label.torp +3 -3
  127. package/dist/Form/Message.torp +13 -5
  128. package/dist/Form/MessageSummary.torp +39 -0
  129. package/dist/Form/Option.torp +11 -7
  130. package/dist/Form/Select.torp +32 -28
  131. package/dist/Form/TextArea.torp +35 -31
  132. package/dist/Form/Toggle.torp +109 -0
  133. package/dist/Form/index.d.ts +198 -77
  134. package/dist/Form/index.js +16 -46
  135. package/dist/ListBox/ListBox.torp +374 -0
  136. package/dist/ListBox/ListBoxItem.torp +131 -0
  137. package/dist/ListBox/ListBoxSeparator.torp +29 -0
  138. package/dist/ListBox/ListBoxTypes.ts +41 -0
  139. package/dist/ListBox/LoadedListBoxItems.torp +41 -0
  140. package/dist/ListBox/index.d.ts +136 -0
  141. package/dist/ListBox/index.js +4 -0
  142. package/dist/MaskedInput/MaskedInput.torp +143 -0
  143. package/dist/MaskedInput/index.d.ts +52 -0
  144. package/dist/MaskedInput/index.js +2 -0
  145. package/dist/Menu/Menu.torp +90 -70
  146. package/dist/Menu/MenuButton.torp +17 -10
  147. package/dist/Menu/MenuCheck.torp +22 -18
  148. package/dist/Menu/MenuGroup.torp +4 -4
  149. package/dist/Menu/MenuIndicator.torp +5 -13
  150. package/dist/Menu/MenuPopout.torp +20 -50
  151. package/dist/Menu/MenuPopoutContent.torp +15 -66
  152. package/dist/Menu/MenuPopoutTrigger.torp +19 -100
  153. package/dist/Menu/MenuRadio.torp +25 -26
  154. package/dist/Menu/MenuRadioGroup.torp +25 -68
  155. package/dist/Menu/MenuSeparator.torp +3 -2
  156. package/dist/Menu/MenuTypes.ts +12 -21
  157. package/dist/Menu/index.d.ts +45 -51
  158. package/dist/Menu/index.js +12 -46
  159. package/dist/MenuBar/MenuBar.torp +31 -83
  160. package/dist/MenuBar/MenuBarItem.torp +34 -55
  161. package/dist/MenuBar/MenuBarItemContent.torp +15 -101
  162. package/dist/MenuBar/MenuBarItemTrigger.torp +20 -55
  163. package/dist/MenuBar/MenuBarTypes.ts +13 -12
  164. package/dist/MenuBar/index.d.ts +17 -19
  165. package/dist/MenuBar/index.js +5 -18
  166. package/dist/Modal/Modal.torp +28 -48
  167. package/dist/Modal/ModalContent.torp +21 -44
  168. package/dist/Modal/ModalOverlay.torp +4 -4
  169. package/dist/Modal/ModalTrigger.torp +16 -32
  170. package/dist/Modal/ModalTypes.ts +6 -17
  171. package/dist/Modal/index.d.ts +17 -29
  172. package/dist/Modal/index.js +29 -28
  173. package/dist/Modal/index.js.map +1 -1
  174. package/dist/Modal/showPrompt.ts +2 -2
  175. package/dist/NavMenu/NavMenu.torp +22 -104
  176. package/dist/NavMenu/NavMenuButton.torp +10 -8
  177. package/dist/NavMenu/NavMenuElement.torp +6 -7
  178. package/dist/NavMenu/NavMenuGroup.torp +5 -5
  179. package/dist/NavMenu/NavMenuGroupHeader.torp +5 -8
  180. package/dist/NavMenu/NavMenuLink.torp +7 -10
  181. package/dist/NavMenu/NavMenuPopout.torp +16 -61
  182. package/dist/NavMenu/NavMenuPopoutContent.torp +14 -73
  183. package/dist/NavMenu/NavMenuPopoutTrigger.torp +47 -0
  184. package/dist/NavMenu/NavMenuSeparator.torp +3 -6
  185. package/dist/NavMenu/NavMenuTypes.ts +6 -15
  186. package/dist/NavMenu/index.d.ts +55 -55
  187. package/dist/NavMenu/index.js +11 -42
  188. package/dist/Notification/Notification.torp +12 -24
  189. package/dist/Notification/NotificationClose.torp +6 -3
  190. package/dist/Notification/NotificationContainer.torp +3 -7
  191. package/dist/Notification/NotificationContent.torp +3 -7
  192. package/dist/Notification/NotificationTypes.ts +1 -1
  193. package/dist/Notification/index.d.ts +15 -12
  194. package/dist/Notification/index.js +22 -32
  195. package/dist/Notification/index.js.map +1 -1
  196. package/dist/NumberInput/NumberInput.torp +255 -0
  197. package/dist/NumberInput/index.d.ts +44 -0
  198. package/dist/NumberInput/index.js +2 -0
  199. package/dist/Pagination/Pagination.torp +152 -0
  200. package/dist/Pagination/PaginationItem.torp +137 -0
  201. package/dist/Pagination/PaginationTypes.ts +22 -0
  202. package/dist/Pagination/buildPages.ts +61 -0
  203. package/dist/Pagination/index.d.ts +63 -0
  204. package/dist/Pagination/index.js +3 -0
  205. package/dist/Popover/Popover.torp +39 -52
  206. package/dist/Popover/PopoverContent.torp +27 -76
  207. package/dist/Popover/PopoverHover.torp +90 -0
  208. package/dist/Popover/PopoverTrigger.torp +17 -40
  209. package/dist/Popover/PopoverTypes.ts +5 -18
  210. package/dist/Popover/index.d.ts +40 -25
  211. package/dist/Popover/index.js +18 -18
  212. package/dist/Popover/index.js.map +1 -1
  213. package/dist/Progress/Progress.torp +88 -0
  214. package/dist/Progress/index.d.ts +37 -0
  215. package/dist/Progress/index.js +2 -0
  216. package/dist/Rating/Rating.torp +225 -0
  217. package/dist/Rating/index.d.ts +44 -0
  218. package/dist/Rating/index.js +2 -0
  219. package/dist/SegmentedControl/SegmentedControl.torp +233 -0
  220. package/dist/SegmentedControl/SegmentedControlTypes.ts +26 -0
  221. package/dist/SegmentedControl/SegmentedItem.torp +78 -0
  222. package/dist/SegmentedControl/index.d.ts +74 -0
  223. package/dist/SegmentedControl/index.js +3 -0
  224. package/dist/SelectBox/SelectBox.torp +190 -0
  225. package/dist/SelectBox/SelectBoxContent.torp +107 -0
  226. package/dist/SelectBox/SelectBoxTrigger.torp +141 -0
  227. package/dist/SelectBox/SelectBoxTypes.ts +33 -0
  228. package/dist/SelectBox/index.d.ts +112 -0
  229. package/dist/SelectBox/index.js +5 -0
  230. package/dist/Slider/Slider.torp +248 -0
  231. package/dist/Slider/index.d.ts +45 -0
  232. package/dist/Slider/index.js +2 -0
  233. package/dist/Splitter/Splitter.torp +156 -0
  234. package/dist/Splitter/SplitterHandle.torp +161 -0
  235. package/dist/Splitter/SplitterPane.torp +63 -0
  236. package/dist/Splitter/SplitterTypes.ts +31 -0
  237. package/dist/Splitter/index.d.ts +103 -0
  238. package/dist/Splitter/index.js +4 -0
  239. package/dist/Stepper/Stepper.torp +146 -0
  240. package/dist/Stepper/StepperMarker.torp +24 -0
  241. package/dist/Stepper/StepperNext.torp +44 -0
  242. package/dist/Stepper/StepperPrevious.torp +44 -0
  243. package/dist/Stepper/StepperStep.torp +90 -0
  244. package/dist/Stepper/StepperTypes.ts +30 -0
  245. package/dist/Stepper/index.d.ts +149 -0
  246. package/dist/Stepper/index.js +6 -0
  247. package/dist/TabGroup/TabContent.torp +6 -6
  248. package/dist/TabGroup/TabGroup.torp +97 -113
  249. package/dist/TabGroup/TabGroupTypes.ts +3 -3
  250. package/dist/TabGroup/TabHeader.torp +23 -19
  251. package/dist/TabGroup/TabList.torp +8 -21
  252. package/dist/TabGroup/TabTrigger.torp +6 -7
  253. package/dist/TabGroup/index.d.ts +26 -26
  254. package/dist/TabGroup/index.js +6 -22
  255. package/dist/TagInput/TagInput.torp +378 -0
  256. package/dist/TagInput/index.d.ts +48 -0
  257. package/dist/TagInput/index.js +2 -0
  258. package/dist/TimePicker/TimePicker.torp +462 -0
  259. package/dist/TimePicker/index.d.ts +53 -0
  260. package/dist/TimePicker/index.js +2 -0
  261. package/dist/ToolBar/ToolBar.torp +117 -0
  262. package/dist/ToolBar/ToolBarButton.torp +56 -0
  263. package/dist/ToolBar/ToolBarElement.torp +51 -0
  264. package/dist/ToolBar/ToolBarPopout.torp +45 -0
  265. package/dist/ToolBar/ToolBarPopoutContent.torp +34 -0
  266. package/dist/ToolBar/ToolBarPopoutTrigger.torp +47 -0
  267. package/dist/ToolBar/ToolBarSeparator.torp +21 -0
  268. package/dist/ToolBar/ToolBarTypes.ts +28 -0
  269. package/dist/ToolBar/index.d.ts +210 -0
  270. package/dist/ToolBar/index.js +8 -0
  271. package/dist/Tree/Tree.torp +395 -0
  272. package/dist/Tree/TreeItem.torp +176 -0
  273. package/dist/Tree/TreeItemChildren.torp +60 -0
  274. package/dist/Tree/TreeItemContent.torp +46 -0
  275. package/dist/Tree/TreeItemLabel.torp +94 -0
  276. package/dist/Tree/TreeItemTrigger.torp +78 -0
  277. package/dist/Tree/TreeLoadedChildren.torp +122 -0
  278. package/dist/Tree/TreeTypes.ts +63 -0
  279. package/dist/Tree/index.d.ts +262 -0
  280. package/dist/Tree/index.js +7 -0
  281. package/dist/icons/ChevronDoubleLeft.torp +19 -0
  282. package/dist/icons/ChevronDoubleRight.torp +19 -0
  283. package/dist/icons/index.d.ts +61 -1
  284. package/dist/icons/index.js +17 -58
  285. package/dist/loader-DEeG5vFY.js +44 -0
  286. package/dist/loader-DEeG5vFY.js.map +1 -0
  287. package/dist/motion/index.d.ts +12 -8
  288. package/dist/motion/index.d.ts.map +1 -0
  289. package/dist/motion/index.js +72 -88
  290. package/dist/motion/index.js.map +1 -1
  291. package/dist/mount/draggable.ts +63 -0
  292. package/dist/mount/dropTarget.ts +108 -0
  293. package/dist/mount/hoverTrigger.ts +1 -1
  294. package/dist/utils/$handle.ts +23 -0
  295. package/dist/utils/LoadedItems.torp +47 -0
  296. package/dist/utils/PopoutClickTrigger.torp +99 -0
  297. package/dist/utils/PopoutTypes.ts +82 -0
  298. package/dist/utils/SubmenuPopout.torp +89 -0
  299. package/dist/utils/SubmenuPopoutContent.torp +87 -0
  300. package/dist/utils/SubmenuPopoutTrigger.torp +160 -0
  301. package/dist/utils/chartColors.ts +13 -13
  302. package/dist/utils/chartLayout.ts +143 -0
  303. package/dist/utils/chartUtils.ts +1 -1
  304. package/dist/utils/colorUtils.ts +103 -0
  305. package/dist/utils/createItemGroup.ts +152 -0
  306. package/dist/utils/dateUtils.ts +8 -7
  307. package/dist/utils/documentEvents.ts +4 -4
  308. package/dist/utils/dragState.ts +86 -0
  309. package/dist/utils/focusGroup.ts +204 -0
  310. package/dist/utils/focusItem.ts +44 -0
  311. package/dist/utils/formField.ts +70 -0
  312. package/dist/utils/hoverOpen.ts +50 -0
  313. package/dist/utils/hoverReveal.ts +194 -0
  314. package/dist/utils/loader.ts +113 -0
  315. package/dist/utils/maskUtils.ts +98 -0
  316. package/dist/utils/popoutContent.ts +137 -0
  317. package/dist/utils/reorderList.ts +52 -0
  318. package/package.json +116 -25
  319. package/dist/Accordion/index.js.map +0 -1
  320. package/dist/Breadcrumb/index.js.map +0 -1
  321. package/dist/Calendar/index.js.map +0 -1
  322. package/dist/Chart/BarChart.torp +0 -159
  323. package/dist/Chart/LineChart.torp +0 -196
  324. package/dist/Chart/index.d.ts +0 -220
  325. package/dist/Chart/index.js +0 -34
  326. package/dist/Chart/index.js.map +0 -1
  327. package/dist/Contextual/index.js.map +0 -1
  328. package/dist/Dialog/index.js.map +0 -1
  329. package/dist/Disclosure/index.js.map +0 -1
  330. package/dist/Drawer/index.js.map +0 -1
  331. package/dist/Form/index.js.map +0 -1
  332. package/dist/Menu/index.js.map +0 -1
  333. package/dist/MenuBar/index.js.map +0 -1
  334. package/dist/NavMenu/NavMenuPopoutButton.torp +0 -129
  335. package/dist/NavMenu/index.js.map +0 -1
  336. package/dist/TabGroup/index.js.map +0 -1
  337. package/dist/icons/index.js.map +0 -1
  338. package/dist/index.d.ts +0 -19
  339. package/dist/metafile-esm.json +0 -1
  340. package/dist/motion/fade.ts +0 -16
  341. package/dist/motion/grow.ts +0 -23
  342. package/dist/motion/measure.ts +0 -28
  343. package/dist/motion/slide.ts +0 -45
  344. package/dist/mount/index.d.ts +0 -2
  345. package/dist/utils/index.d.ts +0 -2
  346. /package/dist/{Chart → Charts}/DataSeries.ts +0 -0
@@ -5,19 +5,19 @@ interface CheckBoxProps {
5
5
  /** An ID for the root element */
6
6
  id?: string;
7
7
  /** Classes for the root element */
8
- class?: ClassValue,
8
+ class?: ClassValue;
9
9
  /** Styles for the root element */
10
- style?: StyleValue,
10
+ style?: StyleValue;
11
11
  /** The name of the checkbox's form data field */
12
- name?: string,
12
+ name?: string;
13
13
  /** Whether the checkbox is checked */
14
- checked?: boolean,
14
+ checked?: boolean;
15
15
  /** An ARIA label for describing the checkbox to screen readers when there is no associated label element */
16
- ariaLabel?: string,
16
+ ariaLabel?: string;
17
17
  /** Raised on change */
18
- onchange?: (e: Event) => void,
18
+ onchange?: (e: Event) => void;
19
19
  /** Raised on input */
20
- oninput?: (e: Event) => void,
20
+ oninput?: (e: Event) => void;
21
21
  }
22
22
 
23
23
  /**
@@ -37,15 +37,15 @@ interface FieldProps {
37
37
  /** An ID for the root element */
38
38
  id?: string;
39
39
  /** Classes for the root element */
40
- class?: ClassValue,
40
+ class?: ClassValue;
41
41
  /** Styles for the root element */
42
- style?: StyleValue,
42
+ style?: StyleValue;
43
43
  /** The name of the data that this field contains */
44
- name: string,
44
+ name: string;
45
45
  /** The data value that this field is bound to */
46
- value?: any,
46
+ value: Bindable<any>;
47
47
  /** The schema validator to use for this form */
48
- schema?: StandardSchemaV1,
48
+ schema?: StandardSchemaV1;
49
49
  }
50
50
 
51
51
  /**
@@ -66,25 +66,25 @@ interface FileProps {
66
66
  /** An ID for the root element */
67
67
  id?: string;
68
68
  /** Classes for the root element */
69
- class?: ClassValue,
69
+ class?: ClassValue;
70
70
  /** Styles for the root element */
71
- style?: StyleValue,
71
+ style?: StyleValue;
72
72
  /** The name of the input's form data field */
73
- name?: string,
73
+ name?: string;
74
74
  /** The type of files that this input accepts e.g. `image/*` */
75
- accept?: string,
75
+ accept?: string;
76
76
  /** Text to display when the input value is empty */
77
- placeholder?: string,
77
+ placeholder?: string;
78
78
  /** Whether the input should be readonly */
79
- readonly?: boolean,
79
+ readonly?: boolean;
80
80
  /** The maximum number of characters allowed for the input value */
81
- maxlength?: number,
81
+ maxlength?: number;
82
82
  /** An ARIA label for describing the input to screen readers when there is no associated label element */
83
- ariaLabel?: string,
83
+ ariaLabel?: string;
84
84
  /** Raised on change */
85
- onchange?: (e: Event) => void,
85
+ onchange?: (e: Event) => void;
86
86
  /** Raised on input */
87
- oninput?: (e: Event) => void,
87
+ oninput?: (e: Event) => void;
88
88
  }
89
89
 
90
90
  /**
@@ -100,36 +100,99 @@ declare function File(
100
100
 
101
101
 
102
102
 
103
- interface FormProps {
103
+ interface FileDropProps {
104
104
  /** An ID for the root element */
105
105
  id?: string;
106
106
  /** Classes for the root element */
107
- class?: ClassValue,
107
+ class?: ClassValue;
108
108
  /** Styles for the root element */
109
- style?: StyleValue,
110
- /** The data to display in the form */
111
- data?: any,
109
+ style?: StyleValue;
110
+ /** The name of the input's form data field */
111
+ name?: string;
112
+ /** The type of files that this input accepts e.g. `image/*` */
113
+ accept?: string;
114
+ /** Whether the user can drop or select multiple files at once */
115
+ multiple?: boolean;
116
+ /** If set to true, the user cannot interact with this dropzone */
117
+ disabled?: boolean;
118
+ /** An accessible name for the dropzone */
119
+ ariaLabel?: string;
120
+ /** Raised when files have been dropped or selected */
121
+ onfiles?: (files: File[]) => void;
122
+ }
123
+
124
+ /**
125
+ * A file input in a form, where the user can drop one or more files onto it,
126
+ * or activate it to select files with a file dialog.
127
+ *
128
+ * See [the MDN docs for the Drag and Drop API](https://developer.mozilla.org/en-US/docs/Web/API/HTML_Drag_and_Drop_API).
129
+ */
130
+ declare function FileDrop(
131
+ $parent: ParentNode,
132
+ $anchor: Node | null,
133
+ $props: FileDropProps | undefined,
134
+ $context?: Record<PropertyKey, any>,
135
+ $slots?: Record<string, SlotRender>,
136
+ ): void;
137
+
138
+
139
+
140
+ interface FormProps<Data = Record<string, any>> {
141
+ /** An ID for the root element */
142
+ id?: string;
143
+ /** Classes for the root element */
144
+ class?: ClassValue;
145
+ /** Styles for the root element */
146
+ style?: StyleValue;
147
+ /**
148
+ * The data to display in the form. Type it with the page's form result
149
+ * (e.g. `PageForm<typeof server>`) to get field name autocomplete
150
+ */
151
+ data?: Data;
112
152
  /** Where to post the form's data **/
113
- action?: string,
153
+ action?: string;
114
154
  /** The action to use when submitting the form, which defaults to POST */
115
- method?: string,
155
+ method?: string;
116
156
  /**
117
157
  * The form's encoding type e.g. `multipart/form-data` where there are file
118
158
  * inputs. This will be automatically set unless overridden
119
159
  */
120
- enctype?: string,
160
+ enctype?: string;
121
161
  /** The schema validator to use for this form */
122
- schema?: StandardSchemaV1,
123
- onsubmit?: (e: SubmitEvent) => boolean | void | Promise<boolean | void>,
162
+ schema?: StandardSchemaV1;
163
+ onsubmit?: (e: SubmitEvent) => boolean | void | Promise<boolean | void>;
124
164
  }
125
165
 
126
166
  /**
127
167
  * A form for submitting values.
128
168
  */
129
- declare function Form(
169
+ declare function Form<Data = Record<string, any>>(
170
+ $parent: ParentNode,
171
+ $anchor: Node | null,
172
+ $props: FormProps<Data> | undefined,
173
+ $context?: Record<PropertyKey, any>,
174
+ $slots?: Record<string, SlotRender>,
175
+ ): void;
176
+
177
+
178
+
179
+ interface FormValuesProps {
180
+ /** The name of the form data field(s) */
181
+ name?: string;
182
+ /** The value, or an array of values, to submit with the form */
183
+ value?: any;
184
+ }
185
+
186
+ /**
187
+ * Renders hidden inputs for a component's value, so that it can take part
188
+ * in native form submission. One input per entry when the value is an array.
189
+ * Nothing is rendered when the value is null or undefined, so that the
190
+ * field is omitted from the submitted form data.
191
+ */
192
+ declare function FormValues(
130
193
  $parent: ParentNode,
131
194
  $anchor: Node | null,
132
- $props: FormProps | undefined,
195
+ $props: FormValuesProps | undefined,
133
196
  $context?: Record<PropertyKey, any>,
134
197
  $slots?: Record<string, SlotRender>,
135
198
  ): void;
@@ -140,9 +203,9 @@ interface HiddenProps {
140
203
  /** An ID for the root element */
141
204
  id?: string;
142
205
  /** The name of the input's form data field */
143
- name?: string,
206
+ name?: string;
144
207
  /** The data value that this field is bound to */
145
- value?: any,
208
+ value?: any;
146
209
  }
147
210
 
148
211
  /**
@@ -162,29 +225,29 @@ interface InputProps {
162
225
  /** An ID for the root element */
163
226
  id?: string;
164
227
  /** Classes for the root element */
165
- class?: ClassValue,
228
+ class?: ClassValue;
166
229
  /** Styles for the root element */
167
- style?: StyleValue,
230
+ style?: StyleValue;
168
231
  /** The input type */
169
- type?: string, // TODO: "text" | "number" | "password" | "email" | "url" | "tel",
232
+ type?: string; // TODO: "text" | "number" | "password" | "email" | "url" | "tel",
170
233
  /** The name of the input's form data field */
171
- name?: string,
234
+ name?: string;
172
235
  /** The data value that this field is bound to */
173
- value?: any,
236
+ value: Bindable<any>;
174
237
  /** Text to display when the input value is empty */
175
- placeholder?: string,
238
+ placeholder?: string;
176
239
  /** Whether the input should be readonly */
177
- readonly?: boolean,
240
+ readonly?: boolean;
178
241
  /** Whether the input's value is required */
179
- required?: boolean,
242
+ required?: boolean;
180
243
  /** The maximum number of characters allowed for the input value */
181
- maxlength?: number,
244
+ maxlength?: number;
182
245
  /** An ARIA label for describing the input to screen readers when there is no associated label element */
183
- ariaLabel?: string,
246
+ ariaLabel?: string;
184
247
  /** Raised on change */
185
- onchange?: (e: Event) => void,
248
+ onchange?: (e: Event) => void;
186
249
  /** Raised on input */
187
- oninput?: (e: Event) => void,
250
+ oninput?: (e: Event) => void;
188
251
  }
189
252
 
190
253
  /**
@@ -204,9 +267,9 @@ interface LabelProps {
204
267
  /** An ID for the root element */
205
268
  id?: string;
206
269
  /** Classes for the root element */
207
- class?: ClassValue,
270
+ class?: ClassValue;
208
271
  /** Styles for the root element */
209
- style?: StyleValue,
272
+ style?: StyleValue;
210
273
  }
211
274
 
212
275
  /**
@@ -226,9 +289,9 @@ interface MessageProps {
226
289
  /** An ID for the root element */
227
290
  id?: string;
228
291
  /** Classes for the root element */
229
- class?: ClassValue,
292
+ class?: ClassValue;
230
293
  /** Styles for the root element */
231
- style?: StyleValue,
294
+ style?: StyleValue;
232
295
  }
233
296
 
234
297
  /**
@@ -245,15 +308,37 @@ declare function Message(
245
308
 
246
309
 
247
310
 
311
+ interface MessageSummaryProps {
312
+ /** An ID for the root element */
313
+ id?: string;
314
+ /** Classes for the root element */
315
+ class?: ClassValue;
316
+ /** Styles for the root element */
317
+ style?: StyleValue;
318
+ }
319
+
320
+ /**
321
+ * Shows all validation messages for a form in a list.
322
+ */
323
+ declare function MessageSummary(
324
+ $parent: ParentNode,
325
+ $anchor: Node | null,
326
+ $props: MessageSummaryProps | undefined,
327
+ $context?: Record<PropertyKey, any>,
328
+ $slots?: Record<string, SlotRender>,
329
+ ): void;
330
+
331
+
332
+
248
333
  interface OptionProps {
249
334
  /** An ID for the root element */
250
335
  id?: string;
251
336
  /** Classes for the root element */
252
- class?: ClassValue,
337
+ class?: ClassValue;
253
338
  /** Styles for the root element */
254
- style?: StyleValue,
339
+ style?: StyleValue;
255
340
  /** The data value that this option has */
256
- value?: any,
341
+ value?: any;
257
342
  }
258
343
 
259
344
  /**
@@ -273,23 +358,23 @@ interface SelectProps {
273
358
  /** An ID for the root element */
274
359
  id?: string;
275
360
  /** Classes for the root element */
276
- class?: ClassValue,
361
+ class?: ClassValue;
277
362
  /** Styles for the root element */
278
- style?: StyleValue,
363
+ style?: StyleValue;
279
364
  /** The name of the input's form data field */
280
- name?: string,
365
+ name?: string;
281
366
  /** The data value that this field is bound to */
282
- value?: any,
367
+ value: Bindable<any>;
283
368
  /** Text to display when the input value is empty */
284
- placeholder?: string,
369
+ placeholder?: string;
285
370
  /** Whether the input should be readonly */
286
- readonly?: boolean,
371
+ readonly?: boolean;
287
372
  /** An ARIA label for describing the input to screen readers when there is no associated label element */
288
- ariaLabel?: string,
373
+ ariaLabel?: string;
289
374
  /** Raised on change */
290
- onchange?: (e: Event) => void,
375
+ onchange?: (e: Event) => void;
291
376
  /** Raised on input */
292
- oninput?: (e: Event) => void,
377
+ oninput?: (e: Event) => void;
293
378
  }
294
379
 
295
380
  /**
@@ -309,29 +394,29 @@ interface TextAreaProps {
309
394
  /** An ID for the root element */
310
395
  id?: string;
311
396
  /** Classes for the root element */
312
- class?: ClassValue,
397
+ class?: ClassValue;
313
398
  /** Styles for the root element */
314
- style?: StyleValue,
399
+ style?: StyleValue;
315
400
  /** The name of the input's form data field */
316
- name?: string,
401
+ name?: string;
317
402
  /** The data value that this field is bound to */
318
- value?: any,
403
+ value: Bindable<any>;
319
404
  /** The number of rows to show in the input */
320
- rows?: number,
405
+ rows?: number;
321
406
  /** Text to display when the input's value is empty */
322
- placeholder?: string,
407
+ placeholder?: string;
323
408
  /** Whether the input should be readonly */
324
- readonly?: boolean,
409
+ readonly?: boolean;
325
410
  /** Whether the input's value is required */
326
- required?: boolean,
411
+ required?: boolean;
327
412
  /** The maximum number of characters allowed for the input value */
328
- maxlength?: number,
413
+ maxlength?: number;
329
414
  /** An ARIA label for describing the input to screen readers when there is no associated label element */
330
- ariaLabel?: string,
415
+ ariaLabel?: string;
331
416
  /** Raised on change */
332
- onchange?: (e: Event) => void,
417
+ onchange?: (e: Event) => void;
333
418
  /** Raised on input */
334
- oninput?: (e: Event) => void,
419
+ oninput?: (e: Event) => void;
335
420
  }
336
421
 
337
422
  /**
@@ -345,4 +430,40 @@ declare function TextArea(
345
430
  $slots?: Record<string, SlotRender>,
346
431
  ): void;
347
432
 
348
- export { CheckBox, Field, File, Form, Hidden, Input, Label, Message, Option, Select, TextArea };
433
+
434
+
435
+ interface ToggleProps {
436
+ /** An ID for the root element */
437
+ id?: string;
438
+ /** Classes for the root element */
439
+ class?: ClassValue;
440
+ /** Styles for the root element */
441
+ style?: StyleValue;
442
+ /** The name of the toggle's form data field */
443
+ name?: string;
444
+ /** Whether the toggle is switched on */
445
+ checked?: boolean;
446
+ /** If set to true, the user cannot interact with this toggle */
447
+ disabled?: boolean;
448
+ /** An ARIA label for describing the toggle to screen readers when there is no associated label element */
449
+ ariaLabel?: string;
450
+ /** Raised on change */
451
+ onchange?: (e: Event) => void;
452
+ /** Raised on input */
453
+ oninput?: (e: Event) => void;
454
+ }
455
+
456
+ /**
457
+ * A switch input in a form, which can be turned on or off.
458
+ *
459
+ * See [the WAI ARIA guidelines for Switches](https://www.w3.org/WAI/ARIA/apg/patterns/switch/).
460
+ */
461
+ declare function Toggle(
462
+ $parent: ParentNode,
463
+ $anchor: Node | null,
464
+ $props: ToggleProps | undefined,
465
+ $context?: Record<PropertyKey, any>,
466
+ $slots?: Record<string, SlotRender>,
467
+ ): void;
468
+
469
+ export { CheckBox, Field, File, FileDrop, Form, FormValues, Hidden, Input, Label, Message, MessageSummary, Option, Select, TextArea, Toggle };
@@ -1,46 +1,16 @@
1
- // src/Form/CheckBox.torp
2
- import CheckBox_default from "./CheckBox.torp";
3
-
4
- // src/Form/Field.torp
5
- import Field_default from "./Field.torp";
6
-
7
- // src/Form/File.torp
8
- import File_default from "./File.torp";
9
-
10
- // src/Form/Form.torp
11
- import Form_default from "./Form.torp";
12
-
13
- // src/Form/Hidden.torp
14
- import Hidden_default from "./Hidden.torp";
15
-
16
- // src/Form/Input.torp
17
- import Input_default from "./Input.torp";
18
-
19
- // src/Form/Label.torp
20
- import Label_default from "./Label.torp";
21
-
22
- // src/Form/Message.torp
23
- import Message_default from "./Message.torp";
24
-
25
- // src/Form/Option.torp
26
- import Option_default from "./Option.torp";
27
-
28
- // src/Form/Select.torp
29
- import Select_default from "./Select.torp";
30
-
31
- // src/Form/TextArea.torp
32
- import TextArea_default from "./TextArea.torp";
33
- export {
34
- CheckBox_default as CheckBox,
35
- Field_default as Field,
36
- File_default as File,
37
- Form_default as Form,
38
- Hidden_default as Hidden,
39
- Input_default as Input,
40
- Label_default as Label,
41
- Message_default as Message,
42
- Option_default as Option,
43
- Select_default as Select,
44
- TextArea_default as TextArea
45
- };
46
- //# sourceMappingURL=index.js.map
1
+ import CheckBox from "./CheckBox.torp";
2
+ import Field from "./Field.torp";
3
+ import File from "./File.torp";
4
+ import FileDrop from "./FileDrop.torp";
5
+ import Form from "./Form.torp";
6
+ import FormValues from "./FormValues.torp";
7
+ import Hidden from "./Hidden.torp";
8
+ import Input from "./Input.torp";
9
+ import Label from "./Label.torp";
10
+ import Message from "./Message.torp";
11
+ import MessageSummary from "./MessageSummary.torp";
12
+ import Option from "./Option.torp";
13
+ import Select from "./Select.torp";
14
+ import TextArea from "./TextArea.torp";
15
+ import Toggle from "./Toggle.torp";
16
+ export { CheckBox, Field, File, FileDrop, Form, FormValues, Hidden, Input, Label, Message, MessageSummary, Option, Select, TextArea, Toggle };