@economic/taco 1.1.6 → 1.1.9-alpha.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 (420) hide show
  1. package/README.md +82 -82
  2. package/dist/components/Icon/components/LogOut.d.ts +3 -0
  3. package/dist/components/Icon/components/Menu.d.ts +3 -0
  4. package/dist/components/Icon/components/Profile.d.ts +3 -0
  5. package/dist/components/Icon/components/index.d.ts +1 -1
  6. package/dist/components/Input/Input.d.ts +1 -1
  7. package/dist/components/Menu/Menu.d.ts +2 -2
  8. package/dist/components/Menu/components/Item.d.ts +1 -1
  9. package/dist/components/Menu/components/Link.d.ts +1 -1
  10. package/dist/esm/components/Accordion/Accordion.js.map +1 -1
  11. package/dist/esm/components/Backdrop/Backdrop.js.map +1 -1
  12. package/dist/esm/components/Badge/Badge.js +14 -14
  13. package/dist/esm/components/Badge/Badge.js.map +1 -1
  14. package/dist/esm/components/Banner/Banner.js.map +1 -1
  15. package/dist/esm/components/Banner/util.js +1 -1
  16. package/dist/esm/components/Banner/util.js.map +1 -1
  17. package/dist/esm/components/Button/Button.js.map +1 -1
  18. package/dist/esm/components/Button/util.js +18 -23
  19. package/dist/esm/components/Button/util.js.map +1 -1
  20. package/dist/esm/components/Calendar/Calendar.js +56 -71
  21. package/dist/esm/components/Calendar/Calendar.js.map +1 -1
  22. package/dist/esm/components/Card/Card.js +14 -12
  23. package/dist/esm/components/Card/Card.js.map +1 -1
  24. package/dist/esm/components/Checkbox/Checkbox.js +15 -18
  25. package/dist/esm/components/Checkbox/Checkbox.js.map +1 -1
  26. package/dist/esm/components/Combobox/Combobox.js +23 -25
  27. package/dist/esm/components/Combobox/Combobox.js.map +1 -1
  28. package/dist/esm/components/Combobox/useCombobox.js +67 -87
  29. package/dist/esm/components/Combobox/useCombobox.js.map +1 -1
  30. package/dist/esm/components/Datepicker/Datepicker.js +48 -52
  31. package/dist/esm/components/Datepicker/Datepicker.js.map +1 -1
  32. package/dist/esm/components/Datepicker/useDatepicker.js +27 -34
  33. package/dist/esm/components/Datepicker/useDatepicker.js.map +1 -1
  34. package/dist/esm/components/Dialog/Context.js +4 -4
  35. package/dist/esm/components/Dialog/Context.js.map +1 -1
  36. package/dist/esm/components/Dialog/Dialog.js +39 -58
  37. package/dist/esm/components/Dialog/Dialog.js.map +1 -1
  38. package/dist/esm/components/Dialog/components/Content.js +39 -44
  39. package/dist/esm/components/Dialog/components/Content.js.map +1 -1
  40. package/dist/esm/components/Dialog/components/Drawer.js +3 -3
  41. package/dist/esm/components/Dialog/components/Drawer.js.map +1 -1
  42. package/dist/esm/components/Dialog/components/Extra.js +2 -2
  43. package/dist/esm/components/Dialog/components/Extra.js.map +1 -1
  44. package/dist/esm/components/Dialog/components/Trigger.js +2 -2
  45. package/dist/esm/components/Dialog/components/Trigger.js.map +1 -1
  46. package/dist/esm/components/Field/Field.js +10 -12
  47. package/dist/esm/components/Field/Field.js.map +1 -1
  48. package/dist/esm/components/Form/Form.js +6 -8
  49. package/dist/esm/components/Form/Form.js.map +1 -1
  50. package/dist/esm/components/Group/Group.js +6 -8
  51. package/dist/esm/components/Group/Group.js.map +1 -1
  52. package/dist/esm/components/Hanger/Hanger.js +27 -35
  53. package/dist/esm/components/Hanger/Hanger.js.map +1 -1
  54. package/dist/esm/components/HoverCard/HoverCard.js +8 -9
  55. package/dist/esm/components/HoverCard/HoverCard.js.map +1 -1
  56. package/dist/esm/components/Icon/Icon.js +7 -8
  57. package/dist/esm/components/Icon/Icon.js.map +1 -1
  58. package/dist/esm/components/Icon/components/AccountPreview.js.map +1 -1
  59. package/dist/esm/components/Icon/components/Accounting.js.map +1 -1
  60. package/dist/esm/components/Icon/components/AccountingYear.js.map +1 -1
  61. package/dist/esm/components/Icon/components/AccountingYearCancel.js.map +1 -1
  62. package/dist/esm/components/Icon/components/ArrowBottom.js.map +1 -1
  63. package/dist/esm/components/Icon/components/ArrowDown.js.map +1 -1
  64. package/dist/esm/components/Icon/components/ArrowEnd.js.map +1 -1
  65. package/dist/esm/components/Icon/components/ArrowLeft.js.map +1 -1
  66. package/dist/esm/components/Icon/components/ArrowRight.js.map +1 -1
  67. package/dist/esm/components/Icon/components/ArrowStart.js.map +1 -1
  68. package/dist/esm/components/Icon/components/ArrowTop.js.map +1 -1
  69. package/dist/esm/components/Icon/components/ArrowUp.js.map +1 -1
  70. package/dist/esm/components/Icon/components/Attach.js.map +1 -1
  71. package/dist/esm/components/Icon/components/AttachAuto.js.map +1 -1
  72. package/dist/esm/components/Icon/components/AttachCancel.js.map +1 -1
  73. package/dist/esm/components/Icon/components/Autotext.js.map +1 -1
  74. package/dist/esm/components/Icon/components/AutotextInsert.js.map +1 -1
  75. package/dist/esm/components/Icon/components/Basic.js.map +1 -1
  76. package/dist/esm/components/Icon/components/BasicTabs.js.map +1 -1
  77. package/dist/esm/components/Icon/components/BellSolid.js.map +1 -1
  78. package/dist/esm/components/Icon/components/Book.js.map +1 -1
  79. package/dist/esm/components/Icon/components/Booking.js.map +1 -1
  80. package/dist/esm/components/Icon/components/Budget.js.map +1 -1
  81. package/dist/esm/components/Icon/components/Calendar.js.map +1 -1
  82. package/dist/esm/components/Icon/components/CashAccount.js.map +1 -1
  83. package/dist/esm/components/Icon/components/CashReports.js.map +1 -1
  84. package/dist/esm/components/Icon/components/Chat.js.map +1 -1
  85. package/dist/esm/components/Icon/components/ChatSolid.js.map +1 -1
  86. package/dist/esm/components/Icon/components/ChevronDown.js.map +1 -1
  87. package/dist/esm/components/Icon/components/ChevronDownDouble.js.map +1 -1
  88. package/dist/esm/components/Icon/components/ChevronDownSolid.js.map +1 -1
  89. package/dist/esm/components/Icon/components/ChevronLeft.js.map +1 -1
  90. package/dist/esm/components/Icon/components/ChevronLeftDouble.js.map +1 -1
  91. package/dist/esm/components/Icon/components/ChevronRight.js.map +1 -1
  92. package/dist/esm/components/Icon/components/ChevronRightDouble.js.map +1 -1
  93. package/dist/esm/components/Icon/components/ChevronUp.js.map +1 -1
  94. package/dist/esm/components/Icon/components/ChevronUpDouble.js.map +1 -1
  95. package/dist/esm/components/Icon/components/ChevronUpSolid.js.map +1 -1
  96. package/dist/esm/components/Icon/components/CircleClose.js.map +1 -1
  97. package/dist/esm/components/Icon/components/CircleMinus.js.map +1 -1
  98. package/dist/esm/components/Icon/components/CirclePlus.js.map +1 -1
  99. package/dist/esm/components/Icon/components/CircleTick.js.map +1 -1
  100. package/dist/esm/components/Icon/components/Clamp.js.map +1 -1
  101. package/dist/esm/components/Icon/components/ClampOpen.js.map +1 -1
  102. package/dist/esm/components/Icon/components/Close.js.map +1 -1
  103. package/dist/esm/components/Icon/components/ConnectionEnable.js.map +1 -1
  104. package/dist/esm/components/Icon/components/ConnectionRevoke.js.map +1 -1
  105. package/dist/esm/components/Icon/components/Contacts.js.map +1 -1
  106. package/dist/esm/components/Icon/components/Copy.js.map +1 -1
  107. package/dist/esm/components/Icon/components/Courses.js.map +1 -1
  108. package/dist/esm/components/Icon/components/Credit.js.map +1 -1
  109. package/dist/esm/components/Icon/components/Delete.js.map +1 -1
  110. package/dist/esm/components/Icon/components/DeletePermanently.js.map +1 -1
  111. package/dist/esm/components/Icon/components/Depecriate.js.map +1 -1
  112. package/dist/esm/components/Icon/components/Developer.js.map +1 -1
  113. package/dist/esm/components/Icon/components/DistributionTemplate.js.map +1 -1
  114. package/dist/esm/components/Icon/components/Document.js.map +1 -1
  115. package/dist/esm/components/Icon/components/DocumentApprove.js.map +1 -1
  116. package/dist/esm/components/Icon/components/DocumentCreateEntry.js.map +1 -1
  117. package/dist/esm/components/Icon/components/DocumentCut.js.map +1 -1
  118. package/dist/esm/components/Icon/components/DocumentError.js.map +1 -1
  119. package/dist/esm/components/Icon/components/DocumentIsolatePage.js.map +1 -1
  120. package/dist/esm/components/Icon/components/DocumentMerge.js.map +1 -1
  121. package/dist/esm/components/Icon/components/DocumentMove.js.map +1 -1
  122. package/dist/esm/components/Icon/components/DocumentPreview.js.map +1 -1
  123. package/dist/esm/components/Icon/components/DocumentReceived.js.map +1 -1
  124. package/dist/esm/components/Icon/components/DocumentRejectedRequest.js.map +1 -1
  125. package/dist/esm/components/Icon/components/DocumentSplit.js.map +1 -1
  126. package/dist/esm/components/Icon/components/DocumentTime.js.map +1 -1
  127. package/dist/esm/components/Icon/components/Download.js.map +1 -1
  128. package/dist/esm/components/Icon/components/Drag.js.map +1 -1
  129. package/dist/esm/components/Icon/components/ECopedia.js.map +1 -1
  130. package/dist/esm/components/Icon/components/ESignature.js.map +1 -1
  131. package/dist/esm/components/Icon/components/Edit.js.map +1 -1
  132. package/dist/esm/components/Icon/components/EllipsisHorizontal.js.map +1 -1
  133. package/dist/esm/components/Icon/components/EllipsisVertical.js.map +1 -1
  134. package/dist/esm/components/Icon/components/EntriesOnAccount.js.map +1 -1
  135. package/dist/esm/components/Icon/components/EntriesOpen.js.map +1 -1
  136. package/dist/esm/components/Icon/components/EntriesWarning.js.map +1 -1
  137. package/dist/esm/components/Icon/components/EntryTypeCustomerInvoice.js.map +1 -1
  138. package/dist/esm/components/Icon/components/EntryTypeCustomerPayment.js.map +1 -1
  139. package/dist/esm/components/Icon/components/EntryTypeJournalEntry.js.map +1 -1
  140. package/dist/esm/components/Icon/components/EntryTypeManualCustomerInvoice.js.map +1 -1
  141. package/dist/esm/components/Icon/components/EntryTypeSupplierInvoice.js.map +1 -1
  142. package/dist/esm/components/Icon/components/EntryTypeSupplierPayment.js.map +1 -1
  143. package/dist/esm/components/Icon/components/Envelope.js.map +1 -1
  144. package/dist/esm/components/Icon/components/EnvelopeApproved.js.map +1 -1
  145. package/dist/esm/components/Icon/components/ExpandView.js.map +1 -1
  146. package/dist/esm/components/Icon/components/Expenses.js.map +1 -1
  147. package/dist/esm/components/Icon/components/Export.js.map +1 -1
  148. package/dist/esm/components/Icon/components/ExportToExcel.js.map +1 -1
  149. package/dist/esm/components/Icon/components/ExportToPdf.js.map +1 -1
  150. package/dist/esm/components/Icon/components/Filter.js.map +1 -1
  151. package/dist/esm/components/Icon/components/FilterSolid.js.map +1 -1
  152. package/dist/esm/components/Icon/components/GraphSolid.js.map +1 -1
  153. package/dist/esm/components/Icon/components/Hash.js.map +1 -1
  154. package/dist/esm/components/Icon/components/Home.js.map +1 -1
  155. package/dist/esm/components/Icon/components/Images.js.map +1 -1
  156. package/dist/esm/components/Icon/components/Import.js.map +1 -1
  157. package/dist/esm/components/Icon/components/Inbox.js.map +1 -1
  158. package/dist/esm/components/Icon/components/InboxEinvoicing.js.map +1 -1
  159. package/dist/esm/components/Icon/components/InboxScanning.js.map +1 -1
  160. package/dist/esm/components/Icon/components/InboxSmart.js.map +1 -1
  161. package/dist/esm/components/Icon/components/Info.js.map +1 -1
  162. package/dist/esm/components/Icon/components/Inventory.js.map +1 -1
  163. package/dist/esm/components/Icon/components/InventoryMatrix.js.map +1 -1
  164. package/dist/esm/components/Icon/components/JournalPro.js.map +1 -1
  165. package/dist/esm/components/Icon/components/Layout.js.map +1 -1
  166. package/dist/esm/components/Icon/components/LayoutBoth.js.map +1 -1
  167. package/dist/esm/components/Icon/components/LayoutFirst.js.map +1 -1
  168. package/dist/esm/components/Icon/components/LayoutLast.js.map +1 -1
  169. package/dist/esm/components/Icon/components/LayoutNone.js.map +1 -1
  170. package/dist/esm/components/Icon/components/LedgerCard.js.map +1 -1
  171. package/dist/esm/components/Icon/components/LedgerCardCustomerReminder.js.map +1 -1
  172. package/dist/esm/components/Icon/components/LedgerCardManualCustomerInvoice.js.map +1 -1
  173. package/dist/esm/components/Icon/components/LedgerCardObsoleteStock.js.map +1 -1
  174. package/dist/esm/components/Icon/components/LedgerCardOpeningEntry.js.map +1 -1
  175. package/dist/esm/components/Icon/components/LedgerCardReservedEntry.js.map +1 -1
  176. package/dist/esm/components/Icon/components/LedgerCardShrinkagePilferage.js.map +1 -1
  177. package/dist/esm/components/Icon/components/LedgerCardStockAdjustment.js.map +1 -1
  178. package/dist/esm/components/Icon/components/LedgerCardTransferredOpeningEntry.js.map +1 -1
  179. package/dist/esm/components/Icon/components/Lightbulb.js.map +1 -1
  180. package/dist/esm/components/Icon/components/Line.js.map +1 -1
  181. package/dist/esm/components/Icon/components/List.js.map +1 -1
  182. package/dist/esm/components/Icon/components/ListBulleted.js.map +1 -1
  183. package/dist/esm/components/Icon/components/ListSearch.js.map +1 -1
  184. package/dist/esm/components/Icon/components/LockOpen.js.map +1 -1
  185. package/dist/esm/components/Icon/components/Log.js.map +1 -1
  186. package/dist/esm/components/Icon/components/LogOut.js +20 -0
  187. package/dist/esm/components/Icon/components/LogOut.js.map +1 -0
  188. package/dist/esm/components/Icon/components/Market.js.map +1 -1
  189. package/dist/esm/components/Icon/components/MatchAmount.js.map +1 -1
  190. package/dist/esm/components/Icon/components/MatchEntries.js.map +1 -1
  191. package/dist/esm/components/Icon/components/Menu.js +18 -0
  192. package/dist/esm/components/Icon/components/Menu.js.map +1 -0
  193. package/dist/esm/components/Icon/components/Mileage.js.map +1 -1
  194. package/dist/esm/components/Icon/components/ModalResize.js.map +1 -1
  195. package/dist/esm/components/Icon/components/ModalShrink.js.map +1 -1
  196. package/dist/esm/components/Icon/components/More.js.map +1 -1
  197. package/dist/esm/components/Icon/components/MoreSolid.js.map +1 -1
  198. package/dist/esm/components/Icon/components/Move.js.map +1 -1
  199. package/dist/esm/components/Icon/components/NavigationList.js.map +1 -1
  200. package/dist/esm/components/Icon/components/Note.js.map +1 -1
  201. package/dist/esm/components/Icon/components/NoteFollowUp.js.map +1 -1
  202. package/dist/esm/components/Icon/components/NoteRead.js.map +1 -1
  203. package/dist/esm/components/Icon/components/PartnerApi.js.map +1 -1
  204. package/dist/esm/components/Icon/components/Period.js.map +1 -1
  205. package/dist/esm/components/Icon/components/PersonChange.js.map +1 -1
  206. package/dist/esm/components/Icon/components/PersonMinus.js.map +1 -1
  207. package/dist/esm/components/Icon/components/PersonPlus.js.map +1 -1
  208. package/dist/esm/components/Icon/components/PersonTick.js.map +1 -1
  209. package/dist/esm/components/Icon/components/Play.js.map +1 -1
  210. package/dist/esm/components/Icon/components/PlusMinus.js.map +1 -1
  211. package/dist/esm/components/Icon/components/Print.js.map +1 -1
  212. package/dist/esm/components/Icon/components/ProcessPayment.js.map +1 -1
  213. package/dist/esm/components/Icon/components/ProductLedgerCard.js.map +1 -1
  214. package/dist/esm/components/Icon/components/Profile.js +20 -0
  215. package/dist/esm/components/Icon/components/Profile.js.map +1 -0
  216. package/dist/esm/components/Icon/components/ProjectCards.js.map +1 -1
  217. package/dist/esm/components/Icon/components/Projects.js.map +1 -1
  218. package/dist/esm/components/Icon/components/Quicklinks.js.map +1 -1
  219. package/dist/esm/components/Icon/components/RatingBankruptcy.js.map +1 -1
  220. package/dist/esm/components/Icon/components/RatingPaymentProblems.js.map +1 -1
  221. package/dist/esm/components/Icon/components/Reconciled.js.map +1 -1
  222. package/dist/esm/components/Icon/components/Refresh.js.map +1 -1
  223. package/dist/esm/components/Icon/components/Report.js.map +1 -1
  224. package/dist/esm/components/Icon/components/ReportSolid.js.map +1 -1
  225. package/dist/esm/components/Icon/components/Restore.js.map +1 -1
  226. package/dist/esm/components/Icon/components/RotateLeft.js.map +1 -1
  227. package/dist/esm/components/Icon/components/RotateRight.js.map +1 -1
  228. package/dist/esm/components/Icon/components/Sales.js.map +1 -1
  229. package/dist/esm/components/Icon/components/Search.js.map +1 -1
  230. package/dist/esm/components/Icon/components/SearchBold.js.map +1 -1
  231. package/dist/esm/components/Icon/components/Secure.js.map +1 -1
  232. package/dist/esm/components/Icon/components/SecureTick.js.map +1 -1
  233. package/dist/esm/components/Icon/components/Settings.js.map +1 -1
  234. package/dist/esm/components/Icon/components/SettingsSolid.js.map +1 -1
  235. package/dist/esm/components/Icon/components/Shortcuts.js.map +1 -1
  236. package/dist/esm/components/Icon/components/ShowAll.js.map +1 -1
  237. package/dist/esm/components/Icon/components/ShowLess.js.map +1 -1
  238. package/dist/esm/components/Icon/components/ShowMore.js.map +1 -1
  239. package/dist/esm/components/Icon/components/ShowTemplate.js.map +1 -1
  240. package/dist/esm/components/Icon/components/Sliders.js.map +1 -1
  241. package/dist/esm/components/Icon/components/Smartpay.js.map +1 -1
  242. package/dist/esm/components/Icon/components/SortBy.js.map +1 -1
  243. package/dist/esm/components/Icon/components/Spinner.js.map +1 -1
  244. package/dist/esm/components/Icon/components/Star.js.map +1 -1
  245. package/dist/esm/components/Icon/components/StarSolid.js.map +1 -1
  246. package/dist/esm/components/Icon/components/Subscriptions.js.map +1 -1
  247. package/dist/esm/components/Icon/components/SystemEntries.js.map +1 -1
  248. package/dist/esm/components/Icon/components/Tag.js.map +1 -1
  249. package/dist/esm/components/Icon/components/TemplateOverride.js.map +1 -1
  250. package/dist/esm/components/Icon/components/Templates.js.map +1 -1
  251. package/dist/esm/components/Icon/components/ThumbBoth.js.map +1 -1
  252. package/dist/esm/components/Icon/components/ThumbDown.js.map +1 -1
  253. package/dist/esm/components/Icon/components/ThumbDownSolid.js.map +1 -1
  254. package/dist/esm/components/Icon/components/ThumbUp.js.map +1 -1
  255. package/dist/esm/components/Icon/components/ThumbUpSolid.js.map +1 -1
  256. package/dist/esm/components/Icon/components/Tick.js.map +1 -1
  257. package/dist/esm/components/Icon/components/Time.js.map +1 -1
  258. package/dist/esm/components/Icon/components/Transfer.js.map +1 -1
  259. package/dist/esm/components/Icon/components/TransferCancel.js.map +1 -1
  260. package/dist/esm/components/Icon/components/TransferLocked.js.map +1 -1
  261. package/dist/esm/components/Icon/components/Undock.js.map +1 -1
  262. package/dist/esm/components/Icon/components/Unreconciled.js.map +1 -1
  263. package/dist/esm/components/Icon/components/Warning.js.map +1 -1
  264. package/dist/esm/components/Icon/components/Webshop.js.map +1 -1
  265. package/dist/esm/components/Icon/components/Website.js.map +1 -1
  266. package/dist/esm/components/Icon/components/Workflow.js.map +1 -1
  267. package/dist/esm/components/Icon/components/Zoom.js.map +1 -1
  268. package/dist/esm/components/Icon/components/index.js +10 -4
  269. package/dist/esm/components/Icon/components/index.js.map +1 -1
  270. package/dist/esm/components/IconButton/IconButton.js +9 -11
  271. package/dist/esm/components/IconButton/IconButton.js.map +1 -1
  272. package/dist/esm/components/Input/Input.js +25 -25
  273. package/dist/esm/components/Input/Input.js.map +1 -1
  274. package/dist/esm/components/Input/util.js +2 -2
  275. package/dist/esm/components/Input/util.js.map +1 -1
  276. package/dist/esm/components/Listbox/Listbox.js +24 -25
  277. package/dist/esm/components/Listbox/Listbox.js.map +1 -1
  278. package/dist/esm/components/Listbox/ScrollableList.js +64 -83
  279. package/dist/esm/components/Listbox/ScrollableList.js.map +1 -1
  280. package/dist/esm/components/Listbox/useListbox.js +51 -60
  281. package/dist/esm/components/Listbox/useListbox.js.map +1 -1
  282. package/dist/esm/components/Listbox/useMultiListbox.js +64 -91
  283. package/dist/esm/components/Listbox/useMultiListbox.js.map +1 -1
  284. package/dist/esm/components/Listbox/useTypeahead.js +10 -9
  285. package/dist/esm/components/Listbox/useTypeahead.js.map +1 -1
  286. package/dist/esm/components/Listbox/util.js +48 -85
  287. package/dist/esm/components/Listbox/util.js.map +1 -1
  288. package/dist/esm/components/Menu/Context.js +2 -2
  289. package/dist/esm/components/Menu/Context.js.map +1 -1
  290. package/dist/esm/components/Menu/Menu.js +16 -34
  291. package/dist/esm/components/Menu/Menu.js.map +1 -1
  292. package/dist/esm/components/Menu/components/Checkbox.js +8 -9
  293. package/dist/esm/components/Menu/components/Checkbox.js.map +1 -1
  294. package/dist/esm/components/Menu/components/Content.js +9 -11
  295. package/dist/esm/components/Menu/components/Content.js.map +1 -1
  296. package/dist/esm/components/Menu/components/Header.js +3 -3
  297. package/dist/esm/components/Menu/components/Header.js.map +1 -1
  298. package/dist/esm/components/Menu/components/Item.js +30 -31
  299. package/dist/esm/components/Menu/components/Item.js.map +1 -1
  300. package/dist/esm/components/Menu/components/Link.js +10 -11
  301. package/dist/esm/components/Menu/components/Link.js.map +1 -1
  302. package/dist/esm/components/Menu/components/RadioGroup.js +16 -18
  303. package/dist/esm/components/Menu/components/RadioGroup.js.map +1 -1
  304. package/dist/esm/components/Menu/components/Separator.js +1 -1
  305. package/dist/esm/components/Menu/components/Separator.js.map +1 -1
  306. package/dist/esm/components/Menu/components/Trigger.js +4 -4
  307. package/dist/esm/components/Menu/components/Trigger.js.map +1 -1
  308. package/dist/esm/components/Navigation/Navigation.js +35 -44
  309. package/dist/esm/components/Navigation/Navigation.js.map +1 -1
  310. package/dist/esm/components/Pagination/PageNumbers.js +23 -28
  311. package/dist/esm/components/Pagination/PageNumbers.js.map +1 -1
  312. package/dist/esm/components/Pagination/Pagination.js +39 -56
  313. package/dist/esm/components/Pagination/Pagination.js.map +1 -1
  314. package/dist/esm/components/Pagination/usePagination.js +7 -21
  315. package/dist/esm/components/Pagination/usePagination.js.map +1 -1
  316. package/dist/esm/components/Pagination/usePaginationShortcuts.js +9 -9
  317. package/dist/esm/components/Pagination/usePaginationShortcuts.js.map +1 -1
  318. package/dist/esm/components/Popover/Popover.js +29 -34
  319. package/dist/esm/components/Popover/Popover.js.map +1 -1
  320. package/dist/esm/components/Popover/Primitives.js +7 -8
  321. package/dist/esm/components/Popover/Primitives.js.map +1 -1
  322. package/dist/esm/components/Progress/Progress.js +11 -15
  323. package/dist/esm/components/Progress/Progress.js.map +1 -1
  324. package/dist/esm/components/Provider/Provider.js +13 -18
  325. package/dist/esm/components/Provider/Provider.js.map +1 -1
  326. package/dist/esm/components/RadioGroup/RadioGroup.js +45 -57
  327. package/dist/esm/components/RadioGroup/RadioGroup.js.map +1 -1
  328. package/dist/esm/components/SearchInput/SearchInput.js +12 -12
  329. package/dist/esm/components/SearchInput/SearchInput.js.map +1 -1
  330. package/dist/esm/components/Select/Select.js +30 -31
  331. package/dist/esm/components/Select/Select.js.map +1 -1
  332. package/dist/esm/components/Select/useSelect.js +63 -81
  333. package/dist/esm/components/Select/useSelect.js.map +1 -1
  334. package/dist/esm/components/Spinner/Spinner.js +12 -19
  335. package/dist/esm/components/Spinner/Spinner.js.map +1 -1
  336. package/dist/esm/components/Switch/Switch.js +9 -10
  337. package/dist/esm/components/Switch/Switch.js.map +1 -1
  338. package/dist/esm/components/Table/components/BaseTable.js +23 -30
  339. package/dist/esm/components/Table/components/BaseTable.js.map +1 -1
  340. package/dist/esm/components/Table/components/PaginatedTable.js +3 -7
  341. package/dist/esm/components/Table/components/PaginatedTable.js.map +1 -1
  342. package/dist/esm/components/Table/components/Table.js +18 -25
  343. package/dist/esm/components/Table/components/Table.js.map +1 -1
  344. package/dist/esm/components/Table/components/WindowedTable.js +89 -109
  345. package/dist/esm/components/Table/components/WindowedTable.js.map +1 -1
  346. package/dist/esm/components/Table/hooks/plugins/useRowActions.js +122 -146
  347. package/dist/esm/components/Table/hooks/plugins/useRowActions.js.map +1 -1
  348. package/dist/esm/components/Table/hooks/plugins/useRowDraggable.js +57 -61
  349. package/dist/esm/components/Table/hooks/plugins/useRowDraggable.js.map +1 -1
  350. package/dist/esm/components/Table/hooks/plugins/useRowEditing.js +39 -36
  351. package/dist/esm/components/Table/hooks/plugins/useRowEditing.js.map +1 -1
  352. package/dist/esm/components/Table/hooks/plugins/useRowSelect.js +79 -89
  353. package/dist/esm/components/Table/hooks/plugins/useRowSelect.js.map +1 -1
  354. package/dist/esm/components/Table/hooks/useRowCreation.js +29 -64
  355. package/dist/esm/components/Table/hooks/useRowCreation.js.map +1 -1
  356. package/dist/esm/components/Table/hooks/useTable.js +119 -141
  357. package/dist/esm/components/Table/hooks/useTable.js.map +1 -1
  358. package/dist/esm/components/Table/hooks/useTableKeyboardNavigation.js +13 -16
  359. package/dist/esm/components/Table/hooks/useTableKeyboardNavigation.js.map +1 -1
  360. package/dist/esm/components/Table/util/renderColumn.js +10 -10
  361. package/dist/esm/components/Table/util/renderColumn.js.map +1 -1
  362. package/dist/esm/components/Table/util/renderRow.js +37 -46
  363. package/dist/esm/components/Table/util/renderRow.js.map +1 -1
  364. package/dist/esm/components/Table/util/rowIndexPath.js +14 -16
  365. package/dist/esm/components/Table/util/rowIndexPath.js.map +1 -1
  366. package/dist/esm/components/Table/util/sortTypes.js +23 -31
  367. package/dist/esm/components/Table/util/sortTypes.js.map +1 -1
  368. package/dist/esm/components/Table/util.js +29 -41
  369. package/dist/esm/components/Table/util.js.map +1 -1
  370. package/dist/esm/components/Tabs/Tabs.js +25 -27
  371. package/dist/esm/components/Tabs/Tabs.js.map +1 -1
  372. package/dist/esm/components/Textarea/Textarea.js +11 -9
  373. package/dist/esm/components/Textarea/Textarea.js.map +1 -1
  374. package/dist/esm/components/Toast/Toast.js +20 -21
  375. package/dist/esm/components/Toast/Toast.js.map +1 -1
  376. package/dist/esm/components/Toast/Toaster.js +88 -118
  377. package/dist/esm/components/Toast/Toaster.js.map +1 -1
  378. package/dist/esm/components/Toast/util.js +2 -2
  379. package/dist/esm/components/Toast/util.js.map +1 -1
  380. package/dist/esm/components/Tooltip/Tooltip.js +7 -8
  381. package/dist/esm/components/Tooltip/Tooltip.js.map +1 -1
  382. package/dist/esm/components/Tour/Tour.js +44 -50
  383. package/dist/esm/components/Tour/Tour.js.map +1 -1
  384. package/dist/esm/components/Treeview/Treeview.js +26 -36
  385. package/dist/esm/components/Treeview/Treeview.js.map +1 -1
  386. package/dist/esm/components/VisuallyHidden/VisuallyHidden.js +1 -1
  387. package/dist/esm/components/VisuallyHidden/VisuallyHidden.js.map +1 -1
  388. package/dist/esm/index.css +661 -661
  389. package/dist/esm/index.js +2 -1
  390. package/dist/esm/index.js.map +1 -1
  391. package/dist/esm/primitives/Button.js +9 -13
  392. package/dist/esm/primitives/Button.js.map +1 -1
  393. package/dist/esm/utils/date.js.map +1 -1
  394. package/dist/esm/utils/hooks/useBoundingClientRectListener.js.map +1 -1
  395. package/dist/esm/utils/hooks/useDraggable.js +16 -17
  396. package/dist/esm/utils/hooks/useDraggable.js.map +1 -1
  397. package/dist/esm/utils/hooks/useDropTarget.js +7 -10
  398. package/dist/esm/utils/hooks/useDropTarget.js.map +1 -1
  399. package/dist/esm/utils/hooks/useListKeyboardNavigation.js.map +1 -1
  400. package/dist/esm/utils/hooks/useListScrollTo.js.map +1 -1
  401. package/dist/esm/utils/hooks/useOnClickOutside.js.map +1 -1
  402. package/dist/esm/utils/hooks/useProxiedRef.js.map +1 -1
  403. package/dist/esm/utils/hooks/useTimer.js +9 -17
  404. package/dist/esm/utils/hooks/useTimer.js.map +1 -1
  405. package/dist/esm/utils/input.js +7 -11
  406. package/dist/esm/utils/input.js.map +1 -1
  407. package/dist/esm/utils/mergeRefs.js +2 -2
  408. package/dist/esm/utils/mergeRefs.js.map +1 -1
  409. package/dist/esm/utils/taillwind.js +2 -2
  410. package/dist/esm/utils/taillwind.js.map +1 -1
  411. package/dist/index.css +661 -661
  412. package/dist/index.d.ts +1 -0
  413. package/dist/taco.cjs.development.js +2254 -2690
  414. package/dist/taco.cjs.development.js.map +1 -1
  415. package/dist/taco.cjs.production.min.js +1 -1
  416. package/dist/taco.cjs.production.min.js.map +1 -1
  417. package/package.json +130 -131
  418. package/plugins/tailwindcss-aria-attributes.js +73 -73
  419. package/tailwind.config.js +260 -255
  420. package/types.json +5 -2
