@indice/ng-components 0.2.173-beta.1 → 0.2.173-beta.10

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.
@@ -2592,6 +2592,86 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.3", ngImpor
2592
2592
  args: [ContentTileHeaderComponent]
2593
2593
  }] } });
2594
2594
 
2595
+ class StatsGridComponent {
2596
+ constructor() {
2597
+ this.busy = false;
2598
+ this.count = 6;
2599
+ this.loader = ['', '', '', '', '', ''];
2600
+ this.mode = 'normal';
2601
+ this.labels = ['Online', 'Offline', 'Faulted'];
2602
+ this.values = [10, 20, 30];
2603
+ this.colors = [
2604
+ 'rgb(53, 177, 201, 0.6)',
2605
+ 'rgb(168, 162, 158, 0.2)',
2606
+ 'rgb(233, 96, 96, 0.8)'
2607
+ ];
2608
+ }
2609
+ ngOnChanges(changes) {
2610
+ if (changes.count) {
2611
+ this.loader = [];
2612
+ for (let i = 0; i <= this.count; i++) {
2613
+ this.loader.push('');
2614
+ }
2615
+ }
2616
+ }
2617
+ isNumber(value) {
2618
+ return !isNaN(Number(value));
2619
+ ;
2620
+ }
2621
+ }
2622
+ StatsGridComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.3", ngImport: i0, type: StatsGridComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
2623
+ StatsGridComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.3", type: StatsGridComponent, selector: "lib-stats-grid", inputs: { busy: "busy", count: "count", mode: "mode", labels: "labels", values: "values", colors: "colors" }, usesOnChanges: true, ngImport: i0, template: "<div *ngIf=\"!busy\">\n <ul role=\"list\" class=\"grid gap-1\"\n [class.grid-cols-3]=\"mode==='normal'\"\n [class.grid-cols-5]=\"mode!=='normal'\"\n [class.grid-flow-col]=\"mode!=='normal'\">\n <ng-container *ngFor=\"let value of values; index as i\">\n <li class=\"col-span-1 flex pb-2\" *ngIf=\"mode==='normal'\">\n <div class=\"grid-cols-1 border-l-2 px-1\" [style]=\"'border-color:' + colors[i]\">\n <div class=\"text-xs text-ellipsis overflow-hidden\">{{labels[i]}}</div>\n <div *ngIf=\"isNumber(values[i])\" class=\"font-medium text-sm md:text-lg text-ellipsis overflow-hidden\">{{values[i] | number:'1.0-2':'el'}}</div>\n <div *ngIf=\"!isNumber(values[i])\" class=\"font-medium text-sm md:text-lg text-ellipsis overflow-hidden\">{{values[i]}}</div>\n </div>\n </li>\n <li class=\"col-span-1 flex pb-2\" *ngIf=\"mode!=='normal'\">\n <div class=\"grid-cols-1 border-l-2 pl-1 pr-2\" [style]=\"'border-color:' + colors[i]\">\n <div *ngIf=\"isNumber(values[i])\" class=\"font-medium text-xs lg:text-sm text-ellipsis overflow-hidden\">{{values[i] | number:'1.0-2':'el'}}</div>\n <div *ngIf=\"!isNumber(values[i])\" class=\"font-medium text-xs lg:text-sm text-ellipsis overflow-hidden\">{{values[i]}}</div>\n <div class=\"text-xs max-w-18 lg:w-auto truncate text-ellipsis overflow-hidden\">{{labels[i]}}</div>\n </div>\n </li>\n </ng-container>\n </ul>\n </div>\n <div *ngIf=\"busy\">\n <ul role=\"list\" class=\"grid gap-1\"\n [class.grid-cols-3]=\"mode==='normal'\"\n [class.grid-cols-5]=\"mode!=='normal'\"\n [class.grid-flow-col]=\"mode!=='normal'\">\n <ng-container *ngFor=\"let value of values; index as i\">\n <li class=\"animate-pulse col-span-1 flex pb-2\" *ngIf=\"mode==='normal'\">\n <div class=\"grid-cols-1 border-l-2 px-1\" style=\"border-color:rgb(168, 162, 158, 0.2)\">\n <div class=\"rounded-md bg-slate-400/25 h-3 w-14\"></div>\n <div class=\"rounded-md bg-slate-400/25 mt-2 h-4 w-6\"></div>\n </div>\n </li>\n <li class=\"animate-pulse col-span-1 flex pb-2\" *ngIf=\"mode!=='normal'\">\n <div class=\"grid-cols-1 border-l-2 pl-1 pr-2\" style=\"border-color:rgb(168, 162, 158, 0.2)\">\n <div class=\"rounded-md bg-slate-400/25 h-3 w-14\"></div>\n <div class=\"rounded-md bg-slate-400/25 mt-2 h-4 w-6\"></div>\n </div>\n </li>\n </ng-container>\n </ul>\n </div> ", dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i1.DecimalPipe, name: "number" }] });
2624
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.3", ngImport: i0, type: StatsGridComponent, decorators: [{
2625
+ type: Component,
2626
+ args: [{ selector: 'lib-stats-grid', template: "<div *ngIf=\"!busy\">\n <ul role=\"list\" class=\"grid gap-1\"\n [class.grid-cols-3]=\"mode==='normal'\"\n [class.grid-cols-5]=\"mode!=='normal'\"\n [class.grid-flow-col]=\"mode!=='normal'\">\n <ng-container *ngFor=\"let value of values; index as i\">\n <li class=\"col-span-1 flex pb-2\" *ngIf=\"mode==='normal'\">\n <div class=\"grid-cols-1 border-l-2 px-1\" [style]=\"'border-color:' + colors[i]\">\n <div class=\"text-xs text-ellipsis overflow-hidden\">{{labels[i]}}</div>\n <div *ngIf=\"isNumber(values[i])\" class=\"font-medium text-sm md:text-lg text-ellipsis overflow-hidden\">{{values[i] | number:'1.0-2':'el'}}</div>\n <div *ngIf=\"!isNumber(values[i])\" class=\"font-medium text-sm md:text-lg text-ellipsis overflow-hidden\">{{values[i]}}</div>\n </div>\n </li>\n <li class=\"col-span-1 flex pb-2\" *ngIf=\"mode!=='normal'\">\n <div class=\"grid-cols-1 border-l-2 pl-1 pr-2\" [style]=\"'border-color:' + colors[i]\">\n <div *ngIf=\"isNumber(values[i])\" class=\"font-medium text-xs lg:text-sm text-ellipsis overflow-hidden\">{{values[i] | number:'1.0-2':'el'}}</div>\n <div *ngIf=\"!isNumber(values[i])\" class=\"font-medium text-xs lg:text-sm text-ellipsis overflow-hidden\">{{values[i]}}</div>\n <div class=\"text-xs max-w-18 lg:w-auto truncate text-ellipsis overflow-hidden\">{{labels[i]}}</div>\n </div>\n </li>\n </ng-container>\n </ul>\n </div>\n <div *ngIf=\"busy\">\n <ul role=\"list\" class=\"grid gap-1\"\n [class.grid-cols-3]=\"mode==='normal'\"\n [class.grid-cols-5]=\"mode!=='normal'\"\n [class.grid-flow-col]=\"mode!=='normal'\">\n <ng-container *ngFor=\"let value of values; index as i\">\n <li class=\"animate-pulse col-span-1 flex pb-2\" *ngIf=\"mode==='normal'\">\n <div class=\"grid-cols-1 border-l-2 px-1\" style=\"border-color:rgb(168, 162, 158, 0.2)\">\n <div class=\"rounded-md bg-slate-400/25 h-3 w-14\"></div>\n <div class=\"rounded-md bg-slate-400/25 mt-2 h-4 w-6\"></div>\n </div>\n </li>\n <li class=\"animate-pulse col-span-1 flex pb-2\" *ngIf=\"mode!=='normal'\">\n <div class=\"grid-cols-1 border-l-2 pl-1 pr-2\" style=\"border-color:rgb(168, 162, 158, 0.2)\">\n <div class=\"rounded-md bg-slate-400/25 h-3 w-14\"></div>\n <div class=\"rounded-md bg-slate-400/25 mt-2 h-4 w-6\"></div>\n </div>\n </li>\n </ng-container>\n </ul>\n </div> " }]
2627
+ }], ctorParameters: function () { return []; }, propDecorators: { busy: [{
2628
+ type: Input
2629
+ }], count: [{
2630
+ type: Input
2631
+ }], mode: [{
2632
+ type: Input
2633
+ }], labels: [{
2634
+ type: Input
2635
+ }], values: [{
2636
+ type: Input
2637
+ }], colors: [{
2638
+ type: Input
2639
+ }] } });
2640
+
2641
+ class ProgressBarComponent {
2642
+ constructor() {
2643
+ this.value = 0;
2644
+ this.total = 0;
2645
+ this.text = undefined;
2646
+ this.percentage = 0;
2647
+ }
2648
+ ngOnChanges(changes) {
2649
+ if (changes.value || changes.total) {
2650
+ this.calcPercentage();
2651
+ }
2652
+ }
2653
+ calcPercentage() {
2654
+ if (this.total > 0) {
2655
+ this.percentage = (this.value / this.total) * 100;
2656
+ }
2657
+ else {
2658
+ this.percentage = 0;
2659
+ }
2660
+ }
2661
+ }
2662
+ ProgressBarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.3", ngImport: i0, type: ProgressBarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
2663
+ ProgressBarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.3", type: ProgressBarComponent, selector: "lib-progress-bar", inputs: { value: "value", total: "total", text: "text" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"flex grid grid-cols-1\">\n <div class=\"text-xs mt-2 truncate text-ellipsis\">{{value}}/{{total}} {{text}}</div>\n <div class=\"flex mt-1 h-4 rounded-md backdrop-blur-sm bg-slate-200/25\">\n <div class=\"h-2 m-1 rounded-md bg-sky-200 transition-[width] ease duration-300 transform\" [style]=\"'width:' + percentage + '%' \"></div>\n </div>\n </div>\n " });
2664
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.3", ngImport: i0, type: ProgressBarComponent, decorators: [{
2665
+ type: Component,
2666
+ args: [{ selector: 'lib-progress-bar', template: "<div class=\"flex grid grid-cols-1\">\n <div class=\"text-xs mt-2 truncate text-ellipsis\">{{value}}/{{total}} {{text}}</div>\n <div class=\"flex mt-1 h-4 rounded-md backdrop-blur-sm bg-slate-200/25\">\n <div class=\"h-2 m-1 rounded-md bg-sky-200 transition-[width] ease duration-300 transform\" [style]=\"'width:' + percentage + '%' \"></div>\n </div>\n </div>\n " }]
2667
+ }], ctorParameters: function () { return []; }, propDecorators: { value: [{
2668
+ type: Input
2669
+ }], total: [{
2670
+ type: Input
2671
+ }], text: [{
2672
+ type: Input
2673
+ }] } });
2674
+
2595
2675
  class DynamicComponentHostDirective {
2596
2676
  constructor(viewContainerRef) {
2597
2677
  this.viewContainerRef = viewContainerRef;
@@ -3895,6 +3975,47 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.3", ngImpor
3895
3975
  }]
