@skyux/pages 5.7.2 → 6.0.0-beta.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.
Files changed (50) hide show
  1. package/esm2020/index.mjs +12 -0
  2. package/esm2020/lib/modules/action-hub/action-hub-buttons.component.mjs +20 -0
  3. package/esm2020/lib/modules/action-hub/action-hub-content.component.mjs +14 -0
  4. package/esm2020/lib/modules/action-hub/action-hub.component.mjs +91 -0
  5. package/esm2020/lib/modules/action-hub/action-hub.module.mjs +86 -0
  6. package/esm2020/lib/modules/action-hub/types/action-hub-needs-attention.mjs +2 -0
  7. package/esm2020/lib/modules/action-hub/types/page-link.mjs +2 -0
  8. package/esm2020/lib/modules/action-hub/types/recent-link.mjs +2 -0
  9. package/esm2020/lib/modules/link-list/link-list.component.mjs +19 -0
  10. package/esm2020/lib/modules/needs-attention/needs-attention.component.mjs +22 -0
  11. package/esm2020/lib/modules/page-header/page-header.component.mjs +20 -0
  12. package/esm2020/lib/modules/page-header/page-header.module.mjs +41 -0
  13. package/esm2020/lib/modules/shared/sky-pages-resources.module.mjs +52 -0
  14. package/esm2020/skyux-pages.mjs +5 -0
  15. package/fesm2015/skyux-pages.mjs +326 -0
  16. package/fesm2015/skyux-pages.mjs.map +1 -0
  17. package/fesm2020/skyux-pages.mjs +326 -0
  18. package/fesm2020/skyux-pages.mjs.map +1 -0
  19. package/package.json +31 -15
  20. package/bundles/skyux-pages.umd.js +0 -399
  21. package/esm2015/index.js +0 -12
  22. package/esm2015/index.js.map +0 -1
  23. package/esm2015/lib/modules/action-hub/action-hub-buttons.component.js +0 -23
  24. package/esm2015/lib/modules/action-hub/action-hub-buttons.component.js.map +0 -1
  25. package/esm2015/lib/modules/action-hub/action-hub-content.component.js +0 -17
  26. package/esm2015/lib/modules/action-hub/action-hub-content.component.js.map +0 -1
  27. package/esm2015/lib/modules/action-hub/action-hub.component.js +0 -95
  28. package/esm2015/lib/modules/action-hub/action-hub.component.js.map +0 -1
  29. package/esm2015/lib/modules/action-hub/action-hub.module.js +0 -86
  30. package/esm2015/lib/modules/action-hub/action-hub.module.js.map +0 -1
  31. package/esm2015/lib/modules/action-hub/types/action-hub-needs-attention.js +0 -2
  32. package/esm2015/lib/modules/action-hub/types/action-hub-needs-attention.js.map +0 -1
  33. package/esm2015/lib/modules/action-hub/types/page-link.js +0 -2
  34. package/esm2015/lib/modules/action-hub/types/page-link.js.map +0 -1
  35. package/esm2015/lib/modules/action-hub/types/recent-link.js +0 -2
  36. package/esm2015/lib/modules/action-hub/types/recent-link.js.map +0 -1
  37. package/esm2015/lib/modules/link-list/link-list.component.js +0 -23
  38. package/esm2015/lib/modules/link-list/link-list.component.js.map +0 -1
  39. package/esm2015/lib/modules/needs-attention/needs-attention.component.js +0 -26
  40. package/esm2015/lib/modules/needs-attention/needs-attention.component.js.map +0 -1
  41. package/esm2015/lib/modules/page-header/page-header.component.js +0 -24
  42. package/esm2015/lib/modules/page-header/page-header.component.js.map +0 -1
  43. package/esm2015/lib/modules/page-header/page-header.module.js +0 -41
  44. package/esm2015/lib/modules/page-header/page-header.module.js.map +0 -1
  45. package/esm2015/lib/modules/shared/sky-pages-resources.module.js +0 -52
  46. package/esm2015/lib/modules/shared/sky-pages-resources.module.js.map +0 -1
  47. package/esm2015/skyux-pages.js +0 -5
  48. package/esm2015/skyux-pages.js.map +0 -1
  49. package/fesm2015/skyux-pages.js +0 -348
  50. package/fesm2015/skyux-pages.js.map +0 -1
