@flashist/appframework 0.0.255 → 0.0.257
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/package.json +1 -1
- package/pages/views/BasePageView.js +2 -6
- package/pages/views/BasePageView.js.map +1 -1
- package/renderer/RendererModule.d.ts +1 -0
- package/renderer/RendererModule.js +21 -1
- package/renderer/RendererModule.js.map +1 -1
- package/renderer/managers/RendererManager.d.ts +3 -0
- package/renderer/managers/RendererManager.js +41 -22
- package/renderer/managers/RendererManager.js.map +1 -1
package/package.json
CHANGED
|
@@ -2,14 +2,10 @@ import { DisplayResizeTools, FContainer, Graphics, Point, Rectangle } from "@fla
|
|
|
2
2
|
import { BaseAppView } from "../../base/views/BaseAppView";
|
|
3
3
|
import { appStorage } from "../../state/AppStateModule";
|
|
4
4
|
export class BasePageView extends BaseAppView {
|
|
5
|
-
constructor() {
|
|
6
|
-
// protected appConfigModel: AppConfigModel;
|
|
7
|
-
super(...arguments);
|
|
8
|
-
this.sizeAreaColor = 0x0000FF;
|
|
9
|
-
this.sizeAreaColorAlpha = 0.5;
|
|
10
|
-
}
|
|
11
5
|
construction(...args) {
|
|
12
6
|
super.construction(args);
|
|
7
|
+
this.sizeAreaColor = 0x0000FF;
|
|
8
|
+
this.sizeAreaColorAlpha = 0.5;
|
|
13
9
|
// appState.app.config = getInstance(AppConfigModel);
|
|
14
10
|
this.resizeConfig = {
|
|
15
11
|
upscaleAllowed: false
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BasePageView.js","sourceRoot":"","sources":["../../../src/pages/views/BasePageView.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,UAAU,EAAe,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAiB,MAAM,iBAAiB,CAAC;AAGzH,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAC3D,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAExD,MAAM,OAAO,YAAa,SAAQ,WAAW;
|
|
1
|
+
{"version":3,"file":"BasePageView.js","sourceRoot":"","sources":["../../../src/pages/views/BasePageView.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,13 @@
|
|
|
1
|
-
|
|
1
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
2
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
3
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
4
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
5
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
6
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
7
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
8
|
+
});
|
|
9
|
+
};
|
|
10
|
+
import { getInstance, serviceLocatorAdd } from "@flashist/flibs";
|
|
2
11
|
import { BaseAppModule } from "../base/modules/BaseAppModule";
|
|
3
12
|
import { RendererManagerConfigVO } from "./data/RendererManagerConfigVO";
|
|
4
13
|
import { RendererManager } from "./managers/RendererManager";
|
|
@@ -8,5 +17,16 @@ export class RendererModule extends BaseAppModule {
|
|
|
8
17
|
serviceLocatorAdd(RendererManagerConfigVO, { isSingleton: true });
|
|
9
18
|
serviceLocatorAdd(RendererManager, { isSingleton: true, forceCreation: true });
|
|
10
19
|
}
|
|
20
|
+
activateCompleteHook() {
|
|
21
|
+
const _super = Object.create(null, {
|
|
22
|
+
activateCompleteHook: { get: () => super.activateCompleteHook }
|
|
23
|
+
});
|
|
24
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
25
|
+
_super.activateCompleteHook.call(this);
|
|
26
|
+
//
|
|
27
|
+
const rendererManager = getInstance(RendererManager);
|
|
28
|
+
yield rendererManager.activateAppPromise;
|
|
29
|
+
});
|
|
30
|
+
}
|
|
11
31
|
}
|
|
12
32
|
//# sourceMappingURL=RendererModule.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RendererModule.js","sourceRoot":"","sources":["../../src/renderer/RendererModule.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"RendererModule.js","sourceRoot":"","sources":["../../src/renderer/RendererModule.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAEjE,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAC9D,OAAO,EAAE,uBAAuB,EAAE,MAAM,gCAAgC,CAAC;AACzE,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAE7D,MAAM,OAAO,cAAe,SAAQ,aAAa;IAE7C,IAAI;QACA,KAAK,CAAC,IAAI,EAAE,CAAC;QAEb,iBAAiB,CAAC,uBAAuB,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC;QAClE,iBAAiB,CAAC,eAAe,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;IACnF,CAAC;IAEK,oBAAoB;;;;;YACtB,OAAM,oBAAoB,YAAG;YAE7B,EAAE;YACF,MAAM,eAAe,GAAG,WAAW,CAAC,eAAe,CAAC,CAAC;YACrD,MAAM,eAAe,CAAC,kBAAkB,CAAC;QAC7C,CAAC;KAAA;CACJ"}
|
|
@@ -8,7 +8,10 @@ export declare class RendererManager extends BaseAppManager {
|
|
|
8
8
|
left?: number;
|
|
9
9
|
right?: number;
|
|
10
10
|
};
|
|
11
|
+
protected _activateAppPromise: Promise<void>;
|
|
11
12
|
protected construction(): void;
|
|
13
|
+
protected activateApp(): Promise<void>;
|
|
14
|
+
get activateAppPromise(): Promise<void>;
|
|
12
15
|
resize(htmlWidth: number, htmlHeight: number, pixelRatio: number): void;
|
|
13
16
|
get rendererWidth(): number;
|
|
14
17
|
get rendererHeight(): number;
|
|
@@ -1,3 +1,12 @@
|
|
|
1
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
2
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
3
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
4
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
5
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
6
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
7
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
8
|
+
});
|
|
9
|
+
};
|
|
1
10
|
import { FApp, getInstance, Point } from "@flashist/flibs";
|
|
2
11
|
import { BaseAppManager } from "../../base/managers/BaseAppManager";
|
|
3
12
|
import { Facade } from "../../facade/Facade";
|
|
@@ -16,29 +25,39 @@ export class RendererManager extends BaseAppManager {
|
|
|
16
25
|
// if (this.config.targetFps) {
|
|
17
26
|
// PIXI.settings.TARGET_FPMS = this.config.targetFps / 1000;
|
|
18
27
|
// }
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
28
|
+
this.activateApp();
|
|
29
|
+
}
|
|
30
|
+
activateApp() {
|
|
31
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
32
|
+
const appConfig = Object.assign({}, this.config);
|
|
33
|
+
Facade.instance.app = new FApp();
|
|
34
|
+
this._activateAppPromise = Facade.instance.app.init(appConfig);
|
|
35
|
+
//
|
|
36
|
+
yield this.activateAppPromise;
|
|
37
|
+
// Stage
|
|
38
|
+
Facade.instance.app.stage.interactive = true;
|
|
39
|
+
// Renderer
|
|
40
|
+
// Facade.instance.app.renderer.autoDensity = true;
|
|
41
|
+
// CSS settings
|
|
42
|
+
// (Facade.instance.app.renderer.view.style as any).position = "absolute";
|
|
43
|
+
// (Facade.instance.app.renderer.view.style as any).top = "0px";
|
|
44
|
+
// (Facade.instance.app.renderer.view.style as any).left = "0px";
|
|
45
|
+
if (this.config.canvasCss) {
|
|
46
|
+
const canvasKeys = Object.keys(this.config.canvasCss);
|
|
47
|
+
for (let singleCssKey of canvasKeys) {
|
|
48
|
+
Facade.instance.app.renderer.view.canvas.style[singleCssKey] = this.config.canvasCss[singleCssKey];
|
|
49
|
+
}
|
|
34
50
|
}
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
51
|
+
let canvasParentElement = document.body;
|
|
52
|
+
if (this.config.canvasParentElementId) {
|
|
53
|
+
canvasParentElement = document.getElementById(this.config.canvasParentElementId);
|
|
54
|
+
}
|
|
55
|
+
// Append the renderer canvas to DOM
|
|
56
|
+
canvasParentElement.appendChild(Facade.instance.app.view);
|
|
57
|
+
});
|
|
58
|
+
}
|
|
59
|
+
get activateAppPromise() {
|
|
60
|
+
return this._activateAppPromise;
|
|
42
61
|
}
|
|
43
62
|
resize(htmlWidth, htmlHeight, pixelRatio) {
|
|
44
63
|
let horizontalPadding = 0;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RendererManager.js","sourceRoot":"","sources":["../../../src/renderer/managers/RendererManager.ts"],"names":[],"mappings":"AAEA,OAAO,EAAiB,IAAI,EAAE,WAAW,EAAE,KAAK,EAAa,MAAM,iBAAiB,CAAC;AAErF,OAAO,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AACpE,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7C,OAAO,EAAE,oBAAoB,EAAE,MAAM,gCAAgC,CAAC;AACtE,OAAO,EAAE,uBAAuB,EAAE,MAAM,iCAAiC,CAAC;AAE1E,MAAM,OAAO,eAAgB,SAAQ,cAAc;
|
|
1
|
+
{"version":3,"file":"RendererManager.js","sourceRoot":"","sources":["../../../src/renderer/managers/RendererManager.ts"],"names":[],"mappings":";;;;;;;;;AAEA,OAAO,EAAiB,IAAI,EAAE,WAAW,EAAE,KAAK,EAAa,MAAM,iBAAiB,CAAC;AAErF,OAAO,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AACpE,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7C,OAAO,EAAE,oBAAoB,EAAE,MAAM,gCAAgC,CAAC;AACtE,OAAO,EAAE,uBAAuB,EAAE,MAAM,iCAAiC,CAAC;AAE1E,MAAM,OAAO,eAAgB,SAAQ,cAAc;IAarC,YAAY;QAClB,KAAK,CAAC,YAAY,EAAE,CAAC;QAErB,IAAI,CAAC,MAAM,GAAG,WAAW,CAAC,uBAAuB,CAAC,CAAC;QAEnD,IAAI,CAAC,OAAO,GAAG;YACX,GAAG,EAAE,CAAC;YACN,MAAM,EAAE,CAAC;YACT,IAAI,EAAE,CAAC;YACP,KAAK,EAAE,CAAC;SACX,CAAC;QAEF,+BAA+B;QAC/B,gEAAgE;QAChE,IAAI;QAEJ,IAAI,CAAC,WAAW,EAAE,CAAC;IACvB,CAAC;IAEe,WAAW;;YACvB,MAAM,SAAS,GAAkB,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;YAChE,MAAM,CAAC,QAAQ,CAAC,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC;YACjC,IAAI,CAAC,mBAAmB,GAAG,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YAC/D,EAAE;YACF,MAAM,IAAI,CAAC,kBAAkB,CAAC;YAE9B,QAAQ;YACR,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,WAAW,GAAG,IAAI,CAAC;YAE7C,WAAW;YACX,mDAAmD;YACnD,eAAe;YACf,0EAA0E;YAC1E,gEAAgE;YAChE,iEAAiE;YACjE,IAAI,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;gBACxB,MAAM,UAAU,GAAa,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;gBAChE,KAAK,IAAI,YAAY,IAAI,UAAU,EAAE,CAAC;oBACjC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,KAAa,CAAC,YAAY,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC;gBAChH,CAAC;YACL,CAAC;YAED,IAAI,mBAAmB,GAAG,QAAQ,CAAC,IAAI,CAAC;YACxC,IAAI,IAAI,CAAC,MAAM,CAAC,qBAAqB,EAAE,CAAC;gBACpC,mBAAmB,GAAG,QAAQ,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,qBAAqB,CAAC,CAAC;YACrF,CAAC;YAED,oCAAoC;YACpC,mBAAmB,CAAC,WAAW,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAW,CAAC,CAAC;QACrE,CAAC;KAAA;IAED,IAAW,kBAAkB;QACzB,OAAO,IAAI,CAAC,mBAAmB,CAAC;IACpC,CAAC;IAEM,MAAM,CAAC,SAAiB,EAAE,UAAkB,EAAE,UAAkB;QAEnE,IAAI,iBAAiB,GAAW,CAAC,CAAC;QAClC,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;YACpB,iBAAiB,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC;QAC3C,CAAC;QACD,IAAI,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;YACrB,iBAAiB,IAAI,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC;QAC5C,CAAC;QAED,IAAI,cAAc,GAAW,CAAC,CAAC;QAC/B,IAAI,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC;YACnB,cAAc,IAAI,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC;QACvC,CAAC;QACD,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;YACtB,cAAc,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC;QAC1C,CAAC;QAED,IAAI,WAAW,GAAW,SAAS,GAAG,iBAAiB,CAAC;QACxD,IAAI,YAAY,GAAW,UAAU,GAAG,cAAc,CAAC;QAEvD,IAAI,CAAC,aAAa,CAAC,oBAAoB,CAAC,eAAe,EAAE,IAAI,KAAK,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC,CAAC;QAE/F,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,WAAW,GAAG,UAAU,EAAE,YAAY,GAAG,UAAU,CAAC,CAAC;QACzF,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,GAAG,WAAW,GAAG,IAAI,CAAC;QAC1E,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,YAAY,GAAG,IAAI,CAAC;QAE5E,IAAI,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC;YAClB,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,KAAa,CAAC,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,GAAG,IAAI,CAAC;QAC1F,CAAC;QACD,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;YACrB,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,KAAa,CAAC,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;QAChG,CAAC;QACD,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;YACnB,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,KAAa,CAAC,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC;QAC5F,CAAC;QACD,IAAI,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;YACpB,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,KAAa,CAAC,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC;QAC9F,CAAC;QAED,IAAI,CAAC,aAAa,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAC;IACpD,CAAC;IAED,IAAW,aAAa;QACpB,OAAO,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC;IAC9C,CAAC;IAED,IAAW,cAAc;QACrB,OAAO,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC;IAC/C,CAAC;IAEM,QAAQ;QACX,OAAQ,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,KAAa,CAAC,OAAO,CAAC;IAC3E,CAAC;IAEM,QAAQ;QACV,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,KAAa,CAAC,OAAO,GAAG,MAAM,CAAC;IAC7E,CAAC;CACJ"}
|