Commit Graph

502 Commits

Author SHA1 Message Date
James Lyne
552b289bb9 Avoid recreating tiles from scratch when refreshing Pl3xmap 2021-08-16 03:33:28 +01:00
James Lyne
f316c0dd50 Use fetch for tile loads, move loading logic to LiveAtlasTileLayer 2021-08-16 03:08:35 +01:00
James Lyne
280e036276 Basic support for Pl3xmap tile update interval 2021-08-13 23:51:03 +01:00
James Lyne
13260bbfeb Fix placeholders in Pl3xmap page title 2021-08-12 14:27:39 +01:00
James Lyne
6aa9aaf2bd Only set config hash if present in update response
Prevents infinite reloading if the update response doesn't contain a hash for some reason
2021-08-03 02:26:43 +01:00
James Lyne
eba8a5b7e1 Fix incorrect player head URL (Fixes #2) 2021-08-02 17:12:29 +01:00
James Lyne
b143fc1561 Player list heading fixes 2021-07-29 19:16:37 +01:00
James Lyne
f4aca39975 Fix incorrect Dynmap player head URL generation 2021-07-29 19:05:33 +01:00
James Lyne
2ff16c81ed Merge remote-tracking branch 'origin/master' 2021-07-29 18:20:05 +01:00
James Lyne
e07ac55c33 Merge branch 'pl3xmap'
# Conflicts:
#	src/api.ts
#	src/components/Map.vue
#	src/components/map/layer/MapLayer.vue
#	src/components/map/layer/MarkerSetLayer.vue
#	src/components/map/vector/Areas.vue
#	src/components/map/vector/Circles.vue
#	src/components/map/vector/Lines.vue
#	src/components/map/vector/Markers.vue
#	src/components/sidebar/WorldListItem.vue
#	src/dynmap.d.ts
#	src/index.d.ts
#	src/leaflet/icon/GenericIcon.ts
#	src/leaflet/layer/LiveAtlasLayerGroup.ts
#	src/leaflet/tileLayer/DynmapTileLayer.ts
#	src/leaflet/vector/LiveAtlasPolygon.ts
#	src/leaflet/vector/LiveAtlasPolyline.ts
#	src/model/LiveAtlasMapDefinition.ts
#	src/model/LiveAtlasProjection.ts
#	src/store/actions.ts
#	src/store/getters.ts
#	src/store/state.ts
#	src/util.ts
#	src/util/areas.ts
#	src/util/circles.ts
#	src/util/lines.ts
#	src/util/markers.ts
2021-07-29 18:15:35 +01:00
James Lyne
38946d7015 Initial pl3xmap support 2021-07-29 18:06:19 +01:00
James Lyne
a7fa366635 Create marker labels lazily when showLabels is false 2021-07-29 17:46:11 +01:00
James Lyne
f5002ed828
Fix URL zoom being ignored on initial load (Fixes #59) 2021-07-29 14:14:01 +01:00
James Lyne
02c705de36 Fix build errors 2021-07-29 03:39:28 +01:00
James Lyne
90ec2080ee Add tooltip support 2021-07-29 03:06:05 +01:00
James Lyne
d05b7a63ac Use playerMarkers.layerName for the layer name 2021-07-29 00:34:40 +01:00
James Lyne
ee8607ed6d Fix player layer duplicating in some situations 2021-07-29 00:34:18 +01:00
James Lyne
8151dfaab5 Make followZoom optional 2021-07-28 23:52:51 +01:00
James Lyne
b3f186a197 Move grayHiddenPlayers to playerMarkers component 2021-07-28 23:52:03 +01:00
James Lyne
7bff12b729 Move maxPlayers to separate field in store, add mutation 2021-07-28 23:50:59 +01:00
James Lyne
4feb46c641 Move player count/max into playersHeading 2021-07-28 22:27:43 +01:00
James Lyne
4350fae1d5 Fix uuid handling in player map 2021-07-28 22:17:02 +01:00
James Lyne
110c75f9a3 Allow partial updates of component settings 2021-07-28 22:16:26 +01:00
James Lyne
d04226e3ec Refactor popup handling
- Merge label and popupContent properties for vector layers, as only one is ever used
- Move common vector methods to separate file and remove duplicates
- Rename isHTML properties to be clearer
2021-07-28 17:49:38 +01:00
James Lyne
2a216dd4e8 Path performance improvements
- Avoid intermediate objects when creating leaflet objects to reduce allocations
- Make individual path objects non-reactive
- Avoid projecting path points twice during updates
2021-07-28 04:04:47 +01:00
James Lyne
9517de0760 Path point handling changes
- Store path points as {x,y,z} objects instead of separate arrays
- Project point objects right before layer creation
- A bit slower overall but matches the format of Pl3xmap path points.
2021-07-28 04:04:46 +01:00
James Lyne
c69aeb8f5f Make map definitions non-reactive to improve projection performance 2021-07-27 04:31:43 +01:00
James Lyne
42f8cbd74b Show maps button if there is a single map but multiple servers 2021-07-27 02:36:24 +01:00
James Lyne
d37657d3e2 Prevent unnecessary marker repositioning on world change 2021-07-27 02:28:01 +01:00
James Lyne
0aa61517dc Set the correct world object in map definitions 2021-07-26 01:05:08 +01:00
James Lyne
5cf353cd8a Update license headers 2021-07-26 01:05:08 +01:00
James Lyne
9e2caa6f63 More type renaming 2021-07-26 01:05:08 +01:00
James Lyne
5fb0a3e2f4 Move night/update handling into DynmapTileLayer 2021-07-26 01:05:07 +01:00
James Lyne
355c0c71cf Restructure LiveAtlasServerDefinition 2021-07-26 01:05:07 +01:00
James Lyne
e61d0def04 Replace serverConfig getter with MapProvider url methods 2021-07-26 01:05:07 +01:00
James Lyne
e7945b3f9a Add fields to DynmapTileLayer 2021-07-26 01:05:07 +01:00
James Lyne
e4e7dfcd5f Move fetchJSON to abstract MapProvider 2021-07-26 01:05:07 +01:00
James Lyne
ad9af04e9e Rename world/map title to displayName 2021-07-26 01:05:05 +01:00
James Lyne
c202def955 Move login from configuration to components 2021-07-26 01:04:18 +01:00
James Lyne
e46a97df15 Fix scheduledZoom/scheduledPan handling on map change 2021-07-26 01:04:18 +01:00
James Lyne
0c1ca36be1 Fix build 2021-07-26 01:04:18 +01:00
James Lyne
bc38af3254 Use generic names for more types 2021-07-26 01:04:18 +01:00
James Lyne
cba4b33e1a Refactor DynmapMapProvider.ts 2021-07-26 01:04:18 +01:00
James Lyne
e809f28455 (Re)move some config store properties 2021-07-26 01:04:18 +01:00
James Lyne
1d27e05f7c Rename DynmapPlayer to LiveAtlasPlayer, rename some fields, add uuid field 2021-07-26 01:04:18 +01:00
James Lyne
44b3a7e276 Remove updateInterval from store 2021-07-26 01:04:18 +01:00
James Lyne
33b5b305e2 Add MapProvider, move dynmap api handling to DynmapMapProvider 2021-07-26 01:04:17 +01:00
James Lyne
c99215e259 Use generic names for extended leaflet classes 2021-07-26 01:04:17 +01:00
James Lyne
ef26d78c19 Refactor map handling
- Map definitions now have their own class
- A map's projection is now a private property of the instance. Coordinates are converted via map instance methods.
- Moved map icon handling to instance getter
- Removed currentProjection and related mutations from store
- Changed currentProjection watchers to currentMap
2021-07-26 01:04:13 +01:00
James Lyne
9021c5291d Use generic names for extended leaflet classes 2021-07-23 22:28:06 +01:00
James Lyne
c7ec76767e Refactor map handling
- Map definitions now have their own class
- A map's projection is now a private property of the instance. Coordinates are converted via map instance methods.
- Moved map icon handling to instance getter
- Removed currentProjection and related mutations from store
- Changed currentProjection watchers to currentMap
2021-07-23 20:42:18 +01:00
James Lyne
b9807b3a7b Fix config validation 2021-07-22 23:18:26 +01:00
James Lyne
dd17bc63bd Avoid applying the base background colour twice to buttons in leaflet-controls 2021-07-22 23:18:18 +01:00
James Lyne
01907f22a0 Fix players button title 2021-07-22 20:47:37 +01:00
James Lyne
8b064f6217 Fix misaligned sidebar buttons on landscape mobile 2021-07-22 03:10:29 +01:00
James Lyne
636bebd237 Focus style improvements
- Replace js :focus-visible polyfill with css
- Improve fallback :focus styles
2021-07-22 02:48:09 +01:00
James Lyne
79dfea446b More lenient nether regex 2021-07-21 21:24:15 +01:00
James Lyne
2f107b2126 Add world dimension property 2021-07-21 17:27:24 +01:00
James Lyne
ea181f3a0b Tweak mobile sidebar padding 2021-07-21 16:54:53 +01:00
James Lyne
f2b810f56b Reduce layer list padding 2021-07-21 16:19:39 +01:00
James Lyne
028cb4e1af Player list search 2021-07-21 16:19:18 +01:00
James Lyne
649f571a20 Configuration improvements
- Default playersAboveMarkers to true to match previous behaviour
- Move all window.liveAtlasConfig handling to main.ts and a single mutation
- Rename server configuration mutations to differentiate server and global configurations
2021-07-20 21:18:41 +01:00
James Lyne
c67db75586 Fix typo 2021-07-20 20:37:42 +01:00
James Lyne
fbe252472f Add setting for displaying players above/below other markers (Fixes #14) 2021-07-20 20:27:07 +01:00
James Lyne
2598f1794e Hidden player fixes
- Don't apply other-world class for hidden players
- Use opacity instead of grayscale for player name to preserve colours (Fixes #40)
2021-07-20 16:32:10 +01:00
James Lyne
92a854701a Update map, pan and zoom if the url is edited manually 2021-07-20 03:25:42 +01:00
James Lyne
9bea4519c6 Rename some types 2021-07-19 16:40:30 +01:00
James Lyne
ee910453d5 Make menu buttons transparent by default properly 2021-07-19 00:37:57 +01:00
James Lyne
bfe3814aa9 Make menu buttons transparent by default 2021-07-19 00:35:42 +01:00
James Lyne
0081dcfa3a Override player name colours when hovering etc 2021-06-23 22:59:48 +01:00
James Lyne
d39a17d627 Increase sidebar width a bit 2021-06-23 22:57:47 +01:00
James Lyne
8fd92267b8 Fix long player name display in sidebar 2021-06-23 22:57:34 +01:00
James Lyne
14a49126f2 Cleanup 2021-06-23 18:19:09 +01:00
James Lyne
f9e55ff673 Hide player list when playermarkers component is disabled (Fixes #21) 2021-06-23 18:18:42 +01:00
James Lyne
362ac3cbdc Respect --border-radius in zoom control (Fixes #36) 2021-06-23 17:57:52 +01:00
James Lyne
006a536a89 Sort player list by dynmap sort value, then alphabetically (Fixes #37) 2021-06-23 17:40:56 +01:00
James Lyne
e130aaead1 Fix sidebar button positioning on wide short mobile resolutions 2021-06-22 18:55:39 +01:00
James Lyne
c2a43f6414 Fix indentation 2021-06-22 18:25:19 +01:00
James Lyne
0698085d98 Improve display of long layer names (Fixes #32) 2021-06-22 18:24:22 +01:00
James Lyne
72ea95d52b Hide context menu map list when there's no other maps to switch to 2021-06-13 01:16:32 +01:00
James Lyne
ae9358bdbe Fix build 2021-06-13 01:09:33 +01:00
James Lyne
bd8fe7ba5e Update PlayerListItem.vue 2021-06-13 01:06:58 +01:00
James Lyne
a623179039 Respect dynmap append_to_world setting (Fixes #28) 2021-06-13 00:52:56 +01:00
James Lyne
c65da2ad03 Use surface icon for maps named "surface" in nether/end worlds 2021-06-13 00:40:03 +01:00
James Lyne
693de26b8c Fix outlined 2d box area update handing (Fixes #29) 2021-06-12 23:37:02 +01:00
James Lyne
ce80666949 Remove max marker width 2021-06-12 22:48:42 +01:00
James Lyne
66477288d5 Revert deprecation fix as it breaks the loading control 2021-05-29 02:35:39 +01:00
James Lyne
c76d1c1e49 Mobile notification styles 2021-05-29 01:34:53 +01:00
James Lyne
326ca094c8 Various zindex fixes 2021-05-29 01:34:45 +01:00
James Lyne
701f27fee6 Fix control spacing on right side of map 2021-05-29 00:52:28 +01:00
James Lyne
6b12ca0b11 Improve mobile context menu 2021-05-29 00:52:08 +01:00
James Lyne
5b1df5ccf8 Customisable copy to clipboard messages 2021-05-29 00:38:29 +01:00
James Lyne
1f44f7e752 More keyboard handlers 2021-05-29 00:22:31 +01:00
James Lyne
34bacc044f Fix skeletons not collapsing 2021-05-29 00:09:00 +01:00
James Lyne
789505e2d9 Reimplement keyboard shortcuts more generically 2021-05-29 00:08:43 +01:00
James Lyne
0ca26beb8e Keyboard event handling and focus styles for layers 2021-05-28 23:25:55 +01:00
James Lyne
dd1a1b3c97 Context menu keyboard event handling and general improvements 2021-05-28 22:36:16 +01:00
James Lyne
2e1426e945 More generic keyboard event handling 2021-05-28 22:36:14 +01:00
James Lyne
ace8555a09 Customisable Layers button title 2021-05-28 21:28:21 +01:00
James Lyne
387c92e3cb Fix hot-reloading Map component 2021-05-28 19:50:08 +01:00
James Lyne
54742f90f9 Don't show context menu when right-clicking controls 2021-05-28 19:26:42 +01:00
James Lyne
af3ef17ec4 Make layers toggle on click like other UI elements 2021-05-28 19:14:06 +01:00
James Lyne
3cf9a01184 Fix WorldListItem check state again 2021-05-28 19:13:25 +01:00
James Lyne
63efb8c3c3 Reduce screenreader spam when showing splash screen errors 2021-05-28 15:55:44 +01:00
James Lyne
9e65a5859c Chatbox styling/accessibility improvements 2021-05-28 15:55:17 +01:00
James Lyne
aee164f8c0 Use global box shadow for popups 2021-05-28 15:21:05 +01:00
James Lyne
e28cc56a9a Prevent sidebar scroll chaining 2021-05-28 15:10:11 +01:00
James Lyne
74ccafefbc Fix build 2021-05-28 15:06:28 +01:00
James Lyne
eadca7acc8 Fix collapsible section button styling 2021-05-28 14:43:07 +01:00
James Lyne
af843cb536 Label radiogroups 2021-05-28 14:41:24 +01:00
James Lyne
a91944a75f Remove region from CollapsibleSection 2021-05-28 14:35:43 +01:00
James Lyne
fd82b6c527 Move skeletons outside of RadioList 2021-05-28 14:35:03 +01:00
James Lyne
6209a89092 WorldListItem screenreader improvements 2021-05-28 14:34:38 +01:00
James Lyne
020cde7f31 Fix sidebar skeleton styling 2021-05-28 00:20:05 +01:00
James Lyne
57133c5681 Use aria attributes for active etc states 2021-05-28 00:14:51 +01:00
James Lyne
dc4bb67a5e Radio button style fixes 2021-05-28 00:14:27 +01:00
James Lyne
d5ed9392a0 Use radio buttons for player list 2021-05-28 00:13:46 +01:00
James Lyne
97111f3bbc Use two way binding in server list 2021-05-28 00:13:11 +01:00
James Lyne
e3f64e720c Use radio buttons for map list 2021-05-28 00:12:41 +01:00
James Lyne
e1c56c201e Use radio buttons for server list 2021-05-27 18:18:26 +01:00
James Lyne
72772881b6 Split button placeholder into mixins for easier use with non-button elements 2021-05-27 17:34:14 +01:00
James Lyne
42d14ca5c9 Reorganise leaflet styles 2021-05-27 17:33:43 +01:00
James Lyne
8fb37cccec Prefix icon ids to avoid conflicts 2021-05-27 15:14:47 +01:00
James Lyne
c73e2682eb Fix some inspections 2021-05-27 14:52:26 +01:00
James Lyne
62ab0cf26e Save collapsed sections to localStorage 2021-05-27 01:42:53 +01:00
James Lyne
034a7a2fdb Split up Util.ts 2021-05-27 01:41:58 +01:00
James Lyne
1e38e24fb3 Fix build 2021-05-27 00:52:12 +01:00
James Lyne
a616a302e8 Move splash methods to Util 2021-05-27 00:50:34 +01:00
James Lyne
6f11542b33 Fix notification styles 2021-05-27 00:01:09 +01:00
James Lyne
7f9f8e2136 Keyboard shortcuts for Players/Maps buttons 2021-05-27 00:00:41 +01:00
James Lyne
a7ba49c2c2 Focus map on Esc 2021-05-26 23:55:50 +01:00
James Lyne
76fb05f0b2 Sidebar tweaks 2021-05-26 23:31:07 +01:00
James Lyne
9813054264 Customisable map aria label 2021-05-26 21:13:54 +01:00
James Lyne
cc5b1afb3e More accessibility things 2021-05-26 20:09:00 +01:00
James Lyne
364b765dd6 Use .value for computed prop 2021-05-26 18:49:34 +01:00
James Lyne
a05cfde9d7 Fix player keyboard interaction 2021-05-26 18:49:11 +01:00
James Lyne
c9fbe61d2b Browsers already do what these listeners were doing 2021-05-26 18:44:32 +01:00
James Lyne
dca535b826 Add arrow keys navigation for sidebar sections 2021-05-26 17:48:15 +01:00
James Lyne
b096240651 Use mutation for collapsed state updates 2021-05-26 17:43:15 +01:00
James Lyne
1fb28739cf Fix PlayerListItem keyboard interaction 2021-05-26 17:42:05 +01:00
James Lyne
1d506c81ac Use role=option/aria-pressed for server list 2021-05-26 15:32:02 +01:00
James Lyne
134ede6870 Fix build 2021-05-26 14:54:59 +01:00
James Lyne
cce1f79a4d More aria attributes 2021-05-26 03:07:24 +01:00
James Lyne
bbf057c84b ServerList keyboard controls 2021-05-26 03:04:37 +01:00
James Lyne
71edab6b74 Add icon to Collapsible sections 2021-05-26 02:10:34 +01:00
James Lyne
e65b70acc4 Use sans-serif for zoom buttons 2021-05-25 23:48:30 +01:00
James Lyne
b22e492099 Fix map focus covering buttons 2021-05-25 23:46:26 +01:00
James Lyne
88b27490cb Fix tabbing over section headings 2021-05-25 23:39:04 +01:00
James Lyne
e3233e3dfa Pan on marker click 2021-05-25 23:31:03 +01:00
James Lyne
36a2d483ff Various accessibility improvements 2021-05-25 23:28:43 +01:00