bitboss-ui 2.0.5 → 2.0.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/BaseDialog/BaseDialog.vue.d.ts +1 -3
- package/dist/composables/useOptions.d.ts +1 -1
- package/dist/index.js +138 -137
- package/dist/index.js.map +1 -1
- package/dist/index10.js +74 -35
- package/dist/index10.js.map +1 -1
- package/dist/{index99.js → index100.js} +3 -3
- package/dist/index100.js.map +1 -0
- package/dist/{index101.js → index102.js} +3 -3
- package/dist/{index101.js.map → index102.js.map} +1 -1
- package/dist/{index103.js → index104.js} +8 -8
- package/dist/{index103.js.map → index104.js.map} +1 -1
- package/dist/{index105.js → index106.js} +10 -10
- package/dist/{index105.js.map → index106.js.map} +1 -1
- package/dist/{index107.js → index108.js} +3 -3
- package/dist/{index107.js.map → index108.js.map} +1 -1
- package/dist/index11.js +36 -189
- package/dist/index11.js.map +1 -1
- package/dist/{index109.js → index110.js} +3 -3
- package/dist/{index109.js.map → index110.js.map} +1 -1
- package/dist/{index111.js → index112.js} +3 -3
- package/dist/{index111.js.map → index112.js.map} +1 -1
- package/dist/{index113.js → index114.js} +3 -3
- package/dist/{index113.js.map → index114.js.map} +1 -1
- package/dist/{index115.js → index116.js} +8 -8
- package/dist/{index115.js.map → index116.js.map} +1 -1
- package/dist/{index117.js → index118.js} +1 -1
- package/dist/{index117.js.map → index118.js.map} +1 -1
- package/dist/index12.js +189 -78
- package/dist/index12.js.map +1 -1
- package/dist/index120.js +34 -38
- package/dist/index120.js.map +1 -1
- package/dist/index121.js +38 -38
- package/dist/index121.js.map +1 -1
- package/dist/index122.js +39 -42
- package/dist/index122.js.map +1 -1
- package/dist/index123.js +43 -31
- package/dist/index123.js.map +1 -1
- package/dist/index124.js +35 -2
- package/dist/index124.js.map +1 -1
- package/dist/index125.js +2 -21
- package/dist/index125.js.map +1 -1
- package/dist/index126.js +21 -2
- package/dist/index126.js.map +1 -1
- package/dist/index127.js +2 -312
- package/dist/index127.js.map +1 -1
- package/dist/index128.js +309 -21
- package/dist/index128.js.map +1 -1
- package/dist/index129.js +24 -2
- package/dist/index129.js.map +1 -1
- package/dist/index13.js +85 -0
- package/dist/index13.js.map +1 -0
- package/dist/index130.js +2 -5
- package/dist/index130.js.map +1 -1
- package/dist/index131.js +5 -9
- package/dist/index131.js.map +1 -1
- package/dist/index132.js +8 -5
- package/dist/index132.js.map +1 -1
- package/dist/index133.js +6 -3
- package/dist/index133.js.map +1 -1
- package/dist/index134.js +1 -1
- package/dist/index135.js +1 -1
- package/dist/index136.js +1 -1
- package/dist/index137.js +1 -1
- package/dist/index138.js +1 -1
- package/dist/index139.js +1 -1
- package/dist/index140.js +1 -1
- package/dist/index141.js +1 -1
- package/dist/index142.js +1 -1
- package/dist/index143.js +1 -1
- package/dist/index144.js +1 -1
- package/dist/index145.js +1 -1
- package/dist/index146.js +1 -1
- package/dist/index147.js +1 -1
- package/dist/index148.js +1 -1
- package/dist/index149.js +1 -1
- package/dist/{index14.js → index15.js} +4 -4
- package/dist/{index14.js.map → index15.js.map} +1 -1
- package/dist/index150.js +1 -1
- package/dist/index151.js +1 -1
- package/dist/index152.js +1 -1
- package/dist/index153.js +1 -1
- package/dist/index154.js +1 -1
- package/dist/index155.js +1 -1
- package/dist/index156.js +1 -1
- package/dist/index157.js +1 -1
- package/dist/index158.js +1 -1
- package/dist/index159.js +2 -2
- package/dist/{index161.js → index160.js} +1 -1
- package/dist/index160.js.map +1 -0
- package/dist/index162.js +6 -0
- package/dist/index162.js.map +1 -0
- package/dist/index164.js +1 -1
- package/dist/index165.js +1 -1
- package/dist/index166.js +1 -1
- package/dist/index167.js +1 -1
- package/dist/index168.js +1 -1
- package/dist/index169.js +2 -2
- package/dist/{index16.js → index17.js} +4 -4
- package/dist/{index16.js.map → index17.js.map} +1 -1
- package/dist/index170.js +6 -0
- package/dist/index170.js.map +1 -0
- package/dist/index172.js +2 -3
- package/dist/index172.js.map +1 -1
- package/dist/index173.js +1 -1
- package/dist/index174.js +1 -1
- package/dist/index175.js +1 -1
- package/dist/index176.js +1 -1
- package/dist/index177.js +1 -1
- package/dist/index178.js +1 -1
- package/dist/index179.js +1 -1
- package/dist/index180.js +1 -1
- package/dist/index181.js +1 -1
- package/dist/index182.js +1 -1
- package/dist/index183.js +2 -2
- package/dist/{index185.js → index184.js} +1 -1
- package/dist/index184.js.map +1 -0
- package/dist/index186.js +6 -0
- package/dist/index186.js.map +1 -0
- package/dist/index188.js +1 -1
- package/dist/index189.js +1 -1
- package/dist/{index18.js → index19.js} +76 -74
- package/dist/index19.js.map +1 -0
- package/dist/index190.js +1 -1
- package/dist/index191.js +1 -1
- package/dist/index192.js +1 -1
- package/dist/index193.js +1 -1
- package/dist/index194.js +1 -1
- package/dist/index195.js +1 -1
- package/dist/index196.js +1 -1
- package/dist/index197.js +3 -81
- package/dist/index197.js.map +1 -1
- package/dist/index198.js +81 -3
- package/dist/index198.js.map +1 -1
- package/dist/index199.js +2 -5
- package/dist/index199.js.map +1 -1
- package/dist/index200.js +2 -16
- package/dist/index200.js.map +1 -1
- package/dist/index201.js +4 -16
- package/dist/index201.js.map +1 -1
- package/dist/index202.js +2 -19
- package/dist/index202.js.map +1 -1
- package/dist/index203.js +8 -19
- package/dist/index203.js.map +1 -1
- package/dist/index204.js +124 -25
- package/dist/index204.js.map +1 -1
- package/dist/index205.js +5 -3
- package/dist/index205.js.map +1 -1
- package/dist/index206.js +123 -2
- package/dist/index206.js.map +1 -1
- package/dist/index207.js +19 -8
- package/dist/index207.js.map +1 -1
- package/dist/index208.js +14 -247
- package/dist/index208.js.map +1 -1
- package/dist/index209.js +19 -0
- package/dist/index209.js.map +1 -0
- package/dist/{index20.js → index21.js} +26 -27
- package/dist/index21.js.map +1 -0
- package/dist/index210.js +2 -52
- package/dist/index210.js.map +1 -1
- package/dist/index211.js +2 -37
- package/dist/index211.js.map +1 -1
- package/dist/index212.js +35 -5
- package/dist/index212.js.map +1 -1
- package/dist/index213.js +174 -41
- package/dist/index213.js.map +1 -1
- package/dist/index214.js +6 -2
- package/dist/index214.js.map +1 -1
- package/dist/index215.js +43 -4
- package/dist/index215.js.map +1 -1
- package/dist/index217.js +13 -2
- package/dist/index217.js.map +1 -1
- package/dist/index218.js +4 -41
- package/dist/index218.js.map +1 -1
- package/dist/{index233.js → index219.js} +4 -4
- package/dist/{index233.js.map → index219.js.map} +1 -1
- package/dist/index220.js +19 -13
- package/dist/index220.js.map +1 -1
- package/dist/index221.js +25 -156
- package/dist/index221.js.map +1 -1
- package/dist/index222.js +3 -84
- package/dist/index222.js.map +1 -1
- package/dist/index223.js +252 -0
- package/dist/index223.js.map +1 -0
- package/dist/index224.js +52 -3
- package/dist/index224.js.map +1 -1
- package/dist/index225.js +44 -35
- package/dist/index225.js.map +1 -1
- package/dist/index226.js +5 -6
- package/dist/index226.js.map +1 -1
- package/dist/index227.js +49 -7
- package/dist/index227.js.map +1 -1
- package/dist/index228.js +3 -126
- package/dist/index228.js.map +1 -1
- package/dist/index229.js +3 -123
- package/dist/index229.js.map +1 -1
- package/dist/{index22.js → index23.js} +74 -76
- package/dist/index23.js.map +1 -0
- package/dist/index230.js +7 -2
- package/dist/index230.js.map +1 -1
- package/dist/index231.js +152 -168
- package/dist/index231.js.map +1 -1
- package/dist/index232.js +84 -5
- package/dist/index232.js.map +1 -1
- package/dist/index234.js +2 -3
- package/dist/index234.js.map +1 -1
- package/dist/index235.js +1 -1
- package/dist/index236.js +3 -3
- package/dist/index238.js +2 -2
- package/dist/index243.js +4 -224
- package/dist/index243.js.map +1 -1
- package/dist/index244.js +6 -281
- package/dist/index244.js.map +1 -1
- package/dist/index245.js +16 -6
- package/dist/index245.js.map +1 -1
- package/dist/index246.js +9 -2
- package/dist/index246.js.map +1 -1
- package/dist/index247.js +23 -2
- package/dist/index247.js.map +1 -1
- package/dist/index248.js +9 -2
- package/dist/index248.js.map +1 -1
- package/dist/index249.js +281 -2
- package/dist/index249.js.map +1 -1
- package/dist/{index24.js → index25.js} +6 -6
- package/dist/{index24.js.map → index25.js.map} +1 -1
- package/dist/index250.js +6 -2
- package/dist/index250.js.map +1 -1
- package/dist/index251.js +2 -2
- package/dist/index252.js +2 -3
- package/dist/index252.js.map +1 -1
- package/dist/index253.js +2 -2
- package/dist/index254.js +2 -2
- package/dist/index255.js +2 -2
- package/dist/index256.js +122 -24
- package/dist/index256.js.map +1 -1
- package/dist/index257.js +429 -20
- package/dist/index257.js.map +1 -1
- package/dist/index258.js +6 -0
- package/dist/index258.js.map +1 -0
- package/dist/index260.js +6 -3
- package/dist/index260.js.map +1 -1
- package/dist/index261.js +21 -8
- package/dist/index261.js.map +1 -1
- package/dist/index263.js +2 -3
- package/dist/index263.js.map +1 -1
- package/dist/index264.js +5 -0
- package/dist/index264.js.map +1 -0
- package/dist/index265.js +1 -5
- package/dist/index265.js.map +1 -1
- package/dist/index266.js +2 -16
- package/dist/index266.js.map +1 -1
- package/dist/index267.js +2 -9
- package/dist/index267.js.map +1 -1
- package/dist/index268.js +2 -3
- package/dist/index268.js.map +1 -1
- package/dist/index269.js +28 -12
- package/dist/index269.js.map +1 -1
- package/dist/{index26.js → index27.js} +4 -4
- package/dist/{index26.js.map → index27.js.map} +1 -1
- package/dist/index270.js +21 -8
- package/dist/index270.js.map +1 -1
- package/dist/index272.js +224 -17
- package/dist/index272.js.map +1 -1
- package/dist/index273.js +82 -424
- package/dist/index273.js.map +1 -1
- package/dist/index274.js +197 -86
- package/dist/index274.js.map +1 -1
- package/dist/index275.js +436 -2
- package/dist/index275.js.map +1 -1
- package/dist/index276.js +126 -68
- package/dist/index276.js.map +1 -1
- package/dist/index278.js +2 -200
- package/dist/index278.js.map +1 -1
- package/dist/index279.js +9 -2
- package/dist/index279.js.map +1 -1
- package/dist/index280.js +68 -125
- package/dist/index280.js.map +1 -1
- package/dist/index281.js +3 -22
- package/dist/index281.js.map +1 -1
- package/dist/index282.js +15 -0
- package/dist/index282.js.map +1 -0
- package/dist/index283.js +7 -434
- package/dist/index283.js.map +1 -1
- package/dist/index284.js +16 -126
- package/dist/index284.js.map +1 -1
- package/dist/index287.js +12 -12
- package/dist/index287.js.map +1 -1
- package/dist/index288.js +18 -0
- package/dist/index288.js.map +1 -0
- package/dist/index289.js +4 -15
- package/dist/index289.js.map +1 -1
- package/dist/{index28.js → index29.js} +19 -19
- package/dist/index29.js.map +1 -0
- package/dist/index290.js +4 -7
- package/dist/index290.js.map +1 -1
- package/dist/index291.js +57 -17
- package/dist/index291.js.map +1 -1
- package/dist/index292.js +34 -6
- package/dist/index292.js.map +1 -1
- package/dist/index293.js +7 -4
- package/dist/index293.js.map +1 -1
- package/dist/index294.js +19 -4
- package/dist/index294.js.map +1 -1
- package/dist/index295.js +6 -58
- package/dist/index295.js.map +1 -1
- package/dist/index296.js +2 -35
- package/dist/index296.js.map +1 -1
- package/dist/index298.js +47 -2
- package/dist/index298.js.map +1 -1
- package/dist/index300.js +424 -0
- package/dist/index300.js.map +1 -0
- package/dist/index301.js +42 -416
- package/dist/index301.js.map +1 -1
- package/dist/{index30.js → index31.js} +4 -4
- package/dist/{index30.js.map → index31.js.map} +1 -1
- package/dist/{index32.js → index33.js} +41 -40
- package/dist/index33.js.map +1 -0
- package/dist/{index34.js → index35.js} +19 -18
- package/dist/{index34.js.map → index35.js.map} +1 -1
- package/dist/{index36.js → index37.js} +8 -7
- package/dist/index37.js.map +1 -0
- package/dist/{index38.js → index39.js} +4 -3
- package/dist/index39.js.map +1 -0
- package/dist/index4.js +14 -40
- package/dist/index4.js.map +1 -1
- package/dist/{index40.js → index41.js} +4 -4
- package/dist/{index40.js.map → index41.js.map} +1 -1
- package/dist/{index42.js → index43.js} +32 -31
- package/dist/{index42.js.map → index43.js.map} +1 -1
- package/dist/{index44.js → index45.js} +9 -9
- package/dist/index45.js.map +1 -0
- package/dist/{index46.js → index47.js} +3 -3
- package/dist/{index46.js.map → index47.js.map} +1 -1
- package/dist/{index48.js → index49.js} +4 -4
- package/dist/{index48.js.map → index49.js.map} +1 -1
- package/dist/index5.js +38 -76
- package/dist/index5.js.map +1 -1
- package/dist/index51.js +95 -0
- package/dist/index51.js.map +1 -0
- package/dist/{index52.js → index53.js} +3 -3
- package/dist/{index52.js.map → index53.js.map} +1 -1
- package/dist/{index54.js → index55.js} +3 -3
- package/dist/{index54.js.map → index55.js.map} +1 -1
- package/dist/{index56.js → index57.js} +2 -2
- package/dist/{index56.js.map → index57.js.map} +1 -1
- package/dist/{index58.js → index59.js} +7 -6
- package/dist/{index58.js.map → index59.js.map} +1 -1
- package/dist/index6.js +78 -62
- package/dist/index6.js.map +1 -1
- package/dist/{index60.js → index61.js} +3 -3
- package/dist/{index60.js.map → index61.js.map} +1 -1
- package/dist/{index62.js → index63.js} +3 -3
- package/dist/{index62.js.map → index63.js.map} +1 -1
- package/dist/{index64.js → index65.js} +5 -5
- package/dist/{index64.js.map → index65.js.map} +1 -1
- package/dist/{index66.js → index67.js} +3 -3
- package/dist/{index66.js.map → index67.js.map} +1 -1
- package/dist/{index68.js → index69.js} +2 -2
- package/dist/{index68.js.map → index69.js.map} +1 -1
- package/dist/index7.js +60 -18
- package/dist/index7.js.map +1 -1
- package/dist/{index70.js → index71.js} +9 -9
- package/dist/{index70.js.map → index71.js.map} +1 -1
- package/dist/{index72.js → index73.js} +3 -3
- package/dist/{index72.js.map → index73.js.map} +1 -1
- package/dist/{index74.js → index75.js} +5 -5
- package/dist/{index74.js.map → index75.js.map} +1 -1
- package/dist/index77.js +37 -120
- package/dist/index77.js.map +1 -1
- package/dist/index78.js +130 -0
- package/dist/index78.js.map +1 -0
- package/dist/index8.js +19 -7
- package/dist/index8.js.map +1 -1
- package/dist/{index79.js → index80.js} +5 -5
- package/dist/{index79.js.map → index80.js.map} +1 -1
- package/dist/{index81.js → index82.js} +7 -6
- package/dist/{index81.js.map → index82.js.map} +1 -1
- package/dist/{index83.js → index84.js} +7 -7
- package/dist/{index83.js.map → index84.js.map} +1 -1
- package/dist/{index85.js → index86.js} +3 -3
- package/dist/{index85.js.map → index86.js.map} +1 -1
- package/dist/{index87.js → index88.js} +3 -3
- package/dist/{index87.js.map → index88.js.map} +1 -1
- package/dist/index9.js +7 -78
- package/dist/index9.js.map +1 -1
- package/dist/{index89.js → index90.js} +3 -3
- package/dist/{index89.js.map → index90.js.map} +1 -1
- package/dist/{index91.js → index92.js} +3 -3
- package/dist/{index91.js.map → index92.js.map} +1 -1
- package/dist/{index93.js → index94.js} +1 -1
- package/dist/index94.js.map +1 -0
- package/dist/{index95.js → index96.js} +3 -3
- package/dist/{index95.js.map → index96.js.map} +1 -1
- package/dist/{index97.js → index98.js} +3 -3
- package/dist/{index97.js.map → index98.js.map} +1 -1
- package/dist/style.css +1 -1
- package/package.json +2 -2
- package/dist/index119.js +0 -47
- package/dist/index119.js.map +0 -1
- package/dist/index161.js.map +0 -1
- package/dist/index163.js +0 -6
- package/dist/index163.js.map +0 -1
- package/dist/index171.js +0 -5
- package/dist/index171.js.map +0 -1
- package/dist/index18.js.map +0 -1
- package/dist/index185.js.map +0 -1
- package/dist/index187.js +0 -6
- package/dist/index187.js.map +0 -1
- package/dist/index20.js.map +0 -1
- package/dist/index216.js +0 -5
- package/dist/index216.js.map +0 -1
- package/dist/index22.js.map +0 -1
- package/dist/index259.js +0 -10
- package/dist/index259.js.map +0 -1
- package/dist/index262.js +0 -26
- package/dist/index262.js.map +0 -1
- package/dist/index271.js +0 -12
- package/dist/index271.js.map +0 -1
- package/dist/index28.js.map +0 -1
- package/dist/index299.js +0 -50
- package/dist/index299.js.map +0 -1
- package/dist/index3.js +0 -17
- package/dist/index3.js.map +0 -1
- package/dist/index302.js +0 -50
- package/dist/index302.js.map +0 -1
- package/dist/index32.js.map +0 -1
- package/dist/index36.js.map +0 -1
- package/dist/index38.js.map +0 -1
- package/dist/index44.js.map +0 -1
- package/dist/index50.js +0 -97
- package/dist/index50.js.map +0 -1
- package/dist/index76.js +0 -47
- package/dist/index76.js.map +0 -1
- package/dist/index93.js.map +0 -1
- package/dist/index99.js.map +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index23.js","sources":["../src/components/BaseDialog/BaseDialog.vue"],"sourcesContent":["<template>\n\t<teleport to=\"body\">\n\t\t<div v-bind=\"overlayAttributes\" ref=\"overlay\">\n\t\t\t<div v-bind=\"panelAttributes\" ref=\"panel\">\n\t\t\t\t<div\n\t\t\t\t\tv-if=\"hasRenderedAtLeastOnce\"\n\t\t\t\t\tref=\"content\"\n\t\t\t\t\tclass=\"bb-base-dialog__content\"\n\t\t\t\t>\n\t\t\t\t\t<div ref=\"header\" class=\"bb-base-dialog__header\">\n\t\t\t\t\t\t<slot\n\t\t\t\t\t\t\t:close=\"onCloseClick\"\n\t\t\t\t\t\t\tname=\"header\"\n\t\t\t\t\t\t\t:title=\"title\"\n\t\t\t\t\t\t\t:title-id=\"titleId\"\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<span :id=\"titleId\" class=\"bb-base-dialog__title\">\n\t\t\t\t\t\t\t\t<slot name=\"title\" :text=\"title\">{{ title }}</slot>\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t<span class=\"bb-base-dialog-close\">\n\t\t\t\t\t\t\t\t<button\n\t\t\t\t\t\t\t\t\tv-if=\"showClose\"\n\t\t\t\t\t\t\t\t\t:aria-label=\"closeLabel\"\n\t\t\t\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\t\t\t\t@click=\"onCloseClick\"\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<slot name=\"close\">\n\t\t\t\t\t\t\t\t\t\t<span class=\"bb-base-dialog-close__icon\"\n\t\t\t\t\t\t\t\t\t\t\t><svg\n\t\t\t\t\t\t\t\t\t\t\t\taria-hidden=\"true\"\n\t\t\t\t\t\t\t\t\t\t\t\tfill=\"none\"\n\t\t\t\t\t\t\t\t\t\t\t\tviewBox=\"0 0 24 24\"\n\t\t\t\t\t\t\t\t\t\t\t\txmlns=\"http://www.w3.org/2000/svg\"\n\t\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t\t<path\n\t\t\t\t\t\t\t\t\t\t\t\t\td=\"M23 23L1 1M23 1L1 23\"\n\t\t\t\t\t\t\t\t\t\t\t\t\tstroke=\"currentColor\"\n\t\t\t\t\t\t\t\t\t\t\t\t\tstroke-linecap=\"round\"\n\t\t\t\t\t\t\t\t\t\t\t\t\tstroke-width=\"2\"\n\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t</svg>\n\t\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t</slot>\n\t\t\t\t\t\t\t\t</button>\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t</slot>\n\t\t\t\t\t</div>\n\t\t\t\t\t<div ref=\"body\" class=\"bb-base-dialog__body\">\n\t\t\t\t\t\t<slot\n\t\t\t\t\t\t\t:description-id=\"descriptionId\"\n\t\t\t\t\t\t\tname=\"description\"\n\t\t\t\t\t\t\t:text=\"description\"\n\t\t\t\t\t\t\t><div\n\t\t\t\t\t\t\t\tv-if=\"description\"\n\t\t\t\t\t\t\t\t:id=\"descriptionId\"\n\t\t\t\t\t\t\t\tclass=\"bb-base-dialog__description sr-only\"\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{{ description }}\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</slot>\n\t\t\t\t\t\t<slot></slot>\n\t\t\t\t\t</div>\n\t\t\t\t\t<div style=\"flex: 10000 10000 0%\"></div>\n\t\t\t\t\t<div ref=\"footer\" class=\"bb-base-dialog__footer\">\n\t\t\t\t\t\t<slot name=\"footer\"></slot>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t</teleport>\n</template>\n\n<script setup lang=\"ts\">\nimport {\n\tcomputed,\n\tonBeforeUnmount,\n\tonMounted,\n\tref,\n\tuseAttrs,\n\tnextTick,\n\tgetCurrentInstance,\n\twatch,\n} from 'vue';\nimport { throttle } from '@/utilities/functions/throttle';\nimport { useFocusTrap } from '@vueuse/integrations/useFocusTrap';\nimport { useId } from '@/composables/useId';\nimport { wait } from '@/utilities/functions/wait';\nimport { waitFor } from '@/utilities/functions/waitFor';\nimport type { CommonProps, Size } from '@/types/CommonProps';\nimport { useModalsState } from '@/composables/useModalsState';\nimport { useLogger } from '@/composables/useLogger';\n\nexport type Sizes = {\n\tsm: number;\n\tmd: number;\n\tlg: number;\n};\n\nexport type BaseDialogProps = Pick<\n\tCommonProps,\n\t| 'closeLabel'\n\t| 'compact'\n\t| 'disabled'\n\t| 'eager'\n\t| 'panelClasses'\n\t| 'overlayClasses'\n\t| 'persistent'\n\t| 'showClose'\n\t| 'title'\n\t| 'transition'\n\t| 'transitionDuration'\n> &\n\tSize<Sizes> & {\n\t\t/**\n\t\t * Description of the content of the modal. Extremely useful for accessibility reasons.\n\t\t */\n\t\tdescription?: string;\n\t\t/**\n\t\t * Elements that obtains focus immediately after opening the dialog.\n\t\t * By default it's the first tabbable item.\n\t\t */\n\t\tfocusTarget?: string;\n\t\t/**\n\t\t * Displays the modala as fulscreen with no margin to the page\n\t\t */\n\t\tfullscreen?: boolean;\n\t\t/**\n\t\t * Defines the state open / closed of the modal.\n\t\t */\n\t\tmodelValue?: boolean | null;\n\t};\n\nconst props = withDefaults(defineProps<BaseDialogProps>(), {\n\tcloseLabel: 'Chiudi modale',\n\tshowClose: true,\n\tsize: 'sm',\n\ttransition: 'fade',\n\ttransitionDuration: 350,\n\tpanelClasses: () => [],\n\toverlayClasses: () => [],\n});\n\nexport type BaseDialogSlots = {\n\theader?: (props: {\n\t\ttitleId: typeof titleId;\n\t\tclose: typeof onCloseClick;\n\t\ttitle: BaseDialogProps['title'];\n\t}) => any;\n\ttitle?: (props: { text: BaseDialogProps['title'] }) => any;\n\tclose?: (props: object) => any;\n\tdescription?: (props: {\n\t\tdescriptionId: typeof descriptionId;\n\t\ttext: BaseDialogProps['description'];\n\t}) => any;\n\tdefault?: (props: object) => any;\n\tfooter?: (props: object) => any;\n};\n\ndefineSlots<BaseDialogSlots>();\n\nexport type BaseDialogEvents = {\n\t(e: 'shown'): void;\n\t(e: 'hidden'): void;\n\t(e: 'update:modelValue', value: boolean): void;\n};\n\nconst emit = defineEmits<BaseDialogEvents>();\n\nconst titleId = `title_${useId().id.value}`;\nconst descriptionId = `description_${useId().id.value}`;\n\nconst observer = ref<ResizeObserver | null>(null);\nconst overlay = ref<HTMLElement | null>(null);\nconst panel = ref<HTMLElement | null>(null);\nconst content = ref<HTMLElement | null>(null);\nconst header = ref<HTMLElement | null>(null);\nconst body = ref<HTMLElement | null>(null);\nconst footer = ref<HTMLElement | null>(null);\nconst height = ref<number | null>(null);\n\n// @ts-expect-error possibly undef\nconst isNuxt = !!getCurrentInstance()?.proxy?.$nuxt;\n\nconst orderInStack = ref(0);\nconst isCurrent = computed(() => {\n\tconst { openedModals } = useModalsState();\n\treturn openedModals.value && openedModals.value === orderInStack.value;\n});\n\nconst { activate, deactivate } = useFocusTrap(panel, {\n\tinitialFocus: props.focusTarget ?? undefined,\n\tclickOutsideDeactivates: (event) => {\n\t\t// This is used when other teleports are running.\n\t\t// eg if you have a select inside a modal it will be in fact outside of the modal because of teleport\n\t\treturn event.target === overlay.value;\n\t},\n\tallowOutsideClick: true,\n\t/* On esc deactivate the trap, return focus and then close the modal */\n\tescapeDeactivates: () => {\n\t\tnextTick(() => {\n\t\t\temit('update:modelValue', false);\n\t\t});\n\t\treturn true;\n\t},\n});\n\nconst attrs = useAttrs();\n\nconst closeLabel = computed(() => props.closeLabel);\n\nonMounted(async () => {\n\tif (body.value) {\n\t\tobserver.value = new ResizeObserver(onContentGrow);\n\t\tobserver.value.observe(body.value);\n\t}\n\twindow.addEventListener('resize', onContentGrow);\n\n\tonContentGrow();\n\tif (!props.modelValue && !hasRenderedAtLeastOnce.value) return;\n\tif (isNuxt && !globalThis.document) return;\n\talignToModelValue();\n});\nonBeforeUnmount(() => {\n\twindow.removeEventListener('resize', onContentGrow);\n});\n\nconst open = ref(false);\nconst opening = ref(false);\nconst closed = ref(true);\nconst closing = ref(false);\nconst hasRenderedAtLeastOnce = ref(props.eager || props.modelValue);\n\nconst busy = computed(() => opening.value || closing.value);\n\nconst restrictBody = () => {\n\tif (!globalThis.document) return;\n\tconst scrollBarWidth =\n\t\twindow.innerWidth - document.documentElement.clientWidth;\n\tdocument.body.style.overflow = 'hidden';\n\tdocument.body.style.paddingRight = `${scrollBarWidth}px`;\n};\nconst releaseBody = () => {\n\tif (!globalThis.document) return;\n\tdocument.body.style.overflow = 'auto';\n\tdocument.body.style.paddingRight = '0px';\n};\n\nonBeforeUnmount(() => {\n\tif (props.modelValue) {\n\t\tconst { openedModals, modalHasClosed } = useModalsState();\n\t\tif (openedModals.value) {\n\t\t\tmodalHasClosed();\n\t\t\torderInStack.value = 0;\n\t\t\treleaseBody();\n\t\t}\n\t}\n});\n\n/**\n * When modelValue becomes true if the component wasn't rendered render it\n * and wait for it to be on the page (or transitions would not work).\n * Stash the latest focused element so we can return it later when it closes.\n * Focus on the panel upon opening.\n * ---\n * Notice all interactions update modelValue and then this function aligns the display to it\n */\nconst alignToModelValue = async () => {\n\tif (props.modelValue) {\n\t\tif (!hasRenderedAtLeastOnce.value) {\n\t\t\thasRenderedAtLeastOnce.value = true;\n\t\t\tawait waitFor(() => !!body.value);\n\t\t\tawait nextTick();\n\t\t\tif (body.value) {\n\t\t\t\tobserver.value = new ResizeObserver(onContentGrow);\n\t\t\t\tobserver.value.observe(body.value);\n\t\t\t}\n\t\t}\n\n\t\tclosed.value = false;\n\t\tclosing.value = false;\n\t\topening.value = true;\n\n\t\t// This prevents overscroll chaining (additional scrolling to the body when the modal has been completely scrolled)\n\t\tconst { modalHasOpened, openedModals } = useModalsState();\n\t\tmodalHasOpened();\n\t\torderInStack.value = openedModals.value;\n\t\trestrictBody();\n\n\t\tawait wait(props.transitionDuration);\n\t\topening.value = false;\n\t\topen.value = true;\n\t\temit('shown');\n\t\tactivate();\n\t} else {\n\t\tdeactivate();\n\t\topening.value = false;\n\t\topen.value = false;\n\t\tclosing.value = true;\n\n\t\tawait wait(props.transitionDuration);\n\n\t\tclosing.value = false;\n\t\tclosed.value = true;\n\t\tconst { modalHasClosed, openedModals } = useModalsState();\n\t\tmodalHasClosed();\n\t\torderInStack.value = 0;\n\t\tif (!openedModals.value) {\n\t\t\treleaseBody();\n\t\t}\n\t\temit('hidden');\n\t}\n};\n/**\n * Every time modelValue changes align the display to it\n */\nwatch(\n\t() => props.modelValue,\n\t() => {\n\t\tif (!props.modelValue && !hasRenderedAtLeastOnce.value) return;\n\t\tif (isNuxt && !globalThis.document) return;\n\t\talignToModelValue();\n\t},\n\t{ flush: 'post' }\n);\n\n/**\n * Disable scrolling\n */\nconst onOverlayScroll = (event: Event) => {\n\tif (event.target === overlay.value) {\n\t\tevent.preventDefault();\n\t}\n};\n\n/**\n * Close the modal on overlay click if not persistent\n */\nconst onOverlayClick = (event: MouseEvent) => {\n\tif (props.disabled || busy.value) return;\n\tif (overlay.value) {\n\t\tif (event.target === overlay.value) {\n\t\t\tif (!props.persistent) {\n\t\t\t\temit('update:modelValue', false);\n\t\t\t}\n\t\t}\n\t}\n};\n\n/**\n * On click on the X button\n */\nconst onCloseClick = () => {\n\tif (props.disabled || busy.value) return;\n\tdeactivate();\n\temit('update:modelValue', false);\n};\n\nconst overlayAttributes = computed(() => {\n\tconst classes = [\n\t\t{\n\t\t\t'bb-base-dialog bb-base-dialog__overlay': true,\n\t\t\t'bb-base-dialog--fullscreen': props.fullscreen,\n\t\t\t'bb-base-dialog--faded': !isCurrent.value,\n\t\t\t'bb-base-dialog--open': open.value,\n\t\t\t'bb-base-dialog--opening': opening.value,\n\t\t\t'bb-base-dialog--closed': closed.value,\n\t\t\t'bb-base-dialog--closing': closing.value,\n\t\t\t[`bb-base-dialog--transition-${props.transition}`]: true,\n\t\t},\n\t\tprops.overlayClasses,\n\t].flat();\n\tconst eventListeners = {\n\t\tonClick: onOverlayClick,\n\t\tonScroll: onOverlayScroll,\n\t\tonTouchmove: onOverlayScroll,\n\t\tonWheel: onOverlayScroll,\n\t\tonKeydown: onOverlayScroll,\n\t};\n\n\tconst style = {\n\t\ttransitionDuration: props.transitionDuration / 1000 + 's',\n\t};\n\treturn {\n\t\tclass: classes,\n\t\tstyle,\n\t\t...eventListeners,\n\t\t...attrs,\n\t};\n});\n\nconst panelAttributes = computed(() => {\n\tconst classes = [\n\t\t{\n\t\t\t'bb-base-dialog__panel': true,\n\t\t\t'bb-base-dialog__panel--compact': props.compact,\n\t\t},\n\t\tprops.panelClasses,\n\t].flat();\n\n\tconst accessibilityAttrs: {\n\t\t[key: string]: string | boolean;\n\t} = {\n\t\trole: 'dialog',\n\t\t'aria-modal': true,\n\t};\n\n\tif (hasRenderedAtLeastOnce.value) {\n\t\tif (props.title) {\n\t\t\taccessibilityAttrs['aria-labelledby'] = titleId;\n\t\t}\n\n\t\tif (props.description)\n\t\t\taccessibilityAttrs['aria-describedby'] = descriptionId;\n\t}\n\n\tlet maxWidth;\n\tconst sizes: Sizes = {\n\t\tsm: 384,\n\t\tmd: 652,\n\t\tlg: 896,\n\t};\n\tif (props.fullscreen) maxWidth = '100%';\n\telse if (typeof props.size === 'number') maxWidth = props.size + 'px';\n\telse if (props.size in sizes)\n\t\tmaxWidth = sizes[props.size as keyof Sizes] + 'px';\n\telse maxWidth = props.size + 'px';\n\n\tconst style = {\n\t\tmaxWidth,\n\t\ttransitionDuration: props.transitionDuration / 1000 + 's',\n\t};\n\n\treturn {\n\t\tclass: classes,\n\t\tstyle,\n\t\t...accessibilityAttrs,\n\t};\n});\n\nlet calledGrowTimes = 0;\n\n/**\n * This is called when content inside body changes.\n * Gets the total height the panel needs to be\n * It could be called numerous times so throttle every 300ms\n */\nconst onContentGrow = throttle(\n\tasync () => {\n\t\tcalledGrowTimes++;\n\t\tif (calledGrowTimes === 100) {\n\t\t\tconst { error } = useLogger();\n\t\t\terror(\n\t\t\t\t'Dialog is updating its height too often. Please check the content is reliably sized.'\n\t\t\t);\n\t\t}\n\t\tif (props.fullscreen) {\n\t\t\theight.value = window.innerHeight;\n\t\t\treturn;\n\t\t}\n\t\tif (header.value && body.value && footer.value) {\n\t\t\tconst contentHeight =\n\t\t\t\theader.value.scrollHeight +\n\t\t\t\tbody.value.scrollHeight +\n\t\t\t\tfooter.value.scrollHeight +\n\t\t\t\t2;\n\t\t\t/* Add two so renderless elements at the bottom are not cut off */\n\t\t\tif (content.value) {\n\t\t\t\tcontent.value.style.height = '0px';\n\t\t\t\tcontent.value.style.height = `${contentHeight + 2}px`;\n\t\t\t\t/**\n\t\t\t\t * Run until all transitions inside have completed\n\t\t\t\t */\n\t\t\t\tawait wait(30);\n\t\t\t\tif (header.value && body.value && footer.value) {\n\t\t\t\t\tconst contentHeight2 =\n\t\t\t\t\t\theader.value.scrollHeight +\n\t\t\t\t\t\tbody.value.scrollHeight +\n\t\t\t\t\t\tfooter.value.scrollHeight +\n\t\t\t\t\t\t2;\n\t\t\t\t\tif (contentHeight !== contentHeight2) onContentGrow();\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t},\n\t200,\n\t{ trailing: true }\n);\n</script>\n\n<style lang=\"postcss\">\n@import '@/assets/css/BaseDialog';\n</style>\n"],"names":["props","__props","emit","__emit","titleId","useId","descriptionId","observer","ref","overlay","panel","content","header","body","footer","height","isNuxt","_b","_a","getCurrentInstance","orderInStack","isCurrent","computed","openedModals","useModalsState","activate","deactivate","useFocusTrap","event","nextTick","attrs","useAttrs","closeLabel","onMounted","onContentGrow","hasRenderedAtLeastOnce","alignToModelValue","onBeforeUnmount","open","opening","closed","closing","busy","restrictBody","scrollBarWidth","releaseBody","modalHasClosed","waitFor","modalHasOpened","wait","watch","onOverlayScroll","onOverlayClick","onCloseClick","overlayAttributes","classes","eventListeners","style","panelAttributes","accessibilityAttrs","maxWidth","sizes","calledGrowTimes","throttle","error","useLogger","contentHeight","contentHeight2"],"mappings":"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"}
|
package/dist/index230.js
CHANGED
|
@@ -1,5 +1,10 @@
|
|
|
1
|
-
|
|
1
|
+
import { ref as e } from "vue";
|
|
2
|
+
const o = e(0), s = () => {
|
|
3
|
+
o.value++;
|
|
4
|
+
}, a = () => {
|
|
5
|
+
o.value--;
|
|
6
|
+
}, d = () => ({ openedModals: o, modalHasOpened: s, modalHasClosed: a });
|
|
2
7
|
export {
|
|
3
|
-
|
|
8
|
+
d as useModalsState
|
|
4
9
|
};
|
|
5
10
|
//# sourceMappingURL=index230.js.map
|
package/dist/index230.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index230.js","sources":["../src/
|
|
1
|
+
{"version":3,"file":"index230.js","sources":["../src/composables/useModalsState.ts"],"sourcesContent":["import { ref } from 'vue';\n\nconst openedModals = ref(0);\n\nconst modalHasOpened = () => {\n\topenedModals.value++;\n};\n\nconst modalHasClosed = () => {\n\topenedModals.value--;\n};\nexport const useModalsState = () => {\n\treturn { openedModals, modalHasOpened, modalHasClosed };\n};\n"],"names":["openedModals","ref","modalHasOpened","modalHasClosed","useModalsState"],"mappings":";AAEA,MAAMA,IAAeC,EAAI,CAAC,GAEpBC,IAAiB,MAAM;AACf,EAAAF,EAAA;AACd,GAEMG,IAAiB,MAAM;AACf,EAAAH,EAAA;AACd,GACaI,IAAiB,OACtB,EAAE,cAAAJ,GAAc,gBAAAE,GAAgB,gBAAAC;"}
|
package/dist/index231.js
CHANGED
|
@@ -1,177 +1,161 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
};
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
1
|
+
import { ref as a, computed as r, onBeforeMount as Y, onBeforeUnmount as Z, watch as H, nextTick as N } from "vue";
|
|
2
|
+
import { last as _ } from "./index211.js";
|
|
3
|
+
import { useArray as Q } from "./index282.js";
|
|
4
|
+
import { uniqBy as $ } from "./index283.js";
|
|
5
|
+
import { useItemValue as ee } from "./index279.js";
|
|
6
|
+
import { useItemText as te } from "./index284.js";
|
|
7
|
+
import { hash as v } from "./index222.js";
|
|
8
|
+
import { isNotNil as q } from "./index130.js";
|
|
9
|
+
import { waitFor as le } from "./index214.js";
|
|
10
|
+
import { isNil as oe } from "./index125.js";
|
|
11
|
+
const he = (l) => {
|
|
12
|
+
const i = a(""), F = a(), u = (e) => {
|
|
13
|
+
F.value = e, l.emit("update:modelValue", e);
|
|
14
|
+
}, d = a([]), {
|
|
15
|
+
array: k,
|
|
16
|
+
add: E,
|
|
17
|
+
remove: P,
|
|
18
|
+
set: y
|
|
19
|
+
} = Q(), {
|
|
20
|
+
array: S,
|
|
21
|
+
add: j,
|
|
22
|
+
remove: J
|
|
23
|
+
} = Q(), { getItemText: L } = te(), { getItemValue: U } = ee(), O = (e) => {
|
|
24
|
+
const t = !!(l.disabled.value || e.disabled), o = L(e, l.itemText), n = U(e, l.itemValue);
|
|
25
|
+
if (n === void 0)
|
|
26
|
+
throw new Error(
|
|
27
|
+
'The result of extracting "value" from option was undefined. Affected item is ' + JSON.stringify(e) + " please check itemValue property is correct."
|
|
28
|
+
);
|
|
29
|
+
const X = v(n);
|
|
30
|
+
return {
|
|
31
|
+
item: e,
|
|
32
|
+
text: o,
|
|
33
|
+
value: n,
|
|
34
|
+
valueHash: X,
|
|
35
|
+
disabled: t,
|
|
36
|
+
selected: !1
|
|
37
|
+
};
|
|
38
|
+
}, T = (e) => (e.selected = q(b.value[e.valueHash]), e), V = r(() => {
|
|
39
|
+
const e = [].concat(
|
|
40
|
+
d.value.map((t) => T(O(t))),
|
|
41
|
+
S.value.map(T),
|
|
42
|
+
k.value.map(T)
|
|
43
|
+
);
|
|
44
|
+
return $(e, (t) => t.valueHash);
|
|
45
|
+
}), z = (e) => {
|
|
46
|
+
l.multiple ? (u(l.modelValue.value.concat(e.value)), l.stash && E(e), l.resetQueryOnOptionSelected && s()) : (l.stash && y(e), u(e.value), N(() => s()));
|
|
47
|
+
}, G = async (e) => {
|
|
48
|
+
if (J((t) => t.valueHash !== e.valueHash), P((t) => t.valueHash !== e.valueHash), l.multiple) {
|
|
49
|
+
const t = { ...b.value };
|
|
50
|
+
delete t[e.valueHash], u(Object.values(t));
|
|
16
51
|
} else
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
unmasked(t) {
|
|
24
|
-
return this.process(t, this.findMask(t), !1);
|
|
25
|
-
}
|
|
26
|
-
isEager() {
|
|
27
|
-
return this.opts.eager === !0;
|
|
28
|
-
}
|
|
29
|
-
isReversed() {
|
|
30
|
-
return this.opts.reversed === !0;
|
|
31
|
-
}
|
|
32
|
-
completed(t) {
|
|
33
|
-
const e = this.findMask(t);
|
|
34
|
-
if (this.opts.mask == null || e == null)
|
|
35
|
-
return !1;
|
|
36
|
-
const s = this.process(t, e).length;
|
|
37
|
-
return typeof this.opts.mask == "string" ? s >= this.opts.mask.length : typeof this.opts.mask == "function" ? s >= e.length : this.opts.mask.filter((n) => s >= n.length).length === this.opts.mask.length;
|
|
38
|
-
}
|
|
39
|
-
findMask(t) {
|
|
40
|
-
const e = this.opts.mask;
|
|
41
|
-
if (e == null)
|
|
42
|
-
return null;
|
|
43
|
-
if (typeof e == "string")
|
|
44
|
-
return e;
|
|
45
|
-
if (typeof e == "function")
|
|
46
|
-
return e(t);
|
|
47
|
-
const s = this.process(t, e.slice(-1).pop() ?? "", !1);
|
|
48
|
-
return e.find((n) => this.process(t, n, !1).length >= s.length) ?? "";
|
|
49
|
-
}
|
|
50
|
-
escapeMask(t) {
|
|
51
|
-
const e = [], s = [];
|
|
52
|
-
return t.split("").forEach((n, i) => {
|
|
53
|
-
n === "!" && t[i - 1] !== "!" ? s.push(i - s.length) : e.push(n);
|
|
54
|
-
}), { mask: e.join(""), escaped: s };
|
|
55
|
-
}
|
|
56
|
-
process(t, e, s = !0) {
|
|
57
|
-
if (e == null)
|
|
58
|
-
return t;
|
|
59
|
-
const n = `value=${t},mask=${e},masked=${s ? 1 : 0}`;
|
|
60
|
-
if (this.memo.has(n))
|
|
61
|
-
return this.memo.get(n);
|
|
62
|
-
const { mask: i, escaped: p } = this.escapeMask(e), o = [], k = this.opts.tokens != null ? this.opts.tokens : {}, l = this.isReversed() ? -1 : 1, m = this.isReversed() ? "unshift" : "push", c = this.isReversed() ? 0 : i.length - 1, T = this.isReversed() ? () => r > -1 && u > -1 : () => r < i.length && u < t.length, S = (d) => !this.isReversed() && d <= c || this.isReversed() && d >= c;
|
|
63
|
-
let E, f = -1, r = this.isReversed() ? i.length - 1 : 0, u = this.isReversed() ? t.length - 1 : 0, y = !1;
|
|
64
|
-
for (; T(); ) {
|
|
65
|
-
const d = i.charAt(r), h = k[d], v = (h == null ? void 0 : h.transform) != null ? h.transform(t.charAt(u)) : t.charAt(u);
|
|
66
|
-
if (!p.includes(r) && h != null ? (v.match(h.pattern) != null ? (o[m](v), h.repeated ? (f === -1 ? f = r : r === c && r !== f && (r = f - l), c === f && (r -= l)) : h.multiple && (y = !0, r -= l), r += l) : h.multiple ? y && (r += l, u -= l, y = !1) : v === E ? E = void 0 : h.optional && (r += l, u -= l), u += l) : (s && !this.isEager() && o[m](d), v === d && !this.isEager() ? u += l : E = d, this.isEager() || (r += l)), this.isEager())
|
|
67
|
-
for (; S(r) && (k[i.charAt(r)] == null || p.includes(r)); )
|
|
68
|
-
s ? o[m](i.charAt(r)) : i.charAt(r) === t.charAt(u) && (u += l), r += l;
|
|
52
|
+
u(null), await N(), s();
|
|
53
|
+
}, b = r(() => {
|
|
54
|
+
const e = {}, t = [].concat(l.modelValue.value);
|
|
55
|
+
for (let o = 0; o < t.length; o++) {
|
|
56
|
+
const n = t[o];
|
|
57
|
+
e[v(n)] = n;
|
|
69
58
|
}
|
|
70
|
-
return
|
|
71
|
-
}
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
multiple: s[2] === "multiple",
|
|
86
|
-
repeated: s[2] === "repeated"
|
|
87
|
-
};
|
|
88
|
-
}), t;
|
|
89
|
-
};
|
|
90
|
-
class L {
|
|
91
|
-
constructor(t, e = {}) {
|
|
92
|
-
g(this, "items", /* @__PURE__ */ new Map()), g(this, "beforeinputEvent", (s) => {
|
|
93
|
-
const n = s.target, i = this.items.get(n);
|
|
94
|
-
i.isEager() && "inputType" in s && s.inputType.startsWith("delete") && i.unmasked(n.value).length <= 1 && this.setMaskedValue(n, "");
|
|
95
|
-
}), g(this, "inputEvent", (s) => {
|
|
96
|
-
if (s instanceof CustomEvent && s.type === "input" && s.detail != null && typeof s.detail == "object" && "masked" in s.detail)
|
|
97
|
-
return;
|
|
98
|
-
const n = s.target, i = this.items.get(n), p = n.value, o = n.selectionStart, k = n.selectionEnd;
|
|
99
|
-
let l = p;
|
|
100
|
-
if (i.isEager()) {
|
|
101
|
-
const m = i.masked(p), c = i.unmasked(p);
|
|
102
|
-
c === "" && "data" in s && s.data != null ? l = s.data : c !== i.unmasked(m) && (l = c);
|
|
59
|
+
return e;
|
|
60
|
+
}), g = async ({ prefill: e = !1 }) => {
|
|
61
|
+
let t = [];
|
|
62
|
+
if (Array.isArray(l.items.value))
|
|
63
|
+
t = l.items.value;
|
|
64
|
+
else if (typeof l.items.value == "function") {
|
|
65
|
+
const o = ++c.value;
|
|
66
|
+
try {
|
|
67
|
+
t = await l.items.value(
|
|
68
|
+
i.value,
|
|
69
|
+
e,
|
|
70
|
+
l.modelValue.value
|
|
71
|
+
), o < c.value && (await le(() => o === c.value), t = d.value);
|
|
72
|
+
} catch (n) {
|
|
73
|
+
console.error(n);
|
|
103
74
|
}
|
|
104
|
-
|
|
105
|
-
try {
|
|
106
|
-
n.setSelectionRange(o, k);
|
|
107
|
-
} catch {
|
|
108
|
-
}
|
|
109
|
-
}), this.options = e, typeof t == "string" ? this.init(
|
|
110
|
-
Array.from(document.querySelectorAll(t)),
|
|
111
|
-
this.getMaskOpts(e)
|
|
112
|
-
) : this.init(
|
|
113
|
-
"length" in t ? Array.from(t) : [t],
|
|
114
|
-
this.getMaskOpts(e)
|
|
115
|
-
);
|
|
116
|
-
}
|
|
117
|
-
destroy() {
|
|
118
|
-
for (const t of this.items.keys())
|
|
119
|
-
t.removeEventListener("input", this.inputEvent), t.removeEventListener("beforeinput", this.beforeinputEvent);
|
|
120
|
-
this.items.clear();
|
|
121
|
-
}
|
|
122
|
-
needUpdateOptions(t, e) {
|
|
123
|
-
const s = this.items.get(t), n = new b(w(t, this.getMaskOpts(e)));
|
|
124
|
-
return JSON.stringify(s.opts) !== JSON.stringify(n.opts);
|
|
125
|
-
}
|
|
126
|
-
needUpdateValue(t) {
|
|
127
|
-
const e = t.dataset.maskaValue;
|
|
128
|
-
return e == null && t.value !== "" || e != null && e !== t.value;
|
|
129
|
-
}
|
|
130
|
-
getMaskOpts(t) {
|
|
131
|
-
const { onMaska: e, preProcess: s, postProcess: n, ...i } = t;
|
|
132
|
-
return i;
|
|
133
|
-
}
|
|
134
|
-
init(t, e) {
|
|
135
|
-
for (const s of t) {
|
|
136
|
-
const n = new b(w(s, e));
|
|
137
|
-
this.items.set(s, n), s.value !== "" && this.setMaskedValue(s, s.value), s.addEventListener("input", this.inputEvent), s.addEventListener("beforeinput", this.beforeinputEvent);
|
|
75
|
+
c.value--;
|
|
138
76
|
}
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
const
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
setTimeout(() => {
|
|
149
|
-
var t;
|
|
150
|
-
((t = A.get(a)) == null ? void 0 : t.needUpdateValue(a)) === !0 && a.dispatchEvent(new CustomEvent("input"));
|
|
151
|
-
});
|
|
152
|
-
}, J = (a, t) => {
|
|
153
|
-
const e = a instanceof HTMLInputElement ? a : a.querySelector("input"), s = { ...t.arg };
|
|
154
|
-
if (e == null || (e == null ? void 0 : e.type) === "file")
|
|
155
|
-
return;
|
|
156
|
-
C(e);
|
|
157
|
-
const n = A.get(e);
|
|
158
|
-
if (n != null) {
|
|
159
|
-
if (!n.needUpdateOptions(e, s))
|
|
160
|
-
return;
|
|
161
|
-
n.destroy();
|
|
162
|
-
}
|
|
163
|
-
if (t.value != null) {
|
|
164
|
-
const i = t.value, p = (o) => {
|
|
165
|
-
i.masked = o.masked, i.unmasked = o.unmasked, i.completed = o.completed;
|
|
77
|
+
d.value = t;
|
|
78
|
+
}, B = r(() => {
|
|
79
|
+
const e = {};
|
|
80
|
+
for (let t = 0; t < V.value.length; t++) {
|
|
81
|
+
const o = V.value[t], { valueHash: n } = o;
|
|
82
|
+
e[n] = o;
|
|
83
|
+
}
|
|
84
|
+
return {
|
|
85
|
+
get: (t) => e[v(t)]
|
|
166
86
|
};
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
87
|
+
}), f = r(() => [].concat(l.modelValue.value).reduce((e, t) => {
|
|
88
|
+
const o = B.value.get(t);
|
|
89
|
+
return o && e.push(o), e;
|
|
90
|
+
}, [])), C = (e) => q(B.value.get(e)), s = () => {
|
|
91
|
+
if (l.multiple) {
|
|
92
|
+
i.value = "";
|
|
93
|
+
return;
|
|
94
|
+
}
|
|
95
|
+
let e;
|
|
96
|
+
f.value && (e = _(f.value)), i.value = (e == null ? void 0 : e.text) || "";
|
|
97
|
+
}, K = () => {
|
|
98
|
+
const e = i.value.trim(), t = O(e);
|
|
99
|
+
j(t), s();
|
|
100
|
+
}, c = a(0), M = r(() => [].concat(l.modelValue.value).reduce(
|
|
101
|
+
(e, t) => (C(t) ? e.coherent.push(t) : e.incoherent.push(t), e),
|
|
102
|
+
{ coherent: [], incoherent: [] }
|
|
103
|
+
)), A = r(() => l.multiple && !l.modelValue.value.length || !l.multiple && oe(l.modelValue.value) ? !0 : !M.value.incoherent.length), R = () => {
|
|
104
|
+
l.enforceCoherence && !A.value && (l.multiple ? u(M.value.coherent) : u(null));
|
|
105
|
+
}, p = a(!1), I = a(!1), m = async () => {
|
|
106
|
+
I.value = !0, await g({ prefill: !0 }), R(), s(), p.value = !0, I.value = !1;
|
|
107
|
+
};
|
|
108
|
+
Y(async () => {
|
|
109
|
+
l.prefill && (await m(), l.stash && y(...f.value));
|
|
110
|
+
});
|
|
111
|
+
let h;
|
|
112
|
+
const W = () => {
|
|
113
|
+
h && clearTimeout(h), h = setTimeout(async () => {
|
|
114
|
+
try {
|
|
115
|
+
await g({ prefill: !1 });
|
|
116
|
+
} catch (e) {
|
|
117
|
+
console.error(e);
|
|
118
|
+
}
|
|
119
|
+
}, l.queryDebounceTime);
|
|
120
|
+
};
|
|
121
|
+
Z(() => clearTimeout(h));
|
|
122
|
+
let x;
|
|
123
|
+
H(
|
|
124
|
+
() => l.modelValue.value,
|
|
125
|
+
() => {
|
|
126
|
+
A.value || (x && clearTimeout(x), x = setTimeout(async () => {
|
|
127
|
+
m();
|
|
128
|
+
}, l.modelValueDebounceTime));
|
|
129
|
+
}
|
|
130
|
+
);
|
|
131
|
+
let w;
|
|
132
|
+
const D = async (e, t) => {
|
|
133
|
+
v(t) !== v(e) && p.value && (w && clearTimeout(w), w = setTimeout(async () => {
|
|
134
|
+
await m();
|
|
135
|
+
}, l.depsDebounceTime));
|
|
136
|
+
};
|
|
137
|
+
return H(() => l.items.value, D), H(() => l.dependencies.value, D), {
|
|
138
|
+
addCurrentQueryToManualItems: K,
|
|
139
|
+
alignQueryToState: s,
|
|
140
|
+
getOptions: g,
|
|
141
|
+
hasPrefilled: p,
|
|
142
|
+
innerLoading: c,
|
|
143
|
+
isPrefilling: I,
|
|
144
|
+
manualItems: S,
|
|
145
|
+
options: V,
|
|
146
|
+
prefillItems: m,
|
|
147
|
+
query: i,
|
|
148
|
+
searchByQuery: W,
|
|
149
|
+
selectedOptions: f,
|
|
150
|
+
selectOption: z,
|
|
151
|
+
setStash: y,
|
|
152
|
+
unselectOption: G,
|
|
153
|
+
updateModelValue: u,
|
|
154
|
+
valueIsSelected: C,
|
|
155
|
+
internalItems: d
|
|
156
|
+
};
|
|
170
157
|
};
|
|
171
158
|
export {
|
|
172
|
-
|
|
173
|
-
L as MaskInput,
|
|
174
|
-
R as tokens,
|
|
175
|
-
J as vMaska
|
|
159
|
+
he as useOptions
|
|
176
160
|
};
|
|
177
161
|
//# sourceMappingURL=index231.js.map
|
package/dist/index231.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index231.js","sources":["../node_modules/maska/dist/maska.js"],"sourcesContent":["/*! maska v2.1.11 | (c) Alexander Shabunevich | Released under the MIT license */\nvar S = Object.defineProperty;\nvar P = (n, t, s) => t in n ? S(n, t, { enumerable: !0, configurable: !0, writable: !0, value: s }) : n[t] = s;\nvar m = (n, t, s) => (P(n, typeof t != \"symbol\" ? t + \"\" : t, s), s);\nconst R = {\n \"#\": { pattern: /[0-9]/ },\n \"@\": { pattern: /[a-zA-Z]/ },\n \"*\": { pattern: /[a-zA-Z0-9]/ }\n};\nclass O {\n constructor(t = {}) {\n m(this, \"opts\", {});\n m(this, \"memo\", /* @__PURE__ */ new Map());\n const s = { ...t };\n if (s.tokens != null) {\n s.tokens = s.tokensReplace ? { ...s.tokens } : { ...R, ...s.tokens };\n for (const e of Object.values(s.tokens))\n typeof e.pattern == \"string\" && (e.pattern = new RegExp(e.pattern));\n } else\n s.tokens = R;\n Array.isArray(s.mask) && (s.mask.length > 1 ? s.mask = [...s.mask].sort((e, a) => e.length - a.length) : s.mask = s.mask[0] ?? \"\"), s.mask === \"\" && (s.mask = null), this.opts = s;\n }\n masked(t) {\n return this.process(t, this.findMask(t));\n }\n unmasked(t) {\n return this.process(t, this.findMask(t), !1);\n }\n isEager() {\n return this.opts.eager === !0;\n }\n isReversed() {\n return this.opts.reversed === !0;\n }\n completed(t) {\n const s = this.findMask(t);\n if (this.opts.mask == null || s == null)\n return !1;\n const e = this.process(t, s).length;\n return typeof this.opts.mask == \"string\" ? e >= this.opts.mask.length : typeof this.opts.mask == \"function\" ? e >= s.length : this.opts.mask.filter((a) => e >= a.length).length === this.opts.mask.length;\n }\n findMask(t) {\n const s = this.opts.mask;\n if (s == null)\n return null;\n if (typeof s == \"string\")\n return s;\n if (typeof s == \"function\")\n return s(t);\n const e = this.process(t, s.slice(-1).pop() ?? \"\", !1);\n return s.find((a) => this.process(t, a, !1).length >= e.length) ?? \"\";\n }\n escapeMask(t) {\n const s = [], e = [];\n return t.split(\"\").forEach((a, i) => {\n a === \"!\" && t[i - 1] !== \"!\" ? e.push(i - e.length) : s.push(a);\n }), { mask: s.join(\"\"), escaped: e };\n }\n process(t, s, e = !0) {\n if (s == null)\n return t;\n const a = `value=${t},mask=${s},masked=${e ? 1 : 0}`;\n if (this.memo.has(a))\n return this.memo.get(a);\n const { mask: i, escaped: c } = this.escapeMask(s), r = [], f = this.opts.tokens != null ? this.opts.tokens : {}, l = this.isReversed() ? -1 : 1, M = this.isReversed() ? \"unshift\" : \"push\", u = this.isReversed() ? 0 : i.length - 1, C = this.isReversed() ? () => o > -1 && p > -1 : () => o < i.length && p < t.length, V = (k) => !this.isReversed() && k <= u || this.isReversed() && k >= u;\n let E, d = -1, o = this.isReversed() ? i.length - 1 : 0, p = this.isReversed() ? t.length - 1 : 0, y = !1;\n for (; C(); ) {\n const k = i.charAt(o), h = f[k], g = (h == null ? void 0 : h.transform) != null ? h.transform(t.charAt(p)) : t.charAt(p);\n if (!c.includes(o) && h != null ? (g.match(h.pattern) != null ? (r[M](g), h.repeated ? (d === -1 ? d = o : o === u && o !== d && (o = d - l), u === d && (o -= l)) : h.multiple && (y = !0, o -= l), o += l) : h.multiple ? y && (o += l, p -= l, y = !1) : g === E ? E = void 0 : h.optional && (o += l, p -= l), p += l) : (e && !this.isEager() && r[M](k), g === k && !this.isEager() ? p += l : E = k, this.isEager() || (o += l)), this.isEager())\n for (; V(o) && (f[i.charAt(o)] == null || c.includes(o)); )\n e ? r[M](i.charAt(o)) : i.charAt(o) === t.charAt(p) && (p += l), o += l;\n }\n return this.memo.set(a, r.join(\"\")), this.memo.get(a);\n }\n}\nconst T = (n) => JSON.parse(n.replaceAll(\"'\", '\"')), w = (n, t = {}) => {\n const s = { ...t };\n return n.dataset.maska != null && n.dataset.maska !== \"\" && (s.mask = W(n.dataset.maska)), n.dataset.maskaEager != null && (s.eager = v(n.dataset.maskaEager)), n.dataset.maskaReversed != null && (s.reversed = v(n.dataset.maskaReversed)), n.dataset.maskaTokensReplace != null && (s.tokensReplace = v(n.dataset.maskaTokensReplace)), n.dataset.maskaTokens != null && (s.tokens = b(n.dataset.maskaTokens)), s;\n}, v = (n) => n !== \"\" ? !!JSON.parse(n) : !0, W = (n) => n.startsWith(\"[\") && n.endsWith(\"]\") ? T(n) : n, b = (n) => {\n if (n.startsWith(\"{\") && n.endsWith(\"}\"))\n return T(n);\n const t = {};\n return n.split(\"|\").forEach((s) => {\n const e = s.split(\":\");\n t[e[0]] = {\n pattern: new RegExp(e[1]),\n optional: e[2] === \"optional\",\n multiple: e[2] === \"multiple\",\n repeated: e[2] === \"repeated\"\n };\n }), t;\n};\nclass L {\n constructor(t, s = {}) {\n m(this, \"items\", /* @__PURE__ */ new Map());\n m(this, \"beforeinputEvent\", (t) => {\n const s = t.target, e = this.items.get(s);\n e.isEager() && \"inputType\" in t && t.inputType.startsWith(\"delete\") && e.unmasked(s.value).length <= 1 && this.setMaskedValue(s, \"\");\n });\n m(this, \"inputEvent\", (t) => {\n if (t instanceof CustomEvent && t.type === \"input\" && t.detail != null && typeof t.detail == \"object\" && \"masked\" in t.detail)\n return;\n const s = t.target, e = this.items.get(s), a = s.value, i = s.selectionStart, c = s.selectionEnd;\n let r = a;\n if (e.isEager()) {\n const f = e.masked(a), l = e.unmasked(a);\n l === \"\" && \"data\" in t && t.data != null ? r = t.data : l !== e.unmasked(f) && (r = l);\n }\n if (this.setMaskedValue(s, r), \"inputType\" in t && (t.inputType.startsWith(\"delete\") || i != null && i < a.length))\n try {\n s.setSelectionRange(i, c);\n } catch {\n }\n });\n this.options = s, typeof t == \"string\" ? this.init(\n Array.from(document.querySelectorAll(t)),\n this.getMaskOpts(s)\n ) : this.init(\n \"length\" in t ? Array.from(t) : [t],\n this.getMaskOpts(s)\n );\n }\n destroy() {\n for (const t of this.items.keys())\n t.removeEventListener(\"input\", this.inputEvent), t.removeEventListener(\"beforeinput\", this.beforeinputEvent);\n this.items.clear();\n }\n needUpdateOptions(t, s) {\n const e = this.items.get(t), a = new O(w(t, this.getMaskOpts(s)));\n return JSON.stringify(e.opts) !== JSON.stringify(a.opts);\n }\n needUpdateValue(t) {\n const s = t.dataset.maskaValue;\n return s == null && t.value !== \"\" || s != null && s !== t.value;\n }\n getMaskOpts(t) {\n const { onMaska: s, preProcess: e, postProcess: a, ...i } = t;\n return i;\n }\n init(t, s) {\n for (const e of t) {\n const a = new O(w(e, s));\n this.items.set(e, a), e.value !== \"\" && this.setMaskedValue(e, e.value), e.addEventListener(\"input\", this.inputEvent), e.addEventListener(\"beforeinput\", this.beforeinputEvent);\n }\n }\n setMaskedValue(t, s) {\n const e = this.items.get(t);\n this.options.preProcess != null && (s = this.options.preProcess(s));\n const a = e.masked(s), i = e.unmasked(e.isEager() ? a : s), c = e.completed(s), r = { masked: a, unmasked: i, completed: c };\n s = a, this.options.postProcess != null && (s = this.options.postProcess(s)), t.value = s, t.dataset.maskaValue = s, this.options.onMaska != null && (Array.isArray(this.options.onMaska) ? this.options.onMaska.forEach((f) => f(r)) : this.options.onMaska(r)), t.dispatchEvent(new CustomEvent(\"maska\", { detail: r })), t.dispatchEvent(new CustomEvent(\"input\", { detail: r }));\n }\n}\nconst A = /* @__PURE__ */ new WeakMap(), J = (n) => {\n setTimeout(() => {\n var t;\n ((t = A.get(n)) == null ? void 0 : t.needUpdateValue(n)) === !0 && n.dispatchEvent(new CustomEvent(\"input\"));\n });\n}, j = (n, t) => {\n const s = n instanceof HTMLInputElement ? n : n.querySelector(\"input\"), e = { ...t.arg };\n if (s == null || (s == null ? void 0 : s.type) === \"file\")\n return;\n J(s);\n const a = A.get(s);\n if (a != null) {\n if (!a.needUpdateOptions(s, e))\n return;\n a.destroy();\n }\n if (t.value != null) {\n const i = t.value, c = (r) => {\n i.masked = r.masked, i.unmasked = r.unmasked, i.completed = r.completed;\n };\n e.onMaska = e.onMaska == null ? c : Array.isArray(e.onMaska) ? [...e.onMaska, c] : [e.onMaska, c];\n }\n A.set(s, new L(s, e));\n};\nexport {\n O as Mask,\n L as MaskInput,\n R as tokens,\n j as vMaska\n};\n"],"names":["S","n","s","m","O","e","a","c","r","f","M","u","C","o","p","V","k","d","g","T","v","b","t","i","l","J","j"],"mappings":"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","x_google_ignoreList":[0]}
|
|
1
|
+
{"version":3,"file":"index231.js","sources":["../src/composables/useOptions.ts"],"sourcesContent":["import {\n\tcomputed,\n\tnextTick,\n\tonBeforeMount,\n\tonBeforeUnmount,\n\tref,\n\twatch,\n\ttype Ref,\n} from 'vue';\nimport type { Option as BaseOption } from '@/types/Option';\nimport { last } from '@/utilities/functions/last';\nimport { useArray } from './useArray';\nimport { uniqBy } from '@/utilities/functions/uniqBy';\nimport { useItemValue } from './useItemValue';\nimport { useItemText } from './useItemText';\nimport { hash } from '@/utilities/functions/hash';\nimport { isNotNil } from '@/utilities/functions/isNotNil';\nimport { waitFor } from '@/utilities/functions/waitFor';\nimport { isNil } from '@/utilities/functions/isNil';\n\ntype Options = {\n\tmultiple: boolean;\n\tstash: boolean;\n\titemText: string | ((item: any) => string) | undefined;\n\titemValue: string | ((item: any) => string) | undefined;\n\tmodelValue: Ref<any>;\n\tresetQueryOnOptionSelected: boolean;\n\temit: any;\n\titems: Ref<any>;\n\tenforceCoherence: boolean;\n\tprefill: boolean;\n\tmodelValueDebounceTime: number;\n\tdepsDebounceTime: number;\n\tdependencies: Ref<any[]>;\n\tqueryDebounceTime: number;\n\tdisabled: Ref<boolean>;\n};\n\nexport const useOptions = (params: Options) => {\n\tconst query = ref<string>('');\n\n\tconst lastEmittedValue = ref();\n\tconst updateModelValue = (value: any) => {\n\t\tlastEmittedValue.value = value;\n\t\tparams.emit('update:modelValue', value);\n\t};\n\n\tconst internalItems = ref<any[]>([]);\n\tconst {\n\t\tarray: innerStash,\n\t\tadd: addToStash,\n\t\tremove: removeFromStash,\n\t\tset: setStash,\n\t} = useArray<BaseOption>();\n\n\tconst {\n\t\tarray: manualItems,\n\t\tadd: addToManualItems,\n\t\tremove: removeFromManualItems,\n\t} = useArray<BaseOption>();\n\n\tconst { getItemText } = useItemText();\n\tconst { getItemValue } = useItemValue();\n\tconst createOption = (item: any): BaseOption => {\n\t\tconst disabled = !!(params.disabled.value || item.disabled);\n\t\tconst text = getItemText(item, params.itemText);\n\t\tconst value = getItemValue(item, params.itemValue);\n\n\t\t// Undefined is not supported\n\t\tif (value === undefined)\n\t\t\tthrow new Error(\n\t\t\t\t'The result of extracting \"value\" from option was undefined. Affected item is ' +\n\t\t\t\t\tJSON.stringify(item) +\n\t\t\t\t\t' please check itemValue property is correct.'\n\t\t\t);\n\t\tconst valueHash = hash(value);\n\t\tconst selected = false;\n\t\treturn {\n\t\t\titem,\n\t\t\ttext,\n\t\t\tvalue,\n\t\t\tvalueHash,\n\t\t\tdisabled,\n\t\t\tselected,\n\t\t};\n\t};\n\n\tconst setSelected = (o: BaseOption) => {\n\t\to.selected = isNotNil(modelValueIndexedByHash.value[o.valueHash]);\n\t\treturn o;\n\t};\n\tconst options = computed<BaseOption[]>(() => {\n\t\tconst base = ([] as BaseOption[]).concat(\n\t\t\tinternalItems.value.map((item) => {\n\t\t\t\treturn setSelected(createOption(item));\n\t\t\t}),\n\t\t\tmanualItems.value.map(setSelected),\n\t\t\tinnerStash.value.map(setSelected)\n\t\t);\n\t\treturn uniqBy(base, (o) => o.valueHash);\n\t});\n\n\tconst selectOption = (option: BaseOption) => {\n\t\tif (params.multiple) {\n\t\t\tupdateModelValue(params.modelValue.value.concat(option.value));\n\t\t\tif (params.stash) {\n\t\t\t\taddToStash(option);\n\t\t\t}\n\n\t\t\tif (params.resetQueryOnOptionSelected) {\n\t\t\t\talignQueryToState();\n\t\t\t}\n\t\t} else {\n\t\t\tif (params.stash) {\n\t\t\t\tsetStash(option);\n\t\t\t}\n\t\t\tupdateModelValue(option.value);\n\t\t\tnextTick(() => alignQueryToState());\n\t\t}\n\t};\n\tconst unselectOption = async (option: BaseOption) => {\n\t\tremoveFromManualItems((o) => o.valueHash !== option.valueHash);\n\t\tremoveFromStash((o) => o.valueHash !== option.valueHash);\n\t\tif (params.multiple) {\n\t\t\tconst copy = { ...modelValueIndexedByHash.value };\n\t\t\tdelete copy[option.valueHash];\n\t\t\tupdateModelValue(Object.values(copy));\n\t\t} else {\n\t\t\tupdateModelValue(null);\n\t\t\tawait nextTick();\n\t\t\talignQueryToState();\n\t\t}\n\t};\n\n\t/**\n\t * Indexes modelValue to a map of hash - value pairs so we can easily track which values are selected\n\t */\n\tconst modelValueIndexedByHash = computed(() => {\n\t\tconst map: Record<string, any> = {};\n\t\tconst arr = [].concat(params.modelValue.value);\n\t\tfor (let index = 0; index < arr.length; index++) {\n\t\t\tconst element = arr[index];\n\t\t\tmap[hash(element)] = element;\n\t\t}\n\t\treturn map;\n\t});\n\n\tconst getOptions = async ({ prefill = false }) => {\n\t\tlet items: any[] = [];\n\t\tif (Array.isArray(params.items.value)) {\n\t\t\titems = params.items.value;\n\t\t} else {\n\t\t\tif (typeof params.items.value === 'function') {\n\t\t\t\tconst order = ++innerLoading.value;\n\t\t\t\ttry {\n\t\t\t\t\titems = await params.items.value(\n\t\t\t\t\t\tquery.value,\n\t\t\t\t\t\tprefill,\n\t\t\t\t\t\tparams.modelValue.value\n\t\t\t\t\t);\n\t\t\t\t\t// If by the time this resolves another call has already been made discard this result\n\t\t\t\t\tif (order < innerLoading.value) {\n\t\t\t\t\t\tawait waitFor(() => order === innerLoading.value);\n\t\t\t\t\t\titems = internalItems.value;\n\t\t\t\t\t}\n\t\t\t\t} catch (error) {\n\t\t\t\t\tconsole.error(error);\n\t\t\t\t}\n\t\t\t\tinnerLoading.value--;\n\t\t\t}\n\t\t}\n\t\tinternalItems.value = items as any;\n\t};\n\n\t/**\n\t * Indexes options by their hash so they can be retrieved\n\t */\n\tconst optionsIndexedByHash = computed(() => {\n\t\tconst map: Record<string, BaseOption> = {};\n\t\tfor (let index = 0; index < options.value.length; index++) {\n\t\t\tconst element = options.value[index];\n\t\t\tconst { valueHash } = element;\n\t\t\tmap[valueHash] = element;\n\t\t}\n\t\treturn {\n\t\t\tget: (value: any) => {\n\t\t\t\treturn map[hash(value)];\n\t\t\t},\n\t\t};\n\t});\n\n\t/**\n\t * For every item in modelValue find the linked option if it exists.\n\t * This is used to display chips.\n\t */\n\tconst selectedOptions = computed(() => {\n\t\treturn [].concat(params.modelValue.value).reduce((acc, h) => {\n\t\t\tconst found = optionsIndexedByHash.value.get(h);\n\t\t\tif (found) {\n\t\t\t\tacc.push(found);\n\t\t\t}\n\t\t\treturn acc;\n\t\t}, [] as BaseOption[]);\n\t});\n\n\tconst valueIsSelected = (value: any) =>\n\t\tisNotNil(optionsIndexedByHash.value.get(value));\n\n\tconst alignQueryToState = () => {\n\t\tif (params.multiple) {\n\t\t\tquery.value = '';\n\t\t\treturn;\n\t\t}\n\t\tlet option: BaseOption | undefined;\n\t\tif (selectedOptions.value) {\n\t\t\toption = last(selectedOptions.value);\n\t\t}\n\t\tquery.value = option?.text || '';\n\t};\n\n\t/**\n\t * Add an option to the manual items and then reset the query\n\t */\n\tconst addCurrentQueryToManualItems = () => {\n\t\tconst text = query.value.trim();\n\t\tconst option = createOption(text);\n\t\taddToManualItems(option);\n\t\talignQueryToState();\n\t};\n\n\t/**\n\t * Use a number accumulator because if the fn takes 5 seconds\n\t * and after 2 seconds another search is run\n\t * When the first returns the second is still out for 2 seconds\n\t * and we want to track them both.\n\t * Debounce will not be enough.\n\t */\n\tconst innerLoading = ref(0);\n\n\t/**\n\t * Coherent values are values that have an option they can be linked to.\n\t * Divide coherent and incoherent values.\n\t */\n\n\tconst coherenceStatus = computed(() => {\n\t\treturn [].concat(params.modelValue.value).reduce(\n\t\t\t(acc, curr) => {\n\t\t\t\tif (valueIsSelected(curr)) {\n\t\t\t\t\tacc.coherent.push(curr);\n\t\t\t\t} else {\n\t\t\t\t\tacc.incoherent.push(curr);\n\t\t\t\t}\n\t\t\t\treturn acc;\n\t\t\t},\n\t\t\t{ coherent: [], incoherent: [] }\n\t\t);\n\t});\n\n\t/**\n\t * Model value is considered coherent when:\n\t * - multiple mode is empty\n\t * - single mode is null\n\t */\n\tconst modelValueIsCoherent = computed(() => {\n\t\tif (params.multiple && !params.modelValue.value.length) return true;\n\t\telse if (!params.multiple && isNil(params.modelValue.value)) return true;\n\t\treturn !coherenceStatus.value.incoherent.length;\n\t});\n\n\t/**\n\t * Realign selection state to the passed settings.\n\t * If modelValue has any value that is not coherent while\n\t * coherence is enforced the value should be removed\n\t */\n\tconst alignToCoherenceSettings = () => {\n\t\tif (params.enforceCoherence && !modelValueIsCoherent.value) {\n\t\t\tif (!params.multiple) updateModelValue(null);\n\t\t\telse updateModelValue(coherenceStatus.value.coherent);\n\t\t}\n\t};\n\n\t/**\n\t * Prefilling is the phase where the component understands it needs\n\t * to update its inner items due to a change in state, whether dependencies have changed, items or modelValue have changed.\n\t * It can be intended as the component aligning itself to what state is passed to it.\n\t */\n\tconst hasPrefilled = ref(false);\n\tconst isPrefilling = ref(false);\n\tconst prefillItems = async () => {\n\t\tisPrefilling.value = true;\n\t\tawait getOptions({ prefill: true });\n\t\talignToCoherenceSettings();\n\t\talignQueryToState();\n\t\thasPrefilled.value = true;\n\t\tisPrefilling.value = false;\n\t};\n\n\tonBeforeMount(async () => {\n\t\tif (params.prefill) {\n\t\t\tawait prefillItems();\n\t\t\tif (params.stash) {\n\t\t\t\tsetStash(...selectedOptions.value);\n\t\t\t}\n\t\t}\n\t});\n\n\t/**\n\t * Triggered on input when items is a function.\n\t */\n\n\tlet timeout: ReturnType<typeof setTimeout>;\n\tconst searchByQuery = () => {\n\t\tif (timeout) clearTimeout(timeout);\n\t\ttimeout = setTimeout(async () => {\n\t\t\ttry {\n\t\t\t\tawait getOptions({ prefill: false });\n\t\t\t} catch (error) {\n\t\t\t\tconsole.error(error);\n\t\t\t}\n\t\t}, params.queryDebounceTime);\n\t};\n\tonBeforeUnmount(() => clearTimeout(timeout));\n\n\t/**\n\t * When modelValue changes split behavior for single and multiple selection:\n\t */\n\tlet modelValueTimeout: ReturnType<typeof setTimeout>;\n\twatch(\n\t\t() => params.modelValue.value,\n\t\t() => {\n\t\t\tif (modelValueIsCoherent.value) return;\n\t\t\tif (modelValueTimeout) clearTimeout(modelValueTimeout);\n\t\t\tmodelValueTimeout = setTimeout(async () => {\n\t\t\t\tprefillItems();\n\t\t\t}, params.modelValueDebounceTime);\n\t\t}\n\t);\n\n\t/**\n\t * START DEPENDENCY HANDLING\n\t * Explicit dependencies (props.dependencies) and implicit dependencies (props.items)\n\t * need to trigger a pipeline of realignment whenever they change\n\t */\n\tlet depsTimeout: ReturnType<typeof setTimeout>;\n\n\tconst handleDependencyChange = async (current: any, previous: any) => {\n\t\t// Circumvent arrays defined in the template by the parent triggering the watcher\n\t\tif (hash(previous) === hash(current)) return;\n\t\t// Do not track until prefill completes\n\t\tif (!hasPrefilled.value) return;\n\t\tif (depsTimeout) clearTimeout(depsTimeout);\n\t\tdepsTimeout = setTimeout(async () => {\n\t\t\tawait prefillItems();\n\t\t}, params.depsDebounceTime);\n\t};\n\n\t/**\n\t * This is triggered to refresh static items whenever the passed array changes.\n\t * If the parent defines an array in the template this is triggered\n\t * at every render so we take counter measures\n\t * Even if the entire array changes all the previously selected values are still in the stash.\n\t */\n\twatch(() => params.items.value, handleDependencyChange);\n\n\t/**\n\t * When dependencies change\n\t * If the input has not been prefilled yet just return\n\t * Check dependencies are the same by value and not reference\n\t * Otherwise we search again for options as they might be different base on dependencies.\n\t * If coherence is enforced we set the state accordingly\n\t */\n\twatch(() => params.dependencies.value, handleDependencyChange);\n\n\t/**\n\t * END DEPENDENCIES HANDLING\n\t */\n\n\treturn {\n\t\taddCurrentQueryToManualItems,\n\t\talignQueryToState,\n\t\tgetOptions,\n\t\thasPrefilled,\n\t\tinnerLoading,\n\t\tisPrefilling,\n\t\tmanualItems,\n\t\toptions,\n\t\tprefillItems,\n\t\tquery,\n\t\tsearchByQuery,\n\t\tselectedOptions,\n\t\tselectOption,\n\t\tsetStash,\n\t\tunselectOption,\n\t\tupdateModelValue,\n\t\tvalueIsSelected,\n\t\tinternalItems,\n\t};\n};\n"],"names":["useOptions","params","query","ref","lastEmittedValue","updateModelValue","value","internalItems","innerStash","addToStash","removeFromStash","setStash","useArray","manualItems","addToManualItems","removeFromManualItems","getItemText","useItemText","getItemValue","useItemValue","createOption","item","disabled","text","valueHash","hash","setSelected","o","isNotNil","modelValueIndexedByHash","options","computed","base","uniqBy","selectOption","option","alignQueryToState","nextTick","unselectOption","copy","map","arr","index","element","getOptions","prefill","items","order","innerLoading","waitFor","error","optionsIndexedByHash","selectedOptions","acc","h","found","valueIsSelected","last","addCurrentQueryToManualItems","coherenceStatus","curr","modelValueIsCoherent","isNil","alignToCoherenceSettings","hasPrefilled","isPrefilling","prefillItems","onBeforeMount","timeout","searchByQuery","onBeforeUnmount","modelValueTimeout","watch","depsTimeout","handleDependencyChange","current","previous"],"mappings":"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"}
|
package/dist/index232.js
CHANGED
|
@@ -1,8 +1,87 @@
|
|
|
1
|
-
import o from "
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
1
|
+
import { defineComponent as b, openBlock as n, createElementBlock as s, normalizeClass as r, createElementVNode as l, renderSlot as t, createTextVNode as o, toDisplayString as d, createCommentVNode as h, Fragment as c, renderList as m } from "vue";
|
|
2
|
+
const p = { class: "bb-cr-container__container" }, u = {
|
|
3
|
+
key: 0,
|
|
4
|
+
class: "bb-cr-container__loading-container"
|
|
5
|
+
}, g = {
|
|
6
|
+
key: 1,
|
|
7
|
+
class: "bb-cr-container__no-data-container"
|
|
8
|
+
}, _ = /* @__PURE__ */ b({
|
|
9
|
+
__name: "OptionsContainer",
|
|
10
|
+
props: {
|
|
11
|
+
direction: {},
|
|
12
|
+
hasErrors: { type: Boolean },
|
|
13
|
+
hideLabel: { type: Boolean },
|
|
14
|
+
loadingText: {},
|
|
15
|
+
loading: { type: Boolean },
|
|
16
|
+
noDataText: {},
|
|
17
|
+
options: {}
|
|
18
|
+
},
|
|
19
|
+
setup(k) {
|
|
20
|
+
return (a, $) => (n(), s("span", {
|
|
21
|
+
ref: "container",
|
|
22
|
+
class: r(["bb-cr-container", {
|
|
23
|
+
"bb-cr-container--errors": a.hasErrors,
|
|
24
|
+
"bb-cr-container--horizontal": a.direction === "horizontal",
|
|
25
|
+
"bb-cr-container--vertical": a.direction === "vertical"
|
|
26
|
+
}])
|
|
27
|
+
}, [
|
|
28
|
+
l("span", p, [
|
|
29
|
+
t(a.$slots, "prepend"),
|
|
30
|
+
!a.options.length && a.loading ? (n(), s("span", u, [
|
|
31
|
+
t(a.$slots, "loading", {}, () => [
|
|
32
|
+
o(d(a.loadingText), 1)
|
|
33
|
+
])
|
|
34
|
+
])) : a.options.length ? h("", !0) : (n(), s("span", g, [
|
|
35
|
+
t(a.$slots, "no-data", {}, () => [
|
|
36
|
+
o(d(a.noDataText), 1)
|
|
37
|
+
])
|
|
38
|
+
])),
|
|
39
|
+
(n(!0), s(c, null, m(a.options, (e, i) => (n(), s(c, {
|
|
40
|
+
key: (e == null ? void 0 : e.id) || i
|
|
41
|
+
}, [
|
|
42
|
+
t(a.$slots, "option:prepend", {
|
|
43
|
+
id: e.valueHash,
|
|
44
|
+
checked: !!e.selected,
|
|
45
|
+
disabled: !!e.disabled,
|
|
46
|
+
item: e.item,
|
|
47
|
+
text: e.text
|
|
48
|
+
}),
|
|
49
|
+
l("label", {
|
|
50
|
+
class: r(["bb-cr-container-option", { "bb-base-radio-selected": e.selected }])
|
|
51
|
+
}, [
|
|
52
|
+
t(a.$slots, "input", {
|
|
53
|
+
index: i,
|
|
54
|
+
option: e
|
|
55
|
+
}),
|
|
56
|
+
l("span", {
|
|
57
|
+
class: r({
|
|
58
|
+
"bb-cr-container-option__text": !0,
|
|
59
|
+
"bb-cr-container-option__text--hidden": a.hideLabel
|
|
60
|
+
})
|
|
61
|
+
}, [
|
|
62
|
+
t(a.$slots, "label", {
|
|
63
|
+
checked: !!e.selected,
|
|
64
|
+
item: e.item,
|
|
65
|
+
text: e.text
|
|
66
|
+
}, () => [
|
|
67
|
+
o(d(e.text), 1)
|
|
68
|
+
])
|
|
69
|
+
], 2)
|
|
70
|
+
], 2),
|
|
71
|
+
t(a.$slots, "option:append", {
|
|
72
|
+
id: e.valueHash,
|
|
73
|
+
checked: !!e.selected,
|
|
74
|
+
disabled: !!e.disabled,
|
|
75
|
+
item: e.item,
|
|
76
|
+
text: e.text
|
|
77
|
+
})
|
|
78
|
+
], 64))), 128)),
|
|
79
|
+
t(a.$slots, "append")
|
|
80
|
+
])
|
|
81
|
+
], 2));
|
|
82
|
+
}
|
|
83
|
+
});
|
|
5
84
|
export {
|
|
6
|
-
|
|
85
|
+
_ as default
|
|
7
86
|
};
|
|
8
87
|
//# sourceMappingURL=index232.js.map
|
package/dist/index232.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index232.js","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index232.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
package/dist/index234.js
CHANGED
package/dist/index234.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index234.js","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index234.js","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
|
package/dist/index235.js
CHANGED
package/dist/index236.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { defineComponent as y, ref as F, computed as H, watch as N, openBlock as p, createElementBlock as L, Fragment as S, renderList as V, createBlock as A, normalizeClass as O, withModifiers as P, withCtx as $, createTextVNode as z, toDisplayString as D } from "vue";
|
|
2
|
-
import { hash as d } from "./
|
|
3
|
-
import { isNil as l } from "./
|
|
4
|
-
import E from "./
|
|
2
|
+
import { hash as d } from "./index222.js";
|
|
3
|
+
import { isNil as l } from "./index125.js";
|
|
4
|
+
import E from "./index120.js";
|
|
5
5
|
/* empty css */
|
|
6
6
|
const K = /* @__PURE__ */ y({
|
|
7
7
|
__name: "ChipsBox",
|
package/dist/index238.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { defineComponent as F, ref as H, computed as L, watch as N, openBlock as d, createElementBlock as v, Fragment as S, renderList as A, normalizeClass as O, withModifiers as P, toDisplayString as V } from "vue";
|
|
2
|
-
import { hash as f } from "./
|
|
3
|
-
import { isNil as i } from "./
|
|
2
|
+
import { hash as f } from "./index222.js";
|
|
3
|
+
import { isNil as i } from "./index125.js";
|
|
4
4
|
const z = ["text", "onClick:clear"], j = /* @__PURE__ */ F({
|
|
5
5
|
__name: "CommaBox",
|
|
6
6
|
props: {
|