@cute-widgets/base 20.0.2 → 20.0.4

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 (63) hide show
  1. package/CHANGELOG.md +35 -1
  2. package/abstract/index.d.ts +5 -2
  3. package/button/index.d.ts +7 -6
  4. package/card/index.d.ts +9 -6
  5. package/core/directives/index.d.ts +2 -32
  6. package/core/index.d.ts +35 -28
  7. package/core/interfaces/index.d.ts +1 -1
  8. package/core/layout/index.d.ts +34 -27
  9. package/core/nav/index.d.ts +1 -2
  10. package/expansion/index.d.ts +5 -18
  11. package/fesm2022/cute-widgets-base-abstract.mjs +20 -5
  12. package/fesm2022/cute-widgets-base-abstract.mjs.map +1 -1
  13. package/fesm2022/cute-widgets-base-button-toggle.mjs +2 -2
  14. package/fesm2022/cute-widgets-base-button-toggle.mjs.map +1 -1
  15. package/fesm2022/cute-widgets-base-button.mjs +12 -11
  16. package/fesm2022/cute-widgets-base-button.mjs.map +1 -1
  17. package/fesm2022/cute-widgets-base-card.mjs +46 -29
  18. package/fesm2022/cute-widgets-base-card.mjs.map +1 -1
  19. package/fesm2022/cute-widgets-base-chips.mjs +6 -6
  20. package/fesm2022/cute-widgets-base-chips.mjs.map +1 -1
  21. package/fesm2022/cute-widgets-base-core-directives.mjs +5 -73
  22. package/fesm2022/cute-widgets-base-core-directives.mjs.map +1 -1
  23. package/fesm2022/cute-widgets-base-core-interfaces.mjs.map +1 -1
  24. package/fesm2022/cute-widgets-base-core-layout.mjs +64 -40
  25. package/fesm2022/cute-widgets-base-core-layout.mjs.map +1 -1
  26. package/fesm2022/cute-widgets-base-core-nav.mjs +1 -2
  27. package/fesm2022/cute-widgets-base-core-nav.mjs.map +1 -1
  28. package/fesm2022/cute-widgets-base-core.mjs +64 -40
  29. package/fesm2022/cute-widgets-base-core.mjs.map +1 -1
  30. package/fesm2022/cute-widgets-base-dialog.mjs +1 -1
  31. package/fesm2022/cute-widgets-base-dialog.mjs.map +1 -1
  32. package/fesm2022/cute-widgets-base-expansion.mjs +19 -13
  33. package/fesm2022/cute-widgets-base-expansion.mjs.map +1 -1
  34. package/fesm2022/cute-widgets-base-list.mjs +2 -2
  35. package/fesm2022/cute-widgets-base-list.mjs.map +1 -1
  36. package/fesm2022/cute-widgets-base-navbar.mjs +6 -0
  37. package/fesm2022/cute-widgets-base-navbar.mjs.map +1 -1
  38. package/fesm2022/cute-widgets-base-paginator.mjs +12 -10
  39. package/fesm2022/cute-widgets-base-paginator.mjs.map +1 -1
  40. package/fesm2022/cute-widgets-base-radio.mjs +1 -2
  41. package/fesm2022/cute-widgets-base-radio.mjs.map +1 -1
  42. package/fesm2022/cute-widgets-base-select.mjs +2 -2
  43. package/fesm2022/cute-widgets-base-select.mjs.map +1 -1
  44. package/fesm2022/cute-widgets-base-sidenav.mjs +31 -30
  45. package/fesm2022/cute-widgets-base-sidenav.mjs.map +1 -1
  46. package/fesm2022/cute-widgets-base-snack-bar.mjs +2 -2
  47. package/fesm2022/cute-widgets-base-snack-bar.mjs.map +1 -1
  48. package/fesm2022/cute-widgets-base-sort.mjs +63 -260
  49. package/fesm2022/cute-widgets-base-sort.mjs.map +1 -1
  50. package/fesm2022/cute-widgets-base-table.mjs +22 -16
  51. package/fesm2022/cute-widgets-base-table.mjs.map +1 -1
  52. package/fesm2022/cute-widgets-base-tree.mjs +11 -2
  53. package/fesm2022/cute-widgets-base-tree.mjs.map +1 -1
  54. package/fesm2022/cute-widgets-base.mjs +3 -1
  55. package/fesm2022/cute-widgets-base.mjs.map +1 -1
  56. package/navbar/index.d.ts +6 -0
  57. package/package.json +18 -17
  58. package/paginator/index.d.ts +5 -16
  59. package/radio/index.d.ts +0 -1
  60. package/sidenav/index.d.ts +1 -2
  61. package/sort/index.d.ts +25 -138
  62. package/table/index.d.ts +24 -21
  63. package/tree/index.d.ts +5 -0
@@ -1,6 +1,5 @@
1
1
  import * as i0 from '@angular/core';
2
- import { HostListener, Directive, inject, ElementRef, EventEmitter, Output, Input, Renderer2, TemplateRef, ViewContainerRef, SecurityContext, HostAttributeToken, booleanAttribute } from '@angular/core';
3
- import { bsBreakpoints } from '@cute-widgets/base/core/layout';
2
+ import { HostListener, Directive, inject, ElementRef, EventEmitter, Output, Input, Renderer2, SecurityContext, HostAttributeToken, booleanAttribute } from '@angular/core';
4
3
  import { DomSanitizer } from '@angular/platform-browser';
5
4
 
6
5
  /**
@@ -43,7 +42,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
43
42
  /**
44
43
  * Tracks a click outside the target element.
45
44
  * @example
46
- * <div cuteClickOutside (clickOutside)="closeDropdown()">
45
+ * <div (cuteClickOutside)="closeDropdown()">
47
46
  * <button (click)="toggleDropdown()">Toggle Dropdown</button>
48
47
  * <div *ngIf="dropdownOpen" class="dropdown">
49
48
  * Dropdown content
@@ -62,7 +61,7 @@ class CuteClickOutside {
62
61
  }
63
62
  }
64
63
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: CuteClickOutside, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
65
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.15", type: CuteClickOutside, isStandalone: true, selector: "[cuteClickOutside]", outputs: { cuteClickOutside: "cuteClickOutside" }, host: { listeners: { "document:click": "onClick($event)" } }, ngImport: i0 }); }
64
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.15", type: CuteClickOutside, isStandalone: true, selector: "[cuteClickOutside]", outputs: { cuteClickOutside: "cuteClickOutside" }, host: { listeners: { "window:click": "onClick($event)" } }, ngImport: i0 }); }
66
65
  }
67
66
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: CuteClickOutside, decorators: [{
68
67
  type: Directive,
@@ -73,7 +72,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
73
72
  type: Output
74
73
  }], onClick: [{
75
74
  type: HostListener,
76
- args: ['document:click', ['$event']]
75
+ args: ['window:click', ['$event']]
77
76
  }] } });
78
77
 
79
78
  /**
@@ -220,73 +219,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
220
219
  type: Input
221
220
  }] } });
222
221
 
223
- /**
224
- * @license Apache-2.0
225
- *
226
- * Copyright (c) 2025 CuteWidgets Team. All Rights Reserved.
227
- *
228
- * You may not use this file except in compliance with the License
229
- * that can be found at http://www.apache.org/licenses/LICENSE-2.0
230
- */
231
- /**
232
- * ```HTML
233
- * <div cuteResponsive="md, lg">
234
- * This content is visible on medium and large screens.
235
- * </div>
236
- * ```
237
- */
238
- class CuteResponsive {
239
- constructor() {
240
- this.templateRef = inject(TemplateRef);
241
- this.viewContainer = inject(ViewContainerRef);
242
- }
243
- ngOnInit() {
244
- this.detectScreenSize();
245
- }
246
- detectScreenSize() {
247
- const screenWidth = this.getScreenWidth();
248
- if (this.breakPoints?.includes(screenWidth)) {
249
- this.viewContainer.createEmbeddedView(this.templateRef);
250
- }
251
- else {
252
- this.viewContainer.clear();
253
- }
254
- }
255
- getScreenWidth() {
256
- const width = window.innerWidth;
257
- if (width >= bsBreakpoints.grid.xxl) {
258
- return 'xxl';
259
- }
260
- else if (width >= bsBreakpoints.grid.xl) {
261
- return 'xl';
262
- }
263
- else if (width >= bsBreakpoints.grid.lg) {
264
- return 'lg';
265
- }
266
- else if (width >= bsBreakpoints.grid.md) {
267
- return 'md';
268
- }
269
- else if (width >= bsBreakpoints.grid.sm) {
270
- return 'sm';
271
- }
272
- else {
273
- return 'xs';
274
- }
275
- }
276
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: CuteResponsive, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
277
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.15", type: CuteResponsive, isStandalone: true, selector: "[cuteResponsive]", inputs: { breakPoints: ["cuteResponsive", "breakPoints"] }, ngImport: i0 }); }
278
- }
279
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: CuteResponsive, decorators: [{
280
- type: Directive,
281
- args: [{
282
- selector: '[cuteResponsive]',
283
- standalone: true,
284
- }]
285
- }], ctorParameters: () => [], propDecorators: { breakPoints: [{
286
- type: Input,
287
- args: ["cuteResponsive"]
288
- }] } });
289
-
290
222
  /**
291
223
  * @license Apache-2.0
292
224
  *
@@ -400,5 +332,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
400
332
  * Generated bundle index. Do not edit.
401
333
  */
