{"version":3,"file":"monumentStructuredSearchMap.bundle.min.js","mappings":"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","sources":["webpack://app/webpack/runtime/chunk loaded","webpack://app/./Scripts/DefaultLayerConfigurationFactory.ts","webpack://app/./Scripts/DefaultMapOptions.ts","webpack://app/./Scripts/HbsmrRecordTypeResource.ts","webpack://app/./Scripts/HbsmrResourceFactory.ts","webpack://app/./Scripts/HbsmrStyleFactory.ts","webpack://app/./Scripts/HbsmrUser.ts","webpack://app/./Scripts/HighlandBaseMapping_27700.ts","webpack://app/./Scripts/HighlandRecordTypes.ts","webpack://app/./Scripts/MapBase.ts","webpack://app/./Scripts/MonumentStructuredSearchMap.ts","webpack://app/./Scripts/TextPackLoader.ts","webpack://app/external var \"bootstrap\"","webpack://app/webpack/bootstrap","webpack://app/webpack/runtime/compat get default export","webpack://app/webpack/runtime/define property getters","webpack://app/webpack/runtime/global","webpack://app/webpack/runtime/hasOwnProperty shorthand","webpack://app/webpack/runtime/make namespace object","webpack://app/webpack/runtime/jsonp chunk loading","webpack://app/webpack/startup"],"sourcesContent":["var deferred = [];\n__webpack_require__.O = (result, chunkIds, fn, priority) => {\n\tif(chunkIds) {\n\t\tpriority = priority || 0;\n\t\tfor(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];\n\t\tdeferred[i] = [chunkIds, fn, priority];\n\t\treturn;\n\t}\n\tvar notFulfilled = Infinity;\n\tfor (var i = 0; i < deferred.length; i++) {\n\t\tvar [chunkIds, fn, priority] = deferred[i];\n\t\tvar fulfilled = true;\n\t\tfor (var j = 0; j < chunkIds.length; j++) {\n\t\t\tif ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every((key) => (__webpack_require__.O[key](chunkIds[j])))) {\n\t\t\t\tchunkIds.splice(j--, 1);\n\t\t\t} else {\n\t\t\t\tfulfilled = false;\n\t\t\t\tif(priority < notFulfilled) notFulfilled = priority;\n\t\t\t}\n\t\t}\n\t\tif(fulfilled) {\n\t\t\tdeferred.splice(i--, 1)\n\t\t\tvar r = fn();\n\t\t\tif (r !== undefined) result = r;\n\t\t}\n\t}\n\treturn result;\n};","import { IVectorLayerGroupConfig } from \"esdm-map/dist/layers/groups/vector/interfaces/IVectorLayerGroupConfig\";\r\nimport { WfsParamSourceMapServer, IWfsParamSource, WfsBboxAsWktRequestParams } from \"esdm-map/dist/layers/vector/sources/wfs\";\r\nimport { VectorLayerStrategy } from \"esdm-map/dist/layers/vector/VectorLayerStrategy\";\r\n\r\nimport { HighlandRecordType, HighlandRecordSubType} from \"./HighlandRecordTypes\";\r\n\r\nexport class DefaultLayerConfigurationFactory {\r\n\r\n private mapFileUrl: string = \"/api/MapServer/Hbsmr\";\r\n\r\n private paramSource(): IWfsParamSource {\r\n return new WfsParamSourceMapServer(new WfsBboxAsWktRequestParams(),{srsName: \"EPSG:27700\"});\r\n }\r\n\r\n constructor() {\r\n }\r\n\r\n public layerConfig = (\r\n recordType: HighlandRecordType,\r\n recordSubType: HighlandRecordSubType = null,\r\n opts: IVectorLayerGroupConfig = {}\r\n ): IVectorLayerGroupConfig => {\r\n let layerConfig: IVectorLayerGroupConfig = null;\r\n\r\n switch (recordType) {\r\n case HighlandRecordType.Monument:\r\n layerConfig = this.Monument(opts);\r\n break; \r\n\r\n case HighlandRecordType.Event:\r\n layerConfig = this.Event(opts);\r\n break; \r\n\r\n case HighlandRecordType.FlowCountryWorldHeritageSite:\r\n layerConfig = this.FlowCountryWHS(opts)\r\n break;\r\n }\r\n\r\n if (layerConfig === null && recordSubType !== null) {\r\n switch (recordSubType) {\r\n\r\n case HighlandRecordSubType.ListedBuilding:\r\n layerConfig = this.ListedBuilding(opts);\r\n break;\r\n\r\n case HighlandRecordSubType.ScheduledMonument:\r\n layerConfig = this.ScheduledMonument(opts);\r\n break; \r\n \r\n case HighlandRecordSubType.DesignedLandscape:\r\n layerConfig = this.DesignedLandscape(opts);\r\n break; \r\n\r\n case HighlandRecordSubType.ConservationArea:\r\n layerConfig = this.ConservationArea(opts);\r\n break; \r\n\r\n case HighlandRecordSubType.HistoricBattlefield:\r\n layerConfig = this.HistoricBattlefield(opts);\r\n break; \r\n\r\n case HighlandRecordSubType.HistoricMarineProtectedArea:\r\n layerConfig = this.HistoricMarineProtectedArea(opts);\r\n break; \r\n }\r\n }\r\n\r\n return layerConfig;\r\n }\r\n\r\n private Monument = (\r\n opts: IVectorLayerGroupConfig\r\n ): IVectorLayerGroupConfig => {\r\n return {\r\n ...{\r\n displayName: \"Monuments\",\r\n ref: \"Monuments\",\r\n type: HighlandRecordType.Monument,\r\n strategy: VectorLayerStrategy.Bbox,\r\n url: this.mapFileUrl,\r\n wfsParams: this.paramSource(),\r\n maxFeatureCount: 2000,\r\n //legend: { point: false, line: false },\r\n visibleOnFirstLoad: false,\r\n alwaysLoadOnZoom: true,\r\n layers: [\r\n {\r\n layerName: \"MonumentPolygonsWFS\",\r\n minZoom: 7,\r\n maxZoom: 19\r\n },\r\n {\r\n layerName: \"MonumentLinesWFS\",\r\n minZoom: 7,\r\n maxZoom: 19\r\n },\r\n {\r\n layerName: \"MonumentPointsWFS\",\r\n minZoom: 1,\r\n maxZoom: 19\r\n },\r\n {\r\n layerName: \"MonumentLinesAsPointsWFS\",\r\n minZoom: 1,\r\n maxZoom: 6\r\n },\r\n {\r\n layerName: \"MonumentPolygonsAsPointsWFS\",\r\n minZoom: 1,\r\n maxZoom: 6\r\n }\r\n ]\r\n }, ...opts\r\n };\r\n }\r\n\r\n private Event = (\r\n opts: IVectorLayerGroupConfig\r\n ): IVectorLayerGroupConfig => {\r\n return {\r\n ...{\r\n displayName: \"Events\",\r\n ref: \"Events\",\r\n type: HighlandRecordType.Event,\r\n strategy: VectorLayerStrategy.Bbox,\r\n url: this.mapFileUrl,\r\n wfsParams: this.paramSource(),\r\n maxFeatureCount: 2000, \r\n visibleOnFirstLoad: false,\r\n alwaysLoadOnZoom: true,\r\n layers: [\r\n {\r\n layerName: \"EventPolygonsWFS\",\r\n minZoom: 7,\r\n maxZoom: 19\r\n },\r\n {\r\n layerName: \"EventLinesWFS\",\r\n minZoom: 7,\r\n maxZoom: 19\r\n },\r\n {\r\n layerName: \"EventPointsWFS\",\r\n minZoom: 1,\r\n maxZoom: 19\r\n },\r\n {\r\n layerName: \"EventLinesAsPointsWFS\",\r\n minZoom: 1,\r\n maxZoom: 6\r\n },\r\n {\r\n layerName: \"EventPolygonsAsPointsWFS\",\r\n minZoom: 1,\r\n maxZoom: 6\r\n }\r\n ]\r\n }, ...opts\r\n };\r\n }\r\n\r\n private ListedBuilding = (\r\n opts: IVectorLayerGroupConfig\r\n ): IVectorLayerGroupConfig => {\r\n return {\r\n ...{\r\n displayName: \"Listed Buildings\",\r\n ref: \"ListedBuildings\",\r\n type: HighlandRecordType.Designation,\r\n subType: HighlandRecordSubType.ListedBuilding,\r\n strategy: VectorLayerStrategy.Bbox,\r\n url: this.mapFileUrl,\r\n urlParams: { recsubtypecode: HighlandRecordSubType.ListedBuilding },\r\n wfsParams: this.paramSource(),\r\n maxFeatureCount: 10000,\r\n legend: { line: false,polygon:false },\r\n visibleOnFirstLoad: false,\r\n alwaysLoadOnZoom: true,\r\n layers: [\r\n {\r\n layerName: \"DesignationPolygonsWFS\",\r\n minZoom: 7,\r\n maxZoom: 19\r\n },\r\n {\r\n layerName: \"DesignationPointsWFS\",\r\n minZoom: 1,\r\n maxZoom: 19\r\n },\r\n {\r\n layerName: \"DesignationPolygonsAsPointsWFS\",\r\n minZoom: 1,\r\n maxZoom: 6\r\n }\r\n ]\r\n }, ...opts\r\n };\r\n }\r\n\r\n private ScheduledMonument = (\r\n opts: IVectorLayerGroupConfig\r\n ): IVectorLayerGroupConfig => {\r\n return {\r\n ...{\r\n displayName: \"Scheduled Monuments\",\r\n ref: \"ScheduledMonuments\",\r\n type: HighlandRecordType.Designation,\r\n subType: HighlandRecordSubType.ScheduledMonument,\r\n strategy: VectorLayerStrategy.Bbox,\r\n url: this.mapFileUrl,\r\n urlParams: { recsubtypecode: HighlandRecordSubType.ScheduledMonument },\r\n wfsParams: this.paramSource(),\r\n maxFeatureCount: 10000,\r\n legend: { line: false, point: false },\r\n visibleOnFirstLoad: false,\r\n alwaysLoadOnZoom: true,\r\n layers: [\r\n {\r\n layerName: \"DesignationPolygonsWFS\",\r\n minZoom: 7,\r\n maxZoom: 19\r\n },\r\n {\r\n layerName: \"DesignationPolygonsAsPointsWFS\",\r\n minZoom: 1,\r\n maxZoom: 6\r\n }\r\n ]\r\n }, ...opts\r\n };\r\n }\r\n \r\n private DesignedLandscape = (\r\n opts: IVectorLayerGroupConfig\r\n ): IVectorLayerGroupConfig => {\r\n return {\r\n ...{\r\n displayName: \"Designed Landscapes\",\r\n ref: \"DesignedLandscape\",\r\n type: HighlandRecordType.Designation,\r\n subType: HighlandRecordSubType.DesignedLandscape,\r\n strategy: VectorLayerStrategy.Bbox,\r\n url: this.mapFileUrl,\r\n urlParams: { recsubtypecode: HighlandRecordSubType.DesignedLandscape },\r\n wfsParams: this.paramSource(),\r\n maxFeatureCount: 10000,\r\n legend: { line: false, point: false },\r\n visibleOnFirstLoad: false,\r\n alwaysLoadOnZoom: true,\r\n layers: [\r\n {\r\n layerName: \"DesignationPolygonsWFS\",\r\n minZoom: 1,\r\n maxZoom: 19\r\n }\r\n ]\r\n }, ...opts\r\n };\r\n }\r\n\r\n private HistoricBattlefield = (\r\n opts: IVectorLayerGroupConfig\r\n ): IVectorLayerGroupConfig => {\r\n return {\r\n ...{\r\n displayName: \"Historic Battlefields\",\r\n ref: \"HistoricBattlefield\",\r\n type: HighlandRecordType.Designation,\r\n subType: HighlandRecordSubType.HistoricBattlefield,\r\n strategy: VectorLayerStrategy.Bbox,\r\n url: this.mapFileUrl,\r\n urlParams: { recsubtypecode: HighlandRecordSubType.HistoricBattlefield },\r\n wfsParams: this.paramSource(),\r\n maxFeatureCount: 10000,\r\n legend: { line: false, point: false },\r\n visibleOnFirstLoad: false,\r\n alwaysLoadOnZoom: true,\r\n layers: [\r\n {\r\n layerName: \"DesignationPolygonsWFS\",\r\n minZoom: 1,\r\n maxZoom: 19\r\n }\r\n ]\r\n }, ...opts\r\n };\r\n }\r\n\r\n private ConservationArea = (\r\n opts: IVectorLayerGroupConfig\r\n ): IVectorLayerGroupConfig => {\r\n return {\r\n ...{\r\n displayName: \"Conservation Areas\",\r\n ref: \"ConservationArea\",\r\n type: HighlandRecordType.Designation,\r\n subType: HighlandRecordSubType.ConservationArea,\r\n strategy: VectorLayerStrategy.Bbox,\r\n url: this.mapFileUrl,\r\n urlParams: { recsubtypecode: HighlandRecordSubType.ConservationArea },\r\n wfsParams: this.paramSource(),\r\n maxFeatureCount: 10000,\r\n legend: { line: false, point: false },\r\n visibleOnFirstLoad: false,\r\n alwaysLoadOnZoom: true,\r\n layers: [\r\n {\r\n layerName: \"DesignationPolygonsWFS\",\r\n minZoom: 1,\r\n maxZoom: 19\r\n }\r\n ]\r\n }, ...opts\r\n };\r\n }\r\n\r\n private HistoricMarineProtectedArea = (\r\n opts: IVectorLayerGroupConfig\r\n ): IVectorLayerGroupConfig => {\r\n return {\r\n ...{\r\n displayName: \"Historic Marine Protected Areas\",\r\n ref: \"HistoricMarineProtectedArea\",\r\n type: HighlandRecordType.Designation,\r\n subType: HighlandRecordSubType.HistoricMarineProtectedArea,\r\n strategy: VectorLayerStrategy.Bbox,\r\n url: this.mapFileUrl,\r\n urlParams: { recsubtypecode: HighlandRecordSubType.HistoricMarineProtectedArea },\r\n wfsParams: this.paramSource(),\r\n maxFeatureCount: 10000,\r\n legend: { line: false, point: false },\r\n visibleOnFirstLoad: false,\r\n alwaysLoadOnZoom: true,\r\n layers: [\r\n {\r\n layerName: \"DesignationPolygonsWFS\",\r\n minZoom: 1,\r\n maxZoom: 19\r\n }\r\n ]\r\n }, ...opts\r\n };\r\n }\r\n\r\n private FlowCountryWHS = (\r\n opts: IVectorLayerGroupConfig\r\n ): IVectorLayerGroupConfig => {\r\n return {\r\n ...{\r\n displayName: \"Flow Country World Heritage Site\",\r\n ref: \"FlowCountryWorldHeritageSite\",\r\n type: HighlandRecordType.FlowCountryWorldHeritageSite,\r\n subType: null,\r\n strategy: VectorLayerStrategy.Bbox,\r\n url: this.mapFileUrl,\r\n wfsParams: this.paramSource(),\r\n maxFeatureCount: 1000,\r\n legend: { line: false, point: false },\r\n visibleOnFirstLoad: false,\r\n alwaysLoadOnZoom: true,\r\n layers: [\r\n {\r\n layerName: \"FlowCountryPolygonWFS\",\r\n minZoom: 1,\r\n maxZoom: 19\r\n }\r\n ]\r\n }, ...opts\r\n };\r\n }\r\n\r\n\r\n\r\n\r\n\r\n \r\n\r\n\r\n\r\n}\r\n\r\n","import {\r\n MapOptions\r\n} from \"esdm-map/dist\";\r\nimport { HighlandBaseLayerTypes } from \"./HighlandBaseMapping_27700\";\r\n\r\nexport class DefaultMapOptions {\r\n\r\n public static GetDefaultOptions(\r\n mapElementId: string,\r\n mapStoreKey: string\r\n ): MapOptions { \r\n\r\n let opt = new MapOptions(); \r\n opt.bingApiKey = $(`#${mapElementId}`).data(\"bing-api-key\");\r\n opt.esdmOsmApiKey = $(`#${mapElementId}`).data(\"esdm-osm-api-key\");\r\n opt.baseMaps = [HighlandBaseLayerTypes.BingAerial, HighlandBaseLayerTypes.HighlandOS]; \r\n opt.defaultBaseMap = HighlandBaseLayerTypes.HighlandOS;\r\n opt.enableBoundsTracking = true;\r\n opt.zoomToNearestBounds = false;\r\n opt.maxZoomToBounds = 12;\r\n opt.mapElementId = mapElementId;\r\n opt.mapStoreKey = mapStoreKey;\r\n opt.mapZoom = 8;\r\n opt.minZoom = 3;\r\n opt.maxZoom = 16;\r\n //opt.extent = [-751000, 7630000, -299766, 8151166];\r\n //opt.mapCentre = [-460658.38234629954, 7780630.30000752]; \r\n //opt.displayProjection = \"EPSG:3857\";\r\n\r\n opt.extent = [106941.85, 728518.25, 360137.25, 997666.43];\r\n opt.mapCentre = [\r\n 260345, 841798\r\n ]; \r\n\r\n opt.displayProjection = \"EPSG:27700\";\r\n opt.dataProjection = \"EPSG:27700\";\r\n opt.dragRotateAndZoom = false; \r\n return opt;\r\n }\r\n\r\n}\r\n","import {\r\n HighlandRecordType,\r\n HighlandRecordSubType\r\n} from \"./HighlandRecordTypes\";\r\n\r\nimport {\r\n IRecordTypeFeatureInfoClick,\r\n RecordTypeResource,\r\n IRecordTypeHeading, \r\n IMappingTextPack\r\n} from \"esdm-map\";\r\nimport { ILayerGroup } from \"esdm-map/dist/layers/groups/ILayerGroup\";\r\n\r\n\r\nlet headingConfiguration = (): Array => {\r\n let items = new Array();\r\n\r\n items.push({\r\n recordTypeCode: HighlandRecordType.Monument,\r\n recordSubTypeCode: null,\r\n heading: \"Monuments\"\r\n });\r\n\r\n items.push({\r\n recordTypeCode: HighlandRecordType.Event,\r\n recordSubTypeCode: null,\r\n heading: \"Events\"\r\n });\r\n\r\n items.push({\r\n recordTypeCode: HighlandRecordType.Designation,\r\n recordSubTypeCode: null,\r\n heading: \"Designations\"\r\n });\r\n\r\n items.push({\r\n recordTypeCode: HighlandRecordType.Designation,\r\n recordSubTypeCode: HighlandRecordSubType.ListedBuilding,\r\n heading: \"Listed Buildings\"\r\n });\r\n\r\n items.push({\r\n recordTypeCode: HighlandRecordType.Designation,\r\n recordSubTypeCode: HighlandRecordSubType.DesignedLandscape,\r\n heading: \"Designed Landscapes\"\r\n });\r\n\r\n items.push({\r\n recordTypeCode: HighlandRecordType.Designation,\r\n recordSubTypeCode: HighlandRecordSubType.ScheduledMonument,\r\n heading: \"Scheduled Monuments\"\r\n }); \r\n\r\n items.push({\r\n recordTypeCode: HighlandRecordType.Designation,\r\n recordSubTypeCode: HighlandRecordSubType.ConservationArea,\r\n heading: \"Conservation Areas\"\r\n });\r\n\r\n items.push({\r\n recordTypeCode: HighlandRecordType.Designation, \r\n recordSubTypeCode: HighlandRecordSubType.HistoricBattlefield,\r\n heading: \"Historic Battlefields\"\r\n });\r\n\r\n items.push({\r\n recordTypeCode: HighlandRecordType.Designation,\r\n recordSubTypeCode: HighlandRecordSubType.HistoricMarineProtectedArea,\r\n heading: \"Historic Marine Protected Areas\"\r\n });\r\n\r\n items.push({\r\n recordTypeCode: HighlandRecordType.FlowCountryWorldHeritageSite,\r\n recordSubTypeCode: null,\r\n heading: \"Flow Country World Heritage Site\"\r\n });\r\n \r\n return items;\r\n}\r\n\r\nexport class HbsmrRecordTypeResource extends RecordTypeResource {\r\n\r\n public constructor(\r\n private _mappingTextPack: IMappingTextPack,\r\n ) {\r\n super(headingConfiguration());\r\n }\r\n \r\n public groupByRecordSubTypeCode(recordTypeCode: string): boolean \r\n {\r\n return (recordTypeCode.toLowerCase() === HighlandRecordType.Designation); \r\n } \r\n\r\n public mapToIRecordTypeInfoClick(featureProperties: any, layerGroup: ILayerGroup): IRecordTypeFeatureInfoClick \r\n {\r\n /** Override info values for Flow Country WHS */\r\n if (layerGroup.layerType == HighlandRecordType.FlowCountryWorldHeritageSite)\r\n return {\r\n id: featureProperties.OBJECTID,\r\n uid: featureProperties.OBJECTID,\r\n ref: \"FlowCountryWorldHeritageSite\",\r\n name: \"Flow Country World Heritage Site\",\r\n recordType: \"fcwhs\",\r\n recordSubType: null,\r\n recordSubTypeCode: null,\r\n data: featureProperties,\r\n heading: this.getHeading(\"fcwhs\", null),\r\n layerGroup: layerGroup\r\n }\r\n else {\r\n return {\r\n id: featureProperties.id,\r\n uid: featureProperties.uid,\r\n ref: featureProperties.ref,\r\n name: featureProperties.name,\r\n recordType: featureProperties.rectype,\r\n recordSubType: featureProperties.recsubtype,\r\n recordSubTypeCode: featureProperties.recsubtypecode,\r\n data: featureProperties,\r\n heading: this.getHeading(featureProperties.rectype, featureProperties.recsubtypecode),\r\n layerGroup: layerGroup\r\n }\r\n }\r\n }\r\n\r\n public getInfoClickHtmlTemplate(recordTypeInfoClick: IRecordTypeFeatureInfoClick): string \r\n {\r\n let html: string = \"\";\r\n let featurePropertyNameForId = \"uid\";\r\n let layerType: string = recordTypeInfoClick.layerGroup.layerType;\r\n\r\n if (recordTypeInfoClick.recordType == \"fcwhs\") {\r\n html = `\r\n
  • \r\n \r\n  \r\n \r\n Flow Country World Heritage Site \r\n \r\n
  • `;\r\n } else {\r\n //add controller (or any arbitrary data) to the data object\r\n switch (recordTypeInfoClick.recordType.toLowerCase()) {\r\n case \"mon\":\r\n recordTypeInfoClick.data.controller = \"Monument\";\r\n break;\r\n case \"event\":\r\n recordTypeInfoClick.data.controller = \"Event\";\r\n break;\r\n case \"desig\":\r\n recordTypeInfoClick.data.controller = \"Designation\";\r\n break;\r\n }\r\n\r\n html = `\r\n
  • \r\n \r\n  \r\n \r\n [name] \r\n \r\n \r\n \r\n \r\n
  • `;\r\n }\r\n\r\n return html;\r\n }\r\n\r\n \r\n}","import { HbsmrRecordTypeResource } from \"./HbsmrRecordTypeResource\";\r\nimport { IResourceFactory, IRecordTypeResource, IMappingTextPack } from \"esdm-map\";\r\n\r\n\r\n\r\nexport class HbsmrResourcefactory implements IResourceFactory {\r\n\r\n public constructor(\r\n private _mappingTextPack: IMappingTextPack\r\n ) {\r\n }\r\n\r\n public getRecordTypeResource(): IRecordTypeResource {\r\n return new HbsmrRecordTypeResource(this._mappingTextPack);\r\n }\r\n\r\n}","import {\r\n HighlandRecordType,\r\n HighlandRecordSubType\r\n} from \"./HighlandRecordTypes\";\r\nimport { IStyleFactory } from \"esdm-map/dist/layers/vector/styles/IStyleFactory\";\r\nimport Style, { StyleFunction } from \"ol/style/Style\";\r\nimport Fill from 'ol/style/Fill';\r\nimport Circle from 'ol/style/Circle';\r\nimport Stroke from 'ol/style/Stroke';\r\nimport RegularShape from 'ol/style/RegularShape';\r\nimport * as olHas from 'ol/has';\r\n\r\nexport class HbsmrStyleFactory implements IStyleFactory {\r\n\r\n public getStyle(recordType: string, recordSubType: string = null): Style[]\r\n {\r\n let style: Style[] = null;\r\n\r\n //try and resolve sub type first\r\n if (recordSubType !== null) {\r\n switch (recordSubType) {\r\n case HighlandRecordSubType.ConservationArea:\r\n style = this.ConservationArea();\r\n break;\r\n\r\n case HighlandRecordSubType.ListedBuilding:\r\n style = this.ListedBuilding();\r\n break;\r\n\r\n case HighlandRecordSubType.ScheduledMonument:\r\n style = this.ScheduledMonument();\r\n break;\r\n\r\n case HighlandRecordSubType.HistoricBattlefield:\r\n style = this.RegisteredBattlefield();\r\n break;\r\n\r\n case HighlandRecordSubType.HistoricMarineProtectedArea:\r\n style = this.MarineProtectedArea();\r\n break;\r\n\r\n case HighlandRecordSubType.DesignedLandscape:\r\n style = this.DesignedLandscape();\r\n break;\r\n }\r\n\r\n }\r\n\r\n if (style === null) {\r\n switch (recordType) {\r\n case HighlandRecordType.Monument:\r\n style = this.Monument();\r\n break;\r\n\r\n case HighlandRecordType.Event:\r\n style = this.Event();\r\n break;\r\n\r\n case HighlandRecordType.Designation:\r\n style = this.Designation();\r\n break;\r\n\r\n case HighlandRecordType.FlowCountryWorldHeritageSite:\r\n style = this.WorldHeritageSite();\r\n break;\r\n }\r\n }\r\n\r\n return style;\r\n }\r\n\r\n public getSelectedStyle(recordType: HighlandRecordType): Style[] {\r\n let style: Style[] = null;\r\n\r\n switch (recordType) {\r\n case HighlandRecordType.Monument:\r\n style = this.MonumentSelected();\r\n break;\r\n\r\n case HighlandRecordType.Event:\r\n style = this.EventSelected();\r\n break;\r\n\r\n case HighlandRecordType.Designation:\r\n style = this.DesignationSelected();\r\n break;\r\n }\r\n\r\n return style;\r\n }\r\n\r\n private CommonStyle(fillColour: string): Style[] {\r\n var fill = new Fill({\r\n color: fillColour\r\n });\r\n var stroke = new Stroke({\r\n color: 'rgba(255,255,255,1)',\r\n width: 3\r\n });\r\n\r\n return [\r\n new Style({\r\n image: new Circle({\r\n fill: fill,\r\n stroke: stroke,\r\n radius: 12\r\n }),\r\n fill: fill,\r\n stroke: stroke\r\n })\r\n ];\r\n }\r\n\r\n\r\n private Monument(): Style[] {\r\n //let s = this.CommonStyle('rgba(185, 107, 225,0.5)');\r\n //s[0].setStroke(new Stroke({\r\n // color: 'rgba(185, 107, 225,1)',\r\n // width: 3\r\n //}));\r\n\r\n //return s;\r\n // new\r\n var fill = new Fill({\r\n color: 'rgba(185, 107, 225, 0.4)'\r\n });\r\n var stroke = new Stroke({\r\n color: 'rgba(185, 107, 225, 1)',\r\n width: 2\r\n });\r\n\r\n return [new Style({\r\n image: new Circle({\r\n fill: new Fill({ color: 'rgba(185, 107, 225, 1)' }),\r\n stroke: new Stroke({ color: 'rgba(50, 50, 50, 1)', width: 1 }),\r\n radius: 4\r\n }),\r\n fill: fill,\r\n stroke: stroke\r\n })];\r\n\r\n }\r\n\r\n private Event(): Style[] {\r\n //return this.CommonStyle('rgba(241, 171, 0, 0.4)'); \r\n var fill = new Fill({\r\n color: 'rgba(241, 171, 0, 0.4)'\r\n });\r\n var stroke = new Stroke({\r\n color: 'rgba(241, 171, 0, 1)',\r\n width: 2\r\n });\r\n return [new Style({\r\n image: new Circle({\r\n fill: new Fill({ color: 'rgba(241, 171, 0, 1)' }),\r\n stroke: new Stroke({ color: 'rgba(50, 50, 50, 1)', width: 1 }),\r\n radius: 4\r\n }),\r\n fill: fill,\r\n stroke: stroke\r\n })];\r\n }\r\n\r\n private Designation(): Style[] {\r\n return this.CommonStyle('rgba(132, 71, 15,0.4)');\r\n }\r\n\r\n private ListedBuilding(): Style[] {\r\n var fill = new Fill({\r\n color: 'rgba(226, 0, 0, 0.4)'\r\n });\r\n var stroke = new Stroke({\r\n color: 'rgba(50, 50, 50, 1)',\r\n width: 2\r\n });\r\n\r\n return [new Style({\r\n image: new RegularShape({\r\n fill: fill,\r\n stroke: stroke,\r\n points: 5,\r\n radius: 8,\r\n radius2: 4,\r\n angle: 0\r\n }),\r\n fill: fill,\r\n stroke: stroke\r\n })];\r\n }\r\n\r\n private ConservationArea(): Style[] {\r\n //return this.CommonStyle('rgba(27, 15, 220, 0.4)'); \r\n var fill = new Fill({\r\n color: 'rgba(27, 15, 220, 0.4)'\r\n });\r\n var stroke = new Stroke({\r\n color: 'rgba(27, 15, 220, 1)',\r\n width: 2\r\n });\r\n\r\n return [new Style({\r\n image: new RegularShape({\r\n fill: fill,\r\n stroke: stroke,\r\n points: 5,\r\n radius: 8,\r\n radius2: 4,\r\n angle: 0\r\n }),\r\n fill: fill,\r\n stroke: stroke\r\n })];\r\n }\r\n\r\n private ScheduledMonument(): Style[] {\r\n var fill = new Fill({\r\n color: 'rgba(226, 0, 0, 0.4)'\r\n });\r\n var stroke = new Stroke({\r\n color: 'rgba(226, 0, 0, 1)',\r\n width: 2\r\n });\r\n\r\n return [new Style({\r\n image: new RegularShape({\r\n fill: fill,\r\n stroke: stroke,\r\n points: 5,\r\n radius: 8,\r\n radius2: 4,\r\n angle: 0\r\n }),\r\n fill: fill,\r\n stroke: stroke\r\n })];\r\n }\r\n\r\n private DesignedLandscape(): Style[] {\r\n //return this.CommonStyle('rgba(45, 123, 9,0.5)'); \r\n var fill = new Fill({\r\n color: 'rgba(45, 123, 9, 0.4)'\r\n });\r\n\r\n var stroke = new Stroke({\r\n color: 'rgba(45, 123, 9, 1)',\r\n width: 2\r\n });\r\n\r\n return [new Style({\r\n image: new RegularShape({\r\n fill: fill,\r\n stroke: stroke,\r\n points: 5,\r\n radius: 8,\r\n radius2: 4,\r\n angle: 0\r\n }),\r\n fill: fill,\r\n stroke: stroke\r\n })];\r\n }\r\n\r\n private RegisteredBattlefield(): Style[] {\r\n //return this.CommonStyle('rgba(239, 26, 28,0.5)'); \r\n // Generate a canvasPattern\r\n var canvas = document.createElement('canvas');\r\n var context = canvas.getContext('2d');\r\n var p = document.createElement('canvas');\r\n // Gradient and pattern are in canvas pixel space, so we adjust for the\r\n // renderer's pixel ratio\r\n var pixelRatio = olHas.DEVICE_PIXEL_RATIO;\r\n var pattern = (function () {\r\n canvas.width = 32 * pixelRatio;\r\n canvas.height = 16 * pixelRatio;\r\n // background\r\n context.fillStyle = \"rgba(239, 26, 28, 0.1)\";\r\n context.fillRect(0, 0, canvas.width, canvas.height);\r\n\r\n var x0 = 36;\r\n var x1 = -4;\r\n var y0 = -2;\r\n var y1 = 18;\r\n var offset = 32;\r\n\r\n context.strokeStyle = \"rgba(239, 26, 28, 1)\";\r\n context.lineWidth = 1;\r\n context.beginPath();\r\n context.moveTo(x0, y0);\r\n context.lineTo(x1, y1);\r\n context.moveTo(x0 - offset, y0);\r\n context.lineTo(x1 - offset, y1);\r\n context.moveTo(x0 + offset, y0);\r\n context.lineTo(x1 + offset, y1);\r\n context.stroke();\r\n\r\n context.fillStyle = context.createPattern(canvas, 'repeat');\r\n context.fillRect(0, 0, canvas.width, canvas.height);\r\n\r\n return context.createPattern(canvas, 'repeat');\r\n }());\r\n var fill = new Fill({\r\n color: 'rgba(239, 26, 28, 0.4)'\r\n });\r\n fill.setColor(pattern);\r\n\r\n var stroke = new Stroke({\r\n color: 'rgba(239, 26, 28, 1)',\r\n width: 2\r\n });\r\n\r\n return [new Style({\r\n image: new RegularShape({\r\n fill: new Fill({ color: 'rgba(239, 26, 28, 0.4)' }),\r\n stroke: stroke,\r\n points: 3,\r\n radius: 8,\r\n radius2: 4,\r\n angle: 0\r\n }),\r\n fill: fill,\r\n stroke: stroke\r\n })];\r\n }\r\n\r\n private MarineProtectedArea(): Style[] {\r\n //return this.CommonStyle('rgba(132, 71, 15, 0.4)');\r\n var fill = new Fill({\r\n color: 'rgba(132, 71, 15, 0.4)'\r\n });\r\n\r\n var stroke = new Stroke({\r\n color: 'rgba(132, 71, 15, 1)',\r\n width: 2\r\n });\r\n\r\n return [new Style({\r\n image: new RegularShape({\r\n fill: fill,\r\n stroke: stroke,\r\n points: 5,\r\n radius: 8,\r\n radius2: 4,\r\n angle: 0\r\n }),\r\n fill: fill,\r\n stroke: stroke\r\n })];\r\n }\r\n\r\n private WorldHeritageSite(): Style[] {\r\n //return this.CommonStyle('rgba(132, 71, 15, 0.4)');\r\n var fill = new Fill({\r\n color: 'rgba(132, 132, 132, 0.4)'\r\n });\r\n\r\n var stroke = new Stroke({\r\n color: 'rgba(100, 100, 100, 1)',\r\n width: 2\r\n });\r\n\r\n return [new Style({\r\n image: new RegularShape({\r\n fill: fill,\r\n stroke: stroke,\r\n points: 5,\r\n radius: 8,\r\n radius2: 4,\r\n angle: 0\r\n }),\r\n fill: fill,\r\n stroke: stroke\r\n })];\r\n }\r\n\r\n private MonumentSelected(): Style[] {\r\n var fill = new Fill({\r\n color: 'rgba(63, 211, 0, 0.6)'\r\n });\r\n\r\n return [\r\n new Style({\r\n image: new Circle({\r\n fill: fill,\r\n stroke: new Stroke({\r\n color: 'rgba(76, 255, 0, 0.6)',\r\n width: 5\r\n }),\r\n radius: 12\r\n }),\r\n fill: fill,\r\n stroke: new Stroke({\r\n color: 'rgba(76, 255, 0, 0.6)',\r\n width: 5\r\n })\r\n })\r\n ];\r\n }\r\n\r\n private EventSelected(): Style[] {\r\n return this.MonumentSelected();\r\n }\r\n\r\n private DesignationSelected(): Style[] {\r\n return this.MonumentSelected();\r\n }\r\n\r\n}\r\n","\r\nexport class HbsmrIdentity {\r\n\r\n public static fetch(): Promise { \r\n return new Promise(\r\n function (resolve, reject) {\r\n $.getJSON(\"/api/hbsmridentity/get\", function (response) {\r\n resolve(response);\r\n }).fail(function () {\r\n resolve(null);\r\n });\r\n }\r\n );\r\n }\r\n\r\n}\r\n\r\nexport class HbsmrUser {\r\n public userId: string; \r\n public roles: Array;\r\n}","import {\r\n BaseLayer,\r\n BaseLayerFactory_27700,\r\n BaseLayerFactory_3857,\r\n BaseLayerType\r\n} from \"esdm-map\";\r\n\r\nimport { IBaseLayer } from \"esdm-map/dist/baselayers/interfaces/IBaseLayer\";\r\nimport TileLayer from \"ol/layer/Tile\";\r\nimport TileGrid from \"ol/tilegrid/TileGrid\";\r\nimport TileWMS from 'ol/source/TileWMS';\r\n\r\nimport * as olProj from 'ol/proj';\r\nimport proj4 from \"proj4\";\r\nimport { register } from 'ol/proj/proj4';\r\nimport Projection from \"ol/proj/Projection\";\r\nimport XYZ from 'ol/source/XYZ';\r\nimport OSM from 'ol/source/OSM';\r\n\r\nexport const HighlandBaseLayerTypes = {\r\n ...BaseLayerType,\r\n HighlandOS: 999\r\n};\r\n\r\nexport class HighlandBaseMapping_27700 extends BaseLayerFactory_27700 {\r\n\r\n private _baseLayerFactory_3857: BaseLayerFactory_3857;\r\n\r\n public constructor() {\r\n super();\r\n\r\n this._baseLayerFactory_3857 = new BaseLayerFactory_3857();\r\n \r\n proj4.defs('EPSG:27700', '+proj=tmerc +lat_0=49 +lon_0=-2 +k=0.9996012717 ' +\r\n '+x_0=400000 +y_0=-100000 +ellps=airy ' +\r\n '+towgs84=446.448,-125.157,542.06,0.15,0.247,0.842,-20.489 ' +\r\n '+units=m +no_defs');\r\n register(proj4);\r\n var proj27700 = olProj.get('EPSG:27700');\r\n proj27700.setExtent([0, 0, 700000, 1300000]);\r\n }\r\n \r\n\r\n public GetBaseLayerByType(baseLayerType: BaseLayerType, bingApiKey: string, esdmOsmApiKey:string): IBaseLayer {\r\n if (baseLayerType === HighlandBaseLayerTypes.HighlandOS) {\r\n return this.GetHighlandOS();\r\n } \r\n\r\n if (baseLayerType == HighlandBaseLayerTypes.BingAerial) {\r\n return this._baseLayerFactory_3857.GetBaseLayerByType(baseLayerType, bingApiKey, esdmOsmApiKey);\r\n } \r\n\r\n return super.GetBaseLayerByType(baseLayerType, bingApiKey, esdmOsmApiKey);\r\n }\r\n\r\n private GetHighlandOS(): IBaseLayer {\r\n let lyr = new TileLayer({\r\n visible: false,\r\n source: new TileWMS({\r\n //urls: [\"/api/OgcService/HighlandBaseMapping\"],\r\n urls: [\"https://map.publicsectormapping.gov.scot/osmao-highl-c0006-99302/service\"],\r\n params: {\r\n LAYERS: 'viaEuropa_m0105',\r\n //TILED: 'true',\r\n FORMAT: 'image/png',\r\n SRS: 'EPSG:27700'\r\n },\r\n projection: \"EPSG:27700\", \r\n attributions: `
    © Crown Copyright and database rights ${new Date().getFullYear()} Ordnance Survey.
    HER data © Highland Council
    `,\r\n crossOrigin:'anonymous'\r\n })\r\n });\r\n return new BaseLayer(\"highlandOS\", \"Ordnance Survey\", lyr);\r\n }\r\n\r\n}","\r\nexport enum HighlandRecordType { \r\n Monument = \"mon\", \r\n Event = \"event\", \r\n Source = \"source\",\r\n Designation = \"desig\",\r\n FlowCountryWorldHeritageSite = \"fcwhs\"\r\n\r\n} \r\n\r\nexport enum HighlandRecordSubType { \r\n ConservationArea = \"COA\",\r\n ListedBuilding = \"LB\",\r\n DesignedLandscape = \"DLN\",\r\n ScheduledMonument = \"SAM\",\r\n HistoricBattlefield = \"IHB\",\r\n HistoricMarineProtectedArea = \"HMPA\"\r\n} \r\n\r\n","import { IMappingTextPack, IMap } from \"esdm-map\";\r\nimport { HbsmrUser } from \"./HbsmrUser\";\r\nimport { IVectorLayerGroupConfig } from \"esdm-map/dist/layers/groups/vector/interfaces/IVectorLayerGroupConfig\";\r\nimport { HighlandRecordType, HighlandRecordSubType } from \"./HighlandRecordTypes\";\r\n\r\nexport class MapBase {\r\n\r\n constructor( \r\n protected mappingTextPack: IMappingTextPack,\r\n protected user: HbsmrUser) { \r\n }\r\n\r\n protected isAuthenticated = (): boolean => {\r\n return this.user !== null;\r\n }\r\n\r\n protected filterMapLayers = (layerGroupConfig: Array ): Array => {\r\n //if (!this.isAuthenticated()) {\r\n // //remove layers that require authentication\r\n // return layerGroupConfig.filter(function (value, index, arr) {\r\n // let authlayers = (value.subType === HighlandRecordSubType.Shine || value.type === HighlandRecordType.Consultation);\r\n // return !authlayers;\r\n // });\r\n //} else {\r\n return layerGroupConfig;\r\n //}\r\n } \r\n}","import { PrintMap } from \"esdm-map/dist/map/tools/PrintMap\";\r\nimport { IPrintOptions } from \"esdm-map/dist/map/tools/IPrintOptions\";\r\nimport { DownloadMapPng } from \"esdm-map/dist/map/tools/DownloadMapPng\";\r\nimport { IMapViewStore } from \"esdm-map/dist/map/store/IMapViewStore\";\r\nimport { IVectorLayerGroupFactory } from \"esdm-map/dist/layers/groups/vector/interfaces/IVectorLayerGroupFactory\";\r\nimport { IMapContextMenu } from \"esdm-map/dist/map/tools/IMapContextMenu\";\r\nimport { IFeatureLoader } from \"esdm-map/dist/layers/vector/sources/loaders/interfaces/IFeatureLoader\";\r\nimport { OgcMapFilter } from \"esdm-map/dist/map/filters/OgcMapFilter\";\r\nimport { VectorLayerGroupFactory } from \"esdm-map/dist/layers/groups/vector/VectorLayerGroupFactory\";\r\nimport { MapViewStore } from \"esdm-map/dist/map/store/MapViewStore\";\r\nimport { MapContextMenu } from \"esdm-map/dist/map/tools/MapContextMenu\";\r\nimport { ToolTipProvider } from \"esdm-map/dist/map/tooltip/ToolTipProvider\";\r\nimport { IVectorLayerGroupConfig } from \"esdm-map/dist/layers/groups/vector/interfaces/IVectorLayerGroupConfig\";\r\nimport { GeoJsonFeatureLoader } from \"esdm-map/dist/layers/vector/sources/loaders/GeoJsonFeatureLoader\";\r\nimport { ILoaderExtentsBehaviour } from \"esdm-map/dist/layers/vector/sources/loaders/behaviours/ILoaderExtentsBehaviour\";\r\nimport { BoundsLoaderExtentsBehaviour } from \"esdm-map/dist/layers/vector/sources/loaders/behaviours/BoundsLoaderBehaviour\";\r\nimport { IFeatureAdd } from \"esdm-map/dist/layers/vector/sources/loaders/interfaces/IFeatureAdd\";\r\nimport { FeatureAdd } from \"esdm-map/dist/layers/vector/sources/loaders/FeatureAdd\";\r\nimport { ExtentsNavigation } from \"esdm-map/dist/map/controls/ExtentsNavigation\";\r\nimport { LayerGroupFactory } from \"esdm-map/dist/layers/groups/LayerGroupFactory\";\r\nimport { LayerGroupCollection } from \"esdm-map/dist/layers/groups/LayerGroupCollection\";\r\nimport { MapFilters } from \"esdm-map/dist/map/filters/MapFilters\";\r\nimport { GridRef } from \"esdm-map/dist/map/controls/GridRef\";\r\nimport { IMappingTextPack } from \"esdm-map/dist/resources/MappingTextPack\";\r\nimport { MousePosition } from \"esdm-map/dist/map/controls/MousePosition\";\r\nimport { GeoNames } from \"esdm-map/dist/gazetteer/geonames\";\r\nimport { IStyleFactory } from \"esdm-map/dist/layers/vector/styles/IStyleFactory\";\r\nimport { IVectorLayerSourceFactory } from \"esdm-map/dist/layers/vector/sources/interfaces\";\r\nimport { VectorLayerSourceFactory } from \"esdm-map/dist/layers/vector/sources\";\r\nimport { IBaseLayerFactory } from \"esdm-map/dist/baselayers/interfaces/IBaseLayerFactory\";\r\nimport { IVectorLayerGroup } from \"esdm-map/dist/layers/groups/vector/interfaces/IVectorLayerGroup\";\r\nimport { ZoomToDataBounds } from \"esdm-map/dist/layers/vector/ZoomToDataBounds\";\r\nimport { VectorLayerStrategy } from \"esdm-map/dist/layers/vector/VectorLayerStrategy\";\r\nimport {\r\n MapOptions,\r\n IMap,\r\n MapLayerSwitcher,\r\n IMapAreaMask,\r\n ILogger,\r\n IResourceFactory,\r\n IMapFactory,\r\n BaseLayerFactory_3857,\r\n MapFactory,\r\n Logger,\r\n MiniMapsForLists,\r\n BaseLayerType,\r\n MapFeatureInfo\r\n} from \"esdm-map\";\r\n\r\nimport { HbsmrStyleFactory } from \"./HbsmrStyleFactory\";\r\nimport { HbsmrResourcefactory } from \"./HbsmrResourceFactory\";\r\nimport { HighlandRecordType, HighlandRecordSubType } from \"./HighlandRecordTypes\";\r\nimport { DefaultLayerConfigurationFactory } from \"./DefaultLayerConfigurationFactory\";\r\nimport { TextPackLoader, TextPacks } from \"./TextPackLoader\";\r\nimport { DefaultMapOptions } from \"./DefaultMapOptions\";\r\nimport { FeatureAddSmallGeomsAsPoint } from \"esdm-map/dist/layers/vector/sources/loaders\";\r\nimport { HbsmrUser, HbsmrIdentity } from \"./HbsmrUser\";\r\nimport { MapBase } from \"./MapBase\";\r\nimport { IWmsLayerGroupConfig, IWmsLayerGroupFactory } from \"esdm-map/dist/layers/groups/wms/interfaces\";\r\nimport { WmsLayerGroupFactory } from \"esdm-map/dist/layers/groups/wms\";\r\n\r\nimport \"../wwwroot/css/bootstrap-select.css\"\r\nimport { IlayerGroupCollectionConfig } from \"esdm-map/dist/layers/groups/IlayerGroupCollectionConfig\";\r\nimport { LayerGroupCollections } from \"esdm-map/dist/layers/groups/LayerGroupCollections\";\r\nimport { HighlandBaseLayerTypes, HighlandBaseMapping_27700 } from \"./HighlandBaseMapping_27700\";\r\nimport { MapToolTip, ToolTipOptions } from \"esdm-map/dist/map/tooltip\";\r\nimport { Popover } from \"bootstrap\";\r\nimport { debounce } from \"debounce\";\r\n\r\n$(function () {\r\n //selectPicker\r\n ($('.hbsmrSelectPicker')).selectpicker({\r\n selectedTextFormat: \"count > 1\",\r\n dropupAuto: false,\r\n noneSelectedText: \"\"\r\n });\r\n\r\n $('.hbsmrSelectPicker').on('loaded.bs.select', function (e) {\r\n var name = $(this).attr(\"name\").replace(/([A-Z])/g, ' $1').trim();\r\n $(this).next(\".btn\").append(\"\" + name + \"\");\r\n });\r\n\r\n\r\n let popoverTriggerList = [].slice.call(document.querySelectorAll('[data-bs-toggle=\"popover\"]'))\r\n let popoverList = popoverTriggerList.map(function (popoverTriggerEl) {\r\n return new Popover(popoverTriggerEl, {\r\n html: true,\r\n trigger: 'focus',\r\n content: function () {\r\n var content = $(this).attr(\"data-popover-content\");\r\n return $(content).children(\".popover-body\").html();\r\n }\r\n })\r\n })\r\n\r\n let didLoadMap = false;\r\n let ele = $(\"#theMap\");\r\n let maxFeatureCount: number = ele.data(\"max-feature-count\");\r\n console.log(\"maxFeatureCount:\" + maxFeatureCount);\r\n\r\n let data = $(\"#searchMapData\");\r\n let searchOptions: IMonumentSearch = {\r\n searchString: data.data(\"search-string\"),\r\n searchMode: data.data(\"search-mode\"),\r\n recordType: data.data(\"record-type\"),\r\n monType: data.data(\"mon-type\"),\r\n objectType: data.data(\"object-type\"),\r\n adminArea: data.data(\"admin-area\"),\r\n periodFrom: data.data(\"period-from\"),\r\n periodTo: data.data(\"period-to\"),\r\n periodIncludeOverlaps: data.data(\"period-overlaps\")\r\n };\r\n\r\n let printOptions: PrintMap = new PrintMap();\r\n let map: MonumentSearchMap = null;\r\n\r\n function addHandlers() {\r\n $(\".scrollTo\").click(function (e) {\r\n let id = $(this).data(\"scrollto\");\r\n if (id) {\r\n $('html, body').animate({\r\n scrollTop: ($(id).offset().top)\r\n }, 500);\r\n }\r\n e.preventDefault();\r\n });\r\n }\r\n addHandlers();\r\n\r\n\r\n function resizeMap() {\r\n //use max footer height, especially on mobile\r\n //var fHeight = $(\"footer\").height();\r\n //fHeight = Math.min(fHeight, 200);\r\n\r\n var height = $(window).height() - $(\"#mapContainer\").offset().top;\r\n if (height <= 400) {\r\n height = 400;\r\n }\r\n $('#mapContainer').height(height);\r\n if (map) {\r\n map.map.olMap.updateSize();\r\n }\r\n };\r\n\r\n let loadMap = function () {\r\n HbsmrIdentity.fetch().then(function (e) {\r\n let user = e;\r\n let init = function (textpacks: TextPacks) {\r\n resizeMap();\r\n window.addEventListener('resize', debounce(resizeMap, 250));\r\n map = new MonumentSearchMap(\"theMap\", searchOptions, maxFeatureCount, printOptions, textpacks.mapping, user);\r\n didLoadMap = true;\r\n }\r\n TextPackLoader.load().then(init);\r\n });\r\n }\r\n\r\n if (printOptions.isPrintMap) {\r\n loadMap();\r\n }\r\n else {\r\n let bingAPIKey: string = ele.data(\"bing-api-key\");\r\n let esdmOsmApiKey: string = ele.data(\"esdm-osm-api-key\");\r\n let baseLayerFactory: IBaseLayerFactory = new HighlandBaseMapping_27700();\r\n let miniMaps = new MiniMapsForLists(HighlandBaseLayerTypes.HighlandOS, bingAPIKey, esdmOsmApiKey, baseLayerFactory, \"EPSG:27700\", \"EPSG:27700\", 10);\r\n\r\n //only show the map when the map tab is visible\r\n $('a[data-bs-toggle=\"tab\"]').on('shown.bs.tab', function (e) {\r\n let target = $(e.target).attr(\"href\") // activated tab\r\n if (target === \"#tabMap\") {\r\n if (didLoadMap === false) {\r\n loadMap();\r\n }\r\n } else if (target === \"#tabList\" && didLoadMap === true) {\r\n // If the map has loaded it means the user has visited the 'Map' tab, they could have possibly also put the map into fullscreen mode\r\n // if they have then we need to redraw/refresh the miniMaps on the search results list, as they don't refresh correctly after exiting\r\n // the fullscreen mode\r\n miniMaps.refreshMiniMaps();\r\n }\r\n });\r\n }\r\n});\r\n\r\nexport interface IMonumentSearch {\r\n searchString: string;\r\n searchMode: string;\r\n recordType: string;\r\n monType: string;\r\n objectType: string;\r\n adminArea: string;\r\n periodFrom: string;\r\n periodTo: string;\r\n periodIncludeOverlaps: string;\r\n}\r\n\r\nexport class MonumentSearchMap extends MapBase {\r\n\r\n public map: IMap;\r\n private mfOptions: MapOptions;\r\n private mapStore: IMapViewStore;\r\n private styleFactory: IStyleFactory;\r\n private ls: MapLayerSwitcher;\r\n private vectorLayerGroups: Array;\r\n private infoPopup: MapFeatureInfo;\r\n private initialised = false;\r\n private herMask: IMapAreaMask;\r\n private geoNames: GeoNames;\r\n private logger: ILogger;\r\n private vectorLayerSourceFactory: IVectorLayerSourceFactory;\r\n private baseLayerFactory: IBaseLayerFactory;\r\n private mapFactory: IMapFactory;\r\n private vectorLayerGroupFactory: IVectorLayerGroupFactory;\r\n private wmsLayerGroupFactory: IWmsLayerGroupFactory;\r\n private boundsLoaderBehaviour: ILoaderExtentsBehaviour;\r\n private mapContextMenu: IMapContextMenu;\r\n private resourcefactory: IResourceFactory;\r\n private downloadPng: DownloadMapPng;\r\n private extentsNavigation: ExtentsNavigation;\r\n private gridRefFinder: GridRef;\r\n private mousePosition: MousePosition;\r\n private featureLoader: IFeatureLoader;\r\n private featureAdd: IFeatureAdd;\r\n private mapFilter: MapFilters;\r\n private layerConfigFactory: DefaultLayerConfigurationFactory;\r\n private layerGroups: LayerGroupCollections;\r\n private layerGroupFactory: LayerGroupFactory;\r\n private mapToolTip: MapToolTip;\r\n\r\n constructor(\r\n private _mapElementId: string,\r\n private _searchOptions: IMonumentSearch,\r\n private _maxFeatureCount: number,\r\n public printOptions: IPrintOptions,\r\n mappingTextPack: IMappingTextPack,\r\n user: HbsmrUser) {\r\n super(mappingTextPack, user);\r\n this.init();\r\n }\r\n\r\n private init = () => {\r\n if (this.initialised) {\r\n return;\r\n }\r\n\r\n $(\"#printButton\").hide();\r\n\r\n this.layerConfigFactory = new DefaultLayerConfigurationFactory();\r\n this.wmsLayerGroupFactory = new WmsLayerGroupFactory();\r\n this.vectorLayerGroupFactory = new VectorLayerGroupFactory();\r\n this.layerGroupFactory = new LayerGroupFactory(this.vectorLayerGroupFactory, this.wmsLayerGroupFactory);\r\n this.mapFilter = new MapFilters();\r\n this.mapFilter.OgcFilter = new OgcMapFilter();\r\n this.baseLayerFactory = new HighlandBaseMapping_27700();\r\n this.featureLoader = new GeoJsonFeatureLoader();\r\n this.featureAdd = new FeatureAddSmallGeomsAsPoint(4.5);\r\n this.mapFactory = new MapFactory();\r\n this.logger = new Logger();\r\n this.boundsLoaderBehaviour = new BoundsLoaderExtentsBehaviour(this.logger);\r\n this.styleFactory = new HbsmrStyleFactory();\r\n this.resourcefactory = new HbsmrResourcefactory(this.mappingTextPack);\r\n\r\n this.mfOptions = DefaultMapOptions.GetDefaultOptions(this._mapElementId, \"MonumentSearchMap27700\");\r\n this.mfOptions.enableBoundsTracking = false;\r\n //zoom & centre determines the start position of the map\r\n this.mfOptions.mapZoom = 3;\r\n this.mfOptions.mapCentre = [260345, 841798];\r\n\r\n this.layerGroups = this.layerGroupFactory.getLayerGroups(this.getLayerGroupConfig(), this.styleFactory);\r\n this.mfOptions.layerGroupCollection = this.layerGroups;\r\n\r\n\r\n this.mapStore = new MapViewStore(this.mfOptions.mapStoreKey);\r\n //don't remember the layers if this is the first page of the search\r\n if ($(\"#MapPageNumber\").val() == 1) {\r\n this.mapStore.clear()\r\n } \r\n\r\n this.mapContextMenu = new MapContextMenu(this.mappingTextPack);\r\n this.vectorLayerSourceFactory = new VectorLayerSourceFactory(this.logger, this.boundsLoaderBehaviour, this.featureLoader, this.featureAdd);\r\n this.map = this.mapFactory.instance(this.mfOptions, this.mapStore, this.logger, this.vectorLayerSourceFactory, this.baseLayerFactory, this.boundsLoaderBehaviour, this.mapContextMenu, this.printOptions, this.mapFilter, this.mappingTextPack);\r\n this.infoPopup = new MapFeatureInfo(this.map, this.resourcefactory.getRecordTypeResource(), this.mappingTextPack);\r\n this.ls = new MapLayerSwitcher(this.map, this.mapStore, this.styleFactory, this.map.baseLayers, this.layerGroups, this.mappingTextPack, {\r\n showList: false,\r\n showOpenPanelByDefault: !this.printOptions.isPrintMap,\r\n rememberActivePanel: true\r\n });\r\n this.geoNames = new GeoNames(this.map, this.mappingTextPack);\r\n\r\n if (this.printOptions.isPrintMap) {\r\n this.printOptions.setMap(this.map);\r\n }\r\n this.downloadPng = new DownloadMapPng(this.map, this.mappingTextPack);\r\n this.gridRefFinder = new GridRef(this.map, this.mappingTextPack, this.logger);\r\n this.extentsNavigation = new ExtentsNavigation(this.map, this.logger, this.mappingTextPack);\r\n this.mousePosition = new MousePosition(this.map, this.mappingTextPack);\r\n\r\n if (!('ontouchstart' in window && navigator.maxTouchPoints > 0)) {\r\n //add tooltip if not touch\r\n this.mapToolTip = new MapToolTip(this.map, new ToolTipProvider(), new ToolTipOptions(7));\r\n }\r\n\r\n this.initialised = true;\r\n }\r\n\r\n private getLayerGroupConfig = (): Array => {\r\n let self = this;\r\n\r\n let monSearchLayers = [\r\n {\r\n layerName: \"MonumentPolygonsWFS\",\r\n minZoom: 8,\r\n maxZoom: 19\r\n },\r\n {\r\n layerName: \"MonumentLinesWFS\",\r\n minZoom: 1,\r\n maxZoom: 19\r\n },\r\n {\r\n layerName: \"MonumentPointsWFS\",\r\n minZoom: 1,\r\n maxZoom: 19\r\n },\r\n {\r\n layerName: \"MonumentPolygonsAsPointsWFS\",\r\n minZoom: 1,\r\n maxZoom: 7\r\n }\r\n ]\r\n\r\n let layerGroupConfig: Array = [\r\n self.layerConfigFactory.layerConfig(HighlandRecordType.Monument, null, { layers: monSearchLayers }),\r\n self.layerConfigFactory.layerConfig(HighlandRecordType.Event),\r\n self.layerConfigFactory.layerConfig(HighlandRecordType.Designation, HighlandRecordSubType.ScheduledMonument),\r\n self.layerConfigFactory.layerConfig(HighlandRecordType.Designation, HighlandRecordSubType.ListedBuilding),\r\n self.layerConfigFactory.layerConfig(HighlandRecordType.Designation, HighlandRecordSubType.ConservationArea),\r\n self.layerConfigFactory.layerConfig(HighlandRecordType.Designation, HighlandRecordSubType.DesignedLandscape),\r\n self.layerConfigFactory.layerConfig(HighlandRecordType.Designation, HighlandRecordSubType.HistoricBattlefield),\r\n self.layerConfigFactory.layerConfig(HighlandRecordType.Designation, HighlandRecordSubType.HistoricMarineProtectedArea)//,\r\n //self.layerConfigFactory.layerConfig(HighlandRecordType.FlowCountryWorldHeritageSite)\r\n ];\r\n\r\n\r\n let hasFilter = (self._searchOptions.monType || self._searchOptions.objectType || self._searchOptions.adminArea || self._searchOptions.periodFrom || self._searchOptions.periodTo);\r\n\r\n //only use the search layer if we have any filters\r\n if (hasFilter) {\r\n layerGroupConfig.forEach(function (layer: IVectorLayerGroupConfig, index: number) {\r\n if (layer.type === self._searchOptions.recordType) {\r\n layer.displayName = layer.displayName + ' ',\r\n layer.layers.forEach(l => { l.layerName += \"_StructuredSearch\" });\r\n layer.zoomToDataBounds = ZoomToDataBounds.Never;\r\n layer.strategy = VectorLayerStrategy.Bbox;\r\n layer.allowZoomToLoadedDataBounds = false;\r\n layer.visibleOnLoad = true;\r\n layer.maxFeatureCount = self._maxFeatureCount;\r\n layer.useWfsBboxRequestParameter = true;\r\n layer.urlParams = {\r\n ...{\r\n monTypeTerm: self._searchOptions.monType,\r\n findTypeTerm: self._searchOptions.objectType,\r\n adminArea: self._searchOptions.adminArea,\r\n period1: self._searchOptions.periodFrom,\r\n period2: self._searchOptions.periodTo,\r\n periodIncludeOverlaps: self._searchOptions.periodIncludeOverlaps,\r\n maxFeatureCount: self._maxFeatureCount\r\n }, ...layer.urlParams\r\n }\r\n }\r\n });\r\n }\r\n\r\n return [\r\n {\r\n ref: \"all_layers\",\r\n name: \"All layers\",\r\n useAccordion: false,\r\n expandedOnFirstLoad: true,\r\n layerGroupConfigs: self.filterMapLayers(layerGroupConfig)\r\n }\r\n ];\r\n }\r\n\r\n}\r\n","import {\r\n IMappingTextPack,\r\n MappingTextPack\r\n} from \"esdm-map\";\r\n\r\nexport class TextPacks {\r\n public constructor( \r\n public mapping: IMappingTextPack\r\n ) { }\r\n}\r\n\r\nexport class TextPackLoader {\r\n\r\n public static load(): Promise { \r\n let mapping = MappingTextPack.load();\r\n\r\n return Promise.all([mapping]).then(\r\n function (results) {\r\n return new TextPacks(results[0]);\r\n }\r\n )\r\n }\r\n}","module.exports = bootstrap;","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","// no baseURI\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nvar installedChunks = {\n\t801: 0\n};\n\n// no chunk on demand loading\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n__webpack_require__.O.j = (chunkId) => (installedChunks[chunkId] === 0);\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = (parentChunkLoadingFunction, data) => {\n\tvar [chunkIds, moreModules, runtime] = data;\n\t// add \"moreModules\" to the modules object,\n\t// then flag all \"chunkIds\" as loaded and fire callback\n\tvar moduleId, chunkId, i = 0;\n\tif(chunkIds.some((id) => (installedChunks[id] !== 0))) {\n\t\tfor(moduleId in moreModules) {\n\t\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t\t}\n\t\t}\n\t\tif(runtime) var result = runtime(__webpack_require__);\n\t}\n\tif(parentChunkLoadingFunction) parentChunkLoadingFunction(data);\n\tfor(;i < chunkIds.length; i++) {\n\t\tchunkId = chunkIds[i];\n\t\tif(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {\n\t\t\tinstalledChunks[chunkId][0]();\n\t\t}\n\t\tinstalledChunks[chunkId] = 0;\n\t}\n\treturn __webpack_require__.O(result);\n}\n\nvar chunkLoadingGlobal = self[\"webpackChunkapp\"] = self[\"webpackChunkapp\"] || [];\nchunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));\nchunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));","// startup\n// Load entry module and return exports\n// This entry module depends on other loaded chunks and execution need to be delayed\nvar __webpack_exports__ = __webpack_require__.O(undefined, [96], () => (__webpack_require__(9150)))\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["deferred","mapFileUrl","layerConfig","recordType","recordSubType","opts","HighlandRecordType","Monument","Event","FlowCountryWorldHeritageSite","FlowCountryWHS","HighlandRecordSubType","ListedBuilding","ScheduledMonument","DesignedLandscape","ConservationArea","HistoricBattlefield","HistoricMarineProtectedArea","displayName","ref","type","strategy","VectorLayerStrategy","Bbox","url","wfsParams","paramSource","maxFeatureCount","visibleOnFirstLoad","alwaysLoadOnZoom","layers","layerName","minZoom","maxZoom","Designation","subType","urlParams","recsubtypecode","legend","line","polygon","point","WfsParamSourceMapServer","WfsBboxAsWktRequestParams","srsName","DefaultLayerConfigurationFactory","GetDefaultOptions","mapElementId","mapStoreKey","opt","MapOptions","bingApiKey","$","data","esdmOsmApiKey","baseMaps","HighlandBaseLayerTypes","BingAerial","HighlandOS","defaultBaseMap","enableBoundsTracking","zoomToNearestBounds","maxZoomToBounds","mapZoom","extent","mapCentre","displayProjection","dataProjection","dragRotateAndZoom","DefaultMapOptions","_mappingTextPack","items","Array","push","recordTypeCode","recordSubTypeCode","heading","groupByRecordSubTypeCode","toLowerCase","mapToIRecordTypeInfoClick","featureProperties","layerGroup","layerType","id","OBJECTID","uid","name","this","getHeading","rectype","recsubtype","getInfoClickHtmlTemplate","recordTypeInfoClick","html","controller","goToDetails","centreOnMap","RecordTypeResource","HbsmrRecordTypeResource","getRecordTypeResource","HbsmrResourcefactory","getStyle","style","RegisteredBattlefield","MarineProtectedArea","WorldHeritageSite","getSelectedStyle","MonumentSelected","EventSelected","DesignationSelected","CommonStyle","fillColour","fill","color","stroke","width","image","radius","points","radius2","angle","canvas","document","createElement","context","getContext","pixelRatio","olHas","DEVICE_PIXEL_RATIO","pattern","height","fillStyle","fillRect","strokeStyle","lineWidth","beginPath","moveTo","lineTo","x0","x1","createPattern","setColor","HbsmrStyleFactory","fetch","Promise","resolve","reject","getJSON","response","fail","HbsmrIdentity","HbsmrUser","BaseLayerType","_baseLayerFactory_3857","BaseLayerFactory_3857","defs","register","olProj","get","setExtent","GetBaseLayerByType","baseLayerType","GetHighlandOS","lyr","visible","source","urls","params","LAYERS","FORMAT","SRS","projection","attributions","Date","getFullYear","crossOrigin","BaseLayer","BaseLayerFactory_27700","HighlandBaseMapping_27700","MapBase","mappingTextPack","user","isAuthenticated","filterMapLayers","layerGroupConfig","selectpicker","selectedTextFormat","dropupAuto","noneSelectedText","on","e","attr","replace","trim","next","append","slice","call","querySelectorAll","map","popoverTriggerEl","Popover","trigger","content","children","didLoadMap","ele","console","log","searchOptions","searchString","searchMode","monType","objectType","adminArea","periodFrom","periodTo","periodIncludeOverlaps","printOptions","PrintMap","resizeMap","window","offset","top","olMap","updateSize","click","animate","scrollTop","preventDefault","loadMap","then","TextPackLoader","load","textpacks","addEventListener","debounce","MonumentSearchMap","mapping","isPrintMap","bingAPIKey","baseLayerFactory","MiniMapsForLists","target","refreshMiniMaps","_mapElementId","_searchOptions","_maxFeatureCount","initialised","init","hide","layerConfigFactory","wmsLayerGroupFactory","WmsLayerGroupFactory","vectorLayerGroupFactory","VectorLayerGroupFactory","layerGroupFactory","LayerGroupFactory","mapFilter","MapFilters","OgcFilter","OgcMapFilter","featureLoader","GeoJsonFeatureLoader","featureAdd","FeatureAddSmallGeomsAsPoint","mapFactory","MapFactory","logger","Logger","boundsLoaderBehaviour","BoundsLoaderExtentsBehaviour","styleFactory","resourcefactory","mfOptions","layerGroups","getLayerGroups","getLayerGroupConfig","layerGroupCollection","mapStore","MapViewStore","val","clear","mapContextMenu","MapContextMenu","vectorLayerSourceFactory","VectorLayerSourceFactory","instance","infoPopup","MapFeatureInfo","ls","MapLayerSwitcher","baseLayers","showList","showOpenPanelByDefault","rememberActivePanel","geoNames","GeoNames","setMap","downloadPng","DownloadMapPng","gridRefFinder","GridRef","extentsNavigation","ExtentsNavigation","mousePosition","MousePosition","navigator","maxTouchPoints","mapToolTip","MapToolTip","ToolTipProvider","ToolTipOptions","self","forEach","layer","index","l","zoomToDataBounds","ZoomToDataBounds","Never","allowZoomToLoadedDataBounds","visibleOnLoad","useWfsBboxRequestParameter","monTypeTerm","findTypeTerm","period1","period2","useAccordion","expandedOnFirstLoad","layerGroupConfigs","TextPacks","MappingTextPack","all","results","module","exports","bootstrap","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","undefined","__webpack_modules__","m","O","result","chunkIds","fn","priority","notFulfilled","Infinity","i","length","fulfilled","j","Object","keys","every","key","splice","r","n","getter","__esModule","d","a","definition","o","defineProperty","enumerable","g","globalThis","Function","obj","prop","prototype","hasOwnProperty","Symbol","toStringTag","value","installedChunks","chunkId","webpackJsonpCallback","parentChunkLoadingFunction","moreModules","runtime","some","chunkLoadingGlobal","bind","__webpack_exports__"],"sourceRoot":""}