@rpcbase/ui 0.211.0 → 0.212.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.js +73 -25
- package/dist/index.js.map +1 -0
- package/dist/index10.js +666 -18
- package/dist/index10.js.map +1 -1
- package/dist/index100.js +46 -9
- package/dist/index100.js.map +1 -1
- package/dist/index101.js +7 -14
- package/dist/index101.js.map +1 -1
- package/dist/index102.js +50 -10
- package/dist/index102.js.map +1 -1
- package/dist/index103.js +233 -15
- package/dist/index103.js.map +1 -1
- package/dist/index104.js +25 -21
- package/dist/index104.js.map +1 -1
- package/dist/index105.js +27 -27
- package/dist/index105.js.map +1 -1
- package/dist/index106.js +404 -9
- package/dist/index106.js.map +1 -1
- package/dist/index107.js +609 -9
- package/dist/index107.js.map +1 -1
- package/dist/index108.js +55 -10
- package/dist/index108.js.map +1 -1
- package/dist/index109.js +6 -8
- package/dist/index109.js.map +1 -1
- package/dist/index11.js +459 -1673
- package/dist/index11.js.map +1 -1
- package/dist/index110.js +7 -8
- package/dist/index110.js.map +1 -1
- package/dist/index111.js +17 -7
- package/dist/index111.js.map +1 -1
- package/dist/index112.js +8 -11
- package/dist/index112.js.map +1 -1
- package/dist/index113.js +10 -10
- package/dist/index113.js.map +1 -1
- package/dist/index114.js +19 -37
- package/dist/index114.js.map +1 -1
- package/dist/index115.js +6 -9
- package/dist/index115.js.map +1 -1
- package/dist/index116.js +7 -8
- package/dist/index116.js.map +1 -1
- package/dist/index117.js +8 -10
- package/dist/index117.js.map +1 -1
- package/dist/index118.js +8 -12
- package/dist/index118.js.map +1 -1
- package/dist/index119.js +6 -7
- package/dist/index119.js.map +1 -1
- package/dist/index12.js +79 -10
- package/dist/index12.js.map +1 -1
- package/dist/index120.js +6 -8
- package/dist/index120.js.map +1 -1
- package/dist/index121.js +8 -7
- package/dist/index121.js.map +1 -1
- package/dist/index122.js +27 -8
- package/dist/index122.js.map +1 -1
- package/dist/index123.js +9 -9
- package/dist/index123.js.map +1 -1
- package/dist/index124.js +6 -7
- package/dist/index124.js.map +1 -1
- package/dist/index125.js +8 -7
- package/dist/index125.js.map +1 -1
- package/dist/index126.js +8 -10
- package/dist/index126.js.map +1 -1
- package/dist/index127.js +8 -60
- package/dist/index127.js.map +1 -1
- package/dist/index128.js +8 -9
- package/dist/index128.js.map +1 -1
- package/dist/index129.js +8 -23
- package/dist/index129.js.map +1 -1
- package/dist/index13.js +23 -21
- package/dist/index13.js.map +1 -1
- package/dist/index130.js +11 -22
- package/dist/index130.js.map +1 -1
- package/dist/index131.js +8 -37
- package/dist/index131.js.map +1 -1
- package/dist/index132.js +7 -8
- package/dist/index132.js.map +1 -1
- package/dist/index133.js +7 -11
- package/dist/index133.js.map +1 -1
- package/dist/index134.js +9 -17
- package/dist/index134.js.map +1 -1
- package/dist/index135.js +148 -13
- package/dist/index135.js.map +1 -1
- package/dist/index136.js +42 -9
- package/dist/index136.js.map +1 -1
- package/dist/index137.js +7 -8
- package/dist/index137.js.map +1 -1
- package/dist/index138.js +10 -8
- package/dist/index138.js.map +1 -1
- package/dist/index139.js +16 -8
- package/dist/index139.js.map +1 -1
- package/dist/index14.js +20 -194
- package/dist/index14.js.map +1 -1
- package/dist/index140.js +16 -8
- package/dist/index140.js.map +1 -1
- package/dist/index141.js +10 -7
- package/dist/index141.js.map +1 -1
- package/dist/index142.js +34 -9
- package/dist/index142.js.map +1 -1
- package/dist/index143.js +14 -24
- package/dist/index143.js.map +1 -1
- package/dist/index144.js +13 -11
- package/dist/index144.js.map +1 -1
- package/dist/index145.js +11 -10
- package/dist/index145.js.map +1 -1
- package/dist/index146.js +16 -9
- package/dist/index146.js.map +1 -1
- package/dist/index147.js +104 -9
- package/dist/index147.js.map +1 -1
- package/dist/index148.js +23 -8
- package/dist/index148.js.map +1 -1
- package/dist/index149.js +56 -7
- package/dist/index149.js.map +1 -1
- package/dist/index15.js +30 -33
- package/dist/index15.js.map +1 -1
- package/dist/index150.js +75 -8
- package/dist/index150.js.map +1 -1
- package/dist/index151.js +12 -7
- package/dist/index151.js.map +1 -1
- package/dist/index152.js +23 -8
- package/dist/index152.js.map +1 -1
- package/dist/index153.js +19 -7
- package/dist/index153.js.map +1 -1
- package/dist/index154.js +26 -7
- package/dist/index154.js.map +1 -1
- package/dist/index155.js +9 -7
- package/dist/index155.js.map +1 -1
- package/dist/index156.js +9 -32
- package/dist/index156.js.map +1 -1
- package/dist/index157.js +26 -35
- package/dist/index157.js.map +1 -1
- package/dist/index158.js +38 -19
- package/dist/index158.js.map +1 -1
- package/dist/index159.js +19 -15
- package/dist/index159.js.map +1 -1
- package/dist/index16.js +268 -57
- package/dist/index16.js.map +1 -1
- package/dist/index160.js +9 -12
- package/dist/index160.js.map +1 -1
- package/dist/index161.js +7 -19
- package/dist/index161.js.map +1 -1
- package/dist/index162.js +7 -89
- package/dist/index162.js.map +1 -1
- package/dist/index163.js +7 -50
- package/dist/index163.js.map +1 -1
- package/dist/index164.js +7 -20
- package/dist/index164.js.map +1 -1
- package/dist/index165.js +6 -11
- package/dist/index165.js.map +1 -1
- package/dist/index166.js +9 -13
- package/dist/index166.js.map +1 -1
- package/dist/index167.js +27 -9
- package/dist/index167.js.map +1 -1
- package/dist/index168.js +10 -25
- package/dist/index168.js.map +1 -1
- package/dist/index169.js +9 -10
- package/dist/index169.js.map +1 -1
- package/dist/index17.js +179 -9
- package/dist/index17.js.map +1 -1
- package/dist/index170.js +8 -9
- package/dist/index170.js.map +1 -1
- package/dist/index171.js +6 -9
- package/dist/index171.js.map +1 -1
- package/dist/index172.js +6 -7
- package/dist/index172.js.map +1 -1
- package/dist/index173.js +7 -9
- package/dist/index173.js.map +1 -1
- package/dist/index174.js +6 -70
- package/dist/index174.js.map +1 -1
- package/dist/index175.js +7 -20
- package/dist/index175.js.map +1 -1
- package/dist/index176.js +6 -15
- package/dist/index176.js.map +1 -1
- package/dist/index177.js +6 -12
- package/dist/index177.js.map +1 -1
- package/dist/index178.js +6 -23
- package/dist/index178.js.map +1 -1
- package/dist/index179.js +16 -20
- package/dist/index179.js.map +1 -1
- package/dist/index18.js +469 -27
- package/dist/index18.js.map +1 -1
- package/dist/index180.js +158 -59
- package/dist/index180.js.map +1 -1
- package/dist/index181.js +33 -13
- package/dist/index181.js.map +1 -1
- package/dist/index182.js +12 -9
- package/dist/index182.js.map +1 -1
- package/dist/index183.js +51 -29
- package/dist/index183.js.map +1 -1
- package/dist/index184.js +14 -29
- package/dist/index184.js.map +1 -1
- package/dist/index185.js +47 -16
- package/dist/index185.js.map +1 -1
- package/dist/index186.js +98 -16
- package/dist/index186.js.map +1 -1
- package/dist/index187.js +90 -10
- package/dist/index187.js.map +1 -1
- package/dist/index188.js +109 -27
- package/dist/index188.js.map +1 -1
- package/dist/index189.js +55 -388
- package/dist/index189.js.map +1 -1
- package/dist/index19.js +266 -65
- package/dist/index19.js.map +1 -1
- package/dist/index190.js +15 -499
- package/dist/index190.js.map +1 -1
- package/dist/index191.js +39 -132
- package/dist/index191.js.map +1 -1
- package/dist/index192.js +11 -55
- package/dist/index192.js.map +1 -1
- package/dist/index193.js +6 -80
- package/dist/index193.js.map +1 -1
- package/dist/index194.js +12 -902
- package/dist/index194.js.map +1 -1
- package/dist/index195.js +119 -22
- package/dist/index195.js.map +1 -1
- package/dist/index196.js +21 -452
- package/dist/index196.js.map +1 -1
- package/dist/index197.js +18 -7
- package/dist/index197.js.map +1 -1
- package/dist/index198.js +38 -59
- package/dist/index198.js.map +1 -1
- package/dist/index199.js +23 -64
- package/dist/index199.js.map +1 -1
- package/dist/index2.js +8 -10
- package/dist/index2.js.map +1 -0
- package/dist/index20.js +5 -43
- package/dist/index20.js.map +1 -1
- package/dist/index200.js +11 -63
- package/dist/index200.js.map +1 -1
- package/dist/index201.js +22 -11
- package/dist/index201.js.map +1 -1
- package/dist/index202.js +31 -19
- package/dist/index202.js.map +1 -1
- package/dist/index203.js +20 -148
- package/dist/index203.js.map +1 -1
- package/dist/index204.js +28 -7
- package/dist/index204.js.map +1 -1
- package/dist/index205.js +32 -14
- package/dist/index205.js.map +1 -1
- package/dist/index206.js +7 -107
- package/dist/index206.js.map +1 -1
- package/dist/index207.js +65 -355
- package/dist/index207.js.map +1 -1
- package/dist/index208.js +184 -99
- package/dist/index208.js.map +1 -1
- package/dist/index209.js +49 -329
- package/dist/index209.js.map +1 -1
- package/dist/index21.js +28 -11
- package/dist/index21.js.map +1 -1
- package/dist/index210.js +60 -212
- package/dist/index210.js.map +1 -1
- package/dist/index211.js +12 -22
- package/dist/index211.js.map +1 -1
- package/dist/index212.js +69 -30
- package/dist/index212.js.map +1 -1
- package/dist/index213.js +21 -189
- package/dist/index213.js.map +1 -1
- package/dist/index214.js +20 -21
- package/dist/index214.js.map +1 -1
- package/dist/index215.js +9 -65
- package/dist/index215.js.map +1 -1
- package/dist/index216.js +8 -46
- package/dist/index216.js.map +1 -1
- package/dist/index217.js +9 -12
- package/dist/index217.js.map +1 -1
- package/dist/index218.js +8 -28
- package/dist/index218.js.map +1 -1
- package/dist/index219.js +9 -47
- package/dist/index219.js.map +1 -1
- package/dist/index22.js +48 -16
- package/dist/index22.js.map +1 -1
- package/dist/index220.js +19 -20
- package/dist/index220.js.map +1 -1
- package/dist/index221.js +8 -6
- package/dist/index221.js.map +1 -1
- package/dist/index222.js +7 -7
- package/dist/index222.js.map +1 -1
- package/dist/index223.js +15 -23
- package/dist/index223.js.map +1 -1
- package/dist/index224.js +12 -27
- package/dist/index224.js.map +1 -1
- package/dist/index225.js +16 -70
- package/dist/index225.js.map +1 -1
- package/dist/index226.js +16 -17
- package/dist/index226.js.map +1 -1
- package/dist/index227.js +8 -7
- package/dist/index227.js.map +1 -1
- package/dist/index228.js +8 -53
- package/dist/index228.js.map +1 -1
- package/dist/index229.js +9 -8
- package/dist/index229.js.map +1 -1
- package/dist/index23.js +37 -109
- package/dist/index23.js.map +1 -1
- package/dist/index230.js +7 -28
- package/dist/index230.js.map +1 -1
- package/dist/index231.js +57 -16
- package/dist/index231.js.map +1 -1
- package/dist/index232.js +11 -12
- package/dist/index232.js.map +1 -1
- package/dist/index233.js +8 -3
- package/dist/index233.js.map +1 -0
- package/dist/index234.js +7 -28
- package/dist/index234.js.map +1 -1
- package/dist/index235.js +11 -71
- package/dist/index235.js.map +1 -1
- package/dist/index236.js +8 -3
- package/dist/index236.js.map +1 -0
- package/dist/index237.js +7 -14
- package/dist/index237.js.map +1 -1
- package/dist/index238.js +6 -53
- package/dist/index238.js.map +1 -1
- package/dist/index239.js +13 -117
- package/dist/index239.js.map +1 -1
- package/dist/index24.js +227 -11
- package/dist/index24.js.map +1 -1
- package/dist/index240.js +13 -9
- package/dist/index240.js.map +1 -1
- package/dist/index241.js +13 -16
- package/dist/index241.js.map +1 -1
- package/dist/index242.js +13 -689
- package/dist/index242.js.map +1 -1
- package/dist/index243.js +14 -256
- package/dist/index243.js.map +1 -1
- package/dist/index244.js +13 -704
- package/dist/index244.js.map +1 -1
- package/dist/index245.js +9 -7433
- package/dist/index245.js.map +1 -1
- package/dist/index246.js +8 -9
- package/dist/index246.js.map +1 -1
- package/dist/index247.js +7 -15
- package/dist/index247.js.map +1 -1
- package/dist/index248.js +8 -8
- package/dist/index248.js.map +1 -1
- package/dist/index249.js +9 -462
- package/dist/index249.js.map +1 -1
- package/dist/index25.js +32 -23
- package/dist/index25.js.map +1 -1
- package/dist/index250.js +9 -41
- package/dist/index250.js.map +1 -1
- package/dist/index251.js +19 -22
- package/dist/index251.js.map +1 -1
- package/dist/index252.js +10 -30
- package/dist/index252.js.map +1 -1
- package/dist/index253.js +13 -7
- package/dist/index253.js.map +1 -1
- package/dist/index254.js +14 -62
- package/dist/index254.js.map +1 -1
- package/dist/index255.js +24 -10
- package/dist/index255.js.map +1 -1
- package/dist/index256.js +13 -15
- package/dist/index256.js.map +1 -1
- package/dist/index257.js +13 -6
- package/dist/index257.js.map +1 -1
- package/dist/index258.js +12 -19
- package/dist/index258.js.map +1 -1
- package/dist/index259.js +7 -28
- package/dist/index259.js.map +1 -1
- package/dist/index26.js +16 -60
- package/dist/index26.js.map +1 -1
- package/dist/index260.js +9 -47
- package/dist/index260.js.map +1 -1
- package/dist/index261.js +19 -16
- package/dist/index261.js.map +1 -1
- package/dist/index262.js +12 -28
- package/dist/index262.js.map +1 -1
- package/dist/index263.js +21 -20
- package/dist/index263.js.map +1 -1
- package/dist/index264.js +18 -38
- package/dist/index264.js.map +1 -1
- package/dist/index265.js +15 -8
- package/dist/index265.js.map +1 -1
- package/dist/index266.js +32 -12
- package/dist/index266.js.map +1 -1
- package/dist/index267.js +15 -11
- package/dist/index267.js.map +1 -1
- package/dist/index268.js +28 -12
- package/dist/index268.js.map +1 -1
- package/dist/index269.js +8 -13
- package/dist/index269.js.map +1 -1
- package/dist/index27.js +2924 -58
- package/dist/index27.js.map +1 -1
- package/dist/index270.js +23 -10
- package/dist/index270.js.map +1 -1
- package/dist/index271.js +8 -77
- package/dist/index271.js.map +1 -1
- package/dist/index272.js +5 -174
- package/dist/index272.js.map +1 -1
- package/dist/index273.js +27 -118
- package/dist/index273.js.map +1 -1
- package/dist/index274.js +115 -17
- package/dist/index274.js.map +1 -1
- package/dist/index275.js +17 -82
- package/dist/index275.js.map +1 -1
- package/dist/index276.js +528 -45
- package/dist/index276.js.map +1 -1
- package/dist/index277.js +129 -17
- package/dist/index277.js.map +1 -1
- package/dist/index278.js +137 -20
- package/dist/index278.js.map +1 -1
- package/dist/index279.js +8 -103
- package/dist/index279.js.map +1 -1
- package/dist/index28.js +6 -1
- package/dist/index28.js.map +1 -0
- package/dist/index280.js +21 -60
- package/dist/index280.js.map +1 -1
- package/dist/index281.js +16 -112
- package/dist/index281.js.map +1 -1
- package/dist/index282.js +65 -72
- package/dist/index282.js.map +1 -1
- package/dist/index283.js +72 -117
- package/dist/index283.js.map +1 -1
- package/dist/index284.js +12 -59
- package/dist/index284.js.map +1 -1
- package/dist/index285.js +17 -47
- package/dist/index285.js.map +1 -1
- package/dist/index286.js +69 -146
- package/dist/index286.js.map +1 -1
- package/dist/index287.js +8 -143
- package/dist/index287.js.map +1 -1
- package/dist/index288.js +8 -258
- package/dist/index288.js.map +1 -1
- package/dist/index289.js +7 -244
- package/dist/index289.js.map +1 -1
- package/dist/index29.js +40 -5
- package/dist/index29.js.map +1 -0
- package/dist/index290.js +19 -302
- package/dist/index290.js.map +1 -1
- package/dist/index291.js +11 -8
- package/dist/index291.js.map +1 -1
- package/dist/index292.js +8 -9
- package/dist/index292.js.map +1 -1
- package/dist/index293.js +7 -10
- package/dist/index293.js.map +1 -1
- package/dist/index294.js +548 -9
- package/dist/index294.js.map +1 -1
- package/dist/index295.js +50 -10
- package/dist/index295.js.map +1 -1
- package/dist/index296.js +20 -24
- package/dist/index296.js.map +1 -1
- package/dist/index297.js +8 -13
- package/dist/index297.js.map +1 -1
- package/dist/index298.js +11 -130
- package/dist/index298.js.map +1 -1
- package/dist/index299.js +9 -167
- package/dist/index299.js.map +1 -1
- package/dist/index3.js +181 -6
- package/dist/index3.js.map +1 -1
- package/dist/index30.js +6 -8
- package/dist/index30.js.map +1 -1
- package/dist/index300.js +11 -72
- package/dist/index300.js.map +1 -1
- package/dist/index301.js +14 -112
- package/dist/index301.js.map +1 -1
- package/dist/index302.js +12 -495
- package/dist/index302.js.map +1 -1
- package/dist/index303.js +15 -65
- package/dist/index303.js.map +1 -1
- package/dist/index304.js +7 -7
- package/dist/index304.js.map +1 -1
- package/dist/index305.js +25 -30
- package/dist/index305.js.map +1 -1
- package/dist/index306.js +6 -67
- package/dist/index306.js.map +1 -1
- package/dist/index307.js +58 -155
- package/dist/index307.js.map +1 -1
- package/dist/index308.js +71 -65
- package/dist/index308.js.map +1 -1
- package/dist/index309.js +32 -563
- package/dist/index309.js.map +1 -1
- package/dist/index31.js +128 -9
- package/dist/index31.js.map +1 -1
- package/dist/index310.js +11 -213
- package/dist/index310.js.map +1 -1
- package/dist/index311.js +156 -335
- package/dist/index311.js.map +1 -1
- package/dist/index312.js +110 -271
- package/dist/index312.js.map +1 -1
- package/dist/index313.js +26 -0
- package/dist/index313.js.map +1 -0
- package/dist/index314.js +16 -0
- package/dist/index314.js.map +1 -0
- package/dist/index315.js +31 -0
- package/dist/index315.js.map +1 -0
- package/dist/index316.js +8 -0
- package/dist/index316.js.map +1 -0
- package/dist/index317.js +19 -0
- package/dist/index317.js.map +1 -0
- package/dist/index318.js +32 -0
- package/dist/index318.js.map +1 -0
- package/dist/index319.js +16 -0
- package/dist/index319.js.map +1 -0
- package/dist/index32.js +234 -8
- package/dist/index32.js.map +1 -1
- package/dist/index320.js +10 -0
- package/dist/index320.js.map +1 -0
- package/dist/index33.js +26 -10
- package/dist/index33.js.map +1 -1
- package/dist/index34.js +54 -14
- package/dist/index34.js.map +1 -1
- package/dist/index35.js +24 -8
- package/dist/index35.js.map +1 -1
- package/dist/index36.js +133 -11
- package/dist/index36.js.map +1 -1
- package/dist/index37.js +225 -12
- package/dist/index37.js.map +1 -1
- package/dist/index38.js +94 -16
- package/dist/index38.js.map +1 -1
- package/dist/index39.js +121 -9
- package/dist/index39.js.map +1 -1
- package/dist/index4.js +28 -25
- package/dist/index4.js.map +1 -1
- package/dist/index40.js +8 -9
- package/dist/index40.js.map +1 -1
- package/dist/index41.js +847 -10
- package/dist/index41.js.map +1 -1
- package/dist/index42.js +60 -13
- package/dist/index42.js.map +1 -1
- package/dist/index43.js +10 -11
- package/dist/index43.js.map +1 -1
- package/dist/index44.js +5 -9
- package/dist/index44.js.map +1 -1
- package/dist/index45.js +14 -8
- package/dist/index45.js.map +1 -1
- package/dist/index46.js +21 -14
- package/dist/index46.js.map +1 -1
- package/dist/index47.js +10 -14
- package/dist/index47.js.map +1 -1
- package/dist/index48.js +5 -11
- package/dist/index48.js.map +1 -1
- package/dist/index49.js +26 -7
- package/dist/index49.js.map +1 -1
- package/dist/index5.js +41 -34
- package/dist/index5.js.map +1 -1
- package/dist/index50.js +236 -9
- package/dist/index50.js.map +1 -1
- package/dist/index51.js +9 -9
- package/dist/index51.js.map +1 -1
- package/dist/index52.js +36 -9
- package/dist/index52.js.map +1 -1
- package/dist/index53.js +29 -12
- package/dist/index53.js.map +1 -1
- package/dist/index54.js +10 -16
- package/dist/index54.js.map +1 -1
- package/dist/index55.js +14 -9
- package/dist/index55.js.map +1 -1
- package/dist/index56.js +5 -10
- package/dist/index56.js.map +1 -1
- package/dist/index57.js +5 -10
- package/dist/index57.js.map +1 -1
- package/dist/index58.js +5 -17
- package/dist/index58.js.map +1 -1
- package/dist/index59.js +5 -11
- package/dist/index59.js.map +1 -1
- package/dist/index6.js +469 -42
- package/dist/index6.js.map +1 -1
- package/dist/index60.js +208 -12
- package/dist/index60.js.map +1 -1
- package/dist/index61.js +8 -70
- package/dist/index61.js.map +1 -1
- package/dist/index62.js +10 -10
- package/dist/index62.js.map +1 -1
- package/dist/index63.js +8 -33
- package/dist/index63.js.map +1 -1
- package/dist/index64.js +7 -13
- package/dist/index64.js.map +1 -1
- package/dist/index65.js +50 -18
- package/dist/index65.js.map +1 -1
- package/dist/index66.js +53 -203
- package/dist/index66.js.map +1 -1
- package/dist/index67.js +10 -23
- package/dist/index67.js.map +1 -1
- package/dist/index68.js +17 -19
- package/dist/index68.js.map +1 -1
- package/dist/index69.js +136 -125
- package/dist/index69.js.map +1 -1
- package/dist/index7.js +138 -224
- package/dist/index7.js.map +1 -1
- package/dist/index70.js +13 -21
- package/dist/index70.js.map +1 -1
- package/dist/index71.js +219 -11
- package/dist/index71.js.map +1 -1
- package/dist/index72.js +16 -13
- package/dist/index72.js.map +1 -1
- package/dist/index73.js +49 -16
- package/dist/index73.js.map +1 -1
- package/dist/index74.js +52 -12
- package/dist/index74.js.map +1 -1
- package/dist/index75.js +7 -13
- package/dist/index75.js.map +1 -1
- package/dist/index76.js +8 -7
- package/dist/index76.js.map +1 -1
- package/dist/index77.js +30 -44
- package/dist/index77.js.map +1 -1
- package/dist/index78.js +52 -383
- package/dist/index78.js.map +1 -1
- package/dist/index79.js +11 -41
- package/dist/index79.js.map +1 -1
- package/dist/index8.js +875 -37
- package/dist/index8.js.map +1 -1
- package/dist/index80.js +46 -21
- package/dist/index80.js.map +1 -1
- package/dist/index81.js +8 -60
- package/dist/index81.js.map +1 -1
- package/dist/index82.js +72 -11
- package/dist/index82.js.map +1 -1
- package/dist/index83.js +5 -9
- package/dist/index83.js.map +1 -1
- package/dist/index84.js +367 -9
- package/dist/index84.js.map +1 -1
- package/dist/index85.js +265 -9
- package/dist/index85.js.map +1 -1
- package/dist/index86.js +64 -9
- package/dist/index86.js.map +1 -1
- package/dist/index87.js +50 -10
- package/dist/index87.js.map +1 -1
- package/dist/index88.js +173 -10
- package/dist/index88.js.map +1 -1
- package/dist/index89.js +113 -14
- package/dist/index89.js.map +1 -1
- package/dist/index9.js +8 -33
- package/dist/index9.js.map +1 -1
- package/dist/index90.js +27 -10
- package/dist/index90.js.map +1 -1
- package/dist/index91.js +11 -10
- package/dist/index91.js.map +1 -1
- package/dist/index92.js +7 -8
- package/dist/index92.js.map +1 -1
- package/dist/index93.js +8 -10
- package/dist/index93.js.map +1 -1
- package/dist/index94.js +7 -50
- package/dist/index94.js.map +1 -1
- package/dist/index95.js +469 -108
- package/dist/index95.js.map +1 -1
- package/dist/index96.js +188 -13
- package/dist/index96.js.map +1 -1
- package/dist/index97.js +110 -9
- package/dist/index97.js.map +1 -1
- package/dist/index98.js +265 -9
- package/dist/index98.js.map +1 -1
- package/dist/index99.js +12 -8
- package/dist/index99.js.map +1 -1
- package/package.json +7 -7
package/dist/index242.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index242.js","names":["React","PopperPrimitive.Root","PopperPrimitive.Anchor","PortalPrimitive","ReactDOM","RemoveScroll","PopperPrimitive.Content","PopperPrimitive.Arrow"],"sources":["../../../node_modules/@radix-ui/react-select/dist/index.mjs"],"sourcesContent":["\"use client\";\n\n// src/select.tsx\nimport * as React from \"react\";\nimport * as ReactDOM from \"react-dom\";\nimport { clamp } from \"@radix-ui/number\";\nimport { composeEventHandlers } from \"@radix-ui/primitive\";\nimport { createCollection } from \"@radix-ui/react-collection\";\nimport { useComposedRefs } from \"@radix-ui/react-compose-refs\";\nimport { createContextScope } from \"@radix-ui/react-context\";\nimport { useDirection } from \"@radix-ui/react-direction\";\nimport { DismissableLayer } from \"@radix-ui/react-dismissable-layer\";\nimport { useFocusGuards } from \"@radix-ui/react-focus-guards\";\nimport { FocusScope } from \"@radix-ui/react-focus-scope\";\nimport { useId } from \"@radix-ui/react-id\";\nimport * as PopperPrimitive from \"@radix-ui/react-popper\";\nimport { createPopperScope } from \"@radix-ui/react-popper\";\nimport { Portal as PortalPrimitive } from \"@radix-ui/react-portal\";\nimport { Primitive } from \"@radix-ui/react-primitive\";\nimport { createSlot } from \"@radix-ui/react-slot\";\nimport { useCallbackRef } from \"@radix-ui/react-use-callback-ref\";\nimport { useControllableState } from \"@radix-ui/react-use-controllable-state\";\nimport { useLayoutEffect } from \"@radix-ui/react-use-layout-effect\";\nimport { usePrevious } from \"@radix-ui/react-use-previous\";\nimport { VISUALLY_HIDDEN_STYLES } from \"@radix-ui/react-visually-hidden\";\nimport { hideOthers } from \"aria-hidden\";\nimport { RemoveScroll } from \"react-remove-scroll\";\nimport { Fragment, jsx, jsxs } from \"react/jsx-runtime\";\nvar OPEN_KEYS = [\" \", \"Enter\", \"ArrowUp\", \"ArrowDown\"];\nvar SELECTION_KEYS = [\" \", \"Enter\"];\nvar SELECT_NAME = \"Select\";\nvar [Collection, useCollection, createCollectionScope] = createCollection(SELECT_NAME);\nvar [createSelectContext, createSelectScope] = createContextScope(SELECT_NAME, [\n createCollectionScope,\n createPopperScope\n]);\nvar usePopperScope = createPopperScope();\nvar [SelectProvider, useSelectContext] = createSelectContext(SELECT_NAME);\nvar [SelectNativeOptionsProvider, useSelectNativeOptionsContext] = createSelectContext(SELECT_NAME);\nvar Select = (props) => {\n const {\n __scopeSelect,\n children,\n open: openProp,\n defaultOpen,\n onOpenChange,\n value: valueProp,\n defaultValue,\n onValueChange,\n dir,\n name,\n autoComplete,\n disabled,\n required,\n form\n } = props;\n const popperScope = usePopperScope(__scopeSelect);\n const [trigger, setTrigger] = React.useState(null);\n const [valueNode, setValueNode] = React.useState(null);\n const [valueNodeHasChildren, setValueNodeHasChildren] = React.useState(false);\n const direction = useDirection(dir);\n const [open, setOpen] = useControllableState({\n prop: openProp,\n defaultProp: defaultOpen ?? false,\n onChange: onOpenChange,\n caller: SELECT_NAME\n });\n const [value, setValue] = useControllableState({\n prop: valueProp,\n defaultProp: defaultValue,\n onChange: onValueChange,\n caller: SELECT_NAME\n });\n const triggerPointerDownPosRef = React.useRef(null);\n const isFormControl = trigger ? form || !!trigger.closest(\"form\") : true;\n const [nativeOptionsSet, setNativeOptionsSet] = React.useState(/* @__PURE__ */ new Set());\n const nativeSelectKey = Array.from(nativeOptionsSet).map((option) => option.props.value).join(\";\");\n return /* @__PURE__ */ jsx(PopperPrimitive.Root, { ...popperScope, children: /* @__PURE__ */ jsxs(\n SelectProvider,\n {\n required,\n scope: __scopeSelect,\n trigger,\n onTriggerChange: setTrigger,\n valueNode,\n onValueNodeChange: setValueNode,\n valueNodeHasChildren,\n onValueNodeHasChildrenChange: setValueNodeHasChildren,\n contentId: useId(),\n value,\n onValueChange: setValue,\n open,\n onOpenChange: setOpen,\n dir: direction,\n triggerPointerDownPosRef,\n disabled,\n children: [\n /* @__PURE__ */ jsx(Collection.Provider, { scope: __scopeSelect, children: /* @__PURE__ */ jsx(\n SelectNativeOptionsProvider,\n {\n scope: props.__scopeSelect,\n onNativeOptionAdd: React.useCallback((option) => {\n setNativeOptionsSet((prev) => new Set(prev).add(option));\n }, []),\n onNativeOptionRemove: React.useCallback((option) => {\n setNativeOptionsSet((prev) => {\n const optionsSet = new Set(prev);\n optionsSet.delete(option);\n return optionsSet;\n });\n }, []),\n children\n }\n ) }),\n isFormControl ? /* @__PURE__ */ jsxs(\n SelectBubbleInput,\n {\n \"aria-hidden\": true,\n required,\n tabIndex: -1,\n name,\n autoComplete,\n value,\n onChange: (event) => setValue(event.target.value),\n disabled,\n form,\n children: [\n value === void 0 ? /* @__PURE__ */ jsx(\"option\", { value: \"\" }) : null,\n Array.from(nativeOptionsSet)\n ]\n },\n nativeSelectKey\n ) : null\n ]\n }\n ) });\n};\nSelect.displayName = SELECT_NAME;\nvar TRIGGER_NAME = \"SelectTrigger\";\nvar SelectTrigger = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeSelect, disabled = false, ...triggerProps } = props;\n const popperScope = usePopperScope(__scopeSelect);\n const context = useSelectContext(TRIGGER_NAME, __scopeSelect);\n const isDisabled = context.disabled || disabled;\n const composedRefs = useComposedRefs(forwardedRef, context.onTriggerChange);\n const getItems = useCollection(__scopeSelect);\n const pointerTypeRef = React.useRef(\"touch\");\n const [searchRef, handleTypeaheadSearch, resetTypeahead] = useTypeaheadSearch((search) => {\n const enabledItems = getItems().filter((item) => !item.disabled);\n const currentItem = enabledItems.find((item) => item.value === context.value);\n const nextItem = findNextItem(enabledItems, search, currentItem);\n if (nextItem !== void 0) {\n context.onValueChange(nextItem.value);\n }\n });\n const handleOpen = (pointerEvent) => {\n if (!isDisabled) {\n context.onOpenChange(true);\n resetTypeahead();\n }\n if (pointerEvent) {\n context.triggerPointerDownPosRef.current = {\n x: Math.round(pointerEvent.pageX),\n y: Math.round(pointerEvent.pageY)\n };\n }\n };\n return /* @__PURE__ */ jsx(PopperPrimitive.Anchor, { asChild: true, ...popperScope, children: /* @__PURE__ */ jsx(\n Primitive.button,\n {\n type: \"button\",\n role: \"combobox\",\n \"aria-controls\": context.contentId,\n \"aria-expanded\": context.open,\n \"aria-required\": context.required,\n \"aria-autocomplete\": \"none\",\n dir: context.dir,\n \"data-state\": context.open ? \"open\" : \"closed\",\n disabled: isDisabled,\n \"data-disabled\": isDisabled ? \"\" : void 0,\n \"data-placeholder\": shouldShowPlaceholder(context.value) ? \"\" : void 0,\n ...triggerProps,\n ref: composedRefs,\n onClick: composeEventHandlers(triggerProps.onClick, (event) => {\n event.currentTarget.focus();\n if (pointerTypeRef.current !== \"mouse\") {\n handleOpen(event);\n }\n }),\n onPointerDown: composeEventHandlers(triggerProps.onPointerDown, (event) => {\n pointerTypeRef.current = event.pointerType;\n const target = event.target;\n if (target.hasPointerCapture(event.pointerId)) {\n target.releasePointerCapture(event.pointerId);\n }\n if (event.button === 0 && event.ctrlKey === false && event.pointerType === \"mouse\") {\n handleOpen(event);\n event.preventDefault();\n }\n }),\n onKeyDown: composeEventHandlers(triggerProps.onKeyDown, (event) => {\n const isTypingAhead = searchRef.current !== \"\";\n const isModifierKey = event.ctrlKey || event.altKey || event.metaKey;\n if (!isModifierKey && event.key.length === 1) handleTypeaheadSearch(event.key);\n if (isTypingAhead && event.key === \" \") return;\n if (OPEN_KEYS.includes(event.key)) {\n handleOpen();\n event.preventDefault();\n }\n })\n }\n ) });\n }\n);\nSelectTrigger.displayName = TRIGGER_NAME;\nvar VALUE_NAME = \"SelectValue\";\nvar SelectValue = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeSelect, className, style, children, placeholder = \"\", ...valueProps } = props;\n const context = useSelectContext(VALUE_NAME, __scopeSelect);\n const { onValueNodeHasChildrenChange } = context;\n const hasChildren = children !== void 0;\n const composedRefs = useComposedRefs(forwardedRef, context.onValueNodeChange);\n useLayoutEffect(() => {\n onValueNodeHasChildrenChange(hasChildren);\n }, [onValueNodeHasChildrenChange, hasChildren]);\n return /* @__PURE__ */ jsx(\n Primitive.span,\n {\n ...valueProps,\n ref: composedRefs,\n style: { pointerEvents: \"none\" },\n children: shouldShowPlaceholder(context.value) ? /* @__PURE__ */ jsx(Fragment, { children: placeholder }) : children\n }\n );\n }\n);\nSelectValue.displayName = VALUE_NAME;\nvar ICON_NAME = \"SelectIcon\";\nvar SelectIcon = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeSelect, children, ...iconProps } = props;\n return /* @__PURE__ */ jsx(Primitive.span, { \"aria-hidden\": true, ...iconProps, ref: forwardedRef, children: children || \"\\u25BC\" });\n }\n);\nSelectIcon.displayName = ICON_NAME;\nvar PORTAL_NAME = \"SelectPortal\";\nvar SelectPortal = (props) => {\n return /* @__PURE__ */ jsx(PortalPrimitive, { asChild: true, ...props });\n};\nSelectPortal.displayName = PORTAL_NAME;\nvar CONTENT_NAME = \"SelectContent\";\nvar SelectContent = React.forwardRef(\n (props, forwardedRef) => {\n const context = useSelectContext(CONTENT_NAME, props.__scopeSelect);\n const [fragment, setFragment] = React.useState();\n useLayoutEffect(() => {\n setFragment(new DocumentFragment());\n }, []);\n if (!context.open) {\n const frag = fragment;\n return frag ? ReactDOM.createPortal(\n /* @__PURE__ */ jsx(SelectContentProvider, { scope: props.__scopeSelect, children: /* @__PURE__ */ jsx(Collection.Slot, { scope: props.__scopeSelect, children: /* @__PURE__ */ jsx(\"div\", { children: props.children }) }) }),\n frag\n ) : null;\n }\n return /* @__PURE__ */ jsx(SelectContentImpl, { ...props, ref: forwardedRef });\n }\n);\nSelectContent.displayName = CONTENT_NAME;\nvar CONTENT_MARGIN = 10;\nvar [SelectContentProvider, useSelectContentContext] = createSelectContext(CONTENT_NAME);\nvar CONTENT_IMPL_NAME = \"SelectContentImpl\";\nvar Slot = createSlot(\"SelectContent.RemoveScroll\");\nvar SelectContentImpl = React.forwardRef(\n (props, forwardedRef) => {\n const {\n __scopeSelect,\n position = \"item-aligned\",\n onCloseAutoFocus,\n onEscapeKeyDown,\n onPointerDownOutside,\n //\n // PopperContent props\n side,\n sideOffset,\n align,\n alignOffset,\n arrowPadding,\n collisionBoundary,\n collisionPadding,\n sticky,\n hideWhenDetached,\n avoidCollisions,\n //\n ...contentProps\n } = props;\n const context = useSelectContext(CONTENT_NAME, __scopeSelect);\n const [content, setContent] = React.useState(null);\n const [viewport, setViewport] = React.useState(null);\n const composedRefs = useComposedRefs(forwardedRef, (node) => setContent(node));\n const [selectedItem, setSelectedItem] = React.useState(null);\n const [selectedItemText, setSelectedItemText] = React.useState(\n null\n );\n const getItems = useCollection(__scopeSelect);\n const [isPositioned, setIsPositioned] = React.useState(false);\n const firstValidItemFoundRef = React.useRef(false);\n React.useEffect(() => {\n if (content) return hideOthers(content);\n }, [content]);\n useFocusGuards();\n const focusFirst = React.useCallback(\n (candidates) => {\n const [firstItem, ...restItems] = getItems().map((item) => item.ref.current);\n const [lastItem] = restItems.slice(-1);\n const PREVIOUSLY_FOCUSED_ELEMENT = document.activeElement;\n for (const candidate of candidates) {\n if (candidate === PREVIOUSLY_FOCUSED_ELEMENT) return;\n candidate?.scrollIntoView({ block: \"nearest\" });\n if (candidate === firstItem && viewport) viewport.scrollTop = 0;\n if (candidate === lastItem && viewport) viewport.scrollTop = viewport.scrollHeight;\n candidate?.focus();\n if (document.activeElement !== PREVIOUSLY_FOCUSED_ELEMENT) return;\n }\n },\n [getItems, viewport]\n );\n const focusSelectedItem = React.useCallback(\n () => focusFirst([selectedItem, content]),\n [focusFirst, selectedItem, content]\n );\n React.useEffect(() => {\n if (isPositioned) {\n focusSelectedItem();\n }\n }, [isPositioned, focusSelectedItem]);\n const { onOpenChange, triggerPointerDownPosRef } = context;\n React.useEffect(() => {\n if (content) {\n let pointerMoveDelta = { x: 0, y: 0 };\n const handlePointerMove = (event) => {\n pointerMoveDelta = {\n x: Math.abs(Math.round(event.pageX) - (triggerPointerDownPosRef.current?.x ?? 0)),\n y: Math.abs(Math.round(event.pageY) - (triggerPointerDownPosRef.current?.y ?? 0))\n };\n };\n const handlePointerUp = (event) => {\n if (pointerMoveDelta.x <= 10 && pointerMoveDelta.y <= 10) {\n event.preventDefault();\n } else {\n if (!content.contains(event.target)) {\n onOpenChange(false);\n }\n }\n document.removeEventListener(\"pointermove\", handlePointerMove);\n triggerPointerDownPosRef.current = null;\n };\n if (triggerPointerDownPosRef.current !== null) {\n document.addEventListener(\"pointermove\", handlePointerMove);\n document.addEventListener(\"pointerup\", handlePointerUp, { capture: true, once: true });\n }\n return () => {\n document.removeEventListener(\"pointermove\", handlePointerMove);\n document.removeEventListener(\"pointerup\", handlePointerUp, { capture: true });\n };\n }\n }, [content, onOpenChange, triggerPointerDownPosRef]);\n React.useEffect(() => {\n const close = () => onOpenChange(false);\n window.addEventListener(\"blur\", close);\n window.addEventListener(\"resize\", close);\n return () => {\n window.removeEventListener(\"blur\", close);\n window.removeEventListener(\"resize\", close);\n };\n }, [onOpenChange]);\n const [searchRef, handleTypeaheadSearch] = useTypeaheadSearch((search) => {\n const enabledItems = getItems().filter((item) => !item.disabled);\n const currentItem = enabledItems.find((item) => item.ref.current === document.activeElement);\n const nextItem = findNextItem(enabledItems, search, currentItem);\n if (nextItem) {\n setTimeout(() => nextItem.ref.current.focus());\n }\n });\n const itemRefCallback = React.useCallback(\n (node, value, disabled) => {\n const isFirstValidItem = !firstValidItemFoundRef.current && !disabled;\n const isSelectedItem = context.value !== void 0 && context.value === value;\n if (isSelectedItem || isFirstValidItem) {\n setSelectedItem(node);\n if (isFirstValidItem) firstValidItemFoundRef.current = true;\n }\n },\n [context.value]\n );\n const handleItemLeave = React.useCallback(() => content?.focus(), [content]);\n const itemTextRefCallback = React.useCallback(\n (node, value, disabled) => {\n const isFirstValidItem = !firstValidItemFoundRef.current && !disabled;\n const isSelectedItem = context.value !== void 0 && context.value === value;\n if (isSelectedItem || isFirstValidItem) {\n setSelectedItemText(node);\n }\n },\n [context.value]\n );\n const SelectPosition = position === \"popper\" ? SelectPopperPosition : SelectItemAlignedPosition;\n const popperContentProps = SelectPosition === SelectPopperPosition ? {\n side,\n sideOffset,\n align,\n alignOffset,\n arrowPadding,\n collisionBoundary,\n collisionPadding,\n sticky,\n hideWhenDetached,\n avoidCollisions\n } : {};\n return /* @__PURE__ */ jsx(\n SelectContentProvider,\n {\n scope: __scopeSelect,\n content,\n viewport,\n onViewportChange: setViewport,\n itemRefCallback,\n selectedItem,\n onItemLeave: handleItemLeave,\n itemTextRefCallback,\n focusSelectedItem,\n selectedItemText,\n position,\n isPositioned,\n searchRef,\n children: /* @__PURE__ */ jsx(RemoveScroll, { as: Slot, allowPinchZoom: true, children: /* @__PURE__ */ jsx(\n FocusScope,\n {\n asChild: true,\n trapped: context.open,\n onMountAutoFocus: (event) => {\n event.preventDefault();\n },\n onUnmountAutoFocus: composeEventHandlers(onCloseAutoFocus, (event) => {\n context.trigger?.focus({ preventScroll: true });\n event.preventDefault();\n }),\n children: /* @__PURE__ */ jsx(\n DismissableLayer,\n {\n asChild: true,\n disableOutsidePointerEvents: true,\n onEscapeKeyDown,\n onPointerDownOutside,\n onFocusOutside: (event) => event.preventDefault(),\n onDismiss: () => context.onOpenChange(false),\n children: /* @__PURE__ */ jsx(\n SelectPosition,\n {\n role: \"listbox\",\n id: context.contentId,\n \"data-state\": context.open ? \"open\" : \"closed\",\n dir: context.dir,\n onContextMenu: (event) => event.preventDefault(),\n ...contentProps,\n ...popperContentProps,\n onPlaced: () => setIsPositioned(true),\n ref: composedRefs,\n style: {\n // flex layout so we can place the scroll buttons properly\n display: \"flex\",\n flexDirection: \"column\",\n // reset the outline by default as the content MAY get focused\n outline: \"none\",\n ...contentProps.style\n },\n onKeyDown: composeEventHandlers(contentProps.onKeyDown, (event) => {\n const isModifierKey = event.ctrlKey || event.altKey || event.metaKey;\n if (event.key === \"Tab\") event.preventDefault();\n if (!isModifierKey && event.key.length === 1) handleTypeaheadSearch(event.key);\n if ([\"ArrowUp\", \"ArrowDown\", \"Home\", \"End\"].includes(event.key)) {\n const items = getItems().filter((item) => !item.disabled);\n let candidateNodes = items.map((item) => item.ref.current);\n if ([\"ArrowUp\", \"End\"].includes(event.key)) {\n candidateNodes = candidateNodes.slice().reverse();\n }\n if ([\"ArrowUp\", \"ArrowDown\"].includes(event.key)) {\n const currentElement = event.target;\n const currentIndex = candidateNodes.indexOf(currentElement);\n candidateNodes = candidateNodes.slice(currentIndex + 1);\n }\n setTimeout(() => focusFirst(candidateNodes));\n event.preventDefault();\n }\n })\n }\n )\n }\n )\n }\n ) })\n }\n );\n }\n);\nSelectContentImpl.displayName = CONTENT_IMPL_NAME;\nvar ITEM_ALIGNED_POSITION_NAME = \"SelectItemAlignedPosition\";\nvar SelectItemAlignedPosition = React.forwardRef((props, forwardedRef) => {\n const { __scopeSelect, onPlaced, ...popperProps } = props;\n const context = useSelectContext(CONTENT_NAME, __scopeSelect);\n const contentContext = useSelectContentContext(CONTENT_NAME, __scopeSelect);\n const [contentWrapper, setContentWrapper] = React.useState(null);\n const [content, setContent] = React.useState(null);\n const composedRefs = useComposedRefs(forwardedRef, (node) => setContent(node));\n const getItems = useCollection(__scopeSelect);\n const shouldExpandOnScrollRef = React.useRef(false);\n const shouldRepositionRef = React.useRef(true);\n const { viewport, selectedItem, selectedItemText, focusSelectedItem } = contentContext;\n const position = React.useCallback(() => {\n if (context.trigger && context.valueNode && contentWrapper && content && viewport && selectedItem && selectedItemText) {\n const triggerRect = context.trigger.getBoundingClientRect();\n const contentRect = content.getBoundingClientRect();\n const valueNodeRect = context.valueNode.getBoundingClientRect();\n const itemTextRect = selectedItemText.getBoundingClientRect();\n if (context.dir !== \"rtl\") {\n const itemTextOffset = itemTextRect.left - contentRect.left;\n const left = valueNodeRect.left - itemTextOffset;\n const leftDelta = triggerRect.left - left;\n const minContentWidth = triggerRect.width + leftDelta;\n const contentWidth = Math.max(minContentWidth, contentRect.width);\n const rightEdge = window.innerWidth - CONTENT_MARGIN;\n const clampedLeft = clamp(left, [\n CONTENT_MARGIN,\n // Prevents the content from going off the starting edge of the\n // viewport. It may still go off the ending edge, but this can be\n // controlled by the user since they may want to manage overflow in a\n // specific way.\n // https://github.com/radix-ui/primitives/issues/2049\n Math.max(CONTENT_MARGIN, rightEdge - contentWidth)\n ]);\n contentWrapper.style.minWidth = minContentWidth + \"px\";\n contentWrapper.style.left = clampedLeft + \"px\";\n } else {\n const itemTextOffset = contentRect.right - itemTextRect.right;\n const right = window.innerWidth - valueNodeRect.right - itemTextOffset;\n const rightDelta = window.innerWidth - triggerRect.right - right;\n const minContentWidth = triggerRect.width + rightDelta;\n const contentWidth = Math.max(minContentWidth, contentRect.width);\n const leftEdge = window.innerWidth - CONTENT_MARGIN;\n const clampedRight = clamp(right, [\n CONTENT_MARGIN,\n Math.max(CONTENT_MARGIN, leftEdge - contentWidth)\n ]);\n contentWrapper.style.minWidth = minContentWidth + \"px\";\n contentWrapper.style.right = clampedRight + \"px\";\n }\n const items = getItems();\n const availableHeight = window.innerHeight - CONTENT_MARGIN * 2;\n const itemsHeight = viewport.scrollHeight;\n const contentStyles = window.getComputedStyle(content);\n const contentBorderTopWidth = parseInt(contentStyles.borderTopWidth, 10);\n const contentPaddingTop = parseInt(contentStyles.paddingTop, 10);\n const contentBorderBottomWidth = parseInt(contentStyles.borderBottomWidth, 10);\n const contentPaddingBottom = parseInt(contentStyles.paddingBottom, 10);\n const fullContentHeight = contentBorderTopWidth + contentPaddingTop + itemsHeight + contentPaddingBottom + contentBorderBottomWidth;\n const minContentHeight = Math.min(selectedItem.offsetHeight * 5, fullContentHeight);\n const viewportStyles = window.getComputedStyle(viewport);\n const viewportPaddingTop = parseInt(viewportStyles.paddingTop, 10);\n const viewportPaddingBottom = parseInt(viewportStyles.paddingBottom, 10);\n const topEdgeToTriggerMiddle = triggerRect.top + triggerRect.height / 2 - CONTENT_MARGIN;\n const triggerMiddleToBottomEdge = availableHeight - topEdgeToTriggerMiddle;\n const selectedItemHalfHeight = selectedItem.offsetHeight / 2;\n const itemOffsetMiddle = selectedItem.offsetTop + selectedItemHalfHeight;\n const contentTopToItemMiddle = contentBorderTopWidth + contentPaddingTop + itemOffsetMiddle;\n const itemMiddleToContentBottom = fullContentHeight - contentTopToItemMiddle;\n const willAlignWithoutTopOverflow = contentTopToItemMiddle <= topEdgeToTriggerMiddle;\n if (willAlignWithoutTopOverflow) {\n const isLastItem = items.length > 0 && selectedItem === items[items.length - 1].ref.current;\n contentWrapper.style.bottom = \"0px\";\n const viewportOffsetBottom = content.clientHeight - viewport.offsetTop - viewport.offsetHeight;\n const clampedTriggerMiddleToBottomEdge = Math.max(\n triggerMiddleToBottomEdge,\n selectedItemHalfHeight + // viewport might have padding bottom, include it to avoid a scrollable viewport\n (isLastItem ? viewportPaddingBottom : 0) + viewportOffsetBottom + contentBorderBottomWidth\n );\n const height = contentTopToItemMiddle + clampedTriggerMiddleToBottomEdge;\n contentWrapper.style.height = height + \"px\";\n } else {\n const isFirstItem = items.length > 0 && selectedItem === items[0].ref.current;\n contentWrapper.style.top = \"0px\";\n const clampedTopEdgeToTriggerMiddle = Math.max(\n topEdgeToTriggerMiddle,\n contentBorderTopWidth + viewport.offsetTop + // viewport might have padding top, include it to avoid a scrollable viewport\n (isFirstItem ? viewportPaddingTop : 0) + selectedItemHalfHeight\n );\n const height = clampedTopEdgeToTriggerMiddle + itemMiddleToContentBottom;\n contentWrapper.style.height = height + \"px\";\n viewport.scrollTop = contentTopToItemMiddle - topEdgeToTriggerMiddle + viewport.offsetTop;\n }\n contentWrapper.style.margin = `${CONTENT_MARGIN}px 0`;\n contentWrapper.style.minHeight = minContentHeight + \"px\";\n contentWrapper.style.maxHeight = availableHeight + \"px\";\n onPlaced?.();\n requestAnimationFrame(() => shouldExpandOnScrollRef.current = true);\n }\n }, [\n getItems,\n context.trigger,\n context.valueNode,\n contentWrapper,\n content,\n viewport,\n selectedItem,\n selectedItemText,\n context.dir,\n onPlaced\n ]);\n useLayoutEffect(() => position(), [position]);\n const [contentZIndex, setContentZIndex] = React.useState();\n useLayoutEffect(() => {\n if (content) setContentZIndex(window.getComputedStyle(content).zIndex);\n }, [content]);\n const handleScrollButtonChange = React.useCallback(\n (node) => {\n if (node && shouldRepositionRef.current === true) {\n position();\n focusSelectedItem?.();\n shouldRepositionRef.current = false;\n }\n },\n [position, focusSelectedItem]\n );\n return /* @__PURE__ */ jsx(\n SelectViewportProvider,\n {\n scope: __scopeSelect,\n contentWrapper,\n shouldExpandOnScrollRef,\n onScrollButtonChange: handleScrollButtonChange,\n children: /* @__PURE__ */ jsx(\n \"div\",\n {\n ref: setContentWrapper,\n style: {\n display: \"flex\",\n flexDirection: \"column\",\n position: \"fixed\",\n zIndex: contentZIndex\n },\n children: /* @__PURE__ */ jsx(\n Primitive.div,\n {\n ...popperProps,\n ref: composedRefs,\n style: {\n // When we get the height of the content, it includes borders. If we were to set\n // the height without having `boxSizing: 'border-box'` it would be too big.\n boxSizing: \"border-box\",\n // We need to ensure the content doesn't get taller than the wrapper\n maxHeight: \"100%\",\n ...popperProps.style\n }\n }\n )\n }\n )\n }\n );\n});\nSelectItemAlignedPosition.displayName = ITEM_ALIGNED_POSITION_NAME;\nvar POPPER_POSITION_NAME = \"SelectPopperPosition\";\nvar SelectPopperPosition = React.forwardRef((props, forwardedRef) => {\n const {\n __scopeSelect,\n align = \"start\",\n collisionPadding = CONTENT_MARGIN,\n ...popperProps\n } = props;\n const popperScope = usePopperScope(__scopeSelect);\n return /* @__PURE__ */ jsx(\n PopperPrimitive.Content,\n {\n ...popperScope,\n ...popperProps,\n ref: forwardedRef,\n align,\n collisionPadding,\n style: {\n // Ensure border-box for floating-ui calculations\n boxSizing: \"border-box\",\n ...popperProps.style,\n // re-namespace exposed content custom properties\n ...{\n \"--radix-select-content-transform-origin\": \"var(--radix-popper-transform-origin)\",\n \"--radix-select-content-available-width\": \"var(--radix-popper-available-width)\",\n \"--radix-select-content-available-height\": \"var(--radix-popper-available-height)\",\n \"--radix-select-trigger-width\": \"var(--radix-popper-anchor-width)\",\n \"--radix-select-trigger-height\": \"var(--radix-popper-anchor-height)\"\n }\n }\n }\n );\n});\nSelectPopperPosition.displayName = POPPER_POSITION_NAME;\nvar [SelectViewportProvider, useSelectViewportContext] = createSelectContext(CONTENT_NAME, {});\nvar VIEWPORT_NAME = \"SelectViewport\";\nvar SelectViewport = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeSelect, nonce, ...viewportProps } = props;\n const contentContext = useSelectContentContext(VIEWPORT_NAME, __scopeSelect);\n const viewportContext = useSelectViewportContext(VIEWPORT_NAME, __scopeSelect);\n const composedRefs = useComposedRefs(forwardedRef, contentContext.onViewportChange);\n const prevScrollTopRef = React.useRef(0);\n return /* @__PURE__ */ jsxs(Fragment, { children: [\n /* @__PURE__ */ jsx(\n \"style\",\n {\n dangerouslySetInnerHTML: {\n __html: `[data-radix-select-viewport]{scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;}[data-radix-select-viewport]::-webkit-scrollbar{display:none}`\n },\n nonce\n }\n ),\n /* @__PURE__ */ jsx(Collection.Slot, { scope: __scopeSelect, children: /* @__PURE__ */ jsx(\n Primitive.div,\n {\n \"data-radix-select-viewport\": \"\",\n role: \"presentation\",\n ...viewportProps,\n ref: composedRefs,\n style: {\n // we use position: 'relative' here on the `viewport` so that when we call\n // `selectedItem.offsetTop` in calculations, the offset is relative to the viewport\n // (independent of the scrollUpButton).\n position: \"relative\",\n flex: 1,\n // Viewport should only be scrollable in the vertical direction.\n // This won't work in vertical writing modes, so we'll need to\n // revisit this if/when that is supported\n // https://developer.chrome.com/blog/vertical-form-controls\n overflow: \"hidden auto\",\n ...viewportProps.style\n },\n onScroll: composeEventHandlers(viewportProps.onScroll, (event) => {\n const viewport = event.currentTarget;\n const { contentWrapper, shouldExpandOnScrollRef } = viewportContext;\n if (shouldExpandOnScrollRef?.current && contentWrapper) {\n const scrolledBy = Math.abs(prevScrollTopRef.current - viewport.scrollTop);\n if (scrolledBy > 0) {\n const availableHeight = window.innerHeight - CONTENT_MARGIN * 2;\n const cssMinHeight = parseFloat(contentWrapper.style.minHeight);\n const cssHeight = parseFloat(contentWrapper.style.height);\n const prevHeight = Math.max(cssMinHeight, cssHeight);\n if (prevHeight < availableHeight) {\n const nextHeight = prevHeight + scrolledBy;\n const clampedNextHeight = Math.min(availableHeight, nextHeight);\n const heightDiff = nextHeight - clampedNextHeight;\n contentWrapper.style.height = clampedNextHeight + \"px\";\n if (contentWrapper.style.bottom === \"0px\") {\n viewport.scrollTop = heightDiff > 0 ? heightDiff : 0;\n contentWrapper.style.justifyContent = \"flex-end\";\n }\n }\n }\n }\n prevScrollTopRef.current = viewport.scrollTop;\n })\n }\n ) })\n ] });\n }\n);\nSelectViewport.displayName = VIEWPORT_NAME;\nvar GROUP_NAME = \"SelectGroup\";\nvar [SelectGroupContextProvider, useSelectGroupContext] = createSelectContext(GROUP_NAME);\nvar SelectGroup = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeSelect, ...groupProps } = props;\n const groupId = useId();\n return /* @__PURE__ */ jsx(SelectGroupContextProvider, { scope: __scopeSelect, id: groupId, children: /* @__PURE__ */ jsx(Primitive.div, { role: \"group\", \"aria-labelledby\": groupId, ...groupProps, ref: forwardedRef }) });\n }\n);\nSelectGroup.displayName = GROUP_NAME;\nvar LABEL_NAME = \"SelectLabel\";\nvar SelectLabel = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeSelect, ...labelProps } = props;\n const groupContext = useSelectGroupContext(LABEL_NAME, __scopeSelect);\n return /* @__PURE__ */ jsx(Primitive.div, { id: groupContext.id, ...labelProps, ref: forwardedRef });\n }\n);\nSelectLabel.displayName = LABEL_NAME;\nvar ITEM_NAME = \"SelectItem\";\nvar [SelectItemContextProvider, useSelectItemContext] = createSelectContext(ITEM_NAME);\nvar SelectItem = React.forwardRef(\n (props, forwardedRef) => {\n const {\n __scopeSelect,\n value,\n disabled = false,\n textValue: textValueProp,\n ...itemProps\n } = props;\n const context = useSelectContext(ITEM_NAME, __scopeSelect);\n const contentContext = useSelectContentContext(ITEM_NAME, __scopeSelect);\n const isSelected = context.value === value;\n const [textValue, setTextValue] = React.useState(textValueProp ?? \"\");\n const [isFocused, setIsFocused] = React.useState(false);\n const composedRefs = useComposedRefs(\n forwardedRef,\n (node) => contentContext.itemRefCallback?.(node, value, disabled)\n );\n const textId = useId();\n const pointerTypeRef = React.useRef(\"touch\");\n const handleSelect = () => {\n if (!disabled) {\n context.onValueChange(value);\n context.onOpenChange(false);\n }\n };\n if (value === \"\") {\n throw new Error(\n \"A <Select.Item /> must have a value prop that is not an empty string. This is because the Select value can be set to an empty string to clear the selection and show the placeholder.\"\n );\n }\n return /* @__PURE__ */ jsx(\n SelectItemContextProvider,\n {\n scope: __scopeSelect,\n value,\n disabled,\n textId,\n isSelected,\n onItemTextChange: React.useCallback((node) => {\n setTextValue((prevTextValue) => prevTextValue || (node?.textContent ?? \"\").trim());\n }, []),\n children: /* @__PURE__ */ jsx(\n Collection.ItemSlot,\n {\n scope: __scopeSelect,\n value,\n disabled,\n textValue,\n children: /* @__PURE__ */ jsx(\n Primitive.div,\n {\n role: \"option\",\n \"aria-labelledby\": textId,\n \"data-highlighted\": isFocused ? \"\" : void 0,\n \"aria-selected\": isSelected && isFocused,\n \"data-state\": isSelected ? \"checked\" : \"unchecked\",\n \"aria-disabled\": disabled || void 0,\n \"data-disabled\": disabled ? \"\" : void 0,\n tabIndex: disabled ? void 0 : -1,\n ...itemProps,\n ref: composedRefs,\n onFocus: composeEventHandlers(itemProps.onFocus, () => setIsFocused(true)),\n onBlur: composeEventHandlers(itemProps.onBlur, () => setIsFocused(false)),\n onClick: composeEventHandlers(itemProps.onClick, () => {\n if (pointerTypeRef.current !== \"mouse\") handleSelect();\n }),\n onPointerUp: composeEventHandlers(itemProps.onPointerUp, () => {\n if (pointerTypeRef.current === \"mouse\") handleSelect();\n }),\n onPointerDown: composeEventHandlers(itemProps.onPointerDown, (event) => {\n pointerTypeRef.current = event.pointerType;\n }),\n onPointerMove: composeEventHandlers(itemProps.onPointerMove, (event) => {\n pointerTypeRef.current = event.pointerType;\n if (disabled) {\n contentContext.onItemLeave?.();\n } else if (pointerTypeRef.current === \"mouse\") {\n event.currentTarget.focus({ preventScroll: true });\n }\n }),\n onPointerLeave: composeEventHandlers(itemProps.onPointerLeave, (event) => {\n if (event.currentTarget === document.activeElement) {\n contentContext.onItemLeave?.();\n }\n }),\n onKeyDown: composeEventHandlers(itemProps.onKeyDown, (event) => {\n const isTypingAhead = contentContext.searchRef?.current !== \"\";\n if (isTypingAhead && event.key === \" \") return;\n if (SELECTION_KEYS.includes(event.key)) handleSelect();\n if (event.key === \" \") event.preventDefault();\n })\n }\n )\n }\n )\n }\n );\n }\n);\nSelectItem.displayName = ITEM_NAME;\nvar ITEM_TEXT_NAME = \"SelectItemText\";\nvar SelectItemText = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeSelect, className, style, ...itemTextProps } = props;\n const context = useSelectContext(ITEM_TEXT_NAME, __scopeSelect);\n const contentContext = useSelectContentContext(ITEM_TEXT_NAME, __scopeSelect);\n const itemContext = useSelectItemContext(ITEM_TEXT_NAME, __scopeSelect);\n const nativeOptionsContext = useSelectNativeOptionsContext(ITEM_TEXT_NAME, __scopeSelect);\n const [itemTextNode, setItemTextNode] = React.useState(null);\n const composedRefs = useComposedRefs(\n forwardedRef,\n (node) => setItemTextNode(node),\n itemContext.onItemTextChange,\n (node) => contentContext.itemTextRefCallback?.(node, itemContext.value, itemContext.disabled)\n );\n const textContent = itemTextNode?.textContent;\n const nativeOption = React.useMemo(\n () => /* @__PURE__ */ jsx(\"option\", { value: itemContext.value, disabled: itemContext.disabled, children: textContent }, itemContext.value),\n [itemContext.disabled, itemContext.value, textContent]\n );\n const { onNativeOptionAdd, onNativeOptionRemove } = nativeOptionsContext;\n useLayoutEffect(() => {\n onNativeOptionAdd(nativeOption);\n return () => onNativeOptionRemove(nativeOption);\n }, [onNativeOptionAdd, onNativeOptionRemove, nativeOption]);\n return /* @__PURE__ */ jsxs(Fragment, { children: [\n /* @__PURE__ */ jsx(Primitive.span, { id: itemContext.textId, ...itemTextProps, ref: composedRefs }),\n itemContext.isSelected && context.valueNode && !context.valueNodeHasChildren ? ReactDOM.createPortal(itemTextProps.children, context.valueNode) : null\n ] });\n }\n);\nSelectItemText.displayName = ITEM_TEXT_NAME;\nvar ITEM_INDICATOR_NAME = \"SelectItemIndicator\";\nvar SelectItemIndicator = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeSelect, ...itemIndicatorProps } = props;\n const itemContext = useSelectItemContext(ITEM_INDICATOR_NAME, __scopeSelect);\n return itemContext.isSelected ? /* @__PURE__ */ jsx(Primitive.span, { \"aria-hidden\": true, ...itemIndicatorProps, ref: forwardedRef }) : null;\n }\n);\nSelectItemIndicator.displayName = ITEM_INDICATOR_NAME;\nvar SCROLL_UP_BUTTON_NAME = \"SelectScrollUpButton\";\nvar SelectScrollUpButton = React.forwardRef((props, forwardedRef) => {\n const contentContext = useSelectContentContext(SCROLL_UP_BUTTON_NAME, props.__scopeSelect);\n const viewportContext = useSelectViewportContext(SCROLL_UP_BUTTON_NAME, props.__scopeSelect);\n const [canScrollUp, setCanScrollUp] = React.useState(false);\n const composedRefs = useComposedRefs(forwardedRef, viewportContext.onScrollButtonChange);\n useLayoutEffect(() => {\n if (contentContext.viewport && contentContext.isPositioned) {\n let handleScroll2 = function() {\n const canScrollUp2 = viewport.scrollTop > 0;\n setCanScrollUp(canScrollUp2);\n };\n var handleScroll = handleScroll2;\n const viewport = contentContext.viewport;\n handleScroll2();\n viewport.addEventListener(\"scroll\", handleScroll2);\n return () => viewport.removeEventListener(\"scroll\", handleScroll2);\n }\n }, [contentContext.viewport, contentContext.isPositioned]);\n return canScrollUp ? /* @__PURE__ */ jsx(\n SelectScrollButtonImpl,\n {\n ...props,\n ref: composedRefs,\n onAutoScroll: () => {\n const { viewport, selectedItem } = contentContext;\n if (viewport && selectedItem) {\n viewport.scrollTop = viewport.scrollTop - selectedItem.offsetHeight;\n }\n }\n }\n ) : null;\n});\nSelectScrollUpButton.displayName = SCROLL_UP_BUTTON_NAME;\nvar SCROLL_DOWN_BUTTON_NAME = \"SelectScrollDownButton\";\nvar SelectScrollDownButton = React.forwardRef((props, forwardedRef) => {\n const contentContext = useSelectContentContext(SCROLL_DOWN_BUTTON_NAME, props.__scopeSelect);\n const viewportContext = useSelectViewportContext(SCROLL_DOWN_BUTTON_NAME, props.__scopeSelect);\n const [canScrollDown, setCanScrollDown] = React.useState(false);\n const composedRefs = useComposedRefs(forwardedRef, viewportContext.onScrollButtonChange);\n useLayoutEffect(() => {\n if (contentContext.viewport && contentContext.isPositioned) {\n let handleScroll2 = function() {\n const maxScroll = viewport.scrollHeight - viewport.clientHeight;\n const canScrollDown2 = Math.ceil(viewport.scrollTop) < maxScroll;\n setCanScrollDown(canScrollDown2);\n };\n var handleScroll = handleScroll2;\n const viewport = contentContext.viewport;\n handleScroll2();\n viewport.addEventListener(\"scroll\", handleScroll2);\n return () => viewport.removeEventListener(\"scroll\", handleScroll2);\n }\n }, [contentContext.viewport, contentContext.isPositioned]);\n return canScrollDown ? /* @__PURE__ */ jsx(\n SelectScrollButtonImpl,\n {\n ...props,\n ref: composedRefs,\n onAutoScroll: () => {\n const { viewport, selectedItem } = contentContext;\n if (viewport && selectedItem) {\n viewport.scrollTop = viewport.scrollTop + selectedItem.offsetHeight;\n }\n }\n }\n ) : null;\n});\nSelectScrollDownButton.displayName = SCROLL_DOWN_BUTTON_NAME;\nvar SelectScrollButtonImpl = React.forwardRef((props, forwardedRef) => {\n const { __scopeSelect, onAutoScroll, ...scrollIndicatorProps } = props;\n const contentContext = useSelectContentContext(\"SelectScrollButton\", __scopeSelect);\n const autoScrollTimerRef = React.useRef(null);\n const getItems = useCollection(__scopeSelect);\n const clearAutoScrollTimer = React.useCallback(() => {\n if (autoScrollTimerRef.current !== null) {\n window.clearInterval(autoScrollTimerRef.current);\n autoScrollTimerRef.current = null;\n }\n }, []);\n React.useEffect(() => {\n return () => clearAutoScrollTimer();\n }, [clearAutoScrollTimer]);\n useLayoutEffect(() => {\n const activeItem = getItems().find((item) => item.ref.current === document.activeElement);\n activeItem?.ref.current?.scrollIntoView({ block: \"nearest\" });\n }, [getItems]);\n return /* @__PURE__ */ jsx(\n Primitive.div,\n {\n \"aria-hidden\": true,\n ...scrollIndicatorProps,\n ref: forwardedRef,\n style: { flexShrink: 0, ...scrollIndicatorProps.style },\n onPointerDown: composeEventHandlers(scrollIndicatorProps.onPointerDown, () => {\n if (autoScrollTimerRef.current === null) {\n autoScrollTimerRef.current = window.setInterval(onAutoScroll, 50);\n }\n }),\n onPointerMove: composeEventHandlers(scrollIndicatorProps.onPointerMove, () => {\n contentContext.onItemLeave?.();\n if (autoScrollTimerRef.current === null) {\n autoScrollTimerRef.current = window.setInterval(onAutoScroll, 50);\n }\n }),\n onPointerLeave: composeEventHandlers(scrollIndicatorProps.onPointerLeave, () => {\n clearAutoScrollTimer();\n })\n }\n );\n});\nvar SEPARATOR_NAME = \"SelectSeparator\";\nvar SelectSeparator = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeSelect, ...separatorProps } = props;\n return /* @__PURE__ */ jsx(Primitive.div, { \"aria-hidden\": true, ...separatorProps, ref: forwardedRef });\n }\n);\nSelectSeparator.displayName = SEPARATOR_NAME;\nvar ARROW_NAME = \"SelectArrow\";\nvar SelectArrow = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeSelect, ...arrowProps } = props;\n const popperScope = usePopperScope(__scopeSelect);\n const context = useSelectContext(ARROW_NAME, __scopeSelect);\n const contentContext = useSelectContentContext(ARROW_NAME, __scopeSelect);\n return context.open && contentContext.position === \"popper\" ? /* @__PURE__ */ jsx(PopperPrimitive.Arrow, { ...popperScope, ...arrowProps, ref: forwardedRef }) : null;\n }\n);\nSelectArrow.displayName = ARROW_NAME;\nvar BUBBLE_INPUT_NAME = \"SelectBubbleInput\";\nvar SelectBubbleInput = React.forwardRef(\n ({ __scopeSelect, value, ...props }, forwardedRef) => {\n const ref = React.useRef(null);\n const composedRefs = useComposedRefs(forwardedRef, ref);\n const prevValue = usePrevious(value);\n React.useEffect(() => {\n const select = ref.current;\n if (!select) return;\n const selectProto = window.HTMLSelectElement.prototype;\n const descriptor = Object.getOwnPropertyDescriptor(\n selectProto,\n \"value\"\n );\n const setValue = descriptor.set;\n if (prevValue !== value && setValue) {\n const event = new Event(\"change\", { bubbles: true });\n setValue.call(select, value);\n select.dispatchEvent(event);\n }\n }, [prevValue, value]);\n return /* @__PURE__ */ jsx(\n Primitive.select,\n {\n ...props,\n style: { ...VISUALLY_HIDDEN_STYLES, ...props.style },\n ref: composedRefs,\n defaultValue: value\n }\n );\n }\n);\nSelectBubbleInput.displayName = BUBBLE_INPUT_NAME;\nfunction shouldShowPlaceholder(value) {\n return value === \"\" || value === void 0;\n}\nfunction useTypeaheadSearch(onSearchChange) {\n const handleSearchChange = useCallbackRef(onSearchChange);\n const searchRef = React.useRef(\"\");\n const timerRef = React.useRef(0);\n const handleTypeaheadSearch = React.useCallback(\n (key) => {\n const search = searchRef.current + key;\n handleSearchChange(search);\n (function updateSearch(value) {\n searchRef.current = value;\n window.clearTimeout(timerRef.current);\n if (value !== \"\") timerRef.current = window.setTimeout(() => updateSearch(\"\"), 1e3);\n })(search);\n },\n [handleSearchChange]\n );\n const resetTypeahead = React.useCallback(() => {\n searchRef.current = \"\";\n window.clearTimeout(timerRef.current);\n }, []);\n React.useEffect(() => {\n return () => window.clearTimeout(timerRef.current);\n }, []);\n return [searchRef, handleTypeaheadSearch, resetTypeahead];\n}\nfunction findNextItem(items, search, currentItem) {\n const isRepeated = search.length > 1 && Array.from(search).every((char) => char === search[0]);\n const normalizedSearch = isRepeated ? search[0] : search;\n const currentItemIndex = currentItem ? items.indexOf(currentItem) : -1;\n let wrappedItems = wrapArray(items, Math.max(currentItemIndex, 0));\n const excludeCurrentItem = normalizedSearch.length === 1;\n if (excludeCurrentItem) wrappedItems = wrappedItems.filter((v) => v !== currentItem);\n const nextItem = wrappedItems.find(\n (item) => item.textValue.toLowerCase().startsWith(normalizedSearch.toLowerCase())\n );\n return nextItem !== currentItem ? nextItem : void 0;\n}\nfunction wrapArray(array, startIndex) {\n return array.map((_, index) => array[(startIndex + index) % array.length]);\n}\nvar Root2 = Select;\nvar Trigger = SelectTrigger;\nvar Value = SelectValue;\nvar Icon = SelectIcon;\nvar Portal = SelectPortal;\nvar Content2 = SelectContent;\nvar Viewport = SelectViewport;\nvar Group = SelectGroup;\nvar Label = SelectLabel;\nvar Item = SelectItem;\nvar ItemText = SelectItemText;\nvar ItemIndicator = SelectItemIndicator;\nvar ScrollUpButton = SelectScrollUpButton;\nvar ScrollDownButton = SelectScrollDownButton;\nvar Separator = SelectSeparator;\nvar Arrow2 = SelectArrow;\nexport {\n Arrow2 as Arrow,\n Content2 as Content,\n Group,\n Icon,\n Item,\n ItemIndicator,\n ItemText,\n Label,\n Portal,\n Root2 as Root,\n ScrollDownButton,\n ScrollUpButton,\n Select,\n SelectArrow,\n SelectContent,\n SelectGroup,\n SelectIcon,\n SelectItem,\n SelectItemIndicator,\n SelectItemText,\n SelectLabel,\n SelectPortal,\n SelectScrollDownButton,\n SelectScrollUpButton,\n SelectSeparator,\n SelectTrigger,\n SelectValue,\n SelectViewport,\n Separator,\n Trigger,\n Value,\n Viewport,\n createSelectScope\n};\n//# sourceMappingURL=index.mjs.map\n"],"x_google_ignoreList":[0],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index242.js","sources":["../../../node_modules/date-fns/max.js"],"sourcesContent":["import { constructFrom } from \"./constructFrom.js\";\nimport { toDate } from \"./toDate.js\";\n\n/**\n * The {@link max} function options.\n */\n\n/**\n * @name max\n * @category Common Helpers\n * @summary Return the latest of the given dates.\n *\n * @description\n * Return the latest of the given dates.\n *\n * @typeParam DateType - The `Date` type, the function operates on. Gets inferred from passed arguments. Allows to use extensions like [`UTCDate`](https://github.com/date-fns/utc).\n * @typeParam ResultDate - The result `Date` type, it is the type returned from the context function if it is passed, or inferred from the arguments.\n *\n * @param dates - The dates to compare\n *\n * @returns The latest of the dates\n *\n * @example\n * // Which of these dates is the latest?\n * const result = max([\n * new Date(1989, 6, 10),\n * new Date(1987, 1, 11),\n * new Date(1995, 6, 2),\n * new Date(1990, 0, 1)\n * ])\n * //=> Sun Jul 02 1995 00:00:00\n */\nexport function max(dates, options) {\n let result;\n let context = options?.in;\n\n dates.forEach((date) => {\n // Use the first date object as the context function\n if (!context && typeof date === \"object\")\n context = constructFrom.bind(null, date);\n\n const date_ = toDate(date, context);\n if (!result || result < date_ || isNaN(+date_)) result = date_;\n });\n\n return constructFrom(context, result || NaN);\n}\n\n// Fallback for modularized imports:\nexport default max;\n"],"names":["max","dates","options","result","context","date","constructFrom","date_","toDate"],"mappings":";;AAgCO,SAASA,EAAIC,GAAOC,GAAS;AAClC,MAAIC,GACAC,IAAUF,GAAS;AAEvB,SAAAD,EAAM,QAAQ,CAACI,MAAS;AAEtB,IAAI,CAACD,KAAW,OAAOC,KAAS,aAC9BD,IAAUE,EAAc,KAAK,MAAMD,CAAI;AAEzC,UAAME,IAAQC,EAAOH,GAAMD,CAAO;AAClC,KAAI,CAACD,KAAUA,IAASI,KAAS,MAAM,CAACA,CAAK,OAAGJ,IAASI;AAAA,EAC3D,CAAC,GAEMD,EAAcF,GAASD,KAAU,GAAG;AAC7C;","x_google_ignoreList":[0]}
|
package/dist/index243.js
CHANGED
|
@@ -1,256 +1,14 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
asChild: !0,
|
|
16
|
-
children: /* @__PURE__ */ g(y, { className: "h-4 w-4 opacity-50" })
|
|
17
|
-
}), i[6] = l) : l = i[6];
|
|
18
|
-
let u;
|
|
19
|
-
return i[7] !== a || i[8] !== s || i[9] !== n || i[10] !== c ? (u = /* @__PURE__ */ _(d, {
|
|
20
|
-
ref: n,
|
|
21
|
-
className: c,
|
|
22
|
-
...s,
|
|
23
|
-
children: [a, l]
|
|
24
|
-
}), i[7] = a, i[8] = s, i[9] = n, i[10] = c, i[11] = u) : u = i[11], u;
|
|
25
|
-
});
|
|
26
|
-
w.displayName = d.displayName;
|
|
27
|
-
var T = h.createContext(null), E = h.forwardRef(({ direction: t, speed: n = 400, className: r, children: i, ...a }, o) => {
|
|
28
|
-
let s = h.useContext(T), [c, l] = h.useState(!0), u = h.useRef(void 0), d = h.useRef(void 0), f = h.useRef(!1), p = s?.viewport, m = h.useCallback(() => {
|
|
29
|
-
if (!p) {
|
|
30
|
-
l(!0);
|
|
31
|
-
return;
|
|
32
|
-
}
|
|
33
|
-
let { scrollTop: e, scrollHeight: n, clientHeight: r } = p, i = e > 2, a = e < n - r - 2;
|
|
34
|
-
if (!(n > r + 2)) {
|
|
35
|
-
l(!0);
|
|
36
|
-
return;
|
|
37
|
-
}
|
|
38
|
-
l(t === "up" ? !i : !a);
|
|
39
|
-
}, [p, t]);
|
|
40
|
-
h.useEffect(() => {
|
|
41
|
-
if (!p) return;
|
|
42
|
-
m();
|
|
43
|
-
let e = () => m(), t = () => m();
|
|
44
|
-
p.addEventListener("scroll", e, { passive: !0 });
|
|
45
|
-
let n = new ResizeObserver(t);
|
|
46
|
-
n.observe(p);
|
|
47
|
-
let r = new MutationObserver(t);
|
|
48
|
-
return r.observe(p, {
|
|
49
|
-
childList: !0,
|
|
50
|
-
subtree: !0
|
|
51
|
-
}), () => {
|
|
52
|
-
p.removeEventListener("scroll", e), n.disconnect(), r.disconnect();
|
|
53
|
-
};
|
|
54
|
-
}, [p, m]);
|
|
55
|
-
let _ = h.useCallback(() => {
|
|
56
|
-
u.current &&= (cancelAnimationFrame(u.current), void 0), f.current = !1, d.current = void 0;
|
|
57
|
-
}, []), v = h.useCallback((e) => {
|
|
58
|
-
if (!p || c || !f.current) {
|
|
59
|
-
_();
|
|
60
|
-
return;
|
|
61
|
-
}
|
|
62
|
-
d.current ||= e;
|
|
63
|
-
let r = n * (e - d.current) / 1e3;
|
|
64
|
-
if (r < .1) {
|
|
65
|
-
u.current = requestAnimationFrame(v);
|
|
66
|
-
return;
|
|
67
|
-
}
|
|
68
|
-
let i = p.scrollTop, a = p.scrollHeight - p.clientHeight, o;
|
|
69
|
-
o = t === "up" ? Math.max(0, i - r) : Math.min(a, i + r), p.scrollTo({ top: o }), d.current = e, (t === "up" ? o > 1 : o < a - 1) && Math.abs(o - i) > .01 ? u.current = requestAnimationFrame(v) : (_(), setTimeout(m, 16));
|
|
70
|
-
}, [
|
|
71
|
-
p,
|
|
72
|
-
c,
|
|
73
|
-
t,
|
|
74
|
-
n,
|
|
75
|
-
_,
|
|
76
|
-
m
|
|
77
|
-
]), y = h.useCallback(() => {
|
|
78
|
-
c || !p || f.current || (f.current = !0, d.current = void 0, u.current = requestAnimationFrame(v));
|
|
79
|
-
}, [
|
|
80
|
-
c,
|
|
81
|
-
p,
|
|
82
|
-
v
|
|
83
|
-
]);
|
|
84
|
-
return h.useEffect(() => () => _(), [_]), /* @__PURE__ */ g("div", {
|
|
85
|
-
...a,
|
|
86
|
-
ref: o,
|
|
87
|
-
className: e("flex items-center justify-center py-1 select-none", c ? "cursor-default opacity-40" : "cursor-pointer opacity-100 hover:bg-accent/20", r),
|
|
88
|
-
onPointerEnter: (e) => {
|
|
89
|
-
a.onPointerEnter?.(e), c || y();
|
|
90
|
-
},
|
|
91
|
-
onPointerMove: (e) => {
|
|
92
|
-
a.onPointerMove?.(e), !c && !f.current && y();
|
|
93
|
-
},
|
|
94
|
-
onPointerLeave: (e) => {
|
|
95
|
-
a.onPointerLeave?.(e), _();
|
|
96
|
-
},
|
|
97
|
-
children: i
|
|
98
|
-
});
|
|
99
|
-
});
|
|
100
|
-
E.displayName = "ScrollButtonImpl";
|
|
101
|
-
var D = h.forwardRef((e, t) => {
|
|
102
|
-
let n = m(8), r, i;
|
|
103
|
-
n[0] === e ? (r = n[1], i = n[2]) : ({className: r, ...i} = e, n[0] = e, n[1] = r, n[2] = i);
|
|
104
|
-
let a;
|
|
105
|
-
n[3] === Symbol.for("react.memo_cache_sentinel") ? (a = /* @__PURE__ */ g(b, { className: "h-4 w-4" }), n[3] = a) : a = n[3];
|
|
106
|
-
let o;
|
|
107
|
-
return n[4] !== r || n[5] !== i || n[6] !== t ? (o = /* @__PURE__ */ g(E, {
|
|
108
|
-
ref: t,
|
|
109
|
-
direction: "up",
|
|
110
|
-
className: r,
|
|
111
|
-
...i,
|
|
112
|
-
children: a
|
|
113
|
-
}), n[4] = r, n[5] = i, n[6] = t, n[7] = o) : o = n[7], o;
|
|
114
|
-
});
|
|
115
|
-
D.displayName = "SelectScrollUpButton";
|
|
116
|
-
var O = h.forwardRef((e, t) => {
|
|
117
|
-
let n = m(8), r, i;
|
|
118
|
-
n[0] === e ? (r = n[1], i = n[2]) : ({className: r, ...i} = e, n[0] = e, n[1] = r, n[2] = i);
|
|
119
|
-
let a;
|
|
120
|
-
n[3] === Symbol.for("react.memo_cache_sentinel") ? (a = /* @__PURE__ */ g(y, { className: "h-4 w-4" }), n[3] = a) : a = n[3];
|
|
121
|
-
let o;
|
|
122
|
-
return n[4] !== r || n[5] !== i || n[6] !== t ? (o = /* @__PURE__ */ g(E, {
|
|
123
|
-
ref: t,
|
|
124
|
-
direction: "down",
|
|
125
|
-
className: r,
|
|
126
|
-
...i,
|
|
127
|
-
children: a
|
|
128
|
-
}), n[4] = r, n[5] = i, n[6] = t, n[7] = o) : o = n[7], o;
|
|
129
|
-
});
|
|
130
|
-
O.displayName = "SelectScrollDownButton";
|
|
131
|
-
var k = h.forwardRef((n, r) => {
|
|
132
|
-
let i = m(32), a, o, s, l, u;
|
|
133
|
-
i[0] === n ? (a = i[1], o = i[2], s = i[3], l = i[4], u = i[5]) : ({className: s, children: o, position: u, autoScroll: a, ...l} = n, i[0] = n, i[1] = a, i[2] = o, i[3] = s, i[4] = l, i[5] = u);
|
|
134
|
-
let d = u === void 0 ? "popper" : u, [f, v] = h.useState(null), y;
|
|
135
|
-
i[6] === Symbol.for("react.memo_cache_sentinel") ? (y = (e) => {
|
|
136
|
-
v(e);
|
|
137
|
-
}, i[6] = y) : y = i[6];
|
|
138
|
-
let b = y, x, S;
|
|
139
|
-
i[7] !== a || i[8] !== f ? (x = () => {
|
|
140
|
-
if (!f || !a) return;
|
|
141
|
-
let e = requestAnimationFrame(() => {
|
|
142
|
-
let e = f.querySelector("[role=\"option\"][data-state=\"checked\"]");
|
|
143
|
-
if (e instanceof HTMLElement) {
|
|
144
|
-
let t = e.offsetTop - 8, n = e.offsetTop + e.offsetHeight + 8;
|
|
145
|
-
if (t < f.scrollTop) {
|
|
146
|
-
f.scrollTo({ top: Math.max(0, t) });
|
|
147
|
-
return;
|
|
148
|
-
}
|
|
149
|
-
n > f.scrollTop + f.clientHeight && f.scrollTo({ top: Math.max(0, n - f.clientHeight) });
|
|
150
|
-
return;
|
|
151
|
-
}
|
|
152
|
-
let t = Array.from(f.querySelectorAll("[role=\"option\"]"));
|
|
153
|
-
if (!t.length) return;
|
|
154
|
-
let n, r;
|
|
155
|
-
for (let e of t) {
|
|
156
|
-
if (!e.hasAttribute("data-disabled")) {
|
|
157
|
-
n = e;
|
|
158
|
-
break;
|
|
159
|
-
}
|
|
160
|
-
r = e;
|
|
161
|
-
}
|
|
162
|
-
if (!n) return;
|
|
163
|
-
let i = Math.max(0, (a === "firstEnabledWithContext" && r ? r : n).offsetTop - 8);
|
|
164
|
-
f.scrollTo({ top: i });
|
|
165
|
-
});
|
|
166
|
-
return () => cancelAnimationFrame(e);
|
|
167
|
-
}, S = [f, a], i[7] = a, i[8] = f, i[9] = x, i[10] = S) : (x = i[9], S = i[10]), h.useEffect(x, S);
|
|
168
|
-
let C = d === "popper" && "data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1", w;
|
|
169
|
-
i[11] !== s || i[12] !== C ? (w = e("relative z-[60] max-h-96 min-w-[8rem] overflow-hidden rounded-md border bg-popover text-popover-foreground shadow-md data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2", C, s), i[11] = s, i[12] = C, i[13] = w) : w = i[13];
|
|
170
|
-
let E;
|
|
171
|
-
i[14] === f ? E = i[15] : (E = {
|
|
172
|
-
viewport: f,
|
|
173
|
-
setViewport: v
|
|
174
|
-
}, i[14] = f, i[15] = E);
|
|
175
|
-
let k;
|
|
176
|
-
i[16] === Symbol.for("react.memo_cache_sentinel") ? (k = /* @__PURE__ */ g(D, {}), i[16] = k) : k = i[16];
|
|
177
|
-
let A = d === "popper" && "h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)]", j;
|
|
178
|
-
i[17] === A ? j = i[18] : (j = e("p-1 overflow-y-auto", A), i[17] = A, i[18] = j);
|
|
179
|
-
let M;
|
|
180
|
-
i[19] !== o || i[20] !== j ? (M = /* @__PURE__ */ g(p, {
|
|
181
|
-
ref: b,
|
|
182
|
-
className: j,
|
|
183
|
-
children: o
|
|
184
|
-
}), i[19] = o, i[20] = j, i[21] = M) : M = i[21];
|
|
185
|
-
let N;
|
|
186
|
-
i[22] === Symbol.for("react.memo_cache_sentinel") ? (N = /* @__PURE__ */ g(O, {}), i[22] = N) : N = i[22];
|
|
187
|
-
let P;
|
|
188
|
-
i[23] !== M || i[24] !== E ? (P = /* @__PURE__ */ _(T.Provider, {
|
|
189
|
-
value: E,
|
|
190
|
-
children: [
|
|
191
|
-
k,
|
|
192
|
-
M,
|
|
193
|
-
N
|
|
194
|
-
]
|
|
195
|
-
}), i[23] = M, i[24] = E, i[25] = P) : P = i[25];
|
|
196
|
-
let F;
|
|
197
|
-
return i[26] !== d || i[27] !== l || i[28] !== r || i[29] !== P || i[30] !== w ? (F = /* @__PURE__ */ g(c, { children: /* @__PURE__ */ g(t, {
|
|
198
|
-
ref: r,
|
|
199
|
-
className: w,
|
|
200
|
-
position: d,
|
|
201
|
-
...l,
|
|
202
|
-
children: P
|
|
203
|
-
}) }), i[26] = d, i[27] = l, i[28] = r, i[29] = P, i[30] = w, i[31] = F) : F = i[31], F;
|
|
204
|
-
});
|
|
205
|
-
k.displayName = t.displayName;
|
|
206
|
-
var A = h.forwardRef((t, n) => {
|
|
207
|
-
let r = m(9), i, a;
|
|
208
|
-
r[0] === t ? (i = r[1], a = r[2]) : ({className: i, ...a} = t, r[0] = t, r[1] = i, r[2] = a);
|
|
209
|
-
let o;
|
|
210
|
-
r[3] === i ? o = r[4] : (o = e("py-1.5 pl-8 pr-2 text-sm font-semibold", i), r[3] = i, r[4] = o);
|
|
211
|
-
let c;
|
|
212
|
-
return r[5] !== a || r[6] !== n || r[7] !== o ? (c = /* @__PURE__ */ g(s, {
|
|
213
|
-
ref: n,
|
|
214
|
-
className: o,
|
|
215
|
-
...a
|
|
216
|
-
}), r[5] = a, r[6] = n, r[7] = o, r[8] = c) : c = r[8], c;
|
|
217
|
-
});
|
|
218
|
-
A.displayName = s.displayName;
|
|
219
|
-
var j = h.forwardRef((t, n) => {
|
|
220
|
-
let r = m(14), s, c, l;
|
|
221
|
-
r[0] === t ? (s = r[1], c = r[2], l = r[3]) : ({className: c, children: s, ...l} = t, r[0] = t, r[1] = s, r[2] = c, r[3] = l);
|
|
222
|
-
let u;
|
|
223
|
-
r[4] === c ? u = r[5] : (u = e("relative flex w-full select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50 cursor-pointer", c), r[4] = c, r[5] = u);
|
|
224
|
-
let d;
|
|
225
|
-
r[6] === Symbol.for("react.memo_cache_sentinel") ? (d = /* @__PURE__ */ g("span", {
|
|
226
|
-
className: "absolute left-2 flex h-3.5 w-3.5 items-center justify-center",
|
|
227
|
-
children: /* @__PURE__ */ g(a, { children: /* @__PURE__ */ g(v, { className: "h-4 w-4" }) })
|
|
228
|
-
}), r[6] = d) : d = r[6];
|
|
229
|
-
let f;
|
|
230
|
-
r[7] === s ? f = r[8] : (f = /* @__PURE__ */ g(o, { children: s }), r[7] = s, r[8] = f);
|
|
231
|
-
let p;
|
|
232
|
-
return r[9] !== l || r[10] !== n || r[11] !== u || r[12] !== f ? (p = /* @__PURE__ */ _(i, {
|
|
233
|
-
ref: n,
|
|
234
|
-
className: u,
|
|
235
|
-
...l,
|
|
236
|
-
children: [d, f]
|
|
237
|
-
}), r[9] = l, r[10] = n, r[11] = u, r[12] = f, r[13] = p) : p = r[13], p;
|
|
238
|
-
});
|
|
239
|
-
j.displayName = i.displayName;
|
|
240
|
-
var M = h.forwardRef((t, n) => {
|
|
241
|
-
let r = m(9), i, a;
|
|
242
|
-
r[0] === t ? (i = r[1], a = r[2]) : ({className: i, ...a} = t, r[0] = t, r[1] = i, r[2] = a);
|
|
243
|
-
let o;
|
|
244
|
-
r[3] === i ? o = r[4] : (o = e("-mx-1 my-1 h-px bg-muted", i), r[3] = i, r[4] = o);
|
|
245
|
-
let s;
|
|
246
|
-
return r[5] !== a || r[6] !== n || r[7] !== o ? (s = /* @__PURE__ */ g(u, {
|
|
247
|
-
ref: n,
|
|
248
|
-
className: o,
|
|
249
|
-
...a
|
|
250
|
-
}), r[5] = a, r[6] = n, r[7] = o, r[8] = s) : s = r[8], s;
|
|
251
|
-
});
|
|
252
|
-
M.displayName = u.displayName;
|
|
253
|
-
//#endregion
|
|
254
|
-
export { x as Select, k as SelectContent, S as SelectGroup, j as SelectItem, A as SelectLabel, O as SelectScrollDownButton, D as SelectScrollUpButton, M as SelectSeparator, w as SelectTrigger, C as SelectValue };
|
|
255
|
-
|
|
256
|
-
//# sourceMappingURL=index243.js.map
|
|
1
|
+
import { constructFrom as i } from "./index287.js";
|
|
2
|
+
import { toDate as f } from "./index288.js";
|
|
3
|
+
function u(e, c) {
|
|
4
|
+
let t, o = c?.in;
|
|
5
|
+
return e.forEach((r) => {
|
|
6
|
+
!o && typeof r == "object" && (o = i.bind(null, r));
|
|
7
|
+
const n = f(r, o);
|
|
8
|
+
(!t || t > n || isNaN(+n)) && (t = n);
|
|
9
|
+
}), i(o, t || NaN);
|
|
10
|
+
}
|
|
11
|
+
export {
|
|
12
|
+
u as min
|
|
13
|
+
};
|
|
14
|
+
//# sourceMappingURL=index243.js.map
|
package/dist/index243.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index243.js","names":["React","Check","ChevronDown","ChevronUp","SelectPrimitive","cn","Select","Root","SelectGroup","Group","SelectValue","Value","SelectTrigger","forwardRef","ElementRef","Trigger","ComponentPropsWithoutRef","t0","ref","$","_c","children","className","props","t1","t2","Symbol","for","t3","displayName","ScrollContext","createContext","viewport","HTMLElement","setViewport","vp","ScrollButtonImplProps","HTMLAttributes","HTMLDivElement","direction","speed","ScrollButtonImpl","rest","scrollContext","useContext","disabled","setDisabled","useState","animationRef","useRef","undefined","lastTimeRef","isScrollingRef","checkScrollability","useCallback","scrollTop","scrollHeight","clientHeight","tolerance","canScrollUp","canScrollDown","hasScrollableContent","shouldDisable","useEffect","handleScroll","handleResize","addEventListener","passive","resizeObserver","ResizeObserver","observe","mutationObserver","MutationObserver","childList","subtree","removeEventListener","disconnect","stopScrolling","current","cancelAnimationFrame","smoothScroll","currentTime","deltaTime","distance","requestAnimationFrame","oldScrollTop","maxScroll","newScrollTop","Math","max","min","scrollTo","top","canContinue","abs","setTimeout","startScrolling","e","onPointerEnter","onPointerMove","onPointerLeave","SelectScrollUpButton","SelectScrollDownButton","SelectContentProps","Content","autoScroll","SelectContent","position","node","viewportRef","t4","run","selected","querySelector","targetTop","offsetTop","targetBottom","offsetHeight","viewportBottom","all","Array","from","querySelectorAll","length","firstEnabled","lastDisabledBefore","el","isDisabled","hasAttribute","target","offset","raf","t5","t6","t7","t8","t9","t10","t11","t12","t13","t14","SelectLabel","Label","SelectItem","Item","SelectSeparator","Separator"],"sources":["../src/components/Select/index.tsx"],"sourcesContent":["import * as React from \"react\"\nimport { Check, ChevronDown, ChevronUp } from \"lucide-react\"\nimport * as SelectPrimitive from \"@radix-ui/react-select\"\n\nimport { cn } from \"@/lib/utils\"\n\n\nconst Select = SelectPrimitive.Root\nconst SelectGroup = SelectPrimitive.Group\nconst SelectValue = SelectPrimitive.Value\n\n\nconst SelectTrigger = React.forwardRef<\n React.ElementRef<typeof SelectPrimitive.Trigger>,\n React.ComponentPropsWithoutRef<typeof SelectPrimitive.Trigger>\n>(({ className, children, ...props }, ref) => (\n <SelectPrimitive.Trigger\n ref={ref}\n className={cn(\n \"flex h-10 w-full items-center justify-between rounded-md border border-input bg-background px-3 py-2 text-sm ring-offset-background placeholder:text-muted-foreground focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50 [&>span]:line-clamp-1\",\n className\n )}\n {...props}\n >\n {children}\n <SelectPrimitive.Icon asChild>\n <ChevronDown className=\"h-4 w-4 opacity-50\" />\n </SelectPrimitive.Icon>\n </SelectPrimitive.Trigger>\n))\nSelectTrigger.displayName = SelectPrimitive.Trigger.displayName\n\nconst ScrollContext = React.createContext<{\n viewport: HTMLElement | null\n setViewport: (vp: HTMLElement | null) => void\n} | null>(null)\n\ninterface ScrollButtonImplProps extends React.HTMLAttributes<HTMLDivElement> {\n direction: \"up\" | \"down\"\n speed?: number\n}\n\nconst ScrollButtonImpl = React.forwardRef<HTMLDivElement, ScrollButtonImplProps>(\n ({ direction, speed = 400, className, children, ...rest }, ref) => {\n const scrollContext = React.useContext(ScrollContext)\n const [disabled, setDisabled] = React.useState(true)\n const animationRef = React.useRef<number | undefined>(undefined)\n const lastTimeRef = React.useRef<number | undefined>(undefined)\n const isScrollingRef = React.useRef(false)\n\n const viewport = scrollContext?.viewport\n\n const checkScrollability = React.useCallback(() => {\n if (!viewport) {\n setDisabled(true)\n return\n }\n\n const { scrollTop, scrollHeight, clientHeight } = viewport\n const tolerance = 2\n\n const canScrollUp = scrollTop > tolerance\n const canScrollDown = scrollTop < (scrollHeight - clientHeight - tolerance)\n const hasScrollableContent = scrollHeight > clientHeight + tolerance\n\n if (!hasScrollableContent) {\n setDisabled(true)\n return\n }\n\n const shouldDisable = direction === \"up\" ? !canScrollUp : !canScrollDown\n setDisabled(shouldDisable)\n }, [viewport, direction])\n\n React.useEffect(() => {\n if (!viewport) return\n\n checkScrollability()\n\n const handleScroll = () => checkScrollability()\n const handleResize = () => checkScrollability()\n\n viewport.addEventListener(\"scroll\", handleScroll, { passive: true })\n\n const resizeObserver = new ResizeObserver(handleResize)\n resizeObserver.observe(viewport)\n\n const mutationObserver = new MutationObserver(handleResize)\n mutationObserver.observe(viewport, { childList: true, subtree: true })\n\n return () => {\n viewport.removeEventListener(\"scroll\", handleScroll)\n resizeObserver.disconnect()\n mutationObserver.disconnect()\n }\n }, [viewport, checkScrollability])\n\n const stopScrolling = React.useCallback(() => {\n if (animationRef.current) {\n cancelAnimationFrame(animationRef.current)\n animationRef.current = undefined\n }\n isScrollingRef.current = false\n lastTimeRef.current = undefined\n }, [])\n\n const smoothScroll = React.useCallback(\n (currentTime: number) => {\n if (!viewport || disabled || !isScrollingRef.current) {\n stopScrolling()\n return\n }\n\n if (!lastTimeRef.current) {\n lastTimeRef.current = currentTime\n }\n\n const deltaTime = currentTime - lastTimeRef.current\n const distance = (speed * deltaTime) / 1000\n\n if (distance < 0.1) {\n animationRef.current = requestAnimationFrame(smoothScroll)\n return\n }\n\n const oldScrollTop = viewport.scrollTop\n const maxScroll = viewport.scrollHeight - viewport.clientHeight\n\n let newScrollTop: number\n if (direction === \"up\") {\n newScrollTop = Math.max(0, oldScrollTop - distance)\n } else {\n newScrollTop = Math.min(maxScroll, oldScrollTop + distance)\n }\n\n viewport.scrollTo({ top: newScrollTop })\n\n lastTimeRef.current = currentTime\n\n const tolerance = 1\n const canContinue =\n direction === \"up\"\n ? newScrollTop > tolerance\n : newScrollTop < (maxScroll - tolerance)\n\n if (canContinue && Math.abs(newScrollTop - oldScrollTop) > 0.01) {\n animationRef.current = requestAnimationFrame(smoothScroll)\n } else {\n stopScrolling()\n setTimeout(checkScrollability, 16)\n }\n },\n [viewport, disabled, direction, speed, stopScrolling, checkScrollability],\n )\n\n const startScrolling = React.useCallback(() => {\n if (disabled || !viewport || isScrollingRef.current) return\n\n isScrollingRef.current = true\n lastTimeRef.current = undefined\n animationRef.current = requestAnimationFrame(smoothScroll)\n }, [disabled, viewport, smoothScroll])\n\n React.useEffect(() => {\n return () => stopScrolling()\n }, [stopScrolling])\n\n return (\n <div\n {...rest}\n ref={ref}\n className={cn(\n \"flex items-center justify-center py-1 select-none\",\n disabled ? \"cursor-default opacity-40\" : \"cursor-pointer opacity-100 hover:bg-accent/20\",\n className\n )}\n onPointerEnter={e => {\n rest.onPointerEnter?.(e)\n if (!disabled) startScrolling()\n }}\n onPointerMove={e => {\n rest.onPointerMove?.(e)\n if (!disabled && !isScrollingRef.current) startScrolling()\n }}\n onPointerLeave={e => {\n rest.onPointerLeave?.(e)\n stopScrolling()\n }}\n >\n {children}\n </div>\n )\n }\n)\nScrollButtonImpl.displayName = \"ScrollButtonImpl\"\n\nconst SelectScrollUpButton = React.forwardRef<\n HTMLDivElement,\n React.HTMLAttributes<HTMLDivElement>\n>(({ className, ...props }, ref) => (\n <ScrollButtonImpl ref={ref} direction=\"up\" className={className} {...props}>\n <ChevronUp className=\"h-4 w-4\" />\n </ScrollButtonImpl>\n))\nSelectScrollUpButton.displayName = \"SelectScrollUpButton\"\n\nconst SelectScrollDownButton = React.forwardRef<\n HTMLDivElement,\n React.HTMLAttributes<HTMLDivElement>\n>(({ className, ...props }, ref) => (\n <ScrollButtonImpl ref={ref} direction=\"down\" className={className} {...props}>\n <ChevronDown className=\"h-4 w-4\" />\n </ScrollButtonImpl>\n))\nSelectScrollDownButton.displayName = \"SelectScrollDownButton\"\n\ntype SelectContentProps = React.ComponentPropsWithoutRef<typeof SelectPrimitive.Content> & {\n autoScroll?: \"firstEnabled\" | \"firstEnabledWithContext\"\n}\n\nconst SelectContent = React.forwardRef<\n React.ElementRef<typeof SelectPrimitive.Content>,\n SelectContentProps\n>(({ className, children, position = \"popper\", autoScroll, ...props }, ref) => {\n const [viewport, setViewport] = React.useState<HTMLElement | null>(null)\n const viewportRef = React.useCallback((node: HTMLElement | null) => {\n setViewport(node)\n }, [])\n\n React.useEffect(() => {\n if (!viewport || !autoScroll) return\n\n const run = () => {\n const selected = viewport.querySelector(\"[role=\\\"option\\\"][data-state=\\\"checked\\\"]\")\n if (selected instanceof HTMLElement) {\n const padding = 8\n const targetTop = selected.offsetTop - padding\n const targetBottom = selected.offsetTop + selected.offsetHeight + padding\n\n if (targetTop < viewport.scrollTop) {\n viewport.scrollTo({ top: Math.max(0, targetTop) })\n return\n }\n\n const viewportBottom = viewport.scrollTop + viewport.clientHeight\n if (targetBottom > viewportBottom) {\n viewport.scrollTo({ top: Math.max(0, targetBottom - viewport.clientHeight) })\n }\n return\n }\n\n const all = Array.from(\n viewport.querySelectorAll(\"[role=\\\"option\\\"]\")\n ) as HTMLElement[]\n if (!all.length) return\n\n let firstEnabled: HTMLElement | undefined\n let lastDisabledBefore: HTMLElement | undefined\n for (const el of all) {\n const isDisabled = el.hasAttribute(\"data-disabled\")\n if (!isDisabled) {\n firstEnabled = el\n break\n }\n lastDisabledBefore = el\n }\n\n if (!firstEnabled) return\n\n const target =\n autoScroll === \"firstEnabledWithContext\" && lastDisabledBefore\n ? lastDisabledBefore\n : firstEnabled\n\n const offset = Math.max(0, target.offsetTop - 8)\n viewport.scrollTo({ top: offset })\n }\n\n const raf = requestAnimationFrame(run)\n return () => cancelAnimationFrame(raf)\n }, [viewport, autoScroll])\n\n return (\n <SelectPrimitive.Portal>\n <SelectPrimitive.Content\n ref={ref}\n className={cn(\n \"relative z-[60] max-h-96 min-w-[8rem] overflow-hidden rounded-md border bg-popover text-popover-foreground shadow-md data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2\",\n position === \"popper\" &&\n \"data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1\",\n className\n )}\n position={position}\n {...props}\n >\n <ScrollContext.Provider value={{ viewport, setViewport }}>\n <SelectScrollUpButton />\n <SelectPrimitive.Viewport\n ref={viewportRef}\n className={cn(\n \"p-1 overflow-y-auto\",\n position === \"popper\" &&\n \"h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)]\"\n )}\n >\n {children}\n </SelectPrimitive.Viewport>\n <SelectScrollDownButton />\n </ScrollContext.Provider>\n </SelectPrimitive.Content>\n </SelectPrimitive.Portal>\n )\n})\nSelectContent.displayName = SelectPrimitive.Content.displayName\n\nconst SelectLabel = React.forwardRef<\n React.ElementRef<typeof SelectPrimitive.Label>,\n React.ComponentPropsWithoutRef<typeof SelectPrimitive.Label>\n>(({ className, ...props }, ref) => (\n <SelectPrimitive.Label\n ref={ref}\n className={cn(\"py-1.5 pl-8 pr-2 text-sm font-semibold\", className)}\n {...props}\n />\n))\nSelectLabel.displayName = SelectPrimitive.Label.displayName\n\nconst SelectItem = React.forwardRef<\n React.ElementRef<typeof SelectPrimitive.Item>,\n React.ComponentPropsWithoutRef<typeof SelectPrimitive.Item>\n>(({ className, children, ...props }, ref) => (\n <SelectPrimitive.Item\n ref={ref}\n className={cn(\n \"relative flex w-full select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50 cursor-pointer\",\n className\n )}\n {...props}\n >\n <span className=\"absolute left-2 flex h-3.5 w-3.5 items-center justify-center\">\n <SelectPrimitive.ItemIndicator>\n <Check className=\"h-4 w-4\" />\n </SelectPrimitive.ItemIndicator>\n </span>\n <SelectPrimitive.ItemText>{children}</SelectPrimitive.ItemText>\n </SelectPrimitive.Item>\n))\nSelectItem.displayName = SelectPrimitive.Item.displayName\n\nconst SelectSeparator = React.forwardRef<\n React.ElementRef<typeof SelectPrimitive.Separator>,\n React.ComponentPropsWithoutRef<typeof SelectPrimitive.Separator>\n>(({ className, ...props }, ref) => (\n <SelectPrimitive.Separator\n ref={ref}\n className={cn(\"-mx-1 my-1 h-px bg-muted\", className)}\n {...props}\n />\n))\nSelectSeparator.displayName = SelectPrimitive.Separator.displayName\n\nexport {\n Select,\n SelectGroup,\n SelectValue,\n SelectTrigger,\n SelectContent,\n SelectLabel,\n SelectItem,\n SelectSeparator,\n SelectScrollUpButton,\n SelectScrollDownButton,\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index243.js","sources":["../../../node_modules/date-fns/min.js"],"sourcesContent":["import { constructFrom } from \"./constructFrom.js\";\nimport { toDate } from \"./toDate.js\";\n\n/**\n * The {@link min} function options.\n */\n\n/**\n * @name min\n * @category Common Helpers\n * @summary Returns the earliest of the given dates.\n *\n * @description\n * Returns the earliest of the given dates.\n *\n * @typeParam DateType - The `Date` type, the function operates on. Gets inferred from passed arguments. Allows to use extensions like [`UTCDate`](https://github.com/date-fns/utc).\n * @typeParam ResultDate - The result `Date` type, it is the type returned from the context function if it is passed, or inferred from the arguments.\n *\n * @param dates - The dates to compare\n *\n * @returns The earliest of the dates\n *\n * @example\n * // Which of these dates is the earliest?\n * const result = min([\n * new Date(1989, 6, 10),\n * new Date(1987, 1, 11),\n * new Date(1995, 6, 2),\n * new Date(1990, 0, 1)\n * ])\n * //=> Wed Feb 11 1987 00:00:00\n */\nexport function min(dates, options) {\n let result;\n let context = options?.in;\n\n dates.forEach((date) => {\n // Use the first date object as the context function\n if (!context && typeof date === \"object\")\n context = constructFrom.bind(null, date);\n\n const date_ = toDate(date, context);\n if (!result || result > date_ || isNaN(+date_)) result = date_;\n });\n\n return constructFrom(context, result || NaN);\n}\n\n// Fallback for modularized imports:\nexport default min;\n"],"names":["min","dates","options","result","context","date","constructFrom","date_","toDate"],"mappings":";;AAgCO,SAASA,EAAIC,GAAOC,GAAS;AAClC,MAAIC,GACAC,IAAUF,GAAS;AAEvB,SAAAD,EAAM,QAAQ,CAACI,MAAS;AAEtB,IAAI,CAACD,KAAW,OAAOC,KAAS,aAC9BD,IAAUE,EAAc,KAAK,MAAMD,CAAI;AAEzC,UAAME,IAAQC,EAAOH,GAAMD,CAAO;AAClC,KAAI,CAACD,KAAUA,IAASI,KAAS,MAAM,CAACA,CAAK,OAAGJ,IAASI;AAAA,EAC3D,CAAC,GAEMD,EAAcF,GAASD,KAAU,GAAG;AAC7C;","x_google_ignoreList":[0]}
|