vendor: 8,528 bytes, line 1
1!function(e,r){"object"==typeof exports&&"object"==typeof module?module.exports=r():"function"==typeof define&&define.amd?define([],r):"object"==typeof exports?exports.vanillaTextMask=r():e.vanillaTextMask=r()}(this,function(){return function(e){function r(n){if(t[n])return t[n].exports;var o=t[n]={exports:{},id:n,loaded:!1};return e[n].call(o.exports,o,o.exports,r),o.loaded=!0,o.exports}var t={};return r.m=e,r.c=t,r.p="",r(0)}([function(e,r,t){"use strict";function n(e){return e&&e.__esModule?e:{default:e}}function o(e){var r=e.inputElement,t=(0,u.default)(e),n=function(e){var r=e.target.value;return t.update(r)};return r.addEventListener("input",n),t.update(r.value),{textMaskInputElement:t,destroy:function(){r.removeEventListener("input",n)}}}Object.defineProperty(r,"__esModule",{value:!0}),r.conformToMask=void 0,r.maskInput=o;var i=t(2);Object.defineProperty(r,"conformToMask",{enumerable:!0,get:function(){return n(i).default}});var a=t(5),u=n(a);r.default=o},function(e,r){"use strict";Object.defineProperty(r,"__esModule",{value:!0}),r.placeholderChar="_",r.strFunction="function"},function(e,r,t){"use strict";function n(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:l,r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:u,t=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if(!(0,i.isArray)(r)){if(("undefined"==typeof r?"undefined":o(r))!==a.strFunction)throw new Error("Text-mask:conformToMask; The mask property must be an array.");r=r(e,t),r=(0,i.processCaretTraps)(r).maskWithoutCaretTraps}var n=t.guide,s=void 0===n||n,f=t.previousConformedValue,d=void 0===f?l:f,c=t.placeholderChar,p=void 0===c?a.placeholderChar:c,v=t.placeholder,h=void 0===v?(0,i.convertMaskToPlaceholder)(r,p):v,m=t.currentCaretPosition,y=t.keepCharPositions,g=s===!1&&void 0!==d,b=e.length,C=d.length,k=h.length,x=r.length,P=b-C,T=P>0,O=m+(T?-P:0),M=O+Math.abs(P);if(y===!0&&!T){for(var w=l,S=O;S<M;S++)h[S]===p&&(w+=p);e=e.slice(0,O)+w+e.slice(O,b)}for(var _=e.split(l).map(function(e,r){return{char:e,isNew:r>=O&&r<M}}),j=b-1;j>=0;j--){var V=_[j].char;if(V!==p){var A=j>=O&&C===x;V===h[A?j-P:j]&&_.splice(j,1)}}var E=l,N=!1;e:for(var F=0;F<k;F++){var I=h[F];if(I===p){if(_.length>0)for(;_.length>0;){var L=_.shift(),R=L.char,J=L.isNew;if(R===p&&g!==!0){E+=p;continue e}if(r[F].test(R)){if(y===!0&&J!==!1&&d!==l&&s!==!1&&T){for(var W=_.length,q=null,z=0;z<W;z++){var B=_[z];if(B.char!==p&&B.isNew===!1)break;if(B.char===p){q=z;break}}null!==q?(E+=R,_.splice(q,1)):F--}else E+=R;continue e}N=!0}g===!1&&(E+=h.substr(F,k));break}E+=I}if(g&&T===!1){for(var D=null,G=0;G<E.length;G++)h[G]===p&&(D=G);E=null!==D?E.substr(0,D+1):l}return{conformedValue:E,meta:{someCharsRejected:N}}}Object.defineProperty(r,"__esModule",{value:!0});var o="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e};r.default=n;var i=t(3),a=t(1),u=[],l=""},function(e,r,t){"use strict";function n(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:s,r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:l.placeholderChar;if(!o(e))throw new Error("Text-mask:convertMaskToPlaceholder; The mask property must be an array.");if(e.indexOf(r)!==-1)throw new Error("Placeholder character must not be used as part of the mask. Please specify a character that is not present in your mask as your placeholder character.\n\n"+("The placeholder character that was received is: "+JSON.stringify(r)+"\n\n")+("The mask that was received is: "+JSON.stringify(e)));return e.map(function(e){return e instanceof RegExp?r:e}).join("")}function o(e){return Array.isArray&&Array.isArray(e)||e instanceof Array}function i(e){return"string"==typeof e||e instanceof String}function a(e){return"number"==typeof e&&void 0===e.length&&!isNaN(e)}function u(e){for(var r=[],t=void 0;t=e.indexOf(f),t!==-1;)r.push(t),e.splice(t,1);return{maskWithoutCaretTraps:e,indexes:r}}Object.defineProperty(r,"__esModule",{value:!0}),r.convertMaskToPlaceholder=n,r.isArray=o,r.isString=i,r.isNumber=a,r.processCaretTraps=u;var l=t(1),s=[],f="[]"},function(e,r){"use strict";function t(e){var r=e.previousConformedValue,t=void 0===r?o:r,i=e.previousPlaceholder,a=void 0===i?o:i,u=e.currentCaretPosition,l=void 0===u?0:u,s=e.conformedValue,f=e.rawValue,d=e.placeholderChar,c=e.placeholder,p=e.indexesOfPipedChars,v=void 0===p?n:p,h=e.caretTrapIndexes,m=void 0===h?n:h;if(0===l||!f.length)return 0;var y=f.length,g=t.length,b=c.length,C=s.length,k=y-g,x=k>0,P=0===g,T=k>1&&!x&&!P;if(T)return l;var O=x&&(t===s||s===c),M=0,w=void 0,S=void 0;if(O)M=l-k;else{var _=s.toLowerCase(),j=f.toLowerCase(),V=j.substr(0,l).split(o),A=V.filter(function(e){return _.indexOf(e)!==-1});S=A[A.length-1];var E=a.substr(0,A.length).split(o).filter(function(e){return e!==d}).length,N=c.substr(0,A.length).split(o).filter(function(e){return e!==d}).length,F=N!==E,I=void 0!==a[A.length-1]&&void 0!==c[A.length-2]&&a[A.length-1]!==d&&a[A.length-1]!==c[A.length-1]&&a[A.length-1]===c[A.length-2];!x&&(F||I)&&E>0&&c.indexOf(S)>-1&&void 0!==f[l]&&(w=!0,S=f[l]);for(var L=v.map(function(e){return _[e]}),R=L.filter(function(e){return e===S}).length,J=A.filter(function(e){return e===S}).length,W=c.substr(0,c.indexOf(d)).split(o).filter(function(e,r){return e===S&&f[r]!==e}).length,q=W+J+R+(w?1:0),z=0,B=0;B<C;B++){var D=_[B];if(M=B+1,D===S&&z++,z>=q)break}}if(x){for(var G=M,H=M;H<=b;H++)if(c[H]===d&&(G=H),c[H]===d||m.indexOf(H)!==-1||H===b)return G}else if(w){for(var K=M-1;K>=0;K--)if(s[K]===S||m.indexOf(K)!==-1||0===K)return K}else for(var Q=M;Q>=0;Q--)if(c[Q-1]===d||m.indexOf(Q)!==-1||0===Q)return Q}Object.defineProperty(r,"__esModule",{value:!0}),r.default=t;var n=[],o=""},function(e,r,t){"use strict";function n(e){return e&&e.__esModule?e:{default:e}}function o(e){var r={previousConformedValue:void 0,previousPlaceholder:void 0};return{state:r,update:function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:e,o=n.inputElement,s=n.mask,d=n.guide,m=n.pipe,g=n.placeholderChar,b=void 0===g?v.placeholderChar:g,C=n.keepCharPositions,k=void 0!==C&&C,x=n.showMask,P=void 0!==x&&x;if("undefined"==typeof t&&(t=o.value),t!==r.previousConformedValue){("undefined"==typeof s?"undefined":l(s))===y&&void 0!==s.pipe&&void 0!==s.mask&&(m=s.pipe,s=s.mask);var T=void 0,O=void 0;if(s instanceof Array&&(T=(0,p.convertMaskToPlaceholder)(s,b)),s!==!1){var M=a(t),w=o.selectionEnd,S=r.previousConformedValue,_=r.previousPlaceholder,j=void 0;if(("undefined"==typeof s?"undefined":l(s))===v.strFunction){if(O=s(M,{currentCaretPosition:w,previousConformedValue:S,placeholderChar:b}),O===!1)return;var V=(0,p.processCaretTraps)(O),A=V.maskWithoutCaretTraps,E=V.indexes;O=A,j=E,T=(0,p.convertMaskToPlaceholder)(O,b)}else O=s;var N={previousConformedValue:S,guide:d,placeholderChar:b,pipe:m,placeholder:T,currentCaretPosition:w,keepCharPositions:k},F=(0,c.default)(M,O,N),I=F.conformedValue,L=("undefined"==typeof m?"undefined":l(m))===v.strFunction,R={};L&&(R=m(I,u({rawValue:M},N)),R===!1?R={value:S,rejected:!0}:(0,p.isString)(R)&&(R={value:R}));var J=L?R.value:I,W=(0,f.default)({previousConformedValue:S,previousPlaceholder:_,conformedValue:J,placeholder:T,rawValue:M,currentCaretPosition:w,placeholderChar:b,indexesOfPipedChars:R.indexesOfPipedChars,caretTrapIndexes:j}),q=J===T&&0===W,z=P?T:h,B=q?z:J;r.previousConformedValue=B,r.previousPlaceholder=T,o.value!==B&&(o.value=B,i(o,W))}}}}}function i(e,r){document.activeElement===e&&(g?b(function(){return e.setSelectionRange(r,r,m)},0):e.setSelectionRange(r,r,m))}function a(e){if((0,p.isString)(e))return e;if((0,p.isNumber)(e))return String(e);if(void 0===e||null===e)return h;throw new Error("The 'value' provided to Text Mask needs to be a string or a number. The value received was:\n\n "+JSON.stringify(e))}Object.defineProperty(r,"__esModule",{value:!0});var u=Object.assign||function(e){for(var r=1;r<arguments.length;r++){var t=arguments[r];for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])}return e},l="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e};r.default=o;var s=t(4),f=n(s),d=t(2),c=n(d),p=t(3),v=t(1),h="",m="none",y="object",g="undefined"!=typeof navigator&&/Android/i.test(navigator.userAgent),b="undefined"!=typeof requestAnimationFrame?requestAnimationFrame:setTimeout}])});
1app.profileFormUserpicComponent={props:['user','uploadUrl'],components:{uploadComponent:app.commonUploadComponent,spinner:app.commonSpinnerComponent,},data(){return{percent:'0%',uploading:!1,preview:''}},computed:{src(){return this.preview||this.user.userpic}},methods:{onError(){this.uploading=!1},onSuccess(response){this.preview=response.image.preview;this.$emit('userpicUploaded',response.image);this.uploading=!1},onProgress(progress){this.uploading=!0;this.percent=progress.value+'%'}},template:` 2 <div class="pUserpic" :class="{'pUserpic--filled': !!src}"> 3 4 <uploadComponent 5 @progress="onProgress" 6 @error="onError" 7 @success="onSuccess" 8 :multiple="false" 9 :url="uploadUrl"> 10 11 <div v-if="uploading" 12 class="pUserpic__imgUploading"> 13 <spinner/> 14 <div class="pUserpic__imgUploadingPercent">{{percent}}</div> 15 16 </div> 17 18 <template v-if="src"> 19 <img :src="src" class="pUserpic__img"> 20 21 <div class="pUserpic__add"> 22 <svg width="22" height="21" viewBox="0 0 22 21" fill="none"> 23 <path fill-rule="evenodd" clip-rule="evenodd" d="M2.64724 7V5.25H0.882415C0.397087 5.25 0 4.85625 0 4.375C0 3.89375 0.397087 3.5 0.882415 3.5H2.64724V1.75C2.64724 1.26875 3.04433 0.875 3.52966 0.875C4.01499 0.875 4.41208 1.26875 4.41208 1.75V3.5H6.17691C6.66223 3.5 7.05932 3.89375 7.05932 4.375C7.05932 4.85625 6.66223 5.25 6.17691 5.25H4.41208V7C4.41208 7.48125 4.01499 7.875 3.52966 7.875C3.04433 7.875 2.64724 7.48125 2.64724 7ZM11.4714 14.875C10.0094 14.875 8.82415 13.6997 8.82415 12.25C8.82415 10.8003 10.0094 9.625 11.4714 9.625C12.9334 9.625 14.1186 10.8003 14.1186 12.25C14.1186 13.6997 12.9334 14.875 11.4714 14.875ZM18.5307 5.25C19.5014 5.25 20.2955 6.0375 20.2955 7V17.5C20.2955 18.4625 19.5014 19.25 18.5307 19.25H4.41208C3.44142 19.25 2.64724 18.4625 2.64724 17.5V8.505C2.91197 8.65375 3.20317 8.75 3.52966 8.75C4.50032 8.75 5.29449 7.9625 5.29449 7V6.125H6.17691C7.14756 6.125 7.94173 5.3375 7.94173 4.375C7.94173 4.05125 7.84467 3.7625 7.69466 3.5H13.3421C13.8363 3.5 14.3128 3.71 14.6393 4.06875L15.7335 5.25H18.5307ZM11.4714 16.625C13.9069 16.625 15.8835 14.665 15.8835 12.25C15.8835 9.835 13.9069 7.875 11.4714 7.875C9.03593 7.875 7.05932 9.835 7.05932 12.25C7.05932 14.665 9.03593 16.625 11.4714 16.625Z" fill="#FCF6ED"/> 24 </svg> 25 </div> 26 27 </template> 28 29 30 31 <svg v-else width="88" height="88" viewBox="0 0 88 88" fill="none" style="cursor: pointer"> 32 <g clip-path="url(#clip0_2001_100163)"> 33 <rect width="88" height="88" rx="44" fill="var(--profileUserpicEmptyIconBg)"/> 34 <circle cx="44" cy="94.1211" r="38" fill="var(--profileUserpicEmptyIconFg)"/> 35 <circle cx="44.0001" cy="37.6388" r="16.4337" fill="var(--profileUserpicEmptyIconFg)"/> 36 </g> 37 <defs> 38 <clipPath id="clip0_2001_100163"> 39 <rect width="88" height="88" rx="44" fill="white"/> 40 </clipPath> 41 </defs> 42 </svg> 43 </uploadComponent> 44 45 </div> 46 47 `};app.profileFormSexComponent={components:{formInput:app.commonInputComponent,},props:['loc','value'],data(){return{FEMALE:1,MALE:2,}},computed:{caption(){return this.loc['profile/sex']},locFemale(){return this.loc['profile/female']},locMale(){return this.loc['profile/male']},isMaleSelected(){return this.value===this.MALE},isFemaleSelected(){return this.value===this.FEMALE}},methods:{onSelect(type){this.$emit('input',type)}},template:` 48 49 <div class="pSex"> 50 <div class="pSex__item" :class="{'pSex__item--selected': isMaleSelected}" @click="onSelect(MALE)"> 51 <div class="pSex__input"><formInput :caption="caption" tabindex="-1" :value="locMale" /></div> 52 <div class="pSex__ico"></div> 53 </div> 54 55 <div class="pSex__item" :class="{'pSex__item--selected': isFemaleSelected}" @click="onSelect(FEMALE)"> 56 <div class="pSex__input"><formInput :caption="caption" tabindex="-1" :value="locFemale" /></div> 57 <div class="pSex__ico"></div> 58 </div> 59 60 </div> 61 62 `};app.profileFormReferrerComponent={components:{formInput:app.commonInputComponent,},props:['loc','value'],mounted(){Highway.subscribe('barcodeScanned',(response)=>{this.$emit('input',response.data)})},computed:{caption(){return this.loc['auth/referrerPhone']}
62},methods:{onInput(){this.$emit('input',this.value)},scanQr(){Highway.navigate('scanner')}},template:` 63 <div class="pRef"> 64 65 <div class="pRef__input"> 66 <formInput :caption="caption" inputmode="tel" @input="onInput" v-model="value" /> 67 </div> 68 69 <div class="pRef__scan" @click="scanQr" v-press> 70 <svg class="pRef__scanIco" width="90" height="90" viewBox="0 0 90 90" fill="none"> 71 <path d="M56.5 10.5H72.5C76.366 10.5 79.5 13.634 79.5 17.5V29.6667H71.8333V18.1667H56.5V10.5ZM33.5 10.5V18.1667H18.1667V29.6667H10.5V17.5C10.5 13.634 13.634 10.5 17.5 10.5H33.5ZM56.5 79.5V71.8333H71.8333V60.3333H79.5V72.5C79.5 76.366 76.366 79.5 72.5 79.5H56.5ZM33.5 79.5H17.5C13.634 79.5 10.5 76.366 10.5 72.5V60.3333H18.1667V71.8333H33.5V79.5ZM10.5 45C10.5 42.8829 12.2162 41.1667 14.3333 41.1667H75.6667C77.7838 41.1667 79.5 42.8829 79.5 45C79.5 47.1171 77.7838 48.8333 75.6667 48.8333H14.3333C12.2162 48.8333 10.5 47.1171 10.5 45Z" fill="currentColor"/> 72 </svg> 73 </div> 74 75 </div> 76 `};app.profileFormFamilyComponent={components:{formInput:app.commonInputComponent,},props:['loc','value'],created(){if(this.value.length<5){this.value.push({id:0,date:''})}},computed:{locAbout(){return this.loc['profile/family/birthday/hint']},caption(){return this.loc['profile/birthdayOfALovedOne']}},methods:{onInput(index){const currentInput=this.value[index];const nextInput=this.value[index+1];if(currentInput.date.length===11){return} 77if(currentInput.date.length===10&&!nextInput&&index!==4){this.value.push({id:0,date:''})}else if(nextInput&&nextInput.date===''){this.value.splice(index+1,1)} 78this.$emit('input',this.value)},},directives:{mask(el){vanillaTextMask.maskInput({inputElement:el.querySelector('input'),guide:!1,mask:[/\d/,/\d/,'.',/\d/,/\d/,'.',/\d/,/\d/,/\d/,/\d/]})}},template:` 79 80 <div class="pFamily"> 81 82 <div class="pFamily__about"> 83 84 <svg class="pFamily__ico" width="29" height="29" viewBox="0 0 29 29" fill="none"> 85 <path d="M18.7337 22.5446C21.1177 21.574 22.6531 19.8114 22.1631 18.6078C21.6731 17.4042 19.3432 17.2154 16.9592 18.1859C14.5752 19.1565 13.0398 20.9191 13.5298 22.1227C14.0199 23.3263 16.3497 23.5152 18.7337 22.5446Z" fill="#378B4E"/> 86 <path d="M13.5334 20.8859C13.8914 20.0066 12.7696 18.7189 11.0279 18.0097C9.28609 17.3006 7.58387 17.4386 7.22587 18.318C6.86786 19.1973 7.98963 20.485 9.73141 21.1941C11.4732 21.9033 13.1754 21.7653 13.5334 20.8859Z" fill="#378B4E"/> 87 <path fill-rule="evenodd" clip-rule="evenodd" d="M13.0283 14.4736C13.0283 14.1921 13.2565 13.9639 13.5381 13.9639C13.8196 13.9639 14.0479 14.1921 14.0479 14.4736V27.8388C14.0479 28.1203 13.8196 28.3485 13.5381 28.3485C13.2565 28.3485 13.0283 28.1203 13.0283 27.8388V14.4736Z" fill="black"/> 88 <path d="M17.151 7.80819C17.1589 3.86065 15.5496 0.65731 13.5567 0.653324C11.5637 0.649338 9.94162 3.84622 9.93373 7.79376C9.92583 11.7413 11.5351 14.9446 13.5281 14.9486C15.5211 14.9526 17.1431 11.7557 17.151 7.80819Z" fill="#F96B59"/> 89 <path d="M13.519 14.9502C15.3645 14.1989 15.6542 10.6265 14.1659 6.97106C12.6777 3.31564 9.97519 0.96143 8.12968 1.71279C6.28417 2.46415 5.99453 6.03655 7.48275 9.69197C8.97097 13.3474 11.6735 15.7016 13.519 14.9502Z" fill="#F74933"/> 90 <path d="M19.6298 9.75411C21.1614 6.11448 20.9134 2.53711 19.0759 1.76383C17.2383 0.990546 14.5071 3.31418 12.9754 6.95381C11.4438 10.5934 11.6918 14.1708 13.5293 14.9441C15.3668 15.7174 18.0981 13.3937 19.6298 9.75411Z" fill="#DE422E"/> 91 </svg> 92 93 <p class="pFamily__hint">{{locAbout}}</p> 94 </div> 95 96 <div class="pFamily__fields"> 97 98 <div v-for="(dateItem, index) in value" 99 :key="index" 100 class="pFamily__field"> 101 102 <formInput 103 v-mask 104 :caption="caption" 105 v-model="dateItem.date" 106 :disabled="!!dateItem.id"
107 @input="onInput(index)" /> 108 </div> 109 110 </div> 111 112 </div> 113 114 115 `};app.profileFormPolicyComponent={props:['value','loc'],data(){return{checked:!!this.value}},computed:{locPolicy(){return this.loc['auth2/policy'].replace(/\{/g,'<span>').replace(/\}/g,'</span>')},},methods:{onClick(){this.setValue(!this.checked)},setValue(value){this.checked=value;this.$emit('input',value)},navigate(e){if(e.target.nodeName==='SPAN'){if(e.target.previousElementSibling){this.$emit('navigateTerms')}else{this.$emit('navigateOffer')} 116return} 117this.setValue(!this.checked)},},template:` 118 119 <div class="pPolicy" @click="onClick"> 120 121 <div class="pPolicy__checkbox" :class="{'pPolicy__checkbox--checked': checked}"> 122 123 </div> 124 125 <div class="pPolicy__text" @click.stop="navigate" v-html="locPolicy"></div> 126 </div> 127 128 `};app.profileFormSubmitComponent={props:['loc','saving','insets'],computed:{locSave(){return this.loc['btn/save']},insetsStyle(){const height=this.insets?this.insets.bottom:0;return{height:height+'px'}}},methods:{save(){this.$emit('save')}},template:` 129 130 <div class="prfSubmit"> 131 <div class="prfSubmit__button btload" 132 :class="{'btload--loading': saving}" 133 :data-text="locSave" 134 v-press 135 @click="save"> 136 <i class="btload__ico"></i> 137 <i class="btload__ico"></i> 138 <i class="btload__ico"></i> 139 </div> 140 141 <div :style="insetsStyle"></div> 142 </div> 143 144 `};app.profileFormMainComponent={props:['companyId','loc','insets','isWeb'],components:{spinner:app.commonSpinnerComponent,formUserpic:app.profileFormUserpicComponent,formInput:app.commonInputComponent,formSex:app.profileFormSexComponent,formReferrer:app.profileFormReferrerComponent,formFamily:app.profileFormFamilyComponent,formPolicy:app.profileFormPolicyComponent,formSubmit:app.profileFormSubmitComponent,},data(){return{disableBirthDateEdit:!1,disableEmailEdit:!1,loading:!0,loaded:!1,saving:!1,user:null,uploadUrl:null,isShowReferrerPhone:!1,isShowBdatesFamily:!1,policyAccepted:!1,newUserpic:null,}},mounted(){this.fetch()},computed:{locFirstName(){return this.loc['profile/first-name']},locLastName(){return this.loc['profile/surname']},locBirthDate(){return this.loc['profile/birth']},locBirthDateError(){return this.loc['profile/bdate/error']}},methods:{fetch(){this.loading=!0;const payload={meta:{company:this.companyId,}} 145app.fetch('/profile/form/get2',payload,(res)=>{if(res.error){this.$emit('error',res.message);return} 146this.user=res.user;this.uploadUrl=res.uploadUrl;this.isShowReferrerPhone=res.isShowReferrerPhone;this.isShowBdatesFamily=res.isShowBdatesFamily;if(this.user.bdate){this.disableBirthDateEdit=!0} 147if(!this.user.phone){this.disableEmailEdit=!0} 148this.loading=!1;setTimeout(()=>{this.loaded=!0},30)})},isValidDate(dateString){const splitDateString=dateString.trim();const regex=/^\d{2}\.\d{2}\.\d{4}$/;if(!regex.test(splitDateString)){return!1} 149const[day,month,year]=splitDateString.split('.').map(Number);const date=new Date(year,month-1,day);if(date.getFullYear()!==year||date.getMonth()+1!==month||date.getDate()!==day){return!1} 150if(month===2&&day===29){if((year%4!==0)||(year%100===0&&year%400!==0)){return!1}} 151return!0},save(){if(this.saving){return} 152if(!this.isValidDate(this.user.bdate)){this.$emit('alert',this.locBirthDateError) 153return} 154this.saving=!0;const user={...this.user};user.bdatesFamily=user.bdatesFamily.filter(item=>!!item.date);const payload={meta:{company:this.companyId,},user:user,policyAccepted:this.policyAccepted,newUserpic:this.newUserpic,} 155app.fetch('/profile/form/save2',payload,(res)=>{if(res.error){this.$emit('alert',res.message);this.saving=!1;return} 156if(res.data&&res.data.credentials){this.$emit('updateCredentials',res.data.credentials);if(this.newUserpic){this.$emit('newUserpic',this.newUserpic)}} 157PubSub.publish('refetchProfile');this.$emit('close')})},navigateOffer(){this.$emit('navigateOffer')},navigateTerms(){this.$emit('navigateTerms')},userpicUploaded(userpic){this.newUserpic=userpic}},directives:{mask(el){vanillaTextMask.maskInput({inputElement:el.querySelector('input'),guide:!1,mask:[/\d/,/\d/,'.',/\d/,/\d/,'.',/\d/,/\d/,/\d/,/\d/]})}},template:` 158<div class="pForm" :class="{'pForm--web': isWeb}"> 159 160 161 <div v-if="loading" class="spinner"> 162 <spinner /> 163 </div> 164 165 <div v-else class="pForm__wrap" :class="{'pForm__wrap--loaded': loaded}"> 166 167 <div class="pForm__content"> 168 169 <div class="pForm__userpic"> 170 <formUserpic 171 :user="user" 172 :uploadUrl="uploadUrl" 173 @userpicUploaded="userpicUploaded"/> 174 </div> 175 176 <div class="pForm__field"> 177 <formInput :caption="locFirstName" v-model="user.firstName"/> 178 </div> 179 180 <div class="pForm__field"> 181 <formInput :caption="locLastName" v-model="user.lastName"/> 182 </div> 183 184 <div class="pForm__field"> 185 <formSex :loc="loc" v-model="user.sex"/> 186 </div> 187 188 <div class="pForm__field"> 189 <formInput 190 :caption="locBirthDate" 191 v-mask 192 v-model="user.bdate" 193 :disabled="disableBirthDateEdit"/> 194 </div> 195 196 <div class="pForm__field"> 197 <formInput caption="Email" inputmode="email" v-model="user.email" :disabled="disableEmailEdit"/> 198 </div> 199 200 <div v-if="isShowReferrerPhone" class="pForm__field"> 201 <formReferrer :loc="loc" v-model="user.referrerPhone"/> 202 </div> 203 204 <div v-if="isShowBdatesFamily" class="pForm__field pForm__field--bdates"> 205 <formFamily :loc="loc" v-model="user.bdatesFamily"/> 206 </div> 207 208 <div class="pForm__field pForm__field--policy"> 209 <formPolicy 210 :loc="loc" 211 @navigateOffer="navigateOffer" 212 @navigateTerms="navigateTerms" 213 v-model="policyAccepted"/> 214 </div> 215 </div> 216 217 218 <div class="pForm__submit"> 219 <div class="pForm__submitBg"> 220 <formSubmit 221 :loc="loc" 222 :saving="saving" 223 :insets="insets" 224 @save="save" 225 /> 226 </div> 227 </div> 228 229 </div> 230 231</div> 232 `};app.addModule(()=>{PubSub.subscribe('showProfileForm',()=>{app.openViewer({mobile:{withTick:!0,maxHeight:'calc(100dvh - 20px)'},desktop:{maxWidth:'400px'},component:{components:{profileForm:app.profileFormMainComponent,},computed:{...Vuex.mapState(['loc','company']),locTitle(){return this.loc['tab/profile']}},methods:{close(){this.$emit('close')},onError(){this.close()},onAlert(message){app.growl(message,'danger')},navigateOffer(){window.open("/offer?version2","_blank")},navigateTerms(){window.open("/policy","_blank")},updateCredentials(credentials){},newUserpic(userpic){},},store:app.store,template:` 233 <div> 234 <profileForm 235 :companyId="company.id" 236 :loc="loc" 237 :isWeb="true" 238 @close="close" 239 @navigateOffer="navigateOffer" 240 @navigateTerms="navigateTerms" 241 @updateCredentials="updateCredentials" 242 @newUserpic="newUserpic" 243 @alert="onAlert" 244 @error="onError" 245 /> 246 </div> 247`}})})});
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.