@7pmlabs/design-system 0.1.8 → 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +8 -2
- package/dist/design-system.js +1 -1
- package/dist/design-system.mjs +81 -78
- package/dist/design-system.mjs.map +1 -1
- package/dist/design-system10.js +1 -1
- package/dist/design-system10.js.map +1 -1
- package/dist/design-system10.mjs +284 -74
- package/dist/design-system10.mjs.map +1 -1
- package/dist/design-system104.js +1 -1
- package/dist/design-system104.mjs +1 -1
- package/dist/design-system106.js +1 -1
- package/dist/design-system106.mjs +3 -3
- package/dist/design-system109.js +1 -1
- package/dist/design-system109.mjs +1 -1
- package/dist/design-system11.js +1 -1
- package/dist/design-system11.js.map +1 -1
- package/dist/design-system11.mjs +98 -134
- package/dist/design-system11.mjs.map +1 -1
- package/dist/design-system111.js +1 -1
- package/dist/design-system111.js.map +1 -1
- package/dist/design-system111.mjs +1 -1
- package/dist/design-system111.mjs.map +1 -1
- package/dist/design-system113.js +1 -1
- package/dist/design-system113.mjs +1 -1
- package/dist/design-system117.js +1 -1
- package/dist/design-system117.mjs +2 -2
- package/dist/design-system118.js +1 -1
- package/dist/design-system118.mjs +2 -2
- package/dist/design-system12.js +1 -1
- package/dist/design-system12.js.map +1 -1
- package/dist/design-system12.mjs +13 -123
- package/dist/design-system12.mjs.map +1 -1
- package/dist/design-system120.js +1 -1
- package/dist/design-system120.mjs +2 -2
- package/dist/design-system122.js +1 -1
- package/dist/design-system122.js.map +1 -1
- package/dist/design-system122.mjs +5 -11
- package/dist/design-system122.mjs.map +1 -1
- package/dist/design-system123.js +1 -1
- package/dist/design-system123.js.map +1 -1
- package/dist/design-system123.mjs +3 -7
- package/dist/design-system123.mjs.map +1 -1
- package/dist/design-system124.js +1 -1
- package/dist/design-system124.js.map +1 -1
- package/dist/design-system124.mjs +2 -10
- package/dist/design-system124.mjs.map +1 -1
- package/dist/design-system125.js +1 -1
- package/dist/design-system125.js.map +1 -1
- package/dist/design-system125.mjs +1 -5
- package/dist/design-system125.mjs.map +1 -1
- package/dist/design-system126.js +1 -1
- package/dist/design-system126.js.map +1 -1
- package/dist/design-system126.mjs +7 -5
- package/dist/design-system126.mjs.map +1 -1
- package/dist/design-system127.js +1 -1
- package/dist/design-system127.js.map +1 -1
- package/dist/design-system127.mjs +9 -9
- package/dist/design-system127.mjs.map +1 -1
- package/dist/design-system128.js +1 -1
- package/dist/design-system128.js.map +1 -1
- package/dist/design-system128.mjs +12 -2
- package/dist/design-system128.mjs.map +1 -1
- package/dist/design-system129.js +1 -1
- package/dist/design-system129.js.map +1 -1
- package/dist/design-system129.mjs +5 -15
- package/dist/design-system129.mjs.map +1 -1
- package/dist/design-system13.js +1 -1
- package/dist/design-system13.js.map +1 -1
- package/dist/design-system13.mjs +54 -60
- package/dist/design-system13.mjs.map +1 -1
- package/dist/design-system130.js +1 -1
- package/dist/design-system130.js.map +1 -1
- package/dist/design-system130.mjs +5 -5
- package/dist/design-system130.mjs.map +1 -1
- package/dist/design-system131.js +1 -1
- package/dist/design-system131.js.map +1 -1
- package/dist/design-system131.mjs +9 -5
- package/dist/design-system131.mjs.map +1 -1
- package/dist/design-system132.js +1 -1
- package/dist/design-system132.js.map +1 -1
- package/dist/design-system132.mjs +15 -8
- package/dist/design-system132.mjs.map +1 -1
- package/dist/design-system133.js +1 -1
- package/dist/design-system133.js.map +1 -1
- package/dist/design-system133.mjs +5 -6
- package/dist/design-system133.mjs.map +1 -1
- package/dist/design-system134.js +1 -1
- package/dist/design-system134.js.map +1 -1
- package/dist/design-system134.mjs +5 -5
- package/dist/design-system134.mjs.map +1 -1
- package/dist/design-system135.js +1 -1
- package/dist/design-system135.js.map +1 -1
- package/dist/design-system135.mjs +8 -5
- package/dist/design-system135.mjs.map +1 -1
- package/dist/design-system136.js +1 -1
- package/dist/design-system136.js.map +1 -1
- package/dist/design-system136.mjs +6 -6
- package/dist/design-system136.mjs.map +1 -1
- package/dist/design-system137.js +1 -1
- package/dist/design-system137.js.map +1 -1
- package/dist/design-system137.mjs +5 -6
- package/dist/design-system137.mjs.map +1 -1
- package/dist/design-system138.js +1 -1
- package/dist/design-system138.js.map +1 -1
- package/dist/design-system138.mjs +6 -27
- package/dist/design-system138.mjs.map +1 -1
- package/dist/design-system139.js +1 -1
- package/dist/design-system139.js.map +1 -1
- package/dist/design-system139.mjs +6 -5
- package/dist/design-system139.mjs.map +1 -1
- package/dist/design-system14.js +1 -1
- package/dist/design-system14.js.map +1 -1
- package/dist/design-system14.mjs +182 -128
- package/dist/design-system14.mjs.map +1 -1
- package/dist/design-system140.js +1 -1
- package/dist/design-system140.js.map +1 -1
- package/dist/design-system140.mjs +6 -39
- package/dist/design-system140.mjs.map +1 -1
- package/dist/design-system141.js +1 -1
- package/dist/design-system141.js.map +1 -1
- package/dist/design-system141.mjs +27 -7
- package/dist/design-system141.mjs.map +1 -1
- package/dist/design-system142.js +1 -1
- package/dist/design-system142.js.map +1 -1
- package/dist/design-system142.mjs +5 -5
- package/dist/design-system142.mjs.map +1 -1
- package/dist/design-system143.js +1 -1
- package/dist/design-system143.js.map +1 -1
- package/dist/design-system143.mjs +39 -15
- package/dist/design-system143.mjs.map +1 -1
- package/dist/design-system144.js +1 -1
- package/dist/design-system144.js.map +1 -1
- package/dist/design-system144.mjs +6 -7
- package/dist/design-system144.mjs.map +1 -1
- package/dist/design-system145.js +1 -1
- package/dist/design-system145.js.map +1 -1
- package/dist/design-system145.mjs +6 -3
- package/dist/design-system145.mjs.map +1 -1
- package/dist/design-system146.js +1 -1
- package/dist/design-system146.js.map +1 -1
- package/dist/design-system146.mjs +16 -4
- package/dist/design-system146.mjs.map +1 -1
- package/dist/design-system147.js +1 -1
- package/dist/design-system147.js.map +1 -1
- package/dist/design-system147.mjs +6 -11
- package/dist/design-system147.mjs.map +1 -1
- package/dist/design-system148.js +1 -1
- package/dist/design-system148.js.map +1 -1
- package/dist/design-system148.mjs +2 -4
- package/dist/design-system148.mjs.map +1 -1
- package/dist/design-system149.js +1 -1
- package/dist/design-system149.js.map +1 -1
- package/dist/design-system149.mjs +4 -4
- package/dist/design-system149.mjs.map +1 -1
- package/dist/design-system15.js +1 -1
- package/dist/design-system15.js.map +1 -1
- package/dist/design-system15.mjs +109 -230
- package/dist/design-system15.mjs.map +1 -1
- package/dist/design-system150.js +1 -1
- package/dist/design-system150.js.map +1 -1
- package/dist/design-system150.mjs +13 -5
- package/dist/design-system150.mjs.map +1 -1
- package/dist/design-system151.js +1 -1
- package/dist/design-system151.js.map +1 -1
- package/dist/design-system151.mjs +4 -4
- package/dist/design-system151.mjs.map +1 -1
- package/dist/design-system152.js +1 -1
- package/dist/design-system152.js.map +1 -1
- package/dist/design-system152.mjs +4 -5
- package/dist/design-system152.mjs.map +1 -1
- package/dist/design-system153.js +1 -1
- package/dist/design-system153.js.map +1 -1
- package/dist/design-system153.mjs +5 -5
- package/dist/design-system153.mjs.map +1 -1
- package/dist/design-system154.js +1 -1
- package/dist/design-system154.js.map +1 -1
- package/dist/design-system154.mjs +5 -5
- package/dist/design-system154.mjs.map +1 -1
- package/dist/design-system155.js +1 -1
- package/dist/design-system155.js.map +1 -1
- package/dist/design-system155.mjs +5 -15
- package/dist/design-system155.mjs.map +1 -1
- package/dist/design-system156.js +1 -1
- package/dist/design-system156.js.map +1 -1
- package/dist/design-system156.mjs +5 -14
- package/dist/design-system156.mjs.map +1 -1
- package/dist/design-system157.js +1 -1
- package/dist/design-system157.js.map +1 -1
- package/dist/design-system157.mjs +5 -9
- package/dist/design-system157.mjs.map +1 -1
- package/dist/design-system158.js +1 -1
- package/dist/design-system158.js.map +1 -1
- package/dist/design-system158.mjs +15 -4
- package/dist/design-system158.mjs.map +1 -1
- package/dist/design-system159.js +1 -1
- package/dist/design-system159.js.map +1 -1
- package/dist/design-system159.mjs +13 -5
- package/dist/design-system159.mjs.map +1 -1
- package/dist/design-system16.js +3 -1
- package/dist/design-system16.js.map +1 -1
- package/dist/design-system16.mjs +103 -55
- package/dist/design-system16.mjs.map +1 -1
- package/dist/design-system160.js +1 -1
- package/dist/design-system160.js.map +1 -1
- package/dist/design-system160.mjs +8 -5
- package/dist/design-system160.mjs.map +1 -1
- package/dist/design-system161.js +1 -1
- package/dist/design-system161.js.map +1 -1
- package/dist/design-system161.mjs +4 -6
- package/dist/design-system161.mjs.map +1 -1
- package/dist/design-system162.js +1 -1
- package/dist/design-system162.js.map +1 -1
- package/dist/design-system162.mjs +5 -7
- package/dist/design-system162.mjs.map +1 -1
- package/dist/design-system163.js +1 -1
- package/dist/design-system163.js.map +1 -1
- package/dist/design-system163.mjs +5 -17
- package/dist/design-system163.mjs.map +1 -1
- package/dist/design-system164.js +1 -1
- package/dist/design-system164.js.map +1 -1
- package/dist/design-system164.mjs +5 -10
- package/dist/design-system164.mjs.map +1 -1
- package/dist/design-system165.js +1 -1
- package/dist/design-system165.js.map +1 -1
- package/dist/design-system165.mjs +7 -5
- package/dist/design-system165.mjs.map +1 -1
- package/dist/design-system166.js +1 -1
- package/dist/design-system166.js.map +1 -1
- package/dist/design-system166.mjs +17 -4
- package/dist/design-system166.mjs.map +1 -1
- package/dist/design-system167.js +1 -1
- package/dist/design-system167.js.map +1 -1
- package/dist/design-system167.mjs +10 -4
- package/dist/design-system167.mjs.map +1 -1
- package/dist/design-system168.js +1 -1
- package/dist/design-system168.js.map +1 -1
- package/dist/design-system168.mjs +5 -5
- package/dist/design-system168.mjs.map +1 -1
- package/dist/design-system169.js +1 -1
- package/dist/design-system169.js.map +1 -1
- package/dist/design-system169.mjs +4 -6
- package/dist/design-system169.mjs.map +1 -1
- package/dist/design-system17.js +1 -1
- package/dist/design-system17.js.map +1 -1
- package/dist/design-system17.mjs +58 -86
- package/dist/design-system17.mjs.map +1 -1
- package/dist/design-system170.js +1 -1
- package/dist/design-system170.js.map +1 -1
- package/dist/design-system170.mjs +5 -11
- package/dist/design-system170.mjs.map +1 -1
- package/dist/design-system171.js +1 -1
- package/dist/design-system171.js.map +1 -1
- package/dist/design-system171.mjs +5 -6
- package/dist/design-system171.mjs.map +1 -1
- package/dist/design-system172.js +1 -1
- package/dist/design-system172.js.map +1 -1
- package/dist/design-system172.mjs +7 -2
- package/dist/design-system172.mjs.map +1 -1
- package/dist/design-system173.js +1 -1
- package/dist/design-system173.js.map +1 -1
- package/dist/design-system173.mjs +11 -18
- package/dist/design-system173.mjs.map +1 -1
- package/dist/design-system174.js +1 -1
- package/dist/design-system174.js.map +1 -1
- package/dist/design-system174.mjs +2 -5
- package/dist/design-system174.mjs.map +1 -1
- package/dist/design-system175.js +1 -1
- package/dist/design-system175.js.map +1 -1
- package/dist/design-system175.mjs +6 -4
- package/dist/design-system175.mjs.map +1 -1
- package/dist/design-system176.js +1 -1
- package/dist/design-system176.js.map +1 -1
- package/dist/design-system176.mjs +17 -3
- package/dist/design-system176.mjs.map +1 -1
- package/dist/design-system177.js +1 -1
- package/dist/design-system177.js.map +1 -1
- package/dist/design-system177.mjs +4 -3
- package/dist/design-system177.mjs.map +1 -1
- package/dist/design-system178.js +1 -1
- package/dist/design-system178.js.map +1 -1
- package/dist/design-system178.mjs +4 -14
- package/dist/design-system178.mjs.map +1 -1
- package/dist/design-system179.js +1 -1
- package/dist/design-system179.js.map +1 -1
- package/dist/design-system179.mjs +4 -9
- package/dist/design-system179.mjs.map +1 -1
- package/dist/design-system18.js +1 -1
- package/dist/design-system18.js.map +1 -1
- package/dist/design-system18.mjs +191 -14
- package/dist/design-system18.mjs.map +1 -1
- package/dist/design-system180.js +1 -1
- package/dist/design-system180.js.map +1 -1
- package/dist/design-system180.mjs +3 -5
- package/dist/design-system180.mjs.map +1 -1
- package/dist/design-system181.js +1 -1
- package/dist/design-system181.js.map +1 -1
- package/dist/design-system181.mjs +14 -5
- package/dist/design-system181.mjs.map +1 -1
- package/dist/design-system182.js +1 -1
- package/dist/design-system182.js.map +1 -1
- package/dist/design-system182.mjs +9 -6
- package/dist/design-system182.mjs.map +1 -1
- package/dist/design-system183.js +1 -1
- package/dist/design-system183.js.map +1 -1
- package/dist/design-system183.mjs +5 -5
- package/dist/design-system183.mjs.map +1 -1
- package/dist/design-system184.js +1 -1
- package/dist/design-system184.js.map +1 -1
- package/dist/design-system184.mjs +5 -5
- package/dist/design-system184.mjs.map +1 -1
- package/dist/design-system185.js +1 -1
- package/dist/design-system185.js.map +1 -1
- package/dist/design-system185.mjs +6 -4
- package/dist/design-system185.mjs.map +1 -1
- package/dist/design-system186.js +1 -1
- package/dist/design-system186.js.map +1 -1
- package/dist/design-system186.mjs +5 -17
- package/dist/design-system186.mjs.map +1 -1
- package/dist/design-system187.js +1 -1
- package/dist/design-system187.js.map +1 -1
- package/dist/design-system187.mjs +5 -5
- package/dist/design-system187.mjs.map +1 -1
- package/dist/design-system188.js +1 -1
- package/dist/design-system188.js.map +1 -1
- package/dist/design-system188.mjs +4 -4
- package/dist/design-system188.mjs.map +1 -1
- package/dist/design-system189.js +1 -1
- package/dist/design-system189.js.map +1 -1
- package/dist/design-system189.mjs +16 -2
- package/dist/design-system189.mjs.map +1 -1
- package/dist/design-system19.js +1 -3
- package/dist/design-system19.js.map +1 -1
- package/dist/design-system19.mjs +69 -103
- package/dist/design-system19.mjs.map +1 -1
- package/dist/design-system190.js +1 -1
- package/dist/design-system190.js.map +1 -1
- package/dist/design-system190.mjs +4 -8
- package/dist/design-system190.mjs.map +1 -1
- package/dist/design-system191.js +1 -1
- package/dist/design-system191.js.map +1 -1
- package/dist/design-system191.mjs +3 -5
- package/dist/design-system191.mjs.map +1 -1
- package/dist/design-system192.js +1 -1
- package/dist/design-system192.js.map +1 -1
- package/dist/design-system192.mjs +3 -4
- package/dist/design-system192.mjs.map +1 -1
- package/dist/design-system193.js +1 -1
- package/dist/design-system193.js.map +1 -1
- package/dist/design-system193.mjs +9 -5
- package/dist/design-system193.mjs.map +1 -1
- package/dist/design-system194.js +1 -1
- package/dist/design-system194.js.map +1 -1
- package/dist/design-system194.mjs +6 -4
- package/dist/design-system194.mjs.map +1 -1
- package/dist/design-system195.js +1 -1
- package/dist/design-system195.js.map +1 -1
- package/dist/design-system195.mjs +3 -3
- package/dist/design-system195.mjs.map +1 -1
- package/dist/design-system196.js +1 -1
- package/dist/design-system196.js.map +1 -1
- package/dist/design-system196.mjs +5 -4
- package/dist/design-system196.mjs.map +1 -1
- package/dist/design-system197.js +1 -1
- package/dist/design-system197.js.map +1 -1
- package/dist/design-system197.mjs +4 -11
- package/dist/design-system197.mjs.map +1 -1
- package/dist/design-system198.js +1 -1
- package/dist/design-system198.js.map +1 -1
- package/dist/design-system198.mjs +4 -6
- package/dist/design-system198.mjs.map +1 -1
- package/dist/design-system199.js +1 -1
- package/dist/design-system199.js.map +1 -1
- package/dist/design-system199.mjs +3 -5
- package/dist/design-system199.mjs.map +1 -1
- package/dist/design-system2.js +1 -1
- package/dist/design-system2.js.map +1 -1
- package/dist/design-system2.mjs +101 -44
- package/dist/design-system2.mjs.map +1 -1
- package/dist/design-system20.js +1 -1
- package/dist/design-system20.js.map +1 -1
- package/dist/design-system20.mjs +36 -277
- package/dist/design-system20.mjs.map +1 -1
- package/dist/design-system200.js +1 -1
- package/dist/design-system200.js.map +1 -1
- package/dist/design-system200.mjs +10 -4
- package/dist/design-system200.mjs.map +1 -1
- package/dist/design-system201.js +1 -1
- package/dist/design-system201.js.map +1 -1
- package/dist/design-system201.mjs +6 -7
- package/dist/design-system201.mjs.map +1 -1
- package/dist/design-system202.js +1 -1
- package/dist/design-system202.js.map +1 -1
- package/dist/design-system202.mjs +7 -4
- package/dist/design-system202.mjs.map +1 -1
- package/dist/design-system203.js +2 -0
- package/dist/design-system203.js.map +1 -0
- package/dist/design-system203.mjs +8 -0
- package/dist/design-system203.mjs.map +1 -0
- package/dist/design-system204.js +2 -0
- package/dist/design-system204.js.map +1 -0
- package/dist/design-system204.mjs +11 -0
- package/dist/design-system204.mjs.map +1 -0
- package/dist/design-system205.js +2 -0
- package/dist/design-system205.js.map +1 -0
- package/dist/design-system205.mjs +7 -0
- package/dist/design-system205.mjs.map +1 -0
- package/dist/design-system21.js +1 -1
- package/dist/design-system21.js.map +1 -1
- package/dist/design-system21.mjs +5 -78
- package/dist/design-system21.mjs.map +1 -1
- package/dist/design-system22.js +1 -1
- package/dist/design-system22.js.map +1 -1
- package/dist/design-system22.mjs +12 -57
- package/dist/design-system22.mjs.map +1 -1
- package/dist/design-system23.js +1 -1
- package/dist/design-system23.mjs +3 -3
- package/dist/design-system24.js +1 -1
- package/dist/design-system24.mjs +6 -5
- package/dist/design-system24.mjs.map +1 -1
- package/dist/design-system25.js +1 -1
- package/dist/design-system25.mjs +8 -10
- package/dist/design-system25.mjs.map +1 -1
- package/dist/design-system26.js +1 -1
- package/dist/design-system26.js.map +1 -1
- package/dist/design-system26.mjs +18 -9
- package/dist/design-system26.mjs.map +1 -1
- package/dist/design-system27.js +1 -1
- package/dist/design-system27.js.map +1 -1
- package/dist/design-system27.mjs +29 -10
- package/dist/design-system27.mjs.map +1 -1
- package/dist/design-system28.js +1 -1
- package/dist/design-system28.mjs +5 -10
- package/dist/design-system28.mjs.map +1 -1
- package/dist/design-system29.js +1 -1
- package/dist/design-system29.mjs +5 -5
- package/dist/design-system3.js +1 -1
- package/dist/design-system3.js.map +1 -1
- package/dist/design-system3.mjs +44 -101
- package/dist/design-system3.mjs.map +1 -1
- package/dist/design-system30.js +1 -1
- package/dist/design-system30.js.map +1 -1
- package/dist/design-system30.mjs +10 -29
- package/dist/design-system30.mjs.map +1 -1
- package/dist/design-system31.js +1 -1
- package/dist/design-system31.js.map +1 -1
- package/dist/design-system31.mjs +10 -19
- package/dist/design-system31.mjs.map +1 -1
- package/dist/design-system32.js +1 -1
- package/dist/design-system32.mjs +7 -7
- package/dist/design-system33.js +1 -1
- package/dist/design-system33.mjs +10 -6
- package/dist/design-system33.mjs.map +1 -1
- package/dist/design-system34.js +1 -1
- package/dist/design-system34.mjs +10 -4
- package/dist/design-system34.mjs.map +1 -1
- package/dist/design-system35.js +1 -1
- package/dist/design-system35.mjs +5 -11
- package/dist/design-system35.mjs.map +1 -1
- package/dist/design-system36.js +1 -1
- package/dist/design-system36.js.map +1 -1
- package/dist/design-system36.mjs +148 -10
- package/dist/design-system36.mjs.map +1 -1
- package/dist/design-system37.js +1 -1
- package/dist/design-system37.js.map +1 -1
- package/dist/design-system37.mjs +57 -5
- package/dist/design-system37.mjs.map +1 -1
- package/dist/design-system38.js +1 -1
- package/dist/design-system38.js.map +1 -1
- package/dist/design-system38.mjs +5 -9
- package/dist/design-system38.mjs.map +1 -1
- package/dist/design-system39.js +1 -5
- package/dist/design-system39.js.map +1 -1
- package/dist/design-system39.mjs +8 -820
- package/dist/design-system39.mjs.map +1 -1
- package/dist/design-system40.js +5 -1
- package/dist/design-system40.js.map +1 -1
- package/dist/design-system40.mjs +816 -79
- package/dist/design-system40.mjs.map +1 -1
- package/dist/design-system42.js +1 -1
- package/dist/design-system42.mjs +84 -2
- package/dist/design-system42.mjs.map +1 -1
- package/dist/design-system43.js +1 -1
- package/dist/design-system43.mjs +1 -1
- package/dist/design-system44.js +1 -1
- package/dist/design-system44.js.map +1 -1
- package/dist/design-system44.mjs +116 -2
- package/dist/design-system44.mjs.map +1 -1
- package/dist/design-system45.js +1 -1
- package/dist/design-system45.mjs +2 -2
- package/dist/design-system46.js +1 -4
- package/dist/design-system46.js.map +1 -1
- package/dist/design-system46.mjs +7 -74
- package/dist/design-system46.mjs.map +1 -1
- package/dist/design-system48.js +1 -1
- package/dist/design-system48.mjs +2 -7
- package/dist/design-system48.mjs.map +1 -1
- package/dist/design-system49.js +4 -1
- package/dist/design-system49.js.map +1 -1
- package/dist/design-system49.mjs +62 -92
- package/dist/design-system49.mjs.map +1 -1
- package/dist/design-system5.js +1 -1
- package/dist/design-system5.js.map +1 -1
- package/dist/design-system5.mjs +6 -5
- package/dist/design-system5.mjs.map +1 -1
- package/dist/design-system51.js +1 -1
- package/dist/design-system51.js.map +1 -1
- package/dist/design-system51.mjs +49 -2
- package/dist/design-system51.mjs.map +1 -1
- package/dist/design-system53.js +1 -1
- package/dist/design-system53.mjs +2 -2
- package/dist/design-system54.js +1 -1
- package/dist/design-system54.mjs +1 -1
- package/dist/design-system55.js +1 -1
- package/dist/design-system55.mjs +1 -1
- package/dist/design-system56.js +1 -1
- package/dist/design-system56.mjs +1 -1
- package/dist/design-system57.js +1 -1
- package/dist/design-system57.mjs +1 -1
- package/dist/design-system58.js +1 -1
- package/dist/design-system58.js.map +1 -1
- package/dist/design-system58.mjs +2 -28
- package/dist/design-system58.mjs.map +1 -1
- package/dist/design-system59.js +1 -1
- package/dist/design-system59.js.map +1 -1
- package/dist/design-system59.mjs +28 -2
- package/dist/design-system59.mjs.map +1 -1
- package/dist/design-system6.js.map +1 -1
- package/dist/design-system6.mjs.map +1 -1
- package/dist/design-system60.js +1 -1
- package/dist/design-system60.mjs +2 -2
- package/dist/design-system61.js +1 -1
- package/dist/design-system61.js.map +1 -1
- package/dist/design-system61.mjs +58 -2
- package/dist/design-system61.mjs.map +1 -1
- package/dist/design-system62.js +1 -1
- package/dist/design-system62.mjs +2 -2
- package/dist/design-system63.js +1 -1
- package/dist/design-system63.mjs +1 -1
- package/dist/design-system64.js +1 -1
- package/dist/design-system64.mjs +1 -1
- package/dist/design-system65.js +1 -1
- package/dist/design-system65.js.map +1 -1
- package/dist/design-system65.mjs +2 -48
- package/dist/design-system65.mjs.map +1 -1
- package/dist/design-system66.js +1 -1
- package/dist/design-system66.mjs +2 -2
- package/dist/design-system67.js +1 -1
- package/dist/design-system67.mjs +2 -2
- package/dist/design-system68.js +1 -1
- package/dist/design-system68.js.map +1 -1
- package/dist/design-system68.mjs +2 -73
- package/dist/design-system68.mjs.map +1 -1
- package/dist/design-system69.js +1 -1
- package/dist/design-system69.mjs +2 -2
- package/dist/design-system7.js +1 -1
- package/dist/design-system7.js.map +1 -1
- package/dist/design-system7.mjs +11 -2
- package/dist/design-system7.mjs.map +1 -1
- package/dist/design-system70.js +1 -1
- package/dist/design-system70.js.map +1 -1
- package/dist/design-system70.mjs +81 -2
- package/dist/design-system70.mjs.map +1 -1
- package/dist/design-system71.js +1 -1
- package/dist/design-system71.js.map +1 -1
- package/dist/design-system71.mjs +2 -58
- package/dist/design-system71.mjs.map +1 -1
- package/dist/design-system72.js +1 -1
- package/dist/design-system72.mjs +2 -2
- package/dist/design-system73.js +1 -1
- package/dist/design-system73.mjs +1 -1
- package/dist/design-system74.js +1 -1
- package/dist/design-system74.mjs +1 -1
- package/dist/design-system75.js +1 -6
- package/dist/design-system75.js.map +1 -1
- package/dist/design-system75.mjs +2 -107
- package/dist/design-system75.mjs.map +1 -1
- package/dist/design-system76.js +1 -6
- package/dist/design-system76.js.map +1 -1
- package/dist/design-system76.mjs +99 -948
- package/dist/design-system76.mjs.map +1 -1
- package/dist/design-system77.js +1 -7
- package/dist/design-system77.js.map +1 -1
- package/dist/design-system77.mjs +2 -861
- package/dist/design-system77.mjs.map +1 -1
- package/dist/design-system78.js +6 -4
- package/dist/design-system78.js.map +1 -1
- package/dist/design-system78.mjs +104 -1361
- package/dist/design-system78.mjs.map +1 -1
- package/dist/design-system79.js +6 -1
- package/dist/design-system79.js.map +1 -1
- package/dist/design-system79.mjs +911 -16
- package/dist/design-system79.mjs.map +1 -1
- package/dist/design-system8.js +1 -1
- package/dist/design-system8.js.map +1 -1
- package/dist/design-system8.mjs +2 -11
- package/dist/design-system8.mjs.map +1 -1
- package/dist/design-system80.js +7 -1
- package/dist/design-system80.js.map +1 -1
- package/dist/design-system80.mjs +858 -64
- package/dist/design-system80.mjs.map +1 -1
- package/dist/design-system81.js +4 -1
- package/dist/design-system81.js.map +1 -1
- package/dist/design-system81.mjs +1360 -71
- package/dist/design-system81.mjs.map +1 -1
- package/dist/design-system82.js +5 -1
- package/dist/design-system82.js.map +1 -1
- package/dist/design-system82.mjs +10 -6
- package/dist/design-system82.mjs.map +1 -1
- package/dist/design-system83.js +1 -5
- package/dist/design-system83.js.map +1 -1
- package/dist/design-system83.mjs +17 -10
- package/dist/design-system83.mjs.map +1 -1
- package/dist/design-system84.js +1 -1
- package/dist/design-system84.js.map +1 -1
- package/dist/design-system84.mjs +60 -2445
- package/dist/design-system84.mjs.map +1 -1
- package/dist/design-system85.js +1 -1
- package/dist/design-system85.js.map +1 -1
- package/dist/design-system85.mjs +75 -1103
- package/dist/design-system85.mjs.map +1 -1
- package/dist/design-system86.js +1 -1
- package/dist/design-system86.js.map +1 -1
- package/dist/design-system86.mjs +5 -5
- package/dist/design-system86.mjs.map +1 -1
- package/dist/design-system87.js +1 -1
- package/dist/design-system87.js.map +1 -1
- package/dist/design-system87.mjs +2452 -4
- package/dist/design-system87.mjs.map +1 -1
- package/dist/design-system88.js +1 -1
- package/dist/design-system88.js.map +1 -1
- package/dist/design-system88.mjs +1103 -2
- package/dist/design-system88.mjs.map +1 -1
- package/dist/design-system9.js +1 -1
- package/dist/design-system9.js.map +1 -1
- package/dist/design-system9.mjs +79 -40
- package/dist/design-system9.mjs.map +1 -1
- package/dist/design-system92.js +1 -1
- package/dist/design-system92.mjs +1 -1
- package/dist/design-system93.js +1 -1
- package/dist/design-system93.mjs +1 -1
- package/dist/design-system94.js +1 -1
- package/dist/design-system94.js.map +1 -1
- package/dist/design-system94.mjs +15 -15
- package/dist/design-system94.mjs.map +1 -1
- package/dist/style.css +1 -1
- package/dist/types/components/BButton.vue.d.ts +43 -30
- package/dist/types/components/BCarousel/BCarousel.vue.d.ts +51 -43
- package/dist/types/components/BCheckbox.vue.d.ts +59 -34
- package/dist/types/components/BCollapse.vue.d.ts +11 -10
- package/dist/types/components/BDatePicker.vue.d.ts +125 -77
- package/dist/types/components/BDropdown/BDropdown.vue.d.ts +82 -52
- package/dist/types/components/BDropdown/BDropdownItem.vue.d.ts +11 -22
- package/dist/types/components/BErrorMessage.vue.d.ts +12 -30
- package/dist/types/components/BLabel.vue.d.ts +27 -31
- package/dist/types/components/BLoadingBar.vue.d.ts +35 -35
- package/dist/types/components/BLoadingOverlay.vue.d.ts +27 -32
- package/dist/types/components/BModal/BModal.vue.d.ts +35 -35
- package/dist/types/components/BModal/BModalContainer.vue.d.ts +27 -26
- package/dist/types/components/BMultiSelect.vue.d.ts +116 -64
- package/dist/types/components/BOtpField/BOtpField.vue.d.ts +84 -56
- package/dist/types/components/BOtpField/BOtpFieldBox.vue.d.ts +28 -27
- package/dist/types/components/BPagination.vue.d.ts +43 -36
- package/dist/types/components/BRadio.vue.d.ts +83 -55
- package/dist/types/components/BSelect.vue.d.ts +108 -61
- package/dist/types/components/BTabs/BTabs.vue.d.ts +27 -30
- package/dist/types/components/BTextField.vue.d.ts +156 -81
- package/dist/types/components/BTextarea.vue.d.ts +108 -63
- package/dist/types/components/BToast/BToast.vue.d.ts +11 -18
- package/dist/types/components/BToast/BToastItem.vue.d.ts +35 -28
- package/dist/types/components/BTooltip.vue.d.ts +28 -35
- package/dist/types/components/index.d.ts +21 -20
- package/dist/types/constants/Enums.d.ts +9 -3
- package/dist/types/index.d.ts +3 -3
- package/dist/types/types/components/BCarousel.d.ts +8 -0
- package/dist/types/types/components/BDatePicker.d.ts +19 -0
- package/dist/types/types/components/BDropdown.d.ts +11 -0
- package/dist/types/types/components/BErrorMessage.d.ts +4 -0
- package/dist/types/types/components/BLabel.d.ts +5 -0
- package/dist/types/types/components/BLoadingBar.d.ts +6 -0
- package/dist/types/types/components/BLoadingOverlay.d.ts +6 -0
- package/dist/types/types/components/BModal.d.ts +7 -0
- package/dist/types/types/components/BMultiSelect.d.ts +18 -0
- package/dist/types/types/components/BOtpField.d.ts +13 -0
- package/dist/types/types/components/BPagination.d.ts +8 -0
- package/dist/types/types/components/BRadio.d.ts +13 -0
- package/dist/types/types/components/BSelect.d.ts +17 -0
- package/dist/types/types/components/BTabs.d.ts +5 -0
- package/dist/types/types/components/BTextField.d.ts +22 -0
- package/dist/types/types/components/BTextarea.d.ts +16 -0
- package/dist/types/types/components/BTooltip.d.ts +6 -0
- package/dist/types/types/index.d.ts +17 -0
- package/package.json +22 -5
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"design-system15.js","sources":["../src/components/BMultiSelect.vue?vue&type=script&setup=true&lang.ts"],"sourcesContent":["import { defineComponent as _defineComponent } from 'vue'\nimport { createVNode as _createVNode, unref as _unref, normalizeClass as _normalizeClass, createElementVNode as _createElementVNode, renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, toDisplayString as _toDisplayString, createBlock as _createBlock, createCommentVNode as _createCommentVNode, createTextVNode as _createTextVNode, withModifiers as _withModifiers, vShow as _vShow, withDirectives as _withDirectives } from \"vue\"\n\nconst _hoisted_1 = { class: \"ds-absolute ds-right-3 ds-z-[1]\" }\nconst _hoisted_2 = [\"onClick\"]\nconst _hoisted_3 = [\"id\", \"disabled\"]\nconst _hoisted_4 = [\"id\", \"data-ut\", \"data-cy\"]\nconst _hoisted_5 = { class: \"ds-max-h-72 ds-overflow-y-auto ds-rounded-lg ds-bg-white ds-shadow\" }\nconst _hoisted_6 = { class: \"ds-py-1 ds-text-sm ds-text-black/[0.85]\" }\nconst _hoisted_7 = [\"onClick\"]\n\nimport {\n useValidationField,\n type ValidationRule,\n} from '@/composables/Validation';\nimport {\n ensureVisiblePosition,\n lockScrollBody,\n resetPosition,\n unlockScrollBody,\n} from '@/helpers/ComponentHelper';\nimport type { DisplayItem } from '@/types';\nimport { v4 as uuid } from 'uuid';\nimport {\n computed,\n nextTick,\n onBeforeUnmount,\n onMounted,\n ref,\n watch,\n} from 'vue';\nimport { useI18n } from 'vue-i18n';\nimport BLabel from './BLabel.vue';\nimport BErrorMessage from './BErrorMessage.vue';\nimport BCheckbox from './BCheckbox.vue';\nimport BTextField from './BTextField.vue';\n\n/**\n * Props\n */\nexport interface Props {\n inputId?: string;\n modelValue: Array<string | number>;\n label?: string;\n items: DisplayItem[];\n disabled?: boolean;\n placeholder?: string;\n valueCssClass?: string;\n menuCssClass?: string;\n validationRules?: ValidationRule[];\n required?: boolean;\n requiredErrorMessage?: string;\n hideDetails?: boolean;\n showSelectedItemCount?: boolean;\n allowInput?: boolean;\n}\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'BMultiSelect',\n props: {\n inputId: { default: '' },\n modelValue: {},\n label: { default: '' },\n items: {},\n disabled: { type: Boolean, default: false },\n placeholder: { default: '' },\n valueCssClass: { default: '' },\n menuCssClass: { default: '' },\n validationRules: { default: undefined },\n required: { type: Boolean, default: false },\n requiredErrorMessage: { default: '' },\n hideDetails: { type: Boolean, default: false },\n showSelectedItemCount: { type: Boolean, default: false },\n allowInput: { type: Boolean, default: false }\n },\n emits: [\n 'update:modelValue',\n 'change',\n 'open',\n 'close',\n 'change:input',\n],\n setup(__props: any, { expose: __expose, emit }) {\n\nconst props = __props;\n\n// https://vuejs.org/guide/essentials/event-handling.html#event-modifiers\n\n\n/**\n * Events\n */\n\n\n\n/**\n * Data\n */\nconst selectEl = ref<HTMLElement | null>(null);\nconst inputRef = ref<InstanceType<typeof BTextField> | null>(null);\nconst selectMenuEl = ref<HTMLElement | null>(null);\nconst selectMenu = ref(false);\nconst { t } = useI18n();\nconst validateRequired: ValidationRule = {\n validateRule: (val: Array<string | number>) => !!val && val.length > 0,\n errorMessage: () =>\n props.requiredErrorMessage || t('ds.global.field_required'),\n};\nconst inputText = ref('');\nconst selectedItems = ref<DisplayItem[]>([]);\nconst id = computed(() => props.inputId || `id-${uuid()}`);\nconst value = computed({\n get() {\n return props.modelValue;\n },\n set(val) {\n emit('update:modelValue', val);\n },\n});\nconst btnCssClass = computed(() => {\n let result = `ds-border ds-drop-shadow-light ds-text-sm ds-h-[40px] ds-px-3 ds-rounded-lg ds-block ds-w-full ds-inline-flex ds-items-center ds-justify-between `;\n result += props.disabled\n ? `ds-cursor-not-allowed ds-bg-[#f2f2f2] ds-text-black/[0.4] `\n : `ds-bg-white ds-text-black/[0.85] `;\n result += !validationResult.value.valid\n ? `ds-border-error focus:ds-ring-1 focus:ds-ring-error `\n : `ds-border-black/10 focus:ds-border-focus focus:ds-ring-1 focus:ds-ring-focus `;\n\n return result;\n});\nconst vRules = computed(() => {\n let result: ValidationRule[] = [];\n\n if (props.required) {\n result.push(validateRequired);\n }\n if (props.validationRules) {\n result = result.concat(props.validationRules);\n }\n\n return result.length ? result : undefined;\n});\nconst selectedItemCount = computed(() =>\n value.value?.length > 1\n ? ` (${t('ds.components.base.multi_select.selected_item_count', {\n count: value.value?.length,\n })})`\n : ''\n);\nconst labelDisplay = computed(() =>\n props.showSelectedItemCount\n ? `${props.label}${selectedItemCount.value}`\n : props.label\n);\nconst { validate, validationResult } = useValidationField(\n id.value,\n value,\n vRules.value\n);\n\n/**\n * Watch\n */\nwatch(selectMenu, (val) => {\n if (val) {\n lockScrollBody();\n ensureMenuPosition();\n emit('open');\n } else {\n unlockScrollBody();\n resetMenuPosition();\n emit('close');\n }\n});\nwatch(\n value,\n () => {\n ensureSelectedItems();\n },\n {\n deep: true,\n }\n);\nwatch(\n () => props.items,\n () => {\n if (value.value.length !== 0 && selectedItems.value.length === 0) {\n ensureSelectedItems();\n }\n },\n {\n deep: true,\n }\n);\n\n/**\n * Methods\n */\nconst ensureSelectedItems = () => {\n selectedItems.value = value.value.map((v) => {\n let item = selectedItems.value.find((i) => i.value === v);\n if (!item) {\n item = props.items.find((i) => i.value === v);\n }\n return { text: item?.text, value: v, cssClass: item?.cssClass };\n });\n};\nconst initPressEscapeEventListener = () => {\n document.addEventListener('keydown', closeOnEscapePressed);\n};\nconst closeOnEscapePressed = (event: KeyboardEvent) => {\n if (event.key === 'Escape') {\n closeSelectMenu();\n }\n};\nconst initClickOutsideEventListener = () => {\n document.addEventListener('click', closeOnClickOutside);\n};\nconst closeOnClickOutside = (event: any) => {\n const refs = [selectEl.value, selectMenuEl.value];\n const withinBoundaries = refs.some((r) => event.composedPath().includes(r));\n if (!withinBoundaries) {\n closeSelectMenu();\n }\n};\nconst onClickItem = (item: DisplayItem) => {\n const index = value.value.findIndex((v) => v === item.value);\n if (index !== -1) {\n value.value.splice(index, 1);\n } else {\n value.value.push(item.value);\n }\n emit('change', item.value);\n nextTick(() => {\n validate();\n });\n};\nconst ensureMenuWidth = (parentEl: HTMLElement, menuEl: HTMLElement) => {\n menuEl.style.width = `${parentEl.offsetWidth}px`;\n};\nconst ensureMenuPosition = () => {\n nextTick(() => {\n ensureVisiblePosition(selectEl.value!, selectMenuEl.value!);\n ensureMenuWidth(selectEl.value!, selectMenuEl.value!);\n });\n};\nconst resetMenuPosition = () => {\n resetPosition(selectEl.value!, selectMenuEl.value!);\n};\nconst onChangeInputText = (text: string) => {\n emit('change:input', text);\n};\nconst closeSelectMenu = () => {\n selectMenu.value = false;\n inputRef.value?.blur();\n inputText.value = '';\n};\nconst deselectItem = (item: DisplayItem) => {\n const index = value.value.findIndex((v) => v === item.value);\n if (index !== -1) {\n value.value.splice(index, 1);\n emit('change', item.value);\n nextTick(() => {\n validate();\n });\n }\n};\nconst init = () => {\n if (props.items.length > 0) {\n ensureSelectedItems();\n }\n};\ninit();\n\n/**\n * Lifecycle Hooks\n */\nonMounted(() => {\n initPressEscapeEventListener();\n initClickOutsideEventListener();\n});\nonBeforeUnmount(() => {\n document.removeEventListener('keydown', closeOnEscapePressed);\n document.removeEventListener('click', closeOnClickOutside);\n unlockScrollBody();\n // Make sure dropdown menu unmounted with itself\n resetMenuPosition();\n});\n\n__expose({ validate, selectMenu });\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", null, [\n _createElementVNode(\"div\", {\n ref_key: \"selectEl\",\n ref: selectEl\n }, [\n _createVNode(BLabel, {\n id: id.value,\n label: labelDisplay.value,\n required: _ctx.required\n }, null, 8, [\"id\", \"label\", \"required\"]),\n (props.allowInput)\n ? (_openBlock(), _createElementBlock(\"div\", {\n key: 0,\n class: _normalizeClass([\"ds-relative ds-flex ds-flex-wrap ds-items-center ds-gap-x-1 ds-rounded-lg ds-border ds-bg-white ds-px-3 ds-py-1 ds-drop-shadow-light\", {\n 'ds-border-focus ds-ring-1 ds-ring-focus':\n selectMenu.value && _unref(validationResult).valid,\n 'ds-ring-1 ds-ring-error': selectMenu.value && !_unref(validationResult).valid,\n 'ds-border-black/10': _unref(validationResult).valid,\n 'ds-border-error': !_unref(validationResult).valid,\n }])\n }, [\n _createElementVNode(\"div\", _hoisted_1, [\n _createElementVNode(\"i\", {\n class: _normalizeClass(`fa-solid fa-caret-down ds-transition-transform ${\n selectMenu.value ? 'ds-rotate-180' : ''\n }`),\n onClick: _cache[0] || (_cache[0] = ($event: any) => (inputRef.value?.focus()))\n }, null, 2)\n ]),\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(selectedItems.value, (item, i) => {\n return (_openBlock(), _createElementBlock(\"div\", {\n key: `item${i}`,\n class: \"ds-my-0.5 ds-flex-initial ds-space-x-1 ds-rounded-lg ds-bg-black/10 ds-px-2\"\n }, [\n _createElementVNode(\"span\", null, _toDisplayString(item.text), 1),\n _createElementVNode(\"i\", {\n class: \"fa-solid fa-circle-xmark ds-cursor-pointer ds-text-black/60 hover:ds-text-black/40\",\n onClick: ($event: any) => (deselectItem(item))\n }, null, 8, _hoisted_2)\n ]))\n }), 128)),\n (props.allowInput)\n ? (_openBlock(), _createBlock(BTextField, {\n key: 0,\n ref_key: \"inputRef\",\n ref: inputRef,\n id: id.value,\n class: \"ds-flex-auto\",\n \"input-css-class\": \"ds-drop-shadow-none ds-border-none !ds-ring-0 ds-px-0 !ds-h-[30px] ds-pl-0\",\n modelValue: inputText.value,\n \"onUpdate:modelValue\": [\n _cache[1] || (_cache[1] = ($event: any) => ((inputText).value = $event)),\n onChangeInputText\n ],\n disabled: props.disabled,\n \"hide-details\": \"\",\n onFocus: _cache[2] || (_cache[2] = ($event: any) => (selectMenu.value = true))\n }, null, 8, [\"id\", \"modelValue\", \"disabled\"]))\n : _createCommentVNode(\"\", true)\n ], 2))\n : (_openBlock(), _createElementBlock(\"button\", {\n key: 1,\n id: id.value,\n class: _normalizeClass(btnCssClass.value),\n disabled: _ctx.disabled,\n type: \"button\",\n onClick: _cache[3] || (_cache[3] = ($event: any) => (selectMenu.value = !selectMenu.value))\n }, [\n (selectedItems.value.length > 0)\n ? (_openBlock(), _createElementBlock(\"span\", {\n key: 0,\n class: _normalizeClass([\"ds-truncate ds-text-sm\", _ctx.valueCssClass])\n }, _toDisplayString(selectedItems.value?.map((s) => s.text).join(', ')), 3))\n : (_openBlock(), _createElementBlock(\"span\", {\n key: 1,\n class: _normalizeClass([\"ds-truncate ds-text-sm ds-text-black/[0.4]\", _ctx.valueCssClass])\n }, _toDisplayString(props.placeholder), 3)),\n _createTextVNode(\" \"),\n _createElementVNode(\"span\", {\n class: _normalizeClass([\"fa-solid fa-caret-down ds-text-base ds-transition-transform\", `${selectMenu.value ? 'ds-rotate-180' : ''}`])\n }, null, 2)\n ], 10, _hoisted_3)),\n _withDirectives(_createElementVNode(\"div\", {\n id: `${id.value}Menu`,\n ref_key: \"selectMenuEl\",\n ref: selectMenuEl,\n class: _normalizeClass([\"ds-absolute ds-z-50 ds-min-w-[8rem] ds-py-1\", _ctx.menuCssClass]),\n \"data-ut\": _ctx.$attrs['data-ut'] ? `${_ctx.$attrs['data-ut']}Menu` : undefined,\n \"data-cy\": _ctx.$attrs['data-cy'] ? `${_ctx.$attrs['data-cy']}Menu` : undefined\n }, [\n _createElementVNode(\"div\", _hoisted_5, [\n _createElementVNode(\"ul\", _hoisted_6, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.items, (item, index) => {\n return (_openBlock(), _createElementBlock(\"li\", {\n key: `item${index}`,\n class: \"ds-cursor-pointer\",\n onClick: _withModifiers(($event: any) => (onClickItem(item)), [\"prevent\"])\n }, [\n _createElementVNode(\"a\", {\n class: _normalizeClass([\"ds-flex ds-items-center ds-space-x-2 ds-px-4 ds-py-2 hover:ds-bg-slate-100\", \n item.cssClass +\n `${\n selectedItems.value.some((s) => s.value === item.value)\n ? ' ds-bg-slate-100'\n : ''\n }`\n ])\n }, [\n _createVNode(BCheckbox, {\n modelValue: value.value,\n \"onUpdate:modelValue\": _cache[4] || (_cache[4] = ($event: any) => ((value).value = $event)),\n value: item.value,\n size: \"sm\"\n }, null, 8, [\"modelValue\", \"value\"]),\n _createElementVNode(\"span\", null, _toDisplayString(item?.text), 1)\n ], 2)\n ], 8, _hoisted_7))\n }), 128))\n ])\n ])\n ], 10, _hoisted_4), [\n [_vShow, selectMenu.value]\n ])\n ], 512),\n (!_ctx.hideDetails)\n ? (_openBlock(), _createBlock(BErrorMessage, {\n key: 0,\n class: \"ds-mt-1\",\n \"error-message\": _unref(validationResult).errorMessage(),\n \"prepend-icon\": \"fa-solid fa-circle-exclamation\"\n }, null, 8, [\"error-message\"]))\n : _createCommentVNode(\"\", true)\n ]))\n}\n}\n\n})"],"names":["_hoisted_1","_hoisted_2","_hoisted_3","_hoisted_4","_hoisted_5","_hoisted_6","_hoisted_7","_sfc_main","_defineComponent","__props","__expose","emit","props","selectEl","ref","inputRef","selectMenuEl","selectMenu","t","useI18n","validateRequired","val","inputText","selectedItems","id","computed","uuid","value","btnCssClass","result","validationResult","vRules","selectedItemCount","_a","_b","labelDisplay","validate","useValidationField","watch","lockScrollBody","ensureMenuPosition","unlockScrollBody","resetMenuPosition","ensureSelectedItems","v","item","i","initPressEscapeEventListener","closeOnEscapePressed","event","closeSelectMenu","initClickOutsideEventListener","closeOnClickOutside","r","onClickItem","index","nextTick","ensureMenuWidth","parentEl","menuEl","ensureVisiblePosition","resetPosition","onChangeInputText","text","deselectItem","onMounted","onBeforeUnmount","_ctx","_cache","_openBlock","_createElementBlock","_createElementVNode","_createVNode","BLabel","_normalizeClass","_unref","$event","_Fragment","_renderList","_toDisplayString","_createBlock","BTextField","_createCommentVNode","s","_createTextVNode","_withDirectives","_withModifiers","BCheckbox","_vShow","BErrorMessage"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"design-system15.js","sources":["../src/components/BOtpField/BOtpField.vue?vue&type=script&setup=true&lang.ts"],"sourcesContent":["import { defineComponent as _defineComponent } from 'vue'\nimport { renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, normalizeClass as _normalizeClass, createBlock as _createBlock, createElementVNode as _createElementVNode, unref as _unref, createCommentVNode as _createCommentVNode } from \"vue\"\n\nconst _hoisted_1 = { class: \"ds-flex ds-items-center ds-justify-center ds-space-x-2\" }\n\nimport BErrorMessage from '@/components/BErrorMessage.vue';\nimport {\n useValidationField,\n type ValidationRule,\n} from '@/composables/Validation';\nimport type { BOtpFieldProps } from '@/types';\nimport { cloneDeep } from 'lodash-es';\nimport { v4 as uuid } from 'uuid';\nimport { computed, ref } from 'vue';\nimport { useI18n } from 'vue-i18n';\nimport BOtpFieldBox from './BOtpFieldBox.vue';\n\n/**\n * Props\n */\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'BOtpField',\n props: {\n inputId: { default: '' },\n modelValue: { default: '' },\n numInputs: { default: 6 },\n focusIndex: { default: undefined },\n disabled: { type: Boolean, default: false },\n inputCssClass: { default: '' },\n validationRules: { default: undefined },\n required: { type: Boolean, default: false },\n requiredErrorMessage: { default: '' },\n hideDetails: { type: Boolean, default: false }\n },\n emits: [\n 'complete',\n 'change',\n 'update:modelValue',\n 'update:focusIndex',\n],\n setup(__props: any, { expose: __expose, emit }) {\n\nconst props = __props;\n\n// Sourcecode: https://github.com/ejirocodes/vue3-otp-input\n\n\n/**\n * Events\n */\n\n\n/**\n * Data\n */\nconst { t } = useI18n();\nconst validateRequired: ValidationRule = {\n validateRule: (val: string) => !!val,\n errorMessage: () =>\n props.requiredErrorMessage || t('ds.global.field_required'),\n};\nconst fIndex = ref(0);\nconst oldOtp = ref<any[]>([]);\nconst boxRefs = ref<Array<InstanceType<typeof BOtpFieldBox>> | null>(null);\nconst handleOnFocus = (index: number) => {\n focusIndexValue.value = index;\n};\nconst handleOnBlur = () => {\n focusIndexValue.value = -1;\n};\nconst id = computed(() => props.inputId || `id-${uuid()}`);\nconst value = computed<any[]>({\n get() {\n return props.modelValue.split('');\n },\n set(val: any) {\n emit('update:modelValue', val.join(''));\n },\n});\nconst originalValue = computed(() => props.modelValue);\nconst focusIndexValue = computed({\n get() {\n return props.focusIndex !== undefined ? props.focusIndex : fIndex.value;\n },\n set(val: number) {\n if (props.focusIndex !== undefined) {\n emit('update:focusIndex', val);\n } else {\n fIndex.value = val;\n }\n },\n});\nconst vRules = computed(() => {\n let result: ValidationRule[] = [];\n\n if (props.required) {\n result.push(validateRequired);\n }\n if (props.validationRules) {\n result = result.concat(props.validationRules);\n }\n\n return result.length ? result : undefined;\n});\nconst inputCssClassValue = computed(() => [\n ...[\n props.disabled\n ? 'ds-cursor-not-allowed ds-bg-[#f2f2f2] ds-text-black/[0.4]'\n : 'ds-text-black/[0.85]',\n validationResult.value.valid\n ? 'ds-border-black/[0.1] focus:ds-border-focus focus:ds-ring-1 focus:ds-ring-focus'\n : 'ds-border-error focus:ds-ring-1 focus:ds-ring-error',\n ],\n props.inputCssClass,\n]);\n\nconst { validate, validationResult } = useValidationField(\n id.value,\n originalValue,\n vRules.value\n);\n\n/**\n * Methods\n */\nconst focus = () => {\n boxRefs.value![focusIndexValue.value].focus();\n};\nconst checkFilledAllInputs = () => {\n if (value.value.join('').length === props.numInputs) {\n return emit('complete', value.value.join(''));\n }\n return 'Wait until the user enters the required number of characters';\n};\n// Focus on input by index\nconst focusInput = (input: number) => {\n focusIndexValue.value = Math.max(Math.min(props.numInputs - 1, input), 0);\n};\n// Focus on next input\nconst focusNextInput = () => {\n focusInput(focusIndexValue.value + 1);\n};\n// Focus on previous input\nconst focusPrevInput = () => {\n focusInput(focusIndexValue.value - 1);\n};\n// Change OTP value at focused input\nconst changeCodeAtFocus = (val: number | string) => {\n oldOtp.value = [...value.value];\n\n value.value[focusIndexValue.value] = val;\n value.value = cloneDeep(value.value);\n\n const oldOtpStr = oldOtp.value.join('');\n const otpStr = value.value.join('');\n if (oldOtpStr !== otpStr) {\n emit('change', otpStr);\n checkFilledAllInputs();\n }\n};\n// Handle pasted OTP\nconst handleOnPaste = (event: any) => {\n event.preventDefault();\n const pastedData = event.clipboardData\n .getData('text/plain')\n .slice(0, props.numInputs - focusIndexValue.value)\n .split('');\n if (!pastedData.join('').match(/^\\d+$/)) {\n return 'Invalid pasted data';\n }\n\n // Paste data from focused input onwards\n const currentCharsInOtp = value.value.slice(0, focusIndexValue.value);\n const combinedWithPastedData = currentCharsInOtp.concat(pastedData);\n\n combinedWithPastedData.slice(0, props.numInputs).forEach((val, i) => {\n value.value[i] = val;\n });\n\n focusInput(combinedWithPastedData.slice(0, props.numInputs).length);\n\n // Update modelValue when data is pasted from keyboard\n emit('update:modelValue', value.value.join(''));\n // Check if `complete`\n return checkFilledAllInputs();\n};\nconst handleOnChange = (val: number) => {\n changeCodeAtFocus(val);\n focusNextInput();\n};\n// Handle cases of backspace, delete, left arrow, right arrow\nconst handleOnKeyDown = (event: KeyboardEvent) => {\n switch (event.key) {\n case 'Backspace':\n event.preventDefault();\n changeCodeAtFocus('');\n focusPrevInput();\n break;\n case 'Delete':\n event.preventDefault();\n changeCodeAtFocus('');\n break;\n case 'ArrowLeft':\n event.preventDefault();\n focusPrevInput();\n break;\n case 'ArrowRight':\n event.preventDefault();\n focusNextInput();\n break;\n default:\n break;\n }\n};\nconst handleOnKeyUp = () => {\n validate();\n};\n\n__expose({ validate, focus });\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", null, [\n _createElementVNode(\"div\", _hoisted_1, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.numInputs, (_, i) => {\n return (_openBlock(), _createBlock(BOtpFieldBox, {\n key: i,\n ref_for: true,\n ref_key: \"boxRefs\",\n ref: boxRefs,\n class: _normalizeClass(inputCssClassValue.value),\n focus: focusIndexValue.value === i,\n \"is-disabled\": _ctx.disabled,\n value: value.value[i],\n onOnChange: handleOnChange,\n onOnKeydown: handleOnKeyDown,\n onOnKeyup: handleOnKeyUp,\n onOnPaste: handleOnPaste,\n onOnFocus: ($event: any) => (handleOnFocus(i)),\n onOnBlur: handleOnBlur\n }, null, 8, [\"class\", \"focus\", \"is-disabled\", \"value\", \"onOnFocus\"]))\n }), 128))\n ]),\n (!_ctx.hideDetails)\n ? (_openBlock(), _createBlock(BErrorMessage, {\n key: 0,\n \"error-message\": _unref(validationResult).errorMessage(),\n class: \"ds-mt-1\"\n }, null, 8, [\"error-message\"]))\n : _createCommentVNode(\"\", true)\n ]))\n}\n}\n\n})"],"names":["_hoisted_1","_sfc_main","_defineComponent","__props","__expose","emit","props","t","useI18n","validateRequired","val","fIndex","ref","oldOtp","boxRefs","handleOnFocus","index","focusIndexValue","handleOnBlur","id","computed","uuid","value","originalValue","vRules","result","inputCssClassValue","validationResult","validate","useValidationField","focus","checkFilledAllInputs","focusInput","input","focusNextInput","focusPrevInput","changeCodeAtFocus","cloneDeep","oldOtpStr","otpStr","handleOnPaste","event","pastedData","combinedWithPastedData","i","handleOnChange","handleOnKeyDown","handleOnKeyUp","_ctx","_cache","_openBlock","_createElementBlock","_createElementVNode","_Fragment","_renderList","_","_createBlock","BOtpFieldBox","_normalizeClass","$event","_createCommentVNode","BErrorMessage","_unref"],"mappings":"+OAGMA,EAAa,CAAE,MAAO,0DAkBAC,EAAiBC,kBAAA,CAC3C,OAAQ,YACR,MAAO,CACL,QAAS,CAAE,QAAS,EAAG,EACvB,WAAY,CAAE,QAAS,EAAG,EAC1B,UAAW,CAAE,QAAS,CAAE,EACxB,WAAY,CAAE,QAAS,MAAU,EACjC,SAAU,CAAE,KAAM,QAAS,QAAS,EAAM,EAC1C,cAAe,CAAE,QAAS,EAAG,EAC7B,gBAAiB,CAAE,QAAS,MAAU,EACtC,SAAU,CAAE,KAAM,QAAS,QAAS,EAAM,EAC1C,qBAAsB,CAAE,QAAS,EAAG,EACpC,YAAa,CAAE,KAAM,QAAS,QAAS,EAAM,CAC/C,EACA,MAAO,CACP,WACA,SACA,oBACA,mBACF,EACE,MAAMC,EAAc,CAAE,OAAQC,EAAU,KAAAC,GAAQ,CAElD,MAAMC,EAAQH,EAaR,CAAE,EAAAI,GAAMC,EAAAA,UACRC,EAAmC,CACvC,aAAeC,GAAgB,CAAC,CAACA,EACjC,aAAc,IACZJ,EAAM,sBAAwBC,EAAE,0BAA0B,CAAA,EAExDI,EAASC,MAAI,CAAC,EACdC,EAASD,MAAW,CAAA,CAAE,EACtBE,EAAUF,MAAqD,IAAI,EACnEG,EAAiBC,GAAkB,CACvCC,EAAgB,MAAQD,CAAA,EAEpBE,EAAe,IAAM,CACzBD,EAAgB,MAAQ,EAAA,EAEpBE,EAAKC,WAAS,IAAMd,EAAM,SAAW,MAAMe,GAAM,EAAE,EACnDC,EAAQF,EAAAA,SAAgB,CAC5B,KAAM,CACG,OAAAd,EAAM,WAAW,MAAM,EAAE,CAClC,EACA,IAAII,EAAU,CACZL,EAAK,oBAAqBK,EAAI,KAAK,EAAE,CAAC,CACxC,CAAA,CACD,EACKa,EAAgBH,EAAA,SAAS,IAAMd,EAAM,UAAU,EAC/CW,EAAkBG,EAAAA,SAAS,CAC/B,KAAM,CACJ,OAAOd,EAAM,aAAe,OAAYA,EAAM,WAAaK,EAAO,KACpE,EACA,IAAID,EAAa,CACXJ,EAAM,aAAe,OACvBD,EAAK,oBAAqBK,CAAG,EAE7BC,EAAO,MAAQD,CAEnB,CAAA,CACD,EACKc,EAASJ,EAAAA,SAAS,IAAM,CAC5B,IAAIK,EAA2B,CAAA,EAE/B,OAAInB,EAAM,UACRmB,EAAO,KAAKhB,CAAgB,EAE1BH,EAAM,kBACCmB,EAAAA,EAAO,OAAOnB,EAAM,eAAe,GAGvCmB,EAAO,OAASA,EAAS,MAAA,CACjC,EACKC,EAAqBN,EAAAA,SAAS,IAAM,CAEtCd,EAAM,SACF,4DACA,uBACJqB,EAAiB,MAAM,MACnB,kFACA,sDAENrB,EAAM,aAAA,CACP,EAEK,CAAE,SAAAsB,EAAU,iBAAAD,CAAA,EAAqBE,EAAA,mBACrCV,EAAG,MACHI,EACAC,EAAO,KAAA,EAMHM,EAAQ,IAAM,CAClBhB,EAAQ,MAAOG,EAAgB,KAAK,EAAE,MAAM,CAAA,EAExCc,EAAuB,IACvBT,EAAM,MAAM,KAAK,EAAE,EAAE,SAAWhB,EAAM,UACjCD,EAAK,WAAYiB,EAAM,MAAM,KAAK,EAAE,CAAC,EAEvC,+DAGHU,EAAcC,GAAkB,CACpBhB,EAAA,MAAQ,KAAK,IAAI,KAAK,IAAIX,EAAM,UAAY,EAAG2B,CAAK,EAAG,CAAC,CAAA,EAGpEC,EAAiB,IAAM,CAChBF,EAAAf,EAAgB,MAAQ,CAAC,CAAA,EAGhCkB,EAAiB,IAAM,CAChBH,EAAAf,EAAgB,MAAQ,CAAC,CAAA,EAGhCmB,EAAqB1B,GAAyB,CAClDG,EAAO,MAAQ,CAAC,GAAGS,EAAM,KAAK,EAExBA,EAAA,MAAML,EAAgB,KAAK,EAAIP,EAC/BY,EAAA,MAAQe,EAAUf,EAAM,KAAK,EAEnC,MAAMgB,EAAYzB,EAAO,MAAM,KAAK,EAAE,EAChC0B,EAASjB,EAAM,MAAM,KAAK,EAAE,EAC9BgB,IAAcC,IAChBlC,EAAK,SAAUkC,CAAM,EACAR,IACvB,EAGIS,EAAiBC,GAAe,CACpCA,EAAM,eAAe,EACrB,MAAMC,EAAaD,EAAM,cACtB,QAAQ,YAAY,EACpB,MAAM,EAAGnC,EAAM,UAAYW,EAAgB,KAAK,EAChD,MAAM,EAAE,EACX,GAAI,CAACyB,EAAW,KAAK,EAAE,EAAE,MAAM,OAAO,EAC7B,MAAA,sBAKH,MAAAC,EADoBrB,EAAM,MAAM,MAAM,EAAGL,EAAgB,KAAK,EACnB,OAAOyB,CAAU,EAE3C,OAAAC,EAAA,MAAM,EAAGrC,EAAM,SAAS,EAAE,QAAQ,CAACI,EAAKkC,IAAM,CAC7DtB,EAAA,MAAMsB,CAAC,EAAIlC,CAAA,CAClB,EAEDsB,EAAWW,EAAuB,MAAM,EAAGrC,EAAM,SAAS,EAAE,MAAM,EAGlED,EAAK,oBAAqBiB,EAAM,MAAM,KAAK,EAAE,CAAC,EAEvCS,EAAqB,CAAA,EAExBc,EAAkBnC,GAAgB,CACtC0B,EAAkB1B,CAAG,EACNwB,GAAA,EAGXY,EAAmBL,GAAyB,CAChD,OAAQA,EAAM,IAAK,CACjB,IAAK,YACHA,EAAM,eAAe,EACrBL,EAAkB,EAAE,EACLD,IACf,MACF,IAAK,SACHM,EAAM,eAAe,EACrBL,EAAkB,EAAE,EACpB,MACF,IAAK,YACHK,EAAM,eAAe,EACNN,IACf,MACF,IAAK,aACHM,EAAM,eAAe,EACNP,IACf,KAGJ,CAAA,EAEIa,EAAgB,IAAM,CACjBnB,GAAA,EAGF,OAAAxB,EAAA,CAAE,SAAAwB,EAAU,MAAAE,CAAA,CAAO,EAErB,CAACkB,EAAUC,KACRC,YAAW,EAAGC,qBAAoB,MAAO,KAAM,CACrDC,EAAA,mBAAoB,MAAOpD,EAAY,EACpCkD,EAAAA,UAAW,EAAI,EAAGC,EAAoB,mBAAAE,WAAW,KAAMC,EAAA,WAAYN,EAAK,UAAW,CAACO,EAAGX,KAC9EM,EAAA,UAAA,EAAcM,EAAA,YAAaC,EAAc,CAC/C,IAAKb,EACL,QAAS,GACT,QAAS,UACT,IAAK9B,EACL,MAAO4C,EAAAA,eAAgBhC,EAAmB,KAAK,EAC/C,MAAOT,EAAgB,QAAU2B,EACjC,cAAeI,EAAK,SACpB,MAAO1B,EAAM,MAAMsB,CAAC,EACpB,WAAYC,EACZ,YAAaC,EACb,UAAWC,EACX,UAAWP,EACX,UAAYmB,GAAiB5C,EAAc6B,CAAC,EAC5C,SAAU1B,CAAA,EACT,KAAM,EAAG,CAAC,QAAS,QAAS,cAAe,QAAS,WAAW,CAAC,EACpE,EAAG,GAAG,EAAA,CACR,EACC8B,EAAK,YAMHY,EAAoB,mBAAA,GAAI,EAAI,GAL3BV,EAAW,UAAA,EAAGM,EAAAA,YAAaK,EAAe,CACzC,IAAK,EACL,gBAAiBC,EAAA,MAAOnC,CAAgB,EAAE,aAAa,EACvD,MAAO,SAAA,EACN,KAAM,EAAG,CAAC,eAAe,CAAC,EACD,CACjC,EAEH,CAEA,CAAC"}
|
package/dist/design-system15.mjs
CHANGED
|
@@ -1,253 +1,132 @@
|
|
|
1
|
-
import { defineComponent as
|
|
2
|
-
import
|
|
3
|
-
import {
|
|
4
|
-
import { useI18n as
|
|
5
|
-
import
|
|
6
|
-
import
|
|
7
|
-
import
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
const ge = { class: "ds-absolute ds-right-3 ds-z-[1]" }, he = ["onClick"], ke = ["id", "disabled"], xe = ["id", "data-ut", "data-cy"], ye = { class: "ds-max-h-72 ds-overflow-y-auto ds-rounded-lg ds-bg-white ds-shadow" }, Ce = { class: "ds-py-1 ds-text-sm ds-text-black/[0.85]" }, we = ["onClick"], Le = /* @__PURE__ */ ee({
|
|
11
|
-
__name: "BMultiSelect",
|
|
1
|
+
import { defineComponent as N, ref as f, computed as l, openBlock as d, createElementBlock as k, createElementVNode as L, Fragment as S, renderList as W, createBlock as C, normalizeClass as z, unref as U, createCommentVNode as G } from "vue";
|
|
2
|
+
import H from "./design-system26.mjs";
|
|
3
|
+
import { useValidationField as J } from "./design-system3.mjs";
|
|
4
|
+
import { useI18n as Q } from "./design-system40.mjs";
|
|
5
|
+
import T from "./design-system85.mjs";
|
|
6
|
+
import X from "./design-system83.mjs";
|
|
7
|
+
import Y from "./design-system86.mjs";
|
|
8
|
+
const Z = { class: "ds-flex ds-items-center ds-justify-center ds-space-x-2" }, ue = /* @__PURE__ */ N({
|
|
9
|
+
__name: "BOtpField",
|
|
12
10
|
props: {
|
|
13
11
|
inputId: { default: "" },
|
|
14
|
-
modelValue: {},
|
|
15
|
-
|
|
16
|
-
|
|
12
|
+
modelValue: { default: "" },
|
|
13
|
+
numInputs: { default: 6 },
|
|
14
|
+
focusIndex: { default: void 0 },
|
|
17
15
|
disabled: { type: Boolean, default: !1 },
|
|
18
|
-
|
|
19
|
-
valueCssClass: { default: "" },
|
|
20
|
-
menuCssClass: { default: "" },
|
|
16
|
+
inputCssClass: { default: "" },
|
|
21
17
|
validationRules: { default: void 0 },
|
|
22
18
|
required: { type: Boolean, default: !1 },
|
|
23
19
|
requiredErrorMessage: { default: "" },
|
|
24
|
-
hideDetails: { type: Boolean, default: !1 }
|
|
25
|
-
showSelectedItemCount: { type: Boolean, default: !1 },
|
|
26
|
-
allowInput: { type: Boolean, default: !1 }
|
|
20
|
+
hideDetails: { type: Boolean, default: !1 }
|
|
27
21
|
},
|
|
28
22
|
emits: [
|
|
29
|
-
"
|
|
23
|
+
"complete",
|
|
30
24
|
"change",
|
|
31
|
-
"
|
|
32
|
-
"
|
|
33
|
-
"change:input"
|
|
25
|
+
"update:modelValue",
|
|
26
|
+
"update:focusIndex"
|
|
34
27
|
],
|
|
35
|
-
setup(
|
|
36
|
-
const
|
|
37
|
-
validateRule: (e) => !!e
|
|
38
|
-
errorMessage: () =>
|
|
39
|
-
},
|
|
28
|
+
setup(D, { expose: _, emit: o }) {
|
|
29
|
+
const s = D, { t: y } = Q(), V = {
|
|
30
|
+
validateRule: (e) => !!e,
|
|
31
|
+
errorMessage: () => s.requiredErrorMessage || y("ds.global.field_required")
|
|
32
|
+
}, p = f(0), v = f([]), m = f(null), B = (e) => {
|
|
33
|
+
a.value = e;
|
|
34
|
+
}, R = () => {
|
|
35
|
+
a.value = -1;
|
|
36
|
+
}, j = l(() => s.inputId || `id-${X()}`), t = l({
|
|
40
37
|
get() {
|
|
41
|
-
return
|
|
38
|
+
return s.modelValue.split("");
|
|
42
39
|
},
|
|
43
40
|
set(e) {
|
|
44
|
-
|
|
41
|
+
o("update:modelValue", e.join(""));
|
|
45
42
|
}
|
|
46
|
-
}),
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
}), W = b(() => {
|
|
50
|
-
let e = [];
|
|
51
|
-
return t.required && e.push(U), t.validationRules && (e = e.concat(t.validationRules)), e.length ? e : void 0;
|
|
52
|
-
}), A = b(
|
|
53
|
-
() => {
|
|
54
|
-
var e, s;
|
|
55
|
-
return ((e = d.value) == null ? void 0 : e.length) > 1 ? ` (${B("ds.components.base.multi_select.selected_item_count", {
|
|
56
|
-
count: (s = d.value) == null ? void 0 : s.length
|
|
57
|
-
})})` : "";
|
|
58
|
-
}
|
|
59
|
-
), G = b(
|
|
60
|
-
() => t.showSelectedItemCount ? `${t.label}${A.value}` : t.label
|
|
61
|
-
), { validate: E, validationResult: f } = ne(
|
|
62
|
-
k.value,
|
|
63
|
-
d,
|
|
64
|
-
W.value
|
|
65
|
-
);
|
|
66
|
-
I(a, (e) => {
|
|
67
|
-
e ? (ue(), X(), v("open")) : (O(), R(), v("close"));
|
|
68
|
-
}), I(
|
|
69
|
-
d,
|
|
70
|
-
() => {
|
|
71
|
-
M();
|
|
43
|
+
}), F = l(() => s.modelValue), a = l({
|
|
44
|
+
get() {
|
|
45
|
+
return s.focusIndex !== void 0 ? s.focusIndex : p.value;
|
|
72
46
|
},
|
|
73
|
-
{
|
|
74
|
-
|
|
47
|
+
set(e) {
|
|
48
|
+
s.focusIndex !== void 0 ? o("update:focusIndex", e) : p.value = e;
|
|
75
49
|
}
|
|
76
|
-
),
|
|
77
|
-
|
|
78
|
-
()
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
50
|
+
}), q = l(() => {
|
|
51
|
+
let e = [];
|
|
52
|
+
return s.required && e.push(V), s.validationRules && (e = e.concat(s.validationRules)), e.length ? e : void 0;
|
|
53
|
+
}), w = l(() => [
|
|
54
|
+
s.disabled ? "ds-cursor-not-allowed ds-bg-[#f2f2f2] ds-text-black/[0.4]" : "ds-text-black/[0.85]",
|
|
55
|
+
g.value.valid ? "ds-border-black/[0.1] focus:ds-border-focus focus:ds-ring-1 focus:ds-ring-focus" : "ds-border-error focus:ds-ring-1 focus:ds-ring-error",
|
|
56
|
+
s.inputCssClass
|
|
57
|
+
]), { validate: h, validationResult: g } = J(
|
|
58
|
+
j.value,
|
|
59
|
+
F,
|
|
60
|
+
q.value
|
|
61
|
+
), M = () => {
|
|
62
|
+
m.value[a.value].focus();
|
|
63
|
+
}, I = () => t.value.join("").length === s.numInputs ? o("complete", t.value.join("")) : "Wait until the user enters the required number of characters", c = (e) => {
|
|
64
|
+
a.value = Math.max(Math.min(s.numInputs - 1, e), 0);
|
|
65
|
+
}, b = () => {
|
|
66
|
+
c(a.value + 1);
|
|
67
|
+
}, O = () => {
|
|
68
|
+
c(a.value - 1);
|
|
69
|
+
}, i = (e) => {
|
|
70
|
+
v.value = [...t.value], t.value[a.value] = e, t.value = Y(t.value);
|
|
71
|
+
const u = v.value.join(""), r = t.value.join("");
|
|
72
|
+
u !== r && (o("change", r), I());
|
|
73
|
+
}, E = (e) => {
|
|
74
|
+
e.preventDefault();
|
|
75
|
+
const u = e.clipboardData.getData("text/plain").slice(0, s.numInputs - a.value).split("");
|
|
76
|
+
if (!u.join("").match(/^\d+$/))
|
|
77
|
+
return "Invalid pasted data";
|
|
78
|
+
const n = t.value.slice(0, a.value).concat(u);
|
|
79
|
+
return n.slice(0, s.numInputs).forEach((x, P) => {
|
|
80
|
+
t.value[P] = x;
|
|
81
|
+
}), c(n.slice(0, s.numInputs).length), o("update:modelValue", t.value.join("")), I();
|
|
82
|
+
}, $ = (e) => {
|
|
83
|
+
i(e), b();
|
|
84
|
+
}, A = (e) => {
|
|
85
|
+
switch (e.key) {
|
|
86
|
+
case "Backspace":
|
|
87
|
+
e.preventDefault(), i(""), O();
|
|
88
|
+
break;
|
|
89
|
+
case "Delete":
|
|
90
|
+
e.preventDefault(), i("");
|
|
91
|
+
break;
|
|
92
|
+
case "ArrowLeft":
|
|
93
|
+
e.preventDefault(), O();
|
|
94
|
+
break;
|
|
95
|
+
case "ArrowRight":
|
|
96
|
+
e.preventDefault(), b();
|
|
97
|
+
break;
|
|
83
98
|
}
|
|
84
|
-
)
|
|
85
|
-
|
|
86
|
-
c.value = d.value.map((e) => {
|
|
87
|
-
let s = c.value.find((o) => o.value === e);
|
|
88
|
-
return s || (s = t.items.find((o) => o.value === e)), { text: s == null ? void 0 : s.text, value: e, cssClass: s == null ? void 0 : s.cssClass };
|
|
89
|
-
});
|
|
90
|
-
}, H = () => {
|
|
91
|
-
document.addEventListener("keydown", _);
|
|
92
|
-
}, _ = (e) => {
|
|
93
|
-
e.key === "Escape" && S();
|
|
94
|
-
}, J = () => {
|
|
95
|
-
document.addEventListener("click", q);
|
|
96
|
-
}, q = (e) => {
|
|
97
|
-
[g.value, h.value].some((l) => e.composedPath().includes(l)) || S();
|
|
98
|
-
}, K = (e) => {
|
|
99
|
-
const s = d.value.findIndex((o) => o === e.value);
|
|
100
|
-
s !== -1 ? d.value.splice(s, 1) : d.value.push(e.value), v("change", e.value), V(() => {
|
|
101
|
-
E();
|
|
102
|
-
});
|
|
103
|
-
}, Q = (e, s) => {
|
|
104
|
-
s.style.width = `${e.offsetWidth}px`;
|
|
105
|
-
}, X = () => {
|
|
106
|
-
V(() => {
|
|
107
|
-
re(g.value, h.value), Q(g.value, h.value);
|
|
108
|
-
});
|
|
109
|
-
}, R = () => {
|
|
110
|
-
ie(g.value, h.value);
|
|
111
|
-
}, Y = (e) => {
|
|
112
|
-
v("change:input", e);
|
|
113
|
-
}, S = () => {
|
|
114
|
-
var e;
|
|
115
|
-
a.value = !1, (e = w.value) == null || e.blur(), $.value = "";
|
|
116
|
-
}, Z = (e) => {
|
|
117
|
-
const s = d.value.findIndex((o) => o === e.value);
|
|
118
|
-
s !== -1 && (d.value.splice(s, 1), v("change", e.value), V(() => {
|
|
119
|
-
E();
|
|
120
|
-
}));
|
|
121
|
-
};
|
|
122
|
-
return (() => {
|
|
123
|
-
t.items.length > 0 && M();
|
|
124
|
-
})(), se(() => {
|
|
125
|
-
H(), J();
|
|
126
|
-
}), le(() => {
|
|
127
|
-
document.removeEventListener("keydown", _), document.removeEventListener("click", q), O(), R();
|
|
128
|
-
}), F({ validate: E, selectMenu: a }), (e, s) => {
|
|
129
|
-
var o;
|
|
130
|
-
return n(), r("div", null, [
|
|
131
|
-
u("div", {
|
|
132
|
-
ref_key: "selectEl",
|
|
133
|
-
ref: g
|
|
134
|
-
}, [
|
|
135
|
-
L(ve, {
|
|
136
|
-
id: k.value,
|
|
137
|
-
label: G.value,
|
|
138
|
-
required: e.required
|
|
139
|
-
}, null, 8, ["id", "label", "required"]),
|
|
140
|
-
t.allowInput ? (n(), r("div", {
|
|
141
|
-
key: 0,
|
|
142
|
-
class: i(["ds-relative ds-flex ds-flex-wrap ds-items-center ds-gap-x-1 ds-rounded-lg ds-border ds-bg-white ds-px-3 ds-py-1 ds-drop-shadow-light", {
|
|
143
|
-
"ds-border-focus ds-ring-1 ds-ring-focus": a.value && y(f).valid,
|
|
144
|
-
"ds-ring-1 ds-ring-error": a.value && !y(f).valid,
|
|
145
|
-
"ds-border-black/10": y(f).valid,
|
|
146
|
-
"ds-border-error": !y(f).valid
|
|
147
|
-
}])
|
|
148
|
-
}, [
|
|
149
|
-
u("div", ge, [
|
|
150
|
-
u("i", {
|
|
151
|
-
class: i(`fa-solid fa-caret-down ds-transition-transform ${a.value ? "ds-rotate-180" : ""}`),
|
|
152
|
-
onClick: s[0] || (s[0] = (l) => {
|
|
153
|
-
var p;
|
|
154
|
-
return (p = w.value) == null ? void 0 : p.focus();
|
|
155
|
-
})
|
|
156
|
-
}, null, 2)
|
|
157
|
-
]),
|
|
158
|
-
(n(!0), r(P, null, D(c.value, (l, p) => (n(), r("div", {
|
|
159
|
-
key: `item${p}`,
|
|
160
|
-
class: "ds-my-0.5 ds-flex-initial ds-space-x-1 ds-rounded-lg ds-bg-black/10 ds-px-2"
|
|
161
|
-
}, [
|
|
162
|
-
u("span", null, C(l.text), 1),
|
|
163
|
-
u("i", {
|
|
164
|
-
class: "fa-solid fa-circle-xmark ds-cursor-pointer ds-text-black/60 hover:ds-text-black/40",
|
|
165
|
-
onClick: (x) => Z(l)
|
|
166
|
-
}, null, 8, he)
|
|
167
|
-
]))), 128)),
|
|
168
|
-
t.allowInput ? (n(), z(me, {
|
|
169
|
-
key: 0,
|
|
170
|
-
ref_key: "inputRef",
|
|
171
|
-
ref: w,
|
|
172
|
-
id: k.value,
|
|
173
|
-
class: "ds-flex-auto",
|
|
174
|
-
"input-css-class": "ds-drop-shadow-none ds-border-none !ds-ring-0 ds-px-0 !ds-h-[30px] ds-pl-0",
|
|
175
|
-
modelValue: $.value,
|
|
176
|
-
"onUpdate:modelValue": [
|
|
177
|
-
s[1] || (s[1] = (l) => $.value = l),
|
|
178
|
-
Y
|
|
179
|
-
],
|
|
180
|
-
disabled: t.disabled,
|
|
181
|
-
"hide-details": "",
|
|
182
|
-
onFocus: s[2] || (s[2] = (l) => a.value = !0)
|
|
183
|
-
}, null, 8, ["id", "modelValue", "disabled"])) : N("", !0)
|
|
184
|
-
], 2)) : (n(), r("button", {
|
|
185
|
-
key: 1,
|
|
186
|
-
id: k.value,
|
|
187
|
-
class: i(j.value),
|
|
188
|
-
disabled: e.disabled,
|
|
189
|
-
type: "button",
|
|
190
|
-
onClick: s[3] || (s[3] = (l) => a.value = !a.value)
|
|
191
|
-
}, [
|
|
192
|
-
c.value.length > 0 ? (n(), r("span", {
|
|
193
|
-
key: 0,
|
|
194
|
-
class: i(["ds-truncate ds-text-sm", e.valueCssClass])
|
|
195
|
-
}, C((o = c.value) == null ? void 0 : o.map((l) => l.text).join(", ")), 3)) : (n(), r("span", {
|
|
196
|
-
key: 1,
|
|
197
|
-
class: i(["ds-truncate ds-text-sm ds-text-black/[0.4]", e.valueCssClass])
|
|
198
|
-
}, C(t.placeholder), 3)),
|
|
199
|
-
te(" "),
|
|
200
|
-
u("span", {
|
|
201
|
-
class: i(["fa-solid fa-caret-down ds-text-base ds-transition-transform", `${a.value ? "ds-rotate-180" : ""}`])
|
|
202
|
-
}, null, 2)
|
|
203
|
-
], 10, ke)),
|
|
204
|
-
de(u("div", {
|
|
205
|
-
id: `${k.value}Menu`,
|
|
206
|
-
ref_key: "selectMenuEl",
|
|
207
|
-
ref: h,
|
|
208
|
-
class: i(["ds-absolute ds-z-50 ds-min-w-[8rem] ds-py-1", e.menuCssClass]),
|
|
209
|
-
"data-ut": e.$attrs["data-ut"] ? `${e.$attrs["data-ut"]}Menu` : void 0,
|
|
210
|
-
"data-cy": e.$attrs["data-cy"] ? `${e.$attrs["data-cy"]}Menu` : void 0
|
|
211
|
-
}, [
|
|
212
|
-
u("div", ye, [
|
|
213
|
-
u("ul", Ce, [
|
|
214
|
-
(n(!0), r(P, null, D(e.items, (l, p) => (n(), r("li", {
|
|
215
|
-
key: `item${p}`,
|
|
216
|
-
class: "ds-cursor-pointer",
|
|
217
|
-
onClick: ae((x) => K(l), ["prevent"])
|
|
218
|
-
}, [
|
|
219
|
-
u("a", {
|
|
220
|
-
class: i([
|
|
221
|
-
"ds-flex ds-items-center ds-space-x-2 ds-px-4 ds-py-2 hover:ds-bg-slate-100",
|
|
222
|
-
l.cssClass + `${c.value.some((x) => x.value === l.value) ? " ds-bg-slate-100" : ""}`
|
|
223
|
-
])
|
|
224
|
-
}, [
|
|
225
|
-
L(pe, {
|
|
226
|
-
modelValue: d.value,
|
|
227
|
-
"onUpdate:modelValue": s[4] || (s[4] = (x) => d.value = x),
|
|
228
|
-
value: l.value,
|
|
229
|
-
size: "sm"
|
|
230
|
-
}, null, 8, ["modelValue", "value"]),
|
|
231
|
-
u("span", null, C(l == null ? void 0 : l.text), 1)
|
|
232
|
-
], 2)
|
|
233
|
-
], 8, we))), 128))
|
|
234
|
-
])
|
|
235
|
-
])
|
|
236
|
-
], 10, xe), [
|
|
237
|
-
[oe, a.value]
|
|
238
|
-
])
|
|
239
|
-
], 512),
|
|
240
|
-
e.hideDetails ? N("", !0) : (n(), z(fe, {
|
|
241
|
-
key: 0,
|
|
242
|
-
class: "ds-mt-1",
|
|
243
|
-
"error-message": y(f).errorMessage(),
|
|
244
|
-
"prepend-icon": "fa-solid fa-circle-exclamation"
|
|
245
|
-
}, null, 8, ["error-message"]))
|
|
246
|
-
]);
|
|
99
|
+
}, K = () => {
|
|
100
|
+
h();
|
|
247
101
|
};
|
|
102
|
+
return _({ validate: h, focus: M }), (e, u) => (d(), k("div", null, [
|
|
103
|
+
L("div", Z, [
|
|
104
|
+
(d(!0), k(S, null, W(e.numInputs, (r, n) => (d(), C(T, {
|
|
105
|
+
key: n,
|
|
106
|
+
ref_for: !0,
|
|
107
|
+
ref_key: "boxRefs",
|
|
108
|
+
ref: m,
|
|
109
|
+
class: z(w.value),
|
|
110
|
+
focus: a.value === n,
|
|
111
|
+
"is-disabled": e.disabled,
|
|
112
|
+
value: t.value[n],
|
|
113
|
+
onOnChange: $,
|
|
114
|
+
onOnKeydown: A,
|
|
115
|
+
onOnKeyup: K,
|
|
116
|
+
onOnPaste: E,
|
|
117
|
+
onOnFocus: (x) => B(n),
|
|
118
|
+
onOnBlur: R
|
|
119
|
+
}, null, 8, ["class", "focus", "is-disabled", "value", "onOnFocus"]))), 128))
|
|
120
|
+
]),
|
|
121
|
+
e.hideDetails ? G("", !0) : (d(), C(H, {
|
|
122
|
+
key: 0,
|
|
123
|
+
"error-message": U(g).errorMessage(),
|
|
124
|
+
class: "ds-mt-1"
|
|
125
|
+
}, null, 8, ["error-message"]))
|
|
126
|
+
]));
|
|
248
127
|
}
|
|
249
128
|
});
|
|
250
129
|
export {
|
|
251
|
-
|
|
130
|
+
ue as default
|
|
252
131
|
};
|
|
253
132
|
//# sourceMappingURL=design-system15.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"design-system15.mjs","sources":["../src/components/BMultiSelect.vue?vue&type=script&setup=true&lang.ts"],"sourcesContent":["import { defineComponent as _defineComponent } from 'vue'\nimport { createVNode as _createVNode, unref as _unref, normalizeClass as _normalizeClass, createElementVNode as _createElementVNode, renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, toDisplayString as _toDisplayString, createBlock as _createBlock, createCommentVNode as _createCommentVNode, createTextVNode as _createTextVNode, withModifiers as _withModifiers, vShow as _vShow, withDirectives as _withDirectives } from \"vue\"\n\nconst _hoisted_1 = { class: \"ds-absolute ds-right-3 ds-z-[1]\" }\nconst _hoisted_2 = [\"onClick\"]\nconst _hoisted_3 = [\"id\", \"disabled\"]\nconst _hoisted_4 = [\"id\", \"data-ut\", \"data-cy\"]\nconst _hoisted_5 = { class: \"ds-max-h-72 ds-overflow-y-auto ds-rounded-lg ds-bg-white ds-shadow\" }\nconst _hoisted_6 = { class: \"ds-py-1 ds-text-sm ds-text-black/[0.85]\" }\nconst _hoisted_7 = [\"onClick\"]\n\nimport {\n useValidationField,\n type ValidationRule,\n} from '@/composables/Validation';\nimport {\n ensureVisiblePosition,\n lockScrollBody,\n resetPosition,\n unlockScrollBody,\n} from '@/helpers/ComponentHelper';\nimport type { DisplayItem } from '@/types';\nimport { v4 as uuid } from 'uuid';\nimport {\n computed,\n nextTick,\n onBeforeUnmount,\n onMounted,\n ref,\n watch,\n} from 'vue';\nimport { useI18n } from 'vue-i18n';\nimport BLabel from './BLabel.vue';\nimport BErrorMessage from './BErrorMessage.vue';\nimport BCheckbox from './BCheckbox.vue';\nimport BTextField from './BTextField.vue';\n\n/**\n * Props\n */\nexport interface Props {\n inputId?: string;\n modelValue: Array<string | number>;\n label?: string;\n items: DisplayItem[];\n disabled?: boolean;\n placeholder?: string;\n valueCssClass?: string;\n menuCssClass?: string;\n validationRules?: ValidationRule[];\n required?: boolean;\n requiredErrorMessage?: string;\n hideDetails?: boolean;\n showSelectedItemCount?: boolean;\n allowInput?: boolean;\n}\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'BMultiSelect',\n props: {\n inputId: { default: '' },\n modelValue: {},\n label: { default: '' },\n items: {},\n disabled: { type: Boolean, default: false },\n placeholder: { default: '' },\n valueCssClass: { default: '' },\n menuCssClass: { default: '' },\n validationRules: { default: undefined },\n required: { type: Boolean, default: false },\n requiredErrorMessage: { default: '' },\n hideDetails: { type: Boolean, default: false },\n showSelectedItemCount: { type: Boolean, default: false },\n allowInput: { type: Boolean, default: false }\n },\n emits: [\n 'update:modelValue',\n 'change',\n 'open',\n 'close',\n 'change:input',\n],\n setup(__props: any, { expose: __expose, emit }) {\n\nconst props = __props;\n\n// https://vuejs.org/guide/essentials/event-handling.html#event-modifiers\n\n\n/**\n * Events\n */\n\n\n\n/**\n * Data\n */\nconst selectEl = ref<HTMLElement | null>(null);\nconst inputRef = ref<InstanceType<typeof BTextField> | null>(null);\nconst selectMenuEl = ref<HTMLElement | null>(null);\nconst selectMenu = ref(false);\nconst { t } = useI18n();\nconst validateRequired: ValidationRule = {\n validateRule: (val: Array<string | number>) => !!val && val.length > 0,\n errorMessage: () =>\n props.requiredErrorMessage || t('ds.global.field_required'),\n};\nconst inputText = ref('');\nconst selectedItems = ref<DisplayItem[]>([]);\nconst id = computed(() => props.inputId || `id-${uuid()}`);\nconst value = computed({\n get() {\n return props.modelValue;\n },\n set(val) {\n emit('update:modelValue', val);\n },\n});\nconst btnCssClass = computed(() => {\n let result = `ds-border ds-drop-shadow-light ds-text-sm ds-h-[40px] ds-px-3 ds-rounded-lg ds-block ds-w-full ds-inline-flex ds-items-center ds-justify-between `;\n result += props.disabled\n ? `ds-cursor-not-allowed ds-bg-[#f2f2f2] ds-text-black/[0.4] `\n : `ds-bg-white ds-text-black/[0.85] `;\n result += !validationResult.value.valid\n ? `ds-border-error focus:ds-ring-1 focus:ds-ring-error `\n : `ds-border-black/10 focus:ds-border-focus focus:ds-ring-1 focus:ds-ring-focus `;\n\n return result;\n});\nconst vRules = computed(() => {\n let result: ValidationRule[] = [];\n\n if (props.required) {\n result.push(validateRequired);\n }\n if (props.validationRules) {\n result = result.concat(props.validationRules);\n }\n\n return result.length ? result : undefined;\n});\nconst selectedItemCount = computed(() =>\n value.value?.length > 1\n ? ` (${t('ds.components.base.multi_select.selected_item_count', {\n count: value.value?.length,\n })})`\n : ''\n);\nconst labelDisplay = computed(() =>\n props.showSelectedItemCount\n ? `${props.label}${selectedItemCount.value}`\n : props.label\n);\nconst { validate, validationResult } = useValidationField(\n id.value,\n value,\n vRules.value\n);\n\n/**\n * Watch\n */\nwatch(selectMenu, (val) => {\n if (val) {\n lockScrollBody();\n ensureMenuPosition();\n emit('open');\n } else {\n unlockScrollBody();\n resetMenuPosition();\n emit('close');\n }\n});\nwatch(\n value,\n () => {\n ensureSelectedItems();\n },\n {\n deep: true,\n }\n);\nwatch(\n () => props.items,\n () => {\n if (value.value.length !== 0 && selectedItems.value.length === 0) {\n ensureSelectedItems();\n }\n },\n {\n deep: true,\n }\n);\n\n/**\n * Methods\n */\nconst ensureSelectedItems = () => {\n selectedItems.value = value.value.map((v) => {\n let item = selectedItems.value.find((i) => i.value === v);\n if (!item) {\n item = props.items.find((i) => i.value === v);\n }\n return { text: item?.text, value: v, cssClass: item?.cssClass };\n });\n};\nconst initPressEscapeEventListener = () => {\n document.addEventListener('keydown', closeOnEscapePressed);\n};\nconst closeOnEscapePressed = (event: KeyboardEvent) => {\n if (event.key === 'Escape') {\n closeSelectMenu();\n }\n};\nconst initClickOutsideEventListener = () => {\n document.addEventListener('click', closeOnClickOutside);\n};\nconst closeOnClickOutside = (event: any) => {\n const refs = [selectEl.value, selectMenuEl.value];\n const withinBoundaries = refs.some((r) => event.composedPath().includes(r));\n if (!withinBoundaries) {\n closeSelectMenu();\n }\n};\nconst onClickItem = (item: DisplayItem) => {\n const index = value.value.findIndex((v) => v === item.value);\n if (index !== -1) {\n value.value.splice(index, 1);\n } else {\n value.value.push(item.value);\n }\n emit('change', item.value);\n nextTick(() => {\n validate();\n });\n};\nconst ensureMenuWidth = (parentEl: HTMLElement, menuEl: HTMLElement) => {\n menuEl.style.width = `${parentEl.offsetWidth}px`;\n};\nconst ensureMenuPosition = () => {\n nextTick(() => {\n ensureVisiblePosition(selectEl.value!, selectMenuEl.value!);\n ensureMenuWidth(selectEl.value!, selectMenuEl.value!);\n });\n};\nconst resetMenuPosition = () => {\n resetPosition(selectEl.value!, selectMenuEl.value!);\n};\nconst onChangeInputText = (text: string) => {\n emit('change:input', text);\n};\nconst closeSelectMenu = () => {\n selectMenu.value = false;\n inputRef.value?.blur();\n inputText.value = '';\n};\nconst deselectItem = (item: DisplayItem) => {\n const index = value.value.findIndex((v) => v === item.value);\n if (index !== -1) {\n value.value.splice(index, 1);\n emit('change', item.value);\n nextTick(() => {\n validate();\n });\n }\n};\nconst init = () => {\n if (props.items.length > 0) {\n ensureSelectedItems();\n }\n};\ninit();\n\n/**\n * Lifecycle Hooks\n */\nonMounted(() => {\n initPressEscapeEventListener();\n initClickOutsideEventListener();\n});\nonBeforeUnmount(() => {\n document.removeEventListener('keydown', closeOnEscapePressed);\n document.removeEventListener('click', closeOnClickOutside);\n unlockScrollBody();\n // Make sure dropdown menu unmounted with itself\n resetMenuPosition();\n});\n\n__expose({ validate, selectMenu });\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", null, [\n _createElementVNode(\"div\", {\n ref_key: \"selectEl\",\n ref: selectEl\n }, [\n _createVNode(BLabel, {\n id: id.value,\n label: labelDisplay.value,\n required: _ctx.required\n }, null, 8, [\"id\", \"label\", \"required\"]),\n (props.allowInput)\n ? (_openBlock(), _createElementBlock(\"div\", {\n key: 0,\n class: _normalizeClass([\"ds-relative ds-flex ds-flex-wrap ds-items-center ds-gap-x-1 ds-rounded-lg ds-border ds-bg-white ds-px-3 ds-py-1 ds-drop-shadow-light\", {\n 'ds-border-focus ds-ring-1 ds-ring-focus':\n selectMenu.value && _unref(validationResult).valid,\n 'ds-ring-1 ds-ring-error': selectMenu.value && !_unref(validationResult).valid,\n 'ds-border-black/10': _unref(validationResult).valid,\n 'ds-border-error': !_unref(validationResult).valid,\n }])\n }, [\n _createElementVNode(\"div\", _hoisted_1, [\n _createElementVNode(\"i\", {\n class: _normalizeClass(`fa-solid fa-caret-down ds-transition-transform ${\n selectMenu.value ? 'ds-rotate-180' : ''\n }`),\n onClick: _cache[0] || (_cache[0] = ($event: any) => (inputRef.value?.focus()))\n }, null, 2)\n ]),\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(selectedItems.value, (item, i) => {\n return (_openBlock(), _createElementBlock(\"div\", {\n key: `item${i}`,\n class: \"ds-my-0.5 ds-flex-initial ds-space-x-1 ds-rounded-lg ds-bg-black/10 ds-px-2\"\n }, [\n _createElementVNode(\"span\", null, _toDisplayString(item.text), 1),\n _createElementVNode(\"i\", {\n class: \"fa-solid fa-circle-xmark ds-cursor-pointer ds-text-black/60 hover:ds-text-black/40\",\n onClick: ($event: any) => (deselectItem(item))\n }, null, 8, _hoisted_2)\n ]))\n }), 128)),\n (props.allowInput)\n ? (_openBlock(), _createBlock(BTextField, {\n key: 0,\n ref_key: \"inputRef\",\n ref: inputRef,\n id: id.value,\n class: \"ds-flex-auto\",\n \"input-css-class\": \"ds-drop-shadow-none ds-border-none !ds-ring-0 ds-px-0 !ds-h-[30px] ds-pl-0\",\n modelValue: inputText.value,\n \"onUpdate:modelValue\": [\n _cache[1] || (_cache[1] = ($event: any) => ((inputText).value = $event)),\n onChangeInputText\n ],\n disabled: props.disabled,\n \"hide-details\": \"\",\n onFocus: _cache[2] || (_cache[2] = ($event: any) => (selectMenu.value = true))\n }, null, 8, [\"id\", \"modelValue\", \"disabled\"]))\n : _createCommentVNode(\"\", true)\n ], 2))\n : (_openBlock(), _createElementBlock(\"button\", {\n key: 1,\n id: id.value,\n class: _normalizeClass(btnCssClass.value),\n disabled: _ctx.disabled,\n type: \"button\",\n onClick: _cache[3] || (_cache[3] = ($event: any) => (selectMenu.value = !selectMenu.value))\n }, [\n (selectedItems.value.length > 0)\n ? (_openBlock(), _createElementBlock(\"span\", {\n key: 0,\n class: _normalizeClass([\"ds-truncate ds-text-sm\", _ctx.valueCssClass])\n }, _toDisplayString(selectedItems.value?.map((s) => s.text).join(', ')), 3))\n : (_openBlock(), _createElementBlock(\"span\", {\n key: 1,\n class: _normalizeClass([\"ds-truncate ds-text-sm ds-text-black/[0.4]\", _ctx.valueCssClass])\n }, _toDisplayString(props.placeholder), 3)),\n _createTextVNode(\" \"),\n _createElementVNode(\"span\", {\n class: _normalizeClass([\"fa-solid fa-caret-down ds-text-base ds-transition-transform\", `${selectMenu.value ? 'ds-rotate-180' : ''}`])\n }, null, 2)\n ], 10, _hoisted_3)),\n _withDirectives(_createElementVNode(\"div\", {\n id: `${id.value}Menu`,\n ref_key: \"selectMenuEl\",\n ref: selectMenuEl,\n class: _normalizeClass([\"ds-absolute ds-z-50 ds-min-w-[8rem] ds-py-1\", _ctx.menuCssClass]),\n \"data-ut\": _ctx.$attrs['data-ut'] ? `${_ctx.$attrs['data-ut']}Menu` : undefined,\n \"data-cy\": _ctx.$attrs['data-cy'] ? `${_ctx.$attrs['data-cy']}Menu` : undefined\n }, [\n _createElementVNode(\"div\", _hoisted_5, [\n _createElementVNode(\"ul\", _hoisted_6, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.items, (item, index) => {\n return (_openBlock(), _createElementBlock(\"li\", {\n key: `item${index}`,\n class: \"ds-cursor-pointer\",\n onClick: _withModifiers(($event: any) => (onClickItem(item)), [\"prevent\"])\n }, [\n _createElementVNode(\"a\", {\n class: _normalizeClass([\"ds-flex ds-items-center ds-space-x-2 ds-px-4 ds-py-2 hover:ds-bg-slate-100\", \n item.cssClass +\n `${\n selectedItems.value.some((s) => s.value === item.value)\n ? ' ds-bg-slate-100'\n : ''\n }`\n ])\n }, [\n _createVNode(BCheckbox, {\n modelValue: value.value,\n \"onUpdate:modelValue\": _cache[4] || (_cache[4] = ($event: any) => ((value).value = $event)),\n value: item.value,\n size: \"sm\"\n }, null, 8, [\"modelValue\", \"value\"]),\n _createElementVNode(\"span\", null, _toDisplayString(item?.text), 1)\n ], 2)\n ], 8, _hoisted_7))\n }), 128))\n ])\n ])\n ], 10, _hoisted_4), [\n [_vShow, selectMenu.value]\n ])\n ], 512),\n (!_ctx.hideDetails)\n ? (_openBlock(), _createBlock(BErrorMessage, {\n key: 0,\n class: \"ds-mt-1\",\n \"error-message\": _unref(validationResult).errorMessage(),\n \"prepend-icon\": \"fa-solid fa-circle-exclamation\"\n }, null, 8, [\"error-message\"]))\n : _createCommentVNode(\"\", true)\n ]))\n}\n}\n\n})"],"names":["_hoisted_1","_hoisted_2","_hoisted_3","_hoisted_4","_hoisted_5","_hoisted_6","_hoisted_7","_sfc_main","_defineComponent","__props","__expose","emit","props","selectEl","ref","inputRef","selectMenuEl","selectMenu","t","useI18n","validateRequired","val","inputText","selectedItems","id","computed","uuid","value","btnCssClass","result","validationResult","vRules","selectedItemCount","_a","_b","labelDisplay","validate","useValidationField","watch","lockScrollBody","ensureMenuPosition","unlockScrollBody","resetMenuPosition","ensureSelectedItems","v","item","i","initPressEscapeEventListener","closeOnEscapePressed","event","closeSelectMenu","initClickOutsideEventListener","closeOnClickOutside","r","onClickItem","index","nextTick","ensureMenuWidth","parentEl","menuEl","ensureVisiblePosition","resetPosition","onChangeInputText","text","deselectItem","onMounted","onBeforeUnmount","_ctx","_cache","_openBlock","_createElementBlock","_createElementVNode","_createVNode","BLabel","_normalizeClass","_unref","$event","_Fragment","_renderList","_toDisplayString","_createBlock","BTextField","_createCommentVNode","s","_createTextVNode","_withDirectives","_withModifiers","BCheckbox","_vShow","BErrorMessage"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"design-system15.mjs","sources":["../src/components/BOtpField/BOtpField.vue?vue&type=script&setup=true&lang.ts"],"sourcesContent":["import { defineComponent as _defineComponent } from 'vue'\nimport { renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, normalizeClass as _normalizeClass, createBlock as _createBlock, createElementVNode as _createElementVNode, unref as _unref, createCommentVNode as _createCommentVNode } from \"vue\"\n\nconst _hoisted_1 = { class: \"ds-flex ds-items-center ds-justify-center ds-space-x-2\" }\n\nimport BErrorMessage from '@/components/BErrorMessage.vue';\nimport {\n useValidationField,\n type ValidationRule,\n} from '@/composables/Validation';\nimport type { BOtpFieldProps } from '@/types';\nimport { cloneDeep } from 'lodash-es';\nimport { v4 as uuid } from 'uuid';\nimport { computed, ref } from 'vue';\nimport { useI18n } from 'vue-i18n';\nimport BOtpFieldBox from './BOtpFieldBox.vue';\n\n/**\n * Props\n */\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'BOtpField',\n props: {\n inputId: { default: '' },\n modelValue: { default: '' },\n numInputs: { default: 6 },\n focusIndex: { default: undefined },\n disabled: { type: Boolean, default: false },\n inputCssClass: { default: '' },\n validationRules: { default: undefined },\n required: { type: Boolean, default: false },\n requiredErrorMessage: { default: '' },\n hideDetails: { type: Boolean, default: false }\n },\n emits: [\n 'complete',\n 'change',\n 'update:modelValue',\n 'update:focusIndex',\n],\n setup(__props: any, { expose: __expose, emit }) {\n\nconst props = __props;\n\n// Sourcecode: https://github.com/ejirocodes/vue3-otp-input\n\n\n/**\n * Events\n */\n\n\n/**\n * Data\n */\nconst { t } = useI18n();\nconst validateRequired: ValidationRule = {\n validateRule: (val: string) => !!val,\n errorMessage: () =>\n props.requiredErrorMessage || t('ds.global.field_required'),\n};\nconst fIndex = ref(0);\nconst oldOtp = ref<any[]>([]);\nconst boxRefs = ref<Array<InstanceType<typeof BOtpFieldBox>> | null>(null);\nconst handleOnFocus = (index: number) => {\n focusIndexValue.value = index;\n};\nconst handleOnBlur = () => {\n focusIndexValue.value = -1;\n};\nconst id = computed(() => props.inputId || `id-${uuid()}`);\nconst value = computed<any[]>({\n get() {\n return props.modelValue.split('');\n },\n set(val: any) {\n emit('update:modelValue', val.join(''));\n },\n});\nconst originalValue = computed(() => props.modelValue);\nconst focusIndexValue = computed({\n get() {\n return props.focusIndex !== undefined ? props.focusIndex : fIndex.value;\n },\n set(val: number) {\n if (props.focusIndex !== undefined) {\n emit('update:focusIndex', val);\n } else {\n fIndex.value = val;\n }\n },\n});\nconst vRules = computed(() => {\n let result: ValidationRule[] = [];\n\n if (props.required) {\n result.push(validateRequired);\n }\n if (props.validationRules) {\n result = result.concat(props.validationRules);\n }\n\n return result.length ? result : undefined;\n});\nconst inputCssClassValue = computed(() => [\n ...[\n props.disabled\n ? 'ds-cursor-not-allowed ds-bg-[#f2f2f2] ds-text-black/[0.4]'\n : 'ds-text-black/[0.85]',\n validationResult.value.valid\n ? 'ds-border-black/[0.1] focus:ds-border-focus focus:ds-ring-1 focus:ds-ring-focus'\n : 'ds-border-error focus:ds-ring-1 focus:ds-ring-error',\n ],\n props.inputCssClass,\n]);\n\nconst { validate, validationResult } = useValidationField(\n id.value,\n originalValue,\n vRules.value\n);\n\n/**\n * Methods\n */\nconst focus = () => {\n boxRefs.value![focusIndexValue.value].focus();\n};\nconst checkFilledAllInputs = () => {\n if (value.value.join('').length === props.numInputs) {\n return emit('complete', value.value.join(''));\n }\n return 'Wait until the user enters the required number of characters';\n};\n// Focus on input by index\nconst focusInput = (input: number) => {\n focusIndexValue.value = Math.max(Math.min(props.numInputs - 1, input), 0);\n};\n// Focus on next input\nconst focusNextInput = () => {\n focusInput(focusIndexValue.value + 1);\n};\n// Focus on previous input\nconst focusPrevInput = () => {\n focusInput(focusIndexValue.value - 1);\n};\n// Change OTP value at focused input\nconst changeCodeAtFocus = (val: number | string) => {\n oldOtp.value = [...value.value];\n\n value.value[focusIndexValue.value] = val;\n value.value = cloneDeep(value.value);\n\n const oldOtpStr = oldOtp.value.join('');\n const otpStr = value.value.join('');\n if (oldOtpStr !== otpStr) {\n emit('change', otpStr);\n checkFilledAllInputs();\n }\n};\n// Handle pasted OTP\nconst handleOnPaste = (event: any) => {\n event.preventDefault();\n const pastedData = event.clipboardData\n .getData('text/plain')\n .slice(0, props.numInputs - focusIndexValue.value)\n .split('');\n if (!pastedData.join('').match(/^\\d+$/)) {\n return 'Invalid pasted data';\n }\n\n // Paste data from focused input onwards\n const currentCharsInOtp = value.value.slice(0, focusIndexValue.value);\n const combinedWithPastedData = currentCharsInOtp.concat(pastedData);\n\n combinedWithPastedData.slice(0, props.numInputs).forEach((val, i) => {\n value.value[i] = val;\n });\n\n focusInput(combinedWithPastedData.slice(0, props.numInputs).length);\n\n // Update modelValue when data is pasted from keyboard\n emit('update:modelValue', value.value.join(''));\n // Check if `complete`\n return checkFilledAllInputs();\n};\nconst handleOnChange = (val: number) => {\n changeCodeAtFocus(val);\n focusNextInput();\n};\n// Handle cases of backspace, delete, left arrow, right arrow\nconst handleOnKeyDown = (event: KeyboardEvent) => {\n switch (event.key) {\n case 'Backspace':\n event.preventDefault();\n changeCodeAtFocus('');\n focusPrevInput();\n break;\n case 'Delete':\n event.preventDefault();\n changeCodeAtFocus('');\n break;\n case 'ArrowLeft':\n event.preventDefault();\n focusPrevInput();\n break;\n case 'ArrowRight':\n event.preventDefault();\n focusNextInput();\n break;\n default:\n break;\n }\n};\nconst handleOnKeyUp = () => {\n validate();\n};\n\n__expose({ validate, focus });\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", null, [\n _createElementVNode(\"div\", _hoisted_1, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.numInputs, (_, i) => {\n return (_openBlock(), _createBlock(BOtpFieldBox, {\n key: i,\n ref_for: true,\n ref_key: \"boxRefs\",\n ref: boxRefs,\n class: _normalizeClass(inputCssClassValue.value),\n focus: focusIndexValue.value === i,\n \"is-disabled\": _ctx.disabled,\n value: value.value[i],\n onOnChange: handleOnChange,\n onOnKeydown: handleOnKeyDown,\n onOnKeyup: handleOnKeyUp,\n onOnPaste: handleOnPaste,\n onOnFocus: ($event: any) => (handleOnFocus(i)),\n onOnBlur: handleOnBlur\n }, null, 8, [\"class\", \"focus\", \"is-disabled\", \"value\", \"onOnFocus\"]))\n }), 128))\n ]),\n (!_ctx.hideDetails)\n ? (_openBlock(), _createBlock(BErrorMessage, {\n key: 0,\n \"error-message\": _unref(validationResult).errorMessage(),\n class: \"ds-mt-1\"\n }, null, 8, [\"error-message\"]))\n : _createCommentVNode(\"\", true)\n ]))\n}\n}\n\n})"],"names":["_hoisted_1","_sfc_main","_defineComponent","__props","__expose","emit","props","t","useI18n","validateRequired","val","fIndex","ref","oldOtp","boxRefs","handleOnFocus","index","focusIndexValue","handleOnBlur","id","computed","uuid","value","originalValue","vRules","result","inputCssClassValue","validationResult","validate","useValidationField","focus","checkFilledAllInputs","focusInput","input","focusNextInput","focusPrevInput","changeCodeAtFocus","cloneDeep","oldOtpStr","otpStr","handleOnPaste","event","pastedData","combinedWithPastedData","i","handleOnChange","handleOnKeyDown","handleOnKeyUp","_ctx","_cache","_openBlock","_createElementBlock","_createElementVNode","_Fragment","_renderList","_","_createBlock","BOtpFieldBox","_normalizeClass","$event","_createCommentVNode","BErrorMessage","_unref"],"mappings":"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"}
|
package/dist/design-system150.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";const
|
|
1
|
+
"use strict";const e=require("./design-system149.js");var n=Object.prototype,s=n.hasOwnProperty,g=n.toString,r=e?e.toStringTag:void 0;function y(t){var o=s.call(t,r),a=t[r];try{t[r]=void 0;var i=!0}catch{}var c=g.call(t);return i&&(o?t[r]=a:delete t[r]),c}module.exports=y;
|
|
2
2
|
//# sourceMappingURL=design-system150.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"design-system150.js","sources":["../node_modules/lodash-es/
|
|
1
|
+
{"version":3,"file":"design-system150.js","sources":["../node_modules/lodash-es/_getRawTag.js"],"sourcesContent":["import Symbol from './_Symbol.js';\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Used to resolve the\n * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)\n * of values.\n */\nvar nativeObjectToString = objectProto.toString;\n\n/** Built-in value references. */\nvar symToStringTag = Symbol ? Symbol.toStringTag : undefined;\n\n/**\n * A specialized version of `baseGetTag` which ignores `Symbol.toStringTag` values.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the raw `toStringTag`.\n */\nfunction getRawTag(value) {\n var isOwn = hasOwnProperty.call(value, symToStringTag),\n tag = value[symToStringTag];\n\n try {\n value[symToStringTag] = undefined;\n var unmasked = true;\n } catch (e) {}\n\n var result = nativeObjectToString.call(value);\n if (unmasked) {\n if (isOwn) {\n value[symToStringTag] = tag;\n } else {\n delete value[symToStringTag];\n }\n }\n return result;\n}\n\nexport default getRawTag;\n"],"names":["objectProto","hasOwnProperty","nativeObjectToString","symToStringTag","Symbol","getRawTag","value","isOwn","tag","unmasked","result"],"mappings":"sDAGA,IAAIA,EAAc,OAAO,UAGrBC,EAAiBD,EAAY,eAO7BE,EAAuBF,EAAY,SAGnCG,EAAiBC,EAASA,EAAO,YAAc,OASnD,SAASC,EAAUC,EAAO,CACxB,IAAIC,EAAQN,EAAe,KAAKK,EAAOH,CAAc,EACjDK,EAAMF,EAAMH,CAAc,EAE9B,GAAI,CACFG,EAAMH,CAAc,EAAI,OACxB,IAAIM,EAAW,EACnB,MAAc,CAAE,CAEd,IAAIC,EAASR,EAAqB,KAAKI,CAAK,EAC5C,OAAIG,IACEF,EACFD,EAAMH,CAAc,EAAIK,EAExB,OAAOF,EAAMH,CAAc,GAGxBO,CACT","x_google_ignoreList":[0]}
|
|
@@ -1,8 +1,16 @@
|
|
|
1
|
-
import
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
1
|
+
import e from "./design-system149.mjs";
|
|
2
|
+
var o = Object.prototype, c = o.hasOwnProperty, f = o.toString, r = e ? e.toStringTag : void 0;
|
|
3
|
+
function p(t) {
|
|
4
|
+
var a = c.call(t, r), n = t[r];
|
|
5
|
+
try {
|
|
6
|
+
t[r] = void 0;
|
|
7
|
+
var i = !0;
|
|
8
|
+
} catch {
|
|
9
|
+
}
|
|
10
|
+
var g = f.call(t);
|
|
11
|
+
return i && (a ? t[r] = n : delete t[r]), g;
|
|
12
|
+
}
|
|
5
13
|
export {
|
|
6
|
-
|
|
14
|
+
p as default
|
|
7
15
|
};
|
|
8
16
|
//# sourceMappingURL=design-system150.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"design-system150.mjs","sources":["../node_modules/lodash-es/
|
|
1
|
+
{"version":3,"file":"design-system150.mjs","sources":["../node_modules/lodash-es/_getRawTag.js"],"sourcesContent":["import Symbol from './_Symbol.js';\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Used to resolve the\n * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)\n * of values.\n */\nvar nativeObjectToString = objectProto.toString;\n\n/** Built-in value references. */\nvar symToStringTag = Symbol ? Symbol.toStringTag : undefined;\n\n/**\n * A specialized version of `baseGetTag` which ignores `Symbol.toStringTag` values.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the raw `toStringTag`.\n */\nfunction getRawTag(value) {\n var isOwn = hasOwnProperty.call(value, symToStringTag),\n tag = value[symToStringTag];\n\n try {\n value[symToStringTag] = undefined;\n var unmasked = true;\n } catch (e) {}\n\n var result = nativeObjectToString.call(value);\n if (unmasked) {\n if (isOwn) {\n value[symToStringTag] = tag;\n } else {\n delete value[symToStringTag];\n }\n }\n return result;\n}\n\nexport default getRawTag;\n"],"names":["objectProto","hasOwnProperty","nativeObjectToString","symToStringTag","Symbol","getRawTag","value","isOwn","tag","unmasked","result"],"mappings":";AAGA,IAAIA,IAAc,OAAO,WAGrBC,IAAiBD,EAAY,gBAO7BE,IAAuBF,EAAY,UAGnCG,IAAiBC,IAASA,EAAO,cAAc;AASnD,SAASC,EAAUC,GAAO;AACxB,MAAIC,IAAQN,EAAe,KAAKK,GAAOH,CAAc,GACjDK,IAAMF,EAAMH,CAAc;AAE9B,MAAI;AACF,IAAAG,EAAMH,CAAc,IAAI;AACxB,QAAIM,IAAW;AAAA,EACnB,QAAc;AAAA,EAAE;AAEd,MAAIC,IAASR,EAAqB,KAAKI,CAAK;AAC5C,SAAIG,MACEF,IACFD,EAAMH,CAAc,IAAIK,IAExB,OAAOF,EAAMH,CAAc,IAGxBO;AACT;","x_google_ignoreList":[0]}
|
package/dist/design-system151.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";
|
|
1
|
+
"use strict";var o=Object.prototype,r=o.toString;function e(t){return r.call(t)}module.exports=e;
|
|
2
2
|
//# sourceMappingURL=design-system151.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"design-system151.js","sources":["../node_modules/lodash-es/
|
|
1
|
+
{"version":3,"file":"design-system151.js","sources":["../node_modules/lodash-es/_objectToString.js"],"sourcesContent":["/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/**\n * Used to resolve the\n * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)\n * of values.\n */\nvar nativeObjectToString = objectProto.toString;\n\n/**\n * Converts `value` to a string using `Object.prototype.toString`.\n *\n * @private\n * @param {*} value The value to convert.\n * @returns {string} Returns the converted string.\n */\nfunction objectToString(value) {\n return nativeObjectToString.call(value);\n}\n\nexport default objectToString;\n"],"names":["objectProto","nativeObjectToString","objectToString","value"],"mappings":"aACA,IAAIA,EAAc,OAAO,UAOrBC,EAAuBD,EAAY,SASvC,SAASE,EAAeC,EAAO,CAC7B,OAAOF,EAAqB,KAAKE,CAAK,CACxC","x_google_ignoreList":[0]}
|