@propbinder/mobile-design 0.2.97 → 0.2.98
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.
|
@@ -22880,6 +22880,10 @@ class DsMobileCardInlineContactComponent {
|
|
|
22880
22880
|
* Phone number (optional)
|
|
22881
22881
|
*/
|
|
22882
22882
|
phoneNumber = input('', ...(ngDevMode ? [{ debugName: "phoneNumber" }] : []));
|
|
22883
|
+
/**
|
|
22884
|
+
* Email address (optional)
|
|
22885
|
+
*/
|
|
22886
|
+
email = input('', ...(ngDevMode ? [{ debugName: "email" }] : []));
|
|
22883
22887
|
/**
|
|
22884
22888
|
* Layout variant
|
|
22885
22889
|
* - 'default' - Standard padding and column layout
|
|
@@ -22910,7 +22914,7 @@ class DsMobileCardInlineContactComponent {
|
|
|
22910
22914
|
this.contactClick.emit();
|
|
22911
22915
|
}
|
|
22912
22916
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: DsMobileCardInlineContactComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
22913
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.16", type: DsMobileCardInlineContactComponent, isStandalone: true, selector: "ds-mobile-card-inline-contact", inputs: { name: { classPropertyName: "name", publicName: "name", isSignal: true, isRequired: true, transformFunction: null }, initials: { classPropertyName: "initials", publicName: "initials", isSignal: true, isRequired: false, transformFunction: null }, imageUrl: { classPropertyName: "imageUrl", publicName: "imageUrl", isSignal: true, isRequired: false, transformFunction: null }, contactPerson: { classPropertyName: "contactPerson", publicName: "contactPerson", isSignal: true, isRequired: false, transformFunction: null }, phoneNumber: { classPropertyName: "phoneNumber", publicName: "phoneNumber", isSignal: true, isRequired: false, transformFunction: null }, layout: { classPropertyName: "layout", publicName: "layout", isSignal: true, isRequired: false, transformFunction: null }, clickable: { classPropertyName: "clickable", publicName: "clickable", isSignal: true, isRequired: false, transformFunction: null }, showChevron: { classPropertyName: "showChevron", publicName: "showChevron", isSignal: true, isRequired: false, transformFunction: null }, showEditButton: { classPropertyName: "showEditButton", publicName: "showEditButton", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { contactClick: "contactClick", editClick: "editClick" }, ngImport: i0, template: `
|
|
22917
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.16", type: DsMobileCardInlineContactComponent, isStandalone: true, selector: "ds-mobile-card-inline-contact", inputs: { name: { classPropertyName: "name", publicName: "name", isSignal: true, isRequired: true, transformFunction: null }, initials: { classPropertyName: "initials", publicName: "initials", isSignal: true, isRequired: false, transformFunction: null }, imageUrl: { classPropertyName: "imageUrl", publicName: "imageUrl", isSignal: true, isRequired: false, transformFunction: null }, contactPerson: { classPropertyName: "contactPerson", publicName: "contactPerson", isSignal: true, isRequired: false, transformFunction: null }, phoneNumber: { classPropertyName: "phoneNumber", publicName: "phoneNumber", isSignal: true, isRequired: false, transformFunction: null }, email: { classPropertyName: "email", publicName: "email", isSignal: true, isRequired: false, transformFunction: null }, layout: { classPropertyName: "layout", publicName: "layout", isSignal: true, isRequired: false, transformFunction: null }, clickable: { classPropertyName: "clickable", publicName: "clickable", isSignal: true, isRequired: false, transformFunction: null }, showChevron: { classPropertyName: "showChevron", publicName: "showChevron", isSignal: true, isRequired: false, transformFunction: null }, showEditButton: { classPropertyName: "showEditButton", publicName: "showEditButton", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { contactClick: "contactClick", editClick: "editClick" }, ngImport: i0, template: `
|
|
22914
22918
|
<ds-mobile-card-inline
|
|
22915
22919
|
[variant]="layout()"
|
|
22916
22920
|
[disabled]="!clickable()"
|
|
@@ -22931,17 +22935,23 @@ class DsMobileCardInlineContactComponent {
|
|
|
22931
22935
|
<div content-main class="item-content">
|
|
22932
22936
|
<div class="item-name">{{ name() }}</div>
|
|
22933
22937
|
|
|
22934
|
-
@if (contactPerson() || phoneNumber()) {
|
|
22938
|
+
@if (contactPerson() || phoneNumber() || email()) {
|
|
22935
22939
|
<div class="item-meta">
|
|
22936
22940
|
@if (contactPerson()) {
|
|
22937
22941
|
<span>{{ contactPerson() }}</span>
|
|
22938
22942
|
}
|
|
22939
|
-
@if (contactPerson() && phoneNumber()) {
|
|
22943
|
+
@if (contactPerson() && (phoneNumber() || email())) {
|
|
22940
22944
|
<span>·</span>
|
|
22941
22945
|
}
|
|
22942
22946
|
@if (phoneNumber()) {
|
|
22943
22947
|
<span>{{ phoneNumber() }}</span>
|
|
22944
22948
|
}
|
|
22949
|
+
@if (phoneNumber() && email()) {
|
|
22950
|
+
<span>·</span>
|
|
22951
|
+
}
|
|
22952
|
+
@if (email()) {
|
|
22953
|
+
<span>{{ email() }}</span>
|
|
22954
|
+
}
|
|
22945
22955
|
</div>
|
|
22946
22956
|
}
|
|
22947
22957
|
</div>
|
|
@@ -22981,17 +22991,23 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImpo
|
|
|
22981
22991
|
<div content-main class="item-content">
|
|
22982
22992
|
<div class="item-name">{{ name() }}</div>
|
|
22983
22993
|
|
|
22984
|
-
@if (contactPerson() || phoneNumber()) {
|
|
22994
|
+
@if (contactPerson() || phoneNumber() || email()) {
|
|
22985
22995
|
<div class="item-meta">
|
|
22986
22996
|
@if (contactPerson()) {
|
|
22987
22997
|
<span>{{ contactPerson() }}</span>
|
|
22988
22998
|
}
|
|
22989
|
-
@if (contactPerson() && phoneNumber()) {
|
|
22999
|
+
@if (contactPerson() && (phoneNumber() || email())) {
|
|
22990
23000
|
<span>·</span>
|
|
22991
23001
|
}
|
|
22992
23002
|
@if (phoneNumber()) {
|
|
22993
23003
|
<span>{{ phoneNumber() }}</span>
|
|
22994
23004
|
}
|
|
23005
|
+
@if (phoneNumber() && email()) {
|
|
23006
|
+
<span>·</span>
|
|
23007
|
+
}
|
|
23008
|
+
@if (email()) {
|
|
23009
|
+
<span>{{ email() }}</span>
|
|
23010
|
+
}
|
|
22995
23011
|
</div>
|
|
22996
23012
|
}
|
|
22997
23013
|
</div>
|
|
@@ -23007,7 +23023,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImpo
|
|
|
23007
23023
|
}
|
|
23008
23024
|
</ds-mobile-card-inline>
|
|
23009
23025
|
`, styles: [".item-image{width:36px;height:36px;border-radius:8px;object-fit:cover;flex-shrink:0;background:var(--color-background-neutral-tertiary, #E5E7EB)}:host ::ng-deep .item-trailing ds-icon-button .btn{border-radius:50%}\n"] }]
|
|
23010
|
-
}], propDecorators: { name: [{ type: i0.Input, args: [{ isSignal: true, alias: "name", required: true }] }], initials: [{ type: i0.Input, args: [{ isSignal: true, alias: "initials", required: false }] }], imageUrl: [{ type: i0.Input, args: [{ isSignal: true, alias: "imageUrl", required: false }] }], contactPerson: [{ type: i0.Input, args: [{ isSignal: true, alias: "contactPerson", required: false }] }], phoneNumber: [{ type: i0.Input, args: [{ isSignal: true, alias: "phoneNumber", required: false }] }], layout: [{ type: i0.Input, args: [{ isSignal: true, alias: "layout", required: false }] }], clickable: [{ type: i0.Input, args: [{ isSignal: true, alias: "clickable", required: false }] }], showChevron: [{ type: i0.Input, args: [{ isSignal: true, alias: "showChevron", required: false }] }], showEditButton: [{ type: i0.Input, args: [{ isSignal: true, alias: "showEditButton", required: false }] }], contactClick: [{ type: i0.Output, args: ["contactClick"] }], editClick: [{ type: i0.Output, args: ["editClick"] }] } });
|
|
23026
|
+
}], propDecorators: { name: [{ type: i0.Input, args: [{ isSignal: true, alias: "name", required: true }] }], initials: [{ type: i0.Input, args: [{ isSignal: true, alias: "initials", required: false }] }], imageUrl: [{ type: i0.Input, args: [{ isSignal: true, alias: "imageUrl", required: false }] }], contactPerson: [{ type: i0.Input, args: [{ isSignal: true, alias: "contactPerson", required: false }] }], phoneNumber: [{ type: i0.Input, args: [{ isSignal: true, alias: "phoneNumber", required: false }] }], email: [{ type: i0.Input, args: [{ isSignal: true, alias: "email", required: false }] }], layout: [{ type: i0.Input, args: [{ isSignal: true, alias: "layout", required: false }] }], clickable: [{ type: i0.Input, args: [{ isSignal: true, alias: "clickable", required: false }] }], showChevron: [{ type: i0.Input, args: [{ isSignal: true, alias: "showChevron", required: false }] }], showEditButton: [{ type: i0.Input, args: [{ isSignal: true, alias: "showEditButton", required: false }] }], contactClick: [{ type: i0.Output, args: ["contactClick"] }], editClick: [{ type: i0.Output, args: ["editClick"] }] } });
|
|
23011
23027
|
|
|
23012
23028
|
/**
|
|
23013
23029
|
* DsMobileNewInquiryModalComponent
|
|
@@ -27752,6 +27768,15 @@ class DsMobileHandbookDetailModalComponent {
|
|
|
27752
27768
|
* Error state - when set, shows error message
|
|
27753
27769
|
*/
|
|
27754
27770
|
error;
|
|
27771
|
+
// Translations
|
|
27772
|
+
textItems = 'emner';
|
|
27773
|
+
textClose = 'Luk';
|
|
27774
|
+
textEmptyTitle = 'Ingen emner endnu';
|
|
27775
|
+
textEmptyDescription = 'Denne mappe er tom';
|
|
27776
|
+
textCall = 'Ring';
|
|
27777
|
+
textCopyPhone = 'Kopier nummer';
|
|
27778
|
+
textEmail = 'Skriv e-mail';
|
|
27779
|
+
textCopyEmail = 'Kopier e-mail';
|
|
27755
27780
|
// Signal for reactive handbook data
|
|
27756
27781
|
handbook = signal({
|
|
27757
27782
|
title: '',
|
|
@@ -27820,26 +27845,27 @@ class DsMobileHandbookDetailModalComponent {
|
|
|
27820
27845
|
* Handle contact click - shows bottom sheet with call and copy actions
|
|
27821
27846
|
*/
|
|
27822
27847
|
async handleContactClick(contact) {
|
|
27823
|
-
// Only show actions if there's a phone number
|
|
27824
|
-
if (!contact.phoneNumber) {
|
|
27848
|
+
// Only show actions if there's a phone number or email
|
|
27849
|
+
if (!contact.phoneNumber && !contact.email) {
|
|
27825
27850
|
return;
|
|
27826
27851
|
}
|
|
27827
|
-
const actionGroups = [
|
|
27828
|
-
|
|
27852
|
+
const actionGroups = [];
|
|
27853
|
+
if (contact.phoneNumber) {
|
|
27854
|
+
actionGroups.push({
|
|
27829
27855
|
actions: [
|
|
27830
|
-
{
|
|
27831
|
-
|
|
27832
|
-
title: 'Ring',
|
|
27833
|
-
icon: 'remixPhoneLine',
|
|
27834
|
-
},
|
|
27835
|
-
{
|
|
27836
|
-
action: 'copy',
|
|
27837
|
-
title: 'Kopier nummer',
|
|
27838
|
-
icon: 'remixFileCopyLine',
|
|
27839
|
-
},
|
|
27856
|
+
{ action: 'call', title: this.textCall, icon: 'remixPhoneLine' },
|
|
27857
|
+
{ action: 'copy_phone', title: this.textCopyPhone, icon: 'remixFileCopyLine' },
|
|
27840
27858
|
],
|
|
27841
|
-
}
|
|
27842
|
-
|
|
27859
|
+
});
|
|
27860
|
+
}
|
|
27861
|
+
if (contact.email) {
|
|
27862
|
+
actionGroups.push({
|
|
27863
|
+
actions: [
|
|
27864
|
+
{ action: 'email', title: this.textEmail, icon: 'remixMailLine' },
|
|
27865
|
+
{ action: 'copy_email', title: this.textCopyEmail, icon: 'remixFileCopyLine' },
|
|
27866
|
+
],
|
|
27867
|
+
});
|
|
27868
|
+
}
|
|
27843
27869
|
const sheet = await this.modalController.create({
|
|
27844
27870
|
component: DsMobileActionsBottomSheetComponent,
|
|
27845
27871
|
componentProps: {
|
|
@@ -27863,27 +27889,34 @@ class DsMobileHandbookDetailModalComponent {
|
|
|
27863
27889
|
async handleContactAction(action, contact) {
|
|
27864
27890
|
switch (action) {
|
|
27865
27891
|
case 'call':
|
|
27866
|
-
|
|
27867
|
-
if (contact.phoneNumber) {
|
|
27892
|
+
if (contact.phoneNumber)
|
|
27868
27893
|
window.location.href = `tel:${contact.phoneNumber}`;
|
|
27869
|
-
}
|
|
27870
27894
|
break;
|
|
27895
|
+
case 'copy_phone':
|
|
27871
27896
|
case 'copy':
|
|
27872
|
-
// Copy phone number to clipboard
|
|
27873
27897
|
if (contact.phoneNumber) {
|
|
27874
27898
|
try {
|
|
27875
|
-
// Try modern Clipboard API first
|
|
27876
27899
|
await navigator.clipboard.writeText(contact.phoneNumber);
|
|
27877
|
-
console.log('Phone number copied to clipboard:', contact.phoneNumber);
|
|
27878
|
-
// TODO: Show toast notification if you have a toast service
|
|
27879
27900
|
}
|
|
27880
27901
|
catch (err) {
|
|
27881
|
-
console.error('Failed to copy phone number:', err);
|
|
27882
|
-
// Fallback: Try older execCommand method
|
|
27883
27902
|
this.fallbackCopyToClipboard(contact.phoneNumber);
|
|
27884
27903
|
}
|
|
27885
27904
|
}
|
|
27886
27905
|
break;
|
|
27906
|
+
case 'email':
|
|
27907
|
+
if (contact.email)
|
|
27908
|
+
window.location.href = `mailto:${contact.email}`;
|
|
27909
|
+
break;
|
|
27910
|
+
case 'copy_email':
|
|
27911
|
+
if (contact.email) {
|
|
27912
|
+
try {
|
|
27913
|
+
await navigator.clipboard.writeText(contact.email);
|
|
27914
|
+
}
|
|
27915
|
+
catch (err) {
|
|
27916
|
+
this.fallbackCopyToClipboard(contact.email);
|
|
27917
|
+
}
|
|
27918
|
+
}
|
|
27919
|
+
break;
|
|
27887
27920
|
}
|
|
27888
27921
|
}
|
|
27889
27922
|
/**
|
|
@@ -27920,8 +27953,8 @@ class DsMobileHandbookDetailModalComponent {
|
|
|
27920
27953
|
// Attachment action is now handled by DsMobileCardInlineFileComponent via fileUrl input
|
|
27921
27954
|
}
|
|
27922
27955
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: DsMobileHandbookDetailModalComponent, deps: [{ token: i1.ModalController }], target: i0.ɵɵFactoryTarget.Component });
|
|
27923
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.16", type: DsMobileHandbookDetailModalComponent, isStandalone: true, selector: "ds-mobile-handbook-detail-modal", inputs: { handbookData: "handbookData", loading: "loading", error: "error" }, ngImport: i0, template: `
|
|
27924
|
-
<ds-mobile-modal-base [loading]="loading" [error]="error" [headerTitle]="handbook().title" [headerMeta]="handbook().itemCount + '
|
|
27956
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.16", type: DsMobileHandbookDetailModalComponent, isStandalone: true, selector: "ds-mobile-handbook-detail-modal", inputs: { handbookData: "handbookData", loading: "loading", error: "error", textItems: "textItems", textClose: "textClose", textEmptyTitle: "textEmptyTitle", textEmptyDescription: "textEmptyDescription", textCall: "textCall", textCopyPhone: "textCopyPhone", textEmail: "textEmail", textCopyEmail: "textCopyEmail" }, ngImport: i0, template: `
|
|
27957
|
+
<ds-mobile-modal-base [loading]="loading" [error]="error" [headerTitle]="handbook().title" [headerMeta]="handbook().itemCount + ' ' + textItems" [closeButtonLabel]="textClose">
|
|
27925
27958
|
<!-- Header Folder Icon -->
|
|
27926
27959
|
<ds-mobile-handbook-folder-mini header-leading [variant]="handbook().variant" [customColor]="handbook().customColor" [iconName]="handbook().iconName">
|
|
27927
27960
|
</ds-mobile-handbook-folder-mini>
|
|
@@ -27955,6 +27988,7 @@ class DsMobileHandbookDetailModalComponent {
|
|
|
27955
27988
|
[initials]="contact.initials"
|
|
27956
27989
|
[contactPerson]="contact.contactPerson || ''"
|
|
27957
27990
|
[phoneNumber]="contact.phoneNumber || ''"
|
|
27991
|
+
[email]="contact.email || ''"
|
|
27958
27992
|
[clickable]="true"
|
|
27959
27993
|
(contactClick)="handleContactClick(contact)"
|
|
27960
27994
|
>
|
|
@@ -27982,13 +28016,13 @@ class DsMobileHandbookDetailModalComponent {
|
|
|
27982
28016
|
<ds-mobile-section>
|
|
27983
28017
|
<div class="handbook-empty-state">
|
|
27984
28018
|
<img src="/Assets/Empty%20state-chat.png" alt="No items yet" class="empty-state-image" />
|
|
27985
|
-
<h3 class="empty-state-title">
|
|
27986
|
-
<p class="empty-state-description">
|
|
28019
|
+
<h3 class="empty-state-title">{{ textEmptyTitle }}</h3>
|
|
28020
|
+
<p class="empty-state-description">{{ textEmptyDescription }}</p>
|
|
27987
28021
|
</div>
|
|
27988
28022
|
</ds-mobile-section>
|
|
27989
28023
|
}
|
|
27990
28024
|
</ds-mobile-modal-base>
|
|
27991
|
-
`, isInline: true, styles: [".handbook-detail-container{display:flex;flex-direction:column;width:100%;flex:1}.handbook-item{width:100%;display:flex;flex-direction:column;gap:24px;padding:0;border-bottom:none}.handbook-item.last-item{border-bottom:none}.item-text-group{display:flex;flex-direction:column;gap:8px}.item-title{font-family:Brockmann,sans-serif;font-size:16px;font-weight:600;line-height:24px;color:var(--color-text-primary, #1a1a1a);margin:0}.item-description{font-family:Brockmann,sans-serif;font-size:var(--font-size-sm);line-height:22px;color:var(--color-text-primary, #1a1a1a);margin:0}::ng-deep .item-description p{margin:0 0 12px}::ng-deep .item-description p:last-child{margin-bottom:0}::ng-deep .item-description strong,::ng-deep .item-description b{font-weight:600}::ng-deep .item-description em,::ng-deep .item-description i{font-style:italic}::ng-deep .item-description u{text-decoration:underline;text-underline-offset:2px}::ng-deep .item-description h1,::ng-deep .item-description h2,::ng-deep .item-description h3,::ng-deep .item-description h4{font-family:Brockmann,sans-serif;font-weight:600;line-height:1.4;color:var(--color-text-primary, #1a1a1a);margin:0;padding-top:16px;padding-bottom:4px}::ng-deep .item-description h1:first-child,::ng-deep .item-description h2:first-child,::ng-deep .item-description h3:first-child,::ng-deep .item-description h4:first-child{padding-top:0}::ng-deep .item-description h1{font-size:var(--font-size-xl, 20px)}::ng-deep .item-description h2{font-size:var(--font-size-lg, 18px)}::ng-deep .item-description h3,::ng-deep .item-description h4{font-size:var(--font-size-base, 16px)}::ng-deep .item-description ul,::ng-deep .item-description ol{padding-left:20px;margin:0 0 12px}::ng-deep .item-description ul:last-child,::ng-deep .item-description ol:last-child{margin-bottom:0}::ng-deep .item-description li{font-family:Brockmann,sans-serif;font-size:var(--font-size-sm);line-height:22px;color:var(--color-text-primary, #1a1a1a);margin-bottom:4px}::ng-deep .item-description li:last-child{margin-bottom:0}.item-image{width:100%;max-width:100%;height:280px;-o-object-fit:cover;object-fit:cover;border-radius:12px;display:block}.contacts-attachments-group{display:flex;flex-direction:column;gap:8px}.handbook-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;text-align:center}.empty-state-image{width:96px;height:96px}.empty-state-title{font-family:Brockmann,sans-serif;font-size:var(--font-size-base);font-weight:600;line-height:1.3;color:var(--color-text-primary, #1a1a1a)}.empty-state-description{font-family:Brockmann,sans-serif;font-size:var(--font-size-sm);font-weight:400;line-height:1.4;color:var(--color-text-secondary, #737373)}@supports (padding: env(safe-area-inset-bottom)){.handbook-detail-container{padding-bottom:calc(20px + env(safe-area-inset-bottom))}}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "component", type: DsMobileHandbookFolderMiniComponent, selector: "ds-mobile-handbook-folder-mini", inputs: ["variant", "customColor", "iconName"] }, { kind: "component", type: DsMobileCardInlineFileComponent, selector: "ds-mobile-card-inline-file", inputs: ["fileName", "fileSize", "variant", "layout", "fileUrl"], outputs: ["fileClick"] }, { kind: "component", type: DsMobileCardInlineContactComponent, selector: "ds-mobile-card-inline-contact", inputs: ["name", "initials", "imageUrl", "contactPerson", "phoneNumber", "layout", "clickable", "showChevron", "showEditButton"], outputs: ["contactClick", "editClick"] }, { kind: "component", type: DsMobileSwiperComponent, selector: "ds-mobile-swiper", inputs: ["slideWidth", "gap", "pagination", "autoHeight", "progressiveOpacity", "progressiveScale"] }, { kind: "component", type: DsMobileModalBaseComponent, selector: "ds-mobile-modal-base", inputs: ["headerTitleInteractive", "showHeader"], outputs: ["titleClick"] }, { kind: "component", type: DsMobileSectionComponent, selector: "ds-mobile-section", inputs: ["headline", "icon", "linkText", "padding", "paddingDesktop", "gap", "contentGap", "showBorder", "overflow"], outputs: ["linkClick"] }] });
|
|
28025
|
+
`, isInline: true, styles: [".handbook-detail-container{display:flex;flex-direction:column;width:100%;flex:1}.handbook-item{width:100%;display:flex;flex-direction:column;gap:24px;padding:0;border-bottom:none}.handbook-item.last-item{border-bottom:none}.item-text-group{display:flex;flex-direction:column;gap:8px}.item-title{font-family:Brockmann,sans-serif;font-size:16px;font-weight:600;line-height:24px;color:var(--color-text-primary, #1a1a1a);margin:0}.item-description{font-family:Brockmann,sans-serif;font-size:var(--font-size-sm);line-height:22px;color:var(--color-text-primary, #1a1a1a);margin:0}::ng-deep .item-description p{margin:0 0 12px}::ng-deep .item-description p:last-child{margin-bottom:0}::ng-deep .item-description strong,::ng-deep .item-description b{font-weight:600}::ng-deep .item-description em,::ng-deep .item-description i{font-style:italic}::ng-deep .item-description u{text-decoration:underline;text-underline-offset:2px}::ng-deep .item-description h1,::ng-deep .item-description h2,::ng-deep .item-description h3,::ng-deep .item-description h4{font-family:Brockmann,sans-serif;font-weight:600;line-height:1.4;color:var(--color-text-primary, #1a1a1a);margin:0;padding-top:16px;padding-bottom:4px}::ng-deep .item-description h1:first-child,::ng-deep .item-description h2:first-child,::ng-deep .item-description h3:first-child,::ng-deep .item-description h4:first-child{padding-top:0}::ng-deep .item-description h1{font-size:var(--font-size-xl, 20px)}::ng-deep .item-description h2{font-size:var(--font-size-lg, 18px)}::ng-deep .item-description h3,::ng-deep .item-description h4{font-size:var(--font-size-base, 16px)}::ng-deep .item-description ul,::ng-deep .item-description ol{padding-left:20px;margin:0 0 12px}::ng-deep .item-description ul:last-child,::ng-deep .item-description ol:last-child{margin-bottom:0}::ng-deep .item-description li{font-family:Brockmann,sans-serif;font-size:var(--font-size-sm);line-height:22px;color:var(--color-text-primary, #1a1a1a);margin-bottom:4px}::ng-deep .item-description li:last-child{margin-bottom:0}.item-image{width:100%;max-width:100%;height:280px;-o-object-fit:cover;object-fit:cover;border-radius:12px;display:block}.contacts-attachments-group{display:flex;flex-direction:column;gap:8px}.handbook-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;text-align:center}.empty-state-image{width:96px;height:96px}.empty-state-title{font-family:Brockmann,sans-serif;font-size:var(--font-size-base);font-weight:600;line-height:1.3;color:var(--color-text-primary, #1a1a1a)}.empty-state-description{font-family:Brockmann,sans-serif;font-size:var(--font-size-sm);font-weight:400;line-height:1.4;color:var(--color-text-secondary, #737373)}@supports (padding: env(safe-area-inset-bottom)){.handbook-detail-container{padding-bottom:calc(20px + env(safe-area-inset-bottom))}}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "component", type: DsMobileHandbookFolderMiniComponent, selector: "ds-mobile-handbook-folder-mini", inputs: ["variant", "customColor", "iconName"] }, { kind: "component", type: DsMobileCardInlineFileComponent, selector: "ds-mobile-card-inline-file", inputs: ["fileName", "fileSize", "variant", "layout", "fileUrl"], outputs: ["fileClick"] }, { kind: "component", type: DsMobileCardInlineContactComponent, selector: "ds-mobile-card-inline-contact", inputs: ["name", "initials", "imageUrl", "contactPerson", "phoneNumber", "email", "layout", "clickable", "showChevron", "showEditButton"], outputs: ["contactClick", "editClick"] }, { kind: "component", type: DsMobileSwiperComponent, selector: "ds-mobile-swiper", inputs: ["slideWidth", "gap", "pagination", "autoHeight", "progressiveOpacity", "progressiveScale"] }, { kind: "component", type: DsMobileModalBaseComponent, selector: "ds-mobile-modal-base", inputs: ["headerTitleInteractive", "showHeader"], outputs: ["titleClick"] }, { kind: "component", type: DsMobileSectionComponent, selector: "ds-mobile-section", inputs: ["headline", "icon", "linkText", "padding", "paddingDesktop", "gap", "contentGap", "showBorder", "overflow"], outputs: ["linkClick"] }] });
|
|
27992
28026
|
}
|
|
27993
28027
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: DsMobileHandbookDetailModalComponent, decorators: [{
|
|
27994
28028
|
type: Component,
|
|
@@ -28001,7 +28035,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImpo
|
|
|
28001
28035
|
DsMobileModalBaseComponent,
|
|
28002
28036
|
DsMobileSectionComponent,
|
|
28003
28037
|
], schemas: [CUSTOM_ELEMENTS_SCHEMA], template: `
|
|
28004
|
-
<ds-mobile-modal-base [loading]="loading" [error]="error" [headerTitle]="handbook().title" [headerMeta]="handbook().itemCount + '
|
|
28038
|
+
<ds-mobile-modal-base [loading]="loading" [error]="error" [headerTitle]="handbook().title" [headerMeta]="handbook().itemCount + ' ' + textItems" [closeButtonLabel]="textClose">
|
|
28005
28039
|
<!-- Header Folder Icon -->
|
|
28006
28040
|
<ds-mobile-handbook-folder-mini header-leading [variant]="handbook().variant" [customColor]="handbook().customColor" [iconName]="handbook().iconName">
|
|
28007
28041
|
</ds-mobile-handbook-folder-mini>
|
|
@@ -28035,6 +28069,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImpo
|
|
|
28035
28069
|
[initials]="contact.initials"
|
|
28036
28070
|
[contactPerson]="contact.contactPerson || ''"
|
|
28037
28071
|
[phoneNumber]="contact.phoneNumber || ''"
|
|
28072
|
+
[email]="contact.email || ''"
|
|
28038
28073
|
[clickable]="true"
|
|
28039
28074
|
(contactClick)="handleContactClick(contact)"
|
|
28040
28075
|
>
|
|
@@ -28062,8 +28097,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImpo
|
|
|
28062
28097
|
<ds-mobile-section>
|
|
28063
28098
|
<div class="handbook-empty-state">
|
|
28064
28099
|
<img src="/Assets/Empty%20state-chat.png" alt="No items yet" class="empty-state-image" />
|
|
28065
|
-
<h3 class="empty-state-title">
|
|
28066
|
-
<p class="empty-state-description">
|
|
28100
|
+
<h3 class="empty-state-title">{{ textEmptyTitle }}</h3>
|
|
28101
|
+
<p class="empty-state-description">{{ textEmptyDescription }}</p>
|
|
28067
28102
|
</div>
|
|
28068
28103
|
</ds-mobile-section>
|
|
28069
28104
|
}
|
|
@@ -28075,6 +28110,22 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImpo
|
|
|
28075
28110
|
type: Input
|
|
28076
28111
|
}], error: [{
|
|
28077
28112
|
type: Input
|
|
28113
|
+
}], textItems: [{
|
|
28114
|
+
type: Input
|
|
28115
|
+
}], textClose: [{
|
|
28116
|
+
type: Input
|
|
28117
|
+
}], textEmptyTitle: [{
|
|
28118
|
+
type: Input
|
|
28119
|
+
}], textEmptyDescription: [{
|
|
28120
|
+
type: Input
|
|
28121
|
+
}], textCall: [{
|
|
28122
|
+
type: Input
|
|
28123
|
+
}], textCopyPhone: [{
|
|
28124
|
+
type: Input
|
|
28125
|
+
}], textEmail: [{
|
|
28126
|
+
type: Input
|
|
28127
|
+
}], textCopyEmail: [{
|
|
28128
|
+
type: Input
|
|
28078
28129
|
}] } });
|
|
28079
28130
|
|
|
28080
28131
|
/**
|
|
@@ -37324,7 +37375,7 @@ class DsMobileInviteMemberSheetComponent {
|
|
|
37324
37375
|
</div>
|
|
37325
37376
|
</div>
|
|
37326
37377
|
</div>
|
|
37327
|
-
`, isInline: true, styles: [":host{display:flex;flex-direction:column;height:100%}.sheet-content{overflow:hidden;width:100%;flex:1;background:var(--color-background-neutral-primary, #ffffff)}.view-container{display:grid;grid-template-columns:50% 50%;width:200%;transform:translate(0);transition:transform .3s cubic-bezier(.4,0,.2,1),height .3s cubic-bezier(.4,0,.2,1),opacity .15s ease-in-out;overflow:hidden}.view-container.show-step2{transform:translate(-50%)}.view{width:100%;display:flex;flex-direction:column}.view-container:not(.is-animating) .view:not(.active){height:0!important;overflow:hidden!important}.step-content{flex:1;overflow-y:auto;background:var(--color-background-neutral-primary, #ffffff)}.info-card{background:var(--color-background-neutral-secondary, #F5F6F8);border-radius:12px;padding:14px 16px;display:flex;flex-direction:column;gap:10px}.info-row{display:flex;align-items:flex-start;gap:10px;font-size:13px;color:var(--text-color-default-secondary, #545B66)}.info-row svg{flex-shrink:0;margin-top:1px}\n"], dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: DsMobileBottomSheetHeaderComponent, selector: "ds-mobile-bottom-sheet-header", inputs: ["title", "leftButtonLabel", "rightButtonLabel", "rightButtonDisabled", "rightButtonLoading", "showLeftButton", "showRightButton"], outputs: ["leftButtonClick", "rightButtonClick"] }, { kind: "component", type: DsMobileSectionComponent, selector: "ds-mobile-section", inputs: ["headline", "icon", "linkText", "padding", "paddingDesktop", "gap", "contentGap", "showBorder", "overflow"], outputs: ["linkClick"] }, { kind: "component", type: DsTextInputComponent, selector: "ds-text-input", inputs: ["type", "label", "placeholder", "disabled", "readonly", "required", "hasError", "errorMessage", "autocomplete", "inputmode", "autoClearError", "validator"], outputs: ["valueChange", "blur", "focus", "errorCleared"] }, { kind: "component", type: DsMobileCardInlineContactComponent, selector: "ds-mobile-card-inline-contact", inputs: ["name", "initials", "imageUrl", "contactPerson", "phoneNumber", "layout", "clickable", "showChevron", "showEditButton"], outputs: ["contactClick", "editClick"] }] });
|
|
37378
|
+
`, isInline: true, styles: [":host{display:flex;flex-direction:column;height:100%}.sheet-content{overflow:hidden;width:100%;flex:1;background:var(--color-background-neutral-primary, #ffffff)}.view-container{display:grid;grid-template-columns:50% 50%;width:200%;transform:translate(0);transition:transform .3s cubic-bezier(.4,0,.2,1),height .3s cubic-bezier(.4,0,.2,1),opacity .15s ease-in-out;overflow:hidden}.view-container.show-step2{transform:translate(-50%)}.view{width:100%;display:flex;flex-direction:column}.view-container:not(.is-animating) .view:not(.active){height:0!important;overflow:hidden!important}.step-content{flex:1;overflow-y:auto;background:var(--color-background-neutral-primary, #ffffff)}.info-card{background:var(--color-background-neutral-secondary, #F5F6F8);border-radius:12px;padding:14px 16px;display:flex;flex-direction:column;gap:10px}.info-row{display:flex;align-items:flex-start;gap:10px;font-size:13px;color:var(--text-color-default-secondary, #545B66)}.info-row svg{flex-shrink:0;margin-top:1px}\n"], dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: DsMobileBottomSheetHeaderComponent, selector: "ds-mobile-bottom-sheet-header", inputs: ["title", "leftButtonLabel", "rightButtonLabel", "rightButtonDisabled", "rightButtonLoading", "showLeftButton", "showRightButton"], outputs: ["leftButtonClick", "rightButtonClick"] }, { kind: "component", type: DsMobileSectionComponent, selector: "ds-mobile-section", inputs: ["headline", "icon", "linkText", "padding", "paddingDesktop", "gap", "contentGap", "showBorder", "overflow"], outputs: ["linkClick"] }, { kind: "component", type: DsTextInputComponent, selector: "ds-text-input", inputs: ["type", "label", "placeholder", "disabled", "readonly", "required", "hasError", "errorMessage", "autocomplete", "inputmode", "autoClearError", "validator"], outputs: ["valueChange", "blur", "focus", "errorCleared"] }, { kind: "component", type: DsMobileCardInlineContactComponent, selector: "ds-mobile-card-inline-contact", inputs: ["name", "initials", "imageUrl", "contactPerson", "phoneNumber", "email", "layout", "clickable", "showChevron", "showEditButton"], outputs: ["contactClick", "editClick"] }] });
|
|
37328
37379
|
}
|
|
37329
37380
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: DsMobileInviteMemberSheetComponent, decorators: [{
|
|
37330
37381
|
type: Component,
|
|
@@ -37846,7 +37897,7 @@ class AcceptInvitePageComponent {
|
|
|
37846
37897
|
</ds-mobile-section>
|
|
37847
37898
|
}
|
|
37848
37899
|
</ds-mobile-page-details>
|
|
37849
|
-
`, isInline: true, styles: [".field-group{display:flex;flex-direction:column;gap:8px}.section-label{font-family:Brockmann,sans-serif;font-size:var(--font-size-sm);font-weight:600;color:var(--text-color-default-primary);margin:0;letter-spacing:-.2px;line-height:1.4}.accept-cta{padding:8px 0 4px}.accept-cta ds-button{display:block;width:100%}.accept-cta ::ng-deep ds-button>button{width:100%;border-radius:9999px}.accept-hint{margin:10px 0 0;font-size:13px;color:var(--text-color-default-tertiary, #7C8694);text-align:center}.expired-banner{display:flex;align-items:center;gap:10px;padding:14px 16px;border-radius:12px;background:var(--color-background-warning-secondary, #FEF3C7)}.expired-banner__icon{width:20px;height:20px;flex-shrink:0;color:var(--color-warning-base, #D97706)}.expired-banner__text{font-family:Brockmann,sans-serif;font-size:14px;font-weight:500;line-height:1.4;color:var(--color-warning-content, #92400E);margin:0}.resend-cta{padding:8px 0 4px}.resend-cta ds-button{display:block;width:100%}.resend-cta ::ng-deep ds-button>button{width:100%;border-radius:9999px}.resend-hint{margin:10px 0 0;font-size:13px;color:var(--text-color-default-tertiary, #7C8694);text-align:center}@keyframes slideDown{0%{transform:translateY(-8px);opacity:0}to{transform:translateY(0);opacity:1}}.success-notice{padding:14px 16px;border-radius:12px;background:var(--color-background-success-secondary, #DCFCE7);display:flex;align-items:center;gap:10px;font-family:Brockmann,sans-serif;font-size:14px;font-weight:500;color:var(--color-success-base, #158452);animation:slideDown .2s ease-out}.success-check{width:20px;height:20px;border-radius:50%;background:var(--color-success-base, #158452);display:flex;align-items:center;justify-content:center;flex-shrink:0}\n"], dependencies: [{ kind: "component", type: DsButtonComponent, selector: "ds-button", inputs: ["variant", "size", "disabled", "loading", "pressed", "expanded", "leadingIcon", "trailingIcon", "ariaLabel", "iconOnly"], outputs: ["clicked", "focused", "blurred"] }, { kind: "component", type: DsMobilePageDetailsComponent, selector: "ds-mobile-page-details", inputs: ["title", "editableTitle", "backRoute", "contentPadding", "tabs", "activeTab", "showRefresh", "scrollThreshold", "headerFadeDistance"], outputs: ["back", "tabChange", "refresh", "scroll", "titleClick"] }, { kind: "component", type: DsMobileSectionComponent, selector: "ds-mobile-section", inputs: ["headline", "icon", "linkText", "padding", "paddingDesktop", "gap", "contentGap", "showBorder", "overflow"], outputs: ["linkClick"] }, { kind: "component", type: DsMobileCardInlineContactComponent, selector: "ds-mobile-card-inline-contact", inputs: ["name", "initials", "imageUrl", "contactPerson", "phoneNumber", "layout", "clickable", "showChevron", "showEditButton"], outputs: ["contactClick", "editClick"] }] });
|
|
37900
|
+
`, isInline: true, styles: [".field-group{display:flex;flex-direction:column;gap:8px}.section-label{font-family:Brockmann,sans-serif;font-size:var(--font-size-sm);font-weight:600;color:var(--text-color-default-primary);margin:0;letter-spacing:-.2px;line-height:1.4}.accept-cta{padding:8px 0 4px}.accept-cta ds-button{display:block;width:100%}.accept-cta ::ng-deep ds-button>button{width:100%;border-radius:9999px}.accept-hint{margin:10px 0 0;font-size:13px;color:var(--text-color-default-tertiary, #7C8694);text-align:center}.expired-banner{display:flex;align-items:center;gap:10px;padding:14px 16px;border-radius:12px;background:var(--color-background-warning-secondary, #FEF3C7)}.expired-banner__icon{width:20px;height:20px;flex-shrink:0;color:var(--color-warning-base, #D97706)}.expired-banner__text{font-family:Brockmann,sans-serif;font-size:14px;font-weight:500;line-height:1.4;color:var(--color-warning-content, #92400E);margin:0}.resend-cta{padding:8px 0 4px}.resend-cta ds-button{display:block;width:100%}.resend-cta ::ng-deep ds-button>button{width:100%;border-radius:9999px}.resend-hint{margin:10px 0 0;font-size:13px;color:var(--text-color-default-tertiary, #7C8694);text-align:center}@keyframes slideDown{0%{transform:translateY(-8px);opacity:0}to{transform:translateY(0);opacity:1}}.success-notice{padding:14px 16px;border-radius:12px;background:var(--color-background-success-secondary, #DCFCE7);display:flex;align-items:center;gap:10px;font-family:Brockmann,sans-serif;font-size:14px;font-weight:500;color:var(--color-success-base, #158452);animation:slideDown .2s ease-out}.success-check{width:20px;height:20px;border-radius:50%;background:var(--color-success-base, #158452);display:flex;align-items:center;justify-content:center;flex-shrink:0}\n"], dependencies: [{ kind: "component", type: DsButtonComponent, selector: "ds-button", inputs: ["variant", "size", "disabled", "loading", "pressed", "expanded", "leadingIcon", "trailingIcon", "ariaLabel", "iconOnly"], outputs: ["clicked", "focused", "blurred"] }, { kind: "component", type: DsMobilePageDetailsComponent, selector: "ds-mobile-page-details", inputs: ["title", "editableTitle", "backRoute", "contentPadding", "tabs", "activeTab", "showRefresh", "scrollThreshold", "headerFadeDistance"], outputs: ["back", "tabChange", "refresh", "scroll", "titleClick"] }, { kind: "component", type: DsMobileSectionComponent, selector: "ds-mobile-section", inputs: ["headline", "icon", "linkText", "padding", "paddingDesktop", "gap", "contentGap", "showBorder", "overflow"], outputs: ["linkClick"] }, { kind: "component", type: DsMobileCardInlineContactComponent, selector: "ds-mobile-card-inline-contact", inputs: ["name", "initials", "imageUrl", "contactPerson", "phoneNumber", "email", "layout", "clickable", "showChevron", "showEditButton"], outputs: ["contactClick", "editClick"] }] });
|
|
37850
37901
|
}
|
|
37851
37902
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AcceptInvitePageComponent, decorators: [{
|
|
37852
37903
|
type: Component,
|