@koobiq/components 17.0.0-rc.1 → 17.0.0-rc.3

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/alert/_alert-theme.scss +58 -19
  2. package/alert/alert.component.d.ts +23 -3
  3. package/alert/alert.component.scss +175 -50
  4. package/core/locales/formatters.d.ts +96 -0
  5. package/core/locales/locale-service.d.ts +96 -0
  6. package/core/pop-up/pop-up-trigger.d.ts +3 -1
  7. package/core/styles/theming/_components-theming.scss +53 -8
  8. package/core/styles/theming/_theming.scss +1 -3
  9. package/core/styles/typography/_typography.scss +35 -2
  10. package/core/utils/data-size/config.d.ts +20 -2
  11. package/core/utils/data-size/data-size.pipe.d.ts +10 -9
  12. package/core/utils/data-size/size.d.ts +3 -4
  13. package/ellipsis-center/ellipsis-center.directive.d.ts +3 -2
  14. package/esm2022/alert/alert.component.mjs +52 -5
  15. package/esm2022/core/animation/select-animations.mjs +4 -4
  16. package/esm2022/core/locales/formatters.mjs +97 -1
  17. package/esm2022/core/pop-up/pop-up-trigger.mjs +18 -11
  18. package/esm2022/core/utils/data-size/config.mjs +5 -17
  19. package/esm2022/core/utils/data-size/data-size.pipe.mjs +36 -22
  20. package/esm2022/core/utils/data-size/size.mjs +10 -14
  21. package/esm2022/core/version.mjs +2 -2
  22. package/esm2022/dropdown/dropdown-animations.mjs +4 -4
  23. package/esm2022/ellipsis-center/ellipsis-center.directive.mjs +7 -5
  24. package/esm2022/file-upload/file-upload.module.mjs +12 -6
  25. package/esm2022/file-upload/multiple-file-upload.component.mjs +85 -22
  26. package/esm2022/file-upload/single-file-upload.component.mjs +92 -21
  27. package/esm2022/form-field/password-toggle.mjs +11 -9
  28. package/esm2022/modal/modal.component.mjs +5 -6
  29. package/esm2022/navbar/navbar-item.component.mjs +9 -9
  30. package/esm2022/select/select-option.directive.mjs +7 -5
  31. package/esm2022/select/select.component.mjs +18 -8
  32. package/esm2022/textarea/textarea.component.mjs +4 -4
  33. package/esm2022/timezone/timezone-option.directive.mjs +7 -5
  34. package/esm2022/title/title.directive.mjs +2 -3
  35. package/esm2022/tooltip/tooltip.component.mjs +26 -12
  36. package/esm2022/tree/padding.directive.mjs +2 -2
  37. package/esm2022/tree-select/tree-select.component.mjs +18 -7
  38. package/fesm2022/koobiq-components-alert.mjs +52 -5
  39. package/fesm2022/koobiq-components-alert.mjs.map +1 -1
  40. package/fesm2022/koobiq-components-core.mjs +160 -62
  41. package/fesm2022/koobiq-components-core.mjs.map +1 -1
  42. package/fesm2022/koobiq-components-dropdown.mjs +3 -3
  43. package/fesm2022/koobiq-components-dropdown.mjs.map +1 -1
  44. package/fesm2022/koobiq-components-ellipsis-center.mjs +5 -4
  45. package/fesm2022/koobiq-components-ellipsis-center.mjs.map +1 -1
  46. package/fesm2022/koobiq-components-file-upload.mjs +171 -34
  47. package/fesm2022/koobiq-components-file-upload.mjs.map +1 -1
  48. package/fesm2022/koobiq-components-form-field.mjs +15 -15
  49. package/fesm2022/koobiq-components-form-field.mjs.map +1 -1
  50. package/fesm2022/koobiq-components-modal.mjs +4 -5
  51. package/fesm2022/koobiq-components-modal.mjs.map +1 -1
  52. package/fesm2022/koobiq-components-navbar.mjs +8 -8
  53. package/fesm2022/koobiq-components-navbar.mjs.map +1 -1
  54. package/fesm2022/koobiq-components-select.mjs +22 -11
  55. package/fesm2022/koobiq-components-select.mjs.map +1 -1
  56. package/fesm2022/koobiq-components-textarea.mjs +3 -3
  57. package/fesm2022/koobiq-components-textarea.mjs.map +1 -1
  58. package/fesm2022/koobiq-components-timezone.mjs +5 -4
  59. package/fesm2022/koobiq-components-timezone.mjs.map +1 -1
  60. package/fesm2022/koobiq-components-title.mjs +1 -2
  61. package/fesm2022/koobiq-components-title.mjs.map +1 -1
  62. package/fesm2022/koobiq-components-tooltip.mjs +24 -11
  63. package/fesm2022/koobiq-components-tooltip.mjs.map +1 -1
  64. package/fesm2022/koobiq-components-tree-select.mjs +17 -6
  65. package/fesm2022/koobiq-components-tree-select.mjs.map +1 -1
  66. package/fesm2022/koobiq-components-tree.mjs +1 -1
  67. package/fesm2022/koobiq-components-tree.mjs.map +1 -1
  68. package/file-upload/file-upload.module.d.ts +11 -10
  69. package/file-upload/multiple-file-upload.component.d.ts +36 -6
  70. package/file-upload/single-file-upload.component.d.ts +37 -7
  71. package/form-field/password-toggle.d.ts +3 -2
  72. package/navbar/navbar-item.component.d.ts +4 -4
  73. package/package.json +7 -6
  74. package/prebuilt-themes/dark-theme.css +1 -1
  75. package/prebuilt-themes/light-theme.css +1 -1
  76. package/schematics/collection.json +11 -0
  77. package/schematics/ng-add/index.js +70 -0
  78. package/schematics/ng-add/schema.json +15 -0
  79. package/select/select-option.directive.d.ts +3 -2
  80. package/select/select.component.d.ts +2 -0
  81. package/splitter/_splitter-theme.scss +2 -2
  82. package/timezone/timezone-option.directive.d.ts +3 -2
  83. package/title/title.directive.d.ts +0 -1
  84. package/tooltip/tooltip.component.d.ts +12 -8
  85. package/tree-select/tree-select.component.d.ts +1 -0
