@7pmlabs/design-system 0.3.3 → 0.3.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +6 -6
- package/dist/design-system100.js +1 -1
- package/dist/design-system100.js.map +1 -1
- package/dist/design-system100.mjs +24 -17
- package/dist/design-system100.mjs.map +1 -1
- package/dist/design-system101.js +1 -5
- package/dist/design-system101.js.map +1 -1
- package/dist/design-system101.mjs +18 -10
- package/dist/design-system101.mjs.map +1 -1
- package/dist/design-system105.js +1 -1
- package/dist/design-system105.js.map +1 -1
- package/dist/design-system105.mjs +4 -2
- package/dist/design-system105.mjs.map +1 -1
- package/dist/design-system106.js +1 -1
- package/dist/design-system106.js.map +1 -1
- package/dist/design-system106.mjs +8 -2
- package/dist/design-system106.mjs.map +1 -1
- package/dist/design-system107.js +1 -1
- package/dist/design-system107.js.map +1 -1
- package/dist/design-system107.mjs +7 -4
- package/dist/design-system107.mjs.map +1 -1
- package/dist/design-system108.js +1 -1
- package/dist/design-system108.js.map +1 -1
- package/dist/design-system108.mjs +2 -8
- package/dist/design-system108.mjs.map +1 -1
- package/dist/design-system109.js +1 -1
- package/dist/design-system109.js.map +1 -1
- package/dist/design-system109.mjs +2 -7
- package/dist/design-system109.mjs.map +1 -1
- package/dist/design-system11.js +1 -1
- package/dist/design-system11.js.map +1 -1
- package/dist/design-system11.mjs +41 -47
- package/dist/design-system11.mjs.map +1 -1
- package/dist/design-system110.js +1 -1
- package/dist/design-system110.mjs +1 -1
- package/dist/design-system112.js +1 -1
- package/dist/design-system112.mjs +1 -1
- package/dist/design-system12.js +7 -1
- package/dist/design-system12.js.map +1 -1
- package/dist/design-system12.mjs +83 -72
- package/dist/design-system12.mjs.map +1 -1
- package/dist/design-system13.js +7 -1
- package/dist/design-system13.js.map +1 -1
- package/dist/design-system13.mjs +101 -90
- package/dist/design-system13.mjs.map +1 -1
- package/dist/design-system14.js +1 -1
- package/dist/design-system14.js.map +1 -1
- package/dist/design-system14.mjs +46 -42
- package/dist/design-system14.mjs.map +1 -1
- package/dist/design-system142.js +1 -1
- package/dist/design-system142.js.map +1 -1
- package/dist/design-system142.mjs +7 -11
- package/dist/design-system142.mjs.map +1 -1
- package/dist/design-system143.js +1 -1
- package/dist/design-system143.js.map +1 -1
- package/dist/design-system143.mjs +9 -7
- package/dist/design-system143.mjs.map +1 -1
- package/dist/design-system144.js +1 -1
- package/dist/design-system144.js.map +1 -1
- package/dist/design-system144.mjs +11 -9
- package/dist/design-system144.mjs.map +1 -1
- package/dist/design-system148.js +1 -1
- package/dist/design-system148.mjs +1 -1
- package/dist/design-system149.js +1 -1
- package/dist/design-system149.mjs +1 -1
- package/dist/design-system152.js +1 -1
- package/dist/design-system152.mjs +1 -1
- package/dist/design-system153.js +1 -1
- package/dist/design-system153.mjs +1 -1
- package/dist/design-system17.js +1 -1
- package/dist/design-system17.js.map +1 -1
- package/dist/design-system17.mjs +117 -106
- package/dist/design-system17.mjs.map +1 -1
- package/dist/design-system18.js +1 -1
- package/dist/design-system18.js.map +1 -1
- package/dist/design-system18.mjs +3 -3
- package/dist/design-system18.mjs.map +1 -1
- package/dist/design-system19.js +2 -2
- package/dist/design-system19.js.map +1 -1
- package/dist/design-system19.mjs +76 -64
- package/dist/design-system19.mjs.map +1 -1
- package/dist/design-system20.js +1 -1
- package/dist/design-system20.mjs +1 -1
- package/dist/design-system21.js +1 -1
- package/dist/design-system21.js.map +1 -1
- package/dist/design-system21.mjs +107 -94
- package/dist/design-system21.mjs.map +1 -1
- package/dist/design-system22.js +1 -1
- package/dist/design-system22.mjs +1 -1
- package/dist/design-system24.js +1 -1
- package/dist/design-system24.mjs +2 -2
- package/dist/design-system25.js +1 -1
- package/dist/design-system25.mjs +1 -1
- package/dist/design-system40.js +1 -1
- package/dist/design-system40.js.map +1 -1
- package/dist/design-system40.mjs +79 -75
- package/dist/design-system40.mjs.map +1 -1
- package/dist/design-system41.js +1 -1
- package/dist/design-system41.js.map +1 -1
- package/dist/design-system41.mjs +53 -34
- package/dist/design-system41.mjs.map +1 -1
- package/dist/design-system46.js +1 -1
- package/dist/design-system46.mjs +1 -1
- package/dist/design-system50.js +1 -1
- package/dist/design-system50.js.map +1 -1
- package/dist/design-system50.mjs +83 -67
- package/dist/design-system50.mjs.map +1 -1
- package/dist/design-system55.js +1 -1
- package/dist/design-system55.mjs +1 -1
- package/dist/design-system77.js +1 -1
- package/dist/design-system77.mjs +1 -1
- package/dist/design-system85.js +1 -1
- package/dist/design-system85.js.map +1 -1
- package/dist/design-system85.mjs +3 -3
- package/dist/design-system90.js +1 -1
- package/dist/design-system90.js.map +1 -1
- package/dist/design-system90.mjs +1 -1
- package/dist/design-system93.js +5 -1
- package/dist/design-system93.js.map +1 -1
- package/dist/design-system93.mjs +10 -2172
- package/dist/design-system93.mjs.map +1 -1
- package/dist/design-system94.js +1 -1
- package/dist/design-system94.js.map +1 -1
- package/dist/design-system94.mjs +17 -1103
- package/dist/design-system94.mjs.map +1 -1
- package/dist/design-system95.js +1 -1
- package/dist/design-system95.js.map +1 -1
- package/dist/design-system95.mjs +2172 -17
- package/dist/design-system95.mjs.map +1 -1
- package/dist/design-system96.js +1 -1
- package/dist/design-system96.js.map +1 -1
- package/dist/design-system96.mjs +1103 -68
- package/dist/design-system96.mjs.map +1 -1
- package/dist/design-system97.js +1 -1
- package/dist/design-system97.js.map +1 -1
- package/dist/design-system97.mjs +68 -6
- package/dist/design-system97.mjs.map +1 -1
- package/dist/design-system98.js +1 -1
- package/dist/design-system98.js.map +1 -1
- package/dist/design-system98.mjs +5 -24
- package/dist/design-system98.mjs.map +1 -1
- package/dist/style.css +1 -1
- package/dist/types/components/BButton.vue.d.ts +2 -28
- package/dist/types/components/BTextField.vue.d.ts +10 -2
- package/dist/types/components/BToast/BToastItem.vue.d.ts +9 -12
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"design-system11.mjs","sources":["../src/components/BButton.vue?vue&type=script&setup=true&lang.ts"],"sourcesContent":["import { defineComponent as _defineComponent } from 'vue'\nimport { renderSlot as _renderSlot,
|
|
1
|
+
{"version":3,"file":"design-system11.mjs","sources":["../src/components/BButton.vue?vue&type=script&setup=true&lang.ts"],"sourcesContent":["import { defineComponent as _defineComponent } from 'vue'\nimport { renderSlot as _renderSlot, createElementVNode as _createElementVNode, normalizeClass as _normalizeClass, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode } from \"vue\"\n\nconst _hoisted_1 = [\"disabled\"]\nconst _hoisted_2 = { class: \"ds-flex ds-items-center ds-justify-center\" }\nconst _hoisted_3 = { class: \"ds-absolute -ds-bottom-[3px] ds-left-0 ds-text-[16px]\" }\nconst _hoisted_4 = { class: \"ds-flex ds-items-center\" }\nconst _hoisted_5 = { class: \"ds-absolute -ds-bottom-[3px] ds-left-0 ds-text-[16px]\" }\n\nimport { BButtonSize, BButtonType } from '@/constants/Enums';\nimport { computed } from 'vue';\n\n/**\n * Props\n */\nexport interface BButtonProps {\n type?: `${BButtonType}`;\n size?: `${BButtonSize}`;\n disabled?: boolean;\n}\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'BButton',\n props: {\n type: { default: BButtonType.Secondary },\n size: { default: BButtonSize.Medium },\n disabled: { type: Boolean, default: false }\n },\n setup(__props: any) {\n\nconst props = __props;\n\n\n\n/**\n * Data\n */\nconst btnCssClass = computed(() => {\n let result = 'ds-font-semibold ds-text-center ';\n result += 'disabled:ds-cursor-not-allowed ';\n\n switch (props.type) {\n case BButtonType.Primary:\n default:\n result += `ds-bg-gradient-to-r ds-from-primary-f-stop enabled:hover:ds-from-primary-f/90 enabled:hover:ds-to-primary-t/90 disabled:ds-text-black/40 ds-rounded-lg ds-text-white `;\n result += props.disabled\n ? `ds-bg-gray-150 `\n : `ds-from-primary-f ds-to-primary-t `;\n break;\n case BButtonType.Secondary:\n result += `ds-rounded-lg ds-bg-transparent ds-text-primary-t enabled:hover:ds-bg-[#e6f0fe] disabled:ds-text-black/[0.4] `;\n result += props.disabled\n ? `ds-border-inner-secondary--disabled `\n : `ds-border-inner-secondary `;\n break;\n case BButtonType.Additional:\n result += `ds-rounded-lg ds-bg-transparent ds-text-black/[0.85] enabled:hover:ds-bg-gray-150 disabled:ds-text-black/[0.4] `;\n result += props.disabled\n ? `ds-border-inner-additional--disabled `\n : `ds-border-inner-additional `;\n break;\n case BButtonType.Clear:\n result += `ds-rounded-lg ds-bg-transparent ds-text-primary-t enabled:hover:ds-bg-[#e6f0fe] disabled:ds-text-black/[0.4] `;\n break;\n case BButtonType.Icon:\n result += `ds-bg-gradient-to-r ds-from-primary-f-stop enabled:hover:ds-from-primary-f/90 enabled:hover:ds-to-primary-t/90 disabled:ds-text-black/40 ds-rounded-full ds-rounded-full ds-text-white `;\n result += props.disabled\n ? `disabled:ds-bg-gray-150 `\n : `ds-from-primary-f ds-to-primary-t `;\n break;\n }\n\n switch (props.size) {\n case BButtonSize.Small:\n result +=\n props.type !== BButtonType.Icon\n ? `ds-text-sm ds-leading-4 ds-py-2 ds-px-3 `\n : `ds-text-base ds-leading-4 ds-h-8 ds-w-8 `;\n break;\n case BButtonSize.Medium:\n default:\n result +=\n props.type !== BButtonType.Icon\n ? `ds-text-sm ds-leading-4 ds-py-3.5 lg:ds-py-3 ds-px-4 `\n : `ds-text-2xl ds-leading-4 ds-h-11 ds-w-11 lg:ds-h-10 lg:ds-w-10 `;\n break;\n }\n\n return result;\n});\nconst iconCssClass = computed(() => {\n let result = '';\n\n switch (props.size) {\n case BButtonSize.Small:\n result += `ds-h-[8px] ds-w-[16px] `;\n break;\n case BButtonSize.Medium:\n default:\n result += `ds-h-[8px] ds-w-[16px] `;\n break;\n }\n\n return result;\n});\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"button\", {\n class: _normalizeClass(btnCssClass.value),\n disabled: _ctx.disabled,\n type: \"button\"\n }, [\n _createElementVNode(\"div\", _hoisted_2, [\n (_ctx.$slots['prependIcon'])\n ? (_openBlock(), _createElementBlock(\"div\", {\n key: 0,\n class: _normalizeClass([iconCssClass.value, \"ds-relative ds-mr-2\"])\n }, [\n _createElementVNode(\"span\", _hoisted_3, [\n _renderSlot(_ctx.$slots, \"prependIcon\")\n ])\n ], 2))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"div\", _hoisted_4, [\n _renderSlot(_ctx.$slots, \"default\")\n ]),\n (_ctx.$slots['appendIcon'])\n ? (_openBlock(), _createElementBlock(\"div\", {\n key: 1,\n class: _normalizeClass([iconCssClass.value, \"ds-relative ds-ml-2\"])\n }, [\n _createElementVNode(\"span\", _hoisted_5, [\n _renderSlot(_ctx.$slots, \"appendIcon\")\n ])\n ], 2))\n : _createCommentVNode(\"\", true)\n ])\n ], 10, _hoisted_1))\n}\n}\n\n})"],"names":["_hoisted_1","_hoisted_2","_hoisted_3","_hoisted_4","_hoisted_5","_sfc_main","_defineComponent","BButtonType","BButtonSize","__props","props","btnCssClass","computed","result","iconCssClass","_ctx","_cache","_openBlock","_createElementBlock","_normalizeClass","_createElementVNode","_renderSlot","_createCommentVNode"],"mappings":";;AAGA,MAAMA,IAAa,CAAC,UAAU,GACxBC,IAAa,EAAE,OAAO,+CACtBC,IAAa,EAAE,OAAO,2DACtBC,IAAa,EAAE,OAAO,6BACtBC,IAAa,EAAE,OAAO,2DAcAC,IAAiBC,gBAAAA,EAAA;AAAA,EAC3C,QAAQ;AAAA,EACR,OAAO;AAAA,IACL,MAAM,EAAE,SAASC,EAAY,UAAU;AAAA,IACvC,MAAM,EAAE,SAASC,EAAY,OAAO;AAAA,IACpC,UAAU,EAAE,MAAM,SAAS,SAAS,GAAM;AAAA,EAC5C;AAAA,EACA,MAAMC,GAAc;AAEtB,UAAMC,IAAQD,GAORE,IAAcC,EAAS,MAAM;AACjC,UAAIC,IAAS;AAGb,cAFUA,KAAA,mCAEFH,EAAM,MAAM;AAAA,QAClB,KAAKH,EAAY;AAAA,QACjB;AACY,UAAAM,KAAA,yKACAA,KAAAH,EAAM,WACZ,oBACA;AACJ;AAAA,QACF,KAAKH,EAAY;AACL,UAAAM,KAAA,iHACAA,KAAAH,EAAM,WACZ,yCACA;AACJ;AAAA,QACF,KAAKH,EAAY;AACL,UAAAM,KAAA,mHACAA,KAAAH,EAAM,WACZ,0CACA;AACJ;AAAA,QACF,KAAKH,EAAY;AACL,UAAAM,KAAA;AACV;AAAA,QACF,KAAKN,EAAY;AACL,UAAAM,KAAA,2LACAA,KAAAH,EAAM,WACZ,6BACA;AACJ;AAAA,MACJ;AAEA,cAAQA,EAAM,MAAM;AAAA,QAClB,KAAKF,EAAY;AACf,UAAAK,KACEH,EAAM,SAASH,EAAY,OACvB,6CACA;AACN;AAAA,QACF,KAAKC,EAAY;AAAA,QACjB;AACE,UAAAK,KACEH,EAAM,SAASH,EAAY,OACvB,0DACA;AACN;AAAA,MACJ;AAEO,aAAAM;AAAA,IAAA,CACR,GACKC,IAAeF,EAAS,MAAM;AAClC,UAAIC,IAAS;AAEb,cAAQH,EAAM,MAAM;AAAA,QAClB,KAAKF,EAAY;AACL,UAAAK,KAAA;AACV;AAAA,QACF,KAAKL,EAAY;AAAA,QACjB;AACY,UAAAK,KAAA;AACV;AAAA,MACJ;AAEO,aAAAA;AAAA,IAAA,CACR;AAEM,WAAA,CAACE,GAAUC,OACRC,EAAA,GAAcC,EAAoB,UAAU;AAAA,MAClD,OAAOC,EAAgBR,EAAY,KAAK;AAAA,MACxC,UAAUI,EAAK;AAAA,MACf,MAAM;AAAA,IAAA,GACL;AAAA,MACDK,EAAoB,OAAOnB,GAAY;AAAA,QACpCc,EAAK,OAAO,eACRE,EAAW,GAAGC,EAAoB,OAAO;AAAA,UACxC,KAAK;AAAA,UACL,OAAOC,EAAgB,CAACL,EAAa,OAAO,qBAAqB,CAAC;AAAA,QAAA,GACjE;AAAA,UACDM,EAAoB,QAAQlB,GAAY;AAAA,YACtCmB,EAAYN,EAAK,QAAQ,aAAa;AAAA,UAAA,CACvC;AAAA,QACA,GAAA,CAAC,KACJO,EAAoB,IAAI,EAAI;AAAA,QAChCF,EAAoB,OAAOjB,GAAY;AAAA,UACrCkB,EAAYN,EAAK,QAAQ,SAAS;AAAA,QAAA,CACnC;AAAA,QACAA,EAAK,OAAO,cACRE,EAAW,GAAGC,EAAoB,OAAO;AAAA,UACxC,KAAK;AAAA,UACL,OAAOC,EAAgB,CAACL,EAAa,OAAO,qBAAqB,CAAC;AAAA,QAAA,GACjE;AAAA,UACDM,EAAoB,QAAQhB,GAAY;AAAA,YACtCiB,EAAYN,EAAK,QAAQ,YAAY;AAAA,UAAA,CACtC;AAAA,QACA,GAAA,CAAC,KACJO,EAAoB,IAAI,EAAI;AAAA,MAAA,CACjC;AAAA,IAAA,GACA,IAAItB,CAAU;AAAA,EAEnB;AAEA,CAAC;"}
|
package/dist/design-system110.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";const e=require("./design-
|
|
1
|
+
"use strict";const e=require("./design-system97.js");module.exports=e;
|
|
2
2
|
//# sourceMappingURL=design-system110.js.map
|
package/dist/design-system112.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";const C=require("./design-system147.js"),S=require("./design-system145.js"),L=require("./design-
|
|
1
|
+
"use strict";const C=require("./design-system147.js"),S=require("./design-system145.js"),L=require("./design-system142.js"),B=require("./design-system148.js"),I=require("./design-system149.js"),O=require("./design-system150.js"),M=require("./design-system151.js"),w=require("./design-system152.js"),D=require("./design-system153.js"),G=require("./design-system154.js"),N=require("./design-system155.js"),U=require("./design-system125.js"),h=require("./design-system156.js"),x=require("./design-system157.js"),K=require("./design-system158.js"),l=require("./design-system117.js"),P=require("./design-system121.js"),R=require("./design-system130.js"),W=require("./design-system129.js"),Y=require("./design-system134.js"),m=require("./design-system137.js"),H=require("./design-system139.js");var J=1,Q=2,V=4,_="[object Arguments]",X="[object Array]",Z="[object Boolean]",$="[object Date]",z="[object Error]",p="[object Function]",k="[object GeneratorFunction]",v="[object Map]",rr="[object Number]",u="[object Object]",er="[object RegExp]",tr="[object Set]",nr="[object String]",or="[object Symbol]",ir="[object WeakMap]",cr="[object ArrayBuffer]",ar="[object DataView]",sr="[object Float32Array]",gr="[object Float64Array]",fr="[object Int8Array]",br="[object Int16Array]",Tr="[object Int32Array]",jr="[object Uint8Array]",yr="[object Uint8ClampedArray]",Ar="[object Uint16Array]",qr="[object Uint32Array]",e={};e[_]=e[X]=e[cr]=e[ar]=e[Z]=e[$]=e[sr]=e[gr]=e[fr]=e[br]=e[Tr]=e[v]=e[rr]=e[u]=e[er]=e[tr]=e[nr]=e[or]=e[jr]=e[yr]=e[Ar]=e[qr]=!0;e[z]=e[p]=e[ir]=!1;function T(r,c,a,d,g,n){var t,f=c&J,b=c&Q,E=c&V;if(a&&(t=g?a(r,d,g,n):a(r)),t!==void 0)return t;if(!W(r))return r;var j=l(r);if(j){if(t=h(r),!f)return M(r,t)}else{var s=U(r),y=s==p||s==k;if(P(r))return O(r,f);if(s==u||s==_||y&&!g){if(t=b||y?{}:K(r),!f)return b?D(r,I(t,r)):w(r,B(t,r))}else{if(!e[s])return g?r:{};t=x(r,s,f)}}n||(n=new C);var A=n.get(r);if(A)return A;n.set(r,t),Y(r)?r.forEach(function(o){t.add(T(o,c,a,o,r,n))}):R(r)&&r.forEach(function(o,i){t.set(i,T(o,c,a,i,r,n))});var F=E?b?N:G:b?H:m,q=j?void 0:F(r);return S(q||r,function(o,i){q&&(i=o,o=r[i]),L(t,i,T(o,c,a,i,r,n))}),t}module.exports=T;
|
|
2
2
|
//# sourceMappingURL=design-system112.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import L from "./design-system147.mjs";
|
|
2
2
|
import B from "./design-system145.mjs";
|
|
3
|
-
import I from "./design-
|
|
3
|
+
import I from "./design-system142.mjs";
|
|
4
4
|
import O from "./design-system148.mjs";
|
|
5
5
|
import _ from "./design-system149.mjs";
|
|
6
6
|
import M from "./design-system150.mjs";
|
package/dist/design-system12.js
CHANGED
|
@@ -1,2 +1,8 @@
|
|
|
1
|
-
"use strict";const a=require("vue"),c=require("./design-
|
|
1
|
+
"use strict";const a=require("vue"),c=require("./design-system95.js"),i=require("./design-system92.js"),I=require("./design-system48.js"),F=require("./design-system96.js"),j=require("./design-system3.js"),x=require("./design-system4.js"),O=require("./design-system5.js"),v=require("./design-system6.js"),L=require("./design-system47.js"),A=require("./design-system30.js"),U=require("./design-system31.js"),G=require("./design-system94.js"),J={class:"ds-relative"},K=["id","disabled","placeholder"],Q=["id","disabled"],W=["for"],X=["for"],Z=a.createElementVNode("path",{d:"M96 32V64H48C21.5 64 0 85.5 0 112v48H448V112c0-26.5-21.5-48-48-48H352V32c0-17.7-14.3-32-32-32s-32 14.3-32 32V64H160V32c0-17.7-14.3-32-32-32S96 14.3 96 32zM448 192H0V464c0 26.5 21.5 48 48 48H400c26.5 0 48-21.5 48-48V192zM96 296c0-13.3 10.7-24 24-24H328c13.3 0 24 10.7 24 24s-10.7 24-24 24H120c-13.3 0-24-10.7-24-24zm24 72H232c13.3 0 24 10.7 24 24s-10.7 24-24 24H120c-13.3 0-24-10.7-24-24s10.7-24 24-24z"},null,-1),ee=[Z],se=a.defineComponent({__name:"BDatePicker",props:{inputId:{default:""},modelValue:{},label:{default:""},validationRules:{default:void 0},placeholder:{default:""},required:{type:Boolean,default:!1},requiredErrorMessage:{default:""},disabled:{type:Boolean,default:!1},inputCssClass:{default:""},minDate:{default:""},maxDate:{default:""},showHintToday:{type:Boolean,default:!1},view:{default:O.BDatePickerView.Days},hideDetails:{type:Boolean,default:!1},position:{default:"bottom left"}},emits:["update:modelValue"],setup(B,{emit:l}){const t=B,{t:s,locale:q}=I.useI18n(),u=`DD${x.DateDelimiter}MM${x.DateDelimiter}YYYY`,p=new Date;let d,r;const g=a.ref(null),H={validateRule:e=>!!e,errorMessage:()=>t.requiredErrorMessage||s("ds.global.field_required")},b=a.ref(),n=a.computed(()=>t.inputId||`id-${G()}`),V=a.computed({get(){return t.modelValue},set(e){l("update:modelValue",e)}}),C=a.computed(()=>[{content:s("ds.components.base.date_picker.buttons.cancel"),className:"ds-bg-transparent focus:ds-ring-1 focus:ds-ring-gray-300 ds-border-inner-primary-f !ds-text-primary-t hover:ds-bg-[#e6f0fe] ds-text-sm ds-leading-4 ds-px-4 ds-mx-1",onClick:e=>{e.clear(),a.nextTick(()=>{_()}),e.hide()}},{content:s("ds.components.base.date_picker.buttons.confirm"),className:`${n.value}-btn-confirm focus:ds-ring-1 focus:ds-ring-1 focus:ds-ring-blue-300 ds-bg-gradient-to-r ds-from-primary-f-stop ds-from-primary-f ds-to-primary-t !ds-text-white enabled:hover:ds-bg-[#0e4bbd] ds-text-sm ds-leading-4 ds-px-4 disabled:ds-from-[#e2e4e8] disabled:ds-to-[#e2e4e8] disabled:ds-text-black/[0.4] ds-mx-1`,onClick:e=>{V.value=b.value!==void 0?b.value:"",a.nextTick(()=>{_()}),e.hide()},attrs:t.required?{disabled:""}:void 0}]),D=a.computed(()=>{const e={days:[s("ds.components.base.date_picker.days.sunday"),s("ds.components.base.date_picker.days.monday"),s("ds.components.base.date_picker.days.tuesday"),s("ds.components.base.date_picker.days.wednesday"),s("ds.components.base.date_picker.days.thursday"),s("ds.components.base.date_picker.days.friday"),s("ds.components.base.date_picker.days.saturday")],daysShort:[s("ds.components.base.date_picker.days_short.sunday"),s("ds.components.base.date_picker.days_short.monday"),s("ds.components.base.date_picker.days_short.tuesday"),s("ds.components.base.date_picker.days_short.wednesday"),s("ds.components.base.date_picker.days_short.thursday"),s("ds.components.base.date_picker.days_short.friday"),s("ds.components.base.date_picker.days_short.saturday")],daysMin:[s("ds.components.base.date_picker.days_min.sunday"),s("ds.components.base.date_picker.days_min.monday"),s("ds.components.base.date_picker.days_min.tuesday"),s("ds.components.base.date_picker.days_min.wednesday"),s("ds.components.base.date_picker.days_min.thursday"),s("ds.components.base.date_picker.days_min.friday"),s("ds.components.base.date_picker.days_min.saturday")],months:[s("ds.components.base.date_picker.months.january"),s("ds.components.base.date_picker.months.february"),s("ds.components.base.date_picker.months.march"),s("ds.components.base.date_picker.months.april"),s("ds.components.base.date_picker.months.may"),s("ds.components.base.date_picker.months.june"),s("ds.components.base.date_picker.months.july"),s("ds.components.base.date_picker.months.august"),s("ds.components.base.date_picker.months.september"),s("ds.components.base.date_picker.months.october"),s("ds.components.base.date_picker.months.november"),s("ds.components.base.date_picker.months.december")],monthsShort:[s("ds.components.base.date_picker.months_short.january"),s("ds.components.base.date_picker.months_short.february"),s("ds.components.base.date_picker.months_short.march"),s("ds.components.base.date_picker.months_short.april"),s("ds.components.base.date_picker.months_short.may"),s("ds.components.base.date_picker.months_short.june"),s("ds.components.base.date_picker.months_short.july"),s("ds.components.base.date_picker.months_short.august"),s("ds.components.base.date_picker.months_short.september"),s("ds.components.base.date_picker.months_short.october"),s("ds.components.base.date_picker.months_short.november"),s("ds.components.base.date_picker.months_short.december")],today:s("ds.components.base.date_picker.buttons.today"),clear:s("ds.components.base.date_picker.buttons.clear"),dateFormat:"dd/MM/yyyy",timeFormat:"HH:mm",firstDay:1},o=({date:m})=>{b.value=m,t.required&&Y(!!m)};return{locale:e,selectedDates:[t.modelValue],onSelect:o,buttons:[...C.value],showOtherMonths:!1,timepicker:!1,onlyTimepicker:!1,minDate:t.minDate,maxDate:t.maxDate,view:t.view,onHide:$,onShow:R,navTitles:{days:"MMMM yyyy"},position:t.position,prevHtml:`<svg xmlns="http://www.w3.org/2000/svg"
|
|
2
|
+
viewBox="0 0 320 512">
|
|
3
|
+
<path d="M9.4 233.4c-12.5 12.5-12.5 32.8 0 45.3l192 192c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L77.3 256 246.6 86.6c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0l-192 192z"/>
|
|
4
|
+
</svg>`,nextHtml:`<svg xmlns="http://www.w3.org/2000/svg"
|
|
5
|
+
viewBox="0 0 320 512">
|
|
6
|
+
<path d="M310.6 233.4c12.5 12.5 12.5 32.8 0 45.3l-192 192c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3L242.7 256 73.4 86.6c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0l192 192z"/>
|
|
7
|
+
</svg>`}}),S=a.computed(()=>{let e=[];return t.required&&e.push(H),t.validationRules&&(e=e.concat(t.validationRules)),e.length?e:void 0}),w=a.computed(()=>["ds-border ds-rounded-lg ds-block ds-w-full ds-text-sm ds-px-3 ds-h-[40px]",{"ds-cursor-not-allowed ds-bg-[#f2f2f2] ds-text-black/[0.4]":t.disabled,"ds-text-black/[0.85]":!t.disabled,"ds-border-error focus:ds-ring-1 focus:ds-ring-error":!f.value.valid,"ds-border-black/[0.1] focus:ds-border-focus focus:ds-ring-1 focus:ds-ring-focus":f.value.valid,"!ds-border-focus ds-ring-1 ds-ring-focus":k.value},t.inputCssClass]),z=a.computed(()=>t.modelValue?p.getDate()===t.modelValue.getDate()&&p.getMonth()===t.modelValue.getMonth()&&p.getFullYear()===t.modelValue.getFullYear():!1),P=a.computed(()=>{const e={mask:c.MaskedDate,pattern:u,lazy:!0,format:o=>i(o).format(u),parse:o=>i(o,u),blocks:{YYYY:{mask:c.MaskedRange,from:1,to:9999},MM:{mask:c.MaskedRange,from:1,to:12},DD:{mask:c.MaskedRange,from:1,to:31}}};return t.minDate&&(e.min=t.minDate),t.maxDate&&(e.max=t.maxDate),e}),k=a.ref(!1),{validate:_,validationResult:f}=j.useValidationField(n.value,V,S.value);a.watch(()=>t.modelValue,()=>{h(d.selectedDates[0])&&(t.modelValue?(d.selectDate(t.modelValue),d.setViewDate(t.modelValue)):d.clear()),h(y())&&(r.value=M(t.modelValue))},{deep:!0}),a.watch([q,()=>t.position,()=>t.minDate,()=>t.maxDate,()=>t.view],()=>{d.update(D.value)});const M=e=>L.checkIfISOFormat(e)?i(e).format(u):e,$=()=>{k.value=!1,v.unlockScrollBody()},R=()=>{k.value=!0,t.modelValue?(d.selectDate(t.modelValue),d.setViewDate(t.modelValue)):d.clear(),v.lockScrollBody()},E=()=>{r.unmaskedValue||l("update:modelValue","")},N=()=>{const e=y();return e?l("update:modelValue",e):l("update:modelValue","")},T=()=>{const e=y();_(),h(e)&&l("update:modelValue",e===void 0?"":e)},h=e=>[!t.modelValue&&e,!e&&t.modelValue,t.modelValue&&e&&t.modelValue.getTime()!==e.getTime()].some(m=>m),y=()=>{const e=r.value.split("/"),o=`${e[2]}-${e[1]}-${e[0]}`;if(i(o,i.ISO_8601,!0).isValid())return new Date(o)},Y=e=>{const o=document.querySelector(`.${n.value}-btn-confirm`);e?o==null||o.removeAttribute("disabled"):o==null||o.setAttribute("disabled","")};return a.onMounted(()=>{d=new F(`#${n.value}Picker`,D.value),r=c(g.value,P.value),r.value=M(t.modelValue),r.on("accept",E),r.on("complete",N)}),a.onBeforeUnmount(()=>{v.unlockScrollBody()}),(e,o)=>(a.openBlock(),a.createElementBlock("div",null,[a.createVNode(U,{id:n.value,label:e.label,required:e.required},null,8,["id","label","required"]),a.createElementVNode("div",J,[a.createElementVNode("input",{id:n.value,ref_key:"inputMaskRef",ref:g,class:a.normalizeClass([w.value,"ds-relative ds-z-[2] ds-drop-shadow-light"]),disabled:e.disabled,placeholder:e.placeholder,onBlur:T},null,42,K),a.createElementVNode("input",{id:`${n.value}Picker`,class:a.normalizeClass([w.value,"ds-absolute ds-top-0 ds-z-[1]"]),disabled:e.disabled,readonly:""},null,10,Q),e.showHintToday&&z.value?(a.openBlock(),a.createElementBlock("label",{key:0,for:n.value,class:"ds-absolute ds-left-[98px] ds-top-2.5 ds-z-[3] ds-text-sm"},a.toDisplayString(`(${e.$t("ds.components.base.date_picker.today")})`),9,W)):a.createCommentVNode("",!0),a.createElementVNode("label",{for:`${n.value}Picker`,class:"ds-absolute ds-right-3 ds-top-3 ds-z-[3]"},[(a.openBlock(),a.createElementBlock("svg",{class:a.normalizeClass([[t.disabled?"ds-fill-black/40":"ds-text-black/[0.85]"],"ds-h-4 ds-w-4"]),viewBox:"0 0 448 512",xmlns:"http://www.w3.org/2000/svg"},ee,2))],8,X)]),e.hideDetails?a.createCommentVNode("",!0):(a.openBlock(),a.createBlock(A,{key:0,"error-message":a.unref(f).errorMessage(),class:"ds-mt-1"},null,8,["error-message"]))]))}});module.exports=se;
|
|
2
8
|
//# sourceMappingURL=design-system12.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"design-system12.js","sources":["../src/components/BDatePicker.vue?vue&type=script&setup=true&lang.ts"],"sourcesContent":["import { defineComponent as _defineComponent } from 'vue'\nimport { createVNode as _createVNode, normalizeClass as _normalizeClass, createElementVNode as _createElementVNode, toDisplayString as _toDisplayString, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, unref as _unref, createBlock as _createBlock } from \"vue\"\n\nconst _hoisted_1 = { class: \"ds-relative\" }\nconst _hoisted_2 = [\"id\", \"disabled\", \"placeholder\"]\nconst _hoisted_3 = [\"id\", \"disabled\"]\nconst _hoisted_4 = [\"for\"]\nconst _hoisted_5 = [\"for\"]\n\nimport {\n computed,\n nextTick,\n onBeforeUnmount,\n onMounted,\n ref,\n watch,\n} from 'vue';\n// https://imask.js.org/guide.html#getting-started\nimport IMask from '@/vendor/imask-7.1.3.js';\n/**\n * https://stackoverflow.com/questions/25384360/how-to-prevent-moment-js-from-loading-locales-with-webpack\n * Due to this issue with moment (it loads a bunch of unnecessary ./locale)\n * https://github.com/ksloan/moment-mini\n */\nimport moment from 'moment-mini';\nimport { useI18n } from 'vue-i18n';\n// https://air-datepicker.com/docs\n// DO NOT upgrade to the higher version than 3.3.0\nimport AirDatepicker, {\n type AirDatepickerButton,\n type AirDatepickerLocale,\n} from 'air-datepicker';\n\nimport {\n useValidationField,\n type ValidationRule,\n} from '@/composables/Validation';\nimport { DateDelimiter } from '@/constants/Common';\nimport { BDatePickerView } from '@/constants/Enums';\nimport { lockScrollBody, unlockScrollBody } from '@/helpers/ComponentHelper';\nimport { checkIfISOFormat } from '@/helpers/DateHelper';\nimport { v4 as uuid } from 'uuid';\nimport BErrorMessage from './BErrorMessage.vue';\nimport BLabel from './BLabel.vue';\n\n/**\n * Props\n */\nexport interface BDatePickerProps {\n inputId?: string;\n modelValue: any;\n label?: string;\n /**\n * Array of custom validation rules.\n */\n validationRules?: ValidationRule[];\n placeholder?: string;\n /**\n * Validate if the field is left empty.\n */\n required?: boolean;\n requiredErrorMessage?: string;\n disabled?: boolean;\n inputCssClass?: string;\n /**\n * Minimum selectable date\n */\n minDate?: any;\n /**\n * Maximum selectable date\n */\n maxDate?: any;\n /**\n * Show \"Today\" text if selected date is the current date\n */\n showHintToday?: boolean;\n /**\n * Default view mode when open picker dropdown\n */\n view?: BDatePickerView;\n /**\n * Hide the validation error message.\n */\n hideDetails?: boolean;\n /**\n * Position of picker dropdown when it's showed up\n */\n position?: string;\n}\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'BDatePicker',\n props: {\n inputId: { default: '' },\n modelValue: {},\n label: { default: '' },\n validationRules: { default: undefined },\n placeholder: { default: '' },\n required: { type: Boolean, default: false },\n requiredErrorMessage: { default: '' },\n disabled: { type: Boolean, default: false },\n inputCssClass: { default: '' },\n minDate: { default: '' },\n maxDate: { default: '' },\n showHintToday: { type: Boolean, default: false },\n view: { default: BDatePickerView.Days },\n hideDetails: { type: Boolean, default: false },\n position: { default: 'bottom left' }\n },\n emits: [\"update:modelValue\"],\n setup(__props: any, { emit }) {\n\nconst props = __props;\n\n\n\n/**\n * Events\n */\n\n\n/**\n * Data\n */\nconst { t, locale } = useI18n();\nconst dateFormat = `DD${DateDelimiter}MM${DateDelimiter}YYYY`; // moment's date format\nconst currentDate = new Date();\nlet datePicker: AirDatepicker<HTMLInputElement>;\nlet mask: any;\nconst inputMaskRef = ref<HTMLElement | null>(null);\nconst validateRequired: ValidationRule = {\n validateRule: (val) => !!val,\n errorMessage: () =>\n props.requiredErrorMessage || t('ds.global.field_required'),\n};\nconst selectedDate = ref();\n\n/**\n * Computed\n */\n// The \"Failed to execute 'querySelector' on Document\" error occurs when using querySelector method with an identifier that starts with a digit\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 datePickerButtons = computed<AirDatepickerButton[]>(() => [\n {\n content: t('ds.components.base.date_picker.buttons.cancel'),\n className:\n 'ds-bg-transparent focus:ds-ring-1 focus:ds-ring-gray-300 ds-border-inner-primary-f !ds-text-primary-t hover:ds-bg-[#e6f0fe] ds-text-sm ds-leading-4 ds-px-4 ds-mx-1',\n onClick: (dp) => {\n dp.clear();\n nextTick(() => {\n validate();\n });\n dp.hide();\n },\n },\n {\n content: t('ds.components.base.date_picker.buttons.confirm'),\n className: `${id.value}-btn-confirm focus:ds-ring-1 focus:ds-ring-1 focus:ds-ring-blue-300 ds-bg-gradient-to-r ds-from-primary-f-stop ds-from-primary-f ds-to-primary-t !ds-text-white enabled:hover:ds-bg-[#0e4bbd] ds-text-sm ds-leading-4 ds-px-4 disabled:ds-from-[#e2e4e8] disabled:ds-to-[#e2e4e8] disabled:ds-text-black/[0.4] ds-mx-1`,\n onClick: (dp) => {\n value.value = selectedDate.value !== undefined ? selectedDate.value : '';\n nextTick(() => {\n validate();\n });\n dp.hide();\n },\n attrs: props.required\n ? {\n disabled: '',\n }\n : undefined,\n },\n]);\nconst datePickerOptions = computed(() => {\n const datePickerLocale: AirDatepickerLocale = {\n days: [\n t('ds.components.base.date_picker.days.sunday'),\n t('ds.components.base.date_picker.days.monday'),\n t('ds.components.base.date_picker.days.tuesday'),\n t('ds.components.base.date_picker.days.wednesday'),\n t('ds.components.base.date_picker.days.thursday'),\n t('ds.components.base.date_picker.days.friday'),\n t('ds.components.base.date_picker.days.saturday'),\n ],\n daysShort: [\n t('ds.components.base.date_picker.days_short.sunday'),\n t('ds.components.base.date_picker.days_short.monday'),\n t('ds.components.base.date_picker.days_short.tuesday'),\n t('ds.components.base.date_picker.days_short.wednesday'),\n t('ds.components.base.date_picker.days_short.thursday'),\n t('ds.components.base.date_picker.days_short.friday'),\n t('ds.components.base.date_picker.days_short.saturday'),\n ],\n daysMin: [\n t('ds.components.base.date_picker.days_min.sunday'),\n t('ds.components.base.date_picker.days_min.monday'),\n t('ds.components.base.date_picker.days_min.tuesday'),\n t('ds.components.base.date_picker.days_min.wednesday'),\n t('ds.components.base.date_picker.days_min.thursday'),\n t('ds.components.base.date_picker.days_min.friday'),\n t('ds.components.base.date_picker.days_min.saturday'),\n ],\n months: [\n t('ds.components.base.date_picker.months.january'),\n t('ds.components.base.date_picker.months.february'),\n t('ds.components.base.date_picker.months.march'),\n t('ds.components.base.date_picker.months.april'),\n t('ds.components.base.date_picker.months.may'),\n t('ds.components.base.date_picker.months.june'),\n t('ds.components.base.date_picker.months.july'),\n t('ds.components.base.date_picker.months.august'),\n t('ds.components.base.date_picker.months.september'),\n t('ds.components.base.date_picker.months.october'),\n t('ds.components.base.date_picker.months.november'),\n t('ds.components.base.date_picker.months.december'),\n ],\n monthsShort: [\n t('ds.components.base.date_picker.months_short.january'),\n t('ds.components.base.date_picker.months_short.february'),\n t('ds.components.base.date_picker.months_short.march'),\n t('ds.components.base.date_picker.months_short.april'),\n t('ds.components.base.date_picker.months_short.may'),\n t('ds.components.base.date_picker.months_short.june'),\n t('ds.components.base.date_picker.months_short.july'),\n t('ds.components.base.date_picker.months_short.august'),\n t('ds.components.base.date_picker.months_short.september'),\n t('ds.components.base.date_picker.months_short.october'),\n t('ds.components.base.date_picker.months_short.november'),\n t('ds.components.base.date_picker.months_short.december'),\n ],\n today: t('ds.components.base.date_picker.buttons.today'),\n clear: t('ds.components.base.date_picker.buttons.clear'),\n dateFormat: 'dd/MM/yyyy',\n timeFormat: 'HH:mm',\n firstDay: 1, // Monday\n };\n const onSelectDatePicker = ({\n date,\n }: {\n date: Date | Date[];\n formattedDate: string | string[];\n datepicker: AirDatepicker;\n }) => {\n // 'date' is undefined when clicking 'Clear' button/ deselect the date\n selectedDate.value = date;\n if (props.required) {\n toggleButtonCofirm(!!date);\n }\n };\n\n return {\n locale: datePickerLocale,\n selectedDates: [props.modelValue],\n onSelect: onSelectDatePicker,\n buttons: [...datePickerButtons.value],\n showOtherMonths: false,\n timepicker: false,\n onlyTimepicker: false,\n minDate: props.minDate,\n maxDate: props.maxDate,\n view: props.view,\n onHide: onHidePicker,\n onShow: onShowPicker,\n navTitles: {\n days: 'MMMM yyyy',\n },\n position: props.position,\n } as any; // AirDatepickerOptions\n});\nconst vRules = computed(() => {\n let result: ValidationRule[] = [];\n\n if (props.required) {\n result.push(validateRequired);\n }\n if (props.validationRules) {\n result = result.concat(props.validationRules);\n }\n\n return result.length ? result : undefined;\n});\nconst inputCssClassValue = computed(() => [\n 'ds-border ds-rounded-lg ds-block ds-w-full ds-text-sm ds-px-3 ds-h-[40px]',\n {\n 'ds-cursor-not-allowed ds-bg-[#f2f2f2] ds-text-black/[0.4]': props.disabled,\n 'ds-text-black/[0.85]': !props.disabled,\n 'ds-border-error focus:ds-ring-1 focus:ds-ring-error':\n !validationResult.value.valid,\n 'ds-border-black/[0.1] focus:ds-border-focus focus:ds-ring-1 focus:ds-ring-focus':\n validationResult.value.valid,\n '!ds-border-focus ds-ring-1 ds-ring-focus': datePickerVisible.value,\n },\n props.inputCssClass,\n]);\nconst isToday = computed(() => {\n if (!props.modelValue) {\n return false;\n }\n return (\n currentDate.getDate() === props.modelValue.getDate() &&\n currentDate.getMonth() === props.modelValue.getMonth() &&\n currentDate.getFullYear() === props.modelValue.getFullYear()\n );\n});\nconst inputMaskOptions = computed(() => {\n const result: any = {\n mask: IMask.MaskedDate,\n pattern: dateFormat,\n lazy: true,\n\n format: (date: any) => moment(date).format(dateFormat),\n parse: (str: string) => moment(str, dateFormat),\n\n blocks: {\n YYYY: {\n mask: IMask.MaskedRange,\n from: 1,\n to: 9999,\n },\n MM: {\n mask: IMask.MaskedRange,\n from: 1,\n to: 12,\n },\n DD: {\n mask: IMask.MaskedRange,\n from: 1,\n to: 31,\n },\n },\n };\n\n if (props.minDate) {\n result.min = props.minDate;\n }\n if (props.maxDate) {\n result.max = props.maxDate;\n }\n\n return result;\n});\nconst datePickerVisible = ref(false);\n\nconst { validate, validationResult } = useValidationField(\n id.value,\n value,\n vRules.value,\n);\n\n/**\n * Watch\n */\nwatch(\n () => props.modelValue,\n () => {\n // Make sure to update value once\n if (checkIfModelNeedToSync(datePicker.selectedDates[0])) {\n if (props.modelValue) {\n datePicker.selectDate(props.modelValue);\n datePicker.setViewDate(props.modelValue);\n } else {\n datePicker.clear();\n }\n }\n if (checkIfModelNeedToSync(getInputMaskDate())) {\n mask.value = formatDate(props.modelValue);\n }\n },\n { deep: true },\n);\nwatch(\n [\n locale,\n () => props.position,\n () => props.minDate,\n () => props.maxDate,\n () => props.view,\n ],\n () => {\n datePicker.update(datePickerOptions.value);\n },\n);\n\n/**\n * Methods\n */\nconst formatDate = (date: string | Date) =>\n checkIfISOFormat(date) ? moment(date).format(dateFormat) : date;\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nconst onHidePicker = () => {\n datePickerVisible.value = false;\n unlockScrollBody();\n};\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nconst onShowPicker = () => {\n datePickerVisible.value = true;\n if (props.modelValue) {\n datePicker.selectDate(props.modelValue);\n datePicker.setViewDate(props.modelValue);\n } else {\n datePicker.clear();\n }\n lockScrollBody();\n};\nconst onAccept = () => {\n if (!mask.unmaskedValue) {\n emit('update:modelValue', '');\n }\n};\nconst onComplete = () => {\n const date = getInputMaskDate();\n return date ? emit('update:modelValue', date) : emit('update:modelValue', '');\n};\nconst onBlur = () => {\n const date = getInputMaskDate();\n validate();\n if (!checkIfModelNeedToSync(date)) {\n return;\n }\n emit('update:modelValue', date === undefined ? '' : date);\n};\nconst checkIfModelNeedToSync = (date: any) => {\n const ruleEngine = [\n !props.modelValue && date,\n !date && props.modelValue,\n props.modelValue && date && props.modelValue.getTime() !== date.getTime(),\n ];\n\n return ruleEngine.some((r) => r);\n};\nconst getInputMaskDate = () => {\n const arr = mask.value.split('/');\n const dateStr = `${arr[2]}-${arr[1]}-${arr[0]}`;\n // Check if string is in ISO format\n if (moment(dateStr, moment.ISO_8601, true).isValid()) {\n return new Date(dateStr);\n }\n\n return undefined;\n};\nconst toggleButtonCofirm = (enabled: boolean) => {\n const btnEl = document.querySelector(`.${id.value}-btn-confirm`);\n if (enabled) {\n btnEl?.removeAttribute('disabled');\n } else {\n btnEl?.setAttribute('disabled', '');\n }\n};\n\n/**\n * Lifecycle hooks\n */\nonMounted(() => {\n // Picker\n datePicker = new AirDatepicker<HTMLInputElement>(\n `#${id.value}Picker`,\n datePickerOptions.value,\n );\n // Input mask\n mask = IMask(inputMaskRef.value!, inputMaskOptions.value);\n mask.value = formatDate(props.modelValue);\n mask.on('accept', onAccept);\n mask.on('complete', onComplete);\n});\nonBeforeUnmount(() => {\n unlockScrollBody();\n});\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", null, [\n _createVNode(BLabel, {\n id: id.value,\n label: _ctx.label,\n required: _ctx.required\n }, null, 8, [\"id\", \"label\", \"required\"]),\n _createElementVNode(\"div\", _hoisted_1, [\n _createElementVNode(\"input\", {\n id: id.value,\n ref_key: \"inputMaskRef\",\n ref: inputMaskRef,\n class: _normalizeClass([inputCssClassValue.value, \"ds-relative ds-z-[2] ds-drop-shadow-light\"]),\n disabled: _ctx.disabled,\n placeholder: _ctx.placeholder,\n onBlur: onBlur\n }, null, 42, _hoisted_2),\n _createElementVNode(\"input\", {\n id: `${id.value}Picker`,\n class: _normalizeClass([inputCssClassValue.value, \"ds-absolute ds-top-0 ds-z-[1]\"]),\n disabled: _ctx.disabled,\n readonly: \"\"\n }, null, 10, _hoisted_3),\n (_ctx.showHintToday && isToday.value)\n ? (_openBlock(), _createElementBlock(\"label\", {\n key: 0,\n for: id.value,\n class: \"ds-absolute ds-left-[98px] ds-top-2.5 ds-z-[3] ds-text-sm\"\n }, _toDisplayString(`(${_ctx.$t('ds.components.base.date_picker.today')})`), 9, _hoisted_4))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"label\", {\n for: `${id.value}Picker`,\n class: \"ds-absolute ds-right-3 ds-top-2 ds-z-[3]\"\n }, [\n _createElementVNode(\"i\", {\n class: _normalizeClass([[\n props.disabled ? 'ds-text-black/[0.4]' : 'ds-text-black/[0.85]',\n ], \"fa-solid fa-calendar-lines\"])\n }, null, 2)\n ], 8, _hoisted_5)\n ]),\n (!_ctx.hideDetails)\n ? (_openBlock(), _createBlock(BErrorMessage, {\n key: 0,\n \"error-message\": _unref(validationResult).errorMessage(),\n class: \"ds-mt-1\",\n \"prepend-icon\": \"fa-solid fa-circle-exclamation\"\n }, null, 8, [\"error-message\"]))\n : _createCommentVNode(\"\", true)\n ]))\n}\n}\n\n})"],"names":["_hoisted_1","_hoisted_2","_hoisted_3","_hoisted_4","_hoisted_5","_sfc_main","_defineComponent","BDatePickerView","__props","emit","props","t","locale","useI18n","dateFormat","DateDelimiter","currentDate","datePicker","mask","inputMaskRef","ref","validateRequired","val","selectedDate","id","computed","uuid","value","datePickerButtons","dp","nextTick","validate","datePickerOptions","datePickerLocale","onSelectDatePicker","date","toggleButtonCofirm","onHidePicker","onShowPicker","vRules","result","inputCssClassValue","validationResult","datePickerVisible","isToday","inputMaskOptions","IMask","moment","str","useValidationField","watch","checkIfModelNeedToSync","getInputMaskDate","formatDate","checkIfISOFormat","unlockScrollBody","lockScrollBody","onAccept","onComplete","onBlur","r","arr","dateStr","enabled","btnEl","onMounted","AirDatepicker","onBeforeUnmount","_ctx","_cache","_openBlock","_createElementBlock","_createVNode","BLabel","_createElementVNode","_normalizeClass","_toDisplayString","_createCommentVNode","_createBlock","BErrorMessage","_unref"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"design-system12.js","sources":["../src/components/BDatePicker.vue?vue&type=script&setup=true&lang.ts"],"sourcesContent":["import { defineComponent as _defineComponent } from 'vue'\nimport { createVNode as _createVNode, normalizeClass as _normalizeClass, createElementVNode as _createElementVNode, toDisplayString as _toDisplayString, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, unref as _unref, createBlock as _createBlock } from \"vue\"\n\nconst _hoisted_1 = { class: \"ds-relative\" }\nconst _hoisted_2 = [\"id\", \"disabled\", \"placeholder\"]\nconst _hoisted_3 = [\"id\", \"disabled\"]\nconst _hoisted_4 = [\"for\"]\nconst _hoisted_5 = [\"for\"]\nconst _hoisted_6 = /*#__PURE__*/_createElementVNode(\"path\", { d: \"M96 32V64H48C21.5 64 0 85.5 0 112v48H448V112c0-26.5-21.5-48-48-48H352V32c0-17.7-14.3-32-32-32s-32 14.3-32 32V64H160V32c0-17.7-14.3-32-32-32S96 14.3 96 32zM448 192H0V464c0 26.5 21.5 48 48 48H400c26.5 0 48-21.5 48-48V192zM96 296c0-13.3 10.7-24 24-24H328c13.3 0 24 10.7 24 24s-10.7 24-24 24H120c-13.3 0-24-10.7-24-24zm24 72H232c13.3 0 24 10.7 24 24s-10.7 24-24 24H120c-13.3 0-24-10.7-24-24s10.7-24 24-24z\" }, null, -1)\nconst _hoisted_7 = [\n _hoisted_6\n]\n\nimport {\n computed,\n nextTick,\n onBeforeUnmount,\n onMounted,\n ref,\n watch,\n} from 'vue';\n// https://imask.js.org/guide.html#getting-started\nimport IMask from '@/vendor/imask-7.1.3.js';\n/**\n * https://stackoverflow.com/questions/25384360/how-to-prevent-moment-js-from-loading-locales-with-webpack\n * Due to this issue with moment (it loads a bunch of unnecessary ./locale)\n * https://github.com/ksloan/moment-mini\n */\nimport moment from 'moment-mini';\nimport { useI18n } from 'vue-i18n';\n// https://air-datepicker.com/docs\n// DO NOT upgrade to the higher version than 3.3.0\nimport AirDatepicker, {\n type AirDatepickerButton,\n type AirDatepickerLocale,\n} from 'air-datepicker';\n\nimport {\n useValidationField,\n type ValidationRule,\n} from '@/composables/Validation';\nimport { DateDelimiter } from '@/constants/Common';\nimport { BDatePickerView } from '@/constants/Enums';\nimport { lockScrollBody, unlockScrollBody } from '@/helpers/ComponentHelper';\nimport { checkIfISOFormat } from '@/helpers/DateHelper';\nimport { v4 as uuid } from 'uuid';\nimport BErrorMessage from './BErrorMessage.vue';\nimport BLabel from './BLabel.vue';\n\n/**\n * Props\n */\nexport interface BDatePickerProps {\n inputId?: string;\n modelValue: any;\n label?: string;\n /**\n * Array of custom validation rules.\n */\n validationRules?: ValidationRule[];\n placeholder?: string;\n /**\n * Validate if the field is left empty.\n */\n required?: boolean;\n requiredErrorMessage?: string;\n disabled?: boolean;\n inputCssClass?: string;\n /**\n * Minimum selectable date\n */\n minDate?: any;\n /**\n * Maximum selectable date\n */\n maxDate?: any;\n /**\n * Show \"Today\" text if selected date is the current date\n */\n showHintToday?: boolean;\n /**\n * Default view mode when open picker dropdown\n */\n view?: BDatePickerView;\n /**\n * Hide the validation error message.\n */\n hideDetails?: boolean;\n /**\n * Position of picker dropdown when it's showed up\n */\n position?: string;\n}\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'BDatePicker',\n props: {\n inputId: { default: '' },\n modelValue: {},\n label: { default: '' },\n validationRules: { default: undefined },\n placeholder: { default: '' },\n required: { type: Boolean, default: false },\n requiredErrorMessage: { default: '' },\n disabled: { type: Boolean, default: false },\n inputCssClass: { default: '' },\n minDate: { default: '' },\n maxDate: { default: '' },\n showHintToday: { type: Boolean, default: false },\n view: { default: BDatePickerView.Days },\n hideDetails: { type: Boolean, default: false },\n position: { default: 'bottom left' }\n },\n emits: [\"update:modelValue\"],\n setup(__props: any, { emit }) {\n\nconst props = __props;\n\n\n\n/**\n * Events\n */\n\n\n/**\n * Data\n */\nconst { t, locale } = useI18n();\nconst dateFormat = `DD${DateDelimiter}MM${DateDelimiter}YYYY`; // moment's date format\nconst currentDate = new Date();\nlet datePicker: AirDatepicker<HTMLInputElement>;\nlet mask: any;\nconst inputMaskRef = ref<HTMLElement | null>(null);\nconst validateRequired: ValidationRule = {\n validateRule: (val) => !!val,\n errorMessage: () =>\n props.requiredErrorMessage || t('ds.global.field_required'),\n};\nconst selectedDate = ref();\n\n/**\n * Computed\n */\n// The \"Failed to execute 'querySelector' on Document\" error occurs when using querySelector method with an identifier that starts with a digit\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 datePickerButtons = computed<AirDatepickerButton[]>(() => [\n {\n content: t('ds.components.base.date_picker.buttons.cancel'),\n className:\n 'ds-bg-transparent focus:ds-ring-1 focus:ds-ring-gray-300 ds-border-inner-primary-f !ds-text-primary-t hover:ds-bg-[#e6f0fe] ds-text-sm ds-leading-4 ds-px-4 ds-mx-1',\n onClick: (dp) => {\n dp.clear();\n nextTick(() => {\n validate();\n });\n dp.hide();\n },\n },\n {\n content: t('ds.components.base.date_picker.buttons.confirm'),\n className: `${id.value}-btn-confirm focus:ds-ring-1 focus:ds-ring-1 focus:ds-ring-blue-300 ds-bg-gradient-to-r ds-from-primary-f-stop ds-from-primary-f ds-to-primary-t !ds-text-white enabled:hover:ds-bg-[#0e4bbd] ds-text-sm ds-leading-4 ds-px-4 disabled:ds-from-[#e2e4e8] disabled:ds-to-[#e2e4e8] disabled:ds-text-black/[0.4] ds-mx-1`,\n onClick: (dp) => {\n value.value = selectedDate.value !== undefined ? selectedDate.value : '';\n nextTick(() => {\n validate();\n });\n dp.hide();\n },\n attrs: props.required\n ? {\n disabled: '',\n }\n : undefined,\n },\n]);\nconst datePickerOptions = computed(() => {\n const datePickerLocale: AirDatepickerLocale = {\n days: [\n t('ds.components.base.date_picker.days.sunday'),\n t('ds.components.base.date_picker.days.monday'),\n t('ds.components.base.date_picker.days.tuesday'),\n t('ds.components.base.date_picker.days.wednesday'),\n t('ds.components.base.date_picker.days.thursday'),\n t('ds.components.base.date_picker.days.friday'),\n t('ds.components.base.date_picker.days.saturday'),\n ],\n daysShort: [\n t('ds.components.base.date_picker.days_short.sunday'),\n t('ds.components.base.date_picker.days_short.monday'),\n t('ds.components.base.date_picker.days_short.tuesday'),\n t('ds.components.base.date_picker.days_short.wednesday'),\n t('ds.components.base.date_picker.days_short.thursday'),\n t('ds.components.base.date_picker.days_short.friday'),\n t('ds.components.base.date_picker.days_short.saturday'),\n ],\n daysMin: [\n t('ds.components.base.date_picker.days_min.sunday'),\n t('ds.components.base.date_picker.days_min.monday'),\n t('ds.components.base.date_picker.days_min.tuesday'),\n t('ds.components.base.date_picker.days_min.wednesday'),\n t('ds.components.base.date_picker.days_min.thursday'),\n t('ds.components.base.date_picker.days_min.friday'),\n t('ds.components.base.date_picker.days_min.saturday'),\n ],\n months: [\n t('ds.components.base.date_picker.months.january'),\n t('ds.components.base.date_picker.months.february'),\n t('ds.components.base.date_picker.months.march'),\n t('ds.components.base.date_picker.months.april'),\n t('ds.components.base.date_picker.months.may'),\n t('ds.components.base.date_picker.months.june'),\n t('ds.components.base.date_picker.months.july'),\n t('ds.components.base.date_picker.months.august'),\n t('ds.components.base.date_picker.months.september'),\n t('ds.components.base.date_picker.months.october'),\n t('ds.components.base.date_picker.months.november'),\n t('ds.components.base.date_picker.months.december'),\n ],\n monthsShort: [\n t('ds.components.base.date_picker.months_short.january'),\n t('ds.components.base.date_picker.months_short.february'),\n t('ds.components.base.date_picker.months_short.march'),\n t('ds.components.base.date_picker.months_short.april'),\n t('ds.components.base.date_picker.months_short.may'),\n t('ds.components.base.date_picker.months_short.june'),\n t('ds.components.base.date_picker.months_short.july'),\n t('ds.components.base.date_picker.months_short.august'),\n t('ds.components.base.date_picker.months_short.september'),\n t('ds.components.base.date_picker.months_short.october'),\n t('ds.components.base.date_picker.months_short.november'),\n t('ds.components.base.date_picker.months_short.december'),\n ],\n today: t('ds.components.base.date_picker.buttons.today'),\n clear: t('ds.components.base.date_picker.buttons.clear'),\n dateFormat: 'dd/MM/yyyy',\n timeFormat: 'HH:mm',\n firstDay: 1, // Monday\n };\n const onSelectDatePicker = ({\n date,\n }: {\n date: Date | Date[];\n formattedDate: string | string[];\n datepicker: AirDatepicker;\n }) => {\n // 'date' is undefined when clicking 'Clear' button/ deselect the date\n selectedDate.value = date;\n if (props.required) {\n toggleButtonCofirm(!!date);\n }\n };\n\n return {\n locale: datePickerLocale,\n selectedDates: [props.modelValue],\n onSelect: onSelectDatePicker,\n buttons: [...datePickerButtons.value],\n showOtherMonths: false,\n timepicker: false,\n onlyTimepicker: false,\n minDate: props.minDate,\n maxDate: props.maxDate,\n view: props.view,\n onHide: onHidePicker,\n onShow: onShowPicker,\n navTitles: {\n days: 'MMMM yyyy',\n },\n position: props.position,\n prevHtml: `<svg xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 320 512\">\n <path d=\"M9.4 233.4c-12.5 12.5-12.5 32.8 0 45.3l192 192c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L77.3 256 246.6 86.6c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0l-192 192z\"/>\n </svg>`,\n nextHtml: `<svg xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 320 512\">\n <path d=\"M310.6 233.4c12.5 12.5 12.5 32.8 0 45.3l-192 192c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3L242.7 256 73.4 86.6c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0l192 192z\"/>\n </svg>`,\n } as any; // AirDatepickerOptions\n});\nconst vRules = computed(() => {\n let result: ValidationRule[] = [];\n\n if (props.required) {\n result.push(validateRequired);\n }\n if (props.validationRules) {\n result = result.concat(props.validationRules);\n }\n\n return result.length ? result : undefined;\n});\nconst inputCssClassValue = computed(() => [\n 'ds-border ds-rounded-lg ds-block ds-w-full ds-text-sm ds-px-3 ds-h-[40px]',\n {\n 'ds-cursor-not-allowed ds-bg-[#f2f2f2] ds-text-black/[0.4]': props.disabled,\n 'ds-text-black/[0.85]': !props.disabled,\n 'ds-border-error focus:ds-ring-1 focus:ds-ring-error':\n !validationResult.value.valid,\n 'ds-border-black/[0.1] focus:ds-border-focus focus:ds-ring-1 focus:ds-ring-focus':\n validationResult.value.valid,\n '!ds-border-focus ds-ring-1 ds-ring-focus': datePickerVisible.value,\n },\n props.inputCssClass,\n]);\nconst isToday = computed(() => {\n if (!props.modelValue) {\n return false;\n }\n return (\n currentDate.getDate() === props.modelValue.getDate() &&\n currentDate.getMonth() === props.modelValue.getMonth() &&\n currentDate.getFullYear() === props.modelValue.getFullYear()\n );\n});\nconst inputMaskOptions = computed(() => {\n const result: any = {\n mask: IMask.MaskedDate,\n pattern: dateFormat,\n lazy: true,\n\n format: (date: any) => moment(date).format(dateFormat),\n parse: (str: string) => moment(str, dateFormat),\n\n blocks: {\n YYYY: {\n mask: IMask.MaskedRange,\n from: 1,\n to: 9999,\n },\n MM: {\n mask: IMask.MaskedRange,\n from: 1,\n to: 12,\n },\n DD: {\n mask: IMask.MaskedRange,\n from: 1,\n to: 31,\n },\n },\n };\n\n if (props.minDate) {\n result.min = props.minDate;\n }\n if (props.maxDate) {\n result.max = props.maxDate;\n }\n\n return result;\n});\nconst datePickerVisible = ref(false);\n\nconst { validate, validationResult } = useValidationField(\n id.value,\n value,\n vRules.value,\n);\n\n/**\n * Watch\n */\nwatch(\n () => props.modelValue,\n () => {\n // Make sure to update value once\n if (checkIfModelNeedToSync(datePicker.selectedDates[0])) {\n if (props.modelValue) {\n datePicker.selectDate(props.modelValue);\n datePicker.setViewDate(props.modelValue);\n } else {\n datePicker.clear();\n }\n }\n if (checkIfModelNeedToSync(getInputMaskDate())) {\n mask.value = formatDate(props.modelValue);\n }\n },\n { deep: true },\n);\nwatch(\n [\n locale,\n () => props.position,\n () => props.minDate,\n () => props.maxDate,\n () => props.view,\n ],\n () => {\n datePicker.update(datePickerOptions.value);\n },\n);\n\n/**\n * Methods\n */\nconst formatDate = (date: string | Date) =>\n checkIfISOFormat(date) ? moment(date).format(dateFormat) : date;\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nconst onHidePicker = () => {\n datePickerVisible.value = false;\n unlockScrollBody();\n};\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nconst onShowPicker = () => {\n datePickerVisible.value = true;\n if (props.modelValue) {\n datePicker.selectDate(props.modelValue);\n datePicker.setViewDate(props.modelValue);\n } else {\n datePicker.clear();\n }\n lockScrollBody();\n};\nconst onAccept = () => {\n if (!mask.unmaskedValue) {\n emit('update:modelValue', '');\n }\n};\nconst onComplete = () => {\n const date = getInputMaskDate();\n return date ? emit('update:modelValue', date) : emit('update:modelValue', '');\n};\nconst onBlur = () => {\n const date = getInputMaskDate();\n validate();\n if (!checkIfModelNeedToSync(date)) {\n return;\n }\n emit('update:modelValue', date === undefined ? '' : date);\n};\nconst checkIfModelNeedToSync = (date: any) => {\n const ruleEngine = [\n !props.modelValue && date,\n !date && props.modelValue,\n props.modelValue && date && props.modelValue.getTime() !== date.getTime(),\n ];\n\n return ruleEngine.some((r) => r);\n};\nconst getInputMaskDate = () => {\n const arr = mask.value.split('/');\n const dateStr = `${arr[2]}-${arr[1]}-${arr[0]}`;\n // Check if string is in ISO format\n if (moment(dateStr, moment.ISO_8601, true).isValid()) {\n return new Date(dateStr);\n }\n\n return undefined;\n};\nconst toggleButtonCofirm = (enabled: boolean) => {\n const btnEl = document.querySelector(`.${id.value}-btn-confirm`);\n if (enabled) {\n btnEl?.removeAttribute('disabled');\n } else {\n btnEl?.setAttribute('disabled', '');\n }\n};\n\n/**\n * Lifecycle hooks\n */\nonMounted(() => {\n // Picker\n datePicker = new AirDatepicker<HTMLInputElement>(\n `#${id.value}Picker`,\n datePickerOptions.value,\n );\n // Input mask\n mask = IMask(inputMaskRef.value!, inputMaskOptions.value);\n mask.value = formatDate(props.modelValue);\n mask.on('accept', onAccept);\n mask.on('complete', onComplete);\n});\nonBeforeUnmount(() => {\n unlockScrollBody();\n});\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"div\", null, [\n _createVNode(BLabel, {\n id: id.value,\n label: _ctx.label,\n required: _ctx.required\n }, null, 8, [\"id\", \"label\", \"required\"]),\n _createElementVNode(\"div\", _hoisted_1, [\n _createElementVNode(\"input\", {\n id: id.value,\n ref_key: \"inputMaskRef\",\n ref: inputMaskRef,\n class: _normalizeClass([inputCssClassValue.value, \"ds-relative ds-z-[2] ds-drop-shadow-light\"]),\n disabled: _ctx.disabled,\n placeholder: _ctx.placeholder,\n onBlur: onBlur\n }, null, 42, _hoisted_2),\n _createElementVNode(\"input\", {\n id: `${id.value}Picker`,\n class: _normalizeClass([inputCssClassValue.value, \"ds-absolute ds-top-0 ds-z-[1]\"]),\n disabled: _ctx.disabled,\n readonly: \"\"\n }, null, 10, _hoisted_3),\n (_ctx.showHintToday && isToday.value)\n ? (_openBlock(), _createElementBlock(\"label\", {\n key: 0,\n for: id.value,\n class: \"ds-absolute ds-left-[98px] ds-top-2.5 ds-z-[3] ds-text-sm\"\n }, _toDisplayString(`(${_ctx.$t('ds.components.base.date_picker.today')})`), 9, _hoisted_4))\n : _createCommentVNode(\"\", true),\n _createElementVNode(\"label\", {\n for: `${id.value}Picker`,\n class: \"ds-absolute ds-right-3 ds-top-3 ds-z-[3]\"\n }, [\n (_openBlock(), _createElementBlock(\"svg\", {\n class: _normalizeClass([[\n props.disabled ? 'ds-fill-black/40' : 'ds-text-black/[0.85]',\n ], \"ds-h-4 ds-w-4\"]),\n viewBox: \"0 0 448 512\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, _hoisted_7, 2))\n ], 8, _hoisted_5)\n ]),\n (!_ctx.hideDetails)\n ? (_openBlock(), _createBlock(BErrorMessage, {\n key: 0,\n \"error-message\": _unref(validationResult).errorMessage(),\n class: \"ds-mt-1\"\n }, null, 8, [\"error-message\"]))\n : _createCommentVNode(\"\", true)\n ]))\n}\n}\n\n})"],"names":["_hoisted_1","_hoisted_2","_hoisted_3","_hoisted_4","_hoisted_5","_hoisted_6","_hoisted_7","_sfc_main","_defineComponent","BDatePickerView","__props","emit","props","t","locale","useI18n","dateFormat","DateDelimiter","currentDate","datePicker","mask","inputMaskRef","ref","validateRequired","val","selectedDate","id","computed","uuid","value","datePickerButtons","dp","nextTick","validate","datePickerOptions","datePickerLocale","onSelectDatePicker","date","toggleButtonCofirm","onHidePicker","onShowPicker","vRules","result","inputCssClassValue","validationResult","datePickerVisible","isToday","inputMaskOptions","IMask","moment","str","useValidationField","watch","checkIfModelNeedToSync","getInputMaskDate","formatDate","checkIfISOFormat","unlockScrollBody","lockScrollBody","onAccept","onComplete","onBlur","r","arr","dateStr","enabled","btnEl","onMounted","AirDatepicker","onBeforeUnmount","_ctx","_cache","_openBlock","_createElementBlock","_createVNode","BLabel","_createElementVNode","_normalizeClass","_toDisplayString","_createCommentVNode","_createBlock","BErrorMessage","_unref"],"mappings":"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"}
|
package/dist/design-system12.mjs
CHANGED
|
@@ -1,17 +1,19 @@
|
|
|
1
|
-
import { defineComponent as J, ref as
|
|
2
|
-
import
|
|
3
|
-
import
|
|
1
|
+
import { defineComponent as J, ref as V, computed as n, nextTick as $, watch as C, onMounted as K, onBeforeUnmount as Q, openBlock as b, createElementBlock as D, createVNode as W, createElementVNode as m, normalizeClass as w, toDisplayString as X, createCommentVNode as P, createBlock as Z, unref as ee } from "vue";
|
|
2
|
+
import i from "./design-system95.mjs";
|
|
3
|
+
import c from "./design-system92.mjs";
|
|
4
4
|
import { useI18n as se } from "./design-system48.mjs";
|
|
5
|
-
import te from "./design-
|
|
5
|
+
import te from "./design-system96.mjs";
|
|
6
6
|
import { useValidationField as ae } from "./design-system3.mjs";
|
|
7
|
-
import { DateDelimiter as
|
|
7
|
+
import { DateDelimiter as q } from "./design-system4.mjs";
|
|
8
8
|
import { BDatePickerView as oe } from "./design-system5.mjs";
|
|
9
|
-
import { unlockScrollBody as
|
|
9
|
+
import { unlockScrollBody as z, lockScrollBody as de } from "./design-system6.mjs";
|
|
10
10
|
import { checkIfISOFormat as ne } from "./design-system47.mjs";
|
|
11
11
|
import re from "./design-system30.mjs";
|
|
12
12
|
import le from "./design-system31.mjs";
|
|
13
|
-
import ie from "./design-
|
|
14
|
-
const ce = { class: "ds-relative" }, me = ["id", "disabled", "placeholder"], ue = ["id", "disabled"], pe = ["for"],
|
|
13
|
+
import ie from "./design-system94.mjs";
|
|
14
|
+
const ce = { class: "ds-relative" }, me = ["id", "disabled", "placeholder"], ue = ["id", "disabled"], pe = ["for"], be = ["for"], fe = /* @__PURE__ */ m("path", { d: "M96 32V64H48C21.5 64 0 85.5 0 112v48H448V112c0-26.5-21.5-48-48-48H352V32c0-17.7-14.3-32-32-32s-32 14.3-32 32V64H160V32c0-17.7-14.3-32-32-32S96 14.3 96 32zM448 192H0V464c0 26.5 21.5 48 48 48H400c26.5 0 48-21.5 48-48V192zM96 296c0-13.3 10.7-24 24-24H328c13.3 0 24 10.7 24 24s-10.7 24-24 24H120c-13.3 0-24-10.7-24-24zm24 72H232c13.3 0 24 10.7 24 24s-10.7 24-24 24H120c-13.3 0-24-10.7-24-24s10.7-24 24-24z" }, null, -1), ke = [
|
|
15
|
+
fe
|
|
16
|
+
], $e = /* @__PURE__ */ J({
|
|
15
17
|
__name: "BDatePicker",
|
|
16
18
|
props: {
|
|
17
19
|
inputId: { default: "" },
|
|
@@ -31,26 +33,26 @@ const ce = { class: "ds-relative" }, me = ["id", "disabled", "placeholder"], ue
|
|
|
31
33
|
position: { default: "bottom left" }
|
|
32
34
|
},
|
|
33
35
|
emits: ["update:modelValue"],
|
|
34
|
-
setup(
|
|
35
|
-
const t =
|
|
36
|
+
setup(R, { emit: l }) {
|
|
37
|
+
const t = R, { t: s, locale: Y } = se(), u = `DD${q}MM${q}YYYY`, f = /* @__PURE__ */ new Date();
|
|
36
38
|
let o, r;
|
|
37
|
-
const M =
|
|
39
|
+
const M = V(null), I = {
|
|
38
40
|
validateRule: (e) => !!e,
|
|
39
41
|
errorMessage: () => t.requiredErrorMessage || s("ds.global.field_required")
|
|
40
|
-
},
|
|
42
|
+
}, k = V(), d = n(() => t.inputId || `id-${ie()}`), x = n({
|
|
41
43
|
get() {
|
|
42
44
|
return t.modelValue;
|
|
43
45
|
},
|
|
44
46
|
set(e) {
|
|
45
47
|
l("update:modelValue", e);
|
|
46
48
|
}
|
|
47
|
-
}),
|
|
49
|
+
}), T = n(() => [
|
|
48
50
|
{
|
|
49
51
|
content: s("ds.components.base.date_picker.buttons.cancel"),
|
|
50
52
|
className: "ds-bg-transparent focus:ds-ring-1 focus:ds-ring-gray-300 ds-border-inner-primary-f !ds-text-primary-t hover:ds-bg-[#e6f0fe] ds-text-sm ds-leading-4 ds-px-4 ds-mx-1",
|
|
51
53
|
onClick: (e) => {
|
|
52
|
-
e.clear(),
|
|
53
|
-
|
|
54
|
+
e.clear(), $(() => {
|
|
55
|
+
_();
|
|
54
56
|
}), e.hide();
|
|
55
57
|
}
|
|
56
58
|
},
|
|
@@ -58,15 +60,15 @@ const ce = { class: "ds-relative" }, me = ["id", "disabled", "placeholder"], ue
|
|
|
58
60
|
content: s("ds.components.base.date_picker.buttons.confirm"),
|
|
59
61
|
className: `${d.value}-btn-confirm focus:ds-ring-1 focus:ds-ring-1 focus:ds-ring-blue-300 ds-bg-gradient-to-r ds-from-primary-f-stop ds-from-primary-f ds-to-primary-t !ds-text-white enabled:hover:ds-bg-[#0e4bbd] ds-text-sm ds-leading-4 ds-px-4 disabled:ds-from-[#e2e4e8] disabled:ds-to-[#e2e4e8] disabled:ds-text-black/[0.4] ds-mx-1`,
|
|
60
62
|
onClick: (e) => {
|
|
61
|
-
|
|
62
|
-
|
|
63
|
+
x.value = k.value !== void 0 ? k.value : "", $(() => {
|
|
64
|
+
_();
|
|
63
65
|
}), e.hide();
|
|
64
66
|
},
|
|
65
67
|
attrs: t.required ? {
|
|
66
68
|
disabled: ""
|
|
67
69
|
} : void 0
|
|
68
70
|
}
|
|
69
|
-
]),
|
|
71
|
+
]), B = n(() => {
|
|
70
72
|
const e = {
|
|
71
73
|
days: [
|
|
72
74
|
s("ds.components.base.date_picker.days.sunday"),
|
|
@@ -132,13 +134,13 @@ const ce = { class: "ds-relative" }, me = ["id", "disabled", "placeholder"], ue
|
|
|
132
134
|
}, a = ({
|
|
133
135
|
date: p
|
|
134
136
|
}) => {
|
|
135
|
-
|
|
137
|
+
k.value = p, t.required && G(!!p);
|
|
136
138
|
};
|
|
137
139
|
return {
|
|
138
140
|
locale: e,
|
|
139
141
|
selectedDates: [t.modelValue],
|
|
140
142
|
onSelect: a,
|
|
141
|
-
buttons: [...
|
|
143
|
+
buttons: [...T.value],
|
|
142
144
|
showOtherMonths: !1,
|
|
143
145
|
timepicker: !1,
|
|
144
146
|
onlyTimepicker: !1,
|
|
@@ -150,89 +152,97 @@ const ce = { class: "ds-relative" }, me = ["id", "disabled", "placeholder"], ue
|
|
|
150
152
|
navTitles: {
|
|
151
153
|
days: "MMMM yyyy"
|
|
152
154
|
},
|
|
153
|
-
position: t.position
|
|
155
|
+
position: t.position,
|
|
156
|
+
prevHtml: `<svg xmlns="http://www.w3.org/2000/svg"
|
|
157
|
+
viewBox="0 0 320 512">
|
|
158
|
+
<path d="M9.4 233.4c-12.5 12.5-12.5 32.8 0 45.3l192 192c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L77.3 256 246.6 86.6c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0l-192 192z"/>
|
|
159
|
+
</svg>`,
|
|
160
|
+
nextHtml: `<svg xmlns="http://www.w3.org/2000/svg"
|
|
161
|
+
viewBox="0 0 320 512">
|
|
162
|
+
<path d="M310.6 233.4c12.5 12.5 12.5 32.8 0 45.3l-192 192c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3L242.7 256 73.4 86.6c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0l192 192z"/>
|
|
163
|
+
</svg>`
|
|
154
164
|
};
|
|
155
|
-
}),
|
|
165
|
+
}), F = n(() => {
|
|
156
166
|
let e = [];
|
|
157
|
-
return t.required && e.push(
|
|
158
|
-
}),
|
|
167
|
+
return t.required && e.push(I), t.validationRules && (e = e.concat(t.validationRules)), e.length ? e : void 0;
|
|
168
|
+
}), H = n(() => [
|
|
159
169
|
"ds-border ds-rounded-lg ds-block ds-w-full ds-text-sm ds-px-3 ds-h-[40px]",
|
|
160
170
|
{
|
|
161
171
|
"ds-cursor-not-allowed ds-bg-[#f2f2f2] ds-text-black/[0.4]": t.disabled,
|
|
162
172
|
"ds-text-black/[0.85]": !t.disabled,
|
|
163
|
-
"ds-border-error focus:ds-ring-1 focus:ds-ring-error": !
|
|
164
|
-
"ds-border-black/[0.1] focus:ds-border-focus focus:ds-ring-1 focus:ds-ring-focus":
|
|
165
|
-
"!ds-border-focus ds-ring-1 ds-ring-focus":
|
|
173
|
+
"ds-border-error focus:ds-ring-1 focus:ds-ring-error": !y.value.valid,
|
|
174
|
+
"ds-border-black/[0.1] focus:ds-border-focus focus:ds-ring-1 focus:ds-ring-focus": y.value.valid,
|
|
175
|
+
"!ds-border-focus ds-ring-1 ds-ring-focus": h.value
|
|
166
176
|
},
|
|
167
177
|
t.inputCssClass
|
|
168
|
-
]),
|
|
178
|
+
]), j = n(() => t.modelValue ? f.getDate() === t.modelValue.getDate() && f.getMonth() === t.modelValue.getMonth() && f.getFullYear() === t.modelValue.getFullYear() : !1), N = n(() => {
|
|
169
179
|
const e = {
|
|
170
|
-
mask:
|
|
180
|
+
mask: i.MaskedDate,
|
|
171
181
|
pattern: u,
|
|
172
182
|
lazy: !0,
|
|
173
|
-
format: (a) =>
|
|
174
|
-
parse: (a) =>
|
|
183
|
+
format: (a) => c(a).format(u),
|
|
184
|
+
parse: (a) => c(a, u),
|
|
175
185
|
blocks: {
|
|
176
186
|
YYYY: {
|
|
177
|
-
mask:
|
|
187
|
+
mask: i.MaskedRange,
|
|
178
188
|
from: 1,
|
|
179
189
|
to: 9999
|
|
180
190
|
},
|
|
181
191
|
MM: {
|
|
182
|
-
mask:
|
|
192
|
+
mask: i.MaskedRange,
|
|
183
193
|
from: 1,
|
|
184
194
|
to: 12
|
|
185
195
|
},
|
|
186
196
|
DD: {
|
|
187
|
-
mask:
|
|
197
|
+
mask: i.MaskedRange,
|
|
188
198
|
from: 1,
|
|
189
199
|
to: 31
|
|
190
200
|
}
|
|
191
201
|
}
|
|
192
202
|
};
|
|
193
203
|
return t.minDate && (e.min = t.minDate), t.maxDate && (e.max = t.maxDate), e;
|
|
194
|
-
}),
|
|
204
|
+
}), h = V(!1), { validate: _, validationResult: y } = ae(
|
|
195
205
|
d.value,
|
|
196
|
-
|
|
197
|
-
|
|
206
|
+
x,
|
|
207
|
+
F.value
|
|
198
208
|
);
|
|
199
209
|
C(
|
|
200
210
|
() => t.modelValue,
|
|
201
211
|
() => {
|
|
202
|
-
|
|
212
|
+
v(o.selectedDates[0]) && (t.modelValue ? (o.selectDate(t.modelValue), o.setViewDate(t.modelValue)) : o.clear()), v(g()) && (r.value = S(t.modelValue));
|
|
203
213
|
},
|
|
204
214
|
{ deep: !0 }
|
|
205
215
|
), C(
|
|
206
216
|
[
|
|
207
|
-
|
|
217
|
+
Y,
|
|
208
218
|
() => t.position,
|
|
209
219
|
() => t.minDate,
|
|
210
220
|
() => t.maxDate,
|
|
211
221
|
() => t.view
|
|
212
222
|
],
|
|
213
223
|
() => {
|
|
214
|
-
o.update(
|
|
224
|
+
o.update(B.value);
|
|
215
225
|
}
|
|
216
226
|
);
|
|
217
|
-
const
|
|
218
|
-
|
|
227
|
+
const S = (e) => ne(e) ? c(e).format(u) : e, O = () => {
|
|
228
|
+
h.value = !1, z();
|
|
219
229
|
}, A = () => {
|
|
220
|
-
|
|
230
|
+
h.value = !0, t.modelValue ? (o.selectDate(t.modelValue), o.setViewDate(t.modelValue)) : o.clear(), de();
|
|
221
231
|
}, E = () => {
|
|
222
232
|
r.unmaskedValue || l("update:modelValue", "");
|
|
223
233
|
}, L = () => {
|
|
224
|
-
const e =
|
|
234
|
+
const e = g();
|
|
225
235
|
return e ? l("update:modelValue", e) : l("update:modelValue", "");
|
|
226
236
|
}, U = () => {
|
|
227
|
-
const e =
|
|
228
|
-
|
|
229
|
-
},
|
|
237
|
+
const e = g();
|
|
238
|
+
_(), v(e) && l("update:modelValue", e === void 0 ? "" : e);
|
|
239
|
+
}, v = (e) => [
|
|
230
240
|
!t.modelValue && e,
|
|
231
241
|
!e && t.modelValue,
|
|
232
242
|
t.modelValue && e && t.modelValue.getTime() !== e.getTime()
|
|
233
|
-
].some((p) => p),
|
|
243
|
+
].some((p) => p), g = () => {
|
|
234
244
|
const e = r.value.split("/"), a = `${e[2]}-${e[1]}-${e[0]}`;
|
|
235
|
-
if (
|
|
245
|
+
if (c(a, c.ISO_8601, !0).isValid())
|
|
236
246
|
return new Date(a);
|
|
237
247
|
}, G = (e) => {
|
|
238
248
|
const a = document.querySelector(`.${d.value}-btn-confirm`);
|
|
@@ -241,53 +251,54 @@ const ce = { class: "ds-relative" }, me = ["id", "disabled", "placeholder"], ue
|
|
|
241
251
|
return K(() => {
|
|
242
252
|
o = new te(
|
|
243
253
|
`#${d.value}Picker`,
|
|
244
|
-
|
|
245
|
-
), r =
|
|
254
|
+
B.value
|
|
255
|
+
), r = i(M.value, N.value), r.value = S(t.modelValue), r.on("accept", E), r.on("complete", L);
|
|
246
256
|
}), Q(() => {
|
|
247
|
-
|
|
248
|
-
}), (e, a) => (
|
|
257
|
+
z();
|
|
258
|
+
}), (e, a) => (b(), D("div", null, [
|
|
249
259
|
W(le, {
|
|
250
260
|
id: d.value,
|
|
251
261
|
label: e.label,
|
|
252
262
|
required: e.required
|
|
253
263
|
}, null, 8, ["id", "label", "required"]),
|
|
254
|
-
|
|
255
|
-
|
|
264
|
+
m("div", ce, [
|
|
265
|
+
m("input", {
|
|
256
266
|
id: d.value,
|
|
257
267
|
ref_key: "inputMaskRef",
|
|
258
268
|
ref: M,
|
|
259
|
-
class:
|
|
269
|
+
class: w([H.value, "ds-relative ds-z-[2] ds-drop-shadow-light"]),
|
|
260
270
|
disabled: e.disabled,
|
|
261
271
|
placeholder: e.placeholder,
|
|
262
272
|
onBlur: U
|
|
263
273
|
}, null, 42, me),
|
|
264
|
-
|
|
274
|
+
m("input", {
|
|
265
275
|
id: `${d.value}Picker`,
|
|
266
|
-
class:
|
|
276
|
+
class: w([H.value, "ds-absolute ds-top-0 ds-z-[1]"]),
|
|
267
277
|
disabled: e.disabled,
|
|
268
278
|
readonly: ""
|
|
269
279
|
}, null, 10, ue),
|
|
270
|
-
e.showHintToday &&
|
|
280
|
+
e.showHintToday && j.value ? (b(), D("label", {
|
|
271
281
|
key: 0,
|
|
272
282
|
for: d.value,
|
|
273
283
|
class: "ds-absolute ds-left-[98px] ds-top-2.5 ds-z-[3] ds-text-sm"
|
|
274
|
-
}, X(`(${e.$t("ds.components.base.date_picker.today")})`), 9, pe)) :
|
|
275
|
-
|
|
284
|
+
}, X(`(${e.$t("ds.components.base.date_picker.today")})`), 9, pe)) : P("", !0),
|
|
285
|
+
m("label", {
|
|
276
286
|
for: `${d.value}Picker`,
|
|
277
|
-
class: "ds-absolute ds-right-3 ds-top-
|
|
287
|
+
class: "ds-absolute ds-right-3 ds-top-3 ds-z-[3]"
|
|
278
288
|
}, [
|
|
279
|
-
|
|
280
|
-
class:
|
|
281
|
-
t.disabled ? "ds-
|
|
282
|
-
], "
|
|
283
|
-
|
|
284
|
-
|
|
289
|
+
(b(), D("svg", {
|
|
290
|
+
class: w([[
|
|
291
|
+
t.disabled ? "ds-fill-black/40" : "ds-text-black/[0.85]"
|
|
292
|
+
], "ds-h-4 ds-w-4"]),
|
|
293
|
+
viewBox: "0 0 448 512",
|
|
294
|
+
xmlns: "http://www.w3.org/2000/svg"
|
|
295
|
+
}, ke, 2))
|
|
296
|
+
], 8, be)
|
|
285
297
|
]),
|
|
286
|
-
e.hideDetails ?
|
|
298
|
+
e.hideDetails ? P("", !0) : (b(), Z(re, {
|
|
287
299
|
key: 0,
|
|
288
|
-
"error-message": ee(
|
|
289
|
-
class: "ds-mt-1"
|
|
290
|
-
"prepend-icon": "fa-solid fa-circle-exclamation"
|
|
300
|
+
"error-message": ee(y).errorMessage(),
|
|
301
|
+
class: "ds-mt-1"
|
|
291
302
|
}, null, 8, ["error-message"]))
|
|
292
303
|
]));
|
|
293
304
|
}
|