@antv/l7-component 2.9.32-alpha.2 → 2.9.32-alpha.4

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.
Files changed (114) hide show
  1. package/es/assets/iconfont/iconfont.js +53 -0
  2. package/es/constants/index.d.ts +60 -0
  3. package/es/constants/index.js +60 -0
  4. package/es/control/baseControl/buttonControl.d.ts +59 -0
  5. package/es/control/baseControl/buttonControl.js +191 -0
  6. package/es/control/baseControl/control.d.ts +107 -0
  7. package/es/control/baseControl/control.js +288 -0
  8. package/es/control/baseControl/index.d.ts +4 -0
  9. package/es/control/baseControl/index.js +4 -0
  10. package/es/control/baseControl/popperControl.d.ts +26 -0
  11. package/es/control/baseControl/popperControl.js +131 -0
  12. package/es/control/baseControl/selectControl.d.ts +46 -0
  13. package/es/control/baseControl/selectControl.js +227 -0
  14. package/es/control/exportImage.d.ts +18 -0
  15. package/es/control/exportImage.js +163 -0
  16. package/es/control/fullscreen.d.ts +19 -0
  17. package/es/control/fullscreen.js +151 -0
  18. package/es/control/geoLocate.d.ts +16 -0
  19. package/es/control/geoLocate.js +139 -0
  20. package/es/control/layerControl.d.ts +21 -0
  21. package/es/control/layerControl.js +172 -0
  22. package/es/control/logo.d.ts +13 -0
  23. package/es/control/logo.js +87 -0
  24. package/es/control/mapTheme.d.ts +10 -0
  25. package/es/control/mapTheme.js +135 -0
  26. package/es/control/mouseLocation.d.ts +15 -0
  27. package/es/control/mouseLocation.js +104 -0
  28. package/es/control/scale.d.ts +34 -0
  29. package/es/control/scale.js +172 -0
  30. package/es/control/zoom.d.ts +34 -0
  31. package/es/control/zoom.js +146 -0
  32. package/es/css/button.less +70 -0
  33. package/es/css/control.less +71 -0
  34. package/es/css/index.css +567 -0
  35. package/es/css/index.less +12 -0
  36. package/es/css/l7.less +60 -0
  37. package/es/css/layerPopup.less +8 -0
  38. package/es/css/logo.less +18 -0
  39. package/es/css/mouseLocation.less +9 -0
  40. package/es/css/popper.less +64 -0
  41. package/es/css/popup.less +169 -0
  42. package/es/css/scale.less +34 -0
  43. package/es/css/select.less +86 -0
  44. package/es/css/variables.less +28 -0
  45. package/es/css/zoom.less +21 -0
  46. package/es/images/layers.png +0 -0
  47. package/es/images/layers.svg +1 -0
  48. package/es/images/logo.png +0 -0
  49. package/es/images/quanping.svg +12 -0
  50. package/es/index.d.ts +18 -0
  51. package/es/index.js +59 -0
  52. package/es/interface.d.ts +18 -0
  53. package/es/interface.js +1 -0
  54. package/es/marker-layer.d.ts +53 -0
  55. package/es/marker-layer.js +363 -0
  56. package/es/marker.d.ts +49 -0
  57. package/es/marker.js +434 -0
  58. package/es/popup/layerPopup.d.ts +78 -0
  59. package/es/popup/layerPopup.js +308 -0
  60. package/es/popup/popup.d.ts +147 -0
  61. package/es/popup/popup.js +636 -0
  62. package/es/utils/anchor.d.ts +22 -0
  63. package/es/utils/anchor.js +35 -0
  64. package/es/utils/icon.d.ts +1 -0
  65. package/es/utils/icon.js +9 -0
  66. package/es/utils/popper.d.ts +75 -0
  67. package/es/utils/popper.js +286 -0
  68. package/es/utils/screenfull.d.ts +2 -0
  69. package/es/utils/screenfull.js +157 -0
  70. package/lib/assets/iconfont/iconfont.js +39 -0
  71. package/lib/constants/index.js +90 -0
  72. package/lib/control/baseControl/buttonControl.js +118 -0
  73. package/lib/control/baseControl/control.js +172 -0
  74. package/lib/control/baseControl/index.js +22 -0
  75. package/lib/control/baseControl/popperControl.js +108 -0
  76. package/lib/control/baseControl/selectControl.js +153 -0
  77. package/lib/control/exportImage.js +83 -0
  78. package/lib/control/fullscreen.js +109 -0
  79. package/lib/control/geoLocate.js +78 -0
  80. package/lib/control/layerControl.js +136 -0
  81. package/lib/control/logo.js +74 -0
  82. package/lib/control/mapTheme.js +92 -0
  83. package/lib/control/mouseLocation.js +79 -0
  84. package/lib/control/scale.js +136 -0
  85. package/lib/control/zoom.js +119 -0
  86. package/lib/css/button.less +70 -0
  87. package/lib/css/control.less +71 -0
  88. package/lib/css/index.css +567 -0
  89. package/lib/css/index.less +12 -0
  90. package/lib/css/l7.less +60 -0
  91. package/lib/css/layerPopup.less +8 -0
  92. package/lib/css/logo.less +18 -0
  93. package/lib/css/mouseLocation.less +9 -0
  94. package/lib/css/popper.less +64 -0
  95. package/lib/css/popup.less +169 -0
  96. package/lib/css/scale.less +34 -0
  97. package/lib/css/select.less +86 -0
  98. package/lib/css/variables.less +28 -0
  99. package/lib/css/zoom.less +21 -0
  100. package/lib/images/layers.png +0 -0
  101. package/lib/images/layers.svg +1 -0
  102. package/lib/images/logo.png +0 -0
  103. package/lib/images/quanping.svg +12 -0
  104. package/lib/index.js +51 -0
  105. package/lib/interface.js +17 -0
  106. package/lib/marker-layer.js +263 -0
  107. package/lib/marker.js +307 -0
  108. package/lib/popup/layerPopup.js +200 -0
  109. package/lib/popup/popup.js +388 -0
  110. package/lib/utils/anchor.js +63 -0
  111. package/lib/utils/icon.js +37 -0
  112. package/lib/utils/popper.js +209 -0
  113. package/lib/utils/screenfull.js +160 -0
  114. package/package.json +5 -5
