@wcardinal/wcardinal-ui 0.394.0 → 0.396.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/dist/types/wcardinal/ui/theme/dark/d-theme-dark-input-boolean-button-off.d.ts +0 -2
- package/dist/types/wcardinal/ui/theme/dark/d-theme-dark-input-boolean-button-on.d.ts +0 -2
- package/dist/types/wcardinal/ui/theme/white/d-theme-white-input-boolean-button-off.d.ts +0 -2
- package/dist/types/wcardinal/ui/theme/white/d-theme-white-input-boolean-button-on.d.ts +0 -2
- package/dist/wcardinal/ui/d-application-layer.js +7 -1
- package/dist/wcardinal/ui/d-application-layer.js.map +1 -1
- package/dist/wcardinal/ui/d-base-background-mesh-geometry.js +5 -5
- package/dist/wcardinal/ui/d-base-background-mesh-geometry.js.map +1 -1
- package/dist/wcardinal/ui/d-base-border-mesh-geometry.js +60 -37
- package/dist/wcardinal/ui/d-base-border-mesh-geometry.js.map +1 -1
- package/dist/wcardinal/ui/d-base-outline-snippet.js +1 -1
- package/dist/wcardinal/ui/d-base-outline-snippet.js.map +1 -1
- package/dist/wcardinal/ui/d-item-updater.js +1 -1
- package/dist/wcardinal/ui/d-item-updater.js.map +1 -1
- package/dist/wcardinal/ui/d-table-body.js +1 -1
- package/dist/wcardinal/ui/d-table-body.js.map +1 -1
- package/dist/wcardinal/ui/theme/dark/d-theme-dark-button-base.js +1 -1
- package/dist/wcardinal/ui/theme/dark/d-theme-dark-button-base.js.map +1 -1
- package/dist/wcardinal/ui/theme/dark/d-theme-dark-input-boolean-button-off.js +0 -4
- package/dist/wcardinal/ui/theme/dark/d-theme-dark-input-boolean-button-off.js.map +1 -1
- package/dist/wcardinal/ui/theme/dark/d-theme-dark-input-boolean-button-on.js +0 -4
- package/dist/wcardinal/ui/theme/dark/d-theme-dark-input-boolean-button-on.js.map +1 -1
- package/dist/wcardinal/ui/theme/dark/d-theme-dark-input.js +1 -1
- package/dist/wcardinal/ui/theme/dark/d-theme-dark-input.js.map +1 -1
- package/dist/wcardinal/ui/theme/white/d-theme-white-button-base.js +1 -1
- package/dist/wcardinal/ui/theme/white/d-theme-white-button-base.js.map +1 -1
- package/dist/wcardinal/ui/theme/white/d-theme-white-input-boolean-button-off.js +0 -4
- package/dist/wcardinal/ui/theme/white/d-theme-white-input-boolean-button-off.js.map +1 -1
- package/dist/wcardinal/ui/theme/white/d-theme-white-input-boolean-button-on.js +0 -4
- package/dist/wcardinal/ui/theme/white/d-theme-white-input-boolean-button-on.js.map +1 -1
- package/dist/wcardinal/ui/theme/white/d-theme-white-input.js +1 -1
- package/dist/wcardinal/ui/theme/white/d-theme-white-input.js.map +1 -1
- package/dist/wcardinal-ui-theme-dark-en-us.js +3 -9
- package/dist/wcardinal-ui-theme-dark-en-us.min.js +2 -2
- package/dist/wcardinal-ui-theme-dark-en-us.min.js.map +1 -1
- package/dist/wcardinal-ui-theme-dark-ja-jp.js +3 -9
- package/dist/wcardinal-ui-theme-dark-ja-jp.min.js +2 -2
- package/dist/wcardinal-ui-theme-dark-ja-jp.min.js.map +1 -1
- package/dist/wcardinal-ui-theme-dark.js +3 -9
- package/dist/wcardinal-ui-theme-dark.min.js +2 -2
- package/dist/wcardinal-ui-theme-white-en-us.js +3 -9
- package/dist/wcardinal-ui-theme-white-en-us.min.js +2 -2
- package/dist/wcardinal-ui-theme-white-en-us.min.js.map +1 -1
- package/dist/wcardinal-ui-theme-white-ja-jp.js +3 -9
- package/dist/wcardinal-ui-theme-white-ja-jp.min.js +2 -2
- package/dist/wcardinal-ui-theme-white-ja-jp.min.js.map +1 -1
- package/dist/wcardinal-ui-theme-white.js +3 -9
- package/dist/wcardinal-ui-theme-white.min.js +2 -2
- package/dist/wcardinal-ui.cjs.js +80 -63
- package/dist/wcardinal-ui.js +76 -47
- package/dist/wcardinal-ui.min.js +2 -2
- package/dist/wcardinal-ui.min.js.map +1 -1
- package/package.json +1 -1
|
@@ -1,9 +1,7 @@
|
|
|
1
|
-
import { DBorderMask } from "../../d-border-mask";
|
|
2
1
|
import { DThemeInputBooleanButtonOff } from "../../d-input-boolean-button-off";
|
|
3
2
|
import { DStateAwareOrValueMightBe } from "../../d-state-aware";
|
|
4
3
|
import { DThemeDarkButton } from "./d-theme-dark-button";
|
|
5
4
|
export declare abstract class DThemeDarkInputBooleanButtonOff extends DThemeDarkButton<string> implements DThemeInputBooleanButtonOff {
|
|
6
|
-
getBorderMask(): DBorderMask;
|
|
7
5
|
isToggle(): boolean;
|
|
8
6
|
abstract newTextValue(): DStateAwareOrValueMightBe<string>;
|
|
9
7
|
}
|
|
@@ -1,9 +1,7 @@
|
|
|
1
|
-
import { DBorderMask } from "../../d-border-mask";
|
|
2
1
|
import { DThemeInputBooleanButtonOn } from "../../d-input-boolean-button-on";
|
|
3
2
|
import { DStateAwareOrValueMightBe } from "../../d-state-aware";
|
|
4
3
|
import { DThemeDarkButton } from "./d-theme-dark-button";
|
|
5
4
|
export declare abstract class DThemeDarkInputBooleanButtonOn extends DThemeDarkButton<string> implements DThemeInputBooleanButtonOn {
|
|
6
|
-
getBorderMask(): DBorderMask;
|
|
7
5
|
isToggle(): boolean;
|
|
8
6
|
abstract newTextValue(): DStateAwareOrValueMightBe<string>;
|
|
9
7
|
}
|
|
@@ -1,9 +1,7 @@
|
|
|
1
|
-
import { DBorderMask } from "../../d-border-mask";
|
|
2
1
|
import { DThemeInputBooleanButtonOff } from "../../d-input-boolean-button-off";
|
|
3
2
|
import { DStateAwareOrValueMightBe } from "../../d-state-aware";
|
|
4
3
|
import { DThemeWhiteButton } from "./d-theme-white-button";
|
|
5
4
|
export declare abstract class DThemeWhiteInputBooleanButtonOff extends DThemeWhiteButton<string> implements DThemeInputBooleanButtonOff {
|
|
6
|
-
getBorderMask(): DBorderMask;
|
|
7
5
|
isToggle(): boolean;
|
|
8
6
|
abstract newTextValue(): DStateAwareOrValueMightBe<string>;
|
|
9
7
|
}
|
|
@@ -1,9 +1,7 @@
|
|
|
1
|
-
import { DBorderMask } from "../../d-border-mask";
|
|
2
1
|
import { DThemeInputBooleanButtonOn } from "../../d-input-boolean-button-on";
|
|
3
2
|
import { DStateAwareOrValueMightBe } from "../../d-state-aware";
|
|
4
3
|
import { DThemeWhiteButton } from "./d-theme-white-button";
|
|
5
4
|
export declare abstract class DThemeWhiteInputBooleanButtonOn extends DThemeWhiteButton<string> implements DThemeInputBooleanButtonOn {
|
|
6
|
-
getBorderMask(): DBorderMask;
|
|
7
5
|
isToggle(): boolean;
|
|
8
6
|
abstract newTextValue(): DStateAwareOrValueMightBe<string>;
|
|
9
7
|
}
|
|
@@ -144,7 +144,13 @@ var DApplicationLayer = /** @class */ (function (_super) {
|
|
|
144
144
|
};
|
|
145
145
|
DApplicationLayer.prototype.onResize = function () {
|
|
146
146
|
var options = this._options;
|
|
147
|
-
var
|
|
147
|
+
var bboxes = this._rootElement.getClientRects();
|
|
148
|
+
if (bboxes.length <= 0) {
|
|
149
|
+
// The root element size is (0, 0) and not visible.
|
|
150
|
+
// In this case, skip the resizing.
|
|
151
|
+
return;
|
|
152
|
+
}
|
|
153
|
+
var bbox = bboxes[0];
|
|
148
154
|
var newWidth = options.isWidthFixed() ? options.getWidth() : bbox.width;
|
|
149
155
|
var newHeight = options.isHeightFixed() ? options.getHeight() : bbox.height;
|
|
150
156
|
this.renderer.resize(newWidth, newHeight);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"d-application-layer.js","sourceRoot":"","sources":["../../../src/main/typescript/wcardinal/ui/d-application-layer.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { Application, interaction, Point } from \"pixi.js\";\nimport { DApplicationLayerLike } from \"./d-application-layer-like\";\nimport { DApplicationLayerOptions } from \"./d-application-layer-options\";\nimport { DApplicationLike } from \"./d-application-like\";\nimport { DBase } from \"./d-base\";\nimport { DControllerFocus, DFocusable, DFocusableContainer } from \"./d-controller-focus\";\nimport { DControllers } from \"./d-controllers\";\nimport { DPadding } from \"./d-padding\";\nimport { DynamicFontAtlases } from \"./util/dynamic-font-atlases\";\nimport { UtilPointerEvent } from \"./util/util-pointer-event\";\nimport { UtilWheelEvent, UtilWheelEventDeltas } from \"./util/util-wheel-event\";\n\ninterface DblClickable {\n\tonDblClick(\n\t\te: MouseEvent | TouchEvent,\n\t\tinteractionManager: interaction.InteractionManager\n\t): boolean;\n}\n\nconst isDblClickable = (target: any): target is DblClickable => {\n\treturn target != null && target.onDblClick != null;\n};\n\ninterface Wheelable {\n\tonWheel(e: WheelEvent, deltas: UtilWheelEventDeltas, global: Point): boolean;\n}\n\nconst isWheelable = (target: any): target is Wheelable => {\n\treturn target != null && target.onWheel != null;\n};\n\nexport class DApplicationLayer extends Application implements DApplicationLayerLike {\n\tprotected _options: DApplicationLayerOptions;\n\tprotected _renderId: number | null = null;\n\tprotected _renderBound: () => void;\n\tprotected _isLocked: boolean;\n\tprotected _isOverlay: boolean;\n\tprotected _reflowLimit: number;\n\tprotected _rootElement: HTMLElement;\n\tprotected _elementContainer: HTMLElement;\n\tprotected _padding: DPadding;\n\tprotected _dynamicFontAtlases: DynamicFontAtlases | null = null;\n\tprotected _isVisible: boolean;\n\n\treadonly application: DApplicationLike;\n\n\tconstructor(application: DApplicationLike, options: DApplicationLayerOptions) {\n\t\tsuper(options.getPixiApplicationOptions());\n\n\t\tthis._options = options;\n\t\tthis._isLocked = false;\n\t\tthis._isVisible = true;\n\t\tthis._isOverlay = options.isOverlay();\n\t\tthis._padding = options.getPadding();\n\t\tthis._rootElement = options.getRootElement();\n\t\tthis._reflowLimit = 5;\n\t\tthis._elementContainer = this.newElementContainer();\n\n\t\tthis.application = application;\n\n\t\tthis._renderBound = (): void => {\n\t\t\tif (this._renderId != null) {\n\t\t\t\tthis.render();\n\t\t\t}\n\t\t};\n\n\t\tthis.initStage();\n\t\tthis.initView();\n\t\tthis.initRootElement();\n\t\tthis.initFocusHandling();\n\t\tthis.initResizeHandling();\n\t\tthis.initWheelHandling();\n\t\tthis.initDoubleClickHandling();\n\t}\n\n\tprotected newElementContainer(): HTMLElement {\n\t\tconst result = document.createElement(\"div\");\n\t\tresult.setAttribute(\n\t\t\t\"style\",\n\t\t\t\"position: absolute; top: 0; left: 0; width: 0; height: 0;\" +\n\t\t\t\t\"margin: 0; padding: 0; outline: none;\"\n\t\t);\n\t\treturn result;\n\t}\n\n\tprotected initStage(): void {\n\t\tconst stage = this.stage;\n\t\t(stage as any).layer = this;\n\t\t(stage as any).application = this.application;\n\t\tstage.interactive = true;\n\t}\n\n\tprotected initView(): void {\n\t\tconst view = this.view;\n\t\tconst style = view.style;\n\t\tstyle.position = \"absolute\";\n\t\tstyle.top = \"0\";\n\t\tstyle.left = \"0\";\n\t\tstyle.width = \"100%\";\n\t\tstyle.height = \"100%\";\n\t\tstyle.display = \"block\";\n\t\tstyle.outline = \"none\";\n\t\t(style as any).webkitTapHighlightColor = \"rgba(255,255,255,0)\";\n\t\tstyle.webkitUserSelect = \"none\";\n\t\tstyle.setProperty(\"-khtml-user-select\", \"none\");\n\t\tstyle.setProperty(\"-moz-user-select\", \"none\");\n\t\tstyle.setProperty(\"-ms-user-select\", \"none\");\n\t\tstyle.userSelect = \"none\";\n\t}\n\n\tprotected initRootElement(): void {\n\t\tconst view = this.view;\n\t\tconst isOverlay = this._isOverlay;\n\t\tconst rootElement = this._rootElement;\n\t\tconst elementContainer = this._elementContainer;\n\n\t\t// Insert elements\n\t\tconst insertionPosition = isOverlay ? 2 : 0;\n\t\tconst children = rootElement.children;\n\t\tif (insertionPosition < children.length) {\n\t\t\tconst child = children[insertionPosition];\n\t\t\trootElement.insertBefore(view, child);\n\t\t\trootElement.insertBefore(elementContainer, child);\n\t\t} else {\n\t\t\trootElement.appendChild(view);\n\t\t\trootElement.appendChild(elementContainer);\n\t\t}\n\n\t\tif (isOverlay) {\n\t\t\tconst stage = this.stage;\n\t\t\tconst oldOnChildrenChange = (stage as any).onChildrenChange;\n\t\t\t(stage as any).onChildrenChange = (): void => {\n\t\t\t\tthis.onStageDirty();\n\t\t\t\toldOnChildrenChange.call(stage);\n\t\t\t};\n\t\t}\n\n\t\t// Init styles\n\t\tconst rootElementStyle = rootElement.style;\n\t\tif (rootElement !== document.body) {\n\t\t\tconst rootElementStylePosition = window.getComputedStyle(rootElement).position;\n\t\t\tif (rootElementStylePosition === \"static\") {\n\t\t\t\trootElementStyle.position = \"relative\";\n\t\t\t}\n\t\t}\n\t\trootElementStyle.margin = \"0\";\n\t\trootElementStyle.padding = \"0\";\n\t\trootElementStyle.overflow = \"hidden\";\n\t}\n\n\tprotected initFocusHandling(): void {\n\t\tconst view = this.view;\n\t\tconst stage = this.stage;\n\t\tconst focusController = this.getFocusController();\n\n\t\tview.setAttribute(\"tabindex\", \"0\");\n\n\t\tDControllers.getKeyboardController().init(view, stage, focusController);\n\n\t\tconst interactionManager = this.renderer.plugins.interaction;\n\t\tinteractionManager.on(UtilPointerEvent.down, (e: interaction.InteractionEvent): void => {\n\t\t\tif (e.target == null || e.target === stage) {\n\t\t\t\tfocusController.clear();\n\t\t\t}\n\t\t});\n\t}\n\n\tprotected initResizeHandling(): void {\n\t\tconst options = this._options;\n\t\tconst isWidthFixed = options.isWidthFixed();\n\t\tconst isHeightFixed = options.isHeightFixed();\n\t\tif (!isWidthFixed || !isHeightFixed) {\n\t\t\tconst onResizeBound = (): void => {\n\t\t\t\tthis.onResize();\n\t\t\t};\n\t\t\tif (window.ResizeObserver != null) {\n\t\t\t\tnew ResizeObserver(onResizeBound).observe(this._rootElement);\n\t\t\t} else {\n\t\t\t\twindow.addEventListener(\"resize\", onResizeBound);\n\t\t\t\twindow.addEventListener(\"orientationchange\", onResizeBound);\n\t\t\t}\n\t\t}\n\t}\n\n\tprotected onResize(): void {\n\t\tconst options = this._options;\n\t\tconst bbox = this._rootElement.getBoundingClientRect();\n\t\tconst newWidth = options.isWidthFixed() ? options.getWidth() : bbox.width;\n\t\tconst newHeight = options.isHeightFixed() ? options.getHeight() : bbox.height;\n\t\tthis.renderer.resize(newWidth, newHeight);\n\n\t\tconst padding = this._padding;\n\t\tconst children = this.stage.children;\n\t\tfor (let i = 0, imax = children.length; i < imax; ++i) {\n\t\t\tconst child = children[i];\n\t\t\tif (child instanceof DBase) {\n\t\t\t\tchild.onParentResize(newWidth, newHeight, padding);\n\t\t\t}\n\t\t}\n\n\t\tthis.update();\n\t}\n\n\tprotected initWheelHandling(): void {\n\t\tconst global = new Point();\n\t\tconst util = UtilWheelEvent.getInstance();\n\t\tconst interactionManager = this.renderer.plugins.interaction;\n\t\tutil.on(this.view, (e: WheelEvent | Event): void => {\n\t\t\tconst wheelEvent = e as WheelEvent;\n\t\t\tUtilPointerEvent.toGlobal(wheelEvent, interactionManager, global);\n\t\t\tlet current = interactionManager.hitTest(global);\n\t\t\tconst deltas = util.normalize(e);\n\t\t\tif (deltas != null) {\n\t\t\t\twhile (current != null) {\n\t\t\t\t\tif (isWheelable(current)) {\n\t\t\t\t\t\tif (current.onWheel(wheelEvent, deltas, global)) {\n\t\t\t\t\t\t\twheelEvent.preventDefault();\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tcurrent = current.parent;\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t}\n\n\tprotected initDoubleClickHandling(): void {\n\t\tconst focusController = this.getFocusController();\n\t\tconst interactionManager = this.renderer.plugins.interaction;\n\t\tUtilPointerEvent.onDblClick(this.view, (e: MouseEvent | TouchEvent): void => {\n\t\t\tconst focused = focusController.get();\n\t\t\tif (focused != null) {\n\t\t\t\tlet current: DFocusable | DFocusableContainer | null = focused;\n\t\t\t\twhile (current != null) {\n\t\t\t\t\tif (isDblClickable(current)) {\n\t\t\t\t\t\tif (current.onDblClick(e, interactionManager)) {\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tcurrent = current.parent;\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t}\n\n\tlock(): void {\n\t\tthis._isLocked = true;\n\t}\n\n\tunlock(): void {\n\t\tthis._isLocked = false;\n\t}\n\n\tupdate(): void {\n\t\tif (!this._isLocked && this._renderId == null) {\n\t\t\tthis._renderId = requestAnimationFrame(this._renderBound);\n\t\t}\n\t}\n\n\tprotected onStageDirty(): void {\n\t\t// Update the visibility if this is a overlay layer.\n\t\tif (this._isOverlay) {\n\t\t\tif (0 < this.stage.children.length) {\n\t\t\t\t// There are more than one children,\n\t\t\t\t// therefore must be visible.\n\t\t\t\tif (!this._isVisible) {\n\t\t\t\t\tthis._isVisible = true;\n\t\t\t\t\tthis.view.style.display = \"block\";\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\t// There is no child,\n\t\t\t\t// therefore must not be visible.\n\t\t\t\tif (this._isVisible) {\n\t\t\t\t\tthis._isVisible = false;\n\t\t\t\t\tthis.view.style.display = \"none\";\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\trender(): void {\n\t\tthis.reflow();\n\n\t\t// Please note why the following line is here.\n\t\t//\n\t\t// Before this line, the update method does not enque a rendering task\n\t\t// because `this._renderId` is not null. As a result, this prevents\n\t\t// an unintentional rendering loop caused by the refit or the reflow.\n\t\t//\n\t\t// After this line, the update method enques a rendering task.\n\t\t// Namely, in the DisplayObject#render(Renderer) method, allowed to enque\n\t\t// a rendering task. For instance, please refer to the DDiagramShape#update().\n\t\tthis._renderId = null;\n\n\t\t// Render\n\t\tsuper.render();\n\t}\n\n\tget width(): number {\n\t\treturn this.screen.width;\n\t}\n\n\tget height(): number {\n\t\treturn this.screen.height;\n\t}\n\n\tget padding(): DPadding {\n\t\treturn this._padding;\n\t}\n\n\treflow(): void {\n\t\tconst children = this.stage.children;\n\t\tfor (let ilimit = 0, limit = this._reflowLimit; ilimit < limit; ++ilimit) {\n\t\t\tlet isDirty = false;\n\t\t\tfor (let i = 0, imax = children.length; i < imax; ++i) {\n\t\t\t\tconst child = children[i];\n\t\t\t\tif (child instanceof DBase) {\n\t\t\t\t\tchild.reflow();\n\t\t\t\t\tisDirty =\n\t\t\t\t\t\tisDirty || child.isDirty() || child.hasDirty() || child.isHierarchyDirty();\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// If DBases are changed during the `reflow` process, need to reflow again.\n\t\t\tif (!isDirty) {\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t}\n\n\tgetFocusController(): DControllerFocus {\n\t\treturn this.application.getFocusController();\n\t}\n\n\tgetRootElement(): HTMLElement {\n\t\treturn this._rootElement;\n\t}\n\n\tgetElementContainer(): HTMLElement {\n\t\treturn this._elementContainer;\n\t}\n\n\tgetDynamicFontAtlases(): DynamicFontAtlases {\n\t\tif (this._dynamicFontAtlases == null) {\n\t\t\tthis._dynamicFontAtlases = new DynamicFontAtlases(this);\n\t\t}\n\t\treturn this._dynamicFontAtlases;\n\t}\n}\n"]}
|
|
1
|
+
{"version":3,"file":"d-application-layer.js","sourceRoot":"","sources":["../../../src/main/typescript/wcardinal/ui/d-application-layer.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { Application, interaction, Point } from \"pixi.js\";\nimport { DApplicationLayerLike } from \"./d-application-layer-like\";\nimport { DApplicationLayerOptions } from \"./d-application-layer-options\";\nimport { DApplicationLike } from \"./d-application-like\";\nimport { DBase } from \"./d-base\";\nimport { DControllerFocus, DFocusable, DFocusableContainer } from \"./d-controller-focus\";\nimport { DControllers } from \"./d-controllers\";\nimport { DPadding } from \"./d-padding\";\nimport { DynamicFontAtlases } from \"./util/dynamic-font-atlases\";\nimport { UtilPointerEvent } from \"./util/util-pointer-event\";\nimport { UtilWheelEvent, UtilWheelEventDeltas } from \"./util/util-wheel-event\";\n\ninterface DblClickable {\n\tonDblClick(\n\t\te: MouseEvent | TouchEvent,\n\t\tinteractionManager: interaction.InteractionManager\n\t): boolean;\n}\n\nconst isDblClickable = (target: any): target is DblClickable => {\n\treturn target != null && target.onDblClick != null;\n};\n\ninterface Wheelable {\n\tonWheel(e: WheelEvent, deltas: UtilWheelEventDeltas, global: Point): boolean;\n}\n\nconst isWheelable = (target: any): target is Wheelable => {\n\treturn target != null && target.onWheel != null;\n};\n\nexport class DApplicationLayer extends Application implements DApplicationLayerLike {\n\tprotected _options: DApplicationLayerOptions;\n\tprotected _renderId: number | null = null;\n\tprotected _renderBound: () => void;\n\tprotected _isLocked: boolean;\n\tprotected _isOverlay: boolean;\n\tprotected _reflowLimit: number;\n\tprotected _rootElement: HTMLElement;\n\tprotected _elementContainer: HTMLElement;\n\tprotected _padding: DPadding;\n\tprotected _dynamicFontAtlases: DynamicFontAtlases | null = null;\n\tprotected _isVisible: boolean;\n\n\treadonly application: DApplicationLike;\n\n\tconstructor(application: DApplicationLike, options: DApplicationLayerOptions) {\n\t\tsuper(options.getPixiApplicationOptions());\n\n\t\tthis._options = options;\n\t\tthis._isLocked = false;\n\t\tthis._isVisible = true;\n\t\tthis._isOverlay = options.isOverlay();\n\t\tthis._padding = options.getPadding();\n\t\tthis._rootElement = options.getRootElement();\n\t\tthis._reflowLimit = 5;\n\t\tthis._elementContainer = this.newElementContainer();\n\n\t\tthis.application = application;\n\n\t\tthis._renderBound = (): void => {\n\t\t\tif (this._renderId != null) {\n\t\t\t\tthis.render();\n\t\t\t}\n\t\t};\n\n\t\tthis.initStage();\n\t\tthis.initView();\n\t\tthis.initRootElement();\n\t\tthis.initFocusHandling();\n\t\tthis.initResizeHandling();\n\t\tthis.initWheelHandling();\n\t\tthis.initDoubleClickHandling();\n\t}\n\n\tprotected newElementContainer(): HTMLElement {\n\t\tconst result = document.createElement(\"div\");\n\t\tresult.setAttribute(\n\t\t\t\"style\",\n\t\t\t\"position: absolute; top: 0; left: 0; width: 0; height: 0;\" +\n\t\t\t\t\"margin: 0; padding: 0; outline: none;\"\n\t\t);\n\t\treturn result;\n\t}\n\n\tprotected initStage(): void {\n\t\tconst stage = this.stage;\n\t\t(stage as any).layer = this;\n\t\t(stage as any).application = this.application;\n\t\tstage.interactive = true;\n\t}\n\n\tprotected initView(): void {\n\t\tconst view = this.view;\n\t\tconst style = view.style;\n\t\tstyle.position = \"absolute\";\n\t\tstyle.top = \"0\";\n\t\tstyle.left = \"0\";\n\t\tstyle.width = \"100%\";\n\t\tstyle.height = \"100%\";\n\t\tstyle.display = \"block\";\n\t\tstyle.outline = \"none\";\n\t\t(style as any).webkitTapHighlightColor = \"rgba(255,255,255,0)\";\n\t\tstyle.webkitUserSelect = \"none\";\n\t\tstyle.setProperty(\"-khtml-user-select\", \"none\");\n\t\tstyle.setProperty(\"-moz-user-select\", \"none\");\n\t\tstyle.setProperty(\"-ms-user-select\", \"none\");\n\t\tstyle.userSelect = \"none\";\n\t}\n\n\tprotected initRootElement(): void {\n\t\tconst view = this.view;\n\t\tconst isOverlay = this._isOverlay;\n\t\tconst rootElement = this._rootElement;\n\t\tconst elementContainer = this._elementContainer;\n\n\t\t// Insert elements\n\t\tconst insertionPosition = isOverlay ? 2 : 0;\n\t\tconst children = rootElement.children;\n\t\tif (insertionPosition < children.length) {\n\t\t\tconst child = children[insertionPosition];\n\t\t\trootElement.insertBefore(view, child);\n\t\t\trootElement.insertBefore(elementContainer, child);\n\t\t} else {\n\t\t\trootElement.appendChild(view);\n\t\t\trootElement.appendChild(elementContainer);\n\t\t}\n\n\t\tif (isOverlay) {\n\t\t\tconst stage = this.stage;\n\t\t\tconst oldOnChildrenChange = (stage as any).onChildrenChange;\n\t\t\t(stage as any).onChildrenChange = (): void => {\n\t\t\t\tthis.onStageDirty();\n\t\t\t\toldOnChildrenChange.call(stage);\n\t\t\t};\n\t\t}\n\n\t\t// Init styles\n\t\tconst rootElementStyle = rootElement.style;\n\t\tif (rootElement !== document.body) {\n\t\t\tconst rootElementStylePosition = window.getComputedStyle(rootElement).position;\n\t\t\tif (rootElementStylePosition === \"static\") {\n\t\t\t\trootElementStyle.position = \"relative\";\n\t\t\t}\n\t\t}\n\t\trootElementStyle.margin = \"0\";\n\t\trootElementStyle.padding = \"0\";\n\t\trootElementStyle.overflow = \"hidden\";\n\t}\n\n\tprotected initFocusHandling(): void {\n\t\tconst view = this.view;\n\t\tconst stage = this.stage;\n\t\tconst focusController = this.getFocusController();\n\n\t\tview.setAttribute(\"tabindex\", \"0\");\n\n\t\tDControllers.getKeyboardController().init(view, stage, focusController);\n\n\t\tconst interactionManager = this.renderer.plugins.interaction;\n\t\tinteractionManager.on(UtilPointerEvent.down, (e: interaction.InteractionEvent): void => {\n\t\t\tif (e.target == null || e.target === stage) {\n\t\t\t\tfocusController.clear();\n\t\t\t}\n\t\t});\n\t}\n\n\tprotected initResizeHandling(): void {\n\t\tconst options = this._options;\n\t\tconst isWidthFixed = options.isWidthFixed();\n\t\tconst isHeightFixed = options.isHeightFixed();\n\t\tif (!isWidthFixed || !isHeightFixed) {\n\t\t\tconst onResizeBound = (): void => {\n\t\t\t\tthis.onResize();\n\t\t\t};\n\t\t\tif (window.ResizeObserver != null) {\n\t\t\t\tnew ResizeObserver(onResizeBound).observe(this._rootElement);\n\t\t\t} else {\n\t\t\t\twindow.addEventListener(\"resize\", onResizeBound);\n\t\t\t\twindow.addEventListener(\"orientationchange\", onResizeBound);\n\t\t\t}\n\t\t}\n\t}\n\n\tprotected onResize(): void {\n\t\tconst options = this._options;\n\t\tconst bboxes = this._rootElement.getClientRects();\n\t\tif (bboxes.length <= 0) {\n\t\t\t// The root element size is (0, 0) and not visible.\n\t\t\t// In this case, skip the resizing.\n\t\t\treturn;\n\t\t}\n\t\tconst bbox = bboxes[0];\n\t\tconst newWidth = options.isWidthFixed() ? options.getWidth() : bbox.width;\n\t\tconst newHeight = options.isHeightFixed() ? options.getHeight() : bbox.height;\n\t\tthis.renderer.resize(newWidth, newHeight);\n\n\t\tconst padding = this._padding;\n\t\tconst children = this.stage.children;\n\t\tfor (let i = 0, imax = children.length; i < imax; ++i) {\n\t\t\tconst child = children[i];\n\t\t\tif (child instanceof DBase) {\n\t\t\t\tchild.onParentResize(newWidth, newHeight, padding);\n\t\t\t}\n\t\t}\n\n\t\tthis.update();\n\t}\n\n\tprotected initWheelHandling(): void {\n\t\tconst global = new Point();\n\t\tconst util = UtilWheelEvent.getInstance();\n\t\tconst interactionManager = this.renderer.plugins.interaction;\n\t\tutil.on(this.view, (e: WheelEvent | Event): void => {\n\t\t\tconst wheelEvent = e as WheelEvent;\n\t\t\tUtilPointerEvent.toGlobal(wheelEvent, interactionManager, global);\n\t\t\tlet current = interactionManager.hitTest(global);\n\t\t\tconst deltas = util.normalize(e);\n\t\t\tif (deltas != null) {\n\t\t\t\twhile (current != null) {\n\t\t\t\t\tif (isWheelable(current)) {\n\t\t\t\t\t\tif (current.onWheel(wheelEvent, deltas, global)) {\n\t\t\t\t\t\t\twheelEvent.preventDefault();\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tcurrent = current.parent;\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t}\n\n\tprotected initDoubleClickHandling(): void {\n\t\tconst focusController = this.getFocusController();\n\t\tconst interactionManager = this.renderer.plugins.interaction;\n\t\tUtilPointerEvent.onDblClick(this.view, (e: MouseEvent | TouchEvent): void => {\n\t\t\tconst focused = focusController.get();\n\t\t\tif (focused != null) {\n\t\t\t\tlet current: DFocusable | DFocusableContainer | null = focused;\n\t\t\t\twhile (current != null) {\n\t\t\t\t\tif (isDblClickable(current)) {\n\t\t\t\t\t\tif (current.onDblClick(e, interactionManager)) {\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tcurrent = current.parent;\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t}\n\n\tlock(): void {\n\t\tthis._isLocked = true;\n\t}\n\n\tunlock(): void {\n\t\tthis._isLocked = false;\n\t}\n\n\tupdate(): void {\n\t\tif (!this._isLocked && this._renderId == null) {\n\t\t\tthis._renderId = requestAnimationFrame(this._renderBound);\n\t\t}\n\t}\n\n\tprotected onStageDirty(): void {\n\t\t// Update the visibility if this is a overlay layer.\n\t\tif (this._isOverlay) {\n\t\t\tif (0 < this.stage.children.length) {\n\t\t\t\t// There are more than one children,\n\t\t\t\t// therefore must be visible.\n\t\t\t\tif (!this._isVisible) {\n\t\t\t\t\tthis._isVisible = true;\n\t\t\t\t\tthis.view.style.display = \"block\";\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\t// There is no child,\n\t\t\t\t// therefore must not be visible.\n\t\t\t\tif (this._isVisible) {\n\t\t\t\t\tthis._isVisible = false;\n\t\t\t\t\tthis.view.style.display = \"none\";\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\trender(): void {\n\t\tthis.reflow();\n\n\t\t// Please note why the following line is here.\n\t\t//\n\t\t// Before this line, the update method does not enque a rendering task\n\t\t// because `this._renderId` is not null. As a result, this prevents\n\t\t// an unintentional rendering loop caused by the refit or the reflow.\n\t\t//\n\t\t// After this line, the update method enques a rendering task.\n\t\t// Namely, in the DisplayObject#render(Renderer) method, allowed to enque\n\t\t// a rendering task. For instance, please refer to the DDiagramShape#update().\n\t\tthis._renderId = null;\n\n\t\t// Render\n\t\tsuper.render();\n\t}\n\n\tget width(): number {\n\t\treturn this.screen.width;\n\t}\n\n\tget height(): number {\n\t\treturn this.screen.height;\n\t}\n\n\tget padding(): DPadding {\n\t\treturn this._padding;\n\t}\n\n\treflow(): void {\n\t\tconst children = this.stage.children;\n\t\tfor (let ilimit = 0, limit = this._reflowLimit; ilimit < limit; ++ilimit) {\n\t\t\tlet isDirty = false;\n\t\t\tfor (let i = 0, imax = children.length; i < imax; ++i) {\n\t\t\t\tconst child = children[i];\n\t\t\t\tif (child instanceof DBase) {\n\t\t\t\t\tchild.reflow();\n\t\t\t\t\tisDirty =\n\t\t\t\t\t\tisDirty || child.isDirty() || child.hasDirty() || child.isHierarchyDirty();\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// If DBases are changed during the `reflow` process, need to reflow again.\n\t\t\tif (!isDirty) {\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t}\n\n\tgetFocusController(): DControllerFocus {\n\t\treturn this.application.getFocusController();\n\t}\n\n\tgetRootElement(): HTMLElement {\n\t\treturn this._rootElement;\n\t}\n\n\tgetElementContainer(): HTMLElement {\n\t\treturn this._elementContainer;\n\t}\n\n\tgetDynamicFontAtlases(): DynamicFontAtlases {\n\t\tif (this._dynamicFontAtlases == null) {\n\t\t\tthis._dynamicFontAtlases = new DynamicFontAtlases(this);\n\t\t}\n\t\treturn this._dynamicFontAtlases;\n\t}\n}\n"]}
|
|
@@ -67,7 +67,7 @@ var DBaseBackgroundMeshGeometry = /** @class */ (function (_super) {
|
|
|
67
67
|
var w = this._width;
|
|
68
68
|
var h = this._height;
|
|
69
69
|
var r = Math.min(0.5 * w, 0.5 * h, this._cornerRadius);
|
|
70
|
-
var a =
|
|
70
|
+
var a = 0.5 / resolution;
|
|
71
71
|
var x0 = 0;
|
|
72
72
|
var x1 = r;
|
|
73
73
|
var x2 = w - r;
|
|
@@ -100,7 +100,7 @@ var DBaseBackgroundMeshGeometry = /** @class */ (function (_super) {
|
|
|
100
100
|
this.fillVertices(vertices, uvs, iv, iuv, n, x1, y1, r, a, tlt);
|
|
101
101
|
}
|
|
102
102
|
else {
|
|
103
|
-
this.fillVertices(vertices, uvs, iv, iuv, n, x0, y0, 0,
|
|
103
|
+
this.fillVertices(vertices, uvs, iv, iuv, n, x0, y0, 0, a, tlt);
|
|
104
104
|
}
|
|
105
105
|
this.fillIndices(indices, ia, ii, n);
|
|
106
106
|
iv += n4;
|
|
@@ -112,7 +112,7 @@ var DBaseBackgroundMeshGeometry = /** @class */ (function (_super) {
|
|
|
112
112
|
this.fillVertices(vertices, uvs, iv, iuv, n, x2, y1, r, a, ttr);
|
|
113
113
|
}
|
|
114
114
|
else {
|
|
115
|
-
this.fillVertices(vertices, uvs, iv, iuv, n, x3, y0, 0,
|
|
115
|
+
this.fillVertices(vertices, uvs, iv, iuv, n, x3, y0, 0, a, ttr);
|
|
116
116
|
}
|
|
117
117
|
this.fillIndices(indices, ia, ii, n);
|
|
118
118
|
iv += n4;
|
|
@@ -124,7 +124,7 @@ var DBaseBackgroundMeshGeometry = /** @class */ (function (_super) {
|
|
|
124
124
|
this.fillVertices(vertices, uvs, iv, iuv, n, x2, y2, r, a, trb);
|
|
125
125
|
}
|
|
126
126
|
else {
|
|
127
|
-
this.fillVertices(vertices, uvs, iv, iuv, n, x3, y3, 0,
|
|
127
|
+
this.fillVertices(vertices, uvs, iv, iuv, n, x3, y3, 0, a, trb);
|
|
128
128
|
}
|
|
129
129
|
this.fillIndices(indices, ia, ii, n);
|
|
130
130
|
iv += n4;
|
|
@@ -136,7 +136,7 @@ var DBaseBackgroundMeshGeometry = /** @class */ (function (_super) {
|
|
|
136
136
|
this.fillVertices(vertices, uvs, iv, iuv, n, x1, y2, r, a, tbl);
|
|
137
137
|
}
|
|
138
138
|
else {
|
|
139
|
-
this.fillVertices(vertices, uvs, iv, iuv, n, x0, y3, 0,
|
|
139
|
+
this.fillVertices(vertices, uvs, iv, iuv, n, x0, y3, 0, a, tbl);
|
|
140
140
|
}
|
|
141
141
|
this.fillIndicesEnd(indices, ia, ii, n);
|
|
142
142
|
iv += n4;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"d-base-background-mesh-geometry.js","sourceRoot":"","sources":["../../../src/main/typescript/wcardinal/ui/d-base-background-mesh-geometry.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { Renderer } from \"pixi.js\";\nimport { DBaseMeshGeometry, DBaseMeshGeometryTable } from \"./d-base-mesh-geometry\";\nimport { DCornerMask } from \"./d-corner-mask\";\n\nexport class DBaseBackgroundMeshGeometry extends DBaseMeshGeometry {\n\tconstructor() {\n\t\tsuper(\n\t\t\tnew Float32Array(16 * DBaseMeshGeometry.N),\n\t\t\tnew Float32Array(16 * DBaseMeshGeometry.N),\n\t\t\tnew Uint16Array(3 * (12 * DBaseMeshGeometry.N - 2))\n\t\t);\n\t}\n\n\tprotected fillVertices(\n\t\tvertices: Float32Array,\n\t\tuvs: Float32Array,\n\t\tiv: number,\n\t\tiuv: number,\n\t\tn: number,\n\t\tx: number,\n\t\ty: number,\n\t\tr: number,\n\t\tdr: number,\n\t\ttable: DBaseMeshGeometryTable\n\t): void {\n\t\tconst cos = table.cos;\n\t\tconst sin = table.sin;\n\t\tconst r1 = r + dr;\n\t\tfor (let i = 0; i < n; ++i) {\n\t\t\tconst c = cos[i];\n\t\t\tconst s = sin[i];\n\t\t\tvertices[++iv] = x + c * r;\n\t\t\tvertices[++iv] = y + s * r;\n\t\t\tvertices[++iv] = x + c * r1;\n\t\t\tvertices[++iv] = y + s * r1;\n\t\t\tuvs[++iuv] = 0.5;\n\t\t\tuvs[++iuv] = 0.5;\n\t\t\tuvs[++iuv] = 0.5 * (1 + c);\n\t\t\tuvs[++iuv] = 0.5 * (1 + s);\n\t\t}\n\t}\n\n\tprotected fillIndices(indices: Uint16Array, ia: number, ii: number, n: number): void {\n\t\tfor (let i = 0; i < n; ++i) {\n\t\t\tindices[++ii] = ia + 0;\n\t\t\tindices[++ii] = ia + 1;\n\t\t\tindices[++ii] = ia + 2;\n\n\t\t\tindices[++ii] = ia + 2;\n\t\t\tindices[++ii] = ia + 1;\n\t\t\tindices[++ii] = ia + 3;\n\t\t\tia += 2;\n\t\t}\n\t}\n\n\tprotected fillIndicesEnd(indices: Uint16Array, ia: number, ii: number, n: number): void {\n\t\tfor (let i = 0, imax = n - 1; i < imax; ++i) {\n\t\t\tindices[++ii] = ia + 0;\n\t\t\tindices[++ii] = ia + 1;\n\t\t\tindices[++ii] = ia + 2;\n\n\t\t\tindices[++ii] = ia + 2;\n\t\t\tindices[++ii] = ia + 1;\n\t\t\tindices[++ii] = ia + 3;\n\t\t\tia += 2;\n\t\t}\n\n\t\tindices[++ii] = ia + 0;\n\t\tindices[++ii] = ia + 1;\n\t\tindices[++ii] = 0;\n\n\t\tindices[++ii] = 0;\n\t\tindices[++ii] = ia + 1;\n\t\tindices[++ii] = 1;\n\t\tia += 2;\n\t}\n\n\tupdate(renderer: Renderer): void {\n\t\tconst resolution = renderer.resolution;\n\t\tif (this._isDirty || this._resolution !== resolution) {\n\t\t\tthis._isDirty = false;\n\t\t\tthis._resolution = resolution;\n\n\t\t\tconst vertices = this._vertices;\n\t\t\tconst uvs = this._uvs;\n\t\t\tconst indices = this._indices;\n\n\t\t\tconst w = this._width;\n\t\t\tconst h = this._height;\n\t\t\tconst r = Math.min(0.5 * w, 0.5 * h, this._cornerRadius);\n\t\t\tconst a = 1 / resolution;\n\n\t\t\tconst x0 = 0;\n\t\t\tconst x1 = r;\n\t\t\tconst x2 = w - r;\n\t\t\tconst x3 = w;\n\n\t\t\tconst y0 = 0;\n\t\t\tconst y1 = r;\n\t\t\tconst y2 = h - r;\n\t\t\tconst y3 = h;\n\n\t\t\tconst cornerMask = this._cornerMask;\n\t\t\tconst ctl = !(cornerMask & DCornerMask.TOP_LEFT);\n\t\t\tconst ctr = !(cornerMask & DCornerMask.TOP_RIGHT);\n\t\t\tconst cbl = !(cornerMask & DCornerMask.BOTTOM_LEFT);\n\t\t\tconst cbr = !(cornerMask & DCornerMask.BOTTOM_RIGHT);\n\n\t\t\t// Vertices & UVs\n\t\t\tlet iv = -1;\n\t\t\tlet iuv = -1;\n\t\t\tlet ia = 0;\n\t\t\tlet ii = -1;\n\n\t\t\tconst n = DBaseMeshGeometry.N;\n\t\t\tconst n4 = n << 2;\n\t\t\tconst n2 = n << 1;\n\t\t\tconst n6 = 6 * n;\n\n\t\t\tconst tables = this.getTables();\n\t\t\tconst tlt = tables[0];\n\t\t\tconst ttr = tables[1];\n\t\t\tconst trb = tables[2];\n\t\t\tconst tbl = tables[3];\n\n\t\t\t// left -> top\n\t\t\tif (ctl) {\n\t\t\t\tthis.fillVertices(vertices, uvs, iv, iuv, n, x1, y1, r, a, tlt);\n\t\t\t} else {\n\t\t\t\tthis.fillVertices(vertices, uvs, iv, iuv, n, x0, y0, 0, 0, tlt);\n\t\t\t}\n\t\t\tthis.fillIndices(indices, ia, ii, n);\n\t\t\tiv += n4;\n\t\t\tiuv += n4;\n\t\t\tia += n2;\n\t\t\tii += n6;\n\n\t\t\t// top -> right\n\t\t\tif (ctr) {\n\t\t\t\tthis.fillVertices(vertices, uvs, iv, iuv, n, x2, y1, r, a, ttr);\n\t\t\t} else {\n\t\t\t\tthis.fillVertices(vertices, uvs, iv, iuv, n, x3, y0, 0, 0, ttr);\n\t\t\t}\n\t\t\tthis.fillIndices(indices, ia, ii, n);\n\t\t\tiv += n4;\n\t\t\tiuv += n4;\n\t\t\tia += n2;\n\t\t\tii += n6;\n\n\t\t\t// right -> bottom\n\t\t\tif (cbr) {\n\t\t\t\tthis.fillVertices(vertices, uvs, iv, iuv, n, x2, y2, r, a, trb);\n\t\t\t} else {\n\t\t\t\tthis.fillVertices(vertices, uvs, iv, iuv, n, x3, y3, 0, 0, trb);\n\t\t\t}\n\t\t\tthis.fillIndices(indices, ia, ii, n);\n\t\t\tiv += n4;\n\t\t\tiuv += n4;\n\t\t\tia += n2;\n\t\t\tii += n6;\n\n\t\t\t// bottom -> left\n\t\t\tif (cbl) {\n\t\t\t\tthis.fillVertices(vertices, uvs, iv, iuv, n, x1, y2, r, a, tbl);\n\t\t\t} else {\n\t\t\t\tthis.fillVertices(vertices, uvs, iv, iuv, n, x0, y3, 0, 0, tbl);\n\t\t\t}\n\t\t\tthis.fillIndicesEnd(indices, ia, ii, n);\n\t\t\tiv += n4;\n\t\t\tiuv += n4;\n\t\t\tia += n2;\n\t\t\tii += n6;\n\n\t\t\t// Center\n\t\t\tia = 2;\n\t\t\tfor (let i = 1, imax = 4 * n - 1; i < imax; i += 1, ia += 2) {\n\t\t\t\tindices[++ii] = 0;\n\t\t\t\tindices[++ii] = ia;\n\t\t\t\tindices[++ii] = ia + 2;\n\t\t\t}\n\n\t\t\tthis._vertexBuffer.update();\n\t\t\tthis._uvBuffer.update();\n\t\t\tthis._indexBuffer.update();\n\t\t}\n\t}\n}\n"]}
|
|
1
|
+
{"version":3,"file":"d-base-background-mesh-geometry.js","sourceRoot":"","sources":["../../../src/main/typescript/wcardinal/ui/d-base-background-mesh-geometry.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { Renderer } from \"pixi.js\";\nimport { DBaseMeshGeometry, DBaseMeshGeometryTable } from \"./d-base-mesh-geometry\";\nimport { DCornerMask } from \"./d-corner-mask\";\n\nexport class DBaseBackgroundMeshGeometry extends DBaseMeshGeometry {\n\tconstructor() {\n\t\tsuper(\n\t\t\tnew Float32Array(16 * DBaseMeshGeometry.N),\n\t\t\tnew Float32Array(16 * DBaseMeshGeometry.N),\n\t\t\tnew Uint16Array(3 * (12 * DBaseMeshGeometry.N - 2))\n\t\t);\n\t}\n\n\tprotected fillVertices(\n\t\tvertices: Float32Array,\n\t\tuvs: Float32Array,\n\t\tiv: number,\n\t\tiuv: number,\n\t\tn: number,\n\t\tx: number,\n\t\ty: number,\n\t\tr: number,\n\t\tdr: number,\n\t\ttable: DBaseMeshGeometryTable\n\t): void {\n\t\tconst cos = table.cos;\n\t\tconst sin = table.sin;\n\t\tconst r1 = r + dr;\n\t\tfor (let i = 0; i < n; ++i) {\n\t\t\tconst c = cos[i];\n\t\t\tconst s = sin[i];\n\t\t\tvertices[++iv] = x + c * r;\n\t\t\tvertices[++iv] = y + s * r;\n\t\t\tvertices[++iv] = x + c * r1;\n\t\t\tvertices[++iv] = y + s * r1;\n\t\t\tuvs[++iuv] = 0.5;\n\t\t\tuvs[++iuv] = 0.5;\n\t\t\tuvs[++iuv] = 0.5 * (1 + c);\n\t\t\tuvs[++iuv] = 0.5 * (1 + s);\n\t\t}\n\t}\n\n\tprotected fillIndices(indices: Uint16Array, ia: number, ii: number, n: number): void {\n\t\tfor (let i = 0; i < n; ++i) {\n\t\t\tindices[++ii] = ia + 0;\n\t\t\tindices[++ii] = ia + 1;\n\t\t\tindices[++ii] = ia + 2;\n\n\t\t\tindices[++ii] = ia + 2;\n\t\t\tindices[++ii] = ia + 1;\n\t\t\tindices[++ii] = ia + 3;\n\t\t\tia += 2;\n\t\t}\n\t}\n\n\tprotected fillIndicesEnd(indices: Uint16Array, ia: number, ii: number, n: number): void {\n\t\tfor (let i = 0, imax = n - 1; i < imax; ++i) {\n\t\t\tindices[++ii] = ia + 0;\n\t\t\tindices[++ii] = ia + 1;\n\t\t\tindices[++ii] = ia + 2;\n\n\t\t\tindices[++ii] = ia + 2;\n\t\t\tindices[++ii] = ia + 1;\n\t\t\tindices[++ii] = ia + 3;\n\t\t\tia += 2;\n\t\t}\n\n\t\tindices[++ii] = ia + 0;\n\t\tindices[++ii] = ia + 1;\n\t\tindices[++ii] = 0;\n\n\t\tindices[++ii] = 0;\n\t\tindices[++ii] = ia + 1;\n\t\tindices[++ii] = 1;\n\t\tia += 2;\n\t}\n\n\tupdate(renderer: Renderer): void {\n\t\tconst resolution = renderer.resolution;\n\t\tif (this._isDirty || this._resolution !== resolution) {\n\t\t\tthis._isDirty = false;\n\t\t\tthis._resolution = resolution;\n\n\t\t\tconst vertices = this._vertices;\n\t\t\tconst uvs = this._uvs;\n\t\t\tconst indices = this._indices;\n\n\t\t\tconst w = this._width;\n\t\t\tconst h = this._height;\n\t\t\tconst r = Math.min(0.5 * w, 0.5 * h, this._cornerRadius);\n\t\t\tconst a = 0.5 / resolution;\n\n\t\t\tconst x0 = 0;\n\t\t\tconst x1 = r;\n\t\t\tconst x2 = w - r;\n\t\t\tconst x3 = w;\n\n\t\t\tconst y0 = 0;\n\t\t\tconst y1 = r;\n\t\t\tconst y2 = h - r;\n\t\t\tconst y3 = h;\n\n\t\t\tconst cornerMask = this._cornerMask;\n\t\t\tconst ctl = !(cornerMask & DCornerMask.TOP_LEFT);\n\t\t\tconst ctr = !(cornerMask & DCornerMask.TOP_RIGHT);\n\t\t\tconst cbl = !(cornerMask & DCornerMask.BOTTOM_LEFT);\n\t\t\tconst cbr = !(cornerMask & DCornerMask.BOTTOM_RIGHT);\n\n\t\t\t// Vertices & UVs\n\t\t\tlet iv = -1;\n\t\t\tlet iuv = -1;\n\t\t\tlet ia = 0;\n\t\t\tlet ii = -1;\n\n\t\t\tconst n = DBaseMeshGeometry.N;\n\t\t\tconst n4 = n << 2;\n\t\t\tconst n2 = n << 1;\n\t\t\tconst n6 = 6 * n;\n\n\t\t\tconst tables = this.getTables();\n\t\t\tconst tlt = tables[0];\n\t\t\tconst ttr = tables[1];\n\t\t\tconst trb = tables[2];\n\t\t\tconst tbl = tables[3];\n\n\t\t\t// left -> top\n\t\t\tif (ctl) {\n\t\t\t\tthis.fillVertices(vertices, uvs, iv, iuv, n, x1, y1, r, a, tlt);\n\t\t\t} else {\n\t\t\t\tthis.fillVertices(vertices, uvs, iv, iuv, n, x0, y0, 0, a, tlt);\n\t\t\t}\n\t\t\tthis.fillIndices(indices, ia, ii, n);\n\t\t\tiv += n4;\n\t\t\tiuv += n4;\n\t\t\tia += n2;\n\t\t\tii += n6;\n\n\t\t\t// top -> right\n\t\t\tif (ctr) {\n\t\t\t\tthis.fillVertices(vertices, uvs, iv, iuv, n, x2, y1, r, a, ttr);\n\t\t\t} else {\n\t\t\t\tthis.fillVertices(vertices, uvs, iv, iuv, n, x3, y0, 0, a, ttr);\n\t\t\t}\n\t\t\tthis.fillIndices(indices, ia, ii, n);\n\t\t\tiv += n4;\n\t\t\tiuv += n4;\n\t\t\tia += n2;\n\t\t\tii += n6;\n\n\t\t\t// right -> bottom\n\t\t\tif (cbr) {\n\t\t\t\tthis.fillVertices(vertices, uvs, iv, iuv, n, x2, y2, r, a, trb);\n\t\t\t} else {\n\t\t\t\tthis.fillVertices(vertices, uvs, iv, iuv, n, x3, y3, 0, a, trb);\n\t\t\t}\n\t\t\tthis.fillIndices(indices, ia, ii, n);\n\t\t\tiv += n4;\n\t\t\tiuv += n4;\n\t\t\tia += n2;\n\t\t\tii += n6;\n\n\t\t\t// bottom -> left\n\t\t\tif (cbl) {\n\t\t\t\tthis.fillVertices(vertices, uvs, iv, iuv, n, x1, y2, r, a, tbl);\n\t\t\t} else {\n\t\t\t\tthis.fillVertices(vertices, uvs, iv, iuv, n, x0, y3, 0, a, tbl);\n\t\t\t}\n\t\t\tthis.fillIndicesEnd(indices, ia, ii, n);\n\t\t\tiv += n4;\n\t\t\tiuv += n4;\n\t\t\tia += n2;\n\t\t\tii += n6;\n\n\t\t\t// Center\n\t\t\tia = 2;\n\t\t\tfor (let i = 1, imax = 4 * n - 1; i < imax; i += 1, ia += 2) {\n\t\t\t\tindices[++ii] = 0;\n\t\t\t\tindices[++ii] = ia;\n\t\t\t\tindices[++ii] = ia + 2;\n\t\t\t}\n\n\t\t\tthis._vertexBuffer.update();\n\t\t\tthis._uvBuffer.update();\n\t\t\tthis._indexBuffer.update();\n\t\t}\n\t}\n}\n"]}
|
|
@@ -48,30 +48,53 @@ var DBaseBorderMeshGeometry = /** @class */ (function (_super) {
|
|
|
48
48
|
var r3 = r2 + dr;
|
|
49
49
|
var cos = table.cos;
|
|
50
50
|
var sin = table.sin;
|
|
51
|
-
if (r0
|
|
52
|
-
var
|
|
53
|
-
var
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
51
|
+
if (r0 <= 0) {
|
|
52
|
+
var c0 = cos[0] + cos[n - 1];
|
|
53
|
+
var s0 = sin[0] + sin[n - 1];
|
|
54
|
+
if (r1 <= 0) {
|
|
55
|
+
if (r <= 0) {
|
|
56
|
+
for (var i = 0; i < n; ++i) {
|
|
57
|
+
var c = cos[i];
|
|
58
|
+
var s = sin[i];
|
|
59
|
+
vertices[++iv] = x + c0 * r0;
|
|
60
|
+
vertices[++iv] = y + s0 * r0;
|
|
61
|
+
vertices[++iv] = x + c0 * r1;
|
|
62
|
+
vertices[++iv] = y + s0 * r1;
|
|
63
|
+
vertices[++iv] = x + c0 * r2;
|
|
64
|
+
vertices[++iv] = y + s0 * r2;
|
|
65
|
+
vertices[++iv] = x + c0 * r3;
|
|
66
|
+
vertices[++iv] = y + s0 * r3;
|
|
67
|
+
uvs[++iuv] = 0.5 * (1 + c);
|
|
68
|
+
uvs[++iuv] = 0.5 * (1 + s);
|
|
69
|
+
uvs[++iuv] = 0.5;
|
|
70
|
+
uvs[++iuv] = 0.5;
|
|
71
|
+
uvs[++iuv] = 0.5;
|
|
72
|
+
uvs[++iuv] = 0.5;
|
|
73
|
+
uvs[++iuv] = 0.5 * (1 + c);
|
|
74
|
+
uvs[++iuv] = 0.5 * (1 + s);
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
else {
|
|
78
|
+
for (var i = 0; i < n; ++i) {
|
|
79
|
+
var c = cos[i];
|
|
80
|
+
var s = sin[i];
|
|
81
|
+
vertices[++iv] = x + c0 * r0;
|
|
82
|
+
vertices[++iv] = y + s0 * r0;
|
|
83
|
+
vertices[++iv] = x + c0 * r1;
|
|
84
|
+
vertices[++iv] = y + s0 * r1;
|
|
85
|
+
vertices[++iv] = x + c * r2;
|
|
86
|
+
vertices[++iv] = y + s * r2;
|
|
87
|
+
vertices[++iv] = x + c * r3;
|
|
88
|
+
vertices[++iv] = y + s * r3;
|
|
89
|
+
uvs[++iuv] = 0.5 * (1 + c);
|
|
90
|
+
uvs[++iuv] = 0.5 * (1 + s);
|
|
91
|
+
uvs[++iuv] = 0.5;
|
|
92
|
+
uvs[++iuv] = 0.5;
|
|
93
|
+
uvs[++iuv] = 0.5;
|
|
94
|
+
uvs[++iuv] = 0.5;
|
|
95
|
+
uvs[++iuv] = 0.5 * (1 + c);
|
|
96
|
+
uvs[++iuv] = 0.5 * (1 + s);
|
|
97
|
+
}
|
|
75
98
|
}
|
|
76
99
|
}
|
|
77
100
|
else {
|
|
@@ -228,7 +251,7 @@ var DBaseBorderMeshGeometry = /** @class */ (function (_super) {
|
|
|
228
251
|
var h = this._height;
|
|
229
252
|
var bw = this._borderWidth;
|
|
230
253
|
var r = Math.min(0.5 * w, 0.5 * h, this._cornerRadius);
|
|
231
|
-
var a =
|
|
254
|
+
var a = 0.5 / resolution;
|
|
232
255
|
var x0 = 0;
|
|
233
256
|
var x1 = r;
|
|
234
257
|
var x2 = w - r;
|
|
@@ -267,15 +290,15 @@ var DBaseBorderMeshGeometry = /** @class */ (function (_super) {
|
|
|
267
290
|
this.fillVertices(vrtcs, uvs, iv, iuv, n, x1, y1, r, a, bw, tlt);
|
|
268
291
|
}
|
|
269
292
|
else {
|
|
270
|
-
this.fillVertices(vrtcs, uvs, iv, iuv, n, x1, y1, r,
|
|
293
|
+
this.fillVertices(vrtcs, uvs, iv, iuv, n, x1, y1, r, a, 0, tlt);
|
|
271
294
|
}
|
|
272
295
|
}
|
|
273
296
|
else {
|
|
274
297
|
if (bl || bt) {
|
|
275
|
-
this.fillVertices(vrtcs, uvs, iv, iuv, n, x0, y0, 0,
|
|
298
|
+
this.fillVertices(vrtcs, uvs, iv, iuv, n, x0, y0, 0, a, bw, tlt);
|
|
276
299
|
}
|
|
277
300
|
else {
|
|
278
|
-
this.fillVertices(vrtcs, uvs, iv, iuv, n, x0, y0, 0,
|
|
301
|
+
this.fillVertices(vrtcs, uvs, iv, iuv, n, x0, y0, 0, a, 0, tlt);
|
|
279
302
|
}
|
|
280
303
|
}
|
|
281
304
|
this.fillIndices(indices, ia, ii, n, bt, false);
|
|
@@ -289,15 +312,15 @@ var DBaseBorderMeshGeometry = /** @class */ (function (_super) {
|
|
|
289
312
|
this.fillVertices(vrtcs, uvs, iv, iuv, n, x2, y1, r, a, bw, ttr);
|
|
290
313
|
}
|
|
291
314
|
else {
|
|
292
|
-
this.fillVertices(vrtcs, uvs, iv, iuv, n, x2, y1, r,
|
|
315
|
+
this.fillVertices(vrtcs, uvs, iv, iuv, n, x2, y1, r, a, 0, ttr);
|
|
293
316
|
}
|
|
294
317
|
}
|
|
295
318
|
else {
|
|
296
319
|
if (bt || br) {
|
|
297
|
-
this.fillVertices(vrtcs, uvs, iv, iuv, n, x3, y0, 0,
|
|
320
|
+
this.fillVertices(vrtcs, uvs, iv, iuv, n, x3, y0, 0, a, bw, ttr);
|
|
298
321
|
}
|
|
299
322
|
else {
|
|
300
|
-
this.fillVertices(vrtcs, uvs, iv, iuv, n, x3, y0, 0,
|
|
323
|
+
this.fillVertices(vrtcs, uvs, iv, iuv, n, x3, y0, 0, a, 0, ttr);
|
|
301
324
|
}
|
|
302
325
|
}
|
|
303
326
|
this.fillIndices(indices, ia, ii, n, br, false);
|
|
@@ -311,15 +334,15 @@ var DBaseBorderMeshGeometry = /** @class */ (function (_super) {
|
|
|
311
334
|
this.fillVertices(vrtcs, uvs, iv, iuv, n, x2, y2, r, a, bw, trb);
|
|
312
335
|
}
|
|
313
336
|
else {
|
|
314
|
-
this.fillVertices(vrtcs, uvs, iv, iuv, n, x2, y2, r,
|
|
337
|
+
this.fillVertices(vrtcs, uvs, iv, iuv, n, x2, y2, r, a, 0, trb);
|
|
315
338
|
}
|
|
316
339
|
}
|
|
317
340
|
else {
|
|
318
341
|
if (br || bb) {
|
|
319
|
-
this.fillVertices(vrtcs, uvs, iv, iuv, n, x3, y3, 0,
|
|
342
|
+
this.fillVertices(vrtcs, uvs, iv, iuv, n, x3, y3, 0, a, bw, trb);
|
|
320
343
|
}
|
|
321
344
|
else {
|
|
322
|
-
this.fillVertices(vrtcs, uvs, iv, iuv, n, x3, y3, 0,
|
|
345
|
+
this.fillVertices(vrtcs, uvs, iv, iuv, n, x3, y3, 0, a, 0, trb);
|
|
323
346
|
}
|
|
324
347
|
}
|
|
325
348
|
this.fillIndices(indices, ia, ii, n, bb, false);
|
|
@@ -333,15 +356,15 @@ var DBaseBorderMeshGeometry = /** @class */ (function (_super) {
|
|
|
333
356
|
this.fillVertices(vrtcs, uvs, iv, iuv, n, x1, y2, r, a, bw, tbl);
|
|
334
357
|
}
|
|
335
358
|
else {
|
|
336
|
-
this.fillVertices(vrtcs, uvs, iv, iuv, n, x1, y2, r,
|
|
359
|
+
this.fillVertices(vrtcs, uvs, iv, iuv, n, x1, y2, r, a, 0, tbl);
|
|
337
360
|
}
|
|
338
361
|
}
|
|
339
362
|
else {
|
|
340
363
|
if (bb || bl) {
|
|
341
|
-
this.fillVertices(vrtcs, uvs, iv, iuv, n, x0, y3, 0,
|
|
364
|
+
this.fillVertices(vrtcs, uvs, iv, iuv, n, x0, y3, 0, a, bw, tbl);
|
|
342
365
|
}
|
|
343
366
|
else {
|
|
344
|
-
this.fillVertices(vrtcs, uvs, iv, iuv, n, x0, y3, 0,
|
|
367
|
+
this.fillVertices(vrtcs, uvs, iv, iuv, n, x0, y3, 0, a, 0, tbl);
|
|
345
368
|
}
|
|
346
369
|
}
|
|
347
370
|
this.fillIndices(indices, ia, ii, n, bl, true);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"d-base-border-mesh-geometry.js","sourceRoot":"","sources":["../../../src/main/typescript/wcardinal/ui/d-base-border-mesh-geometry.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { Renderer } from \"pixi.js\";\nimport { DBaseMeshGeometry, DBaseMeshGeometryTable } from \"./d-base-mesh-geometry\";\nimport { DBorderMask } from \"./d-border-mask\";\nimport { DCornerMask } from \"./d-corner-mask\";\n\nexport class DBaseBorderMeshGeometry extends DBaseMeshGeometry {\n\tprotected _borderWidth: number;\n\tprotected _borderMask: DBorderMask;\n\n\tconstructor() {\n\t\tsuper(\n\t\t\tnew Float32Array(32 * DBaseMeshGeometry.N),\n\t\t\tnew Float32Array(32 * DBaseMeshGeometry.N),\n\t\t\tnew Uint16Array(4 * 18 * DBaseMeshGeometry.N)\n\t\t);\n\n\t\tthis._borderWidth = 0;\n\t\tthis._borderMask = DBorderMask.NONE;\n\t}\n\n\tget borderWidth(): number {\n\t\treturn this._borderWidth;\n\t}\n\n\tset borderWidth(borderWidth: number) {\n\t\tif (this._borderWidth !== borderWidth) {\n\t\t\tthis._borderWidth = borderWidth;\n\t\t\tthis._isDirty = true;\n\t\t}\n\t}\n\n\tget borderMask(): DBorderMask {\n\t\treturn this._borderMask;\n\t}\n\n\tset borderMask(borderMask: DBorderMask) {\n\t\tif (this._borderMask !== borderMask) {\n\t\t\tthis._borderMask = borderMask;\n\t\t\tthis._isDirty = true;\n\t\t}\n\t}\n\n\tprotected fillVertices(\n\t\tvertices: Float32Array,\n\t\tuvs: Float32Array,\n\t\tiv: number,\n\t\tiuv: number,\n\t\tn: number,\n\t\tx: number,\n\t\ty: number,\n\t\tr: number,\n\t\tdr: number,\n\t\tborderWidth: number,\n\t\ttable: DBaseMeshGeometryTable\n\t): void {\n\t\tconst hw = 0.5 * borderWidth;\n\t\tconst r1 = r - hw;\n\t\tconst r2 = r + hw;\n\t\tconst r0 = r1 - dr;\n\t\tconst r3 = r2 + dr;\n\t\tconst cos = table.cos;\n\t\tconst sin = table.sin;\n\t\tif (r0 < 0) {\n\t\t\tconst m = n >> 1;\n\t\t\tconst c0 = cos[m];\n\t\t\tconst s0 = sin[m];\n\t\t\tif (r1 < 0) {\n\t\t\t\tfor (let i = 0; i < n; ++i) {\n\t\t\t\t\tconst c = cos[i];\n\t\t\t\t\tconst s = sin[i];\n\t\t\t\t\tvertices[++iv] = x + c0 * r0;\n\t\t\t\t\tvertices[++iv] = y + s0 * r0;\n\t\t\t\t\tvertices[++iv] = x + c0 * r1;\n\t\t\t\t\tvertices[++iv] = y + s0 * r1;\n\t\t\t\t\tvertices[++iv] = x + c * r2;\n\t\t\t\t\tvertices[++iv] = y + s * r2;\n\t\t\t\t\tvertices[++iv] = x + c * r3;\n\t\t\t\t\tvertices[++iv] = y + s * r3;\n\t\t\t\t\tuvs[++iuv] = 0.5 * (1 + c);\n\t\t\t\t\tuvs[++iuv] = 0.5 * (1 + s);\n\t\t\t\t\tuvs[++iuv] = 0.5;\n\t\t\t\t\tuvs[++iuv] = 0.5;\n\t\t\t\t\tuvs[++iuv] = 0.5;\n\t\t\t\t\tuvs[++iuv] = 0.5;\n\t\t\t\t\tuvs[++iuv] = 0.5 * (1 + c);\n\t\t\t\t\tuvs[++iuv] = 0.5 * (1 + s);\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tfor (let i = 0; i < n; ++i) {\n\t\t\t\t\tconst c = cos[i];\n\t\t\t\t\tconst s = sin[i];\n\t\t\t\t\tvertices[++iv] = x + c0 * r0;\n\t\t\t\t\tvertices[++iv] = y + s0 * r0;\n\t\t\t\t\tvertices[++iv] = x + c * r1;\n\t\t\t\t\tvertices[++iv] = y + s * r1;\n\t\t\t\t\tvertices[++iv] = x + c * r2;\n\t\t\t\t\tvertices[++iv] = y + s * r2;\n\t\t\t\t\tvertices[++iv] = x + c * r3;\n\t\t\t\t\tvertices[++iv] = y + s * r3;\n\t\t\t\t\tuvs[++iuv] = 0.5 * (1 + c);\n\t\t\t\t\tuvs[++iuv] = 0.5 * (1 + s);\n\t\t\t\t\tuvs[++iuv] = 0.5;\n\t\t\t\t\tuvs[++iuv] = 0.5;\n\t\t\t\t\tuvs[++iuv] = 0.5;\n\t\t\t\t\tuvs[++iuv] = 0.5;\n\t\t\t\t\tuvs[++iuv] = 0.5 * (1 + c);\n\t\t\t\t\tuvs[++iuv] = 0.5 * (1 + s);\n\t\t\t\t}\n\t\t\t}\n\t\t} else {\n\t\t\tfor (let i = 0; i < n; ++i) {\n\t\t\t\tconst c = cos[i];\n\t\t\t\tconst s = sin[i];\n\t\t\t\tvertices[++iv] = x + c * r0;\n\t\t\t\tvertices[++iv] = y + s * r0;\n\t\t\t\tvertices[++iv] = x + c * r1;\n\t\t\t\tvertices[++iv] = y + s * r1;\n\t\t\t\tvertices[++iv] = x + c * r2;\n\t\t\t\tvertices[++iv] = y + s * r2;\n\t\t\t\tvertices[++iv] = x + c * r3;\n\t\t\t\tvertices[++iv] = y + s * r3;\n\t\t\t\tuvs[++iuv] = 0.5 * (1 + c);\n\t\t\t\tuvs[++iuv] = 0.5 * (1 + s);\n\t\t\t\tuvs[++iuv] = 0.5;\n\t\t\t\tuvs[++iuv] = 0.5;\n\t\t\t\tuvs[++iuv] = 0.5;\n\t\t\t\tuvs[++iuv] = 0.5;\n\t\t\t\tuvs[++iuv] = 0.5 * (1 + c);\n\t\t\t\tuvs[++iuv] = 0.5 * (1 + s);\n\t\t\t}\n\t\t}\n\t}\n\n\tprotected fillIndices(\n\t\tindices: Uint16Array,\n\t\tia: number,\n\t\tii: number,\n\t\tn: number,\n\t\tend: boolean,\n\t\tloop: boolean\n\t): void {\n\t\tfor (let i = 0, imax = n - 1; i < imax; ++i) {\n\t\t\tindices[++ii] = ia + 0;\n\t\t\tindices[++ii] = ia + 1;\n\t\t\tindices[++ii] = ia + 4;\n\n\t\t\tindices[++ii] = ia + 4;\n\t\t\tindices[++ii] = ia + 1;\n\t\t\tindices[++ii] = ia + 5;\n\t\t\tia += 1;\n\n\t\t\tindices[++ii] = ia + 0;\n\t\t\tindices[++ii] = ia + 1;\n\t\t\tindices[++ii] = ia + 4;\n\n\t\t\tindices[++ii] = ia + 4;\n\t\t\tindices[++ii] = ia + 1;\n\t\t\tindices[++ii] = ia + 5;\n\t\t\tia += 1;\n\n\t\t\tindices[++ii] = ia + 0;\n\t\t\tindices[++ii] = ia + 1;\n\t\t\tindices[++ii] = ia + 4;\n\n\t\t\tindices[++ii] = ia + 4;\n\t\t\tindices[++ii] = ia + 1;\n\t\t\tindices[++ii] = ia + 5;\n\t\t\tia += 2;\n\t\t}\n\t\tif (end) {\n\t\t\tif (loop) {\n\t\t\t\tindices[++ii] = ia + 0;\n\t\t\t\tindices[++ii] = ia + 1;\n\t\t\t\tindices[++ii] = 0;\n\n\t\t\t\tindices[++ii] = 0;\n\t\t\t\tindices[++ii] = ia + 1;\n\t\t\t\tindices[++ii] = 1;\n\t\t\t\tia += 1;\n\n\t\t\t\tindices[++ii] = ia + 0;\n\t\t\t\tindices[++ii] = ia + 1;\n\t\t\t\tindices[++ii] = 1;\n\n\t\t\t\tindices[++ii] = 1;\n\t\t\t\tindices[++ii] = ia + 1;\n\t\t\t\tindices[++ii] = 2;\n\t\t\t\tia += 1;\n\n\t\t\t\tindices[++ii] = ia + 0;\n\t\t\t\tindices[++ii] = ia + 1;\n\t\t\t\tindices[++ii] = 2;\n\n\t\t\t\tindices[++ii] = 2;\n\t\t\t\tindices[++ii] = ia + 1;\n\t\t\t\tindices[++ii] = 3;\n\t\t\t\tia += 2;\n\t\t\t} else {\n\t\t\t\tindices[++ii] = ia + 0;\n\t\t\t\tindices[++ii] = ia + 1;\n\t\t\t\tindices[++ii] = ia + 4;\n\n\t\t\t\tindices[++ii] = ia + 4;\n\t\t\t\tindices[++ii] = ia + 1;\n\t\t\t\tindices[++ii] = ia + 5;\n\t\t\t\tia += 1;\n\n\t\t\t\tindices[++ii] = ia + 0;\n\t\t\t\tindices[++ii] = ia + 1;\n\t\t\t\tindices[++ii] = ia + 4;\n\n\t\t\t\tindices[++ii] = ia + 4;\n\t\t\t\tindices[++ii] = ia + 1;\n\t\t\t\tindices[++ii] = ia + 5;\n\t\t\t\tia += 1;\n\n\t\t\t\tindices[++ii] = ia + 0;\n\t\t\t\tindices[++ii] = ia + 1;\n\t\t\t\tindices[++ii] = ia + 4;\n\n\t\t\t\tindices[++ii] = ia + 4;\n\t\t\t\tindices[++ii] = ia + 1;\n\t\t\t\tindices[++ii] = ia + 5;\n\t\t\t\tia += 2;\n\t\t\t}\n\t\t} else {\n\t\t\tindices[++ii] = ia;\n\t\t\tindices[++ii] = ia;\n\t\t\tindices[++ii] = ia;\n\n\t\t\tindices[++ii] = ia;\n\t\t\tindices[++ii] = ia;\n\t\t\tindices[++ii] = ia;\n\t\t\tia += 1;\n\n\t\t\tindices[++ii] = ia;\n\t\t\tindices[++ii] = ia;\n\t\t\tindices[++ii] = ia;\n\n\t\t\tindices[++ii] = ia;\n\t\t\tindices[++ii] = ia;\n\t\t\tindices[++ii] = ia;\n\t\t\tia += 1;\n\n\t\t\tindices[++ii] = ia;\n\t\t\tindices[++ii] = ia;\n\t\t\tindices[++ii] = ia;\n\n\t\t\tindices[++ii] = ia;\n\t\t\tindices[++ii] = ia;\n\t\t\tindices[++ii] = ia;\n\t\t\tia += 2;\n\t\t}\n\t}\n\n\tupdate(renderer: Renderer): void {\n\t\tconst resolution = renderer.resolution;\n\t\tif (this._isDirty || this._resolution !== resolution) {\n\t\t\tthis._isDirty = false;\n\t\t\tthis._resolution = resolution;\n\n\t\t\tconst vrtcs = this._vertices;\n\t\t\tconst uvs = this._uvs;\n\t\t\tconst indices = this._indices;\n\n\t\t\tconst w = this._width;\n\t\t\tconst h = this._height;\n\t\t\tconst bw = this._borderWidth;\n\t\t\tconst r = Math.min(0.5 * w, 0.5 * h, this._cornerRadius);\n\t\t\tconst a = 1 / resolution;\n\n\t\t\tconst x0 = 0;\n\t\t\tconst x1 = r;\n\t\t\tconst x2 = w - r;\n\t\t\tconst x3 = w;\n\n\t\t\tconst y0 = 0;\n\t\t\tconst y1 = r;\n\t\t\tconst y2 = h - r;\n\t\t\tconst y3 = h;\n\n\t\t\tconst borderMask = this._borderMask;\n\t\t\tconst bt = !(borderMask & DBorderMask.TOP);\n\t\t\tconst bb = !(borderMask & DBorderMask.BOTTOM);\n\t\t\tconst bl = !(borderMask & DBorderMask.LEFT);\n\t\t\tconst br = !(borderMask & DBorderMask.RIGHT);\n\n\t\t\tconst cornerMask = this._cornerMask;\n\t\t\tconst ctl = !(cornerMask & DCornerMask.TOP_LEFT);\n\t\t\tconst ctr = !(cornerMask & DCornerMask.TOP_RIGHT);\n\t\t\tconst cbl = !(cornerMask & DCornerMask.BOTTOM_LEFT);\n\t\t\tconst cbr = !(cornerMask & DCornerMask.BOTTOM_RIGHT);\n\n\t\t\t// Vertices & UVs\n\t\t\tlet iv = -1;\n\t\t\tlet iuv = -1;\n\t\t\tlet ia = 0;\n\t\t\tlet ii = -1;\n\n\t\t\tconst n = DBaseMeshGeometry.N;\n\t\t\tconst n4 = n << 2;\n\t\t\tconst n8 = n << 3;\n\t\t\tconst n18 = 18 * n;\n\n\t\t\tconst tables = this.getTables();\n\t\t\tconst tlt = tables[0];\n\t\t\tconst ttr = tables[1];\n\t\t\tconst trb = tables[2];\n\t\t\tconst tbl = tables[3];\n\n\t\t\t// left -> top\n\t\t\tif (ctl) {\n\t\t\t\tif (bl || bt) {\n\t\t\t\t\tthis.fillVertices(vrtcs, uvs, iv, iuv, n, x1, y1, r, a, bw, tlt);\n\t\t\t\t} else {\n\t\t\t\t\tthis.fillVertices(vrtcs, uvs, iv, iuv, n, x1, y1, r, 0, 0, tlt);\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tif (bl || bt) {\n\t\t\t\t\tthis.fillVertices(vrtcs, uvs, iv, iuv, n, x0, y0, 0, 0, bw, tlt);\n\t\t\t\t} else {\n\t\t\t\t\tthis.fillVertices(vrtcs, uvs, iv, iuv, n, x0, y0, 0, 0, 0, tlt);\n\t\t\t\t}\n\t\t\t}\n\t\t\tthis.fillIndices(indices, ia, ii, n, bt, false);\n\t\t\tiv += n8;\n\t\t\tiuv += n8;\n\t\t\tia += n4;\n\t\t\tii += n18;\n\n\t\t\t// top -> right\n\t\t\tif (ctr) {\n\t\t\t\tif (bt || br) {\n\t\t\t\t\tthis.fillVertices(vrtcs, uvs, iv, iuv, n, x2, y1, r, a, bw, ttr);\n\t\t\t\t} else {\n\t\t\t\t\tthis.fillVertices(vrtcs, uvs, iv, iuv, n, x2, y1, r, 0, 0, ttr);\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tif (bt || br) {\n\t\t\t\t\tthis.fillVertices(vrtcs, uvs, iv, iuv, n, x3, y0, 0, 0, bw, ttr);\n\t\t\t\t} else {\n\t\t\t\t\tthis.fillVertices(vrtcs, uvs, iv, iuv, n, x3, y0, 0, 0, 0, ttr);\n\t\t\t\t}\n\t\t\t}\n\t\t\tthis.fillIndices(indices, ia, ii, n, br, false);\n\t\t\tiv += n8;\n\t\t\tiuv += n8;\n\t\t\tia += n4;\n\t\t\tii += n18;\n\n\t\t\t// right -> bottom\n\t\t\tif (cbr) {\n\t\t\t\tif (br || bb) {\n\t\t\t\t\tthis.fillVertices(vrtcs, uvs, iv, iuv, n, x2, y2, r, a, bw, trb);\n\t\t\t\t} else {\n\t\t\t\t\tthis.fillVertices(vrtcs, uvs, iv, iuv, n, x2, y2, r, 0, 0, trb);\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tif (br || bb) {\n\t\t\t\t\tthis.fillVertices(vrtcs, uvs, iv, iuv, n, x3, y3, 0, 0, bw, trb);\n\t\t\t\t} else {\n\t\t\t\t\tthis.fillVertices(vrtcs, uvs, iv, iuv, n, x3, y3, 0, 0, 0, trb);\n\t\t\t\t}\n\t\t\t}\n\t\t\tthis.fillIndices(indices, ia, ii, n, bb, false);\n\t\t\tiv += n8;\n\t\t\tiuv += n8;\n\t\t\tia += n4;\n\t\t\tii += n18;\n\n\t\t\t// bottom -> left\n\t\t\tif (cbl) {\n\t\t\t\tif (bb || bl) {\n\t\t\t\t\tthis.fillVertices(vrtcs, uvs, iv, iuv, n, x1, y2, r, a, bw, tbl);\n\t\t\t\t} else {\n\t\t\t\t\tthis.fillVertices(vrtcs, uvs, iv, iuv, n, x1, y2, r, 0, 0, tbl);\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tif (bb || bl) {\n\t\t\t\t\tthis.fillVertices(vrtcs, uvs, iv, iuv, n, x0, y3, 0, 0, bw, tbl);\n\t\t\t\t} else {\n\t\t\t\t\tthis.fillVertices(vrtcs, uvs, iv, iuv, n, x0, y3, 0, 0, 0, tbl);\n\t\t\t\t}\n\t\t\t}\n\t\t\tthis.fillIndices(indices, ia, ii, n, bl, true);\n\t\t\tiv += n8;\n\t\t\tiuv += n8;\n\t\t\tia += n4;\n\t\t\tii += n18;\n\n\t\t\tthis._vertexBuffer.update();\n\t\t\tthis._uvBuffer.update();\n\t\t\tthis._indexBuffer.update();\n\t\t}\n\t}\n}\n"]}
|
|
1
|
+
{"version":3,"file":"d-base-border-mesh-geometry.js","sourceRoot":"","sources":["../../../src/main/typescript/wcardinal/ui/d-base-border-mesh-geometry.ts"],"names":[],"mappings":"AAAA;;;GAGG;;AAGH,OAAO,EAAE,iBAAiB,EAA0B,MAAM,wBAAwB,CAAC;AACnF,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAE9C;IAA6C,2CAAiB;IAI7D;QAAA,YACC,kBACC,IAAI,YAAY,CAAC,EAAE,GAAG,iBAAiB,CAAC,CAAC,CAAC,EAC1C,IAAI,YAAY,CAAC,EAAE,GAAG,iBAAiB,CAAC,CAAC,CAAC,EAC1C,IAAI,WAAW,CAAC,CAAC,GAAG,EAAE,GAAG,iBAAiB,CAAC,CAAC,CAAC,CAC7C,SAID;QAFA,KAAI,CAAC,YAAY,GAAG,CAAC,CAAC;QACtB,KAAI,CAAC,WAAW,GAAG,WAAW,CAAC,IAAI,CAAC;;IACrC,CAAC;IAED,sBAAI,gDAAW;aAAf;YACC,OAAO,IAAI,CAAC,YAAY,CAAC;QAC1B,CAAC;aAED,UAAgB,WAAmB;YAClC,IAAI,IAAI,CAAC,YAAY,KAAK,WAAW,EAAE;gBACtC,IAAI,CAAC,YAAY,GAAG,WAAW,CAAC;gBAChC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;aACrB;QACF,CAAC;;;OAPA;IASD,sBAAI,+CAAU;aAAd;YACC,OAAO,IAAI,CAAC,WAAW,CAAC;QACzB,CAAC;aAED,UAAe,UAAuB;YACrC,IAAI,IAAI,CAAC,WAAW,KAAK,UAAU,EAAE;gBACpC,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC;gBAC9B,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;aACrB;QACF,CAAC;;;OAPA;IASS,8CAAY,GAAtB,UACC,QAAsB,EACtB,GAAiB,EACjB,EAAU,EACV,GAAW,EACX,CAAS,EACT,CAAS,EACT,CAAS,EACT,CAAS,EACT,EAAU,EACV,WAAmB,EACnB,KAA6B;QAE7B,IAAM,EAAE,GAAG,GAAG,GAAG,WAAW,CAAC;QAC7B,IAAM,EAAE,GAAG,CAAC,GAAG,EAAE,CAAC;QAClB,IAAM,EAAE,GAAG,CAAC,GAAG,EAAE,CAAC;QAClB,IAAM,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC;QACnB,IAAM,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC;QACnB,IAAM,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC;QACtB,IAAM,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC;QACtB,IAAI,EAAE,IAAI,CAAC,EAAE;YACZ,IAAM,EAAE,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;YAC/B,IAAM,EAAE,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;YAC/B,IAAI,EAAE,IAAI,CAAC,EAAE;gBACZ,IAAI,CAAC,IAAI,CAAC,EAAE;oBACX,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,EAAE;wBAC3B,IAAM,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;wBACjB,IAAM,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;wBACjB,QAAQ,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC;wBAC7B,QAAQ,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC;wBAC7B,QAAQ,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC;wBAC7B,QAAQ,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC;wBAC7B,QAAQ,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC;wBAC7B,QAAQ,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC;wBAC7B,QAAQ,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC;wBAC7B,QAAQ,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC;wBAC7B,GAAG,CAAC,EAAE,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;wBAC3B,GAAG,CAAC,EAAE,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;wBAC3B,GAAG,CAAC,EAAE,GAAG,CAAC,GAAG,GAAG,CAAC;wBACjB,GAAG,CAAC,EAAE,GAAG,CAAC,GAAG,GAAG,CAAC;wBACjB,GAAG,CAAC,EAAE,GAAG,CAAC,GAAG,GAAG,CAAC;wBACjB,GAAG,CAAC,EAAE,GAAG,CAAC,GAAG,GAAG,CAAC;wBACjB,GAAG,CAAC,EAAE,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;wBAC3B,GAAG,CAAC,EAAE,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;qBAC3B;iBACD;qBAAM;oBACN,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,EAAE;wBAC3B,IAAM,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;wBACjB,IAAM,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;wBACjB,QAAQ,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC;wBAC7B,QAAQ,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC;wBAC7B,QAAQ,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC;wBAC7B,QAAQ,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC;wBAC7B,QAAQ,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;wBAC5B,QAAQ,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;wBAC5B,QAAQ,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;wBAC5B,QAAQ,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;wBAC5B,GAAG,CAAC,EAAE,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;wBAC3B,GAAG,CAAC,EAAE,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;wBAC3B,GAAG,CAAC,EAAE,GAAG,CAAC,GAAG,GAAG,CAAC;wBACjB,GAAG,CAAC,EAAE,GAAG,CAAC,GAAG,GAAG,CAAC;wBACjB,GAAG,CAAC,EAAE,GAAG,CAAC,GAAG,GAAG,CAAC;wBACjB,GAAG,CAAC,EAAE,GAAG,CAAC,GAAG,GAAG,CAAC;wBACjB,GAAG,CAAC,EAAE,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;wBAC3B,GAAG,CAAC,EAAE,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;qBAC3B;iBACD;aACD;iBAAM;gBACN,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,EAAE;oBAC3B,IAAM,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;oBACjB,IAAM,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;oBACjB,QAAQ,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC;oBAC7B,QAAQ,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC;oBAC7B,QAAQ,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;oBAC5B,QAAQ,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;oBAC5B,QAAQ,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;oBAC5B,QAAQ,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;oBAC5B,QAAQ,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;oBAC5B,QAAQ,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;oBAC5B,GAAG,CAAC,EAAE,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;oBAC3B,GAAG,CAAC,EAAE,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;oBAC3B,GAAG,CAAC,EAAE,GAAG,CAAC,GAAG,GAAG,CAAC;oBACjB,GAAG,CAAC,EAAE,GAAG,CAAC,GAAG,GAAG,CAAC;oBACjB,GAAG,CAAC,EAAE,GAAG,CAAC,GAAG,GAAG,CAAC;oBACjB,GAAG,CAAC,EAAE,GAAG,CAAC,GAAG,GAAG,CAAC;oBACjB,GAAG,CAAC,EAAE,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;oBAC3B,GAAG,CAAC,EAAE,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;iBAC3B;aACD;SACD;aAAM;YACN,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,EAAE;gBAC3B,IAAM,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;gBACjB,IAAM,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;gBACjB,QAAQ,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;gBAC5B,QAAQ,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;gBAC5B,QAAQ,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;gBAC5B,QAAQ,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;gBAC5B,QAAQ,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;gBAC5B,QAAQ,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;gBAC5B,QAAQ,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;gBAC5B,QAAQ,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;gBAC5B,GAAG,CAAC,EAAE,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;gBAC3B,GAAG,CAAC,EAAE,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;gBAC3B,GAAG,CAAC,EAAE,GAAG,CAAC,GAAG,GAAG,CAAC;gBACjB,GAAG,CAAC,EAAE,GAAG,CAAC,GAAG,GAAG,CAAC;gBACjB,GAAG,CAAC,EAAE,GAAG,CAAC,GAAG,GAAG,CAAC;gBACjB,GAAG,CAAC,EAAE,GAAG,CAAC,GAAG,GAAG,CAAC;gBACjB,GAAG,CAAC,EAAE,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;gBAC3B,GAAG,CAAC,EAAE,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;aAC3B;SACD;IACF,CAAC;IAES,6CAAW,GAArB,UACC,OAAoB,EACpB,EAAU,EACV,EAAU,EACV,CAAS,EACT,GAAY,EACZ,IAAa;QAEb,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,IAAI,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,EAAE,CAAC,EAAE;YAC5C,OAAO,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;YACvB,OAAO,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;YACvB,OAAO,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;YAEvB,OAAO,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;YACvB,OAAO,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;YACvB,OAAO,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;YACvB,EAAE,IAAI,CAAC,CAAC;YAER,OAAO,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;YACvB,OAAO,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;YACvB,OAAO,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;YAEvB,OAAO,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;YACvB,OAAO,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;YACvB,OAAO,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;YACvB,EAAE,IAAI,CAAC,CAAC;YAER,OAAO,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;YACvB,OAAO,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;YACvB,OAAO,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;YAEvB,OAAO,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;YACvB,OAAO,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;YACvB,OAAO,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;YACvB,EAAE,IAAI,CAAC,CAAC;SACR;QACD,IAAI,GAAG,EAAE;YACR,IAAI,IAAI,EAAE;gBACT,OAAO,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;gBACvB,OAAO,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;gBACvB,OAAO,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC;gBAElB,OAAO,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC;gBAClB,OAAO,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;gBACvB,OAAO,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC;gBAClB,EAAE,IAAI,CAAC,CAAC;gBAER,OAAO,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;gBACvB,OAAO,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;gBACvB,OAAO,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC;gBAElB,OAAO,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC;gBAClB,OAAO,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;gBACvB,OAAO,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC;gBAClB,EAAE,IAAI,CAAC,CAAC;gBAER,OAAO,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;gBACvB,OAAO,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;gBACvB,OAAO,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC;gBAElB,OAAO,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC;gBAClB,OAAO,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;gBACvB,OAAO,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC;gBAClB,EAAE,IAAI,CAAC,CAAC;aACR;iBAAM;gBACN,OAAO,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;gBACvB,OAAO,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;gBACvB,OAAO,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;gBAEvB,OAAO,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;gBACvB,OAAO,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;gBACvB,OAAO,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;gBACvB,EAAE,IAAI,CAAC,CAAC;gBAER,OAAO,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;gBACvB,OAAO,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;gBACvB,OAAO,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;gBAEvB,OAAO,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;gBACvB,OAAO,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;gBACvB,OAAO,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;gBACvB,EAAE,IAAI,CAAC,CAAC;gBAER,OAAO,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;gBACvB,OAAO,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;gBACvB,OAAO,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;gBAEvB,OAAO,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;gBACvB,OAAO,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;gBACvB,OAAO,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;gBACvB,EAAE,IAAI,CAAC,CAAC;aACR;SACD;aAAM;YACN,OAAO,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,CAAC;YACnB,OAAO,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,CAAC;YACnB,OAAO,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,CAAC;YAEnB,OAAO,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,CAAC;YACnB,OAAO,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,CAAC;YACnB,OAAO,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,CAAC;YACnB,EAAE,IAAI,CAAC,CAAC;YAER,OAAO,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,CAAC;YACnB,OAAO,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,CAAC;YACnB,OAAO,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,CAAC;YAEnB,OAAO,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,CAAC;YACnB,OAAO,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,CAAC;YACnB,OAAO,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,CAAC;YACnB,EAAE,IAAI,CAAC,CAAC;YAER,OAAO,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,CAAC;YACnB,OAAO,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,CAAC;YACnB,OAAO,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,CAAC;YAEnB,OAAO,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,CAAC;YACnB,OAAO,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,CAAC;YACnB,OAAO,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,CAAC;YACnB,EAAE,IAAI,CAAC,CAAC;SACR;IACF,CAAC;IAED,wCAAM,GAAN,UAAO,QAAkB;QACxB,IAAM,UAAU,GAAG,QAAQ,CAAC,UAAU,CAAC;QACvC,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,WAAW,KAAK,UAAU,EAAE;YACrD,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;YACtB,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC;YAE9B,IAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC;YAC7B,IAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC;YACtB,IAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC;YAE9B,IAAM,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC;YACtB,IAAM,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC;YACvB,IAAM,EAAE,GAAG,IAAI,CAAC,YAAY,CAAC;YAC7B,IAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,EAAE,GAAG,GAAG,CAAC,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;YACzD,IAAM,CAAC,GAAG,GAAG,GAAG,UAAU,CAAC;YAE3B,IAAM,EAAE,GAAG,CAAC,CAAC;YACb,IAAM,EAAE,GAAG,CAAC,CAAC;YACb,IAAM,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC;YACjB,IAAM,EAAE,GAAG,CAAC,CAAC;YAEb,IAAM,EAAE,GAAG,CAAC,CAAC;YACb,IAAM,EAAE,GAAG,CAAC,CAAC;YACb,IAAM,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC;YACjB,IAAM,EAAE,GAAG,CAAC,CAAC;YAEb,IAAM,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC;YACpC,IAAM,EAAE,GAAG,CAAC,CAAC,UAAU,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC;YAC3C,IAAM,EAAE,GAAG,CAAC,CAAC,UAAU,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;YAC9C,IAAM,EAAE,GAAG,CAAC,CAAC,UAAU,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC;YAC5C,IAAM,EAAE,GAAG,CAAC,CAAC,UAAU,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC;YAE7C,IAAM,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC;YACpC,IAAM,GAAG,GAAG,CAAC,CAAC,UAAU,GAAG,WAAW,CAAC,QAAQ,CAAC,CAAC;YACjD,IAAM,GAAG,GAAG,CAAC,CAAC,UAAU,GAAG,WAAW,CAAC,SAAS,CAAC,CAAC;YAClD,IAAM,GAAG,GAAG,CAAC,CAAC,UAAU,GAAG,WAAW,CAAC,WAAW,CAAC,CAAC;YACpD,IAAM,GAAG,GAAG,CAAC,CAAC,UAAU,GAAG,WAAW,CAAC,YAAY,CAAC,CAAC;YAErD,iBAAiB;YACjB,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC;YACZ,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC;YACb,IAAI,EAAE,GAAG,CAAC,CAAC;YACX,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC;YAEZ,IAAM,CAAC,GAAG,iBAAiB,CAAC,CAAC,CAAC;YAC9B,IAAM,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;YAClB,IAAM,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;YAClB,IAAM,GAAG,GAAG,EAAE,GAAG,CAAC,CAAC;YAEnB,IAAM,MAAM,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;YAChC,IAAM,GAAG,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;YACtB,IAAM,GAAG,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;YACtB,IAAM,GAAG,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;YACtB,IAAM,GAAG,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;YAEtB,cAAc;YACd,IAAI,GAAG,EAAE;gBACR,IAAI,EAAE,IAAI,EAAE,EAAE;oBACb,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC;iBACjE;qBAAM;oBACN,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC;iBAChE;aACD;iBAAM;gBACN,IAAI,EAAE,IAAI,EAAE,EAAE;oBACb,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC;iBACjE;qBAAM;oBACN,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC;iBAChE;aACD;YACD,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,KAAK,CAAC,CAAC;YAChD,EAAE,IAAI,EAAE,CAAC;YACT,GAAG,IAAI,EAAE,CAAC;YACV,EAAE,IAAI,EAAE,CAAC;YACT,EAAE,IAAI,GAAG,CAAC;YAEV,eAAe;YACf,IAAI,GAAG,EAAE;gBACR,IAAI,EAAE,IAAI,EAAE,EAAE;oBACb,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC;iBACjE;qBAAM;oBACN,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC;iBAChE;aACD;iBAAM;gBACN,IAAI,EAAE,IAAI,EAAE,EAAE;oBACb,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC;iBACjE;qBAAM;oBACN,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC;iBAChE;aACD;YACD,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,KAAK,CAAC,CAAC;YAChD,EAAE,IAAI,EAAE,CAAC;YACT,GAAG,IAAI,EAAE,CAAC;YACV,EAAE,IAAI,EAAE,CAAC;YACT,EAAE,IAAI,GAAG,CAAC;YAEV,kBAAkB;YAClB,IAAI,GAAG,EAAE;gBACR,IAAI,EAAE,IAAI,EAAE,EAAE;oBACb,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC;iBACjE;qBAAM;oBACN,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC;iBAChE;aACD;iBAAM;gBACN,IAAI,EAAE,IAAI,EAAE,EAAE;oBACb,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC;iBACjE;qBAAM;oBACN,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC;iBAChE;aACD;YACD,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,KAAK,CAAC,CAAC;YAChD,EAAE,IAAI,EAAE,CAAC;YACT,GAAG,IAAI,EAAE,CAAC;YACV,EAAE,IAAI,EAAE,CAAC;YACT,EAAE,IAAI,GAAG,CAAC;YAEV,iBAAiB;YACjB,IAAI,GAAG,EAAE;gBACR,IAAI,EAAE,IAAI,EAAE,EAAE;oBACb,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC;iBACjE;qBAAM;oBACN,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC;iBAChE;aACD;iBAAM;gBACN,IAAI,EAAE,IAAI,EAAE,EAAE;oBACb,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC;iBACjE;qBAAM;oBACN,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC;iBAChE;aACD;YACD,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC,CAAC;YAC/C,EAAE,IAAI,EAAE,CAAC;YACT,GAAG,IAAI,EAAE,CAAC;YACV,EAAE,IAAI,EAAE,CAAC;YACT,EAAE,IAAI,GAAG,CAAC;YAEV,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,CAAC;YAC5B,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC;YACxB,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,CAAC;SAC3B;IACF,CAAC;IACF,8BAAC;AAAD,CAAC,AA5ZD,CAA6C,iBAAiB,GA4Z7D","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { Renderer } from \"pixi.js\";\nimport { DBaseMeshGeometry, DBaseMeshGeometryTable } from \"./d-base-mesh-geometry\";\nimport { DBorderMask } from \"./d-border-mask\";\nimport { DCornerMask } from \"./d-corner-mask\";\n\nexport class DBaseBorderMeshGeometry extends DBaseMeshGeometry {\n\tprotected _borderWidth: number;\n\tprotected _borderMask: DBorderMask;\n\n\tconstructor() {\n\t\tsuper(\n\t\t\tnew Float32Array(32 * DBaseMeshGeometry.N),\n\t\t\tnew Float32Array(32 * DBaseMeshGeometry.N),\n\t\t\tnew Uint16Array(4 * 18 * DBaseMeshGeometry.N)\n\t\t);\n\n\t\tthis._borderWidth = 0;\n\t\tthis._borderMask = DBorderMask.NONE;\n\t}\n\n\tget borderWidth(): number {\n\t\treturn this._borderWidth;\n\t}\n\n\tset borderWidth(borderWidth: number) {\n\t\tif (this._borderWidth !== borderWidth) {\n\t\t\tthis._borderWidth = borderWidth;\n\t\t\tthis._isDirty = true;\n\t\t}\n\t}\n\n\tget borderMask(): DBorderMask {\n\t\treturn this._borderMask;\n\t}\n\n\tset borderMask(borderMask: DBorderMask) {\n\t\tif (this._borderMask !== borderMask) {\n\t\t\tthis._borderMask = borderMask;\n\t\t\tthis._isDirty = true;\n\t\t}\n\t}\n\n\tprotected fillVertices(\n\t\tvertices: Float32Array,\n\t\tuvs: Float32Array,\n\t\tiv: number,\n\t\tiuv: number,\n\t\tn: number,\n\t\tx: number,\n\t\ty: number,\n\t\tr: number,\n\t\tdr: number,\n\t\tborderWidth: number,\n\t\ttable: DBaseMeshGeometryTable\n\t): void {\n\t\tconst hw = 0.5 * borderWidth;\n\t\tconst r1 = r - hw;\n\t\tconst r2 = r + hw;\n\t\tconst r0 = r1 - dr;\n\t\tconst r3 = r2 + dr;\n\t\tconst cos = table.cos;\n\t\tconst sin = table.sin;\n\t\tif (r0 <= 0) {\n\t\t\tconst c0 = cos[0] + cos[n - 1];\n\t\t\tconst s0 = sin[0] + sin[n - 1];\n\t\t\tif (r1 <= 0) {\n\t\t\t\tif (r <= 0) {\n\t\t\t\t\tfor (let i = 0; i < n; ++i) {\n\t\t\t\t\t\tconst c = cos[i];\n\t\t\t\t\t\tconst s = sin[i];\n\t\t\t\t\t\tvertices[++iv] = x + c0 * r0;\n\t\t\t\t\t\tvertices[++iv] = y + s0 * r0;\n\t\t\t\t\t\tvertices[++iv] = x + c0 * r1;\n\t\t\t\t\t\tvertices[++iv] = y + s0 * r1;\n\t\t\t\t\t\tvertices[++iv] = x + c0 * r2;\n\t\t\t\t\t\tvertices[++iv] = y + s0 * r2;\n\t\t\t\t\t\tvertices[++iv] = x + c0 * r3;\n\t\t\t\t\t\tvertices[++iv] = y + s0 * r3;\n\t\t\t\t\t\tuvs[++iuv] = 0.5 * (1 + c);\n\t\t\t\t\t\tuvs[++iuv] = 0.5 * (1 + s);\n\t\t\t\t\t\tuvs[++iuv] = 0.5;\n\t\t\t\t\t\tuvs[++iuv] = 0.5;\n\t\t\t\t\t\tuvs[++iuv] = 0.5;\n\t\t\t\t\t\tuvs[++iuv] = 0.5;\n\t\t\t\t\t\tuvs[++iuv] = 0.5 * (1 + c);\n\t\t\t\t\t\tuvs[++iuv] = 0.5 * (1 + s);\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tfor (let i = 0; i < n; ++i) {\n\t\t\t\t\t\tconst c = cos[i];\n\t\t\t\t\t\tconst s = sin[i];\n\t\t\t\t\t\tvertices[++iv] = x + c0 * r0;\n\t\t\t\t\t\tvertices[++iv] = y + s0 * r0;\n\t\t\t\t\t\tvertices[++iv] = x + c0 * r1;\n\t\t\t\t\t\tvertices[++iv] = y + s0 * r1;\n\t\t\t\t\t\tvertices[++iv] = x + c * r2;\n\t\t\t\t\t\tvertices[++iv] = y + s * r2;\n\t\t\t\t\t\tvertices[++iv] = x + c * r3;\n\t\t\t\t\t\tvertices[++iv] = y + s * r3;\n\t\t\t\t\t\tuvs[++iuv] = 0.5 * (1 + c);\n\t\t\t\t\t\tuvs[++iuv] = 0.5 * (1 + s);\n\t\t\t\t\t\tuvs[++iuv] = 0.5;\n\t\t\t\t\t\tuvs[++iuv] = 0.5;\n\t\t\t\t\t\tuvs[++iuv] = 0.5;\n\t\t\t\t\t\tuvs[++iuv] = 0.5;\n\t\t\t\t\t\tuvs[++iuv] = 0.5 * (1 + c);\n\t\t\t\t\t\tuvs[++iuv] = 0.5 * (1 + s);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tfor (let i = 0; i < n; ++i) {\n\t\t\t\t\tconst c = cos[i];\n\t\t\t\t\tconst s = sin[i];\n\t\t\t\t\tvertices[++iv] = x + c0 * r0;\n\t\t\t\t\tvertices[++iv] = y + s0 * r0;\n\t\t\t\t\tvertices[++iv] = x + c * r1;\n\t\t\t\t\tvertices[++iv] = y + s * r1;\n\t\t\t\t\tvertices[++iv] = x + c * r2;\n\t\t\t\t\tvertices[++iv] = y + s * r2;\n\t\t\t\t\tvertices[++iv] = x + c * r3;\n\t\t\t\t\tvertices[++iv] = y + s * r3;\n\t\t\t\t\tuvs[++iuv] = 0.5 * (1 + c);\n\t\t\t\t\tuvs[++iuv] = 0.5 * (1 + s);\n\t\t\t\t\tuvs[++iuv] = 0.5;\n\t\t\t\t\tuvs[++iuv] = 0.5;\n\t\t\t\t\tuvs[++iuv] = 0.5;\n\t\t\t\t\tuvs[++iuv] = 0.5;\n\t\t\t\t\tuvs[++iuv] = 0.5 * (1 + c);\n\t\t\t\t\tuvs[++iuv] = 0.5 * (1 + s);\n\t\t\t\t}\n\t\t\t}\n\t\t} else {\n\t\t\tfor (let i = 0; i < n; ++i) {\n\t\t\t\tconst c = cos[i];\n\t\t\t\tconst s = sin[i];\n\t\t\t\tvertices[++iv] = x + c * r0;\n\t\t\t\tvertices[++iv] = y + s * r0;\n\t\t\t\tvertices[++iv] = x + c * r1;\n\t\t\t\tvertices[++iv] = y + s * r1;\n\t\t\t\tvertices[++iv] = x + c * r2;\n\t\t\t\tvertices[++iv] = y + s * r2;\n\t\t\t\tvertices[++iv] = x + c * r3;\n\t\t\t\tvertices[++iv] = y + s * r3;\n\t\t\t\tuvs[++iuv] = 0.5 * (1 + c);\n\t\t\t\tuvs[++iuv] = 0.5 * (1 + s);\n\t\t\t\tuvs[++iuv] = 0.5;\n\t\t\t\tuvs[++iuv] = 0.5;\n\t\t\t\tuvs[++iuv] = 0.5;\n\t\t\t\tuvs[++iuv] = 0.5;\n\t\t\t\tuvs[++iuv] = 0.5 * (1 + c);\n\t\t\t\tuvs[++iuv] = 0.5 * (1 + s);\n\t\t\t}\n\t\t}\n\t}\n\n\tprotected fillIndices(\n\t\tindices: Uint16Array,\n\t\tia: number,\n\t\tii: number,\n\t\tn: number,\n\t\tend: boolean,\n\t\tloop: boolean\n\t): void {\n\t\tfor (let i = 0, imax = n - 1; i < imax; ++i) {\n\t\t\tindices[++ii] = ia + 0;\n\t\t\tindices[++ii] = ia + 1;\n\t\t\tindices[++ii] = ia + 4;\n\n\t\t\tindices[++ii] = ia + 4;\n\t\t\tindices[++ii] = ia + 1;\n\t\t\tindices[++ii] = ia + 5;\n\t\t\tia += 1;\n\n\t\t\tindices[++ii] = ia + 0;\n\t\t\tindices[++ii] = ia + 1;\n\t\t\tindices[++ii] = ia + 4;\n\n\t\t\tindices[++ii] = ia + 4;\n\t\t\tindices[++ii] = ia + 1;\n\t\t\tindices[++ii] = ia + 5;\n\t\t\tia += 1;\n\n\t\t\tindices[++ii] = ia + 0;\n\t\t\tindices[++ii] = ia + 1;\n\t\t\tindices[++ii] = ia + 4;\n\n\t\t\tindices[++ii] = ia + 4;\n\t\t\tindices[++ii] = ia + 1;\n\t\t\tindices[++ii] = ia + 5;\n\t\t\tia += 2;\n\t\t}\n\t\tif (end) {\n\t\t\tif (loop) {\n\t\t\t\tindices[++ii] = ia + 0;\n\t\t\t\tindices[++ii] = ia + 1;\n\t\t\t\tindices[++ii] = 0;\n\n\t\t\t\tindices[++ii] = 0;\n\t\t\t\tindices[++ii] = ia + 1;\n\t\t\t\tindices[++ii] = 1;\n\t\t\t\tia += 1;\n\n\t\t\t\tindices[++ii] = ia + 0;\n\t\t\t\tindices[++ii] = ia + 1;\n\t\t\t\tindices[++ii] = 1;\n\n\t\t\t\tindices[++ii] = 1;\n\t\t\t\tindices[++ii] = ia + 1;\n\t\t\t\tindices[++ii] = 2;\n\t\t\t\tia += 1;\n\n\t\t\t\tindices[++ii] = ia + 0;\n\t\t\t\tindices[++ii] = ia + 1;\n\t\t\t\tindices[++ii] = 2;\n\n\t\t\t\tindices[++ii] = 2;\n\t\t\t\tindices[++ii] = ia + 1;\n\t\t\t\tindices[++ii] = 3;\n\t\t\t\tia += 2;\n\t\t\t} else {\n\t\t\t\tindices[++ii] = ia + 0;\n\t\t\t\tindices[++ii] = ia + 1;\n\t\t\t\tindices[++ii] = ia + 4;\n\n\t\t\t\tindices[++ii] = ia + 4;\n\t\t\t\tindices[++ii] = ia + 1;\n\t\t\t\tindices[++ii] = ia + 5;\n\t\t\t\tia += 1;\n\n\t\t\t\tindices[++ii] = ia + 0;\n\t\t\t\tindices[++ii] = ia + 1;\n\t\t\t\tindices[++ii] = ia + 4;\n\n\t\t\t\tindices[++ii] = ia + 4;\n\t\t\t\tindices[++ii] = ia + 1;\n\t\t\t\tindices[++ii] = ia + 5;\n\t\t\t\tia += 1;\n\n\t\t\t\tindices[++ii] = ia + 0;\n\t\t\t\tindices[++ii] = ia + 1;\n\t\t\t\tindices[++ii] = ia + 4;\n\n\t\t\t\tindices[++ii] = ia + 4;\n\t\t\t\tindices[++ii] = ia + 1;\n\t\t\t\tindices[++ii] = ia + 5;\n\t\t\t\tia += 2;\n\t\t\t}\n\t\t} else {\n\t\t\tindices[++ii] = ia;\n\t\t\tindices[++ii] = ia;\n\t\t\tindices[++ii] = ia;\n\n\t\t\tindices[++ii] = ia;\n\t\t\tindices[++ii] = ia;\n\t\t\tindices[++ii] = ia;\n\t\t\tia += 1;\n\n\t\t\tindices[++ii] = ia;\n\t\t\tindices[++ii] = ia;\n\t\t\tindices[++ii] = ia;\n\n\t\t\tindices[++ii] = ia;\n\t\t\tindices[++ii] = ia;\n\t\t\tindices[++ii] = ia;\n\t\t\tia += 1;\n\n\t\t\tindices[++ii] = ia;\n\t\t\tindices[++ii] = ia;\n\t\t\tindices[++ii] = ia;\n\n\t\t\tindices[++ii] = ia;\n\t\t\tindices[++ii] = ia;\n\t\t\tindices[++ii] = ia;\n\t\t\tia += 2;\n\t\t}\n\t}\n\n\tupdate(renderer: Renderer): void {\n\t\tconst resolution = renderer.resolution;\n\t\tif (this._isDirty || this._resolution !== resolution) {\n\t\t\tthis._isDirty = false;\n\t\t\tthis._resolution = resolution;\n\n\t\t\tconst vrtcs = this._vertices;\n\t\t\tconst uvs = this._uvs;\n\t\t\tconst indices = this._indices;\n\n\t\t\tconst w = this._width;\n\t\t\tconst h = this._height;\n\t\t\tconst bw = this._borderWidth;\n\t\t\tconst r = Math.min(0.5 * w, 0.5 * h, this._cornerRadius);\n\t\t\tconst a = 0.5 / resolution;\n\n\t\t\tconst x0 = 0;\n\t\t\tconst x1 = r;\n\t\t\tconst x2 = w - r;\n\t\t\tconst x3 = w;\n\n\t\t\tconst y0 = 0;\n\t\t\tconst y1 = r;\n\t\t\tconst y2 = h - r;\n\t\t\tconst y3 = h;\n\n\t\t\tconst borderMask = this._borderMask;\n\t\t\tconst bt = !(borderMask & DBorderMask.TOP);\n\t\t\tconst bb = !(borderMask & DBorderMask.BOTTOM);\n\t\t\tconst bl = !(borderMask & DBorderMask.LEFT);\n\t\t\tconst br = !(borderMask & DBorderMask.RIGHT);\n\n\t\t\tconst cornerMask = this._cornerMask;\n\t\t\tconst ctl = !(cornerMask & DCornerMask.TOP_LEFT);\n\t\t\tconst ctr = !(cornerMask & DCornerMask.TOP_RIGHT);\n\t\t\tconst cbl = !(cornerMask & DCornerMask.BOTTOM_LEFT);\n\t\t\tconst cbr = !(cornerMask & DCornerMask.BOTTOM_RIGHT);\n\n\t\t\t// Vertices & UVs\n\t\t\tlet iv = -1;\n\t\t\tlet iuv = -1;\n\t\t\tlet ia = 0;\n\t\t\tlet ii = -1;\n\n\t\t\tconst n = DBaseMeshGeometry.N;\n\t\t\tconst n4 = n << 2;\n\t\t\tconst n8 = n << 3;\n\t\t\tconst n18 = 18 * n;\n\n\t\t\tconst tables = this.getTables();\n\t\t\tconst tlt = tables[0];\n\t\t\tconst ttr = tables[1];\n\t\t\tconst trb = tables[2];\n\t\t\tconst tbl = tables[3];\n\n\t\t\t// left -> top\n\t\t\tif (ctl) {\n\t\t\t\tif (bl || bt) {\n\t\t\t\t\tthis.fillVertices(vrtcs, uvs, iv, iuv, n, x1, y1, r, a, bw, tlt);\n\t\t\t\t} else {\n\t\t\t\t\tthis.fillVertices(vrtcs, uvs, iv, iuv, n, x1, y1, r, a, 0, tlt);\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tif (bl || bt) {\n\t\t\t\t\tthis.fillVertices(vrtcs, uvs, iv, iuv, n, x0, y0, 0, a, bw, tlt);\n\t\t\t\t} else {\n\t\t\t\t\tthis.fillVertices(vrtcs, uvs, iv, iuv, n, x0, y0, 0, a, 0, tlt);\n\t\t\t\t}\n\t\t\t}\n\t\t\tthis.fillIndices(indices, ia, ii, n, bt, false);\n\t\t\tiv += n8;\n\t\t\tiuv += n8;\n\t\t\tia += n4;\n\t\t\tii += n18;\n\n\t\t\t// top -> right\n\t\t\tif (ctr) {\n\t\t\t\tif (bt || br) {\n\t\t\t\t\tthis.fillVertices(vrtcs, uvs, iv, iuv, n, x2, y1, r, a, bw, ttr);\n\t\t\t\t} else {\n\t\t\t\t\tthis.fillVertices(vrtcs, uvs, iv, iuv, n, x2, y1, r, a, 0, ttr);\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tif (bt || br) {\n\t\t\t\t\tthis.fillVertices(vrtcs, uvs, iv, iuv, n, x3, y0, 0, a, bw, ttr);\n\t\t\t\t} else {\n\t\t\t\t\tthis.fillVertices(vrtcs, uvs, iv, iuv, n, x3, y0, 0, a, 0, ttr);\n\t\t\t\t}\n\t\t\t}\n\t\t\tthis.fillIndices(indices, ia, ii, n, br, false);\n\t\t\tiv += n8;\n\t\t\tiuv += n8;\n\t\t\tia += n4;\n\t\t\tii += n18;\n\n\t\t\t// right -> bottom\n\t\t\tif (cbr) {\n\t\t\t\tif (br || bb) {\n\t\t\t\t\tthis.fillVertices(vrtcs, uvs, iv, iuv, n, x2, y2, r, a, bw, trb);\n\t\t\t\t} else {\n\t\t\t\t\tthis.fillVertices(vrtcs, uvs, iv, iuv, n, x2, y2, r, a, 0, trb);\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tif (br || bb) {\n\t\t\t\t\tthis.fillVertices(vrtcs, uvs, iv, iuv, n, x3, y3, 0, a, bw, trb);\n\t\t\t\t} else {\n\t\t\t\t\tthis.fillVertices(vrtcs, uvs, iv, iuv, n, x3, y3, 0, a, 0, trb);\n\t\t\t\t}\n\t\t\t}\n\t\t\tthis.fillIndices(indices, ia, ii, n, bb, false);\n\t\t\tiv += n8;\n\t\t\tiuv += n8;\n\t\t\tia += n4;\n\t\t\tii += n18;\n\n\t\t\t// bottom -> left\n\t\t\tif (cbl) {\n\t\t\t\tif (bb || bl) {\n\t\t\t\t\tthis.fillVertices(vrtcs, uvs, iv, iuv, n, x1, y2, r, a, bw, tbl);\n\t\t\t\t} else {\n\t\t\t\t\tthis.fillVertices(vrtcs, uvs, iv, iuv, n, x1, y2, r, a, 0, tbl);\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tif (bb || bl) {\n\t\t\t\t\tthis.fillVertices(vrtcs, uvs, iv, iuv, n, x0, y3, 0, a, bw, tbl);\n\t\t\t\t} else {\n\t\t\t\t\tthis.fillVertices(vrtcs, uvs, iv, iuv, n, x0, y3, 0, a, 0, tbl);\n\t\t\t\t}\n\t\t\t}\n\t\t\tthis.fillIndices(indices, ia, ii, n, bl, true);\n\t\t\tiv += n8;\n\t\t\tiuv += n8;\n\t\t\tia += n4;\n\t\t\tii += n18;\n\n\t\t\tthis._vertexBuffer.update();\n\t\t\tthis._uvBuffer.update();\n\t\t\tthis._indexBuffer.update();\n\t\t}\n\t}\n}\n"]}
|
|
@@ -37,7 +37,7 @@ var DBaseOutlineSnippet = /** @class */ (function () {
|
|
|
37
37
|
outlineMesh.y = -outlineOffset;
|
|
38
38
|
outlineMesh.width = width + outlineOffset * 2;
|
|
39
39
|
outlineMesh.height = height + outlineOffset * 2;
|
|
40
|
-
outlineMesh.cornerRadius = cornerRadius;
|
|
40
|
+
outlineMesh.cornerRadius = Math.max(0, cornerRadius + outlineOffset);
|
|
41
41
|
outlineMesh.cornerMask = cornerMask;
|
|
42
42
|
outlineMesh.borderWidth = outlineWidth;
|
|
43
43
|
outlineMesh.borderMask = outlineMask;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"d-base-outline-snippet.js","sourceRoot":"","sources":["../../../src/main/typescript/wcardinal/ui/d-base-outline-snippet.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAKvD;IAAA;IAiEA,CAAC;IA9DU,iCAAG,GAAb,UAAc,IAAW,EAAE,KAAiB;QAC3C,IAAI,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC;QACxB,IAAI,MAAM,IAAI,IAAI,EAAE;YACnB,MAAM,GAAG,IAAI,eAAe,CAAC,KAAK,CAAC,gBAAgB,EAAE,CAAC,CAAC;YACtD,MAAc,CAAC,MAAM,GAAG,IAAI,CAAC;YAC9B,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC;SACpB;QACD,OAAO,MAAM,CAAC;IACf,CAAC;IAES,kCAAI,GAAd;QACC,IAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC;QACxB,IAAI,IAAI,IAAI,IAAI,EAAE;YACjB,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;SACrB;IACF,CAAC;IAED,sCAAQ,GAAR,UACC,IAAW,EACX,KAAa,EACb,MAAc,EACd,KAAiB,EACjB,KAAoB,EACpB,YAAoB,EACpB,UAAuB;QAEvB,IAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;QAC7B,IAAM,YAAY,GAAG,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QAC7C,IAAI,YAAY,IAAI,IAAI,EAAE;YACzB,IAAM,YAAY,GAAG,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;YAC7C,IAAI,CAAC,GAAG,YAAY,EAAE;gBACrB,IAAM,YAAY,GAAG,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;gBAC7C,IAAM,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;gBAC3C,IAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;gBAC1C,IAAM,aAAa,GAClB,OAAO,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,GAAG,YAAY,CAAC;gBAC3E,WAAW,CAAC,IAAI,GAAG,YAAY,CAAC;gBAChC,WAAW,CAAC,KAAK,GAAG,YAAY,CAAC;gBACjC,WAAW,CAAC,CAAC,GAAG,CAAC,aAAa,CAAC;gBAC/B,WAAW,CAAC,CAAC,GAAG,CAAC,aAAa,CAAC;gBAC/B,WAAW,CAAC,KAAK,GAAG,KAAK,GAAG,aAAa,GAAG,CAAC,CAAC;gBAC9C,WAAW,CAAC,MAAM,GAAG,MAAM,GAAG,aAAa,GAAG,CAAC,CAAC;gBAChD,WAAW,CAAC,YAAY,GAAG,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"d-base-outline-snippet.js","sourceRoot":"","sources":["../../../src/main/typescript/wcardinal/ui/d-base-outline-snippet.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAKvD;IAAA;IAiEA,CAAC;IA9DU,iCAAG,GAAb,UAAc,IAAW,EAAE,KAAiB;QAC3C,IAAI,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC;QACxB,IAAI,MAAM,IAAI,IAAI,EAAE;YACnB,MAAM,GAAG,IAAI,eAAe,CAAC,KAAK,CAAC,gBAAgB,EAAE,CAAC,CAAC;YACtD,MAAc,CAAC,MAAM,GAAG,IAAI,CAAC;YAC9B,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC;SACpB;QACD,OAAO,MAAM,CAAC;IACf,CAAC;IAES,kCAAI,GAAd;QACC,IAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC;QACxB,IAAI,IAAI,IAAI,IAAI,EAAE;YACjB,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;SACrB;IACF,CAAC;IAED,sCAAQ,GAAR,UACC,IAAW,EACX,KAAa,EACb,MAAc,EACd,KAAiB,EACjB,KAAoB,EACpB,YAAoB,EACpB,UAAuB;QAEvB,IAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;QAC7B,IAAM,YAAY,GAAG,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QAC7C,IAAI,YAAY,IAAI,IAAI,EAAE;YACzB,IAAM,YAAY,GAAG,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;YAC7C,IAAI,CAAC,GAAG,YAAY,EAAE;gBACrB,IAAM,YAAY,GAAG,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;gBAC7C,IAAM,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;gBAC3C,IAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;gBAC1C,IAAM,aAAa,GAClB,OAAO,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,GAAG,YAAY,CAAC;gBAC3E,WAAW,CAAC,IAAI,GAAG,YAAY,CAAC;gBAChC,WAAW,CAAC,KAAK,GAAG,YAAY,CAAC;gBACjC,WAAW,CAAC,CAAC,GAAG,CAAC,aAAa,CAAC;gBAC/B,WAAW,CAAC,CAAC,GAAG,CAAC,aAAa,CAAC;gBAC/B,WAAW,CAAC,KAAK,GAAG,KAAK,GAAG,aAAa,GAAG,CAAC,CAAC;gBAC9C,WAAW,CAAC,MAAM,GAAG,MAAM,GAAG,aAAa,GAAG,CAAC,CAAC;gBAChD,WAAW,CAAC,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,YAAY,GAAG,aAAa,CAAC,CAAC;gBACrE,WAAW,CAAC,UAAU,GAAG,UAAU,CAAC;gBACpC,WAAW,CAAC,WAAW,GAAG,YAAY,CAAC;gBACvC,WAAW,CAAC,UAAU,GAAG,WAAW,CAAC;gBACrC,WAAW,CAAC,OAAO,GAAG,IAAI,CAAC;aAC3B;iBAAM;gBACN,IAAI,CAAC,IAAI,EAAE,CAAC;aACZ;SACD;aAAM;YACN,IAAI,CAAC,IAAI,EAAE,CAAC;SACZ;IACF,CAAC;IAED,oCAAM,GAAN,UAAO,QAAuB;;QAC7B,MAAA,IAAI,CAAC,KAAK,0CAAE,MAAM,CAAC,QAAQ,CAAC,CAAC;IAC9B,CAAC;IAED,6CAAe,GAAf;;QACC,MAAA,IAAI,CAAC,KAAK,0CAAE,eAAe,EAAE,CAAC;IAC/B,CAAC;IACF,0BAAC;AAAD,CAAC,AAjED,IAiEC","sourcesContent":["/*\n * Copyright (C) 2020 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { DBase, DThemeBase } from \"./d-base\";\nimport { DBaseBorderMesh } from \"./d-base-border-mesh\";\nimport { DBaseSnippet } from \"./d-base-snippet\";\nimport { DBaseStateSet } from \"./d-base-state-set\";\nimport { DCornerMask } from \"./d-corner-mask\";\n\nexport class DBaseOutlineSnippet implements DBaseSnippet {\n\tprotected _mesh?: DBaseBorderMesh;\n\n\tprotected get(base: DBase, theme: DThemeBase): DBaseBorderMesh {\n\t\tlet result = this._mesh;\n\t\tif (result == null) {\n\t\t\tresult = new DBaseBorderMesh(theme.getBorderTexture());\n\t\t\t(result as any).parent = base;\n\t\t\tthis._mesh = result;\n\t\t}\n\t\treturn result;\n\t}\n\n\tprotected hide(): void {\n\t\tconst mesh = this._mesh;\n\t\tif (mesh != null) {\n\t\t\tmesh.visible = false;\n\t\t}\n\t}\n\n\tonReflow(\n\t\tbase: DBase,\n\t\twidth: number,\n\t\theight: number,\n\t\ttheme: DThemeBase,\n\t\tstate: DBaseStateSet,\n\t\tcornerRadius: number,\n\t\tcornerMask: DCornerMask\n\t): void {\n\t\tconst outline = base.outline;\n\t\tconst outlineColor = outline.getColor(state);\n\t\tif (outlineColor != null) {\n\t\t\tconst outlineAlpha = outline.getAlpha(state);\n\t\t\tif (0 < outlineAlpha) {\n\t\t\t\tconst outlineWidth = outline.getWidth(state);\n\t\t\t\tconst outlineMask = outline.getMask(state);\n\t\t\t\tconst outlineMesh = this.get(base, theme);\n\t\t\t\tconst outlineOffset =\n\t\t\t\t\toutline.getOffset(state) + (outline.getAlign(state) - 0.5) * outlineWidth;\n\t\t\t\toutlineMesh.tint = outlineColor;\n\t\t\t\toutlineMesh.alpha = outlineAlpha;\n\t\t\t\toutlineMesh.x = -outlineOffset;\n\t\t\t\toutlineMesh.y = -outlineOffset;\n\t\t\t\toutlineMesh.width = width + outlineOffset * 2;\n\t\t\t\toutlineMesh.height = height + outlineOffset * 2;\n\t\t\t\toutlineMesh.cornerRadius = Math.max(0, cornerRadius + outlineOffset);\n\t\t\t\toutlineMesh.cornerMask = cornerMask;\n\t\t\t\toutlineMesh.borderWidth = outlineWidth;\n\t\t\t\toutlineMesh.borderMask = outlineMask;\n\t\t\t\toutlineMesh.visible = true;\n\t\t\t} else {\n\t\t\t\tthis.hide();\n\t\t\t}\n\t\t} else {\n\t\t\tthis.hide();\n\t\t}\n\t}\n\n\trender(renderer: PIXI.Renderer): void {\n\t\tthis._mesh?.render(renderer);\n\t}\n\n\tupdateTransform(): void {\n\t\tthis._mesh?.updateTransform();\n\t}\n}\n"]}
|
|
@@ -143,7 +143,7 @@ var DItemUpdater = /** @class */ (function () {
|
|
|
143
143
|
newItemIndexEnd += 1;
|
|
144
144
|
}
|
|
145
145
|
var newItemCount = newItemIndexEnd - newItemIndexStart;
|
|
146
|
-
if (newItemCount < oldItemCount
|
|
146
|
+
if (newItemCount < oldItemCount) {
|
|
147
147
|
newItemCount = oldItemCount;
|
|
148
148
|
newItemIndexEnd = newItemIndexStart + newItemCount;
|
|
149
149
|
}
|