{"version":3,"sources":["webpack://cmpnts/webpack/universalModuleDefinition","webpack://cmpnts/./node_modules/@soda/get-current-script/index.js","webpack://cmpnts/./node_modules/axios/index.js","webpack://cmpnts/./node_modules/axios/lib/adapters/xhr.js","webpack://cmpnts/./node_modules/axios/lib/axios.js","webpack://cmpnts/./node_modules/axios/lib/cancel/Cancel.js","webpack://cmpnts/./node_modules/axios/lib/cancel/CancelToken.js","webpack://cmpnts/./node_modules/axios/lib/cancel/isCancel.js","webpack://cmpnts/./node_modules/axios/lib/core/Axios.js","webpack://cmpnts/./node_modules/axios/lib/core/InterceptorManager.js","webpack://cmpnts/./node_modules/axios/lib/core/buildFullPath.js","webpack://cmpnts/./node_modules/axios/lib/core/createError.js","webpack://cmpnts/./node_modules/axios/lib/core/dispatchRequest.js","webpack://cmpnts/./node_modules/axios/lib/core/enhanceError.js","webpack://cmpnts/./node_modules/axios/lib/core/mergeConfig.js","webpack://cmpnts/./node_modules/axios/lib/core/settle.js","webpack://cmpnts/./node_modules/axios/lib/core/transformData.js","webpack://cmpnts/./node_modules/axios/lib/defaults.js","webpack://cmpnts/./node_modules/axios/lib/helpers/bind.js","webpack://cmpnts/./node_modules/axios/lib/helpers/buildURL.js","webpack://cmpnts/./node_modules/axios/lib/helpers/combineURLs.js","webpack://cmpnts/./node_modules/axios/lib/helpers/cookies.js","webpack://cmpnts/./node_modules/axios/lib/helpers/isAbsoluteURL.js","webpack://cmpnts/./node_modules/axios/lib/helpers/isAxiosError.js","webpack://cmpnts/./node_modules/axios/lib/helpers/isURLSameOrigin.js","webpack://cmpnts/./node_modules/axios/lib/helpers/normalizeHeaderName.js","webpack://cmpnts/./node_modules/axios/lib/helpers/parseHeaders.js","webpack://cmpnts/./node_modules/axios/lib/helpers/spread.js","webpack://cmpnts/./node_modules/axios/lib/utils.js","webpack://cmpnts/./node_modules/numbro/dist/numbro.min.js","webpack://cmpnts/external {\"commonjs\":\"vue\",\"commonjs2\":\"vue\",\"root\":\"Vue\"}","webpack://cmpnts/webpack/bootstrap","webpack://cmpnts/webpack/runtime/compat get default export","webpack://cmpnts/webpack/runtime/define property getters","webpack://cmpnts/webpack/runtime/hasOwnProperty shorthand","webpack://cmpnts/webpack/runtime/make namespace object","webpack://cmpnts/webpack/runtime/publicPath","webpack://cmpnts/./node_modules/@vue/cli-service/lib/commands/build/setPublicPath.js","webpack://cmpnts/./src/components/capital-call-form/capital-call-form.vue","webpack://cmpnts/./node_modules/date-fns/esm/_lib/requiredArgs/index.js","webpack://cmpnts/./node_modules/date-fns/esm/toDate/index.js","webpack://cmpnts/./node_modules/date-fns/esm/isValid/index.js","webpack://cmpnts/./node_modules/date-fns/esm/locale/en-US/_lib/formatDistance/index.js","webpack://cmpnts/./node_modules/date-fns/esm/locale/_lib/buildFormatLongFn/index.js","webpack://cmpnts/./node_modules/date-fns/esm/locale/en-US/_lib/formatLong/index.js","webpack://cmpnts/./node_modules/date-fns/esm/locale/en-US/_lib/formatRelative/index.js","webpack://cmpnts/./node_modules/date-fns/esm/locale/_lib/buildLocalizeFn/index.js","webpack://cmpnts/./node_modules/date-fns/esm/locale/en-US/_lib/localize/index.js","webpack://cmpnts/./node_modules/date-fns/esm/locale/_lib/buildMatchPatternFn/index.js","webpack://cmpnts/./node_modules/date-fns/esm/locale/_lib/buildMatchFn/index.js","webpack://cmpnts/./node_modules/date-fns/esm/locale/en-US/_lib/match/index.js","webpack://cmpnts/./node_modules/date-fns/esm/locale/en-US/index.js","webpack://cmpnts/./node_modules/date-fns/esm/_lib/toInteger/index.js","webpack://cmpnts/./node_modules/date-fns/esm/addMilliseconds/index.js","webpack://cmpnts/./node_modules/date-fns/esm/subMilliseconds/index.js","webpack://cmpnts/./node_modules/date-fns/esm/_lib/addLeadingZeros/index.js","webpack://cmpnts/./node_modules/date-fns/esm/_lib/format/lightFormatters/index.js","webpack://cmpnts/./node_modules/date-fns/esm/_lib/getUTCDayOfYear/index.js","webpack://cmpnts/./node_modules/date-fns/esm/_lib/startOfUTCISOWeek/index.js","webpack://cmpnts/./node_modules/date-fns/esm/_lib/getUTCISOWeekYear/index.js","webpack://cmpnts/./node_modules/date-fns/esm/_lib/startOfUTCISOWeekYear/index.js","webpack://cmpnts/./node_modules/date-fns/esm/_lib/getUTCISOWeek/index.js","webpack://cmpnts/./node_modules/date-fns/esm/_lib/startOfUTCWeek/index.js","webpack://cmpnts/./node_modules/date-fns/esm/_lib/getUTCWeekYear/index.js","webpack://cmpnts/./node_modules/date-fns/esm/_lib/startOfUTCWeekYear/index.js","webpack://cmpnts/./node_modules/date-fns/esm/_lib/getUTCWeek/index.js","webpack://cmpnts/./node_modules/date-fns/esm/_lib/format/formatters/index.js","webpack://cmpnts/./node_modules/date-fns/esm/_lib/format/longFormatters/index.js","webpack://cmpnts/./node_modules/date-fns/esm/_lib/getTimezoneOffsetInMilliseconds/index.js","webpack://cmpnts/./node_modules/date-fns/esm/_lib/protectedTokens/index.js","webpack://cmpnts/./node_modules/date-fns/esm/format/index.js","webpack://cmpnts/./src/components/capital-call-form/utils.ts","webpack://cmpnts/./src/components/capital-call-form/logic/use_capital_call.ts","webpack://cmpnts/./src/components/inputs/currency-input.vue","webpack://cmpnts/./src/components/inputs/number-input.vue","webpack://cmpnts/./src/composables/use_focus.ts","webpack://cmpnts/./src/components/inputs/number-input.vue?1c48","webpack://cmpnts/./src/components/inputs/number-input.vue?efa5","webpack://cmpnts/./src/components/inputs/currency-input.vue?2f7e","webpack://cmpnts/./src/components/inputs/currency-input.vue?a89e","webpack://cmpnts/./src/components/inputs/currency-with-selector-input.vue","webpack://cmpnts/./src/components/inputs/currency-with-selector-input.vue?f72a","webpack://cmpnts/./src/components/inputs/currency-with-selector-input.vue?c797","webpack://cmpnts/./src/components/inputs/date-input.vue","webpack://cmpnts/./src/components/inputs/v-input.vue","webpack://cmpnts/./src/components/inputs/v-input.vue?d50a","webpack://cmpnts/./src/components/inputs/v-input.vue?5b05","webpack://cmpnts/./src/components/inputs/date-input.vue?62d2","webpack://cmpnts/./src/components/inputs/date-input.vue?793f","webpack://cmpnts/./src/components/inputs/input-group.vue","webpack://cmpnts/./src/components/inputs/input-group.vue?6a9a","webpack://cmpnts/./src/components/inputs/input-group.vue?6823","webpack://cmpnts/./src/components/inputs/dollar-symbol-for-input.vue","webpack://cmpnts/./src/components/inputs/dollar-symbol-for-input.vue?82ff","webpack://cmpnts/./src/components/inputs/percent-symbol-for-input.vue","webpack://cmpnts/./src/components/inputs/percent-symbol-for-input.vue?9a47","webpack://cmpnts/./src/components/inputs/percent-input.vue","webpack://cmpnts/./src/components/inputs/percent-input.vue?d5f5","webpack://cmpnts/./src/components/inputs/percent-input.vue?77cd","webpack://cmpnts/./src/components/inputs/radio-group.vue","webpack://cmpnts/./src/components/inputs/radio-group.vue?ed3d","webpack://cmpnts/./src/components/inputs/radio-group.vue?ca39","webpack://cmpnts/./src/components/inputs/cancel-button.vue","webpack://cmpnts/./src/components/inputs/cancel-button.vue?3f3a","webpack://cmpnts/./src/components/inputs/submit-button.vue","webpack://cmpnts/./src/components/shared/v-loader.vue","webpack://cmpnts/./src/components/shared/v-loader.vue?21a3","webpack://cmpnts/./src/components/inputs/submit-button.vue?c8c0","webpack://cmpnts/./src/components/inputs/submit-button.vue?60e3","webpack://cmpnts/./src/components/inputs/textarea-input.vue","webpack://cmpnts/./src/components/inputs/textarea-input.vue?7d9c","webpack://cmpnts/./src/components/inputs/textarea-input.vue?5795","webpack://cmpnts/./src/components/shared/v-icon.vue","webpack://cmpnts/./src/components/shared/v-icon.vue?1f45","webpack://cmpnts/./src/components/shared/v-icon.vue?9dbd","webpack://cmpnts/./src/components/shared/v-td.vue","webpack://cmpnts/./src/components/shared/v-td.vue?2762","webpack://cmpnts/./src/utils/rails.ts","webpack://cmpnts/./src/utils/state.ts","webpack://cmpnts/./src/components/capital-call-form/capital-call-form.vue?dcab","webpack://cmpnts/./src/components/capital-call-form/capital-call-form.vue?6bde","webpack://cmpnts/./src/components/disbursement-form/disbursement-form.vue","webpack://cmpnts/./src/components/disbursement-form/use_disbursement.ts","webpack://cmpnts/./src/components/disbursement-form/disbursement-form.vue?ab9b","webpack://cmpnts/./src/components/disbursement-form/disbursement-form.vue?a06e","webpack://cmpnts/./src/components/fee-form/fee-form.vue","webpack://cmpnts/./src/components/fee-form/use_fee.ts","webpack://cmpnts/./src/components/fee-form/fee-form.vue?d5d6","webpack://cmpnts/./src/components/fee-form/fee-form.vue?cc3a","webpack://cmpnts/./src/components/inline-edit/inline-edit.vue","webpack://cmpnts/./src/utils/formatters.ts","webpack://cmpnts/./src/utils/validators.ts","webpack://cmpnts/./src/components/inline-edit/inline-edit.vue?27f8","webpack://cmpnts/./src/components/inline-edit/inline-edit.vue?9f41"],"names":["root","factory","exports","module","require","define","amd","self","this","__WEBPACK_EXTERNAL_MODULE__507__","getCurrentScript","descriptor","Object","getOwnPropertyDescriptor","document","currentScript","get","Error","err","pageSource","inlineScriptSourceRegExp","inlineScriptSource","ieStackRegExp","ffStackRegExp","stackDetails","exec","stack","scriptLocation","line","currentLocation","location","href","replace","hash","scripts","getElementsByTagName","documentElement","outerHTML","RegExp","trim","i","length","readyState","src","innerHTML","utils","settle","cookies","buildURL","buildFullPath","parseHeaders","isURLSameOrigin","createError","config","Promise","resolve","reject","requestData","data","requestHeaders","headers","isFormData","request","XMLHttpRequest","auth","username","password","unescape","encodeURIComponent","Authorization","btoa","fullPath","baseURL","url","open","method","toUpperCase","params","paramsSerializer","timeout","onreadystatechange","status","responseURL","indexOf","responseHeaders","getAllResponseHeaders","responseData","responseType","response","responseText","statusText","onabort","onerror","ontimeout","timeoutErrorMessage","isStandardBrowserEnv","xsrfValue","withCredentials","xsrfCookieName","read","undefined","xsrfHeaderName","forEach","val","key","toLowerCase","setRequestHeader","isUndefined","e","onDownloadProgress","addEventListener","onUploadProgress","upload","cancelToken","promise","then","cancel","abort","send","bind","Axios","mergeConfig","defaults","createInstance","defaultConfig","context","instance","prototype","extend","axios","create","instanceConfig","Cancel","CancelToken","isCancel","all","promises","spread","isAxiosError","default","message","toString","__CANCEL__","executor","TypeError","resolvePromise","token","reason","throwIfRequested","source","c","value","InterceptorManager","dispatchRequest","interceptors","arguments","chain","interceptor","unshift","fulfilled","rejected","push","shift","getUri","handlers","use","eject","id","fn","h","isAbsoluteURL","combineURLs","requestedURL","enhanceError","code","error","transformData","throwIfCancellationRequested","transformRequest","merge","common","adapter","transformResponse","toJSON","name","description","number","fileName","lineNumber","columnNumber","config1","config2","valueFromConfig2Keys","mergeDeepPropertiesKeys","defaultToConfig2Keys","directMergeKeys","getMergedValue","target","isPlainObject","isArray","slice","mergeDeepProperties","prop","axiosKeys","concat","otherKeys","keys","filter","validateStatus","fns","normalizeHeaderName","DEFAULT_CONTENT_TYPE","setContentTypeIfUnset","getDefaultAdapter","process","call","isArrayBuffer","isBuffer","isStream","isFile","isBlob","isArrayBufferView","buffer","isURLSearchParams","isObject","JSON","stringify","parse","maxContentLength","maxBodyLength","thisArg","args","Array","apply","encode","serializedParams","parts","v","isDate","toISOString","join","hashmarkIndex","relativeURL","write","expires","path","domain","secure","cookie","isNumber","Date","toGMTString","isString","match","decodeURIComponent","remove","now","test","payload","originURL","msie","navigator","userAgent","urlParsingNode","createElement","resolveURL","setAttribute","protocol","host","search","hostname","port","pathname","charAt","window","requestURL","parsed","normalizedName","ignoreDuplicateOf","split","substr","callback","arr","constructor","FormData","result","ArrayBuffer","isView","getPrototypeOf","isFunction","pipe","URLSearchParams","str","product","obj","l","hasOwnProperty","assignValue","a","b","stripBOM","content","charCodeAt","o","u","s","t","r","n","1","T","C","Symbol","iterator","U","Math","ceil","R","floor","I","$","G","V","q","Z","z","W","H","Y","K","J","String","X","Q","ee","f","p","m","g","A","valueOf","y","d","w","S","O","x","N","B","prefix","groupSize","secondaryGroupSize","groupSeparator","decimalSeparator","fractionGroupSize","fractionGroupSeparator","suffix","M","_isBigNumber","substring","j","DEBUG","D","reverse","F","k","E","splice","_","L","pop","P","clone","ROUND_UP","ROUND_DOWN","ROUND_CEIL","ROUND_FLOOR","ROUND_HALF_UP","ROUND_HALF_DOWN","ROUND_HALF_EVEN","ROUND_HALF_CEIL","ROUND_HALF_FLOOR","EUCLID","set","crypto","getRandomValues","randomBytes","DECIMAL_PLACES","ROUNDING_MODE","EXPONENTIAL_AT","RANGE","CRYPTO","MODULO_MODE","POW_PRECISION","FORMAT","ALPHABET","isBigNumber","maximum","max","lt","minimum","min","gt","random","Uint32Array","copy","sum","plus","pow","NaN","isNaN","absoluteValue","abs","comparedTo","decimalPlaces","dp","dividedBy","div","dividedToIntegerBy","idiv","exponentiatedBy","isInteger","mod","times","integerValue","isEqualTo","eq","isFinite","isGreaterThan","isGreaterThanOrEqualTo","gte","isLessThan","isLessThanOrEqualTo","lte","isNegative","isPositive","isZero","minus","modulo","multipliedBy","negated","precision","sd","shiftedBy","squareRoot","sqrt","toExponential","toFixed","toFormat","toFraction","toNumber","toPrecision","toStringTag","for","BigNumber","2","languageTag","delimiters","thousands","decimal","abbreviations","thousand","million","billion","trillion","spaceSeparated","ordinal","bytes","binarySuffixes","decimalSuffixes","currency","symbol","position","currencyFormat","thousandSeparated","totalLength","spaceSeparatedCurrency","formats","fourDigits","fullWithTwoDecimals","output","mantissa","fullWithTwoDecimalsNoCurrency","fullWithNoDecimals","3","next","done","return","characteristic","forceAverage","average","optionalMantissa","negative","forceSign","roundingFunction","round","spaceSeparatedAbbreviation","currentBytes","general","scale","suffixes","marker","binary","parseFormat","validateFormat","postfix","currentCurrencyDefaultFormat","currentCurrency","assign","currencyPosition","currencySymbol","lowPrecision","providedFormat","state","_value","currentPercentageDefaultFormat","prefixSymbol","currentByteDefaultFormat","base","currentTimeDefaultFormat","currentOrdinalDefaultFormat","currentOrdinal","numbro","currentDelimiters","thousandsSize","currentDefaults","hasZeroFormat","getZeroFormat","optionalCharacteristic","trimMantissa","exponential","abbreviation","mantissaPrecision","currentAbbreviations","characteristicPrecision","index","format","getByteUnit","getBinaryByteUnit","getDecimalByteUnit","formatOrDefault","4","languages","currentLanguage","ordinalFormat","byteFormat","percentageFormat","timeFormat","setDefaults","setZeroFormat","languageData","registerLanguage","validateLanguage","setLanguage","find","5","loadLanguagesInNode","console","6","isNumbro","add","subtract","multiply","divide","difference","7","enumerable","configurable","writable","defineProperty","unformat","version","language","zeroFormat","defaultFormat","defaultCurrencyFormat","validate","8","9","factor","parseFloat","sort","10","from","type","validValues","restriction","mandatory","restrictions","children","timeDefaults","map","reduce","validateInput","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","__webpack_modules__","getter","__esModule","definition","class","resetForm","submit","saving","is_submitting","is_edit","options","priorOptions","capital_call","prior","label","placeholder","date","schedule_date","notes","wiring_instructions","title","scope","updateCapitalCallCalledType","entered_capital_amount","updateCapitalCallCalled","$event","entered_management_fees_amount","entered_other_fees_amount","updateCapitalCallOtherFees","indeterminate","allTransfersIndeterminate","checked","disabled","th","transfers","transfer","is_active","style","capital","management_fees","other_fees","total_called","total_commitment_remaining","totals","requiredArgs","required","toDate","argument","argStr","getTime","warn","isValid","dirtyDate","formatDistanceLocale","lessThanXSeconds","one","other","xSeconds","halfAMinute","lessThanXMinutes","xMinutes","aboutXHours","xHours","xDays","aboutXWeeks","xWeeks","aboutXMonths","xMonths","aboutXYears","xYears","overXYears","almostXYears","formatDistance","count","addSuffix","comparison","buildFormatLongFn","dirtyOptions","width","defaultWidth","dateFormats","full","long","medium","short","timeFormats","dateTimeFormats","formatLong","time","dateTime","formatRelativeLocale","lastWeek","yesterday","today","tomorrow","nextWeek","formatRelative","_date","_baseDate","_options","buildLocalizeFn","dirtyIndex","valuesArray","formattingValues","defaultFormattingWidth","_defaultWidth","_width","values","argumentCallback","eraValues","narrow","abbreviated","wide","quarterValues","monthValues","dayValues","dayPeriodValues","am","pm","midnight","noon","morning","afternoon","evening","night","formattingDayPeriodValues","ordinalNumber","dirtyNumber","_dirtyOptions","Number","rem100","localize","era","quarter","month","day","dayPeriod","buildMatchPatternFn","dirtyString","string","matchResult","matchPattern","matchedString","parseResult","parsePattern","valueCallback","rest","buildMatchFn","matchPatterns","defaultMatchWidth","parsePatterns","defaultParseWidth","findIndex","pattern","findKey","object","predicate","array","matchOrdinalNumberPattern","parseOrdinalNumberPattern","matchEraPatterns","parseEraPatterns","any","matchQuarterPatterns","parseQuarterPatterns","matchMonthPatterns","parseMonthPatterns","matchDayPatterns","parseDayPatterns","matchDayPeriodPatterns","parseDayPeriodPatterns","parseInt","locale","weekStartsOn","firstWeekContainsDate","toInteger","addMilliseconds","dirtyAmount","timestamp","amount","subMilliseconds","addLeadingZeros","targetLength","sign","formatters","signedYear","getUTCFullYear","year","getUTCMonth","getUTCDate","dayPeriodEnumValue","getUTCHours","getUTCMinutes","getUTCSeconds","numberOfDigits","milliseconds","getUTCMilliseconds","fractionalSeconds","MILLISECONDS_IN_DAY","getUTCDayOfYear","setUTCMonth","setUTCHours","startOfYearTimestamp","startOfUTCISOWeek","getUTCDay","diff","setUTCDate","getUTCISOWeekYear","fourthOfJanuaryOfNextYear","setUTCFullYear","startOfNextYear","fourthOfJanuaryOfThisYear","startOfThisYear","startOfUTCISOWeekYear","fourthOfJanuary","MILLISECONDS_IN_WEEK","getUTCISOWeek","startOfUTCWeek","localeWeekStartsOn","defaultWeekStartsOn","RangeError","getUTCWeekYear","localeFirstWeekContainsDate","defaultFirstWeekContainsDate","firstWeekOfNextYear","firstWeekOfThisYear","startOfUTCWeekYear","firstWeek","getUTCWeek","dayPeriodEnum","unit","lightFormatters","signedWeekYear","weekYear","twoDigitYear","isoWeekYear","week","isoWeek","dayOfYear","dayOfWeek","localDayOfWeek","isoDayOfWeek","hours","_localize","originalDate","_originalDate","timezoneOffset","getTimezoneOffset","formatTimezoneWithOptionalMinutes","formatTimezone","formatTimezoneShort","offset","dirtyDelimiter","absOffset","minutes","delimiter","dateLongFormatter","timeLongFormatter","dateTimeLongFormatter","dateTimeFormat","datePattern","timePattern","longFormatters","getTimezoneOffsetInMilliseconds","utcDate","UTC","getFullYear","getMonth","getDate","getHours","getMinutes","getSeconds","getMilliseconds","protectedDayOfYearTokens","protectedWeekYearTokens","isProtectedDayOfYearToken","isProtectedWeekYearToken","throwProtectedError","input","formattingTokensRegExp","longFormattingTokensRegExp","escapedStringRegExp","doubleQuoteRegExp","unescapedLatinCharacterRegExp","dirtyFormatStr","formatStr","formatterOptions","firstCharacter","longFormatter","cleanEscapedString","formatter","useAdditionalWeekYearTokens","useAdditionalDayOfYearTokens","formatNumber","unformatted","lang","selectCurrencyLanguage","parseDate","dateObj","parseNumber","roundDecimal","sumProp","acc","cur","currencies","AED","AUD","BRL","CAD","CHF","CLP","ETB","HKD","IDR","ILS","INR","JPY","NZD","QAR","SEK","VND","ZAR","GBP","EUR","SGD","USD","reactive","computed","renderTotals","makeCapitalCall","toDateString","makeTransfers","commitment","ownership_percentage","commitment_amount","capital_amount","commitment_remaining","fee_amount","other_fee_amount","management_fee_percentage","carried_interest_percentage","preferred_return_percentage","total_profits_realized","raw_total_profits_realized","calculateTransferTotalCalled","calculateTransferTotalCommitmentRemaining","calculateTransferValues","called","toCall","selected_capital_type","fund_total_capital_committed","toManagementFee","cCapitalBeforeFees","cManagementFees","cCapital","cOtherFees","cTotalCalled","cCommitmentRemaining","calculateAndSetTransferValues","macros","updateCapitalCall","makeUpdateTransferProp","toggleTransferIsActive","bool","deleteProps","props","asCapitalCallPayload","payload_capital_call_transfers_attributes","idx","toRaw","transfers_json","protected_attrs","raw_capital_call","capital_call_json","include_fees","fee_percentage_of_commitment","other_fee_type","capital_call_transfers_attributes","useCapitalCall","updateTransferCapital","updateTransferManagementFees","updateTransferOtherFees","transfersWithChanges","transaction_total","modelValue","displayValue","blur","focus","requireNumber","useFocus","is_focused","ref","evt","keysAllowed","keyPressed","includes","preventDefault","defineComponent","Boolean","emit","toRefs","rawValue","asString","asNumber","components","NumberInput","CurrencyInput","Function","newValue","VInput","script","render","option","choose","activeIndex","selectedIndex","xmlns","viewBox","fill","aria-hidden","fill-rule","clip-rule","stroke","stroke-width","transform","cx","cy","VLoader","rows","stroke-linecap","stroke-linejoin","useRailsRequest","csrf_token","querySelector","getAttribute","useState","is_loading","is_ready","has_errors","setState","errors","form_url","success_url","VIcon","VTd","InputGroup","CurrencyWithSelectorInput","DateInput","PercentInput","RadioGroup","CancelButton","SubmitButton","TextareaInput","DollarSymbol","PercentSymbol","makeUpdateCapitalCallInput","updateCapitalCallManagementFees","activeTransfersCount","allTransfersChecked","toggleAllTransfersActive","toggleTransferIsActiveAnd","toggleAllTransferIsActiveAnd","methods","makeConfirmMessage","names","confirmed","withChanges","investorNames","confirmMessage","requiresConfirmation","confirm","utf8","authenticity_token","_method","_res","catch","attr","alert","disbursement","updateDisbursementCalled","updateDisbursementManagementFees","updateDisbursementOtherFees","makeDisbursement","ownership_without_fees_by_called_amount","calculateTransferTotalProfitsRealized","carried_interest","toDisburse","toCarriedInterest","amount_to_disburse_before_carried_interest","total_profits_realized_before_fees","amount_after_commitment_and_preferred_return","cCarriedInterest","cTotalDisbursed","cTotalProfitsRealized","updateDisbursement","hurdle","asDisbursementPayload","payload_disbursement_transfers_attributes","raw_disbursement","disbursement_json","disbursement_transfers_attributes","useDisbursement","makeUpdateDisbursementInput","fee","updateFeeManagementFees","updateFeeOtherFees","makeFee","updateFee","asFeePayload","payload_fee_transfers_attributes","raw_fee","fee_json","transfers_attributes","useFee","makeUpdateFeeInput","updateFeeCalled","investor_set_fee","inputValue","setValue","formattedValue","edit","formatAsCurrency","formatCurrency","formatAsNumber","validateIsNumerical","whitelist","is_editing","useInlineEdit","savedValue","inlineEdit","fund_commitment"],"mappings":"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","file":"cmpnts.umd.min.js","sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory(require(\"vue\"));\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"cmpnts\"] = factory(require(\"vue\"));\n\telse\n\t\troot[\"cmpnts\"] = factory(root[\"Vue\"]);\n})((typeof self !== 'undefined' ? self : this), function(__WEBPACK_EXTERNAL_MODULE__507__) {\nreturn ","// addapted from the document.currentScript polyfill by Adam Miller\n// MIT license\n// source: https://github.com/amiller-gh/currentScript-polyfill\n\n// added support for Firefox https://bugzilla.mozilla.org/show_bug.cgi?id=1620505\n\n(function (root, factory) {\n if (typeof define === 'function' && define.amd) {\n define([], factory);\n } else if (typeof module === 'object' && module.exports) {\n module.exports = factory();\n } else {\n root.getCurrentScript = factory();\n }\n}(typeof self !== 'undefined' ? self : this, function () {\n function getCurrentScript () {\n var descriptor = Object.getOwnPropertyDescriptor(document, 'currentScript')\n // for chrome\n if (!descriptor && 'currentScript' in document && document.currentScript) {\n return document.currentScript\n }\n\n // for other browsers with native support for currentScript\n if (descriptor && descriptor.get !== getCurrentScript && document.currentScript) {\n return document.currentScript\n }\n \n // IE 8-10 support script readyState\n // IE 11+ & Firefox support stack trace\n try {\n throw new Error();\n }\n catch (err) {\n // Find the second match for the \"at\" string to get file src url from stack.\n var ieStackRegExp = /.*at [^(]*\\((.*):(.+):(.+)\\)$/ig,\n ffStackRegExp = /@([^@]*):(\\d+):(\\d+)\\s*$/ig,\n stackDetails = ieStackRegExp.exec(err.stack) || ffStackRegExp.exec(err.stack),\n scriptLocation = (stackDetails && stackDetails[1]) || false,\n line = (stackDetails && stackDetails[2]) || false,\n currentLocation = document.location.href.replace(document.location.hash, ''),\n pageSource,\n inlineScriptSourceRegExp,\n inlineScriptSource,\n scripts = document.getElementsByTagName('script'); // Live NodeList collection\n \n if (scriptLocation === currentLocation) {\n pageSource = document.documentElement.outerHTML;\n inlineScriptSourceRegExp = new RegExp('(?:[^\\\\n]+?\\\\n){0,' + (line - 2) + '}[^<]*\n\n\n","export default function requiredArgs(required, args) {\n if (args.length < required) {\n throw new TypeError(required + ' argument' + (required > 1 ? 's' : '') + ' required, but only ' + args.length + ' present');\n }\n}","import requiredArgs from \"../_lib/requiredArgs/index.js\";\n/**\n * @name toDate\n * @category Common Helpers\n * @summary Convert the given argument to an instance of Date.\n *\n * @description\n * Convert the given argument to an instance of Date.\n *\n * If the argument is an instance of Date, the function returns its clone.\n *\n * If the argument is a number, it is treated as a timestamp.\n *\n * If the argument is none of the above, the function returns Invalid Date.\n *\n * **Note**: *all* Date arguments passed to any *date-fns* function is processed by `toDate`.\n *\n * @param {Date|Number} argument - the value to convert\n * @returns {Date} the parsed date in the local time zone\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // Clone the date:\n * const result = toDate(new Date(2014, 1, 11, 11, 30, 30))\n * //=> Tue Feb 11 2014 11:30:30\n *\n * @example\n * // Convert the timestamp to date:\n * const result = toDate(1392098430000)\n * //=> Tue Feb 11 2014 11:30:30\n */\n\nexport default function toDate(argument) {\n requiredArgs(1, arguments);\n var argStr = Object.prototype.toString.call(argument); // Clone the date\n\n if (argument instanceof Date || typeof argument === 'object' && argStr === '[object Date]') {\n // Prevent the date to lose the milliseconds when passed to new Date() in IE10\n return new Date(argument.getTime());\n } else if (typeof argument === 'number' || argStr === '[object Number]') {\n return new Date(argument);\n } else {\n if ((typeof argument === 'string' || argStr === '[object String]') && typeof console !== 'undefined') {\n // eslint-disable-next-line no-console\n console.warn(\"Starting with v2.0.0-beta.1 date-fns doesn't accept strings as date arguments. Please use `parseISO` to parse strings. See: https://git.io/fjule\"); // eslint-disable-next-line no-console\n\n console.warn(new Error().stack);\n }\n\n return new Date(NaN);\n }\n}","import toDate from \"../toDate/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\n/**\n * @name isValid\n * @category Common Helpers\n * @summary Is the given date valid?\n *\n * @description\n * Returns false if argument is Invalid Date and true otherwise.\n * Argument is converted to Date using `toDate`. See [toDate]{@link https://date-fns.org/docs/toDate}\n * Invalid Date is a Date, whose time value is NaN.\n *\n * Time value of Date: http://es5.github.io/#x15.9.1.1\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * - Now `isValid` doesn't throw an exception\n * if the first argument is not an instance of Date.\n * Instead, argument is converted beforehand using `toDate`.\n *\n * Examples:\n *\n * | `isValid` argument | Before v2.0.0 | v2.0.0 onward |\n * |---------------------------|---------------|---------------|\n * | `new Date()` | `true` | `true` |\n * | `new Date('2016-01-01')` | `true` | `true` |\n * | `new Date('')` | `false` | `false` |\n * | `new Date(1488370835081)` | `true` | `true` |\n * | `new Date(NaN)` | `false` | `false` |\n * | `'2016-01-01'` | `TypeError` | `false` |\n * | `''` | `TypeError` | `false` |\n * | `1488370835081` | `TypeError` | `true` |\n * | `NaN` | `TypeError` | `false` |\n *\n * We introduce this change to make *date-fns* consistent with ECMAScript behavior\n * that try to coerce arguments to the expected type\n * (which is also the case with other *date-fns* functions).\n *\n * @param {*} date - the date to check\n * @returns {Boolean} the date is valid\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // For the valid date:\n * var result = isValid(new Date(2014, 1, 31))\n * //=> true\n *\n * @example\n * // For the value, convertable into a date:\n * var result = isValid(1393804800000)\n * //=> true\n *\n * @example\n * // For the invalid date:\n * var result = isValid(new Date(''))\n * //=> false\n */\n\nexport default function isValid(dirtyDate) {\n requiredArgs(1, arguments);\n var date = toDate(dirtyDate);\n return !isNaN(date);\n}","var formatDistanceLocale = {\n lessThanXSeconds: {\n one: 'less than a second',\n other: 'less than {{count}} seconds'\n },\n xSeconds: {\n one: '1 second',\n other: '{{count}} seconds'\n },\n halfAMinute: 'half a minute',\n lessThanXMinutes: {\n one: 'less than a minute',\n other: 'less than {{count}} minutes'\n },\n xMinutes: {\n one: '1 minute',\n other: '{{count}} minutes'\n },\n aboutXHours: {\n one: 'about 1 hour',\n other: 'about {{count}} hours'\n },\n xHours: {\n one: '1 hour',\n other: '{{count}} hours'\n },\n xDays: {\n one: '1 day',\n other: '{{count}} days'\n },\n aboutXWeeks: {\n one: 'about 1 week',\n other: 'about {{count}} weeks'\n },\n xWeeks: {\n one: '1 week',\n other: '{{count}} weeks'\n },\n aboutXMonths: {\n one: 'about 1 month',\n other: 'about {{count}} months'\n },\n xMonths: {\n one: '1 month',\n other: '{{count}} months'\n },\n aboutXYears: {\n one: 'about 1 year',\n other: 'about {{count}} years'\n },\n xYears: {\n one: '1 year',\n other: '{{count}} years'\n },\n overXYears: {\n one: 'over 1 year',\n other: 'over {{count}} years'\n },\n almostXYears: {\n one: 'almost 1 year',\n other: 'almost {{count}} years'\n }\n};\nexport default function formatDistance(token, count, options) {\n options = options || {};\n var result;\n\n if (typeof formatDistanceLocale[token] === 'string') {\n result = formatDistanceLocale[token];\n } else if (count === 1) {\n result = formatDistanceLocale[token].one;\n } else {\n result = formatDistanceLocale[token].other.replace('{{count}}', count);\n }\n\n if (options.addSuffix) {\n if (options.comparison > 0) {\n return 'in ' + result;\n } else {\n return result + ' ago';\n }\n }\n\n return result;\n}","export default function buildFormatLongFn(args) {\n return function (dirtyOptions) {\n var options = dirtyOptions || {};\n var width = options.width ? String(options.width) : args.defaultWidth;\n var format = args.formats[width] || args.formats[args.defaultWidth];\n return format;\n };\n}","import buildFormatLongFn from \"../../../_lib/buildFormatLongFn/index.js\";\nvar dateFormats = {\n full: 'EEEE, MMMM do, y',\n long: 'MMMM do, y',\n medium: 'MMM d, y',\n short: 'MM/dd/yyyy'\n};\nvar timeFormats = {\n full: 'h:mm:ss a zzzz',\n long: 'h:mm:ss a z',\n medium: 'h:mm:ss a',\n short: 'h:mm a'\n};\nvar dateTimeFormats = {\n full: \"{{date}} 'at' {{time}}\",\n long: \"{{date}} 'at' {{time}}\",\n medium: '{{date}}, {{time}}',\n short: '{{date}}, {{time}}'\n};\nvar formatLong = {\n date: buildFormatLongFn({\n formats: dateFormats,\n defaultWidth: 'full'\n }),\n time: buildFormatLongFn({\n formats: timeFormats,\n defaultWidth: 'full'\n }),\n dateTime: buildFormatLongFn({\n formats: dateTimeFormats,\n defaultWidth: 'full'\n })\n};\nexport default formatLong;","var formatRelativeLocale = {\n lastWeek: \"'last' eeee 'at' p\",\n yesterday: \"'yesterday at' p\",\n today: \"'today at' p\",\n tomorrow: \"'tomorrow at' p\",\n nextWeek: \"eeee 'at' p\",\n other: 'P'\n};\nexport default function formatRelative(token, _date, _baseDate, _options) {\n return formatRelativeLocale[token];\n}","export default function buildLocalizeFn(args) {\n return function (dirtyIndex, dirtyOptions) {\n var options = dirtyOptions || {};\n var context = options.context ? String(options.context) : 'standalone';\n var valuesArray;\n\n if (context === 'formatting' && args.formattingValues) {\n var defaultWidth = args.defaultFormattingWidth || args.defaultWidth;\n var width = options.width ? String(options.width) : defaultWidth;\n valuesArray = args.formattingValues[width] || args.formattingValues[defaultWidth];\n } else {\n var _defaultWidth = args.defaultWidth;\n\n var _width = options.width ? String(options.width) : args.defaultWidth;\n\n valuesArray = args.values[_width] || args.values[_defaultWidth];\n }\n\n var index = args.argumentCallback ? args.argumentCallback(dirtyIndex) : dirtyIndex;\n return valuesArray[index];\n };\n}","import buildLocalizeFn from \"../../../_lib/buildLocalizeFn/index.js\";\nvar eraValues = {\n narrow: ['B', 'A'],\n abbreviated: ['BC', 'AD'],\n wide: ['Before Christ', 'Anno Domini']\n};\nvar quarterValues = {\n narrow: ['1', '2', '3', '4'],\n abbreviated: ['Q1', 'Q2', 'Q3', 'Q4'],\n wide: ['1st quarter', '2nd quarter', '3rd quarter', '4th quarter'] // Note: in English, the names of days of the week and months are capitalized.\n // If you are making a new locale based on this one, check if the same is true for the language you're working on.\n // Generally, formatted dates should look like they are in the middle of a sentence,\n // e.g. in Spanish language the weekdays and months should be in the lowercase.\n\n};\nvar monthValues = {\n narrow: ['J', 'F', 'M', 'A', 'M', 'J', 'J', 'A', 'S', 'O', 'N', 'D'],\n abbreviated: ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'],\n wide: ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December']\n};\nvar dayValues = {\n narrow: ['S', 'M', 'T', 'W', 'T', 'F', 'S'],\n short: ['Su', 'Mo', 'Tu', 'We', 'Th', 'Fr', 'Sa'],\n abbreviated: ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat'],\n wide: ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday']\n};\nvar dayPeriodValues = {\n narrow: {\n am: 'a',\n pm: 'p',\n midnight: 'mi',\n noon: 'n',\n morning: 'morning',\n afternoon: 'afternoon',\n evening: 'evening',\n night: 'night'\n },\n abbreviated: {\n am: 'AM',\n pm: 'PM',\n midnight: 'midnight',\n noon: 'noon',\n morning: 'morning',\n afternoon: 'afternoon',\n evening: 'evening',\n night: 'night'\n },\n wide: {\n am: 'a.m.',\n pm: 'p.m.',\n midnight: 'midnight',\n noon: 'noon',\n morning: 'morning',\n afternoon: 'afternoon',\n evening: 'evening',\n night: 'night'\n }\n};\nvar formattingDayPeriodValues = {\n narrow: {\n am: 'a',\n pm: 'p',\n midnight: 'mi',\n noon: 'n',\n morning: 'in the morning',\n afternoon: 'in the afternoon',\n evening: 'in the evening',\n night: 'at night'\n },\n abbreviated: {\n am: 'AM',\n pm: 'PM',\n midnight: 'midnight',\n noon: 'noon',\n morning: 'in the morning',\n afternoon: 'in the afternoon',\n evening: 'in the evening',\n night: 'at night'\n },\n wide: {\n am: 'a.m.',\n pm: 'p.m.',\n midnight: 'midnight',\n noon: 'noon',\n morning: 'in the morning',\n afternoon: 'in the afternoon',\n evening: 'in the evening',\n night: 'at night'\n }\n};\n\nfunction ordinalNumber(dirtyNumber, _dirtyOptions) {\n var number = Number(dirtyNumber); // If ordinal numbers depend on context, for example,\n // if they are different for different grammatical genders,\n // use `options.unit`:\n //\n // var options = dirtyOptions || {}\n // var unit = String(options.unit)\n //\n // where `unit` can be 'year', 'quarter', 'month', 'week', 'date', 'dayOfYear',\n // 'day', 'hour', 'minute', 'second'\n\n var rem100 = number % 100;\n\n if (rem100 > 20 || rem100 < 10) {\n switch (rem100 % 10) {\n case 1:\n return number + 'st';\n\n case 2:\n return number + 'nd';\n\n case 3:\n return number + 'rd';\n }\n }\n\n return number + 'th';\n}\n\nvar localize = {\n ordinalNumber: ordinalNumber,\n era: buildLocalizeFn({\n values: eraValues,\n defaultWidth: 'wide'\n }),\n quarter: buildLocalizeFn({\n values: quarterValues,\n defaultWidth: 'wide',\n argumentCallback: function (quarter) {\n return Number(quarter) - 1;\n }\n }),\n month: buildLocalizeFn({\n values: monthValues,\n defaultWidth: 'wide'\n }),\n day: buildLocalizeFn({\n values: dayValues,\n defaultWidth: 'wide'\n }),\n dayPeriod: buildLocalizeFn({\n values: dayPeriodValues,\n defaultWidth: 'wide',\n formattingValues: formattingDayPeriodValues,\n defaultFormattingWidth: 'wide'\n })\n};\nexport default localize;","export default function buildMatchPatternFn(args) {\n return function (dirtyString, dirtyOptions) {\n var string = String(dirtyString);\n var options = dirtyOptions || {};\n var matchResult = string.match(args.matchPattern);\n\n if (!matchResult) {\n return null;\n }\n\n var matchedString = matchResult[0];\n var parseResult = string.match(args.parsePattern);\n\n if (!parseResult) {\n return null;\n }\n\n var value = args.valueCallback ? args.valueCallback(parseResult[0]) : parseResult[0];\n value = options.valueCallback ? options.valueCallback(value) : value;\n return {\n value: value,\n rest: string.slice(matchedString.length)\n };\n };\n}","export default function buildMatchFn(args) {\n return function (dirtyString, dirtyOptions) {\n var string = String(dirtyString);\n var options = dirtyOptions || {};\n var width = options.width;\n var matchPattern = width && args.matchPatterns[width] || args.matchPatterns[args.defaultMatchWidth];\n var matchResult = string.match(matchPattern);\n\n if (!matchResult) {\n return null;\n }\n\n var matchedString = matchResult[0];\n var parsePatterns = width && args.parsePatterns[width] || args.parsePatterns[args.defaultParseWidth];\n var value;\n\n if (Object.prototype.toString.call(parsePatterns) === '[object Array]') {\n value = findIndex(parsePatterns, function (pattern) {\n return pattern.test(matchedString);\n });\n } else {\n value = findKey(parsePatterns, function (pattern) {\n return pattern.test(matchedString);\n });\n }\n\n value = args.valueCallback ? args.valueCallback(value) : value;\n value = options.valueCallback ? options.valueCallback(value) : value;\n return {\n value: value,\n rest: string.slice(matchedString.length)\n };\n };\n}\n\nfunction findKey(object, predicate) {\n for (var key in object) {\n if (object.hasOwnProperty(key) && predicate(object[key])) {\n return key;\n }\n }\n}\n\nfunction findIndex(array, predicate) {\n for (var key = 0; key < array.length; key++) {\n if (predicate(array[key])) {\n return key;\n }\n }\n}","import buildMatchPatternFn from \"../../../_lib/buildMatchPatternFn/index.js\";\nimport buildMatchFn from \"../../../_lib/buildMatchFn/index.js\";\nvar matchOrdinalNumberPattern = /^(\\d+)(th|st|nd|rd)?/i;\nvar parseOrdinalNumberPattern = /\\d+/i;\nvar matchEraPatterns = {\n narrow: /^(b|a)/i,\n abbreviated: /^(b\\.?\\s?c\\.?|b\\.?\\s?c\\.?\\s?e\\.?|a\\.?\\s?d\\.?|c\\.?\\s?e\\.?)/i,\n wide: /^(before christ|before common era|anno domini|common era)/i\n};\nvar parseEraPatterns = {\n any: [/^b/i, /^(a|c)/i]\n};\nvar matchQuarterPatterns = {\n narrow: /^[1234]/i,\n abbreviated: /^q[1234]/i,\n wide: /^[1234](th|st|nd|rd)? quarter/i\n};\nvar parseQuarterPatterns = {\n any: [/1/i, /2/i, /3/i, /4/i]\n};\nvar matchMonthPatterns = {\n narrow: /^[jfmasond]/i,\n abbreviated: /^(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)/i,\n wide: /^(january|february|march|april|may|june|july|august|september|october|november|december)/i\n};\nvar parseMonthPatterns = {\n narrow: [/^j/i, /^f/i, /^m/i, /^a/i, /^m/i, /^j/i, /^j/i, /^a/i, /^s/i, /^o/i, /^n/i, /^d/i],\n any: [/^ja/i, /^f/i, /^mar/i, /^ap/i, /^may/i, /^jun/i, /^jul/i, /^au/i, /^s/i, /^o/i, /^n/i, /^d/i]\n};\nvar matchDayPatterns = {\n narrow: /^[smtwf]/i,\n short: /^(su|mo|tu|we|th|fr|sa)/i,\n abbreviated: /^(sun|mon|tue|wed|thu|fri|sat)/i,\n wide: /^(sunday|monday|tuesday|wednesday|thursday|friday|saturday)/i\n};\nvar parseDayPatterns = {\n narrow: [/^s/i, /^m/i, /^t/i, /^w/i, /^t/i, /^f/i, /^s/i],\n any: [/^su/i, /^m/i, /^tu/i, /^w/i, /^th/i, /^f/i, /^sa/i]\n};\nvar matchDayPeriodPatterns = {\n narrow: /^(a|p|mi|n|(in the|at) (morning|afternoon|evening|night))/i,\n any: /^([ap]\\.?\\s?m\\.?|midnight|noon|(in the|at) (morning|afternoon|evening|night))/i\n};\nvar parseDayPeriodPatterns = {\n any: {\n am: /^a/i,\n pm: /^p/i,\n midnight: /^mi/i,\n noon: /^no/i,\n morning: /morning/i,\n afternoon: /afternoon/i,\n evening: /evening/i,\n night: /night/i\n }\n};\nvar match = {\n ordinalNumber: buildMatchPatternFn({\n matchPattern: matchOrdinalNumberPattern,\n parsePattern: parseOrdinalNumberPattern,\n valueCallback: function (value) {\n return parseInt(value, 10);\n }\n }),\n era: buildMatchFn({\n matchPatterns: matchEraPatterns,\n defaultMatchWidth: 'wide',\n parsePatterns: parseEraPatterns,\n defaultParseWidth: 'any'\n }),\n quarter: buildMatchFn({\n matchPatterns: matchQuarterPatterns,\n defaultMatchWidth: 'wide',\n parsePatterns: parseQuarterPatterns,\n defaultParseWidth: 'any',\n valueCallback: function (index) {\n return index + 1;\n }\n }),\n month: buildMatchFn({\n matchPatterns: matchMonthPatterns,\n defaultMatchWidth: 'wide',\n parsePatterns: parseMonthPatterns,\n defaultParseWidth: 'any'\n }),\n day: buildMatchFn({\n matchPatterns: matchDayPatterns,\n defaultMatchWidth: 'wide',\n parsePatterns: parseDayPatterns,\n defaultParseWidth: 'any'\n }),\n dayPeriod: buildMatchFn({\n matchPatterns: matchDayPeriodPatterns,\n defaultMatchWidth: 'any',\n parsePatterns: parseDayPeriodPatterns,\n defaultParseWidth: 'any'\n })\n};\nexport default match;","import formatDistance from \"./_lib/formatDistance/index.js\";\nimport formatLong from \"./_lib/formatLong/index.js\";\nimport formatRelative from \"./_lib/formatRelative/index.js\";\nimport localize from \"./_lib/localize/index.js\";\nimport match from \"./_lib/match/index.js\";\n/**\n * @type {Locale}\n * @category Locales\n * @summary English locale (United States).\n * @language English\n * @iso-639-2 eng\n * @author Sasha Koss [@kossnocorp]{@link https://github.com/kossnocorp}\n * @author Lesha Koss [@leshakoss]{@link https://github.com/leshakoss}\n */\n\nvar locale = {\n code: 'en-US',\n formatDistance: formatDistance,\n formatLong: formatLong,\n formatRelative: formatRelative,\n localize: localize,\n match: match,\n options: {\n weekStartsOn: 0\n /* Sunday */\n ,\n firstWeekContainsDate: 1\n }\n};\nexport default locale;","export default function toInteger(dirtyNumber) {\n if (dirtyNumber === null || dirtyNumber === true || dirtyNumber === false) {\n return NaN;\n }\n\n var number = Number(dirtyNumber);\n\n if (isNaN(number)) {\n return number;\n }\n\n return number < 0 ? Math.ceil(number) : Math.floor(number);\n}","import toInteger from \"../_lib/toInteger/index.js\";\nimport toDate from \"../toDate/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\n/**\n * @name addMilliseconds\n * @category Millisecond Helpers\n * @summary Add the specified number of milliseconds to the given date.\n *\n * @description\n * Add the specified number of milliseconds to the given date.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the date to be changed\n * @param {Number} amount - the amount of milliseconds to be added. Positive decimals will be rounded using `Math.floor`, decimals less than zero will be rounded using `Math.ceil`.\n * @returns {Date} the new date with the milliseconds added\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // Add 750 milliseconds to 10 July 2014 12:45:30.000:\n * const result = addMilliseconds(new Date(2014, 6, 10, 12, 45, 30, 0), 750)\n * //=> Thu Jul 10 2014 12:45:30.750\n */\n\nexport default function addMilliseconds(dirtyDate, dirtyAmount) {\n requiredArgs(2, arguments);\n var timestamp = toDate(dirtyDate).getTime();\n var amount = toInteger(dirtyAmount);\n return new Date(timestamp + amount);\n}","import toInteger from \"../_lib/toInteger/index.js\";\nimport addMilliseconds from \"../addMilliseconds/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\n/**\n * @name subMilliseconds\n * @category Millisecond Helpers\n * @summary Subtract the specified number of milliseconds from the given date.\n *\n * @description\n * Subtract the specified number of milliseconds from the given date.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the date to be changed\n * @param {Number} amount - the amount of milliseconds to be subtracted. Positive decimals will be rounded using `Math.floor`, decimals less than zero will be rounded using `Math.ceil`.\n * @returns {Date} the new date with the milliseconds subtracted\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // Subtract 750 milliseconds from 10 July 2014 12:45:30.000:\n * const result = subMilliseconds(new Date(2014, 6, 10, 12, 45, 30, 0), 750)\n * //=> Thu Jul 10 2014 12:45:29.250\n */\n\nexport default function subMilliseconds(dirtyDate, dirtyAmount) {\n requiredArgs(2, arguments);\n var amount = toInteger(dirtyAmount);\n return addMilliseconds(dirtyDate, -amount);\n}","export default function addLeadingZeros(number, targetLength) {\n var sign = number < 0 ? '-' : '';\n var output = Math.abs(number).toString();\n\n while (output.length < targetLength) {\n output = '0' + output;\n }\n\n return sign + output;\n}","import addLeadingZeros from \"../../addLeadingZeros/index.js\";\n/*\n * | | Unit | | Unit |\n * |-----|--------------------------------|-----|--------------------------------|\n * | a | AM, PM | A* | |\n * | d | Day of month | D | |\n * | h | Hour [1-12] | H | Hour [0-23] |\n * | m | Minute | M | Month |\n * | s | Second | S | Fraction of second |\n * | y | Year (abs) | Y | |\n *\n * Letters marked by * are not implemented but reserved by Unicode standard.\n */\n\nvar formatters = {\n // Year\n y(date, token) {\n // From http://www.unicode.org/reports/tr35/tr35-31/tr35-dates.html#Date_Format_tokens\n // | Year | y | yy | yyy | yyyy | yyyyy |\n // |----------|-------|----|-------|-------|-------|\n // | AD 1 | 1 | 01 | 001 | 0001 | 00001 |\n // | AD 12 | 12 | 12 | 012 | 0012 | 00012 |\n // | AD 123 | 123 | 23 | 123 | 0123 | 00123 |\n // | AD 1234 | 1234 | 34 | 1234 | 1234 | 01234 |\n // | AD 12345 | 12345 | 45 | 12345 | 12345 | 12345 |\n var signedYear = date.getUTCFullYear(); // Returns 1 for 1 BC (which is year 0 in JavaScript)\n\n var year = signedYear > 0 ? signedYear : 1 - signedYear;\n return addLeadingZeros(token === 'yy' ? year % 100 : year, token.length);\n },\n\n // Month\n M(date, token) {\n var month = date.getUTCMonth();\n return token === 'M' ? String(month + 1) : addLeadingZeros(month + 1, 2);\n },\n\n // Day of the month\n d(date, token) {\n return addLeadingZeros(date.getUTCDate(), token.length);\n },\n\n // AM or PM\n a(date, token) {\n var dayPeriodEnumValue = date.getUTCHours() / 12 >= 1 ? 'pm' : 'am';\n\n switch (token) {\n case 'a':\n case 'aa':\n return dayPeriodEnumValue.toUpperCase();\n\n case 'aaa':\n return dayPeriodEnumValue;\n\n case 'aaaaa':\n return dayPeriodEnumValue[0];\n\n case 'aaaa':\n default:\n return dayPeriodEnumValue === 'am' ? 'a.m.' : 'p.m.';\n }\n },\n\n // Hour [1-12]\n h(date, token) {\n return addLeadingZeros(date.getUTCHours() % 12 || 12, token.length);\n },\n\n // Hour [0-23]\n H(date, token) {\n return addLeadingZeros(date.getUTCHours(), token.length);\n },\n\n // Minute\n m(date, token) {\n return addLeadingZeros(date.getUTCMinutes(), token.length);\n },\n\n // Second\n s(date, token) {\n return addLeadingZeros(date.getUTCSeconds(), token.length);\n },\n\n // Fraction of second\n S(date, token) {\n var numberOfDigits = token.length;\n var milliseconds = date.getUTCMilliseconds();\n var fractionalSeconds = Math.floor(milliseconds * Math.pow(10, numberOfDigits - 3));\n return addLeadingZeros(fractionalSeconds, token.length);\n }\n\n};\nexport default formatters;","import toDate from \"../../toDate/index.js\";\nimport requiredArgs from \"../requiredArgs/index.js\";\nvar MILLISECONDS_IN_DAY = 86400000; // This function will be a part of public API when UTC function will be implemented.\n// See issue: https://github.com/date-fns/date-fns/issues/376\n\nexport default function getUTCDayOfYear(dirtyDate) {\n requiredArgs(1, arguments);\n var date = toDate(dirtyDate);\n var timestamp = date.getTime();\n date.setUTCMonth(0, 1);\n date.setUTCHours(0, 0, 0, 0);\n var startOfYearTimestamp = date.getTime();\n var difference = timestamp - startOfYearTimestamp;\n return Math.floor(difference / MILLISECONDS_IN_DAY) + 1;\n}","import toDate from \"../../toDate/index.js\";\nimport requiredArgs from \"../requiredArgs/index.js\"; // This function will be a part of public API when UTC function will be implemented.\n// See issue: https://github.com/date-fns/date-fns/issues/376\n\nexport default function startOfUTCISOWeek(dirtyDate) {\n requiredArgs(1, arguments);\n var weekStartsOn = 1;\n var date = toDate(dirtyDate);\n var day = date.getUTCDay();\n var diff = (day < weekStartsOn ? 7 : 0) + day - weekStartsOn;\n date.setUTCDate(date.getUTCDate() - diff);\n date.setUTCHours(0, 0, 0, 0);\n return date;\n}","import toDate from \"../../toDate/index.js\";\nimport startOfUTCISOWeek from \"../startOfUTCISOWeek/index.js\";\nimport requiredArgs from \"../requiredArgs/index.js\"; // This function will be a part of public API when UTC function will be implemented.\n// See issue: https://github.com/date-fns/date-fns/issues/376\n\nexport default function getUTCISOWeekYear(dirtyDate) {\n requiredArgs(1, arguments);\n var date = toDate(dirtyDate);\n var year = date.getUTCFullYear();\n var fourthOfJanuaryOfNextYear = new Date(0);\n fourthOfJanuaryOfNextYear.setUTCFullYear(year + 1, 0, 4);\n fourthOfJanuaryOfNextYear.setUTCHours(0, 0, 0, 0);\n var startOfNextYear = startOfUTCISOWeek(fourthOfJanuaryOfNextYear);\n var fourthOfJanuaryOfThisYear = new Date(0);\n fourthOfJanuaryOfThisYear.setUTCFullYear(year, 0, 4);\n fourthOfJanuaryOfThisYear.setUTCHours(0, 0, 0, 0);\n var startOfThisYear = startOfUTCISOWeek(fourthOfJanuaryOfThisYear);\n\n if (date.getTime() >= startOfNextYear.getTime()) {\n return year + 1;\n } else if (date.getTime() >= startOfThisYear.getTime()) {\n return year;\n } else {\n return year - 1;\n }\n}","import getUTCISOWeekYear from \"../getUTCISOWeekYear/index.js\";\nimport startOfUTCISOWeek from \"../startOfUTCISOWeek/index.js\";\nimport requiredArgs from \"../requiredArgs/index.js\"; // This function will be a part of public API when UTC function will be implemented.\n// See issue: https://github.com/date-fns/date-fns/issues/376\n\nexport default function startOfUTCISOWeekYear(dirtyDate) {\n requiredArgs(1, arguments);\n var year = getUTCISOWeekYear(dirtyDate);\n var fourthOfJanuary = new Date(0);\n fourthOfJanuary.setUTCFullYear(year, 0, 4);\n fourthOfJanuary.setUTCHours(0, 0, 0, 0);\n var date = startOfUTCISOWeek(fourthOfJanuary);\n return date;\n}","import toDate from \"../../toDate/index.js\";\nimport startOfUTCISOWeek from \"../startOfUTCISOWeek/index.js\";\nimport startOfUTCISOWeekYear from \"../startOfUTCISOWeekYear/index.js\";\nimport requiredArgs from \"../requiredArgs/index.js\";\nvar MILLISECONDS_IN_WEEK = 604800000; // This function will be a part of public API when UTC function will be implemented.\n// See issue: https://github.com/date-fns/date-fns/issues/376\n\nexport default function getUTCISOWeek(dirtyDate) {\n requiredArgs(1, arguments);\n var date = toDate(dirtyDate);\n var diff = startOfUTCISOWeek(date).getTime() - startOfUTCISOWeekYear(date).getTime(); // Round the number of days to the nearest integer\n // because the number of milliseconds in a week is not constant\n // (e.g. it's different in the week of the daylight saving time clock shift)\n\n return Math.round(diff / MILLISECONDS_IN_WEEK) + 1;\n}","import toInteger from \"../toInteger/index.js\";\nimport toDate from \"../../toDate/index.js\";\nimport requiredArgs from \"../requiredArgs/index.js\"; // This function will be a part of public API when UTC function will be implemented.\n// See issue: https://github.com/date-fns/date-fns/issues/376\n\nexport default function startOfUTCWeek(dirtyDate, dirtyOptions) {\n requiredArgs(1, arguments);\n var options = dirtyOptions || {};\n var locale = options.locale;\n var localeWeekStartsOn = locale && locale.options && locale.options.weekStartsOn;\n var defaultWeekStartsOn = localeWeekStartsOn == null ? 0 : toInteger(localeWeekStartsOn);\n var weekStartsOn = options.weekStartsOn == null ? defaultWeekStartsOn : toInteger(options.weekStartsOn); // Test if weekStartsOn is between 0 and 6 _and_ is not NaN\n\n if (!(weekStartsOn >= 0 && weekStartsOn <= 6)) {\n throw new RangeError('weekStartsOn must be between 0 and 6 inclusively');\n }\n\n var date = toDate(dirtyDate);\n var day = date.getUTCDay();\n var diff = (day < weekStartsOn ? 7 : 0) + day - weekStartsOn;\n date.setUTCDate(date.getUTCDate() - diff);\n date.setUTCHours(0, 0, 0, 0);\n return date;\n}","import toInteger from \"../toInteger/index.js\";\nimport toDate from \"../../toDate/index.js\";\nimport startOfUTCWeek from \"../startOfUTCWeek/index.js\";\nimport requiredArgs from \"../requiredArgs/index.js\"; // This function will be a part of public API when UTC function will be implemented.\n// See issue: https://github.com/date-fns/date-fns/issues/376\n\nexport default function getUTCWeekYear(dirtyDate, dirtyOptions) {\n requiredArgs(1, arguments);\n var date = toDate(dirtyDate, dirtyOptions);\n var year = date.getUTCFullYear();\n var options = dirtyOptions || {};\n var locale = options.locale;\n var localeFirstWeekContainsDate = locale && locale.options && locale.options.firstWeekContainsDate;\n var defaultFirstWeekContainsDate = localeFirstWeekContainsDate == null ? 1 : toInteger(localeFirstWeekContainsDate);\n var firstWeekContainsDate = options.firstWeekContainsDate == null ? defaultFirstWeekContainsDate : toInteger(options.firstWeekContainsDate); // Test if weekStartsOn is between 1 and 7 _and_ is not NaN\n\n if (!(firstWeekContainsDate >= 1 && firstWeekContainsDate <= 7)) {\n throw new RangeError('firstWeekContainsDate must be between 1 and 7 inclusively');\n }\n\n var firstWeekOfNextYear = new Date(0);\n firstWeekOfNextYear.setUTCFullYear(year + 1, 0, firstWeekContainsDate);\n firstWeekOfNextYear.setUTCHours(0, 0, 0, 0);\n var startOfNextYear = startOfUTCWeek(firstWeekOfNextYear, dirtyOptions);\n var firstWeekOfThisYear = new Date(0);\n firstWeekOfThisYear.setUTCFullYear(year, 0, firstWeekContainsDate);\n firstWeekOfThisYear.setUTCHours(0, 0, 0, 0);\n var startOfThisYear = startOfUTCWeek(firstWeekOfThisYear, dirtyOptions);\n\n if (date.getTime() >= startOfNextYear.getTime()) {\n return year + 1;\n } else if (date.getTime() >= startOfThisYear.getTime()) {\n return year;\n } else {\n return year - 1;\n }\n}","import toInteger from \"../toInteger/index.js\";\nimport getUTCWeekYear from \"../getUTCWeekYear/index.js\";\nimport startOfUTCWeek from \"../startOfUTCWeek/index.js\";\nimport requiredArgs from \"../requiredArgs/index.js\"; // This function will be a part of public API when UTC function will be implemented.\n// See issue: https://github.com/date-fns/date-fns/issues/376\n\nexport default function startOfUTCWeekYear(dirtyDate, dirtyOptions) {\n requiredArgs(1, arguments);\n var options = dirtyOptions || {};\n var locale = options.locale;\n var localeFirstWeekContainsDate = locale && locale.options && locale.options.firstWeekContainsDate;\n var defaultFirstWeekContainsDate = localeFirstWeekContainsDate == null ? 1 : toInteger(localeFirstWeekContainsDate);\n var firstWeekContainsDate = options.firstWeekContainsDate == null ? defaultFirstWeekContainsDate : toInteger(options.firstWeekContainsDate);\n var year = getUTCWeekYear(dirtyDate, dirtyOptions);\n var firstWeek = new Date(0);\n firstWeek.setUTCFullYear(year, 0, firstWeekContainsDate);\n firstWeek.setUTCHours(0, 0, 0, 0);\n var date = startOfUTCWeek(firstWeek, dirtyOptions);\n return date;\n}","import toDate from \"../../toDate/index.js\";\nimport startOfUTCWeek from \"../startOfUTCWeek/index.js\";\nimport startOfUTCWeekYear from \"../startOfUTCWeekYear/index.js\";\nimport requiredArgs from \"../requiredArgs/index.js\";\nvar MILLISECONDS_IN_WEEK = 604800000; // This function will be a part of public API when UTC function will be implemented.\n// See issue: https://github.com/date-fns/date-fns/issues/376\n\nexport default function getUTCWeek(dirtyDate, options) {\n requiredArgs(1, arguments);\n var date = toDate(dirtyDate);\n var diff = startOfUTCWeek(date, options).getTime() - startOfUTCWeekYear(date, options).getTime(); // Round the number of days to the nearest integer\n // because the number of milliseconds in a week is not constant\n // (e.g. it's different in the week of the daylight saving time clock shift)\n\n return Math.round(diff / MILLISECONDS_IN_WEEK) + 1;\n}","import lightFormatters from \"../lightFormatters/index.js\";\nimport getUTCDayOfYear from \"../../../_lib/getUTCDayOfYear/index.js\";\nimport getUTCISOWeek from \"../../../_lib/getUTCISOWeek/index.js\";\nimport getUTCISOWeekYear from \"../../../_lib/getUTCISOWeekYear/index.js\";\nimport getUTCWeek from \"../../../_lib/getUTCWeek/index.js\";\nimport getUTCWeekYear from \"../../../_lib/getUTCWeekYear/index.js\";\nimport addLeadingZeros from \"../../addLeadingZeros/index.js\";\nvar dayPeriodEnum = {\n am: 'am',\n pm: 'pm',\n midnight: 'midnight',\n noon: 'noon',\n morning: 'morning',\n afternoon: 'afternoon',\n evening: 'evening',\n night: 'night'\n /*\n * | | Unit | | Unit |\n * |-----|--------------------------------|-----|--------------------------------|\n * | a | AM, PM | A* | Milliseconds in day |\n * | b | AM, PM, noon, midnight | B | Flexible day period |\n * | c | Stand-alone local day of week | C* | Localized hour w/ day period |\n * | d | Day of month | D | Day of year |\n * | e | Local day of week | E | Day of week |\n * | f | | F* | Day of week in month |\n * | g* | Modified Julian day | G | Era |\n * | h | Hour [1-12] | H | Hour [0-23] |\n * | i! | ISO day of week | I! | ISO week of year |\n * | j* | Localized hour w/ day period | J* | Localized hour w/o day period |\n * | k | Hour [1-24] | K | Hour [0-11] |\n * | l* | (deprecated) | L | Stand-alone month |\n * | m | Minute | M | Month |\n * | n | | N | |\n * | o! | Ordinal number modifier | O | Timezone (GMT) |\n * | p! | Long localized time | P! | Long localized date |\n * | q | Stand-alone quarter | Q | Quarter |\n * | r* | Related Gregorian year | R! | ISO week-numbering year |\n * | s | Second | S | Fraction of second |\n * | t! | Seconds timestamp | T! | Milliseconds timestamp |\n * | u | Extended year | U* | Cyclic year |\n * | v* | Timezone (generic non-locat.) | V* | Timezone (location) |\n * | w | Local week of year | W* | Week of month |\n * | x | Timezone (ISO-8601 w/o Z) | X | Timezone (ISO-8601) |\n * | y | Year (abs) | Y | Local week-numbering year |\n * | z | Timezone (specific non-locat.) | Z* | Timezone (aliases) |\n *\n * Letters marked by * are not implemented but reserved by Unicode standard.\n *\n * Letters marked by ! are non-standard, but implemented by date-fns:\n * - `o` modifies the previous token to turn it into an ordinal (see `format` docs)\n * - `i` is ISO day of week. For `i` and `ii` is returns numeric ISO week days,\n * i.e. 7 for Sunday, 1 for Monday, etc.\n * - `I` is ISO week of year, as opposed to `w` which is local week of year.\n * - `R` is ISO week-numbering year, as opposed to `Y` which is local week-numbering year.\n * `R` is supposed to be used in conjunction with `I` and `i`\n * for universal ISO week-numbering date, whereas\n * `Y` is supposed to be used in conjunction with `w` and `e`\n * for week-numbering date specific to the locale.\n * - `P` is long localized date format\n * - `p` is long localized time format\n */\n\n};\nvar formatters = {\n // Era\n G: function (date, token, localize) {\n var era = date.getUTCFullYear() > 0 ? 1 : 0;\n\n switch (token) {\n // AD, BC\n case 'G':\n case 'GG':\n case 'GGG':\n return localize.era(era, {\n width: 'abbreviated'\n });\n // A, B\n\n case 'GGGGG':\n return localize.era(era, {\n width: 'narrow'\n });\n // Anno Domini, Before Christ\n\n case 'GGGG':\n default:\n return localize.era(era, {\n width: 'wide'\n });\n }\n },\n // Year\n y: function (date, token, localize) {\n // Ordinal number\n if (token === 'yo') {\n var signedYear = date.getUTCFullYear(); // Returns 1 for 1 BC (which is year 0 in JavaScript)\n\n var year = signedYear > 0 ? signedYear : 1 - signedYear;\n return localize.ordinalNumber(year, {\n unit: 'year'\n });\n }\n\n return lightFormatters.y(date, token);\n },\n // Local week-numbering year\n Y: function (date, token, localize, options) {\n var signedWeekYear = getUTCWeekYear(date, options); // Returns 1 for 1 BC (which is year 0 in JavaScript)\n\n var weekYear = signedWeekYear > 0 ? signedWeekYear : 1 - signedWeekYear; // Two digit year\n\n if (token === 'YY') {\n var twoDigitYear = weekYear % 100;\n return addLeadingZeros(twoDigitYear, 2);\n } // Ordinal number\n\n\n if (token === 'Yo') {\n return localize.ordinalNumber(weekYear, {\n unit: 'year'\n });\n } // Padding\n\n\n return addLeadingZeros(weekYear, token.length);\n },\n // ISO week-numbering year\n R: function (date, token) {\n var isoWeekYear = getUTCISOWeekYear(date); // Padding\n\n return addLeadingZeros(isoWeekYear, token.length);\n },\n // Extended year. This is a single number designating the year of this calendar system.\n // The main difference between `y` and `u` localizers are B.C. years:\n // | Year | `y` | `u` |\n // |------|-----|-----|\n // | AC 1 | 1 | 1 |\n // | BC 1 | 1 | 0 |\n // | BC 2 | 2 | -1 |\n // Also `yy` always returns the last two digits of a year,\n // while `uu` pads single digit years to 2 characters and returns other years unchanged.\n u: function (date, token) {\n var year = date.getUTCFullYear();\n return addLeadingZeros(year, token.length);\n },\n // Quarter\n Q: function (date, token, localize) {\n var quarter = Math.ceil((date.getUTCMonth() + 1) / 3);\n\n switch (token) {\n // 1, 2, 3, 4\n case 'Q':\n return String(quarter);\n // 01, 02, 03, 04\n\n case 'QQ':\n return addLeadingZeros(quarter, 2);\n // 1st, 2nd, 3rd, 4th\n\n case 'Qo':\n return localize.ordinalNumber(quarter, {\n unit: 'quarter'\n });\n // Q1, Q2, Q3, Q4\n\n case 'QQQ':\n return localize.quarter(quarter, {\n width: 'abbreviated',\n context: 'formatting'\n });\n // 1, 2, 3, 4 (narrow quarter; could be not numerical)\n\n case 'QQQQQ':\n return localize.quarter(quarter, {\n width: 'narrow',\n context: 'formatting'\n });\n // 1st quarter, 2nd quarter, ...\n\n case 'QQQQ':\n default:\n return localize.quarter(quarter, {\n width: 'wide',\n context: 'formatting'\n });\n }\n },\n // Stand-alone quarter\n q: function (date, token, localize) {\n var quarter = Math.ceil((date.getUTCMonth() + 1) / 3);\n\n switch (token) {\n // 1, 2, 3, 4\n case 'q':\n return String(quarter);\n // 01, 02, 03, 04\n\n case 'qq':\n return addLeadingZeros(quarter, 2);\n // 1st, 2nd, 3rd, 4th\n\n case 'qo':\n return localize.ordinalNumber(quarter, {\n unit: 'quarter'\n });\n // Q1, Q2, Q3, Q4\n\n case 'qqq':\n return localize.quarter(quarter, {\n width: 'abbreviated',\n context: 'standalone'\n });\n // 1, 2, 3, 4 (narrow quarter; could be not numerical)\n\n case 'qqqqq':\n return localize.quarter(quarter, {\n width: 'narrow',\n context: 'standalone'\n });\n // 1st quarter, 2nd quarter, ...\n\n case 'qqqq':\n default:\n return localize.quarter(quarter, {\n width: 'wide',\n context: 'standalone'\n });\n }\n },\n // Month\n M: function (date, token, localize) {\n var month = date.getUTCMonth();\n\n switch (token) {\n case 'M':\n case 'MM':\n return lightFormatters.M(date, token);\n // 1st, 2nd, ..., 12th\n\n case 'Mo':\n return localize.ordinalNumber(month + 1, {\n unit: 'month'\n });\n // Jan, Feb, ..., Dec\n\n case 'MMM':\n return localize.month(month, {\n width: 'abbreviated',\n context: 'formatting'\n });\n // J, F, ..., D\n\n case 'MMMMM':\n return localize.month(month, {\n width: 'narrow',\n context: 'formatting'\n });\n // January, February, ..., December\n\n case 'MMMM':\n default:\n return localize.month(month, {\n width: 'wide',\n context: 'formatting'\n });\n }\n },\n // Stand-alone month\n L: function (date, token, localize) {\n var month = date.getUTCMonth();\n\n switch (token) {\n // 1, 2, ..., 12\n case 'L':\n return String(month + 1);\n // 01, 02, ..., 12\n\n case 'LL':\n return addLeadingZeros(month + 1, 2);\n // 1st, 2nd, ..., 12th\n\n case 'Lo':\n return localize.ordinalNumber(month + 1, {\n unit: 'month'\n });\n // Jan, Feb, ..., Dec\n\n case 'LLL':\n return localize.month(month, {\n width: 'abbreviated',\n context: 'standalone'\n });\n // J, F, ..., D\n\n case 'LLLLL':\n return localize.month(month, {\n width: 'narrow',\n context: 'standalone'\n });\n // January, February, ..., December\n\n case 'LLLL':\n default:\n return localize.month(month, {\n width: 'wide',\n context: 'standalone'\n });\n }\n },\n // Local week of year\n w: function (date, token, localize, options) {\n var week = getUTCWeek(date, options);\n\n if (token === 'wo') {\n return localize.ordinalNumber(week, {\n unit: 'week'\n });\n }\n\n return addLeadingZeros(week, token.length);\n },\n // ISO week of year\n I: function (date, token, localize) {\n var isoWeek = getUTCISOWeek(date);\n\n if (token === 'Io') {\n return localize.ordinalNumber(isoWeek, {\n unit: 'week'\n });\n }\n\n return addLeadingZeros(isoWeek, token.length);\n },\n // Day of the month\n d: function (date, token, localize) {\n if (token === 'do') {\n return localize.ordinalNumber(date.getUTCDate(), {\n unit: 'date'\n });\n }\n\n return lightFormatters.d(date, token);\n },\n // Day of year\n D: function (date, token, localize) {\n var dayOfYear = getUTCDayOfYear(date);\n\n if (token === 'Do') {\n return localize.ordinalNumber(dayOfYear, {\n unit: 'dayOfYear'\n });\n }\n\n return addLeadingZeros(dayOfYear, token.length);\n },\n // Day of week\n E: function (date, token, localize) {\n var dayOfWeek = date.getUTCDay();\n\n switch (token) {\n // Tue\n case 'E':\n case 'EE':\n case 'EEE':\n return localize.day(dayOfWeek, {\n width: 'abbreviated',\n context: 'formatting'\n });\n // T\n\n case 'EEEEE':\n return localize.day(dayOfWeek, {\n width: 'narrow',\n context: 'formatting'\n });\n // Tu\n\n case 'EEEEEE':\n return localize.day(dayOfWeek, {\n width: 'short',\n context: 'formatting'\n });\n // Tuesday\n\n case 'EEEE':\n default:\n return localize.day(dayOfWeek, {\n width: 'wide',\n context: 'formatting'\n });\n }\n },\n // Local day of week\n e: function (date, token, localize, options) {\n var dayOfWeek = date.getUTCDay();\n var localDayOfWeek = (dayOfWeek - options.weekStartsOn + 8) % 7 || 7;\n\n switch (token) {\n // Numerical value (Nth day of week with current locale or weekStartsOn)\n case 'e':\n return String(localDayOfWeek);\n // Padded numerical value\n\n case 'ee':\n return addLeadingZeros(localDayOfWeek, 2);\n // 1st, 2nd, ..., 7th\n\n case 'eo':\n return localize.ordinalNumber(localDayOfWeek, {\n unit: 'day'\n });\n\n case 'eee':\n return localize.day(dayOfWeek, {\n width: 'abbreviated',\n context: 'formatting'\n });\n // T\n\n case 'eeeee':\n return localize.day(dayOfWeek, {\n width: 'narrow',\n context: 'formatting'\n });\n // Tu\n\n case 'eeeeee':\n return localize.day(dayOfWeek, {\n width: 'short',\n context: 'formatting'\n });\n // Tuesday\n\n case 'eeee':\n default:\n return localize.day(dayOfWeek, {\n width: 'wide',\n context: 'formatting'\n });\n }\n },\n // Stand-alone local day of week\n c: function (date, token, localize, options) {\n var dayOfWeek = date.getUTCDay();\n var localDayOfWeek = (dayOfWeek - options.weekStartsOn + 8) % 7 || 7;\n\n switch (token) {\n // Numerical value (same as in `e`)\n case 'c':\n return String(localDayOfWeek);\n // Padded numerical value\n\n case 'cc':\n return addLeadingZeros(localDayOfWeek, token.length);\n // 1st, 2nd, ..., 7th\n\n case 'co':\n return localize.ordinalNumber(localDayOfWeek, {\n unit: 'day'\n });\n\n case 'ccc':\n return localize.day(dayOfWeek, {\n width: 'abbreviated',\n context: 'standalone'\n });\n // T\n\n case 'ccccc':\n return localize.day(dayOfWeek, {\n width: 'narrow',\n context: 'standalone'\n });\n // Tu\n\n case 'cccccc':\n return localize.day(dayOfWeek, {\n width: 'short',\n context: 'standalone'\n });\n // Tuesday\n\n case 'cccc':\n default:\n return localize.day(dayOfWeek, {\n width: 'wide',\n context: 'standalone'\n });\n }\n },\n // ISO day of week\n i: function (date, token, localize) {\n var dayOfWeek = date.getUTCDay();\n var isoDayOfWeek = dayOfWeek === 0 ? 7 : dayOfWeek;\n\n switch (token) {\n // 2\n case 'i':\n return String(isoDayOfWeek);\n // 02\n\n case 'ii':\n return addLeadingZeros(isoDayOfWeek, token.length);\n // 2nd\n\n case 'io':\n return localize.ordinalNumber(isoDayOfWeek, {\n unit: 'day'\n });\n // Tue\n\n case 'iii':\n return localize.day(dayOfWeek, {\n width: 'abbreviated',\n context: 'formatting'\n });\n // T\n\n case 'iiiii':\n return localize.day(dayOfWeek, {\n width: 'narrow',\n context: 'formatting'\n });\n // Tu\n\n case 'iiiiii':\n return localize.day(dayOfWeek, {\n width: 'short',\n context: 'formatting'\n });\n // Tuesday\n\n case 'iiii':\n default:\n return localize.day(dayOfWeek, {\n width: 'wide',\n context: 'formatting'\n });\n }\n },\n // AM or PM\n a: function (date, token, localize) {\n var hours = date.getUTCHours();\n var dayPeriodEnumValue = hours / 12 >= 1 ? 'pm' : 'am';\n\n switch (token) {\n case 'a':\n case 'aa':\n return localize.dayPeriod(dayPeriodEnumValue, {\n width: 'abbreviated',\n context: 'formatting'\n });\n\n case 'aaa':\n return localize.dayPeriod(dayPeriodEnumValue, {\n width: 'abbreviated',\n context: 'formatting'\n }).toLowerCase();\n\n case 'aaaaa':\n return localize.dayPeriod(dayPeriodEnumValue, {\n width: 'narrow',\n context: 'formatting'\n });\n\n case 'aaaa':\n default:\n return localize.dayPeriod(dayPeriodEnumValue, {\n width: 'wide',\n context: 'formatting'\n });\n }\n },\n // AM, PM, midnight, noon\n b: function (date, token, localize) {\n var hours = date.getUTCHours();\n var dayPeriodEnumValue;\n\n if (hours === 12) {\n dayPeriodEnumValue = dayPeriodEnum.noon;\n } else if (hours === 0) {\n dayPeriodEnumValue = dayPeriodEnum.midnight;\n } else {\n dayPeriodEnumValue = hours / 12 >= 1 ? 'pm' : 'am';\n }\n\n switch (token) {\n case 'b':\n case 'bb':\n return localize.dayPeriod(dayPeriodEnumValue, {\n width: 'abbreviated',\n context: 'formatting'\n });\n\n case 'bbb':\n return localize.dayPeriod(dayPeriodEnumValue, {\n width: 'abbreviated',\n context: 'formatting'\n }).toLowerCase();\n\n case 'bbbbb':\n return localize.dayPeriod(dayPeriodEnumValue, {\n width: 'narrow',\n context: 'formatting'\n });\n\n case 'bbbb':\n default:\n return localize.dayPeriod(dayPeriodEnumValue, {\n width: 'wide',\n context: 'formatting'\n });\n }\n },\n // in the morning, in the afternoon, in the evening, at night\n B: function (date, token, localize) {\n var hours = date.getUTCHours();\n var dayPeriodEnumValue;\n\n if (hours >= 17) {\n dayPeriodEnumValue = dayPeriodEnum.evening;\n } else if (hours >= 12) {\n dayPeriodEnumValue = dayPeriodEnum.afternoon;\n } else if (hours >= 4) {\n dayPeriodEnumValue = dayPeriodEnum.morning;\n } else {\n dayPeriodEnumValue = dayPeriodEnum.night;\n }\n\n switch (token) {\n case 'B':\n case 'BB':\n case 'BBB':\n return localize.dayPeriod(dayPeriodEnumValue, {\n width: 'abbreviated',\n context: 'formatting'\n });\n\n case 'BBBBB':\n return localize.dayPeriod(dayPeriodEnumValue, {\n width: 'narrow',\n context: 'formatting'\n });\n\n case 'BBBB':\n default:\n return localize.dayPeriod(dayPeriodEnumValue, {\n width: 'wide',\n context: 'formatting'\n });\n }\n },\n // Hour [1-12]\n h: function (date, token, localize) {\n if (token === 'ho') {\n var hours = date.getUTCHours() % 12;\n if (hours === 0) hours = 12;\n return localize.ordinalNumber(hours, {\n unit: 'hour'\n });\n }\n\n return lightFormatters.h(date, token);\n },\n // Hour [0-23]\n H: function (date, token, localize) {\n if (token === 'Ho') {\n return localize.ordinalNumber(date.getUTCHours(), {\n unit: 'hour'\n });\n }\n\n return lightFormatters.H(date, token);\n },\n // Hour [0-11]\n K: function (date, token, localize) {\n var hours = date.getUTCHours() % 12;\n\n if (token === 'Ko') {\n return localize.ordinalNumber(hours, {\n unit: 'hour'\n });\n }\n\n return addLeadingZeros(hours, token.length);\n },\n // Hour [1-24]\n k: function (date, token, localize) {\n var hours = date.getUTCHours();\n if (hours === 0) hours = 24;\n\n if (token === 'ko') {\n return localize.ordinalNumber(hours, {\n unit: 'hour'\n });\n }\n\n return addLeadingZeros(hours, token.length);\n },\n // Minute\n m: function (date, token, localize) {\n if (token === 'mo') {\n return localize.ordinalNumber(date.getUTCMinutes(), {\n unit: 'minute'\n });\n }\n\n return lightFormatters.m(date, token);\n },\n // Second\n s: function (date, token, localize) {\n if (token === 'so') {\n return localize.ordinalNumber(date.getUTCSeconds(), {\n unit: 'second'\n });\n }\n\n return lightFormatters.s(date, token);\n },\n // Fraction of second\n S: function (date, token) {\n return lightFormatters.S(date, token);\n },\n // Timezone (ISO-8601. If offset is 0, output is always `'Z'`)\n X: function (date, token, _localize, options) {\n var originalDate = options._originalDate || date;\n var timezoneOffset = originalDate.getTimezoneOffset();\n\n if (timezoneOffset === 0) {\n return 'Z';\n }\n\n switch (token) {\n // Hours and optional minutes\n case 'X':\n return formatTimezoneWithOptionalMinutes(timezoneOffset);\n // Hours, minutes and optional seconds without `:` delimiter\n // Note: neither ISO-8601 nor JavaScript supports seconds in timezone offsets\n // so this token always has the same output as `XX`\n\n case 'XXXX':\n case 'XX':\n // Hours and minutes without `:` delimiter\n return formatTimezone(timezoneOffset);\n // Hours, minutes and optional seconds with `:` delimiter\n // Note: neither ISO-8601 nor JavaScript supports seconds in timezone offsets\n // so this token always has the same output as `XXX`\n\n case 'XXXXX':\n case 'XXX': // Hours and minutes with `:` delimiter\n\n default:\n return formatTimezone(timezoneOffset, ':');\n }\n },\n // Timezone (ISO-8601. If offset is 0, output is `'+00:00'` or equivalent)\n x: function (date, token, _localize, options) {\n var originalDate = options._originalDate || date;\n var timezoneOffset = originalDate.getTimezoneOffset();\n\n switch (token) {\n // Hours and optional minutes\n case 'x':\n return formatTimezoneWithOptionalMinutes(timezoneOffset);\n // Hours, minutes and optional seconds without `:` delimiter\n // Note: neither ISO-8601 nor JavaScript supports seconds in timezone offsets\n // so this token always has the same output as `xx`\n\n case 'xxxx':\n case 'xx':\n // Hours and minutes without `:` delimiter\n return formatTimezone(timezoneOffset);\n // Hours, minutes and optional seconds with `:` delimiter\n // Note: neither ISO-8601 nor JavaScript supports seconds in timezone offsets\n // so this token always has the same output as `xxx`\n\n case 'xxxxx':\n case 'xxx': // Hours and minutes with `:` delimiter\n\n default:\n return formatTimezone(timezoneOffset, ':');\n }\n },\n // Timezone (GMT)\n O: function (date, token, _localize, options) {\n var originalDate = options._originalDate || date;\n var timezoneOffset = originalDate.getTimezoneOffset();\n\n switch (token) {\n // Short\n case 'O':\n case 'OO':\n case 'OOO':\n return 'GMT' + formatTimezoneShort(timezoneOffset, ':');\n // Long\n\n case 'OOOO':\n default:\n return 'GMT' + formatTimezone(timezoneOffset, ':');\n }\n },\n // Timezone (specific non-location)\n z: function (date, token, _localize, options) {\n var originalDate = options._originalDate || date;\n var timezoneOffset = originalDate.getTimezoneOffset();\n\n switch (token) {\n // Short\n case 'z':\n case 'zz':\n case 'zzz':\n return 'GMT' + formatTimezoneShort(timezoneOffset, ':');\n // Long\n\n case 'zzzz':\n default:\n return 'GMT' + formatTimezone(timezoneOffset, ':');\n }\n },\n // Seconds timestamp\n t: function (date, token, _localize, options) {\n var originalDate = options._originalDate || date;\n var timestamp = Math.floor(originalDate.getTime() / 1000);\n return addLeadingZeros(timestamp, token.length);\n },\n // Milliseconds timestamp\n T: function (date, token, _localize, options) {\n var originalDate = options._originalDate || date;\n var timestamp = originalDate.getTime();\n return addLeadingZeros(timestamp, token.length);\n }\n};\n\nfunction formatTimezoneShort(offset, dirtyDelimiter) {\n var sign = offset > 0 ? '-' : '+';\n var absOffset = Math.abs(offset);\n var hours = Math.floor(absOffset / 60);\n var minutes = absOffset % 60;\n\n if (minutes === 0) {\n return sign + String(hours);\n }\n\n var delimiter = dirtyDelimiter || '';\n return sign + String(hours) + delimiter + addLeadingZeros(minutes, 2);\n}\n\nfunction formatTimezoneWithOptionalMinutes(offset, dirtyDelimiter) {\n if (offset % 60 === 0) {\n var sign = offset > 0 ? '-' : '+';\n return sign + addLeadingZeros(Math.abs(offset) / 60, 2);\n }\n\n return formatTimezone(offset, dirtyDelimiter);\n}\n\nfunction formatTimezone(offset, dirtyDelimiter) {\n var delimiter = dirtyDelimiter || '';\n var sign = offset > 0 ? '-' : '+';\n var absOffset = Math.abs(offset);\n var hours = addLeadingZeros(Math.floor(absOffset / 60), 2);\n var minutes = addLeadingZeros(absOffset % 60, 2);\n return sign + hours + delimiter + minutes;\n}\n\nexport default formatters;","function dateLongFormatter(pattern, formatLong) {\n switch (pattern) {\n case 'P':\n return formatLong.date({\n width: 'short'\n });\n\n case 'PP':\n return formatLong.date({\n width: 'medium'\n });\n\n case 'PPP':\n return formatLong.date({\n width: 'long'\n });\n\n case 'PPPP':\n default:\n return formatLong.date({\n width: 'full'\n });\n }\n}\n\nfunction timeLongFormatter(pattern, formatLong) {\n switch (pattern) {\n case 'p':\n return formatLong.time({\n width: 'short'\n });\n\n case 'pp':\n return formatLong.time({\n width: 'medium'\n });\n\n case 'ppp':\n return formatLong.time({\n width: 'long'\n });\n\n case 'pppp':\n default:\n return formatLong.time({\n width: 'full'\n });\n }\n}\n\nfunction dateTimeLongFormatter(pattern, formatLong) {\n var matchResult = pattern.match(/(P+)(p+)?/);\n var datePattern = matchResult[1];\n var timePattern = matchResult[2];\n\n if (!timePattern) {\n return dateLongFormatter(pattern, formatLong);\n }\n\n var dateTimeFormat;\n\n switch (datePattern) {\n case 'P':\n dateTimeFormat = formatLong.dateTime({\n width: 'short'\n });\n break;\n\n case 'PP':\n dateTimeFormat = formatLong.dateTime({\n width: 'medium'\n });\n break;\n\n case 'PPP':\n dateTimeFormat = formatLong.dateTime({\n width: 'long'\n });\n break;\n\n case 'PPPP':\n default:\n dateTimeFormat = formatLong.dateTime({\n width: 'full'\n });\n break;\n }\n\n return dateTimeFormat.replace('{{date}}', dateLongFormatter(datePattern, formatLong)).replace('{{time}}', timeLongFormatter(timePattern, formatLong));\n}\n\nvar longFormatters = {\n p: timeLongFormatter,\n P: dateTimeLongFormatter\n};\nexport default longFormatters;","/**\n * Google Chrome as of 67.0.3396.87 introduced timezones with offset that includes seconds.\n * They usually appear for dates that denote time before the timezones were introduced\n * (e.g. for 'Europe/Prague' timezone the offset is GMT+00:57:44 before 1 October 1891\n * and GMT+01:00:00 after that date)\n *\n * Date#getTimezoneOffset returns the offset in minutes and would return 57 for the example above,\n * which would lead to incorrect calculations.\n *\n * This function returns the timezone offset in milliseconds that takes seconds in account.\n */\nexport default function getTimezoneOffsetInMilliseconds(date) {\n var utcDate = new Date(Date.UTC(date.getFullYear(), date.getMonth(), date.getDate(), date.getHours(), date.getMinutes(), date.getSeconds(), date.getMilliseconds()));\n utcDate.setUTCFullYear(date.getFullYear());\n return date.getTime() - utcDate.getTime();\n}","var protectedDayOfYearTokens = ['D', 'DD'];\nvar protectedWeekYearTokens = ['YY', 'YYYY'];\nexport function isProtectedDayOfYearToken(token) {\n return protectedDayOfYearTokens.indexOf(token) !== -1;\n}\nexport function isProtectedWeekYearToken(token) {\n return protectedWeekYearTokens.indexOf(token) !== -1;\n}\nexport function throwProtectedError(token, format, input) {\n if (token === 'YYYY') {\n throw new RangeError(\"Use `yyyy` instead of `YYYY` (in `\".concat(format, \"`) for formatting years to the input `\").concat(input, \"`; see: https://git.io/fxCyr\"));\n } else if (token === 'YY') {\n throw new RangeError(\"Use `yy` instead of `YY` (in `\".concat(format, \"`) for formatting years to the input `\").concat(input, \"`; see: https://git.io/fxCyr\"));\n } else if (token === 'D') {\n throw new RangeError(\"Use `d` instead of `D` (in `\".concat(format, \"`) for formatting days of the month to the input `\").concat(input, \"`; see: https://git.io/fxCyr\"));\n } else if (token === 'DD') {\n throw new RangeError(\"Use `dd` instead of `DD` (in `\".concat(format, \"`) for formatting days of the month to the input `\").concat(input, \"`; see: https://git.io/fxCyr\"));\n }\n}","import isValid from \"../isValid/index.js\";\nimport defaultLocale from \"../locale/en-US/index.js\";\nimport subMilliseconds from \"../subMilliseconds/index.js\";\nimport toDate from \"../toDate/index.js\";\nimport formatters from \"../_lib/format/formatters/index.js\";\nimport longFormatters from \"../_lib/format/longFormatters/index.js\";\nimport getTimezoneOffsetInMilliseconds from \"../_lib/getTimezoneOffsetInMilliseconds/index.js\";\nimport { isProtectedDayOfYearToken, isProtectedWeekYearToken, throwProtectedError } from \"../_lib/protectedTokens/index.js\";\nimport toInteger from \"../_lib/toInteger/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\"; // This RegExp consists of three parts separated by `|`:\n// - [yYQqMLwIdDecihHKkms]o matches any available ordinal number token\n// (one of the certain letters followed by `o`)\n// - (\\w)\\1* matches any sequences of the same letter\n// - '' matches two quote characters in a row\n// - '(''|[^'])+('|$) matches anything surrounded by two quote characters ('),\n// except a single quote symbol, which ends the sequence.\n// Two quote characters do not end the sequence.\n// If there is no matching single quote\n// then the sequence will continue until the end of the string.\n// - . matches any single character unmatched by previous parts of the RegExps\n\nvar formattingTokensRegExp = /[yYQqMLwIdDecihHKkms]o|(\\w)\\1*|''|'(''|[^'])+('|$)|./g; // This RegExp catches symbols escaped by quotes, and also\n// sequences of symbols P, p, and the combinations like `PPPPPPPppppp`\n\nvar longFormattingTokensRegExp = /P+p+|P+|p+|''|'(''|[^'])+('|$)|./g;\nvar escapedStringRegExp = /^'([^]*?)'?$/;\nvar doubleQuoteRegExp = /''/g;\nvar unescapedLatinCharacterRegExp = /[a-zA-Z]/;\n/**\n * @name format\n * @category Common Helpers\n * @summary Format the date.\n *\n * @description\n * Return the formatted date string in the given format. The result may vary by locale.\n *\n * > ⚠️ Please note that the `format` tokens differ from Moment.js and other libraries.\n * > See: https://git.io/fxCyr\n *\n * The characters wrapped between two single quotes characters (') are escaped.\n * Two single quotes in a row, whether inside or outside a quoted sequence, represent a 'real' single quote.\n * (see the last example)\n *\n * Format of the string is based on Unicode Technical Standard #35:\n * https://www.unicode.org/reports/tr35/tr35-dates.html#Date_Field_Symbol_Table\n * with a few additions (see note 7 below the table).\n *\n * Accepted patterns:\n * | Unit | Pattern | Result examples | Notes |\n * |---------------------------------|---------|-----------------------------------|-------|\n * | Era | G..GGG | AD, BC | |\n * | | GGGG | Anno Domini, Before Christ | 2 |\n * | | GGGGG | A, B | |\n * | Calendar year | y | 44, 1, 1900, 2017 | 5 |\n * | | yo | 44th, 1st, 0th, 17th | 5,7 |\n * | | yy | 44, 01, 00, 17 | 5 |\n * | | yyy | 044, 001, 1900, 2017 | 5 |\n * | | yyyy | 0044, 0001, 1900, 2017 | 5 |\n * | | yyyyy | ... | 3,5 |\n * | Local week-numbering year | Y | 44, 1, 1900, 2017 | 5 |\n * | | Yo | 44th, 1st, 1900th, 2017th | 5,7 |\n * | | YY | 44, 01, 00, 17 | 5,8 |\n * | | YYY | 044, 001, 1900, 2017 | 5 |\n * | | YYYY | 0044, 0001, 1900, 2017 | 5,8 |\n * | | YYYYY | ... | 3,5 |\n * | ISO week-numbering year | R | -43, 0, 1, 1900, 2017 | 5,7 |\n * | | RR | -43, 00, 01, 1900, 2017 | 5,7 |\n * | | RRR | -043, 000, 001, 1900, 2017 | 5,7 |\n * | | RRRR | -0043, 0000, 0001, 1900, 2017 | 5,7 |\n * | | RRRRR | ... | 3,5,7 |\n * | Extended year | u | -43, 0, 1, 1900, 2017 | 5 |\n * | | uu | -43, 01, 1900, 2017 | 5 |\n * | | uuu | -043, 001, 1900, 2017 | 5 |\n * | | uuuu | -0043, 0001, 1900, 2017 | 5 |\n * | | uuuuu | ... | 3,5 |\n * | Quarter (formatting) | Q | 1, 2, 3, 4 | |\n * | | Qo | 1st, 2nd, 3rd, 4th | 7 |\n * | | QQ | 01, 02, 03, 04 | |\n * | | QQQ | Q1, Q2, Q3, Q4 | |\n * | | QQQQ | 1st quarter, 2nd quarter, ... | 2 |\n * | | QQQQQ | 1, 2, 3, 4 | 4 |\n * | Quarter (stand-alone) | q | 1, 2, 3, 4 | |\n * | | qo | 1st, 2nd, 3rd, 4th | 7 |\n * | | qq | 01, 02, 03, 04 | |\n * | | qqq | Q1, Q2, Q3, Q4 | |\n * | | qqqq | 1st quarter, 2nd quarter, ... | 2 |\n * | | qqqqq | 1, 2, 3, 4 | 4 |\n * | Month (formatting) | M | 1, 2, ..., 12 | |\n * | | Mo | 1st, 2nd, ..., 12th | 7 |\n * | | MM | 01, 02, ..., 12 | |\n * | | MMM | Jan, Feb, ..., Dec | |\n * | | MMMM | January, February, ..., December | 2 |\n * | | MMMMM | J, F, ..., D | |\n * | Month (stand-alone) | L | 1, 2, ..., 12 | |\n * | | Lo | 1st, 2nd, ..., 12th | 7 |\n * | | LL | 01, 02, ..., 12 | |\n * | | LLL | Jan, Feb, ..., Dec | |\n * | | LLLL | January, February, ..., December | 2 |\n * | | LLLLL | J, F, ..., D | |\n * | Local week of year | w | 1, 2, ..., 53 | |\n * | | wo | 1st, 2nd, ..., 53th | 7 |\n * | | ww | 01, 02, ..., 53 | |\n * | ISO week of year | I | 1, 2, ..., 53 | 7 |\n * | | Io | 1st, 2nd, ..., 53th | 7 |\n * | | II | 01, 02, ..., 53 | 7 |\n * | Day of month | d | 1, 2, ..., 31 | |\n * | | do | 1st, 2nd, ..., 31st | 7 |\n * | | dd | 01, 02, ..., 31 | |\n * | Day of year | D | 1, 2, ..., 365, 366 | 9 |\n * | | Do | 1st, 2nd, ..., 365th, 366th | 7 |\n * | | DD | 01, 02, ..., 365, 366 | 9 |\n * | | DDD | 001, 002, ..., 365, 366 | |\n * | | DDDD | ... | 3 |\n * | Day of week (formatting) | E..EEE | Mon, Tue, Wed, ..., Sun | |\n * | | EEEE | Monday, Tuesday, ..., Sunday | 2 |\n * | | EEEEE | M, T, W, T, F, S, S | |\n * | | EEEEEE | Mo, Tu, We, Th, Fr, Su, Sa | |\n * | ISO day of week (formatting) | i | 1, 2, 3, ..., 7 | 7 |\n * | | io | 1st, 2nd, ..., 7th | 7 |\n * | | ii | 01, 02, ..., 07 | 7 |\n * | | iii | Mon, Tue, Wed, ..., Sun | 7 |\n * | | iiii | Monday, Tuesday, ..., Sunday | 2,7 |\n * | | iiiii | M, T, W, T, F, S, S | 7 |\n * | | iiiiii | Mo, Tu, We, Th, Fr, Su, Sa | 7 |\n * | Local day of week (formatting) | e | 2, 3, 4, ..., 1 | |\n * | | eo | 2nd, 3rd, ..., 1st | 7 |\n * | | ee | 02, 03, ..., 01 | |\n * | | eee | Mon, Tue, Wed, ..., Sun | |\n * | | eeee | Monday, Tuesday, ..., Sunday | 2 |\n * | | eeeee | M, T, W, T, F, S, S | |\n * | | eeeeee | Mo, Tu, We, Th, Fr, Su, Sa | |\n * | Local day of week (stand-alone) | c | 2, 3, 4, ..., 1 | |\n * | | co | 2nd, 3rd, ..., 1st | 7 |\n * | | cc | 02, 03, ..., 01 | |\n * | | ccc | Mon, Tue, Wed, ..., Sun | |\n * | | cccc | Monday, Tuesday, ..., Sunday | 2 |\n * | | ccccc | M, T, W, T, F, S, S | |\n * | | cccccc | Mo, Tu, We, Th, Fr, Su, Sa | |\n * | AM, PM | a..aa | AM, PM | |\n * | | aaa | am, pm | |\n * | | aaaa | a.m., p.m. | 2 |\n * | | aaaaa | a, p | |\n * | AM, PM, noon, midnight | b..bb | AM, PM, noon, midnight | |\n * | | bbb | am, pm, noon, midnight | |\n * | | bbbb | a.m., p.m., noon, midnight | 2 |\n * | | bbbbb | a, p, n, mi | |\n * | Flexible day period | B..BBB | at night, in the morning, ... | |\n * | | BBBB | at night, in the morning, ... | 2 |\n * | | BBBBB | at night, in the morning, ... | |\n * | Hour [1-12] | h | 1, 2, ..., 11, 12 | |\n * | | ho | 1st, 2nd, ..., 11th, 12th | 7 |\n * | | hh | 01, 02, ..., 11, 12 | |\n * | Hour [0-23] | H | 0, 1, 2, ..., 23 | |\n * | | Ho | 0th, 1st, 2nd, ..., 23rd | 7 |\n * | | HH | 00, 01, 02, ..., 23 | |\n * | Hour [0-11] | K | 1, 2, ..., 11, 0 | |\n * | | Ko | 1st, 2nd, ..., 11th, 0th | 7 |\n * | | KK | 01, 02, ..., 11, 00 | |\n * | Hour [1-24] | k | 24, 1, 2, ..., 23 | |\n * | | ko | 24th, 1st, 2nd, ..., 23rd | 7 |\n * | | kk | 24, 01, 02, ..., 23 | |\n * | Minute | m | 0, 1, ..., 59 | |\n * | | mo | 0th, 1st, ..., 59th | 7 |\n * | | mm | 00, 01, ..., 59 | |\n * | Second | s | 0, 1, ..., 59 | |\n * | | so | 0th, 1st, ..., 59th | 7 |\n * | | ss | 00, 01, ..., 59 | |\n * | Fraction of second | S | 0, 1, ..., 9 | |\n * | | SS | 00, 01, ..., 99 | |\n * | | SSS | 000, 001, ..., 999 | |\n * | | SSSS | ... | 3 |\n * | Timezone (ISO-8601 w/ Z) | X | -08, +0530, Z | |\n * | | XX | -0800, +0530, Z | |\n * | | XXX | -08:00, +05:30, Z | |\n * | | XXXX | -0800, +0530, Z, +123456 | 2 |\n * | | XXXXX | -08:00, +05:30, Z, +12:34:56 | |\n * | Timezone (ISO-8601 w/o Z) | x | -08, +0530, +00 | |\n * | | xx | -0800, +0530, +0000 | |\n * | | xxx | -08:00, +05:30, +00:00 | 2 |\n * | | xxxx | -0800, +0530, +0000, +123456 | |\n * | | xxxxx | -08:00, +05:30, +00:00, +12:34:56 | |\n * | Timezone (GMT) | O...OOO | GMT-8, GMT+5:30, GMT+0 | |\n * | | OOOO | GMT-08:00, GMT+05:30, GMT+00:00 | 2 |\n * | Timezone (specific non-locat.) | z...zzz | GMT-8, GMT+5:30, GMT+0 | 6 |\n * | | zzzz | GMT-08:00, GMT+05:30, GMT+00:00 | 2,6 |\n * | Seconds timestamp | t | 512969520 | 7 |\n * | | tt | ... | 3,7 |\n * | Milliseconds timestamp | T | 512969520900 | 7 |\n * | | TT | ... | 3,7 |\n * | Long localized date | P | 04/29/1453 | 7 |\n * | | PP | Apr 29, 1453 | 7 |\n * | | PPP | April 29th, 1453 | 7 |\n * | | PPPP | Friday, April 29th, 1453 | 2,7 |\n * | Long localized time | p | 12:00 AM | 7 |\n * | | pp | 12:00:00 AM | 7 |\n * | | ppp | 12:00:00 AM GMT+2 | 7 |\n * | | pppp | 12:00:00 AM GMT+02:00 | 2,7 |\n * | Combination of date and time | Pp | 04/29/1453, 12:00 AM | 7 |\n * | | PPpp | Apr 29, 1453, 12:00:00 AM | 7 |\n * | | PPPppp | April 29th, 1453 at ... | 7 |\n * | | PPPPpppp| Friday, April 29th, 1453 at ... | 2,7 |\n * Notes:\n * 1. \"Formatting\" units (e.g. formatting quarter) in the default en-US locale\n * are the same as \"stand-alone\" units, but are different in some languages.\n * \"Formatting\" units are declined according to the rules of the language\n * in the context of a date. \"Stand-alone\" units are always nominative singular:\n *\n * `format(new Date(2017, 10, 6), 'do LLLL', {locale: cs}) //=> '6. listopad'`\n *\n * `format(new Date(2017, 10, 6), 'do MMMM', {locale: cs}) //=> '6. listopadu'`\n *\n * 2. Any sequence of the identical letters is a pattern, unless it is escaped by\n * the single quote characters (see below).\n * If the sequence is longer than listed in table (e.g. `EEEEEEEEEEE`)\n * the output will be the same as default pattern for this unit, usually\n * the longest one (in case of ISO weekdays, `EEEE`). Default patterns for units\n * are marked with \"2\" in the last column of the table.\n *\n * `format(new Date(2017, 10, 6), 'MMM') //=> 'Nov'`\n *\n * `format(new Date(2017, 10, 6), 'MMMM') //=> 'November'`\n *\n * `format(new Date(2017, 10, 6), 'MMMMM') //=> 'N'`\n *\n * `format(new Date(2017, 10, 6), 'MMMMMM') //=> 'November'`\n *\n * `format(new Date(2017, 10, 6), 'MMMMMMM') //=> 'November'`\n *\n * 3. Some patterns could be unlimited length (such as `yyyyyyyy`).\n * The output will be padded with zeros to match the length of the pattern.\n *\n * `format(new Date(2017, 10, 6), 'yyyyyyyy') //=> '00002017'`\n *\n * 4. `QQQQQ` and `qqqqq` could be not strictly numerical in some locales.\n * These tokens represent the shortest form of the quarter.\n *\n * 5. The main difference between `y` and `u` patterns are B.C. years:\n *\n * | Year | `y` | `u` |\n * |------|-----|-----|\n * | AC 1 | 1 | 1 |\n * | BC 1 | 1 | 0 |\n * | BC 2 | 2 | -1 |\n *\n * Also `yy` always returns the last two digits of a year,\n * while `uu` pads single digit years to 2 characters and returns other years unchanged:\n *\n * | Year | `yy` | `uu` |\n * |------|------|------|\n * | 1 | 01 | 01 |\n * | 14 | 14 | 14 |\n * | 376 | 76 | 376 |\n * | 1453 | 53 | 1453 |\n *\n * The same difference is true for local and ISO week-numbering years (`Y` and `R`),\n * except local week-numbering years are dependent on `options.weekStartsOn`\n * and `options.firstWeekContainsDate` (compare [getISOWeekYear]{@link https://date-fns.org/docs/getISOWeekYear}\n * and [getWeekYear]{@link https://date-fns.org/docs/getWeekYear}).\n *\n * 6. Specific non-location timezones are currently unavailable in `date-fns`,\n * so right now these tokens fall back to GMT timezones.\n *\n * 7. These patterns are not in the Unicode Technical Standard #35:\n * - `i`: ISO day of week\n * - `I`: ISO week of year\n * - `R`: ISO week-numbering year\n * - `t`: seconds timestamp\n * - `T`: milliseconds timestamp\n * - `o`: ordinal number modifier\n * - `P`: long localized date\n * - `p`: long localized time\n *\n * 8. `YY` and `YYYY` tokens represent week-numbering years but they are often confused with years.\n * You should enable `options.useAdditionalWeekYearTokens` to use them. See: https://git.io/fxCyr\n *\n * 9. `D` and `DD` tokens represent days of the year but they are ofthen confused with days of the month.\n * You should enable `options.useAdditionalDayOfYearTokens` to use them. See: https://git.io/fxCyr\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * - The second argument is now required for the sake of explicitness.\n *\n * ```javascript\n * // Before v2.0.0\n * format(new Date(2016, 0, 1))\n *\n * // v2.0.0 onward\n * format(new Date(2016, 0, 1), \"yyyy-MM-dd'T'HH:mm:ss.SSSxxx\")\n * ```\n *\n * - New format string API for `format` function\n * which is based on [Unicode Technical Standard #35](https://www.unicode.org/reports/tr35/tr35-dates.html#Date_Field_Symbol_Table).\n * See [this post](https://blog.date-fns.org/post/unicode-tokens-in-date-fns-v2-sreatyki91jg) for more details.\n *\n * - Characters are now escaped using single quote symbols (`'`) instead of square brackets.\n *\n * @param {Date|Number} date - the original date\n * @param {String} format - the string of tokens\n * @param {Object} [options] - an object with options.\n * @param {Locale} [options.locale=defaultLocale] - the locale object. See [Locale]{@link https://date-fns.org/docs/Locale}\n * @param {0|1|2|3|4|5|6} [options.weekStartsOn=0] - the index of the first day of the week (0 - Sunday)\n * @param {Number} [options.firstWeekContainsDate=1] - the day of January, which is\n * @param {Boolean} [options.useAdditionalWeekYearTokens=false] - if true, allows usage of the week-numbering year tokens `YY` and `YYYY`;\n * see: https://git.io/fxCyr\n * @param {Boolean} [options.useAdditionalDayOfYearTokens=false] - if true, allows usage of the day of year tokens `D` and `DD`;\n * see: https://git.io/fxCyr\n * @returns {String} the formatted date string\n * @throws {TypeError} 2 arguments required\n * @throws {RangeError} `date` must not be Invalid Date\n * @throws {RangeError} `options.locale` must contain `localize` property\n * @throws {RangeError} `options.locale` must contain `formatLong` property\n * @throws {RangeError} `options.weekStartsOn` must be between 0 and 6\n * @throws {RangeError} `options.firstWeekContainsDate` must be between 1 and 7\n * @throws {RangeError} use `yyyy` instead of `YYYY` for formatting years using [format provided] to the input [input provided]; see: https://git.io/fxCyr\n * @throws {RangeError} use `yy` instead of `YY` for formatting years using [format provided] to the input [input provided]; see: https://git.io/fxCyr\n * @throws {RangeError} use `d` instead of `D` for formatting days of the month using [format provided] to the input [input provided]; see: https://git.io/fxCyr\n * @throws {RangeError} use `dd` instead of `DD` for formatting days of the month using [format provided] to the input [input provided]; see: https://git.io/fxCyr\n * @throws {RangeError} format string contains an unescaped latin alphabet character\n *\n * @example\n * // Represent 11 February 2014 in middle-endian format:\n * var result = format(new Date(2014, 1, 11), 'MM/dd/yyyy')\n * //=> '02/11/2014'\n *\n * @example\n * // Represent 2 July 2014 in Esperanto:\n * import { eoLocale } from 'date-fns/locale/eo'\n * var result = format(new Date(2014, 6, 2), \"do 'de' MMMM yyyy\", {\n * locale: eoLocale\n * })\n * //=> '2-a de julio 2014'\n *\n * @example\n * // Escape string by single quote characters:\n * var result = format(new Date(2014, 6, 2, 15), \"h 'o''clock'\")\n * //=> \"3 o'clock\"\n */\n\nexport default function format(dirtyDate, dirtyFormatStr, dirtyOptions) {\n requiredArgs(2, arguments);\n var formatStr = String(dirtyFormatStr);\n var options = dirtyOptions || {};\n var locale = options.locale || defaultLocale;\n var localeFirstWeekContainsDate = locale.options && locale.options.firstWeekContainsDate;\n var defaultFirstWeekContainsDate = localeFirstWeekContainsDate == null ? 1 : toInteger(localeFirstWeekContainsDate);\n var firstWeekContainsDate = options.firstWeekContainsDate == null ? defaultFirstWeekContainsDate : toInteger(options.firstWeekContainsDate); // Test if weekStartsOn is between 1 and 7 _and_ is not NaN\n\n if (!(firstWeekContainsDate >= 1 && firstWeekContainsDate <= 7)) {\n throw new RangeError('firstWeekContainsDate must be between 1 and 7 inclusively');\n }\n\n var localeWeekStartsOn = locale.options && locale.options.weekStartsOn;\n var defaultWeekStartsOn = localeWeekStartsOn == null ? 0 : toInteger(localeWeekStartsOn);\n var weekStartsOn = options.weekStartsOn == null ? defaultWeekStartsOn : toInteger(options.weekStartsOn); // Test if weekStartsOn is between 0 and 6 _and_ is not NaN\n\n if (!(weekStartsOn >= 0 && weekStartsOn <= 6)) {\n throw new RangeError('weekStartsOn must be between 0 and 6 inclusively');\n }\n\n if (!locale.localize) {\n throw new RangeError('locale must contain localize property');\n }\n\n if (!locale.formatLong) {\n throw new RangeError('locale must contain formatLong property');\n }\n\n var originalDate = toDate(dirtyDate);\n\n if (!isValid(originalDate)) {\n throw new RangeError('Invalid time value');\n } // Convert the date in system timezone to the same date in UTC+00:00 timezone.\n // This ensures that when UTC functions will be implemented, locales will be compatible with them.\n // See an issue about UTC functions: https://github.com/date-fns/date-fns/issues/376\n\n\n var timezoneOffset = getTimezoneOffsetInMilliseconds(originalDate);\n var utcDate = subMilliseconds(originalDate, timezoneOffset);\n var formatterOptions = {\n firstWeekContainsDate: firstWeekContainsDate,\n weekStartsOn: weekStartsOn,\n locale: locale,\n _originalDate: originalDate\n };\n var result = formatStr.match(longFormattingTokensRegExp).map(function (substring) {\n var firstCharacter = substring[0];\n\n if (firstCharacter === 'p' || firstCharacter === 'P') {\n var longFormatter = longFormatters[firstCharacter];\n return longFormatter(substring, locale.formatLong, formatterOptions);\n }\n\n return substring;\n }).join('').match(formattingTokensRegExp).map(function (substring) {\n // Replace two single quote characters with one single quote character\n if (substring === \"''\") {\n return \"'\";\n }\n\n var firstCharacter = substring[0];\n\n if (firstCharacter === \"'\") {\n return cleanEscapedString(substring);\n }\n\n var formatter = formatters[firstCharacter];\n\n if (formatter) {\n if (!options.useAdditionalWeekYearTokens && isProtectedWeekYearToken(substring)) {\n throwProtectedError(substring, dirtyFormatStr, dirtyDate);\n }\n\n if (!options.useAdditionalDayOfYearTokens && isProtectedDayOfYearToken(substring)) {\n throwProtectedError(substring, dirtyFormatStr, dirtyDate);\n }\n\n return formatter(utcDate, substring, locale.localize, formatterOptions);\n }\n\n if (firstCharacter.match(unescapedLatinCharacterRegExp)) {\n throw new RangeError('Format string contains an unescaped latin alphabet character `' + firstCharacter + '`');\n }\n\n return substring;\n }).join('');\n return result;\n}\n\nfunction cleanEscapedString(input) {\n return input.match(escapedStringRegExp)[1].replace(doubleQuoteRegExp, \"'\");\n}","import { format } from 'date-fns'\nimport numbro from 'numbro'\n\nexport const formatCurrency = (val: Number, options = {}) => {\n if (val === null || val === undefined) return '–'\n\n // @ts-ignore\n const unformatted = numbro.unformat(val)\n // @ts-ignore\n const lang = selectCurrencyLanguage(options.lang)\n numbro.setLanguage(lang)\n\n return numbro(unformatted).formatCurrency({\n mantissa: 2,\n thousandSeparated: true,\n spaceSeparated: false\n })\n}\n\nexport const formatNumber = (val: Number, options = {}) => {\n if (val === null || val === undefined) return '–'\n\n // @ts-ignore\n const unformatted = numbro.unformat(val)\n // @ts-ignore\n const lang = selectCurrencyLanguage(options.lang)\n numbro.setLanguage(lang)\n\n return numbro(unformatted).format({\n mantissa: 2,\n thousandSeparated: true,\n spaceSeparated: false\n })\n}\n\nexport const formatDate = (date: Date) => {\n const year = date.getFullYear()\n const month = date.getMonth() + 1\n const day = date.getDate()\n\n return `${month}/${day}/${year}`\n}\n\n// formats the rails date for the input\nexport const parseDate = (date: null | string) => {\n if (date === null) {\n return null\n }\n\n const dateObj = new Date(date)\n\n return format(dateObj, 'MM/dd/yyyy')\n}\n\nexport const parseNumber = (val: string | number) => {\n if (typeof val === 'number') return val\n\n if (val === null || val === undefined) return 0\n\n return parseFloat(val.replace(/,/g, ''))\n}\n\nexport const roundDecimal = (val: any | Number | BigInt) => Math.round(val * 100) / 100\n\nexport const sumProp = (arr: any[], prop: string) => arr.reduce((acc, cur) => acc + cur[prop], 0)\n\n// Map of currency codes to numbro specific language codes\nexport const currencies = {\n AED: 'en-US', // skipped\n AUD: 'en-AU',\n BRL: 'pt-BR',\n CAD: 'en-US',\n CHF: 'de-CH',\n CLP: 'en-US', // does this work?\n\n // TODO\n ETB: 'en-US', // skipped\n HKD: 'en-US', // skipped\n IDR: 'en-US', // skipped\n ILS: 'en-US', // skipped\n INR: 'en-US', // skipped\n JPY: 'en-US', // skipped\n NZD: 'en-US', // skipped\n QAR: 'en-US', // skipped\n SEK: 'en-US', // skipped\n VND: 'en-US', // skipped\n ZAR: 'en-US', // skipped\n\n // Done\n GBP: 'en-GB',\n EUR: 'en-IE',\n SGD: 'en-US', // might be wrong\n USD: 'en-US'\n}\n\n// converts venture360 currency to numbro currency\n// @ts-ignore\nexport const selectCurrencyLanguage = (lang = 'USD') => currencies[lang] || lang\n","import { computed, reactive, toRaw } from \"vue\";\nimport {\n formatDate,\n roundDecimal,\n sumProp,\n parseDate,\n parseNumber,\n} from \"../utils\";\nimport { CapitalCall, CapitalCallVue, TransferAPI, TransferVue } from \"./types\";\n\ninterface Macros {\n called: number;\n management_fees: number | null;\n other_fees: number;\n}\n\ninterface State {\n capital_call: CapitalCallVue;\n capital_call_json: CapitalCall;\n transfers: TransferVue[];\n transfers_json: TransferAPI[];\n}\n\n// @ts-ignore\nconst state: State = reactive({\n transfers: [],\n});\n\nconst capital_call = computed(() => state.capital_call);\nconst transfers = computed(() => state.transfers);\nconst totals = computed(renderTotals);\n\n// make the JSON data reactive and override a few values\nconst makeCapitalCall = (data: CapitalCall): CapitalCallVue => {\n return {\n ...data,\n\n date: parseDate(data.date || new Date().toDateString()),\n schedule_date: data.schedule_date ? parseDate(data.schedule_date) : null,\n };\n};\n\n// interates over transfer records API object and builds the simplest possible version for Vue\n// later, when submitting data to the server, any missing values will be merged with the API object\nconst makeTransfers = (transfers: TransferAPI[]) => {\n return transfers.reduce((acc: TransferVue[], cur: TransferAPI) => {\n const transfer = {\n id: cur.id,\n is_active: true,\n name: cur.commitment.name,\n ownership_percentage: parseNumber(cur.commitment.ownership_percentage),\n commitment_amount: parseNumber(cur.commitment.capital_amount),\n commitment_remaining:\n parseNumber(cur.commitment.commitment_remaining) +\n parseNumber(cur.capital_amount) +\n parseNumber(cur.fee_amount) +\n parseNumber(cur.other_fee_amount),\n capital: parseNumber(cur.capital_amount) || 0,\n management_fees: parseNumber(cur.fee_amount) || 0,\n other_fees: parseNumber(cur.other_fee_amount) || 0,\n total_called: 0,\n total_commitment_remaining: 0,\n management_fee_percentage: parseNumber(\n cur.commitment.management_fee_percentage\n ),\n carried_interest_percentage: parseNumber(\n cur.commitment.carried_interest_percentage\n ),\n preferred_return_percentage: parseNumber(\n cur.commitment.preferred_return_percentage\n ),\n total_profits_realized: parseNumber(\n cur.commitment.total_profits_realized\n ),\n raw_total_profits_realized: parseNumber(\n cur.commitment.total_profits_realized\n ),\n };\n // these values need to be pre-computed\n transfer.total_called = calculateTransferTotalCalled(transfer);\n transfer.total_commitment_remaining = calculateTransferTotalCommitmentRemaining(\n transfer\n );\n\n return [...acc, transfer];\n }, []);\n};\n\nfunction calculateTransferValues(\n transfer: TransferVue,\n { called, management_fees, other_fees }: Macros\n) {\n // called and management_fees may be a $ or %\n const toCall =\n state.capital_call.selected_capital_type === \"$\"\n ? called\n : (state.capital_call.fund_total_capital_committed * called) / 100;\n const toManagementFee =\n management_fees !== null\n ? management_fees / 100\n : transfer.management_fee_percentage / 100;\n\n // perform calculations\n const cCapitalBeforeFees = toCall * transfer.ownership_percentage;\n const cManagementFees =\n toCall * toManagementFee * transfer.ownership_percentage;\n const cCapital = cCapitalBeforeFees - cManagementFees;\n const cOtherFees = other_fees * transfer.ownership_percentage;\n const cTotalCalled = cCapital + cManagementFees + cOtherFees;\n const cCommitmentRemaining = transfer.commitment_remaining - cTotalCalled;\n\n // return calculated values\n return {\n capital: roundDecimal(cCapital),\n management_fees: roundDecimal(cManagementFees),\n other_fees: roundDecimal(cOtherFees),\n total_called: roundDecimal(cTotalCalled),\n total_commitment_remaining: roundDecimal(cCommitmentRemaining),\n };\n}\n\nfunction calculateAndSetTransferValues(transfer: TransferVue, macros: Macros) {\n const {\n capital,\n management_fees,\n other_fees,\n total_called,\n total_commitment_remaining,\n } = calculateTransferValues(transfer, macros);\n\n transfer.capital = capital;\n transfer.management_fees = management_fees;\n transfer.other_fees = other_fees;\n transfer.total_called = total_called;\n transfer.total_commitment_remaining = total_commitment_remaining;\n}\n\nfunction updateCapitalCall(macros: Macros) {\n state.transfers\n .filter((transfer) => transfer.is_active)\n .forEach((transfer) => calculateAndSetTransferValues(transfer, macros));\n}\n\nfunction updateCapitalCallCalledType(type: string) {\n state.capital_call.selected_capital_type = type;\n\n updateCapitalCall({\n called: state.capital_call.entered_capital_amount,\n management_fees: state.capital_call.entered_management_fees_amount,\n other_fees: state.capital_call.entered_other_fees_amount,\n });\n}\n\nfunction calculateTransferTotalCalled(transfer: TransferVue) {\n return roundDecimal(\n transfer.capital + transfer.management_fees + transfer.other_fees\n );\n}\n\nfunction calculateTransferTotalCommitmentRemaining(transfer: TransferVue) {\n return roundDecimal(transfer.commitment_remaining - transfer.total_called);\n}\n\nconst makeUpdateTransferProp = (prop: string) => {\n return (index: number, val: number | string) => {\n const transfer = state.transfers[index];\n\n // @ts-ignore\n transfer[prop] = val;\n transfer.total_called = calculateTransferTotalCalled(transfer);\n transfer.total_commitment_remaining = calculateTransferTotalCommitmentRemaining(\n transfer\n );\n };\n};\n\nfunction renderTotals() {\n return {\n capital: sumProp(state.transfers, \"capital\"),\n management_fees: sumProp(state.transfers, \"management_fees\"),\n other_fees: sumProp(state.transfers, \"other_fees\"),\n total_called: sumProp(state.transfers, \"total_called\"),\n total_commitment_remaining: sumProp(\n state.transfers,\n \"total_commitment_remaining\"\n ),\n };\n}\n\nfunction toggleTransferIsActive(transfer: TransferVue, bool: boolean) {\n transfer.is_active = bool;\n}\n\nconst deleteProps = (data: object, props: String[]) => {\n // @ts-ignore\n props.forEach((prop: string) => delete data[prop]);\n\n return data;\n};\n\nfunction asCapitalCallPayload() {\n // @ts-ignore\n const payload_capital_call_transfers_attributes = state.transfers.reduce(\n (acc, cur, idx) => {\n const transfer = {\n // apply all transfer json attrs\n ...toRaw(state.transfers_json[idx]),\n\n // override or add specific calculate or entered values\n capital_amount: cur.capital,\n currency: state.capital_call.currency,\n fee_amount: cur.management_fees,\n other_fee_amount: cur.other_fees,\n };\n\n // remove protected attrs from the payload, otherwise rails will get throw a 500 error\n const protected_attrs = [\n \"investor_set_transaction_id\",\n \"commitment\",\n \"transaction_total\",\n ];\n\n return {\n ...acc,\n [idx]: {\n ...deleteProps(transfer, protected_attrs),\n },\n };\n },\n {}\n );\n\n const raw_capital_call = toRaw(state.capital_call);\n\n // assemble capital call fdata for JSON request\n const payload = {\n // apply all capital call json attrs\n ...toRaw(state.capital_call_json),\n\n // override or add calculated or entered values\n ...raw_capital_call,\n\n // Rails controller expects boolean as a string\n prior: raw_capital_call.prior.toString(),\n\n // legacy totals to be deprecated\n capital_amount: totals.value.capital,\n other_fee_amount: totals.value.other_fees,\n\n // Hardcoded after select was removed, but Rails controller expects a value\n include_fees: \"1\",\n // Hardcoded after select was removed, but Rails controller expects a value\n fee_percentage_of_commitment: \"false\",\n // Hardcoded after select was removed, but Rails controller expects a value\n other_fee_type: \"pro-rata\",\n\n // assign transfers prop\n capital_call_transfers_attributes: payload_capital_call_transfers_attributes,\n };\n\n // remove protected attrs from the payload, otherwise rails will get throw a 500 error\n const protected_attrs = [\n \"id\",\n \"investment_allocation_id\",\n \"portfolio_disbursement_allocation_id\",\n \"transaction_total\",\n \"fund_total_capital_committed\",\n ];\n return deleteProps(payload, protected_attrs);\n}\n\ninterface UseCapitalCall {\n capital_call_json: any;\n transfers_json: any;\n}\n\nexport default function useCapitalCall({\n capital_call_json,\n transfers_json,\n}: UseCapitalCall) {\n // @ts-ignore\n state.capital_call = makeCapitalCall(capital_call_json);\n state.capital_call_json = capital_call_json;\n // @ts-ignore\n state.transfers = makeTransfers(transfers_json);\n state.transfers_json = transfers_json;\n\n const updateTransferCapital = makeUpdateTransferProp(\"capital\");\n const updateTransferManagementFees = makeUpdateTransferProp(\n \"management_fees\"\n );\n const updateTransferOtherFees = makeUpdateTransferProp(\"other_fees\");\n\n const resetForm = () => {\n state.capital_call = makeCapitalCall(capital_call_json);\n state.transfers = makeTransfers(transfers_json);\n };\n\n const transfersWithChanges = () => {\n return transfers.value.filter((t, i) => {\n return (\n t.total_called !== parseNumber(transfers_json[i].transaction_total)\n );\n });\n };\n\n return {\n resetForm,\n\n capital_call,\n capital_call_json,\n transfers,\n transfers_json,\n transfersWithChanges,\n\n toggleTransferIsActive,\n updateTransferCapital,\n updateCapitalCallCalledType,\n updateTransferManagementFees,\n updateTransferOtherFees,\n totals,\n updateCapitalCall,\n calculateAndSetTransferValues,\n\n asCapitalCallPayload,\n };\n}\n","\n\n\n","\n\n\n","import { ref } from 'vue'\n\nexport default function useFocus () {\n const is_focused = ref(false)\n const blur = () => is_focused.value = false\n const focus = () => is_focused.value = true\n\n return {\n is_focused,\n blur,\n focus\n }\n}\n","\nimport { computed, defineComponent, toRefs, PropType } from 'vue'\nimport useFocus from '../../composables/use_focus'\nimport { formatNumber } from '../capital-call-form/utils'\nimport numbro from 'numbro'\n\nconst requireNumber = (evt: KeyboardEvent) => {\n const keysAllowed: string[] = ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9', '.', ',', '-']\n const keyPressed: string = evt.key\n if (!keysAllowed.includes(keyPressed)) {\n evt.preventDefault()\n }\n}\n\nexport default defineComponent({\n props: {\n modelValue: {\n type: String,\n default: 0,\n required: true,\n },\n\n disabled: {\n type: Boolean as PropType,\n default: false,\n },\n },\n\n setup(props, { emit }) {\n const { modelValue } = toRefs(props)\n const { blur, focus, is_focused } = useFocus()\n\n const displayValue = computed({\n // @ts-ignore\n get() {\n if (is_focused.value) {\n return numbro.unformat(modelValue.value) === undefined ? null : modelValue.value\n } else {\n return formatNumber(numbro.unformat(modelValue.value))\n }\n },\n set(rawValue: number | string) {\n const asString = String(rawValue).replace(',', '')\n const asNumber = numbro.unformat(asString)\n\n emit('update:modelValue', asNumber === undefined ? null : asNumber)\n },\n })\n\n return {\n displayValue,\n blur,\n focus,\n requireNumber,\n }\n },\n})\n","import { render } from \"./number-input.vue?vue&type=template&id=23191df2\"\nimport script from \"./number-input.vue?vue&type=script&lang=ts\"\nexport * from \"./number-input.vue?vue&type=script&lang=ts\"\nscript.render = render\n\nexport default script","\nimport { defineComponent, PropType } from 'vue'\nimport NumberInput from './number-input.vue'\n\n// @ts-ignore\nexport default defineComponent({\n props: {\n modelValue: {\n type: Number as PropType,\n required: true\n },\n\n disabled: {\n type: Boolean as PropType,\n default: false\n },\n\n currency: {\n type: String as PropType,\n default: 'USD',\n required: false\n },\n\n label: {\n type: String as PropType\n },\n\n description: {\n type: String as PropType\n },\n\n placeholder: {\n type: String as PropType,\n default: '0.00'\n }\n },\n\n components: {\n NumberInput\n }\n})\n","import { render } from \"./currency-input.vue?vue&type=template&id=28243494\"\nimport script from \"./currency-input.vue?vue&type=script&lang=ts\"\nexport * from \"./currency-input.vue?vue&type=script&lang=ts\"\nscript.render = render\n\nexport default script","\n\n\n","\nimport { defineComponent, reactive, PropType } from 'vue'\nimport CurrencyInput from './currency-input.vue'\nimport NumberInput from './number-input.vue'\n\nconst currencies = reactive([\n { code: 'USD' }\n])\n\nexport default defineComponent({\n props: {\n called: {\n type: Number as PropType,\n required: true\n },\n\n currency: {\n type: String as PropType,\n required: true\n },\n\n label: {\n type: String as PropType\n },\n\n description: {\n type: String as PropType\n },\n\n placeholder: {\n type: String as PropType,\n default: '0.00'\n }\n },\n\n components: {\n CurrencyInput,\n NumberInput\n }\n})\n","import { render } from \"./currency-with-selector-input.vue?vue&type=template&id=e65a6b54\"\nimport script from \"./currency-with-selector-input.vue?vue&type=script&lang=ts\"\nexport * from \"./currency-with-selector-input.vue?vue&type=script&lang=ts\"\nscript.render = render\n\nexport default script","\n\n\n","\n\n\n","\nimport { computed, defineComponent, ref, toRefs, PropType } from 'vue'\nimport useFocus from '../../composables/use_focus'\n\ntype FormatterFunction = (value: number|object|string) => number|object|string\n\nexport default defineComponent({\n props: {\n modelValue: {\n type: String as PropType,\n default: '',\n required: true\n },\n\n formatter: {\n type: Function as PropType,\n default: (value: number|object|string ) => value\n }\n },\n\n setup (props, { emit }) {\n const { modelValue } = toRefs(props)\n const formatter = props.formatter\n const { blur, focus, is_focused } = useFocus()\n\n const displayValue = computed({\n // @ts-ignore\n get () {\n if (is_focused.value) {\n return modelValue.value === '' ? '' : modelValue.value\n }\n else {\n return formatter(modelValue.value)\n }\n },\n set (newValue: string) {\n emit('update:modelValue', newValue)\n }\n })\n\n return {\n displayValue,\n blur,\n focus\n }\n }\n})\n","import { render } from \"./v-input.vue?vue&type=template&id=6ac7b5dc\"\nimport script from \"./v-input.vue?vue&type=script&lang=ts\"\nexport * from \"./v-input.vue?vue&type=script&lang=ts\"\nscript.render = render\n\nexport default script","\nimport { defineComponent, PropType } from 'vue'\nimport VInput from './v-input.vue'\n\nexport default defineComponent({\n props: {\n modelValue: {\n type: String as PropType,\n required: true\n },\n\n label: {\n type: String as PropType\n },\n\n description: {\n type: String as PropType\n },\n\n placeholder: {\n type: String as PropType,\n default: 'MM/DD/YYYY'\n }\n },\n\n components: {\n VInput\n }\n})\n","import { render } from \"./date-input.vue?vue&type=template&id=2be4c0ee\"\nimport script from \"./date-input.vue?vue&type=script&lang=ts\"\nexport * from \"./date-input.vue?vue&type=script&lang=ts\"\nscript.render = render\n\nexport default script","\n\n\n","\nimport { defineComponent, PropType } from 'vue'\n\nexport default defineComponent({\n props: {\n label: {\n type: String as PropType\n },\n\n description: {\n type: String as PropType\n },\n }\n})\n","import { render } from \"./input-group.vue?vue&type=template&id=51f70c12\"\nimport script from \"./input-group.vue?vue&type=script&lang=ts\"\nexport * from \"./input-group.vue?vue&type=script&lang=ts\"\nscript.render = render\n\nexport default script","\n","import { render } from \"./dollar-symbol-for-input.vue?vue&type=template&id=665fefc0\"\nconst script = {}\nscript.render = render\n\nexport default script","\n","import { render } from \"./percent-symbol-for-input.vue?vue&type=template&id=694e9954\"\nconst script = {}\nscript.render = render\n\nexport default script","\n\n\n","\nimport { defineComponent, reactive, PropType } from 'vue'\nimport CurrencyInput from './currency-input.vue'\nimport NumberInput from './number-input.vue'\n\nconst currencies = reactive([\n { code: 'USD' }\n])\n\nexport default defineComponent({\n props: {\n modelValue: {\n type: Number as PropType,\n required: true\n },\n\n label: {\n type: String as PropType\n },\n\n description: {\n type: String as PropType\n },\n\n placeholder: {\n type: String as PropType,\n default: '0'\n }\n },\n\n components: {\n CurrencyInput,\n NumberInput\n }\n})\n","import { render } from \"./percent-input.vue?vue&type=template&id=1158b654\"\nimport script from \"./percent-input.vue?vue&type=script&lang=ts\"\nexport * from \"./percent-input.vue?vue&type=script&lang=ts\"\nscript.render = render\n\nexport default script","\n\n\n","\nimport { defineComponent, computed, ref, toRefs, PropType, watch } from 'vue'\nimport { RadioOption } from '../../types'\n\nexport default defineComponent({\n props: {\n modelValue: {\n type: Boolean as PropType,\n required: true\n },\n\n options: {\n type: Array as PropType,\n required: true\n }\n },\n\n setup (props, { emit }) {\n // props\n const { modelValue } = toRefs(props)\n const options = ref(props.options)\n\n // interactions\n const activeIndex = ref(null)\n const selectedIndex = computed(() => props.options.map(o => o.value).indexOf(modelValue.value))\n const choose = (index: number) => {\n emit('update:modelValue', options.value[index].value)\n }\n\n return {\n options,\n \n activeIndex,\n selectedIndex, \n choose,\n }\n }\n})\n","import { render } from \"./radio-group.vue?vue&type=template&id=22d27a4f\"\nimport script from \"./radio-group.vue?vue&type=script&lang=ts\"\nexport * from \"./radio-group.vue?vue&type=script&lang=ts\"\nscript.render = render\n\nexport default script","\n","import { render } from \"./cancel-button.vue?vue&type=template&id=1b6f4489\"\nconst script = {}\nscript.render = render\n\nexport default script","\n\n\n","\n","import { render } from \"./v-loader.vue?vue&type=template&id=4f42c408\"\nconst script = {}\nscript.render = render\n\nexport default script","\nimport { defineComponent, PropType } from 'vue'\nimport VLoader from '../shared/v-loader.vue'\n\nexport default defineComponent({\n components: {\n VLoader\n },\n\n props: {\n saving: {\n type: Boolean as PropType,\n default: false,\n },\n },\n})\n","import { render } from \"./submit-button.vue?vue&type=template&id=2b51225a\"\nimport script from \"./submit-button.vue?vue&type=script&lang=ts\"\nexport * from \"./submit-button.vue?vue&type=script&lang=ts\"\nscript.render = render\n\nexport default script","\n\n\n\n","\nimport { defineComponent, PropType, computed } from 'vue'\n\nexport default defineComponent({\n props: {\n modelValue: {\n type: String as PropType,\n default: '',\n required: true\n },\n\n label: {\n type: String as PropType\n },\n\n description: {\n type: String as PropType\n },\n\n placeholder: {\n type: String as PropType,\n default: ''\n },\n\n rows: {\n type: Number as PropType,\n default: 4\n },\n },\n\n setup (props, { emit }) {\n const val = computed({ \n get: () => props.modelValue,\n set: (value) => emit('update:modelValue', value) \n }) \n\n return {\n val\n }\n }\n})\n","import { render } from \"./textarea-input.vue?vue&type=template&id=3ea9cf7d\"\nimport script from \"./textarea-input.vue?vue&type=script&lang=ts\"\nexport * from \"./textarea-input.vue?vue&type=script&lang=ts\"\nscript.render = render\n\nexport default script","\n\n\n\n\n\n","\nimport { defineComponent } from 'vue'\n\nexport default defineComponent({\n props: {\n name: String\n }\n})\n","import { render } from \"./v-icon.vue?vue&type=template&id=1f4117a2\"\nimport script from \"./v-icon.vue?vue&type=script&lang=ts\"\nexport * from \"./v-icon.vue?vue&type=script&lang=ts\"\n\nimport \"./v-icon.vue?vue&type=style&index=0&id=1f4117a2&lang=css\"\nscript.render = render\n\nexport default script","\n","import { render } from \"./v-td.vue?vue&type=template&id=1d5df672\"\nconst script = {}\nscript.render = render\n\nexport default script","export const useRailsRequest = () => {\n // @ts-ignore\n const csrf_token = document.querySelector('meta[name=\"csrf-token\"]').getAttribute('content')\n\n return {\n csrf_token\n }\n}\n","import { computed, ref } from 'vue'\n\n// ui state management composable\nexport const useState = () => {\n const state = ref('loading')\n\n const is_loading = computed(() => state.value === 'loading')\n const is_ready = computed(() => state.value === 'ready')\n const is_submitting = computed(() => state.value === 'submitting')\n const has_errors = computed(() => state.value === 'errors')\n\n const setState = (s: string) => state.value = s\n\n return {\n is_loading,\n is_ready,\n is_submitting,\n has_errors,\n setState,\n }\n}\n","\nimport \"../../index.css\";\nimport axios from \"axios\";\nimport { defineComponent, PropType, ref, computed, reactive } from \"vue\";\nimport { RadioOption } from \"../../types\";\nimport { CapitalCall, TransferAPI, TransferVue } from \"./logic/types\";\nimport useCapitalCall from \"./logic/use_capital_call\";\nimport CurrencyInput from \"../inputs/currency-input.vue\";\nimport CurrencyWithSelectorInput from \"../inputs/currency-with-selector-input.vue\";\nimport DateInput from \"../inputs/date-input.vue\";\nimport InputGroup from \"../inputs/input-group.vue\";\nimport DollarSymbol from \"../inputs/dollar-symbol-for-input.vue\";\nimport PercentSymbol from \"../inputs/percent-symbol-for-input.vue\";\nimport NumberInput from \"../inputs/number-input.vue\";\nimport PercentInput from \"../inputs/percent-input.vue\";\nimport RadioGroup from \"../inputs/radio-group.vue\";\nimport CancelButton from \"../inputs/cancel-button.vue\";\nimport SubmitButton from \"../inputs/submit-button.vue\";\nimport TextareaInput from \"../inputs/textarea-input.vue\";\nimport VIcon from \"../shared/v-icon.vue\";\nimport VInput from \"../inputs/v-input.vue\";\nimport VTd from \"../shared/v-td.vue\";\nimport { useRailsRequest } from \"../../utils/rails\";\nimport { useState } from \"../../utils/state\";\n\nconst priorOptions: RadioOption[] = [\n {\n label: \"Generate an invoice and send an email notice to investors.\",\n value: false,\n },\n {\n label:\n \"Save without generating an invoice or sending an email notice to investors.\",\n value: true,\n },\n];\n\nconst errors = reactive([]);\n\nexport default defineComponent({\n props: {\n capital_call: {\n type: Object as PropType,\n required: true,\n },\n\n transfers: {\n type: Array as PropType,\n required: true,\n },\n\n is_edit: {\n type: Boolean as PropType,\n required: true,\n },\n\n form_url: {\n type: String as PropType,\n required: true,\n },\n\n success_url: {\n type: String as PropType,\n required: true,\n },\n },\n\n components: {\n VIcon,\n VInput,\n VTd,\n InputGroup,\n CurrencyInput,\n CurrencyWithSelectorInput,\n DateInput,\n PercentInput,\n RadioGroup,\n CancelButton,\n SubmitButton,\n TextareaInput,\n DollarSymbol,\n PercentSymbol,\n NumberInput,\n },\n\n setup(props) {\n const state = useState();\n state.setState(\"ready\");\n\n const {\n capital_call,\n transfers,\n transfers_json,\n transfersWithChanges,\n toggleTransferIsActive,\n updateTransferCapital,\n updateTransferManagementFees,\n updateTransferOtherFees,\n totals,\n updateCapitalCall,\n updateCapitalCallCalledType,\n calculateAndSetTransferValues,\n asCapitalCallPayload,\n resetForm,\n // @ts-ignore\n } = useCapitalCall({\n capital_call_json: props.capital_call,\n transfers_json: props.transfers,\n });\n\n // @ts-ignore\n const makeUpdateCapitalCallInput = (ref: any) => {\n return (val: number) => {\n ref = val;\n\n updateCapitalCall({\n called: capital_call.value.entered_capital_amount,\n management_fees: capital_call.value.entered_management_fees_amount,\n other_fees: capital_call.value.entered_other_fees_amount,\n });\n };\n };\n\n const updateCapitalCallCalled = makeUpdateCapitalCallInput(\n capital_call.value.entered_capital_amount\n );\n const updateCapitalCallManagementFees = makeUpdateCapitalCallInput(\n capital_call.value.entered_management_fees_amount\n );\n const updateCapitalCallOtherFees = makeUpdateCapitalCallInput(\n capital_call.value.entered_other_fees_amount\n );\n\n const activeTransfersCount = transfers.value.filter((t) => t.is_active)\n .length;\n const allTransfersChecked = computed(() => {\n if (activeTransfersCount === transfers.value.length) {\n return true;\n }\n\n return true;\n });\n const allTransfersIndeterminate = computed(() => {\n if (activeTransfersCount === transfers.value.length) {\n return false;\n }\n\n if (activeTransfersCount === 0) {\n return true;\n }\n\n return true;\n });\n const toggleAllTransfersActive = ref(true);\n\n const toggleTransferIsActiveAnd = (\n transfer: TransferVue,\n bool: boolean\n ) => {\n // update bool and zero out transfer values\n toggleTransferIsActive(transfer, bool);\n // // recalculate transfers from macros\n\n if (bool) {\n calculateAndSetTransferValues(transfer, {\n called: capital_call.value.entered_capital_amount,\n management_fees: capital_call.value.entered_management_fees_amount,\n other_fees: capital_call.value.entered_other_fees_amount,\n });\n } else {\n // zero out transfer values\n const macros = { called: 0, management_fees: 0, other_fees: 0 };\n calculateAndSetTransferValues(transfer, macros);\n }\n };\n\n const toggleAllTransferIsActiveAnd = (bool: boolean) => {\n // update bool and zero out transfer values\n transfers.value.forEach((transfer) => {\n toggleTransferIsActive(transfer, bool);\n const macros = { called: 0, management_fees: 0, other_fees: 0 };\n calculateAndSetTransferValues(transfer, macros);\n });\n // recalculate transfers from macros\n if (bool) {\n updateCapitalCall({\n called: capital_call.value.entered_capital_amount,\n management_fees: capital_call.value.entered_management_fees_amount,\n other_fees: capital_call.value.entered_other_fees_amount,\n });\n } else {\n updateCapitalCall({\n called: 0,\n management_fees: 0,\n other_fees: 0,\n });\n }\n };\n\n if (props.is_edit === false) {\n // override transfer calculations\n updateCapitalCallCalled(capital_call.value.entered_capital_amount);\n }\n\n return {\n ...state,\n errors,\n\n priorOptions,\n\n capital_call,\n updateCapitalCallCalled,\n updateCapitalCallCalledType,\n updateCapitalCallManagementFees,\n updateCapitalCallOtherFees,\n toggleTransferIsActiveAnd,\n toggleAllTransferIsActiveAnd,\n toggleAllTransfersActive,\n allTransfersChecked,\n allTransfersIndeterminate,\n asCapitalCallPayload,\n\n resetForm,\n\n transfers,\n transfers_json,\n transfersWithChanges,\n updateTransferCapital,\n updateTransferManagementFees,\n updateTransferOtherFees,\n totals,\n };\n },\n\n methods: {\n cancel() {\n // @ts-ignore\n window.location = this.success_url;\n },\n\n submit() {\n if (this.is_ready || this.has_errors) {\n const makeConfirmMessage = (names: String[]) => {\n if (names.length === 0) {\n return undefined;\n }\n\n return `The following ${\n names.length\n } investor(s) will receive an email notification: ${names.join(\n \", \"\n )}. Are you sure?`;\n };\n\n let confirmed = this.capital_call.prior;\n // determine if any transfers have changed\n const withChanges = this.transfersWithChanges();\n // build array of investor names\n const investorNames = withChanges.map((t) => t.name);\n // build confirm message\n const confirmMessage = makeConfirmMessage(investorNames);\n\n const requiresConfirmation =\n !this.capital_call.prior && investorNames.length !== 0;\n\n // if transfers should have invoices and a confirmation exists and user confirms then continue\n if (requiresConfirmation && confirm(confirmMessage)) {\n confirmed = true;\n }\n\n if ((requiresConfirmation && confirmed) || !requiresConfirmation) {\n this.setState(\"submitting\");\n\n // set Rails specific headers for axios\n const { csrf_token } = useRailsRequest();\n axios.defaults.headers.common[\"X-CSRF-Token\"] = csrf_token;\n axios.defaults.headers.common[\"Accept\"] = \"application/json\";\n\n const payload = {\n utf8: \"✓\",\n authenticity_token: csrf_token,\n _method: this.is_edit ? \"PUT\" : \"POST\",\n capital_call: this.asCapitalCallPayload(),\n };\n\n axios({\n method: this.is_edit ? \"put\" : \"post\",\n url: this.form_url,\n data: payload,\n })\n .then((_res: any) => {\n this.setState(\"ready\");\n // @ts-ignore\n window.location = this.success_url;\n })\n .catch((error: any) => {\n this.setState(\"errors\");\n\n const { response } = error;\n const { data, status } = response;\n\n if (status === 422) {\n const message = Object.keys(data)\n .map((attr) => `${attr} ${data[attr].join(\". \")}`)\n .join(\". \\n\");\n\n alert(message);\n }\n });\n }\n }\n },\n },\n});\n","import { render } from \"./capital-call-form.vue?vue&type=template&id=37af53f2&scoped=true\"\nimport script from \"./capital-call-form.vue?vue&type=script&lang=ts\"\nexport * from \"./capital-call-form.vue?vue&type=script&lang=ts\"\n\nimport \"./capital-call-form.vue?vue&type=style&index=0&id=37af53f2&scoped=true&lang=css\"\nscript.render = render\nscript.__scopeId = \"data-v-37af53f2\"\n\nexport default script","\n\n\n\n\n","import { computed, reactive, toRaw } from 'vue'\nimport { roundDecimal, sumProp, parseDate, parseNumber } from '../capital-call-form/utils'\nimport { \n Disbursement, \n DisbursementVue, \n TransferAPI, \n TransferVue \n} from './types'\n\ninterface Macros {\n called: number\n management_fees: number|null\n other_fees: number\n}\n\ninterface State {\n disbursement: DisbursementVue\n disbursement_json: Disbursement\n transfers: TransferVue[]\n transfers_json: TransferAPI[]\n}\n\n// @ts-ignore\nconst state: State = reactive({\n transfers: []\n})\n\nconst disbursement = computed(() => state.disbursement)\nconst transfers = computed(() => state.transfers)\nconst totals = computed(renderTotals)\n\n// make the JSON data reactive and override a few values\nconst makeDisbursement = (data: Disbursement): DisbursementVue => {\n return {\n ...data,\n\n date: parseDate(data.date || new Date().toDateString())\n }\n}\n\n// interates over transfer records API object and builds the simplest possible version for Vue\n// later, when submitting data to the server, any missing values will be merged with the API object\nconst makeTransfers = (transfers: TransferAPI[]) => {\n return transfers.reduce((acc: TransferVue[], cur: TransferAPI) => {\n const transfer = {\n id: cur.id,\n is_active: true,\n name: cur.commitment.name,\n ownership_percentage: parseNumber(cur.commitment.ownership_without_fees_by_called_amount),\n commitment_amount: parseNumber(cur.commitment.capital_amount),\n commitment_remaining: parseNumber(cur.commitment.commitment_remaining),\n capital: parseNumber(cur.capital_amount) || 0,\n management_fees: parseNumber(cur.fee_amount) || 0,\n other_fees: parseNumber(cur.other_fee_amount) || 0,\n management_fee_percentage: parseNumber(cur.commitment.management_fee_percentage),\n carried_interest_percentage: parseNumber(cur.commitment.carried_interest_percentage),\n preferred_return_percentage: parseNumber(cur.commitment.preferred_return_percentage),\n total_called: 0,\n total_commitment_remaining: 0,\n total_profits_realized: 0,\n raw_total_profits_realized: parseNumber(cur.commitment.total_profits_realized),\n }\n // these values need to be pre-computed\n transfer.total_called = calculateTransferTotalCalled(transfer)\n transfer.total_commitment_remaining = calculateTransferTotalCommitmentRemaining(transfer)\n transfer.total_profits_realized = calculateTransferTotalProfitsRealized(transfer)\n\n return [ ...acc, transfer ]\n }, [])\n}\n\nfunction calculateTransferValues (\n transfer: TransferVue, \n { called, management_fees, other_fees }: Macros\n) {\n const carried_interest = management_fees\n\n // called and management_fees may be a $ or %\n const toDisburse = called;\n \n const toCarriedInterest = carried_interest !== null ? carried_interest / 100 : transfer.carried_interest_percentage / 100\n \n // perform calculations\n\n // calculate carried interest\n const amount_to_disburse_before_carried_interest = transfer.commitment_amount + transfer.commitment_amount * transfer.preferred_return_percentage / 100\n const total_profits_realized_before_fees = transfer.raw_total_profits_realized + toDisburse * transfer.ownership_percentage\n let amount_after_commitment_and_preferred_return = total_profits_realized_before_fees - amount_to_disburse_before_carried_interest\n\n if (amount_after_commitment_and_preferred_return < 0) {\n amount_after_commitment_and_preferred_return = 0\n }\n\n const cCapital = toDisburse * transfer.ownership_percentage\n const cCarriedInterest = amount_after_commitment_and_preferred_return < 0 ? 0 : (toDisburse * toCarriedInterest * transfer.ownership_percentage)\n const cOtherFees = other_fees * transfer.ownership_percentage\n const cTotalDisbursed = cCapital - cCarriedInterest - cOtherFees\n const cTotalProfitsRealized = transfer.commitment_amount - (transfer.raw_total_profits_realized + cTotalDisbursed)\n\n // return calculated values\n return {\n capital: roundDecimal(cCapital),\n management_fees: roundDecimal(cCarriedInterest),\n other_fees: roundDecimal(cOtherFees),\n total_called: roundDecimal(cTotalDisbursed),\n total_commitment_remaining: roundDecimal(cTotalProfitsRealized),\n total_profits_realized: cTotalProfitsRealized < 0 ? 0 : roundDecimal(cTotalProfitsRealized)\n }\n}\n\nfunction calculateAndSetTransferValues (transfer: TransferVue, macros: Macros) {\n const {\n capital,\n management_fees,\n other_fees,\n total_called,\n total_commitment_remaining,\n total_profits_realized\n } = calculateTransferValues(transfer, macros)\n\n transfer.capital = capital\n transfer.management_fees = management_fees\n transfer.other_fees = other_fees\n transfer.total_called = total_called\n transfer.total_commitment_remaining = total_commitment_remaining \n transfer.total_profits_realized = total_profits_realized \n}\n\nfunction updateDisbursement (macros: Macros) {\n state\n .transfers\n .filter(transfer => transfer.is_active)\n .forEach(transfer => calculateAndSetTransferValues(transfer, macros))\n}\n\n// logic is duplicated in #calculateTransferValues\nfunction calculateTransferTotalCalled (transfer: TransferVue) {\n return roundDecimal(\n transfer.capital - \n transfer.management_fees -\n transfer.other_fees\n )\n}\n\n// logic is duplicated in #calculateTransferValues\nfunction calculateTransferTotalCommitmentRemaining (transfer: TransferVue) {\n return roundDecimal(\n transfer.commitment_remaining - \n transfer.total_called\n )\n}\n\n// logic is duplicated in #calculateTransferValues\nfunction calculateTransferTotalProfitsRealized (transfer: TransferVue) {\n const hurdle = roundDecimal(\n transfer.commitment_amount +\n transfer.commitment_amount * transfer.preferred_return_percentage / 100 - \n transfer.total_called -\n transfer.raw_total_profits_realized\n )\n\n return hurdle < 0 ? 0 : hurdle\n}\n\nconst makeUpdateTransferProp = (prop: string) => {\n return (index: number, val: number|string) => {\n const transfer = state.transfers[index]\n\n // @ts-ignore\n transfer[prop] = val\n transfer.total_called = calculateTransferTotalCalled(transfer)\n transfer.total_commitment_remaining = calculateTransferTotalCommitmentRemaining(transfer)\n transfer.total_profits_realized = calculateTransferTotalProfitsRealized(transfer)\n }\n}\n\nfunction renderTotals () {\n return {\n capital: sumProp(state.transfers, 'capital'),\n management_fees: sumProp(state.transfers, 'management_fees'),\n other_fees: sumProp(state.transfers, 'other_fees'),\n total_called: sumProp(state.transfers, 'total_called'),\n total_commitment_remaining: sumProp(state.transfers, 'total_commitment_remaining'),\n total_profits_realized: sumProp(state.transfers, 'total_profits_realized')\n }\n}\n\nfunction toggleTransferIsActive (transfer: TransferVue, bool: boolean) {\n transfer.is_active = bool\n}\n\nconst deleteProps = (data: object, props: String[]) => {\n // @ts-ignore\n props.forEach((prop: string) => delete data[prop])\n \n return data\n}\n\n\nfunction asDisbursementPayload () {\n // @ts-ignore\n const payload_disbursement_transfers_attributes = state.transfers.reduce((acc, cur, idx) => {\n const transfer = {\n // apply all transfer json attrs\n ...toRaw(state.transfers_json[idx]),\n \n // override or add specific calculate or entered values\n capital_amount: cur.capital,\n currency: state.disbursement.currency,\n fee_amount: cur.management_fees,\n other_fee_amount: cur.other_fees\n }\n\n // remove protected attrs from the payload, otherwise rails will get throw a 500 error\n const protected_attrs = ['investor_set_transaction_id', 'commitment', 'transaction_total']\n\n return {\n ...acc,\n [idx]: {\n ...deleteProps(transfer, protected_attrs)\n }\n }\n }, {})\n\n const raw_disbursement = toRaw(state.disbursement)\n\n // assemble capital call fdata for JSON request\n const payload = {\n // apply all capital call json attrs\n ...toRaw(state.disbursement_json),\n\n // override or add calculated or entered values\n ...raw_disbursement,\n\n // Rails controller expects boolean as a string\n prior: raw_disbursement.prior.toString(),\n\n // legacy totals to be deprecated\n capital_amount: totals.value.capital,\n other_fee_amount: totals.value.other_fees,\n\n // Hardcoded after select was removed, but Rails controller expects a value\n include_fees: '1',\n // Hardcoded after select was removed, but Rails controller expects a value\n fee_percentage_of_commitment: 'false',\n // Hardcoded after select was removed, but Rails controller expects a value\n other_fee_type: 'pro-rata',\n\n // assign transfers prop\n disbursement_transfers_attributes: payload_disbursement_transfers_attributes\n }\n\n // remove protected attrs from the payload, otherwise rails will get throw a 500 error\n const protected_attrs = ['id', 'investment_allocation_id']\n return deleteProps(payload, protected_attrs)\n}\n\ninterface UseDisbursement {\n disbursement_json: any\n transfers_json: any\n}\n\nexport default function useDisbursement ({ disbursement_json, transfers_json }: UseDisbursement) {\n // @ts-ignore\n state.disbursement = makeDisbursement(disbursement_json)\n state.disbursement_json = disbursement_json\n // @ts-ignore\n state.transfers = makeTransfers(transfers_json)\n state.transfers_json = transfers_json\n\n const updateTransferCapital = makeUpdateTransferProp('capital')\n const updateTransferManagementFees = makeUpdateTransferProp('management_fees')\n const updateTransferOtherFees = makeUpdateTransferProp('other_fees')\n\n const resetForm = () => {\n state.disbursement = makeDisbursement(disbursement_json)\n state.transfers = makeTransfers(transfers_json)\n }\n\n const transfersWithChanges = () => {\n return transfers.value.filter((t, i) => {\n return t.total_called !== parseNumber(transfers_json[i].transaction_total)\n })\n }\n\n return {\n state,\n resetForm,\n\n disbursement,\n disbursement_json,\n transfers,\n transfers_json,\n transfersWithChanges,\n\n toggleTransferIsActive,\n updateTransferCapital,\n updateTransferManagementFees,\n updateTransferOtherFees,\n totals,\n updateDisbursement,\n calculateAndSetTransferValues,\n\n asDisbursementPayload\n }\n}\n","\nimport '../../index.css'\nimport axios from 'axios'\nimport { defineComponent, PropType, ref, computed } from 'vue'\nimport { RadioOption } from '../../types'\nimport { Disbursement, TransferAPI, TransferVue } from './types'\nimport useDisbursement from './use_disbursement'\nimport CurrencyInput from '../inputs/currency-input.vue'\nimport CurrencyWithSelectorInput from '../inputs/currency-with-selector-input.vue'\nimport DateInput from '../inputs/date-input.vue'\nimport InputGroup from '../inputs/input-group.vue'\nimport DollarSymbol from '../inputs/dollar-symbol-for-input.vue'\nimport PercentSymbol from '../inputs/percent-symbol-for-input.vue'\nimport NumberInput from '../inputs/number-input.vue'\nimport PercentInput from '../inputs/percent-input.vue'\nimport RadioGroup from '../inputs/radio-group.vue'\nimport CancelButton from '../inputs/cancel-button.vue'\nimport SubmitButton from '../inputs/submit-button.vue'\nimport TextareaInput from '../inputs/textarea-input.vue'\nimport VIcon from '../shared/v-icon.vue'\nimport VInput from '../inputs/v-input.vue'\nimport VTd from '../shared/v-td.vue'\nimport { useRailsRequest } from '../../utils/rails'\nimport { useState } from '../../utils/state'\n\n// send email to investors\n\n// notify each investor about their disbursement and request they confirm how they want to receive their funds.\nconst priorOptions: RadioOption[] = [\n {\n label:\n 'Send a disbursement notification email to each investor and require them to confirm how they would like to receive their funds.',\n value: false\n },\n { label: 'Do not send an email to investors.', value: true }\n]\n\nexport default defineComponent({\n props: {\n disbursement: {\n type: Object as PropType,\n required: true\n },\n\n transfers: {\n type: Array as PropType,\n required: true\n },\n\n is_edit: {\n type: Boolean as PropType,\n required: true\n },\n\n form_url: {\n type: String as PropType,\n required: true\n },\n\n success_url: {\n type: String as PropType,\n required: true\n }\n },\n\n components: {\n VIcon,\n VInput,\n VTd,\n InputGroup,\n CurrencyInput,\n CurrencyWithSelectorInput,\n DateInput,\n PercentInput,\n RadioGroup,\n CancelButton,\n SubmitButton,\n TextareaInput,\n DollarSymbol,\n PercentSymbol,\n NumberInput\n },\n\n setup(props) {\n const state = useState()\n state.setState('ready')\n\n const {\n state: s,\n resetForm,\n disbursement,\n transfers,\n transfersWithChanges,\n toggleTransferIsActive,\n updateTransferCapital,\n updateTransferManagementFees,\n updateTransferOtherFees,\n totals,\n updateDisbursement,\n calculateAndSetTransferValues,\n asDisbursementPayload\n // @ts-ignore\n } = useDisbursement({\n disbursement_json: props.disbursement,\n transfers_json: props.transfers\n })\n\n // @ts-ignore\n const makeUpdateDisbursementInput = (ref: any) => {\n return (val: number) => {\n ref = val\n\n updateDisbursement({\n called: disbursement.value.entered_capital_amount,\n management_fees: disbursement.value.entered_management_fees_amount,\n other_fees: disbursement.value.entered_other_fees_amount\n })\n }\n }\n\n const updateDisbursementCalled = makeUpdateDisbursementInput(disbursement.value.entered_capital_amount)\n const updateDisbursementManagementFees = makeUpdateDisbursementInput(\n disbursement.value.entered_management_fees_amount\n )\n const updateDisbursementOtherFees = makeUpdateDisbursementInput(disbursement.value.entered_other_fees_amount)\n\n const activeTransfersCount = transfers.value.filter(t => t.is_active).length\n const allTransfersChecked = computed(() => {\n if (activeTransfersCount === transfers.value.length) {\n return true\n }\n\n return true\n })\n const allTransfersIndeterminate = computed(() => {\n if (activeTransfersCount === transfers.value.length) {\n return false\n }\n\n if (activeTransfersCount === 0) {\n return true\n }\n\n return true\n })\n const toggleAllTransfersActive = ref(true)\n\n const toggleTransferIsActiveAnd = (transfer: TransferVue, bool: boolean) => {\n // update bool and zero out transfer values\n toggleTransferIsActive(transfer, bool)\n // // recalculate transfers from macros\n\n if (bool) {\n calculateAndSetTransferValues(transfer, {\n called: disbursement.value.entered_capital_amount,\n management_fees: disbursement.value.entered_management_fees_amount,\n other_fees: disbursement.value.entered_other_fees_amount\n })\n } else {\n // zero out transfer values\n const macros = { called: 0, management_fees: 0, other_fees: 0 }\n calculateAndSetTransferValues(transfer, macros)\n }\n }\n\n const toggleAllTransferIsActiveAnd = (bool: boolean) => {\n // update bool and zero out transfer values\n transfers.value.forEach(transfer => {\n toggleTransferIsActive(transfer, bool)\n const macros = { called: 0, management_fees: 0, other_fees: 0 }\n calculateAndSetTransferValues(transfer, macros)\n })\n // recalculate transfers from macros\n if (bool) {\n updateDisbursement({\n called: disbursement.value.entered_capital_amount,\n management_fees: disbursement.value.entered_management_fees_amount,\n other_fees: disbursement.value.entered_other_fees_amount\n })\n } else {\n updateDisbursement({\n called: 0,\n management_fees: 0,\n other_fees: 0\n })\n }\n }\n\n return {\n ...state,\n priorOptions,\n\n s,\n resetForm,\n disbursement,\n updateDisbursementCalled,\n updateDisbursementManagementFees,\n updateDisbursementOtherFees,\n toggleTransferIsActiveAnd,\n toggleAllTransferIsActiveAnd,\n toggleAllTransfersActive,\n allTransfersChecked,\n allTransfersIndeterminate,\n asDisbursementPayload,\n\n transfers,\n transfersWithChanges,\n updateTransferCapital,\n updateTransferManagementFees,\n updateTransferOtherFees,\n totals\n }\n },\n\n methods: {\n cancel() {\n // @ts-ignore\n window.location = this.success_url\n },\n\n submit() {\n if (this.is_ready || this.has_errors) {\n const makeConfirmMessage = (names: String[]) => {\n if (names.length === 0) {\n return undefined\n }\n\n return `The following ${names.length} investor(s) will receive an email notification: ${names.join(\n ', '\n )}. Are you sure?`\n }\n\n let confirmed = this.disbursement.prior\n // determine if any transfers have changed\n // @ts-ignore\n const withChanges = this.transfersWithChanges()\n // build array of investor names\n const investorNames = withChanges.map(t => t.name)\n // build confirm message\n const confirmMessage = makeConfirmMessage(investorNames)\n\n const requiresConfirmation = !this.disbursement.prior && investorNames.length !== 0\n\n // if transfers should have invoices and a confirmation exists and user confirms then continue\n if (requiresConfirmation && confirm(confirmMessage)) {\n confirmed = true\n }\n\n if ((requiresConfirmation && confirmed) || !requiresConfirmation) {\n this.setState('submitting')\n\n // set Rails specific headers for axios\n const { csrf_token } = useRailsRequest()\n axios.defaults.headers.common['X-CSRF-Token'] = csrf_token\n axios.defaults.headers.common['Accept'] = 'application/json'\n\n const payload = {\n utf8: '✓',\n authenticity_token: csrf_token,\n _method: this.is_edit ? 'PUT' : 'POST',\n disbursement: this.asDisbursementPayload()\n }\n\n axios({\n method: this.is_edit ? 'put' : 'post',\n url: this.form_url,\n data: payload\n })\n .then((_res: any) => {\n this.setState('ready')\n // @ts-ignore\n window.location = this.success_url\n })\n .catch((error: any) => {\n this.setState('errors')\n\n const { response } = error\n const { data, status } = response\n\n if (status === 422) {\n const message = Object.keys(data)\n .map(attr => `${attr} ${data[attr].join('. ')}`)\n .join('. \\n')\n\n alert(message)\n }\n })\n }\n }\n }\n }\n})\n","import { render } from \"./disbursement-form.vue?vue&type=template&id=974d6912&scoped=true\"\nimport script from \"./disbursement-form.vue?vue&type=script&lang=ts\"\nexport * from \"./disbursement-form.vue?vue&type=script&lang=ts\"\n\nimport \"./disbursement-form.vue?vue&type=style&index=0&id=974d6912&scoped=true&lang=css\"\nscript.render = render\nscript.__scopeId = \"data-v-974d6912\"\n\nexport default script","\n\n\n\n\n","import { computed, reactive, toRaw } from 'vue'\nimport { roundDecimal, sumProp, parseDate, parseNumber } from '../capital-call-form/utils'\nimport { \n Fee, \n FeeVue,\n TransferAPI,\n TransferVue\n} from './types'\n\ninterface Macros {\n called: number\n management_fees: number\n other_fees: number\n}\n\ninterface State {\n fee: FeeVue\n fee_json: Fee\n transfers: TransferVue[]\n transfers_json: TransferAPI[]\n}\n\n// @ts-ignore\nconst state: State = reactive({\n transfers: []\n})\n\nconst fee = computed(() => state.fee)\nconst transfers = computed(() => state.transfers)\nconst totals = computed(renderTotals)\n\n// make the JSON data reactive and override a few values\nconst makeFee = (data: Fee): FeeVue => {\n return {\n ...data,\n\n date: parseDate(data.date || new Date().toDateString()),\n selected_capital_type: '$',\n }\n}\n\n// interates over transfer records API object and builds the simplest possible version for Vue\n// later, when submitting data to the server, any missing values will be merged with the API object\nconst makeTransfers = (transfers: TransferAPI[]) => {\n return transfers.reduce((acc: TransferVue[], cur: TransferAPI) => {\n const transfer = {\n id: cur.id,\n is_active: true,\n name: cur.commitment.name,\n ownership_percentage: parseNumber(cur.commitment.ownership_percentage),\n commitment_amount: parseNumber(cur.commitment.capital_amount),\n commitment_remaining: parseNumber(cur.commitment.commitment_remaining),\n capital: parseNumber(cur.capital_amount) || 0,\n management_fees: parseNumber(cur.fee_amount) || 0,\n other_fees: parseNumber(cur.other_fee_amount) || 0,\n total_called: 0,\n total_commitment_remaining: 0,\n management_fee_percentage: parseNumber(cur.commitment.management_fee_percentage),\n carried_interest_percentage: parseNumber(cur.commitment.carried_interest_percentage),\n preferred_return_percentage: parseNumber(cur.commitment.preferred_return_percentage),\n total_profits_realized: parseNumber(cur.commitment.total_profits_realized),\n raw_total_profits_realized: parseNumber(cur.commitment.total_profits_realized),\n }\n \n // these values need to be pre-computed\n transfer.total_called = calculateTransferTotalCalled(transfer)\n transfer.total_commitment_remaining = calculateTransferTotalCommitmentRemaining(transfer)\n\n return [ ...acc, transfer ]\n }, [])\n}\n\nfunction calculateTransferValues (\n transfer: TransferVue, \n { called, management_fees, other_fees }: Macros\n) {\n // perform calculations\n const cCapitalBeforeFees = called * transfer.ownership_percentage\n const cManagementFees = transfer.commitment_amount * management_fees / 100\n const cCapital = cCapitalBeforeFees\n const cOtherFees = other_fees * transfer.ownership_percentage\n const cTotalCalled = cCapital + cManagementFees + cOtherFees\n const cCommitmentRemaining = transfer.commitment_remaining - cTotalCalled\n\n // return calculated values\n return {\n capital: roundDecimal(cCapital),\n management_fees: roundDecimal(cManagementFees),\n other_fees: roundDecimal(cOtherFees),\n total_called: roundDecimal(cTotalCalled),\n total_commitment_remaining: roundDecimal(cCommitmentRemaining),\n }\n}\n\nfunction calculateAndSetTransferValues (transfer: TransferVue, macros: Macros) {\n const {\n capital,\n management_fees,\n other_fees,\n total_called,\n total_commitment_remaining\n } = calculateTransferValues(transfer, macros)\n\n transfer.capital = capital\n transfer.management_fees = management_fees\n transfer.other_fees = other_fees\n transfer.total_called = total_called\n transfer.total_commitment_remaining = total_commitment_remaining \n}\n\nfunction updateFee (macros: Macros) {\n state\n .transfers\n .filter(transfer => transfer.is_active)\n .forEach(transfer => calculateAndSetTransferValues(transfer, macros))\n}\n\nfunction calculateTransferTotalCalled (transfer: TransferVue) {\n return roundDecimal(\n transfer.capital + \n transfer.management_fees + \n transfer.other_fees\n )\n}\n\nfunction calculateTransferTotalCommitmentRemaining (transfer: TransferVue) {\n return roundDecimal(\n transfer.commitment_remaining - \n transfer.total_called\n )\n}\n\nconst makeUpdateTransferProp = (prop: string) => {\n return (index: number, val: number|string) => {\n const transfer = state.transfers[index]\n\n // @ts-ignore\n transfer[prop] = val\n transfer.total_called = calculateTransferTotalCalled(transfer)\n transfer.total_commitment_remaining = calculateTransferTotalCommitmentRemaining(transfer)\n }\n}\n\nfunction renderTotals () {\n return {\n capital: sumProp(state.transfers, 'capital'),\n management_fees: sumProp(state.transfers, 'management_fees'),\n other_fees: sumProp(state.transfers, 'other_fees'),\n total_called: sumProp(state.transfers, 'total_called'),\n total_commitment_remaining: sumProp(state.transfers, 'total_commitment_remaining')\n }\n}\n\nfunction toggleTransferIsActive (transfer: TransferVue, bool: boolean) {\n transfer.is_active = bool\n}\n\nconst deleteProps = (data: object, props: String[]) => {\n // @ts-ignore\n props.forEach((prop: string) => delete data[prop])\n \n return data\n}\n\n\nfunction asFeePayload () {\n // @ts-ignore\n const payload_fee_transfers_attributes = state.transfers.reduce((acc, cur, idx) => {\n const transfer = {\n // apply all transfer json attrs\n ...toRaw(state.transfers_json[idx]),\n \n // override or add specific calculate or entered values\n capital_amount: cur.capital,\n currency: state.fee.currency,\n fee_amount: cur.management_fees,\n other_fee_amount: cur.other_fees\n }\n\n // remove protected attrs from the payload, otherwise rails will get throw a 500 error\n const protected_attrs = ['investor_set_transaction_id', 'commitment', 'transaction_total']\n\n return {\n ...acc,\n [idx]: {\n ...deleteProps(transfer, protected_attrs)\n }\n }\n }, {})\n\n const raw_fee = toRaw(state.fee)\n\n // assemble capital call fdata for JSON request\n const payload = {\n // apply all capital call json attrs\n ...toRaw(state.fee_json),\n\n // override or add calculated or entered values\n ...raw_fee,\n\n // Rails controller expects boolean as a string\n prior: raw_fee.prior.toString(),\n\n // legacy totals to be deprecated\n capital_amount: totals.value.capital,\n other_fee_amount: totals.value.other_fees,\n\n // Hardcoded after select was removed, but Rails controller expects a value\n include_fees: '1',\n // Hardcoded after select was removed, but Rails controller expects a value\n fee_percentage_of_commitment: 'false',\n // Hardcoded after select was removed, but Rails controller expects a value\n other_fee_type: 'pro-rata',\n\n // assign transfers prop\n transfers_attributes: payload_fee_transfers_attributes\n }\n\n // remove protected attrs from the payload, otherwise rails will get throw a 500 error\n const protected_attrs = ['id', 'investment_allocation_id', 'portfolio_fee_allocation_id']\n return deleteProps(payload, protected_attrs)\n}\n\ninterface UseFee {\n fee_json: any\n transfers_json: any\n}\n\nexport default function useFee ({ fee_json, transfers_json }: UseFee) {\n // @ts-ignore\n state.fee = makeFee(fee_json)\n state.fee_json = fee_json\n // @ts-ignore\n state.transfers = makeTransfers(transfers_json)\n state.transfers_json = transfers_json\n\n const updateTransferCapital = makeUpdateTransferProp('capital')\n const updateTransferManagementFees = makeUpdateTransferProp('management_fees')\n const updateTransferOtherFees = makeUpdateTransferProp('other_fees')\n\n const resetForm = () => {\n state.fee = makeFee(fee_json)\n state.transfers = makeTransfers(transfers_json)\n }\n\n const transfersWithChanges = () => {\n return transfers.value.filter((t, i) => {\n return t.total_called !== parseNumber(transfers_json[i].transaction_total)\n })\n }\n\n return {\n resetForm,\n \n fee,\n fee_json,\n transfers,\n transfers_json,\n transfersWithChanges,\n\n toggleTransferIsActive,\n updateTransferCapital,\n updateTransferManagementFees,\n updateTransferOtherFees,\n totals,\n updateFee,\n calculateAndSetTransferValues,\n\n asFeePayload\n }\n}\n","\nimport \"../../index.css\";\nimport axios from \"axios\";\nimport { defineComponent, PropType, ref, computed } from \"vue\";\nimport { RadioOption } from \"../../types\";\nimport { Fee, TransferAPI, TransferVue } from \"./types\";\nimport useFee from \"./use_fee\";\nimport CurrencyInput from \"../inputs/currency-input.vue\";\nimport CurrencyWithSelectorInput from \"../inputs/currency-with-selector-input.vue\";\nimport DateInput from \"../inputs/date-input.vue\";\nimport InputGroup from \"../inputs/input-group.vue\";\nimport DollarSymbol from \"../inputs/dollar-symbol-for-input.vue\";\nimport PercentSymbol from \"../inputs/percent-symbol-for-input.vue\";\nimport NumberInput from \"../inputs/number-input.vue\";\nimport PercentInput from \"../inputs/percent-input.vue\";\nimport RadioGroup from \"../inputs/radio-group.vue\";\nimport CancelButton from \"../inputs/cancel-button.vue\";\nimport SubmitButton from \"../inputs/submit-button.vue\";\nimport TextareaInput from \"../inputs/textarea-input.vue\";\nimport VIcon from \"../shared/v-icon.vue\";\nimport VInput from \"../inputs/v-input.vue\";\nimport VTd from \"../shared/v-td.vue\";\nimport { useRailsRequest } from \"../../utils/rails\";\nimport { useState } from \"../../utils/state\";\n\nconst priorOptions: RadioOption[] = [\n { label: \"Send an email notice to investors.\", value: false },\n { label: \"Save without sending an email notice to investors.\", value: true },\n];\n\nexport default defineComponent({\n props: {\n fee: {\n type: Object as PropType,\n required: true,\n },\n\n transfers: {\n type: Array as PropType,\n required: true,\n },\n\n is_edit: {\n type: Boolean as PropType,\n required: true,\n },\n\n form_url: {\n type: String as PropType,\n required: true,\n },\n\n success_url: {\n type: String as PropType,\n required: true,\n },\n },\n\n components: {\n VIcon,\n VInput,\n VTd,\n InputGroup,\n CurrencyInput,\n CurrencyWithSelectorInput,\n DateInput,\n PercentInput,\n RadioGroup,\n CancelButton,\n SubmitButton,\n TextareaInput,\n DollarSymbol,\n PercentSymbol,\n NumberInput,\n },\n\n setup(props) {\n const state = useState();\n state.setState(\"ready\");\n\n const {\n resetForm,\n fee,\n transfers,\n transfersWithChanges,\n toggleTransferIsActive,\n updateTransferCapital,\n updateTransferManagementFees,\n updateTransferOtherFees,\n totals,\n updateFee,\n calculateAndSetTransferValues,\n asFeePayload,\n // @ts-ignore\n } = useFee({\n fee_json: props.fee,\n transfers_json: props.transfers,\n });\n\n // @ts-ignore\n const makeUpdateFeeInput = (ref: any) => {\n return (val: number) => {\n ref = val;\n\n updateFee({\n called: fee.value.entered_capital_amount,\n management_fees: fee.value.entered_management_fees_amount,\n other_fees: fee.value.entered_other_fees_amount,\n });\n };\n };\n\n const updateFeeCalled = makeUpdateFeeInput(fee.value.entered_capital_amount);\n const updateFeeManagementFees = makeUpdateFeeInput(\n fee.value.entered_management_fees_amount\n );\n const updateFeeOtherFees = makeUpdateFeeInput(fee.value.entered_other_fees_amount);\n\n const activeTransfersCount = transfers.value.filter((t) => t.is_active).length;\n const allTransfersChecked = computed(() => {\n if (activeTransfersCount === transfers.value.length) {\n return true;\n }\n\n return true;\n });\n const allTransfersIndeterminate = computed(() => {\n if (activeTransfersCount === transfers.value.length) {\n return false;\n }\n\n if (activeTransfersCount === 0) {\n return true;\n }\n\n return true;\n });\n const toggleAllTransfersActive = ref(true);\n\n const toggleTransferIsActiveAnd = (transfer: TransferVue, bool: boolean) => {\n // update bool and zero out transfer values\n toggleTransferIsActive(transfer, bool);\n // // recalculate transfers from macros\n\n if (bool) {\n calculateAndSetTransferValues(transfer, {\n called: fee.value.entered_capital_amount,\n management_fees: fee.value.entered_management_fees_amount,\n other_fees: fee.value.entered_other_fees_amount,\n });\n } else {\n // zero out transfer values\n const macros = { called: 0, management_fees: 0, other_fees: 0 };\n calculateAndSetTransferValues(transfer, macros);\n }\n };\n\n const toggleAllTransferIsActiveAnd = (bool: boolean) => {\n // update bool and zero out transfer values\n transfers.value.forEach((transfer) => {\n toggleTransferIsActive(transfer, bool);\n const macros = { called: 0, management_fees: 0, other_fees: 0 };\n calculateAndSetTransferValues(transfer, macros);\n });\n // recalculate transfers from macros\n if (bool) {\n updateFee({\n called: fee.value.entered_capital_amount,\n management_fees: fee.value.entered_management_fees_amount,\n other_fees: fee.value.entered_other_fees_amount,\n });\n } else {\n updateFee({\n called: 0,\n management_fees: 0,\n other_fees: 0,\n });\n }\n };\n\n return {\n ...state,\n priorOptions,\n\n resetForm,\n fee,\n updateFeeCalled,\n updateFeeManagementFees,\n updateFeeOtherFees,\n toggleTransferIsActiveAnd,\n toggleAllTransferIsActiveAnd,\n toggleAllTransfersActive,\n allTransfersChecked,\n allTransfersIndeterminate,\n asFeePayload,\n\n transfers,\n transfersWithChanges,\n updateTransferCapital,\n updateTransferManagementFees,\n updateTransferOtherFees,\n totals,\n };\n },\n\n methods: {\n cancel() {\n // @ts-ignore\n window.location = this.success_url;\n },\n\n submit() {\n if (this.is_ready || this.has_errors) {\n const makeConfirmMessage = (names: String[]) => {\n if (names.length === 0) {\n return undefined;\n }\n\n return `The following ${\n names.length\n } investor(s) will receive an email notification: ${names.join(\n \", \"\n )}. Are you sure?`;\n };\n\n let confirmed = this.fee.prior;\n // determine if any transfers have changed\n const withChanges = this.transfersWithChanges();\n // build array of investor names\n const investorNames = withChanges.map((t) => t.name);\n // build confirm message\n const confirmMessage = makeConfirmMessage(investorNames);\n\n const requiresConfirmation = !this.fee.prior && investorNames.length !== 0;\n\n // if transfers should have invoices and a confirmation exists and user confirms then continue\n if (requiresConfirmation && confirm(confirmMessage)) {\n confirmed = true;\n }\n\n if ((requiresConfirmation && confirmed) || !requiresConfirmation) {\n this.setState(\"submitting\");\n\n // set Rails specific headers for axios\n const { csrf_token } = useRailsRequest();\n axios.defaults.headers.common[\"X-CSRF-Token\"] = csrf_token;\n axios.defaults.headers.common[\"Accept\"] = \"application/json\";\n\n const payload = {\n utf8: \"✓\",\n authenticity_token: csrf_token,\n _method: this.is_edit ? \"PUT\" : \"POST\",\n investor_set_fee: this.asFeePayload(),\n };\n\n axios({\n method: this.is_edit ? \"put\" : \"post\",\n url: this.form_url,\n data: payload,\n })\n .then((_res: any) => {\n this.setState(\"ready\");\n // @ts-ignore\n window.location = this.success_url;\n })\n .catch((error: any) => {\n this.setState(\"errors\");\n\n const { response } = error;\n const { data, status } = response;\n\n if (status === 422) {\n const message = Object.keys(data)\n .map((attr) => `${attr} ${data[attr].join(\". \")}`)\n .join(\". \\n\");\n\n alert(message);\n }\n });\n }\n }\n },\n },\n});\n","import { render } from \"./fee-form.vue?vue&type=template&id=2091981b&scoped=true\"\nimport script from \"./fee-form.vue?vue&type=script&lang=ts\"\nexport * from \"./fee-form.vue?vue&type=script&lang=ts\"\n\nimport \"./fee-form.vue?vue&type=style&index=0&id=2091981b&scoped=true&lang=css\"\nscript.render = render\nscript.__scopeId = \"data-v-2091981b\"\n\nexport default script","\n\n\n","import numbro from 'numbro'\n\nexport const formatAsCurrency = (value: number) => {\n return numbro(value)\n .formatCurrency({ \n mantissa: 2, \n thousandSeparated: true, \n spaceSeparated: false \n })\n}\n\nexport const formatAsNumber = (value: number) => {\n return numbro(value)\n .format({ \n mantissa: 2, \n thousandSeparated: true, \n spaceSeparated: false \n })\n}\n","export const validateIsNumerical = (evt: KeyboardEvent) => {\n const whitelist: string[] = ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9', '.']\n const keyPressed: string = evt.key\n\n if (!whitelist.includes(keyPressed)) {\n evt.preventDefault()\n }\n}\n","\nimport '../../index.css'\nimport axios from 'axios'\nimport numbro from 'numbro'\nimport { computed, defineComponent, ref, PropType, Ref } from 'vue'\nimport useFocus from '../../composables/use_focus'\nimport { formatAsCurrency, formatAsNumber } from '../../utils/formatters'\nimport { validateIsNumerical } from '../../utils/validators'\nimport { useRailsRequest } from '../../utils/rails'\nimport VIcon from '../shared/v-icon.vue'\nimport VLoader from '../shared/v-loader.vue'\n\n// ui state management composable\nconst useState = () => {\n const state = ref('loading')\n\n const is_loading = computed(() => state.value === 'loading')\n const is_ready = computed(() => state.value === 'ready')\n const is_editing = computed(() => state.value === 'editing')\n const is_submitting = computed(() => state.value === 'submitting')\n const has_errors = computed(() => state.value === 'errors')\n\n const setState = (s: string) => state.value = s\n\n // helper methods\n const cancel = () => setState('ready')\n const edit = () => setState('editing')\n\n return {\n is_loading,\n is_ready,\n is_editing,\n is_submitting,\n has_errors,\n setState,\n cancel,\n edit\n }\n}\n\nconst useInlineEdit = (value: number, is_focused: Ref) => {\n const rawValue = ref(value)\n const savedValue = ref(value)\n\n // method to update the raw value\n const setValue = (value: string) => {\n const asNumber = numbro.unformat(value)\n rawValue.value = asNumber === undefined ? 0 : asNumber\n }\n\n // compute blurred value\n const formattedValue = computed(() => formatAsCurrency(savedValue.value))\n\n // compute focused value (when editing)\n const inputValue = computed(() => {\n if (is_focused.value) {\n return rawValue.value === 0 ? '' : rawValue.value\n } \n else {\n return formatAsNumber(rawValue.value)\n }\n })\n\n return {\n rawValue,\n savedValue,\n formattedValue,\n inputValue,\n setValue\n }\n}\n\nexport default defineComponent({\n components: {\n VIcon,\n VLoader\n },\n\n props: {\n url: {\n type: String as PropType,\n required: true\n },\n\n currency: {\n type: String as PropType,\n required: false,\n default: 'USD'\n },\n\n value: {\n type: Number as PropType,\n required: true\n }\n },\n\n setup (props) {\n const focus = useFocus()\n const state = useState()\n const inlineEdit = useInlineEdit(props.value, focus.is_focused)\n const url = props.url\n\n return {\n ...focus,\n ...state,\n ...inlineEdit,\n url,\n\n validateIsNumerical\n }\n },\n\n computed: {\n show_editor (): boolean {\n return this.has_errors || this.is_editing || this.is_submitting\n }\n },\n\n methods: {\n submit () {\n this.setState('submitting')\n\n // set Rails specific headers for axios\n const { csrf_token } = useRailsRequest()\n axios.defaults.headers.common['X-CSRF-Token'] = csrf_token\n axios.defaults.headers.common['Accept'] = 'application/json'\n\n const payload = {\n 'utf8': '✓',\n 'authenticity_token': csrf_token,\n\n // rails requirement for update request\n '_method': 'PUT',\n\n // id: '',\n // fund_id: '',\n fund_commitment: {\n capital: this.rawValue\n }\n }\n\n axios.put(this.url, payload)\n .then(_res => {\n this.setState('ready')\n this.savedValue = this.rawValue\n })\n .catch(error => {\n this.setState('errors')\n alert(error.response.data.join('. '))\n })\n }\n }\n})\n","import { render } from \"./inline-edit.vue?vue&type=template&id=11aac842\"\nimport script from \"./inline-edit.vue?vue&type=script&lang=ts\"\nexport * from \"./inline-edit.vue?vue&type=script&lang=ts\"\nscript.render = render\n\nexport default script"],"sourceRoot":""}