402
334
 
403
- export { CuteClickOutside, CuteCopyToClipboard, CuteDisableContextMenu, CuteFocusInitial, CuteIconLink, CuteResponsive, CuteSvgSymbol, CuteTimeAgo };
335
+ export { CuteClickOutside, CuteCopyToClipboard, CuteDisableContextMenu, CuteFocusInitial, CuteIconLink, CuteSvgSymbol, CuteTimeAgo };
404
336
  //# sourceMappingURL=cute-widgets-base-core-directives.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"cute-widgets-base-core-directives.mjs","sources":["../../../../projects/cute-widgets/base/core/directives/src/disable-context-menu.ts","../../../../projects/cute-widgets/base/core/directives/src/click-outside.ts","../../../../projects/cute-widgets/base/core/directives/src/copy-to-clipboard.ts","../../../../projects/cute-widgets/base/core/directives/src/time-ago.ts","../../../../projects/cute-widgets/base/core/directives/src/responsive.ts","../../../../projects/cute-widgets/base/core/directives/src/svg-symbol.ts","../../../../projects/cute-widgets/base/core/directives/src/icon-link.ts","../../../../projects/cute-widgets/base/core/directives/src/focus-initial.ts","../../../../projects/cute-widgets/base/core/directives/cute-widgets-base-core-directives.ts"],"sourcesContent":["/**\r\n * @license Apache-2.0\r\n *\r\n * Copyright (c) 2025 CuteWidgets Team. All Rights Reserved.\r\n *\r\n * You may not use this file except in compliance with the License\r\n * that can be found at http://www.apache.org/licenses/LICENSE-2.0\r\n */\r\nimport { Directive, HostListener } from '@angular/core';\r\n\r\n/**\r\n * Allows users to disable the context menu that appears when they right-click\r\n */\r\n@Directive({\r\n selector: '[cuteDisableContextMenu]',\r\n standalone: true,\r\n})\r\nexport class CuteDisableContextMenu {\r\n @HostListener('contextmenu', ['$event'])\r\n onContextMenu(event: Event): void {\r\n event.preventDefault();\r\n }\r\n}\r\n","/**\r\n * @license Apache-2.0\r\n *\r\n * Copyright (c) 2025 CuteWidgets Team. All Rights Reserved.\r\n *\r\n * You may not use this file except in compliance with the License\r\n * that can be found at http://www.apache.org/licenses/LICENSE-2.0\r\n */\r\nimport {Directive, ElementRef, Output, EventEmitter, HostListener, inject} from '@angular/core';\r\n\r\n/**\r\n * Tracks a click outside the target element.\r\n * @example\r\n * <div cuteClickOutside (clickOutside)=\"closeDropdown()\">\r\n * <button (click)=\"toggleDropdown()\">Toggle Dropdown</button>\r\n * <div *ngIf=\"dropdownOpen\" class=\"dropdown\">\r\n * Dropdown content\r\n * </div>\r\n * </div>\r\n */\r\n@Directive({\r\n selector: '[cuteClickOutside]'\r\n})\r\nexport class CuteClickOutside {\r\n private _elementRef = inject(ElementRef);\r\n\r\n /** Emitted when the user clicks on a document outside the parent element. */\r\n @Output() cuteClickOutside = new EventEmitter<MouseEvent>();\r\n\r\n constructor() {}\r\n\r\n @HostListener('document:click', ['$event'])\r\n onClick(event: MouseEvent): void {\r\n if (!this._elementRef.nativeElement.contains(event.target)) {\r\n this.cuteClickOutside.emit(event);\r\n }\r\n }\r\n}\r\n","/**\r\n * @license Apache-2.0\r\n *\r\n * Copyright (c) 2025 CuteWidgets Team. All Rights Reserved.\r\n *\r\n * You may not use this file except in compliance with the License\r\n * that can be found at http://www.apache.org/licenses/LICENSE-2.0\r\n */\r\nimport {Directive, Input, ElementRef, HostListener, inject, Output, EventEmitter} from '@angular/core';\r\n\r\n/**\r\n * Allows users to copy a text to _system_ clipboard using the `Clipboard API`. The Clipboard API allows users to\r\n * programmatically read and write text and other kinds of data to and from the system clipboard in _secure contexts_.\r\n *\r\n * @example\r\n * ```HTML\r\n * <button [cuteCopyToClipboard]=\"'Text to copy'\"> Copy to Clipboard </button>\r\n * ```\r\n */\r\n@Directive({\r\n selector: '[cuteCopyToClipboard]',\r\n standalone: true,\r\n})\r\nexport class CuteCopyToClipboard {\r\n private el = inject(ElementRef);\r\n\r\n /** Text to copy to clipboard when the user clicks on the element that directive belongs to */\r\n @Input(\"cuteCopyToClipboard\") data?: string | ClipboardItem | ClipboardItems | (() => string|ClipboardItem|ClipboardItems);\r\n\r\n /** Emits when some text is copied to the clipboard. The emitted value indicates whether copying was successful. */\r\n @Output() cuteCopyToClipboardCopied = new EventEmitter<boolean>();\r\n\r\n constructor() {}\r\n\r\n @HostListener('click')\r\n onClick() {\r\n if (this.data) {\r\n if (window.isSecureContext) {\r\n try {\r\n let dataToWrite;\r\n if (this.data instanceof Function) {\r\n dataToWrite = this.data()\r\n } else {\r\n dataToWrite = this.data;\r\n }\r\n if (typeof dataToWrite === \"string\") {\r\n navigator.clipboard\r\n .writeText(dataToWrite)\r\n .then(() => this.cuteCopyToClipboardCopied.next(true))\r\n .catch(() => {\r\n this.cuteCopyToClipboardCopied.next(false);\r\n });\r\n } else {\r\n let items: ClipboardItems;\r\n if (dataToWrite instanceof ClipboardItem) {\r\n items = [dataToWrite];\r\n } else {\r\n items = dataToWrite;\r\n }\r\n navigator.clipboard\r\n .write(items)\r\n .then(() => this.cuteCopyToClipboardCopied.next(true))\r\n .catch(() => {\r\n this.cuteCopyToClipboardCopied.next(false);\r\n });\r\n }\r\n } catch (err: any) {\r\n console.error(err.message);\r\n }\r\n } else {\r\n console.error(\"The Clipboard API is available only in secure contexts (HTTPS)\");\r\n this.cuteCopyToClipboardCopied.next(false);\r\n }\r\n } else {\r\n this.cuteCopyToClipboardCopied.next(false);\r\n }\r\n }\r\n}\r\n","/**\r\n * @license Apache-2.0\r\n *\r\n * Copyright (c) 2025 CuteWidgets Team. All Rights Reserved.\r\n *\r\n * You may not use this file except in compliance with the License\r\n * that can be found at http://www.apache.org/licenses/LICENSE-2.0\r\n */\r\n\r\nimport {Directive, Input, ElementRef, Renderer2, OnChanges, SimpleChanges, inject} from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[cuteTimeAgo]',\r\n standalone: true,\r\n})\r\nexport class CuteTimeAgo implements OnChanges {\r\n private el = inject<ElementRef<HTMLElement>>(ElementRef);\r\n private renderer = inject(Renderer2);\r\n\r\n @Input() cuteTimeAgo?: Date;\r\n\r\n constructor() {}\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n if (changes[\"cuteTimeAgo\"]) {\r\n this.updateTimeAgo();\r\n }\r\n }\r\n\r\n private updateTimeAgo(): void {\r\n if (this.cuteTimeAgo instanceof Date) {\r\n const timeDifference = Date.now() - this.cuteTimeAgo.getTime();\r\n const secondsAgo = Math.floor(timeDifference / 1000);\r\n\r\n let text: string;\r\n\r\n if (secondsAgo < 60) {\r\n text = 'just now';\r\n } else if (secondsAgo < 3600) {\r\n const minutes = Math.floor(secondsAgo / 60);\r\n text = `${minutes} minute${minutes > 1 ? 's' : ''} ago`;\r\n } else if (secondsAgo < 86400) {\r\n const hours = Math.floor(secondsAgo / 3600);\r\n text = `${hours} hour${hours > 1 ? 's' : ''} ago`;\r\n } else {\r\n const days = Math.floor(secondsAgo / 86400);\r\n text = `${days} day${days > 1 ? 's' : ''} ago`;\r\n }\r\n\r\n this.renderer.setProperty(this.el.nativeElement, 'textContent', text);\r\n }\r\n }\r\n}\r\n","/**\r\n * @license Apache-2.0\r\n *\r\n * Copyright (c) 2025 CuteWidgets Team. All Rights Reserved.\r\n *\r\n * You may not use this file except in compliance with the License\r\n * that can be found at http://www.apache.org/licenses/LICENSE-2.0\r\n */\r\n\r\nimport {Directive, inject, Input, OnInit, TemplateRef, ViewContainerRef} from '@angular/core';\r\nimport {LayoutBreakpoint} from \"@cute-widgets/base/core/types\";\r\nimport {bsBreakpoints} from \"@cute-widgets/base/core/layout\";\r\n\r\n/**\r\n * ```HTML\r\n * <div cuteResponsive=\"md, lg\">\r\n * This content is visible on medium and large screens.\r\n * </div>\r\n * ```\r\n */\r\n@Directive({\r\n selector: '[cuteResponsive]',\r\n standalone: true,\r\n})\r\nexport class CuteResponsive implements OnInit {\r\n private templateRef = inject(TemplateRef);\r\n private viewContainer = inject(ViewContainerRef);\r\n\r\n /** Comma-separated screen size breakpoints (e.g., 'md, lg') or an array of it. */\r\n @Input(\"cuteResponsive\") breakPoints?: string | LayoutBreakpoint[];\r\n\r\n constructor() {}\r\n\r\n ngOnInit() {\r\n this.detectScreenSize();\r\n }\r\n\r\n private detectScreenSize() {\r\n const screenWidth = this.getScreenWidth();\r\n if (this.breakPoints?.includes(screenWidth)) {\r\n this.viewContainer.createEmbeddedView(this.templateRef);\r\n } else {\r\n this.viewContainer.clear();\r\n }\r\n }\r\n\r\n private getScreenWidth(): LayoutBreakpoint {\r\n const width = window.innerWidth;\r\n if (width >= bsBreakpoints.grid.xxl) { return 'xxl'; } else\r\n if (width >= bsBreakpoints.grid.xl) { return 'xl'; } else\r\n if (width >= bsBreakpoints.grid.lg) { return 'lg'; } else\r\n if (width >= bsBreakpoints.grid.md) { return 'md'; } else\r\n if (width >= bsBreakpoints.grid.sm) { return 'sm'; } else\r\n { return 'xs'; }\r\n }\r\n}\r\n","/**\r\n * @license Apache-2.0\r\n *\r\n * Copyright (c) 2025 CuteWidgets Team. All Rights Reserved.\r\n *\r\n * You may not use this file except in compliance with the License\r\n * that can be found at http://www.apache.org/licenses/LICENSE-2.0\r\n */\r\nimport {Directive, ElementRef, inject, Input, OnInit, SecurityContext} from \"@angular/core\";\r\nimport {DomSanitizer} from \"@angular/platform-browser\";\r\n\r\n/**\r\n * Appends `<use href=[symbolPath]>` as a child element of the SVG.\r\n * @example\r\n * ```html\r\n * <svg width=\"1em\" height=\"1em\" [cuteSvgSymbol]=\"BOOTSTRAP_ICONS+'#collection'\"></svg>\r\n * ```\r\n */\r\n@Directive({\r\n selector: 'svg[cuteSvgSymbol]',\r\n host: {\r\n '[attr.cuteSvgSymbol]': 'null',\r\n 'ngSkipHydration': 'true',\r\n },\r\n standalone: true,\r\n})\r\nexport class CuteSvgSymbol implements OnInit {\r\n private _elementRef = inject<ElementRef<SVGElement>>(ElementRef);\r\n private _sanitizer = inject(DomSanitizer);\r\n\r\n /** Path to SVG **symbol** element including its `id` prefixed with **#**. */\r\n @Input({alias: \"cuteSvgSymbol\", required: true}) svgSymbol: string|null = null ;\r\n\r\n constructor() {\r\n }\r\n\r\n ngOnInit() {\r\n const url = this._sanitizer.sanitize(SecurityContext.URL, this.svgSymbol);\r\n if (url) {\r\n this._elementRef.nativeElement.innerHTML = `<use href=\"${url}\"></use>`;\r\n }\r\n }\r\n\r\n}\r\n","/**\r\n * @license Apache-2.0\r\n *\r\n * Copyright (c) 2025 CuteWidgets Team. All Rights Reserved.\r\n *\r\n * You may not use this file except in compliance with the License\r\n * that can be found at http://www.apache.org/licenses/LICENSE-2.0\r\n */\r\n\r\nimport {booleanAttribute, Directive, HostAttributeToken, inject, Input} from \"@angular/core\";\r\n\r\n/**\r\n * The icon link helper directive modifies the default link styles to enhance their appearance and\r\n * quickly align any pairing of icon and text.\r\n */\r\n@Directive({\r\n selector: 'a[cuteIconLink]',\r\n exportAs: 'cuteIconLink',\r\n host: {\r\n 'class': 'icon-link',\r\n '[class.icon-link-hover]': 'hovered',\r\n //'[style.cursor]': 'noHRef ? \"pointer\" : undefined',\r\n },\r\n standalone: true,\r\n})\r\nexport class CuteIconLink /* extends ... */ {\r\n\r\n protected noHRef: boolean = false;\r\n\r\n /** Whether to move the icon to the right on hover. */\r\n @Input({transform: booleanAttribute})\r\n hovered: boolean = false;\r\n\r\n constructor() {\r\n const href = inject(new HostAttributeToken(\"href\"), {optional: true});\r\n this.noHRef = !href;\r\n }\r\n\r\n}\r\n","/**\r\n * @license Apache-2.0\r\n *\r\n * Copyright (c) 2025 CuteWidgets Team. All Rights Reserved.\r\n *\r\n * You may not use this file except in compliance with the License\r\n * that can be found at http://www.apache.org/licenses/LICENSE-2.0\r\n */\r\nimport {Directive} from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[cuteFocusInitial]',\r\n standalone: true,\r\n host: {\r\n '[attr.cdkFocusInitial]': 'true',\r\n }\r\n})\r\nexport class CuteFocusInitial {}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cute-widgets-base-core-directives.mjs","sources":["../../../../projects/cute-widgets/base/core/directives/src/disable-context-menu.ts","../../../../projects/cute-widgets/base/core/directives/src/click-outside.ts","../../../../projects/cute-widgets/base/core/directives/src/copy-to-clipboard.ts","../../../../projects/cute-widgets/base/core/directives/src/time-ago.ts","../../../../projects/cute-widgets/base/core/directives/src/svg-symbol.ts","../../../../projects/cute-widgets/base/core/directives/src/icon-link.ts","../../../../projects/cute-widgets/base/core/directives/src/focus-initial.ts","../../../../projects/cute-widgets/base/core/directives/cute-widgets-base-core-directives.ts"],"sourcesContent":["/**\r\n * @license Apache-2.0\r\n *\r\n * Copyright (c) 2025 CuteWidgets Team. All Rights Reserved.\r\n *\r\n * You may not use this file except in compliance with the License\r\n * that can be found at http://www.apache.org/licenses/LICENSE-2.0\r\n */\r\nimport { Directive, HostListener } from '@angular/core';\r\n\r\n/**\r\n * Allows users to disable the context menu that appears when they right-click\r\n */\r\n@Directive({\r\n selector: '[cuteDisableContextMenu]',\r\n standalone: true,\r\n})\r\nexport class CuteDisableContextMenu {\r\n @HostListener('contextmenu', ['$event'])\r\n onContextMenu(event: Event): void {\r\n event.preventDefault();\r\n }\r\n}\r\n","/**\r\n * @license Apache-2.0\r\n *\r\n * Copyright (c) 2025 CuteWidgets Team. All Rights Reserved.\r\n *\r\n * You may not use this file except in compliance with the License\r\n * that can be found at http://www.apache.org/licenses/LICENSE-2.0\r\n */\r\nimport {Directive, ElementRef, Output, EventEmitter, HostListener, inject} from '@angular/core';\r\n\r\n/**\r\n * Tracks a click outside the target element.\r\n * @example\r\n * <div (cuteClickOutside)=\"closeDropdown()\">\r\n * <button (click)=\"toggleDropdown()\">Toggle Dropdown</button>\r\n * <div *ngIf=\"dropdownOpen\" class=\"dropdown\">\r\n * Dropdown content\r\n * </div>\r\n * </div>\r\n */\r\n@Directive({\r\n selector: '[cuteClickOutside]'\r\n})\r\nexport class CuteClickOutside {\r\n private _elementRef = inject(ElementRef);\r\n\r\n /** Emitted when the user clicks on a document outside the parent element. */\r\n @Output() cuteClickOutside = new EventEmitter<MouseEvent>();\r\n\r\n constructor() {}\r\n\r\n @HostListener('window:click', ['$event'])\r\n onClick(event: MouseEvent): void {\r\n if (!this._elementRef.nativeElement.contains(event.target)) {\r\n this.cuteClickOutside.emit(event);\r\n }\r\n }\r\n}\r\n","/**\r\n * @license Apache-2.0\r\n *\r\n * Copyright (c) 2025 CuteWidgets Team. All Rights Reserved.\r\n *\r\n * You may not use this file except in compliance with the License\r\n * that can be found at http://www.apache.org/licenses/LICENSE-2.0\r\n */\r\nimport {Directive, Input, ElementRef, HostListener, inject, Output, EventEmitter} from '@angular/core';\r\n\r\n/**\r\n * Allows users to copy a text to _system_ clipboard using the `Clipboard API`. The Clipboard API allows users to\r\n * programmatically read and write text and other kinds of data to and from the system clipboard in _secure contexts_.\r\n *\r\n * @example\r\n * ```HTML\r\n * <button [cuteCopyToClipboard]=\"'Text to copy'\"> Copy to Clipboard </button>\r\n * ```\r\n */\r\n@Directive({\r\n selector: '[cuteCopyToClipboard]',\r\n standalone: true,\r\n})\r\nexport class CuteCopyToClipboard {\r\n private el = inject(ElementRef);\r\n\r\n /** Text to copy to clipboard when the user clicks on the element that directive belongs to */\r\n @Input(\"cuteCopyToClipboard\") data?: string | ClipboardItem | ClipboardItems | (() => string|ClipboardItem|ClipboardItems);\r\n\r\n /** Emits when some text is copied to the clipboard. The emitted value indicates whether copying was successful. */\r\n @Output() cuteCopyToClipboardCopied = new EventEmitter<boolean>();\r\n\r\n constructor() {}\r\n\r\n @HostListener('click')\r\n onClick() {\r\n if (this.data) {\r\n if (window.isSecureContext) {\r\n try {\r\n let dataToWrite;\r\n if (this.data instanceof Function) {\r\n dataToWrite = this.data()\r\n } else {\r\n dataToWrite = this.data;\r\n }\r\n if (typeof dataToWrite === \"string\") {\r\n navigator.clipboard\r\n .writeText(dataToWrite)\r\n .then(() => this.cuteCopyToClipboardCopied.next(true))\r\n .catch(() => {\r\n this.cuteCopyToClipboardCopied.next(false);\r\n });\r\n } else {\r\n let items: ClipboardItems;\r\n if (dataToWrite instanceof ClipboardItem) {\r\n items = [dataToWrite];\r\n } else {\r\n items = dataToWrite;\r\n }\r\n navigator.clipboard\r\n .write(items)\r\n .then(() => this.cuteCopyToClipboardCopied.next(true))\r\n .catch(() => {\r\n this.cuteCopyToClipboardCopied.next(false);\r\n });\r\n }\r\n } catch (err: any) {\r\n console.error(err.message);\r\n }\r\n } else {\r\n console.error(\"The Clipboard API is available only in secure contexts (HTTPS)\");\r\n this.cuteCopyToClipboardCopied.next(false);\r\n }\r\n } else {\r\n this.cuteCopyToClipboardCopied.next(false);\r\n }\r\n }\r\n}\r\n","/**\r\n * @license Apache-2.0\r\n *\r\n * Copyright (c) 2025 CuteWidgets Team. All Rights Reserved.\r\n *\r\n * You may not use this file except in compliance with the License\r\n * that can be found at http://www.apache.org/licenses/LICENSE-2.0\r\n */\r\n\r\nimport {Directive, Input, ElementRef, Renderer2, OnChanges, SimpleChanges, inject} from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[cuteTimeAgo]',\r\n standalone: true,\r\n})\r\nexport class CuteTimeAgo implements OnChanges {\r\n private el = inject<ElementRef<HTMLElement>>(ElementRef);\r\n private renderer = inject(Renderer2);\r\n\r\n @Input() cuteTimeAgo?: Date;\r\n\r\n constructor() {}\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n if (changes[\"cuteTimeAgo\"]) {\r\n this.updateTimeAgo();\r\n }\r\n }\r\n\r\n private updateTimeAgo(): void {\r\n if (this.cuteTimeAgo instanceof Date) {\r\n const timeDifference = Date.now() - this.cuteTimeAgo.getTime();\r\n const secondsAgo = Math.floor(timeDifference / 1000);\r\n\r\n let text: string;\r\n\r\n if (secondsAgo < 60) {\r\n text = 'just now';\r\n } else if (secondsAgo < 3600) {\r\n const minutes = Math.floor(secondsAgo / 60);\r\n text = `${minutes} minute${minutes > 1 ? 's' : ''} ago`;\r\n } else if (secondsAgo < 86400) {\r\n const hours = Math.floor(secondsAgo / 3600);\r\n text = `${hours} hour${hours > 1 ? 's' : ''} ago`;\r\n } else {\r\n const days = Math.floor(secondsAgo / 86400);\r\n text = `${days} day${days > 1 ? 's' : ''} ago`;\r\n }\r\n\r\n this.renderer.setProperty(this.el.nativeElement, 'textContent', text);\r\n }\r\n }\r\n}\r\n","/**\r\n * @license Apache-2.0\r\n *\r\n * Copyright (c) 2025 CuteWidgets Team. All Rights Reserved.\r\n *\r\n * You may not use this file except in compliance with the License\r\n * that can be found at http://www.apache.org/licenses/LICENSE-2.0\r\n */\r\nimport {Directive, ElementRef, inject, Input, OnInit, SecurityContext} from \"@angular/core\";\r\nimport {DomSanitizer} from \"@angular/platform-browser\";\r\n\r\n/**\r\n * Appends `<use href=[symbolPath]>` as a child element of the SVG.\r\n * @example\r\n * ```html\r\n * <svg width=\"1em\" height=\"1em\" [cuteSvgSymbol]=\"BOOTSTRAP_ICONS+'#collection'\"></svg>\r\n * ```\r\n */\r\n@Directive({\r\n selector: 'svg[cuteSvgSymbol]',\r\n host: {\r\n '[attr.cuteSvgSymbol]': 'null',\r\n 'ngSkipHydration': 'true',\r\n },\r\n standalone: true,\r\n})\r\nexport class CuteSvgSymbol implements OnInit {\r\n private _elementRef = inject<ElementRef<SVGElement>>(ElementRef);\r\n private _sanitizer = inject(DomSanitizer);\r\n\r\n /** Path to SVG **symbol** element including its `id` prefixed with **#**. */\r\n @Input({alias: \"cuteSvgSymbol\", required: true}) svgSymbol: string|null = null ;\r\n\r\n constructor() {\r\n }\r\n\r\n ngOnInit() {\r\n const url = this._sanitizer.sanitize(SecurityContext.URL, this.svgSymbol);\r\n if (url) {\r\n this._elementRef.nativeElement.innerHTML = `<use href=\"${url}\"></use>`;\r\n }\r\n }\r\n\r\n}\r\n","/**\r\n * @license Apache-2.0\r\n *\r\n * Copyright (c) 2025 CuteWidgets Team. All Rights Reserved.\r\n *\r\n * You may not use this file except in compliance with the License\r\n * that can be found at http://www.apache.org/licenses/LICENSE-2.0\r\n */\r\n\r\nimport {booleanAttribute, Directive, HostAttributeToken, inject, Input} from \"@angular/core\";\r\n\r\n/**\r\n * The icon link helper directive modifies the default link styles to enhance their appearance and\r\n * quickly align any pairing of icon and text.\r\n */\r\n@Directive({\r\n selector: 'a[cuteIconLink]',\r\n exportAs: 'cuteIconLink',\r\n host: {\r\n 'class': 'icon-link',\r\n '[class.icon-link-hover]': 'hovered',\r\n //'[style.cursor]': 'noHRef ? \"pointer\" : undefined',\r\n },\r\n standalone: true,\r\n})\r\nexport class CuteIconLink /* extends ... */ {\r\n\r\n protected noHRef: boolean = false;\r\n\r\n /** Whether to move the icon to the right on hover. */\r\n @Input({transform: booleanAttribute})\r\n hovered: boolean = false;\r\n\r\n constructor() {\r\n const href = inject(new HostAttributeToken(\"href\"), {optional: true});\r\n this.noHRef = !href;\r\n }\r\n\r\n}\r\n","/**\r\n * @license Apache-2.0\r\n *\r\n * Copyright (c) 2025 CuteWidgets Team. All Rights Reserved.\r\n *\r\n * You may not use this file except in compliance with the License\r\n * that can be found at http://www.apache.org/licenses/LICENSE-2.0\r\n */\r\nimport {Directive} from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[cuteFocusInitial]',\r\n standalone: true,\r\n host: {\r\n '[attr.cdkFocusInitial]': 'true',\r\n }\r\n})\r\nexport class CuteFocusInitial {}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"cute-widgets-base-core-interfaces.mjs","sources":["../../../../projects/cute-widgets/base/core/interfaces/src/MenuItem.ts","../../../../projects/cute-widgets/base/core/interfaces/src/TreeNode.ts","../../../../projects/cute-widgets/base/core/interfaces/cute-widgets-base-core-interfaces.ts"],"sourcesContent":["/**\r\n * @license Apache-2.0\r\n *\r\n * Copyright (c) 2025 CuteWidgets Team. All Rights Reserved.\r\n *\r\n * You may not use this file except in compliance with the License\r\n * that can be found at http://www.apache.org/licenses/LICENSE-2.0\r\n */\r\n\r\nimport {TreeNode} from \"./TreeNode\";\r\nimport {ToolbarItem} from \"./ToolbarItem\";\r\n\r\n/**\r\n * Menu Item interface is used for items in a drop-down or cascading menu\r\n */\r\nexport interface MenuItem<D=unknown> extends TreeNode<D> {\r\n /** An array of the submenu items. */\r\n children?: MenuItem<D>[];\r\n /** Whether an item is the default item. */\r\n default?: (()=>boolean)|boolean;\r\n /** Is item checked? Default is _false_. */\r\n checked?: (()=>boolean)|boolean;\r\n /** Item is clicked (selected or unselected). */\r\n clicked?: () => void;\r\n /** Toolbar's item definition. */\r\n toolBarItem?: ToolbarItem;\r\n}\r\n\r\n","/**\r\n * @license Apache-2.0\r\n *\r\n * Copyright (c) 2025 CuteWidgets Team. All Rights Reserved.\r\n *\r\n * You may not use this file except in compliance with the License\r\n * that can be found at http://www.apache.org/licenses/LICENSE-2.0\r\n */\r\n\r\nimport {RichThemeColor} from \"@cute-widgets/base/core/theming\";\r\n\r\n/**\r\n * A structure that populates the properties for individual items in a TreeView control.\r\n */\r\nexport interface TreeNode<D=unknown> {\r\n /** Unique identifier */\r\n id?: string;\r\n /** Identifies the string label associated with the item. */\r\n label: string;\r\n /** Specifies whether the item has children. */\r\n hasChildren?: boolean;\r\n /** Children items. */\r\n children?: TreeNode<D>[];\r\n /** Item short description */\r\n microHelp?: string;\r\n /** Indicates the level of the item in the TreeView control. */\r\n level?: number;\r\n /** Any user-defined data. */\r\n data?: D;\r\n /** Router link. */\r\n routerLink?: string | string[];\r\n /** Identifies the picture displayed to the left of the item label. */\r\n icon?: string;\r\n /** Icon color. */\r\n iconColor?: string;\r\n /** Icon CSS class(es). */\r\n iconClass?: string | string[] | Record<string, boolean>;\r\n /** Identifies the state picture associated with the item. */\r\n stateIcon?: string;\r\n /** The badge text associated with the item. */\r\n badge?: string;\r\n /** Badge theme color. */\r\n badgeColor?: RichThemeColor;\r\n /** Is node enabled? Default is _true_. */\r\n enabled?: (()=>boolean)|boolean;\r\n /** Is node visible? Default is _true_. */\r\n visible?: (()=>boolean)|boolean;\r\n\r\n status?: {\r\n /** Specifies whether the node is expanded. */\r\n expanded?: boolean;\r\n /** Specifies whether the node has been populated with children. */\r\n populated?: boolean;\r\n /** Specifies whether the item has focus. */\r\n hasFocus?: boolean;\r\n /** Specifies whether the item is selected. */\r\n selection?: 'checked' | 'indeterminate' | 'unchecked';\r\n };\r\n\r\n}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"AAAA;;;;;;;AAOG;;ACPH;;;;;;;AAOG;;ACPH;;AAEG"}
