@koobiq/components 18.11.0 → 18.12.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 (49) hide show
  1. package/button/button-tokens.scss +1 -1
  2. package/core/common-behaviors/error-state.d.ts +3 -3
  3. package/esm2022/button/button.component.mjs +2 -2
  4. package/esm2022/core/common-behaviors/error-state.mjs +1 -1
  5. package/esm2022/core/version.mjs +2 -2
  6. package/esm2022/file-upload/file-upload.mjs +40 -2
  7. package/esm2022/file-upload/multiple-file-upload.component.mjs +43 -47
  8. package/esm2022/file-upload/single-file-upload.component.mjs +41 -45
  9. package/esm2022/form-field/hint.mjs +2 -2
  10. package/esm2022/form-field/password-hint.mjs +2 -2
  11. package/esm2022/modal/modal.service.mjs +2 -2
  12. package/esm2022/modal/modal.type.mjs +1 -1
  13. package/esm2022/scrollbar/scrollbar.directive.mjs +6 -3
  14. package/esm2022/toast/toast-container.component.mjs +3 -3
  15. package/esm2022/toast/toast.component.mjs +18 -9
  16. package/esm2022/toast/toast.module.mjs +14 -50
  17. package/esm2022/toast/toast.service.mjs +5 -2
  18. package/esm2022/tree-select/tree-select.component.mjs +5 -35
  19. package/fesm2022/koobiq-components-button.mjs +2 -2
  20. package/fesm2022/koobiq-components-button.mjs.map +1 -1
  21. package/fesm2022/koobiq-components-core.mjs +1 -1
  22. package/fesm2022/koobiq-components-core.mjs.map +1 -1
  23. package/fesm2022/koobiq-components-file-upload.mjs +107 -76
  24. package/fesm2022/koobiq-components-file-upload.mjs.map +1 -1
  25. package/fesm2022/koobiq-components-form-field.mjs +4 -4
  26. package/fesm2022/koobiq-components-form-field.mjs.map +1 -1
  27. package/fesm2022/koobiq-components-modal.mjs +1 -1
  28. package/fesm2022/koobiq-components-modal.mjs.map +1 -1
  29. package/fesm2022/koobiq-components-scrollbar.mjs +5 -2
  30. package/fesm2022/koobiq-components-scrollbar.mjs.map +1 -1
  31. package/fesm2022/koobiq-components-toast.mjs +138 -161
  32. package/fesm2022/koobiq-components-toast.mjs.map +1 -1
  33. package/fesm2022/koobiq-components-tree-select.mjs +4 -34
  34. package/fesm2022/koobiq-components-tree-select.mjs.map +1 -1
  35. package/file-upload/_file-upload-theme.scss +16 -2
  36. package/file-upload/file-upload.d.ts +29 -2
  37. package/file-upload/multiple-file-upload.component.d.ts +18 -18
  38. package/file-upload/single-file-upload.component.d.ts +17 -16
  39. package/form-field/_hint-theme.scss +1 -1
  40. package/modal/modal.type.d.ts +6 -1
  41. package/package.json +4 -4
  42. package/schematics/ng-add/index.js +2 -2
  43. package/scrollbar/scrollbar.directive.d.ts +2 -1
  44. package/toast/toast-container.component.d.ts +1 -1
  45. package/toast/toast.component.d.ts +2 -2
  46. package/toast/toast.module.d.ts +1 -7
  47. package/toast/toast.service.d.ts +1 -1
  48. package/tree-select/_tree-select-theme.scss +4 -0
  49. package/tree-select/tree-select.component.d.ts +1 -12
@@ -1,17 +1,11 @@
1
- import { AfterViewInit, ChangeDetectorRef, ElementRef, EventEmitter, OnDestroy, Renderer2 } from '@angular/core';
2
- import { ControlValueAccessor, NgControl } from '@angular/forms';
3
- import { CanDisable, KbqLocaleService } from '@koobiq/components/core';
1
+ import { AfterViewInit, DoCheck, ElementRef, EventEmitter } from '@angular/core';
2
+ import { ControlValueAccessor } from '@angular/forms';
3
+ import { CanDisable, ErrorStateMatcher } from '@koobiq/components/core';
4
4
  import { ProgressSpinnerMode } from '@koobiq/components/progress-spinner';
