@anoki/fse-ui 1.0.0-beta1.48.15 → 1.0.0-beta1.48.17
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.cjs10.js +1 -1
- package/dist/index.cjs156.js +1 -1
- package/dist/index.cjs157.js +1 -1
- package/dist/index.cjs158.js +1 -1
- package/dist/index.cjs159.js +1 -1
- package/dist/index.cjs160.js +1 -1
- package/dist/index.cjs161.js +1 -1
- package/dist/index.cjs162.js +1 -1
- package/dist/index.cjs163.js +1 -1
- package/dist/index.cjs164.js +1 -1
- package/dist/index.cjs165.js +1 -1
- package/dist/index.cjs166.js +1 -1
- package/dist/index.cjs167.js +1 -1
- package/dist/index.cjs168.js +1 -1
- package/dist/index.cjs169.js +1 -1
- package/dist/index.cjs170.js +1 -1
- package/dist/index.cjs171.js +1 -1
- package/dist/index.cjs172.js +1 -1
- package/dist/index.cjs173.js +1 -1
- package/dist/index.cjs174.js +1 -1
- package/dist/index.cjs175.js +1 -1
- package/dist/index.cjs176.js +1 -1
- package/dist/index.cjs177.js +1 -1
- package/dist/index.cjs178.js +1 -1
- package/dist/index.cjs182.js +1 -1
- package/dist/index.cjs183.js +1 -1
- package/dist/index.cjs184.js +1 -1
- package/dist/index.cjs186.js +1 -1
- package/dist/index.cjs187.js +1 -1
- package/dist/index.cjs188.js +1 -1
- package/dist/index.cjs189.js +1 -1
- package/dist/index.cjs190.js +1 -1
- package/dist/index.cjs191.js +1 -1
- package/dist/index.cjs192.js +1 -1
- package/dist/index.cjs193.js +1 -1
- package/dist/index.cjs194.js +1 -1
- package/dist/index.cjs196.js +1 -1
- package/dist/index.cjs197.js +1 -1
- package/dist/index.cjs198.js +1 -1
- package/dist/index.cjs199.js +1 -1
- package/dist/index.cjs200.js +1 -1
- package/dist/index.cjs201.js +1 -1
- package/dist/index.cjs202.js +1 -1
- package/dist/index.cjs205.js +1 -1
- package/dist/index.cjs206.js +1 -1
- package/dist/index.cjs207.js +1 -1
- package/dist/index.cjs208.js +1 -1
- package/dist/index.cjs209.js +1 -1
- package/dist/index.cjs210.js +1 -1
- package/dist/index.cjs211.js +1 -1
- package/dist/index.cjs212.js +1 -1
- package/dist/index.cjs213.js +1 -1
- package/dist/index.cjs214.js +1 -1
- package/dist/index.cjs220.js +1 -1
- package/dist/index.cjs222.js +1 -1
- package/dist/index.cjs223.js +1 -1
- package/dist/index.cjs24.js +1 -1
- package/dist/index.cjs247.js +1 -1
- package/dist/index.cjs254.js +1 -1
- package/dist/index.cjs273.js +1 -1
- package/dist/index.cjs273.js.map +1 -1
- package/dist/index.cjs274.js +2 -0
- package/dist/index.cjs274.js.map +1 -0
- package/dist/index.cjs28.js +1 -1
- package/dist/index.cjs283.js +1 -1
- package/dist/index.cjs292.js +1 -1
- package/dist/index.cjs295.js +1 -1
- package/dist/index.cjs297.js +1 -1
- package/dist/index.cjs305.js +1 -1
- package/dist/index.cjs316.js +1 -1
- package/dist/index.cjs321.js +1 -1
- package/dist/index.cjs323.js +1 -1
- package/dist/index.cjs33.js.map +1 -1
- package/dist/index.cjs330.js +1 -1
- package/dist/index.cjs335.js +1 -1
- package/dist/index.cjs346.js +1 -1
- package/dist/index.cjs352.js +1 -1
- package/dist/index.cjs353.js +1 -1
- package/dist/index.cjs354.js +1 -1
- package/dist/index.cjs372.js +1 -1
- package/dist/index.cjs373.js +1 -1
- package/dist/index.cjs395.js +1 -1
- package/dist/index.cjs413.js +1 -1
- package/dist/index.cjs435.js +1 -1
- package/dist/index.cjs443.js +1 -1
- package/dist/index.cjs453.js +1 -1
- package/dist/index.cjs454.js +1 -1
- package/dist/index.cjs455.js +1 -27
- package/dist/index.cjs455.js.map +1 -1
- package/dist/index.cjs456.js +2 -1
- package/dist/index.cjs456.js.map +1 -1
- package/dist/index.cjs457.js +27 -1
- package/dist/index.cjs457.js.map +1 -1
- package/dist/index.cjs458.js +1 -1
- package/dist/index.cjs458.js.map +1 -1
- package/dist/index.cjs459.js +1 -2
- package/dist/index.cjs459.js.map +1 -1
- package/dist/index.cjs464.js +1 -1
- package/dist/index.cjs464.js.map +1 -1
- package/dist/index.cjs467.js +1 -1
- package/dist/index.cjs467.js.map +1 -1
- package/dist/index.cjs468.js +1 -1
- package/dist/index.cjs468.js.map +1 -1
- package/dist/index.cjs469.js +1 -1
- package/dist/index.cjs469.js.map +1 -1
- package/dist/index.cjs470.js +1 -1
- package/dist/index.cjs470.js.map +1 -1
- package/dist/index.cjs471.js +1 -1
- package/dist/index.cjs471.js.map +1 -1
- package/dist/index.cjs472.js +2 -0
- package/dist/index.cjs472.js.map +1 -0
- package/dist/index.cjs473.js +2 -0
- package/dist/index.cjs473.js.map +1 -0
- package/dist/index.cjs476.js +1 -1
- package/dist/{index.cjs494.js → index.cjs477.js} +2 -2
- package/dist/{index.cjs494.js.map → index.cjs477.js.map} +1 -1
- package/dist/index.cjs483.js +1 -1
- package/dist/index.cjs483.js.map +1 -1
- package/dist/index.cjs484.js +1 -1
- package/dist/index.cjs484.js.map +1 -1
- package/dist/index.cjs485.js +1 -1
- package/dist/index.cjs485.js.map +1 -1
- package/dist/index.cjs486.js +1 -1
- package/dist/index.cjs486.js.map +1 -1
- package/dist/index.cjs487.js +1 -1
- package/dist/index.cjs487.js.map +1 -1
- package/dist/index.cjs488.js +1 -1
- package/dist/index.cjs488.js.map +1 -1
- package/dist/index.cjs489.js +2 -0
- package/dist/index.cjs489.js.map +1 -0
- package/dist/index.cjs508.js +1 -1
- package/dist/{index.cjs515.js → index.cjs512.js} +1 -1
- package/dist/index.cjs512.js.map +1 -0
- package/dist/index.cjs513.js +2 -0
- package/dist/index.cjs513.js.map +1 -0
- package/dist/index.cjs516.js +1 -1
- package/dist/index.cjs516.js.map +1 -1
- package/dist/index.cjs522.js +1 -1
- package/dist/index.cjs524.js +1 -1
- package/dist/index.cjs525.js +1 -1
- package/dist/index.cjs527.js +1 -1
- package/dist/index.cjs527.js.map +1 -1
- package/dist/index.cjs528.js +1 -1
- package/dist/index.cjs528.js.map +1 -1
- package/dist/index.cjs529.js +1 -1
- package/dist/index.cjs529.js.map +1 -1
- package/dist/index.cjs530.js +1 -1
- package/dist/index.cjs530.js.map +1 -1
- package/dist/index.cjs531.js +1 -1
- package/dist/index.cjs531.js.map +1 -1
- package/dist/index.cjs532.js +1 -1
- package/dist/index.cjs532.js.map +1 -1
- package/dist/index.cjs533.js +1 -1
- package/dist/index.cjs533.js.map +1 -1
- package/dist/index.cjs534.js +1 -1
- package/dist/index.cjs534.js.map +1 -1
- package/dist/index.cjs535.js +1 -1
- package/dist/index.cjs535.js.map +1 -1
- package/dist/index.cjs536.js +1 -1
- package/dist/index.cjs536.js.map +1 -1
- package/dist/index.cjs537.js +1 -1
- package/dist/index.cjs537.js.map +1 -1
- package/dist/index.cjs538.js +1 -1
- package/dist/index.cjs538.js.map +1 -1
- package/dist/index.cjs539.js +1 -1
- package/dist/index.cjs539.js.map +1 -1
- package/dist/index.cjs540.js +1 -1
- package/dist/index.cjs540.js.map +1 -1
- package/dist/index.cjs541.js +1 -1
- package/dist/index.cjs541.js.map +1 -1
- package/dist/index.cjs542.js +1 -1
- package/dist/index.cjs542.js.map +1 -1
- package/dist/index.cjs543.js +1 -1
- package/dist/index.cjs543.js.map +1 -1
- package/dist/index.cjs544.js +1 -1
- package/dist/index.cjs544.js.map +1 -1
- package/dist/index.cjs545.js +1 -1
- package/dist/index.cjs545.js.map +1 -1
- package/dist/index.cjs546.js +1 -1
- package/dist/index.cjs546.js.map +1 -1
- package/dist/index.cjs547.js +1 -1
- package/dist/index.cjs547.js.map +1 -1
- package/dist/index.cjs548.js +1 -1
- package/dist/index.cjs548.js.map +1 -1
- package/dist/index.cjs549.js +1 -1
- package/dist/index.cjs549.js.map +1 -1
- package/dist/index.cjs550.js +1 -1
- package/dist/index.cjs550.js.map +1 -1
- package/dist/index.cjs551.js +1 -1
- package/dist/index.cjs551.js.map +1 -1
- package/dist/index.cjs552.js +1 -1
- package/dist/index.cjs552.js.map +1 -1
- package/dist/index.cjs553.js +1 -1
- package/dist/index.cjs553.js.map +1 -1
- package/dist/index.cjs554.js +1 -1
- package/dist/index.cjs554.js.map +1 -1
- package/dist/index.cjs555.js +1 -1
- package/dist/index.cjs555.js.map +1 -1
- package/dist/index.cjs556.js +1 -1
- package/dist/index.cjs556.js.map +1 -1
- package/dist/index.cjs557.js +1 -1
- package/dist/index.cjs557.js.map +1 -1
- package/dist/index.cjs558.js +1 -1
- package/dist/index.cjs558.js.map +1 -1
- package/dist/index.cjs559.js +1 -1
- package/dist/index.cjs559.js.map +1 -1
- package/dist/index.cjs560.js +1 -1
- package/dist/index.cjs560.js.map +1 -1
- package/dist/index.cjs561.js +1 -1
- package/dist/index.cjs561.js.map +1 -1
- package/dist/index.cjs563.js +1 -1
- package/dist/index.cjs565.js +1 -1
- package/dist/index.cjs566.js +1 -1
- package/dist/index.cjs570.js +1 -1
- package/dist/index.cjs570.js.map +1 -1
- package/dist/index.cjs571.js +1 -1
- package/dist/index.cjs571.js.map +1 -1
- package/dist/index.cjs572.js +1 -1
- package/dist/index.cjs572.js.map +1 -1
- package/dist/index.cjs573.js +1 -1
- package/dist/index.cjs573.js.map +1 -1
- package/dist/index.cjs574.js +1 -1
- package/dist/index.cjs574.js.map +1 -1
- package/dist/index.cjs580.js +38 -1
- package/dist/index.cjs580.js.map +1 -1
- package/dist/index.cjs581.js +1 -1
- package/dist/index.cjs581.js.map +1 -1
- package/dist/index.cjs582.js +1 -1
- package/dist/index.cjs582.js.map +1 -1
- package/dist/index.cjs583.js +1 -38
- package/dist/index.cjs583.js.map +1 -1
- package/dist/index.cjs584.js +1 -1
- package/dist/index.cjs584.js.map +1 -1
- package/dist/index.cjs585.js +1 -1
- package/dist/index.cjs585.js.map +1 -1
- package/dist/index.cjs586.js +1 -1
- package/dist/index.cjs586.js.map +1 -1
- package/dist/index.cjs587.js +1 -1
- package/dist/index.cjs587.js.map +1 -1
- package/dist/index.cjs6.js +1 -1
- package/dist/index.cjs64.js +1 -1
- package/dist/index.cjs69.js.map +1 -1
- package/dist/index.cjs7.js +1 -1
- package/dist/index.cjs73.js +1 -1
- package/dist/index.cjs73.js.map +1 -1
- package/dist/index.cjs74.js +1 -1
- package/dist/index.cjs74.js.map +1 -1
- package/dist/index.cjs8.js +1 -1
- package/dist/index.cjs9.js +1 -1
- package/dist/index.es10.js +2 -2
- package/dist/index.es156.js +1 -1
- package/dist/index.es157.js +1 -1
- package/dist/index.es158.js +1 -1
- package/dist/index.es159.js +1 -1
- package/dist/index.es160.js +1 -1
- package/dist/index.es161.js +1 -1
- package/dist/index.es162.js +1 -1
- package/dist/index.es163.js +1 -1
- package/dist/index.es164.js +1 -1
- package/dist/index.es165.js +1 -1
- package/dist/index.es166.js +1 -1
- package/dist/index.es167.js +1 -1
- package/dist/index.es168.js +1 -1
- package/dist/index.es169.js +1 -1
- package/dist/index.es170.js +1 -1
- package/dist/index.es171.js +1 -1
- package/dist/index.es172.js +1 -1
- package/dist/index.es173.js +1 -1
- package/dist/index.es174.js +1 -1
- package/dist/index.es175.js +1 -1
- package/dist/index.es176.js +1 -1
- package/dist/index.es177.js +1 -1
- package/dist/index.es178.js +1 -1
- package/dist/index.es182.js +1 -1
- package/dist/index.es183.js +1 -1
- package/dist/index.es184.js +1 -1
- package/dist/index.es186.js +1 -1
- package/dist/index.es187.js +1 -1
- package/dist/index.es188.js +1 -1
- package/dist/index.es189.js +1 -1
- package/dist/index.es190.js +1 -1
- package/dist/index.es191.js +1 -1
- package/dist/index.es192.js +1 -1
- package/dist/index.es193.js +1 -1
- package/dist/index.es194.js +1 -1
- package/dist/index.es196.js +1 -1
- package/dist/index.es197.js +1 -1
- package/dist/index.es198.js +1 -1
- package/dist/index.es199.js +1 -1
- package/dist/index.es200.js +1 -1
- package/dist/index.es201.js +1 -1
- package/dist/index.es202.js +1 -1
- package/dist/index.es205.js +1 -1
- package/dist/index.es206.js +1 -1
- package/dist/index.es207.js +1 -1
- package/dist/index.es208.js +1 -1
- package/dist/index.es209.js +1 -1
- package/dist/index.es210.js +1 -1
- package/dist/index.es211.js +1 -1
- package/dist/index.es212.js +1 -1
- package/dist/index.es213.js +1 -1
- package/dist/index.es214.js +1 -1
- package/dist/index.es220.js +1 -1
- package/dist/index.es222.js +1 -1
- package/dist/index.es223.js +1 -1
- package/dist/index.es24.js +1 -1
- package/dist/index.es247.js +1 -1
- package/dist/index.es254.js +2 -2
- package/dist/index.es273.js +2 -27
- package/dist/index.es273.js.map +1 -1
- package/dist/index.es274.js +30 -0
- package/dist/index.es274.js.map +1 -0
- package/dist/index.es28.js +1 -1
- package/dist/index.es283.js +1 -1
- package/dist/index.es292.js +7 -7
- package/dist/index.es295.js +1 -1
- package/dist/index.es297.js +1 -1
- package/dist/index.es305.js +5 -5
- package/dist/index.es316.js +1 -1
- package/dist/index.es321.js +1 -1
- package/dist/index.es323.js +13 -13
- package/dist/index.es33.js.map +1 -1
- package/dist/index.es330.js +1 -1
- package/dist/index.es335.js +1 -1
- package/dist/index.es346.js +1 -1
- package/dist/index.es352.js +1 -1
- package/dist/index.es353.js +1 -1
- package/dist/index.es354.js +5 -5
- package/dist/index.es372.js +6 -6
- package/dist/index.es373.js +2 -2
- package/dist/index.es395.js +4 -4
- package/dist/index.es413.js +8 -8
- package/dist/index.es435.js +1 -1
- package/dist/index.es443.js +1 -1
- package/dist/index.es453.js +1 -1
- package/dist/index.es454.js +1 -1
- package/dist/index.es455.js +5 -3674
- package/dist/index.es455.js.map +1 -1
- package/dist/index.es456.js +520 -5
- package/dist/index.es456.js.map +1 -1
- package/dist/index.es457.js +3675 -2
- package/dist/index.es457.js.map +1 -1
- package/dist/index.es458.js +5 -5
- package/dist/index.es458.js.map +1 -1
- package/dist/index.es459.js +2 -521
- package/dist/index.es459.js.map +1 -1
- package/dist/index.es464.js +15 -7
- package/dist/index.es464.js.map +1 -1
- package/dist/index.es467.js +6 -29
- package/dist/index.es467.js.map +1 -1
- package/dist/index.es468.js +26 -32
- package/dist/index.es468.js.map +1 -1
- package/dist/index.es469.js +63 -617
- package/dist/index.es469.js.map +1 -1
- package/dist/index.es470.js +29 -10
- package/dist/index.es470.js.map +1 -1
- package/dist/index.es471.js +33 -15
- package/dist/index.es471.js.map +1 -1
- package/dist/index.es472.js +625 -0
- package/dist/index.es472.js.map +1 -0
- package/dist/index.es473.js +14 -0
- package/dist/index.es473.js.map +1 -0
- package/dist/index.es476.js +1 -1
- package/dist/{index.es494.js → index.es477.js} +2 -2
- package/dist/{index.es494.js.map → index.es477.js.map} +1 -1
- package/dist/index.es483.js +116 -126
- package/dist/index.es483.js.map +1 -1
- package/dist/index.es484.js +134 -13
- package/dist/index.es484.js.map +1 -1
- package/dist/index.es485.js +13 -14
- package/dist/index.es485.js.map +1 -1
- package/dist/index.es486.js +14 -8
- package/dist/index.es486.js.map +1 -1
- package/dist/index.es487.js +9 -50
- package/dist/index.es487.js.map +1 -1
- package/dist/index.es488.js +49 -55
- package/dist/index.es488.js.map +1 -1
- package/dist/index.es489.js +59 -0
- package/dist/index.es489.js.map +1 -0
- package/dist/index.es508.js +1 -1
- package/dist/{index.es515.js → index.es512.js} +1 -1
- package/dist/index.es512.js.map +1 -0
- package/dist/index.es513.js +5 -0
- package/dist/index.es513.js.map +1 -0
- package/dist/index.es516.js +5 -2
- package/dist/index.es516.js.map +1 -1
- package/dist/index.es522.js +3 -3
- package/dist/index.es524.js +6 -6
- package/dist/index.es525.js +6 -6
- package/dist/index.es527.js +2 -14
- package/dist/index.es527.js.map +1 -1
- package/dist/index.es528.js +14 -2
- package/dist/index.es528.js.map +1 -1
- package/dist/index.es529.js +22 -202
- package/dist/index.es529.js.map +1 -1
- package/dist/index.es530.js +27 -20
- package/dist/index.es530.js.map +1 -1
- package/dist/index.es531.js +5 -393
- package/dist/index.es531.js.map +1 -1
- package/dist/index.es532.js +202 -22
- package/dist/index.es532.js.map +1 -1
- package/dist/index.es533.js +20 -27
- package/dist/index.es533.js.map +1 -1
- package/dist/index.es534.js +393 -5
- package/dist/index.es534.js.map +1 -1
- package/dist/index.es535.js +83 -5
- package/dist/index.es535.js.map +1 -1
- package/dist/index.es536.js +5 -16
- package/dist/index.es536.js.map +1 -1
- package/dist/index.es537.js +15 -12
- package/dist/index.es537.js.map +1 -1
- package/dist/index.es538.js +13 -36
- package/dist/index.es538.js.map +1 -1
- package/dist/index.es539.js +36 -5
- package/dist/index.es539.js.map +1 -1
- package/dist/index.es540.js +5 -2
- package/dist/index.es540.js.map +1 -1
- package/dist/index.es541.js +2 -3
- package/dist/index.es541.js.map +1 -1
- package/dist/index.es542.js +3 -7
- package/dist/index.es542.js.map +1 -1
- package/dist/index.es543.js +7 -6
- package/dist/index.es543.js.map +1 -1
- package/dist/index.es544.js +6 -5
- package/dist/index.es544.js.map +1 -1
- package/dist/index.es545.js +5 -32
- package/dist/index.es545.js.map +1 -1
- package/dist/index.es546.js +32 -242
- package/dist/index.es546.js.map +1 -1
- package/dist/index.es547.js +242 -4
- package/dist/index.es547.js.map +1 -1
- package/dist/index.es548.js +4 -5
- package/dist/index.es548.js.map +1 -1
- package/dist/index.es549.js +4 -9
- package/dist/index.es549.js.map +1 -1
- package/dist/index.es550.js +9 -55
- package/dist/index.es550.js.map +1 -1
- package/dist/index.es551.js +55 -7
- package/dist/index.es551.js.map +1 -1
- package/dist/index.es552.js +7 -5
- package/dist/index.es552.js.map +1 -1
- package/dist/index.es553.js +5 -532
- package/dist/index.es553.js.map +1 -1
- package/dist/index.es554.js +532 -13
- package/dist/index.es554.js.map +1 -1
- package/dist/index.es555.js +14 -2
- package/dist/index.es555.js.map +1 -1
- package/dist/index.es556.js +2 -37
- package/dist/index.es556.js.map +1 -1
- package/dist/index.es557.js +37 -2
- package/dist/index.es557.js.map +1 -1
- package/dist/index.es558.js +2 -273
- package/dist/index.es558.js.map +1 -1
- package/dist/index.es559.js +273 -3
- package/dist/index.es559.js.map +1 -1
- package/dist/index.es560.js +3 -30
- package/dist/index.es560.js.map +1 -1
- package/dist/index.es561.js +28 -81
- package/dist/index.es561.js.map +1 -1
- package/dist/index.es563.js +1 -1
- package/dist/index.es565.js +5 -5
- package/dist/index.es566.js +1 -1
- package/dist/index.es570.js +6 -2
- package/dist/index.es570.js.map +1 -1
- package/dist/index.es571.js +16 -2
- package/dist/index.es571.js.map +1 -1
- package/dist/index.es572.js +2 -2
- package/dist/index.es572.js.map +1 -1
- package/dist/index.es573.js +2 -6
- package/dist/index.es573.js.map +1 -1
- package/dist/index.es574.js +2 -16
- package/dist/index.es574.js.map +1 -1
- package/dist/index.es580.js +64 -518
- package/dist/index.es580.js.map +1 -1
- package/dist/index.es581.js +8 -126
- package/dist/index.es581.js.map +1 -1
- package/dist/index.es582.js +13 -128
- package/dist/index.es582.js.map +1 -1
- package/dist/index.es583.js +61 -68
- package/dist/index.es583.js.map +1 -1
- package/dist/index.es584.js +64 -8
- package/dist/index.es584.js.map +1 -1
- package/dist/index.es585.js +520 -11
- package/dist/index.es585.js.map +1 -1
- package/dist/index.es586.js +126 -61
- package/dist/index.es586.js.map +1 -1
- package/dist/index.es587.js +125 -61
- package/dist/index.es587.js.map +1 -1
- package/dist/index.es6.js +1 -1
- package/dist/index.es64.js +1 -1
- package/dist/index.es69.js.map +1 -1
- package/dist/index.es7.js +1 -1
- package/dist/index.es73.js +73 -73
- package/dist/index.es73.js.map +1 -1
- package/dist/index.es74.js +63 -56
- package/dist/index.es74.js.map +1 -1
- package/dist/index.es8.js +1 -1
- package/dist/index.es9.js +2 -2
- package/package.json +1 -1
- package/dist/index.cjs275.js +0 -2
- package/dist/index.cjs275.js.map +0 -1
- package/dist/index.cjs465.js +0 -2
- package/dist/index.cjs465.js.map +0 -1
- package/dist/index.cjs466.js +0 -2
- package/dist/index.cjs466.js.map +0 -1
- package/dist/index.cjs482.js +0 -2
- package/dist/index.cjs482.js.map +0 -1
- package/dist/index.cjs514.js +0 -2
- package/dist/index.cjs514.js.map +0 -1
- package/dist/index.cjs515.js.map +0 -1
- package/dist/index.es275.js +0 -5
- package/dist/index.es275.js.map +0 -1
- package/dist/index.es465.js +0 -30
- package/dist/index.es465.js.map +0 -1
- package/dist/index.es466.js +0 -71
- package/dist/index.es466.js.map +0 -1
- package/dist/index.es482.js +0 -128
- package/dist/index.es482.js.map +0 -1
- package/dist/index.es514.js +0 -8
- package/dist/index.es514.js.map +0 -1
- package/dist/index.es515.js.map +0 -1
- /package/dist/components/ui/{DoctorModal/DoctorModalFooter/DoctorModalFooter.css → ConsentModal/ConsentModalFooter/ConsentModalFooter.css} +0 -0
package/dist/index.cjs73.js
CHANGED
@@ -1,2 +1,2 @@
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require('./components/ui/Table/Table.css');const t=require("./index.cjs243.js"),z=require("react"),d=require("./index.cjs245.js");;/* empty css */const se=require("./index.cjs67.js"),ae=require("./index.cjs197.js"),
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require('./components/ui/Table/Table.css');const t=require("./index.cjs243.js"),z=require("react"),d=require("./index.cjs245.js");;/* empty css */const se=require("./index.cjs67.js"),ae=require("./index.cjs197.js"),ie=require("./index.cjs198.js"),ne=require("./index.cjs190.js"),le=require("./index.cjs199.js");function oe(e){const s=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const a in e)if(a!=="default"){const n=Object.getOwnPropertyDescriptor(e,a);Object.defineProperty(s,a,n.get?n:{enumerable:!0,get:()=>e[a]})}}return s.default=e,Object.freeze(s)}const f=oe(z),U=f.forwardRef(({className:e,columns:s,data:a,pagination:n,initialCurrentPage:R=1,resultsPerPage:E=10,defaultSortDirection:b="desc",setSelectedSort:l,initialSortConfig:h,serverSidePagination:m=!1,totalItems:N,hasNextPage:T,hasPreviousPage:C,onNextPage:u,onPreviousPage:k,onPageChange:I,...L},D)=>{const[o,M]=f.useState(h||{key:s[0].key||s[0].label,direction:b}),[i,q]=f.useState(R);z.useEffect(()=>{h&&M(h)},[h]);const c=f.useMemo(()=>[...a].sort((x,y)=>{const p=x[o.key],j=y[o.key],_=s.find(r=>(r.key||r.label)===o.key);if(typeof p=="string"&&typeof j=="string"){if((_==null?void 0:_.type)==="date"){const r=W=>{const[X,Y]=W.split(" - "),[Z,K,S]=X.split("/").map(Number),[ee,te]=Y.split(":").map(Number);return new Date(S,K-1,Z,ee,te)},g=r(p),F=r(j);return o.direction==="asc"?g.getTime()-F.getTime():F.getTime()-g.getTime()}if((_==null?void 0:_.type)==="number"){const r=parseFloat(p),g=parseFloat(j);return o.direction==="asc"?r-g:g-r}return o.direction==="asc"?p.localeCompare(j):j.localeCompare(p)}return A(p)&&A(j)?o.direction==="asc"?p.firstLine.localeCompare(j.firstLine):j.firstLine.localeCompare(p.firstLine):0}),[a,o,s]),v=x=>{const y={key:x,direction:o.key===x&&o.direction==="asc"?"desc":"asc"};M(y),l&&l(y)},w=n&&!m?(i-1)*E:0,P=n&&!m?Math.min(w+E,c.length):c.length,Q=m?c:c.slice(w,P);return t.jsxRuntimeExports.jsxs("div",{className:"position-relative w-full",children:[t.jsxRuntimeExports.jsxs("table",{ref:D,className:d.clsx("table",e),role:"table",...L,children:[t.jsxRuntimeExports.jsx(B,{className:"table__header",children:t.jsxRuntimeExports.jsx($,{children:s.map((x,y)=>t.jsxRuntimeExports.jsx(O,{config:x,sortConfig:o,onSort:()=>x.sortable&&v(x.key||x.label),variant:L.variant},`${x.label}-${y}`))})}),t.jsxRuntimeExports.jsx(H,{className:"table__body",children:Q.map((x,y)=>t.jsxRuntimeExports.jsx($,{className:"table__row",children:s.map((p,j)=>{const _=p.key||p.label,r=x[_];return t.jsxRuntimeExports.jsx(V,{content:r||"",type:r&&A(r)?"double-line":r&&G(r)?"action":void 0},`${_}-${j}`)})},y))})]}),n&&t.jsxRuntimeExports.jsx(J,{currentPage:i,totalResults:m?N||0:c.length,currentResultsPerPage:a.length,resultsPerPage:E,setCurrentPage:q,onPageChange:I,serverSide:m,totalItems:N,hasNextPage:T,hasPreviousPage:C,onNextPage:u,onPreviousPage:k})]})});U.displayName="Table";const B=f.forwardRef(({className:e,children:s,...a},n)=>t.jsxRuntimeExports.jsx("thead",{ref:n,className:d.clsx("[&_tr]:border-b-0",e),...a,children:s}));B.displayName="TableHeader";const H=f.forwardRef(({className:e,children:s,...a},n)=>t.jsxRuntimeExports.jsx("tbody",{ref:n,className:d.clsx("[&_tr:last-child]:border-0",e),...a,children:s}));H.displayName="TableBody";const $=f.forwardRef(({className:e,children:s,...a},n)=>t.jsxRuntimeExports.jsx("tr",{ref:n,className:d.clsx("border-b transition-colors hover:bg-muted/50 data-[state=selected]:bg-muted",e),...a,children:s}));$.displayName="TableRow";const O=f.forwardRef(({className:e,config:s,sortConfig:a,onSort:n,...R},E)=>{var N;const b=a.key===(s.key||s.label),l=b?a.direction:null,h=()=>l==="asc"?"ascending":"descending",m=T=>{switch(T){case"info":return t.jsxRuntimeExports.jsx(le.Info,{});case"download":return t.jsxRuntimeExports.jsx(ne.Download,{});default:return T}};return t.jsxRuntimeExports.jsx("th",{ref:E,className:d.clsx("table__cell table__cell--header",{"table__cell--sortable":s.sortable,"table__cell--action":s.action},e),onClick:s.sortable?n:s.action,"aria-label":s.ariaLabel,"aria-sort":b?h():void 0,...R,children:t.jsxRuntimeExports.jsxs("div",{className:"table__cell--header--content",children:[t.jsxRuntimeExports.jsx("div",{children:t.jsxRuntimeExports.jsx(se.ActionIconText,{icon:m(s.icon),noIcon:!m(s.icon),textLabel:s.label,iconPosition:s.iconPosition,handleIconAction:()=>{s.iconAction&&s.iconAction()},popupInfo:s.popupInfo,positionPopUp:(N=s.popupInfo)==null?void 0:N.positionPopUp,classNameText:R.variant&&"fw-bold text-slate-28 fs-custom md-fs-6"})}),s.sortable&&t.jsxRuntimeExports.jsxs("span",{className:"sort-indicator",children:[t.jsxRuntimeExports.jsx(ae.TriangleUp,{filled:b&&l==="desc",className:d.clsx("sort-indicator__triangle",{active:b&&l==="desc"})}),t.jsxRuntimeExports.jsx(ie.TriangleDown,{filled:b&&l==="asc",className:d.clsx("sort-indicator__triangle",{active:b&&l==="asc"})})]})]})})});O.displayName="TableHead";const re=({data:e})=>t.jsxRuntimeExports.jsxs(t.jsxRuntimeExports.Fragment,{children:[t.jsxRuntimeExports.jsx("div",{className:"table__cell--firstLine",children:e.firstLine}),t.jsxRuntimeExports.jsx("div",{className:"table__cell--secondLine",children:e.secondLine})]}),ce=({data:e})=>e.type==="link"&&e.link?t.jsxRuntimeExports.jsx("a",{href:e.link,"aria-label":e.ariaLabel,children:e.label}):t.jsxRuntimeExports.jsx("button",{onClick:e.action,"aria-label":e.ariaLabel,children:e.label}),A=e=>typeof e=="object"&&e!==null&&"firstLine"in e&&"secondLine"in e,G=e=>typeof e=="object"&&e!==null&&"label"in e&&"type"in e,xe=({content:e})=>typeof e=="string"?t.jsxRuntimeExports.jsx(t.jsxRuntimeExports.Fragment,{children:e}):A(e)?t.jsxRuntimeExports.jsx(re,{data:e}):G(e)?t.jsxRuntimeExports.jsx(ce,{data:e}):null,V=f.forwardRef(({className:e,content:s,type:a,...n},R)=>t.jsxRuntimeExports.jsx("td",{ref:R,className:d.clsx("table__cell",{"table__cell--double-line":a==="double-line","table__cell--action":a==="action"},e),...n,children:t.jsxRuntimeExports.jsx(xe,{content:s})}));V.displayName="TableCell";const J=({currentPage:e=1,totalResults:s,resultsPerPage:a,currentResultsPerPage:n,setCurrentPage:R,onPageChange:E,className:b,serverSide:l=!1,totalItems:h,hasNextPage:m,hasPreviousPage:N,onNextPage:T,onPreviousPage:C})=>{const u=Math.ceil(l?(h||s)/a:s/a),k=i=>{R(i),E&&E(i)},I=()=>{const i=e+1;l&&T&&T(),k(i)},L=()=>{const i=e-1;l&&C&&C(),k(i)},D=l?!m:e===u,o=l?!N:e===1,M=()=>{const i=[];if(u<=5)for(let c=1;c<=u;c++)i.push(c);else{i.push(1);let c=Math.max(2,e-1),v=Math.min(u-1,e+1);e<=3?v=4:e>=u-2&&(c=u-3),c>2&&i.push("...");for(let w=c;w<=v;w++)i.push(w);v<u-1&&i.push("..."),i.push(u)}return i};return t.jsxRuntimeExports.jsxs("div",{className:d.clsx("pagination",b),children:[t.jsxRuntimeExports.jsxs("div",{className:"pagination__info",children:["Stai visualizzando"," ",t.jsxRuntimeExports.jsx("span",{className:"pagination__info__resultsPerPage",children:l?n:e===u&&s%a!==0?s%a:a})," ","di ",l&&h||s," risultati"]}),t.jsxRuntimeExports.jsxs("div",{className:"pagination__nav",children:[t.jsxRuntimeExports.jsx("button",{className:d.clsx("pagination__button",o&&"pagination__button--disabled"),onClick:L,disabled:o,"aria-label":"Previous page",children:t.jsxRuntimeExports.jsx("svg",{className:"pagination__button-arrow",viewBox:"0 0 24 24","aria-hidden":"true",children:t.jsxRuntimeExports.jsx("path",{d:"M15 18l-6-6 6-6"})})}),M().map((i,q)=>i==="..."?t.jsxRuntimeExports.jsx("span",{className:"pagination__ellipsis",children:"..."},`ellipsis-${q}`):t.jsxRuntimeExports.jsx("button",{className:d.clsx("pagination__button",e===i&&"pagination__button--active"),onClick:()=>k(i),disabled:i===e,children:i},i)),t.jsxRuntimeExports.jsx("button",{className:d.clsx("pagination__button",D&&"pagination__button--disabled"),onClick:I,disabled:D,"aria-label":"Next page",children:t.jsxRuntimeExports.jsx("svg",{className:"pagination__button-arrow",viewBox:"0 0 24 24","aria-hidden":"true",children:t.jsxRuntimeExports.jsx("path",{d:"M9 6l6 6-6 6"})})})]})]})};exports.Pagination=J;exports.Table=U;exports.TableBody=H;exports.TableCell=V;exports.TableHead=O;exports.TableHeader=B;exports.TableRow=$;
|
2
2
|
//# sourceMappingURL=index.cjs73.js.map
|
package/dist/index.cjs73.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.cjs73.js","sources":["../src/components/ui/Table/index.tsx"],"sourcesContent":["import * as React from \"react\";\nimport clsx from \"clsx\";\nimport \"./Table.scss\";\nimport { Download, Info, TriangleDown, TriangleUp } from \"@/icons\";\nimport { ActionIconText } from \"@/components\";\nimport { CommonIconsType } from \"@/types/icons\";\nimport { InfoPopupProps } from \"../InfoPopup\";\nimport { useEffect } from \"react\";\n\n// per le celle che vanno renderizzate su due righe\nexport interface DoubleLineData {\n firstLine: string;\n secondLine: string;\n}\n\n//per le celle che renderizzano un link o un bottone\nexport interface ActionData {\n label: string | React.ReactNode;\n ariaLabel: string;\n type: \"link\" | \"button\";\n link?: string;\n action?: () => void;\n}\n\nexport interface ColumnConfig {\n label: string;\n ariaLabel: string;\n sortable: boolean;\n action?: () => void;\n iconAction?: () => void;\n popupInfo?: InfoPopupProps;\n icon?: React.ReactNode | CommonIconsType;\n iconPosition?: \"left\" | \"right\";\n key?: string;\n type?: \"string\" | \"date\" | \"number\";\n}\n\nexport interface TableRowData {\n [key: string]: string | DoubleLineData | ActionData;\n}\n\nexport interface TableHeaderProps\n extends React.HTMLAttributes<HTMLTableSectionElement> {\n className?: string;\n children?: React.ReactNode;\n}\n\nexport interface TableBodyProps\n extends React.HTMLAttributes<HTMLTableSectionElement> {\n className?: string;\n children?: React.ReactNode;\n}\n\nexport interface TableRowProps\n extends React.HTMLAttributes<HTMLTableRowElement> {\n className?: string;\n children?: React.ReactNode;\n}\n\nexport interface TableHeadProps\n extends React.ThHTMLAttributes<HTMLTableCellElement> {\n className?: string;\n children?: React.ReactNode;\n}\n\nexport interface TableCellBaseProps\n extends Omit<React.TdHTMLAttributes<HTMLTableCellElement>, \"content\"> {\n type?: \"double-line\" | \"action\";\n}\n\nexport interface TableCellProps extends TableCellBaseProps {\n content: string | DoubleLineData | ActionData;\n}\n\nexport interface PaginationProps {\n currentPage: number;\n totalResults: number;\n currentResultsPerPage?: number; // used to display 8 di 188 if user is in the last page\n resultsPerPage: number;\n setCurrentPage: (page: number) => void;\n onPageChange?: (page: number) => void;\n className?: string;\n serverSide?: boolean;\n totalItems?: number;\n hasNextPage?: boolean;\n hasPreviousPage?: boolean;\n onNextPage?: () => void;\n onPreviousPage?: () => void;\n}\n\nexport interface TableProps\n extends React.TableHTMLAttributes<HTMLTableElement> {\n className?: string;\n columns: ColumnConfig[];\n data: TableRowData[];\n pagination?: boolean;\n initialCurrentPage?: number;\n resultsPerPage?: number;\n defaultSortDirection?: \"asc\" | \"desc\";\n setSelectedSort?: (sortConfig: {\n key: string;\n direction: \"asc\" | \"desc\";\n }) => void;\n initialSortConfig?: { key: string; direction: \"asc\" | \"desc\" };\n serverSidePagination?: boolean;\n totalItems?: number;\n hasNextPage?: boolean;\n hasPreviousPage?: boolean;\n onNextPage?: () => void;\n onPreviousPage?: () => void;\n onPageChange?: (page: number) => void;\n variant?: \"default\" | \"exemptions\";\n}\n\nconst Table = React.forwardRef<HTMLTableElement, TableProps>(\n (\n {\n className,\n columns,\n data,\n pagination,\n initialCurrentPage = 1,\n resultsPerPage = 10,\n defaultSortDirection = \"desc\",\n setSelectedSort,\n initialSortConfig,\n serverSidePagination = false,\n totalItems,\n hasNextPage,\n hasPreviousPage,\n onNextPage,\n onPreviousPage,\n onPageChange,\n ...props\n },\n ref,\n ) => {\n const [sortConfig, setSortConfig] = React.useState<{\n key: string;\n direction: \"asc\" | \"desc\";\n }>(\n initialSortConfig || {\n key: columns[0].key || columns[0].label,\n direction: defaultSortDirection,\n },\n );\n const [currentPage, setCurrentPage] = React.useState(initialCurrentPage);\n\n useEffect(() => {\n if (initialSortConfig) {\n setSortConfig(initialSortConfig);\n }\n }, [initialSortConfig]);\n\n const sortedData = React.useMemo(() => {\n return [...data].sort((a, b) => {\n const aValue = a[sortConfig.key];\n const bValue = b[sortConfig.key];\n const column = columns.find(\n (col) => (col.key || col.label) === sortConfig.key,\n );\n\n if (typeof aValue === \"string\" && typeof bValue === \"string\") {\n if (column?.type === \"date\") {\n // Convert Italian date format (DD/MM/YYYY - HH:mm) to Date object\n const parseDate = (dateStr: string) => {\n const [datePart, timePart] = dateStr.split(\" - \");\n const [day, month, year] = datePart.split(\"/\").map(Number);\n const [hours, minutes] = timePart.split(\":\").map(Number);\n return new Date(year, month - 1, day, hours, minutes);\n };\n\n const dateA = parseDate(aValue);\n const dateB = parseDate(bValue);\n return sortConfig.direction === \"asc\"\n ? dateA.getTime() - dateB.getTime()\n : dateB.getTime() - dateA.getTime();\n }\n\n if (column?.type === \"number\") {\n const numA = parseFloat(aValue);\n const numB = parseFloat(bValue);\n return sortConfig.direction === \"asc\" ? numA - numB : numB - numA;\n }\n\n return sortConfig.direction === \"asc\"\n ? aValue.localeCompare(bValue)\n : bValue.localeCompare(aValue);\n }\n\n if (isDoubleLineData(aValue) && isDoubleLineData(bValue)) {\n return sortConfig.direction === \"asc\"\n ? aValue.firstLine.localeCompare(bValue.firstLine)\n : bValue.firstLine.localeCompare(aValue.firstLine);\n }\n\n return 0;\n });\n }, [data, sortConfig, columns]);\n\n const handleSort = (columnKey: string) => {\n const newSortConfig = {\n key: columnKey,\n direction:\n sortConfig.key === columnKey && sortConfig.direction === \"asc\"\n ? \"desc\"\n : \"asc\",\n } as { key: string; direction: \"asc\" | \"desc\" };\n\n setSortConfig(newSortConfig);\n if (setSelectedSort) {\n setSelectedSort(newSortConfig);\n }\n };\n\n const startIndex =\n pagination && !serverSidePagination\n ? (currentPage - 1) * resultsPerPage\n : 0;\n const endIndex =\n pagination && !serverSidePagination\n ? Math.min(startIndex + resultsPerPage, sortedData.length)\n : sortedData.length;\n const currentPageData = serverSidePagination\n ? sortedData\n : sortedData.slice(startIndex, endIndex);\n\n return (\n <div className=\"position-relative w-full\">\n <table\n ref={ref}\n className={clsx(\"table\", className)}\n role=\"table\"\n {...props}\n >\n <TableHeader className=\"table__header\">\n <TableRow>\n {columns.map((column, index) => (\n <TableHead\n key={`${column.label}-${index}`}\n config={column}\n sortConfig={sortConfig}\n onSort={() =>\n column.sortable && handleSort(column.key || column.label)\n }\n variant={props.variant}\n />\n ))}\n </TableRow>\n </TableHeader>\n <TableBody className=\"table__body\">\n {currentPageData.map((row, rowIndex) => (\n <TableRow key={rowIndex} className=\"table__row\">\n {columns.map((column, cellIndex) => {\n const key = column.key || column.label;\n const value = row[key];\n return (\n <TableCell\n key={`${key}-${cellIndex}`}\n content={value || \"\"}\n type={\n value && isDoubleLineData(value)\n ? \"double-line\"\n : value && isActionData(value)\n ? \"action\"\n : undefined\n }\n />\n );\n })}\n </TableRow>\n ))}\n </TableBody>\n </table>\n {pagination && (\n <Pagination\n currentPage={currentPage}\n totalResults={\n serverSidePagination ? totalItems || 0 : sortedData.length\n }\n currentResultsPerPage={data.length}\n resultsPerPage={resultsPerPage}\n setCurrentPage={setCurrentPage}\n onPageChange={onPageChange}\n serverSide={serverSidePagination}\n totalItems={totalItems}\n hasNextPage={hasNextPage}\n hasPreviousPage={hasPreviousPage}\n onNextPage={onNextPage}\n onPreviousPage={onPreviousPage}\n />\n )}\n </div>\n );\n },\n);\nTable.displayName = \"Table\";\n\nconst TableHeader = React.forwardRef<HTMLTableSectionElement, TableHeaderProps>(\n ({ className, children, ...props }, ref) => (\n <thead\n ref={ref}\n className={clsx(\"[&_tr]:border-b-0\", className)}\n {...props}\n >\n {children}\n </thead>\n ),\n);\nTableHeader.displayName = \"TableHeader\";\n\nconst TableBody = React.forwardRef<HTMLTableSectionElement, TableBodyProps>(\n ({ className, children, ...props }, ref) => (\n <tbody\n ref={ref}\n className={clsx(\"[&_tr:last-child]:border-0\", className)}\n {...props}\n >\n {children}\n </tbody>\n ),\n);\nTableBody.displayName = \"TableBody\";\n\nconst TableRow = React.forwardRef<HTMLTableRowElement, TableRowProps>(\n ({ className, children, ...props }, ref) => (\n <tr\n ref={ref}\n className={clsx(\n \"border-b transition-colors hover:bg-muted/50 data-[state=selected]:bg-muted\",\n className,\n )}\n {...props}\n >\n {children}\n </tr>\n ),\n);\nTableRow.displayName = \"TableRow\";\n\nconst TableHead = React.forwardRef<\n HTMLTableCellElement,\n TableHeadProps & {\n config: ColumnConfig;\n sortConfig: { key: string; direction: \"asc\" | \"desc\" };\n onSort?: () => void;\n variant?: \"default\" | \"exemptions\";\n }\n>(({ className, config, sortConfig, onSort, ...props }, ref) => {\n const isSorted = sortConfig.key === (config.key || config.label);\n const sortDirection = isSorted ? sortConfig.direction : null;\n\n const getAriaSortValue = (): \"ascending\" | \"descending\" => {\n return sortDirection === \"asc\" ? \"ascending\" : \"descending\";\n };\n\n const renderIcon = (icon: React.ReactNode | CommonIconsType) => {\n switch (icon) {\n case \"info\":\n return <Info />;\n case \"download\":\n return <Download />;\n default:\n return icon;\n }\n };\n\n return (\n <th\n ref={ref}\n className={clsx(\n \"table__cell table__cell--header\",\n {\n \"table__cell--sortable\": config.sortable,\n \"table__cell--action\": config.action,\n },\n className,\n )}\n onClick={config.sortable ? onSort : config.action}\n aria-label={config.ariaLabel}\n aria-sort={isSorted ? getAriaSortValue() : undefined}\n {...props}\n >\n <div className=\"table__cell--header--content\">\n <div>\n <ActionIconText\n icon={renderIcon(config.icon)}\n noIcon={!renderIcon(config.icon)}\n textLabel={config.label}\n iconPosition={config.iconPosition}\n handleIconAction={() => {\n if (config.iconAction) {\n config.iconAction();\n }\n }}\n popupInfo={config.popupInfo}\n positionPopUp={config.popupInfo?.positionPopUp}\n classNameText={\n props.variant && \"fw-bold text-slate-28 fs-custom md-fs-6\"\n }\n />\n </div>\n {config.sortable && (\n <span className=\"sort-indicator\">\n <TriangleUp\n filled={isSorted && sortDirection === \"desc\"}\n className={clsx(\"sort-indicator__triangle\", {\n active: isSorted && sortDirection === \"desc\",\n })}\n />\n <TriangleDown\n filled={isSorted && sortDirection === \"asc\"}\n className={clsx(\"sort-indicator__triangle\", {\n active: isSorted && sortDirection === \"asc\",\n })}\n />\n </span>\n )}\n </div>\n </th>\n );\n});\nTableHead.displayName = \"TableHead\";\n\nconst DoubleLineContent: React.FC<{ data: DoubleLineData }> = ({ data }) => (\n <>\n <div className=\"table__cell--firstLine\">{data.firstLine}</div>\n <div className=\"table__cell--secondLine\">{data.secondLine}</div>\n </>\n);\n\nconst ActionContent: React.FC<{ data: ActionData }> = ({ data }) => {\n if (data.type === \"link\" && data.link) {\n return (\n <a href={data.link} aria-label={data.ariaLabel}>\n {data.label}\n </a>\n );\n }\n return (\n <button onClick={data.action} aria-label={data.ariaLabel}>\n {data.label}\n </button>\n );\n};\n\n// check if we are rendering a double line data\nconst isDoubleLineData = (\n content: TableCellProps[\"content\"],\n): content is DoubleLineData => {\n return (\n typeof content === \"object\" &&\n content !== null &&\n \"firstLine\" in content &&\n \"secondLine\" in content\n );\n};\n\n// check if we are rendering an action data\nconst isActionData = (\n content: TableCellProps[\"content\"],\n): content is ActionData => {\n return (\n typeof content === \"object\" &&\n content !== null &&\n \"label\" in content &&\n \"type\" in content\n );\n};\n\nconst TableCellContent: React.FC<{ content: TableCellProps[\"content\"] }> = ({\n content,\n}) => {\n if (typeof content === \"string\") {\n return <>{content}</>;\n }\n if (isDoubleLineData(content)) {\n return <DoubleLineContent data={content} />;\n }\n if (isActionData(content)) {\n return <ActionContent data={content} />;\n }\n return null;\n};\n\nconst TableCell = React.forwardRef<HTMLTableCellElement, TableCellProps>(\n ({ className, content, type, ...props }, ref) => (\n <td\n ref={ref}\n className={clsx(\n \"table__cell\",\n {\n \"table__cell--double-line\": type === \"double-line\",\n \"table__cell--action\": type === \"action\",\n },\n className,\n )}\n {...props}\n >\n <TableCellContent content={content} />\n </td>\n ),\n);\nTableCell.displayName = \"TableCell\";\n\nconst Pagination: React.FC<PaginationProps> = ({\n currentPage = 1,\n totalResults,\n resultsPerPage,\n currentResultsPerPage,\n setCurrentPage,\n onPageChange,\n className,\n serverSide = false,\n totalItems,\n hasNextPage,\n hasPreviousPage,\n onNextPage,\n onPreviousPage,\n}) => {\n const totalPages = serverSide\n ? Math.ceil((totalItems || totalResults) / resultsPerPage)\n : Math.ceil(totalResults / resultsPerPage);\n\n const handlePageChange = (page: number) => {\n setCurrentPage(page);\n if (onPageChange) {\n onPageChange(page);\n }\n };\n\n const handleNextPage = () => {\n const nextPage = currentPage + 1;\n if (serverSide && onNextPage) {\n onNextPage();\n }\n handlePageChange(nextPage);\n };\n\n const handlePreviousPage = () => {\n const prevPage = currentPage - 1;\n if (serverSide && onPreviousPage) {\n onPreviousPage();\n }\n handlePageChange(prevPage);\n };\n\n const isNextDisabled = serverSide ? !hasNextPage : currentPage === totalPages;\n const isPrevDisabled = serverSide ? !hasPreviousPage : currentPage === 1;\n\n const getPageNumbers = () => {\n const pages = [];\n const maxVisiblePages = 5;\n\n if (totalPages <= maxVisiblePages) {\n for (let i = 1; i <= totalPages; i++) {\n pages.push(i);\n }\n } else {\n pages.push(1);\n\n let start = Math.max(2, currentPage - 1);\n let end = Math.min(totalPages - 1, currentPage + 1);\n\n if (currentPage <= 3) {\n end = 4;\n } else if (currentPage >= totalPages - 2) {\n start = totalPages - 3;\n }\n\n if (start > 2) {\n pages.push(\"...\");\n }\n\n for (let i = start; i <= end; i++) {\n pages.push(i);\n }\n\n if (end < totalPages - 1) {\n pages.push(\"...\");\n }\n\n pages.push(totalPages);\n }\n\n return pages;\n };\n\n return (\n <div className={clsx(\"pagination\", className)}>\n <div className=\"pagination__info\">\n Stai visualizzando{\" \"}\n <span className=\"pagination__info__resultsPerPage\">\n {serverSide\n ? currentResultsPerPage\n : currentPage === totalPages && totalResults % resultsPerPage !== 0\n ? totalResults % resultsPerPage\n : resultsPerPage}\n </span>{\" \"}\n di {serverSide ? totalItems || totalResults : totalResults} risultati\n </div>\n <div className=\"pagination__nav\">\n <button\n className={clsx(\n \"pagination__button\",\n isPrevDisabled && \"pagination__button--disabled\",\n )}\n onClick={handlePreviousPage}\n disabled={isPrevDisabled}\n aria-label=\"Previous page\"\n >\n <svg className=\"pagination__button-arrow\" viewBox=\"0 0 24 24\">\n <path d=\"M15 18l-6-6 6-6\" />\n </svg>\n </button>\n\n {getPageNumbers().map((page, index) =>\n page === \"...\" ? (\n <span key={`ellipsis-${index}`} className=\"pagination__ellipsis\">\n ...\n </span>\n ) : (\n <button\n key={page}\n className={clsx(\n \"pagination__button\",\n currentPage === page && \"pagination__button--active\",\n )}\n onClick={() => handlePageChange(page as number)}\n disabled={page === currentPage}\n >\n {page}\n </button>\n ),\n )}\n\n <button\n className={clsx(\n \"pagination__button\",\n isNextDisabled && \"pagination__button--disabled\",\n )}\n onClick={handleNextPage}\n disabled={isNextDisabled}\n aria-label=\"Next page\"\n >\n <svg className=\"pagination__button-arrow\" viewBox=\"0 0 24 24\">\n <path d=\"M9 6l6 6-6 6\" />\n </svg>\n </button>\n </div>\n </div>\n );\n};\n\nexport {\n Table,\n TableHeader,\n TableBody,\n TableHead,\n TableRow,\n TableCell,\n Pagination,\n};\n"],"names":["Table","React","className","columns","data","pagination","initialCurrentPage","resultsPerPage","defaultSortDirection","setSelectedSort","initialSortConfig","serverSidePagination","totalItems","hasNextPage","hasPreviousPage","onNextPage","onPreviousPage","onPageChange","props","ref","sortConfig","setSortConfig","currentPage","setCurrentPage","useEffect","sortedData","a","b","aValue","bValue","column","col","parseDate","dateStr","datePart","timePart","day","month","year","hours","minutes","dateA","dateB","numA","numB","isDoubleLineData","handleSort","columnKey","newSortConfig","startIndex","endIndex","currentPageData","jsxs","clsx","jsx","TableHeader","TableRow","index","TableHead","TableBody","row","rowIndex","cellIndex","key","value","TableCell","isActionData","Pagination","children","config","onSort","isSorted","sortDirection","getAriaSortValue","renderIcon","icon","Info","Download","ActionIconText","_a","TriangleUp","TriangleDown","DoubleLineContent","Fragment","ActionContent","content","TableCellContent","type","totalResults","currentResultsPerPage","serverSide","totalPages","handlePageChange","page","handleNextPage","nextPage","handlePreviousPage","prevPage","isNextDisabled","isPrevDisabled","getPageNumbers","pages","i","start","end"],"mappings":"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"}
|
1
|
+
{"version":3,"file":"index.cjs73.js","sources":["../src/components/ui/Table/index.tsx"],"sourcesContent":["import * as React from \"react\";\nimport clsx from \"clsx\";\nimport \"./Table.scss\";\nimport { Download, Info, TriangleDown, TriangleUp } from \"@/icons\";\nimport { ActionIconText } from \"@/components\";\nimport { CommonIconsType } from \"@/types/icons\";\nimport { InfoPopupProps } from \"../InfoPopup\";\nimport { useEffect } from \"react\";\n\n// per le celle che vanno renderizzate su due righe\nexport interface DoubleLineData {\n firstLine: string;\n secondLine: string;\n}\n\n//per le celle che renderizzano un link o un bottone\nexport interface ActionData {\n label: string | React.ReactNode;\n ariaLabel: string;\n type: \"link\" | \"button\";\n link?: string;\n action?: () => void;\n}\n\nexport interface ColumnConfig {\n label: string;\n ariaLabel: string;\n sortable: boolean;\n action?: () => void;\n iconAction?: () => void;\n popupInfo?: InfoPopupProps;\n icon?: React.ReactNode | CommonIconsType;\n iconPosition?: \"left\" | \"right\";\n key?: string;\n type?: \"string\" | \"date\" | \"number\";\n}\n\nexport interface TableRowData {\n [key: string]: string | DoubleLineData | ActionData;\n}\n\nexport interface TableHeaderProps\n extends React.HTMLAttributes<HTMLTableSectionElement> {\n className?: string;\n children?: React.ReactNode;\n}\n\nexport interface TableBodyProps\n extends React.HTMLAttributes<HTMLTableSectionElement> {\n className?: string;\n children?: React.ReactNode;\n}\n\nexport interface TableRowProps\n extends React.HTMLAttributes<HTMLTableRowElement> {\n className?: string;\n children?: React.ReactNode;\n}\n\nexport interface TableHeadProps\n extends React.ThHTMLAttributes<HTMLTableCellElement> {\n className?: string;\n children?: React.ReactNode;\n}\n\nexport interface TableCellBaseProps\n extends Omit<React.TdHTMLAttributes<HTMLTableCellElement>, \"content\"> {\n type?: \"double-line\" | \"action\";\n}\n\nexport interface TableCellProps extends TableCellBaseProps {\n content: string | DoubleLineData | ActionData;\n}\n\nexport interface PaginationProps {\n currentPage: number;\n totalResults: number;\n currentResultsPerPage?: number; // used to display 8 di 188 if user is in the last page\n resultsPerPage: number;\n setCurrentPage: (page: number) => void;\n onPageChange?: (page: number) => void;\n className?: string;\n serverSide?: boolean;\n totalItems?: number;\n hasNextPage?: boolean;\n hasPreviousPage?: boolean;\n onNextPage?: () => void;\n onPreviousPage?: () => void;\n}\n\nexport interface TableProps\n extends React.TableHTMLAttributes<HTMLTableElement> {\n className?: string;\n columns: ColumnConfig[];\n data: TableRowData[];\n pagination?: boolean;\n initialCurrentPage?: number;\n resultsPerPage?: number;\n defaultSortDirection?: \"asc\" | \"desc\";\n setSelectedSort?: (sortConfig: {\n key: string;\n direction: \"asc\" | \"desc\";\n }) => void;\n initialSortConfig?: { key: string; direction: \"asc\" | \"desc\" };\n serverSidePagination?: boolean;\n totalItems?: number;\n hasNextPage?: boolean;\n hasPreviousPage?: boolean;\n onNextPage?: () => void;\n onPreviousPage?: () => void;\n onPageChange?: (page: number) => void;\n variant?: \"default\" | \"exemptions\";\n}\n\nconst Table = React.forwardRef<HTMLTableElement, TableProps>(\n (\n {\n className,\n columns,\n data,\n pagination,\n initialCurrentPage = 1,\n resultsPerPage = 10,\n defaultSortDirection = \"desc\",\n setSelectedSort,\n initialSortConfig,\n serverSidePagination = false,\n totalItems,\n hasNextPage,\n hasPreviousPage,\n onNextPage,\n onPreviousPage,\n onPageChange,\n ...props\n },\n ref,\n ) => {\n const [sortConfig, setSortConfig] = React.useState<{\n key: string;\n direction: \"asc\" | \"desc\";\n }>(\n initialSortConfig || {\n key: columns[0].key || columns[0].label,\n direction: defaultSortDirection,\n },\n );\n const [currentPage, setCurrentPage] = React.useState(initialCurrentPage);\n\n useEffect(() => {\n if (initialSortConfig) {\n setSortConfig(initialSortConfig);\n }\n }, [initialSortConfig]);\n\n const sortedData = React.useMemo(() => {\n return [...data].sort((a, b) => {\n const aValue = a[sortConfig.key];\n const bValue = b[sortConfig.key];\n const column = columns.find(\n (col) => (col.key || col.label) === sortConfig.key,\n );\n\n if (typeof aValue === \"string\" && typeof bValue === \"string\") {\n if (column?.type === \"date\") {\n // Convert Italian date format (DD/MM/YYYY - HH:mm) to Date object\n const parseDate = (dateStr: string) => {\n const [datePart, timePart] = dateStr.split(\" - \");\n const [day, month, year] = datePart.split(\"/\").map(Number);\n const [hours, minutes] = timePart.split(\":\").map(Number);\n return new Date(year, month - 1, day, hours, minutes);\n };\n\n const dateA = parseDate(aValue);\n const dateB = parseDate(bValue);\n return sortConfig.direction === \"asc\"\n ? dateA.getTime() - dateB.getTime()\n : dateB.getTime() - dateA.getTime();\n }\n\n if (column?.type === \"number\") {\n const numA = parseFloat(aValue);\n const numB = parseFloat(bValue);\n return sortConfig.direction === \"asc\" ? numA - numB : numB - numA;\n }\n\n return sortConfig.direction === \"asc\"\n ? aValue.localeCompare(bValue)\n : bValue.localeCompare(aValue);\n }\n\n if (isDoubleLineData(aValue) && isDoubleLineData(bValue)) {\n return sortConfig.direction === \"asc\"\n ? aValue.firstLine.localeCompare(bValue.firstLine)\n : bValue.firstLine.localeCompare(aValue.firstLine);\n }\n\n return 0;\n });\n }, [data, sortConfig, columns]);\n\n const handleSort = (columnKey: string) => {\n const newSortConfig = {\n key: columnKey,\n direction:\n sortConfig.key === columnKey && sortConfig.direction === \"asc\"\n ? \"desc\"\n : \"asc\",\n } as { key: string; direction: \"asc\" | \"desc\" };\n\n setSortConfig(newSortConfig);\n if (setSelectedSort) {\n setSelectedSort(newSortConfig);\n }\n };\n\n const startIndex =\n pagination && !serverSidePagination\n ? (currentPage - 1) * resultsPerPage\n : 0;\n const endIndex =\n pagination && !serverSidePagination\n ? Math.min(startIndex + resultsPerPage, sortedData.length)\n : sortedData.length;\n const currentPageData = serverSidePagination\n ? sortedData\n : sortedData.slice(startIndex, endIndex);\n\n return (\n <div className=\"position-relative w-full\">\n <table\n ref={ref}\n className={clsx(\"table\", className)}\n role=\"table\"\n {...props}\n >\n <TableHeader className=\"table__header\">\n <TableRow>\n {columns.map((column, index) => (\n <TableHead\n key={`${column.label}-${index}`}\n config={column}\n sortConfig={sortConfig}\n onSort={() =>\n column.sortable && handleSort(column.key || column.label)\n }\n variant={props.variant}\n />\n ))}\n </TableRow>\n </TableHeader>\n <TableBody className=\"table__body\">\n {currentPageData.map((row, rowIndex) => (\n <TableRow key={rowIndex} className=\"table__row\">\n {columns.map((column, cellIndex) => {\n const key = column.key || column.label;\n const value = row[key];\n return (\n <TableCell\n key={`${key}-${cellIndex}`}\n content={value || \"\"}\n type={\n value && isDoubleLineData(value)\n ? \"double-line\"\n : value && isActionData(value)\n ? \"action\"\n : undefined\n }\n />\n );\n })}\n </TableRow>\n ))}\n </TableBody>\n </table>\n {pagination && (\n <Pagination\n currentPage={currentPage}\n totalResults={\n serverSidePagination ? totalItems || 0 : sortedData.length\n }\n currentResultsPerPage={data.length}\n resultsPerPage={resultsPerPage}\n setCurrentPage={setCurrentPage}\n onPageChange={onPageChange}\n serverSide={serverSidePagination}\n totalItems={totalItems}\n hasNextPage={hasNextPage}\n hasPreviousPage={hasPreviousPage}\n onNextPage={onNextPage}\n onPreviousPage={onPreviousPage}\n />\n )}\n </div>\n );\n },\n);\nTable.displayName = \"Table\";\n\nconst TableHeader = React.forwardRef<HTMLTableSectionElement, TableHeaderProps>(\n ({ className, children, ...props }, ref) => (\n <thead\n ref={ref}\n className={clsx(\"[&_tr]:border-b-0\", className)}\n {...props}\n >\n {children}\n </thead>\n ),\n);\nTableHeader.displayName = \"TableHeader\";\n\nconst TableBody = React.forwardRef<HTMLTableSectionElement, TableBodyProps>(\n ({ className, children, ...props }, ref) => (\n <tbody\n ref={ref}\n className={clsx(\"[&_tr:last-child]:border-0\", className)}\n {...props}\n >\n {children}\n </tbody>\n ),\n);\nTableBody.displayName = \"TableBody\";\n\nconst TableRow = React.forwardRef<HTMLTableRowElement, TableRowProps>(\n ({ className, children, ...props }, ref) => (\n <tr\n ref={ref}\n className={clsx(\n \"border-b transition-colors hover:bg-muted/50 data-[state=selected]:bg-muted\",\n className,\n )}\n {...props}\n >\n {children}\n </tr>\n ),\n);\nTableRow.displayName = \"TableRow\";\n\nconst TableHead = React.forwardRef<\n HTMLTableCellElement,\n TableHeadProps & {\n config: ColumnConfig;\n sortConfig: { key: string; direction: \"asc\" | \"desc\" };\n onSort?: () => void;\n variant?: \"default\" | \"exemptions\";\n }\n>(({ className, config, sortConfig, onSort, ...props }, ref) => {\n const isSorted = sortConfig.key === (config.key || config.label);\n const sortDirection = isSorted ? sortConfig.direction : null;\n\n const getAriaSortValue = (): \"ascending\" | \"descending\" => {\n return sortDirection === \"asc\" ? \"ascending\" : \"descending\";\n };\n\n const renderIcon = (icon: React.ReactNode | CommonIconsType) => {\n switch (icon) {\n case \"info\":\n return <Info />;\n case \"download\":\n return <Download />;\n default:\n return icon;\n }\n };\n\n return (\n <th\n ref={ref}\n className={clsx(\n \"table__cell table__cell--header\",\n {\n \"table__cell--sortable\": config.sortable,\n \"table__cell--action\": config.action,\n },\n className,\n )}\n onClick={config.sortable ? onSort : config.action}\n aria-label={config.ariaLabel}\n aria-sort={isSorted ? getAriaSortValue() : undefined}\n {...props}\n >\n <div className=\"table__cell--header--content\">\n <div>\n <ActionIconText\n icon={renderIcon(config.icon)}\n noIcon={!renderIcon(config.icon)}\n textLabel={config.label}\n iconPosition={config.iconPosition}\n handleIconAction={() => {\n if (config.iconAction) {\n config.iconAction();\n }\n }}\n popupInfo={config.popupInfo}\n positionPopUp={config.popupInfo?.positionPopUp}\n classNameText={\n props.variant && \"fw-bold text-slate-28 fs-custom md-fs-6\"\n }\n />\n </div>\n {config.sortable && (\n <span className=\"sort-indicator\">\n <TriangleUp\n filled={isSorted && sortDirection === \"desc\"}\n className={clsx(\"sort-indicator__triangle\", {\n active: isSorted && sortDirection === \"desc\",\n })}\n />\n <TriangleDown\n filled={isSorted && sortDirection === \"asc\"}\n className={clsx(\"sort-indicator__triangle\", {\n active: isSorted && sortDirection === \"asc\",\n })}\n />\n </span>\n )}\n </div>\n </th>\n );\n});\nTableHead.displayName = \"TableHead\";\n\nconst DoubleLineContent: React.FC<{ data: DoubleLineData }> = ({ data }) => (\n <>\n <div className=\"table__cell--firstLine\">{data.firstLine}</div>\n <div className=\"table__cell--secondLine\">{data.secondLine}</div>\n </>\n);\n\nconst ActionContent: React.FC<{ data: ActionData }> = ({ data }) => {\n if (data.type === \"link\" && data.link) {\n return (\n <a href={data.link} aria-label={data.ariaLabel}>\n {data.label}\n </a>\n );\n }\n return (\n <button onClick={data.action} aria-label={data.ariaLabel}>\n {data.label}\n </button>\n );\n};\n\n// check if we are rendering a double line data\nconst isDoubleLineData = (\n content: TableCellProps[\"content\"],\n): content is DoubleLineData => {\n return (\n typeof content === \"object\" &&\n content !== null &&\n \"firstLine\" in content &&\n \"secondLine\" in content\n );\n};\n\n// check if we are rendering an action data\nconst isActionData = (\n content: TableCellProps[\"content\"],\n): content is ActionData => {\n return (\n typeof content === \"object\" &&\n content !== null &&\n \"label\" in content &&\n \"type\" in content\n );\n};\n\nconst TableCellContent: React.FC<{ content: TableCellProps[\"content\"] }> = ({\n content,\n}) => {\n if (typeof content === \"string\") {\n return <>{content}</>;\n }\n if (isDoubleLineData(content)) {\n return <DoubleLineContent data={content} />;\n }\n if (isActionData(content)) {\n return <ActionContent data={content} />;\n }\n return null;\n};\n\nconst TableCell = React.forwardRef<HTMLTableCellElement, TableCellProps>(\n ({ className, content, type, ...props }, ref) => (\n <td\n ref={ref}\n className={clsx(\n \"table__cell\",\n {\n \"table__cell--double-line\": type === \"double-line\",\n \"table__cell--action\": type === \"action\",\n },\n className,\n )}\n {...props}\n >\n <TableCellContent content={content} />\n </td>\n ),\n);\nTableCell.displayName = \"TableCell\";\n\nconst Pagination: React.FC<PaginationProps> = ({\n currentPage = 1,\n totalResults,\n resultsPerPage,\n currentResultsPerPage,\n setCurrentPage,\n onPageChange,\n className,\n serverSide = false,\n totalItems,\n hasNextPage,\n hasPreviousPage,\n onNextPage,\n onPreviousPage,\n}) => {\n const totalPages = serverSide\n ? Math.ceil((totalItems || totalResults) / resultsPerPage)\n : Math.ceil(totalResults / resultsPerPage);\n\n const handlePageChange = (page: number) => {\n setCurrentPage(page);\n if (onPageChange) {\n onPageChange(page);\n }\n };\n\n const handleNextPage = () => {\n const nextPage = currentPage + 1;\n if (serverSide && onNextPage) {\n onNextPage();\n }\n handlePageChange(nextPage);\n };\n\n const handlePreviousPage = () => {\n const prevPage = currentPage - 1;\n if (serverSide && onPreviousPage) {\n onPreviousPage();\n }\n handlePageChange(prevPage);\n };\n\n const isNextDisabled = serverSide ? !hasNextPage : currentPage === totalPages;\n const isPrevDisabled = serverSide ? !hasPreviousPage : currentPage === 1;\n\n const getPageNumbers = () => {\n const pages = [];\n const maxVisiblePages = 5;\n\n if (totalPages <= maxVisiblePages) {\n for (let i = 1; i <= totalPages; i++) {\n pages.push(i);\n }\n } else {\n pages.push(1);\n\n let start = Math.max(2, currentPage - 1);\n let end = Math.min(totalPages - 1, currentPage + 1);\n\n if (currentPage <= 3) {\n end = 4;\n } else if (currentPage >= totalPages - 2) {\n start = totalPages - 3;\n }\n\n if (start > 2) {\n pages.push(\"...\");\n }\n\n for (let i = start; i <= end; i++) {\n pages.push(i);\n }\n\n if (end < totalPages - 1) {\n pages.push(\"...\");\n }\n\n pages.push(totalPages);\n }\n\n return pages;\n };\n\n return (\n <div className={clsx(\"pagination\", className)}>\n <div className=\"pagination__info\">\n Stai visualizzando{\" \"}\n <span className=\"pagination__info__resultsPerPage\">\n {serverSide\n ? currentResultsPerPage\n : currentPage === totalPages && totalResults % resultsPerPage !== 0\n ? totalResults % resultsPerPage\n : resultsPerPage}\n </span>{\" \"}\n di {serverSide ? totalItems || totalResults : totalResults} risultati\n </div>\n <div className=\"pagination__nav\">\n <button\n className={clsx(\n \"pagination__button\",\n isPrevDisabled && \"pagination__button--disabled\",\n )}\n onClick={handlePreviousPage}\n disabled={isPrevDisabled}\n aria-label=\"Previous page\"\n >\n <svg className=\"pagination__button-arrow\" viewBox=\"0 0 24 24\" aria-hidden=\"true\">\n <path d=\"M15 18l-6-6 6-6\" />\n </svg>\n </button>\n\n {getPageNumbers().map((page, index) =>\n page === \"...\" ? (\n <span key={`ellipsis-${index}`} className=\"pagination__ellipsis\">\n ...\n </span>\n ) : (\n <button\n key={page}\n className={clsx(\n \"pagination__button\",\n currentPage === page && \"pagination__button--active\",\n )}\n onClick={() => handlePageChange(page as number)}\n disabled={page === currentPage}\n >\n {page}\n </button>\n ),\n )}\n\n <button\n className={clsx(\n \"pagination__button\",\n isNextDisabled && \"pagination__button--disabled\",\n )}\n onClick={handleNextPage}\n disabled={isNextDisabled}\n aria-label=\"Next page\"\n >\n <svg className=\"pagination__button-arrow\" viewBox=\"0 0 24 24\" aria-hidden=\"true\">\n <path d=\"M9 6l6 6-6 6\" />\n </svg>\n </button>\n </div>\n </div>\n );\n};\n\nexport {\n Table,\n TableHeader,\n TableBody,\n TableHead,\n TableRow,\n TableCell,\n Pagination,\n};\n"],"names":["Table","React","className","columns","data","pagination","initialCurrentPage","resultsPerPage","defaultSortDirection","setSelectedSort","initialSortConfig","serverSidePagination","totalItems","hasNextPage","hasPreviousPage","onNextPage","onPreviousPage","onPageChange","props","ref","sortConfig","setSortConfig","currentPage","setCurrentPage","useEffect","sortedData","a","b","aValue","bValue","column","col","parseDate","dateStr","datePart","timePart","day","month","year","hours","minutes","dateA","dateB","numA","numB","isDoubleLineData","handleSort","columnKey","newSortConfig","startIndex","endIndex","currentPageData","jsxs","clsx","jsx","TableHeader","TableRow","index","TableHead","TableBody","row","rowIndex","cellIndex","key","value","TableCell","isActionData","Pagination","children","config","onSort","isSorted","sortDirection","getAriaSortValue","renderIcon","icon","Info","Download","ActionIconText","_a","TriangleUp","TriangleDown","DoubleLineContent","Fragment","ActionContent","content","TableCellContent","type","totalResults","currentResultsPerPage","serverSide","totalPages","handlePageChange","page","handleNextPage","nextPage","handlePreviousPage","prevPage","isNextDisabled","isPrevDisabled","getPageNumbers","pages","i","start","end"],"mappings":"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"}
|
package/dist/index.cjs74.js
CHANGED
@@ -1,2 +1,2 @@
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require('./components/ui/TableMobile/TableMobile.css');const t=require("./index.cjs243.js"),R=require("./index.cjs245.js");;/* empty css */const V=require("react"),q=require("./index.cjs10.js"),D=require("./index.cjs9.js"),z=require("./index.cjs67.js"),v=require("./index.cjs197.js"),A=require("./index.cjs198.js"),B=require("./index.cjs190.js"),U=require("./index.cjs199.js");function C(e){const i=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const o in e)if(o!=="default"){const l=Object.getOwnPropertyDescriptor(e,o);Object.defineProperty(i,o,l.get?l:{enumerable:!0,get:()=>e[o]})}}return i.default=e,Object.freeze(i)}const F=C(V),G=({data:e,columns:i,pagination:o=!0,resultsPerPage:l=5,totalResults:j,initialCurrentPage:_=1,serverSidePagination:c=!1,totalItems:n,hasNextPage:r,hasPreviousPage:E,onNextPage:x,onPreviousPage:p,onPageChange:
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require('./components/ui/TableMobile/TableMobile.css');const t=require("./index.cjs243.js"),R=require("./index.cjs245.js");;/* empty css */const V=require("react"),q=require("./index.cjs10.js"),D=require("./index.cjs9.js"),z=require("./index.cjs67.js"),v=require("./index.cjs197.js"),A=require("./index.cjs198.js"),B=require("./index.cjs190.js"),U=require("./index.cjs199.js");function C(e){const i=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const o in e)if(o!=="default"){const l=Object.getOwnPropertyDescriptor(e,o);Object.defineProperty(i,o,l.get?l:{enumerable:!0,get:()=>e[o]})}}return i.default=e,Object.freeze(i)}const F=C(V),G=({data:e,columns:i,pagination:o=!0,resultsPerPage:l=5,totalResults:j,initialCurrentPage:_=1,serverSidePagination:c=!1,totalItems:n,hasNextPage:r,hasPreviousPage:E,onNextPage:x,onPreviousPage:p,onPageChange:b,setCurrentPage:a,sortConfig:u=null,onSortChange:L})=>{const[N,y]=V.useState(_),w=d=>{y(d),a==null||a(d)},f=F.useMemo(()=>u?[...e].sort((d,h)=>{const M=d[u.key],T=h[u.key],I=typeof M=="object"&&"firstLine"in M?M.firstLine:M,$=typeof T=="object"&&"firstLine"in T?T.firstLine:T;return I<$?u.direction==="asc"?-1:1:I>$?u.direction==="asc"?1:-1:0}):e,[e,u]),s=c?0:(N-1)*l,k=c?f.length:Math.min(s+l,f.length),m=f.slice(s,k);return t.jsxRuntimeExports.jsxs(q.Col,{className:"w-full h-full",gap:"x16",children:[m.map((d,h)=>t.jsxRuntimeExports.jsx(O,{columns:i,data:d,sortConfig:u,onSortChange:L},h)),o&&t.jsxRuntimeExports.jsx(g,{currentPage:N,totalResults:j||f.length,resultsPerPage:l,setCurrentPage:w,onPageChange:b,serverSide:c,totalItems:n,hasNextPage:r,hasPreviousPage:E,onNextPage:x,onPreviousPage:p,currentResultsPerPage:c?f.length:l,className:"mt-x16"})]})},H=({data:e})=>e.type==="link"&&e.link?t.jsxRuntimeExports.jsx("a",{href:e.link,"aria-label":e.ariaLabel,children:e.label}):t.jsxRuntimeExports.jsx("button",{onClick:e.action,"aria-label":e.ariaLabel,children:e.label}),O=({columns:e,sortConfig:i,data:o,onSortChange:l})=>{const j=n=>{if(!n)return"";if(typeof n=="object"&&"firstLine"in n){const r=n;return`${r.firstLine}${r.secondLine?` ${r.secondLine}`:""}`}return typeof n=="object"&&"label"in n&&"type"in n?t.jsxRuntimeExports.jsx(H,{data:n}):n},_=n=>{switch(n){case"info":return t.jsxRuntimeExports.jsx(U.Info,{});case"download":return t.jsxRuntimeExports.jsx(B.Download,{});default:return n}},c=n=>{if(!l||!i)return;const r=i.key===n&&i.direction==="asc"?"desc":"asc";l(n,r)};return t.jsxRuntimeExports.jsx("div",{className:R.clsx("ui-card-table shadow br-x4 text-slate-28 fs-custom "),children:e.map((n,r)=>{if(!n.key||n.key==="actionData")return t.jsxRuntimeExports.jsx(D.Row,{p:"x16",className:"ui-table-header",justifyContent:"space-between",children:t.jsxRuntimeExports.jsx(q.Col,{justifyContent:"end",gap:"x4",className:"w-full",children:t.jsxRuntimeExports.jsx(D.Row,{justifyContent:"end",className:"table-mobile-actions",children:j(o.actionData)})})},r);const E=o[n.key],x=n,p=(i==null?void 0:i.key)===n.key,b=p?i.direction:null;return t.jsxRuntimeExports.jsx(D.Row,{p:"x16",className:"ui-table-header",justifyContent:"space-between",children:t.jsxRuntimeExports.jsxs(q.Col,{justifyContent:"center",gap:"x4",className:"w-full",children:[t.jsxRuntimeExports.jsx(z.ActionIconText,{justifyContent:"space-between",alignItems:"center",icon:_(x.icon),noIcon:!_(x.icon),textLabel:x.label,iconPosition:x.iconPosition,popupInfo:x.popupInfo,positionPopUp:"left",classNameText:"fw-bold text-slate-28 fs-custom md-fs-6",children:x.sortable&&t.jsxRuntimeExports.jsxs("span",{className:"sort-indicator",onClick:a=>{a.stopPropagation(),c(n.key)},children:[t.jsxRuntimeExports.jsx(v.TriangleUp,{filled:p&&b==="desc",className:R.clsx("sort-indicator__triangle",{active:p&&b==="desc"})}),t.jsxRuntimeExports.jsx(A.TriangleDown,{filled:p&&b==="asc",className:R.clsx("sort-indicator__triangle",{active:p&&b==="asc"})})]})}),t.jsxRuntimeExports.jsx(D.Row,{children:j(E)})]})},r)})})},g=({currentPage:e=1,totalResults:i=0,resultsPerPage:o,setCurrentPage:l,onPageChange:j,className:_,serverSide:c=!1,totalItems:n,hasNextPage:r,hasPreviousPage:E,onNextPage:x,onPreviousPage:p,currentResultsPerPage:b=o})=>{const a=Math.ceil(c?(n||i)/o:i/o),u=s=>{l==null||l(s),j&&j(s)},L=()=>{const s=e+1;c&&x&&x(),u(s)},N=()=>{const s=e-1;c&&p&&p(),u(s)},y=c?!r:e===a,w=c?!E:e===1,f=()=>{const s=[];if(a<=5)for(let m=1;m<=a;m++)s.push(m);else{s.push(1);let m=Math.max(2,e-1),d=Math.min(a-1,e+1);e<=3?d=4:e>=a-2&&(m=a-3),m>2&&s.push("...");for(let h=m;h<=d;h++)s.push(h);d<a-1&&s.push("..."),s.push(a)}return s};return t.jsxRuntimeExports.jsxs("div",{className:R.clsx("pagination-mobile",_),children:[t.jsxRuntimeExports.jsxs("div",{className:"pagination-mobile__info",children:["Stai visualizzando"," ",t.jsxRuntimeExports.jsx("span",{className:"pagination-mobile__info__resultsPerPage",children:c?b:e===a&&i%o!==0?i%o:o})," ","di ",c&&n||i," risultati"]}),t.jsxRuntimeExports.jsxs("div",{className:"pagination-mobile__nav",children:[t.jsxRuntimeExports.jsx("button",{className:R.clsx("pagination-mobile__button",w&&"pagination-mobile__button--disabled"),onClick:N,disabled:w,"aria-label":"Previous page",children:t.jsxRuntimeExports.jsx("svg",{className:"pagination-mobile__button-arrow",viewBox:"0 0 24 24","aria-hidden":"true",children:t.jsxRuntimeExports.jsx("path",{d:"M15 18l-6-6 6-6"})})}),f().map((s,k)=>s==="..."?t.jsxRuntimeExports.jsx("span",{className:"pagination-mobile__ellipsis",children:"..."},`ellipsis-${k}`):t.jsxRuntimeExports.jsx("button",{className:R.clsx("pagination-mobile__button",e===s&&"pagination-mobile__button--active"),onClick:()=>u(s),disabled:s===e,children:s},s)),t.jsxRuntimeExports.jsx("button",{className:R.clsx("pagination-mobile__button",y&&"pagination-mobile__button--disabled"),onClick:L,disabled:y,"aria-label":"Next page",children:t.jsxRuntimeExports.jsx("svg",{className:"pagination-mobile__button-arrow",viewBox:"0 0 24 24","aria-hidden":"true",children:t.jsxRuntimeExports.jsx("path",{d:"M9 6l6 6-6 6"})})})]})]})};exports.CardTable=O;exports.TableMobile=G;exports.TableMobilePagination=g;
|
2
2
|
//# sourceMappingURL=index.cjs74.js.map
|
package/dist/index.cjs74.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.cjs74.js","sources":["../src/components/ui/TableMobile/index.tsx"],"sourcesContent":["import {\r\n ActionData,\r\n ActionIconText,\r\n Col,\r\n ColumnConfig,\r\n DoubleLineData,\r\n Row,\r\n TableRowData,\r\n} from \"@/components\";\r\nimport clsx from \"clsx\";\r\nimport \"./TableMobile.scss\";\r\nimport { Download, Info, TriangleDown, TriangleUp } from \"@/icons\";\r\nimport { ReactNode } from \"react\";\r\nimport * as React from \"react\";\r\nimport { CommonIconsType } from \"@/types/icons.ts\";\r\nimport { useState } from \"react\";\r\n\r\nexport type TableMobileProps = {\r\n data: TableRowData[];\r\n columns: ColumnConfig[];\r\n pagination?: boolean;\r\n resultsPerPage?: number;\r\n totalResults?: number;\r\n initialCurrentPage?: number;\r\n serverSidePagination?: boolean;\r\n totalItems?: number;\r\n hasNextPage?: boolean;\r\n hasPreviousPage?: boolean;\r\n onNextPage?: () => void;\r\n onPreviousPage?: () => void;\r\n onPageChange?: (page: number) => void;\r\n setCurrentPage?: (page: number) => void;\r\n sortConfig?: { key: string; direction: \"asc\" | \"desc\" } | null;\r\n onSortChange?: (key: string, direction: \"asc\" | \"desc\") => void;\r\n};\r\n\r\nexport const TableMobile = ({\r\n data,\r\n columns,\r\n pagination = true,\r\n resultsPerPage = 5,\r\n totalResults,\r\n initialCurrentPage = 1,\r\n serverSidePagination = false,\r\n totalItems,\r\n hasNextPage,\r\n hasPreviousPage,\r\n onNextPage,\r\n onPreviousPage,\r\n onPageChange,\r\n setCurrentPage: externalSetCurrentPage,\r\n sortConfig = null,\r\n onSortChange,\r\n}: TableMobileProps) => {\r\n const [currentPage, setInternalCurrentPage] = useState(initialCurrentPage);\r\n const handleSetCurrentPage = (page: number) => {\r\n setInternalCurrentPage(page);\r\n externalSetCurrentPage?.(page);\r\n };\r\n\r\n const sortedData = React.useMemo(() => {\r\n if (!sortConfig) return data;\r\n\r\n return [...data].sort((a, b) => {\r\n const aValue = a[sortConfig.key];\r\n const bValue = b[sortConfig.key];\r\n\r\n const aText =\r\n typeof aValue === \"object\" && \"firstLine\" in aValue\r\n ? aValue.firstLine\r\n : aValue;\r\n const bText =\r\n typeof bValue === \"object\" && \"firstLine\" in bValue\r\n ? bValue.firstLine\r\n : bValue;\r\n\r\n if (aText < bText) {\r\n return sortConfig.direction === \"asc\" ? -1 : 1;\r\n }\r\n if (aText > bText) {\r\n return sortConfig.direction === \"asc\" ? 1 : -1;\r\n }\r\n return 0;\r\n });\r\n }, [data, sortConfig]);\r\n\r\n const startIndex = serverSidePagination\r\n ? 0\r\n : (currentPage - 1) * resultsPerPage;\r\n const endIndex = serverSidePagination\r\n ? sortedData.length\r\n : Math.min(startIndex + resultsPerPage, sortedData.length);\r\n const currentPageData = sortedData.slice(startIndex, endIndex);\r\n\r\n return (\r\n <Col className={\"w-full h-full\"} gap={\"x16\"}>\r\n {currentPageData.map((data, index) => (\r\n <CardTable\r\n columns={columns}\r\n key={index}\r\n data={data}\r\n sortConfig={sortConfig}\r\n onSortChange={onSortChange}\r\n />\r\n ))}\r\n\r\n {pagination && (\r\n <TableMobilePagination\r\n currentPage={currentPage}\r\n totalResults={totalResults || sortedData.length}\r\n resultsPerPage={resultsPerPage}\r\n setCurrentPage={handleSetCurrentPage}\r\n onPageChange={onPageChange}\r\n serverSide={serverSidePagination}\r\n totalItems={totalItems}\r\n hasNextPage={hasNextPage}\r\n hasPreviousPage={hasPreviousPage}\r\n onNextPage={onNextPage}\r\n onPreviousPage={onPreviousPage}\r\n currentResultsPerPage={\r\n serverSidePagination ? sortedData.length : resultsPerPage\r\n }\r\n className=\"mt-x16\"\r\n />\r\n )}\r\n </Col>\r\n );\r\n};\r\n\r\nexport type CardTableProps = {\r\n columns: ColumnConfig[];\r\n data: TableRowData;\r\n sortConfig: { key: string; direction: \"asc\" | \"desc\" } | null;\r\n onSortChange?: (key: string, direction: \"asc\" | \"desc\") => void;\r\n};\r\n\r\nconst ActionContent: React.FC<{ data: ActionData }> = ({ data }) => {\r\n if (data.type === \"link\" && data.link) {\r\n return (\r\n <a href={data.link} aria-label={data.ariaLabel}>\r\n {data.label}\r\n </a>\r\n );\r\n }\r\n return (\r\n <button onClick={data.action} aria-label={data.ariaLabel}>\r\n {data.label}\r\n </button>\r\n );\r\n};\r\n\r\nexport const CardTable = ({\r\n columns,\r\n sortConfig,\r\n data,\r\n onSortChange,\r\n}: CardTableProps) => {\r\n const renderColumnValue = (value: any): ReactNode => {\r\n if (!value) return \"\";\r\n\r\n if (typeof value === \"object\" && \"firstLine\" in value) {\r\n const doubleLineValue = value as DoubleLineData;\r\n return `${doubleLineValue.firstLine}${doubleLineValue.secondLine ? ` ${doubleLineValue.secondLine}` : \"\"}`;\r\n }\r\n\r\n if (typeof value === \"object\" && \"label\" in value && \"type\" in value) {\r\n return <ActionContent data={value} />;\r\n }\r\n\r\n return value;\r\n };\r\n\r\n const renderIcon = (icon: React.ReactNode | CommonIconsType) => {\r\n switch (icon) {\r\n case \"info\":\r\n return <Info />;\r\n case \"download\":\r\n return <Download />;\r\n default:\r\n return icon;\r\n }\r\n };\r\n\r\n const handleSortClick = (key: string) => {\r\n if (!onSortChange || !sortConfig) return;\r\n\r\n const newDirection =\r\n sortConfig.key === key\r\n ? sortConfig.direction === \"asc\"\r\n ? \"desc\"\r\n : \"asc\"\r\n : \"asc\";\r\n\r\n onSortChange(key, newDirection);\r\n };\r\n\r\n return (\r\n <div\r\n className={clsx(\"ui-card-table shadow br-x4 text-slate-28 fs-custom \")}\r\n >\r\n {columns.map((column, index) => {\r\n if (!column.key || column.key === \"actionData\") {\r\n return (\r\n <Row\r\n key={index}\r\n p={\"x16\"}\r\n className={\"ui-table-header\"}\r\n justifyContent={\"space-between\"}\r\n >\r\n <Col justifyContent={\"end\"} gap={\"x4\"} className={\"w-full\"}>\r\n <Row justifyContent={\"end\"} className=\"table-mobile-actions\">\r\n {renderColumnValue(data.actionData)}\r\n </Row>\r\n </Col>\r\n </Row>\r\n );\r\n }\r\n\r\n const columnValue = data[column.key];\r\n const config = column;\r\n const isSorted = sortConfig?.key === column.key;\r\n const sortDirection = isSorted ? sortConfig.direction : null;\r\n\r\n return (\r\n <Row\r\n key={index}\r\n p={\"x16\"}\r\n className={\"ui-table-header\"}\r\n justifyContent={\"space-between\"}\r\n >\r\n <Col justifyContent={\"center\"} gap={\"x4\"} className={\"w-full\"}>\r\n <ActionIconText\r\n justifyContent={\"space-between\"}\r\n alignItems={\"center\"}\r\n icon={renderIcon(config.icon)}\r\n noIcon={!renderIcon(config.icon)}\r\n textLabel={config.label}\r\n iconPosition={config.iconPosition}\r\n popupInfo={config.popupInfo}\r\n positionPopUp={\"left\"}\r\n classNameText={\"fw-bold text-slate-28 fs-custom md-fs-6\"}\r\n >\r\n {config.sortable && (\r\n <span\r\n className=\"sort-indicator\"\r\n onClick={(e) => {\r\n e.stopPropagation();\r\n handleSortClick(column.key!);\r\n }}\r\n >\r\n <TriangleUp\r\n filled={isSorted && sortDirection === \"desc\"}\r\n className={clsx(\"sort-indicator__triangle\", {\r\n active: isSorted && sortDirection === \"desc\",\r\n })}\r\n />\r\n <TriangleDown\r\n filled={isSorted && sortDirection === \"asc\"}\r\n className={clsx(\"sort-indicator__triangle\", {\r\n active: isSorted && sortDirection === \"asc\",\r\n })}\r\n />\r\n </span>\r\n )}\r\n </ActionIconText>\r\n <Row>{renderColumnValue(columnValue)}</Row>\r\n </Col>\r\n </Row>\r\n );\r\n })}\r\n </div>\r\n );\r\n};\r\n\r\nexport type TableMobilePaginationProps = {\r\n currentPage?: number;\r\n totalResults?: number;\r\n resultsPerPage: number;\r\n setCurrentPage?: (page: number) => void;\r\n onPageChange?: (page: number) => void;\r\n className?: string;\r\n serverSide?: boolean;\r\n totalItems?: number;\r\n hasNextPage?: boolean;\r\n hasPreviousPage?: boolean;\r\n onNextPage?: () => void;\r\n onPreviousPage?: () => void;\r\n currentResultsPerPage?: number;\r\n};\r\n\r\nexport const TableMobilePagination: React.FC<TableMobilePaginationProps> = ({\r\n currentPage = 1,\r\n totalResults = 0,\r\n resultsPerPage,\r\n setCurrentPage,\r\n onPageChange,\r\n className,\r\n serverSide = false,\r\n totalItems,\r\n hasNextPage,\r\n hasPreviousPage,\r\n onNextPage,\r\n onPreviousPage,\r\n currentResultsPerPage = resultsPerPage,\r\n}) => {\r\n const totalPages = serverSide\r\n ? Math.ceil((totalItems || totalResults) / resultsPerPage)\r\n : Math.ceil(totalResults / resultsPerPage);\r\n\r\n const handlePageChange = (page: number) => {\r\n setCurrentPage?.(page);\r\n if (onPageChange) {\r\n onPageChange(page);\r\n }\r\n };\r\n\r\n const handleNextPage = () => {\r\n const nextPage = currentPage + 1;\r\n if (serverSide && onNextPage) {\r\n onNextPage();\r\n }\r\n handlePageChange(nextPage);\r\n };\r\n\r\n const handlePreviousPage = () => {\r\n const prevPage = currentPage - 1;\r\n if (serverSide && onPreviousPage) {\r\n onPreviousPage();\r\n }\r\n handlePageChange(prevPage);\r\n };\r\n\r\n const isNextDisabled = serverSide ? !hasNextPage : currentPage === totalPages;\r\n const isPrevDisabled = serverSide ? !hasPreviousPage : currentPage === 1;\r\n\r\n const getPageNumbers = () => {\r\n const pages = [];\r\n const maxVisiblePages = 5;\r\n\r\n if (totalPages <= maxVisiblePages) {\r\n for (let i = 1; i <= totalPages; i++) {\r\n pages.push(i);\r\n }\r\n } else {\r\n pages.push(1);\r\n\r\n let start = Math.max(2, currentPage - 1);\r\n let end = Math.min(totalPages - 1, currentPage + 1);\r\n\r\n if (currentPage <= 3) {\r\n end = 4;\r\n } else if (currentPage >= totalPages - 2) {\r\n start = totalPages - 3;\r\n }\r\n\r\n if (start > 2) {\r\n pages.push(\"...\");\r\n }\r\n\r\n for (let i = start; i <= end; i++) {\r\n pages.push(i);\r\n }\r\n\r\n if (end < totalPages - 1) {\r\n pages.push(\"...\");\r\n }\r\n\r\n pages.push(totalPages);\r\n }\r\n\r\n return pages;\r\n };\r\n\r\n return (\r\n <div className={clsx(\"pagination-mobile\", className)}>\r\n <div className=\"pagination-mobile__info\">\r\n Stai visualizzando{\" \"}\r\n <span className=\"pagination-mobile__info__resultsPerPage\">\r\n {serverSide\r\n ? currentResultsPerPage\r\n : currentPage === totalPages && totalResults % resultsPerPage !== 0\r\n ? totalResults % resultsPerPage\r\n : resultsPerPage}\r\n </span>{\" \"}\r\n di {serverSide ? totalItems || totalResults : totalResults} risultati\r\n </div>\r\n <div className=\"pagination-mobile__nav\">\r\n <button\r\n className={clsx(\r\n \"pagination-mobile__button\",\r\n isPrevDisabled && \"pagination-mobile__button--disabled\",\r\n )}\r\n onClick={handlePreviousPage}\r\n disabled={isPrevDisabled}\r\n aria-label=\"Previous page\"\r\n >\r\n <svg className=\"pagination-mobile__button-arrow\" viewBox=\"0 0 24 24\">\r\n <path d=\"M15 18l-6-6 6-6\" />\r\n </svg>\r\n </button>\r\n\r\n {getPageNumbers().map((page, index) =>\r\n page === \"...\" ? (\r\n <span key={`ellipsis-${index}`} className=\"pagination-mobile__ellipsis\">\r\n ...\r\n </span>\r\n ) : (\r\n <button\r\n key={page}\r\n className={clsx(\r\n \"pagination-mobile__button\",\r\n currentPage === page && \"pagination-mobile__button--active\",\r\n )}\r\n onClick={() => handlePageChange(page as number)}\r\n disabled={page === currentPage}\r\n >\r\n {page}\r\n </button>\r\n ),\r\n )}\r\n\r\n <button\r\n className={clsx(\r\n \"pagination-mobile__button\",\r\n isNextDisabled && \"pagination-mobile__button--disabled\",\r\n )}\r\n onClick={handleNextPage}\r\n disabled={isNextDisabled}\r\n aria-label=\"Next page\"\r\n >\r\n <svg className=\"pagination-mobile__button-arrow\" viewBox=\"0 0 24 24\">\r\n <path d=\"M9 6l6 6-6 6\" />\r\n </svg>\r\n </button>\r\n </div>\r\n </div>\r\n );\r\n};\r\n"],"names":["TableMobile","data","columns","pagination","resultsPerPage","totalResults","initialCurrentPage","serverSidePagination","totalItems","hasNextPage","hasPreviousPage","onNextPage","onPreviousPage","onPageChange","externalSetCurrentPage","sortConfig","onSortChange","currentPage","setInternalCurrentPage","useState","handleSetCurrentPage","page","sortedData","React","a","b","aValue","bValue","aText","bText","startIndex","endIndex","currentPageData","jsxs","Col","index","jsx","CardTable","TableMobilePagination","ActionContent","renderColumnValue","value","doubleLineValue","renderIcon","icon","Info","Download","handleSortClick","key","newDirection","clsx","column","Row","columnValue","config","isSorted","sortDirection","ActionIconText","e","TriangleUp","TriangleDown","setCurrentPage","className","serverSide","currentResultsPerPage","totalPages","handlePageChange","handleNextPage","nextPage","handlePreviousPage","prevPage","isNextDisabled","isPrevDisabled","getPageNumbers","pages","i","start","end"],"mappings":"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"}
|
1
|
+
{"version":3,"file":"index.cjs74.js","sources":["../src/components/ui/TableMobile/index.tsx"],"sourcesContent":["import {\r\n ActionData,\r\n ActionIconText,\r\n Col,\r\n ColumnConfig,\r\n DoubleLineData,\r\n Row,\r\n TableRowData,\r\n} from \"@/components\";\r\nimport clsx from \"clsx\";\r\nimport \"./TableMobile.scss\";\r\nimport { Download, Info, TriangleDown, TriangleUp } from \"@/icons\";\r\nimport { ReactNode } from \"react\";\r\nimport * as React from \"react\";\r\nimport { CommonIconsType } from \"@/types/icons.ts\";\r\nimport { useState } from \"react\";\r\n\r\nexport type TableMobileProps = {\r\n data: TableRowData[];\r\n columns: ColumnConfig[];\r\n pagination?: boolean;\r\n resultsPerPage?: number;\r\n totalResults?: number;\r\n initialCurrentPage?: number;\r\n serverSidePagination?: boolean;\r\n totalItems?: number;\r\n hasNextPage?: boolean;\r\n hasPreviousPage?: boolean;\r\n onNextPage?: () => void;\r\n onPreviousPage?: () => void;\r\n onPageChange?: (page: number) => void;\r\n setCurrentPage?: (page: number) => void;\r\n sortConfig?: { key: string; direction: \"asc\" | \"desc\" } | null;\r\n onSortChange?: (key: string, direction: \"asc\" | \"desc\") => void;\r\n};\r\n\r\nexport const TableMobile = ({\r\n data,\r\n columns,\r\n pagination = true,\r\n resultsPerPage = 5,\r\n totalResults,\r\n initialCurrentPage = 1,\r\n serverSidePagination = false,\r\n totalItems,\r\n hasNextPage,\r\n hasPreviousPage,\r\n onNextPage,\r\n onPreviousPage,\r\n onPageChange,\r\n setCurrentPage: externalSetCurrentPage,\r\n sortConfig = null,\r\n onSortChange,\r\n}: TableMobileProps) => {\r\n const [currentPage, setInternalCurrentPage] = useState(initialCurrentPage);\r\n const handleSetCurrentPage = (page: number) => {\r\n setInternalCurrentPage(page);\r\n externalSetCurrentPage?.(page);\r\n };\r\n\r\n const sortedData = React.useMemo(() => {\r\n if (!sortConfig) return data;\r\n\r\n return [...data].sort((a, b) => {\r\n const aValue = a[sortConfig.key];\r\n const bValue = b[sortConfig.key];\r\n\r\n const aText =\r\n typeof aValue === \"object\" && \"firstLine\" in aValue\r\n ? aValue.firstLine\r\n : aValue;\r\n const bText =\r\n typeof bValue === \"object\" && \"firstLine\" in bValue\r\n ? bValue.firstLine\r\n : bValue;\r\n\r\n if (aText < bText) {\r\n return sortConfig.direction === \"asc\" ? -1 : 1;\r\n }\r\n if (aText > bText) {\r\n return sortConfig.direction === \"asc\" ? 1 : -1;\r\n }\r\n return 0;\r\n });\r\n }, [data, sortConfig]);\r\n\r\n const startIndex = serverSidePagination\r\n ? 0\r\n : (currentPage - 1) * resultsPerPage;\r\n const endIndex = serverSidePagination\r\n ? sortedData.length\r\n : Math.min(startIndex + resultsPerPage, sortedData.length);\r\n const currentPageData = sortedData.slice(startIndex, endIndex);\r\n\r\n return (\r\n <Col className={\"w-full h-full\"} gap={\"x16\"}>\r\n {currentPageData.map((data, index) => (\r\n <CardTable\r\n columns={columns}\r\n key={index}\r\n data={data}\r\n sortConfig={sortConfig}\r\n onSortChange={onSortChange}\r\n />\r\n ))}\r\n\r\n {pagination && (\r\n <TableMobilePagination\r\n currentPage={currentPage}\r\n totalResults={totalResults || sortedData.length}\r\n resultsPerPage={resultsPerPage}\r\n setCurrentPage={handleSetCurrentPage}\r\n onPageChange={onPageChange}\r\n serverSide={serverSidePagination}\r\n totalItems={totalItems}\r\n hasNextPage={hasNextPage}\r\n hasPreviousPage={hasPreviousPage}\r\n onNextPage={onNextPage}\r\n onPreviousPage={onPreviousPage}\r\n currentResultsPerPage={\r\n serverSidePagination ? sortedData.length : resultsPerPage\r\n }\r\n className=\"mt-x16\"\r\n />\r\n )}\r\n </Col>\r\n );\r\n};\r\n\r\nexport type CardTableProps = {\r\n columns: ColumnConfig[];\r\n data: TableRowData;\r\n sortConfig: { key: string; direction: \"asc\" | \"desc\" } | null;\r\n onSortChange?: (key: string, direction: \"asc\" | \"desc\") => void;\r\n};\r\n\r\nconst ActionContent: React.FC<{ data: ActionData }> = ({ data }) => {\r\n if (data.type === \"link\" && data.link) {\r\n return (\r\n <a href={data.link} aria-label={data.ariaLabel}>\r\n {data.label}\r\n </a>\r\n );\r\n }\r\n return (\r\n <button onClick={data.action} aria-label={data.ariaLabel}>\r\n {data.label}\r\n </button>\r\n );\r\n};\r\n\r\nexport const CardTable = ({\r\n columns,\r\n sortConfig,\r\n data,\r\n onSortChange,\r\n}: CardTableProps) => {\r\n const renderColumnValue = (value: any): ReactNode => {\r\n if (!value) return \"\";\r\n\r\n if (typeof value === \"object\" && \"firstLine\" in value) {\r\n const doubleLineValue = value as DoubleLineData;\r\n return `${doubleLineValue.firstLine}${doubleLineValue.secondLine ? ` ${doubleLineValue.secondLine}` : \"\"}`;\r\n }\r\n\r\n if (typeof value === \"object\" && \"label\" in value && \"type\" in value) {\r\n return <ActionContent data={value} />;\r\n }\r\n\r\n return value;\r\n };\r\n\r\n const renderIcon = (icon: React.ReactNode | CommonIconsType) => {\r\n switch (icon) {\r\n case \"info\":\r\n return <Info />;\r\n case \"download\":\r\n return <Download />;\r\n default:\r\n return icon;\r\n }\r\n };\r\n\r\n const handleSortClick = (key: string) => {\r\n if (!onSortChange || !sortConfig) return;\r\n\r\n const newDirection =\r\n sortConfig.key === key\r\n ? sortConfig.direction === \"asc\"\r\n ? \"desc\"\r\n : \"asc\"\r\n : \"asc\";\r\n\r\n onSortChange(key, newDirection);\r\n };\r\n\r\n return (\r\n <div\r\n className={clsx(\"ui-card-table shadow br-x4 text-slate-28 fs-custom \")}\r\n >\r\n {columns.map((column, index) => {\r\n if (!column.key || column.key === \"actionData\") {\r\n return (\r\n <Row\r\n key={index}\r\n p={\"x16\"}\r\n className={\"ui-table-header\"}\r\n justifyContent={\"space-between\"}\r\n >\r\n <Col justifyContent={\"end\"} gap={\"x4\"} className={\"w-full\"}>\r\n <Row justifyContent={\"end\"} className=\"table-mobile-actions\">\r\n {renderColumnValue(data.actionData)}\r\n </Row>\r\n </Col>\r\n </Row>\r\n );\r\n }\r\n\r\n const columnValue = data[column.key];\r\n const config = column;\r\n const isSorted = sortConfig?.key === column.key;\r\n const sortDirection = isSorted ? sortConfig.direction : null;\r\n\r\n return (\r\n <Row\r\n key={index}\r\n p={\"x16\"}\r\n className={\"ui-table-header\"}\r\n justifyContent={\"space-between\"}\r\n >\r\n <Col justifyContent={\"center\"} gap={\"x4\"} className={\"w-full\"}>\r\n <ActionIconText\r\n justifyContent={\"space-between\"}\r\n alignItems={\"center\"}\r\n icon={renderIcon(config.icon)}\r\n noIcon={!renderIcon(config.icon)}\r\n textLabel={config.label}\r\n iconPosition={config.iconPosition}\r\n popupInfo={config.popupInfo}\r\n positionPopUp={\"left\"}\r\n classNameText={\"fw-bold text-slate-28 fs-custom md-fs-6\"}\r\n >\r\n {config.sortable && (\r\n <span\r\n className=\"sort-indicator\"\r\n onClick={(e) => {\r\n e.stopPropagation();\r\n handleSortClick(column.key!);\r\n }}\r\n >\r\n <TriangleUp\r\n filled={isSorted && sortDirection === \"desc\"}\r\n className={clsx(\"sort-indicator__triangle\", {\r\n active: isSorted && sortDirection === \"desc\",\r\n })}\r\n />\r\n <TriangleDown\r\n filled={isSorted && sortDirection === \"asc\"}\r\n className={clsx(\"sort-indicator__triangle\", {\r\n active: isSorted && sortDirection === \"asc\",\r\n })}\r\n />\r\n </span>\r\n )}\r\n </ActionIconText>\r\n <Row>{renderColumnValue(columnValue)}</Row>\r\n </Col>\r\n </Row>\r\n );\r\n })}\r\n </div>\r\n );\r\n};\r\n\r\nexport type TableMobilePaginationProps = {\r\n currentPage?: number;\r\n totalResults?: number;\r\n resultsPerPage: number;\r\n setCurrentPage?: (page: number) => void;\r\n onPageChange?: (page: number) => void;\r\n className?: string;\r\n serverSide?: boolean;\r\n totalItems?: number;\r\n hasNextPage?: boolean;\r\n hasPreviousPage?: boolean;\r\n onNextPage?: () => void;\r\n onPreviousPage?: () => void;\r\n currentResultsPerPage?: number;\r\n};\r\n\r\nexport const TableMobilePagination: React.FC<TableMobilePaginationProps> = ({\r\n currentPage = 1,\r\n totalResults = 0,\r\n resultsPerPage,\r\n setCurrentPage,\r\n onPageChange,\r\n className,\r\n serverSide = false,\r\n totalItems,\r\n hasNextPage,\r\n hasPreviousPage,\r\n onNextPage,\r\n onPreviousPage,\r\n currentResultsPerPage = resultsPerPage,\r\n}) => {\r\n const totalPages = serverSide\r\n ? Math.ceil((totalItems || totalResults) / resultsPerPage)\r\n : Math.ceil(totalResults / resultsPerPage);\r\n\r\n const handlePageChange = (page: number) => {\r\n setCurrentPage?.(page);\r\n if (onPageChange) {\r\n onPageChange(page);\r\n }\r\n };\r\n\r\n const handleNextPage = () => {\r\n const nextPage = currentPage + 1;\r\n if (serverSide && onNextPage) {\r\n onNextPage();\r\n }\r\n handlePageChange(nextPage);\r\n };\r\n\r\n const handlePreviousPage = () => {\r\n const prevPage = currentPage - 1;\r\n if (serverSide && onPreviousPage) {\r\n onPreviousPage();\r\n }\r\n handlePageChange(prevPage);\r\n };\r\n\r\n const isNextDisabled = serverSide ? !hasNextPage : currentPage === totalPages;\r\n const isPrevDisabled = serverSide ? !hasPreviousPage : currentPage === 1;\r\n\r\n const getPageNumbers = () => {\r\n const pages = [];\r\n const maxVisiblePages = 5;\r\n\r\n if (totalPages <= maxVisiblePages) {\r\n for (let i = 1; i <= totalPages; i++) {\r\n pages.push(i);\r\n }\r\n } else {\r\n pages.push(1);\r\n\r\n let start = Math.max(2, currentPage - 1);\r\n let end = Math.min(totalPages - 1, currentPage + 1);\r\n\r\n if (currentPage <= 3) {\r\n end = 4;\r\n } else if (currentPage >= totalPages - 2) {\r\n start = totalPages - 3;\r\n }\r\n\r\n if (start > 2) {\r\n pages.push(\"...\");\r\n }\r\n\r\n for (let i = start; i <= end; i++) {\r\n pages.push(i);\r\n }\r\n\r\n if (end < totalPages - 1) {\r\n pages.push(\"...\");\r\n }\r\n\r\n pages.push(totalPages);\r\n }\r\n\r\n return pages;\r\n };\r\n\r\n return (\r\n <div className={clsx(\"pagination-mobile\", className)}>\r\n <div className=\"pagination-mobile__info\">\r\n Stai visualizzando{\" \"}\r\n <span className=\"pagination-mobile__info__resultsPerPage\">\r\n {serverSide\r\n ? currentResultsPerPage\r\n : currentPage === totalPages && totalResults % resultsPerPage !== 0\r\n ? totalResults % resultsPerPage\r\n : resultsPerPage}\r\n </span>{\" \"}\r\n di {serverSide ? totalItems || totalResults : totalResults} risultati\r\n </div>\r\n <div className=\"pagination-mobile__nav\">\r\n <button\r\n className={clsx(\r\n \"pagination-mobile__button\",\r\n isPrevDisabled && \"pagination-mobile__button--disabled\",\r\n )}\r\n onClick={handlePreviousPage}\r\n disabled={isPrevDisabled}\r\n aria-label=\"Previous page\"\r\n >\r\n <svg className=\"pagination-mobile__button-arrow\" viewBox=\"0 0 24 24\" aria-hidden=\"true\">\r\n <path d=\"M15 18l-6-6 6-6\" />\r\n </svg>\r\n </button>\r\n\r\n {getPageNumbers().map((page, index) =>\r\n page === \"...\" ? (\r\n <span\r\n key={`ellipsis-${index}`}\r\n className=\"pagination-mobile__ellipsis\"\r\n >\r\n ...\r\n </span>\r\n ) : (\r\n <button\r\n key={page}\r\n className={clsx(\r\n \"pagination-mobile__button\",\r\n currentPage === page && \"pagination-mobile__button--active\",\r\n )}\r\n onClick={() => handlePageChange(page as number)}\r\n disabled={page === currentPage}\r\n >\r\n {page}\r\n </button>\r\n ),\r\n )}\r\n\r\n <button\r\n className={clsx(\r\n \"pagination-mobile__button\",\r\n isNextDisabled && \"pagination-mobile__button--disabled\",\r\n )}\r\n onClick={handleNextPage}\r\n disabled={isNextDisabled}\r\n aria-label=\"Next page\"\r\n >\r\n <svg className=\"pagination-mobile__button-arrow\" viewBox=\"0 0 24 24\" aria-hidden=\"true\">\r\n <path d=\"M9 6l6 6-6 6\" />\r\n </svg>\r\n </button>\r\n </div>\r\n </div>\r\n );\r\n};\r\n"],"names":["TableMobile","data","columns","pagination","resultsPerPage","totalResults","initialCurrentPage","serverSidePagination","totalItems","hasNextPage","hasPreviousPage","onNextPage","onPreviousPage","onPageChange","externalSetCurrentPage","sortConfig","onSortChange","currentPage","setInternalCurrentPage","useState","handleSetCurrentPage","page","sortedData","React","a","b","aValue","bValue","aText","bText","startIndex","endIndex","currentPageData","jsxs","Col","index","jsx","CardTable","TableMobilePagination","ActionContent","renderColumnValue","value","doubleLineValue","renderIcon","icon","Info","Download","handleSortClick","key","newDirection","clsx","column","Row","columnValue","config","isSorted","sortDirection","ActionIconText","e","TriangleUp","TriangleDown","setCurrentPage","className","serverSide","currentResultsPerPage","totalPages","handlePageChange","handleNextPage","nextPage","handlePreviousPage","prevPage","isNextDisabled","isPrevDisabled","getPageNumbers","pages","i","start","end"],"mappings":"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"}
|
package/dist/index.cjs8.js
CHANGED
@@ -1,2 +1,2 @@
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const p=require("./index.cjs243.js"),s=require("react"),x=require("./index.cjs245.js"),C=require("./index.
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const p=require("./index.cjs243.js"),s=require("react"),x=require("./index.cjs245.js"),C=require("./index.cjs274.js"),j=({as:a,className:l,style:u,md:t,sm:e,xs:c,...o})=>{const m=a||"div",n=s.useMemo(()=>`col-grid-md-${t??"3"}`,[t]),r=s.useMemo(()=>e?`col-grid-sm-${e??"6"}`:"",[e]),i=s.useMemo(()=>`col-grid-${c??"12"}`,[c]),d=s.useMemo(()=>{const g=C.createSpacingClasses(o);return[i,r,n,...g].join(" ")},[n,o,r,i]);return p.jsxRuntimeExports.jsx(m,{className:x.clsx(l,d),style:{...u},...o})};exports.GridItem=j;
|
2
2
|
//# sourceMappingURL=index.cjs8.js.map
|
package/dist/index.cjs9.js
CHANGED
@@ -1,2 +1,2 @@
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const C=require("./index.cjs243.js"),m=require("react"),q=require("./index.cjs245.js"),x=require("./index.
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const C=require("./index.cjs243.js"),m=require("react"),q=require("./index.cjs245.js"),x=require("./index.cjs274.js"),j=require("./index.cjs273.js"),R=require("./index.cjs276.js"),b=({as:e,className:o,display:c,justifyContent:r,alignItems:t,flexWrap:n,style:a,ref:l,...s})=>{const i=e||"div",u=m.useMemo(()=>{const p=x.createSpacingClasses(s),y=j.createColorClasses(s),g=R.createTypographyClasses(s);return[...p,...y,...g].join(" ")},[s]);return C.jsxRuntimeExports.jsx(i,{ref:l,className:q.clsx("base-row",o,u),style:{display:c,justifyContent:r,alignItems:t,flexWrap:n,...a},...s})};exports.Row=b;
|
2
2
|
//# sourceMappingURL=index.cjs9.js.map
|
package/dist/index.es10.js
CHANGED
@@ -1,8 +1,8 @@
|
|
1
1
|
import { j as f } from "./index.es243.js";
|
2
2
|
import { useMemo as x } from "react";
|
3
3
|
import { clsx as y } from "./index.es245.js";
|
4
|
-
import { createSpacingClasses as g } from "./index.
|
5
|
-
import { createColorClasses as j } from "./index.
|
4
|
+
import { createSpacingClasses as g } from "./index.es274.js";
|
5
|
+
import { createColorClasses as j } from "./index.es273.js";
|
6
6
|
import { createTypographyClasses as u } from "./index.es276.js";
|
7
7
|
const M = ({
|
8
8
|
as: o,
|
package/dist/index.es156.js
CHANGED
package/dist/index.es157.js
CHANGED
package/dist/index.es158.js
CHANGED
package/dist/index.es159.js
CHANGED
package/dist/index.es160.js
CHANGED
package/dist/index.es161.js
CHANGED
package/dist/index.es162.js
CHANGED
package/dist/index.es163.js
CHANGED
package/dist/index.es164.js
CHANGED
package/dist/index.es165.js
CHANGED
package/dist/index.es166.js
CHANGED
package/dist/index.es167.js
CHANGED
package/dist/index.es168.js
CHANGED
package/dist/index.es169.js
CHANGED
package/dist/index.es170.js
CHANGED
package/dist/index.es171.js
CHANGED
package/dist/index.es172.js
CHANGED
package/dist/index.es173.js
CHANGED
package/dist/index.es174.js
CHANGED
package/dist/index.es175.js
CHANGED
package/dist/index.es176.js
CHANGED
package/dist/index.es177.js
CHANGED
package/dist/index.es178.js
CHANGED