1
+ {"version":3,"file":"cute-widgets-base-core-interfaces.mjs","sources":["../../../../projects/cute-widgets/base/core/interfaces/src/MenuItem.ts","../../../../projects/cute-widgets/base/core/interfaces/src/TreeNode.ts","../../../../projects/cute-widgets/base/core/interfaces/cute-widgets-base-core-interfaces.ts"],"sourcesContent":["/**\r\n * @license Apache-2.0\r\n *\r\n * Copyright (c) 2025 CuteWidgets Team. All Rights Reserved.\r\n *\r\n * You may not use this file except in compliance with the License\r\n * that can be found at http://www.apache.org/licenses/LICENSE-2.0\r\n */\r\n\r\nimport {TreeNode} from \"./TreeNode\";\r\nimport {ToolbarItem} from \"./ToolbarItem\";\r\n\r\n/**\r\n * Menu Item interface is used for items in a drop-down or cascading menu\r\n */\r\nexport interface MenuItem<D=unknown> extends TreeNode<D> {\r\n /** An array of the submenu items. */\r\n children?: MenuItem<D>[];\r\n /** Whether an item is the default item. */\r\n default?: (()=>boolean)|boolean;\r\n /** Is item checked? Default is _false_. */\r\n checked?: (()=>boolean)|boolean;\r\n /** Item is clicked (selected or unselected). */\r\n clicked?: () => void;\r\n /** Toolbar's item definition. */\r\n toolBarItem?: ToolbarItem;\r\n}\r\n\r\n","/**\r\n * @license Apache-2.0\r\n *\r\n * Copyright (c) 2025 CuteWidgets Team. All Rights Reserved.\r\n *\r\n * You may not use this file except in compliance with the License\r\n * that can be found at http://www.apache.org/licenses/LICENSE-2.0\r\n */\r\n\r\nimport {RichThemeColor} from \"@cute-widgets/base/core/theming\";\r\n\r\n/**\r\n * A structure that populates the properties for individual items in a TreeView control.\r\n */\r\nexport interface TreeNode<D=unknown> {\r\n /** Unique identifier */\r\n id?: string;\r\n /** Identifies the string label associated with the item. */\r\n label: string;\r\n /** Specifies whether the item has children. */\r\n hasChildren?: boolean;\r\n /** Children items. */\r\n children?: TreeNode<D>[];\r\n /** Item short description */\r\n microHelp?: string;\r\n /** Indicates the level of the item in the TreeView control. */\r\n level?: number;\r\n /** Any user-defined data. */\r\n data?: D;\r\n /** Router link. */\r\n routerLink?: string | string[];\r\n /** Identifies the image displayed next to the item label. */\r\n icon?: string;\r\n /** Icon color. */\r\n iconColor?: string;\r\n /** Icon CSS class(es). */\r\n iconClass?: string | string[] | Record<string, boolean>;\r\n /** Identifies the state picture associated with the item. */\r\n stateIcon?: string;\r\n /** The badge text associated with the item. */\r\n badge?: string;\r\n /** Badge theme color. */\r\n badgeColor?: RichThemeColor;\r\n /** Is node enabled? Default is _true_. */\r\n enabled?: (()=>boolean)|boolean;\r\n /** Is node visible? Default is _true_. */\r\n visible?: (()=>boolean)|boolean;\r\n\r\n status?: {\r\n /** Specifies whether the node is expanded. */\r\n expanded?: boolean;\r\n /** Specifies whether the node has been populated with children. */\r\n populated?: boolean;\r\n /** Specifies whether the item has focus. */\r\n hasFocus?: boolean;\r\n /** Specifies whether the item is selected. */\r\n selection?: 'checked' | 'indeterminate' | 'unchecked';\r\n };\r\n\r\n}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"AAAA;;;;;;;AAOG;;ACPH;;;;;;;AAOG;;ACPH;;AAEG"}
@@ -7,40 +7,80 @@
7
7
  * that can be found at http://www.apache.org/licenses/LICENSE-2.0
8
8
  */
9
9
  /**
10
- * Bootstrap media-queries, or `breakpoints`.
11
- * PascalCase is being used as Breakpoints is used like an enum.
10
+ * Bootstrap media queries, or `breakpoints`.
12
11
  */
13
12
  const bsBreakpoints = {
14
- SmallAndDown: '(max-width: 575.98px)',
15
- MediumAndDown: '(max-width: 767.98px)',
16
- LargeAndDown: '(max-width: 991.98px)',
17
- XLargeAndDown: '(max-width: 1199.98px)',
18
- XXLargeAndDown: '(max-width: 1399.98px)',
19
- XSmall: '(max-width: 575.98px)',
20
- Small: '(min-width: 576px) and (max-width: 767.98px)',
21
- Medium: '(min-width: 768px) and (max-width: 991.98px)',
22
- Large: '(min-width: 992px) and (max-width: 1199.98px)',
23
- XLarge: '(min-width: 1200px) and (max-width: 1399.98px)',
24
- XXLarge: '(min-width: 1400px)',
13
+ query: {
14
+ SmallAndDown: '(max-width: 576px)',
15
+ MediumAndDown: '(max-width: 768px)',
16
+ LargeAndDown: '(max-width: 992px)',
17
+ XLargeAndDown: '(max-width: 1200px)',
18
+ XXLargeAndDown: '(max-width: 1400px)',
19
+ XSmall: '(max-width: 575.98px)',
20
+ Small: '(min-width: 576px) and (max-width: 767.98px)',
21
+ Medium: '(min-width: 768px) and (max-width: 991.98px)',
22
+ Large: '(min-width: 992px) and (max-width: 1199.98px)',
23
+ XLarge: '(min-width: 1200px) and (max-width: 1399.98px)',
24
+ XXLarge: '(min-width: 1400px)',
25
+ get xs() { return this.XSmall; },
26
+ get sm() { return this.Small; },
27
+ get md() { return this.Medium; },
28
+ get lg() { return this.Large; },
29
+ get xl() { return this.XLarge; },
30
+ get xxl() { return this.XXLarge; },
31
+ },
25
32
  get grid() {
26
33
  return { xs: 0, sm: 576, md: 768, lg: 992, xl: 1200, xxl: 1400 };
27
34
  },
28
- get xs() { return this.XSmall; },
29
- get sm() { return this.Small; },
30
- get md() { return this.Medium; },
31
- get lg() { return this.Large; },
32
- get xl() { return this.XLarge; },
33
- get xxl() { return this.XXLarge; },
34
35
  /**
35
- * Gets the object's property name of the media-query by its value
36
- * @param query The media-query text
37
- * @returns The property name of the media-query or _undefined_ if it was not found
36
+ * Gets the breakpoint label by Bootstrap's breakpoint abbreviation
37
+ * @param code Bootstrap's breakpoint abbreviation.
38
+ * @returns More descriptive text of the abbreviation.
39
+ */
40
+ getLabel(code) {
41
+ switch (code.trim().toLowerCase()) {
42
+ case "xs":
43
+ case "xsmall":
44
+ return "XSmall";
45
+ case "sm":
46
+ case "small":
47
+ return "Small";
48
+ case "md":
49
+ case "medium":
50
+ return "Medium";
51
+ case "lg":
52
+ case "large":
53
+ return "Large";
54
+ case "xl":
55
+ case "xlarge":
56
+ return "XLarge";
57
+ case "xxl":
58
+ case "xxlarge":
59
+ return "XXLarge";
60
+ }
61
+ return "";
62
+ },
63
+ /**
64
+ * Returns the media query string for the specified breakpoint symbol.
65
+ * @param code Bootstrap's breakpoint abbreviation.
66
+ * @returns Media query string or _undefined_ if the code has an unknown value.
67
+ */
68
+ getQuery(code) {
69
+ if (code in this.query) {
70
+ return this.query[code];
71
+ }
72
+ return undefined;
73
+ },
74
+ /**
75
+ * Gets the name of the media-query by its value.
76
+ * @param query The media-query text.
77
+ * @returns The name of the media-query or _undefined_ if it was not found.
38
78
  */
39
79
  getQueryName(query) {
40
80
  let res;
41
81
  if (query) {
42
- for (const key in this) {
43
- if (this[key] === query) {
82
+ for (const [key, value] of Object.entries(this.query)) {
83
+ if (value === query) {
44
84
  res = key;
45
85
  break;
46
86
  }
@@ -48,22 +88,6 @@ const bsBreakpoints = {
48
88
  }
49
89
  return res;
50
90
  },
51
- /**
52
- * Gets the breakpoint label by Bootstrap's breakpoint abbreviation
53
- * @param code Bootstrap's breakpoint abbreviation
54
- * @returns More descriptive text of the abbreviation
55
- */
56
- getLabel(code) {
57
- switch (code) {
58
- case "xs": return "XSmall";
59
- case "sm": return "Small";
60
- case "md": return "Medium";
61
- case "lg": return "Large";
62
- case "xl": return "XLarge";
63
- case "xxl": return "XXLarge";
64
- }
65
- return "";
66
- }
67
91
  };
68
92
 
69
93
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"cute-widgets-base-core-layout.mjs","sources":["../../../../projects/cute-widgets/base/core/layout/src/bs-breakpoints.ts","../../../../projects/cute-widgets/base/core/layout/cute-widgets-base-core-layout.ts"],"sourcesContent":["/**\r\n * @license Apache-2.0\r\n *\r\n * Copyright (c) 2025 CuteWidgets Team. All Rights Reserved.\r\n *\r\n * You may not use this file except in compliance with the License\r\n * that can be found at http://www.apache.org/licenses/LICENSE-2.0\r\n */\r\n\r\n/**\r\n * Bootstrap media-queries, or `breakpoints`.\r\n * PascalCase is being used as Breakpoints is used like an enum.\r\n */\r\nexport const bsBreakpoints = {\r\n\r\n SmallAndDown: '(max-width: 575.98px)',\r\n MediumAndDown: '(max-width: 767.98px)',\r\n LargeAndDown: '(max-width: 991.98px)',\r\n XLargeAndDown: '(max-width: 1199.98px)',\r\n XXLargeAndDown: '(max-width: 1399.98px)',\r\n\r\n XSmall: '(max-width: 575.98px)',\r\n Small: '(min-width: 576px) and (max-width: 767.98px)',\r\n Medium: '(min-width: 768px) and (max-width: 991.98px)',\r\n Large: '(min-width: 992px) and (max-width: 1199.98px)',\r\n XLarge: '(min-width: 1200px) and (max-width: 1399.98px)',\r\n XXLarge: '(min-width: 1400px)',\r\n\r\n get grid(): {xs:number,sm:number,md:number,lg:number,xl:number,xxl:number} {\r\n return {xs:0, sm:576, md:768, lg: 992, xl: 1200, xxl: 1400};\r\n },\r\n\r\n get xs(): string {return this.XSmall},\r\n get sm(): string {return this.Small},\r\n get md(): string {return this.Medium},\r\n get lg(): string {return this.Large},\r\n get xl(): string {return this.XLarge},\r\n get xxl(): string {return this.XXLarge},\r\n\r\n /**\r\n * Gets the object's property name of the media-query by its value\r\n * @param query The media-query text\r\n * @returns The property name of the media-query or _undefined_ if it was not found\r\n */\r\n getQueryName(query: string): string | undefined {\r\n let res: string | undefined;\r\n if (query) {\r\n for (const key in this) {\r\n if ((this as any)[key] === query) {\r\n res = key;\r\n break;\r\n }\r\n }\r\n }\r\n return res;\r\n },\r\n /**\r\n * Gets the breakpoint label by Bootstrap's breakpoint abbreviation\r\n * @param code Bootstrap's breakpoint abbreviation\r\n * @returns More descriptive text of the abbreviation\r\n */\r\n getLabel(code: string): string {\r\n switch (code) {\r\n case \"xs\": return \"XSmall\";\r\n case \"sm\": return \"Small\";\r\n case \"md\": return \"Medium\";\r\n case \"lg\": return \"Large\";\r\n case \"xl\": return \"XLarge\";\r\n case \"xxl\": return \"XXLarge\";\r\n }\r\n return \"\";\r\n }\r\n}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"AAAA;;;;;;;AAOG;AAEH;;;AAGG;AACI,MAAM,aAAa,GAAG;AAE3B,IAAA,YAAY,EAAE,uBAAuB;AACrC,IAAA,aAAa,EAAE,uBAAuB;AACtC,IAAA,YAAY,EAAE,uBAAuB;AACrC,IAAA,aAAa,EAAE,wBAAwB;AACvC,IAAA,cAAc,EAAE,wBAAwB;AAExC,IAAA,MAAM,EAAE,uBAAuB;AAC/B,IAAA,KAAK,EAAG,8CAA8C;AACtD,IAAA,MAAM,EAAE,8CAA8C;AACtD,IAAA,KAAK,EAAG,+CAA+C;AACvD,IAAA,MAAM,EAAE,gDAAgD;AACxD,IAAA,OAAO,EAAE,qBAAqB;AAE9B,IAAA,IAAI,IAAI,GAAA;QACN,OAAO,EAAC,EAAE,EAAC,CAAC,EAAE,EAAE,EAAC,GAAG,EAAE,EAAE,EAAC,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAC;IAC7D,CAAC;IAED,IAAI,EAAE,KAAY,OAAO,IAAI,CAAC,MAAM,CAAA,CAAA,CAAC;IACrC,IAAI,EAAE,KAAY,OAAO,IAAI,CAAC,KAAK,CAAA,CAAA,CAAC;IACpC,IAAI,EAAE,KAAY,OAAO,IAAI,CAAC,MAAM,CAAA,CAAA,CAAC;IACrC,IAAI,EAAE,KAAY,OAAO,IAAI,CAAC,KAAK,CAAA,CAAA,CAAC;IACpC,IAAI,EAAE,KAAY,OAAO,IAAI,CAAC,MAAM,CAAA,CAAA,CAAC;IACrC,IAAI,GAAG,KAAY,OAAO,IAAI,CAAC,OAAO,CAAA,CAAA,CAAC;AAEvC;;;;AAIG;AACH,IAAA,YAAY,CAAC,KAAa,EAAA;AACxB,QAAA,IAAI,GAAuB;QAC3B,IAAI,KAAK,EAAE;AACT,YAAA,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE;AACtB,gBAAA,IAAK,IAAY,CAAC,GAAG,CAAC,KAAK,KAAK,EAAE;oBAChC,GAAG,GAAG,GAAG;oBACT;gBACF;YACF;QACF;AACA,QAAA,OAAO,GAAG;IACZ,CAAC;AACD;;;;AAIG;AACH,IAAA,QAAQ,CAAC,IAAY,EAAA;QACnB,QAAQ,IAAI;AACV,YAAA,KAAK,IAAI,EAAE,OAAO,QAAQ;AAC1B,YAAA,KAAK,IAAI,EAAE,OAAO,OAAO;AACzB,YAAA,KAAK,IAAI,EAAE,OAAO,QAAQ;AAC1B,YAAA,KAAK,IAAI,EAAE,OAAO,OAAO;AACzB,YAAA,KAAK,IAAI,EAAE,OAAO,QAAQ;AAC1B,YAAA,KAAK,KAAK,EAAE,OAAO,SAAS;;AAE9B,QAAA,OAAO,EAAE;IACX;;;ACvEF;;AAEG;;;;"}
1
+ {"version":3,"file":"cute-widgets-base-core-layout.mjs","sources":["../../../../projects/cute-widgets/base/core/layout/src/bs-breakpoints.ts","../../../../projects/cute-widgets/base/core/layout/cute-widgets-base-core-layout.ts"],"sourcesContent":["/**\r\n * @license Apache-2.0\r\n *\r\n * Copyright (c) 2025 CuteWidgets Team. All Rights Reserved.\r\n *\r\n * You may not use this file except in compliance with the License\r\n * that can be found at http://www.apache.org/licenses/LICENSE-2.0\r\n */\r\n\r\n/**\r\n * Bootstrap media queries, or `breakpoints`.\r\n */\r\nexport const bsBreakpoints = {\r\n\r\n query: {\r\n SmallAndDown: '(max-width: 576px)',\r\n MediumAndDown: '(max-width: 768px)',\r\n LargeAndDown: '(max-width: 992px)',\r\n XLargeAndDown: '(max-width: 1200px)',\r\n XXLargeAndDown: '(max-width: 1400px)',\r\n\r\n XSmall: '(max-width: 575.98px)',\r\n Small: '(min-width: 576px) and (max-width: 767.98px)',\r\n Medium: '(min-width: 768px) and (max-width: 991.98px)',\r\n Large: '(min-width: 992px) and (max-width: 1199.98px)',\r\n XLarge: '(min-width: 1200px) and (max-width: 1399.98px)',\r\n XXLarge: '(min-width: 1400px)',\r\n\r\n get xs(): string {return this.XSmall},\r\n get sm(): string {return this.Small},\r\n get md(): string {return this.Medium},\r\n get lg(): string {return this.Large},\r\n get xl(): string {return this.XLarge},\r\n get xxl(): string {return this.XXLarge},\r\n },\r\n\r\n get grid(): {xs:number,sm:number,md:number,lg:number,xl:number,xxl:number} {\r\n return {xs:0, sm:576, md:768, lg: 992, xl: 1200, xxl: 1400};\r\n },\r\n\r\n /**\r\n * Gets the breakpoint label by Bootstrap's breakpoint abbreviation\r\n * @param code Bootstrap's breakpoint abbreviation.\r\n * @returns More descriptive text of the abbreviation.\r\n */\r\n getLabel(code: string): string {\r\n switch (code.trim().toLowerCase()) {\r\n case \"xs\":\r\n case \"xsmall\":\r\n return \"XSmall\";\r\n case \"sm\":\r\n case \"small\":\r\n return \"Small\";\r\n case \"md\":\r\n case \"medium\":\r\n return \"Medium\";\r\n case \"lg\":\r\n case \"large\":\r\n return \"Large\";\r\n case \"xl\":\r\n case \"xlarge\":\r\n return \"XLarge\";\r\n case \"xxl\":\r\n case \"xxlarge\":\r\n return \"XXLarge\";\r\n }\r\n return \"\";\r\n },\r\n\r\n /**\r\n * Returns the media query string for the specified breakpoint symbol.\r\n * @param code Bootstrap's breakpoint abbreviation.\r\n * @returns Media query string or _undefined_ if the code has an unknown value.\r\n */\r\n getQuery(code: string): string | undefined {\r\n if (code in this.query) {\r\n return (this.query as any)[code];\r\n }\r\n return undefined;\r\n },\r\n\r\n /**\r\n * Gets the name of the media-query by its value.\r\n * @param query The media-query text.\r\n * @returns The name of the media-query or _undefined_ if it was not found.\r\n */\r\n getQueryName(query: string): string | undefined {\r\n let res: string | undefined;\r\n if (query) {\r\n for (const [key, value] of Object.entries(this.query)) {\r\n if (value === query) {\r\n res = key;\r\n break;\r\n }\r\n }\r\n }\r\n return res;\r\n },\r\n\r\n}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"AAAA;;;;;;;AAOG;AAEH;;AAEG;AACI,MAAM,aAAa,GAAG;AAE3B,IAAA,KAAK,EAAE;AACL,QAAA,YAAY,EAAI,oBAAoB;AACpC,QAAA,aAAa,EAAG,oBAAoB;AACpC,QAAA,YAAY,EAAI,oBAAoB;AACpC,QAAA,aAAa,EAAG,qBAAqB;AACrC,QAAA,cAAc,EAAE,qBAAqB;AAErC,QAAA,MAAM,EAAI,uBAAuB;AACjC,QAAA,KAAK,EAAK,8CAA8C;AACxD,QAAA,MAAM,EAAI,8CAA8C;AACxD,QAAA,KAAK,EAAK,+CAA+C;AACzD,QAAA,MAAM,EAAI,gDAAgD;AAC1D,QAAA,OAAO,EAAG,qBAAqB;QAE/B,IAAI,EAAE,KAAY,OAAO,IAAI,CAAC,MAAM,CAAA,CAAA,CAAC;QACrC,IAAI,EAAE,KAAY,OAAO,IAAI,CAAC,KAAK,CAAA,CAAA,CAAC;QACpC,IAAI,EAAE,KAAY,OAAO,IAAI,CAAC,MAAM,CAAA,CAAA,CAAC;QACrC,IAAI,EAAE,KAAY,OAAO,IAAI,CAAC,KAAK,CAAA,CAAA,CAAC;QACpC,IAAI,EAAE,KAAY,OAAO,IAAI,CAAC,MAAM,CAAA,CAAA,CAAC;QACrC,IAAI,GAAG,KAAY,OAAO,IAAI,CAAC,OAAO,CAAA,CAAA,CAAC;AACxC,KAAA;AAED,IAAA,IAAI,IAAI,GAAA;QACN,OAAO,EAAC,EAAE,EAAC,CAAC,EAAE,EAAE,EAAC,GAAG,EAAE,EAAE,EAAC,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAC;IAC7D,CAAC;AAED;;;;AAIG;AACH,IAAA,QAAQ,CAAC,IAAY,EAAA;QACnB,QAAQ,IAAI,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE;AAC/B,YAAA,KAAK,IAAI;AACT,YAAA,KAAK,QAAQ;AACX,gBAAA,OAAO,QAAQ;AACjB,YAAA,KAAK,IAAI;AACT,YAAA,KAAK,OAAO;AACV,gBAAA,OAAO,OAAO;AAChB,YAAA,KAAK,IAAI;AACT,YAAA,KAAK,QAAQ;AACX,gBAAA,OAAO,QAAQ;AACjB,YAAA,KAAK,IAAI;AACT,YAAA,KAAK,OAAO;AACV,gBAAA,OAAO,OAAO;AAChB,YAAA,KAAK,IAAI;AACT,YAAA,KAAK,QAAQ;AACX,gBAAA,OAAO,QAAQ;AACjB,YAAA,KAAK,KAAK;AACV,YAAA,KAAK,SAAS;AACZ,gBAAA,OAAO,SAAS;;AAEpB,QAAA,OAAO,EAAE;IACX,CAAC;AAED;;;;AAIG;AACH,IAAA,QAAQ,CAAC,IAAY,EAAA;AACnB,QAAA,IAAI,IAAI,IAAI,IAAI,CAAC,KAAK,EAAE;AACtB,YAAA,OAAQ,IAAI,CAAC,KAAa,CAAC,IAAI,CAAC;QAClC;AACA,QAAA,OAAO,SAAS;IAClB,CAAC;AAED;;;;AAIG;AACH,IAAA,YAAY,CAAC,KAAa,EAAA;AACxB,QAAA,IAAI,GAAuB;QAC3B,IAAI,KAAK,EAAE;AACT,YAAA,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;AACrD,gBAAA,IAAI,KAAK,KAAK,KAAK,EAAE;oBACnB,GAAG,GAAG,GAAG;oBACT;gBACF;YACF;QACF;AACA,QAAA,OAAO,GAAG;IACZ,CAAC;;;ACjGH;;AAEG;;;;"}
@@ -1,5 +1,5 @@
1
1
  import * as i0 from '@angular/core';
2
- import { inject, DOCUMENT, NgZone, booleanAttribute, Input, Directive, TemplateRef, InjectionToken, ViewContainerRef, ViewChild, ContentChild, ChangeDetectionStrategy, ViewEncapsulation, Component, DestroyRef, EventEmitter, numberAttribute, HostBinding, Output, ContentChildren, forwardRef, NgModule } from '@angular/core';
2
+ import { inject, DOCUMENT, NgZone, booleanAttribute, Input, Directive, TemplateRef, InjectionToken, ViewContainerRef, ViewChild, ContentChild, ChangeDetectionStrategy, ViewEncapsulation, Component, EventEmitter, numberAttribute, HostBinding, Output, ContentChildren, forwardRef, NgModule } from '@angular/core';
3
3
  import { FocusKeyManager } from '@angular/cdk/a11y';
4
4
  import { Directionality } from '@angular/cdk/bidi';
5
5
  import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
@@ -388,7 +388,6 @@ class CuteNav extends CuteLayoutControl {
388
388
  }
389
389
  constructor() {
390
390
  super();
391
- this._destroyRef = inject(DestroyRef);
392
391
  this._dir = inject(Directionality);
393
392
  this._oldFocusLink = null;
394
393
  /** To synchronize selectedIndex and keyManager.activeIndex */