@7pmlabs/design-system 0.4.7 → 0.4.8
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/design-system10.js +1 -1
- package/dist/design-system10.mjs +1 -1
- package/dist/design-system100.js +1 -1
- package/dist/design-system100.js.map +1 -1
- package/dist/design-system100.mjs +5 -24
- package/dist/design-system100.mjs.map +1 -1
- package/dist/design-system101.js +1 -1
- package/dist/design-system101.mjs +1 -1
- package/dist/design-system102.js +1 -1
- package/dist/design-system102.mjs +1 -1
- package/dist/design-system103.js +1 -1
- package/dist/design-system103.mjs +2 -2
- package/dist/design-system104.js +1 -1
- package/dist/design-system104.mjs +2 -6
- package/dist/design-system104.mjs.map +1 -1
- package/dist/design-system105.js +1 -1
- package/dist/design-system105.mjs +5 -3
- package/dist/design-system105.mjs.map +1 -1
- package/dist/design-system106.js +1 -1
- package/dist/design-system106.mjs +4 -2
- package/dist/design-system106.mjs.map +1 -1
- package/dist/design-system107.js +1 -1
- package/dist/design-system107.mjs +2 -2
- package/dist/design-system13.js +1 -1
- package/dist/design-system13.mjs +1 -1
- package/dist/design-system14.js +1 -1
- package/dist/design-system14.js.map +1 -1
- package/dist/design-system14.mjs +2 -2
- package/dist/design-system15.js +1 -1
- package/dist/design-system15.mjs +1 -1
- package/dist/design-system18.js +1 -1
- package/dist/design-system18.js.map +1 -1
- package/dist/design-system18.mjs +1 -1
- package/dist/design-system18.mjs.map +1 -1
- package/dist/design-system19.js +1 -1
- package/dist/design-system19.js.map +1 -1
- package/dist/design-system19.mjs +3 -3
- package/dist/design-system202.js +1 -1
- package/dist/design-system202.mjs +5 -5
- package/dist/design-system203.js +1 -1
- package/dist/design-system203.mjs +1 -1
- package/dist/design-system21.js +1 -1
- package/dist/design-system21.mjs +1 -1
- package/dist/design-system211.js +1 -1
- package/dist/design-system211.js.map +1 -1
- package/dist/design-system211.mjs +3 -3
- package/dist/design-system211.mjs.map +1 -1
- package/dist/design-system212.js +1 -1
- package/dist/design-system212.js.map +1 -1
- package/dist/design-system212.mjs +4 -4
- package/dist/design-system212.mjs.map +1 -1
- package/dist/design-system213.js +1 -1
- package/dist/design-system213.js.map +1 -1
- package/dist/design-system213.mjs +4 -10
- package/dist/design-system213.mjs.map +1 -1
- package/dist/design-system214.js +1 -1
- package/dist/design-system214.js.map +1 -1
- package/dist/design-system214.mjs +10 -6
- package/dist/design-system214.mjs.map +1 -1
- package/dist/design-system215.js +1 -1
- package/dist/design-system215.js.map +1 -1
- package/dist/design-system215.mjs +6 -6
- package/dist/design-system215.mjs.map +1 -1
- package/dist/design-system216.js +1 -1
- package/dist/design-system216.js.map +1 -1
- package/dist/design-system216.mjs +6 -4
- package/dist/design-system216.mjs.map +1 -1
- package/dist/design-system22.js +1 -1
- package/dist/design-system22.js.map +1 -1
- package/dist/design-system22.mjs +1 -1
- package/dist/design-system22.mjs.map +1 -1
- package/dist/design-system23.js +1 -1
- package/dist/design-system23.mjs +1 -1
- package/dist/design-system25.js +1 -1
- package/dist/design-system25.mjs +3 -3
- package/dist/design-system26.js +1 -1
- package/dist/design-system26.mjs +3 -3
- package/dist/design-system27.js +1 -1
- package/dist/design-system27.mjs +3 -3
- package/dist/design-system28.js +1 -1
- package/dist/design-system28.mjs +1 -1
- package/dist/design-system31.js +1 -1
- package/dist/design-system31.mjs +3 -3
- package/dist/design-system32.js +1 -1
- package/dist/design-system32.mjs +3 -3
- package/dist/design-system33.js +1 -1
- package/dist/design-system33.mjs +1 -1
- package/dist/design-system34.js +1 -1
- package/dist/design-system34.mjs +1 -1
- package/dist/design-system35.js +1 -1
- package/dist/design-system35.mjs +1 -1
- package/dist/design-system36.js +1 -1
- package/dist/design-system36.mjs +1 -1
- package/dist/design-system37.js +1 -1
- package/dist/design-system37.mjs +2 -2
- package/dist/design-system38.js +1 -1
- package/dist/design-system38.mjs +3 -3
- package/dist/design-system39.js +1 -1
- package/dist/design-system39.mjs +3 -3
- package/dist/design-system41.js +1 -1
- package/dist/design-system41.mjs +3 -3
- package/dist/design-system42.js +1 -1
- package/dist/design-system42.mjs +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.mjs +5 -5
- package/dist/design-system45.js +1 -1
- package/dist/design-system45.js.map +1 -1
- package/dist/design-system45.mjs +44 -42
- package/dist/design-system45.mjs.map +1 -1
- package/dist/design-system46.js +1 -1
- package/dist/design-system46.mjs +3 -3
- package/dist/design-system48.js +1 -1
- package/dist/design-system48.mjs +3 -3
- package/dist/design-system49.js +6 -1
- package/dist/design-system49.js.map +1 -1
- package/dist/design-system49.mjs +107 -2
- package/dist/design-system49.mjs.map +1 -1
- package/dist/design-system50.js +6 -1
- package/dist/design-system50.js.map +1 -1
- package/dist/design-system50.mjs +910 -130
- package/dist/design-system50.mjs.map +1 -1
- package/dist/design-system51.js +7 -1
- package/dist/design-system51.js.map +1 -1
- package/dist/design-system51.mjs +861 -2
- package/dist/design-system51.mjs.map +1 -1
- package/dist/design-system52.js +1 -1
- package/dist/design-system52.mjs +2 -7
- package/dist/design-system52.mjs.map +1 -1
- package/dist/design-system53.js +1 -1
- package/dist/design-system53.js.map +1 -1
- package/dist/design-system53.mjs +132 -2
- package/dist/design-system53.mjs.map +1 -1
- package/dist/design-system55.js +1 -4
- package/dist/design-system55.js.map +1 -1
- package/dist/design-system55.mjs +7 -74
- package/dist/design-system55.mjs.map +1 -1
- package/dist/design-system57.js +1 -1
- package/dist/design-system57.mjs +2 -2
- package/dist/design-system58.js +4 -1
- package/dist/design-system58.js.map +1 -1
- package/dist/design-system58.mjs +74 -2
- package/dist/design-system58.mjs.map +1 -1
- package/dist/design-system59.js +1 -1
- package/dist/design-system59.mjs +2 -2
- package/dist/design-system60.js +1 -1
- package/dist/design-system60.mjs +1 -1
- package/dist/design-system61.js +1 -1
- package/dist/design-system61.mjs +1 -1
- package/dist/design-system62.js +1 -1
- package/dist/design-system62.mjs +1 -1
- 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.js.map +1 -1
- package/dist/design-system64.mjs +2 -28
- package/dist/design-system64.mjs.map +1 -1
- package/dist/design-system65.js +1 -1
- package/dist/design-system65.mjs +2 -2
- package/dist/design-system66.js +1 -1
- package/dist/design-system66.js.map +1 -1
- package/dist/design-system66.mjs +2 -58
- package/dist/design-system66.mjs.map +1 -1
- package/dist/design-system67.js +1 -1
- package/dist/design-system67.js.map +1 -1
- package/dist/design-system67.mjs +28 -2
- package/dist/design-system67.mjs.map +1 -1
- package/dist/design-system68.js +1 -1
- package/dist/design-system68.mjs +2 -2
- package/dist/design-system69.js +1 -1
- package/dist/design-system69.js.map +1 -1
- package/dist/design-system69.mjs +58 -2
- package/dist/design-system69.mjs.map +1 -1
- package/dist/design-system70.js +1 -1
- package/dist/design-system70.mjs +2 -2
- package/dist/design-system71.js +1 -1
- package/dist/design-system71.mjs +1 -1
- package/dist/design-system72.js +1 -1
- package/dist/design-system72.mjs +1 -1
- 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 +2 -2
- package/dist/design-system75.js +1 -1
- package/dist/design-system75.js.map +1 -1
- package/dist/design-system75.mjs +2 -81
- package/dist/design-system75.mjs.map +1 -1
- package/dist/design-system76.js +1 -1
- package/dist/design-system76.mjs +2 -2
- package/dist/design-system77.js +1 -1
- package/dist/design-system77.mjs +2 -2
- package/dist/design-system78.js +1 -1
- package/dist/design-system78.js.map +1 -1
- package/dist/design-system78.mjs +71 -109
- package/dist/design-system78.mjs.map +1 -1
- package/dist/design-system80.js +1 -1
- package/dist/design-system80.mjs +1 -1
- package/dist/design-system81.js +1 -1
- package/dist/design-system81.js.map +1 -1
- package/dist/design-system81.mjs +119 -2
- package/dist/design-system81.mjs.map +1 -1
- package/dist/design-system82.js +1 -1
- package/dist/design-system82.js.map +1 -1
- package/dist/design-system82.mjs +2 -102
- package/dist/design-system82.mjs.map +1 -1
- package/dist/design-system83.js +1 -1
- package/dist/design-system83.mjs +2 -2
- package/dist/design-system84.js +1 -1
- package/dist/design-system84.js.map +1 -1
- package/dist/design-system84.mjs +2 -173
- 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 +102 -2
- package/dist/design-system85.mjs.map +1 -1
- package/dist/design-system86.js +1 -1
- package/dist/design-system86.mjs +2 -2
- package/dist/design-system87.js +1 -1
- package/dist/design-system87.js.map +1 -1
- package/dist/design-system87.mjs +170 -122
- package/dist/design-system87.mjs.map +1 -1
- package/dist/design-system89.js +1 -6
- package/dist/design-system89.js.map +1 -1
- package/dist/design-system89.mjs +2 -107
- package/dist/design-system89.mjs.map +1 -1
- package/dist/design-system9.js +1 -1
- package/dist/design-system9.mjs +1 -1
- package/dist/design-system90.js +1 -6
- package/dist/design-system90.js.map +1 -1
- package/dist/design-system90.mjs +140 -910
- package/dist/design-system90.mjs.map +1 -1
- package/dist/design-system91.js +1 -7
- package/dist/design-system91.js.map +1 -1
- package/dist/design-system91.mjs +2 -861
- package/dist/design-system91.mjs.map +1 -1
- package/dist/design-system92.js +1 -1
- package/dist/design-system92.mjs +3 -3
- package/dist/design-system93.js +5 -1
- package/dist/design-system93.js.map +1 -1
- package/dist/design-system93.mjs +10 -17
- package/dist/design-system93.mjs.map +1 -1
- package/dist/design-system94.js +1 -5
- package/dist/design-system94.js.map +1 -1
- package/dist/design-system94.mjs +17 -10
- package/dist/design-system94.mjs.map +1 -1
- package/dist/design-system96.js +1 -1
- package/dist/design-system96.mjs +1 -1
- package/dist/design-system98.js +1 -1
- package/dist/design-system98.js.map +1 -1
- package/dist/design-system98.mjs +25 -68
- package/dist/design-system98.mjs.map +1 -1
- package/dist/design-system99.js +1 -1
- package/dist/design-system99.js.map +1 -1
- package/dist/design-system99.mjs +68 -6
- package/dist/design-system99.mjs.map +1 -1
- package/dist/style.css +1 -1
- package/dist/types/components/BImagePicker/BImagePicker.vue.d.ts +14 -5
- package/dist/types/types/components/BImagePicker.d.ts +2 -2
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"design-system214.js","sources":["../node_modules/lodash-es/
|
|
1
|
+
{"version":3,"file":"design-system214.js","sources":["../node_modules/lodash-es/_hashGet.js"],"sourcesContent":["import nativeCreate from './_nativeCreate.js';\n\n/** Used to stand-in for `undefined` hash values. */\nvar HASH_UNDEFINED = '__lodash_hash_undefined__';\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 * Gets the hash value for `key`.\n *\n * @private\n * @name get\n * @memberOf Hash\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction hashGet(key) {\n var data = this.__data__;\n if (nativeCreate) {\n var result = data[key];\n return result === HASH_UNDEFINED ? undefined : result;\n }\n return hasOwnProperty.call(data, key) ? data[key] : undefined;\n}\n\nexport default hashGet;\n"],"names":["HASH_UNDEFINED","objectProto","hasOwnProperty","hashGet","key","data","nativeCreate","result"],"mappings":"sDAGA,IAAIA,EAAiB,4BAGjBC,EAAc,OAAO,UAGrBC,EAAiBD,EAAY,eAWjC,SAASE,EAAQC,EAAK,CACpB,IAAIC,EAAO,KAAK,SAChB,GAAIC,EAAc,CAChB,IAAIC,EAASF,EAAKD,CAAG,EACrB,OAAOG,IAAWP,EAAiB,OAAYO,CAChD,CACD,OAAOL,EAAe,KAAKG,EAAMD,CAAG,EAAIC,EAAKD,CAAG,EAAI,MACtD","x_google_ignoreList":[0]}
|
|
@@ -1,10 +1,14 @@
|
|
|
1
|
-
import
|
|
2
|
-
var
|
|
3
|
-
function
|
|
4
|
-
var
|
|
5
|
-
|
|
1
|
+
import e from "./design-system218.mjs";
|
|
2
|
+
var n = "__lodash_hash_undefined__", o = Object.prototype, _ = o.hasOwnProperty;
|
|
3
|
+
function h(a) {
|
|
4
|
+
var r = this.__data__;
|
|
5
|
+
if (e) {
|
|
6
|
+
var t = r[a];
|
|
7
|
+
return t === n ? void 0 : t;
|
|
8
|
+
}
|
|
9
|
+
return _.call(r, a) ? r[a] : void 0;
|
|
6
10
|
}
|
|
7
11
|
export {
|
|
8
|
-
|
|
12
|
+
h as default
|
|
9
13
|
};
|
|
10
14
|
//# sourceMappingURL=design-system214.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"design-system214.mjs","sources":["../node_modules/lodash-es/
|
|
1
|
+
{"version":3,"file":"design-system214.mjs","sources":["../node_modules/lodash-es/_hashGet.js"],"sourcesContent":["import nativeCreate from './_nativeCreate.js';\n\n/** Used to stand-in for `undefined` hash values. */\nvar HASH_UNDEFINED = '__lodash_hash_undefined__';\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 * Gets the hash value for `key`.\n *\n * @private\n * @name get\n * @memberOf Hash\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction hashGet(key) {\n var data = this.__data__;\n if (nativeCreate) {\n var result = data[key];\n return result === HASH_UNDEFINED ? undefined : result;\n }\n return hasOwnProperty.call(data, key) ? data[key] : undefined;\n}\n\nexport default hashGet;\n"],"names":["HASH_UNDEFINED","objectProto","hasOwnProperty","hashGet","key","data","nativeCreate","result"],"mappings":";AAGA,IAAIA,IAAiB,6BAGjBC,IAAc,OAAO,WAGrBC,IAAiBD,EAAY;AAWjC,SAASE,EAAQC,GAAK;AACpB,MAAIC,IAAO,KAAK;AAChB,MAAIC,GAAc;AAChB,QAAIC,IAASF,EAAKD,CAAG;AACrB,WAAOG,MAAWP,IAAiB,SAAYO;AAAA,EAChD;AACD,SAAOL,EAAe,KAAKG,GAAMD,CAAG,IAAIC,EAAKD,CAAG,IAAI;AACtD;","x_google_ignoreList":[0]}
|
package/dist/design-system215.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";const
|
|
1
|
+
"use strict";const a=require("./design-system218.js");var e=Object.prototype,o=e.hasOwnProperty;function n(t){var r=this.__data__;return a?r[t]!==void 0:o.call(r,t)}module.exports=n;
|
|
2
2
|
//# sourceMappingURL=design-system215.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"design-system215.js","sources":["../node_modules/lodash-es/
|
|
1
|
+
{"version":3,"file":"design-system215.js","sources":["../node_modules/lodash-es/_hashHas.js"],"sourcesContent":["import nativeCreate from './_nativeCreate.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 * Checks if a hash value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf Hash\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction hashHas(key) {\n var data = this.__data__;\n return nativeCreate ? (data[key] !== undefined) : hasOwnProperty.call(data, key);\n}\n\nexport default hashHas;\n"],"names":["objectProto","hasOwnProperty","hashHas","key","data","nativeCreate"],"mappings":"sDAGA,IAAIA,EAAc,OAAO,UAGrBC,EAAiBD,EAAY,eAWjC,SAASE,EAAQC,EAAK,CACpB,IAAIC,EAAO,KAAK,SAChB,OAAOC,EAAgBD,EAAKD,CAAG,IAAM,OAAaF,EAAe,KAAKG,EAAMD,CAAG,CACjF","x_google_ignoreList":[0]}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import
|
|
2
|
-
var
|
|
3
|
-
function
|
|
4
|
-
var
|
|
5
|
-
return
|
|
1
|
+
import r from "./design-system218.mjs";
|
|
2
|
+
var e = Object.prototype, o = e.hasOwnProperty;
|
|
3
|
+
function p(t) {
|
|
4
|
+
var a = this.__data__;
|
|
5
|
+
return r ? a[t] !== void 0 : o.call(a, t);
|
|
6
6
|
}
|
|
7
7
|
export {
|
|
8
|
-
|
|
8
|
+
p as default
|
|
9
9
|
};
|
|
10
10
|
//# sourceMappingURL=design-system215.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"design-system215.mjs","sources":["../node_modules/lodash-es/
|
|
1
|
+
{"version":3,"file":"design-system215.mjs","sources":["../node_modules/lodash-es/_hashHas.js"],"sourcesContent":["import nativeCreate from './_nativeCreate.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 * Checks if a hash value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf Hash\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction hashHas(key) {\n var data = this.__data__;\n return nativeCreate ? (data[key] !== undefined) : hasOwnProperty.call(data, key);\n}\n\nexport default hashHas;\n"],"names":["objectProto","hasOwnProperty","hashHas","key","data","nativeCreate"],"mappings":";AAGA,IAAIA,IAAc,OAAO,WAGrBC,IAAiBD,EAAY;AAWjC,SAASE,EAAQC,GAAK;AACpB,MAAIC,IAAO,KAAK;AAChB,SAAOC,IAAgBD,EAAKD,CAAG,MAAM,SAAaF,EAAe,KAAKG,GAAMD,CAAG;AACjF;","x_google_ignoreList":[0]}
|
package/dist/design-system216.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";function
|
|
1
|
+
"use strict";const _=require("./design-system218.js");var a="__lodash_hash_undefined__";function i(t,s){var e=this.__data__;return this.size+=this.has(t)?0:1,e[t]=_&&s===void 0?a:s,this}module.exports=i;
|
|
2
2
|
//# sourceMappingURL=design-system216.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"design-system216.js","sources":["../node_modules/lodash-es/
|
|
1
|
+
{"version":3,"file":"design-system216.js","sources":["../node_modules/lodash-es/_hashSet.js"],"sourcesContent":["import nativeCreate from './_nativeCreate.js';\n\n/** Used to stand-in for `undefined` hash values. */\nvar HASH_UNDEFINED = '__lodash_hash_undefined__';\n\n/**\n * Sets the hash `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf Hash\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the hash instance.\n */\nfunction hashSet(key, value) {\n var data = this.__data__;\n this.size += this.has(key) ? 0 : 1;\n data[key] = (nativeCreate && value === undefined) ? HASH_UNDEFINED : value;\n return this;\n}\n\nexport default hashSet;\n"],"names":["HASH_UNDEFINED","hashSet","key","value","data","nativeCreate"],"mappings":"sDAGA,IAAIA,EAAiB,4BAYrB,SAASC,EAAQC,EAAKC,EAAO,CAC3B,IAAIC,EAAO,KAAK,SAChB,YAAK,MAAQ,KAAK,IAAIF,CAAG,EAAI,EAAI,EACjCE,EAAKF,CAAG,EAAKG,GAAgBF,IAAU,OAAaH,EAAiBG,EAC9D,IACT","x_google_ignoreList":[0]}
|
|
@@ -1,8 +1,10 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
import e from "./design-system218.mjs";
|
|
2
|
+
var h = "__lodash_hash_undefined__";
|
|
3
|
+
function s(t, a) {
|
|
4
|
+
var _ = this.__data__;
|
|
5
|
+
return this.size += this.has(t) ? 0 : 1, _[t] = e && a === void 0 ? h : a, this;
|
|
4
6
|
}
|
|
5
7
|
export {
|
|
6
|
-
|
|
8
|
+
s as default
|
|
7
9
|
};
|
|
8
10
|
//# sourceMappingURL=design-system216.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"design-system216.mjs","sources":["../node_modules/lodash-es/
|
|
1
|
+
{"version":3,"file":"design-system216.mjs","sources":["../node_modules/lodash-es/_hashSet.js"],"sourcesContent":["import nativeCreate from './_nativeCreate.js';\n\n/** Used to stand-in for `undefined` hash values. */\nvar HASH_UNDEFINED = '__lodash_hash_undefined__';\n\n/**\n * Sets the hash `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf Hash\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the hash instance.\n */\nfunction hashSet(key, value) {\n var data = this.__data__;\n this.size += this.has(key) ? 0 : 1;\n data[key] = (nativeCreate && value === undefined) ? HASH_UNDEFINED : value;\n return this;\n}\n\nexport default hashSet;\n"],"names":["HASH_UNDEFINED","hashSet","key","value","data","nativeCreate"],"mappings":";AAGA,IAAIA,IAAiB;AAYrB,SAASC,EAAQC,GAAKC,GAAO;AAC3B,MAAIC,IAAO,KAAK;AAChB,cAAK,QAAQ,KAAK,IAAIF,CAAG,IAAI,IAAI,GACjCE,EAAKF,CAAG,IAAKG,KAAgBF,MAAU,SAAaH,IAAiBG,GAC9D;AACT;","x_google_ignoreList":[0]}
|
package/dist/design-system22.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";const e=require("vue"),T=require("./design-system3.js"),v=require("./design-system6.js"),D=require("./design-system48.js"),F=require("./design-system29.js"),O=require("./design-system30.js"),U=require("./design-system39.js"),W=require("./design-
|
|
1
|
+
"use strict";const e=require("vue"),T=require("./design-system3.js"),v=require("./design-system6.js"),D=require("./design-system48.js"),F=require("./design-system29.js"),O=require("./design-system30.js"),U=require("./design-system39.js"),W=require("./design-system94.js"),j=e.createElementVNode("path",{d:"M137.4 374.6c12.5 12.5 32.8 12.5 45.3 0l128-128c9.2-9.2 11.9-22.9 6.9-34.9s-16.6-19.8-29.6-19.8L32 192c-12.9 0-24.6 7.8-29.6 19.8s-2.2 25.7 6.9 34.9l128 128z"},null,-1),H=[j],A=["id","disabled"],G={key:0},J={key:1,class:"ds-text-black/[0.4]"},K=e.createElementVNode("path",{d:"M137.4 374.6c12.5 12.5 32.8 12.5 45.3 0l128-128c9.2-9.2 11.9-22.9 6.9-34.9s-16.6-19.8-29.6-19.8L32 192c-12.9 0-24.6 7.8-29.6 19.8s-2.2 25.7 6.9 34.9l128 128z"},null,-1),Q=[K],X=["id","data-cy","data-ut"],Y={class:"ds-max-h-72 ds-overflow-y-auto ds-rounded-lg ds-bg-white ds-shadow"},Z={class:"ds-py-1 ds-text-sm ds-text-black/[0.85]"},ee=["onClick"],se=e.defineComponent({__name:"BSelect",props:{inputId:{default:""},modelValue:{},label:{default:""},items:{},disabled:{type:Boolean,default:!1},placeholder:{default:""},valueCssClass:{default:""},menuCssClass:{default:""},validationRules:{default:void 0},required:{type:Boolean,default:!1},requiredErrorMessage:{default:""},hideDetails:{type:Boolean,default:!1},allowInput:{type:Boolean,default:!1}},emits:["change","open","close","change:input","update:modelValue"],setup(x,{expose:V,emit:d}){const t=x,r=e.ref(null),k=e.ref(null),u=e.ref(null),n=e.ref(!1),{t:M}=D.useI18n(),q={validateRule:s=>!!s,errorMessage:()=>t.requiredErrorMessage||M("ds.global.field_required")},h=e.ref(""),i=e.ref(),c=e.computed(()=>t.inputId||`id-${W()}`),a=e.computed({get(){return t.modelValue},set(s){d("update:modelValue",s)}}),$=e.computed(()=>{let s="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 ";return s+=t.disabled?"ds-cursor-not-allowed ds-bg-[#f2f2f2] ds-text-black/[0.4] ":"ds-bg-white ds-text-black/[0.85] ",s+=w.value.valid?"ds-border-black/10 focus:ds-border-focus focus:ds-ring-1 focus:ds-ring-focus ":"ds-border-error focus:ds-ring-1 focus:ds-ring-error ",s}),I=e.computed(()=>{let s=[];return t.required&&s.push(q),t.validationRules&&(s=s.concat(t.validationRules)),s.length?s:void 0}),{validate:B,validationResult:w}=T.useValidationField(c.value,a,I.value);e.watch(n,s=>{s?(v.lockScrollBody(),R(),d("open")):(v.unlockScrollBody(),C(),d("close"))}),e.watch(a,()=>{g(),p()}),e.watch(()=>t.items,()=>{var s;a.value&&!((s=i.value)!=null&&s.value)&&(g(),p())},{deep:!0});const g=()=>{var s;i.value=(s=t.items)==null?void 0:s.find(l=>l.value===a.value)},p=()=>{var s;t.allowInput&&(h.value=((s=i.value)==null?void 0:s.text)||"")},N=()=>{document.addEventListener("keydown",E)},E=s=>{s.key==="Escape"&&b()},L=()=>{document.addEventListener("click",_)},_=s=>{[r.value,u.value].some(f=>s.composedPath().includes(f))||b()},S=s=>{a.value=s.value,b(),d("change",s.value),e.nextTick(()=>{B()})},z=(s,l)=>{l.style.width=`${s.offsetWidth}px`},R=()=>{e.nextTick(()=>{v.ensureVisiblePosition(r.value,u.value),z(r.value,u.value)})},C=()=>{v.resetPosition(r.value,u.value)},P=s=>{d("change:input",s)},b=()=>{var s;n.value=!1,(s=k.value)==null||s.blur(),p()};return(()=>{g(),p()})(),e.onMounted(()=>{N(),L()}),e.onBeforeUnmount(()=>{document.removeEventListener("keydown",E),document.removeEventListener("click",_),v.unlockScrollBody(),C()}),V({validate:B,selectMenu:n}),(s,l)=>{var y,f;return e.openBlock(),e.createElementBlock("div",null,[e.createElementVNode("div",{ref_key:"selectEl",ref:r},[e.createVNode(O,{id:c.value,label:s.label,required:s.required},null,8,["id","label","required"]),t.allowInput?(e.openBlock(),e.createBlock(U,{key:0,id:c.value,ref_key:"inputRef",ref:k,modelValue:h.value,"onUpdate:modelValue":[l[0]||(l[0]=o=>h.value=o),P],disabled:t.disabled,placeholder:t.placeholder,"hide-details":"",onFocus:l[1]||(l[1]=o=>n.value=!0),"onClick:append":l[2]||(l[2]=o=>{var m;return(m=k.value)==null?void 0:m.focus()})},{appendIcon:e.withCtx(()=>[(e.openBlock(),e.createElementBlock("svg",{class:e.normalizeClass([[n.value?"ds-rotate-180":""],"ds-h-4 ds-w-4 ds-transition-transform"]),viewBox:"0 0 320 512",xmlns:"http://www.w3.org/2000/svg"},H,2))]),_:1},8,["id","modelValue","disabled","placeholder"])):(e.openBlock(),e.createElementBlock("button",{key:1,id:c.value,class:e.normalizeClass($.value),disabled:t.disabled,type:"button",onClick:l[3]||(l[3]=o=>n.value=!n.value)},[e.createElementVNode("span",{class:e.normalizeClass([s.valueCssClass,"ds-truncate"])},[(y=i.value)!=null&&y.text?(e.openBlock(),e.createElementBlock("span",G,e.toDisplayString((f=i.value)==null?void 0:f.text),1)):(e.openBlock(),e.createElementBlock("span",J,e.toDisplayString(t.placeholder),1))],2),e.createTextVNode(" "),(e.openBlock(),e.createElementBlock("svg",{class:e.normalizeClass([[n.value?"ds-rotate-180":""],"ds-h-4 ds-w-4 ds-transition-transform"]),viewBox:"0 0 320 512",xmlns:"http://www.w3.org/2000/svg"},Q,2))],10,A)),e.withDirectives(e.createElementVNode("div",{id:`${c.value}Menu`,ref_key:"selectMenuEl",ref:u,class:e.normalizeClass([s.menuCssClass,"ds-absolute ds-z-50 ds-min-w-[8rem] ds-py-1"]),"data-cy":s.$attrs["data-cy"]?`${s.$attrs["data-cy"]}Menu`:void 0,"data-ut":s.$attrs["data-ut"]?`${s.$attrs["data-ut"]}Menu`:void 0},[e.createElementVNode("div",Y,[e.createElementVNode("ul",Z,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(s.items,(o,m)=>(e.openBlock(),e.createElementBlock("li",{key:`item${m}`,class:"ds-cursor-pointer",onClick:le=>S(o)},[e.createElementVNode("a",{class:e.normalizeClass([o.cssClass+`${o.value===a.value?" ds-bg-gray-150":""}`,"ds-block ds-px-4 ds-py-2 hover:ds-bg-gray-150"])},e.toDisplayString(o==null?void 0:o.text),3)],8,ee))),128))])])],10,X),[[e.vShow,n.value]])],512),s.hideDetails?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(F,{key:0,"error-message":e.unref(w).errorMessage(),class:"ds-mt-1"},null,8,["error-message"]))])}}});module.exports=se;
|
|
2
2
|
//# sourceMappingURL=design-system22.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"design-system22.js","sources":["../src/components/BSelect.vue?vue&type=script&setup=true&lang.ts"],"sourcesContent":["import { defineComponent as _defineComponent } from 'vue'\nimport { createVNode as _createVNode, createElementVNode as _createElementVNode, normalizeClass as _normalizeClass, openBlock as _openBlock, createElementBlock as _createElementBlock, withCtx as _withCtx, createBlock as _createBlock, createCommentVNode as _createCommentVNode, toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, renderList as _renderList, Fragment as _Fragment, vShow as _vShow, withDirectives as _withDirectives, unref as _unref } from \"vue\"\n\nconst _hoisted_1 = /*#__PURE__*/_createElementVNode(\"path\", { d: \"M137.4 374.6c12.5 12.5 32.8 12.5 45.3 0l128-128c9.2-9.2 11.9-22.9 6.9-34.9s-16.6-19.8-29.6-19.8L32 192c-12.9 0-24.6 7.8-29.6 19.8s-2.2 25.7 6.9 34.9l128 128z\" }, null, -1)\nconst _hoisted_2 = [\n _hoisted_1\n]\nconst _hoisted_3 = [\"id\", \"disabled\"]\nconst _hoisted_4 = { key: 0 }\nconst _hoisted_5 = {\n key: 1,\n class: \"ds-text-black/[0.4]\"\n}\nconst _hoisted_6 = /*#__PURE__*/_createElementVNode(\"path\", { d: \"M137.4 374.6c12.5 12.5 32.8 12.5 45.3 0l128-128c9.2-9.2 11.9-22.9 6.9-34.9s-16.6-19.8-29.6-19.8L32 192c-12.9 0-24.6 7.8-29.6 19.8s-2.2 25.7 6.9 34.9l128 128z\" }, null, -1)\nconst _hoisted_7 = [\n _hoisted_6\n]\nconst _hoisted_8 = [\"id\", \"data-cy\", \"data-ut\"]\nconst _hoisted_9 = { class: \"ds-max-h-72 ds-overflow-y-auto ds-rounded-lg ds-bg-white ds-shadow\" }\nconst _hoisted_10 = { class: \"ds-py-1 ds-text-sm ds-text-black/[0.85]\" }\nconst _hoisted_11 = [\"onClick\"]\n\nimport {\r\n useValidationField,\r\n type ValidationRule,\r\n} from '@/composables/Validation';\r\nimport {\r\n ensureVisiblePosition,\r\n lockScrollBody,\r\n resetPosition,\r\n unlockScrollBody,\r\n} from '@/helpers/ComponentHelper';\r\nimport type { DisplayItem } from '@/types';\r\nimport { v4 as uuid } from 'uuid';\r\nimport {\r\n computed,\r\n nextTick,\r\n onBeforeUnmount,\r\n onMounted,\r\n ref,\r\n watch,\r\n} from 'vue';\r\nimport { useI18n } from 'vue-i18n';\r\nimport BErrorMessage from './BErrorMessage.vue';\r\nimport BLabel from './BLabel.vue';\r\nimport BTextField from './BTextField.vue';\r\n\r\n//#region Props\r\nexport interface BSelectProps {\r\n inputId?: string;\r\n modelValue: string | number;\r\n label?: string;\r\n items: DisplayItem[];\r\n disabled?: boolean;\r\n placeholder?: string;\r\n valueCssClass?: string;\r\n menuCssClass?: string;\r\n /**\r\n * Array of custom validation rules.\r\n */\r\n validationRules?: ValidationRule[];\r\n /**\r\n * Validate if the field is left empty.\r\n */\r\n required?: boolean;\r\n requiredErrorMessage?: string;\r\n /**\r\n * Hide the validation error message.\r\n */\r\n hideDetails?: boolean;\r\n /**\r\n * Allow to type to search.\r\n */\r\n allowInput?: boolean;\r\n}\r\n\r\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'BSelect',\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 allowInput: { type: Boolean, default: false }\n },\n emits: [\"change\", \"open\", \"close\", \"change:input\", \"update:modelValue\"],\n setup(__props: any, { expose: __expose, emit }) {\n\nconst props = __props;\n\r\n\r\n//#endregion\r\n\r\n//#region Events\r\n\r\n//#endregion\r\n\r\n//#region Data\r\nconst selectEl = ref<HTMLElement | null>(null);\r\nconst inputRef = ref<InstanceType<typeof BTextField> | null>(null);\r\nconst selectMenuEl = ref<HTMLElement | null>(null);\r\nconst selectMenu = ref(false);\r\nconst { t } = useI18n();\r\nconst validateRequired: ValidationRule = {\r\n validateRule: (val) => !!val,\r\n errorMessage: () =>\r\n props.requiredErrorMessage || t('ds.global.field_required'),\r\n};\r\nconst inputText = ref('');\r\nconst selectedItem = ref<DisplayItem>();\r\nconst id = computed(() => props.inputId || `id-${uuid()}`);\r\nconst value = computed({\r\n get() {\r\n return props.modelValue;\r\n },\r\n set(val) {\r\n emit('update:modelValue', val);\r\n },\r\n});\r\nconst btnCssClass = computed(() => {\r\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 `;\r\n result += props.disabled\r\n ? `ds-cursor-not-allowed ds-bg-[#f2f2f2] ds-text-black/[0.4] `\r\n : `ds-bg-white ds-text-black/[0.85] `;\r\n result += !validationResult.value.valid\r\n ? `ds-border-error focus:ds-ring-1 focus:ds-ring-error `\r\n : `ds-border-black/10 focus:ds-border-focus focus:ds-ring-1 focus:ds-ring-focus `;\r\n\r\n return result;\r\n});\r\nconst vRules = computed(() => {\r\n let result: ValidationRule[] = [];\r\n\r\n if (props.required) {\r\n result.push(validateRequired);\r\n }\r\n if (props.validationRules) {\r\n result = result.concat(props.validationRules);\r\n }\r\n\r\n return result.length ? result : undefined;\r\n});\r\n\r\nconst { validate, validationResult } = useValidationField(\r\n id.value,\r\n value,\r\n vRules.value,\r\n);\r\n//#endregion\r\n\r\n//#region Watchers\r\nwatch(selectMenu, (val) => {\r\n if (val) {\r\n lockScrollBody();\r\n ensureMenuPosition();\r\n emit('open');\r\n } else {\r\n unlockScrollBody();\r\n resetMenuPosition();\r\n emit('close');\r\n }\r\n});\r\nwatch(value, () => {\r\n ensureSelectedItem();\r\n ensureInputText();\r\n});\r\nwatch(\r\n () => props.items,\r\n () => {\r\n if (value.value && !selectedItem.value?.value) {\r\n ensureSelectedItem();\r\n ensureInputText();\r\n }\r\n },\r\n {\r\n deep: true,\r\n },\r\n);\r\n//#endregion\r\n\r\n//#region Methods\r\nconst ensureSelectedItem = () => {\r\n selectedItem.value = props.items?.find((i) => i.value === value.value);\r\n};\r\nconst ensureInputText = () => {\r\n if (props.allowInput) {\r\n inputText.value = selectedItem.value?.text || '';\r\n }\r\n};\r\nconst initPressEscapeEventListener = () => {\r\n document.addEventListener('keydown', closeOnEscapePressed);\r\n};\r\nconst closeOnEscapePressed = (event: KeyboardEvent) => {\r\n if (event.key === 'Escape') {\r\n closeSelectMenu();\r\n }\r\n};\r\nconst initClickOutsideEventListener = () => {\r\n document.addEventListener('click', closeOnClickOutside);\r\n};\r\nconst closeOnClickOutside = (event: any) => {\r\n const refs = [selectEl.value, selectMenuEl.value];\r\n const withinBoundaries = refs.some((r) => event.composedPath().includes(r));\r\n if (!withinBoundaries) {\r\n closeSelectMenu();\r\n }\r\n};\r\nconst onClickItem = (item: DisplayItem) => {\r\n value.value = item.value;\r\n closeSelectMenu();\r\n emit('change', item.value);\r\n nextTick(() => {\r\n validate();\r\n });\r\n};\r\nconst ensureMenuWidth = (parentEl: HTMLElement, menuEl: HTMLElement) => {\r\n menuEl.style.width = `${parentEl.offsetWidth}px`;\r\n};\r\nconst ensureMenuPosition = () => {\r\n nextTick(() => {\r\n ensureVisiblePosition(selectEl.value!, selectMenuEl.value!);\r\n ensureMenuWidth(selectEl.value!, selectMenuEl.value!);\r\n });\r\n};\r\nconst resetMenuPosition = () => {\r\n resetPosition(selectEl.value!, selectMenuEl.value!);\r\n};\r\nconst onChangeInputText = (text: string) => {\r\n emit('change:input', text);\r\n};\r\nconst closeSelectMenu = () => {\r\n selectMenu.value = false;\r\n inputRef.value?.blur();\r\n ensureInputText();\r\n};\r\nconst init = () => {\r\n ensureSelectedItem();\r\n ensureInputText();\r\n};\r\ninit();\r\n//#endregion\r\n\r\n//#region Lifecycle Hooks\r\nonMounted(() => {\r\n initPressEscapeEventListener();\r\n initClickOutsideEventListener();\r\n});\r\nonBeforeUnmount(() => {\r\n document.removeEventListener('keydown', closeOnEscapePressed);\r\n document.removeEventListener('click', closeOnClickOutside);\r\n unlockScrollBody();\r\n // Make sure dropdown menu unmounted with itself\r\n resetMenuPosition();\r\n});\r\n//#endregion\r\n\r\n__expose({ validate, selectMenu });\r\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: _ctx.label,\n required: _ctx.required\n }, null, 8, [\"id\", \"label\", \"required\"]),\n (props.allowInput)\n ? (_openBlock(), _createBlock(BTextField, {\n key: 0,\n id: id.value,\n ref_key: \"inputRef\",\n ref: inputRef,\n modelValue: inputText.value,\n \"onUpdate:modelValue\": [\n _cache[0] || (_cache[0] = ($event: any) => ((inputText).value = $event)),\n onChangeInputText\n ],\n disabled: props.disabled,\n placeholder: props.placeholder,\n \"hide-details\": \"\",\n onFocus: _cache[1] || (_cache[1] = ($event: any) => (selectMenu.value = true)),\n \"onClick:append\": _cache[2] || (_cache[2] = ($event: any) => (inputRef.value?.focus()))\n }, {\n appendIcon: _withCtx(() => [\n (_openBlock(), _createElementBlock(\"svg\", {\n class: _normalizeClass([[selectMenu.value ? 'ds-rotate-180' : ''], \"ds-h-4 ds-w-4 ds-transition-transform\"]),\n viewBox: \"0 0 320 512\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, _hoisted_2, 2))\n ]),\n _: 1\n }, 8, [\"id\", \"modelValue\", \"disabled\", \"placeholder\"]))\n : (_openBlock(), _createElementBlock(\"button\", {\n key: 1,\n id: id.value,\n class: _normalizeClass(btnCssClass.value),\n disabled: props.disabled,\n type: \"button\",\n onClick: _cache[3] || (_cache[3] = ($event: any) => (selectMenu.value = !selectMenu.value))\n }, [\n _createElementVNode(\"span\", {\n class: _normalizeClass([_ctx.valueCssClass, \"ds-truncate\"])\n }, [\n (selectedItem.value?.text)\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_4, _toDisplayString(selectedItem.value?.text), 1))\n : (_openBlock(), _createElementBlock(\"span\", _hoisted_5, _toDisplayString(props.placeholder), 1))\n ], 2),\n _createTextVNode(\" \"),\n (_openBlock(), _createElementBlock(\"svg\", {\n class: _normalizeClass([[selectMenu.value ? 'ds-rotate-180' : ''], \"ds-h-4 ds-w-4 ds-transition-transform\"]),\n viewBox: \"0 0 320 512\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, _hoisted_7, 2))\n ], 10, _hoisted_3)),\n _withDirectives(_createElementVNode(\"div\", {\n id: `${id.value}Menu`,\n ref_key: \"selectMenuEl\",\n ref: selectMenuEl,\n class: _normalizeClass([_ctx.menuCssClass, \"ds-absolute ds-z-50 ds-min-w-[8rem] ds-py-1\"]),\n \"data-cy\": _ctx.$attrs['data-cy'] ? `${_ctx.$attrs['data-cy']}Menu` : undefined,\n \"data-ut\": _ctx.$attrs['data-ut'] ? `${_ctx.$attrs['data-ut']}Menu` : undefined\n }, [\n _createElementVNode(\"div\", _hoisted_9, [\n _createElementVNode(\"ul\", _hoisted_10, [\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: ($event: any) => (onClickItem(item))\n }, [\n _createElementVNode(\"a\", {\n class: _normalizeClass([\r\n item.cssClass +\r\n `${item.value === value.value ? ' ds-bg-gray-150' : ''}`\r\n , \"ds-block ds-px-4 ds-py-2 hover:ds-bg-gray-150\"])\n }, _toDisplayString(item?.text), 3)\n ], 8, _hoisted_11))\n }), 128))\n ])\n ])\n ], 10, _hoisted_8), [\n [_vShow, selectMenu.value]\n ])\n ], 512),\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","_hoisted_2","_hoisted_3","_hoisted_4","_hoisted_5","_hoisted_6","_hoisted_7","_hoisted_8","_hoisted_9","_hoisted_10","_hoisted_11","_sfc_main","_defineComponent","__props","__expose","emit","props","selectEl","ref","inputRef","selectMenuEl","selectMenu","t","useI18n","validateRequired","val","inputText","selectedItem","id","computed","uuid","value","btnCssClass","result","validationResult","vRules","validate","useValidationField","watch","lockScrollBody","ensureMenuPosition","unlockScrollBody","resetMenuPosition","ensureSelectedItem","ensureInputText","_a","i","initPressEscapeEventListener","closeOnEscapePressed","event","closeSelectMenu","initClickOutsideEventListener","closeOnClickOutside","r","onClickItem","item","nextTick","ensureMenuWidth","parentEl","menuEl","ensureVisiblePosition","resetPosition","onChangeInputText","text","onMounted","onBeforeUnmount","_ctx","_cache","_openBlock","_createElementBlock","_createElementVNode","_createVNode","BLabel","_createBlock","BTextField","$event","_withCtx","_normalizeClass","_toDisplayString","_b","_createTextVNode","_withDirectives","_Fragment","_renderList","index","_vShow","_createCommentVNode","BErrorMessage","_unref"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"design-system22.js","sources":["../src/components/BSelect.vue?vue&type=script&setup=true&lang.ts"],"sourcesContent":["import { defineComponent as _defineComponent } from 'vue'\nimport { createVNode as _createVNode, createElementVNode as _createElementVNode, normalizeClass as _normalizeClass, openBlock as _openBlock, createElementBlock as _createElementBlock, withCtx as _withCtx, createBlock as _createBlock, createCommentVNode as _createCommentVNode, toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, renderList as _renderList, Fragment as _Fragment, vShow as _vShow, withDirectives as _withDirectives, unref as _unref } from \"vue\"\n\nconst _hoisted_1 = /*#__PURE__*/_createElementVNode(\"path\", { d: \"M137.4 374.6c12.5 12.5 32.8 12.5 45.3 0l128-128c9.2-9.2 11.9-22.9 6.9-34.9s-16.6-19.8-29.6-19.8L32 192c-12.9 0-24.6 7.8-29.6 19.8s-2.2 25.7 6.9 34.9l128 128z\" }, null, -1)\nconst _hoisted_2 = [\n _hoisted_1\n]\nconst _hoisted_3 = [\"id\", \"disabled\"]\nconst _hoisted_4 = { key: 0 }\nconst _hoisted_5 = {\n key: 1,\n class: \"ds-text-black/[0.4]\"\n}\nconst _hoisted_6 = /*#__PURE__*/_createElementVNode(\"path\", { d: \"M137.4 374.6c12.5 12.5 32.8 12.5 45.3 0l128-128c9.2-9.2 11.9-22.9 6.9-34.9s-16.6-19.8-29.6-19.8L32 192c-12.9 0-24.6 7.8-29.6 19.8s-2.2 25.7 6.9 34.9l128 128z\" }, null, -1)\nconst _hoisted_7 = [\n _hoisted_6\n]\nconst _hoisted_8 = [\"id\", \"data-cy\", \"data-ut\"]\nconst _hoisted_9 = { class: \"ds-max-h-72 ds-overflow-y-auto ds-rounded-lg ds-bg-white ds-shadow\" }\nconst _hoisted_10 = { class: \"ds-py-1 ds-text-sm ds-text-black/[0.85]\" }\nconst _hoisted_11 = [\"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 BErrorMessage from './BErrorMessage.vue';\nimport BLabel from './BLabel.vue';\nimport BTextField from './BTextField.vue';\n\n//#region Props\nexport interface BSelectProps {\n inputId?: string;\n modelValue: string | number;\n label?: string;\n items: DisplayItem[];\n disabled?: boolean;\n placeholder?: string;\n valueCssClass?: string;\n menuCssClass?: string;\n /**\n * Array of custom validation rules.\n */\n validationRules?: ValidationRule[];\n /**\n * Validate if the field is left empty.\n */\n required?: boolean;\n requiredErrorMessage?: string;\n /**\n * Hide the validation error message.\n */\n hideDetails?: boolean;\n /**\n * Allow to type to search.\n */\n allowInput?: boolean;\n}\n\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'BSelect',\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 allowInput: { type: Boolean, default: false }\n },\n emits: [\"change\", \"open\", \"close\", \"change:input\", \"update:modelValue\"],\n setup(__props: any, { expose: __expose, emit }) {\n\nconst props = __props;\n\n\n//#endregion\n\n//#region Events\n\n//#endregion\n\n//#region Data\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) => !!val,\n errorMessage: () =>\n props.requiredErrorMessage || t('ds.global.field_required'),\n};\nconst inputText = ref('');\nconst selectedItem = 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});\n\nconst { validate, validationResult } = useValidationField(\n id.value,\n value,\n vRules.value,\n);\n//#endregion\n\n//#region Watchers\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(value, () => {\n ensureSelectedItem();\n ensureInputText();\n});\nwatch(\n () => props.items,\n () => {\n if (value.value && !selectedItem.value?.value) {\n ensureSelectedItem();\n ensureInputText();\n }\n },\n {\n deep: true,\n },\n);\n//#endregion\n\n//#region Methods\nconst ensureSelectedItem = () => {\n selectedItem.value = props.items?.find((i) => i.value === value.value);\n};\nconst ensureInputText = () => {\n if (props.allowInput) {\n inputText.value = selectedItem.value?.text || '';\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 value.value = item.value;\n closeSelectMenu();\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 ensureInputText();\n};\nconst init = () => {\n ensureSelectedItem();\n ensureInputText();\n};\ninit();\n//#endregion\n\n//#region Lifecycle Hooks\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//#endregion\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: _ctx.label,\n required: _ctx.required\n }, null, 8, [\"id\", \"label\", \"required\"]),\n (props.allowInput)\n ? (_openBlock(), _createBlock(BTextField, {\n key: 0,\n id: id.value,\n ref_key: \"inputRef\",\n ref: inputRef,\n modelValue: inputText.value,\n \"onUpdate:modelValue\": [\n _cache[0] || (_cache[0] = ($event: any) => ((inputText).value = $event)),\n onChangeInputText\n ],\n disabled: props.disabled,\n placeholder: props.placeholder,\n \"hide-details\": \"\",\n onFocus: _cache[1] || (_cache[1] = ($event: any) => (selectMenu.value = true)),\n \"onClick:append\": _cache[2] || (_cache[2] = ($event: any) => (inputRef.value?.focus()))\n }, {\n appendIcon: _withCtx(() => [\n (_openBlock(), _createElementBlock(\"svg\", {\n class: _normalizeClass([[selectMenu.value ? 'ds-rotate-180' : ''], \"ds-h-4 ds-w-4 ds-transition-transform\"]),\n viewBox: \"0 0 320 512\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, _hoisted_2, 2))\n ]),\n _: 1\n }, 8, [\"id\", \"modelValue\", \"disabled\", \"placeholder\"]))\n : (_openBlock(), _createElementBlock(\"button\", {\n key: 1,\n id: id.value,\n class: _normalizeClass(btnCssClass.value),\n disabled: props.disabled,\n type: \"button\",\n onClick: _cache[3] || (_cache[3] = ($event: any) => (selectMenu.value = !selectMenu.value))\n }, [\n _createElementVNode(\"span\", {\n class: _normalizeClass([_ctx.valueCssClass, \"ds-truncate\"])\n }, [\n (selectedItem.value?.text)\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_4, _toDisplayString(selectedItem.value?.text), 1))\n : (_openBlock(), _createElementBlock(\"span\", _hoisted_5, _toDisplayString(props.placeholder), 1))\n ], 2),\n _createTextVNode(\" \"),\n (_openBlock(), _createElementBlock(\"svg\", {\n class: _normalizeClass([[selectMenu.value ? 'ds-rotate-180' : ''], \"ds-h-4 ds-w-4 ds-transition-transform\"]),\n viewBox: \"0 0 320 512\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, _hoisted_7, 2))\n ], 10, _hoisted_3)),\n _withDirectives(_createElementVNode(\"div\", {\n id: `${id.value}Menu`,\n ref_key: \"selectMenuEl\",\n ref: selectMenuEl,\n class: _normalizeClass([_ctx.menuCssClass, \"ds-absolute ds-z-50 ds-min-w-[8rem] ds-py-1\"]),\n \"data-cy\": _ctx.$attrs['data-cy'] ? `${_ctx.$attrs['data-cy']}Menu` : undefined,\n \"data-ut\": _ctx.$attrs['data-ut'] ? `${_ctx.$attrs['data-ut']}Menu` : undefined\n }, [\n _createElementVNode(\"div\", _hoisted_9, [\n _createElementVNode(\"ul\", _hoisted_10, [\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: ($event: any) => (onClickItem(item))\n }, [\n _createElementVNode(\"a\", {\n class: _normalizeClass([\n item.cssClass +\n `${item.value === value.value ? ' ds-bg-gray-150' : ''}`\n , \"ds-block ds-px-4 ds-py-2 hover:ds-bg-gray-150\"])\n }, _toDisplayString(item?.text), 3)\n ], 8, _hoisted_11))\n }), 128))\n ])\n ])\n ], 10, _hoisted_8), [\n [_vShow, selectMenu.value]\n ])\n ], 512),\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","_hoisted_2","_hoisted_3","_hoisted_4","_hoisted_5","_hoisted_6","_hoisted_7","_hoisted_8","_hoisted_9","_hoisted_10","_hoisted_11","_sfc_main","_defineComponent","__props","__expose","emit","props","selectEl","ref","inputRef","selectMenuEl","selectMenu","t","useI18n","validateRequired","val","inputText","selectedItem","id","computed","uuid","value","btnCssClass","result","validationResult","vRules","validate","useValidationField","watch","lockScrollBody","ensureMenuPosition","unlockScrollBody","resetMenuPosition","ensureSelectedItem","ensureInputText","_a","i","initPressEscapeEventListener","closeOnEscapePressed","event","closeSelectMenu","initClickOutsideEventListener","closeOnClickOutside","r","onClickItem","item","nextTick","ensureMenuWidth","parentEl","menuEl","ensureVisiblePosition","resetPosition","onChangeInputText","text","onMounted","onBeforeUnmount","_ctx","_cache","_openBlock","_createElementBlock","_createElementVNode","_createVNode","BLabel","_createBlock","BTextField","$event","_withCtx","_normalizeClass","_toDisplayString","_b","_createTextVNode","_withDirectives","_Fragment","_renderList","index","_vShow","_createCommentVNode","BErrorMessage","_unref"],"mappings":"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"}
|
package/dist/design-system22.mjs
CHANGED
|
@@ -5,7 +5,7 @@ import { useI18n as re } from "./design-system48.mjs";
|
|
|
5
5
|
import ie from "./design-system29.mjs";
|
|
6
6
|
import ce from "./design-system30.mjs";
|
|
7
7
|
import ve from "./design-system39.mjs";
|
|
8
|
-
import pe from "./design-
|
|
8
|
+
import pe from "./design-system94.mjs";
|
|
9
9
|
const fe = /* @__PURE__ */ n("path", { d: "M137.4 374.6c12.5 12.5 32.8 12.5 45.3 0l128-128c9.2-9.2 11.9-22.9 6.9-34.9s-16.6-19.8-29.6-19.8L32 192c-12.9 0-24.6 7.8-29.6 19.8s-2.2 25.7 6.9 34.9l128 128z" }, null, -1), me = [
|
|
10
10
|
fe
|
|
11
11
|
], he = ["id", "disabled"], be = { key: 0 }, ge = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"design-system22.mjs","sources":["../src/components/BSelect.vue?vue&type=script&setup=true&lang.ts"],"sourcesContent":["import { defineComponent as _defineComponent } from 'vue'\nimport { createVNode as _createVNode, createElementVNode as _createElementVNode, normalizeClass as _normalizeClass, openBlock as _openBlock, createElementBlock as _createElementBlock, withCtx as _withCtx, createBlock as _createBlock, createCommentVNode as _createCommentVNode, toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, renderList as _renderList, Fragment as _Fragment, vShow as _vShow, withDirectives as _withDirectives, unref as _unref } from \"vue\"\n\nconst _hoisted_1 = /*#__PURE__*/_createElementVNode(\"path\", { d: \"M137.4 374.6c12.5 12.5 32.8 12.5 45.3 0l128-128c9.2-9.2 11.9-22.9 6.9-34.9s-16.6-19.8-29.6-19.8L32 192c-12.9 0-24.6 7.8-29.6 19.8s-2.2 25.7 6.9 34.9l128 128z\" }, null, -1)\nconst _hoisted_2 = [\n _hoisted_1\n]\nconst _hoisted_3 = [\"id\", \"disabled\"]\nconst _hoisted_4 = { key: 0 }\nconst _hoisted_5 = {\n key: 1,\n class: \"ds-text-black/[0.4]\"\n}\nconst _hoisted_6 = /*#__PURE__*/_createElementVNode(\"path\", { d: \"M137.4 374.6c12.5 12.5 32.8 12.5 45.3 0l128-128c9.2-9.2 11.9-22.9 6.9-34.9s-16.6-19.8-29.6-19.8L32 192c-12.9 0-24.6 7.8-29.6 19.8s-2.2 25.7 6.9 34.9l128 128z\" }, null, -1)\nconst _hoisted_7 = [\n _hoisted_6\n]\nconst _hoisted_8 = [\"id\", \"data-cy\", \"data-ut\"]\nconst _hoisted_9 = { class: \"ds-max-h-72 ds-overflow-y-auto ds-rounded-lg ds-bg-white ds-shadow\" }\nconst _hoisted_10 = { class: \"ds-py-1 ds-text-sm ds-text-black/[0.85]\" }\nconst _hoisted_11 = [\"onClick\"]\n\nimport {\r\n useValidationField,\r\n type ValidationRule,\r\n} from '@/composables/Validation';\r\nimport {\r\n ensureVisiblePosition,\r\n lockScrollBody,\r\n resetPosition,\r\n unlockScrollBody,\r\n} from '@/helpers/ComponentHelper';\r\nimport type { DisplayItem } from '@/types';\r\nimport { v4 as uuid } from 'uuid';\r\nimport {\r\n computed,\r\n nextTick,\r\n onBeforeUnmount,\r\n onMounted,\r\n ref,\r\n watch,\r\n} from 'vue';\r\nimport { useI18n } from 'vue-i18n';\r\nimport BErrorMessage from './BErrorMessage.vue';\r\nimport BLabel from './BLabel.vue';\r\nimport BTextField from './BTextField.vue';\r\n\r\n//#region Props\r\nexport interface BSelectProps {\r\n inputId?: string;\r\n modelValue: string | number;\r\n label?: string;\r\n items: DisplayItem[];\r\n disabled?: boolean;\r\n placeholder?: string;\r\n valueCssClass?: string;\r\n menuCssClass?: string;\r\n /**\r\n * Array of custom validation rules.\r\n */\r\n validationRules?: ValidationRule[];\r\n /**\r\n * Validate if the field is left empty.\r\n */\r\n required?: boolean;\r\n requiredErrorMessage?: string;\r\n /**\r\n * Hide the validation error message.\r\n */\r\n hideDetails?: boolean;\r\n /**\r\n * Allow to type to search.\r\n */\r\n allowInput?: boolean;\r\n}\r\n\r\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'BSelect',\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 allowInput: { type: Boolean, default: false }\n },\n emits: [\"change\", \"open\", \"close\", \"change:input\", \"update:modelValue\"],\n setup(__props: any, { expose: __expose, emit }) {\n\nconst props = __props;\n\r\n\r\n//#endregion\r\n\r\n//#region Events\r\n\r\n//#endregion\r\n\r\n//#region Data\r\nconst selectEl = ref<HTMLElement | null>(null);\r\nconst inputRef = ref<InstanceType<typeof BTextField> | null>(null);\r\nconst selectMenuEl = ref<HTMLElement | null>(null);\r\nconst selectMenu = ref(false);\r\nconst { t } = useI18n();\r\nconst validateRequired: ValidationRule = {\r\n validateRule: (val) => !!val,\r\n errorMessage: () =>\r\n props.requiredErrorMessage || t('ds.global.field_required'),\r\n};\r\nconst inputText = ref('');\r\nconst selectedItem = ref<DisplayItem>();\r\nconst id = computed(() => props.inputId || `id-${uuid()}`);\r\nconst value = computed({\r\n get() {\r\n return props.modelValue;\r\n },\r\n set(val) {\r\n emit('update:modelValue', val);\r\n },\r\n});\r\nconst btnCssClass = computed(() => {\r\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 `;\r\n result += props.disabled\r\n ? `ds-cursor-not-allowed ds-bg-[#f2f2f2] ds-text-black/[0.4] `\r\n : `ds-bg-white ds-text-black/[0.85] `;\r\n result += !validationResult.value.valid\r\n ? `ds-border-error focus:ds-ring-1 focus:ds-ring-error `\r\n : `ds-border-black/10 focus:ds-border-focus focus:ds-ring-1 focus:ds-ring-focus `;\r\n\r\n return result;\r\n});\r\nconst vRules = computed(() => {\r\n let result: ValidationRule[] = [];\r\n\r\n if (props.required) {\r\n result.push(validateRequired);\r\n }\r\n if (props.validationRules) {\r\n result = result.concat(props.validationRules);\r\n }\r\n\r\n return result.length ? result : undefined;\r\n});\r\n\r\nconst { validate, validationResult } = useValidationField(\r\n id.value,\r\n value,\r\n vRules.value,\r\n);\r\n//#endregion\r\n\r\n//#region Watchers\r\nwatch(selectMenu, (val) => {\r\n if (val) {\r\n lockScrollBody();\r\n ensureMenuPosition();\r\n emit('open');\r\n } else {\r\n unlockScrollBody();\r\n resetMenuPosition();\r\n emit('close');\r\n }\r\n});\r\nwatch(value, () => {\r\n ensureSelectedItem();\r\n ensureInputText();\r\n});\r\nwatch(\r\n () => props.items,\r\n () => {\r\n if (value.value && !selectedItem.value?.value) {\r\n ensureSelectedItem();\r\n ensureInputText();\r\n }\r\n },\r\n {\r\n deep: true,\r\n },\r\n);\r\n//#endregion\r\n\r\n//#region Methods\r\nconst ensureSelectedItem = () => {\r\n selectedItem.value = props.items?.find((i) => i.value === value.value);\r\n};\r\nconst ensureInputText = () => {\r\n if (props.allowInput) {\r\n inputText.value = selectedItem.value?.text || '';\r\n }\r\n};\r\nconst initPressEscapeEventListener = () => {\r\n document.addEventListener('keydown', closeOnEscapePressed);\r\n};\r\nconst closeOnEscapePressed = (event: KeyboardEvent) => {\r\n if (event.key === 'Escape') {\r\n closeSelectMenu();\r\n }\r\n};\r\nconst initClickOutsideEventListener = () => {\r\n document.addEventListener('click', closeOnClickOutside);\r\n};\r\nconst closeOnClickOutside = (event: any) => {\r\n const refs = [selectEl.value, selectMenuEl.value];\r\n const withinBoundaries = refs.some((r) => event.composedPath().includes(r));\r\n if (!withinBoundaries) {\r\n closeSelectMenu();\r\n }\r\n};\r\nconst onClickItem = (item: DisplayItem) => {\r\n value.value = item.value;\r\n closeSelectMenu();\r\n emit('change', item.value);\r\n nextTick(() => {\r\n validate();\r\n });\r\n};\r\nconst ensureMenuWidth = (parentEl: HTMLElement, menuEl: HTMLElement) => {\r\n menuEl.style.width = `${parentEl.offsetWidth}px`;\r\n};\r\nconst ensureMenuPosition = () => {\r\n nextTick(() => {\r\n ensureVisiblePosition(selectEl.value!, selectMenuEl.value!);\r\n ensureMenuWidth(selectEl.value!, selectMenuEl.value!);\r\n });\r\n};\r\nconst resetMenuPosition = () => {\r\n resetPosition(selectEl.value!, selectMenuEl.value!);\r\n};\r\nconst onChangeInputText = (text: string) => {\r\n emit('change:input', text);\r\n};\r\nconst closeSelectMenu = () => {\r\n selectMenu.value = false;\r\n inputRef.value?.blur();\r\n ensureInputText();\r\n};\r\nconst init = () => {\r\n ensureSelectedItem();\r\n ensureInputText();\r\n};\r\ninit();\r\n//#endregion\r\n\r\n//#region Lifecycle Hooks\r\nonMounted(() => {\r\n initPressEscapeEventListener();\r\n initClickOutsideEventListener();\r\n});\r\nonBeforeUnmount(() => {\r\n document.removeEventListener('keydown', closeOnEscapePressed);\r\n document.removeEventListener('click', closeOnClickOutside);\r\n unlockScrollBody();\r\n // Make sure dropdown menu unmounted with itself\r\n resetMenuPosition();\r\n});\r\n//#endregion\r\n\r\n__expose({ validate, selectMenu });\r\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: _ctx.label,\n required: _ctx.required\n }, null, 8, [\"id\", \"label\", \"required\"]),\n (props.allowInput)\n ? (_openBlock(), _createBlock(BTextField, {\n key: 0,\n id: id.value,\n ref_key: \"inputRef\",\n ref: inputRef,\n modelValue: inputText.value,\n \"onUpdate:modelValue\": [\n _cache[0] || (_cache[0] = ($event: any) => ((inputText).value = $event)),\n onChangeInputText\n ],\n disabled: props.disabled,\n placeholder: props.placeholder,\n \"hide-details\": \"\",\n onFocus: _cache[1] || (_cache[1] = ($event: any) => (selectMenu.value = true)),\n \"onClick:append\": _cache[2] || (_cache[2] = ($event: any) => (inputRef.value?.focus()))\n }, {\n appendIcon: _withCtx(() => [\n (_openBlock(), _createElementBlock(\"svg\", {\n class: _normalizeClass([[selectMenu.value ? 'ds-rotate-180' : ''], \"ds-h-4 ds-w-4 ds-transition-transform\"]),\n viewBox: \"0 0 320 512\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, _hoisted_2, 2))\n ]),\n _: 1\n }, 8, [\"id\", \"modelValue\", \"disabled\", \"placeholder\"]))\n : (_openBlock(), _createElementBlock(\"button\", {\n key: 1,\n id: id.value,\n class: _normalizeClass(btnCssClass.value),\n disabled: props.disabled,\n type: \"button\",\n onClick: _cache[3] || (_cache[3] = ($event: any) => (selectMenu.value = !selectMenu.value))\n }, [\n _createElementVNode(\"span\", {\n class: _normalizeClass([_ctx.valueCssClass, \"ds-truncate\"])\n }, [\n (selectedItem.value?.text)\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_4, _toDisplayString(selectedItem.value?.text), 1))\n : (_openBlock(), _createElementBlock(\"span\", _hoisted_5, _toDisplayString(props.placeholder), 1))\n ], 2),\n _createTextVNode(\" \"),\n (_openBlock(), _createElementBlock(\"svg\", {\n class: _normalizeClass([[selectMenu.value ? 'ds-rotate-180' : ''], \"ds-h-4 ds-w-4 ds-transition-transform\"]),\n viewBox: \"0 0 320 512\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, _hoisted_7, 2))\n ], 10, _hoisted_3)),\n _withDirectives(_createElementVNode(\"div\", {\n id: `${id.value}Menu`,\n ref_key: \"selectMenuEl\",\n ref: selectMenuEl,\n class: _normalizeClass([_ctx.menuCssClass, \"ds-absolute ds-z-50 ds-min-w-[8rem] ds-py-1\"]),\n \"data-cy\": _ctx.$attrs['data-cy'] ? `${_ctx.$attrs['data-cy']}Menu` : undefined,\n \"data-ut\": _ctx.$attrs['data-ut'] ? `${_ctx.$attrs['data-ut']}Menu` : undefined\n }, [\n _createElementVNode(\"div\", _hoisted_9, [\n _createElementVNode(\"ul\", _hoisted_10, [\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: ($event: any) => (onClickItem(item))\n }, [\n _createElementVNode(\"a\", {\n class: _normalizeClass([\r\n item.cssClass +\r\n `${item.value === value.value ? ' ds-bg-gray-150' : ''}`\r\n , \"ds-block ds-px-4 ds-py-2 hover:ds-bg-gray-150\"])\n }, _toDisplayString(item?.text), 3)\n ], 8, _hoisted_11))\n }), 128))\n ])\n ])\n ], 10, _hoisted_8), [\n [_vShow, selectMenu.value]\n ])\n ], 512),\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","_hoisted_2","_hoisted_3","_hoisted_4","_hoisted_5","_hoisted_6","_hoisted_7","_hoisted_8","_hoisted_9","_hoisted_10","_hoisted_11","_sfc_main","_defineComponent","__props","__expose","emit","props","selectEl","ref","inputRef","selectMenuEl","selectMenu","t","useI18n","validateRequired","val","inputText","selectedItem","id","computed","uuid","value","btnCssClass","result","validationResult","vRules","validate","useValidationField","watch","lockScrollBody","ensureMenuPosition","unlockScrollBody","resetMenuPosition","ensureSelectedItem","ensureInputText","_a","i","initPressEscapeEventListener","closeOnEscapePressed","event","closeSelectMenu","initClickOutsideEventListener","closeOnClickOutside","r","onClickItem","item","nextTick","ensureMenuWidth","parentEl","menuEl","ensureVisiblePosition","resetPosition","onChangeInputText","text","onMounted","onBeforeUnmount","_ctx","_cache","_openBlock","_createElementBlock","_createElementVNode","_createVNode","BLabel","_createBlock","BTextField","$event","_withCtx","_normalizeClass","_toDisplayString","_b","_createTextVNode","_withDirectives","_Fragment","_renderList","index","_vShow","_createCommentVNode","BErrorMessage","_unref"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"design-system22.mjs","sources":["../src/components/BSelect.vue?vue&type=script&setup=true&lang.ts"],"sourcesContent":["import { defineComponent as _defineComponent } from 'vue'\nimport { createVNode as _createVNode, createElementVNode as _createElementVNode, normalizeClass as _normalizeClass, openBlock as _openBlock, createElementBlock as _createElementBlock, withCtx as _withCtx, createBlock as _createBlock, createCommentVNode as _createCommentVNode, toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, renderList as _renderList, Fragment as _Fragment, vShow as _vShow, withDirectives as _withDirectives, unref as _unref } from \"vue\"\n\nconst _hoisted_1 = /*#__PURE__*/_createElementVNode(\"path\", { d: \"M137.4 374.6c12.5 12.5 32.8 12.5 45.3 0l128-128c9.2-9.2 11.9-22.9 6.9-34.9s-16.6-19.8-29.6-19.8L32 192c-12.9 0-24.6 7.8-29.6 19.8s-2.2 25.7 6.9 34.9l128 128z\" }, null, -1)\nconst _hoisted_2 = [\n _hoisted_1\n]\nconst _hoisted_3 = [\"id\", \"disabled\"]\nconst _hoisted_4 = { key: 0 }\nconst _hoisted_5 = {\n key: 1,\n class: \"ds-text-black/[0.4]\"\n}\nconst _hoisted_6 = /*#__PURE__*/_createElementVNode(\"path\", { d: \"M137.4 374.6c12.5 12.5 32.8 12.5 45.3 0l128-128c9.2-9.2 11.9-22.9 6.9-34.9s-16.6-19.8-29.6-19.8L32 192c-12.9 0-24.6 7.8-29.6 19.8s-2.2 25.7 6.9 34.9l128 128z\" }, null, -1)\nconst _hoisted_7 = [\n _hoisted_6\n]\nconst _hoisted_8 = [\"id\", \"data-cy\", \"data-ut\"]\nconst _hoisted_9 = { class: \"ds-max-h-72 ds-overflow-y-auto ds-rounded-lg ds-bg-white ds-shadow\" }\nconst _hoisted_10 = { class: \"ds-py-1 ds-text-sm ds-text-black/[0.85]\" }\nconst _hoisted_11 = [\"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 BErrorMessage from './BErrorMessage.vue';\nimport BLabel from './BLabel.vue';\nimport BTextField from './BTextField.vue';\n\n//#region Props\nexport interface BSelectProps {\n inputId?: string;\n modelValue: string | number;\n label?: string;\n items: DisplayItem[];\n disabled?: boolean;\n placeholder?: string;\n valueCssClass?: string;\n menuCssClass?: string;\n /**\n * Array of custom validation rules.\n */\n validationRules?: ValidationRule[];\n /**\n * Validate if the field is left empty.\n */\n required?: boolean;\n requiredErrorMessage?: string;\n /**\n * Hide the validation error message.\n */\n hideDetails?: boolean;\n /**\n * Allow to type to search.\n */\n allowInput?: boolean;\n}\n\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'BSelect',\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 allowInput: { type: Boolean, default: false }\n },\n emits: [\"change\", \"open\", \"close\", \"change:input\", \"update:modelValue\"],\n setup(__props: any, { expose: __expose, emit }) {\n\nconst props = __props;\n\n\n//#endregion\n\n//#region Events\n\n//#endregion\n\n//#region Data\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) => !!val,\n errorMessage: () =>\n props.requiredErrorMessage || t('ds.global.field_required'),\n};\nconst inputText = ref('');\nconst selectedItem = 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});\n\nconst { validate, validationResult } = useValidationField(\n id.value,\n value,\n vRules.value,\n);\n//#endregion\n\n//#region Watchers\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(value, () => {\n ensureSelectedItem();\n ensureInputText();\n});\nwatch(\n () => props.items,\n () => {\n if (value.value && !selectedItem.value?.value) {\n ensureSelectedItem();\n ensureInputText();\n }\n },\n {\n deep: true,\n },\n);\n//#endregion\n\n//#region Methods\nconst ensureSelectedItem = () => {\n selectedItem.value = props.items?.find((i) => i.value === value.value);\n};\nconst ensureInputText = () => {\n if (props.allowInput) {\n inputText.value = selectedItem.value?.text || '';\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 value.value = item.value;\n closeSelectMenu();\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 ensureInputText();\n};\nconst init = () => {\n ensureSelectedItem();\n ensureInputText();\n};\ninit();\n//#endregion\n\n//#region Lifecycle Hooks\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//#endregion\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: _ctx.label,\n required: _ctx.required\n }, null, 8, [\"id\", \"label\", \"required\"]),\n (props.allowInput)\n ? (_openBlock(), _createBlock(BTextField, {\n key: 0,\n id: id.value,\n ref_key: \"inputRef\",\n ref: inputRef,\n modelValue: inputText.value,\n \"onUpdate:modelValue\": [\n _cache[0] || (_cache[0] = ($event: any) => ((inputText).value = $event)),\n onChangeInputText\n ],\n disabled: props.disabled,\n placeholder: props.placeholder,\n \"hide-details\": \"\",\n onFocus: _cache[1] || (_cache[1] = ($event: any) => (selectMenu.value = true)),\n \"onClick:append\": _cache[2] || (_cache[2] = ($event: any) => (inputRef.value?.focus()))\n }, {\n appendIcon: _withCtx(() => [\n (_openBlock(), _createElementBlock(\"svg\", {\n class: _normalizeClass([[selectMenu.value ? 'ds-rotate-180' : ''], \"ds-h-4 ds-w-4 ds-transition-transform\"]),\n viewBox: \"0 0 320 512\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, _hoisted_2, 2))\n ]),\n _: 1\n }, 8, [\"id\", \"modelValue\", \"disabled\", \"placeholder\"]))\n : (_openBlock(), _createElementBlock(\"button\", {\n key: 1,\n id: id.value,\n class: _normalizeClass(btnCssClass.value),\n disabled: props.disabled,\n type: \"button\",\n onClick: _cache[3] || (_cache[3] = ($event: any) => (selectMenu.value = !selectMenu.value))\n }, [\n _createElementVNode(\"span\", {\n class: _normalizeClass([_ctx.valueCssClass, \"ds-truncate\"])\n }, [\n (selectedItem.value?.text)\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_4, _toDisplayString(selectedItem.value?.text), 1))\n : (_openBlock(), _createElementBlock(\"span\", _hoisted_5, _toDisplayString(props.placeholder), 1))\n ], 2),\n _createTextVNode(\" \"),\n (_openBlock(), _createElementBlock(\"svg\", {\n class: _normalizeClass([[selectMenu.value ? 'ds-rotate-180' : ''], \"ds-h-4 ds-w-4 ds-transition-transform\"]),\n viewBox: \"0 0 320 512\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, _hoisted_7, 2))\n ], 10, _hoisted_3)),\n _withDirectives(_createElementVNode(\"div\", {\n id: `${id.value}Menu`,\n ref_key: \"selectMenuEl\",\n ref: selectMenuEl,\n class: _normalizeClass([_ctx.menuCssClass, \"ds-absolute ds-z-50 ds-min-w-[8rem] ds-py-1\"]),\n \"data-cy\": _ctx.$attrs['data-cy'] ? `${_ctx.$attrs['data-cy']}Menu` : undefined,\n \"data-ut\": _ctx.$attrs['data-ut'] ? `${_ctx.$attrs['data-ut']}Menu` : undefined\n }, [\n _createElementVNode(\"div\", _hoisted_9, [\n _createElementVNode(\"ul\", _hoisted_10, [\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: ($event: any) => (onClickItem(item))\n }, [\n _createElementVNode(\"a\", {\n class: _normalizeClass([\n item.cssClass +\n `${item.value === value.value ? ' ds-bg-gray-150' : ''}`\n , \"ds-block ds-px-4 ds-py-2 hover:ds-bg-gray-150\"])\n }, _toDisplayString(item?.text), 3)\n ], 8, _hoisted_11))\n }), 128))\n ])\n ])\n ], 10, _hoisted_8), [\n [_vShow, selectMenu.value]\n ])\n ], 512),\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","_hoisted_2","_hoisted_3","_hoisted_4","_hoisted_5","_hoisted_6","_hoisted_7","_hoisted_8","_hoisted_9","_hoisted_10","_hoisted_11","_sfc_main","_defineComponent","__props","__expose","emit","props","selectEl","ref","inputRef","selectMenuEl","selectMenu","t","useI18n","validateRequired","val","inputText","selectedItem","id","computed","uuid","value","btnCssClass","result","validationResult","vRules","validate","useValidationField","watch","lockScrollBody","ensureMenuPosition","unlockScrollBody","resetMenuPosition","ensureSelectedItem","ensureInputText","_a","i","initPressEscapeEventListener","closeOnEscapePressed","event","closeSelectMenu","initClickOutsideEventListener","closeOnClickOutside","r","onClickItem","item","nextTick","ensureMenuWidth","parentEl","menuEl","ensureVisiblePosition","resetPosition","onChangeInputText","text","onMounted","onBeforeUnmount","_ctx","_cache","_openBlock","_createElementBlock","_createElementVNode","_createVNode","BLabel","_createBlock","BTextField","$event","_withCtx","_normalizeClass","_toDisplayString","_b","_createTextVNode","_withDirectives","_Fragment","_renderList","index","_vShow","_createCommentVNode","BErrorMessage","_unref"],"mappings":"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"}
|
package/dist/design-system23.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";const l=require("vue"),b=require("./design-system3.js"),g=require("./design-system48.js"),_=require("./design-system29.js"),q=require("./design-system30.js"),y=require("./design-
|
|
1
|
+
"use strict";const l=require("vue"),b=require("./design-system3.js"),g=require("./design-system48.js"),_=require("./design-system29.js"),q=require("./design-system30.js"),y=require("./design-system94.js"),B=["id","autocomplete","disabled","placeholder","readonly","rows"],h=l.defineComponent({__name:"BTextarea",props:{inputId:{default:""},inputCssClass:{default:""},modelValue:{},validationRules:{default:void 0},label:{default:""},placeholder:{default:""},autocomplete:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1},rows:{default:3},required:{type:Boolean,default:!1},requiredErrorMessage:{default:""},hideDetails:{type:Boolean,default:!1}},emits:["update:modelValue"],setup(a,{expose:u,emit:i}){const s=a,{t:n}=g.useI18n(),c={validateRule:e=>typeof e=="number"?!!e:!!(e&&(e!=null&&e.trim())),errorMessage:()=>s.requiredErrorMessage||n("ds.global.field_required")},r=l.computed(()=>s.inputId||`id-${y()}`),t=l.computed({get(){return s.modelValue},set(e){i("update:modelValue",e)}}),p=l.computed(()=>[{"ds-cursor-not-allowed ds-bg-[#f2f2f2] ds-text-black/40":s.disabled,"ds-text-black/[0.85]":!s.disabled,"ds-border-error focus:ds-ring-1 focus:ds-ring-error":!d.value.valid,"ds-border-black/[0.1] focus:ds-border-focus focus:ds-ring-1 focus:ds-ring-focus":d.value.valid},s.inputCssClass]),f=l.computed(()=>{let e=[];return s.required&&e.push(c),s.validationRules&&(e=e.concat(s.validationRules)),e.length?e:void 0}),{validate:m,validationResult:d}=b.useValidationField(r.value,t,f.value);return u({validate:m}),(e,o)=>(l.openBlock(),l.createElementBlock("div",null,[l.createVNode(q,{id:r.value,label:e.label,required:e.required},null,8,["id","label","required"]),l.withDirectives(l.createElementVNode("textarea",{id:r.value,"onUpdate:modelValue":o[0]||(o[0]=v=>t.value=v),autocomplete:s.autocomplete?"on":"off",class:l.normalizeClass([p.value,"ds-block ds-w-full ds-rounded-lg ds-border ds-px-3 ds-py-1 ds-text-sm ds-drop-shadow-light"]),disabled:s.disabled,placeholder:s.placeholder,readonly:s.readonly,rows:s.rows},null,10,B),[[l.vModelText,t.value]]),e.hideDetails?l.createCommentVNode("",!0):(l.openBlock(),l.createBlock(_,{key:0,"error-message":l.unref(d).errorMessage(),class:"ds-mt-1"},null,8,["error-message"]))]))}});module.exports=h;
|
|
2
2
|
//# sourceMappingURL=design-system23.js.map
|
package/dist/design-system23.mjs
CHANGED
|
@@ -3,7 +3,7 @@ import { useValidationField as x } from "./design-system3.mjs";
|
|
|
3
3
|
import { useI18n as R } from "./design-system48.mjs";
|
|
4
4
|
import M from "./design-system29.mjs";
|
|
5
5
|
import E from "./design-system30.mjs";
|
|
6
|
-
import D from "./design-
|
|
6
|
+
import D from "./design-system94.mjs";
|
|
7
7
|
const I = ["id", "autocomplete", "disabled", "placeholder", "readonly", "rows"], j = /* @__PURE__ */ g({
|
|
8
8
|
__name: "BTextarea",
|
|
9
9
|
props: {
|
package/dist/design-system25.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";const e=require("./design-
|
|
1
|
+
"use strict";const e=require("./design-system53.js");require("./design-system54.js");const r=require("./design-system55.js"),t=r(e,[["__scopeId","data-v-826818c4"]]);module.exports=t;
|
|
2
2
|
//# sourceMappingURL=design-system25.js.map
|
package/dist/design-system25.mjs
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import o from "./design-
|
|
2
|
-
import "./design-
|
|
3
|
-
import r from "./design-
|
|
1
|
+
import o from "./design-system53.mjs";
|
|
2
|
+
import "./design-system54.mjs";
|
|
3
|
+
import r from "./design-system55.mjs";
|
|
4
4
|
const p = /* @__PURE__ */ r(o, [["__scopeId", "data-v-826818c4"]]);
|
|
5
5
|
export {
|
|
6
6
|
p as default
|
package/dist/design-system26.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";const e=require("vue");require("./design-
|
|
1
|
+
"use strict";const e=require("vue");require("./design-system56.js");require("./design-system57.js");const t=require("./design-system55.js"),s={},c={class:"carousel-item"};function n(r,u){return e.openBlock(),e.createElementBlock("div",c,[e.renderSlot(r.$slots,"default",{},void 0,!0)])}const o=t(s,[["render",n],["__scopeId","data-v-a82242b4"]]);module.exports=o;
|
|
2
2
|
//# sourceMappingURL=design-system26.js.map
|
package/dist/design-system26.mjs
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { openBlock as t, createElementBlock as o, renderSlot as r } from "vue";
|
|
2
|
-
import "./design-
|
|
3
|
-
import "./design-
|
|
4
|
-
import c from "./design-
|
|
2
|
+
import "./design-system56.mjs";
|
|
3
|
+
import "./design-system57.mjs";
|
|
4
|
+
import c from "./design-system55.mjs";
|
|
5
5
|
const s = {}, n = { class: "carousel-item" };
|
|
6
6
|
function a(e, d) {
|
|
7
7
|
return t(), o("div", n, [
|
package/dist/design-system27.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";const e=require("./design-
|
|
1
|
+
"use strict";const e=require("./design-system58.js");require("./design-system59.js");const r=require("./design-system55.js"),t=r(e,[["__scopeId","data-v-897b98c2"]]);module.exports=t;
|
|
2
2
|
//# sourceMappingURL=design-system27.js.map
|
package/dist/design-system27.mjs
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import o from "./design-
|
|
2
|
-
import "./design-
|
|
3
|
-
import t from "./design-
|
|
1
|
+
import o from "./design-system58.mjs";
|
|
2
|
+
import "./design-system59.mjs";
|
|
3
|
+
import t from "./design-system55.mjs";
|
|
4
4
|
const p = /* @__PURE__ */ t(o, [["__scopeId", "data-v-897b98c2"]]);
|
|
5
5
|
export {
|
|
6
6
|
p as default
|
package/dist/design-system28.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";const e=require("vue"),t=require("./design-
|
|
1
|
+
"use strict";const e=require("vue"),t=require("./design-system55.js"),n={},o={class:"ds-rounded-lg ds-bg-white ds-p-2 ds-shadow"};function r(s,d){return e.openBlock(),e.createElementBlock("ul",o,[e.renderSlot(s.$slots,"default")])}const c=t(n,[["render",r]]);module.exports=c;
|
|
2
2
|
//# sourceMappingURL=design-system28.js.map
|
package/dist/design-system28.mjs
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { openBlock as o, createElementBlock as t, renderSlot as r } from "vue";
|
|
2
|
-
import s from "./design-
|
|
2
|
+
import s from "./design-system55.mjs";
|
|
3
3
|
const n = {}, d = { class: "ds-rounded-lg ds-bg-white ds-p-2 ds-shadow" };
|
|
4
4
|
function c(e, l) {
|
|
5
5
|
return o(), t("ul", d, [
|
package/dist/design-system31.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";const e=require("./design-
|
|
1
|
+
"use strict";const e=require("./design-system67.js");require("./design-system68.js");const r=require("./design-system55.js"),t=r(e,[["__scopeId","data-v-31348ccc"]]);module.exports=t;
|
|
2
2
|
//# sourceMappingURL=design-system31.js.map
|
package/dist/design-system31.mjs
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import o from "./design-
|
|
2
|
-
import "./design-
|
|
3
|
-
import r from "./design-
|
|
1
|
+
import o from "./design-system67.mjs";
|
|
2
|
+
import "./design-system68.mjs";
|
|
3
|
+
import r from "./design-system55.mjs";
|
|
4
4
|
const m = /* @__PURE__ */ r(o, [["__scopeId", "data-v-31348ccc"]]);
|
|
5
5
|
export {
|
|
6
6
|
m as default
|
package/dist/design-system32.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";const e=require("./design-
|
|
1
|
+
"use strict";const e=require("./design-system69.js");require("./design-system70.js");const r=require("./design-system55.js"),t=r(e,[["__scopeId","data-v-c49c635e"]]);module.exports=t;
|
|
2
2
|
//# sourceMappingURL=design-system32.js.map
|
package/dist/design-system32.mjs
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import o from "./design-
|
|
2
|
-
import "./design-
|
|
3
|
-
import r from "./design-
|
|
1
|
+
import o from "./design-system69.mjs";
|
|
2
|
+
import "./design-system70.mjs";
|
|
3
|
+
import r from "./design-system55.mjs";
|
|
4
4
|
const e = /* @__PURE__ */ r(o, [["__scopeId", "data-v-c49c635e"]]);
|
|
5
5
|
export {
|
|
6
6
|
e as default
|
package/dist/design-system33.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";const e=require("vue"),t=require("./design-
|
|
1
|
+
"use strict";const e=require("vue"),t=require("./design-system55.js"),o={},s={class:"ds-p-4"};function c(r,l){return e.openBlock(),e.createElementBlock("div",s,[e.renderSlot(r.$slots,"default")])}const n=t(o,[["render",c]]);module.exports=n;
|
|
2
2
|
//# sourceMappingURL=design-system33.js.map
|
package/dist/design-system33.mjs
CHANGED
package/dist/design-system34.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";const e=require("vue"),t=require("./design-
|
|
1
|
+
"use strict";const e=require("vue"),t=require("./design-system55.js"),r={},n={class:"ds-flex ds-items-center ds-justify-end ds-rounded-b-lg ds-p-4"};function o(s,d){return e.openBlock(),e.createElementBlock("div",n,[e.renderSlot(s.$slots,"default")])}const c=t(r,[["render",o]]);module.exports=c;
|
|
2
2
|
//# sourceMappingURL=design-system34.js.map
|
package/dist/design-system34.mjs
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { openBlock as o, createElementBlock as t, renderSlot as s } from "vue";
|
|
2
|
-
import r from "./design-
|
|
2
|
+
import r from "./design-system55.mjs";
|
|
3
3
|
const d = {}, n = { class: "ds-flex ds-items-center ds-justify-end ds-rounded-b-lg ds-p-4" };
|
|
4
4
|
function c(e, l) {
|
|
5
5
|
return o(), t("div", n, [
|
package/dist/design-system35.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";const e=require("vue"),t=require("./design-
|
|
1
|
+
"use strict";const e=require("vue"),t=require("./design-system55.js"),r={},n={class:"ds-flex ds-items-start ds-justify-between ds-rounded-t-lg ds-p-4"};function o(s,d){return e.openBlock(),e.createElementBlock("div",n,[e.renderSlot(s.$slots,"default")])}const c=t(r,[["render",o]]);module.exports=c;
|
|
2
2
|
//# sourceMappingURL=design-system35.js.map
|
package/dist/design-system35.mjs
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { openBlock as t, createElementBlock as s, renderSlot as o } from "vue";
|
|
2
|
-
import r from "./design-
|
|
2
|
+
import r from "./design-system55.mjs";
|
|
3
3
|
const d = {}, n = { class: "ds-flex ds-items-start ds-justify-between ds-rounded-t-lg ds-p-4" };
|
|
4
4
|
function c(e, l) {
|
|
5
5
|
return t(), s("div", n, [
|
package/dist/design-system36.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";const e=require("vue"),r=require("./design-
|
|
1
|
+
"use strict";const e=require("vue"),r=require("./design-system55.js"),t={},d={class:"ds-fixed ds-left-0 ds-right-0 ds-top-0 ds-z-[100] ds-flex ds-h-full ds-w-full ds-items-center ds-justify-center ds-overflow-y-auto ds-overflow-x-hidden ds-bg-black/[0.65] ds-backdrop-blur-sm"};function o(s,c){return e.openBlock(),e.createElementBlock("div",d,[e.renderSlot(s.$slots,"default")])}const l=r(t,[["render",o]]);module.exports=l;
|
|
2
2
|
//# sourceMappingURL=design-system36.js.map
|
package/dist/design-system36.mjs
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { openBlock as s, createElementBlock as d, renderSlot as t } from "vue";
|
|
2
|
-
import o from "./design-
|
|
2
|
+
import o from "./design-system55.mjs";
|
|
3
3
|
const r = {}, l = { class: "ds-fixed ds-left-0 ds-right-0 ds-top-0 ds-z-[100] ds-flex ds-h-full ds-w-full ds-items-center ds-justify-center ds-overflow-y-auto ds-overflow-x-hidden ds-bg-black/[0.65] ds-backdrop-blur-sm" };
|
|
4
4
|
function c(e, f) {
|
|
5
5
|
return s(), d("div", l, [
|