@koobiq/components 18.33.0 → 18.35.0
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/actions-panel/actions-panel-config.d.ts +4 -3
- package/actions-panel/actions-panel-container.scss +0 -6
- package/actions-panel/actions-panel-ref.d.ts +13 -0
- package/actions-panel/actions-panel.d.ts +1 -7
- package/button/_button-theme.scss +1 -0
- package/clamped-text/clamped-text.d.ts +61 -0
- package/clamped-text/clamped-text.scss +17 -0
- package/clamped-text/constants.d.ts +14 -0
- package/clamped-text/index.d.ts +3 -0
- package/clamped-text/module.d.ts +7 -0
- package/content-panel/content-panel-aside.scss +9 -0
- package/content-panel/content-panel-body.scss +9 -0
- package/content-panel/content-panel-container.scss +32 -0
- package/content-panel/content-panel-footer.scss +5 -0
- package/content-panel/content-panel-header.scss +30 -0
- package/content-panel/content-panel-tokens.scss +9 -0
- package/content-panel/content-panel.d.ts +149 -0
- package/content-panel/content-panel.scss +25 -0
- package/content-panel/index.d.ts +3 -0
- package/content-panel/module.d.ts +7 -0
- package/content-panel/resizable.d.ts +70 -0
- package/core/form-field/field-sizing-content.d.ts +21 -0
- package/core/form-field/index.d.ts +1 -0
- package/core/locales/en-US.d.ts +10 -0
- package/core/locales/es-LA.d.ts +10 -0
- package/core/locales/fa-IR.d.ts +10 -0
- package/core/locales/locale-service.d.ts +70 -0
- package/core/locales/pt-BR.d.ts +10 -0
- package/core/locales/ru-RU.d.ts +10 -0
- package/core/locales/tk-TM.d.ts +10 -0
- package/core/locales/types.d.ts +5 -0
- package/core/locales/zh-CN.d.ts +10 -0
- package/core/navbar/index.d.ts +1 -0
- package/core/navbar/rectangle-item.d.ts +14 -0
- package/core/option/option.d.ts +3 -1
- package/core/pop-up/pop-up-trigger.d.ts +2 -0
- package/core/public-api.d.ts +1 -0
- package/core/styles/common/_select.scss +6 -3
- package/core/utils/dom.d.ts +9 -0
- package/core/utils/index.d.ts +1 -0
- package/core/utils/utils.d.ts +4 -0
- package/datepicker/calendar.component.d.ts +1 -1
- package/datepicker/datepicker-input.directive.d.ts +19 -8
- package/datepicker/datepicker-toggle.component.d.ts +1 -1
- package/datepicker/datepicker.component.d.ts +2 -2
- package/dropdown/dropdown-item.scss +1 -0
- package/dropdown/dropdown-trigger.directive.d.ts +7 -1
- package/dynamic-translation/dynamic-translation.d.ts +72 -0
- package/dynamic-translation/index.d.ts +2 -0
- package/dynamic-translation/module.d.ts +7 -0
- package/esm2022/actions-panel/actions-panel-config.mjs +1 -1
- package/esm2022/actions-panel/actions-panel-container.mjs +7 -7
- package/esm2022/actions-panel/actions-panel-ref.mjs +17 -1
- package/esm2022/actions-panel/actions-panel.mjs +34 -24
- package/esm2022/breadcrumbs/breadcrumbs.mjs +2 -2
- package/esm2022/button/button.component.mjs +2 -2
- package/esm2022/button-toggle/button-toggle.component.mjs +9 -9
- package/esm2022/clamped-text/clamped-text.mjs +202 -0
- package/esm2022/clamped-text/constants.mjs +20 -0
- package/esm2022/clamped-text/index.mjs +4 -0
- package/esm2022/clamped-text/koobiq-components-clamped-text.mjs +5 -0
- package/esm2022/clamped-text/module.mjs +19 -0
- package/esm2022/content-panel/content-panel.mjs +432 -0
- package/esm2022/content-panel/index.mjs +4 -0
- package/esm2022/content-panel/koobiq-components-content-panel.mjs +5 -0
- package/esm2022/content-panel/module.mjs +42 -0
- package/esm2022/content-panel/resizable.mjs +138 -0
- package/esm2022/core/form-field/field-sizing-content.mjs +114 -0
- package/esm2022/core/form-field/index.mjs +2 -1
- package/esm2022/core/locales/en-US.mjs +11 -1
- package/esm2022/core/locales/es-LA.mjs +11 -1
- package/esm2022/core/locales/fa-IR.mjs +11 -1
- package/esm2022/core/locales/pt-BR.mjs +11 -1
- package/esm2022/core/locales/ru-RU.mjs +11 -1
- package/esm2022/core/locales/tk-TM.mjs +11 -1
- package/esm2022/core/locales/types.mjs +1 -1
- package/esm2022/core/locales/zh-CN.mjs +11 -1
- package/esm2022/core/navbar/index.mjs +2 -0
- package/esm2022/core/navbar/rectangle-item.mjs +39 -0
- package/esm2022/core/option/option.mjs +8 -4
- package/esm2022/core/pop-up/pop-up-trigger.mjs +5 -1
- package/esm2022/core/public-api.mjs +2 -1
- package/esm2022/core/utils/dom.mjs +14 -0
- package/esm2022/core/utils/index.mjs +2 -1
- package/esm2022/core/utils/utils.mjs +9 -1
- package/esm2022/core/version.mjs +2 -2
- package/esm2022/datepicker/calendar-header.component.mjs +6 -3
- package/esm2022/datepicker/calendar.component.mjs +9 -9
- package/esm2022/datepicker/datepicker-input.directive.mjs +24 -21
- package/esm2022/datepicker/datepicker-toggle.component.mjs +8 -8
- package/esm2022/datepicker/datepicker.component.mjs +3 -3
- package/esm2022/dropdown/dropdown-item.component.mjs +2 -2
- package/esm2022/dropdown/dropdown-trigger.directive.mjs +30 -10
- package/esm2022/dropdown/dropdown.component.mjs +3 -3
- package/esm2022/dynamic-translation/dynamic-translation.mjs +175 -0
- package/esm2022/dynamic-translation/index.mjs +3 -0
- package/esm2022/dynamic-translation/koobiq-components-dynamic-translation.mjs +5 -0
- package/esm2022/dynamic-translation/module.mjs +25 -0
- package/esm2022/file-upload/file-drop.mjs +1 -1
- package/esm2022/file-upload/file-upload.mjs +6 -1
- package/esm2022/file-upload/multiple-file-upload.component.mjs +21 -16
- package/esm2022/file-upload/single-file-upload.component.mjs +23 -16
- package/esm2022/filter-bar/filter-bar.mjs +3 -3
- package/esm2022/filter-bar/filter-refresher.mjs +5 -5
- package/esm2022/filter-bar/filter-reset.mjs +3 -3
- package/esm2022/filter-bar/filter-search.mjs +11 -11
- package/esm2022/filter-bar/filters.mjs +16 -4
- package/esm2022/filter-bar/pipe-add.mjs +6 -6
- package/esm2022/filter-bar/pipes/base-pipe.mjs +2 -2
- package/esm2022/filter-bar/pipes/pipe-button.mjs +7 -7
- package/esm2022/filter-bar/pipes/pipe-date.mjs +10 -2
- package/esm2022/filter-bar/pipes/pipe-datetime.mjs +10 -2
- package/esm2022/filter-bar/pipes/pipe-multi-select.mjs +11 -17
- package/esm2022/filter-bar/pipes/pipe-multi-tree-select.mjs +10 -9
- package/esm2022/filter-bar/pipes/pipe-readonly.mjs +7 -7
- package/esm2022/filter-bar/pipes/pipe-select.mjs +3 -4
- package/esm2022/filter-bar/pipes/pipe-text.mjs +9 -3
- package/esm2022/filter-bar/pipes/pipe-tree-select.mjs +9 -3
- package/esm2022/form-field/cleaner.mjs +16 -11
- package/esm2022/form-field/fieldset.mjs +2 -2
- package/esm2022/form-field/form-field.mjs +5 -5
- package/esm2022/form-field/password-hint.mjs +14 -3
- package/esm2022/form-field/password-toggle.mjs +45 -10
- package/esm2022/form-field/reactive-password-hint.mjs +18 -17
- package/esm2022/form-field/stepper.mjs +9 -9
- package/esm2022/icon/icon-button.component.mjs +2 -2
- package/esm2022/input/input-number.mjs +15 -10
- package/esm2022/markdown/markdown.component.mjs +3 -3
- package/esm2022/modal/modal.component.mjs +14 -14
- package/esm2022/modal/modal.directive.mjs +7 -5
- package/esm2022/navbar/navbar-item.component.mjs +3 -3
- package/esm2022/navbar-ic/index.mjs +2 -0
- package/esm2022/navbar-ic/koobiq-components-navbar-ic.mjs +5 -0
- package/esm2022/navbar-ic/navbar-ic-header.mjs +58 -0
- package/esm2022/navbar-ic/navbar-ic-item.mjs +399 -0
- package/esm2022/navbar-ic/navbar-ic.animation.mjs +9 -0
- package/esm2022/navbar-ic/navbar-ic.mjs +281 -0
- package/esm2022/navbar-ic/navbar-ic.module.mjs +74 -0
- package/esm2022/navbar-ic/public-api.mjs +5 -0
- package/esm2022/popover/popover-confirm.component.mjs +3 -3
- package/esm2022/popover/popover.component.mjs +10 -5
- package/esm2022/scrollbar/scrollbar.component.mjs +5 -5
- package/esm2022/select/select.component.mjs +24 -11
- package/esm2022/sidebar/sidebar.component.mjs +46 -27
- package/esm2022/sidepanel/sidepanel-container.component.mjs +15 -4
- package/esm2022/sidepanel/sidepanel-directives.mjs +5 -5
- package/esm2022/sidepanel/sidepanel-ref.mjs +8 -6
- package/esm2022/splitter/splitter.component.mjs +1 -1
- package/esm2022/tabs/tab-body.component.mjs +3 -3
- package/esm2022/tabs/tab-group.component.mjs +27 -27
- package/esm2022/tabs/tab.component.mjs +4 -4
- package/esm2022/tags/tag-input.mjs +2 -2
- package/esm2022/tags/tag-list.component.mjs +36 -17
- package/esm2022/tags/tag.component.mjs +231 -22
- package/esm2022/tags/tag.module.mjs +16 -6
- package/esm2022/textarea/textarea.component.mjs +6 -4
- package/esm2022/timepicker/timepicker.directive.mjs +1 -1
- package/esm2022/timezone/timezone-select.component.mjs +3 -3
- package/esm2022/tooltip/tooltip.component.mjs +3 -3
- package/esm2022/tree/tree-selection.component.mjs +4 -4
- package/esm2022/tree-select/tree-select.component.mjs +11 -9
- package/esm2022/username/constants.mjs +25 -0
- package/esm2022/username/index.mjs +6 -0
- package/esm2022/username/koobiq-components-username.mjs +5 -0
- package/esm2022/username/module.mjs +35 -0
- package/esm2022/username/types.mjs +32 -0
- package/esm2022/username/username.mjs +129 -0
- package/esm2022/username/username.pipe.mjs +92 -0
- package/fesm2022/koobiq-components-actions-panel.mjs +56 -31
- package/fesm2022/koobiq-components-actions-panel.mjs.map +1 -1
- package/fesm2022/koobiq-components-breadcrumbs.mjs +1 -1
- package/fesm2022/koobiq-components-breadcrumbs.mjs.map +1 -1
- package/fesm2022/koobiq-components-button-toggle.mjs +8 -8
- package/fesm2022/koobiq-components-button-toggle.mjs.map +1 -1
- package/fesm2022/koobiq-components-button.mjs +2 -2
- package/fesm2022/koobiq-components-button.mjs.map +1 -1
- package/fesm2022/koobiq-components-clamped-text.mjs +242 -0
- package/fesm2022/koobiq-components-clamped-text.mjs.map +1 -0
- package/fesm2022/koobiq-components-content-panel.mjs +612 -0
- package/fesm2022/koobiq-components-content-panel.mjs.map +1 -0
- package/fesm2022/koobiq-components-core.mjs +271 -31
- package/fesm2022/koobiq-components-core.mjs.map +1 -1
- package/fesm2022/koobiq-components-datepicker.mjs +45 -40
- package/fesm2022/koobiq-components-datepicker.mjs.map +1 -1
- package/fesm2022/koobiq-components-dropdown.mjs +33 -13
- package/fesm2022/koobiq-components-dropdown.mjs.map +1 -1
- package/fesm2022/koobiq-components-dynamic-translation.mjs +204 -0
- package/fesm2022/koobiq-components-dynamic-translation.mjs.map +1 -0
- package/fesm2022/koobiq-components-file-upload.mjs +44 -27
- package/fesm2022/koobiq-components-file-upload.mjs.map +1 -1
- package/fesm2022/koobiq-components-filter-bar.mjs +100 -71
- package/fesm2022/koobiq-components-filter-bar.mjs.map +1 -1
- package/fesm2022/koobiq-components-form-field.mjs +100 -49
- package/fesm2022/koobiq-components-form-field.mjs.map +1 -1
- package/fesm2022/koobiq-components-icon.mjs +2 -2
- package/fesm2022/koobiq-components-icon.mjs.map +1 -1
- package/fesm2022/koobiq-components-input.mjs +14 -9
- package/fesm2022/koobiq-components-input.mjs.map +1 -1
- package/fesm2022/koobiq-components-markdown.mjs +2 -2
- package/fesm2022/koobiq-components-markdown.mjs.map +1 -1
- package/fesm2022/koobiq-components-modal.mjs +19 -17
- package/fesm2022/koobiq-components-modal.mjs.map +1 -1
- package/fesm2022/koobiq-components-navbar-ic.mjs +800 -0
- package/fesm2022/koobiq-components-navbar-ic.mjs.map +1 -0
- package/fesm2022/koobiq-components-navbar.mjs +2 -2
- package/fesm2022/koobiq-components-navbar.mjs.map +1 -1
- package/fesm2022/koobiq-components-popover.mjs +11 -6
- package/fesm2022/koobiq-components-popover.mjs.map +1 -1
- package/fesm2022/koobiq-components-scrollbar.mjs +4 -4
- package/fesm2022/koobiq-components-scrollbar.mjs.map +1 -1
- package/fesm2022/koobiq-components-select.mjs +23 -10
- package/fesm2022/koobiq-components-select.mjs.map +1 -1
- package/fesm2022/koobiq-components-sidebar.mjs +45 -26
- package/fesm2022/koobiq-components-sidebar.mjs.map +1 -1
- package/fesm2022/koobiq-components-sidepanel.mjs +24 -12
- package/fesm2022/koobiq-components-sidepanel.mjs.map +1 -1
- package/fesm2022/koobiq-components-splitter.mjs.map +1 -1
- package/fesm2022/koobiq-components-tabs.mjs +31 -31
- package/fesm2022/koobiq-components-tabs.mjs.map +1 -1
- package/fesm2022/koobiq-components-tags.mjs +284 -47
- package/fesm2022/koobiq-components-tags.mjs.map +1 -1
- package/fesm2022/koobiq-components-textarea.mjs +5 -3
- package/fesm2022/koobiq-components-textarea.mjs.map +1 -1
- package/fesm2022/koobiq-components-timepicker.mjs.map +1 -1
- package/fesm2022/koobiq-components-timezone.mjs +2 -2
- package/fesm2022/koobiq-components-timezone.mjs.map +1 -1
- package/fesm2022/koobiq-components-tooltip.mjs +2 -2
- package/fesm2022/koobiq-components-tooltip.mjs.map +1 -1
- package/fesm2022/koobiq-components-tree-select.mjs +10 -8
- package/fesm2022/koobiq-components-tree-select.mjs.map +1 -1
- package/fesm2022/koobiq-components-tree.mjs +3 -3
- package/fesm2022/koobiq-components-tree.mjs.map +1 -1
- package/fesm2022/koobiq-components-username.mjs +308 -0
- package/fesm2022/koobiq-components-username.mjs.map +1 -0
- package/file-upload/_file-upload-theme.scss +1 -1
- package/file-upload/file-drop.d.ts +1 -1
- package/file-upload/file-upload.d.ts +5 -2
- package/file-upload/multiple-file-upload.component.d.ts +4 -2
- package/file-upload/single-file-upload.component.d.ts +5 -3
- package/filter-bar/_filter-bar-theme.scss +2 -2
- package/filter-bar/filters.d.ts +1 -0
- package/filter-bar/pipes/pipe-date.d.ts +3 -1
- package/filter-bar/pipes/pipe-datetime.d.ts +3 -1
- package/filter-bar/pipes/pipe-multi-select.d.ts +0 -1
- package/filter-bar/pipes/pipe-multi-tree-select.d.ts +3 -2
- package/filter-bar/pipes/pipe-select.d.ts +0 -1
- package/filter-bar/pipes/pipe-tree-select.d.ts +3 -2
- package/form-field/_form-field-theme.scss +27 -18
- package/form-field/cleaner.d.ts +4 -2
- package/form-field/cleaner.scss +6 -2
- package/form-field/form-field.scss +12 -2
- package/form-field/password-hint.d.ts +7 -0
- package/form-field/password-toggle.d.ts +23 -3
- package/form-field/password-toggle.scss +4 -8
- package/form-field/reactive-password-hint.d.ts +1 -0
- package/icon/_icon-button-theme.scss +8 -2
- package/modal/modal.component.d.ts +6 -6
- package/navbar-ic/_navbar-ic-theme.scss +81 -0
- package/navbar-ic/index.d.ts +1 -0
- package/navbar-ic/navbar-ic-divider.scss +7 -0
- package/navbar-ic/navbar-ic-header.d.ts +18 -0
- package/navbar-ic/navbar-ic-header.scss +53 -0
- package/navbar-ic/navbar-ic-item.d.ts +125 -0
- package/navbar-ic/navbar-ic-item.scss +96 -0
- package/navbar-ic/navbar-ic-tokens.scss +22 -0
- package/navbar-ic/navbar-ic.animation.d.ts +2 -0
- package/navbar-ic/navbar-ic.d.ts +103 -0
- package/navbar-ic/navbar-ic.module.d.ts +14 -0
- package/navbar-ic/navbar-ic.scss +32 -0
- package/navbar-ic/public-api.d.ts +4 -0
- package/package.json +34 -4
- package/popover/_popover-theme.scss +6 -2
- package/popover/popover-confirm.component.d.ts +1 -1
- package/popover/popover-tokens.scss +2 -0
- package/popover/popover.component.d.ts +6 -3
- package/prebuilt-themes/dark-theme.css +1 -1
- package/prebuilt-themes/light-theme.css +1 -1
- package/prebuilt-themes/theme.css +1 -1
- package/schematics/ng-add/index.js +4 -4
- package/scrollbar/scrollbar.component.d.ts +4 -4
- package/select/select.component.d.ts +14 -2
- package/sidebar/sidebar.component.d.ts +31 -5
- package/sidepanel/sidepanel-container.component.d.ts +9 -0
- package/sidepanel/sidepanel-ref.d.ts +3 -3
- package/splitter/splitter.component.d.ts +2 -2
- package/tabs/tab-group.component.d.ts +1 -1
- package/tabs/tab.component.d.ts +1 -1
- package/tags/_tag-theme.scss +10 -1
- package/tags/tag-input.d.ts +1 -1
- package/tags/tag-list.component.d.ts +11 -3
- package/tags/tag-list.scss +5 -0
- package/tags/tag.component.d.ts +78 -8
- package/tags/tag.module.d.ts +1 -1
- package/tags/tag.scss +18 -0
- package/textarea/textarea-tokens.scss +1 -1
- package/timepicker/timepicker.directive.d.ts +1 -1
- package/tooltip/_tooltip-theme.scss +9 -2
- package/tooltip/tooltip-tokens.scss +2 -0
- package/tooltip/tooltip.component.d.ts +2 -2
- package/tree/tree-selection.component.d.ts +1 -1
- package/tree-select/tree-select.component.d.ts +1 -1
- package/username/constants.d.ts +15 -0
- package/username/index.d.ts +5 -0
- package/username/module.d.ts +8 -0
- package/username/types.d.ts +62 -0
- package/username/username-tokens.scss +6 -0
- package/username/username.d.ts +68 -0
- package/username/username.pipe.d.ts +23 -0
- package/username/username.scss +107 -0
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { InjectionToken } from '@angular/core';
|
|
2
|
+
import { KbqUsernameFormatKey } from './types';
|
|
3
|
+
/** Default name format: Last name full, first and middle as initials. */
|
|
4
|
+
export const kbqDefaultFullNameFormatCustom = 'L f. m.';
|
|
5
|
+
/** Default name format: Last name full, first and middle as initials. */
|
|
6
|
+
export const kbqDefaultFullNameFormat = 'lf.m.';
|
|
7
|
+
/**
|
|
8
|
+
* Throws an error when no profile field mapping is provided to the username pipe.
|
|
9
|
+
* @docs-private
|
|
10
|
+
*/
|
|
11
|
+
export function KbqMappingMissingError() {
|
|
12
|
+
return new Error('KbqUsernamePipe: profile field mapping is required but was not provided.');
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Injection token for providing a global username format-to-profile mapping.
|
|
16
|
+
*/
|
|
17
|
+
export const KBQ_PROFILE_MAPPING = new InjectionToken('KBQ_PROFILE_MAPPING', {
|
|
18
|
+
factory: () => ({
|
|
19
|
+
[KbqUsernameFormatKey.FirstNameShort]: 'firstName',
|
|
20
|
+
[KbqUsernameFormatKey.MiddleNameShort]: 'middleName',
|
|
21
|
+
[KbqUsernameFormatKey.LastNameShort]: 'lastName',
|
|
22
|
+
[KbqUsernameFormatKey.Dot]: undefined
|
|
23
|
+
})
|
|
24
|
+
});
|
|
25
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3RhbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcGFja2FnZXMvY29tcG9uZW50cy91c2VybmFtZS9jb25zdGFudHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMvQyxPQUFPLEVBQXNFLG9CQUFvQixFQUFFLE1BQU0sU0FBUyxDQUFDO0FBRW5ILHlFQUF5RTtBQUN6RSxNQUFNLENBQUMsTUFBTSw4QkFBOEIsR0FBRyxTQUFTLENBQUM7QUFDeEQseUVBQXlFO0FBQ3pFLE1BQU0sQ0FBQyxNQUFNLHdCQUF3QixHQUFHLE9BQU8sQ0FBQztBQUVoRDs7O0dBR0c7QUFDSCxNQUFNLFVBQVUsc0JBQXNCO0lBQ2xDLE9BQU8sSUFBSSxLQUFLLENBQUMsMEVBQTBFLENBQUMsQ0FBQztBQUNqRyxDQUFDO0FBRUQ7O0dBRUc7QUFDSCxNQUFNLENBQUMsTUFBTSxtQkFBbUIsR0FBRyxJQUFJLGNBQWMsQ0FFbkQscUJBQXFCLEVBQUU7SUFDckIsT0FBTyxFQUFFLEdBQUcsRUFBRSxDQUNWLENBQUM7UUFDRyxDQUFDLG9CQUFvQixDQUFDLGNBQWMsQ0FBQyxFQUFFLFdBQVc7UUFDbEQsQ0FBQyxvQkFBb0IsQ0FBQyxlQUFlLENBQUMsRUFBRSxZQUFZO1FBQ3BELENBQUMsb0JBQW9CLENBQUMsYUFBYSxDQUFDLEVBQUUsVUFBVTtRQUNoRCxDQUFDLG9CQUFvQixDQUFDLEdBQUcsQ0FBQyxFQUFFLFNBQVM7S0FDeEMsQ0FBcUc7Q0FDN0csQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0aW9uVG9rZW4gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEticUZvcm1hdEtleVRvUHJvZmlsZU1hcHBpbmcsIEticUZvcm1hdEtleVRvUHJvZmlsZU1hcHBpbmdFeHRlbmRlZCwgS2JxVXNlcm5hbWVGb3JtYXRLZXkgfSBmcm9tICcuL3R5cGVzJztcblxuLyoqIERlZmF1bHQgbmFtZSBmb3JtYXQ6IExhc3QgbmFtZSBmdWxsLCBmaXJzdCBhbmQgbWlkZGxlIGFzIGluaXRpYWxzLiAqL1xuZXhwb3J0IGNvbnN0IGticURlZmF1bHRGdWxsTmFtZUZvcm1hdEN1c3RvbSA9ICdMIGYuIG0uJztcbi8qKiBEZWZhdWx0IG5hbWUgZm9ybWF0OiBMYXN0IG5hbWUgZnVsbCwgZmlyc3QgYW5kIG1pZGRsZSBhcyBpbml0aWFscy4gKi9cbmV4cG9ydCBjb25zdCBrYnFEZWZhdWx0RnVsbE5hbWVGb3JtYXQgPSAnbGYubS4nO1xuXG4vKipcbiAqIFRocm93cyBhbiBlcnJvciB3aGVuIG5vIHByb2ZpbGUgZmllbGQgbWFwcGluZyBpcyBwcm92aWRlZCB0byB0aGUgdXNlcm5hbWUgcGlwZS5cbiAqIEBkb2NzLXByaXZhdGVcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIEticU1hcHBpbmdNaXNzaW5nRXJyb3IoKSB7XG4gICAgcmV0dXJuIG5ldyBFcnJvcignS2JxVXNlcm5hbWVQaXBlOiBwcm9maWxlIGZpZWxkIG1hcHBpbmcgaXMgcmVxdWlyZWQgYnV0IHdhcyBub3QgcHJvdmlkZWQuJyk7XG59XG5cbi8qKlxuICogSW5qZWN0aW9uIHRva2VuIGZvciBwcm92aWRpbmcgYSBnbG9iYWwgdXNlcm5hbWUgZm9ybWF0LXRvLXByb2ZpbGUgbWFwcGluZy5cbiAqL1xuZXhwb3J0IGNvbnN0IEtCUV9QUk9GSUxFX01BUFBJTkcgPSBuZXcgSW5qZWN0aW9uVG9rZW48XG4gICAgS2JxRm9ybWF0S2V5VG9Qcm9maWxlTWFwcGluZyB8IEticUZvcm1hdEtleVRvUHJvZmlsZU1hcHBpbmdFeHRlbmRlZFxuPignS0JRX1BST0ZJTEVfTUFQUElORycsIHtcbiAgICBmYWN0b3J5OiAoKSA9PlxuICAgICAgICAoe1xuICAgICAgICAgICAgW0ticVVzZXJuYW1lRm9ybWF0S2V5LkZpcnN0TmFtZVNob3J0XTogJ2ZpcnN0TmFtZScsXG4gICAgICAgICAgICBbS2JxVXNlcm5hbWVGb3JtYXRLZXkuTWlkZGxlTmFtZVNob3J0XTogJ21pZGRsZU5hbWUnLFxuICAgICAgICAgICAgW0ticVVzZXJuYW1lRm9ybWF0S2V5Lkxhc3ROYW1lU2hvcnRdOiAnbGFzdE5hbWUnLFxuICAgICAgICAgICAgW0ticVVzZXJuYW1lRm9ybWF0S2V5LkRvdF06IHVuZGVmaW5lZFxuICAgICAgICB9KSBzYXRpc2ZpZXMgS2JxRm9ybWF0S2V5VG9Qcm9maWxlTWFwcGluZzx7IGZpcnN0TmFtZTogc3RyaW5nOyBtaWRkbGVOYW1lOiBzdHJpbmc7IGxhc3ROYW1lOiBzdHJpbmcgfT5cbn0pO1xuIl19
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export * from './constants';
|
|
2
|
+
export * from './module';
|
|
3
|
+
export * from './types';
|
|
4
|
+
export * from './username';
|
|
5
|
+
export * from './username.pipe';
|
|
6
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9jb21wb25lbnRzL3VzZXJuYW1lL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsYUFBYSxDQUFDO0FBQzVCLGNBQWMsVUFBVSxDQUFDO0FBQ3pCLGNBQWMsU0FBUyxDQUFDO0FBQ3hCLGNBQWMsWUFBWSxDQUFDO0FBQzNCLGNBQWMsaUJBQWlCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2NvbnN0YW50cyc7XG5leHBvcnQgKiBmcm9tICcuL21vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL3R5cGVzJztcbmV4cG9ydCAqIGZyb20gJy4vdXNlcm5hbWUnO1xuZXhwb3J0ICogZnJvbSAnLi91c2VybmFtZS5waXBlJztcbiJdfQ==
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Generated bundle index. Do not edit.
|
|
3
|
+
*/
|
|
4
|
+
export * from './index';
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia29vYmlxLWNvbXBvbmVudHMtdXNlcm5hbWUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9jb21wb25lbnRzL3VzZXJuYW1lL2tvb2JpcS1jb21wb25lbnRzLXVzZXJuYW1lLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxTQUFTLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vaW5kZXgnO1xuIl19
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { NgModule } from '@angular/core';
|
|
2
|
+
import { KbqUsername, KbqUsernameCustomView, KbqUsernamePrimary, KbqUsernameSecondary } from './username';
|
|
3
|
+
import { KbqUsernameCustomPipe, KbqUsernamePipe } from './username.pipe';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
const COMPONENTS = [
|
|
6
|
+
KbqUsername,
|
|
7
|
+
KbqUsernameCustomView,
|
|
8
|
+
KbqUsernamePrimary,
|
|
9
|
+
KbqUsernameSecondary,
|
|
10
|
+
KbqUsernameCustomPipe,
|
|
11
|
+
KbqUsernamePipe
|
|
12
|
+
];
|
|
13
|
+
export class KbqUsernameModule {
|
|
14
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: KbqUsernameModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
15
|
+
/** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: KbqUsernameModule, imports: [KbqUsername,
|
|
16
|
+
KbqUsernameCustomView,
|
|
17
|
+
KbqUsernamePrimary,
|
|
18
|
+
KbqUsernameSecondary,
|
|
19
|
+
KbqUsernameCustomPipe,
|
|
20
|
+
KbqUsernamePipe], exports: [KbqUsername,
|
|
21
|
+
KbqUsernameCustomView,
|
|
22
|
+
KbqUsernamePrimary,
|
|
23
|
+
KbqUsernameSecondary,
|
|
24
|
+
KbqUsernameCustomPipe,
|
|
25
|
+
KbqUsernamePipe] }); }
|
|
26
|
+
/** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: KbqUsernameModule, imports: [KbqUsername] }); }
|
|
27
|
+
}
|
|
28
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: KbqUsernameModule, decorators: [{
|
|
29
|
+
type: NgModule,
|
|
30
|
+
args: [{
|
|
31
|
+
imports: COMPONENTS,
|
|
32
|
+
exports: COMPONENTS
|
|
33
|
+
}]
|
|
34
|
+
}] });
|
|
35
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcGFja2FnZXMvY29tcG9uZW50cy91c2VybmFtZS9tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsV0FBVyxFQUFFLHFCQUFxQixFQUFFLGtCQUFrQixFQUFFLG9CQUFvQixFQUFFLE1BQU0sWUFBWSxDQUFDO0FBQzFHLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxlQUFlLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7QUFFekUsTUFBTSxVQUFVLEdBQUc7SUFDZixXQUFXO0lBQ1gscUJBQXFCO0lBQ3JCLGtCQUFrQjtJQUNsQixvQkFBb0I7SUFDcEIscUJBQXFCO0lBQ3JCLGVBQWU7Q0FDbEIsQ0FBQztBQU1GLE1BQU0sT0FBTyxpQkFBaUI7a0lBQWpCLGlCQUFpQjttSUFBakIsaUJBQWlCLFlBWjFCLFdBQVc7WUFDWCxxQkFBcUI7WUFDckIsa0JBQWtCO1lBQ2xCLG9CQUFvQjtZQUNwQixxQkFBcUI7WUFDckIsZUFBZSxhQUxmLFdBQVc7WUFDWCxxQkFBcUI7WUFDckIsa0JBQWtCO1lBQ2xCLG9CQUFvQjtZQUNwQixxQkFBcUI7WUFDckIsZUFBZTttSUFPTixpQkFBaUIsWUFaMUIsV0FBVzs7NEZBWUYsaUJBQWlCO2tCQUo3QixRQUFRO21CQUFDO29CQUNOLE9BQU8sRUFBRSxVQUFVO29CQUNuQixPQUFPLEVBQUUsVUFBVTtpQkFDdEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgS2JxVXNlcm5hbWUsIEticVVzZXJuYW1lQ3VzdG9tVmlldywgS2JxVXNlcm5hbWVQcmltYXJ5LCBLYnFVc2VybmFtZVNlY29uZGFyeSB9IGZyb20gJy4vdXNlcm5hbWUnO1xuaW1wb3J0IHsgS2JxVXNlcm5hbWVDdXN0b21QaXBlLCBLYnFVc2VybmFtZVBpcGUgfSBmcm9tICcuL3VzZXJuYW1lLnBpcGUnO1xuXG5jb25zdCBDT01QT05FTlRTID0gW1xuICAgIEticVVzZXJuYW1lLFxuICAgIEticVVzZXJuYW1lQ3VzdG9tVmlldyxcbiAgICBLYnFVc2VybmFtZVByaW1hcnksXG4gICAgS2JxVXNlcm5hbWVTZWNvbmRhcnksXG4gICAgS2JxVXNlcm5hbWVDdXN0b21QaXBlLFxuICAgIEticVVzZXJuYW1lUGlwZVxuXTtcblxuQE5nTW9kdWxlKHtcbiAgICBpbXBvcnRzOiBDT01QT05FTlRTLFxuICAgIGV4cG9ydHM6IENPTVBPTkVOVFNcbn0pXG5leHBvcnQgY2xhc3MgS2JxVXNlcm5hbWVNb2R1bGUge31cbiJdfQ==
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Keys for formatting username parts in short (initial) or full form.
|
|
3
|
+
*/
|
|
4
|
+
export var KbqUsernameFormatKey;
|
|
5
|
+
(function (KbqUsernameFormatKey) {
|
|
6
|
+
/**
|
|
7
|
+
* Short form of the first name (e.g., "John" → "J")
|
|
8
|
+
*/
|
|
9
|
+
KbqUsernameFormatKey["FirstNameShort"] = "f";
|
|
10
|
+
/**
|
|
11
|
+
* Full form of the first name (e.g., "John")
|
|
12
|
+
*/
|
|
13
|
+
KbqUsernameFormatKey["FirstNameFull"] = "F";
|
|
14
|
+
/**
|
|
15
|
+
* Short form of the middle name (e.g., "Henry" → "H")
|
|
16
|
+
*/
|
|
17
|
+
KbqUsernameFormatKey["MiddleNameShort"] = "m";
|
|
18
|
+
/**
|
|
19
|
+
* Full form of the middle name (e.g., "Henry")
|
|
20
|
+
*/
|
|
21
|
+
KbqUsernameFormatKey["MiddleNameFull"] = "M";
|
|
22
|
+
/**
|
|
23
|
+
* Short form of the last name (e.g., "Doe" → "D")
|
|
24
|
+
*/
|
|
25
|
+
KbqUsernameFormatKey["LastNameShort"] = "l";
|
|
26
|
+
/**
|
|
27
|
+
* Full form of the last name (e.g., "Doe")
|
|
28
|
+
*/
|
|
29
|
+
KbqUsernameFormatKey["LastNameFull"] = "L";
|
|
30
|
+
KbqUsernameFormatKey["Dot"] = ".";
|
|
31
|
+
})(KbqUsernameFormatKey || (KbqUsernameFormatKey = {}));
|
|
32
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9jb21wb25lbnRzL3VzZXJuYW1lL3R5cGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBQ0gsTUFBTSxDQUFOLElBQVksb0JBK0JYO0FBL0JELFdBQVksb0JBQW9CO0lBQzVCOztPQUVHO0lBQ0gsNENBQW9CLENBQUE7SUFFcEI7O09BRUc7SUFDSCwyQ0FBbUIsQ0FBQTtJQUVuQjs7T0FFRztJQUNILDZDQUFxQixDQUFBO0lBRXJCOztPQUVHO0lBQ0gsNENBQW9CLENBQUE7SUFFcEI7O09BRUc7SUFDSCwyQ0FBbUIsQ0FBQTtJQUVuQjs7T0FFRztJQUNILDBDQUFrQixDQUFBO0lBQ2xCLGlDQUFTLENBQUE7QUFDYixDQUFDLEVBL0JXLG9CQUFvQixLQUFwQixvQkFBb0IsUUErQi9CIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBLZXlzIGZvciBmb3JtYXR0aW5nIHVzZXJuYW1lIHBhcnRzIGluIHNob3J0IChpbml0aWFsKSBvciBmdWxsIGZvcm0uXG4gKi9cbmV4cG9ydCBlbnVtIEticVVzZXJuYW1lRm9ybWF0S2V5IHtcbiAgICAvKipcbiAgICAgKiBTaG9ydCBmb3JtIG9mIHRoZSBmaXJzdCBuYW1lIChlLmcuLCBcIkpvaG5cIiDihpIgXCJKXCIpXG4gICAgICovXG4gICAgRmlyc3ROYW1lU2hvcnQgPSAnZicsXG5cbiAgICAvKipcbiAgICAgKiBGdWxsIGZvcm0gb2YgdGhlIGZpcnN0IG5hbWUgKGUuZy4sIFwiSm9oblwiKVxuICAgICAqL1xuICAgIEZpcnN0TmFtZUZ1bGwgPSAnRicsXG5cbiAgICAvKipcbiAgICAgKiBTaG9ydCBmb3JtIG9mIHRoZSBtaWRkbGUgbmFtZSAoZS5nLiwgXCJIZW5yeVwiIOKGkiBcIkhcIilcbiAgICAgKi9cbiAgICBNaWRkbGVOYW1lU2hvcnQgPSAnbScsXG5cbiAgICAvKipcbiAgICAgKiBGdWxsIGZvcm0gb2YgdGhlIG1pZGRsZSBuYW1lIChlLmcuLCBcIkhlbnJ5XCIpXG4gICAgICovXG4gICAgTWlkZGxlTmFtZUZ1bGwgPSAnTScsXG5cbiAgICAvKipcbiAgICAgKiBTaG9ydCBmb3JtIG9mIHRoZSBsYXN0IG5hbWUgKGUuZy4sIFwiRG9lXCIg4oaSIFwiRFwiKVxuICAgICAqL1xuICAgIExhc3ROYW1lU2hvcnQgPSAnbCcsXG5cbiAgICAvKipcbiAgICAgKiBGdWxsIGZvcm0gb2YgdGhlIGxhc3QgbmFtZSAoZS5nLiwgXCJEb2VcIilcbiAgICAgKi9cbiAgICBMYXN0TmFtZUZ1bGwgPSAnTCcsXG4gICAgRG90ID0gJy4nXG59XG5cbi8qKlxuICogTWFwcyBlYWNoIGZvcm1hdCBrZXkgdG8gYSBwcm9wZXJ0eSBuYW1lIGluIHRoZSB1c2VyIHByb2ZpbGUgb2JqZWN0LlxuICogQWxsb3dzIGZsZXhpYmxlIGZvcm1hdHRpbmcgcmVnYXJkbGVzcyBvZiBwcm9maWxlIGZpZWxkIG5hbWVzLlxuICovXG5leHBvcnQgdHlwZSBLYnFGb3JtYXRLZXlUb1Byb2ZpbGVNYXBwaW5nPFQgPSBhbnk+ID0ge1xuICAgIFtrZXkgaW4gRXhjbHVkZTxcbiAgICAgICAgS2JxVXNlcm5hbWVGb3JtYXRLZXksXG4gICAgICAgIEticVVzZXJuYW1lRm9ybWF0S2V5LkZpcnN0TmFtZUZ1bGwgfCBLYnFVc2VybmFtZUZvcm1hdEtleS5NaWRkbGVOYW1lRnVsbCB8IEticVVzZXJuYW1lRm9ybWF0S2V5Lkxhc3ROYW1lRnVsbFxuICAgID5dOiBrZXlvZiBUIHwgdW5kZWZpbmVkO1xufTtcblxuLyoqXG4gKiBNYXBzIGVhY2ggZm9ybWF0IGtleSB0byBhIHByb3BlcnR5IG5hbWUgaW4gdGhlIHVzZXIgcHJvZmlsZSBvYmplY3QuXG4gKiBBbGxvd3MgZmxleGlibGUgZm9ybWF0dGluZyByZWdhcmRsZXNzIG9mIHByb2ZpbGUgZmllbGQgbmFtZXMuXG4gKiBAc2VlIEticVVzZXJuYW1lQ3VzdG9tUGlwZVxuICovXG5leHBvcnQgdHlwZSBLYnFGb3JtYXRLZXlUb1Byb2ZpbGVNYXBwaW5nRXh0ZW5kZWQ8VCA9IGFueT4gPSB7XG4gICAgW2tleSBpbiBLYnFVc2VybmFtZUZvcm1hdEtleV06IGtleW9mIFQgfCB1bmRlZmluZWQ7XG59O1xuXG4vKipcbiAqIExheW91dCBtb2RlIGZvciBkaXNwbGF5aW5nIGEgdXNlcm5hbWUgYW5kIGFwcGx5aW5nIHRleHQtZWxsaXBzaXMuXG4gKlxuICogLSBgc3RhY2tlZGA6IEVsZW1lbnRzIHNob3duIHZlcnRpY2FsbHkuXG4gKiAtIGBpbmxpbmVgOiBFbGVtZW50cyBzaG93biBpbiBvbmUgbGluZS4gVGV4dCBlbGxpcHNpcyBpcyBhcHBsaWVkIHRvIGJvdGggcGFydHMuXG4gKiAtIGB0ZXh0YDogUGxhaW4gdGV4dCwgbm8gbGF5b3V0IHN0eWxpbmcuIE5vIHRleHQtZWxsaXBzaXMuXG4gKi9cbmV4cG9ydCB0eXBlIEticVVzZXJuYW1lTW9kZSA9ICdzdGFja2VkJyB8ICdpbmxpbmUnIHwgJ3RleHQnO1xuXG4vKipcbiAqIFZpc3VhbCBzdHlsZSBvZiB0aGUgdXNlcm5hbWUuXG4gKlxuICogLSBgZGVmYXVsdGA6IHN0YW5kYXJkIHN0eWxpbmcgd2l0aCBwcmltYXJ5IGFuZCBzZWNvbmRhcnkgY29sb3JzLlxuICogLSBgZXJyb3JgOiBlcnJvciBjb2xvcnMgKGUuZy4sIHJlZCkuXG4gKiAtIGBhY2NlbnRlZGA6IG5vIGNvbG9yIHRoZW1pbmc7IGVtcGhhc2l6ZXMgdmlhIHR5cG9ncmFwaHkgb25seS5cbiAqIC0gYGluaGVyaXRgOiBpbmhlcml0cyBwYXJlbnQgc3R5bGVzLCBubyB0aGVtaW5nLiBGb3IgZXhhbXBsZSwgdXNlZnVsIHdoZW4gdXNpbmcgaW5zaWRlIGxpbmtzLlxuICovXG5leHBvcnQgdHlwZSBLYnFVc2VybmFtZVN0eWxlID0gJ2RlZmF1bHQnIHwgJ2Vycm9yJyB8ICdhY2NlbnRlZCcgfCAnaW5oZXJpdCc7XG4iXX0=
|
|
@@ -0,0 +1,129 @@
|
|
|
1
|
+
import { booleanAttribute, ChangeDetectionStrategy, Component, computed, contentChild, Directive, input, ViewEncapsulation } from '@angular/core';
|
|
2
|
+
import { KbqTitleModule } from '@koobiq/components/title';
|
|
3
|
+
import { kbqDefaultFullNameFormat } from './constants';
|
|
4
|
+
import { KbqUsernamePipe } from './username.pipe';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
import * as i1 from "@koobiq/components/title";
|
|
7
|
+
const baseClass = 'kbq-username';
|
|
8
|
+
/** Styles the primary part of the username (e.g. full name). */
|
|
9
|
+
export class KbqUsernamePrimary {
|
|
10
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: KbqUsernamePrimary, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
11
|
+
/** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", type: KbqUsernamePrimary, isStandalone: true, selector: "[kbqUsernamePrimary]", host: { classAttribute: "kbq-username__primary" }, exportAs: ["kbqUsernamePrimary"], ngImport: i0 }); }
|
|
12
|
+
}
|
|
13
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: KbqUsernamePrimary, decorators: [{
|
|
14
|
+
type: Directive,
|
|
15
|
+
args: [{
|
|
16
|
+
selector: '[kbqUsernamePrimary]',
|
|
17
|
+
exportAs: 'kbqUsernamePrimary',
|
|
18
|
+
standalone: true,
|
|
19
|
+
host: {
|
|
20
|
+
class: `${baseClass}__primary`
|
|
21
|
+
}
|
|
22
|
+
}]
|
|
23
|
+
}] });
|
|
24
|
+
/** Styles the secondary part. */
|
|
25
|
+
export class KbqUsernameSecondary {
|
|
26
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: KbqUsernameSecondary, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
27
|
+
/** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", type: KbqUsernameSecondary, isStandalone: true, selector: "[kbqUsernameSecondary]", host: { classAttribute: "kbq-username__secondary" }, exportAs: ["kbqUsernameSecondary"], ngImport: i0 }); }
|
|
28
|
+
}
|
|
29
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: KbqUsernameSecondary, decorators: [{
|
|
30
|
+
type: Directive,
|
|
31
|
+
args: [{
|
|
32
|
+
selector: '[kbqUsernameSecondary]',
|
|
33
|
+
exportAs: 'kbqUsernameSecondary',
|
|
34
|
+
standalone: true,
|
|
35
|
+
host: {
|
|
36
|
+
class: `${baseClass}__secondary`
|
|
37
|
+
}
|
|
38
|
+
}]
|
|
39
|
+
}] });
|
|
40
|
+
/** Styles a secondary hint. */
|
|
41
|
+
export class KbqUsernameSecondaryHint {
|
|
42
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: KbqUsernameSecondaryHint, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
43
|
+
/** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", type: KbqUsernameSecondaryHint, isStandalone: true, selector: "[kbqUsernameSecondaryHint]", host: { classAttribute: "kbq-username__secondary-hint" }, exportAs: ["kbqUsernameSecondaryHint"], ngImport: i0 }); }
|
|
44
|
+
}
|
|
45
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: KbqUsernameSecondaryHint, decorators: [{
|
|
46
|
+
type: Directive,
|
|
47
|
+
args: [{
|
|
48
|
+
selector: '[kbqUsernameSecondaryHint]',
|
|
49
|
+
exportAs: 'kbqUsernameSecondaryHint',
|
|
50
|
+
standalone: true,
|
|
51
|
+
host: {
|
|
52
|
+
class: `${baseClass}__secondary-hint`
|
|
53
|
+
}
|
|
54
|
+
}]
|
|
55
|
+
}] });
|
|
56
|
+
/** Custom content for `KbqUsername`, overrides default view. */
|
|
57
|
+
export class KbqUsernameCustomView {
|
|
58
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: KbqUsernameCustomView, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
59
|
+
/** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", type: KbqUsernameCustomView, isStandalone: true, selector: "kbq-username-custom-view, [kbq-username-custom-view]", host: { classAttribute: "kbq-username__custom-view" }, exportAs: ["kbqUsernameCustomView"], ngImport: i0 }); }
|
|
60
|
+
}
|
|
61
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: KbqUsernameCustomView, decorators: [{
|
|
62
|
+
type: Directive,
|
|
63
|
+
args: [{
|
|
64
|
+
selector: 'kbq-username-custom-view, [kbq-username-custom-view]',
|
|
65
|
+
standalone: true,
|
|
66
|
+
exportAs: 'kbqUsernameCustomView',
|
|
67
|
+
host: {
|
|
68
|
+
class: `${baseClass}__custom-view`
|
|
69
|
+
}
|
|
70
|
+
}]
|
|
71
|
+
}] });
|
|
72
|
+
/**
|
|
73
|
+
* Displays a user's name based on profile data.
|
|
74
|
+
* Supports different display modes and visual styles.
|
|
75
|
+
* A custom view can be provided via `<kbq-username-custom-view>` for full control over the output.
|
|
76
|
+
* Accepts input profile data and optional formatting options.
|
|
77
|
+
*/
|
|
78
|
+
export class KbqUsername {
|
|
79
|
+
constructor() {
|
|
80
|
+
/** User profile data used for display. */
|
|
81
|
+
this.userInfo = input();
|
|
82
|
+
/** Enables compact display mode */
|
|
83
|
+
this.isCompact = input(false, { transform: booleanAttribute });
|
|
84
|
+
/** Format string for rendering the user's full name. */
|
|
85
|
+
this.fullNameFormat = input(kbqDefaultFullNameFormat);
|
|
86
|
+
/**
|
|
87
|
+
* Display mode of the username.
|
|
88
|
+
* @default inline
|
|
89
|
+
*/
|
|
90
|
+
this.mode = input('inline');
|
|
91
|
+
/**
|
|
92
|
+
* Visual style of the username.
|
|
93
|
+
* @default default
|
|
94
|
+
*/
|
|
95
|
+
this.type = input('default');
|
|
96
|
+
/**
|
|
97
|
+
* Custom projected view for username rendering.
|
|
98
|
+
* @docs-private
|
|
99
|
+
*/
|
|
100
|
+
this.customView = contentChild(KbqUsernameCustomView);
|
|
101
|
+
/** @docs-private */
|
|
102
|
+
this.hasFullName = computed(() => {
|
|
103
|
+
const userInfo = this.userInfo();
|
|
104
|
+
if (!userInfo)
|
|
105
|
+
return false;
|
|
106
|
+
return userInfo?.lastName && userInfo?.firstName;
|
|
107
|
+
});
|
|
108
|
+
/** @docs-private */
|
|
109
|
+
this.class = computed(() => {
|
|
110
|
+
return [this.type(), this.mode()].map((modificator) => `${baseClass}_${modificator}`).join(' ');
|
|
111
|
+
});
|
|
112
|
+
}
|
|
113
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: KbqUsername, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
114
|
+
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: KbqUsername, isStandalone: true, selector: "kbq-username", inputs: { userInfo: { classPropertyName: "userInfo", publicName: "userInfo", isSignal: true, isRequired: false, transformFunction: null }, isCompact: { classPropertyName: "isCompact", publicName: "isCompact", isSignal: true, isRequired: false, transformFunction: null }, fullNameFormat: { classPropertyName: "fullNameFormat", publicName: "fullNameFormat", isSignal: true, isRequired: false, transformFunction: null }, mode: { classPropertyName: "mode", publicName: "mode", isSignal: true, isRequired: false, transformFunction: null }, type: { classPropertyName: "type", publicName: "type", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class": "class()" }, classAttribute: "kbq-username" }, queries: [{ propertyName: "customView", first: true, predicate: KbqUsernameCustomView, descendants: true, isSignal: true }], exportAs: ["kbqUsername"], ngImport: i0, template: "@let profile = userInfo();\n<ng-content select=\"kbq-username-custom-view,[kbq-username-custom-view]\" />\n\n@if (!customView() && profile) {\n @let fullName = profile | kbqUsername: fullNameFormat();\n\n @if (!isCompact()) {\n @if (hasFullName()) {\n <span kbq-title kbqUsernamePrimary>{{ fullName }}</span>\n }\n\n @if (profile.login) {\n <span kbq-title kbqUsernameSecondary>\n {{ profile.login }}\n\n @if (profile.site) {\n <span kbqUsernameSecondaryHint>({{ profile.site }})</span>\n }\n </span>\n }\n } @else {\n <span kbq-title kbqUsernamePrimary>\n @if (hasFullName()) {\n <span>{{ fullName }}</span>\n }\n @if (!hasFullName() && profile.login) {\n {{ profile.login }}\n }\n\n @if (profile.site) {\n <span kbqUsernameSecondaryHint> ({{ profile.site }})</span>\n }\n </span>\n }\n}\n", styles: ["@keyframes kbq-progress{0%{background-position:0 0}to{background-position:64px 0}}.kbq-progress{position:relative}.kbq-progress:after{content:\"\";position:absolute;border-radius:inherit;inset:0;background:linear-gradient(135deg,#0000000a 12px,#ffffff1a 12px 22px,#0000000a 22px 34px,#ffffff1a 34px) repeat;background-size:32px 32px;animation:kbq-progress 1s linear infinite}.kbq-group{display:flex;flex-direction:row}.kbq-group .kbq-group_justified>.kbq-group-item{width:100%}.kbq-group .kbq-group-item+.kbq-group-item{margin-left:calc(-1 * var(--kbq-size-border-width))}.kbq-group>.kbq-group-item:first-child:not(:last-child){border-bottom-right-radius:0;border-top-right-radius:0}.kbq-group>.kbq-group-item:first-child:not(:last-child)>.kbq-form-field__container{border-bottom-right-radius:0;border-top-right-radius:0}.kbq-group>.kbq-group-item:last-child:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0}.kbq-group>.kbq-group-item:last-child:not(:first-child)>.kbq-form-field__container{border-bottom-left-radius:0;border-top-left-radius:0}.kbq-group>.kbq-group-item:not(:first-child):not(:last-child){border-radius:0}.kbq-group>.kbq-group-item:not(:first-child):not(:last-child)>.kbq-form-field__container{border-radius:0}.kbq-vertical-group{display:flex;flex-direction:column}.kbq-vertical-group>.kbq-group-item:first-child:not(:last-child){border-bottom-right-radius:0;border-bottom-left-radius:0;border-top-right-radius:var(--kbq-size-border-radius)}.kbq-vertical-group>.kbq-group-item:first-child:not(:last-child)>.kbq-form-field__container{border-bottom-right-radius:0;border-bottom-left-radius:0}.kbq-vertical-group>.kbq-group-item:last-child:not(:first-child){border-top-right-radius:0;border-top-left-radius:0;border-bottom-left-radius:var(--kbq-size-border-radius)}.kbq-vertical-group>.kbq-group-item:last-child:not(:first-child)>.kbq-form-field__container{border-top-right-radius:0;border-top-left-radius:0}.kbq-vertical-group>.kbq-group-item:not(:first-child):not(:last-child){border-radius:0}.kbq-vertical-group>.kbq-group-item:not(:first-child):not(:last-child)>.kbq-form-field__container{border-radius:0}.kbq-vertical-group .kbq-group-item+.kbq-group-item{margin-top:calc(-1 * var(--kbq-size-border-width))}.kbq-truncate-line{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.kbq-no-select{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.kbq-username{color:var(--kbq-username-primary-color)}.kbq-username .kbq-username__secondary,.kbq-username .kbq-username__secondary-hint{color:var(--kbq-username-secondary-color)}.kbq-username.kbq-username_default .kbq-username__secondary-hint,.kbq-username.kbq-username_default .kbq-username__primary+.kbq-username__secondary{--kbq-username-secondary-color: var(--kbq-foreground-contrast-secondary)}.kbq-username.kbq-username_error{--kbq-username-primary-color: var(--kbq-foreground-error);--kbq-username-secondary-color: var(--kbq-foreground-error)}.kbq-username.kbq-username_accented{--kbq-username-primary-color: var(--kbq-foreground-contrast);--kbq-username-secondary-color: var(--kbq-foreground-contrast)}.kbq-username.kbq-username_inherit{--kbq-username-primary-color: inherit;--kbq-username-secondary-color: inherit}.kbq-username{font-size:var(--kbq-typography-text-normal-font-size);font-style:var(--kbq-typography-text-normal-font-style);font-weight:var(--kbq-typography-text-normal-font-weight);line-height:var(--kbq-typography-text-normal-line-height);font-family:var(--kbq-typography-text-normal-font-family);text-transform:var(--kbq-typography-text-normal-text-transform);font-feature-settings:var(--kbq-typography-text-normal-font-feature-settings);letter-spacing:var(--kbq-typography-text-normal-letter-spacing)}.kbq-username.kbq-username_accented .kbq-username__primary{font-size:var(--kbq-typography-text-normal-strong-font-size);font-style:var(--kbq-typography-text-normal-strong-font-style);font-weight:var(--kbq-typography-text-normal-strong-font-weight);line-height:var(--kbq-typography-text-normal-strong-line-height);font-family:var(--kbq-typography-text-normal-strong-font-family);text-transform:var(--kbq-typography-text-normal-strong-text-transform);font-feature-settings:var(--kbq-typography-text-normal-strong-font-feature-settings);letter-spacing:var(--kbq-typography-text-normal-strong-letter-spacing)}.kbq-username.kbq-username_stacked:not(:has(>.kbq-username__custom-view)),.kbq-username.kbq-username_stacked>.kbq-username__custom-view{display:flex;flex-flow:column nowrap;justify-content:flex-start;align-items:normal;gap:var(--kbq-username-vertical-gap)}.kbq-username.kbq-username_inline:not(.kbq-username_inherit):not(:has(>.kbq-username__custom-view)),.kbq-username.kbq-username_inline:not(.kbq-username_inherit)>.kbq-username__custom-view{display:flex;flex-flow:row nowrap;justify-content:flex-start;align-items:baseline}.kbq-username.kbq-username_inline:not(.kbq-username_inherit):not(:has(>.kbq-username__custom-view)) .kbq-username__primary+.kbq-username__secondary,.kbq-username.kbq-username_inline:not(.kbq-username_inherit)>.kbq-username__custom-view .kbq-username__primary+.kbq-username__secondary{margin-left:var(--kbq-username-horizontal-gap)}[dir=rtl] .kbq-username.kbq-username_inline:not(.kbq-username_inherit):not(:has(>.kbq-username__custom-view)) .kbq-username__primary+.kbq-username__secondary,[dir=rtl] .kbq-username.kbq-username_inline:not(.kbq-username_inherit)>.kbq-username__custom-view .kbq-username__primary+.kbq-username__secondary{margin-left:0;margin-right:var(--kbq-username-horizontal-gap)}.kbq-username.kbq-username_text:not(:has(>.kbq-username__custom-view)),.kbq-username.kbq-username_text>.kbq-username__custom-view{display:inline}.kbq-username.kbq-username_stacked:not(:has(>.kbq-username__custom-view)) .kbq-username__primary,.kbq-username.kbq-username_stacked:not(:has(>.kbq-username__custom-view)) .kbq-username__secondary,.kbq-username.kbq-username_stacked>.kbq-username__custom-view .kbq-username__primary,.kbq-username.kbq-username_stacked>.kbq-username__custom-view .kbq-username__secondary,.kbq-username.kbq-username_inline:not(:has(>.kbq-username__custom-view)) .kbq-username__primary,.kbq-username.kbq-username_inline:not(:has(>.kbq-username__custom-view)) .kbq-username__secondary,.kbq-username.kbq-username_inline>.kbq-username__custom-view .kbq-username__primary,.kbq-username.kbq-username_inline>.kbq-username__custom-view .kbq-username__secondary{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.kbq-username.kbq-username_inherit:not(:has(>.kbq-username__custom-view)),.kbq-username.kbq-username_inherit>.kbq-username__custom-view{font:inherit;display:inherit}\n", ":where(.kbq-username){--kbq-username-primary-color: var(--kbq-foreground-contrast);--kbq-username-secondary-color: inherit;--kbq-username-vertical-gap: var(--kbq-size-xxs);--kbq-username-horizontal-gap: var(--kbq-size-xxs)}\n"], dependencies: [{ kind: "ngmodule", type: KbqTitleModule }, { kind: "directive", type: i1.KbqTitleDirective, selector: "[kbq-title]", exportAs: ["kbqTitle"] }, { kind: "pipe", type: KbqUsernamePipe, name: "kbqUsername" }, { kind: "directive", type: KbqUsernamePrimary, selector: "[kbqUsernamePrimary]", exportAs: ["kbqUsernamePrimary"] }, { kind: "directive", type: KbqUsernameSecondary, selector: "[kbqUsernameSecondary]", exportAs: ["kbqUsernameSecondary"] }, { kind: "directive", type: KbqUsernameSecondaryHint, selector: "[kbqUsernameSecondaryHint]", exportAs: ["kbqUsernameSecondaryHint"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
115
|
+
}
|
|
116
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: KbqUsername, decorators: [{
|
|
117
|
+
type: Component,
|
|
118
|
+
args: [{ selector: 'kbq-username', standalone: true, exportAs: 'kbqUsername', imports: [
|
|
119
|
+
KbqTitleModule,
|
|
120
|
+
KbqUsernamePipe,
|
|
121
|
+
KbqUsernamePrimary,
|
|
122
|
+
KbqUsernameSecondary,
|
|
123
|
+
KbqUsernameSecondaryHint
|
|
124
|
+
], host: {
|
|
125
|
+
class: baseClass,
|
|
126
|
+
'[class]': 'class()'
|
|
127
|
+
}, encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "@let profile = userInfo();\n<ng-content select=\"kbq-username-custom-view,[kbq-username-custom-view]\" />\n\n@if (!customView() && profile) {\n @let fullName = profile | kbqUsername: fullNameFormat();\n\n @if (!isCompact()) {\n @if (hasFullName()) {\n <span kbq-title kbqUsernamePrimary>{{ fullName }}</span>\n }\n\n @if (profile.login) {\n <span kbq-title kbqUsernameSecondary>\n {{ profile.login }}\n\n @if (profile.site) {\n <span kbqUsernameSecondaryHint>({{ profile.site }})</span>\n }\n </span>\n }\n } @else {\n <span kbq-title kbqUsernamePrimary>\n @if (hasFullName()) {\n <span>{{ fullName }}</span>\n }\n @if (!hasFullName() && profile.login) {\n {{ profile.login }}\n }\n\n @if (profile.site) {\n <span kbqUsernameSecondaryHint> ({{ profile.site }})</span>\n }\n </span>\n }\n}\n", styles: ["@keyframes kbq-progress{0%{background-position:0 0}to{background-position:64px 0}}.kbq-progress{position:relative}.kbq-progress:after{content:\"\";position:absolute;border-radius:inherit;inset:0;background:linear-gradient(135deg,#0000000a 12px,#ffffff1a 12px 22px,#0000000a 22px 34px,#ffffff1a 34px) repeat;background-size:32px 32px;animation:kbq-progress 1s linear infinite}.kbq-group{display:flex;flex-direction:row}.kbq-group .kbq-group_justified>.kbq-group-item{width:100%}.kbq-group .kbq-group-item+.kbq-group-item{margin-left:calc(-1 * var(--kbq-size-border-width))}.kbq-group>.kbq-group-item:first-child:not(:last-child){border-bottom-right-radius:0;border-top-right-radius:0}.kbq-group>.kbq-group-item:first-child:not(:last-child)>.kbq-form-field__container{border-bottom-right-radius:0;border-top-right-radius:0}.kbq-group>.kbq-group-item:last-child:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0}.kbq-group>.kbq-group-item:last-child:not(:first-child)>.kbq-form-field__container{border-bottom-left-radius:0;border-top-left-radius:0}.kbq-group>.kbq-group-item:not(:first-child):not(:last-child){border-radius:0}.kbq-group>.kbq-group-item:not(:first-child):not(:last-child)>.kbq-form-field__container{border-radius:0}.kbq-vertical-group{display:flex;flex-direction:column}.kbq-vertical-group>.kbq-group-item:first-child:not(:last-child){border-bottom-right-radius:0;border-bottom-left-radius:0;border-top-right-radius:var(--kbq-size-border-radius)}.kbq-vertical-group>.kbq-group-item:first-child:not(:last-child)>.kbq-form-field__container{border-bottom-right-radius:0;border-bottom-left-radius:0}.kbq-vertical-group>.kbq-group-item:last-child:not(:first-child){border-top-right-radius:0;border-top-left-radius:0;border-bottom-left-radius:var(--kbq-size-border-radius)}.kbq-vertical-group>.kbq-group-item:last-child:not(:first-child)>.kbq-form-field__container{border-top-right-radius:0;border-top-left-radius:0}.kbq-vertical-group>.kbq-group-item:not(:first-child):not(:last-child){border-radius:0}.kbq-vertical-group>.kbq-group-item:not(:first-child):not(:last-child)>.kbq-form-field__container{border-radius:0}.kbq-vertical-group .kbq-group-item+.kbq-group-item{margin-top:calc(-1 * var(--kbq-size-border-width))}.kbq-truncate-line{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.kbq-no-select{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.kbq-username{color:var(--kbq-username-primary-color)}.kbq-username .kbq-username__secondary,.kbq-username .kbq-username__secondary-hint{color:var(--kbq-username-secondary-color)}.kbq-username.kbq-username_default .kbq-username__secondary-hint,.kbq-username.kbq-username_default .kbq-username__primary+.kbq-username__secondary{--kbq-username-secondary-color: var(--kbq-foreground-contrast-secondary)}.kbq-username.kbq-username_error{--kbq-username-primary-color: var(--kbq-foreground-error);--kbq-username-secondary-color: var(--kbq-foreground-error)}.kbq-username.kbq-username_accented{--kbq-username-primary-color: var(--kbq-foreground-contrast);--kbq-username-secondary-color: var(--kbq-foreground-contrast)}.kbq-username.kbq-username_inherit{--kbq-username-primary-color: inherit;--kbq-username-secondary-color: inherit}.kbq-username{font-size:var(--kbq-typography-text-normal-font-size);font-style:var(--kbq-typography-text-normal-font-style);font-weight:var(--kbq-typography-text-normal-font-weight);line-height:var(--kbq-typography-text-normal-line-height);font-family:var(--kbq-typography-text-normal-font-family);text-transform:var(--kbq-typography-text-normal-text-transform);font-feature-settings:var(--kbq-typography-text-normal-font-feature-settings);letter-spacing:var(--kbq-typography-text-normal-letter-spacing)}.kbq-username.kbq-username_accented .kbq-username__primary{font-size:var(--kbq-typography-text-normal-strong-font-size);font-style:var(--kbq-typography-text-normal-strong-font-style);font-weight:var(--kbq-typography-text-normal-strong-font-weight);line-height:var(--kbq-typography-text-normal-strong-line-height);font-family:var(--kbq-typography-text-normal-strong-font-family);text-transform:var(--kbq-typography-text-normal-strong-text-transform);font-feature-settings:var(--kbq-typography-text-normal-strong-font-feature-settings);letter-spacing:var(--kbq-typography-text-normal-strong-letter-spacing)}.kbq-username.kbq-username_stacked:not(:has(>.kbq-username__custom-view)),.kbq-username.kbq-username_stacked>.kbq-username__custom-view{display:flex;flex-flow:column nowrap;justify-content:flex-start;align-items:normal;gap:var(--kbq-username-vertical-gap)}.kbq-username.kbq-username_inline:not(.kbq-username_inherit):not(:has(>.kbq-username__custom-view)),.kbq-username.kbq-username_inline:not(.kbq-username_inherit)>.kbq-username__custom-view{display:flex;flex-flow:row nowrap;justify-content:flex-start;align-items:baseline}.kbq-username.kbq-username_inline:not(.kbq-username_inherit):not(:has(>.kbq-username__custom-view)) .kbq-username__primary+.kbq-username__secondary,.kbq-username.kbq-username_inline:not(.kbq-username_inherit)>.kbq-username__custom-view .kbq-username__primary+.kbq-username__secondary{margin-left:var(--kbq-username-horizontal-gap)}[dir=rtl] .kbq-username.kbq-username_inline:not(.kbq-username_inherit):not(:has(>.kbq-username__custom-view)) .kbq-username__primary+.kbq-username__secondary,[dir=rtl] .kbq-username.kbq-username_inline:not(.kbq-username_inherit)>.kbq-username__custom-view .kbq-username__primary+.kbq-username__secondary{margin-left:0;margin-right:var(--kbq-username-horizontal-gap)}.kbq-username.kbq-username_text:not(:has(>.kbq-username__custom-view)),.kbq-username.kbq-username_text>.kbq-username__custom-view{display:inline}.kbq-username.kbq-username_stacked:not(:has(>.kbq-username__custom-view)) .kbq-username__primary,.kbq-username.kbq-username_stacked:not(:has(>.kbq-username__custom-view)) .kbq-username__secondary,.kbq-username.kbq-username_stacked>.kbq-username__custom-view .kbq-username__primary,.kbq-username.kbq-username_stacked>.kbq-username__custom-view .kbq-username__secondary,.kbq-username.kbq-username_inline:not(:has(>.kbq-username__custom-view)) .kbq-username__primary,.kbq-username.kbq-username_inline:not(:has(>.kbq-username__custom-view)) .kbq-username__secondary,.kbq-username.kbq-username_inline>.kbq-username__custom-view .kbq-username__primary,.kbq-username.kbq-username_inline>.kbq-username__custom-view .kbq-username__secondary{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.kbq-username.kbq-username_inherit:not(:has(>.kbq-username__custom-view)),.kbq-username.kbq-username_inherit>.kbq-username__custom-view{font:inherit;display:inherit}\n", ":where(.kbq-username){--kbq-username-primary-color: var(--kbq-foreground-contrast);--kbq-username-secondary-color: inherit;--kbq-username-vertical-gap: var(--kbq-size-xxs);--kbq-username-horizontal-gap: var(--kbq-size-xxs)}\n"] }]
|
|
128
|
+
}] });
|
|
129
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlcm5hbWUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9jb21wb25lbnRzL3VzZXJuYW1lL3VzZXJuYW1lLnRzIiwiLi4vLi4vLi4vLi4vcGFja2FnZXMvY29tcG9uZW50cy91c2VybmFtZS91c2VybmFtZS5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDSCxnQkFBZ0IsRUFDaEIsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxRQUFRLEVBQ1IsWUFBWSxFQUNaLFNBQVMsRUFDVCxLQUFLLEVBQ0wsaUJBQWlCLEVBQ3BCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFFdkQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGlCQUFpQixDQUFDOzs7QUFFbEQsTUFBTSxTQUFTLEdBQUcsY0FBYyxDQUFDO0FBY2pDLGdFQUFnRTtBQVNoRSxNQUFNLE9BQU8sa0JBQWtCO2tJQUFsQixrQkFBa0I7c0hBQWxCLGtCQUFrQjs7NEZBQWxCLGtCQUFrQjtrQkFSOUIsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUsc0JBQXNCO29CQUNoQyxRQUFRLEVBQUUsb0JBQW9CO29CQUM5QixVQUFVLEVBQUUsSUFBSTtvQkFDaEIsSUFBSSxFQUFFO3dCQUNGLEtBQUssRUFBRSxHQUFHLFNBQVMsV0FBVztxQkFDakM7aUJBQ0o7O0FBR0QsaUNBQWlDO0FBU2pDLE1BQU0sT0FBTyxvQkFBb0I7a0lBQXBCLG9CQUFvQjtzSEFBcEIsb0JBQW9COzs0RkFBcEIsb0JBQW9CO2tCQVJoQyxTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSx3QkFBd0I7b0JBQ2xDLFFBQVEsRUFBRSxzQkFBc0I7b0JBQ2hDLFVBQVUsRUFBRSxJQUFJO29CQUNoQixJQUFJLEVBQUU7d0JBQ0YsS0FBSyxFQUFFLEdBQUcsU0FBUyxhQUFhO3FCQUNuQztpQkFDSjs7QUFHRCwrQkFBK0I7QUFTL0IsTUFBTSxPQUFPLHdCQUF3QjtrSUFBeEIsd0JBQXdCO3NIQUF4Qix3QkFBd0I7OzRGQUF4Qix3QkFBd0I7a0JBUnBDLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLDRCQUE0QjtvQkFDdEMsUUFBUSxFQUFFLDBCQUEwQjtvQkFDcEMsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLElBQUksRUFBRTt3QkFDRixLQUFLLEVBQUUsR0FBRyxTQUFTLGtCQUFrQjtxQkFDeEM7aUJBQ0o7O0FBR0QsZ0VBQWdFO0FBU2hFLE1BQU0sT0FBTyxxQkFBcUI7a0lBQXJCLHFCQUFxQjtzSEFBckIscUJBQXFCOzs0RkFBckIscUJBQXFCO2tCQVJqQyxTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSxzREFBc0Q7b0JBQ2hFLFVBQVUsRUFBRSxJQUFJO29CQUNoQixRQUFRLEVBQUUsdUJBQXVCO29CQUNqQyxJQUFJLEVBQUU7d0JBQ0YsS0FBSyxFQUFFLEdBQUcsU0FBUyxlQUFlO3FCQUNyQztpQkFDSjs7QUFHRDs7Ozs7R0FLRztBQXFCSCxNQUFNLE9BQU8sV0FBVztJQXBCeEI7UUFxQkksMENBQTBDO1FBQ2pDLGFBQVEsR0FBRyxLQUFLLEVBQWUsQ0FBQztRQUN6QyxtQ0FBbUM7UUFDMUIsY0FBUyxHQUFHLEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxTQUFTLEVBQUUsZ0JBQWdCLEVBQUUsQ0FBQyxDQUFDO1FBQ25FLHdEQUF3RDtRQUMvQyxtQkFBYyxHQUFHLEtBQUssQ0FBUyx3QkFBd0IsQ0FBQyxDQUFDO1FBQ2xFOzs7V0FHRztRQUNNLFNBQUksR0FBRyxLQUFLLENBQWtCLFFBQVEsQ0FBQyxDQUFDO1FBQ2pEOzs7V0FHRztRQUNNLFNBQUksR0FBRyxLQUFLLENBQW1CLFNBQVMsQ0FBQyxDQUFDO1FBQ25EOzs7V0FHRztRQUNnQixlQUFVLEdBQUcsWUFBWSxDQUFDLHFCQUFxQixDQUFDLENBQUM7UUFFcEUsb0JBQW9CO1FBQ0QsZ0JBQVcsR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFO1lBQzNDLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUVqQyxJQUFJLENBQUMsUUFBUTtnQkFBRSxPQUFPLEtBQUssQ0FBQztZQUU1QixPQUFPLFFBQVEsRUFBRSxRQUFRLElBQUksUUFBUSxFQUFFLFNBQVMsQ0FBQztRQUNyRCxDQUFDLENBQUMsQ0FBQztRQUVILG9CQUFvQjtRQUNELFVBQUssR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFO1lBQ3JDLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLEVBQUUsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsV0FBVyxFQUFFLEVBQUUsQ0FBQyxHQUFHLFNBQVMsSUFBSSxXQUFXLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUNwRyxDQUFDLENBQUMsQ0FBQztLQUNOO2tJQXBDWSxXQUFXO3NIQUFYLFdBQVcsNDBCQXFCeUIscUJBQXFCLDJGQ3hIdEUsbWlDQW1DQSx5ek5EaURRLGNBQWMsOEhBQ2QsZUFBZSxvREEvQ1Ysa0JBQWtCLG1HQVdsQixvQkFBb0IsdUdBV3BCLHdCQUF3Qjs7NEZBdUN4QixXQUFXO2tCQXBCdkIsU0FBUzsrQkFDSSxjQUFjLGNBQ1osSUFBSSxZQUNOLGFBQWEsV0FDZDt3QkFDTCxjQUFjO3dCQUNkLGVBQWU7d0JBQ2Ysa0JBQWtCO3dCQUNsQixvQkFBb0I7d0JBQ3BCLHdCQUF3QjtxQkFDM0IsUUFHSzt3QkFDRixLQUFLLEVBQUUsU0FBUzt3QkFDaEIsU0FBUyxFQUFFLFNBQVM7cUJBQ3ZCLGlCQUNjLGlCQUFpQixDQUFDLElBQUksbUJBQ3BCLHVCQUF1QixDQUFDLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIGJvb2xlYW5BdHRyaWJ1dGUsXG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ29tcG9uZW50LFxuICAgIGNvbXB1dGVkLFxuICAgIGNvbnRlbnRDaGlsZCxcbiAgICBEaXJlY3RpdmUsXG4gICAgaW5wdXQsXG4gICAgVmlld0VuY2Fwc3VsYXRpb25cbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBLYnFUaXRsZU1vZHVsZSB9IGZyb20gJ0Brb29iaXEvY29tcG9uZW50cy90aXRsZSc7XG5pbXBvcnQgeyBrYnFEZWZhdWx0RnVsbE5hbWVGb3JtYXQgfSBmcm9tICcuL2NvbnN0YW50cyc7XG5pbXBvcnQgeyBLYnFVc2VybmFtZU1vZGUsIEticVVzZXJuYW1lU3R5bGUgfSBmcm9tICcuL3R5cGVzJztcbmltcG9ydCB7IEticVVzZXJuYW1lUGlwZSB9IGZyb20gJy4vdXNlcm5hbWUucGlwZSc7XG5cbmNvbnN0IGJhc2VDbGFzcyA9ICdrYnEtdXNlcm5hbWUnO1xuXG4vKipcbiAqIEJhc2ljIHVzZXIgaW5mb1xuICogQGRvY3MtcHJpdmF0ZVxuICovXG5leHBvcnQgdHlwZSBLYnFVc2VySW5mbyA9IHtcbiAgICBmaXJzdE5hbWU/OiBzdHJpbmc7XG4gICAgbGFzdE5hbWU/OiBzdHJpbmc7XG4gICAgbWlkZGxlTmFtZT86IHN0cmluZztcbiAgICBsb2dpbj86IHN0cmluZztcbiAgICBzaXRlPzogc3RyaW5nO1xufTtcblxuLyoqIFN0eWxlcyB0aGUgcHJpbWFyeSBwYXJ0IG9mIHRoZSB1c2VybmFtZSAoZS5nLiBmdWxsIG5hbWUpLiAqL1xuQERpcmVjdGl2ZSh7XG4gICAgc2VsZWN0b3I6ICdba2JxVXNlcm5hbWVQcmltYXJ5XScsXG4gICAgZXhwb3J0QXM6ICdrYnFVc2VybmFtZVByaW1hcnknLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgaG9zdDoge1xuICAgICAgICBjbGFzczogYCR7YmFzZUNsYXNzfV9fcHJpbWFyeWBcbiAgICB9XG59KVxuZXhwb3J0IGNsYXNzIEticVVzZXJuYW1lUHJpbWFyeSB7fVxuXG4vKiogU3R5bGVzIHRoZSBzZWNvbmRhcnkgcGFydC4gKi9cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAnW2ticVVzZXJuYW1lU2Vjb25kYXJ5XScsXG4gICAgZXhwb3J0QXM6ICdrYnFVc2VybmFtZVNlY29uZGFyeScsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBob3N0OiB7XG4gICAgICAgIGNsYXNzOiBgJHtiYXNlQ2xhc3N9X19zZWNvbmRhcnlgXG4gICAgfVxufSlcbmV4cG9ydCBjbGFzcyBLYnFVc2VybmFtZVNlY29uZGFyeSB7fVxuXG4vKiogU3R5bGVzIGEgc2Vjb25kYXJ5IGhpbnQuICovXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogJ1trYnFVc2VybmFtZVNlY29uZGFyeUhpbnRdJyxcbiAgICBleHBvcnRBczogJ2ticVVzZXJuYW1lU2Vjb25kYXJ5SGludCcsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBob3N0OiB7XG4gICAgICAgIGNsYXNzOiBgJHtiYXNlQ2xhc3N9X19zZWNvbmRhcnktaGludGBcbiAgICB9XG59KVxuZXhwb3J0IGNsYXNzIEticVVzZXJuYW1lU2Vjb25kYXJ5SGludCB7fVxuXG4vKiogQ3VzdG9tIGNvbnRlbnQgZm9yIGBLYnFVc2VybmFtZWAsIG92ZXJyaWRlcyBkZWZhdWx0IHZpZXcuICovXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogJ2ticS11c2VybmFtZS1jdXN0b20tdmlldywgW2ticS11c2VybmFtZS1jdXN0b20tdmlld10nLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgZXhwb3J0QXM6ICdrYnFVc2VybmFtZUN1c3RvbVZpZXcnLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgY2xhc3M6IGAke2Jhc2VDbGFzc31fX2N1c3RvbS12aWV3YFxuICAgIH1cbn0pXG5leHBvcnQgY2xhc3MgS2JxVXNlcm5hbWVDdXN0b21WaWV3IHt9XG5cbi8qKlxuICogRGlzcGxheXMgYSB1c2VyJ3MgbmFtZSBiYXNlZCBvbiBwcm9maWxlIGRhdGEuXG4gKiBTdXBwb3J0cyBkaWZmZXJlbnQgZGlzcGxheSBtb2RlcyBhbmQgdmlzdWFsIHN0eWxlcy5cbiAqIEEgY3VzdG9tIHZpZXcgY2FuIGJlIHByb3ZpZGVkIHZpYSBgPGticS11c2VybmFtZS1jdXN0b20tdmlldz5gIGZvciBmdWxsIGNvbnRyb2wgb3ZlciB0aGUgb3V0cHV0LlxuICogQWNjZXB0cyBpbnB1dCBwcm9maWxlIGRhdGEgYW5kIG9wdGlvbmFsIGZvcm1hdHRpbmcgb3B0aW9ucy5cbiAqL1xuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdrYnEtdXNlcm5hbWUnLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgZXhwb3J0QXM6ICdrYnFVc2VybmFtZScsXG4gICAgaW1wb3J0czogW1xuICAgICAgICBLYnFUaXRsZU1vZHVsZSxcbiAgICAgICAgS2JxVXNlcm5hbWVQaXBlLFxuICAgICAgICBLYnFVc2VybmFtZVByaW1hcnksXG4gICAgICAgIEticVVzZXJuYW1lU2Vjb25kYXJ5LFxuICAgICAgICBLYnFVc2VybmFtZVNlY29uZGFyeUhpbnRcbiAgICBdLFxuICAgIHRlbXBsYXRlVXJsOiAnLi91c2VybmFtZS5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi91c2VybmFtZS5zY3NzJywgJy4vdXNlcm5hbWUtdG9rZW5zLnNjc3MnXSxcbiAgICBob3N0OiB7XG4gICAgICAgIGNsYXNzOiBiYXNlQ2xhc3MsXG4gICAgICAgICdbY2xhc3NdJzogJ2NsYXNzKCknXG4gICAgfSxcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXG59KVxuZXhwb3J0IGNsYXNzIEticVVzZXJuYW1lIHtcbiAgICAvKiogVXNlciBwcm9maWxlIGRhdGEgdXNlZCBmb3IgZGlzcGxheS4gKi9cbiAgICByZWFkb25seSB1c2VySW5mbyA9IGlucHV0PEticVVzZXJJbmZvPigpO1xuICAgIC8qKiBFbmFibGVzIGNvbXBhY3QgZGlzcGxheSBtb2RlICovXG4gICAgcmVhZG9ubHkgaXNDb21wYWN0ID0gaW5wdXQoZmFsc2UsIHsgdHJhbnNmb3JtOiBib29sZWFuQXR0cmlidXRlIH0pO1xuICAgIC8qKiBGb3JtYXQgc3RyaW5nIGZvciByZW5kZXJpbmcgdGhlIHVzZXIncyBmdWxsIG5hbWUuICovXG4gICAgcmVhZG9ubHkgZnVsbE5hbWVGb3JtYXQgPSBpbnB1dDxzdHJpbmc+KGticURlZmF1bHRGdWxsTmFtZUZvcm1hdCk7XG4gICAgLyoqXG4gICAgICogRGlzcGxheSBtb2RlIG9mIHRoZSB1c2VybmFtZS5cbiAgICAgKiBAZGVmYXVsdCBpbmxpbmVcbiAgICAgKi9cbiAgICByZWFkb25seSBtb2RlID0gaW5wdXQ8S2JxVXNlcm5hbWVNb2RlPignaW5saW5lJyk7XG4gICAgLyoqXG4gICAgICogVmlzdWFsIHN0eWxlIG9mIHRoZSB1c2VybmFtZS5cbiAgICAgKiBAZGVmYXVsdCBkZWZhdWx0XG4gICAgICovXG4gICAgcmVhZG9ubHkgdHlwZSA9IGlucHV0PEticVVzZXJuYW1lU3R5bGU+KCdkZWZhdWx0Jyk7XG4gICAgLyoqXG4gICAgICogQ3VzdG9tIHByb2plY3RlZCB2aWV3IGZvciB1c2VybmFtZSByZW5kZXJpbmcuXG4gICAgICogQGRvY3MtcHJpdmF0ZVxuICAgICAqL1xuICAgIHByb3RlY3RlZCByZWFkb25seSBjdXN0b21WaWV3ID0gY29udGVudENoaWxkKEticVVzZXJuYW1lQ3VzdG9tVmlldyk7XG5cbiAgICAvKiogQGRvY3MtcHJpdmF0ZSAqL1xuICAgIHByb3RlY3RlZCByZWFkb25seSBoYXNGdWxsTmFtZSA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICAgICAgY29uc3QgdXNlckluZm8gPSB0aGlzLnVzZXJJbmZvKCk7XG5cbiAgICAgICAgaWYgKCF1c2VySW5mbykgcmV0dXJuIGZhbHNlO1xuXG4gICAgICAgIHJldHVybiB1c2VySW5mbz8ubGFzdE5hbWUgJiYgdXNlckluZm8/LmZpcnN0TmFtZTtcbiAgICB9KTtcblxuICAgIC8qKiBAZG9jcy1wcml2YXRlICovXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGNsYXNzID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgICAgICByZXR1cm4gW3RoaXMudHlwZSgpLCB0aGlzLm1vZGUoKV0ubWFwKChtb2RpZmljYXRvcikgPT4gYCR7YmFzZUNsYXNzfV8ke21vZGlmaWNhdG9yfWApLmpvaW4oJyAnKTtcbiAgICB9KTtcbn1cbiIsIkBsZXQgcHJvZmlsZSA9IHVzZXJJbmZvKCk7XG48bmctY29udGVudCBzZWxlY3Q9XCJrYnEtdXNlcm5hbWUtY3VzdG9tLXZpZXcsW2ticS11c2VybmFtZS1jdXN0b20tdmlld11cIiAvPlxuXG5AaWYgKCFjdXN0b21WaWV3KCkgJiYgcHJvZmlsZSkge1xuICAgIEBsZXQgZnVsbE5hbWUgPSBwcm9maWxlIHwga2JxVXNlcm5hbWU6IGZ1bGxOYW1lRm9ybWF0KCk7XG5cbiAgICBAaWYgKCFpc0NvbXBhY3QoKSkge1xuICAgICAgICBAaWYgKGhhc0Z1bGxOYW1lKCkpIHtcbiAgICAgICAgICAgIDxzcGFuIGticS10aXRsZSBrYnFVc2VybmFtZVByaW1hcnk+e3sgZnVsbE5hbWUgfX08L3NwYW4+XG4gICAgICAgIH1cblxuICAgICAgICBAaWYgKHByb2ZpbGUubG9naW4pIHtcbiAgICAgICAgICAgIDxzcGFuIGticS10aXRsZSBrYnFVc2VybmFtZVNlY29uZGFyeT5cbiAgICAgICAgICAgICAgICB7eyBwcm9maWxlLmxvZ2luIH19XG5cbiAgICAgICAgICAgICAgICBAaWYgKHByb2ZpbGUuc2l0ZSkge1xuICAgICAgICAgICAgICAgICAgICA8c3BhbiBrYnFVc2VybmFtZVNlY29uZGFyeUhpbnQ+KHt7IHByb2ZpbGUuc2l0ZSB9fSk8L3NwYW4+XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICB9XG4gICAgfSBAZWxzZSB7XG4gICAgICAgIDxzcGFuIGticS10aXRsZSBrYnFVc2VybmFtZVByaW1hcnk+XG4gICAgICAgICAgICBAaWYgKGhhc0Z1bGxOYW1lKCkpIHtcbiAgICAgICAgICAgICAgICA8c3Bhbj57eyBmdWxsTmFtZSB9fTwvc3Bhbj5cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIEBpZiAoIWhhc0Z1bGxOYW1lKCkgJiYgcHJvZmlsZS5sb2dpbikge1xuICAgICAgICAgICAgICAgIHt7IHByb2ZpbGUubG9naW4gfX1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGlmIChwcm9maWxlLnNpdGUpIHtcbiAgICAgICAgICAgICAgICA8c3BhbiBrYnFVc2VybmFtZVNlY29uZGFyeUhpbnQ+Jm5ic3A7KHt7IHByb2ZpbGUuc2l0ZSB9fSk8L3NwYW4+XG4gICAgICAgICAgICB9XG4gICAgICAgIDwvc3Bhbj5cbiAgICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
import { inject, Injectable, Pipe } from '@angular/core';
|
|
2
|
+
import { KBQ_PROFILE_MAPPING, kbqDefaultFullNameFormat, kbqDefaultFullNameFormatCustom, KbqMappingMissingError } from './constants';
|
|
3
|
+
import { KbqUsernameFormatKey } from './types';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
export class KbqUsernamePipe {
|
|
6
|
+
constructor() {
|
|
7
|
+
this.mapping = inject(KBQ_PROFILE_MAPPING, { optional: true });
|
|
8
|
+
}
|
|
9
|
+
/** Builds a formatted name string from the user profile using the provided format and mapping. */
|
|
10
|
+
transform(profile, format = kbqDefaultFullNameFormat, customMapping) {
|
|
11
|
+
const resolvedMapping = customMapping || this.mapping;
|
|
12
|
+
if (!resolvedMapping) {
|
|
13
|
+
throw KbqMappingMissingError();
|
|
14
|
+
}
|
|
15
|
+
if (!profile || typeof profile !== 'object')
|
|
16
|
+
return '';
|
|
17
|
+
let result = '';
|
|
18
|
+
const formatUnits = format.split('');
|
|
19
|
+
formatUnits.forEach((letter, index, array) => {
|
|
20
|
+
if (letter !== KbqUsernameFormatKey.Dot) {
|
|
21
|
+
const field = resolvedMapping[letter];
|
|
22
|
+
const fieldValue = profile[field];
|
|
23
|
+
if (fieldValue) {
|
|
24
|
+
const isShort = array[index + 1] === KbqUsernameFormatKey.Dot;
|
|
25
|
+
const resolvedFieldValue = isShort ? `${fieldValue[0]}${KbqUsernameFormatKey.Dot}` : fieldValue;
|
|
26
|
+
result += ` ${resolvedFieldValue}`;
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
});
|
|
30
|
+
return result.trim();
|
|
31
|
+
}
|
|
32
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: KbqUsernamePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
|
|
33
|
+
/** @nocollapse */ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: KbqUsernamePipe, isStandalone: true, name: "kbqUsername" }); }
|
|
34
|
+
/** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: KbqUsernamePipe, providedIn: 'root' }); }
|
|
35
|
+
}
|
|
36
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: KbqUsernamePipe, decorators: [{
|
|
37
|
+
type: Injectable,
|
|
38
|
+
args: [{ providedIn: 'root' }]
|
|
39
|
+
}, {
|
|
40
|
+
type: Pipe,
|
|
41
|
+
args: [{
|
|
42
|
+
name: 'kbqUsername',
|
|
43
|
+
pure: true,
|
|
44
|
+
standalone: true
|
|
45
|
+
}]
|
|
46
|
+
}] });
|
|
47
|
+
/**
|
|
48
|
+
* Pipe to format a user profile into a name string using a format pattern and field mapping.
|
|
49
|
+
* Lowercase keys output initials; uppercase keys show full values.
|
|
50
|
+
*/
|
|
51
|
+
export class KbqUsernameCustomPipe {
|
|
52
|
+
constructor() {
|
|
53
|
+
this.mapping = inject(KBQ_PROFILE_MAPPING, { optional: true });
|
|
54
|
+
}
|
|
55
|
+
/** Builds a formatted name string from the user profile using the provided format and mapping. */
|
|
56
|
+
transform(profile, format = kbqDefaultFullNameFormatCustom, customMapping) {
|
|
57
|
+
const resolvedMapping = customMapping || this.mapping;
|
|
58
|
+
if (!resolvedMapping) {
|
|
59
|
+
throw KbqMappingMissingError();
|
|
60
|
+
}
|
|
61
|
+
if (!profile || typeof profile !== 'object')
|
|
62
|
+
return '';
|
|
63
|
+
let result = '';
|
|
64
|
+
const formatUnits = format.split('');
|
|
65
|
+
formatUnits.forEach((letter) => {
|
|
66
|
+
const field = resolvedMapping[letter];
|
|
67
|
+
if (!field) {
|
|
68
|
+
result += letter;
|
|
69
|
+
return;
|
|
70
|
+
}
|
|
71
|
+
const isShort = letter === letter.toLowerCase();
|
|
72
|
+
const fieldValue = profile[field] || '';
|
|
73
|
+
result += fieldValue && isShort ? fieldValue[0] : fieldValue;
|
|
74
|
+
});
|
|
75
|
+
return result.trim();
|
|
76
|
+
}
|
|
77
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: KbqUsernameCustomPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
|
|
78
|
+
/** @nocollapse */ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: KbqUsernameCustomPipe, isStandalone: true, name: "kbqUsernameCustom" }); }
|
|
79
|
+
/** @nocollapse */ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: KbqUsernameCustomPipe, providedIn: 'root' }); }
|
|
80
|
+
}
|
|
81
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: KbqUsernameCustomPipe, decorators: [{
|
|
82
|
+
type: Injectable,
|
|
83
|
+
args: [{ providedIn: 'root' }]
|
|
84
|
+
}, {
|
|
85
|
+
type: Pipe,
|
|
86
|
+
args: [{
|
|
87
|
+
name: 'kbqUsernameCustom',
|
|
88
|
+
pure: true,
|
|
89
|
+
standalone: true
|
|
90
|
+
}]
|
|
91
|
+
}] });
|
|
92
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlcm5hbWUucGlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbXBvbmVudHMvdXNlcm5hbWUvdXNlcm5hbWUucGlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxJQUFJLEVBQWlCLE1BQU0sZUFBZSxDQUFDO0FBQ3hFLE9BQU8sRUFDSCxtQkFBbUIsRUFDbkIsd0JBQXdCLEVBQ3hCLDhCQUE4QixFQUM5QixzQkFBc0IsRUFDekIsTUFBTSxhQUFhLENBQUM7QUFDckIsT0FBTyxFQUFzRSxvQkFBb0IsRUFBRSxNQUFNLFNBQVMsQ0FBQzs7QUFRbkgsTUFBTSxPQUFPLGVBQWU7SUFONUI7UUFPcUIsWUFBTyxHQUFHLE1BQU0sQ0FBQyxtQkFBbUIsRUFBRSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO0tBZ0M5RTtJQTlCRyxrR0FBa0c7SUFDbEcsU0FBUyxDQUFDLE9BQVUsRUFBRSxNQUFNLEdBQUcsd0JBQXdCLEVBQUUsYUFBNEM7UUFDakcsTUFBTSxlQUFlLEdBQUcsYUFBYSxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUM7UUFFdEQsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO1lBQ25CLE1BQU0sc0JBQXNCLEVBQUUsQ0FBQztRQUNuQyxDQUFDO1FBRUQsSUFBSSxDQUFDLE9BQU8sSUFBSSxPQUFPLE9BQU8sS0FBSyxRQUFRO1lBQUUsT0FBTyxFQUFFLENBQUM7UUFFdkQsSUFBSSxNQUFNLEdBQUcsRUFBRSxDQUFDO1FBRWhCLE1BQU0sV0FBVyxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUM7UUFFckMsV0FBVyxDQUFDLE9BQU8sQ0FBQyxDQUFDLE1BQXFDLEVBQUUsS0FBYSxFQUFFLEtBQUssRUFBRSxFQUFFO1lBQ2hGLElBQUksTUFBTSxLQUFLLG9CQUFvQixDQUFDLEdBQUcsRUFBRSxDQUFDO2dCQUN0QyxNQUFNLEtBQUssR0FBWSxlQUFlLENBQUMsTUFBTSxDQUFDLENBQUM7Z0JBQy9DLE1BQU0sVUFBVSxHQUFHLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQztnQkFFbEMsSUFBSSxVQUFVLEVBQUUsQ0FBQztvQkFDYixNQUFNLE9BQU8sR0FBRyxLQUFLLENBQUMsS0FBSyxHQUFHLENBQUMsQ0FBQyxLQUFLLG9CQUFvQixDQUFDLEdBQUcsQ0FBQztvQkFDOUQsTUFBTSxrQkFBa0IsR0FBRyxPQUFPLENBQUMsQ0FBQyxDQUFDLEdBQUcsVUFBVSxDQUFDLENBQUMsQ0FBQyxHQUFHLG9CQUFvQixDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUM7b0JBRWhHLE1BQU0sSUFBSSxJQUFJLGtCQUFrQixFQUFFLENBQUM7Z0JBQ3ZDLENBQUM7WUFDTCxDQUFDO1FBQ0wsQ0FBQyxDQUFDLENBQUM7UUFFSCxPQUFPLE1BQU0sQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUN6QixDQUFDO2tJQWhDUSxlQUFlO2dJQUFmLGVBQWU7c0lBQWYsZUFBZSxjQU5GLE1BQU07OzRGQU1uQixlQUFlO2tCQU4zQixVQUFVO21CQUFDLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRTs7a0JBQ2pDLElBQUk7bUJBQUM7b0JBQ0YsSUFBSSxFQUFFLGFBQWE7b0JBQ25CLElBQUksRUFBRSxJQUFJO29CQUNWLFVBQVUsRUFBRSxJQUFJO2lCQUNuQjs7QUFvQ0Q7OztHQUdHO0FBT0gsTUFBTSxPQUFPLHFCQUFxQjtJQU5sQztRQU9xQixZQUFPLEdBQUcsTUFBTSxDQUFDLG1CQUFtQixFQUFFLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7S0FxQzlFO0lBbkNHLGtHQUFrRztJQUNsRyxTQUFTLENBQ0wsT0FBVSxFQUNWLE1BQU0sR0FBRyw4QkFBOEIsRUFDdkMsYUFBdUQ7UUFFdkQsTUFBTSxlQUFlLEdBQUcsYUFBYSxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUM7UUFFdEQsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO1lBQ25CLE1BQU0sc0JBQXNCLEVBQUUsQ0FBQztRQUNuQyxDQUFDO1FBRUQsSUFBSSxDQUFDLE9BQU8sSUFBSSxPQUFPLE9BQU8sS0FBSyxRQUFRO1lBQUUsT0FBTyxFQUFFLENBQUM7UUFFdkQsSUFBSSxNQUFNLEdBQUcsRUFBRSxDQUFDO1FBRWhCLE1BQU0sV0FBVyxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUM7UUFFckMsV0FBVyxDQUFDLE9BQU8sQ0FBQyxDQUFDLE1BQXFDLEVBQUUsRUFBRTtZQUMxRCxNQUFNLEtBQUssR0FBd0IsZUFBZSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1lBRTNELElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztnQkFDVCxNQUFNLElBQUksTUFBTSxDQUFDO2dCQUVqQixPQUFPO1lBQ1gsQ0FBQztZQUVELE1BQU0sT0FBTyxHQUFHLE1BQU0sS0FBSyxNQUFNLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDaEQsTUFBTSxVQUFVLEdBQUcsT0FBTyxDQUFDLEtBQUssQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUV4QyxNQUFNLElBQUksVUFBVSxJQUFJLE9BQU8sQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUM7UUFDakUsQ0FBQyxDQUFDLENBQUM7UUFFSCxPQUFPLE1BQU0sQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUN6QixDQUFDO2tJQXJDUSxxQkFBcUI7Z0lBQXJCLHFCQUFxQjtzSUFBckIscUJBQXFCLGNBTlIsTUFBTTs7NEZBTW5CLHFCQUFxQjtrQkFOakMsVUFBVTttQkFBQyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUU7O2tCQUNqQyxJQUFJO21CQUFDO29CQUNGLElBQUksRUFBRSxtQkFBbUI7b0JBQ3pCLElBQUksRUFBRSxJQUFJO29CQUNWLFVBQVUsRUFBRSxJQUFJO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGluamVjdCwgSW5qZWN0YWJsZSwgUGlwZSwgUGlwZVRyYW5zZm9ybSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgICBLQlFfUFJPRklMRV9NQVBQSU5HLFxuICAgIGticURlZmF1bHRGdWxsTmFtZUZvcm1hdCxcbiAgICBrYnFEZWZhdWx0RnVsbE5hbWVGb3JtYXRDdXN0b20sXG4gICAgS2JxTWFwcGluZ01pc3NpbmdFcnJvclxufSBmcm9tICcuL2NvbnN0YW50cyc7XG5pbXBvcnQgeyBLYnFGb3JtYXRLZXlUb1Byb2ZpbGVNYXBwaW5nLCBLYnFGb3JtYXRLZXlUb1Byb2ZpbGVNYXBwaW5nRXh0ZW5kZWQsIEticVVzZXJuYW1lRm9ybWF0S2V5IH0gZnJvbSAnLi90eXBlcyc7XG5cbkBJbmplY3RhYmxlKHsgcHJvdmlkZWRJbjogJ3Jvb3QnIH0pXG5AUGlwZSh7XG4gICAgbmFtZTogJ2ticVVzZXJuYW1lJyxcbiAgICBwdXJlOiB0cnVlLFxuICAgIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgS2JxVXNlcm5hbWVQaXBlPFQgPSB1bmtub3duPiBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xuICAgIHByaXZhdGUgcmVhZG9ubHkgbWFwcGluZyA9IGluamVjdChLQlFfUFJPRklMRV9NQVBQSU5HLCB7IG9wdGlvbmFsOiB0cnVlIH0pO1xuXG4gICAgLyoqIEJ1aWxkcyBhIGZvcm1hdHRlZCBuYW1lIHN0cmluZyBmcm9tIHRoZSB1c2VyIHByb2ZpbGUgdXNpbmcgdGhlIHByb3ZpZGVkIGZvcm1hdCBhbmQgbWFwcGluZy4gKi9cbiAgICB0cmFuc2Zvcm0ocHJvZmlsZTogVCwgZm9ybWF0ID0ga2JxRGVmYXVsdEZ1bGxOYW1lRm9ybWF0LCBjdXN0b21NYXBwaW5nPzogS2JxRm9ybWF0S2V5VG9Qcm9maWxlTWFwcGluZyk6IHN0cmluZyB7XG4gICAgICAgIGNvbnN0IHJlc29sdmVkTWFwcGluZyA9IGN1c3RvbU1hcHBpbmcgfHwgdGhpcy5tYXBwaW5nO1xuXG4gICAgICAgIGlmICghcmVzb2x2ZWRNYXBwaW5nKSB7XG4gICAgICAgICAgICB0aHJvdyBLYnFNYXBwaW5nTWlzc2luZ0Vycm9yKCk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoIXByb2ZpbGUgfHwgdHlwZW9mIHByb2ZpbGUgIT09ICdvYmplY3QnKSByZXR1cm4gJyc7XG5cbiAgICAgICAgbGV0IHJlc3VsdCA9ICcnO1xuXG4gICAgICAgIGNvbnN0IGZvcm1hdFVuaXRzID0gZm9ybWF0LnNwbGl0KCcnKTtcblxuICAgICAgICBmb3JtYXRVbml0cy5mb3JFYWNoKChsZXR0ZXI6IEticVVzZXJuYW1lRm9ybWF0S2V5IHwgc3RyaW5nLCBpbmRleDogbnVtYmVyLCBhcnJheSkgPT4ge1xuICAgICAgICAgICAgaWYgKGxldHRlciAhPT0gS2JxVXNlcm5hbWVGb3JtYXRLZXkuRG90KSB7XG4gICAgICAgICAgICAgICAgY29uc3QgZmllbGQ6IGtleW9mIFQgPSByZXNvbHZlZE1hcHBpbmdbbGV0dGVyXTtcbiAgICAgICAgICAgICAgICBjb25zdCBmaWVsZFZhbHVlID0gcHJvZmlsZVtmaWVsZF07XG5cbiAgICAgICAgICAgICAgICBpZiAoZmllbGRWYWx1ZSkge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBpc1Nob3J0ID0gYXJyYXlbaW5kZXggKyAxXSA9PT0gS2JxVXNlcm5hbWVGb3JtYXRLZXkuRG90O1xuICAgICAgICAgICAgICAgICAgICBjb25zdCByZXNvbHZlZEZpZWxkVmFsdWUgPSBpc1Nob3J0ID8gYCR7ZmllbGRWYWx1ZVswXX0ke0ticVVzZXJuYW1lRm9ybWF0S2V5LkRvdH1gIDogZmllbGRWYWx1ZTtcblxuICAgICAgICAgICAgICAgICAgICByZXN1bHQgKz0gYCAke3Jlc29sdmVkRmllbGRWYWx1ZX1gO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG5cbiAgICAgICAgcmV0dXJuIHJlc3VsdC50cmltKCk7XG4gICAgfVxufVxuXG4vKipcbiAqIFBpcGUgdG8gZm9ybWF0IGEgdXNlciBwcm9maWxlIGludG8gYSBuYW1lIHN0cmluZyB1c2luZyBhIGZvcm1hdCBwYXR0ZXJuIGFuZCBmaWVsZCBtYXBwaW5nLlxuICogTG93ZXJjYXNlIGtleXMgb3V0cHV0IGluaXRpYWxzOyB1cHBlcmNhc2Uga2V5cyBzaG93IGZ1bGwgdmFsdWVzLlxuICovXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxuQFBpcGUoe1xuICAgIG5hbWU6ICdrYnFVc2VybmFtZUN1c3RvbScsXG4gICAgcHVyZTogdHJ1ZSxcbiAgICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIEticVVzZXJuYW1lQ3VzdG9tUGlwZTxUID0gdW5rbm93bj4gaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcbiAgICBwcml2YXRlIHJlYWRvbmx5IG1hcHBpbmcgPSBpbmplY3QoS0JRX1BST0ZJTEVfTUFQUElORywgeyBvcHRpb25hbDogdHJ1ZSB9KTtcblxuICAgIC8qKiBCdWlsZHMgYSBmb3JtYXR0ZWQgbmFtZSBzdHJpbmcgZnJvbSB0aGUgdXNlciBwcm9maWxlIHVzaW5nIHRoZSBwcm92aWRlZCBmb3JtYXQgYW5kIG1hcHBpbmcuICovXG4gICAgdHJhbnNmb3JtKFxuICAgICAgICBwcm9maWxlOiBULFxuICAgICAgICBmb3JtYXQgPSBrYnFEZWZhdWx0RnVsbE5hbWVGb3JtYXRDdXN0b20sXG4gICAgICAgIGN1c3RvbU1hcHBpbmc/OiBLYnFGb3JtYXRLZXlUb1Byb2ZpbGVNYXBwaW5nRXh0ZW5kZWQ8VD5cbiAgICApOiBzdHJpbmcge1xuICAgICAgICBjb25zdCByZXNvbHZlZE1hcHBpbmcgPSBjdXN0b21NYXBwaW5nIHx8IHRoaXMubWFwcGluZztcblxuICAgICAgICBpZiAoIXJlc29sdmVkTWFwcGluZykge1xuICAgICAgICAgICAgdGhyb3cgS2JxTWFwcGluZ01pc3NpbmdFcnJvcigpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKCFwcm9maWxlIHx8IHR5cGVvZiBwcm9maWxlICE9PSAnb2JqZWN0JykgcmV0dXJuICcnO1xuXG4gICAgICAgIGxldCByZXN1bHQgPSAnJztcblxuICAgICAgICBjb25zdCBmb3JtYXRVbml0cyA9IGZvcm1hdC5zcGxpdCgnJyk7XG5cbiAgICAgICAgZm9ybWF0VW5pdHMuZm9yRWFjaCgobGV0dGVyOiBLYnFVc2VybmFtZUZvcm1hdEtleSB8IHN0cmluZykgPT4ge1xuICAgICAgICAgICAgY29uc3QgZmllbGQ6IGtleW9mIFQgfCB1bmRlZmluZWQgPSByZXNvbHZlZE1hcHBpbmdbbGV0dGVyXTtcblxuICAgICAgICAgICAgaWYgKCFmaWVsZCkge1xuICAgICAgICAgICAgICAgIHJlc3VsdCArPSBsZXR0ZXI7XG5cbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGNvbnN0IGlzU2hvcnQgPSBsZXR0ZXIgPT09IGxldHRlci50b0xvd2VyQ2FzZSgpO1xuICAgICAgICAgICAgY29uc3QgZmllbGRWYWx1ZSA9IHByb2ZpbGVbZmllbGRdIHx8ICcnO1xuXG4gICAgICAgICAgICByZXN1bHQgKz0gZmllbGRWYWx1ZSAmJiBpc1Nob3J0ID8gZmllbGRWYWx1ZVswXSA6IGZpZWxkVmFsdWU7XG4gICAgICAgIH0pO1xuXG4gICAgICAgIHJldHVybiByZXN1bHQudHJpbSgpO1xuICAgIH1cbn1cbiJdfQ==
|
|
@@ -1,7 +1,10 @@
|
|
|
1
|
+
import { coerceCssPixelValue } from '@angular/cdk/coercion';
|
|
1
2
|
import { CdkDialogContainer, Dialog } from '@angular/cdk/dialog';
|
|
2
|
-
import {
|
|
3
|
+
import { SharedResizeObserver } from '@angular/cdk/observers/private';
|
|
4
|
+
import { Overlay } from '@angular/cdk/overlay';
|
|
3
5
|
import * as i0 from '@angular/core';
|
|
4
6
|
import { InjectionToken, EventEmitter, inject, Renderer2, Component, ChangeDetectionStrategy, ViewEncapsulation, Injector, Injectable, NgModule } from '@angular/core';
|
|
7
|
+
import { map, of, Subject, filter, take, takeUntil } from 'rxjs';
|
|
5
8
|
import { trigger, state, style, transition, group, animate, query, animateChild } from '@angular/animations';
|
|
6
9
|
import { CdkPortalOutlet } from '@angular/cdk/portal';
|
|
7
10
|
import { toSignal } from '@angular/core/rxjs-interop';
|
|
@@ -14,7 +17,6 @@ import * as i3 from '@koobiq/components/icon';
|
|
|
14
17
|
import { KbqIconModule } from '@koobiq/components/icon';
|
|
15
18
|
import * as i4 from '@koobiq/components/tooltip';
|
|
16
19
|
import { KbqToolTipModule } from '@koobiq/components/tooltip';
|
|
17
|
-
import { map, of, Subject, filter, take } from 'rxjs';
|
|
18
20
|
|
|
19
21
|
/** Injection token that can be used to specify default actions panel config. */
|
|
20
22
|
const KBQ_ACTIONS_PANEL_DEFAULT_CONFIG = new InjectionToken('KBQ_ACTIONS_PANEL_DEFAULT_CONFIG', { factory: () => new KbqActionsPanelConfig() });
|
|
@@ -223,16 +225,16 @@ class KbqActionsPanelContainer extends CdkDialogContainer {
|
|
|
223
225
|
<kbq-divider class="kbq-actions-panel-container__vertical-divider" [vertical]="true" />
|
|
224
226
|
<button
|
|
225
227
|
class="kbq-actions-panel-container__close-button"
|
|
228
|
+
color="contrast"
|
|
229
|
+
kbq-button
|
|
226
230
|
[kbqTooltip]="localeConfiguration()!.closeTooltip"
|
|
227
231
|
[kbqTooltipOffset]="16"
|
|
228
232
|
(click)="close()"
|
|
229
|
-
color="contrast"
|
|
230
|
-
kbq-button
|
|
231
233
|
>
|
|
232
234
|
<i kbq-icon="kbq-xmark-circle_16"></i>
|
|
233
235
|
</button>
|
|
234
236
|
}
|
|
235
|
-
`, isInline: true, styles: [".kbq-actions-panel-container,.kbq-actions-panel-overlay{--kbq-actions-panel-background-color: var(--kbq-background-contrast);--kbq-actions-panel-text-color: var(--kbq-foreground-on-contrast);--kbq-actions-panel-padding: var(--kbq-size-s);--kbq-actions-panel-margin: var(--kbq-size-s) var(--kbq-size-s) var(--kbq-size-l);--kbq-actions-panel-border-radius: var(--kbq-size-l);--kbq-actions-panel-box-shadow: var(--kbq-shadow-card);--kbq-actions-panel-height: var(--kbq-size-5xl);--kbq-actions-panel-vertical-divider-background-color: var(--kbq-line-contrast-fade);--kbq-actions-panel-vertical-divider-height: var(--kbq-size-m);--kbq-actions-panel-vertical-divider-margin: 0 var(--kbq-size-s)}\n", ".kbq-actions-panel-container{background:var(--kbq-actions-panel-background-color);color:var(--kbq-actions-panel-text-color);box-shadow:var(--kbq-actions-panel-box-shadow);height:var(--kbq-actions-panel-height);padding:var(--kbq-actions-panel-padding);border-radius:var(--kbq-actions-panel-border-radius);display:flex;flex-grow:1;align-items:center;overflow:hidden;box-sizing:border-box}.kbq-actions-panel-container .kbq-actions-panel-container__content{display:flex;align-items:center;flex-grow:1;overflow:hidden}.kbq-actions-panel-container .kbq-actions-panel-container__vertical-divider{background-color:var(--kbq-actions-panel-vertical-divider-background-color);height:var(--kbq-actions-panel-vertical-divider-height)!important;margin:var(--kbq-actions-panel-vertical-divider-margin)}.kbq-actions-panel-overlay{margin:var(--kbq-actions-panel-margin)}
|
|
237
|
+
`, isInline: true, styles: [".kbq-actions-panel-container,.kbq-actions-panel-overlay{--kbq-actions-panel-background-color: var(--kbq-background-contrast);--kbq-actions-panel-text-color: var(--kbq-foreground-on-contrast);--kbq-actions-panel-padding: var(--kbq-size-s);--kbq-actions-panel-margin: var(--kbq-size-s) var(--kbq-size-s) var(--kbq-size-l);--kbq-actions-panel-border-radius: var(--kbq-size-l);--kbq-actions-panel-box-shadow: var(--kbq-shadow-card);--kbq-actions-panel-height: var(--kbq-size-5xl);--kbq-actions-panel-vertical-divider-background-color: var(--kbq-line-contrast-fade);--kbq-actions-panel-vertical-divider-height: var(--kbq-size-m);--kbq-actions-panel-vertical-divider-margin: 0 var(--kbq-size-s)}\n", ".kbq-actions-panel-container{background:var(--kbq-actions-panel-background-color);color:var(--kbq-actions-panel-text-color);box-shadow:var(--kbq-actions-panel-box-shadow);height:var(--kbq-actions-panel-height);padding:var(--kbq-actions-panel-padding);border-radius:var(--kbq-actions-panel-border-radius);display:flex;flex-grow:1;align-items:center;overflow:hidden;box-sizing:border-box}.kbq-actions-panel-container .kbq-actions-panel-container__content{display:flex;align-items:center;flex-grow:1;overflow:hidden}.kbq-actions-panel-container .kbq-actions-panel-container__vertical-divider{background-color:var(--kbq-actions-panel-vertical-divider-background-color);height:var(--kbq-actions-panel-vertical-divider-height)!important;margin:var(--kbq-actions-panel-vertical-divider-margin)}.kbq-actions-panel-overlay{margin:var(--kbq-actions-panel-margin)}\n"], dependencies: [{ kind: "directive", type: CdkPortalOutlet, selector: "[cdkPortalOutlet]", inputs: ["cdkPortalOutlet"], outputs: ["attached"], exportAs: ["cdkPortalOutlet"] }, { kind: "ngmodule", type: KbqDividerModule }, { kind: "component", type: i1.KbqDivider, selector: "kbq-divider", inputs: ["vertical", "inset", "paddings"] }, { kind: "ngmodule", type: KbqButtonModule }, { kind: "component", type: i2.KbqButton, selector: "[kbq-button]", inputs: ["kbqStyle", "disabled", "tabIndex"] }, { kind: "directive", type: i2.KbqButtonCssStyler, selector: "[kbq-button]" }, { kind: "ngmodule", type: KbqIconModule }, { kind: "component", type: i3.KbqIcon, selector: "[kbq-icon]", inputs: ["small", "autoColor", "kbq-icon"] }, { kind: "ngmodule", type: KbqToolTipModule }, { kind: "directive", type: i4.KbqTooltipTrigger, selector: "[kbqTooltip]", inputs: ["hideWithTimeout", "kbqVisible", "kbqPlacement", "kbqRelativeToPointer", "kbqPlacementPriority", "kbqTooltip", "kbqTooltipDisabled", "kbqEnterDelay", "kbqLeaveDelay", "kbqTrigger", "kbqTooltipClass", "kbqTooltipContext", "kbqTooltipColor", "kbqTooltipArrow", "kbqTooltipOffset"], outputs: ["kbqPlacementChange", "kbqVisibleChange"], exportAs: ["kbqTooltip"] }], animations: [KBQ_ACTIONS_PANEL_CONTAINER_ANIMATION], changeDetection: i0.ChangeDetectionStrategy.Default, encapsulation: i0.ViewEncapsulation.None }); }
|
|
236
238
|
}
|
|
237
239
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: KbqActionsPanelContainer, decorators: [{
|
|
238
240
|
type: Component,
|
|
@@ -250,11 +252,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
250
252
|
<kbq-divider class="kbq-actions-panel-container__vertical-divider" [vertical]="true" />
|
|
251
253
|
<button
|
|
252
254
|
class="kbq-actions-panel-container__close-button"
|
|
255
|
+
color="contrast"
|
|
256
|
+
kbq-button
|
|
253
257
|
[kbqTooltip]="localeConfiguration()!.closeTooltip"
|
|
254
258
|
[kbqTooltipOffset]="16"
|
|
255
259
|
(click)="close()"
|
|
256
|
-
color="contrast"
|
|
257
|
-
kbq-button
|
|
258
260
|
>
|
|
259
261
|
<i kbq-icon="kbq-xmark-circle_16"></i>
|
|
260
262
|
</button>
|
|
@@ -266,7 +268,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
266
268
|
'(@state.start)': 'onAnimationStart($event)',
|
|
267
269
|
'(@state.done)': 'onAnimationDone($event)',
|
|
268
270
|
'(keydown.escape)': 'handleEscape($event)'
|
|
269
|
-
}, changeDetection: ChangeDetectionStrategy.Default, encapsulation: ViewEncapsulation.None, styles: [".kbq-actions-panel-container,.kbq-actions-panel-overlay{--kbq-actions-panel-background-color: var(--kbq-background-contrast);--kbq-actions-panel-text-color: var(--kbq-foreground-on-contrast);--kbq-actions-panel-padding: var(--kbq-size-s);--kbq-actions-panel-margin: var(--kbq-size-s) var(--kbq-size-s) var(--kbq-size-l);--kbq-actions-panel-border-radius: var(--kbq-size-l);--kbq-actions-panel-box-shadow: var(--kbq-shadow-card);--kbq-actions-panel-height: var(--kbq-size-5xl);--kbq-actions-panel-vertical-divider-background-color: var(--kbq-line-contrast-fade);--kbq-actions-panel-vertical-divider-height: var(--kbq-size-m);--kbq-actions-panel-vertical-divider-margin: 0 var(--kbq-size-s)}\n", ".kbq-actions-panel-container{background:var(--kbq-actions-panel-background-color);color:var(--kbq-actions-panel-text-color);box-shadow:var(--kbq-actions-panel-box-shadow);height:var(--kbq-actions-panel-height);padding:var(--kbq-actions-panel-padding);border-radius:var(--kbq-actions-panel-border-radius);display:flex;flex-grow:1;align-items:center;overflow:hidden;box-sizing:border-box}.kbq-actions-panel-container .kbq-actions-panel-container__content{display:flex;align-items:center;flex-grow:1;overflow:hidden}.kbq-actions-panel-container .kbq-actions-panel-container__vertical-divider{background-color:var(--kbq-actions-panel-vertical-divider-background-color);height:var(--kbq-actions-panel-vertical-divider-height)!important;margin:var(--kbq-actions-panel-vertical-divider-margin)}.kbq-actions-panel-overlay{margin:var(--kbq-actions-panel-margin)}
|
|
271
|
+
}, changeDetection: ChangeDetectionStrategy.Default, encapsulation: ViewEncapsulation.None, styles: [".kbq-actions-panel-container,.kbq-actions-panel-overlay{--kbq-actions-panel-background-color: var(--kbq-background-contrast);--kbq-actions-panel-text-color: var(--kbq-foreground-on-contrast);--kbq-actions-panel-padding: var(--kbq-size-s);--kbq-actions-panel-margin: var(--kbq-size-s) var(--kbq-size-s) var(--kbq-size-l);--kbq-actions-panel-border-radius: var(--kbq-size-l);--kbq-actions-panel-box-shadow: var(--kbq-shadow-card);--kbq-actions-panel-height: var(--kbq-size-5xl);--kbq-actions-panel-vertical-divider-background-color: var(--kbq-line-contrast-fade);--kbq-actions-panel-vertical-divider-height: var(--kbq-size-m);--kbq-actions-panel-vertical-divider-margin: 0 var(--kbq-size-s)}\n", ".kbq-actions-panel-container{background:var(--kbq-actions-panel-background-color);color:var(--kbq-actions-panel-text-color);box-shadow:var(--kbq-actions-panel-box-shadow);height:var(--kbq-actions-panel-height);padding:var(--kbq-actions-panel-padding);border-radius:var(--kbq-actions-panel-border-radius);display:flex;flex-grow:1;align-items:center;overflow:hidden;box-sizing:border-box}.kbq-actions-panel-container .kbq-actions-panel-container__content{display:flex;align-items:center;flex-grow:1;overflow:hidden}.kbq-actions-panel-container .kbq-actions-panel-container__vertical-divider{background-color:var(--kbq-actions-panel-vertical-divider-background-color);height:var(--kbq-actions-panel-vertical-divider-height)!important;margin:var(--kbq-actions-panel-vertical-divider-margin)}.kbq-actions-panel-overlay{margin:var(--kbq-actions-panel-margin)}\n"] }]
|
|
270
272
|
}] });
|
|
271
273
|
|
|
272
274
|
/**
|
|
@@ -285,6 +287,22 @@ class KbqActionsPanelRef {
|
|
|
285
287
|
get afterOpened() {
|
|
286
288
|
return this._afterOpened;
|
|
287
289
|
}
|
|
290
|
+
/**
|
|
291
|
+
* Gets the overlay reference for the actions panel.
|
|
292
|
+
*
|
|
293
|
+
* @docs-private
|
|
294
|
+
*/
|
|
295
|
+
get overlayRef() {
|
|
296
|
+
return this.dialogRef.overlayRef;
|
|
297
|
+
}
|
|
298
|
+
/**
|
|
299
|
+
* Gets the ID of the actions panel.
|
|
300
|
+
*
|
|
301
|
+
* @docs-private
|
|
302
|
+
*/
|
|
303
|
+
get id() {
|
|
304
|
+
return this.dialogRef.id;
|
|
305
|
+
}
|
|
288
306
|
constructor(dialogRef, containerInstance) {
|
|
289
307
|
this.dialogRef = dialogRef;
|
|
290
308
|
this._afterOpened = new Subject();
|
|
@@ -338,12 +356,6 @@ const KBQ_ACTIONS_PANEL_DATA = new InjectionToken('KBQ_ACTIONS_PANEL_DATA');
|
|
|
338
356
|
* @docs-private
|
|
339
357
|
*/
|
|
340
358
|
const KBQ_ACTIONS_PANEL_OVERLAY_SELECTOR = 'kbq-actions-panel-overlay';
|
|
341
|
-
/**
|
|
342
|
-
* Selector for custom actions panel overlay container.
|
|
343
|
-
*
|
|
344
|
-
* @docs-private
|
|
345
|
-
*/
|
|
346
|
-
const KBQ_ACTIONS_PANEL_OVERLAY_CONTAINER_SELECTOR = 'kbq-actions-panel-overlay-container';
|
|
347
359
|
/**
|
|
348
360
|
* Service for opening actions panel.
|
|
349
361
|
*/
|
|
@@ -351,9 +363,9 @@ class KbqActionsPanel {
|
|
|
351
363
|
constructor() {
|
|
352
364
|
this.injector = inject(Injector);
|
|
353
365
|
this.overlay = inject(Overlay);
|
|
354
|
-
this.overlayContainer = inject(OverlayContainer);
|
|
355
366
|
this.dialog = inject(Dialog);
|
|
356
367
|
this.defaultConfig = inject(KBQ_ACTIONS_PANEL_DEFAULT_CONFIG);
|
|
368
|
+
this.resizeObserver = inject(SharedResizeObserver);
|
|
357
369
|
/** The reference to the currently opened actions panel. */
|
|
358
370
|
this.openedActionsPanelRef = null;
|
|
359
371
|
}
|
|
@@ -389,14 +401,8 @@ class KbqActionsPanel {
|
|
|
389
401
|
}
|
|
390
402
|
openDialog(componentOrTemplateRef, config = {}) {
|
|
391
403
|
let actionsPanelRef;
|
|
392
|
-
|
|
393
|
-
|
|
394
|
-
// new `OverlayContainer` instance.
|
|
395
|
-
this.overlayContainer['_containerElement'] = config.overlayContainer.nativeElement;
|
|
396
|
-
}
|
|
397
|
-
const overlayContainerElement = this.overlayContainer.getContainerElement();
|
|
398
|
-
overlayContainerElement.classList.add(KBQ_ACTIONS_PANEL_OVERLAY_CONTAINER_SELECTOR);
|
|
399
|
-
const dialogRef = this.dialog.open(componentOrTemplateRef, {
|
|
404
|
+
const { overlayContainer, overlayPanelClass } = config;
|
|
405
|
+
this.dialog.open(componentOrTemplateRef, {
|
|
400
406
|
...config,
|
|
401
407
|
container: KbqActionsPanelContainer,
|
|
402
408
|
restoreFocus: false,
|
|
@@ -409,7 +415,16 @@ class KbqActionsPanel {
|
|
|
409
415
|
// Disable closing since we need to sync it up to the animation ourselves
|
|
410
416
|
disableClose: true,
|
|
411
417
|
scrollStrategy: config.scrollStrategy && config.scrollStrategy(this.overlay),
|
|
412
|
-
positionStrategy:
|
|
418
|
+
positionStrategy: overlayContainer
|
|
419
|
+
? this.overlay
|
|
420
|
+
.position()
|
|
421
|
+
.flexibleConnectedTo(overlayContainer)
|
|
422
|
+
.withPositions([{ originX: 'center', originY: 'bottom', overlayX: 'center', overlayY: 'bottom' }])
|
|
423
|
+
.withFlexibleDimensions()
|
|
424
|
+
.withPush(false)
|
|
425
|
+
.withLockedPosition()
|
|
426
|
+
.withGrowAfterOpen()
|
|
427
|
+
: this.overlay.position().global().centerHorizontally().bottom(),
|
|
413
428
|
templateContext: () => {
|
|
414
429
|
return {
|
|
415
430
|
$implicit: config.data,
|
|
@@ -429,13 +444,23 @@ class KbqActionsPanel {
|
|
|
429
444
|
];
|
|
430
445
|
}
|
|
431
446
|
});
|
|
432
|
-
|
|
433
|
-
|
|
434
|
-
|
|
447
|
+
const { overlayRef } = actionsPanelRef;
|
|
448
|
+
overlayRef.addPanelClass(KBQ_ACTIONS_PANEL_OVERLAY_SELECTOR);
|
|
449
|
+
if (overlayPanelClass)
|
|
450
|
+
overlayRef.addPanelClass(overlayPanelClass);
|
|
451
|
+
if (overlayContainer) {
|
|
452
|
+
const { afterClosed } = actionsPanelRef;
|
|
453
|
+
this.resizeObserver
|
|
454
|
+
.observe(overlayContainer.nativeElement)
|
|
455
|
+
.pipe(takeUntil(afterClosed))
|
|
456
|
+
.subscribe(() => {
|
|
457
|
+
const { width: maxWidth } = overlayContainer.nativeElement.getBoundingClientRect();
|
|
458
|
+
if (!maxWidth)
|
|
459
|
+
return;
|
|
460
|
+
overlayRef.overlayElement.style.maxWidth = coerceCssPixelValue(maxWidth);
|
|
461
|
+
overlayRef.updatePosition();
|
|
462
|
+
});
|
|
435
463
|
}
|
|
436
|
-
actionsPanelRef?.afterClosed.subscribe(() => {
|
|
437
|
-
overlayContainerElement.classList.remove(KBQ_ACTIONS_PANEL_OVERLAY_CONTAINER_SELECTOR);
|
|
438
|
-
});
|
|
439
464
|
return actionsPanelRef;
|
|
440
465
|
}
|
|
441
466
|
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: KbqActionsPanel, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
@@ -467,5 +492,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
467
492
|
* Generated bundle index. Do not edit.
|
|
468
493
|
*/
|
|
469
494
|
|
|
470
|
-
export { KBQ_ACTIONS_PANEL_DATA, KBQ_ACTIONS_PANEL_DEFAULT_CONFIG, KBQ_ACTIONS_PANEL_LOCALE_CONFIGURATION,
|
|
495
|
+
export { KBQ_ACTIONS_PANEL_DATA, KBQ_ACTIONS_PANEL_DEFAULT_CONFIG, KBQ_ACTIONS_PANEL_LOCALE_CONFIGURATION, KBQ_ACTIONS_PANEL_OVERLAY_SELECTOR, KbqActionsPanel, KbqActionsPanelConfig, KbqActionsPanelContainer, KbqActionsPanelModule, KbqActionsPanelRef, kbqActionsPanelDefaultConfigProvider, kbqActionsPanelLocaleConfigurationProvider };
|
|
471
496
|
//# sourceMappingURL=koobiq-components-actions-panel.mjs.map
|