@allsorter/ui-components 0.0.384 → 0.0.386
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/fesm2022/allsorter-ui-components.mjs +47 -43
- package/fesm2022/allsorter-ui-components.mjs.map +1 -1
- package/lib/newresumeheader/newresumeheader.component.d.ts +0 -1
- package/lib/resume-header/resume-header.model.d.ts +4 -0
- package/lib/utils/image-utils.d.ts +1 -0
- package/package.json +1 -1
- package/src/lib/custom-editor/custom-editor.component.html +15 -14
- package/src/lib/custom-editor/custom-editor.component.scss +1 -1
- package/src/lib/newresumeheader/newresumeheader.component.html +2 -2
- package/src/lib/resume-entries/resume-entries.component.scss +4 -4
|
@@ -87,7 +87,6 @@ export declare class NewResumeHeaderComponent implements OnInit, OnDestroy, Afte
|
|
|
87
87
|
* @param btn - The HeaderButton configuration
|
|
88
88
|
* @returns The tooltip text or undefined
|
|
89
89
|
*/
|
|
90
|
-
getButtonTooltip(btn: HeaderButton): string | undefined;
|
|
91
90
|
onButtonClick(btn: HeaderButton, event: Event): void;
|
|
92
91
|
onDropdownSelect(btn: HeaderButton, value: any): void;
|
|
93
92
|
onTitleClick(): void;
|
|
@@ -32,6 +32,10 @@ export interface HeaderButton {
|
|
|
32
32
|
dataTestId: string;
|
|
33
33
|
hasDropDown: boolean;
|
|
34
34
|
dropdownItems?: DropdownOption[];
|
|
35
|
+
/** Optional tooltip text */
|
|
36
|
+
tooltip?: string;
|
|
37
|
+
/** Optional tooltip position */
|
|
38
|
+
tooltipPosition?: 'above' | 'below' | 'left' | 'right';
|
|
35
39
|
/** Optional custom onClick handler. If provided, this will be called instead of emitting buttonClicked */
|
|
36
40
|
onClick?: (event: Event) => void;
|
|
37
41
|
/** Optional function to determine if button should be displayed */
|
package/package.json
CHANGED
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
<div class="editor-container" #editorContainer>
|
|
7
7
|
<!-- Toolbar Section -->
|
|
8
8
|
<div class="toolbar">
|
|
9
|
-
|
|
9
|
+
<!-- Styling Dropdown (Small Screens Only) -->
|
|
10
10
|
<div class="styling-dropdown" *ngIf="isSmallScreen">
|
|
11
11
|
<span class="styling-text" (mouseenter)="showStylingDropdownOnHover()" (mouseleave)="hideStylingDropdown()">
|
|
12
12
|
Styling
|
|
@@ -15,7 +15,8 @@
|
|
|
15
15
|
<div class="styling-dropdown-content" *ngIf="showStylingDropdown" (mouseenter)="clearStylingDropdownTimeout()"
|
|
16
16
|
(mouseleave)="hideStylingDropdown()">
|
|
17
17
|
<button *ngFor="let item of toolbarConfig" class="format-button" [class.active]="getActiveState(item.type)"
|
|
18
|
-
(click)="execCmd($event, item.command)" [title]="item.title" type="button"
|
|
18
|
+
(click)="execCmd($event, item.command)" [title]="item.title" type="button" [matTooltip]="item.title"
|
|
19
|
+
matTooltipPosition="above">
|
|
19
20
|
<mat-icon *ngIf="isSvgIcon(item.icon)" [svgIcon]="item.icon"
|
|
20
21
|
[class.active-icon]="getActiveState(item.type)"></mat-icon>
|
|
21
22
|
<span *ngIf="!isSvgIcon(item.icon)" class="material-icons" [class.active-icon]="getActiveState(item.type)">
|
|
@@ -28,8 +29,8 @@
|
|
|
28
29
|
<!-- Individual Styling Buttons (Large Containers Only) -->
|
|
29
30
|
<ng-container *ngIf="!isSmallScreen">
|
|
30
31
|
<button *ngFor="let item of toolbarConfig" class="format-button" [class.active]="getActiveState(item.type)"
|
|
31
|
-
(click)="execCmd($event, item.command)" [title]="item.title" type="button"
|
|
32
|
-
|
|
32
|
+
(click)="execCmd($event, item.command)" [title]="item.title" type="button" [matTooltip]="item.title"
|
|
33
|
+
matTooltipPosition="above">
|
|
33
34
|
<mat-icon *ngIf="isSvgIcon(item.icon)" [svgIcon]="item.icon"
|
|
34
35
|
[class.active-icon]="getActiveState(item.type)"></mat-icon>
|
|
35
36
|
<span *ngIf="!isSvgIcon(item.icon)" class="material-icons" [class.active-icon]="getActiveState(item.type)">
|
|
@@ -65,14 +66,14 @@
|
|
|
65
66
|
</app-table>
|
|
66
67
|
|
|
67
68
|
<!-- Auto Bullet Button -->
|
|
68
|
-
<button *ngIf="autobullet" class="auto-bullet" mat-flat-button (click)="onAutoBullet.emit()"
|
|
69
|
+
<button *ngIf="autobullet" class="auto-bullet" mat-flat-button (click)="event.stopPropagation(); onAutoBullet.emit()"
|
|
69
70
|
[disabled]="autoBulletDisable || isLoadingAI || !checkHtmlContent('')">
|
|
70
71
|
{{ AutoBulletButton }}
|
|
71
72
|
</button>
|
|
72
73
|
|
|
73
74
|
<!-- Bullet Skill Button -->
|
|
74
75
|
<button *ngIf="skillsBullet" class="bullet-skill" mat-flat-button
|
|
75
|
-
(click)="transformToSkillsBullets($event)" [disabled]="isDisabled || isLoadingAI">
|
|
76
|
+
(click)="event.stopPropagation(); transformToSkillsBullets($event)" [disabled]="isDisabled || isLoadingAI">
|
|
76
77
|
{{ skillsButton }}
|
|
77
78
|
</button>
|
|
78
79
|
</div>
|
|
@@ -80,10 +81,9 @@
|
|
|
80
81
|
|
|
81
82
|
<!-- Individual Text Formatting Buttons (Large Containers Only) -->
|
|
82
83
|
<ng-container *ngIf="!isSmallScreen">
|
|
83
|
-
<button *ngFor="let item of textFormattingConfig" class="format-button"
|
|
84
|
-
[
|
|
85
|
-
|
|
86
|
-
[matTooltip]="item.title" matTooltipPosition="above">
|
|
84
|
+
<button *ngFor="let item of textFormattingConfig" class="format-button" [class.active]="getActiveState(item.type)"
|
|
85
|
+
(click)="handleTextFormattingClick($event, item)" [title]="item.title" type="button" [matTooltip]="item.title"
|
|
86
|
+
matTooltipPosition="above">
|
|
87
87
|
<mat-icon *ngIf="isSvgIcon(item.icon)" [svgIcon]="item.icon"
|
|
88
88
|
[class.active-icon]="getActiveState(item.type)"></mat-icon>
|
|
89
89
|
<span *ngIf="!isSvgIcon(item.icon)" class="material-icons" [class.active-icon]="getActiveState(item.type)">
|
|
@@ -100,13 +100,13 @@
|
|
|
100
100
|
|
|
101
101
|
<!-- Auto Bullet Button (Large Screens Only) -->
|
|
102
102
|
<button *ngIf="autobullet && !isSmallScreen" class="auto-bullet" mat-flat-button
|
|
103
|
-
(click)="onAutoBullet.emit()" [disabled]="autoBulletDisable || isLoadingAI || !checkHtmlContent('')">
|
|
103
|
+
(click)="event.stopPropagation(); onAutoBullet.emit()" [disabled]="autoBulletDisable || isLoadingAI || !checkHtmlContent('')">
|
|
104
104
|
{{ AutoBulletButton }}
|
|
105
105
|
</button>
|
|
106
106
|
|
|
107
107
|
<!-- Bullet Skill Button (Large Screens Only) -->
|
|
108
108
|
<button *ngIf="skillsBullet && !isSmallScreen" class="bullet-skill" mat-flat-button
|
|
109
|
-
(click)="transformToSkillsBullets($event)" [disabled]="isDisabled || isLoadingAI">
|
|
109
|
+
(click)="event.stopPropagation(); transformToSkillsBullets($event)" [disabled]="isDisabled || isLoadingAI">
|
|
110
110
|
{{ skillsButton }}
|
|
111
111
|
</button>
|
|
112
112
|
|
|
@@ -130,8 +130,9 @@
|
|
|
130
130
|
</div>
|
|
131
131
|
|
|
132
132
|
<!-- Apply AI Button -->
|
|
133
|
-
<al-button class="apply-ai-button" *ngIf="showAIButton" [labelText]="ApplyAiButton" [buttonType]="'icon-label'"
|
|
134
|
-
[disabled]="isLoadingAI" (onClick)="useAITool($event)"
|
|
133
|
+
<al-button class="apply-ai-button" *ngIf="showAIButton" [labelText]="ApplyAiButton" [buttonType]="'icon-label'"
|
|
134
|
+
[color]="'gradient'" [size]="'xs'" [disabled]="isLoadingAI" (onClick)="useAITool($event)"
|
|
135
|
+
[tooltip]="ApplyAiButton" [tooltipPosition]="'above'">
|
|
135
136
|
</al-button>
|
|
136
137
|
|
|
137
138
|
</div>
|
|
@@ -126,8 +126,8 @@
|
|
|
126
126
|
[size]="btn.size" [iconOutlined]="btn.iconOutlined" [labelText]="btn.labelText"
|
|
127
127
|
[leftIcon]="getButtonIcons(btn).leftIcon" [rightIcon]="getButtonIcons(btn).rightIcon"
|
|
128
128
|
[dataTestId]="btn.dataTestId" [hasDropDown]="btn.hasDropDown" [dropdownItems]="btn.dropdownItems"
|
|
129
|
-
[buttonType]="'icon-label'" [iconOnly]="!btn.labelText" [tooltip]="
|
|
130
|
-
[tooltipPosition]="'above'" (onClick)="onButtonClick(btn, $event)"
|
|
129
|
+
[buttonType]="'icon-label'" [iconOnly]="!btn.labelText" [tooltip]="btn.tooltip"
|
|
130
|
+
[tooltipPosition]="btn.tooltipPosition || 'above'" (onClick)="onButtonClick(btn, $event)"
|
|
131
131
|
(optionSelect)="onDropdownSelect(btn, $event)"></al-button></ng-container></ng-template><ng-template
|
|
132
132
|
#eyeIconTemplate let-isHidden="isHidden" let-accordionItem="accordionItem" let-configEyeToggle="configEyeToggle">
|
|
133
133
|
<div class="mat-checkbox-margin align-center"
|
|
@@ -94,9 +94,9 @@
|
|
|
94
94
|
min-height: calc(100% - 14px);
|
|
95
95
|
}
|
|
96
96
|
|
|
97
|
-
.resume-entry:last-child .timeline-line {
|
|
98
|
-
|
|
99
|
-
}
|
|
97
|
+
// .resume-entry:last-child .timeline-line {
|
|
98
|
+
// display: none;
|
|
99
|
+
// }
|
|
100
100
|
|
|
101
101
|
.entry-header {
|
|
102
102
|
display: flex;
|
|
@@ -480,4 +480,4 @@
|
|
|
480
480
|
}
|
|
481
481
|
}
|
|
482
482
|
}
|
|
483
|
-
}
|
|
483
|
+
}
|