igniteui-angular 18.1.11 → 18.1.13

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 (46) hide show
  1. package/esm2022/lib/grids/columns/column-group.component.mjs +4 -1
  2. package/esm2022/lib/grids/filtering/excel-style/excel-style-filtering.component.mjs +21 -1
  3. package/esm2022/lib/grids/grid-base.directive.mjs +2 -1
  4. package/esm2022/lib/grids/pivot-grid/pivot-grid.component.mjs +2 -1
  5. package/esm2022/lib/grids/selection/selection.service.mjs +10 -2
  6. package/esm2022/lib/query-builder/query-builder-header.component.mjs +3 -3
  7. package/esm2022/lib/query-builder/query-builder.component.mjs +3 -3
  8. package/fesm2022/igniteui-angular.mjs +38 -5
  9. package/fesm2022/igniteui-angular.mjs.map +1 -1
  10. package/lib/core/styles/components/badge/_badge-theme.scss +2 -2
  11. package/lib/core/styles/components/banner/_banner-theme.scss +5 -0
  12. package/lib/core/styles/components/input/_input-group-component.scss +11 -0
  13. package/lib/core/styles/components/input/_input-group-theme.scss +12 -1
  14. package/lib/core/styles/components/navdrawer/_navdrawer-theme.scss +14 -7
  15. package/lib/core/styles/components/tabs/_tabs-theme.scss +1 -1
  16. package/lib/grids/filtering/excel-style/excel-style-filtering.component.d.ts +20 -0
  17. package/migrations/common/ServerHost.d.ts +2 -0
  18. package/migrations/common/ServerHost.js +4 -1
  19. package/migrations/common/UpdateChanges.js +3 -3
  20. package/package.json +1 -1
  21. package/styles/igniteui-angular-dark.css +1 -1
  22. package/styles/igniteui-angular.css +1 -1
  23. package/styles/igniteui-bootstrap-dark.css +1 -1
  24. package/styles/igniteui-bootstrap-light.css +1 -1
  25. package/styles/igniteui-dark-green.css +1 -1
  26. package/styles/igniteui-fluent-dark-excel.css +1 -1
  27. package/styles/igniteui-fluent-dark-word.css +1 -1
  28. package/styles/igniteui-fluent-dark.css +1 -1
  29. package/styles/igniteui-fluent-light-excel.css +1 -1
  30. package/styles/igniteui-fluent-light-word.css +1 -1
  31. package/styles/igniteui-fluent-light.css +1 -1
  32. package/styles/igniteui-indigo-dark.css +1 -1
  33. package/styles/igniteui-indigo-light.css +1 -1
  34. package/styles/maps/igniteui-angular-dark.css.map +1 -1
  35. package/styles/maps/igniteui-angular.css.map +1 -1
  36. package/styles/maps/igniteui-bootstrap-dark.css.map +1 -1
  37. package/styles/maps/igniteui-bootstrap-light.css.map +1 -1
  38. package/styles/maps/igniteui-dark-green.css.map +1 -1
  39. package/styles/maps/igniteui-fluent-dark-excel.css.map +1 -1
  40. package/styles/maps/igniteui-fluent-dark-word.css.map +1 -1
  41. package/styles/maps/igniteui-fluent-dark.css.map +1 -1
  42. package/styles/maps/igniteui-fluent-light-excel.css.map +1 -1
  43. package/styles/maps/igniteui-fluent-light-word.css.map +1 -1
  44. package/styles/maps/igniteui-fluent-light.css.map +1 -1
  45. package/styles/maps/igniteui-indigo-dark.css.map +1 -1
  46. package/styles/maps/igniteui-indigo-light.css.map +1 -1
@@ -98,7 +98,7 @@
98
98
  --size: #{rem(22px)};
99
99
  --_badge-size: var(--size);
100
100
 
101
- display: flex;
101
+ display: inline-flex;
102
102
  justify-content: center;
103
103
  align-items: center;
104
104
  min-width: var(--_badge-size);
@@ -138,7 +138,7 @@
138
138
 
139
139
  %igx-badge-value {
140
140
  white-space: nowrap;
141
- padding: $badge-value-padding;
141
+ padding-inline: $badge-value-padding;
142
142
  }
143
143
 
144
144
  %igx-badge--success {
@@ -146,6 +146,11 @@
146
146
  flex-wrap: wrap;
147
147
  align-self: flex-end;
148
148
  gap: rem(8px);
149
+
150
+ > a {
151
+ display: inline-flex;
152
+ align-items: center;
153
+ }
149
154
  }
150
155
  }
151
156
 
@@ -158,6 +158,8 @@
158
158
  }
159
159
 
160
160
  @include mx(textarea-group, placeholder) {
161
+ @extend %form-group-placeholder !optional;
162
+
161
163
  @include e(notch) {
162
164
  @extend %textarea-group-notch--focused !optional;
163
165
  }
@@ -178,6 +180,8 @@
178
180
  }
179
181
 