@@ -0,0 +1,11 @@
1
+ {
2
+ "$schema": "../../../node_modules/@angular-devkit/schematics/collection-schema.json",
3
+ "schematics": {
4
+ "ng-add": {
5
+ "description": "Adds @koobiq/components library to the project and installs dependencies",
6
+ "factory": "./ng-add/index",
7
+ "schema": "./ng-add/schema.json",
8
+ "aliases": ["install"]
9
+ }
10
+ }
11
+ }
@@ -0,0 +1,70 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var schematics = require('@angular-devkit/schematics');
6
+ var utility = require('@schematics/angular/utility');
7
+
8
+ /**
9
+ * Sorts the keys of the given object.
10
+ * @returns A new object instance with sorted keys
11
+ */
12
+ function sortObjectByKeys(obj) {
13
+ return Object.keys(obj)
14
+ .sort()
15
+ .reduce((result, key) => (result[key] = obj[key]) && result, {});
16
+ }
17
+ /**
18
+ * Adds a package to the package.json in the given tree
19
+ */
20
+ function addPackageToPackageJson(tree, pkg, version, devDependency = false) {
21
+ if (tree.exists('package.json')) {
22
+ const sourceText = tree.read('package.json').toString('utf-8');
23
+ const json = JSON.parse(sourceText);
24
+ const dependenciesType = devDependency ? 'devDependencies' : 'dependencies';
25
+ const dependencies = json[dependenciesType] || {};
26
+ if (!dependencies[pkg]) {
27
+ dependencies[pkg] = version;
28
+ json[dependenciesType] = sortObjectByKeys(dependencies);
29
+ }
30
+ tree.overwrite('package.json', JSON.stringify(json, null, 2));
31
+ }
32
+ return tree;
33
+ }
34
+
35
+ function noProject(project) {
36
+ return `Unable to find project '${project}' in the workspace`;
37
+ }
38
+
39
+ /**
40
+ * This is executed when `ng add @koobiq/components` is run.
41
+ * It installs all dependencies in the 'package.json' and runs 'ng-add-setup-project' schematic.
42
+ */
43
+ function ngAdd(options) {
44
+ return async (tree) => {
45
+ const { project } = options;
46
+ if (project) {
47
+ const workspace = await utility.readWorkspace(tree);
48
+ const projectWorkspace = workspace.projects.get(project);
49
+ if (!projectWorkspace) {
50
+ throw new schematics.SchematicsException(noProject(project));
51
+ }
52
+ }
53
+ // Installing dependencies
54
+ addPackageToPackageJson(tree, '@angular/cdk', "^17.2.0");
55
+ addPackageToPackageJson(tree, '@koobiq/cdk', "^17.0.0-rc.3");
56
+ addPackageToPackageJson(tree, '@koobiq/angular-luxon-adapter', "^17.0.0-rc.3");
57
+ addPackageToPackageJson(tree, '@koobiq/date-formatter', "^3.0.2");
58
+ addPackageToPackageJson(tree, '@koobiq/date-adapter', "^3.0.2");
59
+ addPackageToPackageJson(tree, '@koobiq/icons', "^7.1.1");
60
+ addPackageToPackageJson(tree, '@koobiq/tokens-builder', "^3.0.0-rc.2");
61
+ addPackageToPackageJson(tree, '@koobiq/design-tokens', "^3.0.0-rc.2");
62
+ addPackageToPackageJson(tree, '@messageformat/core', "^3.0.1");
63
+ addPackageToPackageJson(tree, 'luxon', "^3.4.4");
64
+ addPackageToPackageJson(tree, 'marked', "^4.0.18");
65
+ addPackageToPackageJson(tree, 'overlayscrollbars', "^2.7.3");
66
+ addPackageToPackageJson(tree, 'ngx-highlightjs', "^10.0.0");
67
+ };
68
+ }
69
+
70
+ exports.default = ngAdd;
@@ -0,0 +1,15 @@
1
+ {
2
+ "$schema": "http://json-schema.org/schema",
3
+ "$id": "koobiq-components-ng-add",
4
+ "title": "koobiq-components ng-add schematic",
5
+ "type": "object",
6
+ "properties": {
7
+ "project": {
8
+ "type": "string",
9
+ "description": "Name of the project",
10
+ "$default": {
11
+ "$source": "projectName"
12
+ }
13
+ }
14
+ }
15
+ }
@@ -1,3 +1,4 @@
1
+ import { FocusMonitor } from '@angular/cdk/a11y';
1
2
  import { Directionality } from '@angular/cdk/bidi';
