@theseam/ui-common 0.2.17 → 0.3.2
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/breadcrumbs/_breadcrumbs-theme.scss +3 -0
- package/breadcrumbs/breadcrumbs/breadcrumbs.component.scss +10 -0
- package/breadcrumbs/styles/_utilities.scss +3 -0
- package/breadcrumbs/styles/_variables.scss +1 -0
- package/breadcrumbs/theseam-ui-common-breadcrumbs.metadata.json +1 -1
- package/bundles/theseam-ui-common-breadcrumbs.umd.js +2 -1
- package/bundles/theseam-ui-common-breadcrumbs.umd.js.map +1 -1
- package/bundles/theseam-ui-common-form-field.umd.js +1 -1
- package/bundles/theseam-ui-common-form-field.umd.js.map +1 -1
- package/bundles/theseam-ui-common-framework.umd.js +18 -15
- package/bundles/theseam-ui-common-framework.umd.js.map +1 -1
- package/bundles/theseam-ui-common-google-maps.umd.js +2202 -0
- package/bundles/theseam-ui-common-google-maps.umd.js.map +1 -0
- package/bundles/theseam-ui-common-menu.umd.js +1 -0
- package/bundles/theseam-ui-common-menu.umd.js.map +1 -1
- package/bundles/theseam-ui-common-scrollbar.umd.js +1 -1
- package/bundles/theseam-ui-common-scrollbar.umd.js.map +1 -1
- package/bundles/theseam-ui-common-tel-input.umd.js +59 -7
- package/bundles/theseam-ui-common-tel-input.umd.js.map +1 -1
- package/bundles/theseam-ui-common-utils.umd.js +610 -136
- package/bundles/theseam-ui-common-utils.umd.js.map +1 -1
- package/bundles/theseam-ui-common-viewers.umd.js +269 -4
- package/bundles/theseam-ui-common-viewers.umd.js.map +1 -1
- package/bundles/theseam-ui-common-widget.umd.js +1 -1
- package/esm2015/breadcrumbs/breadcrumbs/breadcrumbs.component.js +4 -3
- package/esm2015/form-field/input.directive.js +2 -2
- package/esm2015/framework/base-layout/base-layout.component.js +3 -3
- package/esm2015/framework/top-bar/top-bar-menu-button/top-bar-menu-button.component.js +5 -5
- package/esm2015/framework/top-bar/top-bar-title/top-bar-title.component.js +4 -3
- package/esm2015/framework/top-bar/top-bar.component.js +10 -8
- package/esm2015/google-maps/google-maps/google-maps.component.js +261 -0
- package/esm2015/google-maps/google-maps-contextmenu.js +113 -0
- package/esm2015/google-maps/google-maps-controls.service.js +70 -0
- package/esm2015/google-maps/google-maps-feature-helpers.js +177 -0
- package/esm2015/google-maps/google-maps-places-autocomplete/google-maps-places-autocomplete.component.js +195 -0
- package/esm2015/google-maps/google-maps-places-autocomplete/google-maps-places-autocomplete.directive.js +163 -0
- package/esm2015/google-maps/google-maps-recenter-button-control/google-maps-recenter-button-control.component.js +57 -0
- package/esm2015/google-maps/google-maps-upload-button-control/google-maps-upload-button-control.component.js +119 -0
- package/esm2015/google-maps/google-maps.module.js +45 -0
- package/esm2015/google-maps/google-maps.service.js +344 -0
- package/esm2015/google-maps/map-control.component.js +65 -0
- package/esm2015/google-maps/map-controls-service.js +4 -0
- package/esm2015/google-maps/map-file-drop/map-file-drop.component.js +135 -0
- package/esm2015/google-maps/map-value-manager.service.js +46 -0
- package/esm2015/google-maps/public-api.js +14 -0
- package/esm2015/google-maps/theseam-ui-common-google-maps.js +6 -0
- package/esm2015/menu/menu-toggle.directive.js +2 -1
- package/esm2015/scrollbar/overlay-scrollbar.directive.js +2 -2
- package/esm2015/tel-input/tel-input/tel-input.component.js +10 -2
- package/esm2015/tel-input/tel-input.directive.js +50 -5
- package/esm2015/utils/geo-json/coerce-feature-collection.js +44 -0
- package/esm2015/utils/geo-json/geo-json-to-area.js +11 -0
- package/esm2015/utils/geo-json/is-feature-collection.validator.js +21 -0
- package/esm2015/utils/geo-json/is-only-geometry-types.js +23 -0
- package/esm2015/utils/geo-json/is-only-geometry-types.validator.js +32 -0
- package/esm2015/utils/geo-json/merge-polygons.js +35 -0
- package/esm2015/utils/geo-json/no-inner-rings.validator.js +63 -0
- package/esm2015/utils/geo-json/no-kinks.validator.js +39 -0
- package/esm2015/utils/geo-json/read-geo-file.js +99 -0
- package/esm2015/utils/geo-json/split-multi-polygons.js +29 -0
- package/esm2015/utils/is-null-or-undefined.js +1 -1
- package/esm2015/utils/public-api.js +11 -1
- package/esm2015/viewers/html-template-viewer/html-template-viewer.component.js +219 -0
- package/esm2015/viewers/html-template-viewer/html-template-viewer.module.js +23 -0
- package/esm2015/viewers/html-template-viewer/index.js +3 -0
- package/esm2015/viewers/public-api.js +2 -1
- package/esm2015/widget/widget/widget.component.js +1 -1
- package/fesm2015/theseam-ui-common-breadcrumbs.js +3 -2
- package/fesm2015/theseam-ui-common-breadcrumbs.js.map +1 -1
- package/fesm2015/theseam-ui-common-form-field.js +1 -1
- package/fesm2015/theseam-ui-common-form-field.js.map +1 -1
- package/fesm2015/theseam-ui-common-framework.js +15 -12
- package/fesm2015/theseam-ui-common-framework.js.map +1 -1
- package/fesm2015/theseam-ui-common-google-maps.js +1729 -0
- package/fesm2015/theseam-ui-common-google-maps.js.map +1 -0
- package/fesm2015/theseam-ui-common-menu.js +1 -0
- package/fesm2015/theseam-ui-common-menu.js.map +1 -1
- package/fesm2015/theseam-ui-common-scrollbar.js +1 -1
- package/fesm2015/theseam-ui-common-scrollbar.js.map +1 -1
- package/fesm2015/theseam-ui-common-tel-input.js +58 -6
- package/fesm2015/theseam-ui-common-tel-input.js.map +1 -1
- package/fesm2015/theseam-ui-common-utils.js +477 -94
- package/fesm2015/theseam-ui-common-utils.js.map +1 -1
- package/fesm2015/theseam-ui-common-viewers.js +237 -2
- package/fesm2015/theseam-ui-common-viewers.js.map +1 -1
- package/fesm2015/theseam-ui-common-widget.js +1 -1
- package/form-field/theseam-ui-common-form-field.metadata.json +1 -1
- package/framework/base-layout/base-layout.component.scss +14 -0
- package/framework/base-layout/styles/_variables.scss +14 -0
- package/framework/theseam-ui-common-framework.metadata.json +1 -1
- package/framework/top-bar/_top-bar-theme.scss +5 -0
- package/framework/top-bar/styles/_utilities.scss +3 -0
- package/framework/top-bar/styles/_variables.scss +18 -0
- package/framework/top-bar/top-bar-menu-button/top-bar-menu-button.component.d.ts +3 -1
- package/framework/top-bar/top-bar-menu-button/top-bar-menu-button.component.scss +15 -0
- package/framework/top-bar/top-bar-title/top-bar-title.component.scss +6 -0
- package/framework/top-bar/top-bar.component.d.ts +3 -0
- package/framework/top-bar/top-bar.component.scss +39 -0
- package/google-maps/google-maps/google-maps.component.d.ts +89 -0
- package/google-maps/google-maps-contextmenu.d.ts +15 -0
- package/google-maps/google-maps-controls.service.d.ts +23 -0
- package/google-maps/google-maps-feature-helpers.d.ts +37 -0
- package/google-maps/google-maps-places-autocomplete/google-maps-places-autocomplete.component.d.ts +104 -0
- package/google-maps/google-maps-places-autocomplete/google-maps-places-autocomplete.directive.d.ts +80 -0
- package/google-maps/google-maps-recenter-button-control/google-maps-recenter-button-control.component.d.ts +21 -0
- package/google-maps/google-maps-upload-button-control/google-maps-upload-button-control.component.d.ts +34 -0
- package/google-maps/google-maps.module.d.ts +2 -0
- package/google-maps/google-maps.service.d.ts +53 -0
- package/google-maps/map-control.component.d.ts +20 -0
- package/google-maps/map-controls-service.d.ts +13 -0
- package/google-maps/map-file-drop/map-file-drop.component.d.ts +34 -0
- package/google-maps/map-value-manager.service.d.ts +18 -0
- package/google-maps/package.json +11 -0
- package/google-maps/public-api.d.ts +13 -0
- package/google-maps/theseam-ui-common-google-maps.d.ts +5 -0
- package/google-maps/theseam-ui-common-google-maps.metadata.json +1 -0
- package/package.json +17 -10
- package/tel-input/tel-input.directive.d.ts +7 -3
- package/tel-input/theseam-ui-common-tel-input.metadata.json +1 -1
- package/utils/geo-json/coerce-feature-collection.d.ts +2 -0
- package/utils/geo-json/geo-json-to-area.d.ts +6 -0
- package/utils/geo-json/is-feature-collection.validator.d.ts +3 -0
- package/utils/geo-json/is-only-geometry-types.d.ts +5 -0
- package/utils/geo-json/is-only-geometry-types.validator.d.ts +4 -0
- package/utils/geo-json/merge-polygons.d.ts +9 -0
- package/utils/geo-json/no-inner-rings.validator.d.ts +10 -0
- package/utils/geo-json/no-kinks.validator.d.ts +3 -0
- package/utils/geo-json/read-geo-file.d.ts +7 -0
- package/utils/geo-json/split-multi-polygons.d.ts +8 -0
- package/utils/is-null-or-undefined.d.ts +1 -1
- package/utils/public-api.d.ts +10 -0
- package/utils/theseam-ui-common-utils.metadata.json +1 -1
- package/viewers/html-template-viewer/html-template-viewer.component.d.ts +67 -0
- package/viewers/html-template-viewer/html-template-viewer.module.d.ts +2 -0
- package/viewers/html-template-viewer/index.d.ts +2 -0
- package/viewers/public-api.d.ts +1 -0
- package/viewers/theseam-ui-common-viewers.metadata.json +1 -1
- package/widget/styles/_variables.scss +2 -0
- package/widget/theseam-ui-common-widget.metadata.json +1 -1
- package/widget/widget/widget.component.scss +2 -0
|
@@ -22,8 +22,8 @@ import { trigger, transition, group, query, animateChild, state, style, animate,
|
|
|
22
22
|
import { NavigationEnd, Router, RouterModule, NavigationStart, ActivatedRoute } from '@angular/router';
|
|
23
23
|
import { A11yModule } from '@angular/cdk/a11y';
|
|
24
24
|
import { NgbTooltipModule } from '@ng-bootstrap/ng-bootstrap';
|
|
25
|
-
import { faUserCircle } from '@fortawesome/free-regular-svg-icons';
|
|
26
25
|
import { MenuComponent, TheSeamMenuModule } from '@theseam/ui-common/menu';
|
|
26
|
+
import { faUserCircle } from '@fortawesome/free-regular-svg-icons';
|
|
27
27
|
import { JsonSchemaFormService, isArray, buildTitleMap, hasOwn, Framework, JsonSchemaFormModule, WidgetLibraryModule, FrameworkLibraryService, WidgetLibraryService } from '@ajsf/core';
|
|
28
28
|
import { ReactiveFormsModule } from '@angular/forms';
|
|
29
29
|
import { NgSelectModule } from '@ng-select/ng-select';
|
|
@@ -223,11 +223,11 @@ class TheSeamBaseLayoutComponent {
|
|
|
223
223
|
TheSeamBaseLayoutComponent.decorators = [
|
|
224
224
|
{ type: Component, args: [{
|
|
225
225
|
selector: 'seam-base-layout',
|
|
226
|
-
template: "<div class=\"base-layout-side-bar-nav-content-mobile\" *ngIf=\"isMobile$ | async\">\n <ng-template [cdkPortalOutlet]=\"_sideBarPortal\"></ng-template>\n</div>\n\n<div class=\"base-layout-top-bar-container
|
|
226
|
+
template: "<div class=\"base-layout-side-bar-nav-content-mobile\" *ngIf=\"isMobile$ | async\">\n <ng-template [cdkPortalOutlet]=\"_sideBarPortal\"></ng-template>\n</div>\n\n<div class=\"base-layout-top-bar-container\">\n <ng-template [cdkPortalOutlet]=\"_topBarPortal\"></ng-template>\n</div>\n<div class=\"base-layout-main-container\">\n <div *ngIf=\"hasSideBar$ | async\"\n class=\"base-layout-side-bar-container\">\n <div class=\"base-layout-side-bar-nav-content\" *ngIf=\"!(isMobile$ | async)\">\n <ng-template [cdkPortalOutlet]=\"_sideBarPortal\"></ng-template>\n </div>\n </div>\n <div class=\"base-layout-content-container\">\n <div class=\"base-layout-content-container-header\">\n <!-- <ng-template [cdkPortalOutlet]=\"_contentHeaderPortal\"></ng-template> -->\n\n <div class=\"d-flex d-flex-row\">\n <div class=\"flex-grow-1\">\n <ng-template [cdkPortalOutlet]=\"_contentHeaderPortal\"></ng-template>\n </div>\n <div class=\"d-flex\">\n <ng-container *ngFor=\"let action of registeredActions$ | async; first as isFirst\">\n <div>\n <ng-container [ngTemplateOutlet]=\"$any(action)?.template\"></ng-container>\n </div>\n </ng-container>\n </div>\n </div>\n\n\n </div>\n <div class=\"base-layout-content-container-inner\" seamOverlayScrollbar>\n <ng-template [cdkPortalOutlet]=\"_contentPortal\"></ng-template>\n </div>\n <div class=\"base-layout-content-container-footer\">\n <ng-template [cdkPortalOutlet]=\"_contentFooterPortal\"></ng-template>\n </div>\n </div>\n</div>\n",
|
|
227
227
|
providers: [THE_SEAM_BASE_LAYOUT],
|
|
228
228
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
229
229
|
encapsulation: ViewEncapsulation.None,
|
|
230
|
-
styles: ["seam-base-layout{display:flex;flex-direction:column;height:100%;width:100%}seam-base-layout .base-layout-side-bar-nav-content-mobile{position:absolute;top:0;bottom:0;left:0;float:left;z-index:9999}seam-base-layout .base-layout-side-bar-container{flex:0 0 auto;display:flex;flex-direction:column}seam-base-layout .base-layout-side-bar-container .base-layout-side-bar-nav-content{flex:1 1 0}seam-base-layout .base-layout-main-container{flex:1 1 100%;display:flex;flex-direction:row;transform:translateZ(0)}seam-base-layout .base-layout-top-bar-container{flex:0 0 auto}seam-base-layout .base-layout-content-container{flex:1 1 auto;display:flex;flex-direction:column}seam-base-layout .base-layout-content-container .base-layout-content-container-header{flex:0 0 auto}seam-base-layout .base-layout-content-container .base-layout-content-container-inner{flex:1 1 auto}seam-base-layout .base-layout-content-container .base-layout-content-container-footer{flex:0 0 auto}seam-base-layout .base-layout-content-container-header{margin:.25rem}seam-base-layout .btn-baselayout-action{margin:0 0 0 .25rem;color:#212529;background-color:#e9ecef;border-color:#e9ecef;padding:.5rem 1rem;font-size:1rem;line-height:1.5;border-radius:.25rem;border:none;color:#6c757d}seam-base-layout .btn-baselayout-action:hover{color:#212529;background-color:#d3d9df;border-color:#cbd3da}seam-base-layout .btn-baselayout-action:focus,seam-base-layout .btn-baselayout-action.focus{color:#212529;background-color:#d3d9df;border-color:#cbd3da;box-shadow:0 0 0 .2rem #cbced180}seam-base-layout .btn-baselayout-action.disabled,seam-base-layout .btn-baselayout-action:disabled{color:#212529;background-color:#e9ecef;border-color:#e9ecef}seam-base-layout .btn-baselayout-action:not(:disabled):not(.disabled):active,seam-base-layout .btn-baselayout-action:not(:disabled):not(.disabled).active,.show>seam-base-layout .btn-baselayout-action.dropdown-toggle{color:#212529;background-color:#d3d9df;border-color:#c4ccd4}seam-base-layout .btn-baselayout-action:not(:disabled):not(.disabled):active:focus,seam-base-layout .btn-baselayout-action:not(:disabled):not(.disabled).active:focus,.show>seam-base-layout .btn-baselayout-action.dropdown-toggle:focus{box-shadow:0 0 0 .2rem #cbced180}seam-base-layout .btn-baselayout-action:hover{color:#6c757d}seam-base-layout .btn-baselayout-action:focus,seam-base-layout .btn-baselayout-action.focus{color:#6c757d}\n"]
|
|
230
|
+
styles: ["seam-base-layout{display:flex;flex-direction:column;height:100%;width:100%}seam-base-layout .base-layout-side-bar-nav-content-mobile{position:absolute;top:0;bottom:0;left:0;float:left;z-index:9999}seam-base-layout .base-layout-side-bar-container{flex:0 0 auto;display:flex;flex-direction:column;border-top:none;border-right:1px solid #dee2e6;border-bottom:none;border-left:none}seam-base-layout .base-layout-side-bar-container .base-layout-side-bar-nav-content{flex:1 1 0}seam-base-layout .base-layout-main-container{flex:1 1 100%;display:flex;flex-direction:row;transform:translateZ(0)}seam-base-layout .base-layout-top-bar-container{flex:0 0 auto;border-top:none;border-right:none;border-bottom:1px solid #dee2e6;border-left:none}seam-base-layout .base-layout-content-container{flex:1 1 auto;display:flex;flex-direction:column}seam-base-layout .base-layout-content-container .base-layout-content-container-header{flex:0 0 auto}seam-base-layout .base-layout-content-container .base-layout-content-container-inner{flex:1 1 auto}seam-base-layout .base-layout-content-container .base-layout-content-container-footer{flex:0 0 auto}seam-base-layout .base-layout-content-container-header{margin:.25rem;padding:0;background:none;border-radius:0;overflow:hidden}seam-base-layout .btn-baselayout-action{margin:0 0 0 .25rem;color:#212529;background-color:#e9ecef;border-color:#e9ecef;padding:.5rem 1rem;font-size:1rem;line-height:1.5;border-radius:.25rem;border:none;color:#6c757d}seam-base-layout .btn-baselayout-action:hover{color:#212529;background-color:#d3d9df;border-color:#cbd3da}seam-base-layout .btn-baselayout-action:focus,seam-base-layout .btn-baselayout-action.focus{color:#212529;background-color:#d3d9df;border-color:#cbd3da;box-shadow:0 0 0 .2rem #cbced180}seam-base-layout .btn-baselayout-action.disabled,seam-base-layout .btn-baselayout-action:disabled{color:#212529;background-color:#e9ecef;border-color:#e9ecef}seam-base-layout .btn-baselayout-action:not(:disabled):not(.disabled):active,seam-base-layout .btn-baselayout-action:not(:disabled):not(.disabled).active,.show>seam-base-layout .btn-baselayout-action.dropdown-toggle{color:#212529;background-color:#d3d9df;border-color:#c4ccd4}seam-base-layout .btn-baselayout-action:not(:disabled):not(.disabled):active:focus,seam-base-layout .btn-baselayout-action:not(:disabled):not(.disabled).active:focus,.show>seam-base-layout .btn-baselayout-action.dropdown-toggle:focus{box-shadow:0 0 0 .2rem #cbced180}seam-base-layout .btn-baselayout-action:hover{color:#6c757d}seam-base-layout .btn-baselayout-action:focus,seam-base-layout .btn-baselayout-action.focus{color:#6c757d}\n"]
|
|
231
231
|
},] }
|
|
232
232
|
];
|
|
233
233
|
TheSeamBaseLayoutComponent.ctorParameters = () => [
|
|
@@ -1610,7 +1610,6 @@ class TopBarMenuButtonComponent extends _TopBarMenuButtonMixinBase {
|
|
|
1610
1610
|
constructor() {
|
|
1611
1611
|
super(...arguments);
|
|
1612
1612
|
this.faAngleDown = faAngleDown;
|
|
1613
|
-
this.profileIcon = faUserCircle;
|
|
1614
1613
|
this.compact = false;
|
|
1615
1614
|
}
|
|
1616
1615
|
get _hasCompactClass() { return this.compact; }
|
|
@@ -1625,6 +1624,7 @@ TopBarMenuButtonComponent.decorators = [
|
|
|
1625
1624
|
// tslint:disable-next-line:component-selector
|
|
1626
1625
|
selector: 'button[seamTopBarMenuButton]',
|
|
1627
1626
|
template: "<div class=\"d-flex flex-row\" *ngIf=\"!compact; else compactTpl\">\n <div class=\"text-left flex-grow-1 text-truncate\">\n <ng-template [ngTemplateOutlet]=\"$any(detailTpl)\"></ng-template>\n </div>\n <!-- Arrow Button -->\n <div class=\"pl-2 d-flex flex-column\">\n <div class=\"flex-grow-1\"></div>\n <seam-icon class=\"d-block\" [icon]=\"faAngleDown\"></seam-icon>\n <div class=\"flex-grow-1\"></div>\n </div>\n</div>\n<ng-template #compactTpl>\n <seam-icon [icon]=\"profileIcon\" iconType=\"borderless-styled-square\"></seam-icon>\n</ng-template>\n",
|
|
1627
|
+
encapsulation: ViewEncapsulation.None,
|
|
1628
1628
|
exportAs: 'seamButton',
|
|
1629
1629
|
// tslint:disable-next-line:use-input-property-decorator
|
|
1630
1630
|
inputs: ['disabled'],
|
|
@@ -1636,12 +1636,13 @@ TopBarMenuButtonComponent.decorators = [
|
|
|
1636
1636
|
'[attr.disabled]': 'disabled || null',
|
|
1637
1637
|
},
|
|
1638
1638
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1639
|
-
styles: ["
|
|
1639
|
+
styles: ["button[seamTopBarMenuButton]{min-width:200px;border-radius:0;border-top:0!important;border-bottom:0!important;border-right:0!important}button[seamTopBarMenuButton].top-bar-menu-button--compact{min-width:40px;border-left:0!important}\n"]
|
|
1640
1640
|
},] }
|
|
1641
1641
|
];
|
|
1642
1642
|
TopBarMenuButtonComponent.propDecorators = {
|
|
1643
1643
|
detailTpl: [{ type: Input }],
|
|
1644
1644
|
compact: [{ type: Input }],
|
|
1645
|
+
profileIcon: [{ type: Input }],
|
|
1645
1646
|
_hasCompactClass: [{ type: HostBinding, args: ['class.top-bar-menu-button--compact',] }],
|
|
1646
1647
|
_hasPadding0Class: [{ type: HostBinding, args: ['class.p-0',] }],
|
|
1647
1648
|
_hasRoundedClass: [{ type: HostBinding, args: ['class.rounded',] }],
|
|
@@ -1659,8 +1660,9 @@ TopBarTitleComponent.decorators = [
|
|
|
1659
1660
|
{ type: Component, args: [{
|
|
1660
1661
|
selector: 'seam-top-bar-title',
|
|
1661
1662
|
template: "<h2 class=\"mb-0\" [ngStyle]=\"{ 'font-size.px': 32 }\" [ngStyle.lt-md]=\"{ 'font-size.px': 26 }\" [ngStyle.lt-sm]=\"{ 'font-size.px': 20, 'line-height': 1 }\">\n {{ titleText }}\n <br fxHide.gt-sm>\n <small *ngIf=\"subTitleText\" class=\"text-muted\">{{ subTitleText }}</small>\n</h2>\n",
|
|
1663
|
+
encapsulation: ViewEncapsulation.None,
|
|
1662
1664
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1663
|
-
styles: ["
|
|
1665
|
+
styles: ["seam-top-bar-title{flex:1 1 auto;display:flex;flex-direction:row;align-items:center}\n"]
|
|
1664
1666
|
},] }
|
|
1665
1667
|
];
|
|
1666
1668
|
TopBarTitleComponent.ctorParameters = () => [];
|
|
@@ -1735,6 +1737,8 @@ class TheSeamTopBarComponent {
|
|
|
1735
1737
|
this.logoRoute = '/';
|
|
1736
1738
|
/** Determines if the title should be displayed. */
|
|
1737
1739
|
this.hasTitle = false;
|
|
1740
|
+
/** Icon to display on mobile to activate profile dropdown. Defaults to faUserCircle. */
|
|
1741
|
+
this.profileIcon = faUserCircle;
|
|
1738
1742
|
this.isMobile$ = this._layout.isMobile$;
|
|
1739
1743
|
}
|
|
1740
1744
|
/** @ignore */
|
|
@@ -1754,13 +1758,11 @@ class TheSeamTopBarComponent {
|
|
|
1754
1758
|
TheSeamTopBarComponent.decorators = [
|
|
1755
1759
|
{ type: Component, args: [{
|
|
1756
1760
|
selector: 'seam-top-bar',
|
|
1757
|
-
template: "<!-- Nav Toggle -->\n<div class=\"d-flex flex-column justify-content-center pr-2\" *ngIf=\"isMobile$ | async\">\n <button seamBaseLayoutNavToggle seamIconBtn [icon]=\"faBars\" iconType=\"borderless-styled-square\"></button>\n</div>\n\n<!-- Logo -->\n<div class=\"top-bar--logo d-flex flex-column justify-content-center\" *ngIf=\"logoHref; else useLogoRoute\"\n [class.top-bar--logo-mobile]=\"isMobile$ | async\">\n <a [href]=\"logoHref\" [target]=\"logoHrefTarget\">\n <div>\n <img [src]=\"logo\" [src.lt-md]=\"hasTitle ? logoSm : logo\" alt=\"Logo\">\n </div>\n </a>\n</div>\n\n<ng-template #useLogoRoute>\n <div class=\"top-bar--logo d-flex flex-column justify-content-center\" [routerLink]=\"logoRoute\"\n [class.top-bar--logo-mobile]=\"isMobile$ | async\">\n <div>\n <img [src]=\"logo\" [src.lt-md]=\"hasTitle ? logoSm : logo\" alt=\"Logo\">\n </div>\n </div>\n</ng-template>\n\n<!-- Title -->\n<div class=\"d-flex flex-column flex-grow-1\">\n <seam-top-bar-title *ngIf=\"hasTitle\"\n [titleText]=\"titleText\"\n [subTitleText]=\"subTitleText\"\n [class.ml-2]=\"isMobile$ | async\">\n </seam-top-bar-title>\n</div>\n\n<!-- Items -->\n<div class=\"top-bar-icon-container mr-2\">\n <ng-container *ngFor=\"let item of _items$ | async\">\n <ng-template [ngTemplateOutlet]=\"item.template\"></ng-template>\n </ng-container>\n</div>\n\n<!-- Menu -->\n<button seamTopBarMenuButton\n [seamMenuToggle]=\"_topBarMenu?.menu\"\n [detailTpl]=\"_topBarMenuBtnDetailTpl?.template\"\n [compact]=\"isMobile$ | async\">\n</button>\n",
|
|
1761
|
+
template: "<!-- Nav Toggle -->\n<div class=\"d-flex flex-column justify-content-center pr-2\" *ngIf=\"isMobile$ | async\">\n <button seamBaseLayoutNavToggle seamIconBtn [icon]=\"faBars\" iconType=\"borderless-styled-square\"></button>\n</div>\n\n<!-- Logo -->\n<div class=\"top-bar--logo d-flex flex-column justify-content-center\" *ngIf=\"logoHref; else useLogoRoute\"\n [class.top-bar--logo-mobile]=\"isMobile$ | async\">\n <a [href]=\"logoHref\" [target]=\"logoHrefTarget\">\n <div>\n <img *ngIf=\"logo\" [src]=\"logo\" [src.lt-md]=\"hasTitle ? logoSm : logo\" alt=\"Logo\">\n </div>\n </a>\n</div>\n\n<ng-template #useLogoRoute>\n <div class=\"top-bar--logo d-flex flex-column justify-content-center\" [routerLink]=\"logoRoute\"\n [class.top-bar--logo-mobile]=\"isMobile$ | async\">\n <div>\n <img *ngIf=\"logo\" [src]=\"logo\" [src.lt-md]=\"hasTitle ? logoSm : logo\" alt=\"Logo\">\n </div>\n </div>\n</ng-template>\n\n<!-- Title -->\n<div class=\"d-flex flex-column flex-grow-1\">\n <seam-top-bar-title *ngIf=\"hasTitle\"\n [titleText]=\"titleText\"\n [subTitleText]=\"subTitleText\"\n [class.ml-2]=\"isMobile$ | async\">\n </seam-top-bar-title>\n</div>\n\n<!-- Items -->\n<div class=\"top-bar-icon-container mr-2\">\n <ng-container *ngFor=\"let item of _items$ | async\">\n <ng-template [ngTemplateOutlet]=\"item.template\"></ng-template>\n </ng-container>\n</div>\n\n<!-- Menu -->\n<button seamTopBarMenuButton\n [seamMenuToggle]=\"_topBarMenu?.menu\"\n [detailTpl]=\"_topBarMenuBtnDetailTpl?.template\"\n [compact]=\"isMobile$ | async\"\n [profileIcon]=\"profileIcon\">\n</button>\n",
|
|
1762
|
+
encapsulation: ViewEncapsulation.None,
|
|
1758
1763
|
exportAs: 'seamTopBar',
|
|
1759
|
-
host: {
|
|
1760
|
-
'class': 'bg-white'
|
|
1761
|
-
},
|
|
1762
1764
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
1763
|
-
styles: [":
|
|
1765
|
+
styles: ["seam-top-bar{display:flex;flex:1 1 100%;flex-direction:row;background:white;margin:0;padding:8px;border-radius:0;box-shadow:none}.top-bar--logo{flex:0 0 auto;overflow:hidden;cursor:pointer}.top-bar--logo img{height:auto;max-height:60px;width:auto;max-width:200px}.top-bar--logo.top-bar--logo-mobile img{height:auto;max-height:40px;width:auto;max-width:150px}.top-bar-icon-container{margin:auto 0}\n"]
|
|
1764
1766
|
},] }
|
|
1765
1767
|
];
|
|
1766
1768
|
TheSeamTopBarComponent.ctorParameters = () => [
|
|
@@ -1777,7 +1779,8 @@ TheSeamTopBarComponent.propDecorators = {
|
|
|
1777
1779
|
logoRoute: [{ type: Input }],
|
|
1778
1780
|
hasTitle: [{ type: Input }],
|
|
1779
1781
|
titleText: [{ type: Input }],
|
|
1780
|
-
subTitleText: [{ type: Input }]
|
|
1782
|
+
subTitleText: [{ type: Input }],
|
|
1783
|
+
profileIcon: [{ type: Input }]
|
|
1781
1784
|
};
|
|
1782
1785
|
__decorate([
|
|
1783
1786
|
InputBoolean()
|