leaflet-polydraw 1.0.0 → 1.1.0
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.
- package/README.md +2 -0
- package/dist/icons/icon-bbox.svg +10 -45
- package/dist/icons/icon-cancel.svg +7 -0
- package/dist/icons/icon-collapse.svg +79 -0
- package/dist/icons/icon-confirm.svg +20 -0
- package/dist/icons/icon-double-elbows.svg +11 -0
- package/dist/icons/icon-draw.svg +55 -1
- package/dist/icons/icon-erase.svg +14 -2
- package/dist/icons/icon-p2p-draw.svg +113 -0
- package/dist/icons/icon-p2p-subtract.svg +108 -0
- package/dist/icons/icon-polydraw2.svg +60 -0
- package/dist/icons/icon-resize.svg +7 -0
- package/dist/icons/icon-rotate.svg +3 -0
- package/dist/icons/icon-simplify2.svg +12 -44
- package/dist/leaflet-polydraw.css +1 -1
- package/dist/polydraw.es.js +1335 -234
- package/dist/polydraw.es.js.map +1 -1
- package/dist/polydraw.umd.min.js +1 -1
- package/dist/polydraw.umd.min.js.map +1 -1
- package/dist/styles/polydraw.css +38 -5
- package/dist/types/buttons.d.ts +1 -1
- package/dist/types/buttons.d.ts.map +1 -1
- package/dist/types/config.d.ts +3 -0
- package/dist/types/config.d.ts.map +1 -0
- package/dist/types/enums.d.ts +2 -1
- package/dist/types/enums.d.ts.map +1 -1
- package/dist/types/index.d.ts +1 -1
- package/dist/types/managers/mode-manager.d.ts.map +1 -1
- package/dist/types/managers/polygon-draw-manager.d.ts.map +1 -1
- package/dist/types/managers/polygon-interaction-manager.d.ts +6 -0
- package/dist/types/managers/polygon-interaction-manager.d.ts.map +1 -1
- package/dist/types/polydraw.d.ts +17 -7
- package/dist/types/polydraw.d.ts.map +1 -1
- package/dist/types/polygon.util.d.ts +2 -0
- package/dist/types/polygon.util.d.ts.map +1 -1
- package/dist/types/popup-factory.d.ts +30 -0
- package/dist/types/popup-factory.d.ts.map +1 -0
- package/dist/types/transform/polygon-transform-controller.d.ts +32 -0
- package/dist/types/transform/polygon-transform-controller.d.ts.map +1 -0
- package/dist/types/transform/transform-overlay.d.ts +34 -0
- package/dist/types/transform/transform-overlay.d.ts.map +1 -0
- package/dist/types/transform/transform-types.d.ts +44 -0
- package/dist/types/transform/transform-types.d.ts.map +1 -0
- package/dist/types/transform/transform-utils.d.ts +26 -0
- package/dist/types/transform/transform-utils.d.ts.map +1 -0
- package/dist/types/types/polydraw-interfaces.d.ts +121 -34
- package/dist/types/types/polydraw-interfaces.d.ts.map +1 -1
- package/dist/types/utils/config-merge.util.d.ts +2 -0
- package/dist/types/utils/config-merge.util.d.ts.map +1 -0
- package/dist/types/utils.d.ts +1 -1
- package/dist/types/utils.d.ts.map +1 -1
- package/package.json +7 -7
- package/dist/icons/icon-add-elbow.svg +0 -128
package/dist/styles/polydraw.css
CHANGED
|
@@ -138,7 +138,13 @@ body {
|
|
|
138
138
|
|
|
139
139
|
.marker-menu-content {
|
|
140
140
|
display: flex;
|
|
141
|
-
|
|
141
|
+
flex-direction: row;
|
|
142
|
+
flex-wrap: wrap;
|
|
143
|
+
align-items: center;
|
|
144
|
+
justify-content: center;
|
|
145
|
+
gap: 0;
|
|
146
|
+
/* Max width for 3 buttons per row: 38px (button) * 3 + 5px (separator) * 2 = 124px, add some padding */
|
|
147
|
+
max-width: 132px;
|
|
142
148
|
}
|
|
143
149
|
|
|
144
150
|
.marker-menu-button {
|
|
@@ -185,13 +191,12 @@ body {
|
|
|
185
191
|
overflow: hidden;
|
|
186
192
|
background-color: #80be50;
|
|
187
193
|
border-radius: 12px;
|
|
188
|
-
padding-right: 16px;
|
|
189
194
|
box-shadow: 3px 4px 20px #00000080;
|
|
190
195
|
}
|
|
191
196
|
|
|
192
197
|
.alter-marker-wrapper,
|
|
193
198
|
.info-marker-wrapper {
|
|
194
|
-
height: 40px;
|
|
199
|
+
min-height: 40px;
|
|
195
200
|
border: 2px solid transparent;
|
|
196
201
|
background-color: #80be50;
|
|
197
202
|
color: #fff;
|
|
@@ -201,9 +206,11 @@ body {
|
|
|
201
206
|
text-align: center;
|
|
202
207
|
}
|
|
203
208
|
.content {
|
|
204
|
-
width:
|
|
209
|
+
width: auto;
|
|
205
210
|
min-height: 40px;
|
|
206
211
|
margin-right: 12px;
|
|
212
|
+
display: flex;
|
|
213
|
+
align-items: center;
|
|
207
214
|
}
|
|
208
215
|
.marker-menu-content {
|
|
209
216
|
.marker-menu-button {
|
|
@@ -222,7 +229,7 @@ body {
|
|
|
222
229
|
background-image: url('../icons/icon-simplify2.svg');
|
|
223
230
|
}
|
|
224
231
|
&.double-elbows {
|
|
225
|
-
background-image: url('../icons/icon-
|
|
232
|
+
background-image: url('../icons/icon-double-elbows.svg');
|
|
226
233
|
}
|
|
227
234
|
&.bbox {
|
|
228
235
|
background-image: url('../icons/icon-bbox.svg');
|
|
@@ -232,9 +239,27 @@ body {
|
|
|
232
239
|
position: relative;
|
|
233
240
|
overflow: hidden;
|
|
234
241
|
}
|
|
242
|
+
&.transform-scale {
|
|
243
|
+
background-image: url('../icons/icon-resize.svg');
|
|
244
|
+
}
|
|
245
|
+
&.transform-rotate {
|
|
246
|
+
background-image: url('../icons/icon-rotate.svg');
|
|
247
|
+
}
|
|
235
248
|
}
|
|
236
249
|
}
|
|
237
250
|
|
|
251
|
+
.polydraw-transform-cancel,
|
|
252
|
+
.polydraw-transform-confirm {
|
|
253
|
+
width: 24px;
|
|
254
|
+
height: 24px;
|
|
255
|
+
border-radius: 3px;
|
|
256
|
+
pointer-events: auto;
|
|
257
|
+
cursor: pointer;
|
|
258
|
+
display: flex;
|
|
259
|
+
align-items: center;
|
|
260
|
+
justify-content: center;
|
|
261
|
+
}
|
|
262
|
+
|
|
238
263
|
/* Alpha banner for bezier button */
|
|
239
264
|
.alpha-banner {
|
|
240
265
|
position: absolute;
|
|
@@ -376,6 +401,14 @@ body {
|
|
|
376
401
|
transition: all 0.2s ease;
|
|
377
402
|
}
|
|
378
403
|
|
|
404
|
+
.menu-popup {
|
|
405
|
+
margin-bottom: -60px;
|
|
406
|
+
}
|
|
407
|
+
|
|
408
|
+
.info-popup {
|
|
409
|
+
margin-bottom: -18px;
|
|
410
|
+
}
|
|
411
|
+
|
|
379
412
|
.menu-popup .leaflet-popup-tip-container,
|
|
380
413
|
.info-popup .leaflet-popup-tip-container {
|
|
381
414
|
display: none;
|
package/dist/types/buttons.d.ts
CHANGED
|
@@ -10,5 +10,5 @@ import { PolydrawConfig } from './types/polydraw-interfaces';
|
|
|
10
10
|
* @param onStartClick Callback for start button.
|
|
11
11
|
* @param onHoleClick Callback for hole button.
|
|
12
12
|
*/
|
|
13
|
-
export declare function createButtons(container: HTMLElement, subContainer: HTMLElement, config: PolydrawConfig, onActivateToggle: () => void, onDrawClick: () => void, onSubtractClick: () => void, onEraseClick: () => void, onPointToPointClick: () => void): void;
|
|
13
|
+
export declare function createButtons(container: HTMLElement, subContainer: HTMLElement, config: PolydrawConfig, onActivateToggle: () => void, onDrawClick: () => void, onSubtractClick: () => void, onEraseClick: () => void, onPointToPointClick: () => void, onPointToPointSubtractClick: () => void): void;
|
|
14
14
|
//# sourceMappingURL=buttons.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"buttons.d.ts","sourceRoot":"","sources":["../../src/buttons.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;
|
|
1
|
+
{"version":3,"file":"buttons.d.ts","sourceRoot":"","sources":["../../src/buttons.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAwC7D;;;;;;;;;;GAUG;AACH,wBAAgB,aAAa,CAC3B,SAAS,EAAE,WAAW,EACtB,YAAY,EAAE,WAAW,EACzB,MAAM,EAAE,cAAc,EACtB,gBAAgB,EAAE,MAAM,IAAI,EAC5B,WAAW,EAAE,MAAM,IAAI,EACvB,eAAe,EAAE,MAAM,IAAI,EAC3B,YAAY,EAAE,MAAM,IAAI,EACxB,mBAAmB,EAAE,MAAM,IAAI,EAC/B,2BAA2B,EAAE,MAAM,IAAI,QA0GxC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/config.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAE7D,eAAO,MAAM,aAAa,EAAE,cA6O3B,CAAC"}
|
package/dist/types/enums.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"enums.d.ts","sourceRoot":"","sources":["../../src/enums.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,oBAAY,cAAc;IACxB,EAAE,QAAQ;IACV,EAAE,QAAQ;CACX;AAED;;GAEG;AAEH,oBAAY,QAAQ;IAClB,GAAG,IAAI;IACP,GAAG,IAAI;IACP,IAAI,IAAI;IACR,QAAQ,IAAI;IACZ,YAAY,IAAI;IAChB,cAAc,KAAK;IACnB,YAAY,KAAK;
|
|
1
|
+
{"version":3,"file":"enums.d.ts","sourceRoot":"","sources":["../../src/enums.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,oBAAY,cAAc;IACxB,EAAE,QAAQ;IACV,EAAE,QAAQ;CACX;AAED;;GAEG;AAEH,oBAAY,QAAQ;IAClB,GAAG,IAAI;IACP,GAAG,IAAI;IACP,IAAI,IAAI;IACR,QAAQ,IAAI;IACZ,YAAY,IAAI;IAChB,cAAc,KAAK;IACnB,YAAY,KAAK;IACjB,oBAAoB,KAAK;CAC1B;AACD;;GAEG;AAGH,oBAAY,cAAc;IACxB,SAAS,IAAI;IACb,KAAK,IAAI;IACT,SAAS,IAAI;IACb,IAAI,IAAI;IACR,SAAS,IAAI;IACb,KAAK,IAAI;IACT,SAAS,IAAI;IACb,IAAI,IAAI;IACR,IAAI,IAAI;CAGT"}
|
package/dist/types/index.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export { default, leafletAdapter } from "./polydraw";
|
|
1
|
+
export { default, leafletAdapter, defaultConfig } from "./polydraw";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mode-manager.d.ts","sourceRoot":"","sources":["../../../src/managers/mode-manager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AACpC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AACnE,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAE/B,eAAe,EAAE,OAAO,CAAC;IACzB,cAAc,EAAE,OAAO,CAAC;IACxB,YAAY,EAAE,OAAO,CAAC;IACtB,eAAe,EAAE,OAAO,CAAC;IAGzB,eAAe,EAAE,OAAO,CAAC;IACzB,kBAAkB,EAAE,OAAO,CAAC;IAG5B,WAAW,EAAE,OAAO,CAAC;IACrB,UAAU,EAAE,OAAO,CAAC;IACpB,kBAAkB,EAAE,OAAO,CAAC;IAG5B,WAAW,EAAE,QAAQ,CAAC;IACtB,eAAe,EAAE,OAAO,CAAC;IACzB,iBAAiB,EAAE,OAAO,CAAC;IAG3B,mBAAmB,EAAE,OAAO,CAAC;IAC7B,cAAc,EAAE,OAAO,CAAC;CACzB;AAED;;;GAGG;AACH,qBAAa,WAAW;IACtB,OAAO,CAAC,KAAK,CAAmB;IAChC,OAAO,CAAC,MAAM,CAAiB;IAC/B,OAAO,CAAC,YAAY,CAAe;gBAEvB,MAAM,EAAE,cAAc,EAAE,YAAY,EAAE,YAAY;IAM9D;;OAEG;IACH,OAAO,CAAC,kBAAkB;IA4B1B;;OAEG;IACH,kBAAkB,CAAC,IAAI,EAAE,QAAQ,GAAG,IAAI;
|
|
1
|
+
{"version":3,"file":"mode-manager.d.ts","sourceRoot":"","sources":["../../../src/managers/mode-manager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AACpC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AACnE,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAE/B,eAAe,EAAE,OAAO,CAAC;IACzB,cAAc,EAAE,OAAO,CAAC;IACxB,YAAY,EAAE,OAAO,CAAC;IACtB,eAAe,EAAE,OAAO,CAAC;IAGzB,eAAe,EAAE,OAAO,CAAC;IACzB,kBAAkB,EAAE,OAAO,CAAC;IAG5B,WAAW,EAAE,OAAO,CAAC;IACrB,UAAU,EAAE,OAAO,CAAC;IACpB,kBAAkB,EAAE,OAAO,CAAC;IAG5B,WAAW,EAAE,QAAQ,CAAC;IACtB,eAAe,EAAE,OAAO,CAAC;IACzB,iBAAiB,EAAE,OAAO,CAAC;IAG3B,mBAAmB,EAAE,OAAO,CAAC;IAC7B,cAAc,EAAE,OAAO,CAAC;CACzB;AAED;;;GAGG;AACH,qBAAa,WAAW;IACtB,OAAO,CAAC,KAAK,CAAmB;IAChC,OAAO,CAAC,MAAM,CAAiB;IAC/B,OAAO,CAAC,YAAY,CAAe;gBAEvB,MAAM,EAAE,cAAc,EAAE,YAAY,EAAE,YAAY;IAM9D;;OAEG;IACH,OAAO,CAAC,kBAAkB;IA4B1B;;OAEG;IACH,kBAAkB,CAAC,IAAI,EAAE,QAAQ,GAAG,IAAI;IAyBxC;;OAEG;IACH,OAAO,CAAC,eAAe;IAqBvB;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAqB3B;;OAEG;IACH,OAAO,CAAC,wBAAwB;IAqBhC;;OAEG;IACH,mBAAmB,CAAC,MAAM,EAAE,OAAO,GAAG,IAAI;IAU1C;;OAEG;IACH,gBAAgB,CAAC,MAAM,EAAE,iBAAiB,GAAG,OAAO;IAyBpD;;OAEG;IACH,eAAe,IAAI,OAAO;IAI1B;;OAEG;IACH,WAAW,IAAI,OAAO;IAItB;;OAEG;IACH,cAAc,IAAI,QAAQ;IAI1B;;OAEG;IACH,QAAQ,IAAI,QAAQ,CAAC,gBAAgB,CAAC;IAItC;;OAEG;IACH,yBAAyB,IAAI,OAAO;IAIpC;;OAEG;IACH,oBAAoB,IAAI,OAAO;IAI/B;;OAEG;IACH,YAAY,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI;CAK3C;AAED;;GAEG;AACH,MAAM,MAAM,iBAAiB,GACzB,aAAa,GACb,YAAY,GACZ,WAAW,GACX,cAAc,GACd,cAAc,GACd,iBAAiB,GACjB,SAAS,GACT,SAAS,GACT,oBAAoB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"polygon-draw-manager.d.ts","sourceRoot":"","sources":["../../../src/managers/polygon-draw-manager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAC;AAC7B,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAI5C,OAAO,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAC9D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AACnE,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAG/C,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,OAAO,CAAC,OAAO,GAAG,YAAY,CAAC,CAAC;IAC1C,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,8BAA8B;IAC7C,UAAU,EAAE,UAAU,CAAC;IACvB,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC;IACX,MAAM,EAAE,cAAc,CAAC;IACvB,WAAW,EAAE,WAAW,CAAC;IACzB,YAAY,EAAE,YAAY,CAAC;IAC3B,MAAM,EAAE,CAAC,CAAC,QAAQ,CAAC;CACpB;AAED;;;GAGG;AACH,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,UAAU,CAAa;IAC/B,OAAO,CAAC,GAAG,CAAQ;IACnB,OAAO,CAAC,MAAM,CAAiB;IAC/B,OAAO,CAAC,WAAW,CAAc;IACjC,OAAO,CAAC,YAAY,CAAe;IACnC,OAAO,CAAC,MAAM,CAAa;IAG3B,OAAO,CAAC,UAAU,CAAkB;IACpC,OAAO,CAAC,iBAAiB,CAAkB;IAC3C,OAAO,CAAC,sBAAsB,CAA+C;gBAEjE,YAAY,EAAE,8BAA8B;IAUxD;;OAEG;IACH,SAAS,CAAC,KAAK,EAAE,CAAC,CAAC,iBAAiB,GAAG,UAAU,GAAG,IAAI;IAcxD;;OAEG;IACG,YAAY,CAAC,KAAK,EAAE,CAAC,CAAC,iBAAiB,GAAG,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;IAyDhF;;OAEG;IACH;;;OAGG;IACI,cAAc,CAAC,MAAM,EAAE,OAAO,GAAG,IAAI;IAI5C;;OAEG;IACH,uBAAuB,CAAC,WAAW,EAAE,CAAC,CAAC,MAAM,GAAG,IAAI;IAsIpD;;OAEG;IACH,iBAAiB,CAAC,CAAC,EAAE,CAAC,CAAC,iBAAiB,GAAG,IAAI;
|
|
1
|
+
{"version":3,"file":"polygon-draw-manager.d.ts","sourceRoot":"","sources":["../../../src/managers/polygon-draw-manager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAC;AAC7B,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAI5C,OAAO,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAC9D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AACnE,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAG/C,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,OAAO,CAAC,OAAO,GAAG,YAAY,CAAC,CAAC;IAC1C,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,8BAA8B;IAC7C,UAAU,EAAE,UAAU,CAAC;IACvB,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC;IACX,MAAM,EAAE,cAAc,CAAC;IACvB,WAAW,EAAE,WAAW,CAAC;IACzB,YAAY,EAAE,YAAY,CAAC;IAC3B,MAAM,EAAE,CAAC,CAAC,QAAQ,CAAC;CACpB;AAED;;;GAGG;AACH,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,UAAU,CAAa;IAC/B,OAAO,CAAC,GAAG,CAAQ;IACnB,OAAO,CAAC,MAAM,CAAiB;IAC/B,OAAO,CAAC,WAAW,CAAc;IACjC,OAAO,CAAC,YAAY,CAAe;IACnC,OAAO,CAAC,MAAM,CAAa;IAG3B,OAAO,CAAC,UAAU,CAAkB;IACpC,OAAO,CAAC,iBAAiB,CAAkB;IAC3C,OAAO,CAAC,sBAAsB,CAA+C;gBAEjE,YAAY,EAAE,8BAA8B;IAUxD;;OAEG;IACH,SAAS,CAAC,KAAK,EAAE,CAAC,CAAC,iBAAiB,GAAG,UAAU,GAAG,IAAI;IAcxD;;OAEG;IACG,YAAY,CAAC,KAAK,EAAE,CAAC,CAAC,iBAAiB,GAAG,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;IAyDhF;;OAEG;IACH;;;OAGG;IACI,cAAc,CAAC,MAAM,EAAE,OAAO,GAAG,IAAI;IAI5C;;OAEG;IACH,uBAAuB,CAAC,WAAW,EAAE,CAAC,CAAC,MAAM,GAAG,IAAI;IAsIpD;;OAEG;IACH,iBAAiB,CAAC,CAAC,EAAE,CAAC,CAAC,iBAAiB,GAAG,IAAI;IAoB/C;;OAEG;IACH,eAAe,CAAC,EAAE,EAAE,UAAU,GAAG,IAAI;IAerC;;OAEG;IACH,2BAA2B,IAAI,IAAI;IAoEnC;;OAEG;IACH,yBAAyB,IAAI,IAAI;IASjC;;OAEG;IACH,eAAe,IAAI,IAAI;IAMvB;;OAEG;IACH,WAAW,IAAI,IAAI;IAYnB;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAkD5B;;OAEG;IACH,OAAO,CAAC,aAAa;IAIrB;;OAEG;IACH,OAAO,CAAC,eAAe;IA+BvB;;OAEG;IACH,OAAO,CAAC,eAAe;IAiBvB;;OAEG;IACH,aAAa,IAAI,CAAC,CAAC,MAAM,EAAE;IAK3B;;OAEG;IACH,oBAAoB,IAAI,OAAO;IAM/B;;OAEG;IACH,oBAAoB,IAAI,MAAM;IAM9B;;OAEG;IACH,OAAO,CAAC,gBAAgB;IA0DxB;;OAEG;IACH,OAAO,CAAC,4BAA4B;CAiDrC"}
|
|
@@ -37,6 +37,12 @@ export declare class PolygonInteractionManager {
|
|
|
37
37
|
private currentModifierDragMode;
|
|
38
38
|
private isModifierKeyHeld;
|
|
39
39
|
private _openMenuPopup;
|
|
40
|
+
private transformModeActive;
|
|
41
|
+
private transformControllers;
|
|
42
|
+
/**
|
|
43
|
+
* Strongly typed helper to emit polygon updated events without casts.
|
|
44
|
+
*/
|
|
45
|
+
private emitPolygonUpdated;
|
|
40
46
|
private getFeatureGroups;
|
|
41
47
|
private removeFeatureGroup;
|
|
42
48
|
constructor(dependencies: PolygonInteractionManagerDependencies, featureGroupAccess: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"polygon-interaction-manager.d.ts","sourceRoot":"","sources":["../../../src/managers/polygon-interaction-manager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAC;AAC7B,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAM3E,OAAO,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,YAAY,EAA4B,MAAM,SAAS,CAAC;AACxF,OAAO,KAAK,EACV,cAAc,EACd,eAAe,EAGhB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"polygon-interaction-manager.d.ts","sourceRoot":"","sources":["../../../src/managers/polygon-interaction-manager.ts"],"names":[],"mappings":"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"}
|
package/dist/types/polydraw.d.ts
CHANGED
|
@@ -3,6 +3,13 @@ import { DrawMode } from './enums';
|
|
|
3
3
|
import './styles/polydraw.css';
|
|
4
4
|
import { leafletAdapter } from './compatibility/leaflet-adapter';
|
|
5
5
|
import type { PolydrawConfig } from './types/polydraw-interfaces';
|
|
6
|
+
type PolydrawOptions = L.ControlOptions & {
|
|
7
|
+
config?: Partial<PolydrawConfig>;
|
|
8
|
+
configPath?: string;
|
|
9
|
+
};
|
|
10
|
+
type PredefinedOptions = {
|
|
11
|
+
visualOptimizationLevel?: number;
|
|
12
|
+
};
|
|
6
13
|
declare class Polydraw extends L.Control {
|
|
7
14
|
private map;
|
|
8
15
|
private tracer;
|
|
@@ -29,10 +36,7 @@ declare class Polydraw extends L.Control {
|
|
|
29
36
|
private _boundPointerUp;
|
|
30
37
|
private _lastTapTime;
|
|
31
38
|
private _tapTimeout;
|
|
32
|
-
constructor(options?:
|
|
33
|
-
config?: PolydrawConfig;
|
|
34
|
-
configPath?: string;
|
|
35
|
-
});
|
|
39
|
+
constructor(options?: PolydrawOptions);
|
|
36
40
|
/**
|
|
37
41
|
* Method called when the control is added to the map.
|
|
38
42
|
* It initializes the control, creates the UI, and sets up event listeners.
|
|
@@ -62,9 +66,13 @@ declare class Polydraw extends L.Control {
|
|
|
62
66
|
* @param geoborders - Flexible coordinate format: objects ({lat, lng}), arrays ([lat, lng] or [lng, lat]), strings ("lat,lng" or "N59 E10")
|
|
63
67
|
* @param options - Optional parameters, including visual optimization level.
|
|
64
68
|
*/
|
|
65
|
-
addPredefinedPolygon(geoborders: unknown[][][], options?:
|
|
66
|
-
|
|
67
|
-
|
|
69
|
+
addPredefinedPolygon(geoborders: unknown[][][], options?: PredefinedOptions): Promise<void>;
|
|
70
|
+
/**
|
|
71
|
+
* Adds predefined polygons from GeoJSON to the map.
|
|
72
|
+
* @param geojsonFeatures - An array of GeoJSON Polygon or MultiPolygon features.
|
|
73
|
+
* @param options - Optional parameters, including visual optimization level.
|
|
74
|
+
*/
|
|
75
|
+
addPredefinedGeoJSONs(geojsonFeatures: GeoJSON.Feature<GeoJSON.Polygon | GeoJSON.MultiPolygon>[], options?: PredefinedOptions): Promise<void>;
|
|
68
76
|
/**
|
|
69
77
|
* Sets the current drawing mode.
|
|
70
78
|
* @param mode - The drawing mode to set.
|
|
@@ -135,6 +143,7 @@ declare class Polydraw extends L.Control {
|
|
|
135
143
|
private _handleSubtractClick;
|
|
136
144
|
private _handleEraseClick;
|
|
137
145
|
private _handlePointToPointClick;
|
|
146
|
+
private _handlePointToPointSubtractClick;
|
|
138
147
|
private _updateMapInteractions;
|
|
139
148
|
private initializeComponents;
|
|
140
149
|
/**
|
|
@@ -256,6 +265,7 @@ declare class Polydraw extends L.Control {
|
|
|
256
265
|
* Updates the visual indicator on the activate button to show if there are active polygons.
|
|
257
266
|
*/
|
|
258
267
|
private updateActivateButtonIndicator;
|
|
268
|
+
private applyActivateButtonIcon;
|
|
259
269
|
}
|
|
260
270
|
export default Polydraw;
|
|
261
271
|
export { leafletAdapter };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"polydraw.d.ts","sourceRoot":"","sources":["../../src/polydraw.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAC;AAE7B,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAUnC,OAAO,uBAAuB,CAAC;AAE/B,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;
|
|
1
|
+
{"version":3,"file":"polydraw.d.ts","sourceRoot":"","sources":["../../src/polydraw.ts"],"names":[],"mappings":"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"}
|
|
@@ -35,5 +35,7 @@ export declare class PolygonUtil {
|
|
|
35
35
|
* @returns The center LatLng.
|
|
36
36
|
*/
|
|
37
37
|
static getCenterOfMass(polygon: Feature<Polygon | MultiPolygon>): L.LatLngLiteral;
|
|
38
|
+
static getCenterOfPolygonByIndexWithOffsetFromCenterOfMass(polygon: Feature<Polygon | MultiPolygon>, index: number): L.LatLngLiteral;
|
|
39
|
+
private static getPolygonLatLngAtIndex;
|
|
38
40
|
}
|
|
39
41
|
//# sourceMappingURL=polygon.util.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"polygon.util.d.ts","sourceRoot":"","sources":["../../src/polygon.util.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAC;AAG7B,OAAO,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,YAAY,
|
|
1
|
+
{"version":3,"file":"polygon.util.d.ts","sourceRoot":"","sources":["../../src/polygon.util.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAC;AAG7B,OAAO,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,YAAY,EAAS,MAAM,SAAS,CAAC;AAGrE;;GAEG;AACH,qBAAa,WAAW;IACtB,OAAO,CAAC,MAAM,CAAC,UAAU,CAAiC;IAE1D;;;;OAIG;IACH,MAAM,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC,CAAC,aAAa,EAAE;IAwB3C;;;;OAIG;IACH,MAAM,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC,CAAC,aAAa,EAAE,GAAG,CAAC,CAAC,aAAa;IAIhE,MAAM,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC,CAAC,aAAa,EAAE,GAAG,CAAC,CAAC,aAAa;IAIhE,MAAM,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC,CAAC,aAAa,EAAE,GAAG,CAAC,CAAC,aAAa;IAIhE,MAAM,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC,CAAC,aAAa,EAAE,GAAG,CAAC,CAAC,aAAa;IAIhE,MAAM,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC,aAAa,EAAE,GAAG,MAAM;IAInD,MAAM,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC,aAAa,EAAE,GAAG,MAAM;IAInD,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,aAAa,EAAE,GAAG,MAAM;IAIlD,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,aAAa,EAAE,GAAG,MAAM;IAIlD,MAAM,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC,CAAC,aAAa,EAAE,GAAG,MAAM;IAQrD,MAAM,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC,CAAC,aAAa,EAAE,GAAG,MAAM;IAQvD,MAAM,CAAC,kBAAkB,CAAC,OAAO,EAAE,CAAC,CAAC,aAAa,EAAE,GAAG,MAAM;IAW7D,MAAM,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC,CAAC,aAAa,EAAE,MAAM,EAAE,CAAC,CAAC,aAAa,GAAG,CAAC,CAAC,aAAa;IAUrF,MAAM,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC,CAAC,aAAa,EAAE,GAAG,CAAC,CAAC,YAAY;IAgB5D;;;;OAIG;IACH,MAAM,CAAC,eAAe,CAAC,OAAO,EAAE,OAAO,CAAC,OAAO,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC,aAAa;IAOjF,MAAM,CAAC,mDAAmD,CACxD,OAAO,EAAE,OAAO,CAAC,OAAO,GAAG,YAAY,CAAC,EACxC,KAAK,EAAE,MAAM,GACZ,CAAC,CAAC,aAAa;IAiClB,OAAO,CAAC,MAAM,CAAC,uBAAuB;CAyCvC"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Factory for creating popup UI structures.
|
|
3
|
+
* Provides reusable methods for building popup DOM elements.
|
|
4
|
+
*/
|
|
5
|
+
export declare class PopupFactory {
|
|
6
|
+
/**
|
|
7
|
+
* Creates a menu button element.
|
|
8
|
+
* @param id Unique identifier for the button.
|
|
9
|
+
* @param title Tooltip text.
|
|
10
|
+
* @param cssClasses Additional CSS classes to apply.
|
|
11
|
+
* @param options Optional configuration (alpha banner, etc.).
|
|
12
|
+
* @returns HTMLDivElement representing the menu button.
|
|
13
|
+
*/
|
|
14
|
+
static createMenuButton(id: string, title: string, cssClasses: string[], options?: {
|
|
15
|
+
alphaBanner?: boolean;
|
|
16
|
+
}): HTMLDivElement;
|
|
17
|
+
/**
|
|
18
|
+
* Builds a menu popup container structure.
|
|
19
|
+
* @param buttons Array of button elements to include.
|
|
20
|
+
* @returns HTMLDivElement containing the complete menu structure.
|
|
21
|
+
*/
|
|
22
|
+
static buildMenuPopup(buttons: HTMLDivElement[]): HTMLDivElement;
|
|
23
|
+
/**
|
|
24
|
+
* Builds an info popup container structure.
|
|
25
|
+
* @param content HTML element to display inside the popup.
|
|
26
|
+
* @returns HTMLDivElement containing the complete info popup structure.
|
|
27
|
+
*/
|
|
28
|
+
static buildInfoPopup(content: HTMLElement): HTMLDivElement;
|
|
29
|
+
}
|
|
30
|
+
//# sourceMappingURL=popup-factory.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"popup-factory.d.ts","sourceRoot":"","sources":["../../src/popup-factory.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,qBAAa,YAAY;IACvB;;;;;;;OAOG;IACH,MAAM,CAAC,gBAAgB,CACrB,EAAE,EAAE,MAAM,EACV,KAAK,EAAE,MAAM,EACb,UAAU,EAAE,MAAM,EAAE,EACpB,OAAO,CAAC,EAAE;QACR,WAAW,CAAC,EAAE,OAAO,CAAC;KACvB,GACA,cAAc;IAgBjB;;;;OAIG;IACH,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,cAAc,EAAE,GAAG,cAAc;IAyBhE;;;;OAIG;IACH,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,WAAW,GAAG,cAAc;CAgB5D"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Orchestrates polygon Transform Mode: capture original geometry, apply scale/rotation in pixel space,
|
|
3
|
+
* preview updates on the polygon, and support apply/cancel.
|
|
4
|
+
*/
|
|
5
|
+
import * as L from 'leaflet';
|
|
6
|
+
export declare class PolygonTransformController {
|
|
7
|
+
private map;
|
|
8
|
+
private polygon;
|
|
9
|
+
private overlay;
|
|
10
|
+
private state;
|
|
11
|
+
private normalizedLatLngs;
|
|
12
|
+
private wasMapDraggingEnabled;
|
|
13
|
+
private mode;
|
|
14
|
+
private onExit?;
|
|
15
|
+
private rotateStartAngle;
|
|
16
|
+
private rotateBaseRotation;
|
|
17
|
+
constructor(map: L.Map, featureGroup: L.FeatureGroup, mode?: 'scale' | 'rotate', onExit?: () => void);
|
|
18
|
+
destroy(): void;
|
|
19
|
+
private onKeyDown;
|
|
20
|
+
private updateOverlay;
|
|
21
|
+
private onStartDrag;
|
|
22
|
+
private onDrag;
|
|
23
|
+
private handleRotateDrag;
|
|
24
|
+
private handlePivotDrag;
|
|
25
|
+
private handleScaleDrag;
|
|
26
|
+
private preview;
|
|
27
|
+
apply(): L.LatLng[][][];
|
|
28
|
+
cancel(): void;
|
|
29
|
+
private handleCancel;
|
|
30
|
+
private handleConfirm;
|
|
31
|
+
}
|
|
32
|
+
//# sourceMappingURL=polygon-transform-controller.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"polygon-transform-controller.d.ts","sourceRoot":"","sources":["../../../src/transform/polygon-transform-controller.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,KAAK,CAAC,MAAM,SAAS,CAAC;AAmB7B,qBAAa,0BAA0B;IACrC,OAAO,CAAC,GAAG,CAAQ;IACnB,OAAO,CAAC,OAAO,CAAY;IAC3B,OAAO,CAAC,OAAO,CAAmB;IAClC,OAAO,CAAC,KAAK,CAAiB;IAC9B,OAAO,CAAC,iBAAiB,CAAiB;IAC1C,OAAO,CAAC,qBAAqB,CAAkB;IAC/C,OAAO,CAAC,IAAI,CAAqB;IACjC,OAAO,CAAC,MAAM,CAAC,CAAa;IAC5B,OAAO,CAAC,gBAAgB,CAAuB;IAC/C,OAAO,CAAC,kBAAkB,CAAa;gBAGrC,GAAG,EAAE,CAAC,CAAC,GAAG,EACV,YAAY,EAAE,CAAC,CAAC,YAAY,EAC5B,IAAI,GAAE,OAAO,GAAG,QAAkB,EAClC,MAAM,CAAC,EAAE,MAAM,IAAI;IA+DrB,OAAO,IAAI,IAAI;IAcf,OAAO,CAAC,SAAS,CAIf;IAEF,OAAO,CAAC,aAAa,CAYnB;IAEF,OAAO,CAAC,WAAW;IAiBnB,OAAO,CAAC,MAAM;IAyBd,OAAO,CAAC,gBAAgB;IAcxB,OAAO,CAAC,eAAe;IAIvB,OAAO,CAAC,eAAe;IAkEvB,OAAO,CAAC,OAAO;IAaf,KAAK,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,EAAE;IAKvB,MAAM,IAAI,IAAI;IAId,OAAO,CAAC,YAAY;IAMpB,OAAO,CAAC,aAAa;CAItB"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Renders the transform overlay (bbox, 8 scale handles, rotate handle, pivot) in a dedicated Leaflet pane.
|
|
3
|
+
* Delegates drag events to callbacks. Uses Leaflet APIs and works across v1/v2.
|
|
4
|
+
*/
|
|
5
|
+
import * as L from 'leaflet';
|
|
6
|
+
import { type TransformOverlayCallbacks, type PixelBBox, type PixelPoint } from './transform-types';
|
|
7
|
+
export declare class TransformOverlay {
|
|
8
|
+
private map;
|
|
9
|
+
private pane;
|
|
10
|
+
private root;
|
|
11
|
+
private draggingHandle;
|
|
12
|
+
private callbacks;
|
|
13
|
+
private rafId;
|
|
14
|
+
private mode;
|
|
15
|
+
private onCancel?;
|
|
16
|
+
private onConfirm?;
|
|
17
|
+
private cancelBtn;
|
|
18
|
+
private confirmBtn;
|
|
19
|
+
private currentBBox;
|
|
20
|
+
private currentRotation;
|
|
21
|
+
constructor(map: L.Map, callbacks: TransformOverlayCallbacks, mode: 'scale' | 'rotate', onCancel?: () => void, onConfirm?: () => void);
|
|
22
|
+
destroy(): void;
|
|
23
|
+
update(bbox: PixelBBox, pivot: PixelPoint, rotation?: number): void;
|
|
24
|
+
private render;
|
|
25
|
+
private cursorForHandle;
|
|
26
|
+
private startDrag;
|
|
27
|
+
private onDrag;
|
|
28
|
+
private endDrag;
|
|
29
|
+
private getMouseLayerPoint;
|
|
30
|
+
private updateButtonPositions;
|
|
31
|
+
private hideButtons;
|
|
32
|
+
private showButtons;
|
|
33
|
+
}
|
|
34
|
+
//# sourceMappingURL=transform-overlay.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"transform-overlay.d.ts","sourceRoot":"","sources":["../../../src/transform/transform-overlay.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,KAAK,CAAC,MAAM,SAAS,CAAC;AAE7B,OAAO,EAEL,KAAK,yBAAyB,EAC9B,KAAK,SAAS,EACd,KAAK,UAAU,EAChB,MAAM,mBAAmB,CAAC;AAI3B,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,GAAG,CAAQ;IACnB,OAAO,CAAC,IAAI,CAAc;IAC1B,OAAO,CAAC,IAAI,CAAiB;IAC7B,OAAO,CAAC,cAAc,CAAoC;IAC1D,OAAO,CAAC,SAAS,CAA4B;IAC7C,OAAO,CAAC,KAAK,CAAuB;IACpC,OAAO,CAAC,IAAI,CAAqB;IACjC,OAAO,CAAC,QAAQ,CAAC,CAAa;IAC9B,OAAO,CAAC,SAAS,CAAC,CAAa;IAC/B,OAAO,CAAC,SAAS,CAA+B;IAChD,OAAO,CAAC,UAAU,CAA+B;IACjD,OAAO,CAAC,WAAW,CAA0B;IAC7C,OAAO,CAAC,eAAe,CAAa;gBAGlC,GAAG,EAAE,CAAC,CAAC,GAAG,EACV,SAAS,EAAE,yBAAyB,EACpC,IAAI,EAAE,OAAO,GAAG,QAAQ,EACxB,QAAQ,CAAC,EAAE,MAAM,IAAI,EACrB,SAAS,CAAC,EAAE,MAAM,IAAI;IAsBxB,OAAO,IAAI,IAAI;IAQf,MAAM,CAAC,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,UAAU,EAAE,QAAQ,GAAE,MAAU,GAAG,IAAI;IAgBtE,OAAO,CAAC,MAAM;IAgGd,OAAO,CAAC,eAAe;IAuBvB,OAAO,CAAC,SAAS;IAmBjB,OAAO,CAAC,MAAM;IAMd,OAAO,CAAC,OAAO;IAkBf,OAAO,CAAC,kBAAkB;IAQ1B,OAAO,CAAC,qBAAqB;IAsG7B,OAAO,CAAC,WAAW;IAKnB,OAAO,CAAC,WAAW;CAIpB"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Types and enums for polygon transform mode (Leaflet v1/v2 compatible).
|
|
3
|
+
*/
|
|
4
|
+
import type * as L from 'leaflet';
|
|
5
|
+
export declare enum TransformHandleType {
|
|
6
|
+
TopLeft = "top-left",
|
|
7
|
+
Top = "top",
|
|
8
|
+
TopRight = "top-right",
|
|
9
|
+
Right = "right",
|
|
10
|
+
BottomRight = "bottom-right",
|
|
11
|
+
Bottom = "bottom",
|
|
12
|
+
BottomLeft = "bottom-left",
|
|
13
|
+
Left = "left",
|
|
14
|
+
Rotate = "rotate",
|
|
15
|
+
Pivot = "pivot"
|
|
16
|
+
}
|
|
17
|
+
export type PixelPoint = {
|
|
18
|
+
x: number;
|
|
19
|
+
y: number;
|
|
20
|
+
};
|
|
21
|
+
export interface PixelBBox {
|
|
22
|
+
minX: number;
|
|
23
|
+
minY: number;
|
|
24
|
+
maxX: number;
|
|
25
|
+
maxY: number;
|
|
26
|
+
}
|
|
27
|
+
export interface TransformState {
|
|
28
|
+
isActive: boolean;
|
|
29
|
+
originalLatLngs: L.LatLng[] | L.LatLng[][] | L.LatLng[][][];
|
|
30
|
+
originalPixelRings: PixelPoint[][][];
|
|
31
|
+
pivot: PixelPoint;
|
|
32
|
+
scaleX: number;
|
|
33
|
+
scaleY: number;
|
|
34
|
+
rotation: number;
|
|
35
|
+
uniformScale: boolean;
|
|
36
|
+
snapRotation: boolean;
|
|
37
|
+
scaleFromPivot: boolean;
|
|
38
|
+
}
|
|
39
|
+
export interface TransformOverlayCallbacks {
|
|
40
|
+
onStartHandleDrag: (type: TransformHandleType, start: PixelPoint, evt: MouseEvent) => void;
|
|
41
|
+
onDragHandle: (type: TransformHandleType, current: PixelPoint, evt: MouseEvent) => void;
|
|
42
|
+
onEndHandleDrag: (type: TransformHandleType, end: PixelPoint, evt: MouseEvent) => void;
|
|
43
|
+
}
|
|
44
|
+
//# sourceMappingURL=transform-types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"transform-types.d.ts","sourceRoot":"","sources":["../../../src/transform/transform-types.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,KAAK,CAAC,MAAM,SAAS,CAAC;AAElC,oBAAY,mBAAmB;IAC7B,OAAO,aAAa;IACpB,GAAG,QAAQ;IACX,QAAQ,cAAc;IACtB,KAAK,UAAU;IACf,WAAW,iBAAiB;IAC5B,MAAM,WAAW;IACjB,UAAU,gBAAgB;IAC1B,IAAI,SAAS;IACb,MAAM,WAAW;IACjB,KAAK,UAAU;CAChB;AAED,MAAM,MAAM,UAAU,GAAG;IAAE,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAElD,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,cAAc;IAC7B,QAAQ,EAAE,OAAO,CAAC;IAClB,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,EAAE,CAAC;IAC5D,kBAAkB,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC;IACrC,KAAK,EAAE,UAAU,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,OAAO,CAAC;IACtB,YAAY,EAAE,OAAO,CAAC;IACtB,cAAc,EAAE,OAAO,CAAC;CACzB;AAED,MAAM,WAAW,yBAAyB;IACxC,iBAAiB,EAAE,CAAC,IAAI,EAAE,mBAAmB,EAAE,KAAK,EAAE,UAAU,EAAE,GAAG,EAAE,UAAU,KAAK,IAAI,CAAC;IAC3F,YAAY,EAAE,CAAC,IAAI,EAAE,mBAAmB,EAAE,OAAO,EAAE,UAAU,EAAE,GAAG,EAAE,UAAU,KAAK,IAAI,CAAC;IACxF,eAAe,EAAE,CAAC,IAAI,EAAE,mBAAmB,EAAE,GAAG,EAAE,UAAU,EAAE,GAAG,EAAE,UAAU,KAAK,IAAI,CAAC;CACxF"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Math and conversion helpers for transform mode.
|
|
3
|
+
* All transforms happen in pixel space and then convert back to lat/lng.
|
|
4
|
+
*/
|
|
5
|
+
import * as L from 'leaflet';
|
|
6
|
+
import type { PixelPoint, PixelBBox } from './transform-types';
|
|
7
|
+
export declare function latLngToPixel(map: L.Map, ll: L.LatLngLiteral): PixelPoint;
|
|
8
|
+
export declare function pixelToLatLng(map: L.Map, p: PixelPoint): L.LatLngLiteral;
|
|
9
|
+
export declare function getPixelBBox(rings: PixelPoint[][][]): PixelBBox;
|
|
10
|
+
export declare function getPixelCentroid(bbox: PixelBBox): PixelPoint;
|
|
11
|
+
/**
|
|
12
|
+
* Converts a bounding box to a square, centering the original content.
|
|
13
|
+
*/
|
|
14
|
+
export declare function squareBBox(bbox: PixelBBox): PixelBBox;
|
|
15
|
+
export declare function rotatePointAround(p: PixelPoint, pivot: PixelPoint, radians: number): PixelPoint;
|
|
16
|
+
export declare function scalePointAround(p: PixelPoint, pivot: PixelPoint, scaleX: number, scaleY: number): PixelPoint;
|
|
17
|
+
export declare function applyTransform(rings: PixelPoint[][][], pivot: PixelPoint, scaleX: number, scaleY: number, rotation: number): PixelPoint[][][];
|
|
18
|
+
export declare function ensureClosedLatLngRing(ll: L.LatLngLiteral[]): L.LatLngLiteral[];
|
|
19
|
+
export declare function normalizeLatLngs(input: L.LatLng[] | L.LatLng[][] | L.LatLng[][][]): L.LatLng[][][];
|
|
20
|
+
export declare function projectLatLngs(map: L.Map, latLngs: L.LatLng[][][]): {
|
|
21
|
+
rings: PixelPoint[][][];
|
|
22
|
+
ringLengths: number[][];
|
|
23
|
+
};
|
|
24
|
+
export declare function unprojectToLatLngs(map: L.Map, rings: PixelPoint[][][], templateLatLngs: L.LatLng[][][]): L.LatLngLiteral[][][];
|
|
25
|
+
export declare function snapAngleRadians(angle: number, stepDeg?: number): number;
|
|
26
|
+
//# sourceMappingURL=transform-utils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"transform-utils.d.ts","sourceRoot":"","sources":["../../../src/transform/transform-utils.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,KAAK,CAAC,MAAM,SAAS,CAAC;AAE7B,OAAO,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAE/D,wBAAgB,aAAa,CAAC,GAAG,EAAE,CAAC,CAAC,GAAG,EAAE,EAAE,EAAE,CAAC,CAAC,aAAa,GAAG,UAAU,CAGzE;AAED,wBAAgB,aAAa,CAAC,GAAG,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,UAAU,GAAG,CAAC,CAAC,aAAa,CAGxE;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE,UAAU,EAAE,EAAE,EAAE,GAAG,SAAS,CAgB/D;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,SAAS,GAAG,UAAU,CAE5D;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,SAAS,GAAG,SAAS,CAarD;AAED,wBAAgB,iBAAiB,CAAC,CAAC,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,GAAG,UAAU,CAM/F;AAED,wBAAgB,gBAAgB,CAC9B,CAAC,EAAE,UAAU,EACb,KAAK,EAAE,UAAU,EACjB,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,GACb,UAAU,CAIZ;AAED,wBAAgB,cAAc,CAC5B,KAAK,EAAE,UAAU,EAAE,EAAE,EAAE,EACvB,KAAK,EAAE,UAAU,EACjB,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,GACf,UAAU,EAAE,EAAE,EAAE,CAQlB;AAED,wBAAgB,sBAAsB,CAAC,EAAE,EAAE,CAAC,CAAC,aAAa,EAAE,GAAG,CAAC,CAAC,aAAa,EAAE,CAM/E;AAED,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,EAAE,GAChD,CAAC,CAAC,MAAM,EAAE,EAAE,EAAE,CAehB;AAED,wBAAgB,cAAc,CAC5B,GAAG,EAAE,CAAC,CAAC,GAAG,EACV,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,EAAE,GACtB;IAAE,KAAK,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC;IAAC,WAAW,EAAE,MAAM,EAAE,EAAE,CAAA;CAAE,CAetD;AAED,wBAAgB,kBAAkB,CAChC,GAAG,EAAE,CAAC,CAAC,GAAG,EACV,KAAK,EAAE,UAAU,EAAE,EAAE,EAAE,EACvB,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,EAAE,GAC9B,CAAC,CAAC,aAAa,EAAE,EAAE,EAAE,CAiBvB;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,SAAK,GAAG,MAAM,CAGpE"}
|