@caperjs/core 0.2.1 → 0.2.3
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/build/index.mjs +18 -1
- package/build/plugins/pwa.mjs +114 -8
- package/build/plugins/viewport.mjs +52 -0
- package/lib/{CaptionsPlugin-DKhbmJvH.js → CaptionsPlugin-WPAcfAkx.js} +13 -12
- package/lib/CaptionsPlugin-WPAcfAkx.js.map +1 -0
- package/lib/{DataAdapter-BZFTkFQ4.js → DataAdapter-DS-twowe.js} +11 -11
- package/lib/{DataAdapter-BZFTkFQ4.js.map → DataAdapter-DS-twowe.js.map} +1 -1
- package/lib/{DebugRenderer-C7X-nlXE.js → DebugRenderer-D1ryrRYx.js} +2 -2
- package/lib/{DebugRenderer-C7X-nlXE.js.map → DebugRenderer-D1ryrRYx.js.map} +1 -1
- package/lib/{DevToolsPlugin-P-atJ-5U.js → DevToolsPlugin-DH7zX7HU.js} +2 -2
- package/lib/{DevToolsPlugin-P-atJ-5U.js.map → DevToolsPlugin-DH7zX7HU.js.map} +1 -1
- package/lib/{GSAPPlugin-CeH9275z.js → GSAPPlugin-BBtRjUqe.js} +2 -2
- package/lib/{GSAPPlugin-CeH9275z.js.map → GSAPPlugin-BBtRjUqe.js.map} +1 -1
- package/lib/{LayoutPlugin-iZ3k6RsK.js → LayoutPlugin-Co6vcoV4.js} +4 -4
- package/lib/{LayoutPlugin-iZ3k6RsK.js.map → LayoutPlugin-Co6vcoV4.js.map} +1 -1
- package/lib/{SpinePlugin-BWiavCpO.js → SpinePlugin-uN641Hmk.js} +2 -2
- package/lib/{SpinePlugin-BWiavCpO.js.map → SpinePlugin-uN641Hmk.js.map} +1 -1
- package/lib/{StatsPlugin-CBpzDJL0.js → StatsPlugin-vZQRm6wh.js} +4 -4
- package/lib/{StatsPlugin-CBpzDJL0.js.map → StatsPlugin-vZQRm6wh.js.map} +1 -1
- package/lib/{VoiceOverPlugin-YaiKJtJ6.js → VoiceOverPlugin-KlZdGj1G.js} +32 -32
- package/lib/{VoiceOverPlugin-YaiKJtJ6.js.map → VoiceOverPlugin-KlZdGj1G.js.map} +1 -1
- package/lib/caper.mjs +2107 -353
- package/lib/caper.mjs.map +1 -1
- package/lib/core/Application.d.ts +37 -2
- package/lib/core/Application.d.ts.map +1 -1
- package/lib/core/create.d.ts +28 -1
- package/lib/core/create.d.ts.map +1 -1
- package/lib/core/index.d.ts +1 -1
- package/lib/core/index.d.ts.map +1 -1
- package/lib/core/interfaces/IApplicationOptions.d.ts +1 -1
- package/lib/core/interfaces/IApplicationOptions.d.ts.map +1 -1
- package/lib/core/interfaces/ICoreFunctions.d.ts +1 -0
- package/lib/core/interfaces/ICoreFunctions.d.ts.map +1 -1
- package/lib/display/AnimatedSprite.d.ts +1 -1
- package/lib/display/AnimatedSprite.d.ts.map +1 -1
- package/lib/display/Container.d.ts.map +1 -1
- package/lib/display/SpineAnimation.d.ts +1 -1
- package/lib/display/SpineAnimation.d.ts.map +1 -1
- package/lib/importOrder.containerFirst.test.d.ts +2 -0
- package/lib/importOrder.containerFirst.test.d.ts.map +1 -0
- package/lib/importOrder.displayFirst.test.d.ts +2 -0
- package/lib/importOrder.displayFirst.test.d.ts.map +1 -0
- package/lib/importOrder.mixinsFirst.test.d.ts +2 -0
- package/lib/importOrder.mixinsFirst.test.d.ts.map +1 -0
- package/lib/importOrder.sceneFirst.test.d.ts +2 -0
- package/lib/importOrder.sceneFirst.test.d.ts.map +1 -0
- package/lib/importOrder.toastFirst.test.d.ts +2 -0
- package/lib/importOrder.toastFirst.test.d.ts.map +1 -0
- package/lib/importOrder.uiFirst.test.d.ts +2 -0
- package/lib/importOrder.uiFirst.test.d.ts.map +1 -0
- package/lib/mixins/factory/Factory.d.ts +1 -1
- package/lib/mixins/factory/Factory.d.ts.map +1 -1
- package/lib/mixins/factory/Factory.test.d.ts +1 -0
- package/lib/mixins/factory/Factory.test.d.ts.map +1 -0
- package/lib/mixins/factory/const.d.ts +9 -2
- package/lib/mixins/factory/const.d.ts.map +1 -1
- package/lib/mixins/factory/defaults.d.ts +5 -0
- package/lib/mixins/factory/defaults.d.ts.map +1 -0
- package/lib/mixins/factory/methods.d.ts +1 -1
- package/lib/mixins/factory/methods.d.ts.map +1 -1
- package/lib/mixins/factory/props.d.ts +4 -2
- package/lib/mixins/factory/props.d.ts.map +1 -1
- package/lib/plugins/PopupManagerPlugin.d.ts +1 -1
- package/lib/plugins/PopupManagerPlugin.d.ts.map +1 -1
- package/lib/plugins/ResizerPlugin.d.ts +29 -0
- package/lib/plugins/ResizerPlugin.d.ts.map +1 -1
- package/lib/plugins/ResizerPlugin.test.d.ts +2 -0
- package/lib/plugins/ResizerPlugin.test.d.ts.map +1 -0
- package/lib/plugins/WebEventsPlugin.d.ts +5 -0
- package/lib/plugins/WebEventsPlugin.d.ts.map +1 -1
- package/lib/plugins/WebEventsPlugin.test.d.ts +2 -0
- package/lib/plugins/WebEventsPlugin.test.d.ts.map +1 -0
- package/lib/plugins/captions/CaptionsRenderer.d.ts +1 -1
- package/lib/plugins/captions/CaptionsRenderer.d.ts.map +1 -1
- package/lib/plugins/i18nPlugin.d.ts +29 -3
- package/lib/plugins/i18nPlugin.d.ts.map +1 -1
- package/lib/plugins/i18nPlugin.test.d.ts +2 -0
- package/lib/plugins/i18nPlugin.test.d.ts.map +1 -0
- package/lib/plugins/input/touch/VirtualControls.d.ts.map +1 -1
- package/lib/plugins/spine/pixi-spine/require-shim.d.ts +0 -1
- package/lib/plugins/spine/pixi-spine/require-shim.d.ts.map +1 -1
- package/lib/{registries-qQmLeN0b.js → registries-BLrxALZ0.js} +1138 -2800
- package/lib/registries-BLrxALZ0.js.map +1 -0
- package/lib/ui/Button.d.ts +1 -1
- package/lib/ui/Button.d.ts.map +1 -1
- package/lib/ui/FlexContainer.d.ts +1 -1
- package/lib/ui/FlexContainer.d.ts.map +1 -1
- package/lib/ui/Input.d.ts +2 -2
- package/lib/ui/Input.d.ts.map +1 -1
- package/lib/ui/Joystick.d.ts +1 -1
- package/lib/ui/Joystick.d.ts.map +1 -1
- package/lib/ui/Toast.d.ts +1 -1
- package/lib/ui/Toast.d.ts.map +1 -1
- package/lib/ui/UICanvas.d.ts +11 -1
- package/lib/ui/UICanvas.d.ts.map +1 -1
- package/lib/ui/UICanvas.test.d.ts +2 -0
- package/lib/ui/UICanvas.test.d.ts.map +1 -0
- package/lib/utils/types.d.ts +1 -2
- package/lib/utils/types.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/core/Application.ts +66 -2
- package/src/core/create.ts +30 -1
- package/src/core/index.ts +1 -1
- package/src/core/interfaces/IApplicationOptions.ts +1 -1
- package/src/core/interfaces/ICoreFunctions.ts +1 -0
- package/src/display/AnimatedSprite.ts +2 -1
- package/src/display/Container.ts +3 -1
- package/src/display/SpineAnimation.ts +3 -2
- package/src/importOrder.containerFirst.test.ts +32 -0
- package/src/importOrder.displayFirst.test.ts +19 -0
- package/src/importOrder.mixinsFirst.test.ts +18 -0
- package/src/importOrder.sceneFirst.test.ts +21 -0
- package/src/importOrder.toastFirst.test.ts +20 -0
- package/src/importOrder.uiFirst.test.ts +24 -0
- package/src/mixins/factory/Factory.test.ts +22 -0
- package/src/mixins/factory/Factory.ts +9 -2
- package/src/mixins/factory/const.ts +18 -11
- package/src/mixins/factory/defaults.ts +28 -0
- package/src/mixins/factory/methods.ts +1 -1
- package/src/mixins/factory/props.ts +5 -3
- package/src/plugins/LookupPlugin.ts +1 -1
- package/src/plugins/PopupManagerPlugin.ts +1 -1
- package/src/plugins/ResizerPlugin.test.ts +84 -0
- package/src/plugins/ResizerPlugin.ts +59 -1
- package/src/plugins/WebEventsPlugin.test.ts +75 -0
- package/src/plugins/WebEventsPlugin.ts +15 -0
- package/src/plugins/captions/CaptionsRenderer.ts +1 -1
- package/src/plugins/i18nPlugin.test.ts +124 -0
- package/src/plugins/i18nPlugin.ts +57 -18
- package/src/plugins/input/keyboard/KeyboardContols.ts +1 -1
- package/src/plugins/input/touch/VirtualControls.ts +2 -2
- package/src/plugins/spine/pixi-spine/require-shim.ts +3 -1
- package/src/ui/Button.ts +5 -1
- package/src/ui/FlexContainer.ts +3 -2
- package/src/ui/Input.ts +5 -2
- package/src/ui/Joystick.ts +1 -1
- package/src/ui/Toast.ts +2 -1
- package/src/ui/Toaster.ts +1 -1
- package/src/ui/UICanvas.test.ts +35 -0
- package/src/ui/UICanvas.ts +46 -8
- package/src/utils/types.ts +1 -1
- package/src/version.ts +1 -1
- package/lib/CaptionsPlugin-DKhbmJvH.js.map +0 -1
- package/lib/registries-qQmLeN0b.js.map +0 -1
package/lib/ui/Button.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { BitmapText, Cursor, DestroyOptions, FederatedEvent, FederatedPointerEvent, HTMLText, Sprite, Text } from 'pixi.js';
|
|
2
2
|
import { LayoutOptions } from '@pixi/layout';
|
|
3
3
|
import { IApplication } from '../core';
|
|
4
|
-
import { HTMLTextProps, TextProps } from '../mixins';
|
|
4
|
+
import { HTMLTextProps, TextProps } from '../mixins/factory/props';
|
|
5
5
|
import { Signal } from '../signals';
|
|
6
6
|
import { AudioAsset, SpritesheetAsset, TextureAsset } from '../utils';
|
|
7
7
|
export type ButtonCallback = (() => void) | (() => Promise<void>);
|
package/lib/ui/Button.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Button.d.ts","sourceRoot":"","sources":["../../src/ui/Button.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,UAAU,EACV,MAAM,EACN,cAAc,EACd,cAAc,EACd,qBAAqB,EACrB,QAAQ,EACR,MAAM,EACN,IAAI,EACL,MAAM,SAAS,CAAC;AAEjB,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"Button.d.ts","sourceRoot":"","sources":["../../src/ui/Button.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { LayoutOptions, NumberValue } from '@pixi/layout';
|
|
2
2
|
import { BitmapText, Graphics, Container as PIXIContainer, Text } from 'pixi.js';
|
|
3
|
-
import { Container } from '../display';
|
|
3
|
+
import { Container } from '../display/Container';
|
|
4
4
|
import { Signal } from '../signals';
|
|
5
5
|
import { AppTypeOverrides, ContainerLike } from '../utils';
|
|
6
6
|
declare const _FlexContainer: (new () => import('..').IFactory<{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FlexContainer.d.ts","sourceRoot":"","sources":["../../src/ui/FlexContainer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC/D,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,SAAS,IAAI,aAAa,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAEjF,OAAO,EAAE,SAAS,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"FlexContainer.d.ts","sourceRoot":"","sources":["../../src/ui/FlexContainer.ts"],"names":[],"mappings":"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"}
|
package/lib/ui/Input.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Bounds, FederatedEvent, FederatedPointerEvent, Graphics, Container as PIXIContainer, Rectangle, Sprite, Text } from 'pixi.js';
|
|
2
|
-
import { TextProps } from '../mixins';
|
|
2
|
+
import { TextProps } from '../mixins/factory/props';
|
|
3
3
|
import { EaseString, Padding, PointLike } from '../utils';
|
|
4
|
-
import { Container } from '../display';
|
|
4
|
+
import { Container } from '../display/Container';
|
|
5
5
|
import { Signal } from '../signals';
|
|
6
6
|
/**
|
|
7
7
|
* Options for styling the input background
|
package/lib/ui/Input.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Input.d.ts","sourceRoot":"","sources":["../../src/ui/Input.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,MAAM,EAEN,cAAc,EACd,qBAAqB,EACrB,QAAQ,EACR,SAAS,IAAI,aAAa,EAC1B,SAAS,EACT,MAAM,EACN,IAAI,EAEL,MAAM,SAAS,CAAC;AAEjB,OAAO,
|
|
1
|
+
{"version":3,"file":"Input.d.ts","sourceRoot":"","sources":["../../src/ui/Input.ts"],"names":[],"mappings":"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"}
|
package/lib/ui/Joystick.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { DestroyOptions, FederatedPointerEvent, Graphics, Point, Sprite } from 'pixi.js';
|
|
2
|
-
import { Container } from '../display';
|
|
2
|
+
import { Container } from '../display/Container';
|
|
3
3
|
import { JoystickDirection } from '../plugins';
|
|
4
4
|
import { Signal } from '../signals';
|
|
5
5
|
export interface IJoystick {
|
package/lib/ui/Joystick.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Joystick.d.ts","sourceRoot":"","sources":["../../src/ui/Joystick.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAE,cAAc,EAAE,qBAAqB,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AACzF,OAAO,EAAE,SAAS,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"Joystick.d.ts","sourceRoot":"","sources":["../../src/ui/Joystick.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAE,cAAc,EAAE,qBAAqB,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AACzF,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAC/C,OAAO,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AAEpC,MAAM,WAAW,SAAS;IACxB,QAAQ,EAAE,MAAM,CAAC,CAAC,MAAM,EAAE,oBAAoB,KAAK,IAAI,CAAC,CAAC;IACzD,OAAO,EAAE,MAAM,CAAC,MAAM,IAAI,CAAC,CAAC;IAC5B,KAAK,EAAE,MAAM,CAAC,MAAM,IAAI,CAAC,CAAC;IAC1B,SAAS,EAAE,MAAM,CAAC,MAAM,IAAI,CAAC,CAAC;IAC9B,QAAQ,EAAE,gBAAgB,CAAC;IAC3B,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,GAAG,QAAQ,CAAC;IACzB,KAAK,EAAE,MAAM,GAAG,QAAQ,CAAC;IACzB,QAAQ,EAAE,OAAO,CAAC;IAClB,SAAS,EAAE,KAAK,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,aAAa,EAAE,KAAK,CAAC;IACrB,SAAS,EAAE,iBAAiB,CAAC;CAC9B;AAED,MAAM,WAAW,oBAAoB;IACnC,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,iBAAiB,CAAC;IAC7B,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,gBAAgB;IAC/B,KAAK,CAAC,EAAE,MAAM,GAAG,QAAQ,CAAC;IAC1B,KAAK,CAAC,EAAE,MAAM,GAAG,QAAQ,CAAC;IAC1B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,qBAAa,QAAS,SAAQ,SAAU,YAAW,SAAS;IAC1D,QAAQ,kBAAuB,oBAAoB,KAAK,IAAI,EAAI;IAChE,OAAO,eAAoB,IAAI,EAAI;IACnC,KAAK,eAAoB,IAAI,EAAI;IACjC,SAAS,eAAoB,IAAI,EAAI;IACrC,QAAQ,EAAE,gBAAgB,CAAC;IAC3B,WAAW,EAAE,MAAM,CAAK;IACxB,WAAW,EAAE,MAAM,CAAK;IAExB,KAAK,EAAG,MAAM,GAAG,QAAQ,CAAC;IAC1B,KAAK,EAAG,MAAM,GAAG,QAAQ,CAAC;IAE1B,iBAAiB,SAAO;IAExB,QAAQ,EAAE,OAAO,CAAS;IAC1B,SAAS,EAAE,KAAK,CAAe;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,aAAa,EAAE,KAAK,CAAC;IACrB,SAAS,EAAE,iBAAiB,CAA0B;IACtD,SAAS,EAAE,MAAM,CAAC;IAElB,OAAO,CAAC,UAAU,CAAC,CAAS;gBAEhB,IAAI,EAAE,OAAO,CAAC,gBAAgB,CAAC;IA8B3C,UAAU;IAwBV,cAAc,CAAC,CAAC,EAAE,qBAAqB;IAoGvC,OAAO,CAAC,OAAO,CAAC,EAAE,cAAc;IAUhC,SAAS,CAAC,eAAe,CAAC,CAAC,EAAE,qBAAqB;IAWlD,SAAS,CAAC,aAAa,CAAC,CAAC,EAAE,qBAAqB,GAAG,YAAY;IAY/D,SAAS,CAAC,UAAU;IAUpB,SAAS,CAAC,QAAQ,CAAC,WAAW,EAAE,KAAK;IAMrC,SAAS,CAAC,YAAY,CAAC,MAAM,EAAE,KAAK;CAoBrC"}
|
package/lib/ui/Toast.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Graphics, Text } from 'pixi.js';
|
|
2
2
|
import { Container } from '../display/Container';
|
|
3
|
-
import { TextStyle } from '../mixins';
|
|
3
|
+
import { TextStyle } from '../mixins/factory/props';
|
|
4
4
|
import { Signal } from '../signals';
|
|
5
5
|
import { Button } from './Button';
|
|
6
6
|
import { Toaster } from './Toaster';
|
package/lib/ui/Toast.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Toast.d.ts","sourceRoot":"","sources":["../../src/ui/Toast.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AACzC,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"Toast.d.ts","sourceRoot":"","sources":["../../src/ui/Toast.ts"],"names":[],"mappings":"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"}
|
package/lib/ui/UICanvas.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { LayoutOptions } from '@pixi/layout';
|
|
2
2
|
import { ContainerChild, Graphics, RenderLayer, Container as PIXIContainer, Text } from 'pixi.js';
|
|
3
|
-
import { Container } from '../display';
|
|
3
|
+
import { Container } from '../display/Container';
|
|
4
4
|
import { AppTypeOverrides, Padding, PointLike, Size, SizeLike } from '../utils';
|
|
5
5
|
import { FlexContainer } from './FlexContainer';
|
|
6
6
|
export type UICanvasEdge = 'top right' | 'top left' | 'top center' | 'top' | 'bottom right' | 'bottom left' | 'bottom center' | 'bottom' | 'left top' | 'left bottom' | 'left center' | 'left' | 'right top' | 'right bottom' | 'right center' | 'right' | 'center';
|
|
@@ -29,6 +29,7 @@ export type UICanvasConfig = {
|
|
|
29
29
|
padding: Padding;
|
|
30
30
|
size: Size;
|
|
31
31
|
useAppSize: boolean;
|
|
32
|
+
useSafeArea: boolean;
|
|
32
33
|
layout?: Omit<LayoutOptions, 'target'> | null | boolean;
|
|
33
34
|
autoLayoutChildren?: boolean;
|
|
34
35
|
};
|
|
@@ -38,9 +39,16 @@ export type UICanvasProps = {
|
|
|
38
39
|
padding: Partial<Padding> | PointLike;
|
|
39
40
|
size?: SizeLike;
|
|
40
41
|
useAppSize?: boolean;
|
|
42
|
+
useSafeArea?: boolean;
|
|
41
43
|
layout?: Omit<LayoutOptions, 'target'> | null | boolean;
|
|
42
44
|
autoLayoutChildren?: boolean;
|
|
43
45
|
};
|
|
46
|
+
/**
|
|
47
|
+
* The padding the canvas actually lays out with: the configured padding plus the
|
|
48
|
+
* device's safe-area insets. Kept separate from `config.padding` so it can be
|
|
49
|
+
* re-derived on every resize without compounding.
|
|
50
|
+
*/
|
|
51
|
+
export declare function computeEffectivePadding(padding: Padding, safeArea: Padding): Padding;
|
|
44
52
|
declare const _UICanvas: (new () => import('..').IFactory<{
|
|
45
53
|
existing: <TEntity>(entity: TEntity, props?: Partial<import('..').ExistingProps>) => TEntity;
|
|
46
54
|
container: (props?: Partial<import('..').ContainerProps> | undefined) => Container;
|
|
@@ -89,6 +97,8 @@ export declare class UICanvas extends _UICanvas {
|
|
|
89
97
|
destroy(): void;
|
|
90
98
|
set size(value: SizeLike);
|
|
91
99
|
set padding(value: Partial<Padding> | PointLike);
|
|
100
|
+
/** Writes the effective padding (configured padding + safe-area insets) into the layout. */
|
|
101
|
+
private _applyPadding;
|
|
92
102
|
private static isFlexContainer;
|
|
93
103
|
/**
|
|
94
104
|
* Removes all the children from the container
|
package/lib/ui/UICanvas.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"UICanvas.d.ts","sourceRoot":"","sources":["../../src/ui/UICanvas.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,EAAE,cAAc,EAAE,QAAQ,EAAE,WAAW,EAAE,SAAS,IAAI,aAAa,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAElG,OAAO,EAAE,SAAS,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"UICanvas.d.ts","sourceRoot":"","sources":["../../src/ui/UICanvas.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"UICanvas.test.d.ts","sourceRoot":"","sources":["../../src/ui/UICanvas.test.ts"],"names":[],"mappings":""}
|
package/lib/utils/types.d.ts
CHANGED
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { AssetInitOptions, AssetsManifest, AssetsPreferences, Texture, UnresolvedAsset, Point } from 'pixi.js';
|
|
2
|
-
import { Scene } from '../display/Scene';
|
|
3
|
-
import { SceneAssets } from '../display';
|
|
2
|
+
import { Scene, SceneAssets } from '../display/Scene';
|
|
4
3
|
import { FilterBitmapFontNames, FilterCleanAssetNames, FilterSpineAssetNames } from './typefilters';
|
|
5
4
|
/**
|
|
6
5
|
* A generic constructor type.
|
package/lib/utils/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/utils/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,cAAc,EAAE,iBAAiB,EAAE,OAAO,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAC7G,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,WAAW,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/utils/types.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
package/src/core/Application.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { gsap } from 'gsap';
|
|
2
2
|
import type {
|
|
3
3
|
AppConfig,
|
|
4
|
+
CaperPWA,
|
|
4
5
|
IApplication,
|
|
5
6
|
IApplicationOptions,
|
|
6
7
|
ICaperAutomation,
|
|
@@ -50,7 +51,12 @@ import type {
|
|
|
50
51
|
import { bindAllMethods, deepMerge, getDynamicModuleFromImportListItem, isDev, isPromise, Logger } from '../utils';
|
|
51
52
|
import { triggerViteError } from '../utils/vite';
|
|
52
53
|
|
|
53
|
-
|
|
54
|
+
// Type-only — the value is read lazily in the `make` getter via the import-free
|
|
55
|
+
// registration slot, so Application never pulls the factory table (and with it
|
|
56
|
+
// every ui/display class) into its own module graph. See mixins/factory/defaults.
|
|
57
|
+
import type { defaultFactoryMethods } from '../mixins/factory/const';
|
|
58
|
+
import { getDefaultFactoryMethods } from '../mixins/factory/defaults';
|
|
59
|
+
import { createFactoryMethods } from '../mixins/factory/methods';
|
|
54
60
|
import type { IActionsPlugin } from '../plugins/actions';
|
|
55
61
|
import type { IVoiceOverPlugin } from '../plugins/audio/VoiceOverPlugin';
|
|
56
62
|
import type { ICaptionsPlugin } from '../plugins/captions';
|
|
@@ -166,6 +172,24 @@ export class Application extends PIXIPApplication implements IApplication {
|
|
|
166
172
|
public onPluginError = new Signal<
|
|
167
173
|
(detail: { id: string; phase: 'initialize' | 'postInitialize'; error: unknown }) => void
|
|
168
174
|
>();
|
|
175
|
+
/**
|
|
176
|
+
* Emitted when the browser offers its PWA install prompt, so a game can show its
|
|
177
|
+
* own in-pixi install UI.
|
|
178
|
+
*
|
|
179
|
+
* The browser usually fires this before the first scene exists, and signals do not
|
|
180
|
+
* replay — so UI that offers an install button must ALSO check `app.pwa?.canInstall`
|
|
181
|
+
* when it mounts. And `app.pwa.promptInstall()` only works from inside a user
|
|
182
|
+
* gesture, i.e. a button's click/tap handler, never a timer or a game event.
|
|
183
|
+
*/
|
|
184
|
+
public onPwaInstallAvailable = new Signal<() => void>();
|
|
185
|
+
/**
|
|
186
|
+
* Emitted when a new build is waiting to take over. Call `app.pwa.applyUpdate()`
|
|
187
|
+
* to activate it — the page reloads once the new worker takes control.
|
|
188
|
+
*
|
|
189
|
+
* Use `pwa: { update: 'manual' }` in the vite preset to suppress caper's default
|
|
190
|
+
* DOM banner and present this in-game instead.
|
|
191
|
+
*/
|
|
192
|
+
public onPwaUpdateAvailable = new Signal<() => void>();
|
|
169
193
|
// plugins
|
|
170
194
|
public readonly _plugins: Map<string, IPlugin> = new Map();
|
|
171
195
|
// default plugins
|
|
@@ -192,7 +216,11 @@ export class Application extends PIXIPApplication implements IApplication {
|
|
|
192
216
|
|
|
193
217
|
get make(): typeof defaultFactoryMethods {
|
|
194
218
|
if (!this._makeFactory) {
|
|
195
|
-
this._makeFactory = createFactoryMethods(
|
|
219
|
+
this._makeFactory = createFactoryMethods(
|
|
220
|
+
getDefaultFactoryMethods() as typeof defaultFactoryMethods,
|
|
221
|
+
this,
|
|
222
|
+
false,
|
|
223
|
+
);
|
|
196
224
|
}
|
|
197
225
|
return this._makeFactory;
|
|
198
226
|
}
|
|
@@ -201,6 +229,14 @@ export class Application extends PIXIPApplication implements IApplication {
|
|
|
201
229
|
return this._env;
|
|
202
230
|
}
|
|
203
231
|
|
|
232
|
+
/**
|
|
233
|
+
* The `Caper.pwa` facade, or undefined when the app was built without the vite
|
|
234
|
+
* preset's `pwa` option. See {@link CaperPWA} for the install/update timing rules.
|
|
235
|
+
*/
|
|
236
|
+
get pwa(): CaperPWA | undefined {
|
|
237
|
+
return (globalThis as any).Caper?.pwa;
|
|
238
|
+
}
|
|
239
|
+
|
|
204
240
|
get debugContainer(): PIXIContainer {
|
|
205
241
|
if (!this._debugContainer) {
|
|
206
242
|
this._debugContainer = new PIXIContainer();
|
|
@@ -499,6 +535,10 @@ export class Application extends PIXIPApplication implements IApplication {
|
|
|
499
535
|
return this.resizer.size;
|
|
500
536
|
}
|
|
501
537
|
|
|
538
|
+
get safeArea() {
|
|
539
|
+
return this.resizer.safeArea;
|
|
540
|
+
}
|
|
541
|
+
|
|
502
542
|
public get popups(): IPopupManagerPlugin {
|
|
503
543
|
if (!this._popupManager) {
|
|
504
544
|
this._popupManager = this.getPlugin<IPopupManagerPlugin>('popups');
|
|
@@ -749,6 +789,8 @@ export class Application extends PIXIPApplication implements IApplication {
|
|
|
749
789
|
}
|
|
750
790
|
}
|
|
751
791
|
|
|
792
|
+
this._connectPwaSignals();
|
|
793
|
+
|
|
752
794
|
this.webEvents.onVisibilityChanged.connect((visible) => {
|
|
753
795
|
if (visible) {
|
|
754
796
|
this.audio.restore();
|
|
@@ -764,6 +806,28 @@ export class Application extends PIXIPApplication implements IApplication {
|
|
|
764
806
|
await this.postInitialize();
|
|
765
807
|
}
|
|
766
808
|
|
|
809
|
+
/**
|
|
810
|
+
* Republishes the `Caper.pwa` callbacks as app signals. The existing handlers are
|
|
811
|
+
* wrapped rather than replaced — clobbering them would cost `update: 'prompt'` its
|
|
812
|
+
* default banner, and an app that assigned an early handler its handler.
|
|
813
|
+
*/
|
|
814
|
+
private _connectPwaSignals(): void {
|
|
815
|
+
const pwa = this.pwa;
|
|
816
|
+
if (!pwa) return;
|
|
817
|
+
|
|
818
|
+
const onCanInstall = pwa.onCanInstall;
|
|
819
|
+
pwa.onCanInstall = () => {
|
|
820
|
+
onCanInstall?.();
|
|
821
|
+
this.onPwaInstallAvailable.emit();
|
|
822
|
+
};
|
|
823
|
+
|
|
824
|
+
const onNeedRefresh = pwa.onNeedRefresh;
|
|
825
|
+
pwa.onNeedRefresh = () => {
|
|
826
|
+
onNeedRefresh?.();
|
|
827
|
+
this.onPwaUpdateAvailable.emit();
|
|
828
|
+
};
|
|
829
|
+
}
|
|
830
|
+
|
|
767
831
|
/**
|
|
768
832
|
* User-overridable post-initialization hook, invoked after all framework wiring is
|
|
769
833
|
* complete. Override to perform app setup that depends on a fully initialized
|
package/src/core/create.ts
CHANGED
|
@@ -11,13 +11,42 @@ import { AppConfig } from './types';
|
|
|
11
11
|
|
|
12
12
|
type App = AppTypeOverrides['App'];
|
|
13
13
|
|
|
14
|
-
|
|
14
|
+
/**
|
|
15
|
+
* The `Caper.pwa` facade installed by the vite preset's runtime snippet. Reachable
|
|
16
|
+
* from game code as `app.pwa`, which is `undefined` when the app was built without
|
|
17
|
+
* the `pwa` option.
|
|
18
|
+
*
|
|
19
|
+
* Two timing rules matter:
|
|
20
|
+
*
|
|
21
|
+
* - `beforeinstallprompt` often fires before any scene exists, and signals do not
|
|
22
|
+
* replay. UI that offers an install button must check `app.pwa?.canInstall` when
|
|
23
|
+
* it mounts AND connect to `app.onPwaInstallAvailable` for the later case.
|
|
24
|
+
* - Browsers only honour {@link CaperPWA.promptInstall} from inside a user gesture.
|
|
25
|
+
* Call it from a click/tap handler — an overlay with an Install button. Calling it
|
|
26
|
+
* from a timer, a scene transition, or a game-over event is silently ignored.
|
|
27
|
+
*/
|
|
28
|
+
export interface CaperPWA {
|
|
15
29
|
readonly info: any;
|
|
16
30
|
register: () => void;
|
|
17
31
|
onRegisteredSW: (swScriptUrl: string) => void;
|
|
18
32
|
offlineReady: () => void;
|
|
33
|
+
/** Called when a new build is waiting. Defaults to caper's update banner; assign to replace it. */
|
|
19
34
|
onNeedRefresh?: () => void;
|
|
20
35
|
onRegisterError?: (error: any) => void;
|
|
36
|
+
|
|
37
|
+
/** True once a new build is waiting to take over. */
|
|
38
|
+
updateAvailable: boolean;
|
|
39
|
+
/** Activate the waiting worker; the page reloads once it takes control. */
|
|
40
|
+
applyUpdate: () => void;
|
|
41
|
+
|
|
42
|
+
/** True once the browser has offered an install prompt to stash. */
|
|
43
|
+
canInstall: boolean;
|
|
44
|
+
/** Called when the browser offers the install prompt. */
|
|
45
|
+
onCanInstall?: () => void;
|
|
46
|
+
/** Called after the app is installed. */
|
|
47
|
+
onInstalled?: () => void;
|
|
48
|
+
/** Show the stashed install prompt. Resolves null when there is nothing to show. */
|
|
49
|
+
promptInstall: () => Promise<'accepted' | 'dismissed' | null>;
|
|
21
50
|
}
|
|
22
51
|
interface CaperGlobal {
|
|
23
52
|
APP_NAME: string;
|
package/src/core/index.ts
CHANGED
|
@@ -19,7 +19,7 @@ import type {
|
|
|
19
19
|
|
|
20
20
|
import type { ApplicationOptions, TextDropShadow } from 'pixi.js';
|
|
21
21
|
import type { IScene, ISceneTransition, SceneTransition } from '../../display';
|
|
22
|
-
import { TextStyle } from '../../mixins';
|
|
22
|
+
import type { TextStyle } from '../../mixins/factory/props';
|
|
23
23
|
import type { CaptionsOptions } from '../../plugins/captions';
|
|
24
24
|
import { GSAPPluginOptions } from '../../plugins/GSAPPlugin';
|
|
25
25
|
import type { IDataAdapterOptions } from '../../plugins/DataAdapter';
|
|
@@ -45,6 +45,7 @@ export interface ICoreFunctions {
|
|
|
45
45
|
setLocale(localeId: string): void;
|
|
46
46
|
t(key: string, params?: i18nTParams, locale?: string): string;
|
|
47
47
|
translate(key: string, params?: i18nTParams, locale?: string): string;
|
|
48
|
+
tCount(key: string, count: number, params?: i18nTParams, locale?: string): string;
|
|
48
49
|
// InputPlugin
|
|
49
50
|
isControllerActive(controller: InputController): boolean;
|
|
50
51
|
isGamepadActive(gamepad: Gamepad): boolean;
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { AnimatedSprite as PIXIAnimatedSprite, Texture, Ticker } from 'pixi.js';
|
|
2
|
-
import { AnimatedSpriteProps
|
|
2
|
+
import type { AnimatedSpriteProps } from '../mixins/factory/props';
|
|
3
|
+
import { resolveTexture } from '../mixins/factory/utils';
|
|
3
4
|
import { Signal } from '../signals';
|
|
4
5
|
import {
|
|
5
6
|
bindAllMethods,
|
package/src/display/Container.ts
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import { DestroyOptions, Container as PIXIContainer, Sprite, Texture, Ticker } from 'pixi.js';
|
|
2
|
-
import { Animated
|
|
2
|
+
import { Animated } from '../mixins/animated';
|
|
3
|
+
import { Factory } from '../mixins/factory/Factory';
|
|
4
|
+
import { WithSignals } from '../mixins/signals';
|
|
3
5
|
|
|
4
6
|
import { Application } from '../core/Application';
|
|
5
7
|
import { Signal } from '../signals';
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import { type AnimationStateListener, type Event, type TrackEntry } from '@esotericsoftware/spine-core';
|
|
2
2
|
import { Application } from '../core/Application';
|
|
3
|
-
import type { SpineProps } from '../mixins';
|
|
4
|
-
import { Factory
|
|
3
|
+
import type { SpineProps } from '../mixins/factory/props';
|
|
4
|
+
import { Factory } from '../mixins/factory/Factory';
|
|
5
|
+
import { WithSignals } from '../mixins/signals';
|
|
5
6
|
import { Signal } from '../signals';
|
|
6
7
|
import { type AppTypeOverrides, bindAllMethods, Spine } from '../utils';
|
|
7
8
|
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { describe, expect, it } from 'vitest';
|
|
2
|
+
|
|
3
|
+
// Entry order guard: `display/Container` is the FIRST module imported. Container
|
|
4
|
+
// extends `Factory()`, and the factory method table (`mixins/factory/const`)
|
|
5
|
+
// imports every display/ui class — so an eager edge from Factory to the table
|
|
6
|
+
// re-enters display/ui mid-evaluation and the class bodies throw
|
|
7
|
+
// ("Class extends value undefined"). The table now registers itself into the
|
|
8
|
+
// import-free slot in `mixins/factory/defaults` instead.
|
|
9
|
+
// See importOrder.uiFirst.test.ts for why each order needs its own file.
|
|
10
|
+
import { Container } from './display/Container';
|
|
11
|
+
import { getDefaultFactoryMethods } from './mixins/factory/defaults';
|
|
12
|
+
import { Factory } from './mixins';
|
|
13
|
+
import { Toast } from './ui/Toast';
|
|
14
|
+
|
|
15
|
+
describe('import order: display/Container first', () => {
|
|
16
|
+
it('resolves the mixin Container is built from', () => {
|
|
17
|
+
expect(typeof Factory).toBe('function');
|
|
18
|
+
});
|
|
19
|
+
|
|
20
|
+
it('resolves the display and ui classes', () => {
|
|
21
|
+
expect(typeof Container).toBe('function');
|
|
22
|
+
expect(typeof Toast).toBe('function');
|
|
23
|
+
});
|
|
24
|
+
|
|
25
|
+
it('registers the factory method table once the factory barrel evaluates', () => {
|
|
26
|
+
const methods = getDefaultFactoryMethods();
|
|
27
|
+
expect(typeof methods).toBe('object');
|
|
28
|
+
expect(typeof methods.container).toBe('function');
|
|
29
|
+
expect(typeof methods.sprite).toBe('function');
|
|
30
|
+
expect(typeof methods.button).toBe('function');
|
|
31
|
+
});
|
|
32
|
+
});
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { describe, expect, it } from 'vitest';
|
|
2
|
+
|
|
3
|
+
// Entry order guard: the `display` barrel is the FIRST module imported. Same
|
|
4
|
+
// cycle as importOrder.containerFirst.test.ts, entered through the barrel.
|
|
5
|
+
import { Container, Scene } from './display';
|
|
6
|
+
import { Factory } from './mixins';
|
|
7
|
+
import { Toast } from './ui/Toast';
|
|
8
|
+
|
|
9
|
+
describe('import order: display barrel first', () => {
|
|
10
|
+
it('resolves the mixin the display classes are built from', () => {
|
|
11
|
+
expect(typeof Factory).toBe('function');
|
|
12
|
+
});
|
|
13
|
+
|
|
14
|
+
it('resolves the display and ui classes', () => {
|
|
15
|
+
expect(typeof Container).toBe('function');
|
|
16
|
+
expect(typeof Scene).toBe('function');
|
|
17
|
+
expect(typeof Toast).toBe('function');
|
|
18
|
+
});
|
|
19
|
+
});
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { describe, expect, it } from 'vitest';
|
|
2
|
+
|
|
3
|
+
// The mirror of importOrder.uiFirst.test.ts: `mixins` is imported BEFORE any ui
|
|
4
|
+
// module. See that file for why both orders have to be pinned.
|
|
5
|
+
import { Factory } from './mixins';
|
|
6
|
+
import { Button } from './ui/Button';
|
|
7
|
+
import { UICanvas } from './ui/UICanvas';
|
|
8
|
+
|
|
9
|
+
describe('import order: mixins first', () => {
|
|
10
|
+
it('resolves the mixins the ui classes are built from', () => {
|
|
11
|
+
expect(typeof Factory).toBe('function');
|
|
12
|
+
});
|
|
13
|
+
|
|
14
|
+
it('constructs the ui classes', () => {
|
|
15
|
+
expect(typeof UICanvas).toBe('function');
|
|
16
|
+
expect(typeof Button).toBe('function');
|
|
17
|
+
});
|
|
18
|
+
});
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { describe, expect, it } from 'vitest';
|
|
2
|
+
|
|
3
|
+
// Entry order guard: `display/Scene` is the FIRST module imported — the entry a
|
|
4
|
+
// game app actually uses. Scene extends Container, so it hits the same cycle.
|
|
5
|
+
// See importOrder.containerFirst.test.ts.
|
|
6
|
+
import { Scene } from './display/Scene';
|
|
7
|
+
import { Container } from './display/Container';
|
|
8
|
+
import { Factory } from './mixins';
|
|
9
|
+
import { Toast } from './ui/Toast';
|
|
10
|
+
|
|
11
|
+
describe('import order: display/Scene first', () => {
|
|
12
|
+
it('resolves the mixin Scene is built from', () => {
|
|
13
|
+
expect(typeof Factory).toBe('function');
|
|
14
|
+
});
|
|
15
|
+
|
|
16
|
+
it('resolves the display and ui classes', () => {
|
|
17
|
+
expect(typeof Container).toBe('function');
|
|
18
|
+
expect(typeof Scene).toBe('function');
|
|
19
|
+
expect(typeof Toast).toBe('function');
|
|
20
|
+
});
|
|
21
|
+
});
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { describe, expect, it } from 'vitest';
|
|
2
|
+
|
|
3
|
+
// Entry order guard: `ui/Toast` is the FIRST module imported. Toast is the class
|
|
4
|
+
// the old cycle crashed on — the factory method table pulls in `ui/Toaster`,
|
|
5
|
+
// which pulls in Toast, whose `extends WithSignals(Container)` ran while
|
|
6
|
+
// Container was still mid-evaluation. See importOrder.uiFirst.test.ts.
|
|
7
|
+
import { Toast } from './ui/Toast';
|
|
8
|
+
import { Container } from './display/Container';
|
|
9
|
+
import { Factory } from './mixins';
|
|
10
|
+
|
|
11
|
+
describe('import order: ui/Toast first', () => {
|
|
12
|
+
it('resolves the mixin Toast is built from', () => {
|
|
13
|
+
expect(typeof Factory).toBe('function');
|
|
14
|
+
});
|
|
15
|
+
|
|
16
|
+
it('resolves the display and ui classes', () => {
|
|
17
|
+
expect(typeof Container).toBe('function');
|
|
18
|
+
expect(typeof Toast).toBe('function');
|
|
19
|
+
});
|
|
20
|
+
});
|