@league-of-foundry-developers/foundry-vtt-types 12.331.2-beta → 12.331.4-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.
- package/README.md +17 -18
- package/package.json +73 -32
- package/src/configuration/configuration.d.mts +316 -0
- package/src/configuration/documents.d.mts +295 -0
- package/src/configuration/globals.d.mts +357 -0
- package/src/configuration/index.d.mts +5 -0
- package/src/foundry/client/apps/app.d.mts +129 -122
- package/src/foundry/client/apps/av/av-config.d.mts +12 -7
- package/src/foundry/client/apps/av/cameras.d.mts +12 -7
- package/src/foundry/client/apps/dice/dice-config.d.mts +59 -0
- package/src/foundry/client/apps/dice/index.d.mts +1 -0
- package/src/foundry/client/apps/form.d.mts +114 -86
- package/src/foundry/client/apps/forms/actor.d.mts +21 -11
- package/src/foundry/client/apps/forms/adventure-exporter.d.mts +12 -7
- package/src/foundry/client/apps/forms/adventure-importer.d.mts +14 -6
- package/src/foundry/client/apps/forms/base-sheet.d.mts +16 -8
- package/src/foundry/client/apps/forms/card-config.d.mts +16 -8
- package/src/foundry/client/apps/forms/cards-config.d.mts +15 -14
- package/src/foundry/client/apps/forms/combat-config.d.mts +7 -7
- package/src/foundry/client/apps/forms/combatant-config.d.mts +3 -3
- package/src/foundry/client/apps/forms/default-sheets-config.d.mts +1 -1
- package/src/foundry/client/apps/forms/effect-config.d.mts +7 -7
- package/src/foundry/client/apps/forms/folder-config.d.mts +5 -5
- package/src/foundry/client/apps/forms/fonts.d.mts +42 -35
- package/src/foundry/client/apps/forms/grid-config.d.mts +12 -17
- package/src/foundry/client/apps/forms/image-popout.d.mts +29 -23
- package/src/foundry/client/apps/forms/item.d.mts +9 -9
- package/src/foundry/client/apps/forms/journal-page-sheet.d.mts +16 -14
- package/src/foundry/client/apps/forms/journal-sheet.d.mts +48 -38
- package/src/foundry/client/apps/forms/macro-config.d.mts +7 -7
- package/src/foundry/client/apps/forms/measure-template.d.mts +10 -12
- package/src/foundry/client/apps/forms/ownership.d.mts +5 -5
- package/src/foundry/client/apps/forms/playlist-config.d.mts +8 -10
- package/src/foundry/client/apps/forms/playlist-sound-config.d.mts +7 -7
- package/src/foundry/client/apps/forms/roll-table-config.d.mts +11 -10
- package/src/foundry/client/apps/forms/scene-config.d.mts +40 -41
- package/src/foundry/client/apps/forms/sheet-config.d.mts +9 -21
- package/src/foundry/client/apps/forms/user-config.d.mts +13 -12
- package/src/foundry/client/apps/hud/chatbubble.d.mts +18 -6
- package/src/foundry/client/apps/hud/container.d.mts +4 -4
- package/src/foundry/client/apps/hud/controls.d.mts +126 -81
- package/src/foundry/client/apps/hud/hotbar.d.mts +17 -12
- package/src/foundry/client/apps/hud/hud.d.mts +5 -5
- package/src/foundry/client/apps/hud/menu.d.mts +10 -3
- package/src/foundry/client/apps/hud/navigation.d.mts +14 -9
- package/src/foundry/client/apps/hud/pause.d.mts +9 -4
- package/src/foundry/client/apps/hud/players.d.mts +14 -9
- package/src/foundry/client/apps/i18n.d.mts +34 -27
- package/src/foundry/client/apps/index.d.mts +1 -0
- package/src/foundry/client/apps/placeables/drawing-config.d.mts +41 -33
- package/src/foundry/client/apps/placeables/drawing-hud.d.mts +5 -5
- package/src/foundry/client/apps/placeables/index.d.mts +0 -2
- package/src/foundry/client/apps/placeables/note-config.d.mts +28 -18
- package/src/foundry/client/apps/placeables/tile-config.d.mts +23 -10
- package/src/foundry/client/apps/placeables/tile-hud.d.mts +10 -5
- package/src/foundry/client/apps/placeables/token-config.d.mts +91 -58
- package/src/foundry/client/apps/placeables/token-hud.d.mts +12 -7
- package/src/foundry/client/apps/placeables/wall-config.d.mts +21 -17
- package/src/foundry/client/apps/sidebar/apps/chat-popout.d.mts +5 -5
- package/src/foundry/client/apps/sidebar/apps/client-settings.d.mts +3 -3
- package/src/foundry/client/apps/sidebar/apps/compendium.d.mts +15 -13
- package/src/foundry/client/apps/sidebar/apps/invitation-links.d.mts +3 -3
- package/src/foundry/client/apps/sidebar/apps/keybindings-config.d.mts +3 -2
- package/src/foundry/client/apps/sidebar/apps/module-management.d.mts +6 -6
- package/src/foundry/client/apps/sidebar/apps/permission-config.d.mts +6 -6
- package/src/foundry/client/apps/sidebar/apps/support-details.d.mts +34 -29
- package/src/foundry/client/apps/sidebar/apps/tours-management.d.mts +2 -2
- package/src/foundry/client/apps/sidebar/apps/world-config.d.mts +13 -10
- package/src/foundry/client/apps/sidebar/directory-tab-mixin.d.mts +50 -35
- package/src/foundry/client/apps/sidebar/document-directory.d.mts +52 -38
- package/src/foundry/client/apps/sidebar/package-configuration.d.mts +4 -4
- package/src/foundry/client/apps/sidebar/sidebar-tab.d.mts +3 -3
- package/src/foundry/client/apps/sidebar/sidebar.d.mts +9 -4
- package/src/foundry/client/apps/sidebar/tabs/actors-directory.d.mts +11 -2
- package/src/foundry/client/apps/sidebar/tabs/cards-directory.d.mts +11 -2
- package/src/foundry/client/apps/sidebar/tabs/chat-log.d.mts +39 -27
- package/src/foundry/client/apps/sidebar/tabs/combat-tracker.d.mts +21 -12
- package/src/foundry/client/apps/sidebar/tabs/compendium-directory.d.mts +30 -15
- package/src/foundry/client/apps/sidebar/tabs/items-directory.d.mts +11 -2
- package/src/foundry/client/apps/sidebar/tabs/journal-directory.d.mts +11 -2
- package/src/foundry/client/apps/sidebar/tabs/macros-directory.d.mts +14 -5
- package/src/foundry/client/apps/sidebar/tabs/playlists-directory.d.mts +30 -22
- package/src/foundry/client/apps/sidebar/tabs/roll-table-directory.d.mts +11 -2
- package/src/foundry/client/apps/sidebar/tabs/scenes-directory.d.mts +14 -5
- package/src/foundry/client/apps/sidebar/tabs/settings.d.mts +23 -5
- package/src/foundry/client/apps/templates.d.mts +6 -2
- package/src/foundry/client/av/client.d.mts +1 -1
- package/src/foundry/client/av/clients/simplepeer.d.mts +11 -1
- package/src/foundry/client/av/master.d.mts +2 -2
- package/src/foundry/client/av/settings.d.mts +17 -15
- package/src/foundry/client/config.d.mts +444 -314
- package/src/foundry/client/core/document-index.d.mts +11 -3
- package/src/foundry/client/core/hooks.d.mts +2 -4
- package/src/foundry/client/core/image.d.mts +92 -42
- package/src/foundry/client/core/issues.d.mts +9 -4
- package/src/foundry/client/core/keybindings.d.mts +5 -5
- package/src/foundry/client/core/nue.d.mts +1 -1
- package/src/foundry/client/core/packages.d.mts +397 -61
- package/src/foundry/client/core/settings.d.mts +62 -38
- package/src/foundry/client/core/socket.d.mts +2 -2
- package/src/foundry/client/core/sorting.d.mts +6 -6
- package/src/foundry/client/core/time.d.mts +6 -3
- package/src/foundry/client/core/tooltip.d.mts +2 -2
- package/src/foundry/client/core/tour.d.mts +59 -50
- package/src/foundry/client/core/tours.d.mts +1 -1
- package/src/foundry/client/core/utils.d.mts +33 -10
- package/src/foundry/client/core/video.d.mts +1 -1
- package/src/foundry/client/core/workers.d.mts +24 -17
- package/src/foundry/client/data/abstract/canvas-document.d.mts +21 -17
- package/src/foundry/client/data/abstract/client-document.d.mts +153 -183
- package/src/foundry/client/data/abstract/directory-collection-mixin.d.mts +23 -39
- package/src/foundry/client/data/abstract/document-collection.d.mts +96 -68
- package/src/foundry/client/data/abstract/world-collection.d.mts +48 -56
- package/src/foundry/client/data/collections/actors.d.mts +30 -28
- package/src/foundry/client/data/collections/cards.d.mts +16 -3
- package/src/foundry/client/data/collections/combats.d.mts +18 -5
- package/src/foundry/client/data/collections/compendium-collection.d.mts +85 -101
- package/src/foundry/client/data/collections/compendium-folders.d.mts +6 -6
- package/src/foundry/client/data/collections/compendium-packs.d.mts +6 -6
- package/src/foundry/client/data/collections/fog.d.mts +16 -3
- package/src/foundry/client/data/collections/folder.d.mts +20 -6
- package/src/foundry/client/data/collections/items.d.mts +17 -4
- package/src/foundry/client/data/collections/journal.d.mts +22 -7
- package/src/foundry/client/data/collections/macros.d.mts +21 -19
- package/src/foundry/client/data/collections/messages.d.mts +19 -6
- package/src/foundry/client/data/collections/playlists.d.mts +17 -5
- package/src/foundry/client/data/collections/scenes.d.mts +24 -27
- package/src/foundry/client/data/collections/settings.d.mts +16 -3
- package/src/foundry/client/data/collections/tables.d.mts +18 -5
- package/src/foundry/client/data/collections/users.d.mts +19 -7
- package/src/foundry/client/data/documents/active-effect.d.mts +677 -85
- package/src/foundry/client/data/documents/actor-delta.d.mts +670 -27
- package/src/foundry/client/data/documents/actor.d.mts +718 -55
- package/src/foundry/client/data/documents/adventure.d.mts +480 -46
- package/src/foundry/client/data/documents/ambient-light.d.mts +423 -19
- package/src/foundry/client/data/documents/ambient-sound.d.mts +473 -14
- package/src/foundry/client/data/documents/card.d.mts +567 -36
- package/src/foundry/client/data/documents/cards.d.mts +744 -85
- package/src/foundry/client/data/documents/chat-message.d.mts +574 -42
- package/src/foundry/client/data/documents/combat.d.mts +699 -69
- package/src/foundry/client/data/documents/combatant.d.mts +504 -24
- package/src/foundry/client/data/documents/drawing.d.mts +540 -14
- package/src/foundry/client/data/documents/fog-exploration.d.mts +416 -21
- package/src/foundry/client/data/documents/folder.d.mts +468 -30
- package/src/foundry/client/data/documents/index.d.mts +2 -0
- package/src/foundry/client/data/documents/item.d.mts +677 -20
- package/src/foundry/client/data/documents/journal-entry-page.d.mts +585 -19
- package/src/foundry/client/data/documents/journal-entry.d.mts +619 -18
- package/src/foundry/client/data/documents/macro.d.mts +528 -25
- package/src/foundry/client/data/documents/measured-template.d.mts +478 -14
- package/src/foundry/client/data/documents/note.d.mts +491 -15
- package/src/foundry/client/data/documents/playlist-sound.d.mts +426 -24
- package/src/foundry/client/data/documents/playlist.d.mts +665 -74
- package/src/foundry/client/data/documents/region-behavior.d.mts +507 -0
- package/src/foundry/client/data/documents/region.d.mts +784 -0
- package/src/foundry/client/data/documents/scene.d.mts +983 -140
- package/src/foundry/client/data/documents/setting.d.mts +395 -13
- package/src/foundry/client/data/documents/table-result.d.mts +476 -14
- package/src/foundry/client/data/documents/table.d.mts +661 -78
- package/src/foundry/client/data/documents/tile.d.mts +499 -14
- package/src/foundry/client/data/documents/token.d.mts +1110 -97
- package/src/foundry/client/data/documents/user.d.mts +493 -25
- package/src/foundry/client/data/documents/wall.d.mts +548 -14
- package/src/foundry/client/game.d.mts +62 -89
- package/src/foundry/client/head.d.mts +9 -9
- package/src/foundry/client/hooks.d.mts +257 -237
- package/src/foundry/client/pixi/board.d.mts +111 -104
- package/src/foundry/client/pixi/core/containers/base-canvas-group.d.mts +97 -25
- package/src/foundry/client/pixi/core/containers/cached-container.d.mts +37 -19
- package/src/foundry/client/pixi/core/containers/full-canvas-container.d.mts +7 -10
- package/src/foundry/client/pixi/core/containers/point-source-mesh.d.mts +25 -15
- package/src/foundry/client/pixi/core/containers/quad-mesh.d.mts +16 -6
- package/src/foundry/client/pixi/core/containers/quadtree.d.mts +113 -54
- package/src/foundry/client/pixi/core/containers/sprite-mesh.d.mts +69 -26
- package/src/foundry/client/pixi/core/containers/unbound-container.d.mts +20 -2
- package/src/foundry/client/pixi/core/interaction/canvas-animation.d.mts +164 -99
- package/src/foundry/client/pixi/core/interaction/control-icon.d.mts +61 -22
- package/src/foundry/client/pixi/core/interaction/mouse-handler.d.mts +120 -53
- package/src/foundry/client/pixi/core/interaction/ping.d.mts +62 -31
- package/src/foundry/client/pixi/core/interaction/pings/chevron.d.mts +23 -10
- package/src/foundry/client/pixi/core/interaction/pings/pulse.d.mts +91 -34
- package/src/foundry/client/pixi/core/interaction/render-flags.d.mts +76 -31
- package/src/foundry/client/pixi/core/interaction/resize-handle.d.mts +35 -5
- package/src/foundry/client/pixi/core/interaction/targets.d.mts +21 -18
- package/src/foundry/client/pixi/core/loader.d.mts +86 -76
- package/src/foundry/client/pixi/core/shapes/limited-angle-polygon.d.mts +42 -17
- package/src/foundry/client/pixi/core/shapes/polygon-mesher.d.mts +92 -64
- package/src/foundry/client/pixi/core/shapes/precise-text.d.mts +28 -10
- package/src/foundry/client/pixi/core/shapes/ray.d.mts +47 -23
- package/src/foundry/client/pixi/core/shapes/source-polygon.d.mts +170 -75
- package/src/foundry/client/pixi/extensions/circle.d.mts +133 -122
- package/src/foundry/client/pixi/extensions/graphics.d.mts +3 -1
- package/src/foundry/client/pixi/extensions/observable-transform.d.mts +10 -2
- package/src/foundry/client/pixi/extensions/polygon.d.mts +155 -134
- package/src/foundry/client/pixi/extensions/rectangle.d.mts +266 -240
- package/src/foundry/client/pixi/groups/effects.d.mts +75 -24
- package/src/foundry/client/pixi/groups/environment.d.mts +68 -19
- package/src/foundry/client/pixi/groups/hidden.d.mts +27 -11
- package/src/foundry/client/pixi/groups/interface.d.mts +62 -38
- package/src/foundry/client/pixi/groups/overlay.d.mts +19 -7
- package/src/foundry/client/pixi/groups/primary.d.mts +66 -44
- package/src/foundry/client/pixi/groups/rendered.d.mts +19 -7
- package/src/foundry/client/pixi/layers/base/canvas-layer.d.mts +11 -15
- package/src/foundry/client/pixi/layers/base/interaction-layer.d.mts +29 -28
- package/src/foundry/client/pixi/layers/base/placeables-layer.d.mts +306 -272
- package/src/foundry/client/pixi/layers/controls/cursor.d.mts +18 -9
- package/src/foundry/client/pixi/layers/controls/door.d.mts +32 -11
- package/src/foundry/client/pixi/layers/controls/layer.d.mts +89 -77
- package/src/foundry/client/pixi/layers/controls/ruler.d.mts +121 -96
- package/src/foundry/client/pixi/layers/effects/background-effects.d.mts +9 -12
- package/src/foundry/client/pixi/layers/effects/coloration-effects.d.mts +9 -10
- package/src/foundry/client/pixi/layers/effects/darkness-effects.d.mts +8 -8
- package/src/foundry/client/pixi/layers/effects/illumination-effects.d.mts +22 -22
- package/src/foundry/client/pixi/layers/effects/visibility.d.mts +106 -86
- package/src/foundry/client/pixi/layers/effects/weather/particles/effect.d.mts +14 -5
- package/src/foundry/client/pixi/layers/effects/weather/particles/leaves.d.mts +31 -2
- package/src/foundry/client/pixi/layers/effects/weather-effects.d.mts +137 -65
- package/src/foundry/client/pixi/layers/grid/highlight.d.mts +14 -4
- package/src/foundry/client/pixi/layers/grid/layer.d.mts +92 -92
- package/src/foundry/client/pixi/layers/grid/mesh.d.mts +37 -16
- package/src/foundry/client/pixi/layers/masks/depth.d.mts +12 -7
- package/src/foundry/client/pixi/layers/masks/occlusion.d.mts +19 -12
- package/src/foundry/client/pixi/layers/masks/vision.d.mts +104 -18
- package/src/foundry/client/pixi/layers/placeables/drawings.d.mts +16 -15
- package/src/foundry/client/pixi/layers/placeables/index.d.mts +1 -0
- package/src/foundry/client/pixi/layers/placeables/lighting.d.mts +12 -14
- package/src/foundry/client/pixi/layers/placeables/notes.d.mts +49 -32
- package/src/foundry/client/pixi/layers/placeables/regions.d.mts +113 -0
- package/src/foundry/client/pixi/layers/placeables/sounds.d.mts +81 -67
- package/src/foundry/client/pixi/layers/placeables/templates.d.mts +11 -15
- package/src/foundry/client/pixi/layers/placeables/tiles.d.mts +30 -21
- package/src/foundry/client/pixi/layers/placeables/tokens.d.mts +66 -52
- package/src/foundry/client/pixi/layers/placeables/walls.d.mts +54 -57
- package/src/foundry/client/pixi/perception/clockwise-sweep.d.mts +62 -27
- package/src/foundry/client/pixi/perception/detection-mode.d.mts +121 -47
- package/src/foundry/client/pixi/perception/fog.d.mts +38 -15
- package/src/foundry/client/pixi/perception/perception-manager.d.mts +136 -136
- package/src/foundry/client/pixi/perception/vision-mode.d.mts +108 -66
- package/src/foundry/client/pixi/perception/weiler-atherton-clipping.d.mts +77 -39
- package/src/foundry/client/pixi/placeable.d.mts +238 -137
- package/src/foundry/client/pixi/placeables/drawing.d.mts +255 -133
- package/src/foundry/client/pixi/placeables/index.d.mts +1 -0
- package/src/foundry/client/pixi/placeables/light.d.mts +199 -64
- package/src/foundry/client/pixi/placeables/note.d.mts +145 -54
- package/src/foundry/client/pixi/placeables/primary-canvas-objects/primary-canvas-object.d.mts +30 -8
- package/src/foundry/client/pixi/placeables/primary-canvas-objects/primary-graphics.d.mts +41 -11
- package/src/foundry/client/pixi/placeables/primary-canvas-objects/primary-occludable-object.d.mts +59 -18
- package/src/foundry/client/pixi/placeables/primary-canvas-objects/primary-sprite-mesh.d.mts +120 -37
- package/src/foundry/client/pixi/placeables/region.d.mts +280 -0
- package/src/foundry/client/pixi/placeables/sound.d.mts +205 -66
- package/src/foundry/client/pixi/placeables/template.d.mts +181 -99
- package/src/foundry/client/pixi/placeables/tile.d.mts +206 -140
- package/src/foundry/client/pixi/placeables/token.d.mts +916 -448
- package/src/foundry/client/pixi/placeables/wall.d.mts +249 -129
- package/src/foundry/client/pixi/webgl/extensions/batch-renderer.d.mts +72 -33
- package/src/foundry/client/pixi/webgl/extensions/batch-shader-generator.d.mts +10 -9
- package/src/foundry/client/pixi/webgl/helpers/{framebugger-snapshot.d.mts → framebuffer-snapshot.d.mts} +10 -9
- package/src/foundry/client/pixi/webgl/helpers/index.d.mts +1 -1
- package/src/foundry/client/pixi/webgl/helpers/smooth-noise.d.mts +38 -23
- package/src/foundry/client/pixi/webgl/helpers/texture-extractor.d.mts +82 -53
- package/src/foundry/client/pixi/webgl/shaders/base-shader-mixin.d.mts +12 -12
- package/src/foundry/client/pixi/webgl/shaders/base-shader.d.mts +45 -28
- package/src/foundry/client/pixi/webgl/shaders/filters/base-filter.d.mts +12 -11
- package/src/foundry/client/pixi/webgl/shaders/filters/base-mask-filter.d.mts +12 -10
- package/src/foundry/client/pixi/webgl/shaders/filters/blur.d.mts +22 -20
- package/src/foundry/client/pixi/webgl/shaders/filters/effects-masking.d.mts +36 -32
- package/src/foundry/client/pixi/webgl/shaders/filters/environment.d.mts +10 -9
- package/src/foundry/client/pixi/webgl/shaders/filters/glow-overlay.d.mts +12 -11
- package/src/foundry/client/pixi/webgl/shaders/filters/invisibility.d.mts +10 -9
- package/src/foundry/client/pixi/webgl/shaders/filters/outline-overlay.d.mts +12 -11
- package/src/foundry/client/pixi/webgl/shaders/filters/transition.d.mts +67 -60
- package/src/foundry/client/pixi/webgl/shaders/filters/visibility.d.mts +24 -17
- package/src/foundry/client/pixi/webgl/shaders/filters/vision-mask-filter.d.mts +13 -10
- package/src/foundry/client/pixi/webgl/shaders/filters/void.d.mts +10 -9
- package/src/foundry/client/pixi/webgl/shaders/filters/weather-occlusion-masks.d.mts +11 -10
- package/src/foundry/client/pixi/webgl/shaders/fragment-channel-mixin.d.mts +20 -14
- package/src/foundry/client/pixi/webgl/shaders/grid/grid.d.mts +12 -11
- package/src/foundry/client/pixi/webgl/shaders/lighting/background-lighting.d.mts +10 -9
- package/src/foundry/client/pixi/webgl/shaders/lighting/base-lighting.d.mts +33 -33
- package/src/foundry/client/pixi/webgl/shaders/lighting/coloration-lighting.d.mts +10 -9
- package/src/foundry/client/pixi/webgl/shaders/lighting/darkness-lighting.d.mts +10 -9
- package/src/foundry/client/pixi/webgl/shaders/lighting/effects/bewitching-wave.d.mts +19 -17
- package/src/foundry/client/pixi/webgl/shaders/lighting/effects/black-hole.d.mts +10 -9
- package/src/foundry/client/pixi/webgl/shaders/lighting/effects/chroma.d.mts +10 -9
- package/src/foundry/client/pixi/webgl/shaders/lighting/effects/emanation.d.mts +10 -9
- package/src/foundry/client/pixi/webgl/shaders/lighting/effects/energy-field.d.mts +10 -9
- package/src/foundry/client/pixi/webgl/shaders/lighting/effects/fairy-light.d.mts +19 -17
- package/src/foundry/client/pixi/webgl/shaders/lighting/effects/flame.d.mts +19 -17
- package/src/foundry/client/pixi/webgl/shaders/lighting/effects/fog.d.mts +10 -9
- package/src/foundry/client/pixi/webgl/shaders/lighting/effects/force-grid.d.mts +10 -8
- package/src/foundry/client/pixi/webgl/shaders/lighting/effects/ghost-light.d.mts +19 -17
- package/src/foundry/client/pixi/webgl/shaders/lighting/effects/hexa-dome.d.mts +10 -9
- package/src/foundry/client/pixi/webgl/shaders/lighting/effects/light-dome.d.mts +10 -9
- package/src/foundry/client/pixi/webgl/shaders/lighting/effects/magical-gloom.d.mts +10 -9
- package/src/foundry/client/pixi/webgl/shaders/lighting/effects/pulse.d.mts +19 -17
- package/src/foundry/client/pixi/webgl/shaders/lighting/effects/radial-rainbow.d.mts +10 -9
- package/src/foundry/client/pixi/webgl/shaders/lighting/effects/revolving-light.d.mts +10 -9
- package/src/foundry/client/pixi/webgl/shaders/lighting/effects/roiling-mass.d.mts +10 -9
- package/src/foundry/client/pixi/webgl/shaders/lighting/effects/siren-light.d.mts +19 -17
- package/src/foundry/client/pixi/webgl/shaders/lighting/effects/smoke-patch.d.mts +20 -17
- package/src/foundry/client/pixi/webgl/shaders/lighting/effects/star-light.d.mts +10 -9
- package/src/foundry/client/pixi/webgl/shaders/lighting/effects/sunburst.d.mts +19 -17
- package/src/foundry/client/pixi/webgl/shaders/lighting/effects/swirling-rainbow.d.mts +10 -9
- package/src/foundry/client/pixi/webgl/shaders/lighting/effects/torch.d.mts +19 -17
- package/src/foundry/client/pixi/webgl/shaders/lighting/effects/vortex.d.mts +19 -17
- package/src/foundry/client/pixi/webgl/shaders/lighting/effects/wave.d.mts +19 -17
- package/src/foundry/client/pixi/webgl/shaders/lighting/illumination-lighting.d.mts +10 -9
- package/src/foundry/client/pixi/webgl/shaders/region/adjust-darkness-level.d.mts +71 -29
- package/src/foundry/client/pixi/webgl/shaders/region/base.d.mts +54 -10
- package/src/foundry/client/pixi/webgl/shaders/region/highlight.d.mts +69 -9
- package/src/foundry/client/pixi/webgl/shaders/samplers/base-sampler.d.mts +24 -25
- package/src/foundry/client/pixi/webgl/shaders/samplers/baseline-illumination.d.mts +10 -9
- package/src/foundry/client/pixi/webgl/shaders/samplers/color-adjustment.d.mts +38 -29
- package/src/foundry/client/pixi/webgl/shaders/samplers/depth.d.mts +21 -17
- package/src/foundry/client/pixi/webgl/shaders/samplers/fog-of-war.d.mts +10 -9
- package/src/foundry/client/pixi/webgl/shaders/samplers/occlusion.d.mts +20 -18
- package/src/foundry/client/pixi/webgl/shaders/samplers/primary.d.mts +11 -2
- package/src/foundry/client/pixi/webgl/shaders/samplers/token-ring.d.mts +28 -2
- package/src/foundry/client/pixi/webgl/shaders/vision/background-vision.d.mts +10 -9
- package/src/foundry/client/pixi/webgl/shaders/vision/base-vision.d.mts +11 -9
- package/src/foundry/client/pixi/webgl/shaders/vision/coloration-vision.d.mts +10 -9
- package/src/foundry/client/pixi/webgl/shaders/vision/effects/amplification.d.mts +10 -9
- package/src/foundry/client/pixi/webgl/shaders/vision/effects/wave.d.mts +19 -17
- package/src/foundry/client/pixi/webgl/shaders/vision/illumination-vision.d.mts +10 -9
- package/src/foundry/client/pixi/webgl/shaders/weather/base-weather.d.mts +40 -36
- package/src/foundry/client/pixi/webgl/shaders/weather/effect.d.mts +27 -33
- package/src/foundry/client/pixi/webgl/shaders/weather/fog.d.mts +17 -16
- package/src/foundry/client/pixi/webgl/shaders/weather/rain.d.mts +19 -18
- package/src/foundry/client/pixi/webgl/shaders/weather/snow.d.mts +15 -14
- package/src/foundry/client/pixi/workers/texture-worker.d.mts +33 -53
- package/src/foundry/client/tours/setup-tour.d.mts +15 -10
- package/src/foundry/client/ui/context.d.mts +48 -40
- package/src/foundry/client/ui/dialog.d.mts +137 -126
- package/src/foundry/client/ui/drag.d.mts +1 -1
- package/src/foundry/client/ui/dragdrop.d.mts +34 -28
- package/src/foundry/client/ui/editor.d.mts +29 -21
- package/src/foundry/client/ui/filepicker.d.mts +43 -38
- package/src/foundry/client/ui/filter.d.mts +62 -50
- package/src/foundry/client/ui/forms.d.mts +22 -22
- package/src/foundry/client/ui/notifications.d.mts +10 -3
- package/src/foundry/client/ui/prosemirror.d.mts +15 -7
- package/src/foundry/client/ui/secrets.d.mts +42 -27
- package/src/foundry/client/ui/tabs.d.mts +40 -33
- package/src/foundry/client-esm/applications/_module.d.mts +3 -3
- package/src/foundry/client-esm/applications/_types.d.mts +0 -2
- package/src/foundry/client-esm/applications/api/_module.d.mts +2 -2
- package/src/foundry/client-esm/applications/api/application.d.mts +51 -39
- package/src/foundry/client-esm/applications/api/dialog.d.mts +20 -22
- package/src/foundry/client-esm/applications/api/document-sheet.d.mts +26 -12
- package/src/foundry/client-esm/applications/api/handlebars-application.d.mts +142 -126
- package/src/foundry/client-esm/applications/apps/_module.d.mts +2 -2
- package/src/foundry/client-esm/applications/apps/compendium-art-config.d.mts +10 -10
- package/src/foundry/client-esm/applications/apps/permission-config.d.mts +3 -3
- package/src/foundry/client-esm/applications/dice/_module.d.mts +2 -2
- package/src/foundry/client-esm/applications/dice/roll-resolver.d.mts +14 -2
- package/src/foundry/client-esm/applications/elements/_module.d.mts +2 -2
- package/src/foundry/client-esm/applications/elements/document-tags.d.mts +2 -0
- package/src/foundry/client-esm/applications/elements/file-picker.d.mts +1 -1
- package/src/foundry/client-esm/applications/elements/multi-select.d.mts +15 -5
- package/src/foundry/client-esm/applications/elements/string-tags.d.mts +1 -1
- package/src/foundry/client-esm/applications/forms/fields.d.mts +6 -1
- package/src/foundry/client-esm/applications/sheets/_module.d.mts +2 -2
- package/src/foundry/client-esm/applications/sheets/actor-sheet.d.mts +3 -3
- package/src/foundry/client-esm/applications/sheets/ambient-light-config.d.mts +16 -11
- package/src/foundry/client-esm/applications/sheets/ambient-sound-config.d.mts +9 -7
- package/src/foundry/client-esm/applications/sheets/item-sheet.d.mts +3 -3
- package/src/foundry/client-esm/applications/sheets/region-behavior-config.d.mts +30 -5
- package/src/foundry/client-esm/applications/sheets/region-config.d.mts +36 -5
- package/src/foundry/client-esm/applications/sheets/user-config.d.mts +8 -7
- package/src/foundry/client-esm/applications/ui/_module.d.mts +2 -2
- package/src/foundry/client-esm/applications/ui/region-legend.d.mts +45 -3
- package/src/foundry/client-esm/audio/_module.d.mts +2 -3
- package/src/foundry/client-esm/audio/_types.d.mts +3 -1
- package/src/foundry/client-esm/audio/biquad.d.mts +76 -26
- package/src/foundry/client-esm/audio/cache.d.mts +31 -20
- package/src/foundry/client-esm/audio/convolver.d.mts +47 -25
- package/src/foundry/client-esm/audio/helper.d.mts +123 -78
- package/src/foundry/client-esm/audio/sound.d.mts +230 -126
- package/src/foundry/client-esm/audio/timeout.d.mts +30 -11
- package/src/foundry/client-esm/canvas/_module.d.mts +2 -2
- package/src/foundry/client-esm/canvas/edges/_module.d.mts +2 -2
- package/src/foundry/client-esm/canvas/edges/collision.d.mts +69 -18
- package/src/foundry/client-esm/canvas/edges/edge.d.mts +110 -41
- package/src/foundry/client-esm/canvas/edges/edges.d.mts +10 -0
- package/src/foundry/client-esm/canvas/edges/vertex.d.mts +56 -26
- package/src/foundry/client-esm/canvas/regions/_module.d.mts +2 -3
- package/src/foundry/client-esm/canvas/regions/geometry.d.mts +38 -0
- package/src/foundry/client-esm/canvas/regions/mesh.d.mts +72 -0
- package/src/foundry/client-esm/canvas/regions/polygon-tree.d.mts +130 -0
- package/src/foundry/client-esm/canvas/regions/shape.d.mts +129 -0
- package/src/foundry/client-esm/canvas/scene-manager.d.mts +16 -6
- package/src/foundry/client-esm/canvas/smaa/blend.d.mts +14 -3
- package/src/foundry/client-esm/canvas/smaa/edges.d.mts +25 -3
- package/src/foundry/client-esm/canvas/smaa/smaa.d.mts +121 -23
- package/src/foundry/client-esm/canvas/smaa/weights.d.mts +26 -3
- package/src/foundry/client-esm/canvas/sources/_module.d.mts +2 -2
- package/src/foundry/client-esm/canvas/sources/base-effect-source.d.mts +84 -40
- package/src/foundry/client-esm/canvas/sources/base-light-source.d.mts +103 -39
- package/src/foundry/client-esm/canvas/sources/global-light-source.d.mts +89 -15
- package/src/foundry/client-esm/canvas/sources/point-darkness-source.d.mts +71 -30
- package/src/foundry/client-esm/canvas/sources/point-effect-source.d.mts +49 -20
- package/src/foundry/client-esm/canvas/sources/point-light-source.d.mts +57 -16
- package/src/foundry/client-esm/canvas/sources/point-movement-source.d.mts +31 -4
- package/src/foundry/client-esm/canvas/sources/point-sound-source.d.mts +45 -12
- package/src/foundry/client-esm/canvas/sources/point-vision-source.d.mts +98 -52
- package/src/foundry/client-esm/canvas/sources/rendered-effect-source.d.mts +180 -69
- package/src/foundry/client-esm/canvas/tokens/_module.d.mts +2 -3
- package/src/foundry/client-esm/canvas/tokens/ring-config.d.mts +174 -2
- package/src/foundry/client-esm/canvas/tokens/ring-data.d.mts +141 -2
- package/src/foundry/client-esm/canvas/tokens/ring.d.mts +284 -2
- package/src/foundry/client-esm/client.d.mts +47 -54
- package/src/foundry/client-esm/data/_module.d.mts +2 -2
- package/src/foundry/client-esm/data/client-backend.d.mts +22 -23
- package/src/foundry/client-esm/data/region-behaviors/_module.d.mts +3 -3
- package/src/foundry/client-esm/data/region-behaviors/adjust-darkness-level.d.mts +57 -0
- package/src/foundry/client-esm/data/region-behaviors/base.d.mts +59 -0
- package/src/foundry/client-esm/data/region-behaviors/display-scrolling-text.d.mts +64 -0
- package/src/foundry/client-esm/data/region-behaviors/execute-macro.d.mts +27 -0
- package/src/foundry/client-esm/data/region-behaviors/execute-script.d.mts +23 -0
- package/src/foundry/client-esm/data/region-behaviors/pause-game.d.mts +23 -0
- package/src/foundry/client-esm/data/region-behaviors/suppress-weather.d.mts +17 -0
- package/src/foundry/client-esm/data/region-behaviors/teleport-token.d.mts +32 -0
- package/src/foundry/client-esm/data/region-behaviors/toggle-behavior.d.mts +31 -0
- package/src/foundry/client-esm/dice/_module.d.mts +2 -3
- package/src/foundry/client-esm/dice/parser.d.mts +11 -25
- package/src/foundry/client-esm/dice/roll.d.mts +115 -89
- package/src/foundry/client-esm/dice/terms/_module.d.mts +2 -3
- package/src/foundry/client-esm/dice/terms/coin.d.mts +8 -5
- package/src/foundry/client-esm/dice/terms/dice.d.mts +93 -63
- package/src/foundry/client-esm/dice/terms/die.d.mts +11 -4
- package/src/foundry/client-esm/dice/terms/fate.d.mts +9 -2
- package/src/foundry/client-esm/dice/terms/function.d.mts +18 -18
- package/src/foundry/client-esm/dice/terms/numeric.d.mts +3 -5
- package/src/foundry/client-esm/dice/terms/operator.d.mts +2 -2
- package/src/foundry/client-esm/dice/terms/parenthetical.d.mts +9 -10
- package/src/foundry/client-esm/dice/terms/pool.d.mts +25 -31
- package/src/foundry/client-esm/dice/terms/string.d.mts +4 -4
- package/src/foundry/client-esm/dice/terms/term.d.mts +18 -4
- package/src/foundry/client-esm/dice/twister.d.mts +3 -3
- package/src/foundry/client-esm/helpers/_module.d.mts +2 -2
- package/src/foundry/client-esm/helpers/_types.d.mts +12 -46
- package/src/foundry/client-esm/helpers/compendium-art.d.mts +56 -4
- package/src/foundry/common/abstract/_types.d.mts +60 -54
- package/src/foundry/common/abstract/backend.d.mts +51 -45
- package/src/foundry/common/abstract/data.d.mts +140 -154
- package/src/foundry/common/abstract/document.d.mts +1305 -421
- package/src/foundry/common/abstract/embedded-collection-delta.d.mts +1 -1
- package/src/foundry/common/abstract/embedded-collection.d.mts +37 -7
- package/src/foundry/common/abstract/module.d.mts +3 -2
- package/src/foundry/common/abstract/singleton-collection.d.mts +1 -1
- package/src/foundry/common/abstract/socket.d.mts +1 -1
- package/src/foundry/common/abstract/type-data.d.mts +62 -54
- package/src/foundry/common/config.d.mts +5 -3
- package/src/foundry/common/constants.d.mts +261 -231
- package/src/foundry/common/data/data.d.mts +200 -94
- package/src/foundry/common/data/fields.d.mts +746 -585
- package/src/foundry/common/data/module.d.mts +2 -2
- package/src/foundry/common/data/validation-failure.d.mts +12 -9
- package/src/foundry/common/documents/_module.d.mts +4 -2
- package/src/foundry/common/documents/_types.d.mts +22 -50
- package/src/foundry/common/documents/active-effect.d.mts +280 -177
- package/src/foundry/common/documents/actor-delta.d.mts +318 -69
- package/src/foundry/common/documents/actor.d.mts +305 -117
- package/src/foundry/common/documents/adventure.d.mts +266 -141
- package/src/foundry/common/documents/ambient-light.d.mts +268 -75
- package/src/foundry/common/documents/ambient-sound.d.mts +268 -109
- package/src/foundry/common/documents/card.d.mts +267 -174
- package/src/foundry/common/documents/cards.d.mts +299 -126
- package/src/foundry/common/documents/chat-message.d.mts +276 -158
- package/src/foundry/common/documents/combat.d.mts +300 -89
- package/src/foundry/common/documents/combatant.d.mts +275 -88
- package/src/foundry/common/documents/drawing.d.mts +286 -206
- package/src/foundry/common/documents/fog-exploration.d.mts +258 -70
- package/src/foundry/common/documents/folder.d.mts +252 -81
- package/src/foundry/common/documents/item.d.mts +305 -99
- package/src/foundry/common/documents/journal-entry-page.d.mts +279 -189
- package/src/foundry/common/documents/journal-entry.d.mts +294 -68
- package/src/foundry/common/documents/macro.d.mts +254 -132
- package/src/foundry/common/documents/measured-template.d.mts +293 -139
- package/src/foundry/common/documents/note.d.mts +274 -149
- package/src/foundry/common/documents/playlist-sound.d.mts +260 -94
- package/src/foundry/common/documents/playlist.d.mts +279 -120
- package/src/foundry/common/documents/region-behavior.d.mts +329 -0
- package/src/foundry/common/documents/region.d.mts +327 -0
- package/src/foundry/common/documents/roll-table.d.mts +286 -102
- package/src/foundry/common/documents/scene.d.mts +276 -336
- package/src/foundry/common/documents/setting.d.mts +229 -54
- package/src/foundry/common/documents/table-result.d.mts +267 -96
- package/src/foundry/common/documents/tile.d.mts +301 -170
- package/src/foundry/common/documents/token.d.mts +351 -445
- package/src/foundry/common/documents/user.d.mts +256 -144
- package/src/foundry/common/documents/wall.d.mts +273 -161
- package/src/foundry/common/grid/_module.d.mts +3 -3
- package/src/foundry/common/grid/base.d.mts +66 -49
- package/src/foundry/common/grid/gridless.d.mts +2 -2
- package/src/foundry/common/grid/hexagonal.d.mts +40 -29
- package/src/foundry/common/grid/square.d.mts +3 -3
- package/src/foundry/common/packages/base-module.d.mts +6 -24
- package/src/foundry/common/packages/base-package.d.mts +23 -21
- package/src/foundry/common/packages/base-system.d.mts +6 -63
- package/src/foundry/common/packages/base-world.d.mts +8 -61
- package/src/foundry/common/packages/module.d.mts +7 -7
- package/src/foundry/common/packages/sub-types.d.mts +2 -2
- package/src/foundry/common/primitives/array.d.mts +4 -4
- package/src/foundry/common/primitives/math.d.mts +7 -1
- package/src/foundry/common/primitives/number.d.mts +2 -2
- package/src/foundry/common/primitives/set.d.mts +17 -14
- package/src/foundry/common/primitives/string.d.mts +1 -1
- package/src/foundry/common/prosemirror/_module.d.mts +15 -15
- package/src/foundry/common/prosemirror/dirty-plugin.d.mts +1 -1
- package/src/foundry/common/prosemirror/dom-parser.d.mts +2 -1
- package/src/foundry/common/prosemirror/dropdown.d.mts +1 -1
- package/src/foundry/common/prosemirror/highlight-matches-plugin.d.mts +2 -2
- package/src/foundry/common/prosemirror/image-plugin.d.mts +1 -1
- package/src/foundry/common/prosemirror/menu.d.mts +3 -3
- package/src/foundry/common/prosemirror/paste-transformer.d.mts +1 -1
- package/src/foundry/common/prosemirror/plugin.d.mts +2 -2
- package/src/foundry/common/prosemirror/schema/index.d.mts +0 -1
- package/src/foundry/common/prosemirror/schema/lists.d.mts +2 -0
- package/src/foundry/common/prosemirror/util.d.mts +1 -1
- package/src/foundry/common/types.d.mts +3 -3
- package/src/foundry/common/utils/bitmask.d.mts +23 -11
- package/src/foundry/common/utils/collection.d.mts +61 -38
- package/src/foundry/common/utils/color.d.mts +20 -2
- package/src/foundry/common/utils/event-emitter.d.mts +32 -17
- package/src/foundry/common/utils/geometry.d.mts +12 -2
- package/src/foundry/common/utils/helpers.d.mts +36 -26
- package/src/foundry/common/utils/http.d.mts +2 -2
- package/src/foundry/common/utils/module.d.mts +2 -2
- package/src/foundry/common/utils/string-tree.d.mts +45 -39
- package/src/foundry/common/utils/word-tree.d.mts +10 -23
- package/src/foundry/index.d.mts +0 -1
- package/src/foundry/{clipper → public/scripts/clipper}/clipper.d.mts +52 -43
- package/src/foundry/public/scripts/index.d.mts +1 -0
- package/src/foundry/public/scripts/workers/image-compressor.d.mts +23 -0
- package/src/foundry/public/scripts/workers/index.d.mts +1 -0
- package/{index-lenient.d.mts → src/index-lenient.d.mts} +2 -0
- package/src/index.d.mts +6 -0
- package/src/tsconfig.json +15 -0
- package/src/types/augments/particles.d.mts +29 -0
- package/src/types/augments/pixi.d.mts +1024 -21
- package/src/types/augments/smooth.d.mts +31 -0
- package/src/types/augments/tinyMCE.d.mts +1 -1
- package/src/types/config.d.mts +20 -311
- package/src/types/documentConfiguration.d.mts +286 -542
- package/src/types/index.d.mts +1 -1
- package/src/types/lib.d.mts +12 -0
- package/src/types/workers/image-compressor.d.mts +176 -0
- package/src/utils/index.d.mts +1279 -0
- package/tsconfig.json +29 -0
- package/tsconfig.main.json +8 -0
- package/tsconfig.miscellaneous.json +16 -0
- package/index.d.mts +0 -5
- package/src/foundry/client/apps/placeables/light-config.d.mts +0 -100
- package/src/foundry/client/apps/placeables/sound-config.d.mts +0 -43
- package/src/foundry/common/documents/module.d.mts +0 -35
- package/src/foundry/common/primitives/regex.d.mts +0 -12
- package/src/types/helperTypes.d.mts +0 -389
- package/src/types/utils.d.mts +0 -520
- /package/src/foundry/{clipper → public/scripts/clipper}/index.d.mts +0 -0
@@ -1,10 +1,15 @@
|
|
1
|
-
import type {
|
2
|
-
|
1
|
+
import type {
|
2
|
+
Brand,
|
3
|
+
FixedInstanceType,
|
4
|
+
HandleEmptyObject,
|
5
|
+
Identity,
|
6
|
+
InexactPartial,
|
7
|
+
IntentionalPartial,
|
8
|
+
NullishProps,
|
9
|
+
} from "fvtt-types/utils";
|
3
10
|
import type Document from "../../../../common/abstract/document.d.mts";
|
4
11
|
import type EmbeddedCollection from "../../../../common/abstract/embedded-collection.d.mts";
|
5
12
|
|
6
|
-
type ConcretePlaceableOrPlaceableObject<T> = T extends PlaceableObject ? T : PlaceableObject;
|
7
|
-
|
8
13
|
declare global {
|
9
14
|
/**
|
10
15
|
* A subclass of Canvas Layer which is specifically designed to contain multiple PlaceableObject instances,
|
@@ -12,28 +17,26 @@ declare global {
|
|
12
17
|
* @typeParam DocumentName - The key of the configuration which defines the object and document class.
|
13
18
|
* @typeParam Options - The type of the options in this layer.
|
14
19
|
*/
|
15
|
-
|
16
|
-
|
17
|
-
DrawOptions extends PlaceablesLayer.DrawOptions = PlaceablesLayer.DrawOptions,
|
18
|
-
TearDownOptions extends PlaceablesLayer.TearDownOptions = PlaceablesLayer.TearDownOptions,
|
19
|
-
> extends InteractionLayer<DrawOptions, TearDownOptions> {
|
20
|
-
constructor();
|
21
|
-
|
20
|
+
// TODO(LukeAbby): Make `DocumentName` covariant.
|
21
|
+
class PlaceablesLayer<DocumentName extends PlaceablesLayer.DocumentNames> extends InteractionLayer {
|
22
22
|
/**
|
23
23
|
* Sort order for placeables belonging to this layer
|
24
24
|
* @defaultValue `0`
|
25
|
+
* @remarks Unused in v12.331
|
25
26
|
*/
|
26
27
|
static SORT_ORDER: number;
|
27
28
|
|
28
29
|
/**
|
29
30
|
* Placeable Layer Objects
|
30
31
|
* @defaultValue `null`
|
32
|
+
* @remarks Set to `new PIXI.Container()` on draw, `null` on tearDown
|
31
33
|
*/
|
32
34
|
objects: PIXI.Container | null;
|
33
35
|
|
34
36
|
/**
|
35
37
|
* Preview Object Placement
|
36
38
|
* @defaultValue `null`
|
39
|
+
* @remarks Only `null` prior to first draw, does not get reset on tearDown
|
37
40
|
*/
|
38
41
|
preview: PIXI.Container | null;
|
39
42
|
|
@@ -41,20 +44,21 @@ declare global {
|
|
41
44
|
* Keep track of history so that CTRL+Z can undo changes
|
42
45
|
* @defaultValue `[]`
|
43
46
|
*/
|
44
|
-
history:
|
47
|
+
history: PlaceablesLayer.HistoryEntry<DocumentName>[];
|
45
48
|
|
46
49
|
/**
|
47
50
|
* Keep track of an object copied with CTRL+C which can be pasted later
|
48
51
|
* @defaultValue `[]`
|
52
|
+
* @privateRemarks Accessed externally in `ClientKeybinds#_onPaste`, which is marked `@private`
|
49
53
|
*/
|
50
|
-
protected _copy:
|
54
|
+
protected _copy: Document.ObjectFor<DocumentName>[];
|
51
55
|
|
52
56
|
/**
|
53
57
|
* A Quadtree which partitions and organizes Walls into quadrants for efficient target identification.
|
58
|
+
* @remarks Is `new CanvasQuadtree()` if `quadtree` is truthy in `this.constructor.layerOptions`, else `null`
|
54
59
|
*/
|
55
|
-
|
56
|
-
|
57
|
-
> | null;
|
60
|
+
// TODO: If dynamic static stuff can be worked out, this can be conditional on `options.quadtree`
|
61
|
+
quadtree: CanvasQuadtree<Document.ObjectFor<DocumentName>> | null;
|
58
62
|
|
59
63
|
/**
|
60
64
|
* @remarks Override not in foundry docs but implicit from layerOptions
|
@@ -78,72 +82,73 @@ declare global {
|
|
78
82
|
|
79
83
|
/**
|
80
84
|
* A reference to the named Document type which is contained within this Canvas Layer.
|
81
|
-
* @
|
85
|
+
* @defaultValue `undefined`
|
86
|
+
* @abstract
|
82
87
|
*/
|
83
|
-
static documentName: PlaceablesLayer.
|
88
|
+
static documentName: PlaceablesLayer.DocumentNames;
|
84
89
|
|
85
90
|
/**
|
86
91
|
* Creation states affected to placeables during their construction.
|
87
92
|
*/
|
88
|
-
static CREATION_STATES: PlaceablesLayer.
|
93
|
+
static CREATION_STATES: PlaceablesLayer.CreationStates;
|
89
94
|
|
90
95
|
/**
|
91
96
|
* Obtain a reference to the Collection of embedded Document instances within the currently viewed Scene
|
97
|
+
* @remarks Returns `null` if `canvas.scene` does not have an EmbeddedCollection for the layer's `static documentName`
|
92
98
|
*/
|
93
|
-
get documentCollection(): EmbeddedCollection<
|
94
|
-
Document.ConfiguredInstanceForName<DocumentName>,
|
95
|
-
Scene.ConfiguredInstance
|
96
|
-
> | null;
|
99
|
+
get documentCollection(): EmbeddedCollection<Document.ImplementationFor<DocumentName>, Scene.Implementation> | null;
|
97
100
|
|
98
101
|
/**
|
99
102
|
* Define a Container implementation used to render placeable objects contained in this layer
|
103
|
+
* @privateRemarks Would be `Document.ConfiguredObjectInstanceForName<DocumentName>` if statics could see type params
|
100
104
|
*/
|
101
|
-
static get placeableClass():
|
105
|
+
static get placeableClass(): PlaceableObject.AnyConstructor;
|
102
106
|
|
103
107
|
/**
|
104
108
|
* If objects on this PlaceablesLayer have a HUD UI, provide a reference to its instance
|
105
|
-
* @remarks Returns `null` unless overridden
|
109
|
+
* @remarks Returns `null` unless overridden by subclass
|
106
110
|
*/
|
107
|
-
get hud(): BasePlaceableHUD<Document.
|
111
|
+
get hud(): BasePlaceableHUD<Document.ObjectFor<DocumentName>> | null;
|
108
112
|
|
109
113
|
/**
|
110
114
|
* A convenience method for accessing the placeable object instances contained in this layer
|
111
115
|
*/
|
112
|
-
get placeables(): Document.
|
116
|
+
get placeables(): Document.ObjectFor<DocumentName>[];
|
113
117
|
|
114
118
|
/**
|
115
119
|
* An Array of placeable objects in this layer which have the _controlled attribute
|
116
120
|
*/
|
117
|
-
get controlled(): Document.
|
121
|
+
get controlled(): Document.ObjectFor<DocumentName>[];
|
118
122
|
|
119
123
|
/**
|
120
124
|
* Iterates over placeable objects that are eligible for control/select.
|
121
|
-
* @
|
125
|
+
* @yields A placeable object
|
122
126
|
*/
|
123
|
-
|
124
|
-
controllableObjects(): Generator<PlaceableObject>;
|
127
|
+
controllableObjects(): Generator<PlaceableObject.Any>;
|
125
128
|
|
126
129
|
/**
|
127
130
|
* Track the set of PlaceableObjects on this layer which are currently controlled.
|
128
131
|
*/
|
129
|
-
get controlledObjects(): Map<string,
|
132
|
+
get controlledObjects(): Map<string, Document.ObjectFor<DocumentName>>;
|
130
133
|
|
131
134
|
/**
|
132
135
|
* Track the PlaceableObject on this layer which is currently hovered upon.
|
133
136
|
*/
|
134
|
-
get hover():
|
137
|
+
get hover(): Document.ObjectFor<DocumentName> | null;
|
135
138
|
|
136
139
|
set hover(object);
|
137
140
|
|
138
141
|
/**
|
139
142
|
* Track whether "highlight all objects" is currently active
|
140
143
|
* @defaultValue `false`
|
144
|
+
* @remarks Set by {@link Canvas.highlightObjects | `Canvas#highlightObjects`}
|
141
145
|
*/
|
142
146
|
highlightObjects: boolean;
|
143
147
|
|
144
148
|
/**
|
145
149
|
* Get the maximum sort value of all placeables.
|
146
150
|
* @returns The maximum sort value (-Infinity if there are no objects)
|
151
|
+
* @remarks Despite the above comment, returns `-Infinity` if the schema of the layer's document lacks a `sort` field, object count is not relevant
|
147
152
|
*/
|
148
153
|
getMaxSort(): number;
|
149
154
|
|
@@ -151,8 +156,9 @@ declare global {
|
|
151
156
|
* Send the controlled objects of this layer to the back or bring them to the front.
|
152
157
|
* @param front - Bring to front instead of send to back?
|
153
158
|
* @returns Returns true if the layer has sortable object, and false otherwise
|
159
|
+
* @remarks Same check as {@link PlaceablesLayer.getMaxSort | `PlaceablesLayer#getMaxSort`}
|
154
160
|
*/
|
155
|
-
protected
|
161
|
+
protected _sendToBackOrBringToFront(front?: boolean | null): boolean;
|
156
162
|
|
157
163
|
/**
|
158
164
|
* Snaps the given point to grid. The layer defines the snapping behavior.
|
@@ -163,22 +169,19 @@ declare global {
|
|
163
169
|
|
164
170
|
/**
|
165
171
|
* Obtain an iterable of objects which should be added to this PlaceableLayer
|
172
|
+
* @remarks Returns the EmbeddedCollection for this layer's associated Document on the currently viewed scene, or an empty array if not found
|
166
173
|
*/
|
167
|
-
getDocuments():
|
168
|
-
| Exclude<this["documentCollection"], null>
|
169
|
-
| InstanceType<Document.ConfiguredClassForName<DocumentName>>[];
|
174
|
+
getDocuments(): NonNullable<this["documentCollection"]> | [];
|
170
175
|
|
171
|
-
protected override _draw(options
|
176
|
+
protected override _draw(options: HandleEmptyObject<PlaceablesLayer.DrawOptions>): Promise<void>;
|
172
177
|
|
173
178
|
/**
|
174
179
|
* Draw a single placeable object
|
175
180
|
* @param document - The Document instance used to create the placeable object
|
176
181
|
*/
|
177
|
-
createObject(
|
178
|
-
document: Document.ConfiguredInstanceForName<DocumentName>,
|
179
|
-
): Document.ConfiguredObjectInstanceForName<DocumentName>;
|
182
|
+
createObject(document: Document.ImplementationFor<DocumentName>): Document.ObjectFor<DocumentName>;
|
180
183
|
|
181
|
-
protected override _tearDown(options
|
184
|
+
protected override _tearDown(options: HandleEmptyObject<PlaceablesLayer.TearDownOptions>): Promise<void>;
|
182
185
|
|
183
186
|
protected override _activate(): void;
|
184
187
|
|
@@ -195,7 +198,7 @@ declare global {
|
|
195
198
|
* @param objectId - The ID of the contained object to retrieve
|
196
199
|
* @returns The object instance, or undefined
|
197
200
|
*/
|
198
|
-
get(objectId: string): Document.
|
201
|
+
get(objectId: string): Document.ObjectFor<DocumentName> | undefined;
|
199
202
|
|
200
203
|
/**
|
201
204
|
* Acquire control over all PlaceableObject instances which are visible and controllable within the layer.
|
@@ -204,7 +207,9 @@ declare global {
|
|
204
207
|
* (default: `{}`)
|
205
208
|
* @returns An array of objects that were controlled
|
206
209
|
*/
|
207
|
-
controlAll(
|
210
|
+
controlAll(
|
211
|
+
options?: PlaceableObject.ControlOptions, // not:null (property set on it without checks)
|
212
|
+
): Document.ObjectFor<DocumentName>[];
|
208
213
|
|
209
214
|
/**
|
210
215
|
* Release all controlled PlaceableObject instance from this layer.
|
@@ -213,7 +218,9 @@ declare global {
|
|
213
218
|
* (default: `{}`)
|
214
219
|
* @returns The number of PlaceableObject instances which were released
|
215
220
|
*/
|
216
|
-
releaseAll(
|
221
|
+
releaseAll(
|
222
|
+
options?: PlaceableObject.ReleaseOptions, // not:null (`Placeable#release` behaviour depends on subclasses, cannot assume null allowed)
|
223
|
+
): number;
|
217
224
|
|
218
225
|
/**
|
219
226
|
* Simultaneously rotate multiple PlaceableObjects using a provided angle or incremental.
|
@@ -223,11 +230,11 @@ declare global {
|
|
223
230
|
* @param options - Options which configure how multiple objects are rotated
|
224
231
|
* (default: `{}`)
|
225
232
|
* @returns An array of objects which were rotated
|
226
|
-
* @throws
|
227
|
-
* @remarks Overload is necessary to ensure that one of `angle` or `delta` are numeric in `options
|
233
|
+
* @throws If both `options.angle` and `options.delta` are nullish
|
234
|
+
* @remarks Overload is necessary to ensure that one of `angle` or `delta` are numeric in `options`, as neither has a parameter default
|
228
235
|
*/
|
229
|
-
rotateMany(options
|
230
|
-
rotateMany(options
|
236
|
+
rotateMany(options: PlaceablesLayer.RotateManyOptionsWithAngle): Promise<Document.ObjectFor<DocumentName>[]>;
|
237
|
+
rotateMany(options: PlaceablesLayer.RotateManyOptionsWithDelta): Promise<Document.ObjectFor<DocumentName>[]>;
|
231
238
|
|
232
239
|
/**
|
233
240
|
* Simultaneously move multiple PlaceableObjects via keyboard movement offsets.
|
@@ -236,38 +243,37 @@ declare global {
|
|
236
243
|
* @param options - Options which configure how multiple objects are moved
|
237
244
|
* (default: `{}`)
|
238
245
|
* @returns An array of objects which were moved during the operation
|
239
|
-
* @throws
|
246
|
+
* @throws If an array is passed for `ids` and any of its contents are not a valid ID for a placeable on this layer
|
240
247
|
*/
|
241
248
|
moveMany(
|
242
|
-
|
243
|
-
|
244
|
-
): Promise<Document.ConfiguredObjectInstanceForName<DocumentName>[]> | undefined;
|
249
|
+
options?: PlaceablesLayer.MoveManyOptions, // not:null (destructured)
|
250
|
+
): Promise<Document.ObjectFor<DocumentName>[]> | undefined;
|
245
251
|
|
246
252
|
/**
|
247
253
|
* An internal helper method to identify the array of PlaceableObjects which can be moved or rotated.
|
248
254
|
* @param ids - An explicit array of IDs requested.
|
249
255
|
* @param includeLocked - Include locked objects which would otherwise be ignored?
|
250
256
|
* @returns An array of objects which can be moved or rotated
|
251
|
-
* @throws
|
252
|
-
* @remarks Any non-array input for `ids` will default to using currently controlled objects
|
253
|
-
* allowing you to provide `true` to the includeLocked
|
257
|
+
* @throws If an array is passed for `ids` and any of its contents are not a valid ID for a placeable on this layer
|
258
|
+
* @remarks Any non-array input for `ids` will default to using currently controlled objects
|
254
259
|
*/
|
255
|
-
protected _getMovableObjects
|
256
|
-
ids?:
|
257
|
-
includeLocked?: boolean,
|
258
|
-
): Document.
|
260
|
+
protected _getMovableObjects(
|
261
|
+
ids?: string[] | null,
|
262
|
+
includeLocked?: boolean | null,
|
263
|
+
): Document.ObjectFor<DocumentName>[];
|
259
264
|
|
260
265
|
/**
|
261
266
|
* Undo a change to the objects in this layer
|
262
267
|
* This method is typically activated using CTRL+Z while the layer is active
|
263
268
|
*/
|
264
|
-
undoHistory(): Promise<Document.
|
269
|
+
undoHistory(): Promise<Document.ImplementationFor<DocumentName>[]>;
|
265
270
|
|
266
271
|
/**
|
267
272
|
* A helper method to prompt for deletion of all PlaceableObject instances within the Scene
|
268
273
|
* Renders a confirmation dialogue to confirm with the requester that all objects will be deleted
|
269
274
|
* @returns An array of Document objects which were deleted by the operation
|
270
|
-
* @throws
|
275
|
+
* @throws If `!game.user.isGM`
|
276
|
+
* @remarks Returns `null` if the dialog spawned is closed by header button, `false` if cancelled by button, `undefined` if confirmed
|
271
277
|
*/
|
272
278
|
deleteAll(): Promise<undefined | false | null>;
|
273
279
|
|
@@ -277,13 +283,17 @@ declare global {
|
|
277
283
|
* @param data - The object data
|
278
284
|
* @throws An error if any of the objects in the `data` array lack an `_id` key
|
279
285
|
*/
|
280
|
-
storeHistory
|
286
|
+
storeHistory<Operation extends Document.Database.Operation>(
|
287
|
+
type: Operation,
|
288
|
+
data: PlaceablesLayer.HistoryDataFor<Operation, DocumentName>,
|
289
|
+
): void;
|
281
290
|
|
282
291
|
/**
|
283
292
|
* Copy currently controlled PlaceableObjects to a temporary Array, ready to paste back into the scene later
|
284
293
|
* @returns The Array of copied PlaceableObject instances
|
294
|
+
* @remarks If the current layer doesn't allow objects to be controlled, copies the hovered object.
|
285
295
|
*/
|
286
|
-
copyObjects(): Document.
|
296
|
+
copyObjects(): Document.ObjectFor<DocumentName>[];
|
287
297
|
|
288
298
|
/**
|
289
299
|
* Paste currently copied PlaceableObjects back to the layer by creating new copies
|
@@ -293,79 +303,34 @@ declare global {
|
|
293
303
|
*/
|
294
304
|
pasteObjects(
|
295
305
|
position: Canvas.Point,
|
296
|
-
options?:
|
297
|
-
|
298
|
-
* Paste data in a hidden state, if applicable. Default is false.
|
299
|
-
* @defaultValue `false`
|
300
|
-
*/
|
301
|
-
hidden: boolean;
|
302
|
-
|
303
|
-
/**
|
304
|
-
* Snap the resulting objects to the grid. Default is true.
|
305
|
-
* @defaultValue `true`
|
306
|
-
*/
|
307
|
-
snap: boolean;
|
308
|
-
}>,
|
309
|
-
): Promise<Document.ConfiguredInstanceForName<DocumentName>[]>;
|
306
|
+
options?: PlaceablesLayer.PasteOptions, // not:null (destructured)
|
307
|
+
): Promise<Document.ImplementationFor<DocumentName>[]>;
|
310
308
|
|
311
309
|
/**
|
312
310
|
* Get the data of the copied object pasted at the position given by the offset.
|
313
|
-
* Called by {@link PlaceablesLayer#pasteObjects} for each copied object.
|
311
|
+
* Called by {@link PlaceablesLayer.pasteObjects | `PlaceablesLayer#pasteObjects`} for each copied object.
|
314
312
|
* @param copy - The copied object that is pasted
|
315
313
|
* @param offset - The offset relative from the current position to the destination
|
316
|
-
* @param options - Options of {@link PlaceablesLayer#pasteObjects}
|
314
|
+
* @param options - Options of {@link PlaceablesLayer.pasteObjects | `PlaceablesLayer#pasteObjects`}
|
317
315
|
* @returns The update data
|
318
316
|
*/
|
319
|
-
_pasteObject(
|
320
|
-
copy: Document.
|
317
|
+
protected _pasteObject(
|
318
|
+
copy: Document.ObjectFor<DocumentName>,
|
321
319
|
offset: Canvas.Point,
|
322
|
-
options?:
|
323
|
-
|
324
|
-
* Paste in a hidden state, if applicable.
|
325
|
-
* @defaultValue `false`
|
326
|
-
*/
|
327
|
-
hidden: boolean;
|
328
|
-
|
329
|
-
/**
|
330
|
-
* Snap to the grid.
|
331
|
-
* @defaultValue `true`
|
332
|
-
*/
|
333
|
-
snap: boolean;
|
334
|
-
}>,
|
335
|
-
): Document.ConfiguredSourceForName<DocumentName>;
|
320
|
+
options?: PlaceablesLayer.PasteOptions, // not:null (destructured)
|
321
|
+
): Omit<Document.ImplementationFor<DocumentName>["_source"], "_id">;
|
336
322
|
|
337
323
|
/**
|
338
324
|
* Select all PlaceableObject instances which fall within a coordinate rectangle.
|
339
|
-
* @param options
|
325
|
+
* @param options - (default: `{}`)
|
326
|
+
* @param additionalOptions - (default: `{}`)
|
340
327
|
* @returns A boolean for whether the controlled set was changed in the operation
|
328
|
+
* @remarks Despite being a `={}` parameter, an `options` object with positive `width` and `height` properties
|
329
|
+
* is required for reasonable operation
|
341
330
|
*/
|
342
331
|
selectObjects(
|
343
|
-
|
344
|
-
|
345
|
-
* which provides a default of `{}` and then checks for `.releaseOthers` without further checks
|
346
|
-
* */
|
347
|
-
options?: InexactPartial<
|
348
|
-
Canvas.Rectangle & {
|
349
|
-
/**
|
350
|
-
* Optional arguments provided to any called release() method
|
351
|
-
* @defaultValue `{}`
|
352
|
-
*/
|
353
|
-
releaseOptions: PlaceableObject.ReleaseOptions;
|
354
|
-
|
355
|
-
/**
|
356
|
-
* Optional arguments provided to any called control() method
|
357
|
-
* @defaultValue `{ releaseOthers: false }`
|
358
|
-
*/
|
359
|
-
controlOptions: PlaceableObject.ControlOptions;
|
360
|
-
}
|
361
|
-
>,
|
362
|
-
secondOptions?: NullishProps<{
|
363
|
-
/**
|
364
|
-
* Whether to release other selected objects.
|
365
|
-
* @defaultValue `true`
|
366
|
-
*/
|
367
|
-
releaseOthers: boolean;
|
368
|
-
}>,
|
332
|
+
options: PlaceablesLayer.SelectObjectsOptions,
|
333
|
+
additionalOptions?: PlaceablesLayer.SelectObjectsAdditionalOptions, // not:null (destructured)
|
369
334
|
): boolean;
|
370
335
|
|
371
336
|
/**
|
@@ -377,17 +342,15 @@ declare global {
|
|
377
342
|
* @param options - Additional options passed to Document.update
|
378
343
|
* (default: `{}`)
|
379
344
|
* @returns An array of updated data once the operation is complete
|
380
|
-
* @throws An error if the `transformation`
|
345
|
+
* @throws An error if the `transformation` parameter is neither a function nor a plain object
|
381
346
|
*/
|
382
347
|
updateAll(
|
383
348
|
transformation:
|
384
|
-
| ((
|
385
|
-
|
386
|
-
|
387
|
-
|
388
|
-
|
389
|
-
options?: Document.OnUpdateOptions<DocumentName>,
|
390
|
-
): Promise<Array<Document.ConfiguredInstanceForName<DocumentName>>>;
|
349
|
+
| ((placeable: Document.ObjectFor<DocumentName>) => Document.UpdateDataForName<DocumentName>)
|
350
|
+
| Document.UpdateDataForName<DocumentName>,
|
351
|
+
condition?: ((placeable: Document.ObjectFor<DocumentName>) => boolean) | null,
|
352
|
+
options?: PlaceablesLayer.UpdateAllOptions<DocumentName>, // not:null (updateEmbeddedDocuments tries to set `parent` on it)
|
353
|
+
): Promise<Array<Document.ImplementationFor<DocumentName>>>;
|
391
354
|
|
392
355
|
/**
|
393
356
|
* Get the world-transformed drop position.
|
@@ -395,47 +358,24 @@ declare global {
|
|
395
358
|
*/
|
396
359
|
protected _canvasCoordinatesFromDrop(
|
397
360
|
event: DragEvent,
|
398
|
-
options?:
|
399
|
-
|
400
|
-
* Return the co-ordinates of the center of the nearest grid element.
|
401
|
-
* @defaultValue `true`
|
402
|
-
*/
|
403
|
-
center: boolean;
|
404
|
-
}>,
|
405
|
-
): [tx: number, ty: number] | false;
|
361
|
+
options?: PlaceablesLayer.CanvasCoordinatesFromDropOptions, // not:null (destructured)
|
362
|
+
): Canvas.PointTuple | false;
|
406
363
|
|
407
364
|
/**
|
408
365
|
* Create a preview of this layer's object type from a world document and show its sheet to be finalized.
|
409
366
|
* @param createData - The data to create the object with.
|
410
367
|
* @param options - Options which configure preview creation
|
411
368
|
* @returns The created preview object
|
369
|
+
* @remarks Returns a temporary (`new PlaceableDocument()`) document
|
412
370
|
*/
|
413
371
|
protected _createPreview(
|
414
|
-
createData: Document.
|
415
|
-
options?:
|
416
|
-
|
417
|
-
* Render the preview object config sheet?
|
418
|
-
* @defaultValue `true`
|
419
|
-
*/
|
420
|
-
renderSheet: boolean;
|
421
|
-
|
422
|
-
/**
|
423
|
-
* The offset-top position where the sheet should be rendered
|
424
|
-
* @defaultValue `0`
|
425
|
-
*/
|
426
|
-
top: number;
|
427
|
-
|
428
|
-
/**
|
429
|
-
* The offset-left position where the sheet should be rendered
|
430
|
-
* @defaultValue `0`
|
431
|
-
*/
|
432
|
-
left: number;
|
433
|
-
}>,
|
434
|
-
): Promise<Document.ConfiguredObjectInstanceForName<DocumentName>>;
|
372
|
+
createData: Document.CreateDataForName<DocumentName>,
|
373
|
+
options?: PlaceablesLayer.CreatePreviewOptions, // not:null (destructured)
|
374
|
+
): Promise<Document.ObjectFor<DocumentName>>;
|
435
375
|
|
436
376
|
protected override _onClickLeft(event: PIXI.FederatedEvent): void;
|
437
377
|
|
438
|
-
protected override _canDragLeftStart(user: User.
|
378
|
+
protected override _canDragLeftStart(user: User.Implementation, event: PIXI.FederatedEvent): boolean;
|
439
379
|
|
440
380
|
protected override _onDragLeftStart(event: PIXI.FederatedEvent): void;
|
441
381
|
|
@@ -447,7 +387,9 @@ declare global {
|
|
447
387
|
|
448
388
|
protected override _onClickRight(event: PIXI.FederatedEvent): void;
|
449
389
|
|
450
|
-
|
390
|
+
/** @privateRemarks `void` added to return union for TokenLayer reasons */
|
391
|
+
// eslint-disable-next-line @typescript-eslint/no-misused-promises
|
392
|
+
protected override _onMouseWheel(event: WheelEvent): Promise<Document.ObjectFor<DocumentName>[] | void>;
|
451
393
|
|
452
394
|
protected override _onDeleteKey(event: KeyboardEvent): Promise<void>;
|
453
395
|
|
@@ -470,49 +412,36 @@ declare global {
|
|
470
412
|
set _highlight(state);
|
471
413
|
}
|
472
414
|
|
473
|
-
|
474
|
-
|
475
|
-
* The type of operation stored as history (create, update, delete)
|
476
|
-
*/
|
477
|
-
type: PlaceablesLayer.HistoryEventType;
|
478
|
-
|
479
|
-
/**
|
480
|
-
* The data corresponding to the action which may later be un-done
|
481
|
-
*/
|
482
|
-
data: InstanceType<Document.ConfiguredClassForName<DocumentName>>["_source"][];
|
483
|
-
}
|
484
|
-
|
485
|
-
type PlaceablesLayerOptions<DocumentName extends Document.PlaceableType> = PlaceablesLayer.LayerOptions<DocumentName>;
|
415
|
+
/** @deprecated {@link PlaceablesLayer.LayerOptions | `PlaceablesLayer.LayerOptions`} */
|
416
|
+
export import PlaceablesLayerOptions = PlaceablesLayer.LayerOptions;
|
486
417
|
|
487
418
|
namespace PlaceablesLayer {
|
488
|
-
|
489
|
-
|
490
|
-
type AnyConstructor = typeof AnyPlaceablesLayer;
|
419
|
+
interface Any extends AnyPlaceablesLayer {}
|
420
|
+
interface AnyConstructor extends Identity<typeof AnyPlaceablesLayer> {}
|
491
421
|
|
492
|
-
type
|
422
|
+
type DocumentNames = Document.PlaceableType;
|
493
423
|
|
494
|
-
type
|
495
|
-
|
496
|
-
type CreationState = ValueOf<(typeof PlaceablesLayer)["CREATION_STATES"]>;
|
497
|
-
|
498
|
-
type ConfiguredClassForName<Name extends Document.PlaceableType> = CONFIG[Name]["layerClass"];
|
424
|
+
type ImplementationClassFor<Name extends DocumentNames> = CONFIG[Name]["layerClass"];
|
425
|
+
type ImplementationFor<Name extends DocumentNames> = FixedInstanceType<CONFIG[Name]["layerClass"]>;
|
499
426
|
|
500
427
|
interface DrawOptions extends InteractionLayer.DrawOptions {}
|
501
428
|
|
502
429
|
interface TearDownOptions extends CanvasLayer.DrawOptions {}
|
503
430
|
|
504
|
-
|
505
|
-
|
506
|
-
|
507
|
-
|
508
|
-
|
431
|
+
type CREATION_STATES = Brand<number, "PlaceablesLayer.CREATION_STATES">;
|
432
|
+
|
433
|
+
/** Creation states affected to placeables during their construction. */
|
434
|
+
interface CreationStates {
|
435
|
+
NONE: 0 & CREATION_STATES;
|
436
|
+
POTENTIAL: 1 & CREATION_STATES;
|
437
|
+
CONFIRMED: 2 & CREATION_STATES;
|
438
|
+
COMPLETED: 3 & CREATION_STATES;
|
509
439
|
}
|
510
440
|
|
511
|
-
|
512
|
-
|
513
|
-
*/
|
514
|
-
interface LayerOptions<DocumentName extends Type> extends InteractionLayer.LayerOptions {
|
441
|
+
interface LayerOptions<ConcretePlaceable extends PlaceableObject.AnyConstructor>
|
442
|
+
extends InteractionLayer.LayerOptions {
|
515
443
|
baseClass: typeof PlaceablesLayer;
|
444
|
+
|
516
445
|
/**
|
517
446
|
* Can placeable objects in this layer be controlled?
|
518
447
|
* @defaultValue `false`
|
@@ -535,7 +464,7 @@ declare global {
|
|
535
464
|
* The class used to represent an object on this layer.
|
536
465
|
* @defaultValue `CONFIG[this.documentName]?.objectClass`
|
537
466
|
*/
|
538
|
-
objectClass:
|
467
|
+
objectClass: ConcretePlaceable;
|
539
468
|
|
540
469
|
/**
|
541
470
|
* Does this layer use a quadtree to track object positions?
|
@@ -545,99 +474,204 @@ declare global {
|
|
545
474
|
}
|
546
475
|
|
547
476
|
namespace LayerOptions {
|
548
|
-
|
477
|
+
interface Any extends LayerOptions<any> {}
|
549
478
|
}
|
550
|
-
}
|
551
|
-
}
|
552
479
|
|
553
|
-
|
554
|
-
|
555
|
-
|
480
|
+
/** @internal */
|
481
|
+
type _RotateManyOptions = NullishProps<{
|
482
|
+
/**
|
483
|
+
* Snap the resulting angle to a multiple of some increment (in degrees)
|
484
|
+
* @remarks Passed to {@link PlaceableObject._updateRotation | `PlaceableObject#_updateRotation`} where it is checked for `> 0` before being passed to the non-null-safe `Number#toNearest`
|
485
|
+
*/
|
486
|
+
snap: number;
|
487
|
+
/**
|
488
|
+
* An Array of object IDs to target for rotation
|
489
|
+
* @remarks Passed to {@link PlaceablesLayer._getMovableObjects | `PlaceablesLayer#_getMovableObjects`}
|
490
|
+
*/
|
491
|
+
ids: string[];
|
492
|
+
/**
|
493
|
+
* Rotate objects whose documents are locked?
|
494
|
+
* @defaultValue `false`
|
495
|
+
*/
|
496
|
+
includeLocked: boolean;
|
497
|
+
}>;
|
556
498
|
|
557
|
-
|
558
|
-
|
559
|
-
|
560
|
-
|
561
|
-
|
499
|
+
/** @internal */
|
500
|
+
interface _RotateManyOptionsAngle {
|
501
|
+
/**
|
502
|
+
* A target angle of rotation (in degrees) where zero faces "south"
|
503
|
+
*/
|
504
|
+
angle: number;
|
505
|
+
}
|
562
506
|
|
563
|
-
|
564
|
-
|
565
|
-
|
566
|
-
|
507
|
+
/** @internal */
|
508
|
+
interface _RotateManyOptionsDelta {
|
509
|
+
/**
|
510
|
+
* An incremental angle of rotation (in degrees)
|
511
|
+
*/
|
512
|
+
delta: number;
|
513
|
+
}
|
567
514
|
|
568
|
-
|
569
|
-
|
570
|
-
|
571
|
-
|
515
|
+
interface RotateManyOptionsWithAngle
|
516
|
+
extends _RotateManyOptions,
|
517
|
+
NullishProps<_RotateManyOptionsDelta>,
|
518
|
+
_RotateManyOptionsAngle {}
|
572
519
|
|
573
|
-
|
574
|
-
|
575
|
-
|
576
|
-
|
520
|
+
interface RotateManyOptionsWithDelta
|
521
|
+
extends _RotateManyOptions,
|
522
|
+
NullishProps<_RotateManyOptionsAngle>,
|
523
|
+
_RotateManyOptionsDelta {}
|
577
524
|
|
578
|
-
|
579
|
-
|
580
|
-
|
581
|
-
|
582
|
-
|
583
|
-
|
525
|
+
/** @internal */
|
526
|
+
type _MoveManyOptions = InexactPartial<{
|
527
|
+
/**
|
528
|
+
* Horizontal movement direction
|
529
|
+
* @defaultValue `0`
|
530
|
+
* @remarks Can't be `null` because it only has a parameter default
|
531
|
+
*/
|
532
|
+
dx: -1 | 0 | 1;
|
584
533
|
|
585
|
-
|
586
|
-
|
587
|
-
|
588
|
-
|
589
|
-
|
534
|
+
/**
|
535
|
+
* Vertical movement direction
|
536
|
+
* @defaultValue `0`
|
537
|
+
* @remarks Can't be `null` because it only has a parameter default
|
538
|
+
*/
|
539
|
+
dy: -1 | 0 | 1;
|
540
|
+
}> &
|
541
|
+
NullishProps<{
|
542
|
+
/**
|
543
|
+
* Rotate the placeable to the keyboard direction instead of moving
|
544
|
+
* @defaultValue `false`
|
545
|
+
*/
|
546
|
+
rotate: boolean;
|
590
547
|
|
591
|
-
|
592
|
-
|
593
|
-
|
594
|
-
|
548
|
+
/**
|
549
|
+
* An Array of object IDs to target for movement. The default is the IDs of controlled objects.
|
550
|
+
* @defaultValue `this.controlled.filter(o => !o.data.locked).map(o => o.id)`
|
551
|
+
*/
|
552
|
+
ids: string[];
|
595
553
|
|
596
|
-
|
597
|
-
|
598
|
-
|
599
|
-
|
554
|
+
/**
|
555
|
+
* Move objects whose documents are locked?
|
556
|
+
* @defaultValue `false`
|
557
|
+
*/
|
558
|
+
includeLocked: boolean;
|
559
|
+
}>;
|
560
|
+
|
561
|
+
interface MoveManyOptions extends _MoveManyOptions {}
|
562
|
+
|
563
|
+
/** @privateRemarks Handled like this rather than an interface mapping to avoid extraneous type calculation */
|
564
|
+
type HistoryDataFor<Operation extends Document.Database.Operation, DocumentName extends DocumentNames> =
|
565
|
+
| (Operation extends "create" ? { _id: string } : never)
|
566
|
+
| (Operation extends "update" ? Document.UpdateDataForName<DocumentName> & { _id: string } : never)
|
567
|
+
| (Operation extends "delete" ? Document.CreateDataForName<DocumentName> & { _id: string } : never);
|
568
|
+
|
569
|
+
type HistoryEntry<DocumentName extends DocumentNames> =
|
570
|
+
| { type: "create"; data: HistoryDataFor<"create", DocumentName>[] }
|
571
|
+
| {
|
572
|
+
type: "update";
|
573
|
+
data: HistoryDataFor<"update", DocumentName>[];
|
574
|
+
}
|
575
|
+
| {
|
576
|
+
type: "delete";
|
577
|
+
data: HistoryDataFor<"delete", DocumentName>[];
|
578
|
+
};
|
600
579
|
|
601
|
-
|
602
|
-
|
603
|
-
|
604
|
-
|
580
|
+
/** @internal */
|
581
|
+
type _PasteOptions = NullishProps<{
|
582
|
+
/**
|
583
|
+
* Paste data in a hidden state, if applicable. Default is false.
|
584
|
+
* @defaultValue `false`
|
585
|
+
*/
|
586
|
+
hidden: boolean;
|
605
587
|
|
606
|
-
|
607
|
-
|
608
|
-
|
609
|
-
|
610
|
-
|
611
|
-
}
|
588
|
+
/**
|
589
|
+
* Snap the resulting objects to the grid. Default is true.
|
590
|
+
* @defaultValue `true`
|
591
|
+
*/
|
592
|
+
snap: boolean;
|
593
|
+
}>;
|
612
594
|
|
613
|
-
interface
|
614
|
-
/**
|
615
|
-
* Horizontal movement direction
|
616
|
-
* @defaultValue `0`
|
617
|
-
*/
|
618
|
-
dx: -1 | 0 | 1;
|
595
|
+
interface PasteOptions extends _PasteOptions {}
|
619
596
|
|
620
|
-
|
621
|
-
|
622
|
-
|
623
|
-
|
624
|
-
|
597
|
+
/**
|
598
|
+
* @internal
|
599
|
+
* @privateRemarks Only marking `x` and `y` from `Canvas.Rectangle` optional, as the `PIXI.Rectangle` defaults of `0` make no sense for `width` or `height` in this context
|
600
|
+
*/
|
601
|
+
type _SelectObjectsOptions = NullishProps<Canvas.Rectangle, "x" | "y"> &
|
602
|
+
InexactPartial<{
|
603
|
+
/**
|
604
|
+
* Optional arguments provided to any called release() method
|
605
|
+
* @defaultValue `{}`
|
606
|
+
* @remarks Can't be null as it only has a parameter default
|
607
|
+
*/
|
608
|
+
releaseOptions: PlaceableObject.ReleaseOptions;
|
625
609
|
|
626
|
-
|
627
|
-
|
628
|
-
|
629
|
-
|
630
|
-
|
610
|
+
/**
|
611
|
+
* Optional arguments provided to any called control() method
|
612
|
+
* @defaultValue `{}`
|
613
|
+
* @remarks Can't be null as it only has a parameter default
|
614
|
+
*/
|
615
|
+
controlOptions: PlaceableObject.ControlOptions;
|
616
|
+
}>;
|
631
617
|
|
632
|
-
|
633
|
-
* An Array of object IDs to target for movement. The default is the IDs of controlled objects.
|
634
|
-
* @defaultValue `this.controlled.filter(o => !o.data.locked).map(o => o.id)`
|
635
|
-
*/
|
636
|
-
ids: string[];
|
618
|
+
interface SelectObjectsOptions extends _SelectObjectsOptions {}
|
637
619
|
|
638
|
-
|
639
|
-
|
640
|
-
|
641
|
-
|
642
|
-
|
620
|
+
/**
|
621
|
+
* @internal
|
622
|
+
* @privateRemarks This is functionally identical to `PlaceableObject.ControlOptions`, but only the one key gets checked,
|
623
|
+
* and it's not passed on anywhere, so it gets its own type to not cause confusion with `SelectObjectsOptions["controlOptions"]`
|
624
|
+
*/
|
625
|
+
type _SelectObjectAdditionalOptions = NullishProps<{
|
626
|
+
/**
|
627
|
+
* Whether to release other selected objects.
|
628
|
+
* @defaultValue `true`
|
629
|
+
*/
|
630
|
+
releaseOthers: boolean;
|
631
|
+
}>;
|
632
|
+
|
633
|
+
interface SelectObjectsAdditionalOptions extends _SelectObjectAdditionalOptions {}
|
634
|
+
|
635
|
+
type UpdateAllOptions<DocumentName extends DocumentNames> = IntentionalPartial<
|
636
|
+
Document.UpdateDataForName<DocumentName>
|
637
|
+
>;
|
638
|
+
|
639
|
+
/** @internal */
|
640
|
+
type _CanvasCoordinatesFromDropOptions = NullishProps<{
|
641
|
+
/**
|
642
|
+
* Return the co-ordinates of the center of the nearest grid element.
|
643
|
+
* @defaultValue `true`
|
644
|
+
*/
|
645
|
+
center: boolean;
|
646
|
+
}>;
|
647
|
+
|
648
|
+
interface CanvasCoordinatesFromDropOptions extends _CanvasCoordinatesFromDropOptions {}
|
649
|
+
|
650
|
+
/** @internal */
|
651
|
+
type _CreatePreviewOptions = NullishProps<{
|
652
|
+
/**
|
653
|
+
* Render the preview object config sheet?
|
654
|
+
* @defaultValue `true`
|
655
|
+
*/
|
656
|
+
renderSheet: boolean;
|
657
|
+
|
658
|
+
/**
|
659
|
+
* The offset-top position where the sheet should be rendered
|
660
|
+
* @defaultValue `0`
|
661
|
+
*/
|
662
|
+
top: number;
|
663
|
+
|
664
|
+
/**
|
665
|
+
* The offset-left position where the sheet should be rendered
|
666
|
+
* @defaultValue `0`
|
667
|
+
*/
|
668
|
+
left: number;
|
669
|
+
}>;
|
670
|
+
|
671
|
+
interface CreatePreviewOptions extends _CreatePreviewOptions {}
|
672
|
+
}
|
673
|
+
}
|
674
|
+
|
675
|
+
declare abstract class AnyPlaceablesLayer extends PlaceablesLayer<PlaceablesLayer.DocumentNames> {
|
676
|
+
constructor(...args: never);
|
643
677
|
}
|