3896
3976
  }] });
3897
3977
 
3978
+ class ShortNumberPipe {
3979
+ transform(number, args) {
3980
+ if (isNaN(number))
3981
+ return null; // will only work value is a number
3982
+ if (number === null)
3983
+ return null;
3984
+ if (number === 0)
3985
+ return null;
3986
+ let abs = Math.abs(number);
3987
+ const rounder = Math.pow(10, 1);
3988
+ const isNegative = number < 0; // will also work for Negative numbers
3989
+ let key = '';
3990
+ const powers = [
3991
+ { key: 'Q', value: Math.pow(10, 15) },
3992
+ { key: 'T', value: Math.pow(10, 12) },
3993
+ { key: 'B', value: Math.pow(10, 9) },
3994
+ { key: 'M', value: Math.pow(10, 6) },
3995
+ { key: 'K', value: 1000 }
3996
+ ];
3997
+ for (let i = 0; i < powers.length; i++) {
3998
+ let reduced = abs / powers[i].value;
3999
+ reduced = Math.round(reduced * rounder) / rounder;
4000
+ if (reduced >= 1) {
4001
+ abs = reduced;
4002
+ key = powers[i].key;
4003
+ break;
4004
+ }
4005
+ }
4006
+ return (isNegative ? '-' : '') + abs + key;
4007
+ }
4008
+ }
4009
+ ShortNumberPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.3", ngImport: i0, type: ShortNumberPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
4010
+ ShortNumberPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.0.3", ngImport: i0, type: ShortNumberPipe, name: "shortNumber", pure: false });
4011
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.3", ngImport: i0, type: ShortNumberPipe, decorators: [{
4012
+ type: Pipe,
4013
+ args: [{
4014
+ name: 'shortNumber',
4015
+ pure: false
4016
+ }]
4017
+ }] });
4018
+
3898
4019
  class BaseListComponent {
3899
4020
  constructor(route$, router$) {
3900
4021
  this.route$ = route$;
@@ -4580,6 +4701,7 @@ IndiceComponentsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0",
4580
4701
  DatepickerComponent,
4581
4702
  DropDownMenuComponent,
4582
4703
  DurationFormatPipe,
4704
+ ShortNumberPipe,
4583
4705
  DynamicComponentHostDirective,
4584
4706
  ErrorComponent,
4585
4707
  FormLayoutComponent,
@@ -4621,7 +4743,11 @@ IndiceComponentsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0",
4621
4743
  ViewLayoutComponent,
4622
4744
  ToggleButtonComponent,
4623
4745
  ToggleButtonsListComponent,
4624
- ContentTileComponent], imports: [CommonModule,
4746
+ ContentTileComponent,
4747
+ ContentTileItemComponent,
4748
+ ContentTileHeaderComponent,
4749
+ StatsGridComponent,
4750
+ ProgressBarComponent], imports: [CommonModule,
4625
4751
  RouterModule,
4626
4752
  IndiceAuthModule,
4627
4753
  FormsModule], exports: [AddressPipe,
@@ -4635,6 +4761,7 @@ IndiceComponentsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0",
4635
4761
  DatepickerComponent,
4636
4762
  DropDownMenuComponent,
4637
4763
  DurationFormatPipe,
4764
+ ShortNumberPipe,
4638
4765
  ErrorComponent,
4639
4766
  FormLayoutComponent,
4640
4767
  KpiTileComponent,
@@ -4666,7 +4793,12 @@ IndiceComponentsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0",
4666
4793
  UnauthorizedComponent,
4667
4794
  ViewLayoutComponent,
4668
4795
  ToggleButtonComponent,
4669
- ToggleButtonsListComponent] });
4796
+ ToggleButtonsListComponent,
4797
+ ContentTileComponent,
4798
+ ContentTileItemComponent,
4799
+ ContentTileHeaderComponent,
4800
+ StatsGridComponent,
4801
+ ProgressBarComponent] });
4670
4802
  IndiceComponentsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.0.3", ngImport: i0, type: IndiceComponentsModule, imports: [CommonModule,
