@fundamental-ngx/core 0.35.0-rc.7 → 0.35.0-rc.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (115) hide show
  1. package/action-bar/package.json +1 -1
  2. package/action-sheet/package.json +1 -1
  3. package/alert/package.json +1 -1
  4. package/avatar/package.json +1 -1
  5. package/avatar-group/package.json +1 -1
  6. package/bar/package.json +1 -1
  7. package/breadcrumb/package.json +1 -1
  8. package/busy-indicator/package.json +1 -1
  9. package/button/package.json +1 -1
  10. package/calendar/package.json +1 -1
  11. package/card/package.json +1 -1
  12. package/carousel/package.json +1 -1
  13. package/checkbox/package.json +1 -1
  14. package/combobox/package.json +1 -1
  15. package/date-picker/package.json +1 -1
  16. package/datetime/package.json +1 -1
  17. package/datetime-picker/package.json +1 -1
  18. package/dialog/package.json +1 -1
  19. package/dynamic-page/package.json +1 -1
  20. package/dynamic-side-content/package.json +1 -1
  21. package/esm2020/link/constants.mjs +4 -0
  22. package/esm2020/link/public_api.mjs +2 -1
  23. package/esm2020/upload-collection/upload-collection-item.directive.mjs +5 -2
  24. package/facets/package.json +1 -1
  25. package/feed-input/package.json +1 -1
  26. package/feed-list-item/package.json +1 -1
  27. package/fesm2015/fundamental-ngx-core-link.mjs +5 -1
  28. package/fesm2015/fundamental-ngx-core-link.mjs.map +1 -1
  29. package/fesm2015/fundamental-ngx-core-upload-collection.mjs +4 -2
  30. package/fesm2015/fundamental-ngx-core-upload-collection.mjs.map +1 -1
  31. package/fesm2020/fundamental-ngx-core-link.mjs +5 -1
  32. package/fesm2020/fundamental-ngx-core-link.mjs.map +1 -1
  33. package/fesm2020/fundamental-ngx-core-upload-collection.mjs +4 -2
  34. package/fesm2020/fundamental-ngx-core-upload-collection.mjs.map +1 -1
  35. package/file-uploader/package.json +1 -1
  36. package/fixed-card-layout/package.json +1 -1
  37. package/flexible-column-layout/package.json +1 -1
  38. package/form/package.json +1 -1
  39. package/formatted-text/package.json +1 -1
  40. package/grid-list/package.json +1 -1
  41. package/icon/package.json +1 -1
  42. package/illustrated-message/package.json +1 -1
  43. package/infinite-scroll/package.json +1 -1
  44. package/info-label/package.json +1 -1
  45. package/inline-help/package.json +1 -1
  46. package/input-group/package.json +1 -1
  47. package/layout-grid/package.json +1 -1
  48. package/layout-panel/package.json +1 -1
  49. package/link/constants.d.ts +3 -0
  50. package/link/esm2020/constants.mjs +4 -0
  51. package/link/esm2020/public_api.mjs +2 -1
  52. package/link/fesm2015/fundamental-ngx-core-link.mjs +5 -1
  53. package/link/fesm2015/fundamental-ngx-core-link.mjs.map +1 -1
  54. package/link/fesm2020/fundamental-ngx-core-link.mjs +5 -1
  55. package/link/fesm2020/fundamental-ngx-core-link.mjs.map +1 -1
  56. package/link/package.json +1 -1
  57. package/link/public_api.d.ts +1 -0
  58. package/list/package.json +1 -1
  59. package/menu/package.json +1 -1
  60. package/message-box/package.json +1 -1
  61. package/message-strip/package.json +1 -1
  62. package/message-toast/package.json +1 -1
  63. package/micro-process-flow/package.json +1 -1
  64. package/mobile-mode/package.json +1 -1
  65. package/multi-input/package.json +1 -1
  66. package/nested-list/package.json +1 -1
  67. package/notification/package.json +1 -1
  68. package/object-identifier/package.json +1 -1
  69. package/object-marker/package.json +1 -1
  70. package/object-number/package.json +1 -1
  71. package/object-status/package.json +1 -1
  72. package/package.json +1 -1
  73. package/pagination/package.json +1 -1
  74. package/panel/package.json +1 -1
  75. package/popover/package.json +1 -1
  76. package/product-switch/package.json +1 -1
  77. package/progress-indicator/package.json +1 -1
  78. package/quick-view/package.json +1 -1
  79. package/radio/package.json +1 -1
  80. package/rating-indicator/package.json +1 -1
  81. package/resizable-card-layout/package.json +1 -1
  82. package/scroll-spy/package.json +1 -1
  83. package/scrollbar/package.json +1 -1
  84. package/segmented-button/package.json +1 -1
  85. package/select/package.json +1 -1
  86. package/shared/package.json +1 -1
  87. package/shellbar/package.json +1 -1
  88. package/side-navigation/package.json +1 -1
  89. package/slider/package.json +1 -1
  90. package/split-button/package.json +1 -1
  91. package/splitter/package.json +1 -1
  92. package/status-indicator/package.json +1 -1
  93. package/step-input/package.json +1 -1
  94. package/switch/package.json +1 -1
  95. package/table/package.json +1 -1
  96. package/tabs/package.json +1 -1
  97. package/text/package.json +1 -1
  98. package/theming/package.json +1 -1
  99. package/tile/package.json +1 -1
  100. package/time/package.json +1 -1
  101. package/time-picker/package.json +1 -1
  102. package/timeline/package.json +1 -1
  103. package/title/package.json +1 -1
  104. package/token/package.json +1 -1
  105. package/toolbar/package.json +1 -1
  106. package/tree/package.json +1 -1
  107. package/upload-collection/esm2020/upload-collection-item.directive.mjs +5 -2
  108. package/upload-collection/fesm2015/fundamental-ngx-core-upload-collection.mjs +4 -2
  109. package/upload-collection/fesm2015/fundamental-ngx-core-upload-collection.mjs.map +1 -1
  110. package/upload-collection/fesm2020/fundamental-ngx-core-upload-collection.mjs +4 -2
  111. package/upload-collection/fesm2020/fundamental-ngx-core-upload-collection.mjs.map +1 -1
  112. package/upload-collection/package.json +1 -1
  113. package/utils/package.json +1 -1
  114. package/vertical-navigation/package.json +1 -1
  115. package/wizard/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"fundamental-ngx-core-link.mjs","sources":["../../../../libs/core/src/lib/link/link.component.ts","../../../../libs/core/src/lib/link/link.component.html","../../../../libs/core/src/lib/link/link.module.ts","../../../../libs/core/src/lib/link/fundamental-ngx-core-link.ts"],"sourcesContent":["import {\n AfterViewInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChildren,\n ElementRef,\n Input,\n OnChanges,\n OnDestroy,\n OnInit,\n QueryList,\n ViewChild,\n ViewEncapsulation\n} from '@angular/core';\nimport { applyCssClass, CssClassBuilder } from '@fundamental-ngx/core/utils';\nimport { ContentObserver } from '@angular/cdk/observers';\nimport { map, startWith, Subject, takeUntil, tap } from 'rxjs';\nimport { DomPortal, Portal } from '@angular/cdk/portal';\nimport { IconComponent } from '@fundamental-ngx/core/icon';\n\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: '[fdLink], [fd-link]',\n templateUrl: './link.component.html',\n styleUrls: ['./link.component.scss'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class LinkComponent implements OnChanges, OnInit, CssClassBuilder, AfterViewInit, OnDestroy {\n @ContentChildren(IconComponent)\n iconComponents: QueryList<IconComponent>;\n\n @ViewChild('content')\n contentSpan: ElementRef<HTMLSpanElement>;\n\n /** user's custom classes */\n @Input()\n class: string;\n\n /** Whether user wants to use emphasized mode */\n @Input()\n emphasized: boolean;\n\n /** Whether user wants to put disabled mode */\n @Input()\n disabled: boolean;\n\n /** Whether user wants to use inverted mode */\n @Input()\n inverted: boolean;\n\n /** Whether user wants to use subtle mode */\n @Input()\n subtle: boolean;\n\n /** Whether user wants to have a link without underline decoration */\n @Input()\n undecorated: boolean;\n\n /** @hidden */\n _prefixPortal: Portal<any> | null;\n\n /** @hidden */\n _postfixPortal: Portal<any> | null;\n\n /** @hidden */\n private _destroyed$ = new Subject<void>();\n\n /** @hidden */\n constructor(\n private _elementRef: ElementRef<Element>,\n private contentObserver: ContentObserver,\n private changeDetectorRef: ChangeDetectorRef\n ) {}\n\n /** @hidden */\n ngOnChanges(): void {\n this.buildComponentCssClass();\n }\n\n @applyCssClass\n /** CssClassBuilder interface implementation\n * function is responsible for order which css classes are applied\n */\n buildComponentCssClass(): string[] {\n return [\n 'fd-link',\n this.emphasized ? 'fd-link--emphasized' : '',\n this.disabled ? 'is-disabled' : '',\n this.inverted ? `fd-link--inverted` : '',\n this.subtle ? 'fd-link--subtle' : '',\n this.undecorated ? 'fd-link--undecorated' : '',\n this.class\n ];\n }\n\n /** @hidden */\n elementRef(): ElementRef<any> {\n return this._elementRef;\n }\n\n /** @hidden */\n ngOnInit(): void {\n this.buildComponentCssClass();\n }\n\n /** @hidden */\n ngAfterViewInit(): void {\n this.iconComponents.changes\n .pipe(\n startWith(this.iconComponents),\n map((c) => c.toArray()),\n map((icons) =>\n // We are only interested in the first descendant of the content element\n icons.filter(\n (icon) => icon.elementRef().nativeElement.parentElement === this.contentSpan.nativeElement\n )\n ),\n map((icons) => {\n if (icons.length === 0) {\n return {};\n }\n const prefix =\n icons[0].elementRef().nativeElement === this.contentSpan.nativeElement.childNodes[0]\n ? icons[0].elementRef().nativeElement\n : null;\n const postfix =\n icons[icons.length - 1].elementRef().nativeElement ===\n this.contentSpan.nativeElement.childNodes[this.contentSpan.nativeElement.childNodes.length - 1]\n ? icons[icons.length - 1].elementRef().nativeElement\n : null;\n return { prefix, postfix };\n }),\n tap(() => {\n if (this._prefixPortal?.isAttached) {\n this._prefixPortal.detach();\n }\n if (this._postfixPortal?.isAttached) {\n this._postfixPortal.detach();\n }\n }),\n tap(({ prefix, postfix }) => {\n this._prefixPortal = prefix ? new DomPortal(prefix) : null;\n this._postfixPortal = postfix ? new DomPortal(postfix) : null;\n }),\n tap(() => {\n this.changeDetectorRef.detectChanges();\n }),\n takeUntil(this._destroyed$)\n )\n .subscribe();\n }\n\n /** @hidden */\n ngOnDestroy(): void {\n this._destroyed$.next();\n this._destroyed$.complete();\n }\n}\n","<span *ngIf=\"_prefixPortal\">\n <ng-container *cdkPortalOutlet=\"_prefixPortal\"></ng-container>\n</span>\n<span class=\"fd-link__content\" #content>\n <ng-content></ng-content>\n</span>\n<span *ngIf=\"_postfixPortal\">\n <ng-container *cdkPortalOutlet=\"_postfixPortal\"></ng-container>\n</span>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { LinkComponent } from './link.component';\nimport { PortalModule } from '@angular/cdk/portal';\n\n@NgModule({\n declarations: [LinkComponent],\n imports: [CommonModule, PortalModule],\n exports: [LinkComponent]\n})\nexport class LinkModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fundamental-ngx-core-link.mjs","sources":["../../../../libs/core/src/lib/link/link.component.ts","../../../../libs/core/src/lib/link/link.component.html","../../../../libs/core/src/lib/link/link.module.ts","../../../../libs/core/src/lib/link/constants.ts","../../../../libs/core/src/lib/link/fundamental-ngx-core-link.ts"],"sourcesContent":["import {\n AfterViewInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChildren,\n ElementRef,\n Input,\n OnChanges,\n OnDestroy,\n OnInit,\n QueryList,\n ViewChild,\n ViewEncapsulation\n} from '@angular/core';\nimport { applyCssClass, CssClassBuilder } from '@fundamental-ngx/core/utils';\nimport { ContentObserver } from '@angular/cdk/observers';\nimport { map, startWith, Subject, takeUntil, tap } from 'rxjs';\nimport { DomPortal, Portal } from '@angular/cdk/portal';\nimport { IconComponent } from '@fundamental-ngx/core/icon';\n\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: '[fdLink], [fd-link]',\n templateUrl: './link.component.html',\n styleUrls: ['./link.component.scss'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class LinkComponent implements OnChanges, OnInit, CssClassBuilder, AfterViewInit, OnDestroy {\n @ContentChildren(IconComponent)\n iconComponents: QueryList<IconComponent>;\n\n @ViewChild('content')\n contentSpan: ElementRef<HTMLSpanElement>;\n\n /** user's custom classes */\n @Input()\n class: string;\n\n /** Whether user wants to use emphasized mode */\n @Input()\n emphasized: boolean;\n\n /** Whether user wants to put disabled mode */\n @Input()\n disabled: boolean;\n\n /** Whether user wants to use inverted mode */\n @Input()\n inverted: boolean;\n\n /** Whether user wants to use subtle mode */\n @Input()\n subtle: boolean;\n\n /** Whether user wants to have a link without underline decoration */\n @Input()\n undecorated: boolean;\n\n /** @hidden */\n _prefixPortal: Portal<any> | null;\n\n /** @hidden */\n _postfixPortal: Portal<any> | null;\n\n /** @hidden */\n private _destroyed$ = new Subject<void>();\n\n /** @hidden */\n constructor(\n private _elementRef: ElementRef<Element>,\n private contentObserver: ContentObserver,\n private changeDetectorRef: ChangeDetectorRef\n ) {}\n\n /** @hidden */\n ngOnChanges(): void {\n this.buildComponentCssClass();\n }\n\n @applyCssClass\n /** CssClassBuilder interface implementation\n * function is responsible for order which css classes are applied\n */\n buildComponentCssClass(): string[] {\n return [\n 'fd-link',\n this.emphasized ? 'fd-link--emphasized' : '',\n this.disabled ? 'is-disabled' : '',\n this.inverted ? `fd-link--inverted` : '',\n this.subtle ? 'fd-link--subtle' : '',\n this.undecorated ? 'fd-link--undecorated' : '',\n this.class\n ];\n }\n\n /** @hidden */\n elementRef(): ElementRef<any> {\n return this._elementRef;\n }\n\n /** @hidden */\n ngOnInit(): void {\n this.buildComponentCssClass();\n }\n\n /** @hidden */\n ngAfterViewInit(): void {\n this.iconComponents.changes\n .pipe(\n startWith(this.iconComponents),\n map((c) => c.toArray()),\n map((icons) =>\n // We are only interested in the first descendant of the content element\n icons.filter(\n (icon) => icon.elementRef().nativeElement.parentElement === this.contentSpan.nativeElement\n )\n ),\n map((icons) => {\n if (icons.length === 0) {\n return {};\n }\n const prefix =\n icons[0].elementRef().nativeElement === this.contentSpan.nativeElement.childNodes[0]\n ? icons[0].elementRef().nativeElement\n : null;\n const postfix =\n icons[icons.length - 1].elementRef().nativeElement ===\n this.contentSpan.nativeElement.childNodes[this.contentSpan.nativeElement.childNodes.length - 1]\n ? icons[icons.length - 1].elementRef().nativeElement\n : null;\n return { prefix, postfix };\n }),\n tap(() => {\n if (this._prefixPortal?.isAttached) {\n this._prefixPortal.detach();\n }\n if (this._postfixPortal?.isAttached) {\n this._postfixPortal.detach();\n }\n }),\n tap(({ prefix, postfix }) => {\n this._prefixPortal = prefix ? new DomPortal(prefix) : null;\n this._postfixPortal = postfix ? new DomPortal(postfix) : null;\n }),\n tap(() => {\n this.changeDetectorRef.detectChanges();\n }),\n takeUntil(this._destroyed$)\n )\n .subscribe();\n }\n\n /** @hidden */\n ngOnDestroy(): void {\n this._destroyed$.next();\n this._destroyed$.complete();\n }\n}\n","<span *ngIf=\"_prefixPortal\">\n <ng-container *cdkPortalOutlet=\"_prefixPortal\"></ng-container>\n</span>\n<span class=\"fd-link__content\" #content>\n <ng-content></ng-content>\n</span>\n<span *ngIf=\"_postfixPortal\">\n <ng-container *cdkPortalOutlet=\"_postfixPortal\"></ng-container>\n</span>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { LinkComponent } from './link.component';\nimport { PortalModule } from '@angular/cdk/portal';\n\n@NgModule({\n declarations: [LinkComponent],\n imports: [CommonModule, PortalModule],\n exports: [LinkComponent]\n})\nexport class LinkModule {}\n","export const LINK_CLASS_NAME = {\n linkContent: 'fd-link__content'\n} as const;\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
@@ -13,7 +13,7 @@ import * as i1$3 from '@fundamental-ngx/core/form';
13
13
  import { FormControlModule } from '@fundamental-ngx/core/form';
14
14
  import * as i3 from '@angular/forms';
15
15
  import { FormsModule } from '@angular/forms';
16
- import { LinkModule } from '@fundamental-ngx/core/link';
16
+ import { LINK_CLASS_NAME, LinkModule } from '@fundamental-ngx/core/link';
17
17
  import { Subscription } from 'rxjs';
18
18
 
19
19
  class UploadCollectionThumbnailDirective {
@@ -313,7 +313,9 @@ class UploadCollectionItemDirective {
313
313
  /** @hidden */
314
314
  ngAfterContentInit() {
315
315
  this.fileNameFull = this.fileName + '.' + this.extension;
316
- this._titleDirective.elRef.nativeElement.innerHTML = this.fileNameFull;
316
+ this._titleDirective.elRef.nativeElement.tabIndex = '0';
317
+ this._titleDirective.elRef.nativeElement.innerHTML =
318
+ '<span class="' + LINK_CLASS_NAME.linkContent + '">' + this.fileNameFull + '</span>';
317
319
  this._handleDeleteClickedSubscription();
318
320
  this._handleOkClickedSubscription();
319
321
  this._handleEditClickedSubscription();
@@ -1 +1 @@
1
- {"version":3,"file":"fundamental-ngx-core-upload-collection.mjs","sources":["../../../../libs/core/src/lib/upload-collection/upload-collection-simple.directives.ts","../../../../libs/core/src/lib/upload-collection/upload-collection.component.ts","../../../../libs/core/src/lib/upload-collection/upload-collection-button-group/upload-collection-button-group.component.ts","../../../../libs/core/src/lib/upload-collection/upload-collection-button-group/upload-collection-button-group.component.html","../../../../libs/core/src/lib/upload-collection/upload-collection-form-item/upload-collection-form-item.component.ts","../../../../libs/core/src/lib/upload-collection/upload-collection-form-item/upload-collection-form-item.component.html","../../../../libs/core/src/lib/upload-collection/upload-collection-item.directive.ts","../../../../libs/core/src/lib/upload-collection/upload-collection.module.ts","../../../../libs/core/src/lib/upload-collection/fundamental-ngx-core-upload-collection.ts"],"sourcesContent":["import {\n ContentChildren,\n Directive,\n ElementRef,\n HostBinding,\n Inject,\n OnInit,\n Optional,\n QueryList\n} from '@angular/core';\nimport { ObjectMarkerComponent } from '@fundamental-ngx/core/object-marker';\nimport { ObjectStatusComponent } from '@fundamental-ngx/core/object-status';\n\n@Directive({\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: '[fd-upload-collection-thumbnail]',\n host: { class: 'fd-upload-collection__thumbnail' }\n})\nexport class UploadCollectionThumbnailDirective {}\n\n@Directive({\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: '[fd-upload-collection-title]',\n host: { class: 'fd-upload-collection__title' }\n})\nexport class UploadCollectionTitleDirective {\n constructor(public elRef: ElementRef) {}\n}\n\n@Directive({\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: '[fd-upload-collection-description]',\n host: { class: 'fd-upload-collection__description' }\n})\nexport class UploadCollectionDescriptionDirective {}\n\n@Directive({\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: '[fd-upload-collection-text-separator], fd-upload-collection-text-separator',\n host: { class: 'fd-upload-collection__text-separator' }\n})\nexport class UploadCollectionTextSeparatorDirective {}\n\n@Directive({\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: '[fd-upload-collection-status-group]',\n host: { class: 'fd-upload-collection__status-group' }\n})\nexport class UploadCollectionStatusGroupDirective {}\n\n@Directive({\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: '[fd-upload-collection-status-item]',\n host: { class: 'fd-upload-collection__status-group-item' }\n})\nexport class UploadCollectionStatusItemDirective implements OnInit {\n constructor(@Optional() @Inject(ObjectStatusComponent) private _objectStatus: ObjectStatusComponent) {}\n\n ngOnInit(): void {\n if (this._objectStatus) {\n this._objectStatus._textClass += ' fd-upload-collection__status-group-item-text';\n }\n }\n}\n\n@Directive({\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: '[fd-upload-collection-title-container]'\n})\nexport class UploadCollectionTitleContainerDirective {\n /** @hidden */\n @ContentChildren(ObjectMarkerComponent)\n _objectMarkerComponents: QueryList<ObjectMarkerComponent>;\n\n /** Whether or not this is in edit mode. */\n @HostBinding('class.fd-upload-collection__title-container')\n applyContainerClass = true;\n}\n","import { ChangeDetectionStrategy, Component, HostBinding, Input, ViewEncapsulation } from '@angular/core';\n\n@Component({\n selector: 'fd-upload-collection',\n host: { class: 'fd-upload-collection' },\n styleUrls: ['./upload-collection.component.scss'],\n template: `<ul fd-list [byline]=\"true\" [selection]=\"selection\">\n <ng-content></ng-content>\n </ul>`,\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class UploadCollectionComponent {\n /** Whether or not this is the small upload collection. */\n @Input()\n @HostBinding('class.fd-upload-collection--sm')\n small = false;\n\n /** Whether or not this upload collection supports selection. */\n @Input()\n selection = false;\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n EventEmitter,\n Input,\n Output,\n ViewChild,\n ViewEncapsulation\n} from '@angular/core';\nimport { ButtonComponent } from '@fundamental-ngx/core/button';\n\n@Component({\n selector: 'fd-upload-collection-button-group',\n host: { class: 'fd-upload-collection__button-group' },\n templateUrl: './upload-collection-button-group.component.html',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class UploadCollectionButtonGroupComponent {\n /** @hidden */\n _editMode = false;\n\n /** Event emitted when the user clicks the edit button. */\n @Output()\n readonly editClicked = new EventEmitter<boolean>();\n\n /** Event emitted when the user clicks the OK button to conform a file name change. */\n @Output()\n readonly okClicked = new EventEmitter<any>();\n\n /** Event emitted when the user clicks the delete button. */\n @Output()\n readonly deleteClicked = new EventEmitter<any>();\n\n /** Whether or not to allow file name editing. Default is true. */\n @Input()\n allowFileNameEdit = true;\n\n /** Whether or not to show the delete button. Default is true. */\n @Input()\n allowFileDeletion = true;\n\n /** Whether or not to disable the file name edit button. Default is false. */\n @Input()\n disableFileNameEdit = false;\n\n /** Whether or not to disable the delete button. Default is false. */\n @Input()\n disableFileDeletion = false;\n\n /** Text for the 'Ok' button. */\n @Input()\n okText = 'Ok';\n\n /** Text for the 'Cancel' button. */\n @Input()\n cancelText = 'Cancel';\n\n /** Text for the 'Edit' aria-label. */\n @Input()\n editAriaLabel = 'Edit';\n\n /** Text for the 'Delete' aria-label. */\n @Input()\n deleteAriaLabel = 'Delete';\n\n /** Text for the 'Ok' aria-label. */\n @Input()\n okAriaLabel = 'Edit';\n\n /** Text for the 'Cancel' aria-label. */\n @Input()\n cancelAriaLabel = 'Cancel';\n\n /** @hidden */\n @ViewChild('okButton')\n _okButton: ButtonComponent;\n\n /** @hidden */\n _editButtonClicked(event?: MouseEvent): void {\n if (event) {\n event.stopPropagation();\n }\n this.editClicked.emit(true);\n this._editMode = true;\n }\n\n /** @hidden */\n _deleteButtonClicked(event?: MouseEvent): void {\n if (event) {\n event.stopPropagation();\n }\n this.deleteClicked.emit();\n }\n\n /** @hidden */\n _okButtonClicked(event?: MouseEvent): void {\n if (event) {\n event.stopPropagation();\n }\n this.okClicked.emit();\n }\n\n /** @hidden */\n _cancelButtonClicked(event?: MouseEvent): void {\n if (event) {\n event.stopPropagation();\n }\n this.editClicked.emit(false);\n this._editMode = false;\n }\n}\n","<button\n *ngIf=\"!_editMode && allowFileNameEdit\"\n [disabled]=\"disableFileNameEdit\"\n (click)=\"_editButtonClicked($event)\"\n fd-button\n fdType=\"transparent\"\n glyph=\"edit\"\n [attr.aria-label]=\"editAriaLabel\"\n></button>\n<button\n *ngIf=\"!_editMode && allowFileDeletion\"\n [disabled]=\"disableFileDeletion\"\n (click)=\"_deleteButtonClicked($event)\"\n fd-button\n fdType=\"transparent\"\n glyph=\"decline\"\n [attr.aria-label]=\"deleteAriaLabel\"\n></button>\n<button\n #okButton\n [style.display]=\"_editMode ? 'inline-flex' : 'none'\"\n (click)=\"_okButtonClicked($event)\"\n fd-button\n fdType=\"transparent\"\n [attr.aria-label]=\"okAriaLabel\"\n>\n {{ okText }}\n</button>\n<button\n *ngIf=\"_editMode\"\n (click)=\"_cancelButtonClicked($event)\"\n fd-button\n fdType=\"transparent\"\n [attr.aria-label]=\"cancelAriaLabel\"\n>\n {{ cancelText }}\n</button>\n","import { Component, EventEmitter, Input, Output, ViewEncapsulation } from '@angular/core';\nimport { ControlValueAccessor } from '@angular/forms';\n\n@Component({\n selector: 'fd-upload-collection-form-item',\n host: { class: 'fd-upload-collection__form-item' },\n templateUrl: './upload-collection-form-item.component.html',\n encapsulation: ViewEncapsulation.None\n})\nexport class UploadCollectionFormItemComponent implements ControlValueAccessor {\n /** Value for the input's placeholder. */\n @Input()\n placeholder = 'Filename';\n\n /** @hidden */\n @Input()\n _editMode = false;\n\n /** @hidden */\n _fileNameValue: string;\n\n /** @hidden */\n _extension: string;\n\n /** Event emitted when the dragged file exits the dropzone. */\n @Output()\n readonly fileNameChanged = new EventEmitter<string>();\n\n /** Get the value of the text input. */\n get fileName(): string {\n return this._fileNameValue;\n }\n\n /** Set the value of the text input. */\n set fileName(value) {\n this._fileNameValue = value;\n this.onChange(value);\n this.onTouched();\n this.fileNameChanged.emit(value);\n }\n\n /** @hidden */\n onChange: (value: string) => void = () => {};\n\n /** @hidden */\n onTouched = (): void => {};\n\n /** @hidden */\n writeValue(value: string): void {\n this.fileName = value;\n }\n\n /** @hidden */\n registerOnChange(fn: (value: string) => void): void {\n this.onChange = fn;\n }\n\n /** @hidden */\n registerOnTouched(fn: () => void): void {\n this.onTouched = fn;\n }\n}\n","<input\n *ngIf=\"_editMode\"\n fd-form-control\n required\n style=\"pointer-events: all\"\n class=\"fd-input\"\n type=\"text\"\n [attr.placeholder]=\"placeholder\"\n [(ngModel)]=\"fileName\"\n [state]=\"!fileName ? 'error' : null\"\n (click)=\"$event.stopPropagation()\"\n/>\n<span *ngIf=\"_editMode\" class=\"fd-upload-collection__extension\">.{{ _extension }}</span>\n","import {\n AfterContentInit,\n AfterViewInit,\n ContentChild,\n Directive,\n ElementRef,\n EventEmitter,\n HostListener,\n Input,\n OnDestroy,\n Output\n} from '@angular/core';\nimport { UploadCollectionFormItemComponent } from './upload-collection-form-item/upload-collection-form-item.component';\nimport { UploadCollectionButtonGroupComponent } from './upload-collection-button-group/upload-collection-button-group.component';\nimport { Subscription } from 'rxjs';\nimport {\n UploadCollectionTitleContainerDirective,\n UploadCollectionTitleDirective\n} from './upload-collection-simple.directives';\n\n@Directive({\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: '[fd-upload-collection-item]',\n host: { class: 'fd-upload-collection__item' }\n})\nexport class UploadCollectionItemDirective implements AfterContentInit, OnDestroy, AfterViewInit {\n /** The name of the file, not including the type extension. */\n @Input()\n fileName: string;\n\n /** The file type extension. */\n @Input()\n extension: string;\n\n /** @hidden */\n @ContentChild(UploadCollectionFormItemComponent)\n _formItemComponent: UploadCollectionFormItemComponent;\n\n /** @hidden */\n @ContentChild(UploadCollectionTitleDirective)\n _titleDirective: UploadCollectionTitleDirective;\n\n /** @hidden */\n @ContentChild(UploadCollectionButtonGroupComponent)\n _buttonGroupComponent: UploadCollectionButtonGroupComponent;\n\n /** @hidden */\n @ContentChild(UploadCollectionTitleContainerDirective)\n _titleContainerDirective: UploadCollectionTitleContainerDirective;\n\n /** Event emitted when the user changes a file name. */\n @Output()\n readonly fileNameChanged = new EventEmitter<any>();\n\n /** Event emitted when presses the delete button. */\n @Output()\n readonly deleteClicked = new EventEmitter<any>();\n\n /** @hidden */\n private _subscriptions = new Subscription();\n\n /** @hidden */\n fileNameFull: string;\n\n /** @hidden */\n titleWidth: number;\n\n /** @hidden used to compare to the current width to know whether to collapse or expand title */\n previousContainerWidth: number;\n\n /** @hidden */\n containerWidth: number;\n\n /** @hidden */\n ngAfterContentInit(): void {\n this.fileNameFull = this.fileName + '.' + this.extension;\n this._titleDirective.elRef.nativeElement.innerHTML = this.fileNameFull;\n this._handleDeleteClickedSubscription();\n this._handleOkClickedSubscription();\n this._handleEditClickedSubscription();\n this._handleFormItemInputChangedSubscription();\n }\n\n /** @hidden */\n ngAfterViewInit(): void {\n // Process resize after all the children views is initialized\n setTimeout(() => this.onResize());\n }\n\n /** @hidden */\n ngOnDestroy(): void {\n this._subscriptions.unsubscribe();\n }\n\n constructor(public elementRef: ElementRef) {}\n\n /** @hidden */\n @HostListener('window:resize', [])\n onResize(): void {\n if (!this.elementRef.nativeElement.parentElement) {\n return;\n }\n this.titleWidth = this.getTitleWidth();\n this.containerWidth = this.getContainerWidth();\n\n // if first load and no previous container width, or if container boundary is resized to smaller than before\n if (!this.previousContainerWidth || this.containerWidth < this.previousContainerWidth) {\n // and the title extends past the container, 1.05x padding to prevent jaggy resizing.\n if (this.titleWidth * 1.05 >= this.containerWidth) {\n this.resizeFileTitle(this._titleDirective.elRef.nativeElement.innerHTML);\n }\n } else if (this.previousContainerWidth && this.containerWidth > this.previousContainerWidth) {\n // Looks to expand file title if container width is resized to greater than before\n // reset file title to initial\n this._titleDirective.elRef.nativeElement.innerHTML = this.fileNameFull;\n this.resizeFileTitle(this.fileNameFull);\n }\n\n this.previousContainerWidth = this.containerWidth;\n }\n\n /** @hidden */\n private _handleOkClickedSubscription(): void {\n this._subscriptions.add(\n this._buttonGroupComponent.okClicked.subscribe(() => {\n if (this._formItemComponent.fileName && this._formItemComponent.fileName !== '') {\n this.fileName = this._formItemComponent.fileName;\n this._titleDirective.elRef.nativeElement.style.display = 'inline-block';\n this.fileNameFull = this.fileName + '.' + this.extension;\n this._titleDirective.elRef.nativeElement.innerHTML = this.fileNameFull;\n this.resizeFileTitle(this.fileNameFull);\n this._formItemComponent._editMode = false;\n this._buttonGroupComponent._editMode = false;\n this.fileNameChanged.emit(this);\n }\n })\n );\n }\n\n /** @hidden */\n private _handleEditClickedSubscription(): void {\n this._subscriptions.add(\n this._buttonGroupComponent.editClicked.subscribe((event) => {\n this._formItemComponent._editMode = event;\n if (this._titleContainerDirective) {\n this._titleContainerDirective.applyContainerClass = !event;\n }\n const styles: CSSStyleDeclaration[] = [];\n styles.push((this._titleDirective.elRef.nativeElement as HTMLElement).style);\n this._titleContainerDirective?._objectMarkerComponents?.forEach((objectMarker) => {\n styles.push(objectMarker.elementRef().nativeElement.style);\n });\n event\n ? styles.forEach((style) => (style.display = 'none'))\n : styles.forEach((style) => (style.display = 'inline-block'));\n if (event) {\n this._formItemComponent._extension = this.extension;\n this._formItemComponent.fileName = this.fileName;\n }\n })\n );\n }\n\n /** @hidden */\n private _handleDeleteClickedSubscription(): void {\n this._subscriptions.add(\n this._buttonGroupComponent.deleteClicked.subscribe(() => {\n this.deleteClicked.emit(this);\n })\n );\n }\n\n /** @hidden */\n private _handleFormItemInputChangedSubscription(): void {\n this._subscriptions.add(\n this._formItemComponent.fileNameChanged.subscribe((event) => {\n this._buttonGroupComponent._okButton.disabled = event === '';\n this._buttonGroupComponent._okButton.buildComponentCssClass();\n })\n );\n }\n\n /** @hidden */\n private getTitleWidth(): number {\n return this._titleDirective.elRef.nativeElement.getBoundingClientRect().width;\n }\n\n /** @hidden */\n private getContainerWidth(): number {\n return this._titleDirective.elRef.nativeElement.parentElement.getBoundingClientRect().width;\n }\n\n /**\n * @hidden\n *\n * truncates the string by cutting out excess length in the middle and replacing with '...'\n */\n private truncateTitle(str: string): string {\n const cutLength = Math.floor(str.length * 0.8);\n\n if (str.length > cutLength) {\n const stringLeftIndex = Math.floor(cutLength / 2);\n const stringRightIndex = str.length - stringLeftIndex + 3;\n return str.substring(0, stringLeftIndex) + '...' + str.substring(stringRightIndex, str.length);\n }\n return str;\n }\n\n /**\n * @hidden\n *\n * determines if file title needs to be truncated given container constraint.\n */\n private resizeFileTitle(titleStr: string): void {\n let curTitle = titleStr;\n this.containerWidth = this.getContainerWidth();\n this.titleWidth = this.getTitleWidth();\n\n // repeatedly truncate the title until it fits inside container\n while (this.titleWidth * 1.05 >= this.containerWidth) {\n const truncatedTitleStr = this.truncateTitle(curTitle);\n this._titleDirective.elRef.nativeElement.innerHTML = truncatedTitleStr;\n curTitle = truncatedTitleStr;\n this.titleWidth = this.getTitleWidth();\n this.containerWidth = this.getContainerWidth();\n }\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport {\n UploadCollectionDescriptionDirective,\n UploadCollectionStatusGroupDirective,\n UploadCollectionStatusItemDirective,\n UploadCollectionTextSeparatorDirective,\n UploadCollectionThumbnailDirective,\n UploadCollectionTitleContainerDirective,\n UploadCollectionTitleDirective\n} from './upload-collection-simple.directives';\nimport { ListModule } from '@fundamental-ngx/core/list';\nimport { UploadCollectionComponent } from './upload-collection.component';\nimport { UploadCollectionButtonGroupComponent } from './upload-collection-button-group/upload-collection-button-group.component';\nimport { ButtonModule } from '@fundamental-ngx/core/button';\nimport { UploadCollectionFormItemComponent } from './upload-collection-form-item/upload-collection-form-item.component';\nimport { LinkModule } from '@fundamental-ngx/core/link';\nimport { FormsModule } from '@angular/forms';\nimport { FormControlModule } from '@fundamental-ngx/core/form';\nimport { UploadCollectionItemDirective } from './upload-collection-item.directive';\n\n@NgModule({\n declarations: [\n UploadCollectionComponent,\n UploadCollectionItemDirective,\n UploadCollectionThumbnailDirective,\n UploadCollectionTitleDirective,\n UploadCollectionDescriptionDirective,\n UploadCollectionTextSeparatorDirective,\n UploadCollectionStatusGroupDirective,\n UploadCollectionStatusItemDirective,\n UploadCollectionButtonGroupComponent,\n UploadCollectionFormItemComponent,\n UploadCollectionTitleContainerDirective\n ],\n imports: [CommonModule, ListModule, ButtonModule, LinkModule, FormsModule, FormControlModule],\n exports: [\n UploadCollectionComponent,\n UploadCollectionItemDirective,\n UploadCollectionThumbnailDirective,\n UploadCollectionTitleDirective,\n UploadCollectionDescriptionDirective,\n UploadCollectionTextSeparatorDirective,\n UploadCollectionStatusGroupDirective,\n UploadCollectionStatusItemDirective,\n UploadCollectionButtonGroupComponent,\n UploadCollectionFormItemComponent,\n UploadCollectionTitleContainerDirective\n ]\n})\nexport class UploadCollectionModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fundamental-ngx-core-upload-collection.mjs","sources":["../../../../libs/core/src/lib/upload-collection/upload-collection-simple.directives.ts","../../../../libs/core/src/lib/upload-collection/upload-collection.component.ts","../../../../libs/core/src/lib/upload-collection/upload-collection-button-group/upload-collection-button-group.component.ts","../../../../libs/core/src/lib/upload-collection/upload-collection-button-group/upload-collection-button-group.component.html","../../../../libs/core/src/lib/upload-collection/upload-collection-form-item/upload-collection-form-item.component.ts","../../../../libs/core/src/lib/upload-collection/upload-collection-form-item/upload-collection-form-item.component.html","../../../../libs/core/src/lib/upload-collection/upload-collection-item.directive.ts","../../../../libs/core/src/lib/upload-collection/upload-collection.module.ts","../../../../libs/core/src/lib/upload-collection/fundamental-ngx-core-upload-collection.ts"],"sourcesContent":["import {\n ContentChildren,\n Directive,\n ElementRef,\n HostBinding,\n Inject,\n OnInit,\n Optional,\n QueryList\n} from '@angular/core';\nimport { ObjectMarkerComponent } from '@fundamental-ngx/core/object-marker';\nimport { ObjectStatusComponent } from '@fundamental-ngx/core/object-status';\n\n@Directive({\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: '[fd-upload-collection-thumbnail]',\n host: { class: 'fd-upload-collection__thumbnail' }\n})\nexport class UploadCollectionThumbnailDirective {}\n\n@Directive({\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: '[fd-upload-collection-title]',\n host: { class: 'fd-upload-collection__title' }\n})\nexport class UploadCollectionTitleDirective {\n constructor(public elRef: ElementRef) {}\n}\n\n@Directive({\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: '[fd-upload-collection-description]',\n host: { class: 'fd-upload-collection__description' }\n})\nexport class UploadCollectionDescriptionDirective {}\n\n@Directive({\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: '[fd-upload-collection-text-separator], fd-upload-collection-text-separator',\n host: { class: 'fd-upload-collection__text-separator' }\n})\nexport class UploadCollectionTextSeparatorDirective {}\n\n@Directive({\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: '[fd-upload-collection-status-group]',\n host: { class: 'fd-upload-collection__status-group' }\n})\nexport class UploadCollectionStatusGroupDirective {}\n\n@Directive({\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: '[fd-upload-collection-status-item]',\n host: { class: 'fd-upload-collection__status-group-item' }\n})\nexport class UploadCollectionStatusItemDirective implements OnInit {\n constructor(@Optional() @Inject(ObjectStatusComponent) private _objectStatus: ObjectStatusComponent) {}\n\n ngOnInit(): void {\n if (this._objectStatus) {\n this._objectStatus._textClass += ' fd-upload-collection__status-group-item-text';\n }\n }\n}\n\n@Directive({\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: '[fd-upload-collection-title-container]'\n})\nexport class UploadCollectionTitleContainerDirective {\n /** @hidden */\n @ContentChildren(ObjectMarkerComponent)\n _objectMarkerComponents: QueryList<ObjectMarkerComponent>;\n\n /** Whether or not this is in edit mode. */\n @HostBinding('class.fd-upload-collection__title-container')\n applyContainerClass = true;\n}\n","import { ChangeDetectionStrategy, Component, HostBinding, Input, ViewEncapsulation } from '@angular/core';\n\n@Component({\n selector: 'fd-upload-collection',\n host: { class: 'fd-upload-collection' },\n styleUrls: ['./upload-collection.component.scss'],\n template: `<ul fd-list [byline]=\"true\" [selection]=\"selection\">\n <ng-content></ng-content>\n </ul>`,\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class UploadCollectionComponent {\n /** Whether or not this is the small upload collection. */\n @Input()\n @HostBinding('class.fd-upload-collection--sm')\n small = false;\n\n /** Whether or not this upload collection supports selection. */\n @Input()\n selection = false;\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n EventEmitter,\n Input,\n Output,\n ViewChild,\n ViewEncapsulation\n} from '@angular/core';\nimport { ButtonComponent } from '@fundamental-ngx/core/button';\n\n@Component({\n selector: 'fd-upload-collection-button-group',\n host: { class: 'fd-upload-collection__button-group' },\n templateUrl: './upload-collection-button-group.component.html',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class UploadCollectionButtonGroupComponent {\n /** @hidden */\n _editMode = false;\n\n /** Event emitted when the user clicks the edit button. */\n @Output()\n readonly editClicked = new EventEmitter<boolean>();\n\n /** Event emitted when the user clicks the OK button to conform a file name change. */\n @Output()\n readonly okClicked = new EventEmitter<any>();\n\n /** Event emitted when the user clicks the delete button. */\n @Output()\n readonly deleteClicked = new EventEmitter<any>();\n\n /** Whether or not to allow file name editing. Default is true. */\n @Input()\n allowFileNameEdit = true;\n\n /** Whether or not to show the delete button. Default is true. */\n @Input()\n allowFileDeletion = true;\n\n /** Whether or not to disable the file name edit button. Default is false. */\n @Input()\n disableFileNameEdit = false;\n\n /** Whether or not to disable the delete button. Default is false. */\n @Input()\n disableFileDeletion = false;\n\n /** Text for the 'Ok' button. */\n @Input()\n okText = 'Ok';\n\n /** Text for the 'Cancel' button. */\n @Input()\n cancelText = 'Cancel';\n\n /** Text for the 'Edit' aria-label. */\n @Input()\n editAriaLabel = 'Edit';\n\n /** Text for the 'Delete' aria-label. */\n @Input()\n deleteAriaLabel = 'Delete';\n\n /** Text for the 'Ok' aria-label. */\n @Input()\n okAriaLabel = 'Edit';\n\n /** Text for the 'Cancel' aria-label. */\n @Input()\n cancelAriaLabel = 'Cancel';\n\n /** @hidden */\n @ViewChild('okButton')\n _okButton: ButtonComponent;\n\n /** @hidden */\n _editButtonClicked(event?: MouseEvent): void {\n if (event) {\n event.stopPropagation();\n }\n this.editClicked.emit(true);\n this._editMode = true;\n }\n\n /** @hidden */\n _deleteButtonClicked(event?: MouseEvent): void {\n if (event) {\n event.stopPropagation();\n }\n this.deleteClicked.emit();\n }\n\n /** @hidden */\n _okButtonClicked(event?: MouseEvent): void {\n if (event) {\n event.stopPropagation();\n }\n this.okClicked.emit();\n }\n\n /** @hidden */\n _cancelButtonClicked(event?: MouseEvent): void {\n if (event) {\n event.stopPropagation();\n }\n this.editClicked.emit(false);\n this._editMode = false;\n }\n}\n","<button\n *ngIf=\"!_editMode && allowFileNameEdit\"\n [disabled]=\"disableFileNameEdit\"\n (click)=\"_editButtonClicked($event)\"\n fd-button\n fdType=\"transparent\"\n glyph=\"edit\"\n [attr.aria-label]=\"editAriaLabel\"\n></button>\n<button\n *ngIf=\"!_editMode && allowFileDeletion\"\n [disabled]=\"disableFileDeletion\"\n (click)=\"_deleteButtonClicked($event)\"\n fd-button\n fdType=\"transparent\"\n glyph=\"decline\"\n [attr.aria-label]=\"deleteAriaLabel\"\n></button>\n<button\n #okButton\n [style.display]=\"_editMode ? 'inline-flex' : 'none'\"\n (click)=\"_okButtonClicked($event)\"\n fd-button\n fdType=\"transparent\"\n [attr.aria-label]=\"okAriaLabel\"\n>\n {{ okText }}\n</button>\n<button\n *ngIf=\"_editMode\"\n (click)=\"_cancelButtonClicked($event)\"\n fd-button\n fdType=\"transparent\"\n [attr.aria-label]=\"cancelAriaLabel\"\n>\n {{ cancelText }}\n</button>\n","import { Component, EventEmitter, Input, Output, ViewEncapsulation } from '@angular/core';\nimport { ControlValueAccessor } from '@angular/forms';\n\n@Component({\n selector: 'fd-upload-collection-form-item',\n host: { class: 'fd-upload-collection__form-item' },\n templateUrl: './upload-collection-form-item.component.html',\n encapsulation: ViewEncapsulation.None\n})\nexport class UploadCollectionFormItemComponent implements ControlValueAccessor {\n /** Value for the input's placeholder. */\n @Input()\n placeholder = 'Filename';\n\n /** @hidden */\n @Input()\n _editMode = false;\n\n /** @hidden */\n _fileNameValue: string;\n\n /** @hidden */\n _extension: string;\n\n /** Event emitted when the dragged file exits the dropzone. */\n @Output()\n readonly fileNameChanged = new EventEmitter<string>();\n\n /** Get the value of the text input. */\n get fileName(): string {\n return this._fileNameValue;\n }\n\n /** Set the value of the text input. */\n set fileName(value) {\n this._fileNameValue = value;\n this.onChange(value);\n this.onTouched();\n this.fileNameChanged.emit(value);\n }\n\n /** @hidden */\n onChange: (value: string) => void = () => {};\n\n /** @hidden */\n onTouched = (): void => {};\n\n /** @hidden */\n writeValue(value: string): void {\n this.fileName = value;\n }\n\n /** @hidden */\n registerOnChange(fn: (value: string) => void): void {\n this.onChange = fn;\n }\n\n /** @hidden */\n registerOnTouched(fn: () => void): void {\n this.onTouched = fn;\n }\n}\n","<input\n *ngIf=\"_editMode\"\n fd-form-control\n required\n style=\"pointer-events: all\"\n class=\"fd-input\"\n type=\"text\"\n [attr.placeholder]=\"placeholder\"\n [(ngModel)]=\"fileName\"\n [state]=\"!fileName ? 'error' : null\"\n (click)=\"$event.stopPropagation()\"\n/>\n<span *ngIf=\"_editMode\" class=\"fd-upload-collection__extension\">.{{ _extension }}</span>\n","import {\n AfterContentInit,\n AfterViewInit,\n ContentChild,\n Directive,\n ElementRef,\n EventEmitter,\n HostListener,\n Input,\n OnDestroy,\n Output\n} from '@angular/core';\nimport { UploadCollectionFormItemComponent } from './upload-collection-form-item/upload-collection-form-item.component';\nimport { UploadCollectionButtonGroupComponent } from './upload-collection-button-group/upload-collection-button-group.component';\nimport { Subscription } from 'rxjs';\nimport {\n UploadCollectionTitleContainerDirective,\n UploadCollectionTitleDirective\n} from './upload-collection-simple.directives';\nimport { LINK_CLASS_NAME } from '@fundamental-ngx/core/link';\n\n@Directive({\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: '[fd-upload-collection-item]',\n host: { class: 'fd-upload-collection__item' }\n})\nexport class UploadCollectionItemDirective implements AfterContentInit, OnDestroy, AfterViewInit {\n /** The name of the file, not including the type extension. */\n @Input()\n fileName: string;\n\n /** The file type extension. */\n @Input()\n extension: string;\n\n /** @hidden */\n @ContentChild(UploadCollectionFormItemComponent)\n _formItemComponent: UploadCollectionFormItemComponent;\n\n /** @hidden */\n @ContentChild(UploadCollectionTitleDirective)\n _titleDirective: UploadCollectionTitleDirective;\n\n /** @hidden */\n @ContentChild(UploadCollectionButtonGroupComponent)\n _buttonGroupComponent: UploadCollectionButtonGroupComponent;\n\n /** @hidden */\n @ContentChild(UploadCollectionTitleContainerDirective)\n _titleContainerDirective: UploadCollectionTitleContainerDirective;\n\n /** Event emitted when the user changes a file name. */\n @Output()\n readonly fileNameChanged = new EventEmitter<any>();\n\n /** Event emitted when presses the delete button. */\n @Output()\n readonly deleteClicked = new EventEmitter<any>();\n\n /** @hidden */\n private _subscriptions = new Subscription();\n\n /** @hidden */\n fileNameFull: string;\n\n /** @hidden */\n titleWidth: number;\n\n /** @hidden used to compare to the current width to know whether to collapse or expand title */\n previousContainerWidth: number;\n\n /** @hidden */\n containerWidth: number;\n\n /** @hidden */\n ngAfterContentInit(): void {\n this.fileNameFull = this.fileName + '.' + this.extension;\n this._titleDirective.elRef.nativeElement.tabIndex = '0';\n this._titleDirective.elRef.nativeElement.innerHTML =\n '<span class=\"' + LINK_CLASS_NAME.linkContent + '\">' + this.fileNameFull + '</span>';\n this._handleDeleteClickedSubscription();\n this._handleOkClickedSubscription();\n this._handleEditClickedSubscription();\n this._handleFormItemInputChangedSubscription();\n }\n\n /** @hidden */\n ngAfterViewInit(): void {\n // Process resize after all the children views is initialized\n setTimeout(() => this.onResize());\n }\n\n /** @hidden */\n ngOnDestroy(): void {\n this._subscriptions.unsubscribe();\n }\n\n constructor(public elementRef: ElementRef) {}\n\n /** @hidden */\n @HostListener('window:resize', [])\n onResize(): void {\n if (!this.elementRef.nativeElement.parentElement) {\n return;\n }\n this.titleWidth = this.getTitleWidth();\n this.containerWidth = this.getContainerWidth();\n\n // if first load and no previous container width, or if container boundary is resized to smaller than before\n if (!this.previousContainerWidth || this.containerWidth < this.previousContainerWidth) {\n // and the title extends past the container, 1.05x padding to prevent jaggy resizing.\n if (this.titleWidth * 1.05 >= this.containerWidth) {\n this.resizeFileTitle(this._titleDirective.elRef.nativeElement.innerHTML);\n }\n } else if (this.previousContainerWidth && this.containerWidth > this.previousContainerWidth) {\n // Looks to expand file title if container width is resized to greater than before\n // reset file title to initial\n this._titleDirective.elRef.nativeElement.innerHTML = this.fileNameFull;\n this.resizeFileTitle(this.fileNameFull);\n }\n\n this.previousContainerWidth = this.containerWidth;\n }\n\n /** @hidden */\n private _handleOkClickedSubscription(): void {\n this._subscriptions.add(\n this._buttonGroupComponent.okClicked.subscribe(() => {\n if (this._formItemComponent.fileName && this._formItemComponent.fileName !== '') {\n this.fileName = this._formItemComponent.fileName;\n this._titleDirective.elRef.nativeElement.style.display = 'inline-block';\n this.fileNameFull = this.fileName + '.' + this.extension;\n this._titleDirective.elRef.nativeElement.innerHTML = this.fileNameFull;\n this.resizeFileTitle(this.fileNameFull);\n this._formItemComponent._editMode = false;\n this._buttonGroupComponent._editMode = false;\n this.fileNameChanged.emit(this);\n }\n })\n );\n }\n\n /** @hidden */\n private _handleEditClickedSubscription(): void {\n this._subscriptions.add(\n this._buttonGroupComponent.editClicked.subscribe((event) => {\n this._formItemComponent._editMode = event;\n if (this._titleContainerDirective) {\n this._titleContainerDirective.applyContainerClass = !event;\n }\n const styles: CSSStyleDeclaration[] = [];\n styles.push((this._titleDirective.elRef.nativeElement as HTMLElement).style);\n this._titleContainerDirective?._objectMarkerComponents?.forEach((objectMarker) => {\n styles.push(objectMarker.elementRef().nativeElement.style);\n });\n event\n ? styles.forEach((style) => (style.display = 'none'))\n : styles.forEach((style) => (style.display = 'inline-block'));\n if (event) {\n this._formItemComponent._extension = this.extension;\n this._formItemComponent.fileName = this.fileName;\n }\n })\n );\n }\n\n /** @hidden */\n private _handleDeleteClickedSubscription(): void {\n this._subscriptions.add(\n this._buttonGroupComponent.deleteClicked.subscribe(() => {\n this.deleteClicked.emit(this);\n })\n );\n }\n\n /** @hidden */\n private _handleFormItemInputChangedSubscription(): void {\n this._subscriptions.add(\n this._formItemComponent.fileNameChanged.subscribe((event) => {\n this._buttonGroupComponent._okButton.disabled = event === '';\n this._buttonGroupComponent._okButton.buildComponentCssClass();\n })\n );\n }\n\n /** @hidden */\n private getTitleWidth(): number {\n return this._titleDirective.elRef.nativeElement.getBoundingClientRect().width;\n }\n\n /** @hidden */\n private getContainerWidth(): number {\n return this._titleDirective.elRef.nativeElement.parentElement.getBoundingClientRect().width;\n }\n\n /**\n * @hidden\n *\n * truncates the string by cutting out excess length in the middle and replacing with '...'\n */\n private truncateTitle(str: string): string {\n const cutLength = Math.floor(str.length * 0.8);\n\n if (str.length > cutLength) {\n const stringLeftIndex = Math.floor(cutLength / 2);\n const stringRightIndex = str.length - stringLeftIndex + 3;\n return str.substring(0, stringLeftIndex) + '...' + str.substring(stringRightIndex, str.length);\n }\n return str;\n }\n\n /**\n * @hidden\n *\n * determines if file title needs to be truncated given container constraint.\n */\n private resizeFileTitle(titleStr: string): void {\n let curTitle = titleStr;\n this.containerWidth = this.getContainerWidth();\n this.titleWidth = this.getTitleWidth();\n\n // repeatedly truncate the title until it fits inside container\n while (this.titleWidth * 1.05 >= this.containerWidth) {\n const truncatedTitleStr = this.truncateTitle(curTitle);\n this._titleDirective.elRef.nativeElement.innerHTML = truncatedTitleStr;\n curTitle = truncatedTitleStr;\n this.titleWidth = this.getTitleWidth();\n this.containerWidth = this.getContainerWidth();\n }\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport {\n UploadCollectionDescriptionDirective,\n UploadCollectionStatusGroupDirective,\n UploadCollectionStatusItemDirective,\n UploadCollectionTextSeparatorDirective,\n UploadCollectionThumbnailDirective,\n UploadCollectionTitleContainerDirective,\n UploadCollectionTitleDirective\n} from './upload-collection-simple.directives';\nimport { ListModule } from '@fundamental-ngx/core/list';\nimport { UploadCollectionComponent } from './upload-collection.component';\nimport { UploadCollectionButtonGroupComponent } from './upload-collection-button-group/upload-collection-button-group.component';\nimport { ButtonModule } from '@fundamental-ngx/core/button';\nimport { UploadCollectionFormItemComponent } from './upload-collection-form-item/upload-collection-form-item.component';\nimport { LinkModule } from '@fundamental-ngx/core/link';\nimport { FormsModule } from '@angular/forms';\nimport { FormControlModule } from '@fundamental-ngx/core/form';\nimport { UploadCollectionItemDirective } from './upload-collection-item.directive';\n\n@NgModule({\n declarations: [\n UploadCollectionComponent,\n UploadCollectionItemDirective,\n UploadCollectionThumbnailDirective,\n UploadCollectionTitleDirective,\n UploadCollectionDescriptionDirective,\n UploadCollectionTextSeparatorDirective,\n UploadCollectionStatusGroupDirective,\n UploadCollectionStatusItemDirective,\n UploadCollectionButtonGroupComponent,\n UploadCollectionFormItemComponent,\n UploadCollectionTitleContainerDirective\n ],\n imports: [CommonModule, ListModule, ButtonModule, LinkModule, FormsModule, FormControlModule],\n exports: [\n UploadCollectionComponent,\n UploadCollectionItemDirective,\n UploadCollectionThumbnailDirective,\n UploadCollectionTitleDirective,\n UploadCollectionDescriptionDirective,\n UploadCollectionTextSeparatorDirective,\n UploadCollectionStatusGroupDirective,\n UploadCollectionStatusItemDirective,\n UploadCollectionButtonGroupComponent,\n UploadCollectionFormItemComponent,\n UploadCollectionTitleContainerDirective\n ]\n})\nexport class UploadCollectionModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fundamental-ngx/core/file-uploader",
3
- "version": "0.35.0-rc.7",
3
+ "version": "0.35.0-rc.8",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^13.0.0",
6
6
  "@angular/core": "^13.0.0"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fundamental-ngx/core/fixed-card-layout",
3
- "version": "0.35.0-rc.7",
3
+ "version": "0.35.0-rc.8",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^13.0.0",
6
6
  "@angular/core": "^13.0.0"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fundamental-ngx/core/flexible-column-layout",
3
- "version": "0.35.0-rc.7",
3
+ "version": "0.35.0-rc.8",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^13.0.0",
6
6
  "@angular/core": "^13.0.0"
package/form/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fundamental-ngx/core/form",
3
- "version": "0.35.0-rc.7",
3
+ "version": "0.35.0-rc.8",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^13.0.0",
6
6
  "@angular/core": "^13.0.0"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fundamental-ngx/core/formatted-text",
3
- "version": "0.35.0-rc.7",
3
+ "version": "0.35.0-rc.8",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^13.0.0",
6
6
  "@angular/core": "^13.0.0"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fundamental-ngx/core/grid-list",
3
- "version": "0.35.0-rc.7",
3
+ "version": "0.35.0-rc.8",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^13.0.0",
6
6
  "@angular/core": "^13.0.0"
package/icon/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fundamental-ngx/core/icon",
3
- "version": "0.35.0-rc.7",
3
+ "version": "0.35.0-rc.8",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^13.0.0",
6
6
  "@angular/core": "^13.0.0"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fundamental-ngx/core/illustrated-message",
3
- "version": "0.35.0-rc.7",
3
+ "version": "0.35.0-rc.8",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^13.0.0",
6
6
  "@angular/core": "^13.0.0"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fundamental-ngx/core/infinite-scroll",
3
- "version": "0.35.0-rc.7",
3
+ "version": "0.35.0-rc.8",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^13.0.0",
6
6
  "@angular/core": "^13.0.0"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fundamental-ngx/core/info-label",
3
- "version": "0.35.0-rc.7",
3
+ "version": "0.35.0-rc.8",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^13.0.0",
6
6
  "@angular/core": "^13.0.0"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fundamental-ngx/core/inline-help",
3
- "version": "0.35.0-rc.7",
3
+ "version": "0.35.0-rc.8",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^13.0.0",
6
6
  "@angular/core": "^13.0.0"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fundamental-ngx/core/input-group",
3
- "version": "0.35.0-rc.7",
3
+ "version": "0.35.0-rc.8",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^13.0.0",
6
6
  "@angular/core": "^13.0.0"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fundamental-ngx/core/layout-grid",
3
- "version": "0.35.0-rc.7",
3
+ "version": "0.35.0-rc.8",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^13.0.0",
6
6
  "@angular/core": "^13.0.0"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fundamental-ngx/core/layout-panel",
3
- "version": "0.35.0-rc.7",
3
+ "version": "0.35.0-rc.8",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^13.0.0",
6
6
  "@angular/core": "^13.0.0"
@@ -0,0 +1,3 @@
1
+ export declare const LINK_CLASS_NAME: {
2
+ readonly linkContent: "fd-link__content";
3
+ };
@@ -0,0 +1,4 @@
1
+ export const LINK_CLASS_NAME = {
2
+ linkContent: 'fd-link__content'
3
+ };
4
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3RhbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9jb3JlL3NyYy9saWIvbGluay9jb25zdGFudHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFDLE1BQU0sZUFBZSxHQUFHO0lBQzNCLFdBQVcsRUFBRSxrQkFBa0I7Q0FDekIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjb25zdCBMSU5LX0NMQVNTX05BTUUgPSB7XG4gICAgbGlua0NvbnRlbnQ6ICdmZC1saW5rX19jb250ZW50J1xufSBhcyBjb25zdDtcbiJdfQ==
@@ -1,3 +1,4 @@
1
1
  export * from './link.module';
2
2
  export * from './link.component';
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2FwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvY29yZS9zcmMvbGliL2xpbmsvcHVibGljX2FwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGVBQWUsQ0FBQztBQUM5QixjQUFjLGtCQUFrQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9saW5rLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpbmsuY29tcG9uZW50JztcbiJdfQ==
3
+ export * from './constants';
4
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2FwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvY29yZS9zcmMvbGliL2xpbmsvcHVibGljX2FwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGVBQWUsQ0FBQztBQUM5QixjQUFjLGtCQUFrQixDQUFDO0FBQ2pDLGNBQWMsYUFBYSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9saW5rLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpbmsuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vY29uc3RhbnRzJztcbiJdfQ==
@@ -133,9 +133,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.4", ngImpor
133
133
  }]
134
134
  }] });
135
135
 
136
+ const LINK_CLASS_NAME = {
137
+ linkContent: 'fd-link__content'
138
+ };
139
+
136
140
  /**
137
141
  * Generated bundle index. Do not edit.
138
142
  */
139
143
 
140
- export { LinkComponent, LinkModule };
144
+ export { LINK_CLASS_NAME, LinkComponent, LinkModule };
141
145
  //# sourceMappingURL=fundamental-ngx-core-link.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"fundamental-ngx-core-link.mjs","sources":["../../../../../libs/core/src/lib/link/link.component.ts","../../../../../libs/core/src/lib/link/link.component.html","../../../../../libs/core/src/lib/link/link.module.ts","../../../../../libs/core/src/lib/link/fundamental-ngx-core-link.ts"],"sourcesContent":["import {\n AfterViewInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChildren,\n ElementRef,\n Input,\n OnChanges,\n OnDestroy,\n OnInit,\n QueryList,\n ViewChild,\n ViewEncapsulation\n} from '@angular/core';\nimport { applyCssClass, CssClassBuilder } from '@fundamental-ngx/core/utils';\nimport { ContentObserver } from '@angular/cdk/observers';\nimport { map, startWith, Subject, takeUntil, tap } from 'rxjs';\nimport { DomPortal, Portal } from '@angular/cdk/portal';\nimport { IconComponent } from '@fundamental-ngx/core/icon';\n\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: '[fdLink], [fd-link]',\n templateUrl: './link.component.html',\n styleUrls: ['./link.component.scss'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class LinkComponent implements OnChanges, OnInit, CssClassBuilder, AfterViewInit, OnDestroy {\n @ContentChildren(IconComponent)\n iconComponents: QueryList<IconComponent>;\n\n @ViewChild('content')\n contentSpan: ElementRef<HTMLSpanElement>;\n\n /** user's custom classes */\n @Input()\n class: string;\n\n /** Whether user wants to use emphasized mode */\n @Input()\n emphasized: boolean;\n\n /** Whether user wants to put disabled mode */\n @Input()\n disabled: boolean;\n\n /** Whether user wants to use inverted mode */\n @Input()\n inverted: boolean;\n\n /** Whether user wants to use subtle mode */\n @Input()\n subtle: boolean;\n\n /** Whether user wants to have a link without underline decoration */\n @Input()\n undecorated: boolean;\n\n /** @hidden */\n _prefixPortal: Portal<any> | null;\n\n /** @hidden */\n _postfixPortal: Portal<any> | null;\n\n /** @hidden */\n private _destroyed$ = new Subject<void>();\n\n /** @hidden */\n constructor(\n private _elementRef: ElementRef<Element>,\n private contentObserver: ContentObserver,\n private changeDetectorRef: ChangeDetectorRef\n ) {}\n\n /** @hidden */\n ngOnChanges(): void {\n this.buildComponentCssClass();\n }\n\n @applyCssClass\n /** CssClassBuilder interface implementation\n * function is responsible for order which css classes are applied\n */\n buildComponentCssClass(): string[] {\n return [\n 'fd-link',\n this.emphasized ? 'fd-link--emphasized' : '',\n this.disabled ? 'is-disabled' : '',\n this.inverted ? `fd-link--inverted` : '',\n this.subtle ? 'fd-link--subtle' : '',\n this.undecorated ? 'fd-link--undecorated' : '',\n this.class\n ];\n }\n\n /** @hidden */\n elementRef(): ElementRef<any> {\n return this._elementRef;\n }\n\n /** @hidden */\n ngOnInit(): void {\n this.buildComponentCssClass();\n }\n\n /** @hidden */\n ngAfterViewInit(): void {\n this.iconComponents.changes\n .pipe(\n startWith(this.iconComponents),\n map((c) => c.toArray()),\n map((icons) =>\n // We are only interested in the first descendant of the content element\n icons.filter(\n (icon) => icon.elementRef().nativeElement.parentElement === this.contentSpan.nativeElement\n )\n ),\n map((icons) => {\n if (icons.length === 0) {\n return {};\n }\n const prefix =\n icons[0].elementRef().nativeElement === this.contentSpan.nativeElement.childNodes[0]\n ? icons[0].elementRef().nativeElement\n : null;\n const postfix =\n icons[icons.length - 1].elementRef().nativeElement ===\n this.contentSpan.nativeElement.childNodes[this.contentSpan.nativeElement.childNodes.length - 1]\n ? icons[icons.length - 1].elementRef().nativeElement\n : null;\n return { prefix, postfix };\n }),\n tap(() => {\n if (this._prefixPortal?.isAttached) {\n this._prefixPortal.detach();\n }\n if (this._postfixPortal?.isAttached) {\n this._postfixPortal.detach();\n }\n }),\n tap(({ prefix, postfix }) => {\n this._prefixPortal = prefix ? new DomPortal(prefix) : null;\n this._postfixPortal = postfix ? new DomPortal(postfix) : null;\n }),\n tap(() => {\n this.changeDetectorRef.detectChanges();\n }),\n takeUntil(this._destroyed$)\n )\n .subscribe();\n }\n\n /** @hidden */\n ngOnDestroy(): void {\n this._destroyed$.next();\n this._destroyed$.complete();\n }\n}\n","<span *ngIf=\"_prefixPortal\">\n <ng-container *cdkPortalOutlet=\"_prefixPortal\"></ng-container>\n</span>\n<span class=\"fd-link__content\" #content>\n <ng-content></ng-content>\n</span>\n<span *ngIf=\"_postfixPortal\">\n <ng-container *cdkPortalOutlet=\"_postfixPortal\"></ng-container>\n</span>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { LinkComponent } from './link.component';\nimport { PortalModule } from '@angular/cdk/portal';\n\n@NgModule({\n declarations: [LinkComponent],\n imports: [CommonModule, PortalModule],\n exports: [LinkComponent]\n})\nexport class LinkModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fundamental-ngx-core-link.mjs","sources":["../../../../../libs/core/src/lib/link/link.component.ts","../../../../../libs/core/src/lib/link/link.component.html","../../../../../libs/core/src/lib/link/link.module.ts","../../../../../libs/core/src/lib/link/constants.ts","../../../../../libs/core/src/lib/link/fundamental-ngx-core-link.ts"],"sourcesContent":["import {\n AfterViewInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChildren,\n ElementRef,\n Input,\n OnChanges,\n OnDestroy,\n OnInit,\n QueryList,\n ViewChild,\n ViewEncapsulation\n} from '@angular/core';\nimport { applyCssClass, CssClassBuilder } from '@fundamental-ngx/core/utils';\nimport { ContentObserver } from '@angular/cdk/observers';\nimport { map, startWith, Subject, takeUntil, tap } from 'rxjs';\nimport { DomPortal, Portal } from '@angular/cdk/portal';\nimport { IconComponent } from '@fundamental-ngx/core/icon';\n\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: '[fdLink], [fd-link]',\n templateUrl: './link.component.html',\n styleUrls: ['./link.component.scss'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class LinkComponent implements OnChanges, OnInit, CssClassBuilder, AfterViewInit, OnDestroy {\n @ContentChildren(IconComponent)\n iconComponents: QueryList<IconComponent>;\n\n @ViewChild('content')\n contentSpan: ElementRef<HTMLSpanElement>;\n\n /** user's custom classes */\n @Input()\n class: string;\n\n /** Whether user wants to use emphasized mode */\n @Input()\n emphasized: boolean;\n\n /** Whether user wants to put disabled mode */\n @Input()\n disabled: boolean;\n\n /** Whether user wants to use inverted mode */\n @Input()\n inverted: boolean;\n\n /** Whether user wants to use subtle mode */\n @Input()\n subtle: boolean;\n\n /** Whether user wants to have a link without underline decoration */\n @Input()\n undecorated: boolean;\n\n /** @hidden */\n _prefixPortal: Portal<any> | null;\n\n /** @hidden */\n _postfixPortal: Portal<any> | null;\n\n /** @hidden */\n private _destroyed$ = new Subject<void>();\n\n /** @hidden */\n constructor(\n private _elementRef: ElementRef<Element>,\n private contentObserver: ContentObserver,\n private changeDetectorRef: ChangeDetectorRef\n ) {}\n\n /** @hidden */\n ngOnChanges(): void {\n this.buildComponentCssClass();\n }\n\n @applyCssClass\n /** CssClassBuilder interface implementation\n * function is responsible for order which css classes are applied\n */\n buildComponentCssClass(): string[] {\n return [\n 'fd-link',\n this.emphasized ? 'fd-link--emphasized' : '',\n this.disabled ? 'is-disabled' : '',\n this.inverted ? `fd-link--inverted` : '',\n this.subtle ? 'fd-link--subtle' : '',\n this.undecorated ? 'fd-link--undecorated' : '',\n this.class\n ];\n }\n\n /** @hidden */\n elementRef(): ElementRef<any> {\n return this._elementRef;\n }\n\n /** @hidden */\n ngOnInit(): void {\n this.buildComponentCssClass();\n }\n\n /** @hidden */\n ngAfterViewInit(): void {\n this.iconComponents.changes\n .pipe(\n startWith(this.iconComponents),\n map((c) => c.toArray()),\n map((icons) =>\n // We are only interested in the first descendant of the content element\n icons.filter(\n (icon) => icon.elementRef().nativeElement.parentElement === this.contentSpan.nativeElement\n )\n ),\n map((icons) => {\n if (icons.length === 0) {\n return {};\n }\n const prefix =\n icons[0].elementRef().nativeElement === this.contentSpan.nativeElement.childNodes[0]\n ? icons[0].elementRef().nativeElement\n : null;\n const postfix =\n icons[icons.length - 1].elementRef().nativeElement ===\n this.contentSpan.nativeElement.childNodes[this.contentSpan.nativeElement.childNodes.length - 1]\n ? icons[icons.length - 1].elementRef().nativeElement\n : null;\n return { prefix, postfix };\n }),\n tap(() => {\n if (this._prefixPortal?.isAttached) {\n this._prefixPortal.detach();\n }\n if (this._postfixPortal?.isAttached) {\n this._postfixPortal.detach();\n }\n }),\n tap(({ prefix, postfix }) => {\n this._prefixPortal = prefix ? new DomPortal(prefix) : null;\n this._postfixPortal = postfix ? new DomPortal(postfix) : null;\n }),\n tap(() => {\n this.changeDetectorRef.detectChanges();\n }),\n takeUntil(this._destroyed$)\n )\n .subscribe();\n }\n\n /** @hidden */\n ngOnDestroy(): void {\n this._destroyed$.next();\n this._destroyed$.complete();\n }\n}\n","<span *ngIf=\"_prefixPortal\">\n <ng-container *cdkPortalOutlet=\"_prefixPortal\"></ng-container>\n</span>\n<span class=\"fd-link__content\" #content>\n <ng-content></ng-content>\n</span>\n<span *ngIf=\"_postfixPortal\">\n <ng-container *cdkPortalOutlet=\"_postfixPortal\"></ng-container>\n</span>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { LinkComponent } from './link.component';\nimport { PortalModule } from '@angular/cdk/portal';\n\n@NgModule({\n declarations: [LinkComponent],\n imports: [CommonModule, PortalModule],\n exports: [LinkComponent]\n})\nexport class LinkModule {}\n","export const LINK_CLASS_NAME = {\n linkContent: 'fd-link__content'\n} as const;\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
@@ -132,9 +132,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.4", ngImpor
132
132
  }]
