@televet/kibble-ui 4.0.1 → 5.0.0-beta.hotfix.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/chunks/alert.types-BKSqs9qY.js +2 -0
- package/dist/chunks/alert.types-BKSqs9qY.js.map +1 -0
- package/dist/chunks/alert.types-C_ygg7fh.js +141 -0
- package/dist/chunks/alert.types-C_ygg7fh.js.map +1 -0
- package/dist/chunks/anatomy-BkGk10kB.js +2 -0
- package/dist/chunks/anatomy-BkGk10kB.js.map +1 -0
- package/dist/chunks/anatomy-zd4ecEFD.js +280 -0
- package/dist/chunks/anatomy-zd4ecEFD.js.map +1 -0
- package/dist/chunks/avatar.component-B1HGlwVW.js +2 -0
- package/dist/chunks/avatar.component-B1HGlwVW.js.map +1 -0
- package/dist/chunks/avatar.component-C-365mx3.js +404 -0
- package/dist/chunks/avatar.component-C-365mx3.js.map +1 -0
- package/dist/chunks/avatar.records-CxLCvZfG.js +2 -0
- package/dist/chunks/avatar.records-CxLCvZfG.js.map +1 -0
- package/dist/chunks/{index-Cv06PsSJ.js → avatar.records-EoZmO3VR.js} +21 -13
- package/dist/chunks/avatar.records-EoZmO3VR.js.map +1 -0
- package/dist/chunks/avatarGroup.component-B-ZOhj7i.js +75 -0
- package/dist/chunks/avatarGroup.component-B-ZOhj7i.js.map +1 -0
- package/dist/chunks/avatarGroup.component-CTBfGiSm.js +2 -0
- package/dist/chunks/avatarGroup.component-CTBfGiSm.js.map +1 -0
- package/dist/chunks/button.component-BO6oee_V.js +69 -0
- package/dist/chunks/button.component-BO6oee_V.js.map +1 -0
- package/dist/chunks/button.component-DjdgBXDC.js +2 -0
- package/dist/chunks/button.component-DjdgBXDC.js.map +1 -0
- package/dist/chunks/button.recipe-Bb0lptGi.js +613 -0
- package/dist/chunks/button.recipe-Bb0lptGi.js.map +1 -0
- package/dist/chunks/button.recipe-flk0XJTS.js +2 -0
- package/dist/chunks/button.recipe-flk0XJTS.js.map +1 -0
- package/dist/chunks/button.types-3lHElsln.js +2 -0
- package/dist/chunks/button.types-3lHElsln.js.map +1 -0
- package/dist/chunks/{button.types-BKXZNvN1.js → button.types-C9PpvmYR.js} +14 -9
- package/dist/chunks/button.types-C9PpvmYR.js.map +1 -0
- package/dist/chunks/buttonGroup.component-CowJsbr7.js +2 -0
- package/dist/chunks/buttonGroup.component-CowJsbr7.js.map +1 -0
- package/dist/chunks/buttonGroup.component-DUK2FgFn.js +70 -0
- package/dist/chunks/buttonGroup.component-DUK2FgFn.js.map +1 -0
- package/dist/chunks/calendar.component-CHIhplfO.js +18 -0
- package/dist/chunks/calendar.component-CHIhplfO.js.map +1 -0
- package/dist/chunks/calendar.component-tOoK1NrU.js +2 -0
- package/dist/chunks/calendar.component-tOoK1NrU.js.map +1 -0
- package/dist/chunks/card.component-B1AznjWF.js +55 -0
- package/dist/chunks/card.component-B1AznjWF.js.map +1 -0
- package/dist/chunks/card.component-BmBiYbMV.js +2 -0
- package/dist/chunks/card.component-BmBiYbMV.js.map +1 -0
- package/dist/chunks/center-Dmlzv1BW.js +20 -0
- package/dist/chunks/center-Dmlzv1BW.js.map +1 -0
- package/dist/chunks/center-kk61ArhQ.js +2 -0
- package/dist/chunks/center-kk61ArhQ.js.map +1 -0
- package/dist/chunks/characterCounter.component-CKDigkoD.js +2 -0
- package/dist/chunks/characterCounter.component-CKDigkoD.js.map +1 -0
- package/dist/chunks/characterCounter.component-Ch3P3GqC.js +82 -0
- package/dist/chunks/characterCounter.component-Ch3P3GqC.js.map +1 -0
- package/dist/chunks/{checkbox.anatomy-DC8fJdkY.js → checkbox.anatomy-BzZ0IkUF.js} +22 -22
- package/dist/chunks/{checkbox.anatomy-DC8fJdkY.js.map → checkbox.anatomy-BzZ0IkUF.js.map} +1 -1
- package/dist/chunks/{checkbox.anatomy-BNdLT4Qf.js → checkbox.anatomy-DM39E2Q9.js} +2 -2
- package/dist/chunks/{checkbox.anatomy-BNdLT4Qf.js.map → checkbox.anatomy-DM39E2Q9.js.map} +1 -1
- package/dist/chunks/checkbox.component-CiA3Z1zR.js +2 -0
- package/dist/chunks/{checkbox.component-DNOkXggb.js.map → checkbox.component-CiA3Z1zR.js.map} +1 -1
- package/dist/chunks/checkbox.component-DE35wBj-.js +269 -0
- package/dist/chunks/{checkbox.component-Dhjcu89D.js.map → checkbox.component-DE35wBj-.js.map} +1 -1
- package/dist/chunks/checkboxGroup.component-BGBd-roJ.js +2 -0
- package/dist/chunks/checkboxGroup.component-BGBd-roJ.js.map +1 -0
- package/dist/chunks/checkboxGroup.component-CYwGlktu.js +53 -0
- package/dist/chunks/checkboxGroup.component-CYwGlktu.js.map +1 -0
- package/dist/chunks/{config-B3QABP1-.js → config-Djkl1N81.js} +4 -4
- package/dist/chunks/{config-B3QABP1-.js.map → config-Djkl1N81.js.map} +1 -1
- package/dist/chunks/conversationCard.component-BrDGshOG.js +2 -0
- package/dist/chunks/conversationCard.component-BrDGshOG.js.map +1 -0
- package/dist/chunks/conversationCard.component-CMdqD3yN.js +331 -0
- package/dist/chunks/conversationCard.component-CMdqD3yN.js.map +1 -0
- package/dist/chunks/{create-recipe-context-CrEKmpj8.js → create-recipe-context-DfQ-MTih.js} +9 -9
- package/dist/chunks/{create-recipe-context-CrEKmpj8.js.map → create-recipe-context-DfQ-MTih.js.map} +1 -1
- package/dist/chunks/create-slot-recipe-context-D_FXDJGp.js +104 -0
- package/dist/chunks/create-slot-recipe-context-D_FXDJGp.js.map +1 -0
- package/dist/chunks/create-slot-recipe-context-HXE1VazG.js +2 -0
- package/dist/chunks/create-slot-recipe-context-HXE1VazG.js.map +1 -0
- package/dist/chunks/datePicker.component-C6cD1_HR.js +2 -0
- package/dist/chunks/datePicker.component-C6cD1_HR.js.map +1 -0
- package/dist/chunks/datePicker.component-eHU7IZgC.js +166 -0
- package/dist/chunks/datePicker.component-eHU7IZgC.js.map +1 -0
- package/dist/chunks/datePicker.provider-BWHE-9FA.js +3009 -0
- package/dist/chunks/datePicker.provider-BWHE-9FA.js.map +1 -0
- package/dist/chunks/datePicker.provider-DgarjPPd.js +15 -0
- package/dist/chunks/datePicker.provider-DgarjPPd.js.map +1 -0
- package/dist/chunks/dateTimePicker.component-Byjxg2lJ.js +317 -0
- package/dist/chunks/dateTimePicker.component-Byjxg2lJ.js.map +1 -0
- package/dist/chunks/dateTimePicker.component-REz9iX4S.js +2 -0
- package/dist/chunks/dateTimePicker.component-REz9iX4S.js.map +1 -0
- package/dist/chunks/{dialog-C51vaoYf.js → dialog-B9jifvV4.js} +37 -36
- package/dist/chunks/{dialog-C51vaoYf.js.map → dialog-B9jifvV4.js.map} +1 -1
- package/dist/chunks/dialog-CZFwddWp.js +2 -0
- package/dist/chunks/{dialog-BPhjKQkb.js.map → dialog-CZFwddWp.js.map} +1 -1
- package/dist/chunks/divider.component-BX3zyB7O.js +2 -0
- package/dist/chunks/divider.component-BX3zyB7O.js.map +1 -0
- package/dist/chunks/divider.component-CFOh4Nw3.js +45 -0
- package/dist/chunks/divider.component-CFOh4Nw3.js.map +1 -0
- package/dist/chunks/divider.types-6MEkMNbx.js +7 -0
- package/dist/chunks/divider.types-6MEkMNbx.js.map +1 -0
- package/dist/chunks/divider.types-DBNcs0IR.js +2 -0
- package/dist/chunks/divider.types-DBNcs0IR.js.map +1 -0
- package/dist/chunks/{empty-BU2EAux9.js → empty-DNH84khx.js} +3 -3
- package/dist/chunks/{empty-BU2EAux9.js.map → empty-DNH84khx.js.map} +1 -1
- package/dist/chunks/field.anatomy-Bhj7Mlr7.js +2 -0
- package/dist/chunks/field.anatomy-Bhj7Mlr7.js.map +1 -0
- package/dist/chunks/field.anatomy-C37GEr2p.js +16 -0
- package/dist/chunks/field.anatomy-C37GEr2p.js.map +1 -0
- package/dist/chunks/{format-BRt-TIiQ.js → format-CK7Imh-5.js} +2 -2
- package/dist/chunks/{format-BRt-TIiQ.js.map → format-CK7Imh-5.js.map} +1 -1
- package/dist/chunks/{format-DgHM6wFr.js → format-CqTHHSak.js} +3 -1
- package/dist/chunks/{format-DgHM6wFr.js.map → format-CqTHHSak.js.map} +1 -1
- package/dist/chunks/grid-item-BmCSQ38y.js +78 -0
- package/dist/chunks/grid-item-BmCSQ38y.js.map +1 -0
- package/dist/chunks/grid-item-CH3dbZHL.js +2 -0
- package/dist/chunks/grid-item-CH3dbZHL.js.map +1 -0
- package/dist/chunks/heading.component-7ikcgDco.js +18 -0
- package/dist/chunks/heading.component-7ikcgDco.js.map +1 -0
- package/dist/chunks/heading.component-DMAQO_-m.js +2 -0
- package/dist/chunks/heading.component-DMAQO_-m.js.map +1 -0
- package/dist/chunks/{icon-button-5UcFiA_W.js → icon-button-CcZMCNUJ.js} +3 -3
- package/dist/chunks/{icon-button-5UcFiA_W.js.map → icon-button-CcZMCNUJ.js.map} +1 -1
- package/dist/chunks/icon.component-B1hr5lLa.js +2 -0
- package/dist/chunks/icon.component-B1hr5lLa.js.map +1 -0
- package/dist/chunks/icon.component-PV_nHBId.js +32 -0
- package/dist/chunks/icon.component-PV_nHBId.js.map +1 -0
- package/dist/chunks/{icons-DQ5FafZQ.js → icons-CoSqruIn.js} +5 -5
- package/dist/chunks/{icons-DQ5FafZQ.js.map → icons-CoSqruIn.js.map} +1 -1
- package/dist/chunks/index-B-OGBT0w.js +2 -0
- package/dist/chunks/{index-BEfEzWJx.js.map → index-B-OGBT0w.js.map} +1 -1
- package/dist/chunks/index-B3xJnxjd.js +371 -0
- package/dist/chunks/index-B3xJnxjd.js.map +1 -0
- package/dist/chunks/index-BFUdiDZp.js +2 -0
- package/dist/chunks/{index-2glJ2faJ.js.map → index-BFUdiDZp.js.map} +1 -1
- package/dist/chunks/{index-CVJXrcei.js → index-BGd_2-DY.js} +29 -27
- package/dist/chunks/{index-CVJXrcei.js.map → index-BGd_2-DY.js.map} +1 -1
- package/dist/chunks/index-BXv9lkZC.js +4 -0
- package/dist/chunks/index-BXv9lkZC.js.map +1 -0
- package/dist/chunks/index-BbZjRFzg.js +265 -0
- package/dist/chunks/index-BbZjRFzg.js.map +1 -0
- package/dist/chunks/{index-CYXurbh4.js → index-BgFImxxe.js} +27 -25
- package/dist/chunks/{index-CYXurbh4.js.map → index-BgFImxxe.js.map} +1 -1
- package/dist/chunks/index-BoulS5Zg.js +2 -0
- package/dist/chunks/index-BoulS5Zg.js.map +1 -0
- package/dist/chunks/index-BrJtqTzN.js +4115 -0
- package/dist/chunks/index-BrJtqTzN.js.map +1 -0
- package/dist/chunks/index-C9UYIjEB.js +1584 -0
- package/dist/chunks/index-C9UYIjEB.js.map +1 -0
- package/dist/chunks/index-CQURjLlA.js +3 -0
- package/dist/chunks/index-CQURjLlA.js.map +1 -0
- package/dist/chunks/{index-BXJJKHzT.js → index-CbVKVxMW.js} +54 -52
- package/dist/chunks/{index-BXJJKHzT.js.map → index-CbVKVxMW.js.map} +1 -1
- package/dist/chunks/{index-CWhDtS-n.js → index-Cxrrsmf-.js} +17 -16
- package/dist/chunks/{index-CWhDtS-n.js.map → index-Cxrrsmf-.js.map} +1 -1
- package/dist/chunks/{index-BZBgTxer.js → index-D0DKQnEK.js} +11 -11
- package/dist/chunks/{index-BZBgTxer.js.map → index-D0DKQnEK.js.map} +1 -1
- package/dist/chunks/index-D1RhzPVz.js +984 -0
- package/dist/chunks/index-D1RhzPVz.js.map +1 -0
- package/dist/chunks/index-D3Q0mQNf.js +325 -0
- package/dist/chunks/index-D3Q0mQNf.js.map +1 -0
- package/dist/chunks/index-D6HBfqAu.js +2 -0
- package/dist/chunks/index-D6HBfqAu.js.map +1 -0
- package/dist/chunks/index-D6c4fMjg.js +2 -0
- package/dist/chunks/index-D6c4fMjg.js.map +1 -0
- package/dist/chunks/{index-CfqoBQoP.js → index-D7QT9KIZ.js} +9 -9
- package/dist/chunks/{index-CfqoBQoP.js.map → index-D7QT9KIZ.js.map} +1 -1
- package/dist/chunks/{index-WYcfOUFA.js → index-DIszpWqO.js} +2 -2
- package/dist/chunks/{index-WYcfOUFA.js.map → index-DIszpWqO.js.map} +1 -1
- package/dist/chunks/{index-D0HCo_Ly.js → index-DLe40do7.js} +2 -2
- package/dist/chunks/{index-D0HCo_Ly.js.map → index-DLe40do7.js.map} +1 -1
- package/dist/chunks/index-DS4KlAkI.js +371 -0
- package/dist/chunks/index-DS4KlAkI.js.map +1 -0
- package/dist/chunks/{index-nNZWP0FQ.js → index-DTVestnf.js} +2 -2
- package/dist/chunks/{index-nNZWP0FQ.js.map → index-DTVestnf.js.map} +1 -1
- package/dist/chunks/index-DVyODQn6.js +8 -0
- package/dist/chunks/index-DVyODQn6.js.map +1 -0
- package/dist/chunks/index-D_vndwae.js +3 -0
- package/dist/chunks/index-D_vndwae.js.map +1 -0
- package/dist/chunks/index-DfzXSlq1.js +2477 -0
- package/dist/chunks/index-DfzXSlq1.js.map +1 -0
- package/dist/chunks/{index-BhSvtzbY.js → index-QVc_GVoE.js} +13 -13
- package/dist/chunks/{index-BhSvtzbY.js.map → index-QVc_GVoE.js.map} +1 -1
- package/dist/chunks/index-Ts8g8jZd.js +2 -0
- package/dist/chunks/index-Ts8g8jZd.js.map +1 -0
- package/dist/chunks/index-_913FPya.js +2 -0
- package/dist/chunks/{index-A_vmTNU7.js.map → index-_913FPya.js.map} +1 -1
- package/dist/chunks/index-fHSGm2nC.js +1044 -0
- package/dist/chunks/index-fHSGm2nC.js.map +1 -0
- package/dist/chunks/{index-eNFIsSpE.js → index-kpOEHtZZ.js} +2 -2
- package/dist/chunks/{index-eNFIsSpE.js.map → index-kpOEHtZZ.js.map} +1 -1
- package/dist/chunks/index-rSq6Bry6.js +2 -0
- package/dist/chunks/{index-DAI6_P9H.js.map → index-rSq6Bry6.js.map} +1 -1
- package/dist/chunks/{index-BhPrz8Zu.js → index-wV4hG2vI.js} +19 -19
- package/dist/chunks/{index-BhPrz8Zu.js.map → index-wV4hG2vI.js.map} +1 -1
- package/dist/chunks/index-yh2QitBe.js +2 -0
- package/dist/chunks/index-yh2QitBe.js.map +1 -0
- package/dist/chunks/input-group-CFelIL63.js +78 -0
- package/dist/chunks/input-group-CFelIL63.js.map +1 -0
- package/dist/chunks/input-group-DUdSDk4o.js +2 -0
- package/dist/chunks/input-group-DUdSDk4o.js.map +1 -0
- package/dist/chunks/isToday-BgNkHh5t.js +2 -0
- package/dist/chunks/isToday-BgNkHh5t.js.map +1 -0
- package/dist/chunks/isToday-iCYsPDMT.js +23 -0
- package/dist/chunks/isToday-iCYsPDMT.js.map +1 -0
- package/dist/chunks/link.component--URNKuK2.js +44 -0
- package/dist/chunks/link.component--URNKuK2.js.map +1 -0
- package/dist/chunks/link.component-_YXG8MDq.js +2 -0
- package/dist/chunks/link.component-_YXG8MDq.js.map +1 -0
- package/dist/chunks/{list-D22V_L58.js → list-DTRn3TmT.js} +2 -2
- package/dist/chunks/{list-D22V_L58.js.map → list-DTRn3TmT.js.map} +1 -1
- package/dist/chunks/{list-DwRM9eA_.js → list-v83ZN2MC.js} +2 -2
- package/dist/chunks/{list-DwRM9eA_.js.map → list-v83ZN2MC.js.map} +1 -1
- package/dist/chunks/logo.types-88a31xCx.js +2 -0
- package/dist/chunks/logo.types-88a31xCx.js.map +1 -0
- package/dist/chunks/logo.types-C5GwpHjM.js +51 -0
- package/dist/chunks/logo.types-C5GwpHjM.js.map +1 -0
- package/dist/chunks/menu.component-D4-4xRDj.js +2 -0
- package/dist/chunks/menu.component-D4-4xRDj.js.map +1 -0
- package/dist/chunks/menu.component-DwTen8Uv.js +704 -0
- package/dist/chunks/menu.component-DwTen8Uv.js.map +1 -0
- package/dist/chunks/modal.types-74os4Bqi.js +2 -0
- package/dist/chunks/modal.types-74os4Bqi.js.map +1 -0
- package/dist/chunks/modal.types-B0rK6xJy.js +115 -0
- package/dist/chunks/modal.types-B0rK6xJy.js.map +1 -0
- package/dist/chunks/{notificationCounter.component-Lu4_Owvr.js → notificationCounter.component-BexkISUl.js} +37 -18
- package/dist/chunks/notificationCounter.component-BexkISUl.js.map +1 -0
- package/dist/chunks/notificationCounter.component-DJpUXeXm.js +2 -0
- package/dist/chunks/notificationCounter.component-DJpUXeXm.js.map +1 -0
- package/dist/chunks/numberInput.component-DIABzNV6.js +2 -0
- package/dist/chunks/numberInput.component-DIABzNV6.js.map +1 -0
- package/dist/chunks/numberInput.component-RCwUUzmH.js +227 -0
- package/dist/chunks/numberInput.component-RCwUUzmH.js.map +1 -0
- package/dist/chunks/picture.component-BA2hgdZy.js +2 -0
- package/dist/chunks/picture.component-BA2hgdZy.js.map +1 -0
- package/dist/chunks/picture.component-DzdHIFN_.js +28 -0
- package/dist/chunks/picture.component-DzdHIFN_.js.map +1 -0
- package/dist/chunks/pinInput.types-BCzsoF9r.js +2 -0
- package/dist/chunks/{pinInput.types-Cqm1Px5l.js.map → pinInput.types-BCzsoF9r.js.map} +1 -1
- package/dist/chunks/pinInput.types-CcaAN6P2.js +155 -0
- package/dist/chunks/{pinInput.types-CcN0aX_i.js.map → pinInput.types-CcaAN6P2.js.map} +1 -1
- package/dist/chunks/popover-C7aj8Iwj.js +2 -0
- package/dist/chunks/popover-C7aj8Iwj.js.map +1 -0
- package/dist/chunks/popover-pd70xkY_.js +111 -0
- package/dist/chunks/popover-pd70xkY_.js.map +1 -0
- package/dist/chunks/popover-root-provider-CZDbUJ2K.js +2 -0
- package/dist/chunks/{popover-root-provider-ZB5BcrXn.js.map → popover-root-provider-CZDbUJ2K.js.map} +1 -1
- package/dist/chunks/popover-root-provider-DR0Iuda1.js +44 -0
- package/dist/chunks/{popover-root-provider-CkW1eCBQ.js.map → popover-root-provider-DR0Iuda1.js.map} +1 -1
- package/dist/chunks/popover.component-BBp_5m8e.js +2 -0
- package/dist/chunks/popover.component-BBp_5m8e.js.map +1 -0
- package/dist/chunks/popover.component-DEOUdSu3.js +220 -0
- package/dist/chunks/popover.component-DEOUdSu3.js.map +1 -0
- package/dist/chunks/popover.recipe-B9bkpDfc.js +126 -0
- package/dist/chunks/popover.recipe-B9bkpDfc.js.map +1 -0
- package/dist/chunks/popover.recipe-Czy8Aeft.js +2 -0
- package/dist/chunks/popover.recipe-Czy8Aeft.js.map +1 -0
- package/dist/chunks/popover.types-CQJj3uOX.js +7 -0
- package/dist/chunks/popover.types-CQJj3uOX.js.map +1 -0
- package/dist/chunks/popover.types-ChA9ccQ2.js +2 -0
- package/dist/chunks/popover.types-ChA9ccQ2.js.map +1 -0
- package/dist/chunks/progress-value-text-CFVhPKYk.js +2 -0
- package/dist/chunks/progress-value-text-CFVhPKYk.js.map +1 -0
- package/dist/chunks/progress-value-text-DZkUF2cO.js +58 -0
- package/dist/chunks/progress-value-text-DZkUF2cO.js.map +1 -0
- package/dist/chunks/radioGroup.types-C7A8mLMz.js +2 -0
- package/dist/chunks/radioGroup.types-C7A8mLMz.js.map +1 -0
- package/dist/chunks/radioGroup.types-DJ68ERdO.js +228 -0
- package/dist/chunks/radioGroup.types-DJ68ERdO.js.map +1 -0
- package/dist/chunks/radiomark-Cj0NEJeE.js +2 -0
- package/dist/chunks/radiomark-Cj0NEJeE.js.map +1 -0
- package/dist/chunks/radiomark-DdwVpBDT.js +22 -0
- package/dist/chunks/radiomark-DdwVpBDT.js.map +1 -0
- package/dist/chunks/radiomark.component-D_7wT5VA.js +11 -0
- package/dist/chunks/radiomark.component-D_7wT5VA.js.map +1 -0
- package/dist/chunks/radiomark.component-YJNr68s7.js +2 -0
- package/dist/chunks/radiomark.component-YJNr68s7.js.map +1 -0
- package/dist/chunks/rating-group-CfwdAW9a.js +133 -0
- package/dist/chunks/rating-group-CfwdAW9a.js.map +1 -0
- package/dist/chunks/rating-group-D8QA23q6.js +2 -0
- package/dist/chunks/rating-group-D8QA23q6.js.map +1 -0
- package/dist/chunks/rating.component-BsuGbcxP.js +2 -0
- package/dist/chunks/rating.component-BsuGbcxP.js.map +1 -0
- package/dist/chunks/rating.component-ChzcvUl6.js +70 -0
- package/dist/chunks/rating.component-ChzcvUl6.js.map +1 -0
- package/dist/chunks/ratingDots.component-CVjSZ9JJ.js +2 -0
- package/dist/chunks/ratingDots.component-CVjSZ9JJ.js.map +1 -0
- package/dist/chunks/ratingDots.component-D9WQGVcj.js +147 -0
- package/dist/chunks/ratingDots.component-D9WQGVcj.js.map +1 -0
- package/dist/chunks/{render-strategy-CfHUEDVm.js → render-strategy-kPh1pd2U.js} +2 -2
- package/dist/chunks/{render-strategy-CfHUEDVm.js.map → render-strategy-kPh1pd2U.js.map} +1 -1
- package/dist/chunks/{render-strategy-Dr73HbQf.js → render-strategy-munDZLwL.js} +2 -2
- package/dist/chunks/{render-strategy-Dr73HbQf.js.map → render-strategy-munDZLwL.js.map} +1 -1
- package/dist/chunks/select.component-B4mAPqzN.js +1099 -0
- package/dist/chunks/select.component-B4mAPqzN.js.map +1 -0
- package/dist/chunks/select.component-CCNxMGvb.js +2 -0
- package/dist/chunks/select.component-CCNxMGvb.js.map +1 -0
- package/dist/chunks/{sortableList.component-vxiA7bvr.js → sortableList.component-BlwtnxVj.js} +3 -3
- package/dist/chunks/{sortableList.component-vxiA7bvr.js.map → sortableList.component-BlwtnxVj.js.map} +1 -1
- package/dist/chunks/{sortableList.component-i4dJ9oHN.js → sortableList.component-XfURY7C2.js} +384 -379
- package/dist/chunks/{sortableList.component-i4dJ9oHN.js.map → sortableList.component-XfURY7C2.js.map} +1 -1
- package/dist/chunks/spinner-B9ytCKVs.js +8 -0
- package/dist/chunks/{spinner-C31ZWQmA.js.map → spinner-B9ytCKVs.js.map} +1 -1
- package/dist/chunks/{spinner.component-DPYj17HK.js → spinner.component-B3dkvoO9.js} +53 -45
- package/dist/chunks/spinner.component-B3dkvoO9.js.map +1 -0
- package/dist/chunks/spinner.component-DuW1_IWM.js +2 -0
- package/dist/chunks/spinner.component-DuW1_IWM.js.map +1 -0
- package/dist/chunks/styledAvatar.types-CcP-Vl9c.js +2 -0
- package/dist/chunks/styledAvatar.types-CcP-Vl9c.js.map +1 -0
- package/dist/chunks/styledAvatar.types-cR6PNPxA.js +69 -0
- package/dist/chunks/styledAvatar.types-cR6PNPxA.js.map +1 -0
- package/dist/chunks/swatch.types-AZLB8OWG.js +2 -0
- package/dist/chunks/swatch.types-AZLB8OWG.js.map +1 -0
- package/dist/chunks/{swatch.types-CXlghcLw.js → swatch.types-CkrkMi11.js} +21 -20
- package/dist/chunks/swatch.types-CkrkMi11.js.map +1 -0
- package/dist/chunks/switch.component-CgzCLoTB.js +2 -0
- package/dist/chunks/{switch.component-Cke7O8gk.js.map → switch.component-CgzCLoTB.js.map} +1 -1
- package/dist/chunks/switch.component-CpV7mnhR.js +155 -0
- package/dist/chunks/{switch.component-C88jBbo_.js.map → switch.component-CpV7mnhR.js.map} +1 -1
- package/dist/chunks/{tab.types-DCkus0y2.js → tab.types-DaJfFBvr.js} +136 -117
- package/dist/chunks/{tab.types-DCkus0y2.js.map → tab.types-DaJfFBvr.js.map} +1 -1
- package/dist/chunks/tab.types-DwPEP_5N.js +2 -0
- package/dist/chunks/{tab.types-DpmXyw5C.js.map → tab.types-DwPEP_5N.js.map} +1 -1
- package/dist/chunks/tag.component-B7V76XfM.js +84 -0
- package/dist/chunks/tag.component-B7V76XfM.js.map +1 -0
- package/dist/chunks/tag.component-C98Wf07v.js +2 -0
- package/dist/chunks/tag.component-C98Wf07v.js.map +1 -0
- package/dist/chunks/tagBlock.component-BGEvRu81.js +2 -0
- package/dist/chunks/tagBlock.component-BGEvRu81.js.map +1 -0
- package/dist/chunks/tagBlock.component-Cor6eakc.js +170 -0
- package/dist/chunks/tagBlock.component-Cor6eakc.js.map +1 -0
- package/dist/chunks/text.component-CdTyTFds.js +12 -0
- package/dist/chunks/text.component-CdTyTFds.js.map +1 -0
- package/dist/chunks/text.component-CeioUl0G.js +2 -0
- package/dist/chunks/text.component-CeioUl0G.js.map +1 -0
- package/dist/chunks/textInput.component-BC0Hi8R_.js +108 -0
- package/dist/chunks/textInput.component-BC0Hi8R_.js.map +1 -0
- package/dist/chunks/textInput.component-C1vwy6pL.js +2 -0
- package/dist/chunks/textInput.component-C1vwy6pL.js.map +1 -0
- package/dist/chunks/textarea.component-D15hA9Jb.js +2 -0
- package/dist/chunks/{textarea.component-Dk2IMKkr.js.map → textarea.component-D15hA9Jb.js.map} +1 -1
- package/dist/chunks/textarea.component-axjxiv82.js +96 -0
- package/dist/chunks/{textarea.component-BYexywy1.js.map → textarea.component-axjxiv82.js.map} +1 -1
- package/dist/chunks/{theme.provider-w_I9S10D.js → theme.provider-BD7qyu-B.js} +1405 -1339
- package/dist/chunks/theme.provider-BD7qyu-B.js.map +1 -0
- package/dist/chunks/theme.provider-DFwAy7tr.js +28 -0
- package/dist/chunks/theme.provider-DFwAy7tr.js.map +1 -0
- package/dist/chunks/timePicker.component-Cz2XxVL6.js +2 -0
- package/dist/chunks/timePicker.component-Cz2XxVL6.js.map +1 -0
- package/dist/chunks/timePicker.component-u34pHrzr.js +220 -0
- package/dist/chunks/timePicker.component-u34pHrzr.js.map +1 -0
- package/dist/chunks/timeRange.component-BiA1VWQ8.js +19 -0
- package/dist/chunks/timeRange.component-BiA1VWQ8.js.map +1 -0
- package/dist/chunks/timeRange.component-tU_nCTmS.js +2 -0
- package/dist/chunks/timeRange.component-tU_nCTmS.js.map +1 -0
- package/dist/chunks/timestamp.component-DBmc7D23.js +36 -0
- package/dist/chunks/timestamp.component-DBmc7D23.js.map +1 -0
- package/dist/chunks/timestamp.component-DYZHgaas.js +2 -0
- package/dist/chunks/timestamp.component-DYZHgaas.js.map +1 -0
- package/dist/chunks/toaster.records-CDSkoMuU.js +2 -0
- package/dist/chunks/{toaster.records-eCXbM85Z.js.map → toaster.records-CDSkoMuU.js.map} +1 -1
- package/dist/chunks/{toaster.records-oryzm5Go.js → toaster.records-Cb3hbtuY.js} +103 -102
- package/dist/chunks/{toaster.records-oryzm5Go.js.map → toaster.records-Cb3hbtuY.js.map} +1 -1
- package/dist/chunks/tooltip.component-BkFDi5yK.js +2 -0
- package/dist/chunks/{tooltip.component-CATpCSkf.js.map → tooltip.component-BkFDi5yK.js.map} +1 -1
- package/dist/chunks/{tooltip.component-mjdP7nPN.js → tooltip.component-C_NS-AoH.js} +126 -103
- package/dist/chunks/{tooltip.component-mjdP7nPN.js.map → tooltip.component-C_NS-AoH.js.map} +1 -1
- package/dist/chunks/{typography.records-CpYV1kns.js → typography.records-BEd2lI_g.js} +10 -22
- package/dist/chunks/typography.records-BEd2lI_g.js.map +1 -0
- package/dist/chunks/typography.records-Cg_lT1Z3.js +2 -0
- package/dist/chunks/typography.records-Cg_lT1Z3.js.map +1 -0
- package/dist/chunks/{use-field-context-BTxME29X.js → use-field-context-Cm29IQ7H.js} +2 -2
- package/dist/chunks/{use-field-context-BTxME29X.js.map → use-field-context-Cm29IQ7H.js.map} +1 -1
- package/dist/chunks/{use-field-context-RQeEcNpb.js → use-field-context-DrC9mrDd.js} +2 -2
- package/dist/chunks/{use-field-context-RQeEcNpb.js.map → use-field-context-DrC9mrDd.js.map} +1 -1
- package/dist/chunks/use-locale-context-Bw4Gg9Z0.js +738 -0
- package/dist/chunks/use-locale-context-Bw4Gg9Z0.js.map +1 -0
- package/dist/chunks/use-locale-context-ym21RUxU.js +22 -0
- package/dist/chunks/use-locale-context-ym21RUxU.js.map +1 -0
- package/dist/chunks/useIconTextSizeMap-BK-pUrQv.js.map +1 -1
- package/dist/chunks/useIconTextSizeMap-BXmABb54.js.map +1 -1
- package/dist/chunks/withFormControl-DePFf9SY.js +367 -0
- package/dist/chunks/withFormControl-DePFf9SY.js.map +1 -0
- package/dist/chunks/withFormControl-wZA87Sd4.js +2 -0
- package/dist/chunks/withFormControl-wZA87Sd4.js.map +1 -0
- package/dist/chunks/withTruncation-DE3FFPE7.js +2 -0
- package/dist/chunks/withTruncation-DE3FFPE7.js.map +1 -0
- package/dist/chunks/withTruncation-DTCfQ2yk.js +92 -0
- package/dist/chunks/withTruncation-DTCfQ2yk.js.map +1 -0
- package/dist/chunks/{wrap-CRNL4bE6.js → wrap-Cu5ZEseD.js} +2 -2
- package/dist/chunks/{wrap-CRNL4bE6.js.map → wrap-Cu5ZEseD.js.map} +1 -1
- package/dist/cjs/chakra/index.cjs +2 -2
- package/dist/cjs/chakra/index.cjs.map +1 -1
- package/dist/cjs/components/Alert/index.cjs +1 -1
- package/dist/cjs/components/Avatar/index.cjs +1 -1
- package/dist/cjs/components/AvatarGroup/index.cjs +1 -1
- package/dist/cjs/components/Button/index.cjs +1 -1
- package/dist/cjs/components/ButtonGroup/index.cjs +1 -1
- package/dist/cjs/components/Calendar/index.cjs +2 -0
- package/dist/cjs/components/Calendar/index.cjs.map +1 -0
- package/dist/cjs/components/Card/index.cjs +1 -1
- package/dist/cjs/components/CharacterCounter/index.cjs +1 -1
- package/dist/cjs/components/Checkbox/index.cjs +1 -1
- package/dist/cjs/components/CheckboxGroup/index.cjs +1 -1
- package/dist/cjs/components/ConversationCard/index.cjs +1 -1
- package/dist/cjs/components/DatePicker/index.cjs +1 -1
- package/dist/cjs/components/DateTimePicker/index.cjs +2 -0
- package/dist/cjs/components/DateTimePicker/index.cjs.map +1 -0
- package/dist/cjs/components/Divider/index.cjs +1 -1
- package/dist/cjs/components/Heading/index.cjs +1 -1
- package/dist/cjs/components/Icon/generated/index.cjs +1 -1
- package/dist/cjs/components/Icon/generated/index.cjs.map +1 -1
- package/dist/cjs/components/Icon/index.cjs +1 -1
- package/dist/cjs/components/Link/index.cjs +1 -1
- package/dist/cjs/components/Logo/index.cjs +1 -1
- package/dist/cjs/components/Menu/index.cjs +1 -1
- package/dist/cjs/components/Modal/index.cjs +1 -1
- package/dist/cjs/components/NotificationCounter/index.cjs +1 -1
- package/dist/cjs/components/NumberInput/index.cjs +2 -0
- package/dist/cjs/components/NumberInput/index.cjs.map +1 -0
- package/dist/cjs/components/Picture/index.cjs +1 -1
- package/dist/cjs/components/PinInput/index.cjs +1 -1
- package/dist/cjs/components/Popover/index.cjs +1 -1
- package/dist/cjs/components/Progress/index.cjs +2 -0
- package/dist/cjs/components/Progress/index.cjs.map +1 -0
- package/dist/cjs/components/RadioGroup/index.cjs +1 -1
- package/dist/cjs/components/Radiomark/index.cjs +2 -0
- package/dist/cjs/components/Radiomark/index.cjs.map +1 -0
- package/dist/cjs/components/Rating/index.cjs +2 -0
- package/dist/cjs/components/Rating/index.cjs.map +1 -0
- package/dist/cjs/components/RatingDots/index.cjs +1 -1
- package/dist/cjs/components/Select/index.cjs +1 -1
- package/dist/cjs/components/SortableList/index.cjs +1 -1
- package/dist/cjs/components/Spinner/index.cjs +1 -1
- package/dist/cjs/components/StyledAvatar/index.cjs +1 -1
- package/dist/cjs/components/Swatch/index.cjs +1 -1
- package/dist/cjs/components/Switch/index.cjs +1 -1
- package/dist/cjs/components/Tabs/index.cjs +1 -1
- package/dist/cjs/components/Tag/index.cjs +1 -1
- package/dist/cjs/components/TagBlock/index.cjs +1 -1
- package/dist/cjs/components/Text/index.cjs +1 -1
- package/dist/cjs/components/TextInput/index.cjs +1 -1
- package/dist/cjs/components/Textarea/index.cjs +1 -1
- package/dist/cjs/components/TimePicker/index.cjs +1 -1
- package/dist/cjs/components/TimeRange/index.cjs +1 -1
- package/dist/cjs/components/Timestamp/index.cjs +1 -1
- package/dist/cjs/components/Toast/index.cjs +1 -1
- package/dist/cjs/components/Toast/index.cjs.map +1 -1
- package/dist/cjs/components/Tooltip/index.cjs +1 -1
- package/dist/cjs/components/index.cjs +1 -1
- package/dist/cjs/hooks/useBreakpoint/index.cjs.map +1 -1
- package/dist/cjs/hooks/useColorMode/index.cjs.map +1 -1
- package/dist/cjs/hooks/useColorModeValue/index.cjs.map +1 -1
- package/dist/cjs/hooks/useDeviceType/index.cjs.map +1 -1
- package/dist/cjs/index.cjs +1 -1
- package/dist/cjs/theme/index.cjs +1 -1
- package/dist/cjs/theme/semanticTokens/index.cjs +1 -1
- package/dist/cjs/theme/semanticTokens/index.cjs.map +1 -1
- package/dist/esm/chakra/index.js +1682 -1997
- package/dist/esm/chakra/index.js.map +1 -1
- package/dist/esm/components/Alert/index.js +1 -1
- package/dist/esm/components/Avatar/index.js +1 -1
- package/dist/esm/components/AvatarGroup/index.js +1 -1
- package/dist/esm/components/Button/index.js +2 -2
- package/dist/esm/components/ButtonGroup/index.js +1 -1
- package/dist/esm/components/Calendar/index.js +5 -0
- package/dist/esm/components/Calendar/index.js.map +1 -0
- package/dist/esm/components/Card/index.js +1 -1
- package/dist/esm/components/CharacterCounter/index.js +1 -1
- package/dist/esm/components/Checkbox/index.js +1 -1
- package/dist/esm/components/CheckboxGroup/index.js +1 -1
- package/dist/esm/components/ConversationCard/index.js +1 -1
- package/dist/esm/components/DatePicker/index.js +4 -3
- package/dist/esm/components/DatePicker/index.js.map +1 -1
- package/dist/esm/components/DateTimePicker/index.js +7 -0
- package/dist/esm/components/DateTimePicker/index.js.map +1 -0
- package/dist/esm/components/Divider/index.js +6 -5
- package/dist/esm/components/Divider/index.js.map +1 -1
- package/dist/esm/components/Heading/index.js +1 -1
- package/dist/esm/components/Icon/generated/index.js +556 -342
- package/dist/esm/components/Icon/generated/index.js.map +1 -1
- package/dist/esm/components/Icon/index.js +1 -1
- package/dist/esm/components/Link/index.js +1 -1
- package/dist/esm/components/Logo/index.js +1 -1
- package/dist/esm/components/Menu/index.js +1 -1
- package/dist/esm/components/Modal/index.js +1 -1
- package/dist/esm/components/NotificationCounter/index.js +1 -1
- package/dist/esm/components/NumberInput/index.js +5 -0
- package/dist/esm/components/NumberInput/index.js.map +1 -0
- package/dist/esm/components/Picture/index.js +1 -1
- package/dist/esm/components/PinInput/index.js +1 -1
- package/dist/esm/components/Popover/index.js +2 -2
- package/dist/esm/components/Progress/index.js +57 -0
- package/dist/esm/components/Progress/index.js.map +1 -0
- package/dist/esm/components/RadioGroup/index.js +1 -1
- package/dist/esm/components/Radiomark/index.js +5 -0
- package/dist/esm/components/Radiomark/index.js.map +1 -0
- package/dist/esm/components/Rating/index.js +5 -0
- package/dist/esm/components/Rating/index.js.map +1 -0
- package/dist/esm/components/RatingDots/index.js +1 -1
- package/dist/esm/components/Select/index.js +1 -1
- package/dist/esm/components/SortableList/index.js +1 -1
- package/dist/esm/components/Spinner/index.js +1 -1
- package/dist/esm/components/StyledAvatar/index.js +1 -1
- package/dist/esm/components/Swatch/index.js +1 -1
- package/dist/esm/components/Switch/index.js +1 -1
- package/dist/esm/components/Tabs/index.js +1 -1
- package/dist/esm/components/Tag/index.js +1 -1
- package/dist/esm/components/TagBlock/index.js +1 -1
- package/dist/esm/components/Text/index.js +1 -1
- package/dist/esm/components/TextInput/index.js +1 -1
- package/dist/esm/components/Textarea/index.js +1 -1
- package/dist/esm/components/TimePicker/index.js +1 -1
- package/dist/esm/components/TimeRange/index.js +1 -1
- package/dist/esm/components/Timestamp/index.js +1 -1
- package/dist/esm/components/Toast/index.js +26 -23
- package/dist/esm/components/Toast/index.js.map +1 -1
- package/dist/esm/components/Tooltip/index.js +1 -1
- package/dist/esm/components/index.js +131 -117
- package/dist/esm/components/index.js.map +1 -1
- package/dist/esm/hooks/useBreakpoint/index.js.map +1 -1
- package/dist/esm/hooks/useColorMode/index.js.map +1 -1
- package/dist/esm/hooks/useColorModeValue/index.js.map +1 -1
- package/dist/esm/hooks/useDeviceType/index.js.map +1 -1
- package/dist/esm/index.js +148 -134
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/theme/index.js +1 -1
- package/dist/esm/theme/semanticTokens/index.js +4 -4
- package/dist/esm/theme/semanticTokens/index.js.map +1 -1
- package/dist/types/chakra/index.d.ts +2 -4
- package/dist/types/components/Alert/alert.component.d.ts +28 -1
- package/dist/types/components/Alert/alert.recipe.d.ts +3 -2
- package/dist/types/components/Alert/components/AlertButton/alertButton.component.d.ts +12 -1
- package/dist/types/components/Avatar/avatar.component.d.ts +30 -2
- package/dist/types/components/Avatar/avatar.recipe.d.ts +3 -2
- package/dist/types/components/Avatar/avatar.records.d.ts +2 -0
- package/dist/types/components/Avatar/components/AvatarBadge/avatarBadge.component.d.ts +9 -1
- package/dist/types/components/Avatar/components/AvatarRemoveButton/avatarRemoveButton.component.d.ts +15 -6
- package/dist/types/components/Avatar/components/AvatarTooltipTriggerWrapper/avatarTooltipTriggerWrapper.component.d.ts +2 -0
- package/dist/types/components/AvatarGroup/avatarGroup.component.d.ts +27 -3
- package/dist/types/components/Button/button.component.d.ts +14 -1
- package/dist/types/components/Button/button.recipe.d.ts +3 -1
- package/dist/types/components/Button/button.types.d.ts +2 -2
- package/dist/types/components/ButtonGroup/buttonGroup.component.d.ts +12 -1
- package/dist/types/components/Calendar/calendar.component.d.ts +19 -0
- package/dist/types/components/Calendar/index.d.ts +1 -0
- package/dist/types/components/Card/card.component.d.ts +41 -1
- package/dist/types/components/CharacterCounter/characterCounter.component.d.ts +9 -1
- package/dist/types/components/Checkbox/checkbox.component.d.ts +19 -2
- package/dist/types/components/Checkbox/checkbox.recipe.d.ts +3 -2
- package/dist/types/components/Checkbox/checkbox.types.d.ts +4 -0
- package/dist/types/components/Checkbox/index.d.ts +1 -0
- package/dist/types/components/CheckboxGroup/checkboxGroup.component.d.ts +12 -2
- package/dist/types/components/ConversationCard/components/ConversationCardAvatarGroup/conversationCardAvatarGroup.component.d.ts +11 -1
- package/dist/types/components/ConversationCard/components/ConversationCardButtons/conversationCardButtons.component.d.ts +22 -1
- package/dist/types/components/ConversationCard/components/ConversationCardContent/conversationCardContent.component.d.ts +8 -1
- package/dist/types/components/ConversationCard/components/ConversationCardFooter/conversationCardFooter.component.d.ts +8 -1
- package/dist/types/components/ConversationCard/components/ConversationCardHeader/conversationCardHeader.component.d.ts +12 -1
- package/dist/types/components/ConversationCard/components/ConversationCardTags/conversationCardTags.component.d.ts +7 -1
- package/dist/types/components/ConversationCard/conversationCard.component.d.ts +29 -1
- package/dist/types/components/DatePicker/components/DatePickerCalendar/datePickerCalendar.component.d.ts +10 -1
- package/dist/types/components/DatePicker/components/DatePickerDay/datePickerCalendarDay.component.d.ts +11 -1
- package/dist/types/components/DatePicker/components/DatePickerDay/datePickerCalendarDay.recipe.d.ts +5 -4
- package/dist/types/components/DatePicker/components/DatePickerDay/datePickerCalendarDay.types.d.ts +1 -1
- package/dist/types/components/DatePicker/components/DatePickerFooter/datePickerFooter.component.d.ts +9 -0
- package/dist/types/components/DatePicker/components/DatePickerHeader/datePickerHeader.component.d.ts +15 -1
- package/dist/types/components/DatePicker/components/DatePickerInput/datePickerInput.component.d.ts +6 -1
- package/dist/types/components/DatePicker/components/DatePickerMonth/datePickerCalendarMonth.component.d.ts +11 -1
- package/dist/types/components/DatePicker/context/datePicker.context.d.ts +3 -0
- package/dist/types/components/DatePicker/context/datePicker.provider.d.ts +10 -1
- package/dist/types/components/DatePicker/datePicker.component.d.ts +25 -11
- package/dist/types/components/DatePicker/datePicker.types.d.ts +18 -0
- package/dist/types/components/DatePicker/hooks/useComputeCornerRoundingFlags.d.ts +10 -0
- package/dist/types/components/DatePicker/utils/getDayVariant.d.ts +12 -0
- package/dist/types/components/DateTimePicker/components/DateTimePickerCustomView/dateTimePickerCustomView.component.d.ts +7 -0
- package/dist/types/components/DateTimePicker/components/DateTimePickerQuickOptions/dateTimePickerQuickOptions.component.d.ts +14 -0
- package/dist/types/components/DateTimePicker/components/DateTimePickerRangeSelector/dateTimePickerRangeSelector.component.d.ts +10 -0
- package/dist/types/components/DateTimePicker/dateTimePicker.component.d.ts +33 -0
- package/dist/types/components/DateTimePicker/dateTimePicker.records.d.ts +8 -0
- package/dist/types/components/DateTimePicker/dateTimePicker.types.d.ts +11 -0
- package/dist/types/components/DateTimePicker/index.d.ts +2 -0
- package/dist/types/components/DateTimePicker/utils/quickOptions.d.ts +13 -0
- package/dist/types/components/Divider/divider.component.d.ts +7 -2
- package/dist/types/components/Heading/heading.component.d.ts +12 -0
- package/dist/types/components/Icon/generated/Backspace.d.ts +10 -0
- package/dist/types/components/Icon/generated/CaretLeft.d.ts +10 -0
- package/dist/types/components/Icon/generated/CheckList.d.ts +10 -0
- package/dist/types/components/Icon/generated/Globe.d.ts +10 -0
- package/dist/types/components/Icon/generated/InputAlt.d.ts +10 -0
- package/dist/types/components/Icon/generated/LightBulb.d.ts +10 -0
- package/dist/types/components/Icon/generated/SelectDropDown.d.ts +10 -0
- package/dist/types/components/Icon/generated/TextArea.d.ts +10 -0
- package/dist/types/components/Icon/generated/TextBlock.d.ts +10 -0
- package/dist/types/components/Icon/generated/index.d.ts +1 -1
- package/dist/types/components/Icon/icon.component.d.ts +10 -0
- package/dist/types/components/Link/components/LinkIcon/linkIcon.component.d.ts +7 -0
- package/dist/types/components/Link/link.component.d.ts +19 -0
- package/dist/types/components/Logo/logo.component.d.ts +14 -1
- package/dist/types/components/Menu/components/MenuButton/menuButton.component.d.ts +22 -0
- package/dist/types/components/Menu/components/MenuItem/menuItem.component.d.ts +34 -5
- package/dist/types/components/Menu/components/MenuList/menuList.types.d.ts +18 -0
- package/dist/types/components/Menu/components/MenuToggleButtons/menuToggleButtons.component.d.ts +17 -0
- package/dist/types/components/Menu/index.d.ts +4 -0
- package/dist/types/components/Menu/menu.component.d.ts +22 -19
- package/dist/types/components/Menu/menu.recipe.d.ts +1 -1
- package/dist/types/components/Menu/menu.types.d.ts +17 -0
- package/dist/types/components/Modal/components/ModalFooter/modalFooter.component.d.ts +24 -1
- package/dist/types/components/Modal/modal.component.d.ts +46 -1
- package/dist/types/components/Modal/modal.recipe.d.ts +2 -2
- package/dist/types/components/NotificationCounter/notificationCounter.component.d.ts +19 -1
- package/dist/types/components/NotificationCounter/notificationCounter.records.d.ts +5 -0
- package/dist/types/components/NumberInput/index.d.ts +2 -0
- package/dist/types/components/NumberInput/numberInput.component.d.ts +40 -0
- package/dist/types/components/NumberInput/numberInput.recipe.d.ts +21 -0
- package/dist/types/components/NumberInput/numberInput.types.d.ts +4 -0
- package/dist/types/components/Picture/picture.component.d.ts +9 -1
- package/dist/types/components/PinInput/pinInput.component.d.ts +19 -1
- package/dist/types/components/PinInput/pinInput.recipe.d.ts +1 -1
- package/dist/types/components/Popover/components/PopoverFooter/popoverFooter.component.d.ts +26 -1
- package/dist/types/components/Popover/components/PopoverHeader/popoverHeader.component.d.ts +19 -1
- package/dist/types/components/Popover/popover.component.d.ts +45 -2
- package/dist/types/components/Popover/popover.recipe.d.ts +4 -3
- package/dist/types/components/Popover/popover.types.d.ts +1 -1
- package/dist/types/components/Progress/index.d.ts +2 -0
- package/dist/types/components/Progress/progress.component.d.ts +26 -0
- package/dist/types/components/Progress/progress.recipe.d.ts +38 -0
- package/dist/types/components/Progress/progress.types.d.ts +9 -0
- package/dist/types/components/RadioGroup/components/Radio/radio.component.d.ts +15 -0
- package/dist/types/components/RadioGroup/radioGroup.component.d.ts +22 -2
- package/dist/types/components/RadioGroup/radioGroup.recipe.d.ts +4 -2
- package/dist/types/components/Radiomark/index.d.ts +1 -0
- package/dist/types/components/Radiomark/radiomark.component.d.ts +12 -0
- package/dist/types/components/Radiomark/radiomark.recipe.d.ts +2 -0
- package/dist/types/components/Rating/index.d.ts +1 -0
- package/dist/types/components/Rating/rating.component.d.ts +37 -0
- package/dist/types/components/Rating/rating.recipe.d.ts +10 -0
- package/dist/types/components/RatingDots/components/RatingDot/ratingDot.component.d.ts +10 -1
- package/dist/types/components/RatingDots/ratingDots.component.d.ts +12 -0
- package/dist/types/components/Select/components/SelectItemContent/selectItemContent.component.d.ts +6 -0
- package/dist/types/components/Select/components/SelectTrigger/selectTrigger.component.d.ts +7 -2
- package/dist/types/components/Select/select.component.d.ts +53 -3
- package/dist/types/components/Select/select.types.d.ts +3 -0
- package/dist/types/components/SortableList/components/SortableListDragHandle/sortableListDragHandle.component.d.ts +1 -1
- package/dist/types/components/SortableList/components/SortableListItem/sortableListItem.component.d.ts +13 -1
- package/dist/types/components/SortableList/sortableList.component.d.ts +13 -1
- package/dist/types/components/Spinner/spinner.component.d.ts +28 -2
- package/dist/types/components/Spinner/spinner.recipe.d.ts +16 -1
- package/dist/types/components/StyledAvatar/styledAvatar.component.d.ts +10 -1
- package/dist/types/components/StyledAvatar/styledAvatar.types.d.ts +1 -1
- package/dist/types/components/Swatch/swatch.component.d.ts +10 -1
- package/dist/types/components/Switch/switch.component.d.ts +15 -0
- package/dist/types/components/Switch/switch.recipe.d.ts +3 -2
- package/dist/types/components/Tabs/components/Tab/tab.component.d.ts +14 -1
- package/dist/types/components/Tabs/tabs.component.d.ts +17 -2
- package/dist/types/components/Tabs/tabs.recipe.d.ts +3 -2
- package/dist/types/components/Tag/tag.component.d.ts +31 -0
- package/dist/types/components/Tag/tag.recipe.d.ts +3 -2
- package/dist/types/components/TagBlock/tagBlock.component.d.ts +34 -1
- package/dist/types/components/Text/text.component.d.ts +13 -0
- package/dist/types/components/TextInput/textInput.component.d.ts +28 -0
- package/dist/types/components/Textarea/textarea.component.d.ts +13 -0
- package/dist/types/components/TimePicker/components/TimeList/timeList.component.d.ts +10 -1
- package/dist/types/components/TimePicker/components/TimeOption/timeOption.component.d.ts +9 -1
- package/dist/types/components/TimePicker/timePicker.component.d.ts +19 -1
- package/dist/types/components/TimeRange/timeRange.component.d.ts +12 -1
- package/dist/types/components/Timestamp/timestamp.component.d.ts +18 -1
- package/dist/types/components/Toast/components/ToastAction/toastAction.component.d.ts +12 -1
- package/dist/types/components/Toast/components/Toaster/toaster.component.d.ts +6 -1
- package/dist/types/components/Toast/toast.component.d.ts +19 -1
- package/dist/types/components/Toast/toast.recipe.d.ts +3 -2
- package/dist/types/components/Toast/toast.types.d.ts +13 -0
- package/dist/types/components/Toast/useToast.d.ts +5 -0
- package/dist/types/components/Tooltip/tooltip.component.d.ts +26 -0
- package/dist/types/components/Tooltip/tooltip.recipe.d.ts +10 -1
- package/dist/types/components/index.d.ts +5 -0
- package/dist/types/hocs/withFormControl/withFormControl.d.ts +44 -0
- package/dist/types/hocs/withTruncation.d.ts +8 -0
- package/dist/types/hooks/useBreakpoint/index.d.ts +4 -0
- package/dist/types/hooks/useColorMode/index.d.ts +39 -0
- package/dist/types/hooks/useColorModeValue/index.d.ts +6 -0
- package/dist/types/hooks/useDeviceType/index.d.ts +4 -0
- package/dist/types/hooks/useIconTextSizeMap.d.ts +5 -0
- package/dist/types/shared/components/withVariantStory.d.ts +6 -0
- package/dist/types/shared/types/index.d.ts +1 -0
- package/dist/types/theme/providers/theme.provider.d.ts +1 -0
- package/dist/types/theme/recipes/List/list.recipe.d.ts +14 -0
- package/dist/types/theme/recipes/Table/table.recipe.d.ts +29 -0
- package/dist/types/theme/semanticTokens/semanticTokens.config.d.ts +91 -82
- package/dist/types/theme/semanticTokens/semanticTokens.records.d.ts +182 -164
- package/dist/types/theme/semanticTokens/semanticTokens.types.d.ts +4 -3
- package/dist/types/theme/tokens/sizes/sizes.config.d.ts +2 -2
- package/dist/types/theme/tokens/zIndices/zIndices.config.d.ts +10 -10
- package/package.json +21 -18
- package/dist/chunks/alert.types-De_IDZNV.js +0 -2
- package/dist/chunks/alert.types-De_IDZNV.js.map +0 -1
- package/dist/chunks/alert.types-NkOwCG0-.js +0 -139
- package/dist/chunks/alert.types-NkOwCG0-.js.map +0 -1
- package/dist/chunks/avatar.component-CqFsGMt6.js +0 -2
- package/dist/chunks/avatar.component-CqFsGMt6.js.map +0 -1
- package/dist/chunks/avatar.component-lHszPWEi.js +0 -394
- package/dist/chunks/avatar.component-lHszPWEi.js.map +0 -1
- package/dist/chunks/avatarGroup.component-BPYIE5NT.js +0 -2
- package/dist/chunks/avatarGroup.component-BPYIE5NT.js.map +0 -1
- package/dist/chunks/avatarGroup.component-EFxRAKiJ.js +0 -67
- package/dist/chunks/avatarGroup.component-EFxRAKiJ.js.map +0 -1
- package/dist/chunks/button.component-BE20YKDd.js +0 -67
- package/dist/chunks/button.component-BE20YKDd.js.map +0 -1
- package/dist/chunks/button.component-DAv5WxDc.js +0 -2
- package/dist/chunks/button.component-DAv5WxDc.js.map +0 -1
- package/dist/chunks/button.recipe-7PSQJbyz.js +0 -2
- package/dist/chunks/button.recipe-7PSQJbyz.js.map +0 -1
- package/dist/chunks/button.recipe-ClmsjdZI.js +0 -910
- package/dist/chunks/button.recipe-ClmsjdZI.js.map +0 -1
- package/dist/chunks/button.types-BKXZNvN1.js.map +0 -1
- package/dist/chunks/button.types-Bl1awbi0.js +0 -2
- package/dist/chunks/button.types-Bl1awbi0.js.map +0 -1
- package/dist/chunks/buttonGroup.component-CQBXYOhq.js +0 -2
- package/dist/chunks/buttonGroup.component-CQBXYOhq.js.map +0 -1
- package/dist/chunks/buttonGroup.component-CheBkHw6.js +0 -68
- package/dist/chunks/buttonGroup.component-CheBkHw6.js.map +0 -1
- package/dist/chunks/card.component-BZxC19F_.js +0 -2
- package/dist/chunks/card.component-BZxC19F_.js.map +0 -1
- package/dist/chunks/card.component-DJcYzMX1.js +0 -58
- package/dist/chunks/card.component-DJcYzMX1.js.map +0 -1
- package/dist/chunks/characterCounter.component-C6ZwdIiA.js +0 -84
- package/dist/chunks/characterCounter.component-C6ZwdIiA.js.map +0 -1
- package/dist/chunks/characterCounter.component-D0ccCiBG.js +0 -2
- package/dist/chunks/characterCounter.component-D0ccCiBG.js.map +0 -1
- package/dist/chunks/checkbox.component-DNOkXggb.js +0 -260
- package/dist/chunks/checkbox.component-Dhjcu89D.js +0 -2
- package/dist/chunks/checkboxGroup.component-BNKJqMKi.js +0 -52
- package/dist/chunks/checkboxGroup.component-BNKJqMKi.js.map +0 -1
- package/dist/chunks/checkboxGroup.component-M-nvlAbK.js +0 -2
- package/dist/chunks/checkboxGroup.component-M-nvlAbK.js.map +0 -1
- package/dist/chunks/conversationCard.component-BRJbMpwH.js +0 -2
- package/dist/chunks/conversationCard.component-BRJbMpwH.js.map +0 -1
- package/dist/chunks/conversationCard.component-DmSuBQ4_.js +0 -330
- package/dist/chunks/conversationCard.component-DmSuBQ4_.js.map +0 -1
- package/dist/chunks/create-slot-recipe-context-CViypfwB.js +0 -2
- package/dist/chunks/create-slot-recipe-context-CViypfwB.js.map +0 -1
- package/dist/chunks/create-slot-recipe-context-CrlT_nGQ.js +0 -97
- package/dist/chunks/create-slot-recipe-context-CrlT_nGQ.js.map +0 -1
- package/dist/chunks/datePicker.component-BOsFZiDy.js +0 -15
- package/dist/chunks/datePicker.component-BOsFZiDy.js.map +0 -1
- package/dist/chunks/datePicker.component-Dzh4WccC.js +0 -3019
- package/dist/chunks/datePicker.component-Dzh4WccC.js.map +0 -1
- package/dist/chunks/dialog-BPhjKQkb.js +0 -2
- package/dist/chunks/divider.types-Dht8eAh4.js +0 -2
- package/dist/chunks/divider.types-Dht8eAh4.js.map +0 -1
- package/dist/chunks/divider.types-ZN_wlva7.js +0 -47
- package/dist/chunks/divider.types-ZN_wlva7.js.map +0 -1
- package/dist/chunks/grid-item-DPdTp_nI.js +0 -94
- package/dist/chunks/grid-item-DPdTp_nI.js.map +0 -1
- package/dist/chunks/grid-item-qnuioQmr.js +0 -2
- package/dist/chunks/grid-item-qnuioQmr.js.map +0 -1
- package/dist/chunks/heading.component-C_cdAGTd.js +0 -2
- package/dist/chunks/heading.component-C_cdAGTd.js.map +0 -1
- package/dist/chunks/heading.component-SiJnYLOw.js +0 -12
- package/dist/chunks/heading.component-SiJnYLOw.js.map +0 -1
- package/dist/chunks/icon.component-Bhnf2n1O.js +0 -2
- package/dist/chunks/icon.component-Bhnf2n1O.js.map +0 -1
- package/dist/chunks/icon.component-C5bgxAD2.js +0 -32
- package/dist/chunks/icon.component-C5bgxAD2.js.map +0 -1
- package/dist/chunks/index-2glJ2faJ.js +0 -2
- package/dist/chunks/index-7Jpijbq_.js +0 -3
- package/dist/chunks/index-7Jpijbq_.js.map +0 -1
- package/dist/chunks/index-A_vmTNU7.js +0 -2
- package/dist/chunks/index-BEfEzWJx.js +0 -2
- package/dist/chunks/index-Bm5QBNWR.js +0 -8190
- package/dist/chunks/index-Bm5QBNWR.js.map +0 -1
- package/dist/chunks/index-Cv06PsSJ.js.map +0 -1
- package/dist/chunks/index-DA90Dqf9.js +0 -1362
- package/dist/chunks/index-DA90Dqf9.js.map +0 -1
- package/dist/chunks/index-DAI6_P9H.js +0 -2
- package/dist/chunks/index-DMcwHRZ5.js +0 -11
- package/dist/chunks/index-DMcwHRZ5.js.map +0 -1
- package/dist/chunks/index-jnwdAJ25.js +0 -2
- package/dist/chunks/index-jnwdAJ25.js.map +0 -1
- package/dist/chunks/link.component-CvR5CbiT.js +0 -36
- package/dist/chunks/link.component-CvR5CbiT.js.map +0 -1
- package/dist/chunks/link.component-yUJIJbIP.js +0 -2
- package/dist/chunks/link.component-yUJIJbIP.js.map +0 -1
- package/dist/chunks/logo.types-DF4eLSR9.js +0 -45
- package/dist/chunks/logo.types-DF4eLSR9.js.map +0 -1
- package/dist/chunks/logo.types-Zt-yfFAQ.js +0 -2
- package/dist/chunks/logo.types-Zt-yfFAQ.js.map +0 -1
- package/dist/chunks/menu.component-DylZiPAE.js +0 -2
- package/dist/chunks/menu.component-DylZiPAE.js.map +0 -1
- package/dist/chunks/menu.component-xhHsHlGT.js +0 -599
- package/dist/chunks/menu.component-xhHsHlGT.js.map +0 -1
- package/dist/chunks/modal.types-CBos7aXO.js +0 -2
- package/dist/chunks/modal.types-CBos7aXO.js.map +0 -1
- package/dist/chunks/modal.types-CkQIOPTa.js +0 -95
- package/dist/chunks/modal.types-CkQIOPTa.js.map +0 -1
- package/dist/chunks/notificationCounter.component-Lu4_Owvr.js.map +0 -1
- package/dist/chunks/notificationCounter.component-gp2ULnY_.js +0 -2
- package/dist/chunks/notificationCounter.component-gp2ULnY_.js.map +0 -1
- package/dist/chunks/picture.component-CKK-SMvr.js +0 -22
- package/dist/chunks/picture.component-CKK-SMvr.js.map +0 -1
- package/dist/chunks/picture.component-CR6e0wRG.js +0 -2
- package/dist/chunks/picture.component-CR6e0wRG.js.map +0 -1
- package/dist/chunks/pinInput.types-CcN0aX_i.js +0 -145
- package/dist/chunks/pinInput.types-Cqm1Px5l.js +0 -2
- package/dist/chunks/popover-root-provider-CkW1eCBQ.js +0 -43
- package/dist/chunks/popover-root-provider-ZB5BcrXn.js +0 -2
- package/dist/chunks/popover.component-BjS13k9K.js +0 -2
- package/dist/chunks/popover.component-BjS13k9K.js.map +0 -1
- package/dist/chunks/popover.component-C4WKxh4d.js +0 -196
- package/dist/chunks/popover.component-C4WKxh4d.js.map +0 -1
- package/dist/chunks/popover.recipe-Bx25Jhgs.js +0 -2
- package/dist/chunks/popover.recipe-Bx25Jhgs.js.map +0 -1
- package/dist/chunks/popover.recipe-C2nbfvL6.js +0 -241
- package/dist/chunks/popover.recipe-C2nbfvL6.js.map +0 -1
- package/dist/chunks/popover.types-BF2KRf_I.js +0 -2
- package/dist/chunks/popover.types-BF2KRf_I.js.map +0 -1
- package/dist/chunks/popover.types-D1O-Ehsz.js +0 -7
- package/dist/chunks/popover.types-D1O-Ehsz.js.map +0 -1
- package/dist/chunks/radioGroup.types-CZA7RcAn.js +0 -2
- package/dist/chunks/radioGroup.types-CZA7RcAn.js.map +0 -1
- package/dist/chunks/radioGroup.types-Dld5lmgo.js +0 -231
- package/dist/chunks/radioGroup.types-Dld5lmgo.js.map +0 -1
- package/dist/chunks/ratingDots.component-DcrCudac.js +0 -2
- package/dist/chunks/ratingDots.component-DcrCudac.js.map +0 -1
- package/dist/chunks/ratingDots.component-G4GMWvFy.js +0 -138
- package/dist/chunks/ratingDots.component-G4GMWvFy.js.map +0 -1
- package/dist/chunks/select.component-BTWHWvZV.js +0 -1058
- package/dist/chunks/select.component-BTWHWvZV.js.map +0 -1
- package/dist/chunks/select.component-Dyc1yQPO.js +0 -2
- package/dist/chunks/select.component-Dyc1yQPO.js.map +0 -1
- package/dist/chunks/spinner-C31ZWQmA.js +0 -8
- package/dist/chunks/spinner.component-CVVOuFka.js +0 -2
- package/dist/chunks/spinner.component-CVVOuFka.js.map +0 -1
- package/dist/chunks/spinner.component-DPYj17HK.js.map +0 -1
- package/dist/chunks/styledAvatar.types-CMpyDxAM.js +0 -2
- package/dist/chunks/styledAvatar.types-CMpyDxAM.js.map +0 -1
- package/dist/chunks/styledAvatar.types-CS07Zk7c.js +0 -51
- package/dist/chunks/styledAvatar.types-CS07Zk7c.js.map +0 -1
- package/dist/chunks/swatch.types-CXlghcLw.js.map +0 -1
- package/dist/chunks/swatch.types-jaI0KFHU.js +0 -2
- package/dist/chunks/swatch.types-jaI0KFHU.js.map +0 -1
- package/dist/chunks/switch.component-C88jBbo_.js +0 -2
- package/dist/chunks/switch.component-Cke7O8gk.js +0 -154
- package/dist/chunks/tab.types-DpmXyw5C.js +0 -2
- package/dist/chunks/tag.component-79aRVI7u.js +0 -82
- package/dist/chunks/tag.component-79aRVI7u.js.map +0 -1
- package/dist/chunks/tag.component-CAWh9OYa.js +0 -2
- package/dist/chunks/tag.component-CAWh9OYa.js.map +0 -1
- package/dist/chunks/tagBlock.component-Dn7coOgp.js +0 -2
- package/dist/chunks/tagBlock.component-Dn7coOgp.js.map +0 -1
- package/dist/chunks/tagBlock.component-vLA90b5S.js +0 -169
- package/dist/chunks/tagBlock.component-vLA90b5S.js.map +0 -1
- package/dist/chunks/text.component-CHpMvCFa.js +0 -2
- package/dist/chunks/text.component-CHpMvCFa.js.map +0 -1
- package/dist/chunks/text.component-D9w-u_dB.js +0 -12
- package/dist/chunks/text.component-D9w-u_dB.js.map +0 -1
- package/dist/chunks/textInput.component-Dpxb2RI-.js +0 -169
- package/dist/chunks/textInput.component-Dpxb2RI-.js.map +0 -1
- package/dist/chunks/textInput.component-Dx_Ktcmr.js +0 -2
- package/dist/chunks/textInput.component-Dx_Ktcmr.js.map +0 -1
- package/dist/chunks/textarea.component-BYexywy1.js +0 -2
- package/dist/chunks/textarea.component-Dk2IMKkr.js +0 -79
- package/dist/chunks/theme.provider-XYBMZJTB.js +0 -28
- package/dist/chunks/theme.provider-XYBMZJTB.js.map +0 -1
- package/dist/chunks/theme.provider-w_I9S10D.js.map +0 -1
- package/dist/chunks/timePicker.component-Bbd3BOA6.js +0 -209
- package/dist/chunks/timePicker.component-Bbd3BOA6.js.map +0 -1
- package/dist/chunks/timePicker.component-DcNgUFGj.js +0 -2
- package/dist/chunks/timePicker.component-DcNgUFGj.js.map +0 -1
- package/dist/chunks/timeRange.component-BBhPc2LP.js +0 -18
- package/dist/chunks/timeRange.component-BBhPc2LP.js.map +0 -1
- package/dist/chunks/timeRange.component-Bb-xDHWT.js +0 -2
- package/dist/chunks/timeRange.component-Bb-xDHWT.js.map +0 -1
- package/dist/chunks/timestamp.component-CrY5t68x.js +0 -2
- package/dist/chunks/timestamp.component-CrY5t68x.js.map +0 -1
- package/dist/chunks/timestamp.component-m0FTjlAi.js +0 -51
- package/dist/chunks/timestamp.component-m0FTjlAi.js.map +0 -1
- package/dist/chunks/toaster.records-eCXbM85Z.js +0 -2
- package/dist/chunks/tooltip.component-CATpCSkf.js +0 -2
- package/dist/chunks/typography.records-CpYV1kns.js.map +0 -1
- package/dist/chunks/typography.records-Dbw3sz4i.js +0 -2
- package/dist/chunks/typography.records-Dbw3sz4i.js.map +0 -1
- package/dist/chunks/use-locale-context-CazVZ4Kg.js +0 -2315
- package/dist/chunks/use-locale-context-CazVZ4Kg.js.map +0 -1
- package/dist/chunks/use-locale-context-Dv7DQ_mn.js +0 -22
- package/dist/chunks/use-locale-context-Dv7DQ_mn.js.map +0 -1
- package/dist/chunks/use-slot-recipe-8liupslO.js +0 -2
- package/dist/chunks/use-slot-recipe-8liupslO.js.map +0 -1
- package/dist/chunks/use-slot-recipe-DhtQ1j_5.js +0 -13
- package/dist/chunks/use-slot-recipe-DhtQ1j_5.js.map +0 -1
- package/dist/chunks/withFormControl-BdiccBy5.js +0 -2
- package/dist/chunks/withFormControl-BdiccBy5.js.map +0 -1
- package/dist/chunks/withFormControl-CRXVopOk.js +0 -361
- package/dist/chunks/withFormControl-CRXVopOk.js.map +0 -1
- package/dist/chunks/withTruncation-C9XLf_j6.js +0 -67
- package/dist/chunks/withTruncation-C9XLf_j6.js.map +0 -1
- package/dist/chunks/withTruncation-Ddr3jvAO.js +0 -2
- package/dist/chunks/withTruncation-Ddr3jvAO.js.map +0 -1
- package/dist/types/components/Menu/components/MenuButton/menuButton.components.d.ts +0 -9
- package/dist/types/components/Menu/components/MenuToggleButtons/menuToggleButtons.d.ts +0 -10
- package/dist/types/shared/utils/argTypes.d.ts +0 -6
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index-A_vmTNU7.js","sources":["../../node_modules/@zag-js/collection/dist/index.mjs","../../node_modules/@zag-js/select/dist/index.mjs"],"sourcesContent":["import { isObject, hasProp, isEqual, chunk, prevIndex, nextIndex } from '@zag-js/utils';\n\nvar __defProp = Object.defineProperty;\nvar __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;\nvar __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== \"symbol\" ? key + \"\" : key, value);\nvar fallback = {\n itemToValue(item) {\n if (typeof item === \"string\") return item;\n if (isObject(item) && hasProp(item, \"value\")) return item.value;\n return \"\";\n },\n itemToString(item) {\n if (typeof item === \"string\") return item;\n if (isObject(item) && hasProp(item, \"label\")) return item.label;\n return fallback.itemToValue(item);\n },\n isItemDisabled(item) {\n if (isObject(item) && hasProp(item, \"disabled\")) return !!item.disabled;\n return false;\n }\n};\nvar ListCollection = class _ListCollection {\n constructor(options) {\n this.options = options;\n /**\n * The items in the collection\n */\n __publicField(this, \"items\");\n /**\n * Copy the collection\n */\n __publicField(this, \"copy\", (items) => {\n return new _ListCollection({ ...this.options, items: items ?? [...this.items] });\n });\n /**\n * Check if the collection is equal to another collection\n */\n __publicField(this, \"isEqual\", (other) => {\n return isEqual(this.items, other.items);\n });\n /**\n * Function to update the collection items\n */\n __publicField(this, \"setItems\", (items) => {\n return this.copy(items);\n });\n /**\n * Returns all the values in the collection\n */\n __publicField(this, \"getValues\", (items = this.items) => {\n return Array.from(items).map((item) => this.getItemValue(item)).filter(Boolean);\n });\n /**\n * Get the item based on its value\n */\n __publicField(this, \"find\", (value) => {\n if (value == null) return null;\n const index = this.indexOf(value);\n return index != null ? this.at(index) : null;\n });\n /**\n * Get the items based on its values\n */\n __publicField(this, \"findMany\", (values) => {\n return Array.from(values).map((value) => this.find(value)).filter((item) => item != null);\n });\n /**\n * Get the item based on its index\n */\n __publicField(this, \"at\", (index) => {\n if (!this.options.groupBy && !this.options.groupSort) {\n return this.items[index] ?? null;\n }\n let idx = 0;\n const groups = this.group();\n for (const [, items] of groups) {\n for (const item of items) {\n if (idx === index) return item;\n idx++;\n }\n }\n return null;\n });\n __publicField(this, \"sortFn\", (valueA, valueB) => {\n const indexA = this.indexOf(valueA);\n const indexB = this.indexOf(valueB);\n return (indexA ?? 0) - (indexB ?? 0);\n });\n /**\n * Sort the values based on their index\n */\n __publicField(this, \"sort\", (values) => {\n return [...values].sort(this.sortFn.bind(this));\n });\n /**\n * Convert an item to a value\n */\n __publicField(this, \"getItemValue\", (item) => {\n if (item == null) return null;\n return this.options.itemToValue?.(item) ?? fallback.itemToValue(item);\n });\n /**\n * Whether an item is disabled\n */\n __publicField(this, \"getItemDisabled\", (item) => {\n if (item == null) return false;\n return this.options.isItemDisabled?.(item) ?? fallback.isItemDisabled(item);\n });\n /**\n * Convert an item to a string\n */\n __publicField(this, \"stringifyItem\", (item) => {\n if (item == null) return null;\n return this.options.itemToString?.(item) ?? fallback.itemToString(item);\n });\n /**\n * Convert a value to a string\n */\n __publicField(this, \"stringify\", (value) => {\n if (value == null) return null;\n return this.stringifyItem(this.find(value));\n });\n /**\n * Convert an array of items to a string\n */\n __publicField(this, \"stringifyItems\", (items, separator = \", \") => {\n return Array.from(items).map((item) => this.stringifyItem(item)).filter(Boolean).join(separator);\n });\n /**\n * Convert an array of items to a string\n */\n __publicField(this, \"stringifyMany\", (value, separator) => {\n return this.stringifyItems(this.findMany(value), separator);\n });\n /**\n * Whether the collection has a value\n */\n __publicField(this, \"has\", (value) => {\n return this.indexOf(value) !== -1;\n });\n /**\n * Whether the collection has an item\n */\n __publicField(this, \"hasItem\", (item) => {\n if (item == null) return false;\n return this.has(this.getItemValue(item));\n });\n /**\n * Group items by the groupBy function provided in options\n * Returns an array of [groupKey, items] tuples\n */\n __publicField(this, \"group\", () => {\n const { groupBy, groupSort } = this.options;\n if (!groupBy) return [[\"\", [...this.items]]];\n const groups = /* @__PURE__ */ new Map();\n this.items.forEach((item, index) => {\n const groupKey = groupBy(item, index);\n if (!groups.has(groupKey)) {\n groups.set(groupKey, []);\n }\n groups.get(groupKey).push(item);\n });\n let entries = Array.from(groups.entries());\n if (groupSort) {\n entries.sort(([a], [b]) => {\n if (typeof groupSort === \"function\") return groupSort(a, b);\n if (Array.isArray(groupSort)) {\n const indexA = groupSort.indexOf(a);\n const indexB = groupSort.indexOf(b);\n if (indexA === -1) return 1;\n if (indexB === -1) return -1;\n return indexA - indexB;\n }\n if (groupSort === \"asc\") return a.localeCompare(b);\n if (groupSort === \"desc\") return b.localeCompare(a);\n return 0;\n });\n }\n return entries;\n });\n /**\n * Returns the next value in the collection\n */\n __publicField(this, \"getNextValue\", (value, step = 1, clamp = false) => {\n let index = this.indexOf(value);\n if (index === -1) return null;\n index = clamp ? Math.min(index + step, this.size - 1) : index + step;\n while (index <= this.size && this.getItemDisabled(this.at(index))) index++;\n return this.getItemValue(this.at(index));\n });\n /**\n * Returns the previous value in the collection\n */\n __publicField(this, \"getPreviousValue\", (value, step = 1, clamp = false) => {\n let index = this.indexOf(value);\n if (index === -1) return null;\n index = clamp ? Math.max(index - step, 0) : index - step;\n while (index >= 0 && this.getItemDisabled(this.at(index))) index--;\n return this.getItemValue(this.at(index));\n });\n /**\n * Get the index of an item based on its key\n */\n __publicField(this, \"indexOf\", (value) => {\n if (value == null) return -1;\n if (!this.options.groupBy && !this.options.groupSort) {\n return this.items.findIndex((item) => this.getItemValue(item) === value);\n }\n let idx = 0;\n const groups = this.group();\n for (const [, items] of groups) {\n for (const item of items) {\n if (this.getItemValue(item) === value) return idx;\n idx++;\n }\n }\n return -1;\n });\n __publicField(this, \"getByText\", (text, current) => {\n let items = current != null ? wrap(this.items, this.indexOf(current)) : this.items;\n const isSingleKey = text.length === 1;\n if (isSingleKey) items = items.filter((item) => this.getItemValue(item) !== current);\n return items.find((item) => match(this.stringifyItem(item), text));\n });\n /**\n * Search for a value based on a query\n */\n __publicField(this, \"search\", (queryString, options) => {\n const { state, currentValue, timeout = 350 } = options;\n const search = state.keysSoFar + queryString;\n const isRepeated = search.length > 1 && Array.from(search).every((char) => char === search[0]);\n const query = isRepeated ? search[0] : search;\n const item = this.getByText(query, currentValue);\n const value = this.getItemValue(item);\n function cleanup() {\n clearTimeout(state.timer);\n state.timer = -1;\n }\n function update(value2) {\n state.keysSoFar = value2;\n cleanup();\n if (value2 !== \"\") {\n state.timer = +setTimeout(() => {\n update(\"\");\n cleanup();\n }, timeout);\n }\n }\n update(search);\n return value;\n });\n /**\n * Update an item in the collection\n */\n __publicField(this, \"update\", (value, item) => {\n let index = this.indexOf(value);\n if (index === -1) return this;\n return this.copy([...this.items.slice(0, index), item, ...this.items.slice(index + 1)]);\n });\n /**\n * Update an item in the collection if it exists, otherwise append it\n */\n __publicField(this, \"upsert\", (value, item, mode = \"append\") => {\n let index = this.indexOf(value);\n if (index === -1) {\n const fn = mode === \"append\" ? this.append : this.prepend;\n return fn(item);\n }\n return this.copy([...this.items.slice(0, index), item, ...this.items.slice(index + 1)]);\n });\n /**\n * Insert items at a specific index\n */\n __publicField(this, \"insert\", (index, ...items) => {\n return this.copy(insert(this.items, index, ...items));\n });\n /**\n * Insert items before a specific value\n */\n __publicField(this, \"insertBefore\", (value, ...items) => {\n let toIndex = this.indexOf(value);\n if (toIndex === -1) {\n if (this.items.length === 0) toIndex = 0;\n else return this;\n }\n return this.copy(insert(this.items, toIndex, ...items));\n });\n /**\n * Insert items after a specific value\n */\n __publicField(this, \"insertAfter\", (value, ...items) => {\n let toIndex = this.indexOf(value);\n if (toIndex === -1) {\n if (this.items.length === 0) toIndex = 0;\n else return this;\n }\n return this.copy(insert(this.items, toIndex + 1, ...items));\n });\n /**\n * Prepend items to the collection\n */\n __publicField(this, \"prepend\", (...items) => {\n return this.copy(insert(this.items, 0, ...items));\n });\n /**\n * Append items to the collection\n */\n __publicField(this, \"append\", (...items) => {\n return this.copy(insert(this.items, this.items.length, ...items));\n });\n /**\n * Filter the collection\n */\n __publicField(this, \"filter\", (fn) => {\n const filteredItems = this.items.filter((item, index) => fn(this.stringifyItem(item), index, item));\n return this.copy(filteredItems);\n });\n /**\n * Remove items from the collection\n */\n __publicField(this, \"remove\", (...itemsOrValues) => {\n const values = itemsOrValues.map(\n (itemOrValue) => typeof itemOrValue === \"string\" ? itemOrValue : this.getItemValue(itemOrValue)\n );\n return this.copy(\n this.items.filter((item) => {\n const value = this.getItemValue(item);\n if (value == null) return false;\n return !values.includes(value);\n })\n );\n });\n /**\n * Move an item to a specific index\n */\n __publicField(this, \"move\", (value, toIndex) => {\n const fromIndex = this.indexOf(value);\n if (fromIndex === -1) return this;\n return this.copy(move(this.items, [fromIndex], toIndex));\n });\n /**\n * Move items before a specific value\n */\n __publicField(this, \"moveBefore\", (value, ...values) => {\n let toIndex = this.items.findIndex((item) => this.getItemValue(item) === value);\n if (toIndex === -1) return this;\n let indices = values.map((value2) => this.items.findIndex((item) => this.getItemValue(item) === value2)).sort((a, b) => a - b);\n return this.copy(move(this.items, indices, toIndex));\n });\n /**\n * Move items after a specific value\n */\n __publicField(this, \"moveAfter\", (value, ...values) => {\n let toIndex = this.items.findIndex((item) => this.getItemValue(item) === value);\n if (toIndex === -1) return this;\n let indices = values.map((value2) => this.items.findIndex((item) => this.getItemValue(item) === value2)).sort((a, b) => a - b);\n return this.copy(move(this.items, indices, toIndex + 1));\n });\n /**\n * Reorder items\n */\n __publicField(this, \"reorder\", (fromIndex, toIndex) => {\n return this.copy(move(this.items, [fromIndex], toIndex));\n });\n /**\n * Compare two values\n */\n __publicField(this, \"compareValue\", (a, b) => {\n const indexA = this.indexOf(a);\n const indexB = this.indexOf(b);\n if (indexA < indexB) return -1;\n if (indexA > indexB) return 1;\n return 0;\n });\n /**\n * Get the range of values between two values\n */\n __publicField(this, \"range\", (from, to) => {\n let keys = [];\n let key = from;\n while (key != null) {\n let item = this.find(key);\n if (item) keys.push(key);\n if (key === to) return keys;\n key = this.getNextValue(key);\n }\n return [];\n });\n /**\n * Get the range of values between two values\n */\n __publicField(this, \"getValueRange\", (from, to) => {\n if (from && to) {\n if (this.compareValue(from, to) <= 0) {\n return this.range(from, to);\n }\n return this.range(to, from);\n }\n return [];\n });\n /**\n * Convert the collection to a string\n */\n __publicField(this, \"toString\", () => {\n let result = \"\";\n for (const item of this.items) {\n const value = this.getItemValue(item);\n const label = this.stringifyItem(item);\n const disabled = this.getItemDisabled(item);\n const itemString = [value, label, disabled].filter(Boolean).join(\":\");\n result += itemString + \",\";\n }\n return result;\n });\n /**\n * Convert the collection to a JSON object\n */\n __publicField(this, \"toJSON\", () => {\n return {\n size: this.size,\n first: this.firstValue,\n last: this.lastValue\n };\n });\n this.items = [...options.items];\n }\n /**\n * Returns the number of items in the collection\n */\n get size() {\n return this.items.length;\n }\n /**\n * Returns the first value in the collection\n */\n get firstValue() {\n let index = 0;\n while (this.getItemDisabled(this.at(index))) index++;\n return this.getItemValue(this.at(index));\n }\n /**\n * Returns the last value in the collection\n */\n get lastValue() {\n let index = this.size - 1;\n while (this.getItemDisabled(this.at(index))) index--;\n return this.getItemValue(this.at(index));\n }\n *[Symbol.iterator]() {\n yield* this.items;\n }\n};\nvar match = (label, query) => {\n return !!label?.toLowerCase().startsWith(query.toLowerCase());\n};\nvar wrap = (v, idx) => {\n return v.map((_, index) => v[(Math.max(idx, 0) + index) % v.length]);\n};\nfunction isListCollection(v) {\n return v instanceof ListCollection;\n}\nfunction insert(items, index, ...values) {\n return [...items.slice(0, index), ...values, ...items.slice(index)];\n}\nfunction move(items, indices, toIndex) {\n indices = [...indices].sort((a, b) => a - b);\n const itemsToMove = indices.map((i) => items[i]);\n for (let i = indices.length - 1; i >= 0; i--) {\n items = [...items.slice(0, indices[i]), ...items.slice(indices[i] + 1)];\n }\n toIndex = Math.max(0, toIndex - indices.filter((i) => i < toIndex).length);\n return [...items.slice(0, toIndex), ...itemsToMove, ...items.slice(toIndex)];\n}\n\n// src/grid-collection.ts\nvar GridCollection = class extends ListCollection {\n constructor(options) {\n const { columnCount } = options;\n super(options);\n __publicField(this, \"columnCount\");\n /**\n * Returns the row data in the grid\n */\n __publicField(this, \"getRows\", () => {\n return chunk([...this.items], this.columnCount);\n });\n /**\n * Returns the number of rows in the grid\n */\n __publicField(this, \"getRowCount\", () => {\n return this.getRows().length;\n });\n /**\n * Returns the index of the specified row and column in the grid\n */\n __publicField(this, \"getCellIndex\", (row, column) => {\n return row * this.columnCount + column;\n });\n /**\n * Returns the item at the specified row and column in the grid\n */\n __publicField(this, \"getCell\", (row, column) => {\n return this.at(this.getCellIndex(row, column));\n });\n /**\n * Returns the row and column index for a given value\n */\n __publicField(this, \"getValueCell\", (value) => {\n const index = this.indexOf(value);\n if (index === -1) return null;\n const row = Math.floor(index / this.columnCount);\n const column = index % this.columnCount;\n return { row, column };\n });\n /**\n * Returns the value of the last enabled column in a row\n */\n __publicField(this, \"getLastEnabledColumnIndex\", (row) => {\n for (let col = this.columnCount - 1; col >= 0; col--) {\n const cell = this.getCell(row, col);\n if (cell && !this.getItemDisabled(cell)) {\n return col;\n }\n }\n return null;\n });\n /**\n * Returns the index of the first enabled column in a row\n */\n __publicField(this, \"getFirstEnabledColumnIndex\", (row) => {\n for (let col = 0; col < this.columnCount; col++) {\n const cell = this.getCell(row, col);\n if (cell && !this.getItemDisabled(cell)) {\n return col;\n }\n }\n return null;\n });\n /**\n * Returns the value of the previous row in the grid, based on the current value\n */\n __publicField(this, \"getPreviousRowValue\", (value, loop = false) => {\n const currentCell = this.getValueCell(value);\n if (currentCell === null) return null;\n const rows = this.getRows();\n const rowCount = this.getRowCount();\n let prevRowIndex = currentCell.row;\n let prevColumnIndex = currentCell.column;\n for (let i = 1; i <= rowCount; i++) {\n prevRowIndex = prevIndex(rows, prevRowIndex, { loop });\n const prevRow = rows[prevRowIndex];\n if (!prevRow) continue;\n const prevCell = prevRow[prevColumnIndex];\n if (!prevCell) {\n const lastColumnIndex = this.getLastEnabledColumnIndex(prevRowIndex);\n if (lastColumnIndex != null) {\n prevColumnIndex = lastColumnIndex;\n }\n }\n const cell = this.getCell(prevRowIndex, prevColumnIndex);\n if (!this.getItemDisabled(cell)) {\n return this.getItemValue(cell);\n }\n }\n return this.firstValue;\n });\n /**\n * Returns the value of the next row in the grid, based on the current value\n */\n __publicField(this, \"getNextRowValue\", (value, loop = false) => {\n const currentCell = this.getValueCell(value);\n if (currentCell === null) return null;\n const rows = this.getRows();\n const rowCount = this.getRowCount();\n let nextRowIndex = currentCell.row;\n let nextColumnIndex = currentCell.column;\n for (let i = 1; i <= rowCount; i++) {\n nextRowIndex = nextIndex(rows, nextRowIndex, { loop });\n const nextRow = rows[nextRowIndex];\n if (!nextRow) continue;\n const nextCell = nextRow[nextColumnIndex];\n if (!nextCell) {\n const lastColumnIndex = this.getLastEnabledColumnIndex(nextRowIndex);\n if (lastColumnIndex != null) {\n nextColumnIndex = lastColumnIndex;\n }\n }\n const cell = this.getCell(nextRowIndex, nextColumnIndex);\n if (!this.getItemDisabled(cell)) {\n return this.getItemValue(cell);\n }\n }\n return this.lastValue;\n });\n this.columnCount = columnCount;\n }\n};\nfunction isGridCollection(v) {\n return v instanceof GridCollection;\n}\nvar Selection = class _Selection extends Set {\n constructor(values = []) {\n super(values);\n __publicField(this, \"selectionMode\", \"single\");\n __publicField(this, \"deselectable\", true);\n __publicField(this, \"copy\", () => {\n const clone = new _Selection([...this]);\n return this.sync(clone);\n });\n __publicField(this, \"sync\", (other) => {\n other.selectionMode = this.selectionMode;\n other.deselectable = this.deselectable;\n return other;\n });\n __publicField(this, \"isEmpty\", () => {\n return this.size === 0;\n });\n __publicField(this, \"isSelected\", (value) => {\n if (this.selectionMode === \"none\" || value == null) {\n return false;\n }\n return this.has(value);\n });\n __publicField(this, \"canSelect\", (collection, value) => {\n return this.selectionMode !== \"none\" || !collection.getItemDisabled(collection.find(value));\n });\n __publicField(this, \"firstSelectedValue\", (collection) => {\n let firstValue = null;\n for (let value of this) {\n if (!firstValue || collection.compareValue(value, firstValue) < 0) {\n firstValue = value;\n }\n }\n return firstValue;\n });\n __publicField(this, \"lastSelectedValue\", (collection) => {\n let lastValue = null;\n for (let value of this) {\n if (!lastValue || collection.compareValue(value, lastValue) > 0) {\n lastValue = value;\n }\n }\n return lastValue;\n });\n __publicField(this, \"extendSelection\", (collection, anchorValue, targetValue) => {\n if (this.selectionMode === \"none\") {\n return this;\n }\n if (this.selectionMode === \"single\") {\n return this.replaceSelection(collection, targetValue);\n }\n const selection = this.copy();\n const lastSelected = Array.from(this).pop();\n for (let key of collection.getValueRange(anchorValue, lastSelected ?? targetValue)) {\n selection.delete(key);\n }\n for (let key of collection.getValueRange(targetValue, anchorValue)) {\n if (this.canSelect(collection, key)) {\n selection.add(key);\n }\n }\n return selection;\n });\n __publicField(this, \"toggleSelection\", (collection, value) => {\n if (this.selectionMode === \"none\") {\n return this;\n }\n if (this.selectionMode === \"single\" && !this.isSelected(value)) {\n return this.replaceSelection(collection, value);\n }\n const selection = this.copy();\n if (selection.has(value)) {\n selection.delete(value);\n } else if (selection.canSelect(collection, value)) {\n selection.add(value);\n }\n return selection;\n });\n __publicField(this, \"replaceSelection\", (collection, value) => {\n if (this.selectionMode === \"none\") {\n return this;\n }\n if (value == null) {\n return this;\n }\n if (!this.canSelect(collection, value)) {\n return this;\n }\n const selection = new _Selection([value]);\n return this.sync(selection);\n });\n __publicField(this, \"setSelection\", (values) => {\n if (this.selectionMode === \"none\") {\n return this;\n }\n let selection = new _Selection();\n for (let value of values) {\n if (value != null) {\n selection.add(value);\n if (this.selectionMode === \"single\") {\n break;\n }\n }\n }\n return this.sync(selection);\n });\n __publicField(this, \"clearSelection\", () => {\n const selection = this.copy();\n if (selection.deselectable && selection.size > 0) {\n selection.clear();\n }\n return selection;\n });\n __publicField(this, \"select\", (collection, value, forceToggle) => {\n if (this.selectionMode === \"none\") {\n return this;\n }\n if (this.selectionMode === \"single\") {\n if (this.isSelected(value) && this.deselectable) {\n return this.toggleSelection(collection, value);\n } else {\n return this.replaceSelection(collection, value);\n }\n } else if (this.selectionMode === \"multiple\" || forceToggle) {\n return this.toggleSelection(collection, value);\n } else {\n return this.replaceSelection(collection, value);\n }\n });\n __publicField(this, \"deselect\", (value) => {\n const selection = this.copy();\n selection.delete(value);\n return selection;\n });\n __publicField(this, \"isEqual\", (other) => {\n return isEqual(Array.from(this), Array.from(other));\n });\n }\n};\n\n// src/tree-visit.ts\nfunction access(node, indexPath, options) {\n for (let i = 0; i < indexPath.length; i++) node = options.getChildren(node, indexPath.slice(i + 1))[indexPath[i]];\n return node;\n}\nfunction ancestorIndexPaths(indexPaths) {\n const sortedPaths = sortIndexPaths(indexPaths);\n const result = [];\n const seen = /* @__PURE__ */ new Set();\n for (const indexPath of sortedPaths) {\n const key = indexPath.join();\n if (!seen.has(key)) {\n seen.add(key);\n result.push(indexPath);\n }\n }\n return result;\n}\nfunction compareIndexPaths(a, b) {\n for (let i = 0; i < Math.min(a.length, b.length); i++) {\n if (a[i] < b[i]) return -1;\n if (a[i] > b[i]) return 1;\n }\n return a.length - b.length;\n}\nfunction sortIndexPaths(indexPaths) {\n return indexPaths.sort(compareIndexPaths);\n}\nfunction find(node, options) {\n let found;\n visit(node, {\n ...options,\n onEnter: (child, indexPath) => {\n if (options.predicate(child, indexPath)) {\n found = child;\n return \"stop\";\n }\n }\n });\n return found;\n}\nfunction findAll(node, options) {\n const found = [];\n visit(node, {\n onEnter: (child, indexPath) => {\n if (options.predicate(child, indexPath)) found.push(child);\n },\n getChildren: options.getChildren\n });\n return found;\n}\nfunction findIndexPath(node, options) {\n let found;\n visit(node, {\n onEnter: (child, indexPath) => {\n if (options.predicate(child, indexPath)) {\n found = [...indexPath];\n return \"stop\";\n }\n },\n getChildren: options.getChildren\n });\n return found;\n}\nfunction reduce(node, options) {\n let result = options.initialResult;\n visit(node, {\n ...options,\n onEnter: (child, indexPath) => {\n result = options.nextResult(result, child, indexPath);\n }\n });\n return result;\n}\nfunction flatMap(node, options) {\n return reduce(node, {\n ...options,\n initialResult: [],\n nextResult: (result, child, indexPath) => {\n result.push(...options.transform(child, indexPath));\n return result;\n }\n });\n}\nfunction filter(node, options) {\n const { predicate, create, getChildren } = options;\n const filterRecursive = (node2, indexPath) => {\n const children = getChildren(node2, indexPath);\n const filteredChildren = [];\n children.forEach((child, index) => {\n const childIndexPath = [...indexPath, index];\n const filteredChild = filterRecursive(child, childIndexPath);\n if (filteredChild) filteredChildren.push(filteredChild);\n });\n const isRoot = indexPath.length === 0;\n const nodeMatches = predicate(node2, indexPath);\n const hasFilteredChildren = filteredChildren.length > 0;\n if (isRoot || nodeMatches || hasFilteredChildren) {\n return create(node2, filteredChildren, indexPath);\n }\n return null;\n };\n return filterRecursive(node, []) || create(node, [], []);\n}\nfunction flatten(rootNode, options) {\n const nodes = [];\n let idx = 0;\n const idxMap = /* @__PURE__ */ new Map();\n const parentMap = /* @__PURE__ */ new Map();\n visit(rootNode, {\n getChildren: options.getChildren,\n onEnter: (node, indexPath) => {\n if (!idxMap.has(node)) {\n idxMap.set(node, idx++);\n }\n const children = options.getChildren(node, indexPath);\n children.forEach((child) => {\n if (!parentMap.has(child)) {\n parentMap.set(child, node);\n }\n if (!idxMap.has(child)) {\n idxMap.set(child, idx++);\n }\n });\n const _children = children.length > 0 ? children.map((child) => idxMap.get(child)) : void 0;\n const parent = parentMap.get(node);\n const _parent = parent ? idxMap.get(parent) : void 0;\n const _index = idxMap.get(node);\n nodes.push({ ...node, _children, _parent, _index });\n }\n });\n return nodes;\n}\nfunction insertOperation(index, nodes) {\n return { type: \"insert\", index, nodes };\n}\nfunction removeOperation(indexes) {\n return { type: \"remove\", indexes };\n}\nfunction replaceOperation() {\n return { type: \"replace\" };\n}\nfunction splitIndexPath(indexPath) {\n return [indexPath.slice(0, -1), indexPath[indexPath.length - 1]];\n}\nfunction getInsertionOperations(indexPath, nodes, operations = /* @__PURE__ */ new Map()) {\n const [parentIndexPath, index] = splitIndexPath(indexPath);\n for (let i = parentIndexPath.length - 1; i >= 0; i--) {\n const parentKey = parentIndexPath.slice(0, i).join();\n switch (operations.get(parentKey)?.type) {\n case \"remove\":\n continue;\n }\n operations.set(parentKey, replaceOperation());\n }\n const operation = operations.get(parentIndexPath.join());\n switch (operation?.type) {\n case \"remove\":\n operations.set(parentIndexPath.join(), {\n type: \"removeThenInsert\",\n removeIndexes: operation.indexes,\n insertIndex: index,\n insertNodes: nodes\n });\n break;\n default:\n operations.set(parentIndexPath.join(), insertOperation(index, nodes));\n }\n return operations;\n}\nfunction getRemovalOperations(indexPaths) {\n const operations = /* @__PURE__ */ new Map();\n const indexesToRemove = /* @__PURE__ */ new Map();\n for (const indexPath of indexPaths) {\n const parentKey = indexPath.slice(0, -1).join();\n const value = indexesToRemove.get(parentKey) ?? [];\n value.push(indexPath[indexPath.length - 1]);\n indexesToRemove.set(\n parentKey,\n value.sort((a, b) => a - b)\n );\n }\n for (const indexPath of indexPaths) {\n for (let i = indexPath.length - 2; i >= 0; i--) {\n const parentKey = indexPath.slice(0, i).join();\n if (!operations.has(parentKey)) {\n operations.set(parentKey, replaceOperation());\n }\n }\n }\n for (const [parentKey, indexes] of indexesToRemove) {\n operations.set(parentKey, removeOperation(indexes));\n }\n return operations;\n}\nfunction getReplaceOperations(indexPath, node) {\n const operations = /* @__PURE__ */ new Map();\n const [parentIndexPath, index] = splitIndexPath(indexPath);\n for (let i = parentIndexPath.length - 1; i >= 0; i--) {\n const parentKey = parentIndexPath.slice(0, i).join();\n operations.set(parentKey, replaceOperation());\n }\n operations.set(parentIndexPath.join(), {\n type: \"removeThenInsert\",\n removeIndexes: [index],\n insertIndex: index,\n insertNodes: [node]\n });\n return operations;\n}\nfunction mutate(node, operations, options) {\n return map(node, {\n ...options,\n getChildren: (node2, indexPath) => {\n const key = indexPath.join();\n const operation = operations.get(key);\n switch (operation?.type) {\n case \"replace\":\n case \"remove\":\n case \"removeThenInsert\":\n case \"insert\":\n return options.getChildren(node2, indexPath);\n default:\n return [];\n }\n },\n transform: (node2, children, indexPath) => {\n const key = indexPath.join();\n const operation = operations.get(key);\n switch (operation?.type) {\n case \"remove\":\n return options.create(\n node2,\n children.filter((_, index) => !operation.indexes.includes(index)),\n indexPath\n );\n case \"removeThenInsert\":\n const updatedChildren = children.filter((_, index) => !operation.removeIndexes.includes(index));\n const adjustedIndex = operation.removeIndexes.reduce(\n (index, removedIndex) => removedIndex < index ? index - 1 : index,\n operation.insertIndex\n );\n return options.create(node2, splice(updatedChildren, adjustedIndex, 0, ...operation.insertNodes), indexPath);\n case \"insert\":\n return options.create(node2, splice(children, operation.index, 0, ...operation.nodes), indexPath);\n case \"replace\":\n return options.create(node2, children, indexPath);\n default:\n return node2;\n }\n }\n });\n}\nfunction splice(array, start, deleteCount, ...items) {\n return [...array.slice(0, start), ...items, ...array.slice(start + deleteCount)];\n}\nfunction map(node, options) {\n const childrenMap = {};\n visit(node, {\n ...options,\n onLeave: (child, indexPath) => {\n const keyIndexPath = [0, ...indexPath];\n const key = keyIndexPath.join();\n const transformed = options.transform(child, childrenMap[key] ?? [], indexPath);\n const parentKey = keyIndexPath.slice(0, -1).join();\n const parentChildren = childrenMap[parentKey] ?? [];\n parentChildren.push(transformed);\n childrenMap[parentKey] = parentChildren;\n }\n });\n return childrenMap[\"\"][0];\n}\nfunction insert2(node, options) {\n const { nodes, at } = options;\n if (at.length === 0) throw new Error(`Can't insert nodes at the root`);\n const state = getInsertionOperations(at, nodes);\n return mutate(node, state, options);\n}\nfunction replace(node, options) {\n if (options.at.length === 0) return options.node;\n const operations = getReplaceOperations(options.at, options.node);\n return mutate(node, operations, options);\n}\nfunction remove(node, options) {\n if (options.indexPaths.length === 0) return node;\n for (const indexPath of options.indexPaths) {\n if (indexPath.length === 0) throw new Error(`Can't remove the root node`);\n }\n const operations = getRemovalOperations(options.indexPaths);\n return mutate(node, operations, options);\n}\nfunction move2(node, options) {\n if (options.indexPaths.length === 0) return node;\n for (const indexPath of options.indexPaths) {\n if (indexPath.length === 0) throw new Error(`Can't move the root node`);\n }\n if (options.to.length === 0) throw new Error(`Can't move nodes to the root`);\n const _ancestorIndexPaths = ancestorIndexPaths(options.indexPaths);\n const nodesToInsert = _ancestorIndexPaths.map((indexPath) => access(node, indexPath, options));\n const operations = getInsertionOperations(options.to, nodesToInsert, getRemovalOperations(_ancestorIndexPaths));\n return mutate(node, operations, options);\n}\nfunction visit(node, options) {\n const { onEnter, onLeave, getChildren } = options;\n let indexPath = [];\n let stack = [{ node }];\n const getIndexPath = options.reuseIndexPath ? () => indexPath : () => indexPath.slice();\n while (stack.length > 0) {\n let wrapper = stack[stack.length - 1];\n if (wrapper.state === void 0) {\n const enterResult = onEnter?.(wrapper.node, getIndexPath());\n if (enterResult === \"stop\") return;\n wrapper.state = enterResult === \"skip\" ? -1 : 0;\n }\n const children = wrapper.children || getChildren(wrapper.node, getIndexPath());\n wrapper.children || (wrapper.children = children);\n if (wrapper.state !== -1) {\n if (wrapper.state < children.length) {\n let currentIndex = wrapper.state;\n indexPath.push(currentIndex);\n stack.push({ node: children[currentIndex] });\n wrapper.state = currentIndex + 1;\n continue;\n }\n const leaveResult = onLeave?.(wrapper.node, getIndexPath());\n if (leaveResult === \"stop\") return;\n }\n indexPath.pop();\n stack.pop();\n }\n}\n\n// src/tree-collection.ts\nvar TreeCollection = class _TreeCollection {\n constructor(options) {\n this.options = options;\n __publicField(this, \"rootNode\");\n __publicField(this, \"isEqual\", (other) => {\n return isEqual(this.rootNode, other.rootNode);\n });\n __publicField(this, \"getNodeChildren\", (node) => {\n return this.options.nodeToChildren?.(node) ?? fallbackMethods.nodeToChildren(node) ?? [];\n });\n __publicField(this, \"resolveIndexPath\", (valueOrIndexPath) => {\n return typeof valueOrIndexPath === \"string\" ? this.getIndexPath(valueOrIndexPath) : valueOrIndexPath;\n });\n __publicField(this, \"resolveNode\", (valueOrIndexPath) => {\n const indexPath = this.resolveIndexPath(valueOrIndexPath);\n return indexPath ? this.at(indexPath) : void 0;\n });\n __publicField(this, \"getNodeChildrenCount\", (node) => {\n return this.options.nodeToChildrenCount?.(node) ?? fallbackMethods.nodeToChildrenCount(node);\n });\n __publicField(this, \"getNodeValue\", (node) => {\n return this.options.nodeToValue?.(node) ?? fallbackMethods.nodeToValue(node);\n });\n __publicField(this, \"getNodeDisabled\", (node) => {\n return this.options.isNodeDisabled?.(node) ?? fallbackMethods.isNodeDisabled(node);\n });\n __publicField(this, \"stringify\", (value) => {\n const node = this.findNode(value);\n if (!node) return null;\n return this.stringifyNode(node);\n });\n __publicField(this, \"stringifyNode\", (node) => {\n return this.options.nodeToString?.(node) ?? fallbackMethods.nodeToString(node);\n });\n __publicField(this, \"getFirstNode\", (rootNode = this.rootNode) => {\n let firstChild;\n visit(rootNode, {\n getChildren: this.getNodeChildren,\n onEnter: (node, indexPath) => {\n if (!firstChild && indexPath.length > 0 && !this.getNodeDisabled(node)) {\n firstChild = node;\n return \"stop\";\n }\n }\n });\n return firstChild;\n });\n __publicField(this, \"getLastNode\", (rootNode = this.rootNode, opts = {}) => {\n let lastChild;\n visit(rootNode, {\n getChildren: this.getNodeChildren,\n onEnter: (node, indexPath) => {\n if (this.isSameNode(node, rootNode)) return;\n if (opts.skip?.({ value: this.getNodeValue(node), node, indexPath })) return \"skip\";\n if (indexPath.length > 0 && !this.getNodeDisabled(node)) {\n lastChild = node;\n }\n }\n });\n return lastChild;\n });\n __publicField(this, \"at\", (indexPath) => {\n return access(this.rootNode, indexPath, {\n getChildren: this.getNodeChildren\n });\n });\n __publicField(this, \"findNode\", (value, rootNode = this.rootNode) => {\n return find(rootNode, {\n getChildren: this.getNodeChildren,\n predicate: (node) => this.getNodeValue(node) === value\n });\n });\n __publicField(this, \"findNodes\", (values, rootNode = this.rootNode) => {\n const v = new Set(values.filter((v2) => v2 != null));\n return findAll(rootNode, {\n getChildren: this.getNodeChildren,\n predicate: (node) => v.has(this.getNodeValue(node))\n });\n });\n __publicField(this, \"sort\", (values) => {\n return values.reduce((acc, value) => {\n const indexPath = this.getIndexPath(value);\n if (indexPath) acc.push({ value, indexPath });\n return acc;\n }, []).sort((a, b) => compareIndexPaths(a.indexPath, b.indexPath)).map(({ value }) => value);\n });\n __publicField(this, \"getIndexPath\", (value) => {\n return findIndexPath(this.rootNode, {\n getChildren: this.getNodeChildren,\n predicate: (node) => this.getNodeValue(node) === value\n });\n });\n __publicField(this, \"getValue\", (indexPath) => {\n const node = this.at(indexPath);\n return node ? this.getNodeValue(node) : void 0;\n });\n __publicField(this, \"getValuePath\", (indexPath) => {\n if (!indexPath) return [];\n const valuePath = [];\n let currentPath = [...indexPath];\n while (currentPath.length > 0) {\n const node = this.at(currentPath);\n if (node) valuePath.unshift(this.getNodeValue(node));\n currentPath.pop();\n }\n return valuePath;\n });\n __publicField(this, \"getDepth\", (value) => {\n const indexPath = findIndexPath(this.rootNode, {\n getChildren: this.getNodeChildren,\n predicate: (node) => this.getNodeValue(node) === value\n });\n return indexPath?.length ?? 0;\n });\n __publicField(this, \"isSameNode\", (node, other) => {\n return this.getNodeValue(node) === this.getNodeValue(other);\n });\n __publicField(this, \"isRootNode\", (node) => {\n return this.isSameNode(node, this.rootNode);\n });\n __publicField(this, \"contains\", (parentIndexPath, valueIndexPath) => {\n if (!parentIndexPath || !valueIndexPath) return false;\n return valueIndexPath.slice(0, parentIndexPath.length).every((_, i) => parentIndexPath[i] === valueIndexPath[i]);\n });\n __publicField(this, \"getNextNode\", (value, opts = {}) => {\n let found = false;\n let nextNode;\n visit(this.rootNode, {\n getChildren: this.getNodeChildren,\n onEnter: (node, indexPath) => {\n if (this.isRootNode(node)) return;\n const nodeValue = this.getNodeValue(node);\n if (opts.skip?.({ value: nodeValue, node, indexPath })) {\n if (nodeValue === value) {\n found = true;\n }\n return \"skip\";\n }\n if (found && !this.getNodeDisabled(node)) {\n nextNode = node;\n return \"stop\";\n }\n if (nodeValue === value) {\n found = true;\n }\n }\n });\n return nextNode;\n });\n __publicField(this, \"getPreviousNode\", (value, opts = {}) => {\n let previousNode;\n let found = false;\n visit(this.rootNode, {\n getChildren: this.getNodeChildren,\n onEnter: (node, indexPath) => {\n if (this.isRootNode(node)) return;\n const nodeValue = this.getNodeValue(node);\n if (opts.skip?.({ value: nodeValue, node, indexPath })) {\n return \"skip\";\n }\n if (nodeValue === value) {\n found = true;\n return \"stop\";\n }\n if (!this.getNodeDisabled(node)) {\n previousNode = node;\n }\n }\n });\n return found ? previousNode : void 0;\n });\n __publicField(this, \"getParentNodes\", (valueOrIndexPath) => {\n const indexPath = this.resolveIndexPath(valueOrIndexPath)?.slice();\n if (!indexPath) return [];\n const result = [];\n while (indexPath.length > 0) {\n indexPath.pop();\n const parentNode = this.at(indexPath);\n if (parentNode && !this.isRootNode(parentNode)) {\n result.unshift(parentNode);\n }\n }\n return result;\n });\n __publicField(this, \"getDescendantNodes\", (valueOrIndexPath, options) => {\n const parentNode = this.resolveNode(valueOrIndexPath);\n if (!parentNode) return [];\n const result = [];\n visit(parentNode, {\n getChildren: this.getNodeChildren,\n onEnter: (node, nodeIndexPath) => {\n if (nodeIndexPath.length === 0) return;\n if (!options?.withBranch && this.isBranchNode(node)) return;\n result.push(node);\n }\n });\n return result;\n });\n __publicField(this, \"getDescendantValues\", (valueOrIndexPath, options) => {\n const children = this.getDescendantNodes(valueOrIndexPath, options);\n return children.map((child) => this.getNodeValue(child));\n });\n __publicField(this, \"getParentIndexPath\", (indexPath) => {\n return indexPath.slice(0, -1);\n });\n __publicField(this, \"getParentNode\", (valueOrIndexPath) => {\n const indexPath = this.resolveIndexPath(valueOrIndexPath);\n return indexPath ? this.at(this.getParentIndexPath(indexPath)) : void 0;\n });\n __publicField(this, \"visit\", (opts) => {\n const { skip, ...rest } = opts;\n visit(this.rootNode, {\n ...rest,\n getChildren: this.getNodeChildren,\n onEnter: (node, indexPath) => {\n if (this.isRootNode(node)) return;\n if (skip?.({ value: this.getNodeValue(node), node, indexPath })) return \"skip\";\n return rest.onEnter?.(node, indexPath);\n }\n });\n });\n __publicField(this, \"getPreviousSibling\", (indexPath) => {\n const parentNode = this.getParentNode(indexPath);\n if (!parentNode) return;\n const siblings = this.getNodeChildren(parentNode);\n let idx = indexPath[indexPath.length - 1];\n while (--idx >= 0) {\n const sibling = siblings[idx];\n if (!this.getNodeDisabled(sibling)) return sibling;\n }\n return;\n });\n __publicField(this, \"getNextSibling\", (indexPath) => {\n const parentNode = this.getParentNode(indexPath);\n if (!parentNode) return;\n const siblings = this.getNodeChildren(parentNode);\n let idx = indexPath[indexPath.length - 1];\n while (++idx < siblings.length) {\n const sibling = siblings[idx];\n if (!this.getNodeDisabled(sibling)) return sibling;\n }\n return;\n });\n __publicField(this, \"getSiblingNodes\", (indexPath) => {\n const parentNode = this.getParentNode(indexPath);\n return parentNode ? this.getNodeChildren(parentNode) : [];\n });\n __publicField(this, \"getValues\", (rootNode = this.rootNode) => {\n const values = flatMap(rootNode, {\n getChildren: this.getNodeChildren,\n transform: (node) => [this.getNodeValue(node)]\n });\n return values.slice(1);\n });\n __publicField(this, \"isValidDepth\", (indexPath, depth) => {\n if (depth == null) return true;\n if (typeof depth === \"function\") return depth(indexPath.length);\n return indexPath.length === depth;\n });\n __publicField(this, \"isBranchNode\", (node) => {\n return this.getNodeChildren(node).length > 0 || this.getNodeChildrenCount(node) != null;\n });\n __publicField(this, \"getBranchValues\", (rootNode = this.rootNode, opts = {}) => {\n let values = [];\n visit(rootNode, {\n getChildren: this.getNodeChildren,\n onEnter: (node, indexPath) => {\n if (indexPath.length === 0) return;\n const nodeValue = this.getNodeValue(node);\n if (opts.skip?.({ value: nodeValue, node, indexPath })) return \"skip\";\n if (this.isBranchNode(node) && this.isValidDepth(indexPath, opts.depth)) {\n values.push(this.getNodeValue(node));\n }\n }\n });\n return values;\n });\n __publicField(this, \"flatten\", (rootNode = this.rootNode) => {\n return flatten(rootNode, { getChildren: this.getNodeChildren });\n });\n __publicField(this, \"_create\", (node, children) => {\n if (this.getNodeChildren(node).length > 0 || children.length > 0) {\n return { ...node, children };\n }\n return { ...node };\n });\n __publicField(this, \"_insert\", (rootNode, indexPath, nodes) => {\n return this.copy(\n insert2(rootNode, { at: indexPath, nodes, getChildren: this.getNodeChildren, create: this._create })\n );\n });\n __publicField(this, \"copy\", (rootNode) => {\n return new _TreeCollection({ ...this.options, rootNode });\n });\n __publicField(this, \"_replace\", (rootNode, indexPath, node) => {\n return this.copy(\n replace(rootNode, { at: indexPath, node, getChildren: this.getNodeChildren, create: this._create })\n );\n });\n __publicField(this, \"_move\", (rootNode, indexPaths, to) => {\n return this.copy(move2(rootNode, { indexPaths, to, getChildren: this.getNodeChildren, create: this._create }));\n });\n __publicField(this, \"_remove\", (rootNode, indexPaths) => {\n return this.copy(remove(rootNode, { indexPaths, getChildren: this.getNodeChildren, create: this._create }));\n });\n __publicField(this, \"replace\", (indexPath, node) => {\n return this._replace(this.rootNode, indexPath, node);\n });\n __publicField(this, \"remove\", (indexPaths) => {\n return this._remove(this.rootNode, indexPaths);\n });\n __publicField(this, \"insertBefore\", (indexPath, nodes) => {\n const parentNode = this.getParentNode(indexPath);\n return parentNode ? this._insert(this.rootNode, indexPath, nodes) : void 0;\n });\n __publicField(this, \"insertAfter\", (indexPath, nodes) => {\n const parentNode = this.getParentNode(indexPath);\n if (!parentNode) return;\n const nextIndex2 = [...indexPath.slice(0, -1), indexPath[indexPath.length - 1] + 1];\n return this._insert(this.rootNode, nextIndex2, nodes);\n });\n __publicField(this, \"move\", (fromIndexPaths, toIndexPath) => {\n return this._move(this.rootNode, fromIndexPaths, toIndexPath);\n });\n __publicField(this, \"filter\", (predicate) => {\n const filteredRoot = filter(this.rootNode, {\n predicate,\n getChildren: this.getNodeChildren,\n create: this._create\n });\n return this.copy(filteredRoot);\n });\n __publicField(this, \"toJSON\", () => {\n return this.getValues(this.rootNode);\n });\n this.rootNode = options.rootNode;\n }\n};\nfunction flattenedToTree(nodes, options = fallbackMethods) {\n if (nodes.length === 0) {\n throw new Error(\"[zag-js/tree] Cannot create tree from empty flattened array\");\n }\n const rootFlatNode = nodes.find((node) => node._parent === void 0);\n if (!rootFlatNode) {\n throw new Error(\"[zag-js/tree] No root node found in flattened data\");\n }\n const nodeMap = /* @__PURE__ */ new Map();\n nodes.forEach((node) => {\n nodeMap.set(node._index, node);\n });\n const buildNode = (idx) => {\n const flatNode = nodeMap.get(idx);\n if (!flatNode) return {};\n const { _children, _parent, _index, ...cleanNode } = flatNode;\n const children = [];\n _children?.forEach((childIndex) => {\n children.push(buildNode(childIndex));\n });\n return {\n ...cleanNode,\n ...children.length > 0 && { children }\n };\n };\n const rootNode = buildNode(rootFlatNode._index);\n return new TreeCollection({ ...options, rootNode });\n}\nfunction filePathToTree(paths) {\n const rootNode = {\n label: \"\",\n value: \"ROOT\",\n children: []\n };\n paths.forEach((path) => {\n const parts = path.split(\"/\");\n let currentNode = rootNode;\n parts.forEach((part, index) => {\n let childNode = currentNode.children?.find((child) => child.label === part);\n if (!childNode) {\n childNode = {\n value: parts.slice(0, index + 1).join(\"/\"),\n label: part\n };\n currentNode.children || (currentNode.children = []);\n currentNode.children.push(childNode);\n }\n currentNode = childNode;\n });\n });\n return new TreeCollection({ rootNode });\n}\nvar fallbackMethods = {\n nodeToValue(node) {\n if (typeof node === \"string\") return node;\n if (isObject(node) && hasProp(node, \"value\")) return node.value;\n return \"\";\n },\n nodeToString(node) {\n if (typeof node === \"string\") return node;\n if (isObject(node) && hasProp(node, \"label\")) return node.label;\n return fallbackMethods.nodeToValue(node);\n },\n isNodeDisabled(node) {\n if (isObject(node) && hasProp(node, \"disabled\")) return !!node.disabled;\n return false;\n },\n nodeToChildren(node) {\n return node.children;\n },\n nodeToChildrenCount(node) {\n if (isObject(node) && hasProp(node, \"childrenCount\")) return node.childrenCount;\n }\n};\n\nexport { GridCollection, ListCollection, Selection, TreeCollection, filePathToTree, flattenedToTree, isGridCollection, isListCollection };\n","import { createAnatomy } from '@zag-js/anatomy';\nimport { ListCollection } from '@zag-js/collection';\nimport { raf, getInitialFocus, observeAttributes, trackFormControl, getByTypeahead, scrollIntoView, isSelfTarget, isValidTabEvent, getEventKey, getEventTarget, isEditableElement, visuallyHiddenStyle, dataAttr, ariaAttr } from '@zag-js/dom-query';\nimport { getPlacement, getPlacementStyles } from '@zag-js/popper';\nimport { addOrRemove, isEqual, createSplitProps, ensure } from '@zag-js/utils';\nimport { createGuards, createMachine } from '@zag-js/core';\nimport { trackDismissableElement } from '@zag-js/dismissable';\nimport { createProps } from '@zag-js/types';\n\n// src/select.anatomy.ts\nvar anatomy = createAnatomy(\"select\").parts(\n \"label\",\n \"positioner\",\n \"trigger\",\n \"indicator\",\n \"clearTrigger\",\n \"item\",\n \"itemText\",\n \"itemIndicator\",\n \"itemGroup\",\n \"itemGroupLabel\",\n \"list\",\n \"content\",\n \"root\",\n \"control\",\n \"valueText\"\n);\nvar parts = anatomy.build();\nvar collection = (options) => {\n return new ListCollection(options);\n};\ncollection.empty = () => {\n return new ListCollection({ items: [] });\n};\n\n// src/select.dom.ts\nvar getRootId = (ctx) => ctx.ids?.root ?? `select:${ctx.id}`;\nvar getContentId = (ctx) => ctx.ids?.content ?? `select:${ctx.id}:content`;\nvar getTriggerId = (ctx) => ctx.ids?.trigger ?? `select:${ctx.id}:trigger`;\nvar getClearTriggerId = (ctx) => ctx.ids?.clearTrigger ?? `select:${ctx.id}:clear-trigger`;\nvar getLabelId = (ctx) => ctx.ids?.label ?? `select:${ctx.id}:label`;\nvar getControlId = (ctx) => ctx.ids?.control ?? `select:${ctx.id}:control`;\nvar getItemId = (ctx, id) => ctx.ids?.item?.(id) ?? `select:${ctx.id}:option:${id}`;\nvar getHiddenSelectId = (ctx) => ctx.ids?.hiddenSelect ?? `select:${ctx.id}:select`;\nvar getPositionerId = (ctx) => ctx.ids?.positioner ?? `select:${ctx.id}:positioner`;\nvar getItemGroupId = (ctx, id) => ctx.ids?.itemGroup?.(id) ?? `select:${ctx.id}:optgroup:${id}`;\nvar getItemGroupLabelId = (ctx, id) => ctx.ids?.itemGroupLabel?.(id) ?? `select:${ctx.id}:optgroup-label:${id}`;\nvar getHiddenSelectEl = (ctx) => ctx.getById(getHiddenSelectId(ctx));\nvar getContentEl = (ctx) => ctx.getById(getContentId(ctx));\nvar getTriggerEl = (ctx) => ctx.getById(getTriggerId(ctx));\nvar getClearTriggerEl = (ctx) => ctx.getById(getClearTriggerId(ctx));\nvar getPositionerEl = (ctx) => ctx.getById(getPositionerId(ctx));\nvar getItemEl = (ctx, id) => ctx.getById(getItemId(ctx, id));\n\n// src/select.connect.ts\nfunction connect(service, normalize) {\n const { context, prop, scope, state, computed, send } = service;\n const disabled = prop(\"disabled\") || context.get(\"fieldsetDisabled\");\n const invalid = prop(\"invalid\");\n const readOnly = prop(\"readOnly\");\n const composite = prop(\"composite\");\n const collection2 = prop(\"collection\");\n const open = state.hasTag(\"open\");\n const focused = state.matches(\"focused\");\n const highlightedValue = context.get(\"highlightedValue\");\n const highlightedItem = context.get(\"highlightedItem\");\n const selectedItems = context.get(\"selectedItems\");\n const currentPlacement = context.get(\"currentPlacement\");\n const isTypingAhead = computed(\"isTypingAhead\");\n const interactive = computed(\"isInteractive\");\n const ariaActiveDescendant = highlightedValue ? getItemId(scope, highlightedValue) : void 0;\n function getItemState(props2) {\n const _disabled = collection2.getItemDisabled(props2.item);\n const value = collection2.getItemValue(props2.item);\n ensure(value, () => `[zag-js] No value found for item ${JSON.stringify(props2.item)}`);\n return {\n value,\n disabled: Boolean(disabled || _disabled),\n highlighted: highlightedValue === value,\n selected: context.get(\"value\").includes(value)\n };\n }\n const popperStyles = getPlacementStyles({\n ...prop(\"positioning\"),\n placement: currentPlacement\n });\n return {\n open,\n focused,\n empty: context.get(\"value\").length === 0,\n highlightedItem,\n highlightedValue,\n selectedItems,\n hasSelectedItems: computed(\"hasSelectedItems\"),\n value: context.get(\"value\"),\n valueAsString: computed(\"valueAsString\"),\n collection: collection2,\n multiple: !!prop(\"multiple\"),\n disabled: !!disabled,\n reposition(options = {}) {\n send({ type: \"POSITIONING.SET\", options });\n },\n focus() {\n getTriggerEl(scope)?.focus({ preventScroll: true });\n },\n setOpen(nextOpen) {\n const open2 = state.hasTag(\"open\");\n if (open2 === nextOpen) return;\n send({ type: nextOpen ? \"OPEN\" : \"CLOSE\" });\n },\n selectValue(value) {\n send({ type: \"ITEM.SELECT\", value });\n },\n setValue(value) {\n send({ type: \"VALUE.SET\", value });\n },\n selectAll() {\n send({ type: \"VALUE.SET\", value: collection2.getValues() });\n },\n setHighlightValue(value) {\n send({ type: \"HIGHLIGHTED_VALUE.SET\", value });\n },\n clearHighlightValue() {\n send({ type: \"HIGHLIGHTED_VALUE.CLEAR\" });\n },\n clearValue(value) {\n if (value) {\n send({ type: \"ITEM.CLEAR\", value });\n } else {\n send({ type: \"VALUE.CLEAR\" });\n }\n },\n getItemState,\n getRootProps() {\n return normalize.element({\n ...parts.root.attrs,\n dir: prop(\"dir\"),\n id: getRootId(scope),\n \"data-invalid\": dataAttr(invalid),\n \"data-readonly\": dataAttr(readOnly)\n });\n },\n getLabelProps() {\n return normalize.label({\n dir: prop(\"dir\"),\n id: getLabelId(scope),\n ...parts.label.attrs,\n \"data-disabled\": dataAttr(disabled),\n \"data-invalid\": dataAttr(invalid),\n \"data-readonly\": dataAttr(readOnly),\n htmlFor: getHiddenSelectId(scope),\n onClick(event) {\n if (event.defaultPrevented) return;\n if (disabled) return;\n getTriggerEl(scope)?.focus({ preventScroll: true });\n }\n });\n },\n getControlProps() {\n return normalize.element({\n ...parts.control.attrs,\n dir: prop(\"dir\"),\n id: getControlId(scope),\n \"data-state\": open ? \"open\" : \"closed\",\n \"data-focus\": dataAttr(focused),\n \"data-disabled\": dataAttr(disabled),\n \"data-invalid\": dataAttr(invalid)\n });\n },\n getValueTextProps() {\n return normalize.element({\n ...parts.valueText.attrs,\n dir: prop(\"dir\"),\n \"data-disabled\": dataAttr(disabled),\n \"data-invalid\": dataAttr(invalid),\n \"data-focus\": dataAttr(focused)\n });\n },\n getTriggerProps() {\n return normalize.button({\n id: getTriggerId(scope),\n disabled,\n dir: prop(\"dir\"),\n type: \"button\",\n role: \"combobox\",\n \"aria-controls\": getContentId(scope),\n \"aria-expanded\": open,\n \"aria-haspopup\": \"listbox\",\n \"data-state\": open ? \"open\" : \"closed\",\n \"aria-invalid\": invalid,\n \"aria-labelledby\": getLabelId(scope),\n ...parts.trigger.attrs,\n \"data-disabled\": dataAttr(disabled),\n \"data-invalid\": dataAttr(invalid),\n \"data-readonly\": dataAttr(readOnly),\n \"data-placement\": currentPlacement,\n \"data-placeholder-shown\": dataAttr(!computed(\"hasSelectedItems\")),\n onClick(event) {\n if (!interactive) return;\n if (event.defaultPrevented) return;\n send({ type: \"TRIGGER.CLICK\" });\n },\n onFocus() {\n send({ type: \"TRIGGER.FOCUS\" });\n },\n onBlur() {\n send({ type: \"TRIGGER.BLUR\" });\n },\n onKeyDown(event) {\n if (event.defaultPrevented) return;\n if (!interactive) return;\n const keyMap = {\n ArrowUp() {\n send({ type: \"TRIGGER.ARROW_UP\" });\n },\n ArrowDown(event2) {\n send({ type: event2.altKey ? \"OPEN\" : \"TRIGGER.ARROW_DOWN\" });\n },\n ArrowLeft() {\n send({ type: \"TRIGGER.ARROW_LEFT\" });\n },\n ArrowRight() {\n send({ type: \"TRIGGER.ARROW_RIGHT\" });\n },\n Home() {\n send({ type: \"TRIGGER.HOME\" });\n },\n End() {\n send({ type: \"TRIGGER.END\" });\n },\n Enter() {\n send({ type: \"TRIGGER.ENTER\" });\n },\n Space(event2) {\n if (isTypingAhead) {\n send({ type: \"TRIGGER.TYPEAHEAD\", key: event2.key });\n } else {\n send({ type: \"TRIGGER.ENTER\" });\n }\n }\n };\n const exec = keyMap[getEventKey(event, {\n dir: prop(\"dir\"),\n orientation: \"vertical\"\n })];\n if (exec) {\n exec(event);\n event.preventDefault();\n return;\n }\n if (getByTypeahead.isValidEvent(event)) {\n send({ type: \"TRIGGER.TYPEAHEAD\", key: event.key });\n event.preventDefault();\n }\n }\n });\n },\n getIndicatorProps() {\n return normalize.element({\n ...parts.indicator.attrs,\n dir: prop(\"dir\"),\n \"aria-hidden\": true,\n \"data-state\": open ? \"open\" : \"closed\",\n \"data-disabled\": dataAttr(disabled),\n \"data-invalid\": dataAttr(invalid),\n \"data-readonly\": dataAttr(readOnly)\n });\n },\n getItemProps(props2) {\n const itemState = getItemState(props2);\n return normalize.element({\n id: getItemId(scope, itemState.value),\n role: \"option\",\n ...parts.item.attrs,\n dir: prop(\"dir\"),\n \"data-value\": itemState.value,\n \"aria-selected\": itemState.selected,\n \"data-state\": itemState.selected ? \"checked\" : \"unchecked\",\n \"data-highlighted\": dataAttr(itemState.highlighted),\n \"data-disabled\": dataAttr(itemState.disabled),\n \"aria-disabled\": ariaAttr(itemState.disabled),\n onPointerMove(event) {\n if (itemState.disabled || event.pointerType !== \"mouse\") return;\n if (itemState.value === highlightedValue) return;\n send({ type: \"ITEM.POINTER_MOVE\", value: itemState.value });\n },\n onClick(event) {\n if (event.defaultPrevented) return;\n if (itemState.disabled) return;\n send({ type: \"ITEM.CLICK\", src: \"pointerup\", value: itemState.value });\n },\n onPointerLeave(event) {\n if (itemState.disabled) return;\n if (props2.persistFocus) return;\n if (event.pointerType !== \"mouse\") return;\n const pointerMoved = service.event.previous()?.type.includes(\"POINTER\");\n if (!pointerMoved) return;\n send({ type: \"ITEM.POINTER_LEAVE\" });\n }\n });\n },\n getItemTextProps(props2) {\n const itemState = getItemState(props2);\n return normalize.element({\n ...parts.itemText.attrs,\n \"data-state\": itemState.selected ? \"checked\" : \"unchecked\",\n \"data-disabled\": dataAttr(itemState.disabled),\n \"data-highlighted\": dataAttr(itemState.highlighted)\n });\n },\n getItemIndicatorProps(props2) {\n const itemState = getItemState(props2);\n return normalize.element({\n \"aria-hidden\": true,\n ...parts.itemIndicator.attrs,\n \"data-state\": itemState.selected ? \"checked\" : \"unchecked\",\n hidden: !itemState.selected\n });\n },\n getItemGroupLabelProps(props2) {\n const { htmlFor } = props2;\n return normalize.element({\n ...parts.itemGroupLabel.attrs,\n id: getItemGroupLabelId(scope, htmlFor),\n dir: prop(\"dir\"),\n role: \"presentation\"\n });\n },\n getItemGroupProps(props2) {\n const { id } = props2;\n return normalize.element({\n ...parts.itemGroup.attrs,\n \"data-disabled\": dataAttr(disabled),\n id: getItemGroupId(scope, id),\n \"aria-labelledby\": getItemGroupLabelId(scope, id),\n role: \"group\",\n dir: prop(\"dir\")\n });\n },\n getClearTriggerProps() {\n return normalize.button({\n ...parts.clearTrigger.attrs,\n id: getClearTriggerId(scope),\n type: \"button\",\n \"aria-label\": \"Clear value\",\n \"data-invalid\": dataAttr(invalid),\n disabled,\n hidden: !computed(\"hasSelectedItems\"),\n dir: prop(\"dir\"),\n onClick(event) {\n if (event.defaultPrevented) return;\n send({ type: \"CLEAR.CLICK\" });\n }\n });\n },\n getHiddenSelectProps() {\n const value = context.get(\"value\");\n const defaultValue = prop(\"multiple\") ? value : value?.[0];\n return normalize.select({\n name: prop(\"name\"),\n form: prop(\"form\"),\n disabled,\n multiple: prop(\"multiple\"),\n required: prop(\"required\"),\n \"aria-hidden\": true,\n id: getHiddenSelectId(scope),\n defaultValue,\n style: visuallyHiddenStyle,\n tabIndex: -1,\n // Some browser extensions will focus the hidden select.\n // Let's forward the focus to the trigger.\n onFocus() {\n getTriggerEl(scope)?.focus({ preventScroll: true });\n },\n \"aria-labelledby\": getLabelId(scope)\n });\n },\n getPositionerProps() {\n return normalize.element({\n ...parts.positioner.attrs,\n dir: prop(\"dir\"),\n id: getPositionerId(scope),\n style: popperStyles.floating\n });\n },\n getContentProps() {\n return normalize.element({\n hidden: !open,\n dir: prop(\"dir\"),\n id: getContentId(scope),\n role: composite ? \"listbox\" : \"dialog\",\n ...parts.content.attrs,\n \"data-state\": open ? \"open\" : \"closed\",\n \"data-placement\": currentPlacement,\n \"data-activedescendant\": ariaActiveDescendant,\n \"aria-activedescendant\": composite ? ariaActiveDescendant : void 0,\n \"aria-multiselectable\": prop(\"multiple\") && composite ? true : void 0,\n \"aria-labelledby\": getLabelId(scope),\n tabIndex: 0,\n onKeyDown(event) {\n if (!interactive) return;\n if (!isSelfTarget(event)) return;\n if (event.key === \"Tab\") {\n const valid = isValidTabEvent(event);\n if (!valid) {\n event.preventDefault();\n return;\n }\n }\n const keyMap = {\n ArrowUp() {\n send({ type: \"CONTENT.ARROW_UP\" });\n },\n ArrowDown() {\n send({ type: \"CONTENT.ARROW_DOWN\" });\n },\n Home() {\n send({ type: \"CONTENT.HOME\" });\n },\n End() {\n send({ type: \"CONTENT.END\" });\n },\n Enter() {\n send({ type: \"ITEM.CLICK\", src: \"keydown.enter\" });\n },\n Space(event2) {\n if (isTypingAhead) {\n send({ type: \"CONTENT.TYPEAHEAD\", key: event2.key });\n } else {\n keyMap.Enter?.(event2);\n }\n }\n };\n const exec = keyMap[getEventKey(event)];\n if (exec) {\n exec(event);\n event.preventDefault();\n return;\n }\n const target = getEventTarget(event);\n if (isEditableElement(target)) {\n return;\n }\n if (getByTypeahead.isValidEvent(event)) {\n send({ type: \"CONTENT.TYPEAHEAD\", key: event.key });\n event.preventDefault();\n }\n }\n });\n },\n getListProps() {\n return normalize.element({\n ...parts.list.attrs,\n tabIndex: 0,\n role: !composite ? \"listbox\" : void 0,\n \"aria-labelledby\": getTriggerId(scope),\n \"aria-activedescendant\": !composite ? ariaActiveDescendant : void 0,\n \"aria-multiselectable\": !composite && prop(\"multiple\") ? true : void 0\n });\n }\n };\n}\nvar { and, not, or } = createGuards();\nvar machine = createMachine({\n props({ props: props2 }) {\n return {\n loopFocus: false,\n closeOnSelect: !props2.multiple,\n composite: true,\n defaultValue: [],\n ...props2,\n collection: props2.collection ?? collection.empty(),\n positioning: {\n placement: \"bottom-start\",\n gutter: 8,\n ...props2.positioning\n }\n };\n },\n context({ prop, bindable }) {\n return {\n value: bindable(() => ({\n defaultValue: prop(\"defaultValue\"),\n value: prop(\"value\"),\n isEqual,\n onChange(value) {\n const items = prop(\"collection\").findMany(value);\n return prop(\"onValueChange\")?.({ value, items });\n }\n })),\n highlightedValue: bindable(() => ({\n defaultValue: prop(\"defaultHighlightedValue\") || null,\n value: prop(\"highlightedValue\"),\n onChange(value) {\n prop(\"onHighlightChange\")?.({\n highlightedValue: value,\n highlightedItem: prop(\"collection\").find(value),\n highlightedIndex: prop(\"collection\").indexOf(value)\n });\n }\n })),\n currentPlacement: bindable(() => ({\n defaultValue: void 0\n })),\n fieldsetDisabled: bindable(() => ({\n defaultValue: false\n })),\n highlightedItem: bindable(() => ({\n defaultValue: null\n })),\n selectedItems: bindable(() => {\n const value = prop(\"value\") ?? prop(\"defaultValue\") ?? [];\n const items = prop(\"collection\").findMany(value);\n return { defaultValue: items };\n })\n };\n },\n refs() {\n return {\n typeahead: { ...getByTypeahead.defaultOptions }\n };\n },\n computed: {\n hasSelectedItems: ({ context }) => context.get(\"value\").length > 0,\n isTypingAhead: ({ refs }) => refs.get(\"typeahead\").keysSoFar !== \"\",\n isDisabled: ({ prop, context }) => !!prop(\"disabled\") || !!context.get(\"fieldsetDisabled\"),\n isInteractive: ({ prop }) => !(prop(\"disabled\") || prop(\"readOnly\")),\n valueAsString: ({ context, prop }) => prop(\"collection\").stringifyItems(context.get(\"selectedItems\"))\n },\n initialState({ prop }) {\n const open = prop(\"open\") || prop(\"defaultOpen\");\n return open ? \"open\" : \"idle\";\n },\n entry: [\"syncSelectElement\"],\n watch({ context, prop, track, action }) {\n track([() => context.get(\"value\").toString()], () => {\n action([\"syncSelectedItems\", \"syncSelectElement\", \"dispatchChangeEvent\"]);\n });\n track([() => prop(\"open\")], () => {\n action([\"toggleVisibility\"]);\n });\n track([() => context.get(\"highlightedValue\")], () => {\n action([\"syncHighlightedItem\"]);\n });\n track([() => prop(\"collection\").toString()], () => {\n action([\"syncCollection\"]);\n });\n },\n on: {\n \"HIGHLIGHTED_VALUE.SET\": {\n actions: [\"setHighlightedItem\"]\n },\n \"HIGHLIGHTED_VALUE.CLEAR\": {\n actions: [\"clearHighlightedItem\"]\n },\n \"ITEM.SELECT\": {\n actions: [\"selectItem\"]\n },\n \"ITEM.CLEAR\": {\n actions: [\"clearItem\"]\n },\n \"VALUE.SET\": {\n actions: [\"setSelectedItems\"]\n },\n \"VALUE.CLEAR\": {\n actions: [\"clearSelectedItems\"]\n },\n \"CLEAR.CLICK\": {\n actions: [\"clearSelectedItems\", \"focusTriggerEl\"]\n }\n },\n effects: [\"trackFormControlState\"],\n states: {\n idle: {\n tags: [\"closed\"],\n on: {\n \"CONTROLLED.OPEN\": [\n {\n guard: \"isTriggerClickEvent\",\n target: \"open\",\n actions: [\"setInitialFocus\", \"highlightFirstSelectedItem\"]\n },\n {\n target: \"open\",\n actions: [\"setInitialFocus\"]\n }\n ],\n \"TRIGGER.CLICK\": [\n {\n guard: \"isOpenControlled\",\n actions: [\"invokeOnOpen\"]\n },\n {\n target: \"open\",\n actions: [\"invokeOnOpen\", \"setInitialFocus\", \"highlightFirstSelectedItem\"]\n }\n ],\n \"TRIGGER.FOCUS\": {\n target: \"focused\"\n },\n OPEN: [\n {\n guard: \"isOpenControlled\",\n actions: [\"invokeOnOpen\"]\n },\n {\n target: \"open\",\n actions: [\"setInitialFocus\", \"invokeOnOpen\"]\n }\n ]\n }\n },\n focused: {\n tags: [\"closed\"],\n on: {\n \"CONTROLLED.OPEN\": [\n {\n guard: \"isTriggerClickEvent\",\n target: \"open\",\n actions: [\"setInitialFocus\", \"highlightFirstSelectedItem\"]\n },\n {\n guard: \"isTriggerArrowUpEvent\",\n target: \"open\",\n actions: [\"setInitialFocus\", \"highlightComputedLastItem\"]\n },\n {\n guard: or(\"isTriggerArrowDownEvent\", \"isTriggerEnterEvent\"),\n target: \"open\",\n actions: [\"setInitialFocus\", \"highlightComputedFirstItem\"]\n },\n {\n target: \"open\",\n actions: [\"setInitialFocus\"]\n }\n ],\n OPEN: [\n {\n guard: \"isOpenControlled\",\n actions: [\"invokeOnOpen\"]\n },\n {\n target: \"open\",\n actions: [\"setInitialFocus\", \"invokeOnOpen\"]\n }\n ],\n \"TRIGGER.BLUR\": {\n target: \"idle\"\n },\n \"TRIGGER.CLICK\": [\n {\n guard: \"isOpenControlled\",\n actions: [\"invokeOnOpen\"]\n },\n {\n target: \"open\",\n actions: [\"setInitialFocus\", \"invokeOnOpen\", \"highlightFirstSelectedItem\"]\n }\n ],\n \"TRIGGER.ENTER\": [\n {\n guard: \"isOpenControlled\",\n actions: [\"invokeOnOpen\"]\n },\n {\n target: \"open\",\n actions: [\"setInitialFocus\", \"invokeOnOpen\", \"highlightComputedFirstItem\"]\n }\n ],\n \"TRIGGER.ARROW_UP\": [\n {\n guard: \"isOpenControlled\",\n actions: [\"invokeOnOpen\"]\n },\n {\n target: \"open\",\n actions: [\"setInitialFocus\", \"invokeOnOpen\", \"highlightComputedLastItem\"]\n }\n ],\n \"TRIGGER.ARROW_DOWN\": [\n {\n guard: \"isOpenControlled\",\n actions: [\"invokeOnOpen\"]\n },\n {\n target: \"open\",\n actions: [\"setInitialFocus\", \"invokeOnOpen\", \"highlightComputedFirstItem\"]\n }\n ],\n \"TRIGGER.ARROW_LEFT\": [\n {\n guard: and(not(\"multiple\"), \"hasSelectedItems\"),\n actions: [\"selectPreviousItem\"]\n },\n {\n guard: not(\"multiple\"),\n actions: [\"selectLastItem\"]\n }\n ],\n \"TRIGGER.ARROW_RIGHT\": [\n {\n guard: and(not(\"multiple\"), \"hasSelectedItems\"),\n actions: [\"selectNextItem\"]\n },\n {\n guard: not(\"multiple\"),\n actions: [\"selectFirstItem\"]\n }\n ],\n \"TRIGGER.HOME\": {\n guard: not(\"multiple\"),\n actions: [\"selectFirstItem\"]\n },\n \"TRIGGER.END\": {\n guard: not(\"multiple\"),\n actions: [\"selectLastItem\"]\n },\n \"TRIGGER.TYPEAHEAD\": {\n guard: not(\"multiple\"),\n actions: [\"selectMatchingItem\"]\n }\n }\n },\n open: {\n tags: [\"open\"],\n exit: [\"scrollContentToTop\"],\n effects: [\"trackDismissableElement\", \"computePlacement\", \"scrollToHighlightedItem\"],\n on: {\n \"CONTROLLED.CLOSE\": [\n {\n guard: \"restoreFocus\",\n target: \"focused\",\n actions: [\"focusTriggerEl\", \"clearHighlightedItem\"]\n },\n {\n target: \"idle\",\n actions: [\"clearHighlightedItem\"]\n }\n ],\n CLOSE: [\n {\n guard: \"isOpenControlled\",\n actions: [\"invokeOnClose\"]\n },\n {\n guard: \"restoreFocus\",\n target: \"focused\",\n actions: [\"invokeOnClose\", \"focusTriggerEl\", \"clearHighlightedItem\"]\n },\n {\n target: \"idle\",\n actions: [\"invokeOnClose\", \"clearHighlightedItem\"]\n }\n ],\n \"TRIGGER.CLICK\": [\n {\n guard: \"isOpenControlled\",\n actions: [\"invokeOnClose\"]\n },\n {\n target: \"focused\",\n actions: [\"invokeOnClose\", \"clearHighlightedItem\"]\n }\n ],\n \"ITEM.CLICK\": [\n {\n guard: and(\"closeOnSelect\", \"isOpenControlled\"),\n actions: [\"selectHighlightedItem\", \"invokeOnClose\"]\n },\n {\n guard: \"closeOnSelect\",\n target: \"focused\",\n actions: [\"selectHighlightedItem\", \"invokeOnClose\", \"focusTriggerEl\", \"clearHighlightedItem\"]\n },\n {\n actions: [\"selectHighlightedItem\"]\n }\n ],\n \"CONTENT.HOME\": {\n actions: [\"highlightFirstItem\"]\n },\n \"CONTENT.END\": {\n actions: [\"highlightLastItem\"]\n },\n \"CONTENT.ARROW_DOWN\": [\n {\n guard: and(\"hasHighlightedItem\", \"loop\", \"isLastItemHighlighted\"),\n actions: [\"highlightFirstItem\"]\n },\n {\n guard: \"hasHighlightedItem\",\n actions: [\"highlightNextItem\"]\n },\n {\n actions: [\"highlightFirstItem\"]\n }\n ],\n \"CONTENT.ARROW_UP\": [\n {\n guard: and(\"hasHighlightedItem\", \"loop\", \"isFirstItemHighlighted\"),\n actions: [\"highlightLastItem\"]\n },\n {\n guard: \"hasHighlightedItem\",\n actions: [\"highlightPreviousItem\"]\n },\n {\n actions: [\"highlightLastItem\"]\n }\n ],\n \"CONTENT.TYPEAHEAD\": {\n actions: [\"highlightMatchingItem\"]\n },\n \"ITEM.POINTER_MOVE\": {\n actions: [\"highlightItem\"]\n },\n \"ITEM.POINTER_LEAVE\": {\n actions: [\"clearHighlightedItem\"]\n },\n \"POSITIONING.SET\": {\n actions: [\"reposition\"]\n }\n }\n }\n },\n implementations: {\n guards: {\n loop: ({ prop }) => !!prop(\"loopFocus\"),\n multiple: ({ prop }) => !!prop(\"multiple\"),\n hasSelectedItems: ({ computed }) => !!computed(\"hasSelectedItems\"),\n hasHighlightedItem: ({ context }) => context.get(\"highlightedValue\") != null,\n isFirstItemHighlighted: ({ context, prop }) => context.get(\"highlightedValue\") === prop(\"collection\").firstValue,\n isLastItemHighlighted: ({ context, prop }) => context.get(\"highlightedValue\") === prop(\"collection\").lastValue,\n closeOnSelect: ({ prop, event }) => !!(event.closeOnSelect ?? prop(\"closeOnSelect\")),\n restoreFocus: ({ event }) => restoreFocusFn(event),\n // guard assertions (for controlled mode)\n isOpenControlled: ({ prop }) => prop(\"open\") !== void 0,\n isTriggerClickEvent: ({ event }) => event.previousEvent?.type === \"TRIGGER.CLICK\",\n isTriggerEnterEvent: ({ event }) => event.previousEvent?.type === \"TRIGGER.ENTER\",\n isTriggerArrowUpEvent: ({ event }) => event.previousEvent?.type === \"TRIGGER.ARROW_UP\",\n isTriggerArrowDownEvent: ({ event }) => event.previousEvent?.type === \"TRIGGER.ARROW_DOWN\"\n },\n effects: {\n trackFormControlState({ context, scope }) {\n return trackFormControl(getHiddenSelectEl(scope), {\n onFieldsetDisabledChange(disabled) {\n context.set(\"fieldsetDisabled\", disabled);\n },\n onFormReset() {\n const value = context.initial(\"value\");\n context.set(\"value\", value);\n }\n });\n },\n trackDismissableElement({ scope, send, prop }) {\n const contentEl = () => getContentEl(scope);\n let restoreFocus = true;\n return trackDismissableElement(contentEl, {\n defer: true,\n exclude: [getTriggerEl(scope), getClearTriggerEl(scope)],\n onFocusOutside: prop(\"onFocusOutside\"),\n onPointerDownOutside: prop(\"onPointerDownOutside\"),\n onInteractOutside(event) {\n prop(\"onInteractOutside\")?.(event);\n restoreFocus = !(event.detail.focusable || event.detail.contextmenu);\n },\n onDismiss() {\n send({ type: \"CLOSE\", src: \"interact-outside\", restoreFocus });\n }\n });\n },\n computePlacement({ context, prop, scope }) {\n const positioning = prop(\"positioning\");\n context.set(\"currentPlacement\", positioning.placement);\n const triggerEl = () => getTriggerEl(scope);\n const positionerEl = () => getPositionerEl(scope);\n return getPlacement(triggerEl, positionerEl, {\n defer: true,\n ...positioning,\n onComplete(data) {\n context.set(\"currentPlacement\", data.placement);\n }\n });\n },\n scrollToHighlightedItem({ context, prop, scope, event }) {\n const exec = (immediate) => {\n const highlightedValue = context.get(\"highlightedValue\");\n if (highlightedValue == null) return;\n if (event.current().type.includes(\"POINTER\")) return;\n const optionEl = getItemEl(scope, highlightedValue);\n const contentEl2 = getContentEl(scope);\n const scrollToIndexFn = prop(\"scrollToIndexFn\");\n if (scrollToIndexFn) {\n const highlightedIndex = prop(\"collection\").indexOf(highlightedValue);\n scrollToIndexFn?.({ index: highlightedIndex, immediate });\n return;\n }\n scrollIntoView(optionEl, { rootEl: contentEl2, block: \"nearest\" });\n };\n raf(() => exec(true));\n const contentEl = () => getContentEl(scope);\n return observeAttributes(contentEl, {\n defer: true,\n attributes: [\"data-activedescendant\"],\n callback() {\n exec(false);\n }\n });\n }\n },\n actions: {\n reposition({ context, prop, scope, event }) {\n const positionerEl = () => getPositionerEl(scope);\n getPlacement(getTriggerEl(scope), positionerEl, {\n ...prop(\"positioning\"),\n ...event.options,\n defer: true,\n listeners: false,\n onComplete(data) {\n context.set(\"currentPlacement\", data.placement);\n }\n });\n },\n toggleVisibility({ send, prop, event }) {\n send({ type: prop(\"open\") ? \"CONTROLLED.OPEN\" : \"CONTROLLED.CLOSE\", previousEvent: event });\n },\n highlightPreviousItem({ context, prop }) {\n const highlightedValue = context.get(\"highlightedValue\");\n if (highlightedValue == null) return;\n const value = prop(\"collection\").getPreviousValue(highlightedValue, 1, prop(\"loopFocus\"));\n if (value == null) return;\n context.set(\"highlightedValue\", value);\n },\n highlightNextItem({ context, prop }) {\n const highlightedValue = context.get(\"highlightedValue\");\n if (highlightedValue == null) return;\n const value = prop(\"collection\").getNextValue(highlightedValue, 1, prop(\"loopFocus\"));\n if (value == null) return;\n context.set(\"highlightedValue\", value);\n },\n highlightFirstItem({ context, prop }) {\n const value = prop(\"collection\").firstValue;\n context.set(\"highlightedValue\", value);\n },\n highlightLastItem({ context, prop }) {\n const value = prop(\"collection\").lastValue;\n context.set(\"highlightedValue\", value);\n },\n setInitialFocus({ scope }) {\n raf(() => {\n const element = getInitialFocus({\n root: getContentEl(scope)\n });\n element?.focus({ preventScroll: true });\n });\n },\n focusTriggerEl({ event, scope }) {\n if (!restoreFocusFn(event)) return;\n raf(() => {\n const element = getTriggerEl(scope);\n element?.focus({ preventScroll: true });\n });\n },\n selectHighlightedItem({ context, prop, event }) {\n let value = event.value ?? context.get(\"highlightedValue\");\n if (value == null || !prop(\"collection\").has(value)) return;\n prop(\"onSelect\")?.({ value });\n const nullable = prop(\"deselectable\") && !prop(\"multiple\") && context.get(\"value\").includes(value);\n value = nullable ? null : value;\n context.set(\"value\", (prev) => {\n if (value == null) return [];\n if (prop(\"multiple\")) return addOrRemove(prev, value);\n return [value];\n });\n },\n highlightComputedFirstItem({ context, prop, computed }) {\n const collection2 = prop(\"collection\");\n const value = computed(\"hasSelectedItems\") ? collection2.sort(context.get(\"value\"))[0] : collection2.firstValue;\n context.set(\"highlightedValue\", value);\n },\n highlightComputedLastItem({ context, prop, computed }) {\n const collection2 = prop(\"collection\");\n const value = computed(\"hasSelectedItems\") ? collection2.sort(context.get(\"value\"))[0] : collection2.lastValue;\n context.set(\"highlightedValue\", value);\n },\n highlightFirstSelectedItem({ context, prop, computed }) {\n if (!computed(\"hasSelectedItems\")) return;\n const value = prop(\"collection\").sort(context.get(\"value\"))[0];\n context.set(\"highlightedValue\", value);\n },\n highlightItem({ context, event }) {\n context.set(\"highlightedValue\", event.value);\n },\n highlightMatchingItem({ context, prop, event, refs }) {\n const value = prop(\"collection\").search(event.key, {\n state: refs.get(\"typeahead\"),\n currentValue: context.get(\"highlightedValue\")\n });\n if (value == null) return;\n context.set(\"highlightedValue\", value);\n },\n setHighlightedItem({ context, event }) {\n context.set(\"highlightedValue\", event.value);\n },\n clearHighlightedItem({ context }) {\n context.set(\"highlightedValue\", null);\n },\n selectItem({ context, prop, event }) {\n prop(\"onSelect\")?.({ value: event.value });\n const nullable = prop(\"deselectable\") && !prop(\"multiple\") && context.get(\"value\").includes(event.value);\n const value = nullable ? null : event.value;\n context.set(\"value\", (prev) => {\n if (value == null) return [];\n if (prop(\"multiple\")) return addOrRemove(prev, value);\n return [value];\n });\n },\n clearItem({ context, event }) {\n context.set(\"value\", (prev) => prev.filter((v) => v !== event.value));\n },\n setSelectedItems({ context, event }) {\n context.set(\"value\", event.value);\n },\n clearSelectedItems({ context }) {\n context.set(\"value\", []);\n },\n selectPreviousItem({ context, prop }) {\n const [firstItem] = context.get(\"value\");\n const value = prop(\"collection\").getPreviousValue(firstItem);\n if (value) context.set(\"value\", [value]);\n },\n selectNextItem({ context, prop }) {\n const [firstItem] = context.get(\"value\");\n const value = prop(\"collection\").getNextValue(firstItem);\n if (value) context.set(\"value\", [value]);\n },\n selectFirstItem({ context, prop }) {\n const value = prop(\"collection\").firstValue;\n if (value) context.set(\"value\", [value]);\n },\n selectLastItem({ context, prop }) {\n const value = prop(\"collection\").lastValue;\n if (value) context.set(\"value\", [value]);\n },\n selectMatchingItem({ context, prop, event, refs }) {\n const value = prop(\"collection\").search(event.key, {\n state: refs.get(\"typeahead\"),\n currentValue: context.get(\"value\")[0]\n });\n if (value == null) return;\n context.set(\"value\", [value]);\n },\n scrollContentToTop({ prop, scope }) {\n if (prop(\"scrollToIndexFn\")) {\n prop(\"scrollToIndexFn\")?.({ index: 0, immediate: true });\n } else {\n getContentEl(scope)?.scrollTo(0, 0);\n }\n },\n invokeOnOpen({ prop }) {\n prop(\"onOpenChange\")?.({ open: true });\n },\n invokeOnClose({ prop }) {\n prop(\"onOpenChange\")?.({ open: false });\n },\n syncSelectElement({ context, prop, scope }) {\n const selectEl = getHiddenSelectEl(scope);\n if (!selectEl) return;\n if (context.get(\"value\").length === 0 && !prop(\"multiple\")) {\n selectEl.selectedIndex = -1;\n return;\n }\n for (const option of selectEl.options) {\n option.selected = context.get(\"value\").includes(option.value);\n }\n },\n syncCollection({ context, prop }) {\n const collection2 = prop(\"collection\");\n const highlightedItem = collection2.find(context.get(\"highlightedValue\"));\n if (highlightedItem) context.set(\"highlightedItem\", highlightedItem);\n const selectedItems = collection2.findMany(context.get(\"value\"));\n context.set(\"selectedItems\", selectedItems);\n },\n syncSelectedItems({ context, prop }) {\n const collection2 = prop(\"collection\");\n const prevSelectedItems = context.get(\"selectedItems\");\n const value = context.get(\"value\");\n const selectedItems = value.map((value2) => {\n const item = prevSelectedItems.find((item2) => collection2.getItemValue(item2) === value2);\n return item || collection2.find(value2);\n });\n context.set(\"selectedItems\", selectedItems);\n },\n syncHighlightedItem({ context, prop }) {\n const collection2 = prop(\"collection\");\n const highlightedValue = context.get(\"highlightedValue\");\n const highlightedItem = highlightedValue ? collection2.find(highlightedValue) : null;\n context.set(\"highlightedItem\", highlightedItem);\n },\n dispatchChangeEvent({ scope }) {\n queueMicrotask(() => {\n const node = getHiddenSelectEl(scope);\n if (!node) return;\n const win = scope.getWin();\n const changeEvent = new win.Event(\"change\", { bubbles: true, composed: true });\n node.dispatchEvent(changeEvent);\n });\n }\n }\n }\n});\nfunction restoreFocusFn(event) {\n const v = event.restoreFocus ?? event.previousEvent?.restoreFocus;\n return v == null || !!v;\n}\nvar props = createProps()([\n \"closeOnSelect\",\n \"collection\",\n \"composite\",\n \"defaultHighlightedValue\",\n \"defaultOpen\",\n \"defaultValue\",\n \"deselectable\",\n \"dir\",\n \"disabled\",\n \"form\",\n \"getRootNode\",\n \"highlightedValue\",\n \"id\",\n \"ids\",\n \"invalid\",\n \"loopFocus\",\n \"multiple\",\n \"name\",\n \"onFocusOutside\",\n \"onHighlightChange\",\n \"onInteractOutside\",\n \"onOpenChange\",\n \"onPointerDownOutside\",\n \"onSelect\",\n \"onValueChange\",\n \"open\",\n \"positioning\",\n \"readOnly\",\n \"required\",\n \"scrollToIndexFn\",\n \"value\"\n]);\nvar splitProps = createSplitProps(props);\nvar itemProps = createProps()([\"item\", \"persistFocus\"]);\nvar splitItemProps = createSplitProps(itemProps);\nvar itemGroupProps = createProps()([\"id\"]);\nvar splitItemGroupProps = createSplitProps(itemGroupProps);\nvar itemGroupLabelProps = createProps()([\"htmlFor\"]);\nvar splitItemGroupLabelProps = createSplitProps(itemGroupLabelProps);\n\nexport { anatomy, collection, connect, itemGroupLabelProps, itemGroupProps, itemProps, machine, props, splitItemGroupLabelProps, splitItemGroupProps, splitItemProps, splitProps };\n"],"names":["__defProp","__defNormalProp","obj","key","value","__publicField","fallback","item","isObject","hasProp","ListCollection","_ListCollection","options","items","other","isEqual","index","values","idx","groups","valueA","valueB","indexA","indexB","separator","groupBy","groupSort","groupKey","entries","a","b","step","clamp","text","current","wrap","match","queryString","state","currentValue","timeout","search","query","char","cleanup","update","value2","mode","insert","toIndex","fn","filteredItems","itemsOrValues","itemOrValue","fromIndex","move","indices","from","to","keys","result","label","disabled","itemString","v","_","itemsToMove","i","anatomy","createAnatomy","parts","collection","getRootId","ctx","getContentId","getTriggerId","getClearTriggerId","getLabelId","getControlId","getItemId","id","getHiddenSelectId","getPositionerId","getItemGroupId","getItemGroupLabelId","getHiddenSelectEl","getContentEl","getTriggerEl","getClearTriggerEl","getPositionerEl","getItemEl","connect","service","normalize","context","prop","scope","computed","send","invalid","readOnly","composite","collection2","open","focused","highlightedValue","highlightedItem","selectedItems","currentPlacement","isTypingAhead","interactive","ariaActiveDescendant","getItemState","props2","_disabled","ensure","popperStyles","getPlacementStyles","nextOpen","dataAttr","event","exec","event2","getEventKey","getByTypeahead","itemState","ariaAttr","htmlFor","defaultValue","visuallyHiddenStyle","isSelfTarget","isValidTabEvent","keyMap","target","getEventTarget","isEditableElement","and","not","or","createGuards","machine","createMachine","bindable","refs","track","action","restoreFocusFn","trackFormControl","contentEl","restoreFocus","trackDismissableElement","positioning","triggerEl","positionerEl","getPlacement","data","immediate","optionEl","contentEl2","scrollToIndexFn","highlightedIndex","scrollIntoView","raf","observeAttributes","getInitialFocus","prev","addOrRemove","firstItem","selectEl","option","prevSelectedItems","item2","node","win","changeEvent","createProps"],"mappings":"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","x_google_ignoreList":[0,1]}
|
|
1
|
+
{"version":3,"file":"index-_913FPya.js","sources":["../../node_modules/@zag-js/collection/dist/index.mjs","../../node_modules/@zag-js/select/dist/index.mjs"],"sourcesContent":["import { isObject, hasProp, isEqual, chunk, prevIndex, nextIndex } from '@zag-js/utils';\n\nvar __defProp = Object.defineProperty;\nvar __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;\nvar __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== \"symbol\" ? key + \"\" : key, value);\nvar fallback = {\n itemToValue(item) {\n if (typeof item === \"string\") return item;\n if (isObject(item) && hasProp(item, \"value\")) return item.value;\n return \"\";\n },\n itemToString(item) {\n if (typeof item === \"string\") return item;\n if (isObject(item) && hasProp(item, \"label\")) return item.label;\n return fallback.itemToValue(item);\n },\n isItemDisabled(item) {\n if (isObject(item) && hasProp(item, \"disabled\")) return !!item.disabled;\n return false;\n }\n};\nvar ListCollection = class _ListCollection {\n constructor(options) {\n this.options = options;\n /**\n * The items in the collection\n */\n __publicField(this, \"items\");\n /**\n * Copy the collection\n */\n __publicField(this, \"copy\", (items) => {\n return new _ListCollection({ ...this.options, items: items ?? [...this.items] });\n });\n /**\n * Check if the collection is equal to another collection\n */\n __publicField(this, \"isEqual\", (other) => {\n return isEqual(this.items, other.items);\n });\n /**\n * Function to update the collection items\n */\n __publicField(this, \"setItems\", (items) => {\n return this.copy(items);\n });\n /**\n * Returns all the values in the collection\n */\n __publicField(this, \"getValues\", (items = this.items) => {\n return Array.from(items).map((item) => this.getItemValue(item)).filter(Boolean);\n });\n /**\n * Get the item based on its value\n */\n __publicField(this, \"find\", (value) => {\n if (value == null) return null;\n const index = this.indexOf(value);\n return index != null ? this.at(index) : null;\n });\n /**\n * Get the items based on its values\n */\n __publicField(this, \"findMany\", (values) => {\n return Array.from(values).map((value) => this.find(value)).filter((item) => item != null);\n });\n /**\n * Get the item based on its index\n */\n __publicField(this, \"at\", (index) => {\n if (!this.options.groupBy && !this.options.groupSort) {\n return this.items[index] ?? null;\n }\n let idx = 0;\n const groups = this.group();\n for (const [, items] of groups) {\n for (const item of items) {\n if (idx === index) return item;\n idx++;\n }\n }\n return null;\n });\n __publicField(this, \"sortFn\", (valueA, valueB) => {\n const indexA = this.indexOf(valueA);\n const indexB = this.indexOf(valueB);\n return (indexA ?? 0) - (indexB ?? 0);\n });\n /**\n * Sort the values based on their index\n */\n __publicField(this, \"sort\", (values) => {\n return [...values].sort(this.sortFn.bind(this));\n });\n /**\n * Convert an item to a value\n */\n __publicField(this, \"getItemValue\", (item) => {\n if (item == null) return null;\n return this.options.itemToValue?.(item) ?? fallback.itemToValue(item);\n });\n /**\n * Whether an item is disabled\n */\n __publicField(this, \"getItemDisabled\", (item) => {\n if (item == null) return false;\n return this.options.isItemDisabled?.(item) ?? fallback.isItemDisabled(item);\n });\n /**\n * Convert an item to a string\n */\n __publicField(this, \"stringifyItem\", (item) => {\n if (item == null) return null;\n return this.options.itemToString?.(item) ?? fallback.itemToString(item);\n });\n /**\n * Convert a value to a string\n */\n __publicField(this, \"stringify\", (value) => {\n if (value == null) return null;\n return this.stringifyItem(this.find(value));\n });\n /**\n * Convert an array of items to a string\n */\n __publicField(this, \"stringifyItems\", (items, separator = \", \") => {\n return Array.from(items).map((item) => this.stringifyItem(item)).filter(Boolean).join(separator);\n });\n /**\n * Convert an array of items to a string\n */\n __publicField(this, \"stringifyMany\", (value, separator) => {\n return this.stringifyItems(this.findMany(value), separator);\n });\n /**\n * Whether the collection has a value\n */\n __publicField(this, \"has\", (value) => {\n return this.indexOf(value) !== -1;\n });\n /**\n * Whether the collection has an item\n */\n __publicField(this, \"hasItem\", (item) => {\n if (item == null) return false;\n return this.has(this.getItemValue(item));\n });\n /**\n * Group items by the groupBy function provided in options\n * Returns an array of [groupKey, items] tuples\n */\n __publicField(this, \"group\", () => {\n const { groupBy, groupSort } = this.options;\n if (!groupBy) return [[\"\", [...this.items]]];\n const groups = /* @__PURE__ */ new Map();\n this.items.forEach((item, index) => {\n const groupKey = groupBy(item, index);\n if (!groups.has(groupKey)) {\n groups.set(groupKey, []);\n }\n groups.get(groupKey).push(item);\n });\n let entries = Array.from(groups.entries());\n if (groupSort) {\n entries.sort(([a], [b]) => {\n if (typeof groupSort === \"function\") return groupSort(a, b);\n if (Array.isArray(groupSort)) {\n const indexA = groupSort.indexOf(a);\n const indexB = groupSort.indexOf(b);\n if (indexA === -1) return 1;\n if (indexB === -1) return -1;\n return indexA - indexB;\n }\n if (groupSort === \"asc\") return a.localeCompare(b);\n if (groupSort === \"desc\") return b.localeCompare(a);\n return 0;\n });\n }\n return entries;\n });\n /**\n * Returns the next value in the collection\n */\n __publicField(this, \"getNextValue\", (value, step = 1, clamp = false) => {\n let index = this.indexOf(value);\n if (index === -1) return null;\n index = clamp ? Math.min(index + step, this.size - 1) : index + step;\n while (index <= this.size && this.getItemDisabled(this.at(index))) index++;\n return this.getItemValue(this.at(index));\n });\n /**\n * Returns the previous value in the collection\n */\n __publicField(this, \"getPreviousValue\", (value, step = 1, clamp = false) => {\n let index = this.indexOf(value);\n if (index === -1) return null;\n index = clamp ? Math.max(index - step, 0) : index - step;\n while (index >= 0 && this.getItemDisabled(this.at(index))) index--;\n return this.getItemValue(this.at(index));\n });\n /**\n * Get the index of an item based on its key\n */\n __publicField(this, \"indexOf\", (value) => {\n if (value == null) return -1;\n if (!this.options.groupBy && !this.options.groupSort) {\n return this.items.findIndex((item) => this.getItemValue(item) === value);\n }\n let idx = 0;\n const groups = this.group();\n for (const [, items] of groups) {\n for (const item of items) {\n if (this.getItemValue(item) === value) return idx;\n idx++;\n }\n }\n return -1;\n });\n __publicField(this, \"getByText\", (text, current) => {\n let items = current != null ? wrap(this.items, this.indexOf(current)) : this.items;\n const isSingleKey = text.length === 1;\n if (isSingleKey) items = items.filter((item) => this.getItemValue(item) !== current);\n return items.find((item) => match(this.stringifyItem(item), text));\n });\n /**\n * Search for a value based on a query\n */\n __publicField(this, \"search\", (queryString, options) => {\n const { state, currentValue, timeout = 350 } = options;\n const search = state.keysSoFar + queryString;\n const isRepeated = search.length > 1 && Array.from(search).every((char) => char === search[0]);\n const query = isRepeated ? search[0] : search;\n const item = this.getByText(query, currentValue);\n const value = this.getItemValue(item);\n function cleanup() {\n clearTimeout(state.timer);\n state.timer = -1;\n }\n function update(value2) {\n state.keysSoFar = value2;\n cleanup();\n if (value2 !== \"\") {\n state.timer = +setTimeout(() => {\n update(\"\");\n cleanup();\n }, timeout);\n }\n }\n update(search);\n return value;\n });\n /**\n * Update an item in the collection\n */\n __publicField(this, \"update\", (value, item) => {\n let index = this.indexOf(value);\n if (index === -1) return this;\n return this.copy([...this.items.slice(0, index), item, ...this.items.slice(index + 1)]);\n });\n /**\n * Update an item in the collection if it exists, otherwise append it\n */\n __publicField(this, \"upsert\", (value, item, mode = \"append\") => {\n let index = this.indexOf(value);\n if (index === -1) {\n const fn = mode === \"append\" ? this.append : this.prepend;\n return fn(item);\n }\n return this.copy([...this.items.slice(0, index), item, ...this.items.slice(index + 1)]);\n });\n /**\n * Insert items at a specific index\n */\n __publicField(this, \"insert\", (index, ...items) => {\n return this.copy(insert(this.items, index, ...items));\n });\n /**\n * Insert items before a specific value\n */\n __publicField(this, \"insertBefore\", (value, ...items) => {\n let toIndex = this.indexOf(value);\n if (toIndex === -1) {\n if (this.items.length === 0) toIndex = 0;\n else return this;\n }\n return this.copy(insert(this.items, toIndex, ...items));\n });\n /**\n * Insert items after a specific value\n */\n __publicField(this, \"insertAfter\", (value, ...items) => {\n let toIndex = this.indexOf(value);\n if (toIndex === -1) {\n if (this.items.length === 0) toIndex = 0;\n else return this;\n }\n return this.copy(insert(this.items, toIndex + 1, ...items));\n });\n /**\n * Prepend items to the collection\n */\n __publicField(this, \"prepend\", (...items) => {\n return this.copy(insert(this.items, 0, ...items));\n });\n /**\n * Append items to the collection\n */\n __publicField(this, \"append\", (...items) => {\n return this.copy(insert(this.items, this.items.length, ...items));\n });\n /**\n * Filter the collection\n */\n __publicField(this, \"filter\", (fn) => {\n const filteredItems = this.items.filter((item, index) => fn(this.stringifyItem(item), index, item));\n return this.copy(filteredItems);\n });\n /**\n * Remove items from the collection\n */\n __publicField(this, \"remove\", (...itemsOrValues) => {\n const values = itemsOrValues.map(\n (itemOrValue) => typeof itemOrValue === \"string\" ? itemOrValue : this.getItemValue(itemOrValue)\n );\n return this.copy(\n this.items.filter((item) => {\n const value = this.getItemValue(item);\n if (value == null) return false;\n return !values.includes(value);\n })\n );\n });\n /**\n * Move an item to a specific index\n */\n __publicField(this, \"move\", (value, toIndex) => {\n const fromIndex = this.indexOf(value);\n if (fromIndex === -1) return this;\n return this.copy(move(this.items, [fromIndex], toIndex));\n });\n /**\n * Move items before a specific value\n */\n __publicField(this, \"moveBefore\", (value, ...values) => {\n let toIndex = this.items.findIndex((item) => this.getItemValue(item) === value);\n if (toIndex === -1) return this;\n let indices = values.map((value2) => this.items.findIndex((item) => this.getItemValue(item) === value2)).sort((a, b) => a - b);\n return this.copy(move(this.items, indices, toIndex));\n });\n /**\n * Move items after a specific value\n */\n __publicField(this, \"moveAfter\", (value, ...values) => {\n let toIndex = this.items.findIndex((item) => this.getItemValue(item) === value);\n if (toIndex === -1) return this;\n let indices = values.map((value2) => this.items.findIndex((item) => this.getItemValue(item) === value2)).sort((a, b) => a - b);\n return this.copy(move(this.items, indices, toIndex + 1));\n });\n /**\n * Reorder items\n */\n __publicField(this, \"reorder\", (fromIndex, toIndex) => {\n return this.copy(move(this.items, [fromIndex], toIndex));\n });\n /**\n * Compare two values\n */\n __publicField(this, \"compareValue\", (a, b) => {\n const indexA = this.indexOf(a);\n const indexB = this.indexOf(b);\n if (indexA < indexB) return -1;\n if (indexA > indexB) return 1;\n return 0;\n });\n /**\n * Get the range of values between two values\n */\n __publicField(this, \"range\", (from, to) => {\n let keys = [];\n let key = from;\n while (key != null) {\n let item = this.find(key);\n if (item) keys.push(key);\n if (key === to) return keys;\n key = this.getNextValue(key);\n }\n return [];\n });\n /**\n * Get the range of values between two values\n */\n __publicField(this, \"getValueRange\", (from, to) => {\n if (from && to) {\n if (this.compareValue(from, to) <= 0) {\n return this.range(from, to);\n }\n return this.range(to, from);\n }\n return [];\n });\n /**\n * Convert the collection to a string\n */\n __publicField(this, \"toString\", () => {\n let result = \"\";\n for (const item of this.items) {\n const value = this.getItemValue(item);\n const label = this.stringifyItem(item);\n const disabled = this.getItemDisabled(item);\n const itemString = [value, label, disabled].filter(Boolean).join(\":\");\n result += itemString + \",\";\n }\n return result;\n });\n /**\n * Convert the collection to a JSON object\n */\n __publicField(this, \"toJSON\", () => {\n return {\n size: this.size,\n first: this.firstValue,\n last: this.lastValue\n };\n });\n this.items = [...options.items];\n }\n /**\n * Returns the number of items in the collection\n */\n get size() {\n return this.items.length;\n }\n /**\n * Returns the first value in the collection\n */\n get firstValue() {\n let index = 0;\n while (this.getItemDisabled(this.at(index))) index++;\n return this.getItemValue(this.at(index));\n }\n /**\n * Returns the last value in the collection\n */\n get lastValue() {\n let index = this.size - 1;\n while (this.getItemDisabled(this.at(index))) index--;\n return this.getItemValue(this.at(index));\n }\n *[Symbol.iterator]() {\n yield* this.items;\n }\n};\nvar match = (label, query) => {\n return !!label?.toLowerCase().startsWith(query.toLowerCase());\n};\nvar wrap = (v, idx) => {\n return v.map((_, index) => v[(Math.max(idx, 0) + index) % v.length]);\n};\nfunction isListCollection(v) {\n return v instanceof ListCollection;\n}\nfunction insert(items, index, ...values) {\n return [...items.slice(0, index), ...values, ...items.slice(index)];\n}\nfunction move(items, indices, toIndex) {\n indices = [...indices].sort((a, b) => a - b);\n const itemsToMove = indices.map((i) => items[i]);\n for (let i = indices.length - 1; i >= 0; i--) {\n items = [...items.slice(0, indices[i]), ...items.slice(indices[i] + 1)];\n }\n toIndex = Math.max(0, toIndex - indices.filter((i) => i < toIndex).length);\n return [...items.slice(0, toIndex), ...itemsToMove, ...items.slice(toIndex)];\n}\n\n// src/grid-collection.ts\nvar GridCollection = class extends ListCollection {\n constructor(options) {\n const { columnCount } = options;\n super(options);\n __publicField(this, \"columnCount\");\n /**\n * Returns the row data in the grid\n */\n __publicField(this, \"getRows\", () => {\n return chunk([...this.items], this.columnCount);\n });\n /**\n * Returns the number of rows in the grid\n */\n __publicField(this, \"getRowCount\", () => {\n return this.getRows().length;\n });\n /**\n * Returns the index of the specified row and column in the grid\n */\n __publicField(this, \"getCellIndex\", (row, column) => {\n return row * this.columnCount + column;\n });\n /**\n * Returns the item at the specified row and column in the grid\n */\n __publicField(this, \"getCell\", (row, column) => {\n return this.at(this.getCellIndex(row, column));\n });\n /**\n * Returns the row and column index for a given value\n */\n __publicField(this, \"getValueCell\", (value) => {\n const index = this.indexOf(value);\n if (index === -1) return null;\n const row = Math.floor(index / this.columnCount);\n const column = index % this.columnCount;\n return { row, column };\n });\n /**\n * Returns the value of the last enabled column in a row\n */\n __publicField(this, \"getLastEnabledColumnIndex\", (row) => {\n for (let col = this.columnCount - 1; col >= 0; col--) {\n const cell = this.getCell(row, col);\n if (cell && !this.getItemDisabled(cell)) {\n return col;\n }\n }\n return null;\n });\n /**\n * Returns the index of the first enabled column in a row\n */\n __publicField(this, \"getFirstEnabledColumnIndex\", (row) => {\n for (let col = 0; col < this.columnCount; col++) {\n const cell = this.getCell(row, col);\n if (cell && !this.getItemDisabled(cell)) {\n return col;\n }\n }\n return null;\n });\n /**\n * Returns the value of the previous row in the grid, based on the current value\n */\n __publicField(this, \"getPreviousRowValue\", (value, loop = false) => {\n const currentCell = this.getValueCell(value);\n if (currentCell === null) return null;\n const rows = this.getRows();\n const rowCount = this.getRowCount();\n let prevRowIndex = currentCell.row;\n let prevColumnIndex = currentCell.column;\n for (let i = 1; i <= rowCount; i++) {\n prevRowIndex = prevIndex(rows, prevRowIndex, { loop });\n const prevRow = rows[prevRowIndex];\n if (!prevRow) continue;\n const prevCell = prevRow[prevColumnIndex];\n if (!prevCell) {\n const lastColumnIndex = this.getLastEnabledColumnIndex(prevRowIndex);\n if (lastColumnIndex != null) {\n prevColumnIndex = lastColumnIndex;\n }\n }\n const cell = this.getCell(prevRowIndex, prevColumnIndex);\n if (!this.getItemDisabled(cell)) {\n return this.getItemValue(cell);\n }\n }\n return this.firstValue;\n });\n /**\n * Returns the value of the next row in the grid, based on the current value\n */\n __publicField(this, \"getNextRowValue\", (value, loop = false) => {\n const currentCell = this.getValueCell(value);\n if (currentCell === null) return null;\n const rows = this.getRows();\n const rowCount = this.getRowCount();\n let nextRowIndex = currentCell.row;\n let nextColumnIndex = currentCell.column;\n for (let i = 1; i <= rowCount; i++) {\n nextRowIndex = nextIndex(rows, nextRowIndex, { loop });\n const nextRow = rows[nextRowIndex];\n if (!nextRow) continue;\n const nextCell = nextRow[nextColumnIndex];\n if (!nextCell) {\n const lastColumnIndex = this.getLastEnabledColumnIndex(nextRowIndex);\n if (lastColumnIndex != null) {\n nextColumnIndex = lastColumnIndex;\n }\n }\n const cell = this.getCell(nextRowIndex, nextColumnIndex);\n if (!this.getItemDisabled(cell)) {\n return this.getItemValue(cell);\n }\n }\n return this.lastValue;\n });\n this.columnCount = columnCount;\n }\n};\nfunction isGridCollection(v) {\n return v instanceof GridCollection;\n}\nvar Selection = class _Selection extends Set {\n constructor(values = []) {\n super(values);\n __publicField(this, \"selectionMode\", \"single\");\n __publicField(this, \"deselectable\", true);\n __publicField(this, \"copy\", () => {\n const clone = new _Selection([...this]);\n return this.sync(clone);\n });\n __publicField(this, \"sync\", (other) => {\n other.selectionMode = this.selectionMode;\n other.deselectable = this.deselectable;\n return other;\n });\n __publicField(this, \"isEmpty\", () => {\n return this.size === 0;\n });\n __publicField(this, \"isSelected\", (value) => {\n if (this.selectionMode === \"none\" || value == null) {\n return false;\n }\n return this.has(value);\n });\n __publicField(this, \"canSelect\", (collection, value) => {\n return this.selectionMode !== \"none\" || !collection.getItemDisabled(collection.find(value));\n });\n __publicField(this, \"firstSelectedValue\", (collection) => {\n let firstValue = null;\n for (let value of this) {\n if (!firstValue || collection.compareValue(value, firstValue) < 0) {\n firstValue = value;\n }\n }\n return firstValue;\n });\n __publicField(this, \"lastSelectedValue\", (collection) => {\n let lastValue = null;\n for (let value of this) {\n if (!lastValue || collection.compareValue(value, lastValue) > 0) {\n lastValue = value;\n }\n }\n return lastValue;\n });\n __publicField(this, \"extendSelection\", (collection, anchorValue, targetValue) => {\n if (this.selectionMode === \"none\") {\n return this;\n }\n if (this.selectionMode === \"single\") {\n return this.replaceSelection(collection, targetValue);\n }\n const selection = this.copy();\n const lastSelected = Array.from(this).pop();\n for (let key of collection.getValueRange(anchorValue, lastSelected ?? targetValue)) {\n selection.delete(key);\n }\n for (let key of collection.getValueRange(targetValue, anchorValue)) {\n if (this.canSelect(collection, key)) {\n selection.add(key);\n }\n }\n return selection;\n });\n __publicField(this, \"toggleSelection\", (collection, value) => {\n if (this.selectionMode === \"none\") {\n return this;\n }\n if (this.selectionMode === \"single\" && !this.isSelected(value)) {\n return this.replaceSelection(collection, value);\n }\n const selection = this.copy();\n if (selection.has(value)) {\n selection.delete(value);\n } else if (selection.canSelect(collection, value)) {\n selection.add(value);\n }\n return selection;\n });\n __publicField(this, \"replaceSelection\", (collection, value) => {\n if (this.selectionMode === \"none\") {\n return this;\n }\n if (value == null) {\n return this;\n }\n if (!this.canSelect(collection, value)) {\n return this;\n }\n const selection = new _Selection([value]);\n return this.sync(selection);\n });\n __publicField(this, \"setSelection\", (values) => {\n if (this.selectionMode === \"none\") {\n return this;\n }\n let selection = new _Selection();\n for (let value of values) {\n if (value != null) {\n selection.add(value);\n if (this.selectionMode === \"single\") {\n break;\n }\n }\n }\n return this.sync(selection);\n });\n __publicField(this, \"clearSelection\", () => {\n const selection = this.copy();\n if (selection.deselectable && selection.size > 0) {\n selection.clear();\n }\n return selection;\n });\n __publicField(this, \"select\", (collection, value, forceToggle) => {\n if (this.selectionMode === \"none\") {\n return this;\n }\n if (this.selectionMode === \"single\") {\n if (this.isSelected(value) && this.deselectable) {\n return this.toggleSelection(collection, value);\n } else {\n return this.replaceSelection(collection, value);\n }\n } else if (this.selectionMode === \"multiple\" || forceToggle) {\n return this.toggleSelection(collection, value);\n } else {\n return this.replaceSelection(collection, value);\n }\n });\n __publicField(this, \"deselect\", (value) => {\n const selection = this.copy();\n selection.delete(value);\n return selection;\n });\n __publicField(this, \"isEqual\", (other) => {\n return isEqual(Array.from(this), Array.from(other));\n });\n }\n};\n\n// src/tree-visit.ts\nfunction access(node, indexPath, options) {\n for (let i = 0; i < indexPath.length; i++) node = options.getChildren(node, indexPath.slice(i + 1))[indexPath[i]];\n return node;\n}\nfunction ancestorIndexPaths(indexPaths) {\n const sortedPaths = sortIndexPaths(indexPaths);\n const result = [];\n const seen = /* @__PURE__ */ new Set();\n for (const indexPath of sortedPaths) {\n const key = indexPath.join();\n if (!seen.has(key)) {\n seen.add(key);\n result.push(indexPath);\n }\n }\n return result;\n}\nfunction compareIndexPaths(a, b) {\n for (let i = 0; i < Math.min(a.length, b.length); i++) {\n if (a[i] < b[i]) return -1;\n if (a[i] > b[i]) return 1;\n }\n return a.length - b.length;\n}\nfunction sortIndexPaths(indexPaths) {\n return indexPaths.sort(compareIndexPaths);\n}\nfunction find(node, options) {\n let found;\n visit(node, {\n ...options,\n onEnter: (child, indexPath) => {\n if (options.predicate(child, indexPath)) {\n found = child;\n return \"stop\";\n }\n }\n });\n return found;\n}\nfunction findAll(node, options) {\n const found = [];\n visit(node, {\n onEnter: (child, indexPath) => {\n if (options.predicate(child, indexPath)) found.push(child);\n },\n getChildren: options.getChildren\n });\n return found;\n}\nfunction findIndexPath(node, options) {\n let found;\n visit(node, {\n onEnter: (child, indexPath) => {\n if (options.predicate(child, indexPath)) {\n found = [...indexPath];\n return \"stop\";\n }\n },\n getChildren: options.getChildren\n });\n return found;\n}\nfunction reduce(node, options) {\n let result = options.initialResult;\n visit(node, {\n ...options,\n onEnter: (child, indexPath) => {\n result = options.nextResult(result, child, indexPath);\n }\n });\n return result;\n}\nfunction flatMap(node, options) {\n return reduce(node, {\n ...options,\n initialResult: [],\n nextResult: (result, child, indexPath) => {\n result.push(...options.transform(child, indexPath));\n return result;\n }\n });\n}\nfunction filter(node, options) {\n const { predicate, create, getChildren } = options;\n const filterRecursive = (node2, indexPath) => {\n const children = getChildren(node2, indexPath);\n const filteredChildren = [];\n children.forEach((child, index) => {\n const childIndexPath = [...indexPath, index];\n const filteredChild = filterRecursive(child, childIndexPath);\n if (filteredChild) filteredChildren.push(filteredChild);\n });\n const isRoot = indexPath.length === 0;\n const nodeMatches = predicate(node2, indexPath);\n const hasFilteredChildren = filteredChildren.length > 0;\n if (isRoot || nodeMatches || hasFilteredChildren) {\n return create(node2, filteredChildren, indexPath);\n }\n return null;\n };\n return filterRecursive(node, []) || create(node, [], []);\n}\nfunction flatten(rootNode, options) {\n const nodes = [];\n let idx = 0;\n const idxMap = /* @__PURE__ */ new Map();\n const parentMap = /* @__PURE__ */ new Map();\n visit(rootNode, {\n getChildren: options.getChildren,\n onEnter: (node, indexPath) => {\n if (!idxMap.has(node)) {\n idxMap.set(node, idx++);\n }\n const children = options.getChildren(node, indexPath);\n children.forEach((child) => {\n if (!parentMap.has(child)) {\n parentMap.set(child, node);\n }\n if (!idxMap.has(child)) {\n idxMap.set(child, idx++);\n }\n });\n const _children = children.length > 0 ? children.map((child) => idxMap.get(child)) : void 0;\n const parent = parentMap.get(node);\n const _parent = parent ? idxMap.get(parent) : void 0;\n const _index = idxMap.get(node);\n nodes.push({ ...node, _children, _parent, _index });\n }\n });\n return nodes;\n}\nfunction insertOperation(index, nodes) {\n return { type: \"insert\", index, nodes };\n}\nfunction removeOperation(indexes) {\n return { type: \"remove\", indexes };\n}\nfunction replaceOperation() {\n return { type: \"replace\" };\n}\nfunction splitIndexPath(indexPath) {\n return [indexPath.slice(0, -1), indexPath[indexPath.length - 1]];\n}\nfunction getInsertionOperations(indexPath, nodes, operations = /* @__PURE__ */ new Map()) {\n const [parentIndexPath, index] = splitIndexPath(indexPath);\n for (let i = parentIndexPath.length - 1; i >= 0; i--) {\n const parentKey = parentIndexPath.slice(0, i).join();\n switch (operations.get(parentKey)?.type) {\n case \"remove\":\n continue;\n }\n operations.set(parentKey, replaceOperation());\n }\n const operation = operations.get(parentIndexPath.join());\n switch (operation?.type) {\n case \"remove\":\n operations.set(parentIndexPath.join(), {\n type: \"removeThenInsert\",\n removeIndexes: operation.indexes,\n insertIndex: index,\n insertNodes: nodes\n });\n break;\n default:\n operations.set(parentIndexPath.join(), insertOperation(index, nodes));\n }\n return operations;\n}\nfunction getRemovalOperations(indexPaths) {\n const operations = /* @__PURE__ */ new Map();\n const indexesToRemove = /* @__PURE__ */ new Map();\n for (const indexPath of indexPaths) {\n const parentKey = indexPath.slice(0, -1).join();\n const value = indexesToRemove.get(parentKey) ?? [];\n value.push(indexPath[indexPath.length - 1]);\n indexesToRemove.set(\n parentKey,\n value.sort((a, b) => a - b)\n );\n }\n for (const indexPath of indexPaths) {\n for (let i = indexPath.length - 2; i >= 0; i--) {\n const parentKey = indexPath.slice(0, i).join();\n if (!operations.has(parentKey)) {\n operations.set(parentKey, replaceOperation());\n }\n }\n }\n for (const [parentKey, indexes] of indexesToRemove) {\n operations.set(parentKey, removeOperation(indexes));\n }\n return operations;\n}\nfunction getReplaceOperations(indexPath, node) {\n const operations = /* @__PURE__ */ new Map();\n const [parentIndexPath, index] = splitIndexPath(indexPath);\n for (let i = parentIndexPath.length - 1; i >= 0; i--) {\n const parentKey = parentIndexPath.slice(0, i).join();\n operations.set(parentKey, replaceOperation());\n }\n operations.set(parentIndexPath.join(), {\n type: \"removeThenInsert\",\n removeIndexes: [index],\n insertIndex: index,\n insertNodes: [node]\n });\n return operations;\n}\nfunction mutate(node, operations, options) {\n return map(node, {\n ...options,\n getChildren: (node2, indexPath) => {\n const key = indexPath.join();\n const operation = operations.get(key);\n switch (operation?.type) {\n case \"replace\":\n case \"remove\":\n case \"removeThenInsert\":\n case \"insert\":\n return options.getChildren(node2, indexPath);\n default:\n return [];\n }\n },\n transform: (node2, children, indexPath) => {\n const key = indexPath.join();\n const operation = operations.get(key);\n switch (operation?.type) {\n case \"remove\":\n return options.create(\n node2,\n children.filter((_, index) => !operation.indexes.includes(index)),\n indexPath\n );\n case \"removeThenInsert\":\n const updatedChildren = children.filter((_, index) => !operation.removeIndexes.includes(index));\n const adjustedIndex = operation.removeIndexes.reduce(\n (index, removedIndex) => removedIndex < index ? index - 1 : index,\n operation.insertIndex\n );\n return options.create(node2, splice(updatedChildren, adjustedIndex, 0, ...operation.insertNodes), indexPath);\n case \"insert\":\n return options.create(node2, splice(children, operation.index, 0, ...operation.nodes), indexPath);\n case \"replace\":\n return options.create(node2, children, indexPath);\n default:\n return node2;\n }\n }\n });\n}\nfunction splice(array, start, deleteCount, ...items) {\n return [...array.slice(0, start), ...items, ...array.slice(start + deleteCount)];\n}\nfunction map(node, options) {\n const childrenMap = {};\n visit(node, {\n ...options,\n onLeave: (child, indexPath) => {\n const keyIndexPath = [0, ...indexPath];\n const key = keyIndexPath.join();\n const transformed = options.transform(child, childrenMap[key] ?? [], indexPath);\n const parentKey = keyIndexPath.slice(0, -1).join();\n const parentChildren = childrenMap[parentKey] ?? [];\n parentChildren.push(transformed);\n childrenMap[parentKey] = parentChildren;\n }\n });\n return childrenMap[\"\"][0];\n}\nfunction insert2(node, options) {\n const { nodes, at } = options;\n if (at.length === 0) throw new Error(`Can't insert nodes at the root`);\n const state = getInsertionOperations(at, nodes);\n return mutate(node, state, options);\n}\nfunction replace(node, options) {\n if (options.at.length === 0) return options.node;\n const operations = getReplaceOperations(options.at, options.node);\n return mutate(node, operations, options);\n}\nfunction remove(node, options) {\n if (options.indexPaths.length === 0) return node;\n for (const indexPath of options.indexPaths) {\n if (indexPath.length === 0) throw new Error(`Can't remove the root node`);\n }\n const operations = getRemovalOperations(options.indexPaths);\n return mutate(node, operations, options);\n}\nfunction move2(node, options) {\n if (options.indexPaths.length === 0) return node;\n for (const indexPath of options.indexPaths) {\n if (indexPath.length === 0) throw new Error(`Can't move the root node`);\n }\n if (options.to.length === 0) throw new Error(`Can't move nodes to the root`);\n const _ancestorIndexPaths = ancestorIndexPaths(options.indexPaths);\n const nodesToInsert = _ancestorIndexPaths.map((indexPath) => access(node, indexPath, options));\n const operations = getInsertionOperations(options.to, nodesToInsert, getRemovalOperations(_ancestorIndexPaths));\n return mutate(node, operations, options);\n}\nfunction visit(node, options) {\n const { onEnter, onLeave, getChildren } = options;\n let indexPath = [];\n let stack = [{ node }];\n const getIndexPath = options.reuseIndexPath ? () => indexPath : () => indexPath.slice();\n while (stack.length > 0) {\n let wrapper = stack[stack.length - 1];\n if (wrapper.state === void 0) {\n const enterResult = onEnter?.(wrapper.node, getIndexPath());\n if (enterResult === \"stop\") return;\n wrapper.state = enterResult === \"skip\" ? -1 : 0;\n }\n const children = wrapper.children || getChildren(wrapper.node, getIndexPath());\n wrapper.children || (wrapper.children = children);\n if (wrapper.state !== -1) {\n if (wrapper.state < children.length) {\n let currentIndex = wrapper.state;\n indexPath.push(currentIndex);\n stack.push({ node: children[currentIndex] });\n wrapper.state = currentIndex + 1;\n continue;\n }\n const leaveResult = onLeave?.(wrapper.node, getIndexPath());\n if (leaveResult === \"stop\") return;\n }\n indexPath.pop();\n stack.pop();\n }\n}\n\n// src/tree-collection.ts\nvar TreeCollection = class _TreeCollection {\n constructor(options) {\n this.options = options;\n __publicField(this, \"rootNode\");\n __publicField(this, \"isEqual\", (other) => {\n return isEqual(this.rootNode, other.rootNode);\n });\n __publicField(this, \"getNodeChildren\", (node) => {\n return this.options.nodeToChildren?.(node) ?? fallbackMethods.nodeToChildren(node) ?? [];\n });\n __publicField(this, \"resolveIndexPath\", (valueOrIndexPath) => {\n return typeof valueOrIndexPath === \"string\" ? this.getIndexPath(valueOrIndexPath) : valueOrIndexPath;\n });\n __publicField(this, \"resolveNode\", (valueOrIndexPath) => {\n const indexPath = this.resolveIndexPath(valueOrIndexPath);\n return indexPath ? this.at(indexPath) : void 0;\n });\n __publicField(this, \"getNodeChildrenCount\", (node) => {\n return this.options.nodeToChildrenCount?.(node) ?? fallbackMethods.nodeToChildrenCount(node);\n });\n __publicField(this, \"getNodeValue\", (node) => {\n return this.options.nodeToValue?.(node) ?? fallbackMethods.nodeToValue(node);\n });\n __publicField(this, \"getNodeDisabled\", (node) => {\n return this.options.isNodeDisabled?.(node) ?? fallbackMethods.isNodeDisabled(node);\n });\n __publicField(this, \"stringify\", (value) => {\n const node = this.findNode(value);\n if (!node) return null;\n return this.stringifyNode(node);\n });\n __publicField(this, \"stringifyNode\", (node) => {\n return this.options.nodeToString?.(node) ?? fallbackMethods.nodeToString(node);\n });\n __publicField(this, \"getFirstNode\", (rootNode = this.rootNode) => {\n let firstChild;\n visit(rootNode, {\n getChildren: this.getNodeChildren,\n onEnter: (node, indexPath) => {\n if (!firstChild && indexPath.length > 0 && !this.getNodeDisabled(node)) {\n firstChild = node;\n return \"stop\";\n }\n }\n });\n return firstChild;\n });\n __publicField(this, \"getLastNode\", (rootNode = this.rootNode, opts = {}) => {\n let lastChild;\n visit(rootNode, {\n getChildren: this.getNodeChildren,\n onEnter: (node, indexPath) => {\n if (this.isSameNode(node, rootNode)) return;\n if (opts.skip?.({ value: this.getNodeValue(node), node, indexPath })) return \"skip\";\n if (indexPath.length > 0 && !this.getNodeDisabled(node)) {\n lastChild = node;\n }\n }\n });\n return lastChild;\n });\n __publicField(this, \"at\", (indexPath) => {\n return access(this.rootNode, indexPath, {\n getChildren: this.getNodeChildren\n });\n });\n __publicField(this, \"findNode\", (value, rootNode = this.rootNode) => {\n return find(rootNode, {\n getChildren: this.getNodeChildren,\n predicate: (node) => this.getNodeValue(node) === value\n });\n });\n __publicField(this, \"findNodes\", (values, rootNode = this.rootNode) => {\n const v = new Set(values.filter((v2) => v2 != null));\n return findAll(rootNode, {\n getChildren: this.getNodeChildren,\n predicate: (node) => v.has(this.getNodeValue(node))\n });\n });\n __publicField(this, \"sort\", (values) => {\n return values.reduce((acc, value) => {\n const indexPath = this.getIndexPath(value);\n if (indexPath) acc.push({ value, indexPath });\n return acc;\n }, []).sort((a, b) => compareIndexPaths(a.indexPath, b.indexPath)).map(({ value }) => value);\n });\n __publicField(this, \"getIndexPath\", (value) => {\n return findIndexPath(this.rootNode, {\n getChildren: this.getNodeChildren,\n predicate: (node) => this.getNodeValue(node) === value\n });\n });\n __publicField(this, \"getValue\", (indexPath) => {\n const node = this.at(indexPath);\n return node ? this.getNodeValue(node) : void 0;\n });\n __publicField(this, \"getValuePath\", (indexPath) => {\n if (!indexPath) return [];\n const valuePath = [];\n let currentPath = [...indexPath];\n while (currentPath.length > 0) {\n const node = this.at(currentPath);\n if (node) valuePath.unshift(this.getNodeValue(node));\n currentPath.pop();\n }\n return valuePath;\n });\n __publicField(this, \"getDepth\", (value) => {\n const indexPath = findIndexPath(this.rootNode, {\n getChildren: this.getNodeChildren,\n predicate: (node) => this.getNodeValue(node) === value\n });\n return indexPath?.length ?? 0;\n });\n __publicField(this, \"isSameNode\", (node, other) => {\n return this.getNodeValue(node) === this.getNodeValue(other);\n });\n __publicField(this, \"isRootNode\", (node) => {\n return this.isSameNode(node, this.rootNode);\n });\n __publicField(this, \"contains\", (parentIndexPath, valueIndexPath) => {\n if (!parentIndexPath || !valueIndexPath) return false;\n return valueIndexPath.slice(0, parentIndexPath.length).every((_, i) => parentIndexPath[i] === valueIndexPath[i]);\n });\n __publicField(this, \"getNextNode\", (value, opts = {}) => {\n let found = false;\n let nextNode;\n visit(this.rootNode, {\n getChildren: this.getNodeChildren,\n onEnter: (node, indexPath) => {\n if (this.isRootNode(node)) return;\n const nodeValue = this.getNodeValue(node);\n if (opts.skip?.({ value: nodeValue, node, indexPath })) {\n if (nodeValue === value) {\n found = true;\n }\n return \"skip\";\n }\n if (found && !this.getNodeDisabled(node)) {\n nextNode = node;\n return \"stop\";\n }\n if (nodeValue === value) {\n found = true;\n }\n }\n });\n return nextNode;\n });\n __publicField(this, \"getPreviousNode\", (value, opts = {}) => {\n let previousNode;\n let found = false;\n visit(this.rootNode, {\n getChildren: this.getNodeChildren,\n onEnter: (node, indexPath) => {\n if (this.isRootNode(node)) return;\n const nodeValue = this.getNodeValue(node);\n if (opts.skip?.({ value: nodeValue, node, indexPath })) {\n return \"skip\";\n }\n if (nodeValue === value) {\n found = true;\n return \"stop\";\n }\n if (!this.getNodeDisabled(node)) {\n previousNode = node;\n }\n }\n });\n return found ? previousNode : void 0;\n });\n __publicField(this, \"getParentNodes\", (valueOrIndexPath) => {\n const indexPath = this.resolveIndexPath(valueOrIndexPath)?.slice();\n if (!indexPath) return [];\n const result = [];\n while (indexPath.length > 0) {\n indexPath.pop();\n const parentNode = this.at(indexPath);\n if (parentNode && !this.isRootNode(parentNode)) {\n result.unshift(parentNode);\n }\n }\n return result;\n });\n __publicField(this, \"getDescendantNodes\", (valueOrIndexPath, options) => {\n const parentNode = this.resolveNode(valueOrIndexPath);\n if (!parentNode) return [];\n const result = [];\n visit(parentNode, {\n getChildren: this.getNodeChildren,\n onEnter: (node, nodeIndexPath) => {\n if (nodeIndexPath.length === 0) return;\n if (!options?.withBranch && this.isBranchNode(node)) return;\n result.push(node);\n }\n });\n return result;\n });\n __publicField(this, \"getDescendantValues\", (valueOrIndexPath, options) => {\n const children = this.getDescendantNodes(valueOrIndexPath, options);\n return children.map((child) => this.getNodeValue(child));\n });\n __publicField(this, \"getParentIndexPath\", (indexPath) => {\n return indexPath.slice(0, -1);\n });\n __publicField(this, \"getParentNode\", (valueOrIndexPath) => {\n const indexPath = this.resolveIndexPath(valueOrIndexPath);\n return indexPath ? this.at(this.getParentIndexPath(indexPath)) : void 0;\n });\n __publicField(this, \"visit\", (opts) => {\n const { skip, ...rest } = opts;\n visit(this.rootNode, {\n ...rest,\n getChildren: this.getNodeChildren,\n onEnter: (node, indexPath) => {\n if (this.isRootNode(node)) return;\n if (skip?.({ value: this.getNodeValue(node), node, indexPath })) return \"skip\";\n return rest.onEnter?.(node, indexPath);\n }\n });\n });\n __publicField(this, \"getPreviousSibling\", (indexPath) => {\n const parentNode = this.getParentNode(indexPath);\n if (!parentNode) return;\n const siblings = this.getNodeChildren(parentNode);\n let idx = indexPath[indexPath.length - 1];\n while (--idx >= 0) {\n const sibling = siblings[idx];\n if (!this.getNodeDisabled(sibling)) return sibling;\n }\n return;\n });\n __publicField(this, \"getNextSibling\", (indexPath) => {\n const parentNode = this.getParentNode(indexPath);\n if (!parentNode) return;\n const siblings = this.getNodeChildren(parentNode);\n let idx = indexPath[indexPath.length - 1];\n while (++idx < siblings.length) {\n const sibling = siblings[idx];\n if (!this.getNodeDisabled(sibling)) return sibling;\n }\n return;\n });\n __publicField(this, \"getSiblingNodes\", (indexPath) => {\n const parentNode = this.getParentNode(indexPath);\n return parentNode ? this.getNodeChildren(parentNode) : [];\n });\n __publicField(this, \"getValues\", (rootNode = this.rootNode) => {\n const values = flatMap(rootNode, {\n getChildren: this.getNodeChildren,\n transform: (node) => [this.getNodeValue(node)]\n });\n return values.slice(1);\n });\n __publicField(this, \"isValidDepth\", (indexPath, depth) => {\n if (depth == null) return true;\n if (typeof depth === \"function\") return depth(indexPath.length);\n return indexPath.length === depth;\n });\n __publicField(this, \"isBranchNode\", (node) => {\n return this.getNodeChildren(node).length > 0 || this.getNodeChildrenCount(node) != null;\n });\n __publicField(this, \"getBranchValues\", (rootNode = this.rootNode, opts = {}) => {\n let values = [];\n visit(rootNode, {\n getChildren: this.getNodeChildren,\n onEnter: (node, indexPath) => {\n if (indexPath.length === 0) return;\n const nodeValue = this.getNodeValue(node);\n if (opts.skip?.({ value: nodeValue, node, indexPath })) return \"skip\";\n if (this.isBranchNode(node) && this.isValidDepth(indexPath, opts.depth)) {\n values.push(this.getNodeValue(node));\n }\n }\n });\n return values;\n });\n __publicField(this, \"flatten\", (rootNode = this.rootNode) => {\n return flatten(rootNode, { getChildren: this.getNodeChildren });\n });\n __publicField(this, \"_create\", (node, children) => {\n if (this.getNodeChildren(node).length > 0 || children.length > 0) {\n return { ...node, children };\n }\n return { ...node };\n });\n __publicField(this, \"_insert\", (rootNode, indexPath, nodes) => {\n return this.copy(\n insert2(rootNode, { at: indexPath, nodes, getChildren: this.getNodeChildren, create: this._create })\n );\n });\n __publicField(this, \"copy\", (rootNode) => {\n return new _TreeCollection({ ...this.options, rootNode });\n });\n __publicField(this, \"_replace\", (rootNode, indexPath, node) => {\n return this.copy(\n replace(rootNode, { at: indexPath, node, getChildren: this.getNodeChildren, create: this._create })\n );\n });\n __publicField(this, \"_move\", (rootNode, indexPaths, to) => {\n return this.copy(move2(rootNode, { indexPaths, to, getChildren: this.getNodeChildren, create: this._create }));\n });\n __publicField(this, \"_remove\", (rootNode, indexPaths) => {\n return this.copy(remove(rootNode, { indexPaths, getChildren: this.getNodeChildren, create: this._create }));\n });\n __publicField(this, \"replace\", (indexPath, node) => {\n return this._replace(this.rootNode, indexPath, node);\n });\n __publicField(this, \"remove\", (indexPaths) => {\n return this._remove(this.rootNode, indexPaths);\n });\n __publicField(this, \"insertBefore\", (indexPath, nodes) => {\n const parentNode = this.getParentNode(indexPath);\n return parentNode ? this._insert(this.rootNode, indexPath, nodes) : void 0;\n });\n __publicField(this, \"insertAfter\", (indexPath, nodes) => {\n const parentNode = this.getParentNode(indexPath);\n if (!parentNode) return;\n const nextIndex2 = [...indexPath.slice(0, -1), indexPath[indexPath.length - 1] + 1];\n return this._insert(this.rootNode, nextIndex2, nodes);\n });\n __publicField(this, \"move\", (fromIndexPaths, toIndexPath) => {\n return this._move(this.rootNode, fromIndexPaths, toIndexPath);\n });\n __publicField(this, \"filter\", (predicate) => {\n const filteredRoot = filter(this.rootNode, {\n predicate,\n getChildren: this.getNodeChildren,\n create: this._create\n });\n return this.copy(filteredRoot);\n });\n __publicField(this, \"toJSON\", () => {\n return this.getValues(this.rootNode);\n });\n this.rootNode = options.rootNode;\n }\n};\nfunction flattenedToTree(nodes, options = fallbackMethods) {\n if (nodes.length === 0) {\n throw new Error(\"[zag-js/tree] Cannot create tree from empty flattened array\");\n }\n const rootFlatNode = nodes.find((node) => node._parent === void 0);\n if (!rootFlatNode) {\n throw new Error(\"[zag-js/tree] No root node found in flattened data\");\n }\n const nodeMap = /* @__PURE__ */ new Map();\n nodes.forEach((node) => {\n nodeMap.set(node._index, node);\n });\n const buildNode = (idx) => {\n const flatNode = nodeMap.get(idx);\n if (!flatNode) return {};\n const { _children, _parent, _index, ...cleanNode } = flatNode;\n const children = [];\n _children?.forEach((childIndex) => {\n children.push(buildNode(childIndex));\n });\n return {\n ...cleanNode,\n ...children.length > 0 && { children }\n };\n };\n const rootNode = buildNode(rootFlatNode._index);\n return new TreeCollection({ ...options, rootNode });\n}\nfunction filePathToTree(paths) {\n const rootNode = {\n label: \"\",\n value: \"ROOT\",\n children: []\n };\n paths.forEach((path) => {\n const parts = path.split(\"/\");\n let currentNode = rootNode;\n parts.forEach((part, index) => {\n let childNode = currentNode.children?.find((child) => child.label === part);\n if (!childNode) {\n childNode = {\n value: parts.slice(0, index + 1).join(\"/\"),\n label: part\n };\n currentNode.children || (currentNode.children = []);\n currentNode.children.push(childNode);\n }\n currentNode = childNode;\n });\n });\n return new TreeCollection({ rootNode });\n}\nvar fallbackMethods = {\n nodeToValue(node) {\n if (typeof node === \"string\") return node;\n if (isObject(node) && hasProp(node, \"value\")) return node.value;\n return \"\";\n },\n nodeToString(node) {\n if (typeof node === \"string\") return node;\n if (isObject(node) && hasProp(node, \"label\")) return node.label;\n return fallbackMethods.nodeToValue(node);\n },\n isNodeDisabled(node) {\n if (isObject(node) && hasProp(node, \"disabled\")) return !!node.disabled;\n return false;\n },\n nodeToChildren(node) {\n return node.children;\n },\n nodeToChildrenCount(node) {\n if (isObject(node) && hasProp(node, \"childrenCount\")) return node.childrenCount;\n }\n};\n\nexport { GridCollection, ListCollection, Selection, TreeCollection, filePathToTree, flattenedToTree, isGridCollection, isListCollection };\n","import { createAnatomy } from '@zag-js/anatomy';\nimport { ListCollection } from '@zag-js/collection';\nimport { raf, getInitialFocus, observeAttributes, trackFormControl, getByTypeahead, scrollIntoView, isSelfTarget, isValidTabEvent, getEventKey, getEventTarget, isEditableElement, visuallyHiddenStyle, dataAttr, ariaAttr } from '@zag-js/dom-query';\nimport { getPlacement, getPlacementStyles } from '@zag-js/popper';\nimport { addOrRemove, isEqual, createSplitProps, ensure } from '@zag-js/utils';\nimport { createGuards, createMachine } from '@zag-js/core';\nimport { trackDismissableElement } from '@zag-js/dismissable';\nimport { createProps } from '@zag-js/types';\n\n// src/select.anatomy.ts\nvar anatomy = createAnatomy(\"select\").parts(\n \"label\",\n \"positioner\",\n \"trigger\",\n \"indicator\",\n \"clearTrigger\",\n \"item\",\n \"itemText\",\n \"itemIndicator\",\n \"itemGroup\",\n \"itemGroupLabel\",\n \"list\",\n \"content\",\n \"root\",\n \"control\",\n \"valueText\"\n);\nvar parts = anatomy.build();\nvar collection = (options) => {\n return new ListCollection(options);\n};\ncollection.empty = () => {\n return new ListCollection({ items: [] });\n};\n\n// src/select.dom.ts\nvar getRootId = (ctx) => ctx.ids?.root ?? `select:${ctx.id}`;\nvar getContentId = (ctx) => ctx.ids?.content ?? `select:${ctx.id}:content`;\nvar getTriggerId = (ctx) => ctx.ids?.trigger ?? `select:${ctx.id}:trigger`;\nvar getClearTriggerId = (ctx) => ctx.ids?.clearTrigger ?? `select:${ctx.id}:clear-trigger`;\nvar getLabelId = (ctx) => ctx.ids?.label ?? `select:${ctx.id}:label`;\nvar getControlId = (ctx) => ctx.ids?.control ?? `select:${ctx.id}:control`;\nvar getItemId = (ctx, id) => ctx.ids?.item?.(id) ?? `select:${ctx.id}:option:${id}`;\nvar getHiddenSelectId = (ctx) => ctx.ids?.hiddenSelect ?? `select:${ctx.id}:select`;\nvar getPositionerId = (ctx) => ctx.ids?.positioner ?? `select:${ctx.id}:positioner`;\nvar getItemGroupId = (ctx, id) => ctx.ids?.itemGroup?.(id) ?? `select:${ctx.id}:optgroup:${id}`;\nvar getItemGroupLabelId = (ctx, id) => ctx.ids?.itemGroupLabel?.(id) ?? `select:${ctx.id}:optgroup-label:${id}`;\nvar getHiddenSelectEl = (ctx) => ctx.getById(getHiddenSelectId(ctx));\nvar getContentEl = (ctx) => ctx.getById(getContentId(ctx));\nvar getTriggerEl = (ctx) => ctx.getById(getTriggerId(ctx));\nvar getClearTriggerEl = (ctx) => ctx.getById(getClearTriggerId(ctx));\nvar getPositionerEl = (ctx) => ctx.getById(getPositionerId(ctx));\nvar getItemEl = (ctx, id) => ctx.getById(getItemId(ctx, id));\n\n// src/select.connect.ts\nfunction connect(service, normalize) {\n const { context, prop, scope, state, computed, send } = service;\n const disabled = prop(\"disabled\") || context.get(\"fieldsetDisabled\");\n const invalid = prop(\"invalid\");\n const readOnly = prop(\"readOnly\");\n const composite = prop(\"composite\");\n const collection2 = prop(\"collection\");\n const open = state.hasTag(\"open\");\n const focused = state.matches(\"focused\");\n const highlightedValue = context.get(\"highlightedValue\");\n const highlightedItem = context.get(\"highlightedItem\");\n const selectedItems = context.get(\"selectedItems\");\n const currentPlacement = context.get(\"currentPlacement\");\n const isTypingAhead = computed(\"isTypingAhead\");\n const interactive = computed(\"isInteractive\");\n const ariaActiveDescendant = highlightedValue ? getItemId(scope, highlightedValue) : void 0;\n function getItemState(props2) {\n const _disabled = collection2.getItemDisabled(props2.item);\n const value = collection2.getItemValue(props2.item);\n ensure(value, () => `[zag-js] No value found for item ${JSON.stringify(props2.item)}`);\n return {\n value,\n disabled: Boolean(disabled || _disabled),\n highlighted: highlightedValue === value,\n selected: context.get(\"value\").includes(value)\n };\n }\n const popperStyles = getPlacementStyles({\n ...prop(\"positioning\"),\n placement: currentPlacement\n });\n return {\n open,\n focused,\n empty: context.get(\"value\").length === 0,\n highlightedItem,\n highlightedValue,\n selectedItems,\n hasSelectedItems: computed(\"hasSelectedItems\"),\n value: context.get(\"value\"),\n valueAsString: computed(\"valueAsString\"),\n collection: collection2,\n multiple: !!prop(\"multiple\"),\n disabled: !!disabled,\n reposition(options = {}) {\n send({ type: \"POSITIONING.SET\", options });\n },\n focus() {\n getTriggerEl(scope)?.focus({ preventScroll: true });\n },\n setOpen(nextOpen) {\n const open2 = state.hasTag(\"open\");\n if (open2 === nextOpen) return;\n send({ type: nextOpen ? \"OPEN\" : \"CLOSE\" });\n },\n selectValue(value) {\n send({ type: \"ITEM.SELECT\", value });\n },\n setValue(value) {\n send({ type: \"VALUE.SET\", value });\n },\n selectAll() {\n send({ type: \"VALUE.SET\", value: collection2.getValues() });\n },\n setHighlightValue(value) {\n send({ type: \"HIGHLIGHTED_VALUE.SET\", value });\n },\n clearHighlightValue() {\n send({ type: \"HIGHLIGHTED_VALUE.CLEAR\" });\n },\n clearValue(value) {\n if (value) {\n send({ type: \"ITEM.CLEAR\", value });\n } else {\n send({ type: \"VALUE.CLEAR\" });\n }\n },\n getItemState,\n getRootProps() {\n return normalize.element({\n ...parts.root.attrs,\n dir: prop(\"dir\"),\n id: getRootId(scope),\n \"data-invalid\": dataAttr(invalid),\n \"data-readonly\": dataAttr(readOnly)\n });\n },\n getLabelProps() {\n return normalize.label({\n dir: prop(\"dir\"),\n id: getLabelId(scope),\n ...parts.label.attrs,\n \"data-disabled\": dataAttr(disabled),\n \"data-invalid\": dataAttr(invalid),\n \"data-readonly\": dataAttr(readOnly),\n htmlFor: getHiddenSelectId(scope),\n onClick(event) {\n if (event.defaultPrevented) return;\n if (disabled) return;\n getTriggerEl(scope)?.focus({ preventScroll: true });\n }\n });\n },\n getControlProps() {\n return normalize.element({\n ...parts.control.attrs,\n dir: prop(\"dir\"),\n id: getControlId(scope),\n \"data-state\": open ? \"open\" : \"closed\",\n \"data-focus\": dataAttr(focused),\n \"data-disabled\": dataAttr(disabled),\n \"data-invalid\": dataAttr(invalid)\n });\n },\n getValueTextProps() {\n return normalize.element({\n ...parts.valueText.attrs,\n dir: prop(\"dir\"),\n \"data-disabled\": dataAttr(disabled),\n \"data-invalid\": dataAttr(invalid),\n \"data-focus\": dataAttr(focused)\n });\n },\n getTriggerProps() {\n return normalize.button({\n id: getTriggerId(scope),\n disabled,\n dir: prop(\"dir\"),\n type: \"button\",\n role: \"combobox\",\n \"aria-controls\": getContentId(scope),\n \"aria-expanded\": open,\n \"aria-haspopup\": \"listbox\",\n \"data-state\": open ? \"open\" : \"closed\",\n \"aria-invalid\": invalid,\n \"aria-labelledby\": getLabelId(scope),\n ...parts.trigger.attrs,\n \"data-disabled\": dataAttr(disabled),\n \"data-invalid\": dataAttr(invalid),\n \"data-readonly\": dataAttr(readOnly),\n \"data-placement\": currentPlacement,\n \"data-placeholder-shown\": dataAttr(!computed(\"hasSelectedItems\")),\n onClick(event) {\n if (!interactive) return;\n if (event.defaultPrevented) return;\n send({ type: \"TRIGGER.CLICK\" });\n },\n onFocus() {\n send({ type: \"TRIGGER.FOCUS\" });\n },\n onBlur() {\n send({ type: \"TRIGGER.BLUR\" });\n },\n onKeyDown(event) {\n if (event.defaultPrevented) return;\n if (!interactive) return;\n const keyMap = {\n ArrowUp() {\n send({ type: \"TRIGGER.ARROW_UP\" });\n },\n ArrowDown(event2) {\n send({ type: event2.altKey ? \"OPEN\" : \"TRIGGER.ARROW_DOWN\" });\n },\n ArrowLeft() {\n send({ type: \"TRIGGER.ARROW_LEFT\" });\n },\n ArrowRight() {\n send({ type: \"TRIGGER.ARROW_RIGHT\" });\n },\n Home() {\n send({ type: \"TRIGGER.HOME\" });\n },\n End() {\n send({ type: \"TRIGGER.END\" });\n },\n Enter() {\n send({ type: \"TRIGGER.ENTER\" });\n },\n Space(event2) {\n if (isTypingAhead) {\n send({ type: \"TRIGGER.TYPEAHEAD\", key: event2.key });\n } else {\n send({ type: \"TRIGGER.ENTER\" });\n }\n }\n };\n const exec = keyMap[getEventKey(event, {\n dir: prop(\"dir\"),\n orientation: \"vertical\"\n })];\n if (exec) {\n exec(event);\n event.preventDefault();\n return;\n }\n if (getByTypeahead.isValidEvent(event)) {\n send({ type: \"TRIGGER.TYPEAHEAD\", key: event.key });\n event.preventDefault();\n }\n }\n });\n },\n getIndicatorProps() {\n return normalize.element({\n ...parts.indicator.attrs,\n dir: prop(\"dir\"),\n \"aria-hidden\": true,\n \"data-state\": open ? \"open\" : \"closed\",\n \"data-disabled\": dataAttr(disabled),\n \"data-invalid\": dataAttr(invalid),\n \"data-readonly\": dataAttr(readOnly)\n });\n },\n getItemProps(props2) {\n const itemState = getItemState(props2);\n return normalize.element({\n id: getItemId(scope, itemState.value),\n role: \"option\",\n ...parts.item.attrs,\n dir: prop(\"dir\"),\n \"data-value\": itemState.value,\n \"aria-selected\": itemState.selected,\n \"data-state\": itemState.selected ? \"checked\" : \"unchecked\",\n \"data-highlighted\": dataAttr(itemState.highlighted),\n \"data-disabled\": dataAttr(itemState.disabled),\n \"aria-disabled\": ariaAttr(itemState.disabled),\n onPointerMove(event) {\n if (itemState.disabled || event.pointerType !== \"mouse\") return;\n if (itemState.value === highlightedValue) return;\n send({ type: \"ITEM.POINTER_MOVE\", value: itemState.value });\n },\n onClick(event) {\n if (event.defaultPrevented) return;\n if (itemState.disabled) return;\n send({ type: \"ITEM.CLICK\", src: \"pointerup\", value: itemState.value });\n },\n onPointerLeave(event) {\n if (itemState.disabled) return;\n if (props2.persistFocus) return;\n if (event.pointerType !== \"mouse\") return;\n const pointerMoved = service.event.previous()?.type.includes(\"POINTER\");\n if (!pointerMoved) return;\n send({ type: \"ITEM.POINTER_LEAVE\" });\n }\n });\n },\n getItemTextProps(props2) {\n const itemState = getItemState(props2);\n return normalize.element({\n ...parts.itemText.attrs,\n \"data-state\": itemState.selected ? \"checked\" : \"unchecked\",\n \"data-disabled\": dataAttr(itemState.disabled),\n \"data-highlighted\": dataAttr(itemState.highlighted)\n });\n },\n getItemIndicatorProps(props2) {\n const itemState = getItemState(props2);\n return normalize.element({\n \"aria-hidden\": true,\n ...parts.itemIndicator.attrs,\n \"data-state\": itemState.selected ? \"checked\" : \"unchecked\",\n hidden: !itemState.selected\n });\n },\n getItemGroupLabelProps(props2) {\n const { htmlFor } = props2;\n return normalize.element({\n ...parts.itemGroupLabel.attrs,\n id: getItemGroupLabelId(scope, htmlFor),\n dir: prop(\"dir\"),\n role: \"presentation\"\n });\n },\n getItemGroupProps(props2) {\n const { id } = props2;\n return normalize.element({\n ...parts.itemGroup.attrs,\n \"data-disabled\": dataAttr(disabled),\n id: getItemGroupId(scope, id),\n \"aria-labelledby\": getItemGroupLabelId(scope, id),\n role: \"group\",\n dir: prop(\"dir\")\n });\n },\n getClearTriggerProps() {\n return normalize.button({\n ...parts.clearTrigger.attrs,\n id: getClearTriggerId(scope),\n type: \"button\",\n \"aria-label\": \"Clear value\",\n \"data-invalid\": dataAttr(invalid),\n disabled,\n hidden: !computed(\"hasSelectedItems\"),\n dir: prop(\"dir\"),\n onClick(event) {\n if (event.defaultPrevented) return;\n send({ type: \"CLEAR.CLICK\" });\n }\n });\n },\n getHiddenSelectProps() {\n const value = context.get(\"value\");\n const defaultValue = prop(\"multiple\") ? value : value?.[0];\n return normalize.select({\n name: prop(\"name\"),\n form: prop(\"form\"),\n disabled,\n multiple: prop(\"multiple\"),\n required: prop(\"required\"),\n \"aria-hidden\": true,\n id: getHiddenSelectId(scope),\n defaultValue,\n style: visuallyHiddenStyle,\n tabIndex: -1,\n // Some browser extensions will focus the hidden select.\n // Let's forward the focus to the trigger.\n onFocus() {\n getTriggerEl(scope)?.focus({ preventScroll: true });\n },\n \"aria-labelledby\": getLabelId(scope)\n });\n },\n getPositionerProps() {\n return normalize.element({\n ...parts.positioner.attrs,\n dir: prop(\"dir\"),\n id: getPositionerId(scope),\n style: popperStyles.floating\n });\n },\n getContentProps() {\n return normalize.element({\n hidden: !open,\n dir: prop(\"dir\"),\n id: getContentId(scope),\n role: composite ? \"listbox\" : \"dialog\",\n ...parts.content.attrs,\n \"data-state\": open ? \"open\" : \"closed\",\n \"data-placement\": currentPlacement,\n \"data-activedescendant\": ariaActiveDescendant,\n \"aria-activedescendant\": composite ? ariaActiveDescendant : void 0,\n \"aria-multiselectable\": prop(\"multiple\") && composite ? true : void 0,\n \"aria-labelledby\": getLabelId(scope),\n tabIndex: 0,\n onKeyDown(event) {\n if (!interactive) return;\n if (!isSelfTarget(event)) return;\n if (event.key === \"Tab\") {\n const valid = isValidTabEvent(event);\n if (!valid) {\n event.preventDefault();\n return;\n }\n }\n const keyMap = {\n ArrowUp() {\n send({ type: \"CONTENT.ARROW_UP\" });\n },\n ArrowDown() {\n send({ type: \"CONTENT.ARROW_DOWN\" });\n },\n Home() {\n send({ type: \"CONTENT.HOME\" });\n },\n End() {\n send({ type: \"CONTENT.END\" });\n },\n Enter() {\n send({ type: \"ITEM.CLICK\", src: \"keydown.enter\" });\n },\n Space(event2) {\n if (isTypingAhead) {\n send({ type: \"CONTENT.TYPEAHEAD\", key: event2.key });\n } else {\n keyMap.Enter?.(event2);\n }\n }\n };\n const exec = keyMap[getEventKey(event)];\n if (exec) {\n exec(event);\n event.preventDefault();\n return;\n }\n const target = getEventTarget(event);\n if (isEditableElement(target)) {\n return;\n }\n if (getByTypeahead.isValidEvent(event)) {\n send({ type: \"CONTENT.TYPEAHEAD\", key: event.key });\n event.preventDefault();\n }\n }\n });\n },\n getListProps() {\n return normalize.element({\n ...parts.list.attrs,\n tabIndex: 0,\n role: !composite ? \"listbox\" : void 0,\n \"aria-labelledby\": getTriggerId(scope),\n \"aria-activedescendant\": !composite ? ariaActiveDescendant : void 0,\n \"aria-multiselectable\": !composite && prop(\"multiple\") ? true : void 0\n });\n }\n };\n}\nvar { and, not, or } = createGuards();\nvar machine = createMachine({\n props({ props: props2 }) {\n return {\n loopFocus: false,\n closeOnSelect: !props2.multiple,\n composite: true,\n defaultValue: [],\n ...props2,\n collection: props2.collection ?? collection.empty(),\n positioning: {\n placement: \"bottom-start\",\n gutter: 8,\n ...props2.positioning\n }\n };\n },\n context({ prop, bindable }) {\n return {\n value: bindable(() => ({\n defaultValue: prop(\"defaultValue\"),\n value: prop(\"value\"),\n isEqual,\n onChange(value) {\n const items = prop(\"collection\").findMany(value);\n return prop(\"onValueChange\")?.({ value, items });\n }\n })),\n highlightedValue: bindable(() => ({\n defaultValue: prop(\"defaultHighlightedValue\") || null,\n value: prop(\"highlightedValue\"),\n onChange(value) {\n prop(\"onHighlightChange\")?.({\n highlightedValue: value,\n highlightedItem: prop(\"collection\").find(value),\n highlightedIndex: prop(\"collection\").indexOf(value)\n });\n }\n })),\n currentPlacement: bindable(() => ({\n defaultValue: void 0\n })),\n fieldsetDisabled: bindable(() => ({\n defaultValue: false\n })),\n highlightedItem: bindable(() => ({\n defaultValue: null\n })),\n selectedItems: bindable(() => {\n const value = prop(\"value\") ?? prop(\"defaultValue\") ?? [];\n const items = prop(\"collection\").findMany(value);\n return { defaultValue: items };\n })\n };\n },\n refs() {\n return {\n typeahead: { ...getByTypeahead.defaultOptions }\n };\n },\n computed: {\n hasSelectedItems: ({ context }) => context.get(\"value\").length > 0,\n isTypingAhead: ({ refs }) => refs.get(\"typeahead\").keysSoFar !== \"\",\n isDisabled: ({ prop, context }) => !!prop(\"disabled\") || !!context.get(\"fieldsetDisabled\"),\n isInteractive: ({ prop }) => !(prop(\"disabled\") || prop(\"readOnly\")),\n valueAsString: ({ context, prop }) => prop(\"collection\").stringifyItems(context.get(\"selectedItems\"))\n },\n initialState({ prop }) {\n const open = prop(\"open\") || prop(\"defaultOpen\");\n return open ? \"open\" : \"idle\";\n },\n entry: [\"syncSelectElement\"],\n watch({ context, prop, track, action }) {\n track([() => context.get(\"value\").toString()], () => {\n action([\"syncSelectedItems\", \"syncSelectElement\", \"dispatchChangeEvent\"]);\n });\n track([() => prop(\"open\")], () => {\n action([\"toggleVisibility\"]);\n });\n track([() => context.get(\"highlightedValue\")], () => {\n action([\"syncHighlightedItem\"]);\n });\n track([() => prop(\"collection\").toString()], () => {\n action([\"syncCollection\"]);\n });\n },\n on: {\n \"HIGHLIGHTED_VALUE.SET\": {\n actions: [\"setHighlightedItem\"]\n },\n \"HIGHLIGHTED_VALUE.CLEAR\": {\n actions: [\"clearHighlightedItem\"]\n },\n \"ITEM.SELECT\": {\n actions: [\"selectItem\"]\n },\n \"ITEM.CLEAR\": {\n actions: [\"clearItem\"]\n },\n \"VALUE.SET\": {\n actions: [\"setSelectedItems\"]\n },\n \"VALUE.CLEAR\": {\n actions: [\"clearSelectedItems\"]\n },\n \"CLEAR.CLICK\": {\n actions: [\"clearSelectedItems\", \"focusTriggerEl\"]\n }\n },\n effects: [\"trackFormControlState\"],\n states: {\n idle: {\n tags: [\"closed\"],\n on: {\n \"CONTROLLED.OPEN\": [\n {\n guard: \"isTriggerClickEvent\",\n target: \"open\",\n actions: [\"setInitialFocus\", \"highlightFirstSelectedItem\"]\n },\n {\n target: \"open\",\n actions: [\"setInitialFocus\"]\n }\n ],\n \"TRIGGER.CLICK\": [\n {\n guard: \"isOpenControlled\",\n actions: [\"invokeOnOpen\"]\n },\n {\n target: \"open\",\n actions: [\"invokeOnOpen\", \"setInitialFocus\", \"highlightFirstSelectedItem\"]\n }\n ],\n \"TRIGGER.FOCUS\": {\n target: \"focused\"\n },\n OPEN: [\n {\n guard: \"isOpenControlled\",\n actions: [\"invokeOnOpen\"]\n },\n {\n target: \"open\",\n actions: [\"setInitialFocus\", \"invokeOnOpen\"]\n }\n ]\n }\n },\n focused: {\n tags: [\"closed\"],\n on: {\n \"CONTROLLED.OPEN\": [\n {\n guard: \"isTriggerClickEvent\",\n target: \"open\",\n actions: [\"setInitialFocus\", \"highlightFirstSelectedItem\"]\n },\n {\n guard: \"isTriggerArrowUpEvent\",\n target: \"open\",\n actions: [\"setInitialFocus\", \"highlightComputedLastItem\"]\n },\n {\n guard: or(\"isTriggerArrowDownEvent\", \"isTriggerEnterEvent\"),\n target: \"open\",\n actions: [\"setInitialFocus\", \"highlightComputedFirstItem\"]\n },\n {\n target: \"open\",\n actions: [\"setInitialFocus\"]\n }\n ],\n OPEN: [\n {\n guard: \"isOpenControlled\",\n actions: [\"invokeOnOpen\"]\n },\n {\n target: \"open\",\n actions: [\"setInitialFocus\", \"invokeOnOpen\"]\n }\n ],\n \"TRIGGER.BLUR\": {\n target: \"idle\"\n },\n \"TRIGGER.CLICK\": [\n {\n guard: \"isOpenControlled\",\n actions: [\"invokeOnOpen\"]\n },\n {\n target: \"open\",\n actions: [\"setInitialFocus\", \"invokeOnOpen\", \"highlightFirstSelectedItem\"]\n }\n ],\n \"TRIGGER.ENTER\": [\n {\n guard: \"isOpenControlled\",\n actions: [\"invokeOnOpen\"]\n },\n {\n target: \"open\",\n actions: [\"setInitialFocus\", \"invokeOnOpen\", \"highlightComputedFirstItem\"]\n }\n ],\n \"TRIGGER.ARROW_UP\": [\n {\n guard: \"isOpenControlled\",\n actions: [\"invokeOnOpen\"]\n },\n {\n target: \"open\",\n actions: [\"setInitialFocus\", \"invokeOnOpen\", \"highlightComputedLastItem\"]\n }\n ],\n \"TRIGGER.ARROW_DOWN\": [\n {\n guard: \"isOpenControlled\",\n actions: [\"invokeOnOpen\"]\n },\n {\n target: \"open\",\n actions: [\"setInitialFocus\", \"invokeOnOpen\", \"highlightComputedFirstItem\"]\n }\n ],\n \"TRIGGER.ARROW_LEFT\": [\n {\n guard: and(not(\"multiple\"), \"hasSelectedItems\"),\n actions: [\"selectPreviousItem\"]\n },\n {\n guard: not(\"multiple\"),\n actions: [\"selectLastItem\"]\n }\n ],\n \"TRIGGER.ARROW_RIGHT\": [\n {\n guard: and(not(\"multiple\"), \"hasSelectedItems\"),\n actions: [\"selectNextItem\"]\n },\n {\n guard: not(\"multiple\"),\n actions: [\"selectFirstItem\"]\n }\n ],\n \"TRIGGER.HOME\": {\n guard: not(\"multiple\"),\n actions: [\"selectFirstItem\"]\n },\n \"TRIGGER.END\": {\n guard: not(\"multiple\"),\n actions: [\"selectLastItem\"]\n },\n \"TRIGGER.TYPEAHEAD\": {\n guard: not(\"multiple\"),\n actions: [\"selectMatchingItem\"]\n }\n }\n },\n open: {\n tags: [\"open\"],\n exit: [\"scrollContentToTop\"],\n effects: [\"trackDismissableElement\", \"computePlacement\", \"scrollToHighlightedItem\"],\n on: {\n \"CONTROLLED.CLOSE\": [\n {\n guard: \"restoreFocus\",\n target: \"focused\",\n actions: [\"focusTriggerEl\", \"clearHighlightedItem\"]\n },\n {\n target: \"idle\",\n actions: [\"clearHighlightedItem\"]\n }\n ],\n CLOSE: [\n {\n guard: \"isOpenControlled\",\n actions: [\"invokeOnClose\"]\n },\n {\n guard: \"restoreFocus\",\n target: \"focused\",\n actions: [\"invokeOnClose\", \"focusTriggerEl\", \"clearHighlightedItem\"]\n },\n {\n target: \"idle\",\n actions: [\"invokeOnClose\", \"clearHighlightedItem\"]\n }\n ],\n \"TRIGGER.CLICK\": [\n {\n guard: \"isOpenControlled\",\n actions: [\"invokeOnClose\"]\n },\n {\n target: \"focused\",\n actions: [\"invokeOnClose\", \"clearHighlightedItem\"]\n }\n ],\n \"ITEM.CLICK\": [\n {\n guard: and(\"closeOnSelect\", \"isOpenControlled\"),\n actions: [\"selectHighlightedItem\", \"invokeOnClose\"]\n },\n {\n guard: \"closeOnSelect\",\n target: \"focused\",\n actions: [\"selectHighlightedItem\", \"invokeOnClose\", \"focusTriggerEl\", \"clearHighlightedItem\"]\n },\n {\n actions: [\"selectHighlightedItem\"]\n }\n ],\n \"CONTENT.HOME\": {\n actions: [\"highlightFirstItem\"]\n },\n \"CONTENT.END\": {\n actions: [\"highlightLastItem\"]\n },\n \"CONTENT.ARROW_DOWN\": [\n {\n guard: and(\"hasHighlightedItem\", \"loop\", \"isLastItemHighlighted\"),\n actions: [\"highlightFirstItem\"]\n },\n {\n guard: \"hasHighlightedItem\",\n actions: [\"highlightNextItem\"]\n },\n {\n actions: [\"highlightFirstItem\"]\n }\n ],\n \"CONTENT.ARROW_UP\": [\n {\n guard: and(\"hasHighlightedItem\", \"loop\", \"isFirstItemHighlighted\"),\n actions: [\"highlightLastItem\"]\n },\n {\n guard: \"hasHighlightedItem\",\n actions: [\"highlightPreviousItem\"]\n },\n {\n actions: [\"highlightLastItem\"]\n }\n ],\n \"CONTENT.TYPEAHEAD\": {\n actions: [\"highlightMatchingItem\"]\n },\n \"ITEM.POINTER_MOVE\": {\n actions: [\"highlightItem\"]\n },\n \"ITEM.POINTER_LEAVE\": {\n actions: [\"clearHighlightedItem\"]\n },\n \"POSITIONING.SET\": {\n actions: [\"reposition\"]\n }\n }\n }\n },\n implementations: {\n guards: {\n loop: ({ prop }) => !!prop(\"loopFocus\"),\n multiple: ({ prop }) => !!prop(\"multiple\"),\n hasSelectedItems: ({ computed }) => !!computed(\"hasSelectedItems\"),\n hasHighlightedItem: ({ context }) => context.get(\"highlightedValue\") != null,\n isFirstItemHighlighted: ({ context, prop }) => context.get(\"highlightedValue\") === prop(\"collection\").firstValue,\n isLastItemHighlighted: ({ context, prop }) => context.get(\"highlightedValue\") === prop(\"collection\").lastValue,\n closeOnSelect: ({ prop, event }) => !!(event.closeOnSelect ?? prop(\"closeOnSelect\")),\n restoreFocus: ({ event }) => restoreFocusFn(event),\n // guard assertions (for controlled mode)\n isOpenControlled: ({ prop }) => prop(\"open\") !== void 0,\n isTriggerClickEvent: ({ event }) => event.previousEvent?.type === \"TRIGGER.CLICK\",\n isTriggerEnterEvent: ({ event }) => event.previousEvent?.type === \"TRIGGER.ENTER\",\n isTriggerArrowUpEvent: ({ event }) => event.previousEvent?.type === \"TRIGGER.ARROW_UP\",\n isTriggerArrowDownEvent: ({ event }) => event.previousEvent?.type === \"TRIGGER.ARROW_DOWN\"\n },\n effects: {\n trackFormControlState({ context, scope }) {\n return trackFormControl(getHiddenSelectEl(scope), {\n onFieldsetDisabledChange(disabled) {\n context.set(\"fieldsetDisabled\", disabled);\n },\n onFormReset() {\n const value = context.initial(\"value\");\n context.set(\"value\", value);\n }\n });\n },\n trackDismissableElement({ scope, send, prop }) {\n const contentEl = () => getContentEl(scope);\n let restoreFocus = true;\n return trackDismissableElement(contentEl, {\n defer: true,\n exclude: [getTriggerEl(scope), getClearTriggerEl(scope)],\n onFocusOutside: prop(\"onFocusOutside\"),\n onPointerDownOutside: prop(\"onPointerDownOutside\"),\n onInteractOutside(event) {\n prop(\"onInteractOutside\")?.(event);\n restoreFocus = !(event.detail.focusable || event.detail.contextmenu);\n },\n onDismiss() {\n send({ type: \"CLOSE\", src: \"interact-outside\", restoreFocus });\n }\n });\n },\n computePlacement({ context, prop, scope }) {\n const positioning = prop(\"positioning\");\n context.set(\"currentPlacement\", positioning.placement);\n const triggerEl = () => getTriggerEl(scope);\n const positionerEl = () => getPositionerEl(scope);\n return getPlacement(triggerEl, positionerEl, {\n defer: true,\n ...positioning,\n onComplete(data) {\n context.set(\"currentPlacement\", data.placement);\n }\n });\n },\n scrollToHighlightedItem({ context, prop, scope, event }) {\n const exec = (immediate) => {\n const highlightedValue = context.get(\"highlightedValue\");\n if (highlightedValue == null) return;\n if (event.current().type.includes(\"POINTER\")) return;\n const optionEl = getItemEl(scope, highlightedValue);\n const contentEl2 = getContentEl(scope);\n const scrollToIndexFn = prop(\"scrollToIndexFn\");\n if (scrollToIndexFn) {\n const highlightedIndex = prop(\"collection\").indexOf(highlightedValue);\n scrollToIndexFn?.({ index: highlightedIndex, immediate });\n return;\n }\n scrollIntoView(optionEl, { rootEl: contentEl2, block: \"nearest\" });\n };\n raf(() => exec(true));\n const contentEl = () => getContentEl(scope);\n return observeAttributes(contentEl, {\n defer: true,\n attributes: [\"data-activedescendant\"],\n callback() {\n exec(false);\n }\n });\n }\n },\n actions: {\n reposition({ context, prop, scope, event }) {\n const positionerEl = () => getPositionerEl(scope);\n getPlacement(getTriggerEl(scope), positionerEl, {\n ...prop(\"positioning\"),\n ...event.options,\n defer: true,\n listeners: false,\n onComplete(data) {\n context.set(\"currentPlacement\", data.placement);\n }\n });\n },\n toggleVisibility({ send, prop, event }) {\n send({ type: prop(\"open\") ? \"CONTROLLED.OPEN\" : \"CONTROLLED.CLOSE\", previousEvent: event });\n },\n highlightPreviousItem({ context, prop }) {\n const highlightedValue = context.get(\"highlightedValue\");\n if (highlightedValue == null) return;\n const value = prop(\"collection\").getPreviousValue(highlightedValue, 1, prop(\"loopFocus\"));\n if (value == null) return;\n context.set(\"highlightedValue\", value);\n },\n highlightNextItem({ context, prop }) {\n const highlightedValue = context.get(\"highlightedValue\");\n if (highlightedValue == null) return;\n const value = prop(\"collection\").getNextValue(highlightedValue, 1, prop(\"loopFocus\"));\n if (value == null) return;\n context.set(\"highlightedValue\", value);\n },\n highlightFirstItem({ context, prop }) {\n const value = prop(\"collection\").firstValue;\n context.set(\"highlightedValue\", value);\n },\n highlightLastItem({ context, prop }) {\n const value = prop(\"collection\").lastValue;\n context.set(\"highlightedValue\", value);\n },\n setInitialFocus({ scope }) {\n raf(() => {\n const element = getInitialFocus({\n root: getContentEl(scope)\n });\n element?.focus({ preventScroll: true });\n });\n },\n focusTriggerEl({ event, scope }) {\n if (!restoreFocusFn(event)) return;\n raf(() => {\n const element = getTriggerEl(scope);\n element?.focus({ preventScroll: true });\n });\n },\n selectHighlightedItem({ context, prop, event }) {\n let value = event.value ?? context.get(\"highlightedValue\");\n if (value == null || !prop(\"collection\").has(value)) return;\n prop(\"onSelect\")?.({ value });\n const nullable = prop(\"deselectable\") && !prop(\"multiple\") && context.get(\"value\").includes(value);\n value = nullable ? null : value;\n context.set(\"value\", (prev) => {\n if (value == null) return [];\n if (prop(\"multiple\")) return addOrRemove(prev, value);\n return [value];\n });\n },\n highlightComputedFirstItem({ context, prop, computed }) {\n const collection2 = prop(\"collection\");\n const value = computed(\"hasSelectedItems\") ? collection2.sort(context.get(\"value\"))[0] : collection2.firstValue;\n context.set(\"highlightedValue\", value);\n },\n highlightComputedLastItem({ context, prop, computed }) {\n const collection2 = prop(\"collection\");\n const value = computed(\"hasSelectedItems\") ? collection2.sort(context.get(\"value\"))[0] : collection2.lastValue;\n context.set(\"highlightedValue\", value);\n },\n highlightFirstSelectedItem({ context, prop, computed }) {\n if (!computed(\"hasSelectedItems\")) return;\n const value = prop(\"collection\").sort(context.get(\"value\"))[0];\n context.set(\"highlightedValue\", value);\n },\n highlightItem({ context, event }) {\n context.set(\"highlightedValue\", event.value);\n },\n highlightMatchingItem({ context, prop, event, refs }) {\n const value = prop(\"collection\").search(event.key, {\n state: refs.get(\"typeahead\"),\n currentValue: context.get(\"highlightedValue\")\n });\n if (value == null) return;\n context.set(\"highlightedValue\", value);\n },\n setHighlightedItem({ context, event }) {\n context.set(\"highlightedValue\", event.value);\n },\n clearHighlightedItem({ context }) {\n context.set(\"highlightedValue\", null);\n },\n selectItem({ context, prop, event }) {\n prop(\"onSelect\")?.({ value: event.value });\n const nullable = prop(\"deselectable\") && !prop(\"multiple\") && context.get(\"value\").includes(event.value);\n const value = nullable ? null : event.value;\n context.set(\"value\", (prev) => {\n if (value == null) return [];\n if (prop(\"multiple\")) return addOrRemove(prev, value);\n return [value];\n });\n },\n clearItem({ context, event }) {\n context.set(\"value\", (prev) => prev.filter((v) => v !== event.value));\n },\n setSelectedItems({ context, event }) {\n context.set(\"value\", event.value);\n },\n clearSelectedItems({ context }) {\n context.set(\"value\", []);\n },\n selectPreviousItem({ context, prop }) {\n const [firstItem] = context.get(\"value\");\n const value = prop(\"collection\").getPreviousValue(firstItem);\n if (value) context.set(\"value\", [value]);\n },\n selectNextItem({ context, prop }) {\n const [firstItem] = context.get(\"value\");\n const value = prop(\"collection\").getNextValue(firstItem);\n if (value) context.set(\"value\", [value]);\n },\n selectFirstItem({ context, prop }) {\n const value = prop(\"collection\").firstValue;\n if (value) context.set(\"value\", [value]);\n },\n selectLastItem({ context, prop }) {\n const value = prop(\"collection\").lastValue;\n if (value) context.set(\"value\", [value]);\n },\n selectMatchingItem({ context, prop, event, refs }) {\n const value = prop(\"collection\").search(event.key, {\n state: refs.get(\"typeahead\"),\n currentValue: context.get(\"value\")[0]\n });\n if (value == null) return;\n context.set(\"value\", [value]);\n },\n scrollContentToTop({ prop, scope }) {\n if (prop(\"scrollToIndexFn\")) {\n prop(\"scrollToIndexFn\")?.({ index: 0, immediate: true });\n } else {\n getContentEl(scope)?.scrollTo(0, 0);\n }\n },\n invokeOnOpen({ prop }) {\n prop(\"onOpenChange\")?.({ open: true });\n },\n invokeOnClose({ prop }) {\n prop(\"onOpenChange\")?.({ open: false });\n },\n syncSelectElement({ context, prop, scope }) {\n const selectEl = getHiddenSelectEl(scope);\n if (!selectEl) return;\n if (context.get(\"value\").length === 0 && !prop(\"multiple\")) {\n selectEl.selectedIndex = -1;\n return;\n }\n for (const option of selectEl.options) {\n option.selected = context.get(\"value\").includes(option.value);\n }\n },\n syncCollection({ context, prop }) {\n const collection2 = prop(\"collection\");\n const highlightedItem = collection2.find(context.get(\"highlightedValue\"));\n if (highlightedItem) context.set(\"highlightedItem\", highlightedItem);\n const selectedItems = collection2.findMany(context.get(\"value\"));\n context.set(\"selectedItems\", selectedItems);\n },\n syncSelectedItems({ context, prop }) {\n const collection2 = prop(\"collection\");\n const prevSelectedItems = context.get(\"selectedItems\");\n const value = context.get(\"value\");\n const selectedItems = value.map((value2) => {\n const item = prevSelectedItems.find((item2) => collection2.getItemValue(item2) === value2);\n return item || collection2.find(value2);\n });\n context.set(\"selectedItems\", selectedItems);\n },\n syncHighlightedItem({ context, prop }) {\n const collection2 = prop(\"collection\");\n const highlightedValue = context.get(\"highlightedValue\");\n const highlightedItem = highlightedValue ? collection2.find(highlightedValue) : null;\n context.set(\"highlightedItem\", highlightedItem);\n },\n dispatchChangeEvent({ scope }) {\n queueMicrotask(() => {\n const node = getHiddenSelectEl(scope);\n if (!node) return;\n const win = scope.getWin();\n const changeEvent = new win.Event(\"change\", { bubbles: true, composed: true });\n node.dispatchEvent(changeEvent);\n });\n }\n }\n }\n});\nfunction restoreFocusFn(event) {\n const v = event.restoreFocus ?? event.previousEvent?.restoreFocus;\n return v == null || !!v;\n}\nvar props = createProps()([\n \"closeOnSelect\",\n \"collection\",\n \"composite\",\n \"defaultHighlightedValue\",\n \"defaultOpen\",\n \"defaultValue\",\n \"deselectable\",\n \"dir\",\n \"disabled\",\n \"form\",\n \"getRootNode\",\n \"highlightedValue\",\n \"id\",\n \"ids\",\n \"invalid\",\n \"loopFocus\",\n \"multiple\",\n \"name\",\n \"onFocusOutside\",\n \"onHighlightChange\",\n \"onInteractOutside\",\n \"onOpenChange\",\n \"onPointerDownOutside\",\n \"onSelect\",\n \"onValueChange\",\n \"open\",\n \"positioning\",\n \"readOnly\",\n \"required\",\n \"scrollToIndexFn\",\n \"value\"\n]);\nvar splitProps = createSplitProps(props);\nvar itemProps = createProps()([\"item\", \"persistFocus\"]);\nvar splitItemProps = createSplitProps(itemProps);\nvar itemGroupProps = createProps()([\"id\"]);\nvar splitItemGroupProps = createSplitProps(itemGroupProps);\nvar itemGroupLabelProps = createProps()([\"htmlFor\"]);\nvar splitItemGroupLabelProps = createSplitProps(itemGroupLabelProps);\n\nexport { anatomy, collection, connect, itemGroupLabelProps, itemGroupProps, itemProps, machine, props, splitItemGroupLabelProps, splitItemGroupProps, splitItemProps, splitProps };\n"],"names":["__defProp","__defNormalProp","obj","key","value","__publicField","fallback","item","isObject","hasProp","ListCollection","_ListCollection","options","items","other","isEqual","index","values","idx","groups","valueA","valueB","indexA","indexB","separator","groupBy","groupSort","groupKey","entries","a","b","step","clamp","text","current","wrap","match","queryString","state","currentValue","timeout","search","query","char","cleanup","update","value2","mode","insert","toIndex","fn","filteredItems","itemsOrValues","itemOrValue","fromIndex","move","indices","from","to","keys","result","label","disabled","itemString","v","_","itemsToMove","i","anatomy","createAnatomy","parts","collection","getRootId","ctx","getContentId","getTriggerId","getClearTriggerId","getLabelId","getControlId","getItemId","id","getHiddenSelectId","getPositionerId","getItemGroupId","getItemGroupLabelId","getHiddenSelectEl","getContentEl","getTriggerEl","getClearTriggerEl","getPositionerEl","getItemEl","connect","service","normalize","context","prop","scope","computed","send","invalid","readOnly","composite","collection2","open","focused","highlightedValue","highlightedItem","selectedItems","currentPlacement","isTypingAhead","interactive","ariaActiveDescendant","getItemState","props2","_disabled","ensure","popperStyles","getPlacementStyles","nextOpen","dataAttr","event","exec","event2","getEventKey","getByTypeahead","itemState","ariaAttr","htmlFor","defaultValue","visuallyHiddenStyle","isSelfTarget","isValidTabEvent","keyMap","target","getEventTarget","isEditableElement","and","not","or","createGuards","machine","createMachine","bindable","refs","track","action","restoreFocusFn","trackFormControl","contentEl","restoreFocus","trackDismissableElement","positioning","triggerEl","positionerEl","getPlacement","data","immediate","optionEl","contentEl2","scrollToIndexFn","highlightedIndex","scrollIntoView","raf","observeAttributes","getInitialFocus","prev","addOrRemove","firstItem","selectEl","option","prevSelectedItems","item2","node","win","changeEvent","createProps"],"mappings":"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","x_google_ignoreList":[0,1]}
|