huweili-cesium 1.2.45 → 1.2.46
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/js/basis.js +65 -41
- package/package.json +1 -1
package/js/basis.js
CHANGED
|
@@ -918,6 +918,51 @@ export function basicConfig() {
|
|
|
918
918
|
btn.classList.toggle('is-collapsed', !isToolbarExpanded)
|
|
919
919
|
}
|
|
920
920
|
|
|
921
|
+
const startToolbarDrag = (event, btn) => {
|
|
922
|
+
const toolbar = btn?.parentElement
|
|
923
|
+
if (!toolbar) return
|
|
924
|
+
|
|
925
|
+
const startX = event.clientX
|
|
926
|
+
const startY = event.clientY
|
|
927
|
+
const rect = toolbar.getBoundingClientRect()
|
|
928
|
+
const startLeft = rect.left
|
|
929
|
+
const startTop = rect.top
|
|
930
|
+
let hasMoved = false
|
|
931
|
+
|
|
932
|
+
applyToolbarPosition(toolbar, startLeft, startTop)
|
|
933
|
+
|
|
934
|
+
const moveToolbar = (moveEvent) => {
|
|
935
|
+
const deltaX = moveEvent.clientX - startX
|
|
936
|
+
const deltaY = moveEvent.clientY - startY
|
|
937
|
+
|
|
938
|
+
if (Math.abs(deltaX) > 3 || Math.abs(deltaY) > 3) {
|
|
939
|
+
hasMoved = true
|
|
940
|
+
isToolbarDragging = true
|
|
941
|
+
}
|
|
942
|
+
|
|
943
|
+
applyToolbarPosition(toolbar, startLeft + deltaX, startTop + deltaY)
|
|
944
|
+
}
|
|
945
|
+
|
|
946
|
+
const stopDrag = () => {
|
|
947
|
+
window.removeEventListener('pointermove', moveToolbar)
|
|
948
|
+
window.removeEventListener('pointerup', stopDrag)
|
|
949
|
+
window.removeEventListener('pointercancel', stopDrag)
|
|
950
|
+
|
|
951
|
+
if (hasMoved) {
|
|
952
|
+
const currentRect = toolbar.getBoundingClientRect()
|
|
953
|
+
saveToolbarPosition(currentRect.left, currentRect.top)
|
|
954
|
+
|
|
955
|
+
window.setTimeout(() => {
|
|
956
|
+
isToolbarDragging = false
|
|
957
|
+
}, 0)
|
|
958
|
+
}
|
|
959
|
+
}
|
|
960
|
+
|
|
961
|
+
window.addEventListener('pointermove', moveToolbar)
|
|
962
|
+
window.addEventListener('pointerup', stopDrag)
|
|
963
|
+
window.addEventListener('pointercancel', stopDrag)
|
|
964
|
+
}
|
|
965
|
+
|
|
921
966
|
const setupToolbarDrag = (btn) => {
|
|
922
967
|
if (!btn || btn.dataset.toolbarDragReady === 'true') return
|
|
923
968
|
|
|
@@ -933,54 +978,33 @@ export function basicConfig() {
|
|
|
933
978
|
})
|
|
934
979
|
|
|
935
980
|
btn.addEventListener('pointerdown', (event) => {
|
|
936
|
-
|
|
937
|
-
|
|
938
|
-
|
|
939
|
-
const startX = event.clientX
|
|
940
|
-
const startY = event.clientY
|
|
941
|
-
const rect = toolbar.getBoundingClientRect()
|
|
942
|
-
const startLeft = rect.left
|
|
943
|
-
const startTop = rect.top
|
|
944
|
-
let hasMoved = false
|
|
945
|
-
|
|
946
|
-
applyToolbarPosition(toolbar, startLeft, startTop)
|
|
947
|
-
|
|
948
|
-
const moveToolbar = (moveEvent) => {
|
|
949
|
-
const deltaX = moveEvent.clientX - startX
|
|
950
|
-
const deltaY = moveEvent.clientY - startY
|
|
951
|
-
|
|
952
|
-
if (Math.abs(deltaX) > 3 || Math.abs(deltaY) > 3) {
|
|
953
|
-
hasMoved = true
|
|
954
|
-
isToolbarDragging = true
|
|
955
|
-
}
|
|
956
|
-
|
|
957
|
-
applyToolbarPosition(toolbar, startLeft + deltaX, startTop + deltaY)
|
|
958
|
-
}
|
|
959
|
-
|
|
960
|
-
const stopDrag = () => {
|
|
961
|
-
window.removeEventListener('pointermove', moveToolbar)
|
|
962
|
-
window.removeEventListener('pointerup', stopDrag)
|
|
963
|
-
window.removeEventListener('pointercancel', stopDrag)
|
|
981
|
+
startToolbarDrag(event, btn)
|
|
982
|
+
})
|
|
983
|
+
}
|
|
964
984
|
|
|
965
|
-
|
|
966
|
-
|
|
967
|
-
|
|
985
|
+
const findExpandButton = () => {
|
|
986
|
+
return document.querySelector('[data-toolbar-expand-toggle="true"]')
|
|
987
|
+
|| document.querySelector('[title="展开/折叠 工具栏"]')
|
|
988
|
+
|| document.querySelector('[title="展开"]')
|
|
989
|
+
|| document.querySelector('[title="收缩"]')
|
|
990
|
+
}
|
|
968
991
|
|
|
969
|
-
|
|
970
|
-
|
|
971
|
-
|
|
972
|
-
|
|
973
|
-
}
|
|
992
|
+
const setupBySelector = () => {
|
|
993
|
+
const btn = findExpandButton()
|
|
994
|
+
if (btn) setupToolbarDrag(btn)
|
|
995
|
+
}
|
|
974
996
|
|
|
975
|
-
|
|
976
|
-
|
|
977
|
-
|
|
978
|
-
})
|
|
997
|
+
if (typeof window !== 'undefined' && typeof document !== 'undefined') {
|
|
998
|
+
window.requestAnimationFrame(setupBySelector)
|
|
999
|
+
window.setTimeout(setupBySelector, 300)
|
|
979
1000
|
}
|
|
980
1001
|
|
|
981
1002
|
return {
|
|
982
1003
|
toggleExpand: (_viewer, btn) => {
|
|
983
|
-
|
|
1004
|
+
if (btn) {
|
|
1005
|
+
btn.dataset.toolbarExpandToggle = 'true'
|
|
1006
|
+
setupToolbarDrag(btn)
|
|
1007
|
+
}
|
|
984
1008
|
},
|
|
985
1009
|
setupToolbarDrag,
|
|
986
1010
|
applyToggleExpand,
|