133
133
  }] });
134
134
 
135
+ const LINK_CLASS_NAME = {
136
+ linkContent: 'fd-link__content'
137
+ };
138
+
135
139
  /**
136
140
  * Generated bundle index. Do not edit.
137
141
  */
138
142
 
139
- export { LinkComponent, LinkModule };
143
+ export { LINK_CLASS_NAME, LinkComponent, LinkModule };
140
144
  //# sourceMappingURL=fundamental-ngx-core-link.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"fundamental-ngx-core-link.mjs","sources":["../../../../../libs/core/src/lib/link/link.component.ts","../../../../../libs/core/src/lib/link/link.component.html","../../../../../libs/core/src/lib/link/link.module.ts","../../../../../libs/core/src/lib/link/fundamental-ngx-core-link.ts"],"sourcesContent":["import {\n AfterViewInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChildren,\n ElementRef,\n Input,\n OnChanges,\n OnDestroy,\n OnInit,\n QueryList,\n ViewChild,\n ViewEncapsulation\n} from '@angular/core';\nimport { applyCssClass, CssClassBuilder } from '@fundamental-ngx/core/utils';\nimport { ContentObserver } from '@angular/cdk/observers';\nimport { map, startWith, Subject, takeUntil, tap } from 'rxjs';\nimport { DomPortal, Portal } from '@angular/cdk/portal';\nimport { IconComponent } from '@fundamental-ngx/core/icon';\n\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: '[fdLink], [fd-link]',\n templateUrl: './link.component.html',\n styleUrls: ['./link.component.scss'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class LinkComponent implements OnChanges, OnInit, CssClassBuilder, AfterViewInit, OnDestroy {\n @ContentChildren(IconComponent)\n iconComponents: QueryList<IconComponent>;\n\n @ViewChild('content')\n contentSpan: ElementRef<HTMLSpanElement>;\n\n /** user's custom classes */\n @Input()\n class: string;\n\n /** Whether user wants to use emphasized mode */\n @Input()\n emphasized: boolean;\n\n /** Whether user wants to put disabled mode */\n @Input()\n disabled: boolean;\n\n /** Whether user wants to use inverted mode */\n @Input()\n inverted: boolean;\n\n /** Whether user wants to use subtle mode */\n @Input()\n subtle: boolean;\n\n /** Whether user wants to have a link without underline decoration */\n @Input()\n undecorated: boolean;\n\n /** @hidden */\n _prefixPortal: Portal<any> | null;\n\n /** @hidden */\n _postfixPortal: Portal<any> | null;\n\n /** @hidden */\n private _destroyed$ = new Subject<void>();\n\n /** @hidden */\n constructor(\n private _elementRef: ElementRef<Element>,\n private contentObserver: ContentObserver,\n private changeDetectorRef: ChangeDetectorRef\n ) {}\n\n /** @hidden */\n ngOnChanges(): void {\n this.buildComponentCssClass();\n }\n\n @applyCssClass\n /** CssClassBuilder interface implementation\n * function is responsible for order which css classes are applied\n */\n buildComponentCssClass(): string[] {\n return [\n 'fd-link',\n this.emphasized ? 'fd-link--emphasized' : '',\n this.disabled ? 'is-disabled' : '',\n this.inverted ? `fd-link--inverted` : '',\n this.subtle ? 'fd-link--subtle' : '',\n this.undecorated ? 'fd-link--undecorated' : '',\n this.class\n ];\n }\n\n /** @hidden */\n elementRef(): ElementRef<any> {\n return this._elementRef;\n }\n\n /** @hidden */\n ngOnInit(): void {\n this.buildComponentCssClass();\n }\n\n /** @hidden */\n ngAfterViewInit(): void {\n this.iconComponents.changes\n .pipe(\n startWith(this.iconComponents),\n map((c) => c.toArray()),\n map((icons) =>\n // We are only interested in the first descendant of the content element\n icons.filter(\n (icon) => icon.elementRef().nativeElement.parentElement === this.contentSpan.nativeElement\n )\n ),\n map((icons) => {\n if (icons.length === 0) {\n return {};\n }\n const prefix =\n icons[0].elementRef().nativeElement === this.contentSpan.nativeElement.childNodes[0]\n ? icons[0].elementRef().nativeElement\n : null;\n const postfix =\n icons[icons.length - 1].elementRef().nativeElement ===\n this.contentSpan.nativeElement.childNodes[this.contentSpan.nativeElement.childNodes.length - 1]\n ? icons[icons.length - 1].elementRef().nativeElement\n : null;\n return { prefix, postfix };\n }),\n tap(() => {\n if (this._prefixPortal?.isAttached) {\n this._prefixPortal.detach();\n }\n if (this._postfixPortal?.isAttached) {\n this._postfixPortal.detach();\n }\n }),\n tap(({ prefix, postfix }) => {\n this._prefixPortal = prefix ? new DomPortal(prefix) : null;\n this._postfixPortal = postfix ? new DomPortal(postfix) : null;\n }),\n tap(() => {\n this.changeDetectorRef.detectChanges();\n }),\n takeUntil(this._destroyed$)\n )\n .subscribe();\n }\n\n /** @hidden */\n ngOnDestroy(): void {\n this._destroyed$.next();\n this._destroyed$.complete();\n }\n}\n","<span *ngIf=\"_prefixPortal\">\n <ng-container *cdkPortalOutlet=\"_prefixPortal\"></ng-container>\n</span>\n<span class=\"fd-link__content\" #content>\n <ng-content></ng-content>\n</span>\n<span *ngIf=\"_postfixPortal\">\n <ng-container *cdkPortalOutlet=\"_postfixPortal\"></ng-container>\n</span>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { LinkComponent } from './link.component';\nimport { PortalModule } from '@angular/cdk/portal';\n\n@NgModule({\n declarations: [LinkComponent],\n imports: [CommonModule, PortalModule],\n exports: [LinkComponent]\n})\nexport class LinkModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":";;;;;;;;;;;;MA6Ba,aAAa;;IAyCtB,YACY,WAAgC,EAChC,eAAgC,EAChC,iBAAoC;QAFpC,gBAAW,GAAX,WAAW,CAAqB;QAChC,oBAAe,GAAf,eAAe,CAAiB;QAChC,sBAAiB,GAAjB,iBAAiB,CAAmB;;QANxC,gBAAW,GAAG,IAAI,OAAO,EAAQ,CAAC;KAOtC;;IAGJ,WAAW;QACP,IAAI,CAAC,sBAAsB,EAAE,CAAC;KACjC;;;;IAMD,sBAAsB;QAClB,OAAO;YACH,SAAS;YACT,IAAI,CAAC,UAAU,GAAG,qBAAqB,GAAG,EAAE;YAC5C,IAAI,CAAC,QAAQ,GAAG,aAAa,GAAG,EAAE;YAClC,IAAI,CAAC,QAAQ,GAAG,mBAAmB,GAAG,EAAE;YACxC,IAAI,CAAC,MAAM,GAAG,iBAAiB,GAAG,EAAE;YACpC,IAAI,CAAC,WAAW,GAAG,sBAAsB,GAAG,EAAE;YAC9C,IAAI,CAAC,KAAK;SACb,CAAC;KACL;;IAGD,UAAU;QACN,OAAO,IAAI,CAAC,WAAW,CAAC;KAC3B;;IAGD,QAAQ;QACJ,IAAI,CAAC,sBAAsB,EAAE,CAAC;KACjC;;IAGD,eAAe;QACX,IAAI,CAAC,cAAc,CAAC,OAAO;aACtB,IAAI,CACD,SAAS,CAAC,IAAI,CAAC,cAAc,CAAC,EAC9B,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,OAAO,EAAE,CAAC,EACvB,GAAG,CAAC,CAAC,KAAK;;QAEN,KAAK,CAAC,MAAM,CACR,CAAC,IAAI,KAAK,IAAI,CAAC,UAAU,EAAE,CAAC,aAAa,CAAC,aAAa,KAAK,IAAI,CAAC,WAAW,CAAC,aAAa,CAC7F,CACJ,EACD,GAAG,CAAC,CAAC,KAAK;YACN,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE;gBACpB,OAAO,EAAE,CAAC;aACb;YACD,MAAM,MAAM,GACR,KAAK,CAAC,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC,aAAa,KAAK,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC,CAAC;kBAC9E,KAAK,CAAC,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC,aAAa;kBACnC,IAAI,CAAC;YACf,MAAM,OAAO,GACT,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC,aAAa;gBAClD,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC;kBACzF,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC,aAAa;kBAClD,IAAI,CAAC;YACf,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;SAC9B,CAAC,EACF,GAAG,CAAC;YACA,IAAI,IAAI,CAAC,aAAa,EAAE,UAAU,EAAE;gBAChC,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,CAAC;aAC/B;YACD,IAAI,IAAI,CAAC,cAAc,EAAE,UAAU,EAAE;gBACjC,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,CAAC;aAChC;SACJ,CAAC,EACF,GAAG,CAAC,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE;YACpB,IAAI,CAAC,aAAa,GAAG,MAAM,GAAG,IAAI,SAAS,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC;YAC3D,IAAI,CAAC,cAAc,GAAG,OAAO,GAAG,IAAI,SAAS,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC;SACjE,CAAC,EACF,GAAG,CAAC;YACA,IAAI,CAAC,iBAAiB,CAAC,aAAa,EAAE,CAAC;SAC1C,CAAC,EACF,SAAS,CAAC,IAAI,CAAC,WAAW,CAAC,CAC9B;aACA,SAAS,EAAE,CAAC;KACpB;;IAGD,WAAW;QACP,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC;QACxB,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,CAAC;KAC/B;;0GAjIQ,aAAa;8FAAb,aAAa,0OACL,aAAa,0JC9BlC,sTASA;AD4EI;IAJC,aAAa;;;;2DAcb;2FAlEQ,aAAa;kBARzB,SAAS;+BAEI,qBAAqB,iBAGhB,iBAAiB,CAAC,IAAI,mBACpB,uBAAuB,CAAC,MAAM;+JAI/C,cAAc;sBADb,eAAe;uBAAC,aAAa;gBAI9B,WAAW;sBADV,SAAS;uBAAC,SAAS;gBAKpB,KAAK;sBADJ,KAAK;gBAKN,UAAU;sBADT,KAAK;gBAKN,QAAQ;sBADP,KAAK;gBAKN,QAAQ;sBADP,KAAK;gBAKN,MAAM;sBADL,KAAK;gBAKN,WAAW;sBADV,KAAK;;;;;QA4BN,sBAAsB;;ME1Eb,UAAU;;uGAAV,UAAU;wGAAV,UAAU,iBAJJ,aAAa,aAClB,YAAY,EAAE,YAAY,aAC1B,aAAa;wGAEd,UAAU,YAHV,CAAC,YAAY,EAAE,YAAY,CAAC;2FAG5B,UAAU;kBALtB,QAAQ;mBAAC;oBACN,YAAY,EAAE,CAAC,aAAa,CAAC;oBAC7B,OAAO,EAAE,CAAC,YAAY,EAAE,YAAY,CAAC;oBACrC,OAAO,EAAE,CAAC,aAAa,CAAC;iBAC3B;;;ACVD;;;;;;"}
