@actabldesign/bellhop-angular 0.0.4 → 0.0.12

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.
package/llms.txt ADDED
@@ -0,0 +1,2969 @@
1
+ This file is a merged representation of a subset of the codebase, containing specifically included files and files not matching ignore patterns, combined into a single document by Repomix.
2
+ The content has been processed where security check has been disabled.
3
+
4
+ ================================================================
5
+ File Summary
6
+ ================================================================
7
+
8
+ Purpose:
9
+ --------
10
+ This file contains a packed representation of a subset of the repository's contents that is considered the most important context.
11
+ It is designed to be easily consumable by AI systems for analysis, code review,
12
+ or other automated processes.
13
+
14
+ File Format:
15
+ ------------
16
+ The content is organized as follows:
17
+ 1. This summary section
18
+ 2. Repository information
19
+ 3. Directory structure
20
+ 4. Repository files (if enabled)
21
+ 5. Multiple file entries, each consisting of:
22
+ a. A separator line (================)
23
+ b. The file path (File: path/to/file)
24
+ c. Another separator line
25
+ d. The full contents of the file
26
+ e. A blank line
27
+
28
+ Usage Guidelines:
29
+ -----------------
30
+ - This file should be treated as read-only. Any changes should be made to the
31
+ original repository files, not this packed version.
32
+ - When processing this file, use the file path to distinguish
33
+ between different files in the repository.
34
+ - Be aware that this file may contain sensitive information. Handle it with
35
+ the same level of security as you would the original repository.
36
+
37
+ Notes:
38
+ ------
39
+ - Some files may have been excluded based on .gitignore rules and Repomix's configuration
40
+ - Binary files are not included in this packed representation. Please refer to the Repository Structure section for a complete list of file paths, including binary files
41
+ - Only files matching these patterns are included: **/*.ts, **/*.tsx, **/*.js, **/*.jsx, **/*.css, **/*.scss, **/*.json, **/*.md
42
+ - Files matching these patterns are excluded: **/node_modules/**, **/dist/**, **/build/**, **/coverage/**, **/.angular/**, **/.nx/**, **/storybook-static/**, **/*.lock, **/*.log, **/*.svg, **/*.png, **/*.jpg, **/*.jpeg, **/*.gif, **/*.ico, **/*.webp, **/*.woff, **/*.woff2, **/*.ttf, **/*.eot, **/*.otf, **/*.min.js, **/*.min.css, **/*.map, **/package-lock.json, **/yarn.lock, **/pnpm-lock.yaml, **/.DS_Store, **/Thumbs.db, **/llms.txt, **/llms/**
43
+ - Files matching patterns in .gitignore are excluded
44
+ - Files matching default ignore patterns are excluded
45
+ - Security check has been disabled - content may contain sensitive information
46
+ - Files are sorted by Git change count (files with more changes are at the bottom)
47
+
48
+
49
+ ================================================================
50
+ Directory Structure
51
+ ================================================================
52
+ src/
53
+ lib/
54
+ stencil-generated/
55
+ angular-component-lib/
56
+ utils.ts
57
+ boolean-value-accessor.ts
58
+ components.ts
59
+ index.ts
60
+ number-value-accessor.ts
61
+ select-value-accessor.ts
62
+ text-value-accessor.ts
63
+ value-accessor.ts
64
+ index.ts
65
+ package.json
66
+ project.json
67
+ README.md
68
+ tsconfig.json
69
+
70
+ ================================================================
71
+ Files
72
+ ================================================================
73
+
74
+ ================
75
+ File: src/lib/stencil-generated/angular-component-lib/utils.ts
76
+ ================
77
+ /* eslint-disable */
78
+ /* tslint:disable */
79
+ import { fromEvent } from 'rxjs';
80
+
81
+ export const proxyInputs = (Cmp: any, inputs: string[]) => {
82
+ const Prototype = Cmp.prototype;
83
+ inputs.forEach((item) => {
84
+ Object.defineProperty(Prototype, item, {
85
+ get() {
86
+ return this.el[item];
87
+ },
88
+ set(val: any) {
89
+ this.z.runOutsideAngular(() => (this.el[item] = val));
90
+ },
91
+ /**
92
+ * In the event that proxyInputs is called
93
+ * multiple times re-defining these inputs
94
+ * will cause an error to be thrown. As a result
95
+ * we set configurable: true to indicate these
96
+ * properties can be changed.
97
+ */
98
+ configurable: true,
99
+ });
100
+ });
101
+ };
102
+
103
+ export const proxyMethods = (Cmp: any, methods: string[]) => {
104
+ const Prototype = Cmp.prototype;
105
+ methods.forEach((methodName) => {
106
+ Prototype[methodName] = function () {
107
+ const args = arguments;
108
+ return this.z.runOutsideAngular(() => this.el[methodName].apply(this.el, args));
109
+ };
110
+ });
111
+ };
112
+
113
+ export const proxyOutputs = (instance: any, el: any, events: string[]) => {
114
+ events.forEach((eventName) => (instance[eventName] = fromEvent(el, eventName)));
115
+ };
116
+
117
+ export const defineCustomElement = (tagName: string, customElement: any) => {
118
+ if (customElement !== undefined && typeof customElements !== 'undefined' && !customElements.get(tagName)) {
119
+ customElements.define(tagName, customElement);
120
+ }
121
+ };
122
+
123
+ // tslint:disable-next-line: only-arrow-functions
124
+ export function ProxyCmp(opts: { defineCustomElementFn?: () => void; inputs?: any; methods?: any }) {
125
+ const decorator = function (cls: any) {
126
+ const { defineCustomElementFn, inputs, methods } = opts;
127
+
128
+ if (defineCustomElementFn !== undefined) {
129
+ defineCustomElementFn();
130
+ }
131
+
132
+ if (inputs) {
133
+ proxyInputs(cls, inputs);
134
+ }
135
+ if (methods) {
136
+ proxyMethods(cls, methods);
137
+ }
138
+ return cls;
139
+ };
140
+ return decorator;
141
+ }
142
+
143
+ ================
144
+ File: src/lib/stencil-generated/boolean-value-accessor.ts
145
+ ================
146
+ import { Directive, ElementRef } from '@angular/core';
147
+ import { NG_VALUE_ACCESSOR } from '@angular/forms';
148
+
149
+ import { ValueAccessor } from './value-accessor';
150
+
151
+ @Directive({
152
+ /* tslint:disable-next-line:directive-selector */
153
+ selector: 'bh-checkbox, bh-toggle',
154
+ host: {
155
+ '(bhChange)': 'handleChangeEvent($event.target?.["checked"])'
156
+ },
157
+ providers: [
158
+ {
159
+ provide: NG_VALUE_ACCESSOR,
160
+ useExisting: BooleanValueAccessor,
161
+ multi: true
162
+ }
163
+ ]
164
+ })
165
+ export class BooleanValueAccessor extends ValueAccessor {
166
+ constructor(el: ElementRef) {
167
+ super(el);
168
+ }
169
+ override writeValue(value: any) {
170
+ this.el.nativeElement.checked = this.lastValue = value == null ? false : value;
171
+ }
172
+ }
173
+
174
+ ================
175
+ File: src/lib/stencil-generated/components.ts
176
+ ================
177
+ /* tslint:disable */
178
+ /* auto-generated angular directive proxies */
179
+ import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, EventEmitter, Output, NgZone } from '@angular/core';
180
+
181
+ import { ProxyCmp } from './angular-component-lib/utils';
182
+
183
+ import type { Components } from '@actabldesign/bellhop-core/components';
184
+
185
+ import { defineCustomElement as defineBhAccordion } from '@actabldesign/bellhop-core/components/bh-accordion.js';
186
+ import { defineCustomElement as defineBhAccordionItem } from '@actabldesign/bellhop-core/components/bh-accordion-item.js';
187
+ import { defineCustomElement as defineBhAppbar } from '@actabldesign/bellhop-core/components/bh-appbar.js';
188
+ import { defineCustomElement as defineBhAutocompleteMenu } from '@actabldesign/bellhop-core/components/bh-autocomplete-menu.js';
189
+ import { defineCustomElement as defineBhAvatar } from '@actabldesign/bellhop-core/components/bh-avatar.js';
190
+ import { defineCustomElement as defineBhAvatarAdd } from '@actabldesign/bellhop-core/components/bh-avatar-add.js';
191
+ import { defineCustomElement as defineBhAvatarStacked } from '@actabldesign/bellhop-core/components/bh-avatar-stacked.js';
192
+ import { defineCustomElement as defineBhBadge } from '@actabldesign/bellhop-core/components/bh-badge.js';
193
+ import { defineCustomElement as defineBhBadgeDot } from '@actabldesign/bellhop-core/components/bh-badge-dot.js';
194
+ import { defineCustomElement as defineBhBarChart } from '@actabldesign/bellhop-core/components/bh-bar-chart.js';
195
+ import { defineCustomElement as defineBhBreadcrumbs } from '@actabldesign/bellhop-core/components/bh-breadcrumbs.js';
196
+ import { defineCustomElement as defineBhButton } from '@actabldesign/bellhop-core/components/bh-button.js';
197
+ import { defineCustomElement as defineBhButtonIcon } from '@actabldesign/bellhop-core/components/bh-button-icon.js';
198
+ import { defineCustomElement as defineBhCard } from '@actabldesign/bellhop-core/components/bh-card.js';
199
+ import { defineCustomElement as defineBhCardFooter } from '@actabldesign/bellhop-core/components/bh-card-footer.js';
200
+ import { defineCustomElement as defineBhCardHeader } from '@actabldesign/bellhop-core/components/bh-card-header.js';
201
+ import { defineCustomElement as defineBhChartTooltip } from '@actabldesign/bellhop-core/components/bh-chart-tooltip.js';
202
+ import { defineCustomElement as defineBhCheckbox } from '@actabldesign/bellhop-core/components/bh-checkbox.js';
203
+ import { defineCustomElement as defineBhCheckboxGroup } from '@actabldesign/bellhop-core/components/bh-checkbox-group.js';
204
+ import { defineCustomElement as defineBhCheckboxGroupItem } from '@actabldesign/bellhop-core/components/bh-checkbox-group-item.js';
205
+ import { defineCustomElement as defineBhDataGrid } from '@actabldesign/bellhop-core/components/bh-data-grid.js';
206
+ import { defineCustomElement as defineBhDatePicker } from '@actabldesign/bellhop-core/components/bh-date-picker.js';
207
+ import { defineCustomElement as defineBhDatePickerContent } from '@actabldesign/bellhop-core/components/bh-date-picker-content.js';
208
+ import { defineCustomElement as defineBhDateRangePicker } from '@actabldesign/bellhop-core/components/bh-date-range-picker.js';
209
+ import { defineCustomElement as defineBhDateRangePickerContent } from '@actabldesign/bellhop-core/components/bh-date-range-picker-content.js';
210
+ import { defineCustomElement as defineBhDropdown } from '@actabldesign/bellhop-core/components/bh-dropdown.js';
211
+ import { defineCustomElement as defineBhDropdownMenu } from '@actabldesign/bellhop-core/components/bh-dropdown-menu.js';
212
+ import { defineCustomElement as defineBhEmptyState } from '@actabldesign/bellhop-core/components/bh-empty-state.js';
213
+ import { defineCustomElement as defineBhFeaturedIcon } from '@actabldesign/bellhop-core/components/bh-featured-icon.js';
214
+ import { defineCustomElement as defineBhIllustrations } from '@actabldesign/bellhop-core/components/bh-illustrations.js';
215
+ import { defineCustomElement as defineBhInputAutocomplete } from '@actabldesign/bellhop-core/components/bh-input-autocomplete.js';
216
+ import { defineCustomElement as defineBhInputNumber } from '@actabldesign/bellhop-core/components/bh-input-number.js';
217
+ import { defineCustomElement as defineBhInputPassword } from '@actabldesign/bellhop-core/components/bh-input-password.js';
218
+ import { defineCustomElement as defineBhInputText } from '@actabldesign/bellhop-core/components/bh-input-text.js';
219
+ import { defineCustomElement as defineBhInputVerification } from '@actabldesign/bellhop-core/components/bh-input-verification.js';
220
+ import { defineCustomElement as defineBhLabel } from '@actabldesign/bellhop-core/components/bh-label.js';
221
+ import { defineCustomElement as defineBhLoaderSpinner } from '@actabldesign/bellhop-core/components/bh-loader-spinner.js';
222
+ import { defineCustomElement as defineBhLogoBox } from '@actabldesign/bellhop-core/components/bh-logo-box.js';
223
+ import { defineCustomElement as defineBhModal } from '@actabldesign/bellhop-core/components/bh-modal.js';
224
+ import { defineCustomElement as defineBhModalActions } from '@actabldesign/bellhop-core/components/bh-modal-actions.js';
225
+ import { defineCustomElement as defineBhModalHeader } from '@actabldesign/bellhop-core/components/bh-modal-header.js';
226
+ import { defineCustomElement as defineBhMonthPicker } from '@actabldesign/bellhop-core/components/bh-month-picker.js';
227
+ import { defineCustomElement as defineBhMonthPickerContent } from '@actabldesign/bellhop-core/components/bh-month-picker-content.js';
228
+ import { defineCustomElement as defineBhNavItem } from '@actabldesign/bellhop-core/components/bh-nav-item.js';
229
+ import { defineCustomElement as defineBhNotification } from '@actabldesign/bellhop-core/components/bh-notification.js';
230
+ import { defineCustomElement as defineBhPageNavigation } from '@actabldesign/bellhop-core/components/bh-page-navigation.js';
231
+ import { defineCustomElement as defineBhPageNavigationChild } from '@actabldesign/bellhop-core/components/bh-page-navigation-child.js';
232
+ import { defineCustomElement as defineBhPageNavigationMultiLevel } from '@actabldesign/bellhop-core/components/bh-page-navigation-multi-level.js';
233
+ import { defineCustomElement as defineBhPageNavigationSingleLevel } from '@actabldesign/bellhop-core/components/bh-page-navigation-single-level.js';
234
+ import { defineCustomElement as defineBhPagination } from '@actabldesign/bellhop-core/components/bh-pagination.js';
235
+ import { defineCustomElement as defineBhPickerMenu } from '@actabldesign/bellhop-core/components/bh-picker-menu.js';
236
+ import { defineCustomElement as defineBhPieChart } from '@actabldesign/bellhop-core/components/bh-pie-chart.js';
237
+ import { defineCustomElement as defineBhPopover } from '@actabldesign/bellhop-core/components/bh-popover.js';
238
+ import { defineCustomElement as defineBhProductSwitcher } from '@actabldesign/bellhop-core/components/bh-product-switcher.js';
239
+ import { defineCustomElement as defineBhPropertySwitcher } from '@actabldesign/bellhop-core/components/bh-property-switcher.js';
240
+ import { defineCustomElement as defineBhRadioButton } from '@actabldesign/bellhop-core/components/bh-radio-button.js';
241
+ import { defineCustomElement as defineBhSidebar } from '@actabldesign/bellhop-core/components/bh-sidebar.js';
242
+ import { defineCustomElement as defineBhSkeletonLoader } from '@actabldesign/bellhop-core/components/bh-skeleton-loader.js';
243
+ import { defineCustomElement as defineBhTabItem } from '@actabldesign/bellhop-core/components/bh-tab-item.js';
244
+ import { defineCustomElement as defineBhTabs } from '@actabldesign/bellhop-core/components/bh-tabs.js';
245
+ import { defineCustomElement as defineBhTag } from '@actabldesign/bellhop-core/components/bh-tag.js';
246
+ import { defineCustomElement as defineBhTextarea } from '@actabldesign/bellhop-core/components/bh-textarea.js';
247
+ import { defineCustomElement as defineBhToggle } from '@actabldesign/bellhop-core/components/bh-toggle.js';
248
+ import { defineCustomElement as defineBhTooltip } from '@actabldesign/bellhop-core/components/bh-tooltip.js';
249
+ import { defineCustomElement as defineBhTrendChart } from '@actabldesign/bellhop-core/components/bh-trend-chart.js';
250
+ @ProxyCmp({
251
+ defineCustomElementFn: defineBhAccordion,
252
+ inputs: ['collapsible', 'mode', 'value']
253
+ })
254
+ @Component({
255
+ selector: 'bh-accordion',
256
+ changeDetection: ChangeDetectionStrategy.OnPush,
257
+ template: '<ng-content></ng-content>',
258
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
259
+ inputs: ['collapsible', 'mode', 'value'],
260
+ outputs: ['bhAccordionChange'],
261
+ })
262
+ export class BhAccordion {
263
+ protected el: HTMLBhAccordionElement;
264
+ @Output() bhAccordionChange = new EventEmitter<CustomEvent<string | string[]>>();
265
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
266
+ c.detach();
267
+ this.el = r.nativeElement;
268
+ }
269
+ }
270
+
271
+
272
+ export declare interface BhAccordion extends Components.BhAccordion {
273
+ /**
274
+ * Emitted when the expanded state changes
275
+ */
276
+ bhAccordionChange: EventEmitter<CustomEvent<string | string[]>>;
277
+ }
278
+
279
+
280
+ @ProxyCmp({
281
+ defineCustomElementFn: defineBhAccordionItem,
282
+ inputs: ['disabled', 'expanded', 'header', 'value']
283
+ })
284
+ @Component({
285
+ selector: 'bh-accordion-item',
286
+ changeDetection: ChangeDetectionStrategy.OnPush,
287
+ template: '<ng-content></ng-content>',
288
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
289
+ inputs: ['disabled', 'expanded', { name: 'header', required: true }, { name: 'value', required: true }],
290
+ outputs: ['bhAccordionToggle', 'bhAccordionClick'],
291
+ })
292
+ export class BhAccordionItem {
293
+ protected el: HTMLBhAccordionItemElement;
294
+ @Output() bhAccordionToggle = new EventEmitter<CustomEvent<{ value: string; expanded: boolean }>>();
295
+ @Output() bhAccordionClick = new EventEmitter<CustomEvent<string>>();
296
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
297
+ c.detach();
298
+ this.el = r.nativeElement;
299
+ }
300
+ }
301
+
302
+
303
+ export declare interface BhAccordionItem extends Components.BhAccordionItem {
304
+ /**
305
+ * Emitted when the accordion item is toggled
306
+ */
307
+ bhAccordionToggle: EventEmitter<CustomEvent<{ value: string; expanded: boolean }>>;
308
+ /**
309
+ * Emitted when the accordion header is clicked
310
+ */
311
+ bhAccordionClick: EventEmitter<CustomEvent<string>>;
312
+ }
313
+
314
+
315
+ @ProxyCmp({
316
+ defineCustomElementFn: defineBhAppbar,
317
+ inputs: ['breadcrumbItems', 'isMenuOpen', 'logoAlt', 'logoSrc', 'notificationCount']
318
+ })
319
+ @Component({
320
+ selector: 'bh-appbar',
321
+ changeDetection: ChangeDetectionStrategy.OnPush,
322
+ template: '<ng-content></ng-content>',
323
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
324
+ inputs: ['breadcrumbItems', 'isMenuOpen', 'logoAlt', 'logoSrc', 'notificationCount'],
325
+ outputs: ['bhMenuToggle', 'bhBreadcrumbClick', 'bhNotificationClick', 'bhCalendarClick', 'bhSettingsClick'],
326
+ })
327
+ export class BhAppbar {
328
+ protected el: HTMLBhAppbarElement;
329
+ @Output() bhMenuToggle = new EventEmitter<CustomEvent<void>>();
330
+ @Output() bhBreadcrumbClick = new EventEmitter<CustomEvent<IBhAppbarBreadcrumbItem>>();
331
+ @Output() bhNotificationClick = new EventEmitter<CustomEvent<void>>();
332
+ @Output() bhCalendarClick = new EventEmitter<CustomEvent<void>>();
333
+ @Output() bhSettingsClick = new EventEmitter<CustomEvent<void>>();
334
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
335
+ c.detach();
336
+ this.el = r.nativeElement;
337
+ }
338
+ }
339
+
340
+
341
+ import type { BreadcrumbItem as IBhAppbarBreadcrumbItem } from '@actabldesign/bellhop-core/components';
342
+
343
+ export declare interface BhAppbar extends Components.BhAppbar {
344
+ /**
345
+ * Event emitted when menu toggle is clicked
346
+ */
347
+ bhMenuToggle: EventEmitter<CustomEvent<void>>;
348
+ /**
349
+ * Event emitted when a breadcrumb is clicked
350
+ */
351
+ bhBreadcrumbClick: EventEmitter<CustomEvent<IBhAppbarBreadcrumbItem>>;
352
+ /**
353
+ * Event emitted when notification icon is clicked
354
+ */
355
+ bhNotificationClick: EventEmitter<CustomEvent<void>>;
356
+ /**
357
+ * Event emitted when calendar icon is clicked
358
+ */
359
+ bhCalendarClick: EventEmitter<CustomEvent<void>>;
360
+ /**
361
+ * Event emitted when settings icon is clicked
362
+ */
363
+ bhSettingsClick: EventEmitter<CustomEvent<void>>;
364
+ }
365
+
366
+
367
+ @ProxyCmp({
368
+ defineCustomElementFn: defineBhAutocompleteMenu,
369
+ inputs: ['maxHeight', 'menuItems', 'multiSelect', 'searchQuery', 'selectedIndex', 'visible']
370
+ })
371
+ @Component({
372
+ selector: 'bh-autocomplete-menu',
373
+ changeDetection: ChangeDetectionStrategy.OnPush,
374
+ template: '<ng-content></ng-content>',
375
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
376
+ inputs: ['maxHeight', 'menuItems', 'multiSelect', 'searchQuery', 'selectedIndex', 'visible'],
377
+ outputs: ['bhItemClick', 'bhItemHover'],
378
+ })
379
+ export class BhAutocompleteMenu {
380
+ protected el: HTMLBhAutocompleteMenuElement;
381
+ @Output() bhItemClick = new EventEmitter<CustomEvent<IBhAutocompleteMenuAutocompleteMenuItem>>();
382
+ @Output() bhItemHover = new EventEmitter<CustomEvent<number>>();
383
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
384
+ c.detach();
385
+ this.el = r.nativeElement;
386
+ }
387
+ }
388
+
389
+
390
+ import type { AutocompleteMenuItem as IBhAutocompleteMenuAutocompleteMenuItem } from '@actabldesign/bellhop-core/components';
391
+
392
+ export declare interface BhAutocompleteMenu extends Components.BhAutocompleteMenu {
393
+ /**
394
+ * Event emitted when an item is clicked
395
+ */
396
+ bhItemClick: EventEmitter<CustomEvent<IBhAutocompleteMenuAutocompleteMenuItem>>;
397
+ /**
398
+ * Event emitted when an item is hovered
399
+ */
400
+ bhItemHover: EventEmitter<CustomEvent<number>>;
401
+ }
402
+
403
+
404
+ @ProxyCmp({
405
+ defineCustomElementFn: defineBhAvatar,
406
+ inputs: ['alt', 'imageSrc', 'size', 'status', 'text', 'type']
407
+ })
408
+ @Component({
409
+ selector: 'bh-avatar',
410
+ changeDetection: ChangeDetectionStrategy.OnPush,
411
+ template: '<ng-content></ng-content>',
412
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
413
+ inputs: ['alt', 'imageSrc', 'size', 'status', 'text', 'type'],
414
+ outputs: ['bhMouseEnter', 'bhMouseLeave'],
415
+ })
416
+ export class BhAvatar {
417
+ protected el: HTMLBhAvatarElement;
418
+ @Output() bhMouseEnter = new EventEmitter<CustomEvent<void>>();
419
+ @Output() bhMouseLeave = new EventEmitter<CustomEvent<void>>();
420
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
421
+ c.detach();
422
+ this.el = r.nativeElement;
423
+ }
424
+ }
425
+
426
+
427
+ export declare interface BhAvatar extends Components.BhAvatar {
428
+ /**
429
+ * Emitted when the avatar is hovered
430
+ */
431
+ bhMouseEnter: EventEmitter<CustomEvent<void>>;
432
+ /**
433
+ * Emitted when the mouse leaves the avatar
434
+ */
435
+ bhMouseLeave: EventEmitter<CustomEvent<void>>;
436
+ }
437
+
438
+
439
+ @ProxyCmp({
440
+ defineCustomElementFn: defineBhAvatarAdd,
441
+ inputs: ['disabled', 'showTooltip', 'size', 'tooltipText']
442
+ })
443
+ @Component({
444
+ selector: 'bh-avatar-add',
445
+ changeDetection: ChangeDetectionStrategy.OnPush,
446
+ template: '<ng-content></ng-content>',
447
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
448
+ inputs: ['disabled', 'showTooltip', 'size', 'tooltipText'],
449
+ outputs: ['bhClick'],
450
+ })
451
+ export class BhAvatarAdd {
452
+ protected el: HTMLBhAvatarAddElement;
453
+ @Output() bhClick = new EventEmitter<CustomEvent<MouseEvent>>();
454
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
455
+ c.detach();
456
+ this.el = r.nativeElement;
457
+ }
458
+ }
459
+
460
+
461
+ export declare interface BhAvatarAdd extends Components.BhAvatarAdd {
462
+ /**
463
+ * Emitted when the button is clicked
464
+ */
465
+ bhClick: EventEmitter<CustomEvent<MouseEvent>>;
466
+ }
467
+
468
+
469
+ @ProxyCmp({
470
+ defineCustomElementFn: defineBhAvatarStacked,
471
+ inputs: ['addTooltipText', 'avatars', 'maxVisible', 'showAddButton', 'size']
472
+ })
473
+ @Component({
474
+ selector: 'bh-avatar-stacked',
475
+ changeDetection: ChangeDetectionStrategy.OnPush,
476
+ template: '<ng-content></ng-content>',
477
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
478
+ inputs: ['addTooltipText', 'avatars', 'maxVisible', 'showAddButton', 'size'],
479
+ })
480
+ export class BhAvatarStacked {
481
+ protected el: HTMLBhAvatarStackedElement;
482
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
483
+ c.detach();
484
+ this.el = r.nativeElement;
485
+ }
486
+ }
487
+
488
+
489
+ export declare interface BhAvatarStacked extends Components.BhAvatarStacked {}
490
+
491
+
492
+ @ProxyCmp({
493
+ defineCustomElementFn: defineBhBadge,
494
+ inputs: ['disabled', 'dismissible', 'emphasis', 'icon', 'label', 'size', 'variant']
495
+ })
496
+ @Component({
497
+ selector: 'bh-badge',
498
+ changeDetection: ChangeDetectionStrategy.OnPush,
499
+ template: '<ng-content></ng-content>',
500
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
501
+ inputs: ['disabled', 'dismissible', 'emphasis', 'icon', 'label', 'size', 'variant'],
502
+ outputs: ['bhDismiss'],
503
+ })
504
+ export class BhBadge {
505
+ protected el: HTMLBhBadgeElement;
506
+ @Output() bhDismiss = new EventEmitter<CustomEvent<void>>();
507
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
508
+ c.detach();
509
+ this.el = r.nativeElement;
510
+ }
511
+ }
512
+
513
+
514
+ export declare interface BhBadge extends Components.BhBadge {
515
+ /**
516
+ * Emitted when the dismiss button is clicked
517
+ */
518
+ bhDismiss: EventEmitter<CustomEvent<void>>;
519
+ }
520
+
521
+
522
+ @ProxyCmp({
523
+ defineCustomElementFn: defineBhBadgeDot,
524
+ inputs: ['color', 'outline', 'size']
525
+ })
526
+ @Component({
527
+ selector: 'bh-badge-dot',
528
+ changeDetection: ChangeDetectionStrategy.OnPush,
529
+ template: '<ng-content></ng-content>',
530
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
531
+ inputs: ['color', 'outline', 'size'],
532
+ })
533
+ export class BhBadgeDot {
534
+ protected el: HTMLBhBadgeDotElement;
535
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
536
+ c.detach();
537
+ this.el = r.nativeElement;
538
+ }
539
+ }
540
+
541
+
542
+ export declare interface BhBadgeDot extends Components.BhBadgeDot {}
543
+
544
+
545
+ @ProxyCmp({
546
+ defineCustomElementFn: defineBhBarChart,
547
+ inputs: ['animated', 'data', 'maxHeight', 'maxWidth', 'orientation', 'type']
548
+ })
549
+ @Component({
550
+ selector: 'bh-bar-chart',
551
+ changeDetection: ChangeDetectionStrategy.OnPush,
552
+ template: '<ng-content></ng-content>',
553
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
554
+ inputs: ['animated', 'data', 'maxHeight', 'maxWidth', 'orientation', 'type'],
555
+ })
556
+ export class BhBarChart {
557
+ protected el: HTMLBhBarChartElement;
558
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
559
+ c.detach();
560
+ this.el = r.nativeElement;
561
+ }
562
+ }
563
+
564
+
565
+ export declare interface BhBarChart extends Components.BhBarChart {}
566
+
567
+
568
+ @ProxyCmp({
569
+ defineCustomElementFn: defineBhBreadcrumbs,
570
+ inputs: ['items', 'maxVisibleItems', 'separator', 'showHome']
571
+ })
572
+ @Component({
573
+ selector: 'bh-breadcrumbs',
574
+ changeDetection: ChangeDetectionStrategy.OnPush,
575
+ template: '<ng-content></ng-content>',
576
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
577
+ inputs: ['items', 'maxVisibleItems', 'separator', 'showHome'],
578
+ outputs: ['bhItemClick', 'bhNavigate'],
579
+ })
580
+ export class BhBreadcrumbs {
581
+ protected el: HTMLBhBreadcrumbsElement;
582
+ @Output() bhItemClick = new EventEmitter<CustomEvent<IBhBreadcrumbsBreadcrumbItem>>();
583
+ @Output() bhNavigate = new EventEmitter<CustomEvent<string>>();
584
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
585
+ c.detach();
586
+ this.el = r.nativeElement;
587
+ }
588
+ }
589
+
590
+
591
+ import type { BreadcrumbItem as IBhBreadcrumbsBreadcrumbItem } from '@actabldesign/bellhop-core/components';
592
+
593
+ export declare interface BhBreadcrumbs extends Components.BhBreadcrumbs {
594
+ /**
595
+ * Event emitted when a breadcrumb item is clicked
596
+ */
597
+ bhItemClick: EventEmitter<CustomEvent<IBhBreadcrumbsBreadcrumbItem>>;
598
+ /**
599
+ * Event emitted when navigating to a path
600
+ */
601
+ bhNavigate: EventEmitter<CustomEvent<string>>;
602
+ }
603
+
604
+
605
+ @ProxyCmp({
606
+ defineCustomElementFn: defineBhButton,
607
+ inputs: ['disabled', 'hierarchy', 'icon', 'iconName', 'kind', 'label', 'loading', 'size', 'type']
608
+ })
609
+ @Component({
610
+ selector: 'bh-button',
611
+ changeDetection: ChangeDetectionStrategy.OnPush,
612
+ template: '<ng-content></ng-content>',
613
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
614
+ inputs: ['disabled', 'hierarchy', 'icon', 'iconName', 'kind', 'label', 'loading', 'size', 'type'],
615
+ outputs: ['bhClick'],
616
+ })
617
+ export class BhButton {
618
+ protected el: HTMLBhButtonElement;
619
+ @Output() bhClick = new EventEmitter<CustomEvent<MouseEvent>>();
620
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
621
+ c.detach();
622
+ this.el = r.nativeElement;
623
+ }
624
+ }
625
+
626
+
627
+ export declare interface BhButton extends Components.BhButton {
628
+ /**
629
+ * Emitted when the button is clicked
630
+ */
631
+ bhClick: EventEmitter<CustomEvent<MouseEvent>>;
632
+ }
633
+
634
+
635
+ @ProxyCmp({
636
+ defineCustomElementFn: defineBhButtonIcon,
637
+ inputs: ['ariaLabel', 'disabled', 'hierarchy', 'iconName', 'loading', 'size', 'type']
638
+ })
639
+ @Component({
640
+ selector: 'bh-button-icon',
641
+ changeDetection: ChangeDetectionStrategy.OnPush,
642
+ template: '<ng-content></ng-content>',
643
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
644
+ inputs: ['ariaLabel', 'disabled', 'hierarchy', 'iconName', 'loading', 'size', 'type'],
645
+ outputs: ['bhClick'],
646
+ })
647
+ export class BhButtonIcon {
648
+ protected el: HTMLBhButtonIconElement;
649
+ @Output() bhClick = new EventEmitter<CustomEvent<MouseEvent>>();
650
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
651
+ c.detach();
652
+ this.el = r.nativeElement;
653
+ }
654
+ }
655
+
656
+
657
+ export declare interface BhButtonIcon extends Components.BhButtonIcon {
658
+ /**
659
+ * Emitted when the button is clicked
660
+ */
661
+ bhClick: EventEmitter<CustomEvent<MouseEvent>>;
662
+ }
663
+
664
+
665
+ @ProxyCmp({
666
+ defineCustomElementFn: defineBhCard,
667
+ inputs: ['contentMinHeight', 'placeholderText', 'showFooter', 'showHeader']
668
+ })
669
+ @Component({
670
+ selector: 'bh-card',
671
+ changeDetection: ChangeDetectionStrategy.OnPush,
672
+ template: '<ng-content></ng-content>',
673
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
674
+ inputs: ['contentMinHeight', 'placeholderText', 'showFooter', 'showHeader'],
675
+ })
676
+ export class BhCard {
677
+ protected el: HTMLBhCardElement;
678
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
679
+ c.detach();
680
+ this.el = r.nativeElement;
681
+ }
682
+ }
683
+
684
+
685
+ export declare interface BhCard extends Components.BhCard {}
686
+
687
+
688
+ @ProxyCmp({
689
+ defineCustomElementFn: defineBhCardFooter,
690
+ inputs: ['alignment', 'showDivider']
691
+ })
692
+ @Component({
693
+ selector: 'bh-card-footer',
694
+ changeDetection: ChangeDetectionStrategy.OnPush,
695
+ template: '<ng-content></ng-content>',
696
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
697
+ inputs: ['alignment', 'showDivider'],
698
+ })
699
+ export class BhCardFooter {
700
+ protected el: HTMLBhCardFooterElement;
701
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
702
+ c.detach();
703
+ this.el = r.nativeElement;
704
+ }
705
+ }
706
+
707
+
708
+ export declare interface BhCardFooter extends Components.BhCardFooter {}
709
+
710
+
711
+ @ProxyCmp({
712
+ defineCustomElementFn: defineBhCardHeader,
713
+ inputs: ['badgeText', 'featuredIcon', 'featuredIconColor', 'featuredIconStyle', 'headerTitle', 'showBadge', 'showDivider', 'showDropdown', 'showFeaturedIcon', 'showSupportingText', 'showTitle', 'supportingText']
714
+ })
715
+ @Component({
716
+ selector: 'bh-card-header',
717
+ changeDetection: ChangeDetectionStrategy.OnPush,
718
+ template: '<ng-content></ng-content>',
719
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
720
+ inputs: ['badgeText', 'featuredIcon', 'featuredIconColor', 'featuredIconStyle', 'headerTitle', 'showBadge', 'showDivider', 'showDropdown', 'showFeaturedIcon', 'showSupportingText', 'showTitle', 'supportingText'],
721
+ outputs: ['bhDropdownClick'],
722
+ })
723
+ export class BhCardHeader {
724
+ protected el: HTMLBhCardHeaderElement;
725
+ @Output() bhDropdownClick = new EventEmitter<CustomEvent<void>>();
726
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
727
+ c.detach();
728
+ this.el = r.nativeElement;
729
+ }
730
+ }
731
+
732
+
733
+ export declare interface BhCardHeader extends Components.BhCardHeader {
734
+ /**
735
+ * Emitted when the dropdown button is clicked
736
+ */
737
+ bhDropdownClick: EventEmitter<CustomEvent<void>>;
738
+ }
739
+
740
+
741
+ @ProxyCmp({
742
+ defineCustomElementFn: defineBhChartTooltip,
743
+ inputs: ['header', 'items', 'showTotal', 'storybookMode', 'total', 'visible', 'x', 'y']
744
+ })
745
+ @Component({
746
+ selector: 'bh-chart-tooltip',
747
+ changeDetection: ChangeDetectionStrategy.OnPush,
748
+ template: '<ng-content></ng-content>',
749
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
750
+ inputs: ['header', 'items', 'showTotal', 'storybookMode', 'total', 'visible', 'x', 'y'],
751
+ })
752
+ export class BhChartTooltip {
753
+ protected el: HTMLBhChartTooltipElement;
754
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
755
+ c.detach();
756
+ this.el = r.nativeElement;
757
+ }
758
+ }
759
+
760
+
761
+ export declare interface BhChartTooltip extends Components.BhChartTooltip {}
762
+
763
+
764
+ @ProxyCmp({
765
+ defineCustomElementFn: defineBhCheckbox,
766
+ inputs: ['checked', 'defaultChecked', 'disabled', 'indeterminate', 'label', 'name', 'required', 'size', 'supportingText', 'value']
767
+ })
768
+ @Component({
769
+ selector: 'bh-checkbox',
770
+ changeDetection: ChangeDetectionStrategy.OnPush,
771
+ template: '<ng-content></ng-content>',
772
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
773
+ inputs: ['checked', 'defaultChecked', 'disabled', 'indeterminate', 'label', 'name', 'required', 'size', 'supportingText', 'value'],
774
+ outputs: ['bhChange'],
775
+ })
776
+ export class BhCheckbox {
777
+ protected el: HTMLBhCheckboxElement;
778
+ @Output() bhChange = new EventEmitter<CustomEvent<boolean>>();
779
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
780
+ c.detach();
781
+ this.el = r.nativeElement;
782
+ }
783
+ }
784
+
785
+
786
+ export declare interface BhCheckbox extends Components.BhCheckbox {
787
+ /**
788
+ * Emitted when checkbox state changes via user interaction
789
+ */
790
+ bhChange: EventEmitter<CustomEvent<boolean>>;
791
+ }
792
+
793
+
794
+ @ProxyCmp({
795
+ defineCustomElementFn: defineBhCheckboxGroup,
796
+ inputs: ['disabled', 'name', 'type', 'value']
797
+ })
798
+ @Component({
799
+ selector: 'bh-checkbox-group',
800
+ changeDetection: ChangeDetectionStrategy.OnPush,
801
+ template: '<ng-content></ng-content>',
802
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
803
+ inputs: ['disabled', 'name', 'type', 'value'],
804
+ outputs: ['bhChange'],
805
+ })
806
+ export class BhCheckboxGroup {
807
+ protected el: HTMLBhCheckboxGroupElement;
808
+ @Output() bhChange = new EventEmitter<CustomEvent<string | string[]>>();
809
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
810
+ c.detach();
811
+ this.el = r.nativeElement;
812
+ }
813
+ }
814
+
815
+
816
+ export declare interface BhCheckboxGroup extends Components.BhCheckboxGroup {
817
+ /**
818
+ * Emitted when selection changes
819
+ */
820
+ bhChange: EventEmitter<CustomEvent<string | string[]>>;
821
+ }
822
+
823
+
824
+ @ProxyCmp({
825
+ defineCustomElementFn: defineBhCheckboxGroupItem,
826
+ inputs: ['checked', 'description', 'disabled', 'icon', 'itemTitle', 'name', 'selected', 'size', 'subtitle', 'type', 'value']
827
+ })
828
+ @Component({
829
+ selector: 'bh-checkbox-group-item',
830
+ changeDetection: ChangeDetectionStrategy.OnPush,
831
+ template: '<ng-content></ng-content>',
832
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
833
+ inputs: ['checked', 'description', 'disabled', 'icon', 'itemTitle', 'name', 'selected', 'size', 'subtitle', 'type', 'value'],
834
+ outputs: ['bhItemChange'],
835
+ })
836
+ export class BhCheckboxGroupItem {
837
+ protected el: HTMLBhCheckboxGroupItemElement;
838
+ @Output() bhItemChange = new EventEmitter<CustomEvent<{ value: string; checked: boolean }>>();
839
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
840
+ c.detach();
841
+ this.el = r.nativeElement;
842
+ }
843
+ }
844
+
845
+
846
+ export declare interface BhCheckboxGroupItem extends Components.BhCheckboxGroupItem {
847
+ /**
848
+ * Emitted when the item state changes
849
+ */
850
+ bhItemChange: EventEmitter<CustomEvent<{ value: string; checked: boolean }>>;
851
+ }
852
+
853
+
854
+ @ProxyCmp({
855
+ defineCustomElementFn: defineBhDataGrid,
856
+ inputs: ['bordered', 'caption', 'captionPosition', 'columns', 'data', 'editMode', 'emptyDescription', 'emptyTitle', 'enableEditing', 'enableExpansion', 'enableFiltering', 'enableGlobalFilter', 'enableGrouping', 'enableMultiSort', 'enablePagination', 'enableSorting', 'expandedRowIds', 'filterState', 'getRowId', 'getSubRows', 'globalFilter', 'globalFilterPlaceholder', 'groupBy', 'loading', 'loadingType', 'maxHeight', 'page', 'pageSize', 'pageSizeOptions', 'selectedRowIds', 'selectionMode', 'showEditActions', 'showFilterRow', 'size', 'skeletonRowCount', 'sortState', 'stickyHeader', 'striped']
857
+ })
858
+ @Component({
859
+ selector: 'bh-data-grid',
860
+ changeDetection: ChangeDetectionStrategy.OnPush,
861
+ template: '<ng-content></ng-content>',
862
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
863
+ inputs: ['bordered', 'caption', 'captionPosition', 'columns', 'data', 'editMode', 'emptyDescription', 'emptyTitle', 'enableEditing', 'enableExpansion', 'enableFiltering', 'enableGlobalFilter', 'enableGrouping', 'enableMultiSort', 'enablePagination', 'enableSorting', 'expandedRowIds', 'filterState', 'getRowId', 'getSubRows', 'globalFilter', 'globalFilterPlaceholder', 'groupBy', 'loading', 'loadingType', 'maxHeight', 'page', 'pageSize', 'pageSizeOptions', 'selectedRowIds', 'selectionMode', 'showEditActions', 'showFilterRow', 'size', 'skeletonRowCount', 'sortState', 'stickyHeader', 'striped'],
864
+ outputs: ['bhSortChange', 'bhFilterChange', 'bhSelectionChange', 'bhPageChange', 'bhRowClick', 'bhCellClick', 'bhExpandChange', 'bhGroupToggle', 'bhEditStart', 'bhEditCancel', 'bhEditSave', 'bhCellChange', 'bhValidationError'],
865
+ })
866
+ export class BhDataGrid {
867
+ protected el: HTMLBhDataGridElement;
868
+ @Output() bhSortChange = new EventEmitter<CustomEvent<IBhDataGridDataGridSortChangeEvent>>();
869
+ @Output() bhFilterChange = new EventEmitter<CustomEvent<IBhDataGridDataGridFilterChangeEvent>>();
870
+ @Output() bhSelectionChange = new EventEmitter<CustomEvent<IBhDataGridDataGridSelectionChangeEvent>>();
871
+ @Output() bhPageChange = new EventEmitter<CustomEvent<IBhDataGridDataGridPageChangeEvent>>();
872
+ @Output() bhRowClick = new EventEmitter<CustomEvent<IBhDataGridDataGridRowClickEvent>>();
873
+ @Output() bhCellClick = new EventEmitter<CustomEvent<IBhDataGridDataGridCellClickEvent>>();
874
+ @Output() bhExpandChange = new EventEmitter<CustomEvent<IBhDataGridDataGridExpandChangeEvent>>();
875
+ @Output() bhGroupToggle = new EventEmitter<CustomEvent<IBhDataGridDataGridGroupToggleEvent>>();
876
+ @Output() bhEditStart = new EventEmitter<CustomEvent<IBhDataGridDataGridEditStartEvent>>();
877
+ @Output() bhEditCancel = new EventEmitter<CustomEvent<IBhDataGridDataGridEditCancelEvent>>();
878
+ @Output() bhEditSave = new EventEmitter<CustomEvent<IBhDataGridDataGridEditSaveEvent>>();
879
+ @Output() bhCellChange = new EventEmitter<CustomEvent<IBhDataGridDataGridCellChangeEvent>>();
880
+ @Output() bhValidationError = new EventEmitter<CustomEvent<IBhDataGridDataGridValidationErrorEvent>>();
881
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
882
+ c.detach();
883
+ this.el = r.nativeElement;
884
+ }
885
+ }
886
+
887
+
888
+ import type { DataGridSortChangeEvent as IBhDataGridDataGridSortChangeEvent } from '@actabldesign/bellhop-core/components';
889
+ import type { DataGridFilterChangeEvent as IBhDataGridDataGridFilterChangeEvent } from '@actabldesign/bellhop-core/components';
890
+ import type { DataGridSelectionChangeEvent as IBhDataGridDataGridSelectionChangeEvent } from '@actabldesign/bellhop-core/components';
891
+ import type { DataGridPageChangeEvent as IBhDataGridDataGridPageChangeEvent } from '@actabldesign/bellhop-core/components';
892
+ import type { DataGridRowClickEvent as IBhDataGridDataGridRowClickEvent } from '@actabldesign/bellhop-core/components';
893
+ import type { DataGridCellClickEvent as IBhDataGridDataGridCellClickEvent } from '@actabldesign/bellhop-core/components';
894
+ import type { DataGridExpandChangeEvent as IBhDataGridDataGridExpandChangeEvent } from '@actabldesign/bellhop-core/components';
895
+ import type { DataGridGroupToggleEvent as IBhDataGridDataGridGroupToggleEvent } from '@actabldesign/bellhop-core/components';
896
+ import type { DataGridEditStartEvent as IBhDataGridDataGridEditStartEvent } from '@actabldesign/bellhop-core/components';
897
+ import type { DataGridEditCancelEvent as IBhDataGridDataGridEditCancelEvent } from '@actabldesign/bellhop-core/components';
898
+ import type { DataGridEditSaveEvent as IBhDataGridDataGridEditSaveEvent } from '@actabldesign/bellhop-core/components';
899
+ import type { DataGridCellChangeEvent as IBhDataGridDataGridCellChangeEvent } from '@actabldesign/bellhop-core/components';
900
+ import type { DataGridValidationErrorEvent as IBhDataGridDataGridValidationErrorEvent } from '@actabldesign/bellhop-core/components';
901
+
902
+ export declare interface BhDataGrid extends Components.BhDataGrid {
903
+
904
+ bhSortChange: EventEmitter<CustomEvent<IBhDataGridDataGridSortChangeEvent>>;
905
+
906
+ bhFilterChange: EventEmitter<CustomEvent<IBhDataGridDataGridFilterChangeEvent>>;
907
+
908
+ bhSelectionChange: EventEmitter<CustomEvent<IBhDataGridDataGridSelectionChangeEvent>>;
909
+
910
+ bhPageChange: EventEmitter<CustomEvent<IBhDataGridDataGridPageChangeEvent>>;
911
+
912
+ bhRowClick: EventEmitter<CustomEvent<IBhDataGridDataGridRowClickEvent>>;
913
+
914
+ bhCellClick: EventEmitter<CustomEvent<IBhDataGridDataGridCellClickEvent>>;
915
+
916
+ bhExpandChange: EventEmitter<CustomEvent<IBhDataGridDataGridExpandChangeEvent>>;
917
+
918
+ bhGroupToggle: EventEmitter<CustomEvent<IBhDataGridDataGridGroupToggleEvent>>;
919
+
920
+ bhEditStart: EventEmitter<CustomEvent<IBhDataGridDataGridEditStartEvent>>;
921
+
922
+ bhEditCancel: EventEmitter<CustomEvent<IBhDataGridDataGridEditCancelEvent>>;
923
+
924
+ bhEditSave: EventEmitter<CustomEvent<IBhDataGridDataGridEditSaveEvent>>;
925
+
926
+ bhCellChange: EventEmitter<CustomEvent<IBhDataGridDataGridCellChangeEvent>>;
927
+
928
+ bhValidationError: EventEmitter<CustomEvent<IBhDataGridDataGridValidationErrorEvent>>;
929
+ }
930
+
931
+
932
+ @ProxyCmp({
933
+ defineCustomElementFn: defineBhDatePicker,
934
+ inputs: ['disabled', 'disabledDates', 'inputWidth', 'label', 'maxYear', 'minYear', 'placeholder', 'showFooter', 'showLabel', 'showOtherMonthDays', 'value', 'variant']
935
+ })
936
+ @Component({
937
+ selector: 'bh-date-picker',
938
+ changeDetection: ChangeDetectionStrategy.OnPush,
939
+ template: '<ng-content></ng-content>',
940
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
941
+ inputs: ['disabled', 'disabledDates', 'inputWidth', 'label', 'maxYear', 'minYear', 'placeholder', 'showFooter', 'showLabel', 'showOtherMonthDays', 'value', 'variant'],
942
+ outputs: ['bhChange', 'bhDateSelect'],
943
+ })
944
+ export class BhDatePicker {
945
+ protected el: HTMLBhDatePickerElement;
946
+ @Output() bhChange = new EventEmitter<CustomEvent<IBhDatePickerSelectedDate | null>>();
947
+ @Output() bhDateSelect = new EventEmitter<CustomEvent<IBhDatePickerSelectedDate | null>>();
948
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
949
+ c.detach();
950
+ this.el = r.nativeElement;
951
+ }
952
+ }
953
+
954
+
955
+ import type { SelectedDate as IBhDatePickerSelectedDate } from '@actabldesign/bellhop-core/components';
956
+
957
+ export declare interface BhDatePicker extends Components.BhDatePicker {
958
+ /**
959
+ * Event emitted when value changes
960
+ */
961
+ bhChange: EventEmitter<CustomEvent<IBhDatePickerSelectedDate | null>>;
962
+ /**
963
+ * Event emitted when a date is selected
964
+ */
965
+ bhDateSelect: EventEmitter<CustomEvent<IBhDatePickerSelectedDate | null>>;
966
+ }
967
+
968
+
969
+ @ProxyCmp({
970
+ defineCustomElementFn: defineBhDatePickerContent,
971
+ inputs: ['disabled', 'disabledDates', 'displayMonth', 'displayYear', 'initialMonth', 'initialYear', 'maxYear', 'minYear', 'rangeEnd', 'rangeStart', 'showOtherMonthDays', 'value']
972
+ })
973
+ @Component({
974
+ selector: 'bh-date-picker-content',
975
+ changeDetection: ChangeDetectionStrategy.OnPush,
976
+ template: '<ng-content></ng-content>',
977
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
978
+ inputs: ['disabled', 'disabledDates', 'displayMonth', 'displayYear', 'initialMonth', 'initialYear', 'maxYear', 'minYear', 'rangeEnd', 'rangeStart', 'showOtherMonthDays', 'value'],
979
+ outputs: ['bhChange', 'bhDateSelect', 'bhMonthChange', 'bhMonthYearChange'],
980
+ })
981
+ export class BhDatePickerContent {
982
+ protected el: HTMLBhDatePickerContentElement;
983
+ @Output() bhChange = new EventEmitter<CustomEvent<IBhDatePickerContentSelectedDate | null>>();
984
+ @Output() bhDateSelect = new EventEmitter<CustomEvent<IBhDatePickerContentSelectedDate | null>>();
985
+ @Output() bhMonthChange = new EventEmitter<CustomEvent<{ month: number; year: number }>>();
986
+ @Output() bhMonthYearChange = new EventEmitter<CustomEvent<{ month: number; year: number }>>();
987
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
988
+ c.detach();
989
+ this.el = r.nativeElement;
990
+ }
991
+ }
992
+
993
+
994
+ import type { SelectedDate as IBhDatePickerContentSelectedDate } from '@actabldesign/bellhop-core/components';
995
+
996
+ export declare interface BhDatePickerContent extends Components.BhDatePickerContent {
997
+ /**
998
+ * Event emitted when value changes
999
+ */
1000
+ bhChange: EventEmitter<CustomEvent<IBhDatePickerContentSelectedDate | null>>;
1001
+ /**
1002
+ * Event emitted when a date is selected
1003
+ */
1004
+ bhDateSelect: EventEmitter<CustomEvent<IBhDatePickerContentSelectedDate | null>>;
1005
+ /**
1006
+ * Event emitted when month changes
1007
+ */
1008
+ bhMonthChange: EventEmitter<CustomEvent<{ month: number; year: number }>>;
1009
+ /**
1010
+ * Event emitted when month/year changes
1011
+ */
1012
+ bhMonthYearChange: EventEmitter<CustomEvent<{ month: number; year: number }>>;
1013
+ }
1014
+
1015
+
1016
+ @ProxyCmp({
1017
+ defineCustomElementFn: defineBhDateRangePicker,
1018
+ inputs: ['disabled', 'disabledDates', 'endLabel', 'endPlaceholder', 'inputWidth', 'maxYear', 'minYear', 'showFooter', 'showLabel', 'showOtherMonthDays', 'startLabel', 'startPlaceholder', 'value', 'variant']
1019
+ })
1020
+ @Component({
1021
+ selector: 'bh-date-range-picker',
1022
+ changeDetection: ChangeDetectionStrategy.OnPush,
1023
+ template: '<ng-content></ng-content>',
1024
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
1025
+ inputs: ['disabled', 'disabledDates', 'endLabel', 'endPlaceholder', 'inputWidth', 'maxYear', 'minYear', 'showFooter', 'showLabel', 'showOtherMonthDays', 'startLabel', 'startPlaceholder', 'value', 'variant'],
1026
+ outputs: ['bhChange', 'bhDateRangeSelect'],
1027
+ })
1028
+ export class BhDateRangePicker {
1029
+ protected el: HTMLBhDateRangePickerElement;
1030
+ @Output() bhChange = new EventEmitter<CustomEvent<IBhDateRangePickerSelectedDateRange | null>>();
1031
+ @Output() bhDateRangeSelect = new EventEmitter<CustomEvent<IBhDateRangePickerSelectedDateRange | null>>();
1032
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
1033
+ c.detach();
1034
+ this.el = r.nativeElement;
1035
+ }
1036
+ }
1037
+
1038
+
1039
+ import type { SelectedDateRange as IBhDateRangePickerSelectedDateRange } from '@actabldesign/bellhop-core/components';
1040
+
1041
+ export declare interface BhDateRangePicker extends Components.BhDateRangePicker {
1042
+ /**
1043
+ * Event emitted when value changes
1044
+ */
1045
+ bhChange: EventEmitter<CustomEvent<IBhDateRangePickerSelectedDateRange | null>>;
1046
+ /**
1047
+ * Event emitted when a date range is selected
1048
+ */
1049
+ bhDateRangeSelect: EventEmitter<CustomEvent<IBhDateRangePickerSelectedDateRange | null>>;
1050
+ }
1051
+
1052
+
1053
+ @ProxyCmp({
1054
+ defineCustomElementFn: defineBhDateRangePickerContent,
1055
+ inputs: ['disabled', 'disabledDates', 'maxYear', 'minYear', 'showOtherMonthDays', 'value']
1056
+ })
1057
+ @Component({
1058
+ selector: 'bh-date-range-picker-content',
1059
+ changeDetection: ChangeDetectionStrategy.OnPush,
1060
+ template: '<ng-content></ng-content>',
1061
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
1062
+ inputs: ['disabled', 'disabledDates', 'maxYear', 'minYear', 'showOtherMonthDays', 'value'],
1063
+ outputs: ['bhChange', 'bhDateRangeSelect'],
1064
+ })
1065
+ export class BhDateRangePickerContent {
1066
+ protected el: HTMLBhDateRangePickerContentElement;
1067
+ @Output() bhChange = new EventEmitter<CustomEvent<IBhDateRangePickerContentSelectedDateRange | null>>();
1068
+ @Output() bhDateRangeSelect = new EventEmitter<CustomEvent<IBhDateRangePickerContentSelectedDateRange | null>>();
1069
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
1070
+ c.detach();
1071
+ this.el = r.nativeElement;
1072
+ }
1073
+ }
1074
+
1075
+
1076
+ import type { SelectedDateRange as IBhDateRangePickerContentSelectedDateRange } from '@actabldesign/bellhop-core/components';
1077
+
1078
+ export declare interface BhDateRangePickerContent extends Components.BhDateRangePickerContent {
1079
+ /**
1080
+ * Event emitted when value changes
1081
+ */
1082
+ bhChange: EventEmitter<CustomEvent<IBhDateRangePickerContentSelectedDateRange | null>>;
1083
+ /**
1084
+ * Event emitted when a date range is selected
1085
+ */
1086
+ bhDateRangeSelect: EventEmitter<CustomEvent<IBhDateRangePickerContentSelectedDateRange | null>>;
1087
+ }
1088
+
1089
+
1090
+ @ProxyCmp({
1091
+ defineCustomElementFn: defineBhDropdown,
1092
+ inputs: ['avatarAlt', 'avatarEmail', 'avatarName', 'avatarSize', 'avatarSrc', 'disabled', 'header', 'iconName', 'label', 'menuItems', 'showIcons', 'size', 'state', 'variant']
1093
+ })
1094
+ @Component({
1095
+ selector: 'bh-dropdown',
1096
+ changeDetection: ChangeDetectionStrategy.OnPush,
1097
+ template: '<ng-content></ng-content>',
1098
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
1099
+ inputs: ['avatarAlt', 'avatarEmail', 'avatarName', 'avatarSize', 'avatarSrc', 'disabled', 'header', 'iconName', 'label', 'menuItems', 'showIcons', 'size', 'state', 'variant'],
1100
+ outputs: ['bhItemClick'],
1101
+ })
1102
+ export class BhDropdown {
1103
+ protected el: HTMLBhDropdownElement;
1104
+ @Output() bhItemClick = new EventEmitter<CustomEvent<IBhDropdownDropdownMenuItem>>();
1105
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
1106
+ c.detach();
1107
+ this.el = r.nativeElement;
1108
+ }
1109
+ }
1110
+
1111
+
1112
+ import type { DropdownMenuItem as IBhDropdownDropdownMenuItem } from '@actabldesign/bellhop-core/components';
1113
+
1114
+ export declare interface BhDropdown extends Components.BhDropdown {
1115
+ /**
1116
+ * Event emitted when a menu item is clicked
1117
+ */
1118
+ bhItemClick: EventEmitter<CustomEvent<IBhDropdownDropdownMenuItem>>;
1119
+ }
1120
+
1121
+
1122
+ @ProxyCmp({
1123
+ defineCustomElementFn: defineBhDropdownMenu,
1124
+ inputs: ['header', 'menuItems', 'scrollable', 'showIcons', 'visible']
1125
+ })
1126
+ @Component({
1127
+ selector: 'bh-dropdown-menu',
1128
+ changeDetection: ChangeDetectionStrategy.OnPush,
1129
+ template: '<ng-content></ng-content>',
1130
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
1131
+ inputs: ['header', 'menuItems', 'scrollable', 'showIcons', 'visible'],
1132
+ outputs: ['bhItemClick'],
1133
+ })
1134
+ export class BhDropdownMenu {
1135
+ protected el: HTMLBhDropdownMenuElement;
1136
+ @Output() bhItemClick = new EventEmitter<CustomEvent<IBhDropdownMenuDropdownMenuItem>>();
1137
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
1138
+ c.detach();
1139
+ this.el = r.nativeElement;
1140
+ }
1141
+ }
1142
+
1143
+
1144
+ import type { DropdownMenuItem as IBhDropdownMenuDropdownMenuItem } from '@actabldesign/bellhop-core/components';
1145
+
1146
+ export declare interface BhDropdownMenu extends Components.BhDropdownMenu {
1147
+ /**
1148
+ * Event emitted when a menu item is clicked
1149
+ */
1150
+ bhItemClick: EventEmitter<CustomEvent<IBhDropdownMenuDropdownMenuItem>>;
1151
+ }
1152
+
1153
+
1154
+ @ProxyCmp({
1155
+ defineCustomElementFn: defineBhEmptyState,
1156
+ inputs: ['description', 'emptyTitle', 'illustrationPath', 'illustrationSize', 'maxWidth', 'primaryActionIcon', 'primaryActionText', 'secondaryActionIcon', 'secondaryActionText']
1157
+ })
1158
+ @Component({
1159
+ selector: 'bh-empty-state',
1160
+ changeDetection: ChangeDetectionStrategy.OnPush,
1161
+ template: '<ng-content></ng-content>',
1162
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
1163
+ inputs: ['description', 'emptyTitle', 'illustrationPath', 'illustrationSize', 'maxWidth', 'primaryActionIcon', 'primaryActionText', 'secondaryActionIcon', 'secondaryActionText'],
1164
+ outputs: ['bhPrimaryAction', 'bhSecondaryAction'],
1165
+ })
1166
+ export class BhEmptyState {
1167
+ protected el: HTMLBhEmptyStateElement;
1168
+ @Output() bhPrimaryAction = new EventEmitter<CustomEvent<void>>();
1169
+ @Output() bhSecondaryAction = new EventEmitter<CustomEvent<void>>();
1170
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
1171
+ c.detach();
1172
+ this.el = r.nativeElement;
1173
+ }
1174
+ }
1175
+
1176
+
1177
+ export declare interface BhEmptyState extends Components.BhEmptyState {
1178
+ /**
1179
+ * Emitted when primary action is clicked
1180
+ */
1181
+ bhPrimaryAction: EventEmitter<CustomEvent<void>>;
1182
+ /**
1183
+ * Emitted when secondary action is clicked
1184
+ */
1185
+ bhSecondaryAction: EventEmitter<CustomEvent<void>>;
1186
+ }
1187
+
1188
+
1189
+ @ProxyCmp({
1190
+ defineCustomElementFn: defineBhFeaturedIcon,
1191
+ inputs: ['color', 'icon', 'iconStyle', 'size']
1192
+ })
1193
+ @Component({
1194
+ selector: 'bh-featured-icon',
1195
+ changeDetection: ChangeDetectionStrategy.OnPush,
1196
+ template: '<ng-content></ng-content>',
1197
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
1198
+ inputs: ['color', 'icon', 'iconStyle', 'size'],
1199
+ })
1200
+ export class BhFeaturedIcon {
1201
+ protected el: HTMLBhFeaturedIconElement;
1202
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
1203
+ c.detach();
1204
+ this.el = r.nativeElement;
1205
+ }
1206
+ }
1207
+
1208
+
1209
+ export declare interface BhFeaturedIcon extends Components.BhFeaturedIcon {}
1210
+
1211
+
1212
+ @ProxyCmp({
1213
+ defineCustomElementFn: defineBhIllustrations,
1214
+ inputs: ['alt', 'description', 'illustrationTitle', 'size', 'svgPath']
1215
+ })
1216
+ @Component({
1217
+ selector: 'bh-illustrations',
1218
+ changeDetection: ChangeDetectionStrategy.OnPush,
1219
+ template: '<ng-content></ng-content>',
1220
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
1221
+ inputs: ['alt', 'description', 'illustrationTitle', 'size', 'svgPath'],
1222
+ })
1223
+ export class BhIllustrations {
1224
+ protected el: HTMLBhIllustrationsElement;
1225
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
1226
+ c.detach();
1227
+ this.el = r.nativeElement;
1228
+ }
1229
+ }
1230
+
1231
+
1232
+ export declare interface BhIllustrations extends Components.BhIllustrations {}
1233
+
1234
+
1235
+ @ProxyCmp({
1236
+ defineCustomElementFn: defineBhInputAutocomplete,
1237
+ inputs: ['disabled', 'error', 'helpIconTooltip', 'hintText', 'label', 'leadingIcon', 'maxOptions', 'minSearchLength', 'multiSelect', 'options', 'placeholder', 'required', 'selectedItems', 'showHelpIcon', 'showHintText', 'showLabel', 'showLeadingIcon', 'state', 'value', 'width']
1238
+ })
1239
+ @Component({
1240
+ selector: 'bh-input-autocomplete',
1241
+ changeDetection: ChangeDetectionStrategy.OnPush,
1242
+ template: '<ng-content></ng-content>',
1243
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
1244
+ inputs: ['disabled', 'error', 'helpIconTooltip', 'hintText', 'label', 'leadingIcon', 'maxOptions', 'minSearchLength', 'multiSelect', 'options', 'placeholder', 'required', 'selectedItems', 'showHelpIcon', 'showHintText', 'showLabel', 'showLeadingIcon', 'state', 'value', 'width'],
1245
+ outputs: ['bhChange', 'bhSelectedItemsChange', 'bhFocus', 'bhBlur', 'bhHelpClick', 'bhOptionSelect'],
1246
+ })
1247
+ export class BhInputAutocomplete {
1248
+ protected el: HTMLBhInputAutocompleteElement;
1249
+ @Output() bhChange = new EventEmitter<CustomEvent<string>>();
1250
+ @Output() bhSelectedItemsChange = new EventEmitter<CustomEvent<IBhInputAutocompleteAutocompleteMenuItem[]>>();
1251
+ @Output() bhFocus = new EventEmitter<CustomEvent<void>>();
1252
+ @Output() bhBlur = new EventEmitter<CustomEvent<void>>();
1253
+ @Output() bhHelpClick = new EventEmitter<CustomEvent<void>>();
1254
+ @Output() bhOptionSelect = new EventEmitter<CustomEvent<IBhInputAutocompleteAutocompleteMenuItem>>();
1255
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
1256
+ c.detach();
1257
+ this.el = r.nativeElement;
1258
+ }
1259
+ }
1260
+
1261
+
1262
+ import type { AutocompleteMenuItem as IBhInputAutocompleteAutocompleteMenuItem } from '@actabldesign/bellhop-core/components';
1263
+
1264
+ export declare interface BhInputAutocomplete extends Components.BhInputAutocomplete {
1265
+ /**
1266
+ * Event emitted when value changes
1267
+ */
1268
+ bhChange: EventEmitter<CustomEvent<string>>;
1269
+ /**
1270
+ * Event emitted when selected items change
1271
+ */
1272
+ bhSelectedItemsChange: EventEmitter<CustomEvent<IBhInputAutocompleteAutocompleteMenuItem[]>>;
1273
+ /**
1274
+ * Event emitted when input is focused
1275
+ */
1276
+ bhFocus: EventEmitter<CustomEvent<void>>;
1277
+ /**
1278
+ * Event emitted when input is blurred
1279
+ */
1280
+ bhBlur: EventEmitter<CustomEvent<void>>;
1281
+ /**
1282
+ * Event emitted when help icon is clicked
1283
+ */
1284
+ bhHelpClick: EventEmitter<CustomEvent<void>>;
1285
+ /**
1286
+ * Event emitted when an option is selected
1287
+ */
1288
+ bhOptionSelect: EventEmitter<CustomEvent<IBhInputAutocompleteAutocompleteMenuItem>>;
1289
+ }
1290
+
1291
+
1292
+ @ProxyCmp({
1293
+ defineCustomElementFn: defineBhInputNumber,
1294
+ inputs: ['defaultValue', 'disabled', 'error', 'helpIconTooltip', 'hintText', 'label', 'leadingIcon', 'max', 'min', 'name', 'placeholder', 'prefixText', 'required', 'showHelpIcon', 'showHintText', 'showLabel', 'showLeadingIcon', 'step', 'suffixText', 'validationMessage', 'value', 'width']
1295
+ })
1296
+ @Component({
1297
+ selector: 'bh-input-number',
1298
+ changeDetection: ChangeDetectionStrategy.OnPush,
1299
+ template: '<ng-content></ng-content>',
1300
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
1301
+ inputs: ['defaultValue', 'disabled', 'error', 'helpIconTooltip', 'hintText', 'label', 'leadingIcon', 'max', 'min', 'name', 'placeholder', 'prefixText', 'required', 'showHelpIcon', 'showHintText', 'showLabel', 'showLeadingIcon', 'step', 'suffixText', 'validationMessage', 'value', 'width'],
1302
+ outputs: ['bhChange', 'bhFocus', 'bhBlur', 'bhHelpClick'],
1303
+ })
1304
+ export class BhInputNumber {
1305
+ protected el: HTMLBhInputNumberElement;
1306
+ @Output() bhChange = new EventEmitter<CustomEvent<number | null>>();
1307
+ @Output() bhFocus = new EventEmitter<CustomEvent<void>>();
1308
+ @Output() bhBlur = new EventEmitter<CustomEvent<void>>();
1309
+ @Output() bhHelpClick = new EventEmitter<CustomEvent<void>>();
1310
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
1311
+ c.detach();
1312
+ this.el = r.nativeElement;
1313
+ }
1314
+ }
1315
+
1316
+
1317
+ export declare interface BhInputNumber extends Components.BhInputNumber {
1318
+ /**
1319
+ * Event emitted when the value changes
1320
+ */
1321
+ bhChange: EventEmitter<CustomEvent<number | null>>;
1322
+ /**
1323
+ * Event emitted when the input receives focus
1324
+ */
1325
+ bhFocus: EventEmitter<CustomEvent<void>>;
1326
+ /**
1327
+ * Event emitted when the input loses focus
1328
+ */
1329
+ bhBlur: EventEmitter<CustomEvent<void>>;
1330
+ /**
1331
+ * Event emitted when the help icon is clicked
1332
+ */
1333
+ bhHelpClick: EventEmitter<CustomEvent<void>>;
1334
+ }
1335
+
1336
+
1337
+ @ProxyCmp({
1338
+ defineCustomElementFn: defineBhInputPassword,
1339
+ inputs: ['defaultValue', 'disabled', 'error', 'helpIconTooltip', 'hintText', 'label', 'leadingIcon', 'name', 'placeholder', 'required', 'showHelpIcon', 'showHintText', 'showLabel', 'showLeadingIcon', 'validationMessage', 'value']
1340
+ })
1341
+ @Component({
1342
+ selector: 'bh-input-password',
1343
+ changeDetection: ChangeDetectionStrategy.OnPush,
1344
+ template: '<ng-content></ng-content>',
1345
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
1346
+ inputs: ['defaultValue', 'disabled', 'error', 'helpIconTooltip', 'hintText', 'label', 'leadingIcon', 'name', 'placeholder', 'required', 'showHelpIcon', 'showHintText', 'showLabel', 'showLeadingIcon', 'validationMessage', 'value'],
1347
+ outputs: ['bhInput', 'bhFocus', 'bhBlur', 'bhHelpClick', 'bhVisibilityToggle'],
1348
+ })
1349
+ export class BhInputPassword {
1350
+ protected el: HTMLBhInputPasswordElement;
1351
+ @Output() bhInput = new EventEmitter<CustomEvent<string>>();
1352
+ @Output() bhFocus = new EventEmitter<CustomEvent<void>>();
1353
+ @Output() bhBlur = new EventEmitter<CustomEvent<void>>();
1354
+ @Output() bhHelpClick = new EventEmitter<CustomEvent<void>>();
1355
+ @Output() bhVisibilityToggle = new EventEmitter<CustomEvent<boolean>>();
1356
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
1357
+ c.detach();
1358
+ this.el = r.nativeElement;
1359
+ }
1360
+ }
1361
+
1362
+
1363
+ export declare interface BhInputPassword extends Components.BhInputPassword {
1364
+ /**
1365
+ * Emitted when the value changes
1366
+ */
1367
+ bhInput: EventEmitter<CustomEvent<string>>;
1368
+ /**
1369
+ * Emitted when the input gains focus
1370
+ */
1371
+ bhFocus: EventEmitter<CustomEvent<void>>;
1372
+ /**
1373
+ * Emitted when the input loses focus
1374
+ */
1375
+ bhBlur: EventEmitter<CustomEvent<void>>;
1376
+ /**
1377
+ * Emitted when the help icon is clicked
1378
+ */
1379
+ bhHelpClick: EventEmitter<CustomEvent<void>>;
1380
+ /**
1381
+ * Emitted when visibility is toggled
1382
+ */
1383
+ bhVisibilityToggle: EventEmitter<CustomEvent<boolean>>;
1384
+ }
1385
+
1386
+
1387
+ @ProxyCmp({
1388
+ defineCustomElementFn: defineBhInputText,
1389
+ inputs: ['defaultValue', 'disabled', 'error', 'helpIconTooltip', 'hintText', 'label', 'leadingIcon', 'name', 'placeholder', 'readOnly', 'required', 'showHelpIcon', 'showHintText', 'showLabel', 'showLeadingIcon', 'showTrailingIcon', 'state', 'trailingIcon', 'type', 'validationMessage', 'value', 'width']
1390
+ })
1391
+ @Component({
1392
+ selector: 'bh-input-text',
1393
+ changeDetection: ChangeDetectionStrategy.OnPush,
1394
+ template: '<ng-content></ng-content>',
1395
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
1396
+ inputs: ['defaultValue', 'disabled', 'error', 'helpIconTooltip', 'hintText', 'label', 'leadingIcon', 'name', 'placeholder', 'readOnly', 'required', 'showHelpIcon', 'showHintText', 'showLabel', 'showLeadingIcon', 'showTrailingIcon', 'state', 'trailingIcon', 'type', 'validationMessage', 'value', 'width'],
1397
+ outputs: ['bhInput', 'bhFocus', 'bhBlur', 'bhHelpClick'],
1398
+ })
1399
+ export class BhInputText {
1400
+ protected el: HTMLBhInputTextElement;
1401
+ @Output() bhInput = new EventEmitter<CustomEvent<string>>();
1402
+ @Output() bhFocus = new EventEmitter<CustomEvent<void>>();
1403
+ @Output() bhBlur = new EventEmitter<CustomEvent<void>>();
1404
+ @Output() bhHelpClick = new EventEmitter<CustomEvent<void>>();
1405
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
1406
+ c.detach();
1407
+ this.el = r.nativeElement;
1408
+ }
1409
+ }
1410
+
1411
+
1412
+ export declare interface BhInputText extends Components.BhInputText {
1413
+ /**
1414
+ * Emitted when the value changes
1415
+ */
1416
+ bhInput: EventEmitter<CustomEvent<string>>;
1417
+ /**
1418
+ * Emitted when the input gains focus
1419
+ */
1420
+ bhFocus: EventEmitter<CustomEvent<void>>;
1421
+ /**
1422
+ * Emitted when the input loses focus
1423
+ */
1424
+ bhBlur: EventEmitter<CustomEvent<void>>;
1425
+ /**
1426
+ * Emitted when the help icon is clicked
1427
+ */
1428
+ bhHelpClick: EventEmitter<CustomEvent<void>>;
1429
+ }
1430
+
1431
+
1432
+ @ProxyCmp({
1433
+ defineCustomElementFn: defineBhInputVerification,
1434
+ inputs: ['digits', 'disabled', 'error', 'hintText', 'label', 'placeholder', 'required', 'showHintText', 'showLabel', 'showSeparator', 'size', 'value', 'width']
1435
+ })
1436
+ @Component({
1437
+ selector: 'bh-input-verification',
1438
+ changeDetection: ChangeDetectionStrategy.OnPush,
1439
+ template: '<ng-content></ng-content>',
1440
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
1441
+ inputs: ['digits', 'disabled', 'error', 'hintText', 'label', 'placeholder', 'required', 'showHintText', 'showLabel', 'showSeparator', 'size', 'value', 'width'],
1442
+ outputs: ['bhChange', 'bhComplete'],
1443
+ })
1444
+ export class BhInputVerification {
1445
+ protected el: HTMLBhInputVerificationElement;
1446
+ @Output() bhChange = new EventEmitter<CustomEvent<string>>();
1447
+ @Output() bhComplete = new EventEmitter<CustomEvent<string>>();
1448
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
1449
+ c.detach();
1450
+ this.el = r.nativeElement;
1451
+ }
1452
+ }
1453
+
1454
+
1455
+ export declare interface BhInputVerification extends Components.BhInputVerification {
1456
+ /**
1457
+ * Event emitted when the value changes
1458
+ */
1459
+ bhChange: EventEmitter<CustomEvent<string>>;
1460
+ /**
1461
+ * Event emitted when all digits are filled
1462
+ */
1463
+ bhComplete: EventEmitter<CustomEvent<string>>;
1464
+ }
1465
+
1466
+
1467
+ @ProxyCmp({
1468
+ defineCustomElementFn: defineBhLabel,
1469
+ inputs: ['disabled', 'for', 'helpIconTooltip', 'label', 'layout', 'required', 'showHelpIcon', 'supportingText']
1470
+ })
1471
+ @Component({
1472
+ selector: 'bh-label',
1473
+ changeDetection: ChangeDetectionStrategy.OnPush,
1474
+ template: '<ng-content></ng-content>',
1475
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
1476
+ inputs: ['disabled', 'for', 'helpIconTooltip', 'label', 'layout', 'required', 'showHelpIcon', 'supportingText'],
1477
+ outputs: ['bhHelpClick'],
1478
+ })
1479
+ export class BhLabel {
1480
+ protected el: HTMLBhLabelElement;
1481
+ @Output() bhHelpClick = new EventEmitter<CustomEvent<void>>();
1482
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
1483
+ c.detach();
1484
+ this.el = r.nativeElement;
1485
+ }
1486
+ }
1487
+
1488
+
1489
+ export declare interface BhLabel extends Components.BhLabel {
1490
+ /**
1491
+ * Emitted when the help icon is clicked
1492
+ */
1493
+ bhHelpClick: EventEmitter<CustomEvent<void>>;
1494
+ }
1495
+
1496
+
1497
+ @ProxyCmp({
1498
+ defineCustomElementFn: defineBhLoaderSpinner,
1499
+ inputs: ['message', 'overlay', 'overlayMessage', 'showMessage', 'size', 'variant']
1500
+ })
1501
+ @Component({
1502
+ selector: 'bh-loader-spinner',
1503
+ changeDetection: ChangeDetectionStrategy.OnPush,
1504
+ template: '<ng-content></ng-content>',
1505
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
1506
+ inputs: ['message', 'overlay', 'overlayMessage', 'showMessage', 'size', 'variant'],
1507
+ })
1508
+ export class BhLoaderSpinner {
1509
+ protected el: HTMLBhLoaderSpinnerElement;
1510
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
1511
+ c.detach();
1512
+ this.el = r.nativeElement;
1513
+ }
1514
+ }
1515
+
1516
+
1517
+ export declare interface BhLoaderSpinner extends Components.BhLoaderSpinner {}
1518
+
1519
+
1520
+ @ProxyCmp({
1521
+ defineCustomElementFn: defineBhLogoBox,
1522
+ inputs: ['assetBasePath', 'logoSrc', 'logoType', 'products']
1523
+ })
1524
+ @Component({
1525
+ selector: 'bh-logo-box',
1526
+ changeDetection: ChangeDetectionStrategy.OnPush,
1527
+ template: '<ng-content></ng-content>',
1528
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
1529
+ inputs: ['assetBasePath', 'logoSrc', 'logoType', 'products'],
1530
+ outputs: ['bhProductSelect'],
1531
+ })
1532
+ export class BhLogoBox {
1533
+ protected el: HTMLBhLogoBoxElement;
1534
+ @Output() bhProductSelect = new EventEmitter<CustomEvent<IBhLogoBoxBhProduct>>();
1535
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
1536
+ c.detach();
1537
+ this.el = r.nativeElement;
1538
+ }
1539
+ }
1540
+
1541
+
1542
+ import type { BhProduct as IBhLogoBoxBhProduct } from '@actabldesign/bellhop-core/components';
1543
+
1544
+ export declare interface BhLogoBox extends Components.BhLogoBox {
1545
+ /**
1546
+ * Event emitted when a product is selected
1547
+ */
1548
+ bhProductSelect: EventEmitter<CustomEvent<IBhLogoBoxBhProduct>>;
1549
+ }
1550
+
1551
+
1552
+ @ProxyCmp({
1553
+ defineCustomElementFn: defineBhModal,
1554
+ inputs: ['overlay', 'visible', 'width']
1555
+ })
1556
+ @Component({
1557
+ selector: 'bh-modal',
1558
+ changeDetection: ChangeDetectionStrategy.OnPush,
1559
+ template: '<ng-content></ng-content>',
1560
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
1561
+ inputs: ['overlay', 'visible', 'width'],
1562
+ outputs: ['bhClose'],
1563
+ })
1564
+ export class BhModal {
1565
+ protected el: HTMLBhModalElement;
1566
+ @Output() bhClose = new EventEmitter<CustomEvent<void>>();
1567
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
1568
+ c.detach();
1569
+ this.el = r.nativeElement;
1570
+ }
1571
+ }
1572
+
1573
+
1574
+ export declare interface BhModal extends Components.BhModal {
1575
+ /**
1576
+ * Emitted when the modal is closed (overlay click or close button)
1577
+ */
1578
+ bhClose: EventEmitter<CustomEvent<void>>;
1579
+ }
1580
+
1581
+
1582
+ @ProxyCmp({
1583
+ defineCustomElementFn: defineBhModalActions,
1584
+ inputs: ['destructive', 'divider', 'primaryLabel', 'secondaryLabel', 'type']
1585
+ })
1586
+ @Component({
1587
+ selector: 'bh-modal-actions',
1588
+ changeDetection: ChangeDetectionStrategy.OnPush,
1589
+ template: '<ng-content></ng-content>',
1590
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
1591
+ inputs: ['destructive', 'divider', 'primaryLabel', 'secondaryLabel', 'type'],
1592
+ outputs: ['bhPrimaryAction', 'bhSecondaryAction'],
1593
+ })
1594
+ export class BhModalActions {
1595
+ protected el: HTMLBhModalActionsElement;
1596
+ @Output() bhPrimaryAction = new EventEmitter<CustomEvent<void>>();
1597
+ @Output() bhSecondaryAction = new EventEmitter<CustomEvent<void>>();
1598
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
1599
+ c.detach();
1600
+ this.el = r.nativeElement;
1601
+ }
1602
+ }
1603
+
1604
+
1605
+ export declare interface BhModalActions extends Components.BhModalActions {
1606
+ /**
1607
+ * Emitted when the primary/destructive action button is clicked
1608
+ */
1609
+ bhPrimaryAction: EventEmitter<CustomEvent<void>>;
1610
+ /**
1611
+ * Emitted when the secondary action button is clicked
1612
+ */
1613
+ bhSecondaryAction: EventEmitter<CustomEvent<void>>;
1614
+ }
1615
+
1616
+
1617
+ @ProxyCmp({
1618
+ defineCustomElementFn: defineBhModalHeader,
1619
+ inputs: ['description', 'divider', 'icon', 'iconColor', 'modalTitle', 'paddingBottom', 'showCloseButton', 'showIcon', 'type']
1620
+ })
1621
+ @Component({
1622
+ selector: 'bh-modal-header',
1623
+ changeDetection: ChangeDetectionStrategy.OnPush,
1624
+ template: '<ng-content></ng-content>',
1625
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
1626
+ inputs: ['description', 'divider', 'icon', 'iconColor', { name: 'modalTitle', required: true }, 'paddingBottom', 'showCloseButton', 'showIcon', 'type'],
1627
+ outputs: ['bhClose'],
1628
+ })
1629
+ export class BhModalHeader {
1630
+ protected el: HTMLBhModalHeaderElement;
1631
+ @Output() bhClose = new EventEmitter<CustomEvent<void>>();
1632
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
1633
+ c.detach();
1634
+ this.el = r.nativeElement;
1635
+ }
1636
+ }
1637
+
1638
+
1639
+ export declare interface BhModalHeader extends Components.BhModalHeader {
1640
+ /**
1641
+ * Emitted when the close button is clicked
1642
+ */
1643
+ bhClose: EventEmitter<CustomEvent<void>>;
1644
+ }
1645
+
1646
+
1647
+ @ProxyCmp({
1648
+ defineCustomElementFn: defineBhMonthPicker,
1649
+ inputs: ['disabled', 'disabledMonths', 'inputWidth', 'label', 'maxYear', 'minYear', 'placeholder', 'showFooter', 'showLabel', 'value', 'variant']
1650
+ })
1651
+ @Component({
1652
+ selector: 'bh-month-picker',
1653
+ changeDetection: ChangeDetectionStrategy.OnPush,
1654
+ template: '<ng-content></ng-content>',
1655
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
1656
+ inputs: ['disabled', 'disabledMonths', 'inputWidth', 'label', 'maxYear', 'minYear', 'placeholder', 'showFooter', 'showLabel', 'value', 'variant'],
1657
+ outputs: ['bhChange', 'bhMonthYearSelect'],
1658
+ })
1659
+ export class BhMonthPicker {
1660
+ protected el: HTMLBhMonthPickerElement;
1661
+ @Output() bhChange = new EventEmitter<CustomEvent<IBhMonthPickerMonthYear | null>>();
1662
+ @Output() bhMonthYearSelect = new EventEmitter<CustomEvent<IBhMonthPickerMonthYear>>();
1663
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
1664
+ c.detach();
1665
+ this.el = r.nativeElement;
1666
+ }
1667
+ }
1668
+
1669
+
1670
+ import type { MonthYear as IBhMonthPickerMonthYear } from '@actabldesign/bellhop-core/components';
1671
+
1672
+ export declare interface BhMonthPicker extends Components.BhMonthPicker {
1673
+ /**
1674
+ * Event emitted when value changes
1675
+ */
1676
+ bhChange: EventEmitter<CustomEvent<IBhMonthPickerMonthYear | null>>;
1677
+ /**
1678
+ * Event emitted when a month/year is selected
1679
+ */
1680
+ bhMonthYearSelect: EventEmitter<CustomEvent<IBhMonthPickerMonthYear>>;
1681
+ }
1682
+
1683
+
1684
+ @ProxyCmp({
1685
+ defineCustomElementFn: defineBhMonthPickerContent,
1686
+ inputs: ['disabled', 'disabledMonths', 'height', 'maxYear', 'minYear', 'scrollable', 'selectedMonth', 'selectedYear', 'value']
1687
+ })
1688
+ @Component({
1689
+ selector: 'bh-month-picker-content',
1690
+ changeDetection: ChangeDetectionStrategy.OnPush,
1691
+ template: '<ng-content></ng-content>',
1692
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
1693
+ inputs: ['disabled', 'disabledMonths', 'height', 'maxYear', 'minYear', 'scrollable', 'selectedMonth', 'selectedYear', 'value'],
1694
+ outputs: ['bhChange', 'bhMonthYearSelect'],
1695
+ })
1696
+ export class BhMonthPickerContent {
1697
+ protected el: HTMLBhMonthPickerContentElement;
1698
+ @Output() bhChange = new EventEmitter<CustomEvent<IBhMonthPickerContentMonthYear>>();
1699
+ @Output() bhMonthYearSelect = new EventEmitter<CustomEvent<IBhMonthPickerContentMonthYear>>();
1700
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
1701
+ c.detach();
1702
+ this.el = r.nativeElement;
1703
+ }
1704
+ }
1705
+
1706
+
1707
+ import type { MonthYear as IBhMonthPickerContentMonthYear } from '@actabldesign/bellhop-core/components';
1708
+
1709
+ export declare interface BhMonthPickerContent extends Components.BhMonthPickerContent {
1710
+ /**
1711
+ * Event emitted when a month is selected
1712
+ */
1713
+ bhChange: EventEmitter<CustomEvent<IBhMonthPickerContentMonthYear>>;
1714
+ /**
1715
+ * Event emitted when a month/year is selected
1716
+ */
1717
+ bhMonthYearSelect: EventEmitter<CustomEvent<IBhMonthPickerContentMonthYear>>;
1718
+ }
1719
+
1720
+
1721
+ @ProxyCmp({
1722
+ defineCustomElementFn: defineBhNavItem,
1723
+ inputs: ['disabled', 'icon', 'isActive', 'label']
1724
+ })
1725
+ @Component({
1726
+ selector: 'bh-nav-item',
1727
+ changeDetection: ChangeDetectionStrategy.OnPush,
1728
+ template: '<ng-content></ng-content>',
1729
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
1730
+ inputs: ['disabled', 'icon', 'isActive', 'label'],
1731
+ outputs: ['bhClick'],
1732
+ })
1733
+ export class BhNavItem {
1734
+ protected el: HTMLBhNavItemElement;
1735
+ @Output() bhClick = new EventEmitter<CustomEvent<void>>();
1736
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
1737
+ c.detach();
1738
+ this.el = r.nativeElement;
1739
+ }
1740
+ }
1741
+
1742
+
1743
+ export declare interface BhNavItem extends Components.BhNavItem {
1744
+ /**
1745
+ * Event emitted when the nav item is clicked
1746
+ */
1747
+ bhClick: EventEmitter<CustomEvent<void>>;
1748
+ }
1749
+
1750
+
1751
+ @ProxyCmp({
1752
+ defineCustomElementFn: defineBhNotification,
1753
+ inputs: ['actionText', 'description', 'dismissText', 'dismissible', 'icon', 'notificationTitle', 'type']
1754
+ })
1755
+ @Component({
1756
+ selector: 'bh-notification',
1757
+ changeDetection: ChangeDetectionStrategy.OnPush,
1758
+ template: '<ng-content></ng-content>',
1759
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
1760
+ inputs: ['actionText', 'description', 'dismissText', 'dismissible', 'icon', 'notificationTitle', 'type'],
1761
+ outputs: ['bhAction', 'bhDismiss', 'bhClose'],
1762
+ })
1763
+ export class BhNotification {
1764
+ protected el: HTMLBhNotificationElement;
1765
+ @Output() bhAction = new EventEmitter<CustomEvent<void>>();
1766
+ @Output() bhDismiss = new EventEmitter<CustomEvent<void>>();
1767
+ @Output() bhClose = new EventEmitter<CustomEvent<void>>();
1768
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
1769
+ c.detach();
1770
+ this.el = r.nativeElement;
1771
+ }
1772
+ }
1773
+
1774
+
1775
+ export declare interface BhNotification extends Components.BhNotification {
1776
+ /**
1777
+ * Emitted when action button is clicked
1778
+ */
1779
+ bhAction: EventEmitter<CustomEvent<void>>;
1780
+ /**
1781
+ * Emitted when dismiss button is clicked
1782
+ */
1783
+ bhDismiss: EventEmitter<CustomEvent<void>>;
1784
+ /**
1785
+ * Emitted when close button is clicked
1786
+ */
1787
+ bhClose: EventEmitter<CustomEvent<void>>;
1788
+ }
1789
+
1790
+
1791
+ @ProxyCmp({
1792
+ defineCustomElementFn: defineBhPageNavigation,
1793
+ inputs: ['navTitle', 'navigationItems']
1794
+ })
1795
+ @Component({
1796
+ selector: 'bh-page-navigation',
1797
+ changeDetection: ChangeDetectionStrategy.OnPush,
1798
+ template: '<ng-content></ng-content>',
1799
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
1800
+ inputs: ['navTitle', 'navigationItems'],
1801
+ outputs: ['bhItemClick'],
1802
+ })
1803
+ export class BhPageNavigation {
1804
+ protected el: HTMLBhPageNavigationElement;
1805
+ @Output() bhItemClick = new EventEmitter<CustomEvent<{ itemId: string; childIndex?: number }>>();
1806
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
1807
+ c.detach();
1808
+ this.el = r.nativeElement;
1809
+ }
1810
+ }
1811
+
1812
+
1813
+ export declare interface BhPageNavigation extends Components.BhPageNavigation {
1814
+ /**
1815
+ * Event emitted when a navigation item is clicked
1816
+ */
1817
+ bhItemClick: EventEmitter<CustomEvent<{ itemId: string; childIndex?: number }>>;
1818
+ }
1819
+
1820
+
1821
+ @ProxyCmp({
1822
+ defineCustomElementFn: defineBhPageNavigationChild,
1823
+ inputs: ['badge', 'isActive', 'label', 'showBadge']
1824
+ })
1825
+ @Component({
1826
+ selector: 'bh-page-navigation-child',
1827
+ changeDetection: ChangeDetectionStrategy.OnPush,
1828
+ template: '<ng-content></ng-content>',
1829
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
1830
+ inputs: ['badge', 'isActive', { name: 'label', required: true }, 'showBadge'],
1831
+ outputs: ['bhItemClick'],
1832
+ })
1833
+ export class BhPageNavigationChild {
1834
+ protected el: HTMLBhPageNavigationChildElement;
1835
+ @Output() bhItemClick = new EventEmitter<CustomEvent<void>>();
1836
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
1837
+ c.detach();
1838
+ this.el = r.nativeElement;
1839
+ }
1840
+ }
1841
+
1842
+
1843
+ export declare interface BhPageNavigationChild extends Components.BhPageNavigationChild {
1844
+ /**
1845
+ * Event emitted when the navigation item is clicked
1846
+ */
1847
+ bhItemClick: EventEmitter<CustomEvent<void>>;
1848
+ }
1849
+
1850
+
1851
+ @ProxyCmp({
1852
+ defineCustomElementFn: defineBhPageNavigationMultiLevel,
1853
+ inputs: ['badge', 'childItems', 'icon', 'isExpanded', 'label']
1854
+ })
1855
+ @Component({
1856
+ selector: 'bh-page-navigation-multi-level',
1857
+ changeDetection: ChangeDetectionStrategy.OnPush,
1858
+ template: '<ng-content></ng-content>',
1859
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
1860
+ inputs: ['badge', 'childItems', 'icon', 'isExpanded', { name: 'label', required: true }],
1861
+ outputs: ['bhToggle', 'bhChildClick', 'bhAddClick'],
1862
+ })
1863
+ export class BhPageNavigationMultiLevel {
1864
+ protected el: HTMLBhPageNavigationMultiLevelElement;
1865
+ @Output() bhToggle = new EventEmitter<CustomEvent<void>>();
1866
+ @Output() bhChildClick = new EventEmitter<CustomEvent<number>>();
1867
+ @Output() bhAddClick = new EventEmitter<CustomEvent<void>>();
1868
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
1869
+ c.detach();
1870
+ this.el = r.nativeElement;
1871
+ }
1872
+ }
1873
+
1874
+
1875
+ export declare interface BhPageNavigationMultiLevel extends Components.BhPageNavigationMultiLevel {
1876
+ /**
1877
+ * Event emitted when the parent item is clicked (to toggle expansion)
1878
+ */
1879
+ bhToggle: EventEmitter<CustomEvent<void>>;
1880
+ /**
1881
+ * Event emitted when a child item is clicked
1882
+ */
1883
+ bhChildClick: EventEmitter<CustomEvent<number>>;
1884
+ /**
1885
+ * Event emitted when add button is clicked
1886
+ */
1887
+ bhAddClick: EventEmitter<CustomEvent<void>>;
1888
+ }
1889
+
1890
+
1891
+ @ProxyCmp({
1892
+ defineCustomElementFn: defineBhPageNavigationSingleLevel,
1893
+ inputs: ['icon', 'isActive', 'label']
1894
+ })
1895
+ @Component({
1896
+ selector: 'bh-page-navigation-single-level',
1897
+ changeDetection: ChangeDetectionStrategy.OnPush,
1898
+ template: '<ng-content></ng-content>',
1899
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
1900
+ inputs: ['icon', 'isActive', { name: 'label', required: true }],
1901
+ outputs: ['bhItemClick'],
1902
+ })
1903
+ export class BhPageNavigationSingleLevel {
1904
+ protected el: HTMLBhPageNavigationSingleLevelElement;
1905
+ @Output() bhItemClick = new EventEmitter<CustomEvent<void>>();
1906
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
1907
+ c.detach();
1908
+ this.el = r.nativeElement;
1909
+ }
1910
+ }
1911
+
1912
+
1913
+ export declare interface BhPageNavigationSingleLevel extends Components.BhPageNavigationSingleLevel {
1914
+ /**
1915
+ * Event emitted when the navigation item is clicked
1916
+ */
1917
+ bhItemClick: EventEmitter<CustomEvent<void>>;
1918
+ }
1919
+
1920
+
1921
+ @ProxyCmp({
1922
+ defineCustomElementFn: defineBhPagination,
1923
+ inputs: ['compact', 'disabled', 'maxPageNumbers', 'page', 'pageInfoLabel', 'pageSize', 'pageSizeOptions', 'rowsPerPageLabel', 'showItemCount', 'showPageSizeSelector', 'showingResultsLabel', 'totalItems']
1924
+ })
1925
+ @Component({
1926
+ selector: 'bh-pagination',
1927
+ changeDetection: ChangeDetectionStrategy.OnPush,
1928
+ template: '<ng-content></ng-content>',
1929
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
1930
+ inputs: ['compact', 'disabled', 'maxPageNumbers', 'page', 'pageInfoLabel', 'pageSize', 'pageSizeOptions', 'rowsPerPageLabel', 'showItemCount', 'showPageSizeSelector', 'showingResultsLabel', 'totalItems'],
1931
+ outputs: ['bhPageChange', 'bhPageSizeChange'],
1932
+ })
1933
+ export class BhPagination {
1934
+ protected el: HTMLBhPaginationElement;
1935
+ @Output() bhPageChange = new EventEmitter<CustomEvent<IBhPaginationPaginationChangeEvent>>();
1936
+ @Output() bhPageSizeChange = new EventEmitter<CustomEvent<IBhPaginationPaginationChangeEvent>>();
1937
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
1938
+ c.detach();
1939
+ this.el = r.nativeElement;
1940
+ }
1941
+ }
1942
+
1943
+
1944
+ import type { PaginationChangeEvent as IBhPaginationPaginationChangeEvent } from '@actabldesign/bellhop-core/components';
1945
+
1946
+ export declare interface BhPagination extends Components.BhPagination {
1947
+ /**
1948
+ * Emitted when the page changes
1949
+ */
1950
+ bhPageChange: EventEmitter<CustomEvent<IBhPaginationPaginationChangeEvent>>;
1951
+ /**
1952
+ * Emitted when page size changes
1953
+ */
1954
+ bhPageSizeChange: EventEmitter<CustomEvent<IBhPaginationPaginationChangeEvent>>;
1955
+ }
1956
+
1957
+
1958
+ @ProxyCmp({
1959
+ defineCustomElementFn: defineBhPickerMenu,
1960
+ inputs: ['animationClass', 'disableApply', 'disabled', 'disabledMonths', 'maxYear', 'minYear', 'showFooter', 'showTodayButton', 'value', 'visible']
1961
+ })
1962
+ @Component({
1963
+ selector: 'bh-picker-menu',
1964
+ changeDetection: ChangeDetectionStrategy.OnPush,
1965
+ template: '<ng-content></ng-content>',
1966
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
1967
+ inputs: ['animationClass', 'disableApply', 'disabled', 'disabledMonths', 'maxYear', 'minYear', 'showFooter', 'showTodayButton', 'value', 'visible'],
1968
+ outputs: ['bhChange', 'bhMonthYearSelect', 'bhCancel', 'bhApply', 'bhToday'],
1969
+ })
1970
+ export class BhPickerMenu {
1971
+ protected el: HTMLBhPickerMenuElement;
1972
+ @Output() bhChange = new EventEmitter<CustomEvent<IBhPickerMenuMonthYear | null>>();
1973
+ @Output() bhMonthYearSelect = new EventEmitter<CustomEvent<IBhPickerMenuMonthYear>>();
1974
+ @Output() bhCancel = new EventEmitter<CustomEvent<void>>();
1975
+ @Output() bhApply = new EventEmitter<CustomEvent<void>>();
1976
+ @Output() bhToday = new EventEmitter<CustomEvent<void>>();
1977
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
1978
+ c.detach();
1979
+ this.el = r.nativeElement;
1980
+ }
1981
+ }
1982
+
1983
+
1984
+ import type { MonthYear as IBhPickerMenuMonthYear } from '@actabldesign/bellhop-core/components';
1985
+
1986
+ export declare interface BhPickerMenu extends Components.BhPickerMenu {
1987
+ /**
1988
+ * Event emitted when value changes
1989
+ */
1990
+ bhChange: EventEmitter<CustomEvent<IBhPickerMenuMonthYear | null>>;
1991
+ /**
1992
+ * Event emitted when a month/year is selected
1993
+ */
1994
+ bhMonthYearSelect: EventEmitter<CustomEvent<IBhPickerMenuMonthYear>>;
1995
+ /**
1996
+ * Event emitted when cancel is clicked
1997
+ */
1998
+ bhCancel: EventEmitter<CustomEvent<void>>;
1999
+ /**
2000
+ * Event emitted when apply is clicked
2001
+ */
2002
+ bhApply: EventEmitter<CustomEvent<void>>;
2003
+ /**
2004
+ * Event emitted when today button is clicked
2005
+ */
2006
+ bhToday: EventEmitter<CustomEvent<void>>;
2007
+ }
2008
+
2009
+
2010
+ @ProxyCmp({
2011
+ defineCustomElementFn: defineBhPieChart,
2012
+ inputs: ['animated', 'data', 'gap', 'hole', 'size']
2013
+ })
2014
+ @Component({
2015
+ selector: 'bh-pie-chart',
2016
+ changeDetection: ChangeDetectionStrategy.OnPush,
2017
+ template: '<ng-content></ng-content>',
2018
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
2019
+ inputs: ['animated', 'data', 'gap', 'hole', 'size'],
2020
+ })
2021
+ export class BhPieChart {
2022
+ protected el: HTMLBhPieChartElement;
2023
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
2024
+ c.detach();
2025
+ this.el = r.nativeElement;
2026
+ }
2027
+ }
2028
+
2029
+
2030
+ export declare interface BhPieChart extends Components.BhPieChart {}
2031
+
2032
+
2033
+ @ProxyCmp({
2034
+ defineCustomElementFn: defineBhPopover,
2035
+ inputs: ['content', 'maxWidth', 'popoverTitle', 'position']
2036
+ })
2037
+ @Component({
2038
+ selector: 'bh-popover',
2039
+ changeDetection: ChangeDetectionStrategy.OnPush,
2040
+ template: '<ng-content></ng-content>',
2041
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
2042
+ inputs: ['content', 'maxWidth', 'popoverTitle', 'position'],
2043
+ })
2044
+ export class BhPopover {
2045
+ protected el: HTMLBhPopoverElement;
2046
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
2047
+ c.detach();
2048
+ this.el = r.nativeElement;
2049
+ }
2050
+ }
2051
+
2052
+
2053
+ export declare interface BhPopover extends Components.BhPopover {}
2054
+
2055
+
2056
+ @ProxyCmp({
2057
+ defineCustomElementFn: defineBhProductSwitcher,
2058
+ inputs: ['anchorPosition', 'isOpen', 'products']
2059
+ })
2060
+ @Component({
2061
+ selector: 'bh-product-switcher',
2062
+ changeDetection: ChangeDetectionStrategy.OnPush,
2063
+ template: '<ng-content></ng-content>',
2064
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
2065
+ inputs: ['anchorPosition', 'isOpen', 'products'],
2066
+ outputs: ['bhClose', 'bhProductSelect'],
2067
+ })
2068
+ export class BhProductSwitcher {
2069
+ protected el: HTMLBhProductSwitcherElement;
2070
+ @Output() bhClose = new EventEmitter<CustomEvent<void>>();
2071
+ @Output() bhProductSelect = new EventEmitter<CustomEvent<IBhProductSwitcherBhProduct>>();
2072
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
2073
+ c.detach();
2074
+ this.el = r.nativeElement;
2075
+ }
2076
+ }
2077
+
2078
+
2079
+ import type { BhProduct as IBhProductSwitcherBhProduct } from '@actabldesign/bellhop-core/components';
2080
+
2081
+ export declare interface BhProductSwitcher extends Components.BhProductSwitcher {
2082
+ /**
2083
+ * Event emitted when the switcher should close
2084
+ */
2085
+ bhClose: EventEmitter<CustomEvent<void>>;
2086
+ /**
2087
+ * Event emitted when a product is selected
2088
+ */
2089
+ bhProductSelect: EventEmitter<CustomEvent<IBhProductSwitcherBhProduct>>;
2090
+ }
2091
+
2092
+
2093
+ @ProxyCmp({
2094
+ defineCustomElementFn: defineBhPropertySwitcher,
2095
+ inputs: ['grouped', 'properties', 'searchPlaceholder', 'selectedProperty']
2096
+ })
2097
+ @Component({
2098
+ selector: 'bh-property-switcher',
2099
+ changeDetection: ChangeDetectionStrategy.OnPush,
2100
+ template: '<ng-content></ng-content>',
2101
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
2102
+ inputs: ['grouped', 'properties', 'searchPlaceholder', 'selectedProperty'],
2103
+ outputs: ['bhPropertyChange'],
2104
+ })
2105
+ export class BhPropertySwitcher {
2106
+ protected el: HTMLBhPropertySwitcherElement;
2107
+ @Output() bhPropertyChange = new EventEmitter<CustomEvent<IBhPropertySwitcherPropertyOption>>();
2108
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
2109
+ c.detach();
2110
+ this.el = r.nativeElement;
2111
+ }
2112
+ }
2113
+
2114
+
2115
+ import type { PropertyOption as IBhPropertySwitcherPropertyOption } from '@actabldesign/bellhop-core/components';
2116
+
2117
+ export declare interface BhPropertySwitcher extends Components.BhPropertySwitcher {
2118
+ /**
2119
+ * Event emitted when a property is selected
2120
+ */
2121
+ bhPropertyChange: EventEmitter<CustomEvent<IBhPropertySwitcherPropertyOption>>;
2122
+ }
2123
+
2124
+
2125
+ @ProxyCmp({
2126
+ defineCustomElementFn: defineBhRadioButton,
2127
+ inputs: ['disabled', 'label', 'name', 'selected', 'size', 'supportingText', 'value']
2128
+ })
2129
+ @Component({
2130
+ selector: 'bh-radio-button',
2131
+ changeDetection: ChangeDetectionStrategy.OnPush,
2132
+ template: '<ng-content></ng-content>',
2133
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
2134
+ inputs: ['disabled', 'label', 'name', 'selected', 'size', 'supportingText', 'value'],
2135
+ outputs: ['bhChange'],
2136
+ })
2137
+ export class BhRadioButton {
2138
+ protected el: HTMLBhRadioButtonElement;
2139
+ @Output() bhChange = new EventEmitter<CustomEvent<string>>();
2140
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
2141
+ c.detach();
2142
+ this.el = r.nativeElement;
2143
+ }
2144
+ }
2145
+
2146
+
2147
+ export declare interface BhRadioButton extends Components.BhRadioButton {
2148
+ /**
2149
+ * Emitted when the radio button selection changes
2150
+ */
2151
+ bhChange: EventEmitter<CustomEvent<string>>;
2152
+ }
2153
+
2154
+
2155
+ @ProxyCmp({
2156
+ defineCustomElementFn: defineBhSidebar,
2157
+ inputs: ['assetBasePath', 'avatarEmail', 'avatarInitials', 'avatarName', 'avatarUrl', 'collapsed', 'footerItems', 'logoSrc', 'logoType', 'menuItems']
2158
+ })
2159
+ @Component({
2160
+ selector: 'bh-sidebar',
2161
+ changeDetection: ChangeDetectionStrategy.OnPush,
2162
+ template: '<ng-content></ng-content>',
2163
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
2164
+ inputs: ['assetBasePath', 'avatarEmail', 'avatarInitials', 'avatarName', 'avatarUrl', 'collapsed', 'footerItems', 'logoSrc', 'logoType', 'menuItems'],
2165
+ outputs: ['bhMenuItemClick', 'bhSearchClick', 'bhAvatarMenuClick'],
2166
+ })
2167
+ export class BhSidebar {
2168
+ protected el: HTMLBhSidebarElement;
2169
+ @Output() bhMenuItemClick = new EventEmitter<CustomEvent<string>>();
2170
+ @Output() bhSearchClick = new EventEmitter<CustomEvent<void>>();
2171
+ @Output() bhAvatarMenuClick = new EventEmitter<CustomEvent<IBhSidebarDropdownMenuItem>>();
2172
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
2173
+ c.detach();
2174
+ this.el = r.nativeElement;
2175
+ }
2176
+ }
2177
+
2178
+
2179
+ import type { DropdownMenuItem as IBhSidebarDropdownMenuItem } from '@actabldesign/bellhop-core/components';
2180
+
2181
+ export declare interface BhSidebar extends Components.BhSidebar {
2182
+ /**
2183
+ * Event emitted when a menu item is clicked
2184
+ */
2185
+ bhMenuItemClick: EventEmitter<CustomEvent<string>>;
2186
+ /**
2187
+ * Event emitted when search button is clicked
2188
+ */
2189
+ bhSearchClick: EventEmitter<CustomEvent<void>>;
2190
+ /**
2191
+ * Event emitted when avatar menu item is clicked
2192
+ */
2193
+ bhAvatarMenuClick: EventEmitter<CustomEvent<IBhSidebarDropdownMenuItem>>;
2194
+ }
2195
+
2196
+
2197
+ @ProxyCmp({
2198
+ defineCustomElementFn: defineBhSkeletonLoader,
2199
+ inputs: ['circle', 'height', 'width']
2200
+ })
2201
+ @Component({
2202
+ selector: 'bh-skeleton-loader',
2203
+ changeDetection: ChangeDetectionStrategy.OnPush,
2204
+ template: '<ng-content></ng-content>',
2205
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
2206
+ inputs: ['circle', 'height', 'width'],
2207
+ })
2208
+ export class BhSkeletonLoader {
2209
+ protected el: HTMLBhSkeletonLoaderElement;
2210
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
2211
+ c.detach();
2212
+ this.el = r.nativeElement;
2213
+ }
2214
+ }
2215
+
2216
+
2217
+ export declare interface BhSkeletonLoader extends Components.BhSkeletonLoader {}
2218
+
2219
+
2220
+ @ProxyCmp({
2221
+ defineCustomElementFn: defineBhTabItem,
2222
+ inputs: ['active', 'disabled', 'label', 'value']
2223
+ })
2224
+ @Component({
2225
+ selector: 'bh-tab-item',
2226
+ changeDetection: ChangeDetectionStrategy.OnPush,
2227
+ template: '<ng-content></ng-content>',
2228
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
2229
+ inputs: ['active', 'disabled', { name: 'label', required: true }, { name: 'value', required: true }],
2230
+ outputs: ['bhTabItemClick'],
2231
+ })
2232
+ export class BhTabItem {
2233
+ protected el: HTMLBhTabItemElement;
2234
+ @Output() bhTabItemClick = new EventEmitter<CustomEvent<string>>();
2235
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
2236
+ c.detach();
2237
+ this.el = r.nativeElement;
2238
+ }
2239
+ }
2240
+
2241
+
2242
+ export declare interface BhTabItem extends Components.BhTabItem {
2243
+ /**
2244
+ * Emitted when the tab is clicked
2245
+ */
2246
+ bhTabItemClick: EventEmitter<CustomEvent<string>>;
2247
+ }
2248
+
2249
+
2250
+ @ProxyCmp({
2251
+ defineCustomElementFn: defineBhTabs,
2252
+ inputs: ['fullWidth', 'orientation', 'type', 'value']
2253
+ })
2254
+ @Component({
2255
+ selector: 'bh-tabs',
2256
+ changeDetection: ChangeDetectionStrategy.OnPush,
2257
+ template: '<ng-content></ng-content>',
2258
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
2259
+ inputs: ['fullWidth', 'orientation', 'type', 'value'],
2260
+ outputs: ['bhTabChange'],
2261
+ })
2262
+ export class BhTabs {
2263
+ protected el: HTMLBhTabsElement;
2264
+ @Output() bhTabChange = new EventEmitter<CustomEvent<string>>();
2265
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
2266
+ c.detach();
2267
+ this.el = r.nativeElement;
2268
+ }
2269
+ }
2270
+
2271
+
2272
+ export declare interface BhTabs extends Components.BhTabs {
2273
+ /**
2274
+ * Emitted when the active tab changes
2275
+ */
2276
+ bhTabChange: EventEmitter<CustomEvent<string>>;
2277
+ }
2278
+
2279
+
2280
+ @ProxyCmp({
2281
+ defineCustomElementFn: defineBhTag,
2282
+ inputs: ['avatarSrc', 'disabled', 'dismissible', 'label', 'maxWidth', 'size', 'variant']
2283
+ })
2284
+ @Component({
2285
+ selector: 'bh-tag',
2286
+ changeDetection: ChangeDetectionStrategy.OnPush,
2287
+ template: '<ng-content></ng-content>',
2288
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
2289
+ inputs: ['avatarSrc', 'disabled', 'dismissible', 'label', 'maxWidth', 'size', 'variant'],
2290
+ outputs: ['bhDismiss'],
2291
+ })
2292
+ export class BhTag {
2293
+ protected el: HTMLBhTagElement;
2294
+ @Output() bhDismiss = new EventEmitter<CustomEvent<void>>();
2295
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
2296
+ c.detach();
2297
+ this.el = r.nativeElement;
2298
+ }
2299
+ }
2300
+
2301
+
2302
+ export declare interface BhTag extends Components.BhTag {
2303
+ /**
2304
+ * Emitted when dismiss button is clicked
2305
+ */
2306
+ bhDismiss: EventEmitter<CustomEvent<void>>;
2307
+ }
2308
+
2309
+
2310
+ @ProxyCmp({
2311
+ defineCustomElementFn: defineBhTextarea,
2312
+ inputs: ['defaultValue', 'disabled', 'error', 'helpIconTooltip', 'hintText', 'label', 'maxLength', 'name', 'placeholder', 'required', 'resize', 'rows', 'showHelpIcon', 'showHintText', 'showLabel', 'validationMessage', 'value']
2313
+ })
2314
+ @Component({
2315
+ selector: 'bh-textarea',
2316
+ changeDetection: ChangeDetectionStrategy.OnPush,
2317
+ template: '<ng-content></ng-content>',
2318
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
2319
+ inputs: ['defaultValue', 'disabled', 'error', 'helpIconTooltip', 'hintText', 'label', 'maxLength', 'name', 'placeholder', 'required', 'resize', 'rows', 'showHelpIcon', 'showHintText', 'showLabel', 'validationMessage', 'value'],
2320
+ outputs: ['bhInput', 'bhFocus', 'bhBlur', 'bhHelpClick'],
2321
+ })
2322
+ export class BhTextarea {
2323
+ protected el: HTMLBhTextareaElement;
2324
+ @Output() bhInput = new EventEmitter<CustomEvent<string>>();
2325
+ @Output() bhFocus = new EventEmitter<CustomEvent<void>>();
2326
+ @Output() bhBlur = new EventEmitter<CustomEvent<void>>();
2327
+ @Output() bhHelpClick = new EventEmitter<CustomEvent<void>>();
2328
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
2329
+ c.detach();
2330
+ this.el = r.nativeElement;
2331
+ }
2332
+ }
2333
+
2334
+
2335
+ export declare interface BhTextarea extends Components.BhTextarea {
2336
+ /**
2337
+ * Emitted when the value changes
2338
+ */
2339
+ bhInput: EventEmitter<CustomEvent<string>>;
2340
+ /**
2341
+ * Emitted when the textarea gains focus
2342
+ */
2343
+ bhFocus: EventEmitter<CustomEvent<void>>;
2344
+ /**
2345
+ * Emitted when the textarea loses focus
2346
+ */
2347
+ bhBlur: EventEmitter<CustomEvent<void>>;
2348
+ /**
2349
+ * Emitted when the help icon is clicked
2350
+ */
2351
+ bhHelpClick: EventEmitter<CustomEvent<void>>;
2352
+ }
2353
+
2354
+
2355
+ @ProxyCmp({
2356
+ defineCustomElementFn: defineBhToggle,
2357
+ inputs: ['checked', 'defaultChecked', 'disabled', 'label', 'name', 'required', 'showText', 'size', 'supportingText', 'value']
2358
+ })
2359
+ @Component({
2360
+ selector: 'bh-toggle',
2361
+ changeDetection: ChangeDetectionStrategy.OnPush,
2362
+ template: '<ng-content></ng-content>',
2363
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
2364
+ inputs: ['checked', 'defaultChecked', 'disabled', 'label', 'name', 'required', 'showText', 'size', 'supportingText', 'value'],
2365
+ outputs: ['bhChange'],
2366
+ })
2367
+ export class BhToggle {
2368
+ protected el: HTMLBhToggleElement;
2369
+ @Output() bhChange = new EventEmitter<CustomEvent<boolean>>();
2370
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
2371
+ c.detach();
2372
+ this.el = r.nativeElement;
2373
+ }
2374
+ }
2375
+
2376
+
2377
+ export declare interface BhToggle extends Components.BhToggle {
2378
+ /**
2379
+ * Emitted when the toggle state changes
2380
+ */
2381
+ bhChange: EventEmitter<CustomEvent<boolean>>;
2382
+ }
2383
+
2384
+
2385
+ @ProxyCmp({
2386
+ defineCustomElementFn: defineBhTooltip,
2387
+ inputs: ['maxWidth', 'position', 'text', 'variant', 'visible']
2388
+ })
2389
+ @Component({
2390
+ selector: 'bh-tooltip',
2391
+ changeDetection: ChangeDetectionStrategy.OnPush,
2392
+ template: '<ng-content></ng-content>',
2393
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
2394
+ inputs: ['maxWidth', 'position', 'text', 'variant', 'visible'],
2395
+ })
2396
+ export class BhTooltip {
2397
+ protected el: HTMLBhTooltipElement;
2398
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
2399
+ c.detach();
2400
+ this.el = r.nativeElement;
2401
+ }
2402
+ }
2403
+
2404
+
2405
+ export declare interface BhTooltip extends Components.BhTooltip {}
2406
+
2407
+
2408
+ @ProxyCmp({
2409
+ defineCustomElementFn: defineBhTrendChart,
2410
+ inputs: ['animated', 'data', 'height', 'trend', 'variant', 'width']
2411
+ })
2412
+ @Component({
2413
+ selector: 'bh-trend-chart',
2414
+ changeDetection: ChangeDetectionStrategy.OnPush,
2415
+ template: '<ng-content></ng-content>',
2416
+ // eslint-disable-next-line @angular-eslint/no-inputs-metadata-property
2417
+ inputs: ['animated', 'data', 'height', 'trend', 'variant', 'width'],
2418
+ })
2419
+ export class BhTrendChart {
2420
+ protected el: HTMLBhTrendChartElement;
2421
+ constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) {
2422
+ c.detach();
2423
+ this.el = r.nativeElement;
2424
+ }
2425
+ }
2426
+
2427
+
2428
+ export declare interface BhTrendChart extends Components.BhTrendChart {}
2429
+
2430
+ ================
2431
+ File: src/lib/stencil-generated/index.ts
2432
+ ================
2433
+ import * as d from './components';
2434
+
2435
+ export const DIRECTIVES = [
2436
+ d.BhAccordion,
2437
+ d.BhAccordionItem,
2438
+ d.BhAppbar,
2439
+ d.BhAutocompleteMenu,
2440
+ d.BhAvatar,
2441
+ d.BhAvatarAdd,
2442
+ d.BhAvatarStacked,
2443
+ d.BhBadge,
2444
+ d.BhBadgeDot,
2445
+ d.BhBarChart,
2446
+ d.BhBreadcrumbs,
2447
+ d.BhButton,
2448
+ d.BhButtonIcon,
2449
+ d.BhCard,
2450
+ d.BhCardFooter,
2451
+ d.BhCardHeader,
2452
+ d.BhChartTooltip,
2453
+ d.BhCheckbox,
2454
+ d.BhCheckboxGroup,
2455
+ d.BhCheckboxGroupItem,
2456
+ d.BhDataGrid,
2457
+ d.BhDatePicker,
2458
+ d.BhDatePickerContent,
2459
+ d.BhDateRangePicker,
2460
+ d.BhDateRangePickerContent,
2461
+ d.BhDropdown,
2462
+ d.BhDropdownMenu,
2463
+ d.BhEmptyState,
2464
+ d.BhFeaturedIcon,
2465
+ d.BhIllustrations,
2466
+ d.BhInputAutocomplete,
2467
+ d.BhInputNumber,
2468
+ d.BhInputPassword,
2469
+ d.BhInputText,
2470
+ d.BhInputVerification,
2471
+ d.BhLabel,
2472
+ d.BhLoaderSpinner,
2473
+ d.BhLogoBox,
2474
+ d.BhModal,
2475
+ d.BhModalActions,
2476
+ d.BhModalHeader,
2477
+ d.BhMonthPicker,
2478
+ d.BhMonthPickerContent,
2479
+ d.BhNavItem,
2480
+ d.BhNotification,
2481
+ d.BhPageNavigation,
2482
+ d.BhPageNavigationChild,
2483
+ d.BhPageNavigationMultiLevel,
2484
+ d.BhPageNavigationSingleLevel,
2485
+ d.BhPagination,
2486
+ d.BhPickerMenu,
2487
+ d.BhPieChart,
2488
+ d.BhPopover,
2489
+ d.BhProductSwitcher,
2490
+ d.BhPropertySwitcher,
2491
+ d.BhRadioButton,
2492
+ d.BhSidebar,
2493
+ d.BhSkeletonLoader,
2494
+ d.BhTabItem,
2495
+ d.BhTabs,
2496
+ d.BhTag,
2497
+ d.BhTextarea,
2498
+ d.BhToggle,
2499
+ d.BhTooltip,
2500
+ d.BhTrendChart
2501
+ ];
2502
+
2503
+ ================
2504
+ File: src/lib/stencil-generated/number-value-accessor.ts
2505
+ ================
2506
+ import { Directive, ElementRef } from '@angular/core';
2507
+ import { NG_VALUE_ACCESSOR } from '@angular/forms';
2508
+
2509
+ import { ValueAccessor } from './value-accessor';
2510
+
2511
+ @Directive({
2512
+ /* tslint:disable-next-line:directive-selector */
2513
+ selector: 'bh-input-number',
2514
+ host: {
2515
+ '(bhInput)': 'handleChangeEvent($event.target?.["value"])'
2516
+ },
2517
+ providers: [
2518
+ {
2519
+ provide: NG_VALUE_ACCESSOR,
2520
+ useExisting: NumericValueAccessor,
2521
+ multi: true
2522
+ }
2523
+ ]
2524
+ })
2525
+ export class NumericValueAccessor extends ValueAccessor {
2526
+ constructor(el: ElementRef) {
2527
+ super(el);
2528
+ }
2529
+ override registerOnChange(fn: (_: number | null) => void) {
2530
+ super.registerOnChange(value => {
2531
+ fn(value === '' ? null : parseFloat(value));
2532
+ });
2533
+ }
2534
+ }
2535
+
2536
+ ================
2537
+ File: src/lib/stencil-generated/select-value-accessor.ts
2538
+ ================
2539
+ import { Directive, ElementRef } from '@angular/core';
2540
+ import { NG_VALUE_ACCESSOR } from '@angular/forms';
2541
+
2542
+ import { ValueAccessor } from './value-accessor';
2543
+
2544
+ @Directive({
2545
+ /* tslint:disable-next-line:directive-selector */
2546
+ selector: 'bh-radio-button',
2547
+ host: {
2548
+ '(bhChange)': 'handleChangeEvent($event.target?.["value"])'
2549
+ },
2550
+ providers: [
2551
+ {
2552
+ provide: NG_VALUE_ACCESSOR,
2553
+ useExisting: SelectValueAccessor,
2554
+ multi: true
2555
+ }
2556
+ ]
2557
+ })
2558
+ export class SelectValueAccessor extends ValueAccessor {
2559
+ constructor(el: ElementRef) {
2560
+ super(el);
2561
+ }
2562
+ }
2563
+
2564
+ ================
2565
+ File: src/lib/stencil-generated/text-value-accessor.ts
2566
+ ================
2567
+ import { Directive, ElementRef } from '@angular/core';
2568
+ import { NG_VALUE_ACCESSOR } from '@angular/forms';
2569
+
2570
+ import { ValueAccessor } from './value-accessor';
2571
+
2572
+ @Directive({
2573
+ /* tslint:disable-next-line:directive-selector */
2574
+ selector: 'bh-input-text, bh-input-password, bh-input-autocomplete, bh-textarea',
2575
+ host: {
2576
+ '(bhInput)': 'handleChangeEvent($event.target?.["value"])'
2577
+ },
2578
+ providers: [
2579
+ {
2580
+ provide: NG_VALUE_ACCESSOR,
2581
+ useExisting: TextValueAccessor,
2582
+ multi: true
2583
+ }
2584
+ ]
2585
+ })
2586
+ export class TextValueAccessor extends ValueAccessor {
2587
+ constructor(el: ElementRef) {
2588
+ super(el);
2589
+ }
2590
+ }
2591
+
2592
+ ================
2593
+ File: src/lib/stencil-generated/value-accessor.ts
2594
+ ================
2595
+ import { Directive, ElementRef, HostListener } from '@angular/core';
2596
+ import { ControlValueAccessor } from '@angular/forms';
2597
+
2598
+ @Directive({})
2599
+ export class ValueAccessor implements ControlValueAccessor {
2600
+
2601
+ private onChange: (value: any) => void = () => {/**/};
2602
+ private onTouched: () => void = () => {/**/};
2603
+ protected lastValue: any;
2604
+
2605
+ constructor(protected el: ElementRef) {}
2606
+
2607
+ writeValue(value: any) {
2608
+ this.el.nativeElement.value = this.lastValue = value == null ? '' : value;
2609
+ }
2610
+
2611
+ handleChangeEvent(value: any) {
2612
+ if (value !== this.lastValue) {
2613
+ this.lastValue = value;
2614
+ this.onChange(value);
2615
+ }
2616
+ }
2617
+
2618
+ @HostListener('focusout')
2619
+ _handleBlurEvent() {
2620
+ this.onTouched();
2621
+ }
2622
+
2623
+ registerOnChange(fn: (value: any) => void) {
2624
+ this.onChange = fn;
2625
+ }
2626
+ registerOnTouched(fn: () => void) {
2627
+ this.onTouched = fn;
2628
+ }
2629
+
2630
+ setDisabledState(isDisabled: boolean) {
2631
+ this.el.nativeElement.disabled = isDisabled;
2632
+ }
2633
+ }
2634
+
2635
+ ================
2636
+ File: src/index.ts
2637
+ ================
2638
+ export * from './lib/stencil-generated';
2639
+ export * from './lib/stencil-generated/components';
2640
+ export { BooleanValueAccessor } from './lib/stencil-generated/boolean-value-accessor';
2641
+ export { NumericValueAccessor } from './lib/stencil-generated/number-value-accessor';
2642
+ export { SelectValueAccessor } from './lib/stencil-generated/select-value-accessor';
2643
+ export { TextValueAccessor } from './lib/stencil-generated/text-value-accessor';
2644
+
2645
+ ================
2646
+ File: package.json
2647
+ ================
2648
+ {
2649
+ "name": "@actabldesign/bellhop-angular",
2650
+ "version": "0.0.6",
2651
+ "description": "Angular wrapper components for Bellhop Stencil web components",
2652
+ "main": "dist/index.js",
2653
+ "module": "dist/index.js",
2654
+ "types": "dist/index.d.ts",
2655
+ "repository": {
2656
+ "type": "git",
2657
+ "url": "git+https://github.com/actabldesign/bellhop.git",
2658
+ "directory": "packages/bellhop-angular"
2659
+ },
2660
+ "files": [
2661
+ "dist/",
2662
+ "llms.txt"
2663
+ ],
2664
+ "scripts": {
2665
+ "build": "ngc"
2666
+ },
2667
+ "dependencies": {
2668
+ "@actabldesign/bellhop-core": "file:../bellhop-core"
2669
+ },
2670
+ "peerDependencies": {
2671
+ "@angular/core": ">=19.0.0",
2672
+ "@angular/common": ">=19.0.0"
2673
+ },
2674
+ "devDependencies": {
2675
+ "@angular/compiler": "^20.0.0",
2676
+ "@angular/compiler-cli": "^20.0.0",
2677
+ "@angular/core": "^20.0.0",
2678
+ "@angular/common": "^20.0.0",
2679
+ "typescript": "^5.8.0",
2680
+ "zone.js": "^0.15.0",
2681
+ "rxjs": "^7.8.0"
2682
+ },
2683
+ "license": "MIT",
2684
+ "publishConfig": {
2685
+ "registry": "https://registry.npmjs.org/",
2686
+ "access": "public"
2687
+ }
2688
+ }
2689
+
2690
+ ================
2691
+ File: project.json
2692
+ ================
2693
+ {
2694
+ "name": "bellhop-angular",
2695
+ "$schema": "../../node_modules/nx/schemas/project-schema.json",
2696
+ "sourceRoot": "packages/bellhop-angular/src",
2697
+ "projectType": "library",
2698
+ "tags": ["scope:angular", "type:lib"],
2699
+ "targets": {
2700
+ "build": {
2701
+ "executor": "nx:run-commands",
2702
+ "dependsOn": ["^build"],
2703
+ "options": {
2704
+ "commands": [
2705
+ "npx ngc",
2706
+ "cp package.json dist/",
2707
+ "cp README.md dist/ 2>/dev/null || echo 'No README to copy'"
2708
+ ],
2709
+ "cwd": "packages/bellhop-angular",
2710
+ "parallel": false
2711
+ },
2712
+ "outputs": ["{projectRoot}/dist"]
2713
+ }
2714
+ },
2715
+ "implicitDependencies": ["bellhop-core"]
2716
+ }
2717
+
2718
+ ================
2719
+ File: README.md
2720
+ ================
2721
+ # @actabldesign/bellhop-angular
2722
+
2723
+ Angular wrapper components for the Bellhop design system. Provides Angular-friendly wrappers around the Stencil web components from `@actabldesign/bellhop-core`.
2724
+
2725
+ ## Installation
2726
+
2727
+ ```bash
2728
+ npm install @actabldesign/bellhop-angular @actabldesign/bellhop-core @actabldesign/bellhop-styles
2729
+ ```
2730
+
2731
+ ## Setup
2732
+
2733
+ ### 1. Register Custom Elements
2734
+
2735
+ In your `main.ts`:
2736
+
2737
+ ```typescript
2738
+ import { defineCustomElements } from '@actabldesign/bellhop-core/loader';
2739
+
2740
+ defineCustomElements();
2741
+ ```
2742
+
2743
+ ### 2. Import Styles
2744
+
2745
+ In your `src/styles.css`:
2746
+
2747
+ ```css
2748
+ @import '@actabldesign/bellhop-styles';
2749
+ ```
2750
+
2751
+ ### 3. Add Schema to Module/Component
2752
+
2753
+ For standalone components:
2754
+
2755
+ ```typescript
2756
+ import { Component } from '@angular/core';
2757
+ import { CUSTOM_ELEMENTS_SCHEMA } from '@angular/core';
2758
+
2759
+ @Component({
2760
+ selector: 'app-example',
2761
+ standalone: true,
2762
+ schemas: [CUSTOM_ELEMENTS_SCHEMA],
2763
+ template: `<bh-button label="Click Me" hierarchy="primary"></bh-button>`,
2764
+ })
2765
+ export class ExampleComponent {}
2766
+ ```
2767
+
2768
+ For NgModule-based apps:
2769
+
2770
+ ```typescript
2771
+ import { NgModule, CUSTOM_ELEMENTS_SCHEMA } from '@angular/core';
2772
+
2773
+ @NgModule({
2774
+ schemas: [CUSTOM_ELEMENTS_SCHEMA],
2775
+ })
2776
+ export class AppModule {}
2777
+ ```
2778
+
2779
+ ## Usage
2780
+
2781
+ ### Basic Example
2782
+
2783
+ ```html
2784
+ <bh-button
2785
+ label="Primary Button"
2786
+ hierarchy="primary"
2787
+ (bhClick)="handleClick($event)"
2788
+ ></bh-button>
2789
+ ```
2790
+
2791
+ ### Form Inputs
2792
+
2793
+ ```html
2794
+ <bh-input-text
2795
+ label="Email"
2796
+ placeholder="Enter your email"
2797
+ [value]="email"
2798
+ (bhInput)="onEmailChange($event)"
2799
+ ></bh-input-text>
2800
+
2801
+ <bh-dropdown
2802
+ label="Select an option"
2803
+ [options]="options"
2804
+ (bhChange)="onOptionSelect($event)"
2805
+ ></bh-dropdown>
2806
+
2807
+ <bh-checkbox
2808
+ label="Accept terms"
2809
+ [checked]="accepted"
2810
+ (bhChange)="onAcceptChange($event)"
2811
+ ></bh-checkbox>
2812
+ ```
2813
+
2814
+ ### Cards and Layout
2815
+
2816
+ ```html
2817
+ <bh-card>
2818
+ <bh-card-header>
2819
+ <span slot="title">Card Title</span>
2820
+ <span slot="subtitle">Card subtitle</span>
2821
+ </bh-card-header>
2822
+
2823
+ <p>Card content goes here</p>
2824
+
2825
+ <bh-card-footer>
2826
+ <bh-button label="Cancel" hierarchy="tertiary"></bh-button>
2827
+ <bh-button label="Save" hierarchy="primary"></bh-button>
2828
+ </bh-card-footer>
2829
+ </bh-card>
2830
+ ```
2831
+
2832
+ ### Modal Dialog
2833
+
2834
+ ```html
2835
+ <bh-modal [open]="isModalOpen" (bhClose)="closeModal()">
2836
+ <bh-modal-header>
2837
+ <span slot="title">Confirm Action</span>
2838
+ </bh-modal-header>
2839
+
2840
+ <p>Are you sure you want to proceed?</p>
2841
+
2842
+ <bh-modal-actions>
2843
+ <bh-button
2844
+ label="Cancel"
2845
+ hierarchy="secondary"
2846
+ (bhClick)="closeModal()"
2847
+ ></bh-button>
2848
+ <bh-button
2849
+ label="Confirm"
2850
+ hierarchy="primary"
2851
+ (bhClick)="confirm()"
2852
+ ></bh-button>
2853
+ </bh-modal-actions>
2854
+ </bh-modal>
2855
+ ```
2856
+
2857
+ ### Data Display
2858
+
2859
+ ```html
2860
+ <bh-badge label="New" color="primary"></bh-badge>
2861
+
2862
+ <bh-tag label="Category" [removable]="true" (bhRemove)="removeTag()"></bh-tag>
2863
+
2864
+ <bh-avatar name="John Doe" size="md"></bh-avatar>
2865
+ ```
2866
+
2867
+ ## Event Handling
2868
+
2869
+ All Bellhop events use the `bh` prefix. In Angular templates, bind to these using the standard event syntax:
2870
+
2871
+ ```html
2872
+ <!-- Button click -->
2873
+ <bh-button (bhClick)="handleClick($event)"></bh-button>
2874
+
2875
+ <!-- Input change -->
2876
+ <bh-input-text
2877
+ (bhInput)="handleInput($event)"
2878
+ (bhChange)="handleChange($event)"
2879
+ ></bh-input-text>
2880
+
2881
+ <!-- Dropdown selection -->
2882
+ <bh-dropdown (bhChange)="handleSelect($event)"></bh-dropdown>
2883
+
2884
+ <!-- Modal close -->
2885
+ <bh-modal (bhClose)="handleClose()"></bh-modal>
2886
+ ```
2887
+
2888
+ ## Available Components
2889
+
2890
+ All components from `@actabldesign/bellhop-core` are available. Key components include:
2891
+
2892
+ **Layout**: `bh-appbar`, `bh-sidebar`, `bh-card`, `bh-modal`, `bh-accordion`, `bh-tabs`
2893
+
2894
+ **Forms**: `bh-button`, `bh-input-text`, `bh-input-password`, `bh-input-number`, `bh-textarea`, `bh-checkbox`, `bh-radio-button`, `bh-toggle`, `bh-dropdown`
2895
+
2896
+ **Date/Time**: `bh-date-picker`, `bh-date-range-picker`, `bh-month-picker`
2897
+
2898
+ **Data Display**: `bh-data-grid`, `bh-badge`, `bh-tag`, `bh-avatar`, `bh-tooltip`
2899
+
2900
+ **Feedback**: `bh-notification`, `bh-loader-spinner`, `bh-empty-state`, `bh-skeleton-loader`
2901
+
2902
+ **Navigation**: `bh-breadcrumbs`, `bh-page-navigation`, `bh-pagination`
2903
+
2904
+ **Charts**: `bh-bar-chart`, `bh-pie-chart`, `bh-trend-chart`
2905
+
2906
+ See the [bellhop-core README](../bellhop-core/README.md) for the complete component list.
2907
+
2908
+ ## Compatibility
2909
+
2910
+ - Angular 19+
2911
+ - Works with both standalone components and NgModule-based apps
2912
+
2913
+ ## Related Packages
2914
+
2915
+ - `@actabldesign/bellhop-core` - Web Components (StencilJS)
2916
+ - `@actabldesign/bellhop-react` - React component wrappers
2917
+ - `@actabldesign/bellhop-styles` - CSS styles and design tokens
2918
+ - `@actabldesign/bellhop-assets` - SVG icons, illustrations, logos
2919
+
2920
+ ## License
2921
+
2922
+ MIT
2923
+
2924
+ ================
2925
+ File: tsconfig.json
2926
+ ================
2927
+ {
2928
+ "compilerOptions": {
2929
+ "target": "ES2022",
2930
+ "module": "ES2022",
2931
+ "moduleResolution": "node",
2932
+ "lib": ["ES2022", "DOM"],
2933
+ "declaration": true,
2934
+ "declarationMap": true,
2935
+ "sourceMap": true,
2936
+ "outDir": "./dist",
2937
+ "rootDir": "./src",
2938
+ "strict": true,
2939
+ "esModuleInterop": true,
2940
+ "skipLibCheck": true,
2941
+ "forceConsistentCasingInFileNames": true,
2942
+ "experimentalDecorators": true,
2943
+ "emitDecoratorMetadata": true,
2944
+ "useDefineForClassFields": false,
2945
+ "baseUrl": ".",
2946
+ "paths": {
2947
+ "@actabldesign/bellhop-core": ["../bellhop-core/dist/types"],
2948
+ "@actabldesign/bellhop-core/components": ["../bellhop-core/dist/types/components.d.ts"],
2949
+ "@actabldesign/bellhop-core/components/*": ["../bellhop-core/components/*"]
2950
+ },
2951
+ "types": []
2952
+ },
2953
+ "angularCompilerOptions": {
2954
+ "compilationMode": "partial",
2955
+ "strictInjectionParameters": true,
2956
+ "strictInputAccessModifiers": true,
2957
+ "strictTemplates": true
2958
+ },
2959
+ "include": ["src/**/*.ts", "../bellhop-core/dist/types/components.d.ts"],
2960
+ "exclude": ["node_modules", "dist", "**/*.spec.ts"]
2961
+ }
2962
+
2963
+
2964
+
2965
+
2966
+
2967
+ ================================================================
2968
+ End of Codebase
2969
+ ================================================================