2
3
  import { Overlay, ScrollDispatcher } from '@angular/cdk/overlay';
3
4
  import { AfterViewInit, ElementRef, NgZone, OnDestroy, ViewContainerRef } from '@angular/core';
@@ -10,13 +11,13 @@ export declare class KbqOptionTooltip extends KbqTooltipTrigger implements After
10
11
  private mutationObserver;
11
12
  get textElement(): HTMLElement;
12
13
  get isOverflown(): boolean;
13
- constructor(option: KbqOption, overlay: Overlay, elementRef: ElementRef, ngZone: NgZone, scrollDispatcher: ScrollDispatcher, hostView: ViewContainerRef, scrollStrategy: any, direction: Directionality);
14
+ constructor(option: KbqOption, overlay: Overlay, elementRef: ElementRef, ngZone: NgZone, scrollDispatcher: ScrollDispatcher, hostView: ViewContainerRef, scrollStrategy: any, direction: Directionality, focusMonitor: FocusMonitor);
14
15
  ngAfterViewInit(): void;
15
16
  ngOnDestroy(): void;
16
17
  onMouseEnter(): void;
17
18
  onMouseLeave(): void;
18
19
  onFocus(): void;
19
20
  onBlur(): void;
20
- static ɵfac: i0.ɵɵFactoryDeclaration<KbqOptionTooltip, [null, null, null, null, null, null, null, { optional: true; }]>;
21
+ static ɵfac: i0.ɵɵFactoryDeclaration<KbqOptionTooltip, [null, null, null, null, null, null, null, { optional: true; }, null]>;
21
22
  static ɵdir: i0.ɵɵDirectiveDeclaration<KbqOptionTooltip, "kbq-option", never, {}, {}, never, never, false, never>;
