@wcardinal/wcardinal-ui 0.343.0 → 0.345.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.
@@ -588,16 +588,27 @@ var DPagination = /** @class */ (function (_super) {
588
588
  var required1m = required1n + m1;
589
589
  if (required0 <= required1) {
590
590
  if (3 <= nrequired1 && required + required0 + required1m <= space) {
591
- var n1 = Math.floor((space - (required + required0 + required1m)) / m1);
591
+ var l = space - (required + required0 + required1m);
592
+ var n1 = Math.floor(l / m1);
592
593
  this.doUpdate2(value, size, 0, 1, 0, n1);
593
594
  }
595
+ else if (3 <= nrequired0 &&
596
+ 3 <= nrequired1 &&
597
+ required + required0m + required1m <= space) {
598
+ var l = space - (required + required0m + required1m);
599
+ var n1 = Math.floor((l * 0.5) / m1);
600
+ var n0 = Math.floor((l - n1 * m1) / m0);
601
+ this.doUpdate2(value, size, 1, 1, n0, n1);
602
+ }
594
603
  else if (2 <= nrequired1 && required + required0 + required1n <= space) {
595
604
  this.doUpdate2(value, size, 0, 2, 0, 0);
596
605
  }
597
606
  else if (3 <= nrequired0 &&
598
607
  2 <= nrequired1 &&
599
608
  required + required0m + required1n <= space) {
600
- this.doUpdate2(value, size, 1, 2, 0, 0);
609
+ var l = space - (required + required0m + required1n);
610
+ var n0 = Math.floor(l / m0);
611
+ this.doUpdate2(value, size, 1, 2, n0, 0);
601
612
  }
602
613
  else if (2 <= nrequired0 &&
603
614
  2 <= nrequired1 &&
@@ -615,16 +626,27 @@ var DPagination = /** @class */ (function (_super) {
615
626
  }
616
627
  else {
617
628
  if (3 <= nrequired0 && required + required0m + required1 <= space) {
618
- var n0 = Math.floor((space - (required + required0m + required1)) / m0);
629
+ var l = space - (required + required0m + required1);
630
+ var n0 = Math.floor(l / m0);
619
631
  this.doUpdate2(value, size, 1, 0, n0, 0);
620
632
  }
633
+ else if (3 <= nrequired0 &&
634
+ 3 <= nrequired1 &&
635
+ required + required0m + required1m <= space) {
636
+ var l = space - (required + required0m + required1m);
637
+ var n0 = Math.floor((l * 0.5) / m0);
638
+ var n1 = Math.floor((l - n0 * m0) / m1);
639
+ this.doUpdate2(value, size, 1, 1, n0, n1);
640
+ }
621
641
  else if (2 <= nrequired0 && required + required0n + required1 <= space) {
622
642
  this.doUpdate2(value, size, 2, 0, 0, 0);
623
643
  }
624
644
  else if (2 <= nrequired0 &&
625
645
  3 <= nrequired1 &&
626
646
  required + required0n + required1m <= space) {
627
- this.doUpdate2(value, size, 2, 1, 0, 0);
647
+ var l = space - (required + required0n + required1m);
648
+ var n1 = Math.floor(l / m1);
649
+ this.doUpdate2(value, size, 2, 1, 0, n1);
628
650
  }
629
651
  else if (2 <= nrequired0 &&
630
652
  2 <= nrequired1 &&
@@ -1 +1 @@
1
- {"version":3,"file":"d-pagination.js","sourceRoot":"","sources":["../../../src/main/typescript/wcardinal/ui/d-pagination.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { DButton } from \"./d-button\";\nimport {\n\tDLayoutHorizontal,\n\tDLayoutHorizontalOptions,\n\tDThemeLayoutHorizontal\n} from \"./d-layout-horizontal\";\nimport { DPaginationDots } from \"./d-pagination-dots\";\nimport { DPaginationButtonLast, DPaginationButtonLastOptions } from \"./d-pagination-button-last\";\nimport { DPaginationButtonNext, DPaginationButtonNextOptions } from \"./d-pagination-button-next\";\nimport { DPaginationButtonPage, DPaginationButtonPageOptions } from \"./d-pagination-button-page\";\nimport {\n\tDPaginationButtonPrevious,\n\tDPaginationButtonPreviousOptions\n} from \"./d-pagination-button-previous\";\nimport { DPaginationButtonTop, DPaginationButtonTopOptions } from \"./d-pagination-button-top\";\nimport { isNumber } from \"./util/is-number\";\nimport { DPaginationPage, DPaginationPageOptions } from \"./d-pagination-page\";\nimport { DLayoutSpace, DLayoutSpaceOptions } from \"./d-layout-space\";\nimport { DImageBase } from \"./d-image-base\";\nimport { DApplications } from \"./d-applications\";\n\nexport interface DPaginationButtonOptions {\n\t/**\n\t * {@link DPagination} top button options.\n\t */\n\ttop?: DPaginationButtonTopOptions | boolean | null;\n\n\t/**\n\t * {@link DPagination} previous button options.\n\t */\n\tprevious?: DPaginationButtonPreviousOptions | boolean | null;\n\n\t/**\n\t * {@link DPagination} page button options.\n\t */\n\tpage?: DPaginationButtonPageOptions;\n\n\t/**\n\t * {@link DPagination} next button options.\n\t */\n\tnext?: DPaginationButtonNextOptions | boolean | null;\n\n\t/**\n\t * {@link DPagination} last button options.\n\t */\n\tlast?: DPaginationButtonLastOptions | boolean | null;\n\n\t/**\n\t * A space between page buttons and next / previous buttons.\n\t */\n\tspace?: DLayoutSpaceOptions | boolean | number | null;\n}\n\nexport interface DPaginationOptions<THEME extends DThemePagination>\n\textends DLayoutHorizontalOptions<THEME> {\n\t/**\n\t * An index number of a selected page.\n\t */\n\tvalue?: number;\n\n\t/**\n\t * An index number of a selected page.\n\t *\n\t * @deprecated in favor of {@link value}.\n\t */\n\tselected?: number;\n\n\t/**\n\t * A total number of pages.\n\t */\n\tsize?: number;\n\n\t/**\n\t * A total number of pages.\n\t *\n\t * @deprecated in favor of {@link size};\n\t */\n\ttotal?: number;\n\n\t/**\n\t * {@link DPagination} button options.\n\t */\n\tbutton?: DPaginationButtonOptions;\n\n\t/**\n\t * {@link DPagination} page options.\n\t */\n\tpage?: DPaginationPageOptions;\n}\n\nexport interface DThemePagination extends DThemeLayoutHorizontal {\n\tgetButtonSpace(): number;\n}\n\nexport class DPagination<\n\tTHEME extends DThemePagination = DThemePagination,\n\tOPTIONS extends DPaginationOptions<THEME> = DPaginationOptions<THEME>\n> extends DLayoutHorizontal<THEME, OPTIONS> {\n\tprotected _size: number;\n\tprotected _value: number;\n\n\tprotected _buttonTop?: DButton<string> | null;\n\tprotected _buttonPrevious?: DButton<string> | null;\n\tprotected _spaceLeft?: DLayoutSpace | null;\n\tprotected _dots0?: DPaginationDots;\n\tprotected _buttonPages0?: DButton<number>[];\n\tprotected _page?: DPaginationPage;\n\tprotected _buttonPages1?: DButton<number>[];\n\tprotected _dots1?: DPaginationDots;\n\tprotected _spaceRight?: DLayoutSpace | null;\n\tprotected _buttonNext?: DButton<string> | null;\n\tprotected _buttonLast?: DButton<string> | null;\n\n\tconstructor(options?: OPTIONS) {\n\t\tsuper(options);\n\n\t\tif (options != null) {\n\t\t\tthis._size = options.size ?? options.total ?? 10;\n\t\t\tthis._value = options.value ?? options.selected ?? 0;\n\t\t} else {\n\t\t\tthis._size = 10;\n\t\t\tthis._value = 0;\n\t\t}\n\n\t\tconst buttonTop = this.buttonTop;\n\t\tif (buttonTop != null) {\n\t\t\tthis.addChild(buttonTop);\n\t\t}\n\t\tconst buttonPrevious = this.buttonPrevious;\n\t\tif (buttonPrevious != null) {\n\t\t\tthis.addChild(buttonPrevious);\n\t\t}\n\t\tconst spaceLeft = this.spaceLeft;\n\t\tif (spaceLeft != null) {\n\t\t\tthis.addChild(spaceLeft);\n\t\t}\n\t\tconst buttonPages0 = this.buttonPages0;\n\t\tconst buttonPages0Length = buttonPages0.length;\n\t\tthis.addChild(buttonPages0[0]);\n\t\tthis.addChild(this.dots0);\n\t\tfor (let i = 1; i < buttonPages0Length; ++i) {\n\t\t\tthis.addChild(buttonPages0[i]);\n\t\t}\n\t\tthis.addChild(this.page);\n\t\tconst buttonPages1 = this.buttonPages1;\n\t\tconst buttonPages1Length = buttonPages1.length;\n\t\tfor (let i = 0, imax = buttonPages1Length - 1; i < imax; ++i) {\n\t\t\tthis.addChild(buttonPages1[i]);\n\t\t}\n\t\tthis.addChild(this.dots1);\n\t\tthis.addChild(buttonPages1[buttonPages1Length - 1]);\n\t\tconst spaceRight = this.spaceRight;\n\t\tif (spaceRight != null) {\n\t\t\tthis.addChild(spaceRight);\n\t\t}\n\t\tconst buttonNext = this.buttonNext;\n\t\tif (buttonNext != null) {\n\t\t\tthis.addChild(buttonNext);\n\t\t}\n\t\tconst buttonLast = this.buttonLast;\n\t\tif (buttonLast != null) {\n\t\t\tthis.addChild(buttonLast);\n\t\t}\n\t}\n\n\t/**\n\t * Sets a value that is an index of a current page.\n\t *\n\t * @param value a value that is an index of a page\n\t */\n\tset value(value: number) {\n\t\tif (0 <= value && value < this._size && this._value !== value) {\n\t\t\tthis._value = value;\n\t\t\tthis.toDirty();\n\t\t\tDApplications.update(this);\n\t\t}\n\t}\n\n\t/**\n\t * Returns a value that is an index of a current page.\n\t *\n\t * @returns a value that is an index of a selected page.\n\t */\n\tget value(): number {\n\t\treturn this._value;\n\t}\n\n\t/**\n\t * Selects a page.\n\t *\n\t * @param index an index of a page\n\t * @deprecated in favor of {@link #value}.\n\t */\n\tset selected(index: number) {\n\t\tthis.value = index;\n\t}\n\n\t/**\n\t * Returns an index of the selected page.\n\t *\n\t * @returns an index of the selected page.\n\t * @deprecated in favor of {@link value}.\n\t */\n\tget selected(): number {\n\t\treturn this.value;\n\t}\n\n\t/**\n\t * Sets a number of total pages.\n\t *\n\t * @param size a number of pages\n\t */\n\tset size(size: number) {\n\t\tif (0 <= size && this._size !== size) {\n\t\t\tthis._size = size;\n\t\t\tif (size === 0) {\n\t\t\t\tthis._value = -1;\n\t\t\t} else {\n\t\t\t\tthis._value = Math.max(0, Math.min(this._size - 1, this._value));\n\t\t\t}\n\t\t\tthis.toDirty();\n\t\t\tDApplications.update(this);\n\t\t}\n\t}\n\n\t/**\n\t * Returns a number of total pages.\n\t *\n\t * @returns a number of total pages.\n\t */\n\tget size(): number {\n\t\treturn this._size;\n\t}\n\n\t/**\n\t * Sets a number of total pages.\n\t *\n\t * @param total a number of pages\n\t * @deprecated in favor of {@link size}\n\t */\n\tset total(total: number) {\n\t\tthis.size = total;\n\t}\n\n\t/**\n\t * Returns a number of total pages.\n\t *\n\t * @returns a number of total pages.\n\t * @deprecated in favor of {@link size}\n\t */\n\tget total(): number {\n\t\treturn this.size;\n\t}\n\n\tprotected get dots0(): DPaginationDots {\n\t\tlet result = this._dots0;\n\t\tif (result == null) {\n\t\t\tresult = this.newDots();\n\t\t\tthis._dots0 = result;\n\t\t}\n\t\treturn result;\n\t}\n\n\tprotected get dots1(): DPaginationDots {\n\t\tlet result = this._dots1;\n\t\tif (result == null) {\n\t\t\tresult = this.newDots();\n\t\t\tthis._dots1 = result;\n\t\t}\n\t\treturn result;\n\t}\n\n\tprotected newDots(): DPaginationDots {\n\t\treturn new DPaginationDots();\n\t}\n\n\tprotected get buttonLast(): DButton<string> | null {\n\t\tlet result = this._buttonLast;\n\t\tif (result === undefined) {\n\t\t\tresult = this.newButtonLast();\n\t\t\tthis._buttonLast = result;\n\t\t}\n\t\treturn result;\n\t}\n\n\tprotected newButtonLast(): DButton<string> | null {\n\t\tconst last = this._options?.button?.last;\n\t\tif (last !== null && last !== false && last !== undefined) {\n\t\t\tconst result = new DPaginationButtonLast(last !== true ? last : undefined);\n\t\t\tresult.on(\"active\", () => {\n\t\t\t\tthis.onButtonLastActive();\n\t\t\t});\n\t\t\treturn result;\n\t\t}\n\t\treturn null;\n\t}\n\n\tprotected onButtonLastActive(): void {\n\t\tthis.moveTo(this._size - 1);\n\t}\n\n\tprotected moveTo(index: number): void {\n\t\tif (0 <= index && index < this._size && this._value !== index) {\n\t\t\tconst oldIndex = this._value;\n\t\t\tthis._value = index;\n\t\t\tthis.emit(\"change\", index, oldIndex, this);\n\t\t\tthis.toDirty();\n\t\t\tDApplications.update(this);\n\t\t}\n\t}\n\n\tprotected get buttonNext(): DButton<string> | null {\n\t\tlet result = this._buttonNext;\n\t\tif (result === undefined) {\n\t\t\tresult = this.newButtonNext();\n\t\t\tthis._buttonNext = result;\n\t\t}\n\t\treturn result;\n\t}\n\n\tprotected newButtonNext(): DButton<string> | null {\n\t\tconst next = this._options?.button?.next;\n\t\tif (next !== null && next !== false) {\n\t\t\tconst result = new DPaginationButtonNext(next !== true ? next : undefined);\n\t\t\tresult.on(\"active\", (): void => {\n\t\t\t\tthis.onButtonNextActive();\n\t\t\t});\n\t\t\treturn result;\n\t\t}\n\t\treturn null;\n\t}\n\n\tprotected onButtonNextActive(): void {\n\t\tthis.moveTo(this._value + 1);\n\t}\n\n\tprotected get buttonPrevious(): DButton<string> | null {\n\t\tlet result = this._buttonPrevious;\n\t\tif (result === undefined) {\n\t\t\tresult = this.newButtonPrevious();\n\t\t\tthis._buttonPrevious = result;\n\t\t}\n\t\treturn result;\n\t}\n\n\tprotected newButtonPrevious(): DButton<string> | null {\n\t\tconst previous = this._options?.button?.previous;\n\t\tif (previous !== null && previous !== false) {\n\t\t\tconst result = new DPaginationButtonPrevious(previous !== true ? previous : undefined);\n\t\t\tresult.on(\"active\", (): void => {\n\t\t\t\tthis.onButtonPreviousActive();\n\t\t\t});\n\t\t\treturn result;\n\t\t}\n\t\treturn null;\n\t}\n\n\tprotected onButtonPreviousActive(): void {\n\t\tthis.moveTo(this._value - 1);\n\t}\n\n\tprotected get buttonTop(): DButton<string> | null {\n\t\tlet result = this._buttonTop;\n\t\tif (result === undefined) {\n\t\t\tresult = this.newButtonTop();\n\t\t\tthis._buttonTop = result;\n\t\t}\n\t\treturn result;\n\t}\n\n\tprotected newButtonTop(): DButton<string> | null {\n\t\tconst top = this._options?.button?.top;\n\t\tif (top !== null && top !== false && top !== undefined) {\n\t\t\tconst result = new DPaginationButtonTop(top !== true ? top : undefined);\n\t\t\tresult.on(\"active\", (): void => {\n\t\t\t\tthis.onButtonTopActive();\n\t\t\t});\n\t\t\treturn result;\n\t\t}\n\t\treturn null;\n\t}\n\n\tprotected onButtonTopActive(): void {\n\t\tthis.moveTo(0);\n\t}\n\n\tprotected newButtonPage(): DButton<number> {\n\t\tconst result = new DPaginationButtonPage(this._options?.button?.page);\n\t\tresult.on(\"active\", (): void => {\n\t\t\tthis.onButtonPageActive(result);\n\t\t});\n\t\treturn result;\n\t}\n\n\tprotected get buttonPages0(): DButton<number>[] {\n\t\tlet result = this._buttonPages0;\n\t\tif (result == null) {\n\t\t\tresult = this.newButtonPages0();\n\t\t\tthis._buttonPages0 = result;\n\t\t}\n\t\treturn result;\n\t}\n\n\tprotected newButtonPages0(): DButton<number>[] {\n\t\treturn [\n\t\t\tthis.newButtonPage(),\n\t\t\tthis.newButtonPage(),\n\t\t\tthis.newButtonPage(),\n\t\t\tthis.newButtonPage()\n\t\t];\n\t}\n\n\tprotected allocButtonPages0(size: number): void {\n\t\tconst buttonPages0 = this.buttonPages0;\n\t\tconst buttonPages0Length = buttonPages0.length;\n\t\tconst index = this.getChildIndex(buttonPages0[buttonPages0Length - 1]) + 1;\n\t\tfor (let i = 0, imax = size - buttonPages0Length; i < imax; ++i) {\n\t\t\tconst buttonPage = this.newButtonPage();\n\t\t\tthis.addChildAt(buttonPage, index + i);\n\t\t\tbuttonPages0.push(buttonPage);\n\t\t}\n\t}\n\n\tprotected get buttonPages1(): DButton<number>[] {\n\t\tlet result = this._buttonPages1;\n\t\tif (result == null) {\n\t\t\tresult = this.newButtonPages1();\n\t\t\tthis._buttonPages1 = result;\n\t\t}\n\t\treturn result;\n\t}\n\n\tprotected newButtonPages1(): DButton<number>[] {\n\t\treturn [\n\t\t\tthis.newButtonPage(),\n\t\t\tthis.newButtonPage(),\n\t\t\tthis.newButtonPage(),\n\t\t\tthis.newButtonPage()\n\t\t];\n\t}\n\n\tprotected allocButtonPages1(size: number): void {\n\t\tconst buttonPages1 = this.buttonPages1;\n\t\tconst buttonPages1Length = buttonPages1.length;\n\t\tconst index = this.getChildIndex(buttonPages1[0]);\n\t\tfor (let i = 0, imax = size - buttonPages1Length; i < imax; ++i) {\n\t\t\tconst buttonPage = this.newButtonPage();\n\t\t\tthis.addChildAt(buttonPage, index);\n\t\t\tbuttonPages1.unshift(buttonPage);\n\t\t}\n\t}\n\n\tprotected get page(): DPaginationPage {\n\t\tlet result = this._page;\n\t\tif (result == null) {\n\t\t\tresult = this.newPage();\n\t\t\tthis._page = result;\n\t\t}\n\t\treturn result;\n\t}\n\n\tprotected newPage(): DPaginationPage {\n\t\treturn new DPaginationPage(this._options?.page);\n\t}\n\n\tprotected onButtonPageActive(button: DButton<number>): void {\n\t\tconst text = button.text;\n\t\tif (isNumber(text)) {\n\t\t\tthis.moveTo(text - 1);\n\t\t\tif (button.state.isFocused) {\n\t\t\t\tbutton.state.isHovered = false;\n\t\t\t\tthis.page.focus();\n\t\t\t}\n\t\t}\n\t}\n\n\tprotected get spaceLeft(): DLayoutSpace | null {\n\t\tlet result = this._spaceLeft;\n\t\tif (result === undefined) {\n\t\t\tresult = this.newSpaceLeft();\n\t\t\tthis._spaceLeft = result;\n\t\t}\n\t\treturn result;\n\t}\n\n\tprotected newSpaceLeft(): DLayoutSpace | null {\n\t\tif (this.buttonTop != null || this.buttonPrevious != null) {\n\t\t\treturn this.newSpace();\n\t\t}\n\t\treturn null;\n\t}\n\n\tprotected get spaceRight(): DLayoutSpace | null {\n\t\tlet result = this._spaceRight;\n\t\tif (result === undefined) {\n\t\t\tresult = this.newSpaceRight();\n\t\t\tthis._spaceRight = result;\n\t\t}\n\t\treturn result;\n\t}\n\n\tprotected newSpaceRight(): DLayoutSpace | null {\n\t\tif (this.buttonLast != null || this.buttonNext != null) {\n\t\t\treturn this.newSpace();\n\t\t}\n\t\treturn null;\n\t}\n\n\tprotected newSpace(): DLayoutSpace | null {\n\t\tconst space = this._options?.button?.space;\n\t\tif (space !== null && space !== false) {\n\t\t\tif (space === true || space === undefined) {\n\t\t\t\treturn new DLayoutSpace({\n\t\t\t\t\tweight: 1\n\t\t\t\t});\n\t\t\t} else if (isNumber(space)) {\n\t\t\t\treturn new DLayoutSpace({\n\t\t\t\t\twidth: space\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\treturn new DLayoutSpace(space);\n\t\t\t}\n\t\t}\n\t\treturn null;\n\t}\n\n\tprotected onReflow(): void {\n\t\tthis.update();\n\t\tsuper.onReflow();\n\t}\n\n\tprotected update(): void {\n\t\tconst size = this._size;\n\t\tconst value = this._value;\n\t\tif (size <= 0) {\n\t\t\tthis.doUpdate0(value, size);\n\t\t} else {\n\t\t\tif (this._auto.width.isOn) {\n\t\t\t\tthis.doUpdate2(value, size, 0, 0, 0, 0);\n\t\t\t} else {\n\t\t\t\tthis.doUpdate1(value, size);\n\t\t\t}\n\t\t}\n\t}\n\n\tprotected doUpdate0(value: number, size: number): void {\n\t\tconst buttonTop = this.buttonTop;\n\t\tif (buttonTop != null) {\n\t\t\tbuttonTop.state.isEnabled = false;\n\t\t}\n\t\tconst buttonPrevious = this.buttonPrevious;\n\t\tif (buttonPrevious != null) {\n\t\t\tbuttonPrevious.state.isEnabled = false;\n\t\t}\n\n\t\tthis.hideDots(this.dots0);\n\n\t\tconst buttonPages0 = this.buttonPages0;\n\t\tfor (let i = 0, imax = buttonPages0.length; i < imax; ++i) {\n\t\t\tthis.hidePage(buttonPages0[i]);\n\t\t}\n\n\t\tthis.hidePage(this.page);\n\n\t\tconst buttonPages1 = this.buttonPages1;\n\t\tfor (let i = 0, imax = buttonPages1.length; i < imax; ++i) {\n\t\t\tthis.hidePage(buttonPages1[i]);\n\t\t}\n\n\t\tthis.hideDots(this.dots1);\n\n\t\tconst buttonNext = this.buttonNext;\n\t\tif (buttonNext != null) {\n\t\t\tbuttonNext.state.isEnabled = false;\n\t\t}\n\t\tconst buttonLast = this.buttonLast;\n\t\tif (buttonLast) {\n\t\t\tbuttonLast.state.isEnabled = false;\n\t\t}\n\t}\n\n\tprotected doUpdate1(value: number, size: number): void {\n\t\tlet required = 0;\n\t\tlet nrequired = 0;\n\n\t\tconst buttonTop = this.buttonTop;\n\t\tif (buttonTop != null) {\n\t\t\trequired += buttonTop.width;\n\t\t\tnrequired += 1;\n\t\t}\n\t\tconst buttonPrevious = this.buttonPrevious;\n\t\tif (buttonPrevious != null) {\n\t\t\trequired += buttonPrevious.width;\n\t\t\tnrequired += 1;\n\t\t}\n\n\t\tconst spaceLeft = this.spaceLeft;\n\t\tif (spaceLeft != null) {\n\t\t\tif (spaceLeft.weight < 0) {\n\t\t\t\trequired += spaceLeft.width;\n\t\t\t}\n\t\t\tnrequired += 1;\n\t\t}\n\n\t\tconst page = this.page;\n\t\trequired += page.width;\n\t\tnrequired += 1;\n\n\t\tconst spaceRight = this.spaceRight;\n\t\tif (spaceRight != null) {\n\t\t\tif (spaceRight.weight < 0) {\n\t\t\t\trequired += spaceRight.width;\n\t\t\t}\n\t\t\tnrequired += 1;\n\t\t}\n\n\t\tconst buttonNext = this.buttonNext;\n\t\tif (buttonNext != null) {\n\t\t\trequired += buttonNext.width;\n\t\t\tnrequired += 1;\n\t\t}\n\t\tconst buttonLast = this.buttonLast;\n\t\tif (buttonLast) {\n\t\t\trequired += buttonLast.width;\n\t\t\tnrequired += 1;\n\t\t}\n\n\t\tconst marginHorizontal = this._margin.horizontal;\n\t\tif (2 <= nrequired) {\n\t\t\trequired += (nrequired - 1) * marginHorizontal;\n\t\t}\n\n\t\tconst padding = this.padding;\n\t\tconst space = this.width - (padding.getLeft() + padding.getRight());\n\t\tif (space <= required) {\n\t\t\tthis.doUpdate2(value, size, 4, 4, 0, 0);\n\t\t} else {\n\t\t\tconst buttonPages0 = this.buttonPages0;\n\t\t\tconst buttonPage0Width = buttonPages0[0].width;\n\t\t\tconst nrequired0 = value;\n\t\t\tconst required0 = nrequired0 * (buttonPage0Width + marginHorizontal);\n\n\t\t\tconst buttonPages1 = this.buttonPages1;\n\t\t\tconst buttonPage1Width = buttonPages1[0].width;\n\t\t\tconst nrequired1 = size - (value + 1);\n\t\t\tconst required1 = nrequired1 * (buttonPage1Width + marginHorizontal);\n\n\t\t\tif (required + required0 + required1 <= space) {\n\t\t\t\tthis.doUpdate2(value, size, 0, 0, 0, 0);\n\t\t\t} else {\n\t\t\t\tconst dots1 = this.dots1;\n\t\t\t\tconst dots1Width = dots1.width;\n\t\t\t\tconst dots0 = this.dots0;\n\t\t\t\tconst dots0Width = dots0.width;\n\t\t\t\tconst m0 = marginHorizontal + buttonPage0Width;\n\t\t\t\tconst m1 = marginHorizontal + buttonPage1Width;\n\t\t\t\tconst required0n = dots0Width + m0;\n\t\t\t\tconst required1n = dots1Width + m1;\n\t\t\t\tconst required0m = required0n + m0;\n\t\t\t\tconst required1m = required1n + m1;\n\t\t\t\tif (required0 <= required1) {\n\t\t\t\t\tif (3 <= nrequired1 && required + required0 + required1m <= space) {\n\t\t\t\t\t\tconst n1 = Math.floor((space - (required + required0 + required1m)) / m1);\n\t\t\t\t\t\tthis.doUpdate2(value, size, 0, 1, 0, n1);\n\t\t\t\t\t} else if (2 <= nrequired1 && required + required0 + required1n <= space) {\n\t\t\t\t\t\tthis.doUpdate2(value, size, 0, 2, 0, 0);\n\t\t\t\t\t} else if (\n\t\t\t\t\t\t3 <= nrequired0 &&\n\t\t\t\t\t\t2 <= nrequired1 &&\n\t\t\t\t\t\trequired + required0m + required1n <= space\n\t\t\t\t\t) {\n\t\t\t\t\t\tthis.doUpdate2(value, size, 1, 2, 0, 0);\n\t\t\t\t\t} else if (\n\t\t\t\t\t\t2 <= nrequired0 &&\n\t\t\t\t\t\t2 <= nrequired1 &&\n\t\t\t\t\t\trequired + required0n + required1n <= space\n\t\t\t\t\t) {\n\t\t\t\t\t\tthis.doUpdate2(value, size, 2, 2, 0, 0);\n\t\t\t\t\t} else if (\n\t\t\t\t\t\t1 <= nrequired0 &&\n\t\t\t\t\t\t1 <= nrequired1 &&\n\t\t\t\t\t\trequired + dots0Width + dots1Width <= space\n\t\t\t\t\t) {\n\t\t\t\t\t\tthis.doUpdate2(value, size, 3, 3, 0, 0);\n\t\t\t\t\t} else {\n\t\t\t\t\t\tthis.doUpdate2(value, size, 4, 4, 0, 0);\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tif (3 <= nrequired0 && required + required0m + required1 <= space) {\n\t\t\t\t\t\tconst n0 = Math.floor((space - (required + required0m + required1)) / m0);\n\t\t\t\t\t\tthis.doUpdate2(value, size, 1, 0, n0, 0);\n\t\t\t\t\t} else if (2 <= nrequired0 && required + required0n + required1 <= space) {\n\t\t\t\t\t\tthis.doUpdate2(value, size, 2, 0, 0, 0);\n\t\t\t\t\t} else if (\n\t\t\t\t\t\t2 <= nrequired0 &&\n\t\t\t\t\t\t3 <= nrequired1 &&\n\t\t\t\t\t\trequired + required0n + required1m <= space\n\t\t\t\t\t) {\n\t\t\t\t\t\tthis.doUpdate2(value, size, 2, 1, 0, 0);\n\t\t\t\t\t} else if (\n\t\t\t\t\t\t2 <= nrequired0 &&\n\t\t\t\t\t\t2 <= nrequired1 &&\n\t\t\t\t\t\trequired + required0n + required1n <= space\n\t\t\t\t\t) {\n\t\t\t\t\t\tthis.doUpdate2(value, size, 2, 2, 0, 0);\n\t\t\t\t\t} else if (\n\t\t\t\t\t\t1 <= nrequired0 &&\n\t\t\t\t\t\t1 <= nrequired1 &&\n\t\t\t\t\t\trequired + dots0Width + dots1Width <= space\n\t\t\t\t\t) {\n\t\t\t\t\t\tthis.doUpdate2(value, size, 3, 3, 0, 0);\n\t\t\t\t\t} else {\n\t\t\t\t\t\tthis.doUpdate2(value, size, 4, 4, 0, 0);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\tprotected doUpdate2(\n\t\tvalue: number,\n\t\tsize: number,\n\t\tleft: 0 | 1 | 2 | 3 | 4,\n\t\tright: 0 | 1 | 2 | 3 | 4,\n\t\tnleft1: number,\n\t\tnright1: number\n\t): void {\n\t\tconst buttonTop = this.buttonTop;\n\t\tif (buttonTop != null) {\n\t\t\tbuttonTop.state.isEnabled = 0 < value;\n\t\t}\n\t\tconst buttonPrevious = this.buttonPrevious;\n\t\tif (buttonPrevious != null) {\n\t\t\tbuttonPrevious.state.isEnabled = 0 < value;\n\t\t}\n\n\t\tconst buttonPages0 = this.buttonPages0;\n\t\tswitch (left) {\n\t\t\tcase 0:\n\t\t\t\tthis.hideDots(this.dots0);\n\t\t\t\tthis.allocButtonPages0(value);\n\t\t\t\tfor (let i = 0, imax = buttonPages0.length; i < imax; ++i) {\n\t\t\t\t\tif (i < value) {\n\t\t\t\t\t\tthis.showPage(buttonPages0[i], i);\n\t\t\t\t\t} else {\n\t\t\t\t\t\tthis.hidePage(buttonPages0[i]);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tbreak;\n\t\t\tcase 1:\n\t\t\t\tthis.showDots(this.dots0, 1, value - 2 - nleft1);\n\t\t\t\tthis.allocButtonPages0(2 + nleft1);\n\t\t\t\tthis.showPage(buttonPages0[0], 0);\n\t\t\t\tfor (let i = 1, imax = buttonPages0.length - nleft1 - 1; i < imax; ++i) {\n\t\t\t\t\tthis.hidePage(buttonPages0[i]);\n\t\t\t\t}\n\t\t\t\tfor (let i = 0, imax = 1 + nleft1; i < imax; ++i) {\n\t\t\t\t\tthis.showPage(\n\t\t\t\t\t\tbuttonPages0[buttonPages0.length - imax + i],\n\t\t\t\t\t\tvalue - 1 - (imax - 1) + i\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t\tbreak;\n\t\t\tcase 2:\n\t\t\t\tthis.showDots(this.dots0, 0, value - 2);\n\t\t\t\tfor (let i = 0, imax = buttonPages0.length - 1; i < imax; ++i) {\n\t\t\t\t\tthis.hidePage(buttonPages0[i]);\n\t\t\t\t}\n\t\t\t\tthis.showPage(buttonPages0[buttonPages0.length - 1], value - 1);\n\t\t\t\tbreak;\n\t\t\tcase 3:\n\t\t\t\tthis.showDots(this.dots0, 0, value - 1);\n\t\t\t\tfor (let i = 0, imax = buttonPages0.length; i < imax; ++i) {\n\t\t\t\t\tthis.hidePage(buttonPages0[i]);\n\t\t\t\t}\n\t\t\t\tbreak;\n\t\t\tcase 4:\n\t\t\t\tthis.hideDots(this.dots0);\n\t\t\t\tfor (let i = 0, imax = buttonPages0.length; i < imax; ++i) {\n\t\t\t\t\tthis.hidePage(buttonPages0[i]);\n\t\t\t\t}\n\t\t\t\tbreak;\n\t\t}\n\n\t\tthis.showPage(this.page, value);\n\n\t\tconst buttonPages1 = this.buttonPages1;\n\t\tswitch (right) {\n\t\t\tcase 0:\n\t\t\t\tthis.allocButtonPages1(size - (value + 1));\n\t\t\t\tfor (let i = 0, imax = buttonPages1.length; i < imax; ++i) {\n\t\t\t\t\tconst j = value + 1 + i;\n\t\t\t\t\tif (j < size) {\n\t\t\t\t\t\tthis.showPage(buttonPages1[i], j);\n\t\t\t\t\t} else {\n\t\t\t\t\t\tthis.hidePage(buttonPages1[i]);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tthis.hideDots(this.dots1);\n\t\t\t\tbreak;\n\t\t\tcase 1:\n\t\t\t\tthis.allocButtonPages1(2 + nright1);\n\t\t\t\tfor (let i = 0, imax = 1 + nright1; i < imax; ++i) {\n\t\t\t\t\tthis.showPage(buttonPages1[i], value + 1 + i);\n\t\t\t\t}\n\t\t\t\tfor (let i = 1 + nright1, imax = buttonPages1.length - 1; i < imax; ++i) {\n\t\t\t\t\tthis.hidePage(buttonPages1[i]);\n\t\t\t\t}\n\t\t\t\tthis.showPage(buttonPages1[buttonPages1.length - 1], size - 1);\n\t\t\t\tthis.showDots(this.dots1, value + 2 + nright1, size - 2);\n\t\t\t\tbreak;\n\t\t\tcase 2:\n\t\t\t\tthis.showPage(buttonPages1[0], value + 1);\n\t\t\t\tfor (let i = 1, imax = buttonPages1.length; i < imax; ++i) {\n\t\t\t\t\tthis.hidePage(buttonPages1[i]);\n\t\t\t\t}\n\t\t\t\tthis.showDots(this.dots1, value + 2, size - 1);\n\t\t\t\tbreak;\n\t\t\tcase 3:\n\t\t\t\tfor (let i = 0, imax = buttonPages1.length; i < imax; ++i) {\n\t\t\t\t\tthis.hidePage(buttonPages1[i]);\n\t\t\t\t}\n\t\t\t\tthis.showDots(this.dots1, value + 1, size - 1);\n\t\t\t\tbreak;\n\t\t\tcase 4:\n\t\t\t\tfor (let i = 0, imax = buttonPages1.length; i < imax; ++i) {\n\t\t\t\t\tthis.hidePage(buttonPages1[i]);\n\t\t\t\t}\n\t\t\t\tthis.hideDots(this.dots1);\n\t\t\t\tbreak;\n\t\t}\n\n\t\tconst buttonNext = this.buttonNext;\n\t\tif (buttonNext != null) {\n\t\t\tbuttonNext.state.isEnabled = value < size - 1;\n\t\t}\n\t\tconst buttonLast = this.buttonLast;\n\t\tif (buttonLast != null) {\n\t\t\tbuttonLast.state.isEnabled = value < size - 1;\n\t\t}\n\t}\n\n\tprotected showPage(button: DImageBase<number>, index: number): void {\n\t\tbutton.text = index + 1;\n\t\tbutton.show();\n\t}\n\n\tprotected hidePage(button: DImageBase<number>): void {\n\t\tbutton.hide();\n\t}\n\n\tprotected showDots(dots: DPaginationDots, from: number, to: number): void {\n\t\tdots.show();\n\t}\n\n\tprotected hideDots(dots: DPaginationDots): void {\n\t\tdots.hide();\n\t}\n\n\tprotected getType(): string {\n\t\treturn \"DPagination\";\n\t}\n}\n"]}
1
+ {"version":3,"file":"d-pagination.js","sourceRoot":"","sources":["../../../src/main/typescript/wcardinal/ui/d-pagination.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { DButton } from \"./d-button\";\nimport {\n\tDLayoutHorizontal,\n\tDLayoutHorizontalOptions,\n\tDThemeLayoutHorizontal\n} from \"./d-layout-horizontal\";\nimport { DPaginationDots } from \"./d-pagination-dots\";\nimport { DPaginationButtonLast, DPaginationButtonLastOptions } from \"./d-pagination-button-last\";\nimport { DPaginationButtonNext, DPaginationButtonNextOptions } from \"./d-pagination-button-next\";\nimport { DPaginationButtonPage, DPaginationButtonPageOptions } from \"./d-pagination-button-page\";\nimport {\n\tDPaginationButtonPrevious,\n\tDPaginationButtonPreviousOptions\n} from \"./d-pagination-button-previous\";\nimport { DPaginationButtonTop, DPaginationButtonTopOptions } from \"./d-pagination-button-top\";\nimport { isNumber } from \"./util/is-number\";\nimport { DPaginationPage, DPaginationPageOptions } from \"./d-pagination-page\";\nimport { DLayoutSpace, DLayoutSpaceOptions } from \"./d-layout-space\";\nimport { DImageBase } from \"./d-image-base\";\nimport { DApplications } from \"./d-applications\";\n\nexport interface DPaginationButtonOptions {\n\t/**\n\t * {@link DPagination} top button options.\n\t */\n\ttop?: DPaginationButtonTopOptions | boolean | null;\n\n\t/**\n\t * {@link DPagination} previous button options.\n\t */\n\tprevious?: DPaginationButtonPreviousOptions | boolean | null;\n\n\t/**\n\t * {@link DPagination} page button options.\n\t */\n\tpage?: DPaginationButtonPageOptions;\n\n\t/**\n\t * {@link DPagination} next button options.\n\t */\n\tnext?: DPaginationButtonNextOptions | boolean | null;\n\n\t/**\n\t * {@link DPagination} last button options.\n\t */\n\tlast?: DPaginationButtonLastOptions | boolean | null;\n\n\t/**\n\t * A space between page buttons and next / previous buttons.\n\t */\n\tspace?: DLayoutSpaceOptions | boolean | number | null;\n}\n\nexport interface DPaginationOptions<THEME extends DThemePagination>\n\textends DLayoutHorizontalOptions<THEME> {\n\t/**\n\t * An index number of a selected page.\n\t */\n\tvalue?: number;\n\n\t/**\n\t * An index number of a selected page.\n\t *\n\t * @deprecated in favor of {@link value}.\n\t */\n\tselected?: number;\n\n\t/**\n\t * A total number of pages.\n\t */\n\tsize?: number;\n\n\t/**\n\t * A total number of pages.\n\t *\n\t * @deprecated in favor of {@link size};\n\t */\n\ttotal?: number;\n\n\t/**\n\t * {@link DPagination} button options.\n\t */\n\tbutton?: DPaginationButtonOptions;\n\n\t/**\n\t * {@link DPagination} page options.\n\t */\n\tpage?: DPaginationPageOptions;\n}\n\nexport interface DThemePagination extends DThemeLayoutHorizontal {\n\tgetButtonSpace(): number;\n}\n\nexport class DPagination<\n\tTHEME extends DThemePagination = DThemePagination,\n\tOPTIONS extends DPaginationOptions<THEME> = DPaginationOptions<THEME>\n> extends DLayoutHorizontal<THEME, OPTIONS> {\n\tprotected _size: number;\n\tprotected _value: number;\n\n\tprotected _buttonTop?: DButton<string> | null;\n\tprotected _buttonPrevious?: DButton<string> | null;\n\tprotected _spaceLeft?: DLayoutSpace | null;\n\tprotected _dots0?: DPaginationDots;\n\tprotected _buttonPages0?: DButton<number>[];\n\tprotected _page?: DPaginationPage;\n\tprotected _buttonPages1?: DButton<number>[];\n\tprotected _dots1?: DPaginationDots;\n\tprotected _spaceRight?: DLayoutSpace | null;\n\tprotected _buttonNext?: DButton<string> | null;\n\tprotected _buttonLast?: DButton<string> | null;\n\n\tconstructor(options?: OPTIONS) {\n\t\tsuper(options);\n\n\t\tif (options != null) {\n\t\t\tthis._size = options.size ?? options.total ?? 10;\n\t\t\tthis._value = options.value ?? options.selected ?? 0;\n\t\t} else {\n\t\t\tthis._size = 10;\n\t\t\tthis._value = 0;\n\t\t}\n\n\t\tconst buttonTop = this.buttonTop;\n\t\tif (buttonTop != null) {\n\t\t\tthis.addChild(buttonTop);\n\t\t}\n\t\tconst buttonPrevious = this.buttonPrevious;\n\t\tif (buttonPrevious != null) {\n\t\t\tthis.addChild(buttonPrevious);\n\t\t}\n\t\tconst spaceLeft = this.spaceLeft;\n\t\tif (spaceLeft != null) {\n\t\t\tthis.addChild(spaceLeft);\n\t\t}\n\t\tconst buttonPages0 = this.buttonPages0;\n\t\tconst buttonPages0Length = buttonPages0.length;\n\t\tthis.addChild(buttonPages0[0]);\n\t\tthis.addChild(this.dots0);\n\t\tfor (let i = 1; i < buttonPages0Length; ++i) {\n\t\t\tthis.addChild(buttonPages0[i]);\n\t\t}\n\t\tthis.addChild(this.page);\n\t\tconst buttonPages1 = this.buttonPages1;\n\t\tconst buttonPages1Length = buttonPages1.length;\n\t\tfor (let i = 0, imax = buttonPages1Length - 1; i < imax; ++i) {\n\t\t\tthis.addChild(buttonPages1[i]);\n\t\t}\n\t\tthis.addChild(this.dots1);\n\t\tthis.addChild(buttonPages1[buttonPages1Length - 1]);\n\t\tconst spaceRight = this.spaceRight;\n\t\tif (spaceRight != null) {\n\t\t\tthis.addChild(spaceRight);\n\t\t}\n\t\tconst buttonNext = this.buttonNext;\n\t\tif (buttonNext != null) {\n\t\t\tthis.addChild(buttonNext);\n\t\t}\n\t\tconst buttonLast = this.buttonLast;\n\t\tif (buttonLast != null) {\n\t\t\tthis.addChild(buttonLast);\n\t\t}\n\t}\n\n\t/**\n\t * Sets a value that is an index of a current page.\n\t *\n\t * @param value a value that is an index of a page\n\t */\n\tset value(value: number) {\n\t\tif (0 <= value && value < this._size && this._value !== value) {\n\t\t\tthis._value = value;\n\t\t\tthis.toDirty();\n\t\t\tDApplications.update(this);\n\t\t}\n\t}\n\n\t/**\n\t * Returns a value that is an index of a current page.\n\t *\n\t * @returns a value that is an index of a selected page.\n\t */\n\tget value(): number {\n\t\treturn this._value;\n\t}\n\n\t/**\n\t * Selects a page.\n\t *\n\t * @param index an index of a page\n\t * @deprecated in favor of {@link #value}.\n\t */\n\tset selected(index: number) {\n\t\tthis.value = index;\n\t}\n\n\t/**\n\t * Returns an index of the selected page.\n\t *\n\t * @returns an index of the selected page.\n\t * @deprecated in favor of {@link value}.\n\t */\n\tget selected(): number {\n\t\treturn this.value;\n\t}\n\n\t/**\n\t * Sets a number of total pages.\n\t *\n\t * @param size a number of pages\n\t */\n\tset size(size: number) {\n\t\tif (0 <= size && this._size !== size) {\n\t\t\tthis._size = size;\n\t\t\tif (size === 0) {\n\t\t\t\tthis._value = -1;\n\t\t\t} else {\n\t\t\t\tthis._value = Math.max(0, Math.min(this._size - 1, this._value));\n\t\t\t}\n\t\t\tthis.toDirty();\n\t\t\tDApplications.update(this);\n\t\t}\n\t}\n\n\t/**\n\t * Returns a number of total pages.\n\t *\n\t * @returns a number of total pages.\n\t */\n\tget size(): number {\n\t\treturn this._size;\n\t}\n\n\t/**\n\t * Sets a number of total pages.\n\t *\n\t * @param total a number of pages\n\t * @deprecated in favor of {@link size}\n\t */\n\tset total(total: number) {\n\t\tthis.size = total;\n\t}\n\n\t/**\n\t * Returns a number of total pages.\n\t *\n\t * @returns a number of total pages.\n\t * @deprecated in favor of {@link size}\n\t */\n\tget total(): number {\n\t\treturn this.size;\n\t}\n\n\tprotected get dots0(): DPaginationDots {\n\t\tlet result = this._dots0;\n\t\tif (result == null) {\n\t\t\tresult = this.newDots();\n\t\t\tthis._dots0 = result;\n\t\t}\n\t\treturn result;\n\t}\n\n\tprotected get dots1(): DPaginationDots {\n\t\tlet result = this._dots1;\n\t\tif (result == null) {\n\t\t\tresult = this.newDots();\n\t\t\tthis._dots1 = result;\n\t\t}\n\t\treturn result;\n\t}\n\n\tprotected newDots(): DPaginationDots {\n\t\treturn new DPaginationDots();\n\t}\n\n\tprotected get buttonLast(): DButton<string> | null {\n\t\tlet result = this._buttonLast;\n\t\tif (result === undefined) {\n\t\t\tresult = this.newButtonLast();\n\t\t\tthis._buttonLast = result;\n\t\t}\n\t\treturn result;\n\t}\n\n\tprotected newButtonLast(): DButton<string> | null {\n\t\tconst last = this._options?.button?.last;\n\t\tif (last !== null && last !== false && last !== undefined) {\n\t\t\tconst result = new DPaginationButtonLast(last !== true ? last : undefined);\n\t\t\tresult.on(\"active\", () => {\n\t\t\t\tthis.onButtonLastActive();\n\t\t\t});\n\t\t\treturn result;\n\t\t}\n\t\treturn null;\n\t}\n\n\tprotected onButtonLastActive(): void {\n\t\tthis.moveTo(this._size - 1);\n\t}\n\n\tprotected moveTo(index: number): void {\n\t\tif (0 <= index && index < this._size && this._value !== index) {\n\t\t\tconst oldIndex = this._value;\n\t\t\tthis._value = index;\n\t\t\tthis.emit(\"change\", index, oldIndex, this);\n\t\t\tthis.toDirty();\n\t\t\tDApplications.update(this);\n\t\t}\n\t}\n\n\tprotected get buttonNext(): DButton<string> | null {\n\t\tlet result = this._buttonNext;\n\t\tif (result === undefined) {\n\t\t\tresult = this.newButtonNext();\n\t\t\tthis._buttonNext = result;\n\t\t}\n\t\treturn result;\n\t}\n\n\tprotected newButtonNext(): DButton<string> | null {\n\t\tconst next = this._options?.button?.next;\n\t\tif (next !== null && next !== false) {\n\t\t\tconst result = new DPaginationButtonNext(next !== true ? next : undefined);\n\t\t\tresult.on(\"active\", (): void => {\n\t\t\t\tthis.onButtonNextActive();\n\t\t\t});\n\t\t\treturn result;\n\t\t}\n\t\treturn null;\n\t}\n\n\tprotected onButtonNextActive(): void {\n\t\tthis.moveTo(this._value + 1);\n\t}\n\n\tprotected get buttonPrevious(): DButton<string> | null {\n\t\tlet result = this._buttonPrevious;\n\t\tif (result === undefined) {\n\t\t\tresult = this.newButtonPrevious();\n\t\t\tthis._buttonPrevious = result;\n\t\t}\n\t\treturn result;\n\t}\n\n\tprotected newButtonPrevious(): DButton<string> | null {\n\t\tconst previous = this._options?.button?.previous;\n\t\tif (previous !== null && previous !== false) {\n\t\t\tconst result = new DPaginationButtonPrevious(previous !== true ? previous : undefined);\n\t\t\tresult.on(\"active\", (): void => {\n\t\t\t\tthis.onButtonPreviousActive();\n\t\t\t});\n\t\t\treturn result;\n\t\t}\n\t\treturn null;\n\t}\n\n\tprotected onButtonPreviousActive(): void {\n\t\tthis.moveTo(this._value - 1);\n\t}\n\n\tprotected get buttonTop(): DButton<string> | null {\n\t\tlet result = this._buttonTop;\n\t\tif (result === undefined) {\n\t\t\tresult = this.newButtonTop();\n\t\t\tthis._buttonTop = result;\n\t\t}\n\t\treturn result;\n\t}\n\n\tprotected newButtonTop(): DButton<string> | null {\n\t\tconst top = this._options?.button?.top;\n\t\tif (top !== null && top !== false && top !== undefined) {\n\t\t\tconst result = new DPaginationButtonTop(top !== true ? top : undefined);\n\t\t\tresult.on(\"active\", (): void => {\n\t\t\t\tthis.onButtonTopActive();\n\t\t\t});\n\t\t\treturn result;\n\t\t}\n\t\treturn null;\n\t}\n\n\tprotected onButtonTopActive(): void {\n\t\tthis.moveTo(0);\n\t}\n\n\tprotected newButtonPage(): DButton<number> {\n\t\tconst result = new DPaginationButtonPage(this._options?.button?.page);\n\t\tresult.on(\"active\", (): void => {\n\t\t\tthis.onButtonPageActive(result);\n\t\t});\n\t\treturn result;\n\t}\n\n\tprotected get buttonPages0(): DButton<number>[] {\n\t\tlet result = this._buttonPages0;\n\t\tif (result == null) {\n\t\t\tresult = this.newButtonPages0();\n\t\t\tthis._buttonPages0 = result;\n\t\t}\n\t\treturn result;\n\t}\n\n\tprotected newButtonPages0(): DButton<number>[] {\n\t\treturn [\n\t\t\tthis.newButtonPage(),\n\t\t\tthis.newButtonPage(),\n\t\t\tthis.newButtonPage(),\n\t\t\tthis.newButtonPage()\n\t\t];\n\t}\n\n\tprotected allocButtonPages0(size: number): void {\n\t\tconst buttonPages0 = this.buttonPages0;\n\t\tconst buttonPages0Length = buttonPages0.length;\n\t\tconst index = this.getChildIndex(buttonPages0[buttonPages0Length - 1]) + 1;\n\t\tfor (let i = 0, imax = size - buttonPages0Length; i < imax; ++i) {\n\t\t\tconst buttonPage = this.newButtonPage();\n\t\t\tthis.addChildAt(buttonPage, index + i);\n\t\t\tbuttonPages0.push(buttonPage);\n\t\t}\n\t}\n\n\tprotected get buttonPages1(): DButton<number>[] {\n\t\tlet result = this._buttonPages1;\n\t\tif (result == null) {\n\t\t\tresult = this.newButtonPages1();\n\t\t\tthis._buttonPages1 = result;\n\t\t}\n\t\treturn result;\n\t}\n\n\tprotected newButtonPages1(): DButton<number>[] {\n\t\treturn [\n\t\t\tthis.newButtonPage(),\n\t\t\tthis.newButtonPage(),\n\t\t\tthis.newButtonPage(),\n\t\t\tthis.newButtonPage()\n\t\t];\n\t}\n\n\tprotected allocButtonPages1(size: number): void {\n\t\tconst buttonPages1 = this.buttonPages1;\n\t\tconst buttonPages1Length = buttonPages1.length;\n\t\tconst index = this.getChildIndex(buttonPages1[0]);\n\t\tfor (let i = 0, imax = size - buttonPages1Length; i < imax; ++i) {\n\t\t\tconst buttonPage = this.newButtonPage();\n\t\t\tthis.addChildAt(buttonPage, index);\n\t\t\tbuttonPages1.unshift(buttonPage);\n\t\t}\n\t}\n\n\tprotected get page(): DPaginationPage {\n\t\tlet result = this._page;\n\t\tif (result == null) {\n\t\t\tresult = this.newPage();\n\t\t\tthis._page = result;\n\t\t}\n\t\treturn result;\n\t}\n\n\tprotected newPage(): DPaginationPage {\n\t\treturn new DPaginationPage(this._options?.page);\n\t}\n\n\tprotected onButtonPageActive(button: DButton<number>): void {\n\t\tconst text = button.text;\n\t\tif (isNumber(text)) {\n\t\t\tthis.moveTo(text - 1);\n\t\t\tif (button.state.isFocused) {\n\t\t\t\tbutton.state.isHovered = false;\n\t\t\t\tthis.page.focus();\n\t\t\t}\n\t\t}\n\t}\n\n\tprotected get spaceLeft(): DLayoutSpace | null {\n\t\tlet result = this._spaceLeft;\n\t\tif (result === undefined) {\n\t\t\tresult = this.newSpaceLeft();\n\t\t\tthis._spaceLeft = result;\n\t\t}\n\t\treturn result;\n\t}\n\n\tprotected newSpaceLeft(): DLayoutSpace | null {\n\t\tif (this.buttonTop != null || this.buttonPrevious != null) {\n\t\t\treturn this.newSpace();\n\t\t}\n\t\treturn null;\n\t}\n\n\tprotected get spaceRight(): DLayoutSpace | null {\n\t\tlet result = this._spaceRight;\n\t\tif (result === undefined) {\n\t\t\tresult = this.newSpaceRight();\n\t\t\tthis._spaceRight = result;\n\t\t}\n\t\treturn result;\n\t}\n\n\tprotected newSpaceRight(): DLayoutSpace | null {\n\t\tif (this.buttonLast != null || this.buttonNext != null) {\n\t\t\treturn this.newSpace();\n\t\t}\n\t\treturn null;\n\t}\n\n\tprotected newSpace(): DLayoutSpace | null {\n\t\tconst space = this._options?.button?.space;\n\t\tif (space !== null && space !== false) {\n\t\t\tif (space === true || space === undefined) {\n\t\t\t\treturn new DLayoutSpace({\n\t\t\t\t\tweight: 1\n\t\t\t\t});\n\t\t\t} else if (isNumber(space)) {\n\t\t\t\treturn new DLayoutSpace({\n\t\t\t\t\twidth: space\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\treturn new DLayoutSpace(space);\n\t\t\t}\n\t\t}\n\t\treturn null;\n\t}\n\n\tprotected onReflow(): void {\n\t\tthis.update();\n\t\tsuper.onReflow();\n\t}\n\n\tprotected update(): void {\n\t\tconst size = this._size;\n\t\tconst value = this._value;\n\t\tif (size <= 0) {\n\t\t\tthis.doUpdate0(value, size);\n\t\t} else {\n\t\t\tif (this._auto.width.isOn) {\n\t\t\t\tthis.doUpdate2(value, size, 0, 0, 0, 0);\n\t\t\t} else {\n\t\t\t\tthis.doUpdate1(value, size);\n\t\t\t}\n\t\t}\n\t}\n\n\tprotected doUpdate0(value: number, size: number): void {\n\t\tconst buttonTop = this.buttonTop;\n\t\tif (buttonTop != null) {\n\t\t\tbuttonTop.state.isEnabled = false;\n\t\t}\n\t\tconst buttonPrevious = this.buttonPrevious;\n\t\tif (buttonPrevious != null) {\n\t\t\tbuttonPrevious.state.isEnabled = false;\n\t\t}\n\n\t\tthis.hideDots(this.dots0);\n\n\t\tconst buttonPages0 = this.buttonPages0;\n\t\tfor (let i = 0, imax = buttonPages0.length; i < imax; ++i) {\n\t\t\tthis.hidePage(buttonPages0[i]);\n\t\t}\n\n\t\tthis.hidePage(this.page);\n\n\t\tconst buttonPages1 = this.buttonPages1;\n\t\tfor (let i = 0, imax = buttonPages1.length; i < imax; ++i) {\n\t\t\tthis.hidePage(buttonPages1[i]);\n\t\t}\n\n\t\tthis.hideDots(this.dots1);\n\n\t\tconst buttonNext = this.buttonNext;\n\t\tif (buttonNext != null) {\n\t\t\tbuttonNext.state.isEnabled = false;\n\t\t}\n\t\tconst buttonLast = this.buttonLast;\n\t\tif (buttonLast) {\n\t\t\tbuttonLast.state.isEnabled = false;\n\t\t}\n\t}\n\n\tprotected doUpdate1(value: number, size: number): void {\n\t\tlet required = 0;\n\t\tlet nrequired = 0;\n\n\t\tconst buttonTop = this.buttonTop;\n\t\tif (buttonTop != null) {\n\t\t\trequired += buttonTop.width;\n\t\t\tnrequired += 1;\n\t\t}\n\t\tconst buttonPrevious = this.buttonPrevious;\n\t\tif (buttonPrevious != null) {\n\t\t\trequired += buttonPrevious.width;\n\t\t\tnrequired += 1;\n\t\t}\n\n\t\tconst spaceLeft = this.spaceLeft;\n\t\tif (spaceLeft != null) {\n\t\t\tif (spaceLeft.weight < 0) {\n\t\t\t\trequired += spaceLeft.width;\n\t\t\t}\n\t\t\tnrequired += 1;\n\t\t}\n\n\t\tconst page = this.page;\n\t\trequired += page.width;\n\t\tnrequired += 1;\n\n\t\tconst spaceRight = this.spaceRight;\n\t\tif (spaceRight != null) {\n\t\t\tif (spaceRight.weight < 0) {\n\t\t\t\trequired += spaceRight.width;\n\t\t\t}\n\t\t\tnrequired += 1;\n\t\t}\n\n\t\tconst buttonNext = this.buttonNext;\n\t\tif (buttonNext != null) {\n\t\t\trequired += buttonNext.width;\n\t\t\tnrequired += 1;\n\t\t}\n\t\tconst buttonLast = this.buttonLast;\n\t\tif (buttonLast) {\n\t\t\trequired += buttonLast.width;\n\t\t\tnrequired += 1;\n\t\t}\n\n\t\tconst marginHorizontal = this._margin.horizontal;\n\t\tif (2 <= nrequired) {\n\t\t\trequired += (nrequired - 1) * marginHorizontal;\n\t\t}\n\n\t\tconst padding = this.padding;\n\t\tconst space = this.width - (padding.getLeft() + padding.getRight());\n\t\tif (space <= required) {\n\t\t\tthis.doUpdate2(value, size, 4, 4, 0, 0);\n\t\t} else {\n\t\t\tconst buttonPages0 = this.buttonPages0;\n\t\t\tconst buttonPage0Width = buttonPages0[0].width;\n\t\t\tconst nrequired0 = value;\n\t\t\tconst required0 = nrequired0 * (buttonPage0Width + marginHorizontal);\n\n\t\t\tconst buttonPages1 = this.buttonPages1;\n\t\t\tconst buttonPage1Width = buttonPages1[0].width;\n\t\t\tconst nrequired1 = size - (value + 1);\n\t\t\tconst required1 = nrequired1 * (buttonPage1Width + marginHorizontal);\n\n\t\t\tif (required + required0 + required1 <= space) {\n\t\t\t\tthis.doUpdate2(value, size, 0, 0, 0, 0);\n\t\t\t} else {\n\t\t\t\tconst dots1 = this.dots1;\n\t\t\t\tconst dots1Width = dots1.width;\n\t\t\t\tconst dots0 = this.dots0;\n\t\t\t\tconst dots0Width = dots0.width;\n\t\t\t\tconst m0 = marginHorizontal + buttonPage0Width;\n\t\t\t\tconst m1 = marginHorizontal + buttonPage1Width;\n\t\t\t\tconst required0n = dots0Width + m0;\n\t\t\t\tconst required1n = dots1Width + m1;\n\t\t\t\tconst required0m = required0n + m0;\n\t\t\t\tconst required1m = required1n + m1;\n\t\t\t\tif (required0 <= required1) {\n\t\t\t\t\tif (3 <= nrequired1 && required + required0 + required1m <= space) {\n\t\t\t\t\t\tconst l = space - (required + required0 + required1m);\n\t\t\t\t\t\tconst n1 = Math.floor(l / m1);\n\t\t\t\t\t\tthis.doUpdate2(value, size, 0, 1, 0, n1);\n\t\t\t\t\t} else if (\n\t\t\t\t\t\t3 <= nrequired0 &&\n\t\t\t\t\t\t3 <= nrequired1 &&\n\t\t\t\t\t\trequired + required0m + required1m <= space\n\t\t\t\t\t) {\n\t\t\t\t\t\tconst l = space - (required + required0m + required1m);\n\t\t\t\t\t\tconst n1 = Math.floor((l * 0.5) / m1);\n\t\t\t\t\t\tconst n0 = Math.floor((l - n1 * m1) / m0);\n\t\t\t\t\t\tthis.doUpdate2(value, size, 1, 1, n0, n1);\n\t\t\t\t\t} else if (2 <= nrequired1 && required + required0 + required1n <= space) {\n\t\t\t\t\t\tthis.doUpdate2(value, size, 0, 2, 0, 0);\n\t\t\t\t\t} else if (\n\t\t\t\t\t\t3 <= nrequired0 &&\n\t\t\t\t\t\t2 <= nrequired1 &&\n\t\t\t\t\t\trequired + required0m + required1n <= space\n\t\t\t\t\t) {\n\t\t\t\t\t\tconst l = space - (required + required0m + required1n);\n\t\t\t\t\t\tconst n0 = Math.floor(l / m0);\n\t\t\t\t\t\tthis.doUpdate2(value, size, 1, 2, n0, 0);\n\t\t\t\t\t} else if (\n\t\t\t\t\t\t2 <= nrequired0 &&\n\t\t\t\t\t\t2 <= nrequired1 &&\n\t\t\t\t\t\trequired + required0n + required1n <= space\n\t\t\t\t\t) {\n\t\t\t\t\t\tthis.doUpdate2(value, size, 2, 2, 0, 0);\n\t\t\t\t\t} else if (\n\t\t\t\t\t\t1 <= nrequired0 &&\n\t\t\t\t\t\t1 <= nrequired1 &&\n\t\t\t\t\t\trequired + dots0Width + dots1Width <= space\n\t\t\t\t\t) {\n\t\t\t\t\t\tthis.doUpdate2(value, size, 3, 3, 0, 0);\n\t\t\t\t\t} else {\n\t\t\t\t\t\tthis.doUpdate2(value, size, 4, 4, 0, 0);\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tif (3 <= nrequired0 && required + required0m + required1 <= space) {\n\t\t\t\t\t\tconst l = space - (required + required0m + required1);\n\t\t\t\t\t\tconst n0 = Math.floor(l / m0);\n\t\t\t\t\t\tthis.doUpdate2(value, size, 1, 0, n0, 0);\n\t\t\t\t\t} else if (\n\t\t\t\t\t\t3 <= nrequired0 &&\n\t\t\t\t\t\t3 <= nrequired1 &&\n\t\t\t\t\t\trequired + required0m + required1m <= space\n\t\t\t\t\t) {\n\t\t\t\t\t\tconst l = space - (required + required0m + required1m);\n\t\t\t\t\t\tconst n0 = Math.floor((l * 0.5) / m0);\n\t\t\t\t\t\tconst n1 = Math.floor((l - n0 * m0) / m1);\n\t\t\t\t\t\tthis.doUpdate2(value, size, 1, 1, n0, n1);\n\t\t\t\t\t} else if (2 <= nrequired0 && required + required0n + required1 <= space) {\n\t\t\t\t\t\tthis.doUpdate2(value, size, 2, 0, 0, 0);\n\t\t\t\t\t} else if (\n\t\t\t\t\t\t2 <= nrequired0 &&\n\t\t\t\t\t\t3 <= nrequired1 &&\n\t\t\t\t\t\trequired + required0n + required1m <= space\n\t\t\t\t\t) {\n\t\t\t\t\t\tconst l = space - (required + required0n + required1m);\n\t\t\t\t\t\tconst n1 = Math.floor(l / m1);\n\t\t\t\t\t\tthis.doUpdate2(value, size, 2, 1, 0, n1);\n\t\t\t\t\t} else if (\n\t\t\t\t\t\t2 <= nrequired0 &&\n\t\t\t\t\t\t2 <= nrequired1 &&\n\t\t\t\t\t\trequired + required0n + required1n <= space\n\t\t\t\t\t) {\n\t\t\t\t\t\tthis.doUpdate2(value, size, 2, 2, 0, 0);\n\t\t\t\t\t} else if (\n\t\t\t\t\t\t1 <= nrequired0 &&\n\t\t\t\t\t\t1 <= nrequired1 &&\n\t\t\t\t\t\trequired + dots0Width + dots1Width <= space\n\t\t\t\t\t) {\n\t\t\t\t\t\tthis.doUpdate2(value, size, 3, 3, 0, 0);\n\t\t\t\t\t} else {\n\t\t\t\t\t\tthis.doUpdate2(value, size, 4, 4, 0, 0);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\tprotected doUpdate2(\n\t\tvalue: number,\n\t\tsize: number,\n\t\tleft: 0 | 1 | 2 | 3 | 4,\n\t\tright: 0 | 1 | 2 | 3 | 4,\n\t\tnleft1: number,\n\t\tnright1: number\n\t): void {\n\t\tconst buttonTop = this.buttonTop;\n\t\tif (buttonTop != null) {\n\t\t\tbuttonTop.state.isEnabled = 0 < value;\n\t\t}\n\t\tconst buttonPrevious = this.buttonPrevious;\n\t\tif (buttonPrevious != null) {\n\t\t\tbuttonPrevious.state.isEnabled = 0 < value;\n\t\t}\n\n\t\tconst buttonPages0 = this.buttonPages0;\n\t\tswitch (left) {\n\t\t\tcase 0:\n\t\t\t\tthis.hideDots(this.dots0);\n\t\t\t\tthis.allocButtonPages0(value);\n\t\t\t\tfor (let i = 0, imax = buttonPages0.length; i < imax; ++i) {\n\t\t\t\t\tif (i < value) {\n\t\t\t\t\t\tthis.showPage(buttonPages0[i], i);\n\t\t\t\t\t} else {\n\t\t\t\t\t\tthis.hidePage(buttonPages0[i]);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tbreak;\n\t\t\tcase 1:\n\t\t\t\tthis.showDots(this.dots0, 1, value - 2 - nleft1);\n\t\t\t\tthis.allocButtonPages0(2 + nleft1);\n\t\t\t\tthis.showPage(buttonPages0[0], 0);\n\t\t\t\tfor (let i = 1, imax = buttonPages0.length - nleft1 - 1; i < imax; ++i) {\n\t\t\t\t\tthis.hidePage(buttonPages0[i]);\n\t\t\t\t}\n\t\t\t\tfor (let i = 0, imax = 1 + nleft1; i < imax; ++i) {\n\t\t\t\t\tthis.showPage(\n\t\t\t\t\t\tbuttonPages0[buttonPages0.length - imax + i],\n\t\t\t\t\t\tvalue - 1 - (imax - 1) + i\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t\tbreak;\n\t\t\tcase 2:\n\t\t\t\tthis.showDots(this.dots0, 0, value - 2);\n\t\t\t\tfor (let i = 0, imax = buttonPages0.length - 1; i < imax; ++i) {\n\t\t\t\t\tthis.hidePage(buttonPages0[i]);\n\t\t\t\t}\n\t\t\t\tthis.showPage(buttonPages0[buttonPages0.length - 1], value - 1);\n\t\t\t\tbreak;\n\t\t\tcase 3:\n\t\t\t\tthis.showDots(this.dots0, 0, value - 1);\n\t\t\t\tfor (let i = 0, imax = buttonPages0.length; i < imax; ++i) {\n\t\t\t\t\tthis.hidePage(buttonPages0[i]);\n\t\t\t\t}\n\t\t\t\tbreak;\n\t\t\tcase 4:\n\t\t\t\tthis.hideDots(this.dots0);\n\t\t\t\tfor (let i = 0, imax = buttonPages0.length; i < imax; ++i) {\n\t\t\t\t\tthis.hidePage(buttonPages0[i]);\n\t\t\t\t}\n\t\t\t\tbreak;\n\t\t}\n\n\t\tthis.showPage(this.page, value);\n\n\t\tconst buttonPages1 = this.buttonPages1;\n\t\tswitch (right) {\n\t\t\tcase 0:\n\t\t\t\tthis.allocButtonPages1(size - (value + 1));\n\t\t\t\tfor (let i = 0, imax = buttonPages1.length; i < imax; ++i) {\n\t\t\t\t\tconst j = value + 1 + i;\n\t\t\t\t\tif (j < size) {\n\t\t\t\t\t\tthis.showPage(buttonPages1[i], j);\n\t\t\t\t\t} else {\n\t\t\t\t\t\tthis.hidePage(buttonPages1[i]);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tthis.hideDots(this.dots1);\n\t\t\t\tbreak;\n\t\t\tcase 1:\n\t\t\t\tthis.allocButtonPages1(2 + nright1);\n\t\t\t\tfor (let i = 0, imax = 1 + nright1; i < imax; ++i) {\n\t\t\t\t\tthis.showPage(buttonPages1[i], value + 1 + i);\n\t\t\t\t}\n\t\t\t\tfor (let i = 1 + nright1, imax = buttonPages1.length - 1; i < imax; ++i) {\n\t\t\t\t\tthis.hidePage(buttonPages1[i]);\n\t\t\t\t}\n\t\t\t\tthis.showPage(buttonPages1[buttonPages1.length - 1], size - 1);\n\t\t\t\tthis.showDots(this.dots1, value + 2 + nright1, size - 2);\n\t\t\t\tbreak;\n\t\t\tcase 2:\n\t\t\t\tthis.showPage(buttonPages1[0], value + 1);\n\t\t\t\tfor (let i = 1, imax = buttonPages1.length; i < imax; ++i) {\n\t\t\t\t\tthis.hidePage(buttonPages1[i]);\n\t\t\t\t}\n\t\t\t\tthis.showDots(this.dots1, value + 2, size - 1);\n\t\t\t\tbreak;\n\t\t\tcase 3:\n\t\t\t\tfor (let i = 0, imax = buttonPages1.length; i < imax; ++i) {\n\t\t\t\t\tthis.hidePage(buttonPages1[i]);\n\t\t\t\t}\n\t\t\t\tthis.showDots(this.dots1, value + 1, size - 1);\n\t\t\t\tbreak;\n\t\t\tcase 4:\n\t\t\t\tfor (let i = 0, imax = buttonPages1.length; i < imax; ++i) {\n\t\t\t\t\tthis.hidePage(buttonPages1[i]);\n\t\t\t\t}\n\t\t\t\tthis.hideDots(this.dots1);\n\t\t\t\tbreak;\n\t\t}\n\n\t\tconst buttonNext = this.buttonNext;\n\t\tif (buttonNext != null) {\n\t\t\tbuttonNext.state.isEnabled = value < size - 1;\n\t\t}\n\t\tconst buttonLast = this.buttonLast;\n\t\tif (buttonLast != null) {\n\t\t\tbuttonLast.state.isEnabled = value < size - 1;\n\t\t}\n\t}\n\n\tprotected showPage(button: DImageBase<number>, index: number): void {\n\t\tbutton.text = index + 1;\n\t\tbutton.show();\n\t}\n\n\tprotected hidePage(button: DImageBase<number>): void {\n\t\tbutton.hide();\n\t}\n\n\tprotected showDots(dots: DPaginationDots, from: number, to: number): void {\n\t\tdots.show();\n\t}\n\n\tprotected hideDots(dots: DPaginationDots): void {\n\t\tdots.hide();\n\t}\n\n\tprotected getType(): string {\n\t\treturn \"DPagination\";\n\t}\n}\n"]}
@@ -15,10 +15,10 @@ var toSubtype = function (target) {
15
15
  return EShapeAcceptorEdgeType.HEAD;
16
16
  };
17
17
  var toSide = function (target) {
18
- return (EShapeAcceptorEdgeSide.ALL & (target << 2));
18
+ return (EShapeAcceptorEdgeSide.ALL & (target >> 2));
19
19
  };
20
20
  var toVvisible = function (target) {
21
- return 0 < (0x1 & (target << 6));
21
+ return 0 < (0x1 & (target >> 6));
22
22
  };
23
23
  export var deserializeEmbeddedAcceptorEdge = function (item, manager, shape) {
24
24
  shape !== null && shape !== void 0 ? shape : (shape = new EShapeEmbeddedAcceptorEdge());
@@ -1 +1 @@
1
- {"version":3,"file":"deserialize-embedded-acceptor-edge.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/shape/variant/deserialize-embedded-acceptor-edge.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AAEvE,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAAE,0BAA0B,EAAE,MAAM,kCAAkC,CAAC;AAC9E,OAAO,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AACvE,OAAO,EAAE,wCAAwC,EAAE,MAAM,kDAAkD,CAAC;AAE5G,IAAM,SAAS,GAAG,UAAC,MAAc;IAChC,IAAM,MAAM,GAAG,sBAAsB,CAAC,GAAG,GAAG,MAAM,CAAC;IACnD,IAAI,MAAM,KAAK,CAAC,EAAE;QACjB,OAAO,MAAgC,CAAC;KACxC;IACD,OAAO,sBAAsB,CAAC,IAAI,CAAC;AACpC,CAAC,CAAC;AAEF,IAAM,MAAM,GAAG,UAAC,MAAc;IAC7B,OAAO,CAAC,sBAAsB,CAAC,GAAG,GAAG,CAAC,MAAM,IAAI,CAAC,CAAC,CAA2B,CAAC;AAC/E,CAAC,CAAC;AAEF,IAAM,UAAU,GAAG,UAAC,MAAc;IACjC,OAAO,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC,CAAC;AAClC,CAAC,CAAC;AAEF,MAAM,CAAC,IAAM,+BAA+B,GAAG,UAC9C,IAA4B,EAC5B,OAA6C,EAC7C,KAAkC;IAElC,KAAK,aAAL,KAAK,cAAL,KAAK,IAAL,KAAK,GAAK,IAAI,0BAA0B,EAAE,EAAC;IAC3C,IAAM,MAAM,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC;IACxB,KAAK,CAAC,OAAO,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC;IAClC,KAAK,CAAC,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;IAC5B,KAAK,CAAC,QAAQ,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;IACpC,IAAM,MAAM,GAAG,eAAe,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;IACrD,IAAI,KAAK,CAAC,QAAQ,KAAK,KAAK,EAAE;QAC7B,IAAI,OAAO,CAAC,IAAI,KAAK,wCAAwC,CAAC,MAAM,EAAE;YACrE,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC;SACtB;KACD;IACD,OAAO,MAAM,CAAC;AACf,CAAC,CAAC","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { DDiagramSerializedItem } from \"../../d-diagram-serialized\";\nimport { EShapeAcceptorEdgeType } from \"../e-shape-acceptor-edge-type\";\nimport { EShapeResourceManagerDeserialization } from \"../e-shape-resource-manager-deserialization\";\nimport { deserializeBase } from \"./deserialize-base\";\nimport { EShapeEmbeddedAcceptorEdge } from \"./e-shape-embedded-acceptor-edge\";\nimport { EShapeAcceptorEdgeSide } from \"../e-shape-acceptor-edge-side\";\nimport { EShapeResourceManagerDeserializationMode } from \"../e-shape-resource-manager-deserialization-mode\";\n\nconst toSubtype = (target: number): EShapeAcceptorEdgeType => {\n\tconst result = EShapeAcceptorEdgeType.ALL & target;\n\tif (result !== 0) {\n\t\treturn result as EShapeAcceptorEdgeType;\n\t}\n\treturn EShapeAcceptorEdgeType.HEAD;\n};\n\nconst toSide = (target: number): EShapeAcceptorEdgeSide => {\n\treturn (EShapeAcceptorEdgeSide.ALL & (target << 2)) as EShapeAcceptorEdgeSide;\n};\n\nconst toVvisible = (target: number): boolean => {\n\treturn 0 < (0x1 & (target << 6));\n};\n\nexport const deserializeEmbeddedAcceptorEdge = (\n\titem: DDiagramSerializedItem,\n\tmanager: EShapeResourceManagerDeserialization,\n\tshape?: EShapeEmbeddedAcceptorEdge\n): Promise<EShapeEmbeddedAcceptorEdge> | EShapeEmbeddedAcceptorEdge => {\n\tshape ??= new EShapeEmbeddedAcceptorEdge();\n\tconst item15 = item[15];\n\tshape.subtype = toSubtype(item15);\n\tshape.side = toSide(item15);\n\tshape.vvisible = toVvisible(item15);\n\tconst result = deserializeBase(item, manager, shape);\n\tif (shape.vvisible === false) {\n\t\tif (manager.mode === EShapeResourceManagerDeserializationMode.VIEWER) {\n\t\t\tshape.visible = false;\n\t\t}\n\t}\n\treturn result;\n};\n"]}
1
+ {"version":3,"file":"deserialize-embedded-acceptor-edge.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/shape/variant/deserialize-embedded-acceptor-edge.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AAEvE,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAAE,0BAA0B,EAAE,MAAM,kCAAkC,CAAC;AAC9E,OAAO,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AACvE,OAAO,EAAE,wCAAwC,EAAE,MAAM,kDAAkD,CAAC;AAE5G,IAAM,SAAS,GAAG,UAAC,MAAc;IAChC,IAAM,MAAM,GAAG,sBAAsB,CAAC,GAAG,GAAG,MAAM,CAAC;IACnD,IAAI,MAAM,KAAK,CAAC,EAAE;QACjB,OAAO,MAAgC,CAAC;KACxC;IACD,OAAO,sBAAsB,CAAC,IAAI,CAAC;AACpC,CAAC,CAAC;AAEF,IAAM,MAAM,GAAG,UAAC,MAAc;IAC7B,OAAO,CAAC,sBAAsB,CAAC,GAAG,GAAG,CAAC,MAAM,IAAI,CAAC,CAAC,CAA2B,CAAC;AAC/E,CAAC,CAAC;AAEF,IAAM,UAAU,GAAG,UAAC,MAAc;IACjC,OAAO,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC,CAAC;AAClC,CAAC,CAAC;AAEF,MAAM,CAAC,IAAM,+BAA+B,GAAG,UAC9C,IAA4B,EAC5B,OAA6C,EAC7C,KAAkC;IAElC,KAAK,aAAL,KAAK,cAAL,KAAK,IAAL,KAAK,GAAK,IAAI,0BAA0B,EAAE,EAAC;IAC3C,IAAM,MAAM,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC;IACxB,KAAK,CAAC,OAAO,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC;IAClC,KAAK,CAAC,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;IAC5B,KAAK,CAAC,QAAQ,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;IACpC,IAAM,MAAM,GAAG,eAAe,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;IACrD,IAAI,KAAK,CAAC,QAAQ,KAAK,KAAK,EAAE;QAC7B,IAAI,OAAO,CAAC,IAAI,KAAK,wCAAwC,CAAC,MAAM,EAAE;YACrE,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC;SACtB;KACD;IACD,OAAO,MAAM,CAAC;AACf,CAAC,CAAC","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { DDiagramSerializedItem } from \"../../d-diagram-serialized\";\nimport { EShapeAcceptorEdgeType } from \"../e-shape-acceptor-edge-type\";\nimport { EShapeResourceManagerDeserialization } from \"../e-shape-resource-manager-deserialization\";\nimport { deserializeBase } from \"./deserialize-base\";\nimport { EShapeEmbeddedAcceptorEdge } from \"./e-shape-embedded-acceptor-edge\";\nimport { EShapeAcceptorEdgeSide } from \"../e-shape-acceptor-edge-side\";\nimport { EShapeResourceManagerDeserializationMode } from \"../e-shape-resource-manager-deserialization-mode\";\n\nconst toSubtype = (target: number): EShapeAcceptorEdgeType => {\n\tconst result = EShapeAcceptorEdgeType.ALL & target;\n\tif (result !== 0) {\n\t\treturn result as EShapeAcceptorEdgeType;\n\t}\n\treturn EShapeAcceptorEdgeType.HEAD;\n};\n\nconst toSide = (target: number): EShapeAcceptorEdgeSide => {\n\treturn (EShapeAcceptorEdgeSide.ALL & (target >> 2)) as EShapeAcceptorEdgeSide;\n};\n\nconst toVvisible = (target: number): boolean => {\n\treturn 0 < (0x1 & (target >> 6));\n};\n\nexport const deserializeEmbeddedAcceptorEdge = (\n\titem: DDiagramSerializedItem,\n\tmanager: EShapeResourceManagerDeserialization,\n\tshape?: EShapeEmbeddedAcceptorEdge\n): Promise<EShapeEmbeddedAcceptorEdge> | EShapeEmbeddedAcceptorEdge => {\n\tshape ??= new EShapeEmbeddedAcceptorEdge();\n\tconst item15 = item[15];\n\tshape.subtype = toSubtype(item15);\n\tshape.side = toSide(item15);\n\tshape.vvisible = toVvisible(item15);\n\tconst result = deserializeBase(item, manager, shape);\n\tif (shape.vvisible === false) {\n\t\tif (manager.mode === EShapeResourceManagerDeserializationMode.VIEWER) {\n\t\t\tshape.visible = false;\n\t\t}\n\t}\n\treturn result;\n};\n"]}
@@ -62,7 +62,7 @@ var EShapeEmbeddedAcceptorEdge = /** @class */ (function (_super) {
62
62
  };
63
63
  EShapeEmbeddedAcceptorEdge.prototype.serialize = function (manager) {
64
64
  var result = _super.prototype.serialize.call(this, manager);
65
- result[15] = this._subtype + (this._side << 2) + (this._vvisible ? 1 << 6 : 0);
65
+ result[15] = this._subtype | (this._side << 2) | (this._vvisible ? 1 << 6 : 0);
66
66
  return result;
67
67
  };
68
68
  return EShapeEmbeddedAcceptorEdge;
@@ -1 +1 @@
1
- {"version":3,"file":"e-shape-embedded-acceptor-edge.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/shape/variant/e-shape-embedded-acceptor-edge.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AACvE,OAAO,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AACvE,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAEtD,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAEhD;IAAgD,8CAAY;IAS3D,oCAAY,IAAoD;QAApD,qBAAA,EAAA,OAAmB,UAAU,CAAC,sBAAsB;QAAhE,YACC,kBAAM,IAAI,CAAC,SAIX;QAHA,KAAI,CAAC,QAAQ,GAAG,sBAAsB,CAAC,IAAI,CAAC;QAC5C,KAAI,CAAC,KAAK,GAAG,sBAAsB,CAAC,GAAG,CAAC;QACxC,KAAI,CAAC,SAAS,GAAG,IAAI,CAAC;;IACvB,CAAC;IAED,sBAAI,+CAAO;aAAX;YACC,OAAO,IAAI,CAAC,QAAQ,CAAC;QACtB,CAAC;aAED,UAAY,OAA+B;YAC1C,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;QACzB,CAAC;;;OAJA;IAMD,sBAAI,4CAAI;aAAR;YACC,OAAO,IAAI,CAAC,KAAK,CAAC;QACnB,CAAC;aAED,UAAS,IAA4B;YACpC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;QACnB,CAAC;;;OAJA;IASD,sBAAI,gDAAQ;QAHZ;;WAEG;aACH;YACC,OAAO,IAAI,CAAC,SAAS,CAAC;QACvB,CAAC;aAED,UAAa,QAAiB;YAC7B,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;QAC3B,CAAC;;;OAJA;IAMQ,0CAAK,GAAd;QACC,OAAO,IAAI,0BAA0B,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC7D,CAAC;IAEQ,yCAAI,GAAb,UAAc,MAAc,EAAE,IAAyC;QAAzC,qBAAA,EAAA,OAAuB,cAAc,CAAC,GAAG;QACtE,iBAAM,IAAI,YAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QACzB,IAAI,MAAM,YAAY,0BAA0B,EAAE;YACjD,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,OAAO,CAAC;YAC/B,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC;YACzB,IAAI,CAAC,SAAS,GAAG,MAAM,CAAC,QAAQ,CAAC;SACjC;QACD,OAAO,IAAI,CAAC;IACb,CAAC;IAEQ,8CAAS,GAAlB,UAAmB,OAA2C;QAC7D,IAAM,MAAM,GAAG,iBAAM,SAAS,YAAC,OAAO,CAAC,CAAC;QACxC,MAAM,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,QAAQ,GAAG,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC/E,OAAO,MAAM,CAAC;IACf,CAAC;IACF,iCAAC;AAAD,CAAC,AA9DD,CAAgD,YAAY,GA8D3D","sourcesContent":["import { DDiagramSerializedItem } from \"../../d-diagram-serialized\";\nimport { EShape } from \"../e-shape\";\nimport { EShapeAcceptorEdgeSide } from \"../e-shape-acceptor-edge-side\";\nimport { EShapeAcceptorEdgeType } from \"../e-shape-acceptor-edge-type\";\nimport { EShapeCopyPart } from \"../e-shape-copy-part\";\nimport { EShapeResourceManagerSerialization } from \"../e-shape-resource-manager-serialization\";\nimport { EShapeType } from \"../e-shape-type\";\nimport { EShapeCircle } from \"./e-shape-circle\";\n\nexport class EShapeEmbeddedAcceptorEdge extends EShapeCircle {\n\tprotected _subtype: EShapeAcceptorEdgeType;\n\tprotected _side: EShapeAcceptorEdgeSide;\n\n\t/**\n\t * Set to true if visible in the viewer mode.\n\t */\n\tprotected _vvisible: boolean;\n\n\tconstructor(type: EShapeType = EShapeType.EMBEDDED_ACCEPTOR_EDGE) {\n\t\tsuper(type);\n\t\tthis._subtype = EShapeAcceptorEdgeType.HEAD;\n\t\tthis._side = EShapeAcceptorEdgeSide.ALL;\n\t\tthis._vvisible = true;\n\t}\n\n\tget subtype(): EShapeAcceptorEdgeType {\n\t\treturn this._subtype;\n\t}\n\n\tset subtype(subtype: EShapeAcceptorEdgeType) {\n\t\tthis._subtype = subtype;\n\t}\n\n\tget side(): EShapeAcceptorEdgeSide {\n\t\treturn this._side;\n\t}\n\n\tset side(side: EShapeAcceptorEdgeSide) {\n\t\tthis._side = side;\n\t}\n\n\t/**\n\t * True if visible in the viewer mode.\n\t */\n\tget vvisible(): boolean {\n\t\treturn this._vvisible;\n\t}\n\n\tset vvisible(vvisible: boolean) {\n\t\tthis._vvisible = vvisible;\n\t}\n\n\toverride clone(): EShapeEmbeddedAcceptorEdge {\n\t\treturn new EShapeEmbeddedAcceptorEdge(this.type).copy(this);\n\t}\n\n\toverride copy(source: EShape, part: EShapeCopyPart = EShapeCopyPart.ALL): this {\n\t\tsuper.copy(source, part);\n\t\tif (source instanceof EShapeEmbeddedAcceptorEdge) {\n\t\t\tthis._subtype = source.subtype;\n\t\t\tthis._side = source.side;\n\t\t\tthis._vvisible = source.vvisible;\n\t\t}\n\t\treturn this;\n\t}\n\n\toverride serialize(manager: EShapeResourceManagerSerialization): DDiagramSerializedItem {\n\t\tconst result = super.serialize(manager);\n\t\tresult[15] = this._subtype + (this._side << 2) + (this._vvisible ? 1 << 6 : 0);\n\t\treturn result;\n\t}\n}\n"]}
1
+ {"version":3,"file":"e-shape-embedded-acceptor-edge.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/shape/variant/e-shape-embedded-acceptor-edge.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AACvE,OAAO,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AACvE,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAEtD,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAEhD;IAAgD,8CAAY;IAS3D,oCAAY,IAAoD;QAApD,qBAAA,EAAA,OAAmB,UAAU,CAAC,sBAAsB;QAAhE,YACC,kBAAM,IAAI,CAAC,SAIX;QAHA,KAAI,CAAC,QAAQ,GAAG,sBAAsB,CAAC,IAAI,CAAC;QAC5C,KAAI,CAAC,KAAK,GAAG,sBAAsB,CAAC,GAAG,CAAC;QACxC,KAAI,CAAC,SAAS,GAAG,IAAI,CAAC;;IACvB,CAAC;IAED,sBAAI,+CAAO;aAAX;YACC,OAAO,IAAI,CAAC,QAAQ,CAAC;QACtB,CAAC;aAED,UAAY,OAA+B;YAC1C,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;QACzB,CAAC;;;OAJA;IAMD,sBAAI,4CAAI;aAAR;YACC,OAAO,IAAI,CAAC,KAAK,CAAC;QACnB,CAAC;aAED,UAAS,IAA4B;YACpC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;QACnB,CAAC;;;OAJA;IASD,sBAAI,gDAAQ;QAHZ;;WAEG;aACH;YACC,OAAO,IAAI,CAAC,SAAS,CAAC;QACvB,CAAC;aAED,UAAa,QAAiB;YAC7B,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;QAC3B,CAAC;;;OAJA;IAMQ,0CAAK,GAAd;QACC,OAAO,IAAI,0BAA0B,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC7D,CAAC;IAEQ,yCAAI,GAAb,UAAc,MAAc,EAAE,IAAyC;QAAzC,qBAAA,EAAA,OAAuB,cAAc,CAAC,GAAG;QACtE,iBAAM,IAAI,YAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QACzB,IAAI,MAAM,YAAY,0BAA0B,EAAE;YACjD,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,OAAO,CAAC;YAC/B,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC;YACzB,IAAI,CAAC,SAAS,GAAG,MAAM,CAAC,QAAQ,CAAC;SACjC;QACD,OAAO,IAAI,CAAC;IACb,CAAC;IAEQ,8CAAS,GAAlB,UAAmB,OAA2C;QAC7D,IAAM,MAAM,GAAG,iBAAM,SAAS,YAAC,OAAO,CAAC,CAAC;QACxC,MAAM,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,QAAQ,GAAG,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC/E,OAAO,MAAM,CAAC;IACf,CAAC;IACF,iCAAC;AAAD,CAAC,AA9DD,CAAgD,YAAY,GA8D3D","sourcesContent":["import { DDiagramSerializedItem } from \"../../d-diagram-serialized\";\nimport { EShape } from \"../e-shape\";\nimport { EShapeAcceptorEdgeSide } from \"../e-shape-acceptor-edge-side\";\nimport { EShapeAcceptorEdgeType } from \"../e-shape-acceptor-edge-type\";\nimport { EShapeCopyPart } from \"../e-shape-copy-part\";\nimport { EShapeResourceManagerSerialization } from \"../e-shape-resource-manager-serialization\";\nimport { EShapeType } from \"../e-shape-type\";\nimport { EShapeCircle } from \"./e-shape-circle\";\n\nexport class EShapeEmbeddedAcceptorEdge extends EShapeCircle {\n\tprotected _subtype: EShapeAcceptorEdgeType;\n\tprotected _side: EShapeAcceptorEdgeSide;\n\n\t/**\n\t * Set to true if visible in the viewer mode.\n\t */\n\tprotected _vvisible: boolean;\n\n\tconstructor(type: EShapeType = EShapeType.EMBEDDED_ACCEPTOR_EDGE) {\n\t\tsuper(type);\n\t\tthis._subtype = EShapeAcceptorEdgeType.HEAD;\n\t\tthis._side = EShapeAcceptorEdgeSide.ALL;\n\t\tthis._vvisible = true;\n\t}\n\n\tget subtype(): EShapeAcceptorEdgeType {\n\t\treturn this._subtype;\n\t}\n\n\tset subtype(subtype: EShapeAcceptorEdgeType) {\n\t\tthis._subtype = subtype;\n\t}\n\n\tget side(): EShapeAcceptorEdgeSide {\n\t\treturn this._side;\n\t}\n\n\tset side(side: EShapeAcceptorEdgeSide) {\n\t\tthis._side = side;\n\t}\n\n\t/**\n\t * True if visible in the viewer mode.\n\t */\n\tget vvisible(): boolean {\n\t\treturn this._vvisible;\n\t}\n\n\tset vvisible(vvisible: boolean) {\n\t\tthis._vvisible = vvisible;\n\t}\n\n\toverride clone(): EShapeEmbeddedAcceptorEdge {\n\t\treturn new EShapeEmbeddedAcceptorEdge(this.type).copy(this);\n\t}\n\n\toverride copy(source: EShape, part: EShapeCopyPart = EShapeCopyPart.ALL): this {\n\t\tsuper.copy(source, part);\n\t\tif (source instanceof EShapeEmbeddedAcceptorEdge) {\n\t\t\tthis._subtype = source.subtype;\n\t\t\tthis._side = source.side;\n\t\t\tthis._vvisible = source.vvisible;\n\t\t}\n\t\treturn this;\n\t}\n\n\toverride serialize(manager: EShapeResourceManagerSerialization): DDiagramSerializedItem {\n\t\tconst result = super.serialize(manager);\n\t\tresult[15] = this._subtype | (this._side << 2) | (this._vvisible ? 1 << 6 : 0);\n\t\treturn result;\n\t}\n}\n"]}
@@ -1,5 +1,5 @@
1
1
  /*
2
- Winter Cardinal UI v0.343.0
2
+ Winter Cardinal UI v0.345.0
3
3
  Copyright (C) 2019 Toshiba Corporation
4
4
  SPDX-License-Identifier: Apache-2.0
5
5
 
@@ -1,5 +1,5 @@
1
1
  /*
2
- Winter Cardinal UI v0.343.0
2
+ Winter Cardinal UI v0.345.0
3
3
  Copyright (C) 2019 Toshiba Corporation
4
4
  SPDX-License-Identifier: Apache-2.0
5
5
 
@@ -1,5 +1,5 @@
1
1
  /*
2
- Winter Cardinal UI v0.343.0
2
+ Winter Cardinal UI v0.345.0
3
3
  Copyright (C) 2019 Toshiba Corporation
4
4
  SPDX-License-Identifier: Apache-2.0
5
5
 
@@ -1,5 +1,5 @@
1
1
  /*
2
- Winter Cardinal UI v0.343.0
2
+ Winter Cardinal UI v0.345.0
3
3
  Copyright (C) 2019 Toshiba Corporation
4
4
  SPDX-License-Identifier: Apache-2.0
5
5
 
@@ -1,5 +1,5 @@
1
1
  /*
2
- Winter Cardinal UI v0.343.0
2
+ Winter Cardinal UI v0.345.0
3
3
  Copyright (C) 2019 Toshiba Corporation
4
4
  SPDX-License-Identifier: Apache-2.0
5
5
 
@@ -16834,7 +16834,7 @@ var EShapeEmbeddedAcceptorEdge = /** @class */ (function (_super) {
16834
16834
  };
16835
16835
  EShapeEmbeddedAcceptorEdge.prototype.serialize = function (manager) {
16836
16836
  var result = _super.prototype.serialize.call(this, manager);
16837
- result[15] = this._subtype + (this._side << 2) + (this._vvisible ? 1 << 6 : 0);
16837
+ result[15] = this._subtype | (this._side << 2) | (this._vvisible ? 1 << 6 : 0);
16838
16838
  return result;
16839
16839
  };
16840
16840
  return EShapeEmbeddedAcceptorEdge;
@@ -38924,10 +38924,10 @@ var toSubtype = function (target) {
38924
38924
  return EShapeAcceptorEdgeType.HEAD;
38925
38925
  };
38926
38926
  var toSide = function (target) {
38927
- return (EShapeAcceptorEdgeSide.ALL & (target << 2));
38927
+ return (EShapeAcceptorEdgeSide.ALL & (target >> 2));
38928
38928
  };
38929
38929
  var toVvisible = function (target) {
38930
- return 0 < (0x1 & (target << 6));
38930
+ return 0 < (0x1 & (target >> 6));
38931
38931
  };
38932
38932
  var deserializeEmbeddedAcceptorEdge = function (item, manager, shape) {
38933
38933
  shape !== null && shape !== void 0 ? shape : (shape = new EShapeEmbeddedAcceptorEdge());
@@ -86008,16 +86008,27 @@ var DPagination = /** @class */ (function (_super) {
86008
86008
  var required1m = required1n + m1;
86009
86009
  if (required0 <= required1) {
86010
86010
  if (3 <= nrequired1 && required + required0 + required1m <= space) {
86011
- var n1 = Math.floor((space - (required + required0 + required1m)) / m1);
86011
+ var l = space - (required + required0 + required1m);
86012
+ var n1 = Math.floor(l / m1);
86012
86013
  this.doUpdate2(value, size, 0, 1, 0, n1);
86013
86014
  }
86015
+ else if (3 <= nrequired0 &&
86016
+ 3 <= nrequired1 &&
86017
+ required + required0m + required1m <= space) {
86018
+ var l = space - (required + required0m + required1m);
86019
+ var n1 = Math.floor((l * 0.5) / m1);
86020
+ var n0 = Math.floor((l - n1 * m1) / m0);
86021
+ this.doUpdate2(value, size, 1, 1, n0, n1);
86022
+ }
86014
86023
  else if (2 <= nrequired1 && required + required0 + required1n <= space) {
86015
86024
  this.doUpdate2(value, size, 0, 2, 0, 0);
86016
86025
  }
86017
86026
  else if (3 <= nrequired0 &&
86018
86027
  2 <= nrequired1 &&
86019
86028
  required + required0m + required1n <= space) {
86020
- this.doUpdate2(value, size, 1, 2, 0, 0);
86029
+ var l = space - (required + required0m + required1n);
86030
+ var n0 = Math.floor(l / m0);
86031
+ this.doUpdate2(value, size, 1, 2, n0, 0);
86021
86032
  }
86022
86033
  else if (2 <= nrequired0 &&
86023
86034
  2 <= nrequired1 &&
@@ -86035,16 +86046,27 @@ var DPagination = /** @class */ (function (_super) {
86035
86046
  }
86036
86047
  else {
86037
86048
  if (3 <= nrequired0 && required + required0m + required1 <= space) {
86038
- var n0 = Math.floor((space - (required + required0m + required1)) / m0);
86049
+ var l = space - (required + required0m + required1);
86050
+ var n0 = Math.floor(l / m0);
86039
86051
  this.doUpdate2(value, size, 1, 0, n0, 0);
86040
86052
  }
86053
+ else if (3 <= nrequired0 &&
86054
+ 3 <= nrequired1 &&
86055
+ required + required0m + required1m <= space) {
86056
+ var l = space - (required + required0m + required1m);
86057
+ var n0 = Math.floor((l * 0.5) / m0);
86058
+ var n1 = Math.floor((l - n0 * m0) / m1);
86059
+ this.doUpdate2(value, size, 1, 1, n0, n1);
86060
+ }
86041
86061
  else if (2 <= nrequired0 && required + required0n + required1 <= space) {
86042
86062
  this.doUpdate2(value, size, 2, 0, 0, 0);
86043
86063
  }
86044
86064
  else if (2 <= nrequired0 &&
86045
86065
  3 <= nrequired1 &&
86046
86066
  required + required0n + required1m <= space) {
86047
- this.doUpdate2(value, size, 2, 1, 0, 0);
86067
+ var l = space - (required + required0n + required1m);
86068
+ var n1 = Math.floor(l / m1);
86069
+ this.doUpdate2(value, size, 2, 1, 0, n1);
86048
86070
  }
86049
86071
  else if (2 <= nrequired0 &&
86050
86072
  2 <= nrequired1 &&
@@ -1,5 +1,5 @@
1
1
  /*
2
- Winter Cardinal UI v0.343.0
2
+ Winter Cardinal UI v0.345.0
3
3
  Copyright (C) 2019 Toshiba Corporation
4
4
  SPDX-License-Identifier: Apache-2.0
5
5
 
@@ -16831,7 +16831,7 @@
16831
16831
  };
16832
16832
  EShapeEmbeddedAcceptorEdge.prototype.serialize = function (manager) {
16833
16833
  var result = _super.prototype.serialize.call(this, manager);
16834
- result[15] = this._subtype + (this._side << 2) + (this._vvisible ? 1 << 6 : 0);
16834
+ result[15] = this._subtype | (this._side << 2) | (this._vvisible ? 1 << 6 : 0);
16835
16835
  return result;
16836
16836
  };
16837
16837
  return EShapeEmbeddedAcceptorEdge;
@@ -38921,10 +38921,10 @@
38921
38921
  return EShapeAcceptorEdgeType.HEAD;
38922
38922
  };
38923
38923
  var toSide = function (target) {
38924
- return (EShapeAcceptorEdgeSide.ALL & (target << 2));
38924
+ return (EShapeAcceptorEdgeSide.ALL & (target >> 2));
38925
38925
  };
38926
38926
  var toVvisible = function (target) {
38927
- return 0 < (0x1 & (target << 6));
38927
+ return 0 < (0x1 & (target >> 6));
38928
38928
  };
38929
38929
  var deserializeEmbeddedAcceptorEdge = function (item, manager, shape) {
38930
38930
  shape !== null && shape !== void 0 ? shape : (shape = new EShapeEmbeddedAcceptorEdge());
@@ -67470,16 +67470,27 @@
67470
67470
  var required1m = required1n + m1;
67471
67471
  if (required0 <= required1) {
67472
67472
  if (3 <= nrequired1 && required + required0 + required1m <= space) {
67473
- var n1 = Math.floor((space - (required + required0 + required1m)) / m1);
67473
+ var l = space - (required + required0 + required1m);
67474
+ var n1 = Math.floor(l / m1);
67474
67475
  this.doUpdate2(value, size, 0, 1, 0, n1);
67475
67476
  }
67477
+ else if (3 <= nrequired0 &&
67478
+ 3 <= nrequired1 &&
67479
+ required + required0m + required1m <= space) {
67480
+ var l = space - (required + required0m + required1m);
67481
+ var n1 = Math.floor((l * 0.5) / m1);
67482
+ var n0 = Math.floor((l - n1 * m1) / m0);
67483
+ this.doUpdate2(value, size, 1, 1, n0, n1);
67484
+ }
67476
67485
  else if (2 <= nrequired1 && required + required0 + required1n <= space) {
67477
67486
  this.doUpdate2(value, size, 0, 2, 0, 0);
67478
67487
  }
67479
67488
  else if (3 <= nrequired0 &&
67480
67489
  2 <= nrequired1 &&
67481
67490
  required + required0m + required1n <= space) {
67482
- this.doUpdate2(value, size, 1, 2, 0, 0);
67491
+ var l = space - (required + required0m + required1n);
67492
+ var n0 = Math.floor(l / m0);
67493
+ this.doUpdate2(value, size, 1, 2, n0, 0);
67483
67494
  }
67484
67495
  else if (2 <= nrequired0 &&
67485
67496
  2 <= nrequired1 &&
@@ -67497,16 +67508,27 @@
67497
67508
  }
67498
67509
  else {
67499
67510
  if (3 <= nrequired0 && required + required0m + required1 <= space) {
67500
- var n0 = Math.floor((space - (required + required0m + required1)) / m0);
67511
+ var l = space - (required + required0m + required1);
67512
+ var n0 = Math.floor(l / m0);
67501
67513
  this.doUpdate2(value, size, 1, 0, n0, 0);
67502
67514
  }
67515
+ else if (3 <= nrequired0 &&
67516
+ 3 <= nrequired1 &&
67517
+ required + required0m + required1m <= space) {
67518
+ var l = space - (required + required0m + required1m);
67519
+ var n0 = Math.floor((l * 0.5) / m0);
67520
+ var n1 = Math.floor((l - n0 * m0) / m1);
67521
+ this.doUpdate2(value, size, 1, 1, n0, n1);
67522
+ }
67503
67523
  else if (2 <= nrequired0 && required + required0n + required1 <= space) {
67504
67524
  this.doUpdate2(value, size, 2, 0, 0, 0);
67505
67525
  }
67506
67526
  else if (2 <= nrequired0 &&
67507
67527
  3 <= nrequired1 &&
67508
67528
  required + required0n + required1m <= space) {
67509
- this.doUpdate2(value, size, 2, 1, 0, 0);
67529
+ var l = space - (required + required0n + required1m);
67530
+ var n1 = Math.floor(l / m1);
67531
+ this.doUpdate2(value, size, 2, 1, 0, n1);
67510
67532
  }
67511
67533
  else if (2 <= nrequired0 &&
67512
67534
  2 <= nrequired1 &&