boruto-xrmui 1.0.0 → 1.0.1
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/README.md +1 -1
- package/fesm2022/boruto-xrmui.mjs +84 -85
- package/fesm2022/boruto-xrmui.mjs.map +1 -1
- package/package.json +1 -1
- package/types/boruto-xrmui.d.ts +2 -3
package/README.md
CHANGED
|
@@ -5,7 +5,7 @@ This project purpose is to make it easy to build angular ui, that works seamless
|
|
|
5
5
|
The project also holds angular 21 migrated components complient with KiponUI module
|
|
6
6
|
|
|
7
7
|
# Disclaimer
|
|
8
|
-
Use of the module is on
|
|
8
|
+
Use of the module is on your own risk
|
|
9
9
|
|
|
10
10
|
|
|
11
11
|
## Owner
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
2
|
import { ViewEncapsulation, Component, effect, input, output, HostListener, Directive, inject, ElementRef, Input, signal, ChangeDetectorRef, ViewChild, NgModule, Injectable, computed } from '@angular/core';
|
|
3
3
|
import { NgClass, NgStyle } from '@angular/common';
|
|
4
|
-
import { KoHorizontalScrollComponent as KoHorizontalScrollComponent$1, KoHorizontalSplitComponent as KoHorizontalSplitComponent$1, KoMainComponent as KoMainComponent$1, KoTitlePanelComponent as KoTitlePanelComponent$1, KoVerticalScrollComponent as KoVerticalScrollComponent$1, KoVerticalSplitComponent as KoVerticalSplitComponent$1, KoViewComponent as KoViewComponent$1, KoExpansionPanelComponent as KoExpansionPanelComponent$1, KoTablePanelComponent as KoTablePanelComponent$1, KoButtonGroupComponent as KoButtonGroupComponent$1, KoDecimalDirective as KoDecimalDirective$1, KoFocusDirective as KoFocusDirective$1, KoAlertComponent as KoAlertComponent$1, KoHeaderComponent as KoHeaderComponent$1, KoOverDirective as KoOverDirective$1, KoTopMenuComponent as KoTopMenuComponent$1, KoLeftMenuComponent as KoLeftMenuComponent$1, KoWriteDirective as KoWriteDirective$1, XrmuiInfo as XrmuiInfo$1, XrmuiPanel as XrmuiPanel$2, XrmuiIcon as XrmuiIcon$1 } from 'xrmui';
|
|
5
4
|
import { MatIcon } from '@angular/material/icon';
|
|
6
5
|
import { MatBadge } from '@angular/material/badge';
|
|
7
6
|
import { Subject, BehaviorSubject } from 'rxjs';
|
|
@@ -715,85 +714,85 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImpor
|
|
|
715
714
|
|
|
716
715
|
class KiponUiModule {
|
|
717
716
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: KiponUiModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
718
|
-
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.1.1", ngImport: i0, type: KiponUiModule, imports: [KoHorizontalScrollComponent
|
|
719
|
-
KoHorizontalSplitComponent
|
|
720
|
-
KoMainComponent
|
|
721
|
-
KoTitlePanelComponent
|
|
722
|
-
KoVerticalScrollComponent
|
|
723
|
-
KoVerticalSplitComponent
|
|
724
|
-
KoViewComponent
|
|
725
|
-
KoExpansionPanelComponent
|
|
726
|
-
KoTablePanelComponent
|
|
727
|
-
KoButtonGroupComponent
|
|
728
|
-
KoDecimalDirective
|
|
729
|
-
KoFocusDirective
|
|
730
|
-
KoAlertComponent
|
|
731
|
-
KoHeaderComponent
|
|
732
|
-
KoOverDirective
|
|
733
|
-
KoTopMenuComponent
|
|
734
|
-
KoLeftMenuComponent
|
|
735
|
-
KoWriteDirective
|
|
736
|
-
KoHorizontalSplitComponent
|
|
737
|
-
KoMainComponent
|
|
738
|
-
KoTitlePanelComponent
|
|
739
|
-
KoVerticalScrollComponent
|
|
740
|
-
KoVerticalSplitComponent
|
|
741
|
-
KoViewComponent
|
|
742
|
-
KoExpansionPanelComponent
|
|
743
|
-
KoTablePanelComponent
|
|
744
|
-
KoButtonGroupComponent
|
|
745
|
-
KoDecimalDirective
|
|
746
|
-
KoFocusDirective
|
|
747
|
-
KoAlertComponent
|
|
748
|
-
KoHeaderComponent
|
|
749
|
-
KoOverDirective
|
|
750
|
-
KoTopMenuComponent
|
|
751
|
-
KoLeftMenuComponent
|
|
752
|
-
KoWriteDirective
|
|
717
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.1.1", ngImport: i0, type: KiponUiModule, imports: [KoHorizontalScrollComponent,
|
|
718
|
+
KoHorizontalSplitComponent,
|
|
719
|
+
KoMainComponent,
|
|
720
|
+
KoTitlePanelComponent,
|
|
721
|
+
KoVerticalScrollComponent,
|
|
722
|
+
KoVerticalSplitComponent,
|
|
723
|
+
KoViewComponent,
|
|
724
|
+
KoExpansionPanelComponent,
|
|
725
|
+
KoTablePanelComponent,
|
|
726
|
+
KoButtonGroupComponent,
|
|
727
|
+
KoDecimalDirective,
|
|
728
|
+
KoFocusDirective,
|
|
729
|
+
KoAlertComponent,
|
|
730
|
+
KoHeaderComponent,
|
|
731
|
+
KoOverDirective,
|
|
732
|
+
KoTopMenuComponent,
|
|
733
|
+
KoLeftMenuComponent,
|
|
734
|
+
KoWriteDirective], exports: [KoHorizontalScrollComponent,
|
|
735
|
+
KoHorizontalSplitComponent,
|
|
736
|
+
KoMainComponent,
|
|
737
|
+
KoTitlePanelComponent,
|
|
738
|
+
KoVerticalScrollComponent,
|
|
739
|
+
KoVerticalSplitComponent,
|
|
740
|
+
KoViewComponent,
|
|
741
|
+
KoExpansionPanelComponent,
|
|
742
|
+
KoTablePanelComponent,
|
|
743
|
+
KoButtonGroupComponent,
|
|
744
|
+
KoDecimalDirective,
|
|
745
|
+
KoFocusDirective,
|
|
746
|
+
KoAlertComponent,
|
|
747
|
+
KoHeaderComponent,
|
|
748
|
+
KoOverDirective,
|
|
749
|
+
KoTopMenuComponent,
|
|
750
|
+
KoLeftMenuComponent,
|
|
751
|
+
KoWriteDirective] });
|
|
753
752
|
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: KiponUiModule });
|
|
754
753
|
}
|
|
755
754
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: KiponUiModule, decorators: [{
|
|
756
755
|
type: NgModule,
|
|
757
756
|
args: [{
|
|
758
757
|
imports: [
|
|
759
|
-
KoHorizontalScrollComponent
|
|
760
|
-
KoHorizontalSplitComponent
|
|
761
|
-
KoMainComponent
|
|
762
|
-
KoTitlePanelComponent
|
|
763
|
-
KoVerticalScrollComponent
|
|
764
|
-
KoVerticalSplitComponent
|
|
765
|
-
KoViewComponent
|
|
766
|
-
KoExpansionPanelComponent
|
|
767
|
-
KoTablePanelComponent
|
|
768
|
-
KoButtonGroupComponent
|
|
769
|
-
KoDecimalDirective
|
|
770
|
-
KoFocusDirective
|
|
771
|
-
KoAlertComponent
|
|
772
|
-
KoHeaderComponent
|
|
773
|
-
KoOverDirective
|
|
774
|
-
KoTopMenuComponent
|
|
775
|
-
KoLeftMenuComponent
|
|
776
|
-
KoWriteDirective
|
|
758
|
+
KoHorizontalScrollComponent,
|
|
759
|
+
KoHorizontalSplitComponent,
|
|
760
|
+
KoMainComponent,
|
|
761
|
+
KoTitlePanelComponent,
|
|
762
|
+
KoVerticalScrollComponent,
|
|
763
|
+
KoVerticalSplitComponent,
|
|
764
|
+
KoViewComponent,
|
|
765
|
+
KoExpansionPanelComponent,
|
|
766
|
+
KoTablePanelComponent,
|
|
767
|
+
KoButtonGroupComponent,
|
|
768
|
+
KoDecimalDirective,
|
|
769
|
+
KoFocusDirective,
|
|
770
|
+
KoAlertComponent,
|
|
771
|
+
KoHeaderComponent,
|
|
772
|
+
KoOverDirective,
|
|
773
|
+
KoTopMenuComponent,
|
|
774
|
+
KoLeftMenuComponent,
|
|
775
|
+
KoWriteDirective
|
|
777
776
|
],
|
|
778
777
|
exports: [
|
|
779
|
-
KoHorizontalScrollComponent
|
|
780
|
-
KoHorizontalSplitComponent
|
|
781
|
-
KoMainComponent
|
|
782
|
-
KoTitlePanelComponent
|
|
783
|
-
KoVerticalScrollComponent
|
|
784
|
-
KoVerticalSplitComponent
|
|
785
|
-
KoViewComponent
|
|
786
|
-
KoExpansionPanelComponent
|
|
787
|
-
KoTablePanelComponent
|
|
788
|
-
KoButtonGroupComponent
|
|
789
|
-
KoDecimalDirective
|
|
790
|
-
KoFocusDirective
|
|
791
|
-
KoAlertComponent
|
|
792
|
-
KoHeaderComponent
|
|
793
|
-
KoOverDirective
|
|
794
|
-
KoTopMenuComponent
|
|
795
|
-
KoLeftMenuComponent
|
|
796
|
-
KoWriteDirective
|
|
778
|
+
KoHorizontalScrollComponent,
|
|
779
|
+
KoHorizontalSplitComponent,
|
|
780
|
+
KoMainComponent,
|
|
781
|
+
KoTitlePanelComponent,
|
|
782
|
+
KoVerticalScrollComponent,
|
|
783
|
+
KoVerticalSplitComponent,
|
|
784
|
+
KoViewComponent,
|
|
785
|
+
KoExpansionPanelComponent,
|
|
786
|
+
KoTablePanelComponent,
|
|
787
|
+
KoButtonGroupComponent,
|
|
788
|
+
KoDecimalDirective,
|
|
789
|
+
KoFocusDirective,
|
|
790
|
+
KoAlertComponent,
|
|
791
|
+
KoHeaderComponent,
|
|
792
|
+
KoOverDirective,
|
|
793
|
+
KoTopMenuComponent,
|
|
794
|
+
KoLeftMenuComponent,
|
|
795
|
+
KoWriteDirective
|
|
797
796
|
]
|
|
798
797
|
}]
|
|
799
798
|
}] });
|
|
@@ -1332,30 +1331,30 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImpor
|
|
|
1332
1331
|
|
|
1333
1332
|
class BorutoXrmUIModule {
|
|
1334
1333
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: BorutoXrmUIModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
1335
|
-
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.1.1", ngImport: i0, type: BorutoXrmUIModule, imports: [XrmuiInfo
|
|
1334
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.1.1", ngImport: i0, type: BorutoXrmUIModule, imports: [XrmuiInfo,
|
|
1336
1335
|
XrmuiLayout,
|
|
1337
|
-
XrmuiPanel
|
|
1338
|
-
XrmuiIcon
|
|
1336
|
+
XrmuiPanel,
|
|
1337
|
+
XrmuiIcon], exports: [XrmuiInfo,
|
|
1339
1338
|
XrmuiLayout,
|
|
1340
|
-
XrmuiPanel
|
|
1341
|
-
XrmuiIcon
|
|
1342
|
-
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: BorutoXrmUIModule, imports: [XrmuiInfo
|
|
1343
|
-
XrmuiIcon
|
|
1339
|
+
XrmuiPanel,
|
|
1340
|
+
XrmuiIcon] });
|
|
1341
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: BorutoXrmUIModule, imports: [XrmuiInfo,
|
|
1342
|
+
XrmuiIcon] });
|
|
1344
1343
|
}
|
|
1345
1344
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: BorutoXrmUIModule, decorators: [{
|
|
1346
1345
|
type: NgModule,
|
|
1347
1346
|
args: [{
|
|
1348
1347
|
imports: [
|
|
1349
|
-
XrmuiInfo
|
|
1348
|
+
XrmuiInfo,
|
|
1350
1349
|
XrmuiLayout,
|
|
1351
|
-
XrmuiPanel
|
|
1352
|
-
XrmuiIcon
|
|
1350
|
+
XrmuiPanel,
|
|
1351
|
+
XrmuiIcon
|
|
1353
1352
|
],
|
|
1354
1353
|
exports: [
|
|
1355
|
-
XrmuiInfo
|
|
1354
|
+
XrmuiInfo,
|
|
1356
1355
|
XrmuiLayout,
|
|
1357
|
-
XrmuiPanel
|
|
1358
|
-
XrmuiIcon
|
|
1356
|
+
XrmuiPanel,
|
|
1357
|
+
XrmuiIcon
|
|
1359
1358
|
]
|
|
1360
1359
|
}]
|
|
1361
1360
|
}] });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"boruto-xrmui.mjs","sources":["../../../projects/xrmui/src/lib/ko/forms/kobuttongroup/kobuttongroup.component.ts","../../../projects/xrmui/src/lib/ko/forms/kobuttongroup/kobuttongroup.component.html","../../../projects/xrmui/src/lib/ko/forms/kodecimal.directive.ts","../../../projects/xrmui/src/lib/ko/forms/kofocus.directive.ts","../../../projects/xrmui/src/lib/ko/message/koalert/koaleret.component.ts","../../../projects/xrmui/src/lib/ko/message/koalert/koalert.component.html","../../../projects/xrmui/src/lib/ko/message/koheader/koheader.component.ts","../../../projects/xrmui/src/lib/ko/message/koheader/koheader.component.html","../../../projects/xrmui/src/lib/ko/message/kowrite.directive.ts","../../../projects/xrmui/src/lib/ko/models/navigation.interface.ts","../../../projects/xrmui/src/lib/ko/navigation/koleftmenu/koleftmenu.component.ts","../../../projects/xrmui/src/lib/ko/navigation/koleftmenu/koleftmenu.component.html","../../../projects/xrmui/src/lib/ko/navigation/kotopmenu/kotopmenu.component.ts","../../../projects/xrmui/src/lib/ko/navigation/kotopmenu/kotopmenu.component.html","../../../projects/xrmui/src/lib/ko/navigation/koover.directive.ts","../../../projects/xrmui/src/lib/ko/panels/koexpansionpanel/koexpansionpanel.component.ts","../../../projects/xrmui/src/lib/ko/panels/koexpansionpanel/koexpansionpanel.component.html","../../../projects/xrmui/src/lib/ko/panels/kohorizontalscroll/kohorizontalscroll.component.ts","../../../projects/xrmui/src/lib/ko/panels/kohorizontalscroll/kohorizontalscroll.component.html","../../../projects/xrmui/src/lib/ko/panels/kohorizontalsplit/kohorizontalsplit.component.ts","../../../projects/xrmui/src/lib/ko/panels/kohorizontalsplit/kohorizontalsplit.component.html","../../../projects/xrmui/src/lib/ko/panels/komain/komain.component.ts","../../../projects/xrmui/src/lib/ko/panels/komain/komain.component.html","../../../projects/xrmui/src/lib/ko/panels/kotablepanel/kotablepanel.component.ts","../../../projects/xrmui/src/lib/ko/panels/kotablepanel/kotablepanel.component.html","../../../projects/xrmui/src/lib/ko/panels/kotitlepanel/kotitlepanel.component.ts","../../../projects/xrmui/src/lib/ko/panels/kotitlepanel/kotitlepanel.component.html","../../../projects/xrmui/src/lib/ko/panels/koverticalscroll/koverticalscroll.component.ts","../../../projects/xrmui/src/lib/ko/panels/koverticalscroll/koverticalscroll.component.html","../../../projects/xrmui/src/lib/ko/panels/koview/koview.component.ts","../../../projects/xrmui/src/lib/ko/panels/koview/koview.component.html","../../../projects/xrmui/src/lib/ko/panels/koverticalsplit/koverticalsplit.component.ts","../../../projects/xrmui/src/lib/ko/panels/koverticalsplit/koverticalsplit.component.html","../../../projects/xrmui/src/lib/ko/kipon-ui.module.ts","../../../projects/xrmui/src/lib/bo/services/selected.service.ts","../../../projects/xrmui/src/lib/bo/info/info.xrmui.ts","../../../projects/xrmui/src/lib/bo/info/info.xrmui.html","../../../projects/xrmui/src/lib/bo/models/xrmuipanel.model.ts","../../../projects/xrmui/src/lib/bo/layout/layout.xrmui.ts","../../../projects/xrmui/src/lib/bo/layout/layout.xrmui.html","../../../projects/xrmui/src/lib/bo/panel/panel.xrmui.ts","../../../projects/xrmui/src/lib/bo/panel/panel.xrmui.html","../../../projects/xrmui/src/lib/bo/icon/icon.xrmui.ts","../../../projects/xrmui/src/lib/bo/icon/icon.xrmui.html","../../../projects/xrmui/src/lib/bo/boruto-xrmui.module.ts","../../../projects/xrmui/src/public-api.ts","../../../projects/xrmui/src/boruto-xrmui.ts"],"sourcesContent":["import { Component, ViewEncapsulation } from '@angular/core';\r\n\r\n\r\n@Component({\r\n selector: 'ko-button-group',\r\n templateUrl: './kobuttongroup.component.html',\r\n styleUrls: ['./kobuttongroup.component.scss'],\r\n encapsulation: ViewEncapsulation.None\r\n})\r\n\r\nexport class KoButtonGroupComponent {\r\n constructor() {\r\n }\r\n}\r\n","<ng-content></ng-content>","import { Directive, ElementRef, HostListener, input, Output, EventEmitter, SimpleChanges, output, effect } from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[ko-decimal]'\r\n})\r\nexport class KoDecimalDirective {\r\n constructor(private el: ElementRef) {\r\n effect(() => {\r\n const align = this.align();\r\n if (this.el.nativeElement) {\r\n this.el.nativeElement.style['text-align'] = this.align();\r\n }\r\n });\r\n\r\n effect(() => {\r\n const v = this.value();\r\n this.setValueString();\r\n })\r\n }\r\n\r\n\r\n decimals = input<number>(2, { alias: 'ko-decimals' });\r\n value = input<number | null>(null, { alias: 'ko-value' });\r\n valueChanged = output<number | null>({ alias: 'ko-valueChange' });\r\n align = input<string>('right');\r\n\r\n controlDown: boolean = false;\r\n syncThread!: any;\r\n\r\n @HostListener('keydown', ['$event']) onKeydown($event: KeyboardEvent) {\r\n switch ($event.key) {\r\n case 'Backspace':\r\n case 'Tab':\r\n case 'ArrowLeft':\r\n case 'ArrowRight':\r\n case 'Delete':\r\n case '0':\r\n case '1':\r\n case '2':\r\n case '3':\r\n case '4':\r\n case '5':\r\n case '6':\r\n case '7':\r\n case '8':\r\n case '9':\r\n case '-': {\r\n this.bindValueBack();\r\n return true;\r\n }\r\n case ',': {\r\n if (this.decimals() == 0) {\r\n return false;\r\n }\r\n this.bindValueBack();\r\n return true;\r\n }\r\n case 'Control': {\r\n this.controlDown = true;\r\n this.bindValueBack();\r\n return true;\r\n }\r\n case 'c':\r\n case 'C':\r\n case 'v':\r\n case 'V': {\r\n if (this.controlDown == true) {\r\n this.bindValueBack();\r\n return true;\r\n }\r\n $event.stopPropagation();\r\n return false;\r\n }\r\n default: {\r\n $event.stopPropagation();\r\n return false;\r\n }\r\n }\r\n }\r\n\r\n @HostListener('blur') onBlur() {\r\n if (this.syncThread != null) clearTimeout(this.syncThread);\r\n this.syncThread = null;\r\n this.doBindValueBack();\r\n this.setValueString();\r\n }\r\n\r\n private setValueString(): void {\r\n if (this.el.nativeElement != null) {\r\n const v = this.value();\r\n if (v != null) {\r\n this.el.nativeElement.value = this.numberToString(v, this.decimals());\r\n } else {\r\n this.el.nativeElement.value = \"\";\r\n }\r\n }\r\n }\r\n\r\n private bindValueBack(): void;\r\n private bindValueBack(timeout: number): void;\r\n private bindValueBack(timeout: number = 3000): void {\r\n if (this.syncThread != null) clearTimeout(this.syncThread);\r\n this.syncThread = setTimeout(() => {\r\n this.syncThread = null;\r\n this.doBindValueBack();\r\n }, timeout);\r\n }\r\n\r\n private doBindValueBack(): void {\r\n if (this.el.nativeElement != null) {\r\n let v = this.el.nativeElement.value;\r\n if (v == null || v == '') {\r\n this.valueChanged.emit(null);\r\n return;\r\n } else {\r\n this.valueChanged.emit(Number(v.replace(',','.')))\r\n }\r\n }\r\n }\r\n\r\n private numberToString(value: number, decimals: number): string {\r\n if (value == null) {\r\n return '';\r\n }\r\n\r\n if (decimals == null) {\r\n return value.toString().replace('.', ',');\r\n }\r\n\r\n let result = value.toString().replace('.', ',');\r\n if (decimals <= 0) {\r\n var split = result.split(',');\r\n if (split.length == 2 && Number(split[1]) > 0) {\r\n return Math.round(value).toString().replace(\".\", \",\").split(',')[0];\r\n }\r\n return result.split(',')[0];\r\n }\r\n\r\n if (result.indexOf(',') < 0) {\r\n result += ',0';\r\n }\r\n\r\n let decimalPart = result.split(',')[1];\r\n if (decimalPart.length == decimals) {\r\n return result;\r\n }\r\n\r\n if (decimalPart.length <= decimals) {\r\n return result.split(',')[0] + ',' + String(decimalPart + '00000000000000000' + decimalPart).substring(0, decimals);\r\n }\r\n\r\n var round = Number('1' + String('00000000000000000').slice((-1) * decimals));\r\n\r\n var roundedValue = Math.round(value * round) / round;\r\n\r\n return this.numberToString(roundedValue, decimals);\r\n }\r\n\r\n}\r\n","import { Directive, ElementRef, input, output, effect, inject } from '@angular/core';\r\n\r\n@Directive({ selector: '[ko-focus]' })\r\nexport class KoFocusDirective {\r\n\r\nprivate hostElement: ElementRef = inject(ElementRef);\r\n\r\n focus = input<boolean>(false, { alias: 'ko-focus' });\r\n focusChange = output<boolean>({ alias: 'ko-focusChange' });\r\n\r\n constructor() { \r\n effect(() => {\r\n const isFocused = this.focus();\r\n if (isFocused) {\r\n setTimeout(() => {\r\n this.hostElement.nativeElement.focus();\r\n this.focusChange.emit(false);\r\n },10);\r\n }\r\n })\r\n }\r\n}\r\n","import { NgClass } from '@angular/common';\r\nimport { Component, Input, ViewEncapsulation } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'ko-alert',\r\n templateUrl: './koalert.component.html',\r\n styleUrls: ['./koalert.component.scss'],\r\n imports:[NgClass],\r\n encapsulation: ViewEncapsulation.None\r\n})\r\n\r\nexport class KoAlertComponent {\r\n\r\n @Input('align') align: string = 'left';\r\n constructor() {\r\n }\r\n}\r\n","<div [ngClass]=\"align\"><ng-content></ng-content></div>\r\n","import { NgClass } from '@angular/common';\r\nimport { Component, input, ViewEncapsulation } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'ko-header',\r\n templateUrl: './koheader.component.html',\r\n styleUrls: ['./koheader.component.scss'],\r\n imports:[NgClass],\r\n encapsulation: ViewEncapsulation.None\r\n})\r\n\r\nexport class KoHeaderComponent {\r\n\r\n align = input<string>('left');\r\n\r\n}\r\n","<div [ngClass]=\"align()\"><ng-content></ng-content></div>\r\n","import { Directive, ElementRef, HostListener, input, AfterViewInit, inject, effect } from '@angular/core';\r\n\r\n@Directive({ selector: '[ko-write]' })\r\nexport class KoWriteDirective {\r\n\r\n direction = input<string>('up', { alias: 'ko-write' });\r\n private hostElement: ElementRef = inject(ElementRef);\r\n\r\n constructor() { \r\n effect(() => {\r\n const dir = this.direction();\r\n this.render();\r\n });\r\n }\r\n\r\n\r\n\r\n\r\n private render(): void {\r\n var host = this.hostElement.nativeElement as HTMLElement;\r\n if (host.parentElement) {\r\n var parent = host.parentElement as HTMLElement;\r\n\r\n parent.style.overflow = \"hidden\"; \r\n\r\n var h = parent.offsetHeight;\r\n var w = parent.offsetWidth;\r\n\r\n\r\n if (h && w) {\r\n host.style.width = h.toString() + \"px\";\r\n host.style.height = w.toString() + \"px\";\r\n host.style.lineHeight = w.toString() + \"px\";\r\n host.style.textAlign = \"center\";\r\n host.style.position = \"relative\";\r\n host.style.transformOrigin = \"0% 0%\";\r\n host.style.display = \"inline-block\";\r\n\r\n if (this.direction() == \"up\") {\r\n host.style.transform = \"rotate(-90deg)\";\r\n host.style.top = h.toString() + \"px\";\r\n } else {\r\n host.style.transform = \"rotate(90deg)\";\r\n host.style.left = w.toString() + \"px\";\r\n }\r\n }\r\n }\r\n }\r\n}\r\n","\r\nexport interface KoNavigation {\r\n id: string;\r\n title: string | null;\r\n disabled: boolean;\r\n click: any;\r\n over: boolean | null;\r\n cssClass: string | null;\r\n imgUrl: string | null;\r\n }\r\n \r\n export class KoDivider implements KoNavigation {\r\n id: string;\r\n title: string | null;\r\n disabled: boolean;\r\n click: any = null;\r\n over: boolean | null = null;\r\n cssClass: string | null = null;\r\n imgUrl: string | null = null;\r\n \r\n constructor() {\r\n this.id = \"##divider##\";\r\n this.title = \"\";\r\n this.disabled = true;\r\n }\r\n }\r\n \r\n export class KoNavigationByCssClass implements KoNavigation {\r\n id: string;\r\n title: string | null = null;\r\n disabled: boolean;\r\n cssClass: string;\r\n click: any;\r\n over: boolean | null = null;\r\n imgUrl: string | null = null;\r\n \r\n constructor(id: string, cssClass: string)\r\n constructor(id: string, cssClass: string, disabled: boolean)\r\n constructor(id: string, cssClass: string, disabled: boolean, title: string)\r\n constructor(id: string, cssClass: string, disabled: boolean, title: string, click: any)\r\n constructor(id: string, cssClass: string, disabled: boolean = false, title: string | null = null, click: any = null ) {\r\n this.id = id;\r\n this.title = title;\r\n this.disabled = disabled;\r\n this.cssClass = cssClass;\r\n this.click = click;\r\n }\r\n }\r\n \r\n export class KoNavigationByImageUrl implements KoNavigation {\r\n id: string;\r\n title: string | null = null;\r\n disabled: boolean;\r\n imgUrl: string;\r\n click: any;\r\n over: boolean | null = null;\r\n cssClass: string | null = null;\r\n \r\n constructor(id: string, imgUrl: string)\r\n constructor(id: string, imgUrl: string, disabled: boolean)\r\n constructor(id: string, imgUrl: string, disabled: boolean, title: string)\r\n constructor(id: string, imgUrl: string, disabled: boolean, title: string, click: any)\r\n constructor(id: string, imgUrl: string, disabled: boolean = false, title: string | null = null, click: any = null) {\r\n this.id = id;\r\n this.title = null;\r\n this.disabled = disabled;\r\n this.imgUrl = imgUrl;\r\n this.click = null;\r\n }\r\n }\r\n ","import { Component, input, output, ElementRef, AfterViewInit, inject, ViewEncapsulation, signal } from '@angular/core';\r\n\r\nimport { KoDivider, KoNavigation, KoNavigationByCssClass, KoNavigationByImageUrl } from '../../models/navigation.interface';\r\nimport { NgClass } from '@angular/common';\r\n\r\n@Component({\r\n selector: 'ko-left-menu',\r\n templateUrl: './koleftmenu.component.html',\r\n styleUrls: ['./koleftmenu.component.scss'],\r\n imports: [NgClass],\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class KoLeftMenuComponent implements AfterViewInit {\r\n private er: ElementRef = inject(ElementRef);\r\n\r\n items = input<(KoNavigation)[]>([]);\r\n current = input<string | null>(null);\r\n currentChange = output<string | null>();\r\n\r\n private itemheight$ = signal<string>('');\r\n over = signal<KoNavigation | null>(null);\r\n\r\n constructor() {\r\n }\r\n\r\n\r\n itemheight(v: KoNavigation) {\r\n if (v.id == \"##divider##\") {\r\n return '2px';\r\n }\r\n return this.itemheight$();\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n setTimeout(() => {\r\n this.itemheight$.set( (this.er.nativeElement.offsetWidth - 40).toString() + \"px\");\r\n }, 1);\r\n }\r\n\r\n setCurrent(item: KoNavigation): void {\r\n if (!item.disabled) {\r\n if (item.click == null) {\r\n this.currentChange.emit(item.id);\r\n } else {\r\n item.click();\r\n }\r\n }\r\n }\r\n\r\n overItem(v: KoNavigation | null): void {\r\n if (v != null && !v.disabled) {\r\n this.over.set(v);\r\n }\r\n }\r\n\r\n outItem(): void {\r\n this.over.set(null);\r\n }\r\n}\r\n","@for(item of items(); track item) {\r\n<div\r\n (click)=\"setCurrent(item)\"\r\n class=\"ko-left-menu-item\"\r\n [ngClass]=\"{ current: item.id == current(), disabled: item.disabled == true && item.id != '##divider##', over: item == over(), divider: item.id == '##divider##' }\"\r\n (mouseover)=\"overItem(item)\"\r\n (mouseleave)=\"outItem()\"\r\n [style.height]=\"itemheight(item)\"\r\n >\r\n @if (item.title != null && item.title != '' && item.id != '##divider##' && item.cssClass == null && item.imgUrl == null){<span>{{ item.title }}</span>}\r\n @if (item.cssClass != null && item.cssClass != ''){ <span class=\"byclass\" [ngClass]=\"item.cssClass\" [title]=\"item.title\"></span> }\r\n @if (item.imgUrl != null){<img [src]=\"item.imgUrl\" [alt]=\"item.title\" />}\r\n</div>\r\n}\r\n<ng-content></ng-content>\r\n","import { Component, input, output, signal, inject, ElementRef, AfterViewInit, ViewEncapsulation } from '@angular/core';\r\n\r\nimport { KoNavigation } from '../../models/navigation.interface';\r\nimport { NgClass } from '@angular/common';\r\n\r\n@Component({\r\n selector: 'ko-top-menu',\r\n templateUrl: './kotopmenu.component.html',\r\n styleUrls: ['./kotopmenu.component.scss'],\r\n imports: [NgClass],\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class KoTopMenuComponent implements AfterViewInit {\r\n\r\n private er: ElementRef = inject(ElementRef);\r\n\r\n items = input<(KoNavigation)[]>([]);\r\n current = input<string | null>(null);\r\n currentChange = output<string | null>();\r\n\r\n over = signal<KoNavigation | null>(null);\r\n\r\n topcornerwidth = signal<string>('');\r\n\r\n constructor() {\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n setTimeout(() => {\r\n this.topcornerwidth.set(this.er.nativeElement.offsetHeight.toString() + \"px\");\r\n }, 1);\r\n }\r\n\r\n setCurrent(item: KoNavigation): void {\r\n if (!item.disabled) {\r\n if (item.click == null) {\r\n this.currentChange.emit(item.id);\r\n } else {\r\n item.click();\r\n }\r\n }\r\n }\r\n\r\n itemwidth(v: KoNavigation) {\r\n if (v.id == \"##divider##\") {\r\n return '0';\r\n }\r\n return this.topcornerwidth();\r\n }\r\n\r\n\r\n overItem(v: KoNavigation | null): void {\r\n if (v != null && !v.disabled) {\r\n this.over.set(v);\r\n }\r\n }\r\n\r\n outItem(): void {\r\n this.over.set(null);\r\n }\r\n}\r\n","<div class=\"ko-top-menu-corner\" [style.width]=\"topcornerwidth()\"></div>\r\n@for (item of items(); track item) {\r\n<div (click)=\"setCurrent(item)\"\r\n class=\"ko-top-menu-item\"\r\n [ngClass]=\"{ current: item.id == current(), disabled: item.disabled == true && item.id != '##divider##', over: item == over(), divider: item.id == '##divider##' }\"\r\n (mouseover)=\"overItem(item)\"\r\n (mouseleave)=\"outItem()\"\r\n [style.width]=\"itemwidth(item)\">\r\n @if (item.title != null && item.title != '' && item.id != '##divider##' && item.cssClass==null && item.imgUrl==null) {<span>{{ item.title }}</span>}\r\n @if (item.cssClass != null && item.cssClass != ''){<span class=\"byclass\" [ngClass]=\"item.cssClass\" [title]=\"item.title\"></span>}\r\n @if (item.imgUrl != null) {<img [src]=\"item.imgUrl\" [alt]=\"item.title\" />}\r\n</div>\r\n}\r\n<ng-content></ng-content>\r\n","import { Directive, ElementRef, HostListener, input, Output, EventEmitter, SimpleChanges, inject } from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[ko-over]'\r\n})\r\nexport class KoOverDirective {\r\n\r\n private el: ElementRef = inject(ElementRef);\r\n\r\n constructor() {\r\n }\r\n\r\n current = input.required<any>({alias:'ko-over'});\r\n\r\n @HostListener('mouseover', ['$event']) onMouseover($event: MouseEvent) {\r\n const me = this.current();\r\n if (this.current != null) {\r\n me['over'] = true;\r\n }\r\n }\r\n\r\n @HostListener('mouseleave', ['$event']) onMouseleave($event: MouseEvent) {\r\n const me = this.current();\r\n if (this.current != null) {\r\n delete me['over'];\r\n }\r\n }\r\n}\r\n","import { Component, effect, input, output, signal, ViewEncapsulation } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'ko-expansion-panel',\r\n templateUrl: './koexpansionpanel.component.html',\r\n styleUrls: ['./koexpansionpanel.component.scss'],\r\n imports: [],\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class KoExpansionPanelComponent {\r\n\r\n expanded = input<boolean>(false);\r\n expandedChange = output<boolean>();\r\n\r\n isExpanded = signal<boolean>(false);\r\n\r\n constructor() {\r\n effect(() => {\r\n this.isExpanded.set(this.expanded());\r\n });\r\n }\r\n\r\n toggle(): void {\r\n this.isExpanded.set(!this.isExpanded());\r\n this.expandedChange.emit(this.isExpanded());\r\n }\r\n}\r\n","<div class=\"ko-container\">\r\n <div class=\"ko-title\">\r\n <div style=\"position: relative; width: 100%\">\r\n <div style=\"position: absolute; left: -25px; height: 40px; width: 20px; text-align: center; vertical-align: middle; cursor: pointer\" (click)=\"toggle()\">\r\n @if (!isExpanded()){<span class=\"fa fa-angle-up\"></span>}\r\n @if (isExpanded()){<span class=\"fa fa-angle-down\"></span>}\r\n </div>\r\n </div>\r\n <div (click)=\"toggle()\" style=\"cursor: pointer\"><ng-content select=\"[ko-title]\"></ng-content></div>\r\n </div>\r\n @if (isExpanded()) {\r\n <div class=\"ko-body\">\r\n <ng-content select=\"[ko-body]\"></ng-content>\r\n </div>\r\n }\r\n</div>\r\n","import { Component, ViewEncapsulation } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'ko-horizontal-scroll',\r\n templateUrl: './kohorizontalscroll.component.html',\r\n styleUrls: ['./kohorizontalscroll.component.scss'],\r\n imports: [],\r\n encapsulation: ViewEncapsulation.None\r\n \r\n})\r\n\r\nexport class KoHorizontalScrollComponent {\r\n constructor() {\r\n }\r\n}\r\n","<ng-content></ng-content>","import { NgStyle } from '@angular/common';\r\nimport { Component, effect, input, ViewEncapsulation } from '@angular/core';\r\n\r\n\r\n@Component({\r\n selector: 'ko-horizontal-split',\r\n templateUrl: './kohorizontalsplit.component.html',\r\n styleUrls: ['./kohorizontalsplit.component.scss'],\r\n imports: [NgStyle],\r\n encapsulation: ViewEncapsulation.None\r\n})\r\n\r\nexport class KoHorizontalSplitComponent {\r\n\r\n height = input<string>(\"50%\");\r\n fixed = input<'top' | 'bottom'>('top');\r\n\r\n constructor() {\r\n effect(() => {\r\n const h = this.height();\r\n const f = this.fixed();\r\n this.init();\r\n });\r\n }\r\n\r\n topStyle: any;\r\n bottomStyle: any;\r\n\r\n private init(): void {\r\n if (this.fixed() == 'top') {\r\n this.topStyle = {\r\n height: this.height()\r\n };\r\n this.bottomStyle = {\r\n top: this.height()\r\n }\r\n } else {\r\n this.topStyle = {\r\n bottom: this.height()\r\n }\r\n this.bottomStyle = {\r\n height: this.height()\r\n }\r\n }\r\n }\r\n}\r\n","<div class=\"ko-top\" [ngStyle]=\"topStyle\">\r\n <ng-content select=\"[ko-top]\"></ng-content>\r\n</div>\r\n<div class=\"ko-bottom\" [ngStyle]=\"bottomStyle\">\r\n <ng-content select=\"[ko-bottom]\"></ng-content>\r\n</div>\r\n","import { Component, ViewEncapsulation } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'ko-main',\r\n templateUrl: './komain.component.html',\r\n styleUrls: ['./komain.component.scss'],\r\n imports: [],\r\n encapsulation: ViewEncapsulation.None\r\n\r\n\r\n})\r\nexport class KoMainComponent {\r\n constructor() {\r\n }\r\n}\r\n","<ng-content></ng-content>","import { NgStyle } from '@angular/common';\r\nimport { Component, input, ElementRef, ViewChild, ViewEncapsulation, OnChanges, AfterViewInit, ChangeDetectorRef, inject, effect, signal } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'ko-table-panel',\r\n templateUrl: './kotablepanel.component.html',\r\n styleUrls: ['./kotablepanel.component.scss'],\r\n imports: [NgStyle],\r\n encapsulation: ViewEncapsulation.None\r\n\r\n})\r\n\r\nexport class KoTablePanelComponent implements AfterViewInit {\r\n\r\n @ViewChild('tableheader') tableheader!: ElementRef;\r\n @ViewChild('tablebody') tablebody!: ElementRef;\r\n @ViewChild('tablefooter') tablefooter!: ElementRef;\r\n\r\n height = input<string>('40px');\r\n\r\n private cdRef: ChangeDetectorRef = inject(ChangeDetectorRef);\r\n\r\n constructor() {\r\n effect(() => {\r\n const h = this.height();\r\n this.doSetStyle();\r\n\r\n });\r\n }\r\n\r\n\r\n private topHeight!: string;\r\n private fotHeight!: string;\r\n\r\n private hasTop: boolean = true;\r\n private hasFot: boolean = true;\r\n\r\n topStyle = signal<any>({});\r\n bodStyle = signal<any>({});\r\n fotStyle = signal<any>({});\r\n\r\n ngAfterViewInit(): void {\r\n this.hasTop = this.tableheader.nativeElement != null && this.tableheader.nativeElement.children.length > 0;\r\n this.hasFot = this.tablefooter.nativeElement != null && this.tablefooter.nativeElement.children.length > 0;\r\n this.cdRef.detectChanges();\r\n\r\n this.setStyle();\r\n }\r\n\r\n updateScroll() {\r\n const header = this.tableheader.nativeElement as HTMLElement;\r\n const body = this.tablebody.nativeElement as HTMLElement;\r\n const footer = this.tablefooter.nativeElement as HTMLElement;\r\n\r\n var toScroll = this.hasFot ? footer.scrollLeft : body.scrollLeft;\r\n\r\n if (this.hasTop) {\r\n header.scrollLeft = toScroll;\r\n }\r\n\r\n if (this.hasFot) {\r\n footer.scrollLeft = toScroll;\r\n }\r\n\r\n body.scrollLeft = toScroll;\r\n }\r\n\r\n private setStyle(): void {\r\n\r\n var spl = this.height().split(' ');\r\n if (spl.length == 2) {\r\n this.topHeight = spl[0];\r\n this.fotHeight = spl[1];\r\n } else {\r\n this.topHeight = spl[0];\r\n this.fotHeight = spl[0];\r\n }\r\n setTimeout(() => this.doSetStyle(), 10);\r\n }\r\n\r\n private doSetStyle(): void {\r\n if (this.hasTop && this.hasFot) {\r\n this.topStyle.set({\r\n height: this.topHeight,\r\n display: 'block'\r\n });\r\n\r\n this.bodStyle.set({\r\n top: this.topHeight,\r\n bottom: this.fotHeight,\r\n \"overflow-x\": \"hidden\"\r\n });\r\n\r\n this.fotStyle.set({\r\n height: this.fotHeight,\r\n display:' block'\r\n })\r\n return;\r\n }\r\n\r\n if (this.hasTop && !this.hasFot) {\r\n this.topStyle.set({\r\n height: this.topHeight,\r\n display: 'block'\r\n });\r\n\r\n this.bodStyle.set({\r\n top: this.topHeight,\r\n bottom: 0,\r\n \"overflow-x\" : \"auto\"\r\n });\r\n\r\n this.fotStyle.set({\r\n display: 'none'\r\n });\r\n return;\r\n }\r\n\r\n if (!this.hasTop && this.hasFot) {\r\n this.topStyle.set({\r\n display: 'none'\r\n });\r\n\r\n this.bodStyle.set({\r\n top: 0,\r\n bottom: this.fotHeight\r\n });\r\n\r\n this.fotStyle.set({\r\n height: this.fotHeight,\r\n display: 'block'\r\n });\r\n return;\r\n }\r\n\r\n if (!this.hasTop && !this.hasFot) {\r\n this.topStyle.set({\r\n display: 'none'\r\n });\r\n\r\n this.bodStyle.set({\r\n top: 0,\r\n bottom: 0\r\n });\r\n\r\n this.fotStyle.set({\r\n display: 'none'\r\n })\r\n }\r\n }\r\n}\r\n","<div class=\"ko-table\">\r\n <div class=\"ko-table-header\" [ngStyle]=\"topStyle()\" #tableheader>\r\n <ng-content select=\"[ko-table-header]\"></ng-content>\r\n </div>\r\n <div class=\"ko-table-body\" [ngStyle]=\"bodStyle()\" #tablebody (scroll)=\"updateScroll()\">\r\n <ng-content select=\"[ko-table-body]\"></ng-content>\r\n </div>\r\n <div class=\"ko-table-footer\" [ngStyle]=\"fotStyle()\" #tablefooter (scroll)=\"updateScroll()\">\r\n <ng-content select=\"[ko-table-footer]\"></ng-content>\r\n </div>\r\n</div>\r\n","import { Component, ViewEncapsulation } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'ko-title-panel',\r\n templateUrl: './kotitlepanel.component.html',\r\n styleUrls: ['./kotitlepanel.component.scss'],\r\n imports: [],\r\n encapsulation: ViewEncapsulation.None\r\n \r\n})\r\n\r\nexport class KoTitlePanelComponent {\r\n constructor() {\r\n }\r\n}\r\n","<div class=\"ko-container\">\r\n <div class=\"ko-title\">\r\n <ng-content select=\"[ko-title]\"></ng-content>\r\n </div>\r\n <div class=\"ko-body\">\r\n <ng-content select=\"[ko-body]\"></ng-content>\r\n </div>\r\n</div>\r\n","import { Component, ViewEncapsulation } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'ko-vertical-scroll',\r\n templateUrl: './koverticalscroll.component.html',\r\n styleUrls: ['./koverticalscroll.component.scss'],\r\n imports: [],\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class KoVerticalScrollComponent {\r\n constructor() {\r\n }\r\n}\r\n","<ng-content></ng-content>","import { Component, ViewEncapsulation } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'ko-view',\r\n templateUrl: './koview.component.html',\r\n styleUrls: ['./koview.component.scss'],\r\n imports: [],\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class KoViewComponent {\r\n constructor() {\r\n }\r\n}\r\n","<ng-content></ng-content>","import { NgStyle } from '@angular/common';\r\nimport { Component, effect, input, signal, ViewEncapsulation } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'ko-vertical-split',\r\n templateUrl: './koverticalsplit.component.html',\r\n styleUrls: ['./koverticalsplit.component.scss'],\r\n imports: [NgStyle],\r\n encapsulation: ViewEncapsulation.None\r\n\r\n})\r\nexport class KoVerticalSplitComponent {\r\n\r\n width = input<string>('50%');\r\n fixed = input<'left' | 'right'>('left');\r\n\r\n constructor() {\r\n effect(() => {\r\n const w = this.width();\r\n const f = this.fixed();\r\n this.init();\r\n });\r\n }\r\n\r\n leftStyle = signal<any>({});\r\n rightStyle = signal<any>({});\r\n\r\n\r\n private init(): void {\r\n if (this.fixed() == 'left') {\r\n this.leftStyle.set({\r\n width: this.width()\r\n });\r\n\r\n this.rightStyle.set({\r\n left: this.width()\r\n });\r\n } else {\r\n this.leftStyle.set({\r\n right: this.width()\r\n });\r\n this.rightStyle.set({\r\n width: this.width()\r\n });\r\n }\r\n }\r\n}\r\n","<div class=\"ko-left\" [ngStyle]=\"leftStyle()\">\r\n <ng-content select=\"[ko-left]\"></ng-content>\r\n</div>\r\n<div class=\"ko-right\" [ngStyle]=\"rightStyle()\">\r\n <ng-content select=\"[ko-right]\"></ng-content>\r\n</div>\r\n","import { NgModule } from '@angular/core';\r\nimport { KoAlertComponent, KoButtonGroupComponent, KoDecimalDirective, KoExpansionPanelComponent, KoFocusDirective, KoHeaderComponent, KoHorizontalScrollComponent, KoHorizontalSplitComponent, KoLeftMenuComponent, KoMainComponent, KoNavigationByCssClass, KoOverDirective, KoTablePanelComponent, KoTitlePanelComponent, KoTopMenuComponent, KoVerticalScrollComponent, KoVerticalSplitComponent, KoViewComponent, KoWriteDirective } from 'xrmui';\r\n\r\n@NgModule({\r\n imports: [\r\n KoHorizontalScrollComponent,\r\n KoHorizontalSplitComponent,\r\n KoMainComponent,\r\n KoTitlePanelComponent,\r\n KoVerticalScrollComponent,\r\n KoVerticalSplitComponent,\r\n KoViewComponent,\r\n KoExpansionPanelComponent,\r\n KoTablePanelComponent,\r\n KoButtonGroupComponent,\r\n KoDecimalDirective,\r\n KoFocusDirective,\r\n KoAlertComponent,\r\n KoHeaderComponent,\r\n KoOverDirective,\r\n KoTopMenuComponent,\r\n KoLeftMenuComponent,\r\n KoWriteDirective\r\n ],\r\n exports: [\r\n KoHorizontalScrollComponent,\r\n KoHorizontalSplitComponent,\r\n KoMainComponent,\r\n KoTitlePanelComponent,\r\n KoVerticalScrollComponent,\r\n KoVerticalSplitComponent,\r\n KoViewComponent,\r\n KoExpansionPanelComponent,\r\n KoTablePanelComponent,\r\n KoButtonGroupComponent,\r\n KoDecimalDirective,\r\n KoFocusDirective,\r\n KoAlertComponent,\r\n KoHeaderComponent,\r\n KoOverDirective,\r\n KoTopMenuComponent,\r\n KoLeftMenuComponent,\r\n KoWriteDirective\r\n ]\r\n})\r\nexport class KiponUiModule { }\r\n","import { Injectable, signal, Signal, WritableSignal } from '@angular/core';\r\nimport { BehaviorSubject, Subject } from 'rxjs';\r\nimport { ISelectable, ISelectableService } from '../api/iselectable.interface';\r\n\r\nexport interface SelectedListContainer {\r\n selected: string[],\r\n empty: boolean,\r\n loaded: boolean\r\n}\r\n\r\nexport interface SelectedLists {\r\n [key: string]: BehaviorSubject<SelectedListContainer>\r\n}\r\n\r\nexport interface NotSelectedLists {\r\n [key: string]: BehaviorSubject<boolean>\r\n}\r\n\r\nexport interface LastSelectedItems {\r\n [key: string]: SelectedListContainer;\r\n}\r\n\r\nexport interface ServiceBinds {\r\n [key: string]: ISelectableService;\r\n}\r\n\r\nexport interface Counts {\r\n [key: string]: WritableSignal<number>;\r\n}\r\n\r\n\r\n@Injectable({providedIn:'root'})\r\nexport class SelectedService {\r\n\r\n private selectedItems: SelectedLists = {} as SelectedLists;\r\n private notSelectedItems: NotSelectedLists = {} as NotSelectedLists;\r\n private lastSelectedItems: LastSelectedItems = {} as LastSelectedItems;\r\n private binds: ServiceBinds = {} as ServiceBinds;\r\n private keys: string[] = [];\r\n private nots: string[] = [];\r\n private counts: Counts = {};\r\n\r\n private resetFilter$: Subject<void>;\r\n\r\n constructor() {\r\n this.resetFilter$ = new Subject<void>();\r\n }\r\n\r\n resetAll() {\r\n this.resetFilter$.next();\r\n }\r\n\r\n reset(): Subject<void> {\r\n return this.resetFilter$;\r\n }\r\n\r\n get(key: string): BehaviorSubject<SelectedListContainer> {\r\n if (this.selectedItems[key] != null) {\r\n return this.selectedItems[key];\r\n }\r\n this.selectedItems[key] = new BehaviorSubject<SelectedListContainer>({ selected: [], empty: false, loaded: false });\r\n this.lastSelectedItems[key] = { selected: [], empty: false, loaded: false };\r\n this.keys.push(key);\r\n return this.selectedItems[key];\r\n }\r\n\r\n count(key: string): Signal<number> {\r\n if (this.counts[key] != null) {\r\n return this.counts[key];\r\n }\r\n\r\n const con = this.get(key);\r\n this.counts[key] = signal<number>(con.value.selected.length);\r\n return this.counts[key];\r\n }\r\n\r\n bind(service: ISelectableService): void {\r\n this.binds[service.key] = service;\r\n }\r\n\r\n not(key: string): BehaviorSubject<boolean> {\r\n if (this.notSelectedItems[key] != null) {\r\n return this.notSelectedItems[key];\r\n }\r\n this.notSelectedItems[key] = new BehaviorSubject<boolean>(false);\r\n this.nots.push(key);\r\n return this.notSelectedItems[key];\r\n }\r\n\r\n push(key: string, values: string[]) {\r\n const selector = this.binds[key];\r\n if (selector != null && selector != undefined) {\r\n selector.items().value.forEach(r => {\r\n r.selected = values.find(v => v == r.id) != null;\r\n });\r\n const tobepublished = selector.items().value.filter(r => r.selected == true).map(r => r.id);\r\n this.publish(key, tobepublished, false);\r\n } else {\r\n throw '[' + key + ']' + ' er ikke blevet bundet til service';\r\n }\r\n }\r\n\r\n publish(key: string, values: string[], empty: boolean) {\r\n var beh = this.get(key);\r\n var value = beh.value;\r\n value.selected = values;\r\n value.empty = empty;\r\n\r\n var las = this.lastSelectedItems[key];\r\n\r\n if (!las.loaded || !this.isSame(value, las)) {\r\n las.loaded = true;\r\n las.empty = value.empty;\r\n las.selected = value.selected;\r\n beh.next(value);\r\n }\r\n\r\n if (this.counts[key] != null) {\r\n this.counts[key].set(values.length);\r\n }\r\n }\r\n\r\n silentUnselectAll(items?: BehaviorSubject<ISelectable[]>) {\r\n if (items != undefined) {\r\n items.value.forEach(r => { r.selected = false; });\r\n }\r\n }\r\n\r\n toggleNot(k: string) {\r\n const n = this.not(k);\r\n const next = !n.value;\r\n n.next(next);\r\n }\r\n\r\n clearAllNots() {\r\n this.nots.forEach(n => {\r\n if (this.notSelectedItems[n].value == true) {\r\n this.notSelectedItems[n].next(false);\r\n }\r\n });\r\n }\r\n\r\n private isSame(next: SelectedListContainer,last: SelectedListContainer): boolean {\r\n if (next.empty != last.empty) return false;\r\n if (next.selected.length != last.selected.length) return false;\r\n\r\n for (var i=0;i<next.selected.length;i++) {\r\n if (next.selected[i] != last.selected[i]) {\r\n return false;\r\n }\r\n }\r\n return true;\r\n } \r\n}\r\n","import { NgClass } from '@angular/common';\r\nimport { Component, input, output, OnInit, OnDestroy, inject } from '@angular/core';\r\nimport { MatIcon } from '@angular/material/icon';\r\nimport { Subscription } from 'rxjs';\r\nimport { MatBadge } from '@angular/material/badge';\r\nimport { ISelectable, ISelectableService } from '../api/iselectable.interface';\r\nimport { SelectedService } from '../services/selected.service';\r\n\r\n\r\nexport interface IGroupedSelectable {\r\n group?: string;\r\n items: ISelectable[];\r\n}\r\n\r\n@Component({\r\n selector: 'xrmui-info',\r\n templateUrl: './info.xrmui.html',\r\n styleUrl: './info.xrmui.scss',\r\n imports: [MatIcon,MatBadge]\r\n})\r\nexport class XrmuiInfo implements OnInit, OnDestroy {\r\n\r\n private selectedService: SelectedService = inject(SelectedService);\r\n\r\n label = input<string>();\r\n onlyshowselected = input<boolean>(false);\r\n items = input<ISelectableService>();\r\n icon = input<string>();\r\n click = output<void>();\r\n clear = output<void>();\r\n badget = input<number>();\r\n\r\n list$?: Subscription;\r\n list: ISelectable[] = [];\r\n\r\n select$?: Subscription;\r\n\r\n grouped: IGroupedSelectable[] = [];\r\n\r\n over: ISelectable | null = null;\r\n\r\n isnot: boolean = false;\r\n isnot$?: Subscription;\r\n\r\n constructor() {\r\n }\r\n\r\n ngOnInit() {\r\n const service = this.items();\r\n\r\n if (service != null) {\r\n this.select$ = this.selectedService.get(service.key).subscribe(v => {\r\n this.list = this.list.filter(v => v.selected == true);\r\n });\r\n\r\n this.list$ = service.items().subscribe(r => {\r\n this.list = r.filter(v => v.selected == true);\r\n this.doGrouping();\r\n });\r\n } else {\r\n this.list$?.unsubscribe();\r\n this.select$?.unsubscribe();\r\n this.isnot$?.unsubscribe();\r\n this.list = [];\r\n this.doGrouping();\r\n }\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.list$?.unsubscribe();\r\n this.isnot$?.unsubscribe();\r\n this.select$?.unsubscribe();\r\n }\r\n\r\n onClick() {\r\n this.click.emit();\r\n }\r\n\r\n doClear() {\r\n this.clear.emit();\r\n }\r\n\r\n isover(v: ISelectable) {\r\n this.over = v;\r\n }\r\n\r\n isout() {\r\n this.over = null;\r\n }\r\n\r\n remove(e: Event, v: ISelectable) {\r\n e.stopImmediatePropagation();\r\n const it = this.items();\r\n if (it) {\r\n v.selected = false;\r\n this.list = this.list.filter(r => r.selected == true);\r\n const sn = this.list.filter(r => r.selected == true).map(r => r.id);\r\n this.selectedService.publish(it.key, sn, false);\r\n this.doGrouping();\r\n }\r\n }\r\n\r\n private doGrouping() {\r\n this.grouped = [];\r\n let lastGroup: IGroupedSelectable | undefined = undefined; \r\n const result: IGroupedSelectable[] = [];\r\n\r\n this.list.forEach(v => {\r\n if (v.selected == true) {\r\n if (lastGroup == undefined) {\r\n lastGroup = { group: v.group, items: [v] };\r\n result.push(lastGroup);\r\n return;\r\n }\r\n if (lastGroup.group == v.group) {\r\n lastGroup.items.push(v);\r\n return;\r\n }\r\n\r\n lastGroup = { group: v.group, items: [v] };\r\n result.push(lastGroup);\r\n }\r\n });\r\n this.grouped = result;\r\n }\r\n}\r\n","@if (!onlyshowselected() || list.length > 0) {\r\n <div class=\"line\" (click)=\"onClick()\">\r\n @if (icon() != undefined){\r\n <div class=\"ic\">\r\n @let bad = badget() ?? 0;\r\n @if ( bad == 0) {<mat-icon fontSet=\"material-symbols-outlined\">{{ icon() }}</mat-icon>}\r\n @if (bad > 0) {<mat-icon fontSet=\"material-symbols-outlined\" [matBadge]=\"badget()\" aria-hidden=\"false\">{{ icon()\r\n }}</mat-icon>}\r\n </div>}\r\n @if (label() != undefined){<div class=\"lab\">{{ label() }}</div>}\r\n <div class=\"con\">\r\n <ng-content></ng-content>\r\n @if (list.length > 0) {\r\n @for(gr of grouped; track gr) {\r\n @if (gr.group != undefined && gr.group != '') {\r\n <div class=\"selected-item\"><b>{{ gr.group }}</b></div>\r\n }\r\n @for(li of gr.items; track li) {\r\n <div class=\"selected-item\" (mouseover)=\"isover(li)\" (mouseleave)=\"isout()\">\r\n <div class=\"selected-item-name\">{{ li.name }}</div>\r\n @if (over == li){<div class=\"selected-item-tool\" title=\"Fjern fra valgt listen\"\r\n (click)=\"remove($event, li)\"><mat-icon fontSet=\"material-symbols-outlined\"\r\n style=\"color: gray; font-size: small; height: 16px\">delete</mat-icon></div>}\r\n </div>\r\n }\r\n }\r\n }\r\n </div>\r\n </div>\r\n }","export class XrmuiPanel {\r\n orientation: 'horizontal' | 'vertical' = 'horizontal';\r\n top: string = '';\r\n bottom: string = '';\r\n height: string = '';\r\n left: string = '';\r\n right: string = '';\r\n width: string = '';\r\n style: string = '';\r\n resizeStyle: string = '';\r\n dyn: boolean = false;\r\n index: number = 0;\r\n private initialWidth: number = 0;\r\n private initialHeight: number = 0;\r\n\r\n render(isresize: boolean = false) {\r\n this.style = '';\r\n this.add('top', this.top);\r\n this.add('bottom', this.bottom);\r\n this.add('height', this.height);\r\n this.add('left', this.left);\r\n this.add('right', this.right);\r\n this.add('width', this.width);\r\n\r\n if (!isresize && this.orientation == 'vertical') {\r\n this.resizeStyle = 'left: ' + this.width;\r\n this.initialWidth = Number(this.width.replace('px',''));\r\n }\r\n\r\n if (!isresize && this.orientation == 'horizontal') {\r\n this.resizeStyle = 'top: ' + this.height;\r\n this.initialHeight = Number(this.height.replace('px',''));\r\n }\r\n }\r\n\r\n private add(s: string, v: string) {\r\n if (v != '') {\r\n if (this.style.length > 0) {\r\n this.style += \";\";\r\n }\r\n this.style += s + \": \" + v;\r\n }\r\n }\r\n\r\n moveTo(pixel: number, next: XrmuiPanel) {\r\n\r\n if (this.orientation == 'vertical') {\r\n // vertical increase/decrease width on current\r\n // vertical increase/decrease left on next\r\n const newWidth = this.initialWidth + pixel;\r\n this.width = newWidth + 'px';\r\n next.left = newWidth + 'px';\r\n this.render(true);\r\n next.render(true);\r\n }\r\n\r\n if (this.orientation == 'horizontal') {\r\n const newHeight = this.initialHeight + pixel;\r\n this.height = newHeight + 'px';\r\n next.top = newHeight + 'px';\r\n this.render(true);\r\n next.render(true);\r\n }\r\n }\r\n\r\n endResize() {\r\n if (this.orientation == 'vertical') {\r\n this.initialWidth = Number(this.width.replace('px',''));\r\n }\r\n\r\n if (this.orientation == 'horizontal') {\r\n this.initialHeight = Number(this.height.replace('px',''));\r\n }\r\n }\r\n}\r\n","import { CdkDrag } from '@angular/cdk/drag-drop';\r\nimport { NgClass } from '@angular/common';\r\nimport { AfterViewInit, Component, effect, ElementRef, inject, input, OnDestroy, signal } from '@angular/core';\r\nimport { XrmuiPanel } from '../models/xrmuipanel.model';\r\nimport { IDistance } from '../api/idistance.interface';\r\n\r\n@Component({\r\n selector: 'xrmui-layout',\r\n templateUrl: './layout.xrmui.html',\r\n styleUrl: './layout.xrmui.scss',\r\n imports: [CdkDrag,NgClass]\r\n})\r\nexport class XrmuiLayout implements AfterViewInit, OnDestroy {\r\n\r\n _panels = input<string>('', { alias: 'panels' });\r\n _orientation = input<'horizontal' | 'vertical'>('horizontal', {alias: 'orientation'});\r\n _resizeable = input<boolean>(false, { alias:'resizeable' });\r\n\r\n panels = signal<string>('');\r\n orientation = signal<'horizontal' | 'vertical'>('horizontal');\r\n resizeable = signal<boolean>(false);\r\n\r\n\r\n private totalHeight: number = 0;\r\n private totalWidth: number = 0;\r\n\r\n private unit: 'px' | '%' = 'px';\r\n\r\n private panellist$ = signal<XrmuiPanel[]>([]);\r\n panellist = this.panellist$.asReadonly();\r\n\r\n private element: ElementRef = inject(ElementRef);\r\n \r\n constructor() {\r\n effect(() => {\r\n this.panels.set(this._panels());\r\n this.orientation.set(this._orientation());\r\n this.resizeable.set(this._resizeable());\r\n })\r\n }\r\n\r\n private resizeObserver?: ResizeObserver;\r\n\r\n ngAfterViewInit(): void {\r\n this.resizeObserver = new ResizeObserver(entries => {\r\n const width = entries[0].contentRect.width;\r\n \r\n if (width > 0) {\r\n this.render();\r\n }\r\n });\r\n \r\n this.resizeObserver.observe(this.element.nativeElement); \r\n}\r\n\r\n ngOnDestroy(): void {\r\n this.resizeObserver?.disconnect();\r\n \r\n }\r\n \r\n private render(): void {\r\n this.totalWidth = this.element.nativeElement.offsetWidth;\r\n this.totalHeight = this.element.nativeElement.clientHeight;\r\n\r\n const nextpanellist: XrmuiPanel[] = [];\r\n\r\n // If panels are resizeable, we will work in px only\r\n if (this.resizeable() && this.panels() != null && this.panels().length > 1) {\r\n const ps: string[] = [];\r\n let used = 0;\r\n this.panels().split(',').forEach(r => {\r\n if (r == '?') {\r\n ps.push(r);\r\n return;\r\n }\r\n\r\n if (r.indexOf('px') >= 0) {\r\n used += this.sizeToNumber(r);\r\n ps.push(r);\r\n return;\r\n }\r\n const pct = this.sizeToNumber(r);\r\n if (this.orientation() == 'vertical') {\r\n const next = Math.round(this.totalWidth * pct / 100);\r\n used += next;\r\n ps.push(next.toString() + 'px');\r\n } else {\r\n const next = Math.round(this.totalHeight * pct / 100);\r\n used += next;\r\n ps.push(next.toString() + 'px');\r\n }\r\n });\r\n\r\n let left = this.totalHeight - used;\r\n if (this.orientation() == 'vertical') {\r\n left = this.totalWidth - used;\r\n }\r\n\r\n var freeIndex = ps.indexOf('?');\r\n if (freeIndex >= 0 && freeIndex < (ps.length - 1)) {\r\n ps[freeIndex] = left.toString() + 'px';\r\n ps[ps.length - 1] = '?';\r\n }\r\n\r\n this.panels.set(ps.join(','));\r\n }\r\n\r\n if (this.panels().length > 0) {\r\n var numbers = this.getNumbers();\r\n var countOpen = numbers.filter(r => r == -1).length;\r\n\r\n if (numbers.length > 5) {\r\n throw new Error(\"A maximum of 5 containers is supported\");\r\n }\r\n\r\n var bind: 'top' | 'bottom' = 'top';\r\n var currentcursor: number = 0;\r\n\r\n if (countOpen > 1) {\r\n throw new Error('Only one open container is supported');\r\n }\r\n\r\n for (var i=0;i<numbers.length;i++) {\r\n var num = numbers[i];\r\n var next = new XrmuiPanel();\r\n next.index = i;\r\n next.orientation = this.orientation();\r\n\r\n if (num > 0 && bind == 'top') {\r\n\r\n if (this.orientation() == 'horizontal') {\r\n next.top = currentcursor.toString() + this.toUnit(currentcursor);\r\n next.height = num.toString() + this.unit;\r\n } else {\r\n next.left = currentcursor.toString() + this.toUnit(currentcursor);\r\n next.width = num.toString() + this.unit;\r\n }\r\n currentcursor += num;\r\n nextpanellist.push(next);\r\n continue;\r\n }\r\n\r\n if (num == -1) {\r\n var sum = this.sumAfter(numbers, i);\r\n if (this.orientation() == 'horizontal') {\r\n next.top = currentcursor.toString() + this.toUnit(currentcursor);\r\n next.bottom = sum.toString() + this.toUnit(sum);\r\n } else {\r\n next.left = currentcursor.toString() + this.toUnit(currentcursor);\r\n next.right = sum.toString() + this.toUnit(sum);\r\n }\r\n next.dyn = true;\r\n nextpanellist.push(next);\r\n bind = 'bottom';\r\n continue;\r\n }\r\n\r\n if (num >= 0 && bind == 'bottom') {\r\n var sum = this.sumAfter(numbers,i);\r\n if (this.orientation() == 'horizontal') {\r\n next.bottom = sum.toString() + this.toUnit(sum);\r\n next.height = num.toString() + this.unit;\r\n } else {\r\n next.right = sum.toString() + this.toUnit(sum);\r\n next.width = num.toString() + this.unit;\r\n }\r\n nextpanellist.push(next);\r\n continue;\r\n }\r\n throw new Error(\"Unexpected handle of elements\");\r\n }\r\n\r\n nextpanellist.forEach(p => p.render());\r\n this.panellist$.set(nextpanellist);\r\n }\r\n }\r\n\r\n resize(e: any, panel: XrmuiPanel) {\r\n const d = e['distance'] as IDistance;\r\n if (panel.orientation == 'vertical') \r\n {\r\n panel.moveTo(d.x, this.panellist$()[panel.index + 1]);\r\n }\r\n\r\n if (panel.orientation == 'horizontal') {\r\n panel.moveTo(d.y, this.panellist$()[panel.index + 1]);\r\n }\r\n }\r\n\r\n drop(e: any, panel: XrmuiPanel) {\r\n panel.endResize();\r\n }\r\n\r\n private toUnit(n: number): string {\r\n if (n > 0) {\r\n return this.unit;\r\n }\r\n return '';\r\n }\r\n\r\n private getNumbers(): number[] {\r\n this.unit = 'px';\r\n var result = [] as number[];\r\n if (this.panels().length > 0) {\r\n var unitAssigned = false;\r\n this.panels().split(',').forEach(r => {\r\n if (r.indexOf('px') >= 0) {\r\n if (unitAssigned && this.unit != 'px') {\r\n throw new Error(\"unit can only be assigned once and must be consistent. Unit already set to \" + this.unit);\r\n }\r\n this.unit = 'px';\r\n unitAssigned = true;\r\n }\r\n\r\n if (r.indexOf('%') >= 0) {\r\n if (unitAssigned && this.unit != '%') {\r\n throw new Error(\"unit can only be assigned once and must be consistent. Unit already set to \" + this.unit);\r\n }\r\n this.unit = '%';\r\n unitAssigned = true;\r\n }\r\n if (r == '?') {\r\n result.push(-1);\r\n } else {\r\n result.push(this.sizeToNumber(r));\r\n }\r\n });\r\n }\r\n return result;\r\n }\r\n\r\n private sizeToNumber(r: string) {\r\n return Number(r.replace('px','').replace('%',''));\r\n }\r\n\r\n\r\n private sumAfter(numbers: number[], index: number): number {\r\n var result = 0;\r\n for (var i=index+1;i<numbers.length;i++) {\r\n result += numbers[i];\r\n }\r\n return result;\r\n }\r\n}\r\n","@if (panellist().length >= 1) {\r\n <div [style]=\"panellist()[0].style\" [ngClass]=\"{ dynamics: panellist()[0].dyn, horizontal: orientation() == 'horizontal', vertical: orientation() == 'vertical'}\">\r\n <ng-content select=\"[C1]\"></ng-content>\r\n </div>\r\n\r\n @if (panellist().length > 1 && resizeable()) {\r\n <div \r\n [style]=\"panellist()[0].resizeStyle\" \r\n class=\"resizer\" \r\n cdkDrag \r\n [cdkDragLockAxis]=\"orientation() == 'horizontal' ? 'y' : 'x'\" \r\n (cdkDragMoved)=\"resize($event, panellist()[0])\"\r\n (cdkDragEnded)=\"drop($event, panellist()[0])\"\r\n [ngClass]=\"{ horizontal: orientation() == 'horizontal', vertical: orientation() == 'vertical'}\"></div>\r\n }\r\n}\r\n@if (panellist().length >= 2) {\r\n <div [style]=\"panellist()[1].style\" [ngClass]=\"{ dynamics: panellist()[1].dyn, horizontal: orientation() == 'horizontal', vertical: orientation() == 'vertical'}\"><ng-content select=\"[C2]\"></ng-content></div>\r\n}\r\n@if (panellist().length >= 3) {\r\n <div [style]=\"panellist()[2].style\" [ngClass]=\"{ dynamics: panellist()[2].dyn, horizontal: orientation() == 'horizontal', vertical: orientation() == 'vertical'}\"><ng-content select=\"[C3]\"></ng-content></div>\r\n}\r\n@if (panellist().length >= 4) {\r\n <div [style]=\"panellist()[3].style\" [ngClass]=\"{ dynamics: panellist()[3].dyn, horizontal: orientation() == 'horizontal', vertical: orientation() == 'vertical'}\"><ng-content select=\"[C4]\"></ng-content></div>\r\n}\r\n@if (panellist().length == 5) {\r\n <div [style]=\"panellist()[4].style\" [ngClass]=\"{ dynamics: panellist()[4].dyn, horizontal: orientation() == 'horizontal', vertical: orientation() == 'vertical'}\"><ng-content select=\"[C5]\"></ng-content></div>\r\n}","import { Component } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'xrmui-panel',\r\n templateUrl: './panel.xrmui.html',\r\n styleUrl: './panel.xrmui.scss',\r\n imports: []\r\n})\r\nexport class XrmuiPanel {\r\n constructor() {\r\n }\r\n}\r\n","<ng-content></ng-content>","import { NgClass } from '@angular/common';\r\nimport { AfterContentInit, AfterViewInit, Component, computed, effect, ElementRef, inject, input, signal } from '@angular/core';\r\nimport { MatIcon } from '@angular/material/icon';\r\n\r\n@Component({\r\n selector: 'xrmui-icon',\r\n templateUrl: './icon.xrmui.html',\r\n styleUrl: './icon.xrmui.scss',\r\n imports: [NgClass,MatIcon]\r\n})\r\nexport class XrmuiIcon implements AfterContentInit {\r\n\r\n private host: ElementRef = inject(ElementRef);\r\n _icon = input<string>('', { alias: 'icon' });\r\n disabled = input<boolean>(false);\r\n type = input<'mat' | 'fa'>('mat');\r\n\r\n icon = signal<string>('');\r\n\r\n classes = computed(() => {\r\n const i = this.icon();\r\n const d = this.disabled();\r\n const t = this.type();\r\n\r\n if (t == 'mat') {\r\n if (d) return [\"disabled\"];\r\n return [];\r\n }\r\n\r\n if (d) {\r\n return ['fa',i,'disabled'];\r\n }\r\n return ['fa',i];\r\n });\r\n\r\n constructor() {\r\n effect(() => {\r\n const i = this._icon();\r\n if (i != '') {\r\n this.icon.set(i);\r\n }\r\n });\r\n }\r\n\r\n ngAfterContentInit(): void {\r\n const i = this._icon();\r\n if (i == '') {\r\n const content = this.host.nativeElement.textContent?.trim() ?? '';\r\n if (content != '') {\r\n this.icon.set(content);\r\n }\r\n }\r\n }\r\n\r\n}\r\n","<span style=\"display: none;\"><ng-content></ng-content></span>\r\n@if (icon() != '') {\r\n@if (type() == 'mat') {\r\n <mat-icon [ngClass]=\"classes()\" fontSet=\"material-symbols-outlined\">{{ icon() }}</mat-icon>\r\n}\r\n@if (type() == 'fa') {\r\n <i [ngClass]=\"classes()\"></i>\r\n}\r\n}","import { NgModule } from '@angular/core';\r\nimport { XrmuiIcon, XrmuiInfo, XrmuiPanel } from 'xrmui';\r\nimport { XrmuiLayout } from './layout/layout.xrmui';\r\n\r\n@NgModule({\r\n imports: [\r\n XrmuiInfo,\r\n XrmuiLayout,\r\n XrmuiPanel,\r\n XrmuiIcon\r\n ],\r\n exports: [\r\n XrmuiInfo,\r\n XrmuiLayout,\r\n XrmuiPanel,\r\n XrmuiIcon\r\n ]\r\n})\r\nexport class BorutoXrmUIModule { }\r\n","/*\r\n * Public API Surface of Old Kipon UI\r\n */\r\n\r\nexport * from './lib/ko/forms/kobuttongroup/kobuttongroup.component';\r\nexport * from './lib/ko/forms/kodecimal.directive';\r\nexport * from './lib/ko/forms/kofocus.directive';\r\n\r\nexport * from './lib/ko/message/koalert/koaleret.component';\r\nexport * from './lib/ko/message/koheader/koheader.component';\r\nexport * from './lib/ko/message/kowrite.directive';\r\n\r\nexport * from './lib/ko/models/navigation.interface';\r\n\r\nexport * from './lib/ko/navigation/koleftmenu/koleftmenu.component';\r\nexport * from './lib/ko/navigation/kotopmenu/kotopmenu.component';\r\nexport * from './lib/ko/navigation/koover.directive';\r\n\r\nexport * from './lib/ko/panels/koexpansionpanel/koexpansionpanel.component';\r\nexport * from './lib/ko/panels/kohorizontalscroll/kohorizontalscroll.component';\r\nexport * from './lib/ko/panels/kohorizontalsplit/kohorizontalsplit.component';\r\nexport * from './lib/ko/panels/komain/komain.component';\r\nexport * from './lib/ko/panels/kotablepanel/kotablepanel.component';\r\nexport * from './lib/ko/panels/kotitlepanel/kotitlepanel.component';\r\nexport * from './lib/ko/panels/koverticalscroll/koverticalscroll.component';\r\nexport * from './lib/ko/panels/koview/koview.component';\r\nexport * from './lib/ko/panels/koverticalsplit/koverticalsplit.component';\r\n\r\nexport * from './lib/ko/kipon-ui.module';\r\n\r\n/*\r\n * Public API Surface of Xrmui\r\n */\r\n\r\nexport * from './lib/bo/api/imenu.interface';\r\nexport * from './lib/bo/api/iselectable.interface';\r\nexport * from './lib/bo/api/optionsetvalue.interface';\r\nexport * from './lib/bo/api/optionvalue.interface';\r\n\r\nexport * from './lib/bo/info/info.xrmui';\r\nexport * from './lib/bo/layout/layout.xrmui';\r\nexport * from './lib/bo/panel/panel.xrmui'; \r\nexport * from './lib/bo/icon/icon.xrmui';\r\n\r\nexport * from './lib/bo/boruto-xrmui.module';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["KoHorizontalScrollComponent","KoHorizontalSplitComponent","KoMainComponent","KoTitlePanelComponent","KoVerticalScrollComponent","KoVerticalSplitComponent","KoViewComponent","KoExpansionPanelComponent","KoTablePanelComponent","KoButtonGroupComponent","KoDecimalDirective","KoFocusDirective","KoAlertComponent","KoHeaderComponent","KoOverDirective","KoTopMenuComponent","KoLeftMenuComponent","KoWriteDirective","XrmuiPanel","XrmuiInfo","XrmuiIcon"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"boruto-xrmui.mjs","sources":["../../../projects/xrmui/src/lib/ko/forms/kobuttongroup/kobuttongroup.component.ts","../../../projects/xrmui/src/lib/ko/forms/kobuttongroup/kobuttongroup.component.html","../../../projects/xrmui/src/lib/ko/forms/kodecimal.directive.ts","../../../projects/xrmui/src/lib/ko/forms/kofocus.directive.ts","../../../projects/xrmui/src/lib/ko/message/koalert/koaleret.component.ts","../../../projects/xrmui/src/lib/ko/message/koalert/koalert.component.html","../../../projects/xrmui/src/lib/ko/message/koheader/koheader.component.ts","../../../projects/xrmui/src/lib/ko/message/koheader/koheader.component.html","../../../projects/xrmui/src/lib/ko/message/kowrite.directive.ts","../../../projects/xrmui/src/lib/ko/models/navigation.interface.ts","../../../projects/xrmui/src/lib/ko/navigation/koleftmenu/koleftmenu.component.ts","../../../projects/xrmui/src/lib/ko/navigation/koleftmenu/koleftmenu.component.html","../../../projects/xrmui/src/lib/ko/navigation/kotopmenu/kotopmenu.component.ts","../../../projects/xrmui/src/lib/ko/navigation/kotopmenu/kotopmenu.component.html","../../../projects/xrmui/src/lib/ko/navigation/koover.directive.ts","../../../projects/xrmui/src/lib/ko/panels/koexpansionpanel/koexpansionpanel.component.ts","../../../projects/xrmui/src/lib/ko/panels/koexpansionpanel/koexpansionpanel.component.html","../../../projects/xrmui/src/lib/ko/panels/kohorizontalscroll/kohorizontalscroll.component.ts","../../../projects/xrmui/src/lib/ko/panels/kohorizontalscroll/kohorizontalscroll.component.html","../../../projects/xrmui/src/lib/ko/panels/kohorizontalsplit/kohorizontalsplit.component.ts","../../../projects/xrmui/src/lib/ko/panels/kohorizontalsplit/kohorizontalsplit.component.html","../../../projects/xrmui/src/lib/ko/panels/komain/komain.component.ts","../../../projects/xrmui/src/lib/ko/panels/komain/komain.component.html","../../../projects/xrmui/src/lib/ko/panels/kotablepanel/kotablepanel.component.ts","../../../projects/xrmui/src/lib/ko/panels/kotablepanel/kotablepanel.component.html","../../../projects/xrmui/src/lib/ko/panels/kotitlepanel/kotitlepanel.component.ts","../../../projects/xrmui/src/lib/ko/panels/kotitlepanel/kotitlepanel.component.html","../../../projects/xrmui/src/lib/ko/panels/koverticalscroll/koverticalscroll.component.ts","../../../projects/xrmui/src/lib/ko/panels/koverticalscroll/koverticalscroll.component.html","../../../projects/xrmui/src/lib/ko/panels/koview/koview.component.ts","../../../projects/xrmui/src/lib/ko/panels/koview/koview.component.html","../../../projects/xrmui/src/lib/ko/panels/koverticalsplit/koverticalsplit.component.ts","../../../projects/xrmui/src/lib/ko/panels/koverticalsplit/koverticalsplit.component.html","../../../projects/xrmui/src/lib/ko/kipon-ui.module.ts","../../../projects/xrmui/src/lib/bo/services/selected.service.ts","../../../projects/xrmui/src/lib/bo/info/info.xrmui.ts","../../../projects/xrmui/src/lib/bo/info/info.xrmui.html","../../../projects/xrmui/src/lib/bo/models/xrmuipanel.model.ts","../../../projects/xrmui/src/lib/bo/layout/layout.xrmui.ts","../../../projects/xrmui/src/lib/bo/layout/layout.xrmui.html","../../../projects/xrmui/src/lib/bo/panel/panel.xrmui.ts","../../../projects/xrmui/src/lib/bo/panel/panel.xrmui.html","../../../projects/xrmui/src/lib/bo/icon/icon.xrmui.ts","../../../projects/xrmui/src/lib/bo/icon/icon.xrmui.html","../../../projects/xrmui/src/lib/bo/boruto-xrmui.module.ts","../../../projects/xrmui/src/public-api.ts","../../../projects/xrmui/src/boruto-xrmui.ts"],"sourcesContent":["import { Component, ViewEncapsulation } from '@angular/core';\r\n\r\n\r\n@Component({\r\n selector: 'ko-button-group',\r\n templateUrl: './kobuttongroup.component.html',\r\n styleUrls: ['./kobuttongroup.component.scss'],\r\n encapsulation: ViewEncapsulation.None\r\n})\r\n\r\nexport class KoButtonGroupComponent {\r\n constructor() {\r\n }\r\n}\r\n","<ng-content></ng-content>","import { Directive, ElementRef, HostListener, input, Output, EventEmitter, SimpleChanges, output, effect } from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[ko-decimal]'\r\n})\r\nexport class KoDecimalDirective {\r\n constructor(private el: ElementRef) {\r\n effect(() => {\r\n const align = this.align();\r\n if (this.el.nativeElement) {\r\n this.el.nativeElement.style['text-align'] = this.align();\r\n }\r\n });\r\n\r\n effect(() => {\r\n const v = this.value();\r\n this.setValueString();\r\n })\r\n }\r\n\r\n\r\n decimals = input<number>(2, { alias: 'ko-decimals' });\r\n value = input<number | null>(null, { alias: 'ko-value' });\r\n valueChanged = output<number | null>({ alias: 'ko-valueChange' });\r\n align = input<string>('right');\r\n\r\n controlDown: boolean = false;\r\n syncThread!: any;\r\n\r\n @HostListener('keydown', ['$event']) onKeydown($event: KeyboardEvent) {\r\n switch ($event.key) {\r\n case 'Backspace':\r\n case 'Tab':\r\n case 'ArrowLeft':\r\n case 'ArrowRight':\r\n case 'Delete':\r\n case '0':\r\n case '1':\r\n case '2':\r\n case '3':\r\n case '4':\r\n case '5':\r\n case '6':\r\n case '7':\r\n case '8':\r\n case '9':\r\n case '-': {\r\n this.bindValueBack();\r\n return true;\r\n }\r\n case ',': {\r\n if (this.decimals() == 0) {\r\n return false;\r\n }\r\n this.bindValueBack();\r\n return true;\r\n }\r\n case 'Control': {\r\n this.controlDown = true;\r\n this.bindValueBack();\r\n return true;\r\n }\r\n case 'c':\r\n case 'C':\r\n case 'v':\r\n case 'V': {\r\n if (this.controlDown == true) {\r\n this.bindValueBack();\r\n return true;\r\n }\r\n $event.stopPropagation();\r\n return false;\r\n }\r\n default: {\r\n $event.stopPropagation();\r\n return false;\r\n }\r\n }\r\n }\r\n\r\n @HostListener('blur') onBlur() {\r\n if (this.syncThread != null) clearTimeout(this.syncThread);\r\n this.syncThread = null;\r\n this.doBindValueBack();\r\n this.setValueString();\r\n }\r\n\r\n private setValueString(): void {\r\n if (this.el.nativeElement != null) {\r\n const v = this.value();\r\n if (v != null) {\r\n this.el.nativeElement.value = this.numberToString(v, this.decimals());\r\n } else {\r\n this.el.nativeElement.value = \"\";\r\n }\r\n }\r\n }\r\n\r\n private bindValueBack(): void;\r\n private bindValueBack(timeout: number): void;\r\n private bindValueBack(timeout: number = 3000): void {\r\n if (this.syncThread != null) clearTimeout(this.syncThread);\r\n this.syncThread = setTimeout(() => {\r\n this.syncThread = null;\r\n this.doBindValueBack();\r\n }, timeout);\r\n }\r\n\r\n private doBindValueBack(): void {\r\n if (this.el.nativeElement != null) {\r\n let v = this.el.nativeElement.value;\r\n if (v == null || v == '') {\r\n this.valueChanged.emit(null);\r\n return;\r\n } else {\r\n this.valueChanged.emit(Number(v.replace(',','.')))\r\n }\r\n }\r\n }\r\n\r\n private numberToString(value: number, decimals: number): string {\r\n if (value == null) {\r\n return '';\r\n }\r\n\r\n if (decimals == null) {\r\n return value.toString().replace('.', ',');\r\n }\r\n\r\n let result = value.toString().replace('.', ',');\r\n if (decimals <= 0) {\r\n var split = result.split(',');\r\n if (split.length == 2 && Number(split[1]) > 0) {\r\n return Math.round(value).toString().replace(\".\", \",\").split(',')[0];\r\n }\r\n return result.split(',')[0];\r\n }\r\n\r\n if (result.indexOf(',') < 0) {\r\n result += ',0';\r\n }\r\n\r\n let decimalPart = result.split(',')[1];\r\n if (decimalPart.length == decimals) {\r\n return result;\r\n }\r\n\r\n if (decimalPart.length <= decimals) {\r\n return result.split(',')[0] + ',' + String(decimalPart + '00000000000000000' + decimalPart).substring(0, decimals);\r\n }\r\n\r\n var round = Number('1' + String('00000000000000000').slice((-1) * decimals));\r\n\r\n var roundedValue = Math.round(value * round) / round;\r\n\r\n return this.numberToString(roundedValue, decimals);\r\n }\r\n\r\n}\r\n","import { Directive, ElementRef, input, output, effect, inject } from '@angular/core';\r\n\r\n@Directive({ selector: '[ko-focus]' })\r\nexport class KoFocusDirective {\r\n\r\nprivate hostElement: ElementRef = inject(ElementRef);\r\n\r\n focus = input<boolean>(false, { alias: 'ko-focus' });\r\n focusChange = output<boolean>({ alias: 'ko-focusChange' });\r\n\r\n constructor() { \r\n effect(() => {\r\n const isFocused = this.focus();\r\n if (isFocused) {\r\n setTimeout(() => {\r\n this.hostElement.nativeElement.focus();\r\n this.focusChange.emit(false);\r\n },10);\r\n }\r\n })\r\n }\r\n}\r\n","import { NgClass } from '@angular/common';\r\nimport { Component, Input, ViewEncapsulation } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'ko-alert',\r\n templateUrl: './koalert.component.html',\r\n styleUrls: ['./koalert.component.scss'],\r\n imports:[NgClass],\r\n encapsulation: ViewEncapsulation.None\r\n})\r\n\r\nexport class KoAlertComponent {\r\n\r\n @Input('align') align: string = 'left';\r\n constructor() {\r\n }\r\n}\r\n","<div [ngClass]=\"align\"><ng-content></ng-content></div>\r\n","import { NgClass } from '@angular/common';\r\nimport { Component, input, ViewEncapsulation } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'ko-header',\r\n templateUrl: './koheader.component.html',\r\n styleUrls: ['./koheader.component.scss'],\r\n imports:[NgClass],\r\n encapsulation: ViewEncapsulation.None\r\n})\r\n\r\nexport class KoHeaderComponent {\r\n\r\n align = input<string>('left');\r\n\r\n}\r\n","<div [ngClass]=\"align()\"><ng-content></ng-content></div>\r\n","import { Directive, ElementRef, HostListener, input, AfterViewInit, inject, effect } from '@angular/core';\r\n\r\n@Directive({ selector: '[ko-write]' })\r\nexport class KoWriteDirective {\r\n\r\n direction = input<string>('up', { alias: 'ko-write' });\r\n private hostElement: ElementRef = inject(ElementRef);\r\n\r\n constructor() { \r\n effect(() => {\r\n const dir = this.direction();\r\n this.render();\r\n });\r\n }\r\n\r\n\r\n\r\n\r\n private render(): void {\r\n var host = this.hostElement.nativeElement as HTMLElement;\r\n if (host.parentElement) {\r\n var parent = host.parentElement as HTMLElement;\r\n\r\n parent.style.overflow = \"hidden\"; \r\n\r\n var h = parent.offsetHeight;\r\n var w = parent.offsetWidth;\r\n\r\n\r\n if (h && w) {\r\n host.style.width = h.toString() + \"px\";\r\n host.style.height = w.toString() + \"px\";\r\n host.style.lineHeight = w.toString() + \"px\";\r\n host.style.textAlign = \"center\";\r\n host.style.position = \"relative\";\r\n host.style.transformOrigin = \"0% 0%\";\r\n host.style.display = \"inline-block\";\r\n\r\n if (this.direction() == \"up\") {\r\n host.style.transform = \"rotate(-90deg)\";\r\n host.style.top = h.toString() + \"px\";\r\n } else {\r\n host.style.transform = \"rotate(90deg)\";\r\n host.style.left = w.toString() + \"px\";\r\n }\r\n }\r\n }\r\n }\r\n}\r\n","\r\nexport interface KoNavigation {\r\n id: string;\r\n title: string | null;\r\n disabled: boolean;\r\n click: any;\r\n over: boolean | null;\r\n cssClass: string | null;\r\n imgUrl: string | null;\r\n }\r\n \r\n export class KoDivider implements KoNavigation {\r\n id: string;\r\n title: string | null;\r\n disabled: boolean;\r\n click: any = null;\r\n over: boolean | null = null;\r\n cssClass: string | null = null;\r\n imgUrl: string | null = null;\r\n \r\n constructor() {\r\n this.id = \"##divider##\";\r\n this.title = \"\";\r\n this.disabled = true;\r\n }\r\n }\r\n \r\n export class KoNavigationByCssClass implements KoNavigation {\r\n id: string;\r\n title: string | null = null;\r\n disabled: boolean;\r\n cssClass: string;\r\n click: any;\r\n over: boolean | null = null;\r\n imgUrl: string | null = null;\r\n \r\n constructor(id: string, cssClass: string)\r\n constructor(id: string, cssClass: string, disabled: boolean)\r\n constructor(id: string, cssClass: string, disabled: boolean, title: string)\r\n constructor(id: string, cssClass: string, disabled: boolean, title: string, click: any)\r\n constructor(id: string, cssClass: string, disabled: boolean = false, title: string | null = null, click: any = null ) {\r\n this.id = id;\r\n this.title = title;\r\n this.disabled = disabled;\r\n this.cssClass = cssClass;\r\n this.click = click;\r\n }\r\n }\r\n \r\n export class KoNavigationByImageUrl implements KoNavigation {\r\n id: string;\r\n title: string | null = null;\r\n disabled: boolean;\r\n imgUrl: string;\r\n click: any;\r\n over: boolean | null = null;\r\n cssClass: string | null = null;\r\n \r\n constructor(id: string, imgUrl: string)\r\n constructor(id: string, imgUrl: string, disabled: boolean)\r\n constructor(id: string, imgUrl: string, disabled: boolean, title: string)\r\n constructor(id: string, imgUrl: string, disabled: boolean, title: string, click: any)\r\n constructor(id: string, imgUrl: string, disabled: boolean = false, title: string | null = null, click: any = null) {\r\n this.id = id;\r\n this.title = null;\r\n this.disabled = disabled;\r\n this.imgUrl = imgUrl;\r\n this.click = null;\r\n }\r\n }\r\n ","import { Component, input, output, ElementRef, AfterViewInit, inject, ViewEncapsulation, signal } from '@angular/core';\r\n\r\nimport { KoDivider, KoNavigation, KoNavigationByCssClass, KoNavigationByImageUrl } from '../../models/navigation.interface';\r\nimport { NgClass } from '@angular/common';\r\n\r\n@Component({\r\n selector: 'ko-left-menu',\r\n templateUrl: './koleftmenu.component.html',\r\n styleUrls: ['./koleftmenu.component.scss'],\r\n imports: [NgClass],\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class KoLeftMenuComponent implements AfterViewInit {\r\n private er: ElementRef = inject(ElementRef);\r\n\r\n items = input<(KoNavigation)[]>([]);\r\n current = input<string | null>(null);\r\n currentChange = output<string | null>();\r\n\r\n private itemheight$ = signal<string>('');\r\n over = signal<KoNavigation | null>(null);\r\n\r\n constructor() {\r\n }\r\n\r\n\r\n itemheight(v: KoNavigation) {\r\n if (v.id == \"##divider##\") {\r\n return '2px';\r\n }\r\n return this.itemheight$();\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n setTimeout(() => {\r\n this.itemheight$.set( (this.er.nativeElement.offsetWidth - 40).toString() + \"px\");\r\n }, 1);\r\n }\r\n\r\n setCurrent(item: KoNavigation): void {\r\n if (!item.disabled) {\r\n if (item.click == null) {\r\n this.currentChange.emit(item.id);\r\n } else {\r\n item.click();\r\n }\r\n }\r\n }\r\n\r\n overItem(v: KoNavigation | null): void {\r\n if (v != null && !v.disabled) {\r\n this.over.set(v);\r\n }\r\n }\r\n\r\n outItem(): void {\r\n this.over.set(null);\r\n }\r\n}\r\n","@for(item of items(); track item) {\r\n<div\r\n (click)=\"setCurrent(item)\"\r\n class=\"ko-left-menu-item\"\r\n [ngClass]=\"{ current: item.id == current(), disabled: item.disabled == true && item.id != '##divider##', over: item == over(), divider: item.id == '##divider##' }\"\r\n (mouseover)=\"overItem(item)\"\r\n (mouseleave)=\"outItem()\"\r\n [style.height]=\"itemheight(item)\"\r\n >\r\n @if (item.title != null && item.title != '' && item.id != '##divider##' && item.cssClass == null && item.imgUrl == null){<span>{{ item.title }}</span>}\r\n @if (item.cssClass != null && item.cssClass != ''){ <span class=\"byclass\" [ngClass]=\"item.cssClass\" [title]=\"item.title\"></span> }\r\n @if (item.imgUrl != null){<img [src]=\"item.imgUrl\" [alt]=\"item.title\" />}\r\n</div>\r\n}\r\n<ng-content></ng-content>\r\n","import { Component, input, output, signal, inject, ElementRef, AfterViewInit, ViewEncapsulation } from '@angular/core';\r\n\r\nimport { KoNavigation } from '../../models/navigation.interface';\r\nimport { NgClass } from '@angular/common';\r\n\r\n@Component({\r\n selector: 'ko-top-menu',\r\n templateUrl: './kotopmenu.component.html',\r\n styleUrls: ['./kotopmenu.component.scss'],\r\n imports: [NgClass],\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class KoTopMenuComponent implements AfterViewInit {\r\n\r\n private er: ElementRef = inject(ElementRef);\r\n\r\n items = input<(KoNavigation)[]>([]);\r\n current = input<string | null>(null);\r\n currentChange = output<string | null>();\r\n\r\n over = signal<KoNavigation | null>(null);\r\n\r\n topcornerwidth = signal<string>('');\r\n\r\n constructor() {\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n setTimeout(() => {\r\n this.topcornerwidth.set(this.er.nativeElement.offsetHeight.toString() + \"px\");\r\n }, 1);\r\n }\r\n\r\n setCurrent(item: KoNavigation): void {\r\n if (!item.disabled) {\r\n if (item.click == null) {\r\n this.currentChange.emit(item.id);\r\n } else {\r\n item.click();\r\n }\r\n }\r\n }\r\n\r\n itemwidth(v: KoNavigation) {\r\n if (v.id == \"##divider##\") {\r\n return '0';\r\n }\r\n return this.topcornerwidth();\r\n }\r\n\r\n\r\n overItem(v: KoNavigation | null): void {\r\n if (v != null && !v.disabled) {\r\n this.over.set(v);\r\n }\r\n }\r\n\r\n outItem(): void {\r\n this.over.set(null);\r\n }\r\n}\r\n","<div class=\"ko-top-menu-corner\" [style.width]=\"topcornerwidth()\"></div>\r\n@for (item of items(); track item) {\r\n<div (click)=\"setCurrent(item)\"\r\n class=\"ko-top-menu-item\"\r\n [ngClass]=\"{ current: item.id == current(), disabled: item.disabled == true && item.id != '##divider##', over: item == over(), divider: item.id == '##divider##' }\"\r\n (mouseover)=\"overItem(item)\"\r\n (mouseleave)=\"outItem()\"\r\n [style.width]=\"itemwidth(item)\">\r\n @if (item.title != null && item.title != '' && item.id != '##divider##' && item.cssClass==null && item.imgUrl==null) {<span>{{ item.title }}</span>}\r\n @if (item.cssClass != null && item.cssClass != ''){<span class=\"byclass\" [ngClass]=\"item.cssClass\" [title]=\"item.title\"></span>}\r\n @if (item.imgUrl != null) {<img [src]=\"item.imgUrl\" [alt]=\"item.title\" />}\r\n</div>\r\n}\r\n<ng-content></ng-content>\r\n","import { Directive, ElementRef, HostListener, input, Output, EventEmitter, SimpleChanges, inject } from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[ko-over]'\r\n})\r\nexport class KoOverDirective {\r\n\r\n private el: ElementRef = inject(ElementRef);\r\n\r\n constructor() {\r\n }\r\n\r\n current = input.required<any>({alias:'ko-over'});\r\n\r\n @HostListener('mouseover', ['$event']) onMouseover($event: MouseEvent) {\r\n const me = this.current();\r\n if (this.current != null) {\r\n me['over'] = true;\r\n }\r\n }\r\n\r\n @HostListener('mouseleave', ['$event']) onMouseleave($event: MouseEvent) {\r\n const me = this.current();\r\n if (this.current != null) {\r\n delete me['over'];\r\n }\r\n }\r\n}\r\n","import { Component, effect, input, output, signal, ViewEncapsulation } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'ko-expansion-panel',\r\n templateUrl: './koexpansionpanel.component.html',\r\n styleUrls: ['./koexpansionpanel.component.scss'],\r\n imports: [],\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class KoExpansionPanelComponent {\r\n\r\n expanded = input<boolean>(false);\r\n expandedChange = output<boolean>();\r\n\r\n isExpanded = signal<boolean>(false);\r\n\r\n constructor() {\r\n effect(() => {\r\n this.isExpanded.set(this.expanded());\r\n });\r\n }\r\n\r\n toggle(): void {\r\n this.isExpanded.set(!this.isExpanded());\r\n this.expandedChange.emit(this.isExpanded());\r\n }\r\n}\r\n","<div class=\"ko-container\">\r\n <div class=\"ko-title\">\r\n <div style=\"position: relative; width: 100%\">\r\n <div style=\"position: absolute; left: -25px; height: 40px; width: 20px; text-align: center; vertical-align: middle; cursor: pointer\" (click)=\"toggle()\">\r\n @if (!isExpanded()){<span class=\"fa fa-angle-up\"></span>}\r\n @if (isExpanded()){<span class=\"fa fa-angle-down\"></span>}\r\n </div>\r\n </div>\r\n <div (click)=\"toggle()\" style=\"cursor: pointer\"><ng-content select=\"[ko-title]\"></ng-content></div>\r\n </div>\r\n @if (isExpanded()) {\r\n <div class=\"ko-body\">\r\n <ng-content select=\"[ko-body]\"></ng-content>\r\n </div>\r\n }\r\n</div>\r\n","import { Component, ViewEncapsulation } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'ko-horizontal-scroll',\r\n templateUrl: './kohorizontalscroll.component.html',\r\n styleUrls: ['./kohorizontalscroll.component.scss'],\r\n imports: [],\r\n encapsulation: ViewEncapsulation.None\r\n \r\n})\r\n\r\nexport class KoHorizontalScrollComponent {\r\n constructor() {\r\n }\r\n}\r\n","<ng-content></ng-content>","import { NgStyle } from '@angular/common';\r\nimport { Component, effect, input, ViewEncapsulation } from '@angular/core';\r\n\r\n\r\n@Component({\r\n selector: 'ko-horizontal-split',\r\n templateUrl: './kohorizontalsplit.component.html',\r\n styleUrls: ['./kohorizontalsplit.component.scss'],\r\n imports: [NgStyle],\r\n encapsulation: ViewEncapsulation.None\r\n})\r\n\r\nexport class KoHorizontalSplitComponent {\r\n\r\n height = input<string>(\"50%\");\r\n fixed = input<'top' | 'bottom'>('top');\r\n\r\n constructor() {\r\n effect(() => {\r\n const h = this.height();\r\n const f = this.fixed();\r\n this.init();\r\n });\r\n }\r\n\r\n topStyle: any;\r\n bottomStyle: any;\r\n\r\n private init(): void {\r\n if (this.fixed() == 'top') {\r\n this.topStyle = {\r\n height: this.height()\r\n };\r\n this.bottomStyle = {\r\n top: this.height()\r\n }\r\n } else {\r\n this.topStyle = {\r\n bottom: this.height()\r\n }\r\n this.bottomStyle = {\r\n height: this.height()\r\n }\r\n }\r\n }\r\n}\r\n","<div class=\"ko-top\" [ngStyle]=\"topStyle\">\r\n <ng-content select=\"[ko-top]\"></ng-content>\r\n</div>\r\n<div class=\"ko-bottom\" [ngStyle]=\"bottomStyle\">\r\n <ng-content select=\"[ko-bottom]\"></ng-content>\r\n</div>\r\n","import { Component, ViewEncapsulation } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'ko-main',\r\n templateUrl: './komain.component.html',\r\n styleUrls: ['./komain.component.scss'],\r\n imports: [],\r\n encapsulation: ViewEncapsulation.None\r\n\r\n\r\n})\r\nexport class KoMainComponent {\r\n constructor() {\r\n }\r\n}\r\n","<ng-content></ng-content>","import { NgStyle } from '@angular/common';\r\nimport { Component, input, ElementRef, ViewChild, ViewEncapsulation, OnChanges, AfterViewInit, ChangeDetectorRef, inject, effect, signal } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'ko-table-panel',\r\n templateUrl: './kotablepanel.component.html',\r\n styleUrls: ['./kotablepanel.component.scss'],\r\n imports: [NgStyle],\r\n encapsulation: ViewEncapsulation.None\r\n\r\n})\r\n\r\nexport class KoTablePanelComponent implements AfterViewInit {\r\n\r\n @ViewChild('tableheader') tableheader!: ElementRef;\r\n @ViewChild('tablebody') tablebody!: ElementRef;\r\n @ViewChild('tablefooter') tablefooter!: ElementRef;\r\n\r\n height = input<string>('40px');\r\n\r\n private cdRef: ChangeDetectorRef = inject(ChangeDetectorRef);\r\n\r\n constructor() {\r\n effect(() => {\r\n const h = this.height();\r\n this.doSetStyle();\r\n\r\n });\r\n }\r\n\r\n\r\n private topHeight!: string;\r\n private fotHeight!: string;\r\n\r\n private hasTop: boolean = true;\r\n private hasFot: boolean = true;\r\n\r\n topStyle = signal<any>({});\r\n bodStyle = signal<any>({});\r\n fotStyle = signal<any>({});\r\n\r\n ngAfterViewInit(): void {\r\n this.hasTop = this.tableheader.nativeElement != null && this.tableheader.nativeElement.children.length > 0;\r\n this.hasFot = this.tablefooter.nativeElement != null && this.tablefooter.nativeElement.children.length > 0;\r\n this.cdRef.detectChanges();\r\n\r\n this.setStyle();\r\n }\r\n\r\n updateScroll() {\r\n const header = this.tableheader.nativeElement as HTMLElement;\r\n const body = this.tablebody.nativeElement as HTMLElement;\r\n const footer = this.tablefooter.nativeElement as HTMLElement;\r\n\r\n var toScroll = this.hasFot ? footer.scrollLeft : body.scrollLeft;\r\n\r\n if (this.hasTop) {\r\n header.scrollLeft = toScroll;\r\n }\r\n\r\n if (this.hasFot) {\r\n footer.scrollLeft = toScroll;\r\n }\r\n\r\n body.scrollLeft = toScroll;\r\n }\r\n\r\n private setStyle(): void {\r\n\r\n var spl = this.height().split(' ');\r\n if (spl.length == 2) {\r\n this.topHeight = spl[0];\r\n this.fotHeight = spl[1];\r\n } else {\r\n this.topHeight = spl[0];\r\n this.fotHeight = spl[0];\r\n }\r\n setTimeout(() => this.doSetStyle(), 10);\r\n }\r\n\r\n private doSetStyle(): void {\r\n if (this.hasTop && this.hasFot) {\r\n this.topStyle.set({\r\n height: this.topHeight,\r\n display: 'block'\r\n });\r\n\r\n this.bodStyle.set({\r\n top: this.topHeight,\r\n bottom: this.fotHeight,\r\n \"overflow-x\": \"hidden\"\r\n });\r\n\r\n this.fotStyle.set({\r\n height: this.fotHeight,\r\n display:' block'\r\n })\r\n return;\r\n }\r\n\r\n if (this.hasTop && !this.hasFot) {\r\n this.topStyle.set({\r\n height: this.topHeight,\r\n display: 'block'\r\n });\r\n\r\n this.bodStyle.set({\r\n top: this.topHeight,\r\n bottom: 0,\r\n \"overflow-x\" : \"auto\"\r\n });\r\n\r\n this.fotStyle.set({\r\n display: 'none'\r\n });\r\n return;\r\n }\r\n\r\n if (!this.hasTop && this.hasFot) {\r\n this.topStyle.set({\r\n display: 'none'\r\n });\r\n\r\n this.bodStyle.set({\r\n top: 0,\r\n bottom: this.fotHeight\r\n });\r\n\r\n this.fotStyle.set({\r\n height: this.fotHeight,\r\n display: 'block'\r\n });\r\n return;\r\n }\r\n\r\n if (!this.hasTop && !this.hasFot) {\r\n this.topStyle.set({\r\n display: 'none'\r\n });\r\n\r\n this.bodStyle.set({\r\n top: 0,\r\n bottom: 0\r\n });\r\n\r\n this.fotStyle.set({\r\n display: 'none'\r\n })\r\n }\r\n }\r\n}\r\n","<div class=\"ko-table\">\r\n <div class=\"ko-table-header\" [ngStyle]=\"topStyle()\" #tableheader>\r\n <ng-content select=\"[ko-table-header]\"></ng-content>\r\n </div>\r\n <div class=\"ko-table-body\" [ngStyle]=\"bodStyle()\" #tablebody (scroll)=\"updateScroll()\">\r\n <ng-content select=\"[ko-table-body]\"></ng-content>\r\n </div>\r\n <div class=\"ko-table-footer\" [ngStyle]=\"fotStyle()\" #tablefooter (scroll)=\"updateScroll()\">\r\n <ng-content select=\"[ko-table-footer]\"></ng-content>\r\n </div>\r\n</div>\r\n","import { Component, ViewEncapsulation } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'ko-title-panel',\r\n templateUrl: './kotitlepanel.component.html',\r\n styleUrls: ['./kotitlepanel.component.scss'],\r\n imports: [],\r\n encapsulation: ViewEncapsulation.None\r\n \r\n})\r\n\r\nexport class KoTitlePanelComponent {\r\n constructor() {\r\n }\r\n}\r\n","<div class=\"ko-container\">\r\n <div class=\"ko-title\">\r\n <ng-content select=\"[ko-title]\"></ng-content>\r\n </div>\r\n <div class=\"ko-body\">\r\n <ng-content select=\"[ko-body]\"></ng-content>\r\n </div>\r\n</div>\r\n","import { Component, ViewEncapsulation } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'ko-vertical-scroll',\r\n templateUrl: './koverticalscroll.component.html',\r\n styleUrls: ['./koverticalscroll.component.scss'],\r\n imports: [],\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class KoVerticalScrollComponent {\r\n constructor() {\r\n }\r\n}\r\n","<ng-content></ng-content>","import { Component, ViewEncapsulation } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'ko-view',\r\n templateUrl: './koview.component.html',\r\n styleUrls: ['./koview.component.scss'],\r\n imports: [],\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class KoViewComponent {\r\n constructor() {\r\n }\r\n}\r\n","<ng-content></ng-content>","import { NgStyle } from '@angular/common';\r\nimport { Component, effect, input, signal, ViewEncapsulation } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'ko-vertical-split',\r\n templateUrl: './koverticalsplit.component.html',\r\n styleUrls: ['./koverticalsplit.component.scss'],\r\n imports: [NgStyle],\r\n encapsulation: ViewEncapsulation.None\r\n\r\n})\r\nexport class KoVerticalSplitComponent {\r\n\r\n width = input<string>('50%');\r\n fixed = input<'left' | 'right'>('left');\r\n\r\n constructor() {\r\n effect(() => {\r\n const w = this.width();\r\n const f = this.fixed();\r\n this.init();\r\n });\r\n }\r\n\r\n leftStyle = signal<any>({});\r\n rightStyle = signal<any>({});\r\n\r\n\r\n private init(): void {\r\n if (this.fixed() == 'left') {\r\n this.leftStyle.set({\r\n width: this.width()\r\n });\r\n\r\n this.rightStyle.set({\r\n left: this.width()\r\n });\r\n } else {\r\n this.leftStyle.set({\r\n right: this.width()\r\n });\r\n this.rightStyle.set({\r\n width: this.width()\r\n });\r\n }\r\n }\r\n}\r\n","<div class=\"ko-left\" [ngStyle]=\"leftStyle()\">\r\n <ng-content select=\"[ko-left]\"></ng-content>\r\n</div>\r\n<div class=\"ko-right\" [ngStyle]=\"rightStyle()\">\r\n <ng-content select=\"[ko-right]\"></ng-content>\r\n</div>\r\n","import { NgModule } from '@angular/core';\r\nimport { KoHorizontalScrollComponent } from './panels/kohorizontalscroll/kohorizontalscroll.component';\r\nimport { KoHorizontalSplitComponent } from './panels/kohorizontalsplit/kohorizontalsplit.component';\r\nimport { KoMainComponent } from './panels/komain/komain.component';\r\nimport { KoTitlePanelComponent } from './panels/kotitlepanel/kotitlepanel.component';\r\nimport { KoVerticalScrollComponent } from './panels/koverticalscroll/koverticalscroll.component';\r\nimport { KoVerticalSplitComponent } from './panels/koverticalsplit/koverticalsplit.component';\r\nimport { KoViewComponent } from './panels/koview/koview.component';\r\nimport { KoExpansionPanelComponent } from './panels/koexpansionpanel/koexpansionpanel.component';\r\nimport { KoTablePanelComponent } from './panels/kotablepanel/kotablepanel.component';\r\nimport { KoButtonGroupComponent } from './forms/kobuttongroup/kobuttongroup.component';\r\nimport { KoDecimalDirective } from './forms/kodecimal.directive';\r\nimport { KoFocusDirective } from './forms/kofocus.directive';\r\nimport { KoAlertComponent } from './message/koalert/koaleret.component';\r\nimport { KoHeaderComponent } from './message/koheader/koheader.component';\r\nimport { KoOverDirective } from './navigation/koover.directive';\r\nimport { KoTopMenuComponent } from './navigation/kotopmenu/kotopmenu.component';\r\nimport { KoLeftMenuComponent } from './navigation/koleftmenu/koleftmenu.component';\r\nimport { KoWriteDirective } from './message/kowrite.directive';\r\n\r\n\r\n@NgModule({\r\n imports: [\r\n KoHorizontalScrollComponent,\r\n KoHorizontalSplitComponent,\r\n KoMainComponent,\r\n KoTitlePanelComponent,\r\n KoVerticalScrollComponent,\r\n KoVerticalSplitComponent,\r\n KoViewComponent,\r\n KoExpansionPanelComponent,\r\n KoTablePanelComponent,\r\n KoButtonGroupComponent,\r\n KoDecimalDirective,\r\n KoFocusDirective,\r\n KoAlertComponent,\r\n KoHeaderComponent,\r\n KoOverDirective,\r\n KoTopMenuComponent,\r\n KoLeftMenuComponent,\r\n KoWriteDirective\r\n ],\r\n exports: [\r\n KoHorizontalScrollComponent,\r\n KoHorizontalSplitComponent,\r\n KoMainComponent,\r\n KoTitlePanelComponent,\r\n KoVerticalScrollComponent,\r\n KoVerticalSplitComponent,\r\n KoViewComponent,\r\n KoExpansionPanelComponent,\r\n KoTablePanelComponent,\r\n KoButtonGroupComponent,\r\n KoDecimalDirective,\r\n KoFocusDirective,\r\n KoAlertComponent,\r\n KoHeaderComponent,\r\n KoOverDirective,\r\n KoTopMenuComponent,\r\n KoLeftMenuComponent,\r\n KoWriteDirective\r\n ]\r\n})\r\nexport class KiponUiModule { }\r\n","import { Injectable, signal, Signal, WritableSignal } from '@angular/core';\r\nimport { BehaviorSubject, Subject } from 'rxjs';\r\nimport { ISelectable, ISelectableService } from '../api/iselectable.interface';\r\n\r\nexport interface SelectedListContainer {\r\n selected: string[],\r\n empty: boolean,\r\n loaded: boolean\r\n}\r\n\r\nexport interface SelectedLists {\r\n [key: string]: BehaviorSubject<SelectedListContainer>\r\n}\r\n\r\nexport interface NotSelectedLists {\r\n [key: string]: BehaviorSubject<boolean>\r\n}\r\n\r\nexport interface LastSelectedItems {\r\n [key: string]: SelectedListContainer;\r\n}\r\n\r\nexport interface ServiceBinds {\r\n [key: string]: ISelectableService;\r\n}\r\n\r\nexport interface Counts {\r\n [key: string]: WritableSignal<number>;\r\n}\r\n\r\n\r\n@Injectable({providedIn:'root'})\r\nexport class SelectedService {\r\n\r\n private selectedItems: SelectedLists = {} as SelectedLists;\r\n private notSelectedItems: NotSelectedLists = {} as NotSelectedLists;\r\n private lastSelectedItems: LastSelectedItems = {} as LastSelectedItems;\r\n private binds: ServiceBinds = {} as ServiceBinds;\r\n private keys: string[] = [];\r\n private nots: string[] = [];\r\n private counts: Counts = {};\r\n\r\n private resetFilter$: Subject<void>;\r\n\r\n constructor() {\r\n this.resetFilter$ = new Subject<void>();\r\n }\r\n\r\n resetAll() {\r\n this.resetFilter$.next();\r\n }\r\n\r\n reset(): Subject<void> {\r\n return this.resetFilter$;\r\n }\r\n\r\n get(key: string): BehaviorSubject<SelectedListContainer> {\r\n if (this.selectedItems[key] != null) {\r\n return this.selectedItems[key];\r\n }\r\n this.selectedItems[key] = new BehaviorSubject<SelectedListContainer>({ selected: [], empty: false, loaded: false });\r\n this.lastSelectedItems[key] = { selected: [], empty: false, loaded: false };\r\n this.keys.push(key);\r\n return this.selectedItems[key];\r\n }\r\n\r\n count(key: string): Signal<number> {\r\n if (this.counts[key] != null) {\r\n return this.counts[key];\r\n }\r\n\r\n const con = this.get(key);\r\n this.counts[key] = signal<number>(con.value.selected.length);\r\n return this.counts[key];\r\n }\r\n\r\n bind(service: ISelectableService): void {\r\n this.binds[service.key] = service;\r\n }\r\n\r\n not(key: string): BehaviorSubject<boolean> {\r\n if (this.notSelectedItems[key] != null) {\r\n return this.notSelectedItems[key];\r\n }\r\n this.notSelectedItems[key] = new BehaviorSubject<boolean>(false);\r\n this.nots.push(key);\r\n return this.notSelectedItems[key];\r\n }\r\n\r\n push(key: string, values: string[]) {\r\n const selector = this.binds[key];\r\n if (selector != null && selector != undefined) {\r\n selector.items().value.forEach(r => {\r\n r.selected = values.find(v => v == r.id) != null;\r\n });\r\n const tobepublished = selector.items().value.filter(r => r.selected == true).map(r => r.id);\r\n this.publish(key, tobepublished, false);\r\n } else {\r\n throw '[' + key + ']' + ' er ikke blevet bundet til service';\r\n }\r\n }\r\n\r\n publish(key: string, values: string[], empty: boolean) {\r\n var beh = this.get(key);\r\n var value = beh.value;\r\n value.selected = values;\r\n value.empty = empty;\r\n\r\n var las = this.lastSelectedItems[key];\r\n\r\n if (!las.loaded || !this.isSame(value, las)) {\r\n las.loaded = true;\r\n las.empty = value.empty;\r\n las.selected = value.selected;\r\n beh.next(value);\r\n }\r\n\r\n if (this.counts[key] != null) {\r\n this.counts[key].set(values.length);\r\n }\r\n }\r\n\r\n silentUnselectAll(items?: BehaviorSubject<ISelectable[]>) {\r\n if (items != undefined) {\r\n items.value.forEach(r => { r.selected = false; });\r\n }\r\n }\r\n\r\n toggleNot(k: string) {\r\n const n = this.not(k);\r\n const next = !n.value;\r\n n.next(next);\r\n }\r\n\r\n clearAllNots() {\r\n this.nots.forEach(n => {\r\n if (this.notSelectedItems[n].value == true) {\r\n this.notSelectedItems[n].next(false);\r\n }\r\n });\r\n }\r\n\r\n private isSame(next: SelectedListContainer,last: SelectedListContainer): boolean {\r\n if (next.empty != last.empty) return false;\r\n if (next.selected.length != last.selected.length) return false;\r\n\r\n for (var i=0;i<next.selected.length;i++) {\r\n if (next.selected[i] != last.selected[i]) {\r\n return false;\r\n }\r\n }\r\n return true;\r\n } \r\n}\r\n","import { NgClass } from '@angular/common';\r\nimport { Component, input, output, OnInit, OnDestroy, inject } from '@angular/core';\r\nimport { MatIcon } from '@angular/material/icon';\r\nimport { Subscription } from 'rxjs';\r\nimport { MatBadge } from '@angular/material/badge';\r\nimport { ISelectable, ISelectableService } from '../api/iselectable.interface';\r\nimport { SelectedService } from '../services/selected.service';\r\n\r\n\r\nexport interface IGroupedSelectable {\r\n group?: string;\r\n items: ISelectable[];\r\n}\r\n\r\n@Component({\r\n selector: 'xrmui-info',\r\n templateUrl: './info.xrmui.html',\r\n styleUrl: './info.xrmui.scss',\r\n imports: [MatIcon,MatBadge]\r\n})\r\nexport class XrmuiInfo implements OnInit, OnDestroy {\r\n\r\n private selectedService: SelectedService = inject(SelectedService);\r\n\r\n label = input<string>();\r\n onlyshowselected = input<boolean>(false);\r\n items = input<ISelectableService>();\r\n icon = input<string>();\r\n click = output<void>();\r\n clear = output<void>();\r\n badget = input<number>();\r\n\r\n list$?: Subscription;\r\n list: ISelectable[] = [];\r\n\r\n select$?: Subscription;\r\n\r\n grouped: IGroupedSelectable[] = [];\r\n\r\n over: ISelectable | null = null;\r\n\r\n isnot: boolean = false;\r\n isnot$?: Subscription;\r\n\r\n constructor() {\r\n }\r\n\r\n ngOnInit() {\r\n const service = this.items();\r\n\r\n if (service != null) {\r\n this.select$ = this.selectedService.get(service.key).subscribe(v => {\r\n this.list = this.list.filter(v => v.selected == true);\r\n });\r\n\r\n this.list$ = service.items().subscribe(r => {\r\n this.list = r.filter(v => v.selected == true);\r\n this.doGrouping();\r\n });\r\n } else {\r\n this.list$?.unsubscribe();\r\n this.select$?.unsubscribe();\r\n this.isnot$?.unsubscribe();\r\n this.list = [];\r\n this.doGrouping();\r\n }\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.list$?.unsubscribe();\r\n this.isnot$?.unsubscribe();\r\n this.select$?.unsubscribe();\r\n }\r\n\r\n onClick() {\r\n this.click.emit();\r\n }\r\n\r\n doClear() {\r\n this.clear.emit();\r\n }\r\n\r\n isover(v: ISelectable) {\r\n this.over = v;\r\n }\r\n\r\n isout() {\r\n this.over = null;\r\n }\r\n\r\n remove(e: Event, v: ISelectable) {\r\n e.stopImmediatePropagation();\r\n const it = this.items();\r\n if (it) {\r\n v.selected = false;\r\n this.list = this.list.filter(r => r.selected == true);\r\n const sn = this.list.filter(r => r.selected == true).map(r => r.id);\r\n this.selectedService.publish(it.key, sn, false);\r\n this.doGrouping();\r\n }\r\n }\r\n\r\n private doGrouping() {\r\n this.grouped = [];\r\n let lastGroup: IGroupedSelectable | undefined = undefined; \r\n const result: IGroupedSelectable[] = [];\r\n\r\n this.list.forEach(v => {\r\n if (v.selected == true) {\r\n if (lastGroup == undefined) {\r\n lastGroup = { group: v.group, items: [v] };\r\n result.push(lastGroup);\r\n return;\r\n }\r\n if (lastGroup.group == v.group) {\r\n lastGroup.items.push(v);\r\n return;\r\n }\r\n\r\n lastGroup = { group: v.group, items: [v] };\r\n result.push(lastGroup);\r\n }\r\n });\r\n this.grouped = result;\r\n }\r\n}\r\n","@if (!onlyshowselected() || list.length > 0) {\r\n <div class=\"line\" (click)=\"onClick()\">\r\n @if (icon() != undefined){\r\n <div class=\"ic\">\r\n @let bad = badget() ?? 0;\r\n @if ( bad == 0) {<mat-icon fontSet=\"material-symbols-outlined\">{{ icon() }}</mat-icon>}\r\n @if (bad > 0) {<mat-icon fontSet=\"material-symbols-outlined\" [matBadge]=\"badget()\" aria-hidden=\"false\">{{ icon()\r\n }}</mat-icon>}\r\n </div>}\r\n @if (label() != undefined){<div class=\"lab\">{{ label() }}</div>}\r\n <div class=\"con\">\r\n <ng-content></ng-content>\r\n @if (list.length > 0) {\r\n @for(gr of grouped; track gr) {\r\n @if (gr.group != undefined && gr.group != '') {\r\n <div class=\"selected-item\"><b>{{ gr.group }}</b></div>\r\n }\r\n @for(li of gr.items; track li) {\r\n <div class=\"selected-item\" (mouseover)=\"isover(li)\" (mouseleave)=\"isout()\">\r\n <div class=\"selected-item-name\">{{ li.name }}</div>\r\n @if (over == li){<div class=\"selected-item-tool\" title=\"Fjern fra valgt listen\"\r\n (click)=\"remove($event, li)\"><mat-icon fontSet=\"material-symbols-outlined\"\r\n style=\"color: gray; font-size: small; height: 16px\">delete</mat-icon></div>}\r\n </div>\r\n }\r\n }\r\n }\r\n </div>\r\n </div>\r\n }","export class XrmuiPanel {\r\n orientation: 'horizontal' | 'vertical' = 'horizontal';\r\n top: string = '';\r\n bottom: string = '';\r\n height: string = '';\r\n left: string = '';\r\n right: string = '';\r\n width: string = '';\r\n style: string = '';\r\n resizeStyle: string = '';\r\n dyn: boolean = false;\r\n index: number = 0;\r\n private initialWidth: number = 0;\r\n private initialHeight: number = 0;\r\n\r\n render(isresize: boolean = false) {\r\n this.style = '';\r\n this.add('top', this.top);\r\n this.add('bottom', this.bottom);\r\n this.add('height', this.height);\r\n this.add('left', this.left);\r\n this.add('right', this.right);\r\n this.add('width', this.width);\r\n\r\n if (!isresize && this.orientation == 'vertical') {\r\n this.resizeStyle = 'left: ' + this.width;\r\n this.initialWidth = Number(this.width.replace('px',''));\r\n }\r\n\r\n if (!isresize && this.orientation == 'horizontal') {\r\n this.resizeStyle = 'top: ' + this.height;\r\n this.initialHeight = Number(this.height.replace('px',''));\r\n }\r\n }\r\n\r\n private add(s: string, v: string) {\r\n if (v != '') {\r\n if (this.style.length > 0) {\r\n this.style += \";\";\r\n }\r\n this.style += s + \": \" + v;\r\n }\r\n }\r\n\r\n moveTo(pixel: number, next: XrmuiPanel) {\r\n\r\n if (this.orientation == 'vertical') {\r\n // vertical increase/decrease width on current\r\n // vertical increase/decrease left on next\r\n const newWidth = this.initialWidth + pixel;\r\n this.width = newWidth + 'px';\r\n next.left = newWidth + 'px';\r\n this.render(true);\r\n next.render(true);\r\n }\r\n\r\n if (this.orientation == 'horizontal') {\r\n const newHeight = this.initialHeight + pixel;\r\n this.height = newHeight + 'px';\r\n next.top = newHeight + 'px';\r\n this.render(true);\r\n next.render(true);\r\n }\r\n }\r\n\r\n endResize() {\r\n if (this.orientation == 'vertical') {\r\n this.initialWidth = Number(this.width.replace('px',''));\r\n }\r\n\r\n if (this.orientation == 'horizontal') {\r\n this.initialHeight = Number(this.height.replace('px',''));\r\n }\r\n }\r\n}\r\n","import { CdkDrag } from '@angular/cdk/drag-drop';\r\nimport { NgClass } from '@angular/common';\r\nimport { AfterViewInit, Component, effect, ElementRef, inject, input, OnDestroy, signal } from '@angular/core';\r\nimport { XrmuiPanel } from '../models/xrmuipanel.model';\r\nimport { IDistance } from '../api/idistance.interface';\r\n\r\n@Component({\r\n selector: 'xrmui-layout',\r\n templateUrl: './layout.xrmui.html',\r\n styleUrl: './layout.xrmui.scss',\r\n imports: [CdkDrag,NgClass]\r\n})\r\nexport class XrmuiLayout implements AfterViewInit, OnDestroy {\r\n\r\n _panels = input<string>('', { alias: 'panels' });\r\n _orientation = input<'horizontal' | 'vertical'>('horizontal', {alias: 'orientation'});\r\n _resizeable = input<boolean>(false, { alias:'resizeable' });\r\n\r\n panels = signal<string>('');\r\n orientation = signal<'horizontal' | 'vertical'>('horizontal');\r\n resizeable = signal<boolean>(false);\r\n\r\n\r\n private totalHeight: number = 0;\r\n private totalWidth: number = 0;\r\n\r\n private unit: 'px' | '%' = 'px';\r\n\r\n private panellist$ = signal<XrmuiPanel[]>([]);\r\n panellist = this.panellist$.asReadonly();\r\n\r\n private element: ElementRef = inject(ElementRef);\r\n \r\n constructor() {\r\n effect(() => {\r\n this.panels.set(this._panels());\r\n this.orientation.set(this._orientation());\r\n this.resizeable.set(this._resizeable());\r\n })\r\n }\r\n\r\n private resizeObserver?: ResizeObserver;\r\n\r\n ngAfterViewInit(): void {\r\n this.resizeObserver = new ResizeObserver(entries => {\r\n const width = entries[0].contentRect.width;\r\n \r\n if (width > 0) {\r\n this.render();\r\n }\r\n });\r\n \r\n this.resizeObserver.observe(this.element.nativeElement); \r\n}\r\n\r\n ngOnDestroy(): void {\r\n this.resizeObserver?.disconnect();\r\n \r\n }\r\n \r\n private render(): void {\r\n this.totalWidth = this.element.nativeElement.offsetWidth;\r\n this.totalHeight = this.element.nativeElement.clientHeight;\r\n\r\n const nextpanellist: XrmuiPanel[] = [];\r\n\r\n // If panels are resizeable, we will work in px only\r\n if (this.resizeable() && this.panels() != null && this.panels().length > 1) {\r\n const ps: string[] = [];\r\n let used = 0;\r\n this.panels().split(',').forEach(r => {\r\n if (r == '?') {\r\n ps.push(r);\r\n return;\r\n }\r\n\r\n if (r.indexOf('px') >= 0) {\r\n used += this.sizeToNumber(r);\r\n ps.push(r);\r\n return;\r\n }\r\n const pct = this.sizeToNumber(r);\r\n if (this.orientation() == 'vertical') {\r\n const next = Math.round(this.totalWidth * pct / 100);\r\n used += next;\r\n ps.push(next.toString() + 'px');\r\n } else {\r\n const next = Math.round(this.totalHeight * pct / 100);\r\n used += next;\r\n ps.push(next.toString() + 'px');\r\n }\r\n });\r\n\r\n let left = this.totalHeight - used;\r\n if (this.orientation() == 'vertical') {\r\n left = this.totalWidth - used;\r\n }\r\n\r\n var freeIndex = ps.indexOf('?');\r\n if (freeIndex >= 0 && freeIndex < (ps.length - 1)) {\r\n ps[freeIndex] = left.toString() + 'px';\r\n ps[ps.length - 1] = '?';\r\n }\r\n\r\n this.panels.set(ps.join(','));\r\n }\r\n\r\n if (this.panels().length > 0) {\r\n var numbers = this.getNumbers();\r\n var countOpen = numbers.filter(r => r == -1).length;\r\n\r\n if (numbers.length > 5) {\r\n throw new Error(\"A maximum of 5 containers is supported\");\r\n }\r\n\r\n var bind: 'top' | 'bottom' = 'top';\r\n var currentcursor: number = 0;\r\n\r\n if (countOpen > 1) {\r\n throw new Error('Only one open container is supported');\r\n }\r\n\r\n for (var i=0;i<numbers.length;i++) {\r\n var num = numbers[i];\r\n var next = new XrmuiPanel();\r\n next.index = i;\r\n next.orientation = this.orientation();\r\n\r\n if (num > 0 && bind == 'top') {\r\n\r\n if (this.orientation() == 'horizontal') {\r\n next.top = currentcursor.toString() + this.toUnit(currentcursor);\r\n next.height = num.toString() + this.unit;\r\n } else {\r\n next.left = currentcursor.toString() + this.toUnit(currentcursor);\r\n next.width = num.toString() + this.unit;\r\n }\r\n currentcursor += num;\r\n nextpanellist.push(next);\r\n continue;\r\n }\r\n\r\n if (num == -1) {\r\n var sum = this.sumAfter(numbers, i);\r\n if (this.orientation() == 'horizontal') {\r\n next.top = currentcursor.toString() + this.toUnit(currentcursor);\r\n next.bottom = sum.toString() + this.toUnit(sum);\r\n } else {\r\n next.left = currentcursor.toString() + this.toUnit(currentcursor);\r\n next.right = sum.toString() + this.toUnit(sum);\r\n }\r\n next.dyn = true;\r\n nextpanellist.push(next);\r\n bind = 'bottom';\r\n continue;\r\n }\r\n\r\n if (num >= 0 && bind == 'bottom') {\r\n var sum = this.sumAfter(numbers,i);\r\n if (this.orientation() == 'horizontal') {\r\n next.bottom = sum.toString() + this.toUnit(sum);\r\n next.height = num.toString() + this.unit;\r\n } else {\r\n next.right = sum.toString() + this.toUnit(sum);\r\n next.width = num.toString() + this.unit;\r\n }\r\n nextpanellist.push(next);\r\n continue;\r\n }\r\n throw new Error(\"Unexpected handle of elements\");\r\n }\r\n\r\n nextpanellist.forEach(p => p.render());\r\n this.panellist$.set(nextpanellist);\r\n }\r\n }\r\n\r\n resize(e: any, panel: XrmuiPanel) {\r\n const d = e['distance'] as IDistance;\r\n if (panel.orientation == 'vertical') \r\n {\r\n panel.moveTo(d.x, this.panellist$()[panel.index + 1]);\r\n }\r\n\r\n if (panel.orientation == 'horizontal') {\r\n panel.moveTo(d.y, this.panellist$()[panel.index + 1]);\r\n }\r\n }\r\n\r\n drop(e: any, panel: XrmuiPanel) {\r\n panel.endResize();\r\n }\r\n\r\n private toUnit(n: number): string {\r\n if (n > 0) {\r\n return this.unit;\r\n }\r\n return '';\r\n }\r\n\r\n private getNumbers(): number[] {\r\n this.unit = 'px';\r\n var result = [] as number[];\r\n if (this.panels().length > 0) {\r\n var unitAssigned = false;\r\n this.panels().split(',').forEach(r => {\r\n if (r.indexOf('px') >= 0) {\r\n if (unitAssigned && this.unit != 'px') {\r\n throw new Error(\"unit can only be assigned once and must be consistent. Unit already set to \" + this.unit);\r\n }\r\n this.unit = 'px';\r\n unitAssigned = true;\r\n }\r\n\r\n if (r.indexOf('%') >= 0) {\r\n if (unitAssigned && this.unit != '%') {\r\n throw new Error(\"unit can only be assigned once and must be consistent. Unit already set to \" + this.unit);\r\n }\r\n this.unit = '%';\r\n unitAssigned = true;\r\n }\r\n if (r == '?') {\r\n result.push(-1);\r\n } else {\r\n result.push(this.sizeToNumber(r));\r\n }\r\n });\r\n }\r\n return result;\r\n }\r\n\r\n private sizeToNumber(r: string) {\r\n return Number(r.replace('px','').replace('%',''));\r\n }\r\n\r\n\r\n private sumAfter(numbers: number[], index: number): number {\r\n var result = 0;\r\n for (var i=index+1;i<numbers.length;i++) {\r\n result += numbers[i];\r\n }\r\n return result;\r\n }\r\n}\r\n","@if (panellist().length >= 1) {\r\n <div [style]=\"panellist()[0].style\" [ngClass]=\"{ dynamics: panellist()[0].dyn, horizontal: orientation() == 'horizontal', vertical: orientation() == 'vertical'}\">\r\n <ng-content select=\"[C1]\"></ng-content>\r\n </div>\r\n\r\n @if (panellist().length > 1 && resizeable()) {\r\n <div \r\n [style]=\"panellist()[0].resizeStyle\" \r\n class=\"resizer\" \r\n cdkDrag \r\n [cdkDragLockAxis]=\"orientation() == 'horizontal' ? 'y' : 'x'\" \r\n (cdkDragMoved)=\"resize($event, panellist()[0])\"\r\n (cdkDragEnded)=\"drop($event, panellist()[0])\"\r\n [ngClass]=\"{ horizontal: orientation() == 'horizontal', vertical: orientation() == 'vertical'}\"></div>\r\n }\r\n}\r\n@if (panellist().length >= 2) {\r\n <div [style]=\"panellist()[1].style\" [ngClass]=\"{ dynamics: panellist()[1].dyn, horizontal: orientation() == 'horizontal', vertical: orientation() == 'vertical'}\"><ng-content select=\"[C2]\"></ng-content></div>\r\n}\r\n@if (panellist().length >= 3) {\r\n <div [style]=\"panellist()[2].style\" [ngClass]=\"{ dynamics: panellist()[2].dyn, horizontal: orientation() == 'horizontal', vertical: orientation() == 'vertical'}\"><ng-content select=\"[C3]\"></ng-content></div>\r\n}\r\n@if (panellist().length >= 4) {\r\n <div [style]=\"panellist()[3].style\" [ngClass]=\"{ dynamics: panellist()[3].dyn, horizontal: orientation() == 'horizontal', vertical: orientation() == 'vertical'}\"><ng-content select=\"[C4]\"></ng-content></div>\r\n}\r\n@if (panellist().length == 5) {\r\n <div [style]=\"panellist()[4].style\" [ngClass]=\"{ dynamics: panellist()[4].dyn, horizontal: orientation() == 'horizontal', vertical: orientation() == 'vertical'}\"><ng-content select=\"[C5]\"></ng-content></div>\r\n}","import { Component } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'xrmui-panel',\r\n templateUrl: './panel.xrmui.html',\r\n styleUrl: './panel.xrmui.scss',\r\n imports: []\r\n})\r\nexport class XrmuiPanel {\r\n constructor() {\r\n }\r\n}\r\n","<ng-content></ng-content>","import { NgClass } from '@angular/common';\r\nimport { AfterContentInit, Component, computed, effect, ElementRef, inject, input, signal } from '@angular/core';\r\nimport { MatIcon } from '@angular/material/icon';\r\n\r\n@Component({\r\n selector: 'xrmui-icon',\r\n templateUrl: './icon.xrmui.html',\r\n styleUrl: './icon.xrmui.scss',\r\n imports: [NgClass,MatIcon]\r\n})\r\nexport class XrmuiIcon implements AfterContentInit {\r\n\r\n private host: ElementRef = inject(ElementRef);\r\n _icon = input<string>('', { alias: 'icon' });\r\n disabled = input<boolean>(false);\r\n type = input<'mat' | 'fa'>('mat');\r\n\r\n icon = signal<string>('');\r\n\r\n classes = computed(() => {\r\n const i = this.icon();\r\n const d = this.disabled();\r\n const t = this.type();\r\n\r\n if (t == 'mat') {\r\n if (d) return [\"disabled\"];\r\n return [];\r\n }\r\n\r\n if (d) {\r\n return ['fa',i,'disabled'];\r\n }\r\n return ['fa',i];\r\n });\r\n\r\n constructor() {\r\n effect(() => {\r\n const i = this._icon();\r\n if (i != '') {\r\n this.icon.set(i);\r\n }\r\n });\r\n }\r\n\r\n ngAfterContentInit(): void {\r\n const i = this._icon();\r\n if (i == '') {\r\n const content = this.host.nativeElement.textContent?.trim() ?? '';\r\n if (content != '') {\r\n this.icon.set(content);\r\n }\r\n }\r\n }\r\n\r\n}\r\n","<span style=\"display: none;\"><ng-content></ng-content></span>\r\n@if (icon() != '') {\r\n@if (type() == 'mat') {\r\n <mat-icon [ngClass]=\"classes()\" fontSet=\"material-symbols-outlined\">{{ icon() }}</mat-icon>\r\n}\r\n@if (type() == 'fa') {\r\n <i [ngClass]=\"classes()\"></i>\r\n}\r\n}","import { NgModule } from '@angular/core';\r\nimport { XrmuiInfo } from './info/info.xrmui';\r\nimport { XrmuiPanel } from './panel/panel.xrmui'\r\nimport { XrmuiLayout } from './layout/layout.xrmui';\r\nimport { XrmuiIcon } from './icon/icon.xrmui';\r\n\r\n@NgModule({\r\n imports: [\r\n XrmuiInfo,\r\n XrmuiLayout,\r\n XrmuiPanel,\r\n XrmuiIcon\r\n ],\r\n exports: [\r\n XrmuiInfo,\r\n XrmuiLayout,\r\n XrmuiPanel,\r\n XrmuiIcon\r\n ]\r\n})\r\nexport class BorutoXrmUIModule { }\r\n","/*\r\n * Public API Surface of Old Kipon UI\r\n */\r\n\r\nexport * from './lib/ko/forms/kobuttongroup/kobuttongroup.component';\r\nexport * from './lib/ko/forms/kodecimal.directive';\r\nexport * from './lib/ko/forms/kofocus.directive';\r\n\r\nexport * from './lib/ko/message/koalert/koaleret.component';\r\nexport * from './lib/ko/message/koheader/koheader.component';\r\nexport * from './lib/ko/message/kowrite.directive';\r\n\r\nexport * from './lib/ko/models/navigation.interface';\r\n\r\nexport * from './lib/ko/navigation/koleftmenu/koleftmenu.component';\r\nexport * from './lib/ko/navigation/kotopmenu/kotopmenu.component';\r\nexport * from './lib/ko/navigation/koover.directive';\r\n\r\nexport * from './lib/ko/panels/koexpansionpanel/koexpansionpanel.component';\r\nexport * from './lib/ko/panels/kohorizontalscroll/kohorizontalscroll.component';\r\nexport * from './lib/ko/panels/kohorizontalsplit/kohorizontalsplit.component';\r\nexport * from './lib/ko/panels/komain/komain.component';\r\nexport * from './lib/ko/panels/kotablepanel/kotablepanel.component';\r\nexport * from './lib/ko/panels/kotitlepanel/kotitlepanel.component';\r\nexport * from './lib/ko/panels/koverticalscroll/koverticalscroll.component';\r\nexport * from './lib/ko/panels/koview/koview.component';\r\nexport * from './lib/ko/panels/koverticalsplit/koverticalsplit.component';\r\n\r\nexport * from './lib/ko/kipon-ui.module';\r\n\r\n/*\r\n * Public API Surface of Xrmui\r\n */\r\n\r\nexport * from './lib/bo/api/imenu.interface';\r\nexport * from './lib/bo/api/iselectable.interface';\r\nexport * from './lib/bo/api/optionsetvalue.interface';\r\nexport * from './lib/bo/api/optionvalue.interface';\r\n\r\nexport * from './lib/bo/info/info.xrmui';\r\nexport * from './lib/bo/layout/layout.xrmui';\r\nexport * from './lib/bo/panel/panel.xrmui'; \r\nexport * from './lib/bo/icon/icon.xrmui';\r\n\r\nexport * from './lib/bo/boruto-xrmui.module';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["XrmuiPanel"],"mappings":"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"}
|
package/package.json
CHANGED
package/types/boruto-xrmui.d.ts
CHANGED
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import * as _angular_core from '@angular/core';
|
|
2
2
|
import { ElementRef, AfterViewInit, OnInit, OnDestroy, AfterContentInit } from '@angular/core';
|
|
3
|
-
import * as i1 from 'xrmui';
|
|
4
3
|
import { BehaviorSubject, Subscription } from 'rxjs';
|
|
5
4
|
|
|
6
5
|
declare class KoButtonGroupComponent {
|
|
@@ -235,7 +234,7 @@ declare class KoVerticalSplitComponent {
|
|
|
235
234
|
|
|
236
235
|
declare class KiponUiModule {
|
|
237
236
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<KiponUiModule, never>;
|
|
238
|
-
static ɵmod: _angular_core.ɵɵNgModuleDeclaration<KiponUiModule, never, [typeof
|
|
237
|
+
static ɵmod: _angular_core.ɵɵNgModuleDeclaration<KiponUiModule, never, [typeof KoHorizontalScrollComponent, typeof KoHorizontalSplitComponent, typeof KoMainComponent, typeof KoTitlePanelComponent, typeof KoVerticalScrollComponent, typeof KoVerticalSplitComponent, typeof KoViewComponent, typeof KoExpansionPanelComponent, typeof KoTablePanelComponent, typeof KoButtonGroupComponent, typeof KoDecimalDirective, typeof KoFocusDirective, typeof KoAlertComponent, typeof KoHeaderComponent, typeof KoOverDirective, typeof KoTopMenuComponent, typeof KoLeftMenuComponent, typeof KoWriteDirective], [typeof KoHorizontalScrollComponent, typeof KoHorizontalSplitComponent, typeof KoMainComponent, typeof KoTitlePanelComponent, typeof KoVerticalScrollComponent, typeof KoVerticalSplitComponent, typeof KoViewComponent, typeof KoExpansionPanelComponent, typeof KoTablePanelComponent, typeof KoButtonGroupComponent, typeof KoDecimalDirective, typeof KoFocusDirective, typeof KoAlertComponent, typeof KoHeaderComponent, typeof KoOverDirective, typeof KoTopMenuComponent, typeof KoLeftMenuComponent, typeof KoWriteDirective]>;
|
|
239
238
|
static ɵinj: _angular_core.ɵɵInjectorDeclaration<KiponUiModule>;
|
|
240
239
|
}
|
|
241
240
|
|
|
@@ -386,7 +385,7 @@ declare class XrmuiIcon implements AfterContentInit {
|
|
|
386
385
|
|
|
387
386
|
declare class BorutoXrmUIModule {
|
|
388
387
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<BorutoXrmUIModule, never>;
|
|
389
|
-
static ɵmod: _angular_core.ɵɵNgModuleDeclaration<BorutoXrmUIModule, never, [typeof
|
|
388
|
+
static ɵmod: _angular_core.ɵɵNgModuleDeclaration<BorutoXrmUIModule, never, [typeof XrmuiInfo, typeof XrmuiLayout, typeof XrmuiPanel, typeof XrmuiIcon], [typeof XrmuiInfo, typeof XrmuiLayout, typeof XrmuiPanel, typeof XrmuiIcon]>;
|
|
390
389
|
static ɵinj: _angular_core.ɵɵInjectorDeclaration<BorutoXrmUIModule>;
|
|
391
390
|
}
|
|
392
391
|
|