22
23
  }
@@ -189,6 +189,8 @@ export declare class KbqSelect extends KbqSelectMixinBase implements AfterConten
189
189
  get triggerValue(): string;
190
190
  get triggerValues(): KbqOptionBase[];
191
191
  get empty(): boolean;
192
+ get firstSelected(): KbqOptionBase | null;
193
+ get firstFiltered(): boolean;
192
194
  private closeSubscription;
193
195
  /** The scroll position of the overlay panel, calculated to center the selected option. */
194
196
  private scrollTop;
@@ -11,7 +11,7 @@
11
11
 
12
12
  &:hover,
13
13
  &.kbq-gutter_dragged {
14
- background-color: map.get($background, ghost-hover);
14
+ background-color: rgba(106, 115, 150, 0.08);
15
15
  }
16
16
 
17
17
  &.kbq-gutter_vertical {
@@ -27,6 +27,6 @@
27
27
  }
28
28
 
29
29
  .kbq-gutter-ghost {
30
- background: kbq-color($background, ghost-active);
30
+ background: rgba(106, 115, 150, 0.16);
31
31
  }
32
32
  }
@@ -1,3 +1,4 @@
1
+ import { FocusMonitor } from '@angular/cdk/a11y';
1
2
  import { Directionality } from '@angular/cdk/bidi';
2
3
  import { Overlay, ScrollDispatcher } from '@angular/cdk/overlay';
3
4
  import { AfterViewInit, ElementRef, NgZone, OnDestroy, ViewContainerRef, ChangeDetectorRef } from '@angular/core';
@@ -9,12 +10,12 @@ export declare class KbqTimezoneOptionTooltip extends KbqTooltipTrigger implemen
9
10
  private changeDetectorRef;
10
11
  private option;
11
12
  private resizeObserver;
12
- constructor(changeDetectorRef: ChangeDetectorRef, option: KbqTimezoneOption, overlay: Overlay, elementRef: ElementRef, ngZone: NgZone, scrollDispatcher: ScrollDispatcher, hostView: ViewContainerRef, scrollStrategy: any, direction: Directionality);
13
+ constructor(changeDetectorRef: ChangeDetectorRef, option: KbqTimezoneOption, overlay: Overlay, elementRef: ElementRef, ngZone: NgZone, scrollDispatcher: ScrollDispatcher, hostView: ViewContainerRef, scrollStrategy: any, direction: Directionality, focusMonitor: FocusMonitor);
13
14
  ngAfterViewInit(): void;
14
15
  ngOnDestroy(): void;
15
16
  onMouseEnter(): void;
16
17
  onMouseLeave(): void;
17
18
  private checkTooltipDisabled;
18
- static ɵfac: i0.ɵɵFactoryDeclaration<KbqTimezoneOptionTooltip, [null, null, null, null, null, null, null, null, { optional: true; }]>;
19
+ static ɵfac: i0.ɵɵFactoryDeclaration<KbqTimezoneOptionTooltip, [null, null, null, null, null, null, null, null, { optional: true; }, null]>;
19
20
  static ɵdir: i0.ɵɵDirectiveDeclaration<KbqTimezoneOptionTooltip, "kbq-timezone-option", never, {}, {}, never, never, false, never>;
20
21
  }
@@ -7,7 +7,6 @@ import { KbqTooltipTrigger } from '@koobiq/components/tooltip';
7
7
  import { Subject } from 'rxjs';
