{"version":3,"sources":["webpack:///./src/@core/utils/filter.js","webpack:///./src/@core/comp-functions/forms/form-validation.js","webpack:///./src/@core/components/b-card-actions/BCardActions.vue?6783","webpack:///./src/@core/utils/validations/validators.js","webpack:///./src/@core/utils/validations/validations.js","webpack:///./src/@core/utils/utils.js","webpack:///./src/@core/components/b-card-actions/BCardActions.vue?bbe6","webpack:///./src/@core/components/b-card-actions/BCardActionsContainer.vue?52e2","webpack:///src/@core/components/b-card-actions/BCardActionsContainer.vue","webpack:///./src/@core/components/b-card-actions/BCardActionsContainer.vue?eedb","webpack:///./src/@core/components/b-card-actions/BCardActionsContainer.vue","webpack:///src/@core/components/b-card-actions/BCardActions.vue","webpack:///./src/@core/components/b-card-actions/BCardActions.vue?6e2b","webpack:///./src/@core/components/b-card-actions/BCardActions.vue?9594"],"names":["title","value","replacer","str","toString","arr","split","capitalizedArray","forEach","word","capitalized","charAt","toUpperCase","slice","push","join","avatarText","nameArray","map","formValidation","resetFormData","clearFormData","refFormObserver","ref","resetObserver","reset","getValidationState","dirty","validated","fieldRequired","required","changed","valid","result","resetForm","nextTick","clearForm","validatorPositive","validatorPassword","password","regExp","validPassword","test","validatorCreditCard","creditnum","cRegExp","validCreditCard","validatorUrlValidator","val","undefined","length","re","extend","rule_required","email","rule_email","alphaNum","rule_min","rule_confirmed","rule_regex","rule_between","rule_alpha","rule_integer","rule_digits","rule_alpha_dash","rule_alpha_num","rule_length","validate","message","localize","en","messages","names","fields","min","ar","tr","isObject","obj","isToday","date","today","Date","getDate","getMonth","getFullYear","useRouter","vm","getCurrentInstance","proxy","state","reactive","route","$route","watch","r","toRefs","router","$router","render","_vm","this","_h","$createElement","_c","_self","cardClosed","_e","attrs","showLoading","_g","_b","style","content_visible","parentID","cardAttrs","$listeners","staticClass","_v","_s","$attrs","availableActions","on","triggerCollapse","triggerRefresh","triggerClose","model","callback","$$v","expression","_t","staticRenderFns","includes","class","rotate","isCollapsed","$event","$emit","props","type","Boolean","requried","Array","default","component","components","BCardActionsContainer","BCard","BCardTitle","BCardSubTitle","BCardBody","BCollapse","BOverlay","inheritAttrs","collapsed","noActions","actionCollapse","actionRefresh","actionClose","data","cardStyles","computed","showHeader","showActions","allFalse","actions","created","String","Math","floor","random","methods","removeCard","$set","setTimeout"],"mappings":"0UAKaA,EAAQ,SAACC,GAA0B,IAAnBC,EAAmB,uDAAR,IACtC,IAAKD,EAAO,MAAO,GACnB,IAAME,EAAMF,EAAMG,WAEZC,EAAMF,EAAIG,MAAMJ,GAChBK,EAAmB,GAKzB,OAJAF,EAAIG,SAAQ,SAACC,GACX,IAAMC,EAAcD,EAAKE,OAAO,GAAGC,cAAgBH,EAAKI,MAAM,GAC9DN,EAAiBO,KAAKJ,MAEjBH,EAAiBQ,KAAK,MAGlBC,EAAa,SAACf,GACzB,IAAKA,EAAO,MAAO,GACnB,IAAMgB,EAAYhB,EAAMK,MAAM,KAC9B,OAAOW,EAAUC,KAAI,SAACT,GAAD,OAAUA,EAAKE,OAAO,GAAGC,iBAAeG,KAAK,M,oCCrBpE,kDAMe,SAASI,EACtBC,GAEA,IADAC,EACA,uDADgB,aAOVC,EAAkBC,iBAAI,MAOtBC,EAAgB,WACpBF,EAAgBrB,MAAMwB,SASlBC,EAAqB,SAAC,GAMtB,IALJC,EAKI,EALJA,MACAC,EAII,EAJJA,UACUC,EAGN,EAHJC,SACAC,EAEI,EAFJA,QAEI,IADJC,aACI,MADI,KACJ,EACEC,EAASN,GAASC,EAAYI,EAAQ,KAC5C,OAAQH,GAAkBE,EAAiBE,EAAP,MAQhCC,EAAY,WAChBd,IACAe,uBAAS,WACPX,QASEY,EAAY,WAChBf,IACAc,uBAAS,WACPX,QAIJ,MAAO,CACLF,kBACAE,gBACAE,qBACAQ,YACAE,e,kCCxEJ,W,0MCAaC,EAAoB,SAACpC,GAChC,OAAIA,GAAS,GAMFqC,EAAoB,SAACC,GAEhC,IAAMC,EAAS,uDAETC,EAAgBD,EAAOE,KAAKH,GAClC,OAAOE,GAGIE,EAAsB,SAACC,GAElC,IAAMC,EAAU,uBAEVC,EAAkBD,EAAQH,KAAKE,GACrC,OAAOE,GAGIC,EAAwB,SAACC,GACpC,QAAYC,IAARD,GAA6B,OAARA,GAA+B,IAAfA,EAAIE,OAC3C,OAAO,EAGT,IAAMC,EACJ,4EAEF,OAAOA,EAAGT,KAAKM,ICAJlB,EAAWsB,eAAO,WAAYC,QAE9BC,EAAQF,eAAO,QAASG,QAkBxBC,GAhBMJ,eAAO,MAAOK,QAERL,eAAO,YAAaM,QAExBN,eAAO,QAASO,QAEdP,eAAO,UAAWQ,QAEpBR,eAAO,QAASS,QAEdT,eAAO,UAAWU,QAEnBV,eAAO,SAAUW,QAEdX,eAAO,aAAcY,QAEtBZ,eAAO,YAAaa,SAEtBb,eAAO,SAAUc,QAEfd,eAAO,WAAY,CACzCe,SAAU9B,EACV+B,QAAS,kCAGWhB,eAAO,cAAe,CAC1Ce,SAAUxB,EACVyB,QAAS,iCAGahB,eAAO,WAAY,CACzCe,SAAU7B,EACV8B,QACE,2GAGehB,eAAO,MAAO,CAC/Be,SAAUpB,EACVqB,QAAS,mBAIXC,eAAS,CACPC,GAAI,CACFC,SAAUD,EAAGC,SACbC,MAAO,CACLlB,MAAO,QACPf,SAAU,YAEZkC,OAAQ,CACNlC,SAAU,CACRmC,IAAK,qDAIXC,GAAI,CACFJ,SAAUI,EAAGJ,SACbC,MAAO,CACLlB,MAAO,oBACPf,SAAU,aAEZkC,OAAQ,CACNlC,SAAU,CACRmC,IAAK,uCAIXE,GAAI,CACFL,SAAUK,EAAGL,SACbC,MAAO,CACLlB,MAAO,QACPf,SAAU,SAEZkC,OAAQ,CACNlC,SAAU,CACRmC,IAAK,gE,4LCrGAG,EAAW,SAACC,GAAD,MAAwB,WAAf,eAAOA,IAA4B,OAARA,GAE/CC,EAAU,SAACC,GACtB,IAAMC,EAAQ,IAAIC,KAClB,OAEEF,EAAKG,YAAcF,EAAME,WACzBH,EAAKI,aAAeH,EAAMG,YAC1BJ,EAAKK,gBAAkBJ,EAAMI,eAkBpBC,EAAY,WACvB,IAAMC,EAAKC,kCAAqBC,MAC1BC,EAAQC,sBAAS,CACrBC,MAAOL,EAAGM,SAUZ,OAPAC,oBACE,kBAAMP,EAAGM,UACT,SAACE,GACCL,EAAME,MAAQG,KAIlB,iCAAYC,oBAAON,IAAnB,IAA2BO,OAAQV,EAAGW,Y,yDChDxC,IAAIC,EAAS,WAAa,IAAIC,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAASF,EAAIM,WAAipCN,EAAIO,KAAzoCH,EAAG,YAAY,CAACI,MAAM,CAAC,QAAU,QAAQ,KAAOR,EAAIS,YAAY,kBAAkB,UAAU,KAAO,IAAI,QAAU,MAAM,QAAU,OAAO,CAACL,EAAG,SAASJ,EAAIU,GAAGV,EAAIW,GAAG,CAACxF,IAAI,QAAQyF,MAAOZ,EAAc,WAAEQ,MAAM,CAAC,UAAU,GAAG,gBAAiBR,EAAIa,gBAA2B,QAAT,OAAiB,gBAAgBb,EAAIc,WAAW,SAASd,EAAIe,WAAU,GAAOf,EAAIgB,YAAY,CAAEhB,EAAc,WAAEI,EAAG,MAAM,CAACa,YAAY,eAAe,CAACb,EAAG,MAAM,CAACA,EAAG,eAAe,CAACJ,EAAIkB,GAAGlB,EAAImB,GAAGnB,EAAIoB,OAAOxH,UAAWoG,EAAIoB,OAAO,aAAchB,EAAG,mBAAmB,CAACJ,EAAIkB,GAAG,IAAIlB,EAAImB,GAAGnB,EAAIoB,OAAO,cAAc,OAAOpB,EAAIO,MAAM,GAAIP,EAAe,YAAEI,EAAG,2BAA2B,CAACI,MAAM,CAAC,oBAAoBR,EAAIqB,iBAAiB,gBAAgBrB,EAAIa,iBAAiBS,GAAG,CAAC,SAAWtB,EAAIuB,gBAAgB,QAAUvB,EAAIwB,eAAe,MAAQxB,EAAIyB,gBAAgBzB,EAAIO,MAAM,GAAGP,EAAIO,KAAKH,EAAG,aAAa,CAACa,YAAY,eAAeT,MAAM,CAAC,GAAKR,EAAIc,SAAS,QAAUd,EAAIa,iBAAiBa,MAAM,CAAC7H,MAAOmG,EAAmB,gBAAE2B,SAAS,SAAUC,GAAM5B,EAAIa,gBAAgBe,GAAKC,WAAW,oBAAoB,MAA4BhF,IAA1BmD,EAAIoB,OAAO,WAA0BpB,EAAI8B,GAAG,WAAW1B,EAAG,cAAc,CAACJ,EAAI8B,GAAG,YAAY,IAAI,IAAI,IAAI,IAChvCC,EAAkB,G,wECDlB,EAAS,WAAa,IAAI/B,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,MAAM,CAACa,YAAY,oBAAoB,CAACb,EAAG,KAAK,CAACa,YAAY,oBAAoB,CAAEjB,EAAIqB,iBAAiBW,SAAS,YAAa5B,EAAG,KAAK,CAACA,EAAG,IAAI,CAAC6B,MAAM,CAAEC,OAAQlC,EAAImC,aAAc3B,MAAM,CAAC,cAAc,YAAYc,GAAG,CAAC,MAAQ,SAASc,GAAQ,OAAOpC,EAAIqC,MAAM,eAAe,CAACjC,EAAG,eAAe,CAACI,MAAM,CAAC,KAAO,kBAAkB,KAAO,SAAS,KAAKR,EAAIO,KAAMP,EAAIqB,iBAAiBW,SAAS,WAAY5B,EAAG,KAAK,CAACA,EAAG,IAAI,CAACI,MAAM,CAAC,cAAc,UAAUc,GAAG,CAAC,MAAQ,SAASc,GAAQ,OAAOpC,EAAIqC,MAAM,cAAc,CAACjC,EAAG,eAAe,CAACI,MAAM,CAAC,KAAO,eAAe,KAAO,SAAS,KAAKR,EAAIO,KAAMP,EAAIqB,iBAAiBW,SAAS,SAAU5B,EAAG,KAAK,CAACA,EAAG,IAAI,CAACI,MAAM,CAAC,cAAc,SAASc,GAAG,CAAC,MAAQ,SAASc,GAAQ,OAAOpC,EAAIqC,MAAM,YAAY,CAACjC,EAAG,eAAe,CAACI,MAAM,CAAC,KAAO,QAAQ,KAAO,SAAS,KAAKR,EAAIO,UAC33B,EAAkB,GC0BtB,GACE+B,MAAO,CACLH,YAAa,CACXI,KAAMC,QACNC,UAAU,GAEZpB,iBAAkB,CAChBkB,KAAMG,MACNC,QAAS,WAAf,aCnC6X,I,YCOzXC,EAAY,eACd,EACA,EACA,GACA,EACA,KACA,KACA,MAIa,EAAAA,E,QCiDf,GACEC,WAAY,CACVC,sBAAJ,EACIC,MAAJ,OACIC,WAAJ,OACIC,cAAJ,OACIC,UAAJ,OACIC,UAAJ,OACIC,SAAJ,QAEEC,cAAc,EACdf,MAAO,CACLgB,UAAW,CACTf,KAAMC,QACNG,SAAS,GAEXY,UAAW,CACThB,KAAMC,QACNG,SAAS,GAEXa,eAAgB,CACdjB,KAAMC,QACNG,SAAS,GAEXc,cAAe,CACblB,KAAMC,QACNG,SAAS,GAEXe,YAAa,CACXnB,KAAMC,QACNG,SAAS,IAGbgB,KAjCF,WAkCI,MAAO,CACL7C,SAAU,GACVD,iBAAkBZ,KAAKqD,UACvB7C,aAAa,EACbH,YAAY,EACZsD,WAAY,KAGhBC,SAAU,CACR9C,UADJ,WAEM,IAAN,0CAGM,cAFOA,EAAUnH,aACVmH,EAAU,aACVA,GAET+C,WAPJ,WAQM,OAAO7D,KAAKmB,OAAOxH,OAASqG,KAAKmB,OAAO,eAAiBnB,KAAKsD,WAEhEQ,YAVJ,WAWM,OAAI9D,KAAKsD,WAGXlC,iBAdJ,WAeM,IAAN,KACA,GAEA,KADA,2DAMM,OAHIpB,KAAKuD,gBAAkBQ,IAAUC,EAAQvJ,KAAK,aAC9CuF,KAAKwD,eAAiBO,IAAUC,EAAQvJ,KAAK,YAC7CuF,KAAKyD,aAAeM,IAAUC,EAAQvJ,KAAK,SACxCuJ,IAGXC,QApEF,WAqEIjE,KAAKa,SAAWqD,OAAOC,KAAKC,MAAsB,GAAhBD,KAAKE,UAAiB,IAE1DC,QAAS,CACPC,WADJ,WACA,WACMvE,KAAKwE,KACX,gBACA,YAFA,UAGA,8BAHA,OAKMC,YAAW,WACT,EAAR,qCACQ,EAAR,yCAEA,KAEInD,gBAbJ,WAcMtB,KAAKY,iBAAmBZ,KAAKY,gBAC7BZ,KAAKoC,MAAM,aAEbb,eAjBJ,WAkBMvB,KAAKQ,aAAc,EACnBR,KAAKoC,MAAM,YAEbZ,aArBJ,WAsBMxB,KAAKuE,aACLvE,KAAKoC,MAAM,YCjKmW,ICQhX,G,UAAY,eACd,EACAtC,EACAgC,GACA,EACA,KACA,WACA,OAIa,S","file":"js/chunk-4c18fbd0.cb5be59d.js","sourcesContent":["import { isToday } from \"./utils\";\n\nexport const kFormatter = (num) =>\n num > 999 ? `${(num / 1000).toFixed(1)}k` : num;\n\nexport const title = (value, replacer = \" \") => {\n if (!value) return \"\";\n const str = value.toString();\n\n const arr = str.split(replacer);\n const capitalizedArray = [];\n arr.forEach((word) => {\n const capitalized = word.charAt(0).toUpperCase() + word.slice(1);\n capitalizedArray.push(capitalized);\n });\n return capitalizedArray.join(\" \");\n};\n\nexport const avatarText = (value) => {\n if (!value) return \"\";\n const nameArray = value.split(\" \");\n return nameArray.map((word) => word.charAt(0).toUpperCase()).join(\"\");\n};\n\n/**\n * Format and return date in Humanize format\n * Intl docs: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/format\n * Intl Constructor: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/DateTimeFormat\n * @param {String} value date to format\n * @param {Object} formatting Intl object to format with\n */\nexport const formatDate = (\n value,\n formatting = { month: \"short\", day: \"numeric\", year: \"numeric\" }\n) => {\n if (!value) return value;\n return new Intl.DateTimeFormat(\"en-US\", formatting).format(new Date(value));\n};\n\n/**\n * Return short human friendly month representation of date\n * Can also convert date to only time if date is of today (Better UX)\n * @param {String} value date to format\n * @param {Boolean} toTimeForCurrentDay Shall convert to time if day is today/current\n */\nexport const formatDateToMonthShort = (value, toTimeForCurrentDay = true) => {\n const date = new Date(value);\n let formatting = { month: \"short\", day: \"numeric\" };\n\n if (toTimeForCurrentDay && isToday(date)) {\n formatting = { hour: \"numeric\", minute: \"numeric\" };\n }\n\n return new Intl.DateTimeFormat(\"en-US\", formatting).format(new Date(value));\n};\n\n// Strip all the tags from markup and return plain text\nexport const filterTags = (value) => value.replace(/<\\/?[^>]+(>|$)/g, \"\");\n","import { ref, nextTick } from \"@vue/composition-api\";\n\n// ===========================================================\n// ! This is coupled with \"veeValidate\" plugin\n// ===========================================================\n\nexport default function formValidation(\n resetFormData,\n clearFormData = () => {}\n) {\n // ------------------------------------------------\n // refFormObserver\n // ! This is for veeValidate Observer\n // * Used for veeValidate form observer\n // ------------------------------------------------\n const refFormObserver = ref(null);\n\n // ------------------------------------------------\n // resetObserver\n // ! This function is coupled with veeValidate\n // * It resets form observer\n // ------------------------------------------------\n const resetObserver = () => {\n refFormObserver.value.reset();\n };\n\n // ------------------------------------------------\n // getValidationState\n // ! This function is coupled with veeValidate\n // * It returns true/false based on validation\n // ------------------------------------------------\n // eslint-disable-next-line object-curly-newline\n const getValidationState = ({\n dirty,\n validated,\n required: fieldRequired,\n changed,\n valid = null,\n }) => {\n const result = dirty || validated ? valid : null;\n return !fieldRequired && !changed ? null : result;\n };\n\n // ------------------------------------------------\n // resetForm\n // ! This function is coupled with veeValidate\n // * This uses resetFormData arg to reset form data\n // ------------------------------------------------\n const resetForm = () => {\n resetFormData();\n nextTick(() => {\n resetObserver();\n });\n };\n\n // ------------------------------------------------\n // clearForm\n // ! This function is coupled with veeValidate\n // * This uses clearFormData arg to reset form data\n // ------------------------------------------------\n const clearForm = () => {\n clearFormData();\n nextTick(() => {\n resetObserver();\n });\n };\n\n return {\n refFormObserver,\n resetObserver,\n getValidationState,\n resetForm,\n clearForm,\n };\n}\n","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BCardActions.vue?vue&type=style&index=0&id=3ffebf2d&lang=scss&scoped=true&\"","export const validatorPositive = (value) => {\n if (value >= 0) {\n return true;\n }\n return false;\n};\n\nexport const validatorPassword = (password) => {\n /* eslint-disable no-useless-escape */\n const regExp = /(?=.*\\d)(?=.*[a-z])(?=.*[A-Z])(?=.*[!@#$%&*()]).{8,}/;\n /* eslint-enable no-useless-escape */\n const validPassword = regExp.test(password);\n return validPassword;\n};\n\nexport const validatorCreditCard = (creditnum) => {\n /* eslint-disable no-useless-escape */\n const cRegExp = /^(?:3[47][0-9]{13})$/;\n /* eslint-enable no-useless-escape */\n const validCreditCard = cRegExp.test(creditnum);\n return validCreditCard;\n};\n\nexport const validatorUrlValidator = (val) => {\n if (val === undefined || val === null || val.length === 0) {\n return true;\n }\n /* eslint-disable no-useless-escape */\n const re =\n /^(http[s]?:\\/\\/){0,1}(www\\.){0,1}[a-zA-Z0-9\\.\\-]+\\.[a-zA-Z]{2,5}[\\.]{0,1}/;\n /* eslint-enable no-useless-escape */\n return re.test(val);\n};\n","import { extend, localize } from \"vee-validate\";\nimport {\n required as rule_required,\n email as rule_email,\n min as rule_min,\n confirmed as rule_confirmed,\n regex as rule_regex,\n between as rule_between,\n alpha as rule_alpha,\n integer as rule_integer,\n digits as rule_digits,\n alpha_dash as rule_alpha_dash,\n alpha_num as rule_alpha_num,\n length as rule_length,\n} from \"vee-validate/dist/rules\";\nimport ar from \"vee-validate/dist/locale/ar.json\";\nimport en from \"vee-validate/dist/locale/en.json\";\nimport tr from \"vee-validate/dist/locale/tr.json\";\n\n// eslint-disable-next-line object-curly-newline\nimport {\n validatorPositive,\n validatorUrlValidator,\n validatorPassword,\n validatorCreditCard,\n} from \"./validators\";\n\n// ////////////////////////////////////////////////////////\n// General\n// ////////////////////////////////////////////////////////\n\nexport const required = extend(\"required\", rule_required);\n\nexport const email = extend(\"email\", rule_email);\n\nexport const min = extend(\"min\", rule_min);\n\nexport const confirmed = extend(\"confirmed\", rule_confirmed);\n\nexport const regex = extend(\"regex\", rule_regex);\n\nexport const between = extend(\"between\", rule_between);\n\nexport const alpha = extend(\"alpha\", rule_alpha);\n\nexport const integer = extend(\"integer\", rule_integer);\n\nexport const digits = extend(\"digits\", rule_digits);\n\nexport const alphaDash = extend(\"alpha-dash\", rule_alpha_dash);\n\nexport const alphaNum = extend(\"alpha-num\", rule_alpha_num);\n\nexport const length = extend(\"length\", rule_length);\n\nexport const positive = extend(\"positive\", {\n validate: validatorPositive,\n message: \"Please enter positive number!\",\n});\n\nexport const credit = extend(\"credit-card\", {\n validate: validatorCreditCard,\n message: \"It is not valid credit card!\",\n});\n\nexport const password = extend(\"password\", {\n validate: validatorPassword,\n message:\n \"Your {_field_} must contain at least one uppercase, one lowercase, one special character and one digit\",\n});\n\nexport const url = extend(\"url\", {\n validate: validatorUrlValidator,\n message: \"URL is invalid\",\n});\n\n// Install English and Arabic localizations.\nlocalize({\n en: {\n messages: en.messages,\n names: {\n email: \"Email\",\n password: \"Password\",\n },\n fields: {\n password: {\n min: \"{_field_} is too short, you want to get hacked?\",\n },\n },\n },\n ar: {\n messages: ar.messages,\n names: {\n email: \"البريد الإلكتروني\",\n password: \"كلمة السر\",\n },\n fields: {\n password: {\n min: \"كلمة السر قصيرة جداً سيتم اختراقك\",\n },\n },\n },\n tr: {\n messages: tr.messages,\n names: {\n email: \"Email\",\n password: \"Şifre\",\n },\n fields: {\n password: {\n min: \"{_field_} çok kısa, lütfen daha uzun bir şifre giriniz.\",\n },\n },\n },\n});\n// ////////////////////////////////////////////////////////\n// NOTE:\n// Quasar validation for reference only\n// Remove this note once development is finished and make sure to\n// to convert all of them in veevalidate version\n// ////////////////////////////////////////////////////////\n\n// export const required = (val) => {\n// return (val && val.length > 0) || '*Field is required'\n// }\n\n// export const required_obj = (obj) => {\n// if (obj === null || obj === undefined) return '*Field is required'\n// return (Object.entries(obj).length > 0 && obj.constructor === Object) || '*Field is required'\n// }\n\n// export const no_blank_spaces_arr = (arr) => {\n// return arr.every(val => (val.trim() && val.trim().length > 0)) || 'Blank Spaces are not allowed'\n// }\n\n// export const url = val => {\n// // If blank return\n// if (val === undefined || val === null || val.length === 0) return true\n\n// // Used\n// // https://stackoverflow.com/questions/4314741/url-regex-validation\n\n// // Other\n// // https://stackoverflow.com/questions/5717093/check-if-a-javascript-string-is-a-url\n// // https://www.w3resource.com/javascript-exercises/javascript-regexp-exercise-9.php\n// // https://www.geeksforgeeks.org/how-to-validate-url-using-regular-expression-in-javascript/\n\n// /* eslint-disable no-useless-escape */\n// const re = /^(http[s]?:\\/\\/){0,1}(www\\.){0,1}[a-zA-Z0-9\\.\\-]+\\.[a-zA-Z]{2,5}[\\.]{0,1}/\n// /* eslint-enable no-useless-escape */\n// return re.test(val) || 'URL is invalid'\n// }\n\n// export const date = val => {\n\n// // If blank return\n// if (val === undefined || val === null || val.length === 0) return true\n\n// // https://github.com/quasarframework/quasar/blob/dev/ui/src/utils/patterns.js\n// return /^-?[\\d]+\\/[0-1]\\d\\/[0-3]\\d$/.test(val) || 'Date is invalid'\n// }\n\n// export const max = (val, max) => {\n\n// // If blank return\n// if (val === undefined || val === null) return true\n\n// return val.length <= max || `More than ${max} characters are not allowed`\n// }\n\n// export const max_arr = (val, max) => {\n// return val.length <= max || `More than ${max} values are not allowed`\n// }\n\n// export const min = (val, min) => {\n\n// // If blank return\n// if (val === undefined || val === null || val.length === 0) return true\n\n// return val.length >= min || `Minimum ${min} characters are required`\n// }\n\n// export const num_range = (val, min, max) => {\n\n// // If blank return\n// if (val === undefined || val === null || val.length === 0) return true\n\n// const msg = 'Value is invalid'\n// if (min === null) return val <= max || msg\n// else if (max === null) return val >= min || msg\n// else return (val >= min && val <= max) || msg\n// }\n","import router from \"@/router\";\n// eslint-disable-next-line object-curly-newline\nimport {\n reactive,\n getCurrentInstance,\n watch,\n toRefs,\n} from \"@vue/composition-api\";\n\nexport const isObject = (obj) => typeof obj === \"object\" && obj !== null;\n\nexport const isToday = (date) => {\n const today = new Date();\n return (\n /* eslint-disable operator-linebreak */\n date.getDate() === today.getDate() &&\n date.getMonth() === today.getMonth() &&\n date.getFullYear() === today.getFullYear()\n /* eslint-enable */\n );\n};\n\nconst getRandomFromArray = (array) =>\n array[Math.floor(Math.random() * array.length)];\n\n// ? Light and Dark variant is not included\n// prettier-ignore\nexport const getRandomBsVariant = () => getRandomFromArray(['primary', 'secondary', 'success', 'warning', 'danger', 'info'])\n\nexport const isDynamicRouteActive = (route) => {\n const { route: resolvedRoute } = router.resolve(route);\n return resolvedRoute.path === router.currentRoute.path;\n};\n\n// Thanks: https://medium.com/better-programming/reactive-vue-routes-with-the-composition-api-18c1abd878d1\nexport const useRouter = () => {\n const vm = getCurrentInstance().proxy;\n const state = reactive({\n route: vm.$route,\n });\n\n watch(\n () => vm.$route,\n (r) => {\n state.route = r;\n }\n );\n\n return { ...toRefs(state), router: vm.$router };\n};\n\n/**\n * This is just enhancement over Object.extend [Gives deep extend]\n * @param {target} a Object which contains values to be overridden\n * @param {source} b Object which contains values to override\n */\n// export const objectExtend = (a, b) => {\n// // Don't touch 'null' or 'undefined' objects.\n// if (a == null || b == null) {\n// return a\n// }\n\n// Object.keys(b).forEach(key => {\n// if (Object.prototype.toString.call(b[key]) === '[object Object]') {\n// if (Object.prototype.toString.call(a[key]) !== '[object Object]') {\n// // eslint-disable-next-line no-param-reassign\n// a[key] = b[key]\n// } else {\n// // eslint-disable-next-line no-param-reassign\n// a[key] = objectExtend(a[key], b[key])\n// }\n// } else {\n// // eslint-disable-next-line no-param-reassign\n// a[key] = b[key]\n// }\n// })\n\n// return a\n// }\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (!_vm.cardClosed)?_c('b-overlay',{attrs:{\"variant\":\"white\",\"show\":_vm.showLoading,\"spinner-variant\":\"primary\",\"blur\":\"0\",\"opacity\":\".75\",\"rounded\":\"sm\"}},[_c('b-card',_vm._g(_vm._b({ref:\"bCard\",style:(_vm.cardStyles),attrs:{\"no-body\":\"\",\"aria-expanded\":!_vm.content_visible ? 'true' : 'false',\"aria-controls\":_vm.parentID}},'b-card',_vm.cardAttrs,false),_vm.$listeners),[(_vm.showHeader)?_c('div',{staticClass:\"card-header\"},[_c('div',[_c('b-card-title',[_vm._v(_vm._s(_vm.$attrs.title))]),(_vm.$attrs['sub-title'])?_c('b-card-sub-title',[_vm._v(\" \"+_vm._s(_vm.$attrs[\"sub-title\"])+\" \")]):_vm._e()],1),(_vm.showActions)?_c('b-card-actions-container',{attrs:{\"available-actions\":_vm.availableActions,\"is-collapsed\":!_vm.content_visible},on:{\"collapse\":_vm.triggerCollapse,\"refresh\":_vm.triggerRefresh,\"close\":_vm.triggerClose}}):_vm._e()],1):_vm._e(),_c('b-collapse',{staticClass:\"card-content\",attrs:{\"id\":_vm.parentID,\"visible\":_vm.content_visible},model:{value:(_vm.content_visible),callback:function ($$v) {_vm.content_visible=$$v},expression:\"content_visible\"}},[(_vm.$attrs['no-body'] !== undefined)?_vm._t(\"default\"):_c('b-card-body',[_vm._t(\"default\")],2)],2)],1)],1):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"heading-elements\"},[_c('ul',{staticClass:\"list-inline mb-0\"},[(_vm.availableActions.includes('collapse'))?_c('li',[_c('a',{class:{ rotate: _vm.isCollapsed },attrs:{\"data-action\":\"collapse\"},on:{\"click\":function($event){return _vm.$emit('collapse')}}},[_c('feather-icon',{attrs:{\"icon\":\"ChevronDownIcon\",\"size\":\"16\"}})],1)]):_vm._e(),(_vm.availableActions.includes('refresh'))?_c('li',[_c('a',{attrs:{\"data-action\":\"reload\"},on:{\"click\":function($event){return _vm.$emit('refresh')}}},[_c('feather-icon',{attrs:{\"icon\":\"RotateCwIcon\",\"size\":\"14\"}})],1)]):_vm._e(),(_vm.availableActions.includes('close'))?_c('li',[_c('a',{attrs:{\"data-action\":\"close\"},on:{\"click\":function($event){return _vm.$emit('close')}}},[_c('feather-icon',{attrs:{\"icon\":\"XIcon\",\"size\":\"14\"}})],1)]):_vm._e()])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n \n\n\n\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BCardActionsContainer.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BCardActionsContainer.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./BCardActionsContainer.vue?vue&type=template&id=71366f75&\"\nimport script from \"./BCardActionsContainer.vue?vue&type=script&lang=js&\"\nexport * from \"./BCardActionsContainer.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n \n \n \n\n \n \n \n \n \n \n \n \n \n \n\n\n\n\n\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BCardActions.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BCardActions.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./BCardActions.vue?vue&type=template&id=3ffebf2d&scoped=true&\"\nimport script from \"./BCardActions.vue?vue&type=script&lang=js&\"\nexport * from \"./BCardActions.vue?vue&type=script&lang=js&\"\nimport style0 from \"./BCardActions.vue?vue&type=style&index=0&id=3ffebf2d&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"3ffebf2d\",\n null\n \n)\n\nexport default component.exports"],"sourceRoot":""}