taon-ui 19.0.15 → 19.0.17

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/browser/README.md CHANGED
@@ -1,24 +1,24 @@
1
- # MyLib
2
-
3
- This library was generated with [Angular CLI](https://github.com/angular/angular-cli) version 13.2.0.
4
-
5
- ## Code scaffolding
6
-
7
- Run `ng generate component component-name --project my-lib` to generate a new component. You can also use `ng generate directive|pipe|service|class|guard|interface|enum|module --project my-lib`.
8
- > Note: Don't forget to add `--project my-lib` or else it will be added to the default project in your `angular.json` file.
9
-
10
- ## Build
11
-
12
- Run `ng build my-lib` to build the project. The build artifacts will be stored in the `dist/` directory.
13
-
14
- ## Publishing
15
-
16
- After building your library with `ng build my-lib`, go to the dist folder `cd dist/my-lib` and run `npm publish`.
17
-
18
- ## Running unit tests
19
-
20
- Run `ng test my-lib` to execute the unit tests via [Karma](https://karma-runner.github.io).
21
-
22
- ## Further help
23
-
24
- To get more help on the Angular CLI use `ng help` or go check out the [Angular CLI Overview and Command Reference](https://angular.io/cli) page.
1
+ # MyLib
2
+
3
+ This library was generated with [Angular CLI](https://github.com/angular/angular-cli) version 13.2.0.
4
+
5
+ ## Code scaffolding
6
+
7
+ Run `ng generate component component-name --project my-lib` to generate a new component. You can also use `ng generate directive|pipe|service|class|guard|interface|enum|module --project my-lib`.
8
+ > Note: Don't forget to add `--project my-lib` or else it will be added to the default project in your `angular.json` file.
9
+
10
+ ## Build
11
+
12
+ Run `ng build my-lib` to build the project. The build artifacts will be stored in the `dist/` directory.
13
+
14
+ ## Publishing
15
+
16
+ After building your library with `ng build my-lib`, go to the dist folder `cd dist/my-lib` and run `npm publish`.
17
+
18
+ ## Running unit tests
19
+
20
+ Run `ng test my-lib` to execute the unit tests via [Karma](https://karma-runner.github.io).
21
+
22
+ ## Further help
23
+
24
+ To get more help on the Angular CLI use `ng help` or go check out the [Angular CLI Overview and Command Reference](https://angular.io/cli) page.
@@ -1 +1 @@
1
- {"version":3,"file":"taon-ui.mjs","sources":["../../../tmp-libs-for-dist/taon-ui/projects/taon-ui/src/lib/ui/directives/taon-long-press.directive.ts","../../../tmp-libs-for-dist/taon-ui/projects/taon-ui/src/lib/ui/directives/taon-inject-html.directive.ts","../../../tmp-libs-for-dist/taon-ui/projects/taon-ui/src/lib/ui/directives/safe.pipe.ts","../../../tmp-libs-for-dist/taon-ui/projects/taon-ui/src/lib/ui/directives/index.ts","../../../tmp-libs-for-dist/taon-ui/projects/taon-ui/src/lib/ui/taon-full-material.module.ts","../../../tmp-libs-for-dist/taon-ui/projects/taon-ui/src/lib/ui/taon-github-fork-me-corner/taon-github-fork-me-corner.component.ts","../../../tmp-libs-for-dist/taon-ui/projects/taon-ui/src/lib/ui/taon-github-fork-me-corner/taon-github-fork-me-corner.component.html","../../../tmp-libs-for-dist/taon-ui/projects/taon-ui/src/lib/ui/taon-github-fork-me-corner/taon-github-fork-me-corner.module.ts","../../../tmp-libs-for-dist/taon-ui/projects/taon-ui/src/lib/ui/taon-github-fork-me-corner/index.ts","../../../tmp-libs-for-dist/taon-ui/projects/taon-ui/src/lib/ui/taon-github-fork-me-ribbon/taon-github-fork-me-ribbon.component.ts","../../../tmp-libs-for-dist/taon-ui/projects/taon-ui/src/lib/ui/taon-github-fork-me-ribbon/taon-github-fork-me-ribbon.component.html","../../../tmp-libs-for-dist/taon-ui/projects/taon-ui/src/lib/ui/taon-github-fork-me-ribbon/taon-github-fork-me-ribbon.module.ts","../../../tmp-libs-for-dist/taon-ui/projects/taon-ui/src/lib/ui/taon-github-fork-me-ribbon/index.ts","../../../tmp-libs-for-dist/taon-ui/projects/taon-ui/src/lib/ui/taon-notifications/taon-notifications.service.ts","../../../tmp-libs-for-dist/taon-ui/projects/taon-ui/src/lib/ui/taon-notifications/taon-notifications.component.ts","../../../tmp-libs-for-dist/taon-ui/projects/taon-ui/src/lib/ui/taon-notifications/taon-notifications.component.html","../../../tmp-libs-for-dist/taon-ui/projects/taon-ui/src/lib/ui/taon-notifications/taon-notifications.models.ts","../../../tmp-libs-for-dist/taon-ui/projects/taon-ui/src/lib/ui/taon-notifications/taon-notifications.module.ts","../../../tmp-libs-for-dist/taon-ui/projects/taon-ui/src/lib/ui/taon-notifications/index.ts","../../../tmp-libs-for-dist/taon-ui/projects/taon-ui/src/lib/ui/taon-session-passcode/taon-session-passcode.component.ts","../../../tmp-libs-for-dist/taon-ui/projects/taon-ui/src/lib/ui/taon-session-passcode/taon-session-passcode.component.html","../../../tmp-libs-for-dist/taon-ui/projects/taon-ui/src/lib/ui/taon-session-passcode/index.ts","../../../tmp-libs-for-dist/taon-ui/projects/taon-ui/src/lib/ui/taon-progress-bar/taon-progress-bar.component.ts","../../../tmp-libs-for-dist/taon-ui/projects/taon-ui/src/lib/ui/taon-progress-bar/taon-progress-bar.component.html","../../../tmp-libs-for-dist/taon-ui/projects/taon-ui/src/lib/ui/taon-progress-bar/taon-progress-bar.module.ts","../../../tmp-libs-for-dist/taon-ui/projects/taon-ui/src/lib/ui/taon-progress-bar/index.ts","../../../tmp-libs-for-dist/taon-ui/projects/taon-ui/src/lib/ui/taon-table/taon-table.component.ts","../../../tmp-libs-for-dist/taon-ui/projects/taon-ui/src/lib/ui/taon-table/taon-table.component.html","../../../tmp-libs-for-dist/taon-ui/projects/taon-ui/src/lib/ui/taon-table/taon-table.module.ts","../../../tmp-libs-for-dist/taon-ui/projects/taon-ui/src/lib/ui/taon-table/index.ts","../../../tmp-libs-for-dist/taon-ui/projects/taon-ui/src/lib/ui/taon-admin-mode-configuration/taon-admin-mode-configuration.component.ts","../../../tmp-libs-for-dist/taon-ui/projects/taon-ui/src/lib/ui/taon-admin-mode-configuration/taon-admin-mode-configuration.component.html","../../../tmp-libs-for-dist/taon-ui/projects/taon-ui/src/lib/ui/index.ts","../../../tmp-libs-for-dist/taon-ui/projects/taon-ui/src/lib/layouts/taon-bootstrap-navbar/taon-bootstrap-navbar.component.ts","../../../tmp-libs-for-dist/taon-ui/projects/taon-ui/src/lib/layouts/taon-bootstrap-navbar/taon-bootstrap-navbar.component.html","../../../tmp-libs-for-dist/taon-ui/projects/taon-ui/src/taon-ui.ts"],"sourcesContent":["import {\n Directive,\n Input,\n Output,\n EventEmitter,\n HostBinding,\n HostListener,\n} from '@angular/core';\n\nimport { _ } from 'tnp-core/browser';\nimport { Log, Level } from 'ng2-logger/browser';\nconst log = Log.create(`[taon-helpers] long-press`, Level.__NOTHING);\n\n@Directive({\n selector: '[taonLongPress]',\n standalone: true,\n})\nexport class TaonLongPress {\n @Input() pressDuration: number = 1000;\n\n @Output() onLongPress: EventEmitter<any> = new EventEmitter();\n @Output() onLongPressing: EventEmitter<any> = new EventEmitter();\n @Output() onLongPressEnd: EventEmitter<any> = new EventEmitter();\n\n private pressing: boolean;\n private longPressing: boolean;\n private timeout: any;\n private mouseX: number = 0;\n private mouseY: number = 0;\n\n @HostBinding('class.press')\n get press() {\n return this.pressing;\n }\n\n @HostBinding('class.longpress')\n get longPress() {\n return this.longPressing;\n }\n\n allowTrigger = false;\n triggerEnd = _.debounce(() => {\n this.endPress();\n }, 500);\n\n @HostListener('mousedown', ['$event'])\n onMouseDown(event) {\n // don't do right/middle clicks\n log.d(`MOUSE DOWN `);\n\n if (event.which !== 1) return;\n this.allowTrigger = true;\n\n this.mouseX = event.clientX;\n this.mouseY = event.clientY;\n\n this.pressing = true;\n this.longPressing = false;\n\n this.timeout = setTimeout(() => {\n if (this.allowTrigger) {\n this.longPressing = true;\n log.d(`long pressing start pressDuration:${this.pressDuration} `);\n this.onLongPress.emit(event);\n this.loop(event);\n }\n }, this.pressDuration);\n\n this.loop(event);\n }\n\n @HostListener('mousemove', ['$event'])\n onMouseMove(event) {\n if (this.pressing && !this.longPressing) {\n const xThres = event.clientX - this.mouseX > 10;\n const yThres = event.clientY - this.mouseY > 10;\n if (xThres || yThres) {\n this.endPress();\n }\n }\n }\n\n loop(event) {\n if (this.longPressing) {\n this.timeout = setTimeout(() => {\n log.d(`emil longpressing`);\n this.triggerEnd();\n this.onLongPressing.emit(event);\n this.loop(event);\n }, 50);\n }\n }\n\n endPress(emit = true) {\n this.allowTrigger = false;\n clearTimeout(this.timeout);\n this.longPressing = false;\n this.pressing = false;\n if (emit) {\n log.d(`EMIT END`);\n this.onLongPressEnd.emit(true);\n } else {\n log.d(`NOT EMIT END`);\n }\n }\n\n @HostListener('mouseup')\n onMouseUp() {\n this.endPress(false);\n }\n}","import { Directive, ElementRef, Input } from '@angular/core';\n\n@Directive({\n selector: '[taonInjectHTML]',\n standalone: true,\n})\nexport class TaonInjectHTMLDirective {\n @Input() set taonInjectHTML(content: string) {\n this.host.nativeElement.innerHTML = content;\n }\n\n constructor(private host: ElementRef) {}\n}","import { Pipe, PipeTransform } from '@angular/core';\nimport {\n DomSanitizer,\n SafeHtml,\n SafeStyle,\n SafeScript,\n SafeUrl,\n SafeResourceUrl,\n} from '@angular/platform-browser';\n\n@Pipe({\n name: 'safe',\n standalone: true,\n})\nexport class SafePipe implements PipeTransform {\n constructor(protected sanitizer: DomSanitizer) {}\n\n public transform(\n value: any,\n type: string\n ): SafeHtml | SafeStyle | SafeScript | SafeUrl | SafeResourceUrl {\n switch (type) {\n case 'html':\n return this.sanitizer.bypassSecurityTrustHtml(value);\n case 'style':\n return this.sanitizer.bypassSecurityTrustStyle(value);\n case 'script':\n return this.sanitizer.bypassSecurityTrustScript(value);\n case 'url':\n return this.sanitizer.bypassSecurityTrustUrl(value);\n case 'resourceUrl':\n return this.sanitizer.bypassSecurityTrustResourceUrl(value);\n default:\n throw new Error(`Invalid safe type specified: ${type}`);\n }\n }\n}","//#region @browser\nexport * from './taon-long-press.directive';\nexport * from './taon-inject-html.directive';\nexport * from './safe.pipe';\n//#endregion","//#region @browser\nimport { A11yModule } from '@angular/cdk/a11y';\nimport { DragDropModule } from '@angular/cdk/drag-drop';\nimport { ScrollingModule } from '@angular/cdk/scrolling';\nimport { CdkStepperModule } from '@angular/cdk/stepper';\nimport { CdkTableModule } from '@angular/cdk/table';\nimport { CdkTreeModule } from '@angular/cdk/tree';\nimport { NgModule } from '@angular/core';\nimport { MatAutocompleteModule } from '@angular/material/autocomplete';\nimport { MatBadgeModule } from '@angular/material/badge';\nimport { MatBottomSheetModule } from '@angular/material/bottom-sheet';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatCardModule } from '@angular/material/card';\nimport { MatCheckboxModule } from '@angular/material/checkbox';\nimport { MatButtonToggleModule } from '@angular/material/button-toggle';\nimport { MatStepperModule } from '@angular/material/stepper';\nimport { MatDialogModule } from '@angular/material/dialog';\nimport { MatExpansionModule } from '@angular/material/expansion';\nimport { MatGridListModule } from '@angular/material/grid-list';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatListModule } from '@angular/material/list';\nimport { MatDatepickerModule } from '@angular/material/datepicker';\nimport { MatPaginatorModule } from '@angular/material/paginator';\nimport { MatProgressBarModule } from '@angular/material/progress-bar';\nimport { MatChipsModule } from '@angular/material/chips';\nimport { MatDividerModule } from '@angular/material/divider';\nimport { MatInputModule } from '@angular/material/input';\nimport { MatMenuModule } from '@angular/material/menu';\nimport { MatNativeDateModule } from '@angular/material/core';\nimport { MatProgressSpinnerModule } from '@angular/material/progress-spinner';\nimport { MatRadioModule } from '@angular/material/radio';\nimport { MatRippleModule } from '@angular/material/core';\nimport { MatSelectModule } from '@angular/material/select';\nimport { MatSidenavModule } from '@angular/material/sidenav';\nimport { MatSliderModule } from '@angular/material/slider';\nimport { MatSlideToggleModule } from '@angular/material/slide-toggle';\nimport { MatSnackBarModule } from '@angular/material/snack-bar';\nimport { MatSortModule } from '@angular/material/sort';\nimport { MatTableModule } from '@angular/material/table';\nimport { MatTabsModule } from '@angular/material/tabs';\nimport { MatToolbarModule } from '@angular/material/toolbar';\nimport { MatTooltipModule } from '@angular/material/tooltip';\nimport { MatTreeModule } from '@angular/material/tree';\n\n/**\n * @deprecated too heavy!\n */\n@NgModule({\n exports: [\n A11yModule,\n CdkStepperModule,\n CdkTableModule,\n CdkTreeModule,\n DragDropModule,\n MatAutocompleteModule,\n MatBadgeModule,\n MatBottomSheetModule,\n MatButtonModule,\n MatButtonToggleModule,\n MatCardModule,\n MatCheckboxModule,\n MatChipsModule,\n MatStepperModule,\n MatDatepickerModule,\n MatDialogModule,\n MatDividerModule,\n MatExpansionModule,\n MatGridListModule,\n MatIconModule,\n MatInputModule,\n MatListModule,\n MatMenuModule,\n MatNativeDateModule,\n MatPaginatorModule,\n MatProgressBarModule,\n MatProgressSpinnerModule,\n MatRadioModule,\n MatRippleModule,\n MatSelectModule,\n MatSidenavModule,\n MatSliderModule,\n MatSlideToggleModule,\n MatSnackBarModule,\n MatSortModule,\n MatTableModule,\n MatTabsModule,\n MatToolbarModule,\n MatTooltipModule,\n MatTreeModule,\n ScrollingModule,\n ],\n})\nexport class TaonFullMaterialModule {}\n//#endregion","//#region @browser\nimport {\n Component,\n EventEmitter,\n HostBinding,\n Input,\n OnInit,\n Output,\n} from '@angular/core';\nimport { Subscription } from 'rxjs';\n\n@Component({\n selector: 'taon-github-fork-me-corner',\n templateUrl: './taon-github-fork-me-corner.component.html',\n styleUrls: ['./taon-github-fork-me-corner.component.scss'],\n standalone: false,\n})\nexport class TaonGithubForkMeCornerComponent {\n @Input() url: string = 'https://github.com';\n}\n//#endregion","<a href=\"{{ url }}\" class=\"github-corner\" aria-label=\"View source on GitHub\"\n ><svg\n width=\"80\"\n height=\"80\"\n viewBox=\"0 0 250 250\"\n style=\"\n fill: #151513;\n color: #fff;\n position: absolute;\n top: 0;\n border: 0;\n right: 0;\n \"\n aria-hidden=\"true\">\n <path d=\"M0,0 L115,115 L130,115 L142,142 L250,250 L250,0 Z\"></path>\n <path\n d=\"M128.3,109.0 C113.8,99.7 119.0,89.6 119.0,89.6 C122.0,82.7 120.5,78.6 120.5,78.6 C119.2,72.0 123.4,76.3 123.4,76.3 C127.3,80.9 125.5,87.3 125.5,87.3 C122.9,97.6 130.6,101.9 134.4,103.2\"\n fill=\"currentColor\"\n style=\"transform-origin: 130px 106px\"\n class=\"octo-arm\"></path>\n <path\n d=\"M115.0,115.0 C114.9,115.1 118.7,116.5 119.8,115.4 L133.7,101.6 C136.9,99.2 139.9,98.4 142.2,98.6 C133.8,88.0 127.5,74.4 143.8,58.0 C148.5,53.4 154.0,51.2 159.7,51.0 C160.3,49.4 163.2,43.6 171.4,40.1 C171.4,40.1 176.1,42.5 178.8,56.2 C183.1,58.6 187.2,61.8 190.9,65.4 C194.5,69.0 197.7,73.2 200.1,77.6 C213.8,80.2 216.3,84.9 216.3,84.9 C212.7,93.1 206.9,96.0 205.4,96.6 C205.1,102.4 203.0,107.8 198.3,112.5 C181.9,128.9 168.3,122.5 157.7,114.1 C157.9,116.9 156.7,120.9 152.7,124.9 L141.0,136.5 C139.8,137.7 141.6,141.9 141.8,141.8 Z\"\n fill=\"currentColor\"\n class=\"octo-body\"></path>\n </svg>\n</a>","//#region @browser\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { TaonGithubForkMeCornerComponent } from './taon-github-fork-me-corner.component';\n\n@NgModule({\n imports: [CommonModule],\n exports: [TaonGithubForkMeCornerComponent],\n declarations: [TaonGithubForkMeCornerComponent],\n providers: [],\n})\nexport class TaonGithubForkMeCornerModule {}\n//#endregion","//#region @browser\nexport * from './taon-github-fork-me-corner.component';\n//#endregion\n//#region @browser\nexport * from './taon-github-fork-me-corner.module';\n//#endregion","//#region @browser\nimport {\n Component,\n EventEmitter,\n HostBinding,\n Input,\n OnInit,\n Output,\n} from '@angular/core';\nimport { Subscription } from 'rxjs';\n\n@Component({\n selector: 'taon-github-fork-me-ribbon',\n templateUrl: './taon-github-fork-me-ribbon.component.html',\n styleUrls: ['./taon-github-fork-me-ribbon.component.scss'],\n standalone: false,\n})\nexport class TaonGithubForkMeRibbonComponent {\n @Input() url: string = 'https://github.com';\n}\n//#endregion","<a href=\"{{ url }}\"\n ><img\n decoding=\"async\"\n loading=\"lazy\"\n width=\"149\"\n height=\"149\"\n src=\"data:image/webp;base64,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\"\n class=\"attachment-full size-full\"\n alt=\"Fork me on GitHub\"\n data-recalc-dims=\"1\"\n/></a>","//#region @browser\nimport { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { TaonGithubForkMeRibbonComponent } from './taon-github-fork-me-ribbon.component';\n\n@NgModule({\n imports: [CommonModule],\n declarations: [TaonGithubForkMeRibbonComponent],\n exports: [TaonGithubForkMeRibbonComponent],\n})\nexport class TaonGithubForkMeRibbonModule {}\n//#endregion","//#region @browser\nexport * from './taon-github-fork-me-ribbon.component';\nexport * from './taon-github-fork-me-ribbon.module';\n//#endregion","//#region @browser\nimport { _ } from 'tnp-core/browser';\nimport { Injectable } from '@angular/core';\nimport { HotToastService } from '@ngneat/hot-toast';\nimport {\n TaonNotificationOptions,\n TaonNotificationType,\n} from './taon-notifications.models';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class TaonNotificationsService {\n constructor(private toast: HotToastService) {}\n\n private options(\n type: TaonNotificationType,\n options: TaonNotificationOptions | string\n ): TaonNotificationOptions {\n if (_.isString(options)) {\n options = {\n // @ts-ignore\n title: options,\n };\n }\n return options as TaonNotificationOptions;\n }\n\n success(options: TaonNotificationOptions | string) {\n const opt = this.options('success', options);\n return this.toast.success(opt.title);\n }\n\n error(options: TaonNotificationOptions | string) {\n const opt = this.options('error', options);\n return this.toast.error(opt.title);\n }\n\n warn(options: TaonNotificationOptions | string) {\n const opt = this.options('warning', options);\n return this.toast.warning(opt.title);\n }\n\n info(options: TaonNotificationOptions | string) {\n const opt = this.options('info', options);\n return this.toast.info(opt.title);\n }\n}\n//#endregion","//#region @browser\nimport { Component, OnInit, TemplateRef } from '@angular/core';\nimport { Subscription } from 'rxjs';\nimport { Resource } from 'ng2-rest/browser';\nimport { TaonNotificationsService } from './taon-notifications.service';\n\n@Component({\n selector: 'taon-notifications',\n templateUrl: './taon-notifications.component.html',\n styleUrls: ['./taon-notifications.component.scss'],\n standalone: false,\n})\nexport class TaonNotificationsComponent implements OnInit {\n constructor(private notification: TaonNotificationsService) {}\n\n ngOnInit() {}\n\n init(\n subscribtionsArray: Subscription[],\n template: TemplateRef<any>,\n callback: (dataToTempalte) => any\n ) {\n subscribtionsArray.push(\n Resource.listenErrors.subscribe(err => {\n this.notification.error(err.msg);\n // subscribtionsArray.push(notify.onTap.subscribe(() => {\n // callback(err);\n // this.modal.open(template);\n // }) as any);\n }) as any\n );\n }\n}\n//#endregion","<!-- <p>\n notyfications works!\n</p> -->","//#region @browser\nimport { HotToastService } from '@ngneat/hot-toast';\n\nexport class TaonNotificationOptions {\n title: string;\n subtitle?: string;\n}\n\nexport type TaonNotificationType = keyof Omit<\n HotToastService,\n 'defaultConfig' | 'observe'\n>;\n//#endregion","//#region @browser\nimport { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { TaonNotificationsComponent } from './taon-notifications.component';\n\n// import { HotToastModule } from '@ngneat/hot-toast';\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\nimport { TaonNotificationsService } from './taon-notifications.service';\n\n@NgModule({\n imports: [\n // CommonModule,\n // BrowserAnimationsModule, // required animations module\n // HotToastModule.forRoot({\n // position: 'top-right',\n // }),\n ],\n exports: [TaonNotificationsComponent],\n declarations: [TaonNotificationsComponent],\n providers: [TaonNotificationsService],\n})\nexport class TaonNotificationsModule {}\n//#endregion","//#region @browser\nexport * from './taon-notifications.component';\n//#endregion\nexport * from './taon-notifications.models';\n//#region @browser\nexport * from './taon-notifications.module';\n//#endregion\n//#region @browser\nexport * from './taon-notifications.service';\n//#endregion","import { CommonModule } from '@angular/common';\nimport {\n ChangeDetectorRef,\n Component,\n DestroyRef,\n ElementRef,\n HostBinding,\n Input,\n OnInit,\n Self,\n inject,\n} from '@angular/core';\nimport {\n FormControl,\n FormGroup,\n FormsModule,\n ReactiveFormsModule,\n} from '@angular/forms';\nimport { PasswordModule } from 'primeng/password';\nimport { Stor } from 'taon-storage/browser';\nimport { DomSanitizer, SafeHtml } from '@angular/platform-browser';\nimport { interval, take, tap } from 'rxjs';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\n\nexport interface TaonSessionPasscodeModel {\n passcode: string;\n}\n\nexport type TaonSessionPasscodeForm = {\n [prop in keyof TaonSessionPasscodeModel]: FormControl<\n TaonSessionPasscodeModel[prop]\n >;\n};\n\n@Component({\n selector: 'taon-session-passcode',\n templateUrl: './taon-session-passcode.component.html',\n styleUrls: ['./taon-session-passcode.component.scss'],\n standalone: true,\n imports: [PasswordModule, CommonModule, ReactiveFormsModule, FormsModule],\n})\nexport class TaonSessionPasscodeComponent implements OnInit {\n destroyRef = inject(DestroyRef);\n // @HostBinding('style.width.px') public width: number;\n // @HostBinding('style.height.px') public height: number;\n @Input() public passcode: string;\n @Input() public message: string;\n public safeMessage: SafeHtml;\n\n @(Stor.property.in.localstorage\n .for(TaonSessionPasscodeComponent)\n .withDefaultValue(''))\n private lastPasscode: string;\n @HostBinding('style.display') public display = 'none';\n public form: FormGroup<TaonSessionPasscodeForm> =\n new FormGroup<TaonSessionPasscodeForm>({\n passcode: new FormControl(),\n });\n constructor(\n @Self() private element: ElementRef<HTMLElement>,\n private domSanitizer: DomSanitizer,\n private cdr: ChangeDetectorRef,\n ) {}\n\n ngOnInit() {\n if (!this.passcode) {\n this.passcode = '123456';\n }\n if (!this.message) {\n this.message = `\n This website is only for testing purpose. Please type passcode bellow to see content.\n\n `;\n }\n // console.log({\n // 'lastPasscode': this.lastPasscode,\n // 'current passcode': this.passcode,\n // 'current message': this.message,\n // })\n // this.width = window.innerWidth;\n // this.height = window.innerHeight;\n this.safeMessage = this.domSanitizer.bypassSecurityTrustHtml(this.message);\n\n if (this.lastPasscode?.toString() === this.passcode?.toString()) {\n this.hide();\n } else {\n this.show();\n this.focus();\n }\n\n interval(1000)\n .pipe(\n takeUntilDestroyed(this.destroyRef),\n tap(() => {\n this.focus();\n }),\n )\n .subscribe();\n }\n\n submit({ passcode }: Partial<TaonSessionPasscodeModel>) {\n if (this.isPasscodeOK(passcode || '')) {\n this.hide();\n } else {\n this.clear();\n }\n }\n\n private isPasscodeOK(passcode: string) {\n this.lastPasscode = passcode.toString();\n return this.passcode.toString() === passcode;\n }\n\n ngAfterViewInit(): void {}\n\n public focus(): void {\n this.element.nativeElement.querySelector('input')?.focus();\n }\n\n hide() {\n this.display = 'none';\n }\n\n show() {\n this.display = 'block';\n }\n\n clear() {\n this.form.controls.passcode.setValue('');\n }\n\n onKeyup(event: KeyboardEvent & { target: { value: string } }) {\n if (this.isPasscodeOK(event.target.value || '')) {\n this.hide();\n return;\n }\n const key = event.keyCode || event.charCode;\n if (key === 8 || key === 46 || this.lastPasscode?.length > 5) {\n this.clear();\n }\n }\n}","<form\n [formGroup]=\"form\"\n content=\"notranslate\"\n autocomplete=\"off\"\n (click)=\"focus()\"\n (ngSubmit)=\"submit(form.value)\"\n class=\"flex flex-column align-items-center w-full h-full\">\n <div class=\"flex align-content-center w-full justify-content-center mt-8\">\n <p\n class=\"p-3\"\n style=\"max-width: 400px; min-height: 100px\"\n [innerHtml]=\"safeMessage\"></p>\n </div>\n <input\n type=\"password\"\n class=\"text-5xl md:text-8xl pointer-events-none\"\n #taonpasscode\n (keyup)=\"onKeyup($event)\"\n formControlName=\"passcode\" />\n <!-- placeholder=\"Enter passcode\" -->\n</form>","//#region @browser\nexport * from './taon-session-passcode.component';\n//#endregion","//#region @browser\nimport {\n Component,\n EventEmitter,\n HostBinding,\n Input,\n OnInit,\n Output,\n ViewChild,\n} from '@angular/core';\nimport { Observable, Subject, Subscription } from 'rxjs';\nimport { _ } from 'tnp-core/browser';\n\nimport axios from 'axios';\n// import {\n// NgProgressConfig,\n// NgProgressModule,\n// NgProgressRef,\n// } from 'ngx-progressbar';\nimport { Taon } from 'taon/browser';\n// import { Models } from 'tnp-models';\n// import type { TaonAdmin } from '../taon-admin-mode-configuration';\n\nconst calculatePercentage = (loaded, total) => Math.floor(loaded * 1.0) / total;\ndeclare const ENV: any;\n\n@Component({\n selector: 'taon-progress-bar',\n templateUrl: './taon-progress-bar.component.html',\n styleUrls: ['./taon-progress-bar.component.scss'],\n standalone: false,\n})\nexport class TaonProgressBarComponent implements OnInit {\n @ViewChild('labProgress') labProgress: any; // NgProgressRef;\n @Input() isDesktop: boolean;\n admin: any;\n handlers: Subscription[] = [];\n // options: NgProgressConfig = _.merge(\n // {\n // min: 8,\n // max: 100,\n // speed: 200,\n // trickleSpeed: 300,\n // debounceTime: 0,\n // ease: 'linear',\n // spinnerPosition: 'right',\n // direction: 'ltr+',\n // color: 'gray',\n // fixed: true,\n // meteor: true,\n // spinner: true,\n // thick: false,\n // },\n // _.get(ENV, `plugins['ngx-progressbar']`),\n // );\n\n constructor() {}\n\n ngOnInit() {}\n\n ngOnDestroy(): void {\n this.handlers.forEach(h => h.unsubscribe());\n }\n\n ngAfterViewInit(): void {\n // this.labProgress.set(20)\n this.loadProgressBar(void 0, axios);\n }\n\n loadProgressBar(config, instance = axios) {\n // let requestsCounter = 0;\n\n // const setupStartProgress = () => {\n // instance.interceptors.request.use(config => {\n // requestsCounter++;\n // this.labProgress.start();\n // return config;\n // });\n // };\n\n // const setupUpdateProgress = () => {\n // const update = e => {\n // // NProgress.inc(calculatePercentage(e.loaded, e.total))\n\n // const percentage = calculatePercentage(e.loaded, e.total) * 100;\n // // console.log(`loaded: ${e.loaded}, total: ${e.total} , pecent: ${percentage}`)\n // this.labProgress.inc(percentage);\n // };\n // instance.defaults.onDownloadProgress = update;\n // instance.defaults.onUploadProgress = update;\n // };\n\n // const setupStopProgress = () => {\n // const responseFunc = response => {\n // if (--requestsCounter === 0) {\n // this.labProgress.complete();\n // // NProgress.done()\n // }\n // return response;\n // };\n\n // const errorFunc = error => {\n // if (--requestsCounter === 0) {\n // this.labProgress.complete();\n // // NProgress.done()\n // }\n // return Promise.reject(error);\n // };\n\n // instance.interceptors.response.use(responseFunc, errorFunc);\n // };\n\n // setupStartProgress();\n // setupUpdateProgress();\n // setupStopProgress();\n\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n \n }\n}\n//#endregion","<!-- <ng-progress\n #labProgress\n id=\"lab\"\n [meteor]=\"options.meteor\"\n [color]=\"options.color\"\n [min]=\"options.min\"\n [max]=\"options.max\"\n [speed]=\"options.speed\"\n [spinner]=\"\n options.spinner &&\n (!admin.adminPanelIsOpen ||\n (admin.adminPanelIsOpen && (admin.draggablePopupMode || !isDesktop)))\n \"\n [spinnerPosition]=\"options.spinnerPosition\"\n [direction]=\"options.direction\"\n [trickleSpeed]=\"options.trickleSpeed\"\n [debounceTime]=\"options.debounceTime\"\n [ease]=\"options.ease\"\n [thick]=\"options.thick\"\n [fixed]=\"options.fixed\">\n</ng-progress>\n(started)=\"onProgressStarted()\"\n (completed)=\"onProgressCompleted()\" -->","//#region @browser\nimport { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { TaonProgressBarComponent } from './taon-progress-bar.component';\n// import { NgProgressConfig, NgProgressModule } from 'ngx-progressbar';\n\n@NgModule({\n imports: [CommonModule,\n // NgProgressModule.withConfig({})\n ],\n declarations: [TaonProgressBarComponent],\n exports: [TaonProgressBarComponent],\n})\nexport class TaonProgressBarModule {}\n//#endregion","//#region @browser\nexport * from './taon-progress-bar.component';\nexport * from './taon-progress-bar.module';\n//#endregion","//#region imports\nimport {\n Component,\n OnInit,\n Input,\n Output,\n TemplateRef,\n EventEmitter,\n ViewChild,\n ElementRef,\n OnDestroy,\n} from '@angular/core';\nimport { PageEvent } from '@angular/material/paginator';\nimport { MtxGridColumn } from '@ng-matero/extensions/grid';\nimport { Log, Level } from 'ng2-logger/browser';\nimport {\n Observable,\n Subscription,\n debounceTime,\n defer,\n distinctUntilChanged,\n fromEvent,\n map,\n share,\n tap,\n} from 'rxjs';\nimport { Taon } from 'taon/browser';\nimport { _ } from 'tnp-core/browser';\nimport { json5 } from 'tnp-core/browser';\nimport { CLASS } from 'typescript-class-helpers/browser';\n//#endregion\n\n//#region constants\nconst log = Log.create('Table wrapper', Level.__NOTHING);\nconst defaultColumns = [\n {\n header: 'ID',\n field: 'id',\n },\n {\n header: 'NAME',\n field: 'name',\n },\n] as MtxGridColumn[];\n//#endregion\n\n@Component({\n //#region component options\n selector: 'taon-table',\n templateUrl: './taon-table.component.html',\n styleUrls: ['./taon-table.component.scss'],\n standalone: false,\n})\nexport class TaonTableComponent implements OnDestroy, OnInit {\n //#region fields\n @Input() public pageNumber: number = 1;\n @Input() public pageSize: number = 5;\n @Input() public allowedColumns: string[] = [];\n\n @Input() public expansionTemplate: TemplateRef<any>;\n @Input() public rows = _.times(20, id => {\n return {\n id,\n name: `Amazing ${id} row `,\n };\n });\n @Input() entityCrudController: Taon.Base.CrudController<any>;\n @Input() public columns: MtxGridColumn[] = defaultColumns as MtxGridColumn[];\n @Input() public pageSizeOptions: number[] = [5, 10, 20];\n @Input() public hideSearch: boolean;\n @Output() public expansionChange = new EventEmitter();\n\n @Output() public addingItem = new EventEmitter<void>();\n @ViewChild('search', { static: true }) search?: ElementRef<HTMLElement>;\n private searchInputChange$: Observable<string>;\n\n public expandable: boolean = false;\n public showPaginator = true;\n public isLoading = false;\n public totalElements: number = 100;\n private sub: Subscription = new Subscription();\n //#endregion\n\n get entity(): typeof Taon.Base.Entity {\n return this.entityCrudController?.entityClassResolveFn();\n }\n\n //#region hooks\n\n //#region hooks / on init\n async ngOnInit() {\n if (!this.hideSearch) {\n this.searchInputChange$ = defer(() =>\n fromEvent<KeyboardEvent>(this.search?.nativeElement as any, 'keyup'),\n ).pipe(\n map(c => c.target['value']),\n debounceTime(500),\n distinctUntilChanged(),\n share(),\n tap(data => {\n console.log({ data });\n }),\n );\n\n this.sub.add(this.searchInputChange$.subscribe());\n }\n\n const entityClass = this.entity;\n if (!!entityClass) {\n this.rows = [];\n }\n this.expandable = !!this.expansionTemplate;\n // this.arrayDataConfig.set.pagination.rowDisplayed(5);\n log.i('this.columns,', this.columns);\n const columnsConfigSameAsDefault = _.isEqual(this.columns, defaultColumns);\n // console.log({\n // columnsConfigSameAsDefault\n // })\n\n if (entityClass && columnsConfigSameAsDefault) {\n log.i(\n 'this.crud.entity',\n CLASS.describeProperites(entityClass as Function),\n );\n\n try {\n const props = CLASS.describeProperites(entityClass as Function);\n let columns = props\n .filter(prop =>\n this.allowedColumns.length > 0\n ? this.allowedColumns.includes(prop)\n : true,\n )\n .map(prop => {\n return {\n header: _.upperCase(prop),\n field: prop,\n } as MtxGridColumn;\n });\n\n const extra = this.allowedColumns.filter(f => !props.includes(f));\n columns = [\n ...columns,\n ...extra.map(prop => {\n return {\n header: _.upperCase(prop),\n field: prop,\n } as MtxGridColumn;\n }),\n ];\n\n // console.log({\n // extra\n // });\n\n if (!this.expandable) {\n for (let index = 0; index < columns.length; index++) {\n const col = columns[index];\n delete col.showExpand;\n }\n }\n this.columns = columns;\n } catch (error) {\n console.error(error);\n }\n } else {\n }\n\n if (!this.entity) {\n this.showPaginator = false;\n }\n\n await this.getData();\n }\n //#endregion\n\n //#region hooks / on destroy\n ngOnDestroy(): void {\n this.sub.unsubscribe();\n }\n //#endregion\n\n //#endregion\n\n //#region methods\n\n //#region methods / get next page\n async getNextPage(e: PageEvent) {\n // console.log({\n // e\n // });\n this.pageNumber = e.pageIndex + 1;\n this.pageSize = e.pageSize;\n await this.getData();\n }\n //#endregion\n\n //#region methods / retrive data\n async getData(): Promise<void> {\n if (!this.entity) {\n return;\n }\n this.isLoading = true;\n // console.log('PAGINTION FETCH DATA START!')\n const controller = this.entityCrudController;\n if (controller) {\n const data = await controller.pagination(this.pageNumber, this.pageSize)\n .received;\n\n // console.log('PAGINTION DATA', {\n // data,\n // });\n const totalElements = Number(\n data.headers.get(Taon.symbols.old.X_TOTAL_COUNT),\n );\n const rows = data.body.json;\n // console.log('PAGINTION DATA', {\n // rows,\n // totalElements,\n // });\n this.totalElements = totalElements;\n this.rows = rows.map(d => {\n for (const key in d) {\n if (Object.prototype.hasOwnProperty.call(d, key)) {\n const elem = d[key];\n if (_.isObject(elem)) {\n d[key] = json5.stringify(d[key]);\n }\n }\n }\n // console.log({ d })\n return d;\n });\n }\n this.isLoading = false;\n }\n //#endregion\n\n //#region methods / expansion row\n expansionRow(e) {\n this.expansionChange.next(e);\n }\n //#endregion\n\n //#region methods / on table context menu\n onTableContextMenu(e) {\n // if (this.rowHref) {\n // this.router.navigateByUrl(this.rowHref)\n // }\n log.i('context menu event', e);\n }\n //#endregion\n\n //#endregion\n}","<br />\n<columns-container *ngIf=\"!hideSearch\">\n <column grow>\n <mat-form-field class=\"search-input\">\n <input\n matInput\n placeholder=\"Type to search table...\"\n #search />\n </mat-form-field>\n </column>\n <column [width]=\"80\">\n <button\n mat-fab\n [ngClass]=\"{ 'half-opacity': !search.value }\"\n class=\"undo-button\"\n color=\"secondary\"\n (click)=\"search.value = ''\">\n <mat-icon>close </mat-icon>\n </button>\n </column>\n\n <column [width]=\"80\">\n <button\n mat-fab\n (click)=\"addingItem.next()\"\n class=\"undo-button\"\n color=\"primary\">\n <mat-icon>add</mat-icon>\n </button>\n </column>\n</columns-container>\n\n<mtx-grid\n *ngIf=\"rows && columns\"\n [data]=\"rows\"\n [columns]=\"columns\"\n [expandable]=\"expandable\"\n [expansionTemplate]=\"expansionTemplate\"\n (expansionChange)=\"expansionRow($event)\"\n [length]=\"totalElements\"\n [loading]=\"isLoading\"\n [pageOnFront]=\"false\"\n [pageIndex]=\"pageNumber - 1\"\n [pageSize]=\"pageSize\"\n [pageSizeOptions]=\"pageSizeOptions\"\n [showPaginator]=\"showPaginator\"\n (page)=\"getNextPage($event)\">\n</mtx-grid>","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport { MatButton, MatButtonModule } from '@angular/material/button';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatInputModule } from '@angular/material/input';\nimport { MatSelectModule } from '@angular/material/select';\nimport { MtxGridModule } from '@ng-matero/extensions/grid';\nimport { StaticColumnsModule } from 'static-columns/browser';\n\nimport { TaonTableComponent } from './taon-table.component';\n\n@NgModule({\n imports: [\n CommonModule,\n MatSelectModule,\n MtxGridModule,\n MatFormFieldModule,\n MatInputModule,\n StaticColumnsModule,\n MatIconModule,\n MatButtonModule,\n FormsModule,\n ReactiveFormsModule,\n ],\n exports: [TaonTableComponent],\n declarations: [TaonTableComponent],\n})\nexport class TaonTableModule {}","//#region @browser\nexport * from './taon-table.component';\n//#endregion\n//#region @browser\nexport * from './taon-table.module';\n//#endregion","//#region imports\nimport {\n CdkDrag,\n CdkDragEnd,\n CdkDragMove,\n CdkDragRelease,\n Point,\n} from '@angular/cdk/drag-drop';\nimport { CommonModule } from '@angular/common';\nimport {\n ChangeDetectorRef,\n Component,\n EventEmitter,\n HostListener,\n Injector,\n Input,\n OnInit,\n Output,\n ViewChild,\n inject,\n AfterViewInit,\n OnDestroy,\n} from '@angular/core';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport { NgScrollbarModule } from 'ngx-scrollbar';\nimport { Subject, takeUntil, tap } from 'rxjs';\nimport { StaticColumnsModule } from 'static-columns/browser';\nimport { BreakpointsService } from 'static-columns/browser';\nimport { TaonAdminService } from 'taon/browser';\nimport { Stor } from 'taon-storage/browser';\nimport { Helpers, _ } from 'tnp-core/browser';\n\nimport { TaonFullMaterialModule } from '../taon-full-material.module';\nimport { TaonNotificationsModule } from '../taon-notifications';\nimport { TaonProgressBarModule } from '../taon-progress-bar';\nimport { TaonSessionPasscodeComponent } from '../taon-session-passcode';\n\n\n//#endregion\n\ndeclare const ENV: any;\n@Component({\n //#region component options\n selector: 'taon-admin-mode-configuration',\n templateUrl: './taon-admin-mode-configuration.component.html',\n styleUrls: ['./taon-admin-mode-configuration.component.scss'],\n standalone: true,\n imports: [\n CommonModule,\n StaticColumnsModule,\n FormsModule,\n NgScrollbarModule,\n TaonProgressBarModule,\n TaonNotificationsModule,\n TaonFullMaterialModule, // TODO import only partial things\n // TaonDbAdminComponent,\n TaonSessionPasscodeComponent,\n ],\n //#endregion\n})\nexport class TaonAdminModeConfigurationComponent\n implements OnInit, AfterViewInit, OnDestroy\n{\n //#region fields & getters\n $destroy = new Subject();\n public readonly cdr = inject(ChangeDetectorRef);\n public readonly taonAdminService: TaonAdminService =\n TaonAdminService.Instance;\n public readonly isDesktop: boolean;\n public isWebSQLMode: boolean = Helpers.isWebSQL;\n public hideTaonToolsInProduction: boolean =\n ENV.hideTaonToolsInProduction && ENV.angularProd;\n public isIframe: boolean = window.location !== window.parent.location;\n public height: number = 100;\n public openedOnce = false;\n public reloading: boolean = false;\n public showPasscode: boolean =\n _.isString(ENV.passcode) || _.isObject(ENV.passcode);\n public passcode: string = _.isString(ENV.passcode)\n ? ENV.passcode\n : _.isObject(ENV.passcode)\n ? ENV.passcode.code\n : '';\n public message: string = _.isObject(ENV.passcode)\n ? ENV.passcode.message\n : void 0;\n\n // @ts-ignore\n @(Stor.property.in.localstorage\n .for(TaonAdminModeConfigurationComponent)\n .withDefaultValue(0))\n dragPositionX: number;\n\n // @ts-ignore\n @(Stor.property.in.localstorage\n .for(TaonAdminModeConfigurationComponent)\n .withDefaultValue(0))\n dragPositionY: number;\n\n dragPositionZero = { x: 0, y: 0 } as Point;\n dragPosition: Point;\n\n // @ts-ignore\n @(Stor.property.in.localstorage\n .for(TaonAdminModeConfigurationComponent)\n .withDefaultValue(0))\n selectedIndex: number;\n\n @ViewChild('tabGroup') tabGroup;\n\n // @ts-ignore\n @(Stor.property.in.localstorage\n .for(TaonAdminModeConfigurationComponent)\n .withDefaultValue(false))\n wasOpenDraggablePopup: boolean;\n\n @Output() taonAdminModeConfigurationDataChanged = new EventEmitter();\n @Input() taonAdminModeConfigurationData: any = {};\n public get opened() {\n return !this.isIframe && this.taonAdminService.adminPanelIsOpen;\n }\n public set opened(v) {\n if (v && !this.openedOnce) {\n this.openedOnce = true;\n }\n if (this.wasOpenDraggablePopup) {\n this.wasOpenDraggablePopup = false;\n this.taonAdminService.draggablePopupMode = true;\n }\n this.taonAdminService.adminPanelIsOpen = v;\n }\n //#endregion\n\n //#region constructor\n constructor(private breakpointsService: BreakpointsService) {\n this.breakpointsService\n .listenTo()\n .pipe(takeUntil(this.$destroy))\n .subscribe(breakpoint => {\n // @ts-ignore\n this.isDesktop = breakpoint === 'desktop';\n });\n }\n //#endregion\n\n //#region hooks\n async ngOnInit() {\n await Stor.awaitPendingOperatios();\n // console.log('PENDING OPERATION AWAITED ', this.selectedIndex)\n // console.log('draggablePopupModeFullScreen ', this.taonAdminService.draggablePopupModeFullScreen)\n\n this.dragPosition = { x: this.dragPositionX, y: this.dragPositionY };\n this.openedOnce = this.opened;\n // console.log('ONINIT',{\n // 'this.openedOnce': this.openedOnce,\n // 'this.dragPosition': this.dragPosition,\n // this: this\n // })\n }\n\n ngAfterViewInit(): void {\n //Called after ngAfterContentInit when the component's view has been initialized. Applies to components only.\n //Add 'implements AfterViewInit' to the class.\n setTimeout(() => {\n this.height = window.innerHeight;\n\n // TODO QUICK_FIX for draggble popup proper first index load on tabs\n if (this.taonAdminService.draggablePopupMode) {\n this.reloadTabs();\n }\n\n // const tablist = (this.tabGroup?._tabHeader?._elementRef?.nativeElement as HTMLElement).querySelector('.mat-tab-list') as HTMLElement;\n // if (tablist) {\n // tablist.style.transform = 'translateX(0px)'; // TODO QUICK_FIX\n // }\n });\n }\n\n ngOnDestroy(): void {\n this.$destroy.next(void 0);\n this.$destroy.complete();\n }\n\n @HostListener('window:resize', ['$event'])\n onResize(event: Event) {\n this.height = window.innerHeight;\n }\n\n //#endregion\n\n //#region methods\n async reloadTabs(): Promise<void> {\n return new Promise<void>(resolve => {\n this.reloading = true;\n setTimeout(() => {\n this.reloading = false;\n console.log('reloading done');\n resolve();\n });\n });\n }\n\n async toogle() {\n // await stor.setItem(IS_OPEN_ADMIN, !this.opened);\n this.opened = !this.opened;\n }\n\n async toogleFullScreen() {\n this.taonAdminService.draggablePopupMode = true;\n this.taonAdminService.draggablePopupModeFullScreen =\n !this.taonAdminService.draggablePopupModeFullScreen;\n this.resetDrag();\n }\n\n resetDrag() {\n this.dragPositionX = 0;\n this.dragPositionY = 0;\n this.dragPosition = { x: this.dragPositionX, y: this.dragPositionY };\n }\n\n moved(c: CdkDragEnd) {\n this.dragPositionX += c.distance.x;\n this.dragPositionY += c.distance.y;\n }\n\n scrollTabs(event) {\n return;\n // event?.stopPropagation();\n // event?.stopImmediatePropagation(); // TODO not working\n // const children = this.tabGroup._tabHeader._elementRef.nativeElement.children;\n // const back = children[0];\n // const forward = children[2];\n // if (event.deltaY > 0) {\n // forward.click();\n // } else {\n // back.click();\n // }\n }\n\n //#endregion\n}","<!-- #region basic global components -->\n<taon-session-passcode\n *ngIf=\"showPasscode\"\n [passcode]=\"passcode\"\n [message]=\"message\" />\n<!-- <taon-progress-bar [isDesktop]=\"isDesktop\"></taon-progress-bar> -->\n<!-- <taon-notifications></taon-notifications> -->\n<button\n mat-fab\n class=\"fab-button\"\n color=\"accent\"\n aria-label=\"Taon Admin Mode\"\n *ngIf=\"\n !taonAdminService.draggablePopupMode &&\n isDesktop &&\n !isIframe &&\n !hideTaonToolsInProduction\n \"\n (click)=\"toogle()\">\n <mat-icon>build</mat-icon>\n</button>\n<!-- #endregion -->\n\n<!-- #region small hidden button -->\n<!-- <button class=\"admin-show-button\"\n *ngIf=\"!taonAdminService.draggablePopupMode && isDesktop\"\n (click)=\"toogle()\"> Admin </button> -->\n<!-- #endregion -->\n\n<ng-template #contentNoScroll>\n <ng-content> </ng-content>\n</ng-template>\n\n<ng-template #content>\n <ng-scrollbar>\n <ng-container [ngTemplateOutlet]=\"contentNoScroll\"></ng-container>\n </ng-scrollbar>\n</ng-template>\n\n<!-- #region admin tabs -->\n<ng-template #adminTabs>\n <!-- #region admin tabs / header -->\n <div class=\"taon-header-admin-wrapper\">\n <columns-container\n class=\"taon-header-admin\"\n [ngClass]=\"{ 'draggable-column': taonAdminService.draggablePopupMode }\">\n <column\n width=\"200\"\n class=\"logo-header\">\n <img\n *ngIf=\"openedOnce\"\n src=\"assets/assets-for/taon-ui/assets/shared/logo-header-admin-mode.png\" />\n </column>\n\n <column grow>\n <!-- <span>Super Admin Mode</span> -->\n </column>\n\n <column\n width=\"40\"\n *ngIf=\"\n !taonAdminService.draggablePopupModeFullScreen &&\n !taonAdminService.draggablePopupMode\n \">\n <button\n mat-icon-button\n *ngIf=\"taonAdminService.draggablePopupMode\"\n (click)=\"\n taonAdminService.draggablePopupMode = false;\n opened = false;\n wasOpenDraggablePopup = true\n \"\n class=\"admin-close-button\">\n <mat-icon>close </mat-icon>\n </button>\n\n <button\n mat-icon-button\n *ngIf=\"!taonAdminService.draggablePopupMode\"\n (click)=\"toogle()\"\n class=\"admin-close-button\">\n <mat-icon>close</mat-icon>\n </button>\n </column>\n\n <column width=\"40\">\n <button\n mat-icon-button\n *ngIf=\"!taonAdminService.draggablePopupModeFullScreen\"\n class=\"admin-close-button\"\n (click)=\"toogleFullScreen()\">\n <mat-icon>fullscreen</mat-icon>\n </button>\n <button\n mat-icon-button\n *ngIf=\"taonAdminService.draggablePopupModeFullScreen\"\n class=\"admin-close-button\"\n (click)=\"toogleFullScreen()\">\n <mat-icon>close_fullscreen</mat-icon>\n </button>\n </column>\n\n <column\n width=\"40\"\n *ngIf=\"!taonAdminService.draggablePopupModeFullScreen\">\n <button\n mat-icon-button\n *ngIf=\"!taonAdminService.draggablePopupMode\"\n (click)=\"taonAdminService.draggablePopupMode = true\"\n class=\"admin-close-button\">\n <mat-icon>launch</mat-icon>\n </button>\n\n <button\n mat-icon-button\n *ngIf=\"taonAdminService.draggablePopupMode\"\n (click)=\"taonAdminService.draggablePopupMode = false; resetDrag()\"\n class=\"admin-close-button\">\n <mat-icon style=\"transform: rotate(180deg)\">login</mat-icon>\n </button>\n </column>\n </columns-container>\n </div>\n <!-- #endregion -->\n\n <columns-container\n [ngClass]=\"{ 'draggable-column': taonAdminService.draggablePopupMode }\">\n <column grow>\n <mat-tab-group\n dynamicHeight\n (wheel)=\"scrollTabs($event)\"\n #tabGroup\n [selectedIndex]=\"selectedIndex\"\n (selectedIndexChange)=\"selectedIndex = $event\">\n <mat-tab label=\"DB/Cache\">\n <section>\n <mat-card>\n <mat-card-header>\n <mat-card-subtitle>WEBSQL MODE</mat-card-subtitle>\n </mat-card-header>\n <mat-card-content>\n <mat-checkbox\n [disabled]=\"!isWebSQLMode\"\n [ngModel]=\"taonAdminService.keepWebsqlDbDataAfterReload\"\n (change)=\"\n taonAdminService.setKeepWebsqlDbDataAfterReload(\n $event.checked\n )\n \">\n Don't remove data when reloading\n </mat-checkbox>\n </mat-card-content>\n </mat-card>\n </section>\n <br />\n <taon-db-admin />\n </mat-tab>\n </mat-tab-group>\n </column>\n </columns-container>\n</ng-template>\n<!-- #endregion -->\n\n<!-- #region small/mobile draggable popup windows -->\n<div\n class=\"draggable-popup-mode-window\"\n *ngIf=\"\n taonAdminService.draggablePopupMode &&\n !taonAdminService.draggablePopupModeFullScreen &&\n !isIframe\n \"\n cdkDrag\n [cdkDragFreeDragPosition]=\"dragPosition\"\n (cdkDragEnded)=\"moved($event)\">\n <ng-scrollbar>\n <ng-container [ngTemplateOutlet]=\"adminTabs\"></ng-container>\n </ng-scrollbar>\n</div>\n<!-- #endregion -->\n\n<!-- #region fullscreen draggable popup window -->\n<div\n class=\"draggable-popup-mode-window-full\"\n *ngIf=\"\n taonAdminService.draggablePopupMode &&\n taonAdminService.draggablePopupModeFullScreen &&\n !isIframe &&\n !reloading\n \"\n cdkDrag\n [cdkDragFreeDragPosition]=\"dragPositionZero\">\n <ng-container [ngTemplateOutlet]=\"adminTabs\"></ng-container>\n</div>\n<!-- #endregion -->\n\n<!-- #region content when not in draggable (or fullscreen draggable) popup -->\n<div\n [style.height.px]=\"height\"\n *ngIf=\"\n (isIframe ||\n !isDesktop ||\n taonAdminService.draggablePopupMode ||\n taonAdminService.draggablePopupModeFullScreen) &&\n !reloading\n \"\n style=\"width: 100%; display: block\"\n class=\"content\">\n <ng-container\n [ngTemplateOutlet]=\"\n taonAdminService.scrollableEnabled ? content : contentNoScroll\n \"></ng-container>\n</div>\n<!-- #endregion -->\n\n<!-- #region draggable popup window -->\n<mat-drawer-container\n *ngIf=\"!taonAdminService.draggablePopupMode && isDesktop && !isIframe\"\n class=\"example-container\"\n [style.height.px]=\"height\"\n style=\"background-color: transparent\"\n (backdropClick)=\"opened = false\"\n [hasBackdrop]=\"false\">\n <mat-drawer\n #drawer\n style=\"width: 580px\"\n [opened]=\"opened\"\n [mode]=\"'side'\">\n <ng-container [ngTemplateOutlet]=\"adminTabs\"></ng-container>\n </mat-drawer>\n <mat-drawer-content style=\"overflow: hidden\">\n <ng-container\n *ngIf=\"!taonAdminService.draggablePopupMode && !reloading\"\n [ngTemplateOutlet]=\"\n taonAdminService.scrollableEnabled ? content : contentNoScroll\n \"></ng-container>\n </mat-drawer-content>\n</mat-drawer-container>\n<!-- #endregion -->","//#region @browser\nexport * from './directives';\nexport * from './taon-full-material.module';\nexport * from './taon-github-fork-me-corner';\nexport * from './taon-github-fork-me-ribbon';\nexport * from './taon-notifications';\nexport * from './taon-session-passcode';\nexport * from './taon-progress-bar';\nexport * from './taon-table';\nexport * from './taon-admin-mode-configuration';\n//#endregion\n","import { CommonModule } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n EventEmitter,\n HostBinding,\n Input,\n OnInit,\n Output,\n} from '@angular/core';\nimport { NgbCollapseModule } from '@ng-bootstrap/ng-bootstrap';\nimport { BsModalService, BsModalRef, ModalModule } from 'ngx-bootstrap/modal';\nimport { Subscription } from 'rxjs';\n\n@Component({\n selector: 'taon-bootstrap-navbar',\n templateUrl: './taon-bootstrap-navbar.component.html',\n styleUrls: ['./taon-bootstrap-navbar.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [\n CommonModule,\n NgbCollapseModule,\n ModalModule,\n ],\n standalone: true,\n})\nexport class TaonBootstrapNavbarComponent implements OnInit {\n // @HostBinding('style.minHeight.px') @Input() height: number = 100;\n // @Output() taonBootstrapNavbarDataChanged = new EventEmitter();\n @Input() isLoggedIn: boolean = false;\n @Input() isCollapsed: boolean = false;\n\n ngOnInit(): void {}\n}","<nav class=\"navbar navbar-expand-lg\">\n <div class=\"container-fluid\">\n <a\n class=\"navbar-brand\"\n routerLink=\"/home\"\n routerLinkActive=\"active\">\n Home</a\n >\n <button\n class=\"navbar-toggler\"\n type=\"button\"\n (click)=\"isCollapsed = !isCollapsed\">\n <span class=\"navbar-toggler-icon\"></span>\n </button>\n\n <div\n [ngbCollapse]=\"isCollapsed\"\n class=\"navbar-collapse\">\n <ul class=\"navbar-nav ms-auto\">\n <li class=\"nav-item\">\n <a\n class=\"nav-link\"\n routerLink=\"/about\"\n routerLinkActive=\"active\"\n >O szkole</a\n >\n </li>\n <li class=\"nav-item\">\n <a\n class=\"nav-link\"\n routerLink=\"/courses\"\n routerLinkActive=\"active\"\n >Kursy</a\n >\n </li>\n <li class=\"nav-item\">\n <a\n class=\"nav-link\"\n routerLink=\"/opinions\"\n routerLinkActive=\"active\"\n >Opinie</a\n >\n </li>\n <li class=\"nav-item\">\n <a\n class=\"nav-link\"\n routerLink=\"/instructors\"\n routerLinkActive=\"active\"\n >Lektorzy</a\n >\n </li>\n <li class=\"nav-item\">\n <a\n class=\"nav-link\"\n routerLink=\"/contact\"\n routerLinkActive=\"active\"\n >Kontakt</a\n >\n </li>\n <ng-container *ngIf=\"isLoggedIn\">\n <li class=\"nav-item\">\n <a\n class=\"nav-link\"\n routerLink=\"/test\"\n routerLinkActive=\"active\"\n ><b>Test plasujący</b></a\n >\n </li>\n <li class=\"nav-item\">\n <a\n class=\"nav-link\"\n routerLink=\"/grammar\"\n routerLinkActive=\"active\"\n >Gramatyka</a\n >\n </li>\n <li class=\"nav-item\">\n <a\n class=\"nav-link\"\n routerLink=\"/vocabulary\"\n routerLinkActive=\"active\"\n >Słownictwo</a\n >\n </li>\n <li class=\"nav-item\">\n <a\n class=\"nav-link\"\n routerLink=\"/reading\"\n routerLinkActive=\"active\"\n >Czytanie</a\n >\n </li>\n <li class=\"nav-item\">\n <a\n class=\"nav-link\"\n routerLink=\"/movies\"\n routerLinkActive=\"active\"\n >Wideo</a\n >\n </li>\n <li class=\"nav-item\">\n <a\n class=\"nav-link\"\n routerLink=\"/curiosities\"\n routerLinkActive=\"active\"\n >Ciekawostki</a\n >\n </li>\n <li class=\"nav-item\">\n <a\n class=\"nav-link\"\n routerLink=\"/logout\"\n routerLinkActive=\"active\"\n >Wyloguj</a\n >\n </li>\n <li class=\"nav-item\">\n <a\n class=\"nav-link\"\n routerLink=\"/profile\"\n routerLinkActive=\"active\"\n >Profil</a\n >\n </li>\n <li class=\"nav-item\">\n <a\n class=\"nav-link\"\n routerLink=\"/admin\"\n routerLinkActive=\"active\"\n >Admin</a\n >\n </li>\n </ng-container>\n <ng-container *ngIf=\"!isLoggedIn\">\n <li class=\"nav-item\">\n <a\n class=\"nav-link\"\n href=\"javascript:void(0)\"\n (click)=\"modalLoginRegister()\">\n <span class=\"glyphicon glyphicon-hand-right\"></span> Rejestracja /\n <span class=\"glyphicon glyphicon-user\"></span> Logowanie\n </a>\n </li>\n </ng-container>\n </ul>\n </div>\n </div>\n</nav>\n<ng-content />","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["log","i1","i1.TaonNotificationsService","i2","i4","i3"],"mappings":"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"}
1
+ {"version":3,"file":"taon-ui.mjs","sources":["../../../tmp-libs-for-dist/taon-ui/projects/taon-ui/src/lib/ui/directives/taon-long-press.directive.ts","../../../tmp-libs-for-dist/taon-ui/projects/taon-ui/src/lib/ui/directives/taon-inject-html.directive.ts","../../../tmp-libs-for-dist/taon-ui/projects/taon-ui/src/lib/ui/directives/safe.pipe.ts","../../../tmp-libs-for-dist/taon-ui/projects/taon-ui/src/lib/ui/directives/index.ts","../../../tmp-libs-for-dist/taon-ui/projects/taon-ui/src/lib/ui/taon-full-material.module.ts","../../../tmp-libs-for-dist/taon-ui/projects/taon-ui/src/lib/ui/taon-github-fork-me-corner/taon-github-fork-me-corner.component.ts","../../../tmp-libs-for-dist/taon-ui/projects/taon-ui/src/lib/ui/taon-github-fork-me-corner/taon-github-fork-me-corner.component.html","../../../tmp-libs-for-dist/taon-ui/projects/taon-ui/src/lib/ui/taon-github-fork-me-corner/taon-github-fork-me-corner.module.ts","../../../tmp-libs-for-dist/taon-ui/projects/taon-ui/src/lib/ui/taon-github-fork-me-corner/index.ts","../../../tmp-libs-for-dist/taon-ui/projects/taon-ui/src/lib/ui/taon-github-fork-me-ribbon/taon-github-fork-me-ribbon.component.ts","../../../tmp-libs-for-dist/taon-ui/projects/taon-ui/src/lib/ui/taon-github-fork-me-ribbon/taon-github-fork-me-ribbon.component.html","../../../tmp-libs-for-dist/taon-ui/projects/taon-ui/src/lib/ui/taon-github-fork-me-ribbon/taon-github-fork-me-ribbon.module.ts","../../../tmp-libs-for-dist/taon-ui/projects/taon-ui/src/lib/ui/taon-github-fork-me-ribbon/index.ts","../../../tmp-libs-for-dist/taon-ui/projects/taon-ui/src/lib/ui/taon-notifications/taon-notifications.service.ts","../../../tmp-libs-for-dist/taon-ui/projects/taon-ui/src/lib/ui/taon-notifications/taon-notifications.component.ts","../../../tmp-libs-for-dist/taon-ui/projects/taon-ui/src/lib/ui/taon-notifications/taon-notifications.component.html","../../../tmp-libs-for-dist/taon-ui/projects/taon-ui/src/lib/ui/taon-notifications/taon-notifications.models.ts","../../../tmp-libs-for-dist/taon-ui/projects/taon-ui/src/lib/ui/taon-notifications/taon-notifications.module.ts","../../../tmp-libs-for-dist/taon-ui/projects/taon-ui/src/lib/ui/taon-notifications/index.ts","../../../tmp-libs-for-dist/taon-ui/projects/taon-ui/src/lib/ui/taon-session-passcode/taon-session-passcode.component.ts","../../../tmp-libs-for-dist/taon-ui/projects/taon-ui/src/lib/ui/taon-session-passcode/taon-session-passcode.component.html","../../../tmp-libs-for-dist/taon-ui/projects/taon-ui/src/lib/ui/taon-session-passcode/index.ts","../../../tmp-libs-for-dist/taon-ui/projects/taon-ui/src/lib/ui/taon-progress-bar/taon-progress-bar.component.ts","../../../tmp-libs-for-dist/taon-ui/projects/taon-ui/src/lib/ui/taon-progress-bar/taon-progress-bar.component.html","../../../tmp-libs-for-dist/taon-ui/projects/taon-ui/src/lib/ui/taon-progress-bar/taon-progress-bar.module.ts","../../../tmp-libs-for-dist/taon-ui/projects/taon-ui/src/lib/ui/taon-progress-bar/index.ts","../../../tmp-libs-for-dist/taon-ui/projects/taon-ui/src/lib/ui/taon-table/taon-table.component.ts","../../../tmp-libs-for-dist/taon-ui/projects/taon-ui/src/lib/ui/taon-table/taon-table.component.html","../../../tmp-libs-for-dist/taon-ui/projects/taon-ui/src/lib/ui/taon-table/taon-table.module.ts","../../../tmp-libs-for-dist/taon-ui/projects/taon-ui/src/lib/ui/taon-table/index.ts","../../../tmp-libs-for-dist/taon-ui/projects/taon-ui/src/lib/ui/taon-admin-mode-configuration/taon-admin-mode-configuration.component.ts","../../../tmp-libs-for-dist/taon-ui/projects/taon-ui/src/lib/ui/taon-admin-mode-configuration/taon-admin-mode-configuration.component.html","../../../tmp-libs-for-dist/taon-ui/projects/taon-ui/src/lib/ui/index.ts","../../../tmp-libs-for-dist/taon-ui/projects/taon-ui/src/lib/layouts/taon-bootstrap-navbar/taon-bootstrap-navbar.component.ts","../../../tmp-libs-for-dist/taon-ui/projects/taon-ui/src/lib/layouts/taon-bootstrap-navbar/taon-bootstrap-navbar.component.html","../../../tmp-libs-for-dist/taon-ui/projects/taon-ui/src/taon-ui.ts"],"sourcesContent":["import {\n Directive,\n Input,\n Output,\n EventEmitter,\n HostBinding,\n HostListener,\n} from '@angular/core';\n\nimport { _ } from 'tnp-core/browser';\nimport { Log, Level } from 'ng2-logger/browser';\nconst log = Log.create(`[taon-helpers] long-press`, Level.__NOTHING);\n\n@Directive({\n selector: '[taonLongPress]',\n standalone: true,\n})\nexport class TaonLongPress {\n @Input() pressDuration: number = 1000;\n\n @Output() onLongPress: EventEmitter<any> = new EventEmitter();\n @Output() onLongPressing: EventEmitter<any> = new EventEmitter();\n @Output() onLongPressEnd: EventEmitter<any> = new EventEmitter();\n\n private pressing: boolean;\n private longPressing: boolean;\n private timeout: any;\n private mouseX: number = 0;\n private mouseY: number = 0;\n\n @HostBinding('class.press')\n get press() {\n return this.pressing;\n }\n\n @HostBinding('class.longpress')\n get longPress() {\n return this.longPressing;\n }\n\n allowTrigger = false;\n triggerEnd = _.debounce(() => {\n this.endPress();\n }, 500);\n\n @HostListener('mousedown', ['$event'])\n onMouseDown(event) {\n // don't do right/middle clicks\n log.d(`MOUSE DOWN `);\n\n if (event.which !== 1) return;\n this.allowTrigger = true;\n\n this.mouseX = event.clientX;\n this.mouseY = event.clientY;\n\n this.pressing = true;\n this.longPressing = false;\n\n this.timeout = setTimeout(() => {\n if (this.allowTrigger) {\n this.longPressing = true;\n log.d(`long pressing start pressDuration:${this.pressDuration} `);\n this.onLongPress.emit(event);\n this.loop(event);\n }\n }, this.pressDuration);\n\n this.loop(event);\n }\n\n @HostListener('mousemove', ['$event'])\n onMouseMove(event) {\n if (this.pressing && !this.longPressing) {\n const xThres = event.clientX - this.mouseX > 10;\n const yThres = event.clientY - this.mouseY > 10;\n if (xThres || yThres) {\n this.endPress();\n }\n }\n }\n\n loop(event) {\n if (this.longPressing) {\n this.timeout = setTimeout(() => {\n log.d(`emil longpressing`);\n this.triggerEnd();\n this.onLongPressing.emit(event);\n this.loop(event);\n }, 50);\n }\n }\n\n endPress(emit = true) {\n this.allowTrigger = false;\n clearTimeout(this.timeout);\n this.longPressing = false;\n this.pressing = false;\n if (emit) {\n log.d(`EMIT END`);\n this.onLongPressEnd.emit(true);\n } else {\n log.d(`NOT EMIT END`);\n }\n }\n\n @HostListener('mouseup')\n onMouseUp() {\n this.endPress(false);\n }\n}","import { Directive, ElementRef, Input } from '@angular/core';\n\n@Directive({\n selector: '[taonInjectHTML]',\n standalone: true,\n})\nexport class TaonInjectHTMLDirective {\n @Input() set taonInjectHTML(content: string) {\n this.host.nativeElement.innerHTML = content;\n }\n\n constructor(private host: ElementRef) {}\n}","import { Pipe, PipeTransform } from '@angular/core';\nimport {\n DomSanitizer,\n SafeHtml,\n SafeStyle,\n SafeScript,\n SafeUrl,\n SafeResourceUrl,\n} from '@angular/platform-browser';\n\n@Pipe({\n name: 'safe',\n standalone: true,\n})\nexport class SafePipe implements PipeTransform {\n constructor(protected sanitizer: DomSanitizer) {}\n\n public transform(\n value: any,\n type: string\n ): SafeHtml | SafeStyle | SafeScript | SafeUrl | SafeResourceUrl {\n switch (type) {\n case 'html':\n return this.sanitizer.bypassSecurityTrustHtml(value);\n case 'style':\n return this.sanitizer.bypassSecurityTrustStyle(value);\n case 'script':\n return this.sanitizer.bypassSecurityTrustScript(value);\n case 'url':\n return this.sanitizer.bypassSecurityTrustUrl(value);\n case 'resourceUrl':\n return this.sanitizer.bypassSecurityTrustResourceUrl(value);\n default:\n throw new Error(`Invalid safe type specified: ${type}`);\n }\n }\n}","//#region @browser\nexport * from './taon-long-press.directive';\nexport * from './taon-inject-html.directive';\nexport * from './safe.pipe';\n//#endregion","//#region @browser\nimport { A11yModule } from '@angular/cdk/a11y';\nimport { DragDropModule } from '@angular/cdk/drag-drop';\nimport { ScrollingModule } from '@angular/cdk/scrolling';\nimport { CdkStepperModule } from '@angular/cdk/stepper';\nimport { CdkTableModule } from '@angular/cdk/table';\nimport { CdkTreeModule } from '@angular/cdk/tree';\nimport { NgModule } from '@angular/core';\nimport { MatAutocompleteModule } from '@angular/material/autocomplete';\nimport { MatBadgeModule } from '@angular/material/badge';\nimport { MatBottomSheetModule } from '@angular/material/bottom-sheet';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatCardModule } from '@angular/material/card';\nimport { MatCheckboxModule } from '@angular/material/checkbox';\nimport { MatButtonToggleModule } from '@angular/material/button-toggle';\nimport { MatStepperModule } from '@angular/material/stepper';\nimport { MatDialogModule } from '@angular/material/dialog';\nimport { MatExpansionModule } from '@angular/material/expansion';\nimport { MatGridListModule } from '@angular/material/grid-list';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatListModule } from '@angular/material/list';\nimport { MatDatepickerModule } from '@angular/material/datepicker';\nimport { MatPaginatorModule } from '@angular/material/paginator';\nimport { MatProgressBarModule } from '@angular/material/progress-bar';\nimport { MatChipsModule } from '@angular/material/chips';\nimport { MatDividerModule } from '@angular/material/divider';\nimport { MatInputModule } from '@angular/material/input';\nimport { MatMenuModule } from '@angular/material/menu';\nimport { MatNativeDateModule } from '@angular/material/core';\nimport { MatProgressSpinnerModule } from '@angular/material/progress-spinner';\nimport { MatRadioModule } from '@angular/material/radio';\nimport { MatRippleModule } from '@angular/material/core';\nimport { MatSelectModule } from '@angular/material/select';\nimport { MatSidenavModule } from '@angular/material/sidenav';\nimport { MatSliderModule } from '@angular/material/slider';\nimport { MatSlideToggleModule } from '@angular/material/slide-toggle';\nimport { MatSnackBarModule } from '@angular/material/snack-bar';\nimport { MatSortModule } from '@angular/material/sort';\nimport { MatTableModule } from '@angular/material/table';\nimport { MatTabsModule } from '@angular/material/tabs';\nimport { MatToolbarModule } from '@angular/material/toolbar';\nimport { MatTooltipModule } from '@angular/material/tooltip';\nimport { MatTreeModule } from '@angular/material/tree';\n\n/**\n * @deprecated too heavy!\n */\n@NgModule({\n exports: [\n A11yModule,\n CdkStepperModule,\n CdkTableModule,\n CdkTreeModule,\n DragDropModule,\n MatAutocompleteModule,\n MatBadgeModule,\n MatBottomSheetModule,\n MatButtonModule,\n MatButtonToggleModule,\n MatCardModule,\n MatCheckboxModule,\n MatChipsModule,\n MatStepperModule,\n MatDatepickerModule,\n MatDialogModule,\n MatDividerModule,\n MatExpansionModule,\n MatGridListModule,\n MatIconModule,\n MatInputModule,\n MatListModule,\n MatMenuModule,\n MatNativeDateModule,\n MatPaginatorModule,\n MatProgressBarModule,\n MatProgressSpinnerModule,\n MatRadioModule,\n MatRippleModule,\n MatSelectModule,\n MatSidenavModule,\n MatSliderModule,\n MatSlideToggleModule,\n MatSnackBarModule,\n MatSortModule,\n MatTableModule,\n MatTabsModule,\n MatToolbarModule,\n MatTooltipModule,\n MatTreeModule,\n ScrollingModule,\n ],\n})\nexport class TaonFullMaterialModule {}\n//#endregion","//#region @browser\nimport {\n Component,\n EventEmitter,\n HostBinding,\n Input,\n OnInit,\n Output,\n} from '@angular/core';\nimport { Subscription } from 'rxjs';\n\n@Component({\n selector: 'taon-github-fork-me-corner',\n templateUrl: './taon-github-fork-me-corner.component.html',\n styleUrls: ['./taon-github-fork-me-corner.component.scss'],\n standalone: false,\n})\nexport class TaonGithubForkMeCornerComponent {\n @Input() url: string = 'https://github.com';\n}\n//#endregion","<a href=\"{{ url }}\" class=\"github-corner\" aria-label=\"View source on GitHub\"\n ><svg\n width=\"80\"\n height=\"80\"\n viewBox=\"0 0 250 250\"\n style=\"\n fill: #151513;\n color: #fff;\n position: absolute;\n top: 0;\n border: 0;\n right: 0;\n \"\n aria-hidden=\"true\">\n <path d=\"M0,0 L115,115 L130,115 L142,142 L250,250 L250,0 Z\"></path>\n <path\n d=\"M128.3,109.0 C113.8,99.7 119.0,89.6 119.0,89.6 C122.0,82.7 120.5,78.6 120.5,78.6 C119.2,72.0 123.4,76.3 123.4,76.3 C127.3,80.9 125.5,87.3 125.5,87.3 C122.9,97.6 130.6,101.9 134.4,103.2\"\n fill=\"currentColor\"\n style=\"transform-origin: 130px 106px\"\n class=\"octo-arm\"></path>\n <path\n d=\"M115.0,115.0 C114.9,115.1 118.7,116.5 119.8,115.4 L133.7,101.6 C136.9,99.2 139.9,98.4 142.2,98.6 C133.8,88.0 127.5,74.4 143.8,58.0 C148.5,53.4 154.0,51.2 159.7,51.0 C160.3,49.4 163.2,43.6 171.4,40.1 C171.4,40.1 176.1,42.5 178.8,56.2 C183.1,58.6 187.2,61.8 190.9,65.4 C194.5,69.0 197.7,73.2 200.1,77.6 C213.8,80.2 216.3,84.9 216.3,84.9 C212.7,93.1 206.9,96.0 205.4,96.6 C205.1,102.4 203.0,107.8 198.3,112.5 C181.9,128.9 168.3,122.5 157.7,114.1 C157.9,116.9 156.7,120.9 152.7,124.9 L141.0,136.5 C139.8,137.7 141.6,141.9 141.8,141.8 Z\"\n fill=\"currentColor\"\n class=\"octo-body\"></path>\n </svg>\n</a>","//#region @browser\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { TaonGithubForkMeCornerComponent } from './taon-github-fork-me-corner.component';\n\n@NgModule({\n imports: [CommonModule],\n exports: [TaonGithubForkMeCornerComponent],\n declarations: [TaonGithubForkMeCornerComponent],\n providers: [],\n})\nexport class TaonGithubForkMeCornerModule {}\n//#endregion","//#region @browser\nexport * from './taon-github-fork-me-corner.component';\n//#endregion\n//#region @browser\nexport * from './taon-github-fork-me-corner.module';\n//#endregion","//#region @browser\nimport {\n Component,\n EventEmitter,\n HostBinding,\n Input,\n OnInit,\n Output,\n} from '@angular/core';\nimport { Subscription } from 'rxjs';\n\n@Component({\n selector: 'taon-github-fork-me-ribbon',\n templateUrl: './taon-github-fork-me-ribbon.component.html',\n styleUrls: ['./taon-github-fork-me-ribbon.component.scss'],\n standalone: false,\n})\nexport class TaonGithubForkMeRibbonComponent {\n @Input() url: string = 'https://github.com';\n}\n//#endregion","<a href=\"{{ url }}\"\n ><img\n decoding=\"async\"\n loading=\"lazy\"\n width=\"149\"\n height=\"149\"\n src=\"data:image/webp;base64,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\"\n class=\"attachment-full size-full\"\n alt=\"Fork me on GitHub\"\n data-recalc-dims=\"1\"\n/></a>","//#region @browser\nimport { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { TaonGithubForkMeRibbonComponent } from './taon-github-fork-me-ribbon.component';\n\n@NgModule({\n imports: [CommonModule],\n declarations: [TaonGithubForkMeRibbonComponent],\n exports: [TaonGithubForkMeRibbonComponent],\n})\nexport class TaonGithubForkMeRibbonModule {}\n//#endregion","//#region @browser\nexport * from './taon-github-fork-me-ribbon.component';\nexport * from './taon-github-fork-me-ribbon.module';\n//#endregion","//#region @browser\nimport { _ } from 'tnp-core/browser';\nimport { Injectable } from '@angular/core';\nimport { HotToastService } from '@ngneat/hot-toast';\nimport {\n TaonNotificationOptions,\n TaonNotificationType,\n} from './taon-notifications.models';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class TaonNotificationsService {\n constructor(private toast: HotToastService) {}\n\n private options(\n type: TaonNotificationType,\n options: TaonNotificationOptions | string\n ): TaonNotificationOptions {\n if (_.isString(options)) {\n options = {\n // @ts-ignore\n title: options,\n };\n }\n return options as TaonNotificationOptions;\n }\n\n success(options: TaonNotificationOptions | string) {\n const opt = this.options('success', options);\n return this.toast.success(opt.title);\n }\n\n error(options: TaonNotificationOptions | string) {\n const opt = this.options('error', options);\n return this.toast.error(opt.title);\n }\n\n warn(options: TaonNotificationOptions | string) {\n const opt = this.options('warning', options);\n return this.toast.warning(opt.title);\n }\n\n info(options: TaonNotificationOptions | string) {\n const opt = this.options('info', options);\n return this.toast.info(opt.title);\n }\n}\n//#endregion","//#region @browser\nimport { Component, OnInit, TemplateRef } from '@angular/core';\nimport { Subscription } from 'rxjs';\nimport { Resource } from 'ng2-rest/browser';\nimport { TaonNotificationsService } from './taon-notifications.service';\n\n@Component({\n selector: 'taon-notifications',\n templateUrl: './taon-notifications.component.html',\n styleUrls: ['./taon-notifications.component.scss'],\n standalone: false,\n})\nexport class TaonNotificationsComponent implements OnInit {\n constructor(private notification: TaonNotificationsService) {}\n\n ngOnInit() {}\n\n init(\n subscribtionsArray: Subscription[],\n template: TemplateRef<any>,\n callback: (dataToTempalte) => any\n ) {\n subscribtionsArray.push(\n Resource.listenErrors.subscribe(err => {\n this.notification.error(err.msg);\n // subscribtionsArray.push(notify.onTap.subscribe(() => {\n // callback(err);\n // this.modal.open(template);\n // }) as any);\n }) as any\n );\n }\n}\n//#endregion","<!-- <p>\n notyfications works!\n</p> -->","//#region @browser\nimport { HotToastService } from '@ngneat/hot-toast';\n\nexport class TaonNotificationOptions {\n title: string;\n subtitle?: string;\n}\n\nexport type TaonNotificationType = keyof Omit<\n HotToastService,\n 'defaultConfig' | 'observe'\n>;\n//#endregion","//#region @browser\nimport { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { TaonNotificationsComponent } from './taon-notifications.component';\n\n// import { HotToastModule } from '@ngneat/hot-toast';\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\nimport { TaonNotificationsService } from './taon-notifications.service';\n\n@NgModule({\n imports: [\n // CommonModule,\n // BrowserAnimationsModule, // required animations module\n // HotToastModule.forRoot({\n // position: 'top-right',\n // }),\n ],\n exports: [TaonNotificationsComponent],\n declarations: [TaonNotificationsComponent],\n providers: [TaonNotificationsService],\n})\nexport class TaonNotificationsModule {}\n//#endregion","//#region @browser\nexport * from './taon-notifications.component';\n//#endregion\nexport * from './taon-notifications.models';\n//#region @browser\nexport * from './taon-notifications.module';\n//#endregion\n//#region @browser\nexport * from './taon-notifications.service';\n//#endregion","import { CommonModule } from '@angular/common';\nimport {\n ChangeDetectorRef,\n Component,\n DestroyRef,\n ElementRef,\n HostBinding,\n Input,\n OnInit,\n Self,\n inject,\n} from '@angular/core';\nimport {\n FormControl,\n FormGroup,\n FormsModule,\n ReactiveFormsModule,\n} from '@angular/forms';\nimport { PasswordModule } from 'primeng/password';\nimport { Stor } from 'taon-storage/browser';\nimport { DomSanitizer, SafeHtml } from '@angular/platform-browser';\nimport { interval, take, tap } from 'rxjs';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\n\nexport interface TaonSessionPasscodeModel {\n passcode: string;\n}\n\nexport type TaonSessionPasscodeForm = {\n [prop in keyof TaonSessionPasscodeModel]: FormControl<\n TaonSessionPasscodeModel[prop]\n >;\n};\n\n@Component({\n selector: 'taon-session-passcode',\n templateUrl: './taon-session-passcode.component.html',\n styleUrls: ['./taon-session-passcode.component.scss'],\n standalone: true,\n imports: [PasswordModule, CommonModule, ReactiveFormsModule, FormsModule],\n})\nexport class TaonSessionPasscodeComponent implements OnInit {\n destroyRef = inject(DestroyRef);\n // @HostBinding('style.width.px') public width: number;\n // @HostBinding('style.height.px') public height: number;\n @Input() public passcode: string;\n @Input() public message: string;\n public safeMessage: SafeHtml;\n\n @(Stor.property.in.localstorage\n .for(TaonSessionPasscodeComponent)\n .withDefaultValue(''))\n private lastPasscode: string;\n @HostBinding('style.display') public display = 'none';\n public form: FormGroup<TaonSessionPasscodeForm> =\n new FormGroup<TaonSessionPasscodeForm>({\n passcode: new FormControl(),\n });\n constructor(\n @Self() private element: ElementRef<HTMLElement>,\n private domSanitizer: DomSanitizer,\n private cdr: ChangeDetectorRef,\n ) {}\n\n ngOnInit() {\n if (!this.passcode) {\n this.passcode = '123456';\n }\n if (!this.message) {\n this.message = `\n This website is only for testing purpose. Please type passcode bellow to see content.\n\n `;\n }\n // console.log({\n // 'lastPasscode': this.lastPasscode,\n // 'current passcode': this.passcode,\n // 'current message': this.message,\n // })\n // this.width = window.innerWidth;\n // this.height = window.innerHeight;\n this.safeMessage = this.domSanitizer.bypassSecurityTrustHtml(this.message);\n\n if (this.lastPasscode?.toString() === this.passcode?.toString()) {\n this.hide();\n } else {\n this.show();\n this.focus();\n }\n\n interval(1000)\n .pipe(\n takeUntilDestroyed(this.destroyRef),\n tap(() => {\n this.focus();\n }),\n )\n .subscribe();\n }\n\n submit({ passcode }: Partial<TaonSessionPasscodeModel>) {\n if (this.isPasscodeOK(passcode || '')) {\n this.hide();\n } else {\n this.clear();\n }\n }\n\n private isPasscodeOK(passcode: string) {\n this.lastPasscode = passcode.toString();\n return this.passcode.toString() === passcode;\n }\n\n ngAfterViewInit(): void {}\n\n public focus(): void {\n this.element.nativeElement.querySelector('input')?.focus();\n }\n\n hide() {\n this.display = 'none';\n }\n\n show() {\n this.display = 'block';\n }\n\n clear() {\n this.form.controls.passcode.setValue('');\n }\n\n onKeyup(event: KeyboardEvent & { target: { value: string } }) {\n if (this.isPasscodeOK(event.target.value || '')) {\n this.hide();\n return;\n }\n const key = event.keyCode || event.charCode;\n if (key === 8 || key === 46 || this.lastPasscode?.length > 5) {\n this.clear();\n }\n }\n}","<form\n [formGroup]=\"form\"\n content=\"notranslate\"\n autocomplete=\"off\"\n (click)=\"focus()\"\n (ngSubmit)=\"submit(form.value)\"\n class=\"flex flex-column align-items-center w-full h-full\">\n <div class=\"flex align-content-center w-full justify-content-center mt-8\">\n <p\n class=\"p-3\"\n style=\"max-width: 400px; min-height: 100px\"\n [innerHtml]=\"safeMessage\"></p>\n </div>\n <input\n type=\"password\"\n class=\"text-5xl md:text-8xl pointer-events-none\"\n #taonpasscode\n (keyup)=\"onKeyup($event)\"\n formControlName=\"passcode\" />\n <!-- placeholder=\"Enter passcode\" -->\n</form>","//#region @browser\nexport * from './taon-session-passcode.component';\n//#endregion","//#region @browser\nimport {\n Component,\n EventEmitter,\n HostBinding,\n Input,\n OnInit,\n Output,\n ViewChild,\n} from '@angular/core';\nimport { Observable, Subject, Subscription } from 'rxjs';\nimport { _ } from 'tnp-core/browser';\n\nimport axios from 'axios';\n// import {\n// NgProgressConfig,\n// NgProgressModule,\n// NgProgressRef,\n// } from 'ngx-progressbar';\nimport { Taon } from 'taon/browser';\n// import { Models } from 'tnp-models';\n// import type { TaonAdmin } from '../taon-admin-mode-configuration';\n\nconst calculatePercentage = (loaded, total) => Math.floor(loaded * 1.0) / total;\ndeclare const ENV: any;\n\n@Component({\n selector: 'taon-progress-bar',\n templateUrl: './taon-progress-bar.component.html',\n styleUrls: ['./taon-progress-bar.component.scss'],\n standalone: false,\n})\nexport class TaonProgressBarComponent implements OnInit {\n @ViewChild('labProgress') labProgress: any; // NgProgressRef;\n @Input() isDesktop: boolean;\n admin: any;\n handlers: Subscription[] = [];\n // options: NgProgressConfig = _.merge(\n // {\n // min: 8,\n // max: 100,\n // speed: 200,\n // trickleSpeed: 300,\n // debounceTime: 0,\n // ease: 'linear',\n // spinnerPosition: 'right',\n // direction: 'ltr+',\n // color: 'gray',\n // fixed: true,\n // meteor: true,\n // spinner: true,\n // thick: false,\n // },\n // _.get(ENV, `plugins['ngx-progressbar']`),\n // );\n\n constructor() {}\n\n ngOnInit() {}\n\n ngOnDestroy(): void {\n this.handlers.forEach(h => h.unsubscribe());\n }\n\n ngAfterViewInit(): void {\n // this.labProgress.set(20)\n this.loadProgressBar(void 0, axios);\n }\n\n loadProgressBar(config, instance = axios) {\n // let requestsCounter = 0;\n\n // const setupStartProgress = () => {\n // instance.interceptors.request.use(config => {\n // requestsCounter++;\n // this.labProgress.start();\n // return config;\n // });\n // };\n\n // const setupUpdateProgress = () => {\n // const update = e => {\n // // NProgress.inc(calculatePercentage(e.loaded, e.total))\n\n // const percentage = calculatePercentage(e.loaded, e.total) * 100;\n // // console.log(`loaded: ${e.loaded}, total: ${e.total} , pecent: ${percentage}`)\n // this.labProgress.inc(percentage);\n // };\n // instance.defaults.onDownloadProgress = update;\n // instance.defaults.onUploadProgress = update;\n // };\n\n // const setupStopProgress = () => {\n // const responseFunc = response => {\n // if (--requestsCounter === 0) {\n // this.labProgress.complete();\n // // NProgress.done()\n // }\n // return response;\n // };\n\n // const errorFunc = error => {\n // if (--requestsCounter === 0) {\n // this.labProgress.complete();\n // // NProgress.done()\n // }\n // return Promise.reject(error);\n // };\n\n // instance.interceptors.response.use(responseFunc, errorFunc);\n // };\n\n // setupStartProgress();\n // setupUpdateProgress();\n // setupStopProgress();\n\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n/* */\n \n }\n}\n//#endregion","<!-- <ng-progress\n #labProgress\n id=\"lab\"\n [meteor]=\"options.meteor\"\n [color]=\"options.color\"\n [min]=\"options.min\"\n [max]=\"options.max\"\n [speed]=\"options.speed\"\n [spinner]=\"\n options.spinner &&\n (!admin.adminPanelIsOpen ||\n (admin.adminPanelIsOpen && (admin.draggablePopupMode || !isDesktop)))\n \"\n [spinnerPosition]=\"options.spinnerPosition\"\n [direction]=\"options.direction\"\n [trickleSpeed]=\"options.trickleSpeed\"\n [debounceTime]=\"options.debounceTime\"\n [ease]=\"options.ease\"\n [thick]=\"options.thick\"\n [fixed]=\"options.fixed\">\n</ng-progress>\n(started)=\"onProgressStarted()\"\n (completed)=\"onProgressCompleted()\" -->","//#region @browser\nimport { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { TaonProgressBarComponent } from './taon-progress-bar.component';\n// import { NgProgressConfig, NgProgressModule } from 'ngx-progressbar';\n\n@NgModule({\n imports: [CommonModule,\n // NgProgressModule.withConfig({})\n ],\n declarations: [TaonProgressBarComponent],\n exports: [TaonProgressBarComponent],\n})\nexport class TaonProgressBarModule {}\n//#endregion","//#region @browser\nexport * from './taon-progress-bar.component';\nexport * from './taon-progress-bar.module';\n//#endregion","//#region imports\nimport {\n Component,\n OnInit,\n Input,\n Output,\n TemplateRef,\n EventEmitter,\n ViewChild,\n ElementRef,\n OnDestroy,\n} from '@angular/core';\nimport { PageEvent } from '@angular/material/paginator';\nimport { MtxGridColumn } from '@ng-matero/extensions/grid';\nimport { Log, Level } from 'ng2-logger/browser';\nimport {\n Observable,\n Subscription,\n debounceTime,\n defer,\n distinctUntilChanged,\n fromEvent,\n map,\n share,\n tap,\n} from 'rxjs';\nimport { Taon } from 'taon/browser';\nimport { _ } from 'tnp-core/browser';\nimport { json5 } from 'tnp-core/browser';\nimport { CLASS } from 'typescript-class-helpers/browser';\n//#endregion\n\n//#region constants\nconst log = Log.create('Table wrapper', Level.__NOTHING);\nconst defaultColumns = [\n {\n header: 'ID',\n field: 'id',\n },\n {\n header: 'NAME',\n field: 'name',\n },\n] as MtxGridColumn[];\n//#endregion\n\n@Component({\n //#region component options\n selector: 'taon-table',\n templateUrl: './taon-table.component.html',\n styleUrls: ['./taon-table.component.scss'],\n standalone: false,\n})\nexport class TaonTableComponent implements OnDestroy, OnInit {\n //#region fields\n @Input() public pageNumber: number = 1;\n @Input() public pageSize: number = 5;\n @Input() public allowedColumns: string[] = [];\n\n @Input() public expansionTemplate: TemplateRef<any>;\n @Input() public rows = _.times(20, id => {\n return {\n id,\n name: `Amazing ${id} row `,\n };\n });\n @Input() entityCrudController: Taon.Base.CrudController<any>;\n @Input() public columns: MtxGridColumn[] = defaultColumns as MtxGridColumn[];\n @Input() public pageSizeOptions: number[] = [5, 10, 20];\n @Input() public hideSearch: boolean;\n @Output() public expansionChange = new EventEmitter();\n\n @Output() public addingItem = new EventEmitter<void>();\n @ViewChild('search', { static: true }) search?: ElementRef<HTMLElement>;\n private searchInputChange$: Observable<string>;\n\n public expandable: boolean = false;\n public showPaginator = true;\n public isLoading = false;\n public totalElements: number = 100;\n private sub: Subscription = new Subscription();\n //#endregion\n\n get entity(): typeof Taon.Base.Entity {\n return this.entityCrudController?.entityClassResolveFn();\n }\n\n //#region hooks\n\n //#region hooks / on init\n async ngOnInit() {\n if (!this.hideSearch) {\n this.searchInputChange$ = defer(() =>\n fromEvent<KeyboardEvent>(this.search?.nativeElement as any, 'keyup'),\n ).pipe(\n map(c => c.target['value']),\n debounceTime(500),\n distinctUntilChanged(),\n share(),\n tap(data => {\n console.log({ data });\n }),\n );\n\n this.sub.add(this.searchInputChange$.subscribe());\n }\n\n const entityClass = this.entity;\n if (!!entityClass) {\n this.rows = [];\n }\n this.expandable = !!this.expansionTemplate;\n // this.arrayDataConfig.set.pagination.rowDisplayed(5);\n log.i('this.columns,', this.columns);\n const columnsConfigSameAsDefault = _.isEqual(this.columns, defaultColumns);\n // console.log({\n // columnsConfigSameAsDefault\n // })\n\n if (entityClass && columnsConfigSameAsDefault) {\n log.i(\n 'this.crud.entity',\n CLASS.describeProperites(entityClass as Function),\n );\n\n try {\n const props = CLASS.describeProperites(entityClass as Function);\n let columns = props\n .filter(prop =>\n this.allowedColumns.length > 0\n ? this.allowedColumns.includes(prop)\n : true,\n )\n .map(prop => {\n return {\n header: _.upperCase(prop),\n field: prop,\n } as MtxGridColumn;\n });\n\n const extra = this.allowedColumns.filter(f => !props.includes(f));\n columns = [\n ...columns,\n ...extra.map(prop => {\n return {\n header: _.upperCase(prop),\n field: prop,\n } as MtxGridColumn;\n }),\n ];\n\n // console.log({\n // extra\n // });\n\n if (!this.expandable) {\n for (let index = 0; index < columns.length; index++) {\n const col = columns[index];\n delete col.showExpand;\n }\n }\n this.columns = columns;\n } catch (error) {\n console.error(error);\n }\n } else {\n }\n\n if (!this.entity) {\n this.showPaginator = false;\n }\n\n await this.getData();\n }\n //#endregion\n\n //#region hooks / on destroy\n ngOnDestroy(): void {\n this.sub.unsubscribe();\n }\n //#endregion\n\n //#endregion\n\n //#region methods\n\n //#region methods / get next page\n async getNextPage(e: PageEvent) {\n // console.log({\n // e\n // });\n this.pageNumber = e.pageIndex + 1;\n this.pageSize = e.pageSize;\n await this.getData();\n }\n //#endregion\n\n //#region methods / retrive data\n async getData(): Promise<void> {\n if (!this.entity) {\n return;\n }\n this.isLoading = true;\n // console.log('PAGINTION FETCH DATA START!')\n const controller = this.entityCrudController;\n if (controller) {\n const data = await controller.pagination(this.pageNumber, this.pageSize)\n .received;\n\n // console.log('PAGINTION DATA', {\n // data,\n // });\n const totalElements = Number(\n data.headers.get(Taon.symbols.old.X_TOTAL_COUNT),\n );\n const rows = data.body.json;\n // console.log('PAGINTION DATA', {\n // rows,\n // totalElements,\n // });\n this.totalElements = totalElements;\n this.rows = rows.map(d => {\n for (const key in d) {\n if (Object.prototype.hasOwnProperty.call(d, key)) {\n const elem = d[key];\n if (_.isObject(elem)) {\n d[key] = json5.stringify(d[key]);\n }\n }\n }\n // console.log({ d })\n return d;\n });\n }\n this.isLoading = false;\n }\n //#endregion\n\n //#region methods / expansion row\n expansionRow(e) {\n this.expansionChange.next(e);\n }\n //#endregion\n\n //#region methods / on table context menu\n onTableContextMenu(e) {\n // if (this.rowHref) {\n // this.router.navigateByUrl(this.rowHref)\n // }\n log.i('context menu event', e);\n }\n //#endregion\n\n //#endregion\n}","<br />\n<columns-container *ngIf=\"!hideSearch\">\n <column grow>\n <mat-form-field class=\"search-input\">\n <input\n matInput\n placeholder=\"Type to search table...\"\n #search />\n </mat-form-field>\n </column>\n <column [width]=\"80\">\n <button\n mat-fab\n [ngClass]=\"{ 'half-opacity': !search.value }\"\n class=\"undo-button\"\n color=\"secondary\"\n (click)=\"search.value = ''\">\n <mat-icon>close </mat-icon>\n </button>\n </column>\n\n <column [width]=\"80\">\n <button\n mat-fab\n (click)=\"addingItem.next()\"\n class=\"undo-button\"\n color=\"primary\">\n <mat-icon>add</mat-icon>\n </button>\n </column>\n</columns-container>\n\n<mtx-grid\n *ngIf=\"rows && columns\"\n [data]=\"rows\"\n [columns]=\"columns\"\n [expandable]=\"expandable\"\n [expansionTemplate]=\"expansionTemplate\"\n (expansionChange)=\"expansionRow($event)\"\n [length]=\"totalElements\"\n [loading]=\"isLoading\"\n [pageOnFront]=\"false\"\n [pageIndex]=\"pageNumber - 1\"\n [pageSize]=\"pageSize\"\n [pageSizeOptions]=\"pageSizeOptions\"\n [showPaginator]=\"showPaginator\"\n (page)=\"getNextPage($event)\">\n</mtx-grid>","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport { MatButton, MatButtonModule } from '@angular/material/button';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatInputModule } from '@angular/material/input';\nimport { MatSelectModule } from '@angular/material/select';\nimport { MtxGridModule } from '@ng-matero/extensions/grid';\nimport { StaticColumnsModule } from 'static-columns/browser';\n\nimport { TaonTableComponent } from './taon-table.component';\n\n@NgModule({\n imports: [\n CommonModule,\n MatSelectModule,\n MtxGridModule,\n MatFormFieldModule,\n MatInputModule,\n StaticColumnsModule,\n MatIconModule,\n MatButtonModule,\n FormsModule,\n ReactiveFormsModule,\n ],\n exports: [TaonTableComponent],\n declarations: [TaonTableComponent],\n})\nexport class TaonTableModule {}","//#region @browser\nexport * from './taon-table.component';\n//#endregion\n//#region @browser\nexport * from './taon-table.module';\n//#endregion","//#region imports\nimport {\n CdkDrag,\n CdkDragEnd,\n CdkDragMove,\n CdkDragRelease,\n Point,\n} from '@angular/cdk/drag-drop';\nimport { CommonModule } from '@angular/common';\nimport {\n ChangeDetectorRef,\n Component,\n EventEmitter,\n HostListener,\n Injector,\n Input,\n OnInit,\n Output,\n ViewChild,\n inject,\n AfterViewInit,\n OnDestroy,\n} from '@angular/core';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport { NgScrollbarModule } from 'ngx-scrollbar';\nimport { Subject, takeUntil, tap } from 'rxjs';\nimport { StaticColumnsModule } from 'static-columns/browser';\nimport { BreakpointsService } from 'static-columns/browser';\nimport { TaonAdminService } from 'taon/browser';\nimport { Stor } from 'taon-storage/browser';\nimport { Helpers, _ } from 'tnp-core/browser';\n\nimport { TaonFullMaterialModule } from '../taon-full-material.module';\nimport { TaonNotificationsModule } from '../taon-notifications';\nimport { TaonProgressBarModule } from '../taon-progress-bar';\nimport { TaonSessionPasscodeComponent } from '../taon-session-passcode';\n\n\n//#endregion\n\ndeclare const ENV: any;\n@Component({\n //#region component options\n selector: 'taon-admin-mode-configuration',\n templateUrl: './taon-admin-mode-configuration.component.html',\n styleUrls: ['./taon-admin-mode-configuration.component.scss'],\n standalone: true,\n imports: [\n CommonModule,\n StaticColumnsModule,\n FormsModule,\n NgScrollbarModule,\n TaonProgressBarModule,\n TaonNotificationsModule,\n TaonFullMaterialModule, // TODO import only partial things\n // TaonDbAdminComponent,\n TaonSessionPasscodeComponent,\n ],\n //#endregion\n})\nexport class TaonAdminModeConfigurationComponent\n implements OnInit, AfterViewInit, OnDestroy\n{\n //#region fields & getters\n $destroy = new Subject();\n public readonly cdr = inject(ChangeDetectorRef);\n public readonly taonAdminService: TaonAdminService =\n TaonAdminService.Instance;\n public readonly isDesktop: boolean;\n public isWebSQLMode: boolean = Helpers.isWebSQL;\n public hideTaonToolsInProduction: boolean =\n ENV.hideTaonToolsInProduction && ENV.angularProd;\n public isIframe: boolean = window.location !== window.parent.location;\n public height: number = 100;\n public openedOnce = false;\n public reloading: boolean = false;\n public showPasscode: boolean =\n _.isString(ENV.passcode) || _.isObject(ENV.passcode);\n public passcode: string = _.isString(ENV.passcode)\n ? ENV.passcode\n : _.isObject(ENV.passcode)\n ? ENV.passcode.code\n : '';\n public message: string = _.isObject(ENV.passcode)\n ? ENV.passcode.message\n : void 0;\n\n // @ts-ignore\n @(Stor.property.in.localstorage\n .for(TaonAdminModeConfigurationComponent)\n .withDefaultValue(0))\n dragPositionX: number;\n\n // @ts-ignore\n @(Stor.property.in.localstorage\n .for(TaonAdminModeConfigurationComponent)\n .withDefaultValue(0))\n dragPositionY: number;\n\n dragPositionZero = { x: 0, y: 0 } as Point;\n dragPosition: Point;\n\n // @ts-ignore\n @(Stor.property.in.localstorage\n .for(TaonAdminModeConfigurationComponent)\n .withDefaultValue(0))\n selectedIndex: number;\n\n @ViewChild('tabGroup') tabGroup;\n\n // @ts-ignore\n @(Stor.property.in.localstorage\n .for(TaonAdminModeConfigurationComponent)\n .withDefaultValue(false))\n wasOpenDraggablePopup: boolean;\n\n @Output() taonAdminModeConfigurationDataChanged = new EventEmitter();\n @Input() taonAdminModeConfigurationData: any = {};\n public get opened() {\n return !this.isIframe && this.taonAdminService.adminPanelIsOpen;\n }\n public set opened(v) {\n if (v && !this.openedOnce) {\n this.openedOnce = true;\n }\n if (this.wasOpenDraggablePopup) {\n this.wasOpenDraggablePopup = false;\n this.taonAdminService.draggablePopupMode = true;\n }\n this.taonAdminService.adminPanelIsOpen = v;\n }\n //#endregion\n\n //#region constructor\n constructor(private breakpointsService: BreakpointsService) {\n this.breakpointsService\n .listenTo()\n .pipe(takeUntil(this.$destroy))\n .subscribe(breakpoint => {\n // @ts-ignore\n this.isDesktop = breakpoint === 'desktop';\n });\n }\n //#endregion\n\n //#region hooks\n async ngOnInit() {\n await Stor.awaitPendingOperatios();\n // console.log('PENDING OPERATION AWAITED ', this.selectedIndex)\n // console.log('draggablePopupModeFullScreen ', this.taonAdminService.draggablePopupModeFullScreen)\n\n this.dragPosition = { x: this.dragPositionX, y: this.dragPositionY };\n this.openedOnce = this.opened;\n // console.log('ONINIT',{\n // 'this.openedOnce': this.openedOnce,\n // 'this.dragPosition': this.dragPosition,\n // this: this\n // })\n }\n\n ngAfterViewInit(): void {\n //Called after ngAfterContentInit when the component's view has been initialized. Applies to components only.\n //Add 'implements AfterViewInit' to the class.\n setTimeout(() => {\n this.height = window.innerHeight;\n\n // TODO QUICK_FIX for draggble popup proper first index load on tabs\n if (this.taonAdminService.draggablePopupMode) {\n this.reloadTabs();\n }\n\n // const tablist = (this.tabGroup?._tabHeader?._elementRef?.nativeElement as HTMLElement).querySelector('.mat-tab-list') as HTMLElement;\n // if (tablist) {\n // tablist.style.transform = 'translateX(0px)'; // TODO QUICK_FIX\n // }\n });\n }\n\n ngOnDestroy(): void {\n this.$destroy.next(void 0);\n this.$destroy.complete();\n }\n\n @HostListener('window:resize', ['$event'])\n onResize(event: Event) {\n this.height = window.innerHeight;\n }\n\n //#endregion\n\n //#region methods\n async reloadTabs(): Promise<void> {\n return new Promise<void>(resolve => {\n this.reloading = true;\n setTimeout(() => {\n this.reloading = false;\n console.log('reloading done');\n resolve();\n });\n });\n }\n\n async toogle() {\n // await stor.setItem(IS_OPEN_ADMIN, !this.opened);\n this.opened = !this.opened;\n }\n\n async toogleFullScreen() {\n this.taonAdminService.draggablePopupMode = true;\n this.taonAdminService.draggablePopupModeFullScreen =\n !this.taonAdminService.draggablePopupModeFullScreen;\n this.resetDrag();\n }\n\n resetDrag() {\n this.dragPositionX = 0;\n this.dragPositionY = 0;\n this.dragPosition = { x: this.dragPositionX, y: this.dragPositionY };\n }\n\n moved(c: CdkDragEnd) {\n this.dragPositionX += c.distance.x;\n this.dragPositionY += c.distance.y;\n }\n\n scrollTabs(event) {\n return;\n // event?.stopPropagation();\n // event?.stopImmediatePropagation(); // TODO not working\n // const children = this.tabGroup._tabHeader._elementRef.nativeElement.children;\n // const back = children[0];\n // const forward = children[2];\n // if (event.deltaY > 0) {\n // forward.click();\n // } else {\n // back.click();\n // }\n }\n\n //#endregion\n}","<!-- #region basic global components -->\n<taon-session-passcode\n *ngIf=\"showPasscode\"\n [passcode]=\"passcode\"\n [message]=\"message\" />\n<!-- <taon-progress-bar [isDesktop]=\"isDesktop\"></taon-progress-bar> -->\n<!-- <taon-notifications></taon-notifications> -->\n<button\n mat-fab\n class=\"fab-button\"\n color=\"accent\"\n aria-label=\"Taon Admin Mode\"\n *ngIf=\"\n !taonAdminService.draggablePopupMode &&\n isDesktop &&\n !isIframe &&\n !hideTaonToolsInProduction\n \"\n (click)=\"toogle()\">\n <mat-icon>build</mat-icon>\n</button>\n<!-- #endregion -->\n\n<!-- #region small hidden button -->\n<!-- <button class=\"admin-show-button\"\n *ngIf=\"!taonAdminService.draggablePopupMode && isDesktop\"\n (click)=\"toogle()\"> Admin </button> -->\n<!-- #endregion -->\n\n<ng-template #contentNoScroll>\n <ng-content> </ng-content>\n</ng-template>\n\n<ng-template #content>\n <ng-scrollbar>\n <ng-container [ngTemplateOutlet]=\"contentNoScroll\"></ng-container>\n </ng-scrollbar>\n</ng-template>\n\n<!-- #region admin tabs -->\n<ng-template #adminTabs>\n <!-- #region admin tabs / header -->\n <div class=\"taon-header-admin-wrapper\">\n <columns-container\n class=\"taon-header-admin\"\n [ngClass]=\"{ 'draggable-column': taonAdminService.draggablePopupMode }\">\n <column\n width=\"200\"\n class=\"logo-header\">\n <img\n *ngIf=\"openedOnce\"\n src=\"assets/assets-for/taon-ui/assets/shared/logo-header-admin-mode.png\" />\n </column>\n\n <column grow>\n <!-- <span>Super Admin Mode</span> -->\n </column>\n\n <column\n width=\"40\"\n *ngIf=\"\n !taonAdminService.draggablePopupModeFullScreen &&\n !taonAdminService.draggablePopupMode\n \">\n <button\n mat-icon-button\n *ngIf=\"taonAdminService.draggablePopupMode\"\n (click)=\"\n taonAdminService.draggablePopupMode = false;\n opened = false;\n wasOpenDraggablePopup = true\n \"\n class=\"admin-close-button\">\n <mat-icon>close </mat-icon>\n </button>\n\n <button\n mat-icon-button\n *ngIf=\"!taonAdminService.draggablePopupMode\"\n (click)=\"toogle()\"\n class=\"admin-close-button\">\n <mat-icon>close</mat-icon>\n </button>\n </column>\n\n <column width=\"40\">\n <button\n mat-icon-button\n *ngIf=\"!taonAdminService.draggablePopupModeFullScreen\"\n class=\"admin-close-button\"\n (click)=\"toogleFullScreen()\">\n <mat-icon>fullscreen</mat-icon>\n </button>\n <button\n mat-icon-button\n *ngIf=\"taonAdminService.draggablePopupModeFullScreen\"\n class=\"admin-close-button\"\n (click)=\"toogleFullScreen()\">\n <mat-icon>close_fullscreen</mat-icon>\n </button>\n </column>\n\n <column\n width=\"40\"\n *ngIf=\"!taonAdminService.draggablePopupModeFullScreen\">\n <button\n mat-icon-button\n *ngIf=\"!taonAdminService.draggablePopupMode\"\n (click)=\"taonAdminService.draggablePopupMode = true\"\n class=\"admin-close-button\">\n <mat-icon>launch</mat-icon>\n </button>\n\n <button\n mat-icon-button\n *ngIf=\"taonAdminService.draggablePopupMode\"\n (click)=\"taonAdminService.draggablePopupMode = false; resetDrag()\"\n class=\"admin-close-button\">\n <mat-icon style=\"transform: rotate(180deg)\">login</mat-icon>\n </button>\n </column>\n </columns-container>\n </div>\n <!-- #endregion -->\n\n <columns-container\n [ngClass]=\"{ 'draggable-column': taonAdminService.draggablePopupMode }\">\n <column grow>\n <mat-tab-group\n dynamicHeight\n (wheel)=\"scrollTabs($event)\"\n #tabGroup\n [selectedIndex]=\"selectedIndex\"\n (selectedIndexChange)=\"selectedIndex = $event\">\n <mat-tab label=\"DB/Cache\">\n <section>\n <mat-card>\n <mat-card-header>\n <mat-card-subtitle>WEBSQL MODE</mat-card-subtitle>\n </mat-card-header>\n <mat-card-content>\n <mat-checkbox\n [disabled]=\"!isWebSQLMode\"\n [ngModel]=\"taonAdminService.keepWebsqlDbDataAfterReload\"\n (change)=\"\n taonAdminService.setKeepWebsqlDbDataAfterReload(\n $event.checked\n )\n \">\n Don't remove data when reloading\n </mat-checkbox>\n </mat-card-content>\n </mat-card>\n </section>\n <br />\n <taon-db-admin />\n </mat-tab>\n </mat-tab-group>\n </column>\n </columns-container>\n</ng-template>\n<!-- #endregion -->\n\n<!-- #region small/mobile draggable popup windows -->\n<div\n class=\"draggable-popup-mode-window\"\n *ngIf=\"\n taonAdminService.draggablePopupMode &&\n !taonAdminService.draggablePopupModeFullScreen &&\n !isIframe\n \"\n cdkDrag\n [cdkDragFreeDragPosition]=\"dragPosition\"\n (cdkDragEnded)=\"moved($event)\">\n <ng-scrollbar>\n <ng-container [ngTemplateOutlet]=\"adminTabs\"></ng-container>\n </ng-scrollbar>\n</div>\n<!-- #endregion -->\n\n<!-- #region fullscreen draggable popup window -->\n<div\n class=\"draggable-popup-mode-window-full\"\n *ngIf=\"\n taonAdminService.draggablePopupMode &&\n taonAdminService.draggablePopupModeFullScreen &&\n !isIframe &&\n !reloading\n \"\n cdkDrag\n [cdkDragFreeDragPosition]=\"dragPositionZero\">\n <ng-container [ngTemplateOutlet]=\"adminTabs\"></ng-container>\n</div>\n<!-- #endregion -->\n\n<!-- #region content when not in draggable (or fullscreen draggable) popup -->\n<div\n [style.height.px]=\"height\"\n *ngIf=\"\n (isIframe ||\n !isDesktop ||\n taonAdminService.draggablePopupMode ||\n taonAdminService.draggablePopupModeFullScreen) &&\n !reloading\n \"\n style=\"width: 100%; display: block\"\n class=\"content\">\n <ng-container\n [ngTemplateOutlet]=\"\n taonAdminService.scrollableEnabled ? content : contentNoScroll\n \"></ng-container>\n</div>\n<!-- #endregion -->\n\n<!-- #region draggable popup window -->\n<mat-drawer-container\n *ngIf=\"!taonAdminService.draggablePopupMode && isDesktop && !isIframe\"\n class=\"example-container\"\n [style.height.px]=\"height\"\n style=\"background-color: transparent\"\n (backdropClick)=\"opened = false\"\n [hasBackdrop]=\"false\">\n <mat-drawer\n #drawer\n style=\"width: 580px\"\n [opened]=\"opened\"\n [mode]=\"'side'\">\n <ng-container [ngTemplateOutlet]=\"adminTabs\"></ng-container>\n </mat-drawer>\n <mat-drawer-content style=\"overflow: hidden\">\n <ng-container\n *ngIf=\"!taonAdminService.draggablePopupMode && !reloading\"\n [ngTemplateOutlet]=\"\n taonAdminService.scrollableEnabled ? content : contentNoScroll\n \"></ng-container>\n </mat-drawer-content>\n</mat-drawer-container>\n<!-- #endregion -->","//#region @browser\nexport * from './directives';\nexport * from './taon-full-material.module';\nexport * from './taon-github-fork-me-corner';\nexport * from './taon-github-fork-me-ribbon';\nexport * from './taon-notifications';\nexport * from './taon-session-passcode';\nexport * from './taon-progress-bar';\nexport * from './taon-table';\nexport * from './taon-admin-mode-configuration';\n//#endregion","import { CommonModule } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n EventEmitter,\n HostBinding,\n Input,\n OnInit,\n Output,\n} from '@angular/core';\nimport { NgbCollapseModule } from '@ng-bootstrap/ng-bootstrap';\nimport { BsModalService, BsModalRef, ModalModule } from 'ngx-bootstrap/modal';\nimport { Subscription } from 'rxjs';\n\n@Component({\n selector: 'taon-bootstrap-navbar',\n templateUrl: './taon-bootstrap-navbar.component.html',\n styleUrls: ['./taon-bootstrap-navbar.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [\n CommonModule,\n NgbCollapseModule,\n ModalModule,\n ],\n standalone: true,\n})\nexport class TaonBootstrapNavbarComponent implements OnInit {\n // @HostBinding('style.minHeight.px') @Input() height: number = 100;\n // @Output() taonBootstrapNavbarDataChanged = new EventEmitter();\n @Input() isLoggedIn: boolean = false;\n @Input() isCollapsed: boolean = false;\n\n ngOnInit(): void {}\n}","<nav class=\"navbar navbar-expand-lg\">\n <div class=\"container-fluid\">\n <a\n class=\"navbar-brand\"\n routerLink=\"/home\"\n routerLinkActive=\"active\">\n Home</a\n >\n <button\n class=\"navbar-toggler\"\n type=\"button\"\n (click)=\"isCollapsed = !isCollapsed\">\n <span class=\"navbar-toggler-icon\"></span>\n </button>\n\n <div\n [ngbCollapse]=\"isCollapsed\"\n class=\"navbar-collapse\">\n <ul class=\"navbar-nav ms-auto\">\n <li class=\"nav-item\">\n <a\n class=\"nav-link\"\n routerLink=\"/about\"\n routerLinkActive=\"active\"\n >O szkole</a\n >\n </li>\n <li class=\"nav-item\">\n <a\n class=\"nav-link\"\n routerLink=\"/courses\"\n routerLinkActive=\"active\"\n >Kursy</a\n >\n </li>\n <li class=\"nav-item\">\n <a\n class=\"nav-link\"\n routerLink=\"/opinions\"\n routerLinkActive=\"active\"\n >Opinie</a\n >\n </li>\n <li class=\"nav-item\">\n <a\n class=\"nav-link\"\n routerLink=\"/instructors\"\n routerLinkActive=\"active\"\n >Lektorzy</a\n >\n </li>\n <li class=\"nav-item\">\n <a\n class=\"nav-link\"\n routerLink=\"/contact\"\n routerLinkActive=\"active\"\n >Kontakt</a\n >\n </li>\n <ng-container *ngIf=\"isLoggedIn\">\n <li class=\"nav-item\">\n <a\n class=\"nav-link\"\n routerLink=\"/test\"\n routerLinkActive=\"active\"\n ><b>Test plasujący</b></a\n >\n </li>\n <li class=\"nav-item\">\n <a\n class=\"nav-link\"\n routerLink=\"/grammar\"\n routerLinkActive=\"active\"\n >Gramatyka</a\n >\n </li>\n <li class=\"nav-item\">\n <a\n class=\"nav-link\"\n routerLink=\"/vocabulary\"\n routerLinkActive=\"active\"\n >Słownictwo</a\n >\n </li>\n <li class=\"nav-item\">\n <a\n class=\"nav-link\"\n routerLink=\"/reading\"\n routerLinkActive=\"active\"\n >Czytanie</a\n >\n </li>\n <li class=\"nav-item\">\n <a\n class=\"nav-link\"\n routerLink=\"/movies\"\n routerLinkActive=\"active\"\n >Wideo</a\n >\n </li>\n <li class=\"nav-item\">\n <a\n class=\"nav-link\"\n routerLink=\"/curiosities\"\n routerLinkActive=\"active\"\n >Ciekawostki</a\n >\n </li>\n <li class=\"nav-item\">\n <a\n class=\"nav-link\"\n routerLink=\"/logout\"\n routerLinkActive=\"active\"\n >Wyloguj</a\n >\n </li>\n <li class=\"nav-item\">\n <a\n class=\"nav-link\"\n routerLink=\"/profile\"\n routerLinkActive=\"active\"\n >Profil</a\n >\n </li>\n <li class=\"nav-item\">\n <a\n class=\"nav-link\"\n routerLink=\"/admin\"\n routerLinkActive=\"active\"\n >Admin</a\n >\n </li>\n </ng-container>\n <ng-container *ngIf=\"!isLoggedIn\">\n <li class=\"nav-item\">\n <a\n class=\"nav-link\"\n href=\"javascript:void(0)\"\n (click)=\"modalLoginRegister()\">\n <span class=\"glyphicon glyphicon-hand-right\"></span> Rejestracja /\n <span class=\"glyphicon glyphicon-user\"></span> Logowanie\n </a>\n </li>\n </ng-container>\n </ul>\n </div>\n </div>\n</nav>\n<ng-content />","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["log","i1","i1.TaonNotificationsService","i2","i4","i3"],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "taon-ui/browser",
3
- "version": "19.0.15",
3
+ "version": "19.0.17",
4
4
  "module": "fesm2022/taon-ui.mjs",
5
5
  "typings": "index.d.ts",
6
6
  "exports": {
@@ -1,4 +1,5 @@
1
1
  export declare const BUILD_FRAMEWORK_CLI_NAME = "tnp";
2
2
  export declare const APP_ID = "com.domain.example.taon-ui";
3
+ export declare const BUILD_BASE_HREF = "";
3
4
  export declare const PROJECT_NPM_NAME = "taon-ui";
4
- export declare const CURRENT_PACKAGE_VERSION = "19.0.15";
5
+ export declare const CURRENT_PACKAGE_VERSION = "19.0.17";
@@ -1,10 +1,11 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.CURRENT_PACKAGE_VERSION = exports.PROJECT_NPM_NAME = exports.APP_ID = exports.BUILD_FRAMEWORK_CLI_NAME = void 0;
3
+ exports.CURRENT_PACKAGE_VERSION = exports.PROJECT_NPM_NAME = exports.BUILD_BASE_HREF = exports.APP_ID = exports.BUILD_FRAMEWORK_CLI_NAME = void 0;
4
4
  // THIS FILE IS GENERATED - DO NOT MODIFY
5
5
  exports.BUILD_FRAMEWORK_CLI_NAME = 'tnp';
6
6
  exports.APP_ID = 'com.domain.example.taon-ui';
7
+ exports.BUILD_BASE_HREF = '';
7
8
  exports.PROJECT_NPM_NAME = 'taon-ui';
8
- exports.CURRENT_PACKAGE_VERSION = '19.0.15';
9
+ exports.CURRENT_PACKAGE_VERSION = '19.0.17';
9
10
  // THIS FILE IS GENERATED - DO NOT MODIFY
10
11
  //# sourceMappingURL=build-info._auto-generated_.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"build-info._auto-generated_.js","sourceRoot":"","sources":[""],"names":[],"mappings":";;;AAAA,yCAAyC;AAC5B,QAAA,wBAAwB,GAAG,KAAK,CAAC;AACjC,QAAA,MAAM,GAAG,4BAA4B,CAAC;AACtC,QAAA,gBAAgB,GAAG,SAAS,CAAC;AAC7B,QAAA,uBAAuB,GAAG,SAAS,CAAC;AACjD,yCAAyC"}
1
+ {"version":3,"file":"build-info._auto-generated_.js","sourceRoot":"","sources":[""],"names":[],"mappings":";;;AAAA,yCAAyC;AAC5B,QAAA,wBAAwB,GAAG,KAAK,CAAC;AACjC,QAAA,MAAM,GAAG,4BAA4B,CAAC;AACtC,QAAA,eAAe,GAAG,EAAE,CAAC;AACrB,QAAA,gBAAgB,GAAG,SAAS,CAAC;AAC7B,QAAA,uBAAuB,GAAG,SAAS,CAAC;AACjD,yCAAyC"}