@hzab/map-combine 0.2.7 → 0.3.0-beta

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,176 +1,173 @@
1
- import Eventful from "zrender/lib/core/Eventful"
2
-
3
- import { MapElement, MapElementOption } from "./MapElement"
4
- import { MapCombine } from "./MapCombine"
5
-
6
- export interface PointOption<K> extends MapElementOption {
7
- show: boolean
8
- cursor: string
9
- coordinates?: number[]
10
- src: string
11
- center: number[]
12
- size: number[]
13
- rotation: number
14
- editable: boolean
15
- userdata: K
16
- silent: boolean,
17
- height: number
18
- }
19
-
20
- export class Point<K = undefined> extends MapElement<PointOption<K>> {
21
- type = 'Point'
22
- event = new Eventful<{
23
- 'data-loaded': () => void
24
- 'data-update': () => void
25
- 'pointer-in': () => void
26
- 'pointer-out': () => void
27
- 'left-click': () => void
28
- 'right-click': () => void
29
- 'update': (keys: Set<string>) => void
30
- 'destroy': () => void
31
- }>()
32
-
33
- get userdata() {
34
- return this._option.userdata
35
- }
36
-
37
-
38
- get cursor() {
39
- return this._option.cursor
40
- }
41
-
42
- get show() {
43
- return this._option.show
44
- }
45
-
46
- set show(val) {
47
- if (this._option.show != val) {
48
- this._option.show = val
49
- this._update('show')
50
- }
51
- }
52
-
53
- get silent() {
54
- return this._option.silent
55
- }
56
-
57
- set silent(val) {
58
- if (this._option.silent != val) {
59
- this._option.silent = val
60
- this._update('silent')
61
- }
62
- }
63
-
64
- get editable() {
65
- return this._option.editable
66
- }
67
-
68
- set editable(val) {
69
- if (this._option.editable != val) {
70
- this._option.editable = val
71
- this._update('editable')
72
- }
73
- }
74
-
75
- get coordinates() {
76
- return this._option.coordinates
77
- }
78
-
79
- set coordinates(val) {
80
- if (this._option.coordinates != val) {
81
- this._option.coordinates = val
82
- this._update('coordinates')
83
- }
84
- }
85
-
86
- get src() {
87
- return this._option.src
88
- }
89
-
90
- set src(val) {
91
- if (this._option.src != val) {
92
- this._option.src = val
93
- this._update('src')
94
- }
95
- }
96
-
97
- get size() {
98
- return this._option.size
99
- }
100
-
101
- set size(val) {
102
- if (this._option.size != val) {
103
- this._option.size = val
104
- this._update('size')
105
- }
106
- }
107
- get center() {
108
- return this._option.center
109
- }
110
-
111
- set center(val) {
112
- if (this._option.center != val) {
113
- this._option.center = val
114
- this._update('center')
115
- }
116
- }
117
-
118
- get height() {
119
- return this._option.height
120
- }
121
-
122
- set height(val) {
123
- if (this._option.height != val) {
124
- this._option.height = val
125
- this._update('height')
126
- }
127
- }
128
-
129
- get rotation() {
130
- return this._option.rotation
131
- }
132
-
133
- set rotation(val) {
134
- if (this._option.rotation != val) {
135
- this._option.rotation = val
136
- this._update('rotation')
137
- }
138
- }
139
-
140
-
141
-
142
- constructor(map: MapCombine, option: Partial<PointOption<K>> = {}) {
143
- super(map, Object.assign({ ...Point.option }, option))
144
- }
145
-
146
- static option: PointOption<undefined> = {
147
- name: '点',
148
- show: true,
149
- src: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAIxJREFUOE+tU4ENgCAM6y5TL1MuEy+bmQjChAjIEkKAretIS1DBwAy3pnuXDAvgIGDT+RRfsEtYdZI6mxgoAFQWe6wAcgE0FicgHoA/aJeeF+rs/rBgYI9+u5WIFQa99K9mQwB+j1AjntLfGBlBZCssmoMAGiOkDjWmUvbcK0WVN1PGlS87i63JWTvECRNBLcaa3Jq0AAAAAElFTkSuQmCC',
150
- center: [0.5, 0.5],
151
- editable: false,
152
- size: [16, 16],
153
- rotation: 0,
154
- cursor: 'pointer',
155
- userdata: undefined,
156
- silent: false,
157
- height: 0
158
- }
159
-
160
- private _needUpdate?: Set<string>
161
- private _update(key: string) {
162
- if (this._needUpdate) {
163
- this._needUpdate.add(key)
164
- } else {
165
- this._needUpdate = new Set([key])
166
- setTimeout(() => {
167
- this.event.trigger('update', this._needUpdate)
168
- this._needUpdate = undefined
169
- });
170
- }
171
- }
172
-
173
- protected _onDestroy(): void {
174
- this.event.trigger('destroy')
175
- }
176
- }
1
+ import Eventful from "zrender/lib/core/Eventful";
2
+
3
+ import { MapElement, MapElementOption } from "./MapElement";
4
+ import { MapCombine } from "./MapCombine";
5
+
6
+ export interface PointOption<K> extends MapElementOption {
7
+ show: boolean;
8
+ cursor: string;
9
+ coordinates?: number[];
10
+ src: string;
11
+ center: number[];
12
+ size: number[];
13
+ rotation: number;
14
+ editable: boolean;
15
+ userdata: K;
16
+ silent: boolean;
17
+ height: number;
18
+ }
19
+
20
+ export class Point<K = undefined> extends MapElement<PointOption<K>> {
21
+ type = "Point";
22
+ event = new Eventful<{
23
+ "data-loaded": () => void;
24
+ "data-update": () => void;
25
+ "pointer-in": () => void;
26
+ "pointer-out": () => void;
27
+ "left-click": () => void;
28
+ "right-click": () => void;
29
+ update: (keys: Set<string>) => void;
30
+ destroy: () => void;
31
+ }>();
32
+
33
+ get userdata() {
34
+ return this._option.userdata;
35
+ }
36
+
37
+ get cursor() {
38
+ return this._option.cursor;
39
+ }
40
+
41
+ get show() {
42
+ return this._option.show;
43
+ }
44
+
45
+ set show(val) {
46
+ if (this._option.show != val) {
47
+ this._option.show = val;
48
+ this._update("show");
49
+ }
50
+ }
51
+
52
+ get silent() {
53
+ return this._option.silent;
54
+ }
55
+
56
+ set silent(val) {
57
+ if (this._option.silent != val) {
58
+ this._option.silent = val;
59
+ this._update("silent");
60
+ }
61
+ }
62
+
63
+ get editable() {
64
+ return this._option.editable;
65
+ }
66
+
67
+ set editable(val) {
68
+ if (this._option.editable != val) {
69
+ this._option.editable = val;
70
+ this._update("editable");
71
+ }
72
+ }
73
+
74
+ get coordinates() {
75
+ return this._option.coordinates;
76
+ }
77
+
78
+ set coordinates(val) {
79
+ if (this._option.coordinates != val) {
80
+ this._option.coordinates = val;
81
+ this._update("coordinates");
82
+ }
83
+ }
84
+
85
+ get src() {
86
+ return this._option.src;
87
+ }
88
+
89
+ set src(val) {
90
+ if (this._option.src != val) {
91
+ this._option.src = val;
92
+ this._update("src");
93
+ }
94
+ }
95
+
96
+ get size() {
97
+ return this._option.size;
98
+ }
99
+
100
+ set size(val) {
101
+ if (this._option.size != val) {
102
+ this._option.size = val;
103
+ this._update("size");
104
+ }
105
+ }
106
+ get center() {
107
+ return this._option.center;
108
+ }
109
+
110
+ set center(val) {
111
+ if (this._option.center != val) {
112
+ this._option.center = val;
113
+ this._update("center");
114
+ }
115
+ }
116
+
117
+ get height() {
118
+ return this._option.height;
119
+ }
120
+
121
+ set height(val) {
122
+ if (this._option.height != val) {
123
+ this._option.height = val;
124
+ this._update("height");
125
+ }
126
+ }
127
+
128
+ get rotation() {
129
+ return this._option.rotation;
130
+ }
131
+
132
+ set rotation(val) {
133
+ if (this._option.rotation != val) {
134
+ this._option.rotation = val;
135
+ this._update("rotation");
136
+ }
137
+ }
138
+
139
+ constructor(map: MapCombine, option: Partial<PointOption<K>> = {}) {
140
+ super(map, Object.assign({ ...Point.option }, option));
141
+ }
142
+
143
+ static option: PointOption<undefined> = {
144
+ name: "点",
145
+ show: true,
146
+ src: "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAIxJREFUOE+tU4ENgCAM6y5TL1MuEy+bmQjChAjIEkKAretIS1DBwAy3pnuXDAvgIGDT+RRfsEtYdZI6mxgoAFQWe6wAcgE0FicgHoA/aJeeF+rs/rBgYI9+u5WIFQa99K9mQwB+j1AjntLfGBlBZCssmoMAGiOkDjWmUvbcK0WVN1PGlS87i63JWTvECRNBLcaa3Jq0AAAAAElFTkSuQmCC",
147
+ center: [0.5, 0.5],
148
+ editable: false,
149
+ size: [16, 16],
150
+ rotation: 0,
151
+ cursor: "pointer",
152
+ userdata: undefined,
153
+ silent: false,
154
+ height: 0,
155
+ };
156
+
157
+ private _needUpdate?: Set<string>;
158
+ private _update(key: string) {
159
+ if (this._needUpdate) {
160
+ this._needUpdate.add(key);
161
+ } else {
162
+ this._needUpdate = new Set([key]);
163
+ setTimeout(() => {
164
+ this.event.trigger("update", this._needUpdate);
165
+ this._needUpdate = undefined;
166
+ });
167
+ }
168
+ }
169
+
170
+ protected _onDestroy(): void {
171
+ this.event.trigger("destroy");
172
+ }
173
+ }