@ -106,7 +106,7 @@
[itemCard]="installedDefaultCard"
[itemCard]="installedDefaultCard"
[loadingCell]="widgetLoadingCard"
[loadingCell]="widgetLoadingCard"
[dataLoading]="loadingWidgetBundles"
[dataLoading]="loadingWidgetBundles"
[noData]="noWidgetBundles ">
[noData]="noData ">
< / tb-scroll-grid >
< / tb-scroll-grid >
< ng-template # installedDefaultCard let-item = "item" >
< ng-template # installedDefaultCard let-item = "item" >
@switch (item.__logical) {
@switch (item.__logical) {
@ -119,7 +119,7 @@
< / div >
< / div >
< div class = "preview-container" >
< div class = "preview-container" >
< div class = "preview-spacer" > < / div >
< div class = "preview-spacer" > < / div >
< img class = "preview" src = "/assets/widget/all-widgets.sv g" alt = "{{ 'widget.all-widgets' | translate }}" >
< img class = "preview" src = "/assets/widget/all-widgets.pn g" alt = "{{ 'widget.all-widgets' | translate }}" >
< / div >
< / div >
< / mat-card >
< / mat-card >
}
}
@ -152,10 +152,6 @@
< mat-spinner strokeWidth = "5" > < / mat-spinner >
< mat-spinner strokeWidth = "5" > < / mat-spinner >
< / div >
< / div >
< / ng-template >
< / ng-template >
< ng-template # noWidgetBundles >
< span translate
class="mat-headline-5 tb-absolute-fill flex items-center justify-center">widgets-bundle.no-widgets-bundles-text< / span >
< / ng-template >
}
}
}
}
@case ('iotHub') {
@case ('iotHub') {
@ -169,7 +165,7 @@
[itemCard]="iotHubDefaultCard"
[itemCard]="iotHubDefaultCard"
[loadingCell]="widgetLoadingCard"
[loadingCell]="widgetLoadingCard"
[dataLoading]="loadingCategories"
[dataLoading]="loadingCategories"
[noData]="noCategories ">
[noData]="noData ">
< / tb-scroll-grid >
< / tb-scroll-grid >
< ng-template # iotHubDefaultCard let-item = "item" >
< ng-template # iotHubDefaultCard let-item = "item" >
@switch (item.__logical) {
@switch (item.__logical) {
@ -182,7 +178,7 @@
< / div >
< / div >
< div class = "preview-container" >
< div class = "preview-container" >
< div class = "preview-spacer" > < / div >
< div class = "preview-spacer" > < / div >
< img class = "preview" src = "/assets/widget/all-widgets.sv g" alt = "{{ 'widget.all-widgets' | translate }}" >
< img class = "preview" src = "/assets/widget/all-iot-hub-widgets.pn g" alt = "{{ 'widget.all-widgets' | translate }}" >
< / div >
< / div >
< / mat-card >
< / mat-card >
}
}
@ -195,7 +191,7 @@
< / div >
< / div >
< div class = "preview-container" >
< div class = "preview-container" >
< div class = "preview-spacer" > < / div >
< div class = "preview-spacer" > < / div >
< img class = "preview" src = "/assets/widget/installed-from-iot-hub.sv g" alt = "{{ 'iot-hub.installed-from-iot-hub' | translate }}" >
< img class = "preview" src = "/assets/widget/installed-from-iot-hub.pn g" alt = "{{ 'iot-hub.installed-from-iot-hub' | translate }}" >
< / div >
< / div >
< / mat-card >
< / mat-card >
}
}
@ -222,9 +218,6 @@
< mat-spinner color = "accent" strokeWidth = "5" > < / mat-spinner >
< mat-spinner color = "accent" strokeWidth = "5" > < / mat-spinner >
< / div >
< / div >
< / ng-template >
< / ng-template >
< ng-template # noCategories >
< span class = "mat-headline-5 tb-absolute-fill flex items-center justify-center" > {{ 'iot-hub.no-items-found' | translate }}< / span >
< / ng-template >
}
}
@case ('installed') {
@case ('installed') {
< ng-container * ngTemplateOutlet = "iotHubInstalledGrid" > < / ng-container >
< ng-container * ngTemplateOutlet = "iotHubInstalledGrid" > < / ng-container >
@ -246,7 +239,7 @@
[itemCard]="widgetCard"
[itemCard]="widgetCard"
[loadingCell]="widgetLoadingCard"
[loadingCell]="widgetLoadingCard"
[dataLoading]="loadingWidgets"
[dataLoading]="loadingWidgets"
[noData]="noWidgets ">
[noData]="noData ">
< / tb-scroll-grid >
< / tb-scroll-grid >
< ng-template # widgetCard let-item = "item" >
< ng-template # widgetCard let-item = "item" >
< mat-card class = "tb-widget-preview-card flex flex-col gap-2" appearance = "raised" ( click ) = " onWidgetClicked ( $ event , item ) " >
< mat-card class = "tb-widget-preview-card flex flex-col gap-2" appearance = "raised" ( click ) = " onWidgetClicked ( $ event , item ) " >
@ -278,9 +271,6 @@
< mat-spinner color = "accent" strokeWidth = "5" > < / mat-spinner >
< mat-spinner color = "accent" strokeWidth = "5" > < / mat-spinner >
< / div >
< / div >
< / ng-template >
< / ng-template >
< ng-template # noWidgets >
< span class = "mat-headline-5 tb-absolute-fill flex items-center justify-center" > {{ 'widget.no-widgets-text' | translate }}< / span >
< / ng-template >
< / ng-template >
< / ng-template >
< ng-template # widgetLoadingCard >
< ng-template # widgetLoadingCard >
@ -302,7 +292,7 @@
[itemCard]="iotHubWidgetCard"
[itemCard]="iotHubWidgetCard"
[loadingCell]="widgetLoadingCard"
[loadingCell]="widgetLoadingCard"
[dataLoading]="loadingIotHubWidgets"
[dataLoading]="loadingIotHubWidgets"
[noData]="noIotHubWidgets ">
[noData]="noData ">
< / tb-scroll-grid >
< / tb-scroll-grid >
< ng-template # iotHubWidgetCard let-item = "item" >
< ng-template # iotHubWidgetCard let-item = "item" >
< ng-container * ngTemplateOutlet = "iotHubWidgetCardTpl; context: { $implicit: item, showInstalledBadge: true }" > < / ng-container >
< ng-container * ngTemplateOutlet = "iotHubWidgetCardTpl; context: { $implicit: item, showInstalledBadge: true }" > < / ng-container >
@ -315,9 +305,6 @@
< mat-spinner color = "accent" strokeWidth = "5" > < / mat-spinner >
< mat-spinner color = "accent" strokeWidth = "5" > < / mat-spinner >
< / div >
< / div >
< / ng-template >
< / ng-template >
< ng-template # noIotHubWidgets >
< span class = "mat-headline-5 tb-absolute-fill flex items-center justify-center" > {{ 'iot-hub.no-items-found' | translate }}< / span >
< / ng-template >
< / ng-template >
< / ng-template >
< ng-template # iotHubInstalledGrid >
< ng-template # iotHubInstalledGrid >
@ -329,7 +316,7 @@
[itemCard]="iotHubInstalledWidgetCard"
[itemCard]="iotHubInstalledWidgetCard"
[loadingCell]="widgetLoadingCard"
[loadingCell]="widgetLoadingCard"
[dataLoading]="loadingIotHubInstalledWidgets"
[dataLoading]="loadingIotHubInstalledWidgets"
[noData]="noIotHubInstalledWidgets ">
[noData]="noData ">
< / tb-scroll-grid >
< / tb-scroll-grid >
< ng-template # iotHubInstalledWidgetCard let-item = "item" >
< ng-template # iotHubInstalledWidgetCard let-item = "item" >
< ng-container * ngTemplateOutlet = "iotHubWidgetCardTpl; context: { $implicit: item, showInstalledBadge: false }" > < / ng-container >
< ng-container * ngTemplateOutlet = "iotHubWidgetCardTpl; context: { $implicit: item, showInstalledBadge: false }" > < / ng-container >
@ -342,9 +329,30 @@
< mat-spinner color = "accent" strokeWidth = "5" > < / mat-spinner >
< mat-spinner color = "accent" strokeWidth = "5" > < / mat-spinner >
< / div >
< / div >
< / ng-template >
< / ng-template >
< ng-template # noIotHubInstalledWidgets >
< / ng-template >
< span class = "mat-headline-5 tb-absolute-fill flex items-center justify-center" > {{ 'iot-hub.no-items-found' | translate }}< / span >
< / ng-template >
< ng-template # noData >
< div class = "tb-widget-select-empty-state tb-absolute-fill flex flex-col items-center" >
< div class = "tb-widget-select-empty-inner flex flex-col items-center" >
< div class = "tb-no-data-bg" > < / div >
< h3 > {{ 'iot-hub.no-widgets-found' | translate }}< / h3 >
< p > {{ 'iot-hub.no-items-found-text' | translate }}< / p >
@if (hasActiveSearchOrFilters()) {
< button mat-flat-button color = "primary" ( click ) = " clearSearchAndFilters ( ) " >
{{ 'iot-hub.clear-all-filters' | translate }}
< / button >
}
< / div >
@if (selectWidgetMode === 'installed' & & installedSubMode === 'allWidgets') {
< div class = "tb-widget-select-browse-tip" ( click ) = " navigateToIotHubAllWidgets ( ) " >
< mat-icon class = "tb-widget-select-browse-tip-icon" > storefront< / mat-icon >
< p class = "tb-widget-select-browse-tip-text" >
< span > {{ 'iot-hub.browse-tip-prefix' | translate }} < / span > < span class = "tb-widget-select-browse-tip-link" > {{ 'iot-hub.browse-tip-link' | translate }}< / span > < span > {{ 'iot-hub.browse-tip-suffix' | translate }}< / span >
< / p >
< mat-icon class = "tb-widget-select-browse-tip-arrow" > arrow_forward< / mat-icon >
< / div >
}
< / div >
< / ng-template >
< / ng-template >
< ng-template # iotHubWidgetCardTpl let-item let-showInstalledBadge = "showInstalledBadge" >
< ng-template # iotHubWidgetCardTpl let-item let-showInstalledBadge = "showInstalledBadge" >