(self.webpackChunkRemoteClient = self.webpackChunkRemoteClient || []).push([
  [6601],
  {
    21132: (e, r, a) => {
      'use strict';
      a.d(r, {
        a: () => v,
        b: () => p,
        c: () => f,
        d: () => c,
        e: () => w,
        f: () => d,
        p: () => y,
        s: () => h,
        t: () => m,
        w: () => b,
      });
      var t = a(76506),
        n = a(32101),
        l = a(38742);
      const s = [
          'MapServer',
          'ImageServer',
          'FeatureServer',
          'SceneServer',
          'StreamServer',
          'VectorTileServer',
        ],
        i = new RegExp(
          `^((?:https?:)?\\/\\/\\S+?\\/rest\\/services\\/(.+?)\\/(${s.join(
            '|',
          )}))(?:\\/(?:layers\\/)?(\\d+))?`,
          'i',
        ),
        o = new RegExp(
          `^((?:https?:)?\\/\\/\\S+?\\/([^\\/\\n]+)\\/(${s.join(
            '|',
          )}))(?:\\/(?:layers\\/)?(\\d+))?`,
          'i',
        ),
        u = /(.*?)\/(?:layers\/)?(\d+)\/?$/i;
      function c(e) {
        return !!i.test(e);
      }
      function y(e) {
        const r = (0, n.mN)(e),
          a = r.path.match(i) || r.path.match(o);
        if (!a) return null;
        const [, t, l, s, u] = a,
          c = l.indexOf('/');
        return {
          title: f(-1 !== c ? l.slice(c + 1) : l),
          serverType: s,
          sublayer: null != u && '' !== u ? parseInt(u, 10) : null,
          url: { path: t },
        };
      }
      function d(e) {
        const r = (0, n.mN)(e).path.match(u);
        return r ? { serviceUrl: r[1], sublayerId: Number(r[2]) } : null;
      }
      function f(e) {
        return (e = e.replace(/\s*[/_]+\s*/g, ' '))[0].toUpperCase() + e.slice(1);
      }
      function m(e, r) {
        const a = [];
        if (e) {
          const r = y(e);
          (0, t.i)(r) && r.title && a.push(r.title);
        }
        if (r) {
          const e = f(r);
          a.push(e);
        }
        if (2 === a.length) {
          if (-1 !== a[0].toLowerCase().indexOf(a[1].toLowerCase())) return a[0];
          if (-1 !== a[1].toLowerCase().indexOf(a[0].toLowerCase())) return a[1];
        }
        return a.join(' - ');
      }
      function p(e) {
        if (!e) return !1;
        const r = -1 !== (e = e.toLowerCase()).indexOf('.arcgis.com/'),
          a =
            -1 !== e.indexOf('//services') ||
            -1 !== e.indexOf('//tiles') ||
            -1 !== e.indexOf('//features');
        return r && a;
      }
      function h(e, r) {
        return e ? (0, n.Qj)((0, n.Hu)(e, r)) : e;
      }
      function v(e) {
        let { url: r } = e;
        if (!r) return { url: r };
        r = (0, n.Hu)(r, e.logger);
        const a = (0, n.mN)(r),
          l = y(a.path);
        let s;
        if ((0, t.i)(l))
          null != l.sublayer && null == e.layer.layerId && (s = l.sublayer), (r = l.url.path);
        else if (e.nonStandardUrlAllowed) {
          const e = d(a.path);
          (0, t.i)(e) && ((r = e.serviceUrl), (s = e.sublayerId));
        }
        return { url: (0, n.Qj)(r), layerId: s };
      }
      function b(e, r, a, t, s) {
        (0, l.w)(r, t, 'url', s),
          t.url && null != e.layerId && (t.url = (0, n.v_)(t.url, a, e.layerId.toString()));
      }
      function w(e) {
        if (!e) return !1;
        const r = e.toLowerCase(),
          a = -1 !== r.indexOf('/services/'),
          t = -1 !== r.indexOf('/mapserver/wmsserver'),
          n = -1 !== r.indexOf('/imageserver/wmsserver'),
          l = -1 !== r.indexOf('/wmsserver');
        return a && (t || n || l);
      }
    },
    66601: (e, r, a) => {
      'use strict';
      a.r(r), a.d(r, { fromUrl: () => u });
      var t = a(82058),
        n = a(60991),
        l = a(76506),
        s = a(32101),
        i = a(21132),
        o = a(67902);
      async function u(e) {
        var r;
        const t = null == (r = e.properties) ? void 0 : r.customParameters,
          u = await (async function (e, r) {
            let a = (0, i.p)(e);
            if (
              ((0, l.b)(a) &&
                (a = await (async function (e, r) {
                  var a;
                  const t = await f(e, r);
                  let n = null,
                    o = null;
                  const u = t.type;
                  if (
                    ('Feature Layer' === u || 'Table' === u
                      ? ((n = 'FeatureServer'), (o = t.id))
                      : 'indexedVector' === u
                      ? (n = 'VectorTileServer')
                      : t.hasOwnProperty('mapName')
                      ? (n = 'MapServer')
                      : t.hasOwnProperty('bandCount') && t.hasOwnProperty('pixelSizeX')
                      ? (n = 'ImageServer')
                      : t.hasOwnProperty('maxRecordCount') &&
                        t.hasOwnProperty('allowGeometryUpdates')
                      ? (n = 'FeatureServer')
                      : t.hasOwnProperty('streamUrls')
                      ? (n = 'StreamServer')
                      : y(t)
                      ? ((n = 'SceneServer'), (o = t.id))
                      : t.hasOwnProperty('layers') &&
                        y(null == (a = t.layers) ? void 0 : a[0]) &&
                        (n = 'SceneServer'),
                    !n)
                  )
                    return null;
                  const c = null != o ? (0, i.f)(e) : null;
                  return {
                    title: ((0, l.i)(c) && t.name) || (0, s.vt)(e),
                    serverType: n,
                    sublayer: o,
                    url: { path: (0, l.i)(c) ? c.serviceUrl : (0, s.mN)(e).path },
                  };
                })(e, r)),
              (0, l.b)(a))
            )
              throw new n.Z(
                'arcgis-layers:url-mismatch',
                "The url '${url}' is not a valid arcgis resource",
                { url: e },
              );
            const { serverType: t, sublayer: u } = a;
            let c;
            const m = {
              FeatureServer: 'FeatureLayer',
              StreamServer: 'StreamLayer',
              VectorTileServer: 'VectorTileLayer',
            };
            switch (t) {
              case 'MapServer':
                c =
                  null != u
                    ? 'FeatureLayer'
                    : (async function (e, r) {
                        return (await f(e, r)).tileInfo;
                      })(e, r).then((e) => (e ? 'TileLayer' : 'MapImageLayer'));
                break;
              case 'ImageServer':
                c = f(e, r).then((e) => {
                  const r = e.tileInfo && e.tileInfo.format;
                  return e.tileInfo
                    ? !r ||
                      'LERC' !== r.toUpperCase() ||
                      (e.cacheType && 'elevation' !== e.cacheType.toLowerCase())
                      ? 'ImageryTileLayer'
                      : 'ElevationLayer'
                    : 'ImageryLayer';
                });
                break;
              case 'SceneServer':
                c = f(a.url.path, r).then((e) => {
                  const r = {
                    Point: 'SceneLayer',
                    '3DObject': 'SceneLayer',
                    IntegratedMesh: 'IntegratedMeshLayer',
                    PointCloud: 'PointCloudLayer',
                    Building: 'BuildingSceneLayer',
                  };
                  if (e && Array.isArray(e.layers) && e.layers.length > 0) {
                    const a = e.layers[0].layerType;
                    if (null != r[a]) return r[a];
                  }
                  return 'SceneLayer';
                });
                break;
              default:
                c = m[t];
            }
            const p = 'FeatureServer' === t,
              h = {
                parsedUrl: a,
                Constructor: null,
                layerOrTableId: p ? u : null,
                sublayerIds: null,
                tableIds: null,
              },
              v = await c;
            if ({ FeatureLayer: !0, SceneLayer: !0 }[v] && null == u) {
              const a = await (async function (e, r, a) {
                var t, n;
                let l,
                  s = !1;
                if ('FeatureServer' === r) {
                  const r = await (async function (e, r) {
                    var a, t;
                    let n = await f(e, r);
                    (n = n || {}),
                      (n.layers = (null == (a = n.layers) ? void 0 : a.filter(d)) || []);
                    const l = { serviceJSON: n };
                    if (n.currentVersion < 10.5) return l;
                    const s = await f(e + '/layers', r);
                    return (
                      (l.layersJSON = {
                        layers: (null == s || null == (t = s.layers) ? void 0 : t.filter(d)) || [],
                        tables: (null == s ? void 0 : s.tables) || [],
                      }),
                      l
                    );
                  })(e, a);
                  (s = !!r.layersJSON), (l = r.layersJSON || r.serviceJSON);
                } else l = await f(e, a);
                const i = null == (t = l) ? void 0 : t.layers,
                  o = null == (n = l) ? void 0 : n.tables;
                return {
                  layerIds: (null == i ? void 0 : i.map((e) => e.id).reverse()) || [],
                  tableIds: (null == o ? void 0 : o.map((e) => e.id).reverse()) || [],
                  layerInfos: s ? i : [],
                  tableInfos: s ? o : [],
                };
              })(e, t, r);
              if (
                (p && ((h.sublayerInfos = a.layerInfos), (h.tableInfos = a.tableInfos)),
                1 !== a.layerIds.length + a.tableIds.length)
              )
                (h.sublayerIds = a.layerIds), (h.tableIds = a.tableIds);
              else if (p) {
                var b, w;
                (h.layerOrTableId = null != (b = a.layerIds[0]) ? b : a.tableIds[0]),
                  (h.sourceJSON = null != (w = a.layerInfos[0]) ? w : a.tableInfos[0]);
              }
            }
            return (
              (h.Constructor = await (async function (e) {
                return (0, o.l[e])();
              })(v)),
              h
            );
          })(e.url, t),
          m = { ...e.properties, url: e.url };
        if (!u.sublayerIds)
          return (
            null != u.layerOrTableId &&
              ((m.layerId = u.layerOrTableId), (m.sourceJSON = u.sourceJSON)),
            new u.Constructor(m)
          );
        const p = new (0, (await a.e(6287).then(a.bind(a, 1128))).default)({
          title: u.parsedUrl.title,
        });
        return (
          (function (e, r, a) {
            function t(e, t) {
              const n = { ...a, layerId: e, sublayerTitleMode: 'service-name' };
              return (0, l.i)(t) && (n.sourceJSON = t), new r.Constructor(n);
            }
            r.sublayerIds.forEach((a) => {
              const n = t(a, c(r.sublayerInfos, a));
              e.add(n);
            }),
              r.tableIds.forEach((a) => {
                const n = t(a, c(r.tableInfos, a));
                e.tables.add(n);
              });
          })(p, u, m),
          p
        );
      }
      function c(e, r) {
        return e ? e.find((e) => e.id === r) : null;
      }
      function y(e) {
        return (
          (null == e ? void 0 : e.hasOwnProperty('store')) &&
          e.hasOwnProperty('id') &&
          'number' == typeof e.id
        );
      }
      function d(e) {
        return !e.type || 'Feature Layer' === e.type;
      }
      async function f(e, r) {
        return (await (0, t.default)(e, { responseType: 'json', query: { f: 'json', ...r } })).data;
      }
      a(31450), a(71552), a(88762), a(92143), a(40642), a(81172), a(50406), a(38742);
    },
    67902: (e, r, a) => {
      'use strict';
      a.d(r, { l: () => t });
      const t = {
        BingMapsLayer: async () =>
          (await Promise.all([a.e(4851), a.e(7963)]).then(a.bind(a, 37963))).default,
        BuildingSceneLayer: async () =>
          (
            await Promise.all([
              a.e(4851),
              a.e(135),
              a.e(6748),
              a.e(5959),
              a.e(208),
              a.e(1292),
              a.e(3770),
              a.e(8824),
              a.e(9506),
              a.e(8989),
              a.e(2486),
              a.e(3439),
            ]).then(a.bind(a, 3439))
          ).default,
        CSVLayer: async () =>
          (
            await Promise.all([
              a.e(4851),
              a.e(135),
              a.e(6748),
              a.e(5959),
              a.e(208),
              a.e(1292),
              a.e(3770),
              a.e(8824),
              a.e(9506),
              a.e(4004),
            ]).then(a.bind(a, 44004))
          ).default,
        ElevationLayer: async () =>
          (await Promise.all([a.e(2060), a.e(2204)]).then(a.bind(a, 72204))).default,
        FeatureLayer: async () =>
          (
            await Promise.all([
              a.e(4851),
              a.e(135),
              a.e(6748),
              a.e(5959),
              a.e(208),
              a.e(1292),
              a.e(3770),
              a.e(8824),
              a.e(9506),
              a.e(6202),
            ]).then(a.bind(a, 9506))
          ).default,
        GroupLayer: async () => (await a.e(1128).then(a.bind(a, 1128))).default,
        GeoRSSLayer: async () =>
          (await Promise.all([a.e(4851), a.e(135), a.e(2197)]).then(a.bind(a, 92197))).default,
        ImageryLayer: async () =>
          (
            await Promise.all([
              a.e(4851),
              a.e(135),
              a.e(6748),
              a.e(5959),
              a.e(1292),
              a.e(5528),
              a.e(558),
              a.e(6694),
              a.e(5530),
            ]).then(a.bind(a, 95530))
          ).default,
        ImageryTileLayer: async () =>
          (
            await Promise.all([
              a.e(4851),
              a.e(135),
              a.e(6748),
              a.e(5959),
              a.e(2334),
              a.e(2060),
              a.e(558),
              a.e(6694),
              a.e(8166),
            ]).then(a.bind(a, 68166))
          ).default,
        IntegratedMeshLayer: async () =>
          (await Promise.all([a.e(2334), a.e(8989), a.e(1244)]).then(a.bind(a, 21244))).default,
        KMLLayer: async () =>
          (
            await Promise.all([
              a.e(4851),
              a.e(135),
              a.e(6748),
              a.e(5959),
              a.e(208),
              a.e(1903),
            ]).then(a.bind(a, 21903))
          ).default,
        MapImageLayer: async () =>
          (
            await Promise.all([
              a.e(4851),
              a.e(135),
              a.e(6748),
              a.e(5959),
              a.e(208),
              a.e(1292),
              a.e(3770),
              a.e(9615),
              a.e(2883),
              a.e(9450),
            ]).then(a.bind(a, 62883))
          ).default,
        MapNotesLayer: async () =>
          (
            await Promise.all([
              a.e(4851),
              a.e(135),
              a.e(6748),
              a.e(5959),
              a.e(208),
              a.e(1292),
              a.e(3770),
              a.e(2334),
              a.e(8824),
              a.e(9506),
              a.e(1135),
            ]).then(a.bind(a, 41135))
          ).default,
        OGCFeatureLayer: async () =>
          (
            await Promise.all([
              a.e(4851),
              a.e(135),
              a.e(6748),
              a.e(5959),
              a.e(208),
              a.e(1292),
              a.e(3770),
              a.e(4951),
              a.e(3958),
            ]).then(a.bind(a, 63958))
          ).default,
        OpenStreetMapLayer: async () =>
          (await Promise.all([a.e(4851), a.e(3799), a.e(6043)]).then(a.bind(a, 16043))).default,
        PointCloudLayer: async () =>
          (await Promise.all([a.e(6748), a.e(8989), a.e(9151), a.e(5032)]).then(a.bind(a, 25032)))
            .default,
        RouteLayer: async () =>
          (
            await Promise.all([
              a.e(4851),
              a.e(135),
              a.e(6748),
              a.e(5959),
              a.e(208),
              a.e(1292),
              a.e(3770),
              a.e(8824),
              a.e(9506),
              a.e(4841),
            ]).then(a.bind(a, 24841))
          ).default,
        SceneLayer: async () =>
          (
            await Promise.all([
              a.e(4851),
              a.e(135),
              a.e(6748),
              a.e(5959),
              a.e(208),
              a.e(1292),
              a.e(3770),
              a.e(8824),
              a.e(9506),
              a.e(8989),
              a.e(2486),
              a.e(3741),
            ]).then(a.bind(a, 3741))
          ).default,
        StreamLayer: async () =>
          (
            await Promise.all([
              a.e(4851),
              a.e(135),
              a.e(6748),
              a.e(5959),
              a.e(208),
              a.e(1292),
              a.e(3770),
              a.e(8824),
              a.e(8324),
            ]).then(a.bind(a, 58324))
          ).default,
        TileLayer: async () =>
          (
            await Promise.all([
              a.e(4851),
              a.e(135),
              a.e(6748),
              a.e(5959),
              a.e(208),
              a.e(1292),
              a.e(3770),
              a.e(2060),
              a.e(9615),
              a.e(611),
            ]).then(a.bind(a, 90611))
          ).default,
        UnknownLayer: async () => (await a.e(3117).then(a.bind(a, 63117))).default,
        UnsupportedLayer: async () => (await a.e(8243).then(a.bind(a, 88243))).default,
        VectorTileLayer: async () =>
          (await Promise.all([a.e(2060), a.e(6611), a.e(8326)]).then(a.bind(a, 78326))).default,
        WebTileLayer: async () =>
          (
            await Promise.all([a.e(4851), a.e(3799)])
              .then(a.bind(a, 3799))
              .then(function (e) {
                return e.a;
              })
          ).default,
        WFSLayer: async () =>
          (
            await Promise.all([
              a.e(4851),
              a.e(135),
              a.e(6748),
              a.e(5959),
              a.e(208),
              a.e(1292),
              a.e(3770),
              a.e(2334),
              a.e(8824),
              a.e(4344),
              a.e(4797),
            ]).then(a.bind(a, 44797))
          ).default,
        WMSLayer: async () =>
          (await Promise.all([a.e(4851), a.e(135), a.e(6748), a.e(403)]).then(a.bind(a, 40403)))
            .default,
        WMTSLayer: async () =>
          (await Promise.all([a.e(4851), a.e(3799), a.e(2790)]).then(a.bind(a, 82790))).default,
      };
    },
    38742: (e, r, a) => {
      'use strict';
      a.d(r, { f: () => l, i: () => y, p: () => f, r: () => i, t: () => s, w: () => o });
      var t = a(76506),
        n = a(32101);
      function l(e, r) {
        const a = r && r.url && r.url.path;
        if (
          e &&
          a &&
          ((e = (0, n.hF)(e, a, { preserveProtocolRelative: !0 })),
          r.portalItem && r.readResourcePaths)
        ) {
          const a = (0, n.PF)(e, r.portalItem.itemUrl);
          c.test(a) && r.readResourcePaths.push(r.portalItem.resourceFromPath(a).path);
        }
        return d(e, r && r.portal);
      }
      function s(e, r, a = 0) {
        if (!e) return e;
        !(0, n.YP)(e) && r && r.blockedRelativeUrls && r.blockedRelativeUrls.push(e);
        let t = (0, n.hF)(e);
        if (r) {
          const a =
            (r.verifyItemRelativeUrls && r.verifyItemRelativeUrls.rootPath) ||
            (r.url && r.url.path);
          if (a) {
            const l = d(a, r.portal);
            (t = (0, n.PF)(d(t, r.portal), l, l)),
              t !== e && r.verifyItemRelativeUrls && r.verifyItemRelativeUrls.writtenUrls.push(t);
          }
        }
        return (
          (t = (function (e, r) {
            return r && !r.isPortal && r.urlKey && r.customBaseUrl
              ? (0, n.Ie)(e, `${r.urlKey}.${r.customBaseUrl}`, r.portalHostname)
              : e;
          })(t, r && r.portal)),
          (0, n.YP)(t) && (t = (0, n.Fv)(t)),
          null != r &&
            r.resources &&
            null != r &&
            r.portalItem &&
            !(0, n.YP)(t) &&
            !(0, n.HK)(t) &&
            0 === a &&
            r.resources.toKeep.push({ resource: r.portalItem.resourceFromPath(t) }),
          t
        );
      }
      function i(e, r, a) {
        return l(e, a);
      }
      function o(e, r, a, t) {
        const n = s(e, t);
        void 0 !== n && (r[a] = n);
      }
      const u = /\/items\/([^\/]+)\/resources\//,
        c = /^\.\/resources\//;
      function y(e) {
        const r = (0, t.i)(e) ? e.match(u) : null;
        return (0, t.i)(r) ? r[1] : null;
      }
      function d(e, r) {
        if (!r || r.isPortal || !r.urlKey || !r.customBaseUrl) return e;
        const a = `${r.urlKey}.${r.customBaseUrl}`;
        return (0, n.D6)(n.Gd, `${n.Gd.scheme}://${a}`)
          ? (0, n.Ie)(e, r.portalHostname, a)
          : (0, n.Ie)(e, a, r.portalHostname);
      }
      var f = Object.freeze({
        __proto__: null,
        fromJSON: l,
        toJSON: s,
        read: i,
        write: o,
        itemIdFromResourceUrl: y,
      });
    },
  },
]);
