{"version":3,"sources":["webpack:///./node_modules/ajv/lib/dotjs/format.js","webpack:///./node_modules/ajv/lib/dotjs/not.js","webpack:///./node_modules/ajv/lib/dotjs/const.js","webpack:///./node_modules/ajv-i18n/localize/es/index.js","webpack:///./node_modules/ajv-i18n/localize/en/index.js","webpack:///./node_modules/core-js/internals/same-value.js","webpack:///./src/components/inputs/CurrenciesInput.vue?aef1","webpack:///./node_modules/cache-loader/dist/cjs.js","webpack:///./src/components/inputs/CurrenciesInput.vue?dd07","webpack:///./src/components/inputs/CurrenciesInput.vue","webpack:///./node_modules/ajv/lib/dotjs/oneOf.js","webpack:///./node_modules/uri-js/dist/es5/uri.all.js","webpack:///./src/components/widgets/StatusWidget.vue?8b13","webpack:///./src/components/widgets/StatusWidget.vue?7805","webpack:///./src/components/widgets/StatusWidget.vue","webpack:///./node_modules/ajv/lib/dotjs/comment.js","webpack:///./node_modules/ajv/lib/dotjs/contains.js","webpack:///./node_modules/ajv/lib/dotjs/anyOf.js","webpack:///./node_modules/ajv/lib/dotjs/index.js","webpack:///./node_modules/ajv/lib/data.js","webpack:///./src/components/inputs/CurrenciesInput.vue?4a5a","webpack:///./node_modules/fast-deep-equal/index.js","webpack:///./src/components/widgets/StatusWidget.vue?dfb3","webpack:///./node_modules/ajv/lib/dotjs/propertyNames.js","webpack:///./node_modules/ajv/lib/dotjs/ref.js","webpack:///./node_modules/ajv/lib/dotjs/pattern.js","webpack:///./node_modules/ajv/lib/dotjs/custom.js","webpack:///./node_modules/ajv-i18n/localize/de/index.js","webpack:///./node_modules/ajv/lib/compile/ucs2length.js","webpack:///./node_modules/ajv/lib/dotjs/_limitProperties.js","webpack:///./node_modules/ajv/lib/ajv.js","webpack:///./node_modules/ajv/lib/definition_schema.js","webpack:///./node_modules/ajv/lib/dotjs/items.js","webpack:///./node_modules/core-js/modules/es.string.search.js","webpack:///./node_modules/ajv/lib/compile/error_classes.js","webpack:///./node_modules/json-schema-traverse/index.js","webpack:///./node_modules/ajv/lib/compile/index.js","webpack:///./src/components/inputs/TextInput.vue?9aad","webpack:///./src/components/inputs/TextInput.vue?2ffe","webpack:///./src/components/inputs/TextInput.vue","webpack:///./node_modules/ajv/lib/dotjs/_limitLength.js","webpack:///./node_modules/ajv/lib/compile/formats.js","webpack:///./node_modules/ajv/lib/dotjs/multipleOf.js","webpack:///./node_modules/ajv/lib/compile/resolve.js","webpack:///./src/components/inputs/TextInput.vue?a77f","webpack:///./node_modules/ajv/lib/compile/async.js","webpack:///./src/services/points-of-sale/configs.service.ts","webpack:///./node_modules/ajv/lib/dotjs/required.js","webpack:///./node_modules/ajv/lib/dotjs/dependencies.js","webpack:///./node_modules/ajv/lib/compile/schema_obj.js","webpack:///./node_modules/ajv/lib/dotjs/properties.js","webpack:///./node_modules/ajv/lib/dotjs/_limit.js","webpack:///./node_modules/ajv/lib/compile/rules.js","webpack:///./node_modules/ajv/lib/dotjs/uniqueItems.js","webpack:///./node_modules/ajv/lib/dotjs/validate.js","webpack:///./src/components/vp/VpEditor.vue?71c8","webpack:///./node_modules/ajv-i18n/localize/fr/index.js","webpack:///./node_modules/ajv/lib/dotjs/_limitItems.js","webpack:///./node_modules/ajv/lib/dotjs/if.js","webpack:///./src/components/inputs/TextInput.vue?e01e","webpack:///./node_modules/ajv-i18n/localize/it/index.js","webpack:///./node_modules/ajv/lib/dotjs/enum.js","webpack:///./src/components/vp/VpEditor.vue?96df","webpack:///./src/components/vp/VpEditor.vue?ac76","webpack:///./src/components/vp/VpEditor.vue","webpack:///./node_modules/ajv/lib/dotjs/allOf.js","webpack:///./node_modules/ajv/lib/cache.js","webpack:///./node_modules/fast-json-stable-stringify/index.js","webpack:///./node_modules/ajv/lib/compile/util.js","webpack:///./node_modules/ajv/lib/keyword.js"],"names":["module","exports","it","$keyword","$ruleType","out","$lvl","level","$dataLvl","dataLevel","$schema","schema","$schemaPath","schemaPath","util","getProperty","$errSchemaPath","errSchemaPath","$breakOnError","opts","allErrors","$data","format","$schemaValue","$isData","getData","dataPathArr","$unknownFormats","unknownFormats","$allowUnknown","Array","isArray","$format","$isObject","$formatType","async","formats","logger","warn","indexOf","Error","RegExp","validate","type","$async","$formatRef","$$outStack","push","createErrors","toQuotedString","messages","escapeQuotes","verbose","__err","pop","compositeRule","$errs","$it","copy","$nextValid","strictKeywords","Object","keys","length","schemaHasRules","RULES","all","$allErrorsOption","$wasComposite","$valid","errors","i","e","keyword","params","n","limit","depsCount","cond","comparison","message","is","x","y","render","_vm","this","_h","$createElement","_c","_self","staticClass","label","_v","_s","$t","_e","attrs","language","decimals","value","disabled","required","getValueRange","on","handleInput","handleChange","handleBlur","labelQuantity","$currency","getCurrencyCodeOfSelectedMerchant","labelError","staticRenderFns","CurrenciesInput","getNumberOfDecimalsOfSelectedMerchant","minValue","maxValue","min","max","merchants","$store","getters","MerchantsGetters","GetMerchants","merchantId","GetSelectedMerchant","find","id","getDecimals","input","emit","$emit","Vue","__decorate","Prop","default","Watch","Component","components","CurrencyInput","component","$closingBraces","$currentBaseId","baseId","$prevValid","$passingSchemas","arr1","$sch","$i","l1","global","factory","merge","_len","arguments","sets","_key","slice","xl","join","subexp","str","typeOf","o","undefined","prototype","toString","call","split","shift","toLowerCase","toUpperCase","toArray","obj","setInterval","assign","target","source","key","buildExps","isIRI","ALPHA$$","DIGIT$$","HEXDIG$$","PCT_ENCODED$","GEN_DELIMS$$","SUB_DELIMS$$","RESERVED$$","UCSCHAR$$","IPRIVATE$$","UNRESERVED$$","SCHEME$","USERINFO$","DEC_OCTET_RELAXED$","IPV4ADDRESS$","H16$","LS32$","IPV6ADDRESS1$","IPV6ADDRESS2$","IPV6ADDRESS3$","IPV6ADDRESS4$","IPV6ADDRESS5$","IPV6ADDRESS6$","IPV6ADDRESS7$","IPV6ADDRESS8$","IPV6ADDRESS9$","IPV6ADDRESS$","ZONEID$","IPV6ADDRZ_RELAXED$","IPVFUTURE$","IP_LITERAL$","REG_NAME$","HOST$","PORT$","AUTHORITY$","PCHAR$","SEGMENT$","SEGMENT_NZ$","SEGMENT_NZ_NC$","PATH_ABEMPTY$","PATH_ABSOLUTE$","PATH_NOSCHEME$","PATH_ROOTLESS$","PATH_EMPTY$","QUERY$","FRAGMENT$","HIER_PART$","URI$","RELATIVE_PART$","RELATIVE$","NOT_SCHEME","NOT_USERINFO","NOT_HOST","NOT_PATH","NOT_PATH_NOSCHEME","NOT_QUERY","NOT_FRAGMENT","ESCAPE","UNRESERVED","OTHER_CHARS","PCT_ENCODED","IPV4ADDRESS","IPV6ADDRESS","URI_PROTOCOL","IRI_PROTOCOL","slicedToArray","sliceIterator","arr","_arr","_n","_d","_i","Symbol","iterator","next","done","err","TypeError","toConsumableArray","arr2","from","maxInt","base","tMin","tMax","skew","damp","initialBias","initialN","delimiter","regexPunycode","regexNonASCII","regexSeparators","baseMinusTMin","floor","Math","stringFromCharCode","String","fromCharCode","error$1","RangeError","map","array","fn","result","mapDomain","string","parts","replace","labels","encoded","ucs2decode","output","counter","charCodeAt","extra","ucs2encode","fromCodePoint","apply","basicToDigit","codePoint","digitToBasic","digit","flag","adapt","delta","numPoints","firstTime","k","decode","inputLength","bias","basic","lastIndexOf","j","index","oldi","w","t","baseMinusT","splice","encode","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_step","_iterator","_currentValue2","return","basicLength","handledCPCount","m","_iteratorNormalCompletion2","_didIteratorError2","_iteratorError2","_step2","_iterator2","currentValue","handledCPCountPlusOne","_iteratorNormalCompletion3","_didIteratorError3","_iteratorError3","_step3","_iterator3","_currentValue","q","qMinusT","toUnicode","test","toASCII","punycode","SCHEMES","pctEncChar","chr","c","pctDecChars","newStr","il","parseInt","substr","c2","c3","_normalizeComponentEncoding","protocol","decodeUnreserved","decStr","match","scheme","userinfo","host","path","query","fragment","_stripLeadingZeros","_normalizeIPv4","matches","_matches","address","_normalizeIPv6","_matches2","zone","_address$toLowerCase$","reverse","_address$toLowerCase$2","last","first","firstFields","lastFields","isLastFieldIPv4Address","fieldCount","lastFieldsStart","fields","allZeroFields","reduce","acc","field","lastLongest","longestZeroFields","sort","a","b","newHost","newFirst","newLast","URI_PARSE","NO_MATCH_IS_UNDEFINED","parse","uriString","options","iri","reference","port","isNaN","error","schemeHandler","unicodeSupport","domainHost","_recomposeAuthority","uriTokens","_","$1","$2","RDS1","RDS2","RDS3","RDS5","removeDotSegments","im","s","serialize","authority","charAt","absolutePath","resolveComponents","relative","skipNormalization","tolerant","resolve","baseURI","relativeURI","schemelessOptions","normalize","uri","equal","uriA","uriB","escapeComponent","unescapeComponent","handler","secure","handler$1","isSecure","wsComponents","handler$2","resourceName","_wsComponents$resourc","_wsComponents$resourc2","handler$3","O","ATEXT$$","QTEXT$$","VCHAR$$","SOME_DELIMS$$","NOT_LOCAL_PART","NOT_HFNAME","NOT_HFVALUE","handler$4","mailtoComponents","to","unknownHeaders","headers","hfields","hfield","toAddrs","_x","_xl","subject","body","_x2","_xl2","addr","toAddr","atIdx","localPart","domain","name","URN_PARSE","handler$5","urnComponents","nid","nss","urnScheme","uriComponents","UUID","handler$6","uuidComponents","uuid","defineProperty","class","onlyIcon","StatusWidget","$comment","$idx","$dataNxt","$nextData","$nonEmptySchema","errorPath","getPathExpr","jsonPointers","$passData","$code","varOccurences","varReplace","$noEmptySchema","every","allOf","anyOf","const","contains","dependencies","items","maximum","minimum","maxItems","minItems","maxLength","minLength","maxProperties","minProperties","multipleOf","not","oneOf","pattern","properties","propertyNames","uniqueItems","KEYWORDS","metaSchema","keywordsJsonPointers","JSON","stringify","segments","keywords","$ref","constructor","flags","valueOf","hasOwnProperty","$key","$invalidName","$dataProperties","$ownProperties","ownProperties","$refCode","isRoot","root","$refVal","resolveRef","$message","MissingRefError","missingRefs","inline","code","passContext","$parentData","$parentDataProperty","__callValidate","$regexp","usePattern","$errorKeyword","$compile","$inline","$macro","$ruleValidate","$validateCode","$rule","$definition","$rDef","definition","$validateSchema","validateSchema","useCustomRule","compile","macro","$ruleErrs","$ruleErr","$asyncKeyword","statements","def_callRuleValidate","modifying","valid","def_customError","len","pos","$op","compileSchema","Cache","SchemaObject","stableStringify","rules","$dataMetaSchema","Ajv","addSchema","addMetaSchema","getSchema","removeSchema","addFormat","errorsText","_addSchema","_compile","compileAsync","customKeyword","addKeyword","add","getKeyword","get","removeKeyword","remove","validateKeyword","errorClasses","ValidationError","Validation","MissingRef","META_SCHEMA_ID","META_IGNORE_OPTIONS","META_SUPPORT_DATA","_opts","setLogger","_schemas","_refs","_fragments","_formats","_cache","cache","_loadingSchemas","_compilations","_getId","chooseGetId","loopRequired","Infinity","errorDataPath","_errorDataPathProperty","_metaOpts","getMetaSchemaOptions","addInitialFormats","addInitialKeywords","addDefaultMetaSchema","meta","nullable","addInitialSchemas","schemaKeyRef","data","v","schemaObj","_meta","_skipValidation","normalizeId","checkUnique","skipValidation","throwOrLogError","defaultMeta","self","keyRef","_getSchemaObj","_getSchemaFragment","ref","res","_removeAllSchemas","clear","del","cacheKey","schemas","regex","shouldAddSchema","cached","addUsedSchema","recursiveMeta","willValidate","localRefs","ids","put","compiling","callValidate","currentOpts","refs","refVal","_validate","schemaId","_get$IdOrId","_get$Id","$id","separator","dataVar","text","dataPath","$dataSchema","optsSchemas","metaOpts","log","noop","console","definitions","simpleTypes","$additionalItems","additionalItems","$currErrSchemaPath","fixRegExpWellKnownSymbolLogic","anObject","requireObjectCoercible","sameValue","getMethod","regExpExec","SEARCH","nativeSearch","maybeCallNative","regexp","searcher","rx","S","previousLastIndex","lastIndex","ajv","validation","missingRef","url","missingSchema","fullPath","errorSubclass","Subclass","create","traverse","cb","pre","post","_traverse","jsonPtr","rootSchema","parentJsonPtr","parentKeyword","parentSchema","keyIndex","sch","arrayKeywords","propsKeywords","prop","escapeJsonPtr","allKeys","skipKeywords","additionalProperties","patternProperties","enum","exclusiveMaximum","exclusiveMinimum","validateGenerator","ucs2length","patterns","patternsHash","defaults","defaultsHash","customRules","checkCompiling","compilation","localCompile","cv","sourceCode","endCompiling","_schema","_root","isTop","useDefault","vars","refValCode","patternCode","defaultCode","customRuleCode","processCode","makeValidate","Function","_refVal","refCode","refIndex","resolvedRef","rootRefId","addLocalRef","localSchema","inlineRef","inlineRefs","replaceLocalRef","removeLocalRef","refId","regexStr","valueStr","rule","deps","compIndex","statement","fluid","hideLabel","compact","labelString","placeholder","readonly","appendIcon","hideDetails","prependInnerIcon","handleFocus","TextInput","unicode","DATE","DAYS","TIME","HOSTNAME","URI","URIREF","URITEMPLATE","URL","JSON_POINTER","JSON_POINTER_URI_FRAGMENT","RELATIVE_JSON_POINTER","mode","isLeapYear","year","date","month","day","time","full","hour","minute","second","timeZone","fast","email","hostname","ipv4","ipv6","date_time","DATE_TIME_SEPARATOR","dateTime","NOT_URI_FRAGMENT","Z_ANCHOR","multipleOfPrecision","resolveSchema","p","refPath","_getFullPath","getFullPath","resolveRecursive","getJsonPointer","parsedRef","resolveUrl","resolveIds","PREVENT_SCOPE_CHANGE","toHash","part","unescapeFragment","SIMPLE_INLINED","checkNoRef","countKeys","item","count","TRAILING_SLASH_HASH","baseIds","fullPaths","escapeFragment","callback","loadSchema","loadMetaSchemaOf","then","_compileAsync","Promise","loadMissingSchema","added","schemaPromise","removePromise","ConfigsService","size","sortDir","posId","endpoints","store","axios","configId","configsService","$vSchema","$required","$property","i1","$propertySch","$currentErrorPath","$loopRequired","$propertyPath","$missingProperty","l2","$propertyKey","$prop","$useData","arr3","i3","l3","getPath","$schemaDeps","$propertyDeps","$deps","i2","$schemaKeys","filter","notProto","$pProperties","$pPropertyKeys","$aProperties","$someProperties","$noAdditional","$additionalIsSchema","$removeAdditional","removeAdditional","$checkAdditional","$requiredHash","$pProperty","$additionalProperty","$useDefaults","useDefaults","$hasDefault","arr4","i4","l4","$isMax","$exclusiveKeyword","$schemaExcl","$isDataExcl","$notOp","$schemaValueExcl","$exclusive","$exclType","$exclIsNumber","$opExpr","$opStr","ruleModules","ALL","TYPES","types","forEach","group","implKeywords","implements","concat","custom","$itemType","$typeIsArray","$method","strictNumbers","$refKeywords","schemaHasRulesExcept","$unknownKwd","schemaUnknownRules","$keywordsMsg","$top","rootId","strictDefaults","$defaultMsg","$closingBraces1","$closingBraces2","$typeSchema","extendRefs","coerceTypes","$coerceToTypes","coerceToTypes","$rulesGroup","$shouldUseGroup","$dataType","$coerced","checkDataType","$type","arr5","i5","l5","$shouldUseRule","$ruleImplementsSomeKeyword","impl","$thenSch","$elseSch","$thenPresent","$elsePresent","$ifClause","onlyViewParams","toolbarTitle","slot","vpConfig","sent","posHistory","historicalConfigId","canSend","sendConfiguration","downloadConfiguration","deleteConfiguration","saveConfiguration","deviceType","posName","configurationId","fwVersion","lastDate","treeviewItems","treeviewItemClicked","model","$$v","treeViewSelection","expression","datatableSearch","datatableItems","dtPagination","event","getCurrentRows","scopedSlots","_u","_l","header","directives","rawName","indeterminateStateSelected","selectAllCheckboxClick","isSelectedAllItems","proxy","datatableFilters","ajvValidationMessages","dialogEdit","editorLongList","selectedParam","editor","selectInputItems","handleSelect","inputValue","handleCurrency","currencyValue","schemaHasFormat","merchantDateFormat","inputParamOnBlur","inputParamOnChange","selectInputItemsBoolean","domProps","cancelParam","status","saveParam","parameter","shortcut","$event","datatableItemClicked","originalValue","formatParamValue","send","originalSend","sendCheckboxClick","$set","VpEditor","configurationEditable","system","allDatatableItems","selectedItems","currentItemsPerPage","jsonValues","values","allJsonValues","oldInputValue","currencyDecimals","serverJsonValues","ajvlocalize","en","require","es","de","fr","jsonSchema","tableHeaders","itemsPerPageOptions","intDebug","jsonSuperAdmin","SuperAdminJson","jsonUserAdmin","AdminJson","PointsOfSaleGetters","GetCurrentPointOfSale","filterParams","isIndeterminatedItemsSelected","getHistoricalConfig","selectedEqualsToTotal","allItem","pageItem","currentPageSendNotSelected","currentPageSendSelected","param","showFormParam","sortable","align","width","$route","configurationName","ajvValidator","$dates","getMerchantOffsetFormatted","getConfiguration","currentPosName","resetData","destroy","$spinner","showSpinner","vpService","getConfigurationDetail","response","responseData","configuration","catch","manageError","finally","firmwareVersion","getDateHourFormatted","lastUpdateDate","scanJson","menu","syncAndValidateAll","removeSpinner","getHitoricalConfig","historicalConfig","cfgDevice","$toaster","showError","historicalDate","node","parent","parentId","sc","element","fullShortcut","newItem","getTranslatedJson","children","show","visibility","menuhidden","isMenu","parameters","selectedMenu","refreshVisibility","includes","elemValue","elemDefault","Number","pow","paramKey","listParams","handleInputValue","syncAllDatatableItems","prepareJsonStructure","validateJson","updateDatatableStatus","some","el","element2","parseFloat","JSONschema","i18n","locale","recursion","visibilityParams","depends","visibilityConf","updateItemsVisibility","modalDialog","confirm","confirmresult","saveConfigurationDetail","showSuccess","formIsDirty","$router","Routes","VPConfigurationSend","devicetype","VPConfigurationDownload","VPConfigurationPosHistory","delete","VPConfigurations","translation","translations","getJsonProp","property","formatValue","search","formatted","formatCurrencyValue","getDateFormatted","currency","parseWithCodeBySelectedMerchant","alternative","errorLocaleLabelKey","Ref","CardContainer","Card","BackNavigationToolbar","Tooltip","SelectInput","Button","DateTimePicker","Modal","SendConfiguration","$allSchemasEmpty","cmp","cycles","f","aobj","bobj","seen","toJSON","isFinite","seenIndex","dataType","negate","EQUAL","AND","OK","NOT","checkDataTypes","dataTypes","object","null","number","integer","unescapeJsonPointer","escapeJsonPointer","COERCE_TO_TYPES","optionCoerceTypes","hash","IDENTIFIER","SINGLE_QUOTE","expr","exceptKeyword","currentPath","isNumber","joinPaths","lvl","paths","up","jsonPointer","segment","decodeURIComponent","encodeURIComponent","definitionSchema","_addRule","ruleGroup","rg","throwError","_validateKeyword"],"mappings":"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","file":"js/chunk-e9621eae.2fa7267a.js","sourcesContent":["'use strict';\nmodule.exports = function generate_format(it, $keyword, $ruleType) {\n var out = ' ';\n var $lvl = it.level;\n var $dataLvl = it.dataLevel;\n var $schema = it.schema[$keyword];\n var $schemaPath = it.schemaPath + it.util.getProperty($keyword);\n var $errSchemaPath = it.errSchemaPath + '/' + $keyword;\n var $breakOnError = !it.opts.allErrors;\n var $data = 'data' + ($dataLvl || '');\n if (it.opts.format === false) {\n if ($breakOnError) {\n out += ' if (true) { ';\n }\n return out;\n }\n var $isData = it.opts.$data && $schema && $schema.$data,\n $schemaValue;\n if ($isData) {\n out += ' var schema' + ($lvl) + ' = ' + (it.util.getData($schema.$data, $dataLvl, it.dataPathArr)) + '; ';\n $schemaValue = 'schema' + $lvl;\n } else {\n $schemaValue = $schema;\n }\n var $unknownFormats = it.opts.unknownFormats,\n $allowUnknown = Array.isArray($unknownFormats);\n if ($isData) {\n var $format = 'format' + $lvl,\n $isObject = 'isObject' + $lvl,\n $formatType = 'formatType' + $lvl;\n out += ' var ' + ($format) + ' = formats[' + ($schemaValue) + ']; var ' + ($isObject) + ' = typeof ' + ($format) + ' == \\'object\\' && !(' + ($format) + ' instanceof RegExp) && ' + ($format) + '.validate; var ' + ($formatType) + ' = ' + ($isObject) + ' && ' + ($format) + '.type || \\'string\\'; if (' + ($isObject) + ') { ';\n if (it.async) {\n out += ' var async' + ($lvl) + ' = ' + ($format) + '.async; ';\n }\n out += ' ' + ($format) + ' = ' + ($format) + '.validate; } if ( ';\n if ($isData) {\n out += ' (' + ($schemaValue) + ' !== undefined && typeof ' + ($schemaValue) + ' != \\'string\\') || ';\n }\n out += ' (';\n if ($unknownFormats != 'ignore') {\n out += ' (' + ($schemaValue) + ' && !' + ($format) + ' ';\n if ($allowUnknown) {\n out += ' && self._opts.unknownFormats.indexOf(' + ($schemaValue) + ') == -1 ';\n }\n out += ') || ';\n }\n out += ' (' + ($format) + ' && ' + ($formatType) + ' == \\'' + ($ruleType) + '\\' && !(typeof ' + ($format) + ' == \\'function\\' ? ';\n if (it.async) {\n out += ' (async' + ($lvl) + ' ? await ' + ($format) + '(' + ($data) + ') : ' + ($format) + '(' + ($data) + ')) ';\n } else {\n out += ' ' + ($format) + '(' + ($data) + ') ';\n }\n out += ' : ' + ($format) + '.test(' + ($data) + '))))) {';\n } else {\n var $format = it.formats[$schema];\n if (!$format) {\n if ($unknownFormats == 'ignore') {\n it.logger.warn('unknown format \"' + $schema + '\" ignored in schema at path \"' + it.errSchemaPath + '\"');\n if ($breakOnError) {\n out += ' if (true) { ';\n }\n return out;\n } else if ($allowUnknown && $unknownFormats.indexOf($schema) >= 0) {\n if ($breakOnError) {\n out += ' if (true) { ';\n }\n return out;\n } else {\n throw new Error('unknown format \"' + $schema + '\" is used in schema at path \"' + it.errSchemaPath + '\"');\n }\n }\n var $isObject = typeof $format == 'object' && !($format instanceof RegExp) && $format.validate;\n var $formatType = $isObject && $format.type || 'string';\n if ($isObject) {\n var $async = $format.async === true;\n $format = $format.validate;\n }\n if ($formatType != $ruleType) {\n if ($breakOnError) {\n out += ' if (true) { ';\n }\n return out;\n }\n if ($async) {\n if (!it.async) throw new Error('async format in sync schema');\n var $formatRef = 'formats' + it.util.getProperty($schema) + '.validate';\n out += ' if (!(await ' + ($formatRef) + '(' + ($data) + '))) { ';\n } else {\n out += ' if (! ';\n var $formatRef = 'formats' + it.util.getProperty($schema);\n if ($isObject) $formatRef += '.validate';\n if (typeof $format == 'function') {\n out += ' ' + ($formatRef) + '(' + ($data) + ') ';\n } else {\n out += ' ' + ($formatRef) + '.test(' + ($data) + ') ';\n }\n out += ') { ';\n }\n }\n var $$outStack = $$outStack || [];\n $$outStack.push(out);\n out = ''; /* istanbul ignore else */\n if (it.createErrors !== false) {\n out += ' { keyword: \\'' + ('format') + '\\' , dataPath: (dataPath || \\'\\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { format: ';\n if ($isData) {\n out += '' + ($schemaValue);\n } else {\n out += '' + (it.util.toQuotedString($schema));\n }\n out += ' } ';\n if (it.opts.messages !== false) {\n out += ' , message: \\'should match format \"';\n if ($isData) {\n out += '\\' + ' + ($schemaValue) + ' + \\'';\n } else {\n out += '' + (it.util.escapeQuotes($schema));\n }\n out += '\"\\' ';\n }\n if (it.opts.verbose) {\n out += ' , schema: ';\n if ($isData) {\n out += 'validate.schema' + ($schemaPath);\n } else {\n out += '' + (it.util.toQuotedString($schema));\n }\n out += ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' ';\n }\n out += ' } ';\n } else {\n out += ' {} ';\n }\n var __err = out;\n out = $$outStack.pop();\n if (!it.compositeRule && $breakOnError) {\n /* istanbul ignore if */\n if (it.async) {\n out += ' throw new ValidationError([' + (__err) + ']); ';\n } else {\n out += ' validate.errors = [' + (__err) + ']; return false; ';\n }\n } else {\n out += ' var err = ' + (__err) + '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ';\n }\n out += ' } ';\n if ($breakOnError) {\n out += ' else { ';\n }\n return out;\n}\n","'use strict';\nmodule.exports = function generate_not(it, $keyword, $ruleType) {\n var out = ' ';\n var $lvl = it.level;\n var $dataLvl = it.dataLevel;\n var $schema = it.schema[$keyword];\n var $schemaPath = it.schemaPath + it.util.getProperty($keyword);\n var $errSchemaPath = it.errSchemaPath + '/' + $keyword;\n var $breakOnError = !it.opts.allErrors;\n var $data = 'data' + ($dataLvl || '');\n var $errs = 'errs__' + $lvl;\n var $it = it.util.copy(it);\n $it.level++;\n var $nextValid = 'valid' + $it.level;\n if ((it.opts.strictKeywords ? (typeof $schema == 'object' && Object.keys($schema).length > 0) || $schema === false : it.util.schemaHasRules($schema, it.RULES.all))) {\n $it.schema = $schema;\n $it.schemaPath = $schemaPath;\n $it.errSchemaPath = $errSchemaPath;\n out += ' var ' + ($errs) + ' = errors; ';\n var $wasComposite = it.compositeRule;\n it.compositeRule = $it.compositeRule = true;\n $it.createErrors = false;\n var $allErrorsOption;\n if ($it.opts.allErrors) {\n $allErrorsOption = $it.opts.allErrors;\n $it.opts.allErrors = false;\n }\n out += ' ' + (it.validate($it)) + ' ';\n $it.createErrors = true;\n if ($allErrorsOption) $it.opts.allErrors = $allErrorsOption;\n it.compositeRule = $it.compositeRule = $wasComposite;\n out += ' if (' + ($nextValid) + ') { ';\n var $$outStack = $$outStack || [];\n $$outStack.push(out);\n out = ''; /* istanbul ignore else */\n if (it.createErrors !== false) {\n out += ' { keyword: \\'' + ('not') + '\\' , dataPath: (dataPath || \\'\\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: {} ';\n if (it.opts.messages !== false) {\n out += ' , message: \\'should NOT be valid\\' ';\n }\n if (it.opts.verbose) {\n out += ' , schema: validate.schema' + ($schemaPath) + ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' ';\n }\n out += ' } ';\n } else {\n out += ' {} ';\n }\n var __err = out;\n out = $$outStack.pop();\n if (!it.compositeRule && $breakOnError) {\n /* istanbul ignore if */\n if (it.async) {\n out += ' throw new ValidationError([' + (__err) + ']); ';\n } else {\n out += ' validate.errors = [' + (__err) + ']; return false; ';\n }\n } else {\n out += ' var err = ' + (__err) + '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ';\n }\n out += ' } else { errors = ' + ($errs) + '; if (vErrors !== null) { if (' + ($errs) + ') vErrors.length = ' + ($errs) + '; else vErrors = null; } ';\n if (it.opts.allErrors) {\n out += ' } ';\n }\n } else {\n out += ' var err = '; /* istanbul ignore else */\n if (it.createErrors !== false) {\n out += ' { keyword: \\'' + ('not') + '\\' , dataPath: (dataPath || \\'\\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: {} ';\n if (it.opts.messages !== false) {\n out += ' , message: \\'should NOT be valid\\' ';\n }\n if (it.opts.verbose) {\n out += ' , schema: validate.schema' + ($schemaPath) + ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' ';\n }\n out += ' } ';\n } else {\n out += ' {} ';\n }\n out += '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ';\n if ($breakOnError) {\n out += ' if (false) { ';\n }\n }\n return out;\n}\n","'use strict';\nmodule.exports = function generate_const(it, $keyword, $ruleType) {\n var out = ' ';\n var $lvl = it.level;\n var $dataLvl = it.dataLevel;\n var $schema = it.schema[$keyword];\n var $schemaPath = it.schemaPath + it.util.getProperty($keyword);\n var $errSchemaPath = it.errSchemaPath + '/' + $keyword;\n var $breakOnError = !it.opts.allErrors;\n var $data = 'data' + ($dataLvl || '');\n var $valid = 'valid' + $lvl;\n var $isData = it.opts.$data && $schema && $schema.$data,\n $schemaValue;\n if ($isData) {\n out += ' var schema' + ($lvl) + ' = ' + (it.util.getData($schema.$data, $dataLvl, it.dataPathArr)) + '; ';\n $schemaValue = 'schema' + $lvl;\n } else {\n $schemaValue = $schema;\n }\n if (!$isData) {\n out += ' var schema' + ($lvl) + ' = validate.schema' + ($schemaPath) + ';';\n }\n out += 'var ' + ($valid) + ' = equal(' + ($data) + ', schema' + ($lvl) + '); if (!' + ($valid) + ') { ';\n var $$outStack = $$outStack || [];\n $$outStack.push(out);\n out = ''; /* istanbul ignore else */\n if (it.createErrors !== false) {\n out += ' { keyword: \\'' + ('const') + '\\' , dataPath: (dataPath || \\'\\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { allowedValue: schema' + ($lvl) + ' } ';\n if (it.opts.messages !== false) {\n out += ' , message: \\'should be equal to constant\\' ';\n }\n if (it.opts.verbose) {\n out += ' , schema: validate.schema' + ($schemaPath) + ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' ';\n }\n out += ' } ';\n } else {\n out += ' {} ';\n }\n var __err = out;\n out = $$outStack.pop();\n if (!it.compositeRule && $breakOnError) {\n /* istanbul ignore if */\n if (it.async) {\n out += ' throw new ValidationError([' + (__err) + ']); ';\n } else {\n out += ' validate.errors = [' + (__err) + ']; return false; ';\n }\n } else {\n out += ' var err = ' + (__err) + '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ';\n }\n out += ' }';\n if ($breakOnError) {\n out += ' else { ';\n }\n return out;\n}\n","'use strict';\nmodule.exports = function localize_es(errors) {\n if (!(errors && errors.length)) return;\n for (var i = 0; i < errors.length; i++) {\n var e = errors[i];\n var out;\n switch (e.keyword) {\n case '$ref':\n out = 'no se puede resolver la referencia ' + (e.params.ref);\n break;\n case 'additionalItems':\n out = '';\n var n = e.params.limit;\n out += 'no debe tener más de ' + (n) + ' elemento';\n if (n != 1) {\n out += 's';\n }\n break;\n case 'additionalProperties':\n out = 'no debe tener propiedades adicionales';\n break;\n case 'anyOf':\n out = 'debe coincidir con algún esquema en \"anyOf\"';\n break;\n case 'const':\n out = 'debe ser igual a la constante';\n break;\n case 'contains':\n out = 'debe contener un elemento válido';\n break;\n case 'custom':\n out = 'debe pasar la validación de palabra clave \"' + (e.keyword) + '\"';\n break;\n case 'dependencies':\n out = '';\n var n = e.params.depsCount;\n out += 'debe contener la';\n if (n != 1) {\n out += 's';\n }\n out += ' propiedad';\n if (n != 1) {\n out += 'es';\n }\n out += ' ' + (e.params.deps) + ' cuando la propiedad ' + (e.params.property) + ' se encuentra presente';\n break;\n case 'enum':\n out = 'deber ser igual a uno de los valores predefinidos';\n break;\n case 'exclusiveMaximum':\n out = '';\n var cond = e.params.comparison + \" \" + e.params.limit;\n out += 'debe ser ' + (cond);\n break;\n case 'exclusiveMinimum':\n out = '';\n var cond = e.params.comparison + \" \" + e.params.limit;\n out += 'debe ser ' + (cond);\n break;\n case 'false schema':\n out = 'el esquema és falso';\n break;\n case 'format':\n out = 'debe coincidir con el formato \"' + (e.params.format) + '\"';\n break;\n case 'formatExclusiveMaximum':\n out = 'formatExclusiveMaximum debe ser booleano';\n break;\n case 'formatExclusiveMinimum':\n out = 'formatExclusiveMinimum debe ser booleano';\n break;\n case 'formatMaximum':\n out = '';\n var cond = e.params.comparison + \" \" + e.params.limit;\n out += 'debe ser ' + (cond);\n break;\n case 'formatMinimum':\n out = '';\n var cond = e.params.comparison + \" \" + e.params.limit;\n out += 'debe ser ' + (cond);\n break;\n case 'if':\n out = 'debe corresponderse con el esquema \"' + (e.params.failingKeyword) + '\"';\n break;\n case 'maximum':\n out = '';\n var cond = e.params.comparison + \" \" + e.params.limit;\n out += 'debe ser ' + (cond);\n break;\n case 'maxItems':\n out = '';\n var n = e.params.limit;\n out += 'no debe contener más de ' + (n) + ' elemento';\n if (n != 1) {\n out += 's';\n }\n break;\n case 'maxLength':\n out = '';\n var n = e.params.limit;\n out += 'no debe contener más de ' + (n) + ' caracter';\n if (n != 1) {\n out += 'es';\n }\n break;\n case 'maxProperties':\n out = '';\n var n = e.params.limit;\n out += 'no debe contener más de ' + (n) + ' propiedad';\n if (n != 1) {\n out += 'es';\n }\n break;\n case 'minimum':\n out = '';\n var cond = e.params.comparison + \" \" + e.params.limit;\n out += 'debe ser ' + (cond);\n break;\n case 'minItems':\n out = '';\n var n = e.params.limit;\n out += 'no debe contener menos de ' + (n) + ' elemento';\n if (n != 1) {\n out += 's';\n }\n break;\n case 'minLength':\n out = '';\n var n = e.params.limit;\n out += 'no debe contener menos de ' + (n) + ' caracter';\n if (n != 1) {\n out += 'es';\n }\n break;\n case 'minProperties':\n out = '';\n var n = e.params.limit;\n out += 'no debe contener menos de ' + (n) + ' propiedad';\n if (n != 1) {\n out += 'es';\n }\n break;\n case 'multipleOf':\n out = 'debe ser múltiplo de ' + (e.params.multipleOf);\n break;\n case 'not':\n out = 'no debe ser válido según el esquema en \"not\"';\n break;\n case 'oneOf':\n out = 'debe coincidir con un solo esquema en \"oneOf\"';\n break;\n case 'pattern':\n out = 'debe coincidir con el patron \"' + (e.params.pattern) + '\"';\n break;\n case 'patternRequired':\n out = 'la propiedad debe coincidir con el patrón \"' + (e.params.missingPattern) + '\"';\n break;\n case 'propertyNames':\n out = 'la propiedad \\'' + (e.params.propertyName) + '\\' no és válida';\n break;\n case 'required':\n out = 'debe tener la propiedad requerida ' + (e.params.missingProperty);\n break;\n case 'switch':\n out = 'debe pasar la validación \"switch\" de palabra clave, el caso ' + (e.params.caseIndex) + ' falló';\n break;\n case 'type':\n out = 'debe ser ' + (e.params.type);\n break;\n case 'uniqueItems':\n out = 'no debe contener elementos duplicados, (los elementos ## ' + (e.params.j) + ' y ' + (e.params.i) + ' son idénticos)';\n break;\n default:\n continue;\n }\n e.message = out;\n }\n};\n","'use strict';\nmodule.exports = function localize_en(errors) {\n if (!(errors && errors.length)) return;\n for (var i = 0; i < errors.length; i++) {\n var e = errors[i];\n var out;\n switch (e.keyword) {\n case '$ref':\n out = 'can\\\\\\'t resolve reference ' + (e.params.ref);\n break;\n case 'additionalItems':\n out = '';\n var n = e.params.limit;\n out += 'should not have more than ' + (n) + ' item';\n if (n != 1) {\n out += 's';\n }\n break;\n case 'additionalProperties':\n out = 'should not have additional properties';\n break;\n case 'anyOf':\n out = 'should match some schema in \"anyOf\"';\n break;\n case 'const':\n out = 'should be equal to constant';\n break;\n case 'contains':\n out = 'should contain a valid item';\n break;\n case 'custom':\n out = 'should pass \"' + (e.keyword) + '\" keyword validation';\n break;\n case 'dependencies':\n out = '';\n var n = e.params.depsCount;\n out += 'should have propert';\n if (n == 1) {\n out += 'y';\n } else {\n out += 'ies';\n }\n out += ' ' + (e.params.deps) + ' when property ' + (e.params.property) + ' is present';\n break;\n case 'enum':\n out = 'should be equal to one of predefined values';\n break;\n case 'exclusiveMaximum':\n out = '';\n var cond = e.params.comparison + \" \" + e.params.limit;\n out += 'should be ' + (cond);\n break;\n case 'exclusiveMinimum':\n out = '';\n var cond = e.params.comparison + \" \" + e.params.limit;\n out += 'should be ' + (cond);\n break;\n case 'false schema':\n out = 'boolean schema is false';\n break;\n case 'format':\n out = 'should match format \"' + (e.params.format) + '\"';\n break;\n case 'formatExclusiveMaximum':\n out = 'formatExclusiveMaximum should be boolean';\n break;\n case 'formatExclusiveMinimum':\n out = 'formatExclusiveMinimum should be boolean';\n break;\n case 'formatMaximum':\n out = '';\n var cond = e.params.comparison + \" \" + e.params.limit;\n out += 'should be ' + (cond);\n break;\n case 'formatMinimum':\n out = '';\n var cond = e.params.comparison + \" \" + e.params.limit;\n out += 'should be ' + (cond);\n break;\n case 'if':\n out = 'should match \"' + (e.params.failingKeyword) + '\" schema';\n break;\n case 'maximum':\n out = '';\n var cond = e.params.comparison + \" \" + e.params.limit;\n out += 'should be ' + (cond);\n break;\n case 'maxItems':\n out = '';\n var n = e.params.limit;\n out += 'should not have more than ' + (n) + ' item';\n if (n != 1) {\n out += 's';\n }\n break;\n case 'maxLength':\n out = '';\n var n = e.params.limit;\n out += 'should not be longer than ' + (n) + ' character';\n if (n != 1) {\n out += 's';\n }\n break;\n case 'maxProperties':\n out = '';\n var n = e.params.limit;\n out += 'should not have more than ' + (n) + ' propert';\n if (n == 1) {\n out += 'y';\n } else {\n out += 'ies';\n }\n break;\n case 'minimum':\n out = '';\n var cond = e.params.comparison + \" \" + e.params.limit;\n out += 'should be ' + (cond);\n break;\n case 'minItems':\n out = '';\n var n = e.params.limit;\n out += 'should not have less than ' + (n) + ' item';\n if (n != 1) {\n out += 's';\n }\n break;\n case 'minLength':\n out = '';\n var n = e.params.limit;\n out += 'should not be shorter than ' + (n) + ' character';\n if (n != 1) {\n out += 's';\n }\n break;\n case 'minProperties':\n out = '';\n var n = e.params.limit;\n out += 'should not have less than ' + (n) + ' propert';\n if (n == 1) {\n out += 'y';\n } else {\n out += 'ies';\n }\n break;\n case 'multipleOf':\n out = 'should be a multiple of ' + (e.params.multipleOf);\n break;\n case 'not':\n out = 'should not be valid according to schema in \"not\"';\n break;\n case 'oneOf':\n out = 'should match exactly one schema in \"oneOf\"';\n break;\n case 'pattern':\n out = 'should match pattern \"' + (e.params.pattern) + '\"';\n break;\n case 'patternRequired':\n out = 'should have property matching pattern \"' + (e.params.missingPattern) + '\"';\n break;\n case 'propertyNames':\n out = 'property name \\'' + (e.params.propertyName) + '\\' is invalid';\n break;\n case 'required':\n out = 'should have required property ' + (e.params.missingProperty);\n break;\n case 'switch':\n out = 'should pass \"switch\" keyword validation, case ' + (e.params.caseIndex) + ' fails';\n break;\n case 'type':\n out = 'should be ' + (e.params.type);\n break;\n case 'uniqueItems':\n out = 'should not have duplicate items (items ## ' + (e.params.j) + ' and ' + (e.params.i) + ' are identical)';\n break;\n default:\n continue;\n }\n e.message = out;\n }\n};\n","// `SameValue` abstract operation\n// https://tc39.es/ecma262/#sec-samevalue\n// eslint-disable-next-line es-x/no-object-is -- safe\nmodule.exports = Object.is || function is(x, y) {\n // eslint-disable-next-line no-self-compare -- NaN check\n return x === y ? x !== 0 || 1 / x === 1 / y : x != x && y != y;\n};\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"currencies\"},[(!!_vm.label)?_c('span',{staticClass:\"currencies__label\"},[_vm._v(_vm._s(_vm.$t(_vm.label)))]):_vm._e(),_c('n-currency-input',{staticClass:\"currencies__input\",attrs:{\"locale\":_vm.language,\"precision\":_vm.decimals,\"value\":_vm.value,\"currency\":null,\"allow-negative\":false,\"disabled\":_vm.disabled,\"required\":_vm.required,\"value-range\":_vm.getValueRange()},on:{\"input\":_vm.handleInput,\"change\":_vm.handleChange,\"blur\":_vm.handleBlur}}),(!!_vm.labelQuantity)?_c('span',{staticClass:\"currencies__label-quantity\"},[_vm._v(_vm._s(_vm.$t('max-refund'))),_c('strong',[_vm._v(\" \"+_vm._s(_vm.labelQuantity)+\" \"+_vm._s(_vm.$currency.getCurrencyCodeOfSelectedMerchant()))])]):_vm._e(),(!!_vm.labelError)?_c('span',{staticClass:\"currencies__label-error\"},[_vm._v(_vm._s(_vm.$t(_vm.labelError)))]):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { Component, Vue, Prop, Watch, Ref } from 'vue-property-decorator';\nimport CardContainer from '@/components/CardContainer.vue';\nimport Card from '@/components/Card.vue';\nimport BackNavigationToolbar from '@/components/BackNavigationToolbar.vue';\n// TODO: clean that\nimport SuperAdminJson from '@/assets/json/config-desc.json';\nimport AdminJson from '@/assets/json/user-config-desc.json';\nimport Ajv from 'ajv';\nimport StatusWidget from '@/components/widgets/StatusWidget.vue';\nimport Tooltip from '@/components/Tooltip.vue';\nimport TextInput from '@/components/inputs/TextInput.vue';\nimport SelectInput from '@/components/inputs/SelectInput.vue';\nimport Button from '@/components/inputs/Button.vue';\nimport DateTimePicker from '@/components/inputs/DateTimePicker.vue';\nimport i18n from '@/i18n';\nimport {\n VpDetailConfigurationRequest,\n vpService,\n} from '@/services/vp/vp.service';\nimport { configsService } from '@/services/points-of-sale/configs.service';\nimport Modal from '@/components/Modal.vue';\nimport { Routes } from '@/router/routes';\nimport SendConfiguration from '@/views/devices/vp/SendConfiguration.vue';\nimport { PointsOfSaleGetters } from '@/store/modules/points-of-sale/enums';\nimport CurrenciesInput from '@/components/inputs/CurrenciesInput.vue';\nimport { errorLocaleLabelKey } from '@/utils/axios-utils/response.utils';\n\n@Component({\n components: {\n 'n-card-container': CardContainer,\n 'n-card': Card,\n 'n-back-navigation-toolbar': BackNavigationToolbar,\n 'n-status': StatusWidget,\n 'n-tooltip': Tooltip,\n 'n-text-input': TextInput,\n 'n-select': SelectInput,\n 'n-button': Button,\n 'n-datetime-picker': DateTimePicker,\n 'n-modal': Modal,\n 'n-send-configuration': SendConfiguration,\n 'n-currencies-input': CurrenciesInput,\n },\n})\nexport default class VpEditor extends Vue {\n public configurationId!: string;\n public configurationName!: string;\n public configurationEditable: boolean = false;\n public vpConfig: any = null;\n public system: string = '';\n // contains all menus -> to display in treeview\n public treeviewItems: any = [];\n // contains all data-table params -> to display in datatable\n public datatableItems: any = [];\n // is a copy of datatableItems object\n public indeterminateStateSelected: boolean = true;\n public allDatatableItems: any = [];\n public isSelectedAllItems: boolean = false;\n public selectedItems: any = [];\n public currentItemsPerPage: any = [];\n // json that contain only params modified\n public jsonValues: VpDetailConfigurationRequest = { values: {}, params: {} };\n // json that contain all params and values\n public allJsonValues: VpDetailConfigurationRequest = {\n values: {},\n params: {},\n };\n public datatableSearch: string = '';\n public datatableFilters: any = [];\n public treeViewSelection: any = [];\n public inputValue: string = '';\n public oldInputValue: any = '';\n public selectedParam: any = {};\n public selectedMenu!: any;\n public ajvValidator: any;\n public ajvValidationMessages: any = [];\n public dialogEdit: boolean = false;\n public fwVersion: string = '';\n public lastDate: string = '';\n public posName: string = '';\n public currencyValue: number = 0;\n public currencyDecimals: number = 2;\n\n // public serverJsonValues: any = { values: { 1007: 5, 1008: 9999 }, params: { 1007: true, 1008: false } };\n public serverJsonValues: VpDetailConfigurationRequest = {\n values: {},\n params: {},\n };\n public selectInputItems: any = [];\n public selectInputItemsBoolean: any = [];\n public headers: object[] = [];\n\n @Prop({ default: '' })\n public posId!: string;\n\n @Prop({ default: '' })\n public historicalConfigId!: string;\n\n @Prop({ default: false })\n public onlyViewParams!: boolean;\n\n @Ref('modalDialog')\n public readonly modalDialog!: Modal;\n\n public get currentPosName(): string {\n return this.$store.getters[PointsOfSaleGetters.GetCurrentPointOfSale]\n .name as string;\n }\n\n private toolbarTitle: string = '';\n\n private ajvlocalize = {\n en: require('ajv-i18n/localize/en'),\n es: require('ajv-i18n/localize/es'),\n it: require('ajv-i18n/localize/it'),\n de: require('ajv-i18n/localize/de'),\n fr: require('ajv-i18n/localize/fr'),\n };\n\n private jsonSchema: any = null;\n\n private merchantDateFormat: string = '';\n\n private tableHeaders: object[] = [];\n\n private dtPagination: any = {\n itemsPerPageOptions: [10, 25, 50, 100],\n };\n\n private intDebug: boolean = false;\n private jsonSuperAdmin: any = SuperAdminJson;\n private jsonUserAdmin: any = AdminJson;\n private canSend: boolean = false;\n\n @Watch('datatableFilters')\n public filterParamsByChips() {\n this.filterParams();\n this.isIndeterminatedItemsSelected();\n }\n\n @Watch('historicalConfigId')\n public loadHistoricalConfig() {\n this.getHistoricalConfig();\n }\n\n @Watch('isSelectedAllItems')\n @Watch('currentItemsPerPage')\n public isIndeterminatedItemsSelected(): void {\n const selectedEqualsToTotal = this.allDatatableItems.filter(\n (allItem: any) =>\n this.currentItemsPerPage.find(\n (pageItem: any) => allItem.id === pageItem.id,\n ),\n );\n const currentPageSendNotSelected = this.currentItemsPerPage.filter(\n (item: any) => item.send === false,\n );\n const currentPageSendSelected = this.currentItemsPerPage.filter(\n (item: any) => item.send === true,\n );\n if (currentPageSendNotSelected.length === this.currentItemsPerPage.length) {\n this.isSelectedAllItems = false;\n }\n if (currentPageSendSelected.length === this.currentItemsPerPage.length) {\n this.isSelectedAllItems = true;\n }\n if (\n selectedEqualsToTotal.length === currentPageSendNotSelected.length ||\n currentPageSendNotSelected.length === 0\n ) {\n this.indeterminateStateSelected = false;\n } else {\n this.indeterminateStateSelected = true;\n }\n }\n\n public datatableItemClicked(param: any) {\n this.selectedParam = param;\n if (this.configurationEditable) {\n this.dialogEdit = true;\n this.showFormParam(param);\n }\n }\n\n public created() {\n this.tableHeaders = [\n // { text: 'ID', align: 'start', value: 'id', width: '1px'},\n // { text: 'Param', value: 'parameter' },\n {\n text: this.$t('vp.menu').toString(),\n value: 'shortcut',\n sortable: false,\n },\n { text: this.$t('name').toString(), value: 'name', sortable: false },\n { text: this.$t('value').toString(), value: 'value', sortable: false },\n { text: 'Default', value: 'schema.default', sortable: false },\n {\n text: this.$t('send').toString(),\n value: 'send',\n align: 'center',\n sortable: false,\n width: 60,\n },\n {\n text: '',\n value: 'status',\n sortable: false,\n align: 'center',\n width: 10,\n },\n // { text: '', value: 'actions', sortable: false },\n ];\n this.selectInputItemsBoolean = [\n { text: this.$t('vp.true').toString(), code: true },\n { text: this.$t('vp.false').toString(), code: false },\n ];\n this.configurationId = this.$route.params.id;\n this.configurationName = this.$route.params.name\n ? this.$route.params.name\n : this.configurationId;\n this.ajvValidator = new Ajv({ allErrors: true, jsonPointers: true });\n this.merchantDateFormat =\n 'YYYY-MM-DD\\THH:mm:ss' + this.$dates.getMerchantOffsetFormatted();\n if (!this.historicalConfigId) {\n this.getConfiguration();\n } else {\n this.getHistoricalConfig();\n }\n if (this.currentPosName) {\n this.posName = this.currentPosName;\n }\n }\n\n public beforeDestroy() {\n this.resetData();\n this.ajvValidator.destroy();\n }\n\n public getConfiguration() {\n this.$spinner.showSpinner();\n vpService\n .getConfigurationDetail(this.configurationId)\n .then((response) => {\n this.resetData();\n let responseData: any;\n if (this.intDebug) {\n responseData = {\n configuration: response.data.configuration,\n schema: this.jsonSuperAdmin,\n };\n } else {\n responseData = response.data;\n }\n this.vpConfig = responseData.configuration;\n this.serverJsonValues = Object.assign(this.vpConfig.configuration);\n this.jsonSchema = Object.assign(responseData.schema);\n this.currencyDecimals =\n this.$currency.getNumberOfDecimalsOfSelectedMerchant();\n })\n .catch((error) => {\n this.manageError(error);\n this.vpConfig = null;\n this.jsonSchema = null;\n })\n .finally(() => {\n if (this.vpConfig) {\n this.configurationName = this.vpConfig.hasOwnProperty('name')\n ? this.vpConfig.name\n : this.configurationId;\n this.fwVersion = this.vpConfig.hasOwnProperty('firmwareVersion')\n ? this.vpConfig.firmwareVersion\n : '';\n this.lastDate = this.vpConfig.hasOwnProperty('lastUpdateDate')\n ? this.$dates.getDateHourFormatted(this.vpConfig.lastUpdateDate)\n : '';\n this.configurationEditable = this.onlyViewParams\n ? false\n : this.vpConfig.hasOwnProperty('sent')\n ? !this.vpConfig.sent\n : false;\n this.headers = this.tableHeaders;\n /*if (this.configurationEditable) {\n this.headers.push({ text: '', value: 'actions', sortable: false, width: 15 });\n }*/\n if (this.onlyViewParams) {\n this.datatableFilters = [0]; // select \"in programming\"\n }\n this.$emit('update:vpConfig', this.vpConfig);\n }\n if (this.jsonSchema) {\n this.system = this.jsonSchema.system;\n this.jsonValues = Object.assign(this.serverJsonValues);\n this.scanJson(this.jsonSchema.menu, this.treeviewItems, -1, '');\n this.syncAndValidateAll();\n }\n this.toolbarTitle =\n this.$t('config.config').toString() + ': ' + this.configurationName;\n this.$spinner.removeSpinner();\n });\n }\n\n public getHistoricalConfig() {\n if (this.historicalConfigId) {\n this.$spinner.showSpinner();\n configsService\n .getHitoricalConfig(this.posId, this.historicalConfigId)\n .then((response) => {\n this.resetData();\n this.vpConfig = response.data.historicalConfig;\n this.serverJsonValues.values = Object.assign(this.vpConfig.cfgDevice);\n this.jsonSchema = Object.assign(response.data.schema);\n })\n .catch(() => {\n this.$toaster.showError('errors.common', true);\n this.vpConfig = null;\n this.jsonSchema = null;\n })\n .finally(() => {\n if (this.vpConfig) {\n this.configurationId = this.vpConfig.id;\n this.configurationName = this.configurationId;\n this.fwVersion = this.vpConfig.hasOwnProperty('firmwareVersion')\n ? this.vpConfig.firmwareVersion\n : '';\n this.lastDate = this.vpConfig.hasOwnProperty('historicalDate')\n ? this.$dates.getDateHourFormatted(this.vpConfig.historicalDate)\n : '';\n this.configurationEditable = false;\n this.headers = this.tableHeaders.splice(0, 4);\n }\n if (this.jsonSchema) {\n this.system = this.jsonSchema.system;\n this.jsonValues = Object.assign(this.serverJsonValues);\n this.scanJson(this.jsonSchema.menu, this.treeviewItems, -1, '');\n this.syncAndValidateAll();\n }\n this.toolbarTitle = this.posName;\n this.$spinner.removeSpinner();\n });\n }\n }\n\n public isMenu(item: any) {\n if (item.parameter) {\n return false;\n }\n return true;\n }\n\n // initialize structure for treemenu component (treeviewItems)\n public scanJson(node: any, parent: any, parentId: number, sc: string) {\n node.forEach((element: any) => {\n const fullShortcut = sc ? sc + '.' + element.shortcut : element.shortcut;\n const newItem = {\n id: element.id,\n name: this.getTranslatedJson('menu.' + element.id),\n parameter: element.parameter,\n children: [],\n parent: parentId,\n value: '',\n originalValue: '',\n send: false,\n originalSend: false,\n status: 'ok',\n message: '',\n schema: {},\n editor: '',\n shortcut: fullShortcut,\n show: typeof element.visibility === 'number',\n menuhidden: typeof element.visibility !== 'number',\n visibility: element.visibility,\n };\n\n if (this.isMenu(element)) {\n const index = parent.push(newItem);\n if (element.items) {\n this.scanJson(\n element.items,\n parent[index - 1].children,\n element.id,\n fullShortcut,\n );\n }\n } else {\n if (this.jsonSchema.parameters[element.parameter]) {\n // if param exists\n const schema = this.jsonSchema.parameters[element.parameter].schema; // get parameter schema\n newItem.schema = schema; // add schema info in treemenu item\n if (\n typeof this.jsonValues.values[element.parameter] !== 'undefined'\n ) {\n // if there is a value from server for this param\n newItem.value = this.jsonValues.values[element.parameter]; // update value in treemenu item\n // if send is true then set it in treemenu item\n newItem.send = this.jsonValues.params[element.parameter];\n } else {\n newItem.value = schema.default; // set default value in treemenu item\n }\n if (this.jsonSchema.parameters[element.parameter].editor) {\n newItem.editor =\n this.jsonSchema.parameters[element.parameter].editor;\n }\n }\n newItem.originalValue = newItem.value;\n newItem.originalSend = newItem.send;\n this.allDatatableItems.push(newItem);\n this.datatableItems.push(newItem);\n }\n });\n }\n\n // prepare/update final json of data\n public prepareJsonStructure() {\n // json with only values and params edited/sended -> useful for save data in DB\n this.jsonValues = { values: {}, params: {} };\n // json with all values -> useful for validation with Ajv\n this.allJsonValues = { values: {}, params: {} };\n\n this.allDatatableItems.forEach((element: any) => {\n this.canSend = this.canSend || element.send;\n if (element.send === true || element.value !== element.schema.default) {\n this.jsonValues.values[element.parameter] = this.allJsonValues.values[\n element.parameter\n ] = element.value;\n this.jsonValues.params[element.parameter] = this.allJsonValues.params[\n element.parameter\n ] = element.send;\n } else {\n this.allJsonValues.values[element.parameter] = element.schema.default;\n this.allJsonValues.params[element.parameter] = false;\n }\n });\n }\n\n public treeviewItemClicked(value: any) {\n this.selectedMenu = undefined;\n if (value.length > 0) {\n this.selectedMenu = value[0];\n }\n this.filterParams();\n }\n\n // show and hide params in datatable\n public filterParams() {\n if (this.selectedMenu === undefined) {\n this.datatableItems = JSON.parse(JSON.stringify(this.allDatatableItems));\n } else {\n this.datatableItems = this.allDatatableItems.filter((element: any) => {\n if (element.parent === this.selectedMenu) {\n return element;\n }\n });\n }\n this.refreshVisibility();\n // useful for filter param by CHIP selection\n this.datatableItems = this.datatableItems.filter((element: any) => {\n if (this.datatableFilters.includes(0)) {\n if (!element.send) {\n return false;\n }\n }\n if (this.datatableFilters.includes(1)) {\n if (element.status !== 'error') {\n return false;\n }\n }\n if (this.datatableFilters.includes(2)) {\n let elemValue = String(element.value);\n let elemDefault = String(element.schema.default);\n if (element.editor === 'hex') {\n elemValue = elemValue.toUpperCase();\n elemDefault = elemDefault.toUpperCase();\n }\n if (elemValue === elemDefault) {\n return false;\n }\n }\n return true;\n });\n }\n\n public showFormParam(parameter: any) {\n this.oldInputValue = parameter.value;\n this.datatableItems.forEach((element: any, index: number) => {\n if (element.parameter === parameter.parameter) {\n if (parameter.schema.type === 'boolean') {\n this.inputValue = this.datatableItems[index].value;\n } else {\n this.inputValue = this.datatableItems[index].value + '';\n if (parameter.editor === 'currency') {\n this.currencyValue =\n Number(this.datatableItems[index].value) /\n Math.pow(10, this.currencyDecimals);\n }\n }\n }\n });\n const paramKey = 'param_' + parameter.parameter;\n const listParams = this.getTranslatedJson(paramKey);\n this.selectInputItems = [];\n if (listParams) {\n for (const element in listParams) {\n if (listParams.hasOwnProperty(element)) {\n this.selectInputItems.push({\n text: listParams[element],\n code: element,\n });\n }\n }\n }\n }\n\n public handleSelect(value: any) {\n if (value === null) {\n this.inputValue = '';\n }\n this.handleInputValue();\n this.syncAndValidateAll();\n }\n\n public handleCurrency(value: any) {\n if (typeof value !== 'number') {\n value = 0;\n }\n this.inputValue = (value * Math.pow(10, this.currencyDecimals)).toString();\n this.handleInputValue();\n this.syncAndValidateAll();\n }\n\n public inputParamOnBlur() {\n this.handleInputValue();\n this.syncAndValidateAll();\n }\n\n public sendCheckboxClick() {\n this.isIndeterminatedItemsSelected();\n this.syncAndValidateAll();\n }\n\n public syncAndValidateAll() {\n this.syncAllDatatableItems();\n this.prepareJsonStructure();\n this.validateJson();\n this.updateDatatableStatus();\n this.refreshVisibility();\n }\n\n public selectAllCheckboxClick() {\n this.datatableItems.forEach((element: any) => {\n this.currentItemsPerPage.some((el: any) => {\n if (element.id === el.id) {\n element.send = this.isSelectedAllItems;\n }\n });\n });\n }\n\n // syncronize allDatatableItems with datatableItems\n public syncAllDatatableItems(): void {\n this.datatableItems.forEach((element: any) => {\n this.allDatatableItems.forEach((element2: any) => {\n if (element.id === element2.id) {\n element2.value = element.value;\n element2.send = element.send;\n element2.status = element.status;\n element2.message = element.message;\n }\n });\n });\n }\n\n public handleInputValue() {\n this.datatableItems.forEach((element: any) => {\n if (element.parameter === this.selectedParam.parameter) {\n if (this.selectedParam.schema.type === 'integer') {\n element.value = parseInt(this.inputValue, 10);\n } else if (this.selectedParam.schema.type === 'number') {\n element.value = parseFloat(this.inputValue);\n } else {\n element.value = this.inputValue;\n }\n }\n });\n }\n\n public updateDatatableStatus() {\n this.datatableItems.forEach((element: any) => {\n element.status = 'ok';\n element.message = '';\n if (this.ajvValidationMessages.length > 0) {\n this.ajvValidationMessages.forEach((error: any) => {\n if (element.parameter + '' === error.dataPath.replace('/', '')) {\n element.status = 'error';\n element.message += error.message;\n element.message += '
';\n }\n });\n }\n });\n this.syncAllDatatableItems();\n }\n\n public validateJson() {\n try {\n this.ajvValidationMessages = [];\n const validate = this.ajvValidator.compile(this.jsonSchema.JSONschema);\n const valid = validate(this.allJsonValues.values);\n if (!valid) {\n this.ajvlocalize[i18n.locale](validate.errors);\n this.ajvValidationMessages = validate.errors;\n }\n } catch (error) {\n console.error(error);\n }\n }\n\n public getCurrentRows(items: any) {\n this.currentItemsPerPage = items;\n }\n\n public editorLongList(): boolean {\n return this.selectInputItems?.length > 3;\n }\n\n private updateItemsVisibility(items: any[], recursion: boolean = false): void {\n items.forEach((element: any) => {\n if (\n typeof element.visibility === 'object' &&\n element.visibility !== null\n ) {\n // Retrieve list of involved parameters\n const visibilityParams = element.visibility.depends; // is an array\n const visibilityConf = {};\n visibilityParams.forEach((p: any) => {\n visibilityConf[p] = this.allJsonValues.values[p];\n });\n // Validate against schema for visibility\n const validate = this.ajvValidator.compile(element.visibility.schema);\n const valid = validate(visibilityConf);\n element.show = valid || !!this.historicalConfigId;\n element.menuhidden = !element.show;\n }\n // Recursively update visibility for children items\n if (recursion && element.children && element.children.length > 0) {\n this.updateItemsVisibility(element.children, recursion);\n }\n });\n }\n\n private refreshVisibility(): void {\n [this.treeviewItems].forEach((obj: any) => {\n this.updateItemsVisibility(obj, true);\n });\n [this.datatableItems].forEach((obj: any) => {\n this.updateItemsVisibility(obj);\n });\n }\n\n private saveConfiguration(): void {\n if (this.ajvValidationMessages.length > 0) {\n this.$toaster.showError('errors.vp-configuration-form-not-valid', true);\n return;\n }\n this.modalDialog\n .confirm('vp.configuration.confirm-save', 'vp.save-configuration')\n .then((confirmresult) => {\n if (confirmresult) {\n this.$spinner.showSpinner();\n vpService\n .saveConfigurationDetail(this.configurationId, this.jsonValues)\n .then(() => {\n this.$toaster.showSuccess('success.common', true);\n this.getConfiguration();\n })\n .catch((error) => {\n this.manageError(error);\n })\n .finally(() => {\n this.$spinner.removeSpinner();\n });\n }\n });\n }\n\n private sendConfiguration(): void {\n if (this.formIsDirty()) {\n this.$toaster.showError('save-data-before-proceed', true);\n return;\n }\n this.$router.push({\n name: Routes.VPConfigurationSend,\n params: { id: this.configurationId, devicetype: this.vpConfig.deviceType ?? '', send: '' + this.canSend },\n });\n }\n\n private downloadConfiguration(): void {\n if (this.formIsDirty()) {\n this.$toaster.showError('save-data-before-proceed', true);\n return;\n }\n this.$router.push({\n name: Routes.VPConfigurationDownload,\n params: { id: this.configurationId, deviceType: this.vpConfig.deviceType },\n });\n }\n\n private posHistory(): void {\n this.$router.push({\n name: Routes.VPConfigurationPosHistory,\n params: { id: this.configurationId },\n });\n }\n\n private cancelParam() {\n this.inputValue = JSON.parse(JSON.stringify(this.oldInputValue));\n this.inputParamOnBlur();\n this.dialogEdit = false;\n }\n\n private saveParam() {\n if (this.selectedParam.status !== 'ok') {\n this.$toaster.showError('errors.common', true);\n } else {\n if (\n this.selectedParam.value !== this.selectedParam ||\n this.selectedParam.value !== this.selectedParam.schema.default\n ) {\n this.selectedParam.send = true;\n }\n this.dialogEdit = false;\n this.syncAndValidateAll();\n }\n }\n\n private inputParamOnChange() {\n if (this.selectedParam.editor === 'hex') {\n this.inputValue = this.inputValue.toUpperCase();\n }\n }\n\n private deleteConfiguration(): void {\n this.modalDialog\n .confirm('vp.configuration.confirm-delete', 'vp.delete-configuration')\n .then((confirmresult) => {\n if (confirmresult) {\n this.$spinner.showSpinner();\n vpService\n .delete(this.configurationId)\n .then(() => {\n this.$toaster.showSuccess('success.common', true);\n this.$router.push({ name: Routes.VPConfigurations });\n })\n .catch((error) => {\n this.manageError(error);\n })\n .finally(() => {\n this.$spinner.removeSpinner();\n });\n }\n });\n }\n\n private formIsDirty() {\n return (\n JSON.stringify(this.serverJsonValues) !== JSON.stringify(this.jsonValues)\n );\n }\n\n private getTranslatedJson(path: string): any {\n const translations = this.jsonSchema.translations[i18n.locale];\n let translation;\n if (translations) {\n translation = this.getJsonProp(translations, path);\n }\n return translation\n ? translation\n : this.getJsonProp(this.jsonSchema.translations.en, path);\n }\n\n private getJsonProp(obj: any, path: string): any {\n const properties: string[] = path.split('.');\n const property = properties.shift();\n if (property) {\n if (obj[property]) {\n return this.getJsonProp(obj[property], properties.join('.'));\n }\n } else {\n return obj;\n }\n }\n\n private schemaHasFormat(obj: any, formatValue: string): boolean {\n const s = JSON.stringify(obj);\n return s.search('\"format\":\"' + formatValue + '\"') !== -1 ? true : false;\n }\n\n private formatParamValue(item: any, value: any): string {\n let formatted = value;\n if (item.editor === 'list') {\n formatted = this.getTranslatedJson(\n 'param_' + item.parameter + '.' + value,\n );\n } else if (item.editor === 'currency') {\n formatted = this.formatCurrencyValue(value);\n } else if (item.schema.type === 'boolean') {\n formatted = this.$t('vp.' + value).toString();\n } else {\n if (this.schemaHasFormat(item.schema, 'date') && value !== '') {\n formatted = this.$dates.getDateFormatted(value, 'LL');\n }\n if (this.schemaHasFormat(item.schema, 'date-time') && value !== '') {\n formatted = this.$dates.getDateFormatted(value, 'LL LT');\n }\n }\n return formatted;\n }\n\n private formatCurrencyValue(value: any): string {\n let currency = parseFloat(value);\n if (isNaN(currency)) {\n currency = 0;\n }\n return this.$currency.parseWithCodeBySelectedMerchant(currency).toString();\n }\n\n private resetData(): void {\n this.treeviewItems = [];\n this.treeViewSelection = [];\n this.datatableItems = [];\n this.allDatatableItems = [];\n this.jsonValues = { values: {}, params: {} };\n this.allJsonValues = { values: {}, params: {} };\n this.serverJsonValues = { values: {}, params: {} };\n this.datatableSearch = '';\n this.datatableFilters = [];\n this.inputValue = '';\n this.oldInputValue = '';\n this.selectedParam = {};\n this.selectedMenu = undefined;\n }\n\n private manageError(error: any, alternative: string = 'errors.common') {\n this.$toaster.showError(errorLocaleLabelKey(error, alternative), true);\n }\n}\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--14-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CurrenciesInput.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--14-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CurrenciesInput.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./CurrenciesInput.vue?vue&type=template&id=4c0e37a0&scoped=true&\"\nimport script from \"./CurrenciesInput.vue?vue&type=script&lang=ts&\"\nexport * from \"./CurrenciesInput.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./CurrenciesInput.vue?vue&type=style&index=0&id=4c0e37a0&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"4c0e37a0\",\n null\n \n)\n\nexport default component.exports","'use strict';\nmodule.exports = function generate_oneOf(it, $keyword, $ruleType) {\n var out = ' ';\n var $lvl = it.level;\n var $dataLvl = it.dataLevel;\n var $schema = it.schema[$keyword];\n var $schemaPath = it.schemaPath + it.util.getProperty($keyword);\n var $errSchemaPath = it.errSchemaPath + '/' + $keyword;\n var $breakOnError = !it.opts.allErrors;\n var $data = 'data' + ($dataLvl || '');\n var $valid = 'valid' + $lvl;\n var $errs = 'errs__' + $lvl;\n var $it = it.util.copy(it);\n var $closingBraces = '';\n $it.level++;\n var $nextValid = 'valid' + $it.level;\n var $currentBaseId = $it.baseId,\n $prevValid = 'prevValid' + $lvl,\n $passingSchemas = 'passingSchemas' + $lvl;\n out += 'var ' + ($errs) + ' = errors , ' + ($prevValid) + ' = false , ' + ($valid) + ' = false , ' + ($passingSchemas) + ' = null; ';\n var $wasComposite = it.compositeRule;\n it.compositeRule = $it.compositeRule = true;\n var arr1 = $schema;\n if (arr1) {\n var $sch, $i = -1,\n l1 = arr1.length - 1;\n while ($i < l1) {\n $sch = arr1[$i += 1];\n if ((it.opts.strictKeywords ? (typeof $sch == 'object' && Object.keys($sch).length > 0) || $sch === false : it.util.schemaHasRules($sch, it.RULES.all))) {\n $it.schema = $sch;\n $it.schemaPath = $schemaPath + '[' + $i + ']';\n $it.errSchemaPath = $errSchemaPath + '/' + $i;\n out += ' ' + (it.validate($it)) + ' ';\n $it.baseId = $currentBaseId;\n } else {\n out += ' var ' + ($nextValid) + ' = true; ';\n }\n if ($i) {\n out += ' if (' + ($nextValid) + ' && ' + ($prevValid) + ') { ' + ($valid) + ' = false; ' + ($passingSchemas) + ' = [' + ($passingSchemas) + ', ' + ($i) + ']; } else { ';\n $closingBraces += '}';\n }\n out += ' if (' + ($nextValid) + ') { ' + ($valid) + ' = ' + ($prevValid) + ' = true; ' + ($passingSchemas) + ' = ' + ($i) + '; }';\n }\n }\n it.compositeRule = $it.compositeRule = $wasComposite;\n out += '' + ($closingBraces) + 'if (!' + ($valid) + ') { var err = '; /* istanbul ignore else */\n if (it.createErrors !== false) {\n out += ' { keyword: \\'' + ('oneOf') + '\\' , dataPath: (dataPath || \\'\\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { passingSchemas: ' + ($passingSchemas) + ' } ';\n if (it.opts.messages !== false) {\n out += ' , message: \\'should match exactly one schema in oneOf\\' ';\n }\n if (it.opts.verbose) {\n out += ' , schema: validate.schema' + ($schemaPath) + ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' ';\n }\n out += ' } ';\n } else {\n out += ' {} ';\n }\n out += '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ';\n if (!it.compositeRule && $breakOnError) {\n /* istanbul ignore if */\n if (it.async) {\n out += ' throw new ValidationError(vErrors); ';\n } else {\n out += ' validate.errors = vErrors; return false; ';\n }\n }\n out += '} else { errors = ' + ($errs) + '; if (vErrors !== null) { if (' + ($errs) + ') vErrors.length = ' + ($errs) + '; else vErrors = null; }';\n if (it.opts.allErrors) {\n out += ' } ';\n }\n return out;\n}\n","/** @license URI.js v4.4.1 (c) 2011 Gary Court. License: http://github.com/garycourt/uri-js */\n(function (global, factory) {\n\ttypeof exports === 'object' && typeof module !== 'undefined' ? factory(exports) :\n\ttypeof define === 'function' && define.amd ? define(['exports'], factory) :\n\t(factory((global.URI = global.URI || {})));\n}(this, (function (exports) { 'use strict';\n\nfunction merge() {\n for (var _len = arguments.length, sets = Array(_len), _key = 0; _key < _len; _key++) {\n sets[_key] = arguments[_key];\n }\n\n if (sets.length > 1) {\n sets[0] = sets[0].slice(0, -1);\n var xl = sets.length - 1;\n for (var x = 1; x < xl; ++x) {\n sets[x] = sets[x].slice(1, -1);\n }\n sets[xl] = sets[xl].slice(1);\n return sets.join('');\n } else {\n return sets[0];\n }\n}\nfunction subexp(str) {\n return \"(?:\" + str + \")\";\n}\nfunction typeOf(o) {\n return o === undefined ? \"undefined\" : o === null ? \"null\" : Object.prototype.toString.call(o).split(\" \").pop().split(\"]\").shift().toLowerCase();\n}\nfunction toUpperCase(str) {\n return str.toUpperCase();\n}\nfunction toArray(obj) {\n return obj !== undefined && obj !== null ? obj instanceof Array ? obj : typeof obj.length !== \"number\" || obj.split || obj.setInterval || obj.call ? [obj] : Array.prototype.slice.call(obj) : [];\n}\nfunction assign(target, source) {\n var obj = target;\n if (source) {\n for (var key in source) {\n obj[key] = source[key];\n }\n }\n return obj;\n}\n\nfunction buildExps(isIRI) {\n var ALPHA$$ = \"[A-Za-z]\",\n CR$ = \"[\\\\x0D]\",\n DIGIT$$ = \"[0-9]\",\n DQUOTE$$ = \"[\\\\x22]\",\n HEXDIG$$ = merge(DIGIT$$, \"[A-Fa-f]\"),\n //case-insensitive\n LF$$ = \"[\\\\x0A]\",\n SP$$ = \"[\\\\x20]\",\n PCT_ENCODED$ = subexp(subexp(\"%[EFef]\" + HEXDIG$$ + \"%\" + HEXDIG$$ + HEXDIG$$ + \"%\" + HEXDIG$$ + HEXDIG$$) + \"|\" + subexp(\"%[89A-Fa-f]\" + HEXDIG$$ + \"%\" + HEXDIG$$ + HEXDIG$$) + \"|\" + subexp(\"%\" + HEXDIG$$ + HEXDIG$$)),\n //expanded\n GEN_DELIMS$$ = \"[\\\\:\\\\/\\\\?\\\\#\\\\[\\\\]\\\\@]\",\n SUB_DELIMS$$ = \"[\\\\!\\\\$\\\\&\\\\'\\\\(\\\\)\\\\*\\\\+\\\\,\\\\;\\\\=]\",\n RESERVED$$ = merge(GEN_DELIMS$$, SUB_DELIMS$$),\n UCSCHAR$$ = isIRI ? \"[\\\\xA0-\\\\u200D\\\\u2010-\\\\u2029\\\\u202F-\\\\uD7FF\\\\uF900-\\\\uFDCF\\\\uFDF0-\\\\uFFEF]\" : \"[]\",\n //subset, excludes bidi control characters\n IPRIVATE$$ = isIRI ? \"[\\\\uE000-\\\\uF8FF]\" : \"[]\",\n //subset\n UNRESERVED$$ = merge(ALPHA$$, DIGIT$$, \"[\\\\-\\\\.\\\\_\\\\~]\", UCSCHAR$$),\n SCHEME$ = subexp(ALPHA$$ + merge(ALPHA$$, DIGIT$$, \"[\\\\+\\\\-\\\\.]\") + \"*\"),\n USERINFO$ = subexp(subexp(PCT_ENCODED$ + \"|\" + merge(UNRESERVED$$, SUB_DELIMS$$, \"[\\\\:]\")) + \"*\"),\n DEC_OCTET$ = subexp(subexp(\"25[0-5]\") + \"|\" + subexp(\"2[0-4]\" + DIGIT$$) + \"|\" + subexp(\"1\" + DIGIT$$ + DIGIT$$) + \"|\" + subexp(\"[1-9]\" + DIGIT$$) + \"|\" + DIGIT$$),\n DEC_OCTET_RELAXED$ = subexp(subexp(\"25[0-5]\") + \"|\" + subexp(\"2[0-4]\" + DIGIT$$) + \"|\" + subexp(\"1\" + DIGIT$$ + DIGIT$$) + \"|\" + subexp(\"0?[1-9]\" + DIGIT$$) + \"|0?0?\" + DIGIT$$),\n //relaxed parsing rules\n IPV4ADDRESS$ = subexp(DEC_OCTET_RELAXED$ + \"\\\\.\" + DEC_OCTET_RELAXED$ + \"\\\\.\" + DEC_OCTET_RELAXED$ + \"\\\\.\" + DEC_OCTET_RELAXED$),\n H16$ = subexp(HEXDIG$$ + \"{1,4}\"),\n LS32$ = subexp(subexp(H16$ + \"\\\\:\" + H16$) + \"|\" + IPV4ADDRESS$),\n IPV6ADDRESS1$ = subexp(subexp(H16$ + \"\\\\:\") + \"{6}\" + LS32$),\n // 6( h16 \":\" ) ls32\n IPV6ADDRESS2$ = subexp(\"\\\\:\\\\:\" + subexp(H16$ + \"\\\\:\") + \"{5}\" + LS32$),\n // \"::\" 5( h16 \":\" ) ls32\n IPV6ADDRESS3$ = subexp(subexp(H16$) + \"?\\\\:\\\\:\" + subexp(H16$ + \"\\\\:\") + \"{4}\" + LS32$),\n //[ h16 ] \"::\" 4( h16 \":\" ) ls32\n IPV6ADDRESS4$ = subexp(subexp(subexp(H16$ + \"\\\\:\") + \"{0,1}\" + H16$) + \"?\\\\:\\\\:\" + subexp(H16$ + \"\\\\:\") + \"{3}\" + LS32$),\n //[ *1( h16 \":\" ) h16 ] \"::\" 3( h16 \":\" ) ls32\n IPV6ADDRESS5$ = subexp(subexp(subexp(H16$ + \"\\\\:\") + \"{0,2}\" + H16$) + \"?\\\\:\\\\:\" + subexp(H16$ + \"\\\\:\") + \"{2}\" + LS32$),\n //[ *2( h16 \":\" ) h16 ] \"::\" 2( h16 \":\" ) ls32\n IPV6ADDRESS6$ = subexp(subexp(subexp(H16$ + \"\\\\:\") + \"{0,3}\" + H16$) + \"?\\\\:\\\\:\" + H16$ + \"\\\\:\" + LS32$),\n //[ *3( h16 \":\" ) h16 ] \"::\" h16 \":\" ls32\n IPV6ADDRESS7$ = subexp(subexp(subexp(H16$ + \"\\\\:\") + \"{0,4}\" + H16$) + \"?\\\\:\\\\:\" + LS32$),\n //[ *4( h16 \":\" ) h16 ] \"::\" ls32\n IPV6ADDRESS8$ = subexp(subexp(subexp(H16$ + \"\\\\:\") + \"{0,5}\" + H16$) + \"?\\\\:\\\\:\" + H16$),\n //[ *5( h16 \":\" ) h16 ] \"::\" h16\n IPV6ADDRESS9$ = subexp(subexp(subexp(H16$ + \"\\\\:\") + \"{0,6}\" + H16$) + \"?\\\\:\\\\:\"),\n //[ *6( h16 \":\" ) h16 ] \"::\"\n IPV6ADDRESS$ = subexp([IPV6ADDRESS1$, IPV6ADDRESS2$, IPV6ADDRESS3$, IPV6ADDRESS4$, IPV6ADDRESS5$, IPV6ADDRESS6$, IPV6ADDRESS7$, IPV6ADDRESS8$, IPV6ADDRESS9$].join(\"|\")),\n ZONEID$ = subexp(subexp(UNRESERVED$$ + \"|\" + PCT_ENCODED$) + \"+\"),\n //RFC 6874\n IPV6ADDRZ$ = subexp(IPV6ADDRESS$ + \"\\\\%25\" + ZONEID$),\n //RFC 6874\n IPV6ADDRZ_RELAXED$ = subexp(IPV6ADDRESS$ + subexp(\"\\\\%25|\\\\%(?!\" + HEXDIG$$ + \"{2})\") + ZONEID$),\n //RFC 6874, with relaxed parsing rules\n IPVFUTURE$ = subexp(\"[vV]\" + HEXDIG$$ + \"+\\\\.\" + merge(UNRESERVED$$, SUB_DELIMS$$, \"[\\\\:]\") + \"+\"),\n IP_LITERAL$ = subexp(\"\\\\[\" + subexp(IPV6ADDRZ_RELAXED$ + \"|\" + IPV6ADDRESS$ + \"|\" + IPVFUTURE$) + \"\\\\]\"),\n //RFC 6874\n REG_NAME$ = subexp(subexp(PCT_ENCODED$ + \"|\" + merge(UNRESERVED$$, SUB_DELIMS$$)) + \"*\"),\n HOST$ = subexp(IP_LITERAL$ + \"|\" + IPV4ADDRESS$ + \"(?!\" + REG_NAME$ + \")\" + \"|\" + REG_NAME$),\n PORT$ = subexp(DIGIT$$ + \"*\"),\n AUTHORITY$ = subexp(subexp(USERINFO$ + \"@\") + \"?\" + HOST$ + subexp(\"\\\\:\" + PORT$) + \"?\"),\n PCHAR$ = subexp(PCT_ENCODED$ + \"|\" + merge(UNRESERVED$$, SUB_DELIMS$$, \"[\\\\:\\\\@]\")),\n SEGMENT$ = subexp(PCHAR$ + \"*\"),\n SEGMENT_NZ$ = subexp(PCHAR$ + \"+\"),\n SEGMENT_NZ_NC$ = subexp(subexp(PCT_ENCODED$ + \"|\" + merge(UNRESERVED$$, SUB_DELIMS$$, \"[\\\\@]\")) + \"+\"),\n PATH_ABEMPTY$ = subexp(subexp(\"\\\\/\" + SEGMENT$) + \"*\"),\n PATH_ABSOLUTE$ = subexp(\"\\\\/\" + subexp(SEGMENT_NZ$ + PATH_ABEMPTY$) + \"?\"),\n //simplified\n PATH_NOSCHEME$ = subexp(SEGMENT_NZ_NC$ + PATH_ABEMPTY$),\n //simplified\n PATH_ROOTLESS$ = subexp(SEGMENT_NZ$ + PATH_ABEMPTY$),\n //simplified\n PATH_EMPTY$ = \"(?!\" + PCHAR$ + \")\",\n PATH$ = subexp(PATH_ABEMPTY$ + \"|\" + PATH_ABSOLUTE$ + \"|\" + PATH_NOSCHEME$ + \"|\" + PATH_ROOTLESS$ + \"|\" + PATH_EMPTY$),\n QUERY$ = subexp(subexp(PCHAR$ + \"|\" + merge(\"[\\\\/\\\\?]\", IPRIVATE$$)) + \"*\"),\n FRAGMENT$ = subexp(subexp(PCHAR$ + \"|[\\\\/\\\\?]\") + \"*\"),\n HIER_PART$ = subexp(subexp(\"\\\\/\\\\/\" + AUTHORITY$ + PATH_ABEMPTY$) + \"|\" + PATH_ABSOLUTE$ + \"|\" + PATH_ROOTLESS$ + \"|\" + PATH_EMPTY$),\n URI$ = subexp(SCHEME$ + \"\\\\:\" + HIER_PART$ + subexp(\"\\\\?\" + QUERY$) + \"?\" + subexp(\"\\\\#\" + FRAGMENT$) + \"?\"),\n RELATIVE_PART$ = subexp(subexp(\"\\\\/\\\\/\" + AUTHORITY$ + PATH_ABEMPTY$) + \"|\" + PATH_ABSOLUTE$ + \"|\" + PATH_NOSCHEME$ + \"|\" + PATH_EMPTY$),\n RELATIVE$ = subexp(RELATIVE_PART$ + subexp(\"\\\\?\" + QUERY$) + \"?\" + subexp(\"\\\\#\" + FRAGMENT$) + \"?\"),\n URI_REFERENCE$ = subexp(URI$ + \"|\" + RELATIVE$),\n ABSOLUTE_URI$ = subexp(SCHEME$ + \"\\\\:\" + HIER_PART$ + subexp(\"\\\\?\" + QUERY$) + \"?\"),\n GENERIC_REF$ = \"^(\" + SCHEME$ + \")\\\\:\" + subexp(subexp(\"\\\\/\\\\/(\" + subexp(\"(\" + USERINFO$ + \")@\") + \"?(\" + HOST$ + \")\" + subexp(\"\\\\:(\" + PORT$ + \")\") + \"?)\") + \"?(\" + PATH_ABEMPTY$ + \"|\" + PATH_ABSOLUTE$ + \"|\" + PATH_ROOTLESS$ + \"|\" + PATH_EMPTY$ + \")\") + subexp(\"\\\\?(\" + QUERY$ + \")\") + \"?\" + subexp(\"\\\\#(\" + FRAGMENT$ + \")\") + \"?$\",\n RELATIVE_REF$ = \"^(){0}\" + subexp(subexp(\"\\\\/\\\\/(\" + subexp(\"(\" + USERINFO$ + \")@\") + \"?(\" + HOST$ + \")\" + subexp(\"\\\\:(\" + PORT$ + \")\") + \"?)\") + \"?(\" + PATH_ABEMPTY$ + \"|\" + PATH_ABSOLUTE$ + \"|\" + PATH_NOSCHEME$ + \"|\" + PATH_EMPTY$ + \")\") + subexp(\"\\\\?(\" + QUERY$ + \")\") + \"?\" + subexp(\"\\\\#(\" + FRAGMENT$ + \")\") + \"?$\",\n ABSOLUTE_REF$ = \"^(\" + SCHEME$ + \")\\\\:\" + subexp(subexp(\"\\\\/\\\\/(\" + subexp(\"(\" + USERINFO$ + \")@\") + \"?(\" + HOST$ + \")\" + subexp(\"\\\\:(\" + PORT$ + \")\") + \"?)\") + \"?(\" + PATH_ABEMPTY$ + \"|\" + PATH_ABSOLUTE$ + \"|\" + PATH_ROOTLESS$ + \"|\" + PATH_EMPTY$ + \")\") + subexp(\"\\\\?(\" + QUERY$ + \")\") + \"?$\",\n SAMEDOC_REF$ = \"^\" + subexp(\"\\\\#(\" + FRAGMENT$ + \")\") + \"?$\",\n AUTHORITY_REF$ = \"^\" + subexp(\"(\" + USERINFO$ + \")@\") + \"?(\" + HOST$ + \")\" + subexp(\"\\\\:(\" + PORT$ + \")\") + \"?$\";\n return {\n NOT_SCHEME: new RegExp(merge(\"[^]\", ALPHA$$, DIGIT$$, \"[\\\\+\\\\-\\\\.]\"), \"g\"),\n NOT_USERINFO: new RegExp(merge(\"[^\\\\%\\\\:]\", UNRESERVED$$, SUB_DELIMS$$), \"g\"),\n NOT_HOST: new RegExp(merge(\"[^\\\\%\\\\[\\\\]\\\\:]\", UNRESERVED$$, SUB_DELIMS$$), \"g\"),\n NOT_PATH: new RegExp(merge(\"[^\\\\%\\\\/\\\\:\\\\@]\", UNRESERVED$$, SUB_DELIMS$$), \"g\"),\n NOT_PATH_NOSCHEME: new RegExp(merge(\"[^\\\\%\\\\/\\\\@]\", UNRESERVED$$, SUB_DELIMS$$), \"g\"),\n NOT_QUERY: new RegExp(merge(\"[^\\\\%]\", UNRESERVED$$, SUB_DELIMS$$, \"[\\\\:\\\\@\\\\/\\\\?]\", IPRIVATE$$), \"g\"),\n NOT_FRAGMENT: new RegExp(merge(\"[^\\\\%]\", UNRESERVED$$, SUB_DELIMS$$, \"[\\\\:\\\\@\\\\/\\\\?]\"), \"g\"),\n ESCAPE: new RegExp(merge(\"[^]\", UNRESERVED$$, SUB_DELIMS$$), \"g\"),\n UNRESERVED: new RegExp(UNRESERVED$$, \"g\"),\n OTHER_CHARS: new RegExp(merge(\"[^\\\\%]\", UNRESERVED$$, RESERVED$$), \"g\"),\n PCT_ENCODED: new RegExp(PCT_ENCODED$, \"g\"),\n IPV4ADDRESS: new RegExp(\"^(\" + IPV4ADDRESS$ + \")$\"),\n IPV6ADDRESS: new RegExp(\"^\\\\[?(\" + IPV6ADDRESS$ + \")\" + subexp(subexp(\"\\\\%25|\\\\%(?!\" + HEXDIG$$ + \"{2})\") + \"(\" + ZONEID$ + \")\") + \"?\\\\]?$\") //RFC 6874, with relaxed parsing rules\n };\n}\nvar URI_PROTOCOL = buildExps(false);\n\nvar IRI_PROTOCOL = buildExps(true);\n\nvar slicedToArray = function () {\n function sliceIterator(arr, i) {\n var _arr = [];\n var _n = true;\n var _d = false;\n var _e = undefined;\n\n try {\n for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) {\n _arr.push(_s.value);\n\n if (i && _arr.length === i) break;\n }\n } catch (err) {\n _d = true;\n _e = err;\n } finally {\n try {\n if (!_n && _i[\"return\"]) _i[\"return\"]();\n } finally {\n if (_d) throw _e;\n }\n }\n\n return _arr;\n }\n\n return function (arr, i) {\n if (Array.isArray(arr)) {\n return arr;\n } else if (Symbol.iterator in Object(arr)) {\n return sliceIterator(arr, i);\n } else {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance\");\n }\n };\n}();\n\n\n\n\n\n\n\n\n\n\n\n\n\nvar toConsumableArray = function (arr) {\n if (Array.isArray(arr)) {\n for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) arr2[i] = arr[i];\n\n return arr2;\n } else {\n return Array.from(arr);\n }\n};\n\n/** Highest positive signed 32-bit float value */\n\nvar maxInt = 2147483647; // aka. 0x7FFFFFFF or 2^31-1\n\n/** Bootstring parameters */\nvar base = 36;\nvar tMin = 1;\nvar tMax = 26;\nvar skew = 38;\nvar damp = 700;\nvar initialBias = 72;\nvar initialN = 128; // 0x80\nvar delimiter = '-'; // '\\x2D'\n\n/** Regular expressions */\nvar regexPunycode = /^xn--/;\nvar regexNonASCII = /[^\\0-\\x7E]/; // non-ASCII chars\nvar regexSeparators = /[\\x2E\\u3002\\uFF0E\\uFF61]/g; // RFC 3490 separators\n\n/** Error messages */\nvar errors = {\n\t'overflow': 'Overflow: input needs wider integers to process',\n\t'not-basic': 'Illegal input >= 0x80 (not a basic code point)',\n\t'invalid-input': 'Invalid input'\n};\n\n/** Convenience shortcuts */\nvar baseMinusTMin = base - tMin;\nvar floor = Math.floor;\nvar stringFromCharCode = String.fromCharCode;\n\n/*--------------------------------------------------------------------------*/\n\n/**\n * A generic error utility function.\n * @private\n * @param {String} type The error type.\n * @returns {Error} Throws a `RangeError` with the applicable error message.\n */\nfunction error$1(type) {\n\tthrow new RangeError(errors[type]);\n}\n\n/**\n * A generic `Array#map` utility function.\n * @private\n * @param {Array} array The array to iterate over.\n * @param {Function} callback The function that gets called for every array\n * item.\n * @returns {Array} A new array of values returned by the callback function.\n */\nfunction map(array, fn) {\n\tvar result = [];\n\tvar length = array.length;\n\twhile (length--) {\n\t\tresult[length] = fn(array[length]);\n\t}\n\treturn result;\n}\n\n/**\n * A simple `Array#map`-like wrapper to work with domain name strings or email\n * addresses.\n * @private\n * @param {String} domain The domain name or email address.\n * @param {Function} callback The function that gets called for every\n * character.\n * @returns {Array} A new string of characters returned by the callback\n * function.\n */\nfunction mapDomain(string, fn) {\n\tvar parts = string.split('@');\n\tvar result = '';\n\tif (parts.length > 1) {\n\t\t// In email addresses, only the domain name should be punycoded. Leave\n\t\t// the local part (i.e. everything up to `@`) intact.\n\t\tresult = parts[0] + '@';\n\t\tstring = parts[1];\n\t}\n\t// Avoid `split(regex)` for IE8 compatibility. See #17.\n\tstring = string.replace(regexSeparators, '\\x2E');\n\tvar labels = string.split('.');\n\tvar encoded = map(labels, fn).join('.');\n\treturn result + encoded;\n}\n\n/**\n * Creates an array containing the numeric code points of each Unicode\n * character in the string. While JavaScript uses UCS-2 internally,\n * this function will convert a pair of surrogate halves (each of which\n * UCS-2 exposes as separate characters) into a single code point,\n * matching UTF-16.\n * @see `punycode.ucs2.encode`\n * @see \n * @memberOf punycode.ucs2\n * @name decode\n * @param {String} string The Unicode input string (UCS-2).\n * @returns {Array} The new array of code points.\n */\nfunction ucs2decode(string) {\n\tvar output = [];\n\tvar counter = 0;\n\tvar length = string.length;\n\twhile (counter < length) {\n\t\tvar value = string.charCodeAt(counter++);\n\t\tif (value >= 0xD800 && value <= 0xDBFF && counter < length) {\n\t\t\t// It's a high surrogate, and there is a next character.\n\t\t\tvar extra = string.charCodeAt(counter++);\n\t\t\tif ((extra & 0xFC00) == 0xDC00) {\n\t\t\t\t// Low surrogate.\n\t\t\t\toutput.push(((value & 0x3FF) << 10) + (extra & 0x3FF) + 0x10000);\n\t\t\t} else {\n\t\t\t\t// It's an unmatched surrogate; only append this code unit, in case the\n\t\t\t\t// next code unit is the high surrogate of a surrogate pair.\n\t\t\t\toutput.push(value);\n\t\t\t\tcounter--;\n\t\t\t}\n\t\t} else {\n\t\t\toutput.push(value);\n\t\t}\n\t}\n\treturn output;\n}\n\n/**\n * Creates a string based on an array of numeric code points.\n * @see `punycode.ucs2.decode`\n * @memberOf punycode.ucs2\n * @name encode\n * @param {Array} codePoints The array of numeric code points.\n * @returns {String} The new Unicode string (UCS-2).\n */\nvar ucs2encode = function ucs2encode(array) {\n\treturn String.fromCodePoint.apply(String, toConsumableArray(array));\n};\n\n/**\n * Converts a basic code point into a digit/integer.\n * @see `digitToBasic()`\n * @private\n * @param {Number} codePoint The basic numeric code point value.\n * @returns {Number} The numeric value of a basic code point (for use in\n * representing integers) in the range `0` to `base - 1`, or `base` if\n * the code point does not represent a value.\n */\nvar basicToDigit = function basicToDigit(codePoint) {\n\tif (codePoint - 0x30 < 0x0A) {\n\t\treturn codePoint - 0x16;\n\t}\n\tif (codePoint - 0x41 < 0x1A) {\n\t\treturn codePoint - 0x41;\n\t}\n\tif (codePoint - 0x61 < 0x1A) {\n\t\treturn codePoint - 0x61;\n\t}\n\treturn base;\n};\n\n/**\n * Converts a digit/integer into a basic code point.\n * @see `basicToDigit()`\n * @private\n * @param {Number} digit The numeric value of a basic code point.\n * @returns {Number} The basic code point whose value (when used for\n * representing integers) is `digit`, which needs to be in the range\n * `0` to `base - 1`. If `flag` is non-zero, the uppercase form is\n * used; else, the lowercase form is used. The behavior is undefined\n * if `flag` is non-zero and `digit` has no uppercase form.\n */\nvar digitToBasic = function digitToBasic(digit, flag) {\n\t// 0..25 map to ASCII a..z or A..Z\n\t// 26..35 map to ASCII 0..9\n\treturn digit + 22 + 75 * (digit < 26) - ((flag != 0) << 5);\n};\n\n/**\n * Bias adaptation function as per section 3.4 of RFC 3492.\n * https://tools.ietf.org/html/rfc3492#section-3.4\n * @private\n */\nvar adapt = function adapt(delta, numPoints, firstTime) {\n\tvar k = 0;\n\tdelta = firstTime ? floor(delta / damp) : delta >> 1;\n\tdelta += floor(delta / numPoints);\n\tfor (; /* no initialization */delta > baseMinusTMin * tMax >> 1; k += base) {\n\t\tdelta = floor(delta / baseMinusTMin);\n\t}\n\treturn floor(k + (baseMinusTMin + 1) * delta / (delta + skew));\n};\n\n/**\n * Converts a Punycode string of ASCII-only symbols to a string of Unicode\n * symbols.\n * @memberOf punycode\n * @param {String} input The Punycode string of ASCII-only symbols.\n * @returns {String} The resulting string of Unicode symbols.\n */\nvar decode = function decode(input) {\n\t// Don't use UCS-2.\n\tvar output = [];\n\tvar inputLength = input.length;\n\tvar i = 0;\n\tvar n = initialN;\n\tvar bias = initialBias;\n\n\t// Handle the basic code points: let `basic` be the number of input code\n\t// points before the last delimiter, or `0` if there is none, then copy\n\t// the first basic code points to the output.\n\n\tvar basic = input.lastIndexOf(delimiter);\n\tif (basic < 0) {\n\t\tbasic = 0;\n\t}\n\n\tfor (var j = 0; j < basic; ++j) {\n\t\t// if it's not a basic code point\n\t\tif (input.charCodeAt(j) >= 0x80) {\n\t\t\terror$1('not-basic');\n\t\t}\n\t\toutput.push(input.charCodeAt(j));\n\t}\n\n\t// Main decoding loop: start just after the last delimiter if any basic code\n\t// points were copied; start at the beginning otherwise.\n\n\tfor (var index = basic > 0 ? basic + 1 : 0; index < inputLength;) /* no final expression */{\n\n\t\t// `index` is the index of the next character to be consumed.\n\t\t// Decode a generalized variable-length integer into `delta`,\n\t\t// which gets added to `i`. The overflow checking is easier\n\t\t// if we increase `i` as we go, then subtract off its starting\n\t\t// value at the end to obtain `delta`.\n\t\tvar oldi = i;\n\t\tfor (var w = 1, k = base;; /* no condition */k += base) {\n\n\t\t\tif (index >= inputLength) {\n\t\t\t\terror$1('invalid-input');\n\t\t\t}\n\n\t\t\tvar digit = basicToDigit(input.charCodeAt(index++));\n\n\t\t\tif (digit >= base || digit > floor((maxInt - i) / w)) {\n\t\t\t\terror$1('overflow');\n\t\t\t}\n\n\t\t\ti += digit * w;\n\t\t\tvar t = k <= bias ? tMin : k >= bias + tMax ? tMax : k - bias;\n\n\t\t\tif (digit < t) {\n\t\t\t\tbreak;\n\t\t\t}\n\n\t\t\tvar baseMinusT = base - t;\n\t\t\tif (w > floor(maxInt / baseMinusT)) {\n\t\t\t\terror$1('overflow');\n\t\t\t}\n\n\t\t\tw *= baseMinusT;\n\t\t}\n\n\t\tvar out = output.length + 1;\n\t\tbias = adapt(i - oldi, out, oldi == 0);\n\n\t\t// `i` was supposed to wrap around from `out` to `0`,\n\t\t// incrementing `n` each time, so we'll fix that now:\n\t\tif (floor(i / out) > maxInt - n) {\n\t\t\terror$1('overflow');\n\t\t}\n\n\t\tn += floor(i / out);\n\t\ti %= out;\n\n\t\t// Insert `n` at position `i` of the output.\n\t\toutput.splice(i++, 0, n);\n\t}\n\n\treturn String.fromCodePoint.apply(String, output);\n};\n\n/**\n * Converts a string of Unicode symbols (e.g. a domain name label) to a\n * Punycode string of ASCII-only symbols.\n * @memberOf punycode\n * @param {String} input The string of Unicode symbols.\n * @returns {String} The resulting Punycode string of ASCII-only symbols.\n */\nvar encode = function encode(input) {\n\tvar output = [];\n\n\t// Convert the input in UCS-2 to an array of Unicode code points.\n\tinput = ucs2decode(input);\n\n\t// Cache the length.\n\tvar inputLength = input.length;\n\n\t// Initialize the state.\n\tvar n = initialN;\n\tvar delta = 0;\n\tvar bias = initialBias;\n\n\t// Handle the basic code points.\n\tvar _iteratorNormalCompletion = true;\n\tvar _didIteratorError = false;\n\tvar _iteratorError = undefined;\n\n\ttry {\n\t\tfor (var _iterator = input[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n\t\t\tvar _currentValue2 = _step.value;\n\n\t\t\tif (_currentValue2 < 0x80) {\n\t\t\t\toutput.push(stringFromCharCode(_currentValue2));\n\t\t\t}\n\t\t}\n\t} catch (err) {\n\t\t_didIteratorError = true;\n\t\t_iteratorError = err;\n\t} finally {\n\t\ttry {\n\t\t\tif (!_iteratorNormalCompletion && _iterator.return) {\n\t\t\t\t_iterator.return();\n\t\t\t}\n\t\t} finally {\n\t\t\tif (_didIteratorError) {\n\t\t\t\tthrow _iteratorError;\n\t\t\t}\n\t\t}\n\t}\n\n\tvar basicLength = output.length;\n\tvar handledCPCount = basicLength;\n\n\t// `handledCPCount` is the number of code points that have been handled;\n\t// `basicLength` is the number of basic code points.\n\n\t// Finish the basic string with a delimiter unless it's empty.\n\tif (basicLength) {\n\t\toutput.push(delimiter);\n\t}\n\n\t// Main encoding loop:\n\twhile (handledCPCount < inputLength) {\n\n\t\t// All non-basic code points < n have been handled already. Find the next\n\t\t// larger one:\n\t\tvar m = maxInt;\n\t\tvar _iteratorNormalCompletion2 = true;\n\t\tvar _didIteratorError2 = false;\n\t\tvar _iteratorError2 = undefined;\n\n\t\ttry {\n\t\t\tfor (var _iterator2 = input[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = true) {\n\t\t\t\tvar currentValue = _step2.value;\n\n\t\t\t\tif (currentValue >= n && currentValue < m) {\n\t\t\t\t\tm = currentValue;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// Increase `delta` enough to advance the decoder's state to ,\n\t\t\t// but guard against overflow.\n\t\t} catch (err) {\n\t\t\t_didIteratorError2 = true;\n\t\t\t_iteratorError2 = err;\n\t\t} finally {\n\t\t\ttry {\n\t\t\t\tif (!_iteratorNormalCompletion2 && _iterator2.return) {\n\t\t\t\t\t_iterator2.return();\n\t\t\t\t}\n\t\t\t} finally {\n\t\t\t\tif (_didIteratorError2) {\n\t\t\t\t\tthrow _iteratorError2;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tvar handledCPCountPlusOne = handledCPCount + 1;\n\t\tif (m - n > floor((maxInt - delta) / handledCPCountPlusOne)) {\n\t\t\terror$1('overflow');\n\t\t}\n\n\t\tdelta += (m - n) * handledCPCountPlusOne;\n\t\tn = m;\n\n\t\tvar _iteratorNormalCompletion3 = true;\n\t\tvar _didIteratorError3 = false;\n\t\tvar _iteratorError3 = undefined;\n\n\t\ttry {\n\t\t\tfor (var _iterator3 = input[Symbol.iterator](), _step3; !(_iteratorNormalCompletion3 = (_step3 = _iterator3.next()).done); _iteratorNormalCompletion3 = true) {\n\t\t\t\tvar _currentValue = _step3.value;\n\n\t\t\t\tif (_currentValue < n && ++delta > maxInt) {\n\t\t\t\t\terror$1('overflow');\n\t\t\t\t}\n\t\t\t\tif (_currentValue == n) {\n\t\t\t\t\t// Represent delta as a generalized variable-length integer.\n\t\t\t\t\tvar q = delta;\n\t\t\t\t\tfor (var k = base;; /* no condition */k += base) {\n\t\t\t\t\t\tvar t = k <= bias ? tMin : k >= bias + tMax ? tMax : k - bias;\n\t\t\t\t\t\tif (q < t) {\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tvar qMinusT = q - t;\n\t\t\t\t\t\tvar baseMinusT = base - t;\n\t\t\t\t\t\toutput.push(stringFromCharCode(digitToBasic(t + qMinusT % baseMinusT, 0)));\n\t\t\t\t\t\tq = floor(qMinusT / baseMinusT);\n\t\t\t\t\t}\n\n\t\t\t\t\toutput.push(stringFromCharCode(digitToBasic(q, 0)));\n\t\t\t\t\tbias = adapt(delta, handledCPCountPlusOne, handledCPCount == basicLength);\n\t\t\t\t\tdelta = 0;\n\t\t\t\t\t++handledCPCount;\n\t\t\t\t}\n\t\t\t}\n\t\t} catch (err) {\n\t\t\t_didIteratorError3 = true;\n\t\t\t_iteratorError3 = err;\n\t\t} finally {\n\t\t\ttry {\n\t\t\t\tif (!_iteratorNormalCompletion3 && _iterator3.return) {\n\t\t\t\t\t_iterator3.return();\n\t\t\t\t}\n\t\t\t} finally {\n\t\t\t\tif (_didIteratorError3) {\n\t\t\t\t\tthrow _iteratorError3;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t++delta;\n\t\t++n;\n\t}\n\treturn output.join('');\n};\n\n/**\n * Converts a Punycode string representing a domain name or an email address\n * to Unicode. Only the Punycoded parts of the input will be converted, i.e.\n * it doesn't matter if you call it on a string that has already been\n * converted to Unicode.\n * @memberOf punycode\n * @param {String} input The Punycoded domain name or email address to\n * convert to Unicode.\n * @returns {String} The Unicode representation of the given Punycode\n * string.\n */\nvar toUnicode = function toUnicode(input) {\n\treturn mapDomain(input, function (string) {\n\t\treturn regexPunycode.test(string) ? decode(string.slice(4).toLowerCase()) : string;\n\t});\n};\n\n/**\n * Converts a Unicode string representing a domain name or an email address to\n * Punycode. Only the non-ASCII parts of the domain name will be converted,\n * i.e. it doesn't matter if you call it with a domain that's already in\n * ASCII.\n * @memberOf punycode\n * @param {String} input The domain name or email address to convert, as a\n * Unicode string.\n * @returns {String} The Punycode representation of the given domain name or\n * email address.\n */\nvar toASCII = function toASCII(input) {\n\treturn mapDomain(input, function (string) {\n\t\treturn regexNonASCII.test(string) ? 'xn--' + encode(string) : string;\n\t});\n};\n\n/*--------------------------------------------------------------------------*/\n\n/** Define the public API */\nvar punycode = {\n\t/**\n * A string representing the current Punycode.js version number.\n * @memberOf punycode\n * @type String\n */\n\t'version': '2.1.0',\n\t/**\n * An object of methods to convert from JavaScript's internal character\n * representation (UCS-2) to Unicode code points, and back.\n * @see \n * @memberOf punycode\n * @type Object\n */\n\t'ucs2': {\n\t\t'decode': ucs2decode,\n\t\t'encode': ucs2encode\n\t},\n\t'decode': decode,\n\t'encode': encode,\n\t'toASCII': toASCII,\n\t'toUnicode': toUnicode\n};\n\n/**\n * URI.js\n *\n * @fileoverview An RFC 3986 compliant, scheme extendable URI parsing/validating/resolving library for JavaScript.\n * @author Gary Court\n * @see http://github.com/garycourt/uri-js\n */\n/**\n * Copyright 2011 Gary Court. All rights reserved.\n *\n * Redistribution and use in source and binary forms, with or without modification, are\n * permitted provided that the following conditions are met:\n *\n * 1. Redistributions of source code must retain the above copyright notice, this list of\n * conditions and the following disclaimer.\n *\n * 2. Redistributions in binary form must reproduce the above copyright notice, this list\n * of conditions and the following disclaimer in the documentation and/or other materials\n * provided with the distribution.\n *\n * THIS SOFTWARE IS PROVIDED BY GARY COURT ``AS IS'' AND ANY EXPRESS OR IMPLIED\n * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND\n * FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL GARY COURT OR\n * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR\n * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR\n * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON\n * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING\n * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF\n * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n *\n * The views and conclusions contained in the software and documentation are those of the\n * authors and should not be interpreted as representing official policies, either expressed\n * or implied, of Gary Court.\n */\nvar SCHEMES = {};\nfunction pctEncChar(chr) {\n var c = chr.charCodeAt(0);\n var e = void 0;\n if (c < 16) e = \"%0\" + c.toString(16).toUpperCase();else if (c < 128) e = \"%\" + c.toString(16).toUpperCase();else if (c < 2048) e = \"%\" + (c >> 6 | 192).toString(16).toUpperCase() + \"%\" + (c & 63 | 128).toString(16).toUpperCase();else e = \"%\" + (c >> 12 | 224).toString(16).toUpperCase() + \"%\" + (c >> 6 & 63 | 128).toString(16).toUpperCase() + \"%\" + (c & 63 | 128).toString(16).toUpperCase();\n return e;\n}\nfunction pctDecChars(str) {\n var newStr = \"\";\n var i = 0;\n var il = str.length;\n while (i < il) {\n var c = parseInt(str.substr(i + 1, 2), 16);\n if (c < 128) {\n newStr += String.fromCharCode(c);\n i += 3;\n } else if (c >= 194 && c < 224) {\n if (il - i >= 6) {\n var c2 = parseInt(str.substr(i + 4, 2), 16);\n newStr += String.fromCharCode((c & 31) << 6 | c2 & 63);\n } else {\n newStr += str.substr(i, 6);\n }\n i += 6;\n } else if (c >= 224) {\n if (il - i >= 9) {\n var _c = parseInt(str.substr(i + 4, 2), 16);\n var c3 = parseInt(str.substr(i + 7, 2), 16);\n newStr += String.fromCharCode((c & 15) << 12 | (_c & 63) << 6 | c3 & 63);\n } else {\n newStr += str.substr(i, 9);\n }\n i += 9;\n } else {\n newStr += str.substr(i, 3);\n i += 3;\n }\n }\n return newStr;\n}\nfunction _normalizeComponentEncoding(components, protocol) {\n function decodeUnreserved(str) {\n var decStr = pctDecChars(str);\n return !decStr.match(protocol.UNRESERVED) ? str : decStr;\n }\n if (components.scheme) components.scheme = String(components.scheme).replace(protocol.PCT_ENCODED, decodeUnreserved).toLowerCase().replace(protocol.NOT_SCHEME, \"\");\n if (components.userinfo !== undefined) components.userinfo = String(components.userinfo).replace(protocol.PCT_ENCODED, decodeUnreserved).replace(protocol.NOT_USERINFO, pctEncChar).replace(protocol.PCT_ENCODED, toUpperCase);\n if (components.host !== undefined) components.host = String(components.host).replace(protocol.PCT_ENCODED, decodeUnreserved).toLowerCase().replace(protocol.NOT_HOST, pctEncChar).replace(protocol.PCT_ENCODED, toUpperCase);\n if (components.path !== undefined) components.path = String(components.path).replace(protocol.PCT_ENCODED, decodeUnreserved).replace(components.scheme ? protocol.NOT_PATH : protocol.NOT_PATH_NOSCHEME, pctEncChar).replace(protocol.PCT_ENCODED, toUpperCase);\n if (components.query !== undefined) components.query = String(components.query).replace(protocol.PCT_ENCODED, decodeUnreserved).replace(protocol.NOT_QUERY, pctEncChar).replace(protocol.PCT_ENCODED, toUpperCase);\n if (components.fragment !== undefined) components.fragment = String(components.fragment).replace(protocol.PCT_ENCODED, decodeUnreserved).replace(protocol.NOT_FRAGMENT, pctEncChar).replace(protocol.PCT_ENCODED, toUpperCase);\n return components;\n}\n\nfunction _stripLeadingZeros(str) {\n return str.replace(/^0*(.*)/, \"$1\") || \"0\";\n}\nfunction _normalizeIPv4(host, protocol) {\n var matches = host.match(protocol.IPV4ADDRESS) || [];\n\n var _matches = slicedToArray(matches, 2),\n address = _matches[1];\n\n if (address) {\n return address.split(\".\").map(_stripLeadingZeros).join(\".\");\n } else {\n return host;\n }\n}\nfunction _normalizeIPv6(host, protocol) {\n var matches = host.match(protocol.IPV6ADDRESS) || [];\n\n var _matches2 = slicedToArray(matches, 3),\n address = _matches2[1],\n zone = _matches2[2];\n\n if (address) {\n var _address$toLowerCase$ = address.toLowerCase().split('::').reverse(),\n _address$toLowerCase$2 = slicedToArray(_address$toLowerCase$, 2),\n last = _address$toLowerCase$2[0],\n first = _address$toLowerCase$2[1];\n\n var firstFields = first ? first.split(\":\").map(_stripLeadingZeros) : [];\n var lastFields = last.split(\":\").map(_stripLeadingZeros);\n var isLastFieldIPv4Address = protocol.IPV4ADDRESS.test(lastFields[lastFields.length - 1]);\n var fieldCount = isLastFieldIPv4Address ? 7 : 8;\n var lastFieldsStart = lastFields.length - fieldCount;\n var fields = Array(fieldCount);\n for (var x = 0; x < fieldCount; ++x) {\n fields[x] = firstFields[x] || lastFields[lastFieldsStart + x] || '';\n }\n if (isLastFieldIPv4Address) {\n fields[fieldCount - 1] = _normalizeIPv4(fields[fieldCount - 1], protocol);\n }\n var allZeroFields = fields.reduce(function (acc, field, index) {\n if (!field || field === \"0\") {\n var lastLongest = acc[acc.length - 1];\n if (lastLongest && lastLongest.index + lastLongest.length === index) {\n lastLongest.length++;\n } else {\n acc.push({ index: index, length: 1 });\n }\n }\n return acc;\n }, []);\n var longestZeroFields = allZeroFields.sort(function (a, b) {\n return b.length - a.length;\n })[0];\n var newHost = void 0;\n if (longestZeroFields && longestZeroFields.length > 1) {\n var newFirst = fields.slice(0, longestZeroFields.index);\n var newLast = fields.slice(longestZeroFields.index + longestZeroFields.length);\n newHost = newFirst.join(\":\") + \"::\" + newLast.join(\":\");\n } else {\n newHost = fields.join(\":\");\n }\n if (zone) {\n newHost += \"%\" + zone;\n }\n return newHost;\n } else {\n return host;\n }\n}\nvar URI_PARSE = /^(?:([^:\\/?#]+):)?(?:\\/\\/((?:([^\\/?#@]*)@)?(\\[[^\\/?#\\]]+\\]|[^\\/?#:]*)(?:\\:(\\d*))?))?([^?#]*)(?:\\?([^#]*))?(?:#((?:.|\\n|\\r)*))?/i;\nvar NO_MATCH_IS_UNDEFINED = \"\".match(/(){0}/)[1] === undefined;\nfunction parse(uriString) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n var components = {};\n var protocol = options.iri !== false ? IRI_PROTOCOL : URI_PROTOCOL;\n if (options.reference === \"suffix\") uriString = (options.scheme ? options.scheme + \":\" : \"\") + \"//\" + uriString;\n var matches = uriString.match(URI_PARSE);\n if (matches) {\n if (NO_MATCH_IS_UNDEFINED) {\n //store each component\n components.scheme = matches[1];\n components.userinfo = matches[3];\n components.host = matches[4];\n components.port = parseInt(matches[5], 10);\n components.path = matches[6] || \"\";\n components.query = matches[7];\n components.fragment = matches[8];\n //fix port number\n if (isNaN(components.port)) {\n components.port = matches[5];\n }\n } else {\n //IE FIX for improper RegExp matching\n //store each component\n components.scheme = matches[1] || undefined;\n components.userinfo = uriString.indexOf(\"@\") !== -1 ? matches[3] : undefined;\n components.host = uriString.indexOf(\"//\") !== -1 ? matches[4] : undefined;\n components.port = parseInt(matches[5], 10);\n components.path = matches[6] || \"\";\n components.query = uriString.indexOf(\"?\") !== -1 ? matches[7] : undefined;\n components.fragment = uriString.indexOf(\"#\") !== -1 ? matches[8] : undefined;\n //fix port number\n if (isNaN(components.port)) {\n components.port = uriString.match(/\\/\\/(?:.|\\n)*\\:(?:\\/|\\?|\\#|$)/) ? matches[4] : undefined;\n }\n }\n if (components.host) {\n //normalize IP hosts\n components.host = _normalizeIPv6(_normalizeIPv4(components.host, protocol), protocol);\n }\n //determine reference type\n if (components.scheme === undefined && components.userinfo === undefined && components.host === undefined && components.port === undefined && !components.path && components.query === undefined) {\n components.reference = \"same-document\";\n } else if (components.scheme === undefined) {\n components.reference = \"relative\";\n } else if (components.fragment === undefined) {\n components.reference = \"absolute\";\n } else {\n components.reference = \"uri\";\n }\n //check for reference errors\n if (options.reference && options.reference !== \"suffix\" && options.reference !== components.reference) {\n components.error = components.error || \"URI is not a \" + options.reference + \" reference.\";\n }\n //find scheme handler\n var schemeHandler = SCHEMES[(options.scheme || components.scheme || \"\").toLowerCase()];\n //check if scheme can't handle IRIs\n if (!options.unicodeSupport && (!schemeHandler || !schemeHandler.unicodeSupport)) {\n //if host component is a domain name\n if (components.host && (options.domainHost || schemeHandler && schemeHandler.domainHost)) {\n //convert Unicode IDN -> ASCII IDN\n try {\n components.host = punycode.toASCII(components.host.replace(protocol.PCT_ENCODED, pctDecChars).toLowerCase());\n } catch (e) {\n components.error = components.error || \"Host's domain name can not be converted to ASCII via punycode: \" + e;\n }\n }\n //convert IRI -> URI\n _normalizeComponentEncoding(components, URI_PROTOCOL);\n } else {\n //normalize encodings\n _normalizeComponentEncoding(components, protocol);\n }\n //perform scheme specific parsing\n if (schemeHandler && schemeHandler.parse) {\n schemeHandler.parse(components, options);\n }\n } else {\n components.error = components.error || \"URI can not be parsed.\";\n }\n return components;\n}\n\nfunction _recomposeAuthority(components, options) {\n var protocol = options.iri !== false ? IRI_PROTOCOL : URI_PROTOCOL;\n var uriTokens = [];\n if (components.userinfo !== undefined) {\n uriTokens.push(components.userinfo);\n uriTokens.push(\"@\");\n }\n if (components.host !== undefined) {\n //normalize IP hosts, add brackets and escape zone separator for IPv6\n uriTokens.push(_normalizeIPv6(_normalizeIPv4(String(components.host), protocol), protocol).replace(protocol.IPV6ADDRESS, function (_, $1, $2) {\n return \"[\" + $1 + ($2 ? \"%25\" + $2 : \"\") + \"]\";\n }));\n }\n if (typeof components.port === \"number\" || typeof components.port === \"string\") {\n uriTokens.push(\":\");\n uriTokens.push(String(components.port));\n }\n return uriTokens.length ? uriTokens.join(\"\") : undefined;\n}\n\nvar RDS1 = /^\\.\\.?\\//;\nvar RDS2 = /^\\/\\.(\\/|$)/;\nvar RDS3 = /^\\/\\.\\.(\\/|$)/;\nvar RDS5 = /^\\/?(?:.|\\n)*?(?=\\/|$)/;\nfunction removeDotSegments(input) {\n var output = [];\n while (input.length) {\n if (input.match(RDS1)) {\n input = input.replace(RDS1, \"\");\n } else if (input.match(RDS2)) {\n input = input.replace(RDS2, \"/\");\n } else if (input.match(RDS3)) {\n input = input.replace(RDS3, \"/\");\n output.pop();\n } else if (input === \".\" || input === \"..\") {\n input = \"\";\n } else {\n var im = input.match(RDS5);\n if (im) {\n var s = im[0];\n input = input.slice(s.length);\n output.push(s);\n } else {\n throw new Error(\"Unexpected dot segment condition\");\n }\n }\n }\n return output.join(\"\");\n}\n\nfunction serialize(components) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n var protocol = options.iri ? IRI_PROTOCOL : URI_PROTOCOL;\n var uriTokens = [];\n //find scheme handler\n var schemeHandler = SCHEMES[(options.scheme || components.scheme || \"\").toLowerCase()];\n //perform scheme specific serialization\n if (schemeHandler && schemeHandler.serialize) schemeHandler.serialize(components, options);\n if (components.host) {\n //if host component is an IPv6 address\n if (protocol.IPV6ADDRESS.test(components.host)) {}\n //TODO: normalize IPv6 address as per RFC 5952\n\n //if host component is a domain name\n else if (options.domainHost || schemeHandler && schemeHandler.domainHost) {\n //convert IDN via punycode\n try {\n components.host = !options.iri ? punycode.toASCII(components.host.replace(protocol.PCT_ENCODED, pctDecChars).toLowerCase()) : punycode.toUnicode(components.host);\n } catch (e) {\n components.error = components.error || \"Host's domain name can not be converted to \" + (!options.iri ? \"ASCII\" : \"Unicode\") + \" via punycode: \" + e;\n }\n }\n }\n //normalize encoding\n _normalizeComponentEncoding(components, protocol);\n if (options.reference !== \"suffix\" && components.scheme) {\n uriTokens.push(components.scheme);\n uriTokens.push(\":\");\n }\n var authority = _recomposeAuthority(components, options);\n if (authority !== undefined) {\n if (options.reference !== \"suffix\") {\n uriTokens.push(\"//\");\n }\n uriTokens.push(authority);\n if (components.path && components.path.charAt(0) !== \"/\") {\n uriTokens.push(\"/\");\n }\n }\n if (components.path !== undefined) {\n var s = components.path;\n if (!options.absolutePath && (!schemeHandler || !schemeHandler.absolutePath)) {\n s = removeDotSegments(s);\n }\n if (authority === undefined) {\n s = s.replace(/^\\/\\//, \"/%2F\"); //don't allow the path to start with \"//\"\n }\n uriTokens.push(s);\n }\n if (components.query !== undefined) {\n uriTokens.push(\"?\");\n uriTokens.push(components.query);\n }\n if (components.fragment !== undefined) {\n uriTokens.push(\"#\");\n uriTokens.push(components.fragment);\n }\n return uriTokens.join(\"\"); //merge tokens into a string\n}\n\nfunction resolveComponents(base, relative) {\n var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n var skipNormalization = arguments[3];\n\n var target = {};\n if (!skipNormalization) {\n base = parse(serialize(base, options), options); //normalize base components\n relative = parse(serialize(relative, options), options); //normalize relative components\n }\n options = options || {};\n if (!options.tolerant && relative.scheme) {\n target.scheme = relative.scheme;\n //target.authority = relative.authority;\n target.userinfo = relative.userinfo;\n target.host = relative.host;\n target.port = relative.port;\n target.path = removeDotSegments(relative.path || \"\");\n target.query = relative.query;\n } else {\n if (relative.userinfo !== undefined || relative.host !== undefined || relative.port !== undefined) {\n //target.authority = relative.authority;\n target.userinfo = relative.userinfo;\n target.host = relative.host;\n target.port = relative.port;\n target.path = removeDotSegments(relative.path || \"\");\n target.query = relative.query;\n } else {\n if (!relative.path) {\n target.path = base.path;\n if (relative.query !== undefined) {\n target.query = relative.query;\n } else {\n target.query = base.query;\n }\n } else {\n if (relative.path.charAt(0) === \"/\") {\n target.path = removeDotSegments(relative.path);\n } else {\n if ((base.userinfo !== undefined || base.host !== undefined || base.port !== undefined) && !base.path) {\n target.path = \"/\" + relative.path;\n } else if (!base.path) {\n target.path = relative.path;\n } else {\n target.path = base.path.slice(0, base.path.lastIndexOf(\"/\") + 1) + relative.path;\n }\n target.path = removeDotSegments(target.path);\n }\n target.query = relative.query;\n }\n //target.authority = base.authority;\n target.userinfo = base.userinfo;\n target.host = base.host;\n target.port = base.port;\n }\n target.scheme = base.scheme;\n }\n target.fragment = relative.fragment;\n return target;\n}\n\nfunction resolve(baseURI, relativeURI, options) {\n var schemelessOptions = assign({ scheme: 'null' }, options);\n return serialize(resolveComponents(parse(baseURI, schemelessOptions), parse(relativeURI, schemelessOptions), schemelessOptions, true), schemelessOptions);\n}\n\nfunction normalize(uri, options) {\n if (typeof uri === \"string\") {\n uri = serialize(parse(uri, options), options);\n } else if (typeOf(uri) === \"object\") {\n uri = parse(serialize(uri, options), options);\n }\n return uri;\n}\n\nfunction equal(uriA, uriB, options) {\n if (typeof uriA === \"string\") {\n uriA = serialize(parse(uriA, options), options);\n } else if (typeOf(uriA) === \"object\") {\n uriA = serialize(uriA, options);\n }\n if (typeof uriB === \"string\") {\n uriB = serialize(parse(uriB, options), options);\n } else if (typeOf(uriB) === \"object\") {\n uriB = serialize(uriB, options);\n }\n return uriA === uriB;\n}\n\nfunction escapeComponent(str, options) {\n return str && str.toString().replace(!options || !options.iri ? URI_PROTOCOL.ESCAPE : IRI_PROTOCOL.ESCAPE, pctEncChar);\n}\n\nfunction unescapeComponent(str, options) {\n return str && str.toString().replace(!options || !options.iri ? URI_PROTOCOL.PCT_ENCODED : IRI_PROTOCOL.PCT_ENCODED, pctDecChars);\n}\n\nvar handler = {\n scheme: \"http\",\n domainHost: true,\n parse: function parse(components, options) {\n //report missing host\n if (!components.host) {\n components.error = components.error || \"HTTP URIs must have a host.\";\n }\n return components;\n },\n serialize: function serialize(components, options) {\n var secure = String(components.scheme).toLowerCase() === \"https\";\n //normalize the default port\n if (components.port === (secure ? 443 : 80) || components.port === \"\") {\n components.port = undefined;\n }\n //normalize the empty path\n if (!components.path) {\n components.path = \"/\";\n }\n //NOTE: We do not parse query strings for HTTP URIs\n //as WWW Form Url Encoded query strings are part of the HTML4+ spec,\n //and not the HTTP spec.\n return components;\n }\n};\n\nvar handler$1 = {\n scheme: \"https\",\n domainHost: handler.domainHost,\n parse: handler.parse,\n serialize: handler.serialize\n};\n\nfunction isSecure(wsComponents) {\n return typeof wsComponents.secure === 'boolean' ? wsComponents.secure : String(wsComponents.scheme).toLowerCase() === \"wss\";\n}\n//RFC 6455\nvar handler$2 = {\n scheme: \"ws\",\n domainHost: true,\n parse: function parse(components, options) {\n var wsComponents = components;\n //indicate if the secure flag is set\n wsComponents.secure = isSecure(wsComponents);\n //construct resouce name\n wsComponents.resourceName = (wsComponents.path || '/') + (wsComponents.query ? '?' + wsComponents.query : '');\n wsComponents.path = undefined;\n wsComponents.query = undefined;\n return wsComponents;\n },\n serialize: function serialize(wsComponents, options) {\n //normalize the default port\n if (wsComponents.port === (isSecure(wsComponents) ? 443 : 80) || wsComponents.port === \"\") {\n wsComponents.port = undefined;\n }\n //ensure scheme matches secure flag\n if (typeof wsComponents.secure === 'boolean') {\n wsComponents.scheme = wsComponents.secure ? 'wss' : 'ws';\n wsComponents.secure = undefined;\n }\n //reconstruct path from resource name\n if (wsComponents.resourceName) {\n var _wsComponents$resourc = wsComponents.resourceName.split('?'),\n _wsComponents$resourc2 = slicedToArray(_wsComponents$resourc, 2),\n path = _wsComponents$resourc2[0],\n query = _wsComponents$resourc2[1];\n\n wsComponents.path = path && path !== '/' ? path : undefined;\n wsComponents.query = query;\n wsComponents.resourceName = undefined;\n }\n //forbid fragment component\n wsComponents.fragment = undefined;\n return wsComponents;\n }\n};\n\nvar handler$3 = {\n scheme: \"wss\",\n domainHost: handler$2.domainHost,\n parse: handler$2.parse,\n serialize: handler$2.serialize\n};\n\nvar O = {};\nvar isIRI = true;\n//RFC 3986\nvar UNRESERVED$$ = \"[A-Za-z0-9\\\\-\\\\.\\\\_\\\\~\" + (isIRI ? \"\\\\xA0-\\\\u200D\\\\u2010-\\\\u2029\\\\u202F-\\\\uD7FF\\\\uF900-\\\\uFDCF\\\\uFDF0-\\\\uFFEF\" : \"\") + \"]\";\nvar HEXDIG$$ = \"[0-9A-Fa-f]\"; //case-insensitive\nvar PCT_ENCODED$ = subexp(subexp(\"%[EFef]\" + HEXDIG$$ + \"%\" + HEXDIG$$ + HEXDIG$$ + \"%\" + HEXDIG$$ + HEXDIG$$) + \"|\" + subexp(\"%[89A-Fa-f]\" + HEXDIG$$ + \"%\" + HEXDIG$$ + HEXDIG$$) + \"|\" + subexp(\"%\" + HEXDIG$$ + HEXDIG$$)); //expanded\n//RFC 5322, except these symbols as per RFC 6068: @ : / ? # [ ] & ; =\n//const ATEXT$$ = \"[A-Za-z0-9\\\\!\\\\#\\\\$\\\\%\\\\&\\\\'\\\\*\\\\+\\\\-\\\\/\\\\=\\\\?\\\\^\\\\_\\\\`\\\\{\\\\|\\\\}\\\\~]\";\n//const WSP$$ = \"[\\\\x20\\\\x09]\";\n//const OBS_QTEXT$$ = \"[\\\\x01-\\\\x08\\\\x0B\\\\x0C\\\\x0E-\\\\x1F\\\\x7F]\"; //(%d1-8 / %d11-12 / %d14-31 / %d127)\n//const QTEXT$$ = merge(\"[\\\\x21\\\\x23-\\\\x5B\\\\x5D-\\\\x7E]\", OBS_QTEXT$$); //%d33 / %d35-91 / %d93-126 / obs-qtext\n//const VCHAR$$ = \"[\\\\x21-\\\\x7E]\";\n//const WSP$$ = \"[\\\\x20\\\\x09]\";\n//const OBS_QP$ = subexp(\"\\\\\\\\\" + merge(\"[\\\\x00\\\\x0D\\\\x0A]\", OBS_QTEXT$$)); //%d0 / CR / LF / obs-qtext\n//const FWS$ = subexp(subexp(WSP$$ + \"*\" + \"\\\\x0D\\\\x0A\") + \"?\" + WSP$$ + \"+\");\n//const QUOTED_PAIR$ = subexp(subexp(\"\\\\\\\\\" + subexp(VCHAR$$ + \"|\" + WSP$$)) + \"|\" + OBS_QP$);\n//const QUOTED_STRING$ = subexp('\\\\\"' + subexp(FWS$ + \"?\" + QCONTENT$) + \"*\" + FWS$ + \"?\" + '\\\\\"');\nvar ATEXT$$ = \"[A-Za-z0-9\\\\!\\\\$\\\\%\\\\'\\\\*\\\\+\\\\-\\\\^\\\\_\\\\`\\\\{\\\\|\\\\}\\\\~]\";\nvar QTEXT$$ = \"[\\\\!\\\\$\\\\%\\\\'\\\\(\\\\)\\\\*\\\\+\\\\,\\\\-\\\\.0-9\\\\<\\\\>A-Z\\\\x5E-\\\\x7E]\";\nvar VCHAR$$ = merge(QTEXT$$, \"[\\\\\\\"\\\\\\\\]\");\nvar SOME_DELIMS$$ = \"[\\\\!\\\\$\\\\'\\\\(\\\\)\\\\*\\\\+\\\\,\\\\;\\\\:\\\\@]\";\nvar UNRESERVED = new RegExp(UNRESERVED$$, \"g\");\nvar PCT_ENCODED = new RegExp(PCT_ENCODED$, \"g\");\nvar NOT_LOCAL_PART = new RegExp(merge(\"[^]\", ATEXT$$, \"[\\\\.]\", '[\\\\\"]', VCHAR$$), \"g\");\nvar NOT_HFNAME = new RegExp(merge(\"[^]\", UNRESERVED$$, SOME_DELIMS$$), \"g\");\nvar NOT_HFVALUE = NOT_HFNAME;\nfunction decodeUnreserved(str) {\n var decStr = pctDecChars(str);\n return !decStr.match(UNRESERVED) ? str : decStr;\n}\nvar handler$4 = {\n scheme: \"mailto\",\n parse: function parse$$1(components, options) {\n var mailtoComponents = components;\n var to = mailtoComponents.to = mailtoComponents.path ? mailtoComponents.path.split(\",\") : [];\n mailtoComponents.path = undefined;\n if (mailtoComponents.query) {\n var unknownHeaders = false;\n var headers = {};\n var hfields = mailtoComponents.query.split(\"&\");\n for (var x = 0, xl = hfields.length; x < xl; ++x) {\n var hfield = hfields[x].split(\"=\");\n switch (hfield[0]) {\n case \"to\":\n var toAddrs = hfield[1].split(\",\");\n for (var _x = 0, _xl = toAddrs.length; _x < _xl; ++_x) {\n to.push(toAddrs[_x]);\n }\n break;\n case \"subject\":\n mailtoComponents.subject = unescapeComponent(hfield[1], options);\n break;\n case \"body\":\n mailtoComponents.body = unescapeComponent(hfield[1], options);\n break;\n default:\n unknownHeaders = true;\n headers[unescapeComponent(hfield[0], options)] = unescapeComponent(hfield[1], options);\n break;\n }\n }\n if (unknownHeaders) mailtoComponents.headers = headers;\n }\n mailtoComponents.query = undefined;\n for (var _x2 = 0, _xl2 = to.length; _x2 < _xl2; ++_x2) {\n var addr = to[_x2].split(\"@\");\n addr[0] = unescapeComponent(addr[0]);\n if (!options.unicodeSupport) {\n //convert Unicode IDN -> ASCII IDN\n try {\n addr[1] = punycode.toASCII(unescapeComponent(addr[1], options).toLowerCase());\n } catch (e) {\n mailtoComponents.error = mailtoComponents.error || \"Email address's domain name can not be converted to ASCII via punycode: \" + e;\n }\n } else {\n addr[1] = unescapeComponent(addr[1], options).toLowerCase();\n }\n to[_x2] = addr.join(\"@\");\n }\n return mailtoComponents;\n },\n serialize: function serialize$$1(mailtoComponents, options) {\n var components = mailtoComponents;\n var to = toArray(mailtoComponents.to);\n if (to) {\n for (var x = 0, xl = to.length; x < xl; ++x) {\n var toAddr = String(to[x]);\n var atIdx = toAddr.lastIndexOf(\"@\");\n var localPart = toAddr.slice(0, atIdx).replace(PCT_ENCODED, decodeUnreserved).replace(PCT_ENCODED, toUpperCase).replace(NOT_LOCAL_PART, pctEncChar);\n var domain = toAddr.slice(atIdx + 1);\n //convert IDN via punycode\n try {\n domain = !options.iri ? punycode.toASCII(unescapeComponent(domain, options).toLowerCase()) : punycode.toUnicode(domain);\n } catch (e) {\n components.error = components.error || \"Email address's domain name can not be converted to \" + (!options.iri ? \"ASCII\" : \"Unicode\") + \" via punycode: \" + e;\n }\n to[x] = localPart + \"@\" + domain;\n }\n components.path = to.join(\",\");\n }\n var headers = mailtoComponents.headers = mailtoComponents.headers || {};\n if (mailtoComponents.subject) headers[\"subject\"] = mailtoComponents.subject;\n if (mailtoComponents.body) headers[\"body\"] = mailtoComponents.body;\n var fields = [];\n for (var name in headers) {\n if (headers[name] !== O[name]) {\n fields.push(name.replace(PCT_ENCODED, decodeUnreserved).replace(PCT_ENCODED, toUpperCase).replace(NOT_HFNAME, pctEncChar) + \"=\" + headers[name].replace(PCT_ENCODED, decodeUnreserved).replace(PCT_ENCODED, toUpperCase).replace(NOT_HFVALUE, pctEncChar));\n }\n }\n if (fields.length) {\n components.query = fields.join(\"&\");\n }\n return components;\n }\n};\n\nvar URN_PARSE = /^([^\\:]+)\\:(.*)/;\n//RFC 2141\nvar handler$5 = {\n scheme: \"urn\",\n parse: function parse$$1(components, options) {\n var matches = components.path && components.path.match(URN_PARSE);\n var urnComponents = components;\n if (matches) {\n var scheme = options.scheme || urnComponents.scheme || \"urn\";\n var nid = matches[1].toLowerCase();\n var nss = matches[2];\n var urnScheme = scheme + \":\" + (options.nid || nid);\n var schemeHandler = SCHEMES[urnScheme];\n urnComponents.nid = nid;\n urnComponents.nss = nss;\n urnComponents.path = undefined;\n if (schemeHandler) {\n urnComponents = schemeHandler.parse(urnComponents, options);\n }\n } else {\n urnComponents.error = urnComponents.error || \"URN can not be parsed.\";\n }\n return urnComponents;\n },\n serialize: function serialize$$1(urnComponents, options) {\n var scheme = options.scheme || urnComponents.scheme || \"urn\";\n var nid = urnComponents.nid;\n var urnScheme = scheme + \":\" + (options.nid || nid);\n var schemeHandler = SCHEMES[urnScheme];\n if (schemeHandler) {\n urnComponents = schemeHandler.serialize(urnComponents, options);\n }\n var uriComponents = urnComponents;\n var nss = urnComponents.nss;\n uriComponents.path = (nid || options.nid) + \":\" + nss;\n return uriComponents;\n }\n};\n\nvar UUID = /^[0-9A-Fa-f]{8}(?:\\-[0-9A-Fa-f]{4}){3}\\-[0-9A-Fa-f]{12}$/;\n//RFC 4122\nvar handler$6 = {\n scheme: \"urn:uuid\",\n parse: function parse(urnComponents, options) {\n var uuidComponents = urnComponents;\n uuidComponents.uuid = uuidComponents.nss;\n uuidComponents.nss = undefined;\n if (!options.tolerant && (!uuidComponents.uuid || !uuidComponents.uuid.match(UUID))) {\n uuidComponents.error = uuidComponents.error || \"UUID is not valid.\";\n }\n return uuidComponents;\n },\n serialize: function serialize(uuidComponents, options) {\n var urnComponents = uuidComponents;\n //normalize UUID\n urnComponents.nss = (uuidComponents.uuid || \"\").toLowerCase();\n return urnComponents;\n }\n};\n\nSCHEMES[handler.scheme] = handler;\nSCHEMES[handler$1.scheme] = handler$1;\nSCHEMES[handler$2.scheme] = handler$2;\nSCHEMES[handler$3.scheme] = handler$3;\nSCHEMES[handler$4.scheme] = handler$4;\nSCHEMES[handler$5.scheme] = handler$5;\nSCHEMES[handler$6.scheme] = handler$6;\n\nexports.SCHEMES = SCHEMES;\nexports.pctEncChar = pctEncChar;\nexports.pctDecChars = pctDecChars;\nexports.parse = parse;\nexports.removeDotSegments = removeDotSegments;\nexports.serialize = serialize;\nexports.resolveComponents = resolveComponents;\nexports.resolve = resolve;\nexports.normalize = normalize;\nexports.equal = equal;\nexports.escapeComponent = escapeComponent;\nexports.unescapeComponent = unescapeComponent;\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\n})));\n//# sourceMappingURL=uri.all.js.map\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"widget-status p-r-10\"},[_c('div',{staticClass:\"widget-status__dot\",class:{\n 'widget-status__dot--off': _vm.value == false,\n 'widget-status__dot--on': _vm.value == true,\n }}),(!_vm.onlyIcon)?_c('div',{staticClass:\"text-capitalize\"},[(_vm.label!=='')?_c('span',[_vm._v(\" \"+_vm._s(_vm.label)+\" \")]):_c('span',[_vm._v(_vm._s(_vm.value ? _vm.$t('active') : _vm.$t('not-active')))])]):_vm._e()])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--14-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./StatusWidget.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--14-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./StatusWidget.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./StatusWidget.vue?vue&type=template&id=f554ae20&scoped=true&\"\nimport script from \"./StatusWidget.vue?vue&type=script&lang=ts&\"\nexport * from \"./StatusWidget.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./StatusWidget.vue?vue&type=style&index=0&id=f554ae20&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"f554ae20\",\n null\n \n)\n\nexport default component.exports","'use strict';\nmodule.exports = function generate_comment(it, $keyword, $ruleType) {\n var out = ' ';\n var $schema = it.schema[$keyword];\n var $errSchemaPath = it.errSchemaPath + '/' + $keyword;\n var $breakOnError = !it.opts.allErrors;\n var $comment = it.util.toQuotedString($schema);\n if (it.opts.$comment === true) {\n out += ' console.log(' + ($comment) + ');';\n } else if (typeof it.opts.$comment == 'function') {\n out += ' self._opts.$comment(' + ($comment) + ', ' + (it.util.toQuotedString($errSchemaPath)) + ', validate.root.schema);';\n }\n return out;\n}\n","'use strict';\nmodule.exports = function generate_contains(it, $keyword, $ruleType) {\n var out = ' ';\n var $lvl = it.level;\n var $dataLvl = it.dataLevel;\n var $schema = it.schema[$keyword];\n var $schemaPath = it.schemaPath + it.util.getProperty($keyword);\n var $errSchemaPath = it.errSchemaPath + '/' + $keyword;\n var $breakOnError = !it.opts.allErrors;\n var $data = 'data' + ($dataLvl || '');\n var $valid = 'valid' + $lvl;\n var $errs = 'errs__' + $lvl;\n var $it = it.util.copy(it);\n var $closingBraces = '';\n $it.level++;\n var $nextValid = 'valid' + $it.level;\n var $idx = 'i' + $lvl,\n $dataNxt = $it.dataLevel = it.dataLevel + 1,\n $nextData = 'data' + $dataNxt,\n $currentBaseId = it.baseId,\n $nonEmptySchema = (it.opts.strictKeywords ? (typeof $schema == 'object' && Object.keys($schema).length > 0) || $schema === false : it.util.schemaHasRules($schema, it.RULES.all));\n out += 'var ' + ($errs) + ' = errors;var ' + ($valid) + ';';\n if ($nonEmptySchema) {\n var $wasComposite = it.compositeRule;\n it.compositeRule = $it.compositeRule = true;\n $it.schema = $schema;\n $it.schemaPath = $schemaPath;\n $it.errSchemaPath = $errSchemaPath;\n out += ' var ' + ($nextValid) + ' = false; for (var ' + ($idx) + ' = 0; ' + ($idx) + ' < ' + ($data) + '.length; ' + ($idx) + '++) { ';\n $it.errorPath = it.util.getPathExpr(it.errorPath, $idx, it.opts.jsonPointers, true);\n var $passData = $data + '[' + $idx + ']';\n $it.dataPathArr[$dataNxt] = $idx;\n var $code = it.validate($it);\n $it.baseId = $currentBaseId;\n if (it.util.varOccurences($code, $nextData) < 2) {\n out += ' ' + (it.util.varReplace($code, $nextData, $passData)) + ' ';\n } else {\n out += ' var ' + ($nextData) + ' = ' + ($passData) + '; ' + ($code) + ' ';\n }\n out += ' if (' + ($nextValid) + ') break; } ';\n it.compositeRule = $it.compositeRule = $wasComposite;\n out += ' ' + ($closingBraces) + ' if (!' + ($nextValid) + ') {';\n } else {\n out += ' if (' + ($data) + '.length == 0) {';\n }\n var $$outStack = $$outStack || [];\n $$outStack.push(out);\n out = ''; /* istanbul ignore else */\n if (it.createErrors !== false) {\n out += ' { keyword: \\'' + ('contains') + '\\' , dataPath: (dataPath || \\'\\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: {} ';\n if (it.opts.messages !== false) {\n out += ' , message: \\'should contain a valid item\\' ';\n }\n if (it.opts.verbose) {\n out += ' , schema: validate.schema' + ($schemaPath) + ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' ';\n }\n out += ' } ';\n } else {\n out += ' {} ';\n }\n var __err = out;\n out = $$outStack.pop();\n if (!it.compositeRule && $breakOnError) {\n /* istanbul ignore if */\n if (it.async) {\n out += ' throw new ValidationError([' + (__err) + ']); ';\n } else {\n out += ' validate.errors = [' + (__err) + ']; return false; ';\n }\n } else {\n out += ' var err = ' + (__err) + '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ';\n }\n out += ' } else { ';\n if ($nonEmptySchema) {\n out += ' errors = ' + ($errs) + '; if (vErrors !== null) { if (' + ($errs) + ') vErrors.length = ' + ($errs) + '; else vErrors = null; } ';\n }\n if (it.opts.allErrors) {\n out += ' } ';\n }\n return out;\n}\n","'use strict';\nmodule.exports = function generate_anyOf(it, $keyword, $ruleType) {\n var out = ' ';\n var $lvl = it.level;\n var $dataLvl = it.dataLevel;\n var $schema = it.schema[$keyword];\n var $schemaPath = it.schemaPath + it.util.getProperty($keyword);\n var $errSchemaPath = it.errSchemaPath + '/' + $keyword;\n var $breakOnError = !it.opts.allErrors;\n var $data = 'data' + ($dataLvl || '');\n var $valid = 'valid' + $lvl;\n var $errs = 'errs__' + $lvl;\n var $it = it.util.copy(it);\n var $closingBraces = '';\n $it.level++;\n var $nextValid = 'valid' + $it.level;\n var $noEmptySchema = $schema.every(function($sch) {\n return (it.opts.strictKeywords ? (typeof $sch == 'object' && Object.keys($sch).length > 0) || $sch === false : it.util.schemaHasRules($sch, it.RULES.all));\n });\n if ($noEmptySchema) {\n var $currentBaseId = $it.baseId;\n out += ' var ' + ($errs) + ' = errors; var ' + ($valid) + ' = false; ';\n var $wasComposite = it.compositeRule;\n it.compositeRule = $it.compositeRule = true;\n var arr1 = $schema;\n if (arr1) {\n var $sch, $i = -1,\n l1 = arr1.length - 1;\n while ($i < l1) {\n $sch = arr1[$i += 1];\n $it.schema = $sch;\n $it.schemaPath = $schemaPath + '[' + $i + ']';\n $it.errSchemaPath = $errSchemaPath + '/' + $i;\n out += ' ' + (it.validate($it)) + ' ';\n $it.baseId = $currentBaseId;\n out += ' ' + ($valid) + ' = ' + ($valid) + ' || ' + ($nextValid) + '; if (!' + ($valid) + ') { ';\n $closingBraces += '}';\n }\n }\n it.compositeRule = $it.compositeRule = $wasComposite;\n out += ' ' + ($closingBraces) + ' if (!' + ($valid) + ') { var err = '; /* istanbul ignore else */\n if (it.createErrors !== false) {\n out += ' { keyword: \\'' + ('anyOf') + '\\' , dataPath: (dataPath || \\'\\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: {} ';\n if (it.opts.messages !== false) {\n out += ' , message: \\'should match some schema in anyOf\\' ';\n }\n if (it.opts.verbose) {\n out += ' , schema: validate.schema' + ($schemaPath) + ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' ';\n }\n out += ' } ';\n } else {\n out += ' {} ';\n }\n out += '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ';\n if (!it.compositeRule && $breakOnError) {\n /* istanbul ignore if */\n if (it.async) {\n out += ' throw new ValidationError(vErrors); ';\n } else {\n out += ' validate.errors = vErrors; return false; ';\n }\n }\n out += ' } else { errors = ' + ($errs) + '; if (vErrors !== null) { if (' + ($errs) + ') vErrors.length = ' + ($errs) + '; else vErrors = null; } ';\n if (it.opts.allErrors) {\n out += ' } ';\n }\n } else {\n if ($breakOnError) {\n out += ' if (true) { ';\n }\n }\n return out;\n}\n","'use strict';\n\n//all requires must be explicit because browserify won't work with dynamic requires\nmodule.exports = {\n '$ref': require('./ref'),\n allOf: require('./allOf'),\n anyOf: require('./anyOf'),\n '$comment': require('./comment'),\n const: require('./const'),\n contains: require('./contains'),\n dependencies: require('./dependencies'),\n 'enum': require('./enum'),\n format: require('./format'),\n 'if': require('./if'),\n items: require('./items'),\n maximum: require('./_limit'),\n minimum: require('./_limit'),\n maxItems: require('./_limitItems'),\n minItems: require('./_limitItems'),\n maxLength: require('./_limitLength'),\n minLength: require('./_limitLength'),\n maxProperties: require('./_limitProperties'),\n minProperties: require('./_limitProperties'),\n multipleOf: require('./multipleOf'),\n not: require('./not'),\n oneOf: require('./oneOf'),\n pattern: require('./pattern'),\n properties: require('./properties'),\n propertyNames: require('./propertyNames'),\n required: require('./required'),\n uniqueItems: require('./uniqueItems'),\n validate: require('./validate')\n};\n","'use strict';\n\nvar KEYWORDS = [\n 'multipleOf',\n 'maximum',\n 'exclusiveMaximum',\n 'minimum',\n 'exclusiveMinimum',\n 'maxLength',\n 'minLength',\n 'pattern',\n 'additionalItems',\n 'maxItems',\n 'minItems',\n 'uniqueItems',\n 'maxProperties',\n 'minProperties',\n 'required',\n 'additionalProperties',\n 'enum',\n 'format',\n 'const'\n];\n\nmodule.exports = function (metaSchema, keywordsJsonPointers) {\n for (var i=0; i 0) || $schema === false : it.util.schemaHasRules($schema, it.RULES.all))) {\n $it.schema = $schema;\n $it.schemaPath = $schemaPath;\n $it.errSchemaPath = $errSchemaPath;\n var $key = 'key' + $lvl,\n $idx = 'idx' + $lvl,\n $i = 'i' + $lvl,\n $invalidName = '\\' + ' + $key + ' + \\'',\n $dataNxt = $it.dataLevel = it.dataLevel + 1,\n $nextData = 'data' + $dataNxt,\n $dataProperties = 'dataProperties' + $lvl,\n $ownProperties = it.opts.ownProperties,\n $currentBaseId = it.baseId;\n if ($ownProperties) {\n out += ' var ' + ($dataProperties) + ' = undefined; ';\n }\n if ($ownProperties) {\n out += ' ' + ($dataProperties) + ' = ' + ($dataProperties) + ' || Object.keys(' + ($data) + '); for (var ' + ($idx) + '=0; ' + ($idx) + '<' + ($dataProperties) + '.length; ' + ($idx) + '++) { var ' + ($key) + ' = ' + ($dataProperties) + '[' + ($idx) + ']; ';\n } else {\n out += ' for (var ' + ($key) + ' in ' + ($data) + ') { ';\n }\n out += ' var startErrs' + ($lvl) + ' = errors; ';\n var $passData = $key;\n var $wasComposite = it.compositeRule;\n it.compositeRule = $it.compositeRule = true;\n var $code = it.validate($it);\n $it.baseId = $currentBaseId;\n if (it.util.varOccurences($code, $nextData) < 2) {\n out += ' ' + (it.util.varReplace($code, $nextData, $passData)) + ' ';\n } else {\n out += ' var ' + ($nextData) + ' = ' + ($passData) + '; ' + ($code) + ' ';\n }\n it.compositeRule = $it.compositeRule = $wasComposite;\n out += ' if (!' + ($nextValid) + ') { for (var ' + ($i) + '=startErrs' + ($lvl) + '; ' + ($i) + '= 0xD800 && value <= 0xDBFF && pos < len) {\n // high surrogate, and there is a next character\n value = str.charCodeAt(pos);\n if ((value & 0xFC00) == 0xDC00) pos++; // low surrogate\n }\n }\n return length;\n};\n","'use strict';\nmodule.exports = function generate__limitProperties(it, $keyword, $ruleType) {\n var out = ' ';\n var $lvl = it.level;\n var $dataLvl = it.dataLevel;\n var $schema = it.schema[$keyword];\n var $schemaPath = it.schemaPath + it.util.getProperty($keyword);\n var $errSchemaPath = it.errSchemaPath + '/' + $keyword;\n var $breakOnError = !it.opts.allErrors;\n var $errorKeyword;\n var $data = 'data' + ($dataLvl || '');\n var $isData = it.opts.$data && $schema && $schema.$data,\n $schemaValue;\n if ($isData) {\n out += ' var schema' + ($lvl) + ' = ' + (it.util.getData($schema.$data, $dataLvl, it.dataPathArr)) + '; ';\n $schemaValue = 'schema' + $lvl;\n } else {\n $schemaValue = $schema;\n }\n if (!($isData || typeof $schema == 'number')) {\n throw new Error($keyword + ' must be number');\n }\n var $op = $keyword == 'maxProperties' ? '>' : '<';\n out += 'if ( ';\n if ($isData) {\n out += ' (' + ($schemaValue) + ' !== undefined && typeof ' + ($schemaValue) + ' != \\'number\\') || ';\n }\n out += ' Object.keys(' + ($data) + ').length ' + ($op) + ' ' + ($schemaValue) + ') { ';\n var $errorKeyword = $keyword;\n var $$outStack = $$outStack || [];\n $$outStack.push(out);\n out = ''; /* istanbul ignore else */\n if (it.createErrors !== false) {\n out += ' { keyword: \\'' + ($errorKeyword || '_limitProperties') + '\\' , dataPath: (dataPath || \\'\\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { limit: ' + ($schemaValue) + ' } ';\n if (it.opts.messages !== false) {\n out += ' , message: \\'should NOT have ';\n if ($keyword == 'maxProperties') {\n out += 'more';\n } else {\n out += 'fewer';\n }\n out += ' than ';\n if ($isData) {\n out += '\\' + ' + ($schemaValue) + ' + \\'';\n } else {\n out += '' + ($schema);\n }\n out += ' properties\\' ';\n }\n if (it.opts.verbose) {\n out += ' , schema: ';\n if ($isData) {\n out += 'validate.schema' + ($schemaPath);\n } else {\n out += '' + ($schema);\n }\n out += ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' ';\n }\n out += ' } ';\n } else {\n out += ' {} ';\n }\n var __err = out;\n out = $$outStack.pop();\n if (!it.compositeRule && $breakOnError) {\n /* istanbul ignore if */\n if (it.async) {\n out += ' throw new ValidationError([' + (__err) + ']); ';\n } else {\n out += ' validate.errors = [' + (__err) + ']; return false; ';\n }\n } else {\n out += ' var err = ' + (__err) + '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ';\n }\n out += '} ';\n if ($breakOnError) {\n out += ' else { ';\n }\n return out;\n}\n","'use strict';\n\nvar compileSchema = require('./compile')\n , resolve = require('./compile/resolve')\n , Cache = require('./cache')\n , SchemaObject = require('./compile/schema_obj')\n , stableStringify = require('fast-json-stable-stringify')\n , formats = require('./compile/formats')\n , rules = require('./compile/rules')\n , $dataMetaSchema = require('./data')\n , util = require('./compile/util');\n\nmodule.exports = Ajv;\n\nAjv.prototype.validate = validate;\nAjv.prototype.compile = compile;\nAjv.prototype.addSchema = addSchema;\nAjv.prototype.addMetaSchema = addMetaSchema;\nAjv.prototype.validateSchema = validateSchema;\nAjv.prototype.getSchema = getSchema;\nAjv.prototype.removeSchema = removeSchema;\nAjv.prototype.addFormat = addFormat;\nAjv.prototype.errorsText = errorsText;\n\nAjv.prototype._addSchema = _addSchema;\nAjv.prototype._compile = _compile;\n\nAjv.prototype.compileAsync = require('./compile/async');\nvar customKeyword = require('./keyword');\nAjv.prototype.addKeyword = customKeyword.add;\nAjv.prototype.getKeyword = customKeyword.get;\nAjv.prototype.removeKeyword = customKeyword.remove;\nAjv.prototype.validateKeyword = customKeyword.validate;\n\nvar errorClasses = require('./compile/error_classes');\nAjv.ValidationError = errorClasses.Validation;\nAjv.MissingRefError = errorClasses.MissingRef;\nAjv.$dataMetaSchema = $dataMetaSchema;\n\nvar META_SCHEMA_ID = 'http://json-schema.org/draft-07/schema';\n\nvar META_IGNORE_OPTIONS = [ 'removeAdditional', 'useDefaults', 'coerceTypes', 'strictDefaults' ];\nvar META_SUPPORT_DATA = ['/properties'];\n\n/**\n * Creates validator instance.\n * Usage: `Ajv(opts)`\n * @param {Object} opts optional options\n * @return {Object} ajv instance\n */\nfunction Ajv(opts) {\n if (!(this instanceof Ajv)) return new Ajv(opts);\n opts = this._opts = util.copy(opts) || {};\n setLogger(this);\n this._schemas = {};\n this._refs = {};\n this._fragments = {};\n this._formats = formats(opts.format);\n\n this._cache = opts.cache || new Cache;\n this._loadingSchemas = {};\n this._compilations = [];\n this.RULES = rules();\n this._getId = chooseGetId(opts);\n\n opts.loopRequired = opts.loopRequired || Infinity;\n if (opts.errorDataPath == 'property') opts._errorDataPathProperty = true;\n if (opts.serialize === undefined) opts.serialize = stableStringify;\n this._metaOpts = getMetaSchemaOptions(this);\n\n if (opts.formats) addInitialFormats(this);\n if (opts.keywords) addInitialKeywords(this);\n addDefaultMetaSchema(this);\n if (typeof opts.meta == 'object') this.addMetaSchema(opts.meta);\n if (opts.nullable) this.addKeyword('nullable', {metaSchema: {type: 'boolean'}});\n addInitialSchemas(this);\n}\n\n\n\n/**\n * Validate data using schema\n * Schema will be compiled and cached (using serialized JSON as key. [fast-json-stable-stringify](https://github.com/epoberezkin/fast-json-stable-stringify) is used to serialize.\n * @this Ajv\n * @param {String|Object} schemaKeyRef key, ref or schema object\n * @param {Any} data to be validated\n * @return {Boolean} validation result. Errors from the last validation will be available in `ajv.errors` (and also in compiled schema: `schema.errors`).\n */\nfunction validate(schemaKeyRef, data) {\n var v;\n if (typeof schemaKeyRef == 'string') {\n v = this.getSchema(schemaKeyRef);\n if (!v) throw new Error('no schema with key or ref \"' + schemaKeyRef + '\"');\n } else {\n var schemaObj = this._addSchema(schemaKeyRef);\n v = schemaObj.validate || this._compile(schemaObj);\n }\n\n var valid = v(data);\n if (v.$async !== true) this.errors = v.errors;\n return valid;\n}\n\n\n/**\n * Create validating function for passed schema.\n * @this Ajv\n * @param {Object} schema schema object\n * @param {Boolean} _meta true if schema is a meta-schema. Used internally to compile meta schemas of custom keywords.\n * @return {Function} validating function\n */\nfunction compile(schema, _meta) {\n var schemaObj = this._addSchema(schema, undefined, _meta);\n return schemaObj.validate || this._compile(schemaObj);\n}\n\n\n/**\n * Adds schema to the instance.\n * @this Ajv\n * @param {Object|Array} schema schema or array of schemas. If array is passed, `key` and other parameters will be ignored.\n * @param {String} key Optional schema key. Can be passed to `validate` method instead of schema object or id/ref. One schema per instance can have empty `id` and `key`.\n * @param {Boolean} _skipValidation true to skip schema validation. Used internally, option validateSchema should be used instead.\n * @param {Boolean} _meta true if schema is a meta-schema. Used internally, addMetaSchema should be used instead.\n * @return {Ajv} this for method chaining\n */\nfunction addSchema(schema, key, _skipValidation, _meta) {\n if (Array.isArray(schema)){\n for (var i=0; i} errors optional array of validation errors, if not passed errors from the instance are used.\n * @param {Object} options optional options with properties `separator` and `dataVar`.\n * @return {String} human readable string with all errors descriptions\n */\nfunction errorsText(errors, options) {\n errors = errors || this.errors;\n if (!errors) return 'No errors';\n options = options || {};\n var separator = options.separator === undefined ? ', ' : options.separator;\n var dataVar = options.dataVar === undefined ? 'data' : options.dataVar;\n\n var text = '';\n for (var i=0; i 0) || $sch === false : it.util.schemaHasRules($sch, it.RULES.all))) {\n out += ' ' + ($nextValid) + ' = true; if (' + ($data) + '.length > ' + ($i) + ') { ';\n var $passData = $data + '[' + $i + ']';\n $it.schema = $sch;\n $it.schemaPath = $schemaPath + '[' + $i + ']';\n $it.errSchemaPath = $errSchemaPath + '/' + $i;\n $it.errorPath = it.util.getPathExpr(it.errorPath, $i, it.opts.jsonPointers, true);\n $it.dataPathArr[$dataNxt] = $i;\n var $code = it.validate($it);\n $it.baseId = $currentBaseId;\n if (it.util.varOccurences($code, $nextData) < 2) {\n out += ' ' + (it.util.varReplace($code, $nextData, $passData)) + ' ';\n } else {\n out += ' var ' + ($nextData) + ' = ' + ($passData) + '; ' + ($code) + ' ';\n }\n out += ' } ';\n if ($breakOnError) {\n out += ' if (' + ($nextValid) + ') { ';\n $closingBraces += '}';\n }\n }\n }\n }\n if (typeof $additionalItems == 'object' && (it.opts.strictKeywords ? (typeof $additionalItems == 'object' && Object.keys($additionalItems).length > 0) || $additionalItems === false : it.util.schemaHasRules($additionalItems, it.RULES.all))) {\n $it.schema = $additionalItems;\n $it.schemaPath = it.schemaPath + '.additionalItems';\n $it.errSchemaPath = it.errSchemaPath + '/additionalItems';\n out += ' ' + ($nextValid) + ' = true; if (' + ($data) + '.length > ' + ($schema.length) + ') { for (var ' + ($idx) + ' = ' + ($schema.length) + '; ' + ($idx) + ' < ' + ($data) + '.length; ' + ($idx) + '++) { ';\n $it.errorPath = it.util.getPathExpr(it.errorPath, $idx, it.opts.jsonPointers, true);\n var $passData = $data + '[' + $idx + ']';\n $it.dataPathArr[$dataNxt] = $idx;\n var $code = it.validate($it);\n $it.baseId = $currentBaseId;\n if (it.util.varOccurences($code, $nextData) < 2) {\n out += ' ' + (it.util.varReplace($code, $nextData, $passData)) + ' ';\n } else {\n out += ' var ' + ($nextData) + ' = ' + ($passData) + '; ' + ($code) + ' ';\n }\n if ($breakOnError) {\n out += ' if (!' + ($nextValid) + ') break; ';\n }\n out += ' } } ';\n if ($breakOnError) {\n out += ' if (' + ($nextValid) + ') { ';\n $closingBraces += '}';\n }\n }\n } else if ((it.opts.strictKeywords ? (typeof $schema == 'object' && Object.keys($schema).length > 0) || $schema === false : it.util.schemaHasRules($schema, it.RULES.all))) {\n $it.schema = $schema;\n $it.schemaPath = $schemaPath;\n $it.errSchemaPath = $errSchemaPath;\n out += ' for (var ' + ($idx) + ' = ' + (0) + '; ' + ($idx) + ' < ' + ($data) + '.length; ' + ($idx) + '++) { ';\n $it.errorPath = it.util.getPathExpr(it.errorPath, $idx, it.opts.jsonPointers, true);\n var $passData = $data + '[' + $idx + ']';\n $it.dataPathArr[$dataNxt] = $idx;\n var $code = it.validate($it);\n $it.baseId = $currentBaseId;\n if (it.util.varOccurences($code, $nextData) < 2) {\n out += ' ' + (it.util.varReplace($code, $nextData, $passData)) + ' ';\n } else {\n out += ' var ' + ($nextData) + ' = ' + ($passData) + '; ' + ($code) + ' ';\n }\n if ($breakOnError) {\n out += ' if (!' + ($nextValid) + ') break; ';\n }\n out += ' }';\n }\n if ($breakOnError) {\n out += ' ' + ($closingBraces) + ' if (' + ($errs) + ' == errors) {';\n }\n return out;\n}\n","'use strict';\nvar call = require('../internals/function-call');\nvar fixRegExpWellKnownSymbolLogic = require('../internals/fix-regexp-well-known-symbol-logic');\nvar anObject = require('../internals/an-object');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar sameValue = require('../internals/same-value');\nvar toString = require('../internals/to-string');\nvar getMethod = require('../internals/get-method');\nvar regExpExec = require('../internals/regexp-exec-abstract');\n\n// @@search logic\nfixRegExpWellKnownSymbolLogic('search', function (SEARCH, nativeSearch, maybeCallNative) {\n return [\n // `String.prototype.search` method\n // https://tc39.es/ecma262/#sec-string.prototype.search\n function search(regexp) {\n var O = requireObjectCoercible(this);\n var searcher = regexp == undefined ? undefined : getMethod(regexp, SEARCH);\n return searcher ? call(searcher, regexp, O) : new RegExp(regexp)[SEARCH](toString(O));\n },\n // `RegExp.prototype[@@search]` method\n // https://tc39.es/ecma262/#sec-regexp.prototype-@@search\n function (string) {\n var rx = anObject(this);\n var S = toString(string);\n var res = maybeCallNative(nativeSearch, rx, S);\n\n if (res.done) return res.value;\n\n var previousLastIndex = rx.lastIndex;\n if (!sameValue(previousLastIndex, 0)) rx.lastIndex = 0;\n var result = regExpExec(rx, S);\n if (!sameValue(rx.lastIndex, previousLastIndex)) rx.lastIndex = previousLastIndex;\n return result === null ? -1 : result.index;\n }\n ];\n});\n","'use strict';\n\nvar resolve = require('./resolve');\n\nmodule.exports = {\n Validation: errorSubclass(ValidationError),\n MissingRef: errorSubclass(MissingRefError)\n};\n\n\nfunction ValidationError(errors) {\n this.message = 'validation failed';\n this.errors = errors;\n this.ajv = this.validation = true;\n}\n\n\nMissingRefError.message = function (baseId, ref) {\n return 'can\\'t resolve reference ' + ref + ' from id ' + baseId;\n};\n\n\nfunction MissingRefError(baseId, ref, message) {\n this.message = message || MissingRefError.message(baseId, ref);\n this.missingRef = resolve.url(baseId, ref);\n this.missingSchema = resolve.normalizeId(resolve.fullPath(this.missingRef));\n}\n\n\nfunction errorSubclass(Subclass) {\n Subclass.prototype = Object.create(Error.prototype);\n Subclass.prototype.constructor = Subclass;\n return Subclass;\n}\n","'use strict';\n\nvar traverse = module.exports = function (schema, opts, cb) {\n // Legacy support for v0.3.1 and earlier.\n if (typeof opts == 'function') {\n cb = opts;\n opts = {};\n }\n\n cb = opts.cb || cb;\n var pre = (typeof cb == 'function') ? cb : cb.pre || function() {};\n var post = cb.post || function() {};\n\n _traverse(opts, pre, post, schema, '', schema);\n};\n\n\ntraverse.keywords = {\n additionalItems: true,\n items: true,\n contains: true,\n additionalProperties: true,\n propertyNames: true,\n not: true\n};\n\ntraverse.arrayKeywords = {\n items: true,\n allOf: true,\n anyOf: true,\n oneOf: true\n};\n\ntraverse.propsKeywords = {\n definitions: true,\n properties: true,\n patternProperties: true,\n dependencies: true\n};\n\ntraverse.skipKeywords = {\n default: true,\n enum: true,\n const: true,\n required: true,\n maximum: true,\n minimum: true,\n exclusiveMaximum: true,\n exclusiveMinimum: true,\n multipleOf: true,\n maxLength: true,\n minLength: true,\n pattern: true,\n format: true,\n maxItems: true,\n minItems: true,\n uniqueItems: true,\n maxProperties: true,\n minProperties: true\n};\n\n\nfunction _traverse(opts, pre, post, schema, jsonPtr, rootSchema, parentJsonPtr, parentKeyword, parentSchema, keyIndex) {\n if (schema && typeof schema == 'object' && !Array.isArray(schema)) {\n pre(schema, jsonPtr, rootSchema, parentJsonPtr, parentKeyword, parentSchema, keyIndex);\n for (var key in schema) {\n var sch = schema[key];\n if (Array.isArray(sch)) {\n if (key in traverse.arrayKeywords) {\n for (var i=0; i= 0) return { index: index, compiling: true };\n index = this._compilations.length;\n this._compilations[index] = {\n schema: schema,\n root: root,\n baseId: baseId\n };\n return { index: index, compiling: false };\n}\n\n\n/**\n * Removes the schema from the currently compiled list\n * @this Ajv\n * @param {Object} schema schema to compile\n * @param {Object} root root object\n * @param {String} baseId base schema ID\n */\nfunction endCompiling(schema, root, baseId) {\n /* jshint validthis: true */\n var i = compIndex.call(this, schema, root, baseId);\n if (i >= 0) this._compilations.splice(i, 1);\n}\n\n\n/**\n * Index of schema compilation in the currently compiled list\n * @this Ajv\n * @param {Object} schema schema to compile\n * @param {Object} root root object\n * @param {String} baseId base schema ID\n * @return {Integer} compilation index\n */\nfunction compIndex(schema, root, baseId) {\n /* jshint validthis: true */\n for (var i=0; i' : '<';\n out += 'if ( ';\n if ($isData) {\n out += ' (' + ($schemaValue) + ' !== undefined && typeof ' + ($schemaValue) + ' != \\'number\\') || ';\n }\n if (it.opts.unicode === false) {\n out += ' ' + ($data) + '.length ';\n } else {\n out += ' ucs2length(' + ($data) + ') ';\n }\n out += ' ' + ($op) + ' ' + ($schemaValue) + ') { ';\n var $errorKeyword = $keyword;\n var $$outStack = $$outStack || [];\n $$outStack.push(out);\n out = ''; /* istanbul ignore else */\n if (it.createErrors !== false) {\n out += ' { keyword: \\'' + ($errorKeyword || '_limitLength') + '\\' , dataPath: (dataPath || \\'\\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { limit: ' + ($schemaValue) + ' } ';\n if (it.opts.messages !== false) {\n out += ' , message: \\'should NOT be ';\n if ($keyword == 'maxLength') {\n out += 'longer';\n } else {\n out += 'shorter';\n }\n out += ' than ';\n if ($isData) {\n out += '\\' + ' + ($schemaValue) + ' + \\'';\n } else {\n out += '' + ($schema);\n }\n out += ' characters\\' ';\n }\n if (it.opts.verbose) {\n out += ' , schema: ';\n if ($isData) {\n out += 'validate.schema' + ($schemaPath);\n } else {\n out += '' + ($schema);\n }\n out += ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' ';\n }\n out += ' } ';\n } else {\n out += ' {} ';\n }\n var __err = out;\n out = $$outStack.pop();\n if (!it.compositeRule && $breakOnError) {\n /* istanbul ignore if */\n if (it.async) {\n out += ' throw new ValidationError([' + (__err) + ']); ';\n } else {\n out += ' validate.errors = [' + (__err) + ']; return false; ';\n }\n } else {\n out += ' var err = ' + (__err) + '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ';\n }\n out += '} ';\n if ($breakOnError) {\n out += ' else { ';\n }\n return out;\n}\n","'use strict';\n\nvar util = require('./util');\n\nvar DATE = /^(\\d\\d\\d\\d)-(\\d\\d)-(\\d\\d)$/;\nvar DAYS = [0,31,28,31,30,31,30,31,31,30,31,30,31];\nvar TIME = /^(\\d\\d):(\\d\\d):(\\d\\d)(\\.\\d+)?(z|[+-]\\d\\d(?::?\\d\\d)?)?$/i;\nvar HOSTNAME = /^(?=.{1,253}\\.?$)[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\\.[a-z0-9](?:[-0-9a-z]{0,61}[0-9a-z])?)*\\.?$/i;\nvar URI = /^(?:[a-z][a-z0-9+\\-.]*:)(?:\\/?\\/(?:(?:[a-z0-9\\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\\d|[01]?\\d\\d?)\\.){3}(?:25[0-5]|2[0-4]\\d|[01]?\\d\\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\\.[a-z0-9\\-._~!$&'()*+,;=:]+)\\]|(?:(?:25[0-5]|2[0-4]\\d|[01]?\\d\\d?)\\.){3}(?:25[0-5]|2[0-4]\\d|[01]?\\d\\d?)|(?:[a-z0-9\\-._~!$&'()*+,;=]|%[0-9a-f]{2})*)(?::\\d*)?(?:\\/(?:[a-z0-9\\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*|\\/(?:(?:[a-z0-9\\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})+(?:\\/(?:[a-z0-9\\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})+(?:\\/(?:[a-z0-9\\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*)(?:\\?(?:[a-z0-9\\-._~!$&'()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\\-._~!$&'()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i;\nvar URIREF = /^(?:[a-z][a-z0-9+\\-.]*:)?(?:\\/?\\/(?:(?:[a-z0-9\\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\\d|[01]?\\d\\d?)\\.){3}(?:25[0-5]|2[0-4]\\d|[01]?\\d\\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\\.[a-z0-9\\-._~!$&'()*+,;=:]+)\\]|(?:(?:25[0-5]|2[0-4]\\d|[01]?\\d\\d?)\\.){3}(?:25[0-5]|2[0-4]\\d|[01]?\\d\\d?)|(?:[a-z0-9\\-._~!$&'\"()*+,;=]|%[0-9a-f]{2})*)(?::\\d*)?(?:\\/(?:[a-z0-9\\-._~!$&'\"()*+,;=:@]|%[0-9a-f]{2})*)*|\\/(?:(?:[a-z0-9\\-._~!$&'\"()*+,;=:@]|%[0-9a-f]{2})+(?:\\/(?:[a-z0-9\\-._~!$&'\"()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\\-._~!$&'\"()*+,;=:@]|%[0-9a-f]{2})+(?:\\/(?:[a-z0-9\\-._~!$&'\"()*+,;=:@]|%[0-9a-f]{2})*)*)?(?:\\?(?:[a-z0-9\\-._~!$&'\"()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\\-._~!$&'\"()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i;\n// uri-template: https://tools.ietf.org/html/rfc6570\nvar URITEMPLATE = /^(?:(?:[^\\x00-\\x20\"'<>%\\\\^`{|}]|%[0-9a-f]{2})|\\{[+#./;?&=,!@|]?(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\\*)?(?:,(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\\*)?)*\\})*$/i;\n// For the source: https://gist.github.com/dperini/729294\n// For test cases: https://mathiasbynens.be/demo/url-regex\n// @todo Delete current URL in favour of the commented out URL rule when this issue is fixed https://github.com/eslint/eslint/issues/7983.\n// var URL = /^(?:(?:https?|ftp):\\/\\/)(?:\\S+(?::\\S*)?@)?(?:(?!10(?:\\.\\d{1,3}){3})(?!127(?:\\.\\d{1,3}){3})(?!169\\.254(?:\\.\\d{1,3}){2})(?!192\\.168(?:\\.\\d{1,3}){2})(?!172\\.(?:1[6-9]|2\\d|3[0-1])(?:\\.\\d{1,3}){2})(?:[1-9]\\d?|1\\d\\d|2[01]\\d|22[0-3])(?:\\.(?:1?\\d{1,2}|2[0-4]\\d|25[0-5])){2}(?:\\.(?:[1-9]\\d?|1\\d\\d|2[0-4]\\d|25[0-4]))|(?:(?:[a-z\\u{00a1}-\\u{ffff}0-9]+-)*[a-z\\u{00a1}-\\u{ffff}0-9]+)(?:\\.(?:[a-z\\u{00a1}-\\u{ffff}0-9]+-)*[a-z\\u{00a1}-\\u{ffff}0-9]+)*(?:\\.(?:[a-z\\u{00a1}-\\u{ffff}]{2,})))(?::\\d{2,5})?(?:\\/[^\\s]*)?$/iu;\nvar URL = /^(?:(?:http[s\\u017F]?|ftp):\\/\\/)(?:(?:[\\0-\\x08\\x0E-\\x1F!-\\x9F\\xA1-\\u167F\\u1681-\\u1FFF\\u200B-\\u2027\\u202A-\\u202E\\u2030-\\u205E\\u2060-\\u2FFF\\u3001-\\uD7FF\\uE000-\\uFEFE\\uFF00-\\uFFFF]|[\\uD800-\\uDBFF][\\uDC00-\\uDFFF]|[\\uD800-\\uDBFF](?![\\uDC00-\\uDFFF])|(?:[^\\uD800-\\uDBFF]|^)[\\uDC00-\\uDFFF])+(?::(?:[\\0-\\x08\\x0E-\\x1F!-\\x9F\\xA1-\\u167F\\u1681-\\u1FFF\\u200B-\\u2027\\u202A-\\u202E\\u2030-\\u205E\\u2060-\\u2FFF\\u3001-\\uD7FF\\uE000-\\uFEFE\\uFF00-\\uFFFF]|[\\uD800-\\uDBFF][\\uDC00-\\uDFFF]|[\\uD800-\\uDBFF](?![\\uDC00-\\uDFFF])|(?:[^\\uD800-\\uDBFF]|^)[\\uDC00-\\uDFFF])*)?@)?(?:(?!10(?:\\.[0-9]{1,3}){3})(?!127(?:\\.[0-9]{1,3}){3})(?!169\\.254(?:\\.[0-9]{1,3}){2})(?!192\\.168(?:\\.[0-9]{1,3}){2})(?!172\\.(?:1[6-9]|2[0-9]|3[01])(?:\\.[0-9]{1,3}){2})(?:[1-9][0-9]?|1[0-9][0-9]|2[01][0-9]|22[0-3])(?:\\.(?:1?[0-9]{1,2}|2[0-4][0-9]|25[0-5])){2}(?:\\.(?:[1-9][0-9]?|1[0-9][0-9]|2[0-4][0-9]|25[0-4]))|(?:(?:(?:[0-9a-z\\xA1-\\uD7FF\\uE000-\\uFFFF]|[\\uD800-\\uDBFF](?![\\uDC00-\\uDFFF])|(?:[^\\uD800-\\uDBFF]|^)[\\uDC00-\\uDFFF])+-)*(?:[0-9a-z\\xA1-\\uD7FF\\uE000-\\uFFFF]|[\\uD800-\\uDBFF](?![\\uDC00-\\uDFFF])|(?:[^\\uD800-\\uDBFF]|^)[\\uDC00-\\uDFFF])+)(?:\\.(?:(?:[0-9a-z\\xA1-\\uD7FF\\uE000-\\uFFFF]|[\\uD800-\\uDBFF](?![\\uDC00-\\uDFFF])|(?:[^\\uD800-\\uDBFF]|^)[\\uDC00-\\uDFFF])+-)*(?:[0-9a-z\\xA1-\\uD7FF\\uE000-\\uFFFF]|[\\uD800-\\uDBFF](?![\\uDC00-\\uDFFF])|(?:[^\\uD800-\\uDBFF]|^)[\\uDC00-\\uDFFF])+)*(?:\\.(?:(?:[a-z\\xA1-\\uD7FF\\uE000-\\uFFFF]|[\\uD800-\\uDBFF](?![\\uDC00-\\uDFFF])|(?:[^\\uD800-\\uDBFF]|^)[\\uDC00-\\uDFFF]){2,})))(?::[0-9]{2,5})?(?:\\/(?:[\\0-\\x08\\x0E-\\x1F!-\\x9F\\xA1-\\u167F\\u1681-\\u1FFF\\u200B-\\u2027\\u202A-\\u202E\\u2030-\\u205E\\u2060-\\u2FFF\\u3001-\\uD7FF\\uE000-\\uFEFE\\uFF00-\\uFFFF]|[\\uD800-\\uDBFF][\\uDC00-\\uDFFF]|[\\uD800-\\uDBFF](?![\\uDC00-\\uDFFF])|(?:[^\\uD800-\\uDBFF]|^)[\\uDC00-\\uDFFF])*)?$/i;\nvar UUID = /^(?:urn:uuid:)?[0-9a-f]{8}-(?:[0-9a-f]{4}-){3}[0-9a-f]{12}$/i;\nvar JSON_POINTER = /^(?:\\/(?:[^~/]|~0|~1)*)*$/;\nvar JSON_POINTER_URI_FRAGMENT = /^#(?:\\/(?:[a-z0-9_\\-.!$&'()*+,;:=@]|%[0-9a-f]{2}|~0|~1)*)*$/i;\nvar RELATIVE_JSON_POINTER = /^(?:0|[1-9][0-9]*)(?:#|(?:\\/(?:[^~/]|~0|~1)*)*)$/;\n\n\nmodule.exports = formats;\n\nfunction formats(mode) {\n mode = mode == 'full' ? 'full' : 'fast';\n return util.copy(formats[mode]);\n}\n\n\nformats.fast = {\n // date: http://tools.ietf.org/html/rfc3339#section-5.6\n date: /^\\d\\d\\d\\d-[0-1]\\d-[0-3]\\d$/,\n // date-time: http://tools.ietf.org/html/rfc3339#section-5.6\n time: /^(?:[0-2]\\d:[0-5]\\d:[0-5]\\d|23:59:60)(?:\\.\\d+)?(?:z|[+-]\\d\\d(?::?\\d\\d)?)?$/i,\n 'date-time': /^\\d\\d\\d\\d-[0-1]\\d-[0-3]\\d[t\\s](?:[0-2]\\d:[0-5]\\d:[0-5]\\d|23:59:60)(?:\\.\\d+)?(?:z|[+-]\\d\\d(?::?\\d\\d)?)$/i,\n // uri: https://github.com/mafintosh/is-my-json-valid/blob/master/formats.js\n uri: /^(?:[a-z][a-z0-9+\\-.]*:)(?:\\/?\\/)?[^\\s]*$/i,\n 'uri-reference': /^(?:(?:[a-z][a-z0-9+\\-.]*:)?\\/?\\/)?(?:[^\\\\\\s#][^\\s#]*)?(?:#[^\\\\\\s]*)?$/i,\n 'uri-template': URITEMPLATE,\n url: URL,\n // email (sources from jsen validator):\n // http://stackoverflow.com/questions/201323/using-a-regular-expression-to-validate-an-email-address#answer-8829363\n // http://www.w3.org/TR/html5/forms.html#valid-e-mail-address (search for 'willful violation')\n email: /^[a-z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\\.[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?)*$/i,\n hostname: HOSTNAME,\n // optimized https://www.safaribooksonline.com/library/view/regular-expressions-cookbook/9780596802837/ch07s16.html\n ipv4: /^(?:(?:25[0-5]|2[0-4]\\d|[01]?\\d\\d?)\\.){3}(?:25[0-5]|2[0-4]\\d|[01]?\\d\\d?)$/,\n // optimized http://stackoverflow.com/questions/53497/regular-expression-that-matches-valid-ipv6-addresses\n ipv6: /^\\s*(?:(?:(?:[0-9a-f]{1,4}:){7}(?:[0-9a-f]{1,4}|:))|(?:(?:[0-9a-f]{1,4}:){6}(?::[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)(?:\\.(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)){3})|:))|(?:(?:[0-9a-f]{1,4}:){5}(?:(?:(?::[0-9a-f]{1,4}){1,2})|:(?:(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)(?:\\.(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)){3})|:))|(?:(?:[0-9a-f]{1,4}:){4}(?:(?:(?::[0-9a-f]{1,4}){1,3})|(?:(?::[0-9a-f]{1,4})?:(?:(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)(?:\\.(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)){3}))|:))|(?:(?:[0-9a-f]{1,4}:){3}(?:(?:(?::[0-9a-f]{1,4}){1,4})|(?:(?::[0-9a-f]{1,4}){0,2}:(?:(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)(?:\\.(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)){3}))|:))|(?:(?:[0-9a-f]{1,4}:){2}(?:(?:(?::[0-9a-f]{1,4}){1,5})|(?:(?::[0-9a-f]{1,4}){0,3}:(?:(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)(?:\\.(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)){3}))|:))|(?:(?:[0-9a-f]{1,4}:){1}(?:(?:(?::[0-9a-f]{1,4}){1,6})|(?:(?::[0-9a-f]{1,4}){0,4}:(?:(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)(?:\\.(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)){3}))|:))|(?::(?:(?:(?::[0-9a-f]{1,4}){1,7})|(?:(?::[0-9a-f]{1,4}){0,5}:(?:(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)(?:\\.(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)){3}))|:)))(?:%.+)?\\s*$/i,\n regex: regex,\n // uuid: http://tools.ietf.org/html/rfc4122\n uuid: UUID,\n // JSON-pointer: https://tools.ietf.org/html/rfc6901\n // uri fragment: https://tools.ietf.org/html/rfc3986#appendix-A\n 'json-pointer': JSON_POINTER,\n 'json-pointer-uri-fragment': JSON_POINTER_URI_FRAGMENT,\n // relative JSON-pointer: http://tools.ietf.org/html/draft-luff-relative-json-pointer-00\n 'relative-json-pointer': RELATIVE_JSON_POINTER\n};\n\n\nformats.full = {\n date: date,\n time: time,\n 'date-time': date_time,\n uri: uri,\n 'uri-reference': URIREF,\n 'uri-template': URITEMPLATE,\n url: URL,\n email: /^[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$/i,\n hostname: HOSTNAME,\n ipv4: /^(?:(?:25[0-5]|2[0-4]\\d|[01]?\\d\\d?)\\.){3}(?:25[0-5]|2[0-4]\\d|[01]?\\d\\d?)$/,\n ipv6: /^\\s*(?:(?:(?:[0-9a-f]{1,4}:){7}(?:[0-9a-f]{1,4}|:))|(?:(?:[0-9a-f]{1,4}:){6}(?::[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)(?:\\.(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)){3})|:))|(?:(?:[0-9a-f]{1,4}:){5}(?:(?:(?::[0-9a-f]{1,4}){1,2})|:(?:(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)(?:\\.(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)){3})|:))|(?:(?:[0-9a-f]{1,4}:){4}(?:(?:(?::[0-9a-f]{1,4}){1,3})|(?:(?::[0-9a-f]{1,4})?:(?:(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)(?:\\.(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)){3}))|:))|(?:(?:[0-9a-f]{1,4}:){3}(?:(?:(?::[0-9a-f]{1,4}){1,4})|(?:(?::[0-9a-f]{1,4}){0,2}:(?:(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)(?:\\.(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)){3}))|:))|(?:(?:[0-9a-f]{1,4}:){2}(?:(?:(?::[0-9a-f]{1,4}){1,5})|(?:(?::[0-9a-f]{1,4}){0,3}:(?:(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)(?:\\.(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)){3}))|:))|(?:(?:[0-9a-f]{1,4}:){1}(?:(?:(?::[0-9a-f]{1,4}){1,6})|(?:(?::[0-9a-f]{1,4}){0,4}:(?:(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)(?:\\.(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)){3}))|:))|(?::(?:(?:(?::[0-9a-f]{1,4}){1,7})|(?:(?::[0-9a-f]{1,4}){0,5}:(?:(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)(?:\\.(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)){3}))|:)))(?:%.+)?\\s*$/i,\n regex: regex,\n uuid: UUID,\n 'json-pointer': JSON_POINTER,\n 'json-pointer-uri-fragment': JSON_POINTER_URI_FRAGMENT,\n 'relative-json-pointer': RELATIVE_JSON_POINTER\n};\n\n\nfunction isLeapYear(year) {\n // https://tools.ietf.org/html/rfc3339#appendix-C\n return year % 4 === 0 && (year % 100 !== 0 || year % 400 === 0);\n}\n\n\nfunction date(str) {\n // full-date from http://tools.ietf.org/html/rfc3339#section-5.6\n var matches = str.match(DATE);\n if (!matches) return false;\n\n var year = +matches[1];\n var month = +matches[2];\n var day = +matches[3];\n\n return month >= 1 && month <= 12 && day >= 1 &&\n day <= (month == 2 && isLeapYear(year) ? 29 : DAYS[month]);\n}\n\n\nfunction time(str, full) {\n var matches = str.match(TIME);\n if (!matches) return false;\n\n var hour = matches[1];\n var minute = matches[2];\n var second = matches[3];\n var timeZone = matches[5];\n return ((hour <= 23 && minute <= 59 && second <= 59) ||\n (hour == 23 && minute == 59 && second == 60)) &&\n (!full || timeZone);\n}\n\n\nvar DATE_TIME_SEPARATOR = /t|\\s/i;\nfunction date_time(str) {\n // http://tools.ietf.org/html/rfc3339#section-5.6\n var dateTime = str.split(DATE_TIME_SEPARATOR);\n return dateTime.length == 2 && date(dateTime[0]) && time(dateTime[1], true);\n}\n\n\nvar NOT_URI_FRAGMENT = /\\/|:/;\nfunction uri(str) {\n // http://jmrware.com/articles/2009/uri_regexp/URI_regex.html + optional protocol + required \".\"\n return NOT_URI_FRAGMENT.test(str) && URI.test(str);\n}\n\n\nvar Z_ANCHOR = /[^\\\\]\\\\Z/;\nfunction regex(str) {\n if (Z_ANCHOR.test(str)) return false;\n try {\n new RegExp(str);\n return true;\n } catch(e) {\n return false;\n }\n}\n","'use strict';\nmodule.exports = function generate_multipleOf(it, $keyword, $ruleType) {\n var out = ' ';\n var $lvl = it.level;\n var $dataLvl = it.dataLevel;\n var $schema = it.schema[$keyword];\n var $schemaPath = it.schemaPath + it.util.getProperty($keyword);\n var $errSchemaPath = it.errSchemaPath + '/' + $keyword;\n var $breakOnError = !it.opts.allErrors;\n var $data = 'data' + ($dataLvl || '');\n var $isData = it.opts.$data && $schema && $schema.$data,\n $schemaValue;\n if ($isData) {\n out += ' var schema' + ($lvl) + ' = ' + (it.util.getData($schema.$data, $dataLvl, it.dataPathArr)) + '; ';\n $schemaValue = 'schema' + $lvl;\n } else {\n $schemaValue = $schema;\n }\n if (!($isData || typeof $schema == 'number')) {\n throw new Error($keyword + ' must be number');\n }\n out += 'var division' + ($lvl) + ';if (';\n if ($isData) {\n out += ' ' + ($schemaValue) + ' !== undefined && ( typeof ' + ($schemaValue) + ' != \\'number\\' || ';\n }\n out += ' (division' + ($lvl) + ' = ' + ($data) + ' / ' + ($schemaValue) + ', ';\n if (it.opts.multipleOfPrecision) {\n out += ' Math.abs(Math.round(division' + ($lvl) + ') - division' + ($lvl) + ') > 1e-' + (it.opts.multipleOfPrecision) + ' ';\n } else {\n out += ' division' + ($lvl) + ' !== parseInt(division' + ($lvl) + ') ';\n }\n out += ' ) ';\n if ($isData) {\n out += ' ) ';\n }\n out += ' ) { ';\n var $$outStack = $$outStack || [];\n $$outStack.push(out);\n out = ''; /* istanbul ignore else */\n if (it.createErrors !== false) {\n out += ' { keyword: \\'' + ('multipleOf') + '\\' , dataPath: (dataPath || \\'\\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { multipleOf: ' + ($schemaValue) + ' } ';\n if (it.opts.messages !== false) {\n out += ' , message: \\'should be multiple of ';\n if ($isData) {\n out += '\\' + ' + ($schemaValue);\n } else {\n out += '' + ($schemaValue) + '\\'';\n }\n }\n if (it.opts.verbose) {\n out += ' , schema: ';\n if ($isData) {\n out += 'validate.schema' + ($schemaPath);\n } else {\n out += '' + ($schema);\n }\n out += ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' ';\n }\n out += ' } ';\n } else {\n out += ' {} ';\n }\n var __err = out;\n out = $$outStack.pop();\n if (!it.compositeRule && $breakOnError) {\n /* istanbul ignore if */\n if (it.async) {\n out += ' throw new ValidationError([' + (__err) + ']); ';\n } else {\n out += ' validate.errors = [' + (__err) + ']; return false; ';\n }\n } else {\n out += ' var err = ' + (__err) + '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ';\n }\n out += '} ';\n if ($breakOnError) {\n out += ' else { ';\n }\n return out;\n}\n","'use strict';\n\nvar URI = require('uri-js')\n , equal = require('fast-deep-equal')\n , util = require('./util')\n , SchemaObject = require('./schema_obj')\n , traverse = require('json-schema-traverse');\n\nmodule.exports = resolve;\n\nresolve.normalizeId = normalizeId;\nresolve.fullPath = getFullPath;\nresolve.url = resolveUrl;\nresolve.ids = resolveIds;\nresolve.inlineRef = inlineRef;\nresolve.schema = resolveSchema;\n\n/**\n * [resolve and compile the references ($ref)]\n * @this Ajv\n * @param {Function} compile reference to schema compilation funciton (localCompile)\n * @param {Object} root object with information about the root schema for the current schema\n * @param {String} ref reference to resolve\n * @return {Object|Function} schema object (if the schema can be inlined) or validation function\n */\nfunction resolve(compile, root, ref) {\n /* jshint validthis: true */\n var refVal = this._refs[ref];\n if (typeof refVal == 'string') {\n if (this._refs[refVal]) refVal = this._refs[refVal];\n else return resolve.call(this, compile, root, refVal);\n }\n\n refVal = refVal || this._schemas[ref];\n if (refVal instanceof SchemaObject) {\n return inlineRef(refVal.schema, this._opts.inlineRefs)\n ? refVal.schema\n : refVal.validate || this._compile(refVal);\n }\n\n var res = resolveSchema.call(this, root, ref);\n var schema, v, baseId;\n if (res) {\n schema = res.schema;\n root = res.root;\n baseId = res.baseId;\n }\n\n if (schema instanceof SchemaObject) {\n v = schema.validate || compile.call(this, schema.schema, root, undefined, baseId);\n } else if (schema !== undefined) {\n v = inlineRef(schema, this._opts.inlineRefs)\n ? schema\n : compile.call(this, schema, root, undefined, baseId);\n }\n\n return v;\n}\n\n\n/**\n * Resolve schema, its root and baseId\n * @this Ajv\n * @param {Object} root root object with properties schema, refVal, refs\n * @param {String} ref reference to resolve\n * @return {Object} object with properties schema, root, baseId\n */\nfunction resolveSchema(root, ref) {\n /* jshint validthis: true */\n var p = URI.parse(ref)\n , refPath = _getFullPath(p)\n , baseId = getFullPath(this._getId(root.schema));\n if (Object.keys(root.schema).length === 0 || refPath !== baseId) {\n var id = normalizeId(refPath);\n var refVal = this._refs[id];\n if (typeof refVal == 'string') {\n return resolveRecursive.call(this, root, refVal, p);\n } else if (refVal instanceof SchemaObject) {\n if (!refVal.validate) this._compile(refVal);\n root = refVal;\n } else {\n refVal = this._schemas[id];\n if (refVal instanceof SchemaObject) {\n if (!refVal.validate) this._compile(refVal);\n if (id == normalizeId(ref))\n return { schema: refVal, root: root, baseId: baseId };\n root = refVal;\n } else {\n return;\n }\n }\n if (!root.schema) return;\n baseId = getFullPath(this._getId(root.schema));\n }\n return getJsonPointer.call(this, p, baseId, root.schema, root);\n}\n\n\n/* @this Ajv */\nfunction resolveRecursive(root, ref, parsedRef) {\n /* jshint validthis: true */\n var res = resolveSchema.call(this, root, ref);\n if (res) {\n var schema = res.schema;\n var baseId = res.baseId;\n root = res.root;\n var id = this._getId(schema);\n if (id) baseId = resolveUrl(baseId, id);\n return getJsonPointer.call(this, parsedRef, baseId, schema, root);\n }\n}\n\n\nvar PREVENT_SCOPE_CHANGE = util.toHash(['properties', 'patternProperties', 'enum', 'dependencies', 'definitions']);\n/* @this Ajv */\nfunction getJsonPointer(parsedRef, baseId, schema, root) {\n /* jshint validthis: true */\n parsedRef.fragment = parsedRef.fragment || '';\n if (parsedRef.fragment.slice(0,1) != '/') return;\n var parts = parsedRef.fragment.split('/');\n\n for (var i = 1; i < parts.length; i++) {\n var part = parts[i];\n if (part) {\n part = util.unescapeFragment(part);\n schema = schema[part];\n if (schema === undefined) break;\n var id;\n if (!PREVENT_SCOPE_CHANGE[part]) {\n id = this._getId(schema);\n if (id) baseId = resolveUrl(baseId, id);\n if (schema.$ref) {\n var $ref = resolveUrl(baseId, schema.$ref);\n var res = resolveSchema.call(this, root, $ref);\n if (res) {\n schema = res.schema;\n root = res.root;\n baseId = res.baseId;\n }\n }\n }\n }\n }\n if (schema !== undefined && schema !== root.schema)\n return { schema: schema, root: root, baseId: baseId };\n}\n\n\nvar SIMPLE_INLINED = util.toHash([\n 'type', 'format', 'pattern',\n 'maxLength', 'minLength',\n 'maxProperties', 'minProperties',\n 'maxItems', 'minItems',\n 'maximum', 'minimum',\n 'uniqueItems', 'multipleOf',\n 'required', 'enum'\n]);\nfunction inlineRef(schema, limit) {\n if (limit === false) return false;\n if (limit === undefined || limit === true) return checkNoRef(schema);\n else if (limit) return countKeys(schema) <= limit;\n}\n\n\nfunction checkNoRef(schema) {\n var item;\n if (Array.isArray(schema)) {\n for (var i=0; i 0) || $propertySch === false : it.util.schemaHasRules($propertySch, it.RULES.all)))) {\n $required[$required.length] = $property;\n }\n }\n }\n } else {\n var $required = $schema;\n }\n }\n if ($isData || $required.length) {\n var $currentErrorPath = it.errorPath,\n $loopRequired = $isData || $required.length >= it.opts.loopRequired,\n $ownProperties = it.opts.ownProperties;\n if ($breakOnError) {\n out += ' var missing' + ($lvl) + '; ';\n if ($loopRequired) {\n if (!$isData) {\n out += ' var ' + ($vSchema) + ' = validate.schema' + ($schemaPath) + '; ';\n }\n var $i = 'i' + $lvl,\n $propertyPath = 'schema' + $lvl + '[' + $i + ']',\n $missingProperty = '\\' + ' + $propertyPath + ' + \\'';\n if (it.opts._errorDataPathProperty) {\n it.errorPath = it.util.getPathExpr($currentErrorPath, $propertyPath, it.opts.jsonPointers);\n }\n out += ' var ' + ($valid) + ' = true; ';\n if ($isData) {\n out += ' if (schema' + ($lvl) + ' === undefined) ' + ($valid) + ' = true; else if (!Array.isArray(schema' + ($lvl) + ')) ' + ($valid) + ' = false; else {';\n }\n out += ' for (var ' + ($i) + ' = 0; ' + ($i) + ' < ' + ($vSchema) + '.length; ' + ($i) + '++) { ' + ($valid) + ' = ' + ($data) + '[' + ($vSchema) + '[' + ($i) + ']] !== undefined ';\n if ($ownProperties) {\n out += ' && Object.prototype.hasOwnProperty.call(' + ($data) + ', ' + ($vSchema) + '[' + ($i) + ']) ';\n }\n out += '; if (!' + ($valid) + ') break; } ';\n if ($isData) {\n out += ' } ';\n }\n out += ' if (!' + ($valid) + ') { ';\n var $$outStack = $$outStack || [];\n $$outStack.push(out);\n out = ''; /* istanbul ignore else */\n if (it.createErrors !== false) {\n out += ' { keyword: \\'' + ('required') + '\\' , dataPath: (dataPath || \\'\\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { missingProperty: \\'' + ($missingProperty) + '\\' } ';\n if (it.opts.messages !== false) {\n out += ' , message: \\'';\n if (it.opts._errorDataPathProperty) {\n out += 'is a required property';\n } else {\n out += 'should have required property \\\\\\'' + ($missingProperty) + '\\\\\\'';\n }\n out += '\\' ';\n }\n if (it.opts.verbose) {\n out += ' , schema: validate.schema' + ($schemaPath) + ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' ';\n }\n out += ' } ';\n } else {\n out += ' {} ';\n }\n var __err = out;\n out = $$outStack.pop();\n if (!it.compositeRule && $breakOnError) {\n /* istanbul ignore if */\n if (it.async) {\n out += ' throw new ValidationError([' + (__err) + ']); ';\n } else {\n out += ' validate.errors = [' + (__err) + ']; return false; ';\n }\n } else {\n out += ' var err = ' + (__err) + '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ';\n }\n out += ' } else { ';\n } else {\n out += ' if ( ';\n var arr2 = $required;\n if (arr2) {\n var $propertyKey, $i = -1,\n l2 = arr2.length - 1;\n while ($i < l2) {\n $propertyKey = arr2[$i += 1];\n if ($i) {\n out += ' || ';\n }\n var $prop = it.util.getProperty($propertyKey),\n $useData = $data + $prop;\n out += ' ( ( ' + ($useData) + ' === undefined ';\n if ($ownProperties) {\n out += ' || ! Object.prototype.hasOwnProperty.call(' + ($data) + ', \\'' + (it.util.escapeQuotes($propertyKey)) + '\\') ';\n }\n out += ') && (missing' + ($lvl) + ' = ' + (it.util.toQuotedString(it.opts.jsonPointers ? $propertyKey : $prop)) + ') ) ';\n }\n }\n out += ') { ';\n var $propertyPath = 'missing' + $lvl,\n $missingProperty = '\\' + ' + $propertyPath + ' + \\'';\n if (it.opts._errorDataPathProperty) {\n it.errorPath = it.opts.jsonPointers ? it.util.getPathExpr($currentErrorPath, $propertyPath, true) : $currentErrorPath + ' + ' + $propertyPath;\n }\n var $$outStack = $$outStack || [];\n $$outStack.push(out);\n out = ''; /* istanbul ignore else */\n if (it.createErrors !== false) {\n out += ' { keyword: \\'' + ('required') + '\\' , dataPath: (dataPath || \\'\\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { missingProperty: \\'' + ($missingProperty) + '\\' } ';\n if (it.opts.messages !== false) {\n out += ' , message: \\'';\n if (it.opts._errorDataPathProperty) {\n out += 'is a required property';\n } else {\n out += 'should have required property \\\\\\'' + ($missingProperty) + '\\\\\\'';\n }\n out += '\\' ';\n }\n if (it.opts.verbose) {\n out += ' , schema: validate.schema' + ($schemaPath) + ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' ';\n }\n out += ' } ';\n } else {\n out += ' {} ';\n }\n var __err = out;\n out = $$outStack.pop();\n if (!it.compositeRule && $breakOnError) {\n /* istanbul ignore if */\n if (it.async) {\n out += ' throw new ValidationError([' + (__err) + ']); ';\n } else {\n out += ' validate.errors = [' + (__err) + ']; return false; ';\n }\n } else {\n out += ' var err = ' + (__err) + '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ';\n }\n out += ' } else { ';\n }\n } else {\n if ($loopRequired) {\n if (!$isData) {\n out += ' var ' + ($vSchema) + ' = validate.schema' + ($schemaPath) + '; ';\n }\n var $i = 'i' + $lvl,\n $propertyPath = 'schema' + $lvl + '[' + $i + ']',\n $missingProperty = '\\' + ' + $propertyPath + ' + \\'';\n if (it.opts._errorDataPathProperty) {\n it.errorPath = it.util.getPathExpr($currentErrorPath, $propertyPath, it.opts.jsonPointers);\n }\n if ($isData) {\n out += ' if (' + ($vSchema) + ' && !Array.isArray(' + ($vSchema) + ')) { var err = '; /* istanbul ignore else */\n if (it.createErrors !== false) {\n out += ' { keyword: \\'' + ('required') + '\\' , dataPath: (dataPath || \\'\\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { missingProperty: \\'' + ($missingProperty) + '\\' } ';\n if (it.opts.messages !== false) {\n out += ' , message: \\'';\n if (it.opts._errorDataPathProperty) {\n out += 'is a required property';\n } else {\n out += 'should have required property \\\\\\'' + ($missingProperty) + '\\\\\\'';\n }\n out += '\\' ';\n }\n if (it.opts.verbose) {\n out += ' , schema: validate.schema' + ($schemaPath) + ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' ';\n }\n out += ' } ';\n } else {\n out += ' {} ';\n }\n out += '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; } else if (' + ($vSchema) + ' !== undefined) { ';\n }\n out += ' for (var ' + ($i) + ' = 0; ' + ($i) + ' < ' + ($vSchema) + '.length; ' + ($i) + '++) { if (' + ($data) + '[' + ($vSchema) + '[' + ($i) + ']] === undefined ';\n if ($ownProperties) {\n out += ' || ! Object.prototype.hasOwnProperty.call(' + ($data) + ', ' + ($vSchema) + '[' + ($i) + ']) ';\n }\n out += ') { var err = '; /* istanbul ignore else */\n if (it.createErrors !== false) {\n out += ' { keyword: \\'' + ('required') + '\\' , dataPath: (dataPath || \\'\\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { missingProperty: \\'' + ($missingProperty) + '\\' } ';\n if (it.opts.messages !== false) {\n out += ' , message: \\'';\n if (it.opts._errorDataPathProperty) {\n out += 'is a required property';\n } else {\n out += 'should have required property \\\\\\'' + ($missingProperty) + '\\\\\\'';\n }\n out += '\\' ';\n }\n if (it.opts.verbose) {\n out += ' , schema: validate.schema' + ($schemaPath) + ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' ';\n }\n out += ' } ';\n } else {\n out += ' {} ';\n }\n out += '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; } } ';\n if ($isData) {\n out += ' } ';\n }\n } else {\n var arr3 = $required;\n if (arr3) {\n var $propertyKey, i3 = -1,\n l3 = arr3.length - 1;\n while (i3 < l3) {\n $propertyKey = arr3[i3 += 1];\n var $prop = it.util.getProperty($propertyKey),\n $missingProperty = it.util.escapeQuotes($propertyKey),\n $useData = $data + $prop;\n if (it.opts._errorDataPathProperty) {\n it.errorPath = it.util.getPath($currentErrorPath, $propertyKey, it.opts.jsonPointers);\n }\n out += ' if ( ' + ($useData) + ' === undefined ';\n if ($ownProperties) {\n out += ' || ! Object.prototype.hasOwnProperty.call(' + ($data) + ', \\'' + (it.util.escapeQuotes($propertyKey)) + '\\') ';\n }\n out += ') { var err = '; /* istanbul ignore else */\n if (it.createErrors !== false) {\n out += ' { keyword: \\'' + ('required') + '\\' , dataPath: (dataPath || \\'\\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { missingProperty: \\'' + ($missingProperty) + '\\' } ';\n if (it.opts.messages !== false) {\n out += ' , message: \\'';\n if (it.opts._errorDataPathProperty) {\n out += 'is a required property';\n } else {\n out += 'should have required property \\\\\\'' + ($missingProperty) + '\\\\\\'';\n }\n out += '\\' ';\n }\n if (it.opts.verbose) {\n out += ' , schema: validate.schema' + ($schemaPath) + ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' ';\n }\n out += ' } ';\n } else {\n out += ' {} ';\n }\n out += '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; } ';\n }\n }\n }\n }\n it.errorPath = $currentErrorPath;\n } else if ($breakOnError) {\n out += ' if (true) {';\n }\n return out;\n}\n","'use strict';\nmodule.exports = function generate_dependencies(it, $keyword, $ruleType) {\n var out = ' ';\n var $lvl = it.level;\n var $dataLvl = it.dataLevel;\n var $schema = it.schema[$keyword];\n var $schemaPath = it.schemaPath + it.util.getProperty($keyword);\n var $errSchemaPath = it.errSchemaPath + '/' + $keyword;\n var $breakOnError = !it.opts.allErrors;\n var $data = 'data' + ($dataLvl || '');\n var $errs = 'errs__' + $lvl;\n var $it = it.util.copy(it);\n var $closingBraces = '';\n $it.level++;\n var $nextValid = 'valid' + $it.level;\n var $schemaDeps = {},\n $propertyDeps = {},\n $ownProperties = it.opts.ownProperties;\n for ($property in $schema) {\n if ($property == '__proto__') continue;\n var $sch = $schema[$property];\n var $deps = Array.isArray($sch) ? $propertyDeps : $schemaDeps;\n $deps[$property] = $sch;\n }\n out += 'var ' + ($errs) + ' = errors;';\n var $currentErrorPath = it.errorPath;\n out += 'var missing' + ($lvl) + ';';\n for (var $property in $propertyDeps) {\n $deps = $propertyDeps[$property];\n if ($deps.length) {\n out += ' if ( ' + ($data) + (it.util.getProperty($property)) + ' !== undefined ';\n if ($ownProperties) {\n out += ' && Object.prototype.hasOwnProperty.call(' + ($data) + ', \\'' + (it.util.escapeQuotes($property)) + '\\') ';\n }\n if ($breakOnError) {\n out += ' && ( ';\n var arr1 = $deps;\n if (arr1) {\n var $propertyKey, $i = -1,\n l1 = arr1.length - 1;\n while ($i < l1) {\n $propertyKey = arr1[$i += 1];\n if ($i) {\n out += ' || ';\n }\n var $prop = it.util.getProperty($propertyKey),\n $useData = $data + $prop;\n out += ' ( ( ' + ($useData) + ' === undefined ';\n if ($ownProperties) {\n out += ' || ! Object.prototype.hasOwnProperty.call(' + ($data) + ', \\'' + (it.util.escapeQuotes($propertyKey)) + '\\') ';\n }\n out += ') && (missing' + ($lvl) + ' = ' + (it.util.toQuotedString(it.opts.jsonPointers ? $propertyKey : $prop)) + ') ) ';\n }\n }\n out += ')) { ';\n var $propertyPath = 'missing' + $lvl,\n $missingProperty = '\\' + ' + $propertyPath + ' + \\'';\n if (it.opts._errorDataPathProperty) {\n it.errorPath = it.opts.jsonPointers ? it.util.getPathExpr($currentErrorPath, $propertyPath, true) : $currentErrorPath + ' + ' + $propertyPath;\n }\n var $$outStack = $$outStack || [];\n $$outStack.push(out);\n out = ''; /* istanbul ignore else */\n if (it.createErrors !== false) {\n out += ' { keyword: \\'' + ('dependencies') + '\\' , dataPath: (dataPath || \\'\\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { property: \\'' + (it.util.escapeQuotes($property)) + '\\', missingProperty: \\'' + ($missingProperty) + '\\', depsCount: ' + ($deps.length) + ', deps: \\'' + (it.util.escapeQuotes($deps.length == 1 ? $deps[0] : $deps.join(\", \"))) + '\\' } ';\n if (it.opts.messages !== false) {\n out += ' , message: \\'should have ';\n if ($deps.length == 1) {\n out += 'property ' + (it.util.escapeQuotes($deps[0]));\n } else {\n out += 'properties ' + (it.util.escapeQuotes($deps.join(\", \")));\n }\n out += ' when property ' + (it.util.escapeQuotes($property)) + ' is present\\' ';\n }\n if (it.opts.verbose) {\n out += ' , schema: validate.schema' + ($schemaPath) + ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' ';\n }\n out += ' } ';\n } else {\n out += ' {} ';\n }\n var __err = out;\n out = $$outStack.pop();\n if (!it.compositeRule && $breakOnError) {\n /* istanbul ignore if */\n if (it.async) {\n out += ' throw new ValidationError([' + (__err) + ']); ';\n } else {\n out += ' validate.errors = [' + (__err) + ']; return false; ';\n }\n } else {\n out += ' var err = ' + (__err) + '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ';\n }\n } else {\n out += ' ) { ';\n var arr2 = $deps;\n if (arr2) {\n var $propertyKey, i2 = -1,\n l2 = arr2.length - 1;\n while (i2 < l2) {\n $propertyKey = arr2[i2 += 1];\n var $prop = it.util.getProperty($propertyKey),\n $missingProperty = it.util.escapeQuotes($propertyKey),\n $useData = $data + $prop;\n if (it.opts._errorDataPathProperty) {\n it.errorPath = it.util.getPath($currentErrorPath, $propertyKey, it.opts.jsonPointers);\n }\n out += ' if ( ' + ($useData) + ' === undefined ';\n if ($ownProperties) {\n out += ' || ! Object.prototype.hasOwnProperty.call(' + ($data) + ', \\'' + (it.util.escapeQuotes($propertyKey)) + '\\') ';\n }\n out += ') { var err = '; /* istanbul ignore else */\n if (it.createErrors !== false) {\n out += ' { keyword: \\'' + ('dependencies') + '\\' , dataPath: (dataPath || \\'\\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { property: \\'' + (it.util.escapeQuotes($property)) + '\\', missingProperty: \\'' + ($missingProperty) + '\\', depsCount: ' + ($deps.length) + ', deps: \\'' + (it.util.escapeQuotes($deps.length == 1 ? $deps[0] : $deps.join(\", \"))) + '\\' } ';\n if (it.opts.messages !== false) {\n out += ' , message: \\'should have ';\n if ($deps.length == 1) {\n out += 'property ' + (it.util.escapeQuotes($deps[0]));\n } else {\n out += 'properties ' + (it.util.escapeQuotes($deps.join(\", \")));\n }\n out += ' when property ' + (it.util.escapeQuotes($property)) + ' is present\\' ';\n }\n if (it.opts.verbose) {\n out += ' , schema: validate.schema' + ($schemaPath) + ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' ';\n }\n out += ' } ';\n } else {\n out += ' {} ';\n }\n out += '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; } ';\n }\n }\n }\n out += ' } ';\n if ($breakOnError) {\n $closingBraces += '}';\n out += ' else { ';\n }\n }\n }\n it.errorPath = $currentErrorPath;\n var $currentBaseId = $it.baseId;\n for (var $property in $schemaDeps) {\n var $sch = $schemaDeps[$property];\n if ((it.opts.strictKeywords ? (typeof $sch == 'object' && Object.keys($sch).length > 0) || $sch === false : it.util.schemaHasRules($sch, it.RULES.all))) {\n out += ' ' + ($nextValid) + ' = true; if ( ' + ($data) + (it.util.getProperty($property)) + ' !== undefined ';\n if ($ownProperties) {\n out += ' && Object.prototype.hasOwnProperty.call(' + ($data) + ', \\'' + (it.util.escapeQuotes($property)) + '\\') ';\n }\n out += ') { ';\n $it.schema = $sch;\n $it.schemaPath = $schemaPath + it.util.getProperty($property);\n $it.errSchemaPath = $errSchemaPath + '/' + it.util.escapeFragment($property);\n out += ' ' + (it.validate($it)) + ' ';\n $it.baseId = $currentBaseId;\n out += ' } ';\n if ($breakOnError) {\n out += ' if (' + ($nextValid) + ') { ';\n $closingBraces += '}';\n }\n }\n }\n if ($breakOnError) {\n out += ' ' + ($closingBraces) + ' if (' + ($errs) + ' == errors) {';\n }\n return out;\n}\n","'use strict';\n\nvar util = require('./util');\n\nmodule.exports = SchemaObject;\n\nfunction SchemaObject(obj) {\n util.copy(obj, this);\n}\n","'use strict';\nmodule.exports = function generate_properties(it, $keyword, $ruleType) {\n var out = ' ';\n var $lvl = it.level;\n var $dataLvl = it.dataLevel;\n var $schema = it.schema[$keyword];\n var $schemaPath = it.schemaPath + it.util.getProperty($keyword);\n var $errSchemaPath = it.errSchemaPath + '/' + $keyword;\n var $breakOnError = !it.opts.allErrors;\n var $data = 'data' + ($dataLvl || '');\n var $errs = 'errs__' + $lvl;\n var $it = it.util.copy(it);\n var $closingBraces = '';\n $it.level++;\n var $nextValid = 'valid' + $it.level;\n var $key = 'key' + $lvl,\n $idx = 'idx' + $lvl,\n $dataNxt = $it.dataLevel = it.dataLevel + 1,\n $nextData = 'data' + $dataNxt,\n $dataProperties = 'dataProperties' + $lvl;\n var $schemaKeys = Object.keys($schema || {}).filter(notProto),\n $pProperties = it.schema.patternProperties || {},\n $pPropertyKeys = Object.keys($pProperties).filter(notProto),\n $aProperties = it.schema.additionalProperties,\n $someProperties = $schemaKeys.length || $pPropertyKeys.length,\n $noAdditional = $aProperties === false,\n $additionalIsSchema = typeof $aProperties == 'object' && Object.keys($aProperties).length,\n $removeAdditional = it.opts.removeAdditional,\n $checkAdditional = $noAdditional || $additionalIsSchema || $removeAdditional,\n $ownProperties = it.opts.ownProperties,\n $currentBaseId = it.baseId;\n var $required = it.schema.required;\n if ($required && !(it.opts.$data && $required.$data) && $required.length < it.opts.loopRequired) {\n var $requiredHash = it.util.toHash($required);\n }\n\n function notProto(p) {\n return p !== '__proto__';\n }\n out += 'var ' + ($errs) + ' = errors;var ' + ($nextValid) + ' = true;';\n if ($ownProperties) {\n out += ' var ' + ($dataProperties) + ' = undefined;';\n }\n if ($checkAdditional) {\n if ($ownProperties) {\n out += ' ' + ($dataProperties) + ' = ' + ($dataProperties) + ' || Object.keys(' + ($data) + '); for (var ' + ($idx) + '=0; ' + ($idx) + '<' + ($dataProperties) + '.length; ' + ($idx) + '++) { var ' + ($key) + ' = ' + ($dataProperties) + '[' + ($idx) + ']; ';\n } else {\n out += ' for (var ' + ($key) + ' in ' + ($data) + ') { ';\n }\n if ($someProperties) {\n out += ' var isAdditional' + ($lvl) + ' = !(false ';\n if ($schemaKeys.length) {\n if ($schemaKeys.length > 8) {\n out += ' || validate.schema' + ($schemaPath) + '.hasOwnProperty(' + ($key) + ') ';\n } else {\n var arr1 = $schemaKeys;\n if (arr1) {\n var $propertyKey, i1 = -1,\n l1 = arr1.length - 1;\n while (i1 < l1) {\n $propertyKey = arr1[i1 += 1];\n out += ' || ' + ($key) + ' == ' + (it.util.toQuotedString($propertyKey)) + ' ';\n }\n }\n }\n }\n if ($pPropertyKeys.length) {\n var arr2 = $pPropertyKeys;\n if (arr2) {\n var $pProperty, $i = -1,\n l2 = arr2.length - 1;\n while ($i < l2) {\n $pProperty = arr2[$i += 1];\n out += ' || ' + (it.usePattern($pProperty)) + '.test(' + ($key) + ') ';\n }\n }\n }\n out += ' ); if (isAdditional' + ($lvl) + ') { ';\n }\n if ($removeAdditional == 'all') {\n out += ' delete ' + ($data) + '[' + ($key) + ']; ';\n } else {\n var $currentErrorPath = it.errorPath;\n var $additionalProperty = '\\' + ' + $key + ' + \\'';\n if (it.opts._errorDataPathProperty) {\n it.errorPath = it.util.getPathExpr(it.errorPath, $key, it.opts.jsonPointers);\n }\n if ($noAdditional) {\n if ($removeAdditional) {\n out += ' delete ' + ($data) + '[' + ($key) + ']; ';\n } else {\n out += ' ' + ($nextValid) + ' = false; ';\n var $currErrSchemaPath = $errSchemaPath;\n $errSchemaPath = it.errSchemaPath + '/additionalProperties';\n var $$outStack = $$outStack || [];\n $$outStack.push(out);\n out = ''; /* istanbul ignore else */\n if (it.createErrors !== false) {\n out += ' { keyword: \\'' + ('additionalProperties') + '\\' , dataPath: (dataPath || \\'\\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { additionalProperty: \\'' + ($additionalProperty) + '\\' } ';\n if (it.opts.messages !== false) {\n out += ' , message: \\'';\n if (it.opts._errorDataPathProperty) {\n out += 'is an invalid additional property';\n } else {\n out += 'should NOT have additional properties';\n }\n out += '\\' ';\n }\n if (it.opts.verbose) {\n out += ' , schema: false , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' ';\n }\n out += ' } ';\n } else {\n out += ' {} ';\n }\n var __err = out;\n out = $$outStack.pop();\n if (!it.compositeRule && $breakOnError) {\n /* istanbul ignore if */\n if (it.async) {\n out += ' throw new ValidationError([' + (__err) + ']); ';\n } else {\n out += ' validate.errors = [' + (__err) + ']; return false; ';\n }\n } else {\n out += ' var err = ' + (__err) + '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ';\n }\n $errSchemaPath = $currErrSchemaPath;\n if ($breakOnError) {\n out += ' break; ';\n }\n }\n } else if ($additionalIsSchema) {\n if ($removeAdditional == 'failing') {\n out += ' var ' + ($errs) + ' = errors; ';\n var $wasComposite = it.compositeRule;\n it.compositeRule = $it.compositeRule = true;\n $it.schema = $aProperties;\n $it.schemaPath = it.schemaPath + '.additionalProperties';\n $it.errSchemaPath = it.errSchemaPath + '/additionalProperties';\n $it.errorPath = it.opts._errorDataPathProperty ? it.errorPath : it.util.getPathExpr(it.errorPath, $key, it.opts.jsonPointers);\n var $passData = $data + '[' + $key + ']';\n $it.dataPathArr[$dataNxt] = $key;\n var $code = it.validate($it);\n $it.baseId = $currentBaseId;\n if (it.util.varOccurences($code, $nextData) < 2) {\n out += ' ' + (it.util.varReplace($code, $nextData, $passData)) + ' ';\n } else {\n out += ' var ' + ($nextData) + ' = ' + ($passData) + '; ' + ($code) + ' ';\n }\n out += ' if (!' + ($nextValid) + ') { errors = ' + ($errs) + '; if (validate.errors !== null) { if (errors) validate.errors.length = errors; else validate.errors = null; } delete ' + ($data) + '[' + ($key) + ']; } ';\n it.compositeRule = $it.compositeRule = $wasComposite;\n } else {\n $it.schema = $aProperties;\n $it.schemaPath = it.schemaPath + '.additionalProperties';\n $it.errSchemaPath = it.errSchemaPath + '/additionalProperties';\n $it.errorPath = it.opts._errorDataPathProperty ? it.errorPath : it.util.getPathExpr(it.errorPath, $key, it.opts.jsonPointers);\n var $passData = $data + '[' + $key + ']';\n $it.dataPathArr[$dataNxt] = $key;\n var $code = it.validate($it);\n $it.baseId = $currentBaseId;\n if (it.util.varOccurences($code, $nextData) < 2) {\n out += ' ' + (it.util.varReplace($code, $nextData, $passData)) + ' ';\n } else {\n out += ' var ' + ($nextData) + ' = ' + ($passData) + '; ' + ($code) + ' ';\n }\n if ($breakOnError) {\n out += ' if (!' + ($nextValid) + ') break; ';\n }\n }\n }\n it.errorPath = $currentErrorPath;\n }\n if ($someProperties) {\n out += ' } ';\n }\n out += ' } ';\n if ($breakOnError) {\n out += ' if (' + ($nextValid) + ') { ';\n $closingBraces += '}';\n }\n }\n var $useDefaults = it.opts.useDefaults && !it.compositeRule;\n if ($schemaKeys.length) {\n var arr3 = $schemaKeys;\n if (arr3) {\n var $propertyKey, i3 = -1,\n l3 = arr3.length - 1;\n while (i3 < l3) {\n $propertyKey = arr3[i3 += 1];\n var $sch = $schema[$propertyKey];\n if ((it.opts.strictKeywords ? (typeof $sch == 'object' && Object.keys($sch).length > 0) || $sch === false : it.util.schemaHasRules($sch, it.RULES.all))) {\n var $prop = it.util.getProperty($propertyKey),\n $passData = $data + $prop,\n $hasDefault = $useDefaults && $sch.default !== undefined;\n $it.schema = $sch;\n $it.schemaPath = $schemaPath + $prop;\n $it.errSchemaPath = $errSchemaPath + '/' + it.util.escapeFragment($propertyKey);\n $it.errorPath = it.util.getPath(it.errorPath, $propertyKey, it.opts.jsonPointers);\n $it.dataPathArr[$dataNxt] = it.util.toQuotedString($propertyKey);\n var $code = it.validate($it);\n $it.baseId = $currentBaseId;\n if (it.util.varOccurences($code, $nextData) < 2) {\n $code = it.util.varReplace($code, $nextData, $passData);\n var $useData = $passData;\n } else {\n var $useData = $nextData;\n out += ' var ' + ($nextData) + ' = ' + ($passData) + '; ';\n }\n if ($hasDefault) {\n out += ' ' + ($code) + ' ';\n } else {\n if ($requiredHash && $requiredHash[$propertyKey]) {\n out += ' if ( ' + ($useData) + ' === undefined ';\n if ($ownProperties) {\n out += ' || ! Object.prototype.hasOwnProperty.call(' + ($data) + ', \\'' + (it.util.escapeQuotes($propertyKey)) + '\\') ';\n }\n out += ') { ' + ($nextValid) + ' = false; ';\n var $currentErrorPath = it.errorPath,\n $currErrSchemaPath = $errSchemaPath,\n $missingProperty = it.util.escapeQuotes($propertyKey);\n if (it.opts._errorDataPathProperty) {\n it.errorPath = it.util.getPath($currentErrorPath, $propertyKey, it.opts.jsonPointers);\n }\n $errSchemaPath = it.errSchemaPath + '/required';\n var $$outStack = $$outStack || [];\n $$outStack.push(out);\n out = ''; /* istanbul ignore else */\n if (it.createErrors !== false) {\n out += ' { keyword: \\'' + ('required') + '\\' , dataPath: (dataPath || \\'\\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { missingProperty: \\'' + ($missingProperty) + '\\' } ';\n if (it.opts.messages !== false) {\n out += ' , message: \\'';\n if (it.opts._errorDataPathProperty) {\n out += 'is a required property';\n } else {\n out += 'should have required property \\\\\\'' + ($missingProperty) + '\\\\\\'';\n }\n out += '\\' ';\n }\n if (it.opts.verbose) {\n out += ' , schema: validate.schema' + ($schemaPath) + ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' ';\n }\n out += ' } ';\n } else {\n out += ' {} ';\n }\n var __err = out;\n out = $$outStack.pop();\n if (!it.compositeRule && $breakOnError) {\n /* istanbul ignore if */\n if (it.async) {\n out += ' throw new ValidationError([' + (__err) + ']); ';\n } else {\n out += ' validate.errors = [' + (__err) + ']; return false; ';\n }\n } else {\n out += ' var err = ' + (__err) + '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ';\n }\n $errSchemaPath = $currErrSchemaPath;\n it.errorPath = $currentErrorPath;\n out += ' } else { ';\n } else {\n if ($breakOnError) {\n out += ' if ( ' + ($useData) + ' === undefined ';\n if ($ownProperties) {\n out += ' || ! Object.prototype.hasOwnProperty.call(' + ($data) + ', \\'' + (it.util.escapeQuotes($propertyKey)) + '\\') ';\n }\n out += ') { ' + ($nextValid) + ' = true; } else { ';\n } else {\n out += ' if (' + ($useData) + ' !== undefined ';\n if ($ownProperties) {\n out += ' && Object.prototype.hasOwnProperty.call(' + ($data) + ', \\'' + (it.util.escapeQuotes($propertyKey)) + '\\') ';\n }\n out += ' ) { ';\n }\n }\n out += ' ' + ($code) + ' } ';\n }\n }\n if ($breakOnError) {\n out += ' if (' + ($nextValid) + ') { ';\n $closingBraces += '}';\n }\n }\n }\n }\n if ($pPropertyKeys.length) {\n var arr4 = $pPropertyKeys;\n if (arr4) {\n var $pProperty, i4 = -1,\n l4 = arr4.length - 1;\n while (i4 < l4) {\n $pProperty = arr4[i4 += 1];\n var $sch = $pProperties[$pProperty];\n if ((it.opts.strictKeywords ? (typeof $sch == 'object' && Object.keys($sch).length > 0) || $sch === false : it.util.schemaHasRules($sch, it.RULES.all))) {\n $it.schema = $sch;\n $it.schemaPath = it.schemaPath + '.patternProperties' + it.util.getProperty($pProperty);\n $it.errSchemaPath = it.errSchemaPath + '/patternProperties/' + it.util.escapeFragment($pProperty);\n if ($ownProperties) {\n out += ' ' + ($dataProperties) + ' = ' + ($dataProperties) + ' || Object.keys(' + ($data) + '); for (var ' + ($idx) + '=0; ' + ($idx) + '<' + ($dataProperties) + '.length; ' + ($idx) + '++) { var ' + ($key) + ' = ' + ($dataProperties) + '[' + ($idx) + ']; ';\n } else {\n out += ' for (var ' + ($key) + ' in ' + ($data) + ') { ';\n }\n out += ' if (' + (it.usePattern($pProperty)) + '.test(' + ($key) + ')) { ';\n $it.errorPath = it.util.getPathExpr(it.errorPath, $key, it.opts.jsonPointers);\n var $passData = $data + '[' + $key + ']';\n $it.dataPathArr[$dataNxt] = $key;\n var $code = it.validate($it);\n $it.baseId = $currentBaseId;\n if (it.util.varOccurences($code, $nextData) < 2) {\n out += ' ' + (it.util.varReplace($code, $nextData, $passData)) + ' ';\n } else {\n out += ' var ' + ($nextData) + ' = ' + ($passData) + '; ' + ($code) + ' ';\n }\n if ($breakOnError) {\n out += ' if (!' + ($nextValid) + ') break; ';\n }\n out += ' } ';\n if ($breakOnError) {\n out += ' else ' + ($nextValid) + ' = true; ';\n }\n out += ' } ';\n if ($breakOnError) {\n out += ' if (' + ($nextValid) + ') { ';\n $closingBraces += '}';\n }\n }\n }\n }\n }\n if ($breakOnError) {\n out += ' ' + ($closingBraces) + ' if (' + ($errs) + ' == errors) {';\n }\n return out;\n}\n","'use strict';\nmodule.exports = function generate__limit(it, $keyword, $ruleType) {\n var out = ' ';\n var $lvl = it.level;\n var $dataLvl = it.dataLevel;\n var $schema = it.schema[$keyword];\n var $schemaPath = it.schemaPath + it.util.getProperty($keyword);\n var $errSchemaPath = it.errSchemaPath + '/' + $keyword;\n var $breakOnError = !it.opts.allErrors;\n var $errorKeyword;\n var $data = 'data' + ($dataLvl || '');\n var $isData = it.opts.$data && $schema && $schema.$data,\n $schemaValue;\n if ($isData) {\n out += ' var schema' + ($lvl) + ' = ' + (it.util.getData($schema.$data, $dataLvl, it.dataPathArr)) + '; ';\n $schemaValue = 'schema' + $lvl;\n } else {\n $schemaValue = $schema;\n }\n var $isMax = $keyword == 'maximum',\n $exclusiveKeyword = $isMax ? 'exclusiveMaximum' : 'exclusiveMinimum',\n $schemaExcl = it.schema[$exclusiveKeyword],\n $isDataExcl = it.opts.$data && $schemaExcl && $schemaExcl.$data,\n $op = $isMax ? '<' : '>',\n $notOp = $isMax ? '>' : '<',\n $errorKeyword = undefined;\n if (!($isData || typeof $schema == 'number' || $schema === undefined)) {\n throw new Error($keyword + ' must be number');\n }\n if (!($isDataExcl || $schemaExcl === undefined || typeof $schemaExcl == 'number' || typeof $schemaExcl == 'boolean')) {\n throw new Error($exclusiveKeyword + ' must be number or boolean');\n }\n if ($isDataExcl) {\n var $schemaValueExcl = it.util.getData($schemaExcl.$data, $dataLvl, it.dataPathArr),\n $exclusive = 'exclusive' + $lvl,\n $exclType = 'exclType' + $lvl,\n $exclIsNumber = 'exclIsNumber' + $lvl,\n $opExpr = 'op' + $lvl,\n $opStr = '\\' + ' + $opExpr + ' + \\'';\n out += ' var schemaExcl' + ($lvl) + ' = ' + ($schemaValueExcl) + '; ';\n $schemaValueExcl = 'schemaExcl' + $lvl;\n out += ' var ' + ($exclusive) + '; var ' + ($exclType) + ' = typeof ' + ($schemaValueExcl) + '; if (' + ($exclType) + ' != \\'boolean\\' && ' + ($exclType) + ' != \\'undefined\\' && ' + ($exclType) + ' != \\'number\\') { ';\n var $errorKeyword = $exclusiveKeyword;\n var $$outStack = $$outStack || [];\n $$outStack.push(out);\n out = ''; /* istanbul ignore else */\n if (it.createErrors !== false) {\n out += ' { keyword: \\'' + ($errorKeyword || '_exclusiveLimit') + '\\' , dataPath: (dataPath || \\'\\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: {} ';\n if (it.opts.messages !== false) {\n out += ' , message: \\'' + ($exclusiveKeyword) + ' should be boolean\\' ';\n }\n if (it.opts.verbose) {\n out += ' , schema: validate.schema' + ($schemaPath) + ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' ';\n }\n out += ' } ';\n } else {\n out += ' {} ';\n }\n var __err = out;\n out = $$outStack.pop();\n if (!it.compositeRule && $breakOnError) {\n /* istanbul ignore if */\n if (it.async) {\n out += ' throw new ValidationError([' + (__err) + ']); ';\n } else {\n out += ' validate.errors = [' + (__err) + ']; return false; ';\n }\n } else {\n out += ' var err = ' + (__err) + '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ';\n }\n out += ' } else if ( ';\n if ($isData) {\n out += ' (' + ($schemaValue) + ' !== undefined && typeof ' + ($schemaValue) + ' != \\'number\\') || ';\n }\n out += ' ' + ($exclType) + ' == \\'number\\' ? ( (' + ($exclusive) + ' = ' + ($schemaValue) + ' === undefined || ' + ($schemaValueExcl) + ' ' + ($op) + '= ' + ($schemaValue) + ') ? ' + ($data) + ' ' + ($notOp) + '= ' + ($schemaValueExcl) + ' : ' + ($data) + ' ' + ($notOp) + ' ' + ($schemaValue) + ' ) : ( (' + ($exclusive) + ' = ' + ($schemaValueExcl) + ' === true) ? ' + ($data) + ' ' + ($notOp) + '= ' + ($schemaValue) + ' : ' + ($data) + ' ' + ($notOp) + ' ' + ($schemaValue) + ' ) || ' + ($data) + ' !== ' + ($data) + ') { var op' + ($lvl) + ' = ' + ($exclusive) + ' ? \\'' + ($op) + '\\' : \\'' + ($op) + '=\\'; ';\n if ($schema === undefined) {\n $errorKeyword = $exclusiveKeyword;\n $errSchemaPath = it.errSchemaPath + '/' + $exclusiveKeyword;\n $schemaValue = $schemaValueExcl;\n $isData = $isDataExcl;\n }\n } else {\n var $exclIsNumber = typeof $schemaExcl == 'number',\n $opStr = $op;\n if ($exclIsNumber && $isData) {\n var $opExpr = '\\'' + $opStr + '\\'';\n out += ' if ( ';\n if ($isData) {\n out += ' (' + ($schemaValue) + ' !== undefined && typeof ' + ($schemaValue) + ' != \\'number\\') || ';\n }\n out += ' ( ' + ($schemaValue) + ' === undefined || ' + ($schemaExcl) + ' ' + ($op) + '= ' + ($schemaValue) + ' ? ' + ($data) + ' ' + ($notOp) + '= ' + ($schemaExcl) + ' : ' + ($data) + ' ' + ($notOp) + ' ' + ($schemaValue) + ' ) || ' + ($data) + ' !== ' + ($data) + ') { ';\n } else {\n if ($exclIsNumber && $schema === undefined) {\n $exclusive = true;\n $errorKeyword = $exclusiveKeyword;\n $errSchemaPath = it.errSchemaPath + '/' + $exclusiveKeyword;\n $schemaValue = $schemaExcl;\n $notOp += '=';\n } else {\n if ($exclIsNumber) $schemaValue = Math[$isMax ? 'min' : 'max']($schemaExcl, $schema);\n if ($schemaExcl === ($exclIsNumber ? $schemaValue : true)) {\n $exclusive = true;\n $errorKeyword = $exclusiveKeyword;\n $errSchemaPath = it.errSchemaPath + '/' + $exclusiveKeyword;\n $notOp += '=';\n } else {\n $exclusive = false;\n $opStr += '=';\n }\n }\n var $opExpr = '\\'' + $opStr + '\\'';\n out += ' if ( ';\n if ($isData) {\n out += ' (' + ($schemaValue) + ' !== undefined && typeof ' + ($schemaValue) + ' != \\'number\\') || ';\n }\n out += ' ' + ($data) + ' ' + ($notOp) + ' ' + ($schemaValue) + ' || ' + ($data) + ' !== ' + ($data) + ') { ';\n }\n }\n $errorKeyword = $errorKeyword || $keyword;\n var $$outStack = $$outStack || [];\n $$outStack.push(out);\n out = ''; /* istanbul ignore else */\n if (it.createErrors !== false) {\n out += ' { keyword: \\'' + ($errorKeyword || '_limit') + '\\' , dataPath: (dataPath || \\'\\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { comparison: ' + ($opExpr) + ', limit: ' + ($schemaValue) + ', exclusive: ' + ($exclusive) + ' } ';\n if (it.opts.messages !== false) {\n out += ' , message: \\'should be ' + ($opStr) + ' ';\n if ($isData) {\n out += '\\' + ' + ($schemaValue);\n } else {\n out += '' + ($schemaValue) + '\\'';\n }\n }\n if (it.opts.verbose) {\n out += ' , schema: ';\n if ($isData) {\n out += 'validate.schema' + ($schemaPath);\n } else {\n out += '' + ($schema);\n }\n out += ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' ';\n }\n out += ' } ';\n } else {\n out += ' {} ';\n }\n var __err = out;\n out = $$outStack.pop();\n if (!it.compositeRule && $breakOnError) {\n /* istanbul ignore if */\n if (it.async) {\n out += ' throw new ValidationError([' + (__err) + ']); ';\n } else {\n out += ' validate.errors = [' + (__err) + ']; return false; ';\n }\n } else {\n out += ' var err = ' + (__err) + '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ';\n }\n out += ' } ';\n if ($breakOnError) {\n out += ' else { ';\n }\n return out;\n}\n","'use strict';\n\nvar ruleModules = require('../dotjs')\n , toHash = require('./util').toHash;\n\nmodule.exports = function rules() {\n var RULES = [\n { type: 'number',\n rules: [ { 'maximum': ['exclusiveMaximum'] },\n { 'minimum': ['exclusiveMinimum'] }, 'multipleOf', 'format'] },\n { type: 'string',\n rules: [ 'maxLength', 'minLength', 'pattern', 'format' ] },\n { type: 'array',\n rules: [ 'maxItems', 'minItems', 'items', 'contains', 'uniqueItems' ] },\n { type: 'object',\n rules: [ 'maxProperties', 'minProperties', 'required', 'dependencies', 'propertyNames',\n { 'properties': ['additionalProperties', 'patternProperties'] } ] },\n { rules: [ '$ref', 'const', 'enum', 'not', 'anyOf', 'oneOf', 'allOf', 'if' ] }\n ];\n\n var ALL = [ 'type', '$comment' ];\n var KEYWORDS = [\n '$schema', '$id', 'id', '$data', '$async', 'title',\n 'description', 'default', 'definitions',\n 'examples', 'readOnly', 'writeOnly',\n 'contentMediaType', 'contentEncoding',\n 'additionalItems', 'then', 'else'\n ];\n var TYPES = [ 'number', 'integer', 'string', 'array', 'object', 'boolean', 'null' ];\n RULES.all = toHash(ALL);\n RULES.types = toHash(TYPES);\n\n RULES.forEach(function (group) {\n group.rules = group.rules.map(function (keyword) {\n var implKeywords;\n if (typeof keyword == 'object') {\n var key = Object.keys(keyword)[0];\n implKeywords = keyword[key];\n keyword = key;\n implKeywords.forEach(function (k) {\n ALL.push(k);\n RULES.all[k] = true;\n });\n }\n ALL.push(keyword);\n var rule = RULES.all[keyword] = {\n keyword: keyword,\n code: ruleModules[keyword],\n implements: implKeywords\n };\n return rule;\n });\n\n RULES.all.$comment = {\n keyword: '$comment',\n code: ruleModules.$comment\n };\n\n if (group.type) RULES.types[group.type] = group;\n });\n\n RULES.keywords = toHash(ALL.concat(KEYWORDS));\n RULES.custom = {};\n\n return RULES;\n};\n","'use strict';\nmodule.exports = function generate_uniqueItems(it, $keyword, $ruleType) {\n var out = ' ';\n var $lvl = it.level;\n var $dataLvl = it.dataLevel;\n var $schema = it.schema[$keyword];\n var $schemaPath = it.schemaPath + it.util.getProperty($keyword);\n var $errSchemaPath = it.errSchemaPath + '/' + $keyword;\n var $breakOnError = !it.opts.allErrors;\n var $data = 'data' + ($dataLvl || '');\n var $valid = 'valid' + $lvl;\n var $isData = it.opts.$data && $schema && $schema.$data,\n $schemaValue;\n if ($isData) {\n out += ' var schema' + ($lvl) + ' = ' + (it.util.getData($schema.$data, $dataLvl, it.dataPathArr)) + '; ';\n $schemaValue = 'schema' + $lvl;\n } else {\n $schemaValue = $schema;\n }\n if (($schema || $isData) && it.opts.uniqueItems !== false) {\n if ($isData) {\n out += ' var ' + ($valid) + '; if (' + ($schemaValue) + ' === false || ' + ($schemaValue) + ' === undefined) ' + ($valid) + ' = true; else if (typeof ' + ($schemaValue) + ' != \\'boolean\\') ' + ($valid) + ' = false; else { ';\n }\n out += ' var i = ' + ($data) + '.length , ' + ($valid) + ' = true , j; if (i > 1) { ';\n var $itemType = it.schema.items && it.schema.items.type,\n $typeIsArray = Array.isArray($itemType);\n if (!$itemType || $itemType == 'object' || $itemType == 'array' || ($typeIsArray && ($itemType.indexOf('object') >= 0 || $itemType.indexOf('array') >= 0))) {\n out += ' outer: for (;i--;) { for (j = i; j--;) { if (equal(' + ($data) + '[i], ' + ($data) + '[j])) { ' + ($valid) + ' = false; break outer; } } } ';\n } else {\n out += ' var itemIndices = {}, item; for (;i--;) { var item = ' + ($data) + '[i]; ';\n var $method = 'checkDataType' + ($typeIsArray ? 's' : '');\n out += ' if (' + (it.util[$method]($itemType, 'item', it.opts.strictNumbers, true)) + ') continue; ';\n if ($typeIsArray) {\n out += ' if (typeof item == \\'string\\') item = \\'\"\\' + item; ';\n }\n out += ' if (typeof itemIndices[item] == \\'number\\') { ' + ($valid) + ' = false; j = itemIndices[item]; break; } itemIndices[item] = i; } ';\n }\n out += ' } ';\n if ($isData) {\n out += ' } ';\n }\n out += ' if (!' + ($valid) + ') { ';\n var $$outStack = $$outStack || [];\n $$outStack.push(out);\n out = ''; /* istanbul ignore else */\n if (it.createErrors !== false) {\n out += ' { keyword: \\'' + ('uniqueItems') + '\\' , dataPath: (dataPath || \\'\\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { i: i, j: j } ';\n if (it.opts.messages !== false) {\n out += ' , message: \\'should NOT have duplicate items (items ## \\' + j + \\' and \\' + i + \\' are identical)\\' ';\n }\n if (it.opts.verbose) {\n out += ' , schema: ';\n if ($isData) {\n out += 'validate.schema' + ($schemaPath);\n } else {\n out += '' + ($schema);\n }\n out += ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' ';\n }\n out += ' } ';\n } else {\n out += ' {} ';\n }\n var __err = out;\n out = $$outStack.pop();\n if (!it.compositeRule && $breakOnError) {\n /* istanbul ignore if */\n if (it.async) {\n out += ' throw new ValidationError([' + (__err) + ']); ';\n } else {\n out += ' validate.errors = [' + (__err) + ']; return false; ';\n }\n } else {\n out += ' var err = ' + (__err) + '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ';\n }\n out += ' } ';\n if ($breakOnError) {\n out += ' else { ';\n }\n } else {\n if ($breakOnError) {\n out += ' if (true) { ';\n }\n }\n return out;\n}\n","'use strict';\nmodule.exports = function generate_validate(it, $keyword, $ruleType) {\n var out = '';\n var $async = it.schema.$async === true,\n $refKeywords = it.util.schemaHasRulesExcept(it.schema, it.RULES.all, '$ref'),\n $id = it.self._getId(it.schema);\n if (it.opts.strictKeywords) {\n var $unknownKwd = it.util.schemaUnknownRules(it.schema, it.RULES.keywords);\n if ($unknownKwd) {\n var $keywordsMsg = 'unknown keyword: ' + $unknownKwd;\n if (it.opts.strictKeywords === 'log') it.logger.warn($keywordsMsg);\n else throw new Error($keywordsMsg);\n }\n }\n if (it.isTop) {\n out += ' var validate = ';\n if ($async) {\n it.async = true;\n out += 'async ';\n }\n out += 'function(data, dataPath, parentData, parentDataProperty, rootData) { \\'use strict\\'; ';\n if ($id && (it.opts.sourceCode || it.opts.processCode)) {\n out += ' ' + ('/\\*# sourceURL=' + $id + ' */') + ' ';\n }\n }\n if (typeof it.schema == 'boolean' || !($refKeywords || it.schema.$ref)) {\n var $keyword = 'false schema';\n var $lvl = it.level;\n var $dataLvl = it.dataLevel;\n var $schema = it.schema[$keyword];\n var $schemaPath = it.schemaPath + it.util.getProperty($keyword);\n var $errSchemaPath = it.errSchemaPath + '/' + $keyword;\n var $breakOnError = !it.opts.allErrors;\n var $errorKeyword;\n var $data = 'data' + ($dataLvl || '');\n var $valid = 'valid' + $lvl;\n if (it.schema === false) {\n if (it.isTop) {\n $breakOnError = true;\n } else {\n out += ' var ' + ($valid) + ' = false; ';\n }\n var $$outStack = $$outStack || [];\n $$outStack.push(out);\n out = ''; /* istanbul ignore else */\n if (it.createErrors !== false) {\n out += ' { keyword: \\'' + ($errorKeyword || 'false schema') + '\\' , dataPath: (dataPath || \\'\\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: {} ';\n if (it.opts.messages !== false) {\n out += ' , message: \\'boolean schema is false\\' ';\n }\n if (it.opts.verbose) {\n out += ' , schema: false , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' ';\n }\n out += ' } ';\n } else {\n out += ' {} ';\n }\n var __err = out;\n out = $$outStack.pop();\n if (!it.compositeRule && $breakOnError) {\n /* istanbul ignore if */\n if (it.async) {\n out += ' throw new ValidationError([' + (__err) + ']); ';\n } else {\n out += ' validate.errors = [' + (__err) + ']; return false; ';\n }\n } else {\n out += ' var err = ' + (__err) + '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ';\n }\n } else {\n if (it.isTop) {\n if ($async) {\n out += ' return data; ';\n } else {\n out += ' validate.errors = null; return true; ';\n }\n } else {\n out += ' var ' + ($valid) + ' = true; ';\n }\n }\n if (it.isTop) {\n out += ' }; return validate; ';\n }\n return out;\n }\n if (it.isTop) {\n var $top = it.isTop,\n $lvl = it.level = 0,\n $dataLvl = it.dataLevel = 0,\n $data = 'data';\n it.rootId = it.resolve.fullPath(it.self._getId(it.root.schema));\n it.baseId = it.baseId || it.rootId;\n delete it.isTop;\n it.dataPathArr = [\"\"];\n if (it.schema.default !== undefined && it.opts.useDefaults && it.opts.strictDefaults) {\n var $defaultMsg = 'default is ignored in the schema root';\n if (it.opts.strictDefaults === 'log') it.logger.warn($defaultMsg);\n else throw new Error($defaultMsg);\n }\n out += ' var vErrors = null; ';\n out += ' var errors = 0; ';\n out += ' if (rootData === undefined) rootData = data; ';\n } else {\n var $lvl = it.level,\n $dataLvl = it.dataLevel,\n $data = 'data' + ($dataLvl || '');\n if ($id) it.baseId = it.resolve.url(it.baseId, $id);\n if ($async && !it.async) throw new Error('async schema in sync schema');\n out += ' var errs_' + ($lvl) + ' = errors;';\n }\n var $valid = 'valid' + $lvl,\n $breakOnError = !it.opts.allErrors,\n $closingBraces1 = '',\n $closingBraces2 = '';\n var $errorKeyword;\n var $typeSchema = it.schema.type,\n $typeIsArray = Array.isArray($typeSchema);\n if ($typeSchema && it.opts.nullable && it.schema.nullable === true) {\n if ($typeIsArray) {\n if ($typeSchema.indexOf('null') == -1) $typeSchema = $typeSchema.concat('null');\n } else if ($typeSchema != 'null') {\n $typeSchema = [$typeSchema, 'null'];\n $typeIsArray = true;\n }\n }\n if ($typeIsArray && $typeSchema.length == 1) {\n $typeSchema = $typeSchema[0];\n $typeIsArray = false;\n }\n if (it.schema.$ref && $refKeywords) {\n if (it.opts.extendRefs == 'fail') {\n throw new Error('$ref: validation keywords used in schema at path \"' + it.errSchemaPath + '\" (see option extendRefs)');\n } else if (it.opts.extendRefs !== true) {\n $refKeywords = false;\n it.logger.warn('$ref: keywords ignored in schema at path \"' + it.errSchemaPath + '\"');\n }\n }\n if (it.schema.$comment && it.opts.$comment) {\n out += ' ' + (it.RULES.all.$comment.code(it, '$comment'));\n }\n if ($typeSchema) {\n if (it.opts.coerceTypes) {\n var $coerceToTypes = it.util.coerceToTypes(it.opts.coerceTypes, $typeSchema);\n }\n var $rulesGroup = it.RULES.types[$typeSchema];\n if ($coerceToTypes || $typeIsArray || $rulesGroup === true || ($rulesGroup && !$shouldUseGroup($rulesGroup))) {\n var $schemaPath = it.schemaPath + '.type',\n $errSchemaPath = it.errSchemaPath + '/type';\n var $schemaPath = it.schemaPath + '.type',\n $errSchemaPath = it.errSchemaPath + '/type',\n $method = $typeIsArray ? 'checkDataTypes' : 'checkDataType';\n out += ' if (' + (it.util[$method]($typeSchema, $data, it.opts.strictNumbers, true)) + ') { ';\n if ($coerceToTypes) {\n var $dataType = 'dataType' + $lvl,\n $coerced = 'coerced' + $lvl;\n out += ' var ' + ($dataType) + ' = typeof ' + ($data) + '; var ' + ($coerced) + ' = undefined; ';\n if (it.opts.coerceTypes == 'array') {\n out += ' if (' + ($dataType) + ' == \\'object\\' && Array.isArray(' + ($data) + ') && ' + ($data) + '.length == 1) { ' + ($data) + ' = ' + ($data) + '[0]; ' + ($dataType) + ' = typeof ' + ($data) + '; if (' + (it.util.checkDataType(it.schema.type, $data, it.opts.strictNumbers)) + ') ' + ($coerced) + ' = ' + ($data) + '; } ';\n }\n out += ' if (' + ($coerced) + ' !== undefined) ; ';\n var arr1 = $coerceToTypes;\n if (arr1) {\n var $type, $i = -1,\n l1 = arr1.length - 1;\n while ($i < l1) {\n $type = arr1[$i += 1];\n if ($type == 'string') {\n out += ' else if (' + ($dataType) + ' == \\'number\\' || ' + ($dataType) + ' == \\'boolean\\') ' + ($coerced) + ' = \\'\\' + ' + ($data) + '; else if (' + ($data) + ' === null) ' + ($coerced) + ' = \\'\\'; ';\n } else if ($type == 'number' || $type == 'integer') {\n out += ' else if (' + ($dataType) + ' == \\'boolean\\' || ' + ($data) + ' === null || (' + ($dataType) + ' == \\'string\\' && ' + ($data) + ' && ' + ($data) + ' == +' + ($data) + ' ';\n if ($type == 'integer') {\n out += ' && !(' + ($data) + ' % 1)';\n }\n out += ')) ' + ($coerced) + ' = +' + ($data) + '; ';\n } else if ($type == 'boolean') {\n out += ' else if (' + ($data) + ' === \\'false\\' || ' + ($data) + ' === 0 || ' + ($data) + ' === null) ' + ($coerced) + ' = false; else if (' + ($data) + ' === \\'true\\' || ' + ($data) + ' === 1) ' + ($coerced) + ' = true; ';\n } else if ($type == 'null') {\n out += ' else if (' + ($data) + ' === \\'\\' || ' + ($data) + ' === 0 || ' + ($data) + ' === false) ' + ($coerced) + ' = null; ';\n } else if (it.opts.coerceTypes == 'array' && $type == 'array') {\n out += ' else if (' + ($dataType) + ' == \\'string\\' || ' + ($dataType) + ' == \\'number\\' || ' + ($dataType) + ' == \\'boolean\\' || ' + ($data) + ' == null) ' + ($coerced) + ' = [' + ($data) + ']; ';\n }\n }\n }\n out += ' else { ';\n var $$outStack = $$outStack || [];\n $$outStack.push(out);\n out = ''; /* istanbul ignore else */\n if (it.createErrors !== false) {\n out += ' { keyword: \\'' + ($errorKeyword || 'type') + '\\' , dataPath: (dataPath || \\'\\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { type: \\'';\n if ($typeIsArray) {\n out += '' + ($typeSchema.join(\",\"));\n } else {\n out += '' + ($typeSchema);\n }\n out += '\\' } ';\n if (it.opts.messages !== false) {\n out += ' , message: \\'should be ';\n if ($typeIsArray) {\n out += '' + ($typeSchema.join(\",\"));\n } else {\n out += '' + ($typeSchema);\n }\n out += '\\' ';\n }\n if (it.opts.verbose) {\n out += ' , schema: validate.schema' + ($schemaPath) + ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' ';\n }\n out += ' } ';\n } else {\n out += ' {} ';\n }\n var __err = out;\n out = $$outStack.pop();\n if (!it.compositeRule && $breakOnError) {\n /* istanbul ignore if */\n if (it.async) {\n out += ' throw new ValidationError([' + (__err) + ']); ';\n } else {\n out += ' validate.errors = [' + (__err) + ']; return false; ';\n }\n } else {\n out += ' var err = ' + (__err) + '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ';\n }\n out += ' } if (' + ($coerced) + ' !== undefined) { ';\n var $parentData = $dataLvl ? 'data' + (($dataLvl - 1) || '') : 'parentData',\n $parentDataProperty = $dataLvl ? it.dataPathArr[$dataLvl] : 'parentDataProperty';\n out += ' ' + ($data) + ' = ' + ($coerced) + '; ';\n if (!$dataLvl) {\n out += 'if (' + ($parentData) + ' !== undefined)';\n }\n out += ' ' + ($parentData) + '[' + ($parentDataProperty) + '] = ' + ($coerced) + '; } ';\n } else {\n var $$outStack = $$outStack || [];\n $$outStack.push(out);\n out = ''; /* istanbul ignore else */\n if (it.createErrors !== false) {\n out += ' { keyword: \\'' + ($errorKeyword || 'type') + '\\' , dataPath: (dataPath || \\'\\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { type: \\'';\n if ($typeIsArray) {\n out += '' + ($typeSchema.join(\",\"));\n } else {\n out += '' + ($typeSchema);\n }\n out += '\\' } ';\n if (it.opts.messages !== false) {\n out += ' , message: \\'should be ';\n if ($typeIsArray) {\n out += '' + ($typeSchema.join(\",\"));\n } else {\n out += '' + ($typeSchema);\n }\n out += '\\' ';\n }\n if (it.opts.verbose) {\n out += ' , schema: validate.schema' + ($schemaPath) + ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' ';\n }\n out += ' } ';\n } else {\n out += ' {} ';\n }\n var __err = out;\n out = $$outStack.pop();\n if (!it.compositeRule && $breakOnError) {\n /* istanbul ignore if */\n if (it.async) {\n out += ' throw new ValidationError([' + (__err) + ']); ';\n } else {\n out += ' validate.errors = [' + (__err) + ']; return false; ';\n }\n } else {\n out += ' var err = ' + (__err) + '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ';\n }\n }\n out += ' } ';\n }\n }\n if (it.schema.$ref && !$refKeywords) {\n out += ' ' + (it.RULES.all.$ref.code(it, '$ref')) + ' ';\n if ($breakOnError) {\n out += ' } if (errors === ';\n if ($top) {\n out += '0';\n } else {\n out += 'errs_' + ($lvl);\n }\n out += ') { ';\n $closingBraces2 += '}';\n }\n } else {\n var arr2 = it.RULES;\n if (arr2) {\n var $rulesGroup, i2 = -1,\n l2 = arr2.length - 1;\n while (i2 < l2) {\n $rulesGroup = arr2[i2 += 1];\n if ($shouldUseGroup($rulesGroup)) {\n if ($rulesGroup.type) {\n out += ' if (' + (it.util.checkDataType($rulesGroup.type, $data, it.opts.strictNumbers)) + ') { ';\n }\n if (it.opts.useDefaults) {\n if ($rulesGroup.type == 'object' && it.schema.properties) {\n var $schema = it.schema.properties,\n $schemaKeys = Object.keys($schema);\n var arr3 = $schemaKeys;\n if (arr3) {\n var $propertyKey, i3 = -1,\n l3 = arr3.length - 1;\n while (i3 < l3) {\n $propertyKey = arr3[i3 += 1];\n var $sch = $schema[$propertyKey];\n if ($sch.default !== undefined) {\n var $passData = $data + it.util.getProperty($propertyKey);\n if (it.compositeRule) {\n if (it.opts.strictDefaults) {\n var $defaultMsg = 'default is ignored for: ' + $passData;\n if (it.opts.strictDefaults === 'log') it.logger.warn($defaultMsg);\n else throw new Error($defaultMsg);\n }\n } else {\n out += ' if (' + ($passData) + ' === undefined ';\n if (it.opts.useDefaults == 'empty') {\n out += ' || ' + ($passData) + ' === null || ' + ($passData) + ' === \\'\\' ';\n }\n out += ' ) ' + ($passData) + ' = ';\n if (it.opts.useDefaults == 'shared') {\n out += ' ' + (it.useDefault($sch.default)) + ' ';\n } else {\n out += ' ' + (JSON.stringify($sch.default)) + ' ';\n }\n out += '; ';\n }\n }\n }\n }\n } else if ($rulesGroup.type == 'array' && Array.isArray(it.schema.items)) {\n var arr4 = it.schema.items;\n if (arr4) {\n var $sch, $i = -1,\n l4 = arr4.length - 1;\n while ($i < l4) {\n $sch = arr4[$i += 1];\n if ($sch.default !== undefined) {\n var $passData = $data + '[' + $i + ']';\n if (it.compositeRule) {\n if (it.opts.strictDefaults) {\n var $defaultMsg = 'default is ignored for: ' + $passData;\n if (it.opts.strictDefaults === 'log') it.logger.warn($defaultMsg);\n else throw new Error($defaultMsg);\n }\n } else {\n out += ' if (' + ($passData) + ' === undefined ';\n if (it.opts.useDefaults == 'empty') {\n out += ' || ' + ($passData) + ' === null || ' + ($passData) + ' === \\'\\' ';\n }\n out += ' ) ' + ($passData) + ' = ';\n if (it.opts.useDefaults == 'shared') {\n out += ' ' + (it.useDefault($sch.default)) + ' ';\n } else {\n out += ' ' + (JSON.stringify($sch.default)) + ' ';\n }\n out += '; ';\n }\n }\n }\n }\n }\n }\n var arr5 = $rulesGroup.rules;\n if (arr5) {\n var $rule, i5 = -1,\n l5 = arr5.length - 1;\n while (i5 < l5) {\n $rule = arr5[i5 += 1];\n if ($shouldUseRule($rule)) {\n var $code = $rule.code(it, $rule.keyword, $rulesGroup.type);\n if ($code) {\n out += ' ' + ($code) + ' ';\n if ($breakOnError) {\n $closingBraces1 += '}';\n }\n }\n }\n }\n }\n if ($breakOnError) {\n out += ' ' + ($closingBraces1) + ' ';\n $closingBraces1 = '';\n }\n if ($rulesGroup.type) {\n out += ' } ';\n if ($typeSchema && $typeSchema === $rulesGroup.type && !$coerceToTypes) {\n out += ' else { ';\n var $schemaPath = it.schemaPath + '.type',\n $errSchemaPath = it.errSchemaPath + '/type';\n var $$outStack = $$outStack || [];\n $$outStack.push(out);\n out = ''; /* istanbul ignore else */\n if (it.createErrors !== false) {\n out += ' { keyword: \\'' + ($errorKeyword || 'type') + '\\' , dataPath: (dataPath || \\'\\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { type: \\'';\n if ($typeIsArray) {\n out += '' + ($typeSchema.join(\",\"));\n } else {\n out += '' + ($typeSchema);\n }\n out += '\\' } ';\n if (it.opts.messages !== false) {\n out += ' , message: \\'should be ';\n if ($typeIsArray) {\n out += '' + ($typeSchema.join(\",\"));\n } else {\n out += '' + ($typeSchema);\n }\n out += '\\' ';\n }\n if (it.opts.verbose) {\n out += ' , schema: validate.schema' + ($schemaPath) + ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' ';\n }\n out += ' } ';\n } else {\n out += ' {} ';\n }\n var __err = out;\n out = $$outStack.pop();\n if (!it.compositeRule && $breakOnError) {\n /* istanbul ignore if */\n if (it.async) {\n out += ' throw new ValidationError([' + (__err) + ']); ';\n } else {\n out += ' validate.errors = [' + (__err) + ']; return false; ';\n }\n } else {\n out += ' var err = ' + (__err) + '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ';\n }\n out += ' } ';\n }\n }\n if ($breakOnError) {\n out += ' if (errors === ';\n if ($top) {\n out += '0';\n } else {\n out += 'errs_' + ($lvl);\n }\n out += ') { ';\n $closingBraces2 += '}';\n }\n }\n }\n }\n }\n if ($breakOnError) {\n out += ' ' + ($closingBraces2) + ' ';\n }\n if ($top) {\n if ($async) {\n out += ' if (errors === 0) return data; ';\n out += ' else throw new ValidationError(vErrors); ';\n } else {\n out += ' validate.errors = vErrors; ';\n out += ' return errors === 0; ';\n }\n out += ' }; return validate;';\n } else {\n out += ' var ' + ($valid) + ' = errors === errs_' + ($lvl) + ';';\n }\n\n function $shouldUseGroup($rulesGroup) {\n var rules = $rulesGroup.rules;\n for (var i = 0; i < rules.length; i++)\n if ($shouldUseRule(rules[i])) return true;\n }\n\n function $shouldUseRule($rule) {\n return it.schema[$rule.keyword] !== undefined || ($rule.implements && $ruleImplementsSomeKeyword($rule));\n }\n\n function $ruleImplementsSomeKeyword($rule) {\n var impl = $rule.implements;\n for (var i = 0; i < impl.length; i++)\n if (it.schema[impl[i]] !== undefined) return true;\n }\n return out;\n}\n","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./VpEditor.vue?vue&type=style&index=0&id=55f75f47&lang=scss&scoped=true&\"","'use strict';\nmodule.exports = function localize_fr(errors) {\n if (!(errors && errors.length)) return;\n for (var i = 0; i < errors.length; i++) {\n var e = errors[i];\n var out;\n switch (e.keyword) {\n case '$ref':\n out = 'impossible d\\\\\\'accéder à la référénce ' + (e.params.ref);\n break;\n case 'additionalItems':\n out = '';\n var n = e.params.limit;\n out += 'ne doit pas contenir plus de ' + (n) + ' élémént';\n if (n != 1) {\n out += 's';\n }\n break;\n case 'additionalProperties':\n out = 'ne doit pas contenir de propriétés additionnelles';\n break;\n case 'anyOf':\n out = 'doit correspondre à un schéma de \"anyOf\"';\n break;\n case 'const':\n out = 'doit être égal à la constante';\n break;\n case 'contains':\n out = 'doit contenir un élément valide';\n break;\n case 'custom':\n out = 'doit être valide selon le critère \"' + (e.keyword) + '\"';\n break;\n case 'dependencies':\n out = '';\n var n = e.params.depsCount;\n out += 'doit avoir la propriété ' + (e.params.deps) + ' quand la propriété ' + (e.params.property) + ' est présente';\n break;\n case 'enum':\n out = 'doit être égal à une des valeurs prédéfinies';\n break;\n case 'exclusiveMaximum':\n out = '';\n var cond = e.params.comparison + \" \" + e.params.limit;\n out += 'doit être ' + (cond);\n break;\n case 'exclusiveMinimum':\n out = '';\n var cond = e.params.comparison + \" \" + e.params.limit;\n out += 'doit être ' + (cond);\n break;\n case 'false schema':\n out = 'le schema est \"false\"';\n break;\n case 'format':\n out = 'doit correspondre au format \"' + (e.params.format) + '\"';\n break;\n case 'formatExclusiveMaximum':\n out = 'formatExclusiveMaximum doit être un booléen';\n break;\n case 'formatExclusiveMinimum':\n out = 'formatExclusiveMinimum doit être un booléen';\n break;\n case 'formatMaximum':\n out = '';\n var cond = e.params.comparison + \" \" + e.params.limit;\n out += 'doit être ' + (cond);\n break;\n case 'formatMinimum':\n out = '';\n var cond = e.params.comparison + \" \" + e.params.limit;\n out += 'doit être ' + (cond);\n break;\n case 'if':\n out = 'doit correspondre au schéma \"' + (e.params.failingKeyword) + '\"';\n break;\n case 'maximum':\n out = '';\n var cond = e.params.comparison + \" \" + e.params.limit;\n out += 'doit être ' + (cond);\n break;\n case 'maxItems':\n out = '';\n var n = e.params.limit;\n out += 'ne doit pas contenir plus de ' + (n) + ' élément';\n if (n != 1) {\n out += 's';\n }\n break;\n case 'maxLength':\n out = '';\n var n = e.params.limit;\n out += 'ne doit pas dépasser ' + (n) + ' caractère';\n if (n != 1) {\n out += 's';\n }\n break;\n case 'maxProperties':\n out = '';\n var n = e.params.limit;\n out += 'ne doit pas contenir plus de ' + (n) + ' propriété';\n if (n != 1) {\n out += 's';\n }\n break;\n case 'minimum':\n out = '';\n var cond = e.params.comparison + \" \" + e.params.limit;\n out += 'doit être ' + (cond);\n break;\n case 'minItems':\n out = '';\n var n = e.params.limit;\n out += 'ne doit pas contenir moins de ' + (n) + ' élément';\n if (n != 1) {\n out += 's';\n }\n break;\n case 'minLength':\n out = '';\n var n = e.params.limit;\n out += 'ne doit pas faire moins de ' + (n) + ' caractère';\n if (n != 1) {\n out += 's';\n }\n break;\n case 'minProperties':\n out = '';\n var n = e.params.limit;\n out += 'ne doit pas contenir moins de ' + (n) + ' propriété';\n if (n != 1) {\n out += 's';\n }\n break;\n case 'multipleOf':\n out = 'doit être un multiple de ' + (e.params.multipleOf);\n break;\n case 'not':\n out = 'est invalide selon le schéma \"not\"';\n break;\n case 'oneOf':\n out = 'doit correspondre à exactement un schéma de \"oneOf\"';\n break;\n case 'pattern':\n out = 'doit correspondre au format \"' + (e.params.pattern) + '\"';\n break;\n case 'patternRequired':\n out = 'la propriété doit correspondre au format \"' + (e.params.missingPattern) + '\"';\n break;\n case 'propertyNames':\n out = 'le nom de propriété \\'' + (e.params.propertyName) + '\\' est invalide';\n break;\n case 'required':\n out = 'requiert la propriété ' + (e.params.missingProperty);\n break;\n case 'switch':\n out = 'doit être valide selon le critère \"switch\":validation par mot-clé, le cas ' + (e.params.caseIndex) + ' est invalide';\n break;\n case 'type':\n out = 'doit être de type ' + (e.params.type);\n break;\n case 'uniqueItems':\n out = 'ne doit pas contenir de doublons (les éléments ## ' + (e.params.j) + ' et ' + (e.params.i) + ' sont identiques)';\n break;\n default:\n continue;\n }\n e.message = out;\n }\n};\n","'use strict';\nmodule.exports = function generate__limitItems(it, $keyword, $ruleType) {\n var out = ' ';\n var $lvl = it.level;\n var $dataLvl = it.dataLevel;\n var $schema = it.schema[$keyword];\n var $schemaPath = it.schemaPath + it.util.getProperty($keyword);\n var $errSchemaPath = it.errSchemaPath + '/' + $keyword;\n var $breakOnError = !it.opts.allErrors;\n var $errorKeyword;\n var $data = 'data' + ($dataLvl || '');\n var $isData = it.opts.$data && $schema && $schema.$data,\n $schemaValue;\n if ($isData) {\n out += ' var schema' + ($lvl) + ' = ' + (it.util.getData($schema.$data, $dataLvl, it.dataPathArr)) + '; ';\n $schemaValue = 'schema' + $lvl;\n } else {\n $schemaValue = $schema;\n }\n if (!($isData || typeof $schema == 'number')) {\n throw new Error($keyword + ' must be number');\n }\n var $op = $keyword == 'maxItems' ? '>' : '<';\n out += 'if ( ';\n if ($isData) {\n out += ' (' + ($schemaValue) + ' !== undefined && typeof ' + ($schemaValue) + ' != \\'number\\') || ';\n }\n out += ' ' + ($data) + '.length ' + ($op) + ' ' + ($schemaValue) + ') { ';\n var $errorKeyword = $keyword;\n var $$outStack = $$outStack || [];\n $$outStack.push(out);\n out = ''; /* istanbul ignore else */\n if (it.createErrors !== false) {\n out += ' { keyword: \\'' + ($errorKeyword || '_limitItems') + '\\' , dataPath: (dataPath || \\'\\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { limit: ' + ($schemaValue) + ' } ';\n if (it.opts.messages !== false) {\n out += ' , message: \\'should NOT have ';\n if ($keyword == 'maxItems') {\n out += 'more';\n } else {\n out += 'fewer';\n }\n out += ' than ';\n if ($isData) {\n out += '\\' + ' + ($schemaValue) + ' + \\'';\n } else {\n out += '' + ($schema);\n }\n out += ' items\\' ';\n }\n if (it.opts.verbose) {\n out += ' , schema: ';\n if ($isData) {\n out += 'validate.schema' + ($schemaPath);\n } else {\n out += '' + ($schema);\n }\n out += ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' ';\n }\n out += ' } ';\n } else {\n out += ' {} ';\n }\n var __err = out;\n out = $$outStack.pop();\n if (!it.compositeRule && $breakOnError) {\n /* istanbul ignore if */\n if (it.async) {\n out += ' throw new ValidationError([' + (__err) + ']); ';\n } else {\n out += ' validate.errors = [' + (__err) + ']; return false; ';\n }\n } else {\n out += ' var err = ' + (__err) + '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ';\n }\n out += '} ';\n if ($breakOnError) {\n out += ' else { ';\n }\n return out;\n}\n","'use strict';\nmodule.exports = function generate_if(it, $keyword, $ruleType) {\n var out = ' ';\n var $lvl = it.level;\n var $dataLvl = it.dataLevel;\n var $schema = it.schema[$keyword];\n var $schemaPath = it.schemaPath + it.util.getProperty($keyword);\n var $errSchemaPath = it.errSchemaPath + '/' + $keyword;\n var $breakOnError = !it.opts.allErrors;\n var $data = 'data' + ($dataLvl || '');\n var $valid = 'valid' + $lvl;\n var $errs = 'errs__' + $lvl;\n var $it = it.util.copy(it);\n $it.level++;\n var $nextValid = 'valid' + $it.level;\n var $thenSch = it.schema['then'],\n $elseSch = it.schema['else'],\n $thenPresent = $thenSch !== undefined && (it.opts.strictKeywords ? (typeof $thenSch == 'object' && Object.keys($thenSch).length > 0) || $thenSch === false : it.util.schemaHasRules($thenSch, it.RULES.all)),\n $elsePresent = $elseSch !== undefined && (it.opts.strictKeywords ? (typeof $elseSch == 'object' && Object.keys($elseSch).length > 0) || $elseSch === false : it.util.schemaHasRules($elseSch, it.RULES.all)),\n $currentBaseId = $it.baseId;\n if ($thenPresent || $elsePresent) {\n var $ifClause;\n $it.createErrors = false;\n $it.schema = $schema;\n $it.schemaPath = $schemaPath;\n $it.errSchemaPath = $errSchemaPath;\n out += ' var ' + ($errs) + ' = errors; var ' + ($valid) + ' = true; ';\n var $wasComposite = it.compositeRule;\n it.compositeRule = $it.compositeRule = true;\n out += ' ' + (it.validate($it)) + ' ';\n $it.baseId = $currentBaseId;\n $it.createErrors = true;\n out += ' errors = ' + ($errs) + '; if (vErrors !== null) { if (' + ($errs) + ') vErrors.length = ' + ($errs) + '; else vErrors = null; } ';\n it.compositeRule = $it.compositeRule = $wasComposite;\n if ($thenPresent) {\n out += ' if (' + ($nextValid) + ') { ';\n $it.schema = it.schema['then'];\n $it.schemaPath = it.schemaPath + '.then';\n $it.errSchemaPath = it.errSchemaPath + '/then';\n out += ' ' + (it.validate($it)) + ' ';\n $it.baseId = $currentBaseId;\n out += ' ' + ($valid) + ' = ' + ($nextValid) + '; ';\n if ($thenPresent && $elsePresent) {\n $ifClause = 'ifClause' + $lvl;\n out += ' var ' + ($ifClause) + ' = \\'then\\'; ';\n } else {\n $ifClause = '\\'then\\'';\n }\n out += ' } ';\n if ($elsePresent) {\n out += ' else { ';\n }\n } else {\n out += ' if (!' + ($nextValid) + ') { ';\n }\n if ($elsePresent) {\n $it.schema = it.schema['else'];\n $it.schemaPath = it.schemaPath + '.else';\n $it.errSchemaPath = it.errSchemaPath + '/else';\n out += ' ' + (it.validate($it)) + ' ';\n $it.baseId = $currentBaseId;\n out += ' ' + ($valid) + ' = ' + ($nextValid) + '; ';\n if ($thenPresent && $elsePresent) {\n $ifClause = 'ifClause' + $lvl;\n out += ' var ' + ($ifClause) + ' = \\'else\\'; ';\n } else {\n $ifClause = '\\'else\\'';\n }\n out += ' } ';\n }\n out += ' if (!' + ($valid) + ') { var err = '; /* istanbul ignore else */\n if (it.createErrors !== false) {\n out += ' { keyword: \\'' + ('if') + '\\' , dataPath: (dataPath || \\'\\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { failingKeyword: ' + ($ifClause) + ' } ';\n if (it.opts.messages !== false) {\n out += ' , message: \\'should match \"\\' + ' + ($ifClause) + ' + \\'\" schema\\' ';\n }\n if (it.opts.verbose) {\n out += ' , schema: validate.schema' + ($schemaPath) + ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' ';\n }\n out += ' } ';\n } else {\n out += ' {} ';\n }\n out += '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ';\n if (!it.compositeRule && $breakOnError) {\n /* istanbul ignore if */\n if (it.async) {\n out += ' throw new ValidationError(vErrors); ';\n } else {\n out += ' validate.errors = vErrors; return false; ';\n }\n }\n out += ' } ';\n if ($breakOnError) {\n out += ' else { ';\n }\n } else {\n if ($breakOnError) {\n out += ' if (true) { ';\n }\n }\n return out;\n}\n","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TextInput.vue?vue&type=style&index=0&lang=scss&\"","'use strict';\nmodule.exports = function localize_it(errors) {\n if (!(errors && errors.length)) return;\n for (var i = 0; i < errors.length; i++) {\n var e = errors[i];\n var out;\n switch (e.keyword) {\n case '$ref':\n out = 'non è possibile risolvere il riferimento ' + (e.params.ref);\n break;\n case 'additionalItems':\n out = '';\n var n = e.params.limit;\n out += 'non dovrebbe avere più di ' + (n) + ' element';\n if (n == 1) {\n out += 'o';\n } else {\n out += 'i';\n }\n break;\n case 'additionalProperties':\n out = 'non deve avere attributi aggiuntivi';\n break;\n case 'anyOf':\n out = 'deve corrispondere ad uno schema in \"anyOf\"';\n break;\n case 'const':\n out = 'deve essere uguale alla costante';\n break;\n case 'contains':\n out = 'deve contentere un elemento valido';\n break;\n case 'custom':\n out = 'deve essere valido secondo il criterio \"' + (e.keyword) + '\"';\n break;\n case 'dependencies':\n out = '';\n var n = e.params.depsCount;\n out += 'dovrebbe avere ';\n if (n == 1) {\n out += 'l\\'';\n } else {\n out += 'gli ';\n }\n out += 'attribut';\n if (n == 1) {\n out += 'o';\n } else {\n out += 'i';\n }\n out += ' ' + (e.params.deps) + ' quando l\\'attributo ' + (e.params.property) + ' è presente';\n break;\n case 'enum':\n out = 'dovrebbe essere uguale ad uno dei valori predefiniti';\n break;\n case 'exclusiveMaximum':\n out = '';\n var cond = e.params.comparison + \" \" + e.params.limit;\n out += 'deve essere ' + (cond);\n break;\n case 'exclusiveMinimum':\n out = '';\n var cond = e.params.comparison + \" \" + e.params.limit;\n out += 'deve essere ' + (cond);\n break;\n case 'false schema':\n out = 'lo schema booleano è falso';\n break;\n case 'format':\n out = 'deve corrispondere al formato \"' + (e.params.format) + '\"';\n break;\n case 'formatExclusiveMaximum':\n out = 'formatExclusiveMaximum deve essere booleano';\n break;\n case 'formatExclusiveMinimum':\n out = 'formatExclusiveMinimum deve essere booleano';\n break;\n case 'formatMaximum':\n out = '';\n var cond = e.params.comparison + \" \" + e.params.limit;\n out += 'deve essere ' + (cond);\n break;\n case 'formatMinimum':\n out = '';\n var cond = e.params.comparison + \" \" + e.params.limit;\n out += 'deve essere ' + (cond);\n break;\n case 'if':\n out = 'deve corrispondere allo schema \"' + (e.params.failingKeyword) + '\"';\n break;\n case 'maximum':\n out = '';\n var cond = e.params.comparison + \" \" + e.params.limit;\n out += 'deve essere ' + (cond);\n break;\n case 'maxItems':\n out = '';\n var n = e.params.limit;\n out += 'non deve avere più di ' + (n) + ' element';\n if (n == 1) {\n out += 'o';\n } else {\n out += 'i';\n }\n break;\n case 'maxLength':\n out = '';\n var n = e.params.limit;\n out += 'non deve essere più lungo di ' + (n) + ' caratter';\n if (n == 1) {\n out += 'e';\n } else {\n out += 'i';\n }\n break;\n case 'maxProperties':\n out = '';\n var n = e.params.limit;\n out += 'non deve avere più di ' + (n) + ' attribut';\n if (n == 1) {\n out += 'o';\n } else {\n out += 'i';\n }\n break;\n case 'minimum':\n out = '';\n var cond = e.params.comparison + \" \" + e.params.limit;\n out += 'deve essere ' + (cond);\n break;\n case 'minItems':\n out = '';\n var n = e.params.limit;\n out += 'non deve avere meno di ' + (n) + ' element';\n if (n == 1) {\n out += 'o';\n } else {\n out += 'i';\n }\n break;\n case 'minLength':\n out = '';\n var n = e.params.limit;\n out += 'non deve essere meno lungo di ' + (n) + ' caratter';\n if (n == 1) {\n out += 'e';\n } else {\n out += 'i';\n }\n break;\n case 'minProperties':\n out = '';\n var n = e.params.limit;\n out += 'non deve avere meno di ' + (n) + ' attribut';\n if (n == 1) {\n out += 'o';\n } else {\n out += 'i';\n }\n break;\n case 'multipleOf':\n out = 'deve essere un multiplo di ' + (e.params.multipleOf);\n break;\n case 'not':\n out = 'non deve essere valido in base allo schema di \"non\"';\n break;\n case 'oneOf':\n out = 'deve corrispondere esattamente ad uno schema in \"oneOf\"';\n break;\n case 'pattern':\n out = 'deve corrispondere al formato \"' + (e.params.pattern) + '\"';\n break;\n case 'patternRequired':\n out = 'deve avere un attributo che corrisponda al formato \"' + (e.params.missingPattern) + '\"';\n break;\n case 'propertyNames':\n out = 'il nome dell\\'attritbuto \\'' + (e.params.propertyName) + '\\' non è valido';\n break;\n case 'required':\n out = 'deve avere l\\'attributo obbligatorio ' + (e.params.missingProperty);\n break;\n case 'switch':\n out = 'deve passare la validazione del criterio \"switch\", il caso ' + (e.params.caseIndex) + ' fallisce';\n break;\n case 'type':\n out = 'deve essere di tipo ' + (e.params.type);\n break;\n case 'uniqueItems':\n out = 'non deve avere duplicati (gli elementi ## ' + (e.params.j) + ' e ' + (e.params.i) + ' sono uguali)';\n break;\n default:\n continue;\n }\n e.message = out;\n }\n};\n","'use strict';\nmodule.exports = function generate_enum(it, $keyword, $ruleType) {\n var out = ' ';\n var $lvl = it.level;\n var $dataLvl = it.dataLevel;\n var $schema = it.schema[$keyword];\n var $schemaPath = it.schemaPath + it.util.getProperty($keyword);\n var $errSchemaPath = it.errSchemaPath + '/' + $keyword;\n var $breakOnError = !it.opts.allErrors;\n var $data = 'data' + ($dataLvl || '');\n var $valid = 'valid' + $lvl;\n var $isData = it.opts.$data && $schema && $schema.$data,\n $schemaValue;\n if ($isData) {\n out += ' var schema' + ($lvl) + ' = ' + (it.util.getData($schema.$data, $dataLvl, it.dataPathArr)) + '; ';\n $schemaValue = 'schema' + $lvl;\n } else {\n $schemaValue = $schema;\n }\n var $i = 'i' + $lvl,\n $vSchema = 'schema' + $lvl;\n if (!$isData) {\n out += ' var ' + ($vSchema) + ' = validate.schema' + ($schemaPath) + ';';\n }\n out += 'var ' + ($valid) + ';';\n if ($isData) {\n out += ' if (schema' + ($lvl) + ' === undefined) ' + ($valid) + ' = true; else if (!Array.isArray(schema' + ($lvl) + ')) ' + ($valid) + ' = false; else {';\n }\n out += '' + ($valid) + ' = false;for (var ' + ($i) + '=0; ' + ($i) + '<' + ($vSchema) + '.length; ' + ($i) + '++) if (equal(' + ($data) + ', ' + ($vSchema) + '[' + ($i) + '])) { ' + ($valid) + ' = true; break; }';\n if ($isData) {\n out += ' } ';\n }\n out += ' if (!' + ($valid) + ') { ';\n var $$outStack = $$outStack || [];\n $$outStack.push(out);\n out = ''; /* istanbul ignore else */\n if (it.createErrors !== false) {\n out += ' { keyword: \\'' + ('enum') + '\\' , dataPath: (dataPath || \\'\\') + ' + (it.errorPath) + ' , schemaPath: ' + (it.util.toQuotedString($errSchemaPath)) + ' , params: { allowedValues: schema' + ($lvl) + ' } ';\n if (it.opts.messages !== false) {\n out += ' , message: \\'should be equal to one of the allowed values\\' ';\n }\n if (it.opts.verbose) {\n out += ' , schema: validate.schema' + ($schemaPath) + ' , parentSchema: validate.schema' + (it.schemaPath) + ' , data: ' + ($data) + ' ';\n }\n out += ' } ';\n } else {\n out += ' {} ';\n }\n var __err = out;\n out = $$outStack.pop();\n if (!it.compositeRule && $breakOnError) {\n /* istanbul ignore if */\n if (it.async) {\n out += ' throw new ValidationError([' + (__err) + ']); ';\n } else {\n out += ' validate.errors = [' + (__err) + ']; return false; ';\n }\n } else {\n out += ' var err = ' + (__err) + '; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ';\n }\n out += ' }';\n if ($breakOnError) {\n out += ' else { ';\n }\n return out;\n}\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"vp\"},[(!_vm.onlyViewParams)?_c('n-back-navigation-toolbar',{attrs:{\"title\":_vm.toolbarTitle}},[_c('div',{attrs:{\"slot\":\"actions\"},slot:\"actions\"},[_c('div',{staticClass:\"toolbar__filters\"},[(!!_vm.vpConfig && _vm.vpConfig.sent)?_c('span',{staticClass:\"toolbar__action vp__configuration_remotecommands text-capitalize\",on:{\"click\":_vm.posHistory}},[_c('span',{staticClass:\"desktop-and-tablet\"},[_vm._v(_vm._s(_vm.$t('status')))]),_c('i',{staticClass:\"v-icon mdi mdi-list-status\",attrs:{\"aria-hidden\":\"true\"}})]):_vm._e(),(!_vm.historicalConfigId && _vm.canSend)?_c('span',{staticClass:\"toolbar__action vp__send_configuration\",on:{\"click\":_vm.sendConfiguration}},[_c('span',{staticClass:\"desktop-and-tablet\"},[_vm._v(_vm._s(_vm.$t('send')))]),_c('i',{staticClass:\"v-icon mdi mdi-cube-send\",attrs:{\"aria-hidden\":\"true\"}})]):_vm._e(),(!_vm.historicalConfigId)?_c('span',{staticClass:\"toolbar__action vp__download_configuration\",on:{\"click\":_vm.downloadConfiguration}},[_c('span',{staticClass:\"desktop-and-tablet\"},[_vm._v(_vm._s(_vm.$t('download')))]),_c('i',{staticClass:\"v-icon mdi mdi-file-download-outline\",attrs:{\"aria-hidden\":\"true\"}})]):_vm._e(),(_vm.configurationEditable)?_c('span',{staticClass:\"toolbar__action vp__delete_configuration\",on:{\"click\":_vm.deleteConfiguration}},[_c('span',{staticClass:\"desktop-and-tablet\"},[_vm._v(_vm._s(_vm.$t('delete')))]),_c('i',{staticClass:\"v-icon mdi mdi-delete\",attrs:{\"aria-hidden\":\"true\"}})]):_vm._e(),(_vm.configurationEditable)?_c('span',{staticClass:\"toolbar__action vp__save_configuration\",on:{\"click\":_vm.saveConfiguration}},[_c('span',{staticClass:\"desktop-and-tablet\"},[_vm._v(_vm._s(_vm.$t('save')))]),_c('i',{staticClass:\"v-icon mdi mdi-content-save\",attrs:{\"aria-hidden\":\"true\"}})]):_vm._e()])])]):_vm._e(),_c('n-card-container',[(!_vm.onlyViewParams)?_c('n-card',{staticClass:\"infoTable\",attrs:{\"type\":\"full\"}},[(!!_vm.vpConfig && _vm.vpConfig.deviceType)?_c('v-row',{attrs:{\"dense\":\"\"}},[_c('v-col',{attrs:{\"cols\":\"2\"}},[_c('span',[_vm._v(_vm._s(_vm.$t('devicetype')))])]),_c('v-col',{attrs:{\"cols\":\"10\"}},[_vm._v(\" \"+_vm._s(_vm.$t((\"devicetypes.\" + (_vm.vpConfig.deviceType))))+\" \")])],1):_vm._e(),(_vm.posName !== '')?_c('v-row',{attrs:{\"dense\":\"\"}},[_c('v-col',{attrs:{\"cols\":\"2\"}},[_c('span',[_vm._v(_vm._s(_vm.$t('transaction.posName'))+\" \")])]),_c('v-col',{attrs:{\"cols\":\"10\"}},[_vm._v(\" \"+_vm._s(_vm.posName)+\" (id: \"+_vm._s(_vm.configurationId)+\") \")])],1):_vm._e(),_c('v-row',{attrs:{\"dense\":\"\"}},[_c('v-col',{attrs:{\"cols\":\"2\"}},[_c('span',[_vm._v(_vm._s(_vm.$t('fw-version')))])]),_c('v-col',{attrs:{\"cols\":\"10\"}},[_vm._v(\" \"+_vm._s(_vm.fwVersion)+\" \")])],1),_c('v-row',{attrs:{\"dense\":\"\"}},[_c('v-col',{attrs:{\"cols\":\"2\"}},[_c('span',[_vm._v(_vm._s(_vm.$t('vp.configuration.last-update-date')))])]),_c('v-col',{attrs:{\"cols\":\"10\"}},[_vm._v(\" \"+_vm._s(_vm.lastDate)+\" \")])],1)],1):_vm._e(),(!_vm.onlyViewParams)?_c('n-card',{staticClass:\"vp__tree\",attrs:{\"type\":\"m\",\"title\":\"vp.configurations-menu\"}},[_c('v-treeview',{staticClass:\"vp-configuration-menu\",attrs:{\"activatable\":\"\",\"items\":_vm.treeviewItems,\"active-class\":\"vp-menu-active\",\"item-disabled\":\"menuhidden\"},on:{\"update:active\":_vm.treeviewItemClicked},model:{value:(_vm.treeViewSelection),callback:function ($$v) {_vm.treeViewSelection=$$v},expression:\"treeViewSelection\"}})],1):_vm._e(),_c('n-card',{staticClass:\"vp-configuration-params\",attrs:{\"type\":!_vm.onlyViewParams ? 'xxl' : 'full',\"title\":!_vm.onlyViewParams ? 'vp.parameters-list' : ''}},[_c('v-card-title',[_c('n-text-input',{attrs:{\"append-icon\":\"mdi-magnify\",\"label\":\"vp.search-parameters\",\"hide-details\":\"true\"},model:{value:(_vm.datatableSearch),callback:function ($$v) {_vm.datatableSearch=$$v},expression:\"datatableSearch\"}})],1),_c('v-data-table',{attrs:{\"headers\":_vm.headers,\"items\":_vm.datatableItems,\"search\":_vm.datatableSearch,\"single-select\":true,\"footer-props\":_vm.dtPagination,\"mobile-breakpoint\":\"0\"},on:{\"current-items\":function (event) { return _vm.getCurrentRows(event); }},scopedSlots:_vm._u([{key:\"header\",fn:function(){return [_c('thead',{staticClass:\"v-data-table-header\"},[_c('tr',_vm._l((_vm.headers),function(header){return _c('th',{key:header.value},[_c('span',[_vm._v(_vm._s(header.text))]),(header.value === 'send')?_c('v-simple-checkbox',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.configurationEditable),expression:\"configurationEditable\"}],attrs:{\"indeterminate\":_vm.indeterminateStateSelected},on:{\"input\":_vm.selectAllCheckboxClick},model:{value:(_vm.isSelectedAllItems),callback:function ($$v) {_vm.isSelectedAllItems=$$v},expression:\"isSelectedAllItems\"}}):_vm._e()],1)}),0)])]},proxy:true},{key:\"top\",fn:function(){return [_c('v-toolbar',{attrs:{\"flat\":\"\"}},[_c('v-chip-group',{attrs:{\"multiple\":\"\",\"active-class\":\"primary--text\"},model:{value:(_vm.datatableFilters),callback:function ($$v) {_vm.datatableFilters=$$v},expression:\"datatableFilters\"}},[_c('v-chip',{directives:[{name:\"show\",rawName:\"v-show\",value:(!_vm.historicalConfigId),expression:\"!historicalConfigId\"}]},[_vm._v(\" \"+_vm._s(_vm.$t('vp.in-programming'))+\" \")]),_c('v-chip',{directives:[{name:\"show\",rawName:\"v-show\",value:(!(_vm.historicalConfigId || _vm.onlyViewParams)),expression:\"!(historicalConfigId || onlyViewParams)\"}]},[_vm._v(\" \"+_vm._s(_vm.$t('vp.errors'))+\" \"),(_vm.ajvValidationMessages.length > 0)?_c('span',[_vm._v(\": \"+_vm._s(_vm.ajvValidationMessages.length))]):_vm._e()]),_c('v-chip',{directives:[{name:\"show\",rawName:\"v-show\",value:(!_vm.onlyViewParams),expression:\"!onlyViewParams\"}]},[_vm._v(\" \"+_vm._s(_vm.$t('vp.not-default'))+\" \")])],1),(_vm.configurationEditable)?_c('v-dialog',{attrs:{\"max-width\":\"400px\",\"persistent\":true},model:{value:(_vm.dialogEdit),callback:function ($$v) {_vm.dialogEdit=$$v},expression:\"dialogEdit\"}},[_c('v-card',{class:{ 'editor-long-list' : _vm.editorLongList() }},[_c('v-card-title',[_c('span',{staticClass:\"headline\"},[_vm._v(_vm._s(_vm.$t('name'))+\": \"+_vm._s(_vm.selectedParam.name)+\" \"),(_vm.selectedParam.editor === 'currency')?_c('span',[_vm._v(\"(\"+_vm._s(_vm.$currency.getCurrencyCodeOfSelectedMerchant())+\")\")]):_vm._e()])]),_c('v-card-text',[_c('v-container',[_c('v-row',[(0 === 1)?_c('span',[_vm._v(\"Parameter schema: \"+_vm._s(_vm.selectedParam.schema))]):_vm._e(),(0 === 1)?_c('p',[_vm._v(\"Json Values: \"+_vm._s(_vm.jsonValues))]):_vm._e(),(0 === 1)?_c('p',[_vm._v(\" All Json Values: \"+_vm._s(_vm.allJsonValues)+\" \")]):_vm._e()]),_c('v-row',[_c('v-col',{staticClass:\"px-0 col-12\"},[(_vm.selectedParam.editor === 'list')?_c('div',[_c('n-select',{attrs:{\"items\":_vm.selectInputItems,\"label\":\"value\"},on:{\"input\":_vm.handleSelect},model:{value:(_vm.inputValue),callback:function ($$v) {_vm.inputValue=$$v},expression:\"inputValue\"}})],1):_vm._e(),(_vm.selectedParam.editor === 'currency')?_c('div',[_c('n-currencies-input',{attrs:{\"label\":\"value\"},on:{\"change\":_vm.handleCurrency},model:{value:(_vm.currencyValue),callback:function ($$v) {_vm.currencyValue=$$v},expression:\"currencyValue\"}})],1):_vm._e(),(\n _vm.selectedParam.editor === '' ||\n _vm.selectedParam.editor === 'hex'\n )?_c('div',[(\n _vm.schemaHasFormat(_vm.selectedParam.schema, 'date') ||\n _vm.schemaHasFormat(_vm.selectedParam.schema, 'time') ||\n _vm.schemaHasFormat(\n _vm.selectedParam.schema,\n 'date-time'\n )\n )?_c('div',[_c('n-datetime-picker',{directives:[{name:\"show\",rawName:\"v-show\",value:(\n _vm.schemaHasFormat(_vm.selectedParam.schema, 'date')\n ),expression:\"\\n schemaHasFormat(selectedParam.schema, 'date')\\n \"}],attrs:{\"dtp-id\":\"timepicker1\",\"label\":\"value\",\"onlyDate\":true,\"format\":\"YYYY-MM-DD\"},on:{\"input\":_vm.handleSelect},model:{value:(_vm.inputValue),callback:function ($$v) {_vm.inputValue=$$v},expression:\"inputValue\"}}),_c('n-datetime-picker',{directives:[{name:\"show\",rawName:\"v-show\",value:(\n _vm.schemaHasFormat(_vm.selectedParam.schema, 'time')\n ),expression:\"\\n schemaHasFormat(selectedParam.schema, 'time')\\n \"}],attrs:{\"label\":\"value\",\"dtp-id\":\"timepicker2\",\"onlyTime\":true,\"format\":\"HH:mm:ss\"},on:{\"input\":_vm.handleSelect},model:{value:(_vm.inputValue),callback:function ($$v) {_vm.inputValue=$$v},expression:\"inputValue\"}}),_c('n-datetime-picker',{directives:[{name:\"show\",rawName:\"v-show\",value:(\n _vm.schemaHasFormat(\n _vm.selectedParam.schema,\n 'date-time'\n )\n ),expression:\"\\n schemaHasFormat(\\n selectedParam.schema,\\n 'date-time',\\n )\\n \"}],attrs:{\"label\":\"value\",\"dtp-id\":\"timepicker3\",\"format\":_vm.merchantDateFormat},on:{\"input\":_vm.handleSelect},model:{value:(_vm.inputValue),callback:function ($$v) {_vm.inputValue=$$v},expression:\"inputValue\"}})],1):_c('div',[(\n _vm.selectedParam.schema.type === 'string' ||\n _vm.selectedParam.schema.type === 'integer' ||\n _vm.selectedParam.schema.type === 'number'\n )?_c('n-text-input',{attrs:{\"label\":\"value\"},on:{\"blur\":_vm.inputParamOnBlur,\"change\":_vm.inputParamOnChange},model:{value:(_vm.inputValue),callback:function ($$v) {_vm.inputValue=$$v},expression:\"inputValue\"}}):_vm._e(),(_vm.selectedParam.schema.type === 'boolean')?_c('n-select',{attrs:{\"items\":_vm.selectInputItemsBoolean,\"label\":\"value\"},on:{\"input\":_vm.handleSelect},model:{value:(_vm.inputValue),callback:function ($$v) {_vm.inputValue=$$v},expression:\"inputValue\"}}):_vm._e()],1)]):_vm._e()])],1),_c('v-row',[_c('v-col',{staticClass:\"px-0\"},[(_vm.selectedParam.message)?_c('v-alert',{attrs:{\"text\":\"\",\"prominent\":\"\",\"type\":\"error\",\"icon\":\"mdi-alert-circle-outline\"}},[_c('span',{staticClass:\"title\",domProps:{\"innerHTML\":_vm._s(_vm.selectedParam.message)}})]):_vm._e()],1)],1)],1)],1),_c('v-card-actions',[_c('v-spacer'),_c('n-button',{attrs:{\"text\":\"\",\"label\":\"cancel\",\"type\":\"button\",\"secondary\":true},on:{\"click\":_vm.cancelParam}}),_c('n-button',{attrs:{\"label\":\"save\",\"type\":\"button\",\"disabled\":_vm.selectedParam.status !== 'ok'},on:{\"click\":_vm.saveParam}})],1)],1)],1):_vm._e()],1)]},proxy:true},{key:\"item\",fn:function(ref){\n var item = ref.item;\nreturn [_c('tr',{directives:[{name:\"show\",rawName:\"v-show\",value:(item.show),expression:\"item.show\"}],attrs:{\"id\":'vp-dt-' + item.parameter}},[_c('td',[_vm._v(\" \"+_vm._s(item.shortcut)+\" \")]),_c('td',[(_vm.configurationEditable)?_c('a',{on:{\"click\":function($event){return _vm.datatableItemClicked(item)}}},[_vm._v(\" \"+_vm._s(item.name)+\" \")]):_c('span',[_vm._v(_vm._s(item.name))]),(_vm.intDebug)?_c('span',[_vm._v(\"( \"+_vm._s(item.parameter)+\" )\")]):_vm._e()]),_c('td',{staticClass:\"param-value\"},[_c('div',{class:{\n 'value-edited': item.value !== item.originalValue,\n }},[_c('span',[_vm._v(_vm._s(_vm.formatParamValue(item, item.value)))])])]),_c('td',{staticClass:\"param-value\"},[_vm._v(\" \"+_vm._s(_vm.formatParamValue(item, item.schema.default))+\" \")]),(_vm.headers.length > 4)?_c('td',{staticClass:\"text-center\"},[_c('div',{class:{\n 'value-edited': item.send !== item.originalSend,\n }},[(_vm.configurationEditable)?_c('v-simple-checkbox',{on:{\"input\":_vm.sendCheckboxClick},model:{value:(item.send),callback:function ($$v) {_vm.$set(item, \"send\", $$v)},expression:\"item.send\"}}):(item.send)?_c('v-icon',{staticClass:\"ml-2\",attrs:{\"small\":\"\"}},[_vm._v(\" mdi-check-bold \")]):_vm._e()],1)]):_vm._e(),(_vm.headers.length > 4)?_c('td',[_c('n-tooltip',{attrs:{\"tooltip\":item.message ? item.message : _vm.$t('vp.no-errors')}},[_c('n-status',{attrs:{\"value\":item.status === 'ok' ? true : false,\"onlyIcon\":true}})],1)],1):_vm._e()])]}}])})],1)],1),_c('n-modal',{ref:\"modalDialog\"})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--14-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./VpEditor.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--14-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./VpEditor.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./VpEditor.vue?vue&type=template&id=55f75f47&scoped=true&\"\nimport script from \"./VpEditor.vue?vue&type=script&lang=ts&\"\nexport * from \"./VpEditor.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./VpEditor.vue?vue&type=style&index=0&id=55f75f47&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"55f75f47\",\n null\n \n)\n\nexport default component.exports","'use strict';\nmodule.exports = function generate_allOf(it, $keyword, $ruleType) {\n var out = ' ';\n var $schema = it.schema[$keyword];\n var $schemaPath = it.schemaPath + it.util.getProperty($keyword);\n var $errSchemaPath = it.errSchemaPath + '/' + $keyword;\n var $breakOnError = !it.opts.allErrors;\n var $it = it.util.copy(it);\n var $closingBraces = '';\n $it.level++;\n var $nextValid = 'valid' + $it.level;\n var $currentBaseId = $it.baseId,\n $allSchemasEmpty = true;\n var arr1 = $schema;\n if (arr1) {\n var $sch, $i = -1,\n l1 = arr1.length - 1;\n while ($i < l1) {\n $sch = arr1[$i += 1];\n if ((it.opts.strictKeywords ? (typeof $sch == 'object' && Object.keys($sch).length > 0) || $sch === false : it.util.schemaHasRules($sch, it.RULES.all))) {\n $allSchemasEmpty = false;\n $it.schema = $sch;\n $it.schemaPath = $schemaPath + '[' + $i + ']';\n $it.errSchemaPath = $errSchemaPath + '/' + $i;\n out += ' ' + (it.validate($it)) + ' ';\n $it.baseId = $currentBaseId;\n if ($breakOnError) {\n out += ' if (' + ($nextValid) + ') { ';\n $closingBraces += '}';\n }\n }\n }\n }\n if ($breakOnError) {\n if ($allSchemasEmpty) {\n out += ' if (true) { ';\n } else {\n out += ' ' + ($closingBraces.slice(0, -1)) + ' ';\n }\n }\n return out;\n}\n","'use strict';\n\n\nvar Cache = module.exports = function Cache() {\n this._cache = {};\n};\n\n\nCache.prototype.put = function Cache_put(key, value) {\n this._cache[key] = value;\n};\n\n\nCache.prototype.get = function Cache_get(key) {\n return this._cache[key];\n};\n\n\nCache.prototype.del = function Cache_del(key) {\n delete this._cache[key];\n};\n\n\nCache.prototype.clear = function Cache_clear() {\n this._cache = {};\n};\n","'use strict';\n\nmodule.exports = function (data, opts) {\n if (!opts) opts = {};\n if (typeof opts === 'function') opts = { cmp: opts };\n var cycles = (typeof opts.cycles === 'boolean') ? opts.cycles : false;\n\n var cmp = opts.cmp && (function (f) {\n return function (node) {\n return function (a, b) {\n var aobj = { key: a, value: node[a] };\n var bobj = { key: b, value: node[b] };\n return f(aobj, bobj);\n };\n };\n })(opts.cmp);\n\n var seen = [];\n return (function stringify (node) {\n if (node && node.toJSON && typeof node.toJSON === 'function') {\n node = node.toJSON();\n }\n\n if (node === undefined) return;\n if (typeof node == 'number') return isFinite(node) ? '' + node : 'null';\n if (typeof node !== 'object') return JSON.stringify(node);\n\n var i, out;\n if (Array.isArray(node)) {\n out = '[';\n for (i = 0; i < node.length; i++) {\n if (i) out += ',';\n out += stringify(node[i]) || 'null';\n }\n return out + ']';\n }\n\n if (node === null) return 'null';\n\n if (seen.indexOf(node) !== -1) {\n if (cycles) return JSON.stringify('__cycle__');\n throw new TypeError('Converting circular structure to JSON');\n }\n\n var seenIndex = seen.push(node) - 1;\n var keys = Object.keys(node).sort(cmp && cmp(node));\n out = '';\n for (i = 0; i < keys.length; i++) {\n var key = keys[i];\n var value = stringify(node[key]);\n\n if (!value) continue;\n if (out) out += ',';\n out += JSON.stringify(key) + ':' + value;\n }\n seen.splice(seenIndex, 1);\n return '{' + out + '}';\n })(data);\n};\n","'use strict';\n\n\nmodule.exports = {\n copy: copy,\n checkDataType: checkDataType,\n checkDataTypes: checkDataTypes,\n coerceToTypes: coerceToTypes,\n toHash: toHash,\n getProperty: getProperty,\n escapeQuotes: escapeQuotes,\n equal: require('fast-deep-equal'),\n ucs2length: require('./ucs2length'),\n varOccurences: varOccurences,\n varReplace: varReplace,\n schemaHasRules: schemaHasRules,\n schemaHasRulesExcept: schemaHasRulesExcept,\n schemaUnknownRules: schemaUnknownRules,\n toQuotedString: toQuotedString,\n getPathExpr: getPathExpr,\n getPath: getPath,\n getData: getData,\n unescapeFragment: unescapeFragment,\n unescapeJsonPointer: unescapeJsonPointer,\n escapeFragment: escapeFragment,\n escapeJsonPointer: escapeJsonPointer\n};\n\n\nfunction copy(o, to) {\n to = to || {};\n for (var key in o) to[key] = o[key];\n return to;\n}\n\n\nfunction checkDataType(dataType, data, strictNumbers, negate) {\n var EQUAL = negate ? ' !== ' : ' === '\n , AND = negate ? ' || ' : ' && '\n , OK = negate ? '!' : ''\n , NOT = negate ? '' : '!';\n switch (dataType) {\n case 'null': return data + EQUAL + 'null';\n case 'array': return OK + 'Array.isArray(' + data + ')';\n case 'object': return '(' + OK + data + AND +\n 'typeof ' + data + EQUAL + '\"object\"' + AND +\n NOT + 'Array.isArray(' + data + '))';\n case 'integer': return '(typeof ' + data + EQUAL + '\"number\"' + AND +\n NOT + '(' + data + ' % 1)' +\n AND + data + EQUAL + data +\n (strictNumbers ? (AND + OK + 'isFinite(' + data + ')') : '') + ')';\n case 'number': return '(typeof ' + data + EQUAL + '\"' + dataType + '\"' +\n (strictNumbers ? (AND + OK + 'isFinite(' + data + ')') : '') + ')';\n default: return 'typeof ' + data + EQUAL + '\"' + dataType + '\"';\n }\n}\n\n\nfunction checkDataTypes(dataTypes, data, strictNumbers) {\n switch (dataTypes.length) {\n case 1: return checkDataType(dataTypes[0], data, strictNumbers, true);\n default:\n var code = '';\n var types = toHash(dataTypes);\n if (types.array && types.object) {\n code = types.null ? '(': '(!' + data + ' || ';\n code += 'typeof ' + data + ' !== \"object\")';\n delete types.null;\n delete types.array;\n delete types.object;\n }\n if (types.number) delete types.integer;\n for (var t in types)\n code += (code ? ' && ' : '' ) + checkDataType(t, data, strictNumbers, true);\n\n return code;\n }\n}\n\n\nvar COERCE_TO_TYPES = toHash([ 'string', 'number', 'integer', 'boolean', 'null' ]);\nfunction coerceToTypes(optionCoerceTypes, dataTypes) {\n if (Array.isArray(dataTypes)) {\n var types = [];\n for (var i=0; i= lvl) throw new Error('Cannot access property/index ' + up + ' levels up, current level is ' + lvl);\n return paths[lvl - up];\n }\n\n if (up > lvl) throw new Error('Cannot access data ' + up + ' levels up, current level is ' + lvl);\n data = 'data' + ((lvl - up) || '');\n if (!jsonPointer) return data;\n }\n\n var expr = data;\n var segments = jsonPointer.split('/');\n for (var i=0; i