@caperjs/core 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +22 -0
- package/README.md +62 -0
- package/cli/add.mjs +197 -0
- package/cli/audio/cc.mjs +128 -0
- package/cli/audio/index.mjs +42 -0
- package/cli/audio/utils.mjs +56 -0
- package/cli/create-caper.mjs +8 -0
- package/cli/create.mjs +351 -0
- package/cli/install-peerdeps.mjs +57 -0
- package/cli/update.mjs +9 -0
- package/cli/utils.mjs +81 -0
- package/cli/vite.mjs +55 -0
- package/cli/voiceover/generateVoiceoverCSV.mjs +158 -0
- package/cli/voiceover/index.mjs +1 -0
- package/cli.mjs +157 -0
- package/client.d.ts +7 -0
- package/config/assetpack.mjs +212 -0
- package/config/tsconfig.base.json +28 -0
- package/config/vite.mjs +2464 -0
- package/extras/css/accessibility.css +9 -0
- package/extras/css/fullscreen.css +28 -0
- package/extras/css/loader.css +67 -0
- package/extras/llms.txt +1602 -0
- package/lib/CaptionsPlugin-Dc8fIrjy.js +277 -0
- package/lib/CaptionsPlugin-Dc8fIrjy.js.map +1 -0
- package/lib/DataAdapter-BY2114sp.js +84 -0
- package/lib/DataAdapter-BY2114sp.js.map +1 -0
- package/lib/DebugRenderer-BJMLILqI.js +1385 -0
- package/lib/DebugRenderer-BJMLILqI.js.map +1 -0
- package/lib/DevToolsPlugin-wQ5rOkn0.js +31 -0
- package/lib/DevToolsPlugin-wQ5rOkn0.js.map +1 -0
- package/lib/GSAPPlugin-DHhSZKv8.js +350 -0
- package/lib/GSAPPlugin-DHhSZKv8.js.map +1 -0
- package/lib/LayoutPlugin-B-DF9SYM.js +1271 -0
- package/lib/LayoutPlugin-B-DF9SYM.js.map +1 -0
- package/lib/SpinePlugin-Dz_3dljz.js +6077 -0
- package/lib/SpinePlugin-Dz_3dljz.js.map +1 -0
- package/lib/StatsPlugin-Cg82JMBD.js +70 -0
- package/lib/StatsPlugin-Cg82JMBD.js.map +1 -0
- package/lib/VoiceOverPlugin-BR3ImT8C.js +114 -0
- package/lib/VoiceOverPlugin-BR3ImT8C.js.map +1 -0
- package/lib/caper.mjs +1233 -0
- package/lib/caper.mjs.map +1 -0
- package/lib/core/Application.d.ts +268 -0
- package/lib/core/Application.d.ts.map +1 -0
- package/lib/core/config.d.ts +39 -0
- package/lib/core/config.d.ts.map +1 -0
- package/lib/core/create.d.ts +41 -0
- package/lib/core/create.d.ts.map +1 -0
- package/lib/core/globals.d.ts +51 -0
- package/lib/core/globals.d.ts.map +1 -0
- package/lib/core/index.d.ts +7 -0
- package/lib/core/index.d.ts.map +1 -0
- package/lib/core/interfaces/IApplication.d.ts +566 -0
- package/lib/core/interfaces/IApplication.d.ts.map +1 -0
- package/lib/core/interfaces/IApplicationOptions.d.ts +65 -0
- package/lib/core/interfaces/IApplicationOptions.d.ts.map +1 -0
- package/lib/core/interfaces/ICoreFunctions.d.ts +49 -0
- package/lib/core/interfaces/ICoreFunctions.d.ts.map +1 -0
- package/lib/core/interfaces/ICoreSignals.d.ts +57 -0
- package/lib/core/interfaces/ICoreSignals.d.ts.map +1 -0
- package/lib/core/interfaces/IStorageCapability.d.ts +20 -0
- package/lib/core/interfaces/IStorageCapability.d.ts.map +1 -0
- package/lib/core/interfaces/IStorageCapability.test.d.ts +2 -0
- package/lib/core/interfaces/IStorageCapability.test.d.ts.map +1 -0
- package/lib/core/interfaces/index.d.ts +7 -0
- package/lib/core/interfaces/index.d.ts.map +1 -0
- package/lib/core/registries.d.ts +8 -0
- package/lib/core/registries.d.ts.map +1 -0
- package/lib/core/types.d.ts +12 -0
- package/lib/core/types.d.ts.map +1 -0
- package/lib/display/AnimatedSprite.d.ts +40 -0
- package/lib/display/AnimatedSprite.d.ts.map +1 -0
- package/lib/display/Camera.d.ts +102 -0
- package/lib/display/Camera.d.ts.map +1 -0
- package/lib/display/Container.d.ts +115 -0
- package/lib/display/Container.d.ts.map +1 -0
- package/lib/display/Entity.d.ts +46 -0
- package/lib/display/Entity.d.ts.map +1 -0
- package/lib/display/ParticleContainer.d.ts +58 -0
- package/lib/display/ParticleContainer.d.ts.map +1 -0
- package/lib/display/Scene.d.ts +250 -0
- package/lib/display/Scene.d.ts.map +1 -0
- package/lib/display/SceneTransition.d.ts +41 -0
- package/lib/display/SceneTransition.d.ts.map +1 -0
- package/lib/display/SpineAnimation.d.ts +76 -0
- package/lib/display/SpineAnimation.d.ts.map +1 -0
- package/lib/display/Svg.d.ts +5 -0
- package/lib/display/Svg.d.ts.map +1 -0
- package/lib/display/index.d.ts +10 -0
- package/lib/display/index.d.ts.map +1 -0
- package/lib/env.d.ts +6 -0
- package/lib/hello.d.ts +2 -0
- package/lib/hello.d.ts.map +1 -0
- package/lib/index.d.ts +15 -0
- package/lib/index.d.ts.map +1 -0
- package/lib/mixins/animated.d.ts +53 -0
- package/lib/mixins/animated.d.ts.map +1 -0
- package/lib/mixins/factory/Factory.d.ts +8 -0
- package/lib/mixins/factory/Factory.d.ts.map +1 -0
- package/lib/mixins/factory/const.d.ts +67 -0
- package/lib/mixins/factory/const.d.ts.map +1 -0
- package/lib/mixins/factory/index.d.ts +8 -0
- package/lib/mixins/factory/index.d.ts.map +1 -0
- package/lib/mixins/factory/methods.d.ts +3 -0
- package/lib/mixins/factory/methods.d.ts.map +1 -0
- package/lib/mixins/factory/props.d.ts +160 -0
- package/lib/mixins/factory/props.d.ts.map +1 -0
- package/lib/mixins/factory/registry.d.ts +27 -0
- package/lib/mixins/factory/registry.d.ts.map +1 -0
- package/lib/mixins/factory/registry.test.d.ts +2 -0
- package/lib/mixins/factory/registry.test.d.ts.map +1 -0
- package/lib/mixins/factory/schema.d.ts +71 -0
- package/lib/mixins/factory/schema.d.ts.map +1 -0
- package/lib/mixins/factory/ui-registry.d.ts +20 -0
- package/lib/mixins/factory/ui-registry.d.ts.map +1 -0
- package/lib/mixins/factory/utils.d.ts +11 -0
- package/lib/mixins/factory/utils.d.ts.map +1 -0
- package/lib/mixins/focus.d.ts +15 -0
- package/lib/mixins/focus.d.ts.map +1 -0
- package/lib/mixins/index.d.ts +6 -0
- package/lib/mixins/index.d.ts.map +1 -0
- package/lib/mixins/interaction.d.ts +20 -0
- package/lib/mixins/interaction.d.ts.map +1 -0
- package/lib/mixins/signals.d.ts +15 -0
- package/lib/mixins/signals.d.ts.map +1 -0
- package/lib/plugins/AssetsPlugin.d.ts +79 -0
- package/lib/plugins/AssetsPlugin.d.ts.map +1 -0
- package/lib/plugins/DataAdapter.d.ts +95 -0
- package/lib/plugins/DataAdapter.d.ts.map +1 -0
- package/lib/plugins/DevToolsPlugin.d.ts +97 -0
- package/lib/plugins/DevToolsPlugin.d.ts.map +1 -0
- package/lib/plugins/FullScreenPlugin.d.ts +240 -0
- package/lib/plugins/FullScreenPlugin.d.ts.map +1 -0
- package/lib/plugins/GSAPPlugin.d.ts +634 -0
- package/lib/plugins/GSAPPlugin.d.ts.map +1 -0
- package/lib/plugins/KeyboardPlugin.d.ts +53 -0
- package/lib/plugins/KeyboardPlugin.d.ts.map +1 -0
- package/lib/plugins/LayoutPlugin.d.ts +100 -0
- package/lib/plugins/LayoutPlugin.d.ts.map +1 -0
- package/lib/plugins/LookupPlugin.d.ts +223 -0
- package/lib/plugins/LookupPlugin.d.ts.map +1 -0
- package/lib/plugins/Plugin.d.ts +132 -0
- package/lib/plugins/Plugin.d.ts.map +1 -0
- package/lib/plugins/Plugin.test.d.ts +2 -0
- package/lib/plugins/Plugin.test.d.ts.map +1 -0
- package/lib/plugins/PopupManagerPlugin.d.ts +108 -0
- package/lib/plugins/PopupManagerPlugin.d.ts.map +1 -0
- package/lib/plugins/ResizerPlugin.d.ts +62 -0
- package/lib/plugins/ResizerPlugin.d.ts.map +1 -0
- package/lib/plugins/SceneManagerPlugin.d.ts +122 -0
- package/lib/plugins/SceneManagerPlugin.d.ts.map +1 -0
- package/lib/plugins/StatsPlugin.d.ts +8 -0
- package/lib/plugins/StatsPlugin.d.ts.map +1 -0
- package/lib/plugins/TimerPlugin.d.ts +401 -0
- package/lib/plugins/TimerPlugin.d.ts.map +1 -0
- package/lib/plugins/WebEventsPlugin.d.ts +60 -0
- package/lib/plugins/WebEventsPlugin.d.ts.map +1 -0
- package/lib/plugins/actions/ActionsPlugin.d.ts +39 -0
- package/lib/plugins/actions/ActionsPlugin.d.ts.map +1 -0
- package/lib/plugins/actions/constants.d.ts +52 -0
- package/lib/plugins/actions/constants.d.ts.map +1 -0
- package/lib/plugins/actions/index.d.ts +5 -0
- package/lib/plugins/actions/index.d.ts.map +1 -0
- package/lib/plugins/actions/methods.d.ts +11 -0
- package/lib/plugins/actions/methods.d.ts.map +1 -0
- package/lib/plugins/actions/types.d.ts +25 -0
- package/lib/plugins/actions/types.d.ts.map +1 -0
- package/lib/plugins/audio/AudioChannel.d.ts +46 -0
- package/lib/plugins/audio/AudioChannel.d.ts.map +1 -0
- package/lib/plugins/audio/AudioChannel.test.d.ts +2 -0
- package/lib/plugins/audio/AudioChannel.test.d.ts.map +1 -0
- package/lib/plugins/audio/AudioInstance.d.ts +79 -0
- package/lib/plugins/audio/AudioInstance.d.ts.map +1 -0
- package/lib/plugins/audio/AudioManagerPlugin.d.ts +323 -0
- package/lib/plugins/audio/AudioManagerPlugin.d.ts.map +1 -0
- package/lib/plugins/audio/VoiceOverPlugin.d.ts +69 -0
- package/lib/plugins/audio/VoiceOverPlugin.d.ts.map +1 -0
- package/lib/plugins/audio/index.d.ts +4 -0
- package/lib/plugins/audio/index.d.ts.map +1 -0
- package/lib/plugins/breakpoints/BreakpointPlugin.d.ts +109 -0
- package/lib/plugins/breakpoints/BreakpointPlugin.d.ts.map +1 -0
- package/lib/plugins/breakpoints/BreakpointPlugin.test.d.ts +2 -0
- package/lib/plugins/breakpoints/BreakpointPlugin.test.d.ts.map +1 -0
- package/lib/plugins/breakpoints/evaluate.d.ts +53 -0
- package/lib/plugins/breakpoints/evaluate.d.ts.map +1 -0
- package/lib/plugins/breakpoints/evaluate.test.d.ts +2 -0
- package/lib/plugins/breakpoints/evaluate.test.d.ts.map +1 -0
- package/lib/plugins/breakpoints/index.d.ts +4 -0
- package/lib/plugins/breakpoints/index.d.ts.map +1 -0
- package/lib/plugins/breakpoints/methods.d.ts +23 -0
- package/lib/plugins/breakpoints/methods.d.ts.map +1 -0
- package/lib/plugins/breakpoints/types.d.ts +70 -0
- package/lib/plugins/breakpoints/types.d.ts.map +1 -0
- package/lib/plugins/captions/CaptionsPlugin.d.ts +150 -0
- package/lib/plugins/captions/CaptionsPlugin.d.ts.map +1 -0
- package/lib/plugins/captions/CaptionsRenderer.d.ts +37 -0
- package/lib/plugins/captions/CaptionsRenderer.d.ts.map +1 -0
- package/lib/plugins/captions/index.d.ts +3 -0
- package/lib/plugins/captions/index.d.ts.map +1 -0
- package/lib/plugins/defaults.d.ts +4 -0
- package/lib/plugins/defaults.d.ts.map +1 -0
- package/lib/plugins/focus/FocusManagerPlugin.d.ts +148 -0
- package/lib/plugins/focus/FocusManagerPlugin.d.ts.map +1 -0
- package/lib/plugins/focus/FocusOutliner.d.ts +32 -0
- package/lib/plugins/focus/FocusOutliner.d.ts.map +1 -0
- package/lib/plugins/focus/index.d.ts +3 -0
- package/lib/plugins/focus/index.d.ts.map +1 -0
- package/lib/plugins/i18nPlugin.d.ts +128 -0
- package/lib/plugins/i18nPlugin.d.ts.map +1 -0
- package/lib/plugins/index.d.ts +18 -0
- package/lib/plugins/index.d.ts.map +1 -0
- package/lib/plugins/input/AbstractControls.d.ts +8 -0
- package/lib/plugins/input/AbstractControls.d.ts.map +1 -0
- package/lib/plugins/input/Controls.d.ts +16 -0
- package/lib/plugins/input/Controls.d.ts.map +1 -0
- package/lib/plugins/input/InputPlugin.d.ts +52 -0
- package/lib/plugins/input/InputPlugin.d.ts.map +1 -0
- package/lib/plugins/input/constants.d.ts +8 -0
- package/lib/plugins/input/constants.d.ts.map +1 -0
- package/lib/plugins/input/index.d.ts +10 -0
- package/lib/plugins/input/index.d.ts.map +1 -0
- package/lib/plugins/input/interfaces.d.ts +30 -0
- package/lib/plugins/input/interfaces.d.ts.map +1 -0
- package/lib/plugins/input/keyboard/KeyboardContols.d.ts +28 -0
- package/lib/plugins/input/keyboard/KeyboardContols.d.ts.map +1 -0
- package/lib/plugins/input/keyboard/index.d.ts +3 -0
- package/lib/plugins/input/keyboard/index.d.ts.map +1 -0
- package/lib/plugins/input/keyboard/interfaces.d.ts +18 -0
- package/lib/plugins/input/keyboard/interfaces.d.ts.map +1 -0
- package/lib/plugins/input/methods.d.ts +4 -0
- package/lib/plugins/input/methods.d.ts.map +1 -0
- package/lib/plugins/input/touch/TouchControls.d.ts +35 -0
- package/lib/plugins/input/touch/TouchControls.d.ts.map +1 -0
- package/lib/plugins/input/touch/constants.d.ts +14 -0
- package/lib/plugins/input/touch/constants.d.ts.map +1 -0
- package/lib/plugins/input/touch/index.d.ts +4 -0
- package/lib/plugins/input/touch/index.d.ts.map +1 -0
- package/lib/plugins/input/touch/interfaces.d.ts +15 -0
- package/lib/plugins/input/touch/interfaces.d.ts.map +1 -0
- package/lib/plugins/input/types.d.ts +32 -0
- package/lib/plugins/input/types.d.ts.map +1 -0
- package/lib/plugins/input/utils.d.ts +23 -0
- package/lib/plugins/input/utils.d.ts.map +1 -0
- package/lib/plugins/spine/SpinePlugin.d.ts +6 -0
- package/lib/plugins/spine/SpinePlugin.d.ts.map +1 -0
- package/lib/plugins/spine/pixi-spine/BatchableSpineSlot.d.ts +31 -0
- package/lib/plugins/spine/pixi-spine/BatchableSpineSlot.d.ts.map +1 -0
- package/lib/plugins/spine/pixi-spine/Spine.d.ts +211 -0
- package/lib/plugins/spine/pixi-spine/Spine.d.ts.map +1 -0
- package/lib/plugins/spine/pixi-spine/SpineDebugRenderer.d.ts +81 -0
- package/lib/plugins/spine/pixi-spine/SpineDebugRenderer.d.ts.map +1 -0
- package/lib/plugins/spine/pixi-spine/SpinePipe.d.ts +21 -0
- package/lib/plugins/spine/pixi-spine/SpinePipe.d.ts.map +1 -0
- package/lib/plugins/spine/pixi-spine/SpineTexture.d.ts +16 -0
- package/lib/plugins/spine/pixi-spine/SpineTexture.d.ts.map +1 -0
- package/lib/plugins/spine/pixi-spine/assets/atlasLoader.d.ts +10 -0
- package/lib/plugins/spine/pixi-spine/assets/atlasLoader.d.ts.map +1 -0
- package/lib/plugins/spine/pixi-spine/assets/skeletonLoader.d.ts +6 -0
- package/lib/plugins/spine/pixi-spine/assets/skeletonLoader.d.ts.map +1 -0
- package/lib/plugins/spine/pixi-spine/darktint/DarkTintBatchGeometry.d.ts +5 -0
- package/lib/plugins/spine/pixi-spine/darktint/DarkTintBatchGeometry.d.ts.map +1 -0
- package/lib/plugins/spine/pixi-spine/darktint/DarkTintBatcher.d.ts +22 -0
- package/lib/plugins/spine/pixi-spine/darktint/DarkTintBatcher.d.ts.map +1 -0
- package/lib/plugins/spine/pixi-spine/darktint/DarkTintShader.d.ts +5 -0
- package/lib/plugins/spine/pixi-spine/darktint/DarkTintShader.d.ts.map +1 -0
- package/lib/plugins/spine/pixi-spine/darktint/darkTintBit.d.ts +51 -0
- package/lib/plugins/spine/pixi-spine/darktint/darkTintBit.d.ts.map +1 -0
- package/lib/plugins/spine/pixi-spine/index.d.ts +9 -0
- package/lib/plugins/spine/pixi-spine/index.d.ts.map +1 -0
- package/lib/plugins/spine/pixi-spine/require-shim.d.ts +34 -0
- package/lib/plugins/spine/pixi-spine/require-shim.d.ts.map +1 -0
- package/lib/registries-CYCaYKZI.js +6885 -0
- package/lib/registries-CYCaYKZI.js.map +1 -0
- package/lib/signals/Signal.d.ts +16 -0
- package/lib/signals/Signal.d.ts.map +1 -0
- package/lib/signals/Signal.test.d.ts +2 -0
- package/lib/signals/Signal.test.d.ts.map +1 -0
- package/lib/signals/index.d.ts +3 -0
- package/lib/signals/index.d.ts.map +1 -0
- package/lib/store/Store.d.ts +56 -0
- package/lib/store/Store.d.ts.map +1 -0
- package/lib/store/Store.test.d.ts +2 -0
- package/lib/store/Store.test.d.ts.map +1 -0
- package/lib/store/index.d.ts +2 -0
- package/lib/store/index.d.ts.map +1 -0
- package/lib/types/framework.d.ts +46 -0
- package/lib/types/gsap.d.ts +23 -0
- package/lib/ui/Button.d.ts +162 -0
- package/lib/ui/Button.d.ts.map +1 -0
- package/lib/ui/FlexContainer.d.ts +109 -0
- package/lib/ui/FlexContainer.d.ts.map +1 -0
- package/lib/ui/Input.d.ts +384 -0
- package/lib/ui/Input.d.ts.map +1 -0
- package/lib/ui/Joystick.d.ts +61 -0
- package/lib/ui/Joystick.d.ts.map +1 -0
- package/lib/ui/Popup.d.ts +109 -0
- package/lib/ui/Popup.d.ts.map +1 -0
- package/lib/ui/Toast.d.ts +131 -0
- package/lib/ui/Toast.d.ts.map +1 -0
- package/lib/ui/Toaster.d.ts +188 -0
- package/lib/ui/Toaster.d.ts.map +1 -0
- package/lib/ui/UICanvas.d.ts +155 -0
- package/lib/ui/UICanvas.d.ts.map +1 -0
- package/lib/ui/index.d.ts +9 -0
- package/lib/ui/index.d.ts.map +1 -0
- package/lib/utils/array.d.ts +11 -0
- package/lib/utils/array.d.ts.map +1 -0
- package/lib/utils/bind.d.ts +21 -0
- package/lib/utils/bind.d.ts.map +1 -0
- package/lib/utils/canvas.d.ts +2 -0
- package/lib/utils/canvas.d.ts.map +1 -0
- package/lib/utils/color.d.ts +66 -0
- package/lib/utils/color.d.ts.map +1 -0
- package/lib/utils/console/Logger.d.ts +15 -0
- package/lib/utils/console/Logger.d.ts.map +1 -0
- package/lib/utils/console/index.d.ts +2 -0
- package/lib/utils/console/index.d.ts.map +1 -0
- package/lib/utils/debug.d.ts +34 -0
- package/lib/utils/debug.d.ts.map +1 -0
- package/lib/utils/define.d.ts +100 -0
- package/lib/utils/define.d.ts.map +1 -0
- package/lib/utils/env.d.ts +4 -0
- package/lib/utils/env.d.ts.map +1 -0
- package/lib/utils/events.d.ts +12 -0
- package/lib/utils/events.d.ts.map +1 -0
- package/lib/utils/framework.d.ts +12 -0
- package/lib/utils/framework.d.ts.map +1 -0
- package/lib/utils/index.d.ts +28 -0
- package/lib/utils/index.d.ts.map +1 -0
- package/lib/utils/map.d.ts +31 -0
- package/lib/utils/map.d.ts.map +1 -0
- package/lib/utils/math.d.ts +15 -0
- package/lib/utils/math.d.ts.map +1 -0
- package/lib/utils/misc.d.ts +13 -0
- package/lib/utils/misc.d.ts.map +1 -0
- package/lib/utils/number.d.ts +2 -0
- package/lib/utils/number.d.ts.map +1 -0
- package/lib/utils/object.d.ts +21 -0
- package/lib/utils/object.d.ts.map +1 -0
- package/lib/utils/padding.d.ts +4 -0
- package/lib/utils/padding.d.ts.map +1 -0
- package/lib/utils/pixi.d.ts +42 -0
- package/lib/utils/pixi.d.ts.map +1 -0
- package/lib/utils/platform.d.ts +20 -0
- package/lib/utils/platform.d.ts.map +1 -0
- package/lib/utils/point.d.ts +66 -0
- package/lib/utils/point.d.ts.map +1 -0
- package/lib/utils/promise/Queue.d.ts +60 -0
- package/lib/utils/promise/Queue.d.ts.map +1 -0
- package/lib/utils/promise/functions.d.ts +14 -0
- package/lib/utils/promise/functions.d.ts.map +1 -0
- package/lib/utils/promise/index.d.ts +3 -0
- package/lib/utils/promise/index.d.ts.map +1 -0
- package/lib/utils/random.d.ts +42 -0
- package/lib/utils/random.d.ts.map +1 -0
- package/lib/utils/rect.d.ts +26 -0
- package/lib/utils/rect.d.ts.map +1 -0
- package/lib/utils/set.d.ts +15 -0
- package/lib/utils/set.d.ts.map +1 -0
- package/lib/utils/string.d.ts +3 -0
- package/lib/utils/string.d.ts.map +1 -0
- package/lib/utils/text.d.ts +3 -0
- package/lib/utils/text.d.ts.map +1 -0
- package/lib/utils/typefilters.d.ts +4 -0
- package/lib/utils/typefilters.d.ts.map +1 -0
- package/lib/utils/types.d.ts +209 -0
- package/lib/utils/types.d.ts.map +1 -0
- package/lib/utils/vite.d.ts +25 -0
- package/lib/utils/vite.d.ts.map +1 -0
- package/lib/utils/web.d.ts +3 -0
- package/lib/utils/web.d.ts.map +1 -0
- package/lib/version.d.ts +3 -0
- package/lib/version.d.ts.map +1 -0
- package/lib/webgl-check.d.ts +2 -0
- package/lib/webgl-check.d.ts.map +1 -0
- package/package.json +138 -0
- package/src/core/Application.ts +1091 -0
- package/src/core/config.ts +168 -0
- package/src/core/create.ts +186 -0
- package/src/core/globals.ts +299 -0
- package/src/core/index.ts +6 -0
- package/src/core/interfaces/IApplication.ts +628 -0
- package/src/core/interfaces/IApplicationOptions.ts +81 -0
- package/src/core/interfaces/ICoreFunctions.ts +86 -0
- package/src/core/interfaces/ICoreSignals.ts +77 -0
- package/src/core/interfaces/IStorageCapability.test.ts +27 -0
- package/src/core/interfaces/IStorageCapability.ts +26 -0
- package/src/core/interfaces/index.ts +6 -0
- package/src/core/registries.ts +7 -0
- package/src/core/types.ts +13 -0
- package/src/display/AnimatedSprite.ts +227 -0
- package/src/display/Camera.ts +371 -0
- package/src/display/Container.ts +240 -0
- package/src/display/Entity.ts +50 -0
- package/src/display/ParticleContainer.ts +107 -0
- package/src/display/Scene.ts +305 -0
- package/src/display/SceneTransition.ts +108 -0
- package/src/display/SpineAnimation.ts +170 -0
- package/src/display/Svg.ts +9 -0
- package/src/display/index.ts +11 -0
- package/src/env.d.ts +6 -0
- package/src/hello.ts +20 -0
- package/src/index.ts +17 -0
- package/src/mixins/animated.ts +340 -0
- package/src/mixins/factory/Factory.ts +24 -0
- package/src/mixins/factory/const.ts +363 -0
- package/src/mixins/factory/index.ts +7 -0
- package/src/mixins/factory/methods.ts +21 -0
- package/src/mixins/factory/props.ts +207 -0
- package/src/mixins/factory/registry.test.ts +83 -0
- package/src/mixins/factory/registry.ts +61 -0
- package/src/mixins/factory/schema.ts +153 -0
- package/src/mixins/factory/ui-registry.ts +54 -0
- package/src/mixins/factory/utils.ts +130 -0
- package/src/mixins/focus.ts +124 -0
- package/src/mixins/index.ts +5 -0
- package/src/mixins/interaction.ts +74 -0
- package/src/mixins/signals.ts +49 -0
- package/src/plugins/AssetsPlugin.ts +407 -0
- package/src/plugins/DataAdapter.ts +259 -0
- package/src/plugins/DevToolsPlugin.ts +103 -0
- package/src/plugins/FullScreenPlugin.ts +359 -0
- package/src/plugins/GSAPPlugin.ts +811 -0
- package/src/plugins/KeyboardPlugin.ts +160 -0
- package/src/plugins/LayoutPlugin.ts +127 -0
- package/src/plugins/LookupPlugin.ts +308 -0
- package/src/plugins/Plugin.test.ts +73 -0
- package/src/plugins/Plugin.ts +200 -0
- package/src/plugins/PopupManagerPlugin.ts +263 -0
- package/src/plugins/ResizerPlugin.ts +220 -0
- package/src/plugins/SceneManagerPlugin.ts +669 -0
- package/src/plugins/StatsPlugin.ts +24 -0
- package/src/plugins/TimerPlugin.ts +841 -0
- package/src/plugins/WebEventsPlugin.ts +132 -0
- package/src/plugins/actions/ActionsPlugin.ts +113 -0
- package/src/plugins/actions/constants.ts +45 -0
- package/src/plugins/actions/index.ts +4 -0
- package/src/plugins/actions/methods.ts +28 -0
- package/src/plugins/actions/types.ts +47 -0
- package/src/plugins/audio/AudioChannel.test.ts +101 -0
- package/src/plugins/audio/AudioChannel.ts +164 -0
- package/src/plugins/audio/AudioInstance.ts +228 -0
- package/src/plugins/audio/AudioManagerPlugin.ts +903 -0
- package/src/plugins/audio/VoiceOverPlugin.ts +354 -0
- package/src/plugins/audio/index.ts +3 -0
- package/src/plugins/breakpoints/BreakpointPlugin.test.ts +228 -0
- package/src/plugins/breakpoints/BreakpointPlugin.ts +293 -0
- package/src/plugins/breakpoints/evaluate.test.ts +239 -0
- package/src/plugins/breakpoints/evaluate.ts +201 -0
- package/src/plugins/breakpoints/index.ts +3 -0
- package/src/plugins/breakpoints/methods.ts +22 -0
- package/src/plugins/breakpoints/types.ts +86 -0
- package/src/plugins/captions/CaptionsPlugin.ts +468 -0
- package/src/plugins/captions/CaptionsRenderer.ts +184 -0
- package/src/plugins/captions/font/Sans.fnt +116 -0
- package/src/plugins/captions/font/Sans.png +0 -0
- package/src/plugins/captions/index.ts +2 -0
- package/src/plugins/defaults.ts +95 -0
- package/src/plugins/focus/FocusManagerPlugin.ts +773 -0
- package/src/plugins/focus/FocusOutliner.ts +111 -0
- package/src/plugins/focus/index.ts +2 -0
- package/src/plugins/i18nPlugin.ts +284 -0
- package/src/plugins/index.ts +17 -0
- package/src/plugins/input/AbstractControls.ts +15 -0
- package/src/plugins/input/Controls.ts +55 -0
- package/src/plugins/input/InputPlugin.ts +168 -0
- package/src/plugins/input/constants.ts +12 -0
- package/src/plugins/input/index.ts +9 -0
- package/src/plugins/input/interfaces.ts +37 -0
- package/src/plugins/input/keyboard/KeyboardContols.ts +182 -0
- package/src/plugins/input/keyboard/index.ts +2 -0
- package/src/plugins/input/keyboard/interfaces.ts +21 -0
- package/src/plugins/input/methods.ts +9 -0
- package/src/plugins/input/touch/TouchControls.ts +237 -0
- package/src/plugins/input/touch/constants.ts +34 -0
- package/src/plugins/input/touch/index.ts +3 -0
- package/src/plugins/input/touch/interfaces.ts +15 -0
- package/src/plugins/input/types.ts +41 -0
- package/src/plugins/input/utils.ts +10 -0
- package/src/plugins/spine/SpinePlugin.ts +14 -0
- package/src/plugins/spine/pixi-spine/BatchableSpineSlot.ts +138 -0
- package/src/plugins/spine/pixi-spine/Spine.ts +897 -0
- package/src/plugins/spine/pixi-spine/SpineDebugRenderer.ts +615 -0
- package/src/plugins/spine/pixi-spine/SpinePipe.ts +197 -0
- package/src/plugins/spine/pixi-spine/SpineTexture.ts +143 -0
- package/src/plugins/spine/pixi-spine/assets/atlasLoader.ts +156 -0
- package/src/plugins/spine/pixi-spine/assets/skeletonLoader.ts +80 -0
- package/src/plugins/spine/pixi-spine/darktint/DarkTintBatchGeometry.ts +92 -0
- package/src/plugins/spine/pixi-spine/darktint/DarkTintBatcher.ts +186 -0
- package/src/plugins/spine/pixi-spine/darktint/DarkTintShader.ts +74 -0
- package/src/plugins/spine/pixi-spine/darktint/darkTintBit.ts +77 -0
- package/src/plugins/spine/pixi-spine/index.ts +43 -0
- package/src/plugins/spine/pixi-spine/require-shim.ts +43 -0
- package/src/signals/Signal.test.ts +54 -0
- package/src/signals/Signal.ts +68 -0
- package/src/signals/index.ts +10 -0
- package/src/store/Store.test.ts +146 -0
- package/src/store/Store.ts +192 -0
- package/src/store/index.ts +1 -0
- package/src/types/framework.d.ts +47 -0
- package/src/types/gsap.d.ts +26 -0
- package/src/ui/Button.ts +454 -0
- package/src/ui/FlexContainer.ts +526 -0
- package/src/ui/Input.ts +1274 -0
- package/src/ui/Joystick.ts +288 -0
- package/src/ui/Popup.ts +242 -0
- package/src/ui/Toast.ts +399 -0
- package/src/ui/Toaster.ts +409 -0
- package/src/ui/UICanvas.ts +812 -0
- package/src/ui/index.ts +8 -0
- package/src/utils/array.ts +24 -0
- package/src/utils/bind.ts +79 -0
- package/src/utils/canvas.ts +26 -0
- package/src/utils/color.ts +126 -0
- package/src/utils/console/Logger.ts +86 -0
- package/src/utils/console/index.ts +1 -0
- package/src/utils/debug.ts +69 -0
- package/src/utils/define.ts +120 -0
- package/src/utils/env.ts +3 -0
- package/src/utils/events.ts +10 -0
- package/src/utils/framework.ts +45 -0
- package/src/utils/index.ts +27 -0
- package/src/utils/map.ts +59 -0
- package/src/utils/math.ts +19 -0
- package/src/utils/misc.ts +45 -0
- package/src/utils/number.ts +3 -0
- package/src/utils/object.ts +43 -0
- package/src/utils/padding.ts +43 -0
- package/src/utils/pixi.ts +116 -0
- package/src/utils/platform.ts +33 -0
- package/src/utils/point.ts +123 -0
- package/src/utils/promise/Queue.ts +125 -0
- package/src/utils/promise/functions.ts +16 -0
- package/src/utils/promise/index.ts +2 -0
- package/src/utils/random.ts +69 -0
- package/src/utils/rect.ts +50 -0
- package/src/utils/set.ts +32 -0
- package/src/utils/string.ts +9 -0
- package/src/utils/text.ts +30 -0
- package/src/utils/typefilters.ts +29 -0
- package/src/utils/types.ts +426 -0
- package/src/utils/vite.ts +41 -0
- package/src/utils/web.ts +7 -0
- package/src/version.ts +3 -0
- package/src/webgl-check.ts +12 -0
- package/templates/app/default/.eslintrc.json +21 -0
- package/templates/app/default/.meta.json +4 -0
- package/templates/app/default/.nvmrc +1 -0
- package/templates/app/default/.prettierrc.json +7 -0
- package/templates/app/default/README.md +8 -0
- package/templates/app/default/assets/audio{m}/music/Cheerful Annoyance.ogg +0 -0
- package/templates/app/default/assets/audio{m}/music/Drumming Sticks.ogg +0 -0
- package/templates/app/default/assets/audio{m}/music/Game Over.ogg +0 -0
- package/templates/app/default/assets/audio{m}/music/Mishief Stroll.ogg +0 -0
- package/templates/app/default/assets/audio{m}/music/Night at the Beach.ogg +0 -0
- package/templates/app/default/assets/audio{m}/sfx/click.ogg +0 -0
- package/templates/app/default/assets/audio{m}/sfx/hover.ogg +0 -0
- package/templates/app/default/assets/required{m}/caper.png +0 -0
- package/templates/app/default/assets/required{m}/fonts{fix}/SpaceGrotesk-Bold{family=Space Grotesk}{wf}.ttf +0 -0
- package/templates/app/default/assets/required{m}/fonts{fix}/SpaceGrotesk-Medium{family=Space Grotesk}{wf}.ttf +0 -0
- package/templates/app/default/assets/required{m}/fonts{fix}/SpaceGrotesk-Regular{family=Space Grotesk}{wf}.ttf +0 -0
- package/templates/app/default/assets/required{m}/fonts{fix}/Syncopate-Bold{family=Syncopate}{wf}.ttf +0 -0
- package/templates/app/default/assets/required{m}/ui{tps}/btn/blue.png +0 -0
- package/templates/app/default/assets/required{m}/ui{tps}/btn/green.png +0 -0
- package/templates/app/default/assets/required{m}/ui{tps}/btn/grey.png +0 -0
- package/templates/app/default/assets/required{m}/ui{tps}/btn/orange.png +0 -0
- package/templates/app/default/assets/required{m}/ui{tps}/btn/purple.png +0 -0
- package/templates/app/default/assets/required{m}/ui{tps}/btn/red.png +0 -0
- package/templates/app/default/assets/required{m}/ui{tps}/btn/yellow.png +0 -0
- package/templates/app/default/assets/required{m}/ui{tps}/btn_a/down.png +0 -0
- package/templates/app/default/assets/required{m}/ui{tps}/btn_a/over.png +0 -0
- package/templates/app/default/assets/required{m}/ui{tps}/btn_a/up.png +0 -0
- package/templates/app/default/assets/required{m}/ui{tps}/btn_b/down.png +0 -0
- package/templates/app/default/assets/required{m}/ui{tps}/btn_b/over.png +0 -0
- package/templates/app/default/assets/required{m}/ui{tps}/btn_b/up.png +0 -0
- package/templates/app/default/assets/required{m}/ui{tps}/joystick/base.png +0 -0
- package/templates/app/default/assets/required{m}/ui{tps}/joystick/handle.png +0 -0
- package/templates/app/default/assets/required{m}/wordmark.svg +1 -0
- package/templates/app/default/assets/spine{m}/spineboy-pro.png +0 -0
- package/templates/app/default/assets/spine{m}/spineboy-pro.skel +0 -0
- package/templates/app/default/assets/spine{m}/spineboy-pro{fix}.atlas +94 -0
- package/templates/app/default/caper.config.ts +60 -0
- package/templates/app/default/index.html +23 -0
- package/templates/app/default/package.template.json +17 -0
- package/templates/app/default/public/favicon.ico +0 -0
- package/templates/app/default/src/__APPLICATION_NAME__.ts +3 -0
- package/templates/app/default/src/main.ts +9 -0
- package/templates/app/default/src/scenes/Base.ts +39 -0
- package/templates/app/default/src/scenes/Game.ts +34 -0
- package/templates/app/default/src/scenes/Splash.ts +70 -0
- package/templates/app/default/src/scenes/Start.ts +90 -0
- package/templates/app/default/src/utils/Constants.ts +3 -0
- package/templates/app/default/tsconfig.json +1 -0
- package/templates/plugin/package.template.json +33 -0
- package/templates/plugin/src/Plugin.template.ts +24 -0
- package/templates/plugin/src/index.template.ts +3 -0
- package/templates/plugin/tsconfig.template.json +43 -0
- package/templates/plugin/vite-env.template.d.ts +16 -0
- package/templates/plugin/vite.config.template.ts +19 -0
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
import { Application } from 'pixi.js';
|
|
2
|
+
import { Plugin, IPlugin } from './Plugin';
|
|
3
|
+
/**
|
|
4
|
+
* Interface for the DevTools plugin providing development debugging capabilities.
|
|
5
|
+
* Enables PIXI.js developer tools integration for enhanced debugging and inspection.
|
|
6
|
+
*/
|
|
7
|
+
export interface IDevToolsPlugin extends IPlugin {
|
|
8
|
+
/**
|
|
9
|
+
* Initializes the PIXI DevTools for the given application instance.
|
|
10
|
+
* Enables the browser developer tools extension for PIXI.js debugging.
|
|
11
|
+
*
|
|
12
|
+
* @param app - The PIXI Application instance to attach devtools to
|
|
13
|
+
*
|
|
14
|
+
* @example
|
|
15
|
+
* ```typescript
|
|
16
|
+
* const devToolsPlugin = app.plugins.get<IDevToolsPlugin>('DevToolsPlugin');
|
|
17
|
+
* if (devToolsPlugin && process.env.NODE_ENV === 'development') {
|
|
18
|
+
* devToolsPlugin.initializeDevTools(pixiApp);
|
|
19
|
+
* }
|
|
20
|
+
* ```
|
|
21
|
+
*/
|
|
22
|
+
initializeDevTools(app: Application): void;
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* Developer tools plugin for enhanced PIXI.js debugging and inspection.
|
|
26
|
+
*
|
|
27
|
+
* Integrates the official PIXI.js developer tools browser extension, providing
|
|
28
|
+
* visual debugging capabilities, scene graph inspection, and performance monitoring
|
|
29
|
+
* directly in the browser's developer tools panel.
|
|
30
|
+
*
|
|
31
|
+
* Features:
|
|
32
|
+
* - Scene graph visualization and navigation
|
|
33
|
+
* - Real-time property inspection and editing
|
|
34
|
+
* - Performance metrics and rendering statistics
|
|
35
|
+
* - Texture atlas and asset inspection
|
|
36
|
+
* - Interactive debugging tools
|
|
37
|
+
*
|
|
38
|
+
* @example
|
|
39
|
+
* ```typescript
|
|
40
|
+
* // Plugin is typically initialized automatically in development builds
|
|
41
|
+
* // Manual initialization example:
|
|
42
|
+
* const devToolsPlugin = app.plugins.get<IDevToolsPlugin>('DevToolsPlugin');
|
|
43
|
+
* if (devToolsPlugin && process.env.NODE_ENV === 'development') {
|
|
44
|
+
* devToolsPlugin.initializeDevTools(pixiApp);
|
|
45
|
+
* }
|
|
46
|
+
*
|
|
47
|
+
* // The devtools will then be available in browser developer tools
|
|
48
|
+
* // Look for the "PIXI" tab in Chrome/Firefox developer tools
|
|
49
|
+
* ```
|
|
50
|
+
*
|
|
51
|
+
* @remarks
|
|
52
|
+
* - Should only be enabled in development environments
|
|
53
|
+
* - Requires the PIXI DevTools browser extension to be installed
|
|
54
|
+
* - May impact performance and should be disabled in production builds
|
|
55
|
+
* - Provides comprehensive debugging capabilities for PIXI.js applications
|
|
56
|
+
*/
|
|
57
|
+
export declare class DevToolsPlugin extends Plugin implements IDevToolsPlugin {
|
|
58
|
+
/** Plugin identifier for framework registration */
|
|
59
|
+
readonly id = "DevToolsPlugin";
|
|
60
|
+
/**
|
|
61
|
+
* Initializes the DevTools plugin.
|
|
62
|
+
* Sets up the plugin for later DevTools activation when needed.
|
|
63
|
+
*
|
|
64
|
+
* @example
|
|
65
|
+
* ```typescript
|
|
66
|
+
* // Called automatically by the plugin system
|
|
67
|
+
* // No manual initialization required
|
|
68
|
+
* ```
|
|
69
|
+
*/
|
|
70
|
+
initialize(): Promise<void>;
|
|
71
|
+
/**
|
|
72
|
+
* Initializes and activates PIXI DevTools for the specified application.
|
|
73
|
+
* Connects the application to the browser's PIXI DevTools extension for debugging.
|
|
74
|
+
*
|
|
75
|
+
* @param app - The PIXI Application instance to enable debugging for
|
|
76
|
+
*
|
|
77
|
+
* @example
|
|
78
|
+
* ```typescript
|
|
79
|
+
* // Typically called conditionally based on environment
|
|
80
|
+
* const pixiApp = new PIXI.Application();
|
|
81
|
+
* const devToolsPlugin = app.plugins.get<IDevToolsPlugin>('DevToolsPlugin');
|
|
82
|
+
*
|
|
83
|
+
* if (devToolsPlugin && process.env.NODE_ENV === 'development') {
|
|
84
|
+
* devToolsPlugin.initializeDevTools(pixiApp);
|
|
85
|
+
* console.log('PIXI DevTools enabled - check browser developer tools');
|
|
86
|
+
* }
|
|
87
|
+
* ```
|
|
88
|
+
*
|
|
89
|
+
* @remarks
|
|
90
|
+
* - Should only be called in development environments
|
|
91
|
+
* - Requires the PIXI DevTools browser extension to be installed
|
|
92
|
+
* - Once initialized, debugging tools will be available in the browser's developer tools
|
|
93
|
+
* - The extension provides a "PIXI" tab with comprehensive debugging features
|
|
94
|
+
*/
|
|
95
|
+
initializeDevTools(app: Application): void;
|
|
96
|
+
}
|
|
97
|
+
//# sourceMappingURL=DevToolsPlugin.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DevToolsPlugin.d.ts","sourceRoot":"","sources":["../../src/plugins/DevToolsPlugin.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AACtC,OAAO,EAAE,MAAM,EAAE,KAAK,OAAO,EAAE,MAAM,UAAU,CAAC;AAEhD;;;GAGG;AACH,MAAM,WAAW,eAAgB,SAAQ,OAAO;IAC9C;;;;;;;;;;;;;OAaG;IACH,kBAAkB,CAAC,GAAG,EAAE,WAAW,GAAG,IAAI,CAAC;CAC5C;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,qBAAa,cAAe,SAAQ,MAAO,YAAW,eAAe;IACnE,mDAAmD;IACnD,SAAgB,EAAE,oBAAoB;IAEtC;;;;;;;;;OASG;IACG,UAAU;IAEhB;;;;;;;;;;;;;;;;;;;;;;;OAuBG;IACI,kBAAkB,CAAC,GAAG,EAAE,WAAW;CAG3C"}
|
|
@@ -0,0 +1,240 @@
|
|
|
1
|
+
import { Application } from '../core/Application';
|
|
2
|
+
import { Signal } from '../signals';
|
|
3
|
+
import { IPlugin, Plugin } from './Plugin';
|
|
4
|
+
/**
|
|
5
|
+
* Interface for the FullScreen plugin providing cross-browser fullscreen functionality.
|
|
6
|
+
* Handles fullscreen mode management with comprehensive browser compatibility.
|
|
7
|
+
*/
|
|
8
|
+
export interface IFullScreenPlugin extends IPlugin {
|
|
9
|
+
/** Current fullscreen state */
|
|
10
|
+
isFullScreen: boolean;
|
|
11
|
+
/** The HTML element or Window object used for fullscreen operations */
|
|
12
|
+
fullScreenElement: HTMLElement | Window | null;
|
|
13
|
+
/** Signal emitted when fullscreen state changes */
|
|
14
|
+
onFullScreenChange: Signal<(isFullscreen: boolean) => void>;
|
|
15
|
+
/** Toggles between fullscreen and windowed mode */
|
|
16
|
+
toggleFullScreen: () => void;
|
|
17
|
+
/** Sets the fullscreen state explicitly */
|
|
18
|
+
setFullScreen: (value: boolean) => void;
|
|
19
|
+
/** Sets the element to be used for fullscreen operations */
|
|
20
|
+
setFullScreenElement: (element: HTMLElement | Window | null) => void;
|
|
21
|
+
/** Whether the current environment supports fullscreen functionality */
|
|
22
|
+
readonly canFullscreen: boolean;
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* Cross-browser fullscreen functionality plugin for web applications.
|
|
26
|
+
*
|
|
27
|
+
* Provides comprehensive fullscreen mode management with automatic browser
|
|
28
|
+
* compatibility handling, event management, and flexible element targeting.
|
|
29
|
+
* Supports all major browsers including Chrome, Firefox, Safari, and Edge.
|
|
30
|
+
*
|
|
31
|
+
* Key Features:
|
|
32
|
+
* - Cross-browser fullscreen API compatibility
|
|
33
|
+
* - Automatic event handling and state synchronization
|
|
34
|
+
* - Flexible element targeting (container, window, or custom elements)
|
|
35
|
+
* - Signal-based event system for reactive programming
|
|
36
|
+
* - Graceful fallback handling for unsupported browsers
|
|
37
|
+
* - Automatic cleanup and error handling
|
|
38
|
+
*
|
|
39
|
+
* @example
|
|
40
|
+
* ```typescript
|
|
41
|
+
* // Get the fullscreen plugin
|
|
42
|
+
* const fullscreen = app.plugins.get<IFullScreenPlugin>('fullscreen');
|
|
43
|
+
*
|
|
44
|
+
* // Listen for fullscreen changes
|
|
45
|
+
* fullscreen.onFullScreenChange.connect((isFullscreen) => {
|
|
46
|
+
* console.log('Fullscreen state:', isFullscreen);
|
|
47
|
+
* updateUIForFullscreen(isFullscreen);
|
|
48
|
+
* });
|
|
49
|
+
*
|
|
50
|
+
* // Toggle fullscreen mode
|
|
51
|
+
* document.getElementById('fullscreenBtn').addEventListener('click', () => {
|
|
52
|
+
* if (fullscreen.canFullscreen) {
|
|
53
|
+
* fullscreen.toggleFullScreen();
|
|
54
|
+
* } else {
|
|
55
|
+
* console.warn('Fullscreen not supported');
|
|
56
|
+
* }
|
|
57
|
+
* });
|
|
58
|
+
*
|
|
59
|
+
* // Set custom element for fullscreen
|
|
60
|
+
* const gameContainer = document.getElementById('gameContainer');
|
|
61
|
+
* fullscreen.setFullScreenElement(gameContainer);
|
|
62
|
+
* fullscreen.setFullScreen(true);
|
|
63
|
+
* ```
|
|
64
|
+
*/
|
|
65
|
+
export declare class FullScreenPlugin extends Plugin implements IFullScreenPlugin {
|
|
66
|
+
/** Plugin identifier for framework registration */
|
|
67
|
+
readonly id = "fullscreen";
|
|
68
|
+
/**
|
|
69
|
+
* Signal emitted when fullscreen state changes.
|
|
70
|
+
* Provides the new fullscreen state as a boolean parameter.
|
|
71
|
+
*/
|
|
72
|
+
onFullScreenChange: Signal<(isFullscreen: boolean) => void>;
|
|
73
|
+
/** Internal fullscreen state tracking */
|
|
74
|
+
private _isFullScreen;
|
|
75
|
+
/** Internal reference to the fullscreen target element */
|
|
76
|
+
private _fullScreenElement;
|
|
77
|
+
/**
|
|
78
|
+
* Sets the fullscreen state and triggers the appropriate fullscreen operation.
|
|
79
|
+
* @param value - True to enter fullscreen, false to exit
|
|
80
|
+
*/
|
|
81
|
+
set isFullScreen(value: boolean);
|
|
82
|
+
/**
|
|
83
|
+
* Gets the current fullscreen state.
|
|
84
|
+
* @returns True if currently in fullscreen mode
|
|
85
|
+
*/
|
|
86
|
+
get isFullScreen(): boolean;
|
|
87
|
+
/**
|
|
88
|
+
* Sets the element to be used for fullscreen operations.
|
|
89
|
+
* @param value - The HTML element or Window object to use for fullscreen
|
|
90
|
+
*/
|
|
91
|
+
set fullScreenElement(value: HTMLElement | Window | null);
|
|
92
|
+
/**
|
|
93
|
+
* Gets the current fullscreen target element.
|
|
94
|
+
* @returns The element currently set for fullscreen operations
|
|
95
|
+
*/
|
|
96
|
+
get fullScreenElement(): HTMLElement | Window | null;
|
|
97
|
+
/**
|
|
98
|
+
* Creates the fullscreen plugin instance.
|
|
99
|
+
* Binds all methods to maintain proper context when used as event handlers.
|
|
100
|
+
*/
|
|
101
|
+
constructor();
|
|
102
|
+
/**
|
|
103
|
+
* Gets the application instance.
|
|
104
|
+
* @returns The singleton Application instance
|
|
105
|
+
*/
|
|
106
|
+
get app(): Application;
|
|
107
|
+
/**
|
|
108
|
+
* Initializes the fullscreen plugin by setting up browser event listeners.
|
|
109
|
+
* Registers listeners for all major browser fullscreen change events.
|
|
110
|
+
*
|
|
111
|
+
* @example
|
|
112
|
+
* ```typescript
|
|
113
|
+
* // Called automatically by the plugin system
|
|
114
|
+
* // Registers listeners for: fullscreenchange, webkitfullscreenchange,
|
|
115
|
+
* // mozfullscreenchange, msfullscreenchange
|
|
116
|
+
* ```
|
|
117
|
+
*/
|
|
118
|
+
initialize(): void;
|
|
119
|
+
/**
|
|
120
|
+
* Cleans up the plugin by removing all event listeners.
|
|
121
|
+
* Called automatically when the plugin is destroyed.
|
|
122
|
+
*/
|
|
123
|
+
destroy(): void;
|
|
124
|
+
/**
|
|
125
|
+
* Toggles between fullscreen and windowed mode.
|
|
126
|
+
*
|
|
127
|
+
* @example
|
|
128
|
+
* ```typescript
|
|
129
|
+
* // Toggle fullscreen on button click
|
|
130
|
+
* button.addEventListener('click', () => {
|
|
131
|
+
* fullscreenPlugin.toggleFullScreen();
|
|
132
|
+
* });
|
|
133
|
+
*
|
|
134
|
+
* // Keyboard shortcut for fullscreen
|
|
135
|
+
* document.addEventListener('keydown', (e) => {
|
|
136
|
+
* if (e.key === 'F11') {
|
|
137
|
+
* e.preventDefault();
|
|
138
|
+
* fullscreenPlugin.toggleFullScreen();
|
|
139
|
+
* }
|
|
140
|
+
* });
|
|
141
|
+
* ```
|
|
142
|
+
*/
|
|
143
|
+
toggleFullScreen(): void;
|
|
144
|
+
/**
|
|
145
|
+
* Sets the fullscreen state explicitly.
|
|
146
|
+
*
|
|
147
|
+
* @param value - True to enter fullscreen, false to exit fullscreen
|
|
148
|
+
*
|
|
149
|
+
* @example
|
|
150
|
+
* ```typescript
|
|
151
|
+
* // Enter fullscreen mode
|
|
152
|
+
* fullscreenPlugin.setFullScreen(true);
|
|
153
|
+
*
|
|
154
|
+
* // Exit fullscreen mode
|
|
155
|
+
* fullscreenPlugin.setFullScreen(false);
|
|
156
|
+
*
|
|
157
|
+
* // Conditional fullscreen based on game state
|
|
158
|
+
* if (gameState === 'playing') {
|
|
159
|
+
* fullscreenPlugin.setFullScreen(true);
|
|
160
|
+
* }
|
|
161
|
+
* ```
|
|
162
|
+
*/
|
|
163
|
+
setFullScreen(value: boolean): void;
|
|
164
|
+
/**
|
|
165
|
+
* Sets the element to be used for fullscreen operations.
|
|
166
|
+
* If no element is provided, uses the default application container.
|
|
167
|
+
*
|
|
168
|
+
* @param value - The HTML element or Window to use for fullscreen operations
|
|
169
|
+
*
|
|
170
|
+
* @example
|
|
171
|
+
* ```typescript
|
|
172
|
+
* // Use a specific game container
|
|
173
|
+
* const gameDiv = document.getElementById('game-container');
|
|
174
|
+
* fullscreenPlugin.setFullScreenElement(gameDiv);
|
|
175
|
+
*
|
|
176
|
+
* // Use the entire window
|
|
177
|
+
* fullscreenPlugin.setFullScreenElement(window);
|
|
178
|
+
*
|
|
179
|
+
* // Reset to default (application container)
|
|
180
|
+
* fullscreenPlugin.setFullScreenElement(null);
|
|
181
|
+
* ```
|
|
182
|
+
*/
|
|
183
|
+
setFullScreenElement(value: HTMLElement | Window | null): void;
|
|
184
|
+
/**
|
|
185
|
+
* Checks if the current environment and element support fullscreen functionality.
|
|
186
|
+
*
|
|
187
|
+
* @returns True if fullscreen is supported and available
|
|
188
|
+
*
|
|
189
|
+
* @example
|
|
190
|
+
* ```typescript
|
|
191
|
+
* if (fullscreenPlugin.canFullscreen) {
|
|
192
|
+
* // Show fullscreen button
|
|
193
|
+
* fullscreenButton.style.display = 'block';
|
|
194
|
+
* } else {
|
|
195
|
+
* // Hide fullscreen button or show alternative
|
|
196
|
+
* fullscreenButton.style.display = 'none';
|
|
197
|
+
* console.log('Fullscreen not supported on this device');
|
|
198
|
+
* }
|
|
199
|
+
* ```
|
|
200
|
+
*/
|
|
201
|
+
get canFullscreen(): boolean;
|
|
202
|
+
/**
|
|
203
|
+
* Checks if the document is currently in fullscreen mode.
|
|
204
|
+
* Uses browser-specific properties for cross-browser compatibility.
|
|
205
|
+
*
|
|
206
|
+
* @returns True if any element is currently in fullscreen mode
|
|
207
|
+
*/
|
|
208
|
+
get isFullscreen(): boolean;
|
|
209
|
+
/**
|
|
210
|
+
* Gets the core signals exposed by this plugin.
|
|
211
|
+
* @returns Array of signal names available on the plugin
|
|
212
|
+
* @protected
|
|
213
|
+
*/
|
|
214
|
+
protected getCoreSignals(): string[];
|
|
215
|
+
/**
|
|
216
|
+
* Gets the core functions exposed by this plugin.
|
|
217
|
+
* @returns Array of function names available on the plugin
|
|
218
|
+
* @protected
|
|
219
|
+
*/
|
|
220
|
+
protected getCoreFunctions(): string[];
|
|
221
|
+
/**
|
|
222
|
+
* Requests fullscreen mode using the appropriate browser API.
|
|
223
|
+
* Handles cross-browser compatibility and error cases.
|
|
224
|
+
* @private
|
|
225
|
+
*/
|
|
226
|
+
private _requestFullscreen;
|
|
227
|
+
/**
|
|
228
|
+
* Exits fullscreen mode using the appropriate browser API.
|
|
229
|
+
* Handles cross-browser compatibility for fullscreen exit.
|
|
230
|
+
* @private
|
|
231
|
+
*/
|
|
232
|
+
private _exitFullscreen;
|
|
233
|
+
/**
|
|
234
|
+
* Handles browser fullscreen change events.
|
|
235
|
+
* Updates internal state and emits the onFullScreenChange signal.
|
|
236
|
+
* @private
|
|
237
|
+
*/
|
|
238
|
+
private _onFullScreenChange;
|
|
239
|
+
}
|
|
240
|
+
//# sourceMappingURL=FullScreenPlugin.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FullScreenPlugin.d.ts","sourceRoot":"","sources":["../../src/plugins/FullScreenPlugin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AAEpC,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AACxC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAElC;;;GAGG;AACH,MAAM,WAAW,iBAAkB,SAAQ,OAAO;IAChD,+BAA+B;IAC/B,YAAY,EAAE,OAAO,CAAC;IACtB,uEAAuE;IACvE,iBAAiB,EAAE,WAAW,GAAG,MAAM,GAAG,IAAI,CAAC;IAC/C,mDAAmD;IACnD,kBAAkB,EAAE,MAAM,CAAC,CAAC,YAAY,EAAE,OAAO,KAAK,IAAI,CAAC,CAAC;IAC5D,mDAAmD;IACnD,gBAAgB,EAAE,MAAM,IAAI,CAAC;IAC7B,2CAA2C;IAC3C,aAAa,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;IACxC,4DAA4D;IAC5D,oBAAoB,EAAE,CAAC,OAAO,EAAE,WAAW,GAAG,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;IACrE,wEAAwE;IACxE,QAAQ,CAAC,aAAa,EAAE,OAAO,CAAC;CACjC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwCG;AACH,qBAAa,gBAAiB,SAAQ,MAAO,YAAW,iBAAiB;IACvE,mDAAmD;IACnD,SAAgB,EAAE,gBAAgB;IAElC;;;OAGG;IACI,kBAAkB,EAAE,MAAM,CAAC,CAAC,YAAY,EAAE,OAAO,KAAK,IAAI,CAAC,CAAiD;IAEnH,yCAAyC;IACzC,OAAO,CAAC,aAAa,CAAkB;IACvC,0DAA0D;IAC1D,OAAO,CAAC,kBAAkB,CAAqC;IAE/D;;;OAGG;IACH,IAAI,YAAY,CAAC,KAAK,EAAE,OAAO,EAG9B;IAED;;;OAGG;IACH,IAAI,YAAY,IAAI,OAAO,CAE1B;IAED;;;OAGG;IACH,IAAI,iBAAiB,CAAC,KAAK,EAAE,WAAW,GAAG,MAAM,GAAG,IAAI,EAEvD;IAED;;;OAGG;IACH,IAAI,iBAAiB,IAAI,WAAW,GAAG,MAAM,GAAG,IAAI,CAEnD;IAED;;;OAGG;;IAMH;;;OAGG;IACH,IAAI,GAAG,IAAI,WAAW,CAErB;IAED;;;;;;;;;;OAUG;IACI,UAAU,IAAI,IAAI;IAQzB;;;OAGG;IACI,OAAO;IAQd;;;;;;;;;;;;;;;;;;OAkBG;IACI,gBAAgB;IAIvB;;;;;;;;;;;;;;;;;;OAkBG;IACI,aAAa,CAAC,KAAK,EAAE,OAAO;IASnC;;;;;;;;;;;;;;;;;;OAkBG;IACI,oBAAoB,CAAC,KAAK,EAAE,WAAW,GAAG,MAAM,GAAG,IAAI;IAO9D;;;;;;;;;;;;;;;;OAgBG;IACH,IAAW,aAAa,IAAI,OAAO,CAWlC;IAED;;;;;OAKG;IACH,IAAW,YAAY,IAAI,OAAO,CAOjC;IAED;;;;OAIG;IACH,SAAS,CAAC,cAAc,IAAI,MAAM,EAAE;IAIpC;;;;OAIG;IACH,SAAS,CAAC,gBAAgB,IAAI,MAAM,EAAE;IAItC;;;;OAIG;IACH,OAAO,CAAC,kBAAkB;IAwB1B;;;;OAIG;IACH,OAAO,CAAC,eAAe;IAYvB;;;;OAIG;IACH,OAAO,CAAC,mBAAmB;CAG5B"}
|