File manager - Edit - /home/web/vm-3fadc827.na4u.ru/www/bitrix/modules/landing/install/js/landing/provider/map/dist/map.bundle.js.map
Back
{"version":3,"file":"map.bundle.js","sources":["../src/base_provider.js","../src/google_map/theme/aubergine.js","../src/google_map/theme/dark.js","../src/google_map/theme/night.js","../src/google_map/theme/retro.js","../src/google_map/theme/silver.js","../src/google_map/theme/themes.js","../src/google_map/settings.js","../src/google_map.js","../src/yandex_map.js","../src/map.js"],"sourcesContent":["import {Type, Tag, Loc, Cache} from 'main.core';\nimport {EventEmitter} from 'main.core.events';\nimport {BaseCollection} from 'landing.collection.basecollection';\n\nexport class BaseProvider extends EventEmitter\n{\n\t/**\n\t * Implements base interface for works with any map providers\n\t * @param {object} options\n\t * @param {function} [options.onChange]\n\t * @param {function} [options.onMapClick]\n\t * @param {function} [options.onAddMarker]\n\t * @param {function} [options.onApiLoaded]\n\t * @param {HTMLElement|Element} [options.mapContainer]\n\t * @param {Object} [options.mapOptions]\n\t * @param {Number|String} [options.mapOptions.zoom]\n\t * @param {{lat: String|Number, lng: String|Number}} [options.mapOptions.center]\n\t * @param {{\n\t * \t\tlatLng: {lat: String|Number, lng: String|Number},\n\t * \t\ttitle: String,\n\t * \t\tdescription: String,\n\t * \t\tshowByDefault: String,\n\t * \t}[]} [options.mapOptions.markers]\n\t * @constructor\n\t */\n\tconstructor(options: {})\n\t{\n\t\tsuper();\n\t\t/**\n\t\t * Must be implemented by subclass\n\t\t * @type {string}\n\t\t */\n\t\tthis.code = '';\n\n\t\tthis.onChangeHandler = Type.isFunction(options.onChange) ? options.onChange : (() => {});\n\t\tthis.onMapClickHandler = Type.isFunction(options.onMapClick) ? options.onMapClick : (() => {});\n\t\tthis.onAddMarkerHandler = Type.isFunction(options.onAddMarker) ? options.onAddMarker : (() => {});\n\t\tthis.onApiLoadedHandler = Type.isFunction(options.onApiLoaded) ? options.onApiLoaded : (() => {});\n\t\tthis.onInitHandler = Type.isFunction(options.onProviderInit) ? options.onProviderInit : this.init;\n\t\tthis.options = options;\n\t\tthis.mapOptions = this.prepareMapOptions(options.mapOptions);\n\t\tthis.mapContainer = options.mapContainer;\n\t\tthis.markers = new BaseCollection();\n\t\tthis.mapInstance = null;\n\n\t\tthis.cache = new Cache.MemoryCache();\n\n\t\tthis.handleApiLoad();\n\t}\n\n\n\n\t/**\n\t * Default options for map\n\t * @type {{}}\n\t */\n\tgetDefaultMapOptions()\n\t{\n\t\treturn {\n\t\t\tcenter: this.getDefaultCenter(),\n\t\t\tzoom: 17,\n\t\t\tmarkers: [\n\t\t\t\t{\n\t\t\t\t\tlatLng: this.getDefaultCenter(),\n\t\t\t\t\t// todo: desc to lang message\n\t\t\t\t\ttitle: \"Bitrix24\",\n\t\t\t\t\tdescription: \"Bitrix24 - Your company. United.\",\n\t\t\t\t},\n\t\t\t],\n\t\t};\n\t}\n\n\t/**\n\t * Check if map options have required fields\n\t * @param mapOptions\n\t * @return {{center: ([]|{lng: number, lat: number}), zoom: number, markers: [{description: string, title: string, latLng: (*|{lng: number, lat: number})}]}|*}\n\t */\n\tprepareMapOptions(mapOptions: {}): {}\n\t{\n\t\tif (!Type.isPlainObject(mapOptions))\n\t\t{\n\t\t\treturn this.getDefaultMapOptions();\n\t\t}\n\n\t\tlet preparedOptions = mapOptions;\n\t\tif (!this.isPoint(preparedOptions.center))\n\t\t{\n\t\t\tpreparedOptions.center = this.getDefaultCenter();\n\n\t\t\tif (\n\t\t\t\tType.isArray(mapOptions.markers)\n\t\t\t\t&& mapOptions.markers.length > 0\n\t\t\t)\n\t\t\t{\n\t\t\t\tconst firstMarker = mapOptions.markers[0];\n\n\t\t\t\tif (\n\t\t\t\t\tType.isPlainObject(firstMarker)\n\t\t\t\t\t&& this.isPoint(firstMarker.latLng)\n\t\t\t\t)\n\t\t\t\t{\n\t\t\t\t\tpreparedOptions.center = firstMarker.latLng;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn preparedOptions;\n\t}\n\n\t/**\n\t * Return a default center point by language\n\t * @return {{lng: number, lat: number}}\n\t */\n\tgetDefaultCenter(): {lat: number, lng: number}\n\t{\n\t\tlet point;\n\t\tswitch (Loc.getMessage('LANGUAGE_ID'))\n\t\t{\n\t\t\tcase 'ru':\n\t\t\t\tpoint = {\n\t\t\t\t\tlat: 54.71916849999999,\n\t\t\t\t\tlng: 20.48854240000003,\n\t\t\t\t};\n\t\t\t\tbreak;\n\t\t\tcase 'ua':\n\t\t\t\tpoint = {\n\t\t\t\t\tlat: 50.440333,\n\t\t\t\t\tlng: 30.526835,\n\t\t\t\t};\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\t//default - en\n\t\t\t\tpoint = {\n\t\t\t\t\tlat: 38.814089,\n\t\t\t\t\tlng: -77.042356,\n\t\t\t\t};\n\t\t\t\tbreak;\n\t\t}\n\n\t\treturn point;\n\t}\n\n\t/**\n\t * Check is current variable is a geo point\n\t * @param point\n\t * @return {boolean}\n\t */\n\tisPoint(point): boolean\n\t{\n\t\treturn Type.isObjectLike(point) && Object.keys(point).length === 2;\n\t}\n\n\t/**\n\t * Extract coords from map events (f.e. click)\n\t * @param event\n\t */\n\tgetPointByEvent(event): {lat: number, lng: number}\n\t{\n\t\tthrow new Error(\"Must be implemented by subclass\");\n\t}\n\n\tgetCode(): string\n\t{\n\t\treturn this.code;\n\t}\n\n\t/**\n\t * Check is provider API was loaded\n\t * @return {boolean}\n\t */\n\tisApiLoaded(): boolean\n\t{\n\t\tthrow new Error(\"Must be implemented by subclass\");\n\t}\n\n\t/**\n\t * Initializes map\n\t * Must be implemented by subclass\n\t * @abstract\n\t */\n\tinit()\n\t{\n\t\tthis.emit('onInit');\n\t}\n\n\t/**\n\t * Set api load handle function\n\t * @abstract\n\t */\n\thandleApiLoad(): void\n\t{\n\t\tthrow new Error(\"Must be implemented by subclass\");\n\t}\n\n\t/**\n\t *\n\t */\n\tonChange()\n\t{\n\t\tthis.onChangeHandler(this.preventChangeEvent);\n\t}\n\n\t/**\n\t * Adds marker on map\n\t * @abstract\n\t * @param {Object} options\n\t * @param {Object} options.latLng\n\t * @param {Object} options.latLng\n\t * @param {String|Number} options.latLng.lat\n\t * @param {String|Number} options.latLng.lng\n\t * @param {String} [options.title]\n\t * @param {String} [options.description]\n\t * @param {boolean} [options.showByDefault = false]\n\t * @param {boolean} [options.editable = false]\n\t * @param {boolean} [options.draggable = false]\n\t * @return {void}\n\t */\n\taddMarker(options): void\n\t{\n\t\tthrow new Error(\"Must be implemented by subclass\");\n\t}\n\n\t/**\n\t * When marker clicked\n\t * @param item\n\t */\n\tonMarkerClick(item): void\n\t{\n\t\tthrow new Error(\"Must be implemented by subclass\");\n\t}\n\n\t/**\n\t * Removes marker from map\n\t * @abstract\n\t * @param options\n\t */\n\tremoveMarker(options): void\n\t{\n\t\tthrow new Error(\"Must be implemented by subclass\");\n\t}\n\n\t/**\n\t * Gets map value\n\t * @abstract\n\t */\n\tgetValue(): {}\n\t{\n\t\tthrow new Error(\"Must be implemented by subclass\");\n\t}\n\n\t/**\n\t * Set values\n\t * @param value\n\t * @param preventChangeEvent\n\t */\n\tsetValue(value, preventChangeEvent): void\n\t{\n\t\tthis.preventChangeEvent = preventChangeEvent;\n\n\t\tthis.markers.forEach(this.removeMarker, this);\n\n\t\tif (Type.isPlainObject(value))\n\t\t{\n\t\t\tif (Type.isArray(value.markers))\n\t\t\t{\n\t\t\t\tvalue.markers.forEach(this.addMarker, this);\n\t\t\t}\n\n\t\t\tif (!BX.Landing.Utils.isEmpty(value.center))\n\t\t\t{\n\t\t\t\tthis.setCenter(value.center);\n\t\t\t}\n\n\t\t\tif (!BX.Landing.Utils.isEmpty(value.zoom))\n\t\t\t{\n\t\t\t\tthis.setZoom(value.zoom);\n\t\t\t}\n\t\t}\n\n\t\tthis.preventChangeEvent = false;\n\t}\n\n\t/**\n\t * @abstract\n\t */\n\tonEditFormApplyClick(event): void\n\t{\n\t\tthrow new Error(\"Must be implemented by subclass\");\n\t}\n\n\t/**\n\t * @abstract\n\t * @param event\n\t */\n\tonEditFormRemoveClick(event): void\n\t{\n\t\tthrow new Error(\"Must be implemented by subclass\");\n\t}\n\n\t/**\n\t * Creates balloon edit forms\n\t * @param options\n\t * @param [event]\n\t * @return {BX.Landing.UI.Form.BalloonForm}\n\t */\n\tcreateBalloonEditForm(options, event)\n\t{\n\t\tconst form = new BX.Landing.UI.Form.BalloonForm({\n\t\t\ttitle: Loc.getMessage(\"LANDING_NODE_MAP_FORM_HEADER\"),\n\t\t});\n\n\t\tconst applyButton = new BX.Landing.UI.Button.BaseButton({\n\t\t\ttext: Loc.getMessage(\"LANDING_NODE_MAP_FORM_SHOW_BUTTON_APPLY\"),\n\t\t\tclassName: [\"ui-btn\", \"ui-btn-success\", \"ui-btn-sm\"],\n\t\t\tonClick: this.onEditFormApplyClick.bind(this, event),\n\t\t});\n\n\t\tconst removeButton = new BX.Landing.UI.Button.BaseButton({\n\t\t\ttext: Loc.getMessage(\"LANDING_NODE_MAP_FORM_SHOW_BUTTON_REMOVE\"),\n\t\t\tclassName: [\"ui-btn\", \"ui-btn-danger\", \"ui-btn-sm\"],\n\t\t\tonClick: this.onEditFormRemoveClick.bind(this, event),\n\t\t});\n\n\t\tapplyButton.layout.classList.remove(\"landing-ui-button\");\n\t\tremoveButton.layout.classList.remove(\"landing-ui-button\");\n\n\t\tconst footer = Tag.render`\n\t\t\t<div class=\"ui-btn-container ui-btn-container-center\">\n\t\t\t\t${applyButton.layout}\n\t\t\t\t${removeButton.layout}\n\t\t\t</div>\n\t\t`;\n\n\t\tform.addField(\n\t\t\tnew BX.Landing.UI.Field.Text({\n\t\t\t\ttitle: Loc.getMessage(\"LANDING_NODE_MAP_FORM_TITLE\"),\n\t\t\t\ttextOnly: true,\n\t\t\t\tcontent: options.title,\n\t\t\t}),\n\t\t);\n\n\t\tform.addField(\n\t\t\tnew BX.Landing.UI.Field.Text({\n\t\t\t\ttitle: Loc.getMessage(\"LANDING_NODE_MAP_FORM_DESCRIPTION\"),\n\t\t\t\tclassName: \"landing-ui-field-map-description\",\n\t\t\t\tcontent: options.description,\n\t\t\t}),\n\t\t);\n\n\t\tform.addField(\n\t\t\tnew BX.Landing.UI.Field.Checkbox({\n\t\t\t\tclassName: \"landing-ui-field-map-show-by-default\",\n\t\t\t\tcompact: true,\n\t\t\t\titems: [\n\t\t\t\t\t{name: Loc.getMessage(\"LANDING_NODE_MAP_FORM_SHOW_BY_DEFAULT\"), \"value\": true},\n\t\t\t\t],\n\t\t\t\tvalue: [options.showByDefault],\n\t\t\t}),\n\t\t);\n\n\t\tform.layout.appendChild(footer);\n\n\t\treturn form;\n\t}\n\n\t/**\n\t * Creates balloon content\n\t * @param {{title: string, description: string}} options\n\t * @return {HTMLElement}\n\t */\n\tcreateBalloonContent(options): HTMLDivElement\n\t{\n\t\treturn Tag.render`\n\t\t\t<div class=\"landing-map-balloon-content\">\n\t\t\t\t<div class=\"landing-map-balloon-content-header\">${options.title}</div>\t\n\t\t\t\t<div class=\"landing-map-balloon-content-description\">${options.description}</div>\t\n\t\t\t</div>\n\t\t`;\n\t}\n}","export const AUBERGINE = [\n\t{\n\t\t\"elementType\": \"geometry\",\n\t\t\"stylers\": [\n\t\t\t{\"color\": \"#1d2c4d\"},\n\t\t],\n\t},\n\t{\n\t\t\"elementType\": \"labels.text.fill\",\n\t\t\"stylers\": [\n\t\t\t{\"color\": \"#8ec3b9\"},\n\t\t],\n\t},\n\t{\n\t\t\"elementType\": \"labels.text.stroke\",\n\t\t\"stylers\": [\n\t\t\t{\"color\": \"#1a3646\"},\n\t\t],\n\t},\n\t{\n\t\t\"featureType\": \"administrative.country\",\n\t\t\"elementType\": \"geometry.stroke\",\n\t\t\"stylers\": [\n\t\t\t{\"color\": \"#4b6878\"},\n\t\t],\n\t},\n\t{\n\t\t\"featureType\": \"administrative.land_parcel\",\n\t\t\"elementType\": \"labels.text.fill\",\n\t\t\"stylers\": [\n\t\t\t{\"color\": \"#64779e\"},\n\t\t],\n\t},\n\t{\n\t\t\"featureType\": \"administrative.province\",\n\t\t\"elementType\": \"geometry.stroke\",\n\t\t\"stylers\": [\n\t\t\t{\"color\": \"#4b6878\"},\n\t\t],\n\t},\n\t{\n\t\t\"featureType\": \"landscape.man_made\",\n\t\t\"elementType\": \"geometry.stroke\",\n\t\t\"stylers\": [\n\t\t\t{\"color\": \"#334e87\"},\n\t\t],\n\t},\n\t{\n\t\t\"featureType\": \"landscape.natural\",\n\t\t\"elementType\": \"geometry\",\n\t\t\"stylers\": [\n\t\t\t{\"color\": \"#023e58\"},\n\t\t],\n\t},\n\t{\n\t\t\"featureType\": \"poi\",\n\t\t\"elementType\": \"geometry\",\n\t\t\"stylers\": [\n\t\t\t{\"color\": \"#283d6a\"},\n\t\t],\n\t},\n\t{\n\t\t\"featureType\": \"poi\",\n\t\t\"elementType\": \"labels.text.fill\",\n\t\t\"stylers\": [\n\t\t\t{\"color\": \"#6f9ba5\"},\n\t\t],\n\t},\n\t{\n\t\t\"featureType\": \"poi\",\n\t\t\"elementType\": \"labels.text.stroke\",\n\t\t\"stylers\": [\n\t\t\t{\"color\": \"#1d2c4d\"},\n\t\t],\n\t},\n\t{\n\t\t\"featureType\": \"poi.park\",\n\t\t\"elementType\": \"geometry.fill\",\n\t\t\"stylers\": [\n\t\t\t{\"color\": \"#023e58\"},\n\t\t],\n\t},\n\t{\n\t\t\"featureType\": \"poi.park\",\n\t\t\"elementType\": \"labels.text.fill\",\n\t\t\"stylers\": [\n\t\t\t{\"color\": \"#3c7680\"},\n\t\t],\n\t},\n\t{\n\t\t\"featureType\": \"road\",\n\t\t\"elementType\": \"geometry\",\n\t\t\"stylers\": [\n\t\t\t{\"color\": \"#304a7d\"},\n\t\t],\n\t},\n\t{\n\t\t\"featureType\": \"road\",\n\t\t\"elementType\": \"labels.text.fill\",\n\t\t\"stylers\": [\n\t\t\t{\"color\": \"#98a5be\"},\n\t\t],\n\t},\n\t{\n\t\t\"featureType\": \"road\",\n\t\t\"elementType\": \"labels.text.stroke\",\n\t\t\"stylers\": [\n\t\t\t{\"color\": \"#1d2c4d\"},\n\t\t],\n\t},\n\t{\n\t\t\"featureType\": \"road.highway\",\n\t\t\"elementType\": \"geometry\",\n\t\t\"stylers\": [\n\t\t\t{\"color\": \"#2c6675\"},\n\t\t],\n\t},\n\t{\n\t\t\"featureType\": \"road.highway\",\n\t\t\"elementType\": \"geometry.stroke\",\n\t\t\"stylers\": [\n\t\t\t{\"color\": \"#255763\"},\n\t\t],\n\t},\n\t{\n\t\t\"featureType\": \"road.highway\",\n\t\t\"elementType\": \"labels.text.fill\",\n\t\t\"stylers\": [\n\t\t\t{\"color\": \"#b0d5ce\"},\n\t\t],\n\t},\n\t{\n\t\t\"featureType\": \"road.highway\",\n\t\t\"elementType\": \"labels.text.stroke\",\n\t\t\"stylers\": [\n\t\t\t{\"color\": \"#023e58\"},\n\t\t],\n\t},\n\t{\n\t\t\"featureType\": \"transit\",\n\t\t\"elementType\": \"labels.text.fill\",\n\t\t\"stylers\": [\n\t\t\t{\"color\": \"#98a5be\"},\n\t\t],\n\t},\n\t{\n\t\t\"featureType\": \"transit\",\n\t\t\"elementType\": \"labels.text.stroke\",\n\t\t\"stylers\": [\n\t\t\t{\"color\": \"#1d2c4d\"},\n\t\t],\n\t},\n\t{\n\t\t\"featureType\": \"transit.line\",\n\t\t\"elementType\": \"geometry.fill\",\n\t\t\"stylers\": [\n\t\t\t{\"color\": \"#283d6a\"},\n\t\t],\n\t},\n\t{\n\t\t\"featureType\": \"transit.station\",\n\t\t\"elementType\": \"geometry\",\n\t\t\"stylers\": [\n\t\t\t{\"color\": \"#3a4762\"},\n\t\t],\n\t},\n\t{\n\t\t\"featureType\": \"water\",\n\t\t\"elementType\": \"geometry\",\n\t\t\"stylers\": [\n\t\t\t{\"color\": \"#0e1626\"},\n\t\t],\n\t},\n\t{\n\t\t\"featureType\": \"water\",\n\t\t\"elementType\": \"labels.text.fill\",\n\t\t\"stylers\": [\n\t\t\t{\"color\": \"#4e6d70\"},\n\t\t],\n\t},\n];\n","export const DARK = [\n\t{\n\t\t\"elementType\": \"geometry\",\n\t\t\"stylers\": [\n\t\t\t{\"color\": \"#212121\"},\n\t\t],\n\t},\n\t{\n\t\t\"elementType\": \"labels.icon\",\n\t\t\"stylers\": [\n\t\t\t{\"visibility\": \"off\"},\n\t\t],\n\t},\n\t{\n\t\t\"elementType\": \"labels.text.fill\",\n\t\t\"stylers\": [\n\t\t\t{\"color\": \"#757575\"},\n\t\t],\n\t},\n\t{\n\t\t\"elementType\": \"labels.text.stroke\",\n\t\t\"stylers\": [\n\t\t\t{\"color\": \"#212121\"},\n\t\t],\n\t},\n\t{\n\t\t\"featureType\": \"administrative\",\n\t\t\"elementType\": \"geometry\",\n\t\t\"stylers\": [\n\t\t\t{\"color\": \"#757575\"},\n\t\t],\n\t},\n\t{\n\t\t\"featureType\": \"administrative.country\",\n\t\t\"elementType\": \"labels.text.fill\",\n\t\t\"stylers\": [\n\t\t\t{\"color\": \"#9e9e9e\"},\n\t\t],\n\t},\n\t{\n\t\t\"featureType\": \"administrative.land_parcel\",\n\t\t\"stylers\": [\n\t\t\t{\"visibility\": \"off\"},\n\t\t],\n\t},\n\t{\n\t\t\"featureType\": \"administrative.locality\",\n\t\t\"elementType\": \"labels.text.fill\",\n\t\t\"stylers\": [\n\t\t\t{\"color\": \"#bdbdbd\"},\n\t\t],\n\t},\n\t{\n\t\t\"featureType\": \"poi\",\n\t\t\"elementType\": \"labels.text.fill\",\n\t\t\"stylers\": [\n\t\t\t{\"color\": \"#757575\"},\n\t\t],\n\t},\n\t{\n\t\t\"featureType\": \"poi.park\",\n\t\t\"elementType\": \"geometry\",\n\t\t\"stylers\": [\n\t\t\t{\"color\": \"#181818\"},\n\t\t],\n\t},\n\t{\n\t\t\"featureType\": \"poi.park\",\n\t\t\"elementType\": \"labels.text.fill\",\n\t\t\"stylers\": [\n\t\t\t{\"color\": \"#616161\"},\n\t\t],\n\t},\n\t{\n\t\t\"featureType\": \"poi.park\",\n\t\t\"elementType\": \"labels.text.stroke\",\n\t\t\"stylers\": [\n\t\t\t{\"color\": \"#1b1b1b\"},\n\t\t],\n\t},\n\t{\n\t\t\"featureType\": \"road\",\n\t\t\"elementType\": \"geometry.fill\",\n\t\t\"stylers\": [\n\t\t\t{\"color\": \"#2c2c2c\"},\n\t\t],\n\t},\n\t{\n\t\t\"featureType\": \"road\",\n\t\t\"elementType\": \"labels.text.fill\",\n\t\t\"stylers\": [\n\t\t\t{\"color\": \"#8a8a8a\"},\n\t\t],\n\t},\n\t{\n\t\t\"featureType\": \"road.arterial\",\n\t\t\"elementType\": \"geometry\",\n\t\t\"stylers\": [\n\t\t\t{\"color\": \"#373737\"},\n\t\t],\n\t},\n\t{\n\t\t\"featureType\": \"road.highway\",\n\t\t\"elementType\": \"geometry\",\n\t\t\"stylers\": [\n\t\t\t{\"color\": \"#3c3c3c\"},\n\t\t],\n\t},\n\t{\n\t\t\"featureType\": \"road.highway.controlled_access\",\n\t\t\"elementType\": \"geometry\",\n\t\t\"stylers\": [\n\t\t\t{\"color\": \"#4e4e4e\"},\n\t\t],\n\t},\n\t{\n\t\t\"featureType\": \"road.local\",\n\t\t\"elementType\": \"labels.text.fill\",\n\t\t\"stylers\": [\n\t\t\t{\"color\": \"#616161\"},\n\t\t],\n\t},\n\t{\n\t\t\"featureType\": \"transit\",\n\t\t\"elementType\": \"labels.text.fill\",\n\t\t\"stylers\": [\n\t\t\t{\"color\": \"#757575\"},\n\t\t],\n\t},\n\t{\n\t\t\"featureType\": \"water\",\n\t\t\"elementType\": \"geometry\",\n\t\t\"stylers\": [\n\t\t\t{\"color\": \"#000000\"},\n\t\t],\n\t},\n\t{\n\t\t\"featureType\": \"water\",\n\t\t\"elementType\": \"labels.text.fill\",\n\t\t\"stylers\": [\n\t\t\t{\"color\": \"#3d3d3d\"},\n\t\t],\n\t},\n];\n","export const NIGHT = [\n\t{\n\t\t\"elementType\": \"geometry\",\n\t\t\"stylers\": [\n\t\t\t{\"color\": \"#242f3e\"},\n\t\t],\n\t},\n\t{\n\t\t\"elementType\": \"labels.text.fill\",\n\t\t\"stylers\": [\n\t\t\t{\"color\": \"#746855\"},\n\t\t],\n\t},\n\t{\n\t\t\"elementType\": \"labels.text.stroke\",\n\t\t\"stylers\": [\n\t\t\t{\"color\": \"#242f3e\"},\n\t\t],\n\t},\n\t{\n\t\t\"featureType\": \"administrative.locality\",\n\t\t\"elementType\": \"labels.text.fill\",\n\t\t\"stylers\": [\n\t\t\t{\"color\": \"#d59563\"},\n\t\t],\n\t},\n\t{\n\t\t\"featureType\": \"poi\",\n\t\t\"elementType\": \"labels.text.fill\",\n\t\t\"stylers\": [\n\t\t\t{\"color\": \"#d59563\"},\n\t\t],\n\t},\n\t{\n\t\t\"featureType\": \"poi.park\",\n\t\t\"elementType\": \"geometry\",\n\t\t\"stylers\": [\n\t\t\t{\"color\": \"#263c3f\"},\n\t\t],\n\t},\n\t{\n\t\t\"featureType\": \"poi.park\",\n\t\t\"elementType\": \"labels.text.fill\",\n\t\t\"stylers\": [\n\t\t\t{\"color\": \"#6b9a76\"},\n\t\t],\n\t},\n\t{\n\t\t\"featureType\": \"road\",\n\t\t\"elementType\": \"geometry\",\n\t\t\"stylers\": [\n\t\t\t{\"color\": \"#38414e\"},\n\t\t],\n\t},\n\t{\n\t\t\"featureType\": \"road\",\n\t\t\"elementType\": \"geometry.stroke\",\n\t\t\"stylers\": [\n\t\t\t{\"color\": \"#212a37\"},\n\t\t],\n\t},\n\t{\n\t\t\"featureType\": \"road\",\n\t\t\"elementType\": \"labels.text.fill\",\n\t\t\"stylers\": [\n\t\t\t{\"color\": \"#9ca5b3\"},\n\t\t],\n\t},\n\t{\n\t\t\"featureType\": \"road.highway\",\n\t\t\"elementType\": \"geometry\",\n\t\t\"stylers\": [\n\t\t\t{\"color\": \"#746855\"},\n\t\t],\n\t},\n\t{\n\t\t\"featureType\": \"road.highway\",\n\t\t\"elementType\": \"geometry.stroke\",\n\t\t\"stylers\": [\n\t\t\t{\"color\": \"#1f2835\"},\n\t\t],\n\t},\n\t{\n\t\t\"featureType\": \"road.highway\",\n\t\t\"elementType\": \"labels.text.fill\",\n\t\t\"stylers\": [\n\t\t\t{\"color\": \"#f3d19c\"},\n\t\t],\n\t},\n\t{\n\t\t\"featureType\": \"transit\",\n\t\t\"elementType\": \"geometry\",\n\t\t\"stylers\": [\n\t\t\t{\"color\": \"#2f3948\"},\n\t\t],\n\t},\n\t{\n\t\t\"featureType\": \"transit.station\",\n\t\t\"elementType\": \"labels.text.fill\",\n\t\t\"stylers\": [\n\t\t\t{\"color\": \"#d59563\"},\n\t\t],\n\t},\n\t{\n\t\t\"featureType\": \"water\",\n\t\t\"elementType\": \"geometry\",\n\t\t\"stylers\": [\n\t\t\t{\"color\": \"#17263c\"},\n\t\t],\n\t},\n\t{\n\t\t\"featureType\": \"water\",\n\t\t\"elementType\": \"labels.text.fill\",\n\t\t\"stylers\": [\n\t\t\t{\"color\": \"#515c6d\"},\n\t\t],\n\t},\n\t{\n\t\t\"featureType\": \"water\",\n\t\t\"elementType\": \"labels.text.stroke\",\n\t\t\"stylers\": [\n\t\t\t{\"color\": \"#17263c\"},\n\t\t],\n\t},\n];\n","export const RETRO = [\n\t{\n\t\t\"elementType\": \"geometry\",\n\t\t\"stylers\": [\n\t\t\t{\"color\": \"#ebe3cd\"},\n\t\t],\n\t},\n\t{\n\t\t\"elementType\": \"labels.text.fill\",\n\t\t\"stylers\": [\n\t\t\t{\"color\": \"#523735\"},\n\t\t],\n\t},\n\t{\n\t\t\"elementType\": \"labels.text.stroke\",\n\t\t\"stylers\": [\n\t\t\t{\"color\": \"#f5f1e6\"},\n\t\t],\n\t},\n\t{\n\t\t\"featureType\": \"administrative\",\n\t\t\"elementType\": \"geometry.stroke\",\n\t\t\"stylers\": [\n\t\t\t{\"color\": \"#c9b2a6\"},\n\t\t],\n\t},\n\t{\n\t\t\"featureType\": \"administrative.land_parcel\",\n\t\t\"elementType\": \"geometry.stroke\",\n\t\t\"stylers\": [\n\t\t\t{\"color\": \"#dcd2be\"},\n\t\t],\n\t},\n\t{\n\t\t\"featureType\": \"administrative.land_parcel\",\n\t\t\"elementType\": \"labels.text.fill\",\n\t\t\"stylers\": [\n\t\t\t{\"color\": \"#ae9e90\"},\n\t\t],\n\t},\n\t{\n\t\t\"featureType\": \"landscape.natural\",\n\t\t\"elementType\": \"geometry\",\n\t\t\"stylers\": [\n\t\t\t{\"color\": \"#dfd2ae\"},\n\t\t],\n\t},\n\t{\n\t\t\"featureType\": \"poi\",\n\t\t\"elementType\": \"geometry\",\n\t\t\"stylers\": [\n\t\t\t{\"color\": \"#dfd2ae\"},\n\t\t],\n\t},\n\t{\n\t\t\"featureType\": \"poi\",\n\t\t\"elementType\": \"labels.text.fill\",\n\t\t\"stylers\": [\n\t\t\t{\"color\": \"#93817c\"},\n\t\t],\n\t},\n\t{\n\t\t\"featureType\": \"poi.park\",\n\t\t\"elementType\": \"geometry.fill\",\n\t\t\"stylers\": [\n\t\t\t{\"color\": \"#a5b076\"},\n\t\t],\n\t},\n\t{\n\t\t\"featureType\": \"poi.park\",\n\t\t\"elementType\": \"labels.text.fill\",\n\t\t\"stylers\": [\n\t\t\t{\"color\": \"#447530\"},\n\t\t],\n\t},\n\t{\n\t\t\"featureType\": \"road\",\n\t\t\"elementType\": \"geometry\",\n\t\t\"stylers\": [\n\t\t\t{\"color\": \"#f5f1e6\"},\n\t\t],\n\t},\n\t{\n\t\t\"featureType\": \"road.arterial\",\n\t\t\"elementType\": \"geometry\",\n\t\t\"stylers\": [\n\t\t\t{\"color\": \"#fdfcf8\"},\n\t\t],\n\t},\n\t{\n\t\t\"featureType\": \"road.highway\",\n\t\t\"elementType\": \"geometry\",\n\t\t\"stylers\": [\n\t\t\t{\"color\": \"#f8c967\"},\n\t\t],\n\t},\n\t{\n\t\t\"featureType\": \"road.highway\",\n\t\t\"elementType\": \"geometry.stroke\",\n\t\t\"stylers\": [\n\t\t\t{\"color\": \"#e9bc62\"},\n\t\t],\n\t},\n\t{\n\t\t\"featureType\": \"road.highway.controlled_access\",\n\t\t\"elementType\": \"geometry\",\n\t\t\"stylers\": [\n\t\t\t{\"color\": \"#e98d58\"},\n\t\t],\n\t},\n\t{\n\t\t\"featureType\": \"road.highway.controlled_access\",\n\t\t\"elementType\": \"geometry.stroke\",\n\t\t\"stylers\": [\n\t\t\t{\"color\": \"#db8555\"},\n\t\t],\n\t},\n\t{\n\t\t\"featureType\": \"road.local\",\n\t\t\"elementType\": \"labels.text.fill\",\n\t\t\"stylers\": [\n\t\t\t{\"color\": \"#806b63\"},\n\t\t],\n\t},\n\t{\n\t\t\"featureType\": \"transit.line\",\n\t\t\"elementType\": \"geometry\",\n\t\t\"stylers\": [\n\t\t\t{\"color\": \"#dfd2ae\"},\n\t\t],\n\t},\n\t{\n\t\t\"featureType\": \"transit.line\",\n\t\t\"elementType\": \"labels.text.fill\",\n\t\t\"stylers\": [\n\t\t\t{\"color\": \"#8f7d77\"},\n\t\t],\n\t},\n\t{\n\t\t\"featureType\": \"transit.line\",\n\t\t\"elementType\": \"labels.text.stroke\",\n\t\t\"stylers\": [\n\t\t\t{\"color\": \"#ebe3cd\"},\n\t\t],\n\t},\n\t{\n\t\t\"featureType\": \"transit.station\",\n\t\t\"elementType\": \"geometry\",\n\t\t\"stylers\": [\n\t\t\t{\"color\": \"#dfd2ae\"},\n\t\t],\n\t},\n\t{\n\t\t\"featureType\": \"water\",\n\t\t\"elementType\": \"geometry.fill\",\n\t\t\"stylers\": [\n\t\t\t{\"color\": \"#b9d3c2\"},\n\t\t],\n\t},\n\t{\n\t\t\"featureType\": \"water\",\n\t\t\"elementType\": \"labels.text.fill\",\n\t\t\"stylers\": [\n\t\t\t{\"color\": \"#92998d\"},\n\t\t],\n\t},\n];\n","export const SILVER = [\n\t{\n\t\t\"elementType\": \"geometry\",\n\t\t\"stylers\": [\n\t\t\t{\"color\": \"#f5f5f5\"},\n\t\t],\n\t},\n\t{\n\t\t\"elementType\": \"labels.icon\",\n\t\t\"stylers\": [\n\t\t\t{\"visibility\": \"off\"},\n\t\t],\n\t},\n\t{\n\t\t\"elementType\": \"labels.text.fill\",\n\t\t\"stylers\": [\n\t\t\t{\"color\": \"#616161\"},\n\t\t],\n\t},\n\t{\n\t\t\"elementType\": \"labels.text.stroke\",\n\t\t\"stylers\": [\n\t\t\t{\"color\": \"#f5f5f5\"},\n\t\t],\n\t},\n\t{\n\t\t\"featureType\": \"administrative.land_parcel\",\n\t\t\"elementType\": \"labels.text.fill\",\n\t\t\"stylers\": [\n\t\t\t{\"color\": \"#bdbdbd\"},\n\t\t],\n\t},\n\t{\n\t\t\"featureType\": \"poi\",\n\t\t\"elementType\": \"geometry\",\n\t\t\"stylers\": [\n\t\t\t{\"color\": \"#eeeeee\"},\n\t\t],\n\t},\n\t{\n\t\t\"featureType\": \"poi\",\n\t\t\"elementType\": \"labels.text.fill\",\n\t\t\"stylers\": [\n\t\t\t{\"color\": \"#757575\"},\n\t\t],\n\t},\n\t{\n\t\t\"featureType\": \"poi.park\",\n\t\t\"elementType\": \"geometry\",\n\t\t\"stylers\": [\n\t\t\t{\"color\": \"#e5e5e5\"},\n\t\t],\n\t},\n\t{\n\t\t\"featureType\": \"poi.park\",\n\t\t\"elementType\": \"labels.text.fill\",\n\t\t\"stylers\": [\n\t\t\t{\"color\": \"#9e9e9e\"},\n\t\t],\n\t},\n\t{\n\t\t\"featureType\": \"road\",\n\t\t\"elementType\": \"geometry\",\n\t\t\"stylers\": [\n\t\t\t{\"color\": \"#ffffff\"},\n\t\t],\n\t},\n\t{\n\t\t\"featureType\": \"road.arterial\",\n\t\t\"elementType\": \"labels.text.fill\",\n\t\t\"stylers\": [\n\t\t\t{\"color\": \"#757575\"},\n\t\t],\n\t},\n\t{\n\t\t\"featureType\": \"road.highway\",\n\t\t\"elementType\": \"geometry\",\n\t\t\"stylers\": [\n\t\t\t{\"color\": \"#dadada\"},\n\t\t],\n\t},\n\t{\n\t\t\"featureType\": \"road.highway\",\n\t\t\"elementType\": \"labels.text.fill\",\n\t\t\"stylers\": [\n\t\t\t{\"color\": \"#616161\"},\n\t\t],\n\t},\n\t{\n\t\t\"featureType\": \"road.local\",\n\t\t\"elementType\": \"labels.text.fill\",\n\t\t\"stylers\": [\n\t\t\t{\"color\": \"#9e9e9e\"},\n\t\t],\n\t},\n\t{\n\t\t\"featureType\": \"transit.line\",\n\t\t\"elementType\": \"geometry\",\n\t\t\"stylers\": [\n\t\t\t{\n\t\t\t\t\"color\": \"#e5e5e5\",\n\t\t\t},\n\t\t],\n\t},\n\t{\n\t\t\"featureType\": \"transit.station\",\n\t\t\"elementType\": \"geometry\",\n\t\t\"stylers\": [\n\t\t\t{\"color\": \"#eeeeee\"},\n\t\t],\n\t},\n\t{\n\t\t\"featureType\": \"water\",\n\t\t\"elementType\": \"geometry\",\n\t\t\"stylers\": [\n\t\t\t{\"color\": \"#c9c9c9\"},\n\t\t],\n\t},\n\t{\n\t\t\"featureType\": \"water\",\n\t\t\"elementType\": \"labels.text.fill\",\n\t\t\"stylers\": [\n\t\t\t{\"color\": \"#9e9e9e\"},\n\t\t],\n\t},\n];\n","import {AUBERGINE} from './aubergine';\nimport {DARK} from './dark';\nimport {NIGHT} from './night';\nimport {RETRO} from './retro';\nimport {SILVER} from './silver';\n\nexport const themes = {\n\tAUBERGINE: AUBERGINE,\n\tDARK: DARK,\n\tNIGHT: NIGHT,\n\tRETRO: RETRO,\n\tSILVER: SILVER,\n};","export const roads = {\n\t'': [],\n\t'off': [\n\t\t{\n\t\t\t\"featureType\": \"road\",\n\t\t\t\"stylers\": [\n\t\t\t\t{\"visibility\": \"off\" }\n\t\t\t]\n\t\t}\n\t]\n};\n\nexport const landmarks = {\n\t'': [],\n\t'off': [\n\t\t{\n\t\t\t\"featureType\": \"administrative\",\n\t\t\t\"elementType\": \"geometry\",\n\t\t\t\"stylers\": [{\"visibility\": \"off\"}]\n\t\t},\n\t\t{\n\t\t\t\"featureType\": \"poi\",\n\t\t\t\"stylers\": [{\"visibility\": \"off\"}]},\n\t\t{\n\t\t\t\"featureType\": \"road\",\n\t\t\t\"elementType\": \"labels.icon\",\n\t\t\t\"stylers\": [{\"visibility\": \"off\"}]\n\t\t},\n\t\t{\n\t\t\t\"featureType\": \"transit\",\n\t\t\t\"stylers\": [{\"visibility\": \"off\"}]\n\t\t}\n\t]\n};\n\nexport const labels = {\n\t'': [],\n\t'off': [\n\t\t{\n\t\t\t\"elementType\": \"labels\",\n\t\t\t\"stylers\": [{\"visibility\": \"off\"}]\n\t\t},\n\t\t{\n\t\t\t\"featureType\": \"administrative.land_parcel\",\n\t\t\t\"stylers\": [{\"visibility\": \"off\"}]\n\t\t},\n\t\t{\n\t\t\t\"featureType\": \"administrative.neighborhood\",\n\t\t\t\"stylers\": [{\"visibility\": \"off\"}]\n\t\t}\n\t]\n};","import {Type} from 'main.core';\nimport {BaseProvider} from './base_provider';\nimport {themes} from './google_map/theme/themes';\nimport {roads, landmarks, labels} from './google_map/settings';\n\nexport class GoogleMap extends BaseProvider\n{\n\tconstructor(options: {})\n\t{\n\t\tsuper(options);\n\t\tthis.code = 'google';\n\t\tthis.themes = themes;\n\t}\n\n\t/**\n\t * Extract coords from map events (f.e. click)\n\t * @param event\n\t */\n\tgetPointByEvent(event): {lat: number, lng: number}\n\t{\n\t\tconst point = event.latLng;\n\t\treturn this.isPoint(point) ? point : {};\n\t}\n\n\t/**\n\t * @inheritDoc\n\t */\n\tinit()\n\t{\n\t\tlet opts = this.options;\n\n\t\tthis.mapInstance = new google.maps.Map(this.mapContainer, {\n\t\t\tzoom: this.mapOptions.zoom,\n\t\t\tcenter: this.mapOptions.center,\n\t\t\tzoomControl: Type.isBoolean(opts.zoomControl) ? opts.zoomControl : true,\n\t\t\tmapTypeControl: Type.isBoolean(opts.mapTypeControl) ? opts.mapTypeControl : true,\n\t\t\tmapTypeControlOptions: Type.isPlainObject(opts.mapTypeControlOptions) ? opts.mapTypeControlOptions : null,\n\t\t\tscaleControl: Type.isBoolean(opts.scaleControl) ? opts.scaleControl : true,\n\t\t\tstreetViewControl: Type.isBoolean(opts.streetViewControl) ? opts.streetViewControl : true,\n\t\t\trotateControl: Type.isBoolean(opts.rotateControl) ? opts.rotateControl : true,\n\t\t\tfullscreenControl: Type.isBoolean(opts.fullscreenControl) ? opts.fullscreenControl : true,\n\t\t\tstyles: (opts.theme && opts.theme in this.themes ? this.themes[opts.theme] : [])\n\t\t\t\t.concat(roads[opts.roads] || [], landmarks[opts.landmarks] || [], labels[opts.labels] || []),\n\t\t});\n\n\t\tif (this.mapOptions.markers)\n\t\t{\n\t\t\tthis.mapOptions.markers.forEach(function (markerItem)\n\t\t\t{\n\t\t\t\tmarkerItem.editable = BX.Landing.getMode() === \"edit\";\n\t\t\t\tmarkerItem.draggable = BX.Landing.getMode() === \"edit\";\n\t\t\t\tthis.addMarker(markerItem);\n\t\t\t}, this);\n\t\t}\n\n\t\tthis.onChange = this.onChange.bind(this);\n\t\tthis.mapInstance.addListener(\"bounds_changed\", this.onChange);\n\t\tthis.mapInstance.addListener(\"center_changed\", this.onChange);\n\t\tthis.mapInstance.addListener(\"zoom_changed\", this.onChange);\n\t\tthis.mapInstance.addListener(\"click\", this.onMapClickHandler);\n\n\t\tsuper.init();\n\t}\n\n\t/**\n\t * Check is provider API was loaded\n\t * @return {boolean}\n\t */\n\tisApiLoaded()\n\t{\n\t\treturn (typeof google !== \"undefined\");\n\t}\n\n\t/**\n\t * Set api load handle function\n\t * @abstract\n\t */\n\thandleApiLoad()\n\t{\n\t\twindow.onGoogleMapApiLoaded = () =>\n\t\t{\n\t\t\tthis.onApiLoadedHandler(this.getCode());\n\t\t};\n\t}\n\n\t/**\n\t * @inheritDoc\n\t * @param options\n\t */\n\taddMarker(options): void\n\t{\n\t\tlet item = {};\n\t\titem.marker = new google.maps.Marker({\n\t\t\tposition: options.latLng,\n\t\t\tmap: this.mapInstance,\n\t\t\tdraggable: options.draggable,\n\t\t});\n\n\t\titem.form = BX.Landing.getMode() === \"edit\" ? this.createBalloonEditForm(options, item) : null;\n\t\titem.content = this.createBalloonContent(options);\n\n\t\titem.infoWindow = new google.maps.InfoWindow({\n\t\t\tcontent: options.editable && BX.Landing.getMode() === \"edit\" ? item.form.layout : item.content,\n\t\t});\n\n\t\tif (options.showByDefault && BX.Landing.getMode() !== \"edit\")\n\t\t{\n\t\t\titem.infoWindow.open(this.mapInstance, item.marker);\n\t\t\tthis.activeMarker = item;\n\t\t}\n\n\t\tthis.markers.add(item);\n\n\t\t// in editor - always, in public - only if not empty\n\t\tif (\n\t\t\tBX.Landing.getMode() === \"edit\"\n\t\t\t|| (options.title || options.description)\n\t\t)\n\t\t{\n\t\t\titem.marker.addListener(\"click\", this.onMarkerClick.bind(this, item));\n\t\t}\n\t\tthis.onChange();\n\t}\n\n\tonMarkerClick(item): void\n\t{\n\t\tvoid (this.activeMarker && this.activeMarker.infoWindow.close());\n\t\titem.infoWindow.open(this.mapInstance, item.marker);\n\t\tthis.activeMarker = item;\n\t}\n\n\tonEditFormRemoveClick(event): void\n\t{\n\t\tif (event)\n\t\t{\n\t\t\tevent.infoWindow.close();\n\t\t\tthis.removeMarker(event);\n\t\t}\n\n\t\tthis.markers.remove(event);\n\t\tthis.onChange();\n\t}\n\n\tonEditFormApplyClick(event): void\n\t{\n\t\tevent.infoWindow.close();\n\t\tthis.onChange();\n\t}\n\n\tremoveMarker(event): void\n\t{\n\t\tevent.marker.setMap(null);\n\t\tthis.markers.remove(event);\n\t}\n\n\tsetZoom(zoom): void\n\t{\n\t\tthis.mapInstance.setZoom(zoom);\n\t}\n\n\tsetCenter(center): void\n\t{\n\t\tthis.mapInstance.setCenter(center);\n\t}\n\n\tgetMarkersValue(): {}\n\t{\n\t\treturn this.markers.map(function (item)\n\t\t{\n\t\t\treturn {\n\t\t\t\ttitle: item.form ? item.form.fields[0].getValue() : \"\",\n\t\t\t\tdescription: item.form ? item.form.fields[1].getValue() : \"\",\n\t\t\t\tshowByDefault: item.form ? !!item.form.fields[2].getValue()[0] : \"\",\n\t\t\t\tlatLng: item.marker.position.toJSON(),\n\t\t\t};\n\t\t});\n\t}\n\n\tgetValue(): {}\n\t{\n\t\treturn {\n\t\t\tcenter: this.mapInstance.getCenter() ? this.mapInstance.getCenter().toJSON() : {},\n\t\t\tzoom: this.mapInstance.getZoom(),\n\t\t\tmarkers: this.getMarkersValue(),\n\t\t};\n\t}\n}","import {Type, Text, Dom} from 'main.core';\nimport {BaseProvider} from './base_provider';\n\nexport class YandexMap extends BaseProvider\n{\n\tconstructor(options: {})\n\t{\n\t\tsuper(options);\n\t\tthis.code = 'yandex';\n\t}\n\n\t/**\n\t * @inheritDoc\n\t */\n\tinit()\n\t{\n\t\tconst opts = this.options;\n\n\t\tconst controls = ['zoomControl', 'fullscreenControl', 'typeSelector', 'routeButtonControl'];\n\t\tif (opts.fullscreenControl === false)\n\t\t{\n\t\t\tcontrols.splice(controls.indexOf('fullscreenControl'), 1);\n\t\t}\n\t\tif (opts.mapTypeControl === false)\n\t\t{\n\t\t\tcontrols.splice(controls.indexOf('typeSelector'), 1);\n\t\t\tcontrols.splice(controls.indexOf('routeButtonControl'), 1);\n\t\t}\n\n\t\tthis.mapInstance = new ymaps.Map(this.mapContainer, {\n\t\t\tcenter: this.convertPointIn(this.mapOptions.center),\n\t\t\tzoom: this.mapOptions.zoom,\n\t\t\tbehaviors: opts.zoomControl === false ? ['drag'] : ['default'],\n\t\t\tcontrols: controls,\n\t\t});\n\n\t\tthis.mapInstance.events.add('click', event =>\n\t\t{\n\t\t\tthis.cache.delete('value');\n\t\t\tthis.onMapClickHandler(event);\n\t\t\tif (BX.Landing.getMode() === \"edit\")\n\t\t\t{\n\t\t\t\tthis.markers[this.markers.length - 1].marker.balloon.open();\n\t\t\t}\n\t\t});\n\t\tthis.mapInstance.events.add('actionend', this.onChange.bind(this));\n\n\t\tif (this.mapOptions.markers)\n\t\t{\n\t\t\tthis.mapOptions.markers.forEach(function (markerItem)\n\t\t\t{\n\t\t\t\tmarkerItem.editable = BX.Landing.getMode() === \"edit\";\n\t\t\t\tmarkerItem.draggable = BX.Landing.getMode() === \"edit\";\n\t\t\t\tthis.addMarker(markerItem);\n\t\t\t}, this);\n\t\t}\n\n\t\tsuper.init();\n\t}\n\n\t/**\n\t * Check is provider API was loaded\n\t * @return {boolean}\n\t */\n\tisApiLoaded()\n\t{\n\t\treturn (\n\t\t\ttypeof ymaps !== \"undefined\"\n\t\t\t&& typeof ymaps.Map !== \"undefined\"\n\t\t);\n\t}\n\n\t/**\n\t * Convert point from Google format to Yandex\n\t * @param point\n\t * @return {[number,number]}\n\t */\n\tconvertPointIn(point: {lat: number, lng: number}): [number, number]\n\t{\n\t\treturn [point.lat, point.lng];\n\t}\n\n\t/**\n\t * Convert point from Yandex for export\n\t * @param point\n\t * @return {{lng: number, lat: number}}\n\t */\n\tconvertPointOut(point: [number, number]): {lat: number, lng: number}\n\t{\n\t\treturn {lat: point[0], lng: point[1]};\n\t}\n\n\t/**\n\t * Extract coords from map events (f.e. click)\n\t * @param event\n\t */\n\tgetPointByEvent(event): {lat: number, lng: number}\n\t{\n\t\treturn this.convertPointOut(event.get('coords'));\n\t}\n\n\t/**\n\t * Set api load handle function\n\t * @abstract\n\t */\n\thandleApiLoad()\n\t{\n\t\twindow.onYandexMapApiLoaded = () =>\n\t\t{\n\t\t\tthis.onApiLoadedHandler(this.getCode());\n\t\t};\n\t}\n\n\t/**\n\t * @inheritDoc\n\t * @param options\n\t */\n\taddMarker(options): void\n\t{\n\t\tconst item = {};\n\t\titem.form = BX.Landing.getMode() === \"edit\" ? this.createBalloonEditForm(options, item) : null;\n\t\titem.content = this.createBalloonContent(options);\n\t\titem.ballonId = 'ballonContent_' + Text.getRandom('6');\n\n\t\tconst isNoNeedBalloon = BX.Landing.getMode() !== \"edit\" && !options.title && !options.description;\n\n\t\tconst balloonTemplate = ymaps.templateLayoutFactory.createClass(\n\t\t\t'<div id=\"' + item.ballonId + '\"></div>',\n\t\t\t{\n\t\t\t\tbuild: function ()\n\t\t\t\t{\n\t\t\t\t\tballoonTemplate.superclass.build.call(this);\n\t\t\t\t\tconst container = document.querySelector('#' + item.ballonId);\n\t\t\t\t\tconst content = (options.editable && BX.Landing.getMode() === \"edit\")\n\t\t\t\t\t\t? item.form.layout\n\t\t\t\t\t\t: item.content;\n\t\t\t\t\tDom.append(content, container);\n\t\t\t\t},\n\t\t\t},\n\t\t);\n\t\titem.marker = new ymaps.Placemark(\n\t\t\tthis.convertPointIn(options.latLng),\n\t\t\t{},\n\t\t\t{\n\t\t\t\tballoonContentLayout: isNoNeedBalloon ? null: balloonTemplate,\n\t\t\t\tballoonPanelMaxMapArea: 0,\n\t\t\t\tdraggable: options.draggable,\n\t\t\t},\n\t\t);\n\t\tthis.mapInstance.geoObjects.add(item.marker);\n\n\t\tif (options.showByDefault)\n\t\t{\n\t\t\titem.marker.balloon.open();\n\t\t}\n\n\t\tthis.markers.add(item);\n\t}\n\n\tonMarkerClick(item): void\n\t{\n\t\t// Yandex will do everything himself\n\t}\n\n\tonEditFormRemoveClick(event): void\n\t{\n\t\tif (event)\n\t\t{\n\t\t\tevent.marker.balloon.close();\n\t\t\tthis.removeMarker(event);\n\t\t}\n\n\t\tthis.markers.remove(event);\n\t\tthis.onChange();\n\t}\n\n\tonEditFormApplyClick(event): void\n\t{\n\t\tevent.marker.balloon.close();\n\t\tthis.onChange();\n\t}\n\n\tremoveMarker(event): void\n\t{\n\t\tthis.mapInstance.geoObjects.remove(event.marker);\n\t\tthis.markers.remove(event);\n\t}\n\n\tsetZoom(zoom): void\n\t{\n\t\tthis.mapInstance.setZoom(zoom);\n\t}\n\n\tsetCenter(center): void\n\t{\n\t\tthis.mapInstance.setCenter(this.convertPointIn(center));\n\t}\n\n\tgetMarkersValue(): {}\n\t{\n\t\treturn this.markers.map((item) => {\n\t\t\treturn {\n\t\t\t\ttitle: item.form ? item.form.fields[0].getValue() : \"\",\n\t\t\t\tdescription: item.form ? item.form.fields[1].getValue() : \"\",\n\t\t\t\tshowByDefault: item.form ? !!item.form.fields[2].getValue()[0] : \"\",\n\t\t\t\tlatLng: this.convertPointOut(item.marker.geometry.getCoordinates()),\n\t\t\t};\n\t\t});\n\t}\n\n\tgetValue(): {}\n\t{\n\t\treturn this.cache.remember('value', () =>\n\t\t{\n\t\t\treturn {\n\t\t\t\tcenter: this.mapInstance.getCenter() ? this.convertPointOut(this.mapInstance.getCenter()) : {},\n\t\t\t\tzoom: this.mapInstance.getZoom(),\n\t\t\t\tmarkers: this.getMarkersValue(),\n\t\t\t};\n\t\t});\n\t}\n\n\tonChange()\n\t{\n\t\tthis.cache.delete('value');\n\t\tsuper.onChange();\n\t}\n}","import {Type} from 'main.core';\nimport {BaseProvider} from './base_provider';\nimport {GoogleMap} from './google_map';\nimport {YandexMap} from './yandex_map';\n\nimport './css/style.css'\n\n\nexport class Map\n{\n\tstatic +PROVIDERS = {\n\t\tgoogle: GoogleMap,\n\t\tyandex: YandexMap,\n\t};\n\tstatic +DEFAULT_PROVIDER = 'google';\n\tstatic +DATA_ATTRIBUTE = 'mapProvider';\n\n\t/**\n\t * If API not loaded already - create schedule\n\t * @type {{}}\n\t */\n\tstatic scheduled = {};\n\n\tconstructor()\n\t{\n\t}\n\n\t/**\n\t * Create map provider for current node\n\t * @param node\n\t * @param options\n\t * @return {*}\n\t */\n\tstatic create(node: HTMLElement, options: {}): BaseProvider\n\t{\n\t\t// handler for load api\n\t\toptions.onApiLoaded = Map.onApiLoaded;\n\n\t\t// get provider code\n\t\tlet providerCode = node.dataset[Map.DATA_ATTRIBUTE];\n\t\tif (\n\t\t\t!providerCode\n\t\t\t|| Object.keys(Map.PROVIDERS).indexOf(providerCode) === -1\n\t\t)\n\t\t{\n\t\t\tproviderCode = Map.DEFAULT_PROVIDER;\n\t\t}\n\n\t\t// init or set to schedule\n\t\tconst provider = new (Map.PROVIDERS[providerCode])(options);\n\t\tif (provider.isApiLoaded())\n\t\t{\n\t\t\tprovider.onInitHandler();\n\t\t}\n\t\telse\n\t\t{\n\t\t\tif (!Type.isArray(Map.scheduled[provider.getCode()]))\n\t\t\t{\n\t\t\t\tMap.scheduled[provider.getCode()] = [];\n\t\t\t}\n\n\t\t\tMap.scheduled[provider.getCode()].push(provider);\n\t\t}\n\n\t\treturn provider;\n\t}\n\n\tstatic onApiLoaded(providerCode: string)\n\t{\n\t\tif (Type.isArray(Map.scheduled[providerCode]))\n\t\t{\n\t\t\tMap.scheduled[providerCode].forEach(provider =>\n\t\t\t{\n\t\t\t\tprovider.onInitHandler();\n\t\t\t});\n\t\t}\n\t}\n}"],"names":["BaseProvider","EventEmitter","constructor","options","code","onChangeHandler","Type","isFunction","onChange","onMapClickHandler","onMapClick","onAddMarkerHandler","onAddMarker","onApiLoadedHandler","onApiLoaded","onInitHandler","onProviderInit","init","mapOptions","prepareMapOptions","mapContainer","markers","BaseCollection","mapInstance","cache","Cache","MemoryCache","handleApiLoad","getDefaultMapOptions","center","getDefaultCenter","zoom","latLng","title","description","isPlainObject","preparedOptions","isPoint","isArray","length","firstMarker","point","Loc","getMessage","lat","lng","isObjectLike","Object","keys","getPointByEvent","event","Error","getCode","isApiLoaded","emit","preventChangeEvent","addMarker","onMarkerClick","item","removeMarker","getValue","setValue","value","forEach","BX","Landing","Utils","isEmpty","setCenter","setZoom","onEditFormApplyClick","onEditFormRemoveClick","createBalloonEditForm","form","UI","Form","BalloonForm","applyButton","Button","BaseButton","text","className","onClick","bind","removeButton","layout","classList","remove","footer","Tag","render","addField","Field","Text","textOnly","content","Checkbox","compact","items","name","showByDefault","appendChild","createBalloonContent","AUBERGINE","DARK","NIGHT","RETRO","SILVER","themes","roads","landmarks","labels","GoogleMap","opts","google","maps","Map","zoomControl","isBoolean","mapTypeControl","mapTypeControlOptions","scaleControl","streetViewControl","rotateControl","fullscreenControl","styles","theme","concat","markerItem","editable","getMode","draggable","addListener","window","onGoogleMapApiLoaded","marker","Marker","position","map","infoWindow","InfoWindow","open","activeMarker","add","close","setMap","getMarkersValue","fields","toJSON","getCenter","getZoom","YandexMap","controls","splice","indexOf","ymaps","convertPointIn","behaviors","events","delete","balloon","convertPointOut","get","onYandexMapApiLoaded","ballonId","getRandom","isNoNeedBalloon","balloonTemplate","templateLayoutFactory","createClass","build","superclass","call","container","document","querySelector","Dom","append","Placemark","balloonContentLayout","balloonPanelMaxMapArea","geoObjects","geometry","getCoordinates","remember","create","node","providerCode","dataset","DATA_ATTRIBUTE","PROVIDERS","DEFAULT_PROVIDER","provider","scheduled","push","yandex"],"mappings":"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"}
| ver. 1.4 |
Github
|
.
| PHP 7.4.33 | Generation time: 0.28 |
proxy
|
phpinfo
|
Settings