@league-of-foundry-developers/foundry-vtt-types 12.331.3-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 +74 -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 -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 +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 -16
- 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 +47 -55
- 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 +81 -99
- 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 +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 -64
- 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 -87
- 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 -35
- 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 -147
- 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 +1111 -94
- 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 +60 -92
- 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 +106 -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 +76 -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 +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 -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 +36 -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 +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 +11 -14
- 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 +132 -154
- package/src/foundry/common/abstract/document.d.mts +1306 -438
- 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 +58 -55
- 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 +700 -644
- 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 -179
- 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 -94
- 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 -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 +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/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 +20 -312
- 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,47 +1,17 @@
|
|
1
|
-
import type { AnyObject, EmptyObject } from "
|
1
|
+
import type { AnyMutableObject, AnyObject, EmptyObject, Identity } from "fvtt-types/utils";
|
2
2
|
import type { DataField, SchemaField } from "../data/fields.d.mts";
|
3
3
|
import type { fields } from "../data/module.d.mts";
|
4
4
|
import type { DataModelValidationFailure } from "../data/validation-failure.d.mts";
|
5
5
|
|
6
|
-
|
7
|
-
type DataSchema = Record<string, DataField.Any>;
|
6
|
+
type DataSchema = foundry.data.fields.DataSchema;
|
8
7
|
|
9
|
-
|
10
|
-
/**
|
11
|
-
* Throw an error if validation fails.
|
12
|
-
* @defaultValue `true`
|
13
|
-
*/
|
14
|
-
strict?: boolean | undefined;
|
15
|
-
|
16
|
-
/**
|
17
|
-
* Attempt to replace invalid values with valid defaults?
|
18
|
-
* @defaultValue `false`
|
19
|
-
*/
|
20
|
-
fallback?: boolean | undefined;
|
21
|
-
|
22
|
-
/**
|
23
|
-
* Allow partial source data, ignoring absent fields?
|
24
|
-
* @defaultValue `false`
|
25
|
-
*/
|
26
|
-
partial?: boolean | undefined;
|
27
|
-
|
28
|
-
/**
|
29
|
-
* If true, invalid embedded documents will emit a warning and be
|
30
|
-
* placed in the invalidDocuments collection rather than causing the
|
31
|
-
* parent to be considered invalid.
|
32
|
-
* @defaultValue `false`
|
33
|
-
*/
|
34
|
-
dropInvalidEmbedded?: boolean | undefined;
|
35
|
-
}
|
36
|
-
}
|
37
|
-
|
38
|
-
declare const DynamicClass: new <_Computed extends object>(arg0: never, ...args: never[]) => _Computed;
|
8
|
+
declare const DynamicClass: new <_Computed extends object>(...args: never) => _Computed;
|
39
9
|
|
40
10
|
// @ts-expect-error - This is a workaround to allow for dynamic top level properties in a class.
|
41
11
|
declare class _InternalDataModel<
|
42
12
|
out Schema extends DataSchema,
|
43
13
|
// Do not inline. Being a type parameter is an important part of the circumvention of TypeScript's detection of dynamic classes.
|
44
|
-
out _Computed extends object = SchemaField.
|
14
|
+
out _Computed extends object = SchemaField.InitializedData<Schema>,
|
45
15
|
> extends DynamicClass<_Computed> {}
|
46
16
|
|
47
17
|
export default DataModel;
|
@@ -60,11 +30,16 @@ declare abstract class DataModel<
|
|
60
30
|
* will be owned by the constructed model instance and may be mutated.
|
61
31
|
* @param options - Options which affect DataModel construction
|
62
32
|
*/
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
|
33
|
+
constructor(...args: DataModel.ConstructorArgs<Schema, Parent>);
|
34
|
+
|
35
|
+
/** @internal */
|
36
|
+
" __fvtt_types_internal_source_data": SchemaField.SourceData<Schema>;
|
37
|
+
|
38
|
+
/** @internal */
|
39
|
+
" __fvtt_types_internal_assignment_data": SchemaField.AssignmentData<Schema>;
|
40
|
+
|
41
|
+
/** @internal */
|
42
|
+
" __fvtt_types_internal_initialized_data": SchemaField.InitializedData<Schema>;
|
68
43
|
|
69
44
|
/**
|
70
45
|
* Configure the data model instance before validation and initialization workflows are performed.
|
@@ -75,7 +50,7 @@ declare abstract class DataModel<
|
|
75
50
|
* The source data object for this DataModel instance.
|
76
51
|
* Once constructed, the source object is sealed such that no keys may be added nor removed.
|
77
52
|
*/
|
78
|
-
readonly _source: Readonly<fields.SchemaField.
|
53
|
+
readonly _source: Readonly<fields.SchemaField.SourceData<Schema>>;
|
79
54
|
|
80
55
|
/**
|
81
56
|
* The defined and cached Data Schema for all instances of this DataModel.
|
@@ -133,9 +108,9 @@ declare abstract class DataModel<
|
|
133
108
|
* @returns Migrated and cleaned source data which will be stored to the model instance
|
134
109
|
*/
|
135
110
|
protected _initializeSource(
|
136
|
-
data: fields.SchemaField.
|
111
|
+
data: fields.SchemaField.CreateData<Schema> | this,
|
137
112
|
options?: Omit<DataModel.DataValidationOptions, "parent">,
|
138
|
-
): fields.SchemaField.
|
113
|
+
): fields.SchemaField.SourceData<Schema>;
|
139
114
|
|
140
115
|
/**
|
141
116
|
* Clean a data source object to conform to a specific provided schema.
|
@@ -143,7 +118,7 @@ declare abstract class DataModel<
|
|
143
118
|
* @param options - Additional options which are passed to field cleaning methods
|
144
119
|
* @returns The cleaned source data
|
145
120
|
*/
|
146
|
-
static cleanData(source?:
|
121
|
+
static cleanData(source?: AnyMutableObject, options?: Parameters<SchemaField.Any["clean"]>[1]): AnyMutableObject;
|
147
122
|
|
148
123
|
/**
|
149
124
|
* A generator that orders the DataFields in the DataSchema into an expected initialization order.
|
@@ -169,10 +144,7 @@ declare abstract class DataModel<
|
|
169
144
|
* @param context - Context options passed to the data model constructor
|
170
145
|
* @returns The cloned Document instance
|
171
146
|
*/
|
172
|
-
clone(
|
173
|
-
data?: fields.SchemaField.InnerAssignmentType<Schema>,
|
174
|
-
context?: DataModel.ConstructorOptions<Parent>,
|
175
|
-
): this | Promise<this>;
|
147
|
+
clone(data?: fields.SchemaField.AssignmentData<Schema>, context?: DataModel.DataValidationOptions<Parent>): this;
|
176
148
|
|
177
149
|
/**
|
178
150
|
* Validate the data contained in the document to check for type and content
|
@@ -181,60 +153,7 @@ declare abstract class DataModel<
|
|
181
153
|
* @param options - Optional parameters which customize how validation occurs.
|
182
154
|
* @returns An indicator for whether the document contains valid data
|
183
155
|
*/
|
184
|
-
validate({
|
185
|
-
changes,
|
186
|
-
clean,
|
187
|
-
fallback,
|
188
|
-
strict,
|
189
|
-
fields,
|
190
|
-
joint,
|
191
|
-
}?: {
|
192
|
-
/**
|
193
|
-
* A specific set of proposed changes to validate, rather than the full source data of the model.
|
194
|
-
*/
|
195
|
-
changes?: fields.SchemaField.InnerAssignmentType<Schema>;
|
196
|
-
|
197
|
-
/**
|
198
|
-
* If changes are provided, attempt to clean the changes before validating them?
|
199
|
-
* @defaultValue `false`
|
200
|
-
*/
|
201
|
-
clean?: boolean;
|
202
|
-
|
203
|
-
/**
|
204
|
-
* Allow replacement of invalid values with valid defaults?
|
205
|
-
* @defaultValue `false`
|
206
|
-
*/
|
207
|
-
fallback?: boolean;
|
208
|
-
|
209
|
-
/**
|
210
|
-
* If true, invalid embedded documents will emit a warning and
|
211
|
-
* be placed in the invalidDocuments collection rather than
|
212
|
-
* causing the parent to be considered invalid.
|
213
|
-
* @defaultValue `false`
|
214
|
-
*/
|
215
|
-
dropInvalidEmbedded: boolean;
|
216
|
-
|
217
|
-
/**
|
218
|
-
* Throw if an invalid value is encountered, otherwise log a warning?
|
219
|
-
* @defaultValue `true`
|
220
|
-
*/
|
221
|
-
strict?: boolean;
|
222
|
-
|
223
|
-
/**
|
224
|
-
* Perform validation on individual fields?
|
225
|
-
* @defaultValue `true`
|
226
|
-
*/
|
227
|
-
fields?: boolean;
|
228
|
-
|
229
|
-
/**
|
230
|
-
* Perform joint validation on the full data model?
|
231
|
-
* Joint validation will be performed by default if no changes are passed.
|
232
|
-
* Joint validation will be disabled by default if changes are passed.
|
233
|
-
* Joint validation can be performed on a complete set of changes (for
|
234
|
-
* example testing a complete data model) by explicitly passing true.
|
235
|
-
*/
|
236
|
-
joint?: boolean;
|
237
|
-
}): boolean;
|
156
|
+
validate({ changes, clean, fallback, strict, fields, joint }?: DataModel.ValidateOptions<Schema>): boolean;
|
238
157
|
|
239
158
|
/**
|
240
159
|
* Evaluate joint validation rules which apply validation conditions across multiple fields of the model.
|
@@ -243,14 +162,13 @@ declare abstract class DataModel<
|
|
243
162
|
* @param data - Candidate data for the model
|
244
163
|
* @throws An error if a validation failure is detected
|
245
164
|
*/
|
246
|
-
|
247
|
-
static validateJoint(data: Record<string, unknown>): void;
|
165
|
+
static validateJoint(data: never): void;
|
248
166
|
|
249
167
|
/**
|
250
168
|
* @deprecated since v11; Use the validateJoint static method instead.
|
251
169
|
*/
|
252
170
|
// TODO(LukeAbby): Should be SourceType
|
253
|
-
protected _validateModel(data: fields.SchemaField.
|
171
|
+
protected _validateModel(data: fields.SchemaField.SourceData<Schema>): void;
|
254
172
|
|
255
173
|
/**
|
256
174
|
* Update the DataModel locally by applying an object of changes to its source data.
|
@@ -262,11 +180,10 @@ declare abstract class DataModel<
|
|
262
180
|
* @param options - Options which determine how the new data is merged
|
263
181
|
* @returns An object containing the changed keys and values
|
264
182
|
*/
|
265
|
-
// TODO(LukeAbby): Should be SourceType
|
266
183
|
updateSource(
|
267
|
-
changes?: fields.SchemaField.
|
268
|
-
options?:
|
269
|
-
):
|
184
|
+
changes?: fields.SchemaField.UpdateData<Schema>,
|
185
|
+
options?: DataModel.UpdateSourceOptions,
|
186
|
+
): fields.SchemaField.UpdateData<Schema>;
|
270
187
|
|
271
188
|
/**
|
272
189
|
* Update the source data for a specific DataSchema.
|
@@ -309,56 +226,46 @@ declare abstract class DataModel<
|
|
309
226
|
* (default: `true`)
|
310
227
|
* @returns The extracted primitive object
|
311
228
|
*/
|
312
|
-
toObject
|
313
|
-
|
229
|
+
toObject<Source extends boolean | undefined>(
|
230
|
+
source?: Source,
|
231
|
+
): Source extends false ? SchemaField.SourceData<Schema> : Readonly<SchemaField.SourceData<Schema>>;
|
314
232
|
|
315
233
|
/**
|
316
234
|
* Extract the source data for the DataModel into a simple object format that can be serialized.
|
317
235
|
* @returns The document source data expressed as a plain object
|
318
236
|
*/
|
319
|
-
toJSON(): fields.SchemaField.
|
237
|
+
toJSON(): fields.SchemaField.SourceData<Schema>;
|
320
238
|
|
321
239
|
/**
|
322
240
|
* Create a new instance of this DataModel from a source record.
|
323
241
|
* The source is presumed to be trustworthy and is not strictly validated.
|
324
242
|
* @param source - Initial document data which comes from a trusted source.
|
325
243
|
* @param context - Model construction context
|
326
|
-
* @remarks
|
327
|
-
*/
|
328
|
-
static fromSource
|
329
|
-
source: fields.SchemaField.InnerAssignmentType<Schema>,
|
330
|
-
{
|
331
|
-
strict,
|
332
|
-
...context
|
333
|
-
}?: DataModel.ConstructorOptions & {
|
334
|
-
/**
|
335
|
-
* Models created from trusted source data are validated non-strictly
|
336
|
-
* @defaultValue `false`
|
337
|
-
*/
|
338
|
-
strict?: boolean;
|
339
|
-
},
|
340
|
-
): DataModel<Schema, DataModel.Any | null>;
|
244
|
+
* @remarks Returns `new this()` so needs an override per subclass.
|
245
|
+
*/
|
246
|
+
static fromSource(source: never, { strict, ...context }?: DataModel.FromSourceOptions): DataModel.Any;
|
341
247
|
|
342
248
|
/**
|
343
249
|
* Create a DataModel instance using a provided serialized JSON string.
|
344
250
|
* @param json - Serialized document data in string format
|
345
251
|
* @returns A constructed data model instance
|
252
|
+
* @remarks Returns `new this()` so needs an override per subclass.
|
346
253
|
*/
|
347
|
-
static fromJSON(json: string):
|
254
|
+
static fromJSON(json: string): DataModel.Any;
|
348
255
|
|
349
256
|
/**
|
350
257
|
* Migrate candidate source data for this DataModel which may require initial cleaning or transformations.
|
351
258
|
* @param source - The candidate source data from which the model will be constructed
|
352
259
|
* @returns Migrated source data, if necessary
|
353
260
|
*/
|
354
|
-
static migrateData(source:
|
261
|
+
static migrateData(source: AnyMutableObject): AnyMutableObject;
|
355
262
|
|
356
263
|
/**
|
357
264
|
* Wrap data migration in a try/catch which attempts it safely
|
358
265
|
* @param source - The candidate source data from which the model will be constructed
|
359
266
|
* @returns Migrated source data, if necessary
|
360
267
|
*/
|
361
|
-
static migrateDataSafe(source:
|
268
|
+
static migrateDataSafe(source: AnyMutableObject): AnyMutableObject;
|
362
269
|
|
363
270
|
/**
|
364
271
|
* Take data which conforms to the current data schema and add backwards-compatible accessors to it in order to
|
@@ -367,31 +274,33 @@ declare abstract class DataModel<
|
|
367
274
|
* @param options - Additional shimming options
|
368
275
|
* @returns Data with added backwards-compatible properties
|
369
276
|
*/
|
370
|
-
|
371
|
-
|
372
|
-
options?: {
|
373
|
-
/**
|
374
|
-
* Apply shims to embedded models?
|
375
|
-
* @defaultValue `true`
|
376
|
-
*/
|
377
|
-
embedded?: boolean;
|
378
|
-
},
|
379
|
-
): object;
|
277
|
+
// options: not null (destructured)
|
278
|
+
static shimData(data: AnyMutableObject, options?: DataModel.ShimDataOptions): AnyMutableObject;
|
380
279
|
}
|
381
280
|
|
382
281
|
declare namespace DataModel {
|
383
|
-
type
|
384
|
-
| fields.SchemaField.InnerAssignmentType<Schema>
|
385
|
-
| DataModel<Schema, any>;
|
282
|
+
type CreateData<Schema extends DataSchema> = fields.SchemaField.AssignmentData<Schema> | DataModel<Schema, any>;
|
386
283
|
|
387
|
-
type ConstructorDataFor<ConcreteDataModel extends DataModel.Any> =
|
284
|
+
type ConstructorDataFor<ConcreteDataModel extends DataModel.Any> = CreateData<SchemaOf<ConcreteDataModel>>;
|
388
285
|
|
286
|
+
// TODO(LukeAbby): Make optional only if `{}` is assignable to `AssignmentData`.
|
287
|
+
type ConstructorArgs<Schema extends DataSchema, Parent extends DataModel.Any | null = null> = [
|
288
|
+
data?: DataModel.CreateData<Schema>,
|
289
|
+
|
290
|
+
// Note(LukeAbby): `{ parent, strict, ...options }`
|
291
|
+
options?: DataModel.DataValidationOptions<Parent>,
|
292
|
+
];
|
389
293
|
/**
|
390
|
-
*
|
294
|
+
* With the existence of custom module subtypes a system can no longer rely on their configured types being the only ones.
|
295
|
+
*
|
296
|
+
* `UnknownDataModel` covers the case where it's configured with a {@link DataModel | `DataModel`}.
|
297
|
+
* Using a {@link TypeDataModel | `TypeDataModel`} is recommended by Foundry but a {@link DataModel | `DataModel`} is
|
298
|
+
* always possible.
|
299
|
+
* See {@link UnknownSystem | `UnknownSystem`} for other possibilities.
|
391
300
|
*/
|
392
|
-
|
301
|
+
interface UnknownDataModel extends DataModel<any, any, any> {}
|
393
302
|
|
394
|
-
interface DataValidationOptions<Parent extends Any | null = null> {
|
303
|
+
interface DataValidationOptions<Parent extends Any | null = Any | null> {
|
395
304
|
/**
|
396
305
|
* Throw an error if validation fails.
|
397
306
|
* @defaultValue `true`
|
@@ -428,12 +337,11 @@ declare namespace DataModel {
|
|
428
337
|
parent?: Parent | null | undefined;
|
429
338
|
}
|
430
339
|
|
431
|
-
|
432
|
-
|
433
|
-
type AnyConstructor = typeof AnyDataModel;
|
340
|
+
interface Any extends AnyDataModel {}
|
341
|
+
interface AnyConstructor extends Identity<typeof AnyDataModel> {}
|
434
342
|
|
435
343
|
/**
|
436
|
-
* A helper type to extract the
|
344
|
+
* A helper type to extract the schema from a {@link DataModel | `DataModel`}.
|
437
345
|
* @typeParam ModelType - the DataModel for the embedded data
|
438
346
|
*/
|
439
347
|
type SchemaOf<ModelType extends DataModel.Any> = ModelType["schema"]["fields"];
|
@@ -443,8 +351,7 @@ declare namespace DataModel {
|
|
443
351
|
// EmbeddedDataField<typeof DataModel<{}>> extends SchemaField<infer SubSchema> ? SubSchema : never
|
444
352
|
// ```
|
445
353
|
type SchemaOfClass<ConcreteClass extends DataModel.AnyConstructor> = ConcreteClass extends abstract new (
|
446
|
-
|
447
|
-
...args: never[]
|
354
|
+
...args: infer _1
|
448
355
|
) => { schema: { fields: infer Fields extends DataSchema } }
|
449
356
|
? Fields
|
450
357
|
: never;
|
@@ -459,10 +366,81 @@ declare namespace DataModel {
|
|
459
366
|
_diff: Record<string, unknown>;
|
460
367
|
_backup: Record<string, unknown>;
|
461
368
|
}
|
369
|
+
|
370
|
+
interface FromSourceOptions extends DataModel.DataValidationOptions {
|
371
|
+
/**
|
372
|
+
* Models created from trusted source data are validated non-strictly
|
373
|
+
* @defaultValue `false`
|
374
|
+
*/
|
375
|
+
strict?: boolean;
|
376
|
+
}
|
377
|
+
|
378
|
+
interface ShimDataOptions {
|
379
|
+
/**
|
380
|
+
* Apply shims to embedded models?
|
381
|
+
* @defaultValue `true`
|
382
|
+
*/
|
383
|
+
embedded?: boolean;
|
384
|
+
}
|
385
|
+
|
386
|
+
interface ValidateOptions<Schema extends DataSchema> {
|
387
|
+
/**
|
388
|
+
* A specific set of proposed changes to validate, rather than the full source data of the model.
|
389
|
+
*/
|
390
|
+
changes?: fields.SchemaField.AssignmentData<Schema>;
|
391
|
+
|
392
|
+
/**
|
393
|
+
* If changes are provided, attempt to clean the changes before validating them?
|
394
|
+
* @defaultValue `false`
|
395
|
+
*/
|
396
|
+
clean?: boolean;
|
397
|
+
|
398
|
+
/**
|
399
|
+
* Allow replacement of invalid values with valid defaults?
|
400
|
+
* @defaultValue `false`
|
401
|
+
*/
|
402
|
+
fallback?: boolean;
|
403
|
+
|
404
|
+
/**
|
405
|
+
* If true, invalid embedded documents will emit a warning and
|
406
|
+
* be placed in the invalidDocuments collection rather than
|
407
|
+
* causing the parent to be considered invalid.
|
408
|
+
* @defaultValue `false`
|
409
|
+
*/
|
410
|
+
dropInvalidEmbedded: boolean;
|
411
|
+
|
412
|
+
/**
|
413
|
+
* Throw if an invalid value is encountered, otherwise log a warning?
|
414
|
+
* @defaultValue `true`
|
415
|
+
*/
|
416
|
+
strict?: boolean;
|
417
|
+
|
418
|
+
/**
|
419
|
+
* Perform validation on individual fields?
|
420
|
+
* @defaultValue `true`
|
421
|
+
*/
|
422
|
+
fields?: boolean;
|
423
|
+
|
424
|
+
/**
|
425
|
+
* Perform joint validation on the full data model?
|
426
|
+
* Joint validation will be performed by default if no changes are passed.
|
427
|
+
* Joint validation will be disabled by default if changes are passed.
|
428
|
+
* Joint validation can be performed on a complete set of changes (for
|
429
|
+
* example testing a complete data model) by explicitly passing true.
|
430
|
+
*/
|
431
|
+
joint?: boolean;
|
432
|
+
}
|
433
|
+
|
434
|
+
interface UpdateSourceOptions {
|
435
|
+
dryRun?: boolean;
|
436
|
+
fallback?: boolean;
|
437
|
+
recursive?: boolean;
|
438
|
+
}
|
462
439
|
}
|
463
440
|
|
464
|
-
|
465
|
-
|
441
|
+
// This uses `any` because `Schema` and `Parent` are invariant
|
442
|
+
declare abstract class AnyDataModel extends DataModel<DataSchema, any, AnyObject> {
|
443
|
+
constructor(...args: never);
|
466
444
|
}
|
467
445
|
|
468
446
|
// Matches foundry exporting class as both default and non-default
|