8
8
  import * as i0 from "@angular/core";
9
9
  export declare class KbqTitleDirective extends KbqTooltipTrigger implements AfterViewInit {
10
- private focusMonitor;
11
10
  private componentInstance?;
12
11
  get isOverflown(): boolean;
13
12
  get viewValue(): string;
@@ -1,6 +1,7 @@
1
+ import { FocusMonitor } from '@angular/cdk/a11y';
1
2
  import { Directionality } from '@angular/cdk/bidi';
2
3
  import { Overlay, ScrollDispatcher, ScrollStrategy, OverlayConfig } from '@angular/cdk/overlay';
3
- import { ChangeDetectorRef, ElementRef, EventEmitter, InjectionToken, NgZone, TemplateRef, Type, ViewContainerRef } from '@angular/core';
4
+ import { ChangeDetectorRef, ElementRef, EventEmitter, InjectionToken, NgZone, OnDestroy, TemplateRef, Type, ViewContainerRef } from '@angular/core';
4
5
  import { KbqPopUp, KbqPopUpTrigger, PopUpPlacements, KbqComponentColors } from '@koobiq/components/core';
5
6
  import * as i0 from "@angular/core";
6
7
  export declare enum TooltipModifier {
@@ -37,7 +38,8 @@ export declare const KBQ_TOOLTIP_SCROLL_STRATEGY_FACTORY_PROVIDER: {
37
38
  deps: (typeof Overlay)[];
38
39
  useFactory: typeof kbqTooltipScrollStrategyFactory;
39
40
  };
40
- export declare class KbqTooltipTrigger extends KbqPopUpTrigger<KbqTooltipComponent> {
41
+ export declare class KbqTooltipTrigger extends KbqPopUpTrigger<KbqTooltipComponent> implements OnDestroy {
42
+ protected focusMonitor: FocusMonitor;
41
43
  get tooltipVisible(): boolean;
42
44
  set tooltipVisible(value: boolean);
43
45
  get tooltipPlacement(): PopUpPlacements;
@@ -64,20 +66,22 @@ export declare class KbqTooltipTrigger extends KbqPopUpTrigger<KbqTooltipCompone
64
66
  protected originSelector: string;
65
67
  protected overlayConfig: OverlayConfig;
66
68
  protected modifier: TooltipModifier;
67
- constructor(overlay: Overlay, elementRef: ElementRef, ngZone: NgZone, scrollDispatcher: ScrollDispatcher, hostView: ViewContainerRef, scrollStrategy: any, direction: Directionality);
69
+ constructor(overlay: Overlay, elementRef: ElementRef, ngZone: NgZone, scrollDispatcher: ScrollDispatcher, hostView: ViewContainerRef, scrollStrategy: any, direction: Directionality, focusMonitor: FocusMonitor);
70
+ ngOnDestroy(): void;
71
+ show(delay?: number): void;
68
72
  updateData(): void;
69
73
  closingActions(): import("rxjs").Observable<void | MouseEvent>;
70
74
  getOverlayHandleComponentType(): Type<KbqTooltipComponent>;
71
75
  updateClassMap(newPlacement?: string): void;
72
- static ɵfac: i0.ɵɵFactoryDeclaration<KbqTooltipTrigger, [null, null, null, null, null, null, { optional: true; }]>;
76
+ static ɵfac: i0.ɵɵFactoryDeclaration<KbqTooltipTrigger, [null, null, null, null, null, null, { optional: true; }, null]>;
73
77
  static ɵdir: i0.ɵɵDirectiveDeclaration<KbqTooltipTrigger, "[kbqTooltip]", ["kbqTooltip"], { "tooltipVisible": { "alias": "kbqVisible"; "required": false; }; "tooltipPlacement": { "alias": "kbqPlacement"; "required": false; }; "tooltipPlacementPriority": { "alias": "kbqPlacementPriority"; "required": false; }; "content": { "alias": "kbqTooltip"; "required": false; }; "disabled": { "alias": "kbqTooltipDisabled"; "required": false; }; "enterDelay": { "alias": "kbqEnterDelay"; "required": false; }; "leaveDelay": { "alias": "kbqLeaveDelay"; "required": false; }; "trigger": { "alias": "kbqTrigger"; "required": false; }; "customClass": { "alias": "kbqTooltipClass"; "required": false; }; "color": { "alias": "kbqTooltipColor"; "required": false; }; }, { "placementChange": "kbqPlacementChange"; "visibleChange": "kbqVisibleChange"; }, never, never, false, never>;
74
78
  }
75
79
  export declare class KbqWarningTooltipTrigger extends KbqTooltipTrigger {
76
80
  get content(): string | TemplateRef<any>;
77
81
  set content(content: string | TemplateRef<any>);
78
82
  protected modifier: TooltipModifier;
79
- constructor(overlay: Overlay, elementRef: ElementRef, ngZone: NgZone, scrollDispatcher: ScrollDispatcher, hostView: ViewContainerRef, scrollStrategy: any, direction: Directionality);
80
- static ɵfac: i0.ɵɵFactoryDeclaration<KbqWarningTooltipTrigger, [null, null, null, null, null, null, { optional: true; }]>;
83
+ constructor(overlay: Overlay, elementRef: ElementRef, ngZone: NgZone, scrollDispatcher: ScrollDispatcher, hostView: ViewContainerRef, scrollStrategy: any, direction: Directionality, focusMonitor: FocusMonitor);
84
+ static ɵfac: i0.ɵɵFactoryDeclaration<KbqWarningTooltipTrigger, [null, null, null, null, null, null, { optional: true; }, null]>;
81
85
  static ɵdir: i0.ɵɵDirectiveDeclaration<KbqWarningTooltipTrigger, "[kbqWarningTooltip]", ["kbqWarningTooltip"], { "content": { "alias": "kbqWarningTooltip"; "required": false; }; }, {}, never, never, false, never>;
82
86
  }
83
87
  export declare class KbqExtendedTooltipTrigger extends KbqTooltipTrigger {
@@ -87,8 +91,8 @@ export declare class KbqExtendedTooltipTrigger extends KbqTooltipTrigger {
87
91
  set header(header: string | TemplateRef<any>);
88
92
  private _header;
89
93
  protected modifier: TooltipModifier;
90
- constructor(overlay: Overlay, elementRef: ElementRef, ngZone: NgZone, scrollDispatcher: ScrollDispatcher, hostView: ViewContainerRef, scrollStrategy: any, direction: Directionality);
94
+ constructor(overlay: Overlay, elementRef: ElementRef, ngZone: NgZone, scrollDispatcher: ScrollDispatcher, hostView: ViewContainerRef, scrollStrategy: any, direction: Directionality, focusMonitor: FocusMonitor);
91
95
  updateData(): void;
92
- static ɵfac: i0.ɵɵFactoryDeclaration<KbqExtendedTooltipTrigger, [null, null, null, null, null, null, { optional: true; }]>;
96
+ static ɵfac: i0.ɵɵFactoryDeclaration<KbqExtendedTooltipTrigger, [null, null, null, null, null, null, { optional: true; }, null]>;
93
97
  static ɵdir: i0.ɵɵDirectiveDeclaration<KbqExtendedTooltipTrigger, "[kbqExtendedTooltip]", ["kbqExtendedTooltip"], { "content": { "alias": "kbqExtendedTooltip"; "required": false; }; "header": { "alias": "kbqTooltipHeader"; "required": false; }; }, {}, never, never, false, never>;
94
98
  }
@@ -228,6 +228,7 @@ export declare class KbqTreeSelect extends KbqTreeSelectMixinBase implements Aft
228
228
  get triggerValue(): string;
229
229
  get empty(): boolean;
230
230
  isRtl(): boolean;
231
+ get firstSelected(): any;
231
232
  handleKeydown(event: KeyboardEvent): void;
232
233
  onFocus(): void;
233
234
  /**