UNPKG

@crpt/react-operation

Version:

[![npm package][npm-badge]][npm]

55 lines (35 loc) 2.25 kB
'use strict'; exports.__esModule = true; exports.balloonLayout = exports.balloonContentLayout = exports.ballonContent = undefined; var _lodash = require('lodash'); var _locales = require('../../../locales'); var _dataUtils = require('../../dataUtils'); var _styleUtils = require('./styleUtils'); var ballonContent = exports.ballonContent = function ballonContent(placemark, MapInstance) { var _placemark$properties = placemark.properties, properties = _placemark$properties === undefined ? {} : _placemark$properties; var _properties$data = properties.data, data = _properties$data === undefined ? [] : _properties$data; var groupedByDate = (0, _dataUtils.groupByDate)(data); var content = (0, _lodash.map)(groupedByDate, function (valuesByDate, date) { var operationList = (0, _lodash.map)(valuesByDate, function (_ref) { var type = _ref.operationType; return '\n <div>\n ' + _locales.ruRU.operationType[type] + '\n </div>\n '; }); return '\n <div style="' + _styleUtils.balloonStyles.listHeader(placemark, MapInstance) + '">\n ' + date + '\n </div>\n <div style="' + _styleUtils.balloonStyles.listBody(placemark, MapInstance) + '">\n ' + operationList.join('') + '\n </div>\n '; }); return content; }; var balloonContentLayout = exports.balloonContentLayout = function balloonContentLayout(placemark, MapInstance) { var api = MapInstance.api; var templateLayoutFactory = api.templateLayoutFactory; var balloonContent = ballonContent(placemark, MapInstance); var BalloonContentLayout = templateLayoutFactory.createClass('\n <span style="' + _styleUtils.balloonStyles.contentLayout(placemark, MapInstance) + '">\n ' + balloonContent.join('') + '\n </span>\n '); return BalloonContentLayout; }; var balloonLayout = exports.balloonLayout = function balloonLayout(placemark, MapInstance) { var api = MapInstance.api; var templateLayoutFactory = api.templateLayoutFactory; var BalloonLayout = templateLayoutFactory.createClass('\n <span style="' + _styleUtils.balloonStyles.layout(placemark, MapInstance) + '">\n {% include options.contentLayout %}\n </span>\n '); return BalloonLayout; };