@eturnity/eturnity_reusable_components 8.22.23 → 8.26.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/main.es12.js +2 -2
- package/dist/main.es13.js +3 -3
- package/dist/main.es14.js +2 -2
- package/dist/main.es15.js +60 -212
- package/dist/main.es16.js +196 -21
- package/dist/main.es17.js +19 -1051
- package/dist/main.es18.js +1044 -215
- package/dist/main.es19.js +197 -69
- package/dist/main.es20.js +99 -2
- package/dist/main.es21.js +2 -541
- package/dist/main.es22.js +530 -188
- package/dist/main.es227.js +5 -5
- package/dist/main.es228.js +6 -6
- package/dist/main.es229.js +4 -4
- package/dist/main.es23.js +212 -60
- package/dist/main.es230.js +8 -6
- package/dist/main.es231.js +6 -8
- package/dist/main.es232.js +5 -5
- package/dist/main.es233.js +8 -6
- package/dist/main.es234.js +5 -5
- package/dist/main.es235.js +5 -7
- package/dist/main.es236.js +7 -5
- package/dist/main.es237.js +9 -14
- package/dist/main.es238.js +8 -10
- package/dist/main.es239.js +16 -9
- package/dist/main.es24.js +3 -3
- package/dist/main.es240.js +11 -8
- package/dist/main.es241.js +7 -15
- package/dist/main.es242.js +5 -5
- package/dist/main.es243.js +8 -8
- package/dist/main.es244.js +8 -8
- package/dist/main.es245.js +14 -11
- package/dist/main.es246.js +5 -5
- package/dist/main.es247.js +6 -4
- package/dist/main.es248.js +4 -4
- package/dist/main.es249.js +11 -8
- package/dist/main.es250.js +7 -7
- package/dist/main.es251.js +8 -11
- package/dist/main.es252.js +9 -4
- package/dist/main.es253.js +4 -9
- package/dist/main.es254.js +11 -8
- package/dist/main.es255.js +8 -13
- package/dist/main.es256.js +4 -4
- package/dist/main.es257.js +7 -5
- package/dist/main.es258.js +5 -5
- package/dist/main.es259.js +11 -8
- package/dist/main.es260.js +8 -11
- package/dist/main.es261.js +6 -6
- package/dist/main.es262.js +6 -15
- package/dist/main.es263.js +16 -7
- package/dist/main.es264.js +7 -16
- package/dist/main.es265.js +11 -16
- package/dist/main.es266.js +21 -9
- package/dist/main.es267.js +10 -17
- package/dist/main.es268.js +18 -9
- package/dist/main.es269.js +4 -4
- package/dist/main.es270.js +3 -3
- package/dist/main.es271.js +3 -3
- package/dist/main.es272.js +9 -25
- package/dist/main.es273.js +22 -11
- package/dist/main.es274.js +15 -7
- package/dist/main.es275.js +4 -4
- package/dist/main.es276.js +8 -13
- package/dist/main.es277.js +8 -6
- package/dist/main.es278.js +10 -27
- package/dist/main.es279.js +27 -10
- package/dist/main.es280.js +12 -10
- package/dist/main.es281.js +10 -8
- package/dist/main.es282.js +8 -9
- package/dist/main.es283.js +8 -13
- package/dist/main.es284.js +5 -5
- package/dist/main.es285.js +12 -7
- package/dist/main.es286.js +9 -22
- package/dist/main.es287.js +18 -8
- package/dist/main.es288.js +9 -7
- package/dist/main.es289.js +7 -9
- package/dist/main.es290.js +6 -11
- package/dist/main.es291.js +13 -8
- package/dist/main.es292.js +5 -5
- package/dist/main.es293.js +9 -7
- package/dist/main.es294.js +10 -17
- package/dist/main.es295.js +14 -9
- package/dist/main.es296.js +5 -7
- package/dist/main.es297.js +10 -13
- package/dist/main.es298.js +14 -9
- package/dist/main.es299.js +5 -7
- package/dist/main.es300.js +5 -5
- package/dist/main.es301.js +5 -5
- package/dist/main.es302.js +5 -5
- package/dist/main.es303.js +13 -8
- package/dist/main.es304.js +8 -13
- package/dist/main.es305.js +4 -4
- package/dist/main.es306.js +8 -12
- package/dist/main.es307.js +12 -18
- package/dist/main.es308.js +22 -15
- package/dist/main.es309.js +15 -15
- package/dist/main.es310.js +14 -12
- package/dist/main.es311.js +9 -8
- package/dist/main.es312.js +11 -15
- package/dist/main.es313.js +14 -9
- package/dist/main.es314.js +6 -5
- package/dist/main.es315.js +9 -14
- package/dist/main.es316.js +14 -11
- package/dist/main.es317.js +7 -6
- package/dist/main.es318.js +6 -5
- package/dist/main.es319.js +11 -8
- package/dist/main.es320.js +7 -7
- package/dist/main.es321.js +8 -11
- package/dist/main.es322.js +4 -4
- package/dist/main.es323.js +5 -7
- package/dist/main.es324.js +10 -23
- package/dist/main.es325.js +20 -12
- package/dist/main.es326.js +11 -9
- package/dist/main.es327.js +14 -12
- package/dist/main.es328.js +10 -7
- package/dist/main.es329.js +7 -6
- package/dist/main.es330.js +6 -7
- package/dist/main.es331.js +8 -13
- package/dist/main.es332.js +14 -9
- package/dist/main.es333.js +6 -6
- package/dist/main.es334.js +12 -26
- package/dist/main.es335.js +26 -7
- package/dist/main.es336.js +4 -9
- package/dist/main.es337.js +5 -5
- package/dist/main.es338.js +4 -6
- package/dist/main.es339.js +8 -6
- package/dist/main.es340.js +5 -5
- package/dist/main.es341.js +6 -6
- package/dist/main.es342.js +7 -8
- package/dist/main.es343.js +7 -8
- package/dist/main.es344.js +7 -5
- package/dist/main.es345.js +6 -6
- package/dist/main.es346.js +4 -4
- package/dist/main.es347.js +4 -4
- package/dist/main.es348.js +6 -8
- package/dist/main.es349.js +7 -5
- package/dist/main.es350.js +10 -17
- package/dist/main.es351.js +18 -11
- package/dist/main.es352.js +9 -16
- package/dist/main.es353.js +15 -8
- package/dist/main.es354.js +6 -6
- package/dist/main.es355.js +9 -14
- package/dist/main.es356.js +14 -9
- package/dist/main.es357.js +5 -5
- package/dist/main.es358.js +9 -14
- package/dist/main.es359.js +9 -14
- package/dist/main.es360.js +16 -11
- package/dist/main.es361.js +4 -4
- package/dist/main.es362.js +14 -11
- package/dist/main.es363.js +7 -5
- package/dist/main.es364.js +6 -8
- package/dist/main.es365.js +4 -4
- package/dist/main.es366.js +12 -17
- package/dist/main.es367.js +17 -12
- package/dist/main.es368.js +11 -23
- package/dist/main.es369.js +21 -7
- package/dist/main.es370.js +4 -4
- package/dist/main.es371.js +6 -6
- package/dist/main.es372.js +6 -6
- package/dist/main.es373.js +20 -9
- package/dist/main.es374.js +10 -4
- package/dist/main.es375.js +4 -101
- package/dist/main.es376.js +99 -362
- package/dist/main.es377.js +363 -21
- package/dist/main.es378.js +21 -60
- package/dist/main.es379.js +62 -2
- package/dist/main.es380.js +2 -2
- package/dist/main.es381.js +2 -2
- package/dist/main.es382.js +2 -2
- package/dist/main.es383.js +2 -2
- package/dist/main.es384.js +2 -2
- package/dist/main.es385.js +2 -2
- package/dist/main.es386.js +2 -2
- package/dist/main.es387.js +2 -2
- package/dist/main.es388.js +2 -2
- package/dist/main.es389.js +2 -2
- package/dist/main.es390.js +2 -2
- package/dist/main.es391.js +2 -2
- package/dist/main.es392.js +2 -2
- package/dist/main.es393.js +2 -2
- package/dist/main.es394.js +2 -2
- package/dist/main.es395.js +2 -2
- package/dist/main.es396.js +2 -2
- package/dist/main.es397.js +2 -2
- package/dist/main.es398.js +2 -2
- package/dist/main.es399.js +2 -2
- package/dist/main.es400.js +2 -2
- package/dist/main.es401.js +2 -2
- package/dist/main.es402.js +2 -2
- package/dist/main.es403.js +2 -2
- package/dist/main.es404.js +2 -2
- package/dist/main.es405.js +2 -2
- package/dist/main.es406.js +2 -2
- package/dist/main.es407.js +2 -2
- package/dist/main.es408.js +2 -2
- package/dist/main.es409.js +2 -2
- package/dist/main.es410.js +2 -2
- package/dist/main.es411.js +2 -2
- package/dist/main.es412.js +2 -2
- package/dist/main.es413.js +2 -2
- package/dist/main.es414.js +2 -2
- package/dist/main.es415.js +2 -2
- package/dist/main.es416.js +2 -2
- package/dist/main.es417.js +2 -2
- package/dist/main.es418.js +2 -2
- package/dist/main.es419.js +2 -2
- package/dist/main.es420.js +2 -2
- package/dist/main.es421.js +2 -2
- package/dist/main.es422.js +2 -2
- package/dist/main.es423.js +2 -2
- package/dist/main.es424.js +2 -2
- package/dist/main.es425.js +2 -2
- package/dist/main.es426.js +2 -2
- package/dist/main.es427.js +2 -2
- package/dist/main.es428.js +2 -2
- package/dist/main.es429.js +2 -2
- package/dist/main.es430.js +2 -2
- package/dist/main.es431.js +2 -2
- package/dist/main.es432.js +2 -2
- package/dist/main.es433.js +2 -2
- package/dist/main.es434.js +2 -2
- package/dist/main.es435.js +2 -2
- package/dist/main.es436.js +2 -2
- package/dist/main.es437.js +2 -2
- package/dist/main.es438.js +2 -2
- package/dist/main.es439.js +2 -2
- package/dist/main.es440.js +2 -2
- package/dist/main.es441.js +2 -2
- package/dist/main.es442.js +2 -2
- package/dist/main.es443.js +2 -2
- package/dist/main.es444.js +2 -2
- package/dist/main.es445.js +2 -2
- package/dist/main.es446.js +2 -2
- package/dist/main.es447.js +2 -2
- package/dist/main.es448.js +2 -2
- package/dist/main.es449.js +2 -2
- package/dist/main.es450.js +2 -2
- package/dist/main.es451.js +2 -2
- package/dist/main.es452.js +2 -2
- package/dist/main.es453.js +2 -2
- package/dist/main.es454.js +2 -2
- package/dist/main.es455.js +2 -2
- package/dist/main.es456.js +2 -2
- package/dist/main.es457.js +2 -2
- package/dist/main.es458.js +2 -2
- package/dist/main.es459.js +2 -2
- package/dist/main.es460.js +2 -2
- package/dist/main.es461.js +2 -2
- package/dist/main.es462.js +2 -2
- package/dist/main.es463.js +2 -2
- package/dist/main.es464.js +2 -2
- package/dist/main.es465.js +2 -2
- package/dist/main.es466.js +2 -2
- package/dist/main.es467.js +2 -2
- package/dist/main.es468.js +2 -2
- package/dist/main.es469.js +2 -2
- package/dist/main.es470.js +2 -2
- package/dist/main.es471.js +2 -2
- package/dist/main.es472.js +2 -2
- package/dist/main.es473.js +2 -2
- package/dist/main.es474.js +2 -2
- package/dist/main.es475.js +2 -2
- package/dist/main.es476.js +2 -2
- package/dist/main.es477.js +2 -2
- package/dist/main.es478.js +2 -2
- package/dist/main.es479.js +2 -2
- package/dist/main.es480.js +2 -2
- package/dist/main.es481.js +2 -2
- package/dist/main.es482.js +2 -2
- package/dist/main.es483.js +2 -2
- package/dist/main.es484.js +2 -2
- package/dist/main.es485.js +2 -2
- package/dist/main.es486.js +2 -2
- package/dist/main.es487.js +2 -2
- package/dist/main.es488.js +2 -2
- package/dist/main.es489.js +2 -2
- package/dist/main.es490.js +2 -2
- package/dist/main.es491.js +2 -2
- package/dist/main.es492.js +2 -2
- package/dist/main.es493.js +2 -2
- package/dist/main.es494.js +2 -2
- package/dist/main.es495.js +2 -2
- package/dist/main.es496.js +2 -2
- package/dist/main.es497.js +2 -2
- package/dist/main.es498.js +2 -2
- package/dist/main.es499.js +2 -2
- package/dist/main.es5.js +3 -3
- package/dist/main.es500.js +2 -2
- package/dist/main.es501.js +2 -2
- package/dist/main.es502.js +2 -2
- package/dist/main.es503.js +2 -2
- package/dist/main.es504.js +2 -2
- package/dist/main.es505.js +2 -2
- package/dist/main.es506.js +2 -2
- package/dist/main.es507.js +2 -2
- package/dist/main.es508.js +2 -2
- package/dist/main.es509.js +2 -2
- package/dist/main.es510.js +2 -2
- package/dist/main.es511.js +2 -2
- package/dist/main.es512.js +2 -2
- package/dist/main.es513.js +2 -2
- package/dist/main.es514.js +2 -2
- package/dist/main.es515.js +2 -2
- package/dist/main.es516.js +2 -2
- package/dist/main.es517.js +2 -2
- package/dist/main.es518.js +2 -2
- package/dist/main.es519.js +2 -2
- package/dist/main.es520.js +2 -2
- package/dist/main.es521.js +2 -2
- package/dist/main.es522.js +2 -2
- package/dist/main.es523.js +2 -2
- package/dist/main.es524.js +2 -2
- package/dist/main.es525.js +2 -2
- package/dist/main.es526.js +2 -2
- package/dist/main.es527.js +2 -2
- package/dist/main.es528.js +2 -2
- package/dist/main.es529.js +2 -2
- package/dist/main.es530.js +2 -2
- package/dist/main.es531.js +2 -2
- package/dist/main.es532.js +2 -2
- package/dist/main.es533.js +2 -2
- package/dist/main.es534.js +2 -2
- package/dist/main.es535.js +2 -2
- package/dist/main.es536.js +2 -2
- package/dist/main.es537.js +2 -2
- package/dist/main.es538.js +2 -2
- package/dist/main.es539.js +2 -2
- package/dist/main.es540.js +2 -2
- package/dist/main.es541.js +2 -2
- package/dist/main.es542.js +2 -2
- package/dist/main.es543.js +2 -2
- package/dist/main.es544.js +2 -2
- package/dist/main.es545.js +2 -2
- package/dist/main.es546.js +2 -2
- package/dist/main.es547.js +2 -2
- package/dist/main.es548.js +2 -2
- package/dist/main.es549.js +2 -2
- package/dist/main.es550.js +2 -2
- package/dist/main.es551.js +2 -2
- package/dist/main.es552.js +2 -2
- package/dist/main.es553.js +2 -2
- package/dist/main.es554.js +2 -2
- package/dist/main.es555.js +2 -2
- package/dist/main.es556.js +2 -2
- package/dist/main.es557.js +2 -2
- package/dist/main.es558.js +2 -2
- package/dist/main.es559.js +2 -2
- package/dist/main.es560.js +2 -2
- package/dist/main.es561.js +2 -2
- package/dist/main.es562.js +2 -2
- package/dist/main.es563.js +2 -2
- package/dist/main.es564.js +2 -2
- package/dist/main.es565.js +2 -2
- package/dist/main.es566.js +2 -2
- package/dist/main.es567.js +2 -2
- package/dist/main.es568.js +2 -2
- package/dist/main.es569.js +2 -2
- package/dist/main.es570.js +2 -2
- package/dist/main.es571.js +2 -2
- package/dist/main.es572.js +2 -2
- package/dist/main.es573.js +2 -2
- package/dist/main.es574.js +2 -2
- package/dist/main.es575.js +2 -2
- package/dist/main.es576.js +2 -2
- package/dist/main.es577.js +2 -2
- package/dist/main.es578.js +2 -2
- package/dist/main.es579.js +2 -2
- package/dist/main.es580.js +2 -2
- package/dist/main.es581.js +2 -2
- package/dist/main.es582.js +2 -2
- package/dist/main.es583.js +2 -2
- package/dist/main.es584.js +2 -2
- package/dist/main.es585.js +2 -2
- package/dist/main.es586.js +2 -2
- package/dist/main.es587.js +2 -2
- package/dist/main.es588.js +2 -2
- package/dist/main.es589.js +2 -2
- package/dist/main.es590.js +2 -2
- package/dist/main.es591.js +2 -2
- package/dist/main.es592.js +2 -2
- package/dist/main.es593.js +2 -2
- package/dist/main.es594.js +2 -2
- package/dist/main.es595.js +2 -2
- package/dist/main.es596.js +2 -2
- package/dist/main.es597.js +2 -2
- package/dist/main.es598.js +2 -2
- package/dist/main.es599.js +2 -2
- package/dist/main.es6.js +4 -4
- package/dist/main.es600.js +2 -2
- package/dist/main.es601.js +2 -2
- package/dist/main.es602.js +2 -2
- package/dist/main.es603.js +2 -2
- package/dist/main.es604.js +2 -2
- package/dist/main.es605.js +2 -2
- package/dist/main.es606.js +2 -2
- package/dist/main.es607.js +2 -2
- package/dist/main.es608.js +2 -2
- package/dist/main.es609.js +2 -2
- package/dist/main.es610.js +2 -2
- package/dist/main.es611.js +2 -2
- package/dist/main.es612.js +2 -2
- package/dist/main.es613.js +2 -2
- package/dist/main.es614.js +2 -2
- package/dist/main.es615.js +2 -2
- package/dist/main.es616.js +2 -2
- package/dist/main.es617.js +2 -2
- package/dist/main.es618.js +2 -2
- package/dist/main.es619.js +2 -2
- package/dist/main.es620.js +2 -2
- package/dist/main.es621.js +2 -2
- package/dist/main.es622.js +2 -2
- package/dist/main.es623.js +2 -2
- package/dist/main.es624.js +2 -2
- package/dist/main.es625.js +2 -2
- package/dist/main.es626.js +2 -2
- package/dist/main.es627.js +2 -2
- package/dist/main.es628.js +2 -2
- package/dist/main.es629.js +2 -2
- package/dist/main.es630.js +2 -2
- package/dist/main.es631.js +2 -2
- package/dist/main.es632.js +2 -2
- package/dist/main.es633.js +2 -2
- package/dist/main.es634.js +2 -2
- package/dist/main.es635.js +2 -2
- package/dist/main.es636.js +2 -2
- package/dist/main.es637.js +2 -2
- package/dist/main.es638.js +2 -2
- package/dist/main.es639.js +2 -2
- package/dist/main.es640.js +2 -2
- package/dist/main.es641.js +2 -2
- package/dist/main.es642.js +2 -2
- package/dist/main.es643.js +2 -2
- package/dist/main.es644.js +2 -2
- package/dist/main.es645.js +2 -2
- package/dist/main.es646.js +2 -2
- package/dist/main.es647.js +2 -2
- package/dist/main.es648.js +2 -2
- package/dist/main.es649.js +2 -2
- package/dist/main.es650.js +2 -2
- package/dist/main.es651.js +2 -2
- package/dist/main.es652.js +2 -2
- package/dist/main.es653.js +2 -2
- package/dist/main.es654.js +2 -2
- package/dist/main.es655.js +2 -2
- package/dist/main.es656.js +2 -2
- package/dist/main.es657.js +2 -2
- package/dist/main.es658.js +2 -2
- package/dist/main.es659.js +2 -2
- package/dist/main.es660.js +2 -2
- package/dist/main.es661.js +2 -2
- package/dist/main.es662.js +2 -2
- package/dist/main.es663.js +2 -2
- package/dist/main.es664.js +2 -2
- package/dist/main.es665.js +2 -2
- package/dist/main.es666.js +2 -2
- package/dist/main.es667.js +2 -2
- package/dist/main.es668.js +2 -2
- package/dist/main.es669.js +2 -2
- package/dist/main.es670.js +2 -2
- package/dist/main.es671.js +2 -2
- package/dist/main.es672.js +2 -2
- package/dist/main.es673.js +2 -2
- package/dist/main.es674.js +2 -2
- package/dist/main.es675.js +2 -2
- package/dist/main.es676.js +2 -2
- package/dist/main.es677.js +2 -2
- package/dist/main.es678.js +2 -2
- package/dist/main.es679.js +2 -2
- package/dist/main.es680.js +2 -2
- package/dist/main.es681.js +2 -2
- package/dist/main.es682.js +2 -2
- package/dist/main.es683.js +2 -2
- package/dist/main.es684.js +2 -2
- package/dist/main.es685.js +2 -2
- package/dist/main.es686.js +2 -2
- package/dist/main.es687.js +2 -2
- package/dist/main.es688.js +2 -2
- package/dist/main.es689.js +2 -2
- package/dist/main.es690.js +2 -2
- package/dist/main.es691.js +2 -2
- package/dist/main.es692.js +2 -2
- package/dist/main.es693.js +2 -2
- package/dist/main.es694.js +2 -2
- package/dist/main.es695.js +2 -2
- package/dist/main.es696.js +2 -2
- package/dist/main.es697.js +2 -2
- package/dist/main.es698.js +2 -2
- package/dist/main.es699.js +2 -2
- package/dist/main.es700.js +2 -2
- package/dist/main.es701.js +2 -2
- package/dist/main.es702.js +2 -2
- package/dist/main.es703.js +2 -2
- package/dist/main.es704.js +2 -2
- package/dist/main.es705.js +2 -2
- package/dist/main.es706.js +2 -2
- package/dist/main.es707.js +2 -2
- package/dist/main.es708.js +2 -2
- package/dist/main.es709.js +2 -2
- package/dist/main.es710.js +2 -2
- package/dist/main.es711.js +2 -2
- package/dist/main.es712.js +2 -2
- package/dist/main.es713.js +2 -2
- package/dist/main.es714.js +2 -2
- package/dist/main.es715.js +2 -2
- package/dist/main.es716.js +2 -2
- package/dist/main.es717.js +2 -2
- package/dist/main.es718.js +2 -2
- package/dist/main.es719.js +2 -2
- package/dist/main.es720.js +2 -2
- package/dist/main.es721.js +2 -2
- package/dist/main.es722.js +2 -2
- package/dist/main.es723.js +2 -2
- package/dist/main.es724.js +2 -2
- package/dist/main.es725.js +2 -2
- package/dist/main.es726.js +2 -2
- package/dist/main.es727.js +4 -0
- package/dist/main.es728.js +4 -0
- package/dist/main.es9.js +1 -1
- package/package.json +1 -1
- package/src/assets/svgIcons/house_dropper.svg +3 -0
- package/src/assets/tests/__mocks__/svgMock.js +5 -1
- package/src/components/draggableCard/index.vue +1 -1
- package/src/components/filterComponent/viewFilter.vue +97 -1
- package/src/components/iconWrapper/index.vue +64 -13
- package/src/components/rangeSlider/RangeSlider.spec.js +178 -0
- package/src/components/rangeSlider/RangeSlider.stories.js +159 -0
- package/src/components/rangeSlider/index.vue +15 -20
- package/src/components/tabsHeader/index.vue +1 -0
@@ -1,13 +1,14 @@
|
|
1
1
|
<template>
|
2
2
|
<Wrapper
|
3
3
|
:background-color="backgroundColor"
|
4
|
+
:border-color="borderColor || iconColor"
|
4
5
|
:border-radius="borderRadius"
|
5
|
-
:color="iconColor"
|
6
6
|
:data-id="dataId"
|
7
7
|
:data-qa-id="dataQaId"
|
8
8
|
:disabled="disabled"
|
9
9
|
:has-border="hasBorder"
|
10
10
|
:hovered-background-color="hoveredBackgroundColor"
|
11
|
+
:hovered-border-color="hoveredBorderColor"
|
11
12
|
:is-hovered="isHovered"
|
12
13
|
:no-cursor="noCursor"
|
13
14
|
:size="size"
|
@@ -51,22 +52,24 @@
|
|
51
52
|
import styled from 'vue3-styled-components'
|
52
53
|
import RCIcon from '../icon'
|
53
54
|
|
55
|
+
const LockContainer = styled.div`
|
56
|
+
position: absolute;
|
57
|
+
bottom: 6px;
|
58
|
+
right: 6px;
|
59
|
+
`
|
60
|
+
|
54
61
|
const wrapperAttrs = {
|
55
|
-
color: String,
|
56
62
|
isHovered: Boolean,
|
63
|
+
borderColor: String,
|
57
64
|
borderRadius: String,
|
58
65
|
disabled: Boolean,
|
59
66
|
size: String,
|
60
67
|
backgroundColor: String,
|
61
68
|
hoveredBackgroundColor: String,
|
69
|
+
hoveredBorderColor: String,
|
62
70
|
hasBorder: Boolean,
|
63
71
|
noCursor: Boolean,
|
64
72
|
}
|
65
|
-
const LockContainer = styled.div`
|
66
|
-
position: absolute;
|
67
|
-
bottom: 6px;
|
68
|
-
right: 6px;
|
69
|
-
`
|
70
73
|
const Wrapper = styled('div', wrapperAttrs)`
|
71
74
|
position: relative;
|
72
75
|
display: inline-flex;
|
@@ -74,7 +77,8 @@
|
|
74
77
|
height: ${(props) => props.size};
|
75
78
|
border: ${(props) =>
|
76
79
|
props.hasBorder
|
77
|
-
? 'solid 1px ' +
|
80
|
+
? 'solid 1px ' +
|
81
|
+
(props.theme.colors[props.borderColor] || props.borderColor)
|
78
82
|
: ''};
|
79
83
|
justify-content: center;
|
80
84
|
align-items: center;
|
@@ -85,14 +89,32 @@
|
|
85
89
|
border-radius: ${(props) => props.borderRadius};
|
86
90
|
${(props) =>
|
87
91
|
props.isHovered
|
88
|
-
?
|
89
|
-
|
90
|
-
|
91
|
-
|
92
|
+
? `
|
93
|
+
background-color: ${
|
94
|
+
props.theme.colors[props.hoveredBackgroundColor] ??
|
95
|
+
props.hoveredBackgroundColor
|
96
|
+
};
|
97
|
+
${
|
98
|
+
props.hoveredBorderColor
|
99
|
+
? `border-color: ${
|
100
|
+
props.theme.colors[props.hoveredBorderColor] ??
|
101
|
+
props.hoveredBorderColor
|
102
|
+
};`
|
103
|
+
: ''
|
104
|
+
}
|
105
|
+
`
|
106
|
+
: ''}
|
92
107
|
&:hover {
|
93
108
|
background-color: ${(props) =>
|
94
|
-
props.theme.colors[props.hoveredBackgroundColor]
|
109
|
+
props.theme.colors[props.hoveredBackgroundColor] ??
|
95
110
|
props.hoveredBackgroundColor};
|
111
|
+
${(props) =>
|
112
|
+
props.hoveredBorderColor
|
113
|
+
? `border-color: ${
|
114
|
+
props.theme.colors[props.hoveredBorderColor] ??
|
115
|
+
props.hoveredBorderColor
|
116
|
+
};`
|
117
|
+
: ''}
|
96
118
|
}
|
97
119
|
`
|
98
120
|
const CaretIcon = styled.div`
|
@@ -112,45 +134,69 @@
|
|
112
134
|
},
|
113
135
|
props: {
|
114
136
|
disabled: {
|
137
|
+
type: Boolean,
|
115
138
|
required: false,
|
116
139
|
default: false,
|
117
140
|
},
|
118
141
|
name: {
|
142
|
+
type: String,
|
119
143
|
required: true,
|
120
144
|
},
|
121
145
|
iconColor: {
|
146
|
+
type: String,
|
122
147
|
required: false,
|
123
148
|
default: 'white',
|
124
149
|
},
|
125
150
|
hoveredIconColor: {
|
151
|
+
type: String,
|
126
152
|
required: false,
|
153
|
+
default: null,
|
127
154
|
},
|
128
155
|
backgroundColor: {
|
156
|
+
type: String,
|
129
157
|
required: false,
|
158
|
+
default: 'transparent',
|
130
159
|
},
|
131
160
|
hasBorder: {
|
161
|
+
type: Boolean,
|
132
162
|
required: false,
|
163
|
+
default: false,
|
133
164
|
},
|
134
165
|
hoveredBackgroundColor: {
|
166
|
+
type: String,
|
135
167
|
required: false,
|
136
168
|
default: 'transparentWhite2',
|
137
169
|
},
|
138
170
|
size: {
|
171
|
+
type: String,
|
139
172
|
required: false,
|
140
173
|
default: '32px',
|
141
174
|
},
|
142
175
|
iconSize: {
|
176
|
+
type: String,
|
143
177
|
required: false,
|
144
178
|
default: '18px',
|
145
179
|
},
|
146
180
|
hasCaret: {
|
181
|
+
type: Boolean,
|
147
182
|
required: false,
|
148
183
|
default: false,
|
149
184
|
},
|
150
185
|
borderRadius: {
|
186
|
+
type: String,
|
151
187
|
required: false,
|
152
188
|
default: '6px',
|
153
189
|
},
|
190
|
+
borderColor: {
|
191
|
+
type: String,
|
192
|
+
required: false,
|
193
|
+
default: null,
|
194
|
+
},
|
195
|
+
hoveredBorderColor: {
|
196
|
+
type: String,
|
197
|
+
required: false,
|
198
|
+
default: null,
|
199
|
+
},
|
154
200
|
dataId: {
|
155
201
|
type: String,
|
156
202
|
default: '',
|
@@ -160,22 +206,27 @@
|
|
160
206
|
default: '',
|
161
207
|
},
|
162
208
|
isHovered: {
|
209
|
+
type: Boolean,
|
163
210
|
required: false,
|
164
211
|
default: false,
|
165
212
|
},
|
166
213
|
isStriked: {
|
214
|
+
type: Boolean,
|
167
215
|
required: false,
|
168
216
|
default: false,
|
169
217
|
},
|
170
218
|
isLoading: {
|
219
|
+
type: Boolean,
|
171
220
|
required: false,
|
172
221
|
default: false,
|
173
222
|
},
|
174
223
|
noCursor: {
|
224
|
+
type: Boolean,
|
175
225
|
required: false,
|
176
226
|
default: false,
|
177
227
|
},
|
178
228
|
hasLock: {
|
229
|
+
type: Boolean,
|
179
230
|
required: false,
|
180
231
|
default: false,
|
181
232
|
},
|
@@ -0,0 +1,178 @@
|
|
1
|
+
// Mock SVG components
|
2
|
+
const SvgMock = {
|
3
|
+
name: 'SvgMock',
|
4
|
+
template: '<div class="mock-svg"></div>',
|
5
|
+
}
|
6
|
+
|
7
|
+
// Mock Slider component
|
8
|
+
const Slider = {
|
9
|
+
name: 'Slider',
|
10
|
+
template: '<div class="mock-slider"></div>',
|
11
|
+
props: [
|
12
|
+
'color',
|
13
|
+
'draggable',
|
14
|
+
'max',
|
15
|
+
'min',
|
16
|
+
'minWidth',
|
17
|
+
'resizable',
|
18
|
+
'step',
|
19
|
+
'stepCount',
|
20
|
+
'subStepCount',
|
21
|
+
'z',
|
22
|
+
],
|
23
|
+
emits: ['drag-stop', 'resize-stop', 'activated', 'deactivated'],
|
24
|
+
}
|
25
|
+
|
26
|
+
jest.mock('../../assets/svgIcons/handle.svg', () => SvgMock)
|
27
|
+
jest.mock('../../assets/svgIcons/add_icon.svg', () => SvgMock)
|
28
|
+
jest.mock('./Slider', () => Slider)
|
29
|
+
|
30
|
+
import { mount } from '@vue/test-utils'
|
31
|
+
import RangeSlider from './index.vue'
|
32
|
+
|
33
|
+
const baseProps = {
|
34
|
+
dataLocation: 'test',
|
35
|
+
tariffItems: [
|
36
|
+
{ id: 1, name: 'Tariff A', color: '#4CAF50' },
|
37
|
+
{ id: 2, name: 'Tariff B', color: '#2196F3' },
|
38
|
+
],
|
39
|
+
labels: [
|
40
|
+
{
|
41
|
+
placement: 'top',
|
42
|
+
value: ['00:00', '12:00', '24:00'],
|
43
|
+
},
|
44
|
+
{
|
45
|
+
placement: 'left',
|
46
|
+
value: [
|
47
|
+
{
|
48
|
+
id: 1,
|
49
|
+
name: 'Group 1',
|
50
|
+
selectedTariffs: [
|
51
|
+
{
|
52
|
+
id: 1,
|
53
|
+
name: 'Tariff A',
|
54
|
+
min: 0,
|
55
|
+
max: 12,
|
56
|
+
color: '#4CAF50',
|
57
|
+
parentId: 1,
|
58
|
+
},
|
59
|
+
],
|
60
|
+
},
|
61
|
+
],
|
62
|
+
},
|
63
|
+
],
|
64
|
+
rangeMargin: 1,
|
65
|
+
step: 1,
|
66
|
+
minWidth: 1,
|
67
|
+
canOverlap: true,
|
68
|
+
disabled: false,
|
69
|
+
}
|
70
|
+
|
71
|
+
describe('RangeSlider', () => {
|
72
|
+
it('renders top and left labels', () => {
|
73
|
+
const wrapper = mount(RangeSlider, { props: baseProps })
|
74
|
+
expect(wrapper.text()).toContain('00:00')
|
75
|
+
expect(wrapper.text()).toContain('Group 1')
|
76
|
+
})
|
77
|
+
|
78
|
+
it('renders sliders for selected tariffs', () => {
|
79
|
+
const wrapper = mount(RangeSlider, { props: baseProps })
|
80
|
+
// Should render one slider for Tariff A
|
81
|
+
expect(wrapper.findAll('[data-id^="slider_bar_item_"]').length).toBe(1)
|
82
|
+
})
|
83
|
+
|
84
|
+
it('emits onChange when slider is dragged or resized', async () => {
|
85
|
+
const wrapper = mount(RangeSlider, { props: baseProps })
|
86
|
+
// Simulate drag-stop event on Slider
|
87
|
+
await wrapper
|
88
|
+
.findComponent({ name: 'Slider' })
|
89
|
+
.vm.$emit('drag-stop', { min: 2, max: 10 })
|
90
|
+
expect(wrapper.emitted().drag).toBeTruthy()
|
91
|
+
})
|
92
|
+
|
93
|
+
it('shows error message when overlap is detected and canOverlap is false', async () => {
|
94
|
+
const overlappingLabels = [
|
95
|
+
baseProps.labels[0],
|
96
|
+
{
|
97
|
+
placement: 'left',
|
98
|
+
value: [
|
99
|
+
{
|
100
|
+
id: 1,
|
101
|
+
name: 'Group 1',
|
102
|
+
selectedTariffs: [
|
103
|
+
{
|
104
|
+
id: 1,
|
105
|
+
name: 'Tariff A',
|
106
|
+
min: 0,
|
107
|
+
max: 12,
|
108
|
+
color: '#4CAF50',
|
109
|
+
parentId: 1,
|
110
|
+
},
|
111
|
+
{
|
112
|
+
id: 2,
|
113
|
+
name: 'Tariff B',
|
114
|
+
min: 10,
|
115
|
+
max: 20,
|
116
|
+
color: '#2196F3',
|
117
|
+
parentId: 1,
|
118
|
+
},
|
119
|
+
],
|
120
|
+
},
|
121
|
+
],
|
122
|
+
},
|
123
|
+
]
|
124
|
+
|
125
|
+
// First mount with non-overlapping labels
|
126
|
+
const wrapper = mount(RangeSlider, {
|
127
|
+
props: {
|
128
|
+
...baseProps,
|
129
|
+
canOverlap: false,
|
130
|
+
labels: baseProps.labels, // Start with non-overlapping labels
|
131
|
+
},
|
132
|
+
global: {
|
133
|
+
mocks: {
|
134
|
+
$gettext: (msg) => msg,
|
135
|
+
},
|
136
|
+
},
|
137
|
+
})
|
138
|
+
|
139
|
+
// Wait for initial mount
|
140
|
+
await wrapper.vm.$nextTick()
|
141
|
+
|
142
|
+
// Now update with overlapping labels
|
143
|
+
await wrapper.setProps({ labels: overlappingLabels })
|
144
|
+
|
145
|
+
// Wait for all updates to complete
|
146
|
+
await wrapper.vm.$nextTick()
|
147
|
+
await new Promise((resolve) => setTimeout(resolve, 0))
|
148
|
+
|
149
|
+
// Verify the overlap state
|
150
|
+
expect(wrapper.vm.hasOverlap).toBe(true)
|
151
|
+
expect(wrapper.vm.OverlapId).toContain(1)
|
152
|
+
|
153
|
+
// Check for error message
|
154
|
+
expect(wrapper.text()).toContain('overlap_error_message')
|
155
|
+
})
|
156
|
+
|
157
|
+
it('does not allow interaction when disabled', async () => {
|
158
|
+
const wrapper = mount(RangeSlider, {
|
159
|
+
props: { ...baseProps, disabled: true },
|
160
|
+
})
|
161
|
+
// Try to click on a bar
|
162
|
+
await wrapper.find('[data-id^="slider_bar_"]').trigger('click')
|
163
|
+
// Should not emit any events
|
164
|
+
expect(wrapper.emitted()['on-bar-tariff-click']).toBeFalsy()
|
165
|
+
})
|
166
|
+
|
167
|
+
it('emits on-bar-tariff-click when a bar is clicked', async () => {
|
168
|
+
const wrapper = mount(RangeSlider, { props: baseProps })
|
169
|
+
await wrapper.find('[data-id^="slider_bar_item_"]').trigger('click')
|
170
|
+
expect(wrapper.emitted()['on-bar-tariff-click']).toBeTruthy()
|
171
|
+
})
|
172
|
+
|
173
|
+
it('renders nothing if labels are empty', () => {
|
174
|
+
const wrapper = mount(RangeSlider, { props: { ...baseProps, labels: [] } })
|
175
|
+
expect(wrapper.html()).toContain('<div') // Should still render container
|
176
|
+
expect(wrapper.text()).not.toContain('00:00')
|
177
|
+
})
|
178
|
+
})
|
@@ -0,0 +1,159 @@
|
|
1
|
+
import RangeSlider from './index.vue'
|
2
|
+
|
3
|
+
export default {
|
4
|
+
title: 'Components/RangeSlider',
|
5
|
+
component: RangeSlider,
|
6
|
+
argTypes: {
|
7
|
+
dataLocation: { control: 'text' },
|
8
|
+
tariffItems: { control: 'array' },
|
9
|
+
labels: { control: 'array' },
|
10
|
+
rangeMargin: { control: 'number' },
|
11
|
+
step: { control: 'number' },
|
12
|
+
minWidth: { control: 'number' },
|
13
|
+
canOverlap: { control: 'boolean' },
|
14
|
+
disabled: { control: 'boolean' },
|
15
|
+
onChange: { action: 'changed' },
|
16
|
+
onBarTariffClick: { action: 'barTariffClicked' },
|
17
|
+
activate: { action: 'activated' },
|
18
|
+
deactivate: { action: 'deactivated' },
|
19
|
+
hasOverlap: { action: 'overlapDetected' },
|
20
|
+
},
|
21
|
+
}
|
22
|
+
|
23
|
+
const Template = (args) => ({
|
24
|
+
components: { RangeSlider },
|
25
|
+
setup() {
|
26
|
+
return { args }
|
27
|
+
},
|
28
|
+
template: '<RangeSlider v-bind="args" />',
|
29
|
+
})
|
30
|
+
|
31
|
+
export const Default = Template.bind({})
|
32
|
+
Default.args = {
|
33
|
+
dataLocation: 'default',
|
34
|
+
tariffItems: [
|
35
|
+
{ id: 1, name: 'Tariff A', color: '#4CAF50' },
|
36
|
+
{ id: 2, name: 'Tariff B', color: '#2196F3' },
|
37
|
+
{ id: 3, name: 'Tariff C', color: '#FFC107' },
|
38
|
+
],
|
39
|
+
labels: [
|
40
|
+
{
|
41
|
+
placement: 'top',
|
42
|
+
value: ['00:00', '04:00', '08:00', '12:00', '16:00', '20:00', '24:00'],
|
43
|
+
},
|
44
|
+
{
|
45
|
+
placement: 'left',
|
46
|
+
value: [
|
47
|
+
{
|
48
|
+
id: 1,
|
49
|
+
name: 'Group 1',
|
50
|
+
selectedTariffs: [
|
51
|
+
{
|
52
|
+
id: 1,
|
53
|
+
name: 'Tariff A',
|
54
|
+
min: 0,
|
55
|
+
max: 8,
|
56
|
+
color: '#4CAF50',
|
57
|
+
parentId: 1,
|
58
|
+
},
|
59
|
+
],
|
60
|
+
},
|
61
|
+
{
|
62
|
+
id: 2,
|
63
|
+
name: 'Group 2',
|
64
|
+
selectedTariffs: [
|
65
|
+
{
|
66
|
+
id: 2,
|
67
|
+
name: 'Tariff B',
|
68
|
+
min: 8,
|
69
|
+
max: 16,
|
70
|
+
color: '#2196F3',
|
71
|
+
parentId: 2,
|
72
|
+
},
|
73
|
+
],
|
74
|
+
},
|
75
|
+
],
|
76
|
+
},
|
77
|
+
],
|
78
|
+
rangeMargin: 1,
|
79
|
+
step: 1,
|
80
|
+
minWidth: 1,
|
81
|
+
canOverlap: true,
|
82
|
+
disabled: false,
|
83
|
+
}
|
84
|
+
|
85
|
+
export const WithOverlap = Template.bind({})
|
86
|
+
WithOverlap.args = {
|
87
|
+
...Default.args,
|
88
|
+
labels: [
|
89
|
+
{
|
90
|
+
placement: 'top',
|
91
|
+
value: ['00:00', '04:00', '08:00', '12:00', '16:00', '20:00', '24:00'],
|
92
|
+
},
|
93
|
+
{
|
94
|
+
placement: 'left',
|
95
|
+
value: [
|
96
|
+
{
|
97
|
+
id: 1,
|
98
|
+
name: 'Group 1',
|
99
|
+
selectedTariffs: [
|
100
|
+
{
|
101
|
+
id: 1,
|
102
|
+
name: 'Tariff A',
|
103
|
+
min: 0,
|
104
|
+
max: 8,
|
105
|
+
color: '#4CAF50',
|
106
|
+
parentId: 1,
|
107
|
+
},
|
108
|
+
{
|
109
|
+
id: 2,
|
110
|
+
name: 'Tariff B',
|
111
|
+
min: 6,
|
112
|
+
max: 14,
|
113
|
+
color: '#2196F3',
|
114
|
+
parentId: 1,
|
115
|
+
},
|
116
|
+
],
|
117
|
+
},
|
118
|
+
],
|
119
|
+
},
|
120
|
+
],
|
121
|
+
canOverlap: false,
|
122
|
+
}
|
123
|
+
|
124
|
+
export const Disabled = Template.bind({})
|
125
|
+
Disabled.args = {
|
126
|
+
...Default.args,
|
127
|
+
disabled: true,
|
128
|
+
}
|
129
|
+
|
130
|
+
export const CustomSteps = Template.bind({})
|
131
|
+
CustomSteps.args = {
|
132
|
+
...Default.args,
|
133
|
+
step: 2,
|
134
|
+
labels: [
|
135
|
+
{
|
136
|
+
placement: 'top',
|
137
|
+
value: ['00:00', '06:00', '12:00', '18:00', '24:00'],
|
138
|
+
},
|
139
|
+
{
|
140
|
+
placement: 'left',
|
141
|
+
value: [
|
142
|
+
{
|
143
|
+
id: 1,
|
144
|
+
name: 'Group 1',
|
145
|
+
selectedTariffs: [
|
146
|
+
{
|
147
|
+
id: 1,
|
148
|
+
name: 'Tariff A',
|
149
|
+
min: 0,
|
150
|
+
max: 12,
|
151
|
+
color: '#4CAF50',
|
152
|
+
parentId: 1,
|
153
|
+
},
|
154
|
+
],
|
155
|
+
},
|
156
|
+
],
|
157
|
+
},
|
158
|
+
],
|
159
|
+
}
|
@@ -322,42 +322,37 @@
|
|
322
322
|
},
|
323
323
|
computed: {
|
324
324
|
maximum() {
|
325
|
-
if (!this.labels
|
326
|
-
|
327
|
-
return
|
325
|
+
if (!this.labels?.length) return 0
|
326
|
+
const labels = this.topLabels
|
327
|
+
return labels?.length ? labels[labels.length - 1] : 0
|
328
328
|
},
|
329
329
|
minimum() {
|
330
|
-
if (!this.labels
|
331
|
-
|
332
|
-
return
|
330
|
+
if (!this.labels?.length) return 0
|
331
|
+
const labels = this.topLabels
|
332
|
+
return labels?.length ? labels[0] : 0
|
333
333
|
},
|
334
334
|
topLabels() {
|
335
|
-
if (!this.labels
|
335
|
+
if (!this.labels?.length) return []
|
336
336
|
const labels = this.labels.find((label) => label.placement === 'top')
|
337
|
-
|
338
|
-
return labels ? labels.value : []
|
337
|
+
return labels?.value || []
|
339
338
|
},
|
340
339
|
leftLabels() {
|
341
|
-
if (!this.labels
|
340
|
+
if (!this.labels?.length) return []
|
342
341
|
const labels = this.labels.find((label) => label.placement === 'left')
|
343
|
-
return labels
|
342
|
+
return labels?.value || []
|
344
343
|
},
|
345
344
|
stepCount() {
|
346
|
-
|
347
|
-
|
345
|
+
const labels = this.topLabels || []
|
348
346
|
if (labels.length) {
|
349
347
|
return labels.length - 1
|
350
348
|
}
|
351
|
-
|
352
|
-
return Math.floor((this.maximum - this.minimum) / this.step)
|
349
|
+
return Math.floor((this.maximum - this.minimum) / this.step) || 0
|
353
350
|
},
|
354
351
|
subStepCount() {
|
355
|
-
|
356
|
-
|
352
|
+
const labels = this.topLabels || []
|
357
353
|
if (labels.length && this.step) {
|
358
|
-
return (this.maximum - this.minimum) / this.step
|
354
|
+
return Math.floor((this.maximum - this.minimum) / this.step) || 0
|
359
355
|
}
|
360
|
-
|
361
356
|
return 0
|
362
357
|
},
|
363
358
|
},
|
@@ -395,7 +390,7 @@
|
|
395
390
|
}
|
396
391
|
},
|
397
392
|
},
|
398
|
-
|
393
|
+
beforeUnmount() {
|
399
394
|
// Remove the global click event listener to prevent memory leaks
|
400
395
|
document.removeEventListener('click', this.handleOutsideClick)
|
401
396
|
document.removeEventListener('keydown', this.onKeyDownDelete)
|