{"version":3,"file":"monumentStructuredSearchMap.bundle.min.js","mappings":"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","sources":["webpack://[name]/webpack/runtime/chunk loaded","webpack://[name]/./Scripts/DefaultLayerConfigurationFactory.ts","webpack://[name]/./Scripts/DefaultMapOptions.ts","webpack://[name]/./Scripts/HbsmrRecordTypeResource.ts","webpack://[name]/./Scripts/HbsmrResourceFactory.ts","webpack://[name]/./Scripts/HbsmrStyleFactory.ts","webpack://[name]/./Scripts/HbsmrUser.ts","webpack://[name]/./Scripts/MapBase.ts","webpack://[name]/./Scripts/MonumentStructuredSearchMap.ts","webpack://[name]/./Scripts/NottinghamshireBaseMapping_27700.ts","webpack://[name]/./Scripts/NottinghamshireRecordTypes.ts","webpack://[name]/./Scripts/TextPackLoader.ts","webpack://[name]/external var \"bootstrap\"","webpack://[name]/webpack/bootstrap","webpack://[name]/webpack/runtime/compat get default export","webpack://[name]/webpack/runtime/define property getters","webpack://[name]/webpack/runtime/global","webpack://[name]/webpack/runtime/hasOwnProperty shorthand","webpack://[name]/webpack/runtime/make namespace object","webpack://[name]/webpack/runtime/jsonp chunk loading","webpack://[name]/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\nimport { NottinghamshireRecordType, NottinghamshireRecordSubType } from \"./NottinghamshireRecordTypes\";\r\nimport { IWmsLayerGroupConfig } from \"esdm-map/dist/layers/groups/wms/interfaces/IWmsLayerGroupConfig\";\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: NottinghamshireRecordType,\r\n recordSubType: NottinghamshireRecordSubType = null,\r\n opts: IVectorLayerGroupConfig = {}\r\n ): IVectorLayerGroupConfig | IWmsLayerGroupConfig => {\r\n let layerConfig: IVectorLayerGroupConfig | IWmsLayerGroupConfig = null;\r\n\r\n switch (recordType) {\r\n case NottinghamshireRecordType.Monument:\r\n layerConfig = this.Monument(opts);\r\n break; \r\n\r\n case NottinghamshireRecordType.Event:\r\n layerConfig = this.Event(opts);\r\n break; \r\n\r\n case NottinghamshireRecordType.AreaBoundary:\r\n layerConfig = this.AreaBoundary();\r\n break;\r\n }\r\n\r\n if (layerConfig === null && recordSubType !== null) {\r\n switch (recordSubType) {\r\n\r\n case NottinghamshireRecordSubType.ListedBuilding:\r\n layerConfig = this.ListedBuilding(opts);\r\n break;\r\n\r\n case NottinghamshireRecordSubType.ScheduledMonument:\r\n layerConfig = this.ScheduledMonument(opts);\r\n break; \r\n \r\n case NottinghamshireRecordSubType.RegisteredParksAndGardens:\r\n layerConfig = this.RegisteredParksAndGardens(opts);\r\n break; \r\n\r\n case NottinghamshireRecordSubType.ConservationArea:\r\n layerConfig = this.ConservationArea(opts);\r\n break; \r\n }\r\n }\r\n\r\n return layerConfig;\r\n }\r\n\r\n private AreaBoundary = (): IWmsLayerGroupConfig => {\r\n return {\r\n displayName: \"Nottinghamshire Boundary\",\r\n ref: \"AreaBoundary\",\r\n type: NottinghamshireRecordType.AreaBoundary,\r\n url: this.mapFileUrl,\r\n displayInLayerSwitcher: false,\r\n displayInLegend: false,\r\n visibleOnLoad: true,\r\n queryable: false,\r\n layers: [\r\n {\r\n layerName: \"AreaBoundary\",\r\n minZoom: 1,\r\n maxZoom: 19\r\n }\r\n ]\r\n }\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: NottinghamshireRecordType.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: 1,\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 }, ...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: NottinghamshireRecordType.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: 1,\r\n maxZoom: 19\r\n },\r\n {\r\n layerName: \"EventLinesWFS\",\r\n minZoom: 1,\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 }, ...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: NottinghamshireRecordType.Designation,\r\n subType: NottinghamshireRecordSubType.ListedBuilding,\r\n strategy: VectorLayerStrategy.Bbox,\r\n url: this.mapFileUrl,\r\n urlParams: { recsubtypecode: NottinghamshireRecordSubType.ListedBuilding },\r\n wfsParams: this.paramSource(),\r\n maxFeatureCount: 10000,\r\n legend: { line: 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 layerName: \"DesignationPointsWFS\",\r\n minZoom: 1,\r\n maxZoom: 19\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: NottinghamshireRecordType.Designation,\r\n subType: NottinghamshireRecordSubType.ScheduledMonument,\r\n strategy: VectorLayerStrategy.Bbox,\r\n url: this.mapFileUrl,\r\n urlParams: { recsubtypecode: NottinghamshireRecordSubType.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: 1,\r\n maxZoom: 19\r\n }\r\n ]\r\n }, ...opts\r\n };\r\n }\r\n \r\n private RegisteredParksAndGardens = (\r\n opts: IVectorLayerGroupConfig\r\n ): IVectorLayerGroupConfig => {\r\n return {\r\n ...{\r\n displayName: \"Registered Parks and Gardens\",\r\n ref: \"RegisteredParksAndGardens\",\r\n type: NottinghamshireRecordType.Designation,\r\n subType: NottinghamshireRecordSubType.RegisteredParksAndGardens,\r\n strategy: VectorLayerStrategy.Bbox,\r\n url: this.mapFileUrl,\r\n urlParams: { recsubtypecode: NottinghamshireRecordSubType.RegisteredParksAndGardens },\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 \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: NottinghamshireRecordType.Designation,\r\n subType: NottinghamshireRecordSubType.ConservationArea,\r\n strategy: VectorLayerStrategy.Bbox,\r\n url: this.mapFileUrl,\r\n urlParams: { recsubtypecode: NottinghamshireRecordSubType.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\r\n}\r\n\r\n","import {\r\n MapOptions\r\n} from \"esdm-map/dist\";\r\nimport { NottinghamshireBaseLayerTypes } from \"./NottinghamshireBaseMapping_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 = [\r\n NottinghamshireBaseLayerTypes.Lidar315,\r\n NottinghamshireBaseLayerTypes.Lidar45, \r\n NottinghamshireBaseLayerTypes.Sanderson,\r\n //NottinghamshireBaseLayerTypes.BingAerial,\r\n NottinghamshireBaseLayerTypes.NottinghamshireAerial_2016,\r\n NottinghamshireBaseLayerTypes.NottinghamshireOS \r\n ];\r\n opt.defaultBaseMap = NottinghamshireBaseLayerTypes.NottinghamshireOS;\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 = 6;\r\n opt.minZoom = 4;\r\n opt.maxZoom = 16;\r\n \r\n opt.extent = [444100,321700,489010,401360];\r\n opt.mapCentre = [ \r\n 461437,361671\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 NottinghamshireRecordType,\r\n NottinghamshireRecordSubType\r\n} from \"./NottinghamshireRecordTypes\";\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: NottinghamshireRecordType.Monument,\r\n recordSubTypeCode: null,\r\n heading: \"Monuments\"\r\n });\r\n\r\n items.push({\r\n recordTypeCode: NottinghamshireRecordType.Event,\r\n recordSubTypeCode: null,\r\n heading: \"Events\"\r\n });\r\n\r\n items.push({\r\n recordTypeCode: NottinghamshireRecordType.Designation,\r\n recordSubTypeCode: null,\r\n heading: \"Designations\"\r\n });\r\n\r\n items.push({\r\n recordTypeCode: NottinghamshireRecordType.Designation,\r\n recordSubTypeCode: NottinghamshireRecordSubType.ListedBuilding,\r\n heading: \"Listed Buildings\"\r\n });\r\n\r\n items.push({\r\n recordTypeCode: NottinghamshireRecordType.Designation,\r\n recordSubTypeCode: NottinghamshireRecordSubType.RegisteredParksAndGardens,\r\n heading: \"Registered Parks and Gardens\"\r\n });\r\n\r\n items.push({\r\n recordTypeCode: NottinghamshireRecordType.Designation,\r\n recordSubTypeCode: NottinghamshireRecordSubType.ScheduledMonument,\r\n heading: \"Scheduled Monuments\"\r\n }); \r\n\r\n items.push({\r\n recordTypeCode: NottinghamshireRecordType.Designation,\r\n recordSubTypeCode: NottinghamshireRecordSubType.ConservationArea,\r\n heading: \"Conservation Areas\"\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() === NottinghamshireRecordType.Designation); \r\n } \r\n\r\n public mapToIRecordTypeInfoClick(featureProperties: any, layerGroup: ILayerGroup): IRecordTypeFeatureInfoClick \r\n {\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 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 //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 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 NottinghamshireRecordType,\r\n NottinghamshireRecordSubType\r\n} from \"./NottinghamshireRecordTypes\";\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 NottinghamshireRecordSubType.ConservationArea:\r\n style = this.ConservationArea();\r\n break;\r\n\r\n case NottinghamshireRecordSubType.ListedBuilding:\r\n style = this.ListedBuilding();\r\n break;\r\n\r\n case NottinghamshireRecordSubType.ScheduledMonument:\r\n style = this.ScheduledMonument();\r\n break;\r\n \r\n\r\n case NottinghamshireRecordSubType.RegisteredParksAndGardens:\r\n style = this.RegisteredParksAndGardens();\r\n break;\r\n }\r\n\r\n }\r\n\r\n if (style === null) {\r\n switch (recordType) {\r\n case NottinghamshireRecordType.Monument:\r\n style = this.Monument();\r\n break;\r\n\r\n case NottinghamshireRecordType.Event:\r\n style = this.Event();\r\n break;\r\n\r\n case NottinghamshireRecordType.Designation:\r\n style = this.Designation();\r\n break;\r\n }\r\n }\r\n\r\n return style;\r\n }\r\n\r\n public getSelectedStyle(recordType: NottinghamshireRecordType): Style[] {\r\n let style: Style[] = null;\r\n\r\n switch (recordType) {\r\n case NottinghamshireRecordType.Monument:\r\n style = this.MonumentSelected();\r\n break;\r\n\r\n case NottinghamshireRecordType.Event:\r\n style = this.EventSelected();\r\n break;\r\n\r\n case NottinghamshireRecordType.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 let fill = new Fill({\r\n color: fillColour\r\n });\r\n let 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 let fill = new Fill({\r\n color: 'rgba(185, 107, 225, 0.4)'\r\n });\r\n let 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 let fill = new Fill({\r\n color: 'rgba(255, 106, 0, 0.4)'\r\n });\r\n let stroke = new Stroke({\r\n color: 'rgba(255, 106, 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 let fill = new Fill({\r\n color: 'rgba(0, 38, 255, 0.4)',\r\n });\r\n let stroke = new Stroke({\r\n color: 'rgba(0, 38, 255, 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 let fill = new Fill({\r\n color: 'rgba(255, 255, 0, 0.4)'\r\n });\r\n let stroke = new Stroke({\r\n color: 'rgba(255, 255, 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 ScheduledMonument(): Style[] { \r\n let fill = new Fill({\r\n color: 'rgba(255, 0, 0, 0.4)'\r\n });\r\n let stroke = new Stroke({\r\n color: 'rgba(255, 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 RegisteredParksAndGardens(): Style[] {\r\n //return this.CommonStyle('rgba(45, 123, 9,0.5)'); \r\n let fill = new Fill({\r\n color: 'rgba(0,255,0, 0.4)'\r\n });\r\n\r\n let stroke = new Stroke({\r\n color: 'rgba(0,255,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\r\n private MonumentSelected(): Style[] {\r\n let 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 { IMappingTextPack, IMap } from \"esdm-map\";\r\nimport { HbsmrUser } from \"./HbsmrUser\";\r\nimport { IVectorLayerGroupConfig } from \"esdm-map/dist/layers/groups/vector/interfaces/IVectorLayerGroupConfig\";\r\nimport { NottinghamshireRecordType, NottinghamshireRecordSubType } from \"./NottinghamshireRecordTypes\";\r\nimport { IWmsLayerGroupConfig } from \"esdm-map/dist/layers/groups/wms/interfaces\";\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\r\n MapFeatureInfo\r\n} from \"esdm-map\";\r\n\r\nimport { HbsmrStyleFactory } from \"./HbsmrStyleFactory\";\r\nimport { HbsmrResourcefactory } from \"./HbsmrResourceFactory\";\r\nimport { NottinghamshireRecordType, NottinghamshireRecordSubType } from \"./NottinghamshireRecordTypes\";\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 { IlayerGroupCollectionConfig } from \"esdm-map/dist/layers/groups/IlayerGroupCollectionConfig\";\r\nimport { LayerGroupCollections } from \"esdm-map/dist/layers/groups/LayerGroupCollections\";\r\nimport { NottinghamshireBaseLayerTypes, NottinghamshireBaseMapping_27700 } from \"./NottinghamshireBaseMapping_27700\";\r\nimport { MapToolTip, ToolTipOptions } from \"esdm-map/dist/map/tooltip\";\r\n\r\nimport { Popover } from \"bootstrap\";\r\nimport { debounce } from \"debounce\";\r\n\r\nimport \"../wwwroot/css/bootstrap-select.css\"\r\nimport \"../wwwroot/css/ol-contextmenu.css\";\r\n\r\n$(document).ready(function () {\r\n //selectPicker\r\n ($('.hbsmrSelectPicker')).selectpicker({\r\n noneSelectedText: \"\",\r\n \"selected-text-format\": \"count > 1\"\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 var popoverTriggerList = [].slice.call(document.querySelectorAll('[data-bs-toggle=\"popover\"]'))\r\n var 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\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 };\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 let 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 NottinghamshireBaseMapping_27700();\r\n let miniMaps = new MiniMapsForLists(NottinghamshireBaseLayerTypes.NottinghamshireOS, bingAPIKey, esdmOsmApiKey, baseLayerFactory, \"EPSG:27700\", \"EPSG:27700\");\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 private 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 NottinghamshireBaseMapping_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.msMaxTouchPoints > 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\r\n let layerGroupConfig: Array = [\r\n self.layerConfigFactory.layerConfig(NottinghamshireRecordType.Monument, null, { layers: monSearchLayers }),\r\n self.layerConfigFactory.layerConfig(NottinghamshireRecordType.Event),\r\n self.layerConfigFactory.layerConfig(NottinghamshireRecordType.Designation, NottinghamshireRecordSubType.ScheduledMonument),\r\n self.layerConfigFactory.layerConfig(NottinghamshireRecordType.Designation, NottinghamshireRecordSubType.ListedBuilding),\r\n self.layerConfigFactory.layerConfig(NottinghamshireRecordType.Designation, NottinghamshireRecordSubType.ConservationArea),\r\n self.layerConfigFactory.layerConfig(NottinghamshireRecordType.Designation, NottinghamshireRecordSubType.RegisteredParksAndGardens)\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.Always;\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 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 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\nimport ImageLayer from \"ol/layer/Image\";\r\nimport ImageWMS from 'ol/source/ImageWMS';\r\nimport WMTS from 'ol/source/WMTS'; \r\nimport WMTSTileGrid from 'ol/tilegrid/WMTS';\r\n\r\nexport const NottinghamshireBaseLayerTypes = {\r\n ...BaseLayerType,\r\n NottinghamshireOS: 999,\r\n Lidar315: 1010,\r\n Lidar45: 1020, \r\n Sanderson: 1030,\r\n NottinghamshireAerial_2016:1040\r\n};\r\n\r\nexport class NottinghamshireBaseMapping_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 === NottinghamshireBaseLayerTypes.NottinghamshireOS) {\r\n return this.GetNottinghamshireOS();\r\n } \r\n\r\n //if (baseLayerType === NottinghamshireBaseLayerTypes.OSM_ESDM_contours) {\r\n // return this.GetOSM_ESDM_contours27700(esdmOsmApiKey, \"OSM_ESDM_contours\", \"OpenStreetMap\");\r\n //} \r\n\r\n if (baseLayerType === NottinghamshireBaseLayerTypes.OSM_ESDM_contours) {\r\n return this.GetOSM_ESDM_contours3857(esdmOsmApiKey, \"OSM_ESDM_contours\", \"OpenStreetMap\");\r\n } \r\n \r\n if (baseLayerType == NottinghamshireBaseLayerTypes.BingAerial) {\r\n return this._baseLayerFactory_3857.GetBaseLayerByType(baseLayerType, bingApiKey, esdmOsmApiKey);\r\n } \r\n\r\n if (baseLayerType == NottinghamshireBaseLayerTypes.Lidar315) {\r\n return this.GetNottinghamshireLidar315();\r\n }\r\n\r\n if (baseLayerType == NottinghamshireBaseLayerTypes.Lidar45) {\r\n return this.GetNottinghamshireLidar45();\r\n }\r\n\r\n if (baseLayerType == NottinghamshireBaseLayerTypes.Sanderson) {\r\n return this.GetNottinghamshireSanderson();\r\n }\r\n\r\n if (baseLayerType == NottinghamshireBaseLayerTypes.NottinghamshireAerial_2016) {\r\n return this.GetNottinghamshireAerial2016();\r\n }\r\n\r\n return super.GetBaseLayerByType(baseLayerType, bingApiKey, esdmOsmApiKey);\r\n }\r\n\r\n \r\n //Currently reprojecting to 3857 as disc is full so tiles for 27700 are not getting cached for the higher numbered zoom level\r\n //to switch when the new map tile server is up & running\r\n private GetOSM_ESDM_contours3857(esdmApiKey: string, ref: string, displayName: string): IBaseLayer {\r\n let lyr = new TileLayer({\r\n source: new OSM({\r\n url: `//{a-f}.osm.esdm.co.uk/900913/c/{z}/{x}/{y}.png?APIKEY=${esdmApiKey}`,\r\n //url: `//osm-proxy.esdm.co.uk/900913/c/{z}/{x}/{y}.png?APIKEY=${esdmApiKey}`,\r\n maxZoom: 18\r\n })\r\n });\r\n\r\n return new BaseLayer(ref, displayName, lyr);\r\n }\r\n\r\n private GetOSM_ESDM_contours27700(esdmApiKey: string, ref: string, displayName: string): IBaseLayer {\r\n let lyr = new TileLayer({\r\n source: new XYZ({\r\n projection: new Projection({\r\n code: 'EPSG:27700',\r\n extent: [-350000, -100000, 1050000, 1300000]\r\n }),\r\n //url: `//osm-proxy.esdm.co.uk/27700/c/{z}/{x}/{y}.png?APIKEY=${esdmApiKey}`\r\n url: `//{a-f}.osm.esdm.co.uk/27700/c/{z}/{x}/{y}.png?APIKEY=${esdmApiKey}`,\r\n })\r\n });\r\n\r\n return new BaseLayer(ref, displayName, lyr);\r\n }\r\n\r\n private GetNottinghamshireOS(): IBaseLayer {\r\n\r\n let lyr = new TileLayer({\r\n visible: true,\r\n source: new WMTS({\r\n url: \"https://api.os.uk/maps/raster/v1/wmts?key=zcVRhfUNBHp0ZBA0iVMYZh3Q5F2GJGT8\",\r\n layer: \"Road 27700\",\r\n matrixSet: \"EPSG:27700\",\r\n format: \"image/png\",\r\n projection: \"EPSG:27700\",\r\n tileGrid: new WMTSTileGrid({\r\n origin: [-238375.0, 1376256.0],\r\n resolutions: [896, 448, 224, 112, 56, 28, 14, 7, 3.5, 1.75, 0.875, 0.4375, 0.21875, 0.109375],\r\n matrixIds: [\"EPSG:27700:0\", \"EPSG:27700:1\", \"EPSG:27700:2\", \"EPSG:27700:3\", \"EPSG:27700:4\", \"EPSG:27700:5\", \"EPSG:27700:6\", \"EPSG:27700:7\", \"EPSG:27700:8\", \"EPSG:27700:9\", \"EPSG:27700:10\", \"EPSG:27700:11\", \"EPSG:27700:12\", \"EPSG:27700:13\"]\r\n }),\r\n style: \"default\",\r\n wrapX: false,\r\n crossOrigin: \"Anonymous\",\r\n attributions: `© Crown copyright and database rights ${new Date().getFullYear()} OS 100019713.`\r\n })\r\n });\r\n return new BaseLayer(\"NottinghamshireOS\", \"Ordnance Survey\", lyr);\r\n } \r\n\r\n private GetNottinghamshireSanderson(): IBaseLayer {\r\n let lyr = new TileLayer({\r\n visible: false,\r\n source: new TileWMS({\r\n url: \"/api/MapServer/Hbsmr\",\r\n params: {\r\n LAYERS: 'Sanderson',\r\n TILED: 'true',\r\n FORMAT: 'image/png',\r\n SRS: 'EPSG:27700'\r\n },\r\n projection: \"EPSG:27700\",\r\n crossOrigin: \"Anonymous\",\r\n attributions: [\"©2021. Miner2Major Veiled Landscape Project\"]\r\n })\r\n });\r\n return new BaseLayer(\"NottinghamshireSanderson\", \"Sanderson\", lyr);\r\n }\r\n\r\n private GetNottinghamshireAerial2016(): IBaseLayer { \r\n let lyr = new TileLayer({\r\n visible: true,\r\n source: new TileWMS({\r\n url: \"https://www.getmapping.com/GmWMS/44699914-10ad-4c67-a6eb-763242fbba67/GB.wmsx\",\r\n params: {\r\n LAYERS: 'BestAvailable_UK_125mm',\r\n TILED: 'true',\r\n FORMAT: 'image/png',\r\n SRS: 'EPSG:27700'\r\n },\r\n projection: \"EPSG:27700\",\r\n crossOrigin: \"Anonymous\",\r\n attributions: [`© Getmapping Plc and Bluesky International Limited ${new Date().getFullYear()}`] \r\n })\r\n })\r\n \r\n return new BaseLayer(\"NottinghamshireAerial2016\", \"Aerial\", lyr);\r\n }\r\n\r\n private GetNottinghamshireLidar315(): IBaseLayer {\r\n let lyr = new TileLayer({\r\n visible: false,\r\n source: new TileWMS({\r\n url: \"/api/MapServer/Hbsmr\",\r\n params: {\r\n LAYERS: 'ShadedRelief315',\r\n TILED: 'true',\r\n FORMAT: 'image/png',\r\n SRS: 'EPSG:27700'\r\n },\r\n projection: \"EPSG:27700\",\r\n crossOrigin: \"Anonymous\",\r\n attributions: [\"©2021. Miner2Major Veiled Landscape Project\"]\r\n })\r\n });\r\n return new BaseLayer(\"NottinghamshireLidar315\", \"Sherwood Lidar (hillshade NW sun)\", lyr);\r\n }\r\n\r\n private GetNottinghamshireLidar45(): IBaseLayer {\r\n let lyr = new TileLayer({\r\n visible: false,\r\n source: new TileWMS({\r\n url: \"/api/MapServer/Hbsmr\",\r\n params: {\r\n LAYERS: 'ShadedRelief45',\r\n TILED: 'true',\r\n FORMAT: 'image/png',\r\n SRS: 'EPSG:27700'\r\n },\r\n projection: \"EPSG:27700\",\r\n crossOrigin: \"Anonymous\",\r\n attributions: [\"©2021. Miner2Major Veiled Landscape Project\"]\r\n })\r\n });\r\n return new BaseLayer(\"NottinghamshireLidar45\", \"Sherwood Lidar (hillshade NE sun)\", lyr);\r\n } \r\n}","\r\nexport enum NottinghamshireRecordType { \r\n Monument = \"mon\", \r\n Event = \"event\", \r\n Source = \"source\",\r\n Designation = \"desig\",\r\n AreaBoundary = \"bound\"\r\n} \r\n\r\nexport enum NottinghamshireRecordSubType { \r\n ConservationArea = \"COA\",\r\n ScheduledMonument = \"SM\",\r\n ListedBuilding = \"LB\", \r\n RegisteredParksAndGardens = \"RG\"\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\t14: 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[chunkIds[i]] = 0;\n\t}\n\treturn __webpack_require__.O(result);\n}\n\nvar chunkLoadingGlobal = self[\"webpackChunk_name_\"] = self[\"webpackChunk_name_\"] || [];\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, [216], () => (__webpack_require__(6984)))\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["deferred","mapFileUrl","layerConfig","recordType","recordSubType","opts","NottinghamshireRecordType","Monument","Event","AreaBoundary","NottinghamshireRecordSubType","ListedBuilding","ScheduledMonument","RegisteredParksAndGardens","ConservationArea","displayName","ref","type","url","displayInLayerSwitcher","displayInLegend","visibleOnLoad","queryable","layers","layerName","minZoom","maxZoom","strategy","VectorLayerStrategy","Bbox","wfsParams","paramSource","maxFeatureCount","visibleOnFirstLoad","alwaysLoadOnZoom","Designation","subType","urlParams","recsubtypecode","legend","line","point","WfsParamSourceMapServer","WfsBboxAsWktRequestParams","srsName","DefaultLayerConfigurationFactory","GetDefaultOptions","mapElementId","mapStoreKey","opt","MapOptions","bingApiKey","$","data","esdmOsmApiKey","baseMaps","NottinghamshireBaseLayerTypes","Lidar315","Lidar45","Sanderson","NottinghamshireAerial_2016","NottinghamshireOS","defaultBaseMap","enableBoundsTracking","zoomToNearestBounds","maxZoomToBounds","mapZoom","extent","mapCentre","displayProjection","dataProjection","dragRotateAndZoom","DefaultMapOptions","_mappingTextPack","items","Array","push","recordTypeCode","recordSubTypeCode","heading","groupByRecordSubTypeCode","toLowerCase","mapToIRecordTypeInfoClick","featureProperties","layerGroup","id","uid","name","rectype","recsubtype","this","getHeading","getInfoClickHtmlTemplate","recordTypeInfoClick","layerType","controller","goToDetails","centreOnMap","RecordTypeResource","HbsmrRecordTypeResource","getRecordTypeResource","HbsmrResourcefactory","getStyle","style","getSelectedStyle","MonumentSelected","EventSelected","DesignationSelected","CommonStyle","fillColour","fill","color","stroke","width","image","radius","points","radius2","angle","HbsmrStyleFactory","fetch","Promise","resolve","reject","getJSON","response","fail","HbsmrIdentity","HbsmrUser","MapBase","mappingTextPack","user","isAuthenticated","filterMapLayers","layerGroupConfig","document","ready","selectpicker","noneSelectedText","on","e","attr","replace","trim","next","append","slice","call","querySelectorAll","map","popoverTriggerEl","Popover","html","trigger","content","children","didLoadMap","ele","console","log","searchOptions","searchString","searchMode","monType","objectType","adminArea","periodFrom","periodTo","periodIncludeOverlaps","printOptions","PrintMap","resizeMap","height","window","offset","top","click","animate","scrollTop","preventDefault","loadMap","then","TextPackLoader","load","textpacks","addEventListener","debounce","MonumentSearchMap","mapping","isPrintMap","bingAPIKey","baseLayerFactory","NottinghamshireBaseMapping_27700","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","msMaxTouchPoints","mapToolTip","MapToolTip","ToolTipProvider","ToolTipOptions","self","forEach","layer","index","l","zoomToDataBounds","ZoomToDataBounds","Always","allowZoomToLoadedDataBounds","useWfsBboxRequestParameter","monTypeTerm","findTypeTerm","period1","period2","useAccordion","expandedOnFirstLoad","layerGroupConfigs","BaseLayerType","_baseLayerFactory_3857","BaseLayerFactory_3857","defs","register","olProj","get","setExtent","GetBaseLayerByType","baseLayerType","GetNottinghamshireOS","OSM_ESDM_contours","GetOSM_ESDM_contours3857","BingAerial","GetNottinghamshireLidar315","GetNottinghamshireLidar45","GetNottinghamshireSanderson","GetNottinghamshireAerial2016","esdmApiKey","lyr","source","BaseLayer","GetOSM_ESDM_contours27700","projection","code","visible","matrixSet","format","tileGrid","origin","resolutions","matrixIds","wrapX","crossOrigin","attributions","Date","getFullYear","params","LAYERS","TILED","FORMAT","SRS","BaseLayerFactory_27700","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":""}