180
182
  @include mx(textarea-group, placeholder, border) {
183
+ @extend %form-group-placeholder !optional;
184
+
181
185
  @include e(notch) {
182
186
  @extend %textarea-group-notch--focused !optional;
183
187
  }
@@ -212,6 +216,8 @@
212
216
  }
213
217
 
214
218
  @include m(placeholder) {
219
+ @extend %form-group-placeholder !optional;
220
+
215
221
  @include e(label) {
216
222
  @extend %form-group-label--float !optional;
217
223
  @extend %form-group-label--fixed !optional;
@@ -381,6 +387,8 @@
381
387
  }
382
388
 
383
389
  @include mx(box, textarea-group, placeholder) {
390
+ @extend %form-group-placeholder !optional;
391
+
384
392
  @include e(notch) {
385
393
  @extend %form-group-notch--box-textarea !optional;
386
394
  }
@@ -460,6 +468,7 @@
460
468
 
461
469
  @include mx(border, placeholder) {
462
470
  @extend %form-group-label--placeholder-border !optional;
471
+ @extend %form-group-placeholder !optional;
463
472
 
464
473
  @include e(label) {
465
474
  @extend %form-group-label--float-border !optional;
@@ -580,6 +589,8 @@
580
589
  }
581
590
 
582
591
  @include mx(fluent, placeholder) {
592
+ @extend %form-group-placeholder !optional;
593
+
583
594
  @include e(label) {
584
595
  @extend %fluent-placeholder-label !optional;
585
596
  }
@@ -462,6 +462,18 @@
462
462
  }
463
463
  }
464
464
 
465
+ %form-group-placeholder {
466
+ %form-group-label {
467
+ transition: none !important;
468
+ }
469
+ }
470
+
471
+ %form-group-display:not(%form-group-display--filled) {
472
+ %form-group-label {
473
+ transition: all $transition-timing;
474
+ }
475
+ }
476
+
465
477
  %form-group-display--no-margin {
466
478
  margin-block-start: 0;
467
479
  }
@@ -883,7 +895,6 @@
883
895
  backface-visibility: hidden;
884
896
  will-change: transform;
885
897
  transform-origin: top left;
886
- transition: all $transition-timing;
887
898
  margin-inline-start: pad-inline(0, rem(-2px), rem(-4px));
888
899
  }
889
900
 
@@ -202,7 +202,7 @@
202
202
  }
203
203
 
