@lifecorner/angular-ui-kit 3.5.1 → 3.6.1

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 (85) hide show
  1. package/README.md +2 -1
  2. package/fesm2022/lifecorner-angular-ui-kit-accordion.mjs +4 -1
  3. package/fesm2022/lifecorner-angular-ui-kit-accordion.mjs.map +1 -1
  4. package/fesm2022/lifecorner-angular-ui-kit-alert.mjs +16 -1
  5. package/fesm2022/lifecorner-angular-ui-kit-alert.mjs.map +1 -1
  6. package/fesm2022/lifecorner-angular-ui-kit-bottom-nav.mjs +4 -1
  7. package/fesm2022/lifecorner-angular-ui-kit-bottom-nav.mjs.map +1 -1
  8. package/fesm2022/lifecorner-angular-ui-kit-button.mjs +4 -4
  9. package/fesm2022/lifecorner-angular-ui-kit-button.mjs.map +1 -1
  10. package/fesm2022/lifecorner-angular-ui-kit-callout.mjs +16 -1
  11. package/fesm2022/lifecorner-angular-ui-kit-callout.mjs.map +1 -1
  12. package/fesm2022/lifecorner-angular-ui-kit-chat.mjs +14 -1
  13. package/fesm2022/lifecorner-angular-ui-kit-chat.mjs.map +1 -1
  14. package/fesm2022/lifecorner-angular-ui-kit-code-block.mjs +46 -32
  15. package/fesm2022/lifecorner-angular-ui-kit-code-block.mjs.map +1 -1
  16. package/fesm2022/lifecorner-angular-ui-kit-combobox.mjs +4 -1
  17. package/fesm2022/lifecorner-angular-ui-kit-combobox.mjs.map +1 -1
  18. package/fesm2022/lifecorner-angular-ui-kit-confirm-dialog.mjs +4 -1
  19. package/fesm2022/lifecorner-angular-ui-kit-confirm-dialog.mjs.map +1 -1
  20. package/fesm2022/lifecorner-angular-ui-kit-copy-field.mjs +4 -1
  21. package/fesm2022/lifecorner-angular-ui-kit-copy-field.mjs.map +1 -1
  22. package/fesm2022/lifecorner-angular-ui-kit-date-range-picker.mjs +4 -1
  23. package/fesm2022/lifecorner-angular-ui-kit-date-range-picker.mjs.map +1 -1
  24. package/fesm2022/lifecorner-angular-ui-kit-document-viewer.mjs +14 -1
  25. package/fesm2022/lifecorner-angular-ui-kit-document-viewer.mjs.map +1 -1
  26. package/fesm2022/lifecorner-angular-ui-kit-drawer.mjs +4 -1
  27. package/fesm2022/lifecorner-angular-ui-kit-drawer.mjs.map +1 -1
  28. package/fesm2022/lifecorner-angular-ui-kit-email-input.mjs +4 -0
  29. package/fesm2022/lifecorner-angular-ui-kit-email-input.mjs.map +1 -1
  30. package/fesm2022/lifecorner-angular-ui-kit-file-upload.mjs +4 -1
  31. package/fesm2022/lifecorner-angular-ui-kit-file-upload.mjs.map +1 -1
  32. package/fesm2022/lifecorner-angular-ui-kit-footer.mjs +4 -1
  33. package/fesm2022/lifecorner-angular-ui-kit-footer.mjs.map +1 -1
  34. package/fesm2022/lifecorner-angular-ui-kit-gallery.mjs +14 -1
  35. package/fesm2022/lifecorner-angular-ui-kit-gallery.mjs.map +1 -1
  36. package/fesm2022/lifecorner-angular-ui-kit-header.mjs +18 -1
  37. package/fesm2022/lifecorner-angular-ui-kit-header.mjs.map +1 -1
  38. package/fesm2022/lifecorner-angular-ui-kit-icon.mjs +186 -275
  39. package/fesm2022/lifecorner-angular-ui-kit-icon.mjs.map +1 -1
  40. package/fesm2022/lifecorner-angular-ui-kit-icons.mjs +803 -0
  41. package/fesm2022/lifecorner-angular-ui-kit-icons.mjs.map +1 -0
  42. package/fesm2022/lifecorner-angular-ui-kit-internal-icon-set.mjs +297 -0
  43. package/fesm2022/lifecorner-angular-ui-kit-internal-icon-set.mjs.map +1 -0
  44. package/fesm2022/lifecorner-angular-ui-kit-internal-navigation.mjs +38 -0
  45. package/fesm2022/lifecorner-angular-ui-kit-internal-navigation.mjs.map +1 -0
  46. package/fesm2022/lifecorner-angular-ui-kit-kanban-board.mjs +4 -1
  47. package/fesm2022/lifecorner-angular-ui-kit-kanban-board.mjs.map +1 -1
  48. package/fesm2022/lifecorner-angular-ui-kit-log-viewer.mjs +4 -1
  49. package/fesm2022/lifecorner-angular-ui-kit-log-viewer.mjs.map +1 -1
  50. package/fesm2022/lifecorner-angular-ui-kit-modal.mjs +4 -1
  51. package/fesm2022/lifecorner-angular-ui-kit-modal.mjs.map +1 -1
  52. package/fesm2022/lifecorner-angular-ui-kit-next-step-card.mjs +12 -1
  53. package/fesm2022/lifecorner-angular-ui-kit-next-step-card.mjs.map +1 -1
  54. package/fesm2022/lifecorner-angular-ui-kit-notification-center.mjs +14 -1
  55. package/fesm2022/lifecorner-angular-ui-kit-notification-center.mjs.map +1 -1
  56. package/fesm2022/lifecorner-angular-ui-kit-number-input.mjs +4 -1
  57. package/fesm2022/lifecorner-angular-ui-kit-number-input.mjs.map +1 -1
  58. package/fesm2022/lifecorner-angular-ui-kit-password-input.mjs +4 -1
  59. package/fesm2022/lifecorner-angular-ui-kit-password-input.mjs.map +1 -1
  60. package/fesm2022/lifecorner-angular-ui-kit-pipeline.mjs +12 -1
  61. package/fesm2022/lifecorner-angular-ui-kit-pipeline.mjs.map +1 -1
  62. package/fesm2022/lifecorner-angular-ui-kit-rating.mjs +4 -1
  63. package/fesm2022/lifecorner-angular-ui-kit-rating.mjs.map +1 -1
  64. package/fesm2022/lifecorner-angular-ui-kit-search-input.mjs +4 -1
  65. package/fesm2022/lifecorner-angular-ui-kit-search-input.mjs.map +1 -1
  66. package/fesm2022/lifecorner-angular-ui-kit-sidenav-placeholder.mjs +262 -0
  67. package/fesm2022/lifecorner-angular-ui-kit-sidenav-placeholder.mjs.map +1 -0
  68. package/fesm2022/lifecorner-angular-ui-kit-sidenav.mjs +18 -40
  69. package/fesm2022/lifecorner-angular-ui-kit-sidenav.mjs.map +1 -1
  70. package/fesm2022/lifecorner-angular-ui-kit-table.mjs +4 -1
  71. package/fesm2022/lifecorner-angular-ui-kit-table.mjs.map +1 -1
  72. package/fesm2022/lifecorner-angular-ui-kit-toast.mjs +16 -1
  73. package/fesm2022/lifecorner-angular-ui-kit-toast.mjs.map +1 -1
  74. package/fesm2022/lifecorner-angular-ui-kit-tree-view.mjs +18 -1
  75. package/fesm2022/lifecorner-angular-ui-kit-tree-view.mjs.map +1 -1
  76. package/fesm2022/lifecorner-angular-ui-kit.mjs +2 -0
  77. package/package.json +17 -1
  78. package/types/lifecorner-angular-ui-kit-code-block.d.ts +10 -4
  79. package/types/lifecorner-angular-ui-kit-icon.d.ts +125 -5
  80. package/types/lifecorner-angular-ui-kit-icons.d.ts +140 -0
  81. package/types/lifecorner-angular-ui-kit-internal-icon-set.d.ts +31 -0
  82. package/types/lifecorner-angular-ui-kit-internal-navigation.d.ts +28 -0
  83. package/types/lifecorner-angular-ui-kit-sidenav-placeholder.d.ts +163 -0
  84. package/types/lifecorner-angular-ui-kit-sidenav.d.ts +2 -1
  85. package/types/lifecorner-angular-ui-kit.d.ts +2 -0