@@ -1,4 +1,3 @@
1
- import { objectWithoutPropertiesLoose as _objectWithoutPropertiesLoose } from '../../_virtual/_rollupPluginBabelHelpers.js';
2
1
  import { forwardRef, createElement } from 'react';
3
2
  import cn from 'classnames';
4
3
  import { IconButton } from '../IconButton/IconButton.js';
@@ -8,23 +7,23 @@ import { Input } from '../Input/Input.js';
8
7
  import { useDatepicker } from './useDatepicker.js';
9
8
  import { Popover } from '../Popover/Popover.js';
10
9
 
11
- var _excluded = ["className", "onReset", "style", "shortcuts", "shortcutsText"];
12
- var Datepicker = /*#__PURE__*/forwardRef(function Datepicker(props, ref) {
13
- var externalClassName = props.className,
14
- handleReset = props.onReset,
15
- style = props.style,
16
- shortcuts = props.shortcuts,
17
- shortcutsText = props.shortcutsText,
18
- otherProps = _objectWithoutPropertiesLoose(props, _excluded);
19
-
20
- var _useDatepicker = useDatepicker(otherProps, ref),
21
- calendar = _useDatepicker.calendar,
22
- input = _useDatepicker.input;
23
-
24
- var _useLocalization = useLocalization(),
25
- texts = _useLocalization.texts;
26
-
27
- var className = cn('inline-flex w-full text-black font-normal', externalClassName);
10
+ const Datepicker = /*#__PURE__*/forwardRef(function Datepicker(props, ref) {
11
+ const {
12
+ className: externalClassName,
13
+ onReset: handleReset,
14
+ style,
15
+ shortcuts,
16
+ shortcutsText,
17
+ ...otherProps
18
+ } = props;
19
+ const {
20
+ calendar,
21
+ input
22
+ } = useDatepicker(otherProps, ref);
23
+ const {
24
+ texts
25
+ } = useLocalization();
26
+ const className = cn('inline-flex w-full text-black font-normal', externalClassName);
28
27
  return createElement("span", {
29
28
  className: className,
30
29
  "data-taco": "datepicker",
@@ -34,40 +33,37 @@ var Datepicker = /*#__PURE__*/forwardRef(function Datepicker(props, ref) {
34
33
  "aria-label": texts.datepicker.expand,
35
34
  disabled: input.disabled || input.readOnly,
36
35
  icon: "calendar"
37
- })), createElement(Popover.Content, null, function (_ref) {
38
- var close = _ref.close;
39
- return createElement("div", {
40
- className: "-m-3 flex"
41
- }, createElement(Calendar, Object.assign({}, calendar, {
42
- onChange: function onChange(date, event) {
43
- calendar.onChange(date, event);
44
- close();
45
- },
46
- tabIndex: -1
47
- })), shortcuts && createElement("div", {
48
- className: "border-grey-dark flex flex-col border-l"
49
- }, createElement("span", {
50
- className: "m-4 mb-3 flex h-8 w-32 items-center text-xs font-semibold"
51
- }, shortcutsText !== null && shortcutsText !== void 0 ? shortcutsText : texts.datepicker.shortcuts), createElement("ul", null, shortcuts.map(function (shortcut, i) {
52
- return createElement("li", {
53
- key: i
54
- }, createElement("button", {
55
- className: "hover:bg-grey-light flex w-full items-start px-4 py-1 text-xs",
56
- onClick: function onClick(event) {
57
- event.persist();
58
- shortcut.onClick(event);
59
- close();
60
- }
61
- }, shortcut.text));
62
- })), handleReset && createElement("button", {
63
- className: "text-blue hover:text-blue-light my-4 mx-auto mt-auto inline-flex cursor-pointer border-none bg-transparent text-xs",
64
- onClick: function onClick(event) {
65
- event.persist();
66
- handleReset(event);
67
- close();
68
- }
69
- }, texts.datepicker.clear)));
70
- }))
36
+ })), createElement(Popover.Content, null, ({
37
+ close
38
+ }) => createElement("div", {
39
+ className: "-m-3 flex"
40
+ }, createElement(Calendar, Object.assign({}, calendar, {
41
+ onChange: (date, event) => {
42
+ calendar.onChange(date, event);
43
+ close();
44
+ },
45
+ tabIndex: -1
46
+ })), shortcuts && createElement("div", {
47
+ className: "border-grey-dark flex flex-col border-l"
48
+ }, createElement("span", {
49
+ className: "m-4 mb-3 flex h-8 w-32 items-center text-xs font-semibold"
50
+ }, shortcutsText !== null && shortcutsText !== void 0 ? shortcutsText : texts.datepicker.shortcuts), createElement("ul", null, shortcuts.map((shortcut, i) => createElement("li", {
51
+ key: i
52
+ }, createElement("button", {
53
+ className: "hover:bg-grey-light flex w-full items-start px-4 py-1 text-xs",
54
+ onClick: event => {
55
+ event.persist();
56
+ shortcut.onClick(event);
57
+ close();
58
+ }
59
+ }, shortcut.text)))), handleReset && createElement("button", {
60
+ className: "text-blue hover:text-blue-light my-4 mx-auto mt-auto inline-flex cursor-pointer border-none bg-transparent text-xs",
61
+ onClick: event => {
62
+ event.persist();
63
+ handleReset(event);
64
+ close();
65
+ }
66
+ }, texts.datepicker.clear)))))
71
67
  })));
