@acorex/components 21.0.3-next.39 → 21.0.3-next.40
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/{conversation2 → conversation}/README.md +23 -23
- package/fesm2022/acorex-components-button.mjs +4 -4
- package/fesm2022/acorex-components-button.mjs.map +1 -1
- package/fesm2022/acorex-components-conversation-acorex-components-conversation-YhVa42TC.mjs +13711 -0
- package/fesm2022/acorex-components-conversation-acorex-components-conversation-YhVa42TC.mjs.map +1 -0
- package/fesm2022/acorex-components-conversation-audio-attachment.component-CLvS3W8F.mjs +119 -0
- package/fesm2022/acorex-components-conversation-audio-attachment.component-CLvS3W8F.mjs.map +1 -0
- package/fesm2022/acorex-components-conversation-audio-composer.payload-BHQJNyXz.mjs +59 -0
- package/fesm2022/acorex-components-conversation-audio-composer.payload-BHQJNyXz.mjs.map +1 -0
- package/fesm2022/acorex-components-conversation-audio-picker.component-BD_fN2Ip.mjs +432 -0
- package/fesm2022/acorex-components-conversation-audio-picker.component-BD_fN2Ip.mjs.map +1 -0
- package/fesm2022/acorex-components-conversation-audio-renderer.component-CcxVVprx.mjs +177 -0
- package/fesm2022/acorex-components-conversation-audio-renderer.component-CcxVVprx.mjs.map +1 -0
- package/fesm2022/acorex-components-conversation-audio.payload-Bag4aTut.mjs +54 -0
- package/fesm2022/acorex-components-conversation-audio.payload-Bag4aTut.mjs.map +1 -0
- package/fesm2022/acorex-components-conversation-composer-action-choice-dialog.component-C28hl7iD.mjs +101 -0
- package/fesm2022/acorex-components-conversation-composer-action-choice-dialog.component-C28hl7iD.mjs.map +1 -0
- package/fesm2022/acorex-components-conversation-conversation-audio.file-type-CfGSVnMA.mjs +100 -0
- package/fesm2022/acorex-components-conversation-conversation-audio.file-type-CfGSVnMA.mjs.map +1 -0
- package/fesm2022/acorex-components-conversation-conversation-file.file-type-DB-2xhaC.mjs +121 -0
- package/fesm2022/acorex-components-conversation-conversation-file.file-type-DB-2xhaC.mjs.map +1 -0
- package/fesm2022/acorex-components-conversation-conversation-image.file-type-C02OzZZB.mjs +84 -0
- package/fesm2022/acorex-components-conversation-conversation-image.file-type-C02OzZZB.mjs.map +1 -0
- package/fesm2022/acorex-components-conversation-conversation-info-media-view.component-Mhk7JE6K.mjs +238 -0
- package/fesm2022/acorex-components-conversation-conversation-info-media-view.component-Mhk7JE6K.mjs.map +1 -0
- package/fesm2022/acorex-components-conversation-conversation-info-panel.component-CNaM5ajR.mjs +1080 -0
- package/fesm2022/acorex-components-conversation-conversation-info-panel.component-CNaM5ajR.mjs.map +1 -0
- package/fesm2022/acorex-components-conversation-conversation-video.file-type-Pescv4Vu.mjs +102 -0
- package/fesm2022/acorex-components-conversation-conversation-video.file-type-Pescv4Vu.mjs.map +1 -0
- package/fesm2022/acorex-components-conversation-conversation-voice.file-type-DDd47o4r.mjs +90 -0
- package/fesm2022/acorex-components-conversation-conversation-voice.file-type-DDd47o4r.mjs.map +1 -0
- package/fesm2022/acorex-components-conversation-emoji-categories-C7Gm95V0.mjs +1840 -0
- package/fesm2022/acorex-components-conversation-emoji-categories-C7Gm95V0.mjs.map +1 -0
- package/fesm2022/acorex-components-conversation-fallback-renderer.component-CYh_6O6j.mjs +44 -0
- package/fesm2022/acorex-components-conversation-fallback-renderer.component-CYh_6O6j.mjs.map +1 -0
- package/fesm2022/acorex-components-conversation-file-composer.payload-Dy7aG-EH.mjs +64 -0
- package/fesm2022/acorex-components-conversation-file-composer.payload-Dy7aG-EH.mjs.map +1 -0
- package/fesm2022/acorex-components-conversation-file-picker.component-DCVgl33l.mjs +468 -0
- package/fesm2022/acorex-components-conversation-file-picker.component-DCVgl33l.mjs.map +1 -0
- package/fesm2022/acorex-components-conversation-file-renderer.component-DgCi06Mg.mjs +125 -0
- package/fesm2022/acorex-components-conversation-file-renderer.component-DgCi06Mg.mjs.map +1 -0
- package/fesm2022/acorex-components-conversation-file.payload-DyFxTQYn.mjs +50 -0
- package/fesm2022/acorex-components-conversation-file.payload-DyFxTQYn.mjs.map +1 -0
- package/fesm2022/acorex-components-conversation-format-media-DUD4vA6F.mjs +21 -0
- package/fesm2022/acorex-components-conversation-format-media-DUD4vA6F.mjs.map +1 -0
- package/fesm2022/acorex-components-conversation-image-attachment.component-CLMGxXPl.mjs +77 -0
- package/fesm2022/acorex-components-conversation-image-attachment.component-CLMGxXPl.mjs.map +1 -0
- package/fesm2022/acorex-components-conversation-image-picker.component-CS343UDa.mjs +407 -0
- package/fesm2022/acorex-components-conversation-image-picker.component-CS343UDa.mjs.map +1 -0
- package/fesm2022/acorex-components-conversation-image-renderer.component-Cy0TA6cL.mjs +83 -0
- package/fesm2022/acorex-components-conversation-image-renderer.component-Cy0TA6cL.mjs.map +1 -0
- package/fesm2022/acorex-components-conversation-index-3V2b14I0.mjs +184 -0
- package/fesm2022/acorex-components-conversation-index-3V2b14I0.mjs.map +1 -0
- package/fesm2022/acorex-components-conversation-index-MCvfr9Zd.mjs +266 -0
- package/fesm2022/acorex-components-conversation-index-MCvfr9Zd.mjs.map +1 -0
- package/fesm2022/acorex-components-conversation-location-picker.component-DcNQzuoU.mjs +149 -0
- package/fesm2022/acorex-components-conversation-location-picker.component-DcNQzuoU.mjs.map +1 -0
- package/fesm2022/acorex-components-conversation-location-renderer.component-Cw2PB0LM.mjs +118 -0
- package/fesm2022/acorex-components-conversation-location-renderer.component-Cw2PB0LM.mjs.map +1 -0
- package/fesm2022/acorex-components-conversation-media-formatters-DV3wEEno.mjs +17 -0
- package/fesm2022/acorex-components-conversation-media-formatters-DV3wEEno.mjs.map +1 -0
- package/fesm2022/acorex-components-conversation-media-playback-info-bar-banner.component-DbWUl6M2.mjs +140 -0
- package/fesm2022/acorex-components-conversation-media-playback-info-bar-banner.component-DbWUl6M2.mjs.map +1 -0
- package/fesm2022/acorex-components-conversation-message-renderer-copy-host.component-oXTr_Lfq.mjs +33 -0
- package/fesm2022/acorex-components-conversation-message-renderer-copy-host.component-oXTr_Lfq.mjs.map +1 -0
- package/fesm2022/acorex-components-conversation-message-renderer-state.component-Dp-JdHWr.mjs +172 -0
- package/fesm2022/acorex-components-conversation-message-renderer-state.component-Dp-JdHWr.mjs.map +1 -0
- package/fesm2022/acorex-components-conversation-open-composer-picker-for-files-Du8Lj9Sp.mjs +224 -0
- package/fesm2022/acorex-components-conversation-open-composer-picker-for-files-Du8Lj9Sp.mjs.map +1 -0
- package/fesm2022/acorex-components-conversation-pagination-demo-data-oIT_YJmN.mjs +81 -0
- package/fesm2022/acorex-components-conversation-pagination-demo-data-oIT_YJmN.mjs.map +1 -0
- package/fesm2022/acorex-components-conversation-picker-header.component-BneIFjXq.mjs +91 -0
- package/fesm2022/acorex-components-conversation-picker-header.component-BneIFjXq.mjs.map +1 -0
- package/fesm2022/acorex-components-conversation-picker-toolbar.component-BthRvEeE.mjs +537 -0
- package/fesm2022/acorex-components-conversation-picker-toolbar.component-BthRvEeE.mjs.map +1 -0
- package/fesm2022/acorex-components-conversation-picker-upload-C-PlKPaU.mjs +163 -0
- package/fesm2022/acorex-components-conversation-picker-upload-C-PlKPaU.mjs.map +1 -0
- package/fesm2022/acorex-components-conversation-playback-banner-sync-D8FFKde6.mjs +68 -0
- package/fesm2022/acorex-components-conversation-playback-banner-sync-D8FFKde6.mjs.map +1 -0
- package/fesm2022/acorex-components-conversation-renderer-shared.styles-Digah3Zn.mjs +95 -0
- package/fesm2022/acorex-components-conversation-renderer-shared.styles-Digah3Zn.mjs.map +1 -0
- package/fesm2022/acorex-components-conversation-search.component-B-nc6xiA.mjs +187 -0
- package/fesm2022/acorex-components-conversation-search.component-B-nc6xiA.mjs.map +1 -0
- package/fesm2022/acorex-components-conversation-send-message-media-BRklgfV7.mjs +170 -0
- package/fesm2022/acorex-components-conversation-send-message-media-BRklgfV7.mjs.map +1 -0
- package/fesm2022/acorex-components-conversation-shared-storage.seed-J9PA4l3c.mjs +750 -0
- package/fesm2022/acorex-components-conversation-shared-storage.seed-J9PA4l3c.mjs.map +1 -0
- package/fesm2022/acorex-components-conversation-sticker-renderer.component-BmBwy7Ig.mjs +103 -0
- package/fesm2022/acorex-components-conversation-sticker-renderer.component-BmBwy7Ig.mjs.map +1 -0
- package/fesm2022/acorex-components-conversation-system-renderer.component-uie3tm5N.mjs +55 -0
- package/fesm2022/acorex-components-conversation-system-renderer.component-uie3tm5N.mjs.map +1 -0
- package/fesm2022/acorex-components-conversation-text-renderer.component-DNAquHYK.mjs +109 -0
- package/fesm2022/acorex-components-conversation-text-renderer.component-DNAquHYK.mjs.map +1 -0
- package/fesm2022/acorex-components-conversation-video-attachment.component-CGaUhnSb.mjs +105 -0
- package/fesm2022/acorex-components-conversation-video-attachment.component-CGaUhnSb.mjs.map +1 -0
- package/fesm2022/acorex-components-conversation-video-composer.payload-DMqRkafr.mjs +62 -0
- package/fesm2022/acorex-components-conversation-video-composer.payload-DMqRkafr.mjs.map +1 -0
- package/fesm2022/acorex-components-conversation-video-picker.component-DPwSBnoH.mjs +446 -0
- package/fesm2022/acorex-components-conversation-video-picker.component-DPwSBnoH.mjs.map +1 -0
- package/fesm2022/acorex-components-conversation-video-renderer.component-DKa9mUe2.mjs +181 -0
- package/fesm2022/acorex-components-conversation-video-renderer.component-DKa9mUe2.mjs.map +1 -0
- package/fesm2022/acorex-components-conversation-video.payload-C8QaqxuX.mjs +54 -0
- package/fesm2022/acorex-components-conversation-video.payload-C8QaqxuX.mjs.map +1 -0
- package/fesm2022/acorex-components-conversation-voice-composer.payload-DLVow7ex.mjs +17 -0
- package/fesm2022/acorex-components-conversation-voice-composer.payload-DLVow7ex.mjs.map +1 -0
- package/fesm2022/acorex-components-conversation-voice-recorder.component-D_rdANZN.mjs +344 -0
- package/fesm2022/acorex-components-conversation-voice-recorder.component-D_rdANZN.mjs.map +1 -0
- package/fesm2022/acorex-components-conversation-voice-renderer.component-BY5FJcT8.mjs +270 -0
- package/fesm2022/acorex-components-conversation-voice-renderer.component-BY5FJcT8.mjs.map +1 -0
- package/fesm2022/acorex-components-conversation.mjs +2 -0
- package/fesm2022/acorex-components-conversation.mjs.map +1 -0
- package/fesm2022/acorex-components-kbd.mjs +2 -2
- package/fesm2022/acorex-components-kbd.mjs.map +1 -1
- package/fesm2022/acorex-components-scheduler-picker.mjs +22 -14
- package/fesm2022/acorex-components-scheduler-picker.mjs.map +1 -1
- package/fesm2022/acorex-components-side-menu.mjs +4 -13
- package/fesm2022/acorex-components-side-menu.mjs.map +1 -1
- package/fesm2022/acorex-components-tree-view.mjs +2 -2
- package/fesm2022/acorex-components-tree-view.mjs.map +1 -1
- package/package.json +6 -10
- package/types/{acorex-components-conversation2.d.ts → acorex-components-conversation.d.ts} +1127 -1928
- package/types/acorex-components-scheduler-picker.d.ts +2 -0
- package/types/acorex-components-side-menu.d.ts +1 -3
- package/fesm2022/acorex-components-conversation2.mjs +0 -22347
- package/fesm2022/acorex-components-conversation2.mjs.map +0 -1
- package/fesm2022/acorex-components-sidebar.mjs +0 -275
- package/fesm2022/acorex-components-sidebar.mjs.map +0 -1
- package/sidebar/README.md +0 -5
- package/types/acorex-components-sidebar.d.ts +0 -132
|
@@ -0,0 +1,537 @@
|
|
|
1
|
+
import * as i1 from '@acorex/components/text-box';
|
|
2
|
+
import { AXTextBoxModule } from '@acorex/components/text-box';
|
|
3
|
+
import { AXTranslationService, AXTranslationModule } from '@acorex/core/translation';
|
|
4
|
+
import * as i0 from '@angular/core';
|
|
5
|
+
import { inject, model, ChangeDetectionStrategy, Component, ElementRef, input, output } from '@angular/core';
|
|
6
|
+
import { FormsModule } from '@angular/forms';
|
|
7
|
+
import { AXUploaderBrowseDirective, AXUploaderZoneDirective } from '@acorex/cdk/uploader';
|
|
8
|
+
import { AXToastService } from '@acorex/components/toast';
|
|
9
|
+
import { n as notifyPickerValidationErrors } from './acorex-components-conversation-picker-upload-C-PlKPaU.mjs';
|
|
10
|
+
import { AXButtonComponent } from '@acorex/components/button';
|
|
11
|
+
import * as i1$1 from '@acorex/components/decorators';
|
|
12
|
+
import { AXDecoratorModule } from '@acorex/components/decorators';
|
|
13
|
+
|
|
14
|
+
/** Optional caption field shared by composer media pickers. */
|
|
15
|
+
class AXConversationPickerCaptionComponent {
|
|
16
|
+
constructor() {
|
|
17
|
+
this.translation = inject(AXTranslationService);
|
|
18
|
+
this.caption = model('', ...(ngDevMode ? [{ debugName: "caption" }] : /* istanbul ignore next */ []));
|
|
19
|
+
}
|
|
20
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXConversationPickerCaptionComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
21
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "21.2.9", type: AXConversationPickerCaptionComponent, isStandalone: true, selector: "ax-conversation-picker-caption", inputs: { caption: { classPropertyName: "caption", publicName: "caption", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { caption: "captionChange" }, ngImport: i0, template: `
|
|
22
|
+
<div class="ax-conversation-picker__caption-slot">
|
|
23
|
+
<ax-text-box
|
|
24
|
+
[(value)]="caption"
|
|
25
|
+
[placeholder]="translation.translateSync('@acorex:chat.pickers.common.caption-optional')"
|
|
26
|
+
/>
|
|
27
|
+
</div>
|
|
28
|
+
`, isInline: true, styles: [":host{display:block;flex-shrink:0;width:100%}.ax-conversation-picker__caption-slot{padding:.5rem}\n"], dependencies: [{ kind: "ngmodule", type: AXTextBoxModule }, { kind: "component", type: i1.AXTextBoxComponent, selector: "ax-text-box", inputs: ["disabled", "tabIndex", "readonly", "value", "state", "name", "id", "placeholder", "maxLength", "allowNull", "type", "autoComplete", "look", "maskPattern", "customTokens", "class"], outputs: ["onBlur", "onFocus", "valueChange", "stateChange", "onValueChanged", "readonlyChange", "disabledChange", "onKeyDown", "onKeyUp", "onKeyPress", "onMaskChanged"] }, { kind: "ngmodule", type: AXTranslationModule }, { kind: "ngmodule", type: FormsModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
29
|
+
}
|
|
30
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXConversationPickerCaptionComponent, decorators: [{
|
|
31
|
+
type: Component,
|
|
32
|
+
args: [{ selector: 'ax-conversation-picker-caption', imports: [AXTextBoxModule, AXTranslationModule, FormsModule], changeDetection: ChangeDetectionStrategy.OnPush, template: `
|
|
33
|
+
<div class="ax-conversation-picker__caption-slot">
|
|
34
|
+
<ax-text-box
|
|
35
|
+
[(value)]="caption"
|
|
36
|
+
[placeholder]="translation.translateSync('@acorex:chat.pickers.common.caption-optional')"
|
|
37
|
+
/>
|
|
38
|
+
</div>
|
|
39
|
+
`, styles: [":host{display:block;flex-shrink:0;width:100%}.ax-conversation-picker__caption-slot{padding:.5rem}\n"] }]
|
|
40
|
+
}], propDecorators: { caption: [{ type: i0.Input, args: [{ isSignal: true, alias: "caption", required: false }] }, { type: i0.Output, args: ["captionChange"] }] } });
|
|
41
|
+
|
|
42
|
+
/**
|
|
43
|
+
* Shell flex + max-height (on {@link AXConversationPickerShellComponent}).
|
|
44
|
+
* Styles here target projected content inside the shell.
|
|
45
|
+
*/
|
|
46
|
+
const AX_CONVERSATION_PICKER_SHELL_STYLES = `
|
|
47
|
+
:host {
|
|
48
|
+
display: block;
|
|
49
|
+
width: 100%;
|
|
50
|
+
max-width: 100%;
|
|
51
|
+
min-height: 0;
|
|
52
|
+
container-type: inline-size;
|
|
53
|
+
container-name: picker;
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
.ax-conversation-picker {
|
|
57
|
+
display: flex;
|
|
58
|
+
flex-direction: column;
|
|
59
|
+
width: 100%;
|
|
60
|
+
max-width: 100%;
|
|
61
|
+
max-height: min(32rem, 85dvh);
|
|
62
|
+
background: rgb(var(--ax-sys-color-lightest-surface));
|
|
63
|
+
border-radius: var(--ax-sys-border-radius, 0.5rem);
|
|
64
|
+
overflow: hidden;
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
.ax-conversation-picker__content {
|
|
68
|
+
display: flex;
|
|
69
|
+
flex: 1;
|
|
70
|
+
flex-direction: column;
|
|
71
|
+
min-height: 0;
|
|
72
|
+
overflow: hidden;
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
@container picker (max-width: 480px) {
|
|
76
|
+
.ax-conversation-picker {
|
|
77
|
+
max-height: min(28rem, 90dvh);
|
|
78
|
+
border-radius: 0;
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
`;
|
|
82
|
+
/**
|
|
83
|
+
* Shared layout and surface styles for composer media pickers.
|
|
84
|
+
* Uses ACoreX system color tokens only.
|
|
85
|
+
*/
|
|
86
|
+
const AX_CONVERSATION_PICKER_SHARED_STYLES = `
|
|
87
|
+
:host {
|
|
88
|
+
display: block;
|
|
89
|
+
width: 100%;
|
|
90
|
+
max-width: 100%;
|
|
91
|
+
min-height: 0;
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
.ax-conversation-picker__scroll {
|
|
95
|
+
flex: 1;
|
|
96
|
+
min-height: 0;
|
|
97
|
+
overflow-y: auto;
|
|
98
|
+
overscroll-behavior: contain;
|
|
99
|
+
-webkit-overflow-scrolling: touch;
|
|
100
|
+
}
|
|
101
|
+
|
|
102
|
+
.ax-conversation-picker__empty {
|
|
103
|
+
display: flex;
|
|
104
|
+
flex-direction: column;
|
|
105
|
+
align-items: center;
|
|
106
|
+
justify-content: center;
|
|
107
|
+
gap: 0.375rem;
|
|
108
|
+
min-height: 8.5rem;
|
|
109
|
+
margin: 0.75rem;
|
|
110
|
+
padding: 1rem 0.75rem;
|
|
111
|
+
border: 1px dashed rgb(var(--ax-sys-color-border-surface));
|
|
112
|
+
border-radius: var(--ax-sys-border-radius, 0.5rem);
|
|
113
|
+
cursor: pointer;
|
|
114
|
+
transition: border-color 0.15s ease, background-color 0.15s ease;
|
|
115
|
+
text-align: center;
|
|
116
|
+
touch-action: manipulation;
|
|
117
|
+
}
|
|
118
|
+
|
|
119
|
+
.ax-conversation-picker__empty:hover,
|
|
120
|
+
.ax-conversation-picker__empty--drag {
|
|
121
|
+
border-color: rgb(var(--ax-sys-color-primary-500));
|
|
122
|
+
background: rgba(var(--ax-sys-color-primary-500), 0.06);
|
|
123
|
+
}
|
|
124
|
+
|
|
125
|
+
.ax-conversation-picker__empty-icon {
|
|
126
|
+
font-size: 1.75rem;
|
|
127
|
+
line-height: 1;
|
|
128
|
+
color: rgba(var(--ax-sys-color-on-surface), 0.55);
|
|
129
|
+
}
|
|
130
|
+
|
|
131
|
+
.ax-conversation-picker__empty-title {
|
|
132
|
+
margin: 0;
|
|
133
|
+
font-size: 0.8125rem;
|
|
134
|
+
font-weight: 600;
|
|
135
|
+
color: rgb(var(--ax-sys-color-on-surface));
|
|
136
|
+
}
|
|
137
|
+
|
|
138
|
+
.ax-conversation-picker__empty-hint {
|
|
139
|
+
margin: 0;
|
|
140
|
+
font-size: 0.75rem;
|
|
141
|
+
color: rgba(var(--ax-sys-color-on-surface), 0.6);
|
|
142
|
+
}
|
|
143
|
+
|
|
144
|
+
.ax-conversation-picker__body {
|
|
145
|
+
padding: 0 0.75rem 0.75rem;
|
|
146
|
+
}
|
|
147
|
+
|
|
148
|
+
.ax-conversation-picker__list {
|
|
149
|
+
display: flex;
|
|
150
|
+
flex-direction: column;
|
|
151
|
+
gap: 0.5rem;
|
|
152
|
+
padding-top: 0.5rem;
|
|
153
|
+
}
|
|
154
|
+
|
|
155
|
+
.ax-conversation-picker__row {
|
|
156
|
+
display: flex;
|
|
157
|
+
align-items: center;
|
|
158
|
+
gap: 0.625rem;
|
|
159
|
+
padding: 0.5rem 0.625rem;
|
|
160
|
+
border: 1px solid rgb(var(--ax-sys-color-border-light-surface));
|
|
161
|
+
border-radius: var(--ax-sys-border-radius, 0.375rem);
|
|
162
|
+
background: rgb(var(--ax-sys-color-surface));
|
|
163
|
+
transition: background-color 0.15s ease;
|
|
164
|
+
}
|
|
165
|
+
|
|
166
|
+
@media (hover: hover) {
|
|
167
|
+
.ax-conversation-picker__row:hover {
|
|
168
|
+
background: rgb(var(--ax-sys-color-light-surface));
|
|
169
|
+
}
|
|
170
|
+
}
|
|
171
|
+
|
|
172
|
+
.ax-conversation-picker__thumb {
|
|
173
|
+
position: relative;
|
|
174
|
+
display: flex;
|
|
175
|
+
align-items: center;
|
|
176
|
+
justify-content: center;
|
|
177
|
+
width: 2.5rem;
|
|
178
|
+
height: 2.5rem;
|
|
179
|
+
flex-shrink: 0;
|
|
180
|
+
border-radius: var(--ax-sys-border-radius, 0.375rem);
|
|
181
|
+
background: rgba(var(--ax-sys-color-primary-500), 0.08);
|
|
182
|
+
color: rgb(var(--ax-sys-color-primary-500));
|
|
183
|
+
font-size: 1.125rem;
|
|
184
|
+
overflow: hidden;
|
|
185
|
+
}
|
|
186
|
+
|
|
187
|
+
.ax-conversation-picker__thumb img,
|
|
188
|
+
.ax-conversation-picker__thumb video {
|
|
189
|
+
width: 100%;
|
|
190
|
+
height: 100%;
|
|
191
|
+
object-fit: cover;
|
|
192
|
+
display: block;
|
|
193
|
+
pointer-events: none;
|
|
194
|
+
}
|
|
195
|
+
|
|
196
|
+
.ax-conversation-picker__thumb-badge {
|
|
197
|
+
position: absolute;
|
|
198
|
+
inset: 0;
|
|
199
|
+
display: flex;
|
|
200
|
+
align-items: center;
|
|
201
|
+
justify-content: center;
|
|
202
|
+
background: rgb(0 0 0 / 0.32);
|
|
203
|
+
color: rgb(var(--ax-sys-color-light));
|
|
204
|
+
font-size: 0.625rem;
|
|
205
|
+
pointer-events: none;
|
|
206
|
+
}
|
|
207
|
+
|
|
208
|
+
.ax-conversation-picker__details {
|
|
209
|
+
flex: 1;
|
|
210
|
+
min-width: 0;
|
|
211
|
+
display: flex;
|
|
212
|
+
flex-direction: column;
|
|
213
|
+
gap: 0.125rem;
|
|
214
|
+
}
|
|
215
|
+
|
|
216
|
+
.ax-conversation-picker__name {
|
|
217
|
+
font-size: 0.8125rem;
|
|
218
|
+
font-weight: 500;
|
|
219
|
+
color: rgb(var(--ax-sys-color-on-surface));
|
|
220
|
+
overflow: hidden;
|
|
221
|
+
text-overflow: ellipsis;
|
|
222
|
+
white-space: nowrap;
|
|
223
|
+
}
|
|
224
|
+
|
|
225
|
+
.ax-conversation-picker__status {
|
|
226
|
+
display: flex;
|
|
227
|
+
flex-wrap: wrap;
|
|
228
|
+
gap: 0.375rem;
|
|
229
|
+
font-size: 0.6875rem;
|
|
230
|
+
color: rgba(var(--ax-sys-color-on-surface), 0.65);
|
|
231
|
+
}
|
|
232
|
+
|
|
233
|
+
.ax-conversation-picker__status--ok {
|
|
234
|
+
color: rgb(var(--ax-sys-color-success-600));
|
|
235
|
+
font-weight: 500;
|
|
236
|
+
}
|
|
237
|
+
|
|
238
|
+
.ax-conversation-picker__status--err {
|
|
239
|
+
color: rgb(var(--ax-sys-color-danger-600));
|
|
240
|
+
font-weight: 500;
|
|
241
|
+
}
|
|
242
|
+
|
|
243
|
+
.ax-conversation-picker__progress {
|
|
244
|
+
width: 100%;
|
|
245
|
+
margin-top: 0.125rem;
|
|
246
|
+
}
|
|
247
|
+
|
|
248
|
+
.ax-conversation-picker__remove {
|
|
249
|
+
display: flex;
|
|
250
|
+
align-items: center;
|
|
251
|
+
justify-content: center;
|
|
252
|
+
width: 2.75rem;
|
|
253
|
+
height: 2.75rem;
|
|
254
|
+
flex-shrink: 0;
|
|
255
|
+
border: none;
|
|
256
|
+
border-radius: var(--ax-sys-border-radius, 0.25rem);
|
|
257
|
+
background: transparent;
|
|
258
|
+
color: rgba(var(--ax-sys-color-on-surface), 0.55);
|
|
259
|
+
font-size: 1rem;
|
|
260
|
+
cursor: pointer;
|
|
261
|
+
touch-action: manipulation;
|
|
262
|
+
transition: background-color 0.15s ease, color 0.15s ease;
|
|
263
|
+
}
|
|
264
|
+
|
|
265
|
+
.ax-conversation-picker__remove:hover,
|
|
266
|
+
.ax-conversation-picker__remove:focus-visible {
|
|
267
|
+
background: rgba(var(--ax-sys-color-danger-500), 0.1);
|
|
268
|
+
color: rgb(var(--ax-sys-color-danger-500));
|
|
269
|
+
outline: none;
|
|
270
|
+
}
|
|
271
|
+
|
|
272
|
+
.ax-conversation-picker__grid {
|
|
273
|
+
display: grid;
|
|
274
|
+
grid-template-columns: repeat(auto-fill, minmax(5.25rem, 1fr));
|
|
275
|
+
gap: 0.5rem;
|
|
276
|
+
}
|
|
277
|
+
|
|
278
|
+
.ax-conversation-picker__tile {
|
|
279
|
+
position: relative;
|
|
280
|
+
aspect-ratio: 1;
|
|
281
|
+
border-radius: var(--ax-sys-border-radius, 0.375rem);
|
|
282
|
+
overflow: hidden;
|
|
283
|
+
border: 1px solid rgb(var(--ax-sys-color-border-light-surface));
|
|
284
|
+
background: rgb(var(--ax-sys-color-light-surface));
|
|
285
|
+
}
|
|
286
|
+
|
|
287
|
+
.ax-conversation-picker__tile img {
|
|
288
|
+
width: 100%;
|
|
289
|
+
height: 100%;
|
|
290
|
+
object-fit: cover;
|
|
291
|
+
display: block;
|
|
292
|
+
}
|
|
293
|
+
|
|
294
|
+
.ax-conversation-picker__tile-remove {
|
|
295
|
+
position: absolute;
|
|
296
|
+
top: 0.25rem;
|
|
297
|
+
inset-inline-end: 0.25rem;
|
|
298
|
+
z-index: 2;
|
|
299
|
+
display: flex;
|
|
300
|
+
align-items: center;
|
|
301
|
+
justify-content: center;
|
|
302
|
+
width: 1.75rem;
|
|
303
|
+
height: 1.75rem;
|
|
304
|
+
border: none;
|
|
305
|
+
border-radius: 50%;
|
|
306
|
+
background: rgb(var(--ax-sys-color-danger-500));
|
|
307
|
+
color: rgb(var(--ax-sys-color-light));
|
|
308
|
+
font-size: 0.6875rem;
|
|
309
|
+
cursor: pointer;
|
|
310
|
+
touch-action: manipulation;
|
|
311
|
+
box-shadow: 0 1px 3px rgb(0 0 0 / 0.2);
|
|
312
|
+
}
|
|
313
|
+
|
|
314
|
+
.ax-conversation-picker__tile-overlay {
|
|
315
|
+
position: absolute;
|
|
316
|
+
inset-inline: 0;
|
|
317
|
+
bottom: 0;
|
|
318
|
+
padding: 0.25rem;
|
|
319
|
+
background: linear-gradient(transparent, rgb(0 0 0 / 0.55));
|
|
320
|
+
}
|
|
321
|
+
|
|
322
|
+
.ax-conversation-picker__tile-status {
|
|
323
|
+
font-size: 0.625rem;
|
|
324
|
+
color: rgb(var(--ax-sys-color-light));
|
|
325
|
+
line-height: 1.2;
|
|
326
|
+
}
|
|
327
|
+
|
|
328
|
+
.ax-conversation-picker__caption-slot {
|
|
329
|
+
flex-shrink: 0;
|
|
330
|
+
padding: 0.5rem 0.75rem;
|
|
331
|
+
border-top: 1px solid rgb(var(--ax-sys-color-border-light-surface));
|
|
332
|
+
background: rgb(var(--ax-sys-color-lightest-surface));
|
|
333
|
+
}
|
|
334
|
+
|
|
335
|
+
.ax-conversation-picker__input-hidden {
|
|
336
|
+
display: none;
|
|
337
|
+
}
|
|
338
|
+
|
|
339
|
+
@container picker (max-width: 480px) {
|
|
340
|
+
.ax-conversation-picker__grid {
|
|
341
|
+
grid-template-columns: repeat(3, minmax(0, 1fr));
|
|
342
|
+
gap: 0.375rem;
|
|
343
|
+
}
|
|
344
|
+
|
|
345
|
+
.ax-conversation-picker__row {
|
|
346
|
+
padding: 0.4375rem 0.5rem;
|
|
347
|
+
gap: 0.5rem;
|
|
348
|
+
}
|
|
349
|
+
|
|
350
|
+
.ax-conversation-picker__thumb {
|
|
351
|
+
width: 2.25rem;
|
|
352
|
+
height: 2.25rem;
|
|
353
|
+
}
|
|
354
|
+
|
|
355
|
+
.ax-conversation-picker__empty {
|
|
356
|
+
min-height: 7.5rem;
|
|
357
|
+
margin: 0.5rem;
|
|
358
|
+
}
|
|
359
|
+
|
|
360
|
+
.ax-conversation-picker__body {
|
|
361
|
+
padding-inline: 0.5rem;
|
|
362
|
+
padding-bottom: 0.5rem;
|
|
363
|
+
}
|
|
364
|
+
}
|
|
365
|
+
`;
|
|
366
|
+
|
|
367
|
+
class AXConversationPickerEmptyComponent {
|
|
368
|
+
constructor() {
|
|
369
|
+
this.host = inject((ElementRef));
|
|
370
|
+
this.title = input.required(...(ngDevMode ? [{ debugName: "title" }] : /* istanbul ignore next */ []));
|
|
371
|
+
this.hint = input.required(...(ngDevMode ? [{ debugName: "hint" }] : /* istanbul ignore next */ []));
|
|
372
|
+
this.iconClass = input.required(...(ngDevMode ? [{ debugName: "iconClass" }] : /* istanbul ignore next */ []));
|
|
373
|
+
this.dragOver = input(false, ...(ngDevMode ? [{ debugName: "dragOver" }] : /* istanbul ignore next */ []));
|
|
374
|
+
}
|
|
375
|
+
onKeyboardActivate(event) {
|
|
376
|
+
event.preventDefault();
|
|
377
|
+
this.host.nativeElement.click();
|
|
378
|
+
}
|
|
379
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXConversationPickerEmptyComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
380
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "21.2.9", type: AXConversationPickerEmptyComponent, isStandalone: true, selector: "ax-conversation-picker-empty", inputs: { title: { classPropertyName: "title", publicName: "title", isSignal: true, isRequired: true, transformFunction: null }, hint: { classPropertyName: "hint", publicName: "hint", isSignal: true, isRequired: true, transformFunction: null }, iconClass: { classPropertyName: "iconClass", publicName: "iconClass", isSignal: true, isRequired: true, transformFunction: null }, dragOver: { classPropertyName: "dragOver", publicName: "dragOver", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: `
|
|
381
|
+
<div
|
|
382
|
+
class="ax-conversation-picker__empty"
|
|
383
|
+
[class.ax-conversation-picker__empty--drag]="dragOver()"
|
|
384
|
+
role="button"
|
|
385
|
+
tabindex="0"
|
|
386
|
+
axUploaderBrowseHandle
|
|
387
|
+
(keydown.enter)="onKeyboardActivate($event)"
|
|
388
|
+
(keydown.space)="onKeyboardActivate($event)"
|
|
389
|
+
>
|
|
390
|
+
<i class="ax-conversation-picker__empty-icon" [class]="iconClass()"></i>
|
|
391
|
+
<p class="ax-conversation-picker__empty-title">{{ title() }}</p>
|
|
392
|
+
<p class="ax-conversation-picker__empty-hint">{{ hint() }}</p>
|
|
393
|
+
</div>
|
|
394
|
+
`, isInline: true, styles: [":host{display:block;width:100%;max-width:100%;min-height:0}.ax-conversation-picker__scroll{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.ax-conversation-picker__empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.375rem;min-height:8.5rem;margin:.75rem;padding:1rem .75rem;border:1px dashed rgb(var(--ax-sys-color-border-surface));border-radius:var(--ax-sys-border-radius, .5rem);cursor:pointer;transition:border-color .15s ease,background-color .15s ease;text-align:center;touch-action:manipulation}.ax-conversation-picker__empty:hover,.ax-conversation-picker__empty--drag{border-color:rgb(var(--ax-sys-color-primary-500));background:rgba(var(--ax-sys-color-primary-500),.06)}.ax-conversation-picker__empty-icon{font-size:1.75rem;line-height:1;color:rgba(var(--ax-sys-color-on-surface),.55)}.ax-conversation-picker__empty-title{margin:0;font-size:.8125rem;font-weight:600;color:rgb(var(--ax-sys-color-on-surface))}.ax-conversation-picker__empty-hint{margin:0;font-size:.75rem;color:rgba(var(--ax-sys-color-on-surface),.6)}.ax-conversation-picker__body{padding:0 .75rem .75rem}.ax-conversation-picker__list{display:flex;flex-direction:column;gap:.5rem;padding-top:.5rem}.ax-conversation-picker__row{display:flex;align-items:center;gap:.625rem;padding:.5rem .625rem;border:1px solid rgb(var(--ax-sys-color-border-light-surface));border-radius:var(--ax-sys-border-radius, .375rem);background:rgb(var(--ax-sys-color-surface));transition:background-color .15s ease}@media(hover:hover){.ax-conversation-picker__row:hover{background:rgb(var(--ax-sys-color-light-surface))}}.ax-conversation-picker__thumb{position:relative;display:flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;flex-shrink:0;border-radius:var(--ax-sys-border-radius, .375rem);background:rgba(var(--ax-sys-color-primary-500),.08);color:rgb(var(--ax-sys-color-primary-500));font-size:1.125rem;overflow:hidden}.ax-conversation-picker__thumb img,.ax-conversation-picker__thumb video{width:100%;height:100%;object-fit:cover;display:block;pointer-events:none}.ax-conversation-picker__thumb-badge{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:#00000052;color:rgb(var(--ax-sys-color-light));font-size:.625rem;pointer-events:none}.ax-conversation-picker__details{flex:1;min-width:0;display:flex;flex-direction:column;gap:.125rem}.ax-conversation-picker__name{font-size:.8125rem;font-weight:500;color:rgb(var(--ax-sys-color-on-surface));overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ax-conversation-picker__status{display:flex;flex-wrap:wrap;gap:.375rem;font-size:.6875rem;color:rgba(var(--ax-sys-color-on-surface),.65)}.ax-conversation-picker__status--ok{color:rgb(var(--ax-sys-color-success-600));font-weight:500}.ax-conversation-picker__status--err{color:rgb(var(--ax-sys-color-danger-600));font-weight:500}.ax-conversation-picker__progress{width:100%;margin-top:.125rem}.ax-conversation-picker__remove{display:flex;align-items:center;justify-content:center;width:2.75rem;height:2.75rem;flex-shrink:0;border:none;border-radius:var(--ax-sys-border-radius, .25rem);background:transparent;color:rgba(var(--ax-sys-color-on-surface),.55);font-size:1rem;cursor:pointer;touch-action:manipulation;transition:background-color .15s ease,color .15s ease}.ax-conversation-picker__remove:hover,.ax-conversation-picker__remove:focus-visible{background:rgba(var(--ax-sys-color-danger-500),.1);color:rgb(var(--ax-sys-color-danger-500));outline:none}.ax-conversation-picker__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(5.25rem,1fr));gap:.5rem}.ax-conversation-picker__tile{position:relative;aspect-ratio:1;border-radius:var(--ax-sys-border-radius, .375rem);overflow:hidden;border:1px solid rgb(var(--ax-sys-color-border-light-surface));background:rgb(var(--ax-sys-color-light-surface))}.ax-conversation-picker__tile img{width:100%;height:100%;object-fit:cover;display:block}.ax-conversation-picker__tile-remove{position:absolute;top:.25rem;inset-inline-end:.25rem;z-index:2;display:flex;align-items:center;justify-content:center;width:1.75rem;height:1.75rem;border:none;border-radius:50%;background:rgb(var(--ax-sys-color-danger-500));color:rgb(var(--ax-sys-color-light));font-size:.6875rem;cursor:pointer;touch-action:manipulation;box-shadow:0 1px 3px #0003}.ax-conversation-picker__tile-overlay{position:absolute;inset-inline:0;bottom:0;padding:.25rem;background:linear-gradient(transparent,#0000008c)}.ax-conversation-picker__tile-status{font-size:.625rem;color:rgb(var(--ax-sys-color-light));line-height:1.2}.ax-conversation-picker__caption-slot{flex-shrink:0;padding:.5rem .75rem;border-top:1px solid rgb(var(--ax-sys-color-border-light-surface));background:rgb(var(--ax-sys-color-lightest-surface))}.ax-conversation-picker__input-hidden{display:none}@container picker (max-width: 480px){.ax-conversation-picker__grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.375rem}.ax-conversation-picker__row{padding:.4375rem .5rem;gap:.5rem}.ax-conversation-picker__thumb{width:2.25rem;height:2.25rem}.ax-conversation-picker__empty{min-height:7.5rem;margin:.5rem}.ax-conversation-picker__body{padding-inline:.5rem;padding-bottom:.5rem}}\n"], dependencies: [{ kind: "directive", type: AXUploaderBrowseDirective, selector: "[axUploaderBrowseHandle]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
395
|
+
}
|
|
396
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXConversationPickerEmptyComponent, decorators: [{
|
|
397
|
+
type: Component,
|
|
398
|
+
args: [{ selector: 'ax-conversation-picker-empty', changeDetection: ChangeDetectionStrategy.OnPush, imports: [AXUploaderBrowseDirective], template: `
|
|
399
|
+
<div
|
|
400
|
+
class="ax-conversation-picker__empty"
|
|
401
|
+
[class.ax-conversation-picker__empty--drag]="dragOver()"
|
|
402
|
+
role="button"
|
|
403
|
+
tabindex="0"
|
|
404
|
+
axUploaderBrowseHandle
|
|
405
|
+
(keydown.enter)="onKeyboardActivate($event)"
|
|
406
|
+
(keydown.space)="onKeyboardActivate($event)"
|
|
407
|
+
>
|
|
408
|
+
<i class="ax-conversation-picker__empty-icon" [class]="iconClass()"></i>
|
|
409
|
+
<p class="ax-conversation-picker__empty-title">{{ title() }}</p>
|
|
410
|
+
<p class="ax-conversation-picker__empty-hint">{{ hint() }}</p>
|
|
411
|
+
</div>
|
|
412
|
+
`, styles: [":host{display:block;width:100%;max-width:100%;min-height:0}.ax-conversation-picker__scroll{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.ax-conversation-picker__empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.375rem;min-height:8.5rem;margin:.75rem;padding:1rem .75rem;border:1px dashed rgb(var(--ax-sys-color-border-surface));border-radius:var(--ax-sys-border-radius, .5rem);cursor:pointer;transition:border-color .15s ease,background-color .15s ease;text-align:center;touch-action:manipulation}.ax-conversation-picker__empty:hover,.ax-conversation-picker__empty--drag{border-color:rgb(var(--ax-sys-color-primary-500));background:rgba(var(--ax-sys-color-primary-500),.06)}.ax-conversation-picker__empty-icon{font-size:1.75rem;line-height:1;color:rgba(var(--ax-sys-color-on-surface),.55)}.ax-conversation-picker__empty-title{margin:0;font-size:.8125rem;font-weight:600;color:rgb(var(--ax-sys-color-on-surface))}.ax-conversation-picker__empty-hint{margin:0;font-size:.75rem;color:rgba(var(--ax-sys-color-on-surface),.6)}.ax-conversation-picker__body{padding:0 .75rem .75rem}.ax-conversation-picker__list{display:flex;flex-direction:column;gap:.5rem;padding-top:.5rem}.ax-conversation-picker__row{display:flex;align-items:center;gap:.625rem;padding:.5rem .625rem;border:1px solid rgb(var(--ax-sys-color-border-light-surface));border-radius:var(--ax-sys-border-radius, .375rem);background:rgb(var(--ax-sys-color-surface));transition:background-color .15s ease}@media(hover:hover){.ax-conversation-picker__row:hover{background:rgb(var(--ax-sys-color-light-surface))}}.ax-conversation-picker__thumb{position:relative;display:flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;flex-shrink:0;border-radius:var(--ax-sys-border-radius, .375rem);background:rgba(var(--ax-sys-color-primary-500),.08);color:rgb(var(--ax-sys-color-primary-500));font-size:1.125rem;overflow:hidden}.ax-conversation-picker__thumb img,.ax-conversation-picker__thumb video{width:100%;height:100%;object-fit:cover;display:block;pointer-events:none}.ax-conversation-picker__thumb-badge{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:#00000052;color:rgb(var(--ax-sys-color-light));font-size:.625rem;pointer-events:none}.ax-conversation-picker__details{flex:1;min-width:0;display:flex;flex-direction:column;gap:.125rem}.ax-conversation-picker__name{font-size:.8125rem;font-weight:500;color:rgb(var(--ax-sys-color-on-surface));overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ax-conversation-picker__status{display:flex;flex-wrap:wrap;gap:.375rem;font-size:.6875rem;color:rgba(var(--ax-sys-color-on-surface),.65)}.ax-conversation-picker__status--ok{color:rgb(var(--ax-sys-color-success-600));font-weight:500}.ax-conversation-picker__status--err{color:rgb(var(--ax-sys-color-danger-600));font-weight:500}.ax-conversation-picker__progress{width:100%;margin-top:.125rem}.ax-conversation-picker__remove{display:flex;align-items:center;justify-content:center;width:2.75rem;height:2.75rem;flex-shrink:0;border:none;border-radius:var(--ax-sys-border-radius, .25rem);background:transparent;color:rgba(var(--ax-sys-color-on-surface),.55);font-size:1rem;cursor:pointer;touch-action:manipulation;transition:background-color .15s ease,color .15s ease}.ax-conversation-picker__remove:hover,.ax-conversation-picker__remove:focus-visible{background:rgba(var(--ax-sys-color-danger-500),.1);color:rgb(var(--ax-sys-color-danger-500));outline:none}.ax-conversation-picker__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(5.25rem,1fr));gap:.5rem}.ax-conversation-picker__tile{position:relative;aspect-ratio:1;border-radius:var(--ax-sys-border-radius, .375rem);overflow:hidden;border:1px solid rgb(var(--ax-sys-color-border-light-surface));background:rgb(var(--ax-sys-color-light-surface))}.ax-conversation-picker__tile img{width:100%;height:100%;object-fit:cover;display:block}.ax-conversation-picker__tile-remove{position:absolute;top:.25rem;inset-inline-end:.25rem;z-index:2;display:flex;align-items:center;justify-content:center;width:1.75rem;height:1.75rem;border:none;border-radius:50%;background:rgb(var(--ax-sys-color-danger-500));color:rgb(var(--ax-sys-color-light));font-size:.6875rem;cursor:pointer;touch-action:manipulation;box-shadow:0 1px 3px #0003}.ax-conversation-picker__tile-overlay{position:absolute;inset-inline:0;bottom:0;padding:.25rem;background:linear-gradient(transparent,#0000008c)}.ax-conversation-picker__tile-status{font-size:.625rem;color:rgb(var(--ax-sys-color-light));line-height:1.2}.ax-conversation-picker__caption-slot{flex-shrink:0;padding:.5rem .75rem;border-top:1px solid rgb(var(--ax-sys-color-border-light-surface));background:rgb(var(--ax-sys-color-lightest-surface))}.ax-conversation-picker__input-hidden{display:none}@container picker (max-width: 480px){.ax-conversation-picker__grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.375rem}.ax-conversation-picker__row{padding:.4375rem .5rem;gap:.5rem}.ax-conversation-picker__thumb{width:2.25rem;height:2.25rem}.ax-conversation-picker__empty{min-height:7.5rem;margin:.5rem}.ax-conversation-picker__body{padding-inline:.5rem;padding-bottom:.5rem}}\n"] }]
|
|
413
|
+
}], propDecorators: { title: [{ type: i0.Input, args: [{ isSignal: true, alias: "title", required: true }] }], hint: [{ type: i0.Input, args: [{ isSignal: true, alias: "hint", required: true }] }], iconClass: [{ type: i0.Input, args: [{ isSignal: true, alias: "iconClass", required: true }] }], dragOver: [{ type: i0.Input, args: [{ isSignal: true, alias: "dragOver", required: false }] }] } });
|
|
414
|
+
|
|
415
|
+
/**
|
|
416
|
+
* Wraps composer pickers with {@link AXUploaderZoneDirective} for browse, drop, and validation.
|
|
417
|
+
*/
|
|
418
|
+
class AXConversationPickerShellComponent {
|
|
419
|
+
constructor() {
|
|
420
|
+
this.toast = inject(AXToastService);
|
|
421
|
+
this.translation = inject(AXTranslationService);
|
|
422
|
+
this.fileType = input.required(...(ngDevMode ? [{ debugName: "fileType" }] : /* istanbul ignore next */ []));
|
|
423
|
+
this.multiple = input(false, ...(ngDevMode ? [{ debugName: "multiple" }] : /* istanbul ignore next */ []));
|
|
424
|
+
this.filesSelected = output();
|
|
425
|
+
this.dragEnter = output();
|
|
426
|
+
this.dragLeave = output();
|
|
427
|
+
this.dragOver = output();
|
|
428
|
+
}
|
|
429
|
+
onZoneFileChange(event) {
|
|
430
|
+
if (event.rejected?.length) {
|
|
431
|
+
notifyPickerValidationErrors(this.toast, this.translation, event.rejected);
|
|
432
|
+
}
|
|
433
|
+
if (event.files.length > 0) {
|
|
434
|
+
this.filesSelected.emit(event.files);
|
|
435
|
+
}
|
|
436
|
+
}
|
|
437
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXConversationPickerShellComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
438
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "21.2.9", type: AXConversationPickerShellComponent, isStandalone: true, selector: "ax-conversation-picker-shell", inputs: { fileType: { classPropertyName: "fileType", publicName: "fileType", isSignal: true, isRequired: true, transformFunction: null }, multiple: { classPropertyName: "multiple", publicName: "multiple", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { filesSelected: "filesSelected", dragEnter: "dragEnter", dragLeave: "dragLeave", dragOver: "dragOver" }, ngImport: i0, template: `
|
|
439
|
+
<div
|
|
440
|
+
class="ax-conversation-picker"
|
|
441
|
+
axUploaderZone
|
|
442
|
+
[fileType]="fileType()"
|
|
443
|
+
[multiple]="multiple()"
|
|
444
|
+
[disableBrowse]="true"
|
|
445
|
+
(fileChange)="onZoneFileChange($event)"
|
|
446
|
+
(dragEnter)="dragEnter.emit($event)"
|
|
447
|
+
(dragLeave)="dragLeave.emit($event)"
|
|
448
|
+
(dragOver)="dragOver.emit($event)"
|
|
449
|
+
>
|
|
450
|
+
<div class="ax-conversation-picker__content">
|
|
451
|
+
<ng-content />
|
|
452
|
+
</div>
|
|
453
|
+
</div>
|
|
454
|
+
`, isInline: true, styles: [":host{display:block;width:100%;max-width:100%;min-height:0;container-type:inline-size;container-name:picker}.ax-conversation-picker{display:flex;flex-direction:column;width:100%;max-width:100%;max-height:min(32rem,85dvh);background:rgb(var(--ax-sys-color-lightest-surface));border-radius:var(--ax-sys-border-radius, .5rem);overflow:hidden}.ax-conversation-picker__content{display:flex;flex:1;flex-direction:column;min-height:0;overflow:hidden}@container picker (max-width: 480px){.ax-conversation-picker{max-height:min(28rem,90dvh);border-radius:0}}\n"], dependencies: [{ kind: "directive", type: AXUploaderZoneDirective, selector: "[axUploaderZone]", inputs: ["multiple", "accept", "fileType", "overlayTemplate", "disableBrowse", "disableDragDrop"], outputs: ["fileChange", "onChanged", "dragEnter", "dragLeave", "dragOver", "onFileUploadComplete", "onFilesUploadComplete"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
455
|
+
}
|
|
456
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXConversationPickerShellComponent, decorators: [{
|
|
457
|
+
type: Component,
|
|
458
|
+
args: [{ selector: 'ax-conversation-picker-shell', changeDetection: ChangeDetectionStrategy.OnPush, imports: [AXUploaderZoneDirective], template: `
|
|
459
|
+
<div
|
|
460
|
+
class="ax-conversation-picker"
|
|
461
|
+
axUploaderZone
|
|
462
|
+
[fileType]="fileType()"
|
|
463
|
+
[multiple]="multiple()"
|
|
464
|
+
[disableBrowse]="true"
|
|
465
|
+
(fileChange)="onZoneFileChange($event)"
|
|
466
|
+
(dragEnter)="dragEnter.emit($event)"
|
|
467
|
+
(dragLeave)="dragLeave.emit($event)"
|
|
468
|
+
(dragOver)="dragOver.emit($event)"
|
|
469
|
+
>
|
|
470
|
+
<div class="ax-conversation-picker__content">
|
|
471
|
+
<ng-content />
|
|
472
|
+
</div>
|
|
473
|
+
</div>
|
|
474
|
+
`, styles: [":host{display:block;width:100%;max-width:100%;min-height:0;container-type:inline-size;container-name:picker}.ax-conversation-picker{display:flex;flex-direction:column;width:100%;max-width:100%;max-height:min(32rem,85dvh);background:rgb(var(--ax-sys-color-lightest-surface));border-radius:var(--ax-sys-border-radius, .5rem);overflow:hidden}.ax-conversation-picker__content{display:flex;flex:1;flex-direction:column;min-height:0;overflow:hidden}@container picker (max-width: 480px){.ax-conversation-picker{max-height:min(28rem,90dvh);border-radius:0}}\n"] }]
|
|
475
|
+
}], propDecorators: { fileType: [{ type: i0.Input, args: [{ isSignal: true, alias: "fileType", required: true }] }], multiple: [{ type: i0.Input, args: [{ isSignal: true, alias: "multiple", required: false }] }], filesSelected: [{ type: i0.Output, args: ["filesSelected"] }], dragEnter: [{ type: i0.Output, args: ["dragEnter"] }], dragLeave: [{ type: i0.Output, args: ["dragLeave"] }], dragOver: [{ type: i0.Output, args: ["dragOver"] }] } });
|
|
476
|
+
|
|
477
|
+
const AX_CONVERSATION_PICKER_TOOLBAR_STYLES = `
|
|
478
|
+
:host {
|
|
479
|
+
display: flex;
|
|
480
|
+
align-items: center;
|
|
481
|
+
justify-content: space-between;
|
|
482
|
+
gap: 0.5rem;
|
|
483
|
+
flex-shrink: 0;
|
|
484
|
+
position: sticky;
|
|
485
|
+
top: 0;
|
|
486
|
+
z-index: 10;
|
|
487
|
+
box-sizing: border-box;
|
|
488
|
+
width: calc(100% + 1.5rem);
|
|
489
|
+
margin-inline: -0.75rem;
|
|
490
|
+
padding: 0.375rem 0.75rem 0.5rem;
|
|
491
|
+
background: rgb(var(--ax-sys-color-lightest-surface));
|
|
492
|
+
border-bottom: 1px solid rgb(var(--ax-sys-color-border-light-surface));
|
|
493
|
+
}
|
|
494
|
+
|
|
495
|
+
.ax-conversation-picker__count {
|
|
496
|
+
font-size: 0.75rem;
|
|
497
|
+
font-weight: 500;
|
|
498
|
+
color: rgba(var(--ax-sys-color-on-surface), 0.65);
|
|
499
|
+
}
|
|
500
|
+
|
|
501
|
+
@container picker (max-width: 480px) {
|
|
502
|
+
:host {
|
|
503
|
+
width: calc(100% + 1rem);
|
|
504
|
+
margin-inline: -0.5rem;
|
|
505
|
+
padding-inline: 0.5rem;
|
|
506
|
+
}
|
|
507
|
+
}
|
|
508
|
+
`;
|
|
509
|
+
class AXConversationPickerToolbarComponent {
|
|
510
|
+
constructor() {
|
|
511
|
+
this.countLabel = input.required(...(ngDevMode ? [{ debugName: "countLabel" }] : /* istanbul ignore next */ []));
|
|
512
|
+
this.addMoreLabel = input.required(...(ngDevMode ? [{ debugName: "addMoreLabel" }] : /* istanbul ignore next */ []));
|
|
513
|
+
}
|
|
514
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXConversationPickerToolbarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
515
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "21.2.9", type: AXConversationPickerToolbarComponent, isStandalone: true, selector: "ax-conversation-picker-toolbar", inputs: { countLabel: { classPropertyName: "countLabel", publicName: "countLabel", isSignal: true, isRequired: true, transformFunction: null }, addMoreLabel: { classPropertyName: "addMoreLabel", publicName: "addMoreLabel", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0, template: `
|
|
516
|
+
<span class="ax-conversation-picker__count">{{ countLabel() }}</span>
|
|
517
|
+
<ax-button [text]="addMoreLabel()" [look]="'ghost'" axUploaderBrowseHandle>
|
|
518
|
+
<ax-prefix>
|
|
519
|
+
<ax-icon><i class="fa-light fa-plus"></i></ax-icon>
|
|
520
|
+
</ax-prefix>
|
|
521
|
+
</ax-button>
|
|
522
|
+
`, isInline: true, styles: [":host{display:flex;align-items:center;justify-content:space-between;gap:.5rem;flex-shrink:0;position:sticky;top:0;z-index:10;box-sizing:border-box;width:calc(100% + 1.5rem);margin-inline:-.75rem;padding:.375rem .75rem .5rem;background:rgb(var(--ax-sys-color-lightest-surface));border-bottom:1px solid rgb(var(--ax-sys-color-border-light-surface))}.ax-conversation-picker__count{font-size:.75rem;font-weight:500;color:rgba(var(--ax-sys-color-on-surface),.65)}@container picker (max-width: 480px){:host{width:calc(100% + 1rem);margin-inline:-.5rem;padding-inline:.5rem}}\n"], dependencies: [{ kind: "component", type: AXButtonComponent, selector: "ax-button", inputs: ["disabled", "size", "tabIndex", "color", "look", "text", "toggleable", "selected", "iconOnly", "type", "loadingText"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange", "lookChange", "colorChange", "disabledChange", "loadingTextChange"] }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i1$1.AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "component", type: i1$1.AXDecoratorGenericComponent, selector: "ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-subtitle, ax-placeholder, ax-overlay" }, { kind: "directive", type: AXUploaderBrowseDirective, selector: "[axUploaderBrowseHandle]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
523
|
+
}
|
|
524
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXConversationPickerToolbarComponent, decorators: [{
|
|
525
|
+
type: Component,
|
|
526
|
+
args: [{ selector: 'ax-conversation-picker-toolbar', imports: [AXButtonComponent, AXDecoratorModule, AXUploaderBrowseDirective], changeDetection: ChangeDetectionStrategy.OnPush, template: `
|
|
527
|
+
<span class="ax-conversation-picker__count">{{ countLabel() }}</span>
|
|
528
|
+
<ax-button [text]="addMoreLabel()" [look]="'ghost'" axUploaderBrowseHandle>
|
|
529
|
+
<ax-prefix>
|
|
530
|
+
<ax-icon><i class="fa-light fa-plus"></i></ax-icon>
|
|
531
|
+
</ax-prefix>
|
|
532
|
+
</ax-button>
|
|
533
|
+
`, styles: [":host{display:flex;align-items:center;justify-content:space-between;gap:.5rem;flex-shrink:0;position:sticky;top:0;z-index:10;box-sizing:border-box;width:calc(100% + 1.5rem);margin-inline:-.75rem;padding:.375rem .75rem .5rem;background:rgb(var(--ax-sys-color-lightest-surface));border-bottom:1px solid rgb(var(--ax-sys-color-border-light-surface))}.ax-conversation-picker__count{font-size:.75rem;font-weight:500;color:rgba(var(--ax-sys-color-on-surface),.65)}@container picker (max-width: 480px){:host{width:calc(100% + 1rem);margin-inline:-.5rem;padding-inline:.5rem}}\n"] }]
|
|
534
|
+
}], propDecorators: { countLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "countLabel", required: true }] }], addMoreLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "addMoreLabel", required: true }] }] } });
|
|
535
|
+
|
|
536
|
+
export { AXConversationPickerEmptyComponent as A, AXConversationPickerToolbarComponent as a, AXConversationPickerCaptionComponent as b, AXConversationPickerShellComponent as c };
|
|
537
|
+
//# sourceMappingURL=acorex-components-conversation-picker-toolbar.component-BthRvEeE.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"acorex-components-conversation-picker-toolbar.component-BthRvEeE.mjs","sources":["../../../../packages/components/conversation/src/lib/plugins/composer/components/shared/picker-caption.component.ts","../../../../packages/components/conversation/src/lib/plugins/composer/components/shared/picker-shared.styles.ts","../../../../packages/components/conversation/src/lib/plugins/composer/components/shared/picker-empty.component.ts","../../../../packages/components/conversation/src/lib/plugins/composer/components/shared/picker-shell.component.ts","../../../../packages/components/conversation/src/lib/plugins/composer/components/shared/picker-toolbar.component.ts"],"sourcesContent":["import { AXTextBoxModule } from '@acorex/components/text-box';\nimport { AXTranslationModule, AXTranslationService } from '@acorex/core/translation';\nimport { ChangeDetectionStrategy, Component, inject, model } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n\n/** Optional caption field shared by composer media pickers. */\n@Component({\n selector: 'ax-conversation-picker-caption',\n imports: [AXTextBoxModule, AXTranslationModule, FormsModule],\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <div class=\"ax-conversation-picker__caption-slot\">\n <ax-text-box\n [(value)]=\"caption\"\n [placeholder]=\"translation.translateSync('@acorex:chat.pickers.common.caption-optional')\"\n />\n </div>\n `,\n styles: [\n `\n :host {\n display: block;\n flex-shrink: 0;\n width: 100%;\n }\n .ax-conversation-picker__caption-slot {\n padding: 0.5rem;\n }\n `,\n ],\n})\nexport class AXConversationPickerCaptionComponent {\n readonly translation = inject(AXTranslationService);\n readonly caption = model('');\n}\n","/**\n * Shell flex + max-height (on {@link AXConversationPickerShellComponent}).\n * Styles here target projected content inside the shell.\n */\nexport const AX_CONVERSATION_PICKER_SHELL_STYLES = `\n :host {\n display: block;\n width: 100%;\n max-width: 100%;\n min-height: 0;\n container-type: inline-size;\n container-name: picker;\n }\n\n .ax-conversation-picker {\n display: flex;\n flex-direction: column;\n width: 100%;\n max-width: 100%;\n max-height: min(32rem, 85dvh);\n background: rgb(var(--ax-sys-color-lightest-surface));\n border-radius: var(--ax-sys-border-radius, 0.5rem);\n overflow: hidden;\n }\n\n .ax-conversation-picker__content {\n display: flex;\n flex: 1;\n flex-direction: column;\n min-height: 0;\n overflow: hidden;\n }\n\n @container picker (max-width: 480px) {\n .ax-conversation-picker {\n max-height: min(28rem, 90dvh);\n border-radius: 0;\n }\n }\n`;\n\n/**\n * Shared layout and surface styles for composer media pickers.\n * Uses ACoreX system color tokens only.\n */\nexport const AX_CONVERSATION_PICKER_SHARED_STYLES = `\n :host {\n display: block;\n width: 100%;\n max-width: 100%;\n min-height: 0;\n }\n\n .ax-conversation-picker__scroll {\n flex: 1;\n min-height: 0;\n overflow-y: auto;\n overscroll-behavior: contain;\n -webkit-overflow-scrolling: touch;\n }\n\n .ax-conversation-picker__empty {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n gap: 0.375rem;\n min-height: 8.5rem;\n margin: 0.75rem;\n padding: 1rem 0.75rem;\n border: 1px dashed rgb(var(--ax-sys-color-border-surface));\n border-radius: var(--ax-sys-border-radius, 0.5rem);\n cursor: pointer;\n transition: border-color 0.15s ease, background-color 0.15s ease;\n text-align: center;\n touch-action: manipulation;\n }\n\n .ax-conversation-picker__empty:hover,\n .ax-conversation-picker__empty--drag {\n border-color: rgb(var(--ax-sys-color-primary-500));\n background: rgba(var(--ax-sys-color-primary-500), 0.06);\n }\n\n .ax-conversation-picker__empty-icon {\n font-size: 1.75rem;\n line-height: 1;\n color: rgba(var(--ax-sys-color-on-surface), 0.55);\n }\n\n .ax-conversation-picker__empty-title {\n margin: 0;\n font-size: 0.8125rem;\n font-weight: 600;\n color: rgb(var(--ax-sys-color-on-surface));\n }\n\n .ax-conversation-picker__empty-hint {\n margin: 0;\n font-size: 0.75rem;\n color: rgba(var(--ax-sys-color-on-surface), 0.6);\n }\n\n .ax-conversation-picker__body {\n padding: 0 0.75rem 0.75rem;\n }\n\n .ax-conversation-picker__list {\n display: flex;\n flex-direction: column;\n gap: 0.5rem;\n padding-top: 0.5rem;\n }\n\n .ax-conversation-picker__row {\n display: flex;\n align-items: center;\n gap: 0.625rem;\n padding: 0.5rem 0.625rem;\n border: 1px solid rgb(var(--ax-sys-color-border-light-surface));\n border-radius: var(--ax-sys-border-radius, 0.375rem);\n background: rgb(var(--ax-sys-color-surface));\n transition: background-color 0.15s ease;\n }\n\n @media (hover: hover) {\n .ax-conversation-picker__row:hover {\n background: rgb(var(--ax-sys-color-light-surface));\n }\n }\n\n .ax-conversation-picker__thumb {\n position: relative;\n display: flex;\n align-items: center;\n justify-content: center;\n width: 2.5rem;\n height: 2.5rem;\n flex-shrink: 0;\n border-radius: var(--ax-sys-border-radius, 0.375rem);\n background: rgba(var(--ax-sys-color-primary-500), 0.08);\n color: rgb(var(--ax-sys-color-primary-500));\n font-size: 1.125rem;\n overflow: hidden;\n }\n\n .ax-conversation-picker__thumb img,\n .ax-conversation-picker__thumb video {\n width: 100%;\n height: 100%;\n object-fit: cover;\n display: block;\n pointer-events: none;\n }\n\n .ax-conversation-picker__thumb-badge {\n position: absolute;\n inset: 0;\n display: flex;\n align-items: center;\n justify-content: center;\n background: rgb(0 0 0 / 0.32);\n color: rgb(var(--ax-sys-color-light));\n font-size: 0.625rem;\n pointer-events: none;\n }\n\n .ax-conversation-picker__details {\n flex: 1;\n min-width: 0;\n display: flex;\n flex-direction: column;\n gap: 0.125rem;\n }\n\n .ax-conversation-picker__name {\n font-size: 0.8125rem;\n font-weight: 500;\n color: rgb(var(--ax-sys-color-on-surface));\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n }\n\n .ax-conversation-picker__status {\n display: flex;\n flex-wrap: wrap;\n gap: 0.375rem;\n font-size: 0.6875rem;\n color: rgba(var(--ax-sys-color-on-surface), 0.65);\n }\n\n .ax-conversation-picker__status--ok {\n color: rgb(var(--ax-sys-color-success-600));\n font-weight: 500;\n }\n\n .ax-conversation-picker__status--err {\n color: rgb(var(--ax-sys-color-danger-600));\n font-weight: 500;\n }\n\n .ax-conversation-picker__progress {\n width: 100%;\n margin-top: 0.125rem;\n }\n\n .ax-conversation-picker__remove {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 2.75rem;\n height: 2.75rem;\n flex-shrink: 0;\n border: none;\n border-radius: var(--ax-sys-border-radius, 0.25rem);\n background: transparent;\n color: rgba(var(--ax-sys-color-on-surface), 0.55);\n font-size: 1rem;\n cursor: pointer;\n touch-action: manipulation;\n transition: background-color 0.15s ease, color 0.15s ease;\n }\n\n .ax-conversation-picker__remove:hover,\n .ax-conversation-picker__remove:focus-visible {\n background: rgba(var(--ax-sys-color-danger-500), 0.1);\n color: rgb(var(--ax-sys-color-danger-500));\n outline: none;\n }\n\n .ax-conversation-picker__grid {\n display: grid;\n grid-template-columns: repeat(auto-fill, minmax(5.25rem, 1fr));\n gap: 0.5rem;\n }\n\n .ax-conversation-picker__tile {\n position: relative;\n aspect-ratio: 1;\n border-radius: var(--ax-sys-border-radius, 0.375rem);\n overflow: hidden;\n border: 1px solid rgb(var(--ax-sys-color-border-light-surface));\n background: rgb(var(--ax-sys-color-light-surface));\n }\n\n .ax-conversation-picker__tile img {\n width: 100%;\n height: 100%;\n object-fit: cover;\n display: block;\n }\n\n .ax-conversation-picker__tile-remove {\n position: absolute;\n top: 0.25rem;\n inset-inline-end: 0.25rem;\n z-index: 2;\n display: flex;\n align-items: center;\n justify-content: center;\n width: 1.75rem;\n height: 1.75rem;\n border: none;\n border-radius: 50%;\n background: rgb(var(--ax-sys-color-danger-500));\n color: rgb(var(--ax-sys-color-light));\n font-size: 0.6875rem;\n cursor: pointer;\n touch-action: manipulation;\n box-shadow: 0 1px 3px rgb(0 0 0 / 0.2);\n }\n\n .ax-conversation-picker__tile-overlay {\n position: absolute;\n inset-inline: 0;\n bottom: 0;\n padding: 0.25rem;\n background: linear-gradient(transparent, rgb(0 0 0 / 0.55));\n }\n\n .ax-conversation-picker__tile-status {\n font-size: 0.625rem;\n color: rgb(var(--ax-sys-color-light));\n line-height: 1.2;\n }\n\n .ax-conversation-picker__caption-slot {\n flex-shrink: 0;\n padding: 0.5rem 0.75rem;\n border-top: 1px solid rgb(var(--ax-sys-color-border-light-surface));\n background: rgb(var(--ax-sys-color-lightest-surface));\n }\n\n .ax-conversation-picker__input-hidden {\n display: none;\n }\n\n @container picker (max-width: 480px) {\n .ax-conversation-picker__grid {\n grid-template-columns: repeat(3, minmax(0, 1fr));\n gap: 0.375rem;\n }\n\n .ax-conversation-picker__row {\n padding: 0.4375rem 0.5rem;\n gap: 0.5rem;\n }\n\n .ax-conversation-picker__thumb {\n width: 2.25rem;\n height: 2.25rem;\n }\n\n .ax-conversation-picker__empty {\n min-height: 7.5rem;\n margin: 0.5rem;\n }\n\n .ax-conversation-picker__body {\n padding-inline: 0.5rem;\n padding-bottom: 0.5rem;\n }\n }\n`;\n","import { AXUploaderBrowseDirective } from '@acorex/cdk/uploader';\nimport { ChangeDetectionStrategy, Component, ElementRef, inject, input } from '@angular/core';\nimport { AX_CONVERSATION_PICKER_SHARED_STYLES } from './picker-shared.styles';\n\n@Component({\n selector: 'ax-conversation-picker-empty',\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [AXUploaderBrowseDirective],\n template: `\n <div\n class=\"ax-conversation-picker__empty\"\n [class.ax-conversation-picker__empty--drag]=\"dragOver()\"\n role=\"button\"\n tabindex=\"0\"\n axUploaderBrowseHandle\n (keydown.enter)=\"onKeyboardActivate($event)\"\n (keydown.space)=\"onKeyboardActivate($event)\"\n >\n <i class=\"ax-conversation-picker__empty-icon\" [class]=\"iconClass()\"></i>\n <p class=\"ax-conversation-picker__empty-title\">{{ title() }}</p>\n <p class=\"ax-conversation-picker__empty-hint\">{{ hint() }}</p>\n </div>\n `,\n styles: [AX_CONVERSATION_PICKER_SHARED_STYLES],\n})\nexport class AXConversationPickerEmptyComponent {\n private readonly host = inject(ElementRef<HTMLElement>);\n\n readonly title = input.required<string>();\n readonly hint = input.required<string>();\n readonly iconClass = input.required<string>();\n readonly dragOver = input(false);\n\n onKeyboardActivate(event: Event): void {\n event.preventDefault();\n this.host.nativeElement.click();\n }\n}\n","import { AXUploaderFileChangeEvent, AXUploaderZoneDirective } from '@acorex/cdk/uploader';\nimport { AXToastService } from '@acorex/components/toast';\nimport { AXTranslationService } from '@acorex/core/translation';\nimport { ChangeDetectionStrategy, Component, inject, input, output } from '@angular/core';\nimport { notifyPickerValidationErrors } from './picker-upload';\nimport { AX_CONVERSATION_PICKER_SHELL_STYLES } from './picker-shared.styles';\n\n/**\n * Wraps composer pickers with {@link AXUploaderZoneDirective} for browse, drop, and validation.\n */\n@Component({\n selector: 'ax-conversation-picker-shell',\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [AXUploaderZoneDirective],\n styles: [AX_CONVERSATION_PICKER_SHELL_STYLES],\n template: `\n <div\n class=\"ax-conversation-picker\"\n axUploaderZone\n [fileType]=\"fileType()\"\n [multiple]=\"multiple()\"\n [disableBrowse]=\"true\"\n (fileChange)=\"onZoneFileChange($event)\"\n (dragEnter)=\"dragEnter.emit($event)\"\n (dragLeave)=\"dragLeave.emit($event)\"\n (dragOver)=\"dragOver.emit($event)\"\n >\n <div class=\"ax-conversation-picker__content\">\n <ng-content />\n </div>\n </div>\n `,\n})\nexport class AXConversationPickerShellComponent {\n private readonly toast = inject(AXToastService);\n private readonly translation = inject(AXTranslationService);\n\n readonly fileType = input.required<string>();\n readonly multiple = input(false);\n\n readonly filesSelected = output<File[]>();\n readonly dragEnter = output<DragEvent>();\n readonly dragLeave = output<DragEvent>();\n readonly dragOver = output<DragEvent>();\n\n protected onZoneFileChange(event: AXUploaderFileChangeEvent): void {\n if (event.rejected?.length) {\n notifyPickerValidationErrors(this.toast, this.translation, event.rejected);\n }\n if (event.files.length > 0) {\n this.filesSelected.emit(event.files);\n }\n }\n}\n","import { AXUploaderBrowseDirective } from '@acorex/cdk/uploader';\nimport { AXButtonComponent } from '@acorex/components/button';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { ChangeDetectionStrategy, Component, input } from '@angular/core';\n\nconst AX_CONVERSATION_PICKER_TOOLBAR_STYLES = `\n :host {\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: 0.5rem;\n flex-shrink: 0;\n position: sticky;\n top: 0;\n z-index: 10;\n box-sizing: border-box;\n width: calc(100% + 1.5rem);\n margin-inline: -0.75rem;\n padding: 0.375rem 0.75rem 0.5rem;\n background: rgb(var(--ax-sys-color-lightest-surface));\n border-bottom: 1px solid rgb(var(--ax-sys-color-border-light-surface));\n }\n\n .ax-conversation-picker__count {\n font-size: 0.75rem;\n font-weight: 500;\n color: rgba(var(--ax-sys-color-on-surface), 0.65);\n }\n\n @container picker (max-width: 480px) {\n :host {\n width: calc(100% + 1rem);\n margin-inline: -0.5rem;\n padding-inline: 0.5rem;\n }\n }\n`;\n\n@Component({\n selector: 'ax-conversation-picker-toolbar',\n imports: [AXButtonComponent, AXDecoratorModule, AXUploaderBrowseDirective],\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <span class=\"ax-conversation-picker__count\">{{ countLabel() }}</span>\n <ax-button [text]=\"addMoreLabel()\" [look]=\"'ghost'\" axUploaderBrowseHandle>\n <ax-prefix>\n <ax-icon><i class=\"fa-light fa-plus\"></i></ax-icon>\n </ax-prefix>\n </ax-button>\n `,\n styles: [AX_CONVERSATION_PICKER_TOOLBAR_STYLES],\n})\nexport class AXConversationPickerToolbarComponent {\n readonly countLabel = input.required<string>();\n readonly addMoreLabel = input.required<string>();\n}\n"],"names":["i1"],"mappings":"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"}
|