1
+ {"version":3,"file":"fundamental-ngx-core-link.mjs","sources":["../../../../../libs/core/src/lib/link/link.component.ts","../../../../../libs/core/src/lib/link/link.component.html","../../../../../libs/core/src/lib/link/link.module.ts","../../../../../libs/core/src/lib/link/constants.ts","../../../../../libs/core/src/lib/link/fundamental-ngx-core-link.ts"],"sourcesContent":["import {\n AfterViewInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChildren,\n ElementRef,\n Input,\n OnChanges,\n OnDestroy,\n OnInit,\n QueryList,\n ViewChild,\n ViewEncapsulation\n} from '@angular/core';\nimport { applyCssClass, CssClassBuilder } from '@fundamental-ngx/core/utils';\nimport { ContentObserver } from '@angular/cdk/observers';\nimport { map, startWith, Subject, takeUntil, tap } from 'rxjs';\nimport { DomPortal, Portal } from '@angular/cdk/portal';\nimport { IconComponent } from '@fundamental-ngx/core/icon';\n\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: '[fdLink], [fd-link]',\n templateUrl: './link.component.html',\n styleUrls: ['./link.component.scss'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class LinkComponent implements OnChanges, OnInit, CssClassBuilder, AfterViewInit, OnDestroy {\n @ContentChildren(IconComponent)\n iconComponents: QueryList<IconComponent>;\n\n @ViewChild('content')\n contentSpan: ElementRef<HTMLSpanElement>;\n\n /** user's custom classes */\n @Input()\n class: string;\n\n /** Whether user wants to use emphasized mode */\n @Input()\n emphasized: boolean;\n\n /** Whether user wants to put disabled mode */\n @Input()\n disabled: boolean;\n\n /** Whether user wants to use inverted mode */\n @Input()\n inverted: boolean;\n\n /** Whether user wants to use subtle mode */\n @Input()\n subtle: boolean;\n\n /** Whether user wants to have a link without underline decoration */\n @Input()\n undecorated: boolean;\n\n /** @hidden */\n _prefixPortal: Portal<any> | null;\n\n /** @hidden */\n _postfixPortal: Portal<any> | null;\n\n /** @hidden */\n private _destroyed$ = new Subject<void>();\n\n /** @hidden */\n constructor(\n private _elementRef: ElementRef<Element>,\n private contentObserver: ContentObserver,\n private changeDetectorRef: ChangeDetectorRef\n ) {}\n\n /** @hidden */\n ngOnChanges(): void {\n this.buildComponentCssClass();\n }\n\n @applyCssClass\n /** CssClassBuilder interface implementation\n * function is responsible for order which css classes are applied\n */\n buildComponentCssClass(): string[] {\n return [\n 'fd-link',\n this.emphasized ? 'fd-link--emphasized' : '',\n this.disabled ? 'is-disabled' : '',\n this.inverted ? `fd-link--inverted` : '',\n this.subtle ? 'fd-link--subtle' : '',\n this.undecorated ? 'fd-link--undecorated' : '',\n this.class\n ];\n }\n\n /** @hidden */\n elementRef(): ElementRef<any> {\n return this._elementRef;\n }\n\n /** @hidden */\n ngOnInit(): void {\n this.buildComponentCssClass();\n }\n\n /** @hidden */\n ngAfterViewInit(): void {\n this.iconComponents.changes\n .pipe(\n startWith(this.iconComponents),\n map((c) => c.toArray()),\n map((icons) =>\n // We are only interested in the first descendant of the content element\n icons.filter(\n (icon) => icon.elementRef().nativeElement.parentElement === this.contentSpan.nativeElement\n )\n ),\n map((icons) => {\n if (icons.length === 0) {\n return {};\n }\n const prefix =\n icons[0].elementRef().nativeElement === this.contentSpan.nativeElement.childNodes[0]\n ? icons[0].elementRef().nativeElement\n : null;\n const postfix =\n icons[icons.length - 1].elementRef().nativeElement ===\n this.contentSpan.nativeElement.childNodes[this.contentSpan.nativeElement.childNodes.length - 1]\n ? icons[icons.length - 1].elementRef().nativeElement\n : null;\n return { prefix, postfix };\n }),\n tap(() => {\n if (this._prefixPortal?.isAttached) {\n this._prefixPortal.detach();\n }\n if (this._postfixPortal?.isAttached) {\n this._postfixPortal.detach();\n }\n }),\n tap(({ prefix, postfix }) => {\n this._prefixPortal = prefix ? new DomPortal(prefix) : null;\n this._postfixPortal = postfix ? new DomPortal(postfix) : null;\n }),\n tap(() => {\n this.changeDetectorRef.detectChanges();\n }),\n takeUntil(this._destroyed$)\n )\n .subscribe();\n }\n\n /** @hidden */\n ngOnDestroy(): void {\n this._destroyed$.next();\n this._destroyed$.complete();\n }\n}\n","<span *ngIf=\"_prefixPortal\">\n <ng-container *cdkPortalOutlet=\"_prefixPortal\"></ng-container>\n</span>\n<span class=\"fd-link__content\" #content>\n <ng-content></ng-content>\n</span>\n<span *ngIf=\"_postfixPortal\">\n <ng-container *cdkPortalOutlet=\"_postfixPortal\"></ng-container>\n</span>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { LinkComponent } from './link.component';\nimport { PortalModule } from '@angular/cdk/portal';\n\n@NgModule({\n declarations: [LinkComponent],\n imports: [CommonModule, PortalModule],\n exports: [LinkComponent]\n})\nexport class LinkModule {}\n","export const LINK_CLASS_NAME = {\n linkContent: 'fd-link__content'\n} as const;\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
package/link/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fundamental-ngx/core/link",
3
- "version": "0.35.0-rc.7",
3
+ "version": "0.35.0-rc.8",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^13.0.0",
6
6
  "@angular/core": "^13.0.0"
@@ -1,2 +1,3 @@
1
1
  export * from './link.module';
2
2
  export * from './link.component';
3
+ export * from './constants';
package/list/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fundamental-ngx/core/list",
3
- "version": "0.35.0-rc.7",
3
+ "version": "0.35.0-rc.8",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^13.0.0",
6
6
  "@angular/core": "^13.0.0"
package/menu/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fundamental-ngx/core/menu",
3
- "version": "0.35.0-rc.7",
3
+ "version": "0.35.0-rc.8",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^13.0.0",
6
6
  "@angular/core": "^13.0.0"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fundamental-ngx/core/message-box",
3
- "version": "0.35.0-rc.7",
3
+ "version": "0.35.0-rc.8",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^13.0.0",
6
6
  "@angular/core": "^13.0.0"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fundamental-ngx/core/message-strip",
3
- "version": "0.35.0-rc.7",
3
+ "version": "0.35.0-rc.8",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^13.0.0",
6
6
  "@angular/core": "^13.0.0"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fundamental-ngx/core/message-toast",
3
- "version": "0.35.0-rc.7",
3
+ "version": "0.35.0-rc.8",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^13.0.0",
6
6
  "@angular/core": "^13.0.0"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fundamental-ngx/core/micro-process-flow",
3
- "version": "0.35.0-rc.7",
3
+ "version": "0.35.0-rc.8",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^13.0.0",
6
6
  "@angular/core": "^13.0.0"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fundamental-ngx/core/mobile-mode",
3
- "version": "0.35.0-rc.7",
3
+ "version": "0.35.0-rc.8",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^13.0.0",
6
6
  "@angular/core": "^13.0.0"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fundamental-ngx/core/multi-input",
3
- "version": "0.35.0-rc.7",
3
+ "version": "0.35.0-rc.8",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^13.0.0",
6
6
  "@angular/core": "^13.0.0"