PageSourceSearch

https://cdn-kvweb-website.kiotviet.vn/_nuxt/BZC6LQ29.js

js kiotviet.vn collected 2026-09-24 08:56:46 UTC 36,918 bytes, 5 lines download raw bytes

1const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./B2ZrL8ho.js","./3bldX2iF.js","./entry.BBqP29rD.css","./ChUoDpRE.js","./fQxWJAsl.js","./DlAUqK2U.js","./Loading.B5Gq7bvu.css","./CqkreN-H.js","./CLfACZGH.js","./CpgWQRay.js","./BhURB9FD.js","./Select2nd.Ctk3rfrm.css","./PopupRegisterPurchase.RJurMydw.css"])))=>i.map(i=>d[i]);
2import{_ as Rt}from"./fQxWJAsl.js";import{l as bt,o as ot,q as at,a as pt,c as g,b as d,e as o,z as H,f as j,w as st,t as O,F as I,k as L,r as M,M as wt,x as R,y as nt,u as D,n as K,Q as Mt,A as $t,_ as kt,d as Tt,p as xt,g as lt,a8 as ct,B as At,b9 as It,O as jt}from"./3bldX2iF.js";import{_ as dt}from"./ChUoDpRE.js";import{_ as Lt}from"./DlAUqK2U.js";import{_ as Vt}from"./CKCwa35m.js";import{P as qt}from"./CpgWQRay.js";import{I as Bt}from"./BwDNuJOc.js";import{a as Ft}from"./CtqmJZ9W.js";const Ht={class:"intro-product-mobile"},zt={class:"intro-product-wrap"},Gt={class:"content-intro-product"},Ut={class:"intro-product-banner d-flex"},Yt={class:"product-detail-image"},Xt=["src"],Kt={class:"product-detail-content"},Zt={class:"product-detail-infor"},Qt={class:"product-detail-price"},Wt={class:"price-new"},Jt={class:"price-old"},te={class:"product-detail-list"},ee={class:"contactTxt"},se={__name:"ServicePriceDetail",props:{product:{required:!0}},emits:["close","submit"],setup(i,{emit:t}){const e=t,s=i,n=bt(),r=()=>{window.scroll({top:0,left:0})},a=()=>{e("close")},c=()=>{e("submit",s.product.name)};return ot(()=>{n.setLayout(!1,!1),r()}),at(()=>{n.setLayout(!0)}),(u,h)=>{const m=pt("font-awesome-icon"),f=dt;return d(),g("div",Ht,[o("div",zt,[o("div",Gt,[o("div",Ut,[o("p",{class:"cursor-pointer",onClick:a},[o("span",null,[j(f,null,{default:st(()=>[j(m,{icon:"fa-regular fa-chevron-left"})]),_:1})]),h[0]||(h[0]=H(" Chi tiết sản phẩm "))]),o("span",null,[j(m,{icon:"fa-regular fa-xmark",class:"close-intro-product cursor-pointer",onClick:a})])]),o("div",Yt,[o("img",{src:i.product.img,alt:"thiet bi phan cung page phi dich vu"},null,8,Xt)]),o("div",Kt,[o("div",Zt,[o("h3",null,O(i.product.name),1),o("div",Qt,[o("p",Wt,O(i.product.price_sale?i.product.price_sale:i.product.price),1),o("p",Jt,O(i.product.price),1)])]),o("ul",te,[(d(!0),g(I,null,L(i.product.info,(x,y)=>(d(),g("li",{key:y},[o("p",null,O(x),1)]))),128))])]),o("div",{class:"intro-product-contact",onClick:c},[h[1]||(h[1]=o("p",null,[o("span",{class:"kv-btn-price kv-btn-price-now"},"Mua ngay")],-1)),o("span",ee,O(i.product.contact),1)])])])])}}};var ut,_t;function ne(){if(_t)return ut;_t=1;function i(l){this._maxSize=l,this.clear()}i.prototype.clear=function(){this._size=0,this._values=Object.create(null)},i.prototype.get=function(l){return this._values[l]},i.prototype.set=function(l,p){return this._size>=this._maxSize&&this.clear(),l in this._values||this._size++,this._values[l]=p};var t=/[^.^\]^[]+|(?=\[\]|\.\.)/g,e=/^\d+$/,s=/^\d/,n=/[~`!#$%\^&*+=\-\[\]\\';,/{}|\\":<>\?]/g,r=/^\s*(['"]?)(.*?)(\1)\s*$/,a=512,c=new i(a),u=new i(a),h=new i(a);ut={Cache:i,split:f,normalizePath:m,setter:function(l){var p=m(l);return u.get(l)||u.set(l,function(P,_){for(var v=0,T=p.length,C=P;v<T-1;){var N=p[v];if(N==="__proto__"||N==="constructor"||N==="prototype")return P;C=C[p[v++]]}C[p[v]]=_})},getter:function(l,p){var k=m(l);return h.get(l)||h.set(l,function(_){for(var v=0,T=k.length;v<T;)if(_!=null||!p)_=_[k[v++]];else return;return _})},join:function(l){return l.reduce(function(p,k){return p+(y(k)||e.test(k)?"["+k+"]":(p?".":"")+k)},"")},forEach:function(l,p,k){x(Array.isArray(l)?l:f(l),p,k)}};function m(l){return c.get(l)||c.set(l,f(l).map(function(p){return p.replace(r,"$2")}))}function f(l){return l.match(t)||[""]}function x(l,p,k){var P=l.length,_,v,T,C;for(v=0;v<P;v++)_=l[v],_&&(b(_)&&(_='"'+_+'"'),C=y(_),T=!C&&/^\d+$/.test(_),p.call(k,_,C,T,v,l))}function y(l){return typeof l=="string"&&l&&["'",'"'].indexOf(l.charAt(0))!==-1}function S(l){return l.match(s)&&!l.match(e)}function w(l){return n.test(l)}function b(l){return!y(l)&&(S(l)||w(l))}return ut}var St=ne(),tt={exports:{}},gt;function ie(){if(gt)return tt.exports;gt=1,tt.exports=function(n){return i(t(n),n)},tt.exports.array=i;function i(n,r){var a=n.length,c=new Array(a),u={},h=a,m=e(r),f=s(n);for(r.forEach(function(y){if(!f.has(y[0])||!f.has(y[1]))throw new Error("Unknown node. There is an unknown node in the supplied edges.")});h--;)u[h]||x(n[h],h,new Set);return c;function x(y,S,w){if(w.has(y)){var b;try{b=", node was:"+JSON.stringify(y)}catch{b=""}throw new Error("Cyclic dependency"+b)}if(!f.has(y))throw new Error("Found unknown node. Make sure to provided all involved nodes. Unknown node: "+JSON.stringify(y));if(!u[S]){u[S]=!0;var l=m.get(y)||new Set;if(l=Array.from(l),S=l.length){w.add(y);do{var p=l[--S];x(p,f.get(p),w)}while(S);w.delete(y)}c[--a]=y}}}function t(n){for(var r=new Set,a=0,c=n.length;a<c;a++){var u=n[a];r.add(u[0]),r.add(u[1])}return Array.from(r)}function e(n){for(var r=new Map,a=0,c=n.length;a<c;a++){var u=n[a];r.has(u[0])||r.set(u[0],new Set),r.has(u[1])||r.set(u[1],new Set),r.get(u[0]).add(u[1])}return r}function s(n){for(var r=new Map,a=0,c=n.length;a<c;a++)r.set(n[a],a);return r}return tt.exports}ie();const re=Object.prototype.toString,oe=Error.prototype.toString,ae=RegExp.prototype.toString,le=typeof Symbol<"u"?Symbol.prototype.toString:()=>"",ce=/^Symbol\((.*)\)(.*)$/;function ue(i){return i!=+i?"NaN":i===0&&1/i<0?"-0":""+i}function vt(i,t=!1){if(i==null||i===!0||i===!1)return""+i;const e=typeof i;if(e==="number")return ue(i);if(e==="string")return t?`"${i}"`:i;if(e==="function")return"[Function "+(i.name||"anonymous")+"]";if(e==="symbol")return le.call(i).replace(ce,"Symbol($1)");const s=re.call(i).slice(8,-1);return s==="Date"?isNaN(i.getTime())?""+i:i.toISOString(i):s==="Error"||i instanceof Error?"["+oe.call(i)+"]":s==="RegExp"?ae.call(i):null}function z(i,t){let e=vt(i,t);return e!==null?e:JSON.stringify(i,function(s,n){let r=vt(this[s],t);return r!==null?r:n},2)}function Et(i){return i==null?[]:[].concat(i)}let Ot,Ct,Dt,he=/\$\{\s*(\w+)\s*\}/g;Ot=Symbol.toStringTag;class yt{constructor(t,e,s,n){this.name=void 0,this.message=void 0,this.value=void 0,this.path=void 0,this.type=void 0,this.params=void 0,this.errors=void 0,this.inner=void 0,this[Ot]="Error",this.name="ValidationError",this.value=e,this.path=s,this.type=n,this.errors=[],this.inner=[],Et(t).forEach(r=>{if(A.isError(r)){this.errors.push(...r.errors);const a=r.inner.length?r.inner:[r];this.inner.push(...a)}else this.errors.push(r)}),this.message=this.errors.length>1?`${this.errors.length} errors occurred`:this.errors[0]}}Ct=Symbol.hasInstance;Dt=Symbol.toStringTag;
2class A extends Error{static formatError(t,e){const s=e.label||e.path||"this";return e=Object.assign({},e,{path:s,originalPath:e.path}),typeof t=="string"?t.replace(he,(n,r)=>z(e[r])):typeof t=="function"?t(e):t}static isError(t){return t&&t.name==="ValidationError"}constructor(t,e,s,n,r){const a=new yt(t,e,s,n);if(r)return a;super(),this.value=void 0,this.path=void 0,this.type=void 0,this.params=void 0,this.errors=[],this.inner=[],this[Dt]="Error",this.name=a.name,this.message=a.message,this.type=a.type,this.value=a.value,this.path=a.path,this.errors=a.errors,this.inner=a.inner,Error.captureStackTrace&&Error.captureStackTrace(this,A)}static[Ct](t){return yt[Symbol.hasInstance](t)||super[Symbol.hasInstance](t)}}let F={default:"${path} is invalid",required:"${path} is a required field",defined:"${path} must be defined",notNull:"${path} cannot be null",oneOf:"${path} must be one of the following values: ${values}",notOneOf:"${path} must not be one of the following values: ${values}",notType:({path:i,type:t,value:e,originalValue:s})=>{const n=s!=null&&s!==e?` (cast from the value \`${z(s,!0)}\`).`:".";return t!=="mixed"?`${i} must be a \`${t}\` type, but the final value was: \`${z(e,!0)}\``+n:`${i} must match the configured type. The validated value was: \`${z(e,!0)}\``+n}},pe={length:"${path} must be exactly ${length} characters",min:"${path} must be at least ${min} characters",max:"${path} must be at most ${max} characters",matches:'${path} must match the following: "${regex}"',email:"${path} must be a valid email",url:"${path} must be a valid URL",uuid:"${path} must be a valid UUID",datetime:"${path} must be a valid ISO date-time",datetime_precision:"${path} must be a valid ISO date-time with a sub-second precision of exactly ${precision} digits",datetime_offset:'${path} must be a valid ISO date-time with UTC "Z" timezone',trim:"${path} must be a trimmed string",lowercase:"${path} must be a lowercase string",uppercase:"${path} must be a upper case string"},de={min:"${path} must be greater than or equal to ${min}",max:"${path} must be less than or equal to ${max}",lessThan:"${path} must be less than ${less}",moreThan:"${path} must be greater than ${more}",positive:"${path} must be a positive number",negative:"${path} must be a negative number",integer:"${path} must be an integer"},ht={min:"${path} field must be later than ${min}",max:"${path} field must be at earlier than ${max}"},fe={isValue:"${path} field must be ${value}"},me={noUnknown:"${path} field has unspecified keys: ${unknown}",exact:"${path} object contains unknown properties: ${properties}"},_e={min:"${path} field must have at least ${min} items",max:"${path} field must have less than or equal to ${max} items",length:"${path} must have ${length} items"},ge={notType:i=>{const{path:t,value:e,spec:s}=i,n=s.types.length;if(Array.isArray(e)){if(e.length<n)return`${t} tuple value has too few items, expected a length of ${n} but got ${e.length} for value: \`${z(e,!0)}\``;if(e.length>n)return`${t} tuple value has too many items, expected a length of ${n} but got ${e.length} for value: \`${z(e,!0)}\``}return A.formatError(F.notType,i)}};Object.assign(Object.create(null),{mixed:F,string:pe,number:de,date:ht,object:me,array:_e,boolean:fe,tuple:ge});const Pt=i=>i&&i.__isYupSchema__;class it{static fromOptions(t,e){if(!e.then&&!e.otherwise)throw new TypeError("either `then:` or `otherwise:` is required for `when()` conditions");let{is:s,then:n,otherwise:r}=e,a=typeof s=="function"?s:(...c)=>c.every(u=>u===s);return new it(t,(c,u)=>{var h;let m=a(...c)?n:r;return(h=m==null?void 0:m(u))!=null?h:u})}constructor(t,e){this.fn=void 0,this.refs=t,this.refs=t,this.fn=e}resolve(t,e){let s=this.refs.map(r=>r.getValue(e==null?void 0:e.value,e==null?void 0:e.parent,e==null?void 0:e.context)),n=this.fn(s,t,e);if(n===void 0||n===t)return t;if(!Pt(n))throw new TypeError("conditions must return a schema object");return n.resolve(e)}}const et={context:"$",value:"."};class W{constructor(t,e={}){if(this.key=void 0,this.isContext=void 0,this.isValue=void 0,this.isSibling=void 0,this.path=void 0,this.getter=void 0,this.map=void 0,typeof t!="string")throw new TypeError("ref must be a string, got: "+t);if(this.key=t.trim(),t==="")throw new TypeError("ref must be a non-empty string");this.isContext=this.key[0]===et.context,this.isValue=this.key[0]===et.value,this.isSibling=!this.isContext&&!this.isValue;let s=this.isContext?et.context:this.isValue?et.value:"";this.path=this.key.slice(s.length),this.getter=this.path&&St.getter(this.path,!0),this.map=e.map}getValue(t,e,s){let n=this.isContext?s:this.isValue?t:e;return this.getter&&(n=this.getter(n||{})),this.map&&(n=this.map(n)),n}cast(t,e){return this.getValue(t,e==null?void 0:e.parent,e==null?void 0:e.context)}resolve(){return this}describe(){return{type:"ref",key:this.key}}toString(){return`Ref(${this.key})`}static isRef(t){return t&&t.__isYupRef}}W.prototype.__isYupRef=!0;const Nt=i=>i==null;function X(i){function t({value:e,path:s="",options:n,originalValue:r,schema:a},c,u){const{name:h,test:m,params:f,message:x,skipAbsent:y}=i;let{parent:S,context:w,abortEarly:b=a.spec.abortEarly,disableStackTrace:l=a.spec.disableStackTrace}=n;function p(E){return W.isRef(E)?E.getValue(e,S,w):E}function k(E={}){const V=Object.assign({value:e,originalValue:r,label:a.spec.label,path:E.path||s,spec:a.spec,disableStackTrace:E.disableStackTrace||l},f,E.params);for(const Q of Object.keys(V))V[Q]=p(V[Q]);const q=new A(A.formatError(E.message||x,V),e,V.path,E.type||h,V.disableStackTrace);return q.params=V,q}const P=b?c:u;let _={path:s,parent:S,type:h,from:n.from,createError:k,resolve:p,options:n,originalValue:r,schema:a};const v=E=>{A.isError(E)?P(E):E?u(null):P(k())},T=E=>{A.isError(E)?P(E):c(E)};if(y&&Nt(e))return v(!0);let N;try{var Y;if(N=m.call(_,e,_),typeof((Y=N)==null?void 0:Y.then)=="function"){if(n.sync)throw new Error(`Validation test of type: "${_.type}" returned a Promise during a synchronous validate. This test will finish after the validate call has returned`);return Promise.resolve(N).then(v,T)}}catch(E){T(E);return}v(N)}return t.OPTIONS=i,t}function ve(i,t,e,s=e){let n,r,a;return t?(St.forEach(t,(c,u,h)=>{let m=u?c.slice(1,c.length-1):c;i=i.resolve({context:s,parent:n,value:e});let f=i.type==="tuple",x=h?parseInt(m,10):0;if(i.innerType||f){if(f&&!h)throw new Error(`Yup.reach cannot implicitly index into a tuple type. the path part "${a}" must contain an index to the tuple element, e.g. "${a}[0]"`);if(e&&x>=e.length)throw new Error(`Yup.reach cannot resolve an array item at index: ${c}, in the path: ${t}. because there is no value at that index. `);n=e,e=e&&e[x],i=f?i.spec.types[x]:i.innerType}if(!h){if(!i.fields||!i.fields[m])throw new Error(`The schema does not contain the path: ${t}. (failed at: ${a} which is a type: "${i.type}")`);n=e,e=e&&e[m],i=i.fields[m]}r=m,a=u?"["+c+"]":"."+c}),{schema:i,parent:n,parentPath:r}):{parent:n,parentPath:t,schema:i}}class rt extends Set{describe(){const t=[];for(const e of this.values())t.push(W.isRef(e)?e.describe():e);return t}resolveAll(t){let e=[];for(const s of this.values())e.push(t(s));return e}clone(){return new rt(this.values())}merge(t,e){const s=this.clone();return t.forEach(n=>s.add(n)),e.forEach(n=>s.delete(n)),s}}function Z(i,t=new Map){if(Pt(i)||!i||typeof i!="object")return i;if(t.has(i))return t.get(i);let e;if(i instanceof Date)e=new Date(i.getTime()),t.set(i,e);else if(i instanceof RegExp)e=new RegExp(i),t.set(i,e);else if(Array.isArray(i)){e=new Array(i.length),t.set(i,e);for(let s=0;s<i.length;s++)e[s]=Z(i[s],t)}else if(i instanceof Map){e=new Map,t.set(i,e);for(const[s,n]of i.entries())e.set(s,Z(n,t))}else if(i instanceof Set){e=new Set,t.set(i,e);for(const s of i)e.add(Z(s,t))}else if(i instanceof Object){e={},t.set(i,e);for(const[s,n]of Object.entries(i))e[s]=Z(n,t)}else throw Error(`Unable to clone ${i}`);return e}class U{constructor(t){this.type=void 0,this.deps=[],this.tests=void 0,this.transforms=void 0,this.conditions=[],this._mutate=void 0,this.internalTests={},this._whitelist=new rt,this._blacklist=new rt,this.exclusiveTests=Object.create(null),this._typeCheck=void 0,this.spec=void 0,this.tests=[],this.transforms=[],this.withMutation(()=>{this.typeError(F.notType)}),this.type=t.type,this._typeCheck=t.check,this.spec=Object.assign({strip:!1,strict:!1,abortEarly:!0,recursive:!0,disableStackTrace:!1,nullable:!1,optional:!0,coerce:!0},t==null?void 0:t.spec),this.withMutation(e=>{e.nonNullable()})}get _type(){return this.type}clone(t){if(this._mutate)return t&&Object.assign(this.spec,t),this;const e=Object.create(Object.getPrototypeOf(this));
2return e.type=this.type,e._typeCheck=this._typeCheck,e._whitelist=this._whitelist.clone(),e._blacklist=this._blacklist.clone(),e.internalTests=Object.assign({},this.internalTests),e.exclusiveTests=Object.assign({},this.exclusiveTests),e.deps=[...this.deps],e.conditions=[...this.conditions],e.tests=[...this.tests],e.transforms=[...this.transforms],e.spec=Z(Object.assign({},this.spec,t)),e}label(t){let e=this.clone();return e.spec.label=t,e}meta(...t){if(t.length===0)return this.spec.meta;let e=this.clone();return e.spec.meta=Object.assign(e.spec.meta||{},t[0]),e}withMutation(t){let e=this._mutate;this._mutate=!0;let s=t(this);return this._mutate=e,s}concat(t){if(!t||t===this)return this;if(t.type!==this.type&&this.type!=="mixed")throw new TypeError(`You cannot \`concat()\` schema's of different types: ${this.type} and ${t.type}`);let e=this,s=t.clone();const n=Object.assign({},e.spec,s.spec);return s.spec=n,s.internalTests=Object.assign({},e.internalTests,s.internalTests),s._whitelist=e._whitelist.merge(t._whitelist,t._blacklist),s._blacklist=e._blacklist.merge(t._blacklist,t._whitelist),s.tests=e.tests,s.exclusiveTests=e.exclusiveTests,s.withMutation(r=>{t.tests.forEach(a=>{r.test(a.OPTIONS)})}),s.transforms=[...e.transforms,...s.transforms],s}isType(t){return t==null?!!(this.spec.nullable&&t===null||this.spec.optional&&t===void 0):this._typeCheck(t)}resolve(t){let e=this;if(e.conditions.length){let s=e.conditions;e=e.clone(),e.conditions=[],e=s.reduce((n,r)=>r.resolve(n,t),e),e=e.resolve(t)}return e}resolveOptions(t){var e,s,n,r;return Object.assign({},t,{from:t.from||[],strict:(e=t.strict)!=null?e:this.spec.strict,abortEarly:(s=t.abortEarly)!=null?s:this.spec.abortEarly,recursive:(n=t.recursive)!=null?n:this.spec.recursive,disableStackTrace:(r=t.disableStackTrace)!=null?r:this.spec.disableStackTrace})}cast(t,e={}){let s=this.resolve(Object.assign({value:t},e)),n=e.assert==="ignore-optionality",r=s._cast(t,e);if(e.assert!==!1&&!s.isType(r)){if(n&&Nt(r))return r;let a=z(t),c=z(r);throw new TypeError(`The value of ${e.path||"field"} could not be cast to a value that satisfies the schema type: "${s.type}". 
3
4attempted value: ${a} 
5`+(c!==a?`result of cast: ${c}`:""))}return r}_cast(t,e){let s=t===void 0?t:this.transforms.reduce((n,r)=>r.call(this,n,t,this),t);return s===void 0&&(s=this.getDefault(e)),s}_validate(t,e={},s,n){let{path:r,originalValue:a=t,strict:c=this.spec.strict}=e,u=t;c||(u=this._cast(u,Object.assign({assert:!1},e)));let h=[];for(let m of Object.values(this.internalTests))m&&h.push(m);this.runTests({path:r,value:u,originalValue:a,options:e,tests:h},s,m=>{if(m.length)return n(m,u);this.runTests({path:r,value:u,originalValue:a,options:e,tests:this.tests},s,n)})}runTests(t,e,s){let n=!1,{tests:r,value:a,originalValue:c,path:u,options:h}=t,m=w=>{n||(n=!0,e(w,a))},f=w=>{n||(n=!0,s(w,a))},x=r.length,y=[];if(!x)return f([]);let S={value:a,originalValue:c,path:u,options:h,schema:this};for(let w=0;w<r.length;w++){const b=r[w];b(S,m,function(p){p&&(Array.isArray(p)?y.push(...p):y.push(p)),--x<=0&&f(y)})}}asNestedTest({key:t,index:e,parent:s,parentPath:n,originalParent:r,options:a}){const c=t??e;if(c==null)throw TypeError("Must include `key` or `index` for nested validations");const u=typeof c=="number";let h=s[c];const m=Object.assign({},a,{strict:!0,parent:s,value:h,originalValue:r[c],key:void 0,[u?"index":"key"]:c,path:u||c.includes(".")?`${n||""}[${u?c:`"${c}"`}]`:(n?`${n}.`:"")+t});return(f,x,y)=>this.resolve(m)._validate(h,m,x,y)}validate(t,e){var s;let n=this.resolve(Object.assign({},e,{value:t})),r=(s=e==null?void 0:e.disableStackTrace)!=null?s:n.spec.disableStackTrace;return new Promise((a,c)=>n._validate(t,e,(u,h)=>{A.isError(u)&&(u.value=h),c(u)},(u,h)=>{u.length?c(new A(u,h,void 0,void 0,r)):a(h)}))}validateSync(t,e){var s;let n=this.resolve(Object.assign({},e,{value:t})),r,a=(s=e==null?void 0:e.disableStackTrace)!=null?s:n.spec.disableStackTrace;return n._validate(t,Object.assign({},e,{sync:!0}),(c,u)=>{throw A.isError(c)&&(c.value=u),c},(c,u)=>{if(c.length)throw new A(c,t,void 0,void 0,a);r=u}),r}isValid(t,e){return this.validate(t,e).then(()=>!0,s=>
5{if(A.isError(s))return!1;throw s})}isValidSync(t,e){try{return this.validateSync(t,e),!0}catch(s){if(A.isError(s))return!1;throw s}}_getDefault(t){let e=this.spec.default;return e==null?e:typeof e=="function"?e.call(this,t):Z(e)}getDefault(t){return this.resolve(t||{})._getDefault(t)}default(t){return arguments.length===0?this._getDefault():this.clone({default:t})}strict(t=!0){return this.clone({strict:t})}nullability(t,e){const s=this.clone({nullable:t});return s.internalTests.nullable=X({message:e,name:"nullable",test(n){return n===null?this.schema.spec.nullable:!0}}),s}optionality(t,e){const s=this.clone({optional:t});return s.internalTests.optionality=X({message:e,name:"optionality",test(n){return n===void 0?this.schema.spec.optional:!0}}),s}optional(){return this.optionality(!0)}defined(t=F.defined){return this.optionality(!1,t)}nullable(){return this.nullability(!0)}nonNullable(t=F.notNull){return this.nullability(!1,t)}required(t=F.required){return this.clone().withMutation(e=>e.nonNullable(t).defined(t))}notRequired(){return this.clone().withMutation(t=>t.nullable().optional())}transform(t){let e=this.clone();return e.transforms.push(t),e}test(...t){let e;if(t.length===1?typeof t[0]=="function"?e={test:t[0]}:e=t[0]:t.length===2?e={name:t[0],test:t[1]}:e={name:t[0],message:t[1],test:t[2]},e.message===void 0&&(e.message=F.default),typeof e.test!="function")throw new TypeError("`test` is a required parameters");let s=this.clone(),n=X(e),r=e.exclusive||e.name&&s.exclusiveTests[e.name]===!0;if(e.exclusive&&!e.name)throw new TypeError("Exclusive tests must provide a unique `name` identifying the test");return e.name&&(s.exclusiveTests[e.name]=!!e.exclusive),s.tests=s.tests.filter(a=>!(a.OPTIONS.name===e.name&&(r||a.OPTIONS.test===n.OPTIONS.test))),s.tests.push(n),s}when(t,e){!Array.isArray(t)&&typeof t!="string"&&(e=t,t=".");let s=this.clone(),n=Et(t).map(r=>new W(r));return n.forEach(r=>{r.isSibling&&s.deps.push(r.key)}),s.conditions.push(typeof e=="function"?new it(n,e):it.fromOptions(n,e)),s}typeError(t){let e=this.clone();return e.internalTests.typeError=X({message:t,name:"typeError",skipAbsent:!0,test(s){return this.schema._typeCheck(s)?!0:this.createError({params:{type:this.schema.type}})}}),e}oneOf(t,e=F.oneOf){let s=this.clone();return t.forEach(n=>{s._whitelist.add(n),s._blacklist.delete(n)}),s.internalTests.whiteList=X({message:e,name:"oneOf",skipAbsent:!0,test(n){let r=this.schema._whitelist,a=r.resolveAll(this.resolve);return a.includes(n)?!0:this.createError({params:{values:Array.from(r).join(", "),resolved:a}})}}),s}notOneOf(t,e=F.notOneOf){let s=this.clone();return t.forEach(n=>{s._blacklist.add(n),s._whitelist.delete(n)}),s.internalTests.blacklist=X({message:e,name:"notOneOf",test(n){let r=this.schema._blacklist,a=r.resolveAll(this.resolve);return a.includes(n)?this.createError({params:{values:Array.from(r).join(", "),resolved:a}}):!0}}),s}strip(t=!0){let e=this.clone();return e.spec.strip=t,e}describe(t){const e=(t?this.resolve(t):this).clone(),{label:s,meta:n,optional:r,nullable:a}=e.spec;return{meta:n,label:s,optional:r,nullable:a,default:e.getDefault(t),type:e.type,oneOf:e._whitelist.describe(),notOneOf:e._blacklist.describe(),tests:e.tests.map(u=>({name:u.OPTIONS.name,params:u.OPTIONS.params})).filter((u,h,m)=>m.findIndex(f=>f.name===u.name)===h)}}}U.prototype.__isYupSchema__=!0;for(const i of["validate","validateSync"])U.prototype[`${i}At`]=function(t,e,s={}){const{parent:n,parentPath:r,schema:a}=ve(this,t,e,s.context);return a[i](n&&n[r],Object.assign({},s,{parent:n,path:t}))};for(const i of["equals","is"])U.prototype[i]=U.prototype.oneOf;for(const i of["not","nope"])U.prototype[i]=U.prototype.notOneOf;const ye=/^(\d{4}|[+-]\d{6})(?:-?(\d{2})(?:-?(\d{2}))?)?(?:[ T]?(\d{2}):?(\d{2})(?::?(\d{2})(?:[,.](\d{1,}))?)?(?:(Z)|([+-])(\d{2})(?::?(\d{2}))?)?)?$/;function be(i){const t=we(i);if(!t)return Date.parse?Date.parse(i):Number.NaN;if(t.z===void 0&&t.plusMinus===void 0)return new Date(t.year,t.month,t.day,t.hour,t.minute,t.second,t.millisecond).valueOf();let e=0;return t.z!=="Z"&&t.plusMinus!==void 0&&(e=t.hourOffset*60+t.minuteOffset,t.plusMinus==="+"&&(e=0-e)),Date.UTC(t.year,t.month,t.day,t.hour,t.minute+e,t.second,t.millisecond)}function we(i){var t,e;const s=ye.exec(i);return s?{year:B(s[1]),month:B(s[2],1)-1,day:B(s[3],1),hour:B(s[4]),minute:B(s[5]),second:B(s[6]),millisecond:s[7]?B(s[7].substring(0,3)):0,precision:(t=(e=s[7])==null?void 0:e.length)!=null?t:void 0,z:s[8]||void 0,plusMinus:s[9]||void 0,hourOffset:B(s[10]),minuteOffset:B(s[11])}:null}function B(i,t=0){return Number(i)||t}let $e=new Date(""),ke=i=>Object.prototype.toString.call(i)==="[object Date]";class ft extends U{constructor(){super({type:"date",check(t){return ke(t)&&!isNaN(t.getTime())}}),this.withMutation(()=>{this.transform((t,e,s)=>!s.spec.coerce||s.isType(t)||t===null?t:(t=be(t),isNaN(t)?ft.INVALID_DATE:new Date(t)))})}prepareParam(t,e){let s;if(W.isRef(t))s=t;else{let n=this.cast(t);if(!this._typeCheck(n))throw new TypeError(`\`${e}\` must be a Date or a value that can be \`cast()\` to a Date`);s=n}return s}min(t,e=ht.min){let s=this.prepareParam(t,"min");return this.test({message:e,name:"min",exclusive:!0,params:{min:t},skipAbsent:!0,test(n){return n>=this.resolve(s)}})}max(t,e=ht.max){let s=this.prepareParam(t,"max");return this.test({message:e,name:"max",exclusive:!0,params:{max:t},skipAbsent:!0,test(n){return n<=this.resolve(s)}})}}ft.INVALID_DATE=$e;const Te=$t(()=>kt(()=>import("./B2ZrL8ho.js"),__vite__mapDeps([0,1,2,3,4,5,6,7]),import.meta.url).then(i=>i.default||i)),xe={key:0,class:"price-service"},Se={class:"container"},Ee={class:"price-title"},Oe={class:"price-service-items"},Ce=["data-id"],De={class:"wrap-price"},Pe={class:"price-packagename"},Ne={key:0,class:"popular-title"},Re={class:"price-info"},Me={key:0,class:"price-value"},Ae={key:1,class:"price-value"},Ie={key:2,class:"price-value"},je={class:"price-group"},Le=["innerHTML"],Ve={class:"wrap-button-register"},qe={class:"price-user"},Be={class:"price-description"},Fe={class:"package-feature-main"},He={key:0,class:"package-feature-new"},ze={class:"price-service-package"},Ge={class:"container"},Ue=["data-id"],Ye={key:0,class:"package-describe"},Xe={class:"row package-feature-item"},Ke=["data-id"],Ze={class:"package-title"},Qe={class:"package-feature-content"},We=["innerHTML"],Je={__name:"ServiceFeeBoard",props:{dataFeeService:{required:!0}},setup(i){const t=M(!1),e=["Miễn phí hóa đơn điện tử KiotViet","Miễn phí hoá đơn điện tử KiotViet","Miễn phí chữ ký số","Miễn phí phần mềm kế toán","Tích hợp nền tảng ShopeeFood, GrabFood trên hệ thống","Tích hợp quản lý nhà hàng (F&B)"],s=i,n=wt(),r=()=>{Mt("kv_website_tracker","register","CTA_trial"),n.toggleModalRegister(!0),document.body.classList.add("wrap-register-mobile")},a=M(!1),c=()=>{window.scroll({top:0,left:0,behavior:"smooth"})},u=()=>{a.value=window.scrollY>300},h=M(null);return ot(()=>{window.addEventListener("scroll",u);const m="COMING_SOON",f="Tích hợp nền tảng ShopeeFood, GrabFood",x='<span style="background:#ff0000;color:white;font-size:12px;line-height: 16px;font-weight:600;text-transform:uppercase;padding:2px 5px;border-radius:4px;margin-left:8px;display:inline-block;">HOT</span>';
5h.value=s.dataFeeService,h.value.package_features.forEach((y,S)=>{typeof y<"u"&&y.list&&Object.entries(y.list).forEach(([w,b])=>{b.forEach((l,p)=>{let k=l.indexOf(m);if(k!==-1){const P='<p style="color: #009232; margin-top: 4px; font-weight: 600; background-color: #E6F8EC; font-size: 12px; line-height: 16px; padding: 4px; border-radius: 8px; width: fit-content">Sắp ra mắt</p>',v=l.replace(new RegExp(m,"g"),"").split("");v[k]=P,l=v.join(""),h.value.package_features[S].list[w][p]=l}if(l.includes(f)){const P=l.replace(f,f+x);h.value.package_features[S].list[w][p]=P}})})})}),at(()=>{window.removeEventListener("scroll",u)}),(m,f)=>{const x=pt("font-awesome-icon"),y=dt,S=Te;return d(),g(I,null,[D(h)?(d(),g("div",xe,[o("div",Se,[o("p",Ee,"Bảng phí dịch vụ ngành "+O(D(h).title),1),o("div",Oe,[(d(!0),g(I,null,L(D(h).package_pricing,(w,b)=>(d(),g("div",{key:b,"data-id":b,class:K(["price-service-item",{base:b===0,profession:b===1,expert:b===2}])},[o("div",De,[o("p",Pe,[H(O(w.name)+" ",1),b===1?(d(),g("span",Ne,"Phổ biến")):R("",!0)]),o("div",Re,[b===0?(d(),g("span",Me,f[0]||(f[0]=[H("270.000 "),o("em",null,"đ",-1)]))):b===1?(d(),g("span",Ae,f[1]||(f[1]=[H("330.000 "),o("em",null,"đ",-1)]))):b===2?(d(),g("span",Ie,f[2]||(f[2]=[H("490.000 "),o("em",null,"đ",-1)]))):R("",!0),o("span",je,[o("span",{class:"price-shop",innerHTML:w.price_excerpt},null,8,Le),o("div",Ve,[o("button",{class:K(["btn box-popup-register",{"btn-blur-secondary":b===0,"btn-primary":b===1,"btn-blur-warning":b===2}]),onClick:r}," Dùng thử miễn phí ",2)]),o("span",qe,O(w.fit_with),1)]),o("p",Be,[o("ul",Fe,[(d(!0),g(I,null,L(w.feature_list,(l,p)=>(d(),g("li",{key:p,class:"package-description-detail"},[j(y,null,{default:st(()=>[j(x,{icon:"fa-regular fa-check"})]),_:1}),o("span",null,O(l),1),typeof l=="string"&&e.some(k=>l.includes(k))?(d(),g("span",He,"Mới")):R("",!0)]))),128))])])])])],10,Ce))),128))])]),o("div",ze,[o("div",Ge,[f[3]||(f[3]=o("p",{class:"price-title price-title-package"},"Tính năng phù hợp với mọi mô hình kinh doanh",-1)),(d(!0),g(I,null,L(D(h).package_features,(w,b)=>(d(),g("div",{key:b,"data-id":b,class:"package-feature-items"},[o("div",{class:K(["package-name",{"package-name-pro":b===1}])},O(w.name),3),b===1?(d(),g("p",Ye,"Bao gồm toàn bộ tính năng của gói Hỗ trợ và nhiều tính năng nâng cao khác")):R("",!0),o("div",Xe,[(d(!0),g(I,null,L(w.list,(l,p)=>(d(),g("div",{key:p,"data-id":p,class:"package-feature-list col-12 col-sm-6 col-xl-3 p-0"},[o("div",{class:K(["package-title-wrap",{"bg-basic-package":b===0}])},[o("strong",Ze,O(p),1)],2),o("ul",Qe,[(d(!0),g(I,null,L(l,(k,P)=>(d(),g("li",{key:P,class:"package-description"},[o("div",{class:"package-feature-text",innerHTML:k},null,8,We)]))),128))])],8,Ke))),128))])],8,Ue))),128))])])])):R("",!0),D(t)?(d(),nt(S,{key:1,onToggle:r})):R("",!0),D(a)?(d(),g("span",{key:2,title:"Lên đầu trang",onClick:c,class:"go_top"},[j(y,null,{default:st(()=>f[4]||(f[4]=[o("b",{class:"fa-regular fa-arrow-up-long"},null,-1)])),_:1,__:[4]})])):R("",!0)],64)}}},ts=Lt(Je,[["__scopeId","data-v-256b4d32"]]),es=$t(()=>kt(()=>import("./CLfACZGH.js"),__vite__mapDeps([8,3,1,2,9,10,5,11,12]),import.meta.url).then(i=>i.default||i)),ss={key:1,class:"wrapper-p phi-dich-vu page-phi-dich-vu"},ns={class:"banner-phi-dich-vu page-banner"},is={class:"main-page"},rs={class:"box-product-price",id:"thiet-bi-ban-hang"},os={class:"container",style:{position:"inherit"}},as=["data-id"],ls={class:"category-title"},cs={class:"text"},us={class:"row"},hs=["data-id","id","onClick"],ps={class:"product-image-btn"},ds=["onClick"],fs=["onClick"],ms={class:"img-product-price"},_s={class:"product-image"},gs=["src"],vs={class:"info-product-price"},ys=["onClick"],bs={class:"product-price-detail"},ws={class:"code"},$s={key:0,class:"price-sale code-old"},ks={class:"row"},Ts={class:"container intro-product-wrap"},xs={class:"content-intro-product"},Ss={class:"row",style:{position:"relative"}},Es={class:"col-xs-3"},Os={class:"product-detail-webimage"},Cs=["src"],Ds={class:"col-xs-9"},Ps={class:"product-detail-content"},Ns={class:"product-detail-infor"},Rs={class:"product-price-detail"},Ms={class:"price"},As={key:0,class:"price price-sale old-price"},Is=["onClick"],js=["data-id"],Ls={class:"contact"},Vs={class:"contactTxt"},qs=Tt({__name:"ServicePriceScreen",props:{dataFeeService:{required:!0}},setup(i){const t=M(),e=M(""),s=M([]),n=M([]),r=M(!1),a=M(!1),c=M({}),u=M(0),h=i,m=()=>{u.value=window.scrollY},f=_=>{p(_)},x=()=>{r.value=!1,setTimeout(()=>{window.scroll({top:u.value,left:0})},100)},y=()=>{t.value.forEach(_=>{_.item.forEach(v=>{const T=`product-item-${v.id}`;s.value.forEach(C=>{C.id==T&&(v.firstHeight=C.offsetHeight,C.style.height=v.firstHeight+"px")})})})},S=(_,v)=>{if(window.innerWidth<768){m(),r.value=!0,c.value=v;return}_.item.forEach(T=>{T.id===v.id?T.isDetail=!0:T.isDetail=!1}),t.value.forEach(T=>{_.id!=T.id&&T.item.forEach(C=>{C.isDetail=!1})}),setTimeout(()=>{const T=`product-item-${v.id}`;let C=n.value[0].offsetHeight+56+"px";window.innerWidth<1200&&(C=n.value[0].offsetHeight+48+"px"),s.value.forEach(N=>{if(N.id==T){N.style.marginBottom=C,n.value[0].style.top=N.offsetTop+N.clientHeight+"px";let Y=N.getBoundingClientRect().top+window.scrollY+n.value[0].offsetHeight/2-100;window.scrollTo({top:Y,behavior:"smooth"})}else N.style.marginBottom="24px"})},100)},w=_=>{_.isDetail=!1;const v=`product-item-${_.id}`;s.value.forEach(T=>{T.id===v&&(T.style.marginBottom="24px")}
5)},b=async()=>{if(h.dataFeeService&&typeof h.dataFeeService.products<"u"){const _=await qt.getProductByIds(h.dataFeeService.products);_.success&&(t.value=_.data)}},l=M(!1),p=_=>{e.value=_,l.value=!l.value},k=wt(),P=()=>{k.toggleModalRegister(!0),document.body.classList.add("wrap-register-mobile")};return ot(async()=>{await b(),window.innerWidth<768&&(a.value=!0),window.addEventListener("resize",()=>{window.innerWidth<768?a.value=!0:a.value=!1}),setTimeout(()=>{y()},500)}),at(()=>{window.removeEventListener("resize",()=>{})}),xt(l,_=>{_?document.body.classList.add("body-hidden"):document.body.classList.remove("body-hidden")}),(_,v)=>{const T=se,C=ts,N=pt("font-awesome-icon"),Y=dt,E=Vt,V=es;return d(),g(I,null,[D(r)?(d(),nt(T,{key:0,product:D(c),onClose:x,onSubmit:f},null,8,["product"])):R("",!0),h.dataFeeService?(d(),g("div",ss,[lt(o("div",ns,v[0]||(v[0]=[o("div",{class:"container page-banner-content"},[o("div",{class:"row priceservice-intro"},[o("div",{class:"text-banner"},[H(" Thảnh thơi bán hàng "),o("br"),H(" chỉ từ "),o("span",{class:"color-secondary"},"8.000đ"),H("/ngày ")])])],-1)]),512),[[ct,!D(r)]]),lt(o("div",is,[j(C,{"data-fee-service":h.dataFeeService},null,8,["data-fee-service"]),o("div",rs,[o("div",os,[v[1]||(v[1]=o("p",{class:"price-title"},"Thiết bị hỗ trợ bán hàng",-1)),(d(!0),g(I,null,L(D(t),(q,Q)=>(d(),g("div",{key:Q,"data-id":Q,class:"product-category position-relative"},[o("div",ls,[o("span",cs,O(q.title),1)]),o("div",us,[(d(!0),g(I,null,L(q.item,($,J)=>(d(),g("div",{key:J,"data-id":J,class:"col-6 col-lg-4 col-xl-3 product-item",id:`product-item-${$.id}`,ref_for:!0,ref_key:"itemRefs",ref:s,onClick:G=>S(q,$)},[o("div",{class:K(["product-price",$.isDetail?"border-primary":""])},[o("div",ps,[o("span",{class:"kv-btn-price kv-btn-price-now",onClick:G=>p($.name)},"Mua ngay",8,ds),o("span",{class:"kv-btn-price","data-id":"",onClick:G=>S(q,$)},"Xem chi tiết",8,fs)]),o("div",ms,[o("div",_s,[o("img",{src:$.img,alt:"phan cung page phi dich vu"},null,8,gs)])]),o("div",vs,[o("span",{class:"name-product-price",onClick:G=>S(q,$)},O($.name),9,ys),o("div",bs,[o("p",ws,O($.price_sale?$.price_sale:$.price),1),o("p",null,O($.warranty),1)]),$.price_sale?(d(),g("p",$s,O($.price),1)):R("",!0)])],2)],8,hs))),128))]),o("div",ks,[(d(!0),g(I,null,L(q.item,($,J)=>(d(),g("div",{key:J},[$.isDetail?(d(),g("div",{key:0,class:"intro-product",ref_for:!0,ref_key:"itemDetailRefs",ref:n},[o("div",Ts,[o("div",xs,[o("div",Ss,[j(Y,null,{default:st(()=>[j(N,{icon:"fa-light fa-xmark",onClick:G=>w($)},null,8,["onClick"])]),_:2},1024),o("div",Es,[o("div",Os,[o("img",{src:$.img,alt:"phan cung chi tiet page phi dich vu"},null,8,Cs)])]),o("div",Ds,[o("div",Ps,[o("div",Ns,[o("h3",null,O($.name),1),o("div",Rs,[o("p",Ms,O($.price_sale?$.price_sale:$.price),1),$.price_sale?(d(),g("p",As,O($.price),1)):R("",!0)])]),o("span",{class:"kv-btn-price kv-btn-price-now",onClick:G=>p($.name)},"Mua ngay",8,Is)]),o("ul",null,[(d(!0),g(I,null,L($.info,(G,mt)=>(d(),g("li",{key:mt,"data-id":mt},[o("p",null,O(G),1)],8,js))),128))]),o("p",Ls,[o("span",Vs,O($.contact),1)])])])])])],512)):R("",!0)]))),128))])],8,as))),128))])])],512),[[ct,!D(r)]]),lt(j(E,{onTogglePopupRegister:P},null,512),[[ct,!D(r)]]),D(l)?(d(),nt(V,{key:0,onToggle:p,"product-name":D(e)},null,8,["product-name"])):R("",!0),o("div",{class:K(["bg-overflow",D(l)?"d-block":""])},null,2)])):R("",!0)],64)}}}),Bs={key:0},Zs=Tt({__name:"index",setup(i){Ft({title:"KiotViet - Phần mềm quản lý bán hàng Phổ Biến Nhất",ogTitle:"KiotViet - Phần mềm quản lý bán hàng Phổ Biến Nhất",description:"Hơn 300.000 cửa hàng đang sử dụng phần mềm quản lý bán hàng KiotViet để quản lý hằng ngày, Giao diện Đơn giản, Dễ dùng, Tiết kiệm chi phí, Dùng Thử Miễn Phí Ngay",ogDescription:"Hơn 300.000 cửa hàng đang sử dụng phần mềm quản lý bán hàng KiotViet để quản lý hằng ngày, Giao diện Đơn giản, Dễ dùng, Tiết kiệm chi phí, Dùng Thử Miễn Phí Ngay",ogImage:"https://cdn-kvweb.kiotviet.vn/kiotviet-website/wp-content/uploads/2023/09/27050032/pricing.jpg"});const t=bt();at(()=>{t.setLayout()});const e=At();e.path.split("/").filter(c=>c!=="");const s=e.params.nganh_hang;ot(async()=>
5{t.setBackGroundTransparent(!1),await a(),r.value||It({statusCode:404,statusMessage:"Forbidden"})});const n=M(!1),r=M(null),a=async()=>{const c=await Bt.getIndustryBySlug(s);c&&c.success&&(r.value=c.data,n.value=!0)};return xt(n,c=>{c&&jt()}),(c,u)=>{const h=Rt;return d(),g(I,null,[D(n)?(d(),g("div",Bs,[j(qs,{"data-fee-service":D(r)},null,8,["data-fee-service"])])):R("",!0),D(n)?R("",!0):(d(),nt(h,{key:1}))],64)}}});export{Zs as default};

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.