4671
4803
  RouterModule,
4672
4804
  IndiceAuthModule,
@@ -4687,6 +4819,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.3", ngImpor
4687
4819
  DatepickerComponent,
4688
4820
  DropDownMenuComponent,
4689
4821
  DurationFormatPipe,
4822
+ ShortNumberPipe,
4690
4823
  DynamicComponentHostDirective,
4691
4824
  ErrorComponent,
4692
4825
  FormLayoutComponent,
@@ -4728,7 +4861,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.3", ngImpor
4728
4861
  ViewLayoutComponent,
4729
4862
  ToggleButtonComponent,
4730
4863
  ToggleButtonsListComponent,
4731
- ContentTileComponent
4864
+ ContentTileComponent,
4865
+ ContentTileItemComponent,
4866
+ ContentTileHeaderComponent,
4867
+ StatsGridComponent,
4868
+ ProgressBarComponent
4732
4869
  ],
4733
4870
  imports: [
4734
4871
  CommonModule,
@@ -4748,6 +4885,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.3", ngImpor
4748
4885
  DatepickerComponent,
4749
4886
  DropDownMenuComponent,
4750
4887
  DurationFormatPipe,
4888
+ ShortNumberPipe,
4751
4889
  ErrorComponent,
4752
4890
  FormLayoutComponent,
4753
4891
  KpiTileComponent,
@@ -4779,7 +4917,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.3", ngImpor
4779
4917
  UnauthorizedComponent,
4780
4918
  ViewLayoutComponent,
4781
4919
  ToggleButtonComponent,
4782
- ToggleButtonsListComponent
4920
+ ToggleButtonsListComponent,
4921
+ ContentTileComponent,
4922
+ ContentTileItemComponent,
4923
+ ContentTileHeaderComponent,
4924
+ StatsGridComponent,
4925
+ ProgressBarComponent
4783
4926
  ]