@@ -0,0 +1,209 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
+ var __getOwnPropNames = Object.getOwnPropertyNames;
4
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
5
+ var __export = (target, all) => {
6
+ for (var name in all)
7
+ __defProp(target, name, { get: all[name], enumerable: true });
8
+ };
9
+ var __copyProps = (to, from, except, desc) => {
10
+ if (from && typeof from === "object" || typeof from === "function") {
11
+ for (let key of __getOwnPropNames(from))
12
+ if (!__hasOwnProp.call(to, key) && key !== except)
13
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
14
+ }
15
+ return to;
16
+ };
17
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
18
+
19
+ // src/utils/popper.ts
20
+ var popper_exports = {};
21
+ __export(popper_exports, {
22
+ Popper: () => Popper
23
+ });
24
+ module.exports = __toCommonJS(popper_exports);
25
+ var import_l7_utils = require("@antv/l7-utils");
26
+ var import_eventemitter3 = require("eventemitter3");
27
+ var _Popper = class extends import_eventemitter3.EventEmitter {
28
+ constructor(button, option) {
29
+ super();
30
+ this.isShow = false;
31
+ this.timeout = null;
32
+ this.show = () => {
33
+ if (this.isShow || !this.contentDOM.innerHTML) {
34
+ return this;
35
+ }
36
+ this.resetPopperPosition();
37
+ import_l7_utils.DOM.removeClass(this.popperDOM, "l7-popper-hide");
38
+ this.isShow = true;
39
+ if (this.option.unique) {
40
+ _Popper.conflictPopperList.forEach((popper) => {
41
+ if (popper !== this && popper.isShow) {
42
+ popper.hide();
43
+ }
44
+ });
45
+ }
46
+ this.emit("show");
47
+ return this;
48
+ };
49
+ this.hide = () => {
50
+ if (!this.isShow) {
51
+ return this;
52
+ }
53
+ import_l7_utils.DOM.addClass(this.popperDOM, "l7-popper-hide");
54
+ this.isShow = false;
55
+ this.emit("hide");
56
+ return this;
57
+ };
58
+ this.setHideTimeout = () => {
59
+ if (this.timeout) {
60
+ return;
61
+ }
62
+ this.timeout = window.setTimeout(() => {
63
+ if (!this.isShow) {
64
+ return;
65
+ }
66
+ this.hide();
67
+ this.timeout = null;
68
+ }, 300);
69
+ };
70
+ this.clearHideTimeout = () => {
71
+ if (this.timeout) {
72
+ window.clearTimeout(this.timeout);
73
+ this.timeout = null;
74
+ }
75
+ };
76
+ this.onBtnClick = () => {
77
+ if (this.isShow) {
78
+ this.hide();
79
+ } else {
80
+ this.show();
81
+ }
82
+ };
83
+ this.onBtnMouseLeave = () => {
84
+ this.setHideTimeout();
85
+ };
86
+ this.onBtnMouseMove = () => {
87
+ this.clearHideTimeout();
88
+ if (this.isShow) {
89
+ return;
90
+ }
91
+ this.show();
92
+ };
93
+ this.button = button;
94
+ this.option = option;
95
+ this.init();
96
+ if (option.unique) {
97
+ _Popper.conflictPopperList.push(this);
98
+ }
99
+ }
100
+ get buttonRect() {
101
+ return this.button.getBoundingClientRect();
102
+ }
103
+ getPopperDOM() {
104
+ return this.popperDOM;
105
+ }
106
+ getIsShow() {
107
+ return this.isShow;
108
+ }
109
+ getContent() {
110
+ return this.content;
111
+ }
112
+ setContent(content) {
113
+ if (typeof content === "string") {
114
+ this.contentDOM.innerHTML = content;
115
+ } else if (content instanceof HTMLElement) {
116
+ import_l7_utils.DOM.clearChildren(this.contentDOM);
117
+ this.contentDOM.appendChild(content);
118
+ }
119
+ this.content = content;
120
+ }
121
+ init() {
122
+ const { trigger } = this.option;
123
+ this.popperDOM = this.createPopper();
124
+ if (trigger === "click") {
125
+ this.button.addEventListener("click", this.onBtnClick);
126
+ } else {
127
+ this.button.addEventListener("mousemove", this.onBtnMouseMove);
128
+ this.button.addEventListener("mouseleave", this.onBtnMouseLeave);
129
+ this.popperDOM.addEventListener("mousemove", this.onBtnMouseMove);
130
+ this.popperDOM.addEventListener("mouseleave", this.onBtnMouseLeave);
131
+ }
132
+ }
133
+ destroy() {
134
+ this.button.removeEventListener("click", this.onBtnClick);
135
+ this.button.removeEventListener("mousemove", this.onBtnMouseMove);
136
+ this.button.removeEventListener("mousemove", this.onBtnMouseLeave);
137
+ this.popperDOM.removeEventListener("mousemove", this.onBtnMouseMove);
138
+ this.popperDOM.removeEventListener("mouseleave", this.onBtnMouseLeave);
139
+ import_l7_utils.DOM.remove(this.popperDOM);
140
+ }
141
+ resetPopperPosition() {
142
+ const popperStyleObj = {};
143
+ const { container, offset = [0, 0], placement } = this.option;
144
+ const [offsetX, offsetY] = offset;
145
+ const buttonRect = this.button.getBoundingClientRect();
146
+ const containerRect = container.getBoundingClientRect();
147
+ const { left, right, top, bottom } = import_l7_utils.DOM.getDiffRect(buttonRect, containerRect);
148
+ let isTransformX = false;
149
+ let isTransformY = false;
150
+ if (/^(left|right)/.test(placement)) {
151
+ if (placement.includes("left")) {
152
+ popperStyleObj.right = `${buttonRect.width + right}px`;
153
+ } else if (placement.includes("right")) {
154
+ popperStyleObj.left = `${buttonRect.width + left}px`;
155
+ }
156
+ if (placement.includes("start")) {
157
+ popperStyleObj.top = `${top}px`;
158
+ } else if (placement.includes("end")) {
159
+ popperStyleObj.bottom = `${bottom}px`;
160
+ } else {
161
+ popperStyleObj.top = `${top + buttonRect.height / 2}px`;
162
+ isTransformY = true;
163
+ popperStyleObj.transform = `translate(${offsetX}px, calc(${offsetY}px - 50%))`;
164
+ }
165
+ } else if (/^(top|bottom)/.test(placement)) {
166
+ if (placement.includes("top")) {
167
+ popperStyleObj.bottom = `${buttonRect.height + bottom}px`;
168
+ } else if (placement.includes("bottom")) {
169
+ popperStyleObj.top = `${buttonRect.height + top}px`;
170
+ }
171
+ if (placement.includes("start")) {
172
+ popperStyleObj.left = `${left}px`;
173
+ } else if (placement.includes("end")) {
174
+ popperStyleObj.right = `${right}px`;
175
+ } else {
176
+ popperStyleObj.left = `${left + buttonRect.width / 2}px`;
177
+ isTransformX = true;
178
+ popperStyleObj.transform = `translate(calc(${offsetX}px - 50%), ${offsetY}px)`;
179
+ }
180
+ }
181
+ popperStyleObj.transform = `translate(calc(${offsetX}px - ${isTransformX ? "50%" : "0%"}), calc(${offsetY}px - ${isTransformY ? "50%" : "0%"})`;
182
+ const posList = placement.split("-");
183
+ if (posList.length) {
184
+ import_l7_utils.DOM.addClass(this.popperDOM, posList.map((pos) => `l7-popper-${pos}`).join(" "));
185
+ }
186
+ import_l7_utils.DOM.addStyle(this.popperDOM, import_l7_utils.DOM.css2Style(popperStyleObj));
187
+ }
188
+ createPopper() {
189
+ const { container, className = "", content } = this.option;
190
+ const popper = import_l7_utils.DOM.create("div", `l7-popper l7-popper-hide ${className}`);
191
+ const popperContent = import_l7_utils.DOM.create("div", "l7-popper-content");
192
+ const popperArrow = import_l7_utils.DOM.create("div", "l7-popper-arrow");
193
+ popper.appendChild(popperContent);
194
+ popper.appendChild(popperArrow);
195
+ container.appendChild(popper);
196
+ this.popperDOM = popper;
197
+ this.contentDOM = popperContent;
198
+ if (content) {
199
+ this.setContent(content);
200
+ }
201
+ return popper;
202
+ }
203
+ };
204
+ var Popper = _Popper;
205
+ Popper.conflictPopperList = [];
206
+ // Annotate the CommonJS export names for ESM import in node:
207
+ 0 && (module.exports = {
208
+ Popper
209
+ });
@@ -0,0 +1,160 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
+ var __getOwnPropNames = Object.getOwnPropertyNames;
4
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
5
+ var __export = (target, all) => {
6
+ for (var name in all)
7
+ __defProp(target, name, { get: all[name], enumerable: true });
8
+ };
9
+ var __copyProps = (to, from, except, desc) => {
10
+ if (from && typeof from === "object" || typeof from === "function") {
11
+ for (let key of __getOwnPropNames(from))
12
+ if (!__hasOwnProp.call(to, key) && key !== except)
13
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
14
+ }
15
+ return to;
16
+ };
17
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
18
+
19
+ // src/utils/screenfull.ts
20
+ var screenfull_exports = {};
21
+ __export(screenfull_exports, {
22
+ default: () => screenfull_default
23
+ });
24
+ module.exports = __toCommonJS(screenfull_exports);
25
+ var methodMap = [
26
+ [
27
+ "requestFullscreen",
28
+ "exitFullscreen",
29
+ "fullscreenElement",
30
+ "fullscreenEnabled",
31
+ "fullscreenchange",
32
+ "fullscreenerror"
33
+ ],
34
+ [
35
+ "webkitRequestFullscreen",
36
+ "webkitExitFullscreen",
37
+ "webkitFullscreenElement",
38
+ "webkitFullscreenEnabled",
39
+ "webkitfullscreenchange",
40
+ "webkitfullscreenerror"
41
+ ],
42
+ [
43
+ "webkitRequestFullScreen",
44
+ "webkitCancelFullScreen",
45
+ "webkitCurrentFullScreenElement",
46
+ "webkitCancelFullScreen",
47
+ "webkitfullscreenchange",
48
+ "webkitfullscreenerror"
49
+ ],
50
+ [
51
+ "mozRequestFullScreen",
52
+ "mozCancelFullScreen",
53
+ "mozFullScreenElement",
54
+ "mozFullScreenEnabled",
55
+ "mozfullscreenchange",
56
+ "mozfullscreenerror"
57
+ ],
58
+ [
59
+ "msRequestFullscreen",
60
+ "msExitFullscreen",
61
+ "msFullscreenElement",
62
+ "msFullscreenEnabled",
63
+ "MSFullscreenChange",
64
+ "MSFullscreenError"
65
+ ]
66
+ ];
67
+ var nativeAPI = (() => {
68
+ if (typeof document === "undefined") {
69
+ return false;
70
+ }
71
+ const unprefixedMethods = methodMap[0];
72
+ const returnValue = {};
73
+ for (const methodList of methodMap) {
74
+ const exitFullscreenMethod = methodList == null ? void 0 : methodList[1];
75
+ if (exitFullscreenMethod in document) {
76
+ for (const [index, method] of methodList.entries()) {
77
+ returnValue[unprefixedMethods[index]] = method;
78
+ }
79
+ return returnValue;
80
+ }
81
+ }
82
+ return false;
83
+ })();
84
+ var eventNameMap = {
85
+ change: nativeAPI.fullscreenchange,
86
+ error: nativeAPI.fullscreenerror
87
+ };
88
+ var screenfull = {
89
+ request(element = document.documentElement, options) {
90
+ return new Promise((resolve, reject) => {
91
+ const onFullScreenEntered = () => {
92
+ screenfull.off("change", onFullScreenEntered);
93
+ resolve();
94
+ };
95
+ screenfull.on("change", onFullScreenEntered);
96
+ const returnPromise = element[nativeAPI.requestFullscreen](options);
97
+ if (returnPromise instanceof Promise) {
98
+ returnPromise.then(onFullScreenEntered).catch(reject);
99
+ }
100
+ });
101
+ },
102
+ exit() {
103
+ return new Promise((resolve, reject) => {
104
+ if (!screenfull.isFullscreen) {
105
+ resolve();
106
+ return;
107
+ }
108
+ const onFullScreenExit = () => {
109
+ screenfull.off("change", onFullScreenExit);
110
+ resolve();
111
+ };
112
+ screenfull.on("change", onFullScreenExit);
113
+ const returnPromise = document[nativeAPI.exitFullscreen]();
114
+ if (returnPromise instanceof Promise) {
115
+ returnPromise.then(onFullScreenExit).catch(reject);
116
+ }
117
+ });
118
+ },
119
+ toggle(element, options) {
120
+ return screenfull.isFullscreen ? screenfull.exit() : screenfull.request(element, options);
121
+ },
122
+ onchange(callback) {
123
+ screenfull.on("change", callback);
124
+ },
125
+ onerror(callback) {
126
+ screenfull.on("error", callback);
127
+ },
128
+ on(event, callback) {
129
+ const eventName = eventNameMap[event];
130
+ if (eventName) {
131
+ document.addEventListener(eventName, callback, false);
132
+ }
133
+ },
134
+ off(event, callback) {
135
+ const eventName = eventNameMap[event];
136
+ if (eventName) {
137
+ document.removeEventListener(eventName, callback, false);
138
+ }
139
+ },
140
+ raw: nativeAPI
141
+ };
142
+ Object.defineProperties(screenfull, {
143
+ isFullscreen: {
144
+ get: () => Boolean(document[nativeAPI.fullscreenElement])
145
+ },
146
+ element: {
147
+ enumerable: true,
148
+ get: () => document[nativeAPI.fullscreenElement] ?? void 0
149
+ },
150
+ isEnabled: {
151
+ enumerable: true,
152
+ get: () => Boolean(document[nativeAPI.fullscreenEnabled])
153
+ }
154
+ });
155
+ if (!nativeAPI) {
156
+ screenfull = { isEnabled: false };
157
+ }
158
+ var screenfull_default = screenfull;
159
+ // Annotate the CommonJS export names for ESM import in node:
160
+ 0 && (module.exports = {});
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@antv/l7-component",
3
- "version": "2.9.32-alpha.2",
3
+ "version": "2.9.32-alpha.4",
4
4
  "description": "",
