@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.
- package/action-bar/package.json +1 -1
- package/action-sheet/package.json +1 -1
- package/alert/package.json +1 -1
- package/avatar/package.json +1 -1
- package/avatar-group/package.json +1 -1
- package/bar/package.json +1 -1
- package/breadcrumb/package.json +1 -1
- package/busy-indicator/package.json +1 -1
- package/button/package.json +1 -1
- package/calendar/package.json +1 -1
- package/card/package.json +1 -1
- package/carousel/package.json +1 -1
- package/checkbox/package.json +1 -1
- package/combobox/package.json +1 -1
- package/date-picker/package.json +1 -1
- package/datetime/package.json +1 -1
- package/datetime-picker/package.json +1 -1
- package/dialog/package.json +1 -1
- package/dynamic-page/package.json +1 -1
- package/dynamic-side-content/package.json +1 -1
- package/esm2020/link/constants.mjs +4 -0
- package/esm2020/link/public_api.mjs +2 -1
- package/esm2020/upload-collection/upload-collection-item.directive.mjs +5 -2
- package/facets/package.json +1 -1
- package/feed-input/package.json +1 -1
- package/feed-list-item/package.json +1 -1
- package/fesm2015/fundamental-ngx-core-link.mjs +5 -1
- package/fesm2015/fundamental-ngx-core-link.mjs.map +1 -1
- package/fesm2015/fundamental-ngx-core-upload-collection.mjs +4 -2
- package/fesm2015/fundamental-ngx-core-upload-collection.mjs.map +1 -1
- package/fesm2020/fundamental-ngx-core-link.mjs +5 -1
- package/fesm2020/fundamental-ngx-core-link.mjs.map +1 -1
- package/fesm2020/fundamental-ngx-core-upload-collection.mjs +4 -2
- package/fesm2020/fundamental-ngx-core-upload-collection.mjs.map +1 -1
- package/file-uploader/package.json +1 -1
- package/fixed-card-layout/package.json +1 -1
- package/flexible-column-layout/package.json +1 -1
- package/form/package.json +1 -1
- package/formatted-text/package.json +1 -1
- package/grid-list/package.json +1 -1
- package/icon/package.json +1 -1
- package/illustrated-message/package.json +1 -1
- package/infinite-scroll/package.json +1 -1
- package/info-label/package.json +1 -1
- package/inline-help/package.json +1 -1
- package/input-group/package.json +1 -1
- package/layout-grid/package.json +1 -1
- package/layout-panel/package.json +1 -1
- package/link/constants.d.ts +3 -0
- package/link/esm2020/constants.mjs +4 -0
- package/link/esm2020/public_api.mjs +2 -1
- package/link/fesm2015/fundamental-ngx-core-link.mjs +5 -1
- package/link/fesm2015/fundamental-ngx-core-link.mjs.map +1 -1
- package/link/fesm2020/fundamental-ngx-core-link.mjs +5 -1
- package/link/fesm2020/fundamental-ngx-core-link.mjs.map +1 -1
- package/link/package.json +1 -1
- package/link/public_api.d.ts +1 -0
- package/list/package.json +1 -1
- package/menu/package.json +1 -1
- package/message-box/package.json +1 -1
- package/message-strip/package.json +1 -1
- package/message-toast/package.json +1 -1
- package/micro-process-flow/package.json +1 -1
- package/mobile-mode/package.json +1 -1
- package/multi-input/package.json +1 -1
- package/nested-list/package.json +1 -1
- package/notification/package.json +1 -1
- package/object-identifier/package.json +1 -1
- package/object-marker/package.json +1 -1
- package/object-number/package.json +1 -1
- package/object-status/package.json +1 -1
- package/package.json +1 -1
- package/pagination/package.json +1 -1
- package/panel/package.json +1 -1
- package/popover/package.json +1 -1
- package/product-switch/package.json +1 -1
- package/progress-indicator/package.json +1 -1
- package/quick-view/package.json +1 -1
- package/radio/package.json +1 -1
- package/rating-indicator/package.json +1 -1
- package/resizable-card-layout/package.json +1 -1
- package/scroll-spy/package.json +1 -1
- package/scrollbar/package.json +1 -1
- package/segmented-button/package.json +1 -1
- package/select/package.json +1 -1
- package/shared/package.json +1 -1
- package/shellbar/package.json +1 -1
- package/side-navigation/package.json +1 -1
- package/slider/package.json +1 -1
- package/split-button/package.json +1 -1
- package/splitter/package.json +1 -1
- package/status-indicator/package.json +1 -1
- package/step-input/package.json +1 -1
- package/switch/package.json +1 -1
- package/table/package.json +1 -1
- package/tabs/package.json +1 -1
- package/text/package.json +1 -1
- package/theming/package.json +1 -1
- package/tile/package.json +1 -1
- package/time/package.json +1 -1
- package/time-picker/package.json +1 -1
- package/timeline/package.json +1 -1
- package/title/package.json +1 -1
- package/token/package.json +1 -1
- package/toolbar/package.json +1 -1
- package/tree/package.json +1 -1
- package/upload-collection/esm2020/upload-collection-item.directive.mjs +5 -2
- package/upload-collection/fesm2015/fundamental-ngx-core-upload-collection.mjs +4 -2
- package/upload-collection/fesm2015/fundamental-ngx-core-upload-collection.mjs.map +1 -1
- package/upload-collection/fesm2020/fundamental-ngx-core-upload-collection.mjs +4 -2
- package/upload-collection/fesm2020/fundamental-ngx-core-upload-collection.mjs.map +1 -1
- package/upload-collection/package.json +1 -1
- package/utils/package.json +1 -1
- package/vertical-navigation/package.json +1 -1
- package/wizard/package.json +1 -1
package/action-bar/package.json
CHANGED
package/alert/package.json
CHANGED
package/avatar/package.json
CHANGED
package/bar/package.json
CHANGED
package/breadcrumb/package.json
CHANGED
package/button/package.json
CHANGED
package/calendar/package.json
CHANGED
package/card/package.json
CHANGED
package/carousel/package.json
CHANGED
package/checkbox/package.json
CHANGED
package/combobox/package.json
CHANGED
package/date-picker/package.json
CHANGED
package/datetime/package.json
CHANGED
package/dialog/package.json
CHANGED
|
@@ -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
|
-
|
|
3
|
+
export * from './constants';
|
|
4
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2FwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvY29yZS9zcmMvbGliL2xpbmsvcHVibGljX2FwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGVBQWUsQ0FBQztBQUM5QixjQUFjLGtCQUFrQixDQUFDO0FBQ2pDLGNBQWMsYUFBYSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9saW5rLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpbmsuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vY29uc3RhbnRzJztcbiJdfQ==
|
|
@@ -3,6 +3,7 @@ import { UploadCollectionFormItemComponent } from './upload-collection-form-item
|
|
|
3
3
|
import { UploadCollectionButtonGroupComponent } from './upload-collection-button-group/upload-collection-button-group.component';
|
|
4
4
|
import { Subscription } from 'rxjs';
|
|
5
5
|
import { UploadCollectionTitleContainerDirective, UploadCollectionTitleDirective } from './upload-collection-simple.directives';
|
|
6
|
+
import { LINK_CLASS_NAME } from '@fundamental-ngx/core/link';
|
|
6
7
|
import * as i0 from "@angular/core";
|
|
7
8
|
export class UploadCollectionItemDirective {
|
|
8
9
|
constructor(elementRef) {
|
|
@@ -17,7 +18,9 @@ export class UploadCollectionItemDirective {
|
|
|
17
18
|
/** @hidden */
|
|
18
19
|
ngAfterContentInit() {
|
|
19
20
|
this.fileNameFull = this.fileName + '.' + this.extension;
|
|
20
|
-
this._titleDirective.elRef.nativeElement.
|
|
21
|
+
this._titleDirective.elRef.nativeElement.tabIndex = '0';
|
|
22
|
+
this._titleDirective.elRef.nativeElement.innerHTML =
|
|
23
|
+
'<span class="' + LINK_CLASS_NAME.linkContent + '">' + this.fileNameFull + '</span>';
|
|
21
24
|
this._handleDeleteClickedSubscription();
|
|
22
25
|
this._handleOkClickedSubscription();
|
|
23
26
|
this._handleEditClickedSubscription();
|
|
@@ -177,4 +180,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.4", ngImpor
|
|
|
177
180
|
type: HostListener,
|
|
178
181
|
args: ['window:resize', []]
|
|
179
182
|
}] } });
|
|
180
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBsb2FkLWNvbGxlY3Rpb24taXRlbS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2NvcmUvc3JjL2xpYi91cGxvYWQtY29sbGVjdGlvbi91cGxvYWQtY29sbGVjdGlvbi1pdGVtLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBR0gsWUFBWSxFQUNaLFNBQVMsRUFDVCxVQUFVLEVBQ1YsWUFBWSxFQUNaLFlBQVksRUFDWixLQUFLLEVBRUwsTUFBTSxFQUNULE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxpQ0FBaUMsRUFBRSxNQUFNLHFFQUFxRSxDQUFDO0FBQ3hILE9BQU8sRUFBRSxvQ0FBb0MsRUFBRSxNQUFNLDJFQUEyRSxDQUFDO0FBQ2pJLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDcEMsT0FBTyxFQUNILHVDQUF1QyxFQUN2Qyw4QkFBOEIsRUFDakMsTUFBTSx1Q0FBdUMsQ0FBQzs7QUFPL0MsTUFBTSxPQUFPLDZCQUE2QjtJQXFFdEMsWUFBbUIsVUFBc0I7UUFBdEIsZUFBVSxHQUFWLFVBQVUsQ0FBWTtRQTVDekMsdURBQXVEO1FBRTlDLG9CQUFlLEdBQUcsSUFBSSxZQUFZLEVBQU8sQ0FBQztRQUVuRCxvREFBb0Q7UUFFM0Msa0JBQWEsR0FBRyxJQUFJLFlBQVksRUFBTyxDQUFDO1FBRWpELGNBQWM7UUFDTixtQkFBYyxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7SUFtQ0EsQ0FBQztJQXJCN0MsY0FBYztJQUNkLGtCQUFrQjtRQUNkLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLFFBQVEsR0FBRyxHQUFHLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQztRQUN6RCxJQUFJLENBQUMsZUFBZSxDQUFDLEtBQUssQ0FBQyxhQUFhLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUM7UUFDdkUsSUFB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bUJBQUM7b0JBQ1AsOERBQThEO29CQUM5RCxRQUFRLEVBQUUsNkJBQTZCO29CQUN2QyxJQUFJLEVBQUUsRUFBRSxLQUFLLEVBQUUsNEJBQTRCLEVBQUU7aUJBQ2hEO2lHQUlHLFFBQVE7c0JBRFAsS0FBSztnQkFLTixTQUFTO3NCQURSLEtBQUs7Z0JBS04sa0JBQWtCO3NCQURqQixZQUFZO3VCQUFDLGlDQUFpQztnQkFLL0MsZUFBZTtzQkFEZCxZQUFZO3VCQUFDLDhCQUE4QjtnQkFLNUMscUJBQXFCO3NCQURwQixZQUFZO3VCQUFDLG9DQUFvQztnQkFLbEQsd0JBQXdCO3NCQUR2QixZQUFZO3VCQUFDLHVDQUF1QztnQkFLNUMsZUFBZTtzQkFEdkIsTUFBTTtnQkFLRSxhQUFhO3NCQURyQixNQUFNO2dCQTJDUCxRQUFRO3NCQURQLFlBQVk7dUJBQUMsZUFBZSxFQUFFLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIEFmdGVyQ29udGVudEluaXQsXG4gICAgQWZ0ZXJWaWV3SW5pdCxcbiAgICBDb250ZW50Q2hpbGQsXG4gICAgRGlyZWN0aXZlLFxuICAgIEVsZW1lbnRSZWYsXG4gICAgRXZlbnRFbWl0dGVyLFxuICAgIEhvc3RMaXN0ZW5lcixcbiAgICBJbnB1dCxcbiAgICBPbkRlc3Ryb3ksXG4gICAgT3V0cHV0XG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgVXBsb2FkQ29sbGVjdGlvbkZvcm1JdGVtQ29tcG9uZW50IH0gZnJvbSAnLi91cGxvYWQtY29sbGVjdGlvbi1mb3JtLWl0ZW0vdXBsb2FkLWNvbGxlY3Rpb24tZm9ybS1pdGVtLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBVcGxvYWRDb2xsZWN0aW9uQnV0dG9uR3JvdXBDb21wb25lbnQgfSBmcm9tICcuL3VwbG9hZC1jb2xsZWN0aW9uLWJ1dHRvbi1ncm91cC91cGxvYWQtY29sbGVjdGlvbi1idXR0b24tZ3JvdXAuY29tcG9uZW50JztcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtcbiAgICBVcGxvYWRDb2xsZWN0aW9uVGl0bGVDb250YWluZXJEaXJlY3RpdmUsXG4gICAgVXBsb2FkQ29sbGVjdGlvblRpdGxlRGlyZWN0aXZlXG59IGZyb20gJy4vdXBsb2FkLWNvbGxlY3Rpb24tc2ltcGxlLmRpcmVjdGl2ZXMnO1xuXG5ARGlyZWN0aXZlKHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L2RpcmVjdGl2ZS1zZWxlY3RvclxuICAgIHNlbGVjdG9yOiAnW2ZkLXVwbG9hZC1jb2xsZWN0aW9uLWl0ZW1dJyxcbiAgICBob3N0OiB7IGNsYXNzOiAnZmQtdXBsb2FkLWNvbGxlY3Rpb25fX2l0ZW0nIH1cbn0pXG5leHBvcnQgY2xhc3MgVXBsb2FkQ29sbGVjdGlvbkl0ZW1EaXJlY3RpdmUgaW1wbGVtZW50cyBBZnRlckNvbnRlbnRJbml0LCBPbkRlc3Ryb3ksIEFmdGVyVmlld0luaXQge1xuICAgIC8qKiBUaGUgbmFtZSBvZiB0aGUgZmlsZSwgbm90IGluY2x1ZGluZyB0aGUgdHlwZSBleHRlbnNpb24uICovXG4gICAgQElucHV0KClcbiAgICBmaWxlTmFtZTogc3RyaW5nO1xuXG4gICAgLyoqIFRoZSBmaWxlIHR5cGUgZXh0ZW5zaW9uLiAqL1xuICAgIEBJbnB1dCgpXG4gICAgZXh0ZW5zaW9uOiBzdHJpbmc7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIEBDb250ZW50Q2hpbGQoVXBsb2FkQ29sbGVjdGlvbkZvcm1JdGVtQ29tcG9uZW50KVxuICAgIF9mb3JtSXRlbUNvbXBvbmVudDogVXBsb2FkQ29sbGVjdGlvbkZvcm1JdGVtQ29tcG9uZW50O1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBAQ29udGVudENoaWxkKFVwbG9hZENvbGxlY3Rpb25UaXRsZURpcmVjdGl2ZSlcbiAgICBfdGl0bGVEaXJlY3RpdmU6IFVwbG9hZENvbGxlY3Rpb25UaXRsZURpcmVjdGl2ZTtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgQENvbnRlbnRDaGlsZChVcGxvYWRDb2xsZWN0aW9uQnV0dG9uR3JvdXBDb21wb25lbnQpXG4gICAgX2J1dHRvbkdyb3VwQ29tcG9uZW50OiBVcGxvYWRDb2xsZWN0aW9uQnV0dG9uR3JvdXBDb21wb25lbnQ7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIEBDb250ZW50Q2hpbGQoVXBsb2FkQ29sbGVjdGlvblRpdGxlQ29udGFpbmVyRGlyZWN0aXZlKVxuICAgIF90aXRsZUNvbnRhaW5lckRpcmVjdGl2ZTogVXBsb2FkQ29sbGVjdGlvblRpdGxlQ29udGFpbmVyRGlyZWN0aXZlO1xuXG4gICAgLyoqIEV2ZW50IGVtaXR0ZWQgd2hlbiB0aGUgdXNlciBjaGFuZ2VzIGEgZmlsZSBuYW1lLiAqL1xuICAgIEBPdXRwdXQoKVxuICAgIHJlYWRvbmx5IGZpbGVOYW1lQ2hhbmdlZCA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuXG4gICAgLyoqIEV2ZW50IGVtaXR0ZWQgd2hlbiBwcmVzc2VzIHRoZSBkZWxldGUgYnV0dG9uLiAqL1xuICAgIEBPdXRwdXQoKVxuICAgIHJlYWRvbmx5IGRlbGV0ZUNsaWNrZWQgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfc3Vic2NyaXB0aW9ucyA9IG5ldyBTdWJzY3JpcHRpb24oKTtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgZmlsZU5hbWVGdWxsOiBzdHJpbmc7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHRpdGxlV2lkdGg6IG51bWJlcjtcblxuICAgIC8qKiBAaGlkZGVuIHVzZWQgdG8gY29tcGFyZSB0byB0aGUgY3VycmVudCB3aWR0aCB0byBrbm93IHdoZXRoZXIgdG8gY29sbGFwc2Ugb3IgZXhwYW5kIHRpdGxlICovXG4gICAgcHJldmlvdXNDb250YWluZXJXaWR0aDogbnVtYmVyO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBjb250YWluZXJXaWR0aDogbnVtYmVyO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBuZ0FmdGVyQ29udGVudEluaXQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZmlsZU5hbWVGdWxsID0gdGhpcy5maWxlTmFtZSArICcuJyArIHRoaXMuZXh0ZW5zaW9uO1xuICAgICAgICB0aGlzLl90aXRsZURpcmVjdGl2ZS5lbFJlZi5uYXRpdmVFbGVtZW50LmlubmVySFRNTCA9IHRoaXMuZmlsZU5hbWVGdWxsO1xuICAgICAgICB0aGlzLl9oYW5kbGVEZWxldGVDbGlja2VkU3Vic2NyaXB0aW9uKCk7XG4gICAgICAgIHRoaXMuX2hhbmRsZU9rQ2xpY2tlZFN1YnNjcmlwdGlvbigpO1xuICAgICAgICB0aGlzLl9oYW5kbGVFZGl0Q2xpY2tlZFN1YnNjcmlwdGlvbigpO1xuICAgICAgICB0aGlzLl9oYW5kbGVGb3JtSXRlbUlucHV0Q2hhbmdlZFN1YnNjcmlwdGlvbigpO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgICAgICAvLyBQcm9jZXNzIHJlc2l6ZSBhZnRlciBhbGwgdGhlIGNoaWxkcmVuIHZpZXdzIGlzIGluaXRpYWxpemVkXG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4gdGhpcy5vblJlc2l6ZSgpKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgICAgICB0aGlzLl9zdWJzY3JpcHRpb25zLnVuc3Vic2NyaWJlKCk7XG4gICAgfVxuXG4gICAgY29uc3RydWN0b3IocHVibGljIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWYpIHt9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIEBIb3N0TGlzdGVuZXIoJ3dpbmRvdzpyZXNpemUnLCBbXSlcbiAgICBvblJlc2l6ZSgpOiB2b2lkIHtcbiAgICAgICAgaWYgKCF0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5wYXJlbnRFbGVtZW50KSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy50aXRsZVdpZHRoID0gdGhpcy5nZXRUaXRsZVdpZHRoKCk7XG4gICAgICAgIHRoaXMuY29udGFpbmVyV2lkdGggPSB0aGlzLmdldENvbnRhaW5lcldpZHRoKCk7XG5cbiAgICAgICAgLy8gaWYgZmlyc3QgbG9hZCBhbmQgbm8gcHJldmlvdXMgY29udGFpbmVyIHdpZHRoLCBvciBpZiBjb250YWluZXIgYm91bmRhcnkgaXMgcmVzaXplZCB0byBzbWFsbGVyIHRoYW4gYmVmb3JlXG4gICAgICAgIGlmICghdGhpcy5wcmV2aW91c0NvbnRhaW5lcldpZHRoIHx8IHRoaXMuY29udGFpbmVyV2lkdGggPCB0aGlzLnByZXZpb3VzQ29udGFpbmVyV2lkdGgpIHtcbiAgICAgICAgICAgIC8vIGFuZCB0aGUgdGl0bGUgZXh0ZW5kcyBwYXN0IHRoZSBjb250YWluZXIsIDEuMDV4IHBhZGRpbmcgdG8gcHJldmVudCBqYWdneSByZXNpemluZy5cbiAgICAgICAgICAgIGlmICh0aGlzLnRpdGxlV2lkdGggKiAxLjA1ID49IHRoaXMuY29udGFpbmVyV2lkdGgpIHtcbiAgICAgICAgICAgICAgICB0aGlzLnJlc2l6ZUZpbGVUaXRsZSh0aGlzLl90aXRsZURpcmVjdGl2ZS5lbFJlZi5uYXRpdmVFbGVtZW50LmlubmVySFRNTCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSBpZiAodGhpcy5wcmV2aW91c0NvbnRhaW5lcldpZHRoICYmIHRoaXMuY29udGFpbmVyV2lkdGggPiB0aGlzLnByZXZpb3VzQ29udGFpbmVyV2lkdGgpIHtcbiAgICAgICAgICAgIC8vIExvb2tzIHRvIGV4cGFuZCBmaWxlIHRpdGxlIGlmIGNvbnRhaW5lciB3aWR0aCBpcyByZXNpemVkIHRvIGdyZWF0ZXIgdGhhbiBiZWZvcmVcbiAgICAgICAgICAgIC8vIHJlc2V0IGZpbGUgdGl0bGUgdG8gaW5pdGlhbFxuICAgICAgICAgICAgdGhpcy5fdGl0bGVEaXJlY3RpdmUuZWxSZWYubmF0aXZlRWxlbWVudC5pbm5lckhUTUwgPSB0aGlzLmZpbGVOYW1lRnVsbDtcbiAgICAgICAgICAgIHRoaXMucmVzaXplRmlsZVRpdGxlKHRoaXMuZmlsZU5hbWVGdWxsKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMucHJldmlvdXNDb250YWluZXJXaWR0aCA9IHRoaXMuY29udGFpbmVyV2lkdGg7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9oYW5kbGVPa0NsaWNrZWRTdWJzY3JpcHRpb24oKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX3N1YnNjcmlwdGlvbnMuYWRkKFxuICAgICAgICAgICAgdGhpcy5fYnV0dG9uR3JvdXBDb21wb25lbnQub2tDbGlja2VkLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKHRoaXMuX2Zvcm1JdGVtQ29tcG9uZW50LmZpbGVOYW1lICYmIHRoaXMuX2Zvcm1JdGVtQ29tcG9uZW50LmZpbGVOYW1lICE9PSAnJykge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmZpbGVOYW1lID0gdGhpcy5fZm9ybUl0ZW1Db21wb25lbnQuZmlsZU5hbWU7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuX3RpdGxlRGlyZWN0aXZlLmVsUmVmLm5hdGl2ZUVsZW1lbnQuc3R5bGUuZGlzcGxheSA9ICdpbmxpbmUtYmxvY2snO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmZpbGVOYW1lRnVsbCA9IHRoaXMuZmlsZU5hbWUgKyAnLicgKyB0aGlzLmV4dGVuc2lvbjtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5fdGl0bGVEaXJlY3RpdmUuZWxSZWYubmF0aXZlRWxlbWVudC5pbm5lckhUTUwgPSB0aGlzLmZpbGVOYW1lRnVsbDtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5yZXNpemVGaWxlVGl0bGUodGhpcy5maWxlTmFtZUZ1bGwpO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLl9mb3JtSXRlbUNvbXBvbmVudC5fZWRpdE1vZGUgPSBmYWxzZTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5fYnV0dG9uR3JvdXBDb21wb25lbnQuX2VkaXRNb2RlID0gZmFsc2U7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZmlsZU5hbWVDaGFuZ2VkLmVtaXQodGhpcyk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSlcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX2hhbmRsZUVkaXRDbGlja2VkU3Vic2NyaXB0aW9uKCk6IHZvaWQge1xuICAgICAgICB0aGlzLl9zdWJzY3JpcHRpb25zLmFkZChcbiAgICAgICAgICAgIHRoaXMuX2J1dHRvbkdyb3VwQ29tcG9uZW50LmVkaXRDbGlja2VkLnN1YnNjcmliZSgoZXZlbnQpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLl9mb3JtSXRlbUNvbXBvbmVudC5fZWRpdE1vZGUgPSBldmVudDtcbiAgICAgICAgICAgICAgICBpZiAodGhpcy5fdGl0bGVDb250YWluZXJEaXJlY3RpdmUpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5fdGl0bGVDb250YWluZXJEaXJlY3RpdmUuYXBwbHlDb250YWluZXJDbGFzcyA9ICFldmVudDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgY29uc3Qgc3R5bGVzOiBDU1NTdHlsZURlY2xhcmF0aW9uW10gPSBbXTtcbiAgICAgICAgICAgICAgICBzdHlsZXMucHVzaCgodGhpcy5fdGl0bGVEaXJlY3RpdmUuZWxSZWYubmF0aXZlRWxlbWVudCBhcyBIVE1MRWxlbWVudCkuc3R5bGUpO1xuICAgICAgICAgICAgICAgIHRoaXMuX3RpdGxlQ29udGFpbmVyRGlyZWN0aXZlPy5fb2JqZWN0TWFya2VyQ29tcG9uZW50cz8uZm9yRWFjaCgob2JqZWN0TWFya2VyKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHN0eWxlcy5wdXNoKG9iamVjdE1hcmtlci5lbGVtZW50UmVmKCkubmF0aXZlRWxlbWVudC5zdHlsZSk7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgZXZlbnRcbiAgICAgICAgICAgICAgICAgICAgPyBzdHlsZXMuZm9yRWFjaCgoc3R5bGUpID0+IChzdHlsZS5kaXNwbGF5ID0gJ25vbmUnKSlcbiAgICAgICAgICAgICAgICAgICAgOiBzdHlsZXMuZm9yRWFjaCgoc3R5bGUpID0+IChzdHlsZS5kaXNwbGF5ID0gJ2lubGluZS1ibG9jaycpKTtcbiAgICAgICAgICAgICAgICBpZiAoZXZlbnQpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5fZm9ybUl0ZW1Db21wb25lbnQuX2V4dGVuc2lvbiA9IHRoaXMuZXh0ZW5zaW9uO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLl9mb3JtSXRlbUNvbXBvbmVudC5maWxlTmFtZSA9IHRoaXMuZmlsZU5hbWU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSlcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX2hhbmRsZURlbGV0ZUNsaWNrZWRTdWJzY3JpcHRpb24oKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX3N1YnNjcmlwdGlvbnMuYWRkKFxuICAgICAgICAgICAgdGhpcy5fYnV0dG9uR3JvdXBDb21wb25lbnQuZGVsZXRlQ2xpY2tlZC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuZGVsZXRlQ2xpY2tlZC5lbWl0KHRoaXMpO1xuICAgICAgICAgICAgfSlcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX2hhbmRsZUZvcm1JdGVtSW5wdXRDaGFuZ2VkU3Vic2NyaXB0aW9uKCk6IHZvaWQge1xuICAgICAgICB0aGlzLl9zdWJzY3JpcHRpb25zLmFkZChcbiAgICAgICAgICAgIHRoaXMuX2Zvcm1JdGVtQ29tcG9uZW50LmZpbGVOYW1lQ2hhbmdlZC5zdWJzY3JpYmUoKGV2ZW50KSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5fYnV0dG9uR3JvdXBDb21wb25lbnQuX29rQnV0dG9uLmRpc2FibGVkID0gZXZlbnQgPT09ICcnO1xuICAgICAgICAgICAgICAgIHRoaXMuX2J1dHRvbkdyb3VwQ29tcG9uZW50Ll9va0J1dHRvbi5idWlsZENvbXBvbmVudENzc0NsYXNzKCk7XG4gICAgICAgICAgICB9KVxuICAgICAgICApO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBnZXRUaXRsZVdpZHRoKCk6IG51bWJlciB7XG4gICAgICAgIHJldHVybiB0aGlzLl90aXRsZURpcmVjdGl2ZS5lbFJlZi5uYXRpdmVFbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLndpZHRoO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBnZXRDb250YWluZXJXaWR0aCgpOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gdGhpcy5fdGl0bGVEaXJlY3RpdmUuZWxSZWYubmF0aXZlRWxlbWVudC5wYXJlbnRFbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLndpZHRoO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEBoaWRkZW5cbiAgICAgKlxuICAgICAqIHRydW5jYXRlcyB0aGUgc3RyaW5nIGJ5IGN1dHRpbmcgb3V0IGV4Y2VzcyBsZW5ndGggaW4gdGhlIG1pZGRsZSBhbmQgcmVwbGFjaW5nIHdpdGggJy4uLidcbiAgICAgKi9cbiAgICBwcml2YXRlIHRydW5jYXRlVGl0bGUoc3RyOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgICAgICBjb25zdCBjdXRMZW5ndGggPSBNYXRoLmZsb29yKHN0ci5sZW5ndGggKiAwLjgpO1xuXG4gICAgICAgIGlmIChzdHIubGVuZ3RoID4gY3V0TGVuZ3RoKSB7XG4gICAgICAgICAgICBjb25zdCBzdHJpbmdMZWZ0SW5kZXggPSBNYXRoLmZsb29yKGN1dExlbmd0aCAvIDIpO1xuICAgICAgICAgICAgY29uc3Qgc3RyaW5nUmlnaHRJbmRleCA9IHN0ci5sZW5ndGggLSBzdHJpbmdMZWZ0SW5kZXggKyAzO1xuICAgICAgICAgICAgcmV0dXJuIHN0ci5zdWJzdHJpbmcoMCwgc3RyaW5nTGVmdEluZGV4KSArICcuLi4nICsgc3RyLnN1YnN0cmluZyhzdHJpbmdSaWdodEluZGV4LCBzdHIubGVuZ3RoKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gc3RyO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEBoaWRkZW5cbiAgICAgKlxuICAgICAqIGRldGVybWluZXMgaWYgZmlsZSB0aXRsZSBuZWVkcyB0byBiZSB0cnVuY2F0ZWQgZ2l2ZW4gY29udGFpbmVyIGNvbnN0cmFpbnQuXG4gICAgICovXG4gICAgcHJpdmF0ZSByZXNpemVGaWxlVGl0bGUodGl0bGVTdHI6IHN0cmluZyk6IHZvaWQge1xuICAgICAgICBsZXQgY3VyVGl0bGUgPSB0aXRsZVN0cjtcbiAgICAgICAgdGhpcy5jb250YWluZXJXaWR0aCA9IHRoaXMuZ2V0Q29udGFpbmVyV2lkdGgoKTtcbiAgICAgICAgdGhpcy50aXRsZVdpZHRoID0gdGhpcy5nZXRUaXRsZVdpZHRoKCk7XG5cbiAgICAgICAgLy8gcmVwZWF0ZWRseSB0cnVuY2F0ZSB0aGUgdGl0bGUgdW50aWwgaXQgZml0cyBpbnNpZGUgY29udGFpbmVyXG4gICAgICAgIHdoaWxlICh0aGlzLnRpdGxlV2lkdGggKiAxLjA1ID49IHRoaXMuY29udGFpbmVyV2lkdGgpIHtcbiAgICAgICAgICAgIGNvbnN0IHRydW5jYXRlZFRpdGxlU3RyID0gdGhpcy50cnVuY2F0ZVRpdGxlKGN1clRpdGxlKTtcbiAgICAgICAgICAgIHRoaXMuX3RpdGxlRGlyZWN0aXZlLmVsUmVmLm5hdGl2ZUVsZW1lbnQuaW5uZXJIVE1MID0gdHJ1bmNhdGVkVGl0bGVTdHI7XG4gICAgICAgICAgICBjdXJUaXRsZSA9IHRydW5jYXRlZFRpdGxlU3RyO1xuICAgICAgICAgICAgdGhpcy50aXRsZVdpZHRoID0gdGhpcy5nZXRUaXRsZVdpZHRoKCk7XG4gICAgICAgICAgICB0aGlzLmNvbnRhaW5lcldpZHRoID0gdGhpcy5nZXRDb250YWluZXJXaWR0aCgpO1xuICAgICAgICB9XG4gICAgfVxufVxuIl19
|
|
183
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBsb2FkLWNvbGxlY3Rpb24taXRlbS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2NvcmUvc3JjL2xpYi91cGxvYWQtY29sbGVjdGlvbi91cGxvYWQtY29sbGVjdGlvbi1pdGVtLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBR0gsWUFBWSxFQUNaLFNBQVMsRUFDVCxVQUFVLEVBQ1YsWUFBWSxFQUNaLFlBQVksRUFDWixLQUFLLEVBRUwsTUFBTSxFQUNULE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxpQ0FBaUMsRUFBRSxNQUFNLHFFQUFxRSxDQUFDO0FBQ3hILE9BQU8sRUFBRSxvQ0FBb0MsRUFBRSxNQUFNLDJFQUEyRSxDQUFDO0FBQ2pJLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDcEMsT0FBTyxFQUNILHVDQUF1QyxFQUN2Qyw4QkFBOEIsRUFDakMsTUFBTSx1Q0FBdUMsQ0FBQztBQUMvQyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7O0FBTzdELE1BQU0sT0FBTyw2QkFBNkI7SUF1RXRDLFlBQW1CLFVBQXNCO1FBQXRCLGVBQVUsR0FBVixVQUFVLENBQVk7UUE5Q3pDLHVEQUF1RDtRQUU5QyxvQkFBZSxHQUFHLElBQUksWUFBWSxFQUFPLENBQUM7UUFFbkQsb0RBQW9EO1FBRTNDLGtCQUFhLEdBQUcsSUFBSSxZQUFZLEVBQU8sQ0FBQztRQUVqRCxjQUFjO1FBQ04sbUJBQWMsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO0lBcUNBLENBQUM7SUF2QjdDLGNBQWM7SUFDZCxrQkFBa0I7UUFDZCxJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxRQUFRLEdBQUcsR0FBRyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUM7UUFDekQsSUFBSSxDQUFDLGVBQWUsQ0FBQyxLQUFLLENBQUMsYUFBYSxD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R0FBRyxJQUFJLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztTQUNsRDtJQUNMLENBQUM7OzBIQTNNUSw2QkFBNkI7OEdBQTdCLDZCQUE2QixvV0FVeEIsaUNBQWlDLGtGQUlqQyw4QkFBOEIsd0ZBSTlCLG9DQUFvQywyRkFJcEMsdUNBQXVDOzJGQXRCNUMsNkJBQTZCO2tCQUx6QyxTQUFTO21CQUFDO29CQUNQLDhEQUE4RDtvQkFDOUQsUUFBUSxFQUFFLDZCQUE2QjtvQkFDdkMsSUFBSSxFQUFFLEVBQUUsS0FBSyxFQUFFLDRCQUE0QixFQUFFO2lCQUNoRDtpR0FJRyxRQUFRO3NCQURQLEtBQUs7Z0JBS04sU0FBUztzQkFEUixLQUFLO2dCQUtOLGtCQUFrQjtzQkFEakIsWUFBWTt1QkFBQyxpQ0FBaUM7Z0JBSy9DLGVBQWU7c0JBRGQsWUFBWTt1QkFBQyw4QkFBOEI7Z0JBSzVDLHFCQUFxQjtzQkFEcEIsWUFBWTt1QkFBQyxvQ0FBb0M7Z0JBS2xELHdCQUF3QjtzQkFEdkIsWUFBWTt1QkFBQyx1Q0FBdUM7Z0JBSzVDLGVBQWU7c0JBRHZCLE1BQU07Z0JBS0UsYUFBYTtzQkFEckIsTUFBTTtnQkE2Q1AsUUFBUTtzQkFEUCxZQUFZO3VCQUFDLGVBQWUsRUFBRSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBBZnRlckNvbnRlbnRJbml0LFxuICAgIEFmdGVyVmlld0luaXQsXG4gICAgQ29udGVudENoaWxkLFxuICAgIERpcmVjdGl2ZSxcbiAgICBFbGVtZW50UmVmLFxuICAgIEV2ZW50RW1pdHRlcixcbiAgICBIb3N0TGlzdGVuZXIsXG4gICAgSW5wdXQsXG4gICAgT25EZXN0cm95LFxuICAgIE91dHB1dFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFVwbG9hZENvbGxlY3Rpb25Gb3JtSXRlbUNvbXBvbmVudCB9IGZyb20gJy4vdXBsb2FkLWNvbGxlY3Rpb24tZm9ybS1pdGVtL3VwbG9hZC1jb2xsZWN0aW9uLWZvcm0taXRlbS5jb21wb25lbnQnO1xuaW1wb3J0IHsgVXBsb2FkQ29sbGVjdGlvbkJ1dHRvbkdyb3VwQ29tcG9uZW50IH0gZnJvbSAnLi91cGxvYWQtY29sbGVjdGlvbi1idXR0b24tZ3JvdXAvdXBsb2FkLWNvbGxlY3Rpb24tYnV0dG9uLWdyb3VwLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7XG4gICAgVXBsb2FkQ29sbGVjdGlvblRpdGxlQ29udGFpbmVyRGlyZWN0aXZlLFxuICAgIFVwbG9hZENvbGxlY3Rpb25UaXRsZURpcmVjdGl2ZVxufSBmcm9tICcuL3VwbG9hZC1jb2xsZWN0aW9uLXNpbXBsZS5kaXJlY3RpdmVzJztcbmltcG9ydCB7IExJTktfQ0xBU1NfTkFNRSB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZS9saW5rJztcblxuQERpcmVjdGl2ZSh7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9kaXJlY3RpdmUtc2VsZWN0b3JcbiAgICBzZWxlY3RvcjogJ1tmZC11cGxvYWQtY29sbGVjdGlvbi1pdGVtXScsXG4gICAgaG9zdDogeyBjbGFzczogJ2ZkLXVwbG9hZC1jb2xsZWN0aW9uX19pdGVtJyB9XG59KVxuZXhwb3J0IGNsYXNzIFVwbG9hZENvbGxlY3Rpb25JdGVtRGlyZWN0aXZlIGltcGxlbWVudHMgQWZ0ZXJDb250ZW50SW5pdCwgT25EZXN0cm95LCBBZnRlclZpZXdJbml0IHtcbiAgICAvKiogVGhlIG5hbWUgb2YgdGhlIGZpbGUsIG5vdCBpbmNsdWRpbmcgdGhlIHR5cGUgZXh0ZW5zaW9uLiAqL1xuICAgIEBJbnB1dCgpXG4gICAgZmlsZU5hbWU6IHN0cmluZztcblxuICAgIC8qKiBUaGUgZmlsZSB0eXBlIGV4dGVuc2lvbi4gKi9cbiAgICBASW5wdXQoKVxuICAgIGV4dGVuc2lvbjogc3RyaW5nO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBAQ29udGVudENoaWxkKFVwbG9hZENvbGxlY3Rpb25Gb3JtSXRlbUNvbXBvbmVudClcbiAgICBfZm9ybUl0ZW1Db21wb25lbnQ6IFVwbG9hZENvbGxlY3Rpb25Gb3JtSXRlbUNvbXBvbmVudDtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgQENvbnRlbnRDaGlsZChVcGxvYWRDb2xsZWN0aW9uVGl0bGVEaXJlY3RpdmUpXG4gICAgX3RpdGxlRGlyZWN0aXZlOiBVcGxvYWRDb2xsZWN0aW9uVGl0bGVEaXJlY3RpdmU7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIEBDb250ZW50Q2hpbGQoVXBsb2FkQ29sbGVjdGlvbkJ1dHRvbkdyb3VwQ29tcG9uZW50KVxuICAgIF9idXR0b25Hcm91cENvbXBvbmVudDogVXBsb2FkQ29sbGVjdGlvbkJ1dHRvbkdyb3VwQ29tcG9uZW50O1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBAQ29udGVudENoaWxkKFVwbG9hZENvbGxlY3Rpb25UaXRsZUNvbnRhaW5lckRpcmVjdGl2ZSlcbiAgICBfdGl0bGVDb250YWluZXJEaXJlY3RpdmU6IFVwbG9hZENvbGxlY3Rpb25UaXRsZUNvbnRhaW5lckRpcmVjdGl2ZTtcblxuICAgIC8qKiBFdmVudCBlbWl0dGVkIHdoZW4gdGhlIHVzZXIgY2hhbmdlcyBhIGZpbGUgbmFtZS4gKi9cbiAgICBAT3V0cHV0KClcbiAgICByZWFkb25seSBmaWxlTmFtZUNoYW5nZWQgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcblxuICAgIC8qKiBFdmVudCBlbWl0dGVkIHdoZW4gcHJlc3NlcyB0aGUgZGVsZXRlIGJ1dHRvbi4gKi9cbiAgICBAT3V0cHV0KClcbiAgICByZWFkb25seSBkZWxldGVDbGlja2VkID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX3N1YnNjcmlwdGlvbnMgPSBuZXcgU3Vic2NyaXB0aW9uKCk7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIGZpbGVOYW1lRnVsbDogc3RyaW5nO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICB0aXRsZVdpZHRoOiBudW1iZXI7XG5cbiAgICAvKiogQGhpZGRlbiB1c2VkIHRvIGNvbXBhcmUgdG8gdGhlIGN1cnJlbnQgd2lkdGggdG8ga25vdyB3aGV0aGVyIHRvIGNvbGxhcHNlIG9yIGV4cGFuZCB0aXRsZSAqL1xuICAgIHByZXZpb3VzQ29udGFpbmVyV2lkdGg6IG51bWJlcjtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgY29udGFpbmVyV2lkdGg6IG51bWJlcjtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgbmdBZnRlckNvbnRlbnRJbml0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLmZpbGVOYW1lRnVsbCA9IHRoaXMuZmlsZU5hbWUgKyAnLicgKyB0aGlzLmV4dGVuc2lvbjtcbiAgICAgICAgdGhpcy5fdGl0bGVEaXJlY3RpdmUuZWxSZWYubmF0aXZlRWxlbWVudC50YWJJbmRleCA9ICcwJztcbiAgICAgICAgdGhpcy5fdGl0bGVEaXJlY3RpdmUuZWxSZWYubmF0aXZlRWxlbWVudC5pbm5lckhUTUwgPVxuICAgICAgICAgICAgJzxzcGFuIGNsYXNzPVwiJyArIExJTktfQ0xBU1NfTkFNRS5saW5rQ29udGVudCArICdcIj4nICsgdGhpcy5maWxlTmFtZUZ1bGwgKyAnPC9zcGFuPic7XG4gICAgICAgIHRoaXMuX2hhbmRsZURlbGV0ZUNsaWNrZWRTdWJzY3JpcHRpb24oKTtcbiAgICAgICAgdGhpcy5faGFuZGxlT2tDbGlja2VkU3Vic2NyaXB0aW9uKCk7XG4gICAgICAgIHRoaXMuX2hhbmRsZUVkaXRDbGlja2VkU3Vic2NyaXB0aW9uKCk7XG4gICAgICAgIHRoaXMuX2hhbmRsZUZvcm1JdGVtSW5wdXRDaGFuZ2VkU3Vic2NyaXB0aW9uKCk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgICAgIC8vIFByb2Nlc3MgcmVzaXplIGFmdGVyIGFsbCB0aGUgY2hpbGRyZW4gdmlld3MgaXMgaW5pdGlhbGl6ZWRcbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB0aGlzLm9uUmVzaXplKCkpO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX3N1YnNjcmlwdGlvbnMudW5zdWJzY3JpYmUoKTtcbiAgICB9XG5cbiAgICBjb25zdHJ1Y3RvcihwdWJsaWMgZWxlbWVudFJlZjogRWxlbWVudFJlZikge31cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgQEhvc3RMaXN0ZW5lcignd2luZG93OnJlc2l6ZScsIFtdKVxuICAgIG9uUmVzaXplKCk6IHZvaWQge1xuICAgICAgICBpZiAoIXRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnBhcmVudEVsZW1lbnQpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLnRpdGxlV2lkdGggPSB0aGlzLmdldFRpdGxlV2lkdGgoKTtcbiAgICAgICAgdGhpcy5jb250YWluZXJXaWR0aCA9IHRoaXMuZ2V0Q29udGFpbmVyV2lkdGgoKTtcblxuICAgICAgICAvLyBpZiBmaXJzdCBsb2FkIGFuZCBubyBwcmV2aW91cyBjb250YWluZXIgd2lkdGgsIG9yIGlmIGNvbnRhaW5lciBib3VuZGFyeSBpcyByZXNpemVkIHRvIHNtYWxsZXIgdGhhbiBiZWZvcmVcbiAgICAgICAgaWYgKCF0aGlzLnByZXZpb3VzQ29udGFpbmVyV2lkdGggfHwgdGhpcy5jb250YWluZXJXaWR0aCA8IHRoaXMucHJldmlvdXNDb250YWluZXJXaWR0aCkge1xuICAgICAgICAgICAgLy8gYW5kIHRoZSB0aXRsZSBleHRlbmRzIHBhc3QgdGhlIGNvbnRhaW5lciwgMS4wNXggcGFkZGluZyB0byBwcmV2ZW50IGphZ2d5IHJlc2l6aW5nLlxuICAgICAgICAgICAgaWYgKHRoaXMudGl0bGVXaWR0aCAqIDEuMDUgPj0gdGhpcy5jb250YWluZXJXaWR0aCkge1xuICAgICAgICAgICAgICAgIHRoaXMucmVzaXplRmlsZVRpdGxlKHRoaXMuX3RpdGxlRGlyZWN0aXZlLmVsUmVmLm5hdGl2ZUVsZW1lbnQuaW5uZXJIVE1MKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIGlmICh0aGlzLnByZXZpb3VzQ29udGFpbmVyV2lkdGggJiYgdGhpcy5jb250YWluZXJXaWR0aCA+IHRoaXMucHJldmlvdXNDb250YWluZXJXaWR0aCkge1xuICAgICAgICAgICAgLy8gTG9va3MgdG8gZXhwYW5kIGZpbGUgdGl0bGUgaWYgY29udGFpbmVyIHdpZHRoIGlzIHJlc2l6ZWQgdG8gZ3JlYXRlciB0aGFuIGJlZm9yZVxuICAgICAgICAgICAgLy8gcmVzZXQgZmlsZSB0aXRsZSB0byBpbml0aWFsXG4gICAgICAgICAgICB0aGlzLl90aXRsZURpcmVjdGl2ZS5lbFJlZi5uYXRpdmVFbGVtZW50LmlubmVySFRNTCA9IHRoaXMuZmlsZU5hbWVGdWxsO1xuICAgICAgICAgICAgdGhpcy5yZXNpemVGaWxlVGl0bGUodGhpcy5maWxlTmFtZUZ1bGwpO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5wcmV2aW91c0NvbnRhaW5lcldpZHRoID0gdGhpcy5jb250YWluZXJXaWR0aDtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX2hhbmRsZU9rQ2xpY2tlZFN1YnNjcmlwdGlvbigpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fc3Vic2NyaXB0aW9ucy5hZGQoXG4gICAgICAgICAgICB0aGlzLl9idXR0b25Hcm91cENvbXBvbmVudC5va0NsaWNrZWQuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAodGhpcy5fZm9ybUl0ZW1Db21wb25lbnQuZmlsZU5hbWUgJiYgdGhpcy5fZm9ybUl0ZW1Db21wb25lbnQuZmlsZU5hbWUgIT09ICcnKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZmlsZU5hbWUgPSB0aGlzLl9mb3JtSXRlbUNvbXBvbmVudC5maWxlTmFtZTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5fdGl0bGVEaXJlY3RpdmUuZWxSZWYubmF0aXZlRWxlbWVudC5zdHlsZS5kaXNwbGF5ID0gJ2lubGluZS1ibG9jayc7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZmlsZU5hbWVGdWxsID0gdGhpcy5maWxlTmFtZSArICcuJyArIHRoaXMuZXh0ZW5zaW9uO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLl90aXRsZURpcmVjdGl2ZS5lbFJlZi5uYXRpdmVFbGVtZW50LmlubmVySFRNTCA9IHRoaXMuZmlsZU5hbWVGdWxsO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnJlc2l6ZUZpbGVUaXRsZSh0aGlzLmZpbGVOYW1lRnVsbCk7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuX2Zvcm1JdGVtQ29tcG9uZW50Ll9lZGl0TW9kZSA9IGZhbHNlO1xuICAgICAgICAgICAgICAgICAgICB0aGlzLl9idXR0b25Hcm91cENvbXBvbmVudC5fZWRpdE1vZGUgPSBmYWxzZTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5maWxlTmFtZUNoYW5nZWQuZW1pdCh0aGlzKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KVxuICAgICAgICApO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfaGFuZGxlRWRpdENsaWNrZWRTdWJzY3JpcHRpb24oKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX3N1YnNjcmlwdGlvbnMuYWRkKFxuICAgICAgICAgICAgdGhpcy5fYnV0dG9uR3JvdXBDb21wb25lbnQuZWRpdENsaWNrZWQuc3Vic2NyaWJlKChldmVudCkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuX2Zvcm1JdGVtQ29tcG9uZW50Ll9lZGl0TW9kZSA9IGV2ZW50O1xuICAgICAgICAgICAgICAgIGlmICh0aGlzLl90aXRsZUNvbnRhaW5lckRpcmVjdGl2ZSkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLl90aXRsZUNvbnRhaW5lckRpcmVjdGl2ZS5hcHBseUNvbnRhaW5lckNsYXNzID0gIWV2ZW50O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBjb25zdCBzdHlsZXM6IENTU1N0eWxlRGVjbGFyYXRpb25bXSA9IFtdO1xuICAgICAgICAgICAgICAgIHN0eWxlcy5wdXNoKCh0aGlzLl90aXRsZURpcmVjdGl2ZS5lbFJlZi5uYXRpdmVFbGVtZW50IGFzIEhUTUxFbGVtZW50KS5zdHlsZSk7XG4gICAgICAgICAgICAgICAgdGhpcy5fdGl0bGVDb250YWluZXJEaXJlY3RpdmU/Ll9vYmplY3RNYXJrZXJDb21wb25lbnRzPy5mb3JFYWNoKChvYmplY3RNYXJrZXIpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgc3R5bGVzLnB1c2gob2JqZWN0TWFya2VyLmVsZW1lbnRSZWYoKS5uYXRpdmVFbGVtZW50LnN0eWxlKTtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICBldmVudFxuICAgICAgICAgICAgICAgICAgICA/IHN0eWxlcy5mb3JFYWNoKChzdHlsZSkgPT4gKHN0eWxlLmRpc3BsYXkgPSAnbm9uZScpKVxuICAgICAgICAgICAgICAgICAgICA6IHN0eWxlcy5mb3JFYWNoKChzdHlsZSkgPT4gKHN0eWxlLmRpc3BsYXkgPSAnaW5saW5lLWJsb2NrJykpO1xuICAgICAgICAgICAgICAgIGlmIChldmVudCkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLl9mb3JtSXRlbUNvbXBvbmVudC5fZXh0ZW5zaW9uID0gdGhpcy5leHRlbnNpb247XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuX2Zvcm1JdGVtQ29tcG9uZW50LmZpbGVOYW1lID0gdGhpcy5maWxlTmFtZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KVxuICAgICAgICApO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfaGFuZGxlRGVsZXRlQ2xpY2tlZFN1YnNjcmlwdGlvbigpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fc3Vic2NyaXB0aW9ucy5hZGQoXG4gICAgICAgICAgICB0aGlzLl9idXR0b25Hcm91cENvbXBvbmVudC5kZWxldGVDbGlja2VkLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5kZWxldGVDbGlja2VkLmVtaXQodGhpcyk7XG4gICAgICAgICAgICB9KVxuICAgICAgICApO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfaGFuZGxlRm9ybUl0ZW1JbnB1dENoYW5nZWRTdWJzY3JpcHRpb24oKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX3N1YnNjcmlwdGlvbnMuYWRkKFxuICAgICAgICAgICAgdGhpcy5fZm9ybUl0ZW1Db21wb25lbnQuZmlsZU5hbWVDaGFuZ2VkLnN1YnNjcmliZSgoZXZlbnQpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLl9idXR0b25Hcm91cENvbXBvbmVudC5fb2tCdXR0b24uZGlzYWJsZWQgPSBldmVudCA9PT0gJyc7XG4gICAgICAgICAgICAgICAgdGhpcy5fYnV0dG9uR3JvdXBDb21wb25lbnQuX29rQnV0dG9uLmJ1aWxkQ29tcG9uZW50Q3NzQ2xhc3MoKTtcbiAgICAgICAgICAgIH0pXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIGdldFRpdGxlV2lkdGgoKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3RpdGxlRGlyZWN0aXZlLmVsUmVmLm5hdGl2ZUVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkud2lkdGg7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIGdldENvbnRhaW5lcldpZHRoKCk6IG51bWJlciB7XG4gICAgICAgIHJldHVybiB0aGlzLl90aXRsZURpcmVjdGl2ZS5lbFJlZi5uYXRpdmVFbGVtZW50LnBhcmVudEVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkud2lkdGg7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQGhpZGRlblxuICAgICAqXG4gICAgICogdHJ1bmNhdGVzIHRoZSBzdHJpbmcgYnkgY3V0dGluZyBvdXQgZXhjZXNzIGxlbmd0aCBpbiB0aGUgbWlkZGxlIGFuZCByZXBsYWNpbmcgd2l0aCAnLi4uJ1xuICAgICAqL1xuICAgIHByaXZhdGUgdHJ1bmNhdGVUaXRsZShzdHI6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgICAgIGNvbnN0IGN1dExlbmd0aCA9IE1hdGguZmxvb3Ioc3RyLmxlbmd0aCAqIDAuOCk7XG5cbiAgICAgICAgaWYgKHN0ci5sZW5ndGggPiBjdXRMZW5ndGgpIHtcbiAgICAgICAgICAgIGNvbnN0IHN0cmluZ0xlZnRJbmRleCA9IE1hdGguZmxvb3IoY3V0TGVuZ3RoIC8gMik7XG4gICAgICAgICAgICBjb25zdCBzdHJpbmdSaWdodEluZGV4ID0gc3RyLmxlbmd0aCAtIHN0cmluZ0xlZnRJbmRleCArIDM7XG4gICAgICAgICAgICByZXR1cm4gc3RyLnN1YnN0cmluZygwLCBzdHJpbmdMZWZ0SW5kZXgpICsgJy4uLicgKyBzdHIuc3Vic3RyaW5nKHN0cmluZ1JpZ2h0SW5kZXgsIHN0ci5sZW5ndGgpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBzdHI7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQGhpZGRlblxuICAgICAqXG4gICAgICogZGV0ZXJtaW5lcyBpZiBmaWxlIHRpdGxlIG5lZWRzIHRvIGJlIHRydW5jYXRlZCBnaXZlbiBjb250YWluZXIgY29uc3RyYWludC5cbiAgICAgKi9cbiAgICBwcml2YXRlIHJlc2l6ZUZpbGVUaXRsZSh0aXRsZVN0cjogc3RyaW5nKTogdm9pZCB7XG4gICAgICAgIGxldCBjdXJUaXRsZSA9IHRpdGxlU3RyO1xuICAgICAgICB0aGlzLmNvbnRhaW5lcldpZHRoID0gdGhpcy5nZXRDb250YWluZXJXaWR0aCgpO1xuICAgICAgICB0aGlzLnRpdGxlV2lkdGggPSB0aGlzLmdldFRpdGxlV2lkdGgoKTtcblxuICAgICAgICAvLyByZXBlYXRlZGx5IHRydW5jYXRlIHRoZSB0aXRsZSB1bnRpbCBpdCBmaXRzIGluc2lkZSBjb250YWluZXJcbiAgICAgICAgd2hpbGUgKHRoaXMudGl0bGVXaWR0aCAqIDEuMDUgPj0gdGhpcy5jb250YWluZXJXaWR0aCkge1xuICAgICAgICAgICAgY29uc3QgdHJ1bmNhdGVkVGl0bGVTdHIgPSB0aGlzLnRydW5jYXRlVGl0bGUoY3VyVGl0bGUpO1xuICAgICAgICAgICAgdGhpcy5fdGl0bGVEaXJlY3RpdmUuZWxSZWYubmF0aXZlRWxlbWVudC5pbm5lckhUTUwgPSB0cnVuY2F0ZWRUaXRsZVN0cjtcbiAgICAgICAgICAgIGN1clRpdGxlID0gdHJ1bmNhdGVkVGl0bGVTdHI7XG4gICAgICAgICAgICB0aGlzLnRpdGxlV2lkdGggPSB0aGlzLmdldFRpdGxlV2lkdGgoKTtcbiAgICAgICAgICAgIHRoaXMuY29udGFpbmVyV2lkdGggPSB0aGlzLmdldENvbnRhaW5lcldpZHRoKCk7XG4gICAgICAgIH1cbiAgICB9XG59XG4iXX0=
|
package/facets/package.json
CHANGED
package/feed-input/package.json
CHANGED
|
@@ -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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"}
|
|
@@ -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 {
|
|
@@ -315,7 +315,9 @@ class UploadCollectionItemDirective {
|
|
|
315
315
|
/** @hidden */
|
|
316
316
|
ngAfterContentInit() {
|
|
317
317
|
this.fileNameFull = this.fileName + '.' + this.extension;
|
|
318
|
-
this._titleDirective.elRef.nativeElement.
|
|
318
|
+
this._titleDirective.elRef.nativeElement.tabIndex = '0';
|
|
319
|
+
this._titleDirective.elRef.nativeElement.innerHTML =
|
|
320
|
+
'<span class="' + LINK_CLASS_NAME.linkContent + '">' + this.fileNameFull + '</span>';
|
|
319
321
|
this._handleDeleteClickedSubscription();
|
|
320
322
|
this._handleOkClickedSubscription();
|
|
321
323
|
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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"}
|
|
@@ -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
|