@@ -0,0 +1,163 @@
1
+ import { NavigationItem } from "@lifecorner/angular-ui-kit/models";
2
+ import { SidenavPosition, SidenavVariant } from "@lifecorner/angular-ui-kit/sidenav";
3
+ import * as i0 from "@angular/core";
4
+ /**
5
+ * Stand-in for a docked `lc-sidenav` while it loads (3.6, AS-18): an inert
6
+ * skeleton of the rail with exactly the sidenav's boxes — the same container,
7
+ * width, logo block, rows, sections and expanded groups, built from the same
8
+ * classes and the same box rules — so swapping it for the sidenav moves
9
+ * nothing (CLS 0). Give it the sidenav's bindings.
10
+ *
11
+ * Use it as the `@placeholder` of a `@defer (on viewport)` block. In the app
12
+ * shell the navigation column is hidden below 1024 px, so on a phone the
13
+ * trigger never fires and the sidenav's JavaScript never loads:
14
+ *
15
+ * @example
16
+ * ```html
17
+ * <div shell-nav>
18
+ * @defer (on viewport) {
19
+ * <lc-sidenav mode="docked" [isOpen]="true" width="100%" [mobileBreakpoint]="0"
20
+ * variant="transparent" ariaLabel="Hauptnavigation" [items]="nav" [activeRoute]="url()" />
21
+ * } @placeholder {
22
+ * <lc-sidenav-placeholder [isOpen]="true" width="100%" variant="transparent" [items]="nav" [activeRoute]="url()" />
23
+ * }
24
+ * </div>
25
+ * ```
26
+ * Import `SidenavComponent` from `@lifecorner/angular-ui-kit/sidenav` and use
27
+ * it only inside the `@defer` block; any other use of it in the same
28
+ * component makes Angular load it eagerly. With a percentage `width`, give
29
+ * the block a container of definite width (the app shell's column is one):
30
+ * in a shrink-to-fit container the sidenav's width follows its label text.
31
+ *
32
+ * Accessibility: the whole placeholder is `aria-hidden="true"` and `inert` —
33
+ * no landmark, no tab stop, nothing announced, so focus can never be inside
34
+ * it when it is swapped. The navigation landmark, the current item
35
+ * (`aria-current`) and the tab order arrive with `lc-sidenav`. Static, no
36
+ * shimmer. The skeleton shapes are filled with
37
+ * `--lc-sidenav-placeholder-fill`; the `--lc-sidenav-*` hooks apply as on
38
+ * `lc-sidenav` (set them on an ancestor of both).
39
+ */
40
+ export declare class SidenavPlaceholderComponent {
41
+ private readonly router;
42
+ /** The router's URL, as on `lc-sidenav`; read only when `activeRoute` is empty. */
43
+ private readonly routerUrl;
44
+ /**
45
+ * Navigation items, the same value as on `lc-sidenav`: they give the number
46
+ * of rows, the sections and the groups that start expanded.
47
+ * @default []
48
+ */
49
+ readonly items: import("@angular/core").InputSignal<NavigationItem[]>;
50
+ /**
51
+ * The current route, as on `lc-sidenav`. It decides which group starts
52
+ * expanded; when empty, the router's URL does (3.5 rules).
53
+ * @default ''
54
+ */
55
+ readonly activeRoute: import("@angular/core").InputSignal<string>;
56
+ /**
57
+ * The 56 px icon rail. One-way here (a `model` on `lc-sidenav`).
58
+ * @default false
59
+ */
60
+ readonly collapsed: import("@angular/core").InputSignal<boolean>;
61
+ /**
62
+ * Whether the docked rail is open; a closed one is 0 px wide, as on `lc-sidenav`.
63
+ * @default false
64
+ */
65
+ readonly isOpen: import("@angular/core").InputSignal<boolean>;
66
+ /**
67
+ * Width of the rail, as on `lc-sidenav`.
68
+ * @default '320px'
69
+ */
70
+ readonly width: import("@angular/core").InputSignal<string>;
71
+ /**
72
+ * Surface, as on `lc-sidenav`: `default` (the rail) or `transparent` (the
73
+ * side navigation on the page, 48 px pills).
74
+ * @default 'default'
75
+ */
76
+ readonly variant: import("@angular/core").InputSignal<SidenavVariant>;
77
+ /**
78
+ * Theme, as on `lc-sidenav`.
79
+ * @default 'auto'
80
+ */
81
+ readonly theme: import("@angular/core").InputSignal<"light" | "dark" | "auto">;
82
+ /**
83
+ * Position, as on `lc-sidenav`.
84
+ * @default 'left'
85
+ */
86
+ readonly position: import("@angular/core").InputSignal<SidenavPosition>;
87
+ /**
88
+ * Reserves the logo block, as `showLogo` on `lc-sidenav`.
89
+ * @default false
90
+ */
91
+ readonly showLogo: import("@angular/core").InputSignal<boolean>;
92
+ /**
93
+ * Height of the logo block, as on `lc-sidenav`.
94
+ * @default 'md'
95
+ */
96
+ readonly logoSize: import("@angular/core").InputSignal<"xs" | "sm" | "md" | "lg" | "xl">;
97
+ /** The items in display order. @internal */
98
+ protected readonly sortedItems: import("@angular/core").Signal<NavigationItem[]>;
99
+ /** The groups `lc-sidenav` opens on load: the parents of the current item. @internal */
100
+ private readonly expanded;
101
+ /** The rail's classes, in `lc-sidenav`'s order, always docked. @internal */
102
+ protected readonly railClasses: import("@angular/core").Signal<string>;
103
+ /** The rail's width, as `lc-sidenav` sets it. @internal */
104
+ protected readonly railWidth: import("@angular/core").Signal<string>;
105
+ constructor();
106
+ /** Whether a group starts expanded. @internal */
107
+ protected isExpanded(item: NavigationItem): boolean;
108
+ /** The label bar's width for the row at `index`. @internal */
109
+ protected labelWidth(index: number): string;
110
+ static ɵfac: i0.ɵɵFactoryDeclaration<SidenavPlaceholderComponent, never>;
111
+ static ɵcmp: i0.ɵɵComponentDeclaration<SidenavPlaceholderComponent, "lc-sidenav-placeholder", never, {
112
+ "items": {
113
+ "alias": "items";
114
+ "required": false;
115
+ "isSignal": true;
116
+ };
117
+ "activeRoute": {
118
+ "alias": "activeRoute";
119
+ "required": false;
120
+ "isSignal": true;
121
+ };
122
+ "collapsed": {
123
+ "alias": "collapsed";
124
+ "required": false;
125
+ "isSignal": true;
126
+ };
127
+ "isOpen": {
128
+ "alias": "isOpen";
129
+ "required": false;
130
+ "isSignal": true;
131
+ };
132
+ "width": {
133
+ "alias": "width";
134
+ "required": false;
135
+ "isSignal": true;
136
+ };
137
+ "variant": {
138
+ "alias": "variant";
139
+ "required": false;
140
+ "isSignal": true;
141
+ };
142
+ "theme": {
143
+ "alias": "theme";
144
+ "required": false;
145
+ "isSignal": true;
146
+ };
147
+ "position": {
148
+ "alias": "position";
149
+ "required": false;
150
+ "isSignal": true;
151
+ };
152
+ "showLogo": {
153
+ "alias": "showLogo";
154
+ "required": false;
155
+ "isSignal": true;
156
+ };
157
+ "logoSize": {
158
+ "alias": "logoSize";
159
+ "required": false;
160
+ "isSignal": true;
161
+ };
162
+ }, {}, never, never, true, never>;
163
+ }
@@ -173,7 +173,8 @@ export declare class SidenavComponent implements OnDestroy {
173
173
  * With `activeRoute` set: the first link whose route equals it. Without:
174
174
  * the router's path — the exact match wins, otherwise the longest link
175
175
  * route the path continues with a `/` (`/` matches only `/`); ties go to
176
- * the first link in display order.
176
+ * the first link in display order. The rules live in
177
+ * `internal/navigation` since 3.6, shared with `lc-sidenav-placeholder`.
177
178
  */
178
179
  private readonly currentItem;
179
180
  /**
@@ -7,6 +7,7 @@ export * from "@lifecorner/angular-ui-kit/card";
7
7
  export * from "@lifecorner/angular-ui-kit/checkbox";
8
8
  export * from "@lifecorner/angular-ui-kit/icon";
9
9
  export * from "@lifecorner/angular-ui-kit/icon-names";
10
+ export * from "@lifecorner/angular-ui-kit/icons";
10
11
  export * from "@lifecorner/angular-ui-kit/logo";
11
12
  export * from "@lifecorner/angular-ui-kit/menu";
12
13
  export * from "@lifecorner/angular-ui-kit/input";
@@ -44,6 +45,7 @@ export * from "@lifecorner/angular-ui-kit/breadcrumbs";
44
45
  export * from "@lifecorner/angular-ui-kit/header";
45
46
  export * from "@lifecorner/angular-ui-kit/pagination";
46
47
  export * from "@lifecorner/angular-ui-kit/sidenav";
48
+ export * from "@lifecorner/angular-ui-kit/sidenav-placeholder";
47
49
  export * from "@lifecorner/angular-ui-kit/tabs";
48
50
  export * from "@lifecorner/angular-ui-kit/bottom-nav";
49
51
  export * from "@lifecorner/angular-ui-kit/app-shell";