4784
4927
  }]
4785
4928
  }] });
@@ -4790,5 +4933,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.3", ngImpor
4790
4933
  * Generated bundle index. Do not edit.
4791
4934
  */
4792
4935
 
4793
- export { APP_LANGUAGES, APP_LINKS, APP_NOTIFICATIONS, AddressPipe, AuthCallbackComponent, AuthRenewComponent, AvatarInitialsComponent, BaseListComponent, BreadcrumbComponent, BreadcrumbItem, BreadcrumbRouteData, BreadcrumbService, ClickOutsideDirective, CollapsiblePanelComponent, ComboboxComponent, ComponentLoaderFactory, ContentTileComponent, ContentTileHeaderComponent, ContentTileItemComponent, DatepickerComponent, DefaultShellConfig, DropDownMenuComponent, DurationFormatPipe, ErrorComponent, ExternalNavLink, FormLayoutComponent, FragmentNavLink, HeaderMetaItem, Icons, IndiceComponentsModule, KpiTileComponent, LIBSTEPPER_ACCESSOR, LIBTABGROUP_ACCESSOR, LibStepComponent, LibStepInfoDirective, LibStepLabelDirective, LibStepperComponent, LibTabComponent, LibTabGroupComponent, LibTabLabelDirective, ListColumnComponent, ListDetailsSectionComponent, ListTileComponent, ListViewComponent, ListViewEmptyStateComponent, ListViewType, LoggedOutComponent, MODAL_CONFIG_DEFAULT_OVERRIDE, MenuOption, Modal, ModalOptions, ModalService, ModelViewLayoutComponent, NULL_TOAST, NavLink, NavLinksListComponent, NotificationNavLink, PageNotFoundComponent, PagerComponent, PagerPosition, RouterViewAction, SCREEN_SIZE, SHELL_CONFIG, ShellFooterComponent, ShellHeaderComponent, ShellLayoutComponent, ShellLayoutType, ShellSidebarComponent, ShellSidebarHeaderComponent, SidePaneComponent, SidePaneOverlayType, SidePaneSize, SideViewLayoutComponent, SkeletonLoaderComponent, StepState, StepperType, SwitchViewAction, ToastType, ToasterComponent, ToasterContainerComponent, ToasterService, ToggleButtonComponent, ToggleButtonsListComponent, ToggleComponent, UnauthorizedComponent, UserSettingsService, ViewAction, ViewLayoutComponent };
4936
+ export { APP_LANGUAGES, APP_LINKS, APP_NOTIFICATIONS, AddressPipe, AuthCallbackComponent, AuthRenewComponent, AvatarInitialsComponent, BaseListComponent, BreadcrumbComponent, BreadcrumbItem, BreadcrumbRouteData, BreadcrumbService, ClickOutsideDirective, CollapsiblePanelComponent, ComboboxComponent, ComponentLoaderFactory, ContentTileComponent, ContentTileHeaderComponent, ContentTileItemComponent, DatepickerComponent, DefaultShellConfig, DropDownMenuComponent, DurationFormatPipe, ErrorComponent, ExternalNavLink, FormLayoutComponent, FragmentNavLink, HeaderMetaItem, Icons, IndiceComponentsModule, KpiTileComponent, LIBSTEPPER_ACCESSOR, LIBTABGROUP_ACCESSOR, LibStepComponent, LibStepInfoDirective, LibStepLabelDirective, LibStepperComponent, LibTabComponent, LibTabGroupComponent, LibTabLabelDirective, ListColumnComponent, ListDetailsSectionComponent, ListTileComponent, ListViewComponent, ListViewEmptyStateComponent, ListViewType, LoggedOutComponent, MODAL_CONFIG_DEFAULT_OVERRIDE, MenuOption, Modal, ModalOptions, ModalService, ModelViewLayoutComponent, NULL_TOAST, NavLink, NavLinksListComponent, NotificationNavLink, PageNotFoundComponent, PagerComponent, PagerPosition, ProgressBarComponent, RouterViewAction, SCREEN_SIZE, SHELL_CONFIG, ShellFooterComponent, ShellHeaderComponent, ShellLayoutComponent, ShellLayoutType, ShellSidebarComponent, ShellSidebarHeaderComponent, ShortNumberPipe, SidePaneComponent, SidePaneOverlayType, SidePaneSize, SideViewLayoutComponent, SkeletonLoaderComponent, StatsGridComponent, StepState, StepperType, SwitchViewAction, ToastType, ToasterComponent, ToasterContainerComponent, ToasterService, ToggleButtonComponent, ToggleButtonsListComponent, ToggleComponent, UnauthorizedComponent, UserSettingsService, ViewAction, ViewLayoutComponent };
4794
4937
  //# sourceMappingURL=indice-ng-components.mjs.map