UNPKG

11.5 kBJavaScriptView Raw
1"use strict";
2
3Object.defineProperty(exports, "__esModule", {
4 value: true
5});
6exports.featureStyle = featureStyle;
7exports.editHandleStyle = editHandleStyle;
8
9var _constants = require("./constants");
10
11function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
12
13function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(source, true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(source).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
14
15function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
16
17var RECT_STYLE = {
18 stroke: '#7ac943',
19 strokeWidth: 2,
20 x: -6,
21 y: -6,
22 height: 12,
23 width: 12
24};
25var CIRCLE_RADIUS = 8;
26var SELECTED_STYLE = {
27 stroke: '#7ac943',
28 strokeWidth: 2,
29 fill: '#ffff00',
30 fillOpacity: 0.7
31};
32var HOVERED_STYLE = {
33 stroke: '#7ac943',
34 strokeWidth: 2,
35 fill: '#7ac943',
36 fillOpacity: 0.5
37};
38var UNCOMMITTED_STYLE = {
39 stroke: '#a7a7a7',
40 strokeWidth: 2,
41 fill: '#a9a9a9',
42 fillOpacity: 0.3
43};
44var INACTIVE_STYLE = UNCOMMITTED_STYLE;
45var DEFAULT_STYLE = {
46 stroke: '#000000',
47 strokeWidth: 2,
48 fill: '#a9a9a9',
49 fillOpacity: 0.1
50};
51
52function featureStyle(_ref) {
53 var feature = _ref.feature,
54 state = _ref.state;
55 var renderType = feature.properties.renderType;
56 var style = null;
57
58 switch (state) {
59 case _constants.RENDER_STATE.SELECTED:
60 style = _objectSpread({}, SELECTED_STYLE);
61 break;
62
63 case _constants.RENDER_STATE.HOVERED:
64 style = _objectSpread({}, HOVERED_STYLE);
65 break;
66
67 case _constants.RENDER_STATE.UNCOMMITTED:
68 case _constants.RENDER_STATE.CLOSING:
69 style = _objectSpread({}, UNCOMMITTED_STYLE);
70 break;
71
72 case _constants.RENDER_STATE.INACTIVE:
73 style = _objectSpread({}, INACTIVE_STYLE);
74 break;
75
76 default:
77 style = _objectSpread({}, DEFAULT_STYLE);
78 }
79
80 switch (renderType) {
81 case _constants.RENDER_TYPE.POINT:
82 style.r = CIRCLE_RADIUS;
83 break;
84
85 case _constants.RENDER_TYPE.LINE_STRING:
86 style.fill = 'none';
87 break;
88
89 case _constants.RENDER_TYPE.POLYGON:
90 if (state === _constants.RENDER_STATE.CLOSING) {
91 style.strokeDasharray = '4,2';
92 }
93
94 break;
95
96 case _constants.RENDER_TYPE.RECTANGLE:
97 if (state === _constants.RENDER_STATE.UNCOMMITTED) {
98 style.strokeDasharray = '4,2';
99 }
100
101 break;
102
103 default:
104 }
105
106 return style;
107}
108
109function editHandleStyle(_ref2) {
110 var feature = _ref2.feature,
111 shape = _ref2.shape,
112 index = _ref2.index,
113 state = _ref2.state;
114 var style = {};
115
116 switch (state) {
117 case _constants.RENDER_STATE.SELECTED:
118 style = _objectSpread({}, SELECTED_STYLE);
119 break;
120
121 case _constants.RENDER_STATE.HOVERED:
122 style = _objectSpread({}, HOVERED_STYLE);
123 break;
124
125 case _constants.RENDER_STATE.UNCOMMITTED:
126 case _constants.RENDER_STATE.CLOSING:
127 style = _objectSpread({}, UNCOMMITTED_STYLE);
128 break;
129
130 case _constants.RENDER_STATE.INACTIVE:
131 style = _objectSpread({}, INACTIVE_STYLE);
132 break;
133
134 default:
135 style = _objectSpread({}, DEFAULT_STYLE);
136 }
137
138 switch (shape) {
139 case 'circle':
140 style.r = CIRCLE_RADIUS;
141 break;
142
143 case 'rect':
144 style = _objectSpread({}, style, {}, RECT_STYLE);
145 break;
146
147 default:
148 }
149
150 return style;
151}
152//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9zdHlsZS5qcyJdLCJuYW1lcyI6WyJSRUNUX1NUWUxFIiwic3Ryb2tlIiwic3Ryb2tlV2lkdGgiLCJ4IiwieSIsImhlaWdodCIsIndpZHRoIiwiQ0lSQ0xFX1JBRElVUyIsIlNFTEVDVEVEX1NUWUxFIiwiZmlsbCIsImZpbGxPcGFjaXR5IiwiSE9WRVJFRF9TVFlMRSIsIlVOQ09NTUlUVEVEX1NUWUxFIiwiSU5BQ1RJVkVfU1RZTEUiLCJERUZBVUxUX1NUWUxFIiwiZmVhdHVyZVN0eWxlIiwiZmVhdHVyZSIsInN0YXRlIiwicmVuZGVyVHlwZSIsInByb3BlcnRpZXMiLCJzdHlsZSIsIlJFTkRFUl9TVEFURSIsIlNFTEVDVEVEIiwiSE9WRVJFRCIsIlVOQ09NTUlUVEVEIiwiQ0xPU0lORyIsIklOQUNUSVZFIiwiUkVOREVSX1RZUEUiLCJQT0lOVCIsInIiLCJMSU5FX1NUUklORyIsIlBPTFlHT04iLCJzdHJva2VEYXNoYXJyYXkiLCJSRUNUQU5HTEUiLCJlZGl0SGFuZGxlU3R5bGUiLCJzaGFwZSIsImluZGV4Il0sIm1hcHBpbmdzIjoiOzs7Ozs7OztBQUFBOzs7Ozs7OztBQUVBLElBQU1BLFVBQVUsR0FBRztBQUNqQkMsRUFBQUEsTUFBTSxFQUFFLFNBRFM7QUFFakJDLEVBQUFBLFdBQVcsRUFBRSxDQUZJO0FBR2pCQyxFQUFBQSxDQUFDLEVBQUUsQ0FBQyxDQUhhO0FBSWpCQyxFQUFBQSxDQUFDLEVBQUUsQ0FBQyxDQUphO0FBS2pCQyxFQUFBQSxNQUFNLEVBQUUsRUFMUztBQU1qQkMsRUFBQUEsS0FBSyxFQUFFO0FBTlUsQ0FBbkI7QUFTQSxJQUFNQyxhQUFhLEdBQUcsQ0FBdEI7QUFFQSxJQUFNQyxjQUFjLEdBQUc7QUFDckJQLEVBQUFBLE1BQU0sRUFBRSxTQURhO0FBRXJCQyxFQUFBQSxXQUFXLEVBQUUsQ0FGUTtBQUdyQk8sRUFBQUEsSUFBSSxFQUFFLFNBSGU7QUFJckJDLEVBQUFBLFdBQVcsRUFBRTtBQUpRLENBQXZCO0FBT0EsSUFB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QWxCO0FBQ0VOLE1BQUFBLEtBQUsscUJBQVFQLGNBQVIsQ0FBTDtBQUNBOztBQUVGO0FBQ0VPLE1BQUFBLEtBQUsscUJBQVFOLGFBQVIsQ0FBTDtBQW5CSjs7QUFzQkEsVUFBUXFCLEtBQVI7QUFDRSxTQUFLLFFBQUw7QUFDRWYsTUFBQUEsS0FBSyxDQUFDUyxDQUFOLEdBQVV0QixhQUFWO0FBQ0E7O0FBQ0YsU0FBSyxNQUFMO0FBQ0VhLE1BQUFBLEtBQUsscUJBQVFBLEtBQVIsTUFBa0JwQixVQUFsQixDQUFMO0FBQ0E7O0FBQ0Y7QUFQRjs7QUFVQSxTQUFPb0IsS0FBUDtBQUNEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUkVOREVSX1NUQVRFLCBSRU5ERVJfVFlQRSB9IGZyb20gJy4vY29uc3RhbnRzJztcblxuY29uc3QgUkVDVF9TVFlMRSA9IHtcbiAgc3Ryb2tlOiAnIzdhYzk0MycsXG4gIHN0cm9rZVdpZHRoOiAyLFxuICB4OiAtNixcbiAgeTogLTYsXG4gIGhlaWdodDogMTIsXG4gIHdpZHRoOiAxMlxufTtcblxuY29uc3QgQ0lSQ0xFX1JBRElVUyA9IDg7XG5cbmNvbnN0IFNFTEVDVEVEX1NUWUxFID0ge1xuICBzdHJva2U6ICcjN2FjOTQzJyxcbiAgc3Ryb2tlV2lkdGg6IDIsXG4gIGZpbGw6ICcjZmZmZjAwJyxcbiAgZmlsbE9wYWNpdHk6IDAuN1xufTtcblxuY29uc3QgSE9WRVJFRF9TVFlMRSA9IHtcbiAgc3Ryb2tlOiAnIzdhYzk0MycsXG4gIHN0cm9rZVdpZHRoOiAyLFxuICBmaWxsOiAnIzdhYzk0MycsXG4gIGZpbGxPcGFjaXR5OiAwLjVcbn07XG5cbmNvbnN0IFVOQ09NTUlUVEVEX1NUWUxFID0ge1xuICBzdHJva2U6ICcjYTdhN2E3JyxcbiAgc3Ryb2tlV2lkdGg6IDIsXG4gIGZpbGw6ICcjYTlhOWE5JyxcbiAgZmlsbE9wYWNpdHk6IDAuM1xufTtcblxuY29uc3QgSU5BQ1RJVkVfU1RZTEUgPSBVTkNPTU1JVFRFRF9TVFlMRTtcblxuY29uc3QgREVGQVVMVF9TVFlMRSA9IHtcbiAgc3Ryb2tlOiAnIzAwMDAwMCcsXG4gIHN0cm9rZVdpZHRoOiAyLFxuICBmaWxsOiAnI2E5YTlhOScsXG4gIGZpbGxPcGFjaXR5OiAwLjFcbn07XG5cbmV4cG9ydCBmdW5jdGlvbiBmZWF0dXJlU3R5bGUoeyBmZWF0dXJlLCBzdGF0ZSB9KSB7XG4gIGNvbnN0IHJlbmRlclR5cGUgPSBmZWF0dXJlLnByb3BlcnRpZXMucmVuZGVyVHlwZTtcbiAgbGV0IHN0eWxlID0gbnVsbDtcblxuICBzd2l0Y2ggKHN0YXRlKSB7XG4gICAgY2FzZSBSRU5ERVJfU1RBVEUuU0VMRUNURUQ6XG4gICAgICBzdHlsZSA9IHsgLi4uU0VMRUNURURfU1RZTEUgfTtcbiAgICAgIGJyZWFrO1xuXG4gICAgY2FzZSBSRU5ERVJfU1RBVEUuSE9WRVJFRDpcbiAgICAgIHN0eWxlID0geyAuLi5IT1ZFUkVEX1NUWUxFIH07XG4gICAgICBicmVhaztcblxuICAgIGNhc2UgUkVOREVSX1NUQVRFLlVOQ09NTUlUVEVEOlxuICAgIGNhc2UgUkVOREVSX1NUQVRFLkNMT1NJTkc6XG4gICAgICBzdHlsZSA9IHsgLi4uVU5DT01NSVRURURfU1RZTEUgfTtcbiAgICAgIGJyZWFrO1xuXG4gICAgY2FzZSBSRU5ERVJfU1RBVEUuSU5BQ1RJVkU6XG4gICAgICBzdHlsZSA9IHsgLi4uSU5BQ1RJVkVfU1RZTEUgfTtcbiAgICAgIGJyZWFrO1xuXG4gICAgZGVmYXVsdDpcbiAgICAgIHN0eWxlID0geyAuLi5ERUZBVUxUX1NUWUxFIH07XG4gIH1cblxuICBzd2l0Y2ggKHJlbmRlclR5cGUpIHtcbiAgICBjYXNlIFJFTkRFUl9UWVBFLlBPSU5UOlxuICAgICAgc3R5bGUuciA9IENJUkNMRV9SQURJVVM7XG4gICAgICBicmVhaztcbiAgICBjYXNlIFJFTkRFUl9UWVBFLkxJTkVfU1RSSU5HOlxuICAgICAgc3R5bGUuZmlsbCA9ICdub25lJztcbiAgICAgIGJyZWFrO1xuICAgIGNhc2UgUkVOREVSX1RZUEUuUE9MWUdPTjpcbiAgICAgIGlmIChzdGF0ZSA9PT0gUkVOREVSX1NUQVRFLkNMT1NJTkcpIHtcbiAgICAgICAgc3R5bGUuc3Ryb2tlRGFzaGFycmF5ID0gJzQsMic7XG4gICAgICB9XG4gICAgICBicmVhaztcbiAgICBjYXNlIFJFTkRFUl9UWVBFLlJFQ1RBTkdMRTpcbiAgICAgIGlmIChzdGF0ZSA9PT0gUkVOREVSX1NUQVRFLlVOQ09NTUlUVEVEKSB7XG4gICAgICAgIHN0eWxlLnN0cm9rZURhc2hhcnJheSA9ICc0LDInO1xuICAgICAgfVxuICAgICAgYnJlYWs7XG4gICAgZGVmYXVsdDpcbiAgfVxuXG4gIHJldHVybiBzdHlsZTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGVkaXRIYW5kbGVTdHlsZSh7IGZlYXR1cmUsIHNoYXBlLCBpbmRleCwgc3RhdGUgfSkge1xuICBsZXQgc3R5bGUgPSB7fTtcbiAgc3dpdGNoIChzdGF0ZSkge1xuICAgIGNhc2UgUkVOREVSX1NUQVRFLlNFTEVDVEVEOlxuICAgICAgc3R5bGUgPSB7IC4uLlNFTEVDVEVEX1NUWUxFIH07XG4gICAgICBicmVhaztcblxuICAgIGNhc2UgUkVOREVSX1NUQVRFLkhPVkVSRUQ6XG4gICAgICBzdHlsZSA9IHsgLi4uSE9WRVJFRF9TVFlMRSB9O1xuICAgICAgYnJlYWs7XG5cbiAgICBjYXNlIFJFTkRFUl9TVEFURS5VTkNPTU1JVFRFRDpcbiAgICBjYXNlIFJFTkRFUl9TVEFURS5DTE9TSU5HOlxuICAgICAgc3R5bGUgPSB7IC4uLlVOQ09NTUlUVEVEX1NUWUxFIH07XG4gICAgICBicmVhaztcblxuICAgIGNhc2UgUkVOREVSX1NUQVRFLklOQUNUSVZFOlxuICAgICAgc3R5bGUgPSB7IC4uLklOQUNUSVZFX1NUWUxFIH07XG4gICAgICBicmVhaztcblxuICAgIGRlZmF1bHQ6XG4gICAgICBzdHlsZSA9IHsgLi4uREVGQVVMVF9TVFlMRSB9O1xuICB9XG5cbiAgc3dpdGNoIChzaGFwZSkge1xuICAgIGNhc2UgJ2NpcmNsZSc6XG4gICAgICBzdHlsZS5yID0gQ0lSQ0xFX1JBRElVUztcbiAgICAgIGJyZWFrO1xuICAgIGNhc2UgJ3JlY3QnOlxuICAgICAgc3R5bGUgPSB7IC4uLnN0eWxlLCAuLi5SRUNUX1NUWUxFIH07XG4gICAgICBicmVhaztcbiAgICBkZWZhdWx0OlxuICB9XG5cbiAgcmV0dXJuIHN0eWxlO1xufVxuIl19
\No newline at end of file