@@ -1,348 +0,0 @@
1
- import * as i2$1 from '@angular/common';
2
- import { CommonModule } from '@angular/common';
3
- import * as i0 from '@angular/core';
4
- import { Component, Input, NgModule, ChangeDetectionStrategy } from '@angular/core';
5
- import { RouterModule } from '@angular/router';
6
- import * as i6 from '@skyux/i18n';
7
- import { getLibStringForLocale, SkyI18nModule, SKY_LIB_RESOURCES_PROVIDERS } from '@skyux/i18n';
8
- import * as i2 from '@skyux/indicators';
9
- import { SkyIconModule, SkyKeyInfoModule, SkyWaitModule } from '@skyux/indicators';
10
- import * as i1 from '@skyux/layout';
11
- import { SkyActionButtonModule, SkyFluidGridModule } from '@skyux/layout';
12
- import * as i4 from '@skyux/router';
13
- import { SkyAppLinkModule, SkyHrefModule } from '@skyux/router';
14
- import * as i3 from '@skyux/theme';
15
- import { SkyThemeModule } from '@skyux/theme';
16
-
17
- class SkyLinkListComponent {
18
- }
19
- SkyLinkListComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyLinkListComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
20
- SkyLinkListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: SkyLinkListComponent, selector: "sky-link-list", inputs: { links: "links", title: "title" }, ngImport: i0, template: "<ng-container\n *ngIf=\"links === 'loading'; then loadingTemplateRef; else linksTemplateRef\"\n></ng-container>\n\n<ng-template #headingTemplateRef>\n <h2 class=\"sky-font-heading-4 sky-margin-stacked-sm\">\n {{ title }}\n </h2>\n</ng-template>\n<ng-template #loadingTemplateRef>\n <sky-wait [isWaiting]=\"true\"></sky-wait>\n <ng-container [ngTemplateOutlet]=\"headingTemplateRef\"></ng-container>\n</ng-template>\n<ng-template #linksTemplateRef>\n <ng-container *ngIf=\"links?.length > 0\">\n <ng-container [ngTemplateOutlet]=\"headingTemplateRef\"></ng-container>\n <ul\n class=\"sky-link-list\"\n [skyThemeClass]=\"{\n 'sky-margin-stacked-separate': 'default',\n 'sky-margin-stacked-xl': 'modern'\n }\"\n >\n <li\n *ngFor=\"let link of links\"\n [skyThemeClass]=\"{\n 'sky-margin-stacked-default': 'default',\n 'sky-margin-stacked-sm': 'modern'\n }\"\n >\n <a *ngIf=\"link.permalink.url\" [skyHref]=\"link.permalink.url\">\n {{ link.label }}\n </a>\n <a\n *ngIf=\"link.permalink.route\"\n [skyAppLink]=\"link.permalink.route.commands\"\n [queryParams]=\"link.permalink.route.extras?.queryParams\"\n [queryParamsHandling]=\"\n link.permalink.route.extras?.queryParamsHandling\n \"\n [fragment]=\"link.permalink.route.extras?.fragment\"\n [preserveFragment]=\"link.permalink.route.extras?.preserveFragment\"\n [skipLocationChange]=\"link.permalink.route.extras?.skipLocationChange\"\n [replaceUrl]=\"link.permalink.route.extras?.replaceUrl\"\n [state]=\"link.permalink.route.extras?.state\"\n >\n {{ link.label }}\n </a>\n </li>\n </ul>\n </ng-container>\n</ng-template>\n", styles: [".sky-link-list{list-style:none;margin-left:0;padding-left:0}\n"], components: [{ type: i2.λ14, selector: "sky-wait", inputs: ["ariaLabel", "isWaiting", "isFullPage", "isNonBlocking"] }], directives: [{ type: i2$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2$1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i3.λ2, selector: "[skyThemeClass]", inputs: ["class", "skyThemeClass"] }, { type: i2$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i4.λ1, selector: "[skyHref]", inputs: ["skyHref", "skyHrefElse"] }, { type: i4.λ3, selector: "[skyAppLink]", inputs: ["skyAppLink"] }] });
21
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyLinkListComponent, decorators: [{
22
- type: Component,
23
- args: [{
24
- selector: 'sky-link-list',
25
- templateUrl: './link-list.component.html',
26
- styleUrls: ['./link-list.component.scss'],
27
- }]
28
- }], propDecorators: { links: [{
29
- type: Input
30
- }], title: [{
31
- type: Input
32
- }] } });
33
-
34
- class SkyNeedsAttentionComponent {
35
- constructor() {
36
- this.gutterSize = 'large';
37
- }
38
- }
39
- SkyNeedsAttentionComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyNeedsAttentionComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
40
- SkyNeedsAttentionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: SkyNeedsAttentionComponent, selector: "sky-needs-attention", inputs: { items: "items" }, ngImport: i0, template: "<div\n class=\"sky-needs-attention-container\"\n [skyThemeClass]=\"{\n 'sky-padding-even-large sky-shadow': 'default',\n 'sky-box sky-elevation-1-bordered sky-padding-even-xl': 'modern'\n }\"\n>\n <h2 class=\"sky-font-heading-4\">\n {{ 'sky_action_hub_needs_attention' | skyLibResources }}\n </h2>\n <sky-fluid-grid [gutterSize]=\"gutterSize\" [disableMargin]=\"true\">\n <sky-row>\n <sky-column *ngIf=\"items?.length === 0\" [screenXSmall]=\"12\">\n {{ 'sky_action_hub_needs_attention_empty' | skyLibResources }}\n </sky-column>\n <sky-column\n *ngFor=\"let item of items; let isLast = last\"\n [screenSmall]=\"items.length > 6 ? 6 : 12\"\n [screenXSmall]=\"12\"\n >\n <ng-template #link>\n <sky-icon\n *skyThemeIf=\"'default'\"\n class=\"sky-needs-attention-item-icon\"\n icon=\"chevron-right\"\n ></sky-icon>\n <sky-icon\n *skyThemeIf=\"'modern'\"\n class=\"sky-needs-attention-item-icon\"\n icon=\"chevron-right\"\n iconType=\"skyux\"\n ></sky-icon>\n <sky-key-info\n layout=\"horizontal\"\n class=\"sky-needs-attention-item-key-info\"\n >\n <sky-key-info-label>{{ item.message }}</sky-key-info-label>\n <sky-key-info-value\n [skyThemeClass]=\"{\n 'sky-emphasized': 'default',\n 'sky-font-display-4': 'modern'\n }\"\n >\n {{ item.title }}\n </sky-key-info-value>\n </sky-key-info>\n </ng-template>\n <a\n *ngIf=\"item.permalink.route\"\n [skyAppLink]=\"item.permalink.route.commands\"\n [queryParams]=\"item.permalink.route.extras?.queryParams\"\n [queryParamsHandling]=\"\n item.permalink.route.extras?.queryParamsHandling\n \"\n [fragment]=\"item.permalink.route.extras?.fragment\"\n [preserveFragment]=\"item.permalink.route.extras?.preserveFragment\"\n [skipLocationChange]=\"item.permalink.route.extras?.skipLocationChange\"\n [replaceUrl]=\"item.permalink.route.extras?.replaceUrl\"\n [state]=\"item.permalink.route.extras?.state\"\n class=\"\n sky-needs-attention-item\n sky-padding-vertical-lg\n sky-border-bottom-row\n \"\n >\n <ng-container *ngTemplateOutlet=\"link\"></ng-container>\n </a>\n <a\n *ngIf=\"item.permalink.url\"\n [skyHref]=\"item.permalink.url\"\n class=\"\n sky-needs-attention-item\n sky-padding-vertical-lg\n sky-border-bottom-row\n \"\n >\n <ng-container *ngTemplateOutlet=\"link\"></ng-container>\n </a>\n </sky-column>\n </sky-row>\n </sky-fluid-grid>\n</div>\n", styles: [".sky-needs-attention-container{background-color:#fff}.sky-needs-attention-item{display:flex;flex-wrap:nowrap;align-items:center}.sky-needs-attention-item-icon{color:#686c73}.sky-needs-attention-item-key-info{flex-grow:1}.sky-needs-attention-item-icon{order:1}.sky-needs-attention-item sky-key-info-value{color:#0974a1}.sky-needs-attention-item:hover sky-key-info-value,.sky-needs-attention-item:hover sky-key-info-label{text-decoration:underline}.sky-needs-attention-item:focus{outline:none}.sky-needs-attention-item:focus:not(:active){border:none;box-shadow:inset 0 0 0 2px #1870b8,0 1px 8px #0000004d}sky-column:last-child>a{border-bottom:none}\n"], components: [{ type: i1.λ22, selector: "sky-fluid-grid", inputs: ["disableMargin", "gutterSize"] }, { type: i1.λ23, selector: "sky-row", inputs: ["reverseColumnOrder"] }, { type: i1.λ24, selector: "sky-column", inputs: ["screenXSmall", "screenSmall", "screenMedium", "screenLarge"] }, { type: i2.λ4, selector: "sky-icon", inputs: ["icon", "iconType", "size", "fixedWidth", "variant"] }, { type: i2.λ8, selector: "sky-key-info", inputs: ["layout"] }, { type: i2.λ6, selector: "sky-key-info-label" }, { type: i2.λ7, selector: "sky-key-info-value" }], directives: [{ type: i3.λ2, selector: "[skyThemeClass]", inputs: ["class", "skyThemeClass"] }, { type: i2$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i3.λ3, selector: "[skyThemeIf]", inputs: ["skyThemeIf"] }, { type: i4.λ3, selector: "[skyAppLink]", inputs: ["skyAppLink"] }, { type: i2$1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i4.λ1, selector: "[skyHref]", inputs: ["skyHref", "skyHrefElse"] }], pipes: { "skyLibResources": i6.SkyLibResourcesPipe } });
41
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyNeedsAttentionComponent, decorators: [{
42
- type: Component,
43
- args: [{
44
- selector: 'sky-needs-attention',
45
- templateUrl: './needs-attention.component.html',
46
- styleUrls: ['./needs-attention.component.scss'],
47
- }]
48
- }], propDecorators: { items: [{
49
- type: Input
50
- }] } });
51
-
52
- let parentLink;
53
- class SkyPageHeaderComponent {
54
- }
55
- SkyPageHeaderComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyPageHeaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
56
- SkyPageHeaderComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: SkyPageHeaderComponent, selector: "sky-page-header", inputs: { parentLink: "parentLink", pageTitle: "pageTitle" }, ngImport: i0, template: "<h1 class=\"sky-page-header\">\n <span *ngIf=\"parentLink\" class=\"sky-page-header-parent-link-wrapper\">\n <a\n *ngIf=\"parentLink.permalink?.url\"\n [skyHref]=\"parentLink.permalink.url\"\n class=\"sky-font-heading-1 sky-page-header-parent-link\"\n >{{ parentLink.label }}</a\n >\n <a\n *ngIf=\"parentLink.permalink?.route\"\n [skyAppLink]=\"parentLink.permalink.route.commands\"\n [queryParams]=\"parentLink.permalink.route.extras?.queryParams\"\n [queryParamsHandling]=\"\n parentLink.permalink.route.extras?.queryParamsHandling\n \"\n [fragment]=\"parentLink.permalink.route.extras?.fragment\"\n [preserveFragment]=\"parentLink.permalink.route.extras?.preserveFragment\"\n [skipLocationChange]=\"\n parentLink.permalink.route.extras?.skipLocationChange\n \"\n [replaceUrl]=\"parentLink.permalink.route.extras?.replaceUrl\"\n [state]=\"parentLink.permalink.route.extras?.state\"\n class=\"sky-font-heading-1 sky-page-header-parent-link\"\n >{{ parentLink.label }}</a\n >\n <span class=\"sky-page-header-chevron\">\n <sky-icon *skyThemeIf=\"'default'\" icon=\"chevron-right\"></sky-icon>\n <sky-icon\n *skyThemeIf=\"'modern'\"\n icon=\"chevron-right\"\n iconType=\"skyux\"\n ></sky-icon>\n </span>\n </span>\n <wbr *ngIf=\"parentLink\" />\n <span class=\"sky-page-header-page-title sky-font-heading-1\">\n {{ pageTitle }}\n </span>\n</h1>\n", styles: [".sky-page-header-page-title,.sky-page-header-parent-link-wrapper{display:inline-block;block-size:-moz-fit-content;block-size:fit-content}.sky-page-header-parent-link{color:#0974a1}.sky-page-header-chevron{font-size:16px;margin:0 10px}.sky-page-header-chevron,.sky-page-header-parent-link,.sky-page-header-page-title{vertical-align:middle}:host-context(.sky-theme-modern) .sky-page-header-parent-link{color:#1870b8}.sky-theme-modern .sky-page-header-parent-link{color:#1870b8}:host-context(.sky-theme-modern.sky-theme-mode-dark) .sky-page-header-parent-link{color:#009cd1}.sky-theme-modern.sky-theme-mode-dark .sky-page-header-parent-link{color:#009cd1}\n"], components: [{ type: i2.λ4, selector: "sky-icon", inputs: ["icon", "iconType", "size", "fixedWidth", "variant"] }], directives: [{ type: i2$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4.λ1, selector: "[skyHref]", inputs: ["skyHref", "skyHrefElse"] }, { type: i4.λ3, selector: "[skyAppLink]", inputs: ["skyAppLink"] }, { type: i3.λ3, selector: "[skyThemeIf]", inputs: ["skyThemeIf"] }] });
57
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyPageHeaderComponent, decorators: [{
58
- type: Component,
59
- args: [{
60
- selector: 'sky-page-header',
61
- templateUrl: './page-header.component.html',
62
- styleUrls: ['./page-header.component.scss'],
63
- }]
64
- }], propDecorators: { parentLink: [{
65
- type: Input
66
- }], pageTitle: [{
67
- type: Input
68
- }] } });
69
-
70
- class SkyPageHeaderModule {
71
- }
72
- SkyPageHeaderModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyPageHeaderModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
73
- SkyPageHeaderModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyPageHeaderModule, declarations: [SkyPageHeaderComponent], imports: [CommonModule,
74
- RouterModule,
75
- SkyAppLinkModule,
76
- SkyIconModule,
77
- SkyThemeModule,
78
- SkyHrefModule], exports: [SkyPageHeaderComponent] });
79
- SkyPageHeaderModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyPageHeaderModule, imports: [[
80
- CommonModule,
81
- RouterModule,
82
- SkyAppLinkModule,
83
- SkyIconModule,
84
- SkyThemeModule,
85
- SkyHrefModule,
86
- ]] });
87
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyPageHeaderModule, decorators: [{
88
- type: NgModule,
89
- args: [{
90
- imports: [
91
- CommonModule,
92
- RouterModule,
93
- SkyAppLinkModule,
94
- SkyIconModule,
95
- SkyThemeModule,
96
- SkyHrefModule,
97
- ],
98
- declarations: [SkyPageHeaderComponent],
99
- exports: [SkyPageHeaderComponent],
100
- }]
101
- }] });
102
-
103
- /**
104
- * NOTICE: DO NOT MODIFY THIS FILE!
105
- * The contents of this file were automatically generated by
106
- * the 'ng generate @skyux/i18n:lib-resources-module lib/modules/shared/sky-pages' schematic.
107
- * To update this file, simply rerun the command.
108
- */
109
- const RESOURCES = {
110
- 'EN-US': {
111
- sky_action_hub_related_links: { message: 'Related Links' },
112
- sky_action_hub_recent_links: { message: 'Recently Accessed' },
113
- sky_action_hub_needs_attention: { message: 'Needs Attention' },
114
- sky_action_hub_needs_attention_empty: {
115
- message: 'No issues currently need attention',
116
- },
117
- },
118
- };
119
- class SkyPagesResourcesProvider {
120
- getString(localeInfo, name) {
121
- return getLibStringForLocale(RESOURCES, localeInfo.locale, name);
122
- }
123
- }
124
- /**
125
- * Import into any component library module that needs to use resource strings.
126
- */
127
- class SkyPagesResourcesModule {
128
- }
129
- SkyPagesResourcesModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyPagesResourcesModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
130
- SkyPagesResourcesModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyPagesResourcesModule, exports: [SkyI18nModule] });
131
- SkyPagesResourcesModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyPagesResourcesModule, providers: [
132
- {
133
- provide: SKY_LIB_RESOURCES_PROVIDERS,
134
- useClass: SkyPagesResourcesProvider,
135
- multi: true,
136
- },
137
- ], imports: [SkyI18nModule] });
138
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyPagesResourcesModule, decorators: [{
139
- type: NgModule,
140
- args: [{
141
- exports: [SkyI18nModule],
142
- providers: [
143
- {
144
- provide: SKY_LIB_RESOURCES_PROVIDERS,
145
- useClass: SkyPagesResourcesProvider,
146
- multi: true,
147
- },
148
- ],
149
- }]
150
- }] });
151
-
152
- /**
153
- * Displays buttons after the page title.
154
- *
155
- * Example:
156
- *
157
- * ```html
158
- * <a class="sky-btn sky-btn-default" href="path/to/new">New</a>
159
- * ```
160
- */
161
- class SkyActionHubButtonsComponent {
162
- }
163
- SkyActionHubButtonsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyActionHubButtonsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
164
- SkyActionHubButtonsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: SkyActionHubButtonsComponent, selector: "sky-action-hub-buttons", ngImport: i0, template: "<ng-content></ng-content>\n" });
165
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyActionHubButtonsComponent, decorators: [{
166
- type: Component,
167
- args: [{
168
- selector: 'sky-action-hub-buttons',
169
- templateUrl: 'action-hub-buttons.component.html',
170
- }]
171
- }] });
172
-
173
- /**
174
- * Displays additional content after the action items.
175
- */
176
- class SkyActionHubContentComponent {
177
- }
178
- SkyActionHubContentComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyActionHubContentComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
179
- SkyActionHubContentComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: SkyActionHubContentComponent, selector: "sky-action-hub-content", ngImport: i0, template: "<ng-content></ng-content>\n" });
180
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyActionHubContentComponent, decorators: [{
181
- type: Component,
182
- args: [{
183
- selector: 'sky-action-hub-content',
184
- templateUrl: 'action-hub-content.component.html',
185
- }]
186
- }] });
187
-
188
- /**
189
- * Creates an action hub to direct user attention to important
190
- * actions and provide quick access to common tasks.
191
- */
192
- class SkyActionHubComponent {
193
- constructor() {
194
- /**
195
- * Provides a list of actions that users must perform based on business requirements or best practices, or `"loading"` to display a wait indicator.
196
- */
197
- this.needsAttention = [];
198
- /**
199
- * Provides a list of recently accessed links, or `"loading"` to display a wait indicator.
200
- */
201
- this.recentLinks = [];
202
- /**
203
- * Provides a list of related links, or `"loading"` to display a wait indicator.
204
- */
205
- this.relatedLinks = [];
206
- /**
207
- * Specifies the page title.
208
- * @default ""
209
- */
210
- this.title = '';
211
- }
212
- getRecentLinksSorted(recentLinks, limit) {
213
- if (recentLinks === 'loading') {
214
- return 'loading';
215
- }
216
- if (!recentLinks || recentLinks.length === 0) {
217
- return [];
218
- }
219
- return recentLinks
220
- .slice(0)
221
- .sort((a, b) => {
222
- const aTime = a.lastAccessed instanceof Date
223
- ? a.lastAccessed.toISOString()
224
- : a.lastAccessed;
225
- const bTime = b.lastAccessed instanceof Date
226
- ? b.lastAccessed.toISOString()
227
- : b.lastAccessed;
228
- if (aTime === bTime) {
229
- return 0;
230
- }
231
- return aTime > bTime ? -1 : 1;
232
- })
233
- .slice(0, limit);
234
- }
235
- getRelatedLinksSorted(relatedLinks) {
236
- if (relatedLinks === 'loading') {
237
- return 'loading';
238
- }
239
- if (!relatedLinks || relatedLinks.length === 0) {
240
- return [];
241
- }
242
- return relatedLinks.slice(0).sort((a, b) => {
243
- const aLabel = a.label.trim().toUpperCase();
244
- const bLabel = b.label.trim().toUpperCase();
245
- if (aLabel === bLabel) {
246
- return 0;
247
- }
248
- return aLabel < bLabel ? -1 : 1;
249
- });
250
- }
251
- }
252
- SkyActionHubComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyActionHubComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
253
- SkyActionHubComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: SkyActionHubComponent, selector: "sky-action-hub", inputs: { needsAttention: "needsAttention", parentLink: "parentLink", recentLinks: "recentLinks", relatedLinks: "relatedLinks", title: "title" }, ngImport: i0, template: "<ng-template #loadingTemplateRef>\n <sky-wait [isWaiting]=\"true\"></sky-wait>\n</ng-template>\n<sky-fluid-grid>\n <sky-row>\n <sky-column>\n <sky-page-header\n [pageTitle]=\"title\"\n [parentLink]=\"parentLink\"\n ></sky-page-header>\n </sky-column>\n </sky-row>\n <sky-row>\n <sky-column screenLarge=\"9\" screenXSmall=\"12\">\n <div\n [skyThemeClass]=\"{\n 'sky-margin-stacked-separate': 'default',\n 'sky-margin-stacked-xl': 'modern'\n }\"\n >\n <ng-content select=\"sky-action-hub-buttons\"></ng-content>\n </div>\n\n <div\n [skyThemeClass]=\"{\n 'sky-margin-stacked-separate': 'default',\n 'sky-margin-stacked-xxl': 'modern'\n }\"\n >\n <ng-container\n *ngIf=\"\n needsAttention === 'loading';\n then loadingTemplateRef;\n else needsAttentionTemplateRef\n \"\n ></ng-container>\n <ng-template #needsAttentionTemplateRef>\n <sky-needs-attention [items]=\"needsAttention\"></sky-needs-attention>\n </ng-template>\n </div>\n\n <div\n [skyThemeClass]=\"{\n 'sky-margin-stacked-separate': 'default',\n 'sky-margin-stacked-xxl': 'modern'\n }\"\n >\n <ng-content select=\"sky-action-hub-content\"></ng-content>\n </div>\n </sky-column>\n <sky-column screenLarge=\"3\" screenXSmall=\"12\">\n <sky-link-list\n [links]=\"getRelatedLinksSorted(relatedLinks)\"\n [title]=\"'sky_action_hub_related_links' | skyLibResources\"\n ></sky-link-list>\n <sky-link-list\n [links]=\"getRecentLinksSorted(recentLinks, 5)\"\n [title]=\"'sky_action_hub_recent_links' | skyLibResources\"\n ></sky-link-list>\n </sky-column>\n </sky-row>\n</sky-fluid-grid>\n", components: [{ type: i2.λ14, selector: "sky-wait", inputs: ["ariaLabel", "isWaiting", "isFullPage", "isNonBlocking"] }, { type: i1.λ22, selector: "sky-fluid-grid", inputs: ["disableMargin", "gutterSize"] }, { type: i1.λ23, selector: "sky-row", inputs: ["reverseColumnOrder"] }, { type: i1.λ24, selector: "sky-column", inputs: ["screenXSmall", "screenSmall", "screenMedium", "screenLarge"] }, { type: SkyPageHeaderComponent, selector: "sky-page-header", inputs: ["parentLink", "pageTitle"] }, { type: SkyNeedsAttentionComponent, selector: "sky-needs-attention", inputs: ["items"] }, { type: SkyLinkListComponent, selector: "sky-link-list", inputs: ["links", "title"] }], directives: [{ type: i3.λ2, selector: "[skyThemeClass]", inputs: ["class", "skyThemeClass"] }, { type: i2$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "skyLibResources": i6.SkyLibResourcesPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
254
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyActionHubComponent, decorators: [{
255
- type: Component,
256
- args: [{
257
- selector: 'sky-action-hub',
258
- templateUrl: './action-hub.component.html',
259
- changeDetection: ChangeDetectionStrategy.OnPush,
260
- }]
261
- }], propDecorators: { needsAttention: [{
262
- type: Input
263
- }], parentLink: [{
264
- type: Input
265
- }], recentLinks: [{
266
- type: Input
267
- }], relatedLinks: [{
268
- type: Input
269
- }], title: [{
270
- type: Input
271
- }] } });
272
-
273
- class SkyActionHubModule {
274
- }
275
- SkyActionHubModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyActionHubModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
276
- SkyActionHubModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyActionHubModule, declarations: [SkyActionHubButtonsComponent,
277
- SkyActionHubComponent,
278
- SkyActionHubContentComponent,
279
- SkyNeedsAttentionComponent,
280
- SkyLinkListComponent], imports: [CommonModule,
281
- SkyPagesResourcesModule,
282
- RouterModule,
283
- SkyActionButtonModule,
284
- SkyAppLinkModule,
285
- SkyFluidGridModule,
286
- SkyI18nModule,
287
- SkyIconModule,
288
- SkyKeyInfoModule,
289
- SkyPageHeaderModule,
290
- SkyThemeModule,
291
- SkyWaitModule,
292
- SkyHrefModule], exports: [SkyActionHubButtonsComponent,
293
- SkyActionHubComponent,
294
- SkyActionHubContentComponent] });
295
- SkyActionHubModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyActionHubModule, imports: [[
296
- CommonModule,
297
- SkyPagesResourcesModule,
298
- RouterModule,
299
- SkyActionButtonModule,
300
- SkyAppLinkModule,
301
- SkyFluidGridModule,
302
- SkyI18nModule,
303
- SkyIconModule,
304
- SkyKeyInfoModule,
305
- SkyPageHeaderModule,
306
- SkyThemeModule,
307
- SkyWaitModule,
308
- SkyHrefModule,
309
- ]] });
310
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: SkyActionHubModule, decorators: [{
311
- type: NgModule,
312
- args: [{
313
- imports: [
314
- CommonModule,
315
- SkyPagesResourcesModule,
316
- RouterModule,
317
- SkyActionButtonModule,
318
- SkyAppLinkModule,
319
- SkyFluidGridModule,
320
- SkyI18nModule,
321
- SkyIconModule,
322
- SkyKeyInfoModule,
323
- SkyPageHeaderModule,
324
- SkyThemeModule,
325
- SkyWaitModule,
326
- SkyHrefModule,
327
- ],
328
- declarations: [
329
- SkyActionHubButtonsComponent,
330
- SkyActionHubComponent,
331
- SkyActionHubContentComponent,
332
- SkyNeedsAttentionComponent,
333
- SkyLinkListComponent,
334
- ],
335
- exports: [
336
- SkyActionHubButtonsComponent,
337
- SkyActionHubComponent,
338
- SkyActionHubContentComponent,
339
- ],
340
- }]
341
- }] });
342
-
343
- /**
344
- * Generated bundle index. Do not edit.
345
- */
346
-
347
- export { SkyActionHubModule, SkyPageHeaderModule, SkyActionHubComponent as λ1, SkyActionHubButtonsComponent as λ2, SkyActionHubContentComponent as λ3, SkyPageHeaderComponent as λ4 };
348
- //# sourceMappingURL=skyux-pages.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"skyux-pages.js","sources":["../../../../../libs/components/pages/src/lib/modules/link-list/link-list.component.ts","../../../../../libs/components/pages/src/lib/modules/link-list/link-list.component.html","../../../../../libs/components/pages/src/lib/modules/needs-attention/needs-attention.component.ts","../../../../../libs/components/pages/src/lib/modules/needs-attention/needs-attention.component.html","../../../../../libs/components/pages/src/lib/modules/page-header/page-header.component.ts","../../../../../libs/components/pages/src/lib/modules/page-header/page-header.component.html","../../../../../libs/components/pages/src/lib/modules/page-header/page-header.module.ts","../../../../../libs/components/pages/src/lib/modules/shared/sky-pages-resources.module.ts","../../../../../libs/components/pages/src/lib/modules/action-hub/action-hub-buttons.component.ts","../../../../../libs/components/pages/src/lib/modules/action-hub/action-hub-buttons.component.html","../../../../../libs/components/pages/src/lib/modules/action-hub/action-hub-content.component.ts","../../../../../libs/components/pages/src/lib/modules/action-hub/action-hub-content.component.html","../../../../../libs/components/pages/src/lib/modules/action-hub/action-hub.component.ts","../../../../../libs/components/pages/src/lib/modules/action-hub/action-hub.component.html","../../../../../libs/components/pages/src/lib/modules/action-hub/action-hub.module.ts","../../../../../libs/components/pages/src/skyux-pages.ts"],"sourcesContent":["import { Component, Input } from '@angular/core';\n\nimport { SkyPageLink } from '../action-hub/types/page-link';\n\n@Component({\n selector: 'sky-link-list',\n templateUrl: './link-list.component.html',\n styleUrls: ['./link-list.component.scss'],\n})\nexport class SkyLinkListComponent {\n @Input()\n public links: SkyPageLink[] | 'loading';\n\n @Input()\n public title: string;\n}\n","<ng-container\n *ngIf=\"links === 'loading'; then loadingTemplateRef; else linksTemplateRef\"\n></ng-container>\n\n<ng-template #headingTemplateRef>\n <h2 class=\"sky-font-heading-4 sky-margin-stacked-sm\">\n {{ title }}\n </h2>\n</ng-template>\n<ng-template #loadingTemplateRef>\n <sky-wait [isWaiting]=\"true\"></sky-wait>\n <ng-container [ngTemplateOutlet]=\"headingTemplateRef\"></ng-container>\n</ng-template>\n<ng-template #linksTemplateRef>\n <ng-container *ngIf=\"links?.length > 0\">\n <ng-container [ngTemplateOutlet]=\"headingTemplateRef\"></ng-container>\n <ul\n class=\"sky-link-list\"\n [skyThemeClass]=\"{\n 'sky-margin-stacked-separate': 'default',\n 'sky-margin-stacked-xl': 'modern'\n }\"\n >\n <li\n *ngFor=\"let link of links\"\n [skyThemeClass]=\"{\n 'sky-margin-stacked-default': 'default',\n 'sky-margin-stacked-sm': 'modern'\n }\"\n >\n <a *ngIf=\"link.permalink.url\" [skyHref]=\"link.permalink.url\">\n {{ link.label }}\n </a>\n <a\n *ngIf=\"link.permalink.route\"\n [skyAppLink]=\"link.permalink.route.commands\"\n [queryParams]=\"link.permalink.route.extras?.queryParams\"\n [queryParamsHandling]=\"\n link.permalink.route.extras?.queryParamsHandling\n \"\n [fragment]=\"link.permalink.route.extras?.fragment\"\n [preserveFragment]=\"link.permalink.route.extras?.preserveFragment\"\n [skipLocationChange]=\"link.permalink.route.extras?.skipLocationChange\"\n [replaceUrl]=\"link.permalink.route.extras?.replaceUrl\"\n [state]=\"link.permalink.route.extras?.state\"\n >\n {{ link.label }}\n </a>\n </li>\n </ul>\n </ng-container>\n</ng-template>\n","import { Component, Input } from '@angular/core';\nimport { SkyFluidGridGutterSizeType } from '@skyux/layout';\n\nimport { SkyActionHubNeedsAttention } from '../action-hub/types/action-hub-needs-attention';\n\n@Component({\n selector: 'sky-needs-attention',\n templateUrl: './needs-attention.component.html',\n styleUrls: ['./needs-attention.component.scss'],\n})\nexport class SkyNeedsAttentionComponent {\n @Input()\n public items: SkyActionHubNeedsAttention[];\n\n public readonly gutterSize: SkyFluidGridGutterSizeType = 'large';\n}\n","<div\n class=\"sky-needs-attention-container\"\n [skyThemeClass]=\"{\n 'sky-padding-even-large sky-shadow': 'default',\n 'sky-box sky-elevation-1-bordered sky-padding-even-xl': 'modern'\n }\"\n>\n <h2 class=\"sky-font-heading-4\">\n {{ 'sky_action_hub_needs_attention' | skyLibResources }}\n </h2>\n <sky-fluid-grid [gutterSize]=\"gutterSize\" [disableMargin]=\"true\">\n <sky-row>\n <sky-column *ngIf=\"items?.length === 0\" [screenXSmall]=\"12\">\n {{ 'sky_action_hub_needs_attention_empty' | skyLibResources }}\n </sky-column>\n <sky-column\n *ngFor=\"let item of items; let isLast = last\"\n [screenSmall]=\"items.length > 6 ? 6 : 12\"\n [screenXSmall]=\"12\"\n >\n <ng-template #link>\n <sky-icon\n *skyThemeIf=\"'default'\"\n class=\"sky-needs-attention-item-icon\"\n icon=\"chevron-right\"\n ></sky-icon>\n <sky-icon\n *skyThemeIf=\"'modern'\"\n class=\"sky-needs-attention-item-icon\"\n icon=\"chevron-right\"\n iconType=\"skyux\"\n ></sky-icon>\n <sky-key-info\n layout=\"horizontal\"\n class=\"sky-needs-attention-item-key-info\"\n >\n <sky-key-info-label>{{ item.message }}</sky-key-info-label>\n <sky-key-info-value\n [skyThemeClass]=\"{\n 'sky-emphasized': 'default',\n 'sky-font-display-4': 'modern'\n }\"\n >\n {{ item.title }}\n </sky-key-info-value>\n </sky-key-info>\n </ng-template>\n <a\n *ngIf=\"item.permalink.route\"\n [skyAppLink]=\"item.permalink.route.commands\"\n [queryParams]=\"item.permalink.route.extras?.queryParams\"\n [queryParamsHandling]=\"\n item.permalink.route.extras?.queryParamsHandling\n \"\n [fragment]=\"item.permalink.route.extras?.fragment\"\n [preserveFragment]=\"item.permalink.route.extras?.preserveFragment\"\n [skipLocationChange]=\"item.permalink.route.extras?.skipLocationChange\"\n [replaceUrl]=\"item.permalink.route.extras?.replaceUrl\"\n [state]=\"item.permalink.route.extras?.state\"\n class=\"\n sky-needs-attention-item\n sky-padding-vertical-lg\n sky-border-bottom-row\n \"\n >\n <ng-container *ngTemplateOutlet=\"link\"></ng-container>\n </a>\n <a\n *ngIf=\"item.permalink.url\"\n [skyHref]=\"item.permalink.url\"\n class=\"\n sky-needs-attention-item\n sky-padding-vertical-lg\n sky-border-bottom-row\n \"\n >\n <ng-container *ngTemplateOutlet=\"link\"></ng-container>\n </a>\n </sky-column>\n </sky-row>\n </sky-fluid-grid>\n</div>\n","import { Component, Input } from '@angular/core';\n\nimport { SkyPageLink } from '../action-hub/types/page-link';\n\nlet parentLink: SkyPageLink;\n\n@Component({\n selector: 'sky-page-header',\n templateUrl: './page-header.component.html',\n styleUrls: ['./page-header.component.scss'],\n})\nexport class SkyPageHeaderComponent {\n @Input()\n public parentLink?: typeof parentLink;\n\n @Input()\n public pageTitle!: string;\n}\n","<h1 class=\"sky-page-header\">\n <span *ngIf=\"parentLink\" class=\"sky-page-header-parent-link-wrapper\">\n <a\n *ngIf=\"parentLink.permalink?.url\"\n [skyHref]=\"parentLink.permalink.url\"\n class=\"sky-font-heading-1 sky-page-header-parent-link\"\n >{{ parentLink.label }}</a\n >\n <a\n *ngIf=\"parentLink.permalink?.route\"\n [skyAppLink]=\"parentLink.permalink.route.commands\"\n [queryParams]=\"parentLink.permalink.route.extras?.queryParams\"\n [queryParamsHandling]=\"\n parentLink.permalink.route.extras?.queryParamsHandling\n \"\n [fragment]=\"parentLink.permalink.route.extras?.fragment\"\n [preserveFragment]=\"parentLink.permalink.route.extras?.preserveFragment\"\n [skipLocationChange]=\"\n parentLink.permalink.route.extras?.skipLocationChange\n \"\n [replaceUrl]=\"parentLink.permalink.route.extras?.replaceUrl\"\n [state]=\"parentLink.permalink.route.extras?.state\"\n class=\"sky-font-heading-1 sky-page-header-parent-link\"\n >{{ parentLink.label }}</a\n >\n <span class=\"sky-page-header-chevron\">\n <sky-icon *skyThemeIf=\"'default'\" icon=\"chevron-right\"></sky-icon>\n <sky-icon\n *skyThemeIf=\"'modern'\"\n icon=\"chevron-right\"\n iconType=\"skyux\"\n ></sky-icon>\n </span>\n </span>\n <wbr *ngIf=\"parentLink\" />\n <span class=\"sky-page-header-page-title sky-font-heading-1\">\n {{ pageTitle }}\n </span>\n</h1>\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { RouterModule } from '@angular/router';\nimport { SkyIconModule } from '@skyux/indicators';\nimport { SkyAppLinkModule, SkyHrefModule } from '@skyux/router';\nimport { SkyThemeModule } from '@skyux/theme';\n\nimport { SkyPageHeaderComponent } from './page-header.component';\n\n@NgModule({\n imports: [\n CommonModule,\n RouterModule,\n SkyAppLinkModule,\n SkyIconModule,\n SkyThemeModule,\n SkyHrefModule,\n ],\n declarations: [SkyPageHeaderComponent],\n exports: [SkyPageHeaderComponent],\n})\nexport class SkyPageHeaderModule {}\n","/**\n * NOTICE: DO NOT MODIFY THIS FILE!\n * The contents of this file were automatically generated by\n * the 'ng generate @skyux/i18n:lib-resources-module lib/modules/shared/sky-pages' schematic.\n * To update this file, simply rerun the command.\n */\nimport { NgModule } from '@angular/core';\nimport {\n SKY_LIB_RESOURCES_PROVIDERS,\n SkyAppLocaleInfo,\n SkyI18nModule,\n SkyLibResources,\n SkyLibResourcesProvider,\n getLibStringForLocale,\n} from '@skyux/i18n';\n\nconst RESOURCES: { [locale: string]: SkyLibResources } = {\n 'EN-US': {\n sky_action_hub_related_links: { message: 'Related Links' },\n sky_action_hub_recent_links: { message: 'Recently Accessed' },\n sky_action_hub_needs_attention: { message: 'Needs Attention' },\n sky_action_hub_needs_attention_empty: {\n message: 'No issues currently need attention',\n },\n },\n};\n\nexport class SkyPagesResourcesProvider implements SkyLibResourcesProvider {\n public getString(\n localeInfo: SkyAppLocaleInfo,\n name: string\n ): string | undefined {\n return getLibStringForLocale(RESOURCES, localeInfo.locale, name);\n }\n}\n\n/**\n * Import into any component library module that needs to use resource strings.\n */\n@NgModule({\n exports: [SkyI18nModule],\n providers: [\n {\n provide: SKY_LIB_RESOURCES_PROVIDERS,\n useClass: SkyPagesResourcesProvider,\n multi: true,\n },\n ],\n})\nexport class SkyPagesResourcesModule {}\n","import { Component } from '@angular/core';\n\n/**\n * Displays buttons after the page title.\n *\n * Example:\n *\n * ```html\n * <a class=\"sky-btn sky-btn-default\" href=\"path/to/new\">New</a>\n * ```\n */\n@Component({\n selector: 'sky-action-hub-buttons',\n templateUrl: 'action-hub-buttons.component.html',\n})\nexport class SkyActionHubButtonsComponent {}\n","<ng-content></ng-content>\n","import { Component } from '@angular/core';\n\n/**\n * Displays additional content after the action items.\n */\n@Component({\n selector: 'sky-action-hub-content',\n templateUrl: 'action-hub-content.component.html',\n})\nexport class SkyActionHubContentComponent {}\n","<ng-content></ng-content>\n","import { ChangeDetectionStrategy, Component, Input } from '@angular/core';\n\nimport { SkyActionHubNeedsAttention } from './types/action-hub-needs-attention';\nimport { SkyPageLink } from './types/page-link';\nimport { SkyRecentLink } from './types/recent-link';\n\n/**\n * Creates an action hub to direct user attention to important\n * actions and provide quick access to common tasks.\n */\n@Component({\n selector: 'sky-action-hub',\n templateUrl: './action-hub.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SkyActionHubComponent {\n /**\n * Provides a list of actions that users must perform based on business requirements or best practices, or `\"loading\"` to display a wait indicator.\n */\n @Input()\n public needsAttention: SkyActionHubNeedsAttention[] | 'loading' = [];\n\n /**\n * Links back to a parent page.\n */\n @Input()\n public parentLink: SkyPageLink;\n\n /**\n * Provides a list of recently accessed links, or `\"loading\"` to display a wait indicator.\n */\n @Input()\n public recentLinks: SkyRecentLink[] | 'loading' = [];\n\n /**\n * Provides a list of related links, or `\"loading\"` to display a wait indicator.\n */\n @Input()\n public relatedLinks: SkyPageLink[] | 'loading' = [];\n\n /**\n * Specifies the page title.\n * @default \"\"\n */\n @Input()\n public title = '';\n\n public getRecentLinksSorted(\n recentLinks: SkyRecentLink[] | 'loading',\n limit: number\n ): SkyRecentLink[] | 'loading' {\n if (recentLinks === 'loading') {\n return 'loading';\n }\n if (!recentLinks || recentLinks.length === 0) {\n return [];\n }\n return recentLinks\n .slice(0)\n .sort((a, b) => {\n const aTime =\n a.lastAccessed instanceof Date\n ? a.lastAccessed.toISOString()\n : a.lastAccessed;\n const bTime =\n b.lastAccessed instanceof Date\n ? b.lastAccessed.toISOString()\n : b.lastAccessed;\n if (aTime === bTime) {\n return 0;\n }\n return aTime > bTime ? -1 : 1;\n })\n .slice(0, limit);\n }\n\n public getRelatedLinksSorted(\n relatedLinks: SkyPageLink[] | 'loading'\n ): SkyPageLink[] | 'loading' {\n if (relatedLinks === 'loading') {\n return 'loading';\n }\n if (!relatedLinks || relatedLinks.length === 0) {\n return [];\n }\n return relatedLinks.slice(0).sort((a, b) => {\n const aLabel = a.label.trim().toUpperCase();\n const bLabel = b.label.trim().toUpperCase();\n if (aLabel === bLabel) {\n return 0;\n }\n return aLabel < bLabel ? -1 : 1;\n });\n }\n}\n","<ng-template #loadingTemplateRef>\n <sky-wait [isWaiting]=\"true\"></sky-wait>\n</ng-template>\n<sky-fluid-grid>\n <sky-row>\n <sky-column>\n <sky-page-header\n [pageTitle]=\"title\"\n [parentLink]=\"parentLink\"\n ></sky-page-header>\n </sky-column>\n </sky-row>\n <sky-row>\n <sky-column screenLarge=\"9\" screenXSmall=\"12\">\n <div\n [skyThemeClass]=\"{\n 'sky-margin-stacked-separate': 'default',\n 'sky-margin-stacked-xl': 'modern'\n }\"\n >\n <ng-content select=\"sky-action-hub-buttons\"></ng-content>\n </div>\n\n <div\n [skyThemeClass]=\"{\n 'sky-margin-stacked-separate': 'default',\n 'sky-margin-stacked-xxl': 'modern'\n }\"\n >\n <ng-container\n *ngIf=\"\n needsAttention === 'loading';\n then loadingTemplateRef;\n else needsAttentionTemplateRef\n \"\n ></ng-container>\n <ng-template #needsAttentionTemplateRef>\n <sky-needs-attention [items]=\"needsAttention\"></sky-needs-attention>\n </ng-template>\n </div>\n\n <div\n [skyThemeClass]=\"{\n 'sky-margin-stacked-separate': 'default',\n 'sky-margin-stacked-xxl': 'modern'\n }\"\n >\n <ng-content select=\"sky-action-hub-content\"></ng-content>\n </div>\n </sky-column>\n <sky-column screenLarge=\"3\" screenXSmall=\"12\">\n <sky-link-list\n [links]=\"getRelatedLinksSorted(relatedLinks)\"\n [title]=\"'sky_action_hub_related_links' | skyLibResources\"\n ></sky-link-list>\n <sky-link-list\n [links]=\"getRecentLinksSorted(recentLinks, 5)\"\n [title]=\"'sky_action_hub_recent_links' | skyLibResources\"\n ></sky-link-list>\n </sky-column>\n </sky-row>\n</sky-fluid-grid>\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { RouterModule } from '@angular/router';\nimport { SkyI18nModule } from '@skyux/i18n';\nimport {\n SkyIconModule,\n SkyKeyInfoModule,\n SkyWaitModule,\n} from '@skyux/indicators';\nimport { SkyActionButtonModule, SkyFluidGridModule } from '@skyux/layout';\nimport { SkyAppLinkModule, SkyHrefModule } from '@skyux/router';\nimport { SkyThemeModule } from '@skyux/theme';\n\nimport { SkyLinkListComponent } from '../link-list/link-list.component';\nimport { SkyNeedsAttentionComponent } from '../needs-attention/needs-attention.component';\nimport { SkyPageHeaderModule } from '../page-header/page-header.module';\nimport { SkyPagesResourcesModule } from '../shared/sky-pages-resources.module';\n\nimport { SkyActionHubButtonsComponent } from './action-hub-buttons.component';\nimport { SkyActionHubContentComponent } from './action-hub-content.component';\nimport { SkyActionHubComponent } from './action-hub.component';\n\n@NgModule({\n imports: [\n CommonModule,\n SkyPagesResourcesModule,\n RouterModule,\n SkyActionButtonModule,\n SkyAppLinkModule,\n SkyFluidGridModule,\n SkyI18nModule,\n SkyIconModule,\n SkyKeyInfoModule,\n SkyPageHeaderModule,\n SkyThemeModule,\n SkyWaitModule,\n SkyHrefModule,\n ],\n declarations: [\n SkyActionHubButtonsComponent,\n SkyActionHubComponent,\n SkyActionHubContentComponent,\n SkyNeedsAttentionComponent,\n SkyLinkListComponent,\n ],\n exports: [\n SkyActionHubButtonsComponent,\n SkyActionHubComponent,\n SkyActionHubContentComponent,\n ],\n})\nexport class SkyActionHubModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}