5
5
  "main": "lib/index.js",
6
6
  "module": "es/index.js",
@@ -26,8 +26,8 @@
26
26
  "author": "lzxue",
27
27
  "license": "ISC",
28
28
  "dependencies": {
29
- "@antv/l7-core": "2.9.32-alpha.2",
30
- "@antv/l7-utils": "2.9.32-alpha.2",
29
+ "@antv/l7-core": "2.9.32-alpha.4",
30
+ "@antv/l7-utils": "2.9.32-alpha.4",
31
31
  "@babel/runtime": "^7.7.7",
32
32
  "eventemitter3": "^4.0.0",
33
33
  "inversify": "^5.0.1",
@@ -36,11 +36,11 @@
36
36
  "supercluster": "^7.0.0"
37
37
  },
38
38
  "devDependencies": {
39
- "@antv/l7-test-utils": "2.9.32-alpha.2",
39
+ "@antv/l7-test-utils": "2.9.32-alpha.4",
40
40
  "gcoord": "^0.3.2",
41
41
  "less": "^4.1.3"
42
42
  },
43
- "gitHead": "16555be9682edaeeabec85082fc8c9e49fefabc0",
43
+ "gitHead": "17a8a05d41a0007db94568d2902a8f539d6e3abc",
44
44
  "publishConfig": {
45
45
  "access": "public"
46
46
  }