From 6db3ce705e01405a201a795e5819b97e6808470f Mon Sep 17 00:00:00 2001 From: ksplat <63369542+ksplatdev@users.noreply.github.com> Date: Sun, 21 Nov 2021 14:19:55 -0500 Subject: [PATCH] DuckEngine 2 (#80) v2.0.0 Released Read CHANGELOG.md --- .eslintrc.json | 5 +- .github/workflows/build-docs.yml | 4 +- .github/workflows/format.yml | 4 +- .github/workflows/lint.yml | 6 +- CHANGELOG.1.2.0.md | 22 + CHANGELOG.2.0.0.md | 218 + CHANGELOG.md | 148 +- CONTRIBUTING.md | 2 +- README.md | 267 +- SECURITY.md | 4 +- branch_guidelines.md | 13 + docs/.nojekyll | 1 + docs/assets/css/main.css | 1 - docs/assets/css/main.css.map | 1 - docs/assets/highlight.css | 50 + docs/assets/icons.css | 1043 +++++ docs/assets/{images => }/icons.png | Bin docs/assets/{images => }/icons@2x.png | Bin docs/assets/js/main.js | 6 - docs/assets/js/search.js | 1 - docs/assets/main.js | 52 + docs/assets/search.js | 1 + docs/assets/style.css | 1388 +++++++ docs/assets/{images => }/widgets.png | Bin docs/assets/{images => }/widgets@2x.png | Bin .../core_animation_animation.Animation.html | 100 + ...imation_animationFrame.AnimationFrame.html | 24 + ...ion_animationManager.AnimationManager.html | 98 + ...imation_animationState.AnimationState.html | 28 + ...e_animation_stateMachine.StateMachine.html | 45 + docs/classes/core_camera_camera.Camera.html | 127 + docs/classes/core_camera_camera.default.html | 901 ----- .../core_cutscene_cutscene.Cutscene.html | 51 + .../core_cutscene_cutscene.default.html | 525 --- docs/classes/core_effect_effect.Effect.html | 62 + docs/classes/core_effect_effect.default.html | 418 -- ...fect_preset_explosion.ExplosionEffect.html | 49 + .../core_effect_preset_explosion.default.html | 451 --- .../core_effect_preset_smoke.SmokeEffect.html | 49 + .../core_effect_preset_smoke.default.html | 457 --- ...core_events_eventEmitter.EventEmitter.html | 1 + docs/classes/core_game.Game.html | 137 + docs/classes/core_game.default.html | 732 ---- .../core_gameobjects_circle.Circle.html | 236 ++ .../core_gameobjects_circle.default.html | 729 ---- ...ore_gameobjects_gameObject.GameObject.html | 243 ++ .../core_gameobjects_gameObject.default.html | 753 ---- ...gameobjects_interactive_button.Button.html | 263 ++ ...ore_gameobjects_interactive_text.Text.html | 239 ++ ...ts_misc_canvasModulate.CanvasModulate.html | 238 ++ ...meobjects_particles_particle.Particle.html | 253 ++ ...icles_particleEmitter.ParticleEmitter.html | 110 + docs/classes/core_gameobjects_rect.Rect.html | 238 ++ .../core_gameobjects_rect.default.html | 732 ---- .../core_gameobjects_roundrect.RoundRect.html | 240 ++ .../core_gameobjects_roundrect.default.html | 735 ---- .../core_gameobjects_sprite.Sprite.html | 249 ++ .../core_gameobjects_sprite.default.html | 817 ---- .../core_gameobjects_spritesheet.default.html | 1086 ----- docs/classes/core_group_group.Group.html | 85 + docs/classes/core_group_group.default.html | 635 --- docs/classes/core_input_input.Input.html | 24 + docs/classes/core_input_input.default.html | 528 --- ...ore_input_keyboardInput.KeyboardInput.html | 46 + docs/classes/core_input_models_key.Key.html | 46 + .../core_input_models_mouse.Mouse.html | 28 + .../core_input_mouseInput.MouseInput.html | 39 + .../core_interactive_button.default.html | 463 --- .../core_interactive_text.default.html | 300 -- .../core_lights_staticLight.StaticLight.html | 246 ++ .../core_lights_staticLight.default.html | 326 -- docs/classes/core_loader_loader.Loader.html | 82 + docs/classes/core_loader_loader.default.html | 189 - docs/classes/core_map_map.Map.html | 38 + docs/classes/core_map_map.default.html | 430 -- docs/classes/core_map_tile.Tile.html | 25 + .../classes/core_map_tilelayer.TileLayer.html | 30 + docs/classes/core_map_tilemap.TileMap.html | 42 + docs/classes/core_map_tilemap.default.html | 422 -- docs/classes/core_map_tileset.Tileset.html | 49 + docs/classes/core_math_vector2.Vector2.html | 286 ++ ...core_misc_pluginManager.PluginManager.html | 30 + .../core_models_displayList.DisplayList.html | 38 + .../core_models_physicsList.PhysicsList.html | 30 + docs/classes/core_models_texture.Texture.html | 93 + .../core_particles_particle.default.html | 815 ---- ...e_particles_particleContainer.default.html | 370 -- ...ore_particles_particleEmitter.default.html | 784 ---- .../core_physics_collider.Collider.html | 20 + .../core_physics_collider.default.html | 362 -- .../core_physics_models_area.Area.html | 234 ++ .../core_physics_models_hitbox.Hitbox.html | 125 + .../core_physics_physicsBody.PhysicsBody.html | 222 + ...cs_server_physicsServer.PhysicsServer.html | 21 + docs/classes/core_scene.Scene.html | 81 + docs/classes/core_scene.default.html | 1524 ------- docs/classes/core_sound_sound.default.html | 526 --- .../core_sound_soundPlayer.SoundPlayer.html | 53 + ...ore_storage_cacheManager.CacheManager.html | 48 + .../classes/core_storage_storage.default.html | 268 -- ...Types.GamepadInput.PlaystationMapping.html | 1 + ...x.Duck.Types.GamepadInput.XboxMapping.html | 1 + docs/global/Logo.png | Bin 0 -> 19565 bytes docs/global/Logo.xcf | Bin 0 -> 48486 bytes docs/global/Logo_Splash.png | Bin 0 -> 63720 bytes docs/global/Logo_Splash.xcf | Bin 0 -> 1065331 bytes docs/global/README.md | 12 + docs/index.html | 753 ++-- .../index.Duck.Cutscene.Config.html | 256 -- .../index.Duck.Cutscene.Instructions.html | 275 -- .../index.Duck.Cutscene.OnListener.html | 228 -- docs/interfaces/index.Duck.Cutscene.Step.html | 323 -- docs/interfaces/index.Duck.Game.Config.html | 317 -- docs/interfaces/index.Duck.Game.Stack.html | 219 - .../interfaces/index.Duck.Group.Listener.html | 246 -- .../index.Duck.Input.Controller.html | 327 -- .../interfaces/index.Duck.Input.Listener.html | 260 -- docs/interfaces/index.Duck.Input.Mapping.html | 323 -- ...ndex.Duck.Interactive.Button.Listener.html | 239 -- ...uck.Interactive.Button.ListenerReturn.html | 253 -- .../index.Duck.Interactive.Text.Config.html | 275 -- docs/interfaces/index.Duck.Misc.Scale.html | 216 - .../index.Duck.ParticleContainer.Bounds.html | 247 -- .../index.Duck.ParticleContainer.Physics.html | 205 - docs/interfaces/index.Duck.Sound.Config.html | 233 -- docs/interfaces/index.Duck.Sound.Sprite.html | 233 -- .../interfaces/index.Duck.Storage.Config.html | 233 -- docs/interfaces/index.Duck.Tilemap.Atlas.html | 179 - .../index.Duck.Types.Animation.Config.html | 24 + .../index.Duck.Types.Animation.FrameBase.html | 1 + .../index.Duck.Types.Cutscene.Config.html | 1 + ...ndex.Duck.Types.Cutscene.Instructions.html | 1 + .../index.Duck.Types.Cutscene.OnListener.html | 1 + .../index.Duck.Types.Cutscene.Step.html | 1 + .../index.Duck.Types.Game.Config.html | 52 + .../index.Duck.Types.Game.Plugin.html | 1 + .../index.Duck.Types.Game.Stack.html | 1 + .../index.Duck.Types.Group.Listener.html | 1 + ...uck.Types.Interactive.Button.Listener.html | 1 + ...pes.Interactive.Button.ListenerReturn.html | 1 + ...ex.Duck.Types.Interactive.Text.Config.html | 1 + ...ndex.Duck.Types.KeyboardInput.KeyBase.html | 1 + .../index.Duck.Types.Loader.StackItem.html | 1 + .../index.Duck.Types.Math.BoundsLike.html | 1 + .../index.Duck.Types.Math.Vector2Like.html | 1 + ...x.Duck.Types.Math.Vector2LikeOptional.html | 1 + .../index.Duck.Types.Misc.Scale.html | 1 + ...index.Duck.Types.MouseInput.MouseBase.html | 1 + ...x.Duck.Types.ParticleContainer.Bounds.html | 1 + ....Duck.Types.ParticleContainer.Physics.html | 1 + ...Duck.Types.ParticleEmitter.Offloaders.html | 1 + ...x.Duck.Types.PhysicsBody.AttachedBody.html | 1 + .../index.Duck.Types.PhysicsBody.Config.html | 1 + .../index.Duck.Types.Raycast.State.html | 1 + .../index.Duck.Types.Raycast.StateValue.html | 1 + .../index.Duck.Types.Sound.Config.html | 1 + .../index.Duck.Types.Sound.Sprite.html | 1 + .../index.Duck.Types.StateMachine.Config.html | 1 + ...uck.Types.StateMachine.ConnectionBase.html | 1 + ...ypes.StateMachine.ConnectionBaseValue.html | 1 + .../index.Duck.Types.Tilemap.Atlas.html | 1 + docs/modules.html | 241 +- docs/modules/core_animation_animation.html | 1 + .../core_animation_animationFrame.html | 1 + .../core_animation_animationManager.html | 1 + .../core_animation_animationState.html | 1 + docs/modules/core_animation_stateMachine.html | 1 + docs/modules/core_camera_camera.html | 115 +- docs/modules/core_cutscene_cutscene.html | 115 +- docs/modules/core_debug_debug.html | 157 +- docs/modules/core_effect_effect.html | 115 +- .../modules/core_effect_preset_explosion.html | 115 +- docs/modules/core_effect_preset_smoke.html | 115 +- docs/modules/core_events_eventEmitter.html | 1 + docs/modules/core_events_events.html | 1 + docs/modules/core_events_main_gameEvents.html | 1 + .../core_events_other_buttonEvents.html | 1 + .../core_events_other_cutsceneEvents.html | 1 + .../core_events_other_groupEvents.html | 1 + docs/modules/core_game.html | 115 +- docs/modules/core_gameobjects_circle.html | 115 +- docs/modules/core_gameobjects_gameObject.html | 115 +- .../core_gameobjects_interactive_button.html | 1 + .../core_gameobjects_interactive_text.html | 1 + .../core_gameobjects_misc_canvasModulate.html | 1 + .../core_gameobjects_particles_particle.html | 1 + ...gameobjects_particles_particleEmitter.html | 1 + docs/modules/core_gameobjects_rect.html | 115 +- docs/modules/core_gameobjects_roundrect.html | 115 +- docs/modules/core_gameobjects_sprite.html | 115 +- .../modules/core_gameobjects_spritesheet.html | 114 - docs/modules/core_group_group.html | 115 +- docs/modules/core_input_input.html | 115 +- docs/modules/core_input_keyboardInput.html | 1 + docs/modules/core_input_models_key.html | 1 + docs/modules/core_input_models_mouse.html | 1 + docs/modules/core_input_mouseInput.html | 1 + docs/modules/core_interactive_button.html | 114 - docs/modules/core_interactive_text.html | 114 - docs/modules/core_lights_staticLight.html | 115 +- docs/modules/core_loader_loader.html | 115 +- docs/modules/core_map_map.html | 115 +- docs/modules/core_map_tile.html | 1 + docs/modules/core_map_tilelayer.html | 1 + docs/modules/core_map_tilemap.html | 115 +- docs/modules/core_map_tileset.html | 1 + docs/modules/core_math_clamp.html | 155 +- docs/modules/core_math_lerp.html | 9 + docs/modules/core_math_randomFloat.html | 152 +- docs/modules/core_math_randomInt.html | 149 +- docs/modules/core_math_vector2.html | 1 + docs/modules/core_misc_pluginManager.html | 1 + docs/modules/core_models_displayList.html | 1 + docs/modules/core_models_physicsList.html | 1 + docs/modules/core_models_texture.html | 1 + docs/modules/core_particles_particle.html | 114 - .../core_particles_particleContainer.html | 114 - .../core_particles_particleEmitter.html | 114 - .../core_physics_circleToRectIntersect.html | 147 +- docs/modules/core_physics_collider.html | 115 +- .../core_physics_hitboxFaceIntersect.html | 1 + docs/modules/core_physics_models_area.html | 1 + docs/modules/core_physics_models_hitbox.html | 1 + docs/modules/core_physics_physicsBody.html | 1 + .../core_physics_rectToRectIntersect.html | 147 +- .../core_physics_server_physicsServer.html | 1 + docs/modules/core_scene.html | 115 +- docs/modules/core_sound_sound.html | 114 - docs/modules/core_sound_soundPlayer.html | 1 + docs/modules/core_storage_cacheManager.html | 1 + docs/modules/core_storage_storage.html | 114 - docs/modules/index.Duck.Class.Base.html | 219 - .../modules/index.Duck.Class.GameObjects.html | 275 -- .../modules/index.Duck.Class.Interactive.html | 219 - docs/modules/index.Duck.Class.Lights.html | 205 - docs/modules/index.Duck.Class.Maps.html | 205 - .../index.Duck.Class.PresetEffects.html | 219 - docs/modules/index.Duck.Class.html | 401 -- .../modules/index.Duck.Classes.Animation.html | 1 + docs/modules/index.Duck.Classes.Base.html | 1 + docs/modules/index.Duck.Classes.Cameras.html | 1 + .../index.Duck.Classes.Effects.Presets.html | 1 + docs/modules/index.Duck.Classes.Effects.html | 1 + ....Duck.Classes.GameObjects.Interactive.html | 1 + .../index.Duck.Classes.GameObjects.Misc.html | 1 + ...ex.Duck.Classes.GameObjects.Particles.html | 1 + .../index.Duck.Classes.GameObjects.html | 1 + .../index.Duck.Classes.Input.Models.html | 1 + docs/modules/index.Duck.Classes.Input.html | 1 + docs/modules/index.Duck.Classes.Lights.html | 1 + docs/modules/index.Duck.Classes.Map.html | 1 + docs/modules/index.Duck.Classes.Math.html | 1 + docs/modules/index.Duck.Classes.Misc.html | 1 + docs/modules/index.Duck.Classes.Models.html | 1 + .../index.Duck.Classes.Physics.Models.html | 1 + docs/modules/index.Duck.Classes.Physics.html | 1 + docs/modules/index.Duck.Classes.Sound.html | 1 + docs/modules/index.Duck.Classes.html | 5 + docs/modules/index.Duck.Collider.html | 182 - docs/modules/index.Duck.Cutscene.html | 203 - docs/modules/index.Duck.Game.html | 173 - docs/modules/index.Duck.Group.html | 219 - docs/modules/index.Duck.Helper.html | 248 -- docs/modules/index.Duck.Input.html | 199 - .../index.Duck.Interactive.Button.html | 255 -- docs/modules/index.Duck.Interactive.Text.html | 180 - docs/modules/index.Duck.Interactive.html | 175 - docs/modules/index.Duck.Layers.Rendering.html | 1 + docs/modules/index.Duck.Layers.html | 5 + docs/modules/index.Duck.Misc.html | 169 - .../modules/index.Duck.ParticleContainer.html | 173 - docs/modules/index.Duck.ParticleEmitter.html | 182 - docs/modules/index.Duck.Sound.html | 173 - docs/modules/index.Duck.Storage.html | 191 - docs/modules/index.Duck.Tilemap.html | 191 - .../index.Duck.TypeClasses.Animation.html | 1 + docs/modules/index.Duck.TypeClasses.Base.html | 1 + .../index.Duck.TypeClasses.Cameras.html | 1 + ...ndex.Duck.TypeClasses.Effects.Presets.html | 1 + .../index.Duck.TypeClasses.Effects.html | 1 + ...k.TypeClasses.GameObjects.Interactive.html | 1 + ...dex.Duck.TypeClasses.GameObjects.Misc.html | 1 + ...uck.TypeClasses.GameObjects.Particles.html | 1 + .../index.Duck.TypeClasses.GameObjects.html | 1 + .../index.Duck.TypeClasses.Input.Models.html | 1 + .../modules/index.Duck.TypeClasses.Input.html | 1 + .../index.Duck.TypeClasses.Lights.html | 1 + docs/modules/index.Duck.TypeClasses.Map.html | 1 + docs/modules/index.Duck.TypeClasses.Math.html | 1 + docs/modules/index.Duck.TypeClasses.Misc.html | 1 + .../index.Duck.TypeClasses.Models.html | 1 + ...index.Duck.TypeClasses.Physics.Models.html | 1 + .../index.Duck.TypeClasses.Physics.html | 1 + .../modules/index.Duck.TypeClasses.Sound.html | 1 + docs/modules/index.Duck.TypeClasses.html | 5 + docs/modules/index.Duck.Types.Animation.html | 1 + docs/modules/index.Duck.Types.Collider.html | 1 + docs/modules/index.Duck.Types.Cutscene.html | 1 + docs/modules/index.Duck.Types.Game.html | 1 + .../index.Duck.Types.GamepadInput.html | 1 + docs/modules/index.Duck.Types.Group.html | 1 + docs/modules/index.Duck.Types.Helper.html | 1 + .../index.Duck.Types.Interactive.Button.html | 1 + .../index.Duck.Types.Interactive.Text.html | 1 + .../modules/index.Duck.Types.Interactive.html | 1 + .../index.Duck.Types.KeyboardInput.html | 1 + docs/modules/index.Duck.Types.Loader.html | 1 + docs/modules/index.Duck.Types.Math.html | 1 + docs/modules/index.Duck.Types.Misc.html | 1 + docs/modules/index.Duck.Types.MouseInput.html | 1 + .../index.Duck.Types.ParticleContainer.html | 1 + .../index.Duck.Types.ParticleEmitter.html | 1 + .../modules/index.Duck.Types.PhysicsBody.html | 10 + docs/modules/index.Duck.Types.Raycast.html | 1 + docs/modules/index.Duck.Types.Sound.html | 1 + .../index.Duck.Types.StateMachine.html | 1 + docs/modules/index.Duck.Types.Texture.html | 1 + docs/modules/index.Duck.Types.Tilemap.html | 1 + docs/modules/index.Duck.Types.html | 5 + docs/modules/index.Duck.html | 205 +- docs/modules/index.html | 154 +- examples/ts/myScene.ts | 99 +- examples/ts/test.ts | 9 +- global/Logo.xcf | Bin 77593 -> 48486 bytes global/Logo_Splash.png | Bin 0 -> 63720 bytes global/Logo_Splash.xcf | Bin 0 -> 1065331 bytes itch.io-description.md | 125 + package-lock.json | 3578 ----------------- package.json | 25 +- scripts/build.sh | 17 +- src/base/amount.ts | 35 +- src/base/once.ts | 32 +- src/base/render.ts | 32 +- src/base/timer.ts | 74 + src/core/animation/animation.ts | 376 ++ src/core/animation/animationFrame.ts | 57 + src/core/animation/animationManager.ts | 266 ++ src/core/animation/animationState.ts | 73 + src/core/animation/stateMachine.ts | 171 + src/core/camera/camera.ts | 430 +- src/core/cutscene/cutscene.ts | 214 +- src/core/effect/effect.ts | 157 +- src/core/effect/preset/explosion.ts | 28 +- src/core/effect/preset/smoke.ts | 28 +- src/core/events/eventEmitter.ts | 22 + src/core/events/events.ts | 13 + src/core/events/main/gameEvents.ts | 23 + src/core/events/other/buttonEvents.ts | 7 + src/core/events/other/cutsceneEvents.ts | 7 + src/core/events/other/groupEvents.ts | 6 + src/core/game.ts | 523 ++- src/core/gameobjects/circle.ts | 55 +- src/core/gameobjects/gameObject.ts | 202 +- src/core/gameobjects/interactive/button.ts | 294 ++ src/core/gameobjects/interactive/text.ts | 136 + src/core/gameobjects/misc/canvasModulate.ts | 72 + src/core/gameobjects/particles/particle.ts | 231 ++ .../gameobjects/particles/particleEmitter.ts | 456 +++ src/core/gameobjects/rect.ts | 53 +- src/core/gameobjects/roundrect.ts | 81 +- src/core/gameobjects/sprite.ts | 205 +- src/core/gameobjects/spritesheet.ts | 161 - src/core/group/group.ts | 159 +- src/core/input/input.ts | 176 +- src/core/input/keyboardInput.ts | 157 + src/core/input/models/key.ts | 225 ++ src/core/input/models/mouse.ts | 126 + src/core/input/mouseInput.ts | 125 + src/core/interactive/button.ts | 235 -- src/core/interactive/text.ts | 79 - src/core/lights/staticLight.ts | 86 +- src/core/loader/loader.ts | 259 +- src/core/map/map.ts | 163 +- src/core/map/tile.ts | 57 + src/core/map/tilelayer.ts | 82 + src/core/map/tilemap.ts | 94 +- src/core/map/tileset.ts | 140 + src/core/math/clamp.ts | 8 + src/core/math/lerp.ts | 11 + src/core/math/randomFloat.ts | 11 +- src/core/math/randomInt.ts | 6 + src/core/math/vector2.ts | 711 ++++ src/core/misc/pluginManager.ts | 86 + src/core/models/displayList.ts | 115 + src/core/models/physicsList.ts | 94 + src/core/models/texture.ts | 203 + src/core/particles/particle.ts | 150 - src/core/particles/particleContainer.ts | 124 - src/core/particles/particleEmitter.ts | 214 - src/core/physics/circleToRectIntersect.ts | 26 +- src/core/physics/collider.ts | 210 +- src/core/physics/hitboxFaceIntersect.ts | 54 + src/core/physics/models/area.ts | 140 + src/core/physics/models/hitbox.ts | 403 ++ src/core/physics/physicsBody.ts | 900 +++++ src/core/physics/rectToRectIntersect.ts | 20 +- src/core/physics/server/physicsServer.ts | 68 + src/core/scene.ts | 664 ++- src/core/sound/sound.ts | 101 - src/core/sound/soundPlayer.ts | 182 + src/core/storage/cacheManager.ts | 135 + src/core/storage/storage.ts | 90 - src/helper/color/convertColorToRGBA.ts | 2 +- src/helper/color/hexToHSL.ts | 12 +- src/helper/color/hexToRGBA.ts | 5 +- src/helper/color/hslToRGB.ts | 2 +- src/helper/color/hslaToRGBA.ts | 2 +- src/helper/color/randomAlphaColor.ts | 9 +- src/helper/color/rgbToHSL.ts | 2 +- src/helper/color/rgbToRGBA.ts | 2 +- src/helper/color/rgbaToHSLA.ts | 2 +- src/helper/startup.ts | 6 +- src/helper/version.ts | 2 +- src/index.ts | 1359 +++++-- src/utils/averageArray.ts | 3 + src/utils/cloneClass.ts | 6 + src/utils/degToRadians.ts | 3 + src/utils/detectBrowser.ts | 63 + src/utils/extractNumbers.ts | 3 + src/utils/smoothArray.ts | 17 + src/utils/uniqueID.ts | 20 + tsconfig.json | 2 +- webpack.config.js | 38 + yarn.lock | 2696 +++++++++++++ 424 files changed, 22082 insertions(+), 37448 deletions(-) create mode 100644 CHANGELOG.1.2.0.md create mode 100644 CHANGELOG.2.0.0.md create mode 100644 branch_guidelines.md create mode 100644 docs/.nojekyll delete mode 100644 docs/assets/css/main.css delete mode 100644 docs/assets/css/main.css.map create mode 100644 docs/assets/highlight.css create mode 100644 docs/assets/icons.css rename docs/assets/{images => }/icons.png (100%) rename docs/assets/{images => }/icons@2x.png (100%) delete mode 100644 docs/assets/js/main.js delete mode 100644 docs/assets/js/search.js create mode 100644 docs/assets/main.js create mode 100644 docs/assets/search.js create mode 100644 docs/assets/style.css rename docs/assets/{images => }/widgets.png (100%) rename docs/assets/{images => }/widgets@2x.png (100%) create mode 100644 docs/classes/core_animation_animation.Animation.html create mode 100644 docs/classes/core_animation_animationFrame.AnimationFrame.html create mode 100644 docs/classes/core_animation_animationManager.AnimationManager.html create mode 100644 docs/classes/core_animation_animationState.AnimationState.html create mode 100644 docs/classes/core_animation_stateMachine.StateMachine.html create mode 100644 docs/classes/core_camera_camera.Camera.html delete mode 100644 docs/classes/core_camera_camera.default.html create mode 100644 docs/classes/core_cutscene_cutscene.Cutscene.html delete mode 100644 docs/classes/core_cutscene_cutscene.default.html create mode 100644 docs/classes/core_effect_effect.Effect.html delete mode 100644 docs/classes/core_effect_effect.default.html create mode 100644 docs/classes/core_effect_preset_explosion.ExplosionEffect.html delete mode 100644 docs/classes/core_effect_preset_explosion.default.html create mode 100644 docs/classes/core_effect_preset_smoke.SmokeEffect.html delete mode 100644 docs/classes/core_effect_preset_smoke.default.html create mode 100644 docs/classes/core_events_eventEmitter.EventEmitter.html create mode 100644 docs/classes/core_game.Game.html delete mode 100644 docs/classes/core_game.default.html create mode 100644 docs/classes/core_gameobjects_circle.Circle.html delete mode 100644 docs/classes/core_gameobjects_circle.default.html create mode 100644 docs/classes/core_gameobjects_gameObject.GameObject.html delete mode 100644 docs/classes/core_gameobjects_gameObject.default.html create mode 100644 docs/classes/core_gameobjects_interactive_button.Button.html create mode 100644 docs/classes/core_gameobjects_interactive_text.Text.html create mode 100644 docs/classes/core_gameobjects_misc_canvasModulate.CanvasModulate.html create mode 100644 docs/classes/core_gameobjects_particles_particle.Particle.html create mode 100644 docs/classes/core_gameobjects_particles_particleEmitter.ParticleEmitter.html create mode 100644 docs/classes/core_gameobjects_rect.Rect.html delete mode 100644 docs/classes/core_gameobjects_rect.default.html create mode 100644 docs/classes/core_gameobjects_roundrect.RoundRect.html delete mode 100644 docs/classes/core_gameobjects_roundrect.default.html create mode 100644 docs/classes/core_gameobjects_sprite.Sprite.html delete mode 100644 docs/classes/core_gameobjects_sprite.default.html delete mode 100644 docs/classes/core_gameobjects_spritesheet.default.html create mode 100644 docs/classes/core_group_group.Group.html delete mode 100644 docs/classes/core_group_group.default.html create mode 100644 docs/classes/core_input_input.Input.html delete mode 100644 docs/classes/core_input_input.default.html create mode 100644 docs/classes/core_input_keyboardInput.KeyboardInput.html create mode 100644 docs/classes/core_input_models_key.Key.html create mode 100644 docs/classes/core_input_models_mouse.Mouse.html create mode 100644 docs/classes/core_input_mouseInput.MouseInput.html delete mode 100644 docs/classes/core_interactive_button.default.html delete mode 100644 docs/classes/core_interactive_text.default.html create mode 100644 docs/classes/core_lights_staticLight.StaticLight.html delete mode 100644 docs/classes/core_lights_staticLight.default.html create mode 100644 docs/classes/core_loader_loader.Loader.html delete mode 100644 docs/classes/core_loader_loader.default.html create mode 100644 docs/classes/core_map_map.Map.html delete mode 100644 docs/classes/core_map_map.default.html create mode 100644 docs/classes/core_map_tile.Tile.html create mode 100644 docs/classes/core_map_tilelayer.TileLayer.html create mode 100644 docs/classes/core_map_tilemap.TileMap.html delete mode 100644 docs/classes/core_map_tilemap.default.html create mode 100644 docs/classes/core_map_tileset.Tileset.html create mode 100644 docs/classes/core_math_vector2.Vector2.html create mode 100644 docs/classes/core_misc_pluginManager.PluginManager.html create mode 100644 docs/classes/core_models_displayList.DisplayList.html create mode 100644 docs/classes/core_models_physicsList.PhysicsList.html create mode 100644 docs/classes/core_models_texture.Texture.html delete mode 100644 docs/classes/core_particles_particle.default.html delete mode 100644 docs/classes/core_particles_particleContainer.default.html delete mode 100644 docs/classes/core_particles_particleEmitter.default.html create mode 100644 docs/classes/core_physics_collider.Collider.html delete mode 100644 docs/classes/core_physics_collider.default.html create mode 100644 docs/classes/core_physics_models_area.Area.html create mode 100644 docs/classes/core_physics_models_hitbox.Hitbox.html create mode 100644 docs/classes/core_physics_physicsBody.PhysicsBody.html create mode 100644 docs/classes/core_physics_server_physicsServer.PhysicsServer.html create mode 100644 docs/classes/core_scene.Scene.html delete mode 100644 docs/classes/core_scene.default.html delete mode 100644 docs/classes/core_sound_sound.default.html create mode 100644 docs/classes/core_sound_soundPlayer.SoundPlayer.html create mode 100644 docs/classes/core_storage_cacheManager.CacheManager.html delete mode 100644 docs/classes/core_storage_storage.default.html create mode 100644 docs/enums/index.Duck.Types.GamepadInput.PlaystationMapping.html create mode 100644 docs/enums/index.Duck.Types.GamepadInput.XboxMapping.html create mode 100644 docs/global/Logo.png create mode 100644 docs/global/Logo.xcf create mode 100644 docs/global/Logo_Splash.png create mode 100644 docs/global/Logo_Splash.xcf create mode 100644 docs/global/README.md delete mode 100644 docs/interfaces/index.Duck.Cutscene.Config.html delete mode 100644 docs/interfaces/index.Duck.Cutscene.Instructions.html delete mode 100644 docs/interfaces/index.Duck.Cutscene.OnListener.html delete mode 100644 docs/interfaces/index.Duck.Cutscene.Step.html delete mode 100644 docs/interfaces/index.Duck.Game.Config.html delete mode 100644 docs/interfaces/index.Duck.Game.Stack.html delete mode 100644 docs/interfaces/index.Duck.Group.Listener.html delete mode 100644 docs/interfaces/index.Duck.Input.Controller.html delete mode 100644 docs/interfaces/index.Duck.Input.Listener.html delete mode 100644 docs/interfaces/index.Duck.Input.Mapping.html delete mode 100644 docs/interfaces/index.Duck.Interactive.Button.Listener.html delete mode 100644 docs/interfaces/index.Duck.Interactive.Button.ListenerReturn.html delete mode 100644 docs/interfaces/index.Duck.Interactive.Text.Config.html delete mode 100644 docs/interfaces/index.Duck.Misc.Scale.html delete mode 100644 docs/interfaces/index.Duck.ParticleContainer.Bounds.html delete mode 100644 docs/interfaces/index.Duck.ParticleContainer.Physics.html delete mode 100644 docs/interfaces/index.Duck.Sound.Config.html delete mode 100644 docs/interfaces/index.Duck.Sound.Sprite.html delete mode 100644 docs/interfaces/index.Duck.Storage.Config.html delete mode 100644 docs/interfaces/index.Duck.Tilemap.Atlas.html create mode 100644 docs/interfaces/index.Duck.Types.Animation.Config.html create mode 100644 docs/interfaces/index.Duck.Types.Animation.FrameBase.html create mode 100644 docs/interfaces/index.Duck.Types.Cutscene.Config.html create mode 100644 docs/interfaces/index.Duck.Types.Cutscene.Instructions.html create mode 100644 docs/interfaces/index.Duck.Types.Cutscene.OnListener.html create mode 100644 docs/interfaces/index.Duck.Types.Cutscene.Step.html create mode 100644 docs/interfaces/index.Duck.Types.Game.Config.html create mode 100644 docs/interfaces/index.Duck.Types.Game.Plugin.html create mode 100644 docs/interfaces/index.Duck.Types.Game.Stack.html create mode 100644 docs/interfaces/index.Duck.Types.Group.Listener.html create mode 100644 docs/interfaces/index.Duck.Types.Interactive.Button.Listener.html create mode 100644 docs/interfaces/index.Duck.Types.Interactive.Button.ListenerReturn.html create mode 100644 docs/interfaces/index.Duck.Types.Interactive.Text.Config.html create mode 100644 docs/interfaces/index.Duck.Types.KeyboardInput.KeyBase.html create mode 100644 docs/interfaces/index.Duck.Types.Loader.StackItem.html create mode 100644 docs/interfaces/index.Duck.Types.Math.BoundsLike.html create mode 100644 docs/interfaces/index.Duck.Types.Math.Vector2Like.html create mode 100644 docs/interfaces/index.Duck.Types.Math.Vector2LikeOptional.html create mode 100644 docs/interfaces/index.Duck.Types.Misc.Scale.html create mode 100644 docs/interfaces/index.Duck.Types.MouseInput.MouseBase.html create mode 100644 docs/interfaces/index.Duck.Types.ParticleContainer.Bounds.html create mode 100644 docs/interfaces/index.Duck.Types.ParticleContainer.Physics.html create mode 100644 docs/interfaces/index.Duck.Types.ParticleEmitter.Offloaders.html create mode 100644 docs/interfaces/index.Duck.Types.PhysicsBody.AttachedBody.html create mode 100644 docs/interfaces/index.Duck.Types.PhysicsBody.Config.html create mode 100644 docs/interfaces/index.Duck.Types.Raycast.State.html create mode 100644 docs/interfaces/index.Duck.Types.Raycast.StateValue.html create mode 100644 docs/interfaces/index.Duck.Types.Sound.Config.html create mode 100644 docs/interfaces/index.Duck.Types.Sound.Sprite.html create mode 100644 docs/interfaces/index.Duck.Types.StateMachine.Config.html create mode 100644 docs/interfaces/index.Duck.Types.StateMachine.ConnectionBase.html create mode 100644 docs/interfaces/index.Duck.Types.StateMachine.ConnectionBaseValue.html create mode 100644 docs/interfaces/index.Duck.Types.Tilemap.Atlas.html create mode 100644 docs/modules/core_animation_animation.html create mode 100644 docs/modules/core_animation_animationFrame.html create mode 100644 docs/modules/core_animation_animationManager.html create mode 100644 docs/modules/core_animation_animationState.html create mode 100644 docs/modules/core_animation_stateMachine.html create mode 100644 docs/modules/core_events_eventEmitter.html create mode 100644 docs/modules/core_events_events.html create mode 100644 docs/modules/core_events_main_gameEvents.html create mode 100644 docs/modules/core_events_other_buttonEvents.html create mode 100644 docs/modules/core_events_other_cutsceneEvents.html create mode 100644 docs/modules/core_events_other_groupEvents.html create mode 100644 docs/modules/core_gameobjects_interactive_button.html create mode 100644 docs/modules/core_gameobjects_interactive_text.html create mode 100644 docs/modules/core_gameobjects_misc_canvasModulate.html create mode 100644 docs/modules/core_gameobjects_particles_particle.html create mode 100644 docs/modules/core_gameobjects_particles_particleEmitter.html delete mode 100644 docs/modules/core_gameobjects_spritesheet.html create mode 100644 docs/modules/core_input_keyboardInput.html create mode 100644 docs/modules/core_input_models_key.html create mode 100644 docs/modules/core_input_models_mouse.html create mode 100644 docs/modules/core_input_mouseInput.html delete mode 100644 docs/modules/core_interactive_button.html delete mode 100644 docs/modules/core_interactive_text.html create mode 100644 docs/modules/core_map_tile.html create mode 100644 docs/modules/core_map_tilelayer.html create mode 100644 docs/modules/core_map_tileset.html create mode 100644 docs/modules/core_math_lerp.html create mode 100644 docs/modules/core_math_vector2.html create mode 100644 docs/modules/core_misc_pluginManager.html create mode 100644 docs/modules/core_models_displayList.html create mode 100644 docs/modules/core_models_physicsList.html create mode 100644 docs/modules/core_models_texture.html delete mode 100644 docs/modules/core_particles_particle.html delete mode 100644 docs/modules/core_particles_particleContainer.html delete mode 100644 docs/modules/core_particles_particleEmitter.html create mode 100644 docs/modules/core_physics_hitboxFaceIntersect.html create mode 100644 docs/modules/core_physics_models_area.html create mode 100644 docs/modules/core_physics_models_hitbox.html create mode 100644 docs/modules/core_physics_physicsBody.html create mode 100644 docs/modules/core_physics_server_physicsServer.html delete mode 100644 docs/modules/core_sound_sound.html create mode 100644 docs/modules/core_sound_soundPlayer.html create mode 100644 docs/modules/core_storage_cacheManager.html delete mode 100644 docs/modules/core_storage_storage.html delete mode 100644 docs/modules/index.Duck.Class.Base.html delete mode 100644 docs/modules/index.Duck.Class.GameObjects.html delete mode 100644 docs/modules/index.Duck.Class.Interactive.html delete mode 100644 docs/modules/index.Duck.Class.Lights.html delete mode 100644 docs/modules/index.Duck.Class.Maps.html delete mode 100644 docs/modules/index.Duck.Class.PresetEffects.html delete mode 100644 docs/modules/index.Duck.Class.html create mode 100644 docs/modules/index.Duck.Classes.Animation.html create mode 100644 docs/modules/index.Duck.Classes.Base.html create mode 100644 docs/modules/index.Duck.Classes.Cameras.html create mode 100644 docs/modules/index.Duck.Classes.Effects.Presets.html create mode 100644 docs/modules/index.Duck.Classes.Effects.html create mode 100644 docs/modules/index.Duck.Classes.GameObjects.Interactive.html create mode 100644 docs/modules/index.Duck.Classes.GameObjects.Misc.html create mode 100644 docs/modules/index.Duck.Classes.GameObjects.Particles.html create mode 100644 docs/modules/index.Duck.Classes.GameObjects.html create mode 100644 docs/modules/index.Duck.Classes.Input.Models.html create mode 100644 docs/modules/index.Duck.Classes.Input.html create mode 100644 docs/modules/index.Duck.Classes.Lights.html create mode 100644 docs/modules/index.Duck.Classes.Map.html create mode 100644 docs/modules/index.Duck.Classes.Math.html create mode 100644 docs/modules/index.Duck.Classes.Misc.html create mode 100644 docs/modules/index.Duck.Classes.Models.html create mode 100644 docs/modules/index.Duck.Classes.Physics.Models.html create mode 100644 docs/modules/index.Duck.Classes.Physics.html create mode 100644 docs/modules/index.Duck.Classes.Sound.html create mode 100644 docs/modules/index.Duck.Classes.html delete mode 100644 docs/modules/index.Duck.Collider.html delete mode 100644 docs/modules/index.Duck.Cutscene.html delete mode 100644 docs/modules/index.Duck.Game.html delete mode 100644 docs/modules/index.Duck.Group.html delete mode 100644 docs/modules/index.Duck.Helper.html delete mode 100644 docs/modules/index.Duck.Input.html delete mode 100644 docs/modules/index.Duck.Interactive.Button.html delete mode 100644 docs/modules/index.Duck.Interactive.Text.html delete mode 100644 docs/modules/index.Duck.Interactive.html create mode 100644 docs/modules/index.Duck.Layers.Rendering.html create mode 100644 docs/modules/index.Duck.Layers.html delete mode 100644 docs/modules/index.Duck.Misc.html delete mode 100644 docs/modules/index.Duck.ParticleContainer.html delete mode 100644 docs/modules/index.Duck.ParticleEmitter.html delete mode 100644 docs/modules/index.Duck.Sound.html delete mode 100644 docs/modules/index.Duck.Storage.html delete mode 100644 docs/modules/index.Duck.Tilemap.html create mode 100644 docs/modules/index.Duck.TypeClasses.Animation.html create mode 100644 docs/modules/index.Duck.TypeClasses.Base.html create mode 100644 docs/modules/index.Duck.TypeClasses.Cameras.html create mode 100644 docs/modules/index.Duck.TypeClasses.Effects.Presets.html create mode 100644 docs/modules/index.Duck.TypeClasses.Effects.html create mode 100644 docs/modules/index.Duck.TypeClasses.GameObjects.Interactive.html create mode 100644 docs/modules/index.Duck.TypeClasses.GameObjects.Misc.html create mode 100644 docs/modules/index.Duck.TypeClasses.GameObjects.Particles.html create mode 100644 docs/modules/index.Duck.TypeClasses.GameObjects.html create mode 100644 docs/modules/index.Duck.TypeClasses.Input.Models.html create mode 100644 docs/modules/index.Duck.TypeClasses.Input.html create mode 100644 docs/modules/index.Duck.TypeClasses.Lights.html create mode 100644 docs/modules/index.Duck.TypeClasses.Map.html create mode 100644 docs/modules/index.Duck.TypeClasses.Math.html create mode 100644 docs/modules/index.Duck.TypeClasses.Misc.html create mode 100644 docs/modules/index.Duck.TypeClasses.Models.html create mode 100644 docs/modules/index.Duck.TypeClasses.Physics.Models.html create mode 100644 docs/modules/index.Duck.TypeClasses.Physics.html create mode 100644 docs/modules/index.Duck.TypeClasses.Sound.html create mode 100644 docs/modules/index.Duck.TypeClasses.html create mode 100644 docs/modules/index.Duck.Types.Animation.html create mode 100644 docs/modules/index.Duck.Types.Collider.html create mode 100644 docs/modules/index.Duck.Types.Cutscene.html create mode 100644 docs/modules/index.Duck.Types.Game.html create mode 100644 docs/modules/index.Duck.Types.GamepadInput.html create mode 100644 docs/modules/index.Duck.Types.Group.html create mode 100644 docs/modules/index.Duck.Types.Helper.html create mode 100644 docs/modules/index.Duck.Types.Interactive.Button.html create mode 100644 docs/modules/index.Duck.Types.Interactive.Text.html create mode 100644 docs/modules/index.Duck.Types.Interactive.html create mode 100644 docs/modules/index.Duck.Types.KeyboardInput.html create mode 100644 docs/modules/index.Duck.Types.Loader.html create mode 100644 docs/modules/index.Duck.Types.Math.html create mode 100644 docs/modules/index.Duck.Types.Misc.html create mode 100644 docs/modules/index.Duck.Types.MouseInput.html create mode 100644 docs/modules/index.Duck.Types.ParticleContainer.html create mode 100644 docs/modules/index.Duck.Types.ParticleEmitter.html create mode 100644 docs/modules/index.Duck.Types.PhysicsBody.html create mode 100644 docs/modules/index.Duck.Types.Raycast.html create mode 100644 docs/modules/index.Duck.Types.Sound.html create mode 100644 docs/modules/index.Duck.Types.StateMachine.html create mode 100644 docs/modules/index.Duck.Types.Texture.html create mode 100644 docs/modules/index.Duck.Types.Tilemap.html create mode 100644 docs/modules/index.Duck.Types.html create mode 100644 global/Logo_Splash.png create mode 100644 global/Logo_Splash.xcf create mode 100644 itch.io-description.md delete mode 100644 package-lock.json create mode 100644 src/base/timer.ts create mode 100644 src/core/animation/animation.ts create mode 100644 src/core/animation/animationFrame.ts create mode 100644 src/core/animation/animationManager.ts create mode 100644 src/core/animation/animationState.ts create mode 100644 src/core/animation/stateMachine.ts create mode 100644 src/core/events/eventEmitter.ts create mode 100644 src/core/events/events.ts create mode 100644 src/core/events/main/gameEvents.ts create mode 100644 src/core/events/other/buttonEvents.ts create mode 100644 src/core/events/other/cutsceneEvents.ts create mode 100644 src/core/events/other/groupEvents.ts create mode 100644 src/core/gameobjects/interactive/button.ts create mode 100644 src/core/gameobjects/interactive/text.ts create mode 100644 src/core/gameobjects/misc/canvasModulate.ts create mode 100644 src/core/gameobjects/particles/particle.ts create mode 100644 src/core/gameobjects/particles/particleEmitter.ts delete mode 100644 src/core/gameobjects/spritesheet.ts create mode 100644 src/core/input/keyboardInput.ts create mode 100644 src/core/input/models/key.ts create mode 100644 src/core/input/models/mouse.ts create mode 100644 src/core/input/mouseInput.ts delete mode 100644 src/core/interactive/button.ts delete mode 100644 src/core/interactive/text.ts create mode 100644 src/core/map/tile.ts create mode 100644 src/core/map/tilelayer.ts create mode 100644 src/core/map/tileset.ts create mode 100644 src/core/math/lerp.ts create mode 100644 src/core/math/vector2.ts create mode 100644 src/core/misc/pluginManager.ts create mode 100644 src/core/models/displayList.ts create mode 100644 src/core/models/physicsList.ts create mode 100644 src/core/models/texture.ts delete mode 100644 src/core/particles/particle.ts delete mode 100644 src/core/particles/particleContainer.ts delete mode 100644 src/core/particles/particleEmitter.ts create mode 100644 src/core/physics/hitboxFaceIntersect.ts create mode 100644 src/core/physics/models/area.ts create mode 100644 src/core/physics/models/hitbox.ts create mode 100644 src/core/physics/physicsBody.ts create mode 100644 src/core/physics/server/physicsServer.ts delete mode 100644 src/core/sound/sound.ts create mode 100644 src/core/sound/soundPlayer.ts create mode 100644 src/core/storage/cacheManager.ts delete mode 100644 src/core/storage/storage.ts create mode 100644 src/utils/averageArray.ts create mode 100644 src/utils/cloneClass.ts create mode 100644 src/utils/degToRadians.ts create mode 100644 src/utils/detectBrowser.ts create mode 100644 src/utils/extractNumbers.ts create mode 100644 src/utils/smoothArray.ts create mode 100644 src/utils/uniqueID.ts create mode 100644 yarn.lock diff --git a/.eslintrc.json b/.eslintrc.json index b2f5473b..a838d5b4 100644 --- a/.eslintrc.json +++ b/.eslintrc.json @@ -31,6 +31,9 @@ "src/helper/", "docs/", "release", - "webpack.config.js" + "webpack.config.js", + "webpack.window.config.js", + "tests/**/*", + "webpack.es5.config.js" ] } diff --git a/.github/workflows/build-docs.yml b/.github/workflows/build-docs.yml index e066b7d3..bc1678fd 100644 --- a/.github/workflows/build-docs.yml +++ b/.github/workflows/build-docs.yml @@ -17,5 +17,5 @@ jobs: uses: actions/setup-node@v1 with: node-version: '14.x' - - run: npm ci - - run: npm run build:docs \ No newline at end of file + - run: npx yarn install --frozen-lockfile + - run: npx yarn run build:docs \ No newline at end of file diff --git a/.github/workflows/format.yml b/.github/workflows/format.yml index 3fd74dbc..607287a9 100644 --- a/.github/workflows/format.yml +++ b/.github/workflows/format.yml @@ -17,5 +17,5 @@ jobs: uses: actions/setup-node@v1 with: node-version: '14.x' - - run: npm ci - - run: npm run format \ No newline at end of file + - run: npx yarn install --frozen-lockfile + - run: npx yarn run format \ No newline at end of file diff --git a/.github/workflows/lint.yml b/.github/workflows/lint.yml index 8debd81b..8afbba5d 100644 --- a/.github/workflows/lint.yml +++ b/.github/workflows/lint.yml @@ -17,9 +17,9 @@ jobs: uses: actions/setup-node@v1 with: node-version: '14.x' - - run: npm ci + - run: npx yarn install --frozen-lockfile - run: echo "Linting" - - run: npm run lint + - run: npx yarn run lint - run: echo "Fixing" - - run: npm run lint:fix + - run: npx yarn run lint:fix - run: echo "Done" \ No newline at end of file diff --git a/CHANGELOG.1.2.0.md b/CHANGELOG.1.2.0.md new file mode 100644 index 00000000..1da09f95 --- /dev/null +++ b/CHANGELOG.1.2.0.md @@ -0,0 +1,22 @@ +# v1.2.0 Changelog - 2021-6-27 + +## Added + +- Map + - Added a Map class that is to be extended for code reusability +- Particles + - Added ParticleContainer class +- Effects + - Added new Effect class + - Added Explosion and Smoke preset effect +- Scene + - Added effect to add method + - Added presetEffect object to add method + +## Changed + +- TileMap + - TileMap class now extends the new Map class +- Misc + - Updated dependencies + - Changed version diff --git a/CHANGELOG.2.0.0.md b/CHANGELOG.2.0.0.md new file mode 100644 index 00000000..d1e25f9b --- /dev/null +++ b/CHANGELOG.2.0.0.md @@ -0,0 +1,218 @@ +# v2.0.0 Changelog - 2021-11-20 + +## Added + +- GameObjects + - Added zIndex and visible properties + - Added new misc gameobject CanvasModulate + - Added internalRaycasts for checking if it is colliding with an object + - Added isColliding, isOnFloor, isOnCeiling, and isOnWall methods + - Added texture prop + - Added type generic to GameObject for Texture class + - Added attachTo, attachChild, detachFrom, detachChild methods + - Added isAttached and attachedChildren properties + - Rect, RoundRect, Circle, StaticLight, CanvasModulate + - Added texture colors support + - Sprite + - Added textureKey parameter which is the key of a preloaded texture loaded with scene.loader + - Added anims property which is an AnimationManager + - Added defaultAnimation property which is a default animation that is created on init + - Added all properties from SpriteSheet to Sprite as SpriteSheet class has been removed and replaced with Sprite class + - Particle + - Added texture color and image support + - Now extends PhysicsObject which adds a lot more methods and properties (check [docs](https://ksplatdev.github.io/DuckEngine/)) +- Map + - Added id, zIndex, and visible properties +- Core + - Added id, zIndex, and visible properties to all renderable objects + - Added better rendering with depth sorting and only rendering and updating objects that are set to be visible + - Added ability to preload assets + - Added events and EventEmitter +- New Classes + - Models + - Added DisplayList class to manage renderable objects + - Added Texture to save and load images and colors + - Physics Misc + - Added Area class to detect intersections with other PhysicsBody hitboxes + - Misc + - Added PluginManager Class + - Math + - Added Vector2 class to manage coordinates and more + - Input + - KeyboardInput + - MouseInput + - Models + - Key + - Mouse + - GameObjects + - Misc + - Added CanvasModulate with zIndex of 1 which fills up the entire canvas with a color +- Game + - Config + - Added physics object option + - Added roundPixels option + - Added pauseRenderingOnBlur + - Added onPauseRendering + - Added onResumeRendering + - Added splashScreen object option + - Added eventEmitter property + - Added pluginManager property + - Added isRendering property + - Added fps property which is the current fps + - Added smoothDeltaTime property which is the smoothed out version of deltaTime + - Added browser property which is the user's browser + - Added "start sequence" to start method + - Start Sequence: + - Show splash screen + - Preload all assets from all scenes + - Create all assets from all scenes +- Scene + - Added preload and create method + - Added displayList property + - Added loader property + - Added misc.canvasModulate to add property + - Tools + - Added math property + - Added createVector function to tools.math + - Added vector property to tools.math which is a reference to the Vector2 class + - Add + - Added misc to gameobjects property +- Physics + - Added PhysicsServer class + - Added PhysicsBody class + - Added Hitbox class + - Collider + - Added support for group class as a collidesWith +- Input + - Added createKeyboardInput method to create a KeyBoardInput +- Loader + - Added constructor with scene parameter + - Added loadJSON, loadHTML, loadXML, loadFont, and loadAudio async methods + - Added imageStack, jsonStack, htmlStack, xmlStack, fontStack, and audioStack public properties +- Camera + - Added lerpX and lerpY to startFollow method + - Added cull method to only render certain objects + - Added autoCull method to only render in view objects, aka Frustum Culling +- Effect + - Added id, zIndex, and visible properties +- Math + - Added lerp function + - Added Vector2 class +- Misc + - Added renderableObject type to Duck.Types + - Added jsdoc comments + - Added Duck.TypeClasses which holds all of the classes as types + - Added Duck.Classes which holds all of the classes as constants + - Added Duck.Types which holds all of the types needed by classes + - Added Duck.Types.Math which holds all math related types such as Vector2Like, BoundsLike, and Vector2LikeOptional + - Added Loader and Texture namespaces to Duck.Types + - Added Duck.Layers + +## Changed + +- GameObjects + - Extends PhysicsBody class + - Moved most methods and properties to PhysicsBody + - Renamed draw method to _draw which is a public method, but should *not* be called manually + - Collider should not be updated manually, automatically updated in scene.physicsServer + - Changed how delta time is applied to velocity + - Changed velocity value to be in pixels per second + - SpriteSheet class has been removed and replaced with Sprite class + - Removed applyFilter from Sprite + - Changed how IDs are generated +- Core + - Game loop now uses displayList to render all visible renderable objects + - Reworked how assets are loaded and created + - All private properties and methods in all classes are either public or protected + - All PhysicsBodies now use Game.smoothDeltaTime instead of Game.deltaTime +- Game + - Improved AutoCanvas + - Typescript: canvas and ctx properties are never undefined + - Moved scene.currentCamera.begin and end to if visible condition + - Changed start method to be async + - Changed how delta time is calculated +- Scene + - Tools + - Moved randomInt and randomFloat to math + - Renamed this.add.sound to this.add.soundPlayer +- Physics + - Collider + - Colliders now use hitboxes instead of GameObjects + - Changed collider.shape to collider.object + - Changed collider.update diffCollidesWith parameter to be required and renamed to updatedCollidesWith + - Changed collider.update to collider.__update which shouldn't be called manually as it is called by PhysicsServer + - Changed collider.shape to collider.hitbox + - Reworked how colliders work +- StaticLight + - Made class extend GameObject class +- ParticleEmitter + - Renamed offload to offloadBounds which takes a Vector2LikeOptional +- Interactive + - Button and Text now extend the GameObject class + - Button default zIndex is set to 4 + - Text default zIndex is set to 5 + - Text width and height properties are correctly set using context.measureText + - Buttons now can be interacted with even with an active camera + - Button.scene is now a public property +- Input + - Changed how Input works, now works as a base class where you can create different inputs from + - Now uses Events and EventEmitter to work out of a loop +- Camera + - Made viewport property public + - Renamed follow method to startFollow +- Map + - Changed all private properties to be public +- Sound + - Renamed Sound class to SoundPlayer +- Loader + - Changed static method load to non-static loadTexture method +- Misc + - Changed all classes that included the game property to be a public property + - File Structure + - Moved particles and interactive folders to gameobjects folder + - Modified start message + - Changed project from npm to yarn + - Changed build script + - Updated README.md + - Updated security policy + - Updated dev dependencies + +## Removed + +- GameObjects + - Removed props x and y and changed to position which is a Vector2 + - Removed props vx and vy and changed to velocity which is a Vector2 + - Removed fillColor prop (now is called texture) + - Removed most methods and properties from GameObject as it now extends PhysicsBody which as all removed methods and properties and more +- Particle + - Removed props floatVX and floatVY and changed to floatVelocity Vector2 +- Scene + - Removed render method + - Removed adding itself to game scene stack as that produced duplicate scenes +- Math + - Removed Duck.Types.Helper.alphaValue return type from randomFloat +- StaticLight + - Removed x and y props, now is position vector2 +- Interactive + - Removed x and y props, now is position vector2 +- ParticleEmitter + - Removed draw method + - Removed offload method as it has been renamed and changed to offloadBounds +- Input + - Removed all methods and properties excluding game property +- Camera + - Removed scrollToZoom method +- Removed Classes + - ParticleContainer + - SpriteSheet (Moved its functionality to Sprite) + - DuckStorage + +## Fixed + +- Fixed "bouncy" and "laggy" rect to round-rect collision response [#16](https://github.com/ksplatdev/DuckEngine/issues/16) +- Fixed Button unable to be interacted with if there is an active camera +- Fixed scene adding itself to game scene stack as that produced duplicate scenes + +## Bugs + +## [Security Policy](SECURITY.md) diff --git a/CHANGELOG.md b/CHANGELOG.md index 132b68d2..768f7b89 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,149 +1,7 @@ # DuckEngine Changelog -Old Versions that are over 5 versions behind will be removed. +Only [supported versions](SECURITY.md#Supported\Versions)' changelogs will be added. -## 1.2.0 +## [2.0.0](CHANGELOG.2.0.0.md) -1. Maps - 1. Added A Map class that is to be extended for code reusability - 2. Made tilemap extend new Map Class -2. Added ParticleContainer class -3. Added new Effect class -4. Preset Effects - 1. Added Explosion preset effect - 2. Added Smoke preset effect -5. Scene - 1. Added effect to add method - 2. Added presetEffect object to add method -6. Misc - 1. Updated dependencies - 2. Changed Version - -## 1.1.0 - -1. Game - 1. Added deltaTime parameter to scene update and render methods - 2. Fixed mobile dpr scaling while fullscreen - 3. Removed timeout/delay when exiting fullscreen with unfullscreen method -2. Base / Render (Scene extends this class) - 1. Added deltaTime argument to update and render methods -3. Input - 1. Added onKeyDown and onKeyUp methods - 2. Added onMouseMove method -4. Sound - 1. Added mute and unmute methods - 2. Added isMuted getter - 3. Changed typedefs in options to Helper.defaultValue for better understanding of the default values - 4. Fixed volume option set to 0 but not muted bug - 5. Made path and element properties public -5. DuckStorage - 1. Now JSON parses data correctly when load type is "all" -6. Base - 1. Added Amount class to run a function a certain amount of times - 2. Made ran properties in Once class public -7. Camera - 1. Changed how following a gameobjects aligns the viewport -8. Misc - 1. Moved randomInt and randomFloat utils to core/math folder - -## 1.0.1 - -1. Game - 1. Added an option to enable dpr scaling (devicePixelRatio scaling) - 2. Fixed dpr scaling (devicePixelRatio scaling) -2. Camera - 1. DPR scaling now works correctly with cameras. -3. Helpers - 1. Added dprScale helper - -## 1.0.0 - -1. Game - 1. Added stop method to stop the animationFrame - 2. Added animationFrame property - 3. Added delta time property - 4. Added mobile scaling / devicePixelRatio scaling - 5. Added fullscreen, unfullscreen, scaleToWindow and resetScale methods - 6. Added public isInFullscreen property - 7. Added auto canvas resize when in fullscreen - 8. Added smart scaling option to game options, resizes canvas if smaller than screen -2. Scene - 1. Added loader to tools - 2. Added randomFloat to tools - 3. Added randomColorWithAlpha to color tools - 4. Added once method to run a function one time in a loop -3. Camera - 1. Added setFOVSmooth and setZoomSmooth methods - 2. Added getters defaultFOV and defaultZoom - 3. Changed how following works, no need to put it in update or render in your scene - 4. Added stopFollow method - 5. Added public following method - 6. Added shake method -4. Cutscene - 1. Added CAMERA_SHAKE type - 2. Added cameraIntervalMS and cameraTimeMS properties to step -5. Particle - 1. Added setImagePath method - 2. Added public floatVX and floatVY properties - 3. Added public age property (based on seconds) -6. ParticleEmitter - 1. Completely revamped ParticleEmitter - 2. Added emitFor method - 3. Added setRange method - 4. Added float method - 5. Added offloadMaxAge and offloadMaxAmount method - 6. Changed limitMax property on keepEmitting to a number - 7. Added setImagePath method -7. Maps - 1. Implemented tilemap -8. Sound - 1. Fixed source not being set - 2. Added volume option to option parameter in constructor -9. Group - 1. Added event listeners - 2. Added pop, shift, and splice methods - 3. Added length getter - 4. Type parameter is now correctly being used -10. Gameobjects - 1. Added spritesheet to gameobject - 2. Implemented delta time -11. Sprite Gameobject - 1. Added applyFilter method - 2. Made image and path properties public -12. StaticLight - 1. Made use of convertColorToRGBA helper - 2. Fixed 3 letter hex codes not working in conversion process - 3. Made alpha parameter required in setFillColor -13. Collider - 1. SpriteSheets now work -14. Helpers - 1. Added new color helpers - 2. Added randomColor and randomColorWithAlpha to color helpers - 3. Added convertColorToRGBA to color helpers - 4. Added version and startup helpers -15. Base - 1. Added once class -16. Interactive - 1. Input - 1. Added onClick method - 2. Added Button -17. Text - 1. Text x and y properties are now separate from config property. -18. Demos - 1. Added particle test demo -19. Typescript - 1. Added namespace Class to Duck namespace, all classes are in this namespace - 2. Exported child namespace helper of Duck Namespace - 3. Added AlphaRange type to helper namespace - 4. Added NonNullable type generic to helper namespace - 5. Added DefaultValue type generic to helper namespace -20. Misc - 1. Updated examples - 2. Updated changelog - 3. Updated readme - 4. Updated docs - 5. Updated dev dependencies - 6. Updated version to 1.0.0 - 7. Made more properties on most classes public - 8. Changed hexToRGBA due to not working with 3 letter hex codes - 9. Updated [security.md](SECURITY.md) +## [1.2.0](CHANGELOG.1.2.0.md) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 076ce60c..06be0dde 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -16,7 +16,7 @@ We use github to host code, to track issues and feature requests, as well as acc Pull requests are the best way to propose changes to the codebase. We actively welcome your pull requests: -1. Fork the repo and create your branch from `main`. +1. Fork the repo and create your branch from `main` or `staging`. 2. If you've added code that should be tested, add tests. 3. If you've changed APIs, update the documentation. 4. Ensure the test suite passes. diff --git a/README.md b/README.md index cf75f826..7f873a1a 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,8 @@ # ![DuckEngine](global/Logo.png) -[Demos](#demos) +**v2.0.0 released! [Changelog](CHANGELOG.md)** + +| [Docs](#docs) | [Wiki](#wiki) | [Demos](#demos) | [Download](#download) | ![Build Badge](https://img.shields.io/github/workflow/status/ksplatdev/DuckEngine/CodeQL?style=flat-square) ![Release Badge](https://img.shields.io/github/v/release/ksplatdev/DuckEngine?style=flat-square) @@ -10,55 +12,99 @@ ![Format Badge](https://github.com/ksplatdev/DuckEngine/actions/workflows/format.yml/badge.svg) [![code style: prettier](https://img.shields.io/badge/code_style-prettier-ff69b4.svg?style=flat-square)](https://github.com/prettier/prettier) -2D Game Library for the web. +A 2D Game Engine for the web. ## Features -1. Physics -2. Sprites & SpriteSheets -3. Many Game objects -4. Group Management -5. Keyboard, and Mouse input -6. Scenes -7. Cameras -8. Multi-Camera Switching -9. Mobile Scaling / DevicePixel ratio scaling -10. Smart scaling -11. Storage -12. Tilemaps -13. Particles, ParticleEmitter and Containers -14. Effects with Presets -15. Sound player with sound sprites -16. Text and Button UIs -17. Scene Unique Stack / Entity Manager -18. Game Stack / Global Scene Manager -19. Animations -20. Cutscenes -21. Custom loader to load from URL or file path -22. [Docs](https://ksplatdev.github.io/DuckEngine/) -23. Written in typescript -24. Types are included -25. And way more +- AABB (Axis-Aligned Bounding Box) Hitbox Based Physics Engine +- Multiple Scenes +- Fast & Performant +- Sprites & Spritesheets +- Many GameObjects +- Plugins & PluginManager +- Multiple Cameras with Effects +- Animations & State Machines & Cutscenes +- Hitboxes and Colliders +- Keyboard, and Mouse Inputs +- DPR / Mobile Scaling +- Advanced Particle System +- Effects and Presets +- Button and Text UI +- Groups +- Tilemaps +- Fast & Performant +- Small Package Size +- Lighting +- Preloader +- Textures +- Made in Typescript +- Typedefs +- [Docs](#docs) +- A lot more... + +## Performance & Compatibility + +### Browser Requirements + +1. Browser supports ES6 (EcmaScript2015) +2. Browser supports Canvas APIs + +### Rankings + +1. Chromium Based Browsers, includes Chrome, Opera, Edge, Vivaldi, and Brave +2. Safari +3. Firefox | [Bugs](#firefox-bugs) + +### Recommendation + +- Google Chrome or any other Chromium based browser + +### Browser Bugs + +#### Firefox Bugs + +- More stuttering than Chromium Browsers and Safari. +- Garbage collection occurs more often than Safari and Chromium Browsers. (Causes *very* minor and not noticeable stutters.) ## Download ### Github 1. Download the [latest release](https://github.com/ksplatdev/DuckEngine/releases/latest). -2. Set up webpack pr parcel. +2. Setup an asset bundler like webpack or parcel. 3. Import DuckEngine. 4. Read the [docs](https://ksplatdev.github.io/DuckEngine/). ### NPM 1. Run `npm install duckengine`. -2. Set up webpack or parcel. +2. Setup an asset bundler like webpack or parcel. 3. Import DuckEngine. 4. Read the [docs](https://ksplatdev.github.io/DuckEngine/). +### CDN + +1. Setup an asset bundler like webpack or parcel. +2. Import DuckEngine from URL + - Regular + - Minified +3. Read the [docs](https://ksplatdev.github.io/DuckEngine/). + +### Itch.io + +1. Download DuckEngine from +2. Import DuckEngine into your project. +3. Read the [docs](https://ksplatdev.github.io/DuckEngine/). + ## [Docs](https://ksplatdev.github.io/DuckEngine/) -## Typescript +Learn how to use DuckEngine with simple, clean, documentation with typings and more. + +## [Wiki](https://github.com/ksplatdev/DuckEngine/wiki) + +Learn, write, get help, with DuckEngine in the DuckEngine Wiki. + +## How to use with Typescript How to use DuckEngine with Typescript. @@ -93,25 +139,58 @@ The Duck Namespace has types such as gameobject, every class config, all classes 2. Reading and agreeing to the [Contributing](CONTRIBUTING.md) and [Code of Conduct](CODE_OF_CONDUCT.md) documents. 3. Basic knowledge of how DuckEngine works. +### How to contribute + +1. Reading and agree to the [Contributing](CONTRIBUTING.md) and [Code of Conduct](CODE_OF_CONDUCT.md) documents. +2. Fork the repository and create a new branch following the [branch guidelines](branch_guidelines.md). +3. Clone the fork to your device. +4. CD (change directories) into the cloned directory. +5. Run `yarn upgrade`. +6. Run `yarn run build` or `ctrl + shift + b` for vscode users. +7. Make your changes. +8. Test your changes on codesandbox by forking this [codesandbox](https://codesandbox.io/s/duckengine-test-7gfbt?file=/src/scene.js) and updating the duckengine.js file. (Or any other way you would like to test it.) +9. Create a pull request. +10. Wait for it to be reviewed and revised and possibly merged. + +### Dev Scripts + +1. `yarn run test` - Opens the [codesandbox test](https://codesandbox.io/s/duckengine-test-7gfbt?file=/src/scene.js). +2. `yarn run build` - Compiles typescript, bundles files, creates minified version, builds docs, and copies package.json to dist. +3. `yarn run build:docs` - Uses TypeDoc to build docs. +4. `yarn run webpack` - Bundles files in lib directory. +5. `yarn run minify` - Uses uglifyjs to minify bundled file. +6. `yarn run format` - Uses Prettier to format files. +7. `yarn run format:watch` - Watches for changes and formats once changes are saved. +8. `yarn run lint` - Uses ESLint to lint all files in the src directory. +9. `yarn run lint:watch` - Watches for changes and fixes all fixable issues found by ESLint. +10. `yarn run lint:fix` - Uses ESLint to fix all fixable issues found by ESLint. +11. `yarn run tree` - Prints out all files and directories used in [readme](#file-structure). +12. `yarn run serve` - Serves the docs on :8080. + +### Branches + +1. main - main branch +2. staging - stage changes to this branch + ### File Structure ```bash . +├── branch_guidelines.md +├── CHANGELOG.1.2.0.md +├── CHANGELOG.2.0.0.md ├── CHANGELOG.md ├── CODE_OF_CONDUCT.md ├── CONTRIBUTING.md -├── examples -│ ├── README.md -│ └── ts -│ ├── myScene.ts -│ └── test.ts ├── global │ ├── Logo.png +│ ├── Logo_Splash.png +│ ├── Logo_Splash.xcf │ ├── Logo.xcf │ └── README.md +├── itch.io-description.md ├── LICENSE ├── package.json -├── package-lock.json ├── README.md ├── scripts │ └── build.sh @@ -120,8 +199,15 @@ The Duck Namespace has types such as gameobject, every class config, all classes │ ├── base │ │ ├── amount.ts │ │ ├── once.ts -│ │ └── render.ts +│ │ ├── render.ts +│ │ └── timer.ts │ ├── core +│ │ ├── animation +│ │ │ ├── animationFrame.ts +│ │ │ ├── animationManager.ts +│ │ │ ├── animationState.ts +│ │ │ ├── animation.ts +│ │ │ └── stateMachine.ts │ │ ├── camera │ │ │ └── camera.ts │ │ ├── cutscene @@ -133,45 +219,77 @@ The Duck Namespace has types such as gameobject, every class config, all classes │ │ │ └── preset │ │ │ ├── explosion.ts │ │ │ └── smoke.ts +│ │ ├── events +│ │ │ ├── eventEmitter.ts +│ │ │ ├── events.ts +│ │ │ ├── main +│ │ │ │ └── gameEvents.ts +│ │ │ └── other +│ │ │ ├── buttonEvents.ts +│ │ │ ├── cutsceneEvents.ts +│ │ │ └── groupEvents.ts │ │ ├── gameobjects │ │ │ ├── circle.ts │ │ │ ├── gameObject.ts +│ │ │ ├── interactive +│ │ │ │ ├── button.ts +│ │ │ │ └── text.ts +│ │ │ ├── misc +│ │ │ │ └── canvasModulate.ts +│ │ │ ├── particles +│ │ │ │ ├── particleEmitter.ts +│ │ │ │ └── particle.ts │ │ │ ├── rect.ts │ │ │ ├── roundrect.ts -│ │ │ ├── spritesheet.ts │ │ │ └── sprite.ts │ │ ├── game.ts │ │ ├── group │ │ │ └── group.ts │ │ ├── input -│ │ │ └── input.ts -│ │ ├── interactive -│ │ │ ├── button.ts -│ │ │ └── text.ts +│ │ │ ├── input.ts +│ │ │ ├── keyboardInput.ts +│ │ │ ├── models +│ │ │ │ ├── key.ts +│ │ │ │ └── mouse.ts +│ │ │ └── mouseInput.ts │ │ ├── lights │ │ │ └── staticLight.ts │ │ ├── loader │ │ │ └── loader.ts │ │ ├── map │ │ │ ├── map.ts -│ │ │ └── tilemap.ts +│ │ │ ├── tilelayer.ts +│ │ │ ├── tilemap.ts +│ │ │ ├── tileset.ts +│ │ │ └── tile.ts │ │ ├── math │ │ │ ├── clamp.ts +│ │ │ ├── lerp.ts │ │ │ ├── randomFloat.ts -│ │ │ └── randomInt.ts -│ │ ├── particles -│ │ │ ├── particleContainer.ts -│ │ │ ├── particleEmitter.ts -│ │ │ └── particle.ts +│ │ │ ├── randomInt.ts +│ │ │ └── vector2.ts +│ │ ├── misc +│ │ │ └── pluginManager.ts +│ │ ├── models +│ │ │ ├── displayList.ts +│ │ │ ├── physicsList.ts +│ │ │ └── texture.ts │ │ ├── physics │ │ │ ├── circleToRectIntersect.ts │ │ │ ├── collider.ts -│ │ │ └── rectToRectIntersect.ts +│ │ │ ├── hitboxFaceIntersect.ts +│ │ │ ├── models +│ │ │ │ ├── area.ts +│ │ │ │ └── hitbox.ts +│ │ │ ├── physicsBody.ts +│ │ │ ├── rectToRectIntersect.ts +│ │ │ └── server +│ │ │ └── physicsServer.ts │ │ ├── scene.ts │ │ ├── sound -│ │ │ └── sound.ts +│ │ │ └── soundPlayer.ts │ │ └── storage -│ │ └── storage.ts +│ │ └── cacheManager.ts │ ├── helper │ │ ├── color │ │ │ ├── convertColorToRGBA.ts @@ -196,10 +314,18 @@ The Duck Namespace has types such as gameobject, every class config, all classes │ │ └── version.ts │ ├── index.ts │ └── utils +│ ├── averageArray.ts +│ ├── cloneClass.ts +│ ├── degToRadians.ts +│ ├── detectBrowser.ts +│ ├── extractNumbers.ts +│ ├── smoothArray.ts │ ├── swapElement.ts +│ ├── uniqueID.ts │ └── validURL.ts ├── tsconfig.json -└── webpack.config.js +├── webpack.config.js +└── yarn.lock ``` #### Meaning & Use @@ -209,37 +335,6 @@ The Duck Namespace has types such as gameobject, every class config, all classes 3. dist - Javascript & type declaration files, bundled with webpack from lib 4. global - Global Assets -### How to contribute - -1. Reading and agree to the [Contributing](CONTRIBUTING.md) and [Code of Conduct](CODE_OF_CONDUCT.md) documents. -2. Fork the repository. -3. Clone the fork to your device. -4. CD (change directories) into the cloned directory. -5. Run `npm install`. -6. Run `npm run build` or `ctrl + shift + b` for vscode users. -7. Make your changes. -8. Test your changes on codesandbox by forking this [codesandbox](https://codesandbox.io/s/duckengine-test-7gfbt?file=/src/scene.js) and updating the duckengine.js file. (Or any other way you would like to test it.) -9. Create a pull request. -10. Wait for it to be reviewed and maybe merged. - -### NPM Scripts - -1. `npm run test` - Opens the [codesandbox test](https://codesandbox.io/s/duckengine-test-7gfbt?file=/src/scene.js). -2. `npm run build` - Compiles typescript, bundles files, creates minified version, builds docs, and copies package.json to dist. -3. `npm run build:docs` - Uses TypeDoc to build docs. -4. `npm run webpack` - Bundles files in lib directory. -5. `npm run minify` - Uses uglifyjs to minify bundled file. -6. `npm run format` - Uses Prettier to format files. -7. `npm run format:watch` - Watches for changes and formats once changes are saved. -8. `npm run lint` - Uses ESLint to lint all files in the src directory. -9. `npm run lint:watch` - Watches for changes and fixes all fixable issues found by ESLint. -10. `npm run lint:fix` - Uses ESLint to fix all fixable issues found by ESLint. - -### Branches - -1. main - main branch -2. staging - stage changes to this branch - ## Versions DuckEngine follows [SemVer](https://semver.org/). @@ -248,8 +343,6 @@ DuckEngine follows [SemVer](https://semver.org/). All demos are bundled with parcel-bundler and are all on codesandbox. -### [Space Shooter Game](https://codesandbox.io/s/duckengine-space-shooter-64wkg?file=/src/scene.js) - ### [Test Template](https://codesandbox.io/s/duckengine-test-7gfbt?file=/src/scene.js) ### [Particle Test](https://codesandbox.io/s/duckengine-particle-test-dhcr1?file=/src/scene.js) @@ -258,7 +351,7 @@ All demos are bundled with parcel-bundler and are all on codesandbox. ## Attribution -Cube (Cube found in logo) by José Manuel de Laá from the Noun Project. +The cube in the [DuckEngine Logo](global/Logo.png) is by José Manuel de Laá from the Noun Project. ## License @@ -266,4 +359,4 @@ Cube (Cube found in logo) by José Manuel de Laá from the Noun Project. ## Author -ksplat +Bleart Emini diff --git a/SECURITY.md b/SECURITY.md index 7ce5ede3..75389aac 100644 --- a/SECURITY.md +++ b/SECURITY.md @@ -4,7 +4,9 @@ | Version | Supported | | ------- | ------------------ | -| 1.x.x | :white_check_mark: | +| 2.x.x | :white_check_mark: | +| 1.2.x | :white_check_mark: | +| 1.0.x -> 1.1.x | :x: | | 1.x.x-beta | :x: | ## Reporting a Vulnerability diff --git a/branch_guidelines.md b/branch_guidelines.md new file mode 100644 index 00000000..69915c0c --- /dev/null +++ b/branch_guidelines.md @@ -0,0 +1,13 @@ +# DuckEngine Branch Guidelines + +## Naming Branches + +Format: \[ feature | release | fix \] - \[ short-descriptive-name \] + +Example: feature-duck-physics + +### Rules + +* Must be all lowercase +* No whitespaces, use hyphens (-) instead +* Must be appropriate diff --git a/docs/.nojekyll b/docs/.nojekyll new file mode 100644 index 00000000..e2ac6616 --- /dev/null +++ b/docs/.nojekyll @@ -0,0 +1 @@ +TypeDoc added this file to prevent GitHub Pages from using Jekyll. You can turn off this behavior by setting the `githubPages` option to false. \ No newline at end of file diff --git a/docs/assets/css/main.css b/docs/assets/css/main.css deleted file mode 100644 index a0ae067a..00000000 --- a/docs/assets/css/main.css +++ /dev/null @@ -1 +0,0 @@ -/*! normalize.css v1.1.3 | MIT License | git.io/normalize */article,aside,details,figcaption,figure,footer,header,hgroup,main,nav,section,summary{display:block}audio,canvas,video{display:inline-block;*display:inline;*zoom:1}audio:not([controls]){display:none;height:0}[hidden]{display:none}html{font-size:100%;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%;font-family:sans-serif}button,input,select,textarea{font-family:sans-serif}body{margin:0}a:focus{outline:thin dotted}a:active,a:hover{outline:0}h1{font-size:2em;margin:.67em 0}h2{font-size:1.5em;margin:.83em 0}h3{font-size:1.17em;margin:1em 0}h4,.tsd-index-panel h3{font-size:1em;margin:1.33em 0}h5{font-size:.83em;margin:1.67em 0}h6{font-size:.67em;margin:2.33em 0}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:bold}blockquote{margin:1em 40px}dfn{font-style:italic}hr{box-sizing:content-box;height:0}mark{background:#ff0;color:#000}p,pre{margin:1em 0}code,kbd,pre,samp{font-family:monospace,serif;_font-family:"courier new",monospace;font-size:1em}pre{white-space:pre;white-space:pre-wrap;word-wrap:break-word}q{quotes:none}q:before,q:after{content:"";content:none}small{font-size:80%}sub{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline;top:-0.5em}sub{bottom:-0.25em}dl,menu,ol,ul{margin:1em 0}dd{margin:0 0 0 40px}menu,ol,ul{padding:0 0 0 40px}nav ul,nav ol{list-style:none;list-style-image:none}img{border:0;-ms-interpolation-mode:bicubic}svg:not(:root){overflow:hidden}figure,form{margin:0}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{border:0;padding:0;white-space:normal;*margin-left:-7px}button,input,select,textarea{font-size:100%;margin:0;vertical-align:baseline;*vertical-align:middle}button,input{line-height:normal}button,select{text-transform:none}button,html input[type=button]{-webkit-appearance:button;cursor:pointer;*overflow:visible}input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer;*overflow:visible}button[disabled],html input[disabled]{cursor:default}input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0;*height:13px;*width:13px}input[type=search]{-webkit-appearance:textfield;box-sizing:content-box}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}textarea{overflow:auto;vertical-align:top}table{border-collapse:collapse;border-spacing:0}.hljs{display:inline-block;padding:.5em;background:#fff;color:#000}.hljs-comment,.hljs-annotation,.hljs-template_comment,.diff .hljs-header,.hljs-chunk,.apache .hljs-cbracket{color:green}.hljs-keyword,.hljs-id,.hljs-built_in,.css .smalltalk .hljs-class,.hljs-winutils,.bash .hljs-variable,.tex .hljs-command,.hljs-request,.hljs-status,.nginx .hljs-title{color:blue}.xml .hljs-tag{color:blue}.xml .hljs-tag .hljs-value{color:blue}.hljs-string,.hljs-title,.hljs-parent,.hljs-tag .hljs-value,.hljs-rules .hljs-value{color:#a31515}.ruby .hljs-symbol{color:#a31515}.ruby .hljs-symbol .hljs-string{color:#a31515}.hljs-template_tag,.django .hljs-variable,.hljs-addition,.hljs-flow,.hljs-stream,.apache .hljs-tag,.hljs-date,.tex .hljs-formula,.coffeescript .hljs-attribute{color:#a31515}.ruby .hljs-string,.hljs-decorator,.hljs-filter .hljs-argument,.hljs-localvars,.hljs-array,.hljs-attr_selector,.hljs-pseudo,.hljs-pi,.hljs-doctype,.hljs-deletion,.hljs-envvar,.hljs-shebang,.hljs-preprocessor,.hljs-pragma,.userType,.apache .hljs-sqbracket,.nginx .hljs-built_in,.tex .hljs-special,.hljs-prompt{color:#2b91af}.hljs-phpdoc,.hljs-javadoc,.hljs-xmlDocTag{color:gray}.vhdl .hljs-typename{font-weight:bold}.vhdl .hljs-string{color:#666}.vhdl .hljs-literal{color:#a31515}.vhdl .hljs-attribute{color:#00b0e8}.xml .hljs-attribute{color:red}ul.tsd-descriptions>li>:first-child,.tsd-panel>:first-child,.col>:first-child,.col-11>:first-child,.col-10>:first-child,.col-9>:first-child,.col-8>:first-child,.col-7>:first-child,.col-6>:first-child,.col-5>:first-child,.col-4>:first-child,.col-3>:first-child,.col-2>:first-child,.col-1>:first-child,ul.tsd-descriptions>li>:first-child>:first-child,.tsd-panel>:first-child>:first-child,.col>:first-child>:first-child,.col-11>:first-child>:first-child,.col-10>:first-child>:first-child,.col-9>:first-child>:first-child,.col-8>:first-child>:first-child,.col-7>:first-child>:first-child,.col-6>:first-child>:first-child,.col-5>:first-child>:first-child,.col-4>:first-child>:first-child,.col-3>:first-child>:first-child,.col-2>:first-child>:first-child,.col-1>:first-child>:first-child,ul.tsd-descriptions>li>:first-child>:first-child>:first-child,.tsd-panel>:first-child>:first-child>:first-child,.col>:first-child>:first-child>:first-child,.col-11>:first-child>:first-child>:first-child,.col-10>:first-child>:first-child>:first-child,.col-9>:first-child>:first-child>:first-child,.col-8>:first-child>:first-child>:first-child,.col-7>:first-child>:first-child>:first-child,.col-6>:first-child>:first-child>:first-child,.col-5>:first-child>:first-child>:first-child,.col-4>:first-child>:first-child>:first-child,.col-3>:first-child>:first-child>:first-child,.col-2>:first-child>:first-child>:first-child,.col-1>:first-child>:first-child>:first-child{margin-top:0}ul.tsd-descriptions>li>:last-child,.tsd-panel>:last-child,.col>:last-child,.col-11>:last-child,.col-10>:last-child,.col-9>:last-child,.col-8>:last-child,.col-7>:last-child,.col-6>:last-child,.col-5>:last-child,.col-4>:last-child,.col-3>:last-child,.col-2>:last-child,.col-1>:last-child,ul.tsd-descriptions>li>:last-child>:last-child,.tsd-panel>:last-child>:last-child,.col>:last-child>:last-child,.col-11>:last-child>:last-child,.col-10>:last-child>:last-child,.col-9>:last-child>:last-child,.col-8>:last-child>:last-child,.col-7>:last-child>:last-child,.col-6>:last-child>:last-child,.col-5>:last-child>:last-child,.col-4>:last-child>:last-child,.col-3>:last-child>:last-child,.col-2>:last-child>:last-child,.col-1>:last-child>:last-child,ul.tsd-descriptions>li>:last-child>:last-child>:last-child,.tsd-panel>:last-child>:last-child>:last-child,.col>:last-child>:last-child>:last-child,.col-11>:last-child>:last-child>:last-child,.col-10>:last-child>:last-child>:last-child,.col-9>:last-child>:last-child>:last-child,.col-8>:last-child>:last-child>:last-child,.col-7>:last-child>:last-child>:last-child,.col-6>:last-child>:last-child>:last-child,.col-5>:last-child>:last-child>:last-child,.col-4>:last-child>:last-child>:last-child,.col-3>:last-child>:last-child>:last-child,.col-2>:last-child>:last-child>:last-child,.col-1>:last-child>:last-child>:last-child{margin-bottom:0}.container{max-width:1200px;margin:0 auto;padding:0 40px}@media(max-width: 640px){.container{padding:0 20px}}.container-main{padding-bottom:200px}.row{position:relative;margin:0 -10px}.row:after{visibility:hidden;display:block;content:"";clear:both;height:0}.col,.col-11,.col-10,.col-9,.col-8,.col-7,.col-6,.col-5,.col-4,.col-3,.col-2,.col-1{box-sizing:border-box;float:left;padding:0 10px}.col-1{width:8.3333333333%}.offset-1{margin-left:8.3333333333%}.col-2{width:16.6666666667%}.offset-2{margin-left:16.6666666667%}.col-3{width:25%}.offset-3{margin-left:25%}.col-4{width:33.3333333333%}.offset-4{margin-left:33.3333333333%}.col-5{width:41.6666666667%}.offset-5{margin-left:41.6666666667%}.col-6{width:50%}.offset-6{margin-left:50%}.col-7{width:58.3333333333%}.offset-7{margin-left:58.3333333333%}.col-8{width:66.6666666667%}.offset-8{margin-left:66.6666666667%}.col-9{width:75%}.offset-9{margin-left:75%}.col-10{width:83.3333333333%}.offset-10{margin-left:83.3333333333%}.col-11{width:91.6666666667%}.offset-11{margin-left:91.6666666667%}@media(min-width: 1300px){.col-1{width:100px}.offset-1{margin-left:100px}.col-2{width:200px}.offset-2{margin-left:200px}.col-3{width:300px}.offset-3{margin-left:300px}.col-4{width:400px}.offset-4{margin-left:400px}.col-5{width:500px}.offset-5{margin-left:500px}.col-6{width:600px}.offset-6{margin-left:600px}.col-7{width:700px}.offset-7{margin-left:700px}.col-8{width:800px}.offset-8{margin-left:800px}.col-9{width:900px}.offset-9{margin-left:900px}.col-10{width:1000px}.offset-10{margin-left:1000px}.col-11{width:1100px}.offset-11{margin-left:1100px}}.tsd-kind-icon{display:block;position:relative;padding-left:20px;text-indent:-20px}.tsd-kind-icon:before{content:"";display:inline-block;vertical-align:middle;width:17px;height:17px;margin:0 3px 2px 0;background-image:url(../images/icons.png)}@media(-webkit-min-device-pixel-ratio: 1.5),(min-device-pixel-ratio: 1.5),(min-resolution: 144dpi){.tsd-kind-icon:before{background-image:url(../images/icons@2x.png);background-size:238px 204px}}.tsd-signature.tsd-kind-icon:before{background-position:0 -153px}.tsd-kind-object-literal>.tsd-kind-icon:before{background-position:0px -17px}.tsd-kind-object-literal.tsd-is-protected>.tsd-kind-icon:before{background-position:-17px -17px}.tsd-kind-object-literal.tsd-is-private>.tsd-kind-icon:before{background-position:-34px -17px}.tsd-kind-class>.tsd-kind-icon:before{background-position:0px -34px}.tsd-kind-class.tsd-is-protected>.tsd-kind-icon:before{background-position:-17px -34px}.tsd-kind-class.tsd-is-private>.tsd-kind-icon:before{background-position:-34px -34px}.tsd-kind-class.tsd-has-type-parameter>.tsd-kind-icon:before{background-position:0px -51px}.tsd-kind-class.tsd-has-type-parameter.tsd-is-protected>.tsd-kind-icon:before{background-position:-17px -51px}.tsd-kind-class.tsd-has-type-parameter.tsd-is-private>.tsd-kind-icon:before{background-position:-34px -51px}.tsd-kind-interface>.tsd-kind-icon:before{background-position:0px -68px}.tsd-kind-interface.tsd-is-protected>.tsd-kind-icon:before{background-position:-17px -68px}.tsd-kind-interface.tsd-is-private>.tsd-kind-icon:before{background-position:-34px -68px}.tsd-kind-interface.tsd-has-type-parameter>.tsd-kind-icon:before{background-position:0px -85px}.tsd-kind-interface.tsd-has-type-parameter.tsd-is-protected>.tsd-kind-icon:before{background-position:-17px -85px}.tsd-kind-interface.tsd-has-type-parameter.tsd-is-private>.tsd-kind-icon:before{background-position:-34px -85px}.tsd-kind-module>.tsd-kind-icon:before{background-position:0px -102px}.tsd-kind-module.tsd-is-protected>.tsd-kind-icon:before{background-position:-17px -102px}.tsd-kind-module.tsd-is-private>.tsd-kind-icon:before{background-position:-34px -102px}.tsd-kind-external-module>.tsd-kind-icon:before{background-position:0px -102px}.tsd-kind-external-module.tsd-is-protected>.tsd-kind-icon:before{background-position:-17px -102px}.tsd-kind-external-module.tsd-is-private>.tsd-kind-icon:before{background-position:-34px -102px}.tsd-kind-enum>.tsd-kind-icon:before{background-position:0px -119px}.tsd-kind-enum.tsd-is-protected>.tsd-kind-icon:before{background-position:-17px -119px}.tsd-kind-enum.tsd-is-private>.tsd-kind-icon:before{background-position:-34px -119px}.tsd-kind-enum-member>.tsd-kind-icon:before{background-position:0px -136px}.tsd-kind-enum-member.tsd-is-protected>.tsd-kind-icon:before{background-position:-17px -136px}.tsd-kind-enum-member.tsd-is-private>.tsd-kind-icon:before{background-position:-34px -136px}.tsd-kind-signature>.tsd-kind-icon:before{background-position:0px -153px}.tsd-kind-signature.tsd-is-protected>.tsd-kind-icon:before{background-position:-17px -153px}.tsd-kind-signature.tsd-is-private>.tsd-kind-icon:before{background-position:-34px -153px}.tsd-kind-type-alias>.tsd-kind-icon:before{background-position:0px -170px}.tsd-kind-type-alias.tsd-is-protected>.tsd-kind-icon:before{background-position:-17px -170px}.tsd-kind-type-alias.tsd-is-private>.tsd-kind-icon:before{background-position:-34px -170px}.tsd-kind-type-alias.tsd-has-type-parameter>.tsd-kind-icon:before{background-position:0px -187px}.tsd-kind-type-alias.tsd-has-type-parameter.tsd-is-protected>.tsd-kind-icon:before{background-position:-17px -187px}.tsd-kind-type-alias.tsd-has-type-parameter.tsd-is-private>.tsd-kind-icon:before{background-position:-34px -187px}.tsd-kind-variable>.tsd-kind-icon:before{background-position:-136px -0px}.tsd-kind-variable.tsd-is-protected>.tsd-kind-icon:before{background-position:-153px -0px}.tsd-kind-variable.tsd-is-private>.tsd-kind-icon:before{background-position:-119px -0px}.tsd-kind-variable.tsd-parent-kind-class>.tsd-kind-icon:before{background-position:-51px -0px}.tsd-kind-variable.tsd-parent-kind-class.tsd-is-inherited>.tsd-kind-icon:before{background-position:-68px -0px}.tsd-kind-variable.tsd-parent-kind-class.tsd-is-protected>.tsd-kind-icon:before{background-position:-85px -0px}.tsd-kind-variable.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited>.tsd-kind-icon:before{background-position:-102px -0px}.tsd-kind-variable.tsd-parent-kind-class.tsd-is-private>.tsd-kind-icon:before{background-position:-119px -0px}.tsd-kind-variable.tsd-parent-kind-enum>.tsd-kind-icon:before{background-position:-170px -0px}.tsd-kind-variable.tsd-parent-kind-enum.tsd-is-protected>.tsd-kind-icon:before{background-position:-187px -0px}.tsd-kind-variable.tsd-parent-kind-enum.tsd-is-private>.tsd-kind-icon:before{background-position:-119px -0px}.tsd-kind-variable.tsd-parent-kind-interface>.tsd-kind-icon:before{background-position:-204px -0px}.tsd-kind-variable.tsd-parent-kind-interface.tsd-is-inherited>.tsd-kind-icon:before{background-position:-221px -0px}.tsd-kind-property>.tsd-kind-icon:before{background-position:-136px -0px}.tsd-kind-property.tsd-is-protected>.tsd-kind-icon:before{background-position:-153px -0px}.tsd-kind-property.tsd-is-private>.tsd-kind-icon:before{background-position:-119px -0px}.tsd-kind-property.tsd-parent-kind-class>.tsd-kind-icon:before{background-position:-51px -0px}.tsd-kind-property.tsd-parent-kind-class.tsd-is-inherited>.tsd-kind-icon:before{background-position:-68px -0px}.tsd-kind-property.tsd-parent-kind-class.tsd-is-protected>.tsd-kind-icon:before{background-position:-85px -0px}.tsd-kind-property.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited>.tsd-kind-icon:before{background-position:-102px -0px}.tsd-kind-property.tsd-parent-kind-class.tsd-is-private>.tsd-kind-icon:before{background-position:-119px -0px}.tsd-kind-property.tsd-parent-kind-enum>.tsd-kind-icon:before{background-position:-170px -0px}.tsd-kind-property.tsd-parent-kind-enum.tsd-is-protected>.tsd-kind-icon:before{background-position:-187px -0px}.tsd-kind-property.tsd-parent-kind-enum.tsd-is-private>.tsd-kind-icon:before{background-position:-119px -0px}.tsd-kind-property.tsd-parent-kind-interface>.tsd-kind-icon:before{background-position:-204px -0px}.tsd-kind-property.tsd-parent-kind-interface.tsd-is-inherited>.tsd-kind-icon:before{background-position:-221px -0px}.tsd-kind-get-signature>.tsd-kind-icon:before{background-position:-136px -17px}.tsd-kind-get-signature.tsd-is-protected>.tsd-kind-icon:before{background-position:-153px -17px}.tsd-kind-get-signature.tsd-is-private>.tsd-kind-icon:before{background-position:-119px -17px}.tsd-kind-get-signature.tsd-parent-kind-class>.tsd-kind-icon:before{background-position:-51px -17px}.tsd-kind-get-signature.tsd-parent-kind-class.tsd-is-inherited>.tsd-kind-icon:before{background-position:-68px -17px}.tsd-kind-get-signature.tsd-parent-kind-class.tsd-is-protected>.tsd-kind-icon:before{background-position:-85px -17px}.tsd-kind-get-signature.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited>.tsd-kind-icon:before{background-position:-102px -17px}.tsd-kind-get-signature.tsd-parent-kind-class.tsd-is-private>.tsd-kind-icon:before{background-position:-119px -17px}.tsd-kind-get-signature.tsd-parent-kind-enum>.tsd-kind-icon:before{background-position:-170px -17px}.tsd-kind-get-signature.tsd-parent-kind-enum.tsd-is-protected>.tsd-kind-icon:before{background-position:-187px -17px}.tsd-kind-get-signature.tsd-parent-kind-enum.tsd-is-private>.tsd-kind-icon:before{background-position:-119px -17px}.tsd-kind-get-signature.tsd-parent-kind-interface>.tsd-kind-icon:before{background-position:-204px -17px}.tsd-kind-get-signature.tsd-parent-kind-interface.tsd-is-inherited>.tsd-kind-icon:before{background-position:-221px -17px}.tsd-kind-set-signature>.tsd-kind-icon:before{background-position:-136px -34px}.tsd-kind-set-signature.tsd-is-protected>.tsd-kind-icon:before{background-position:-153px -34px}.tsd-kind-set-signature.tsd-is-private>.tsd-kind-icon:before{background-position:-119px -34px}.tsd-kind-set-signature.tsd-parent-kind-class>.tsd-kind-icon:before{background-position:-51px -34px}.tsd-kind-set-signature.tsd-parent-kind-class.tsd-is-inherited>.tsd-kind-icon:before{background-position:-68px -34px}.tsd-kind-set-signature.tsd-parent-kind-class.tsd-is-protected>.tsd-kind-icon:before{background-position:-85px -34px}.tsd-kind-set-signature.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited>.tsd-kind-icon:before{background-position:-102px -34px}.tsd-kind-set-signature.tsd-parent-kind-class.tsd-is-private>.tsd-kind-icon:before{background-position:-119px -34px}.tsd-kind-set-signature.tsd-parent-kind-enum>.tsd-kind-icon:before{background-position:-170px -34px}.tsd-kind-set-signature.tsd-parent-kind-enum.tsd-is-protected>.tsd-kind-icon:before{background-position:-187px -34px}.tsd-kind-set-signature.tsd-parent-kind-enum.tsd-is-private>.tsd-kind-icon:before{background-position:-119px -34px}.tsd-kind-set-signature.tsd-parent-kind-interface>.tsd-kind-icon:before{background-position:-204px -34px}.tsd-kind-set-signature.tsd-parent-kind-interface.tsd-is-inherited>.tsd-kind-icon:before{background-position:-221px -34px}.tsd-kind-accessor>.tsd-kind-icon:before{background-position:-136px -51px}.tsd-kind-accessor.tsd-is-protected>.tsd-kind-icon:before{background-position:-153px -51px}.tsd-kind-accessor.tsd-is-private>.tsd-kind-icon:before{background-position:-119px -51px}.tsd-kind-accessor.tsd-parent-kind-class>.tsd-kind-icon:before{background-position:-51px -51px}.tsd-kind-accessor.tsd-parent-kind-class.tsd-is-inherited>.tsd-kind-icon:before{background-position:-68px -51px}.tsd-kind-accessor.tsd-parent-kind-class.tsd-is-protected>.tsd-kind-icon:before{background-position:-85px -51px}.tsd-kind-accessor.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited>.tsd-kind-icon:before{background-position:-102px -51px}.tsd-kind-accessor.tsd-parent-kind-class.tsd-is-private>.tsd-kind-icon:before{background-position:-119px -51px}.tsd-kind-accessor.tsd-parent-kind-enum>.tsd-kind-icon:before{background-position:-170px -51px}.tsd-kind-accessor.tsd-parent-kind-enum.tsd-is-protected>.tsd-kind-icon:before{background-position:-187px -51px}.tsd-kind-accessor.tsd-parent-kind-enum.tsd-is-private>.tsd-kind-icon:before{background-position:-119px -51px}.tsd-kind-accessor.tsd-parent-kind-interface>.tsd-kind-icon:before{background-position:-204px -51px}.tsd-kind-accessor.tsd-parent-kind-interface.tsd-is-inherited>.tsd-kind-icon:before{background-position:-221px -51px}.tsd-kind-function>.tsd-kind-icon:before{background-position:-136px -68px}.tsd-kind-function.tsd-is-protected>.tsd-kind-icon:before{background-position:-153px -68px}.tsd-kind-function.tsd-is-private>.tsd-kind-icon:before{background-position:-119px -68px}.tsd-kind-function.tsd-parent-kind-class>.tsd-kind-icon:before{background-position:-51px -68px}.tsd-kind-function.tsd-parent-kind-class.tsd-is-inherited>.tsd-kind-icon:before{background-position:-68px -68px}.tsd-kind-function.tsd-parent-kind-class.tsd-is-protected>.tsd-kind-icon:before{background-position:-85px -68px}.tsd-kind-function.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited>.tsd-kind-icon:before{background-position:-102px -68px}.tsd-kind-function.tsd-parent-kind-class.tsd-is-private>.tsd-kind-icon:before{background-position:-119px -68px}.tsd-kind-function.tsd-parent-kind-enum>.tsd-kind-icon:before{background-position:-170px -68px}.tsd-kind-function.tsd-parent-kind-enum.tsd-is-protected>.tsd-kind-icon:before{background-position:-187px -68px}.tsd-kind-function.tsd-parent-kind-enum.tsd-is-private>.tsd-kind-icon:before{background-position:-119px -68px}.tsd-kind-function.tsd-parent-kind-interface>.tsd-kind-icon:before{background-position:-204px -68px}.tsd-kind-function.tsd-parent-kind-interface.tsd-is-inherited>.tsd-kind-icon:before{background-position:-221px -68px}.tsd-kind-method>.tsd-kind-icon:before{background-position:-136px -68px}.tsd-kind-method.tsd-is-protected>.tsd-kind-icon:before{background-position:-153px -68px}.tsd-kind-method.tsd-is-private>.tsd-kind-icon:before{background-position:-119px -68px}.tsd-kind-method.tsd-parent-kind-class>.tsd-kind-icon:before{background-position:-51px -68px}.tsd-kind-method.tsd-parent-kind-class.tsd-is-inherited>.tsd-kind-icon:before{background-position:-68px -68px}.tsd-kind-method.tsd-parent-kind-class.tsd-is-protected>.tsd-kind-icon:before{background-position:-85px -68px}.tsd-kind-method.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited>.tsd-kind-icon:before{background-position:-102px -68px}.tsd-kind-method.tsd-parent-kind-class.tsd-is-private>.tsd-kind-icon:before{background-position:-119px -68px}.tsd-kind-method.tsd-parent-kind-enum>.tsd-kind-icon:before{background-position:-170px -68px}.tsd-kind-method.tsd-parent-kind-enum.tsd-is-protected>.tsd-kind-icon:before{background-position:-187px -68px}.tsd-kind-method.tsd-parent-kind-enum.tsd-is-private>.tsd-kind-icon:before{background-position:-119px -68px}.tsd-kind-method.tsd-parent-kind-interface>.tsd-kind-icon:before{background-position:-204px -68px}.tsd-kind-method.tsd-parent-kind-interface.tsd-is-inherited>.tsd-kind-icon:before{background-position:-221px -68px}.tsd-kind-call-signature>.tsd-kind-icon:before{background-position:-136px -68px}.tsd-kind-call-signature.tsd-is-protected>.tsd-kind-icon:before{background-position:-153px -68px}.tsd-kind-call-signature.tsd-is-private>.tsd-kind-icon:before{background-position:-119px -68px}.tsd-kind-call-signature.tsd-parent-kind-class>.tsd-kind-icon:before{background-position:-51px -68px}.tsd-kind-call-signature.tsd-parent-kind-class.tsd-is-inherited>.tsd-kind-icon:before{background-position:-68px -68px}.tsd-kind-call-signature.tsd-parent-kind-class.tsd-is-protected>.tsd-kind-icon:before{background-position:-85px -68px}.tsd-kind-call-signature.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited>.tsd-kind-icon:before{background-position:-102px -68px}.tsd-kind-call-signature.tsd-parent-kind-class.tsd-is-private>.tsd-kind-icon:before{background-position:-119px -68px}.tsd-kind-call-signature.tsd-parent-kind-enum>.tsd-kind-icon:before{background-position:-170px -68px}.tsd-kind-call-signature.tsd-parent-kind-enum.tsd-is-protected>.tsd-kind-icon:before{background-position:-187px -68px}.tsd-kind-call-signature.tsd-parent-kind-enum.tsd-is-private>.tsd-kind-icon:before{background-position:-119px -68px}.tsd-kind-call-signature.tsd-parent-kind-interface>.tsd-kind-icon:before{background-position:-204px -68px}.tsd-kind-call-signature.tsd-parent-kind-interface.tsd-is-inherited>.tsd-kind-icon:before{background-position:-221px -68px}.tsd-kind-function.tsd-has-type-parameter>.tsd-kind-icon:before{background-position:-136px -85px}.tsd-kind-function.tsd-has-type-parameter.tsd-is-protected>.tsd-kind-icon:before{background-position:-153px -85px}.tsd-kind-function.tsd-has-type-parameter.tsd-is-private>.tsd-kind-icon:before{background-position:-119px -85px}.tsd-kind-function.tsd-has-type-parameter.tsd-parent-kind-class>.tsd-kind-icon:before{background-position:-51px -85px}.tsd-kind-function.tsd-has-type-parameter.tsd-parent-kind-class.tsd-is-inherited>.tsd-kind-icon:before{background-position:-68px -85px}.tsd-kind-function.tsd-has-type-parameter.tsd-parent-kind-class.tsd-is-protected>.tsd-kind-icon:before{background-position:-85px -85px}.tsd-kind-function.tsd-has-type-parameter.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited>.tsd-kind-icon:before{background-position:-102px -85px}.tsd-kind-function.tsd-has-type-parameter.tsd-parent-kind-class.tsd-is-private>.tsd-kind-icon:before{background-position:-119px -85px}.tsd-kind-function.tsd-has-type-parameter.tsd-parent-kind-enum>.tsd-kind-icon:before{background-position:-170px -85px}.tsd-kind-function.tsd-has-type-parameter.tsd-parent-kind-enum.tsd-is-protected>.tsd-kind-icon:before{background-position:-187px -85px}.tsd-kind-function.tsd-has-type-parameter.tsd-parent-kind-enum.tsd-is-private>.tsd-kind-icon:before{background-position:-119px -85px}.tsd-kind-function.tsd-has-type-parameter.tsd-parent-kind-interface>.tsd-kind-icon:before{background-position:-204px -85px}.tsd-kind-function.tsd-has-type-parameter.tsd-parent-kind-interface.tsd-is-inherited>.tsd-kind-icon:before{background-position:-221px -85px}.tsd-kind-method.tsd-has-type-parameter>.tsd-kind-icon:before{background-position:-136px -85px}.tsd-kind-method.tsd-has-type-parameter.tsd-is-protected>.tsd-kind-icon:before{background-position:-153px -85px}.tsd-kind-method.tsd-has-type-parameter.tsd-is-private>.tsd-kind-icon:before{background-position:-119px -85px}.tsd-kind-method.tsd-has-type-parameter.tsd-parent-kind-class>.tsd-kind-icon:before{background-position:-51px -85px}.tsd-kind-method.tsd-has-type-parameter.tsd-parent-kind-class.tsd-is-inherited>.tsd-kind-icon:before{background-position:-68px -85px}.tsd-kind-method.tsd-has-type-parameter.tsd-parent-kind-class.tsd-is-protected>.tsd-kind-icon:before{background-position:-85px -85px}.tsd-kind-method.tsd-has-type-parameter.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited>.tsd-kind-icon:before{background-position:-102px -85px}.tsd-kind-method.tsd-has-type-parameter.tsd-parent-kind-class.tsd-is-private>.tsd-kind-icon:before{background-position:-119px -85px}.tsd-kind-method.tsd-has-type-parameter.tsd-parent-kind-enum>.tsd-kind-icon:before{background-position:-170px -85px}.tsd-kind-method.tsd-has-type-parameter.tsd-parent-kind-enum.tsd-is-protected>.tsd-kind-icon:before{background-position:-187px -85px}.tsd-kind-method.tsd-has-type-parameter.tsd-parent-kind-enum.tsd-is-private>.tsd-kind-icon:before{background-position:-119px -85px}.tsd-kind-method.tsd-has-type-parameter.tsd-parent-kind-interface>.tsd-kind-icon:before{background-position:-204px -85px}.tsd-kind-method.tsd-has-type-parameter.tsd-parent-kind-interface.tsd-is-inherited>.tsd-kind-icon:before{background-position:-221px -85px}.tsd-kind-constructor>.tsd-kind-icon:before{background-position:-136px -102px}.tsd-kind-constructor.tsd-is-protected>.tsd-kind-icon:before{background-position:-153px -102px}.tsd-kind-constructor.tsd-is-private>.tsd-kind-icon:before{background-position:-119px -102px}.tsd-kind-constructor.tsd-parent-kind-class>.tsd-kind-icon:before{background-position:-51px -102px}.tsd-kind-constructor.tsd-parent-kind-class.tsd-is-inherited>.tsd-kind-icon:before{background-position:-68px -102px}.tsd-kind-constructor.tsd-parent-kind-class.tsd-is-protected>.tsd-kind-icon:before{background-position:-85px -102px}.tsd-kind-constructor.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited>.tsd-kind-icon:before{background-position:-102px -102px}.tsd-kind-constructor.tsd-parent-kind-class.tsd-is-private>.tsd-kind-icon:before{background-position:-119px -102px}.tsd-kind-constructor.tsd-parent-kind-enum>.tsd-kind-icon:before{background-position:-170px -102px}.tsd-kind-constructor.tsd-parent-kind-enum.tsd-is-protected>.tsd-kind-icon:before{background-position:-187px -102px}.tsd-kind-constructor.tsd-parent-kind-enum.tsd-is-private>.tsd-kind-icon:before{background-position:-119px -102px}.tsd-kind-constructor.tsd-parent-kind-interface>.tsd-kind-icon:before{background-position:-204px -102px}.tsd-kind-constructor.tsd-parent-kind-interface.tsd-is-inherited>.tsd-kind-icon:before{background-position:-221px -102px}.tsd-kind-constructor-signature>.tsd-kind-icon:before{background-position:-136px -102px}.tsd-kind-constructor-signature.tsd-is-protected>.tsd-kind-icon:before{background-position:-153px -102px}.tsd-kind-constructor-signature.tsd-is-private>.tsd-kind-icon:before{background-position:-119px -102px}.tsd-kind-constructor-signature.tsd-parent-kind-class>.tsd-kind-icon:before{background-position:-51px -102px}.tsd-kind-constructor-signature.tsd-parent-kind-class.tsd-is-inherited>.tsd-kind-icon:before{background-position:-68px -102px}.tsd-kind-constructor-signature.tsd-parent-kind-class.tsd-is-protected>.tsd-kind-icon:before{background-position:-85px -102px}.tsd-kind-constructor-signature.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited>.tsd-kind-icon:before{background-position:-102px -102px}.tsd-kind-constructor-signature.tsd-parent-kind-class.tsd-is-private>.tsd-kind-icon:before{background-position:-119px -102px}.tsd-kind-constructor-signature.tsd-parent-kind-enum>.tsd-kind-icon:before{background-position:-170px -102px}.tsd-kind-constructor-signature.tsd-parent-kind-enum.tsd-is-protected>.tsd-kind-icon:before{background-position:-187px -102px}.tsd-kind-constructor-signature.tsd-parent-kind-enum.tsd-is-private>.tsd-kind-icon:before{background-position:-119px -102px}.tsd-kind-constructor-signature.tsd-parent-kind-interface>.tsd-kind-icon:before{background-position:-204px -102px}.tsd-kind-constructor-signature.tsd-parent-kind-interface.tsd-is-inherited>.tsd-kind-icon:before{background-position:-221px -102px}.tsd-kind-index-signature>.tsd-kind-icon:before{background-position:-136px -119px}.tsd-kind-index-signature.tsd-is-protected>.tsd-kind-icon:before{background-position:-153px -119px}.tsd-kind-index-signature.tsd-is-private>.tsd-kind-icon:before{background-position:-119px -119px}.tsd-kind-index-signature.tsd-parent-kind-class>.tsd-kind-icon:before{background-position:-51px -119px}.tsd-kind-index-signature.tsd-parent-kind-class.tsd-is-inherited>.tsd-kind-icon:before{background-position:-68px -119px}.tsd-kind-index-signature.tsd-parent-kind-class.tsd-is-protected>.tsd-kind-icon:before{background-position:-85px -119px}.tsd-kind-index-signature.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited>.tsd-kind-icon:before{background-position:-102px -119px}.tsd-kind-index-signature.tsd-parent-kind-class.tsd-is-private>.tsd-kind-icon:before{background-position:-119px -119px}.tsd-kind-index-signature.tsd-parent-kind-enum>.tsd-kind-icon:before{background-position:-170px -119px}.tsd-kind-index-signature.tsd-parent-kind-enum.tsd-is-protected>.tsd-kind-icon:before{background-position:-187px -119px}.tsd-kind-index-signature.tsd-parent-kind-enum.tsd-is-private>.tsd-kind-icon:before{background-position:-119px -119px}.tsd-kind-index-signature.tsd-parent-kind-interface>.tsd-kind-icon:before{background-position:-204px -119px}.tsd-kind-index-signature.tsd-parent-kind-interface.tsd-is-inherited>.tsd-kind-icon:before{background-position:-221px -119px}.tsd-kind-event>.tsd-kind-icon:before{background-position:-136px -136px}.tsd-kind-event.tsd-is-protected>.tsd-kind-icon:before{background-position:-153px -136px}.tsd-kind-event.tsd-is-private>.tsd-kind-icon:before{background-position:-119px -136px}.tsd-kind-event.tsd-parent-kind-class>.tsd-kind-icon:before{background-position:-51px -136px}.tsd-kind-event.tsd-parent-kind-class.tsd-is-inherited>.tsd-kind-icon:before{background-position:-68px -136px}.tsd-kind-event.tsd-parent-kind-class.tsd-is-protected>.tsd-kind-icon:before{background-position:-85px -136px}.tsd-kind-event.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited>.tsd-kind-icon:before{background-position:-102px -136px}.tsd-kind-event.tsd-parent-kind-class.tsd-is-private>.tsd-kind-icon:before{background-position:-119px -136px}.tsd-kind-event.tsd-parent-kind-enum>.tsd-kind-icon:before{background-position:-170px -136px}.tsd-kind-event.tsd-parent-kind-enum.tsd-is-protected>.tsd-kind-icon:before{background-position:-187px -136px}.tsd-kind-event.tsd-parent-kind-enum.tsd-is-private>.tsd-kind-icon:before{background-position:-119px -136px}.tsd-kind-event.tsd-parent-kind-interface>.tsd-kind-icon:before{background-position:-204px -136px}.tsd-kind-event.tsd-parent-kind-interface.tsd-is-inherited>.tsd-kind-icon:before{background-position:-221px -136px}.tsd-is-static>.tsd-kind-icon:before{background-position:-136px -153px}.tsd-is-static.tsd-is-protected>.tsd-kind-icon:before{background-position:-153px -153px}.tsd-is-static.tsd-is-private>.tsd-kind-icon:before{background-position:-119px -153px}.tsd-is-static.tsd-parent-kind-class>.tsd-kind-icon:before{background-position:-51px -153px}.tsd-is-static.tsd-parent-kind-class.tsd-is-inherited>.tsd-kind-icon:before{background-position:-68px -153px}.tsd-is-static.tsd-parent-kind-class.tsd-is-protected>.tsd-kind-icon:before{background-position:-85px -153px}.tsd-is-static.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited>.tsd-kind-icon:before{background-position:-102px -153px}.tsd-is-static.tsd-parent-kind-class.tsd-is-private>.tsd-kind-icon:before{background-position:-119px -153px}.tsd-is-static.tsd-parent-kind-enum>.tsd-kind-icon:before{background-position:-170px -153px}.tsd-is-static.tsd-parent-kind-enum.tsd-is-protected>.tsd-kind-icon:before{background-position:-187px -153px}.tsd-is-static.tsd-parent-kind-enum.tsd-is-private>.tsd-kind-icon:before{background-position:-119px -153px}.tsd-is-static.tsd-parent-kind-interface>.tsd-kind-icon:before{background-position:-204px -153px}.tsd-is-static.tsd-parent-kind-interface.tsd-is-inherited>.tsd-kind-icon:before{background-position:-221px -153px}.tsd-is-static.tsd-kind-function>.tsd-kind-icon:before{background-position:-136px -170px}.tsd-is-static.tsd-kind-function.tsd-is-protected>.tsd-kind-icon:before{background-position:-153px -170px}.tsd-is-static.tsd-kind-function.tsd-is-private>.tsd-kind-icon:before{background-position:-119px -170px}.tsd-is-static.tsd-kind-function.tsd-parent-kind-class>.tsd-kind-icon:before{background-position:-51px -170px}.tsd-is-static.tsd-kind-function.tsd-parent-kind-class.tsd-is-inherited>.tsd-kind-icon:before{background-position:-68px -170px}.tsd-is-static.tsd-kind-function.tsd-parent-kind-class.tsd-is-protected>.tsd-kind-icon:before{background-position:-85px -170px}.tsd-is-static.tsd-kind-function.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited>.tsd-kind-icon:before{background-position:-102px -170px}.tsd-is-static.tsd-kind-function.tsd-parent-kind-class.tsd-is-private>.tsd-kind-icon:before{background-position:-119px -170px}.tsd-is-static.tsd-kind-function.tsd-parent-kind-enum>.tsd-kind-icon:before{background-position:-170px -170px}.tsd-is-static.tsd-kind-function.tsd-parent-kind-enum.tsd-is-protected>.tsd-kind-icon:before{background-position:-187px -170px}.tsd-is-static.tsd-kind-function.tsd-parent-kind-enum.tsd-is-private>.tsd-kind-icon:before{background-position:-119px -170px}.tsd-is-static.tsd-kind-function.tsd-parent-kind-interface>.tsd-kind-icon:before{background-position:-204px -170px}.tsd-is-static.tsd-kind-function.tsd-parent-kind-interface.tsd-is-inherited>.tsd-kind-icon:before{background-position:-221px -170px}.tsd-is-static.tsd-kind-method>.tsd-kind-icon:before{background-position:-136px -170px}.tsd-is-static.tsd-kind-method.tsd-is-protected>.tsd-kind-icon:before{background-position:-153px -170px}.tsd-is-static.tsd-kind-method.tsd-is-private>.tsd-kind-icon:before{background-position:-119px -170px}.tsd-is-static.tsd-kind-method.tsd-parent-kind-class>.tsd-kind-icon:before{background-position:-51px -170px}.tsd-is-static.tsd-kind-method.tsd-parent-kind-class.tsd-is-inherited>.tsd-kind-icon:before{background-position:-68px -170px}.tsd-is-static.tsd-kind-method.tsd-parent-kind-class.tsd-is-protected>.tsd-kind-icon:before{background-position:-85px -170px}.tsd-is-static.tsd-kind-method.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited>.tsd-kind-icon:before{background-position:-102px -170px}.tsd-is-static.tsd-kind-method.tsd-parent-kind-class.tsd-is-private>.tsd-kind-icon:before{background-position:-119px -170px}.tsd-is-static.tsd-kind-method.tsd-parent-kind-enum>.tsd-kind-icon:before{background-position:-170px -170px}.tsd-is-static.tsd-kind-method.tsd-parent-kind-enum.tsd-is-protected>.tsd-kind-icon:before{background-position:-187px -170px}.tsd-is-static.tsd-kind-method.tsd-parent-kind-enum.tsd-is-private>.tsd-kind-icon:before{background-position:-119px -170px}.tsd-is-static.tsd-kind-method.tsd-parent-kind-interface>.tsd-kind-icon:before{background-position:-204px -170px}.tsd-is-static.tsd-kind-method.tsd-parent-kind-interface.tsd-is-inherited>.tsd-kind-icon:before{background-position:-221px -170px}.tsd-is-static.tsd-kind-call-signature>.tsd-kind-icon:before{background-position:-136px -170px}.tsd-is-static.tsd-kind-call-signature.tsd-is-protected>.tsd-kind-icon:before{background-position:-153px -170px}.tsd-is-static.tsd-kind-call-signature.tsd-is-private>.tsd-kind-icon:before{background-position:-119px -170px}.tsd-is-static.tsd-kind-call-signature.tsd-parent-kind-class>.tsd-kind-icon:before{background-position:-51px -170px}.tsd-is-static.tsd-kind-call-signature.tsd-parent-kind-class.tsd-is-inherited>.tsd-kind-icon:before{background-position:-68px -170px}.tsd-is-static.tsd-kind-call-signature.tsd-parent-kind-class.tsd-is-protected>.tsd-kind-icon:before{background-position:-85px -170px}.tsd-is-static.tsd-kind-call-signature.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited>.tsd-kind-icon:before{background-position:-102px -170px}.tsd-is-static.tsd-kind-call-signature.tsd-parent-kind-class.tsd-is-private>.tsd-kind-icon:before{background-position:-119px -170px}.tsd-is-static.tsd-kind-call-signature.tsd-parent-kind-enum>.tsd-kind-icon:before{background-position:-170px -170px}.tsd-is-static.tsd-kind-call-signature.tsd-parent-kind-enum.tsd-is-protected>.tsd-kind-icon:before{background-position:-187px -170px}.tsd-is-static.tsd-kind-call-signature.tsd-parent-kind-enum.tsd-is-private>.tsd-kind-icon:before{background-position:-119px -170px}.tsd-is-static.tsd-kind-call-signature.tsd-parent-kind-interface>.tsd-kind-icon:before{background-position:-204px -170px}.tsd-is-static.tsd-kind-call-signature.tsd-parent-kind-interface.tsd-is-inherited>.tsd-kind-icon:before{background-position:-221px -170px}.tsd-is-static.tsd-kind-event>.tsd-kind-icon:before{background-position:-136px -187px}.tsd-is-static.tsd-kind-event.tsd-is-protected>.tsd-kind-icon:before{background-position:-153px -187px}.tsd-is-static.tsd-kind-event.tsd-is-private>.tsd-kind-icon:before{background-position:-119px -187px}.tsd-is-static.tsd-kind-event.tsd-parent-kind-class>.tsd-kind-icon:before{background-position:-51px -187px}.tsd-is-static.tsd-kind-event.tsd-parent-kind-class.tsd-is-inherited>.tsd-kind-icon:before{background-position:-68px -187px}.tsd-is-static.tsd-kind-event.tsd-parent-kind-class.tsd-is-protected>.tsd-kind-icon:before{background-position:-85px -187px}.tsd-is-static.tsd-kind-event.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited>.tsd-kind-icon:before{background-position:-102px -187px}.tsd-is-static.tsd-kind-event.tsd-parent-kind-class.tsd-is-private>.tsd-kind-icon:before{background-position:-119px -187px}.tsd-is-static.tsd-kind-event.tsd-parent-kind-enum>.tsd-kind-icon:before{background-position:-170px -187px}.tsd-is-static.tsd-kind-event.tsd-parent-kind-enum.tsd-is-protected>.tsd-kind-icon:before{background-position:-187px -187px}.tsd-is-static.tsd-kind-event.tsd-parent-kind-enum.tsd-is-private>.tsd-kind-icon:before{background-position:-119px -187px}.tsd-is-static.tsd-kind-event.tsd-parent-kind-interface>.tsd-kind-icon:before{background-position:-204px -187px}.tsd-is-static.tsd-kind-event.tsd-parent-kind-interface.tsd-is-inherited>.tsd-kind-icon:before{background-position:-221px -187px}.no-transition{transition:none !important}@keyframes fade-in{from{opacity:0}to{opacity:1}}@keyframes fade-out{from{opacity:1;visibility:visible}to{opacity:0}}@keyframes fade-in-delayed{0%{opacity:0}33%{opacity:0}100%{opacity:1}}@keyframes fade-out-delayed{0%{opacity:1;visibility:visible}66%{opacity:0}100%{opacity:0}}@keyframes shift-to-left{from{transform:translate(0, 0)}to{transform:translate(-25%, 0)}}@keyframes unshift-to-left{from{transform:translate(-25%, 0)}to{transform:translate(0, 0)}}@keyframes pop-in-from-right{from{transform:translate(100%, 0)}to{transform:translate(0, 0)}}@keyframes pop-out-to-right{from{transform:translate(0, 0);visibility:visible}to{transform:translate(100%, 0)}}body{background:#fdfdfd;font-family:"Segoe UI",sans-serif;font-size:16px;color:#222}a{color:#00796b;text-decoration:none}a:hover{text-decoration:underline}code,pre{font-family:Menlo,Monaco,Consolas,"Courier New",monospace;padding:.2em;margin:0;font-size:14px;background-color:rgba(0,0,0,.04)}pre{padding:10px}pre code{padding:0;font-size:100%;background-color:transparent}.tsd-typography{line-height:2em}.tsd-typography ul{list-style:square;padding:0 0 0 20px;margin:0}.tsd-typography h4,.tsd-typography .tsd-index-panel h3,.tsd-index-panel .tsd-typography h3,.tsd-typography h5,.tsd-typography h6{font-size:1em;margin:0}.tsd-typography h5,.tsd-typography h6{font-weight:normal}.tsd-typography p,.tsd-typography ul,.tsd-typography ol{margin:1em 0}@media(min-width: 901px)and (max-width: 1024px){html.default .col-content{width:72%}html.default .col-menu{width:28%}html.default .tsd-navigation{padding-left:10px}}@media(max-width: 900px){html.default .col-content{float:none;width:100%}html.default .col-menu{position:fixed !important;overflow:auto;-webkit-overflow-scrolling:touch;overflow-scrolling:touch;z-index:1024;top:0 !important;bottom:0 !important;left:auto !important;right:0 !important;width:100%;padding:20px 20px 0 0;max-width:450px;visibility:hidden;background-color:#fff;transform:translate(100%, 0)}html.default .col-menu>*:last-child{padding-bottom:20px}html.default .overlay{content:"";display:block;position:fixed;z-index:1023;top:0;left:0;right:0;bottom:0;background-color:rgba(0,0,0,.75);visibility:hidden}html.default.to-has-menu .overlay{animation:fade-in .4s}html.default.to-has-menu header,html.default.to-has-menu footer,html.default.to-has-menu .col-content{animation:shift-to-left .4s}html.default.to-has-menu .col-menu{animation:pop-in-from-right .4s}html.default.from-has-menu .overlay{animation:fade-out .4s}html.default.from-has-menu header,html.default.from-has-menu footer,html.default.from-has-menu .col-content{animation:unshift-to-left .4s}html.default.from-has-menu .col-menu{animation:pop-out-to-right .4s}html.default.has-menu body{overflow:hidden}html.default.has-menu .overlay{visibility:visible}html.default.has-menu header,html.default.has-menu footer,html.default.has-menu .col-content{transform:translate(-25%, 0)}html.default.has-menu .col-menu{visibility:visible;transform:translate(0, 0)}}.tsd-page-title{padding:70px 0 20px 0;margin:0 0 40px 0;background:#fff;box-shadow:0 0 5px rgba(0,0,0,.35)}.tsd-page-title h1{margin:0}.tsd-breadcrumb{margin:0;padding:0;color:gray}.tsd-breadcrumb a{color:gray;text-decoration:none}.tsd-breadcrumb a:hover{text-decoration:underline}.tsd-breadcrumb li{display:inline}.tsd-breadcrumb li:after{content:" / "}html.minimal .container{margin:0}html.minimal .container-main{padding-top:50px;padding-bottom:0}html.minimal .content-wrap{padding-left:300px}html.minimal .tsd-navigation{position:fixed !important;overflow:auto;-webkit-overflow-scrolling:touch;overflow-scrolling:touch;box-sizing:border-box;z-index:1;left:0;top:40px;bottom:0;width:300px;padding:20px;margin:0}html.minimal .tsd-member .tsd-member{margin-left:0}html.minimal .tsd-page-toolbar{position:fixed;z-index:2}html.minimal #tsd-filter .tsd-filter-group{right:0;transform:none}html.minimal footer{background-color:transparent}html.minimal footer .container{padding:0}html.minimal .tsd-generator{padding:0}@media(max-width: 900px){html.minimal .tsd-navigation{display:none}html.minimal .content-wrap{padding-left:0}}dl.tsd-comment-tags{overflow:hidden}dl.tsd-comment-tags dt{float:left;padding:1px 5px;margin:0 10px 0 0;border-radius:4px;border:1px solid gray;color:gray;font-size:.8em;font-weight:normal}dl.tsd-comment-tags dd{margin:0 0 10px 0}dl.tsd-comment-tags dd:before,dl.tsd-comment-tags dd:after{display:table;content:" "}dl.tsd-comment-tags dd pre,dl.tsd-comment-tags dd:after{clear:both}dl.tsd-comment-tags p{margin:0}.tsd-panel.tsd-comment .lead{font-size:1.1em;line-height:2em;margin-bottom:2em}.tsd-panel.tsd-comment .lead:last-child{margin-bottom:0}.toggle-protected .tsd-is-private{display:none}.toggle-public .tsd-is-private,.toggle-public .tsd-is-protected,.toggle-public .tsd-is-private-protected{display:none}.toggle-inherited .tsd-is-inherited{display:none}.toggle-only-exported .tsd-is-not-exported{display:none}.toggle-externals .tsd-is-external{display:none}#tsd-filter{position:relative;display:inline-block;height:40px;vertical-align:bottom}.no-filter #tsd-filter{display:none}#tsd-filter .tsd-filter-group{display:inline-block;height:40px;vertical-align:bottom;white-space:nowrap}#tsd-filter input{display:none}@media(max-width: 900px){#tsd-filter .tsd-filter-group{display:block;position:absolute;top:40px;right:20px;height:auto;background-color:#fff;visibility:hidden;transform:translate(50%, 0);box-shadow:0 0 4px rgba(0,0,0,.25)}.has-options #tsd-filter .tsd-filter-group{visibility:visible}.to-has-options #tsd-filter .tsd-filter-group{animation:fade-in .2s}.from-has-options #tsd-filter .tsd-filter-group{animation:fade-out .2s}#tsd-filter label,#tsd-filter .tsd-select{display:block;padding-right:20px}}footer{border-top:1px solid #eee;background-color:#fff}footer.with-border-bottom{border-bottom:1px solid #eee}footer .tsd-legend-group{font-size:0}footer .tsd-legend{display:inline-block;width:25%;padding:0;font-size:16px;list-style:none;line-height:2em;vertical-align:top}@media(max-width: 900px){footer .tsd-legend{width:50%}}.tsd-hierarchy{list-style:square;padding:0 0 0 20px;margin:0}.tsd-hierarchy .target{font-weight:bold}.tsd-index-panel .tsd-index-content{margin-bottom:-30px !important}.tsd-index-panel .tsd-index-section{margin-bottom:30px !important}.tsd-index-panel h3{margin:0 -20px 10px -20px;padding:0 20px 10px 20px;border-bottom:1px solid #eee}.tsd-index-panel ul.tsd-index-list{padding:0;list-style:none;line-height:2em;font-size:13px}.tsd-index-panel ul.tsd-index-list li{-webkit-column-break-inside:avoid;-moz-column-break-inside:avoid;-ms-column-break-inside:avoid;-o-column-break-inside:avoid;column-break-inside:avoid;-webkit-page-break-inside:avoid;-moz-page-break-inside:avoid;-ms-page-break-inside:avoid;-o-page-break-inside:avoid;page-break-inside:avoid}.tsd-index-panel a,.tsd-index-panel .tsd-parent-kind-module a{color:#00796b}.tsd-index-panel .tsd-parent-kind-interface a{color:#00796b}.tsd-index-panel .tsd-parent-kind-enum a{color:#00796b}.tsd-index-panel .tsd-parent-kind-class a{color:#00796b}.tsd-index-panel .tsd-kind-module a{color:#00796b}.tsd-index-panel .tsd-kind-interface a{color:#00796b}.tsd-index-panel .tsd-kind-enum a{color:#00796b}.tsd-index-panel .tsd-kind-class a{color:#00796b}.tsd-index-panel .tsd-is-private a{color:gray}@media screen and (max-width: 900px){ul.tsd-index-list{overflow:auto}.container-main .offset-3{width:0px}}.tsd-flag{display:inline-block;padding:1px 5px;border-radius:4px;color:#fff;background-color:gray;text-indent:0;font-size:14px;font-weight:normal}.tsd-anchor{position:absolute;top:-100px}.tsd-member{position:relative}.tsd-member .tsd-anchor+h3{margin-top:0;margin-bottom:0;border-bottom:none}.tsd-navigation{padding:0 0 0 0;height:calc(100vh - 260px);overflow-y:auto}.tsd-navigation a{display:block;padding-top:2px;padding-bottom:2px;border-left:2px solid transparent;color:#222;text-decoration:none;transition:border-left-color .1s;font-size:13px;word-break:break-word;margin-left:1em}.tsd-navigation a:hover{color:blue}.tsd-navigation ul{margin:0;padding:0;list-style:none}.tsd-navigation li{padding:0}.tsd-navigation div{font-size:13px}.tsd-navigation.primary{padding-bottom:40px}.tsd-navigation.primary a,.tsd-navigation.primary div{display:block;height:29px;line-height:29px;box-sizing:border-box;font-size:14px;padding:0}.tsd-navigation.primary a.selected{font-weight:bold}.tsd-navigation.primary ul li a{padding-left:5px}.tsd-navigation.primary ul li li a{padding-left:25px}.tsd-navigation.primary ul li li li a{padding-left:45px}.tsd-navigation.primary ul li li li li a{padding-left:65px}.tsd-navigation.primary ul li li li li li a{padding-left:85px}.tsd-navigation.primary ul li li li li li li a{padding-left:105px}.tsd-navigation.primary>ul{border-bottom:1px solid #eee}.tsd-navigation.primary li{border-top:1px solid #eee}.tsd-navigation.primary li.current>a{font-weight:bold}.tsd-navigation.primary li.label span{display:block;padding:20px 0 6px 5px;color:gray}.tsd-navigation.primary li.globals+li>span,.tsd-navigation.primary li.globals+li>a{margin-top:20px}.tsd-navigation.secondary ul{transition:opacity .2s}.tsd-navigation.secondary ul li a{padding-left:25px}.tsd-navigation.secondary ul li li a{padding-left:45px}.tsd-navigation.secondary ul li li li a{padding-left:65px}.tsd-navigation.secondary ul li li li li a{padding-left:85px}.tsd-navigation.secondary ul li li li li li a{padding-left:105px}.tsd-navigation.secondary ul li li li li li li a{padding-left:125px}.tsd-navigation.secondary ul.current a{border-left-color:#eee}.tsd-navigation.secondary li.focus>a,.tsd-navigation.secondary ul.current li.focus>a{border-left-color:#000}.tsd-navigation.secondary li.current{margin-top:20px;margin-bottom:20px;border-left-color:#eee}.tsd-navigation.secondary li.current>a{font-weight:bold}@media(min-width: 901px){.menu-sticky-wrap{position:static}.no-csspositionsticky .menu-sticky-wrap.sticky{position:fixed}.no-csspositionsticky .menu-sticky-wrap.sticky-current{position:fixed}.no-csspositionsticky .menu-sticky-wrap.sticky-current ul.before-current,.no-csspositionsticky .menu-sticky-wrap.sticky-current ul.after-current{opacity:0}.no-csspositionsticky .menu-sticky-wrap.sticky-bottom{position:absolute;top:auto !important;left:auto !important;bottom:0;right:0}.csspositionsticky .menu-sticky-wrap.sticky{position:-webkit-sticky;position:sticky}.csspositionsticky .menu-sticky-wrap.sticky-current{position:-webkit-sticky;position:sticky}}.col-menu{position:fixed;top:120px}.secondary-menu{margin-left:calc(83% - 50px);overflow-y:auto}@media(min-width: 1300px){.secondary-menu{margin-left:1000px}}.root>ul>.tsd-parent-kind-class{margin-left:16px}.root>ul>.tsd-kind-constructor:before{content:"Constructors";font-size:13px;margin-left:24px}.root>ul>.tsd-kind-constructor~.tsd-kind-constructor::before{content:none}.root>ul>.tsd-kind-property:before{content:"Properties";font-size:13px;margin-left:24px}.root>ul>.tsd-kind-property~.tsd-kind-property::before{content:none}.root>ul>.tsd-kind-get-signature:before{content:"Accessors";font-size:13px;margin-left:24px}.root>ul>.tsd-kind-get-signature~.tsd-kind-get-signature::before{content:none}.root>ul>.tsd-kind-method:before{content:"Methods";font-size:13px;margin-left:24px}.root>ul>.tsd-kind-method~.tsd-kind-method::before{content:none}.root.tsd-kind-class:before{content:"Classes";font-size:13px}.root.tsd-kind-class~.tsd-kind-class::before{content:none}.root.tsd-kind-interface:before{content:"Interfaces";font-size:13px}.root.tsd-kind-interface~.tsd-kind-interface::before{content:none}.root.tsd-kind-type-alias:before{content:"Types";font-size:13px}.root.tsd-kind-type-alias~.tsd-kind-type-alias::before{content:none}.root.tsd-kind-function:before{content:"Functions";font-size:13px}.root.tsd-kind-function~.tsd-kind-function::before{content:none}.root.tsd-kind-enum:before{content:"Enums";font-size:13px}.root.tsd-kind-enum~.tsd-kind-enum::before{content:none}.tsd-panel{margin:20px 0;padding:20px;background-color:#fff;box-shadow:0 0 4px rgba(0,0,0,.25)}.tsd-panel:empty{display:none}.tsd-panel>h1,.tsd-panel>h2,.tsd-panel>h3{margin:1.5em -20px 10px -20px;padding:0 20px 10px 20px;border-bottom:1px solid #eee}.tsd-panel>h1.tsd-before-signature,.tsd-panel>h2.tsd-before-signature,.tsd-panel>h3.tsd-before-signature{margin-bottom:0;border-bottom:0}.tsd-panel table{display:block;width:100%;overflow:auto;margin-top:10px;word-break:normal;word-break:keep-all}.tsd-panel table th{font-weight:bold}.tsd-panel table th,.tsd-panel table td{padding:6px 13px;border:1px solid #ddd}.tsd-panel table tr{background-color:#fff;border-top:1px solid #ccc}.tsd-panel table tr:nth-child(2n){background-color:#f8f8f8}.tsd-panel-group{margin:60px 0}.tsd-panel-group>h1,.tsd-panel-group>h2,.tsd-panel-group>h3{padding-left:20px;padding-right:20px}#tsd-search{transition:background-color .2s}#tsd-search .title{position:relative;z-index:2}#tsd-search .field{position:absolute;left:0;top:0;right:40px;height:40px}#tsd-search .field input{box-sizing:border-box;position:relative;top:-50px;z-index:1;width:100%;padding:0 10px;opacity:0;outline:0;border:0;background:transparent;color:#222}#tsd-search .field label{position:absolute;overflow:hidden;right:-40px}#tsd-search .field input,#tsd-search .title{transition:opacity .2s}#tsd-search .results{position:absolute;visibility:hidden;top:40px;width:100%;margin:0;padding:0;list-style:none;box-shadow:0 0 4px rgba(0,0,0,.25)}#tsd-search .results li{padding:0 10px;background-color:#fdfdfd}#tsd-search .results li:nth-child(even){background-color:#fff}#tsd-search .results li.state{display:none}#tsd-search .results li.current,#tsd-search .results li:hover{background-color:#eee}#tsd-search .results a{display:block}#tsd-search .results a:before{top:10px}#tsd-search .results span.parent{color:gray;font-weight:normal}#tsd-search.has-focus{background-color:#eee}#tsd-search.has-focus .field input{top:0;opacity:1}#tsd-search.has-focus .title{z-index:0;opacity:0}#tsd-search.has-focus .results{visibility:visible}#tsd-search.loading .results li.state.loading{display:block}#tsd-search.failure .results li.state.failure{display:block}.low-priority a,.low-priority span{color:#999 !important;font-size:10pt}.tsd-signature{margin:0 0 1em 0;padding:10px;border:1px solid #eee;font-family:Menlo,Monaco,Consolas,"Courier New",monospace;font-size:14px}.tsd-signature.tsd-kind-icon{padding-left:30px}.tsd-signature.tsd-kind-icon:before{top:10px;left:10px}.tsd-panel>.tsd-signature{margin-left:-20px;margin-right:-20px;border-width:1px 0}.tsd-panel>.tsd-signature.tsd-kind-icon{padding-left:40px}.tsd-panel>.tsd-signature.tsd-kind-icon:before{left:20px}.tsd-signature-symbol{color:gray;font-weight:normal}.tsd-signature-type{font-style:italic;font-weight:normal}.tsd-signatures{padding:0;margin:0 0 1em 0;border:1px solid #eee}.tsd-signatures .tsd-signature{margin:0;border-width:1px 0 0 0;transition:background-color .1s}.tsd-signatures .tsd-signature:first-child{border-top-width:0}.tsd-signatures .tsd-signature.current{background-color:#eee}.tsd-signatures.active>.tsd-signature{cursor:pointer}.tsd-panel>.tsd-signatures{margin-left:-20px;margin-right:-20px;border-width:1px 0}.tsd-panel>.tsd-signatures .tsd-signature.tsd-kind-icon{padding-left:40px}.tsd-panel>.tsd-signatures .tsd-signature.tsd-kind-icon:before{left:20px}.tsd-panel>a.anchor+.tsd-signatures{border-top-width:0;margin-top:-20px}ul.tsd-descriptions{position:relative;overflow:hidden;transition:height .3s;padding:0;list-style:none}ul.tsd-descriptions.active>.tsd-description{display:none}ul.tsd-descriptions.active>.tsd-description.current{display:block}ul.tsd-descriptions.active>.tsd-description.fade-in{animation:fade-in-delayed .3s}ul.tsd-descriptions.active>.tsd-description.fade-out{animation:fade-out-delayed .3s;position:absolute;display:block;top:0;left:0;right:0;opacity:0;visibility:hidden}ul.tsd-descriptions h4,ul.tsd-descriptions .tsd-index-panel h3,.tsd-index-panel ul.tsd-descriptions h3{font-size:16px;margin:1em 0 .5em 0}ul.tsd-parameters,ul.tsd-type-parameters{list-style:square;margin:0;padding-left:20px}ul.tsd-parameters>li.tsd-parameter-siganture,ul.tsd-type-parameters>li.tsd-parameter-siganture{list-style:none;margin-left:-20px}ul.tsd-parameters h5,ul.tsd-type-parameters h5{font-size:16px;margin:1em 0 .5em 0}ul.tsd-parameters .tsd-comment,ul.tsd-type-parameters .tsd-comment{margin-top:-0.5em}.tsd-sources{font-size:14px;color:gray;margin:0 0 1em 0}.tsd-sources a{color:gray;text-decoration:underline}.tsd-sources ul,.tsd-sources p{margin:0 !important}.tsd-sources ul{list-style:none;padding:0}.tsd-page-toolbar{position:absolute;z-index:1;top:0;left:0;width:100%;height:40px;color:#333;background:#fff;border-bottom:1px solid #eee}.tsd-page-toolbar a{color:#333;text-decoration:none}.tsd-page-toolbar a.title{font-weight:bold}.tsd-page-toolbar a.title:hover{text-decoration:underline}.tsd-page-toolbar .table-wrap{display:table;width:100%;height:40px}.tsd-page-toolbar .table-cell{display:table-cell;position:relative;white-space:nowrap;line-height:40px}.tsd-page-toolbar .table-cell:first-child{width:100%}.tsd-select .tsd-select-list li:before,.tsd-select .tsd-select-label:before,.tsd-widget:before{content:"";display:inline-block;width:40px;height:40px;margin:0 -8px 0 0;background-image:url(../images/widgets.png);background-repeat:no-repeat;text-indent:-1024px;vertical-align:bottom}@media(-webkit-min-device-pixel-ratio: 1.5),(min-device-pixel-ratio: 1.5),(min-resolution: 144dpi){.tsd-select .tsd-select-list li:before,.tsd-select .tsd-select-label:before,.tsd-widget:before{background-image:url(../images/widgets@2x.png);background-size:320px 40px}}.tsd-widget{display:inline-block;overflow:hidden;opacity:.6;height:40px;transition:opacity .1s,background-color .2s;vertical-align:bottom;cursor:pointer}.tsd-widget:hover{opacity:.8}.tsd-widget.active{opacity:1;background-color:#eee}.tsd-widget.no-caption{width:40px}.tsd-widget.no-caption:before{margin:0}.tsd-widget.search:before{background-position:0 0}.tsd-widget.menu:before{background-position:-40px 0}.tsd-widget.options:before{background-position:-80px 0}.tsd-widget.options,.tsd-widget.menu{display:none}@media(max-width: 900px){.tsd-widget.options,.tsd-widget.menu{display:inline-block}}input[type=checkbox]+.tsd-widget:before{background-position:-120px 0}input[type=checkbox]:checked+.tsd-widget:before{background-position:-160px 0}.tsd-select{position:relative;display:inline-block;height:40px;transition:opacity .1s,background-color .2s;vertical-align:bottom;cursor:pointer}.tsd-select .tsd-select-label{opacity:.6;transition:opacity .2s}.tsd-select .tsd-select-label:before{background-position:-240px 0}.tsd-select.active .tsd-select-label{opacity:.8}.tsd-select.active .tsd-select-list{visibility:visible;opacity:1;transition-delay:0s}.tsd-select .tsd-select-list{position:absolute;visibility:hidden;top:40px;left:0;margin:0;padding:0;opacity:0;list-style:none;box-shadow:0 0 4px rgba(0,0,0,.25);transition:visibility 0s .2s,opacity .2s}.tsd-select .tsd-select-list li{padding:0 20px 0 0;background-color:#fdfdfd}.tsd-select .tsd-select-list li:before{background-position:40px 0}.tsd-select .tsd-select-list li:nth-child(even){background-color:#fff}.tsd-select .tsd-select-list li:hover{background-color:#eee}.tsd-select .tsd-select-list li.selected:before{background-position:-200px 0}@media(max-width: 900px){.tsd-select .tsd-select-list{top:0;left:auto;right:100%;margin-right:-5px}.tsd-select .tsd-select-label:before{background-position:-280px 0}}@media screen and (max-width: 900px){.tsd-page-toolbar{overflow:auto}.tsd-widget.search.no-caption{right:-80px}#tsd-widgets{padding-left:40px}}img{max-width:100%} diff --git a/docs/assets/css/main.css.map b/docs/assets/css/main.css.map deleted file mode 100644 index e9716e63..00000000 --- a/docs/assets/css/main.css.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sourceRoot":"","sources":["../../../../third_party/src/default/assets/css/vendors/_normalize.sass","../../../../third_party/src/default/assets/css/vendors/_highlight.js.sass","../../../../third_party/src/default/assets/css/setup/_mixins.sass","../../../../third_party/src/default/assets/css/setup/_grid.sass","../../../../third_party/src/default/assets/css/setup/_icons.scss","../../../../third_party/src/default/assets/css/setup/_animations.sass","../../../../third_party/src/default/assets/css/setup/_typography.sass","../../../../third_party/src/default/assets/css/_constants.sass","../../../../third_party/src/default/assets/css/layouts/_default.sass","../../../../third_party/src/default/assets/css/layouts/_minimal.sass","../../../../third_party/src/default/assets/css/elements/_comment.sass","../../../../third_party/src/default/assets/css/elements/_filter.sass","../../../../third_party/src/default/assets/css/elements/_footer.sass","../../../../third_party/src/default/assets/css/elements/_hierarchy.sass","../../../../third_party/src/default/assets/css/elements/_index.sass","../../../../third_party/src/default/assets/css/elements/_member.sass","../../../../third_party/src/default/assets/css/elements/_navigation.sass","../../../../third_party/src/default/assets/css/elements/_panel.sass","../../../../third_party/src/default/assets/css/elements/_search.sass","../../../../third_party/src/default/assets/css/elements/_signatures.sass","../../../../third_party/src/default/assets/css/elements/_sources.sass","../../../../third_party/src/default/assets/css/elements/_toolbar.sass","../../../../third_party/src/default/assets/css/elements/_images.sass"],"names":[],"mappings":"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CA,eACJ,qDACI,aAGJ,iCACI,gBACA,eACJ,uDACI,aAGJ,+BACI,oBACA,eACJ,mDACI,aAGJ,2BACI,gBACA,eACJ,2CACI,aC/PR,WAEI,cACA,aACA,iBVUU,KUTV,mCAEA,iBACI,aAEJ,0CACI,8BACA,yBACA,6BAEA,yGACI,gBACA,gBAER,iBACI,cACA,WACA,cACA,gBACA,kBACA,oBAEA,oBACI,iBAEJ,wCACI,iBACA,sBAEJ,oBACI,sBACA,0BAEA,kCACI,yBAiBhB,iBACI,cAEA,4DACI,kBACA,mBCrER,YACI,gCAEA,mBACI,kBACA,UAEJ,mBACI,kBACA,OACA,MACA,WACA,YAEA,yBACI,sBACA,kBACA,UACA,UACA,WACA,eACA,UACA,UACA,SACA,uBACA,MXXC,KWaL,yBACI,kBACA,gBACA,YAER,4CAEI,uBAEJ,qBACI,kBACA,kBACA,SACA,WACA,SACA,UACA,gBACA,mCAEA,wBACI,eACA,iBXnCO,QWqCX,wCACI,iBX7BE,KW+BN,8BACI,aAEJ,8DAEI,iBXnCU,KWqCd,uBACI,cAEA,8BACI,SAER,iCACI,MXpDO,KWqDP,mBAER,sBACI,iBXhDc,KWkDd,mCACI,MACA,UAEJ,6BACI,UACA,UAEJ,+BACI,mBAER,8CACI,cAEJ,8CACI,cAGJ,mCACI,sBACA,eChFR,eACI,iBACA,aACA,sBACA,YZde,8CYef,UZZa,KYcb,6BACI,kBAEA,oCACI,SACA,UAER,0BACI,kBACA,mBACA,mBAEA,wCACI,kBAEA,+CACI,UAEhB,sBACI,MZxBe,KYyBf,mBAEJ,oBACI,kBACA,mBAYJ,gBACI,UACA,iBACA,sBAEA,+BACI,SACA,uBACA,gCAEA,2CACI,mBAEJ,uCACI,iBZ/CU,KYiDlB,sCACI,eAEJ,2BACI,kBACA,mBACA,mBAEA,wDACI,kBAEA,+DACI,UAEZ,oCACI,mBACA,iBAeR,oBACI,kBACA,gBACA,sBACA,UACA,gBAKA,4CACI,aAEA,oDACI,cAEJ,oDACI,8BAEJ,qDACI,+BACA,kBACA,cACA,MACA,OACA,QACA,UACA,kBAER,uGACI,UZhII,KYiIJ,oBAER,yCAEI,kBACA,SACA,kBAEA,+FACI,gBACA,kBAEJ,+CACI,UZ9II,KY+IJ,oBAEJ,mEACI,kBC9IR,aACI,UbJa,KaKb,MbIe,KaHf,iBAEA,eACI,WACA,0BAEJ,+BACI,oBAEJ,gBACI,gBACA,UCXR,kBACI,kBACA,UACA,MACA,OACA,WACA,OdoBa,KcnBb,MdkBiB,KcjBjB,WdgBY,KcfZ,6BAEA,oBACI,Mdaa,KcZb,qBAEA,0BACI,iBAEJ,gCACI,0BAER,8BACI,cACA,WACA,OdES,mCcCT,mBACA,kBACA,mBACA,YdJS,KcMT,0CACI,WAGR,+FACI,WACA,qBACA,WACA,YACA,kBACA,4CACA,4BACA,oBACA,sBnBzCJ,mGACI,+FmB2CI,+CACA,4BAEZ,YAEI,qBACA,gBACA,WACA,Od9Ba,Kc+Bb,4CACA,sBACA,eAEA,kBACI,WAEJ,mBACI,UACA,iBdvDc,KcyDlB,uBACI,WAEA,8BACI,SAER,0BACI,wBAEJ,wBACI,4BAEJ,2BACI,4BAEJ,qCAEI,alB5EJ,yBACI,qCkB8EI,sBAER,wCACI,6BAEJ,gDACI,6BAER,YACI,kBACA,qBACA,OdzEa,Kc0Eb,4CACA,sBACA,eAEA,8BAEI,WACA,uBAEA,qCACI,6BAGJ,qCACI,WAEJ,oCACI,mBACA,UACA,oBAER,6BACI,kBACA,kBACA,IdlGS,KcmGT,OACA,SACA,UACA,UACA,gBACA,mCACA,yCAEA,gCAEI,mBACA,iBdvIO,QcyIP,uCACI,2BAEJ,gDACI,iBdpIF,KcsIF,sCACI,iBdtIM,KcwIV,gDACI,6BlB3IZ,yBkB8II,6BACI,MACA,UACA,WACA,kBAEJ,qCACI,8BAEZ,qCAEI,kBACI,cAEJ,8BACI,YAEJ,aACI,mBCpLR,IACI","file":"main.css"} \ No newline at end of file diff --git a/docs/assets/highlight.css b/docs/assets/highlight.css new file mode 100644 index 00000000..43d713a3 --- /dev/null +++ b/docs/assets/highlight.css @@ -0,0 +1,50 @@ +:root { + --light-hl-0: #000000; + --dark-hl-0: #D4D4D4; + --light-hl-1: #0451A5; + --dark-hl-1: #9CDCFE; + --light-hl-2: #A31515; + --dark-hl-2: #CE9178; + --light-hl-3: #795E26; + --dark-hl-3: #DCDCAA; + --light-code-background: #FFFFFF; + --dark-code-background: #1E1E1E; +} + +@media (prefers-color-scheme: light) { :root { + --hl-0: var(--light-hl-0); + --hl-1: var(--light-hl-1); + --hl-2: var(--light-hl-2); + --hl-3: var(--light-hl-3); + --code-background: var(--light-code-background); +} } + +@media (prefers-color-scheme: dark) { :root { + --hl-0: var(--dark-hl-0); + --hl-1: var(--dark-hl-1); + --hl-2: var(--dark-hl-2); + --hl-3: var(--dark-hl-3); + --code-background: var(--dark-code-background); +} } + +body.light { + --hl-0: var(--light-hl-0); + --hl-1: var(--light-hl-1); + --hl-2: var(--light-hl-2); + --hl-3: var(--light-hl-3); + --code-background: var(--light-code-background); +} + +body.dark { + --hl-0: var(--dark-hl-0); + --hl-1: var(--dark-hl-1); + --hl-2: var(--dark-hl-2); + --hl-3: var(--dark-hl-3); + --code-background: var(--dark-code-background); +} + +.hl-0 { color: var(--hl-0); } +.hl-1 { color: var(--hl-1); } +.hl-2 { color: var(--hl-2); } +.hl-3 { color: var(--hl-3); } +pre, code { background: var(--code-background); } diff --git a/docs/assets/icons.css b/docs/assets/icons.css new file mode 100644 index 00000000..776a3562 --- /dev/null +++ b/docs/assets/icons.css @@ -0,0 +1,1043 @@ +.tsd-kind-icon { + display: block; + position: relative; + padding-left: 20px; + text-indent: -20px; +} +.tsd-kind-icon:before { + content: ""; + display: inline-block; + vertical-align: middle; + width: 17px; + height: 17px; + margin: 0 3px 2px 0; + background-image: url(./icons.png); +} +@media (-webkit-min-device-pixel-ratio: 1.5), (min-resolution: 144dpi) { + .tsd-kind-icon:before { + background-image: url(./icons@2x.png); + background-size: 238px 204px; + } +} + +.tsd-signature.tsd-kind-icon:before { + background-position: 0 -153px; +} + +.tsd-kind-object-literal > .tsd-kind-icon:before { + background-position: 0px -17px; +} +.tsd-kind-object-literal.tsd-is-protected > .tsd-kind-icon:before { + background-position: -17px -17px; +} +.tsd-kind-object-literal.tsd-is-private > .tsd-kind-icon:before { + background-position: -34px -17px; +} + +.tsd-kind-class > .tsd-kind-icon:before { + background-position: 0px -34px; +} +.tsd-kind-class.tsd-is-protected > .tsd-kind-icon:before { + background-position: -17px -34px; +} +.tsd-kind-class.tsd-is-private > .tsd-kind-icon:before { + background-position: -34px -34px; +} + +.tsd-kind-class.tsd-has-type-parameter > .tsd-kind-icon:before { + background-position: 0px -51px; +} +.tsd-kind-class.tsd-has-type-parameter.tsd-is-protected + > .tsd-kind-icon:before { + background-position: -17px -51px; +} +.tsd-kind-class.tsd-has-type-parameter.tsd-is-private > .tsd-kind-icon:before { + background-position: -34px -51px; +} + +.tsd-kind-interface > .tsd-kind-icon:before { + background-position: 0px -68px; +} +.tsd-kind-interface.tsd-is-protected > .tsd-kind-icon:before { + background-position: -17px -68px; +} +.tsd-kind-interface.tsd-is-private > .tsd-kind-icon:before { + background-position: -34px -68px; +} + +.tsd-kind-interface.tsd-has-type-parameter > .tsd-kind-icon:before { + background-position: 0px -85px; +} +.tsd-kind-interface.tsd-has-type-parameter.tsd-is-protected + > .tsd-kind-icon:before { + background-position: -17px -85px; +} +.tsd-kind-interface.tsd-has-type-parameter.tsd-is-private + > .tsd-kind-icon:before { + background-position: -34px -85px; +} + +.tsd-kind-namespace > .tsd-kind-icon:before { + background-position: 0px -102px; +} +.tsd-kind-namespace.tsd-is-protected > .tsd-kind-icon:before { + background-position: -17px -102px; +} +.tsd-kind-namespace.tsd-is-private > .tsd-kind-icon:before { + background-position: -34px -102px; +} + +.tsd-kind-module > .tsd-kind-icon:before { + background-position: 0px -102px; +} +.tsd-kind-module.tsd-is-protected > .tsd-kind-icon:before { + background-position: -17px -102px; +} +.tsd-kind-module.tsd-is-private > .tsd-kind-icon:before { + background-position: -34px -102px; +} + +.tsd-kind-enum > .tsd-kind-icon:before { + background-position: 0px -119px; +} +.tsd-kind-enum.tsd-is-protected > .tsd-kind-icon:before { + background-position: -17px -119px; +} +.tsd-kind-enum.tsd-is-private > .tsd-kind-icon:before { + background-position: -34px -119px; +} + +.tsd-kind-enum-member > .tsd-kind-icon:before { + background-position: 0px -136px; +} +.tsd-kind-enum-member.tsd-is-protected > .tsd-kind-icon:before { + background-position: -17px -136px; +} +.tsd-kind-enum-member.tsd-is-private > .tsd-kind-icon:before { + background-position: -34px -136px; +} + +.tsd-kind-signature > .tsd-kind-icon:before { + background-position: 0px -153px; +} +.tsd-kind-signature.tsd-is-protected > .tsd-kind-icon:before { + background-position: -17px -153px; +} +.tsd-kind-signature.tsd-is-private > .tsd-kind-icon:before { + background-position: -34px -153px; +} + +.tsd-kind-type-alias > .tsd-kind-icon:before { + background-position: 0px -170px; +} +.tsd-kind-type-alias.tsd-is-protected > .tsd-kind-icon:before { + background-position: -17px -170px; +} +.tsd-kind-type-alias.tsd-is-private > .tsd-kind-icon:before { + background-position: -34px -170px; +} + +.tsd-kind-type-alias.tsd-has-type-parameter > .tsd-kind-icon:before { + background-position: 0px -187px; +} +.tsd-kind-type-alias.tsd-has-type-parameter.tsd-is-protected + > .tsd-kind-icon:before { + background-position: -17px -187px; +} +.tsd-kind-type-alias.tsd-has-type-parameter.tsd-is-private + > .tsd-kind-icon:before { + background-position: -34px -187px; +} + +.tsd-kind-variable > .tsd-kind-icon:before { + background-position: -136px -0px; +} +.tsd-kind-variable.tsd-is-protected > .tsd-kind-icon:before { + background-position: -153px -0px; +} +.tsd-kind-variable.tsd-is-private > .tsd-kind-icon:before { + background-position: -119px -0px; +} +.tsd-kind-variable.tsd-parent-kind-class > .tsd-kind-icon:before { + background-position: -51px -0px; +} +.tsd-kind-variable.tsd-parent-kind-class.tsd-is-inherited + > .tsd-kind-icon:before { + background-position: -68px -0px; +} +.tsd-kind-variable.tsd-parent-kind-class.tsd-is-protected + > .tsd-kind-icon:before { + background-position: -85px -0px; +} +.tsd-kind-variable.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited + > .tsd-kind-icon:before { + background-position: -102px -0px; +} +.tsd-kind-variable.tsd-parent-kind-class.tsd-is-private + > .tsd-kind-icon:before { + background-position: -119px -0px; +} +.tsd-kind-variable.tsd-parent-kind-enum > .tsd-kind-icon:before { + background-position: -170px -0px; +} +.tsd-kind-variable.tsd-parent-kind-enum.tsd-is-protected + > .tsd-kind-icon:before { + background-position: -187px -0px; +} +.tsd-kind-variable.tsd-parent-kind-enum.tsd-is-private > .tsd-kind-icon:before { + background-position: -119px -0px; +} +.tsd-kind-variable.tsd-parent-kind-interface > .tsd-kind-icon:before { + background-position: -204px -0px; +} +.tsd-kind-variable.tsd-parent-kind-interface.tsd-is-inherited + > .tsd-kind-icon:before { + background-position: -221px -0px; +} + +.tsd-kind-property > .tsd-kind-icon:before { + background-position: -136px -0px; +} +.tsd-kind-property.tsd-is-protected > .tsd-kind-icon:before { + background-position: -153px -0px; +} +.tsd-kind-property.tsd-is-private > .tsd-kind-icon:before { + background-position: -119px -0px; +} +.tsd-kind-property.tsd-parent-kind-class > .tsd-kind-icon:before { + background-position: -51px -0px; +} +.tsd-kind-property.tsd-parent-kind-class.tsd-is-inherited + > .tsd-kind-icon:before { + background-position: -68px -0px; +} +.tsd-kind-property.tsd-parent-kind-class.tsd-is-protected + > .tsd-kind-icon:before { + background-position: -85px -0px; +} +.tsd-kind-property.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited + > .tsd-kind-icon:before { + background-position: -102px -0px; +} +.tsd-kind-property.tsd-parent-kind-class.tsd-is-private + > .tsd-kind-icon:before { + background-position: -119px -0px; +} +.tsd-kind-property.tsd-parent-kind-enum > .tsd-kind-icon:before { + background-position: -170px -0px; +} +.tsd-kind-property.tsd-parent-kind-enum.tsd-is-protected + > .tsd-kind-icon:before { + background-position: -187px -0px; +} +.tsd-kind-property.tsd-parent-kind-enum.tsd-is-private > .tsd-kind-icon:before { + background-position: -119px -0px; +} +.tsd-kind-property.tsd-parent-kind-interface > .tsd-kind-icon:before { + background-position: -204px -0px; +} +.tsd-kind-property.tsd-parent-kind-interface.tsd-is-inherited + > .tsd-kind-icon:before { + background-position: -221px -0px; +} + +.tsd-kind-get-signature > .tsd-kind-icon:before { + background-position: -136px -17px; +} +.tsd-kind-get-signature.tsd-is-protected > .tsd-kind-icon:before { + background-position: -153px -17px; +} +.tsd-kind-get-signature.tsd-is-private > .tsd-kind-icon:before { + background-position: -119px -17px; +} +.tsd-kind-get-signature.tsd-parent-kind-class > .tsd-kind-icon:before { + background-position: -51px -17px; +} +.tsd-kind-get-signature.tsd-parent-kind-class.tsd-is-inherited + > .tsd-kind-icon:before { + background-position: -68px -17px; +} +.tsd-kind-get-signature.tsd-parent-kind-class.tsd-is-protected + > .tsd-kind-icon:before { + background-position: -85px -17px; +} +.tsd-kind-get-signature.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited + > .tsd-kind-icon:before { + background-position: -102px -17px; +} +.tsd-kind-get-signature.tsd-parent-kind-class.tsd-is-private + > .tsd-kind-icon:before { + background-position: -119px -17px; +} +.tsd-kind-get-signature.tsd-parent-kind-enum > .tsd-kind-icon:before { + background-position: -170px -17px; +} +.tsd-kind-get-signature.tsd-parent-kind-enum.tsd-is-protected + > .tsd-kind-icon:before { + background-position: -187px -17px; +} +.tsd-kind-get-signature.tsd-parent-kind-enum.tsd-is-private + > .tsd-kind-icon:before { + background-position: -119px -17px; +} +.tsd-kind-get-signature.tsd-parent-kind-interface > .tsd-kind-icon:before { + background-position: -204px -17px; +} +.tsd-kind-get-signature.tsd-parent-kind-interface.tsd-is-inherited + > .tsd-kind-icon:before { + background-position: -221px -17px; +} + +.tsd-kind-set-signature > .tsd-kind-icon:before { + background-position: -136px -34px; +} +.tsd-kind-set-signature.tsd-is-protected > .tsd-kind-icon:before { + background-position: -153px -34px; +} +.tsd-kind-set-signature.tsd-is-private > .tsd-kind-icon:before { + background-position: -119px -34px; +} +.tsd-kind-set-signature.tsd-parent-kind-class > .tsd-kind-icon:before { + background-position: -51px -34px; +} +.tsd-kind-set-signature.tsd-parent-kind-class.tsd-is-inherited + > .tsd-kind-icon:before { + background-position: -68px -34px; +} +.tsd-kind-set-signature.tsd-parent-kind-class.tsd-is-protected + > .tsd-kind-icon:before { + background-position: -85px -34px; +} +.tsd-kind-set-signature.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited + > .tsd-kind-icon:before { + background-position: -102px -34px; +} +.tsd-kind-set-signature.tsd-parent-kind-class.tsd-is-private + > .tsd-kind-icon:before { + background-position: -119px -34px; +} +.tsd-kind-set-signature.tsd-parent-kind-enum > .tsd-kind-icon:before { + background-position: -170px -34px; +} +.tsd-kind-set-signature.tsd-parent-kind-enum.tsd-is-protected + > .tsd-kind-icon:before { + background-position: -187px -34px; +} +.tsd-kind-set-signature.tsd-parent-kind-enum.tsd-is-private + > .tsd-kind-icon:before { + background-position: -119px -34px; +} +.tsd-kind-set-signature.tsd-parent-kind-interface > .tsd-kind-icon:before { + background-position: -204px -34px; +} +.tsd-kind-set-signature.tsd-parent-kind-interface.tsd-is-inherited + > .tsd-kind-icon:before { + background-position: -221px -34px; +} + +.tsd-kind-accessor > .tsd-kind-icon:before { + background-position: -136px -51px; +} +.tsd-kind-accessor.tsd-is-protected > .tsd-kind-icon:before { + background-position: -153px -51px; +} +.tsd-kind-accessor.tsd-is-private > .tsd-kind-icon:before { + background-position: -119px -51px; +} +.tsd-kind-accessor.tsd-parent-kind-class > .tsd-kind-icon:before { + background-position: -51px -51px; +} +.tsd-kind-accessor.tsd-parent-kind-class.tsd-is-inherited + > .tsd-kind-icon:before { + background-position: -68px -51px; +} +.tsd-kind-accessor.tsd-parent-kind-class.tsd-is-protected + > .tsd-kind-icon:before { + background-position: -85px -51px; +} +.tsd-kind-accessor.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited + > .tsd-kind-icon:before { + background-position: -102px -51px; +} +.tsd-kind-accessor.tsd-parent-kind-class.tsd-is-private + > .tsd-kind-icon:before { + background-position: -119px -51px; +} +.tsd-kind-accessor.tsd-parent-kind-enum > .tsd-kind-icon:before { + background-position: -170px -51px; +} +.tsd-kind-accessor.tsd-parent-kind-enum.tsd-is-protected + > .tsd-kind-icon:before { + background-position: -187px -51px; +} +.tsd-kind-accessor.tsd-parent-kind-enum.tsd-is-private > .tsd-kind-icon:before { + background-position: -119px -51px; +} +.tsd-kind-accessor.tsd-parent-kind-interface > .tsd-kind-icon:before { + background-position: -204px -51px; +} +.tsd-kind-accessor.tsd-parent-kind-interface.tsd-is-inherited + > .tsd-kind-icon:before { + background-position: -221px -51px; +} + +.tsd-kind-function > .tsd-kind-icon:before { + background-position: -136px -68px; +} +.tsd-kind-function.tsd-is-protected > .tsd-kind-icon:before { + background-position: -153px -68px; +} +.tsd-kind-function.tsd-is-private > .tsd-kind-icon:before { + background-position: -119px -68px; +} +.tsd-kind-function.tsd-parent-kind-class > .tsd-kind-icon:before { + background-position: -51px -68px; +} +.tsd-kind-function.tsd-parent-kind-class.tsd-is-inherited + > .tsd-kind-icon:before { + background-position: -68px -68px; +} +.tsd-kind-function.tsd-parent-kind-class.tsd-is-protected + > .tsd-kind-icon:before { + background-position: -85px -68px; +} +.tsd-kind-function.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited + > .tsd-kind-icon:before { + background-position: -102px -68px; +} +.tsd-kind-function.tsd-parent-kind-class.tsd-is-private + > .tsd-kind-icon:before { + background-position: -119px -68px; +} +.tsd-kind-function.tsd-parent-kind-enum > .tsd-kind-icon:before { + background-position: -170px -68px; +} +.tsd-kind-function.tsd-parent-kind-enum.tsd-is-protected + > .tsd-kind-icon:before { + background-position: -187px -68px; +} +.tsd-kind-function.tsd-parent-kind-enum.tsd-is-private > .tsd-kind-icon:before { + background-position: -119px -68px; +} +.tsd-kind-function.tsd-parent-kind-interface > .tsd-kind-icon:before { + background-position: -204px -68px; +} +.tsd-kind-function.tsd-parent-kind-interface.tsd-is-inherited + > .tsd-kind-icon:before { + background-position: -221px -68px; +} + +.tsd-kind-method > .tsd-kind-icon:before { + background-position: -136px -68px; +} +.tsd-kind-method.tsd-is-protected > .tsd-kind-icon:before { + background-position: -153px -68px; +} +.tsd-kind-method.tsd-is-private > .tsd-kind-icon:before { + background-position: -119px -68px; +} +.tsd-kind-method.tsd-parent-kind-class > .tsd-kind-icon:before { + background-position: -51px -68px; +} +.tsd-kind-method.tsd-parent-kind-class.tsd-is-inherited + > .tsd-kind-icon:before { + background-position: -68px -68px; +} +.tsd-kind-method.tsd-parent-kind-class.tsd-is-protected + > .tsd-kind-icon:before { + background-position: -85px -68px; +} +.tsd-kind-method.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited + > .tsd-kind-icon:before { + background-position: -102px -68px; +} +.tsd-kind-method.tsd-parent-kind-class.tsd-is-private > .tsd-kind-icon:before { + background-position: -119px -68px; +} +.tsd-kind-method.tsd-parent-kind-enum > .tsd-kind-icon:before { + background-position: -170px -68px; +} +.tsd-kind-method.tsd-parent-kind-enum.tsd-is-protected > .tsd-kind-icon:before { + background-position: -187px -68px; +} +.tsd-kind-method.tsd-parent-kind-enum.tsd-is-private > .tsd-kind-icon:before { + background-position: -119px -68px; +} +.tsd-kind-method.tsd-parent-kind-interface > .tsd-kind-icon:before { + background-position: -204px -68px; +} +.tsd-kind-method.tsd-parent-kind-interface.tsd-is-inherited + > .tsd-kind-icon:before { + background-position: -221px -68px; +} + +.tsd-kind-call-signature > .tsd-kind-icon:before { + background-position: -136px -68px; +} +.tsd-kind-call-signature.tsd-is-protected > .tsd-kind-icon:before { + background-position: -153px -68px; +} +.tsd-kind-call-signature.tsd-is-private > .tsd-kind-icon:before { + background-position: -119px -68px; +} +.tsd-kind-call-signature.tsd-parent-kind-class > .tsd-kind-icon:before { + background-position: -51px -68px; +} +.tsd-kind-call-signature.tsd-parent-kind-class.tsd-is-inherited + > .tsd-kind-icon:before { + background-position: -68px -68px; +} +.tsd-kind-call-signature.tsd-parent-kind-class.tsd-is-protected + > .tsd-kind-icon:before { + background-position: -85px -68px; +} +.tsd-kind-call-signature.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited + > .tsd-kind-icon:before { + background-position: -102px -68px; +} +.tsd-kind-call-signature.tsd-parent-kind-class.tsd-is-private + > .tsd-kind-icon:before { + background-position: -119px -68px; +} +.tsd-kind-call-signature.tsd-parent-kind-enum > .tsd-kind-icon:before { + background-position: -170px -68px; +} +.tsd-kind-call-signature.tsd-parent-kind-enum.tsd-is-protected + > .tsd-kind-icon:before { + background-position: -187px -68px; +} +.tsd-kind-call-signature.tsd-parent-kind-enum.tsd-is-private + > .tsd-kind-icon:before { + background-position: -119px -68px; +} +.tsd-kind-call-signature.tsd-parent-kind-interface > .tsd-kind-icon:before { + background-position: -204px -68px; +} +.tsd-kind-call-signature.tsd-parent-kind-interface.tsd-is-inherited + > .tsd-kind-icon:before { + background-position: -221px -68px; +} + +.tsd-kind-function.tsd-has-type-parameter > .tsd-kind-icon:before { + background-position: -136px -85px; +} +.tsd-kind-function.tsd-has-type-parameter.tsd-is-protected + > .tsd-kind-icon:before { + background-position: -153px -85px; +} +.tsd-kind-function.tsd-has-type-parameter.tsd-is-private + > .tsd-kind-icon:before { + background-position: -119px -85px; +} +.tsd-kind-function.tsd-has-type-parameter.tsd-parent-kind-class + > .tsd-kind-icon:before { + background-position: -51px -85px; +} +.tsd-kind-function.tsd-has-type-parameter.tsd-parent-kind-class.tsd-is-inherited + > .tsd-kind-icon:before { + background-position: -68px -85px; +} +.tsd-kind-function.tsd-has-type-parameter.tsd-parent-kind-class.tsd-is-protected + > .tsd-kind-icon:before { + background-position: -85px -85px; +} +.tsd-kind-function.tsd-has-type-parameter.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited + > .tsd-kind-icon:before { + background-position: -102px -85px; +} +.tsd-kind-function.tsd-has-type-parameter.tsd-parent-kind-class.tsd-is-private + > .tsd-kind-icon:before { + background-position: -119px -85px; +} +.tsd-kind-function.tsd-has-type-parameter.tsd-parent-kind-enum + > .tsd-kind-icon:before { + background-position: -170px -85px; +} +.tsd-kind-function.tsd-has-type-parameter.tsd-parent-kind-enum.tsd-is-protected + > .tsd-kind-icon:before { + background-position: -187px -85px; +} +.tsd-kind-function.tsd-has-type-parameter.tsd-parent-kind-enum.tsd-is-private + > .tsd-kind-icon:before { + background-position: -119px -85px; +} +.tsd-kind-function.tsd-has-type-parameter.tsd-parent-kind-interface + > .tsd-kind-icon:before { + background-position: -204px -85px; +} +.tsd-kind-function.tsd-has-type-parameter.tsd-parent-kind-interface.tsd-is-inherited + > .tsd-kind-icon:before { + background-position: -221px -85px; +} + +.tsd-kind-method.tsd-has-type-parameter > .tsd-kind-icon:before { + background-position: -136px -85px; +} +.tsd-kind-method.tsd-has-type-parameter.tsd-is-protected + > .tsd-kind-icon:before { + background-position: -153px -85px; +} +.tsd-kind-method.tsd-has-type-parameter.tsd-is-private > .tsd-kind-icon:before { + background-position: -119px -85px; +} +.tsd-kind-method.tsd-has-type-parameter.tsd-parent-kind-class + > .tsd-kind-icon:before { + background-position: -51px -85px; +} +.tsd-kind-method.tsd-has-type-parameter.tsd-parent-kind-class.tsd-is-inherited + > .tsd-kind-icon:before { + background-position: -68px -85px; +} +.tsd-kind-method.tsd-has-type-parameter.tsd-parent-kind-class.tsd-is-protected + > .tsd-kind-icon:before { + background-position: -85px -85px; +} +.tsd-kind-method.tsd-has-type-parameter.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited + > .tsd-kind-icon:before { + background-position: -102px -85px; +} +.tsd-kind-method.tsd-has-type-parameter.tsd-parent-kind-class.tsd-is-private + > .tsd-kind-icon:before { + background-position: -119px -85px; +} +.tsd-kind-method.tsd-has-type-parameter.tsd-parent-kind-enum + > .tsd-kind-icon:before { + background-position: -170px -85px; +} +.tsd-kind-method.tsd-has-type-parameter.tsd-parent-kind-enum.tsd-is-protected + > .tsd-kind-icon:before { + background-position: -187px -85px; +} +.tsd-kind-method.tsd-has-type-parameter.tsd-parent-kind-enum.tsd-is-private + > .tsd-kind-icon:before { + background-position: -119px -85px; +} +.tsd-kind-method.tsd-has-type-parameter.tsd-parent-kind-interface + > .tsd-kind-icon:before { + background-position: -204px -85px; +} +.tsd-kind-method.tsd-has-type-parameter.tsd-parent-kind-interface.tsd-is-inherited + > .tsd-kind-icon:before { + background-position: -221px -85px; +} + +.tsd-kind-constructor > .tsd-kind-icon:before { + background-position: -136px -102px; +} +.tsd-kind-constructor.tsd-is-protected > .tsd-kind-icon:before { + background-position: -153px -102px; +} +.tsd-kind-constructor.tsd-is-private > .tsd-kind-icon:before { + background-position: -119px -102px; +} +.tsd-kind-constructor.tsd-parent-kind-class > .tsd-kind-icon:before { + background-position: -51px -102px; +} +.tsd-kind-constructor.tsd-parent-kind-class.tsd-is-inherited + > .tsd-kind-icon:before { + background-position: -68px -102px; +} +.tsd-kind-constructor.tsd-parent-kind-class.tsd-is-protected + > .tsd-kind-icon:before { + background-position: -85px -102px; +} +.tsd-kind-constructor.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited + > .tsd-kind-icon:before { + background-position: -102px -102px; +} +.tsd-kind-constructor.tsd-parent-kind-class.tsd-is-private + > .tsd-kind-icon:before { + background-position: -119px -102px; +} +.tsd-kind-constructor.tsd-parent-kind-enum > .tsd-kind-icon:before { + background-position: -170px -102px; +} +.tsd-kind-constructor.tsd-parent-kind-enum.tsd-is-protected + > .tsd-kind-icon:before { + background-position: -187px -102px; +} +.tsd-kind-constructor.tsd-parent-kind-enum.tsd-is-private + > .tsd-kind-icon:before { + background-position: -119px -102px; +} +.tsd-kind-constructor.tsd-parent-kind-interface > .tsd-kind-icon:before { + background-position: -204px -102px; +} +.tsd-kind-constructor.tsd-parent-kind-interface.tsd-is-inherited + > .tsd-kind-icon:before { + background-position: -221px -102px; +} + +.tsd-kind-constructor-signature > .tsd-kind-icon:before { + background-position: -136px -102px; +} +.tsd-kind-constructor-signature.tsd-is-protected > .tsd-kind-icon:before { + background-position: -153px -102px; +} +.tsd-kind-constructor-signature.tsd-is-private > .tsd-kind-icon:before { + background-position: -119px -102px; +} +.tsd-kind-constructor-signature.tsd-parent-kind-class > .tsd-kind-icon:before { + background-position: -51px -102px; +} +.tsd-kind-constructor-signature.tsd-parent-kind-class.tsd-is-inherited + > .tsd-kind-icon:before { + background-position: -68px -102px; +} +.tsd-kind-constructor-signature.tsd-parent-kind-class.tsd-is-protected + > .tsd-kind-icon:before { + background-position: -85px -102px; +} +.tsd-kind-constructor-signature.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited + > .tsd-kind-icon:before { + background-position: -102px -102px; +} +.tsd-kind-constructor-signature.tsd-parent-kind-class.tsd-is-private + > .tsd-kind-icon:before { + background-position: -119px -102px; +} +.tsd-kind-constructor-signature.tsd-parent-kind-enum > .tsd-kind-icon:before { + background-position: -170px -102px; +} +.tsd-kind-constructor-signature.tsd-parent-kind-enum.tsd-is-protected + > .tsd-kind-icon:before { + background-position: -187px -102px; +} +.tsd-kind-constructor-signature.tsd-parent-kind-enum.tsd-is-private + > .tsd-kind-icon:before { + background-position: -119px -102px; +} +.tsd-kind-constructor-signature.tsd-parent-kind-interface + > .tsd-kind-icon:before { + background-position: -204px -102px; +} +.tsd-kind-constructor-signature.tsd-parent-kind-interface.tsd-is-inherited + > .tsd-kind-icon:before { + background-position: -221px -102px; +} + +.tsd-kind-index-signature > .tsd-kind-icon:before { + background-position: -136px -119px; +} +.tsd-kind-index-signature.tsd-is-protected > .tsd-kind-icon:before { + background-position: -153px -119px; +} +.tsd-kind-index-signature.tsd-is-private > .tsd-kind-icon:before { + background-position: -119px -119px; +} +.tsd-kind-index-signature.tsd-parent-kind-class > .tsd-kind-icon:before { + background-position: -51px -119px; +} +.tsd-kind-index-signature.tsd-parent-kind-class.tsd-is-inherited + > .tsd-kind-icon:before { + background-position: -68px -119px; +} +.tsd-kind-index-signature.tsd-parent-kind-class.tsd-is-protected + > .tsd-kind-icon:before { + background-position: -85px -119px; +} +.tsd-kind-index-signature.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited + > .tsd-kind-icon:before { + background-position: -102px -119px; +} +.tsd-kind-index-signature.tsd-parent-kind-class.tsd-is-private + > .tsd-kind-icon:before { + background-position: -119px -119px; +} +.tsd-kind-index-signature.tsd-parent-kind-enum > .tsd-kind-icon:before { + background-position: -170px -119px; +} +.tsd-kind-index-signature.tsd-parent-kind-enum.tsd-is-protected + > .tsd-kind-icon:before { + background-position: -187px -119px; +} +.tsd-kind-index-signature.tsd-parent-kind-enum.tsd-is-private + > .tsd-kind-icon:before { + background-position: -119px -119px; +} +.tsd-kind-index-signature.tsd-parent-kind-interface > .tsd-kind-icon:before { + background-position: -204px -119px; +} +.tsd-kind-index-signature.tsd-parent-kind-interface.tsd-is-inherited + > .tsd-kind-icon:before { + background-position: -221px -119px; +} + +.tsd-kind-event > .tsd-kind-icon:before { + background-position: -136px -136px; +} +.tsd-kind-event.tsd-is-protected > .tsd-kind-icon:before { + background-position: -153px -136px; +} +.tsd-kind-event.tsd-is-private > .tsd-kind-icon:before { + background-position: -119px -136px; +} +.tsd-kind-event.tsd-parent-kind-class > .tsd-kind-icon:before { + background-position: -51px -136px; +} +.tsd-kind-event.tsd-parent-kind-class.tsd-is-inherited > .tsd-kind-icon:before { + background-position: -68px -136px; +} +.tsd-kind-event.tsd-parent-kind-class.tsd-is-protected > .tsd-kind-icon:before { + background-position: -85px -136px; +} +.tsd-kind-event.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited + > .tsd-kind-icon:before { + background-position: -102px -136px; +} +.tsd-kind-event.tsd-parent-kind-class.tsd-is-private > .tsd-kind-icon:before { + background-position: -119px -136px; +} +.tsd-kind-event.tsd-parent-kind-enum > .tsd-kind-icon:before { + background-position: -170px -136px; +} +.tsd-kind-event.tsd-parent-kind-enum.tsd-is-protected > .tsd-kind-icon:before { + background-position: -187px -136px; +} +.tsd-kind-event.tsd-parent-kind-enum.tsd-is-private > .tsd-kind-icon:before { + background-position: -119px -136px; +} +.tsd-kind-event.tsd-parent-kind-interface > .tsd-kind-icon:before { + background-position: -204px -136px; +} +.tsd-kind-event.tsd-parent-kind-interface.tsd-is-inherited + > .tsd-kind-icon:before { + background-position: -221px -136px; +} + +.tsd-is-static > .tsd-kind-icon:before { + background-position: -136px -153px; +} +.tsd-is-static.tsd-is-protected > .tsd-kind-icon:before { + background-position: -153px -153px; +} +.tsd-is-static.tsd-is-private > .tsd-kind-icon:before { + background-position: -119px -153px; +} +.tsd-is-static.tsd-parent-kind-class > .tsd-kind-icon:before { + background-position: -51px -153px; +} +.tsd-is-static.tsd-parent-kind-class.tsd-is-inherited > .tsd-kind-icon:before { + background-position: -68px -153px; +} +.tsd-is-static.tsd-parent-kind-class.tsd-is-protected > .tsd-kind-icon:before { + background-position: -85px -153px; +} +.tsd-is-static.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited + > .tsd-kind-icon:before { + background-position: -102px -153px; +} +.tsd-is-static.tsd-parent-kind-class.tsd-is-private > .tsd-kind-icon:before { + background-position: -119px -153px; +} +.tsd-is-static.tsd-parent-kind-enum > .tsd-kind-icon:before { + background-position: -170px -153px; +} +.tsd-is-static.tsd-parent-kind-enum.tsd-is-protected > .tsd-kind-icon:before { + background-position: -187px -153px; +} +.tsd-is-static.tsd-parent-kind-enum.tsd-is-private > .tsd-kind-icon:before { + background-position: -119px -153px; +} +.tsd-is-static.tsd-parent-kind-interface > .tsd-kind-icon:before { + background-position: -204px -153px; +} +.tsd-is-static.tsd-parent-kind-interface.tsd-is-inherited + > .tsd-kind-icon:before { + background-position: -221px -153px; +} + +.tsd-is-static.tsd-kind-function > .tsd-kind-icon:before { + background-position: -136px -170px; +} +.tsd-is-static.tsd-kind-function.tsd-is-protected > .tsd-kind-icon:before { + background-position: -153px -170px; +} +.tsd-is-static.tsd-kind-function.tsd-is-private > .tsd-kind-icon:before { + background-position: -119px -170px; +} +.tsd-is-static.tsd-kind-function.tsd-parent-kind-class > .tsd-kind-icon:before { + background-position: -51px -170px; +} +.tsd-is-static.tsd-kind-function.tsd-parent-kind-class.tsd-is-inherited + > .tsd-kind-icon:before { + background-position: -68px -170px; +} +.tsd-is-static.tsd-kind-function.tsd-parent-kind-class.tsd-is-protected + > .tsd-kind-icon:before { + background-position: -85px -170px; +} +.tsd-is-static.tsd-kind-function.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited + > .tsd-kind-icon:before { + background-position: -102px -170px; +} +.tsd-is-static.tsd-kind-function.tsd-parent-kind-class.tsd-is-private + > .tsd-kind-icon:before { + background-position: -119px -170px; +} +.tsd-is-static.tsd-kind-function.tsd-parent-kind-enum > .tsd-kind-icon:before { + background-position: -170px -170px; +} +.tsd-is-static.tsd-kind-function.tsd-parent-kind-enum.tsd-is-protected + > .tsd-kind-icon:before { + background-position: -187px -170px; +} +.tsd-is-static.tsd-kind-function.tsd-parent-kind-enum.tsd-is-private + > .tsd-kind-icon:before { + background-position: -119px -170px; +} +.tsd-is-static.tsd-kind-function.tsd-parent-kind-interface + > .tsd-kind-icon:before { + background-position: -204px -170px; +} +.tsd-is-static.tsd-kind-function.tsd-parent-kind-interface.tsd-is-inherited + > .tsd-kind-icon:before { + background-position: -221px -170px; +} + +.tsd-is-static.tsd-kind-method > .tsd-kind-icon:before { + background-position: -136px -170px; +} +.tsd-is-static.tsd-kind-method.tsd-is-protected > .tsd-kind-icon:before { + background-position: -153px -170px; +} +.tsd-is-static.tsd-kind-method.tsd-is-private > .tsd-kind-icon:before { + background-position: -119px -170px; +} +.tsd-is-static.tsd-kind-method.tsd-parent-kind-class > .tsd-kind-icon:before { + background-position: -51px -170px; +} +.tsd-is-static.tsd-kind-method.tsd-parent-kind-class.tsd-is-inherited + > .tsd-kind-icon:before { + background-position: -68px -170px; +} +.tsd-is-static.tsd-kind-method.tsd-parent-kind-class.tsd-is-protected + > .tsd-kind-icon:before { + background-position: -85px -170px; +} +.tsd-is-static.tsd-kind-method.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited + > .tsd-kind-icon:before { + background-position: -102px -170px; +} +.tsd-is-static.tsd-kind-method.tsd-parent-kind-class.tsd-is-private + > .tsd-kind-icon:before { + background-position: -119px -170px; +} +.tsd-is-static.tsd-kind-method.tsd-parent-kind-enum > .tsd-kind-icon:before { + background-position: -170px -170px; +} +.tsd-is-static.tsd-kind-method.tsd-parent-kind-enum.tsd-is-protected + > .tsd-kind-icon:before { + background-position: -187px -170px; +} +.tsd-is-static.tsd-kind-method.tsd-parent-kind-enum.tsd-is-private + > .tsd-kind-icon:before { + background-position: -119px -170px; +} +.tsd-is-static.tsd-kind-method.tsd-parent-kind-interface + > .tsd-kind-icon:before { + background-position: -204px -170px; +} +.tsd-is-static.tsd-kind-method.tsd-parent-kind-interface.tsd-is-inherited + > .tsd-kind-icon:before { + background-position: -221px -170px; +} + +.tsd-is-static.tsd-kind-call-signature > .tsd-kind-icon:before { + background-position: -136px -170px; +} +.tsd-is-static.tsd-kind-call-signature.tsd-is-protected + > .tsd-kind-icon:before { + background-position: -153px -170px; +} +.tsd-is-static.tsd-kind-call-signature.tsd-is-private > .tsd-kind-icon:before { + background-position: -119px -170px; +} +.tsd-is-static.tsd-kind-call-signature.tsd-parent-kind-class + > .tsd-kind-icon:before { + background-position: -51px -170px; +} +.tsd-is-static.tsd-kind-call-signature.tsd-parent-kind-class.tsd-is-inherited + > .tsd-kind-icon:before { + background-position: -68px -170px; +} +.tsd-is-static.tsd-kind-call-signature.tsd-parent-kind-class.tsd-is-protected + > .tsd-kind-icon:before { + background-position: -85px -170px; +} +.tsd-is-static.tsd-kind-call-signature.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited + > .tsd-kind-icon:before { + background-position: -102px -170px; +} +.tsd-is-static.tsd-kind-call-signature.tsd-parent-kind-class.tsd-is-private + > .tsd-kind-icon:before { + background-position: -119px -170px; +} +.tsd-is-static.tsd-kind-call-signature.tsd-parent-kind-enum + > .tsd-kind-icon:before { + background-position: -170px -170px; +} +.tsd-is-static.tsd-kind-call-signature.tsd-parent-kind-enum.tsd-is-protected + > .tsd-kind-icon:before { + background-position: -187px -170px; +} +.tsd-is-static.tsd-kind-call-signature.tsd-parent-kind-enum.tsd-is-private + > .tsd-kind-icon:before { + background-position: -119px -170px; +} +.tsd-is-static.tsd-kind-call-signature.tsd-parent-kind-interface + > .tsd-kind-icon:before { + background-position: -204px -170px; +} +.tsd-is-static.tsd-kind-call-signature.tsd-parent-kind-interface.tsd-is-inherited + > .tsd-kind-icon:before { + background-position: -221px -170px; +} + +.tsd-is-static.tsd-kind-event > .tsd-kind-icon:before { + background-position: -136px -187px; +} +.tsd-is-static.tsd-kind-event.tsd-is-protected > .tsd-kind-icon:before { + background-position: -153px -187px; +} +.tsd-is-static.tsd-kind-event.tsd-is-private > .tsd-kind-icon:before { + background-position: -119px -187px; +} +.tsd-is-static.tsd-kind-event.tsd-parent-kind-class > .tsd-kind-icon:before { + background-position: -51px -187px; +} +.tsd-is-static.tsd-kind-event.tsd-parent-kind-class.tsd-is-inherited + > .tsd-kind-icon:before { + background-position: -68px -187px; +} +.tsd-is-static.tsd-kind-event.tsd-parent-kind-class.tsd-is-protected + > .tsd-kind-icon:before { + background-position: -85px -187px; +} +.tsd-is-static.tsd-kind-event.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited + > .tsd-kind-icon:before { + background-position: -102px -187px; +} +.tsd-is-static.tsd-kind-event.tsd-parent-kind-class.tsd-is-private + > .tsd-kind-icon:before { + background-position: -119px -187px; +} +.tsd-is-static.tsd-kind-event.tsd-parent-kind-enum > .tsd-kind-icon:before { + background-position: -170px -187px; +} +.tsd-is-static.tsd-kind-event.tsd-parent-kind-enum.tsd-is-protected + > .tsd-kind-icon:before { + background-position: -187px -187px; +} +.tsd-is-static.tsd-kind-event.tsd-parent-kind-enum.tsd-is-private + > .tsd-kind-icon:before { + background-position: -119px -187px; +} +.tsd-is-static.tsd-kind-event.tsd-parent-kind-interface + > .tsd-kind-icon:before { + background-position: -204px -187px; +} +.tsd-is-static.tsd-kind-event.tsd-parent-kind-interface.tsd-is-inherited + > .tsd-kind-icon:before { + background-position: -221px -187px; +} diff --git a/docs/assets/images/icons.png b/docs/assets/icons.png similarity index 100% rename from docs/assets/images/icons.png rename to docs/assets/icons.png diff --git a/docs/assets/images/icons@2x.png b/docs/assets/icons@2x.png similarity index 100% rename from docs/assets/images/icons@2x.png rename to docs/assets/icons@2x.png diff --git a/docs/assets/js/main.js b/docs/assets/js/main.js deleted file mode 100644 index a28f0ddb..00000000 --- a/docs/assets/js/main.js +++ /dev/null @@ -1,6 +0,0 @@ -function arrayToNest(array){for(var _a,_b,res={},i=array.length-1;i>=0;i--)i===array.length-1?(_a={},_a[array[i]]=array[i],res=_a):(_b={},_b[array[i]]=res,res=_b);return res}function mergeRecursive(obj1,obj2){for(var p in obj2)try{obj2[p].constructor===Object?(obj1[p].constructor!==Object&&(obj1[p]={Overview:obj1[p]}),obj1[p]=mergeRecursive(obj1[p],obj2[p])):obj1[p]=obj2[p]}catch(e){obj1[p]=obj2[p]}return obj1}function sanitizeModuleName(moduleName){return moduleName.toLowerCase().replace(/[^a-z0-9]/gi,"_")}function renderSimpleHTMLRecursive(obj,package,spacing){void 0===package&&(package=""),void 0===spacing&&(spacing=" ");for(var html="",shownPackages=[],_i=0,_a=Object.keys(obj);_i<_a.length;_i++){var key=_a[_i];if("object"==typeof obj[key])html+=renderSimpleHTMLRecursive(obj[key],package+"_"+key,spacing+" ");else{-1===shownPackages.indexOf(package)&&(html+="
"+package.replace(/_/g,"/")+"
",shownPackages.push(package));var href="";-1===window.location.href.indexOf("/modules/")&&(href="modules/"),(window.location.href.indexOf("/assets/")>-1||window.location.href.indexOf("/classes/")>-1||window.location.href.indexOf("/enums/")>-1||window.location.href.indexOf("/interfaces/")>-1)&&(href="../modules/"),window.location.href.indexOf("/modules/")>-1&&(href="../modules/"+href),href+=package?"Overview"===key?"_"+sanitizeModuleName(package.substr(1))+"_.html":"_"+sanitizeModuleName(package.substr(1))+"_"+sanitizeModuleName(key)+"_.html":"_"+sanitizeModuleName(key)+"_.html",html+=""+key+""}}return html}function renderHTMLRecursive(obj,package,spacing){void 0===package&&(package=""),void 0===spacing&&(spacing=" ");for(var html="",shownPackages=[],_i=0,_a=Object.keys(obj);_i<_a.length;_i++){var key=_a[_i];if("object"==typeof obj[key])html+=renderHTMLRecursive(obj[key],package+"_"+key,spacing+" ");else{-1===shownPackages.indexOf(package)&&(html+="
"+package.replace(/_/g,"/").substr(1)+"
",shownPackages.push(package));var href="";-1===obj[key].indexOf("/")&&(href="modules/"),(window.location.href.indexOf("/assets/")>-1||window.location.href.indexOf("/classes/")>-1||window.location.href.indexOf("/enums/")>-1||window.location.href.indexOf("/interfaces/")>-1||window.location.href.indexOf("/modules/")>-1)&&(href="../"+href);var pageName=href+obj[key],pageNamePath=pageName.replace("../","")+".html";window.location.href.indexOf(pageNamePath)>-1?html+='"+key+"":html+=""+key+""}}return html}!function(){var e=function(t){var r=new e.Builder;return r.pipeline.add(e.trimmer,e.stopWordFilter,e.stemmer),r.searchPipeline.add(e.stemmer),t.call(r,r),r.build()};e.version="2.3.7",e.utils={},e.utils.warn=function(e){return function(t){e.console&&console.warn&&console.warn(t)}}(this),e.utils.asString=function(e){return void 0===e||null===e?"":e.toString()},e.utils.clone=function(e){if(null===e||void 0===e)return e;for(var t=Object.create(null),r=Object.keys(e),i=0;i0){var c=e.utils.clone(r)||{};c.position=[a,l],c.index=s.length,s.push(new e.Token(i.slice(a,o),c))}a=o+1}}return s},e.tokenizer.separator=/[\s\-]+/,e.Pipeline=function(){this._stack=[]},e.Pipeline.registeredFunctions=Object.create(null),e.Pipeline.registerFunction=function(t,r){r in this.registeredFunctions&&e.utils.warn("Overwriting existing registered function: "+r),t.label=r,e.Pipeline.registeredFunctions[t.label]=t},e.Pipeline.warnIfFunctionNotRegistered=function(t){t.label&&t.label in this.registeredFunctions||e.utils.warn("Function is not registered with pipeline. This may cause problems when serialising the index.\n",t)},e.Pipeline.load=function(t){var r=new e.Pipeline;return t.forEach(function(t){var i=e.Pipeline.registeredFunctions[t];if(!i)throw new Error("Cannot load unregistered function: "+t);r.add(i)}),r},e.Pipeline.prototype.add=function(){Array.prototype.slice.call(arguments).forEach(function(t){e.Pipeline.warnIfFunctionNotRegistered(t),this._stack.push(t)},this)},e.Pipeline.prototype.after=function(t,r){e.Pipeline.warnIfFunctionNotRegistered(r);var i=this._stack.indexOf(t);if(-1==i)throw new Error("Cannot find existingFn");i+=1,this._stack.splice(i,0,r)},e.Pipeline.prototype.before=function(t,r){e.Pipeline.warnIfFunctionNotRegistered(r);var i=this._stack.indexOf(t);if(-1==i)throw new Error("Cannot find existingFn");this._stack.splice(i,0,r)},e.Pipeline.prototype.remove=function(e){var t=this._stack.indexOf(e);-1!=t&&this._stack.splice(t,1)},e.Pipeline.prototype.run=function(e){for(var t=this._stack.length,r=0;r1&&(se&&(r=n),s!=e);)i=r-t,n=t+Math.floor(i/2),s=this.elements[2*n];return s==e?2*n:s>e?2*n:sa?l+=2:o==a&&(t+=r[u+1]*i[l+1],u+=2,l+=2);return t},e.Vector.prototype.similarity=function(e){return this.dot(e)/this.magnitude()||0},e.Vector.prototype.toArray=function(){for(var e=new Array(this.elements.length/2),t=1,r=0;t0){var o,a=s.str.charAt(0);a in s.node.edges?o=s.node.edges[a]:(o=new e.TokenSet,s.node.edges[a]=o),1==s.str.length&&(o.final=!0),n.push({node:o,editsRemaining:s.editsRemaining,str:s.str.slice(1)})}if(0!=s.editsRemaining){if("*"in s.node.edges)var u=s.node.edges["*"];else{var u=new e.TokenSet;s.node.edges["*"]=u}if(0==s.str.length&&(u.final=!0),n.push({node:u,editsRemaining:s.editsRemaining-1,str:s.str}),s.str.length>1&&n.push({node:s.node,editsRemaining:s.editsRemaining-1,str:s.str.slice(1)}),1==s.str.length&&(s.node.final=!0),s.str.length>=1){if("*"in s.node.edges)var l=s.node.edges["*"];else{var l=new e.TokenSet;s.node.edges["*"]=l}1==s.str.length&&(l.final=!0),n.push({node:l,editsRemaining:s.editsRemaining-1,str:s.str.slice(1)})}if(s.str.length>1){var c,h=s.str.charAt(0),d=s.str.charAt(1);d in s.node.edges?c=s.node.edges[d]:(c=new e.TokenSet,s.node.edges[d]=c),1==s.str.length&&(c.final=!0),n.push({node:c,editsRemaining:s.editsRemaining-1,str:h+s.str.slice(2)})}}}return i},e.TokenSet.fromString=function(t){for(var r=new e.TokenSet,i=r,n=0,s=t.length;n=e;t--){var r=this.uncheckedNodes[t],i=r.child.toString();i in this.minimizedNodes?r.parent.edges[r.char]=this.minimizedNodes[i]:(r.child._str=i,this.minimizedNodes[i]=r.child),this.uncheckedNodes.pop()}},e.Index=function(e){this.invertedIndex=e.invertedIndex,this.fieldVectors=e.fieldVectors,this.tokenSet=e.tokenSet,this.fields=e.fields,this.pipeline=e.pipeline},e.Index.prototype.search=function(t){return this.query(function(r){new e.QueryParser(t,r).parse()})},e.Index.prototype.query=function(t){for(var r=new e.Query(this.fields),i=Object.create(null),n=Object.create(null),s=Object.create(null),o=Object.create(null),a=Object.create(null),u=0;u1?1:e},e.Builder.prototype.k1=function(e){this._k1=e},e.Builder.prototype.add=function(t,r){var i=t[this._ref],n=Object.keys(this._fields);this._documents[i]=r||{},this.documentCount+=1;for(var s=0;s=this.length)return e.QueryLexer.EOS;var t=this.str.charAt(this.pos);return this.pos+=1,t},e.QueryLexer.prototype.width=function(){return this.pos-this.start},e.QueryLexer.prototype.ignore=function(){this.start==this.pos&&(this.pos+=1),this.start=this.pos},e.QueryLexer.prototype.backup=function(){this.pos-=1},e.QueryLexer.prototype.acceptDigitRun=function(){var t,r;do{t=this.next(),r=t.charCodeAt(0)}while(r>47&&r<58);t!=e.QueryLexer.EOS&&this.backup()},e.QueryLexer.prototype.more=function(){return this.pos1&&(t.backup(),t.emit(e.QueryLexer.TERM)),t.ignore(),t.more())return e.QueryLexer.lexText},e.QueryLexer.lexEditDistance=function(t){return t.ignore(),t.acceptDigitRun(),t.emit(e.QueryLexer.EDIT_DISTANCE),e.QueryLexer.lexText},e.QueryLexer.lexBoost=function(t){return t.ignore(),t.acceptDigitRun(),t.emit(e.QueryLexer.BOOST),e.QueryLexer.lexText},e.QueryLexer.lexEOS=function(t){t.width()>0&&t.emit(e.QueryLexer.TERM)},e.QueryLexer.termSeparator=e.tokenizer.separator,e.QueryLexer.lexText=function(t){for(;;){var r=t.next();if(r==e.QueryLexer.EOS)return e.QueryLexer.lexEOS;if(92!=r.charCodeAt(0)){if(":"==r)return e.QueryLexer.lexField;if("~"==r)return t.backup(),t.width()>0&&t.emit(e.QueryLexer.TERM),e.QueryLexer.lexEditDistance;if("^"==r)return t.backup(),t.width()>0&&t.emit(e.QueryLexer.TERM),e.QueryLexer.lexBoost;if("+"==r&&1===t.width())return t.emit(e.QueryLexer.PRESENCE),e.QueryLexer.lexText;if("-"==r&&1===t.width())return t.emit(e.QueryLexer.PRESENCE),e.QueryLexer.lexText;if(r.match(e.QueryLexer.termSeparator))return e.QueryLexer.lexTerm}else t.escapeCharacter()}},e.QueryParser=function(t,r){this.lexer=new e.QueryLexer(t),this.query=r,this.currentClause={},this.lexemeIdx=0},e.QueryParser.prototype.parse=function(){this.lexer.run(),this.lexemes=this.lexer.lexemes;for(var t=e.QueryParser.parseClause;t;)t=t(this);return this.query},e.QueryParser.prototype.peekLexeme=function(){return this.lexemes[this.lexemeIdx]},e.QueryParser.prototype.consumeLexeme=function(){var e=this.peekLexeme();return this.lexemeIdx+=1,e},e.QueryParser.prototype.nextClause=function(){var e=this.currentClause;this.query.clause(e),this.currentClause={}},e.QueryParser.parseClause=function(t){var r=t.peekLexeme();if(void 0!=r)switch(r.type){case e.QueryLexer.PRESENCE:return e.QueryParser.parsePresence;case e.QueryLexer.FIELD:return e.QueryParser.parseField;case e.QueryLexer.TERM:return e.QueryParser.parseTerm;default:var i="expected either a field or a term, found "+r.type;throw r.str.length>=1&&(i+=" with value '"+r.str+"'"),new e.QueryParseError(i,r.start,r.end)}},e.QueryParser.parsePresence=function(t){var r=t.consumeLexeme();if(void 0!=r){switch(r.str){case"-":t.currentClause.presence=e.Query.presence.PROHIBITED;break;case"+":t.currentClause.presence=e.Query.presence.REQUIRED;break;default:var i="unrecognised presence operator'"+r.str+"'";throw new e.QueryParseError(i,r.start,r.end)}var n=t.peekLexeme();if(void 0==n){var i="expecting term or field, found nothing";throw new e.QueryParseError(i,r.start,r.end)}switch(n.type){case e.QueryLexer.FIELD:return e.QueryParser.parseField;case e.QueryLexer.TERM:return e.QueryParser.parseTerm;default:var i="expecting term or field, found '"+n.type+"'";throw new e.QueryParseError(i,n.start,n.end)}}},e.QueryParser.parseField=function(t){var r=t.consumeLexeme();if(void 0!=r){if(-1==t.query.allFields.indexOf(r.str)){var i=t.query.allFields.map(function(e){return"'"+e+"'"}).join(", "),n="unrecognised field '"+r.str+"', possible fields: "+i;throw new e.QueryParseError(n,r.start,r.end)}t.currentClause.fields=[r.str];var s=t.peekLexeme();if(void 0==s){var n="expecting term, found nothing";throw new e.QueryParseError(n,r.start,r.end)}switch(s.type){case e.QueryLexer.TERM:return e.QueryParser.parseTerm;default:var n="expecting term, found '"+s.type+"'";throw new e.QueryParseError(n,s.start,s.end)}}},e.QueryParser.parseTerm=function(t){var r=t.consumeLexeme();if(void 0!=r){t.currentClause.term=r.str.toLowerCase(),-1!=r.str.indexOf("*")&&(t.currentClause.usePipeline=!1);var i=t.peekLexeme();if(void 0==i)return void t.nextClause();switch(i.type){case e.QueryLexer.TERM:return t.nextClause(),e.QueryParser.parseTerm;case e.QueryLexer.FIELD:return t.nextClause(),e.QueryParser.parseField;case e.QueryLexer.EDIT_DISTANCE:return e.QueryParser.parseEditDistance;case e.QueryLexer.BOOST:return e.QueryParser.parseBoost;case e.QueryLexer.PRESENCE:return t.nextClause(),e.QueryParser.parsePresence;default:var n="Unexpected lexeme type '"+i.type+"'";throw new e.QueryParseError(n,i.start,i.end)}}},e.QueryParser.parseEditDistance=function(t){var r=t.consumeLexeme();if(void 0!=r){var i=parseInt(r.str,10);if(isNaN(i)){var n="edit distance must be numeric";throw new e.QueryParseError(n,r.start,r.end)}t.currentClause.editDistance=i;var s=t.peekLexeme();if(void 0==s)return void t.nextClause();switch(s.type){case e.QueryLexer.TERM:return t.nextClause(),e.QueryParser.parseTerm;case e.QueryLexer.FIELD:return t.nextClause(),e.QueryParser.parseField;case e.QueryLexer.EDIT_DISTANCE:return e.QueryParser.parseEditDistance;case e.QueryLexer.BOOST:return e.QueryParser.parseBoost;case e.QueryLexer.PRESENCE:return t.nextClause(),e.QueryParser.parsePresence;default:var n="Unexpected lexeme type '"+s.type+"'";throw new e.QueryParseError(n,s.start,s.end)}}},e.QueryParser.parseBoost=function(t){var r=t.consumeLexeme();if(void 0!=r){var i=parseInt(r.str,10);if(isNaN(i)){var n="boost must be numeric";throw new e.QueryParseError(n,r.start,r.end)}t.currentClause.boost=i;var s=t.peekLexeme();if(void 0==s)return void t.nextClause();switch(s.type){case e.QueryLexer.TERM:return t.nextClause(),e.QueryParser.parseTerm;case e.QueryLexer.FIELD:return t.nextClause(),e.QueryParser.parseField;case e.QueryLexer.EDIT_DISTANCE:return e.QueryParser.parseEditDistance;case e.QueryLexer.BOOST:return e.QueryParser.parseBoost;case e.QueryLexer.PRESENCE:return t.nextClause(),e.QueryParser.parsePresence;default:var n="Unexpected lexeme type '"+s.type+"'";throw new e.QueryParseError(n,s.start,s.end)}}},function(e,t){"function"==typeof define&&define.amd?define(t):"object"==typeof exports?module.exports=t():e.lunr=t()}(this,function(){return e})}(),function(a,b){ -"object"==typeof module&&"object"==typeof module.exports?module.exports=a.document?b(a,!0):function(a){if(!a.document)throw new Error("jQuery requires a window with a document");return b(a)}:b(a)}("undefined"!=typeof window?window:this,function(a,b){function s(a){var b=a.length,c=n.type(a);return"function"!==c&&!n.isWindow(a)&&(!(1!==a.nodeType||!b)||("array"===c||0===b||"number"==typeof b&&b>0&&b-1 in a))}function x(a,b,c){if(n.isFunction(b))return n.grep(a,function(a,d){return!!b.call(a,d,a)!==c});if(b.nodeType)return n.grep(a,function(a){return a===b!==c});if("string"==typeof b){if(w.test(b))return n.filter(b,a,c);b=n.filter(b,a)}return n.grep(a,function(a){return g.call(b,a)>=0!==c})}function D(a,b){for(;(a=a[b])&&1!==a.nodeType;);return a}function G(a){var b=F[a]={};return n.each(a.match(E)||[],function(a,c){b[c]=!0}),b}function I(){l.removeEventListener("DOMContentLoaded",I,!1),a.removeEventListener("load",I,!1),n.ready()}function K(){Object.defineProperty(this.cache={},0,{get:function(){return{}}}),this.expando=n.expando+Math.random()}function P(a,b,c){var d;if(void 0===c&&1===a.nodeType)if(d="data-"+b.replace(O,"-$1").toLowerCase(),"string"==typeof(c=a.getAttribute(d))){try{c="true"===c||"false"!==c&&("null"===c?null:+c+""===c?+c:N.test(c)?n.parseJSON(c):c)}catch(e){}M.set(a,b,c)}else c=void 0;return c}function Z(){return!0}function $(){return!1}function _(){try{return l.activeElement}catch(a){}}function jb(a,b){return n.nodeName(a,"table")&&n.nodeName(11!==b.nodeType?b:b.firstChild,"tr")?a.getElementsByTagName("tbody")[0]||a.appendChild(a.ownerDocument.createElement("tbody")):a}function kb(a){return a.type=(null!==a.getAttribute("type"))+"/"+a.type,a}function lb(a){var b=gb.exec(a.type);return b?a.type=b[1]:a.removeAttribute("type"),a}function mb(a,b){for(var c=0,d=a.length;d>c;c++)L.set(a[c],"globalEval",!b||L.get(b[c],"globalEval"))}function nb(a,b){var c,d,e,f,g,h,i,j;if(1===b.nodeType){if(L.hasData(a)&&(f=L.access(a),g=L.set(b,f),j=f.events)){delete g.handle,g.events={};for(e in j)for(c=0,d=j[e].length;d>c;c++)n.event.add(b,e,j[e][c])}M.hasData(a)&&(h=M.access(a),i=n.extend({},h),M.set(b,i))}}function ob(a,b){var c=a.getElementsByTagName?a.getElementsByTagName(b||"*"):a.querySelectorAll?a.querySelectorAll(b||"*"):[];return void 0===b||b&&n.nodeName(a,b)?n.merge([a],c):c}function pb(a,b){var c=b.nodeName.toLowerCase();"input"===c&&T.test(a.type)?b.checked=a.checked:("input"===c||"textarea"===c)&&(b.defaultValue=a.defaultValue)}function sb(b,c){var d,e=n(c.createElement(b)).appendTo(c.body),f=a.getDefaultComputedStyle&&(d=a.getDefaultComputedStyle(e[0]))?d.display:n.css(e[0],"display");return e.detach(),f}function tb(a){var b=l,c=rb[a];return c||(c=sb(a,b),"none"!==c&&c||(qb=(qb||n("