{"version":3,"sources":["webpack:///./src/views/modules/ultils/status.js","webpack:///./node_modules/core-js/internals/object-get-own-property-descriptor.js","webpack:///./src/views/modules/ultils/Form/components/Select/WidgetSelect.scss?97aa","webpack:///./node_modules/core-js/internals/ie8-dom-define.js","webpack:///./src/views/modules/ultils/SearchList/SearchList.vue?1a37","webpack:///./node_modules/core-js/modules/es.array.reduce.js","webpack:///./src/@core/components/delete-dialog/DeleteDialog.vue?153d","webpack:///./node_modules/core-js/internals/a-function.js","webpack:///./node_modules/node-libs-browser/node_modules/buffer/index.js","webpack:///./node_modules/core-js/internals/require-object-coercible.js","webpack:///./src/views/modules/ultils/Form/components/String/WidgetString.vue?86c0","webpack:///src/views/modules/ultils/Form/components/String/WidgetString.vue","webpack:///./src/views/modules/ultils/Form/components/String/WidgetString.vue?a610","webpack:///./src/views/modules/ultils/Form/components/String/WidgetString.vue?ae64","webpack:///./node_modules/base64-js/index.js","webpack:///./src/views/modules/ultils/Table/EzTable.js","webpack:///./src/views/modules/ultils/Section/SectionTransformTable.vue?851c","webpack:///src/views/modules/ultils/Section/SectionTransformTable.vue","webpack:///./src/views/modules/ultils/Section/SectionTransformTable.vue?3167","webpack:///./src/views/modules/ultils/Section/SectionTransformTable.vue?ea08","webpack:///./node_modules/core-js/internals/to-absolute-index.js","webpack:///./node_modules/core-js/internals/export.js","webpack:///./src/views/modules/ultils/Button/PermissionButton.vue?7fc8","webpack:///src/views/modules/ultils/Button/PermissionButton.vue","webpack:///./src/views/modules/ultils/Button/PermissionButton.vue?855e","webpack:///./src/views/modules/ultils/Button/PermissionButton.vue","webpack:///./node_modules/core-js/internals/object-get-own-property-names.js","webpack:///./node_modules/core-js/internals/engine-v8-version.js","webpack:///./src/views/modules/ultils/Form/components/Cleave/WidgetCleave.vue?342c","webpack:///src/views/modules/ultils/Form/components/Cleave/WidgetCleave.vue","webpack:///./src/views/modules/ultils/Form/components/Cleave/WidgetCleave.vue?a932","webpack:///./src/views/modules/ultils/Form/components/Cleave/WidgetCleave.vue","webpack:///./node_modules/core-js/internals/engine-user-agent.js","webpack:///./src/views/modules/ultils/Sidebar/SidebarSection.vue?310d","webpack:///./src/views/modules/ListPayAp/components/ModalListPayAp.vue?493c","webpack:///src/views/modules/ListPayAp/components/ModalListPayAp.vue","webpack:///./src/views/modules/ListPayAp/components/ModalListPayAp.vue?d4a8","webpack:///./src/views/modules/ListPayAp/components/ModalListPayAp.vue?6295","webpack:///./node_modules/decimal.js/decimal.js","webpack:///./node_modules/core-js/internals/path.js","webpack:///./node_modules/core-js/internals/indexed-object.js","webpack:///./src/views/modules/ultils/General/GeneralInfo.vue?d4a5","webpack:///src/views/modules/ultils/General/GeneralInfo.vue","webpack:///./src/views/modules/ultils/General/GeneralInfo.vue?4cfd","webpack:///./src/views/modules/ultils/General/GeneralInfo.vue","webpack:///./node_modules/core-js/internals/array-includes.js","webpack:///./node_modules/core-js/internals/to-length.js","webpack:///./node_modules/core-js/internals/has.js","webpack:///./node_modules/core-js/internals/shared.js","webpack:///./node_modules/core-js/internals/own-keys.js","webpack:///./node_modules/core-js/internals/create-property-descriptor.js","webpack:///./node_modules/core-js/internals/engine-is-node.js","webpack:///./node_modules/core-js/internals/internal-state.js","webpack:///./node_modules/core-js/internals/redefine.js","webpack:///./src/views/modules/ultils/PaymentForm/PaymentForDistribution.vue?467f","webpack:///./src/views/modules/ultils/Sidebar/SidebarSection.vue?79aa","webpack:///src/views/modules/ultils/Sidebar/SidebarSection.vue","webpack:///./src/views/modules/ultils/Sidebar/SidebarSection.vue?af18","webpack:///./src/views/modules/ultils/Sidebar/SidebarSection.vue?c79d","webpack:///./node_modules/core-js/internals/object-get-own-property-symbols.js","webpack:///./node_modules/core-js/internals/enum-bug-keys.js","webpack:///./src/views/modules/ultils/Button/LoadingButton.vue?e572","webpack:///src/views/modules/ultils/Button/LoadingButton.vue","webpack:///./src/views/modules/ultils/Button/LoadingButton.vue?e8ba","webpack:///./src/views/modules/ultils/Button/LoadingButton.vue","webpack:///./node_modules/core-js/internals/to-object.js","webpack:///./src/@core/components/delete-dialog/DeleteDialog.vue?e963","webpack:///src/@core/components/delete-dialog/DeleteDialog.vue","webpack:///./src/@core/components/delete-dialog/DeleteDialog.vue?a6bd","webpack:///./src/@core/components/delete-dialog/DeleteDialog.vue","webpack:///./node_modules/core-js/internals/native-weak-map.js","webpack:///./node_modules/core-js/internals/an-object.js","webpack:///./node_modules/core-js/internals/descriptors.js","webpack:///./src/views/modules/ultils/Form/components/Select/WidgetSelect.vue?6cb8","webpack:///src/views/modules/ultils/Form/components/Select/WidgetSelect.vue","webpack:///./src/views/modules/ultils/Form/components/Select/WidgetSelect.vue?3dfc","webpack:///./src/views/modules/ultils/Form/components/Select/WidgetSelect.vue","webpack:///./src/views/modules/ultils/Table/EzTable.vue?c427","webpack:///./node_modules/core-js/internals/is-object.js","webpack:///./src/modules/SidebarLabel.vue?28f1","webpack:///src/modules/SidebarLabel.vue","webpack:///./src/modules/SidebarLabel.vue?6af0","webpack:///./src/modules/SidebarLabel.vue?f9c6","webpack:///./node_modules/core-js/internals/inspect-source.js","webpack:///./src/views/modules/ultils/Hooks/useFetch.ts","webpack:///./src/views/modules/ListPayAr/components/SidebarViewPayment/components/ModalBoxAddBill.vue?3a1a","webpack:///./node_modules/core-js/internals/uid.js","webpack:///./node_modules/core-js/internals/create-non-enumerable-property.js","webpack:///./node_modules/ieee754/index.js","webpack:///./src/views/modules/ultils/Form/components/DateTime/WidgetDatetime.vue?27d1","webpack:///src/views/modules/ultils/Form/components/DateTime/WidgetDatetime.vue","webpack:///./src/views/modules/ultils/Form/components/DateTime/WidgetDatetime.vue?edd5","webpack:///./src/views/modules/ultils/Form/components/DateTime/WidgetDatetime.vue","webpack:///./node_modules/core-js/internals/is-forced.js","webpack:///./node_modules/core-js/internals/object-define-property.js","webpack:///./node_modules/core-js/internals/array-method-is-strict.js","webpack:///./node_modules/core-js/internals/to-integer.js","webpack:///./node_modules/core-js/internals/array-method-uses-to-length.js","webpack:///./src/views/modules/ultils/Table/EzTable.vue?cb72","webpack:///./src/views/modules/ultils/Table/EzTable.js?1070","webpack:///./src/views/modules/ultils/Table/EzTable.vue?8555","webpack:///./src/views/modules/ListPayAr/components/SidebarViewPayment/components/ModalBoxAddBill.vue?9aff","webpack:///src/views/modules/ListPayAr/components/SidebarViewPayment/components/ModalBoxAddBill.vue","webpack:///./src/views/modules/ListPayAr/components/SidebarViewPayment/components/ModalBoxAddBill.vue?920f","webpack:///./src/views/modules/ListPayAr/components/SidebarViewPayment/components/ModalBoxAddBill.vue?6744","webpack:///./src/views/modules/ultils/Form/components/FormItem/FormItem.vue?3981","webpack:///./src/views/modules/ultils/Form/components/Separate/WidgetDivider.vue?ecd3","webpack:///src/views/modules/ultils/Form/components/Separate/WidgetDivider.vue","webpack:///./src/views/modules/ultils/Form/components/Separate/WidgetDivider.vue?38c0","webpack:///./src/views/modules/ultils/Form/components/Separate/WidgetDivider.vue","webpack:///src/views/modules/ultils/Form/components/FormItem/FormItem.vue","webpack:///./src/views/modules/ultils/Form/components/FormItem/FormItem.vue?b1d4","webpack:///./src/views/modules/ultils/Form/components/FormItem/FormItem.vue","webpack:///./node_modules/node-libs-browser/node_modules/isarray/index.js","webpack:///./src/modules/SidebarLabel.vue?b8d3","webpack:///./src/views/modules/ultils/SearchList/SearchList.vue?4238","webpack:///src/views/modules/ultils/SearchList/SearchList.vue","webpack:///./src/views/modules/ultils/SearchList/SearchList.vue?efef","webpack:///./src/views/modules/ultils/SearchList/SearchList.vue?42f4","webpack:///./node_modules/core-js/internals/to-primitive.js","webpack:///./src/views/modules/ultils/PaymentForm/PaymentForDistribution.vue?ba03","webpack:///./src/views/modules/ultils/PaymentForm/PaymentForDistribution.js","webpack:///./src/views/modules/ultils/PaymentForm/PaymentForDistribution.js?47ab","webpack:///./src/views/modules/ultils/PaymentForm/PaymentForDistribution.vue","webpack:///./node_modules/core-js/internals/is-pure.js","webpack:///./node_modules/core-js/internals/classof-raw.js","webpack:///./node_modules/core-js/internals/shared-store.js","webpack:///./node_modules/core-js/internals/object-keys-internal.js","webpack:///./src/views/modules/ultils/Section/SectionTransformTable.vue?f1a4","webpack:///./src/views/modules/ListPayAp/ListPayAp.vue?32b8","webpack:///src/views/modules/ListPayAp/ListPayAp.vue","webpack:///./src/views/modules/ListPayAp/ListPayAp.vue?26aa","webpack:///./src/views/modules/ListPayAp/ListPayAp.vue?0f77","webpack:///./node_modules/core-js/internals/document-create-element.js","webpack:///./node_modules/core-js/internals/set-global.js","webpack:///./node_modules/core-js/internals/hidden-keys.js","webpack:///./node_modules/core-js/internals/fails.js","webpack:///./node_modules/core-js/internals/get-built-in.js","webpack:///./node_modules/core-js/internals/object-property-is-enumerable.js","webpack:///./node_modules/core-js/internals/array-reduce.js","webpack:///./node_modules/core-js/internals/global.js","webpack:///./src/views/modules/ultils/Form/FormItems.vue?1984","webpack:///./src/views/modules/ultils/Form/FormItems.js","webpack:///./src/views/modules/ultils/Form/FormItems.js?cb66","webpack:///./src/views/modules/ultils/Form/FormItems.vue","webpack:///./src/views/modules/ultils/Form/components/String/WidgetString.vue?9931","webpack:///./src/views/modules/ListPayAp/ListPayAp.vue?10e9","webpack:///./node_modules/core-js/internals/copy-constructor-properties.js","webpack:///./node_modules/core-js/internals/shared-key.js","webpack:///./src/views/modules/ListPayAp/components/ModalListPayAp.vue?c097","webpack:///./node_modules/core-js/internals/to-indexed-object.js"],"names":["TaUserGroupType","ADMIN","USER","SUPERADMIN","TravelAgentType","AGENT","API","COMPANY","TRADING","convertTransactionType","transactionType","result","ArPaymentStatus","title","value","variant","PaymentDetailTypeStatus","TravelAgentIsOverDraftStatus","SmsDistributionStatus","SmsStatus","DistributionStatus","ArPaymentDistributionStatus","ApPaymentStatus","CommonActiveStatus","convertPaymentDetailTypeStatus","dO","forEach","op","convertTravelAgentIsOverDraftStatus","convertDistributionStatus","convertSmsStatus","convertSmsDistributionStatus","convertCommonActiveStatus","convertArPaymentStatus","convertArPaymentDistributionStatus","convertApPaymentStatus","DESCRIPTORS","propertyIsEnumerableModule","createPropertyDescriptor","toIndexedObject","toPrimitive","has","IE8_DOM_DEFINE","nativeGetOwnPropertyDescriptor","Object","getOwnPropertyDescriptor","exports","f","O","P","error","call","fails","createElement","module","defineProperty","get","a","$","$reduce","left","arrayMethodIsStrict","arrayMethodUsesToLength","CHROME_VERSION","IS_NODE","STRICT_METHOD","USES_TO_LENGTH","1","CHROME_BUG","target","proto","forced","reduce","callbackfn","this","arguments","length","undefined","it","TypeError","String","base64","ieee754","isArray","typedArraySupport","arr","Uint8Array","__proto__","prototype","foo","subarray","byteLength","e","kMaxLength","Buffer","TYPED_ARRAY_SUPPORT","createBuffer","that","RangeError","arg","encodingOrOffset","Error","allocUnsafe","from","ArrayBuffer","fromArrayBuffer","fromString","fromObject","assertSize","size","alloc","fill","encoding","checked","i","string","isEncoding","actual","write","slice","fromArrayLike","array","byteOffset","obj","isBuffer","len","copy","buffer","isnan","type","data","toString","SlowBuffer","isView","loweredCase","utf8ToBytes","base64ToBytes","toLowerCase","slowToString","start","end","hexSlice","utf8Slice","asciiSlice","latin1Slice","base64Slice","utf16leSlice","swap","b","n","m","bidirectionalIndexOf","val","dir","isNaN","arrayIndexOf","indexOf","lastIndexOf","indexSize","arrLength","valLength","read","buf","readUInt16BE","foundIndex","found","j","hexWrite","offset","Number","remaining","strLen","parsed","parseInt","substr","utf8Write","blitBuffer","asciiWrite","asciiToBytes","latin1Write","base64Write","ucs2Write","utf16leToBytes","fromByteArray","Math","min","res","secondByte","thirdByte","fourthByte","tempCodePoint","firstByte","codePoint","bytesPerSequence","push","decodeCodePointsArray","INSPECT_MAX_BYTES","global","poolSize","_augment","Symbol","species","configurable","allocUnsafeSlow","_isBuffer","compare","x","y","concat","list","pos","swap16","swap32","swap64","apply","equals","inspect","str","max","match","join","thisStart","thisEnd","thisCopy","targetCopy","includes","isFinite","toJSON","Array","_arr","MAX_ARGUMENTS_LENGTH","codePoints","fromCharCode","ret","out","toHex","bytes","checkOffset","ext","checkInt","objectWriteUInt16","littleEndian","objectWriteUInt32","checkIEEE754","writeFloat","noAssert","writeDouble","newBuf","sliceLen","readUIntLE","mul","readUIntBE","readUInt8","readUInt16LE","readUInt32LE","readUInt32BE","readIntLE","pow","readIntBE","readInt8","readInt16LE","readInt16BE","readInt32LE","readInt32BE","readFloatLE","readFloatBE","readDoubleLE","readDoubleBE","writeUIntLE","maxBytes","writeUIntBE","writeUInt8","floor","writeUInt16LE","writeUInt16BE","writeUInt32LE","writeUInt32BE","writeIntLE","limit","sub","writeIntBE","writeInt8","writeInt16LE","writeInt16BE","writeInt32LE","writeInt32BE","writeFloatLE","writeFloatBE","writeDoubleLE","writeDoubleBE","targetStart","set","code","charCodeAt","INVALID_BASE64_RE","base64clean","stringtrim","replace","trim","units","Infinity","leadSurrogate","byteArray","c","hi","lo","toByteArray","src","dst","render","_vm","_h","$createElement","_c","_self","attrs","$t","placeholder","rows","disabled","currentValue","errors","on","updateData","staticRenderFns","name","props","default","Boolean","validator","methods","v","console","log","$emit","watch","handler","deep","mounted","components","ValidationProvider","BFormInput","BFormGroup","BFormTextarea","component","lookup","revLookup","Arr","getLens","b64","validLen","placeHoldersLen","lens","_byteLength","tmp","curByte","tripletToBase64","num","encodeChunk","uint8","output","extraBytes","parts","maxChunkLength","len2","defineComponent","forceDisplayActions","excelExportApiCode","excelExportParams","excelExport","Function","customComponent","show","actionsConfig","externalLoading","toolbarConfig","toolbarActions","selectionConfig","nullable","actionType","actions","pageConfig","dataSourceParams","dataSource","columnResizingMode","columns","editingConfig","editable","DxPosition","DxCustomRule","DxToolbar","Fragment","DxLoadPanel","DxItem","DxColumn","DeleteDialog","DxSelection","DxEditing","DxRequiredRule","DxDataGrid","DxColumnChooser","DxScrolling","DxPaging","DxPager","DxFilterRow","setup","rawDataSourceParams","ref","OffSet","Limit","isLoading","totalCount","useFetch","params","dataResponse","rawDataSource","calculateWidth","width","onContentReady","truncateWidth","then","decodedData","Data","FileContents","newBlob","Blob","ContentType","url","window","URL","createObjectURL","document","href","download","FileDownloadName","dayjs","Date","format","click","revokeObjectURL","fetchData","functionDataSource","tempDataSourceParams","rawApi","self","DataSource","store","CustomStore","loadMode","load","loadOptions","options","take","skip","customQueryParams","response","requireTotalCount","tempData","dataValues","values","item","TotalCount","catch","renderDate","dateConfig","formatDate","onEditorPreparing","_this$selectionConfig","_this$selectionConfig2","parentType","command","mode","hideSelectAll","editorElement","remove","renderSlotHeader","fieldName","handlePropertyChange","fullName","renderColAlign","align","onCellClick","column","created","computed","dataGridInstance","$refs","dxDatagridRef","instance","permissionList","permissionsParsed","map","func","PermissionCode","actionsSplit","iconActions","dropDownActions","temp","templateArr","_this$columns","filter","cellTemplate","hasSelectionChangeListener","$listeners","hasExportListener","staticClass","_t","toInteger","index","integer","createNonEnumerableProperty","redefine","setGlobal","copyConstructorProperties","isForced","source","FORCED","key","targetProperty","sourceProperty","descriptor","TARGET","GLOBAL","STATIC","stat","noTargetGet","sham","isValidPermission","apiCode","_g","class","style","_e","internalObjectKeys","enumBugKeys","hiddenKeys","getOwnPropertyNames","version","userAgent","process","versions","v8","split","Cleave","_this$cleaveOptions","cleaveOptions","isNumberPositive","_this$cleaveOptions2","inputMaskByCurrency","uppercase","blocks","numeral","creditCard","date","datePattern","delimiter","defaultValue","getBuiltIn","$event","openForm","scopedSlots","_u","fn","_ref","close","_v","_s","isEmpty","isFormLoading","isFormAddLoading","updatePayment","proxy","model","isShow","callback","$$v","expression","formData","formItems","onInputChange","selectedDistribution","emit","refs","vm","getCurrentInstance","formRef","PaymentCode","PaymentDate","Amount","SiteCode","ArDistributionAccountId","updatePaymentData","arClient","api_AP_UP01","showLoading","nextFunction","addPaymentData","api_AP_IP01","_props$data","formGroupRow","formGroupClass","labelClass","label","cleaveType","rules","isAutoCreateCode","_","required","wrapperClass","validate","success","_formData$value$ArDis","ApPayment","Note","AutoCode","PropertyCode","PropertyId","CurrencyCode","ArPaymentDistribution","Id","ApPaymentDistribution","IsAutoGeneration","PropertyCodeName","PropertyName","TotalAmount","acc","FormItems","EzTable","LoadingButton","globalScope","Decimal","inexact","quadrant","EXP_LIMIT","MAX_DIGITS","NUMERALS","LN10","PI","DEFAULTS","precision","rounding","modulo","toExpNeg","toExpPos","minE","maxE","crypto","external","decimalError","invalidArgument","precisionLimitExceeded","cryptoUnavailable","tag","mathfloor","mathpow","isBinary","isHex","isOctal","isDecimal","BASE","LOG_BASE","MAX_SAFE_INTEGER","LN10_PRECISION","PI_PRECISION","toStringTag","digitsToString","d","k","ws","indexOfLastWord","w","getZeroString","checkInt32","checkRoundingDigits","rm","repeating","di","r","rd","ceil","convertBase","baseIn","baseOut","arrL","strL","charAt","reverse","cosine","Ctor","isZero","tinyPow","taylorSeries","times","cos2x","minus","plus","absoluteValue","abs","constructor","s","finalise","clampedTo","clamp","NaN","gt","cmp","comparedTo","xdL","ydL","xd","yd","xs","ys","cos","pr","sd","toLessThanHalfPi","neg","cubeRoot","cbrt","rep","t","t3","t3plusx","toExponential","divide","eq","decimalPlaces","dp","dividedBy","div","dividedToIntegerBy","divToInt","greaterThan","greaterThanOrEqualTo","gte","hyperbolicCosine","cosh","one","cosh2_x","d8","hyperbolicSine","sinh","sqrt","sinh2_x","d5","d16","d20","hyperbolicTangent","tanh","inverseCosine","acos","halfPi","isNeg","getPi","asin","inverseHyperbolicCosine","acosh","lte","ln","inverseHyperbolicSine","asinh","inverseHyperbolicTangent","atanh","wpr","xsd","inverseSine","atan","inverseTangent","px","x2","isInteger","isInt","isNegative","isPositive","isPos","lessThan","lt","lessThanOrEqualTo","logarithm","base","isBase10","denominator","inf","guard","naturalLogarithm","getLn10","xe","xLTy","pop","shift","getBase10Exponent","mod","q","naturalExponential","exp","negated","add","carry","unshift","z","getPrecision","round","sine","sin","squareRoot","tangent","tan","rL","toBinary","toStringBinary","toDecimalPlaces","toDP","finiteToString","toFixed","toFraction","maxD","d0","d1","d2","n0","n1","toHexadecimal","toNearest","toNumber","toOctal","toPower","yn","intPow","toPrecision","toSignificantDigits","toSD","truncated","trunc","valueOf","multiplyInteger","aL","bL","subtract","logBase","more","prod","prodL","qd","rem","remL","rem0","xi","xL","yd0","yL","yz","sign","isTruncated","digits","roundUp","xdi","isExp","nonFiniteToString","zs","truncate","isOdd","maxOrMin","args","ltgt","sum","c0","numerator","x1","parseDecimal","search","substring","parseOther","divisor","isFloat","p","test","sin2_x","isHyperbolic","u","pi","atan2","config","useDefaults","defaults","ps","getRandomValues","randomBytes","clone","isDecimalInstance","ROUND_UP","ROUND_DOWN","ROUND_CEIL","ROUND_FLOOR","ROUND_HALF_UP","ROUND_HALF_DOWN","ROUND_HALF_EVEN","ROUND_HALF_CEIL","ROUND_HALF_FLOOR","EUCLID","hypot","log10","log2","random","hasOwnProperty","Uint32Array","classof","propertyIsEnumerable","cssClass","_l","_class","icon","content","afterFixLabel","top","getStyleObject","staticStyle","SidebarLabel","noCenter","rightWidth","leftWidth","styleProp","isEven","toLength","toAbsoluteIndex","createMethod","IS_INCLUDES","$this","el","fromIndex","argument","IS_PURE","copyright","getOwnPropertyNamesModule","getOwnPropertySymbolsModule","anObject","keys","getOwnPropertySymbols","bitmap","enumerable","writable","NATIVE_WEAK_MAP","isObject","objectHas","shared","sharedKey","WeakMap","enforce","getterFor","TYPE","state","wmget","wmhas","wmset","metadata","facade","STATE","inspectSource","InternalStateModule","getInternalState","enforceInternalState","TEMPLATE","unsafe","simple","disabledAction","className","requireObjectCoercible","ob","deleteItem","resetModal","deleteDialog","dataRemove","open","invalid","noClearable","normalizer","multiple","fnCount","find","opt","customReduce","slot","onSelectAll","loading","node","id","isDisabled","disabledItemAfterFix","count","getDataSource","Status","tempOptions","customOptions","disabledItem","isGreaterThanOneArrayCurrentValue","oldValue","isOldValueSameAsNewValue","JSON","stringify","TreeselectTip","Treeselect","directives","rawName","modifiers","functionToString","fetchDataRoot","isError","errorCode","errorMessage","defaultData","directParams","$toast","loadingMessage","dismiss","afterErrorOrTimeoutFunction","sec","setTimeout","afterErrorFunction","Messages","Code","message","MessageText","disableShowToastResCondition","showResToast","disableSuccessMessage","successMessage","afterTimeOutNextFunction","debounce","keyConverted","isTableData","takeRawData","showToast","postfix","definePropertyModule","object","isLE","mLen","nBytes","eLen","eMax","eBias","nBits","rt","LN2","clearable","maxDate","isRange","direction","ranges","timePicker","timePickerIncrement","showDropDowns","isViLanguage","daysOfWeek","monthNames","firstDay","labelCols","autoApply","DateRangePicker","replacement","feature","detection","normalize","POLYFILL","NATIVE","nativeDefineProperty","Attributes","METHOD_NAME","method","cache","thrower","ACCESSORS","argument0","argument1","_vm$selectionConfig","_vm$editingConfig","_vm$editingConfig2","_vm$actions","_vm$actions$filter","action","danger","refInFor","dialogContent","handleExportExcel","showColumnChooser","row","loadIndex","field","_ref2","formatType","caption","captionAfterFix","_ref3","cellRender","defaultIfEmpty","fieldParentKey","formatPrice","renderTextVariant","_ref4","stopPropagation","direct","rowIndex","disableToolbar","disableColumnChooser","hideSelect","delete","_item$visible","_item$editingConfig","visible","minWidth","rule","_item$editingConfig2","isSuperAdmin","disablePagination","pageSize","pageSizes","displayMode","ShowInfo","showNavigationButtons","showPageSizeSelector","dataRefillForBill","clearValueInput","listDataCashier","cashierVal","payerVal","listPayment","PaymentMethod","Name","TransactionCode","itemMethod","Group","Option","Description","listCurrencyLocalStorage","typeCurrencyVal","dataInputForm","$set","acceptDataSave","ValidationObserver","idPayment","_JSON$parse","parse","localStorage","getItem","currency","ArPaymentId","PaymentMethodId","PaymentTypeCode","CardNumber","ExpirationDate","PaymentGatewayCode","Qrcode","CashierCode","casherVal","noteVal","closeModal","convertedDataInputForm","_this$listPayment$0$P","_class2","labelAfterFix","labelOption","showVnPriceText","numberToVnText","customValidate","hide","rangeData","pattern","singleDatePicker","lowerCaseFirstLetter","text","renderVModel","defaultVModel","handleChange","_this$customValidate","_this$rules","_this$pattern","_this$customValidate2","extend","isValid","maxValue","WidgetDivider","WidgetCleave","WidgetDateTime","WidgetSelect","WidgetString","_k","keyCode","buttonText","emits","styles","input","PREFERRED_STRING","resetFormData","isViewOnly","dataPayment","hideModal","paymentTypeOptions","option","form","PaymentDetailType","handlePaymentType","ParentKeyword","listPaymentType","assign","CodeName","handleChoicePayment","showFormInputPaymentMethod","VNPAY","BANK","LS_Currency","onSelectCurrency","CARD","maskCreditCard","CREDIT","AccountHolder","maskExpirationDate","PaymentMethodByVoucherInTransactionCode","VoucherCode","voucherDetail","Voucher","VoucherName","convertUTC","OpenDate","OTHER","PaymentMethodByEvoucherInTransactionCode","showMoneyExchange","totalAmountPaymentInputExchangeDisplay","IsCheckPermission","api_AP_RTU01","CashierId","isSubmit","createPaymentDetail_IPM04","Payment","Refund","PaymentMethodGroup","AR","CASH","TMT","EZTICKET","EZGOLF","QRCODE","ROOM","VIP","paymentBase","FiscalPaymentDate","MemberId","ReceivedAmount","PaymentDetail","formBase","ClientId","DebitAccountId","Bdc","PermissionButton","FormItem","vSelect","isUpdate","paymentId","number","numeralThousandsGroupStyle","listDebtAccount","PaymentMethods","PaymentTypeData","fields","thStyle","display","tdClass","paymentType","canShowPaymentType","paymentDr","paymentAmountInputExchange","debitAccountSelected","ClientName","Cashiers","zoneId","paymentTypeName","listClient","arId","isLoadingCheckVoucher","getConfigInfo_RCOM01","getCurrencyList","baseCurrency","IsBase","NoOfDec","baseCurrencyCode","currencyCodeSelected","currencySelected","currencySelectedDetail","Format","DivBase","ExRate","totalAmountPaymentBaseCurr","totalAmountPaymentExchange","GFn_GetExchangeMoney","amountRemainPayment","receivedAmount","balance","amountRemainPaymentExchange","isPaymentDiffBase","amountRemainPaymentDisplay","totalAmountPaymentBaseCurrDisplay","totalAmountPaymentExchangeDisplay","api_AR_RCR01","ListCurrency","call_api_RMT01","api_AR_RMT01","ZoneId","async","_response$Data","ListPaymentMethod","_this$paymentTypeOpti","paymentAmountExchange","onSelectPaymentType","ev","GFn_GetBaseMoneyFromExchange","onChangeAmount","handleEvent","$bvModal","getPaymentMethodDefault","paymentMethods","paymentMethodDefault","paymentMethodList","s1","calTotalAmount","totalAmount","total","amount","parseFloat","paymentData","FiscalPaymentDetailDate","createFullDataExpirationDate","bookingDetailIdDistribution","getMemberPay","FullName","openModalDeletePaymentDetail","paymentDetailId","payment","getPaymentMethodNameById","openSelectARAccount","$root","selectArAccount","arAccountData","arKey","shortExpirationDate","month","yearOld","year","baseMoney","baseMoneyToDecimal","exchangeMoney","noOfDec","exRate","exchangeMoneyToDecimal","AR_UPAD01","SHARED","names","_vm$detailData","AP_UPD01","detailPaymentData","detailData","convertedValue","ApPaymentId","body","ApPaymentDetail","acceptDataSaveForBill","acceptDataEditForBill","isShowModalListPayAp","fetchDetailApPayment","refetchData","searchVal","api_ExcelAP_RP01","AP_RP03","listPayApColumns","api_AP_RP01","deletePayment","onSelectionChanged","AP_UP02","handleApproveListPay","AP_UP04","handleConfirmListPay","isShowSidebar","AP_UP01","listGeneral","listAccountColumns","AP_RPD01","isFutureDate","handleShowPayment","paymentActions","listPaymentColumns","ListApPaymentDetail","deleteApPayment","GeneralInfo","PaymentForDistribution","SectionTransformTable","SearchList","ModalBoxAddBill","SidebarSection","ModalListPayAp","selectedPayment","tableRef","AP_RP02","AP_DP01","selectedRowsData","api_AP_RP02","api_AP_DP01","api_AP_DPD01","isUpdatePayment","api_AP_UPD01","fetchDetailPayment","api_AP_RPD01","isCreatePayment","api_AP_IPD01","confirmListPay","api_AP_UP04","approveListPay","api_AP_UP02","openDeleteDialog","deleteDialogRef","isShowModalPayment","AP_DPD01","isShowAddNewBill","CashierName","api_AR_RPE01","listCashier","dataArClient","ClientSearchVal","isSame","PaymentType","openModal","_this$detailData","_this$detailData2","_this$detailData3","_this$detailData4","_this$detailData5","_this$detailData6","_this$detailData7","_this$detailData8","_this$detailData9","_this$detailData9$Lis","_this$detailData10","convertedApPayment","_this$listPayment$","tempPayment","_tempPayment$find","PaymentMethodName","EXISTS","exec","path","aFunction","variable","namespace","nativePropertyIsEnumerable","NASHORN_BUG","V","toObject","IndexedObject","IS_RIGHT","argumentsLength","memo","right","check","globalThis","itemsConverted","items","defaultWrapperClass","_b","updateFormData","formClass","numberOfCol","regex","startDate","formatEndDate","endDate","observerRef","_this$items","tempRules","ownKeys","getOwnPropertyDescriptorModule","uid"],"mappings":"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","file":"js/chunk-54f1a4f8.c2dcb489.js","sourcesContent":["export const DistributionType = {\n Auto: \"Auto\",\n Manual: \"Manual\",\n};\nexport const TaUserGroupType = {\n ADMIN: \"ADMIN\",\n USER: \"USER\",\n SUPERADMIN: \"SUPERADMIN\",\n};\nexport const TravelAgentType = {\n AGENT: 1,\n API: 2,\n COMPANY: 3,\n TRADING: 4,\n};\nexport const convertTransactionType = (transactionType) => {\n let result = \"\";\n if (transactionType === \"AR_ADD\") {\n result = \"ar_client_add_bill\";\n }\n if (transactionType === \"AR_UPDATE\") {\n result = \"ar_client_change_bill\";\n }\n if (transactionType === \"AR_DELETE\") {\n result = \"ar_client_delete_bill\";\n }\n if (transactionType === \"PAYMENT_ADD\") {\n result = \"ar_client_add_pay\";\n }\n if (transactionType === \"PAYMENT_UPDATE\") {\n result = \"ar_client_change_payment\";\n }\n if (transactionType === \"PAYMENT_DELETE\") {\n result = \"ar_client_delete_payment\";\n }\n if (transactionType === \"AR_SMS_ADD\") {\n result = \"ar_client_pay_bill\";\n }\n if (transactionType === \"DISTRIBUTION_ADD\") {\n result = \"ar_client_add_distribution\";\n }\n if (transactionType === \"DISTRIBUTION_UPDATE\") {\n result = \"ar_client_edit_distribution\";\n }\n if (transactionType === \"DISTRIBUTION_DELETE\") {\n result = \"ar_client_delete_distribution\";\n }\n return result;\n};\nexport const TransactionAccountTransactionType = [\n { title: \"ar_client_reduce_price_booking\", value: \"DISTRIBUTION_BOOKING\", variant: \"success\" },\n { title: \"ar_client_auto_distribution_sms\", value: \"DISTRIBUTION_SMS\", variant: \"danger\" },\n];\n\nexport const ArPaymentStatus = [\n { title: \"ar_client_paid\", value: \"PAY\", variant: \"success\" },\n { title: \"ar_client_unpaid\", value: \"NO\", variant: \"danger\" },\n];\nexport const PaymentDetailTypeStatus = [\n { title: \"ar_client_refund\", value: \"REFUND\", variant: \"dark\" },\n { title: \"ar_client_top_up\", value: \"PAYMENT\", variant: \"dark\" },\n { title: \"ar_client_adjust\", value: \"MODIFY\", variant: \"dark\" },\n];\nexport const TravelAgentIsOverDraftStatus = [\n { title: \"ar_client_allow\", value: true, variant: \"success\" },\n { title: \"ar_client_not_allow\", value: false, variant: \"danger\" },\n];\nexport const SmsDistributionStatus = [\n { title: \"ar_client_allotted\", value: \"YES\", variant: \"success\" },\n { title: \"ar_client_not_allotment\", value: \"NO\", variant: \"danger\" },\n];\nexport const SmsStatus = [\n { title: \"ar_client_syntax_error\", value: \"ERROR\", variant: \"danger\" },\n { title: \"ar_client_draft_fixed\", value: \"DRAFT\", variant: \"primary\" },\n { title: \"ar_client_completed\", value: \"MODIFIED\", variant: \"success\" },\n { title: \"ar_client_syntax_correct\", value: \"SUCCESSFUL\", variant: \"success\" },\n];\nexport const DistributionStatus = [\n { title: \"ar_client_un_created_ap\", value: \"UNCREATEDAP\", variant: \"danger\" },\n { title: \"ar_client_creating_ap\", value: \"CREATINGAP\", variant: \"primary\" },\n { title: \"ar_client_created_ap\", value: \"CREATEDAP\", variant: \"success\" },\n];\nexport const ArPaymentDistributionStatus = [\n { title: \"ar_client_allotted\", value: \"FULL\", variant: \"success\" },\n { title: \"ar_client_not_allotment\", value: \"NO\", variant: \"danger\" },\n { title: \"ar_client_distributing\", value: \"INPROCESS\", variant: \"primary\" },\n];\nexport const ApPaymentStatus = [\n { title: \"ap_client_approve\", value: \"BROWSE\", variant: \"success\" },\n\n { title: \"golf_common_confirm\", value: \"CONFIRM\", variant: \"success\" },\n { title: \"Chi hết\", value: \"FULL\", variant: \"success\" },\n { title: \"Đang chi\", value: \"INPROCESS\", variant: \"primary\" },\n { title: \"Chưa chi\", value: \"NO\", variant: \"danger\" },\n];\nexport const CommonStatus = [\n { title: \"ar_client_active\", value: true, variant: \"success\" },\n { title: \"ar_client_in_active\", value: false, variant: \"danger\" },\n];\nexport const CommonActiveStatus = [\n { title: \"ar_client_active\", value: 1, variant: \"success\" },\n { title: \"ar_client_in_active\", value: 0, variant: \"danger\" },\n];\nexport const convertPaymentDetailTypeStatus = (title) => {\n let dO = { title: title, variant: \"\" };\n\n PaymentDetailTypeStatus.forEach((op) => {\n if (title === op.value) dO = { title: op.title, variant: op.variant };\n });\n\n return dO;\n};\nexport const convertTravelAgentIsOverDraftStatus = (title) => {\n let dO = { title: title, variant: \"\" };\n\n TravelAgentIsOverDraftStatus.forEach((op) => {\n if (title === op.value) dO = { title: op.title, variant: op.variant };\n });\n\n return dO;\n};\nexport const convertDistributionStatus = (title) => {\n let dO = { title: title, variant: \"\" };\n\n DistributionStatus.forEach((op) => {\n if (title === op.value) dO = { title: op.title, variant: op.variant };\n });\n\n return dO;\n};\nexport const convertSmsStatus = (title) => {\n let dO = { title: title, variant: \"\" };\n\n SmsStatus.forEach((op) => {\n if (title === op.value) dO = { title: op.title, variant: op.variant };\n });\n\n return dO;\n};\n\nexport const convertSmsDistributionStatus = (title) => {\n let dO = { title: title, variant: \"\" };\n\n SmsDistributionStatus.forEach((op) => {\n if (title === op.value) dO = { title: op.title, variant: op.variant };\n });\n\n return dO;\n};\nexport const convertCommonStatus = (title) => {\n let dO = { title: title, variant: \"\" };\n\n CommonStatus.forEach((op) => {\n if (title === op.value) dO = { title: op.title, variant: op.variant };\n });\n\n return dO;\n};\nexport const convertCommonActiveStatus = (title) => {\n let dO = { title: title, variant: \"\" };\n\n CommonActiveStatus.forEach((op) => {\n if (title === op.value) dO = { title: op.title, variant: op.variant };\n });\n\n return dO;\n};\nexport const convertArPaymentStatus = (title) => {\n let dO = { title: title, variant: \"\" };\n ArPaymentStatus.forEach((op) => {\n if (title === op.value) dO = { title: op.title, variant: op.variant };\n });\n\n return dO;\n};\nexport const convertArPaymentDistributionStatus = (title) => {\n let dO = { title: title, variant: \"\" };\n\n ArPaymentDistributionStatus.forEach((op) => {\n if (title === op.value) dO = { title: op.title, variant: op.variant };\n });\n\n return dO;\n};\nexport const convertApPaymentStatus = (title) => {\n let dO = { title: title, variant: \"\" };\n\n ApPaymentStatus.forEach((op) => {\n if (title === op.value) dO = { title: op.title, variant: op.variant };\n });\n\n return dO;\n};\n","var DESCRIPTORS = require('../internals/descriptors');\nvar propertyIsEnumerableModule = require('../internals/object-property-is-enumerable');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar toPrimitive = require('../internals/to-primitive');\nvar has = require('../internals/has');\nvar IE8_DOM_DEFINE = require('../internals/ie8-dom-define');\n\nvar nativeGetOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n\n// `Object.getOwnPropertyDescriptor` method\n// https://tc39.github.io/ecma262/#sec-object.getownpropertydescriptor\nexports.f = DESCRIPTORS ? nativeGetOwnPropertyDescriptor : function getOwnPropertyDescriptor(O, P) {\n O = toIndexedObject(O);\n P = toPrimitive(P, true);\n if (IE8_DOM_DEFINE) try {\n return nativeGetOwnPropertyDescriptor(O, P);\n } catch (error) { /* empty */ }\n if (has(O, P)) return createPropertyDescriptor(!propertyIsEnumerableModule.f.call(O, P), O[P]);\n};\n","export * from \"-!../../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!./WidgetSelect.scss?vue&type=style&index=0&prod&lang=scss&\"","var DESCRIPTORS = require('../internals/descriptors');\nvar fails = require('../internals/fails');\nvar createElement = require('../internals/document-create-element');\n\n// Thank's IE8 for his funny defineProperty\nmodule.exports = !DESCRIPTORS && !fails(function () {\n return Object.defineProperty(createElement('div'), 'a', {\n get: function () { return 7; }\n }).a != 7;\n});\n","export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SearchList.vue?vue&type=style&index=0&id=ff406d06&prod&lang=scss&\"","'use strict';\nvar $ = require('../internals/export');\nvar $reduce = require('../internals/array-reduce').left;\nvar arrayMethodIsStrict = require('../internals/array-method-is-strict');\nvar arrayMethodUsesToLength = require('../internals/array-method-uses-to-length');\nvar CHROME_VERSION = require('../internals/engine-v8-version');\nvar IS_NODE = require('../internals/engine-is-node');\n\nvar STRICT_METHOD = arrayMethodIsStrict('reduce');\nvar USES_TO_LENGTH = arrayMethodUsesToLength('reduce', { 1: 0 });\n// Chrome 80-82 has a critical bug\n// https://bugs.chromium.org/p/chromium/issues/detail?id=1049982\nvar CHROME_BUG = !IS_NODE && CHROME_VERSION > 79 && CHROME_VERSION < 83;\n\n// `Array.prototype.reduce` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.reduce\n$({ target: 'Array', proto: true, forced: !STRICT_METHOD || !USES_TO_LENGTH || CHROME_BUG }, {\n reduce: function reduce(callbackfn /* , initialValue */) {\n return $reduce(this, callbackfn, arguments.length, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DeleteDialog.vue?vue&type=style&index=0&id=738dcb84&prod&lang=scss&\"","module.exports = function (it) {\n if (typeof it != 'function') {\n throw TypeError(String(it) + ' is not a function');\n } return it;\n};\n","/*!\n * The buffer module from node.js, for the browser.\n *\n * @author Feross Aboukhadijeh \n * @license MIT\n */\n/* eslint-disable no-proto */\n\n'use strict'\n\nvar base64 = require('base64-js')\nvar ieee754 = require('ieee754')\nvar isArray = require('isarray')\n\nexports.Buffer = Buffer\nexports.SlowBuffer = SlowBuffer\nexports.INSPECT_MAX_BYTES = 50\n\n/**\n * If `Buffer.TYPED_ARRAY_SUPPORT`:\n * === true Use Uint8Array implementation (fastest)\n * === false Use Object implementation (most compatible, even IE6)\n *\n * Browsers that support typed arrays are IE 10+, Firefox 4+, Chrome 7+, Safari 5.1+,\n * Opera 11.6+, iOS 4.2+.\n *\n * Due to various browser bugs, sometimes the Object implementation will be used even\n * when the browser supports typed arrays.\n *\n * Note:\n *\n * - Firefox 4-29 lacks support for adding new properties to `Uint8Array` instances,\n * See: https://bugzilla.mozilla.org/show_bug.cgi?id=695438.\n *\n * - Chrome 9-10 is missing the `TypedArray.prototype.subarray` function.\n *\n * - IE10 has a broken `TypedArray.prototype.subarray` function which returns arrays of\n * incorrect length in some situations.\n\n * We detect these buggy browsers and set `Buffer.TYPED_ARRAY_SUPPORT` to `false` so they\n * get the Object implementation, which is slower but behaves correctly.\n */\nBuffer.TYPED_ARRAY_SUPPORT = global.TYPED_ARRAY_SUPPORT !== undefined\n ? global.TYPED_ARRAY_SUPPORT\n : typedArraySupport()\n\n/*\n * Export kMaxLength after typed array support is determined.\n */\nexports.kMaxLength = kMaxLength()\n\nfunction typedArraySupport () {\n try {\n var arr = new Uint8Array(1)\n arr.__proto__ = {__proto__: Uint8Array.prototype, foo: function () { return 42 }}\n return arr.foo() === 42 && // typed array instances can be augmented\n typeof arr.subarray === 'function' && // chrome 9-10 lack `subarray`\n arr.subarray(1, 1).byteLength === 0 // ie10 has broken `subarray`\n } catch (e) {\n return false\n }\n}\n\nfunction kMaxLength () {\n return Buffer.TYPED_ARRAY_SUPPORT\n ? 0x7fffffff\n : 0x3fffffff\n}\n\nfunction createBuffer (that, length) {\n if (kMaxLength() < length) {\n throw new RangeError('Invalid typed array length')\n }\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n // Return an augmented `Uint8Array` instance, for best performance\n that = new Uint8Array(length)\n that.__proto__ = Buffer.prototype\n } else {\n // Fallback: Return an object instance of the Buffer class\n if (that === null) {\n that = new Buffer(length)\n }\n that.length = length\n }\n\n return that\n}\n\n/**\n * The Buffer constructor returns instances of `Uint8Array` that have their\n * prototype changed to `Buffer.prototype`. Furthermore, `Buffer` is a subclass of\n * `Uint8Array`, so the returned instances will have all the node `Buffer` methods\n * and the `Uint8Array` methods. Square bracket notation works as expected -- it\n * returns a single octet.\n *\n * The `Uint8Array` prototype remains unmodified.\n */\n\nfunction Buffer (arg, encodingOrOffset, length) {\n if (!Buffer.TYPED_ARRAY_SUPPORT && !(this instanceof Buffer)) {\n return new Buffer(arg, encodingOrOffset, length)\n }\n\n // Common case.\n if (typeof arg === 'number') {\n if (typeof encodingOrOffset === 'string') {\n throw new Error(\n 'If encoding is specified then the first argument must be a string'\n )\n }\n return allocUnsafe(this, arg)\n }\n return from(this, arg, encodingOrOffset, length)\n}\n\nBuffer.poolSize = 8192 // not used by this implementation\n\n// TODO: Legacy, not needed anymore. Remove in next major version.\nBuffer._augment = function (arr) {\n arr.__proto__ = Buffer.prototype\n return arr\n}\n\nfunction from (that, value, encodingOrOffset, length) {\n if (typeof value === 'number') {\n throw new TypeError('\"value\" argument must not be a number')\n }\n\n if (typeof ArrayBuffer !== 'undefined' && value instanceof ArrayBuffer) {\n return fromArrayBuffer(that, value, encodingOrOffset, length)\n }\n\n if (typeof value === 'string') {\n return fromString(that, value, encodingOrOffset)\n }\n\n return fromObject(that, value)\n}\n\n/**\n * Functionally equivalent to Buffer(arg, encoding) but throws a TypeError\n * if value is a number.\n * Buffer.from(str[, encoding])\n * Buffer.from(array)\n * Buffer.from(buffer)\n * Buffer.from(arrayBuffer[, byteOffset[, length]])\n **/\nBuffer.from = function (value, encodingOrOffset, length) {\n return from(null, value, encodingOrOffset, length)\n}\n\nif (Buffer.TYPED_ARRAY_SUPPORT) {\n Buffer.prototype.__proto__ = Uint8Array.prototype\n Buffer.__proto__ = Uint8Array\n if (typeof Symbol !== 'undefined' && Symbol.species &&\n Buffer[Symbol.species] === Buffer) {\n // Fix subarray() in ES2016. See: https://github.com/feross/buffer/pull/97\n Object.defineProperty(Buffer, Symbol.species, {\n value: null,\n configurable: true\n })\n }\n}\n\nfunction assertSize (size) {\n if (typeof size !== 'number') {\n throw new TypeError('\"size\" argument must be a number')\n } else if (size < 0) {\n throw new RangeError('\"size\" argument must not be negative')\n }\n}\n\nfunction alloc (that, size, fill, encoding) {\n assertSize(size)\n if (size <= 0) {\n return createBuffer(that, size)\n }\n if (fill !== undefined) {\n // Only pay attention to encoding if it's a string. This\n // prevents accidentally sending in a number that would\n // be interpretted as a start offset.\n return typeof encoding === 'string'\n ? createBuffer(that, size).fill(fill, encoding)\n : createBuffer(that, size).fill(fill)\n }\n return createBuffer(that, size)\n}\n\n/**\n * Creates a new filled Buffer instance.\n * alloc(size[, fill[, encoding]])\n **/\nBuffer.alloc = function (size, fill, encoding) {\n return alloc(null, size, fill, encoding)\n}\n\nfunction allocUnsafe (that, size) {\n assertSize(size)\n that = createBuffer(that, size < 0 ? 0 : checked(size) | 0)\n if (!Buffer.TYPED_ARRAY_SUPPORT) {\n for (var i = 0; i < size; ++i) {\n that[i] = 0\n }\n }\n return that\n}\n\n/**\n * Equivalent to Buffer(num), by default creates a non-zero-filled Buffer instance.\n * */\nBuffer.allocUnsafe = function (size) {\n return allocUnsafe(null, size)\n}\n/**\n * Equivalent to SlowBuffer(num), by default creates a non-zero-filled Buffer instance.\n */\nBuffer.allocUnsafeSlow = function (size) {\n return allocUnsafe(null, size)\n}\n\nfunction fromString (that, string, encoding) {\n if (typeof encoding !== 'string' || encoding === '') {\n encoding = 'utf8'\n }\n\n if (!Buffer.isEncoding(encoding)) {\n throw new TypeError('\"encoding\" must be a valid string encoding')\n }\n\n var length = byteLength(string, encoding) | 0\n that = createBuffer(that, length)\n\n var actual = that.write(string, encoding)\n\n if (actual !== length) {\n // Writing a hex string, for example, that contains invalid characters will\n // cause everything after the first invalid character to be ignored. (e.g.\n // 'abxxcd' will be treated as 'ab')\n that = that.slice(0, actual)\n }\n\n return that\n}\n\nfunction fromArrayLike (that, array) {\n var length = array.length < 0 ? 0 : checked(array.length) | 0\n that = createBuffer(that, length)\n for (var i = 0; i < length; i += 1) {\n that[i] = array[i] & 255\n }\n return that\n}\n\nfunction fromArrayBuffer (that, array, byteOffset, length) {\n array.byteLength // this throws if `array` is not a valid ArrayBuffer\n\n if (byteOffset < 0 || array.byteLength < byteOffset) {\n throw new RangeError('\\'offset\\' is out of bounds')\n }\n\n if (array.byteLength < byteOffset + (length || 0)) {\n throw new RangeError('\\'length\\' is out of bounds')\n }\n\n if (byteOffset === undefined && length === undefined) {\n array = new Uint8Array(array)\n } else if (length === undefined) {\n array = new Uint8Array(array, byteOffset)\n } else {\n array = new Uint8Array(array, byteOffset, length)\n }\n\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n // Return an augmented `Uint8Array` instance, for best performance\n that = array\n that.__proto__ = Buffer.prototype\n } else {\n // Fallback: Return an object instance of the Buffer class\n that = fromArrayLike(that, array)\n }\n return that\n}\n\nfunction fromObject (that, obj) {\n if (Buffer.isBuffer(obj)) {\n var len = checked(obj.length) | 0\n that = createBuffer(that, len)\n\n if (that.length === 0) {\n return that\n }\n\n obj.copy(that, 0, 0, len)\n return that\n }\n\n if (obj) {\n if ((typeof ArrayBuffer !== 'undefined' &&\n obj.buffer instanceof ArrayBuffer) || 'length' in obj) {\n if (typeof obj.length !== 'number' || isnan(obj.length)) {\n return createBuffer(that, 0)\n }\n return fromArrayLike(that, obj)\n }\n\n if (obj.type === 'Buffer' && isArray(obj.data)) {\n return fromArrayLike(that, obj.data)\n }\n }\n\n throw new TypeError('First argument must be a string, Buffer, ArrayBuffer, Array, or array-like object.')\n}\n\nfunction checked (length) {\n // Note: cannot use `length < kMaxLength()` here because that fails when\n // length is NaN (which is otherwise coerced to zero.)\n if (length >= kMaxLength()) {\n throw new RangeError('Attempt to allocate Buffer larger than maximum ' +\n 'size: 0x' + kMaxLength().toString(16) + ' bytes')\n }\n return length | 0\n}\n\nfunction SlowBuffer (length) {\n if (+length != length) { // eslint-disable-line eqeqeq\n length = 0\n }\n return Buffer.alloc(+length)\n}\n\nBuffer.isBuffer = function isBuffer (b) {\n return !!(b != null && b._isBuffer)\n}\n\nBuffer.compare = function compare (a, b) {\n if (!Buffer.isBuffer(a) || !Buffer.isBuffer(b)) {\n throw new TypeError('Arguments must be Buffers')\n }\n\n if (a === b) return 0\n\n var x = a.length\n var y = b.length\n\n for (var i = 0, len = Math.min(x, y); i < len; ++i) {\n if (a[i] !== b[i]) {\n x = a[i]\n y = b[i]\n break\n }\n }\n\n if (x < y) return -1\n if (y < x) return 1\n return 0\n}\n\nBuffer.isEncoding = function isEncoding (encoding) {\n switch (String(encoding).toLowerCase()) {\n case 'hex':\n case 'utf8':\n case 'utf-8':\n case 'ascii':\n case 'latin1':\n case 'binary':\n case 'base64':\n case 'ucs2':\n case 'ucs-2':\n case 'utf16le':\n case 'utf-16le':\n return true\n default:\n return false\n }\n}\n\nBuffer.concat = function concat (list, length) {\n if (!isArray(list)) {\n throw new TypeError('\"list\" argument must be an Array of Buffers')\n }\n\n if (list.length === 0) {\n return Buffer.alloc(0)\n }\n\n var i\n if (length === undefined) {\n length = 0\n for (i = 0; i < list.length; ++i) {\n length += list[i].length\n }\n }\n\n var buffer = Buffer.allocUnsafe(length)\n var pos = 0\n for (i = 0; i < list.length; ++i) {\n var buf = list[i]\n if (!Buffer.isBuffer(buf)) {\n throw new TypeError('\"list\" argument must be an Array of Buffers')\n }\n buf.copy(buffer, pos)\n pos += buf.length\n }\n return buffer\n}\n\nfunction byteLength (string, encoding) {\n if (Buffer.isBuffer(string)) {\n return string.length\n }\n if (typeof ArrayBuffer !== 'undefined' && typeof ArrayBuffer.isView === 'function' &&\n (ArrayBuffer.isView(string) || string instanceof ArrayBuffer)) {\n return string.byteLength\n }\n if (typeof string !== 'string') {\n string = '' + string\n }\n\n var len = string.length\n if (len === 0) return 0\n\n // Use a for loop to avoid recursion\n var loweredCase = false\n for (;;) {\n switch (encoding) {\n case 'ascii':\n case 'latin1':\n case 'binary':\n return len\n case 'utf8':\n case 'utf-8':\n case undefined:\n return utf8ToBytes(string).length\n case 'ucs2':\n case 'ucs-2':\n case 'utf16le':\n case 'utf-16le':\n return len * 2\n case 'hex':\n return len >>> 1\n case 'base64':\n return base64ToBytes(string).length\n default:\n if (loweredCase) return utf8ToBytes(string).length // assume utf8\n encoding = ('' + encoding).toLowerCase()\n loweredCase = true\n }\n }\n}\nBuffer.byteLength = byteLength\n\nfunction slowToString (encoding, start, end) {\n var loweredCase = false\n\n // No need to verify that \"this.length <= MAX_UINT32\" since it's a read-only\n // property of a typed array.\n\n // This behaves neither like String nor Uint8Array in that we set start/end\n // to their upper/lower bounds if the value passed is out of range.\n // undefined is handled specially as per ECMA-262 6th Edition,\n // Section 13.3.3.7 Runtime Semantics: KeyedBindingInitialization.\n if (start === undefined || start < 0) {\n start = 0\n }\n // Return early if start > this.length. Done here to prevent potential uint32\n // coercion fail below.\n if (start > this.length) {\n return ''\n }\n\n if (end === undefined || end > this.length) {\n end = this.length\n }\n\n if (end <= 0) {\n return ''\n }\n\n // Force coersion to uint32. This will also coerce falsey/NaN values to 0.\n end >>>= 0\n start >>>= 0\n\n if (end <= start) {\n return ''\n }\n\n if (!encoding) encoding = 'utf8'\n\n while (true) {\n switch (encoding) {\n case 'hex':\n return hexSlice(this, start, end)\n\n case 'utf8':\n case 'utf-8':\n return utf8Slice(this, start, end)\n\n case 'ascii':\n return asciiSlice(this, start, end)\n\n case 'latin1':\n case 'binary':\n return latin1Slice(this, start, end)\n\n case 'base64':\n return base64Slice(this, start, end)\n\n case 'ucs2':\n case 'ucs-2':\n case 'utf16le':\n case 'utf-16le':\n return utf16leSlice(this, start, end)\n\n default:\n if (loweredCase) throw new TypeError('Unknown encoding: ' + encoding)\n encoding = (encoding + '').toLowerCase()\n loweredCase = true\n }\n }\n}\n\n// The property is used by `Buffer.isBuffer` and `is-buffer` (in Safari 5-7) to detect\n// Buffer instances.\nBuffer.prototype._isBuffer = true\n\nfunction swap (b, n, m) {\n var i = b[n]\n b[n] = b[m]\n b[m] = i\n}\n\nBuffer.prototype.swap16 = function swap16 () {\n var len = this.length\n if (len % 2 !== 0) {\n throw new RangeError('Buffer size must be a multiple of 16-bits')\n }\n for (var i = 0; i < len; i += 2) {\n swap(this, i, i + 1)\n }\n return this\n}\n\nBuffer.prototype.swap32 = function swap32 () {\n var len = this.length\n if (len % 4 !== 0) {\n throw new RangeError('Buffer size must be a multiple of 32-bits')\n }\n for (var i = 0; i < len; i += 4) {\n swap(this, i, i + 3)\n swap(this, i + 1, i + 2)\n }\n return this\n}\n\nBuffer.prototype.swap64 = function swap64 () {\n var len = this.length\n if (len % 8 !== 0) {\n throw new RangeError('Buffer size must be a multiple of 64-bits')\n }\n for (var i = 0; i < len; i += 8) {\n swap(this, i, i + 7)\n swap(this, i + 1, i + 6)\n swap(this, i + 2, i + 5)\n swap(this, i + 3, i + 4)\n }\n return this\n}\n\nBuffer.prototype.toString = function toString () {\n var length = this.length | 0\n if (length === 0) return ''\n if (arguments.length === 0) return utf8Slice(this, 0, length)\n return slowToString.apply(this, arguments)\n}\n\nBuffer.prototype.equals = function equals (b) {\n if (!Buffer.isBuffer(b)) throw new TypeError('Argument must be a Buffer')\n if (this === b) return true\n return Buffer.compare(this, b) === 0\n}\n\nBuffer.prototype.inspect = function inspect () {\n var str = ''\n var max = exports.INSPECT_MAX_BYTES\n if (this.length > 0) {\n str = this.toString('hex', 0, max).match(/.{2}/g).join(' ')\n if (this.length > max) str += ' ... '\n }\n return ''\n}\n\nBuffer.prototype.compare = function compare (target, start, end, thisStart, thisEnd) {\n if (!Buffer.isBuffer(target)) {\n throw new TypeError('Argument must be a Buffer')\n }\n\n if (start === undefined) {\n start = 0\n }\n if (end === undefined) {\n end = target ? target.length : 0\n }\n if (thisStart === undefined) {\n thisStart = 0\n }\n if (thisEnd === undefined) {\n thisEnd = this.length\n }\n\n if (start < 0 || end > target.length || thisStart < 0 || thisEnd > this.length) {\n throw new RangeError('out of range index')\n }\n\n if (thisStart >= thisEnd && start >= end) {\n return 0\n }\n if (thisStart >= thisEnd) {\n return -1\n }\n if (start >= end) {\n return 1\n }\n\n start >>>= 0\n end >>>= 0\n thisStart >>>= 0\n thisEnd >>>= 0\n\n if (this === target) return 0\n\n var x = thisEnd - thisStart\n var y = end - start\n var len = Math.min(x, y)\n\n var thisCopy = this.slice(thisStart, thisEnd)\n var targetCopy = target.slice(start, end)\n\n for (var i = 0; i < len; ++i) {\n if (thisCopy[i] !== targetCopy[i]) {\n x = thisCopy[i]\n y = targetCopy[i]\n break\n }\n }\n\n if (x < y) return -1\n if (y < x) return 1\n return 0\n}\n\n// Finds either the first index of `val` in `buffer` at offset >= `byteOffset`,\n// OR the last index of `val` in `buffer` at offset <= `byteOffset`.\n//\n// Arguments:\n// - buffer - a Buffer to search\n// - val - a string, Buffer, or number\n// - byteOffset - an index into `buffer`; will be clamped to an int32\n// - encoding - an optional encoding, relevant is val is a string\n// - dir - true for indexOf, false for lastIndexOf\nfunction bidirectionalIndexOf (buffer, val, byteOffset, encoding, dir) {\n // Empty buffer means no match\n if (buffer.length === 0) return -1\n\n // Normalize byteOffset\n if (typeof byteOffset === 'string') {\n encoding = byteOffset\n byteOffset = 0\n } else if (byteOffset > 0x7fffffff) {\n byteOffset = 0x7fffffff\n } else if (byteOffset < -0x80000000) {\n byteOffset = -0x80000000\n }\n byteOffset = +byteOffset // Coerce to Number.\n if (isNaN(byteOffset)) {\n // byteOffset: it it's undefined, null, NaN, \"foo\", etc, search whole buffer\n byteOffset = dir ? 0 : (buffer.length - 1)\n }\n\n // Normalize byteOffset: negative offsets start from the end of the buffer\n if (byteOffset < 0) byteOffset = buffer.length + byteOffset\n if (byteOffset >= buffer.length) {\n if (dir) return -1\n else byteOffset = buffer.length - 1\n } else if (byteOffset < 0) {\n if (dir) byteOffset = 0\n else return -1\n }\n\n // Normalize val\n if (typeof val === 'string') {\n val = Buffer.from(val, encoding)\n }\n\n // Finally, search either indexOf (if dir is true) or lastIndexOf\n if (Buffer.isBuffer(val)) {\n // Special case: looking for empty string/buffer always fails\n if (val.length === 0) {\n return -1\n }\n return arrayIndexOf(buffer, val, byteOffset, encoding, dir)\n } else if (typeof val === 'number') {\n val = val & 0xFF // Search for a byte value [0-255]\n if (Buffer.TYPED_ARRAY_SUPPORT &&\n typeof Uint8Array.prototype.indexOf === 'function') {\n if (dir) {\n return Uint8Array.prototype.indexOf.call(buffer, val, byteOffset)\n } else {\n return Uint8Array.prototype.lastIndexOf.call(buffer, val, byteOffset)\n }\n }\n return arrayIndexOf(buffer, [ val ], byteOffset, encoding, dir)\n }\n\n throw new TypeError('val must be string, number or Buffer')\n}\n\nfunction arrayIndexOf (arr, val, byteOffset, encoding, dir) {\n var indexSize = 1\n var arrLength = arr.length\n var valLength = val.length\n\n if (encoding !== undefined) {\n encoding = String(encoding).toLowerCase()\n if (encoding === 'ucs2' || encoding === 'ucs-2' ||\n encoding === 'utf16le' || encoding === 'utf-16le') {\n if (arr.length < 2 || val.length < 2) {\n return -1\n }\n indexSize = 2\n arrLength /= 2\n valLength /= 2\n byteOffset /= 2\n }\n }\n\n function read (buf, i) {\n if (indexSize === 1) {\n return buf[i]\n } else {\n return buf.readUInt16BE(i * indexSize)\n }\n }\n\n var i\n if (dir) {\n var foundIndex = -1\n for (i = byteOffset; i < arrLength; i++) {\n if (read(arr, i) === read(val, foundIndex === -1 ? 0 : i - foundIndex)) {\n if (foundIndex === -1) foundIndex = i\n if (i - foundIndex + 1 === valLength) return foundIndex * indexSize\n } else {\n if (foundIndex !== -1) i -= i - foundIndex\n foundIndex = -1\n }\n }\n } else {\n if (byteOffset + valLength > arrLength) byteOffset = arrLength - valLength\n for (i = byteOffset; i >= 0; i--) {\n var found = true\n for (var j = 0; j < valLength; j++) {\n if (read(arr, i + j) !== read(val, j)) {\n found = false\n break\n }\n }\n if (found) return i\n }\n }\n\n return -1\n}\n\nBuffer.prototype.includes = function includes (val, byteOffset, encoding) {\n return this.indexOf(val, byteOffset, encoding) !== -1\n}\n\nBuffer.prototype.indexOf = function indexOf (val, byteOffset, encoding) {\n return bidirectionalIndexOf(this, val, byteOffset, encoding, true)\n}\n\nBuffer.prototype.lastIndexOf = function lastIndexOf (val, byteOffset, encoding) {\n return bidirectionalIndexOf(this, val, byteOffset, encoding, false)\n}\n\nfunction hexWrite (buf, string, offset, length) {\n offset = Number(offset) || 0\n var remaining = buf.length - offset\n if (!length) {\n length = remaining\n } else {\n length = Number(length)\n if (length > remaining) {\n length = remaining\n }\n }\n\n // must be an even number of digits\n var strLen = string.length\n if (strLen % 2 !== 0) throw new TypeError('Invalid hex string')\n\n if (length > strLen / 2) {\n length = strLen / 2\n }\n for (var i = 0; i < length; ++i) {\n var parsed = parseInt(string.substr(i * 2, 2), 16)\n if (isNaN(parsed)) return i\n buf[offset + i] = parsed\n }\n return i\n}\n\nfunction utf8Write (buf, string, offset, length) {\n return blitBuffer(utf8ToBytes(string, buf.length - offset), buf, offset, length)\n}\n\nfunction asciiWrite (buf, string, offset, length) {\n return blitBuffer(asciiToBytes(string), buf, offset, length)\n}\n\nfunction latin1Write (buf, string, offset, length) {\n return asciiWrite(buf, string, offset, length)\n}\n\nfunction base64Write (buf, string, offset, length) {\n return blitBuffer(base64ToBytes(string), buf, offset, length)\n}\n\nfunction ucs2Write (buf, string, offset, length) {\n return blitBuffer(utf16leToBytes(string, buf.length - offset), buf, offset, length)\n}\n\nBuffer.prototype.write = function write (string, offset, length, encoding) {\n // Buffer#write(string)\n if (offset === undefined) {\n encoding = 'utf8'\n length = this.length\n offset = 0\n // Buffer#write(string, encoding)\n } else if (length === undefined && typeof offset === 'string') {\n encoding = offset\n length = this.length\n offset = 0\n // Buffer#write(string, offset[, length][, encoding])\n } else if (isFinite(offset)) {\n offset = offset | 0\n if (isFinite(length)) {\n length = length | 0\n if (encoding === undefined) encoding = 'utf8'\n } else {\n encoding = length\n length = undefined\n }\n // legacy write(string, encoding, offset, length) - remove in v0.13\n } else {\n throw new Error(\n 'Buffer.write(string, encoding, offset[, length]) is no longer supported'\n )\n }\n\n var remaining = this.length - offset\n if (length === undefined || length > remaining) length = remaining\n\n if ((string.length > 0 && (length < 0 || offset < 0)) || offset > this.length) {\n throw new RangeError('Attempt to write outside buffer bounds')\n }\n\n if (!encoding) encoding = 'utf8'\n\n var loweredCase = false\n for (;;) {\n switch (encoding) {\n case 'hex':\n return hexWrite(this, string, offset, length)\n\n case 'utf8':\n case 'utf-8':\n return utf8Write(this, string, offset, length)\n\n case 'ascii':\n return asciiWrite(this, string, offset, length)\n\n case 'latin1':\n case 'binary':\n return latin1Write(this, string, offset, length)\n\n case 'base64':\n // Warning: maxLength not taken into account in base64Write\n return base64Write(this, string, offset, length)\n\n case 'ucs2':\n case 'ucs-2':\n case 'utf16le':\n case 'utf-16le':\n return ucs2Write(this, string, offset, length)\n\n default:\n if (loweredCase) throw new TypeError('Unknown encoding: ' + encoding)\n encoding = ('' + encoding).toLowerCase()\n loweredCase = true\n }\n }\n}\n\nBuffer.prototype.toJSON = function toJSON () {\n return {\n type: 'Buffer',\n data: Array.prototype.slice.call(this._arr || this, 0)\n }\n}\n\nfunction base64Slice (buf, start, end) {\n if (start === 0 && end === buf.length) {\n return base64.fromByteArray(buf)\n } else {\n return base64.fromByteArray(buf.slice(start, end))\n }\n}\n\nfunction utf8Slice (buf, start, end) {\n end = Math.min(buf.length, end)\n var res = []\n\n var i = start\n while (i < end) {\n var firstByte = buf[i]\n var codePoint = null\n var bytesPerSequence = (firstByte > 0xEF) ? 4\n : (firstByte > 0xDF) ? 3\n : (firstByte > 0xBF) ? 2\n : 1\n\n if (i + bytesPerSequence <= end) {\n var secondByte, thirdByte, fourthByte, tempCodePoint\n\n switch (bytesPerSequence) {\n case 1:\n if (firstByte < 0x80) {\n codePoint = firstByte\n }\n break\n case 2:\n secondByte = buf[i + 1]\n if ((secondByte & 0xC0) === 0x80) {\n tempCodePoint = (firstByte & 0x1F) << 0x6 | (secondByte & 0x3F)\n if (tempCodePoint > 0x7F) {\n codePoint = tempCodePoint\n }\n }\n break\n case 3:\n secondByte = buf[i + 1]\n thirdByte = buf[i + 2]\n if ((secondByte & 0xC0) === 0x80 && (thirdByte & 0xC0) === 0x80) {\n tempCodePoint = (firstByte & 0xF) << 0xC | (secondByte & 0x3F) << 0x6 | (thirdByte & 0x3F)\n if (tempCodePoint > 0x7FF && (tempCodePoint < 0xD800 || tempCodePoint > 0xDFFF)) {\n codePoint = tempCodePoint\n }\n }\n break\n case 4:\n secondByte = buf[i + 1]\n thirdByte = buf[i + 2]\n fourthByte = buf[i + 3]\n if ((secondByte & 0xC0) === 0x80 && (thirdByte & 0xC0) === 0x80 && (fourthByte & 0xC0) === 0x80) {\n tempCodePoint = (firstByte & 0xF) << 0x12 | (secondByte & 0x3F) << 0xC | (thirdByte & 0x3F) << 0x6 | (fourthByte & 0x3F)\n if (tempCodePoint > 0xFFFF && tempCodePoint < 0x110000) {\n codePoint = tempCodePoint\n }\n }\n }\n }\n\n if (codePoint === null) {\n // we did not generate a valid codePoint so insert a\n // replacement char (U+FFFD) and advance only 1 byte\n codePoint = 0xFFFD\n bytesPerSequence = 1\n } else if (codePoint > 0xFFFF) {\n // encode to utf16 (surrogate pair dance)\n codePoint -= 0x10000\n res.push(codePoint >>> 10 & 0x3FF | 0xD800)\n codePoint = 0xDC00 | codePoint & 0x3FF\n }\n\n res.push(codePoint)\n i += bytesPerSequence\n }\n\n return decodeCodePointsArray(res)\n}\n\n// Based on http://stackoverflow.com/a/22747272/680742, the browser with\n// the lowest limit is Chrome, with 0x10000 args.\n// We go 1 magnitude less, for safety\nvar MAX_ARGUMENTS_LENGTH = 0x1000\n\nfunction decodeCodePointsArray (codePoints) {\n var len = codePoints.length\n if (len <= MAX_ARGUMENTS_LENGTH) {\n return String.fromCharCode.apply(String, codePoints) // avoid extra slice()\n }\n\n // Decode in chunks to avoid \"call stack size exceeded\".\n var res = ''\n var i = 0\n while (i < len) {\n res += String.fromCharCode.apply(\n String,\n codePoints.slice(i, i += MAX_ARGUMENTS_LENGTH)\n )\n }\n return res\n}\n\nfunction asciiSlice (buf, start, end) {\n var ret = ''\n end = Math.min(buf.length, end)\n\n for (var i = start; i < end; ++i) {\n ret += String.fromCharCode(buf[i] & 0x7F)\n }\n return ret\n}\n\nfunction latin1Slice (buf, start, end) {\n var ret = ''\n end = Math.min(buf.length, end)\n\n for (var i = start; i < end; ++i) {\n ret += String.fromCharCode(buf[i])\n }\n return ret\n}\n\nfunction hexSlice (buf, start, end) {\n var len = buf.length\n\n if (!start || start < 0) start = 0\n if (!end || end < 0 || end > len) end = len\n\n var out = ''\n for (var i = start; i < end; ++i) {\n out += toHex(buf[i])\n }\n return out\n}\n\nfunction utf16leSlice (buf, start, end) {\n var bytes = buf.slice(start, end)\n var res = ''\n for (var i = 0; i < bytes.length; i += 2) {\n res += String.fromCharCode(bytes[i] + bytes[i + 1] * 256)\n }\n return res\n}\n\nBuffer.prototype.slice = function slice (start, end) {\n var len = this.length\n start = ~~start\n end = end === undefined ? len : ~~end\n\n if (start < 0) {\n start += len\n if (start < 0) start = 0\n } else if (start > len) {\n start = len\n }\n\n if (end < 0) {\n end += len\n if (end < 0) end = 0\n } else if (end > len) {\n end = len\n }\n\n if (end < start) end = start\n\n var newBuf\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n newBuf = this.subarray(start, end)\n newBuf.__proto__ = Buffer.prototype\n } else {\n var sliceLen = end - start\n newBuf = new Buffer(sliceLen, undefined)\n for (var i = 0; i < sliceLen; ++i) {\n newBuf[i] = this[i + start]\n }\n }\n\n return newBuf\n}\n\n/*\n * Need to make sure that buffer isn't trying to write out of bounds.\n */\nfunction checkOffset (offset, ext, length) {\n if ((offset % 1) !== 0 || offset < 0) throw new RangeError('offset is not uint')\n if (offset + ext > length) throw new RangeError('Trying to access beyond buffer length')\n}\n\nBuffer.prototype.readUIntLE = function readUIntLE (offset, byteLength, noAssert) {\n offset = offset | 0\n byteLength = byteLength | 0\n if (!noAssert) checkOffset(offset, byteLength, this.length)\n\n var val = this[offset]\n var mul = 1\n var i = 0\n while (++i < byteLength && (mul *= 0x100)) {\n val += this[offset + i] * mul\n }\n\n return val\n}\n\nBuffer.prototype.readUIntBE = function readUIntBE (offset, byteLength, noAssert) {\n offset = offset | 0\n byteLength = byteLength | 0\n if (!noAssert) {\n checkOffset(offset, byteLength, this.length)\n }\n\n var val = this[offset + --byteLength]\n var mul = 1\n while (byteLength > 0 && (mul *= 0x100)) {\n val += this[offset + --byteLength] * mul\n }\n\n return val\n}\n\nBuffer.prototype.readUInt8 = function readUInt8 (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 1, this.length)\n return this[offset]\n}\n\nBuffer.prototype.readUInt16LE = function readUInt16LE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 2, this.length)\n return this[offset] | (this[offset + 1] << 8)\n}\n\nBuffer.prototype.readUInt16BE = function readUInt16BE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 2, this.length)\n return (this[offset] << 8) | this[offset + 1]\n}\n\nBuffer.prototype.readUInt32LE = function readUInt32LE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 4, this.length)\n\n return ((this[offset]) |\n (this[offset + 1] << 8) |\n (this[offset + 2] << 16)) +\n (this[offset + 3] * 0x1000000)\n}\n\nBuffer.prototype.readUInt32BE = function readUInt32BE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 4, this.length)\n\n return (this[offset] * 0x1000000) +\n ((this[offset + 1] << 16) |\n (this[offset + 2] << 8) |\n this[offset + 3])\n}\n\nBuffer.prototype.readIntLE = function readIntLE (offset, byteLength, noAssert) {\n offset = offset | 0\n byteLength = byteLength | 0\n if (!noAssert) checkOffset(offset, byteLength, this.length)\n\n var val = this[offset]\n var mul = 1\n var i = 0\n while (++i < byteLength && (mul *= 0x100)) {\n val += this[offset + i] * mul\n }\n mul *= 0x80\n\n if (val >= mul) val -= Math.pow(2, 8 * byteLength)\n\n return val\n}\n\nBuffer.prototype.readIntBE = function readIntBE (offset, byteLength, noAssert) {\n offset = offset | 0\n byteLength = byteLength | 0\n if (!noAssert) checkOffset(offset, byteLength, this.length)\n\n var i = byteLength\n var mul = 1\n var val = this[offset + --i]\n while (i > 0 && (mul *= 0x100)) {\n val += this[offset + --i] * mul\n }\n mul *= 0x80\n\n if (val >= mul) val -= Math.pow(2, 8 * byteLength)\n\n return val\n}\n\nBuffer.prototype.readInt8 = function readInt8 (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 1, this.length)\n if (!(this[offset] & 0x80)) return (this[offset])\n return ((0xff - this[offset] + 1) * -1)\n}\n\nBuffer.prototype.readInt16LE = function readInt16LE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 2, this.length)\n var val = this[offset] | (this[offset + 1] << 8)\n return (val & 0x8000) ? val | 0xFFFF0000 : val\n}\n\nBuffer.prototype.readInt16BE = function readInt16BE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 2, this.length)\n var val = this[offset + 1] | (this[offset] << 8)\n return (val & 0x8000) ? val | 0xFFFF0000 : val\n}\n\nBuffer.prototype.readInt32LE = function readInt32LE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 4, this.length)\n\n return (this[offset]) |\n (this[offset + 1] << 8) |\n (this[offset + 2] << 16) |\n (this[offset + 3] << 24)\n}\n\nBuffer.prototype.readInt32BE = function readInt32BE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 4, this.length)\n\n return (this[offset] << 24) |\n (this[offset + 1] << 16) |\n (this[offset + 2] << 8) |\n (this[offset + 3])\n}\n\nBuffer.prototype.readFloatLE = function readFloatLE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 4, this.length)\n return ieee754.read(this, offset, true, 23, 4)\n}\n\nBuffer.prototype.readFloatBE = function readFloatBE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 4, this.length)\n return ieee754.read(this, offset, false, 23, 4)\n}\n\nBuffer.prototype.readDoubleLE = function readDoubleLE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 8, this.length)\n return ieee754.read(this, offset, true, 52, 8)\n}\n\nBuffer.prototype.readDoubleBE = function readDoubleBE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 8, this.length)\n return ieee754.read(this, offset, false, 52, 8)\n}\n\nfunction checkInt (buf, value, offset, ext, max, min) {\n if (!Buffer.isBuffer(buf)) throw new TypeError('\"buffer\" argument must be a Buffer instance')\n if (value > max || value < min) throw new RangeError('\"value\" argument is out of bounds')\n if (offset + ext > buf.length) throw new RangeError('Index out of range')\n}\n\nBuffer.prototype.writeUIntLE = function writeUIntLE (value, offset, byteLength, noAssert) {\n value = +value\n offset = offset | 0\n byteLength = byteLength | 0\n if (!noAssert) {\n var maxBytes = Math.pow(2, 8 * byteLength) - 1\n checkInt(this, value, offset, byteLength, maxBytes, 0)\n }\n\n var mul = 1\n var i = 0\n this[offset] = value & 0xFF\n while (++i < byteLength && (mul *= 0x100)) {\n this[offset + i] = (value / mul) & 0xFF\n }\n\n return offset + byteLength\n}\n\nBuffer.prototype.writeUIntBE = function writeUIntBE (value, offset, byteLength, noAssert) {\n value = +value\n offset = offset | 0\n byteLength = byteLength | 0\n if (!noAssert) {\n var maxBytes = Math.pow(2, 8 * byteLength) - 1\n checkInt(this, value, offset, byteLength, maxBytes, 0)\n }\n\n var i = byteLength - 1\n var mul = 1\n this[offset + i] = value & 0xFF\n while (--i >= 0 && (mul *= 0x100)) {\n this[offset + i] = (value / mul) & 0xFF\n }\n\n return offset + byteLength\n}\n\nBuffer.prototype.writeUInt8 = function writeUInt8 (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 1, 0xff, 0)\n if (!Buffer.TYPED_ARRAY_SUPPORT) value = Math.floor(value)\n this[offset] = (value & 0xff)\n return offset + 1\n}\n\nfunction objectWriteUInt16 (buf, value, offset, littleEndian) {\n if (value < 0) value = 0xffff + value + 1\n for (var i = 0, j = Math.min(buf.length - offset, 2); i < j; ++i) {\n buf[offset + i] = (value & (0xff << (8 * (littleEndian ? i : 1 - i)))) >>>\n (littleEndian ? i : 1 - i) * 8\n }\n}\n\nBuffer.prototype.writeUInt16LE = function writeUInt16LE (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 2, 0xffff, 0)\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n this[offset] = (value & 0xff)\n this[offset + 1] = (value >>> 8)\n } else {\n objectWriteUInt16(this, value, offset, true)\n }\n return offset + 2\n}\n\nBuffer.prototype.writeUInt16BE = function writeUInt16BE (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 2, 0xffff, 0)\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n this[offset] = (value >>> 8)\n this[offset + 1] = (value & 0xff)\n } else {\n objectWriteUInt16(this, value, offset, false)\n }\n return offset + 2\n}\n\nfunction objectWriteUInt32 (buf, value, offset, littleEndian) {\n if (value < 0) value = 0xffffffff + value + 1\n for (var i = 0, j = Math.min(buf.length - offset, 4); i < j; ++i) {\n buf[offset + i] = (value >>> (littleEndian ? i : 3 - i) * 8) & 0xff\n }\n}\n\nBuffer.prototype.writeUInt32LE = function writeUInt32LE (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 4, 0xffffffff, 0)\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n this[offset + 3] = (value >>> 24)\n this[offset + 2] = (value >>> 16)\n this[offset + 1] = (value >>> 8)\n this[offset] = (value & 0xff)\n } else {\n objectWriteUInt32(this, value, offset, true)\n }\n return offset + 4\n}\n\nBuffer.prototype.writeUInt32BE = function writeUInt32BE (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 4, 0xffffffff, 0)\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n this[offset] = (value >>> 24)\n this[offset + 1] = (value >>> 16)\n this[offset + 2] = (value >>> 8)\n this[offset + 3] = (value & 0xff)\n } else {\n objectWriteUInt32(this, value, offset, false)\n }\n return offset + 4\n}\n\nBuffer.prototype.writeIntLE = function writeIntLE (value, offset, byteLength, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) {\n var limit = Math.pow(2, 8 * byteLength - 1)\n\n checkInt(this, value, offset, byteLength, limit - 1, -limit)\n }\n\n var i = 0\n var mul = 1\n var sub = 0\n this[offset] = value & 0xFF\n while (++i < byteLength && (mul *= 0x100)) {\n if (value < 0 && sub === 0 && this[offset + i - 1] !== 0) {\n sub = 1\n }\n this[offset + i] = ((value / mul) >> 0) - sub & 0xFF\n }\n\n return offset + byteLength\n}\n\nBuffer.prototype.writeIntBE = function writeIntBE (value, offset, byteLength, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) {\n var limit = Math.pow(2, 8 * byteLength - 1)\n\n checkInt(this, value, offset, byteLength, limit - 1, -limit)\n }\n\n var i = byteLength - 1\n var mul = 1\n var sub = 0\n this[offset + i] = value & 0xFF\n while (--i >= 0 && (mul *= 0x100)) {\n if (value < 0 && sub === 0 && this[offset + i + 1] !== 0) {\n sub = 1\n }\n this[offset + i] = ((value / mul) >> 0) - sub & 0xFF\n }\n\n return offset + byteLength\n}\n\nBuffer.prototype.writeInt8 = function writeInt8 (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 1, 0x7f, -0x80)\n if (!Buffer.TYPED_ARRAY_SUPPORT) value = Math.floor(value)\n if (value < 0) value = 0xff + value + 1\n this[offset] = (value & 0xff)\n return offset + 1\n}\n\nBuffer.prototype.writeInt16LE = function writeInt16LE (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 2, 0x7fff, -0x8000)\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n this[offset] = (value & 0xff)\n this[offset + 1] = (value >>> 8)\n } else {\n objectWriteUInt16(this, value, offset, true)\n }\n return offset + 2\n}\n\nBuffer.prototype.writeInt16BE = function writeInt16BE (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 2, 0x7fff, -0x8000)\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n this[offset] = (value >>> 8)\n this[offset + 1] = (value & 0xff)\n } else {\n objectWriteUInt16(this, value, offset, false)\n }\n return offset + 2\n}\n\nBuffer.prototype.writeInt32LE = function writeInt32LE (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 4, 0x7fffffff, -0x80000000)\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n this[offset] = (value & 0xff)\n this[offset + 1] = (value >>> 8)\n this[offset + 2] = (value >>> 16)\n this[offset + 3] = (value >>> 24)\n } else {\n objectWriteUInt32(this, value, offset, true)\n }\n return offset + 4\n}\n\nBuffer.prototype.writeInt32BE = function writeInt32BE (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 4, 0x7fffffff, -0x80000000)\n if (value < 0) value = 0xffffffff + value + 1\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n this[offset] = (value >>> 24)\n this[offset + 1] = (value >>> 16)\n this[offset + 2] = (value >>> 8)\n this[offset + 3] = (value & 0xff)\n } else {\n objectWriteUInt32(this, value, offset, false)\n }\n return offset + 4\n}\n\nfunction checkIEEE754 (buf, value, offset, ext, max, min) {\n if (offset + ext > buf.length) throw new RangeError('Index out of range')\n if (offset < 0) throw new RangeError('Index out of range')\n}\n\nfunction writeFloat (buf, value, offset, littleEndian, noAssert) {\n if (!noAssert) {\n checkIEEE754(buf, value, offset, 4, 3.4028234663852886e+38, -3.4028234663852886e+38)\n }\n ieee754.write(buf, value, offset, littleEndian, 23, 4)\n return offset + 4\n}\n\nBuffer.prototype.writeFloatLE = function writeFloatLE (value, offset, noAssert) {\n return writeFloat(this, value, offset, true, noAssert)\n}\n\nBuffer.prototype.writeFloatBE = function writeFloatBE (value, offset, noAssert) {\n return writeFloat(this, value, offset, false, noAssert)\n}\n\nfunction writeDouble (buf, value, offset, littleEndian, noAssert) {\n if (!noAssert) {\n checkIEEE754(buf, value, offset, 8, 1.7976931348623157E+308, -1.7976931348623157E+308)\n }\n ieee754.write(buf, value, offset, littleEndian, 52, 8)\n return offset + 8\n}\n\nBuffer.prototype.writeDoubleLE = function writeDoubleLE (value, offset, noAssert) {\n return writeDouble(this, value, offset, true, noAssert)\n}\n\nBuffer.prototype.writeDoubleBE = function writeDoubleBE (value, offset, noAssert) {\n return writeDouble(this, value, offset, false, noAssert)\n}\n\n// copy(targetBuffer, targetStart=0, sourceStart=0, sourceEnd=buffer.length)\nBuffer.prototype.copy = function copy (target, targetStart, start, end) {\n if (!start) start = 0\n if (!end && end !== 0) end = this.length\n if (targetStart >= target.length) targetStart = target.length\n if (!targetStart) targetStart = 0\n if (end > 0 && end < start) end = start\n\n // Copy 0 bytes; we're done\n if (end === start) return 0\n if (target.length === 0 || this.length === 0) return 0\n\n // Fatal error conditions\n if (targetStart < 0) {\n throw new RangeError('targetStart out of bounds')\n }\n if (start < 0 || start >= this.length) throw new RangeError('sourceStart out of bounds')\n if (end < 0) throw new RangeError('sourceEnd out of bounds')\n\n // Are we oob?\n if (end > this.length) end = this.length\n if (target.length - targetStart < end - start) {\n end = target.length - targetStart + start\n }\n\n var len = end - start\n var i\n\n if (this === target && start < targetStart && targetStart < end) {\n // descending copy from end\n for (i = len - 1; i >= 0; --i) {\n target[i + targetStart] = this[i + start]\n }\n } else if (len < 1000 || !Buffer.TYPED_ARRAY_SUPPORT) {\n // ascending copy from start\n for (i = 0; i < len; ++i) {\n target[i + targetStart] = this[i + start]\n }\n } else {\n Uint8Array.prototype.set.call(\n target,\n this.subarray(start, start + len),\n targetStart\n )\n }\n\n return len\n}\n\n// Usage:\n// buffer.fill(number[, offset[, end]])\n// buffer.fill(buffer[, offset[, end]])\n// buffer.fill(string[, offset[, end]][, encoding])\nBuffer.prototype.fill = function fill (val, start, end, encoding) {\n // Handle string cases:\n if (typeof val === 'string') {\n if (typeof start === 'string') {\n encoding = start\n start = 0\n end = this.length\n } else if (typeof end === 'string') {\n encoding = end\n end = this.length\n }\n if (val.length === 1) {\n var code = val.charCodeAt(0)\n if (code < 256) {\n val = code\n }\n }\n if (encoding !== undefined && typeof encoding !== 'string') {\n throw new TypeError('encoding must be a string')\n }\n if (typeof encoding === 'string' && !Buffer.isEncoding(encoding)) {\n throw new TypeError('Unknown encoding: ' + encoding)\n }\n } else if (typeof val === 'number') {\n val = val & 255\n }\n\n // Invalid ranges are not set to a default, so can range check early.\n if (start < 0 || this.length < start || this.length < end) {\n throw new RangeError('Out of range index')\n }\n\n if (end <= start) {\n return this\n }\n\n start = start >>> 0\n end = end === undefined ? this.length : end >>> 0\n\n if (!val) val = 0\n\n var i\n if (typeof val === 'number') {\n for (i = start; i < end; ++i) {\n this[i] = val\n }\n } else {\n var bytes = Buffer.isBuffer(val)\n ? val\n : utf8ToBytes(new Buffer(val, encoding).toString())\n var len = bytes.length\n for (i = 0; i < end - start; ++i) {\n this[i + start] = bytes[i % len]\n }\n }\n\n return this\n}\n\n// HELPER FUNCTIONS\n// ================\n\nvar INVALID_BASE64_RE = /[^+\\/0-9A-Za-z-_]/g\n\nfunction base64clean (str) {\n // Node strips out invalid characters like \\n and \\t from the string, base64-js does not\n str = stringtrim(str).replace(INVALID_BASE64_RE, '')\n // Node converts strings with length < 2 to ''\n if (str.length < 2) return ''\n // Node allows for non-padded base64 strings (missing trailing ===), base64-js does not\n while (str.length % 4 !== 0) {\n str = str + '='\n }\n return str\n}\n\nfunction stringtrim (str) {\n if (str.trim) return str.trim()\n return str.replace(/^\\s+|\\s+$/g, '')\n}\n\nfunction toHex (n) {\n if (n < 16) return '0' + n.toString(16)\n return n.toString(16)\n}\n\nfunction utf8ToBytes (string, units) {\n units = units || Infinity\n var codePoint\n var length = string.length\n var leadSurrogate = null\n var bytes = []\n\n for (var i = 0; i < length; ++i) {\n codePoint = string.charCodeAt(i)\n\n // is surrogate component\n if (codePoint > 0xD7FF && codePoint < 0xE000) {\n // last char was a lead\n if (!leadSurrogate) {\n // no lead yet\n if (codePoint > 0xDBFF) {\n // unexpected trail\n if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n continue\n } else if (i + 1 === length) {\n // unpaired lead\n if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n continue\n }\n\n // valid lead\n leadSurrogate = codePoint\n\n continue\n }\n\n // 2 leads in a row\n if (codePoint < 0xDC00) {\n if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n leadSurrogate = codePoint\n continue\n }\n\n // valid surrogate pair\n codePoint = (leadSurrogate - 0xD800 << 10 | codePoint - 0xDC00) + 0x10000\n } else if (leadSurrogate) {\n // valid bmp char, but last char was a lead\n if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n }\n\n leadSurrogate = null\n\n // encode utf8\n if (codePoint < 0x80) {\n if ((units -= 1) < 0) break\n bytes.push(codePoint)\n } else if (codePoint < 0x800) {\n if ((units -= 2) < 0) break\n bytes.push(\n codePoint >> 0x6 | 0xC0,\n codePoint & 0x3F | 0x80\n )\n } else if (codePoint < 0x10000) {\n if ((units -= 3) < 0) break\n bytes.push(\n codePoint >> 0xC | 0xE0,\n codePoint >> 0x6 & 0x3F | 0x80,\n codePoint & 0x3F | 0x80\n )\n } else if (codePoint < 0x110000) {\n if ((units -= 4) < 0) break\n bytes.push(\n codePoint >> 0x12 | 0xF0,\n codePoint >> 0xC & 0x3F | 0x80,\n codePoint >> 0x6 & 0x3F | 0x80,\n codePoint & 0x3F | 0x80\n )\n } else {\n throw new Error('Invalid code point')\n }\n }\n\n return bytes\n}\n\nfunction asciiToBytes (str) {\n var byteArray = []\n for (var i = 0; i < str.length; ++i) {\n // Node's code seems to be doing this and not & 0x7F..\n byteArray.push(str.charCodeAt(i) & 0xFF)\n }\n return byteArray\n}\n\nfunction utf16leToBytes (str, units) {\n var c, hi, lo\n var byteArray = []\n for (var i = 0; i < str.length; ++i) {\n if ((units -= 2) < 0) break\n\n c = str.charCodeAt(i)\n hi = c >> 8\n lo = c % 256\n byteArray.push(lo)\n byteArray.push(hi)\n }\n\n return byteArray\n}\n\nfunction base64ToBytes (str) {\n return base64.toByteArray(base64clean(str))\n}\n\nfunction blitBuffer (src, dst, offset, length) {\n for (var i = 0; i < length; ++i) {\n if ((i + offset >= dst.length) || (i >= src.length)) break\n dst[i + offset] = src[i]\n }\n return i\n}\n\nfunction isnan (val) {\n return val !== val // eslint-disable-line no-self-compare\n}\n","// `RequireObjectCoercible` abstract operation\n// https://tc39.github.io/ecma262/#sec-requireobjectcoercible\nmodule.exports = function (it) {\n if (it == undefined) throw TypeError(\"Can't call method on \" + it);\n return it;\n};\n","var render = function () {\n var _vm=this;\n var _h=_vm.$createElement;\n var _c=_vm._self._c||_h;\n\n return _vm.variant === 'textarea' ? _c('BFormTextarea', {\n attrs: {\n \"placeholder\": _vm.$t(_vm.placeholder),\n \"rows\": _vm.rows,\n \"disabled\": _vm.disabled,\n \"value\": _vm.currentValue,\n \"state\": _vm.errors.length > 0 ? false : null\n },\n on: {\n \"input\": _vm.updateData\n }\n }) : _vm.variant === 'switch' ? _c('b-form-checkbox', {\n attrs: {\n \"disabled\": _vm.disabled,\n \"checked\": _vm.currentValue,\n \"switch\": \"\"\n },\n on: {\n \"input\": _vm.updateData\n }\n }) : _c('b-form-input', {\n attrs: {\n \"placeholder\": _vm.$t(_vm.placeholder),\n \"disabled\": _vm.disabled,\n \"value\": _vm.currentValue,\n \"state\": _vm.errors.length > 0 ? false : null\n },\n on: {\n \"input\": _vm.updateData\n }\n });\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./WidgetString.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./WidgetString.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./WidgetString.vue?vue&type=template&id=2ec64508&\"\nimport script from \"./WidgetString.vue?vue&type=script&lang=js&\"\nexport * from \"./WidgetString.vue?vue&type=script&lang=js&\"\nimport style0 from \"./WidgetString.vue?vue&type=style&index=0&id=2ec64508&prod&lang=scss&\"\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","'use strict'\n\nexports.byteLength = byteLength\nexports.toByteArray = toByteArray\nexports.fromByteArray = fromByteArray\n\nvar lookup = []\nvar revLookup = []\nvar Arr = typeof Uint8Array !== 'undefined' ? Uint8Array : Array\n\nvar code = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/'\nfor (var i = 0, len = code.length; i < len; ++i) {\n lookup[i] = code[i]\n revLookup[code.charCodeAt(i)] = i\n}\n\n// Support decoding URL-safe base64 strings, as Node.js does.\n// See: https://en.wikipedia.org/wiki/Base64#URL_applications\nrevLookup['-'.charCodeAt(0)] = 62\nrevLookup['_'.charCodeAt(0)] = 63\n\nfunction getLens (b64) {\n var len = b64.length\n\n if (len % 4 > 0) {\n throw new Error('Invalid string. Length must be a multiple of 4')\n }\n\n // Trim off extra bytes after placeholder bytes are found\n // See: https://github.com/beatgammit/base64-js/issues/42\n var validLen = b64.indexOf('=')\n if (validLen === -1) validLen = len\n\n var placeHoldersLen = validLen === len\n ? 0\n : 4 - (validLen % 4)\n\n return [validLen, placeHoldersLen]\n}\n\n// base64 is 4/3 + up to two characters of the original data\nfunction byteLength (b64) {\n var lens = getLens(b64)\n var validLen = lens[0]\n var placeHoldersLen = lens[1]\n return ((validLen + placeHoldersLen) * 3 / 4) - placeHoldersLen\n}\n\nfunction _byteLength (b64, validLen, placeHoldersLen) {\n return ((validLen + placeHoldersLen) * 3 / 4) - placeHoldersLen\n}\n\nfunction toByteArray (b64) {\n var tmp\n var lens = getLens(b64)\n var validLen = lens[0]\n var placeHoldersLen = lens[1]\n\n var arr = new Arr(_byteLength(b64, validLen, placeHoldersLen))\n\n var curByte = 0\n\n // if there are placeholders, only get up to the last complete 4 chars\n var len = placeHoldersLen > 0\n ? validLen - 4\n : validLen\n\n var i\n for (i = 0; i < len; i += 4) {\n tmp =\n (revLookup[b64.charCodeAt(i)] << 18) |\n (revLookup[b64.charCodeAt(i + 1)] << 12) |\n (revLookup[b64.charCodeAt(i + 2)] << 6) |\n revLookup[b64.charCodeAt(i + 3)]\n arr[curByte++] = (tmp >> 16) & 0xFF\n arr[curByte++] = (tmp >> 8) & 0xFF\n arr[curByte++] = tmp & 0xFF\n }\n\n if (placeHoldersLen === 2) {\n tmp =\n (revLookup[b64.charCodeAt(i)] << 2) |\n (revLookup[b64.charCodeAt(i + 1)] >> 4)\n arr[curByte++] = tmp & 0xFF\n }\n\n if (placeHoldersLen === 1) {\n tmp =\n (revLookup[b64.charCodeAt(i)] << 10) |\n (revLookup[b64.charCodeAt(i + 1)] << 4) |\n (revLookup[b64.charCodeAt(i + 2)] >> 2)\n arr[curByte++] = (tmp >> 8) & 0xFF\n arr[curByte++] = tmp & 0xFF\n }\n\n return arr\n}\n\nfunction tripletToBase64 (num) {\n return lookup[num >> 18 & 0x3F] +\n lookup[num >> 12 & 0x3F] +\n lookup[num >> 6 & 0x3F] +\n lookup[num & 0x3F]\n}\n\nfunction encodeChunk (uint8, start, end) {\n var tmp\n var output = []\n for (var i = start; i < end; i += 3) {\n tmp =\n ((uint8[i] << 16) & 0xFF0000) +\n ((uint8[i + 1] << 8) & 0xFF00) +\n (uint8[i + 2] & 0xFF)\n output.push(tripletToBase64(tmp))\n }\n return output.join('')\n}\n\nfunction fromByteArray (uint8) {\n var tmp\n var len = uint8.length\n var extraBytes = len % 3 // if we have 1 byte left, pad 2 bytes\n var parts = []\n var maxChunkLength = 16383 // must be multiple of 3\n\n // go through the array every three bytes, we'll deal with trailing stuff later\n for (var i = 0, len2 = len - extraBytes; i < len2; i += maxChunkLength) {\n parts.push(encodeChunk(uint8, i, (i + maxChunkLength) > len2 ? len2 : (i + maxChunkLength)))\n }\n\n // pad the end with zeros, but make sure to not forget the extra bytes\n if (extraBytes === 1) {\n tmp = uint8[len - 1]\n parts.push(\n lookup[tmp >> 2] +\n lookup[(tmp << 4) & 0x3F] +\n '=='\n )\n } else if (extraBytes === 2) {\n tmp = (uint8[len - 2] << 8) + uint8[len - 1]\n parts.push(\n lookup[tmp >> 10] +\n lookup[(tmp >> 4) & 0x3F] +\n lookup[(tmp << 2) & 0x3F] +\n '='\n )\n }\n\n return parts.join('')\n}\n","import {\n DxDataGrid,\n DxScrolling,\n DxColumn,\n DxPaging,\n DxPager,\n DxFilterRow,\n DxColumnChooser,\n DxRequiredRule,\n DxPosition,\n DxSelection,\n DxLoadPanel,\n DxToolbar,\n DxItem,\n DxEditing,\n DxCustomRule,\n} from \"devextreme-vue/data-grid\";\nimport store from \"@/store\";\nimport \"devextreme/dist/css/dx.light.css\";\n\nimport DeleteDialog from \"@/@core/components/delete-dialog/DeleteDialog.vue\";\n\nimport CustomStore from \"devextreme/data/custom_store\";\nimport DataSource from \"devextreme/data/data_source\";\nimport { Fragment } from \"vue-fragment\";\nimport { useFetch } from \"../Hooks/useFetch.ts\";\n\nimport { ref, defineComponent, PropType } from \"@vue/composition-api\";\nimport { useElementSize } from \"@vueuse/core\";\n\nexport default defineComponent({\n name: \"EzTable\",\n props: {\n forceDisplayActions:Boolean,\n excelExportApiCode: String,\n excelExportParams: Object,\n excelExport: Function,\n customComponent: Object,\n show: Boolean,\n actionsConfig: {\n type: Object,\n default() {\n return {};\n },\n },\n externalLoading: {\n type: Boolean,\n default: false,\n },\n toolbarConfig: {\n type: Object,\n default() {\n return {};\n },\n },\n toolbarActions: {\n type: Array,\n default: () => {\n return [];\n },\n },\n\n selectionConfig: {\n type: Object,\n nullable: true,\n },\n actionType: String,\n actions: {\n type: Array,\n default: () => {\n return [];\n },\n },\n pageConfig: {\n type: Object,\n default: () => {\n return {};\n },\n },\n dataSourceParams: {\n type: Object,\n nullable: true,\n },\n // if dataSource is function , must be promise with final Data return\n dataSource: [Array, Function],\n\n columnResizingMode: String,\n columns: Array,\n editingConfig: Object,\n editable: Boolean,\n },\n components: {\n DxPosition,\n DxCustomRule,\n DxToolbar,\n Fragment,\n DxLoadPanel,\n DxItem,\n DxColumn,\n DeleteDialog,\n DxSelection,\n DxEditing,\n DxRequiredRule,\n DxDataGrid,\n DxColumnChooser,\n DxScrolling,\n DxPaging,\n DxPager,\n DxFilterRow,\n },\n setup(props) {\n const rawDataSourceParams = ref({ ...props.dataSourceParams, OffSet: 0, Limit: 10 });\n\n const { isLoading, data, totalCount } = useFetch(props.dataSource, {\n params: rawDataSourceParams,\n });\n const dataResponse = ref({});\n\n return { isLoading, data, totalCount, rawDataSourceParams, dataResponse };\n },\n data() {\n return {\n rawDataSource: [],\n };\n },\n methods: {\n calculateWidth(type) {\n let width = undefined;\n if (type === \"currency\") {\n width = 100;\n }\n return width;\n },\n onContentReady(e) {},\n truncateWidth(v) {\n if (v) {\n return `width: ${v};`;\n }\n return \"\";\n },\n async handleExportExcel() {\n await this.excelExport(this.excelExportParams).then((res) => {\n const decodedData = Buffer.from(res.Data.FileContents, \"base64\");\n const newBlob = new Blob([decodedData], {\n type: res.Data.ContentType,\n });\n const url = window.URL.createObjectURL(newBlob);\n const a = document.createElement(\"a\");\n a.href = url;\n a.download =\n res.Data.FileDownloadName + \"_\" + this.dayjs(new Date()).format(\"DD/MM/YYYY HH:mm:ss\");\n a.click();\n window.URL.revokeObjectURL(url);\n });\n },\n fetchData() {\n if (this.functionDataSource) {\n const tempDataSourceParams = this.dataSourceParams;\n const rawApi = this.dataSource;\n const self = this;\n let tempDataResponse = {};\n\n this.rawDataSource = new DataSource({\n store: new CustomStore({\n loadMode: \"processed\",\n\n load(loadOptions) {\n let options = {\n ...tempDataSourceParams,\n Limit: loadOptions.take,\n OffSet: loadOptions.skip || 0,\n };\n if (loadOptions.customQueryParams)\n options = { ...options, ...loadOptions.customQueryParams };\n return rawApi(options)\n .then((response) => {\n loadOptions.requireTotalCount = true;\n let tempData = [];\n const dataValues = Object.values(response.Data);\n console.log(this, \"1644\");\n self.dataResponse = response.Data;\n dataValues.forEach((item) => {\n if (Array.isArray(item)) {\n tempData = item;\n }\n });\n return {\n data: tempData,\n totalCount: response.Data.TotalCount,\n };\n })\n .catch(() => {\n throw \"Network error\";\n });\n },\n }),\n });\n } else {\n this.rawDataSource = this.dataSource;\n }\n },\n renderDate(value, dateConfig) {\n let format = \"DD/MM/YYYY HH:mm\";\n\n /* if (dateConfig?.showTime) {\n format += \" hh:mm\";\n } */\n return this.formatDate(value);\n },\n onEditorPreparing: function (e) {\n if (\n e.parentType == \"headerRow\" &&\n e.command == \"select\" &&\n (this.selectionConfig?.mode === \"Single\" || this.selectionConfig?.hideSelectAll)\n ) {\n e.editorElement.remove();\n }\n this.$emit(\"onEditorPreparing\", e);\n },\n renderSlotHeader(fieldName) {\n return fieldName + \"-header\";\n },\n handlePropertyChange: function (e) {\n if (this.functionDataSource) {\n if (e.fullName.includes(\"sortOrder\")) {\n }\n }\n },\n renderColAlign(type) {\n let align = \"left\";\n if (type === \"num\" || type === \"currency\") {\n align = \"right\";\n }\n if (type === \"date\" || type === \"text-variant\") {\n align = \"center\";\n }\n return align;\n },\n\n onCellClick(e) {\n if (e.column.type === \"selection\") {\n return;\n }\n this.$emit(\"cellClick\", e);\n },\n },\n watch: {\n dataSource: {\n handler: function (value) {\n if (!this.functionDataSource) {\n this.rawDataSource = value;\n }\n },\n deep: true,\n },\n dataSourceParams: {\n handler: function (value) {\n if (value) {\n this.rawDataSourceParams = { ...this.dataSourceParams };\n }\n },\n deep: true,\n },\n },\n created() {\n this.fetchData();\n },\n\n computed: {\n dataGridInstance(){\n return this.$refs.dxDatagridRef.instance\n },\n permissionList() {\n return this.permissionsParsed\n ? this.permissionsParsed.map((func) => func.PermissionCode)\n : [];\n },\n functionDataSource() {\n return typeof this.dataSource === \"function\";\n },\n\n actionsSplit() {\n let value = { iconActions: [], dropDownActions: [] };\n if (this.actions.length > 0) {\n const temp = this.actions;\n if (temp.length > 0) {\n const iconActions = temp.length <= 3 ? temp.slice(0, 3) : temp.slice(0, 2);\n const dropDownActions = temp.length > 3 ? temp.slice(2, temp.length) : [];\n\n value = { iconActions, dropDownActions };\n }\n }\n return value;\n },\n\n templateArr() {\n return this.columns?.filter((c) => c.cellTemplate) || [];\n },\n hasSelectionChangeListener() {\n return this.$listeners && this.$listeners[\"selection-changed\"];\n },\n hasExportListener() {\n return this.$listeners && (this.$listeners[\"export-excel\"] || this.$listeners[\"export-pdf\"]);\n },\n },\n});\n","var render = function () {\n var _vm=this;\n var _h=_vm.$createElement;\n var _c=_vm._self._c||_h;\n\n return _c('section', {\n staticClass: \"list-transform\"\n }, [_vm._t(\"default\")], 2);\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SectionTransformTable.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SectionTransformTable.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./SectionTransformTable.vue?vue&type=template&id=6dc9d4a9&\"\nimport script from \"./SectionTransformTable.vue?vue&type=script&lang=js&\"\nexport * from \"./SectionTransformTable.vue?vue&type=script&lang=js&\"\nimport style0 from \"./SectionTransformTable.vue?vue&type=style&index=0&id=6dc9d4a9&prod&lang=scss&\"\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","var toInteger = require('../internals/to-integer');\n\nvar max = Math.max;\nvar min = Math.min;\n\n// Helper for a popular repeating case of the spec:\n// Let integer be ? ToInteger(index).\n// If integer < 0, let result be max((length + integer), 0); else let result be min(integer, length).\nmodule.exports = function (index, length) {\n var integer = toInteger(index);\n return integer < 0 ? max(integer + length, 0) : min(integer, length);\n};\n","var global = require('../internals/global');\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar redefine = require('../internals/redefine');\nvar setGlobal = require('../internals/set-global');\nvar copyConstructorProperties = require('../internals/copy-constructor-properties');\nvar isForced = require('../internals/is-forced');\n\n/*\n options.target - name of the target object\n options.global - target is the global object\n options.stat - export as static methods of target\n options.proto - export as prototype methods of target\n options.real - real prototype method for the `pure` version\n options.forced - export even if the native feature is available\n options.bind - bind methods to the target, required for the `pure` version\n options.wrap - wrap constructors to preventing global pollution, required for the `pure` version\n options.unsafe - use the simple assignment of property instead of delete + defineProperty\n options.sham - add a flag to not completely full polyfills\n options.enumerable - export as enumerable property\n options.noTargetGet - prevent calling a getter on target\n*/\nmodule.exports = function (options, source) {\n var TARGET = options.target;\n var GLOBAL = options.global;\n var STATIC = options.stat;\n var FORCED, target, key, targetProperty, sourceProperty, descriptor;\n if (GLOBAL) {\n target = global;\n } else if (STATIC) {\n target = global[TARGET] || setGlobal(TARGET, {});\n } else {\n target = (global[TARGET] || {}).prototype;\n }\n if (target) for (key in source) {\n sourceProperty = source[key];\n if (options.noTargetGet) {\n descriptor = getOwnPropertyDescriptor(target, key);\n targetProperty = descriptor && descriptor.value;\n } else targetProperty = target[key];\n FORCED = isForced(GLOBAL ? key : TARGET + (STATIC ? '.' : '#') + key, options.forced);\n // contained in target\n if (!FORCED && targetProperty !== undefined) {\n if (typeof sourceProperty === typeof targetProperty) continue;\n copyConstructorProperties(sourceProperty, targetProperty);\n }\n // add a flag to not completely full polyfills\n if (options.sham || (targetProperty && targetProperty.sham)) {\n createNonEnumerableProperty(sourceProperty, 'sham', true);\n }\n // extend global\n redefine(target, key, sourceProperty, options);\n }\n};\n","var render = function () {\n var _vm=this;\n var _h=_vm.$createElement;\n var _c=_vm._self._c||_h;\n\n return _vm.isValidPermission(_vm.apiCode) ? _c('b-button', _vm._g({\n class: {\n 'd-none': !_vm.isValidPermission(_vm.apiCode)\n },\n style: _vm.style,\n attrs: {\n \"variant\": _vm.variant,\n \"disabled\": _vm.disabled\n }\n }, _vm.$listeners), [_vm._t(\"default\")], 2) : _vm._e();\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PermissionButton.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PermissionButton.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./PermissionButton.vue?vue&type=template&id=13ad79c4&\"\nimport script from \"./PermissionButton.vue?vue&type=script&lang=js&\"\nexport * from \"./PermissionButton.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","var internalObjectKeys = require('../internals/object-keys-internal');\nvar enumBugKeys = require('../internals/enum-bug-keys');\n\nvar hiddenKeys = enumBugKeys.concat('length', 'prototype');\n\n// `Object.getOwnPropertyNames` method\n// https://tc39.github.io/ecma262/#sec-object.getownpropertynames\nexports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {\n return internalObjectKeys(O, hiddenKeys);\n};\n","var global = require('../internals/global');\nvar userAgent = require('../internals/engine-user-agent');\n\nvar process = global.process;\nvar versions = process && process.versions;\nvar v8 = versions && versions.v8;\nvar match, version;\n\nif (v8) {\n match = v8.split('.');\n version = match[0] + match[1];\n} else if (userAgent) {\n match = userAgent.match(/Edge\\/(\\d+)/);\n if (!match || match[1] >= 74) {\n match = userAgent.match(/Chrome\\/(\\d+)/);\n if (match) version = match[1];\n }\n}\n\nmodule.exports = version && +version;\n","var render = function () {\n var _vm=this;\n var _h=_vm.$createElement;\n var _c=_vm._self._c||_h;\n\n return _c('Cleave', {\n staticClass: \"form-control\",\n class: {\n 'cleave-error': _vm.errors.length > 0,\n 'text-right': _vm.type === 'currency' || _vm.type === 'numeral'\n },\n attrs: {\n \"value\": _vm.value,\n \"placeholder\": _vm.$t(_vm.placeholder),\n \"disabled\": _vm.disabled,\n \"raw\": true,\n \"options\": _vm.options\n },\n on: {\n \"input\": _vm.updateData\n }\n });\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./WidgetCleave.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./WidgetCleave.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./WidgetCleave.vue?vue&type=template&id=0a670b0f&\"\nimport script from \"./WidgetCleave.vue?vue&type=script&lang=js&\"\nexport * from \"./WidgetCleave.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","var getBuiltIn = require('../internals/get-built-in');\n\nmodule.exports = getBuiltIn('navigator', 'userAgent') || '';\n","export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SidebarSection.vue?vue&type=style&index=0&id=0d27f012&prod&lang=scss&\"","var render = function () {\n var _vm=this;\n var _h=_vm.$createElement;\n var _c=_vm._self._c||_h;\n\n return _c('b-modal', {\n attrs: {\n \"size\": \"md\",\n \"id\": \"listpay-client\",\n \"centered\": \"\"\n },\n on: {\n \"hidden\": function ($event) {\n return _vm.$emit('update:isShow', false);\n },\n \"shown\": _vm.openForm\n },\n scopedSlots: _vm._u([{\n key: \"modal-header\",\n fn: function (_ref) {\n var close = _ref.close;\n return [_c('h4', {\n staticClass: \"mb-0 text-primary\"\n }, [[_vm._v(\" \" + _vm._s(!_vm.isEmpty(_vm.data) ? _vm.$t(\"ap_client_edit_payment\") : _vm.$t(\"ap_client_add_payment\")) + \" \")]], 2), _c('ez-icon', {\n staticClass: \"cursor-pointer\",\n attrs: {\n \"icon\": \"ezAr-icon-x\",\n \"size\": \"24\",\n \"color\": \"#114A9F\"\n },\n on: {\n \"click\": function ($event) {\n return close();\n }\n }\n })];\n }\n }, {\n key: \"modal-footer\",\n fn: function () {\n return [_c('LoadingButton', {\n attrs: {\n \"isLoading\": _vm.isFormLoading || _vm.isFormAddLoading\n },\n on: {\n \"click\": _vm.updatePayment\n }\n }, [_vm._v(\" \" + _vm._s(_vm.$t(\"ar_common_save\")) + \" \")])];\n },\n proxy: true\n }]),\n model: {\n value: _vm.isShow,\n callback: function ($$v) {\n _vm.isShow = $$v;\n },\n expression: \"isShow\"\n }\n }, [_c('FormItems', {\n ref: \"formRef\",\n attrs: {\n \"formData\": _vm.formData,\n \"items\": _vm.formItems\n },\n on: {\n \"input-change\": _vm.onInputChange,\n \"update:formData\": function ($event) {\n _vm.formData = $event;\n },\n \"update:form-data\": function ($event) {\n _vm.formData = $event;\n }\n }\n })], 1);\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ModalListPayAp.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ModalListPayAp.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ModalListPayAp.vue?vue&type=template&id=2a5720d9&\"\nimport script from \"./ModalListPayAp.vue?vue&type=script&lang=js&\"\nexport * from \"./ModalListPayAp.vue?vue&type=script&lang=js&\"\nimport style0 from \"./ModalListPayAp.vue?vue&type=style&index=0&id=2a5720d9&prod&lang=scss&\"\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",";(function (globalScope) {\r\n 'use strict';\r\n\r\n\r\n /*!\r\n * decimal.js v10.4.3\r\n * An arbitrary-precision Decimal type for JavaScript.\r\n * https://github.com/MikeMcl/decimal.js\r\n * Copyright (c) 2022 Michael Mclaughlin \r\n * MIT Licence\r\n */\r\n\r\n\r\n // ----------------------------------- EDITABLE DEFAULTS ------------------------------------ //\r\n\r\n\r\n // The maximum exponent magnitude.\r\n // The limit on the value of `toExpNeg`, `toExpPos`, `minE` and `maxE`.\r\n var EXP_LIMIT = 9e15, // 0 to 9e15\r\n\r\n // The limit on the value of `precision`, and on the value of the first argument to\r\n // `toDecimalPlaces`, `toExponential`, `toFixed`, `toPrecision` and `toSignificantDigits`.\r\n MAX_DIGITS = 1e9, // 0 to 1e9\r\n\r\n // Base conversion alphabet.\r\n NUMERALS = '0123456789abcdef',\r\n\r\n // The natural logarithm of 10 (1025 digits).\r\n LN10 = '2.3025850929940456840179914546843642076011014886287729760333279009675726096773524802359972050895982983419677840422862486334095254650828067566662873690987816894829072083255546808437998948262331985283935053089653777326288461633662222876982198867465436674744042432743651550489343149393914796194044002221051017141748003688084012647080685567743216228355220114804663715659121373450747856947683463616792101806445070648000277502684916746550586856935673420670581136429224554405758925724208241314695689016758940256776311356919292033376587141660230105703089634572075440370847469940168269282808481184289314848524948644871927809676271275775397027668605952496716674183485704422507197965004714951050492214776567636938662976979522110718264549734772662425709429322582798502585509785265383207606726317164309505995087807523710333101197857547331541421808427543863591778117054309827482385045648019095610299291824318237525357709750539565187697510374970888692180205189339507238539205144634197265287286965110862571492198849978748873771345686209167058',\r\n\r\n // Pi (1025 digits).\r\n PI = '3.1415926535897932384626433832795028841971693993751058209749445923078164062862089986280348253421170679821480865132823066470938446095505822317253594081284811174502841027019385211055596446229489549303819644288109756659334461284756482337867831652712019091456485669234603486104543266482133936072602491412737245870066063155881748815209209628292540917153643678925903600113305305488204665213841469519415116094330572703657595919530921861173819326117931051185480744623799627495673518857527248912279381830119491298336733624406566430860213949463952247371907021798609437027705392171762931767523846748184676694051320005681271452635608277857713427577896091736371787214684409012249534301465495853710507922796892589235420199561121290219608640344181598136297747713099605187072113499999983729780499510597317328160963185950244594553469083026425223082533446850352619311881710100031378387528865875332083814206171776691473035982534904287554687311595628638823537875937519577818577805321712268066130019278766111959092164201989380952572010654858632789',\r\n\r\n\r\n // The initial configuration properties of the Decimal constructor.\r\n DEFAULTS = {\r\n\r\n // These values must be integers within the stated ranges (inclusive).\r\n // Most of these values can be changed at run-time using the `Decimal.config` method.\r\n\r\n // The maximum number of significant digits of the result of a calculation or base conversion.\r\n // E.g. `Decimal.config({ precision: 20 });`\r\n precision: 20, // 1 to MAX_DIGITS\r\n\r\n // The rounding mode used when rounding to `precision`.\r\n //\r\n // ROUND_UP 0 Away from zero.\r\n // ROUND_DOWN 1 Towards zero.\r\n // ROUND_CEIL 2 Towards +Infinity.\r\n // ROUND_FLOOR 3 Towards -Infinity.\r\n // ROUND_HALF_UP 4 Towards nearest neighbour. If equidistant, up.\r\n // ROUND_HALF_DOWN 5 Towards nearest neighbour. If equidistant, down.\r\n // ROUND_HALF_EVEN 6 Towards nearest neighbour. If equidistant, towards even neighbour.\r\n // ROUND_HALF_CEIL 7 Towards nearest neighbour. If equidistant, towards +Infinity.\r\n // ROUND_HALF_FLOOR 8 Towards nearest neighbour. If equidistant, towards -Infinity.\r\n //\r\n // E.g.\r\n // `Decimal.rounding = 4;`\r\n // `Decimal.rounding = Decimal.ROUND_HALF_UP;`\r\n rounding: 4, // 0 to 8\r\n\r\n // The modulo mode used when calculating the modulus: a mod n.\r\n // The quotient (q = a / n) is calculated according to the corresponding rounding mode.\r\n // The remainder (r) is calculated as: r = a - n * q.\r\n //\r\n // UP 0 The remainder is positive if the dividend is negative, else is negative.\r\n // DOWN 1 The remainder has the same sign as the dividend (JavaScript %).\r\n // FLOOR 3 The remainder has the same sign as the divisor (Python %).\r\n // HALF_EVEN 6 The IEEE 754 remainder function.\r\n // EUCLID 9 Euclidian division. q = sign(n) * floor(a / abs(n)). Always positive.\r\n //\r\n // Truncated division (1), floored division (3), the IEEE 754 remainder (6), and Euclidian\r\n // division (9) are commonly used for the modulus operation. The other rounding modes can also\r\n // be used, but they may not give useful results.\r\n modulo: 1, // 0 to 9\r\n\r\n // The exponent value at and beneath which `toString` returns exponential notation.\r\n // JavaScript numbers: -7\r\n toExpNeg: -7, // 0 to -EXP_LIMIT\r\n\r\n // The exponent value at and above which `toString` returns exponential notation.\r\n // JavaScript numbers: 21\r\n toExpPos: 21, // 0 to EXP_LIMIT\r\n\r\n // The minimum exponent value, beneath which underflow to zero occurs.\r\n // JavaScript numbers: -324 (5e-324)\r\n minE: -EXP_LIMIT, // -1 to -EXP_LIMIT\r\n\r\n // The maximum exponent value, above which overflow to Infinity occurs.\r\n // JavaScript numbers: 308 (1.7976931348623157e+308)\r\n maxE: EXP_LIMIT, // 1 to EXP_LIMIT\r\n\r\n // Whether to use cryptographically-secure random number generation, if available.\r\n crypto: false // true/false\r\n },\r\n\r\n\r\n // ----------------------------------- END OF EDITABLE DEFAULTS ------------------------------- //\r\n\r\n\r\n Decimal, inexact, noConflict, quadrant,\r\n external = true,\r\n\r\n decimalError = '[DecimalError] ',\r\n invalidArgument = decimalError + 'Invalid argument: ',\r\n precisionLimitExceeded = decimalError + 'Precision limit exceeded',\r\n cryptoUnavailable = decimalError + 'crypto unavailable',\r\n tag = '[object Decimal]',\r\n\r\n mathfloor = Math.floor,\r\n mathpow = Math.pow,\r\n\r\n isBinary = /^0b([01]+(\\.[01]*)?|\\.[01]+)(p[+-]?\\d+)?$/i,\r\n isHex = /^0x([0-9a-f]+(\\.[0-9a-f]*)?|\\.[0-9a-f]+)(p[+-]?\\d+)?$/i,\r\n isOctal = /^0o([0-7]+(\\.[0-7]*)?|\\.[0-7]+)(p[+-]?\\d+)?$/i,\r\n isDecimal = /^(\\d+(\\.\\d*)?|\\.\\d+)(e[+-]?\\d+)?$/i,\r\n\r\n BASE = 1e7,\r\n LOG_BASE = 7,\r\n MAX_SAFE_INTEGER = 9007199254740991,\r\n\r\n LN10_PRECISION = LN10.length - 1,\r\n PI_PRECISION = PI.length - 1,\r\n\r\n // Decimal.prototype object\r\n P = { toStringTag: tag };\r\n\r\n\r\n // Decimal prototype methods\r\n\r\n\r\n /*\r\n * absoluteValue abs\r\n * ceil\r\n * clampedTo clamp\r\n * comparedTo cmp\r\n * cosine cos\r\n * cubeRoot cbrt\r\n * decimalPlaces dp\r\n * dividedBy div\r\n * dividedToIntegerBy divToInt\r\n * equals eq\r\n * floor\r\n * greaterThan gt\r\n * greaterThanOrEqualTo gte\r\n * hyperbolicCosine cosh\r\n * hyperbolicSine sinh\r\n * hyperbolicTangent tanh\r\n * inverseCosine acos\r\n * inverseHyperbolicCosine acosh\r\n * inverseHyperbolicSine asinh\r\n * inverseHyperbolicTangent atanh\r\n * inverseSine asin\r\n * inverseTangent atan\r\n * isFinite\r\n * isInteger isInt\r\n * isNaN\r\n * isNegative isNeg\r\n * isPositive isPos\r\n * isZero\r\n * lessThan lt\r\n * lessThanOrEqualTo lte\r\n * logarithm log\r\n * [maximum] [max]\r\n * [minimum] [min]\r\n * minus sub\r\n * modulo mod\r\n * naturalExponential exp\r\n * naturalLogarithm ln\r\n * negated neg\r\n * plus add\r\n * precision sd\r\n * round\r\n * sine sin\r\n * squareRoot sqrt\r\n * tangent tan\r\n * times mul\r\n * toBinary\r\n * toDecimalPlaces toDP\r\n * toExponential\r\n * toFixed\r\n * toFraction\r\n * toHexadecimal toHex\r\n * toNearest\r\n * toNumber\r\n * toOctal\r\n * toPower pow\r\n * toPrecision\r\n * toSignificantDigits toSD\r\n * toString\r\n * truncated trunc\r\n * valueOf toJSON\r\n */\r\n\r\n\r\n /*\r\n * Return a new Decimal whose value is the absolute value of this Decimal.\r\n *\r\n */\r\n P.absoluteValue = P.abs = function () {\r\n var x = new this.constructor(this);\r\n if (x.s < 0) x.s = 1;\r\n return finalise(x);\r\n };\r\n\r\n\r\n /*\r\n * Return a new Decimal whose value is the value of this Decimal rounded to a whole number in the\r\n * direction of positive Infinity.\r\n *\r\n */\r\n P.ceil = function () {\r\n return finalise(new this.constructor(this), this.e + 1, 2);\r\n };\r\n\r\n\r\n /*\r\n * Return a new Decimal whose value is the value of this Decimal clamped to the range\r\n * delineated by `min` and `max`.\r\n *\r\n * min {number|string|Decimal}\r\n * max {number|string|Decimal}\r\n *\r\n */\r\n P.clampedTo = P.clamp = function (min, max) {\r\n var k,\r\n x = this,\r\n Ctor = x.constructor;\r\n min = new Ctor(min);\r\n max = new Ctor(max);\r\n if (!min.s || !max.s) return new Ctor(NaN);\r\n if (min.gt(max)) throw Error(invalidArgument + max);\r\n k = x.cmp(min);\r\n return k < 0 ? min : x.cmp(max) > 0 ? max : new Ctor(x);\r\n };\r\n\r\n\r\n /*\r\n * Return\r\n * 1 if the value of this Decimal is greater than the value of `y`,\r\n * -1 if the value of this Decimal is less than the value of `y`,\r\n * 0 if they have the same value,\r\n * NaN if the value of either Decimal is NaN.\r\n *\r\n */\r\n P.comparedTo = P.cmp = function (y) {\r\n var i, j, xdL, ydL,\r\n x = this,\r\n xd = x.d,\r\n yd = (y = new x.constructor(y)).d,\r\n xs = x.s,\r\n ys = y.s;\r\n\r\n // Either NaN or ±Infinity?\r\n if (!xd || !yd) {\r\n return !xs || !ys ? NaN : xs !== ys ? xs : xd === yd ? 0 : !xd ^ xs < 0 ? 1 : -1;\r\n }\r\n\r\n // Either zero?\r\n if (!xd[0] || !yd[0]) return xd[0] ? xs : yd[0] ? -ys : 0;\r\n\r\n // Signs differ?\r\n if (xs !== ys) return xs;\r\n\r\n // Compare exponents.\r\n if (x.e !== y.e) return x.e > y.e ^ xs < 0 ? 1 : -1;\r\n\r\n xdL = xd.length;\r\n ydL = yd.length;\r\n\r\n // Compare digit by digit.\r\n for (i = 0, j = xdL < ydL ? xdL : ydL; i < j; ++i) {\r\n if (xd[i] !== yd[i]) return xd[i] > yd[i] ^ xs < 0 ? 1 : -1;\r\n }\r\n\r\n // Compare lengths.\r\n return xdL === ydL ? 0 : xdL > ydL ^ xs < 0 ? 1 : -1;\r\n };\r\n\r\n\r\n /*\r\n * Return a new Decimal whose value is the cosine of the value in radians of this Decimal.\r\n *\r\n * Domain: [-Infinity, Infinity]\r\n * Range: [-1, 1]\r\n *\r\n * cos(0) = 1\r\n * cos(-0) = 1\r\n * cos(Infinity) = NaN\r\n * cos(-Infinity) = NaN\r\n * cos(NaN) = NaN\r\n *\r\n */\r\n P.cosine = P.cos = function () {\r\n var pr, rm,\r\n x = this,\r\n Ctor = x.constructor;\r\n\r\n if (!x.d) return new Ctor(NaN);\r\n\r\n // cos(0) = cos(-0) = 1\r\n if (!x.d[0]) return new Ctor(1);\r\n\r\n pr = Ctor.precision;\r\n rm = Ctor.rounding;\r\n Ctor.precision = pr + Math.max(x.e, x.sd()) + LOG_BASE;\r\n Ctor.rounding = 1;\r\n\r\n x = cosine(Ctor, toLessThanHalfPi(Ctor, x));\r\n\r\n Ctor.precision = pr;\r\n Ctor.rounding = rm;\r\n\r\n return finalise(quadrant == 2 || quadrant == 3 ? x.neg() : x, pr, rm, true);\r\n };\r\n\r\n\r\n /*\r\n *\r\n * Return a new Decimal whose value is the cube root of the value of this Decimal, rounded to\r\n * `precision` significant digits using rounding mode `rounding`.\r\n *\r\n * cbrt(0) = 0\r\n * cbrt(-0) = -0\r\n * cbrt(1) = 1\r\n * cbrt(-1) = -1\r\n * cbrt(N) = N\r\n * cbrt(-I) = -I\r\n * cbrt(I) = I\r\n *\r\n * Math.cbrt(x) = (x < 0 ? -Math.pow(-x, 1/3) : Math.pow(x, 1/3))\r\n *\r\n */\r\n P.cubeRoot = P.cbrt = function () {\r\n var e, m, n, r, rep, s, sd, t, t3, t3plusx,\r\n x = this,\r\n Ctor = x.constructor;\r\n\r\n if (!x.isFinite() || x.isZero()) return new Ctor(x);\r\n external = false;\r\n\r\n // Initial estimate.\r\n s = x.s * mathpow(x.s * x, 1 / 3);\r\n\r\n // Math.cbrt underflow/overflow?\r\n // Pass x to Math.pow as integer, then adjust the exponent of the result.\r\n if (!s || Math.abs(s) == 1 / 0) {\r\n n = digitsToString(x.d);\r\n e = x.e;\r\n\r\n // Adjust n exponent so it is a multiple of 3 away from x exponent.\r\n if (s = (e - n.length + 1) % 3) n += (s == 1 || s == -2 ? '0' : '00');\r\n s = mathpow(n, 1 / 3);\r\n\r\n // Rarely, e may be one less than the result exponent value.\r\n e = mathfloor((e + 1) / 3) - (e % 3 == (e < 0 ? -1 : 2));\r\n\r\n if (s == 1 / 0) {\r\n n = '5e' + e;\r\n } else {\r\n n = s.toExponential();\r\n n = n.slice(0, n.indexOf('e') + 1) + e;\r\n }\r\n\r\n r = new Ctor(n);\r\n r.s = x.s;\r\n } else {\r\n r = new Ctor(s.toString());\r\n }\r\n\r\n sd = (e = Ctor.precision) + 3;\r\n\r\n // Halley's method.\r\n // TODO? Compare Newton's method.\r\n for (;;) {\r\n t = r;\r\n t3 = t.times(t).times(t);\r\n t3plusx = t3.plus(x);\r\n r = divide(t3plusx.plus(x).times(t), t3plusx.plus(t3), sd + 2, 1);\r\n\r\n // TODO? Replace with for-loop and checkRoundingDigits.\r\n if (digitsToString(t.d).slice(0, sd) === (n = digitsToString(r.d)).slice(0, sd)) {\r\n n = n.slice(sd - 3, sd + 1);\r\n\r\n // The 4th rounding digit may be in error by -1 so if the 4 rounding digits are 9999 or 4999\r\n // , i.e. approaching a rounding boundary, continue the iteration.\r\n if (n == '9999' || !rep && n == '4999') {\r\n\r\n // On the first iteration only, check to see if rounding up gives the exact result as the\r\n // nines may infinitely repeat.\r\n if (!rep) {\r\n finalise(t, e + 1, 0);\r\n\r\n if (t.times(t).times(t).eq(x)) {\r\n r = t;\r\n break;\r\n }\r\n }\r\n\r\n sd += 4;\r\n rep = 1;\r\n } else {\r\n\r\n // If the rounding digits are null, 0{0,4} or 50{0,3}, check for an exact result.\r\n // If not, then there are further digits and m will be truthy.\r\n if (!+n || !+n.slice(1) && n.charAt(0) == '5') {\r\n\r\n // Truncate to the first rounding digit.\r\n finalise(r, e + 1, 1);\r\n m = !r.times(r).times(r).eq(x);\r\n }\r\n\r\n break;\r\n }\r\n }\r\n }\r\n\r\n external = true;\r\n\r\n return finalise(r, e, Ctor.rounding, m);\r\n };\r\n\r\n\r\n /*\r\n * Return the number of decimal places of the value of this Decimal.\r\n *\r\n */\r\n P.decimalPlaces = P.dp = function () {\r\n var w,\r\n d = this.d,\r\n n = NaN;\r\n\r\n if (d) {\r\n w = d.length - 1;\r\n n = (w - mathfloor(this.e / LOG_BASE)) * LOG_BASE;\r\n\r\n // Subtract the number of trailing zeros of the last word.\r\n w = d[w];\r\n if (w) for (; w % 10 == 0; w /= 10) n--;\r\n if (n < 0) n = 0;\r\n }\r\n\r\n return n;\r\n };\r\n\r\n\r\n /*\r\n * n / 0 = I\r\n * n / N = N\r\n * n / I = 0\r\n * 0 / n = 0\r\n * 0 / 0 = N\r\n * 0 / N = N\r\n * 0 / I = 0\r\n * N / n = N\r\n * N / 0 = N\r\n * N / N = N\r\n * N / I = N\r\n * I / n = I\r\n * I / 0 = I\r\n * I / N = N\r\n * I / I = N\r\n *\r\n * Return a new Decimal whose value is the value of this Decimal divided by `y`, rounded to\r\n * `precision` significant digits using rounding mode `rounding`.\r\n *\r\n */\r\n P.dividedBy = P.div = function (y) {\r\n return divide(this, new this.constructor(y));\r\n };\r\n\r\n\r\n /*\r\n * Return a new Decimal whose value is the integer part of dividing the value of this Decimal\r\n * by the value of `y`, rounded to `precision` significant digits using rounding mode `rounding`.\r\n *\r\n */\r\n P.dividedToIntegerBy = P.divToInt = function (y) {\r\n var x = this,\r\n Ctor = x.constructor;\r\n return finalise(divide(x, new Ctor(y), 0, 1, 1), Ctor.precision, Ctor.rounding);\r\n };\r\n\r\n\r\n /*\r\n * Return true if the value of this Decimal is equal to the value of `y`, otherwise return false.\r\n *\r\n */\r\n P.equals = P.eq = function (y) {\r\n return this.cmp(y) === 0;\r\n };\r\n\r\n\r\n /*\r\n * Return a new Decimal whose value is the value of this Decimal rounded to a whole number in the\r\n * direction of negative Infinity.\r\n *\r\n */\r\n P.floor = function () {\r\n return finalise(new this.constructor(this), this.e + 1, 3);\r\n };\r\n\r\n\r\n /*\r\n * Return true if the value of this Decimal is greater than the value of `y`, otherwise return\r\n * false.\r\n *\r\n */\r\n P.greaterThan = P.gt = function (y) {\r\n return this.cmp(y) > 0;\r\n };\r\n\r\n\r\n /*\r\n * Return true if the value of this Decimal is greater than or equal to the value of `y`,\r\n * otherwise return false.\r\n *\r\n */\r\n P.greaterThanOrEqualTo = P.gte = function (y) {\r\n var k = this.cmp(y);\r\n return k == 1 || k === 0;\r\n };\r\n\r\n\r\n /*\r\n * Return a new Decimal whose value is the hyperbolic cosine of the value in radians of this\r\n * Decimal.\r\n *\r\n * Domain: [-Infinity, Infinity]\r\n * Range: [1, Infinity]\r\n *\r\n * cosh(x) = 1 + x^2/2! + x^4/4! + x^6/6! + ...\r\n *\r\n * cosh(0) = 1\r\n * cosh(-0) = 1\r\n * cosh(Infinity) = Infinity\r\n * cosh(-Infinity) = Infinity\r\n * cosh(NaN) = NaN\r\n *\r\n * x time taken (ms) result\r\n * 1000 9 9.8503555700852349694e+433\r\n * 10000 25 4.4034091128314607936e+4342\r\n * 100000 171 1.4033316802130615897e+43429\r\n * 1000000 3817 1.5166076984010437725e+434294\r\n * 10000000 abandoned after 2 minute wait\r\n *\r\n * TODO? Compare performance of cosh(x) = 0.5 * (exp(x) + exp(-x))\r\n *\r\n */\r\n P.hyperbolicCosine = P.cosh = function () {\r\n var k, n, pr, rm, len,\r\n x = this,\r\n Ctor = x.constructor,\r\n one = new Ctor(1);\r\n\r\n if (!x.isFinite()) return new Ctor(x.s ? 1 / 0 : NaN);\r\n if (x.isZero()) return one;\r\n\r\n pr = Ctor.precision;\r\n rm = Ctor.rounding;\r\n Ctor.precision = pr + Math.max(x.e, x.sd()) + 4;\r\n Ctor.rounding = 1;\r\n len = x.d.length;\r\n\r\n // Argument reduction: cos(4x) = 1 - 8cos^2(x) + 8cos^4(x) + 1\r\n // i.e. cos(x) = 1 - cos^2(x/4)(8 - 8cos^2(x/4))\r\n\r\n // Estimate the optimum number of times to use the argument reduction.\r\n // TODO? Estimation reused from cosine() and may not be optimal here.\r\n if (len < 32) {\r\n k = Math.ceil(len / 3);\r\n n = (1 / tinyPow(4, k)).toString();\r\n } else {\r\n k = 16;\r\n n = '2.3283064365386962890625e-10';\r\n }\r\n\r\n x = taylorSeries(Ctor, 1, x.times(n), new Ctor(1), true);\r\n\r\n // Reverse argument reduction\r\n var cosh2_x,\r\n i = k,\r\n d8 = new Ctor(8);\r\n for (; i--;) {\r\n cosh2_x = x.times(x);\r\n x = one.minus(cosh2_x.times(d8.minus(cosh2_x.times(d8))));\r\n }\r\n\r\n return finalise(x, Ctor.precision = pr, Ctor.rounding = rm, true);\r\n };\r\n\r\n\r\n /*\r\n * Return a new Decimal whose value is the hyperbolic sine of the value in radians of this\r\n * Decimal.\r\n *\r\n * Domain: [-Infinity, Infinity]\r\n * Range: [-Infinity, Infinity]\r\n *\r\n * sinh(x) = x + x^3/3! + x^5/5! + x^7/7! + ...\r\n *\r\n * sinh(0) = 0\r\n * sinh(-0) = -0\r\n * sinh(Infinity) = Infinity\r\n * sinh(-Infinity) = -Infinity\r\n * sinh(NaN) = NaN\r\n *\r\n * x time taken (ms)\r\n * 10 2 ms\r\n * 100 5 ms\r\n * 1000 14 ms\r\n * 10000 82 ms\r\n * 100000 886 ms 1.4033316802130615897e+43429\r\n * 200000 2613 ms\r\n * 300000 5407 ms\r\n * 400000 8824 ms\r\n * 500000 13026 ms 8.7080643612718084129e+217146\r\n * 1000000 48543 ms\r\n *\r\n * TODO? Compare performance of sinh(x) = 0.5 * (exp(x) - exp(-x))\r\n *\r\n */\r\n P.hyperbolicSine = P.sinh = function () {\r\n var k, pr, rm, len,\r\n x = this,\r\n Ctor = x.constructor;\r\n\r\n if (!x.isFinite() || x.isZero()) return new Ctor(x);\r\n\r\n pr = Ctor.precision;\r\n rm = Ctor.rounding;\r\n Ctor.precision = pr + Math.max(x.e, x.sd()) + 4;\r\n Ctor.rounding = 1;\r\n len = x.d.length;\r\n\r\n if (len < 3) {\r\n x = taylorSeries(Ctor, 2, x, x, true);\r\n } else {\r\n\r\n // Alternative argument reduction: sinh(3x) = sinh(x)(3 + 4sinh^2(x))\r\n // i.e. sinh(x) = sinh(x/3)(3 + 4sinh^2(x/3))\r\n // 3 multiplications and 1 addition\r\n\r\n // Argument reduction: sinh(5x) = sinh(x)(5 + sinh^2(x)(20 + 16sinh^2(x)))\r\n // i.e. sinh(x) = sinh(x/5)(5 + sinh^2(x/5)(20 + 16sinh^2(x/5)))\r\n // 4 multiplications and 2 additions\r\n\r\n // Estimate the optimum number of times to use the argument reduction.\r\n k = 1.4 * Math.sqrt(len);\r\n k = k > 16 ? 16 : k | 0;\r\n\r\n x = x.times(1 / tinyPow(5, k));\r\n x = taylorSeries(Ctor, 2, x, x, true);\r\n\r\n // Reverse argument reduction\r\n var sinh2_x,\r\n d5 = new Ctor(5),\r\n d16 = new Ctor(16),\r\n d20 = new Ctor(20);\r\n for (; k--;) {\r\n sinh2_x = x.times(x);\r\n x = x.times(d5.plus(sinh2_x.times(d16.times(sinh2_x).plus(d20))));\r\n }\r\n }\r\n\r\n Ctor.precision = pr;\r\n Ctor.rounding = rm;\r\n\r\n return finalise(x, pr, rm, true);\r\n };\r\n\r\n\r\n /*\r\n * Return a new Decimal whose value is the hyperbolic tangent of the value in radians of this\r\n * Decimal.\r\n *\r\n * Domain: [-Infinity, Infinity]\r\n * Range: [-1, 1]\r\n *\r\n * tanh(x) = sinh(x) / cosh(x)\r\n *\r\n * tanh(0) = 0\r\n * tanh(-0) = -0\r\n * tanh(Infinity) = 1\r\n * tanh(-Infinity) = -1\r\n * tanh(NaN) = NaN\r\n *\r\n */\r\n P.hyperbolicTangent = P.tanh = function () {\r\n var pr, rm,\r\n x = this,\r\n Ctor = x.constructor;\r\n\r\n if (!x.isFinite()) return new Ctor(x.s);\r\n if (x.isZero()) return new Ctor(x);\r\n\r\n pr = Ctor.precision;\r\n rm = Ctor.rounding;\r\n Ctor.precision = pr + 7;\r\n Ctor.rounding = 1;\r\n\r\n return divide(x.sinh(), x.cosh(), Ctor.precision = pr, Ctor.rounding = rm);\r\n };\r\n\r\n\r\n /*\r\n * Return a new Decimal whose value is the arccosine (inverse cosine) in radians of the value of\r\n * this Decimal.\r\n *\r\n * Domain: [-1, 1]\r\n * Range: [0, pi]\r\n *\r\n * acos(x) = pi/2 - asin(x)\r\n *\r\n * acos(0) = pi/2\r\n * acos(-0) = pi/2\r\n * acos(1) = 0\r\n * acos(-1) = pi\r\n * acos(1/2) = pi/3\r\n * acos(-1/2) = 2*pi/3\r\n * acos(|x| > 1) = NaN\r\n * acos(NaN) = NaN\r\n *\r\n */\r\n P.inverseCosine = P.acos = function () {\r\n var halfPi,\r\n x = this,\r\n Ctor = x.constructor,\r\n k = x.abs().cmp(1),\r\n pr = Ctor.precision,\r\n rm = Ctor.rounding;\r\n\r\n if (k !== -1) {\r\n return k === 0\r\n // |x| is 1\r\n ? x.isNeg() ? getPi(Ctor, pr, rm) : new Ctor(0)\r\n // |x| > 1 or x is NaN\r\n : new Ctor(NaN);\r\n }\r\n\r\n if (x.isZero()) return getPi(Ctor, pr + 4, rm).times(0.5);\r\n\r\n // TODO? Special case acos(0.5) = pi/3 and acos(-0.5) = 2*pi/3\r\n\r\n Ctor.precision = pr + 6;\r\n Ctor.rounding = 1;\r\n\r\n x = x.asin();\r\n halfPi = getPi(Ctor, pr + 4, rm).times(0.5);\r\n\r\n Ctor.precision = pr;\r\n Ctor.rounding = rm;\r\n\r\n return halfPi.minus(x);\r\n };\r\n\r\n\r\n /*\r\n * Return a new Decimal whose value is the inverse of the hyperbolic cosine in radians of the\r\n * value of this Decimal.\r\n *\r\n * Domain: [1, Infinity]\r\n * Range: [0, Infinity]\r\n *\r\n * acosh(x) = ln(x + sqrt(x^2 - 1))\r\n *\r\n * acosh(x < 1) = NaN\r\n * acosh(NaN) = NaN\r\n * acosh(Infinity) = Infinity\r\n * acosh(-Infinity) = NaN\r\n * acosh(0) = NaN\r\n * acosh(-0) = NaN\r\n * acosh(1) = 0\r\n * acosh(-1) = NaN\r\n *\r\n */\r\n P.inverseHyperbolicCosine = P.acosh = function () {\r\n var pr, rm,\r\n x = this,\r\n Ctor = x.constructor;\r\n\r\n if (x.lte(1)) return new Ctor(x.eq(1) ? 0 : NaN);\r\n if (!x.isFinite()) return new Ctor(x);\r\n\r\n pr = Ctor.precision;\r\n rm = Ctor.rounding;\r\n Ctor.precision = pr + Math.max(Math.abs(x.e), x.sd()) + 4;\r\n Ctor.rounding = 1;\r\n external = false;\r\n\r\n x = x.times(x).minus(1).sqrt().plus(x);\r\n\r\n external = true;\r\n Ctor.precision = pr;\r\n Ctor.rounding = rm;\r\n\r\n return x.ln();\r\n };\r\n\r\n\r\n /*\r\n * Return a new Decimal whose value is the inverse of the hyperbolic sine in radians of the value\r\n * of this Decimal.\r\n *\r\n * Domain: [-Infinity, Infinity]\r\n * Range: [-Infinity, Infinity]\r\n *\r\n * asinh(x) = ln(x + sqrt(x^2 + 1))\r\n *\r\n * asinh(NaN) = NaN\r\n * asinh(Infinity) = Infinity\r\n * asinh(-Infinity) = -Infinity\r\n * asinh(0) = 0\r\n * asinh(-0) = -0\r\n *\r\n */\r\n P.inverseHyperbolicSine = P.asinh = function () {\r\n var pr, rm,\r\n x = this,\r\n Ctor = x.constructor;\r\n\r\n if (!x.isFinite() || x.isZero()) return new Ctor(x);\r\n\r\n pr = Ctor.precision;\r\n rm = Ctor.rounding;\r\n Ctor.precision = pr + 2 * Math.max(Math.abs(x.e), x.sd()) + 6;\r\n Ctor.rounding = 1;\r\n external = false;\r\n\r\n x = x.times(x).plus(1).sqrt().plus(x);\r\n\r\n external = true;\r\n Ctor.precision = pr;\r\n Ctor.rounding = rm;\r\n\r\n return x.ln();\r\n };\r\n\r\n\r\n /*\r\n * Return a new Decimal whose value is the inverse of the hyperbolic tangent in radians of the\r\n * value of this Decimal.\r\n *\r\n * Domain: [-1, 1]\r\n * Range: [-Infinity, Infinity]\r\n *\r\n * atanh(x) = 0.5 * ln((1 + x) / (1 - x))\r\n *\r\n * atanh(|x| > 1) = NaN\r\n * atanh(NaN) = NaN\r\n * atanh(Infinity) = NaN\r\n * atanh(-Infinity) = NaN\r\n * atanh(0) = 0\r\n * atanh(-0) = -0\r\n * atanh(1) = Infinity\r\n * atanh(-1) = -Infinity\r\n *\r\n */\r\n P.inverseHyperbolicTangent = P.atanh = function () {\r\n var pr, rm, wpr, xsd,\r\n x = this,\r\n Ctor = x.constructor;\r\n\r\n if (!x.isFinite()) return new Ctor(NaN);\r\n if (x.e >= 0) return new Ctor(x.abs().eq(1) ? x.s / 0 : x.isZero() ? x : NaN);\r\n\r\n pr = Ctor.precision;\r\n rm = Ctor.rounding;\r\n xsd = x.sd();\r\n\r\n if (Math.max(xsd, pr) < 2 * -x.e - 1) return finalise(new Ctor(x), pr, rm, true);\r\n\r\n Ctor.precision = wpr = xsd - x.e;\r\n\r\n x = divide(x.plus(1), new Ctor(1).minus(x), wpr + pr, 1);\r\n\r\n Ctor.precision = pr + 4;\r\n Ctor.rounding = 1;\r\n\r\n x = x.ln();\r\n\r\n Ctor.precision = pr;\r\n Ctor.rounding = rm;\r\n\r\n return x.times(0.5);\r\n };\r\n\r\n\r\n /*\r\n * Return a new Decimal whose value is the arcsine (inverse sine) in radians of the value of this\r\n * Decimal.\r\n *\r\n * Domain: [-Infinity, Infinity]\r\n * Range: [-pi/2, pi/2]\r\n *\r\n * asin(x) = 2*atan(x/(1 + sqrt(1 - x^2)))\r\n *\r\n * asin(0) = 0\r\n * asin(-0) = -0\r\n * asin(1/2) = pi/6\r\n * asin(-1/2) = -pi/6\r\n * asin(1) = pi/2\r\n * asin(-1) = -pi/2\r\n * asin(|x| > 1) = NaN\r\n * asin(NaN) = NaN\r\n *\r\n * TODO? Compare performance of Taylor series.\r\n *\r\n */\r\n P.inverseSine = P.asin = function () {\r\n var halfPi, k,\r\n pr, rm,\r\n x = this,\r\n Ctor = x.constructor;\r\n\r\n if (x.isZero()) return new Ctor(x);\r\n\r\n k = x.abs().cmp(1);\r\n pr = Ctor.precision;\r\n rm = Ctor.rounding;\r\n\r\n if (k !== -1) {\r\n\r\n // |x| is 1\r\n if (k === 0) {\r\n halfPi = getPi(Ctor, pr + 4, rm).times(0.5);\r\n halfPi.s = x.s;\r\n return halfPi;\r\n }\r\n\r\n // |x| > 1 or x is NaN\r\n return new Ctor(NaN);\r\n }\r\n\r\n // TODO? Special case asin(1/2) = pi/6 and asin(-1/2) = -pi/6\r\n\r\n Ctor.precision = pr + 6;\r\n Ctor.rounding = 1;\r\n\r\n x = x.div(new Ctor(1).minus(x.times(x)).sqrt().plus(1)).atan();\r\n\r\n Ctor.precision = pr;\r\n Ctor.rounding = rm;\r\n\r\n return x.times(2);\r\n };\r\n\r\n\r\n /*\r\n * Return a new Decimal whose value is the arctangent (inverse tangent) in radians of the value\r\n * of this Decimal.\r\n *\r\n * Domain: [-Infinity, Infinity]\r\n * Range: [-pi/2, pi/2]\r\n *\r\n * atan(x) = x - x^3/3 + x^5/5 - x^7/7 + ...\r\n *\r\n * atan(0) = 0\r\n * atan(-0) = -0\r\n * atan(1) = pi/4\r\n * atan(-1) = -pi/4\r\n * atan(Infinity) = pi/2\r\n * atan(-Infinity) = -pi/2\r\n * atan(NaN) = NaN\r\n *\r\n */\r\n P.inverseTangent = P.atan = function () {\r\n var i, j, k, n, px, t, r, wpr, x2,\r\n x = this,\r\n Ctor = x.constructor,\r\n pr = Ctor.precision,\r\n rm = Ctor.rounding;\r\n\r\n if (!x.isFinite()) {\r\n if (!x.s) return new Ctor(NaN);\r\n if (pr + 4 <= PI_PRECISION) {\r\n r = getPi(Ctor, pr + 4, rm).times(0.5);\r\n r.s = x.s;\r\n return r;\r\n }\r\n } else if (x.isZero()) {\r\n return new Ctor(x);\r\n } else if (x.abs().eq(1) && pr + 4 <= PI_PRECISION) {\r\n r = getPi(Ctor, pr + 4, rm).times(0.25);\r\n r.s = x.s;\r\n return r;\r\n }\r\n\r\n Ctor.precision = wpr = pr + 10;\r\n Ctor.rounding = 1;\r\n\r\n // TODO? if (x >= 1 && pr <= PI_PRECISION) atan(x) = halfPi * x.s - atan(1 / x);\r\n\r\n // Argument reduction\r\n // Ensure |x| < 0.42\r\n // atan(x) = 2 * atan(x / (1 + sqrt(1 + x^2)))\r\n\r\n k = Math.min(28, wpr / LOG_BASE + 2 | 0);\r\n\r\n for (i = k; i; --i) x = x.div(x.times(x).plus(1).sqrt().plus(1));\r\n\r\n external = false;\r\n\r\n j = Math.ceil(wpr / LOG_BASE);\r\n n = 1;\r\n x2 = x.times(x);\r\n r = new Ctor(x);\r\n px = x;\r\n\r\n // atan(x) = x - x^3/3 + x^5/5 - x^7/7 + ...\r\n for (; i !== -1;) {\r\n px = px.times(x2);\r\n t = r.minus(px.div(n += 2));\r\n\r\n px = px.times(x2);\r\n r = t.plus(px.div(n += 2));\r\n\r\n if (r.d[j] !== void 0) for (i = j; r.d[i] === t.d[i] && i--;);\r\n }\r\n\r\n if (k) r = r.times(2 << (k - 1));\r\n\r\n external = true;\r\n\r\n return finalise(r, Ctor.precision = pr, Ctor.rounding = rm, true);\r\n };\r\n\r\n\r\n /*\r\n * Return true if the value of this Decimal is a finite number, otherwise return false.\r\n *\r\n */\r\n P.isFinite = function () {\r\n return !!this.d;\r\n };\r\n\r\n\r\n /*\r\n * Return true if the value of this Decimal is an integer, otherwise return false.\r\n *\r\n */\r\n P.isInteger = P.isInt = function () {\r\n return !!this.d && mathfloor(this.e / LOG_BASE) > this.d.length - 2;\r\n };\r\n\r\n\r\n /*\r\n * Return true if the value of this Decimal is NaN, otherwise return false.\r\n *\r\n */\r\n P.isNaN = function () {\r\n return !this.s;\r\n };\r\n\r\n\r\n /*\r\n * Return true if the value of this Decimal is negative, otherwise return false.\r\n *\r\n */\r\n P.isNegative = P.isNeg = function () {\r\n return this.s < 0;\r\n };\r\n\r\n\r\n /*\r\n * Return true if the value of this Decimal is positive, otherwise return false.\r\n *\r\n */\r\n P.isPositive = P.isPos = function () {\r\n return this.s > 0;\r\n };\r\n\r\n\r\n /*\r\n * Return true if the value of this Decimal is 0 or -0, otherwise return false.\r\n *\r\n */\r\n P.isZero = function () {\r\n return !!this.d && this.d[0] === 0;\r\n };\r\n\r\n\r\n /*\r\n * Return true if the value of this Decimal is less than `y`, otherwise return false.\r\n *\r\n */\r\n P.lessThan = P.lt = function (y) {\r\n return this.cmp(y) < 0;\r\n };\r\n\r\n\r\n /*\r\n * Return true if the value of this Decimal is less than or equal to `y`, otherwise return false.\r\n *\r\n */\r\n P.lessThanOrEqualTo = P.lte = function (y) {\r\n return this.cmp(y) < 1;\r\n };\r\n\r\n\r\n /*\r\n * Return the logarithm of the value of this Decimal to the specified base, rounded to `precision`\r\n * significant digits using rounding mode `rounding`.\r\n *\r\n * If no base is specified, return log[10](arg).\r\n *\r\n * log[base](arg) = ln(arg) / ln(base)\r\n *\r\n * The result will always be correctly rounded if the base of the log is 10, and 'almost always'\r\n * otherwise:\r\n *\r\n * Depending on the rounding mode, the result may be incorrectly rounded if the first fifteen\r\n * rounding digits are [49]99999999999999 or [50]00000000000000. In that case, the maximum error\r\n * between the result and the correctly rounded result will be one ulp (unit in the last place).\r\n *\r\n * log[-b](a) = NaN\r\n * log[0](a) = NaN\r\n * log[1](a) = NaN\r\n * log[NaN](a) = NaN\r\n * log[Infinity](a) = NaN\r\n * log[b](0) = -Infinity\r\n * log[b](-0) = -Infinity\r\n * log[b](-a) = NaN\r\n * log[b](1) = 0\r\n * log[b](Infinity) = Infinity\r\n * log[b](NaN) = NaN\r\n *\r\n * [base] {number|string|Decimal} The base of the logarithm.\r\n *\r\n */\r\n P.logarithm = P.log = function (base) {\r\n var isBase10, d, denominator, k, inf, num, sd, r,\r\n arg = this,\r\n Ctor = arg.constructor,\r\n pr = Ctor.precision,\r\n rm = Ctor.rounding,\r\n guard = 5;\r\n\r\n // Default base is 10.\r\n if (base == null) {\r\n base = new Ctor(10);\r\n isBase10 = true;\r\n } else {\r\n base = new Ctor(base);\r\n d = base.d;\r\n\r\n // Return NaN if base is negative, or non-finite, or is 0 or 1.\r\n if (base.s < 0 || !d || !d[0] || base.eq(1)) return new Ctor(NaN);\r\n\r\n isBase10 = base.eq(10);\r\n }\r\n\r\n d = arg.d;\r\n\r\n // Is arg negative, non-finite, 0 or 1?\r\n if (arg.s < 0 || !d || !d[0] || arg.eq(1)) {\r\n return new Ctor(d && !d[0] ? -1 / 0 : arg.s != 1 ? NaN : d ? 0 : 1 / 0);\r\n }\r\n\r\n // The result will have a non-terminating decimal expansion if base is 10 and arg is not an\r\n // integer power of 10.\r\n if (isBase10) {\r\n if (d.length > 1) {\r\n inf = true;\r\n } else {\r\n for (k = d[0]; k % 10 === 0;) k /= 10;\r\n inf = k !== 1;\r\n }\r\n }\r\n\r\n external = false;\r\n sd = pr + guard;\r\n num = naturalLogarithm(arg, sd);\r\n denominator = isBase10 ? getLn10(Ctor, sd + 10) : naturalLogarithm(base, sd);\r\n\r\n // The result will have 5 rounding digits.\r\n r = divide(num, denominator, sd, 1);\r\n\r\n // If at a rounding boundary, i.e. the result's rounding digits are [49]9999 or [50]0000,\r\n // calculate 10 further digits.\r\n //\r\n // If the result is known to have an infinite decimal expansion, repeat this until it is clear\r\n // that the result is above or below the boundary. Otherwise, if after calculating the 10\r\n // further digits, the last 14 are nines, round up and assume the result is exact.\r\n // Also assume the result is exact if the last 14 are zero.\r\n //\r\n // Example of a result that will be incorrectly rounded:\r\n // log[1048576](4503599627370502) = 2.60000000000000009610279511444746...\r\n // The above result correctly rounded using ROUND_CEIL to 1 decimal place should be 2.7, but it\r\n // will be given as 2.6 as there are 15 zeros immediately after the requested decimal place, so\r\n // the exact result would be assumed to be 2.6, which rounded using ROUND_CEIL to 1 decimal\r\n // place is still 2.6.\r\n if (checkRoundingDigits(r.d, k = pr, rm)) {\r\n\r\n do {\r\n sd += 10;\r\n num = naturalLogarithm(arg, sd);\r\n denominator = isBase10 ? getLn10(Ctor, sd + 10) : naturalLogarithm(base, sd);\r\n r = divide(num, denominator, sd, 1);\r\n\r\n if (!inf) {\r\n\r\n // Check for 14 nines from the 2nd rounding digit, as the first may be 4.\r\n if (+digitsToString(r.d).slice(k + 1, k + 15) + 1 == 1e14) {\r\n r = finalise(r, pr + 1, 0);\r\n }\r\n\r\n break;\r\n }\r\n } while (checkRoundingDigits(r.d, k += 10, rm));\r\n }\r\n\r\n external = true;\r\n\r\n return finalise(r, pr, rm);\r\n };\r\n\r\n\r\n /*\r\n * Return a new Decimal whose value is the maximum of the arguments and the value of this Decimal.\r\n *\r\n * arguments {number|string|Decimal}\r\n *\r\n P.max = function () {\r\n Array.prototype.push.call(arguments, this);\r\n return maxOrMin(this.constructor, arguments, 'lt');\r\n };\r\n */\r\n\r\n\r\n /*\r\n * Return a new Decimal whose value is the minimum of the arguments and the value of this Decimal.\r\n *\r\n * arguments {number|string|Decimal}\r\n *\r\n P.min = function () {\r\n Array.prototype.push.call(arguments, this);\r\n return maxOrMin(this.constructor, arguments, 'gt');\r\n };\r\n */\r\n\r\n\r\n /*\r\n * n - 0 = n\r\n * n - N = N\r\n * n - I = -I\r\n * 0 - n = -n\r\n * 0 - 0 = 0\r\n * 0 - N = N\r\n * 0 - I = -I\r\n * N - n = N\r\n * N - 0 = N\r\n * N - N = N\r\n * N - I = N\r\n * I - n = I\r\n * I - 0 = I\r\n * I - N = N\r\n * I - I = N\r\n *\r\n * Return a new Decimal whose value is the value of this Decimal minus `y`, rounded to `precision`\r\n * significant digits using rounding mode `rounding`.\r\n *\r\n */\r\n P.minus = P.sub = function (y) {\r\n var d, e, i, j, k, len, pr, rm, xd, xe, xLTy, yd,\r\n x = this,\r\n Ctor = x.constructor;\r\n\r\n y = new Ctor(y);\r\n\r\n // If either is not finite...\r\n if (!x.d || !y.d) {\r\n\r\n // Return NaN if either is NaN.\r\n if (!x.s || !y.s) y = new Ctor(NaN);\r\n\r\n // Return y negated if x is finite and y is ±Infinity.\r\n else if (x.d) y.s = -y.s;\r\n\r\n // Return x if y is finite and x is ±Infinity.\r\n // Return x if both are ±Infinity with different signs.\r\n // Return NaN if both are ±Infinity with the same sign.\r\n else y = new Ctor(y.d || x.s !== y.s ? x : NaN);\r\n\r\n return y;\r\n }\r\n\r\n // If signs differ...\r\n if (x.s != y.s) {\r\n y.s = -y.s;\r\n return x.plus(y);\r\n }\r\n\r\n xd = x.d;\r\n yd = y.d;\r\n pr = Ctor.precision;\r\n rm = Ctor.rounding;\r\n\r\n // If either is zero...\r\n if (!xd[0] || !yd[0]) {\r\n\r\n // Return y negated if x is zero and y is non-zero.\r\n if (yd[0]) y.s = -y.s;\r\n\r\n // Return x if y is zero and x is non-zero.\r\n else if (xd[0]) y = new Ctor(x);\r\n\r\n // Return zero if both are zero.\r\n // From IEEE 754 (2008) 6.3: 0 - 0 = -0 - -0 = -0 when rounding to -Infinity.\r\n else return new Ctor(rm === 3 ? -0 : 0);\r\n\r\n return external ? finalise(y, pr, rm) : y;\r\n }\r\n\r\n // x and y are finite, non-zero numbers with the same sign.\r\n\r\n // Calculate base 1e7 exponents.\r\n e = mathfloor(y.e / LOG_BASE);\r\n xe = mathfloor(x.e / LOG_BASE);\r\n\r\n xd = xd.slice();\r\n k = xe - e;\r\n\r\n // If base 1e7 exponents differ...\r\n if (k) {\r\n xLTy = k < 0;\r\n\r\n if (xLTy) {\r\n d = xd;\r\n k = -k;\r\n len = yd.length;\r\n } else {\r\n d = yd;\r\n e = xe;\r\n len = xd.length;\r\n }\r\n\r\n // Numbers with massively different exponents would result in a very high number of\r\n // zeros needing to be prepended, but this can be avoided while still ensuring correct\r\n // rounding by limiting the number of zeros to `Math.ceil(pr / LOG_BASE) + 2`.\r\n i = Math.max(Math.ceil(pr / LOG_BASE), len) + 2;\r\n\r\n if (k > i) {\r\n k = i;\r\n d.length = 1;\r\n }\r\n\r\n // Prepend zeros to equalise exponents.\r\n d.reverse();\r\n for (i = k; i--;) d.push(0);\r\n d.reverse();\r\n\r\n // Base 1e7 exponents equal.\r\n } else {\r\n\r\n // Check digits to determine which is the bigger number.\r\n\r\n i = xd.length;\r\n len = yd.length;\r\n xLTy = i < len;\r\n if (xLTy) len = i;\r\n\r\n for (i = 0; i < len; i++) {\r\n if (xd[i] != yd[i]) {\r\n xLTy = xd[i] < yd[i];\r\n break;\r\n }\r\n }\r\n\r\n k = 0;\r\n }\r\n\r\n if (xLTy) {\r\n d = xd;\r\n xd = yd;\r\n yd = d;\r\n y.s = -y.s;\r\n }\r\n\r\n len = xd.length;\r\n\r\n // Append zeros to `xd` if shorter.\r\n // Don't add zeros to `yd` if shorter as subtraction only needs to start at `yd` length.\r\n for (i = yd.length - len; i > 0; --i) xd[len++] = 0;\r\n\r\n // Subtract yd from xd.\r\n for (i = yd.length; i > k;) {\r\n\r\n if (xd[--i] < yd[i]) {\r\n for (j = i; j && xd[--j] === 0;) xd[j] = BASE - 1;\r\n --xd[j];\r\n xd[i] += BASE;\r\n }\r\n\r\n xd[i] -= yd[i];\r\n }\r\n\r\n // Remove trailing zeros.\r\n for (; xd[--len] === 0;) xd.pop();\r\n\r\n // Remove leading zeros and adjust exponent accordingly.\r\n for (; xd[0] === 0; xd.shift()) --e;\r\n\r\n // Zero?\r\n if (!xd[0]) return new Ctor(rm === 3 ? -0 : 0);\r\n\r\n y.d = xd;\r\n y.e = getBase10Exponent(xd, e);\r\n\r\n return external ? finalise(y, pr, rm) : y;\r\n };\r\n\r\n\r\n /*\r\n * n % 0 = N\r\n * n % N = N\r\n * n % I = n\r\n * 0 % n = 0\r\n * -0 % n = -0\r\n * 0 % 0 = N\r\n * 0 % N = N\r\n * 0 % I = 0\r\n * N % n = N\r\n * N % 0 = N\r\n * N % N = N\r\n * N % I = N\r\n * I % n = N\r\n * I % 0 = N\r\n * I % N = N\r\n * I % I = N\r\n *\r\n * Return a new Decimal whose value is the value of this Decimal modulo `y`, rounded to\r\n * `precision` significant digits using rounding mode `rounding`.\r\n *\r\n * The result depends on the modulo mode.\r\n *\r\n */\r\n P.modulo = P.mod = function (y) {\r\n var q,\r\n x = this,\r\n Ctor = x.constructor;\r\n\r\n y = new Ctor(y);\r\n\r\n // Return NaN if x is ±Infinity or NaN, or y is NaN or ±0.\r\n if (!x.d || !y.s || y.d && !y.d[0]) return new Ctor(NaN);\r\n\r\n // Return x if y is ±Infinity or x is ±0.\r\n if (!y.d || x.d && !x.d[0]) {\r\n return finalise(new Ctor(x), Ctor.precision, Ctor.rounding);\r\n }\r\n\r\n // Prevent rounding of intermediate calculations.\r\n external = false;\r\n\r\n if (Ctor.modulo == 9) {\r\n\r\n // Euclidian division: q = sign(y) * floor(x / abs(y))\r\n // result = x - q * y where 0 <= result < abs(y)\r\n q = divide(x, y.abs(), 0, 3, 1);\r\n q.s *= y.s;\r\n } else {\r\n q = divide(x, y, 0, Ctor.modulo, 1);\r\n }\r\n\r\n q = q.times(y);\r\n\r\n external = true;\r\n\r\n return x.minus(q);\r\n };\r\n\r\n\r\n /*\r\n * Return a new Decimal whose value is the natural exponential of the value of this Decimal,\r\n * i.e. the base e raised to the power the value of this Decimal, rounded to `precision`\r\n * significant digits using rounding mode `rounding`.\r\n *\r\n */\r\n P.naturalExponential = P.exp = function () {\r\n return naturalExponential(this);\r\n };\r\n\r\n\r\n /*\r\n * Return a new Decimal whose value is the natural logarithm of the value of this Decimal,\r\n * rounded to `precision` significant digits using rounding mode `rounding`.\r\n *\r\n */\r\n P.naturalLogarithm = P.ln = function () {\r\n return naturalLogarithm(this);\r\n };\r\n\r\n\r\n /*\r\n * Return a new Decimal whose value is the value of this Decimal negated, i.e. as if multiplied by\r\n * -1.\r\n *\r\n */\r\n P.negated = P.neg = function () {\r\n var x = new this.constructor(this);\r\n x.s = -x.s;\r\n return finalise(x);\r\n };\r\n\r\n\r\n /*\r\n * n + 0 = n\r\n * n + N = N\r\n * n + I = I\r\n * 0 + n = n\r\n * 0 + 0 = 0\r\n * 0 + N = N\r\n * 0 + I = I\r\n * N + n = N\r\n * N + 0 = N\r\n * N + N = N\r\n * N + I = N\r\n * I + n = I\r\n * I + 0 = I\r\n * I + N = N\r\n * I + I = I\r\n *\r\n * Return a new Decimal whose value is the value of this Decimal plus `y`, rounded to `precision`\r\n * significant digits using rounding mode `rounding`.\r\n *\r\n */\r\n P.plus = P.add = function (y) {\r\n var carry, d, e, i, k, len, pr, rm, xd, yd,\r\n x = this,\r\n Ctor = x.constructor;\r\n\r\n y = new Ctor(y);\r\n\r\n // If either is not finite...\r\n if (!x.d || !y.d) {\r\n\r\n // Return NaN if either is NaN.\r\n if (!x.s || !y.s) y = new Ctor(NaN);\r\n\r\n // Return x if y is finite and x is ±Infinity.\r\n // Return x if both are ±Infinity with the same sign.\r\n // Return NaN if both are ±Infinity with different signs.\r\n // Return y if x is finite and y is ±Infinity.\r\n else if (!x.d) y = new Ctor(y.d || x.s === y.s ? x : NaN);\r\n\r\n return y;\r\n }\r\n\r\n // If signs differ...\r\n if (x.s != y.s) {\r\n y.s = -y.s;\r\n return x.minus(y);\r\n }\r\n\r\n xd = x.d;\r\n yd = y.d;\r\n pr = Ctor.precision;\r\n rm = Ctor.rounding;\r\n\r\n // If either is zero...\r\n if (!xd[0] || !yd[0]) {\r\n\r\n // Return x if y is zero.\r\n // Return y if y is non-zero.\r\n if (!yd[0]) y = new Ctor(x);\r\n\r\n return external ? finalise(y, pr, rm) : y;\r\n }\r\n\r\n // x and y are finite, non-zero numbers with the same sign.\r\n\r\n // Calculate base 1e7 exponents.\r\n k = mathfloor(x.e / LOG_BASE);\r\n e = mathfloor(y.e / LOG_BASE);\r\n\r\n xd = xd.slice();\r\n i = k - e;\r\n\r\n // If base 1e7 exponents differ...\r\n if (i) {\r\n\r\n if (i < 0) {\r\n d = xd;\r\n i = -i;\r\n len = yd.length;\r\n } else {\r\n d = yd;\r\n e = k;\r\n len = xd.length;\r\n }\r\n\r\n // Limit number of zeros prepended to max(ceil(pr / LOG_BASE), len) + 1.\r\n k = Math.ceil(pr / LOG_BASE);\r\n len = k > len ? k + 1 : len + 1;\r\n\r\n if (i > len) {\r\n i = len;\r\n d.length = 1;\r\n }\r\n\r\n // Prepend zeros to equalise exponents. Note: Faster to use reverse then do unshifts.\r\n d.reverse();\r\n for (; i--;) d.push(0);\r\n d.reverse();\r\n }\r\n\r\n len = xd.length;\r\n i = yd.length;\r\n\r\n // If yd is longer than xd, swap xd and yd so xd points to the longer array.\r\n if (len - i < 0) {\r\n i = len;\r\n d = yd;\r\n yd = xd;\r\n xd = d;\r\n }\r\n\r\n // Only start adding at yd.length - 1 as the further digits of xd can be left as they are.\r\n for (carry = 0; i;) {\r\n carry = (xd[--i] = xd[i] + yd[i] + carry) / BASE | 0;\r\n xd[i] %= BASE;\r\n }\r\n\r\n if (carry) {\r\n xd.unshift(carry);\r\n ++e;\r\n }\r\n\r\n // Remove trailing zeros.\r\n // No need to check for zero, as +x + +y != 0 && -x + -y != 0\r\n for (len = xd.length; xd[--len] == 0;) xd.pop();\r\n\r\n y.d = xd;\r\n y.e = getBase10Exponent(xd, e);\r\n\r\n return external ? finalise(y, pr, rm) : y;\r\n };\r\n\r\n\r\n /*\r\n * Return the number of significant digits of the value of this Decimal.\r\n *\r\n * [z] {boolean|number} Whether to count integer-part trailing zeros: true, false, 1 or 0.\r\n *\r\n */\r\n P.precision = P.sd = function (z) {\r\n var k,\r\n x = this;\r\n\r\n if (z !== void 0 && z !== !!z && z !== 1 && z !== 0) throw Error(invalidArgument + z);\r\n\r\n if (x.d) {\r\n k = getPrecision(x.d);\r\n if (z && x.e + 1 > k) k = x.e + 1;\r\n } else {\r\n k = NaN;\r\n }\r\n\r\n return k;\r\n };\r\n\r\n\r\n /*\r\n * Return a new Decimal whose value is the value of this Decimal rounded to a whole number using\r\n * rounding mode `rounding`.\r\n *\r\n */\r\n P.round = function () {\r\n var x = this,\r\n Ctor = x.constructor;\r\n\r\n return finalise(new Ctor(x), x.e + 1, Ctor.rounding);\r\n };\r\n\r\n\r\n /*\r\n * Return a new Decimal whose value is the sine of the value in radians of this Decimal.\r\n *\r\n * Domain: [-Infinity, Infinity]\r\n * Range: [-1, 1]\r\n *\r\n * sin(x) = x - x^3/3! + x^5/5! - ...\r\n *\r\n * sin(0) = 0\r\n * sin(-0) = -0\r\n * sin(Infinity) = NaN\r\n * sin(-Infinity) = NaN\r\n * sin(NaN) = NaN\r\n *\r\n */\r\n P.sine = P.sin = function () {\r\n var pr, rm,\r\n x = this,\r\n Ctor = x.constructor;\r\n\r\n if (!x.isFinite()) return new Ctor(NaN);\r\n if (x.isZero()) return new Ctor(x);\r\n\r\n pr = Ctor.precision;\r\n rm = Ctor.rounding;\r\n Ctor.precision = pr + Math.max(x.e, x.sd()) + LOG_BASE;\r\n Ctor.rounding = 1;\r\n\r\n x = sine(Ctor, toLessThanHalfPi(Ctor, x));\r\n\r\n Ctor.precision = pr;\r\n Ctor.rounding = rm;\r\n\r\n return finalise(quadrant > 2 ? x.neg() : x, pr, rm, true);\r\n };\r\n\r\n\r\n /*\r\n * Return a new Decimal whose value is the square root of this Decimal, rounded to `precision`\r\n * significant digits using rounding mode `rounding`.\r\n *\r\n * sqrt(-n) = N\r\n * sqrt(N) = N\r\n * sqrt(-I) = N\r\n * sqrt(I) = I\r\n * sqrt(0) = 0\r\n * sqrt(-0) = -0\r\n *\r\n */\r\n P.squareRoot = P.sqrt = function () {\r\n var m, n, sd, r, rep, t,\r\n x = this,\r\n d = x.d,\r\n e = x.e,\r\n s = x.s,\r\n Ctor = x.constructor;\r\n\r\n // Negative/NaN/Infinity/zero?\r\n if (s !== 1 || !d || !d[0]) {\r\n return new Ctor(!s || s < 0 && (!d || d[0]) ? NaN : d ? x : 1 / 0);\r\n }\r\n\r\n external = false;\r\n\r\n // Initial estimate.\r\n s = Math.sqrt(+x);\r\n\r\n // Math.sqrt underflow/overflow?\r\n // Pass x to Math.sqrt as integer, then adjust the exponent of the result.\r\n if (s == 0 || s == 1 / 0) {\r\n n = digitsToString(d);\r\n\r\n if ((n.length + e) % 2 == 0) n += '0';\r\n s = Math.sqrt(n);\r\n e = mathfloor((e + 1) / 2) - (e < 0 || e % 2);\r\n\r\n if (s == 1 / 0) {\r\n n = '5e' + e;\r\n } else {\r\n n = s.toExponential();\r\n n = n.slice(0, n.indexOf('e') + 1) + e;\r\n }\r\n\r\n r = new Ctor(n);\r\n } else {\r\n r = new Ctor(s.toString());\r\n }\r\n\r\n sd = (e = Ctor.precision) + 3;\r\n\r\n // Newton-Raphson iteration.\r\n for (;;) {\r\n t = r;\r\n r = t.plus(divide(x, t, sd + 2, 1)).times(0.5);\r\n\r\n // TODO? Replace with for-loop and checkRoundingDigits.\r\n if (digitsToString(t.d).slice(0, sd) === (n = digitsToString(r.d)).slice(0, sd)) {\r\n n = n.slice(sd - 3, sd + 1);\r\n\r\n // The 4th rounding digit may be in error by -1 so if the 4 rounding digits are 9999 or\r\n // 4999, i.e. approaching a rounding boundary, continue the iteration.\r\n if (n == '9999' || !rep && n == '4999') {\r\n\r\n // On the first iteration only, check to see if rounding up gives the exact result as the\r\n // nines may infinitely repeat.\r\n if (!rep) {\r\n finalise(t, e + 1, 0);\r\n\r\n if (t.times(t).eq(x)) {\r\n r = t;\r\n break;\r\n }\r\n }\r\n\r\n sd += 4;\r\n rep = 1;\r\n } else {\r\n\r\n // If the rounding digits are null, 0{0,4} or 50{0,3}, check for an exact result.\r\n // If not, then there are further digits and m will be truthy.\r\n if (!+n || !+n.slice(1) && n.charAt(0) == '5') {\r\n\r\n // Truncate to the first rounding digit.\r\n finalise(r, e + 1, 1);\r\n m = !r.times(r).eq(x);\r\n }\r\n\r\n break;\r\n }\r\n }\r\n }\r\n\r\n external = true;\r\n\r\n return finalise(r, e, Ctor.rounding, m);\r\n };\r\n\r\n\r\n /*\r\n * Return a new Decimal whose value is the tangent of the value in radians of this Decimal.\r\n *\r\n * Domain: [-Infinity, Infinity]\r\n * Range: [-Infinity, Infinity]\r\n *\r\n * tan(0) = 0\r\n * tan(-0) = -0\r\n * tan(Infinity) = NaN\r\n * tan(-Infinity) = NaN\r\n * tan(NaN) = NaN\r\n *\r\n */\r\n P.tangent = P.tan = function () {\r\n var pr, rm,\r\n x = this,\r\n Ctor = x.constructor;\r\n\r\n if (!x.isFinite()) return new Ctor(NaN);\r\n if (x.isZero()) return new Ctor(x);\r\n\r\n pr = Ctor.precision;\r\n rm = Ctor.rounding;\r\n Ctor.precision = pr + 10;\r\n Ctor.rounding = 1;\r\n\r\n x = x.sin();\r\n x.s = 1;\r\n x = divide(x, new Ctor(1).minus(x.times(x)).sqrt(), pr + 10, 0);\r\n\r\n Ctor.precision = pr;\r\n Ctor.rounding = rm;\r\n\r\n return finalise(quadrant == 2 || quadrant == 4 ? x.neg() : x, pr, rm, true);\r\n };\r\n\r\n\r\n /*\r\n * n * 0 = 0\r\n * n * N = N\r\n * n * I = I\r\n * 0 * n = 0\r\n * 0 * 0 = 0\r\n * 0 * N = N\r\n * 0 * I = N\r\n * N * n = N\r\n * N * 0 = N\r\n * N * N = N\r\n * N * I = N\r\n * I * n = I\r\n * I * 0 = N\r\n * I * N = N\r\n * I * I = I\r\n *\r\n * Return a new Decimal whose value is this Decimal times `y`, rounded to `precision` significant\r\n * digits using rounding mode `rounding`.\r\n *\r\n */\r\n P.times = P.mul = function (y) {\r\n var carry, e, i, k, r, rL, t, xdL, ydL,\r\n x = this,\r\n Ctor = x.constructor,\r\n xd = x.d,\r\n yd = (y = new Ctor(y)).d;\r\n\r\n y.s *= x.s;\r\n\r\n // If either is NaN, ±Infinity or ±0...\r\n if (!xd || !xd[0] || !yd || !yd[0]) {\r\n\r\n return new Ctor(!y.s || xd && !xd[0] && !yd || yd && !yd[0] && !xd\r\n\r\n // Return NaN if either is NaN.\r\n // Return NaN if x is ±0 and y is ±Infinity, or y is ±0 and x is ±Infinity.\r\n ? NaN\r\n\r\n // Return ±Infinity if either is ±Infinity.\r\n // Return ±0 if either is ±0.\r\n : !xd || !yd ? y.s / 0 : y.s * 0);\r\n }\r\n\r\n e = mathfloor(x.e / LOG_BASE) + mathfloor(y.e / LOG_BASE);\r\n xdL = xd.length;\r\n ydL = yd.length;\r\n\r\n // Ensure xd points to the longer array.\r\n if (xdL < ydL) {\r\n r = xd;\r\n xd = yd;\r\n yd = r;\r\n rL = xdL;\r\n xdL = ydL;\r\n ydL = rL;\r\n }\r\n\r\n // Initialise the result array with zeros.\r\n r = [];\r\n rL = xdL + ydL;\r\n for (i = rL; i--;) r.push(0);\r\n\r\n // Multiply!\r\n for (i = ydL; --i >= 0;) {\r\n carry = 0;\r\n for (k = xdL + i; k > i;) {\r\n t = r[k] + yd[i] * xd[k - i - 1] + carry;\r\n r[k--] = t % BASE | 0;\r\n carry = t / BASE | 0;\r\n }\r\n\r\n r[k] = (r[k] + carry) % BASE | 0;\r\n }\r\n\r\n // Remove trailing zeros.\r\n for (; !r[--rL];) r.pop();\r\n\r\n if (carry) ++e;\r\n else r.shift();\r\n\r\n y.d = r;\r\n y.e = getBase10Exponent(r, e);\r\n\r\n return external ? finalise(y, Ctor.precision, Ctor.rounding) : y;\r\n };\r\n\r\n\r\n /*\r\n * Return a string representing the value of this Decimal in base 2, round to `sd` significant\r\n * digits using rounding mode `rm`.\r\n *\r\n * If the optional `sd` argument is present then return binary exponential notation.\r\n *\r\n * [sd] {number} Significant digits. Integer, 1 to MAX_DIGITS inclusive.\r\n * [rm] {number} Rounding mode. Integer, 0 to 8 inclusive.\r\n *\r\n */\r\n P.toBinary = function (sd, rm) {\r\n return toStringBinary(this, 2, sd, rm);\r\n };\r\n\r\n\r\n /*\r\n * Return a new Decimal whose value is the value of this Decimal rounded to a maximum of `dp`\r\n * decimal places using rounding mode `rm` or `rounding` if `rm` is omitted.\r\n *\r\n * If `dp` is omitted, return a new Decimal whose value is the value of this Decimal.\r\n *\r\n * [dp] {number} Decimal places. Integer, 0 to MAX_DIGITS inclusive.\r\n * [rm] {number} Rounding mode. Integer, 0 to 8 inclusive.\r\n *\r\n */\r\n P.toDecimalPlaces = P.toDP = function (dp, rm) {\r\n var x = this,\r\n Ctor = x.constructor;\r\n\r\n x = new Ctor(x);\r\n if (dp === void 0) return x;\r\n\r\n checkInt32(dp, 0, MAX_DIGITS);\r\n\r\n if (rm === void 0) rm = Ctor.rounding;\r\n else checkInt32(rm, 0, 8);\r\n\r\n return finalise(x, dp + x.e + 1, rm);\r\n };\r\n\r\n\r\n /*\r\n * Return a string representing the value of this Decimal in exponential notation rounded to\r\n * `dp` fixed decimal places using rounding mode `rounding`.\r\n *\r\n * [dp] {number} Decimal places. Integer, 0 to MAX_DIGITS inclusive.\r\n * [rm] {number} Rounding mode. Integer, 0 to 8 inclusive.\r\n *\r\n */\r\n P.toExponential = function (dp, rm) {\r\n var str,\r\n x = this,\r\n Ctor = x.constructor;\r\n\r\n if (dp === void 0) {\r\n str = finiteToString(x, true);\r\n } else {\r\n checkInt32(dp, 0, MAX_DIGITS);\r\n\r\n if (rm === void 0) rm = Ctor.rounding;\r\n else checkInt32(rm, 0, 8);\r\n\r\n x = finalise(new Ctor(x), dp + 1, rm);\r\n str = finiteToString(x, true, dp + 1);\r\n }\r\n\r\n return x.isNeg() && !x.isZero() ? '-' + str : str;\r\n };\r\n\r\n\r\n /*\r\n * Return a string representing the value of this Decimal in normal (fixed-point) notation to\r\n * `dp` fixed decimal places and rounded using rounding mode `rm` or `rounding` if `rm` is\r\n * omitted.\r\n *\r\n * As with JavaScript numbers, (-0).toFixed(0) is '0', but e.g. (-0.00001).toFixed(0) is '-0'.\r\n *\r\n * [dp] {number} Decimal places. Integer, 0 to MAX_DIGITS inclusive.\r\n * [rm] {number} Rounding mode. Integer, 0 to 8 inclusive.\r\n *\r\n * (-0).toFixed(0) is '0', but (-0.1).toFixed(0) is '-0'.\r\n * (-0).toFixed(1) is '0.0', but (-0.01).toFixed(1) is '-0.0'.\r\n * (-0).toFixed(3) is '0.000'.\r\n * (-0.5).toFixed(0) is '-0'.\r\n *\r\n */\r\n P.toFixed = function (dp, rm) {\r\n var str, y,\r\n x = this,\r\n Ctor = x.constructor;\r\n\r\n if (dp === void 0) {\r\n str = finiteToString(x);\r\n } else {\r\n checkInt32(dp, 0, MAX_DIGITS);\r\n\r\n if (rm === void 0) rm = Ctor.rounding;\r\n else checkInt32(rm, 0, 8);\r\n\r\n y = finalise(new Ctor(x), dp + x.e + 1, rm);\r\n str = finiteToString(y, false, dp + y.e + 1);\r\n }\r\n\r\n // To determine whether to add the minus sign look at the value before it was rounded,\r\n // i.e. look at `x` rather than `y`.\r\n return x.isNeg() && !x.isZero() ? '-' + str : str;\r\n };\r\n\r\n\r\n /*\r\n * Return an array representing the value of this Decimal as a simple fraction with an integer\r\n * numerator and an integer denominator.\r\n *\r\n * The denominator will be a positive non-zero value less than or equal to the specified maximum\r\n * denominator. If a maximum denominator is not specified, the denominator will be the lowest\r\n * value necessary to represent the number exactly.\r\n *\r\n * [maxD] {number|string|Decimal} Maximum denominator. Integer >= 1 and < Infinity.\r\n *\r\n */\r\n P.toFraction = function (maxD) {\r\n var d, d0, d1, d2, e, k, n, n0, n1, pr, q, r,\r\n x = this,\r\n xd = x.d,\r\n Ctor = x.constructor;\r\n\r\n if (!xd) return new Ctor(x);\r\n\r\n n1 = d0 = new Ctor(1);\r\n d1 = n0 = new Ctor(0);\r\n\r\n d = new Ctor(d1);\r\n e = d.e = getPrecision(xd) - x.e - 1;\r\n k = e % LOG_BASE;\r\n d.d[0] = mathpow(10, k < 0 ? LOG_BASE + k : k);\r\n\r\n if (maxD == null) {\r\n\r\n // d is 10**e, the minimum max-denominator needed.\r\n maxD = e > 0 ? d : n1;\r\n } else {\r\n n = new Ctor(maxD);\r\n if (!n.isInt() || n.lt(n1)) throw Error(invalidArgument + n);\r\n maxD = n.gt(d) ? (e > 0 ? d : n1) : n;\r\n }\r\n\r\n external = false;\r\n n = new Ctor(digitsToString(xd));\r\n pr = Ctor.precision;\r\n Ctor.precision = e = xd.length * LOG_BASE * 2;\r\n\r\n for (;;) {\r\n q = divide(n, d, 0, 1, 1);\r\n d2 = d0.plus(q.times(d1));\r\n if (d2.cmp(maxD) == 1) break;\r\n d0 = d1;\r\n d1 = d2;\r\n d2 = n1;\r\n n1 = n0.plus(q.times(d2));\r\n n0 = d2;\r\n d2 = d;\r\n d = n.minus(q.times(d2));\r\n n = d2;\r\n }\r\n\r\n d2 = divide(maxD.minus(d0), d1, 0, 1, 1);\r\n n0 = n0.plus(d2.times(n1));\r\n d0 = d0.plus(d2.times(d1));\r\n n0.s = n1.s = x.s;\r\n\r\n // Determine which fraction is closer to x, n0/d0 or n1/d1?\r\n r = divide(n1, d1, e, 1).minus(x).abs().cmp(divide(n0, d0, e, 1).minus(x).abs()) < 1\r\n ? [n1, d1] : [n0, d0];\r\n\r\n Ctor.precision = pr;\r\n external = true;\r\n\r\n return r;\r\n };\r\n\r\n\r\n /*\r\n * Return a string representing the value of this Decimal in base 16, round to `sd` significant\r\n * digits using rounding mode `rm`.\r\n *\r\n * If the optional `sd` argument is present then return binary exponential notation.\r\n *\r\n * [sd] {number} Significant digits. Integer, 1 to MAX_DIGITS inclusive.\r\n * [rm] {number} Rounding mode. Integer, 0 to 8 inclusive.\r\n *\r\n */\r\n P.toHexadecimal = P.toHex = function (sd, rm) {\r\n return toStringBinary(this, 16, sd, rm);\r\n };\r\n\r\n\r\n /*\r\n * Returns a new Decimal whose value is the nearest multiple of `y` in the direction of rounding\r\n * mode `rm`, or `Decimal.rounding` if `rm` is omitted, to the value of this Decimal.\r\n *\r\n * The return value will always have the same sign as this Decimal, unless either this Decimal\r\n * or `y` is NaN, in which case the return value will be also be NaN.\r\n *\r\n * The return value is not affected by the value of `precision`.\r\n *\r\n * y {number|string|Decimal} The magnitude to round to a multiple of.\r\n * [rm] {number} Rounding mode. Integer, 0 to 8 inclusive.\r\n *\r\n * 'toNearest() rounding mode not an integer: {rm}'\r\n * 'toNearest() rounding mode out of range: {rm}'\r\n *\r\n */\r\n P.toNearest = function (y, rm) {\r\n var x = this,\r\n Ctor = x.constructor;\r\n\r\n x = new Ctor(x);\r\n\r\n if (y == null) {\r\n\r\n // If x is not finite, return x.\r\n if (!x.d) return x;\r\n\r\n y = new Ctor(1);\r\n rm = Ctor.rounding;\r\n } else {\r\n y = new Ctor(y);\r\n if (rm === void 0) {\r\n rm = Ctor.rounding;\r\n } else {\r\n checkInt32(rm, 0, 8);\r\n }\r\n\r\n // If x is not finite, return x if y is not NaN, else NaN.\r\n if (!x.d) return y.s ? x : y;\r\n\r\n // If y is not finite, return Infinity with the sign of x if y is Infinity, else NaN.\r\n if (!y.d) {\r\n if (y.s) y.s = x.s;\r\n return y;\r\n }\r\n }\r\n\r\n // If y is not zero, calculate the nearest multiple of y to x.\r\n if (y.d[0]) {\r\n external = false;\r\n x = divide(x, y, 0, rm, 1).times(y);\r\n external = true;\r\n finalise(x);\r\n\r\n // If y is zero, return zero with the sign of x.\r\n } else {\r\n y.s = x.s;\r\n x = y;\r\n }\r\n\r\n return x;\r\n };\r\n\r\n\r\n /*\r\n * Return the value of this Decimal converted to a number primitive.\r\n * Zero keeps its sign.\r\n *\r\n */\r\n P.toNumber = function () {\r\n return +this;\r\n };\r\n\r\n\r\n /*\r\n * Return a string representing the value of this Decimal in base 8, round to `sd` significant\r\n * digits using rounding mode `rm`.\r\n *\r\n * If the optional `sd` argument is present then return binary exponential notation.\r\n *\r\n * [sd] {number} Significant digits. Integer, 1 to MAX_DIGITS inclusive.\r\n * [rm] {number} Rounding mode. Integer, 0 to 8 inclusive.\r\n *\r\n */\r\n P.toOctal = function (sd, rm) {\r\n return toStringBinary(this, 8, sd, rm);\r\n };\r\n\r\n\r\n /*\r\n * Return a new Decimal whose value is the value of this Decimal raised to the power `y`, rounded\r\n * to `precision` significant digits using rounding mode `rounding`.\r\n *\r\n * ECMAScript compliant.\r\n *\r\n * pow(x, NaN) = NaN\r\n * pow(x, ±0) = 1\r\n\r\n * pow(NaN, non-zero) = NaN\r\n * pow(abs(x) > 1, +Infinity) = +Infinity\r\n * pow(abs(x) > 1, -Infinity) = +0\r\n * pow(abs(x) == 1, ±Infinity) = NaN\r\n * pow(abs(x) < 1, +Infinity) = +0\r\n * pow(abs(x) < 1, -Infinity) = +Infinity\r\n * pow(+Infinity, y > 0) = +Infinity\r\n * pow(+Infinity, y < 0) = +0\r\n * pow(-Infinity, odd integer > 0) = -Infinity\r\n * pow(-Infinity, even integer > 0) = +Infinity\r\n * pow(-Infinity, odd integer < 0) = -0\r\n * pow(-Infinity, even integer < 0) = +0\r\n * pow(+0, y > 0) = +0\r\n * pow(+0, y < 0) = +Infinity\r\n * pow(-0, odd integer > 0) = -0\r\n * pow(-0, even integer > 0) = +0\r\n * pow(-0, odd integer < 0) = -Infinity\r\n * pow(-0, even integer < 0) = +Infinity\r\n * pow(finite x < 0, finite non-integer) = NaN\r\n *\r\n * For non-integer or very large exponents pow(x, y) is calculated using\r\n *\r\n * x^y = exp(y*ln(x))\r\n *\r\n * Assuming the first 15 rounding digits are each equally likely to be any digit 0-9, the\r\n * probability of an incorrectly rounded result\r\n * P([49]9{14} | [50]0{14}) = 2 * 0.2 * 10^-14 = 4e-15 = 1/2.5e+14\r\n * i.e. 1 in 250,000,000,000,000\r\n *\r\n * If a result is incorrectly rounded the maximum error will be 1 ulp (unit in last place).\r\n *\r\n * y {number|string|Decimal} The power to which to raise this Decimal.\r\n *\r\n */\r\n P.toPower = P.pow = function (y) {\r\n var e, k, pr, r, rm, s,\r\n x = this,\r\n Ctor = x.constructor,\r\n yn = +(y = new Ctor(y));\r\n\r\n // Either ±Infinity, NaN or ±0?\r\n if (!x.d || !y.d || !x.d[0] || !y.d[0]) return new Ctor(mathpow(+x, yn));\r\n\r\n x = new Ctor(x);\r\n\r\n if (x.eq(1)) return x;\r\n\r\n pr = Ctor.precision;\r\n rm = Ctor.rounding;\r\n\r\n if (y.eq(1)) return finalise(x, pr, rm);\r\n\r\n // y exponent\r\n e = mathfloor(y.e / LOG_BASE);\r\n\r\n // If y is a small integer use the 'exponentiation by squaring' algorithm.\r\n if (e >= y.d.length - 1 && (k = yn < 0 ? -yn : yn) <= MAX_SAFE_INTEGER) {\r\n r = intPow(Ctor, x, k, pr);\r\n return y.s < 0 ? new Ctor(1).div(r) : finalise(r, pr, rm);\r\n }\r\n\r\n s = x.s;\r\n\r\n // if x is negative\r\n if (s < 0) {\r\n\r\n // if y is not an integer\r\n if (e < y.d.length - 1) return new Ctor(NaN);\r\n\r\n // Result is positive if x is negative and the last digit of integer y is even.\r\n if ((y.d[e] & 1) == 0) s = 1;\r\n\r\n // if x.eq(-1)\r\n if (x.e == 0 && x.d[0] == 1 && x.d.length == 1) {\r\n x.s = s;\r\n return x;\r\n }\r\n }\r\n\r\n // Estimate result exponent.\r\n // x^y = 10^e, where e = y * log10(x)\r\n // log10(x) = log10(x_significand) + x_exponent\r\n // log10(x_significand) = ln(x_significand) / ln(10)\r\n k = mathpow(+x, yn);\r\n e = k == 0 || !isFinite(k)\r\n ? mathfloor(yn * (Math.log('0.' + digitsToString(x.d)) / Math.LN10 + x.e + 1))\r\n : new Ctor(k + '').e;\r\n\r\n // Exponent estimate may be incorrect e.g. x: 0.999999999999999999, y: 2.29, e: 0, r.e: -1.\r\n\r\n // Overflow/underflow?\r\n if (e > Ctor.maxE + 1 || e < Ctor.minE - 1) return new Ctor(e > 0 ? s / 0 : 0);\r\n\r\n external = false;\r\n Ctor.rounding = x.s = 1;\r\n\r\n // Estimate the extra guard digits needed to ensure five correct rounding digits from\r\n // naturalLogarithm(x). Example of failure without these extra digits (precision: 10):\r\n // new Decimal(2.32456).pow('2087987436534566.46411')\r\n // should be 1.162377823e+764914905173815, but is 1.162355823e+764914905173815\r\n k = Math.min(12, (e + '').length);\r\n\r\n // r = x^y = exp(y*ln(x))\r\n r = naturalExponential(y.times(naturalLogarithm(x, pr + k)), pr);\r\n\r\n // r may be Infinity, e.g. (0.9999999999999999).pow(-1e+40)\r\n if (r.d) {\r\n\r\n // Truncate to the required precision plus five rounding digits.\r\n r = finalise(r, pr + 5, 1);\r\n\r\n // If the rounding digits are [49]9999 or [50]0000 increase the precision by 10 and recalculate\r\n // the result.\r\n if (checkRoundingDigits(r.d, pr, rm)) {\r\n e = pr + 10;\r\n\r\n // Truncate to the increased precision plus five rounding digits.\r\n r = finalise(naturalExponential(y.times(naturalLogarithm(x, e + k)), e), e + 5, 1);\r\n\r\n // Check for 14 nines from the 2nd rounding digit (the first rounding digit may be 4 or 9).\r\n if (+digitsToString(r.d).slice(pr + 1, pr + 15) + 1 == 1e14) {\r\n r = finalise(r, pr + 1, 0);\r\n }\r\n }\r\n }\r\n\r\n r.s = s;\r\n external = true;\r\n Ctor.rounding = rm;\r\n\r\n return finalise(r, pr, rm);\r\n };\r\n\r\n\r\n /*\r\n * Return a string representing the value of this Decimal rounded to `sd` significant digits\r\n * using rounding mode `rounding`.\r\n *\r\n * Return exponential notation if `sd` is less than the number of digits necessary to represent\r\n * the integer part of the value in normal notation.\r\n *\r\n * [sd] {number} Significant digits. Integer, 1 to MAX_DIGITS inclusive.\r\n * [rm] {number} Rounding mode. Integer, 0 to 8 inclusive.\r\n *\r\n */\r\n P.toPrecision = function (sd, rm) {\r\n var str,\r\n x = this,\r\n Ctor = x.constructor;\r\n\r\n if (sd === void 0) {\r\n str = finiteToString(x, x.e <= Ctor.toExpNeg || x.e >= Ctor.toExpPos);\r\n } else {\r\n checkInt32(sd, 1, MAX_DIGITS);\r\n\r\n if (rm === void 0) rm = Ctor.rounding;\r\n else checkInt32(rm, 0, 8);\r\n\r\n x = finalise(new Ctor(x), sd, rm);\r\n str = finiteToString(x, sd <= x.e || x.e <= Ctor.toExpNeg, sd);\r\n }\r\n\r\n return x.isNeg() && !x.isZero() ? '-' + str : str;\r\n };\r\n\r\n\r\n /*\r\n * Return a new Decimal whose value is the value of this Decimal rounded to a maximum of `sd`\r\n * significant digits using rounding mode `rm`, or to `precision` and `rounding` respectively if\r\n * omitted.\r\n *\r\n * [sd] {number} Significant digits. Integer, 1 to MAX_DIGITS inclusive.\r\n * [rm] {number} Rounding mode. Integer, 0 to 8 inclusive.\r\n *\r\n * 'toSD() digits out of range: {sd}'\r\n * 'toSD() digits not an integer: {sd}'\r\n * 'toSD() rounding mode not an integer: {rm}'\r\n * 'toSD() rounding mode out of range: {rm}'\r\n *\r\n */\r\n P.toSignificantDigits = P.toSD = function (sd, rm) {\r\n var x = this,\r\n Ctor = x.constructor;\r\n\r\n if (sd === void 0) {\r\n sd = Ctor.precision;\r\n rm = Ctor.rounding;\r\n } else {\r\n checkInt32(sd, 1, MAX_DIGITS);\r\n\r\n if (rm === void 0) rm = Ctor.rounding;\r\n else checkInt32(rm, 0, 8);\r\n }\r\n\r\n return finalise(new Ctor(x), sd, rm);\r\n };\r\n\r\n\r\n /*\r\n * Return a string representing the value of this Decimal.\r\n *\r\n * Return exponential notation if this Decimal has a positive exponent equal to or greater than\r\n * `toExpPos`, or a negative exponent equal to or less than `toExpNeg`.\r\n *\r\n */\r\n P.toString = function () {\r\n var x = this,\r\n Ctor = x.constructor,\r\n str = finiteToString(x, x.e <= Ctor.toExpNeg || x.e >= Ctor.toExpPos);\r\n\r\n return x.isNeg() && !x.isZero() ? '-' + str : str;\r\n };\r\n\r\n\r\n /*\r\n * Return a new Decimal whose value is the value of this Decimal truncated to a whole number.\r\n *\r\n */\r\n P.truncated = P.trunc = function () {\r\n return finalise(new this.constructor(this), this.e + 1, 1);\r\n };\r\n\r\n\r\n /*\r\n * Return a string representing the value of this Decimal.\r\n * Unlike `toString`, negative zero will include the minus sign.\r\n *\r\n */\r\n P.valueOf = P.toJSON = function () {\r\n var x = this,\r\n Ctor = x.constructor,\r\n str = finiteToString(x, x.e <= Ctor.toExpNeg || x.e >= Ctor.toExpPos);\r\n\r\n return x.isNeg() ? '-' + str : str;\r\n };\r\n\r\n\r\n // Helper functions for Decimal.prototype (P) and/or Decimal methods, and their callers.\r\n\r\n\r\n /*\r\n * digitsToString P.cubeRoot, P.logarithm, P.squareRoot, P.toFraction, P.toPower,\r\n * finiteToString, naturalExponential, naturalLogarithm\r\n * checkInt32 P.toDecimalPlaces, P.toExponential, P.toFixed, P.toNearest,\r\n * P.toPrecision, P.toSignificantDigits, toStringBinary, random\r\n * checkRoundingDigits P.logarithm, P.toPower, naturalExponential, naturalLogarithm\r\n * convertBase toStringBinary, parseOther\r\n * cos P.cos\r\n * divide P.atanh, P.cubeRoot, P.dividedBy, P.dividedToIntegerBy,\r\n * P.logarithm, P.modulo, P.squareRoot, P.tan, P.tanh, P.toFraction,\r\n * P.toNearest, toStringBinary, naturalExponential, naturalLogarithm,\r\n * taylorSeries, atan2, parseOther\r\n * finalise P.absoluteValue, P.atan, P.atanh, P.ceil, P.cos, P.cosh,\r\n * P.cubeRoot, P.dividedToIntegerBy, P.floor, P.logarithm, P.minus,\r\n * P.modulo, P.negated, P.plus, P.round, P.sin, P.sinh, P.squareRoot,\r\n * P.tan, P.times, P.toDecimalPlaces, P.toExponential, P.toFixed,\r\n * P.toNearest, P.toPower, P.toPrecision, P.toSignificantDigits,\r\n * P.truncated, divide, getLn10, getPi, naturalExponential,\r\n * naturalLogarithm, ceil, floor, round, trunc\r\n * finiteToString P.toExponential, P.toFixed, P.toPrecision, P.toString, P.valueOf,\r\n * toStringBinary\r\n * getBase10Exponent P.minus, P.plus, P.times, parseOther\r\n * getLn10 P.logarithm, naturalLogarithm\r\n * getPi P.acos, P.asin, P.atan, toLessThanHalfPi, atan2\r\n * getPrecision P.precision, P.toFraction\r\n * getZeroString digitsToString, finiteToString\r\n * intPow P.toPower, parseOther\r\n * isOdd toLessThanHalfPi\r\n * maxOrMin max, min\r\n * naturalExponential P.naturalExponential, P.toPower\r\n * naturalLogarithm P.acosh, P.asinh, P.atanh, P.logarithm, P.naturalLogarithm,\r\n * P.toPower, naturalExponential\r\n * nonFiniteToString finiteToString, toStringBinary\r\n * parseDecimal Decimal\r\n * parseOther Decimal\r\n * sin P.sin\r\n * taylorSeries P.cosh, P.sinh, cos, sin\r\n * toLessThanHalfPi P.cos, P.sin\r\n * toStringBinary P.toBinary, P.toHexadecimal, P.toOctal\r\n * truncate intPow\r\n *\r\n * Throws: P.logarithm, P.precision, P.toFraction, checkInt32, getLn10, getPi,\r\n * naturalLogarithm, config, parseOther, random, Decimal\r\n */\r\n\r\n\r\n function digitsToString(d) {\r\n var i, k, ws,\r\n indexOfLastWord = d.length - 1,\r\n str = '',\r\n w = d[0];\r\n\r\n if (indexOfLastWord > 0) {\r\n str += w;\r\n for (i = 1; i < indexOfLastWord; i++) {\r\n ws = d[i] + '';\r\n k = LOG_BASE - ws.length;\r\n if (k) str += getZeroString(k);\r\n str += ws;\r\n }\r\n\r\n w = d[i];\r\n ws = w + '';\r\n k = LOG_BASE - ws.length;\r\n if (k) str += getZeroString(k);\r\n } else if (w === 0) {\r\n return '0';\r\n }\r\n\r\n // Remove trailing zeros of last w.\r\n for (; w % 10 === 0;) w /= 10;\r\n\r\n return str + w;\r\n }\r\n\r\n\r\n function checkInt32(i, min, max) {\r\n if (i !== ~~i || i < min || i > max) {\r\n throw Error(invalidArgument + i);\r\n }\r\n }\r\n\r\n\r\n /*\r\n * Check 5 rounding digits if `repeating` is null, 4 otherwise.\r\n * `repeating == null` if caller is `log` or `pow`,\r\n * `repeating != null` if caller is `naturalLogarithm` or `naturalExponential`.\r\n */\r\n function checkRoundingDigits(d, i, rm, repeating) {\r\n var di, k, r, rd;\r\n\r\n // Get the length of the first word of the array d.\r\n for (k = d[0]; k >= 10; k /= 10) --i;\r\n\r\n // Is the rounding digit in the first word of d?\r\n if (--i < 0) {\r\n i += LOG_BASE;\r\n di = 0;\r\n } else {\r\n di = Math.ceil((i + 1) / LOG_BASE);\r\n i %= LOG_BASE;\r\n }\r\n\r\n // i is the index (0 - 6) of the rounding digit.\r\n // E.g. if within the word 3487563 the first rounding digit is 5,\r\n // then i = 4, k = 1000, rd = 3487563 % 1000 = 563\r\n k = mathpow(10, LOG_BASE - i);\r\n rd = d[di] % k | 0;\r\n\r\n if (repeating == null) {\r\n if (i < 3) {\r\n if (i == 0) rd = rd / 100 | 0;\r\n else if (i == 1) rd = rd / 10 | 0;\r\n r = rm < 4 && rd == 99999 || rm > 3 && rd == 49999 || rd == 50000 || rd == 0;\r\n } else {\r\n r = (rm < 4 && rd + 1 == k || rm > 3 && rd + 1 == k / 2) &&\r\n (d[di + 1] / k / 100 | 0) == mathpow(10, i - 2) - 1 ||\r\n (rd == k / 2 || rd == 0) && (d[di + 1] / k / 100 | 0) == 0;\r\n }\r\n } else {\r\n if (i < 4) {\r\n if (i == 0) rd = rd / 1000 | 0;\r\n else if (i == 1) rd = rd / 100 | 0;\r\n else if (i == 2) rd = rd / 10 | 0;\r\n r = (repeating || rm < 4) && rd == 9999 || !repeating && rm > 3 && rd == 4999;\r\n } else {\r\n r = ((repeating || rm < 4) && rd + 1 == k ||\r\n (!repeating && rm > 3) && rd + 1 == k / 2) &&\r\n (d[di + 1] / k / 1000 | 0) == mathpow(10, i - 3) - 1;\r\n }\r\n }\r\n\r\n return r;\r\n }\r\n\r\n\r\n // Convert string of `baseIn` to an array of numbers of `baseOut`.\r\n // Eg. convertBase('255', 10, 16) returns [15, 15].\r\n // Eg. convertBase('ff', 16, 10) returns [2, 5, 5].\r\n function convertBase(str, baseIn, baseOut) {\r\n var j,\r\n arr = [0],\r\n arrL,\r\n i = 0,\r\n strL = str.length;\r\n\r\n for (; i < strL;) {\r\n for (arrL = arr.length; arrL--;) arr[arrL] *= baseIn;\r\n arr[0] += NUMERALS.indexOf(str.charAt(i++));\r\n for (j = 0; j < arr.length; j++) {\r\n if (arr[j] > baseOut - 1) {\r\n if (arr[j + 1] === void 0) arr[j + 1] = 0;\r\n arr[j + 1] += arr[j] / baseOut | 0;\r\n arr[j] %= baseOut;\r\n }\r\n }\r\n }\r\n\r\n return arr.reverse();\r\n }\r\n\r\n\r\n /*\r\n * cos(x) = 1 - x^2/2! + x^4/4! - ...\r\n * |x| < pi/2\r\n *\r\n */\r\n function cosine(Ctor, x) {\r\n var k, len, y;\r\n\r\n if (x.isZero()) return x;\r\n\r\n // Argument reduction: cos(4x) = 8*(cos^4(x) - cos^2(x)) + 1\r\n // i.e. cos(x) = 8*(cos^4(x/4) - cos^2(x/4)) + 1\r\n\r\n // Estimate the optimum number of times to use the argument reduction.\r\n len = x.d.length;\r\n if (len < 32) {\r\n k = Math.ceil(len / 3);\r\n y = (1 / tinyPow(4, k)).toString();\r\n } else {\r\n k = 16;\r\n y = '2.3283064365386962890625e-10';\r\n }\r\n\r\n Ctor.precision += k;\r\n\r\n x = taylorSeries(Ctor, 1, x.times(y), new Ctor(1));\r\n\r\n // Reverse argument reduction\r\n for (var i = k; i--;) {\r\n var cos2x = x.times(x);\r\n x = cos2x.times(cos2x).minus(cos2x).times(8).plus(1);\r\n }\r\n\r\n Ctor.precision -= k;\r\n\r\n return x;\r\n }\r\n\r\n\r\n /*\r\n * Perform division in the specified base.\r\n */\r\n var divide = (function () {\r\n\r\n // Assumes non-zero x and k, and hence non-zero result.\r\n function multiplyInteger(x, k, base) {\r\n var temp,\r\n carry = 0,\r\n i = x.length;\r\n\r\n for (x = x.slice(); i--;) {\r\n temp = x[i] * k + carry;\r\n x[i] = temp % base | 0;\r\n carry = temp / base | 0;\r\n }\r\n\r\n if (carry) x.unshift(carry);\r\n\r\n return x;\r\n }\r\n\r\n function compare(a, b, aL, bL) {\r\n var i, r;\r\n\r\n if (aL != bL) {\r\n r = aL > bL ? 1 : -1;\r\n } else {\r\n for (i = r = 0; i < aL; i++) {\r\n if (a[i] != b[i]) {\r\n r = a[i] > b[i] ? 1 : -1;\r\n break;\r\n }\r\n }\r\n }\r\n\r\n return r;\r\n }\r\n\r\n function subtract(a, b, aL, base) {\r\n var i = 0;\r\n\r\n // Subtract b from a.\r\n for (; aL--;) {\r\n a[aL] -= i;\r\n i = a[aL] < b[aL] ? 1 : 0;\r\n a[aL] = i * base + a[aL] - b[aL];\r\n }\r\n\r\n // Remove leading zeros.\r\n for (; !a[0] && a.length > 1;) a.shift();\r\n }\r\n\r\n return function (x, y, pr, rm, dp, base) {\r\n var cmp, e, i, k, logBase, more, prod, prodL, q, qd, rem, remL, rem0, sd, t, xi, xL, yd0,\r\n yL, yz,\r\n Ctor = x.constructor,\r\n sign = x.s == y.s ? 1 : -1,\r\n xd = x.d,\r\n yd = y.d;\r\n\r\n // Either NaN, Infinity or 0?\r\n if (!xd || !xd[0] || !yd || !yd[0]) {\r\n\r\n return new Ctor(// Return NaN if either NaN, or both Infinity or 0.\r\n !x.s || !y.s || (xd ? yd && xd[0] == yd[0] : !yd) ? NaN :\r\n\r\n // Return ±0 if x is 0 or y is ±Infinity, or return ±Infinity as y is 0.\r\n xd && xd[0] == 0 || !yd ? sign * 0 : sign / 0);\r\n }\r\n\r\n if (base) {\r\n logBase = 1;\r\n e = x.e - y.e;\r\n } else {\r\n base = BASE;\r\n logBase = LOG_BASE;\r\n e = mathfloor(x.e / logBase) - mathfloor(y.e / logBase);\r\n }\r\n\r\n yL = yd.length;\r\n xL = xd.length;\r\n q = new Ctor(sign);\r\n qd = q.d = [];\r\n\r\n // Result exponent may be one less than e.\r\n // The digit array of a Decimal from toStringBinary may have trailing zeros.\r\n for (i = 0; yd[i] == (xd[i] || 0); i++);\r\n\r\n if (yd[i] > (xd[i] || 0)) e--;\r\n\r\n if (pr == null) {\r\n sd = pr = Ctor.precision;\r\n rm = Ctor.rounding;\r\n } else if (dp) {\r\n sd = pr + (x.e - y.e) + 1;\r\n } else {\r\n sd = pr;\r\n }\r\n\r\n if (sd < 0) {\r\n qd.push(1);\r\n more = true;\r\n } else {\r\n\r\n // Convert precision in number of base 10 digits to base 1e7 digits.\r\n sd = sd / logBase + 2 | 0;\r\n i = 0;\r\n\r\n // divisor < 1e7\r\n if (yL == 1) {\r\n k = 0;\r\n yd = yd[0];\r\n sd++;\r\n\r\n // k is the carry.\r\n for (; (i < xL || k) && sd--; i++) {\r\n t = k * base + (xd[i] || 0);\r\n qd[i] = t / yd | 0;\r\n k = t % yd | 0;\r\n }\r\n\r\n more = k || i < xL;\r\n\r\n // divisor >= 1e7\r\n } else {\r\n\r\n // Normalise xd and yd so highest order digit of yd is >= base/2\r\n k = base / (yd[0] + 1) | 0;\r\n\r\n if (k > 1) {\r\n yd = multiplyInteger(yd, k, base);\r\n xd = multiplyInteger(xd, k, base);\r\n yL = yd.length;\r\n xL = xd.length;\r\n }\r\n\r\n xi = yL;\r\n rem = xd.slice(0, yL);\r\n remL = rem.length;\r\n\r\n // Add zeros to make remainder as long as divisor.\r\n for (; remL < yL;) rem[remL++] = 0;\r\n\r\n yz = yd.slice();\r\n yz.unshift(0);\r\n yd0 = yd[0];\r\n\r\n if (yd[1] >= base / 2) ++yd0;\r\n\r\n do {\r\n k = 0;\r\n\r\n // Compare divisor and remainder.\r\n cmp = compare(yd, rem, yL, remL);\r\n\r\n // If divisor < remainder.\r\n if (cmp < 0) {\r\n\r\n // Calculate trial digit, k.\r\n rem0 = rem[0];\r\n if (yL != remL) rem0 = rem0 * base + (rem[1] || 0);\r\n\r\n // k will be how many times the divisor goes into the current remainder.\r\n k = rem0 / yd0 | 0;\r\n\r\n // Algorithm:\r\n // 1. product = divisor * trial digit (k)\r\n // 2. if product > remainder: product -= divisor, k--\r\n // 3. remainder -= product\r\n // 4. if product was < remainder at 2:\r\n // 5. compare new remainder and divisor\r\n // 6. If remainder > divisor: remainder -= divisor, k++\r\n\r\n if (k > 1) {\r\n if (k >= base) k = base - 1;\r\n\r\n // product = divisor * trial digit.\r\n prod = multiplyInteger(yd, k, base);\r\n prodL = prod.length;\r\n remL = rem.length;\r\n\r\n // Compare product and remainder.\r\n cmp = compare(prod, rem, prodL, remL);\r\n\r\n // product > remainder.\r\n if (cmp == 1) {\r\n k--;\r\n\r\n // Subtract divisor from product.\r\n subtract(prod, yL < prodL ? yz : yd, prodL, base);\r\n }\r\n } else {\r\n\r\n // cmp is -1.\r\n // If k is 0, there is no need to compare yd and rem again below, so change cmp to 1\r\n // to avoid it. If k is 1 there is a need to compare yd and rem again below.\r\n if (k == 0) cmp = k = 1;\r\n prod = yd.slice();\r\n }\r\n\r\n prodL = prod.length;\r\n if (prodL < remL) prod.unshift(0);\r\n\r\n // Subtract product from remainder.\r\n subtract(rem, prod, remL, base);\r\n\r\n // If product was < previous remainder.\r\n if (cmp == -1) {\r\n remL = rem.length;\r\n\r\n // Compare divisor and new remainder.\r\n cmp = compare(yd, rem, yL, remL);\r\n\r\n // If divisor < new remainder, subtract divisor from remainder.\r\n if (cmp < 1) {\r\n k++;\r\n\r\n // Subtract divisor from remainder.\r\n subtract(rem, yL < remL ? yz : yd, remL, base);\r\n }\r\n }\r\n\r\n remL = rem.length;\r\n } else if (cmp === 0) {\r\n k++;\r\n rem = [0];\r\n } // if cmp === 1, k will be 0\r\n\r\n // Add the next digit, k, to the result array.\r\n qd[i++] = k;\r\n\r\n // Update the remainder.\r\n if (cmp && rem[0]) {\r\n rem[remL++] = xd[xi] || 0;\r\n } else {\r\n rem = [xd[xi]];\r\n remL = 1;\r\n }\r\n\r\n } while ((xi++ < xL || rem[0] !== void 0) && sd--);\r\n\r\n more = rem[0] !== void 0;\r\n }\r\n\r\n // Leading zero?\r\n if (!qd[0]) qd.shift();\r\n }\r\n\r\n // logBase is 1 when divide is being used for base conversion.\r\n if (logBase == 1) {\r\n q.e = e;\r\n inexact = more;\r\n } else {\r\n\r\n // To calculate q.e, first get the number of digits of qd[0].\r\n for (i = 1, k = qd[0]; k >= 10; k /= 10) i++;\r\n q.e = i + e * logBase - 1;\r\n\r\n finalise(q, dp ? pr + q.e + 1 : pr, rm, more);\r\n }\r\n\r\n return q;\r\n };\r\n })();\r\n\r\n\r\n /*\r\n * Round `x` to `sd` significant digits using rounding mode `rm`.\r\n * Check for over/under-flow.\r\n */\r\n function finalise(x, sd, rm, isTruncated) {\r\n var digits, i, j, k, rd, roundUp, w, xd, xdi,\r\n Ctor = x.constructor;\r\n\r\n // Don't round if sd is null or undefined.\r\n out: if (sd != null) {\r\n xd = x.d;\r\n\r\n // Infinity/NaN.\r\n if (!xd) return x;\r\n\r\n // rd: the rounding digit, i.e. the digit after the digit that may be rounded up.\r\n // w: the word of xd containing rd, a base 1e7 number.\r\n // xdi: the index of w within xd.\r\n // digits: the number of digits of w.\r\n // i: what would be the index of rd within w if all the numbers were 7 digits long (i.e. if\r\n // they had leading zeros)\r\n // j: if > 0, the actual index of rd within w (if < 0, rd is a leading zero).\r\n\r\n // Get the length of the first word of the digits array xd.\r\n for (digits = 1, k = xd[0]; k >= 10; k /= 10) digits++;\r\n i = sd - digits;\r\n\r\n // Is the rounding digit in the first word of xd?\r\n if (i < 0) {\r\n i += LOG_BASE;\r\n j = sd;\r\n w = xd[xdi = 0];\r\n\r\n // Get the rounding digit at index j of w.\r\n rd = w / mathpow(10, digits - j - 1) % 10 | 0;\r\n } else {\r\n xdi = Math.ceil((i + 1) / LOG_BASE);\r\n k = xd.length;\r\n if (xdi >= k) {\r\n if (isTruncated) {\r\n\r\n // Needed by `naturalExponential`, `naturalLogarithm` and `squareRoot`.\r\n for (; k++ <= xdi;) xd.push(0);\r\n w = rd = 0;\r\n digits = 1;\r\n i %= LOG_BASE;\r\n j = i - LOG_BASE + 1;\r\n } else {\r\n break out;\r\n }\r\n } else {\r\n w = k = xd[xdi];\r\n\r\n // Get the number of digits of w.\r\n for (digits = 1; k >= 10; k /= 10) digits++;\r\n\r\n // Get the index of rd within w.\r\n i %= LOG_BASE;\r\n\r\n // Get the index of rd within w, adjusted for leading zeros.\r\n // The number of leading zeros of w is given by LOG_BASE - digits.\r\n j = i - LOG_BASE + digits;\r\n\r\n // Get the rounding digit at index j of w.\r\n rd = j < 0 ? 0 : w / mathpow(10, digits - j - 1) % 10 | 0;\r\n }\r\n }\r\n\r\n // Are there any non-zero digits after the rounding digit?\r\n isTruncated = isTruncated || sd < 0 ||\r\n xd[xdi + 1] !== void 0 || (j < 0 ? w : w % mathpow(10, digits - j - 1));\r\n\r\n // The expression `w % mathpow(10, digits - j - 1)` returns all the digits of w to the right\r\n // of the digit at (left-to-right) index j, e.g. if w is 908714 and j is 2, the expression\r\n // will give 714.\r\n\r\n roundUp = rm < 4\r\n ? (rd || isTruncated) && (rm == 0 || rm == (x.s < 0 ? 3 : 2))\r\n : rd > 5 || rd == 5 && (rm == 4 || isTruncated || rm == 6 &&\r\n\r\n // Check whether the digit to the left of the rounding digit is odd.\r\n ((i > 0 ? j > 0 ? w / mathpow(10, digits - j) : 0 : xd[xdi - 1]) % 10) & 1 ||\r\n rm == (x.s < 0 ? 8 : 7));\r\n\r\n if (sd < 1 || !xd[0]) {\r\n xd.length = 0;\r\n if (roundUp) {\r\n\r\n // Convert sd to decimal places.\r\n sd -= x.e + 1;\r\n\r\n // 1, 0.1, 0.01, 0.001, 0.0001 etc.\r\n xd[0] = mathpow(10, (LOG_BASE - sd % LOG_BASE) % LOG_BASE);\r\n x.e = -sd || 0;\r\n } else {\r\n\r\n // Zero.\r\n xd[0] = x.e = 0;\r\n }\r\n\r\n return x;\r\n }\r\n\r\n // Remove excess digits.\r\n if (i == 0) {\r\n xd.length = xdi;\r\n k = 1;\r\n xdi--;\r\n } else {\r\n xd.length = xdi + 1;\r\n k = mathpow(10, LOG_BASE - i);\r\n\r\n // E.g. 56700 becomes 56000 if 7 is the rounding digit.\r\n // j > 0 means i > number of leading zeros of w.\r\n xd[xdi] = j > 0 ? (w / mathpow(10, digits - j) % mathpow(10, j) | 0) * k : 0;\r\n }\r\n\r\n if (roundUp) {\r\n for (;;) {\r\n\r\n // Is the digit to be rounded up in the first word of xd?\r\n if (xdi == 0) {\r\n\r\n // i will be the length of xd[0] before k is added.\r\n for (i = 1, j = xd[0]; j >= 10; j /= 10) i++;\r\n j = xd[0] += k;\r\n for (k = 1; j >= 10; j /= 10) k++;\r\n\r\n // if i != k the length has increased.\r\n if (i != k) {\r\n x.e++;\r\n if (xd[0] == BASE) xd[0] = 1;\r\n }\r\n\r\n break;\r\n } else {\r\n xd[xdi] += k;\r\n if (xd[xdi] != BASE) break;\r\n xd[xdi--] = 0;\r\n k = 1;\r\n }\r\n }\r\n }\r\n\r\n // Remove trailing zeros.\r\n for (i = xd.length; xd[--i] === 0;) xd.pop();\r\n }\r\n\r\n if (external) {\r\n\r\n // Overflow?\r\n if (x.e > Ctor.maxE) {\r\n\r\n // Infinity.\r\n x.d = null;\r\n x.e = NaN;\r\n\r\n // Underflow?\r\n } else if (x.e < Ctor.minE) {\r\n\r\n // Zero.\r\n x.e = 0;\r\n x.d = [0];\r\n // Ctor.underflow = true;\r\n } // else Ctor.underflow = false;\r\n }\r\n\r\n return x;\r\n }\r\n\r\n\r\n function finiteToString(x, isExp, sd) {\r\n if (!x.isFinite()) return nonFiniteToString(x);\r\n var k,\r\n e = x.e,\r\n str = digitsToString(x.d),\r\n len = str.length;\r\n\r\n if (isExp) {\r\n if (sd && (k = sd - len) > 0) {\r\n str = str.charAt(0) + '.' + str.slice(1) + getZeroString(k);\r\n } else if (len > 1) {\r\n str = str.charAt(0) + '.' + str.slice(1);\r\n }\r\n\r\n str = str + (x.e < 0 ? 'e' : 'e+') + x.e;\r\n } else if (e < 0) {\r\n str = '0.' + getZeroString(-e - 1) + str;\r\n if (sd && (k = sd - len) > 0) str += getZeroString(k);\r\n } else if (e >= len) {\r\n str += getZeroString(e + 1 - len);\r\n if (sd && (k = sd - e - 1) > 0) str = str + '.' + getZeroString(k);\r\n } else {\r\n if ((k = e + 1) < len) str = str.slice(0, k) + '.' + str.slice(k);\r\n if (sd && (k = sd - len) > 0) {\r\n if (e + 1 === len) str += '.';\r\n str += getZeroString(k);\r\n }\r\n }\r\n\r\n return str;\r\n }\r\n\r\n\r\n // Calculate the base 10 exponent from the base 1e7 exponent.\r\n function getBase10Exponent(digits, e) {\r\n var w = digits[0];\r\n\r\n // Add the number of digits of the first word of the digits array.\r\n for ( e *= LOG_BASE; w >= 10; w /= 10) e++;\r\n return e;\r\n }\r\n\r\n\r\n function getLn10(Ctor, sd, pr) {\r\n if (sd > LN10_PRECISION) {\r\n\r\n // Reset global state in case the exception is caught.\r\n external = true;\r\n if (pr) Ctor.precision = pr;\r\n throw Error(precisionLimitExceeded);\r\n }\r\n return finalise(new Ctor(LN10), sd, 1, true);\r\n }\r\n\r\n\r\n function getPi(Ctor, sd, rm) {\r\n if (sd > PI_PRECISION) throw Error(precisionLimitExceeded);\r\n return finalise(new Ctor(PI), sd, rm, true);\r\n }\r\n\r\n\r\n function getPrecision(digits) {\r\n var w = digits.length - 1,\r\n len = w * LOG_BASE + 1;\r\n\r\n w = digits[w];\r\n\r\n // If non-zero...\r\n if (w) {\r\n\r\n // Subtract the number of trailing zeros of the last word.\r\n for (; w % 10 == 0; w /= 10) len--;\r\n\r\n // Add the number of digits of the first word.\r\n for (w = digits[0]; w >= 10; w /= 10) len++;\r\n }\r\n\r\n return len;\r\n }\r\n\r\n\r\n function getZeroString(k) {\r\n var zs = '';\r\n for (; k--;) zs += '0';\r\n return zs;\r\n }\r\n\r\n\r\n /*\r\n * Return a new Decimal whose value is the value of Decimal `x` to the power `n`, where `n` is an\r\n * integer of type number.\r\n *\r\n * Implements 'exponentiation by squaring'. Called by `pow` and `parseOther`.\r\n *\r\n */\r\n function intPow(Ctor, x, n, pr) {\r\n var isTruncated,\r\n r = new Ctor(1),\r\n\r\n // Max n of 9007199254740991 takes 53 loop iterations.\r\n // Maximum digits array length; leaves [28, 34] guard digits.\r\n k = Math.ceil(pr / LOG_BASE + 4);\r\n\r\n external = false;\r\n\r\n for (;;) {\r\n if (n % 2) {\r\n r = r.times(x);\r\n if (truncate(r.d, k)) isTruncated = true;\r\n }\r\n\r\n n = mathfloor(n / 2);\r\n if (n === 0) {\r\n\r\n // To ensure correct rounding when r.d is truncated, increment the last word if it is zero.\r\n n = r.d.length - 1;\r\n if (isTruncated && r.d[n] === 0) ++r.d[n];\r\n break;\r\n }\r\n\r\n x = x.times(x);\r\n truncate(x.d, k);\r\n }\r\n\r\n external = true;\r\n\r\n return r;\r\n }\r\n\r\n\r\n function isOdd(n) {\r\n return n.d[n.d.length - 1] & 1;\r\n }\r\n\r\n\r\n /*\r\n * Handle `max` and `min`. `ltgt` is 'lt' or 'gt'.\r\n */\r\n function maxOrMin(Ctor, args, ltgt) {\r\n var y,\r\n x = new Ctor(args[0]),\r\n i = 0;\r\n\r\n for (; ++i < args.length;) {\r\n y = new Ctor(args[i]);\r\n if (!y.s) {\r\n x = y;\r\n break;\r\n } else if (x[ltgt](y)) {\r\n x = y;\r\n }\r\n }\r\n\r\n return x;\r\n }\r\n\r\n\r\n /*\r\n * Return a new Decimal whose value is the natural exponential of `x` rounded to `sd` significant\r\n * digits.\r\n *\r\n * Taylor/Maclaurin series.\r\n *\r\n * exp(x) = x^0/0! + x^1/1! + x^2/2! + x^3/3! + ...\r\n *\r\n * Argument reduction:\r\n * Repeat x = x / 32, k += 5, until |x| < 0.1\r\n * exp(x) = exp(x / 2^k)^(2^k)\r\n *\r\n * Previously, the argument was initially reduced by\r\n * exp(x) = exp(r) * 10^k where r = x - k * ln10, k = floor(x / ln10)\r\n * to first put r in the range [0, ln10], before dividing by 32 until |x| < 0.1, but this was\r\n * found to be slower than just dividing repeatedly by 32 as above.\r\n *\r\n * Max integer argument: exp('20723265836946413') = 6.3e+9000000000000000\r\n * Min integer argument: exp('-20723265836946411') = 1.2e-9000000000000000\r\n * (Math object integer min/max: Math.exp(709) = 8.2e+307, Math.exp(-745) = 5e-324)\r\n *\r\n * exp(Infinity) = Infinity\r\n * exp(-Infinity) = 0\r\n * exp(NaN) = NaN\r\n * exp(±0) = 1\r\n *\r\n * exp(x) is non-terminating for any finite, non-zero x.\r\n *\r\n * The result will always be correctly rounded.\r\n *\r\n */\r\n function naturalExponential(x, sd) {\r\n var denominator, guard, j, pow, sum, t, wpr,\r\n rep = 0,\r\n i = 0,\r\n k = 0,\r\n Ctor = x.constructor,\r\n rm = Ctor.rounding,\r\n pr = Ctor.precision;\r\n\r\n // 0/NaN/Infinity?\r\n if (!x.d || !x.d[0] || x.e > 17) {\r\n\r\n return new Ctor(x.d\r\n ? !x.d[0] ? 1 : x.s < 0 ? 0 : 1 / 0\r\n : x.s ? x.s < 0 ? 0 : x : 0 / 0);\r\n }\r\n\r\n if (sd == null) {\r\n external = false;\r\n wpr = pr;\r\n } else {\r\n wpr = sd;\r\n }\r\n\r\n t = new Ctor(0.03125);\r\n\r\n // while abs(x) >= 0.1\r\n while (x.e > -2) {\r\n\r\n // x = x / 2^5\r\n x = x.times(t);\r\n k += 5;\r\n }\r\n\r\n // Use 2 * log10(2^k) + 5 (empirically derived) to estimate the increase in precision\r\n // necessary to ensure the first 4 rounding digits are correct.\r\n guard = Math.log(mathpow(2, k)) / Math.LN10 * 2 + 5 | 0;\r\n wpr += guard;\r\n denominator = pow = sum = new Ctor(1);\r\n Ctor.precision = wpr;\r\n\r\n for (;;) {\r\n pow = finalise(pow.times(x), wpr, 1);\r\n denominator = denominator.times(++i);\r\n t = sum.plus(divide(pow, denominator, wpr, 1));\r\n\r\n if (digitsToString(t.d).slice(0, wpr) === digitsToString(sum.d).slice(0, wpr)) {\r\n j = k;\r\n while (j--) sum = finalise(sum.times(sum), wpr, 1);\r\n\r\n // Check to see if the first 4 rounding digits are [49]999.\r\n // If so, repeat the summation with a higher precision, otherwise\r\n // e.g. with precision: 18, rounding: 1\r\n // exp(18.404272462595034083567793919843761) = 98372560.1229999999 (should be 98372560.123)\r\n // `wpr - guard` is the index of first rounding digit.\r\n if (sd == null) {\r\n\r\n if (rep < 3 && checkRoundingDigits(sum.d, wpr - guard, rm, rep)) {\r\n Ctor.precision = wpr += 10;\r\n denominator = pow = t = new Ctor(1);\r\n i = 0;\r\n rep++;\r\n } else {\r\n return finalise(sum, Ctor.precision = pr, rm, external = true);\r\n }\r\n } else {\r\n Ctor.precision = pr;\r\n return sum;\r\n }\r\n }\r\n\r\n sum = t;\r\n }\r\n }\r\n\r\n\r\n /*\r\n * Return a new Decimal whose value is the natural logarithm of `x` rounded to `sd` significant\r\n * digits.\r\n *\r\n * ln(-n) = NaN\r\n * ln(0) = -Infinity\r\n * ln(-0) = -Infinity\r\n * ln(1) = 0\r\n * ln(Infinity) = Infinity\r\n * ln(-Infinity) = NaN\r\n * ln(NaN) = NaN\r\n *\r\n * ln(n) (n != 1) is non-terminating.\r\n *\r\n */\r\n function naturalLogarithm(y, sd) {\r\n var c, c0, denominator, e, numerator, rep, sum, t, wpr, x1, x2,\r\n n = 1,\r\n guard = 10,\r\n x = y,\r\n xd = x.d,\r\n Ctor = x.constructor,\r\n rm = Ctor.rounding,\r\n pr = Ctor.precision;\r\n\r\n // Is x negative or Infinity, NaN, 0 or 1?\r\n if (x.s < 0 || !xd || !xd[0] || !x.e && xd[0] == 1 && xd.length == 1) {\r\n return new Ctor(xd && !xd[0] ? -1 / 0 : x.s != 1 ? NaN : xd ? 0 : x);\r\n }\r\n\r\n if (sd == null) {\r\n external = false;\r\n wpr = pr;\r\n } else {\r\n wpr = sd;\r\n }\r\n\r\n Ctor.precision = wpr += guard;\r\n c = digitsToString(xd);\r\n c0 = c.charAt(0);\r\n\r\n if (Math.abs(e = x.e) < 1.5e15) {\r\n\r\n // Argument reduction.\r\n // The series converges faster the closer the argument is to 1, so using\r\n // ln(a^b) = b * ln(a), ln(a) = ln(a^b) / b\r\n // multiply the argument by itself until the leading digits of the significand are 7, 8, 9,\r\n // 10, 11, 12 or 13, recording the number of multiplications so the sum of the series can\r\n // later be divided by this number, then separate out the power of 10 using\r\n // ln(a*10^b) = ln(a) + b*ln(10).\r\n\r\n // max n is 21 (gives 0.9, 1.0 or 1.1) (9e15 / 21 = 4.2e14).\r\n //while (c0 < 9 && c0 != 1 || c0 == 1 && c.charAt(1) > 1) {\r\n // max n is 6 (gives 0.7 - 1.3)\r\n while (c0 < 7 && c0 != 1 || c0 == 1 && c.charAt(1) > 3) {\r\n x = x.times(y);\r\n c = digitsToString(x.d);\r\n c0 = c.charAt(0);\r\n n++;\r\n }\r\n\r\n e = x.e;\r\n\r\n if (c0 > 1) {\r\n x = new Ctor('0.' + c);\r\n e++;\r\n } else {\r\n x = new Ctor(c0 + '.' + c.slice(1));\r\n }\r\n } else {\r\n\r\n // The argument reduction method above may result in overflow if the argument y is a massive\r\n // number with exponent >= 1500000000000000 (9e15 / 6 = 1.5e15), so instead recall this\r\n // function using ln(x*10^e) = ln(x) + e*ln(10).\r\n t = getLn10(Ctor, wpr + 2, pr).times(e + '');\r\n x = naturalLogarithm(new Ctor(c0 + '.' + c.slice(1)), wpr - guard).plus(t);\r\n Ctor.precision = pr;\r\n\r\n return sd == null ? finalise(x, pr, rm, external = true) : x;\r\n }\r\n\r\n // x1 is x reduced to a value near 1.\r\n x1 = x;\r\n\r\n // Taylor series.\r\n // ln(y) = ln((1 + x)/(1 - x)) = 2(x + x^3/3 + x^5/5 + x^7/7 + ...)\r\n // where x = (y - 1)/(y + 1) (|x| < 1)\r\n sum = numerator = x = divide(x.minus(1), x.plus(1), wpr, 1);\r\n x2 = finalise(x.times(x), wpr, 1);\r\n denominator = 3;\r\n\r\n for (;;) {\r\n numerator = finalise(numerator.times(x2), wpr, 1);\r\n t = sum.plus(divide(numerator, new Ctor(denominator), wpr, 1));\r\n\r\n if (digitsToString(t.d).slice(0, wpr) === digitsToString(sum.d).slice(0, wpr)) {\r\n sum = sum.times(2);\r\n\r\n // Reverse the argument reduction. Check that e is not 0 because, besides preventing an\r\n // unnecessary calculation, -0 + 0 = +0 and to ensure correct rounding -0 needs to stay -0.\r\n if (e !== 0) sum = sum.plus(getLn10(Ctor, wpr + 2, pr).times(e + ''));\r\n sum = divide(sum, new Ctor(n), wpr, 1);\r\n\r\n // Is rm > 3 and the first 4 rounding digits 4999, or rm < 4 (or the summation has\r\n // been repeated previously) and the first 4 rounding digits 9999?\r\n // If so, restart the summation with a higher precision, otherwise\r\n // e.g. with precision: 12, rounding: 1\r\n // ln(135520028.6126091714265381533) = 18.7246299999 when it should be 18.72463.\r\n // `wpr - guard` is the index of first rounding digit.\r\n if (sd == null) {\r\n if (checkRoundingDigits(sum.d, wpr - guard, rm, rep)) {\r\n Ctor.precision = wpr += guard;\r\n t = numerator = x = divide(x1.minus(1), x1.plus(1), wpr, 1);\r\n x2 = finalise(x.times(x), wpr, 1);\r\n denominator = rep = 1;\r\n } else {\r\n return finalise(sum, Ctor.precision = pr, rm, external = true);\r\n }\r\n } else {\r\n Ctor.precision = pr;\r\n return sum;\r\n }\r\n }\r\n\r\n sum = t;\r\n denominator += 2;\r\n }\r\n }\r\n\r\n\r\n // ±Infinity, NaN.\r\n function nonFiniteToString(x) {\r\n // Unsigned.\r\n return String(x.s * x.s / 0);\r\n }\r\n\r\n\r\n /*\r\n * Parse the value of a new Decimal `x` from string `str`.\r\n */\r\n function parseDecimal(x, str) {\r\n var e, i, len;\r\n\r\n // Decimal point?\r\n if ((e = str.indexOf('.')) > -1) str = str.replace('.', '');\r\n\r\n // Exponential form?\r\n if ((i = str.search(/e/i)) > 0) {\r\n\r\n // Determine exponent.\r\n if (e < 0) e = i;\r\n e += +str.slice(i + 1);\r\n str = str.substring(0, i);\r\n } else if (e < 0) {\r\n\r\n // Integer.\r\n e = str.length;\r\n }\r\n\r\n // Determine leading zeros.\r\n for (i = 0; str.charCodeAt(i) === 48; i++);\r\n\r\n // Determine trailing zeros.\r\n for (len = str.length; str.charCodeAt(len - 1) === 48; --len);\r\n str = str.slice(i, len);\r\n\r\n if (str) {\r\n len -= i;\r\n x.e = e = e - i - 1;\r\n x.d = [];\r\n\r\n // Transform base\r\n\r\n // e is the base 10 exponent.\r\n // i is where to slice str to get the first word of the digits array.\r\n i = (e + 1) % LOG_BASE;\r\n if (e < 0) i += LOG_BASE;\r\n\r\n if (i < len) {\r\n if (i) x.d.push(+str.slice(0, i));\r\n for (len -= LOG_BASE; i < len;) x.d.push(+str.slice(i, i += LOG_BASE));\r\n str = str.slice(i);\r\n i = LOG_BASE - str.length;\r\n } else {\r\n i -= len;\r\n }\r\n\r\n for (; i--;) str += '0';\r\n x.d.push(+str);\r\n\r\n if (external) {\r\n\r\n // Overflow?\r\n if (x.e > x.constructor.maxE) {\r\n\r\n // Infinity.\r\n x.d = null;\r\n x.e = NaN;\r\n\r\n // Underflow?\r\n } else if (x.e < x.constructor.minE) {\r\n\r\n // Zero.\r\n x.e = 0;\r\n x.d = [0];\r\n // x.constructor.underflow = true;\r\n } // else x.constructor.underflow = false;\r\n }\r\n } else {\r\n\r\n // Zero.\r\n x.e = 0;\r\n x.d = [0];\r\n }\r\n\r\n return x;\r\n }\r\n\r\n\r\n /*\r\n * Parse the value of a new Decimal `x` from a string `str`, which is not a decimal value.\r\n */\r\n function parseOther(x, str) {\r\n var base, Ctor, divisor, i, isFloat, len, p, xd, xe;\r\n\r\n if (str.indexOf('_') > -1) {\r\n str = str.replace(/(\\d)_(?=\\d)/g, '$1');\r\n if (isDecimal.test(str)) return parseDecimal(x, str);\r\n } else if (str === 'Infinity' || str === 'NaN') {\r\n if (!+str) x.s = NaN;\r\n x.e = NaN;\r\n x.d = null;\r\n return x;\r\n }\r\n\r\n if (isHex.test(str)) {\r\n base = 16;\r\n str = str.toLowerCase();\r\n } else if (isBinary.test(str)) {\r\n base = 2;\r\n } else if (isOctal.test(str)) {\r\n base = 8;\r\n } else {\r\n throw Error(invalidArgument + str);\r\n }\r\n\r\n // Is there a binary exponent part?\r\n i = str.search(/p/i);\r\n\r\n if (i > 0) {\r\n p = +str.slice(i + 1);\r\n str = str.substring(2, i);\r\n } else {\r\n str = str.slice(2);\r\n }\r\n\r\n // Convert `str` as an integer then divide the result by `base` raised to a power such that the\r\n // fraction part will be restored.\r\n i = str.indexOf('.');\r\n isFloat = i >= 0;\r\n Ctor = x.constructor;\r\n\r\n if (isFloat) {\r\n str = str.replace('.', '');\r\n len = str.length;\r\n i = len - i;\r\n\r\n // log[10](16) = 1.2041... , log[10](88) = 1.9444....\r\n divisor = intPow(Ctor, new Ctor(base), i, i * 2);\r\n }\r\n\r\n xd = convertBase(str, base, BASE);\r\n xe = xd.length - 1;\r\n\r\n // Remove trailing zeros.\r\n for (i = xe; xd[i] === 0; --i) xd.pop();\r\n if (i < 0) return new Ctor(x.s * 0);\r\n x.e = getBase10Exponent(xd, xe);\r\n x.d = xd;\r\n external = false;\r\n\r\n // At what precision to perform the division to ensure exact conversion?\r\n // maxDecimalIntegerPartDigitCount = ceil(log[10](b) * otherBaseIntegerPartDigitCount)\r\n // log[10](2) = 0.30103, log[10](8) = 0.90309, log[10](16) = 1.20412\r\n // E.g. ceil(1.2 * 3) = 4, so up to 4 decimal digits are needed to represent 3 hex int digits.\r\n // maxDecimalFractionPartDigitCount = {Hex:4|Oct:3|Bin:1} * otherBaseFractionPartDigitCount\r\n // Therefore using 4 * the number of digits of str will always be enough.\r\n if (isFloat) x = divide(x, divisor, len * 4);\r\n\r\n // Multiply by the binary exponent part if present.\r\n if (p) x = x.times(Math.abs(p) < 54 ? mathpow(2, p) : Decimal.pow(2, p));\r\n external = true;\r\n\r\n return x;\r\n }\r\n\r\n\r\n /*\r\n * sin(x) = x - x^3/3! + x^5/5! - ...\r\n * |x| < pi/2\r\n *\r\n */\r\n function sine(Ctor, x) {\r\n var k,\r\n len = x.d.length;\r\n\r\n if (len < 3) {\r\n return x.isZero() ? x : taylorSeries(Ctor, 2, x, x);\r\n }\r\n\r\n // Argument reduction: sin(5x) = 16*sin^5(x) - 20*sin^3(x) + 5*sin(x)\r\n // i.e. sin(x) = 16*sin^5(x/5) - 20*sin^3(x/5) + 5*sin(x/5)\r\n // and sin(x) = sin(x/5)(5 + sin^2(x/5)(16sin^2(x/5) - 20))\r\n\r\n // Estimate the optimum number of times to use the argument reduction.\r\n k = 1.4 * Math.sqrt(len);\r\n k = k > 16 ? 16 : k | 0;\r\n\r\n x = x.times(1 / tinyPow(5, k));\r\n x = taylorSeries(Ctor, 2, x, x);\r\n\r\n // Reverse argument reduction\r\n var sin2_x,\r\n d5 = new Ctor(5),\r\n d16 = new Ctor(16),\r\n d20 = new Ctor(20);\r\n for (; k--;) {\r\n sin2_x = x.times(x);\r\n x = x.times(d5.plus(sin2_x.times(d16.times(sin2_x).minus(d20))));\r\n }\r\n\r\n return x;\r\n }\r\n\r\n\r\n // Calculate Taylor series for `cos`, `cosh`, `sin` and `sinh`.\r\n function taylorSeries(Ctor, n, x, y, isHyperbolic) {\r\n var j, t, u, x2,\r\n i = 1,\r\n pr = Ctor.precision,\r\n k = Math.ceil(pr / LOG_BASE);\r\n\r\n external = false;\r\n x2 = x.times(x);\r\n u = new Ctor(y);\r\n\r\n for (;;) {\r\n t = divide(u.times(x2), new Ctor(n++ * n++), pr, 1);\r\n u = isHyperbolic ? y.plus(t) : y.minus(t);\r\n y = divide(t.times(x2), new Ctor(n++ * n++), pr, 1);\r\n t = u.plus(y);\r\n\r\n if (t.d[k] !== void 0) {\r\n for (j = k; t.d[j] === u.d[j] && j--;);\r\n if (j == -1) break;\r\n }\r\n\r\n j = u;\r\n u = y;\r\n y = t;\r\n t = j;\r\n i++;\r\n }\r\n\r\n external = true;\r\n t.d.length = k + 1;\r\n\r\n return t;\r\n }\r\n\r\n\r\n // Exponent e must be positive and non-zero.\r\n function tinyPow(b, e) {\r\n var n = b;\r\n while (--e) n *= b;\r\n return n;\r\n }\r\n\r\n\r\n // Return the absolute value of `x` reduced to less than or equal to half pi.\r\n function toLessThanHalfPi(Ctor, x) {\r\n var t,\r\n isNeg = x.s < 0,\r\n pi = getPi(Ctor, Ctor.precision, 1),\r\n halfPi = pi.times(0.5);\r\n\r\n x = x.abs();\r\n\r\n if (x.lte(halfPi)) {\r\n quadrant = isNeg ? 4 : 1;\r\n return x;\r\n }\r\n\r\n t = x.divToInt(pi);\r\n\r\n if (t.isZero()) {\r\n quadrant = isNeg ? 3 : 2;\r\n } else {\r\n x = x.minus(t.times(pi));\r\n\r\n // 0 <= x < pi\r\n if (x.lte(halfPi)) {\r\n quadrant = isOdd(t) ? (isNeg ? 2 : 3) : (isNeg ? 4 : 1);\r\n return x;\r\n }\r\n\r\n quadrant = isOdd(t) ? (isNeg ? 1 : 4) : (isNeg ? 3 : 2);\r\n }\r\n\r\n return x.minus(pi).abs();\r\n }\r\n\r\n\r\n /*\r\n * Return the value of Decimal `x` as a string in base `baseOut`.\r\n *\r\n * If the optional `sd` argument is present include a binary exponent suffix.\r\n */\r\n function toStringBinary(x, baseOut, sd, rm) {\r\n var base, e, i, k, len, roundUp, str, xd, y,\r\n Ctor = x.constructor,\r\n isExp = sd !== void 0;\r\n\r\n if (isExp) {\r\n checkInt32(sd, 1, MAX_DIGITS);\r\n if (rm === void 0) rm = Ctor.rounding;\r\n else checkInt32(rm, 0, 8);\r\n } else {\r\n sd = Ctor.precision;\r\n rm = Ctor.rounding;\r\n }\r\n\r\n if (!x.isFinite()) {\r\n str = nonFiniteToString(x);\r\n } else {\r\n str = finiteToString(x);\r\n i = str.indexOf('.');\r\n\r\n // Use exponential notation according to `toExpPos` and `toExpNeg`? No, but if required:\r\n // maxBinaryExponent = floor((decimalExponent + 1) * log[2](10))\r\n // minBinaryExponent = floor(decimalExponent * log[2](10))\r\n // log[2](10) = 3.321928094887362347870319429489390175864\r\n\r\n if (isExp) {\r\n base = 2;\r\n if (baseOut == 16) {\r\n sd = sd * 4 - 3;\r\n } else if (baseOut == 8) {\r\n sd = sd * 3 - 2;\r\n }\r\n } else {\r\n base = baseOut;\r\n }\r\n\r\n // Convert the number as an integer then divide the result by its base raised to a power such\r\n // that the fraction part will be restored.\r\n\r\n // Non-integer.\r\n if (i >= 0) {\r\n str = str.replace('.', '');\r\n y = new Ctor(1);\r\n y.e = str.length - i;\r\n y.d = convertBase(finiteToString(y), 10, base);\r\n y.e = y.d.length;\r\n }\r\n\r\n xd = convertBase(str, 10, base);\r\n e = len = xd.length;\r\n\r\n // Remove trailing zeros.\r\n for (; xd[--len] == 0;) xd.pop();\r\n\r\n if (!xd[0]) {\r\n str = isExp ? '0p+0' : '0';\r\n } else {\r\n if (i < 0) {\r\n e--;\r\n } else {\r\n x = new Ctor(x);\r\n x.d = xd;\r\n x.e = e;\r\n x = divide(x, y, sd, rm, 0, base);\r\n xd = x.d;\r\n e = x.e;\r\n roundUp = inexact;\r\n }\r\n\r\n // The rounding digit, i.e. the digit after the digit that may be rounded up.\r\n i = xd[sd];\r\n k = base / 2;\r\n roundUp = roundUp || xd[sd + 1] !== void 0;\r\n\r\n roundUp = rm < 4\r\n ? (i !== void 0 || roundUp) && (rm === 0 || rm === (x.s < 0 ? 3 : 2))\r\n : i > k || i === k && (rm === 4 || roundUp || rm === 6 && xd[sd - 1] & 1 ||\r\n rm === (x.s < 0 ? 8 : 7));\r\n\r\n xd.length = sd;\r\n\r\n if (roundUp) {\r\n\r\n // Rounding up may mean the previous digit has to be rounded up and so on.\r\n for (; ++xd[--sd] > base - 1;) {\r\n xd[sd] = 0;\r\n if (!sd) {\r\n ++e;\r\n xd.unshift(1);\r\n }\r\n }\r\n }\r\n\r\n // Determine trailing zeros.\r\n for (len = xd.length; !xd[len - 1]; --len);\r\n\r\n // E.g. [4, 11, 15] becomes 4bf.\r\n for (i = 0, str = ''; i < len; i++) str += NUMERALS.charAt(xd[i]);\r\n\r\n // Add binary exponent suffix?\r\n if (isExp) {\r\n if (len > 1) {\r\n if (baseOut == 16 || baseOut == 8) {\r\n i = baseOut == 16 ? 4 : 3;\r\n for (--len; len % i; len++) str += '0';\r\n xd = convertBase(str, base, baseOut);\r\n for (len = xd.length; !xd[len - 1]; --len);\r\n\r\n // xd[0] will always be be 1\r\n for (i = 1, str = '1.'; i < len; i++) str += NUMERALS.charAt(xd[i]);\r\n } else {\r\n str = str.charAt(0) + '.' + str.slice(1);\r\n }\r\n }\r\n\r\n str = str + (e < 0 ? 'p' : 'p+') + e;\r\n } else if (e < 0) {\r\n for (; ++e;) str = '0' + str;\r\n str = '0.' + str;\r\n } else {\r\n if (++e > len) for (e -= len; e-- ;) str += '0';\r\n else if (e < len) str = str.slice(0, e) + '.' + str.slice(e);\r\n }\r\n }\r\n\r\n str = (baseOut == 16 ? '0x' : baseOut == 2 ? '0b' : baseOut == 8 ? '0o' : '') + str;\r\n }\r\n\r\n return x.s < 0 ? '-' + str : str;\r\n }\r\n\r\n\r\n // Does not strip trailing zeros.\r\n function truncate(arr, len) {\r\n if (arr.length > len) {\r\n arr.length = len;\r\n return true;\r\n }\r\n }\r\n\r\n\r\n // Decimal methods\r\n\r\n\r\n /*\r\n * abs\r\n * acos\r\n * acosh\r\n * add\r\n * asin\r\n * asinh\r\n * atan\r\n * atanh\r\n * atan2\r\n * cbrt\r\n * ceil\r\n * clamp\r\n * clone\r\n * config\r\n * cos\r\n * cosh\r\n * div\r\n * exp\r\n * floor\r\n * hypot\r\n * ln\r\n * log\r\n * log2\r\n * log10\r\n * max\r\n * min\r\n * mod\r\n * mul\r\n * pow\r\n * random\r\n * round\r\n * set\r\n * sign\r\n * sin\r\n * sinh\r\n * sqrt\r\n * sub\r\n * sum\r\n * tan\r\n * tanh\r\n * trunc\r\n */\r\n\r\n\r\n /*\r\n * Return a new Decimal whose value is the absolute value of `x`.\r\n *\r\n * x {number|string|Decimal}\r\n *\r\n */\r\n function abs(x) {\r\n return new this(x).abs();\r\n }\r\n\r\n\r\n /*\r\n * Return a new Decimal whose value is the arccosine in radians of `x`.\r\n *\r\n * x {number|string|Decimal}\r\n *\r\n */\r\n function acos(x) {\r\n return new this(x).acos();\r\n }\r\n\r\n\r\n /*\r\n * Return a new Decimal whose value is the inverse of the hyperbolic cosine of `x`, rounded to\r\n * `precision` significant digits using rounding mode `rounding`.\r\n *\r\n * x {number|string|Decimal} A value in radians.\r\n *\r\n */\r\n function acosh(x) {\r\n return new this(x).acosh();\r\n }\r\n\r\n\r\n /*\r\n * Return a new Decimal whose value is the sum of `x` and `y`, rounded to `precision` significant\r\n * digits using rounding mode `rounding`.\r\n *\r\n * x {number|string|Decimal}\r\n * y {number|string|Decimal}\r\n *\r\n */\r\n function add(x, y) {\r\n return new this(x).plus(y);\r\n }\r\n\r\n\r\n /*\r\n * Return a new Decimal whose value is the arcsine in radians of `x`, rounded to `precision`\r\n * significant digits using rounding mode `rounding`.\r\n *\r\n * x {number|string|Decimal}\r\n *\r\n */\r\n function asin(x) {\r\n return new this(x).asin();\r\n }\r\n\r\n\r\n /*\r\n * Return a new Decimal whose value is the inverse of the hyperbolic sine of `x`, rounded to\r\n * `precision` significant digits using rounding mode `rounding`.\r\n *\r\n * x {number|string|Decimal} A value in radians.\r\n *\r\n */\r\n function asinh(x) {\r\n return new this(x).asinh();\r\n }\r\n\r\n\r\n /*\r\n * Return a new Decimal whose value is the arctangent in radians of `x`, rounded to `precision`\r\n * significant digits using rounding mode `rounding`.\r\n *\r\n * x {number|string|Decimal}\r\n *\r\n */\r\n function atan(x) {\r\n return new this(x).atan();\r\n }\r\n\r\n\r\n /*\r\n * Return a new Decimal whose value is the inverse of the hyperbolic tangent of `x`, rounded to\r\n * `precision` significant digits using rounding mode `rounding`.\r\n *\r\n * x {number|string|Decimal} A value in radians.\r\n *\r\n */\r\n function atanh(x) {\r\n return new this(x).atanh();\r\n }\r\n\r\n\r\n /*\r\n * Return a new Decimal whose value is the arctangent in radians of `y/x` in the range -pi to pi\r\n * (inclusive), rounded to `precision` significant digits using rounding mode `rounding`.\r\n *\r\n * Domain: [-Infinity, Infinity]\r\n * Range: [-pi, pi]\r\n *\r\n * y {number|string|Decimal} The y-coordinate.\r\n * x {number|string|Decimal} The x-coordinate.\r\n *\r\n * atan2(±0, -0) = ±pi\r\n * atan2(±0, +0) = ±0\r\n * atan2(±0, -x) = ±pi for x > 0\r\n * atan2(±0, x) = ±0 for x > 0\r\n * atan2(-y, ±0) = -pi/2 for y > 0\r\n * atan2(y, ±0) = pi/2 for y > 0\r\n * atan2(±y, -Infinity) = ±pi for finite y > 0\r\n * atan2(±y, +Infinity) = ±0 for finite y > 0\r\n * atan2(±Infinity, x) = ±pi/2 for finite x\r\n * atan2(±Infinity, -Infinity) = ±3*pi/4\r\n * atan2(±Infinity, +Infinity) = ±pi/4\r\n * atan2(NaN, x) = NaN\r\n * atan2(y, NaN) = NaN\r\n *\r\n */\r\n function atan2(y, x) {\r\n y = new this(y);\r\n x = new this(x);\r\n var r,\r\n pr = this.precision,\r\n rm = this.rounding,\r\n wpr = pr + 4;\r\n\r\n // Either NaN\r\n if (!y.s || !x.s) {\r\n r = new this(NaN);\r\n\r\n // Both ±Infinity\r\n } else if (!y.d && !x.d) {\r\n r = getPi(this, wpr, 1).times(x.s > 0 ? 0.25 : 0.75);\r\n r.s = y.s;\r\n\r\n // x is ±Infinity or y is ±0\r\n } else if (!x.d || y.isZero()) {\r\n r = x.s < 0 ? getPi(this, pr, rm) : new this(0);\r\n r.s = y.s;\r\n\r\n // y is ±Infinity or x is ±0\r\n } else if (!y.d || x.isZero()) {\r\n r = getPi(this, wpr, 1).times(0.5);\r\n r.s = y.s;\r\n\r\n // Both non-zero and finite\r\n } else if (x.s < 0) {\r\n this.precision = wpr;\r\n this.rounding = 1;\r\n r = this.atan(divide(y, x, wpr, 1));\r\n x = getPi(this, wpr, 1);\r\n this.precision = pr;\r\n this.rounding = rm;\r\n r = y.s < 0 ? r.minus(x) : r.plus(x);\r\n } else {\r\n r = this.atan(divide(y, x, wpr, 1));\r\n }\r\n\r\n return r;\r\n }\r\n\r\n\r\n /*\r\n * Return a new Decimal whose value is the cube root of `x`, rounded to `precision` significant\r\n * digits using rounding mode `rounding`.\r\n *\r\n * x {number|string|Decimal}\r\n *\r\n */\r\n function cbrt(x) {\r\n return new this(x).cbrt();\r\n }\r\n\r\n\r\n /*\r\n * Return a new Decimal whose value is `x` rounded to an integer using `ROUND_CEIL`.\r\n *\r\n * x {number|string|Decimal}\r\n *\r\n */\r\n function ceil(x) {\r\n return finalise(x = new this(x), x.e + 1, 2);\r\n }\r\n\r\n\r\n /*\r\n * Return a new Decimal whose value is `x` clamped to the range delineated by `min` and `max`.\r\n *\r\n * x {number|string|Decimal}\r\n * min {number|string|Decimal}\r\n * max {number|string|Decimal}\r\n *\r\n */\r\n function clamp(x, min, max) {\r\n return new this(x).clamp(min, max);\r\n }\r\n\r\n\r\n /*\r\n * Configure global settings for a Decimal constructor.\r\n *\r\n * `obj` is an object with one or more of the following properties,\r\n *\r\n * precision {number}\r\n * rounding {number}\r\n * toExpNeg {number}\r\n * toExpPos {number}\r\n * maxE {number}\r\n * minE {number}\r\n * modulo {number}\r\n * crypto {boolean|number}\r\n * defaults {true}\r\n *\r\n * E.g. Decimal.config({ precision: 20, rounding: 4 })\r\n *\r\n */\r\n function config(obj) {\r\n if (!obj || typeof obj !== 'object') throw Error(decimalError + 'Object expected');\r\n var i, p, v,\r\n useDefaults = obj.defaults === true,\r\n ps = [\r\n 'precision', 1, MAX_DIGITS,\r\n 'rounding', 0, 8,\r\n 'toExpNeg', -EXP_LIMIT, 0,\r\n 'toExpPos', 0, EXP_LIMIT,\r\n 'maxE', 0, EXP_LIMIT,\r\n 'minE', -EXP_LIMIT, 0,\r\n 'modulo', 0, 9\r\n ];\r\n\r\n for (i = 0; i < ps.length; i += 3) {\r\n if (p = ps[i], useDefaults) this[p] = DEFAULTS[p];\r\n if ((v = obj[p]) !== void 0) {\r\n if (mathfloor(v) === v && v >= ps[i + 1] && v <= ps[i + 2]) this[p] = v;\r\n else throw Error(invalidArgument + p + ': ' + v);\r\n }\r\n }\r\n\r\n if (p = 'crypto', useDefaults) this[p] = DEFAULTS[p];\r\n if ((v = obj[p]) !== void 0) {\r\n if (v === true || v === false || v === 0 || v === 1) {\r\n if (v) {\r\n if (typeof crypto != 'undefined' && crypto &&\r\n (crypto.getRandomValues || crypto.randomBytes)) {\r\n this[p] = true;\r\n } else {\r\n throw Error(cryptoUnavailable);\r\n }\r\n } else {\r\n this[p] = false;\r\n }\r\n } else {\r\n throw Error(invalidArgument + p + ': ' + v);\r\n }\r\n }\r\n\r\n return this;\r\n }\r\n\r\n\r\n /*\r\n * Return a new Decimal whose value is the cosine of `x`, rounded to `precision` significant\r\n * digits using rounding mode `rounding`.\r\n *\r\n * x {number|string|Decimal} A value in radians.\r\n *\r\n */\r\n function cos(x) {\r\n return new this(x).cos();\r\n }\r\n\r\n\r\n /*\r\n * Return a new Decimal whose value is the hyperbolic cosine of `x`, rounded to precision\r\n * significant digits using rounding mode `rounding`.\r\n *\r\n * x {number|string|Decimal} A value in radians.\r\n *\r\n */\r\n function cosh(x) {\r\n return new this(x).cosh();\r\n }\r\n\r\n\r\n /*\r\n * Create and return a Decimal constructor with the same configuration properties as this Decimal\r\n * constructor.\r\n *\r\n */\r\n function clone(obj) {\r\n var i, p, ps;\r\n\r\n /*\r\n * The Decimal constructor and exported function.\r\n * Return a new Decimal instance.\r\n *\r\n * v {number|string|Decimal} A numeric value.\r\n *\r\n */\r\n function Decimal(v) {\r\n var e, i, t,\r\n x = this;\r\n\r\n // Decimal called without new.\r\n if (!(x instanceof Decimal)) return new Decimal(v);\r\n\r\n // Retain a reference to this Decimal constructor, and shadow Decimal.prototype.constructor\r\n // which points to Object.\r\n x.constructor = Decimal;\r\n\r\n // Duplicate.\r\n if (isDecimalInstance(v)) {\r\n x.s = v.s;\r\n\r\n if (external) {\r\n if (!v.d || v.e > Decimal.maxE) {\r\n\r\n // Infinity.\r\n x.e = NaN;\r\n x.d = null;\r\n } else if (v.e < Decimal.minE) {\r\n\r\n // Zero.\r\n x.e = 0;\r\n x.d = [0];\r\n } else {\r\n x.e = v.e;\r\n x.d = v.d.slice();\r\n }\r\n } else {\r\n x.e = v.e;\r\n x.d = v.d ? v.d.slice() : v.d;\r\n }\r\n\r\n return;\r\n }\r\n\r\n t = typeof v;\r\n\r\n if (t === 'number') {\r\n if (v === 0) {\r\n x.s = 1 / v < 0 ? -1 : 1;\r\n x.e = 0;\r\n x.d = [0];\r\n return;\r\n }\r\n\r\n if (v < 0) {\r\n v = -v;\r\n x.s = -1;\r\n } else {\r\n x.s = 1;\r\n }\r\n\r\n // Fast path for small integers.\r\n if (v === ~~v && v < 1e7) {\r\n for (e = 0, i = v; i >= 10; i /= 10) e++;\r\n\r\n if (external) {\r\n if (e > Decimal.maxE) {\r\n x.e = NaN;\r\n x.d = null;\r\n } else if (e < Decimal.minE) {\r\n x.e = 0;\r\n x.d = [0];\r\n } else {\r\n x.e = e;\r\n x.d = [v];\r\n }\r\n } else {\r\n x.e = e;\r\n x.d = [v];\r\n }\r\n\r\n return;\r\n\r\n // Infinity, NaN.\r\n } else if (v * 0 !== 0) {\r\n if (!v) x.s = NaN;\r\n x.e = NaN;\r\n x.d = null;\r\n return;\r\n }\r\n\r\n return parseDecimal(x, v.toString());\r\n\r\n } else if (t !== 'string') {\r\n throw Error(invalidArgument + v);\r\n }\r\n\r\n // Minus sign?\r\n if ((i = v.charCodeAt(0)) === 45) {\r\n v = v.slice(1);\r\n x.s = -1;\r\n } else {\r\n // Plus sign?\r\n if (i === 43) v = v.slice(1);\r\n x.s = 1;\r\n }\r\n\r\n return isDecimal.test(v) ? parseDecimal(x, v) : parseOther(x, v);\r\n }\r\n\r\n Decimal.prototype = P;\r\n\r\n Decimal.ROUND_UP = 0;\r\n Decimal.ROUND_DOWN = 1;\r\n Decimal.ROUND_CEIL = 2;\r\n Decimal.ROUND_FLOOR = 3;\r\n Decimal.ROUND_HALF_UP = 4;\r\n Decimal.ROUND_HALF_DOWN = 5;\r\n Decimal.ROUND_HALF_EVEN = 6;\r\n Decimal.ROUND_HALF_CEIL = 7;\r\n Decimal.ROUND_HALF_FLOOR = 8;\r\n Decimal.EUCLID = 9;\r\n\r\n Decimal.config = Decimal.set = config;\r\n Decimal.clone = clone;\r\n Decimal.isDecimal = isDecimalInstance;\r\n\r\n Decimal.abs = abs;\r\n Decimal.acos = acos;\r\n Decimal.acosh = acosh; // ES6\r\n Decimal.add = add;\r\n Decimal.asin = asin;\r\n Decimal.asinh = asinh; // ES6\r\n Decimal.atan = atan;\r\n Decimal.atanh = atanh; // ES6\r\n Decimal.atan2 = atan2;\r\n Decimal.cbrt = cbrt; // ES6\r\n Decimal.ceil = ceil;\r\n Decimal.clamp = clamp;\r\n Decimal.cos = cos;\r\n Decimal.cosh = cosh; // ES6\r\n Decimal.div = div;\r\n Decimal.exp = exp;\r\n Decimal.floor = floor;\r\n Decimal.hypot = hypot; // ES6\r\n Decimal.ln = ln;\r\n Decimal.log = log;\r\n Decimal.log10 = log10; // ES6\r\n Decimal.log2 = log2; // ES6\r\n Decimal.max = max;\r\n Decimal.min = min;\r\n Decimal.mod = mod;\r\n Decimal.mul = mul;\r\n Decimal.pow = pow;\r\n Decimal.random = random;\r\n Decimal.round = round;\r\n Decimal.sign = sign; // ES6\r\n Decimal.sin = sin;\r\n Decimal.sinh = sinh; // ES6\r\n Decimal.sqrt = sqrt;\r\n Decimal.sub = sub;\r\n Decimal.sum = sum;\r\n Decimal.tan = tan;\r\n Decimal.tanh = tanh; // ES6\r\n Decimal.trunc = trunc; // ES6\r\n\r\n if (obj === void 0) obj = {};\r\n if (obj) {\r\n if (obj.defaults !== true) {\r\n ps = ['precision', 'rounding', 'toExpNeg', 'toExpPos', 'maxE', 'minE', 'modulo', 'crypto'];\r\n for (i = 0; i < ps.length;) if (!obj.hasOwnProperty(p = ps[i++])) obj[p] = this[p];\r\n }\r\n }\r\n\r\n Decimal.config(obj);\r\n\r\n return Decimal;\r\n }\r\n\r\n\r\n /*\r\n * Return a new Decimal whose value is `x` divided by `y`, rounded to `precision` significant\r\n * digits using rounding mode `rounding`.\r\n *\r\n * x {number|string|Decimal}\r\n * y {number|string|Decimal}\r\n *\r\n */\r\n function div(x, y) {\r\n return new this(x).div(y);\r\n }\r\n\r\n\r\n /*\r\n * Return a new Decimal whose value is the natural exponential of `x`, rounded to `precision`\r\n * significant digits using rounding mode `rounding`.\r\n *\r\n * x {number|string|Decimal} The power to which to raise the base of the natural log.\r\n *\r\n */\r\n function exp(x) {\r\n return new this(x).exp();\r\n }\r\n\r\n\r\n /*\r\n * Return a new Decimal whose value is `x` round to an integer using `ROUND_FLOOR`.\r\n *\r\n * x {number|string|Decimal}\r\n *\r\n */\r\n function floor(x) {\r\n return finalise(x = new this(x), x.e + 1, 3);\r\n }\r\n\r\n\r\n /*\r\n * Return a new Decimal whose value is the square root of the sum of the squares of the arguments,\r\n * rounded to `precision` significant digits using rounding mode `rounding`.\r\n *\r\n * hypot(a, b, ...) = sqrt(a^2 + b^2 + ...)\r\n *\r\n * arguments {number|string|Decimal}\r\n *\r\n */\r\n function hypot() {\r\n var i, n,\r\n t = new this(0);\r\n\r\n external = false;\r\n\r\n for (i = 0; i < arguments.length;) {\r\n n = new this(arguments[i++]);\r\n if (!n.d) {\r\n if (n.s) {\r\n external = true;\r\n return new this(1 / 0);\r\n }\r\n t = n;\r\n } else if (t.d) {\r\n t = t.plus(n.times(n));\r\n }\r\n }\r\n\r\n external = true;\r\n\r\n return t.sqrt();\r\n }\r\n\r\n\r\n /*\r\n * Return true if object is a Decimal instance (where Decimal is any Decimal constructor),\r\n * otherwise return false.\r\n *\r\n */\r\n function isDecimalInstance(obj) {\r\n return obj instanceof Decimal || obj && obj.toStringTag === tag || false;\r\n }\r\n\r\n\r\n /*\r\n * Return a new Decimal whose value is the natural logarithm of `x`, rounded to `precision`\r\n * significant digits using rounding mode `rounding`.\r\n *\r\n * x {number|string|Decimal}\r\n *\r\n */\r\n function ln(x) {\r\n return new this(x).ln();\r\n }\r\n\r\n\r\n /*\r\n * Return a new Decimal whose value is the log of `x` to the base `y`, or to base 10 if no base\r\n * is specified, rounded to `precision` significant digits using rounding mode `rounding`.\r\n *\r\n * log[y](x)\r\n *\r\n * x {number|string|Decimal} The argument of the logarithm.\r\n * y {number|string|Decimal} The base of the logarithm.\r\n *\r\n */\r\n function log(x, y) {\r\n return new this(x).log(y);\r\n }\r\n\r\n\r\n /*\r\n * Return a new Decimal whose value is the base 2 logarithm of `x`, rounded to `precision`\r\n * significant digits using rounding mode `rounding`.\r\n *\r\n * x {number|string|Decimal}\r\n *\r\n */\r\n function log2(x) {\r\n return new this(x).log(2);\r\n }\r\n\r\n\r\n /*\r\n * Return a new Decimal whose value is the base 10 logarithm of `x`, rounded to `precision`\r\n * significant digits using rounding mode `rounding`.\r\n *\r\n * x {number|string|Decimal}\r\n *\r\n */\r\n function log10(x) {\r\n return new this(x).log(10);\r\n }\r\n\r\n\r\n /*\r\n * Return a new Decimal whose value is the maximum of the arguments.\r\n *\r\n * arguments {number|string|Decimal}\r\n *\r\n */\r\n function max() {\r\n return maxOrMin(this, arguments, 'lt');\r\n }\r\n\r\n\r\n /*\r\n * Return a new Decimal whose value is the minimum of the arguments.\r\n *\r\n * arguments {number|string|Decimal}\r\n *\r\n */\r\n function min() {\r\n return maxOrMin(this, arguments, 'gt');\r\n }\r\n\r\n\r\n /*\r\n * Return a new Decimal whose value is `x` modulo `y`, rounded to `precision` significant digits\r\n * using rounding mode `rounding`.\r\n *\r\n * x {number|string|Decimal}\r\n * y {number|string|Decimal}\r\n *\r\n */\r\n function mod(x, y) {\r\n return new this(x).mod(y);\r\n }\r\n\r\n\r\n /*\r\n * Return a new Decimal whose value is `x` multiplied by `y`, rounded to `precision` significant\r\n * digits using rounding mode `rounding`.\r\n *\r\n * x {number|string|Decimal}\r\n * y {number|string|Decimal}\r\n *\r\n */\r\n function mul(x, y) {\r\n return new this(x).mul(y);\r\n }\r\n\r\n\r\n /*\r\n * Return a new Decimal whose value is `x` raised to the power `y`, rounded to precision\r\n * significant digits using rounding mode `rounding`.\r\n *\r\n * x {number|string|Decimal} The base.\r\n * y {number|string|Decimal} The exponent.\r\n *\r\n */\r\n function pow(x, y) {\r\n return new this(x).pow(y);\r\n }\r\n\r\n\r\n /*\r\n * Returns a new Decimal with a random value equal to or greater than 0 and less than 1, and with\r\n * `sd`, or `Decimal.precision` if `sd` is omitted, significant digits (or less if trailing zeros\r\n * are produced).\r\n *\r\n * [sd] {number} Significant digits. Integer, 0 to MAX_DIGITS inclusive.\r\n *\r\n */\r\n function random(sd) {\r\n var d, e, k, n,\r\n i = 0,\r\n r = new this(1),\r\n rd = [];\r\n\r\n if (sd === void 0) sd = this.precision;\r\n else checkInt32(sd, 1, MAX_DIGITS);\r\n\r\n k = Math.ceil(sd / LOG_BASE);\r\n\r\n if (!this.crypto) {\r\n for (; i < k;) rd[i++] = Math.random() * 1e7 | 0;\r\n\r\n // Browsers supporting crypto.getRandomValues.\r\n } else if (crypto.getRandomValues) {\r\n d = crypto.getRandomValues(new Uint32Array(k));\r\n\r\n for (; i < k;) {\r\n n = d[i];\r\n\r\n // 0 <= n < 4294967296\r\n // Probability n >= 4.29e9, is 4967296 / 4294967296 = 0.00116 (1 in 865).\r\n if (n >= 4.29e9) {\r\n d[i] = crypto.getRandomValues(new Uint32Array(1))[0];\r\n } else {\r\n\r\n // 0 <= n <= 4289999999\r\n // 0 <= (n % 1e7) <= 9999999\r\n rd[i++] = n % 1e7;\r\n }\r\n }\r\n\r\n // Node.js supporting crypto.randomBytes.\r\n } else if (crypto.randomBytes) {\r\n\r\n // buffer\r\n d = crypto.randomBytes(k *= 4);\r\n\r\n for (; i < k;) {\r\n\r\n // 0 <= n < 2147483648\r\n n = d[i] + (d[i + 1] << 8) + (d[i + 2] << 16) + ((d[i + 3] & 0x7f) << 24);\r\n\r\n // Probability n >= 2.14e9, is 7483648 / 2147483648 = 0.0035 (1 in 286).\r\n if (n >= 2.14e9) {\r\n crypto.randomBytes(4).copy(d, i);\r\n } else {\r\n\r\n // 0 <= n <= 2139999999\r\n // 0 <= (n % 1e7) <= 9999999\r\n rd.push(n % 1e7);\r\n i += 4;\r\n }\r\n }\r\n\r\n i = k / 4;\r\n } else {\r\n throw Error(cryptoUnavailable);\r\n }\r\n\r\n k = rd[--i];\r\n sd %= LOG_BASE;\r\n\r\n // Convert trailing digits to zeros according to sd.\r\n if (k && sd) {\r\n n = mathpow(10, LOG_BASE - sd);\r\n rd[i] = (k / n | 0) * n;\r\n }\r\n\r\n // Remove trailing words which are zero.\r\n for (; rd[i] === 0; i--) rd.pop();\r\n\r\n // Zero?\r\n if (i < 0) {\r\n e = 0;\r\n rd = [0];\r\n } else {\r\n e = -1;\r\n\r\n // Remove leading words which are zero and adjust exponent accordingly.\r\n for (; rd[0] === 0; e -= LOG_BASE) rd.shift();\r\n\r\n // Count the digits of the first word of rd to determine leading zeros.\r\n for (k = 1, n = rd[0]; n >= 10; n /= 10) k++;\r\n\r\n // Adjust the exponent for leading zeros of the first word of rd.\r\n if (k < LOG_BASE) e -= LOG_BASE - k;\r\n }\r\n\r\n r.e = e;\r\n r.d = rd;\r\n\r\n return r;\r\n }\r\n\r\n\r\n /*\r\n * Return a new Decimal whose value is `x` rounded to an integer using rounding mode `rounding`.\r\n *\r\n * To emulate `Math.round`, set rounding to 7 (ROUND_HALF_CEIL).\r\n *\r\n * x {number|string|Decimal}\r\n *\r\n */\r\n function round(x) {\r\n return finalise(x = new this(x), x.e + 1, this.rounding);\r\n }\r\n\r\n\r\n /*\r\n * Return\r\n * 1 if x > 0,\r\n * -1 if x < 0,\r\n * 0 if x is 0,\r\n * -0 if x is -0,\r\n * NaN otherwise\r\n *\r\n * x {number|string|Decimal}\r\n *\r\n */\r\n function sign(x) {\r\n x = new this(x);\r\n return x.d ? (x.d[0] ? x.s : 0 * x.s) : x.s || NaN;\r\n }\r\n\r\n\r\n /*\r\n * Return a new Decimal whose value is the sine of `x`, rounded to `precision` significant digits\r\n * using rounding mode `rounding`.\r\n *\r\n * x {number|string|Decimal} A value in radians.\r\n *\r\n */\r\n function sin(x) {\r\n return new this(x).sin();\r\n }\r\n\r\n\r\n /*\r\n * Return a new Decimal whose value is the hyperbolic sine of `x`, rounded to `precision`\r\n * significant digits using rounding mode `rounding`.\r\n *\r\n * x {number|string|Decimal} A value in radians.\r\n *\r\n */\r\n function sinh(x) {\r\n return new this(x).sinh();\r\n }\r\n\r\n\r\n /*\r\n * Return a new Decimal whose value is the square root of `x`, rounded to `precision` significant\r\n * digits using rounding mode `rounding`.\r\n *\r\n * x {number|string|Decimal}\r\n *\r\n */\r\n function sqrt(x) {\r\n return new this(x).sqrt();\r\n }\r\n\r\n\r\n /*\r\n * Return a new Decimal whose value is `x` minus `y`, rounded to `precision` significant digits\r\n * using rounding mode `rounding`.\r\n *\r\n * x {number|string|Decimal}\r\n * y {number|string|Decimal}\r\n *\r\n */\r\n function sub(x, y) {\r\n return new this(x).sub(y);\r\n }\r\n\r\n\r\n /*\r\n * Return a new Decimal whose value is the sum of the arguments, rounded to `precision`\r\n * significant digits using rounding mode `rounding`.\r\n *\r\n * Only the result is rounded, not the intermediate calculations.\r\n *\r\n * arguments {number|string|Decimal}\r\n *\r\n */\r\n function sum() {\r\n var i = 0,\r\n args = arguments,\r\n x = new this(args[i]);\r\n\r\n external = false;\r\n for (; x.s && ++i < args.length;) x = x.plus(args[i]);\r\n external = true;\r\n\r\n return finalise(x, this.precision, this.rounding);\r\n }\r\n\r\n\r\n /*\r\n * Return a new Decimal whose value is the tangent of `x`, rounded to `precision` significant\r\n * digits using rounding mode `rounding`.\r\n *\r\n * x {number|string|Decimal} A value in radians.\r\n *\r\n */\r\n function tan(x) {\r\n return new this(x).tan();\r\n }\r\n\r\n\r\n /*\r\n * Return a new Decimal whose value is the hyperbolic tangent of `x`, rounded to `precision`\r\n * significant digits using rounding mode `rounding`.\r\n *\r\n * x {number|string|Decimal} A value in radians.\r\n *\r\n */\r\n function tanh(x) {\r\n return new this(x).tanh();\r\n }\r\n\r\n\r\n /*\r\n * Return a new Decimal whose value is `x` truncated to an integer.\r\n *\r\n * x {number|string|Decimal}\r\n *\r\n */\r\n function trunc(x) {\r\n return finalise(x = new this(x), x.e + 1, 1);\r\n }\r\n\r\n\r\n // Create and configure initial Decimal constructor.\r\n Decimal = clone(DEFAULTS);\r\n Decimal.prototype.constructor = Decimal;\r\n Decimal['default'] = Decimal.Decimal = Decimal;\r\n\r\n // Create the internal constants from their string values.\r\n LN10 = new Decimal(LN10);\r\n PI = new Decimal(PI);\r\n\r\n\r\n // Export.\r\n\r\n\r\n // AMD.\r\n if (typeof define == 'function' && define.amd) {\r\n define(function () {\r\n return Decimal;\r\n });\r\n\r\n // Node and other environments that support module.exports.\r\n } else if (typeof module != 'undefined' && module.exports) {\r\n if (typeof Symbol == 'function' && typeof Symbol.iterator == 'symbol') {\r\n P[Symbol['for']('nodejs.util.inspect.custom')] = P.toString;\r\n P[Symbol.toStringTag] = 'Decimal';\r\n }\r\n\r\n module.exports = Decimal;\r\n\r\n // Browser.\r\n } else {\r\n if (!globalScope) {\r\n globalScope = typeof self != 'undefined' && self && self.self == self ? self : window;\r\n }\r\n\r\n noConflict = globalScope.Decimal;\r\n Decimal.noConflict = function () {\r\n globalScope.Decimal = noConflict;\r\n return Decimal;\r\n };\r\n\r\n globalScope.Decimal = Decimal;\r\n }\r\n})(this);\r\n","var global = require('../internals/global');\n\nmodule.exports = global;\n","var fails = require('../internals/fails');\nvar classof = require('../internals/classof-raw');\n\nvar split = ''.split;\n\n// fallback for non-array-like ES3 and non-enumerable old V8 strings\nmodule.exports = fails(function () {\n // throws an error in rhino, see https://github.com/mozilla/rhino/issues/346\n // eslint-disable-next-line no-prototype-builtins\n return !Object('z').propertyIsEnumerable(0);\n}) ? function (it) {\n return classof(it) == 'String' ? split.call(it, '') : Object(it);\n} : Object;\n","var render = function () {\n var _vm=this;\n var _h=_vm.$createElement;\n var _c=_vm._self._c||_h;\n\n return _c('b-row', {\n staticClass: \"m-0 mb-1\",\n class: {\n cssClass: _vm.cssClass\n }\n }, _vm._l(_vm.list, function (_ref, index) {\n var _class;\n var icon = _ref.icon,\n label = _ref.label,\n content = _ref.content,\n variant = _ref.variant,\n afterFixLabel = _ref.afterFixLabel,\n top = _ref.top;\n return _c('b-col', {\n key: index,\n staticClass: \"mb-2\",\n attrs: {\n \"md\": \"6\"\n }\n }, [_c('div', {\n staticClass: \"d-flex\",\n class: {\n ' align-items-center': !top,\n 'align-items-start': top\n }\n }, [_c('sidebar-label', {\n attrs: {\n \"title\": _vm.$t(label),\n \"icon\": (\"ezAr-icon-\" + icon)\n }\n }, [_c('div', {\n staticClass: \"d-flex\"\n }, [_c('label', {\n staticClass: \"font-weight-bold\",\n style: _vm.getStyleObject(index)\n }, [_vm._v(_vm._s(_vm.$t(label)) + \" \" + _vm._s(afterFixLabel) + \" \")]), _c('span', {\n staticClass: \"font-weight-bold mr-1\"\n }, [_vm._v(\":\")])])]), _c('span', {\n class: (_class = {}, _class[(\"text-\" + variant)] = variant, _class),\n staticStyle: {\n \"word-break\": \"break-word\",\n \"margin-top\": \"2px\"\n }\n }, [_vm._v(_vm._s(content))])], 1)]);\n }), 1);\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GeneralInfo.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./GeneralInfo.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./GeneralInfo.vue?vue&type=template&id=69d0e7b5&\"\nimport script from \"./GeneralInfo.vue?vue&type=script&lang=js&\"\nexport * from \"./GeneralInfo.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","var toIndexedObject = require('../internals/to-indexed-object');\nvar toLength = require('../internals/to-length');\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\n\n// `Array.prototype.{ indexOf, includes }` methods implementation\nvar createMethod = function (IS_INCLUDES) {\n return function ($this, el, fromIndex) {\n var O = toIndexedObject($this);\n var length = toLength(O.length);\n var index = toAbsoluteIndex(fromIndex, length);\n var value;\n // Array#includes uses SameValueZero equality algorithm\n // eslint-disable-next-line no-self-compare\n if (IS_INCLUDES && el != el) while (length > index) {\n value = O[index++];\n // eslint-disable-next-line no-self-compare\n if (value != value) return true;\n // Array#indexOf ignores holes, Array#includes - not\n } else for (;length > index; index++) {\n if ((IS_INCLUDES || index in O) && O[index] === el) return IS_INCLUDES || index || 0;\n } return !IS_INCLUDES && -1;\n };\n};\n\nmodule.exports = {\n // `Array.prototype.includes` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.includes\n includes: createMethod(true),\n // `Array.prototype.indexOf` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.indexof\n indexOf: createMethod(false)\n};\n","var toInteger = require('../internals/to-integer');\n\nvar min = Math.min;\n\n// `ToLength` abstract operation\n// https://tc39.github.io/ecma262/#sec-tolength\nmodule.exports = function (argument) {\n return argument > 0 ? min(toInteger(argument), 0x1FFFFFFFFFFFFF) : 0; // 2 ** 53 - 1 == 9007199254740991\n};\n","var hasOwnProperty = {}.hasOwnProperty;\n\nmodule.exports = function (it, key) {\n return hasOwnProperty.call(it, key);\n};\n","var IS_PURE = require('../internals/is-pure');\nvar store = require('../internals/shared-store');\n\n(module.exports = function (key, value) {\n return store[key] || (store[key] = value !== undefined ? value : {});\n})('versions', []).push({\n version: '3.8.1',\n mode: IS_PURE ? 'pure' : 'global',\n copyright: '© 2020 Denis Pushkarev (zloirock.ru)'\n});\n","var getBuiltIn = require('../internals/get-built-in');\nvar getOwnPropertyNamesModule = require('../internals/object-get-own-property-names');\nvar getOwnPropertySymbolsModule = require('../internals/object-get-own-property-symbols');\nvar anObject = require('../internals/an-object');\n\n// all object keys, includes non-enumerable and symbols\nmodule.exports = getBuiltIn('Reflect', 'ownKeys') || function ownKeys(it) {\n var keys = getOwnPropertyNamesModule.f(anObject(it));\n var getOwnPropertySymbols = getOwnPropertySymbolsModule.f;\n return getOwnPropertySymbols ? keys.concat(getOwnPropertySymbols(it)) : keys;\n};\n","module.exports = function (bitmap, value) {\n return {\n enumerable: !(bitmap & 1),\n configurable: !(bitmap & 2),\n writable: !(bitmap & 4),\n value: value\n };\n};\n","var classof = require('../internals/classof-raw');\nvar global = require('../internals/global');\n\nmodule.exports = classof(global.process) == 'process';\n","var NATIVE_WEAK_MAP = require('../internals/native-weak-map');\nvar global = require('../internals/global');\nvar isObject = require('../internals/is-object');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar objectHas = require('../internals/has');\nvar shared = require('../internals/shared-store');\nvar sharedKey = require('../internals/shared-key');\nvar hiddenKeys = require('../internals/hidden-keys');\n\nvar WeakMap = global.WeakMap;\nvar set, get, has;\n\nvar enforce = function (it) {\n return has(it) ? get(it) : set(it, {});\n};\n\nvar getterFor = function (TYPE) {\n return function (it) {\n var state;\n if (!isObject(it) || (state = get(it)).type !== TYPE) {\n throw TypeError('Incompatible receiver, ' + TYPE + ' required');\n } return state;\n };\n};\n\nif (NATIVE_WEAK_MAP) {\n var store = shared.state || (shared.state = new WeakMap());\n var wmget = store.get;\n var wmhas = store.has;\n var wmset = store.set;\n set = function (it, metadata) {\n metadata.facade = it;\n wmset.call(store, it, metadata);\n return metadata;\n };\n get = function (it) {\n return wmget.call(store, it) || {};\n };\n has = function (it) {\n return wmhas.call(store, it);\n };\n} else {\n var STATE = sharedKey('state');\n hiddenKeys[STATE] = true;\n set = function (it, metadata) {\n metadata.facade = it;\n createNonEnumerableProperty(it, STATE, metadata);\n return metadata;\n };\n get = function (it) {\n return objectHas(it, STATE) ? it[STATE] : {};\n };\n has = function (it) {\n return objectHas(it, STATE);\n };\n}\n\nmodule.exports = {\n set: set,\n get: get,\n has: has,\n enforce: enforce,\n getterFor: getterFor\n};\n","var global = require('../internals/global');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar has = require('../internals/has');\nvar setGlobal = require('../internals/set-global');\nvar inspectSource = require('../internals/inspect-source');\nvar InternalStateModule = require('../internals/internal-state');\n\nvar getInternalState = InternalStateModule.get;\nvar enforceInternalState = InternalStateModule.enforce;\nvar TEMPLATE = String(String).split('String');\n\n(module.exports = function (O, key, value, options) {\n var unsafe = options ? !!options.unsafe : false;\n var simple = options ? !!options.enumerable : false;\n var noTargetGet = options ? !!options.noTargetGet : false;\n var state;\n if (typeof value == 'function') {\n if (typeof key == 'string' && !has(value, 'name')) {\n createNonEnumerableProperty(value, 'name', key);\n }\n state = enforceInternalState(value);\n if (!state.source) {\n state.source = TEMPLATE.join(typeof key == 'string' ? key : '');\n }\n }\n if (O === global) {\n if (simple) O[key] = value;\n else setGlobal(key, value);\n return;\n } else if (!unsafe) {\n delete O[key];\n } else if (!noTargetGet && O[key]) {\n simple = true;\n }\n if (simple) O[key] = value;\n else createNonEnumerableProperty(O, key, value);\n// add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative\n})(Function.prototype, 'toString', function toString() {\n return typeof this == 'function' && getInternalState(this).source || inspectSource(this);\n});\n","export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PaymentForDistribution.vue?vue&type=style&index=0&id=51986843&prod&lang=scss&\"","var render = function () {\n var _vm=this;\n var _h=_vm.$createElement;\n var _c=_vm._self._c||_h;\n\n return _c('section', {\n staticClass: \"sidebar-section detail-sidebar\",\n attrs: {\n \"id\": \"\"\n }\n }, [_c('b-sidebar', {\n style: _vm.style,\n attrs: {\n \"bg-variant\": \"white\",\n \"right\": \"\",\n \"backdrop\": \"\",\n \"shadow\": \"\",\n \"no-header\": \"\",\n \"width\": _vm.width || '60%'\n },\n on: {\n \"hidden\": function () {\n _vm.$emit('update:isShow', false);\n _vm.$emit('close');\n }\n },\n model: {\n value: _vm.isShow,\n callback: function ($$v) {\n _vm.isShow = $$v;\n },\n expression: \"isShow\"\n }\n }, [_c('div', {\n staticClass: \"sidebar-section__header d-flex\"\n }, [_c('div', {\n staticClass: \"sidebar-section__header--title w-50\"\n }, [_c('h4', {\n staticClass: \"mb-0 p-1 text-primary text-truncate\"\n }, [_vm._v(\" \" + _vm._s(_vm.title ? _vm.$t(_vm.title) : 'Detail') + \" \")])]), _c('div', {\n staticClass: \"sidebar-section__header--icon w-50 d-flex align-items-center justify-content-end\"\n }, [_c('ez-icon', {\n staticClass: \"cursor-pointer mx-50\",\n attrs: {\n \"icon\": \"ezAr-icon-x\",\n \"size\": \"24\",\n \"color\": \"#114A9F\"\n },\n on: {\n \"click\": function ($event) {\n return _vm.$emit('update:isShow', false);\n }\n }\n })], 1)]), _vm._t(\"default\")], 2)], 1);\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SidebarSection.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SidebarSection.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./SidebarSection.vue?vue&type=template&id=0d27f012&\"\nimport script from \"./SidebarSection.vue?vue&type=script&lang=js&\"\nexport * from \"./SidebarSection.vue?vue&type=script&lang=js&\"\nimport style0 from \"./SidebarSection.vue?vue&type=style&index=0&id=0d27f012&prod&lang=scss&\"\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","exports.f = Object.getOwnPropertySymbols;\n","// IE8- don't enum bug keys\nmodule.exports = [\n 'constructor',\n 'hasOwnProperty',\n 'isPrototypeOf',\n 'propertyIsEnumerable',\n 'toLocaleString',\n 'toString',\n 'valueOf'\n];\n","var render = function () {\n var _vm=this;\n var _h=_vm.$createElement;\n var _c=_vm._self._c||_h;\n\n return _c('Fragment', [_c('b-button', {\n class: _vm.className,\n attrs: {\n \"variant\": _vm.variant,\n \"disabled\": _vm.isLoading\n },\n on: {\n \"click\": function ($event) {\n return _vm.$emit('click');\n }\n }\n }, [_vm.isLoading ? _c('b-spinner', {\n attrs: {\n \"small\": \"\"\n }\n }) : _vm._e(), _vm._t(\"default\")], 2)], 1);\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LoadingButton.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LoadingButton.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./LoadingButton.vue?vue&type=template&id=7a152aa1&\"\nimport script from \"./LoadingButton.vue?vue&type=script&lang=js&\"\nexport * from \"./LoadingButton.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","var requireObjectCoercible = require('../internals/require-object-coercible');\n\n// `ToObject` abstract operation\n// https://tc39.github.io/ecma262/#sec-toobject\nmodule.exports = function (argument) {\n return Object(requireObjectCoercible(argument));\n};\n","var render = function () {\n var _vm=this;\n var _h=_vm.$createElement;\n var _c=_vm._self._c||_h;\n\n return _c('b-modal', {\n attrs: {\n \"id\": \"modal-danger\",\n \"ok-variant\": \"danger\",\n \"cancel-variant\": \"outline-secondary\",\n \"cancel-title\": _vm.$t('ar_client_back'),\n \"ok-title\": _vm.$t('ar_client_confirm'),\n \"modal-class\": \"modal-danger\",\n \"centered\": \"\",\n \"size\": \"xs\",\n \"title\": _vm.ob.title\n },\n on: {\n \"ok\": _vm.deleteItem,\n \"hidden\": _vm.resetModal\n },\n model: {\n value: _vm.deleteDialog,\n callback: function ($$v) {\n _vm.deleteDialog = $$v;\n },\n expression: \"deleteDialog\"\n }\n }, [_c('b-card-text', [_c('div', {\n staticStyle: {\n \"padding\": \"20px 16px\"\n }\n }, [_vm._v(\" \" + _vm._s(_vm.ob.content))])])], 1);\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DeleteDialog.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DeleteDialog.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./DeleteDialog.vue?vue&type=template&id=738dcb84&\"\nimport script from \"./DeleteDialog.vue?vue&type=script&lang=js&\"\nexport * from \"./DeleteDialog.vue?vue&type=script&lang=js&\"\nimport style0 from \"./DeleteDialog.vue?vue&type=style&index=0&id=738dcb84&prod&lang=scss&\"\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","var global = require('../internals/global');\nvar inspectSource = require('../internals/inspect-source');\n\nvar WeakMap = global.WeakMap;\n\nmodule.exports = typeof WeakMap === 'function' && /native code/.test(inspectSource(WeakMap));\n","var isObject = require('../internals/is-object');\n\nmodule.exports = function (it) {\n if (!isObject(it)) {\n throw TypeError(String(it) + ' is not an object');\n } return it;\n};\n","var fails = require('../internals/fails');\n\n// Thank's IE8 for his funny defineProperty\nmodule.exports = !fails(function () {\n return Object.defineProperty({}, 1, { get: function () { return 7; } })[1] != 7;\n});\n","var render = function () {\n var _vm=this;\n var _h=_vm.$createElement;\n var _c=_vm._self._c||_h;\n\n return _c('Treeselect', {\n class: {\n invalid: _vm.errors.length > 0\n },\n attrs: {\n \"disabled\": _vm.disabled,\n \"options\": _vm.options,\n \"clearable\": !_vm.noClearable,\n \"default-expand-level\": 1,\n \"normalizer\": _vm.normalizer,\n \"placeholder\": _vm.$t(_vm.placeholder),\n \"noOptionsText\": _vm.$t('ar_client_no_data'),\n \"noResultsText\": _vm.$t('ar_client_no_data'),\n \"multiple\": _vm.multiple,\n \"limit-text\": _vm.fnCount,\n \"limit\": 1,\n \"clear-on-select\": false\n },\n on: {\n \"input\": function ($event) {\n _vm.$emit('change', _vm.options.find(function (opt) {\n return opt[_vm.customReduce || 'Id'] === _vm.currentValue;\n }));\n }\n },\n model: {\n value: _vm.currentValue,\n callback: function ($$v) {\n _vm.currentValue = $$v;\n },\n expression: \"currentValue\"\n }\n }, [_vm.multiple ? _c('template', {\n slot: \"before-list\"\n }, [_c('label', {\n staticClass: \"text-primary cursor-pointer\",\n staticStyle: {\n \"margin-left\": \"5px\"\n },\n on: {\n \"click\": _vm.onSelectAll\n }\n }, [_vm._v(\" \" + _vm._s(_vm.$t(\"ar_client_select_all\")) + \" \")])]) : _vm._e(), _vm.loading ? _c('treeselect-tip', {\n attrs: {\n \"slot\": \"after-list\",\n \"type\": \"loading\",\n \"icon\": \"loader\"\n },\n slot: \"after-list\"\n }, [_vm._v(_vm._s(_vm.$t(\"ar_client_loading\")) + \"...\")]) : _vm._e()], 2);\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./WidgetSelect.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./WidgetSelect.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./WidgetSelect.vue?vue&type=template&id=03efb084&\"\nimport script from \"./WidgetSelect.vue?vue&type=script&lang=js&\"\nexport * from \"./WidgetSelect.vue?vue&type=script&lang=js&\"\nimport style0 from \"./WidgetSelect.scss?vue&type=style&index=0&prod&lang=scss&\"\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","export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./EzTable.vue?vue&type=style&index=0&id=42aae762&prod&lang=scss&\"","module.exports = function (it) {\n return typeof it === 'object' ? it !== null : typeof it === 'function';\n};\n","var render = function () {\n var _vm=this;\n var _h=_vm.$createElement;\n var _c=_vm._self._c||_h;\n\n return _c('div', {\n staticClass: \"sidebar-label d-flex align-items-center\"\n }, [_c('div', {\n directives: [{\n name: \"b-tooltip\",\n rawName: \"v-b-tooltip.hover\",\n modifiers: {\n \"hover\": true\n }\n }],\n staticClass: \"sidebar-label__icon d-flex justify-content-center align-items-center\",\n attrs: {\n \"title\": _vm.title\n }\n }, [_c('ez-icon', {\n attrs: {\n \"icon\": _vm.icon,\n \"size\": \"14\"\n }\n })], 1), _c('span', {\n staticClass: \"sidebar-label__text\"\n }, [_vm._t(\"default\")], 2)]);\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SidebarLabel.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SidebarLabel.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./SidebarLabel.vue?vue&type=template&id=66f205bb&scoped=true&\"\nimport script from \"./SidebarLabel.vue?vue&type=script&lang=js&\"\nexport * from \"./SidebarLabel.vue?vue&type=script&lang=js&\"\nimport style0 from \"./SidebarLabel.vue?vue&type=style&index=0&id=66f205bb&prod&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 \"66f205bb\",\n null\n \n)\n\nexport default component.exports","var store = require('../internals/shared-store');\n\nvar functionToString = Function.toString;\n\n// this helper broken in `3.4.1-3.4.4`, so we can't use `shared` helper\nif (typeof store.inspectSource != 'function') {\n store.inspectSource = function (it) {\n return functionToString.call(it);\n };\n}\n\nmodule.exports = store.inspectSource;\n","import { reactive, toRefs, getCurrentInstance } from \"@vue/composition-api\";\n\nimport _ from \"lodash\";\n//@ts-ignore\nimport ToastificationContent from \"@core/components/toastification/ToastificationContent.vue\";\n\ntype TState = {\n isLoading: Boolean;\n isError: Boolean;\n errorCode: String;\n errorMessage: String;\n data: any;\n totalCount: number;\n};\ninterface IOptions {\n takeRawData?: boolean;\n validateFunction?: () => Promise<{ success: boolean }>;\n showLoading?: boolean;\n loadingMessage?: string;\n params?: { value: any };\n disableShowToastResCondition?: (params: { code: string; message: string }) => Boolean;\n disableSuccessMessage?: boolean;\n successMessage?: string;\n defaultData?: {} | [];\n nextFunction?: (data: any) => void;\n afterErrorFunction?: () => void;\n afterErrorOrTimeoutFunction?: {\n func: () => void;\n sec?: number;\n };\n afterTimeOutNextFunction?: {\n func: () => void;\n sec: number;\n };\n}\ntype Options = IOptions & {};\nexport const useFetch = (fetchDataRoot, options: Options = {}) => {\n /* if (getCurrentInstance() === null) throw \"Not using this hook inside function\"; */\n const vm = getCurrentInstance()?.proxy as any;\n if (!vm) throw \"Not using this hook inside function\";\n const state = reactive({\n isLoading: false,\n isError: false,\n errorCode: \"\",\n errorMessage: \"\",\n data: options.defaultData || null,\n totalCount: 0,\n });\n\n const { isLoading, isError, errorMessage, data, totalCount, errorCode } = toRefs(state);\n\n const fetchData = async (directParams?) => {\n let id = null;\n\n if (options.showLoading) {\n id = vm.$toast({\n component: ToastificationContent,\n props: {\n title: options.loadingMessage ? vm.$t(options.loadingMessage) : \"Đang lưu...\",\n icon: \"loading\",\n variant: \"secondary\",\n },\n });\n }\n\n isLoading.value = true;\n try {\n const res = await fetchDataRoot(directParams || options.params?.value);\n isLoading.value = false;\n vm.$toast.dismiss(id);\n if (res.Status !== \"200\") {\n console.log(options.afterErrorOrTimeoutFunction, \"run 811\");\n if (options.afterErrorOrTimeoutFunction) {\n const { func, sec } = options.afterErrorOrTimeoutFunction;\n\n setTimeout(() => {\n func();\n }, sec || 500);\n }\n if (options.afterErrorFunction) {\n options.afterErrorFunction();\n }\n const code = res.Messages[0]?.Code;\n const message = res.Messages[0]?.MessageText;\n errorCode.value = code;\n errorMessage.value = message;\n isError.value = true;\n\n if (\n !(\n options.disableShowToastResCondition &&\n options.disableShowToastResCondition({ code, message })\n )\n ) {\n vm.showResToast(res);\n }\n\n return;\n }\n isError.value = false;\n\n if (id !== null && !options.disableSuccessMessage) {\n vm.$toast({\n component: ToastificationContent,\n props: {\n title: vm.$t(options.successMessage) || \"Thành công\",\n icon: \"ezAr-icon-check\",\n variant: \"success\",\n },\n });\n }\n\n if (options.nextFunction) {\n options.nextFunction(res.Data);\n }\n if (options.afterErrorOrTimeoutFunction) {\n const { func, sec } = options.afterErrorOrTimeoutFunction;\n\n setTimeout(() => {\n func();\n }, sec || 500);\n }\n if (options.afterTimeOutNextFunction) {\n const { func, sec } = options.afterTimeOutNextFunction;\n\n _.debounce(func, sec || 500);\n }\n\n if (res.Data) {\n const keyConverted = Object.keys(res.Data);\n\n const isTableData = keyConverted.includes(\"TotalCount\");\n\n if (isTableData) {\n totalCount.value = res.Data.TotalCount;\n let tempData: any[] = [];\n const dataValues = Object.values(res.Data);\n dataValues.forEach((item) => {\n if (Array.isArray(item)) {\n tempData = item;\n }\n });\n\n if (options.takeRawData) {\n data.value = res.Data;\n return res.Data;\n }\n data.value = tempData;\n return tempData;\n } else {\n data.value = res.Data;\n return res.Data;\n }\n }\n\n return res;\n } catch (err) {\n // @ts-ignore\n vm.showToast(\"error\", err.message);\n }\n };\n\n return {\n isError,\n errorCode,\n isLoading,\n errorMessage,\n data,\n totalCount,\n fetchData,\n };\n};\n","export * from \"-!../../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ModalBoxAddBill.vue?vue&type=style&index=0&id=011518d8&prod&lang=scss&\"","var id = 0;\nvar postfix = Math.random();\n\nmodule.exports = function (key) {\n return 'Symbol(' + String(key === undefined ? '' : key) + ')_' + (++id + postfix).toString(36);\n};\n","var DESCRIPTORS = require('../internals/descriptors');\nvar definePropertyModule = require('../internals/object-define-property');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\n\nmodule.exports = DESCRIPTORS ? function (object, key, value) {\n return definePropertyModule.f(object, key, createPropertyDescriptor(1, value));\n} : function (object, key, value) {\n object[key] = value;\n return object;\n};\n","/*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh */\nexports.read = function (buffer, offset, isLE, mLen, nBytes) {\n var e, m\n var eLen = (nBytes * 8) - mLen - 1\n var eMax = (1 << eLen) - 1\n var eBias = eMax >> 1\n var nBits = -7\n var i = isLE ? (nBytes - 1) : 0\n var d = isLE ? -1 : 1\n var s = buffer[offset + i]\n\n i += d\n\n e = s & ((1 << (-nBits)) - 1)\n s >>= (-nBits)\n nBits += eLen\n for (; nBits > 0; e = (e * 256) + buffer[offset + i], i += d, nBits -= 8) {}\n\n m = e & ((1 << (-nBits)) - 1)\n e >>= (-nBits)\n nBits += mLen\n for (; nBits > 0; m = (m * 256) + buffer[offset + i], i += d, nBits -= 8) {}\n\n if (e === 0) {\n e = 1 - eBias\n } else if (e === eMax) {\n return m ? NaN : ((s ? -1 : 1) * Infinity)\n } else {\n m = m + Math.pow(2, mLen)\n e = e - eBias\n }\n return (s ? -1 : 1) * m * Math.pow(2, e - mLen)\n}\n\nexports.write = function (buffer, value, offset, isLE, mLen, nBytes) {\n var e, m, c\n var eLen = (nBytes * 8) - mLen - 1\n var eMax = (1 << eLen) - 1\n var eBias = eMax >> 1\n var rt = (mLen === 23 ? Math.pow(2, -24) - Math.pow(2, -77) : 0)\n var i = isLE ? 0 : (nBytes - 1)\n var d = isLE ? 1 : -1\n var s = value < 0 || (value === 0 && 1 / value < 0) ? 1 : 0\n\n value = Math.abs(value)\n\n if (isNaN(value) || value === Infinity) {\n m = isNaN(value) ? 1 : 0\n e = eMax\n } else {\n e = Math.floor(Math.log(value) / Math.LN2)\n if (value * (c = Math.pow(2, -e)) < 1) {\n e--\n c *= 2\n }\n if (e + eBias >= 1) {\n value += rt / c\n } else {\n value += rt * Math.pow(2, 1 - eBias)\n }\n if (value * c >= 2) {\n e++\n c /= 2\n }\n\n if (e + eBias >= eMax) {\n m = 0\n e = eMax\n } else if (e + eBias >= 1) {\n m = ((value * c) - 1) * Math.pow(2, mLen)\n e = e + eBias\n } else {\n m = value * Math.pow(2, eBias - 1) * Math.pow(2, mLen)\n e = 0\n }\n }\n\n for (; mLen >= 8; buffer[offset + i] = m & 0xff, i += d, m /= 256, mLen -= 8) {}\n\n e = (e << mLen) | m\n eLen += mLen\n for (; eLen > 0; buffer[offset + i] = e & 0xff, i += d, e /= 256, eLen -= 8) {}\n\n buffer[offset + i - d] |= s * 128\n}\n","var render = function () {\n var _vm=this;\n var _h=_vm.$createElement;\n var _c=_vm._self._c||_h;\n\n return _c('date-range-picker', {\n attrs: {\n \"clearable\": _vm.clearable,\n \"disabled\": _vm.disabled,\n \"max-date\": _vm.maxDate,\n \"controlContainerClass\": {\n disabled: _vm.disabled\n },\n \"single-date-picker\": _vm.isRange ? false : true,\n \"opens\": _vm.direction || 'right',\n \"ranges\": _vm.ranges || false,\n \"placeholder\": _vm.$t(_vm.placeholder),\n \"time-picker\": _vm.timePicker || false,\n \"time-picker-increment\": _vm.timePickerIncrement || 1,\n \"show-dropdowns\": _vm.showDropDowns || true,\n \"auto-apply\": _vm.isRange,\n \"locale-data\": _vm.isViLanguage ? {\n format: 'mm/dd/YYYY HH:mm',\n daysOfWeek: ['CN', 'T2', 'T3', 'T4', 'T5', 'T6', 'T7'],\n monthNames: ['Tháng 1', 'Tháng 2', 'Tháng 3', 'Tháng 4', 'Tháng 5', 'Tháng 6', 'Tháng 7', 'Tháng 8', 'Tháng 9', 'Tháng 10', 'Tháng 11', 'Tháng 12'],\n firstDay: 0\n } : undefined\n },\n model: {\n value: _vm.currentValue,\n callback: function ($$v) {\n _vm.currentValue = $$v;\n },\n expression: \"currentValue\"\n }\n });\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n","import mod from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./WidgetDatetime.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./WidgetDatetime.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./WidgetDatetime.vue?vue&type=template&id=439473e6&\"\nimport script from \"./WidgetDatetime.vue?vue&type=script&lang=js&\"\nexport * from \"./WidgetDatetime.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","var fails = require('../internals/fails');\n\nvar replacement = /#|\\.prototype\\./;\n\nvar isForced = function (feature, detection) {\n var value = data[normalize(feature)];\n return value == POLYFILL ? true\n : value == NATIVE ? false\n : typeof detection == 'function' ? fails(detection)\n : !!detection;\n};\n\nvar normalize = isForced.normalize = function (string) {\n return String(string).replace(replacement, '.').toLowerCase();\n};\n\nvar data = isForced.data = {};\nvar NATIVE = isForced.NATIVE = 'N';\nvar POLYFILL = isForced.POLYFILL = 'P';\n\nmodule.exports = isForced;\n","var DESCRIPTORS = require('../internals/descriptors');\nvar IE8_DOM_DEFINE = require('../internals/ie8-dom-define');\nvar anObject = require('../internals/an-object');\nvar toPrimitive = require('../internals/to-primitive');\n\nvar nativeDefineProperty = Object.defineProperty;\n\n// `Object.defineProperty` method\n// https://tc39.github.io/ecma262/#sec-object.defineproperty\nexports.f = DESCRIPTORS ? nativeDefineProperty : function defineProperty(O, P, Attributes) {\n anObject(O);\n P = toPrimitive(P, true);\n anObject(Attributes);\n if (IE8_DOM_DEFINE) try {\n return nativeDefineProperty(O, P, Attributes);\n } catch (error) { /* empty */ }\n if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported');\n if ('value' in Attributes) O[P] = Attributes.value;\n return O;\n};\n","'use strict';\nvar fails = require('../internals/fails');\n\nmodule.exports = function (METHOD_NAME, argument) {\n var method = [][METHOD_NAME];\n return !!method && fails(function () {\n // eslint-disable-next-line no-useless-call,no-throw-literal\n method.call(null, argument || function () { throw 1; }, 1);\n });\n};\n","var ceil = Math.ceil;\nvar floor = Math.floor;\n\n// `ToInteger` abstract operation\n// https://tc39.github.io/ecma262/#sec-tointeger\nmodule.exports = function (argument) {\n return isNaN(argument = +argument) ? 0 : (argument > 0 ? floor : ceil)(argument);\n};\n","var DESCRIPTORS = require('../internals/descriptors');\nvar fails = require('../internals/fails');\nvar has = require('../internals/has');\n\nvar defineProperty = Object.defineProperty;\nvar cache = {};\n\nvar thrower = function (it) { throw it; };\n\nmodule.exports = function (METHOD_NAME, options) {\n if (has(cache, METHOD_NAME)) return cache[METHOD_NAME];\n if (!options) options = {};\n var method = [][METHOD_NAME];\n var ACCESSORS = has(options, 'ACCESSORS') ? options.ACCESSORS : false;\n var argument0 = has(options, 0) ? options[0] : thrower;\n var argument1 = has(options, 1) ? options[1] : undefined;\n\n return cache[METHOD_NAME] = !!method && !fails(function () {\n if (ACCESSORS && !DESCRIPTORS) return true;\n var O = { length: -1 };\n\n if (ACCESSORS) defineProperty(O, 1, { enumerable: true, get: thrower });\n else O[1] = 1;\n\n method.call(O, argument0, argument1);\n });\n};\n","var render = function () {\n var _vm$selectionConfig, _vm$editingConfig, _vm$editingConfig2, _vm$actions, _vm$actions$filter;\n var _vm=this;\n var _h=_vm.$createElement;\n var _c=_vm._self._c||_h;\n\n return _c('b-overlay', {\n staticClass: \"dx-wrapper\",\n attrs: {\n \"show\": false,\n \"opacity\": 0.3,\n \"rounded\": \"sm\"\n }\n }, [_vm._l(_vm.actions, function (action, index) {\n return action.danger ? _c('delete-dialog', {\n key: index,\n ref: \"deleteDialog\",\n refInFor: true,\n attrs: {\n \"data-remove\": function (data) {\n return {\n title: _vm.$t('ar_common_confirm_delete'),\n content: action.dialogContent ? action.dialogContent(data) : _vm.$t('ar_common_are_you_sure_delete')\n };\n }\n },\n on: {\n \"deleteItem\": function (data) {\n return _vm.$emit((\"action-\" + (index + 1)), data);\n }\n }\n }) : _vm._e();\n }), _vm.customComponent ? _c(_vm.customComponent, {\n tag: \"component\"\n }) : _vm._e(), _c('DxDataGrid', {\n ref: \"dxDatagridRef\",\n staticStyle: {\n \"max-height\": \"500px\"\n },\n attrs: {\n \"hover-state-enabled\": true,\n \"remote-operations\": true,\n \"noDataText\": _vm.$t('ar_common_no_data'),\n \"word-wrap-enabled\": true,\n \"column-resizing-mode\": _vm.columnResizingMode,\n \"data-source\": _vm.rawDataSource,\n \"show-column-lines\": true,\n \"show-row-lines\": true,\n \"show-borders\": true\n },\n on: {\n \"contentReady\": _vm.onContentReady,\n \"editor-preparing\": _vm.onEditorPreparing,\n \"option-changed\": _vm.handlePropertyChange,\n \"selection-changed\": function ($event) {\n return _vm.$emit('selection-changed', $event);\n },\n \"cellClick\": _vm.onCellClick\n },\n scopedSlots: _vm._u([{\n key: \"export\",\n fn: function () {\n return [_c('b-dropdown', {\n attrs: {\n \"id\": \"dropdown-left\",\n \"text\": _vm.$t('ar_client_export'),\n \"variant\": \"outline-primary\"\n }\n }, [_c('b-dropdown-item', {\n staticClass: \"text-wrap\",\n attrs: {\n \"href\": \"#\"\n },\n on: {\n \"click\": _vm.handleExportExcel\n }\n }, [_vm._v(_vm._s(_vm.$t(\"ar_client_export_excel\")))]), _c('b-dropdown-item', {\n staticClass: \"text-wrap\",\n attrs: {\n \"href\": \"#\",\n \"disabled\": true\n }\n }, [_vm._v(_vm._s(_vm.$t(\"ar_client_export_pdf\")))])], 1)];\n },\n proxy: true\n }, {\n key: \"showHideColumn\",\n fn: function () {\n return [_c('b-button', {\n attrs: {\n \"id\": \"column-chooser-button\",\n \"variant\": \"outline-primary\"\n },\n on: {\n \"click\": function ($event) {\n return _vm.$refs.dxDatagridRef.instance.showColumnChooser();\n }\n }\n }, [_c('ez-icon', {\n attrs: {\n \"icon\": \"ezAr-icon-align-justify\"\n }\n }), _vm._v(\" \" + _vm._s(_vm.$t(\"ar_client_hide_column\")) + \" \")], 1)];\n },\n proxy: true\n }, {\n key: \"beforeToolbarActions\",\n fn: function () {\n return [_vm._t(\"beforeToolbarActions\")];\n },\n proxy: true\n }, {\n key: \"toolbarActions\",\n fn: function () {\n return [_vm._t(\"toolbar\")];\n },\n proxy: true\n }, {\n key: \"index\",\n fn: function (_ref) {\n var data = _ref.data;\n return [_vm._v(_vm._s(data.row.loadIndex + 1))];\n }\n }, _vm._l(_vm.columns, function (item) {\n return {\n key: _vm.renderSlotHeader(item.field),\n fn: function (_ref2) {\n var data = _ref2.data;\n return [item.formatType === 'currency' ? _c('span', [_vm._v(\" \" + _vm._s(data.column.caption) + \" (VND) \")]) : item.captionAfterFix ? _c('span', [_vm._v(\" \" + _vm._s(data.column.caption + item.captionAfterFix) + \" \")]) : _c('div', {\n staticClass: \"d-flex\"\n }, [_vm._v(\" \" + _vm._s(data.column.caption) + \" \")])];\n }\n };\n }), _vm.templateArr.length > 0 ? _vm._l(_vm.columns, function (item) {\n return {\n key: item.field,\n fn: function (_ref3) {\n var data = _ref3.data;\n return [item.cellRender ? _c('span', {\n on: {\n \"click\": function ($event) {\n return _vm.$emit(((item.field) + \"-action\"), data);\n }\n }\n }, [_vm._v(\" \" + _vm._s(item.cellRender(data)) + \" \")]) : !data.data[item.field] && item.defaultIfEmpty ? _c('span', [_vm._v(\" \" + _vm._s(item.defaultIfEmpty) + \" \")]) : item.fieldParentKey ? _c('span', [_vm._v(\" \" + _vm._s(data.data[item.fieldParentKey][item.field]) + \" \")]) : item.formatType === 'currency' || item.formatType === 'num' ? _c('span', [_vm._v(\" \" + _vm._s(_vm.formatPrice(data.data[item.field])) + \" \")]) : item.formatType === 'date' ? _c('span', [_vm._v(\" \" + _vm._s(data.data[item.field] ? _vm.renderDate(data.data[item.field], item.dateConfig) : \"\") + \" \")]) : item.formatType === 'truncate' ? _c('span', {\n directives: [{\n name: \"b-tooltip\",\n rawName: \"v-b-tooltip.hover\",\n modifiers: {\n \"hover\": true\n }\n }],\n staticClass: \"truncate\",\n style: _vm.truncateWidth(item.truncateWidth),\n attrs: {\n \"title\": data.data[item.field]\n }\n }, [_vm._v(\" \" + _vm._s(data.data[item.field]) + \" \")]) : item.formatType === 'text-variant' && item.renderTextVariant ? _c('span', {\n class: (\"text-\" + (item.renderTextVariant(data.data[item.field]).variant))\n }, [_vm._v(\" \" + _vm._s(_vm.$t(item.renderTextVariant(data.data[item.field]).title)) + \" \")]) : _vm._t(item.field, null, {\n \"data\": data\n })];\n }\n };\n }) : null, {\n key: \"action\",\n fn: function (_ref4) {\n var data = _ref4.data;\n return [_c('div', {\n staticClass: \"d-flex align-items-center justify-content-center\",\n staticStyle: {\n \"gap\": \"10px\"\n }\n }, [_vm._l(_vm.actionsSplit.iconActions, function (action, index) {\n return _vm.actionsSplit.iconActions.length > 0 ? _c('span', {\n class: {\n 'd-none': !_vm.forceDisplayActions && !_vm.isValidPermission(action.apiCode)\n }\n }, [_c('span', {\n directives: [{\n name: \"b-tooltip\",\n rawName: \"v-b-tooltip.hover\",\n modifiers: {\n \"hover\": true\n }\n }],\n attrs: {\n \"title\": action.title ? _vm.$t(action.title) : ''\n }\n }, [_c('ez-icon', {\n key: index,\n staticClass: \"cursor-pointer\",\n attrs: {\n \"icon\": 'ezAr-icon-' + action.icon,\n \"size\": \"18\",\n \"color\": action.danger ? '#EA5455' : '#114A9F'\n },\n on: {\n \"click\": function ($event) {\n $event.stopPropagation();\n action.danger && !Array.isArray(_vm.$refs.deleteDialog) && !action.direct ? _vm.$refs.deleteDialog.open(data) : action.danger && !action.direct ? _vm.$refs.deleteDialog[0].open(data) : _vm.$emit((\"action-\" + (index + 1)), data);\n }\n }\n })], 1)]) : _vm._e();\n }), _vm.actionsSplit.dropDownActions.length > 2 ? _c('b-dropdown', {\n staticClass: \"w-100\",\n attrs: {\n \"menu-class\": \"w-100\",\n \"size\": \"lg\",\n \"variant\": \"link\",\n \"toggle-class\": \"text-decoration-none\",\n \"no-caret\": \"\",\n \"right\": \"\"\n },\n scopedSlots: _vm._u([{\n key: \"button-content\",\n fn: function () {\n return [_c('feather-icon', {\n attrs: {\n \"icon\": \"MoreVerticalIcon\",\n \"color\": \"#114A9F\"\n }\n })];\n },\n proxy: true\n }], null, true)\n }, _vm._l(_vm.actionsSplit.dropDownActions, function (action, index) {\n return _c('b-dropdown-item', {\n key: index,\n attrs: {\n \"href\": \"#\"\n },\n on: {\n \"click\": function ($event) {\n $event.stopPropagation();\n action.danger && !Array.isArray(_vm.$refs.deleteDialog) ? _vm.$refs.deleteDialog.open(data) : action.danger ? _vm.$refs.deleteDialog[data.rowIndex].open(data) : _vm.$emit((\"action-\" + (index + 1)), data);\n }\n }\n }, [action.danger ? _c('delete-dialog', {\n ref: \"deleteDialog\",\n refInFor: true,\n attrs: {\n \"data-remove\": {\n title: _vm.$t('ar_common_confirm_delete'),\n content: _vm.$t('ar_common_are_you_sure_delete')\n }\n },\n on: {\n \"deleteItem\": function ($event) {\n return _vm.$emit((\"action-\" + (index + 1)), data);\n }\n }\n }) : _vm._e(), _c('span', {\n class: action.danger ? 'text-danger' : ''\n }, [_vm._v(\" \" + _vm._s(action.title ? _vm.$t(action.title) : \"\") + \" \")])], 1);\n }), 1) : _vm._e()], 2)];\n }\n }], null, true)\n }, [!_vm.toolbarConfig.disableToolbar ? _c('DxColumnChooser', {\n attrs: {\n \"enabled\": true,\n \"title\": this.$t('ar_common_showhide_column'),\n \"mode\": \"select\"\n }\n }, [_c('DxPosition', {\n attrs: {\n \"my\": \"center top\",\n \"at\": \"left bottom\",\n \"of\": \"#column-chooser-button\"\n }\n })], 1) : _vm._e(), !_vm.toolbarConfig.disableToolbar ? _c('DxToolbar', [_c('DxItem', {\n attrs: {\n \"location\": \"before\",\n \"template\": \"beforeToolbarActions\"\n }\n }), _c('DxItem', {\n attrs: {\n \"location\": \"after\",\n \"template\": \"toolbarActions\"\n }\n }), _vm.excelExport && _vm.isValidPermission(_vm.excelExportApiCode) ? _c('DxItem', {\n attrs: {\n \"location\": \"after\",\n \"template\": \"export\"\n }\n }) : _vm._e(), !_vm.toolbarConfig.disableColumnChooser ? _c('DxItem', {\n attrs: {\n \"template\": \"showHideColumn\",\n \"locate-in-menu\": \"auto\",\n \"location\": \"after\"\n }\n }) : _vm._e()], 1) : _vm._e(), _vm.hasSelectionChangeListener && !_vm.selectionConfig.hideSelect ? _c('DxSelection', {\n attrs: {\n \"mode\": ((_vm$selectionConfig = _vm.selectionConfig) === null || _vm$selectionConfig === void 0 ? void 0 : _vm$selectionConfig.mode) || 'multiple'\n }\n }) : _vm._e(), _vm.editable ? _c('DxEditing', {\n attrs: {\n \"allow-deleting\": (_vm$editingConfig = _vm.editingConfig) === null || _vm$editingConfig === void 0 ? void 0 : _vm$editingConfig.delete,\n \"allow-updating\": true,\n \"mode\": ((_vm$editingConfig2 = _vm.editingConfig) === null || _vm$editingConfig2 === void 0 ? void 0 : _vm$editingConfig2.mode) || 'cell'\n }\n }) : _vm._e(), _c('DxColumn', {\n attrs: {\n \"caption\": \"STT\",\n \"alignment\": \"center\",\n \"width\": \"50\",\n \"cell-template\": \"index\"\n }\n }), _vm._l(_vm.columns, function (item, index) {\n var _item$visible, _item$editingConfig;\n return _c('DxColumn', {\n key: index,\n attrs: {\n \"visible\": (_item$visible = item.visible) !== null && _item$visible !== void 0 ? _item$visible : true,\n \"css-class\": item.cssClass,\n \"caption\": item.caption ? _vm.$t(item.caption) : '',\n \"data-field\": item.field,\n \"header-cell-template\": _vm.renderSlotHeader(item.field),\n \"cell-template\": item.cellTemplate ? item.field : false,\n \"allow-column-resizing\": true,\n \"column-auto-width\": true,\n \"min-width\": item.minWidth,\n \"alignment\": item.align || _vm.renderColAlign(item.formatType),\n \"width\": item.width || _vm.calculateWidth(item.formatType),\n \"allowFiltering\": item.field != 'action' ? true : false\n }\n }, [item.editingConfig && item.editingConfig.required ? _c('DxRequiredRule') : _vm._e(), _vm._l((_item$editingConfig = item.editingConfig) === null || _item$editingConfig === void 0 ? void 0 : _item$editingConfig.rules, function (rule, index) {\n var _item$editingConfig2;\n return item.editingConfig && (_item$editingConfig2 = item.editingConfig) !== null && _item$editingConfig2 !== void 0 && _item$editingConfig2.rules ? _c('DxCustomRule', {\n key: rule.message,\n attrs: {\n \"validation-callback\": rule.callback,\n \"message\": _vm.$t(rule.message)\n }\n }) : _vm._e();\n })], 2);\n }), _vm.forceDisplayActions || _vm.isSuperAdmin && ((_vm$actions = _vm.actions) === null || _vm$actions === void 0 ? void 0 : _vm$actions.length) > 0 || ((_vm$actions$filter = _vm.actions.filter(function (action) {\n return _vm.permissionList.includes(action.apiCode);\n })) === null || _vm$actions$filter === void 0 ? void 0 : _vm$actions$filter.length) > 0 ? _c('DxColumn', {\n attrs: {\n \"fixed\": true,\n \"fixed-position\": \"right\",\n \"showInColumnChooser\": false,\n \"caption\": _vm.$t('ar_common_operation'),\n \"alignment\": \"center\",\n \"cssClass\": \"action-column\",\n \"width\": \"100px\",\n \"cell-template\": \"action\"\n }\n }) : _vm._e(), _c('DxPaging', {\n attrs: {\n \"enabled\": !_vm.pageConfig.disablePagination,\n \"page-size\": _vm.pageConfig.pageSize || 20\n }\n }), _c('DxPager', {\n attrs: {\n \"visible\": !_vm.pageConfig.disablePagination,\n \"allowed-page-sizes\": _vm.pageConfig.pageSizes || [10, 20, 40, 0],\n \"display-mode\": _vm.pageConfig.displayMode || 'full',\n \"show-info\": _vm.pageConfig.ShowInfo || true,\n \"show-navigation-buttons\": _vm.pageConfig.showNavigationButtons || true,\n \"show-page-size-selector\": _vm.pageConfig.showPageSizeSelector || true,\n \"info-text\": ((_vm.$t('Page')) + \" {0} \" + (_vm.$t('of')) + \" {1} ({2} \" + (_vm.$t('record')) + \")\")\n }\n }), _c('DxScrolling', {\n attrs: {\n \"column-rendering-mode\": \"virtual\"\n }\n })], 2)], 2);\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!./EzTable.js?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!./EzTable.js?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./EzTable.vue?vue&type=template&id=42aae762&\"\nimport script from \"./EzTable.js?vue&type=script&lang=js&\"\nexport * from \"./EzTable.js?vue&type=script&lang=js&\"\nimport style0 from \"./EzTable.vue?vue&type=style&index=0&id=42aae762&prod&lang=scss&\"\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","var render = function () {\n var _vm=this;\n var _h=_vm.$createElement;\n var _c=_vm._self._c||_h;\n\n return _c('section', {\n staticClass: \"add-bill\"\n }, [_c('b-modal', {\n attrs: {\n \"dialog-class\": \"dialog-class\",\n \"size\": \"lg\",\n \"centered\": \"\",\n \"title\": _vm.dataRefillForBill ? _vm.$t('ar_client_edit_pay') : _vm.$t('ar_client_add_pay'),\n \"hide-footer\": \"\"\n },\n on: {\n \"hidden\": _vm.clearValueInput\n },\n model: {\n value: _vm.isShow,\n callback: function ($$v) {\n _vm.isShow = $$v;\n },\n expression: \"isShow\"\n }\n }, [_c('validation-observer', {\n ref: \"formRef\"\n }, [_c('b-row', {\n staticClass: \"m-0 mt-1 mb-1\"\n }, [_c('b-col', {\n attrs: {\n \"md\": \"6\"\n }\n }, [_c('b-form-group', {\n staticClass: \"label-requires\",\n attrs: {\n \"label\": _vm.$t('ar_client_cashier'),\n \"label-cols\": \"3\"\n }\n }, [_c('validation-provider', {\n attrs: {\n \"name\": _vm.$t('ar_client_cashier'),\n \"rules\": \"required\"\n },\n scopedSlots: _vm._u([{\n key: \"default\",\n fn: function (_ref) {\n var errors = _ref.errors;\n return [_c('v-select', {\n attrs: {\n \"options\": _vm.listDataCashier,\n \"label\": \"CashierName\",\n \"placeholder\": _vm.$t('ar_client_select_payer')\n },\n model: {\n value: _vm.cashierVal,\n callback: function ($$v) {\n _vm.cashierVal = $$v;\n },\n expression: \"cashierVal\"\n }\n }), _c('small', {\n staticClass: \"text-danger\"\n }, [_vm._v(_vm._s(errors[0]))])];\n }\n }])\n })], 1)], 1), _c('b-col', {\n attrs: {\n \"md\": \"6\"\n }\n }, [_c('b-form-group', {\n staticClass: \"label-requires\",\n attrs: {\n \"label\": _vm.$t('ar_client_payments'),\n \"label-cols\": \"3\"\n }\n }, [_c('validation-provider', {\n attrs: {\n \"name\": _vm.$t('ar_client_payments'),\n \"rules\": \"required\"\n },\n scopedSlots: _vm._u([{\n key: \"default\",\n fn: function (_ref2) {\n var errors = _ref2.errors;\n return [_c('b-form-select', {\n model: {\n value: _vm.payerVal,\n callback: function ($$v) {\n _vm.payerVal = $$v;\n },\n expression: \"payerVal\"\n }\n }, [_c('b-form-select-option', {\n attrs: {\n \"value\": null\n }\n }, [_vm._v(_vm._s(_vm.$t(\"ar_client_payments\")))]), _vm._l(_vm.listPayment[0].PaymentMethod, function (item, index) {\n return _c('b-form-select-option-group', {\n key: index,\n attrs: {\n \"label\": item.Name\n }\n }, _vm._l(item.TransactionCode, function (itemMethod, index) {\n return _c('b-form-select-option', {\n key: index,\n attrs: {\n \"value\": {\n Group: item,\n Option: itemMethod\n }\n }\n }, [_vm._v(\" \" + _vm._s(itemMethod.Description) + \" \")]);\n }), 1);\n })], 2), _c('small', {\n staticClass: \"text-danger\"\n }, [_vm._v(_vm._s(errors[0]))])];\n }\n }])\n })], 1)], 1)], 1), _c('b-row', {\n staticClass: \"m-0 mb-1\"\n }, [_c('b-col', {\n attrs: {\n \"md\": \"6\"\n }\n }, [_c('b-form-group', {\n staticClass: \"label-requires\",\n attrs: {\n \"label\": _vm.$t('ar_voucher_type_currency'),\n \"label-cols\": \"3\"\n }\n }, [_c('validation-provider', {\n attrs: {\n \"name\": _vm.$t('ar_voucher_type_currency'),\n \"rules\": \"required\"\n },\n scopedSlots: _vm._u([{\n key: \"default\",\n fn: function (_ref3) {\n var errors = _ref3.errors;\n return [_c('v-select', {\n attrs: {\n \"options\": _vm.listCurrencyLocalStorage,\n \"placeholder\": _vm.$t('ar_client_select_type_currency'),\n \"label\": \"CurrencyCode\"\n },\n model: {\n value: _vm.typeCurrencyVal,\n callback: function ($$v) {\n _vm.typeCurrencyVal = $$v;\n },\n expression: \"typeCurrencyVal\"\n }\n }), _c('small', {\n staticClass: \"text-danger\"\n }, [_vm._v(_vm._s(errors[0]))])];\n }\n }])\n })], 1)], 1), _c('b-col', {\n attrs: {\n \"md\": \"6\"\n }\n }, [_c('b-form-group', {\n staticClass: \"label-requires\",\n attrs: {\n \"label\": _vm.$t('ar_client_input_money_number'),\n \"label-cols\": \"3\"\n }\n }, [_c('validation-provider', {\n attrs: {\n \"name\": _vm.$t('ar_client_input_money_number'),\n \"rules\": \"required\"\n },\n scopedSlots: _vm._u([{\n key: \"default\",\n fn: function (_ref4) {\n var errors = _ref4.errors;\n return [_c('b-form-input', {\n model: {\n value: _vm.dataInputForm.Amount,\n callback: function ($$v) {\n _vm.$set(_vm.dataInputForm, \"Amount\", $$v);\n },\n expression: \"dataInputForm.Amount\"\n }\n }), _c('small', {\n staticClass: \"text-danger\"\n }, [_vm._v(_vm._s(errors[0]))])];\n }\n }])\n })], 1)], 1)], 1), _c('b-row', {\n staticClass: \"m-0 mb-1\"\n }, [_c('b-col', {\n attrs: {\n \"md\": \"12\"\n }\n }, [_c('b-form-group', {\n attrs: {\n \"label\": _vm.$t('ar_voucher_note'),\n \"label-cols\": \"1\"\n }\n }, [_c('b-form-textarea', {\n model: {\n value: _vm.dataInputForm.Note,\n callback: function ($$v) {\n _vm.$set(_vm.dataInputForm, \"Note\", $$v);\n },\n expression: \"dataInputForm.Note\"\n }\n })], 1)], 1)], 1)], 1), _c('div', {\n staticClass: \"w-100 border-top d-flex justify-content-end align-items-center p-1\"\n }, [_c('b-button', {\n attrs: {\n \"variant\": \"primary\"\n },\n on: {\n \"click\": _vm.acceptDataSave\n }\n }, [_vm._v(\" \" + _vm._s(_vm.$t(\"ar_voucher_save\")) + \" \")])], 1)], 1)], 1);\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ModalBoxAddBill.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ModalBoxAddBill.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ModalBoxAddBill.vue?vue&type=template&id=011518d8&\"\nimport script from \"./ModalBoxAddBill.vue?vue&type=script&lang=js&\"\nexport * from \"./ModalBoxAddBill.vue?vue&type=script&lang=js&\"\nimport style0 from \"./ModalBoxAddBill.vue?vue&type=style&index=0&id=011518d8&prod&lang=scss&\"\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","var render = function () {\n var _class, _class2;\n var _vm=this;\n var _h=_vm.$createElement;\n var _c=_vm._self._c||_h;\n\n return _c('div', {\n staticClass: \"form-group\",\n class: (_class = {\n 'row ': _vm.formGroupRow,\n 'label-requires': _vm.required || _vm.rules.required\n }, _class[(\"\" + (_vm.formGroupClass))] = _vm.formGroupClass, _class)\n }, [_vm.type !== 'divider' ? _c('label', {\n staticClass: \"d-block form-label\",\n class: (_class2 = {}, _class2[(\"\" + (_vm.labelClass))] = _vm.labelClass, _class2),\n staticStyle: {\n \"margin-bottom\": \"6px\"\n }\n }, [_vm._v(_vm._s(_vm.$t(_vm.label) + _vm.labelAfterFix || \"\"))]) : _vm._e(), _c('validation-provider', {\n attrs: {\n \"rules\": _vm.rules,\n \"name\": _vm.$t(_vm.label)\n },\n scopedSlots: _vm._u([{\n key: \"default\",\n fn: function (_ref) {\n var errors = _ref.errors;\n return [_vm.type === 'date' ? _c('WidgetDateTime', {\n attrs: {\n \"clearable\": !_vm.noClearable,\n \"timePicker\": _vm.timePicker,\n \"max-date\": _vm.maxDate,\n \"disabled\": _vm.disabled,\n \"isRange\": _vm.isRange,\n \"placeholder\": _vm.$t(_vm.placeholder) || _vm.$t(_vm.label)\n },\n model: {\n value: _vm.currentValue,\n callback: function ($$v) {\n _vm.currentValue = $$v;\n },\n expression: \"currentValue\"\n }\n }) : _vm._e(), _vm.type === 'select' ? _c('WidgetSelect', {\n attrs: {\n \"disabledItemAfterFix\": _vm.disabledItemAfterFix,\n \"disabledItem\": _vm.disabledItem,\n \"defaultValue\": _vm.defaultValue,\n \"customOptions\": _vm.customOptions,\n \"errors\": errors,\n \"placeholder\": _vm.placeholder || _vm.label,\n \"dataSource\": _vm.dataSource,\n \"multiple\": _vm.multiple,\n \"noClearable\": _vm.noClearable,\n \"dataSourceParams\": _vm.dataSourceParams,\n \"label\": _vm.labelOption,\n \"disabled\": _vm.disabled,\n \"customReduce\": _vm.customReduce\n },\n model: {\n value: _vm.currentValue,\n callback: function ($$v) {\n _vm.currentValue = $$v;\n },\n expression: \"currentValue\"\n }\n }) : _vm._e(), _vm.type === 'divider' ? _c('WidgetDivider', {\n attrs: {\n \"variant\": _vm.variant,\n \"label\": _vm.label\n }\n }) : _vm._e(), _vm.type === 'string' ? _c('WidgetString', {\n attrs: {\n \"disabled\": _vm.disabled,\n \"rows\": _vm.rows,\n \"variant\": _vm.variant,\n \"errors\": errors,\n \"placeholder\": _vm.placeholder || _vm.label\n },\n model: {\n value: _vm.currentValue,\n callback: function ($$v) {\n _vm.currentValue = $$v;\n },\n expression: \"currentValue\"\n }\n }) : _vm._e(), _vm.type === 'cleave' ? _c('WidgetCleave', {\n attrs: {\n \"cleaveOptions\": _vm.cleaveOptions,\n \"defaultValue\": _vm.defaultValue,\n \"errors\": errors,\n \"type\": _vm.cleaveType,\n \"disabled\": _vm.disabled,\n \"placeholder\": _vm.placeholder || _vm.label\n },\n model: {\n value: _vm.currentValue,\n callback: function ($$v) {\n _vm.currentValue = $$v;\n },\n expression: \"currentValue\"\n }\n }) : _vm._e(), _vm.currentValue && _vm.showVnPriceText ? _c('div', {\n staticClass: \"text-right font-weight-bold font-italic text-primary\",\n staticStyle: {\n \"font-size\": \"10px\",\n \"margin-top\": \"6px\"\n }\n }, [_vm._v(\" \" + _vm._s(_vm.numberToVnText(_vm.currentValue)) + \" \")]) : _vm._e(), _c('small', {\n staticClass: \"text-danger\"\n }, [_vm._v(_vm._s(errors[0]))])];\n }\n }])\n })], 1);\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {\n var _vm=this;\n var _h=_vm.$createElement;\n var _c=_vm._self._c||_h;\n\n return _vm.variant === 'text' ? _c('h3', {\n staticClass: \"my-1\"\n }, [_vm._v(_vm._s(_vm.label))]) : _c('h3');\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n","import mod from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./WidgetDivider.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./WidgetDivider.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./WidgetDivider.vue?vue&type=template&id=3737f6ea&\"\nimport script from \"./WidgetDivider.vue?vue&type=script&lang=js&\"\nexport * from \"./WidgetDivider.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","import mod from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FormItem.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./FormItem.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./FormItem.vue?vue&type=template&id=42b77c5d&\"\nimport script from \"./FormItem.vue?vue&type=script&lang=js&\"\nexport * from \"./FormItem.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","var toString = {}.toString;\n\nmodule.exports = Array.isArray || function (arr) {\n return toString.call(arr) == '[object Array]';\n};\n","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SidebarLabel.vue?vue&type=style&index=0&id=66f205bb&prod&lang=scss&scoped=true&\"","var render = function () {\n var _vm=this;\n var _h=_vm.$createElement;\n var _c=_vm._self._c||_h;\n\n return _c('b-card', {\n staticClass: \"search-list\",\n attrs: {\n \"title\": _vm.title ? _vm.$t(_vm.title) : ''\n }\n }, [_c('div', {\n staticClass: \"d-flex\"\n }, [_c('div', {\n staticClass: \"outline-none\",\n staticStyle: {\n \"width\": \"90%\",\n \"margin-right\": \"40px\"\n },\n attrs: {\n \"tabindex\": \"0\"\n },\n on: {\n \"keyup\": function ($event) {\n if (!$event.type.indexOf('key') && _vm._k($event.keyCode, \"enter\", 13, $event.key, \"Enter\")) { return null; }\n return _vm.$emit('search');\n }\n }\n }, [_vm._t(\"default\")], 2), _c('div', {\n staticStyle: {\n \"width\": \"10%\",\n \"padding-left\": \"20px\"\n }\n }, [_c('LoadingButton', {\n attrs: {\n \"className\": \"mt-3\",\n \"variant\": \"primary\"\n },\n on: {\n \"click\": function ($event) {\n return _vm.$emit('search');\n }\n }\n }, [_c('ez-icon', {\n staticStyle: {\n \"margin-right\": \"3px\"\n },\n attrs: {\n \"icon\": \"ezAr-icon-search\"\n }\n }), _vm._v(_vm._s(_vm.buttonText ? _vm.$t(_vm.buttonText) : _vm.$t(\"ar_common_search\")))], 1)], 1)])]);\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SearchList.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SearchList.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./SearchList.vue?vue&type=template&id=ff406d06&\"\nimport script from \"./SearchList.vue?vue&type=script&lang=js&\"\nexport * from \"./SearchList.vue?vue&type=script&lang=js&\"\nimport style0 from \"./SearchList.vue?vue&type=style&index=0&id=ff406d06&prod&lang=scss&\"\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","var isObject = require('../internals/is-object');\n\n// `ToPrimitive` abstract operation\n// https://tc39.github.io/ecma262/#sec-toprimitive\n// instead of the ES6 spec version, we didn't implement @@toPrimitive case\n// and the second argument - flag - preferred type is a string\nmodule.exports = function (input, PREFERRED_STRING) {\n if (!isObject(input)) return input;\n var fn, val;\n if (PREFERRED_STRING && typeof (fn = input.toString) == 'function' && !isObject(val = fn.call(input))) return val;\n if (typeof (fn = input.valueOf) == 'function' && !isObject(val = fn.call(input))) return val;\n if (!PREFERRED_STRING && typeof (fn = input.toString) == 'function' && !isObject(val = fn.call(input))) return val;\n throw TypeError(\"Can't convert object to primitive value\");\n};\n","var render = function () {\n var _vm=this;\n var _h=_vm.$createElement;\n var _c=_vm._self._c||_h;\n\n return _c('div', [_c('b-modal', {\n attrs: {\n \"id\": \"modal-payment-for-distribution\",\n \"size\": \"md\",\n \"centered\": \"\",\n \"hide-footer\": \"\"\n },\n on: {\n \"hidden\": _vm.resetFormData,\n \"shown\": _vm.openForm\n },\n scopedSlots: _vm._u([{\n key: \"modal-header\",\n fn: function () {\n return [_c('h4', {\n staticClass: \"mb-0 text-primary\"\n }, [_vm._v(\" \" + _vm._s(_vm.isViewOnly && _vm.dataPayment ? _vm.$t(\"ar_client_invoice_details\") : !_vm.isViewOnly && _vm.dataPayment ? _vm.$t(\"ar_client_edit_payment\") : _vm.$t(\"ar_client_add_pay\")) + \" \")]), _c('div', {\n staticClass: \"d-flex align-items-center\"\n }, [_vm.dataPayment && _vm.isValidPermission(_vm.apiCode) ? _c('ez-icon', {\n staticClass: \"mr-1\",\n class: {\n 'cursor-pointer': _vm.isViewOnly\n },\n attrs: {\n \"icon\": \"ezAr-icon-edit\",\n \"size\": \"24\",\n \"color\": _vm.isViewOnly ? '#ea5455' : '#ccc'\n },\n on: {\n \"click\": function ($event) {\n _vm.isViewOnly = false;\n }\n }\n }) : _vm._e(), _c('ez-icon', {\n staticClass: \"cursor-pointer\",\n attrs: {\n \"icon\": \"ezAr-icon-x\",\n \"size\": \"24\",\n \"color\": \"#114A9F\"\n },\n on: {\n \"click\": _vm.hideModal\n }\n })], 1)];\n },\n proxy: true\n }])\n }, [_c('b-card-body', [_c('b-overlay', {\n attrs: {\n \"show\": _vm.isLoading,\n \"opacity\": 0.3,\n \"rounded\": \"sm\"\n }\n }, [_c('validation-observer', {\n ref: \"formRef\"\n }, [_c('div', {\n staticClass: \"form-row form-group\"\n }, [_c('div', {\n staticClass: \"col-lg-6\"\n }, [_c('div', {\n staticClass: \"form-group label-requires\"\n }, [_c('label', {\n staticClass: \"form-label\"\n }, [_vm._v(_vm._s(_vm.$t(\"golf_payment_payment_type\")))]), _c('b-form-group', [_c('v-select', {\n attrs: {\n \"disabled\": _vm.isViewOnly,\n \"options\": _vm.paymentTypeOptions,\n \"placeholder\": _vm.$t('golf_payment_payment_type'),\n \"clearable\": false,\n \"label\": \"title\",\n \"reduce\": function (option) {\n return option.value;\n }\n },\n model: {\n value: _vm.form.PaymentDetailType,\n callback: function ($$v) {\n _vm.$set(_vm.form, \"PaymentDetailType\", $$v);\n },\n expression: \"form.PaymentDetailType\"\n }\n })], 1)], 1)]), _c('div', {\n staticClass: \"col-lg-6\"\n }, [_c('div', {\n staticClass: \"form-group label-requires\",\n on: {\n \"mouseleave\": function ($event) {\n return _vm.handlePaymentType('hide');\n }\n }\n }, [_c('label', {\n staticClass: \"form-label\"\n }, [_vm._v(_vm._s(_vm.$t(\"golf_payment_payment_method\")))]), _c('WidgetSelect', {\n attrs: {\n \"defaultValue\": function (options) {\n return options.find(function (opt) {\n return opt.ParentKeyword === 'TMT';\n });\n },\n \"dataSource\": _vm.listPaymentType,\n \"customOptions\": function (options) {\n return options.map(function (option) {\n return Object.assign({}, option, {\n CodeName: ((option.ParentKeyword) + \" - \" + (option.NameVi))\n });\n });\n },\n \"label\": \"CodeName\",\n \"placeholder\": \"golf_payment_payment_method\",\n \"disabled\": _vm.isViewOnly\n },\n on: {\n \"change\": _vm.handleChoicePayment\n },\n model: {\n value: _vm.form.PaymentMethodId,\n callback: function ($$v) {\n _vm.$set(_vm.form, \"PaymentMethodId\", $$v);\n },\n expression: \"form.PaymentMethodId\"\n }\n })], 1)])]), _vm.showFormInputPaymentMethod.VNPAY || _vm.showFormInputPaymentMethod.BANK ? _c('div', {\n staticClass: \"form-row form-group\"\n }, [_c('div', {\n staticClass: \"col-lg-12\"\n }, [_c('FormItem', {\n attrs: {\n \"type\": \"string\",\n \"disabled\": _vm.isViewOnly,\n \"rules\": {\n required: true\n },\n \"label\": \"ar_client_transaction_code\",\n \"placeholder\": \"ar_client_transaction_code\"\n },\n model: {\n value: _vm.form.TransactionCode,\n callback: function ($$v) {\n _vm.$set(_vm.form, \"TransactionCode\", $$v);\n },\n expression: \"form.TransactionCode\"\n }\n })], 1), _c('div', {\n staticClass: \"col-lg-6\"\n }, [_c('div', {\n staticClass: \"form-group label-requires\"\n }, [_c('label', {\n staticClass: \"form-label\"\n }, [_vm._v(_vm._s(_vm.$t(\"golf_payment_currency_code\")))]), _c('b-form-group', [_c('v-select', {\n attrs: {\n \"disabled\": _vm.isViewOnly,\n \"options\": _vm.LS_Currency,\n \"placeholder\": _vm.$t('golf_payment_currency_code'),\n \"clearable\": false,\n \"label\": \"Format\",\n \"reduce\": function (option) {\n return option.Id;\n }\n },\n on: {\n \"option:selected\": _vm.onSelectCurrency\n },\n model: {\n value: _vm.form.CurrencyCode,\n callback: function ($$v) {\n _vm.$set(_vm.form, \"CurrencyCode\", $$v);\n },\n expression: \"form.CurrencyCode\"\n }\n })], 1)], 1)]), _c('div', {\n staticClass: \"col-lg-6\"\n }, [_c('div', {\n staticClass: \"form-group label-requires\"\n }, [_c('div', {\n staticClass: \"d-flex justify-content-between\"\n }, [_c('div', [_c('label', {\n staticClass: \"form-label\"\n }, [_vm._v(_vm._s(_vm.$t(\"golf_payment_amount\")))])])]), _c('cleave', {\n staticClass: \"form-control text-right\",\n attrs: {\n \"disabled\": _vm.isViewOnly,\n \"raw\": true,\n \"options\": _vm.inputMaskByCurrency(),\n \"placeholder\": \"1,000,000\"\n },\n model: {\n value: _vm.form.Amount,\n callback: function ($$v) {\n _vm.$set(_vm.form, \"Amount\", $$v);\n },\n expression: \"form.Amount\"\n }\n })], 1)])]) : _vm.showFormInputPaymentMethod.CARD ? _c('div', {\n staticClass: \"form-row form-group\"\n }, [_c('div', {\n staticClass: \"col-lg-12\"\n }, [_c('div', {\n staticClass: \"form-group label-requires\"\n }, [_c('label', {\n staticClass: \"form-label\"\n }, [_vm._v(_vm._s(_vm.$t(\"golf_payment_card_number\")))]), _c('b-form-group', [_c('cleave', {\n staticClass: \"form-control\",\n attrs: {\n \"disabled\": _vm.isViewOnly,\n \"raw\": false,\n \"options\": _vm.maskCreditCard,\n \"maxlength\": 50\n },\n model: {\n value: _vm.form.CardNumber,\n callback: function ($$v) {\n _vm.$set(_vm.form, \"CardNumber\", $$v);\n },\n expression: \"form.CardNumber\"\n }\n })], 1)], 1)]), _c('div', {\n staticClass: \"col-lg-6\"\n }, [_c('div', {\n staticClass: \"form-group label-requires\"\n }, [_c('label', {\n staticClass: \"form-label\"\n }, [_vm._v(_vm._s(_vm.$t(\"golf_payment_currency_code\")))]), _c('b-form-group', [_c('v-select', {\n attrs: {\n \"disabled\": _vm.isViewOnly,\n \"options\": _vm.LS_Currency,\n \"placeholder\": _vm.$t('golf_payment_currency_code'),\n \"clearable\": false,\n \"label\": \"Format\",\n \"reduce\": function (option) {\n return option.Id;\n }\n },\n on: {\n \"option:selected\": _vm.onSelectCurrency\n },\n model: {\n value: _vm.form.CurrencyCode,\n callback: function ($$v) {\n _vm.$set(_vm.form, \"CurrencyCode\", $$v);\n },\n expression: \"form.CurrencyCode\"\n }\n })], 1)], 1)]), _c('div', {\n staticClass: \"col-lg-6\"\n }, [_c('div', {\n staticClass: \"form-group label-requires\"\n }, [_c('div', {\n staticClass: \"d-flex justify-content-between\"\n }, [_c('div', [_c('label', {\n staticClass: \"form-label\"\n }, [_vm._v(_vm._s(_vm.$t(\"golf_payment_amount\")))])])]), _c('cleave', {\n staticClass: \"form-control text-right\",\n attrs: {\n \"disabled\": _vm.isViewOnly,\n \"raw\": true,\n \"options\": _vm.inputMaskByCurrency(),\n \"placeholder\": \"1,000,000\"\n },\n model: {\n value: _vm.form.Amount,\n callback: function ($$v) {\n _vm.$set(_vm.form, \"Amount\", $$v);\n },\n expression: \"form.Amount\"\n }\n })], 1)])]) : _vm.showFormInputPaymentMethod.CREDIT ? _c('div', {\n staticClass: \"form-row form-group\"\n }, [_c('div', {\n staticClass: \"col-lg-12\"\n }, [_c('div', {\n staticClass: \"form-group label-requires\"\n }, [_c('label', {\n staticClass: \"form-label\"\n }, [_vm._v(_vm._s(_vm.$t(\"ar_client_card_owner\")))]), _c('b-form-group', {\n staticClass: \"validate-voucher\"\n }, [_c('b-form-input', {\n attrs: {\n \"disabled\": _vm.isViewOnly,\n \"placeholder\": _vm.$t('ar_client_card_owner')\n },\n model: {\n value: _vm.form.AccountHolder,\n callback: function ($$v) {\n _vm.$set(_vm.form, \"AccountHolder\", $$v);\n },\n expression: \"form.AccountHolder\"\n }\n })], 1)], 1)]), _c('div', {\n staticClass: \"col-lg-8\"\n }, [_c('div', {\n staticClass: \"form-group label-requires\"\n }, [_c('label', {\n staticClass: \"form-label\"\n }, [_vm._v(_vm._s(_vm.$t(\"golf_payment_card_number\")))]), _c('b-form-group', [_c('cleave', {\n staticClass: \"form-control\",\n attrs: {\n \"disabled\": _vm.isViewOnly,\n \"raw\": true,\n \"options\": _vm.maskCreditCard,\n \"maxlength\": 50\n },\n model: {\n value: _vm.form.CardNumber,\n callback: function ($$v) {\n _vm.$set(_vm.form, \"CardNumber\", $$v);\n },\n expression: \"form.CardNumber\"\n }\n })], 1)], 1)]), _c('div', {\n staticClass: \"col-lg-4\"\n }, [_c('div', {\n staticClass: \"form-group label-requires\"\n }, [_c('label', {\n staticClass: \"form-label\"\n }, [_vm._v(_vm._s(_vm.$t(\"golf_payment_expiration_date\")))]), _c('b-form-group', [_c('cleave', {\n staticClass: \"form-control\",\n attrs: {\n \"disabled\": _vm.isViewOnly,\n \"raw\": false,\n \"options\": _vm.maskExpirationDate,\n \"placeholder\": \"MM/YY\"\n },\n model: {\n value: _vm.form.ExpirationDate,\n callback: function ($$v) {\n _vm.$set(_vm.form, \"ExpirationDate\", $$v);\n },\n expression: \"form.ExpirationDate\"\n }\n })], 1)], 1)]), _c('div', {\n staticClass: \"col-lg-6\"\n }, [_c('div', {\n staticClass: \"form-group label-requires\"\n }, [_c('label', {\n staticClass: \"form-label\"\n }, [_vm._v(_vm._s(_vm.$t(\"golf_payment_currency_code\")))]), _c('b-form-group', [_c('v-select', {\n attrs: {\n \"disabled\": _vm.isViewOnly,\n \"options\": _vm.LS_Currency,\n \"placeholder\": _vm.$t('golf_payment_currency_code'),\n \"clearable\": false,\n \"label\": \"Format\",\n \"reduce\": function (option) {\n return option.Id;\n }\n },\n on: {\n \"option:selected\": _vm.onSelectCurrency\n },\n model: {\n value: _vm.form.CurrencyCode,\n callback: function ($$v) {\n _vm.$set(_vm.form, \"CurrencyCode\", $$v);\n },\n expression: \"form.CurrencyCode\"\n }\n })], 1)], 1)]), _c('div', {\n staticClass: \"col-lg-6\"\n }, [_c('div', {\n staticClass: \"form-group label-requires\"\n }, [_c('div', {\n staticClass: \"d-flex justify-content-between\"\n }, [_c('div', [_c('label', {\n staticClass: \"form-label\"\n }, [_vm._v(_vm._s(_vm.$t(\"golf_payment_amount\")))])])]), _c('cleave', {\n staticClass: \"form-control text-right\",\n attrs: {\n \"disabled\": _vm.isViewOnly,\n \"raw\": true,\n \"options\": _vm.inputMaskByCurrency(),\n \"placeholder\": \"1,000,000\"\n },\n model: {\n value: _vm.form.Amount,\n callback: function ($$v) {\n _vm.$set(_vm.form, \"Amount\", $$v);\n },\n expression: \"form.Amount\"\n }\n })], 1)])]) : _vm.PaymentMethodByVoucherInTransactionCode === _vm.TransactionCode ? _c('div', {\n staticClass: \"form-row form-group\"\n }, [_c('div', {\n staticClass: \"col-lg-6\"\n }, [_c('div', {\n staticClass: \"form-group label-requires\"\n }, [_c('label', {\n staticClass: \"form-label\"\n }, [_vm._v(_vm._s(_vm.$t(\"golf_payment_currency_code\")))]), _c('b-form-group', [_c('v-select', {\n attrs: {\n \"disabled\": _vm.isViewOnly,\n \"options\": _vm.LS_Currency,\n \"placeholder\": _vm.$t('golf_payment_currency_code'),\n \"clearable\": false,\n \"label\": \"Format\",\n \"reduce\": function (option) {\n return option.Id;\n }\n },\n on: {\n \"option:selected\": _vm.onSelectCurrency\n },\n model: {\n value: _vm.form.CurrencyCode,\n callback: function ($$v) {\n _vm.$set(_vm.form, \"CurrencyCode\", $$v);\n },\n expression: \"form.CurrencyCode\"\n }\n })], 1)], 1)]), _c('div', {\n staticClass: \"col-lg-6\"\n }, [_c('div', {\n staticClass: \"form-group label-requires\"\n }, [_c('div', {\n staticClass: \"d-flex justify-content-between\"\n }, [_c('div', [_c('label', {\n staticClass: \"form-label\"\n }, [_vm._v(_vm._s(_vm.$t(\"golf_payment_amount\")))])])]), _c('cleave', {\n staticClass: \"form-control text-right\",\n attrs: {\n \"disabled\": _vm.isViewOnly,\n \"raw\": true,\n \"options\": _vm.inputMaskByCurrency(),\n \"placeholder\": \"1,000,000\"\n },\n model: {\n value: _vm.form.Amount,\n callback: function ($$v) {\n _vm.$set(_vm.form, \"Amount\", $$v);\n },\n expression: \"form.Amount\"\n }\n })], 1)]), _vm.form.VoucherCode && _vm.voucherDetail ? _c('div', {\n staticClass: \"col-lg-12\"\n }, [_c('p', {\n staticClass: \"text-danger mb-0\"\n }, [_vm._v(\" \" + _vm._s(_vm.$t(\"golf_voucher_name\")) + \": \" + _vm._s(_vm.voucherDetail.Voucher.VoucherName) + \" \")]), _c('p', {\n staticClass: \"text-danger mb-0\"\n }, [_vm._v(\" \" + _vm._s(_vm.$t(\"golf_voucher_amount\")) + \": \" + _vm._s(_vm.formatPrice(_vm.voucherDetail.TotalAmount)) + \" \")]), _c('p', {\n staticClass: \"text-danger mb-0\"\n }, [_vm._v(\" \" + _vm._s(_vm.$t(\"golf_voucher_time_apply\")) + \": \" + _vm._s(_vm.convertUTC(_vm.voucherDetail.Voucher.OpenDate, \"DD/MM/YYYY\")) + \" - \" + _vm._s(_vm.convertUTC(_vm.voucherDetail.Voucher.ExpirationDate, \"DD/MM/YYYY\")) + \" \")])]) : _vm._e()]) : _vm.showFormInputPaymentMethod.OTHER && _vm.PaymentMethodByEvoucherInTransactionCode != _vm.TransactionCode && _vm.PaymentMethodByVoucherInTransactionCode != _vm.TransactionCode ? _c('div', {\n staticClass: \"form-row form-group\"\n }, [_c('div', {\n staticClass: \"col-lg-6\"\n }, [_c('div', {\n staticClass: \"form-group label-requires\"\n }, [_c('label', {\n staticClass: \"form-label\"\n }, [_vm._v(_vm._s(_vm.$t(\"golf_payment_currency_code\")))]), _c('b-form-group', [_c('v-select', {\n attrs: {\n \"disabled\": _vm.isViewOnly,\n \"options\": _vm.LS_Currency,\n \"placeholder\": _vm.$t('golf_payment_currency_code'),\n \"clearable\": false,\n \"label\": \"Format\",\n \"reduce\": function (option) {\n return option.Id;\n }\n },\n on: {\n \"option:selected\": _vm.onSelectCurrency\n },\n model: {\n value: _vm.form.CurrencyCode,\n callback: function ($$v) {\n _vm.$set(_vm.form, \"CurrencyCode\", $$v);\n },\n expression: \"form.CurrencyCode\"\n }\n })], 1)], 1)]), _c('div', {\n staticClass: \"col-lg-6\"\n }, [_c('div', {\n staticClass: \"form-group label-requires\"\n }, [_c('div', {\n staticClass: \"d-flex justify-content-between\"\n }, [_c('div', [_c('label', {\n staticClass: \"form-label\"\n }, [_vm._v(_vm._s(_vm.$t(\"golf_payment_amount\")))])]), _c('div', [_vm.showMoneyExchange ? _c('div', {\n staticClass: \"text-right money-exchange\"\n }, [_vm._v(\" = \" + _vm._s(_vm.totalAmountPaymentInputExchangeDisplay) + \" \")]) : _vm._e()])]), _c('cleave', {\n staticClass: \"form-control\",\n attrs: {\n \"disabled\": _vm.isViewOnly,\n \"raw\": true,\n \"options\": _vm.inputMaskByCurrency(),\n \"placeholder\": \"1,000,000\"\n },\n model: {\n value: _vm.form.Amount,\n callback: function ($$v) {\n _vm.$set(_vm.form, \"Amount\", $$v);\n },\n expression: \"form.Amount\"\n }\n })], 1)])]) : _vm._e(), _c('div', {\n staticClass: \"form-row form-group\"\n }, [_c('div', {\n staticClass: \"col-lg-12\"\n }, [_c('div', {\n staticClass: \"form-group label-requires\"\n }, [_c('label', {\n staticClass: \"form-label\"\n }, [_vm._v(_vm._s(_vm.$t(\"golf_payment_cashier\")))]), _c('b-form-group', [_c('WidgetSelect', {\n attrs: {\n \"customOptions\": function (options) {\n return options.map(function (option) {\n return Object.assign({}, option, {\n CodeName: ((option.TaUserCode) + \" - \" + (option.Fullname))\n });\n });\n },\n \"placeholder\": \"golf_payment_cashier\",\n \"dataSourceParams\": {\n IsCheckPermission: false\n },\n \"dataSource\": _vm.arClient.api_AP_RTU01,\n \"label\": \"CodeName\",\n \"disabled\": _vm.isViewOnly\n },\n model: {\n value: _vm.form.CashierId,\n callback: function ($$v) {\n _vm.$set(_vm.form, \"CashierId\", $$v);\n },\n expression: \"form.CashierId\"\n }\n })], 1)], 1)])]), _c('div', {\n staticClass: \"form-row form-group\"\n }, [_c('div', {\n staticClass: \"col\"\n }, [_c('label', [_vm._v(_vm._s(_vm.$t(\"ar_client_note\")))]), _c('b-form-textarea', {\n staticClass: \"form-control\",\n attrs: {\n \"disabled\": _vm.isViewOnly,\n \"placeholder\": _vm.$t('golf_payment_note'),\n \"rows\": \"2\",\n \"wrap\": \"soft\",\n \"maxlength\": 250\n },\n model: {\n value: _vm.form.Note,\n callback: function ($$v) {\n _vm.$set(_vm.form, \"Note\", $$v);\n },\n expression: \"form.Note\"\n }\n })], 1)]), _c('div', {\n staticClass: \"form-row mt-2 form-group text-right\"\n }, [_c('div', {\n staticClass: \"col\"\n }, [!_vm.isViewOnly ? _c('b-button', {\n staticStyle: {\n \"white-space\": \"nowrap\"\n },\n attrs: {\n \"variant\": \"primary\",\n \"disabled\": !_vm.isSubmit\n },\n on: {\n \"click\": _vm.createPaymentDetail_IPM04\n }\n }, [_vm._v(\" \" + _vm._s(_vm.$t(\"ar_common_save\")) + \" \")]) : _vm._e()], 1)])])], 1)], 1)], 1)], 1);\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import vSelect from \"vue-select\";\nimport Decimal from \"decimal.js\";\n\nimport { arClient } from \"@/api/ar-client\";\nimport { ValidationObserver, ValidationProvider, extend } from \"vee-validate\";\n/* import PaymentType from \"@/views/modules/booking/PaymentType.vue\"; */\nimport Cleave from \"vue-cleave-component\";\nimport FormItem from \"../Form/components/FormItem/FormItem.vue\";\nimport PermissionButton from \"../../ultils/Button/PermissionButton.vue\";\nimport WidgetSelect from \"../../ultils/Form/components/Select/WidgetSelect.vue\";\n/* import SelectDebitAccount from \"@/views/modules/ultils/SelectDebitAccount\"; */\nimport { commonServices } from \"@/api/common-services\";\nimport { AR_UPAD01 } from \"@/api/constant\";\nimport { VoucherService } from \"@/api/voucher-service\";\n\nconst PaymentDetailType = {\n Payment: \"PAYMENT\",\n Refund: \"REFUND\",\n};\n\nconst PaymentMethodGroup = {\n AR: \"AR\",\n BANK: \"BANK\",\n CASH: \"CASH\",\n TMT: \"TMT\",\n CREDIT: \"CREDIT\",\n EZTICKET: \"EZTICKET\",\n EZGOLF: \"EZGOLF\",\n VNPAY: \"VNPAY\",\n OTHER: \"OTHER\",\n CARD: \"CARD\",\n QRCODE: \"QRCODE\",\n ROOM: \"ROOM\",\n VIP: \"VIP\",\n};\n\nconst paymentBase = {\n Id: null,\n PaymentCode: \"\",\n PaymentDate: \"\",\n FiscalPaymentDate: \"\",\n MemberId: null,\n TotalAmount: 0,\n ReceivedAmount: 0,\n PaymentDetail: [],\n};\n\nconst formBase = {\n PaymentMethodId: null,\n PaymentDetailType: null,\n Note: \"\",\n CashierId: null,\n Amount: 0,\n CurrencyCode: \"\",\n CardNumber: \"\",\n ClientId: null,\n DebitAccountId: null,\n ExpirationDate: null,\n Bdc: null,\n};\n\nexport default {\n components: {\n PermissionButton,\n FormItem,\n ValidationObserver,\n WidgetSelect,\n /* PaymentType,\n SelectDebitAccount, */\n vSelect,\n Cleave,\n },\n name: \"PaymentForDistribution\",\n props: {\n apiCode: String,\n isUpdate: Boolean,\n\n isShow: Boolean,\n paymentId: {\n type: String,\n },\n /* bookingDetailIdDistribution: {\n type: Number,\n }, */\n dataPayment: {\n type: Object,\n nullable: true,\n },\n /* distributionId: {\n type: Number,\n }, */\n },\n data() {\n return {\n isSubmit: true,\n isViewOnly: false,\n number: {\n numeral: true,\n numeralThousandsGroupStyle: \"thousand\",\n },\n LS_Currency: [],\n listDebtAccount: [],\n PaymentMethods: [],\n PaymentTypeData: [],\n form: {\n ArPaymentId: 0,\n PaymentMethodId: null,\n PaymentDetailType: null,\n Note: \"\",\n CashierId: null,\n Amount: 0,\n CurrencyCode: \"\",\n CardNumber: \"\",\n DebitAccountId: null,\n ClientId: null,\n ExpirationDate: null,\n Bdc: null,\n },\n fields: [\n {\n key: \"type\",\n label: \"ID\",\n thStyle: { width: \"80%\", display: \"none\" },\n tdClass: \"e-td\",\n },\n {\n key: \"total\",\n label: \"ID\",\n thStyle: { width: \"20%\", display: \"none\" },\n tdClass: \"e-td\",\n },\n ],\n paymentType: \"\",\n canShowPaymentType: false,\n paymentDr: { ...paymentBase },\n paymentAmountInputExchange: 0,\n debitAccountSelected: {\n Id: null,\n ClientName: \"\",\n },\n maskExpirationDate: {\n date: true,\n datePattern: [\"m\", \"y\"],\n delimiter: \"/\",\n },\n maskCreditCard: {\n creditCard: true,\n },\n Cashiers: [],\n paymentTypeOptions: [\n /* {\n title: this.$t(\"ar_client_refund\"),\n value: \"REFUND\",\n }, */\n {\n title: this.$t(\"ar_client_payment\"),\n value: \"PAYMENT\",\n },\n ],\n listPaymentType: [],\n zoneId: [],\n paymentTypeName: null,\n TransactionCode: null,\n listClient: [],\n arId: null,\n isLoading: false,\n PaymentMethodByEvoucherInTransactionCode: null,\n PaymentMethodByVoucherInTransactionCode: null,\n isLoadingCheckVoucher: false,\n };\n },\n created() {\n /* this.getPaymentConfig(); */\n this.getConfigInfo_RCOM01();\n this.getCurrencyList();\n },\n computed: {\n // paymentTypeOptions() {\n // return [\n // { title: this.$t('golf_common_payment'), value: PaymentDetailType.Payment },\n // { title: this.$t('golf_common_refund'), value: PaymentDetailType.Refund },\n // ]\n // },\n\n baseCurrency() {\n const baseCurrency = this.LS_Currency.find((s) => s.IsBase || false);\n return (\n baseCurrency || {\n CurrencyCode: \"\",\n NoOfDec: 0,\n }\n );\n },\n baseCurrencyCode() {\n return \"CurrencyCode\" in this.baseCurrency ? this.baseCurrency.CurrencyCode : \"\";\n },\n currencyCodeSelected() {\n return this.form.CurrencyCode || \"\";\n },\n currencySelected() {\n const currencySelectedDetail = this.LS_Currency.find(\n (s) => s.Format === this.currencyCodeSelected\n );\n if (typeof currencySelectedDetail !== \"undefined\") {\n return {\n DivBase: currencySelectedDetail.DivBase || false,\n ExRate: currencySelectedDetail.ExRate || 1,\n NoOfDec: currencySelectedDetail.NoOfDec || 0,\n };\n }\n return {\n CurrencyCode: this.currencyCodeSelected,\n DivBase: false,\n ExRate: 1,\n NoOfDec: 0,\n };\n },\n totalAmountPaymentBaseCurr() {\n if (this.paymentDr) {\n return this.paymentDr.TotalAmount || 0;\n }\n return 0;\n },\n totalAmountPaymentExchange() {\n if (this.currencyCodeSelected === this.baseCurrencyCode) {\n return this.totalAmountPaymentBaseCurr;\n }\n return this.GFn_GetExchangeMoney(this.totalAmountPaymentBaseCurr, this.currencySelected);\n },\n amountRemainPayment() {\n if (this.paymentDr) {\n const receivedAmount = this.paymentDr.ReceivedAmount || 0;\n const balance = this.totalAmountPaymentBaseCurr - receivedAmount;\n return balance >= 0 ? balance : 0;\n }\n return 0;\n },\n amountRemainPaymentExchange() {\n if (this.currencyCodeSelected === this.baseCurrencyCode) {\n return this.amountRemainPayment;\n }\n return this.GFn_GetExchangeMoney(this.amountRemainPayment, this.currencySelected);\n },\n isPaymentDiffBase() {\n return this.currencyCodeSelected !== this.baseCurrencyCode;\n },\n showMoneyExchange() {\n return this.isPaymentDiffBase;\n },\n // Format Display\n amountRemainPaymentDisplay() {\n return `${this.formatPrice(this.amountRemainPayment)} ${this.baseCurrencyCode}`;\n },\n totalAmountPaymentBaseCurrDisplay() {\n return `${this.formatPrice(this.totalAmountPaymentBaseCurr)} ${this.baseCurrencyCode}`;\n },\n totalAmountPaymentExchangeDisplay() {\n return `${this.formatPrice(this.totalAmountPaymentExchange)} ${this.currencyCodeSelected}`;\n },\n totalAmountPaymentInputExchangeDisplay() {\n return `${this.formatPrice(this.paymentAmountInputExchange)} ${this.baseCurrencyCode}`;\n },\n showFormInputPaymentMethod() {\n return {\n AR: this.paymentType === PaymentMethodGroup.AR,\n VNPAY: this.paymentType === PaymentMethodGroup.VNPAY,\n\n BANK: this.paymentType === PaymentMethodGroup.BANK,\n CASH: this.paymentType === PaymentMethodGroup.CASH,\n TMT: this.paymentType === PaymentMethodGroup.TMT,\n CREDIT: this.paymentType === PaymentMethodGroup.CREDIT,\n EZTICKET: this.paymentType === PaymentMethodGroup.EZTICKET,\n EZGOLF: this.paymentType === PaymentMethodGroup.EZGOLF,\n OTHER: this.paymentType === PaymentMethodGroup.OTHER,\n CARD: this.paymentType === PaymentMethodGroup.CARD,\n QRCODE: this.paymentType === PaymentMethodGroup.QRCODE,\n ROOM: this.paymentType === PaymentMethodGroup.ROOM,\n VIP: this.paymentType === PaymentMethodGroup.VIP,\n };\n },\n },\n methods: {\n async getCurrencyList() {\n const res = await arClient.api_AR_RCR01();\n if (res.Status === \"200\") {\n this.LS_Currency = res.Data.ListCurrency;\n }\n },\n\n async getConfigInfo_RCOM01() {\n /* const response = await arClient.api_AR_RCL01();\n if (response.Status === \"200\") {\n return */ this.call_api_RMT01();\n /* } */\n },\n async call_api_RMT01() {\n await arClient\n .api_AR_RMT01({\n ZoneId: [\"24\"],\n })\n .then(async (response) => {\n if (response.Status === \"200\") {\n this.listPaymentType = response?.Data?.ListPaymentMethod;\n\n /* this.paymentTypeOptions = response?.Data?.ListPaymentMethod.map((x) => ({\n title: x.Name,\n value: x.Code,\n })); */\n }\n });\n },\n async openForm() {\n this.isLoading = true;\n \n\n this.form.CurrencyCode = this.baseCurrencyCode;\n if (this.paymentId) {\n this.form.ArPaymentId = this.paymentId;\n }\n\n if (this.dataPayment) {\n this.isViewOnly = true;\n const { PaymentMethodId } = this.dataPayment;\n\n this.form = { ...this.form, ...this.dataPayment };\n\n /* this.handleChoicePayment(\n foundPaymentMethod,\n foundPaymentMethod.PaymentMethods.find((pm) => pm.Id === PaymentMethodId)\n ); */\n } else {\n /* this.handleChoicePayment(\n this.listPaymentType.find((t) => t.ParentKeyword === \"TMT\"),\n this.listPaymentType.find((t) => t.ParentKeyword === \"TMT\").PaymentMethods[0]\n ); */\n\n this.form.CurrencyCode = this.LS_Currency.find((c) => c.Format === \"VND\").Id;\n this.form.PaymentDetailType = this.paymentTypeOptions[0]?.value;\n\n this.isViewOnly = false;\n }\n this.isLoading = false;\n },\n resetFormData() {\n /* this.paymentType = \"\";\n this.paymentTypeName = null; */\n this.$emit(\"update:isUpdatingPayment\", false);\n if (this.dataPayment) this.isViewOnly = true;\n\n this.form = { ...formBase };\n this.paymentDr = { ...paymentBase };\n this.paymentAmountExchange = 0;\n this.PaymentTypeData = [];\n },\n onSelectPaymentType(ev) {\n if (ev.value === PaymentDetailType.Payment) {\n if (this.isPaymentDiffBase) {\n if (this.form.Amount > this.amountRemainPaymentExchange) {\n if (this.form.PaymentDetailType === PaymentDetailType.Payment) {\n this.form.Amount = this.amountRemainPaymentExchange;\n }\n }\n this.paymentAmountInputExchange = this.GFn_GetBaseMoneyFromExchange(\n this.form.Amount,\n this.currencySelected\n );\n } else if (\n this.form.Amount > this.amountRemainPayment &&\n this.form.PaymentDetailType === PaymentDetailType.Payment\n ) {\n this.form.Amount = this.amountRemainPayment;\n }\n }\n },\n onSelectCurrency(ev) {\n this.paymentAmountInputExchange = this.amountRemainPayment;\n this.form.Amount = this.amountRemainPaymentExchange;\n },\n onChangeAmount(ev) {\n if (ev < 0) {\n this.form.Amount = 0;\n }\n if (this.isPaymentDiffBase) {\n if (ev > this.amountRemainPaymentExchange) {\n if (this.form.PaymentDetailType === PaymentDetailType.Payment) {\n this.form.Amount = this.amountRemainPaymentExchange;\n }\n }\n this.paymentAmountInputExchange = this.GFn_GetBaseMoneyFromExchange(\n this.form.Amount,\n this.currencySelected\n );\n } else if (\n ev > this.amountRemainPayment &&\n this.form.PaymentDetailType === PaymentDetailType.Payment\n ) {\n this.form.Amount = this.amountRemainPayment;\n }\n },\n close() {\n this.$emit(\"closePopup\", true);\n },\n handleEvent() {},\n hideModal() {\n this.$bvModal.hide(\"modal-payment-for-distribution\");\n },\n\n getPaymentMethodDefault(paymentMethods) {\n let paymentMethodDefault = null;\n paymentMethods.forEach((s) => {\n const paymentMethodList = s.PaymentMethod || [];\n paymentMethodList.forEach((s1) => {\n if (s1.Code === PaymentMethodGroup.CASH) {\n paymentMethodDefault = {\n Id: s1.Id,\n Code: s1.Code,\n };\n }\n });\n });\n return paymentMethodDefault;\n },\n calTotalAmount() {\n const totalAmount = this.paymentDr.TotalAmount || 0;\n const receivedAmount = this.paymentDr.ReceivedAmount || 0;\n const balance = totalAmount - receivedAmount;\n const total = balance >= 0 ? balance : 0;\n if (this.paymentDr) {\n return `${this.formatPrice(total)} ${this.baseCurrencyCode}`;\n }\n return `0 ${this.baseCurrencyCode}`;\n },\n async createPaymentDetail_IPM04() {\n const amount = parseFloat(this.form.Amount || \"0\");\n const paymentData = {\n AccountHolder: this.form.AccountHolder,\n TransactionCode: this.form.TransactionCode,\n PaymentDetailType: this.form.PaymentDetailType,\n Id: this.form.Id,\n ArPaymentId: this.paymentId,\n PaymentGatewayCode: \"\",\n Qrcode: \"\",\n PaymentMethodId: this.form.PaymentMethodId,\n FiscalPaymentDetailDate: new Date(),\n Amount: amount,\n Note: this.form.Note,\n CurrencyCode: this.form.CurrencyCode,\n CardNumber: this.form.CardNumber,\n\n CashierId: this.form.CashierId,\n ExpirationDate: this.createFullDataExpirationDate(this.form.ExpirationDate),\n };\n\n const dataPost = {\n PaymentDetail: {\n ...paymentData,\n },\n };\n\n if (amount < 0 || amount === 0) {\n this.showToast(\"error\", this.$t(\"golf_common_please_enter_money\"));\n return;\n }\n if (!paymentData.CurrencyCode) {\n this.showToast(\"error\", this.$t(\"golf_common_please_select_a_currency\"));\n return;\n }\n\n if (!paymentData.CashierId) {\n this.showToast(\"error\", this.$t(\"ar_client_please_select_cashier\"));\n return;\n }\n\n if (\n (this.paymentType === PaymentMethodGroup.VNPAY ||\n this.paymentType === PaymentMethodGroup.BANK) &&\n !this.form.TransactionCode\n ) {\n this.showToast(\"error\", this.$t(\"ar_client_please_select_transaction_code\"));\n return;\n }\n\n if (!this.paymentType || this.form.PaymentMethodId === null) {\n this.showToast(\"error\", this.$t(\"golf_common_please_select_payment_type\"));\n return;\n }\n if (this.paymentType === PaymentMethodGroup.AR) {\n if (!this.form.DebitAccountId) {\n this.showToast(\"error\", this.$t(\"golf_common_please_choose_debit_account\"));\n return;\n }\n }\n if (this.paymentType === PaymentMethodGroup.CARD && !this.form.CardNumber) {\n if (!this.form.DebitAccountId) {\n this.showToast(\"error\", this.$t(\"golf_common_please_enter_card_number\"));\n return;\n }\n }\n if (this.paymentType === PaymentMethodGroup.CREDIT) {\n if (!this.form.AccountHolder) {\n this.showToast(\"error\", this.$t(\"ar_client_please_select_card_owner\"));\n return;\n }\n if (!this.form.CardNumber) {\n this.showToast(\"error\", this.$t(\"golf_common_please_enter_card_number\"));\n return;\n }\n if (!this.form.ExpirationDate) {\n this.showToast(\"error\", this.$t(\"golf_common_please_enter_expiration_date\"));\n return;\n }\n }\n\n if (this.bookingDetailIdDistribution) {\n const body = {\n TotalAmount: 0,\n Code: null,\n CashierCode:\n this.form.CashierCode && this.form.CashierCode.id\n ? `${this.form.CashierCode.id}`\n : null,\n PaymentDetail: [paymentData],\n };\n } else {\n this.isSubmit = false;\n this.$emit(!this.dataPayment ? \"accept-data\" : \"accept-data-edit\", paymentData);\n setTimeout(() => {\n this.isSubmit = true;\n }, 2000);\n }\n },\n getMemberPay() {\n if (this.paymentDr) {\n return `Hóa đơn #${this.paymentDr.Id} ${this.paymentDr.FullName}`;\n }\n return \"\";\n },\n\n openModalDeletePaymentDetail(id) {\n this.$emit(\"event\", { type: \"open_modal_delete_payment_detail\", paymentDetailId: id });\n },\n handlePaymentType(type) {\n const isShow = type === \"show\";\n if (this.isViewOnly) return;\n this.canShowPaymentType = isShow;\n },\n handleChoicePayment(payment) {\n this.paymentType = payment.ParentKeyword;\n\n this.canShowPaymentType = false;\n if (\n this.paymentType !== PaymentMethodGroup.CREDIT &&\n this.paymentType !== PaymentMethodGroup.CARD\n ) {\n this.form.CardNumber = \"\";\n }\n },\n getPaymentMethodNameById(id) {\n let name = id;\n this.PaymentMethods.forEach((x) => {\n x.PaymentMethod.forEach((y) => {\n if (y.Id === id) {\n name = y.Name;\n }\n });\n });\n return name;\n },\n openSelectARAccount() {\n this.$root.$emit(\"bv::show::modal\", \"modal-select-ar\");\n },\n \n selectArAccount(arAccountData) {\n Object.keys(this.debitAccountSelected).forEach((arKey) => {\n if (arKey in arAccountData) {\n this.debitAccountSelected[arKey] = arAccountData[arKey];\n }\n });\n this.form.DebitAccountId = this.debitAccountSelected.Id;\n this.form.ClientId = this.debitAccountSelected.Id;\n },\n createFullDataExpirationDate(shortExpirationDate) {\n if (shortExpirationDate) {\n const [month, yearOld] = shortExpirationDate.split(\"/\");\n const year = this.dayjs(`${month}/01/${yearOld}`).format(\"YYYY\");\n return new Date(year, month, 0, 23, 59, 59);\n }\n return null;\n },\n GFn_GetExchangeMoney(baseMoney, { DivBase, ExRate, NoOfDec }) {\n const baseMoneyToDecimal = new Decimal(baseMoney || 0);\n let exchangeMoney = 0;\n const noOfDec = NoOfDec || 0;\n const exRate = ExRate || 1;\n if (DivBase || false) {\n exchangeMoney = Decimal.div(baseMoneyToDecimal, exRate).toFixed(noOfDec);\n } else {\n exchangeMoney = Decimal.mul(baseMoneyToDecimal, exRate).toFixed(noOfDec);\n }\n return new Decimal(exchangeMoney).mul(1).toNumber();\n },\n GFn_GetBaseMoneyFromExchange(exchangeMoney, { DivBase, ExRate }) {\n const exchangeMoneyToDecimal = new Decimal(exchangeMoney || 0);\n let baseMoney = 0;\n const noOfDec = this.baseCurrency.NoOfDec || 0;\n const exRate = ExRate || 1;\n if (DivBase || false) {\n baseMoney = Decimal.mul(exchangeMoneyToDecimal, exRate).toFixed(noOfDec);\n } else {\n baseMoney = Decimal.div(exchangeMoneyToDecimal, exRate).toFixed(noOfDec);\n }\n return new Decimal(baseMoney).mul(1).toNumber();\n },\n },\n setup() {\n return { AR_UPAD01 };\n },\n watch: {\n form: {\n handler: function (value) {},\n deep: true,\n },\n },\n};\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!./PaymentForDistribution.js?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!./PaymentForDistribution.js?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./PaymentForDistribution.vue?vue&type=template&id=51986843&\"\nimport script from \"./PaymentForDistribution.js?vue&type=script&lang=js&\"\nexport * from \"./PaymentForDistribution.js?vue&type=script&lang=js&\"\nimport style0 from \"./PaymentForDistribution.vue?vue&type=style&index=0&id=51986843&prod&lang=scss&\"\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","module.exports = false;\n","var toString = {}.toString;\n\nmodule.exports = function (it) {\n return toString.call(it).slice(8, -1);\n};\n","var global = require('../internals/global');\nvar setGlobal = require('../internals/set-global');\n\nvar SHARED = '__core-js_shared__';\nvar store = global[SHARED] || setGlobal(SHARED, {});\n\nmodule.exports = store;\n","var has = require('../internals/has');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar indexOf = require('../internals/array-includes').indexOf;\nvar hiddenKeys = require('../internals/hidden-keys');\n\nmodule.exports = function (object, names) {\n var O = toIndexedObject(object);\n var i = 0;\n var result = [];\n var key;\n for (key in O) !has(hiddenKeys, key) && has(O, key) && result.push(key);\n // Don't enum bug & hidden keys\n while (names.length > i) if (has(O, key = names[i++])) {\n ~indexOf(result, key) || result.push(key);\n }\n return result;\n};\n","export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SectionTransformTable.vue?vue&type=style&index=0&id=6dc9d4a9&prod&lang=scss&\"","var render = function () {\n var _vm$detailData;\n var _vm=this;\n var _h=_vm.$createElement;\n var _c=_vm._self._c||_h;\n\n return _c('SectionTransformTable', [_c('PaymentForDistribution', {\n attrs: {\n \"api-code\": _vm.AP_UPD01,\n \"dataPayment\": _vm.detailPaymentData,\n \"paymentId\": (_vm$detailData = _vm.detailData) === null || _vm$detailData === void 0 ? void 0 : _vm$detailData.Id\n },\n on: {\n \"accept-data\": function (value) {\n var convertedValue = Object.assign({}, value, {\n ApPaymentId: value.ArPaymentId\n });\n delete convertedValue.ArPaymentId;\n var body = {\n ApPaymentDetail: convertedValue\n };\n _vm.acceptDataSaveForBill(body);\n },\n \"accept-data-edit\": function (value) {\n var convertedValue = Object.assign({}, value, {\n ApPaymentId: value.ArPaymentId\n });\n delete convertedValue.ArPaymentId;\n var body = {\n ApPaymentDetail: convertedValue\n };\n _vm.acceptDataEditForBill(body);\n }\n }\n }), _vm.detailData ? _c('ModalListPayAp', {\n attrs: {\n \"isShow\": _vm.isShowModalListPayAp,\n \"data\": _vm.detailData\n },\n on: {\n \"refetch\": function (data) {\n return _vm.fetchDetailApPayment({\n ApPayment: {\n Id: data.data.Id\n }\n });\n },\n \"update:isShow\": function ($event) {\n _vm.isShowModalListPayAp = $event;\n },\n \"update:is-show\": function ($event) {\n _vm.isShowModalListPayAp = $event;\n }\n }\n }) : _vm._e(), _c('SearchList', {\n attrs: {\n \"title\": 'ap_client_list_pay',\n \"buttonText\": \"ar_common_search\"\n },\n on: {\n \"search\": _vm.refetchData\n }\n }, [_c('FormItems', {\n attrs: {\n \"formData\": _vm.searchVal,\n \"items\": _vm.formItems\n },\n on: {\n \"update:formData\": function ($event) {\n _vm.searchVal = $event;\n },\n \"update:form-data\": function ($event) {\n _vm.searchVal = $event;\n }\n }\n })], 1), _c('b-card', [_c('EzTable', {\n ref: \"tableRef\",\n attrs: {\n \"actions\": _vm.actions,\n \"selectionConfig\": {\n hideSelectAll: true\n },\n \"excelExport\": _vm.arClient.api_ExcelAP_RP01,\n \"excel-export-api-code\": _vm.AP_RP03,\n \"isLoading\": _vm.isLoading,\n \"columns\": _vm.listPayApColumns,\n \"dataSourceParams\": _vm.searchVal,\n \"dataSource\": _vm.arClient.api_AP_RP01\n },\n on: {\n \"action-1\": function (data) {\n return _vm.fetchDetailApPayment({\n ApPayment: {\n Id: data.data.Id\n }\n });\n },\n \"action-2\": function (data) {\n return _vm.deletePayment({\n ApPayment: {\n Id: data.data.Id\n }\n });\n },\n \"selection-changed\": _vm.onSelectionChanged\n },\n scopedSlots: _vm._u([{\n key: \"toolbar\",\n fn: function () {\n return [_c('div', {\n staticClass: \"d-flex\"\n }, [_c('PermissionButton', {\n attrs: {\n \"api-code\": _vm.AP_UP02,\n \"variant\": \"outline-primary\"\n },\n on: {\n \"click\": _vm.handleApproveListPay\n }\n }, [_c('ez-icon', {\n attrs: {\n \"icon\": \"ezAr-icon-navigation\"\n }\n }), _vm._v(\" \" + _vm._s(_vm.$t(\"ap_client_approve\")) + \" \")], 1), _c('PermissionButton', {\n staticStyle: {\n \"margin-left\": \"6px\"\n },\n attrs: {\n \"api-code\": _vm.AP_UP04,\n \"variant\": \"outline-primary\"\n },\n on: {\n \"click\": _vm.handleConfirmListPay\n }\n }, [_c('ez-icon', {\n attrs: {\n \"icon\": \"ezAr-icon-check\"\n }\n }), _vm._v(\" \" + _vm._s(_vm.$t(\"golf_common_confirm\")) + \" \")], 1)], 1)];\n },\n proxy: true\n }])\n })], 1), _c('SidebarSection', {\n attrs: {\n \"width\": \"900px\",\n \"title\": \"ap_client_detail\",\n \"isShow\": _vm.isShowSidebar\n },\n on: {\n \"update:isShow\": function ($event) {\n _vm.isShowSidebar = $event;\n },\n \"update:is-show\": function ($event) {\n _vm.isShowSidebar = $event;\n }\n }\n }, [_c('div', {\n staticClass: \"mt-1\"\n }, [_c('b-row', {\n staticClass: \"m-0 mb-1\"\n }, [_c('b-col', {\n attrs: {\n \"md\": \"6\"\n }\n }, [_c('h6', {\n staticClass: \"content-title\"\n }, [_vm._v(\" \" + _vm._s(_vm.$t(\"ar_voucher_general_information\")) + \" \")])]), _c('b-col', {\n staticClass: \"d-flex justify-content-end\",\n attrs: {\n \"md\": \"6\"\n }\n }, [_c('ez-icon', {\n staticClass: \"cursor-pointer mx-50\",\n class: {\n 'd-none': !_vm.isValidPermission(_vm.AP_UP01)\n },\n attrs: {\n \"icon\": \"ezAr-icon-edit\",\n \"size\": \"24\",\n \"color\": \"#114A9F\"\n },\n on: {\n \"click\": function ($event) {\n _vm.isShowModalListPayAp = true;\n }\n }\n })], 1)], 1), _c('GeneralInfo', {\n attrs: {\n \"leftWidth\": \"160px\",\n \"rightWidth\": \"80px\",\n \"list\": _vm.listGeneral\n }\n })], 1), _c('div', {\n staticClass: \"divider\"\n }), _c('h6', {\n staticClass: \"mb-2 mt-1 ml-1\"\n }, [_vm._v(\" \" + _vm._s(_vm.$t(\"ar_client_selected_list_account\")) + \" \")]), _c('div', {\n staticClass: \"px-1\"\n }, [_c('EzTable', {\n attrs: {\n \"toolbarConfig\": {\n disableToolbar: true\n },\n \"pageConfig\": {\n disablePagination: true\n },\n \"columns\": _vm.listAccountColumns,\n \"dataSource\": _vm.detailData.ApPaymentDistribution\n }\n })], 1), _c('div', {\n staticClass: \"divider\"\n }), _c('div', {\n staticClass: \"mb-2 mt-1 mx-1 d-flex justify-content-between\"\n }, [_c('h6', [_vm._v(\" \" + _vm._s(_vm.$t(\"ar_client_list_payment\")) + \" \")]), _c('PermissionButton', {\n attrs: {\n \"api-code\": _vm.AP_RPD01,\n \"disabled\": _vm.isFutureDate(_vm.detailData.PaymentDate),\n \"variant\": \"primary\"\n },\n on: {\n \"click\": function () {\n return _vm.handleShowPayment();\n }\n }\n }, [_c('ez-icon', {\n attrs: {\n \"icon\": \"ezAr-icon-plus-circle\"\n }\n }), _c('span', {\n staticStyle: {\n \"margin-left\": \"3px\"\n }\n }, [_vm._v(\" \" + _vm._s(_vm.$t(\"ar_client_add_pay\")))])], 1)], 1), _c('div', {\n staticClass: \"px-1 pb-3\"\n }, [_c('EzTable', {\n attrs: {\n \"toolbarConfig\": {\n disableToolbar: true\n },\n \"pageConfig\": {\n disablePagination: true\n },\n \"actions\": _vm.paymentActions,\n \"columns\": _vm.listPaymentColumns,\n \"dataSource\": _vm.detailData.ListApPaymentDetail\n },\n on: {\n \"action-1\": function (data) {\n return _vm.handleShowPayment(data.data.Id);\n },\n \"action-2\": function (data) {\n return _vm.deleteApPayment({\n ApPaymentDetail: {\n Id: data.data.Id\n }\n });\n }\n }\n })], 1)])], 1);\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ListPayAp.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ListPayAp.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./ListPayAp.vue?vue&type=template&id=41c01ee0&scoped=true&\"\nimport script from \"./ListPayAp.vue?vue&type=script&lang=js&\"\nexport * from \"./ListPayAp.vue?vue&type=script&lang=js&\"\nimport style0 from \"./ListPayAp.vue?vue&type=style&index=0&id=41c01ee0&prod&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 \"41c01ee0\",\n null\n \n)\n\nexport default component.exports","var global = require('../internals/global');\nvar isObject = require('../internals/is-object');\n\nvar document = global.document;\n// typeof document.createElement is 'object' in old IE\nvar EXISTS = isObject(document) && isObject(document.createElement);\n\nmodule.exports = function (it) {\n return EXISTS ? document.createElement(it) : {};\n};\n","var global = require('../internals/global');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\n\nmodule.exports = function (key, value) {\n try {\n createNonEnumerableProperty(global, key, value);\n } catch (error) {\n global[key] = value;\n } return value;\n};\n","module.exports = {};\n","module.exports = function (exec) {\n try {\n return !!exec();\n } catch (error) {\n return true;\n }\n};\n","var path = require('../internals/path');\nvar global = require('../internals/global');\n\nvar aFunction = function (variable) {\n return typeof variable == 'function' ? variable : undefined;\n};\n\nmodule.exports = function (namespace, method) {\n return arguments.length < 2 ? aFunction(path[namespace]) || aFunction(global[namespace])\n : path[namespace] && path[namespace][method] || global[namespace] && global[namespace][method];\n};\n","'use strict';\nvar nativePropertyIsEnumerable = {}.propertyIsEnumerable;\nvar getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n\n// Nashorn ~ JDK8 bug\nvar NASHORN_BUG = getOwnPropertyDescriptor && !nativePropertyIsEnumerable.call({ 1: 2 }, 1);\n\n// `Object.prototype.propertyIsEnumerable` method implementation\n// https://tc39.github.io/ecma262/#sec-object.prototype.propertyisenumerable\nexports.f = NASHORN_BUG ? function propertyIsEnumerable(V) {\n var descriptor = getOwnPropertyDescriptor(this, V);\n return !!descriptor && descriptor.enumerable;\n} : nativePropertyIsEnumerable;\n","var aFunction = require('../internals/a-function');\nvar toObject = require('../internals/to-object');\nvar IndexedObject = require('../internals/indexed-object');\nvar toLength = require('../internals/to-length');\n\n// `Array.prototype.{ reduce, reduceRight }` methods implementation\nvar createMethod = function (IS_RIGHT) {\n return function (that, callbackfn, argumentsLength, memo) {\n aFunction(callbackfn);\n var O = toObject(that);\n var self = IndexedObject(O);\n var length = toLength(O.length);\n var index = IS_RIGHT ? length - 1 : 0;\n var i = IS_RIGHT ? -1 : 1;\n if (argumentsLength < 2) while (true) {\n if (index in self) {\n memo = self[index];\n index += i;\n break;\n }\n index += i;\n if (IS_RIGHT ? index < 0 : length <= index) {\n throw TypeError('Reduce of empty array with no initial value');\n }\n }\n for (;IS_RIGHT ? index >= 0 : length > index; index += i) if (index in self) {\n memo = callbackfn(memo, self[index], index, O);\n }\n return memo;\n };\n};\n\nmodule.exports = {\n // `Array.prototype.reduce` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.reduce\n left: createMethod(false),\n // `Array.prototype.reduceRight` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.reduceright\n right: createMethod(true)\n};\n","var check = function (it) {\n return it && it.Math == Math && it;\n};\n\n// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028\nmodule.exports =\n // eslint-disable-next-line no-undef\n check(typeof globalThis == 'object' && globalThis) ||\n check(typeof window == 'object' && window) ||\n check(typeof self == 'object' && self) ||\n check(typeof global == 'object' && global) ||\n // eslint-disable-next-line no-new-func\n (function () { return this; })() || Function('return this')();\n","var render = function () {\n var _vm=this;\n var _h=_vm.$createElement;\n var _c=_vm._self._c||_h;\n\n return _c('validation-observer', {\n ref: \"observerRef\"\n }, [_c('div', {\n staticClass: \"p-1\"\n }, [_c('div', {\n staticClass: \"row\"\n }, _vm._l(_vm.itemsConverted, function (item, index) {\n return _vm.items.length > 0 && !item.hide ? _c('div', {\n class: item.wrapperClass || _vm.defaultWrapperClass\n }, [_c('FormItem', _vm._b({\n attrs: {\n \"value\": _vm.formData[item.name]\n },\n on: {\n \"input\": function (v) {\n return _vm.updateFormData(item.name, v);\n }\n }\n }, 'FormItem', item, false))], 1) : _vm._e();\n }), 0)])]);\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import WidgetSelect from \"./components/Select/WidgetSelect.vue\";\nimport WidgetString from \"./components/String/WidgetString.vue\";\nimport WidgetDateTime from \"./components/DateTime/WidgetDatetime.vue\";\n\nimport FormItem from \"./components/FormItem/FormItem.vue\";\nimport { required, max, min, regex, minValue } from \"@validations\";\nimport _ from \"lodash\";\n\nimport { ValidationObserver, ValidationProvider, extend } from \"vee-validate\";\nimport { BFormGroup, BFormInput } from \"bootstrap-vue\";\nimport { Fragment } from \"vue-fragment\";\nimport { defineComponent } from \"@vue/composition-api\";\n\nexport default defineComponent({\n name: \"FormItems\",\n props: {\n disabled: Boolean,\n formClass: String,\n formData: {\n type: Object,\n default() {\n return {};\n },\n required: true,\n },\n items: {\n type: Array,\n required: true,\n },\n numberOfCol: {\n type: Number,\n },\n },\n data() {\n return {\n required,\n max,\n min,\n regex,\n };\n },\n components: {\n Fragment,\n WidgetDateTime,\n WidgetSelect,\n WidgetString,\n ValidationObserver,\n ValidationProvider,\n BFormGroup,\n BFormInput,\n FormItem,\n },\n watch: {\n formData: {\n handler: function (value) {\n console.log(value, \"5333\");\n if (value) {\n const temp = { ...value };\n this.items.forEach((item) => {\n // handle dateRange value\n if (\n item.rangeData &&\n Array.isArray(item.rangeData) &&\n typeof item.rangeData[0] === \"string\"\n ) {\n if (temp[item.name]) {\n temp[item.rangeData[0]] = temp[item.name].startDate;\n temp[item.rangeData[1]] = this.formatEndDate(temp[item.name].endDate);\n delete temp[item.name];\n this.$emit(\"update:formData\", temp);\n } else if (\n temp[item.rangeData[0]] &&\n temp[item.rangeData[1]] &&\n !temp[item.name] &&\n typeof temp[item.name] === \"object\"\n ) {\n delete temp[item.name];\n delete temp[item.rangeData[0]];\n delete temp[item.rangeData[1]];\n this.$emit(\"update:formData\", temp);\n }\n }\n });\n }\n },\n deep: true,\n },\n },\n created() {\n const temp = { ...this.formData };\n this.items.forEach((item) => {\n if (item.type === \"date\" && item.defaultValue && item.rangeData) {\n item.rangeData.forEach((v, index) => {\n temp[v] = item.defaultValue[index];\n });\n }\n });\n\n /* this.$emit(\"update:formData\",temp) */\n },\n methods: {\n updateFormData(name, v) {\n console.log(name, v, \"1066\");\n this.$emit(\"update:formData\", { ...this.formData, [`${name}`]: v });\n this.$emit(\"input-change\", name, v);\n },\n validate() {\n return this.$refs.observerRef.validate();\n },\n },\n computed: {\n itemsConverted() {\n return this.items?.map((item) => {\n let temp = { ...item };\n const tempRules = { ...item.rules };\n if (item.required) {\n tempRules[\"required\"] = item.required;\n /* if (item.rules) {\n temp[\"rules\"] = `required|${item.rules}`;\n } */\n }\n if (item.pattern) {\n tempRules[\"pattern\"] = true;\n }\n\n if (item.customValidate) {\n tempRules[\"customValidate\"] = true;\n }\n if (item.rules) {\n /* temp[\"rules\"] = item.rules; */\n }\n if (this.disabled) {\n temp[\"disabled\"] = true;\n }\n temp[\"rules\"] = { ...tempRules };\n return temp;\n });\n },\n defaultWrapperClass() {\n return this.numberOfCol ? 12 / this.numberOfCol : \"col-6\";\n },\n },\n});\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!./FormItems.js?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!./FormItems.js?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./FormItems.vue?vue&type=template&id=730a6938&\"\nimport script from \"./FormItems.js?vue&type=script&lang=js&\"\nexport * from \"./FormItems.js?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","export * from \"-!../../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./WidgetString.vue?vue&type=style&index=0&id=2ec64508&prod&lang=scss&\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ListPayAp.vue?vue&type=style&index=0&id=41c01ee0&prod&lang=scss&scoped=true&\"","var has = require('../internals/has');\nvar ownKeys = require('../internals/own-keys');\nvar getOwnPropertyDescriptorModule = require('../internals/object-get-own-property-descriptor');\nvar definePropertyModule = require('../internals/object-define-property');\n\nmodule.exports = function (target, source) {\n var keys = ownKeys(source);\n var defineProperty = definePropertyModule.f;\n var getOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f;\n for (var i = 0; i < keys.length; i++) {\n var key = keys[i];\n if (!has(target, key)) defineProperty(target, key, getOwnPropertyDescriptor(source, key));\n }\n};\n","var shared = require('../internals/shared');\nvar uid = require('../internals/uid');\n\nvar keys = shared('keys');\n\nmodule.exports = function (key) {\n return keys[key] || (keys[key] = uid(key));\n};\n","export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ModalListPayAp.vue?vue&type=style&index=0&id=2a5720d9&prod&lang=scss&\"","// toObject with fallback for non-array-like ES3 strings\nvar IndexedObject = require('../internals/indexed-object');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\nmodule.exports = function (it) {\n return IndexedObject(requireObjectCoercible(it));\n};\n"],"sourceRoot":""}