{
  "version": 3,
  "sources": ["../../../../src/packages/network.config/config.ts"],
  "sourcesContent": ["// eslint-disable-next-line @typescript-eslint/ban-ts-comment\n// @ts-ignore\nimport nerfDart from 'nerf-dart';\n\nfunction getMaxParts(uris: string[]): number {\n  return uris.reduce((max: number, uri: string): number => {\n    const parts = uri.split('/').length;\n\n    return parts > max ? parts : max;\n  }, 0);\n}\n\nexport function pickSettingByUrl<T>(\n  generic: { [key: string]: T } | undefined,\n  uri: string\n): T | undefined {\n  if (!generic) {\n    return undefined;\n  }\n\n  if (typeof generic[uri] !== 'undefined') {\n    return generic[uri];\n  }\n\n  const nerf = nerfDart(uri);\n\n  const withoutPort = removePort(new URL(uri));\n\n  if (typeof generic[nerf] !== 'undefined') {\n    return generic[nerf];\n  }\n\n  if (typeof generic[withoutPort] !== 'undefined') {\n    return generic[withoutPort];\n  }\n\n  const maxParts = getMaxParts(Object.keys(generic));\n\n  const parts = nerf.split('/');\n\n  for (let i = Math.min(parts.length, maxParts) - 1; i >= 3; i--) {\n    const key = `${parts.slice(0, i).join('/')}/`;\n\n    if (typeof generic[key] !== 'undefined') {\n      return generic[key];\n    }\n  }\n\n  if (withoutPort !== uri) {\n    return pickSettingByUrl(generic, withoutPort);\n  }\n\n  return undefined;\n}\n\nfunction removePort(config: URL): string {\n  if (config.port === '') {\n    return config.href;\n  }\n\n  config.port = '';\n\n  const res = config.toString();\n\n  return res.endsWith('/') ? res : `${res}/`;\n}\n"],
  "mappings": "AAEA,OAAO,cAAc;AAErB,SAAS,YAAY,MAAwB;AAC3C,SAAO,KAAK,OAAO,CAAC,KAAa,QAAwB;AACvD,UAAM,QAAQ,IAAI,MAAM,GAAG,EAAE;AAE7B,WAAO,QAAQ,MAAM,QAAQ;AAAA,EAC/B,GAAG,CAAC;AACN;AAEO,SAAS,iBACd,SACA,KACe;AACf,MAAI,CAAC,SAAS;AACZ,WAAO;AAAA,EACT;AAEA,MAAI,OAAO,QAAQ,GAAG,MAAM,aAAa;AACvC,WAAO,QAAQ,GAAG;AAAA,EACpB;AAEA,QAAM,OAAO,SAAS,GAAG;AAEzB,QAAM,cAAc,WAAW,IAAI,IAAI,GAAG,CAAC;AAE3C,MAAI,OAAO,QAAQ,IAAI,MAAM,aAAa;AACxC,WAAO,QAAQ,IAAI;AAAA,EACrB;AAEA,MAAI,OAAO,QAAQ,WAAW,MAAM,aAAa;AAC/C,WAAO,QAAQ,WAAW;AAAA,EAC5B;AAEA,QAAM,WAAW,YAAY,OAAO,KAAK,OAAO,CAAC;AAEjD,QAAM,QAAQ,KAAK,MAAM,GAAG;AAE5B,WAAS,IAAI,KAAK,IAAI,MAAM,QAAQ,QAAQ,IAAI,GAAG,KAAK,GAAG,KAAK;AAC9D,UAAM,MAAM,GAAG,MAAM,MAAM,GAAG,CAAC,EAAE,KAAK,GAAG,CAAC;AAE1C,QAAI,OAAO,QAAQ,GAAG,MAAM,aAAa;AACvC,aAAO,QAAQ,GAAG;AAAA,IACpB;AAAA,EACF;AAEA,MAAI,gBAAgB,KAAK;AACvB,WAAO,iBAAiB,SAAS,WAAW;AAAA,EAC9C;AAEA,SAAO;AACT;AAEA,SAAS,WAAW,QAAqB;AACvC,MAAI,OAAO,SAAS,IAAI;AACtB,WAAO,OAAO;AAAA,EAChB;AAEA,SAAO,OAAO;AAEd,QAAM,MAAM,OAAO,SAAS;AAE5B,SAAO,IAAI,SAAS,GAAG,IAAI,MAAM,GAAG,GAAG;AACzC;",
  "names": []
}