72
68
  });
73
69
 
@@ -1 +1 @@
1
- {"version":3,"file":"Datepicker.js","sources":["../../../../src/components/Datepicker/Datepicker.tsx"],"sourcesContent":["import * as React from 'react';\nimport cn from 'classnames';\nimport { Calendar, CalendarProps } from '../Calendar/Calendar';\nimport { Input, InputProps } from '../Input/Input';\nimport { useLocalization } from '../Provider/Provider';\nimport { useDatepicker } from './useDatepicker';\nimport { IconButton } from '../IconButton/IconButton';\nimport { Popover } from '../Popover/Popover';\n\nexport type DatepickerTexts = {\n /** Aria-label for calendar */\n calendar: string;\n /** Clear button text */\n clear: string;\n /**\n * Aria-label for calendar icon button in the input.\n * Calendar will open when user clicks this icon button.\n */\n expand: string;\n /** Shortcut heading text */\n shortcuts: string;\n};\n\nexport type DatepickerProps = Omit<InputProps, 'value'> & {\n /** [Calendar](component:calendar) component associated with the DatePicker */\n calendar?: CalendarProps;\n /** List of shortcuts */\n shortcuts?: any;\n /** Title for the shortcuts panel */\n shortcutsText?: string;\n /** Handler to be called when the clear button is clicked */\n onReset?: (event: React.MouseEvent<HTMLButtonElement>) => void;\n /**\n * Date value of the calendar.\n * This will be displayed in DatePicker's input in the format given to the [Provider](component:provider) component\n */\n value?: Date;\n};\n\nexport const Datepicker = React.forwardRef(function Datepicker(props: DatepickerProps, ref: React.Ref<HTMLInputElement>) {\n const { className: externalClassName, onReset: handleReset, style, shortcuts, shortcutsText, ...otherProps } = props;\n const { calendar, input } = useDatepicker(otherProps, ref);\n const { texts } = useLocalization();\n const className = cn('inline-flex w-full text-black font-normal', externalClassName);\n\n return (\n <span className={className} data-taco=\"datepicker\" style={style}>\n <Input\n {...input}\n button={\n <Popover>\n <Popover.Trigger>\n <IconButton\n aria-label={texts.datepicker.expand}\n disabled={input.disabled || input.readOnly}\n icon=\"calendar\"\n />\n </Popover.Trigger>\n <Popover.Content>\n {({ close }) => (\n <div className=\"-m-3 flex\">\n <Calendar\n {...calendar}\n onChange={(date: Date, event?: React.MouseEvent<HTMLDivElement>) => {\n calendar.onChange(date, event);\n close();\n }}\n tabIndex={-1}\n />\n {shortcuts && (\n <div className=\"border-grey-dark flex flex-col border-l\">\n <span className=\"m-4 mb-3 flex h-8 w-32 items-center text-xs font-semibold\">\n {shortcutsText ?? texts.datepicker.shortcuts}\n </span>\n <ul>\n {shortcuts.map((shortcut, i) => (\n <li key={i}>\n <button\n className=\"hover:bg-grey-light flex w-full items-start px-4 py-1 text-xs\"\n onClick={event => {\n event.persist();\n shortcut.onClick(event);\n close();\n }}\n >\n {shortcut.text}\n </button>\n </li>\n ))}\n </ul>\n {handleReset && (\n <button\n className=\"text-blue hover:text-blue-light my-4 mx-auto mt-auto inline-flex cursor-pointer border-none bg-transparent text-xs\"\n onClick={event => {\n event.persist();\n handleReset(event);\n close();\n }}\n >\n {texts.datepicker.clear}\n </button>\n )}\n </div>\n )}\n </div>\n )}\n </Popover.Content>\n </Popover>\n }\n />\n </span>\n );\n});\n"],"names":["Datepicker","React","props","ref","externalClassName","className","handleReset","onReset","style","shortcuts","shortcutsText","otherProps","useDatepicker","calendar","input","useLocalization","texts","cn","Input","button","Popover","Trigger","IconButton","datepicker","expand","disabled","readOnly","icon","Content","close","Calendar","onChange","date","event","tabIndex","map","shortcut","i","key","onClick","persist","text","clear"],"mappings":";;;;;;;;;;;IAuCaA,UAAU,gBAAGC,UAAA,CAAiB,SAASD,UAAT,CAAoBE,KAApB,EAA4CC,GAA5C;EACvC,IAAmBC,iBAAnB,GAA+GF,KAA/G,CAAQG,SAAR;MAA+CC,WAA/C,GAA+GJ,KAA/G,CAAsCK,OAAtC;MAA4DC,KAA5D,GAA+GN,KAA/G,CAA4DM,KAA5D;MAAmEC,SAAnE,GAA+GP,KAA/G,CAAmEO,SAAnE;MAA8EC,aAA9E,GAA+GR,KAA/G,CAA8EQ,aAA9E;MAAgGC,UAAhG,iCAA+GT,KAA/G;;EACA,qBAA4BU,aAAa,CAACD,UAAD,EAAaR,GAAb,CAAzC;MAAQU,QAAR,kBAAQA,QAAR;MAAkBC,KAAlB,kBAAkBA,KAAlB;;EACA,uBAAkBC,eAAe,EAAjC;MAAQC,KAAR,oBAAQA,KAAR;;EACA,IAAMX,SAAS,GAAGY,EAAE,CAAC,2CAAD,EAA8Cb,iBAA9C,CAApB;EAEA,OACIH,aAAA,OAAA;IAAMI,SAAS,EAAEA;iBAAqB;IAAaG,KAAK,EAAEA;GAA1D,EACIP,aAAA,CAACiB,KAAD,oBACQJ;IACJK,MAAM,EACFlB,aAAA,CAACmB,OAAD,MAAA,EACInB,aAAA,CAACmB,OAAO,CAACC,OAAT,MAAA,EACIpB,aAAA,CAACqB,UAAD;oBACgBN,KAAK,CAACO,UAAN,CAAiBC;MAC7BC,QAAQ,EAAEX,KAAK,CAACW,QAAN,IAAkBX,KAAK,CAACY;MAClCC,IAAI,EAAC;KAHT,CADJ,CADJ,EAQI1B,aAAA,CAACmB,OAAO,CAACQ,OAAT,MAAA,EACK;MAAA,IAAGC,KAAH,QAAGA,KAAH;MAAA,OACG5B,aAAA,MAAA;QAAKI,SAAS,EAAC;OAAf,EACIJ,aAAA,CAAC6B,QAAD,oBACQjB;QACJkB,QAAQ,EAAE,kBAACC,IAAD,EAAaC,KAAb;UACNpB,QAAQ,CAACkB,QAAT,CAAkBC,IAAlB,EAAwBC,KAAxB;UACAJ,KAAK;;QAETK,QAAQ,EAAE,CAAC;QANf,CADJ,EASKzB,SAAS,IACNR,aAAA,MAAA;QAAKI,SAAS,EAAC;OAAf,EACIJ,aAAA,OAAA;QAAMI,SAAS,EAAC;OAAhB,EACKK,aADL,aACKA,aADL,cACKA,aADL,GACsBM,KAAK,CAACO,UAAN,CAAiBd,SADvC,CADJ,EAIIR,aAAA,KAAA,MAAA,EACKQ,SAAS,CAAC0B,GAAV,CAAc,UAACC,QAAD,EAAWC,CAAX;QAAA,OACXpC,aAAA,KAAA;UAAIqC,GAAG,EAAED;SAAT,EACIpC,aAAA,SAAA;UACII,SAAS,EAAC;UACVkC,OAAO,EAAE,iBAAAN,KAAK;YACVA,KAAK,CAACO,OAAN;YACAJ,QAAQ,CAACG,OAAT,CAAiBN,KAAjB;YACAJ,KAAK;;SALb,EAQKO,QAAQ,CAACK,IARd,CADJ,CADW;OAAd,CADL,CAJJ,EAoBKnC,WAAW,IACRL,aAAA,SAAA;QACII,SAAS,EAAC;QACVkC,OAAO,EAAE,iBAAAN,KAAK;UACVA,KAAK,CAACO,OAAN;UACAlC,WAAW,CAAC2B,KAAD,CAAX;UACAJ,KAAK;;OALb,EAQKb,KAAK,CAACO,UAAN,CAAiBmB,KARtB,CArBR,CAVR,CADH;KADL,CARJ;IAHR,CADJ,CADJ;AAmEH,CAzEyB;;;;"}
1
+ {"version":3,"file":"Datepicker.js","sources":["../../../../src/components/Datepicker/Datepicker.tsx"],"sourcesContent":["import * as React from 'react';\r\nimport cn from 'classnames';\r\nimport { Calendar, CalendarProps } from '../Calendar/Calendar';\r\nimport { Input, InputProps } from '../Input/Input';\r\nimport { useLocalization } from '../Provider/Provider';\r\nimport { useDatepicker } from './useDatepicker';\r\nimport { IconButton } from '../IconButton/IconButton';\r\nimport { Popover } from '../Popover/Popover';\r\n\r\nexport type DatepickerTexts = {\r\n /** Aria-label for calendar */\r\n calendar: string;\r\n /** Clear button text */\r\n clear: string;\r\n /**\r\n * Aria-label for calendar icon button in the input.\r\n * Calendar will open when user clicks this icon button.\r\n */\r\n expand: string;\r\n /** Shortcut heading text */\r\n shortcuts: string;\r\n};\r\n\r\nexport type DatepickerProps = Omit<InputProps, 'value'> & {\r\n /** [Calendar](component:calendar) component associated with the DatePicker */\r\n calendar?: CalendarProps;\r\n /** List of shortcuts */\r\n shortcuts?: any;\r\n /** Title for the shortcuts panel */\r\n shortcutsText?: string;\r\n /** Handler to be called when the clear button is clicked */\r\n onReset?: (event: React.MouseEvent<HTMLButtonElement>) => void;\r\n /**\r\n * Date value of the calendar.\r\n * This will be displayed in DatePicker's input in the format given to the [Provider](component:provider) component\r\n */\r\n value?: Date;\r\n};\r\n\r\nexport const Datepicker = React.forwardRef(function Datepicker(props: DatepickerProps, ref: React.Ref<HTMLInputElement>) {\r\n const { className: externalClassName, onReset: handleReset, style, shortcuts, shortcutsText, ...otherProps } = props;\r\n const { calendar, input } = useDatepicker(otherProps, ref);\r\n const { texts } = useLocalization();\r\n const className = cn('inline-flex w-full text-black font-normal', externalClassName);\r\n\r\n return (\r\n <span className={className} data-taco=\"datepicker\" style={style}>\r\n <Input\r\n {...input}\r\n button={\r\n <Popover>\r\n <Popover.Trigger>\r\n <IconButton\r\n aria-label={texts.datepicker.expand}\r\n disabled={input.disabled || input.readOnly}\r\n icon=\"calendar\"\r\n />\r\n </Popover.Trigger>\r\n <Popover.Content>\r\n {({ close }) => (\r\n <div className=\"-m-3 flex\">\r\n <Calendar\r\n {...calendar}\r\n onChange={(date: Date, event?: React.MouseEvent<HTMLDivElement>) => {\r\n calendar.onChange(date, event);\r\n close();\r\n }}\r\n tabIndex={-1}\r\n />\r\n {shortcuts && (\r\n <div className=\"border-grey-dark flex flex-col border-l\">\r\n <span className=\"m-4 mb-3 flex h-8 w-32 items-center text-xs font-semibold\">\r\n {shortcutsText ?? texts.datepicker.shortcuts}\r\n </span>\r\n <ul>\r\n {shortcuts.map((shortcut, i) => (\r\n <li key={i}>\r\n <button\r\n className=\"hover:bg-grey-light flex w-full items-start px-4 py-1 text-xs\"\r\n onClick={event => {\r\n event.persist();\r\n shortcut.onClick(event);\r\n close();\r\n }}\r\n >\r\n {shortcut.text}\r\n </button>\r\n </li>\r\n ))}\r\n </ul>\r\n {handleReset && (\r\n <button\r\n className=\"text-blue hover:text-blue-light my-4 mx-auto mt-auto inline-flex cursor-pointer border-none bg-transparent text-xs\"\r\n onClick={event => {\r\n event.persist();\r\n handleReset(event);\r\n close();\r\n }}\r\n >\r\n {texts.datepicker.clear}\r\n </button>\r\n )}\r\n </div>\r\n )}\r\n </div>\r\n )}\r\n </Popover.Content>\r\n </Popover>\r\n }\r\n />\r\n </span>\r\n );\r\n});\r\n"],"names":["Datepicker","React","props","ref","className","externalClassName","onReset","handleReset","style","shortcuts","shortcutsText","otherProps","calendar","input","useDatepicker","texts","useLocalization","cn","Input","button","Popover","Trigger","IconButton","datepicker","expand","disabled","readOnly","icon","Content","close","Calendar","onChange","date","event","tabIndex","map","shortcut","i","key","onClick","persist","text","clear"],"mappings":";;;;;;;;;MAuCaA,UAAU,gBAAGC,UAAA,CAAiB,SAASD,UAAT,CAAoBE,KAApB,EAA4CC,GAA5C;EACvC,MAAM;IAAEC,SAAS,EAAEC,iBAAb;IAAgCC,OAAO,EAAEC,WAAzC;IAAsDC,KAAtD;IAA6DC,SAA7D;IAAwEC,aAAxE;IAAuF,GAAGC;MAAeT,KAA/G;EACA,MAAM;IAAEU,QAAF;IAAYC;MAAUC,aAAa,CAACH,UAAD,EAAaR,GAAb,CAAzC;EACA,MAAM;IAAEY;MAAUC,eAAe,EAAjC;EACA,MAAMZ,SAAS,GAAGa,EAAE,CAAC,2CAAD,EAA8CZ,iBAA9C,CAApB;EAEA,OACIJ,aAAA,OAAA;IAAMG,SAAS,EAAEA;iBAAqB;IAAaI,KAAK,EAAEA;GAA1D,EACIP,aAAA,CAACiB,KAAD,oBACQL;IACJM,MAAM,EACFlB,aAAA,CAACmB,OAAD,MAAA,EACInB,aAAA,CAACmB,OAAO,CAACC,OAAT,MAAA,EACIpB,aAAA,CAACqB,UAAD;oBACgBP,KAAK,CAACQ,UAAN,CAAiBC;MAC7BC,QAAQ,EAAEZ,KAAK,CAACY,QAAN,IAAkBZ,KAAK,CAACa;MAClCC,IAAI,EAAC;KAHT,CADJ,CADJ,EAQI1B,aAAA,CAACmB,OAAO,CAACQ,OAAT,MAAA,EACK,CAAC;MAAEC;KAAH,KACG5B,aAAA,MAAA;MAAKG,SAAS,EAAC;KAAf,EACIH,aAAA,CAAC6B,QAAD,oBACQlB;MACJmB,QAAQ,EAAE,CAACC,IAAD,EAAaC,KAAb;QACNrB,QAAQ,CAACmB,QAAT,CAAkBC,IAAlB,EAAwBC,KAAxB;QACAJ,KAAK;;MAETK,QAAQ,EAAE,CAAC;MANf,CADJ,EASKzB,SAAS,IACNR,aAAA,MAAA;MAAKG,SAAS,EAAC;KAAf,EACIH,aAAA,OAAA;MAAMG,SAAS,EAAC;KAAhB,EACKM,aADL,aACKA,aADL,cACKA,aADL,GACsBK,KAAK,CAACQ,UAAN,CAAiBd,SADvC,CADJ,EAIIR,aAAA,KAAA,MAAA,EACKQ,SAAS,CAAC0B,GAAV,CAAc,CAACC,QAAD,EAAWC,CAAX,KACXpC,aAAA,KAAA;MAAIqC,GAAG,EAAED;KAAT,EACIpC,aAAA,SAAA;MACIG,SAAS,EAAC;MACVmC,OAAO,EAAEN,KAAK;QACVA,KAAK,CAACO,OAAN;QACAJ,QAAQ,CAACG,OAAT,CAAiBN,KAAjB;QACAJ,KAAK;;KALb,EAQKO,QAAQ,CAACK,IARd,CADJ,CADH,CADL,CAJJ,EAoBKlC,WAAW,IACRN,aAAA,SAAA;MACIG,SAAS,EAAC;MACVmC,OAAO,EAAEN,KAAK;QACVA,KAAK,CAACO,OAAN;QACAjC,WAAW,CAAC0B,KAAD,CAAX;QACAJ,KAAK;;KALb,EAQKd,KAAK,CAACQ,UAAN,CAAiBmB,KARtB,CArBR,CAVR,CAFR,CARJ;IAHR,CADJ,CADJ;AAmEH,CAzEyB;;;;"}
@@ -1,31 +1,26 @@
1
- import { objectWithoutPropertiesLoose as _objectWithoutPropertiesLoose, extends as _extends } from '../../_virtual/_rollupPluginBabelHelpers.js';
2
1
  import { useState, useEffect } from 'react';