204
204
  %navdrawer-display-mini-pinned {
205
- flex-basis: var(--igx-mini-nav-drawer-size, #{$item-mini-size});
205
+ flex-basis: calc(var(--igx-mini-nav-drawer-size, #{$item-mini-size}) + rem(1px));
206
206
  }
207
207
 
208
208
  %aside {
@@ -217,7 +217,7 @@
217
217
  inset-inline-start: 0;
218
218
  z-index: 999;
219
219
  transition: width, padding, transform;
220
- transition-timing-function: $in-out-quad, $in-out-quad;
220
+ transition-timing-function: $in-out-quad;
221
221
  box-shadow: var-get($theme, 'shadow');
222
222
  padding: $aside-padding;
223
223
 
@@ -279,16 +279,23 @@
279
279
  }
280
280
 
281
281
  %aside--mini {
282
- transition-duration: .2s, .2s;
282
+ transition-duration: .3s;
283
283
  width: var(--igx-nav-drawer-size--mini);
284
+ min-width: fit-content;
284
285
 
285
286
  %item {
286
287
  justify-content: center;
288
+ min-width: fit-content;
289
+
290
+ @if $variant == 'bootstrap' {
291
+ width: rem(56px);
292
+ }
287
293
 
288
294
  @if $variant == 'indigo' {
289
- //max-width: rem(32px);
295
+ width: rem(32px);
296
+
290
297
  // important is needed to override the typography margins
291
- margin: rem(14px) auto !important;
298
+ margin: rem(4px) auto !important;
292
299
  }
293
300
 
294
301
  igx-icon {
@@ -298,7 +305,7 @@
298
305
  }
299
306
 
300
307
  %aside--normal {
301
- transition-duration: .3s, .3s;
308
+ transition-duration: .3s;
302
309
  width: var(--igx-nav-drawer-size);
303
310
  }
304
311
 
@@ -306,7 +313,7 @@
306
313
  opacity: 1;
307
314
  background: color(null, 'gray', 500, .54);
308
315
  transition: opacity, visibility;
309
- transition-duration: .25s, .25s;
316
+ transition-duration: .3s, .3s;
310
317
  transition-timing-function: ease-in, step-start;
311
318
  transition-delay: 0s, 0s;
312
319
  position: absolute;
@@ -350,7 +350,7 @@
350
350
  }
351
351
 
352
352
  @if $bootstrap-theme {
353
- border: rem(1px) solid transparent;
353
+ padding-block: rem(12px);
354
354
  border-start-start-radius: var-get($theme, 'border-radius');
355
355
  border-start-end-radius: var-get($theme, 'border-radius');
356
356
  }
@@ -113,6 +113,16 @@ export declare class IgxGridExcelStyleFilteringComponent extends BaseFilteringCo
113
113
  private _minHeight;
114
114
  /**
115
115
  * Gets the minimum height.
116
+ *
117
+ * Setting value in template:
118
+ * ```ts
119
+ * [minHeight]="'<number><unit (px|rem|etc..)>'"
120
+ * ```
121
+ *
122
+ * Example for setting a value:
123
+ * ```ts
124
+ * [minHeight]="'700px'"
125
+ * ```
116
126
  */
117
127
  get minHeight(): string;
118
128
  /**
@@ -129,6 +139,16 @@ export declare class IgxGridExcelStyleFilteringComponent extends BaseFilteringCo
129
139
  private _originalDisplay;
130
140
  /**
131
141
  * Gets the maximum height.
142
+ *
143
+ * Setting value in template:
144
+ * ```ts
145
+ * [maxHeight]="'<number><unit (px|rem|etc..)>'"
146
+ * ```
147
+ *
148
+ * Example for setting a value:
149
+ * ```ts
150
+ * [maxHeight]="'700px'"
151
+ * ```
132
152
  */
133
153
  get maxHeight(): string;
134
154
  /**
@@ -10,6 +10,8 @@ export declare class ServerHost implements ts.server.ServerHost {
10
10
  readonly args: string[];
11
11
  readonly newLine: string;
12
12
  readonly useCaseSensitiveFileNames: boolean;
13
+ /** Cached because Angular schematics encapsulation's customRequire doesn't provide `resolve` */
14
+ private nativeRequire;
13
15
  constructor(host: Tree);
14
16
  /**
15
17
  * Read a file's content from the Virtual Tree
@@ -4,6 +4,7 @@ exports.ServerHost = void 0;
4
4
  const pathFs = require("path");
5
5
  const ts = require("typescript/lib/tsserverlibrary");
6
6
  const tsUtils_1 = require("./tsUtils");
7
+ const module_1 = require("module");
7
8
  /**
8
9
  * Language server host is responsible for **most** of the FS operations / checks
9
10
  * Angular's Ivy LS sometimes bypasses these, calling path methods instead of tsLsHost operations
@@ -11,6 +12,8 @@ const tsUtils_1 = require("./tsUtils");
11
12
  class ServerHost {
12
13
  constructor(host) {
13
14
  this.host = host;
15
+ /** Cached because Angular schematics encapsulation's customRequire doesn't provide `resolve` */
16
+ this.nativeRequire = (0, module_1.createRequire)(__filename);
14
17
  this.args = ts.sys.args;
15
18
  this.newLine = ts.sys.newLine;
16
19
  this.useCaseSensitiveFileNames = ts.sys.useCaseSensitiveFileNames;
@@ -112,7 +115,7 @@ class ServerHost {
112
115
  moduleName = tsUtils_1.CUSTOM_TS_PLUGIN_PATH;
113
116
  paths.push(__dirname);
114
117
  }
115
- const modulePath = require.resolve(moduleName, { paths });
118
+ const modulePath = this.nativeRequire.resolve(moduleName, { paths });
116
119
  return {
117
120
  module: require(modulePath),
118
121
  error: undefined,
@@ -588,7 +588,7 @@ class UpdateChanges {
588
588
  return;
589
589
  }
590
590
  // attempt to find a main tsconfig from workspace:
591
- const wsProject = this.workspace.projects[0];
591
+ const wsProject = Object.values(this.workspace.projects)[0];
592
592
  // technically could be per-project, but assuming there's at least one main tsconfig for IDE support
593
593
  const projectConfig = (_b = (_a = wsProject.architect) === null || _a === void 0 ? void 0 : _a.build) === null || _b === void 0 ? void 0 : _b.options['tsConfig'];
594
594
  if (!projectConfig || !this.host.exists(projectConfig)) {
@@ -742,8 +742,8 @@ class UpdateChanges {
742
742
  for (const key of projectKeys) {
743
743
  const wsProject = this.workspace.projects[key];
744
744
  // intentionally compare against string values of the enum to avoid hard import
745
- if (wsProject.projectType == "application" && ((_b = (_a = wsProject.architect) === null || _a === void 0 ? void 0 : _a.build) === null || _b === void 0 ? void 0 : _b.options['main'])) {
746
- return wsProject.architect.build.options['main'];
745
+ if (wsProject.projectType == "application" && ((_b = (_a = wsProject.architect) === null || _a === void 0 ? void 0 : _a.build) === null || _b === void 0 ? void 0 : _b.options)) {
746
+ return wsProject.architect.build.options['browser'] || wsProject.architect.build.options['main'];
747
747
  }
748
748
  else if (wsProject.projectType == "library") {
749
749
  // TODO: attempt to resolve from project ng-package.json or tsConfig
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "igniteui-angular",
3
- "version": "18.1.11",
3
+ "version": "18.1.13",
4
4
  "description": "Ignite UI for Angular is a dependency-free Angular toolkit for building modern web apps",
5
5
  "author": "Infragistics",
6
6
  "license": "SEE LICENSE IN LICENSE",