@league-of-foundry-developers/foundry-vtt-types 12.331.3-beta → 12.331.5
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 +91 -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 +10 -5
- package/src/foundry/client/apps/forms/fonts.d.mts +42 -35
- package/src/foundry/client/apps/forms/grid-config.d.mts +12 -13
- 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 +31 -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 +1 -1
- 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 -312
- 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 +14 -13
- 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 +400 -62
- 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 +22 -28
- package/src/foundry/client/data/abstract/client-document.d.mts +238 -206
- package/src/foundry/client/data/abstract/directory-collection-mixin.d.mts +24 -40
- package/src/foundry/client/data/abstract/document-collection.d.mts +96 -68
- package/src/foundry/client/data/abstract/world-collection.d.mts +53 -54
- 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 +84 -101
- package/src/foundry/client/data/collections/compendium-folders.d.mts +6 -6
- package/src/foundry/client/data/collections/compendium-packs.d.mts +5 -5
- 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 +22 -10
- package/src/foundry/client/data/documents/active-effect.d.mts +780 -112
- package/src/foundry/client/data/documents/actor-delta.d.mts +705 -31
- package/src/foundry/client/data/documents/actor.d.mts +806 -98
- package/src/foundry/client/data/documents/adventure.d.mts +522 -59
- package/src/foundry/client/data/documents/ambient-light.d.mts +427 -20
- package/src/foundry/client/data/documents/ambient-sound.d.mts +478 -14
- package/src/foundry/client/data/documents/card.d.mts +598 -44
- package/src/foundry/client/data/documents/cards.d.mts +862 -169
- package/src/foundry/client/data/documents/chat-message.d.mts +668 -77
- package/src/foundry/client/data/documents/combat.d.mts +757 -107
- package/src/foundry/client/data/documents/combatant.d.mts +545 -32
- package/src/foundry/client/data/documents/drawing.d.mts +545 -14
- package/src/foundry/client/data/documents/fog-exploration.d.mts +465 -30
- package/src/foundry/client/data/documents/folder.d.mts +567 -51
- package/src/foundry/client/data/documents/index.d.mts +2 -0
- package/src/foundry/client/data/documents/item.d.mts +691 -24
- package/src/foundry/client/data/documents/journal-entry-page.d.mts +654 -55
- package/src/foundry/client/data/documents/journal-entry.d.mts +631 -35
- package/src/foundry/client/data/documents/macro.d.mts +560 -31
- package/src/foundry/client/data/documents/measured-template.d.mts +484 -15
- package/src/foundry/client/data/documents/note.d.mts +498 -15
- package/src/foundry/client/data/documents/playlist-sound.d.mts +443 -45
- package/src/foundry/client/data/documents/playlist.d.mts +710 -99
- package/src/foundry/client/data/documents/region-behavior.d.mts +516 -0
- package/src/foundry/client/data/documents/region.d.mts +789 -0
- package/src/foundry/client/data/documents/scene.d.mts +1216 -159
- package/src/foundry/client/data/documents/setting.d.mts +406 -23
- package/src/foundry/client/data/documents/table-result.d.mts +488 -14
- package/src/foundry/client/data/documents/table.d.mts +667 -78
- package/src/foundry/client/data/documents/tile.d.mts +505 -14
- package/src/foundry/client/data/documents/token.d.mts +1191 -143
- package/src/foundry/client/data/documents/user.d.mts +613 -57
- package/src/foundry/client/data/documents/wall.d.mts +555 -14
- package/src/foundry/client/game.d.mts +60 -92
- package/src/foundry/client/head.d.mts +9 -9
- package/src/foundry/client/hooks.d.mts +259 -248
- package/src/foundry/client/pixi/board.d.mts +107 -94
- 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 +69 -30
- 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 +128 -125
- package/src/foundry/client/pixi/extensions/graphics.d.mts +3 -1
- package/src/foundry/client/pixi/extensions/observable-transform.d.mts +5 -4
- package/src/foundry/client/pixi/extensions/polygon.d.mts +154 -134
- package/src/foundry/client/pixi/extensions/rectangle.d.mts +242 -259
- 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 +91 -64
- package/src/foundry/client/pixi/perception/weiler-atherton-clipping.d.mts +44 -16
- package/src/foundry/client/pixi/placeable.d.mts +239 -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 +193 -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 -100
- package/src/foundry/client/pixi/placeables/tile.d.mts +206 -140
- package/src/foundry/client/pixi/placeables/token.d.mts +916 -449
- 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 +28 -19
- 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 +1 -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 +10 -8
- 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 +2 -0
- 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 +124 -80
- package/src/foundry/client-esm/audio/sound.d.mts +230 -126
- package/src/foundry/client-esm/audio/timeout.d.mts +28 -12
- 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 +6 -11
- 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 +13 -3
- 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 -27
- 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 +175 -2
- package/src/foundry/client-esm/canvas/tokens/ring-data.d.mts +142 -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 +11 -14
- package/src/foundry/client-esm/data/region-behaviors/adjust-darkness-level.d.mts +56 -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 +112 -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 +265 -236
- package/src/foundry/common/abstract/document.d.mts +1449 -464
- 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 +61 -55
- package/src/foundry/common/config.d.mts +11 -3
- package/src/foundry/common/constants.d.mts +261 -231
- package/src/foundry/common/data/data.d.mts +238 -102
- package/src/foundry/common/data/fields.d.mts +1334 -874
- 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 -56
- package/src/foundry/common/documents/active-effect.d.mts +358 -194
- package/src/foundry/common/documents/actor-delta.d.mts +403 -73
- package/src/foundry/common/documents/actor.d.mts +359 -117
- package/src/foundry/common/documents/adventure.d.mts +312 -142
- package/src/foundry/common/documents/ambient-light.d.mts +296 -75
- package/src/foundry/common/documents/ambient-sound.d.mts +296 -109
- package/src/foundry/common/documents/card.d.mts +321 -187
- package/src/foundry/common/documents/cards.d.mts +353 -125
- package/src/foundry/common/documents/chat-message.d.mts +338 -167
- package/src/foundry/common/documents/combat.d.mts +358 -94
- package/src/foundry/common/documents/combatant.d.mts +323 -92
- package/src/foundry/common/documents/drawing.d.mts +327 -206
- package/src/foundry/common/documents/fog-exploration.d.mts +303 -69
- package/src/foundry/common/documents/folder.d.mts +307 -82
- package/src/foundry/common/documents/item.d.mts +377 -100
- package/src/foundry/common/documents/journal-entry-page.d.mts +327 -187
- package/src/foundry/common/documents/journal-entry.d.mts +345 -68
- package/src/foundry/common/documents/macro.d.mts +325 -139
- package/src/foundry/common/documents/measured-template.d.mts +328 -138
- package/src/foundry/common/documents/note.d.mts +312 -151
- package/src/foundry/common/documents/playlist-sound.d.mts +309 -102
- package/src/foundry/common/documents/playlist.d.mts +341 -131
- package/src/foundry/common/documents/region-behavior.d.mts +360 -0
- package/src/foundry/common/documents/region.d.mts +355 -0
- package/src/foundry/common/documents/roll-table.d.mts +320 -102
- package/src/foundry/common/documents/scene.d.mts +437 -350
- package/src/foundry/common/documents/setting.d.mts +285 -54
- package/src/foundry/common/documents/table-result.d.mts +326 -103
- package/src/foundry/common/documents/tile.d.mts +337 -172
- package/src/foundry/common/documents/token.d.mts +396 -447
- package/src/foundry/common/documents/user.d.mts +296 -173
- package/src/foundry/common/documents/wall.d.mts +303 -156
- 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 +35 -28
- 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 +56 -31
- package/src/foundry/common/packages/base-system.d.mts +45 -63
- package/src/foundry/common/packages/base-world.d.mts +15 -61
- package/src/foundry/common/packages/module.d.mts +7 -7
- package/src/foundry/common/packages/sub-types.d.mts +4 -6
- 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/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 +58 -16
- 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 +18 -313
- 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 -583
- package/src/types/utils.d.mts +0 -539
- /package/src/foundry/{clipper → public/scripts/clipper}/index.d.mts +0 -0
@@ -1,78 +1,650 @@
|
|
1
|
-
import type {
|
1
|
+
import type { ConfiguredChatMessage } from "../../../../configuration/index.d.mts";
|
2
|
+
import type { AnyObject, InterfaceToObject, Merge, NullishProps } from "#utils";
|
3
|
+
import type { documents } from "../../../client-esm/client.d.mts";
|
2
4
|
import type Document from "../../../common/abstract/document.d.mts";
|
3
|
-
import type {
|
5
|
+
import type { DataSchema, SchemaField } from "../../../common/data/fields.d.mts";
|
6
|
+
import type { fields } from "../../../common/data/module.d.mts";
|
4
7
|
import type BaseChatMessage from "../../../common/documents/chat-message.d.mts";
|
5
8
|
|
6
9
|
declare global {
|
7
10
|
namespace ChatMessage {
|
8
|
-
|
11
|
+
/**
|
12
|
+
* The document's name.
|
13
|
+
*/
|
14
|
+
type Name = "ChatMessage";
|
9
15
|
|
10
|
-
|
11
|
-
|
16
|
+
/**
|
17
|
+
* The arguments to construct the document.
|
18
|
+
*/
|
19
|
+
type ConstructorArgs = Document.ConstructorParameters<CreateData, Parent>;
|
12
20
|
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
21
|
+
/**
|
22
|
+
* The documents embedded within `ChatMessage`.
|
23
|
+
*/
|
24
|
+
type Hierarchy = Readonly<Document.HierarchyOf<Schema>>;
|
25
|
+
|
26
|
+
/**
|
27
|
+
* The implementation of the `ChatMessage` document instance configured through `CONFIG.ChatMessage.documentClass` in Foundry and
|
28
|
+
* {@link DocumentClassConfig | `DocumentClassConfig`} or {@link ConfiguredChatMessage | `fvtt-types/configuration/ConfiguredChatMessage`} in fvtt-types.
|
29
|
+
*/
|
30
|
+
type Implementation = Document.ImplementationFor<Name>;
|
31
|
+
|
32
|
+
/**
|
33
|
+
* The implementation of the `ChatMessage` document configured through `CONFIG.ChatMessage.documentClass` in Foundry and
|
34
|
+
* {@link DocumentClassConfig | `DocumentClassConfig`} in fvtt-types.
|
35
|
+
*/
|
36
|
+
type ImplementationClass = Document.ImplementationClassFor<Name>;
|
37
|
+
|
38
|
+
/**
|
39
|
+
* A document's metadata is special information about the document ranging anywhere from its name,
|
40
|
+
* whether it's indexed, or to the permissions a user has over it.
|
41
|
+
*/
|
42
|
+
interface Metadata
|
43
|
+
extends Merge<
|
44
|
+
Document.Metadata.Default,
|
45
|
+
Readonly<{
|
46
|
+
name: "ChatMessage";
|
47
|
+
collection: "messages";
|
48
|
+
label: string;
|
49
|
+
labelPlural: string;
|
50
|
+
hasTypeData: true;
|
51
|
+
isPrimary: true;
|
52
|
+
permissions: Metadata.Permissions;
|
53
|
+
schemaVersion: string;
|
54
|
+
}>
|
20
55
|
> {}
|
21
|
-
/* eslint-enable @typescript-eslint/no-empty-object-type */
|
22
56
|
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
57
|
+
namespace Metadata {
|
58
|
+
/**
|
59
|
+
* The permissions for whether a certain user can create, update, or delete this document.
|
60
|
+
*/
|
61
|
+
interface Permissions {
|
62
|
+
create(user: User.Internal.Implementation, doc: Implementation): boolean;
|
63
|
+
update(user: User.Internal.Implementation, doc: Implementation, data: UpdateData): boolean;
|
64
|
+
}
|
65
|
+
}
|
29
66
|
|
30
|
-
|
31
|
-
|
32
|
-
|
67
|
+
/**
|
68
|
+
* Allowed subtypes of `ChatMessage`. This is configured through various methods. Modern Foundry
|
69
|
+
* recommends registering using [Data Models](https://foundryvtt.com/article/system-data-models/)
|
70
|
+
* under {@link CONFIG.ChatMessage.dataModels | `CONFIG.ChatMessage.dataModels`}. This corresponds to
|
71
|
+
* fvtt-type's {@link DataModelConfig | `DataModelConfig`}.
|
72
|
+
*
|
73
|
+
* Subtypes can also be registered through a `template.json` though this is discouraged.
|
74
|
+
* The corresponding fvtt-type configs are {@link SourceConfig | `SourceConfig`} and
|
75
|
+
* {@link DataConfig | `DataConfig`}.
|
76
|
+
*/
|
77
|
+
type SubType = Game.Model.TypeNames<"ChatMessage">;
|
78
|
+
|
79
|
+
/**
|
80
|
+
* `ConfiguredSubTypes` represents the subtypes a user explicitly registered. This excludes
|
81
|
+
* subtypes like the Foundry builtin subtype `"base"` and the catch-all subtype for arbitrary
|
82
|
+
* module subtypes `${string}.${string}`.
|
83
|
+
*
|
84
|
+
* @see {@link SubType} for more information.
|
85
|
+
*/
|
86
|
+
type ConfiguredSubTypes = Document.ConfiguredSubTypesOf<"ChatMessage">;
|
87
|
+
|
88
|
+
/**
|
89
|
+
* `Known` represents the types of `ChatMessage` that a user explicitly registered.
|
90
|
+
*
|
91
|
+
* @see {@link ConfiguredSubTypes} for more information.
|
92
|
+
*/
|
93
|
+
type Known = ChatMessage.OfType<ChatMessage.ConfiguredSubTypes>;
|
94
|
+
|
95
|
+
/**
|
96
|
+
* `OfType` returns an instance of `ChatMessage` with the corresponding type. This works with both the
|
97
|
+
* builtin `ChatMessage` class or a custom subclass if that is set up in
|
98
|
+
* {@link ConfiguredChatMessage | `fvtt-types/configuration/ConfiguredChatMessage`}.
|
99
|
+
*/
|
100
|
+
// eslint-disable-next-line @typescript-eslint/no-restricted-types
|
101
|
+
type OfType<Type extends SubType> = Document.Internal.OfType<ConfiguredChatMessage<Type>, ChatMessage<Type>>;
|
102
|
+
|
103
|
+
/**
|
104
|
+
* `SystemOfType` returns the system property for a specific `ChatMessage` subtype.
|
105
|
+
*/
|
106
|
+
type SystemOfType<Type extends SubType> = Document.Internal.SystemOfType<_SystemMap, Type>;
|
107
|
+
|
108
|
+
/**
|
109
|
+
* @internal
|
110
|
+
*/
|
111
|
+
interface _SystemMap extends Document.Internal.SystemMap<"ChatMessage"> {}
|
112
|
+
|
113
|
+
/**
|
114
|
+
* A document's parent is something that can contain it.
|
115
|
+
* For example an `Item` can be contained by an `Actor` which makes `Actor` one of its possible parents.
|
116
|
+
*/
|
117
|
+
type Parent = null;
|
118
|
+
|
119
|
+
/**
|
120
|
+
* A document's descendants are any child documents, grandchild documents, etc.
|
121
|
+
* This is a union of all instances, or never if the document doesn't have any descendants.
|
122
|
+
*/
|
123
|
+
type Descendant = never;
|
124
|
+
|
125
|
+
/**
|
126
|
+
* A document's descendants are any child documents, grandchild documents, etc.
|
127
|
+
* This is a union of all classes, or never if the document doesn't have any descendants.
|
128
|
+
*/
|
129
|
+
type DescendantClass = never;
|
130
|
+
|
131
|
+
/**
|
132
|
+
* Types of `CompendiumCollection` this document might be contained in.
|
133
|
+
* Note that `this.pack` will always return a string; this is the type for `game.packs.get(this.pack)`
|
134
|
+
*/
|
135
|
+
// Note: Takes any document in the heritage chain (i.e. itself or any parent, transitive or not) that can be contained in a compendium.
|
136
|
+
type Pack = never;
|
137
|
+
|
138
|
+
/**
|
139
|
+
* An embedded document is a document contained in another.
|
140
|
+
* For example an `Item` can be contained by an `Actor` which means `Item` can be embedded in `Actor`.
|
141
|
+
*
|
142
|
+
* If this is `never` it is because there are no embeddable documents (or there's a bug!).
|
143
|
+
*/
|
144
|
+
type Embedded = never;
|
145
|
+
|
146
|
+
/**
|
147
|
+
* The name of the world or embedded collection this document can find itself in.
|
148
|
+
* For example an `Item` is always going to be inside a collection with a key of `items`.
|
149
|
+
* This is a fixed string per document type and is primarily useful for {@link ClientDocumentMixin | `Descendant Document Events`}.
|
150
|
+
*/
|
151
|
+
type ParentCollectionName = Metadata["collection"];
|
152
|
+
|
153
|
+
/**
|
154
|
+
* The world collection that contains `ChatMessage`s. Will be `never` if none exists.
|
155
|
+
*/
|
156
|
+
type CollectionClass = Messages.ConfiguredClass;
|
157
|
+
|
158
|
+
/**
|
159
|
+
* The world collection that contains `ChatMessage`s. Will be `never` if none exists.
|
160
|
+
*/
|
161
|
+
type Collection = Messages.Configured;
|
162
|
+
|
163
|
+
/**
|
164
|
+
* An instance of `ChatMessage` that comes from the database but failed validation meaning that
|
165
|
+
* its `system` and `_source` could theoretically be anything.
|
166
|
+
*/
|
167
|
+
interface Invalid<out SubType extends ChatMessage.SubType = ChatMessage.SubType>
|
168
|
+
extends Document.Invalid<OfType<SubType>> {}
|
169
|
+
|
170
|
+
/**
|
171
|
+
* An instance of `ChatMessage` that comes from the database.
|
172
|
+
*/
|
173
|
+
interface Stored<out SubType extends ChatMessage.SubType = ChatMessage.SubType>
|
174
|
+
extends Document.Stored<OfType<SubType>> {}
|
175
|
+
|
176
|
+
/**
|
177
|
+
* The data put in {@link ChatMessage._source | `ChatMessage#_source`}. This data is what was
|
178
|
+
* persisted to the database and therefore it must be valid JSON.
|
179
|
+
*
|
180
|
+
* For example a {@link fields.SetField | `SetField`} is persisted to the database as an array
|
181
|
+
* but initialized as a {@link Set | `Set`}.
|
182
|
+
*/
|
183
|
+
interface Source extends fields.SchemaField.SourceData<Schema> {}
|
184
|
+
|
185
|
+
/**
|
186
|
+
* @deprecated {@link ChatMessage.Source | `ChatMessage.Source`}
|
187
|
+
*/
|
188
|
+
type PersistedData = Source;
|
189
|
+
|
190
|
+
/**
|
191
|
+
* The data necessary to create a document. Used in places like {@link ChatMessage.create | `ChatMessage.create`}
|
192
|
+
* and {@link ChatMessage | `new ChatMessage(...)`}.
|
193
|
+
*
|
194
|
+
* For example a {@link fields.SetField | `SetField`} can accept any {@link Iterable | `Iterable`}
|
195
|
+
* with the right values. This means you can pass a `Set` instance, an array of values,
|
196
|
+
* a generator, or any other iterable.
|
197
|
+
*/
|
198
|
+
interface CreateData extends fields.SchemaField.CreateData<Schema> {}
|
199
|
+
|
200
|
+
/**
|
201
|
+
* The data after a {@link foundry.abstract.Document | `Document`} has been initialized, for example
|
202
|
+
* {@link ChatMessage.name | `ChatMessage#name`}.
|
203
|
+
*
|
204
|
+
* This is data transformed from {@link ChatMessage.Source | `ChatMessage.Source`} and turned into more
|
205
|
+
* convenient runtime data structures. For example a {@link fields.SetField | `SetField`} is
|
206
|
+
* persisted to the database as an array of values but at runtime it is a `Set` instance.
|
207
|
+
*/
|
208
|
+
interface InitializedData extends fields.SchemaField.InitializedData<Schema> {}
|
209
|
+
|
210
|
+
/**
|
211
|
+
* The data used to update a document, for example {@link ChatMessage.update | `ChatMessage#update`}.
|
212
|
+
* It is a distinct type from {@link ChatMessage.CreateData | `DeepPartial<ChatMessage.CreateData>`} because
|
213
|
+
* it has different rules for `null` and `undefined`.
|
214
|
+
*/
|
215
|
+
interface UpdateData extends fields.SchemaField.UpdateData<Schema> {}
|
216
|
+
|
217
|
+
/**
|
218
|
+
* The schema for {@link ChatMessage | `ChatMessage`}. This is the source of truth for how an ChatMessage document
|
219
|
+
* must be structured.
|
220
|
+
*
|
221
|
+
* Foundry uses this schema to validate the structure of the {@link ChatMessage | `ChatMessage`}. For example
|
222
|
+
* a {@link fields.StringField | `StringField`} will enforce that the value is a string. More
|
223
|
+
* complex fields like {@link fields.SetField | `SetField`} goes through various conversions
|
224
|
+
* starting as an array in the database, initialized as a set, and allows updates with any
|
225
|
+
* iterable.
|
226
|
+
*/
|
227
|
+
interface Schema extends DataSchema {
|
228
|
+
/**
|
229
|
+
* The _id which uniquely identifies this ChatMessage document
|
230
|
+
* @defaultValue `null`
|
231
|
+
*/
|
232
|
+
_id: fields.DocumentIdField;
|
233
|
+
|
234
|
+
/** @defaultValue `"base"` */
|
235
|
+
type: fields.DocumentTypeField<typeof BaseChatMessage, { initial: typeof CONST.BASE_DOCUMENT_TYPE }>;
|
236
|
+
|
237
|
+
system: fields.TypeDataField<typeof BaseChatMessage>;
|
238
|
+
|
239
|
+
/**
|
240
|
+
* The message type from CONST.CHAT_MESSAGE_STYLES
|
241
|
+
* @defaultValue `CONST.CHAT_MESSAGE_STYLES.OTHER`
|
242
|
+
*/
|
243
|
+
// FIXME: overrides to enforce the branded type
|
244
|
+
style: fields.NumberField<
|
245
|
+
{
|
246
|
+
required: true;
|
247
|
+
choices: CONST.CHAT_MESSAGE_STYLES[];
|
248
|
+
initial: typeof CONST.CHAT_MESSAGE_STYLES.OTHER;
|
249
|
+
validationError: "must be a value in CONST.CHAT_MESSAGE_TYPES";
|
250
|
+
},
|
251
|
+
CONST.CHAT_MESSAGE_STYLES | null | undefined,
|
252
|
+
CONST.CHAT_MESSAGE_STYLES,
|
253
|
+
CONST.CHAT_MESSAGE_STYLES
|
254
|
+
>;
|
255
|
+
|
256
|
+
/**
|
257
|
+
* The _id of the User document who generated this message
|
258
|
+
* @defaultValue `game?.user?.id`
|
259
|
+
*/
|
260
|
+
author: fields.ForeignDocumentField<typeof documents.BaseUser, { nullable: false; initial: () => string }>;
|
261
|
+
|
262
|
+
/**
|
263
|
+
* The timestamp at which point this message was generated
|
264
|
+
* @defaultValue `Date.now()`
|
265
|
+
*/
|
266
|
+
timestamp: fields.NumberField<{ required: true; nullable: false; initial: typeof Date.now }>;
|
267
|
+
|
268
|
+
/**
|
269
|
+
* An optional flavor text message which summarizes this message
|
270
|
+
* @defaultValue `""`
|
271
|
+
*/
|
272
|
+
flavor: fields.HTMLField;
|
273
|
+
|
274
|
+
/**
|
275
|
+
* The HTML content of this chat message
|
276
|
+
* @defaultValue `""`
|
277
|
+
*/
|
278
|
+
content: fields.HTMLField<{ textSearch: true }>;
|
279
|
+
|
280
|
+
/**
|
281
|
+
* A ChatSpeakerData object which describes the origin of the ChatMessage
|
282
|
+
*/
|
283
|
+
speaker: fields.SchemaField<SpeakerSchema>;
|
284
|
+
|
285
|
+
/**
|
286
|
+
* An array of User _id values to whom this message is privately whispered
|
287
|
+
* @defaultValue `[]`
|
288
|
+
*/
|
289
|
+
whisper: fields.ArrayField<fields.ForeignDocumentField<typeof documents.BaseUser, { idOnly: true }>>;
|
290
|
+
|
291
|
+
/**
|
292
|
+
* Is this message sent blindly where the creating User cannot see it?
|
293
|
+
* @defaultValue `false`
|
294
|
+
*/
|
295
|
+
blind: fields.BooleanField;
|
296
|
+
|
297
|
+
/**
|
298
|
+
* Serialized content of any Roll instances attached to the ChatMessage
|
299
|
+
* @defaultValue `[]`
|
300
|
+
*/
|
301
|
+
rolls: fields.ArrayField<
|
302
|
+
fields.JSONField<
|
303
|
+
{ validate: (rollJson: string) => void },
|
304
|
+
// TODO: Figure out why passing whole Roll objects doesn't lose `terms` complex objects without calling `.toJSON()`
|
305
|
+
fields.JSONField.AssignmentType<{ validate: (rollJson: string) => void }> | Roll.Any,
|
306
|
+
Roll
|
307
|
+
>
|
308
|
+
>;
|
309
|
+
|
310
|
+
/**
|
311
|
+
* The URL of an audio file which plays when this message is received
|
312
|
+
* @defaultValue `null`
|
313
|
+
*/
|
314
|
+
sound: fields.FilePathField<{ categories: ["AUDIO"] }>;
|
315
|
+
|
316
|
+
/**
|
317
|
+
* Is this message styled as an emote?
|
318
|
+
* @defaultValue `false`
|
319
|
+
*/
|
320
|
+
emote: fields.BooleanField;
|
321
|
+
|
322
|
+
/**
|
323
|
+
* An object of optional key/value flags
|
324
|
+
* @defaultValue `{}`
|
325
|
+
*/
|
326
|
+
flags: fields.ObjectField.FlagsField<Name, InterfaceToObject<CoreFlags>>;
|
327
|
+
|
328
|
+
_stats: fields.DocumentStatsField;
|
329
|
+
}
|
330
|
+
|
331
|
+
interface SpeakerSchema extends DataSchema {
|
332
|
+
/**
|
333
|
+
* The _id of the Scene where this message was created
|
334
|
+
* @defaultValue `null`
|
335
|
+
*/
|
336
|
+
scene: fields.ForeignDocumentField<typeof documents.BaseScene, { idOnly: true }>;
|
337
|
+
|
338
|
+
/**
|
339
|
+
* The _id of the Actor who generated this message
|
340
|
+
* @defaultValue `null`
|
341
|
+
*/
|
342
|
+
actor: fields.ForeignDocumentField<typeof documents.BaseActor, { idOnly: true }>;
|
343
|
+
|
344
|
+
/**
|
345
|
+
* The _id of the Token who generated this message
|
346
|
+
* @defaultValue `null`
|
347
|
+
*/
|
348
|
+
token: fields.ForeignDocumentField<typeof documents.BaseToken, { idOnly: true }>;
|
349
|
+
|
350
|
+
/**
|
351
|
+
* An overridden alias name used instead of the Actor or Token name
|
352
|
+
* @defaultValue `undefined`
|
353
|
+
*/
|
354
|
+
alias: fields.StringField;
|
355
|
+
}
|
356
|
+
|
357
|
+
interface SpeakerData extends fields.SchemaField.InitializedData<SpeakerSchema> {}
|
358
|
+
|
359
|
+
namespace Database {
|
360
|
+
/** Options passed along in Get operations for ChatMessages */
|
361
|
+
interface Get extends foundry.abstract.types.DatabaseGetOperation<ChatMessage.Parent> {}
|
362
|
+
|
363
|
+
/** Options passed along in Create operations for ChatMessages */
|
364
|
+
interface Create<Temporary extends boolean | undefined = boolean | undefined>
|
365
|
+
extends foundry.abstract.types.DatabaseCreateOperation<ChatMessage.CreateData, ChatMessage.Parent, Temporary> {
|
366
|
+
rollMode?: foundry.CONST.DICE_ROLL_MODES;
|
367
|
+
chatBubble?: boolean;
|
368
|
+
}
|
369
|
+
|
370
|
+
/** Options passed along in Delete operations for ChatMessages */
|
371
|
+
interface Delete extends foundry.abstract.types.DatabaseDeleteOperation<ChatMessage.Parent> {}
|
372
|
+
|
373
|
+
/** Options passed along in Update operations for ChatMessages */
|
374
|
+
interface Update
|
375
|
+
extends foundry.abstract.types.DatabaseUpdateOperation<ChatMessage.UpdateData, ChatMessage.Parent> {}
|
33
376
|
|
34
|
-
/**
|
35
|
-
|
377
|
+
/** Operation for {@link ChatMessage.createDocuments | `ChatMessage.createDocuments`} */
|
378
|
+
interface CreateDocumentsOperation<Temporary extends boolean | undefined>
|
379
|
+
extends Document.Database.CreateOperation<ChatMessage.Database.Create<Temporary>> {}
|
36
380
|
|
37
|
-
/**
|
38
|
-
|
381
|
+
/** Operation for {@link ChatMessage.updateDocuments | `ChatMessage.updateDocuments`} */
|
382
|
+
interface UpdateDocumentsOperation
|
383
|
+
extends Document.Database.UpdateDocumentsOperation<ChatMessage.Database.Update> {}
|
384
|
+
|
385
|
+
/** Operation for {@link ChatMessage.deleteDocuments | `ChatMessage.deleteDocuments`} */
|
386
|
+
interface DeleteDocumentsOperation
|
387
|
+
extends Document.Database.DeleteDocumentsOperation<ChatMessage.Database.Delete> {}
|
388
|
+
|
389
|
+
/** Operation for {@link ChatMessage.create | `ChatMessage.create`} */
|
390
|
+
interface CreateOperation<Temporary extends boolean | undefined>
|
391
|
+
extends Document.Database.CreateOperation<ChatMessage.Database.Create<Temporary>> {}
|
392
|
+
|
393
|
+
/** Operation for {@link ChatMessage.update | `ChatMessage#update`} */
|
394
|
+
interface UpdateOperation extends Document.Database.UpdateOperation<Update> {}
|
395
|
+
|
396
|
+
interface DeleteOperation extends Document.Database.DeleteOperation<Delete> {}
|
397
|
+
|
398
|
+
/** Options for {@link ChatMessage.get | `ChatMessage.get`} */
|
399
|
+
interface GetOptions extends Document.Database.GetOptions {}
|
400
|
+
|
401
|
+
/** Options for {@link ChatMessage._preCreate | `ChatMessage#_preCreate`} */
|
402
|
+
interface PreCreateOptions extends Document.Database.PreCreateOptions<Create> {}
|
403
|
+
|
404
|
+
/** Options for {@link ChatMessage._onCreate | `ChatMessage#_onCreate`} */
|
405
|
+
interface OnCreateOptions extends Document.Database.CreateOptions<Create> {}
|
406
|
+
|
407
|
+
/** Operation for {@link ChatMessage._preCreateOperation | `ChatMessage._preCreateOperation`} */
|
408
|
+
interface PreCreateOperation extends Document.Database.PreCreateOperationStatic<ChatMessage.Database.Create> {}
|
409
|
+
|
410
|
+
/** Operation for {@link ChatMessage._onCreateOperation | `ChatMessage#_onCreateOperation`} */
|
411
|
+
interface OnCreateOperation extends ChatMessage.Database.Create {}
|
412
|
+
|
413
|
+
/** Options for {@link ChatMessage._preUpdate | `ChatMessage#_preUpdate`} */
|
414
|
+
interface PreUpdateOptions extends Document.Database.PreUpdateOptions<Update> {}
|
415
|
+
|
416
|
+
/** Options for {@link ChatMessage._onUpdate | `ChatMessage#_onUpdate`} */
|
417
|
+
interface OnUpdateOptions extends Document.Database.UpdateOptions<Update> {}
|
418
|
+
|
419
|
+
/** Operation for {@link ChatMessage._preUpdateOperation | `ChatMessage._preUpdateOperation`} */
|
420
|
+
interface PreUpdateOperation extends ChatMessage.Database.Update {}
|
421
|
+
|
422
|
+
/** Operation for {@link ChatMessage._onUpdateOperation | `ChatMessage._preUpdateOperation`} */
|
423
|
+
interface OnUpdateOperation extends ChatMessage.Database.Update {}
|
424
|
+
|
425
|
+
/** Options for {@link ChatMessage._preDelete | `ChatMessage#_preDelete`} */
|
426
|
+
interface PreDeleteOptions extends Document.Database.PreDeleteOperationInstance<Delete> {}
|
427
|
+
|
428
|
+
/** Options for {@link ChatMessage._onDelete | `ChatMessage#_onDelete`} */
|
429
|
+
interface OnDeleteOptions extends Document.Database.DeleteOptions<Delete> {}
|
430
|
+
|
431
|
+
/** Options for {@link ChatMessage._preDeleteOperation | `ChatMessage#_preDeleteOperation`} */
|
432
|
+
interface PreDeleteOperation extends ChatMessage.Database.Delete {}
|
433
|
+
|
434
|
+
/** Options for {@link ChatMessage._onDeleteOperation | `ChatMessage#_onDeleteOperation`} */
|
435
|
+
interface OnDeleteOperation extends ChatMessage.Database.Delete {}
|
436
|
+
|
437
|
+
/** Context for {@link ChatMessage._onDeleteOperation | `ChatMessage._onDeleteOperation`} */
|
438
|
+
interface OnDeleteDocumentsContext extends Document.ModificationContext<ChatMessage.Parent> {}
|
439
|
+
|
440
|
+
/** Context for {@link ChatMessage._onCreateDocuments | `ChatMessage._onCreateDocuments`} */
|
441
|
+
interface OnCreateDocumentsContext extends Document.ModificationContext<ChatMessage.Parent> {}
|
442
|
+
|
443
|
+
/** Context for {@link ChatMessage._onUpdateDocuments | `ChatMessage._onUpdateDocuments`} */
|
444
|
+
interface OnUpdateDocumentsContext extends Document.ModificationContext<ChatMessage.Parent> {}
|
445
|
+
|
446
|
+
/**
|
447
|
+
* Options for {@link ChatMessage._preCreateDescendantDocuments | `ChatMessage#_preCreateDescendantDocuments`}
|
448
|
+
* and {@link ChatMessage._onCreateDescendantDocuments | `ChatMessage#_onCreateDescendantDocuments`}
|
449
|
+
*/
|
450
|
+
interface CreateOptions extends Document.Database.CreateOptions<ChatMessage.Database.Create> {}
|
451
|
+
|
452
|
+
/**
|
453
|
+
* Options for {@link ChatMessage._preUpdateDescendantDocuments | `ChatMessage#_preUpdateDescendantDocuments`}
|
454
|
+
* and {@link ChatMessage._onUpdateDescendantDocuments | `ChatMessage#_onUpdateDescendantDocuments`}
|
455
|
+
*/
|
456
|
+
interface UpdateOptions extends Document.Database.UpdateOptions<ChatMessage.Database.Update> {}
|
457
|
+
|
458
|
+
/**
|
459
|
+
* Options for {@link ChatMessage._preDeleteDescendantDocuments | `ChatMessage#_preDeleteDescendantDocuments`}
|
460
|
+
* and {@link ChatMessage._onDeleteDescendantDocuments | `ChatMessage#_onDeleteDescendantDocuments`}
|
461
|
+
*/
|
462
|
+
interface DeleteOptions extends Document.Database.DeleteOptions<ChatMessage.Database.Delete> {}
|
463
|
+
}
|
464
|
+
|
465
|
+
/**
|
466
|
+
* The flags that are available for this document in the form `{ [scope: string]: { [key: string]: unknown } }`.
|
467
|
+
*/
|
468
|
+
interface Flags extends Document.ConfiguredFlagsForName<Name> {}
|
469
|
+
|
470
|
+
namespace Flags {
|
471
|
+
/**
|
472
|
+
* The valid scopes for the flags on this document e.g. `"core"` or `"dnd5e"`.
|
473
|
+
*/
|
474
|
+
type Scope = Document.FlagKeyOf<Flags>;
|
475
|
+
|
476
|
+
/**
|
477
|
+
* The valid keys for a certain scope for example if the scope is "core" then a valid key may be `"sheetLock"` or `"viewMode"`.
|
478
|
+
*/
|
479
|
+
type Key<Scope extends Flags.Scope> = Document.FlagKeyOf<Document.FlagGetKey<Flags, Scope>>;
|
480
|
+
|
481
|
+
/**
|
482
|
+
* Gets the type of a particular flag given a `Scope` and a `Key`.
|
483
|
+
*/
|
484
|
+
type Get<Scope extends Flags.Scope, Key extends Flags.Key<Scope>> = Document.GetFlag<Name, Scope, Key>;
|
485
|
+
}
|
486
|
+
|
487
|
+
interface CoreFlags {
|
488
|
+
core?: {
|
489
|
+
canPopout?: boolean;
|
490
|
+
initiativeRoll?: boolean;
|
491
|
+
nue?: boolean;
|
492
|
+
RollTable?: string;
|
493
|
+
};
|
494
|
+
}
|
495
|
+
|
496
|
+
/** @internal */
|
497
|
+
interface _BaseSpeakerOptions {
|
498
|
+
/** The Token who is speaking */
|
499
|
+
token: TokenDocument.Implementation | Token.Object;
|
500
|
+
|
501
|
+
/** The Actor who is speaking */
|
502
|
+
actor: Actor.Implementation;
|
503
|
+
|
504
|
+
/** The Scene in which the speaker resides */
|
505
|
+
scene: Scene.Implementation;
|
39
506
|
|
40
507
|
/** The name of the speaker to display */
|
41
|
-
alias: string
|
508
|
+
alias: string;
|
509
|
+
}
|
510
|
+
|
511
|
+
interface GetSpeakerOptions extends NullishProps<_BaseSpeakerOptions> {}
|
512
|
+
|
513
|
+
/** @remarks `token` is required, `alias` falls back to `token.name` */
|
514
|
+
interface GetSpeakerFromTokenOptions extends NullishProps<Pick<_BaseSpeakerOptions, "token" | "alias">, "alias"> {}
|
515
|
+
|
516
|
+
/** @remarks `actor` is required, `scene` falls back to `canvas.scene`, `alias` falls back to `actor.name` */
|
517
|
+
interface GetSpeakerFromActorOptions
|
518
|
+
extends NullishProps<Pick<_BaseSpeakerOptions, "scene" | "actor" | "alias">, "scene" | "alias"> {}
|
519
|
+
|
520
|
+
/** @remarks `user` is required, `scene` falls back to `canvas.scene`, `alias` falls back to `user.name` */
|
521
|
+
interface GetSpeakerFromUserOptions extends NullishProps<Pick<_BaseSpeakerOptions, "scene" | "alias">> {
|
522
|
+
/** The User who is speaking */
|
523
|
+
user: User.Implementation;
|
42
524
|
}
|
43
525
|
|
526
|
+
/** @internal */
|
527
|
+
type _SpeakerData = SchemaField.InitializedData<ChatMessage.SpeakerSchema>;
|
528
|
+
|
529
|
+
interface SpeakerData extends _SpeakerData {}
|
530
|
+
|
531
|
+
/**
|
532
|
+
* @remarks
|
533
|
+
* {@linkcode ChatMessage.getWhisperRecipients} has a couple special-cased values, and a couple fallback behaviors.
|
534
|
+
* _ALL_ comparisons are case-**in**sensitive, compared lowercase.
|
535
|
+
* - `"GM"` or `"DM"` inputs returns `game.users.filter(u => u.isGM)`
|
536
|
+
* - `"players"` returns `game.users.players`
|
537
|
+
* - Then if any User names match, returns all that do
|
538
|
+
* - Then returns any Users whose assigned `character` matches
|
539
|
+
* - Finally returns `[]`
|
540
|
+
*/
|
541
|
+
type WhisperRecipient = "GM" | "DM" | "players" | (string & {});
|
542
|
+
|
543
|
+
/**
|
544
|
+
* @remarks Serves two purposes:
|
545
|
+
* - Template context for either calling `renderTemplate` on `CONFIG.ChatMessage.template` or passing to {@link ChatMessage._renderRollContent | `ChatMessage#_renderRollContent`}
|
546
|
+
* - Context passed to the {@linkcode Hooks.StaticCallbacks.renderChatMessage | `renderChatMessage`} hook.
|
547
|
+
*/
|
44
548
|
interface MessageData {
|
45
|
-
|
46
|
-
|
47
|
-
|
549
|
+
/** @remarks This is the return of `ChatMessage#toObject(false)`, but that doesn't seem to make a difference */
|
550
|
+
message: ChatMessage.Source;
|
551
|
+
|
552
|
+
/** @remarks Always `game.user` */
|
553
|
+
user: User.Stored;
|
554
|
+
|
555
|
+
/** @remarks The message's {@link ChatMessage.author | `author`} */
|
556
|
+
author: User.Implementation;
|
557
|
+
|
558
|
+
/** @remarks The message's {@link ChatMessage.alias | `alias`} */
|
48
559
|
alias: string;
|
560
|
+
|
561
|
+
/** @remarks Possibly more than one class name, space-separated */
|
49
562
|
cssClass: string;
|
50
|
-
|
563
|
+
|
564
|
+
/**
|
565
|
+
* @remarks The `.length` of the message's {@link ChatMessage.whisper | `whisper`} array,
|
566
|
+
* despite the name implying a `boolean`
|
567
|
+
*/
|
568
|
+
isWhisper: number;
|
569
|
+
|
570
|
+
/**
|
571
|
+
* @remarks Always `game.user.isGM`. Foundry comments: "Only GM users are allowed to have the
|
572
|
+
* trash-bin icon in the chat log itself"
|
573
|
+
*/
|
51
574
|
canDelete: boolean;
|
575
|
+
|
576
|
+
/**
|
577
|
+
* @remarks A `", "`-separated list of the `name`s of the `User`s whose IDs are in the message's
|
578
|
+
* {@link ChatMessage.whisper | `whisper`} array
|
579
|
+
*/
|
52
580
|
whisperTo: string;
|
53
581
|
}
|
582
|
+
|
583
|
+
type PassableRollMode = CONST.DICE_ROLL_MODES | "roll";
|
584
|
+
|
585
|
+
/**
|
586
|
+
* @deprecated {@link ChatMessage.DatabaseOperation | `ChatMessage.DatabaseOperation`}
|
587
|
+
*/
|
588
|
+
/* eslint-disable @typescript-eslint/no-empty-object-type */
|
589
|
+
interface DatabaseOperations
|
590
|
+
// eslint-disable-next-line @typescript-eslint/no-deprecated
|
591
|
+
extends Document.Database.Operations<
|
592
|
+
ChatMessage.Implementation,
|
593
|
+
{ rollMode: foundry.CONST.DICE_ROLL_MODES; chatBubble: boolean },
|
594
|
+
{},
|
595
|
+
{}
|
596
|
+
> {}
|
597
|
+
/* eslint-enable @typescript-eslint/no-empty-object-type */
|
598
|
+
|
599
|
+
/**
|
600
|
+
* @deprecated {@link ChatMessage.SubType | `ChatMessage.SubType`}
|
601
|
+
*/
|
602
|
+
type TypeNames = ChatMessage.SubType;
|
603
|
+
|
604
|
+
/**
|
605
|
+
* @deprecated {@link ChatMessage.CreateData | `ChatMessage.CreateData`}
|
606
|
+
*/
|
607
|
+
interface ConstructorData extends ChatMessage.CreateData {}
|
608
|
+
|
609
|
+
/**
|
610
|
+
* @deprecated {@link ChatMessage.implementation | `ChatMessage.ImplementationClass`}
|
611
|
+
*/
|
612
|
+
type ConfiguredClass = ImplementationClass;
|
613
|
+
|
614
|
+
/**
|
615
|
+
* @deprecated {@link ChatMessage.Implementation | `ChatMessage.Implementation`}
|
616
|
+
*/
|
617
|
+
type ConfiguredInstance = Implementation;
|
54
618
|
}
|
55
619
|
|
56
620
|
/**
|
57
621
|
* The client-side ChatMessage document which extends the common BaseChatMessage abstraction.
|
58
622
|
* Each ChatMessage document contains ChatMessageData which defines its data schema.
|
59
623
|
*
|
60
|
-
* @see {@link Messages} The world-level collection of ChatMessage documents
|
624
|
+
* @see {@link Messages | `Messages`} The world-level collection of ChatMessage documents
|
61
625
|
*
|
62
626
|
*/
|
63
|
-
class ChatMessage extends
|
64
|
-
|
627
|
+
class ChatMessage<out SubType extends ChatMessage.SubType = ChatMessage.SubType> extends ClientDocumentMixin(
|
628
|
+
foundry.documents.BaseChatMessage,
|
629
|
+
)<SubType> {
|
630
|
+
/**
|
631
|
+
* @param data - Initial data from which to construct the `ChatMessage`
|
632
|
+
* @param context - Construction context options
|
633
|
+
*/
|
634
|
+
constructor(...args: ChatMessage.ConstructorArgs);
|
65
635
|
|
66
636
|
/**
|
67
637
|
* Is the display of dice rolls in this message collapsed (false) or expanded (true)
|
68
638
|
* @defaultValue `false`
|
69
|
-
* @
|
639
|
+
* @private
|
640
|
+
* @remarks Toggled in {@link ChatLog._onDiceRollClick | `ChatLog#_onDiceRollClick`}
|
70
641
|
*/
|
71
642
|
protected _rollExpanded: boolean;
|
72
643
|
|
73
644
|
/**
|
74
645
|
* Is this ChatMessage currently displayed in the sidebar ChatLog?
|
75
646
|
* @defaultValue `false`
|
647
|
+
* @remarks Set `true` in {@link ChatLog.postOne | `ChatLog#postOne`} and {@link ChatLog._renderBatch | `ChatLog#_renderBatch`}
|
76
648
|
*/
|
77
649
|
logged: boolean;
|
78
650
|
|
@@ -105,6 +677,10 @@ declare global {
|
|
105
677
|
*/
|
106
678
|
get visible(): boolean;
|
107
679
|
|
680
|
+
/**
|
681
|
+
* @remarks Initializes `this.rolls` from an array of JSON-serializable objects to instances of their listed Roll class,
|
682
|
+
* dropping any that throw when passed to {@linkcode Roll.fromData}
|
683
|
+
*/
|
108
684
|
override prepareDerivedData(): void;
|
109
685
|
|
110
686
|
/**
|
@@ -114,89 +690,69 @@ declare global {
|
|
114
690
|
* @returns The modified ChatMessage data with rollMode preferences applied
|
115
691
|
*/
|
116
692
|
static applyRollMode(
|
117
|
-
chatData:
|
118
|
-
rollMode:
|
119
|
-
):
|
693
|
+
chatData: ChatMessage.CreateData,
|
694
|
+
rollMode: ChatMessage.PassableRollMode,
|
695
|
+
): ChatMessage.CreateData;
|
120
696
|
|
121
697
|
/**
|
122
698
|
* Update the data of a ChatMessage instance to apply a requested rollMode
|
123
699
|
* @param rollMode - The rollMode preference to apply to this message data
|
700
|
+
* @remarks Only calls `this.updateSource`, doesn't db update messages already stored
|
124
701
|
*/
|
125
|
-
applyRollMode(rollMode:
|
702
|
+
applyRollMode(rollMode: ChatMessage.PassableRollMode): void;
|
126
703
|
|
127
704
|
/**
|
128
705
|
* Attempt to determine who is the speaking character (and token) for a certain Chat Message
|
129
706
|
* First assume that the currently controlled Token is the speaker
|
130
707
|
*
|
131
|
-
* @param options - (default: `{}`)
|
708
|
+
* @param options - Options which affect speaker identification (default: `{}`)
|
132
709
|
*
|
133
710
|
* @returns The identified speaker data
|
134
711
|
*/
|
135
|
-
|
712
|
+
// options: not null (destructured)
|
713
|
+
static getSpeaker(options?: ChatMessage.GetSpeakerOptions): ChatMessage.SpeakerData;
|
136
714
|
|
137
715
|
/**
|
138
716
|
* A helper to prepare the speaker object based on a target TokenDocument
|
139
717
|
* @param options - Options which affect speaker identification
|
140
718
|
* @returns The identified speaker data
|
141
719
|
*/
|
142
|
-
protected static _getSpeakerFromToken(options:
|
143
|
-
/** The TokenDocument of the speaker */
|
144
|
-
token: TokenDocument;
|
145
|
-
|
146
|
-
/** The name of the speaker to display */
|
147
|
-
alias?: string | undefined;
|
148
|
-
}): ChatMessage["_source"]["speaker"];
|
720
|
+
protected static _getSpeakerFromToken(options: ChatMessage.GetSpeakerFromTokenOptions): ChatMessage.SpeakerData;
|
149
721
|
|
150
722
|
/**
|
151
723
|
* A helper to prepare the speaker object based on a target Actor
|
152
724
|
* @param options - Options which affect speaker identification
|
153
725
|
* @returns The identified speaker data
|
154
726
|
*/
|
155
|
-
protected static _getSpeakerFromActor(options:
|
156
|
-
/** The Scene is which the speaker resides */
|
157
|
-
scene?: Scene | undefined;
|
158
|
-
|
159
|
-
/** The Actor that is speaking */
|
160
|
-
actor: Actor;
|
161
|
-
|
162
|
-
/** The name of the speaker to display */
|
163
|
-
alias?: string | undefined;
|
164
|
-
}): ChatMessage["_source"]["speaker"];
|
727
|
+
protected static _getSpeakerFromActor(options: ChatMessage.GetSpeakerFromActorOptions): ChatMessage.SpeakerData;
|
165
728
|
|
166
729
|
/**
|
167
730
|
* A helper to prepare the speaker object based on a target User
|
168
731
|
* @param options - Options which affect speaker identification
|
169
732
|
* @returns The identified speaker data
|
170
733
|
*/
|
171
|
-
protected static _getSpeakerFromUser(options:
|
172
|
-
/** The Scene in which the speaker resides */
|
173
|
-
scene?: Scene | undefined;
|
174
|
-
|
175
|
-
/** The User who is speaking */
|
176
|
-
user: User;
|
177
|
-
|
178
|
-
/** The name of the speaker to display */
|
179
|
-
alias?: string | undefined;
|
180
|
-
}): ChatMessage["_source"]["speaker"];
|
734
|
+
protected static _getSpeakerFromUser(options: ChatMessage.GetSpeakerFromUserOptions): ChatMessage.SpeakerData;
|
181
735
|
|
182
736
|
/**
|
183
737
|
* Obtain an Actor instance which represents the speaker of this message (if any)
|
184
738
|
* @param speaker - The speaker data object
|
739
|
+
* @remarks `speaker` has no parameter default, if it's falsey this returns `null`
|
185
740
|
*/
|
186
|
-
static getSpeakerActor(speaker
|
741
|
+
static getSpeakerActor(speaker?: ChatMessage.SpeakerData | null): Actor.Implementation | null;
|
187
742
|
|
188
743
|
/**
|
189
744
|
* Obtain a data object used to evaluate any dice rolls associated with this particular chat message
|
190
745
|
*/
|
191
|
-
getRollData():
|
746
|
+
getRollData(): AnyObject;
|
192
747
|
|
193
748
|
/**
|
194
749
|
* Given a string whisper target, return an Array of the user IDs which should be targeted for the whisper
|
195
750
|
*
|
196
751
|
* @param name - The target name of the whisper target
|
197
752
|
* @returns An array of User instances
|
753
|
+
* @remarks See {@linkcode ChatMessage.WhisperRecipient}
|
198
754
|
*/
|
199
|
-
static getWhisperRecipients(name:
|
755
|
+
static getWhisperRecipients(name: ChatMessage.WhisperRecipient): User.Stored[];
|
200
756
|
|
201
757
|
/**
|
202
758
|
* Render the HTML for the ChatMessage which should be added to the log
|
@@ -212,19 +768,54 @@ declare global {
|
|
212
768
|
|
213
769
|
/**
|
214
770
|
* Render HTML for the array of Roll objects included in this message.
|
215
|
-
* @param isPrivate - Is the chat message private?
|
771
|
+
* @param isPrivate - Is the chat message private? (default: `false`)
|
216
772
|
* @returns The rendered HTML string
|
773
|
+
* @remarks `isPrivate` is passed into {@link Roll.render | `Roll#render`} where it has a parameter default of `false`
|
217
774
|
*/
|
218
|
-
protected _renderRollHTML(isPrivate
|
775
|
+
protected _renderRollHTML(isPrivate?: boolean | null): Promise<string>;
|
219
776
|
|
220
|
-
|
221
|
-
|
222
|
-
* For type simplicity they are left off. These methods historically have been the source of a large amount of computation from tsc.
|
223
|
-
*/
|
777
|
+
// _preCreate, _onCreate, _onUpdate, and _onDelete are all overridden but with no signature changes.
|
778
|
+
// For type simplicity they are left off. These methods historically have been the source of a large amount of computation from tsc.
|
224
779
|
|
225
780
|
/**
|
226
781
|
* Export the content of the chat message into a standardized log format
|
227
782
|
*/
|
228
783
|
export(): string;
|
784
|
+
|
785
|
+
/*
|
786
|
+
* After this point these are not really overridden methods.
|
787
|
+
* They are here because Foundry's documents are complex and have lots of edge cases.
|
788
|
+
* There are DRY ways of representing this but this ends up being harder to understand
|
789
|
+
* for end users extending these functions, especially for static methods. There are also a
|
790
|
+
* number of methods that don't make sense to call directly on `Document` like `createDocuments`,
|
791
|
+
* as there is no data that can safely construct every possible document. Finally keeping definitions
|
792
|
+
* separate like this helps against circularities.
|
793
|
+
*/
|
794
|
+
|
795
|
+
// ClientDocument overrides
|
796
|
+
|
797
|
+
// Descendant Document operations have been left out because ChatMessage does not have any descendant documents.
|
798
|
+
|
799
|
+
// context: not null (destructured)
|
800
|
+
static override defaultName(context?: Document.DefaultNameContext<"ChatMessage", ChatMessage.Parent>): string;
|
801
|
+
|
802
|
+
// data: not null (parameter default only), context: not null (destructured)
|
803
|
+
static override createDialog(
|
804
|
+
data?: Document.CreateDialogData<ChatMessage.CreateData>,
|
805
|
+
context?: Document.CreateDialogContext<"ChatMessage", ChatMessage.Parent>,
|
806
|
+
): Promise<ChatMessage.Stored | null | undefined>;
|
807
|
+
|
808
|
+
// options: not null (parameter default only)
|
809
|
+
static override fromDropData(
|
810
|
+
data: Document.DropData<ChatMessage.Implementation>,
|
811
|
+
options?: AnyObject,
|
812
|
+
): Promise<ChatMessage.Implementation | undefined>;
|
813
|
+
|
814
|
+
static override fromImport(
|
815
|
+
source: ChatMessage.Source,
|
816
|
+
context?: Document.FromImportContext<ChatMessage.Parent> | null,
|
817
|
+
): Promise<ChatMessage.Implementation>;
|
818
|
+
|
819
|
+
override _onClickDocumentLink(event: MouseEvent): ClientDocument.OnClickDocumentLinkReturn;
|
229
820
|
}
|
230
821
|
}
|