3
2
  import { useLocalization } from '../Provider/Provider.js';
4
3
  import { useProxiedRef } from '../../utils/hooks/useProxiedRef.js';
5
4
  import { setInputValueByRef } from '../../utils/input.js';
6
5
  import { format, parseFromCustomString } from '../../utils/date.js';
7
6
 
8
- var _excluded = ["defaultValue", "calendar", "onBlur", "onChange", "value"];
9
- var useDatepicker = function useDatepicker(_ref, ref) {
10
- var calendar = _ref.calendar,
11
- onBlur = _ref.onBlur,
12
- onChange = _ref.onChange,
13
- value = _ref.value,
14
- props = _objectWithoutPropertiesLoose(_ref, _excluded);
15
-
16
- var inputRef = useProxiedRef(ref);
17
-
18
- var _useLocalization = useLocalization(),
19
- formatting = _useLocalization.formatting;
20
-
21
- var _React$useState = useState(value ? format(value, formatting.date) : ''),
22
- internalValue = _React$useState[0],
23
- setInternalValue = _React$useState[1]; // update internal value if it changed 'externally'
24
-
25
-
26
- useEffect(function () {
7
+ const useDatepicker = ({
8
+ defaultValue: _,
9
+ calendar,
10
+ onBlur,
11
+ onChange,
12
+ value,
13
+ ...props
14
+ }, ref) => {
15
+ const inputRef = useProxiedRef(ref);
16
+ const {
17
+ formatting
18
+ } = useLocalization();
19
+ const [internalValue, setInternalValue] = useState(value ? format(value, formatting.date) : ''); // update internal value if it changed 'externally'
20
+
21
+ useEffect(() => {
27
22
  if (value) {
28
- var formattedValue = format(value, formatting.date);
23
+ const formattedValue = format(value, formatting.date);
29
24
 
30
25
  if (formattedValue !== internalValue) {
31
26
  setInternalValue(formattedValue);
@@ -35,10 +30,10 @@ var useDatepicker = function useDatepicker(_ref, ref) {
35
30
  }
36
31
  }, [value]); // event handlers
37
32
 
38
- var handleInputBlur = function handleInputBlur(event) {
33
+ const handleInputBlur = event => {
39
34
  event.persist();
40
- var valueAsDate = parseFromCustomString(event.target.value);
41
- var formattedValue = valueAsDate ? format(valueAsDate) || '' : '';
35
+ const valueAsDate = parseFromCustomString(event.target.value);
36
+ const formattedValue = valueAsDate ? format(valueAsDate) || '' : '';
42
37
  event.target.value = formattedValue;
43
38
 
44
39
  if (onChange) {
@@ -54,15 +49,15 @@ var useDatepicker = function useDatepicker(_ref, ref) {
54
49
  }
55
50
  };
56
51
 
57
- var handleInputChange = function handleInputChange(event) {
52
+ const handleInputChange = event => {
58
53
  setInternalValue(event.target.value);
59
54
  };
60
55
 
61
- var handleChange = function handleChange(date) {
56
+ const handleChange = date => {
62
57
  setInputValueByRef(inputRef.current, format(date, formatting.date), 'focusout');
63
58
  };
64
59
 
65
- var handleKeyDown = function handleKeyDown(event) {
60
+ const handleKeyDown = event => {
66
61
  if (event.key === 'Enter') {
67
62
  event.target.dispatchEvent(new Event('focusout', {
68
63
  bubbles: true
@@ -70,7 +65,7 @@ var useDatepicker = function useDatepicker(_ref, ref) {
70
65
  }
71
66
  };
72
67
 
73
- var inputProps = _extends({}, props, {
68
+ const inputProps = { ...props,
74
69
  autoComplete: 'off',
75
70
  onBlur: handleInputBlur,
76
71
  onChange: handleInputChange,
@@ -78,13 +73,11 @@ var useDatepicker = function useDatepicker(_ref, ref) {
78
73
  ref: inputRef,
79
74
  type: 'text',
80
75
  value: internalValue
81
- });
82
-
83
- var calendarProps = _extends({}, calendar, {
76
+ };
77
+ const calendarProps = { ...calendar,
84
78
  onChange: handleChange,
85
- value: value
86
- });
87
-
79
+ value
80
+ };
88
81
  return {
89
82
  input: inputProps,
90
83
  calendar: calendarProps
@@ -1 +1 @@
1
- {"version":3,"file":"useDatepicker.js","sources":["../../../../src/components/Datepicker/useDatepicker.tsx"],"sourcesContent":["import * as React from 'react';\nimport { parseFromCustomString, format } from '../../utils/date';\nimport { useLocalization } from '../Provider/Provider';\nimport { setInputValueByRef } from '../../utils/input';\nimport { useProxiedRef } from '../../utils/hooks/useProxiedRef';\nimport { DatepickerProps } from './Datepicker';\nimport { CalendarProps } from '../Calendar/Calendar';\n\ntype InputProps = React.InputHTMLAttributes<HTMLInputElement> & { ref: React.RefObject<HTMLInputElement> };\n\ntype useDatepicker = React.HTMLAttributes<HTMLDivElement> & {\n calendar: CalendarProps;\n input: InputProps;\n};\n\nexport const useDatepicker = (\n { defaultValue: _, calendar, onBlur, onChange, value, ...props }: DatepickerProps,\n ref: React.Ref<HTMLInputElement>\n): useDatepicker => {\n const inputRef = useProxiedRef<HTMLInputElement>(ref);\n const { formatting } = useLocalization();\n const [internalValue, setInternalValue] = React.useState(value ? format(value, formatting.date) : '');\n\n // update internal value if it changed 'externally'\n React.useEffect(() => {\n if (value) {\n const formattedValue = format(value, formatting.date);\n\n if (formattedValue !== internalValue) {\n setInternalValue(formattedValue);\n }\n } else {\n setInternalValue('');\n }\n }, [value]);\n\n // event handlers\n const handleInputBlur = (event: React.FocusEvent<HTMLInputElement>): void => {\n event.persist();\n\n const valueAsDate = parseFromCustomString(event.target.value);\n const formattedValue = valueAsDate ? format(valueAsDate) || '' : '';\n\n event.target.value = formattedValue;\n\n if (onChange) {\n (event as any).detail = valueAsDate;\n onChange(event);\n } else {\n // update the internal value to use the formatted date\n setInternalValue(formattedValue);\n }\n\n if (onBlur) {\n onBlur(event);\n }\n };\n\n const handleInputChange = (event: React.ChangeEvent<HTMLInputElement>): void => {\n setInternalValue(event.target.value);\n };\n\n const handleChange = date => {\n setInputValueByRef(inputRef.current, format(date, formatting.date), 'focusout');\n };\n\n const handleKeyDown = (event: React.KeyboardEvent<HTMLInputElement>) => {\n if (event.key === 'Enter') {\n event.target.dispatchEvent(new Event('focusout', { bubbles: true }));\n }\n };\n\n const inputProps: InputProps = {\n ...props,\n autoComplete: 'off',\n onBlur: handleInputBlur,\n onChange: handleInputChange,\n onKeyDown: handleKeyDown,\n ref: inputRef,\n type: 'text',\n value: internalValue,\n };\n\n const calendarProps: CalendarProps = {\n ...calendar,\n onChange: handleChange,\n value,\n };\n\n return {\n input: inputProps,\n calendar: calendarProps,\n };\n};\n"],"names":["useDatepicker","ref","calendar","onBlur","onChange","value","props","inputRef","useProxiedRef","useLocalization","formatting","React","format","date","internalValue","setInternalValue","formattedValue","handleInputBlur","event","persist","valueAsDate","parseFromCustomString","target","detail","handleInputChange","handleChange","setInputValueByRef","current","handleKeyDown","key","dispatchEvent","Event","bubbles","inputProps","autoComplete","onKeyDown","type","calendarProps","input"],"mappings":";;;;;;;;IAeaA,aAAa,GAAG,SAAhBA,aAAgB,OAEzBC,GAFyB;MACNC,gBAAAA;MAAUC,cAAAA;MAAQC,gBAAAA;MAAUC,aAAAA;MAAUC;;EAGzD,IAAMC,QAAQ,GAAGC,aAAa,CAAmBP,GAAnB,CAA9B;;EACA,uBAAuBQ,eAAe,EAAtC;MAAQC,UAAR,oBAAQA,UAAR;;EACA,sBAA0CC,QAAA,CAAeN,KAAK,GAAGO,MAAM,CAACP,KAAD,EAAQK,UAAU,CAACG,IAAnB,CAAT,GAAoC,EAAxD,CAA1C;MAAOC,aAAP;MAAsBC,gBAAtB;;;EAGAJ,SAAA,CAAgB;IACZ,IAAIN,KAAJ,EAAW;MACP,IAAMW,cAAc,GAAGJ,MAAM,CAACP,KAAD,EAAQK,UAAU,CAACG,IAAnB,CAA7B;;MAEA,IAAIG,cAAc,KAAKF,aAAvB,EAAsC;QAClCC,gBAAgB,CAACC,cAAD,CAAhB;;KAJR,MAMO;MACHD,gBAAgB,CAAC,EAAD,CAAhB;;GARR,EAUG,CAACV,KAAD,CAVH;;EAaA,IAAMY,eAAe,GAAG,SAAlBA,eAAkB,CAACC,KAAD;IACpBA,KAAK,CAACC,OAAN;IAEA,IAAMC,WAAW,GAAGC,qBAAqB,CAACH,KAAK,CAACI,MAAN,CAAajB,KAAd,CAAzC;IACA,IAAMW,cAAc,GAAGI,WAAW,GAAGR,MAAM,CAACQ,WAAD,CAAN,IAAuB,EAA1B,GAA+B,EAAjE;IAEAF,KAAK,CAACI,MAAN,CAAajB,KAAb,GAAqBW,cAArB;;IAEA,IAAIZ,QAAJ,EAAc;MACTc,KAAa,CAACK,MAAd,GAAuBH,WAAvB;MACDhB,QAAQ,CAACc,KAAD,CAAR;KAFJ,MAGO;;MAEHH,gBAAgB,CAACC,cAAD,CAAhB;;;IAGJ,IAAIb,MAAJ,EAAY;MACRA,MAAM,CAACe,KAAD,CAAN;;GAjBR;;EAqBA,IAAMM,iBAAiB,GAAG,SAApBA,iBAAoB,CAACN,KAAD;IACtBH,gBAAgB,CAACG,KAAK,CAACI,MAAN,CAAajB,KAAd,CAAhB;GADJ;;EAIA,IAAMoB,YAAY,GAAG,SAAfA,YAAe,CAAAZ,IAAI;IACrBa,kBAAkB,CAACnB,QAAQ,CAACoB,OAAV,EAAmBf,MAAM,CAACC,IAAD,EAAOH,UAAU,CAACG,IAAlB,CAAzB,EAAkD,UAAlD,CAAlB;GADJ;;EAIA,IAAMe,aAAa,GAAG,SAAhBA,aAAgB,CAACV,KAAD;IAClB,IAAIA,KAAK,CAACW,GAAN,KAAc,OAAlB,EAA2B;MACvBX,KAAK,CAACI,MAAN,CAAaQ,aAAb,CAA2B,IAAIC,KAAJ,CAAU,UAAV,EAAsB;QAAEC,OAAO,EAAE;OAAjC,CAA3B;;GAFR;;EAMA,IAAMC,UAAU,gBACT3B,KADS;IAEZ4B,YAAY,EAAE,KAFF;IAGZ/B,MAAM,EAAEc,eAHI;IAIZb,QAAQ,EAAEoB,iBAJE;IAKZW,SAAS,EAAEP,aALC;IAMZ3B,GAAG,EAAEM,QANO;IAOZ6B,IAAI,EAAE,MAPM;IAQZ/B,KAAK,EAAES;IARX;;EAWA,IAAMuB,aAAa,gBACZnC,QADY;IAEfE,QAAQ,EAAEqB,YAFK;IAGfpB,KAAK,EAALA;IAHJ;;EAMA,OAAO;IACHiC,KAAK,EAAEL,UADJ;IAEH/B,QAAQ,EAAEmC;GAFd;AAIH;;;;"}
1
+ {"version":3,"file":"useDatepicker.js","sources":["../../../../src/components/Datepicker/useDatepicker.tsx"],"sourcesContent":["import * as React from 'react';\r\nimport { parseFromCustomString, format } from '../../utils/date';\r\nimport { useLocalization } from '../Provider/Provider';\r\nimport { setInputValueByRef } from '../../utils/input';\r\nimport { useProxiedRef } from '../../utils/hooks/useProxiedRef';\r\nimport { DatepickerProps } from './Datepicker';\r\nimport { CalendarProps } from '../Calendar/Calendar';\r\n\r\ntype InputProps = React.InputHTMLAttributes<HTMLInputElement> & { ref: React.RefObject<HTMLInputElement> };\r\n\r\ntype useDatepicker = React.HTMLAttributes<HTMLDivElement> & {\r\n calendar: CalendarProps;\r\n input: InputProps;\r\n};\r\n\r\nexport const useDatepicker = (\r\n { defaultValue: _, calendar, onBlur, onChange, value, ...props }: DatepickerProps,\r\n ref: React.Ref<HTMLInputElement>\r\n): useDatepicker => {\r\n const inputRef = useProxiedRef<HTMLInputElement>(ref);\r\n const { formatting } = useLocalization();\r\n const [internalValue, setInternalValue] = React.useState(value ? format(value, formatting.date) : '');\r\n\r\n // update internal value if it changed 'externally'\r\n React.useEffect(() => {\r\n if (value) {\r\n const formattedValue = format(value, formatting.date);\r\n\r\n if (formattedValue !== internalValue) {\r\n setInternalValue(formattedValue);\r\n }\r\n } else {\r\n setInternalValue('');\r\n }\r\n }, [value]);\r\n\r\n // event handlers\r\n const handleInputBlur = (event: React.FocusEvent<HTMLInputElement>): void => {\r\n event.persist();\r\n\r\n const valueAsDate = parseFromCustomString(event.target.value);\r\n const formattedValue = valueAsDate ? format(valueAsDate) || '' : '';\r\n\r\n event.target.value = formattedValue;\r\n\r\n if (onChange) {\r\n (event as any).detail = valueAsDate;\r\n onChange(event);\r\n } else {\r\n // update the internal value to use the formatted date\r\n setInternalValue(formattedValue);\r\n }\r\n\r\n if (onBlur) {\r\n onBlur(event);\r\n }\r\n };\r\n\r\n const handleInputChange = (event: React.ChangeEvent<HTMLInputElement>): void => {\r\n setInternalValue(event.target.value);\r\n };\r\n\r\n const handleChange = date => {\r\n setInputValueByRef(inputRef.current, format(date, formatting.date), 'focusout');\r\n };\r\n\r\n const handleKeyDown = (event: React.KeyboardEvent<HTMLInputElement>) => {\r\n if (event.key === 'Enter') {\r\n event.target.dispatchEvent(new Event('focusout', { bubbles: true }));\r\n }\r\n };\r\n\r\n const inputProps: InputProps = {\r\n ...props,\r\n autoComplete: 'off',\r\n onBlur: handleInputBlur,\r\n onChange: handleInputChange,\r\n onKeyDown: handleKeyDown,\r\n ref: inputRef,\r\n type: 'text',\r\n value: internalValue,\r\n };\r\n\r\n const calendarProps: CalendarProps = {\r\n ...calendar,\r\n onChange: handleChange,\r\n value,\r\n };\r\n\r\n return {\r\n input: inputProps,\r\n calendar: calendarProps,\r\n };\r\n};\r\n"],"names":["useDatepicker","defaultValue","_","calendar","onBlur","onChange","value","props","ref","inputRef","useProxiedRef","formatting","useLocalization","internalValue","setInternalValue","React","format","date","formattedValue","handleInputBlur","event","persist","valueAsDate","parseFromCustomString","target","detail","handleInputChange","handleChange","setInputValueByRef","current","handleKeyDown","key","dispatchEvent","Event","bubbles","inputProps","autoComplete","onKeyDown","type","calendarProps","input"],"mappings":";;;;;;MAeaA,aAAa,GAAG,CACzB;EAAEC,YAAY,EAAEC,CAAhB;EAAmBC,QAAnB;EAA6BC,MAA7B;EAAqCC,QAArC;EAA+CC,KAA/C;EAAsD,GAAGC;AAAzD,CADyB,EAEzBC,GAFyB;EAIzB,MAAMC,QAAQ,GAAGC,aAAa,CAAmBF,GAAnB,CAA9B;EACA,MAAM;IAAEG;MAAeC,eAAe,EAAtC;EACA,MAAM,CAACC,aAAD,EAAgBC,gBAAhB,IAAoCC,QAAA,CAAeT,KAAK,GAAGU,MAAM,CAACV,KAAD,EAAQK,UAAU,CAACM,IAAnB,CAAT,GAAoC,EAAxD,CAA1C;;EAGAF,SAAA,CAAgB;IACZ,IAAIT,KAAJ,EAAW;MACP,MAAMY,cAAc,GAAGF,MAAM,CAACV,KAAD,EAAQK,UAAU,CAACM,IAAnB,CAA7B;;MAEA,IAAIC,cAAc,KAAKL,aAAvB,EAAsC;QAClCC,gBAAgB,CAACI,cAAD,CAAhB;;KAJR,MAMO;MACHJ,gBAAgB,CAAC,EAAD,CAAhB;;GARR,EAUG,CAACR,KAAD,CAVH;;EAaA,MAAMa,eAAe,GAAIC,KAAD;IACpBA,KAAK,CAACC,OAAN;IAEA,MAAMC,WAAW,GAAGC,qBAAqB,CAACH,KAAK,CAACI,MAAN,CAAalB,KAAd,CAAzC;IACA,MAAMY,cAAc,GAAGI,WAAW,GAAGN,MAAM,CAACM,WAAD,CAAN,IAAuB,EAA1B,GAA+B,EAAjE;IAEAF,KAAK,CAACI,MAAN,CAAalB,KAAb,GAAqBY,cAArB;;IAEA,IAAIb,QAAJ,EAAc;MACTe,KAAa,CAACK,MAAd,GAAuBH,WAAvB;MACDjB,QAAQ,CAACe,KAAD,CAAR;KAFJ,MAGO;;MAEHN,gBAAgB,CAACI,cAAD,CAAhB;;;IAGJ,IAAId,MAAJ,EAAY;MACRA,MAAM,CAACgB,KAAD,CAAN;;GAjBR;;EAqBA,MAAMM,iBAAiB,GAAIN,KAAD;IACtBN,gBAAgB,CAACM,KAAK,CAACI,MAAN,CAAalB,KAAd,CAAhB;GADJ;;EAIA,MAAMqB,YAAY,GAAGV,IAAI;IACrBW,kBAAkB,CAACnB,QAAQ,CAACoB,OAAV,EAAmBb,MAAM,CAACC,IAAD,EAAON,UAAU,CAACM,IAAlB,CAAzB,EAAkD,UAAlD,CAAlB;GADJ;;EAIA,MAAMa,aAAa,GAAIV,KAAD;IAClB,IAAIA,KAAK,CAACW,GAAN,KAAc,OAAlB,EAA2B;MACvBX,KAAK,CAACI,MAAN,CAAaQ,aAAb,CAA2B,IAAIC,KAAJ,CAAU,UAAV,EAAsB;QAAEC,OAAO,EAAE;OAAjC,CAA3B;;GAFR;;EAMA,MAAMC,UAAU,GAAe,EAC3B,GAAG5B,KADwB;IAE3B6B,YAAY,EAAE,KAFa;IAG3BhC,MAAM,EAAEe,eAHmB;IAI3Bd,QAAQ,EAAEqB,iBAJiB;IAK3BW,SAAS,EAAEP,aALgB;IAM3BtB,GAAG,EAAEC,QANsB;IAO3B6B,IAAI,EAAE,MAPqB;IAQ3BhC,KAAK,EAAEO;GARX;EAWA,MAAM0B,aAAa,GAAkB,EACjC,GAAGpC,QAD8B;IAEjCE,QAAQ,EAAEsB,YAFuB;IAGjCrB;GAHJ;EAMA,OAAO;IACHkC,KAAK,EAAEL,UADJ;IAEHhC,QAAQ,EAAEoC;GAFd;AAIH;;;;"}
@@ -1,24 +1,24 @@
1
1
  import { createContext, useContext } from 'react';
2
2
 
3
3
  /* eslint-disable @typescript-eslint/no-empty-function */
4
- var DialogContext = /*#__PURE__*/createContext({
4
+ const DialogContext = /*#__PURE__*/createContext({
5
5
  closeOnEscape: true,
6
6
  draggable: false,
7
7
  drawer: {
8
8
  open: false,
9
- toggle: function toggle() {}
9
+ toggle: () => {}
10
10
  },
11
11
  elements: {
12
12
  drawer: undefined,
13
13
  extra: undefined
14
14
  },
15
- onClose: function onClose() {},
15
+ onClose: () => {},
16
16
  props: {},
17
17
  ref: null,
18
18
  showCloseButton: true,
19
19
  size: 'sm'
20
20
  });
21
- var useCurrentDialog = function useCurrentDialog() {
21
+ const useCurrentDialog = () => {
22
22
  return useContext(DialogContext);
23
23
  };
24
24
 
@@ -1 +1 @@
1
- {"version":3,"file":"Context.js","sources":["../../../../src/components/Dialog/Context.tsx"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-empty-function */\nimport * as React from 'react';\nimport { DialogSize } from './types';\n\nexport type DialogContext = {\n closeOnEscape: boolean;\n draggable: boolean;\n drawer: {\n open: boolean;\n toggle: () => void;\n };\n elements: {\n drawer?: React.ReactNode;\n extra?: React.ReactNode;\n };\n onClose?: () => void;\n props: {};\n ref: React.Ref<HTMLElement>;\n showCloseButton: boolean;\n size: DialogSize;\n};\n\nexport const DialogContext = React.createContext<DialogContext>({\n closeOnEscape: true,\n draggable: false,\n drawer: {\n open: false,\n toggle: () => {},\n },\n elements: {\n drawer: undefined,\n extra: undefined,\n },\n onClose: () => {},\n props: {},\n ref: null,\n showCloseButton: true,\n size: 'sm',\n});\n\nexport const useCurrentDialog = () => {\n return React.useContext(DialogContext);\n};\n"],"names":["DialogContext","React","closeOnEscape","draggable","drawer","open","toggle","elements","undefined","extra","onClose","props","ref","showCloseButton","size","useCurrentDialog"],"mappings":";;AAAA;IAsBaA,aAAa,gBAAGC,aAAA,CAAmC;EAC5DC,aAAa,EAAE,IAD6C;EAE5DC,SAAS,EAAE,KAFiD;EAG5DC,MAAM,EAAE;IACJC,IAAI,EAAE,KADF;IAEJC,MAAM,EAAE;GALgD;EAO5DC,QAAQ,EAAE;IACNH,MAAM,EAAEI,SADF;IAENC,KAAK,EAAED;GATiD;EAW5DE,OAAO,EAAE,qBAXmD;EAY5DC,KAAK,EAAE,EAZqD;EAa5DC,GAAG,EAAE,IAbuD;EAc5DC,eAAe,EAAE,IAd2C;EAe5DC,IAAI,EAAE;AAfsD,CAAnC;IAkBhBC,gBAAgB,GAAG,SAAnBA,gBAAmB;EAC5B,OAAOd,UAAA,CAAiBD,aAAjB,CAAP;AACH;;;;"}
1
+ {"version":3,"file":"Context.js","sources":["../../../../src/components/Dialog/Context.tsx"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-empty-function */\r\nimport * as React from 'react';\r\nimport { DialogSize } from './types';\r\n\r\nexport type DialogContext = {\r\n closeOnEscape: boolean;\r\n draggable: boolean;\r\n drawer: {\r\n open: boolean;\r\n toggle: () => void;\r\n };\r\n elements: {\r\n drawer?: React.ReactNode;\r\n extra?: React.ReactNode;\r\n };\r\n onClose?: () => void;\r\n props: {};\r\n ref: React.Ref<HTMLElement>;\r\n showCloseButton: boolean;\r\n size: DialogSize;\r\n};\r\n\r\nexport const DialogContext = React.createContext<DialogContext>({\r\n closeOnEscape: true,\r\n draggable: false,\r\n drawer: {\r\n open: false,\r\n toggle: () => {},\r\n },\r\n elements: {\r\n drawer: undefined,\r\n extra: undefined,\r\n },\r\n onClose: () => {},\r\n props: {},\r\n ref: null,\r\n showCloseButton: true,\r\n size: 'sm',\r\n});\r\n\r\nexport const useCurrentDialog = () => {\r\n return React.useContext(DialogContext);\r\n};\r\n"],"names":["DialogContext","React","closeOnEscape","draggable","drawer","open","toggle","elements","undefined","extra","onClose","props","ref","showCloseButton","size","useCurrentDialog"],"mappings":";;AAAA;MAsBaA,aAAa,gBAAGC,aAAA,CAAmC;EAC5DC,aAAa,EAAE,IAD6C;EAE5DC,SAAS,EAAE,KAFiD;EAG5DC,MAAM,EAAE;IACJC,IAAI,EAAE,KADF;IAEJC,MAAM,EAAE;GALgD;EAO5DC,QAAQ,EAAE;IACNH,MAAM,EAAEI,SADF;IAENC,KAAK,EAAED;GATiD;EAW5DE,OAAO,EAAE,QAXmD;EAY5DC,KAAK,EAAE,EAZqD;EAa5DC,GAAG,EAAE,IAbuD;EAc5DC,eAAe,EAAE,IAd2C;EAe5DC,IAAI,EAAE;AAfsD,CAAnC;MAkBhBC,gBAAgB,GAAG;EAC5B,OAAOd,UAAA,CAAiBD,aAAjB,CAAP;AACH;;;;"}
@@ -1,4 +1,3 @@
1
- import { objectWithoutPropertiesLoose as _objectWithoutPropertiesLoose } from '../../_virtual/_rollupPluginBabelHelpers.js';
2
1
  import { forwardRef, useMemo, Children, useState, createElement } from 'react';
3
2
  import { Root } from '@radix-ui/react-dialog';
4
3
  import { DialogContext } from './Context.js';
@@ -7,14 +6,12 @@ import { Content, Title, Footer, Close } from './components/Content.js';
7
6
  import { Drawer } from './components/Drawer.js';
8
7
  import { Extra } from './components/Extra.js';
9
8
 
10
- var _excluded = ["children", "closeOnEscape", "defaultOpen", "draggable", "onChange", "onClose", "open", "showCloseButton", "size", "trigger"];
11
-
12
- var useSeparatedChildren = function useSeparatedChildren(initialChildren) {
13
- return useMemo(function () {
14
- var children = [];
15
- var drawer;
16
- var extra;
17
- Children.toArray(initialChildren).forEach(function (child) {
9
+ const useSeparatedChildren = initialChildren => {
10
+ return useMemo(() => {
11
+ const children = [];
12
+ let drawer;
13
+ let extra;
14
+ Children.toArray(initialChildren).forEach(child => {
18
15
  var _child$type, _child$type2;
19
16
 
20
17
  if (((_child$type = child.type) === null || _child$type === void 0 ? void 0 : _child$type.displayName) === Drawer.displayName) {
@@ -29,55 +26,39 @@ var useSeparatedChildren = function useSeparatedChildren(initialChildren) {
29
26
  }, [initialChildren]);
30
27
  };
31
28
 
32
- var Dialog = /*#__PURE__*/forwardRef(function Dialog(props, ref) {
33
- var initialChildren = props.children,
34
- _props$closeOnEscape = props.closeOnEscape,
35
- closeOnEscape = _props$closeOnEscape === void 0 ? true : _props$closeOnEscape,
36
- defaultOpen = props.defaultOpen,
37
- _props$draggable = props.draggable,
38
- draggable = _props$draggable === void 0 ? false : _props$draggable,
39
- onChange = props.onChange,
40
- onClose = props.onClose,
41
- open = props.open,
42
- _props$showCloseButto = props.showCloseButton,
43
- showCloseButton = _props$showCloseButto === void 0 ? true : _props$showCloseButto,
44
- _props$size = props.size,
45
- size = _props$size === void 0 ? 'sm' : _props$size,
46
- trigger = props.trigger,
47
- otherProps = _objectWithoutPropertiesLoose(props, _excluded);
48
-
49
- var _useSeparatedChildren = useSeparatedChildren(initialChildren),
50
- children = _useSeparatedChildren[0],
51
- drawer = _useSeparatedChildren[1],
52
- extra = _useSeparatedChildren[2];
53
-
54
- var _React$useState = useState(false),
55
- drawerOpen = _React$useState[0],
56
- setDrawerOpen = _React$useState[1];
57
-
58
- var context = useMemo(function () {
59
- return {
60
- closeOnEscape: closeOnEscape,
61
- draggable: draggable,
62
- drawer: {
63
- open: drawerOpen,
64
- toggle: function toggle() {
65
- return setDrawerOpen(function (isDrawerOpen) {
66
- return !isDrawerOpen;
67
- });
68
- }
69
- },
70
- elements: {
71
- drawer: drawer,
72
- extra: extra
73
- },
74
- onClose: onClose,
75
- props: otherProps,
76
- showCloseButton: showCloseButton,
77
- size: size,
78
- ref: ref
79
- };
80
- }, [closeOnEscape, drawerOpen, draggable, drawer, extra, open, otherProps, showCloseButton]);
29
+ const Dialog = /*#__PURE__*/forwardRef(function Dialog(props, ref) {
30
+ const {
31
+ children: initialChildren,
32
+ closeOnEscape = true,
33
+ defaultOpen,
34
+ draggable = false,
35
+ onChange,
36
+ onClose,
37
+ open,
38
+ showCloseButton = true,
39
+ size = 'sm',
40
+ trigger,
41
+ ...otherProps
42
+ } = props;
43
+ const [children, drawer, extra] = useSeparatedChildren(initialChildren);
44
+ const [drawerOpen, setDrawerOpen] = useState(false);
45
+ const context = useMemo(() => ({
46
+ closeOnEscape,
47
+ draggable,
48
+ drawer: {
49
+ open: drawerOpen,
50
+ toggle: () => setDrawerOpen(isDrawerOpen => !isDrawerOpen)
51
+ },
52
+ elements: {
53
+ drawer,
54
+ extra
55
+ },
56
+ onClose,
57
+ props: otherProps,
58
+ showCloseButton,
59
+ size,
60
+ ref
61
+ }), [closeOnEscape, drawerOpen, draggable, drawer, extra, open, otherProps, showCloseButton]);
81
62
  return createElement(DialogContext.Provider, {
82
63
  value: context
83
64
  }, createElement(Root, {
@@ -1 +1 @@
1
- {"version":3,"file":"Dialog.js","sources":["../../../../src/components/Dialog/Dialog.tsx"],"sourcesContent":["import * as React from 'react';\nimport * as DialogPrimitive from '@radix-ui/react-dialog';\nimport './Dialog.css';\nimport { DialogTriggerProps, Trigger } from './components/Trigger';\nimport {\n Content,\n Title,\n Footer,\n Close,\n DialogContentProps,\n DialogContentRenderProps,\n DialogContentDrawerRenderProps,\n DialogTitleProps,\n DialogFooterProps,\n DialogCloseProps,\n} from './components/Content';\nimport { DialogDrawerProps, DialogDrawerRenderProps, Drawer } from './components/Drawer';\nimport { DialogExtraProps, Extra } from './components/Extra';\nimport { DialogContext } from './Context';\nimport { DialogSize } from './types';\n\nexport {\n DialogCloseProps,\n DialogContentDrawerRenderProps,\n DialogContentProps,\n DialogContentRenderProps,\n DialogDrawerProps,\n DialogDrawerRenderProps,\n DialogFooterProps,\n DialogSize,\n DialogTitleProps,\n};\n\nexport type DialogTexts = {\n /**\n * Aria-label for close icon button in dialog.\n * To read more about how to provide the text, see [Provider](component:provider) component\n */\n close: string;\n drag: string;\n};\n\nexport type DialogProps = {\n children: React.ReactNode | React.ReactNode[];\n /** When `true`, pressing escape will close the dialog */\n closeOnEscape?: boolean;\n /** Set whether the dialog is open by default or not, use when not providing a trigger */\n defaultOpen?: boolean;\n /** Allows dragging the dialog around the screen (window constrained) */\n draggable?: boolean;\n /** Handler called when dialog closes by user interaction */\n onClose?: () => void;\n /** Called when the dialog opens or closes, must be used in conjunction with open */\n onChange?: (open: boolean) => void;\n /** Control the open state of the dialog from outside the component */\n open?: boolean;\n /** Shows the close icon button of the dialog */\n showCloseButton?: boolean;\n /** Size of the dialog. This is the recommended way to set a size for dialog component. */\n size?: DialogSize;\n /** A trigger to be used for the dialog, should not be set if `children` already contains a trigger */\n trigger?: JSX.Element;\n};\n\nconst useSeparatedChildren = initialChildren => {\n return React.useMemo(() => {\n const children: any[] = [];\n let drawer;\n let extra;\n\n React.Children.toArray(initialChildren).forEach((child: any) => {\n if (child.type?.displayName === Drawer.displayName) {\n drawer = child;\n } else if (child.type?.displayName === Extra.displayName) {\n extra = child;\n } else {\n children.push(child);\n }\n });\n\n return [children, drawer, extra];\n }, [initialChildren]);\n};\n\nexport type ForwardedDialogWithStatics = React.ForwardRefExoticComponent<DialogProps & React.RefAttributes<HTMLElement>> & {\n Trigger: React.ForwardRefExoticComponent<DialogTriggerProps & React.RefAttributes<HTMLButtonElement>>;\n Content: React.ForwardRefExoticComponent<DialogContentProps & React.RefAttributes<HTMLDivElement>>;\n Title: React.ForwardRefExoticComponent<DialogTitleProps & React.RefAttributes<HTMLHeadingElement>>;\n Footer: React.ForwardRefExoticComponent<DialogFooterProps & React.RefAttributes<HTMLDivElement>>;\n Extra: React.ForwardRefExoticComponent<DialogExtraProps & React.RefAttributes<HTMLDivElement>>;\n Drawer: React.ForwardRefExoticComponent<DialogDrawerProps & React.RefAttributes<HTMLDivElement>>;\n Close: React.ForwardRefExoticComponent<DialogCloseProps & React.RefAttributes<HTMLButtonElement>>;\n};\n\nexport const Dialog = React.forwardRef(function Dialog(props: DialogProps, ref: React.Ref<HTMLElement>) {\n const {\n children: initialChildren,\n closeOnEscape = true,\n defaultOpen,\n draggable = false,\n onChange,\n onClose,\n open,\n showCloseButton = true,\n size = 'sm',\n trigger,\n ...otherProps\n } = props;\n const [children, drawer, extra] = useSeparatedChildren(initialChildren);\n const [drawerOpen, setDrawerOpen] = React.useState(false);\n\n const context = React.useMemo(\n () => ({\n closeOnEscape,\n draggable,\n drawer: {\n open: drawerOpen,\n toggle: () => setDrawerOpen(isDrawerOpen => !isDrawerOpen),\n },\n elements: {\n drawer,\n extra,\n },\n onClose,\n props: otherProps,\n showCloseButton,\n size,\n ref,\n }),\n [closeOnEscape, drawerOpen, draggable, drawer, extra, open, otherProps, showCloseButton]\n );\n\n return (\n <DialogContext.Provider value={context}>\n <DialogPrimitive.Root defaultOpen={defaultOpen} open={open} onOpenChange={onChange}>\n {trigger && <Trigger>{trigger}</Trigger>}\n {children}\n </DialogPrimitive.Root>\n </DialogContext.Provider>\n );\n}) as ForwardedDialogWithStatics;\n\nDialog.Trigger = Trigger;\nDialog.Content = Content;\nDialog.Title = Title;\nDialog.Footer = Footer;\nDialog.Extra = Extra;\nDialog.Drawer = Drawer;\nDialog.Close = Close;\n"],"names":["useSeparatedChildren","initialChildren","React","children","drawer","extra","toArray","forEach","child","type","displayName","Drawer","Extra","push","Dialog","props","ref","closeOnEscape","defaultOpen","draggable","onChange","onClose","open","showCloseButton","size","trigger","otherProps","drawerOpen","setDrawerOpen","context","toggle","isDrawerOpen","elements","DialogContext","Provider","value","DialogPrimitive","onOpenChange","Trigger","Content","Title","Footer","Close"],"mappings":";;;;;;;;;;;AAgEA,IAAMA,oBAAoB,GAAG,SAAvBA,oBAAuB,CAAAC,eAAe;EACxC,OAAOC,OAAA,CAAc;IACjB,IAAMC,QAAQ,GAAU,EAAxB;IACA,IAAIC,MAAJ;IACA,IAAIC,KAAJ;IAEAH,QAAA,CAAeI,OAAf,CAAuBL,eAAvB,EAAwCM,OAAxC,CAAgD,UAACC,KAAD;;;MAC5C,IAAI,gBAAAA,KAAK,CAACC,IAAN,4DAAYC,WAAZ,MAA4BC,MAAM,CAACD,WAAvC,EAAoD;QAChDN,MAAM,GAAGI,KAAT;OADJ,MAEO,IAAI,iBAAAA,KAAK,CAACC,IAAN,8DAAYC,WAAZ,MAA4BE,KAAK,CAACF,WAAtC,EAAmD;QACtDL,KAAK,GAAGG,KAAR;OADG,MAEA;QACHL,QAAQ,CAACU,IAAT,CAAcL,KAAd;;KANR;IAUA,OAAO,CAACL,QAAD,EAAWC,MAAX,EAAmBC,KAAnB,CAAP;GAfG,EAgBJ,CAACJ,eAAD,CAhBI,CAAP;AAiBH,CAlBD;;IA8Baa,MAAM,gBAAGZ,UAAA,CAAiB,SAASY,MAAT,CAAgBC,KAAhB,EAAoCC,GAApC;EACnC,IACcf,eADd,GAYIc,KAZJ,CACIZ,QADJ;6BAYIY,KAZJ,CAEIE,aAFJ;MAEIA,aAFJ,qCAEoB,IAFpB;MAGIC,WAHJ,GAYIH,KAZJ,CAGIG,WAHJ;yBAYIH,KAZJ,CAIII,SAJJ;MAIIA,SAJJ,iCAIgB,KAJhB;MAKIC,QALJ,GAYIL,KAZJ,CAKIK,QALJ;MAMIC,OANJ,GAYIN,KAZJ,CAMIM,OANJ;MAOIC,IAPJ,GAYIP,KAZJ,CAOIO,IAPJ;8BAYIP,KAZJ,CAQIQ,eARJ;MAQIA,eARJ,sCAQsB,IARtB;oBAYIR,KAZJ,CASIS,IATJ;MASIA,IATJ,4BASW,IATX;MAUIC,OAVJ,GAYIV,KAZJ,CAUIU,OAVJ;MAWOC,UAXP,iCAYIX,KAZJ;;EAaA,4BAAkCf,oBAAoB,CAACC,eAAD,CAAtD;MAAOE,QAAP;MAAiBC,MAAjB;MAAyBC,KAAzB;;EACA,sBAAoCH,QAAA,CAAe,KAAf,CAApC;MAAOyB,UAAP;MAAmBC,aAAnB;;EAEA,IAAMC,OAAO,GAAG3B,OAAA,CACZ;IAAA,OAAO;MACHe,aAAa,EAAbA,aADG;MAEHE,SAAS,EAATA,SAFG;MAGHf,MAAM,EAAE;QACJkB,IAAI,EAAEK,UADF;QAEJG,MAAM,EAAE;UAAA,OAAMF,aAAa,CAAC,UAAAG,YAAY;YAAA,OAAI,CAACA,YAAL;WAAb,CAAnB;;OALT;MAOHC,QAAQ,EAAE;QACN5B,MAAM,EAANA,MADM;QAENC,KAAK,EAALA;OATD;MAWHgB,OAAO,EAAPA,OAXG;MAYHN,KAAK,EAAEW,UAZJ;MAaHH,eAAe,EAAfA,eAbG;MAcHC,IAAI,EAAJA,IAdG;MAeHR,GAAG,EAAHA;KAfJ;GADY,EAkBZ,CAACC,aAAD,EAAgBU,UAAhB,EAA4BR,SAA5B,EAAuCf,MAAvC,EAA+CC,KAA/C,EAAsDiB,IAAtD,EAA4DI,UAA5D,EAAwEH,eAAxE,CAlBY,CAAhB;EAqBA,OACIrB,aAAA,CAAC+B,aAAa,CAACC,QAAf;IAAwBC,KAAK,EAAEN;GAA/B,EACI3B,aAAA,CAACkC,IAAD;IAAsBlB,WAAW,EAAEA;IAAaI,IAAI,EAAEA;IAAMe,YAAY,EAAEjB;GAA1E,EACKK,OAAO,IAAIvB,aAAA,CAACoC,OAAD,MAAA,EAAUb,OAAV,CADhB,EAEKtB,QAFL,CADJ,CADJ;AAQH,CA9CqB;AAgDtBW,MAAM,CAACwB,OAAP,GAAiBA,OAAjB;AACAxB,MAAM,CAACyB,OAAP,GAAiBA,OAAjB;AACAzB,MAAM,CAAC0B,KAAP,GAAeA,KAAf;AACA1B,MAAM,CAAC2B,MAAP,GAAgBA,MAAhB;AACA3B,MAAM,CAACF,KAAP,GAAeA,KAAf;AACAE,MAAM,CAACH,MAAP,GAAgBA,MAAhB;AACAG,MAAM,CAAC4B,KAAP,GAAeA,KAAf;;;;"}
1
+ {"version":3,"file":"Dialog.js","sources":["../../../../src/components/Dialog/Dialog.tsx"],"sourcesContent":["import * as React from 'react';\r\nimport * as DialogPrimitive from '@radix-ui/react-dialog';\r\nimport './Dialog.css';\r\nimport { DialogTriggerProps, Trigger } from './components/Trigger';\r\nimport {\r\n Content,\r\n Title,\r\n Footer,\r\n Close,\r\n DialogContentProps,\r\n DialogContentRenderProps,\r\n DialogContentDrawerRenderProps,\r\n DialogTitleProps,\r\n DialogFooterProps,\r\n DialogCloseProps,\r\n} from './components/Content';\r\nimport { DialogDrawerProps, DialogDrawerRenderProps, Drawer } from './components/Drawer';\r\nimport { DialogExtraProps, Extra } from './components/Extra';\r\nimport { DialogContext } from './Context';\r\nimport { DialogSize } from './types';\r\n\r\nexport {\r\n DialogCloseProps,\r\n DialogContentDrawerRenderProps,\r\n DialogContentProps,\r\n DialogContentRenderProps,\r\n DialogDrawerProps,\r\n DialogDrawerRenderProps,\r\n DialogFooterProps,\r\n DialogSize,\r\n DialogTitleProps,\r\n};\r\n\r\nexport type DialogTexts = {\r\n /**\r\n * Aria-label for close icon button in dialog.\r\n * To read more about how to provide the text, see [Provider](component:provider) component\r\n */\r\n close: string;\r\n drag: string;\r\n};\r\n\r\nexport type DialogProps = {\r\n children: React.ReactNode | React.ReactNode[];\r\n /** When `true`, pressing escape will close the dialog */\r\n closeOnEscape?: boolean;\r\n /** Set whether the dialog is open by default or not, use when not providing a trigger */\r\n defaultOpen?: boolean;\r\n /** Allows dragging the dialog around the screen (window constrained) */\r\n draggable?: boolean;\r\n /** Handler called when dialog closes by user interaction */\r\n onClose?: () => void;\r\n /** Called when the dialog opens or closes, must be used in conjunction with open */\r\n onChange?: (open: boolean) => void;\r\n /** Control the open state of the dialog from outside the component */\r\n open?: boolean;\r\n /** Shows the close icon button of the dialog */\r\n showCloseButton?: boolean;\r\n /** Size of the dialog. This is the recommended way to set a size for dialog component. */\r\n size?: DialogSize;\r\n /** A trigger to be used for the dialog, should not be set if `children` already contains a trigger */\r\n trigger?: JSX.Element;\r\n};\r\n\r\nconst useSeparatedChildren = initialChildren => {\r\n return React.useMemo(() => {\r\n const children: any[] = [];\r\n let drawer;\r\n let extra;\r\n\r\n React.Children.toArray(initialChildren).forEach((child: any) => {\r\n if (child.type?.displayName === Drawer.displayName) {\r\n drawer = child;\r\n } else if (child.type?.displayName === Extra.displayName) {\r\n extra = child;\r\n } else {\r\n children.push(child);\r\n }\r\n });\r\n\r\n return [children, drawer, extra];\r\n }, [initialChildren]);\r\n};\r\n\r\nexport type ForwardedDialogWithStatics = React.ForwardRefExoticComponent<DialogProps & React.RefAttributes<HTMLElement>> & {\r\n Trigger: React.ForwardRefExoticComponent<DialogTriggerProps & React.RefAttributes<HTMLButtonElement>>;\r\n Content: React.ForwardRefExoticComponent<DialogContentProps & React.RefAttributes<HTMLDivElement>>;\r\n Title: React.ForwardRefExoticComponent<DialogTitleProps & React.RefAttributes<HTMLHeadingElement>>;\r\n Footer: React.ForwardRefExoticComponent<DialogFooterProps & React.RefAttributes<HTMLDivElement>>;\r\n Extra: React.ForwardRefExoticComponent<DialogExtraProps & React.RefAttributes<HTMLDivElement>>;\r\n Drawer: React.ForwardRefExoticComponent<DialogDrawerProps & React.RefAttributes<HTMLDivElement>>;\r\n Close: React.ForwardRefExoticComponent<DialogCloseProps & React.RefAttributes<HTMLButtonElement>>;\r\n};\r\n\r\nexport const Dialog = React.forwardRef(function Dialog(props: DialogProps, ref: React.Ref<HTMLElement>) {\r\n const {\r\n children: initialChildren,\r\n closeOnEscape = true,\r\n defaultOpen,\r\n draggable = false,\r\n onChange,\r\n onClose,\r\n open,\r\n showCloseButton = true,\r\n size = 'sm',\r\n trigger,\r\n ...otherProps\r\n } = props;\r\n const [children, drawer, extra] = useSeparatedChildren(initialChildren);\r\n const [drawerOpen, setDrawerOpen] = React.useState(false);\r\n\r\n const context = React.useMemo(\r\n () => ({\r\n closeOnEscape,\r\n draggable,\r\n drawer: {\r\n open: drawerOpen,\r\n toggle: () => setDrawerOpen(isDrawerOpen => !isDrawerOpen),\r\n },\r\n elements: {\r\n drawer,\r\n extra,\r\n },\r\n onClose,\r\n props: otherProps,\r\n showCloseButton,\r\n size,\r\n ref,\r\n }),\r\n [closeOnEscape, drawerOpen, draggable, drawer, extra, open, otherProps, showCloseButton]\r\n );\r\n\r\n return (\r\n <DialogContext.Provider value={context}>\r\n <DialogPrimitive.Root defaultOpen={defaultOpen} open={open} onOpenChange={onChange}>\r\n {trigger && <Trigger>{trigger}</Trigger>}\r\n {children}\r\n </DialogPrimitive.Root>\r\n </DialogContext.Provider>\r\n );\r\n}) as ForwardedDialogWithStatics;\r\n\r\nDialog.Trigger = Trigger;\r\nDialog.Content = Content;\r\nDialog.Title = Title;\r\nDialog.Footer = Footer;\r\nDialog.Extra = Extra;\r\nDialog.Drawer = Drawer;\r\nDialog.Close = Close;\r\n"],"names":["useSeparatedChildren","initialChildren","React","children","drawer","extra","toArray","forEach","child","type","displayName","Drawer","Extra","push","Dialog","props","ref","closeOnEscape","defaultOpen","draggable","onChange","onClose","open","showCloseButton","size","trigger","otherProps","drawerOpen","setDrawerOpen","context","toggle","isDrawerOpen","elements","DialogContext","Provider","value","DialogPrimitive","onOpenChange","Trigger","Content","Title","Footer","Close"],"mappings":";;;;;;;;AAgEA,MAAMA,oBAAoB,GAAGC,eAAe;EACxC,OAAOC,OAAA,CAAc;IACjB,MAAMC,QAAQ,GAAU,EAAxB;IACA,IAAIC,MAAJ;IACA,IAAIC,KAAJ;IAEAH,QAAA,CAAeI,OAAf,CAAuBL,eAAvB,EAAwCM,OAAxC,CAAiDC,KAAD;;;MAC5C,IAAI,gBAAAA,KAAK,CAACC,IAAN,4DAAYC,WAAZ,MAA4BC,MAAM,CAACD,WAAvC,EAAoD;QAChDN,MAAM,GAAGI,KAAT;OADJ,MAEO,IAAI,iBAAAA,KAAK,CAACC,IAAN,8DAAYC,WAAZ,MAA4BE,KAAK,CAACF,WAAtC,EAAmD;QACtDL,KAAK,GAAGG,KAAR;OADG,MAEA;QACHL,QAAQ,CAACU,IAAT,CAAcL,KAAd;;KANR;IAUA,OAAO,CAACL,QAAD,EAAWC,MAAX,EAAmBC,KAAnB,CAAP;GAfG,EAgBJ,CAACJ,eAAD,CAhBI,CAAP;AAiBH,CAlBD;;MA8Baa,MAAM,gBAAGZ,UAAA,CAAiB,SAASY,MAAT,CAAgBC,KAAhB,EAAoCC,GAApC;EACnC,MAAM;IACFb,QAAQ,EAAEF,eADR;IAEFgB,aAAa,GAAG,IAFd;IAGFC,WAHE;IAIFC,SAAS,GAAG,KAJV;IAKFC,QALE;IAMFC,OANE;IAOFC,IAPE;IAQFC,eAAe,GAAG,IARhB;IASFC,IAAI,GAAG,IATL;IAUFC,OAVE;IAWF,GAAGC;MACHX,KAZJ;EAaA,MAAM,CAACZ,QAAD,EAAWC,MAAX,EAAmBC,KAAnB,IAA4BL,oBAAoB,CAACC,eAAD,CAAtD;EACA,MAAM,CAAC0B,UAAD,EAAaC,aAAb,IAA8B1B,QAAA,CAAe,KAAf,CAApC;EAEA,MAAM2B,OAAO,GAAG3B,OAAA,CACZ,OAAO;IACHe,aADG;IAEHE,SAFG;IAGHf,MAAM,EAAE;MACJkB,IAAI,EAAEK,UADF;MAEJG,MAAM,EAAE,MAAMF,aAAa,CAACG,YAAY,IAAI,CAACA,YAAlB;KAL5B;IAOHC,QAAQ,EAAE;MACN5B,MADM;MAENC;KATD;IAWHgB,OAXG;IAYHN,KAAK,EAAEW,UAZJ;IAaHH,eAbG;IAcHC,IAdG;IAeHR;GAfJ,CADY,EAkBZ,CAACC,aAAD,EAAgBU,UAAhB,EAA4BR,SAA5B,EAAuCf,MAAvC,EAA+CC,KAA/C,EAAsDiB,IAAtD,EAA4DI,UAA5D,EAAwEH,eAAxE,CAlBY,CAAhB;EAqBA,OACIrB,aAAA,CAAC+B,aAAa,CAACC,QAAf;IAAwBC,KAAK,EAAEN;GAA/B,EACI3B,aAAA,CAACkC,IAAD;IAAsBlB,WAAW,EAAEA;IAAaI,IAAI,EAAEA;IAAMe,YAAY,EAAEjB;GAA1E,EACKK,OAAO,IAAIvB,aAAA,CAACoC,OAAD,MAAA,EAAUb,OAAV,CADhB,EAEKtB,QAFL,CADJ,CADJ;AAQH,CA9CqB;AAgDtBW,MAAM,CAACwB,OAAP,GAAiBA,OAAjB;AACAxB,MAAM,CAACyB,OAAP,GAAiBA,OAAjB;AACAzB,MAAM,CAAC0B,KAAP,GAAeA,KAAf;AACA1B,MAAM,CAAC2B,MAAP,GAAgBA,MAAhB;AACA3B,MAAM,CAACF,KAAP,GAAeA,KAAf;AACAE,MAAM,CAACH,MAAP,GAAgBA,MAAhB;AACAG,MAAM,CAAC4B,KAAP,GAAeA,KAAf;;;;"}