5
- import { Subscription } from 'rxjs';
6
- import { KbqFile, KbqFileItem, KbqFileValidatorFn, KbqInputFile, KbqInputFileLabel } from './file-upload';
5
+ import { KbqFile, KbqFileItem, KbqFileUploadBase, KbqFileValidatorFn, KbqInputFile, KbqInputFileLabel } from './file-upload';
7
6
  import * as i0 from "@angular/core";
8
7
  export declare const KBQ_SINGLE_FILE_UPLOAD_DEFAULT_CONFIGURATION: KbqInputFileLabel;
9
- export declare class KbqSingleFileUploadComponent implements AfterViewInit, OnDestroy, KbqInputFile, CanDisable, ControlValueAccessor {
10
- private cdr;
11
- private renderer;
12
- readonly configuration: KbqInputFileLabel;
13
- private localeService?;
14
- ngControl?: NgControl | undefined;
8
+ export declare class KbqSingleFileUploadComponent extends KbqFileUploadBase implements AfterViewInit, KbqInputFile, CanDisable, ControlValueAccessor, DoCheck {
15
9
  /**
16
10
  * A value responsible for progress spinner type.
17
11
  * Loading logic depends on selected mode */
@@ -27,6 +21,8 @@ export declare class KbqSingleFileUploadComponent implements AfterViewInit, OnDe
27
21
  * @deprecated use FormControl for validation
28
22
  */
29
23
  customValidation?: KbqFileValidatorFn[];
24
+ /** An object used to control the error state of the component. */
25
+ errorStateMatcher: ErrorStateMatcher;
30
26
  private _file;
31
27
  get file(): KbqFileItem | null;
32
28
  set file(currentFile: KbqFileItem | null);
@@ -35,7 +31,6 @@ export declare class KbqSingleFileUploadComponent implements AfterViewInit, OnDe
35
31
  private readonly hint;
36
32
  config: KbqInputFileLabel;
37
33
  separatedCaptionText: string[];
38
- statusChangeSubscription?: Subscription;
39
34
  /** cvaOnChange function registered via registerOnChange (ControlValueAccessor).
40
35
  * @docs-private
41
36
  */
@@ -46,9 +41,15 @@ export declare class KbqSingleFileUploadComponent implements AfterViewInit, OnDe
46
41
  onTouched: () => void;
47
42
  get acceptedFiles(): string;
48
43
  get hasHint(): boolean;
49
- constructor(cdr: ChangeDetectorRef, renderer: Renderer2, configuration: KbqInputFileLabel, localeService?: KbqLocaleService | undefined, ngControl?: NgControl | undefined);
44
+ /**
45
+ * Indicates an invalid state based on file errors or `errorState`,
46
+ * applying a CSS class in HTML for visual feedback.
47
+ */
48
+ get invalid(): boolean;
49
+ readonly configuration: KbqInputFileLabel | null;
50
+ constructor();
50
51
  ngAfterViewInit(): void;
51
- ngOnDestroy(): void;
52
+ ngDoCheck(): void;
52
53
  /** Implemented as part of ControlValueAccessor.
53
54
  * @docs-private */
54
55
  writeValue(file: File | KbqFileItem | null): void;
@@ -72,6 +73,6 @@ export declare class KbqSingleFileUploadComponent implements AfterViewInit, OnDe
72
73
  private validateFile;
73
74
  private initDefaultParams;
74
75
  private getCaptionText;
75
- static ɵfac: i0.ɵɵFactoryDeclaration<KbqSingleFileUploadComponent, [null, null, { optional: true; }, { optional: true; }, { optional: true; self: true; }]>;
76
- static ɵcmp: i0.ɵɵComponentDeclaration<KbqSingleFileUploadComponent, "kbq-single-file-upload,kbq-file-upload:not([multiple])", never, { "progressMode": { "alias": "progressMode"; "required": false; }; "accept": { "alias": "accept"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "errors": { "alias": "errors"; "required": false; }; "inputId": { "alias": "inputId"; "required": false; }; "customValidation": { "alias": "customValidation"; "required": false; }; "file": { "alias": "file"; "required": false; }; }, { "fileQueueChange": "fileQueueChange"; }, ["hint"], ["[kbq-icon]", "kbq-hint"], false, never>;
76
+ static ɵfac: i0.ɵɵFactoryDeclaration<KbqSingleFileUploadComponent, never>;
77
+ static ɵcmp: i0.ɵɵComponentDeclaration<KbqSingleFileUploadComponent, "kbq-single-file-upload,kbq-file-upload:not([multiple])", never, { "progressMode": { "alias": "progressMode"; "required": false; }; "accept": { "alias": "accept"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "errors": { "alias": "errors"; "required": false; }; "inputId": { "alias": "inputId"; "required": false; }; "customValidation": { "alias": "customValidation"; "required": false; }; "errorStateMatcher": { "alias": "errorStateMatcher"; "required": false; }; "file": { "alias": "file"; "required": false; }; }, { "fileQueueChange": "fileQueueChange"; }, ["hint"], ["[kbq-icon]", "kbq-hint"], false, never>;
77
78
  }
@@ -49,7 +49,7 @@
49
49
 
50
50
  @mixin kbq-hint-typography() {
51
51
  .kbq-hint .kbq-hint__text {
52
- @include kbq-typography-level-to-styles-css-variables(typography, text-normal-medium);
52
+ @include kbq-typography-level-to-styles-css-variables(typography, text-normal);
53
53
  }
54
54
 
55
55
  .kbq-hint.kbq-hint_compact .kbq-hint__text {
@@ -1,5 +1,5 @@
1
1
  import { OverlayRef } from '@angular/cdk/overlay';
2
- import { EventEmitter, TemplateRef, Type } from '@angular/core';
2
+ import { EventEmitter, Injector, TemplateRef, Type } from '@angular/core';
3
3
  export type OnClickCallback<T> = (instance: T) => (false | void | {}) | Promise<false | void | {}>;
4
4
  export type ModalType = 'default' | 'confirm' | 'custom';
5
5
  export type ConfirmType = 'confirm' | 'success' | 'warn';
@@ -45,6 +45,11 @@ export interface ModalOptions<C = any, R = any> {
45
45
  export interface IModalOptionsForService<T = any> extends ModalOptions<T> {
46
46
  kbqOnOk?: OnClickCallback<T>;
47
47
  kbqOnCancel?: OnClickCallback<T>;
48
+ /**
49
+ * The injector used to create the component that will be attached.
50
+ * If specified, it overrides the injector provided by `KbqModalService`.
51
+ */
52
+ injector?: Injector;
48
53
  }
49
54
  export interface IModalButtonOptions<T = any> {
50
55
  label: string;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@koobiq/components",
3
- "version": "18.11.0",
3
+ "version": "18.12.1",
4
4
  "description": "koobiq",
5
5
  "repository": {
6
6
  "type": "git",
@@ -24,9 +24,9 @@
24
24
  "@angular/cdk": "^18.0.0",
25
25
  "@angular/core": "^18.0.0",
26
26
  "@angular/forms": "^18.0.0",
27
- "@koobiq/cdk": "18.11.0",
28
- "@koobiq/angular-moment-adapter": "18.11.0",
29
- "@koobiq/angular-luxon-adapter": "18.11.0",
27
+ "@koobiq/cdk": "18.12.1",
28
+ "@koobiq/angular-moment-adapter": "18.12.1",
29
+ "@koobiq/angular-luxon-adapter": "18.12.1",
30
30
  "@koobiq/date-formatter": "^3.1.4",
31
31
  "@koobiq/icons": "^9.2.0",
32
32
  "@koobiq/tokens-builder": "3.8.1",
@@ -40,8 +40,8 @@ function ngAdd(options) {
40
40
  }
41
41
  // Installing dependencies
42
42
  utils_packageConfig.addPackageToPackageJson(tree, '@angular/cdk', "^18.2.6");
43
- utils_packageConfig.addPackageToPackageJson(tree, '@koobiq/cdk', "^18.11.0");
44
- utils_packageConfig.addPackageToPackageJson(tree, '@koobiq/angular-luxon-adapter', "^18.11.0");
43
+ utils_packageConfig.addPackageToPackageJson(tree, '@koobiq/cdk', "^18.12.1");
44
+ utils_packageConfig.addPackageToPackageJson(tree, '@koobiq/angular-luxon-adapter', "^18.12.1");
45
45
  utils_packageConfig.addPackageToPackageJson(tree, '@koobiq/date-formatter', "^3.1.4");
46
46
  utils_packageConfig.addPackageToPackageJson(tree, '@koobiq/date-adapter', "^3.1.4");
47
47
  utils_packageConfig.addPackageToPackageJson(tree, '@koobiq/icons', "^9.2.0");
@@ -2,6 +2,7 @@ import { NgZone, OnDestroy } from '@angular/core';
2
2
  import { OverlayScrollbars } from 'overlayscrollbars';
3
3
  import { KbqScrollbarEvents, KbqScrollbarOptions, KbqScrollbarTarget } from './scrollbar.types';
4
4
  import * as i0 from "@angular/core";
5
+ import * as i1 from "@angular/cdk/overlay";
5
6
  /**
6
7
  * A directive for adding `overlayscrollbars` to an element.
7
8
  */
@@ -24,5 +25,5 @@ export declare class KbqScrollbarDirective implements OnDestroy {
24
25
  initialize(target: KbqScrollbarTarget): void;
25
26
  ngOnDestroy(): void;
26
27
  static ɵfac: i0.ɵɵFactoryDeclaration<KbqScrollbarDirective, never>;
27
- static ɵdir: i0.ɵɵDirectiveDeclaration<KbqScrollbarDirective, "[kbqScrollbar]", never, { "options": { "alias": "options"; "required": false; }; "events": { "alias": "events"; "required": false; }; "defer": { "alias": "defer"; "required": false; }; }, {}, never, never, true, never>;
28
+ static ɵdir: i0.ɵɵDirectiveDeclaration<KbqScrollbarDirective, "[kbqScrollbar]", never, { "options": { "alias": "options"; "required": false; }; "events": { "alias": "events"; "required": false; }; "defer": { "alias": "defer"; "required": false; }; }, {}, never, never, true, [{ directive: typeof i1.CdkScrollable; inputs: {}; outputs: {}; }]>;
28
29
  }
@@ -15,5 +15,5 @@ export declare class KbqToastContainerComponent extends CdkScrollable {
15
15
  getInjector(data: KbqToastData): Injector;
16
16
  dispatchScrollEvent: () => void;
17
17
  static ɵfac: i0.ɵɵFactoryDeclaration<KbqToastContainerComponent, never>;
18
- static ɵcmp: i0.ɵɵComponentDeclaration<KbqToastContainerComponent, "kbq-toast-container", never, {}, {}, never, never, false, never>;
18
+ static ɵcmp: i0.ɵɵComponentDeclaration<KbqToastContainerComponent, "kbq-toast-container", never, {}, {}, never, never, true, never>;
19
19
  }
@@ -8,7 +8,7 @@ import { KbqToastData } from './toast.type';
8
8
  import * as i0 from "@angular/core";
9
9
  export declare class KbqToastCloseButton {
10
10
  static ɵfac: i0.ɵɵFactoryDeclaration<KbqToastCloseButton, never>;
11
- static ɵdir: i0.ɵɵDirectiveDeclaration<KbqToastCloseButton, "[kbq-toast-close-button]", never, {}, {}, never, never, false, never>;
11
+ static ɵdir: i0.ɵɵDirectiveDeclaration<KbqToastCloseButton, "[kbq-toast-close-button]", never, {}, {}, never, never, true, never>;
12
12
  }
13
13
  export declare class KbqToastComponent implements OnDestroy {
14
14
  readonly data: KbqToastData;
@@ -35,5 +35,5 @@ export declare class KbqToastComponent implements OnDestroy {
35
35
  private runFocusMonitor;
36
36
  private stopFocusMonitor;
37
37
  static ɵfac: i0.ɵɵFactoryDeclaration<KbqToastComponent, never>;
38
- static ɵcmp: i0.ɵɵComponentDeclaration<KbqToastComponent, "kbq-toast", never, {}, {}, never, never, false, never>;
38
+ static ɵcmp: i0.ɵɵComponentDeclaration<KbqToastComponent, "kbq-toast", never, {}, {}, never, never, true, never>;
39
39
  }
@@ -1,14 +1,8 @@
1
1
  import * as i0 from "@angular/core";
2
2
  import * as i1 from "./toast.component";
3
3
  import * as i2 from "./toast-container.component";
4
- import * as i3 from "@angular/cdk/overlay";
5
- import * as i4 from "@koobiq/components/title";
6
- import * as i5 from "@angular/cdk/a11y";
7
- import * as i6 from "@koobiq/components/icon";
8
- import * as i7 from "@koobiq/components/button";
9
- import * as i8 from "@angular/common";
10
4
  export declare class KbqToastModule {
11
5
  static ɵfac: i0.ɵɵFactoryDeclaration<KbqToastModule, never>;
12
- static ɵmod: i0.ɵɵNgModuleDeclaration<KbqToastModule, [typeof i1.KbqToastComponent, typeof i2.KbqToastContainerComponent, typeof i1.KbqToastCloseButton], [typeof i3.OverlayModule, typeof i4.KbqTitleModule, typeof i5.A11yModule, typeof i6.KbqIconModule, typeof i7.KbqButtonModule, typeof i8.NgTemplateOutlet, typeof i8.NgClass], [typeof i1.KbqToastComponent, typeof i2.KbqToastContainerComponent, typeof i1.KbqToastCloseButton]>;
6
+ static ɵmod: i0.ɵɵNgModuleDeclaration<KbqToastModule, never, [typeof i1.KbqToastComponent, typeof i1.KbqToastCloseButton, typeof i2.KbqToastContainerComponent], [typeof i1.KbqToastComponent, typeof i1.KbqToastCloseButton, typeof i2.KbqToastContainerComponent]>;
13
7
  static ɵinj: i0.ɵɵInjectorDeclaration<KbqToastModule>;
14
8
  }
@@ -5,7 +5,7 @@ import { BehaviorSubject } from 'rxjs';
5
5
  import { KbqToastComponent } from './toast.component';
6
6
  import { KbqToastConfig, KbqToastData } from './toast.type';
7
7
  import * as i0 from "@angular/core";
8
- export declare const KBQ_TOAST_FACTORY: InjectionToken<unknown>;
8
+ export declare const KBQ_TOAST_FACTORY: InjectionToken<typeof KbqToastComponent>;
9
9
  export declare const defaultToastConfig: KbqToastConfig;
10
10
  export declare class KbqToastService<T extends KbqToastComponent = KbqToastComponent> implements OnDestroy {
11
11
  private overlay;
@@ -31,6 +31,10 @@
31
31
  .kbq-select__search-container {
32
32
  border-bottom-color: var(--kbq-divider-color, var(--kbq-line-contrast-less));
33
33
  }
34
+
35
+ .kbq-select__no-options-message {
36
+ color: var(--kbq-foreground-contrast-secondary);
37
+ }
34
38
  }
35
39
 
36
40
  @mixin kbq-tree-select-typography() {
@@ -159,15 +159,7 @@ export declare class KbqTreeSelect extends KbqTreeSelectMixinBase implements Aft
159
159
  get autoSelect(): boolean;
160
160
  set autoSelect(value: boolean);
161
161
  private _autoSelect;
162
- /**
163
- * Function to compare the option values with the selected values. The first argument
164
- * is a value from an option. The second is a value from the selection. A boolean
165
- * should be returned.
166
- */
167
- get compareWith(): (o1: any, o2: any) => boolean;
168
- set compareWith(fn: (o1: any, o2: any) => boolean);
169
162
  get value(): any;
170
- private _value;
171
163
  get id(): string;
172
164
  set id(value: string);
173
165
  private _id;
@@ -291,7 +283,6 @@ export declare class KbqTreeSelect extends KbqTreeSelectMixinBase implements Aft
291
283
  private handleClosedKeydown;
292
284
  private handleOpenKeydown;
293
285
  private refreshTriggerValues;
294
- private initializeSelection;
295
286
  /**
296
287
  * Sets the selected option based on a value. If no option can be
297
288
  * found with the designated value, the select trigger is cleared.
@@ -315,10 +306,8 @@ export declare class KbqTreeSelect extends KbqTreeSelectMixinBase implements Aft
315
306
  * content width in order to constrain the panel within the viewport.
316
307
  */
317
308
  private calculateOverlayOffsetX;
318
- /** Comparison function to specify which option is displayed. Defaults to object equality. */
319
- private _compareWith;
320
309
  private subscribeOnSearchChanges;
321
310
  static ɵfac: i0.ɵɵFactoryDeclaration<KbqTreeSelect, [null, null, null, null, null, null, null, { optional: true; }, { optional: true; }, { optional: true; }, { optional: true; }, { optional: true; self: true; }, { optional: true; }]>;
322
- static ɵcmp: i0.ɵɵComponentDeclaration<KbqTreeSelect, "kbq-tree-select", ["kbqTreeSelect"], { "disabled": { "alias": "disabled"; "required": false; }; "tabIndex": { "alias": "tabIndex"; "required": false; }; "hiddenItemsText": { "alias": "hiddenItemsText"; "required": false; }; "panelClass": { "alias": "panelClass"; "required": false; }; "backdropClass": { "alias": "backdropClass"; "required": false; }; "errorStateMatcher": { "alias": "errorStateMatcher"; "required": false; }; "sortComparator": { "alias": "sortComparator"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "required": { "alias": "required"; "required": false; }; "multiple": { "alias": "multiple"; "required": false; }; "autoSelect": { "alias": "autoSelect"; "required": false; }; "compareWith": { "alias": "compareWith"; "required": false; }; "id": { "alias": "id"; "required": false; }; "hasBackdrop": { "alias": "hasBackdrop"; "required": false; }; "panelWidth": { "alias": "panelWidth"; "required": false; }; "hiddenItemsTextFormatter": { "alias": "hiddenItemsTextFormatter"; "required": false; }; }, { "openedChange": "openedChange"; "openedStream": "opened"; "closedStream": "closed"; "selectionChange": "selectionChange"; "valueChange": "valueChange"; }, ["cleaner", "customTrigger", "customMatcher", "customTagTemplateRef", "tree", "search"], ["kbq-select-matcher, [kbq-select-matcher]", "kbq-select-trigger", "kbq-cleaner", "[kbqSelectSearch]", "[kbq-select-search-empty-result]", "kbq-tree-selection", "kbq-select-footer,[kbq-tree-select-footer]"], false, never>;
311
+ static ɵcmp: i0.ɵɵComponentDeclaration<KbqTreeSelect, "kbq-tree-select", ["kbqTreeSelect"], { "disabled": { "alias": "disabled"; "required": false; }; "tabIndex": { "alias": "tabIndex"; "required": false; }; "hiddenItemsText": { "alias": "hiddenItemsText"; "required": false; }; "panelClass": { "alias": "panelClass"; "required": false; }; "backdropClass": { "alias": "backdropClass"; "required": false; }; "errorStateMatcher": { "alias": "errorStateMatcher"; "required": false; }; "sortComparator": { "alias": "sortComparator"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "required": { "alias": "required"; "required": false; }; "multiple": { "alias": "multiple"; "required": false; }; "autoSelect": { "alias": "autoSelect"; "required": false; }; "id": { "alias": "id"; "required": false; }; "hasBackdrop": { "alias": "hasBackdrop"; "required": false; }; "panelWidth": { "alias": "panelWidth"; "required": false; }; "hiddenItemsTextFormatter": { "alias": "hiddenItemsTextFormatter"; "required": false; }; }, { "openedChange": "openedChange"; "openedStream": "opened"; "closedStream": "closed"; "selectionChange": "selectionChange"; "valueChange": "valueChange"; }, ["cleaner", "customTrigger", "customMatcher", "customTagTemplateRef", "tree", "search"], ["kbq-select-matcher, [kbq-select-matcher]", "kbq-select-trigger", "kbq-cleaner", "[kbqSelectSearch]", "[kbq-select-search-empty-result]", "kbq-tree-selection", "kbq-select-footer,[kbq-tree-select-footer]"], false, never>;
323
312
  }
324
313
  export {};