@league-of-foundry-developers/foundry-vtt-types 12.331.2-beta → 13.340.0
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 +13 -17
- package/package.json +84 -41
- package/src/configuration/configuration.d.mts +315 -0
- package/src/configuration/globals.d.mts +349 -0
- package/src/configuration/index.d.mts +4 -0
- package/src/foundry/client/apps/app.d.mts +10 -5
- package/src/foundry/client/apps/av/av-config.d.mts +2 -2
- package/src/foundry/client/apps/av/cameras.d.mts +7 -2
- package/src/foundry/client/apps/dice/dice-config.d.mts +45 -0
- package/src/foundry/client/apps/dice/index.d.mts +1 -0
- package/src/foundry/client/apps/form.d.mts +13 -4
- package/src/foundry/client/apps/forms/actor.d.mts +4 -4
- package/src/foundry/client/apps/forms/adventure-exporter.d.mts +1 -1
- package/src/foundry/client/apps/forms/adventure-importer.d.mts +1 -1
- package/src/foundry/client/apps/forms/base-sheet.d.mts +7 -6
- package/src/foundry/client/apps/forms/card-config.d.mts +8 -8
- package/src/foundry/client/apps/forms/cards-config.d.mts +5 -4
- package/src/foundry/client/apps/forms/combat-config.d.mts +1 -1
- package/src/foundry/client/apps/forms/combatant-config.d.mts +1 -1
- package/src/foundry/client/apps/forms/effect-config.d.mts +1 -1
- package/src/foundry/client/apps/forms/folder-config.d.mts +1 -1
- package/src/foundry/client/apps/forms/fonts.d.mts +1 -1
- package/src/foundry/client/apps/forms/grid-config.d.mts +3 -8
- package/src/foundry/client/apps/forms/image-popout.d.mts +1 -1
- package/src/foundry/client/apps/forms/item.d.mts +8 -8
- package/src/foundry/client/apps/forms/journal-page-sheet.d.mts +1 -1
- package/src/foundry/client/apps/forms/journal-sheet.d.mts +4 -3
- package/src/foundry/client/apps/forms/macro-config.d.mts +2 -2
- package/src/foundry/client/apps/forms/measure-template.d.mts +8 -10
- package/src/foundry/client/apps/forms/ownership.d.mts +1 -1
- package/src/foundry/client/apps/forms/playlist-config.d.mts +1 -1
- package/src/foundry/client/apps/forms/playlist-sound-config.d.mts +1 -1
- package/src/foundry/client/apps/forms/roll-table-config.d.mts +5 -3
- package/src/foundry/client/apps/forms/scene-config.d.mts +5 -6
- package/src/foundry/client/apps/forms/sheet-config.d.mts +6 -18
- package/src/foundry/client/apps/forms/user-config.d.mts +6 -5
- package/src/foundry/client/apps/hud/chatbubble.d.mts +7 -0
- package/src/foundry/client/apps/hud/container.d.mts +1 -1
- package/src/foundry/client/apps/hud/controls.d.mts +6 -1
- package/src/foundry/client/apps/hud/hotbar.d.mts +9 -4
- package/src/foundry/client/apps/hud/hud.d.mts +1 -1
- package/src/foundry/client/apps/hud/menu.d.mts +8 -1
- package/src/foundry/client/apps/hud/navigation.d.mts +8 -3
- package/src/foundry/client/apps/hud/pause.d.mts +7 -2
- package/src/foundry/client/apps/hud/players.d.mts +8 -3
- package/src/foundry/client/apps/i18n.d.mts +16 -13
- package/src/foundry/client/apps/index.d.mts +1 -0
- package/src/foundry/client/apps/placeables/drawing-config.d.mts +1 -1
- package/src/foundry/client/apps/placeables/drawing-hud.d.mts +1 -1
- package/src/foundry/client/apps/placeables/light-config.d.mts +4 -4
- package/src/foundry/client/apps/placeables/note-config.d.mts +3 -3
- package/src/foundry/client/apps/placeables/sound-config.d.mts +4 -3
- package/src/foundry/client/apps/placeables/tile-config.d.mts +2 -2
- package/src/foundry/client/apps/placeables/tile-hud.d.mts +7 -2
- package/src/foundry/client/apps/placeables/token-config.d.mts +16 -4
- package/src/foundry/client/apps/placeables/token-hud.d.mts +7 -2
- package/src/foundry/client/apps/placeables/wall-config.d.mts +4 -3
- package/src/foundry/client/apps/sidebar/apps/client-settings.d.mts +1 -1
- package/src/foundry/client/apps/sidebar/apps/compendium.d.mts +6 -7
- package/src/foundry/client/apps/sidebar/apps/keybindings-config.d.mts +2 -1
- package/src/foundry/client/apps/sidebar/apps/module-management.d.mts +1 -1
- package/src/foundry/client/apps/sidebar/apps/permission-config.d.mts +1 -1
- package/src/foundry/client/apps/sidebar/apps/support-details.d.mts +1 -1
- package/src/foundry/client/apps/sidebar/apps/tours-management.d.mts +1 -1
- package/src/foundry/client/apps/sidebar/apps/world-config.d.mts +1 -1
- package/src/foundry/client/apps/sidebar/directory-tab-mixin.d.mts +12 -5
- package/src/foundry/client/apps/sidebar/document-directory.d.mts +12 -5
- package/src/foundry/client/apps/sidebar/package-configuration.d.mts +1 -1
- package/src/foundry/client/apps/sidebar/sidebar.d.mts +7 -2
- package/src/foundry/client/apps/sidebar/tabs/actors-directory.d.mts +10 -1
- package/src/foundry/client/apps/sidebar/tabs/cards-directory.d.mts +10 -1
- package/src/foundry/client/apps/sidebar/tabs/chat-log.d.mts +8 -1
- package/src/foundry/client/apps/sidebar/tabs/combat-tracker.d.mts +10 -1
- package/src/foundry/client/apps/sidebar/tabs/compendium-directory.d.mts +15 -9
- package/src/foundry/client/apps/sidebar/tabs/items-directory.d.mts +10 -1
- package/src/foundry/client/apps/sidebar/tabs/journal-directory.d.mts +10 -1
- package/src/foundry/client/apps/sidebar/tabs/macros-directory.d.mts +9 -0
- package/src/foundry/client/apps/sidebar/tabs/playlists-directory.d.mts +16 -8
- package/src/foundry/client/apps/sidebar/tabs/roll-table-directory.d.mts +10 -1
- package/src/foundry/client/apps/sidebar/tabs/scenes-directory.d.mts +11 -2
- package/src/foundry/client/apps/sidebar/tabs/settings.d.mts +19 -1
- package/src/foundry/client/apps/templates.d.mts +5 -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 +1 -2
- package/src/foundry/client/config.d.mts +201 -198
- package/src/foundry/client/core/hooks.d.mts +2 -2
- package/src/foundry/client/core/image.d.mts +81 -33
- package/src/foundry/client/core/keybindings.d.mts +2 -2
- package/src/foundry/client/core/packages.d.mts +9 -2
- package/src/foundry/client/core/settings.d.mts +34 -31
- package/src/foundry/client/core/socket.d.mts +1 -1
- package/src/foundry/client/core/sorting.d.mts +1 -1
- package/src/foundry/client/core/tooltip.d.mts +1 -1
- package/src/foundry/client/core/tour.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 +1 -1
- package/src/foundry/client/data/abstract/canvas-document.d.mts +25 -15
- package/src/foundry/client/data/abstract/client-document.d.mts +48 -39
- package/src/foundry/client/data/abstract/directory-collection-mixin.d.mts +19 -13
- package/src/foundry/client/data/abstract/document-collection.d.mts +8 -8
- package/src/foundry/client/data/abstract/world-collection.d.mts +3 -5
- package/src/foundry/client/data/collections/actors.d.mts +10 -1
- package/src/foundry/client/data/collections/cards.d.mts +9 -0
- package/src/foundry/client/data/collections/combats.d.mts +10 -1
- package/src/foundry/client/data/collections/compendium-collection.d.mts +8 -37
- package/src/foundry/client/data/collections/compendium-packs.d.mts +2 -2
- package/src/foundry/client/data/collections/fog.d.mts +9 -0
- package/src/foundry/client/data/collections/folder.d.mts +9 -0
- package/src/foundry/client/data/collections/items.d.mts +9 -0
- package/src/foundry/client/data/collections/journal.d.mts +10 -1
- package/src/foundry/client/data/collections/macros.d.mts +10 -1
- package/src/foundry/client/data/collections/messages.d.mts +9 -0
- package/src/foundry/client/data/collections/playlists.d.mts +10 -1
- package/src/foundry/client/data/collections/scenes.d.mts +10 -1
- package/src/foundry/client/data/collections/settings.d.mts +9 -0
- package/src/foundry/client/data/collections/tables.d.mts +10 -1
- package/src/foundry/client/data/collections/users.d.mts +10 -1
- package/src/foundry/client/data/documents/active-effect.d.mts +43 -14
- package/src/foundry/client/data/documents/actor-delta.d.mts +4 -4
- package/src/foundry/client/data/documents/actor.d.mts +7 -4
- package/src/foundry/client/data/documents/adventure.d.mts +9 -8
- package/src/foundry/client/data/documents/ambient-light.d.mts +3 -2
- package/src/foundry/client/data/documents/ambient-sound.d.mts +3 -2
- package/src/foundry/client/data/documents/card.d.mts +4 -3
- package/src/foundry/client/data/documents/cards.d.mts +15 -20
- package/src/foundry/client/data/documents/chat-message.d.mts +4 -3
- package/src/foundry/client/data/documents/combat.d.mts +5 -4
- package/src/foundry/client/data/documents/combatant.d.mts +5 -4
- package/src/foundry/client/data/documents/drawing.d.mts +3 -2
- package/src/foundry/client/data/documents/fog-exploration.d.mts +13 -3
- package/src/foundry/client/data/documents/folder.d.mts +27 -9
- package/src/foundry/client/data/documents/index.d.mts +2 -0
- package/src/foundry/client/data/documents/item.d.mts +6 -2
- package/src/foundry/client/data/documents/journal-entry-page.d.mts +5 -4
- package/src/foundry/client/data/documents/journal-entry.d.mts +5 -4
- package/src/foundry/client/data/documents/macro.d.mts +5 -6
- package/src/foundry/client/data/documents/measured-template.d.mts +3 -2
- package/src/foundry/client/data/documents/note.d.mts +3 -2
- package/src/foundry/client/data/documents/playlist-sound.d.mts +4 -3
- package/src/foundry/client/data/documents/playlist.d.mts +13 -13
- package/src/foundry/client/data/documents/region-behavior.d.mts +78 -0
- package/src/foundry/client/data/documents/region.d.mts +160 -0
- package/src/foundry/client/data/documents/scene.d.mts +18 -10
- package/src/foundry/client/data/documents/setting.d.mts +3 -2
- package/src/foundry/client/data/documents/table-result.d.mts +3 -2
- package/src/foundry/client/data/documents/table.d.mts +5 -4
- package/src/foundry/client/data/documents/tile.d.mts +3 -2
- package/src/foundry/client/data/documents/token.d.mts +7 -16
- package/src/foundry/client/data/documents/user.d.mts +5 -4
- package/src/foundry/client/data/documents/wall.d.mts +3 -2
- package/src/foundry/client/game.d.mts +28 -21
- package/src/foundry/client/head.d.mts +12 -7
- package/src/foundry/client/hooks.d.mts +60 -41
- package/src/foundry/client/pixi/board.d.mts +21 -20
- package/src/foundry/client/pixi/core/containers/base-canvas-group.d.mts +95 -24
- package/src/foundry/client/pixi/core/containers/cached-container.d.mts +36 -18
- 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 +24 -14
- package/src/foundry/client/pixi/core/containers/quad-mesh.d.mts +15 -5
- package/src/foundry/client/pixi/core/containers/quadtree.d.mts +107 -50
- package/src/foundry/client/pixi/core/containers/sprite-mesh.d.mts +66 -23
- package/src/foundry/client/pixi/core/containers/unbound-container.d.mts +20 -2
- package/src/foundry/client/pixi/core/interaction/canvas-animation.d.mts +158 -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 +119 -52
- package/src/foundry/client/pixi/core/interaction/ping.d.mts +51 -28
- package/src/foundry/client/pixi/core/interaction/pings/chevron.d.mts +16 -8
- package/src/foundry/client/pixi/core/interaction/pings/pulse.d.mts +84 -33
- package/src/foundry/client/pixi/core/interaction/render-flags.d.mts +16 -7
- package/src/foundry/client/pixi/core/interaction/resize-handle.d.mts +35 -5
- package/src/foundry/client/pixi/core/interaction/targets.d.mts +19 -16
- package/src/foundry/client/pixi/core/loader.d.mts +85 -75
- package/src/foundry/client/pixi/core/shapes/limited-angle-polygon.d.mts +36 -16
- 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 +27 -9
- package/src/foundry/client/pixi/core/shapes/source-polygon.d.mts +162 -72
- package/src/foundry/client/pixi/extensions/circle.d.mts +133 -122
- package/src/foundry/client/pixi/extensions/graphics.d.mts +3 -1
- package/src/foundry/client/pixi/extensions/observable-transform.d.mts +10 -2
- package/src/foundry/client/pixi/extensions/polygon.d.mts +155 -134
- package/src/foundry/client/pixi/extensions/rectangle.d.mts +266 -240
- package/src/foundry/client/pixi/groups/effects.d.mts +75 -24
- package/src/foundry/client/pixi/groups/environment.d.mts +68 -19
- package/src/foundry/client/pixi/groups/hidden.d.mts +27 -11
- package/src/foundry/client/pixi/groups/interface.d.mts +62 -38
- package/src/foundry/client/pixi/groups/overlay.d.mts +18 -6
- package/src/foundry/client/pixi/groups/primary.d.mts +64 -42
- package/src/foundry/client/pixi/groups/rendered.d.mts +18 -6
- package/src/foundry/client/pixi/layers/base/canvas-layer.d.mts +9 -13
- package/src/foundry/client/pixi/layers/base/interaction-layer.d.mts +18 -17
- package/src/foundry/client/pixi/layers/base/placeables-layer.d.mts +86 -98
- package/src/foundry/client/pixi/layers/controls/cursor.d.mts +1 -1
- package/src/foundry/client/pixi/layers/controls/door.d.mts +9 -0
- package/src/foundry/client/pixi/layers/controls/layer.d.mts +10 -8
- package/src/foundry/client/pixi/layers/controls/ruler.d.mts +1 -1
- package/src/foundry/client/pixi/layers/effects/background-effects.d.mts +6 -8
- package/src/foundry/client/pixi/layers/effects/coloration-effects.d.mts +4 -7
- package/src/foundry/client/pixi/layers/effects/darkness-effects.d.mts +3 -6
- package/src/foundry/client/pixi/layers/effects/illumination-effects.d.mts +4 -7
- package/src/foundry/client/pixi/layers/effects/visibility.d.mts +11 -8
- package/src/foundry/client/pixi/layers/effects/weather/particles/effect.d.mts +1 -1
- package/src/foundry/client/pixi/layers/effects/weather-effects.d.mts +5 -8
- package/src/foundry/client/pixi/layers/grid/highlight.d.mts +1 -1
- package/src/foundry/client/pixi/layers/grid/layer.d.mts +6 -8
- package/src/foundry/client/pixi/layers/grid/mesh.d.mts +1 -1
- package/src/foundry/client/pixi/layers/masks/depth.d.mts +11 -6
- package/src/foundry/client/pixi/layers/masks/occlusion.d.mts +18 -11
- package/src/foundry/client/pixi/layers/masks/vision.d.mts +100 -14
- package/src/foundry/client/pixi/layers/placeables/drawings.d.mts +3 -6
- package/src/foundry/client/pixi/layers/placeables/index.d.mts +1 -0
- package/src/foundry/client/pixi/layers/placeables/lighting.d.mts +4 -7
- package/src/foundry/client/pixi/layers/placeables/notes.d.mts +4 -6
- package/src/foundry/client/pixi/layers/placeables/regions.d.mts +100 -0
- package/src/foundry/client/pixi/layers/placeables/sounds.d.mts +4 -8
- package/src/foundry/client/pixi/layers/placeables/templates.d.mts +3 -6
- package/src/foundry/client/pixi/layers/placeables/tiles.d.mts +3 -5
- package/src/foundry/client/pixi/layers/placeables/tokens.d.mts +6 -10
- package/src/foundry/client/pixi/layers/placeables/walls.d.mts +9 -11
- package/src/foundry/client/pixi/perception/clockwise-sweep.d.mts +53 -24
- package/src/foundry/client/pixi/perception/detection-mode.d.mts +4 -2
- package/src/foundry/client/pixi/perception/fog.d.mts +9 -0
- package/src/foundry/client/pixi/perception/perception-manager.d.mts +1 -1
- package/src/foundry/client/pixi/perception/vision-mode.d.mts +31 -13
- package/src/foundry/client/pixi/perception/weiler-atherton-clipping.d.mts +77 -39
- package/src/foundry/client/pixi/placeable.d.mts +15 -7
- package/src/foundry/client/pixi/placeables/drawing.d.mts +10 -9
- package/src/foundry/client/pixi/placeables/index.d.mts +1 -0
- package/src/foundry/client/pixi/placeables/light.d.mts +8 -6
- package/src/foundry/client/pixi/placeables/note.d.mts +8 -7
- package/src/foundry/client/pixi/placeables/primary-canvas-objects/primary-canvas-object.d.mts +29 -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 +177 -0
- package/src/foundry/client/pixi/placeables/sound.d.mts +7 -6
- package/src/foundry/client/pixi/placeables/template.d.mts +12 -11
- package/src/foundry/client/pixi/placeables/tile.d.mts +12 -10
- package/src/foundry/client/pixi/placeables/token.d.mts +149 -19
- package/src/foundry/client/pixi/placeables/wall.d.mts +11 -9
- package/src/foundry/client/pixi/webgl/extensions/batch-renderer.d.mts +50 -33
- package/src/foundry/client/pixi/webgl/extensions/batch-shader-generator.d.mts +9 -8
- package/src/foundry/client/pixi/webgl/helpers/{framebugger-snapshot.d.mts → framebuffer-snapshot.d.mts} +9 -8
- package/src/foundry/client/pixi/webgl/helpers/index.d.mts +1 -1
- package/src/foundry/client/pixi/webgl/helpers/smooth-noise.d.mts +30 -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 +10 -10
- 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 +11 -10
- package/src/foundry/client/pixi/webgl/shaders/filters/base-mask-filter.d.mts +11 -9
- package/src/foundry/client/pixi/webgl/shaders/filters/blur.d.mts +21 -19
- package/src/foundry/client/pixi/webgl/shaders/filters/effects-masking.d.mts +33 -32
- package/src/foundry/client/pixi/webgl/shaders/filters/environment.d.mts +9 -8
- package/src/foundry/client/pixi/webgl/shaders/filters/glow-overlay.d.mts +11 -10
- package/src/foundry/client/pixi/webgl/shaders/filters/invisibility.d.mts +9 -8
- package/src/foundry/client/pixi/webgl/shaders/filters/outline-overlay.d.mts +11 -10
- package/src/foundry/client/pixi/webgl/shaders/filters/transition.d.mts +65 -58
- package/src/foundry/client/pixi/webgl/shaders/filters/visibility.d.mts +20 -16
- 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 +9 -8
- package/src/foundry/client/pixi/webgl/shaders/filters/weather-occlusion-masks.d.mts +9 -8
- 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 +11 -10
- package/src/foundry/client/pixi/webgl/shaders/lighting/background-lighting.d.mts +9 -8
- package/src/foundry/client/pixi/webgl/shaders/lighting/base-lighting.d.mts +32 -32
- package/src/foundry/client/pixi/webgl/shaders/lighting/coloration-lighting.d.mts +9 -8
- package/src/foundry/client/pixi/webgl/shaders/lighting/darkness-lighting.d.mts +9 -8
- package/src/foundry/client/pixi/webgl/shaders/lighting/effects/bewitching-wave.d.mts +18 -16
- package/src/foundry/client/pixi/webgl/shaders/lighting/effects/black-hole.d.mts +9 -8
- package/src/foundry/client/pixi/webgl/shaders/lighting/effects/chroma.d.mts +9 -8
- package/src/foundry/client/pixi/webgl/shaders/lighting/effects/emanation.d.mts +9 -8
- package/src/foundry/client/pixi/webgl/shaders/lighting/effects/energy-field.d.mts +9 -8
- package/src/foundry/client/pixi/webgl/shaders/lighting/effects/fairy-light.d.mts +18 -16
- package/src/foundry/client/pixi/webgl/shaders/lighting/effects/flame.d.mts +18 -16
- package/src/foundry/client/pixi/webgl/shaders/lighting/effects/fog.d.mts +9 -8
- package/src/foundry/client/pixi/webgl/shaders/lighting/effects/force-grid.d.mts +9 -7
- package/src/foundry/client/pixi/webgl/shaders/lighting/effects/ghost-light.d.mts +18 -16
- package/src/foundry/client/pixi/webgl/shaders/lighting/effects/hexa-dome.d.mts +9 -8
- package/src/foundry/client/pixi/webgl/shaders/lighting/effects/light-dome.d.mts +9 -8
- package/src/foundry/client/pixi/webgl/shaders/lighting/effects/magical-gloom.d.mts +9 -8
- package/src/foundry/client/pixi/webgl/shaders/lighting/effects/pulse.d.mts +18 -16
- package/src/foundry/client/pixi/webgl/shaders/lighting/effects/radial-rainbow.d.mts +9 -8
- package/src/foundry/client/pixi/webgl/shaders/lighting/effects/revolving-light.d.mts +9 -8
- package/src/foundry/client/pixi/webgl/shaders/lighting/effects/roiling-mass.d.mts +9 -8
- package/src/foundry/client/pixi/webgl/shaders/lighting/effects/siren-light.d.mts +18 -16
- package/src/foundry/client/pixi/webgl/shaders/lighting/effects/smoke-patch.d.mts +19 -17
- package/src/foundry/client/pixi/webgl/shaders/lighting/effects/star-light.d.mts +9 -8
- package/src/foundry/client/pixi/webgl/shaders/lighting/effects/sunburst.d.mts +18 -16
- package/src/foundry/client/pixi/webgl/shaders/lighting/effects/swirling-rainbow.d.mts +9 -9
- package/src/foundry/client/pixi/webgl/shaders/lighting/effects/torch.d.mts +18 -16
- package/src/foundry/client/pixi/webgl/shaders/lighting/effects/vortex.d.mts +18 -16
- package/src/foundry/client/pixi/webgl/shaders/lighting/effects/wave.d.mts +18 -16
- package/src/foundry/client/pixi/webgl/shaders/lighting/illumination-lighting.d.mts +9 -8
- package/src/foundry/client/pixi/webgl/shaders/region/adjust-darkness-level.d.mts +70 -28
- package/src/foundry/client/pixi/webgl/shaders/region/base.d.mts +52 -8
- package/src/foundry/client/pixi/webgl/shaders/region/highlight.d.mts +68 -8
- package/src/foundry/client/pixi/webgl/shaders/samplers/base-sampler.d.mts +23 -24
- package/src/foundry/client/pixi/webgl/shaders/samplers/baseline-illumination.d.mts +9 -8
- package/src/foundry/client/pixi/webgl/shaders/samplers/color-adjustment.d.mts +37 -28
- package/src/foundry/client/pixi/webgl/shaders/samplers/depth.d.mts +20 -16
- package/src/foundry/client/pixi/webgl/shaders/samplers/fog-of-war.d.mts +9 -8
- package/src/foundry/client/pixi/webgl/shaders/samplers/occlusion.d.mts +19 -17
- package/src/foundry/client/pixi/webgl/shaders/samplers/primary.d.mts +9 -0
- package/src/foundry/client/pixi/webgl/shaders/samplers/token-ring.d.mts +29 -1
- package/src/foundry/client/pixi/webgl/shaders/vision/background-vision.d.mts +9 -8
- package/src/foundry/client/pixi/webgl/shaders/vision/base-vision.d.mts +10 -8
- package/src/foundry/client/pixi/webgl/shaders/vision/coloration-vision.d.mts +9 -8
- package/src/foundry/client/pixi/webgl/shaders/vision/effects/amplification.d.mts +9 -8
- package/src/foundry/client/pixi/webgl/shaders/vision/effects/wave.d.mts +18 -16
- package/src/foundry/client/pixi/webgl/shaders/vision/illumination-vision.d.mts +9 -8
- package/src/foundry/client/pixi/webgl/shaders/weather/base-weather.d.mts +37 -32
- package/src/foundry/client/pixi/webgl/shaders/weather/effect.d.mts +15 -14
- package/src/foundry/client/pixi/webgl/shaders/weather/fog.d.mts +16 -15
- package/src/foundry/client/pixi/webgl/shaders/weather/rain.d.mts +18 -17
- package/src/foundry/client/pixi/webgl/shaders/weather/snow.d.mts +14 -13
- package/src/foundry/client/pixi/workers/texture-worker.d.mts +33 -53
- package/src/foundry/client/ui/dialog.d.mts +136 -125
- package/src/foundry/client/ui/drag.d.mts +1 -1
- package/src/foundry/client/ui/dragdrop.d.mts +1 -1
- package/src/foundry/client/ui/editor.d.mts +3 -3
- package/src/foundry/client/ui/filepicker.d.mts +1 -1
- package/src/foundry/client/ui/filter.d.mts +2 -2
- package/src/foundry/client/ui/index.d.mts +0 -2
- package/src/foundry/client-esm/_module.d.mts +112 -0
- package/src/foundry/client-esm/_types.d.mts +8 -0
- package/src/foundry/client-esm/applications/_module.d.mts +10 -5
- package/src/foundry/client-esm/applications/_types.d.mts +2 -2
- package/src/foundry/client-esm/applications/api/_module.d.mts +6 -5
- package/src/foundry/client-esm/applications/api/application.d.mts +221 -55
- package/src/foundry/client-esm/applications/api/category-browser.d.mts +40 -0
- package/src/foundry/client-esm/applications/api/dialog.d.mts +152 -74
- package/src/foundry/client-esm/applications/api/document-sheet.d.mts +21 -8
- package/src/foundry/client-esm/applications/api/handlebars-application.d.mts +161 -131
- package/src/foundry/client-esm/applications/apps/_module.d.mts +9 -2
- package/src/foundry/client-esm/applications/apps/av/_module.d.mts +7 -0
- package/src/foundry/client-esm/applications/apps/av/camera-popout.d.mts +23 -0
- package/src/foundry/client-esm/applications/apps/av/cameras.d.mts +95 -0
- package/src/foundry/client-esm/applications/apps/combat-tracker-config.d.mts +21 -0
- package/src/foundry/client-esm/applications/apps/compendium-art-config.d.mts +6 -5
- package/src/foundry/client-esm/applications/apps/document-ownership.d.mts +21 -0
- package/src/foundry/client-esm/applications/apps/document-sheet-config.d.mts +24 -0
- package/src/foundry/client-esm/applications/apps/file-picker.d.mts +410 -0
- package/src/foundry/client-esm/applications/apps/grid-config.d.mts +25 -0
- package/src/foundry/client-esm/applications/apps/image-popout.d.mts +56 -0
- package/src/foundry/client-esm/applications/apps/permission-config.d.mts +4 -4
- 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 +5 -2
- package/src/foundry/client-esm/applications/elements/codemirror/element.d.mts +16 -0
- package/src/foundry/client-esm/applications/elements/codemirror/extensions.d.mts +20 -0
- package/src/foundry/client-esm/applications/elements/codemirror/view.d.mts +8 -0
- package/src/foundry/client-esm/applications/elements/document-embed.d.mts +14 -0
- package/src/foundry/client-esm/applications/elements/document-tags.d.mts +2 -0
- package/src/foundry/client-esm/applications/elements/enriched-content.d.mts +29 -0
- package/src/foundry/client-esm/applications/elements/multi-select.d.mts +15 -5
- package/src/foundry/client-esm/applications/elements/prosemirror-editor.d.mts +1 -1
- package/src/foundry/client-esm/applications/elements/secret-block.d.mts +7 -0
- package/src/foundry/client-esm/applications/elements/string-tags.d.mts +1 -1
- package/src/foundry/client-esm/applications/forms/fields.d.mts +6 -1
- package/src/foundry/client-esm/applications/handlebars.d.mts +3 -0
- package/src/foundry/client-esm/applications/hud/_module.d.mts +10 -0
- package/src/foundry/client-esm/applications/hud/container.d.mts +15 -0
- package/src/foundry/client-esm/applications/hud/drawing-hud.d.mts +19 -0
- package/src/foundry/client-esm/applications/hud/placeable-hud.d.mts +41 -0
- package/src/foundry/client-esm/applications/hud/tile-hud.d.mts +19 -0
- package/src/foundry/client-esm/applications/hud/token-hud.d.mts +20 -0
- package/src/foundry/client-esm/applications/quickstart.d.mts +20 -0
- package/src/foundry/client-esm/applications/settings/_module.d.mts +7 -0
- package/src/foundry/client-esm/applications/settings/config.d.mts +21 -0
- package/src/foundry/client-esm/applications/settings/dependency-resolution.d.mts +19 -0
- package/src/foundry/client-esm/applications/settings/menus/_module.d.mts +11 -0
- package/src/foundry/client-esm/applications/settings/menus/av-config.d.mts +27 -0
- package/src/foundry/client-esm/applications/settings/menus/default-sheets-config.d.mts +19 -0
- package/src/foundry/client-esm/applications/settings/menus/dice-config.d.mts +18 -0
- package/src/foundry/client-esm/applications/settings/menus/font-config.d.mts +43 -0
- package/src/foundry/client-esm/applications/settings/menus/prototype-overrides.d.mts +21 -0
- package/src/foundry/client-esm/applications/settings/menus/ui-config.d.mts +26 -0
- package/src/foundry/client-esm/applications/sheets/_module.d.mts +30 -5
- package/src/foundry/client-esm/applications/sheets/active-effect-config.d.mts +25 -0
- package/src/foundry/client-esm/applications/sheets/actor-sheet.d.mts +1 -1
- package/src/foundry/client-esm/applications/sheets/adventure-exporter.d.mts +25 -0
- package/src/foundry/client-esm/applications/sheets/adventure-importer.d.mts +25 -0
- package/src/foundry/client-esm/applications/sheets/ambient-light-config.d.mts +9 -6
- package/src/foundry/client-esm/applications/sheets/ambient-sound-config.d.mts +3 -3
- package/src/foundry/client-esm/applications/sheets/base-sheet.d.mts +23 -0
- package/src/foundry/client-esm/applications/sheets/card-config.d.mts +25 -0
- package/src/foundry/client-esm/applications/sheets/cards-config.d.mts +49 -0
- package/src/foundry/client-esm/applications/sheets/combatant-config.d.mts +25 -0
- package/src/foundry/client-esm/applications/sheets/drawing-config.d.mts +25 -0
- package/src/foundry/client-esm/applications/sheets/folder-config.d.mts +25 -0
- package/src/foundry/client-esm/applications/sheets/item-sheet.d.mts +1 -1
- package/src/foundry/client-esm/applications/sheets/journal/_module.d.mts +16 -0
- package/src/foundry/client-esm/applications/sheets/journal/dialog-show.d.mts +19 -0
- package/src/foundry/client-esm/applications/sheets/journal/journal-entry-category-config.d.mts +25 -0
- package/src/foundry/client-esm/applications/sheets/journal/journal-entry-page-hbs-sheet.d.mts +19 -0
- package/src/foundry/client-esm/applications/sheets/journal/journal-entry-page-image-sheet.d.mts +18 -0
- package/src/foundry/client-esm/applications/sheets/journal/journal-entry-page-markdown-sheet.d.mts +18 -0
- package/src/foundry/client-esm/applications/sheets/journal/journal-entry-page-pdf-sheet.d.mts +18 -0
- package/src/foundry/client-esm/applications/sheets/journal/journal-entry-page-prose-mirror-sheet.d.mts +18 -0
- package/src/foundry/client-esm/applications/sheets/journal/journal-entry-page-sheet.d.mts +28 -0
- package/src/foundry/client-esm/applications/sheets/journal/journal-entry-page-text-sheet.d.mts +18 -0
- package/src/foundry/client-esm/applications/sheets/journal/journal-entry-page-video-sheet.d.mts +18 -0
- package/src/foundry/client-esm/applications/sheets/journal/journal-entry-sheet.d.mts +35 -0
- package/src/foundry/client-esm/applications/sheets/macro-config.d.mts +25 -0
- package/src/foundry/client-esm/applications/sheets/note-config.d.mts +25 -0
- package/src/foundry/client-esm/applications/sheets/playlist-config.d.mts +25 -0
- package/src/foundry/client-esm/applications/sheets/playlist-sound-config.d.mts +25 -0
- package/src/foundry/client-esm/applications/sheets/region-behavior-config.d.mts +29 -5
- package/src/foundry/client-esm/applications/sheets/region-config.d.mts +35 -5
- package/src/foundry/client-esm/applications/sheets/roll-table-config.d.mts +25 -0
- package/src/foundry/client-esm/applications/sheets/roll-table-sheet.d.mts +25 -0
- package/src/foundry/client-esm/applications/sheets/scene-config.d.mts +25 -0
- package/src/foundry/client-esm/applications/sheets/table-result-config.d.mts +25 -0
- package/src/foundry/client-esm/applications/sheets/template-config.d.mts +25 -0
- package/src/foundry/client-esm/applications/sheets/tile-config.d.mts +25 -0
- package/src/foundry/client-esm/applications/sheets/token/_module.d.mts +7 -0
- package/src/foundry/client-esm/applications/sheets/token/mixin.d.mts +27 -0
- package/src/foundry/client-esm/applications/sheets/token/prototype-config.d.mts +18 -0
- package/src/foundry/client-esm/applications/sheets/token/token-config.d.mts +25 -0
- package/src/foundry/client-esm/applications/sheets/user-config.d.mts +3 -3
- package/src/foundry/client-esm/applications/sheets/wall-config.d.mts +25 -0
- package/src/foundry/client-esm/applications/sidebar/_module.d.mts +10 -0
- package/src/foundry/client-esm/applications/sidebar/apps/_module.d.mts +15 -0
- package/src/foundry/client-esm/applications/sidebar/apps/chat-popout.d.mts +22 -0
- package/src/foundry/client-esm/applications/sidebar/apps/compendium.d.mts +21 -0
- package/src/foundry/client-esm/applications/sidebar/apps/controls-config.d.mts +20 -0
- package/src/foundry/client-esm/applications/sidebar/apps/folder-export.d.mts +18 -0
- package/src/foundry/client-esm/applications/sidebar/apps/frame-viewer.d.mts +22 -0
- package/src/foundry/client-esm/applications/sidebar/apps/invitation-links.d.mts +17 -0
- package/src/foundry/client-esm/applications/sidebar/apps/module-management.d.mts +21 -0
- package/src/foundry/client-esm/applications/sidebar/apps/support-details.d.mts +17 -0
- package/src/foundry/client-esm/applications/sidebar/apps/tours-management.d.mts +20 -0
- package/src/foundry/client-esm/applications/sidebar/apps/world-config.d.mts +19 -0
- package/src/foundry/client-esm/applications/sidebar/document-directory.d.mts +30 -0
- package/src/foundry/client-esm/applications/sidebar/sidebar-tab.d.mts +86 -0
- package/src/foundry/client-esm/applications/sidebar/sidebar.d.mts +18 -0
- package/src/foundry/client-esm/applications/sidebar/tabs/_module.d.mts +17 -0
- package/src/foundry/client-esm/applications/sidebar/tabs/actor-directory.d.mts +20 -0
- package/src/foundry/client-esm/applications/sidebar/tabs/cards-directory.d.mts +20 -0
- package/src/foundry/client-esm/applications/sidebar/tabs/chat.d.mts +19 -0
- package/src/foundry/client-esm/applications/sidebar/tabs/combat-tracker.d.mts +19 -0
- package/src/foundry/client-esm/applications/sidebar/tabs/compendium-directory.d.mts +19 -0
- package/src/foundry/client-esm/applications/sidebar/tabs/item-directory.d.mts +20 -0
- package/src/foundry/client-esm/applications/sidebar/tabs/journal-directory.d.mts +20 -0
- package/src/foundry/client-esm/applications/sidebar/tabs/macro-directory.d.mts +20 -0
- package/src/foundry/client-esm/applications/sidebar/tabs/playlist-directory.d.mts +20 -0
- package/src/foundry/client-esm/applications/sidebar/tabs/roll-table-directory.d.mts +20 -0
- package/src/foundry/client-esm/applications/sidebar/tabs/scene-directory.d.mts +20 -0
- package/src/foundry/client-esm/applications/sidebar/tabs/settings.d.mts +18 -0
- package/src/foundry/client-esm/applications/ui/_module.d.mts +9 -2
- package/src/foundry/client-esm/applications/ui/game-pause.d.mts +22 -0
- package/src/foundry/client-esm/applications/ui/hotbar.d.mts +29 -0
- package/src/foundry/client-esm/applications/ui/main-menu.d.mts +27 -0
- package/src/foundry/client-esm/applications/ui/notifications.d.mts +208 -0
- package/src/foundry/client-esm/applications/ui/players.d.mts +26 -0
- package/src/foundry/client-esm/applications/ui/region-legend.d.mts +48 -3
- package/src/foundry/client-esm/applications/ui/scene-controls.d.mts +20 -0
- package/src/foundry/client-esm/applications/ui/scene-navigation.d.mts +28 -0
- package/src/foundry/client-esm/applications/ux/_module.d.mts +14 -0
- package/src/foundry/client-esm/applications/ux/context-menu.d.mts +359 -0
- package/src/foundry/client-esm/applications/ux/drag-drop.d.mts +21 -0
- package/src/foundry/client-esm/applications/ux/draggable.d.mts +9 -0
- package/src/foundry/client-esm/applications/ux/form-data-extended.d.mts +17 -0
- package/src/foundry/client-esm/applications/ux/html-secret.d.mts +21 -0
- package/src/foundry/client-esm/applications/ux/prosemirror-editor.d.mts +9 -0
- package/src/foundry/client-esm/applications/ux/search-filter.d.mts +9 -0
- package/src/foundry/client-esm/applications/ux/tabs.d.mts +29 -0
- package/src/foundry/client-esm/applications/ux/text-editor.d.mts +9 -0
- package/src/foundry/client-esm/appv1/_module.d.mts +7 -0
- package/src/foundry/client-esm/appv1/api/_module.d.mts +9 -0
- package/src/foundry/client-esm/appv1/api/application-v1.d.mts +5 -0
- package/src/foundry/client-esm/appv1/api/dialog-v1.d.mts +5 -0
- package/src/foundry/client-esm/appv1/api/document-sheet-v1.d.mts +5 -0
- package/src/foundry/client-esm/appv1/api/form-application-v1.d.mts +5 -0
- package/src/foundry/client-esm/appv1/sheets/_module.d.mts +10 -0
- package/src/foundry/client-esm/appv1/sheets/actor-sheet.d.mts +5 -0
- package/src/foundry/client-esm/appv1/sheets/adventure-importer.d.mts +5 -0
- package/src/foundry/client-esm/appv1/sheets/item-sheet.d.mts +5 -0
- package/src/foundry/client-esm/appv1/sheets/journal-page-sheet.d.mts +7 -0
- package/src/foundry/client-esm/appv1/sheets/journal-sheet.d.mts +5 -0
- package/src/foundry/client-esm/audio/_module.d.mts +2 -3
- package/src/foundry/client-esm/audio/_types.d.mts +1 -1
- package/src/foundry/client-esm/audio/biquad.d.mts +1 -1
- package/src/foundry/client-esm/audio/convolver.d.mts +1 -1
- package/src/foundry/client-esm/audio/helper.d.mts +6 -5
- package/src/foundry/client-esm/audio/sound.d.mts +2 -2
- package/src/foundry/client-esm/audio/timeout.d.mts +5 -2
- package/src/foundry/client-esm/av/_module.d.mts +10 -0
- package/src/foundry/client-esm/av/client.d.mts +18 -0
- package/src/foundry/client-esm/av/clients/_module.d.mts +6 -0
- package/src/foundry/client-esm/av/clients/simplepeer.d.mts +11 -0
- package/src/foundry/client-esm/av/master.d.mts +12 -0
- package/src/foundry/client-esm/av/settings.d.mts +30 -0
- 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 +61 -18
- package/src/foundry/client-esm/canvas/edges/edge.d.mts +106 -42
- package/src/foundry/client-esm/canvas/edges/edges.d.mts +9 -0
- package/src/foundry/client-esm/canvas/edges/vertex.d.mts +51 -23
- package/src/foundry/client-esm/canvas/regions/_module.d.mts +2 -3
- package/src/foundry/client-esm/canvas/regions/geometry.d.mts +31 -0
- package/src/foundry/client-esm/canvas/regions/mesh.d.mts +61 -0
- package/src/foundry/client-esm/canvas/regions/polygon-tree.d.mts +101 -0
- package/src/foundry/client-esm/canvas/regions/shape.d.mts +118 -0
- package/src/foundry/client-esm/canvas/scene-manager.d.mts +12 -3
- package/src/foundry/client-esm/canvas/smaa/smaa.d.mts +2 -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 +32 -18
- package/src/foundry/client-esm/canvas/sources/base-light-source.d.mts +53 -15
- package/src/foundry/client-esm/canvas/sources/global-light-source.d.mts +18 -3
- package/src/foundry/client-esm/canvas/sources/point-darkness-source.d.mts +47 -23
- package/src/foundry/client-esm/canvas/sources/point-effect-source.d.mts +17 -7
- package/src/foundry/client-esm/canvas/sources/point-light-source.d.mts +26 -14
- package/src/foundry/client-esm/canvas/sources/point-movement-source.d.mts +20 -4
- package/src/foundry/client-esm/canvas/sources/point-sound-source.d.mts +26 -8
- package/src/foundry/client-esm/canvas/sources/point-vision-source.d.mts +26 -25
- package/src/foundry/client-esm/canvas/sources/rendered-effect-source.d.mts +89 -52
- package/src/foundry/client-esm/canvas/tokens/_module.d.mts +2 -3
- package/src/foundry/client-esm/canvas/tokens/ring-config.d.mts +112 -2
- package/src/foundry/client-esm/canvas/tokens/ring-data.d.mts +170 -3
- package/src/foundry/client-esm/canvas/tokens/ring.d.mts +189 -2
- package/src/foundry/client-esm/client.d.mts +56 -63
- package/src/foundry/client-esm/config.d.mts +1 -0
- package/src/foundry/client-esm/data/_module.d.mts +8 -3
- package/src/foundry/client-esm/data/_types.d.mts +10 -0
- package/src/foundry/client-esm/data/calendar.d.mts +213 -0
- package/src/foundry/client-esm/data/client-backend.d.mts +17 -18
- package/src/foundry/client-esm/data/combat-config.d.mts +53 -0
- package/src/foundry/client-esm/data/region-behaviors/_module.d.mts +3 -3
- package/src/foundry/client-esm/data/region-behaviors/adjust-darkness-level.d.mts +57 -0
- package/src/foundry/client-esm/data/region-behaviors/base.d.mts +59 -0
- package/src/foundry/client-esm/data/region-behaviors/display-scrolling-text.d.mts +64 -0
- package/src/foundry/client-esm/data/region-behaviors/execute-macro.d.mts +27 -0
- package/src/foundry/client-esm/data/region-behaviors/execute-script.d.mts +23 -0
- package/src/foundry/client-esm/data/region-behaviors/pause-game.d.mts +23 -0
- package/src/foundry/client-esm/data/region-behaviors/suppress-weather.d.mts +17 -0
- package/src/foundry/client-esm/data/region-behaviors/teleport-token.d.mts +32 -0
- package/src/foundry/client-esm/data/region-behaviors/toggle-behavior.d.mts +31 -0
- package/src/foundry/client-esm/data/terrain-data.d.mts +22 -0
- package/src/foundry/client-esm/dice/_module.d.mts +2 -3
- package/src/foundry/client-esm/dice/parser.d.mts +8 -0
- package/src/foundry/client-esm/dice/roll.d.mts +64 -30
- package/src/foundry/client-esm/dice/terms/_module.d.mts +2 -3
- package/src/foundry/client-esm/dice/terms/coin.d.mts +8 -1
- package/src/foundry/client-esm/dice/terms/dice.d.mts +11 -2
- package/src/foundry/client-esm/dice/terms/die.d.mts +9 -2
- package/src/foundry/client-esm/dice/terms/fate.d.mts +9 -2
- package/src/foundry/client-esm/dice/terms/function.d.mts +5 -2
- package/src/foundry/client-esm/dice/terms/numeric.d.mts +1 -1
- package/src/foundry/client-esm/dice/terms/operator.d.mts +1 -1
- package/src/foundry/client-esm/dice/terms/parenthetical.d.mts +1 -1
- package/src/foundry/client-esm/dice/terms/pool.d.mts +15 -6
- package/src/foundry/client-esm/dice/terms/string.d.mts +1 -1
- package/src/foundry/client-esm/dice/terms/term.d.mts +12 -3
- package/src/foundry/client-esm/documents/_module.d.mts +11 -0
- package/src/foundry/client-esm/documents/_types.d.mts +8 -0
- package/src/foundry/client-esm/documents/abstract/_module.d.mts +6 -0
- package/src/foundry/client-esm/documents/collections/_module.d.mts +6 -0
- package/src/foundry/client-esm/game.d.mts +7 -0
- package/src/foundry/client-esm/helpers/_module.d.mts +2 -2
- package/src/foundry/client-esm/helpers/_types.d.mts +1 -1
- package/src/foundry/client-esm/hooks.d.mts +1 -0
- package/src/foundry/client-esm/nue/_module.d.mts +9 -0
- package/src/foundry/client-esm/nue/nue-manager.d.mts +18 -0
- package/src/foundry/client-esm/nue/tour.d.mts +9 -0
- package/src/foundry/client-esm/nue/tours/_module.d.mts +8 -0
- package/src/foundry/client-esm/nue/tours/canvas-tour.d.mts +12 -0
- package/src/foundry/client-esm/nue/tours/setup-tour.d.mts +11 -0
- package/src/foundry/client-esm/nue/tours/sidebar-tour.d.mts +11 -0
- package/src/foundry/client-esm/nue/tours-collection.d.mts +25 -0
- package/src/foundry/client-esm/packages/_module.d.mts +22 -0
- package/src/foundry/client-esm/packages/_types.d.mts +11 -0
- package/src/foundry/client-esm/packages/client-package.d.mts +11 -0
- package/src/foundry/client-esm/packages/module.d.mts +8 -0
- package/src/foundry/client-esm/packages/system.d.mts +8 -0
- package/src/foundry/client-esm/packages/world.d.mts +8 -0
- package/src/foundry/client-esm/ui.d.mts +1 -0
- package/src/foundry/client-esm/utils/_module.d.mts +7 -0
- package/src/foundry/client-esm/utils/_types.d.mts +2 -0
- package/src/foundry/client-esm/utils/helpers.d.mts +6 -0
- package/src/foundry/common/{types.d.mts → _types.d.mts} +3 -3
- package/src/foundry/common/abstract/{module.d.mts → _module.d.mts} +2 -2
- package/src/foundry/common/abstract/backend.d.mts +38 -44
- package/src/foundry/common/abstract/data.d.mts +22 -51
- package/src/foundry/common/abstract/document.d.mts +212 -121
- 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/socket.d.mts +1 -1
- package/src/foundry/common/abstract/type-data.d.mts +40 -24
- package/src/foundry/common/config.d.mts +3 -1
- package/src/foundry/common/constants.d.mts +234 -205
- package/src/foundry/common/data/{module.d.mts → _module.d.mts} +2 -2
- package/src/foundry/common/data/_types.d.mts +47 -0
- package/src/foundry/common/data/data.d.mts +25 -19
- package/src/foundry/common/data/fields.d.mts +469 -423
- package/src/foundry/common/data/validation-failure.d.mts +4 -6
- package/src/foundry/common/documents/_module.d.mts +4 -2
- package/src/foundry/common/documents/_types.d.mts +10 -45
- package/src/foundry/common/documents/active-effect.d.mts +7 -4
- package/src/foundry/common/documents/actor-delta.d.mts +7 -5
- package/src/foundry/common/documents/actor.d.mts +6 -19
- package/src/foundry/common/documents/adventure.d.mts +13 -2
- package/src/foundry/common/documents/ambient-light.d.mts +3 -1
- package/src/foundry/common/documents/ambient-sound.d.mts +3 -1
- package/src/foundry/common/documents/card.d.mts +6 -4
- package/src/foundry/common/documents/cards.d.mts +3 -1
- package/src/foundry/common/documents/chat-message.d.mts +10 -8
- package/src/foundry/common/documents/combat.d.mts +3 -1
- package/src/foundry/common/documents/combatant.d.mts +4 -12
- package/src/foundry/common/documents/drawing.d.mts +6 -4
- package/src/foundry/common/documents/fog-exploration.d.mts +3 -1
- package/src/foundry/common/documents/folder.d.mts +9 -1
- package/src/foundry/common/documents/item.d.mts +5 -3
- package/src/foundry/common/documents/journal-entry-page.d.mts +3 -2
- package/src/foundry/common/documents/journal-entry.d.mts +3 -1
- package/src/foundry/common/documents/macro.d.mts +5 -3
- package/src/foundry/common/documents/measured-template.d.mts +6 -8
- package/src/foundry/common/documents/module.d.mts +2 -2
- package/src/foundry/common/documents/note.d.mts +4 -2
- package/src/foundry/common/documents/playlist-sound.d.mts +4 -2
- package/src/foundry/common/documents/playlist.d.mts +3 -1
- package/src/foundry/common/documents/region-behavior.d.mts +88 -0
- package/src/foundry/common/documents/region.d.mts +108 -0
- package/src/foundry/common/documents/roll-table.d.mts +3 -1
- package/src/foundry/common/documents/scene.d.mts +9 -1
- package/src/foundry/common/documents/setting.d.mts +3 -2
- package/src/foundry/common/documents/table-result.d.mts +4 -4
- package/src/foundry/common/documents/tile.d.mts +3 -1
- package/src/foundry/common/documents/token.d.mts +15 -7
- package/src/foundry/common/documents/user.d.mts +7 -5
- package/src/foundry/common/documents/wall.d.mts +12 -15
- package/src/foundry/common/grid/_module.d.mts +3 -3
- package/src/foundry/common/grid/_types.d.mts +47 -0
- package/src/foundry/common/grid/base.d.mts +10 -14
- package/src/foundry/common/grid/gridless.d.mts +2 -2
- package/src/foundry/common/grid/hexagonal.d.mts +21 -10
- package/src/foundry/common/grid/square.d.mts +2 -2
- package/src/foundry/common/packages/{module.d.mts → _module.d.mts} +2 -2
- package/src/foundry/common/packages/_types.d.mts +25 -0
- package/src/foundry/common/packages/base-package.d.mts +6 -6
- package/src/foundry/common/packages/base-system.d.mts +19 -4
- package/src/foundry/common/packages/base-world.d.mts +2 -2
- package/src/foundry/common/packages/sub-types.d.mts +1 -1
- package/src/foundry/common/primitives/array.d.mts +1 -1
- package/src/foundry/common/primitives/number.d.mts +1 -1
- 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/_types.d.mts +29 -0
- 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/highlight-matches-plugin.d.mts +1 -1
- package/src/foundry/common/prosemirror/image-plugin.d.mts +1 -1
- package/src/foundry/common/prosemirror/paste-transformer.d.mts +1 -1
- package/src/foundry/common/prosemirror/plugin.d.mts +1 -1
- package/src/foundry/common/prosemirror/schema/index.d.mts +1 -1
- package/src/foundry/common/prosemirror/schema/lists.d.mts +2 -0
- package/src/foundry/common/utils/{module.d.mts → _module.d.mts} +2 -2
- package/src/foundry/common/utils/_types.d.mts +1 -0
- package/src/foundry/common/utils/bitmask.d.mts +20 -11
- package/src/foundry/common/utils/collection.d.mts +7 -19
- package/src/foundry/common/utils/color.d.mts +20 -2
- package/src/foundry/common/utils/event-emitter.d.mts +1 -1
- package/src/foundry/common/utils/geometry.d.mts +12 -2
- package/src/foundry/common/utils/helpers.d.mts +23 -13
- package/src/foundry/common/utils/string-tree.d.mts +1 -1
- package/src/foundry/common/utils/word-tree.d.mts +1 -1
- package/src/foundry/index.d.mts +0 -1
- package/src/foundry/{clipper → public/scripts/clipper}/clipper.d.mts +52 -43
- package/src/foundry/public/scripts/index.d.mts +1 -0
- package/src/foundry/public/scripts/workers/image-compressor.d.mts +23 -0
- package/src/foundry/public/scripts/workers/index.d.mts +1 -0
- package/{index-lenient.d.mts → src/index-lenient.d.mts} +2 -0
- package/src/index.d.mts +6 -0
- package/src/tsconfig.json +19 -0
- package/src/types/augments/particles.d.mts +29 -0
- package/src/types/augments/pixi.d.mts +1013 -10
- package/src/types/augments/smooth.d.mts +31 -0
- package/src/types/augments/tinyMCE.d.mts +1 -1
- package/src/types/config.d.mts +20 -311
- package/src/types/documentConfiguration.d.mts +91 -32
- 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 +1091 -0
- package/index.d.mts +0 -5
- package/src/foundry/client/ui/context.d.mts +0 -213
- package/src/foundry/client/ui/notifications.d.mts +0 -136
- package/src/foundry/common/primitives/regex.d.mts +0 -12
- package/src/types/helperTypes.d.mts +0 -389
- package/src/types/utils.d.mts +0 -520
- /package/src/foundry/common/primitives/{module.d.mts → _module.d.mts} +0 -0
- /package/src/foundry/{clipper → public/scripts/clipper}/index.d.mts +0 -0
@@ -1,15 +1,16 @@
|
|
1
1
|
import type {
|
2
2
|
RemoveIndexSignatures,
|
3
3
|
SimpleMerge,
|
4
|
-
ValueOf,
|
5
4
|
AnyObject,
|
6
5
|
EmptyObject,
|
7
6
|
NullishProps,
|
8
7
|
InexactPartial,
|
9
|
-
|
8
|
+
ToMethod,
|
9
|
+
FixedInstanceType,
|
10
|
+
} from "../../../utils/index.d.mts";
|
10
11
|
import type { DataModel } from "../abstract/data.mts";
|
11
12
|
import type Document from "../abstract/document.mts";
|
12
|
-
import type { EmbeddedCollection, EmbeddedCollectionDelta } from "../abstract/
|
13
|
+
import type { EmbeddedCollection, EmbeddedCollectionDelta, TypeDataModel } from "../abstract/_module.d.mts";
|
13
14
|
import type { DOCUMENT_OWNERSHIP_LEVELS } from "../constants.d.mts";
|
14
15
|
import type { CONST } from "../../client-esm/client.d.mts";
|
15
16
|
import type { DataModelValidationFailure } from "./validation-failure.mts";
|
@@ -23,94 +24,7 @@ import type {
|
|
23
24
|
TextAreaInputConfig,
|
24
25
|
} from "../../client-esm/applications/forms/fields.d.mts";
|
25
26
|
|
26
|
-
|
27
|
-
/**
|
28
|
-
* @typeParam BaseAssignmentType - the base assignment type for a DataField, without null or undefined
|
29
|
-
*/
|
30
|
-
interface DataFieldOptions<BaseAssignmentType> {
|
31
|
-
/**
|
32
|
-
* Is this field required to be populated?
|
33
|
-
* @defaultValue `false`
|
34
|
-
*/
|
35
|
-
required?: boolean | undefined;
|
36
|
-
|
37
|
-
/**
|
38
|
-
* Can this field have null values?
|
39
|
-
* @defaultValue `false`
|
40
|
-
*/
|
41
|
-
nullable?: boolean | undefined;
|
42
|
-
|
43
|
-
/**
|
44
|
-
* Can this field only be modified by a gamemaster or assistant gamemaster?
|
45
|
-
* @defaultValue `false`
|
46
|
-
*/
|
47
|
-
gmOnly?: boolean | undefined;
|
48
|
-
|
49
|
-
/** The initial value of a field, or a function which assigns that initial value. */
|
50
|
-
initial?:
|
51
|
-
| DataFieldOptions.InitialType<
|
52
|
-
DataFieldOptions.InitialReturnType<BaseAssignmentType, this["nullable"], this["required"]>
|
53
|
-
>
|
54
|
-
| undefined;
|
55
|
-
|
56
|
-
/** A data validation function which accepts one argument with the current value. */
|
57
|
-
validate?: DataField.Validator | undefined;
|
58
|
-
|
59
|
-
/** A localizable label displayed on forms which render this field. */
|
60
|
-
label?: string | undefined;
|
61
|
-
|
62
|
-
/** Localizable help text displayed on forms which render this field. */
|
63
|
-
hint?: string | undefined;
|
64
|
-
|
65
|
-
/**
|
66
|
-
* A custom validation error string. When displayed will be prepended with the
|
67
|
-
* document name, field name, and candidate value. This error string is only
|
68
|
-
* used when the return type of the validate function is a boolean. If an Error
|
69
|
-
* is thrown in the validate function, the string message of that Error is used.
|
70
|
-
*/
|
71
|
-
validationError?: string | undefined;
|
72
|
-
}
|
73
|
-
|
74
|
-
namespace DataFieldOptions {
|
75
|
-
/** Any DataFieldOptions. */
|
76
|
-
type Any = DataFieldOptions<any>;
|
77
|
-
|
78
|
-
/**
|
79
|
-
* A helper type for the {@link DataFieldOptions.initial} option.
|
80
|
-
* @typeParam ReturnType - the return type of the option
|
81
|
-
*/
|
82
|
-
type InitialType<ReturnType> = ReturnType | ((initialData: unknown) => ReturnType);
|
83
|
-
|
84
|
-
/**
|
85
|
-
* The decorated return type for the {@link DataFieldOptions.initial} option.
|
86
|
-
* @typeParam BaseAssignmentType - the base assignment type for a DataField
|
87
|
-
* @typeParam NullableOption - the value of the nullable option
|
88
|
-
* @typeParam RequiredOption - the value of the required option
|
89
|
-
*/
|
90
|
-
type InitialReturnType<BaseAssignmentType, NullableOption, RequiredOption> =
|
91
|
-
| Exclude<BaseAssignmentType, null | undefined>
|
92
|
-
| (NullableOption extends true ? null : never)
|
93
|
-
| (RequiredOption extends true ? never : undefined);
|
94
|
-
}
|
95
|
-
|
96
|
-
interface DataFieldValidationOptions {
|
97
|
-
/** Whether this is a partial schema validation, or a complete one. */
|
98
|
-
partial?: boolean;
|
99
|
-
|
100
|
-
/** Whether to allow replacing invalid values with valid fallbacks. */
|
101
|
-
fallback?: boolean;
|
102
|
-
|
103
|
-
/** The full source object being evaluated. */
|
104
|
-
source?: AnyObject;
|
105
|
-
|
106
|
-
/**
|
107
|
-
* If true, invalid embedded documents will emit a warning and be placed in
|
108
|
-
* the invalidDocuments collection rather than causing the parent to be
|
109
|
-
* considered invalid.
|
110
|
-
*/
|
111
|
-
dropInvalidEmbedded?: boolean;
|
112
|
-
}
|
113
|
-
}
|
27
|
+
export type DataSchema = Record<string, DataField.Any>;
|
114
28
|
|
115
29
|
/**
|
116
30
|
* An abstract class that defines the base pattern for a data field within a data schema.
|
@@ -120,17 +34,20 @@ declare global {
|
|
120
34
|
* @typeParam PersistedType - the type of the persisted values of the DataField
|
121
35
|
* @remarks
|
122
36
|
* Defaults:
|
123
|
-
* AssignmentType: `
|
37
|
+
* AssignmentType: `unknown | null | undefined`
|
124
38
|
* InitializedType: `unknown | undefined`
|
125
39
|
* PersistedType: `unknown | undefined`
|
126
40
|
* InitialValue: `undefined`
|
127
41
|
*/
|
128
42
|
declare abstract class DataField<
|
129
|
-
const Options extends
|
43
|
+
const Options extends DataField.Options.Any = DataField.DefaultOptions,
|
130
44
|
const AssignmentType = DataField.AssignmentType<Options>,
|
131
45
|
const InitializedType = DataField.InitializedType<Options>,
|
132
|
-
const PersistedType
|
46
|
+
const PersistedType = InitializedType,
|
133
47
|
> {
|
48
|
+
// Prevent from being bivariant.
|
49
|
+
#assignmentType: AssignmentType;
|
50
|
+
|
134
51
|
/**
|
135
52
|
* @param options - Options which configure the behavior of the field
|
136
53
|
*/
|
@@ -161,7 +78,7 @@ declare abstract class DataField<
|
|
161
78
|
* The initial value of a field, or a function which assigns that initial value.
|
162
79
|
* @defaultValue `undefined`
|
163
80
|
*/
|
164
|
-
initial:
|
81
|
+
initial: DataField.Options.InitialType<InitializedType>;
|
165
82
|
|
166
83
|
/**
|
167
84
|
* Should the prepared value of the field be read-only, preventing it from being
|
@@ -225,7 +142,7 @@ declare abstract class DataField<
|
|
225
142
|
* Default parameters for this field type
|
226
143
|
* @remarks This is not entirely type-safe, overrides should specify a more concrete return type.
|
227
144
|
*/
|
228
|
-
protected static get _defaults():
|
145
|
+
protected static get _defaults(): DataField.Options.Any;
|
229
146
|
|
230
147
|
/**
|
231
148
|
* A dot-separated string representation of the field path within the parent schema.
|
@@ -292,7 +209,7 @@ declare abstract class DataField<
|
|
292
209
|
validate(
|
293
210
|
value: AssignmentType,
|
294
211
|
options?: DataField.ValidationOptions<DataField.Any>,
|
295
|
-
): DataModelValidationFailure |
|
212
|
+
): DataModelValidationFailure | void;
|
296
213
|
|
297
214
|
/**
|
298
215
|
* Special validation rules which supersede regular field validation.
|
@@ -394,7 +311,7 @@ declare abstract class DataField<
|
|
394
311
|
* @param change - The change to apply.
|
395
312
|
* @returns The updated value.
|
396
313
|
*/
|
397
|
-
applyChange(value: InitializedType, model: DataModel.Any, change: EffectChangeData): InitializedType;
|
314
|
+
applyChange(value: InitializedType, model: DataModel.Any, change: ActiveEffect.EffectChangeData): InitializedType;
|
398
315
|
|
399
316
|
/**
|
400
317
|
* Cast a change delta into an appropriate type to be applied to this field.
|
@@ -417,7 +334,7 @@ declare abstract class DataField<
|
|
417
334
|
value: InitializedType,
|
418
335
|
delta: InitializedType,
|
419
336
|
model: DataModel.Any,
|
420
|
-
change: EffectChangeData,
|
337
|
+
change: ActiveEffect.EffectChangeData,
|
421
338
|
): InitializedType | undefined;
|
422
339
|
|
423
340
|
/**
|
@@ -432,7 +349,7 @@ declare abstract class DataField<
|
|
432
349
|
value: InitializedType,
|
433
350
|
delta: InitializedType,
|
434
351
|
model: DataModel.Any,
|
435
|
-
change: EffectChangeData,
|
352
|
+
change: ActiveEffect.EffectChangeData,
|
436
353
|
): InitializedType | undefined;
|
437
354
|
|
438
355
|
/**
|
@@ -447,7 +364,7 @@ declare abstract class DataField<
|
|
447
364
|
value: InitializedType,
|
448
365
|
delta: InitializedType,
|
449
366
|
model: DataModel.Any,
|
450
|
-
change: EffectChangeData,
|
367
|
+
change: ActiveEffect.EffectChangeData,
|
451
368
|
): InitializedType | undefined;
|
452
369
|
|
453
370
|
/**
|
@@ -462,7 +379,7 @@ declare abstract class DataField<
|
|
462
379
|
value: InitializedType,
|
463
380
|
delta: InitializedType,
|
464
381
|
model: DataModel.Any,
|
465
|
-
change: EffectChangeData,
|
382
|
+
change: ActiveEffect.EffectChangeData,
|
466
383
|
): InitializedType | undefined;
|
467
384
|
|
468
385
|
/**
|
@@ -477,7 +394,7 @@ declare abstract class DataField<
|
|
477
394
|
value: InitializedType,
|
478
395
|
delta: InitializedType,
|
479
396
|
model: DataModel.Any,
|
480
|
-
change: EffectChangeData,
|
397
|
+
change: ActiveEffect.EffectChangeData,
|
481
398
|
): InitializedType | undefined;
|
482
399
|
|
483
400
|
/**
|
@@ -492,13 +409,13 @@ declare abstract class DataField<
|
|
492
409
|
value: InitializedType,
|
493
410
|
delta: InitializedType,
|
494
411
|
model: DataModel.Any,
|
495
|
-
change: EffectChangeData,
|
412
|
+
change: ActiveEffect.EffectChangeData,
|
496
413
|
): InitializedType;
|
497
414
|
}
|
498
415
|
|
499
416
|
declare namespace DataField {
|
500
417
|
/** Any DataField. */
|
501
|
-
type Any = DataField<
|
418
|
+
type Any = DataField<DataField.Options.Any, unknown, unknown, unknown>;
|
502
419
|
|
503
420
|
type AnyConstructor = typeof AnyDataField;
|
504
421
|
|
@@ -526,18 +443,106 @@ declare namespace DataField {
|
|
526
443
|
validationError: "is not a valid value";
|
527
444
|
}
|
528
445
|
|
446
|
+
interface Options<BaseAssignmentType> {
|
447
|
+
/**
|
448
|
+
* Is this field required to be populated?
|
449
|
+
* @defaultValue `false`
|
450
|
+
*/
|
451
|
+
required?: boolean | undefined;
|
452
|
+
|
453
|
+
/**
|
454
|
+
* Can this field have null values?
|
455
|
+
* @defaultValue `false`
|
456
|
+
*/
|
457
|
+
nullable?: boolean | undefined;
|
458
|
+
|
459
|
+
/**
|
460
|
+
* Can this field only be modified by a gamemaster or assistant gamemaster?
|
461
|
+
* @defaultValue `false`
|
462
|
+
*/
|
463
|
+
gmOnly?: boolean | undefined;
|
464
|
+
|
465
|
+
/** The initial value of a field, or a function which assigns that initial value. */
|
466
|
+
initial?:
|
467
|
+
| DataField.Options.InitialType<
|
468
|
+
DataField.Options.InitialReturnType<BaseAssignmentType, this["nullable"], this["required"]>
|
469
|
+
>
|
470
|
+
| undefined;
|
471
|
+
|
472
|
+
/** A data validation function which accepts one argument with the current value. */
|
473
|
+
validate?: DataField.Validator<BaseAssignmentType> | undefined;
|
474
|
+
|
475
|
+
/** A localizable label displayed on forms which render this field. */
|
476
|
+
label?: string | undefined;
|
477
|
+
|
478
|
+
/** Localizable help text displayed on forms which render this field. */
|
479
|
+
hint?: string | undefined;
|
480
|
+
|
481
|
+
/**
|
482
|
+
* A custom validation error string. When displayed will be prepended with the
|
483
|
+
* document name, field name, and candidate value. This error string is only
|
484
|
+
* used when the return type of the validate function is a boolean. If an Error
|
485
|
+
* is thrown in the validate function, the string message of that Error is used.
|
486
|
+
*/
|
487
|
+
validationError?: string | undefined;
|
488
|
+
}
|
489
|
+
|
490
|
+
namespace Options {
|
491
|
+
/** Any DataField.Options. */
|
492
|
+
// Note(LukeAbby): This `& object` is intentional. Its purpose is to allow options like `{ integer: true }` to be assigned.
|
493
|
+
// This is an issue because `{ integer: true }` does not extend `{ required?: boolean }` because they have properties in common.
|
494
|
+
// Even though `{ integer: true, required: undefined }` would extend `{ required?: boolean }` following the regular rules of surplus properties being allowed.
|
495
|
+
// `object` was chosen over `AnyObject` so that people may pass in interfa
|
496
|
+
type Any = DataField.Options<any> & object;
|
497
|
+
|
498
|
+
/**
|
499
|
+
* A helper type for the {@link DataField.Options.initial} option.
|
500
|
+
* @typeParam ReturnType - the return type of the option
|
501
|
+
*/
|
502
|
+
type InitialType<ReturnType> = ReturnType | ((initialData: unknown) => ReturnType);
|
503
|
+
|
504
|
+
/**
|
505
|
+
* The decorated return type for the {@link DataField.Options.initial} option.
|
506
|
+
* @typeParam BaseAssignmentType - the base assignment type for a DataField
|
507
|
+
* @typeParam NullableOption - the value of the nullable option
|
508
|
+
* @typeParam RequiredOption - the value of the required option
|
509
|
+
*/
|
510
|
+
type InitialReturnType<BaseAssignmentType, NullableOption, RequiredOption> =
|
511
|
+
| Exclude<BaseAssignmentType, null | undefined>
|
512
|
+
| (NullableOption extends true ? null : never)
|
513
|
+
| (RequiredOption extends true ? never : undefined);
|
514
|
+
}
|
515
|
+
|
516
|
+
interface DataValidationOptions {
|
517
|
+
/** Whether this is a partial schema validation, or a complete one. */
|
518
|
+
partial?: boolean;
|
519
|
+
|
520
|
+
/** Whether to allow replacing invalid values with valid fallbacks. */
|
521
|
+
fallback?: boolean;
|
522
|
+
|
523
|
+
/** The full source object being evaluated. */
|
524
|
+
source?: AnyObject;
|
525
|
+
|
526
|
+
/**
|
527
|
+
* If true, invalid embedded documents will emit a warning and be placed in
|
528
|
+
* the invalidDocuments collection rather than causing the parent to be
|
529
|
+
* considered invalid.
|
530
|
+
*/
|
531
|
+
dropInvalidEmbedded?: boolean;
|
532
|
+
}
|
533
|
+
|
529
534
|
/**
|
530
535
|
* A helper type for the given options type merged into the default options of the DataField class.
|
531
536
|
* @typeParam Options - the options that override the default options
|
532
537
|
*/
|
533
|
-
type MergedOptions<Options extends
|
538
|
+
type MergedOptions<Options extends DataField.Options.Any> = SimpleMerge<DefaultOptions, Options>;
|
534
539
|
|
535
540
|
/**
|
536
541
|
* A type to decorate the base assignment type to a DataField, based on the options of the field.
|
537
542
|
* @typeParam BaseAssignmentType - the base assignment type of the DataField, without null or undefined
|
538
543
|
* @typeParam Options - the options of the DataField
|
539
544
|
*/
|
540
|
-
type DerivedAssignmentType<BaseAssignmentType, Options extends
|
545
|
+
type DerivedAssignmentType<BaseAssignmentType, Options extends DataField.Options.Any> =
|
541
546
|
| Exclude<BaseAssignmentType, null | undefined> // Always include the base type
|
542
547
|
| (Options["nullable"] extends true // determine whether null is in the union
|
543
548
|
? // when nullable, null is always allowed
|
@@ -567,7 +572,7 @@ declare namespace DataField {
|
|
567
572
|
* @typeParam BaseInitializedType - the base initialized type of the DataField, without null or undefined
|
568
573
|
* @typeParam Options - the options of the DataField
|
569
574
|
*/
|
570
|
-
type DerivedInitializedType<BaseInitializedType, Options extends
|
575
|
+
type DerivedInitializedType<BaseInitializedType, Options extends DataField.Options.Any> =
|
571
576
|
| Exclude<BaseInitializedType, null | undefined>
|
572
577
|
| (Options["nullable"] extends true ? null : never)
|
573
578
|
| (Options["required"] extends true ? never : undefined);
|
@@ -576,13 +581,13 @@ declare namespace DataField {
|
|
576
581
|
* A shorthand for the assignment type of a DataField class.
|
577
582
|
* @typeParam Options - the options overriding the defaults
|
578
583
|
*/
|
579
|
-
type AssignmentType<Options extends
|
584
|
+
type AssignmentType<Options extends DataField.Options.Any> = DerivedAssignmentType<any, MergedOptions<Options>>;
|
580
585
|
|
581
586
|
/**
|
582
587
|
* A shorthand for the initialized type of a DataField class.
|
583
588
|
* @typeParam Options - the options overriding the defaults
|
584
589
|
*/
|
585
|
-
type InitializedType<Options extends
|
590
|
+
type InitializedType<Options extends DataField.Options.Any> = DerivedInitializedType<any, MergedOptions<Options>>;
|
586
591
|
|
587
592
|
/** An interface for the options of the {@link DataField} clean functions. */
|
588
593
|
interface CleanOptions {
|
@@ -606,8 +611,14 @@ declare namespace DataField {
|
|
606
611
|
*
|
607
612
|
* An Error may be thrown which provides a custom error message explaining the reason the value is invalid.
|
608
613
|
*/
|
609
|
-
|
610
|
-
|
614
|
+
type Validator<BaseAssignmentType> = ToMethod<
|
615
|
+
(
|
616
|
+
this: DataField,
|
617
|
+
// TODO(LukeAbby): Always allowing `null | undefined` may be too lenient but it's probably the best type for the time being.
|
618
|
+
value: BaseAssignmentType | null | undefined,
|
619
|
+
options: ValidationOptions<DataField>,
|
620
|
+
) => DataModelValidationFailure | boolean | void
|
621
|
+
>;
|
611
622
|
|
612
623
|
/**
|
613
624
|
* An interface for the options of the {@link DataField} validation functions.
|
@@ -615,7 +626,7 @@ declare namespace DataField {
|
|
615
626
|
*/
|
616
627
|
interface ValidationOptions<DataField extends DataField.Any> extends DataValidationOptions {
|
617
628
|
source?: AnyObject;
|
618
|
-
validate?: Validator
|
629
|
+
validate?: Validator<DataField.AssignmentTypeFor<DataField>>;
|
619
630
|
}
|
620
631
|
|
621
632
|
interface Context {
|
@@ -646,7 +657,9 @@ declare namespace DataField {
|
|
646
657
|
interface GroupConfig extends NullishProps<FormGroupConfig, "label" | "hint" | "input"> {}
|
647
658
|
}
|
648
659
|
|
649
|
-
declare abstract class AnyDataField extends DataField<any, any, any, any> {
|
660
|
+
declare abstract class AnyDataField extends DataField<any, any, any, any> {
|
661
|
+
constructor(arg0: never, ...args: never[]);
|
662
|
+
}
|
650
663
|
|
651
664
|
/**
|
652
665
|
* A special class of {@link DataField} which defines a data schema.
|
@@ -685,7 +698,7 @@ declare class SchemaField<
|
|
685
698
|
override nullable: boolean;
|
686
699
|
|
687
700
|
/** @defaultValue `() => this.clean({})` */
|
688
|
-
override initial:
|
701
|
+
override initial: DataField.Options.InitialType<InitializedType>;
|
689
702
|
|
690
703
|
protected static override get _defaults(): SchemaField.Options<DataSchema>;
|
691
704
|
|
@@ -766,6 +779,11 @@ declare class SchemaField<
|
|
766
779
|
|
767
780
|
override toObject(value: InitializedType): PersistedType;
|
768
781
|
|
782
|
+
override apply<Options, Return>(
|
783
|
+
fn: keyof this | ((this: this, value: undefined | null, options: Options) => Return),
|
784
|
+
value?: null,
|
785
|
+
options?: Options,
|
786
|
+
): Return;
|
769
787
|
override apply<Value, Options, Return>(
|
770
788
|
fn: keyof this | ((this: this, value: Value, options: Options) => Return),
|
771
789
|
value: Value,
|
@@ -791,7 +809,7 @@ declare namespace SchemaField {
|
|
791
809
|
* A shorthand for the options of a SchemaField class.
|
792
810
|
* @typeParam Fields - the DataSchema fields of the SchemaField
|
793
811
|
*/
|
794
|
-
type Options<Fields extends DataSchema> =
|
812
|
+
type Options<Fields extends DataSchema> = DataField.Options<InnerAssignmentType<Fields> | __SchemaFieldInitial>;
|
795
813
|
|
796
814
|
/** Any SchemaField. */
|
797
815
|
type Any = SchemaField<any, any, any, any, any>;
|
@@ -807,29 +825,33 @@ declare namespace SchemaField {
|
|
807
825
|
* @typeParam Fields - the DataSchema fields of the SchemaField
|
808
826
|
*/
|
809
827
|
type InnerAssignmentType<Fields extends DataSchema> = RemoveIndexSignatures<{
|
810
|
-
[Key in keyof Fields]?: Fields[Key] extends
|
811
|
-
?
|
828
|
+
[Key in keyof Fields]?: Fields[Key] extends EmbeddedDataField<any, any, infer AssignmentType, any, any>
|
829
|
+
? AssignmentType
|
830
|
+
: Fields[Key] extends SchemaField<infer SubSchema, any, any, any, any>
|
812
831
|
? // FIXME(LukeAbby): This is a quick hack into InnerAssignmentType that assumes that the `initial` of `SchemaField` is not changed from the default of `{}`
|
813
832
|
// This will be fixed with the refactoring of the types
|
814
833
|
EmptyObject extends InnerAssignmentType<SubSchema>
|
815
834
|
? InnerAssignmentType<SubSchema> | undefined | null
|
816
835
|
: InnerAssignmentType<SubSchema>
|
817
|
-
: AssignType
|
818
|
-
|
836
|
+
: Fields[Key] extends DataField<any, infer AssignType, any, any>
|
837
|
+
? AssignType
|
838
|
+
: never;
|
819
839
|
}>;
|
820
840
|
|
841
|
+
type InnerUpdateData<Fields extends DataSchema> = InnerAssignmentType<Fields>;
|
842
|
+
|
821
843
|
/**
|
822
844
|
* Get the inner initialized type for the given DataSchema.
|
823
845
|
* @typeParam Fields - the DataSchema fields of the SchemaField
|
824
846
|
*/
|
825
847
|
type InnerInitializedType<Fields extends DataSchema> = RemoveIndexSignatures<{
|
826
|
-
[Key in keyof Fields]: Fields[Key] extends
|
827
|
-
?
|
828
|
-
|
829
|
-
|
830
|
-
|
831
|
-
|
832
|
-
|
848
|
+
[Key in keyof Fields]: Fields[Key] extends EmbeddedDataField<infer Model, any, any, any, any>
|
849
|
+
? FixedInstanceType<Model>
|
850
|
+
: Fields[Key] extends SchemaField<infer SubSchema, any, any, any, any>
|
851
|
+
? InnerInitializedType<SubSchema>
|
852
|
+
: Fields[Key] extends DataField<any, any, infer InitType, any>
|
853
|
+
? InitType
|
854
|
+
: never;
|
833
855
|
}>;
|
834
856
|
|
835
857
|
/**
|
@@ -837,11 +859,13 @@ declare namespace SchemaField {
|
|
837
859
|
* @typeParam Fields - the DataSchema fields of the SchemaField
|
838
860
|
*/
|
839
861
|
type InnerPersistedType<Fields extends DataSchema> = RemoveIndexSignatures<{
|
840
|
-
[Key in keyof Fields]: Fields[Key] extends
|
841
|
-
?
|
862
|
+
[Key in keyof Fields]: Fields[Key] extends EmbeddedDataField<any, any, any, any, infer PersistType>
|
863
|
+
? PersistType
|
864
|
+
: Fields[Key] extends SchemaField<infer SubSchema, any, any, any, any>
|
842
865
|
? InnerPersistedType<SubSchema>
|
843
|
-
: PersistType
|
844
|
-
|
866
|
+
: Fields[Key] extends DataField<any, any, any, infer PersistType>
|
867
|
+
? PersistType
|
868
|
+
: never;
|
845
869
|
}>;
|
846
870
|
|
847
871
|
/** The type of the default options for the {@link SchemaField} class. */
|
@@ -921,7 +945,7 @@ declare class BooleanField<
|
|
921
945
|
override nullable: boolean;
|
922
946
|
|
923
947
|
/** @defaultValue `false` */
|
924
|
-
override initial:
|
948
|
+
override initial: DataField.Options.InitialType<InitializedType>;
|
925
949
|
|
926
950
|
protected static override get _defaults(): BooleanField.Options;
|
927
951
|
|
@@ -937,7 +961,7 @@ declare class BooleanField<
|
|
937
961
|
|
938
962
|
declare namespace BooleanField {
|
939
963
|
/** A shorthand for the options of a BooleanField class. */
|
940
|
-
type Options =
|
964
|
+
type Options = DataField.Options<boolean>;
|
941
965
|
|
942
966
|
/** The type of the default options for the {@link BooleanField} class. */
|
943
967
|
type DefaultOptions = SimpleMerge<
|
@@ -968,48 +992,6 @@ declare namespace BooleanField {
|
|
968
992
|
type InitializedType<Opts extends Options> = DataField.DerivedInitializedType<boolean, MergedOptions<Opts>>;
|
969
993
|
}
|
970
994
|
|
971
|
-
declare global {
|
972
|
-
interface NumberFieldOptions extends DataFieldOptions<number> {
|
973
|
-
/**
|
974
|
-
* A minimum allowed value
|
975
|
-
* @defaultValue `undefined`
|
976
|
-
*/
|
977
|
-
min?: number | undefined;
|
978
|
-
|
979
|
-
/**
|
980
|
-
* A maximum allowed value
|
981
|
-
* @defaultValue `undefined`
|
982
|
-
*/
|
983
|
-
max?: number | undefined;
|
984
|
-
|
985
|
-
/**
|
986
|
-
* A permitted step size
|
987
|
-
* @defaultValue `undefined`
|
988
|
-
*/
|
989
|
-
step?: number | undefined;
|
990
|
-
|
991
|
-
/**
|
992
|
-
* Must the number be an integer?
|
993
|
-
* @defaultValue `false`
|
994
|
-
*/
|
995
|
-
integer?: boolean | undefined;
|
996
|
-
|
997
|
-
/**
|
998
|
-
* Must the number be positive?
|
999
|
-
* @defaultValue `false`
|
1000
|
-
*/
|
1001
|
-
positive?: boolean | undefined;
|
1002
|
-
|
1003
|
-
/**
|
1004
|
-
* An array of values or an object of values/labels which represent
|
1005
|
-
* allowed choices for the field. A function may be provided which dynamically
|
1006
|
-
* returns the array of choices.
|
1007
|
-
* @defaultValue `undefined`
|
1008
|
-
*/
|
1009
|
-
choices?: NumberField.Choices | undefined;
|
1010
|
-
}
|
1011
|
-
}
|
1012
|
-
|
1013
995
|
/**
|
1014
996
|
* A subclass of [DataField]{@link DataField} which deals with number-typed data.
|
1015
997
|
* @typeParam Options - the options of the NumberField instance
|
@@ -1024,7 +1006,7 @@ declare global {
|
|
1024
1006
|
* InitialValue: `null`
|
1025
1007
|
*/
|
1026
1008
|
declare class NumberField<
|
1027
|
-
const Options extends
|
1009
|
+
const Options extends NumberField.Options = NumberField.DefaultOptions,
|
1028
1010
|
const AssignmentType = NumberField.AssignmentType<Options>,
|
1029
1011
|
const InitializedType = NumberField.InitializedType<Options>,
|
1030
1012
|
const PersistedType extends number | null | undefined = NumberField.InitializedType<Options>,
|
@@ -1035,7 +1017,7 @@ declare class NumberField<
|
|
1035
1017
|
constructor(options?: Options, context?: DataField.Context);
|
1036
1018
|
|
1037
1019
|
/** @defaultValue `null` */
|
1038
|
-
override initial:
|
1020
|
+
override initial: DataField.Options.InitialType<InitializedType>;
|
1039
1021
|
|
1040
1022
|
/** @defaultValue `true` */
|
1041
1023
|
override nullable: boolean;
|
@@ -1078,7 +1060,7 @@ declare class NumberField<
|
|
1078
1060
|
*/
|
1079
1061
|
choices: number[] | Record<number, string> | (() => number[] | Record<number, string>) | undefined;
|
1080
1062
|
|
1081
|
-
protected static override get _defaults():
|
1063
|
+
protected static override get _defaults(): NumberField.Options;
|
1082
1064
|
|
1083
1065
|
protected override _cast(value: AssignmentType): InitializedType;
|
1084
1066
|
|
@@ -1144,6 +1126,46 @@ declare namespace NumberField {
|
|
1144
1126
|
}
|
1145
1127
|
>;
|
1146
1128
|
|
1129
|
+
interface Options extends DataField.Options<number> {
|
1130
|
+
/**
|
1131
|
+
* A minimum allowed value
|
1132
|
+
* @defaultValue `undefined`
|
1133
|
+
*/
|
1134
|
+
min?: number | undefined;
|
1135
|
+
|
1136
|
+
/**
|
1137
|
+
* A maximum allowed value
|
1138
|
+
* @defaultValue `undefined`
|
1139
|
+
*/
|
1140
|
+
max?: number | undefined;
|
1141
|
+
|
1142
|
+
/**
|
1143
|
+
* A permitted step size
|
1144
|
+
* @defaultValue `undefined`
|
1145
|
+
*/
|
1146
|
+
step?: number | undefined;
|
1147
|
+
|
1148
|
+
/**
|
1149
|
+
* Must the number be an integer?
|
1150
|
+
* @defaultValue `false`
|
1151
|
+
*/
|
1152
|
+
integer?: boolean | undefined;
|
1153
|
+
|
1154
|
+
/**
|
1155
|
+
* Must the number be positive?
|
1156
|
+
* @defaultValue `false`
|
1157
|
+
*/
|
1158
|
+
positive?: boolean | undefined;
|
1159
|
+
|
1160
|
+
/**
|
1161
|
+
* An array of values or an object of values/labels which represent
|
1162
|
+
* allowed choices for the field. A function may be provided which dynamically
|
1163
|
+
* returns the array of choices.
|
1164
|
+
* @defaultValue `undefined`
|
1165
|
+
*/
|
1166
|
+
choices?: NumberField.Choices | undefined;
|
1167
|
+
}
|
1168
|
+
|
1147
1169
|
/** The type of the default options for the {@link NumberField} class when choices are provided. */
|
1148
1170
|
type DefaultOptionsWhenChoicesProvided = SimpleMerge<DefaultOptions, { nullable: false }>;
|
1149
1171
|
|
@@ -1151,7 +1173,7 @@ declare namespace NumberField {
|
|
1151
1173
|
* A helper type for the given options type merged into the default options of the NumberField class.
|
1152
1174
|
* @typeParam Options - the options that override the default options
|
1153
1175
|
*/
|
1154
|
-
type MergedOptions<Options extends
|
1176
|
+
type MergedOptions<Options extends NumberField.Options> = SimpleMerge<
|
1155
1177
|
undefined extends Options["choices"] ? DefaultOptions : DefaultOptionsWhenChoicesProvided,
|
1156
1178
|
Options
|
1157
1179
|
>;
|
@@ -1160,7 +1182,7 @@ declare namespace NumberField {
|
|
1160
1182
|
* A shorthand for the assignment type of a NumberField class.
|
1161
1183
|
* @typeParam Options - the options that override the default options
|
1162
1184
|
*/
|
1163
|
-
type AssignmentType<Options extends
|
1185
|
+
type AssignmentType<Options extends NumberField.Options> = DataField.DerivedAssignmentType<
|
1164
1186
|
number,
|
1165
1187
|
MergedOptions<Options>
|
1166
1188
|
>;
|
@@ -1169,7 +1191,7 @@ declare namespace NumberField {
|
|
1169
1191
|
* A shorthand for the initialized type of a NumberField class.
|
1170
1192
|
* @typeParam Options - the options that override the default options
|
1171
1193
|
*/
|
1172
|
-
type InitializedType<Options extends
|
1194
|
+
type InitializedType<Options extends NumberField.Options> = DataField.DerivedInitializedType<
|
1173
1195
|
number,
|
1174
1196
|
MergedOptions<Options>
|
1175
1197
|
>;
|
@@ -1205,35 +1227,6 @@ declare namespace NumberField {
|
|
1205
1227
|
| ToInputConfigWithOptions<InitializedType>;
|
1206
1228
|
}
|
1207
1229
|
|
1208
|
-
declare global {
|
1209
|
-
interface StringFieldOptions extends DataFieldOptions<string> {
|
1210
|
-
/**
|
1211
|
-
* Is the string allowed to be blank (empty)?
|
1212
|
-
* @defaultValue `true`
|
1213
|
-
*/
|
1214
|
-
blank?: boolean | undefined;
|
1215
|
-
|
1216
|
-
/**
|
1217
|
-
* Should any provided string be trimmed as part of cleaning?
|
1218
|
-
* @defaultValue `true`
|
1219
|
-
*/
|
1220
|
-
trim?: boolean | undefined;
|
1221
|
-
|
1222
|
-
/**
|
1223
|
-
* An array of values or an object of values/labels which represent
|
1224
|
-
* allowed choices for the field. A function may be provided which dynamically
|
1225
|
-
* returns the array of choices.
|
1226
|
-
* @defaultValue `undefined`
|
1227
|
-
*/
|
1228
|
-
choices?: StringField.Choices | undefined;
|
1229
|
-
|
1230
|
-
/**
|
1231
|
-
* @defaultValue `false`
|
1232
|
-
*/
|
1233
|
-
textSearch?: boolean | undefined;
|
1234
|
-
}
|
1235
|
-
}
|
1236
|
-
|
1237
1230
|
/**
|
1238
1231
|
* A subclass of [DataField]{@link DataField} which deals with string-typed data.
|
1239
1232
|
* @typeParam Options - the options of the StringField instance
|
@@ -1248,7 +1241,7 @@ declare global {
|
|
1248
1241
|
* InitialValue: `""`
|
1249
1242
|
*/
|
1250
1243
|
declare class StringField<
|
1251
|
-
const Options extends
|
1244
|
+
const Options extends StringField.Options = StringField.DefaultOptions,
|
1252
1245
|
const AssignmentType = StringField.AssignmentType<Options>,
|
1253
1246
|
const InitializedType = StringField.InitializedType<Options>,
|
1254
1247
|
const PersistedType extends string | null | undefined = StringField.InitializedType<Options>,
|
@@ -1259,7 +1252,7 @@ declare class StringField<
|
|
1259
1252
|
constructor(options?: Options, context?: DataField.Context);
|
1260
1253
|
|
1261
1254
|
/** @defaultValue `undefined` */
|
1262
|
-
override initial:
|
1255
|
+
override initial: DataField.Options.InitialType<InitializedType>;
|
1263
1256
|
|
1264
1257
|
/**
|
1265
1258
|
* Is the string allowed to be blank (empty)?
|
@@ -1287,7 +1280,7 @@ declare class StringField<
|
|
1287
1280
|
/** @defaultValue `false` */
|
1288
1281
|
textSearch: boolean;
|
1289
1282
|
|
1290
|
-
protected static override get _defaults():
|
1283
|
+
protected static override get _defaults(): StringField.Options;
|
1291
1284
|
|
1292
1285
|
override clean(value: AssignmentType, options?: DataField.CleanOptions): InitializedType;
|
1293
1286
|
|
@@ -1350,6 +1343,33 @@ declare namespace StringField {
|
|
1350
1343
|
}
|
1351
1344
|
>;
|
1352
1345
|
|
1346
|
+
interface Options extends DataField.Options<string> {
|
1347
|
+
/**
|
1348
|
+
* Is the string allowed to be blank (empty)?
|
1349
|
+
* @defaultValue `true`
|
1350
|
+
*/
|
1351
|
+
blank?: boolean | undefined;
|
1352
|
+
|
1353
|
+
/**
|
1354
|
+
* Should any provided string be trimmed as part of cleaning?
|
1355
|
+
* @defaultValue `true`
|
1356
|
+
*/
|
1357
|
+
trim?: boolean | undefined;
|
1358
|
+
|
1359
|
+
/**
|
1360
|
+
* An array of values or an object of values/labels which represent
|
1361
|
+
* allowed choices for the field. A function may be provided which dynamically
|
1362
|
+
* returns the array of choices.
|
1363
|
+
* @defaultValue `undefined`
|
1364
|
+
*/
|
1365
|
+
choices?: StringField.Choices | undefined;
|
1366
|
+
|
1367
|
+
/**
|
1368
|
+
* @defaultValue `false`
|
1369
|
+
*/
|
1370
|
+
textSearch?: boolean | undefined;
|
1371
|
+
}
|
1372
|
+
|
1353
1373
|
/** The type of the default options for the {@link StringField} class when choices are provided. */
|
1354
1374
|
type DefaultOptionsWhenChoicesProvided = SimpleMerge<DefaultOptions, { nullable: false; blank: false }>;
|
1355
1375
|
|
@@ -1357,21 +1377,21 @@ declare namespace StringField {
|
|
1357
1377
|
* A helper type for the given options type merged into the default options of the StringField class.
|
1358
1378
|
* @typeParam Options - the options that override the default options
|
1359
1379
|
*/
|
1360
|
-
type MergedOptions<Options extends
|
1380
|
+
type MergedOptions<Options extends StringField.Options> = SimpleMerge<
|
1361
1381
|
_OptionsForInitial<_OptionsForChoices<Options["choices"]>>,
|
1362
1382
|
Options
|
1363
1383
|
>;
|
1364
1384
|
|
1365
|
-
type _OptionsForChoices<Choices extends
|
1385
|
+
type _OptionsForChoices<Choices extends StringField.Options["choices"]> = undefined extends Choices
|
1366
1386
|
? DefaultOptions
|
1367
1387
|
: DefaultOptionsWhenChoicesProvided;
|
1368
1388
|
|
1369
1389
|
// FIXME: `"initial" extends keyof Options` does not work for modeling `"initial" in options`.
|
1370
|
-
type _OptionsForInitial<Options extends
|
1390
|
+
type _OptionsForInitial<Options extends StringField.Options> = "initial" extends keyof Options
|
1371
1391
|
? Options
|
1372
1392
|
: SimpleMerge<Options, { initial: _InitialForOptions<Options> }>;
|
1373
1393
|
|
1374
|
-
type _InitialForOptions<Options extends
|
1394
|
+
type _InitialForOptions<Options extends StringField.Options> = Options["required"] extends false | undefined
|
1375
1395
|
? undefined
|
1376
1396
|
: Options["blank"] extends true
|
1377
1397
|
? string
|
@@ -1381,19 +1401,24 @@ declare namespace StringField {
|
|
1381
1401
|
|
1382
1402
|
// choices?: string[] | Record<string, string> | (() => string[] | Record<string, string>) | undefined;
|
1383
1403
|
|
1384
|
-
type ValidChoice<Options extends
|
1404
|
+
type ValidChoice<Options extends StringField.Options> = Options["choices"] extends undefined
|
1385
1405
|
? string
|
1386
|
-
: Options["choices"] extends (...args:
|
1406
|
+
: Options["choices"] extends (...args: infer _1) => infer Choices
|
1387
1407
|
? FixedChoice<Choices>
|
1388
1408
|
: FixedChoice<Options["choices"]>;
|
1389
1409
|
|
1390
|
-
type FixedChoice<Choices> =
|
1410
|
+
type FixedChoice<Choices> =
|
1411
|
+
Choices extends ReadonlyArray<infer U>
|
1412
|
+
? U
|
1413
|
+
: Choices extends { readonly [_ in infer K]: infer _1 }
|
1414
|
+
? K & string
|
1415
|
+
: string;
|
1391
1416
|
|
1392
1417
|
/**
|
1393
1418
|
* A shorthand for the assignment type of a StringField class.
|
1394
1419
|
* @typeParam Options - the options that override the default options
|
1395
1420
|
*/
|
1396
|
-
type AssignmentType<Options extends
|
1421
|
+
type AssignmentType<Options extends StringField.Options> = DataField.DerivedAssignmentType<
|
1397
1422
|
ValidChoice<Options>,
|
1398
1423
|
MergedOptions<Options>
|
1399
1424
|
>;
|
@@ -1402,7 +1427,7 @@ declare namespace StringField {
|
|
1402
1427
|
* A shorthand for the initialized type of a StringField class.
|
1403
1428
|
* @typeParam Options - the options that override the default options
|
1404
1429
|
*/
|
1405
|
-
type InitializedType<Options extends
|
1430
|
+
type InitializedType<Options extends StringField.Options> = DataField.DerivedInitializedType<
|
1406
1431
|
// TODO(LukeAbby): This is a workaround for how `ValidChoice` is defined ignorant of the `StringField`/`NumberField` divide.
|
1407
1432
|
ValidChoice<Options> & (string | null | undefined),
|
1408
1433
|
MergedOptions<Options>
|
@@ -1457,7 +1482,7 @@ declare namespace StringField {
|
|
1457
1482
|
* InitialValue: `{}`
|
1458
1483
|
*/
|
1459
1484
|
declare class ObjectField<
|
1460
|
-
const Options extends
|
1485
|
+
const Options extends DataField.Options<AnyObject> = ObjectField.DefaultOptions,
|
1461
1486
|
const AssignmentType = ObjectField.AssignmentType<Options>,
|
1462
1487
|
const InitializedType = ObjectField.InitializedType<Options>,
|
1463
1488
|
const PersistedType extends AnyObject | null | undefined = ObjectField.InitializedType<Options>,
|
@@ -1469,9 +1494,9 @@ declare class ObjectField<
|
|
1469
1494
|
override nullable: boolean;
|
1470
1495
|
|
1471
1496
|
/** @defaultValue `() => ({})` */
|
1472
|
-
override initial:
|
1497
|
+
override initial: DataField.Options.InitialType<InitializedType>;
|
1473
1498
|
|
1474
|
-
protected static override get _defaults():
|
1499
|
+
protected static override get _defaults(): DataField.Options<AnyObject>;
|
1475
1500
|
|
1476
1501
|
protected override _cast(value: AssignmentType): InitializedType;
|
1477
1502
|
|
@@ -1503,13 +1528,13 @@ declare namespace ObjectField {
|
|
1503
1528
|
* A helper type for the given options type merged into the default options of the ObjectField class.
|
1504
1529
|
* @typeParam Options - the options that override the default options
|
1505
1530
|
*/
|
1506
|
-
type MergedOptions<Options extends
|
1531
|
+
type MergedOptions<Options extends DataField.Options<AnyObject>> = SimpleMerge<DefaultOptions, Options>;
|
1507
1532
|
|
1508
1533
|
/**
|
1509
1534
|
* A shorthand for the assignment type of a ObjectField class.
|
1510
1535
|
* @typeParam Options - the options that override the default options
|
1511
1536
|
*/
|
1512
|
-
type AssignmentType<Options extends
|
1537
|
+
type AssignmentType<Options extends DataField.Options<AnyObject>> = DataField.DerivedAssignmentType<
|
1513
1538
|
AnyObject,
|
1514
1539
|
MergedOptions<Options>
|
1515
1540
|
>;
|
@@ -1518,7 +1543,7 @@ declare namespace ObjectField {
|
|
1518
1543
|
* A shorthand for the initialized type of a ObjectField class.
|
1519
1544
|
* @typeParam Options - the options that override the default options
|
1520
1545
|
*/
|
1521
|
-
type InitializedType<Options extends
|
1546
|
+
type InitializedType<Options extends DataField.Options<AnyObject>> = DataField.DerivedInitializedType<
|
1522
1547
|
AnyObject,
|
1523
1548
|
MergedOptions<Options>
|
1524
1549
|
>;
|
@@ -1534,7 +1559,7 @@ declare namespace ObjectField {
|
|
1534
1559
|
// The type `{}` is useful here because in an intersection it reduces down to nothing unlike `EmptyObject`.
|
1535
1560
|
// eslint-disable-next-line @typescript-eslint/no-empty-object-type
|
1536
1561
|
ExtensionFlags extends AnyObject = {},
|
1537
|
-
Options extends
|
1562
|
+
Options extends DataField.Options.Any = ObjectField.DefaultOptions,
|
1538
1563
|
> = ObjectField<
|
1539
1564
|
Options,
|
1540
1565
|
DataField.DerivedAssignmentType<Document.ConfiguredFlagsForName<Name> & ExtensionFlags, MergedOptions<Options>>,
|
@@ -1562,9 +1587,11 @@ declare namespace ObjectField {
|
|
1562
1587
|
*/
|
1563
1588
|
declare class ArrayField<
|
1564
1589
|
const ElementFieldType extends DataField.Any | Document.AnyConstructor,
|
1590
|
+
const Options extends ArrayField.AnyOptions = ArrayField.DefaultOptions<
|
1591
|
+
ArrayField.AssignmentElementType<ElementFieldType>
|
1592
|
+
>,
|
1565
1593
|
const AssignmentElementType = ArrayField.AssignmentElementType<ElementFieldType>,
|
1566
1594
|
const InitializedElementType = ArrayField.InitializedElementType<ElementFieldType>,
|
1567
|
-
const Options extends ArrayField.Options<AssignmentElementType> = ArrayField.DefaultOptions<AssignmentElementType>,
|
1568
1595
|
const AssignmentType = ArrayField.AssignmentType<AssignmentElementType, Options>,
|
1569
1596
|
const InitializedType = ArrayField.InitializedType<AssignmentElementType, InitializedElementType, Options>,
|
1570
1597
|
const PersistedElementType = ArrayField.PersistedElementType<ElementFieldType>,
|
@@ -1587,7 +1614,7 @@ declare class ArrayField<
|
|
1587
1614
|
override nullable: boolean;
|
1588
1615
|
|
1589
1616
|
/** @defaultValue `() => []` */
|
1590
|
-
override initial:
|
1617
|
+
override initial: DataField.Options.InitialType<InitializedType>;
|
1591
1618
|
|
1592
1619
|
/**
|
1593
1620
|
* The data type of each element in this array
|
@@ -1672,7 +1699,9 @@ declare namespace ArrayField {
|
|
1672
1699
|
* A shorthand for the options of an ArrayField class.
|
1673
1700
|
* @typeParam AssignmentElementType - the assignment type of the elements in the array
|
1674
1701
|
*/
|
1675
|
-
type Options<AssignmentElementType> =
|
1702
|
+
type Options<AssignmentElementType> = DataField.Options<BaseAssignmentType<AssignmentElementType>>;
|
1703
|
+
|
1704
|
+
type AnyOptions = Options<unknown>;
|
1676
1705
|
|
1677
1706
|
/**
|
1678
1707
|
* The base assignment type for the {@link ArrayField} class.
|
@@ -1702,7 +1731,7 @@ declare namespace ArrayField {
|
|
1702
1731
|
* @typeParam AssignmentElementType - the assignment type of the elements of the ArrayField
|
1703
1732
|
* @typeParam Opts - the options that override the default options
|
1704
1733
|
*/
|
1705
|
-
type MergedOptions<AssignmentElementType, Opts extends
|
1734
|
+
type MergedOptions<AssignmentElementType, Opts extends AnyOptions> = SimpleMerge<
|
1706
1735
|
DefaultOptions<AssignmentElementType>,
|
1707
1736
|
Opts
|
1708
1737
|
>;
|
@@ -1745,10 +1774,7 @@ declare namespace ArrayField {
|
|
1745
1774
|
* @typeParam AssignmentElementType - the assignment type of the elements of the ArrayField
|
1746
1775
|
* @typeParam Opts - the options that override the default options
|
1747
1776
|
*/
|
1748
|
-
type AssignmentType<
|
1749
|
-
AssignmentElementType,
|
1750
|
-
Opts extends Options<AssignmentElementType>,
|
1751
|
-
> = DataField.DerivedAssignmentType<
|
1777
|
+
type AssignmentType<AssignmentElementType, Opts extends AnyOptions> = DataField.DerivedAssignmentType<
|
1752
1778
|
BaseAssignmentType<AssignmentElementType>,
|
1753
1779
|
MergedOptions<AssignmentElementType, Opts>
|
1754
1780
|
>;
|
@@ -1762,7 +1788,7 @@ declare namespace ArrayField {
|
|
1762
1788
|
type InitializedType<
|
1763
1789
|
AssignmentElementType,
|
1764
1790
|
InitializedElementType,
|
1765
|
-
Opts extends
|
1791
|
+
Opts extends AnyOptions,
|
1766
1792
|
> = DataField.DerivedInitializedType<InitializedElementType[], MergedOptions<AssignmentElementType, Opts>>;
|
1767
1793
|
|
1768
1794
|
/**
|
@@ -1774,7 +1800,7 @@ declare namespace ArrayField {
|
|
1774
1800
|
type PersistedType<
|
1775
1801
|
AssignmentElementType,
|
1776
1802
|
PersistedElementType,
|
1777
|
-
Opts extends
|
1803
|
+
Opts extends AnyOptions,
|
1778
1804
|
> = DataField.DerivedInitializedType<PersistedElementType[], MergedOptions<AssignmentElementType, Opts>>;
|
1779
1805
|
}
|
1780
1806
|
|
@@ -1798,9 +1824,9 @@ declare namespace ArrayField {
|
|
1798
1824
|
*/
|
1799
1825
|
declare class SetField<
|
1800
1826
|
ElementFieldType extends DataField.Any,
|
1827
|
+
Options extends SetField.AnyOptions = SetField.DefaultOptions<ArrayField.AssignmentElementType<ElementFieldType>>,
|
1801
1828
|
AssignmentElementType = ArrayField.AssignmentElementType<ElementFieldType>,
|
1802
1829
|
InitializedElementType = ArrayField.InitializedElementType<ElementFieldType>,
|
1803
|
-
Options extends SetField.Options<AssignmentElementType> = SetField.DefaultOptions<AssignmentElementType>,
|
1804
1830
|
AssignmentType = SetField.AssignmentType<AssignmentElementType, Options>,
|
1805
1831
|
InitializedType = SetField.InitializedType<AssignmentElementType, InitializedElementType, Options>,
|
1806
1832
|
PersistedElementType = ArrayField.PersistedElementType<ElementFieldType>,
|
@@ -1811,9 +1837,9 @@ declare class SetField<
|
|
1811
1837
|
>,
|
1812
1838
|
> extends ArrayField<
|
1813
1839
|
ElementFieldType,
|
1840
|
+
Options,
|
1814
1841
|
AssignmentElementType,
|
1815
1842
|
InitializedElementType,
|
1816
|
-
Options,
|
1817
1843
|
AssignmentType,
|
1818
1844
|
InitializedType,
|
1819
1845
|
PersistedElementType,
|
@@ -1852,7 +1878,9 @@ declare namespace SetField {
|
|
1852
1878
|
* A shorthand for the options of a SetField class.
|
1853
1879
|
* @typeParam AssignmentElementType - the assignment type of the elements in the array
|
1854
1880
|
*/
|
1855
|
-
type Options<AssignmentElementType> =
|
1881
|
+
type Options<AssignmentElementType> = DataField.Options<SetField.BaseAssignmentType<AssignmentElementType>>;
|
1882
|
+
|
1883
|
+
type AnyOptions = Options<unknown>;
|
1856
1884
|
|
1857
1885
|
/**
|
1858
1886
|
* The base assignment type for the {@link SetField} class.
|
@@ -1871,7 +1899,7 @@ declare namespace SetField {
|
|
1871
1899
|
* @typeParam AssignmentElementType - the assignment type of the elements of the SetField
|
1872
1900
|
* @typeParam Opts - the options that override the default options
|
1873
1901
|
*/
|
1874
|
-
type MergedOptions<AssignmentElementType, Opts extends
|
1902
|
+
type MergedOptions<AssignmentElementType, Opts extends AnyOptions> = SimpleMerge<
|
1875
1903
|
DefaultOptions<AssignmentElementType>,
|
1876
1904
|
Opts
|
1877
1905
|
>;
|
@@ -1881,10 +1909,7 @@ declare namespace SetField {
|
|
1881
1909
|
* @typeParam AssignmentElementType - the assignment type of the elements of the SetField
|
1882
1910
|
* @typeParam Opts - the options that override the default options
|
1883
1911
|
*/
|
1884
|
-
type AssignmentType<
|
1885
|
-
AssignmentElementType,
|
1886
|
-
Opts extends Options<AssignmentElementType>,
|
1887
|
-
> = DataField.DerivedAssignmentType<
|
1912
|
+
type AssignmentType<AssignmentElementType, Opts extends AnyOptions> = DataField.DerivedAssignmentType<
|
1888
1913
|
BaseAssignmentType<AssignmentElementType>,
|
1889
1914
|
MergedOptions<AssignmentElementType, Opts>
|
1890
1915
|
>;
|
@@ -1898,7 +1923,7 @@ declare namespace SetField {
|
|
1898
1923
|
type InitializedType<
|
1899
1924
|
AssignmentElementType,
|
1900
1925
|
InitializedElementType,
|
1901
|
-
Opts extends
|
1926
|
+
Opts extends AnyOptions,
|
1902
1927
|
> = DataField.DerivedInitializedType<Set<InitializedElementType>, MergedOptions<AssignmentElementType, Opts>>;
|
1903
1928
|
|
1904
1929
|
/**
|
@@ -1910,7 +1935,7 @@ declare namespace SetField {
|
|
1910
1935
|
type PersistedType<
|
1911
1936
|
AssignmentElementType,
|
1912
1937
|
PersistedElementType,
|
1913
|
-
Opts extends
|
1938
|
+
Opts extends AnyOptions,
|
1914
1939
|
> = DataField.DerivedInitializedType<PersistedElementType[], MergedOptions<AssignmentElementType, Opts>>;
|
1915
1940
|
|
1916
1941
|
type ToInputConfig<ElementFieldType extends DataField.Any, InitializedType> = ElementFieldType extends {
|
@@ -1954,7 +1979,7 @@ declare class EmbeddedDataField<
|
|
1954
1979
|
*/
|
1955
1980
|
model: ModelType;
|
1956
1981
|
|
1957
|
-
protected override _initialize(fields:
|
1982
|
+
protected override _initialize(fields: DataModel.SchemaOfClass<ModelType>): DataModel.SchemaOfClass<ModelType>;
|
1958
1983
|
|
1959
1984
|
override initialize(
|
1960
1985
|
value: PersistedType,
|
@@ -1979,7 +2004,7 @@ declare namespace EmbeddedDataField {
|
|
1979
2004
|
* A shorthand for the options of an EmbeddedDataField class.
|
1980
2005
|
* @typeParam ModelType - the DataModel for the embedded data
|
1981
2006
|
*/
|
1982
|
-
type Options<ModelType extends DataModel.AnyConstructor> =
|
2007
|
+
type Options<ModelType extends DataModel.AnyConstructor> = DataField.Options<
|
1983
2008
|
SchemaField.InnerAssignmentType<DataModel.SchemaOfClass<ModelType>> | __SchemaFieldInitial
|
1984
2009
|
>;
|
1985
2010
|
|
@@ -2018,10 +2043,7 @@ declare namespace EmbeddedDataField {
|
|
2018
2043
|
type InitializedType<
|
2019
2044
|
ModelType extends DataModel.AnyConstructor,
|
2020
2045
|
Opts extends Options<ModelType>,
|
2021
|
-
> = DataField.DerivedInitializedType<
|
2022
|
-
SchemaField.InnerInitializedType<DataModel.SchemaOfClass<ModelType>>,
|
2023
|
-
MergedOptions<ModelType, Opts>
|
2024
|
-
>;
|
2046
|
+
> = DataField.DerivedInitializedType<FixedInstanceType<ModelType>, MergedOptions<ModelType, Opts>>;
|
2025
2047
|
|
2026
2048
|
/**
|
2027
2049
|
* A shorthand for the persisted type of an EmbeddedDataField class.
|
@@ -2057,11 +2079,13 @@ declare namespace EmbeddedDataField {
|
|
2057
2079
|
*/
|
2058
2080
|
declare class EmbeddedCollectionField<
|
2059
2081
|
ElementFieldType extends Document.AnyConstructor,
|
2082
|
+
// TODO(LukeAbby): See if `ParentDataModel` can be made redundant by automatically inferring.
|
2060
2083
|
ParentDataModel extends Document.Any,
|
2084
|
+
Options extends EmbeddedCollectionField.Options<any> = EmbeddedCollectionField.DefaultOptions<
|
2085
|
+
EmbeddedCollectionField.AssignmentElementType<ElementFieldType>
|
2086
|
+
>,
|
2061
2087
|
AssignmentElementType = EmbeddedCollectionField.AssignmentElementType<ElementFieldType>,
|
2062
2088
|
InitializedElementType extends Document.Any = EmbeddedCollectionField.InitializedElementType<ElementFieldType>,
|
2063
|
-
Options extends
|
2064
|
-
EmbeddedCollectionField.Options<AssignmentElementType> = EmbeddedCollectionField.DefaultOptions<AssignmentElementType>,
|
2065
2089
|
AssignmentType = EmbeddedCollectionField.AssignmentType<AssignmentElementType, Options>,
|
2066
2090
|
InitializedType = EmbeddedCollectionField.InitializedType<
|
2067
2091
|
AssignmentElementType,
|
@@ -2077,9 +2101,9 @@ declare class EmbeddedCollectionField<
|
|
2077
2101
|
>,
|
2078
2102
|
> extends ArrayField<
|
2079
2103
|
ElementFieldType,
|
2104
|
+
Options,
|
2080
2105
|
AssignmentElementType,
|
2081
2106
|
InitializedElementType,
|
2082
|
-
Options,
|
2083
2107
|
AssignmentType,
|
2084
2108
|
InitializedType,
|
2085
2109
|
PersistedElementType,
|
@@ -2156,7 +2180,7 @@ declare namespace EmbeddedCollectionField {
|
|
2156
2180
|
* A shorthand for the options of an EmbeddedCollectionField class.
|
2157
2181
|
* @typeParam AssignmentElementType - the assignment type of the elements of the EmbeddedCollectionField
|
2158
2182
|
*/
|
2159
|
-
type Options<AssignmentElementType> =
|
2183
|
+
type Options<AssignmentElementType> = DataField.Options<ArrayField.BaseAssignmentType<AssignmentElementType>>;
|
2160
2184
|
|
2161
2185
|
/**
|
2162
2186
|
* The type of the default options for the {@link EmbeddedCollectionField} class.
|
@@ -2264,10 +2288,11 @@ declare namespace EmbeddedCollectionField {
|
|
2264
2288
|
declare class EmbeddedCollectionDeltaField<
|
2265
2289
|
ElementFieldType extends Document.AnyConstructor,
|
2266
2290
|
ParentDataModel extends Document.Any,
|
2291
|
+
Options extends EmbeddedCollectionDeltaField.Options<any> = EmbeddedCollectionDeltaField.DefaultOptions<
|
2292
|
+
EmbeddedCollectionDeltaField.AssignmentElementType<ElementFieldType>
|
2293
|
+
>,
|
2267
2294
|
AssignmentElementType = EmbeddedCollectionDeltaField.AssignmentElementType<ElementFieldType>,
|
2268
2295
|
InitializedElementType extends Document.Any = EmbeddedCollectionDeltaField.InitializedElementType<ElementFieldType>,
|
2269
|
-
Options extends
|
2270
|
-
EmbeddedCollectionDeltaField.Options<AssignmentElementType> = EmbeddedCollectionDeltaField.DefaultOptions<AssignmentElementType>,
|
2271
2296
|
AssignmentType = EmbeddedCollectionDeltaField.AssignmentType<AssignmentElementType, Options>,
|
2272
2297
|
InitializedType = EmbeddedCollectionDeltaField.InitializedType<
|
2273
2298
|
AssignmentElementType,
|
@@ -2284,9 +2309,9 @@ declare class EmbeddedCollectionDeltaField<
|
|
2284
2309
|
> extends EmbeddedCollectionField<
|
2285
2310
|
ElementFieldType,
|
2286
2311
|
ParentDataModel,
|
2312
|
+
Options,
|
2287
2313
|
AssignmentElementType,
|
2288
2314
|
InitializedElementType,
|
2289
|
-
Options,
|
2290
2315
|
AssignmentType,
|
2291
2316
|
InitializedType,
|
2292
2317
|
PersistedElementType,
|
@@ -2307,7 +2332,7 @@ declare namespace EmbeddedCollectionDeltaField {
|
|
2307
2332
|
* A shorthand for the options of an EmbeddedCollectionDeltaField class.
|
2308
2333
|
* @typeParam AssignmentElementType - the assignment type of the elements of the EmbeddedCollectionDeltaField
|
2309
2334
|
*/
|
2310
|
-
type Options<AssignmentElementType> =
|
2335
|
+
type Options<AssignmentElementType> = DataField.Options<ArrayField.BaseAssignmentType<AssignmentElementType>>;
|
2311
2336
|
|
2312
2337
|
/**
|
2313
2338
|
* The type of the default options for the {@link EmbeddedCollectionDeltaField} class.
|
@@ -2447,7 +2472,7 @@ declare namespace EmbeddedDocumentField {
|
|
2447
2472
|
* A shorthand for the options of an EmbeddedDocumentField class.
|
2448
2473
|
* @typeParam DocumentType - the type of the embedded Document
|
2449
2474
|
*/
|
2450
|
-
type Options<DocumentType extends Document.AnyConstructor> =
|
2475
|
+
type Options<DocumentType extends Document.AnyConstructor> = DataField.Options<
|
2451
2476
|
SchemaField.InnerAssignmentType<DataModel.SchemaOfClass<DocumentType>> | __SchemaFieldInitial
|
2452
2477
|
>;
|
2453
2478
|
|
@@ -2524,7 +2549,7 @@ declare namespace EmbeddedDocumentField {
|
|
2524
2549
|
* InitialValue: `null`
|
2525
2550
|
*/
|
2526
2551
|
declare class DocumentIdField<
|
2527
|
-
Options extends
|
2552
|
+
Options extends StringField.Options = DocumentIdField.DefaultOptions,
|
2528
2553
|
AssignmentType = DocumentIdField.AssignmentType<Options>,
|
2529
2554
|
InitializedType = DocumentIdField.InitializedType<Options>,
|
2530
2555
|
PersistedType extends string | null | undefined = DocumentIdField.InitializedType<Options>,
|
@@ -2539,7 +2564,7 @@ declare class DocumentIdField<
|
|
2539
2564
|
override nullable: boolean;
|
2540
2565
|
|
2541
2566
|
/** @defaultValue `null` */
|
2542
|
-
override initial:
|
2567
|
+
override initial: DataField.Options.InitialType<InitializedType>;
|
2543
2568
|
|
2544
2569
|
/** @defaultValue `true` */
|
2545
2570
|
override readonly: boolean;
|
@@ -2547,7 +2572,7 @@ declare class DocumentIdField<
|
|
2547
2572
|
/** @defaultValue `"is not a valid Document ID string"` */
|
2548
2573
|
override validationError: string;
|
2549
2574
|
|
2550
|
-
protected static override get _defaults():
|
2575
|
+
protected static override get _defaults(): StringField.Options;
|
2551
2576
|
|
2552
2577
|
protected override _cast(value: AssignmentType): InitializedType;
|
2553
2578
|
|
@@ -2575,13 +2600,13 @@ declare namespace DocumentIdField {
|
|
2575
2600
|
* A helper type for the given options type merged into the default options of the DocumentIdField class.
|
2576
2601
|
* @typeParam Options - the options that override the default options
|
2577
2602
|
*/
|
2578
|
-
type MergedOptions<Options extends
|
2603
|
+
type MergedOptions<Options extends StringField.Options> = SimpleMerge<DefaultOptions, Options>;
|
2579
2604
|
|
2580
2605
|
/**
|
2581
2606
|
* A shorthand for the assignment type of a StringField class.
|
2582
2607
|
* @typeParam Options - the options that override the default options
|
2583
2608
|
*/
|
2584
|
-
type AssignmentType<Options extends
|
2609
|
+
type AssignmentType<Options extends StringField.Options> = DataField.DerivedAssignmentType<
|
2585
2610
|
string | Document.Any,
|
2586
2611
|
MergedOptions<Options>
|
2587
2612
|
>;
|
@@ -2590,7 +2615,7 @@ declare namespace DocumentIdField {
|
|
2590
2615
|
* A shorthand for the initialized type of a StringField class.
|
2591
2616
|
* @typeParam Options - the options that override the default options
|
2592
2617
|
*/
|
2593
|
-
type InitializedType<Options extends
|
2618
|
+
type InitializedType<Options extends StringField.Options> = DataField.DerivedInitializedType<
|
2594
2619
|
string,
|
2595
2620
|
MergedOptions<Options>
|
2596
2621
|
>;
|
@@ -2655,14 +2680,13 @@ declare class DocumentUUIDField<
|
|
2655
2680
|
}
|
2656
2681
|
|
2657
2682
|
declare namespace DocumentUUIDField {
|
2658
|
-
type Options =
|
2659
|
-
|
2660
|
-
|
2661
|
-
type?: Document.Type | undefined;
|
2683
|
+
type Options = StringField.Options & {
|
2684
|
+
/* A specific document type in CONST.ALL_DOCUMENT_TYPES required by this field */
|
2685
|
+
type?: Document.Type | undefined;
|
2662
2686
|
|
2663
|
-
|
2664
|
-
|
2665
|
-
|
2687
|
+
/* Does this field require (or prohibit) embedded documents? */
|
2688
|
+
embedded?: boolean | undefined;
|
2689
|
+
};
|
2666
2690
|
|
2667
2691
|
type DefaultOptions = SimpleMerge<
|
2668
2692
|
StringField.DefaultOptions,
|
@@ -2752,8 +2776,8 @@ declare class ForeignDocumentField<
|
|
2752
2776
|
|
2753
2777
|
declare namespace ForeignDocumentField {
|
2754
2778
|
/** The options for the ForeignDocumentField class. */
|
2755
|
-
type Options =
|
2756
|
-
|
2779
|
+
type Options = StringField.Options &
|
2780
|
+
DataField.Options<string | Document.Any> & {
|
2757
2781
|
// Making this ---------^ more concrete leads to excessively deep instantiation
|
2758
2782
|
idOnly?: boolean;
|
2759
2783
|
};
|
@@ -2781,7 +2805,7 @@ declare namespace ForeignDocumentField {
|
|
2781
2805
|
type AssignmentType<
|
2782
2806
|
ConcreteDocument extends Document.AnyConstructor,
|
2783
2807
|
Opts extends Options,
|
2784
|
-
> = DataField.DerivedAssignmentType<string | Document.
|
2808
|
+
> = DataField.DerivedAssignmentType<string | Document.ToConfiguredInstance<ConcreteDocument>, MergedOptions<Opts>>;
|
2785
2809
|
|
2786
2810
|
/**
|
2787
2811
|
* A shorthand for the initialized type of a ForeignDocumentField class.
|
@@ -2816,7 +2840,7 @@ declare namespace ForeignDocumentField {
|
|
2816
2840
|
* InitialValue: `null`
|
2817
2841
|
*/
|
2818
2842
|
declare class ColorField<
|
2819
|
-
Options extends
|
2843
|
+
Options extends StringField.Options = ColorField.DefaultOptions,
|
2820
2844
|
AssignmentType = ColorField.AssignmentType<Options>,
|
2821
2845
|
InitializedType = ColorField.InitializedType<Options>,
|
2822
2846
|
PersistedType extends string | null | undefined = ColorField.PersistedType<Options>,
|
@@ -2825,7 +2849,7 @@ declare class ColorField<
|
|
2825
2849
|
override nullable: boolean;
|
2826
2850
|
|
2827
2851
|
/** @defaultValue `null` */
|
2828
|
-
override initial:
|
2852
|
+
override initial: DataField.Options.InitialType<InitializedType>;
|
2829
2853
|
|
2830
2854
|
/** @defaultValue `false` */
|
2831
2855
|
override blank: boolean;
|
@@ -2833,7 +2857,7 @@ declare class ColorField<
|
|
2833
2857
|
/** @defaultValue `"is not a valid hexadecimal color string"` */
|
2834
2858
|
override validationError: string;
|
2835
2859
|
|
2836
|
-
protected static override get _defaults():
|
2860
|
+
protected static override get _defaults(): StringField.Options;
|
2837
2861
|
|
2838
2862
|
override clean(value: AssignmentType, options?: DataField.CleanOptions): InitializedType;
|
2839
2863
|
|
@@ -2859,13 +2883,13 @@ declare namespace ColorField {
|
|
2859
2883
|
* A helper type for the given options type merged into the default options of the ColorField class.
|
2860
2884
|
* @typeParam Options - the options that override the default options
|
2861
2885
|
*/
|
2862
|
-
type MergedOptions<Options extends
|
2886
|
+
type MergedOptions<Options extends StringField.Options> = SimpleMerge<DefaultOptions, Options>;
|
2863
2887
|
|
2864
2888
|
/**
|
2865
2889
|
* A shorthand for the assignment type of a ColorField class.
|
2866
2890
|
* @typeParam Options - the options that override the default options
|
2867
2891
|
*/
|
2868
|
-
type AssignmentType<Options extends
|
2892
|
+
type AssignmentType<Options extends StringField.Options> = DataField.DerivedAssignmentType<
|
2869
2893
|
string,
|
2870
2894
|
MergedOptions<Options>
|
2871
2895
|
>;
|
@@ -2874,7 +2898,7 @@ declare namespace ColorField {
|
|
2874
2898
|
* A shorthand for the initialized type of a ColorField class.
|
2875
2899
|
* @typeParam Options - the options that override the default options
|
2876
2900
|
*/
|
2877
|
-
type InitializedType<Options extends
|
2901
|
+
type InitializedType<Options extends StringField.Options> = DataField.DerivedInitializedType<
|
2878
2902
|
Color,
|
2879
2903
|
MergedOptions<Options>
|
2880
2904
|
>;
|
@@ -2883,37 +2907,12 @@ declare namespace ColorField {
|
|
2883
2907
|
* A shorthand for the persisted type of a ColorField class.
|
2884
2908
|
* @typeParam Options - the options that override the default options
|
2885
2909
|
*/
|
2886
|
-
type PersistedType<Options extends
|
2910
|
+
type PersistedType<Options extends StringField.Options> = DataField.DerivedInitializedType<
|
2887
2911
|
string,
|
2888
2912
|
MergedOptions<Options>
|
2889
2913
|
>;
|
2890
2914
|
}
|
2891
2915
|
|
2892
|
-
declare global {
|
2893
|
-
/**
|
2894
|
-
* @typeParam Value - the type of the value of the field
|
2895
|
-
*/
|
2896
|
-
interface FilePathFieldOptions extends StringFieldOptions {
|
2897
|
-
/**
|
2898
|
-
* A set of categories in CONST.FILE_CATEGORIES which this field supports
|
2899
|
-
* @defaultValue `[]`
|
2900
|
-
*/
|
2901
|
-
categories?: (keyof typeof CONST.FILE_CATEGORIES)[];
|
2902
|
-
|
2903
|
-
/**
|
2904
|
-
* Is embedded base64 data supported in lieu of a file path?
|
2905
|
-
* @defaultValue `false`
|
2906
|
-
*/
|
2907
|
-
base64?: boolean;
|
2908
|
-
|
2909
|
-
/**
|
2910
|
-
* Does this file path field allow wildcard characters?
|
2911
|
-
* @defaultValue `false`
|
2912
|
-
*/
|
2913
|
-
wildcard?: boolean;
|
2914
|
-
}
|
2915
|
-
}
|
2916
|
-
|
2917
2916
|
/**
|
2918
2917
|
* A special [StringField]{@link StringField} which records a file path or inline base64 data.
|
2919
2918
|
* @typeParam Options - the options of the FilePathField instance
|
@@ -2928,7 +2927,7 @@ declare global {
|
|
2928
2927
|
* InitialValue: `null`
|
2929
2928
|
*/
|
2930
2929
|
declare class FilePathField<
|
2931
|
-
Options extends
|
2930
|
+
Options extends FilePathField.Options = FilePathField.DefaultOptions,
|
2932
2931
|
AssignmentType = FilePathField.AssignmentType<Options>,
|
2933
2932
|
InitializedType = FilePathField.InitializedType<Options>,
|
2934
2933
|
PersistedType extends string | null | undefined = FilePathField.InitializedType<Options>,
|
@@ -2963,9 +2962,9 @@ declare class FilePathField<
|
|
2963
2962
|
override blank: boolean;
|
2964
2963
|
|
2965
2964
|
/** @defaultValue `null` */
|
2966
|
-
override initial:
|
2965
|
+
override initial: DataField.Options.InitialType<InitializedType>;
|
2967
2966
|
|
2968
|
-
protected static override get _defaults():
|
2967
|
+
protected static override get _defaults(): FilePathField.Options;
|
2969
2968
|
|
2970
2969
|
override clean(value: AssignmentType, options?: DataField.CleanOptions): InitializedType;
|
2971
2970
|
|
@@ -2989,17 +2988,37 @@ declare namespace FilePathField {
|
|
2989
2988
|
}
|
2990
2989
|
>;
|
2991
2990
|
|
2991
|
+
interface Options extends StringField.Options {
|
2992
|
+
/**
|
2993
|
+
* A set of categories in CONST.FILE_CATEGORIES which this field supports
|
2994
|
+
* @defaultValue `[]`
|
2995
|
+
*/
|
2996
|
+
categories?: (keyof typeof CONST.FILE_CATEGORIES)[];
|
2997
|
+
|
2998
|
+
/**
|
2999
|
+
* Is embedded base64 data supported in lieu of a file path?
|
3000
|
+
* @defaultValue `false`
|
3001
|
+
*/
|
3002
|
+
base64?: boolean;
|
3003
|
+
|
3004
|
+
/**
|
3005
|
+
* Does this file path field allow wildcard characters?
|
3006
|
+
* @defaultValue `false`
|
3007
|
+
*/
|
3008
|
+
wildcard?: boolean;
|
3009
|
+
}
|
3010
|
+
|
2992
3011
|
/**
|
2993
3012
|
* A helper type for the given options type merged into the default options of the FilePathField class.
|
2994
3013
|
* @typeParam Options - the options that override the default options
|
2995
3014
|
*/
|
2996
|
-
type MergedOptions<Options extends
|
3015
|
+
type MergedOptions<Options extends StringField.Options> = SimpleMerge<DefaultOptions, Options>;
|
2997
3016
|
|
2998
3017
|
/**
|
2999
3018
|
* A shorthand for the assignment type of a FilePathField class.
|
3000
3019
|
* @typeParam Options - the options that override the default options
|
3001
3020
|
*/
|
3002
|
-
type AssignmentType<Options extends
|
3021
|
+
type AssignmentType<Options extends StringField.Options> = DataField.DerivedAssignmentType<
|
3003
3022
|
string,
|
3004
3023
|
MergedOptions<Options>
|
3005
3024
|
>;
|
@@ -3008,7 +3027,7 @@ declare namespace FilePathField {
|
|
3008
3027
|
* A shorthand for the initialized type of a FilePathField class.
|
3009
3028
|
* @typeParam Options - the options that override the default options
|
3010
3029
|
*/
|
3011
|
-
type InitializedType<Options extends
|
3030
|
+
type InitializedType<Options extends StringField.Options> = DataField.DerivedInitializedType<
|
3012
3031
|
string,
|
3013
3032
|
MergedOptions<Options>
|
3014
3033
|
>;
|
@@ -3028,7 +3047,7 @@ declare namespace FilePathField {
|
|
3028
3047
|
* InitialValue: `0`
|
3029
3048
|
*/
|
3030
3049
|
declare class AngleField<
|
3031
|
-
Options extends
|
3050
|
+
Options extends NumberField.Options = AngleField.DefaultOptions,
|
3032
3051
|
AssignmentType = AngleField.AssignmentType<Options>,
|
3033
3052
|
InitializedType = AngleField.InitializedType<Options>,
|
3034
3053
|
PersistedType extends number | null | undefined = AngleField.InitializedType<Options>,
|
@@ -3040,7 +3059,7 @@ declare class AngleField<
|
|
3040
3059
|
override nullable: boolean;
|
3041
3060
|
|
3042
3061
|
/** @defaultValue `0` */
|
3043
|
-
override initial:
|
3062
|
+
override initial: DataField.Options.InitialType<InitializedType>;
|
3044
3063
|
|
3045
3064
|
/** @defaultValue `0` */
|
3046
3065
|
base: number;
|
@@ -3054,7 +3073,7 @@ declare class AngleField<
|
|
3054
3073
|
/** @defaultValue `"is not a number between 0 and 360"` */
|
3055
3074
|
override validationError: string;
|
3056
3075
|
|
3057
|
-
protected static override get _defaults():
|
3076
|
+
protected static override get _defaults(): NumberField.Options;
|
3058
3077
|
|
3059
3078
|
protected override _cast(value: AssignmentType): InitializedType;
|
3060
3079
|
}
|
@@ -3078,13 +3097,13 @@ declare namespace AngleField {
|
|
3078
3097
|
* A helper type for the given options type merged into the default options of the AngleField class.
|
3079
3098
|
* @typeParam Options - the options that override the default options
|
3080
3099
|
*/
|
3081
|
-
type MergedOptions<Options extends
|
3100
|
+
type MergedOptions<Options extends NumberField.Options> = SimpleMerge<DefaultOptions, Options>;
|
3082
3101
|
|
3083
3102
|
/**
|
3084
3103
|
* A shorthand for the assignment type of a AngleField class.
|
3085
3104
|
* @typeParam Options - the options that override the default options
|
3086
3105
|
*/
|
3087
|
-
type AssignmentType<Options extends
|
3106
|
+
type AssignmentType<Options extends NumberField.Options> = DataField.DerivedAssignmentType<
|
3088
3107
|
number,
|
3089
3108
|
MergedOptions<Options>
|
3090
3109
|
>;
|
@@ -3093,7 +3112,7 @@ declare namespace AngleField {
|
|
3093
3112
|
* A shorthand for the initialized type of a AngleField class.
|
3094
3113
|
* @typeParam Options - the options that override the default options
|
3095
3114
|
*/
|
3096
|
-
type InitializedType<Options extends
|
3115
|
+
type InitializedType<Options extends NumberField.Options> = DataField.DerivedInitializedType<
|
3097
3116
|
number,
|
3098
3117
|
MergedOptions<Options>
|
3099
3118
|
>;
|
@@ -3113,7 +3132,7 @@ declare namespace AngleField {
|
|
3113
3132
|
* InitialValue: `1`
|
3114
3133
|
*/
|
3115
3134
|
declare class AlphaField<
|
3116
|
-
Options extends
|
3135
|
+
Options extends NumberField.Options = AlphaField.DefaultOptions,
|
3117
3136
|
AssignmentType = AlphaField.AssignmentType<Options>,
|
3118
3137
|
InitializedType = AlphaField.InitializedType<Options>,
|
3119
3138
|
PersistedType extends number | null | undefined = AlphaField.InitializedType<Options>,
|
@@ -3125,7 +3144,7 @@ declare class AlphaField<
|
|
3125
3144
|
override nullable: boolean;
|
3126
3145
|
|
3127
3146
|
/** @defaultValue `1` */
|
3128
|
-
override initial:
|
3147
|
+
override initial: DataField.Options.InitialType<InitializedType>;
|
3129
3148
|
|
3130
3149
|
/** @defaultValue `0` */
|
3131
3150
|
override min: number | undefined;
|
@@ -3136,7 +3155,7 @@ declare class AlphaField<
|
|
3136
3155
|
/** @defaultValue `"is not a number between 0 and 1"` */
|
3137
3156
|
override validationError: string;
|
3138
3157
|
|
3139
|
-
protected static override get _defaults():
|
3158
|
+
protected static override get _defaults(): NumberField.Options;
|
3140
3159
|
}
|
3141
3160
|
|
3142
3161
|
declare namespace AlphaField {
|
@@ -3157,13 +3176,13 @@ declare namespace AlphaField {
|
|
3157
3176
|
* A helper type for the given options type merged into the default options of the AlphaField class.
|
3158
3177
|
* @typeParam Options - the options that override the default options
|
3159
3178
|
*/
|
3160
|
-
type MergedOptions<Options extends
|
3179
|
+
type MergedOptions<Options extends NumberField.Options> = SimpleMerge<DefaultOptions, Options>;
|
3161
3180
|
|
3162
3181
|
/**
|
3163
3182
|
* A shorthand for the assignment type of a AlphaField class.
|
3164
3183
|
* @typeParam Options - the options that override the default options
|
3165
3184
|
*/
|
3166
|
-
type AssignmentType<Options extends
|
3185
|
+
type AssignmentType<Options extends NumberField.Options> = DataField.DerivedAssignmentType<
|
3167
3186
|
number,
|
3168
3187
|
MergedOptions<Options>
|
3169
3188
|
>;
|
@@ -3172,7 +3191,7 @@ declare namespace AlphaField {
|
|
3172
3191
|
* A shorthand for the initialized type of a AlphaField class.
|
3173
3192
|
* @typeParam Options - the options that override the default options
|
3174
3193
|
*/
|
3175
|
-
type InitializedType<Options extends
|
3194
|
+
type InitializedType<Options extends NumberField.Options> = DataField.DerivedInitializedType<
|
3176
3195
|
number,
|
3177
3196
|
MergedOptions<Options>
|
3178
3197
|
>;
|
@@ -3183,7 +3202,7 @@ declare namespace AlphaField {
|
|
3183
3202
|
* Its values are normalized (modulo 1) to the range [0, 1) instead of being clamped.
|
3184
3203
|
*/
|
3185
3204
|
declare class HueField<
|
3186
|
-
const Options extends
|
3205
|
+
const Options extends NumberField.Options = NumberField.DefaultOptions,
|
3187
3206
|
const AssignmentType = NumberField.AssignmentType<Options>,
|
3188
3207
|
const InitializedType = NumberField.InitializedType<Options>,
|
3189
3208
|
const PersistedType extends number | null | undefined = NumberField.InitializedType<Options>,
|
@@ -3194,7 +3213,7 @@ declare class HueField<
|
|
3194
3213
|
}
|
3195
3214
|
|
3196
3215
|
declare namespace HueField {
|
3197
|
-
type Options =
|
3216
|
+
type Options = NumberField.Options;
|
3198
3217
|
|
3199
3218
|
type DefaultOptions = SimpleMerge<
|
3200
3219
|
NumberField.DefaultOptions,
|
@@ -3232,7 +3251,7 @@ declare class DocumentOwnershipField<
|
|
3232
3251
|
| undefined = DocumentOwnershipField.InitializedType<Options>,
|
3233
3252
|
> extends ObjectField<Options, AssignmentType, InitializedType, PersistedType> {
|
3234
3253
|
/** @defaultValue `{"default": DOCUMENT_OWNERSHIP_LEVELS.NONE}` */
|
3235
|
-
override initial:
|
3254
|
+
override initial: DataField.Options.InitialType<InitializedType>;
|
3236
3255
|
|
3237
3256
|
/** @defaultValue `"is not a mapping of user IDs and document permission levels"` */
|
3238
3257
|
override validationError: string;
|
@@ -3247,7 +3266,7 @@ declare class DocumentOwnershipField<
|
|
3247
3266
|
|
3248
3267
|
declare namespace DocumentOwnershipField {
|
3249
3268
|
/** A shorthand for the options of a DocumentOwnershipField class. */
|
3250
|
-
type Options =
|
3269
|
+
type Options = DataField.Options<Record<string, DOCUMENT_OWNERSHIP_LEVELS>>;
|
3251
3270
|
|
3252
3271
|
/** The type of the default options for the {@link DocumentOwnershipField} class. */
|
3253
3272
|
type DefaultOptions = SimpleMerge<
|
@@ -3298,7 +3317,7 @@ declare namespace DocumentOwnershipField {
|
|
3298
3317
|
*/
|
3299
3318
|
declare class JSONField<
|
3300
3319
|
// TODO(LukeAbby): Due to the unconditional setting of `blank`, `trim`, and `choices` setting them is meaningless which basically means they're removed from the options.
|
3301
|
-
Options extends
|
3320
|
+
Options extends StringField.Options = JSONField.DefaultOptions,
|
3302
3321
|
AssignmentType = JSONField.AssignmentType<Options>,
|
3303
3322
|
InitializedType = JSONField.InitializedType<Options>,
|
3304
3323
|
PersistedType extends string | null | undefined = JSONField.PersistedType<Options>,
|
@@ -3309,12 +3328,12 @@ declare class JSONField<
|
|
3309
3328
|
override blank: boolean;
|
3310
3329
|
|
3311
3330
|
/** @defaultValue `undefined` */
|
3312
|
-
override initial:
|
3331
|
+
override initial: DataField.Options.InitialType<InitializedType>;
|
3313
3332
|
|
3314
3333
|
/** @defaultValue `"is not a valid JSON string"` */
|
3315
3334
|
override validationError: string;
|
3316
3335
|
|
3317
|
-
protected static override get _defaults():
|
3336
|
+
protected static override get _defaults(): StringField.Options;
|
3318
3337
|
|
3319
3338
|
override clean(value: AssignmentType, options?: DataField.CleanOptions): InitializedType;
|
3320
3339
|
|
@@ -3371,13 +3390,13 @@ declare namespace JSONField {
|
|
3371
3390
|
* A helper type for the given options type merged into the default options of the JSONField class.
|
3372
3391
|
* @typeParam Options - the options that override the default options
|
3373
3392
|
*/
|
3374
|
-
type MergedOptions<Options extends
|
3393
|
+
type MergedOptions<Options extends StringField.Options> = SimpleMerge<DefaultOptions, Options>;
|
3375
3394
|
|
3376
3395
|
/**
|
3377
3396
|
* A shorthand for the assignment type of a JSONField class.
|
3378
3397
|
* @typeParam Options - the options that override the default options
|
3379
3398
|
*/
|
3380
|
-
type AssignmentType<Options extends
|
3399
|
+
type AssignmentType<Options extends StringField.Options> = DataField.DerivedAssignmentType<
|
3381
3400
|
string,
|
3382
3401
|
MergedOptions<Options>
|
3383
3402
|
>;
|
@@ -3386,7 +3405,7 @@ declare namespace JSONField {
|
|
3386
3405
|
* A shorthand for the initialized type of a JSONField class.
|
3387
3406
|
* @typeParam Options - the options that override the default options
|
3388
3407
|
*/
|
3389
|
-
type InitializedType<Options extends
|
3408
|
+
type InitializedType<Options extends StringField.Options> = DataField.DerivedInitializedType<
|
3390
3409
|
AnyObject,
|
3391
3410
|
MergedOptions<Options>
|
3392
3411
|
>;
|
@@ -3395,7 +3414,7 @@ declare namespace JSONField {
|
|
3395
3414
|
* A shorthand for the persisted type of a JSONField class.
|
3396
3415
|
* @typeParam Options - the options that override the default options
|
3397
3416
|
*/
|
3398
|
-
type PersistedType<Options extends
|
3417
|
+
type PersistedType<Options extends StringField.Options> = DataField.DerivedInitializedType<
|
3399
3418
|
string,
|
3400
3419
|
MergedOptions<Options>
|
3401
3420
|
>;
|
@@ -3407,7 +3426,7 @@ declare namespace JSONField {
|
|
3407
3426
|
* It is not recommended to use this class except for very specific circumstances.
|
3408
3427
|
*/
|
3409
3428
|
// TODO(LukeAbby): This field effectively removes all options because there's no point asking for an options when none of them do anything.
|
3410
|
-
declare class AnyField extends DataField<
|
3429
|
+
declare class AnyField extends DataField<DataField.Options.Any, unknown, unknown, unknown> {
|
3411
3430
|
override _cast(value: unknown): unknown;
|
3412
3431
|
|
3413
3432
|
protected override _validateType(
|
@@ -3432,7 +3451,7 @@ declare class AnyField extends DataField<DataFieldOptions.Any, unknown, unknown,
|
|
3432
3451
|
* InitialValue: `""`
|
3433
3452
|
*/
|
3434
3453
|
declare class HTMLField<
|
3435
|
-
Options extends
|
3454
|
+
Options extends StringField.Options = HTMLField.DefaultOptions,
|
3436
3455
|
AssignmentType = HTMLField.AssignmentType<Options>,
|
3437
3456
|
InitializedType = HTMLField.InitializedType<Options>,
|
3438
3457
|
PersistedType extends string | null | undefined = HTMLField.InitializedType<Options>,
|
@@ -3443,7 +3462,7 @@ declare class HTMLField<
|
|
3443
3462
|
/** @defaultValue `true` */
|
3444
3463
|
override blank: boolean;
|
3445
3464
|
|
3446
|
-
protected static override get _defaults():
|
3465
|
+
protected static override get _defaults(): StringField.Options;
|
3447
3466
|
|
3448
3467
|
// These verbose overloads are because otherwise there would be a misleading errors about `choices` being required without mentioning `options` or vice versa.
|
3449
3468
|
toFormGroup(
|
@@ -3484,13 +3503,13 @@ declare namespace HTMLField {
|
|
3484
3503
|
* A helper type for the given options type merged into the default options of the HTMLField class.
|
3485
3504
|
* @typeParam Options - the options that override the default options
|
3486
3505
|
*/
|
3487
|
-
type MergedOptions<Options extends
|
3506
|
+
type MergedOptions<Options extends StringField.Options> = SimpleMerge<DefaultOptions, Options>;
|
3488
3507
|
|
3489
3508
|
/**
|
3490
3509
|
* A shorthand for the assignment type of a HTMLField class.
|
3491
3510
|
* @typeParam Options - the options that override the default options
|
3492
3511
|
*/
|
3493
|
-
type AssignmentType<Options extends
|
3512
|
+
type AssignmentType<Options extends StringField.Options> = DataField.DerivedAssignmentType<
|
3494
3513
|
string,
|
3495
3514
|
MergedOptions<Options>
|
3496
3515
|
>;
|
@@ -3499,7 +3518,7 @@ declare namespace HTMLField {
|
|
3499
3518
|
* A shorthand for the initialized type of a HTMLField class.
|
3500
3519
|
* @typeParam Options - the options that override the default options
|
3501
3520
|
*/
|
3502
|
-
type InitializedType<Options extends
|
3521
|
+
type InitializedType<Options extends StringField.Options> = DataField.DerivedInitializedType<
|
3503
3522
|
string,
|
3504
3523
|
MergedOptions<Options>
|
3505
3524
|
>;
|
@@ -3522,7 +3541,7 @@ declare namespace HTMLField {
|
|
3522
3541
|
* InitialValue: `0`
|
3523
3542
|
*/
|
3524
3543
|
declare class IntegerSortField<
|
3525
|
-
Options extends
|
3544
|
+
Options extends NumberField.Options = IntegerSortField.DefaultOptions,
|
3526
3545
|
AssignmentType = IntegerSortField.AssignmentType<Options>,
|
3527
3546
|
InitializedType = IntegerSortField.InitializedType<Options>,
|
3528
3547
|
PersistedType extends number | null | undefined = IntegerSortField.InitializedType<Options>,
|
@@ -3537,7 +3556,7 @@ declare class IntegerSortField<
|
|
3537
3556
|
override integer: boolean;
|
3538
3557
|
|
3539
3558
|
/** @defaultValue `0` */
|
3540
|
-
override initial:
|
3559
|
+
override initial: DataField.Options.InitialType<InitializedType>;
|
3541
3560
|
|
3542
3561
|
/** @defaultValue `"FOLDER.DocumentSort"` */
|
3543
3562
|
override label: string;
|
@@ -3564,13 +3583,13 @@ declare namespace IntegerSortField {
|
|
3564
3583
|
* A helper type for the given options type merged into the default options of the IntegerSortField class.
|
3565
3584
|
* @typeParam Options - the options that override the default options
|
3566
3585
|
*/
|
3567
|
-
type MergedOptions<Options extends
|
3586
|
+
type MergedOptions<Options extends NumberField.Options> = SimpleMerge<DefaultOptions, Options>;
|
3568
3587
|
|
3569
3588
|
/**
|
3570
3589
|
* A shorthand for the assignment type of a IntegerSortField class.
|
3571
3590
|
* @typeParam Options - the options that override the default options
|
3572
3591
|
*/
|
3573
|
-
type AssignmentType<Options extends
|
3592
|
+
type AssignmentType<Options extends NumberField.Options> = DataField.DerivedAssignmentType<
|
3574
3593
|
number,
|
3575
3594
|
MergedOptions<Options>
|
3576
3595
|
>;
|
@@ -3579,16 +3598,12 @@ declare namespace IntegerSortField {
|
|
3579
3598
|
* A shorthand for the initialized type of a IntegerSortField class.
|
3580
3599
|
* @typeParam Options - the options that override the default options
|
3581
3600
|
*/
|
3582
|
-
type InitializedType<Options extends
|
3601
|
+
type InitializedType<Options extends NumberField.Options> = DataField.DerivedInitializedType<
|
3583
3602
|
number,
|
3584
3603
|
MergedOptions<Options>
|
3585
3604
|
>;
|
3586
3605
|
}
|
3587
3606
|
|
3588
|
-
declare global {
|
3589
|
-
type DocumentStats = DocumentStatsField.Properties;
|
3590
|
-
}
|
3591
|
-
|
3592
3607
|
/**
|
3593
3608
|
* A subclass of {@link SchemaField} which stores document metadata in the _stats field.
|
3594
3609
|
* @typeParam Options - the options of the DocumentStatsField instance
|
@@ -3623,7 +3638,7 @@ declare class DocumentStatsField<
|
|
3623
3638
|
|
3624
3639
|
declare namespace DocumentStatsField {
|
3625
3640
|
/** A shorthand for the options of a DocumentStatsField class. */
|
3626
|
-
type Options =
|
3641
|
+
type Options = DataField.Options<SchemaField.InnerAssignmentType<Schema>>;
|
3627
3642
|
|
3628
3643
|
/** The type of the default options for the {@link DocumentStatsField} class. */
|
3629
3644
|
type DefaultOptions = SimpleMerge<SchemaField.DefaultOptions, { initial: SchemaField.InnerAssignmentType<Schema> }>;
|
@@ -3730,7 +3745,7 @@ declare class DocumentTypeField<
|
|
3730
3745
|
* @param options - Options which configure the behavior of the field
|
3731
3746
|
* @param context - Additional context which describes the field
|
3732
3747
|
*/
|
3733
|
-
constructor(documentClass: ConcreteDocumentClass, options
|
3748
|
+
constructor(documentClass: ConcreteDocumentClass, options?: DocumentTypeField.Options, context?: DataField.Context);
|
3734
3749
|
|
3735
3750
|
static override get _defaults(): DocumentTypeField.Options;
|
3736
3751
|
|
@@ -3751,12 +3766,12 @@ declare namespace DocumentTypeField {
|
|
3751
3766
|
}
|
3752
3767
|
>;
|
3753
3768
|
|
3754
|
-
interface Options extends
|
3769
|
+
interface Options extends StringField.Options {}
|
3755
3770
|
|
3756
3771
|
// TODO(LukeAbby): This class has effectively removed `choices` and `validationError` since they're unconditionally set in the constructor.
|
3757
3772
|
type MergedOptions<
|
3758
3773
|
ConcreteDocumentClass extends Document.AnyConstructor,
|
3759
|
-
Options extends
|
3774
|
+
Options extends StringField.Options,
|
3760
3775
|
> = SimpleMerge<
|
3761
3776
|
SimpleMerge<DefaultOptions, Options>,
|
3762
3777
|
{
|
@@ -3767,15 +3782,15 @@ declare namespace DocumentTypeField {
|
|
3767
3782
|
|
3768
3783
|
type AssignmentType<
|
3769
3784
|
ConcreteDocumentClass extends Document.AnyConstructor,
|
3770
|
-
Options extends
|
3785
|
+
Options extends StringField.Options,
|
3771
3786
|
> = StringField.AssignmentType<MergedOptions<ConcreteDocumentClass, Options>>;
|
3772
3787
|
type InitializedType<
|
3773
3788
|
ConcreteDocumentClass extends Document.AnyConstructor,
|
3774
|
-
Options extends
|
3789
|
+
Options extends StringField.Options,
|
3775
3790
|
> = StringField.InitializedType<MergedOptions<ConcreteDocumentClass, Options>>;
|
3776
3791
|
type PersistedType<
|
3777
3792
|
ConcreteDocumentClass extends Document.AnyConstructor,
|
3778
|
-
Options extends
|
3793
|
+
Options extends StringField.Options,
|
3779
3794
|
> = StringField.InitializedType<MergedOptions<ConcreteDocumentClass, Options>>;
|
3780
3795
|
}
|
3781
3796
|
|
@@ -3869,7 +3884,7 @@ declare namespace TypeDataField {
|
|
3869
3884
|
* A shorthand for the options of a TypeDataField class.
|
3870
3885
|
* @typeParam DocumentType - the type of the embedded Document
|
3871
3886
|
*/
|
3872
|
-
type Options<DocumentType extends Document.SystemConstructor> =
|
3887
|
+
type Options<DocumentType extends Document.SystemConstructor> = DataField.Options<
|
3873
3888
|
SchemaField.InnerAssignmentType<DataModel.SchemaOfClass<DocumentType>>
|
3874
3889
|
>;
|
3875
3890
|
|
@@ -3891,30 +3906,9 @@ declare namespace TypeDataField {
|
|
3891
3906
|
Opts
|
3892
3907
|
>;
|
3893
3908
|
|
3894
|
-
|
3895
|
-
|
3896
|
-
|
3897
|
-
*/
|
3898
|
-
type Config<DocumentType extends Document.SystemConstructor> =
|
3899
|
-
DocumentType["metadata"]["name"] extends keyof DataModelConfig
|
3900
|
-
? DataModelConfig[DocumentType["metadata"]["name"]]
|
3901
|
-
: EmptyObject;
|
3902
|
-
|
3903
|
-
/**
|
3904
|
-
* Get the configured core and system type names for a specific document type.
|
3905
|
-
* @typeParam ConcreteDocument - the type of the Document this data is for
|
3906
|
-
* @deprecated Use the Game.Model namespace instead of TypeDataField
|
3907
|
-
*/
|
3908
|
-
type TypeNames<ConcreteDocument extends Document.SystemConstructor> = Game.Model.TypeNames<
|
3909
|
-
ConcreteDocument["metadata"]["name"]
|
3910
|
-
>;
|
3911
|
-
|
3912
|
-
/**
|
3913
|
-
* Get the core type names for a specific document type.
|
3914
|
-
* @typeParam DocumentType - the type of the Document this data is for
|
3915
|
-
* @deprecated Use `DocumentType["metadata"]["coreTypes"][number]`
|
3916
|
-
*/
|
3917
|
-
type CoreTypeNames<DocumentType extends Document.SystemConstructor> = DocumentType["metadata"]["coreTypes"][number];
|
3909
|
+
type DataModelsFor<DocumentType extends Document.Type> = DocumentType extends keyof DataModelConfig
|
3910
|
+
? DataModelConfig[DocumentType]
|
3911
|
+
: EmptyObject;
|
3918
3912
|
|
3919
3913
|
/**
|
3920
3914
|
* A shorthand for the assignment type of a TypeDataField class.
|
@@ -3923,8 +3917,8 @@ declare namespace TypeDataField {
|
|
3923
3917
|
*/
|
3924
3918
|
type AssignmentType<
|
3925
3919
|
SystemDocumentConstructor extends Document.SystemConstructor,
|
3926
|
-
Opts extends Options<
|
3927
|
-
> = DataField.DerivedAssignmentType<AnyObject, MergedOptions<
|
3920
|
+
Opts extends Options<SystemDocumentConstructor>,
|
3921
|
+
> = DataField.DerivedAssignmentType<AnyObject, MergedOptions<SystemDocumentConstructor, Opts>>;
|
3928
3922
|
|
3929
3923
|
/**
|
3930
3924
|
* A shorthand for the initialized type of a TypeDataField class.
|
@@ -3933,21 +3927,64 @@ declare namespace TypeDataField {
|
|
3933
3927
|
*/
|
3934
3928
|
type InitializedType<
|
3935
3929
|
SystemDocumentConstructor extends Document.SystemConstructor,
|
3936
|
-
Opts extends Options<
|
3930
|
+
Opts extends Options<SystemDocumentConstructor>,
|
3937
3931
|
> = DataField.DerivedInitializedType<
|
3938
|
-
|
3939
|
-
MergedOptions<
|
3932
|
+
_Instances<DataModelsFor<SystemDocumentConstructor["metadata"]["name"]>> | UnknownSystem,
|
3933
|
+
MergedOptions<SystemDocumentConstructor, Opts>
|
3940
3934
|
>;
|
3941
3935
|
|
3936
|
+
type _Instances<T> = {
|
3937
|
+
[K in keyof T]: T[K] extends (abstract new (arg0: never, ...args: never[]) => infer U extends DataModel.Any)
|
3938
|
+
? U
|
3939
|
+
: never;
|
3940
|
+
};
|
3941
|
+
|
3942
|
+
/**
|
3943
|
+
* With the existence of custom module subtypes a system can no longer rely on their configured types being the only ones.
|
3944
|
+
* A module can provide its own custom type though it is always of the form `${moduleName}.${subType}` so the `.` is a pretty
|
3945
|
+
* strong indicator.
|
3946
|
+
*
|
3947
|
+
* `UnknownSourceData` covers the case where it's configured without a data model.
|
3948
|
+
* See {@link UnknownSystem | `UnknownSystem`} for other possibilities.
|
3949
|
+
*/
|
3950
|
+
interface UnknownSourceData extends AnyObject {
|
3951
|
+
type: `${string}.${string}`;
|
3952
|
+
}
|
3953
|
+
|
3954
|
+
/**
|
3955
|
+
* With the existence of custom module subtypes a system can no longer rely on their configured types being the only ones.
|
3956
|
+
* A module can provide its own custom type though it is always of the form `${moduleName}.${subType}` so the `.` is a pretty
|
3957
|
+
* strong indicator.
|
3958
|
+
*
|
3959
|
+
* `UnknownTypeDataModel` covers the case where it's configured with a {@link TypeDataModel | `TypeDataModel`}.
|
3960
|
+
* See {@link UnknownSystem | `UnknownSystem`} for other possibilities.
|
3961
|
+
*/
|
3962
|
+
interface UnknownTypeDataModel extends TypeDataModel<any, any, any, any> {}
|
3963
|
+
|
3964
|
+
/**
|
3965
|
+
* With the existence of custom module subtypes a system can no longer rely on their configured types being the only ones.
|
3966
|
+
*
|
3967
|
+
* `UnknownDataModel` covers the case where it's configured with a {@link DataModel | `DataModel`}.
|
3968
|
+
* Using a {@link TypeDataModel | `TypeDataModel`} is recommended by Foundry but a {@link DataModel | `DataModel`} is
|
3969
|
+
* always possible.
|
3970
|
+
* See {@link UnknownSystem | `UnknownSystem`} for other possibilities.
|
3971
|
+
*/
|
3972
|
+
interface UnknownDataModel extends DataModel<any, any, any> {}
|
3973
|
+
|
3974
|
+
/**
|
3975
|
+
* With the existence of custom module subtypes a system can no longer rely on their configured types being the only ones.
|
3976
|
+
*/
|
3977
|
+
type UnknownSystem = UnknownSourceData | UnknownTypeDataModel | UnknownDataModel;
|
3978
|
+
|
3942
3979
|
/**
|
3943
3980
|
* A shorthand for the persisted type of a TypeDataField class.
|
3944
3981
|
* @typeParam DocumentType - the type of the embedded Document
|
3945
3982
|
* @typeParam Opts - the options that override the default options
|
3946
3983
|
*/
|
3947
3984
|
type PersistedType<
|
3948
|
-
|
3949
|
-
Opts extends Options<
|
3950
|
-
> = DataField.DerivedInitializedType<AnyObject, MergedOptions<
|
3985
|
+
ConcreteDocument extends Document.SystemConstructor,
|
3986
|
+
Opts extends Options<ConcreteDocument>,
|
3987
|
+
> = DataField.DerivedInitializedType<AnyObject, MergedOptions<ConcreteDocument, Opts>>;
|
3951
3988
|
}
|
3952
3989
|
|
3953
3990
|
/**
|
@@ -3955,19 +3992,19 @@ declare namespace TypeDataField {
|
|
3955
3992
|
*/
|
3956
3993
|
declare class TypedSchemaField<
|
3957
3994
|
const Types extends TypedSchemaField.Types,
|
3958
|
-
const Options extends TypedSchemaField.
|
3995
|
+
const Options extends TypedSchemaField.Options<Types> = TypedSchemaField.DefaultOptions,
|
3959
3996
|
const AssignmentType = TypedSchemaField.AssignmentType<Types, Options>,
|
3960
3997
|
const InitializedType = TypedSchemaField.InitializedType<Types, Options>,
|
3961
|
-
const PersistedType
|
3998
|
+
const PersistedType = TypedSchemaField.PersistedType<Types, Options>,
|
3962
3999
|
> extends DataField<Options, AssignmentType, InitializedType, PersistedType> {
|
3963
4000
|
/**
|
3964
4001
|
* @param types - The different types this field can represent.
|
3965
4002
|
* @param options - Options which configure the behavior of the field
|
3966
4003
|
* @param context - Additional context which describes the field
|
3967
4004
|
*/
|
3968
|
-
constructor(types: Types, options
|
4005
|
+
constructor(types: Types, options?: Options, context?: DataField.Context);
|
3969
4006
|
|
3970
|
-
static get _defaults():
|
4007
|
+
static get _defaults(): DataField.Options.Any;
|
3971
4008
|
|
3972
4009
|
/**
|
3973
4010
|
* The types of this field.
|
@@ -4001,6 +4038,8 @@ declare class TypedSchemaField<
|
|
4001
4038
|
}
|
4002
4039
|
|
4003
4040
|
declare namespace TypedSchemaField {
|
4041
|
+
interface Options<T extends Types> extends DataField.Options<_AssignmentType<ToConfiguredTypes<T>>> {}
|
4042
|
+
|
4004
4043
|
type DefaultOptions = SimpleMerge<
|
4005
4044
|
DataField.DefaultOptions,
|
4006
4045
|
{
|
@@ -4008,31 +4047,36 @@ declare namespace TypedSchemaField {
|
|
4008
4047
|
}
|
4009
4048
|
>;
|
4010
4049
|
|
4011
|
-
|
4012
|
-
|
4013
|
-
|
4014
|
-
|
4015
|
-
|
4016
|
-
|
4017
|
-
|
4018
|
-
|
4019
|
-
|
4020
|
-
|
4050
|
+
/**
|
4051
|
+
* A `ValidDataSchema` must pass the checks in `#configureTypes`. Namely:
|
4052
|
+
* - No `name` property.
|
4053
|
+
* - No `parent`.
|
4054
|
+
*
|
4055
|
+
* Additionally the `type` property (if any):
|
4056
|
+
* - Must be a `StringField`.
|
4057
|
+
* - Must be `required`
|
4058
|
+
* - Must not be `nullable`.
|
4059
|
+
* - Must not be `blank`.
|
4060
|
+
* - Must allow the corresponding type as a valid value.
|
4061
|
+
*/
|
4021
4062
|
// eslint-disable-next-line @typescript-eslint/consistent-type-definitions
|
4022
4063
|
type ValidDataSchema = {
|
4023
|
-
readonly [field: string]:
|
4064
|
+
readonly [field: string]: DataField.Any;
|
4024
4065
|
};
|
4025
4066
|
|
4026
4067
|
// eslint-disable-next-line @typescript-eslint/consistent-type-definitions
|
4027
4068
|
type Types = {
|
4028
4069
|
[type: string]:
|
4029
4070
|
| ValidDataSchema
|
4030
|
-
| SchemaField<
|
4031
|
-
| typeof DataModel<
|
4071
|
+
| SchemaField<DataSchema, { required: true; nullable: false }, any, any, any>
|
4072
|
+
| typeof DataModel<DataSchema, null>;
|
4032
4073
|
};
|
4033
4074
|
|
4034
4075
|
type ToConfiguredTypes<Types extends TypedSchemaField.Types> = {
|
4035
|
-
[K in keyof Types]:
|
4076
|
+
[K in keyof Types]:
|
4077
|
+
| (Types[K] extends ValidDataSchema ? SchemaField<Types[K]> : never)
|
4078
|
+
| (Types[K] extends SchemaField.Any ? Types[K] : never)
|
4079
|
+
| (Types[K] extends DataModel.AnyConstructor ? EmbeddedDataField<Types[K]> : never);
|
4036
4080
|
};
|
4037
4081
|
|
4038
4082
|
// eslint-disable-next-line @typescript-eslint/consistent-type-definitions
|
@@ -4044,37 +4088,37 @@ declare namespace TypedSchemaField {
|
|
4044
4088
|
* @internal
|
4045
4089
|
*/
|
4046
4090
|
type _AssignmentType<Types extends ConfiguredTypes> = {
|
4047
|
-
[K in keyof Types]: DataField.AssignmentTypeFor<Types[K]
|
4091
|
+
[K in keyof Types]: DataField.AssignmentTypeFor<Types[K]> & { type: K };
|
4048
4092
|
}[keyof Types];
|
4049
4093
|
|
4050
4094
|
type AssignmentType<
|
4051
4095
|
Types extends TypedSchemaField.Types,
|
4052
|
-
Options extends TypedSchemaField.
|
4096
|
+
Options extends TypedSchemaField.Options<Types>,
|
4053
4097
|
> = DataField.DerivedAssignmentType<_AssignmentType<ToConfiguredTypes<Types>>, Options>;
|
4054
4098
|
|
4055
4099
|
/**
|
4056
4100
|
* @internal
|
4057
4101
|
*/
|
4058
4102
|
type _InitializedType<Types extends ConfiguredTypes> = {
|
4059
|
-
[K in keyof Types]: DataField.InitializedTypeFor<Types[K]
|
4103
|
+
[K in keyof Types]: DataField.InitializedTypeFor<Types[K]> & { type: K };
|
4060
4104
|
}[keyof Types];
|
4061
4105
|
|
4062
4106
|
type InitializedType<
|
4063
4107
|
Types extends TypedSchemaField.Types,
|
4064
|
-
Options extends TypedSchemaField.
|
4108
|
+
Options extends TypedSchemaField.Options<Types>,
|
4065
4109
|
> = DataField.DerivedInitializedType<_InitializedType<ToConfiguredTypes<Types>>, Options>;
|
4066
4110
|
|
4067
4111
|
/**
|
4068
4112
|
* @internal
|
4069
4113
|
*/
|
4070
4114
|
type _PersistedType<Types extends ConfiguredTypes> = {
|
4071
|
-
[K in keyof Types]: DataField.PersistedTypeFor<Types[K]
|
4115
|
+
[K in keyof Types]: DataField.PersistedTypeFor<Types[K]> & { type: K };
|
4072
4116
|
}[keyof Types];
|
4073
4117
|
|
4074
4118
|
type PersistedType<
|
4075
4119
|
Types extends TypedSchemaField.Types,
|
4076
|
-
|
4077
|
-
> = DataField.DerivedInitializedType<_PersistedType<ToConfiguredTypes<Types>>,
|
4120
|
+
Options extends TypedSchemaField.Options<Types>,
|
4121
|
+
> = DataField.DerivedInitializedType<_PersistedType<ToConfiguredTypes<Types>>, Options>;
|
4078
4122
|
}
|
4079
4123
|
|
4080
4124
|
/**
|
@@ -4082,6 +4126,7 @@ declare namespace TypedSchemaField {
|
|
4082
4126
|
* @typeParam Errors - the type of the errors contained in this error
|
4083
4127
|
*/
|
4084
4128
|
declare class ModelValidationError<
|
4129
|
+
// eslint-disable-next-line @typescript-eslint/no-deprecated
|
4085
4130
|
Errors extends ModelValidationError.Errors = ModelValidationError.Errors,
|
4086
4131
|
> extends Error {
|
4087
4132
|
/**
|
@@ -4097,6 +4142,7 @@ declare class ModelValidationError<
|
|
4097
4142
|
* @param errors - The raw error structure
|
4098
4143
|
* @returns A formatted error message
|
4099
4144
|
*/
|
4145
|
+
// eslint-disable-next-line @typescript-eslint/no-deprecated
|
4100
4146
|
static formatErrors(errors: ModelValidationError.Errors): string;
|
4101
4147
|
}
|
4102
4148
|
|
@@ -4150,7 +4196,7 @@ declare class JavaScriptField<
|
|
4150
4196
|
|
4151
4197
|
declare namespace JavaScriptField {
|
4152
4198
|
// TODO(LukeAbby): `choices` is effectively deleted due to being unconditionally set to `undefined` in the constructor.
|
4153
|
-
type Options =
|
4199
|
+
type Options = StringField.Options & {
|
4154
4200
|
/**
|
4155
4201
|
* Does the field allow async code?
|
4156
4202
|
* @defaultValue `false`
|
@@ -4159,7 +4205,7 @@ declare namespace JavaScriptField {
|
|
4159
4205
|
};
|
4160
4206
|
|
4161
4207
|
type DefaultOptions = SimpleMerge<
|
4162
|
-
|
4208
|
+
StringField.Options,
|
4163
4209
|
{
|
4164
4210
|
async: false;
|
4165
4211
|
}
|