@propbinder/mobile-design 0.2.11 → 0.2.13
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/fesm2022/propbinder-mobile-design.mjs +866 -760
- package/fesm2022/propbinder-mobile-design.mjs.map +1 -1
- package/index.d.ts +45 -8
- package/package.json +1 -1
- package/styles/ionic.css +15 -0
- package/styles/mobile-common.css +1 -1
|
@@ -7,12 +7,13 @@ import { Router, NavigationEnd } from '@angular/router';
|
|
|
7
7
|
import * as i1 from '@ionic/angular/standalone';
|
|
8
8
|
import { IonHeader, IonToolbar, IonTitle, IonContent, IonButtons, ModalController, Platform, IonRefresher, IonRefresherContent, IonPopover, IonTabBar, IonTabButton, IonLabel, IonTabs, IonTab, IonSpinner, IonInfiniteScroll, IonInfiniteScrollContent, IonButton } from '@ionic/angular/standalone';
|
|
9
9
|
import { ImpactStyle, Haptics } from '@capacitor/haptics';
|
|
10
|
-
import { DsIconButtonComponent, DsIconComponent, DsButtonComponent, DsAvatarComponent, DsShapeIndicatorComponent, DsTextareaComponent, DsBadgeComponent } from '@propbinder/design-system';
|
|
10
|
+
import { DsIconButtonComponent, DsIconComponent, DsButtonComponent, DsAvatarComponent, DsShapeIndicatorComponent, DsTextareaComponent, DsTileComponent, DsTileSectionComponent, DsBadgeComponent } from '@propbinder/design-system';
|
|
11
11
|
import { StatusBar } from '@capacitor/status-bar';
|
|
12
12
|
import * as i1$1 from '@angular/forms';
|
|
13
13
|
import { FormsModule, NG_VALUE_ACCESSOR } from '@angular/forms';
|
|
14
14
|
import { Keyboard } from '@capacitor/keyboard';
|
|
15
15
|
import { Camera, CameraSource, CameraResultType } from '@capacitor/camera';
|
|
16
|
+
import { Subject } from 'rxjs';
|
|
16
17
|
import { createAnimation } from '@ionic/core';
|
|
17
18
|
import { filter } from 'rxjs/operators';
|
|
18
19
|
import { Share } from '@capacitor/share';
|
|
@@ -20,6 +21,7 @@ import Swiper from 'swiper';
|
|
|
20
21
|
import { Filesystem, Directory } from '@capacitor/filesystem';
|
|
21
22
|
import { Browser } from '@capacitor/browser';
|
|
22
23
|
import { Capacitor } from '@capacitor/core';
|
|
24
|
+
import { Pagination } from 'swiper/modules';
|
|
23
25
|
|
|
24
26
|
const DEFAULT_CONFIG = {
|
|
25
27
|
logoUrl: '/Assets/logos/propbinder-logomark.svg',
|
|
@@ -1071,44 +1073,30 @@ class DsMobileActionListItemComponent {
|
|
|
1071
1073
|
itemClick = output();
|
|
1072
1074
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: DsMobileActionListItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
1073
1075
|
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.3.15", type: DsMobileActionListItemComponent, isStandalone: true, selector: "ds-mobile-action-list-item", inputs: { title: { classPropertyName: "title", publicName: "title", isSignal: true, isRequired: true, transformFunction: null }, showDivider: { classPropertyName: "showDivider", publicName: "showDivider", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { itemClick: "itemClick" }, ngImport: i0, template: `
|
|
1074
|
-
<ds-mobile-list-item
|
|
1075
|
-
[title]="title()"
|
|
1076
|
-
[interactive]="true"
|
|
1077
|
-
[enableLongPress]="false"
|
|
1078
|
-
[showDivider]="showDivider()"
|
|
1079
|
-
[disabled]="disabled()"
|
|
1080
|
-
(itemClick)="itemClick.emit()">
|
|
1081
|
-
|
|
1076
|
+
<ds-mobile-list-item [title]="title()" [interactive]="true" [enableLongPress]="false" [showDivider]="showDivider()" [disabled]="disabled()" (itemClick)="itemClick.emit()">
|
|
1082
1077
|
<div class="action-icon-wrapper" content-leading>
|
|
1083
1078
|
<ng-content select="[action-icon]" />
|
|
1084
1079
|
</div>
|
|
1085
|
-
|
|
1080
|
+
|
|
1086
1081
|
<div content-trailing>
|
|
1087
1082
|
<ng-content select="[content-trailing]" />
|
|
1088
1083
|
</div>
|
|
1089
1084
|
</ds-mobile-list-item>
|
|
1090
|
-
`, isInline: true, styles: [":host ::ng-deep ds-mobile-list-item .list-item-inner{align-items:center}:host ::ng-deep ds-mobile-list-item .content-leading{align-items:center;justify-content:center}:host ::ng-deep .action-icon-wrapper{display:flex;align-items:center;justify-content:center;width:100%;height:100%}:host ::ng-deep ds-mobile-list-item .content-main{gap:0;justify-content:center}\n"], dependencies: [{ kind: "component", type: DsMobileListItemComponent, selector: "ds-mobile-list-item", inputs: ["leadingSize", "variant", "align", "interactive", "disabled", "loading", "enableLongPress", "showDesktopMoreButton", "interactiveOffset", "title", "subtitle", "showDivider", "dividerSpacing"], outputs: ["itemClick", "moreButtonClick"] }] });
|
|
1085
|
+
`, isInline: true, styles: [":host ::ng-deep ds-mobile-list-item .list-item-inner{align-items:center}:host ::ng-deep ds-mobile-list-item .content-leading{align-items:center;justify-content:center}:host ::ng-deep .action-icon-wrapper{display:flex;align-items:center;justify-content:center;width:100%;height:100%}:host ::ng-deep ds-mobile-list-item .content-main{gap:0;justify-content:center}:host{outline:none;--background-focused: transparent;--background-activated: transparent;-webkit-tap-highlight-color:transparent}:host ::ng-deep ds-mobile-list-item{outline:none}\n"], dependencies: [{ kind: "component", type: DsMobileListItemComponent, selector: "ds-mobile-list-item", inputs: ["leadingSize", "variant", "align", "interactive", "disabled", "loading", "enableLongPress", "showDesktopMoreButton", "interactiveOffset", "title", "subtitle", "showDivider", "dividerSpacing"], outputs: ["itemClick", "moreButtonClick"] }] });
|
|
1091
1086
|
}
|
|
1092
1087
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: DsMobileActionListItemComponent, decorators: [{
|
|
1093
1088
|
type: Component,
|
|
1094
1089
|
args: [{ selector: 'ds-mobile-action-list-item', standalone: true, imports: [DsMobileListItemComponent], template: `
|
|
1095
|
-
<ds-mobile-list-item
|
|
1096
|
-
[title]="title()"
|
|
1097
|
-
[interactive]="true"
|
|
1098
|
-
[enableLongPress]="false"
|
|
1099
|
-
[showDivider]="showDivider()"
|
|
1100
|
-
[disabled]="disabled()"
|
|
1101
|
-
(itemClick)="itemClick.emit()">
|
|
1102
|
-
|
|
1090
|
+
<ds-mobile-list-item [title]="title()" [interactive]="true" [enableLongPress]="false" [showDivider]="showDivider()" [disabled]="disabled()" (itemClick)="itemClick.emit()">
|
|
1103
1091
|
<div class="action-icon-wrapper" content-leading>
|
|
1104
1092
|
<ng-content select="[action-icon]" />
|
|
1105
1093
|
</div>
|
|
1106
|
-
|
|
1094
|
+
|
|
1107
1095
|
<div content-trailing>
|
|
1108
1096
|
<ng-content select="[content-trailing]" />
|
|
1109
1097
|
</div>
|
|
1110
1098
|
</ds-mobile-list-item>
|
|
1111
|
-
`, styles: [":host ::ng-deep ds-mobile-list-item .list-item-inner{align-items:center}:host ::ng-deep ds-mobile-list-item .content-leading{align-items:center;justify-content:center}:host ::ng-deep .action-icon-wrapper{display:flex;align-items:center;justify-content:center;width:100%;height:100%}:host ::ng-deep ds-mobile-list-item .content-main{gap:0;justify-content:center}\n"] }]
|
|
1099
|
+
`, styles: [":host ::ng-deep ds-mobile-list-item .list-item-inner{align-items:center}:host ::ng-deep ds-mobile-list-item .content-leading{align-items:center;justify-content:center}:host ::ng-deep .action-icon-wrapper{display:flex;align-items:center;justify-content:center;width:100%;height:100%}:host ::ng-deep ds-mobile-list-item .content-main{gap:0;justify-content:center}:host{outline:none;--background-focused: transparent;--background-activated: transparent;-webkit-tap-highlight-color:transparent}:host ::ng-deep ds-mobile-list-item{outline:none}\n"] }]
|
|
1112
1100
|
}], propDecorators: { title: [{ type: i0.Input, args: [{ isSignal: true, alias: "title", required: true }] }], showDivider: [{ type: i0.Input, args: [{ isSignal: true, alias: "showDivider", required: false }] }], disabled: [{ type: i0.Input, args: [{ isSignal: true, alias: "disabled", required: false }] }], itemClick: [{ type: i0.Output, args: ["itemClick"] }] } });
|
|
1113
1101
|
|
|
1114
1102
|
/**
|
|
@@ -1224,15 +1212,15 @@ class DsMobileActionsBottomSheetComponent {
|
|
|
1224
1212
|
action: 'edit',
|
|
1225
1213
|
title: 'Rediger',
|
|
1226
1214
|
icon: 'remixEditLine',
|
|
1227
|
-
destructive: false
|
|
1215
|
+
destructive: false,
|
|
1228
1216
|
},
|
|
1229
1217
|
{
|
|
1230
1218
|
action: 'delete',
|
|
1231
1219
|
title: 'Slet',
|
|
1232
1220
|
icon: 'remixDeleteBinLine',
|
|
1233
|
-
destructive: true
|
|
1234
|
-
}
|
|
1235
|
-
]
|
|
1221
|
+
destructive: true,
|
|
1222
|
+
},
|
|
1223
|
+
],
|
|
1236
1224
|
},
|
|
1237
1225
|
{
|
|
1238
1226
|
actions: [
|
|
@@ -1240,16 +1228,16 @@ class DsMobileActionsBottomSheetComponent {
|
|
|
1240
1228
|
action: 'like',
|
|
1241
1229
|
title: 'Synes om',
|
|
1242
1230
|
icon: 'remixHeart3Line',
|
|
1243
|
-
destructive: false
|
|
1231
|
+
destructive: false,
|
|
1244
1232
|
},
|
|
1245
1233
|
{
|
|
1246
1234
|
action: 'reply',
|
|
1247
1235
|
title: 'Svar',
|
|
1248
1236
|
icon: 'remixReplyLine',
|
|
1249
|
-
destructive: false
|
|
1250
|
-
}
|
|
1251
|
-
]
|
|
1252
|
-
}
|
|
1237
|
+
destructive: false,
|
|
1238
|
+
},
|
|
1239
|
+
],
|
|
1240
|
+
},
|
|
1253
1241
|
];
|
|
1254
1242
|
}
|
|
1255
1243
|
else {
|
|
@@ -1261,16 +1249,16 @@ class DsMobileActionsBottomSheetComponent {
|
|
|
1261
1249
|
action: 'like',
|
|
1262
1250
|
title: 'Synes om',
|
|
1263
1251
|
icon: 'remixHeart3Line',
|
|
1264
|
-
destructive: false
|
|
1252
|
+
destructive: false,
|
|
1265
1253
|
},
|
|
1266
1254
|
{
|
|
1267
1255
|
action: 'reply',
|
|
1268
1256
|
title: 'Svar',
|
|
1269
1257
|
icon: 'remixReplyLine',
|
|
1270
|
-
destructive: false
|
|
1271
|
-
}
|
|
1272
|
-
]
|
|
1273
|
-
}
|
|
1258
|
+
destructive: false,
|
|
1259
|
+
},
|
|
1260
|
+
],
|
|
1261
|
+
},
|
|
1274
1262
|
];
|
|
1275
1263
|
}
|
|
1276
1264
|
}, ...(ngDevMode ? [{ debugName: "actionGroups" }] : []));
|
|
@@ -1289,31 +1277,27 @@ class DsMobileActionsBottomSheetComponent {
|
|
|
1289
1277
|
<!-- Actions List -->
|
|
1290
1278
|
<div class="actions-list">
|
|
1291
1279
|
@for (group of actionGroups(); track $index; let isLast = $last) {
|
|
1292
|
-
|
|
1293
|
-
|
|
1294
|
-
|
|
1295
|
-
|
|
1296
|
-
|
|
1297
|
-
|
|
1298
|
-
|
|
1299
|
-
|
|
1300
|
-
|
|
1301
|
-
|
|
1302
|
-
|
|
1303
|
-
size="20px"
|
|
1304
|
-
[class.destructive-icon]="actionItem.destructive" />
|
|
1305
|
-
</ds-mobile-action-list-item>
|
|
1306
|
-
}
|
|
1307
|
-
</div>
|
|
1308
|
-
|
|
1309
|
-
<!-- Full-width divider between groups -->
|
|
1310
|
-
@if (!isLast) {
|
|
1311
|
-
<div class="action-group-divider"></div>
|
|
1280
|
+
<!-- Action Group -->
|
|
1281
|
+
<div class="action-group">
|
|
1282
|
+
@for (actionItem of group.actions; track actionItem.action; let isLastInGroup = $last) {
|
|
1283
|
+
<ds-mobile-action-list-item
|
|
1284
|
+
[title]="actionItem.title"
|
|
1285
|
+
[showDivider]="!isLastInGroup"
|
|
1286
|
+
[class.destructive]="actionItem.destructive"
|
|
1287
|
+
(itemClick)="selectAction(actionItem.action)"
|
|
1288
|
+
>
|
|
1289
|
+
<ds-icon action-icon [name]="actionItem.icon" size="20px" [class.destructive-icon]="actionItem.destructive" />
|
|
1290
|
+
</ds-mobile-action-list-item>
|
|
1312
1291
|
}
|
|
1313
|
-
|
|
1292
|
+
</div>
|
|
1293
|
+
|
|
1294
|
+
<!-- Full-width divider between groups -->
|
|
1295
|
+
@if (!isLast) {
|
|
1296
|
+
<div class="action-group-divider"></div>
|
|
1297
|
+
} }
|
|
1314
1298
|
</div>
|
|
1315
1299
|
</ds-mobile-bottom-sheet-wrapper>
|
|
1316
|
-
`, isInline: true, styles: [":host{display:block}.actions-list{display:flex;flex-direction:column;padding-top:16px}.action-group{display:flex;flex-direction:column;padding:0 16px}::ng-deep ds-mobile-action-list-item ds-mobile-list-item{--color-background-primary: transparent;--color-background-neutral-primary-hover: var(--color-background-neutral-secondary, #f5f5f5)}::ng-deep ds-mobile-action-list-item ds-mobile-list-item .list-item-inner:before{z-index:0!important}::ng-deep ds-mobile-action-list-item ds-mobile-list-item .content-leading,::ng-deep ds-mobile-action-list-item ds-mobile-list-item .content-main,::ng-deep ds-mobile-action-list-item ds-mobile-list-item .content-trailing{position:relative;z-index:1}ds-mobile-action-list-item:last-of-type{--divider-display: none}ds-mobile-action-list-item.destructive{--text-color-default-primary: var(--color-error-base, #ef4444)}.destructive-icon{color:var(--color-error-base, #ef4444)}.action-group-divider{height:1px;background:var(--color-border-subtle, #e5e5e5);margin:8px 0}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "component", type: DsIconComponent, selector: "ds-icon", inputs: ["name", "size", "color", "interactive"] }, { kind: "component", type: DsMobileActionListItemComponent, selector: "ds-mobile-action-list-item", inputs: ["title", "showDivider", "disabled"], outputs: ["itemClick"] }, { kind: "component", type: DsMobileBottomSheetWrapperComponent, selector: "ds-mobile-bottom-sheet-wrapper" }] });
|
|
1300
|
+
`, isInline: true, styles: [":host{display:block;height:auto}.actions-list{display:flex;flex-direction:column;padding-top:16px}.action-group{display:flex;flex-direction:column;padding:0 16px}::ng-deep ds-mobile-action-list-item ds-mobile-list-item{--color-background-primary: transparent;--color-background-neutral-primary-hover: var(--color-background-neutral-secondary, #f5f5f5)}::ng-deep ds-mobile-action-list-item ds-mobile-list-item .list-item-inner:before{z-index:0!important}::ng-deep ds-mobile-action-list-item ds-mobile-list-item .content-leading,::ng-deep ds-mobile-action-list-item ds-mobile-list-item .content-main,::ng-deep ds-mobile-action-list-item ds-mobile-list-item .content-trailing{position:relative;z-index:1}ds-mobile-action-list-item:last-of-type{--divider-display: none}ds-mobile-action-list-item.destructive{--text-color-default-primary: var(--color-error-base, #ef4444)}.destructive-icon{color:var(--color-error-base, #ef4444)}.action-group-divider{height:1px;background:var(--color-border-subtle, #e5e5e5);margin:8px 0}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "component", type: DsIconComponent, selector: "ds-icon", inputs: ["name", "size", "color", "interactive"] }, { kind: "component", type: DsMobileActionListItemComponent, selector: "ds-mobile-action-list-item", inputs: ["title", "showDivider", "disabled"], outputs: ["itemClick"] }, { kind: "component", type: DsMobileBottomSheetWrapperComponent, selector: "ds-mobile-bottom-sheet-wrapper" }] });
|
|
1317
1301
|
}
|
|
1318
1302
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: DsMobileActionsBottomSheetComponent, decorators: [{
|
|
1319
1303
|
type: Component,
|
|
@@ -1322,31 +1306,27 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
|
|
|
1322
1306
|
<!-- Actions List -->
|
|
1323
1307
|
<div class="actions-list">
|
|
1324
1308
|
@for (group of actionGroups(); track $index; let isLast = $last) {
|
|
1325
|
-
|
|
1326
|
-
|
|
1327
|
-
|
|
1328
|
-
|
|
1329
|
-
|
|
1330
|
-
|
|
1331
|
-
|
|
1332
|
-
|
|
1333
|
-
|
|
1334
|
-
|
|
1335
|
-
|
|
1336
|
-
size="20px"
|
|
1337
|
-
[class.destructive-icon]="actionItem.destructive" />
|
|
1338
|
-
</ds-mobile-action-list-item>
|
|
1339
|
-
}
|
|
1340
|
-
</div>
|
|
1341
|
-
|
|
1342
|
-
<!-- Full-width divider between groups -->
|
|
1343
|
-
@if (!isLast) {
|
|
1344
|
-
<div class="action-group-divider"></div>
|
|
1309
|
+
<!-- Action Group -->
|
|
1310
|
+
<div class="action-group">
|
|
1311
|
+
@for (actionItem of group.actions; track actionItem.action; let isLastInGroup = $last) {
|
|
1312
|
+
<ds-mobile-action-list-item
|
|
1313
|
+
[title]="actionItem.title"
|
|
1314
|
+
[showDivider]="!isLastInGroup"
|
|
1315
|
+
[class.destructive]="actionItem.destructive"
|
|
1316
|
+
(itemClick)="selectAction(actionItem.action)"
|
|
1317
|
+
>
|
|
1318
|
+
<ds-icon action-icon [name]="actionItem.icon" size="20px" [class.destructive-icon]="actionItem.destructive" />
|
|
1319
|
+
</ds-mobile-action-list-item>
|
|
1345
1320
|
}
|
|
1346
|
-
|
|
1321
|
+
</div>
|
|
1322
|
+
|
|
1323
|
+
<!-- Full-width divider between groups -->
|
|
1324
|
+
@if (!isLast) {
|
|
1325
|
+
<div class="action-group-divider"></div>
|
|
1326
|
+
} }
|
|
1347
1327
|
</div>
|
|
1348
1328
|
</ds-mobile-bottom-sheet-wrapper>
|
|
1349
|
-
`, styles: [":host{display:block}.actions-list{display:flex;flex-direction:column;padding-top:16px}.action-group{display:flex;flex-direction:column;padding:0 16px}::ng-deep ds-mobile-action-list-item ds-mobile-list-item{--color-background-primary: transparent;--color-background-neutral-primary-hover: var(--color-background-neutral-secondary, #f5f5f5)}::ng-deep ds-mobile-action-list-item ds-mobile-list-item .list-item-inner:before{z-index:0!important}::ng-deep ds-mobile-action-list-item ds-mobile-list-item .content-leading,::ng-deep ds-mobile-action-list-item ds-mobile-list-item .content-main,::ng-deep ds-mobile-action-list-item ds-mobile-list-item .content-trailing{position:relative;z-index:1}ds-mobile-action-list-item:last-of-type{--divider-display: none}ds-mobile-action-list-item.destructive{--text-color-default-primary: var(--color-error-base, #ef4444)}.destructive-icon{color:var(--color-error-base, #ef4444)}.action-group-divider{height:1px;background:var(--color-border-subtle, #e5e5e5);margin:8px 0}\n"] }]
|
|
1329
|
+
`, styles: [":host{display:block;height:auto}.actions-list{display:flex;flex-direction:column;padding-top:16px}.action-group{display:flex;flex-direction:column;padding:0 16px}::ng-deep ds-mobile-action-list-item ds-mobile-list-item{--color-background-primary: transparent;--color-background-neutral-primary-hover: var(--color-background-neutral-secondary, #f5f5f5)}::ng-deep ds-mobile-action-list-item ds-mobile-list-item .list-item-inner:before{z-index:0!important}::ng-deep ds-mobile-action-list-item ds-mobile-list-item .content-leading,::ng-deep ds-mobile-action-list-item ds-mobile-list-item .content-main,::ng-deep ds-mobile-action-list-item ds-mobile-list-item .content-trailing{position:relative;z-index:1}ds-mobile-action-list-item:last-of-type{--divider-display: none}ds-mobile-action-list-item.destructive{--text-color-default-primary: var(--color-error-base, #ef4444)}.destructive-icon{color:var(--color-error-base, #ef4444)}.action-group-divider{height:1px;background:var(--color-border-subtle, #e5e5e5);margin:8px 0}\n"] }]
|
|
1350
1330
|
}], ctorParameters: () => [{ type: i1.ModalController }], propDecorators: { customActionGroups: [{
|
|
1351
1331
|
type: Input
|
|
1352
1332
|
}], isOwnContent: [{
|
|
@@ -2005,11 +1985,36 @@ class DsMobileProfileActionsSheetComponent {
|
|
|
2005
1985
|
* Available languages for selection
|
|
2006
1986
|
*/
|
|
2007
1987
|
availableLanguages = [
|
|
2008
|
-
{
|
|
2009
|
-
|
|
2010
|
-
|
|
2011
|
-
|
|
2012
|
-
|
|
1988
|
+
{
|
|
1989
|
+
code: 'da',
|
|
1990
|
+
nativeName: 'Dansk',
|
|
1991
|
+
englishName: 'Danish',
|
|
1992
|
+
flagIcon: '/Assets/country-flags/denmark.svg',
|
|
1993
|
+
},
|
|
1994
|
+
{
|
|
1995
|
+
code: 'en',
|
|
1996
|
+
nativeName: 'English',
|
|
1997
|
+
englishName: 'English',
|
|
1998
|
+
flagIcon: '/Assets/country-flags/united kingdom.svg',
|
|
1999
|
+
},
|
|
2000
|
+
{
|
|
2001
|
+
code: 'sv',
|
|
2002
|
+
nativeName: 'Svenska',
|
|
2003
|
+
englishName: 'Swedish',
|
|
2004
|
+
flagIcon: '/Assets/country-flags/sweden.svg',
|
|
2005
|
+
},
|
|
2006
|
+
{
|
|
2007
|
+
code: 'no',
|
|
2008
|
+
nativeName: 'Norsk',
|
|
2009
|
+
englishName: 'Norwegian',
|
|
2010
|
+
flagIcon: '/Assets/country-flags/norway.svg',
|
|
2011
|
+
},
|
|
2012
|
+
{
|
|
2013
|
+
code: 'de',
|
|
2014
|
+
nativeName: 'Deutsch',
|
|
2015
|
+
englishName: 'German',
|
|
2016
|
+
flagIcon: '/Assets/country-flags/germany.svg',
|
|
2017
|
+
},
|
|
2013
2018
|
];
|
|
2014
2019
|
/**
|
|
2015
2020
|
* Current view state
|
|
@@ -2084,7 +2089,7 @@ class DsMobileProfileActionsSheetComponent {
|
|
|
2084
2089
|
* Get current language flag icon
|
|
2085
2090
|
*/
|
|
2086
2091
|
getCurrentLanguageFlag() {
|
|
2087
|
-
const language = this.availableLanguages.find(lang => lang.code === this.currentLanguage);
|
|
2092
|
+
const language = this.availableLanguages.find((lang) => lang.code === this.currentLanguage);
|
|
2088
2093
|
return language?.flagIcon || '';
|
|
2089
2094
|
}
|
|
2090
2095
|
/**
|
|
@@ -2094,9 +2099,7 @@ class DsMobileProfileActionsSheetComponent {
|
|
|
2094
2099
|
if (!this.viewContainer || !this.sheetWrapper)
|
|
2095
2100
|
return;
|
|
2096
2101
|
const container = this.viewContainer.nativeElement;
|
|
2097
|
-
const activeView = this.currentView() === 'main'
|
|
2098
|
-
? container.querySelector('.main-view')
|
|
2099
|
-
: container.querySelector('.language-view');
|
|
2102
|
+
const activeView = this.currentView() === 'main' ? container.querySelector('.main-view') : container.querySelector('.language-view');
|
|
2100
2103
|
if (activeView instanceof HTMLElement) {
|
|
2101
2104
|
const height = activeView.scrollHeight;
|
|
2102
2105
|
this.containerHeight.set(height);
|
|
@@ -2172,7 +2175,7 @@ class DsMobileProfileActionsSheetComponent {
|
|
|
2172
2175
|
* Helper to create delay promise
|
|
2173
2176
|
*/
|
|
2174
2177
|
delay(ms) {
|
|
2175
|
-
return new Promise(resolve => setTimeout(resolve, ms));
|
|
2178
|
+
return new Promise((resolve) => setTimeout(resolve, ms));
|
|
2176
2179
|
}
|
|
2177
2180
|
/**
|
|
2178
2181
|
* Handle regular action selection
|
|
@@ -2185,113 +2188,80 @@ class DsMobileProfileActionsSheetComponent {
|
|
|
2185
2188
|
<ds-mobile-bottom-sheet-wrapper>
|
|
2186
2189
|
<div class="profile-sheet-content" #sheetWrapper>
|
|
2187
2190
|
<!-- View Container with CSS Animation -->
|
|
2188
|
-
<div
|
|
2189
|
-
class="view-container"
|
|
2190
|
-
#viewContainer
|
|
2191
|
-
[class.show-language]="currentView() === 'language'"
|
|
2192
|
-
[style.height.px]="containerHeight()">
|
|
2193
|
-
|
|
2191
|
+
<div class="view-container" #viewContainer [class.show-language]="currentView() === 'language'" [style.height.px]="containerHeight()">
|
|
2194
2192
|
<!-- Main Actions View -->
|
|
2195
2193
|
<div class="view main-view">
|
|
2196
2194
|
<div class="actions-list">
|
|
2197
2195
|
@for (group of actionGroups; track $index; let isLast = $last) {
|
|
2198
|
-
|
|
2199
|
-
|
|
2200
|
-
|
|
2201
|
-
|
|
2202
|
-
|
|
2203
|
-
|
|
2204
|
-
|
|
2205
|
-
|
|
2206
|
-
|
|
2207
|
-
|
|
2208
|
-
|
|
2209
|
-
|
|
2210
|
-
|
|
2211
|
-
|
|
2212
|
-
|
|
2213
|
-
|
|
2214
|
-
|
|
2215
|
-
|
|
2216
|
-
|
|
2217
|
-
|
|
2218
|
-
|
|
2219
|
-
}
|
|
2220
|
-
@if (actionItem.subtitle) {
|
|
2221
|
-
<span class="subtitle">{{ actionItem.subtitle }}</span>
|
|
2222
|
-
}
|
|
2223
|
-
@if (actionItem.showChevron) {
|
|
2224
|
-
<ds-icon name="remixArrowRightSLine" size="20px" class="chevron-icon" />
|
|
2225
|
-
}
|
|
2226
|
-
</div>
|
|
2227
|
-
}
|
|
2228
|
-
</ds-mobile-action-list-item>
|
|
2196
|
+
<!-- Action Group -->
|
|
2197
|
+
<div class="action-group">
|
|
2198
|
+
@for (actionItem of group.actions; track actionItem.action; let isLastInGroup = $last) {
|
|
2199
|
+
<ds-mobile-action-list-item
|
|
2200
|
+
[title]="actionItem.title"
|
|
2201
|
+
[showDivider]="!isLastInGroup"
|
|
2202
|
+
[class.destructive]="actionItem.destructive"
|
|
2203
|
+
(itemClick)="handleActionClick(actionItem)"
|
|
2204
|
+
>
|
|
2205
|
+
<ds-icon action-icon [name]="actionItem.icon" size="20px" [class.destructive-icon]="actionItem.destructive" />
|
|
2206
|
+
|
|
2207
|
+
@if (actionItem.showChevron || actionItem.subtitle || actionItem.flagIcon) {
|
|
2208
|
+
<div content-trailing class="trailing-content">
|
|
2209
|
+
@if (actionItem.flagIcon) {
|
|
2210
|
+
<img [src]="actionItem.flagIcon" [alt]="actionItem.title + ' flag'" class="subtitle-flag" />
|
|
2211
|
+
} @if (actionItem.subtitle) {
|
|
2212
|
+
<span class="subtitle">{{ actionItem.subtitle }}</span>
|
|
2213
|
+
} @if (actionItem.showChevron) {
|
|
2214
|
+
<ds-icon name="remixArrowRightSLine" size="20px" class="chevron-icon" />
|
|
2215
|
+
}
|
|
2216
|
+
</div>
|
|
2229
2217
|
}
|
|
2230
|
-
</
|
|
2231
|
-
|
|
2232
|
-
<!-- Full-width divider between groups -->
|
|
2233
|
-
@if (!isLast) {
|
|
2234
|
-
<div class="action-group-divider"></div>
|
|
2218
|
+
</ds-mobile-action-list-item>
|
|
2235
2219
|
}
|
|
2236
|
-
|
|
2220
|
+
</div>
|
|
2221
|
+
|
|
2222
|
+
<!-- Full-width divider between groups -->
|
|
2223
|
+
@if (!isLast) {
|
|
2224
|
+
<div class="action-group-divider"></div>
|
|
2225
|
+
} }
|
|
2237
2226
|
</div>
|
|
2238
2227
|
</div>
|
|
2239
|
-
|
|
2228
|
+
|
|
2240
2229
|
<!-- Language Selection View -->
|
|
2241
2230
|
<div class="view language-view">
|
|
2242
2231
|
<!-- Header with back and done buttons -->
|
|
2243
2232
|
<ion-header>
|
|
2244
2233
|
<ion-toolbar>
|
|
2245
2234
|
<ion-buttons slot="start">
|
|
2246
|
-
<ds-button
|
|
2247
|
-
variant="secondary"
|
|
2248
|
-
size="sm"
|
|
2249
|
-
(clicked)="navigateBack()">
|
|
2250
|
-
Tilbage
|
|
2251
|
-
</ds-button>
|
|
2235
|
+
<ds-button variant="secondary" size="sm" (clicked)="navigateBack()"> Tilbage </ds-button>
|
|
2252
2236
|
</ion-buttons>
|
|
2253
2237
|
<ion-title>Sprog</ion-title>
|
|
2254
2238
|
<ion-buttons slot="end">
|
|
2255
|
-
<ds-button
|
|
2256
|
-
variant="primary"
|
|
2257
|
-
size="sm"
|
|
2258
|
-
[disabled]="!hasLanguageChanged()"
|
|
2259
|
-
(clicked)="confirmLanguageSelection()">
|
|
2260
|
-
Færdig
|
|
2261
|
-
</ds-button>
|
|
2239
|
+
<ds-button variant="primary" size="sm" [disabled]="!hasLanguageChanged()" (clicked)="confirmLanguageSelection()"> Færdig </ds-button>
|
|
2262
2240
|
</ion-buttons>
|
|
2263
2241
|
</ion-toolbar>
|
|
2264
2242
|
</ion-header>
|
|
2265
|
-
|
|
2243
|
+
|
|
2266
2244
|
<!-- Language Options -->
|
|
2267
2245
|
<div class="language-list">
|
|
2268
2246
|
@for (language of availableLanguages; track language.code; let isLast = $last) {
|
|
2269
|
-
|
|
2270
|
-
|
|
2271
|
-
|
|
2272
|
-
|
|
2273
|
-
|
|
2274
|
-
|
|
2275
|
-
|
|
2276
|
-
|
|
2277
|
-
[alt]="language.englishName + ' flag'"
|
|
2278
|
-
class="language-flag" />
|
|
2279
|
-
|
|
2280
|
-
<!-- Radio Indicator in trailing slot -->
|
|
2281
|
-
<div content-trailing class="radio-wrapper">
|
|
2282
|
-
<div class="radio-indicator" [class.radio-checked]="language.code === selectedLanguage()">
|
|
2283
|
-
<div class="radio-inner"></div>
|
|
2284
|
-
</div>
|
|
2247
|
+
<ds-mobile-action-list-item [title]="language.nativeName" [showDivider]="!isLast" (itemClick)="selectLanguage(language.code)">
|
|
2248
|
+
<!-- Country Flag -->
|
|
2249
|
+
<img action-icon [src]="language.flagIcon" [alt]="language.englishName + ' flag'" class="language-flag" />
|
|
2250
|
+
|
|
2251
|
+
<!-- Radio Indicator in trailing slot -->
|
|
2252
|
+
<div content-trailing class="radio-wrapper">
|
|
2253
|
+
<div class="radio-indicator" [class.radio-checked]="language.code === selectedLanguage()">
|
|
2254
|
+
<div class="radio-inner"></div>
|
|
2285
2255
|
</div>
|
|
2286
|
-
</
|
|
2256
|
+
</div>
|
|
2257
|
+
</ds-mobile-action-list-item>
|
|
2287
2258
|
}
|
|
2288
2259
|
</div>
|
|
2289
2260
|
</div>
|
|
2290
|
-
|
|
2291
2261
|
</div>
|
|
2292
2262
|
</div>
|
|
2293
2263
|
</ds-mobile-bottom-sheet-wrapper>
|
|
2294
|
-
`, isInline: true, styles: [":host{display:block}.profile-sheet-content{overflow:hidden;width:100%}.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-language{transform:translate(-50%)}.view{width:100%}.main-view{padding-top:16px}.actions-list{display:flex;flex-direction:column}.action-group{display:flex;flex-direction:column;padding:0 16px}.language-view{display:flex;flex-direction:column}ion-header{box-shadow:none}:host ::ng-deep .header-ios ion-toolbar:last-of-type{--border-width: 0 !important}ion-toolbar{--background: var(--color-background-neutral-primary, #ffffff);--border-width: 0 !important;--border-color: var(--color-border-default, #e5e7eb) !important;--padding-top: 12px;--padding-bottom: 8px;--min-height: 56px;border-bottom:1px solid var(--color-border-default, #e5e7eb)!important}ion-toolbar::part(native){border-bottom:1px solid var(--color-border-default, #e5e7eb)!important}ion-title{font-family:Brockmann,sans-serif;font-size:var(--font-size-base);font-weight:600;line-height:22px;letter-spacing:-.4px;color:var(--color-text-primary, #1a1a1a)}ion-buttons[slot=start] ds-button{--border-radius: 100px}ion-buttons[slot=start] ds-button::ng-deep button{border-radius:100px}ion-buttons[slot=end] ds-button{--border-radius: 100px}ion-buttons[slot=end] ds-button::ng-deep button{border-radius:100px}.language-list{padding:8px 16px}.language-flag{width:24px;height:24px;object-fit:cover}.radio-wrapper{display:flex;align-items:center;justify-content:center}.radio-indicator{width:20px;height:20px;border:2px solid var(--color-border-default, #d1d5db);border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all .2s ease;flex-shrink:0}.radio-indicator.radio-checked{border-color:var(--color-brand-base, #7c3aed)}.radio-inner{width:10px;height:10px;border-radius:50%;background:transparent;transition:background .2s ease}.radio-checked .radio-inner{background:var(--color-brand-base, #7c3aed)}.trailing-content{display:flex;align-items:center;gap:8px}.subtitle-flag{width:16px;height:16px;object-fit:cover;border-radius:2px}.subtitle{font-size:15px;color:var(--color-text-subtle, #6b7280);line-height:20px}.chevron-icon{color:var(--color-text-secondary, #737373)}.check-icon{color:var(--color-primary-base, #7c3aed)}::ng-deep ds-mobile-action-list-item ds-mobile-list-item{--color-background-primary: transparent;--color-background-neutral-primary-hover: var(--color-background-neutral-secondary, #f5f5f5)}::ng-deep ds-mobile-action-list-item ds-mobile-list-item .list-item-inner:before{z-index:0!important}::ng-deep ds-mobile-action-list-item ds-mobile-list-item .content-leading,::ng-deep ds-mobile-action-list-item ds-mobile-list-item .content-main,::ng-deep ds-mobile-action-list-item ds-mobile-list-item .content-trailing{position:relative;z-index:1}ds-mobile-action-list-item.destructive{--text-color-default-primary: var(--color-error-base, #ef4444)}.destructive-icon{color:var(--color-error-base, #ef4444)}.action-group-divider{height:1px;background:var(--color-border-subtle, #e5e5e5);margin:8px 0}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "component", type: DsIconComponent, selector: "ds-icon", inputs: ["name", "size", "color", "interactive"] }, { kind: "component", type: DsMobileActionListItemComponent, selector: "ds-mobile-action-list-item", inputs: ["title", "showDivider", "disabled"], outputs: ["itemClick"] }, { 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: IonHeader, selector: "ion-header", inputs: ["collapse", "mode", "translucent"] }, { kind: "component", type: IonToolbar, selector: "ion-toolbar", inputs: ["color", "mode"] }, { kind: "component", type: IonTitle, selector: "ion-title", inputs: ["color", "size"] }, { kind: "component", type: IonButtons, selector: "ion-buttons", inputs: ["collapse"] }, { kind: "component", type: DsMobileBottomSheetWrapperComponent, selector: "ds-mobile-bottom-sheet-wrapper" }] });
|
|
2264
|
+
`, isInline: true, styles: [":host{display:block;height:auto}.profile-sheet-content{overflow:hidden;width:100%}.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-language{transform:translate(-50%)}.view{width:100%}.main-view{padding-top:16px}.actions-list{display:flex;flex-direction:column}.action-group{display:flex;flex-direction:column;padding:0 16px}.language-view{display:flex;flex-direction:column}ion-header{box-shadow:none}:host ::ng-deep .header-ios ion-toolbar:last-of-type{--border-width: 0 !important}ion-toolbar{--background: var(--color-background-neutral-primary, #ffffff);--border-width: 0 !important;--border-color: var(--color-border-default, #e5e7eb) !important;--padding-top: 12px;--padding-bottom: 8px;--min-height: 56px;border-bottom:1px solid var(--color-border-default, #e5e7eb)!important}ion-toolbar::part(native){border-bottom:1px solid var(--color-border-default, #e5e7eb)!important}ion-title{font-family:Brockmann,sans-serif;font-size:var(--font-size-base);font-weight:600;line-height:22px;letter-spacing:-.4px;color:var(--color-text-primary, #1a1a1a)}ion-buttons[slot=start] ds-button{--border-radius: 100px}ion-buttons[slot=start] ds-button::ng-deep button{border-radius:100px}ion-buttons[slot=end] ds-button{--border-radius: 100px}ion-buttons[slot=end] ds-button::ng-deep button{border-radius:100px}.language-list{padding:8px 16px}.language-flag{width:24px;height:24px;object-fit:cover}.radio-wrapper{display:flex;align-items:center;justify-content:center}.radio-indicator{width:20px;height:20px;border:2px solid var(--color-border-default, #d1d5db);border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all .2s ease;flex-shrink:0}.radio-indicator.radio-checked{border-color:var(--color-brand-base, #7c3aed)}.radio-inner{width:10px;height:10px;border-radius:50%;background:transparent;transition:background .2s ease}.radio-checked .radio-inner{background:var(--color-brand-base, #7c3aed)}.trailing-content{display:flex;align-items:center;gap:8px}.subtitle-flag{width:16px;height:16px;object-fit:cover;border-radius:2px}.subtitle{font-size:15px;color:var(--color-text-subtle, #6b7280);line-height:20px}.chevron-icon{color:var(--color-text-secondary, #737373)}.check-icon{color:var(--color-primary-base, #7c3aed)}::ng-deep ds-mobile-action-list-item ds-mobile-list-item{--color-background-primary: transparent;--color-background-neutral-primary-hover: var(--color-background-neutral-secondary, #f5f5f5)}::ng-deep ds-mobile-action-list-item ds-mobile-list-item .list-item-inner:before{z-index:0!important}::ng-deep ds-mobile-action-list-item ds-mobile-list-item .content-leading,::ng-deep ds-mobile-action-list-item ds-mobile-list-item .content-main,::ng-deep ds-mobile-action-list-item ds-mobile-list-item .content-trailing{position:relative;z-index:1}ds-mobile-action-list-item.destructive{--text-color-default-primary: var(--color-error-base, #ef4444)}.destructive-icon{color:var(--color-error-base, #ef4444)}.action-group-divider{height:1px;background:var(--color-border-subtle, #e5e5e5);margin:8px 0}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "component", type: DsIconComponent, selector: "ds-icon", inputs: ["name", "size", "color", "interactive"] }, { kind: "component", type: DsMobileActionListItemComponent, selector: "ds-mobile-action-list-item", inputs: ["title", "showDivider", "disabled"], outputs: ["itemClick"] }, { 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: IonHeader, selector: "ion-header", inputs: ["collapse", "mode", "translucent"] }, { kind: "component", type: IonToolbar, selector: "ion-toolbar", inputs: ["color", "mode"] }, { kind: "component", type: IonTitle, selector: "ion-title", inputs: ["color", "size"] }, { kind: "component", type: IonButtons, selector: "ion-buttons", inputs: ["collapse"] }, { kind: "component", type: DsMobileBottomSheetWrapperComponent, selector: "ds-mobile-bottom-sheet-wrapper" }] });
|
|
2295
2265
|
}
|
|
2296
2266
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: DsMobileProfileActionsSheetComponent, decorators: [{
|
|
2297
2267
|
type: Component,
|
|
@@ -2299,113 +2269,80 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
|
|
|
2299
2269
|
<ds-mobile-bottom-sheet-wrapper>
|
|
2300
2270
|
<div class="profile-sheet-content" #sheetWrapper>
|
|
2301
2271
|
<!-- View Container with CSS Animation -->
|
|
2302
|
-
<div
|
|
2303
|
-
class="view-container"
|
|
2304
|
-
#viewContainer
|
|
2305
|
-
[class.show-language]="currentView() === 'language'"
|
|
2306
|
-
[style.height.px]="containerHeight()">
|
|
2307
|
-
|
|
2272
|
+
<div class="view-container" #viewContainer [class.show-language]="currentView() === 'language'" [style.height.px]="containerHeight()">
|
|
2308
2273
|
<!-- Main Actions View -->
|
|
2309
2274
|
<div class="view main-view">
|
|
2310
2275
|
<div class="actions-list">
|
|
2311
2276
|
@for (group of actionGroups; track $index; let isLast = $last) {
|
|
2312
|
-
|
|
2313
|
-
|
|
2314
|
-
|
|
2315
|
-
|
|
2316
|
-
|
|
2317
|
-
|
|
2318
|
-
|
|
2319
|
-
|
|
2320
|
-
|
|
2321
|
-
|
|
2322
|
-
|
|
2323
|
-
|
|
2324
|
-
|
|
2325
|
-
|
|
2326
|
-
|
|
2327
|
-
|
|
2328
|
-
|
|
2329
|
-
|
|
2330
|
-
|
|
2331
|
-
|
|
2332
|
-
|
|
2333
|
-
}
|
|
2334
|
-
@if (actionItem.subtitle) {
|
|
2335
|
-
<span class="subtitle">{{ actionItem.subtitle }}</span>
|
|
2336
|
-
}
|
|
2337
|
-
@if (actionItem.showChevron) {
|
|
2338
|
-
<ds-icon name="remixArrowRightSLine" size="20px" class="chevron-icon" />
|
|
2339
|
-
}
|
|
2340
|
-
</div>
|
|
2341
|
-
}
|
|
2342
|
-
</ds-mobile-action-list-item>
|
|
2277
|
+
<!-- Action Group -->
|
|
2278
|
+
<div class="action-group">
|
|
2279
|
+
@for (actionItem of group.actions; track actionItem.action; let isLastInGroup = $last) {
|
|
2280
|
+
<ds-mobile-action-list-item
|
|
2281
|
+
[title]="actionItem.title"
|
|
2282
|
+
[showDivider]="!isLastInGroup"
|
|
2283
|
+
[class.destructive]="actionItem.destructive"
|
|
2284
|
+
(itemClick)="handleActionClick(actionItem)"
|
|
2285
|
+
>
|
|
2286
|
+
<ds-icon action-icon [name]="actionItem.icon" size="20px" [class.destructive-icon]="actionItem.destructive" />
|
|
2287
|
+
|
|
2288
|
+
@if (actionItem.showChevron || actionItem.subtitle || actionItem.flagIcon) {
|
|
2289
|
+
<div content-trailing class="trailing-content">
|
|
2290
|
+
@if (actionItem.flagIcon) {
|
|
2291
|
+
<img [src]="actionItem.flagIcon" [alt]="actionItem.title + ' flag'" class="subtitle-flag" />
|
|
2292
|
+
} @if (actionItem.subtitle) {
|
|
2293
|
+
<span class="subtitle">{{ actionItem.subtitle }}</span>
|
|
2294
|
+
} @if (actionItem.showChevron) {
|
|
2295
|
+
<ds-icon name="remixArrowRightSLine" size="20px" class="chevron-icon" />
|
|
2296
|
+
}
|
|
2297
|
+
</div>
|
|
2343
2298
|
}
|
|
2344
|
-
</
|
|
2345
|
-
|
|
2346
|
-
<!-- Full-width divider between groups -->
|
|
2347
|
-
@if (!isLast) {
|
|
2348
|
-
<div class="action-group-divider"></div>
|
|
2299
|
+
</ds-mobile-action-list-item>
|
|
2349
2300
|
}
|
|
2350
|
-
|
|
2301
|
+
</div>
|
|
2302
|
+
|
|
2303
|
+
<!-- Full-width divider between groups -->
|
|
2304
|
+
@if (!isLast) {
|
|
2305
|
+
<div class="action-group-divider"></div>
|
|
2306
|
+
} }
|
|
2351
2307
|
</div>
|
|
2352
2308
|
</div>
|
|
2353
|
-
|
|
2309
|
+
|
|
2354
2310
|
<!-- Language Selection View -->
|
|
2355
2311
|
<div class="view language-view">
|
|
2356
2312
|
<!-- Header with back and done buttons -->
|
|
2357
2313
|
<ion-header>
|
|
2358
2314
|
<ion-toolbar>
|
|
2359
2315
|
<ion-buttons slot="start">
|
|
2360
|
-
<ds-button
|
|
2361
|
-
variant="secondary"
|
|
2362
|
-
size="sm"
|
|
2363
|
-
(clicked)="navigateBack()">
|
|
2364
|
-
Tilbage
|
|
2365
|
-
</ds-button>
|
|
2316
|
+
<ds-button variant="secondary" size="sm" (clicked)="navigateBack()"> Tilbage </ds-button>
|
|
2366
2317
|
</ion-buttons>
|
|
2367
2318
|
<ion-title>Sprog</ion-title>
|
|
2368
2319
|
<ion-buttons slot="end">
|
|
2369
|
-
<ds-button
|
|
2370
|
-
variant="primary"
|
|
2371
|
-
size="sm"
|
|
2372
|
-
[disabled]="!hasLanguageChanged()"
|
|
2373
|
-
(clicked)="confirmLanguageSelection()">
|
|
2374
|
-
Færdig
|
|
2375
|
-
</ds-button>
|
|
2320
|
+
<ds-button variant="primary" size="sm" [disabled]="!hasLanguageChanged()" (clicked)="confirmLanguageSelection()"> Færdig </ds-button>
|
|
2376
2321
|
</ion-buttons>
|
|
2377
2322
|
</ion-toolbar>
|
|
2378
2323
|
</ion-header>
|
|
2379
|
-
|
|
2324
|
+
|
|
2380
2325
|
<!-- Language Options -->
|
|
2381
2326
|
<div class="language-list">
|
|
2382
2327
|
@for (language of availableLanguages; track language.code; let isLast = $last) {
|
|
2383
|
-
|
|
2384
|
-
|
|
2385
|
-
|
|
2386
|
-
|
|
2387
|
-
|
|
2388
|
-
|
|
2389
|
-
|
|
2390
|
-
|
|
2391
|
-
[alt]="language.englishName + ' flag'"
|
|
2392
|
-
class="language-flag" />
|
|
2393
|
-
|
|
2394
|
-
<!-- Radio Indicator in trailing slot -->
|
|
2395
|
-
<div content-trailing class="radio-wrapper">
|
|
2396
|
-
<div class="radio-indicator" [class.radio-checked]="language.code === selectedLanguage()">
|
|
2397
|
-
<div class="radio-inner"></div>
|
|
2398
|
-
</div>
|
|
2328
|
+
<ds-mobile-action-list-item [title]="language.nativeName" [showDivider]="!isLast" (itemClick)="selectLanguage(language.code)">
|
|
2329
|
+
<!-- Country Flag -->
|
|
2330
|
+
<img action-icon [src]="language.flagIcon" [alt]="language.englishName + ' flag'" class="language-flag" />
|
|
2331
|
+
|
|
2332
|
+
<!-- Radio Indicator in trailing slot -->
|
|
2333
|
+
<div content-trailing class="radio-wrapper">
|
|
2334
|
+
<div class="radio-indicator" [class.radio-checked]="language.code === selectedLanguage()">
|
|
2335
|
+
<div class="radio-inner"></div>
|
|
2399
2336
|
</div>
|
|
2400
|
-
</
|
|
2337
|
+
</div>
|
|
2338
|
+
</ds-mobile-action-list-item>
|
|
2401
2339
|
}
|
|
2402
2340
|
</div>
|
|
2403
2341
|
</div>
|
|
2404
|
-
|
|
2405
2342
|
</div>
|
|
2406
2343
|
</div>
|
|
2407
2344
|
</ds-mobile-bottom-sheet-wrapper>
|
|
2408
|
-
`, styles: [":host{display:block}.profile-sheet-content{overflow:hidden;width:100%}.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-language{transform:translate(-50%)}.view{width:100%}.main-view{padding-top:16px}.actions-list{display:flex;flex-direction:column}.action-group{display:flex;flex-direction:column;padding:0 16px}.language-view{display:flex;flex-direction:column}ion-header{box-shadow:none}:host ::ng-deep .header-ios ion-toolbar:last-of-type{--border-width: 0 !important}ion-toolbar{--background: var(--color-background-neutral-primary, #ffffff);--border-width: 0 !important;--border-color: var(--color-border-default, #e5e7eb) !important;--padding-top: 12px;--padding-bottom: 8px;--min-height: 56px;border-bottom:1px solid var(--color-border-default, #e5e7eb)!important}ion-toolbar::part(native){border-bottom:1px solid var(--color-border-default, #e5e7eb)!important}ion-title{font-family:Brockmann,sans-serif;font-size:var(--font-size-base);font-weight:600;line-height:22px;letter-spacing:-.4px;color:var(--color-text-primary, #1a1a1a)}ion-buttons[slot=start] ds-button{--border-radius: 100px}ion-buttons[slot=start] ds-button::ng-deep button{border-radius:100px}ion-buttons[slot=end] ds-button{--border-radius: 100px}ion-buttons[slot=end] ds-button::ng-deep button{border-radius:100px}.language-list{padding:8px 16px}.language-flag{width:24px;height:24px;object-fit:cover}.radio-wrapper{display:flex;align-items:center;justify-content:center}.radio-indicator{width:20px;height:20px;border:2px solid var(--color-border-default, #d1d5db);border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all .2s ease;flex-shrink:0}.radio-indicator.radio-checked{border-color:var(--color-brand-base, #7c3aed)}.radio-inner{width:10px;height:10px;border-radius:50%;background:transparent;transition:background .2s ease}.radio-checked .radio-inner{background:var(--color-brand-base, #7c3aed)}.trailing-content{display:flex;align-items:center;gap:8px}.subtitle-flag{width:16px;height:16px;object-fit:cover;border-radius:2px}.subtitle{font-size:15px;color:var(--color-text-subtle, #6b7280);line-height:20px}.chevron-icon{color:var(--color-text-secondary, #737373)}.check-icon{color:var(--color-primary-base, #7c3aed)}::ng-deep ds-mobile-action-list-item ds-mobile-list-item{--color-background-primary: transparent;--color-background-neutral-primary-hover: var(--color-background-neutral-secondary, #f5f5f5)}::ng-deep ds-mobile-action-list-item ds-mobile-list-item .list-item-inner:before{z-index:0!important}::ng-deep ds-mobile-action-list-item ds-mobile-list-item .content-leading,::ng-deep ds-mobile-action-list-item ds-mobile-list-item .content-main,::ng-deep ds-mobile-action-list-item ds-mobile-list-item .content-trailing{position:relative;z-index:1}ds-mobile-action-list-item.destructive{--text-color-default-primary: var(--color-error-base, #ef4444)}.destructive-icon{color:var(--color-error-base, #ef4444)}.action-group-divider{height:1px;background:var(--color-border-subtle, #e5e5e5);margin:8px 0}\n"] }]
|
|
2345
|
+
`, styles: [":host{display:block;height:auto}.profile-sheet-content{overflow:hidden;width:100%}.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-language{transform:translate(-50%)}.view{width:100%}.main-view{padding-top:16px}.actions-list{display:flex;flex-direction:column}.action-group{display:flex;flex-direction:column;padding:0 16px}.language-view{display:flex;flex-direction:column}ion-header{box-shadow:none}:host ::ng-deep .header-ios ion-toolbar:last-of-type{--border-width: 0 !important}ion-toolbar{--background: var(--color-background-neutral-primary, #ffffff);--border-width: 0 !important;--border-color: var(--color-border-default, #e5e7eb) !important;--padding-top: 12px;--padding-bottom: 8px;--min-height: 56px;border-bottom:1px solid var(--color-border-default, #e5e7eb)!important}ion-toolbar::part(native){border-bottom:1px solid var(--color-border-default, #e5e7eb)!important}ion-title{font-family:Brockmann,sans-serif;font-size:var(--font-size-base);font-weight:600;line-height:22px;letter-spacing:-.4px;color:var(--color-text-primary, #1a1a1a)}ion-buttons[slot=start] ds-button{--border-radius: 100px}ion-buttons[slot=start] ds-button::ng-deep button{border-radius:100px}ion-buttons[slot=end] ds-button{--border-radius: 100px}ion-buttons[slot=end] ds-button::ng-deep button{border-radius:100px}.language-list{padding:8px 16px}.language-flag{width:24px;height:24px;object-fit:cover}.radio-wrapper{display:flex;align-items:center;justify-content:center}.radio-indicator{width:20px;height:20px;border:2px solid var(--color-border-default, #d1d5db);border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all .2s ease;flex-shrink:0}.radio-indicator.radio-checked{border-color:var(--color-brand-base, #7c3aed)}.radio-inner{width:10px;height:10px;border-radius:50%;background:transparent;transition:background .2s ease}.radio-checked .radio-inner{background:var(--color-brand-base, #7c3aed)}.trailing-content{display:flex;align-items:center;gap:8px}.subtitle-flag{width:16px;height:16px;object-fit:cover;border-radius:2px}.subtitle{font-size:15px;color:var(--color-text-subtle, #6b7280);line-height:20px}.chevron-icon{color:var(--color-text-secondary, #737373)}.check-icon{color:var(--color-primary-base, #7c3aed)}::ng-deep ds-mobile-action-list-item ds-mobile-list-item{--color-background-primary: transparent;--color-background-neutral-primary-hover: var(--color-background-neutral-secondary, #f5f5f5)}::ng-deep ds-mobile-action-list-item ds-mobile-list-item .list-item-inner:before{z-index:0!important}::ng-deep ds-mobile-action-list-item ds-mobile-list-item .content-leading,::ng-deep ds-mobile-action-list-item ds-mobile-list-item .content-main,::ng-deep ds-mobile-action-list-item ds-mobile-list-item .content-trailing{position:relative;z-index:1}ds-mobile-action-list-item.destructive{--text-color-default-primary: var(--color-error-base, #ef4444)}.destructive-icon{color:var(--color-error-base, #ef4444)}.action-group-divider{height:1px;background:var(--color-border-subtle, #e5e5e5);margin:8px 0}\n"] }]
|
|
2409
2346
|
}], ctorParameters: () => [{ type: i1.ModalController }, { type: i0.Injector }], propDecorators: { actionGroups: [{
|
|
2410
2347
|
type: Input
|
|
2411
2348
|
}], currentLanguage: [{
|
|
@@ -2435,6 +2372,9 @@ class UserService {
|
|
|
2435
2372
|
avatarType = this._avatarType.asReadonly();
|
|
2436
2373
|
avatarSrc = this._avatarSrc.asReadonly();
|
|
2437
2374
|
profileMenuItems = this._profileMenuItems.asReadonly();
|
|
2375
|
+
// Profile action selection notification
|
|
2376
|
+
profileActionSelectedSubject = new Subject();
|
|
2377
|
+
profileActionSelected$ = this.profileActionSelectedSubject.asObservable();
|
|
2438
2378
|
/**
|
|
2439
2379
|
* Update avatar configuration
|
|
2440
2380
|
*/
|
|
@@ -2455,13 +2395,19 @@ class UserService {
|
|
|
2455
2395
|
setProfileMenuItems(items) {
|
|
2456
2396
|
this._profileMenuItems.set(items);
|
|
2457
2397
|
}
|
|
2398
|
+
/**
|
|
2399
|
+
* Notify subscribers that a profile action was selected
|
|
2400
|
+
*/
|
|
2401
|
+
notifyProfileAction(result) {
|
|
2402
|
+
this.profileActionSelectedSubject.next(result);
|
|
2403
|
+
}
|
|
2458
2404
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: UserService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
2459
2405
|
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: UserService, providedIn: 'root' });
|
|
2460
2406
|
}
|
|
2461
2407
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: UserService, decorators: [{
|
|
2462
2408
|
type: Injectable,
|
|
2463
2409
|
args: [{
|
|
2464
|
-
providedIn: 'root'
|
|
2410
|
+
providedIn: 'root',
|
|
2465
2411
|
}]
|
|
2466
2412
|
}] });
|
|
2467
2413
|
|
|
@@ -3128,9 +3074,7 @@ class DsMobilePageMainComponent extends MobilePageBase {
|
|
|
3128
3074
|
userService = inject(UserService);
|
|
3129
3075
|
whitelabelDemoModal = inject(WhitelabelDemoModalService);
|
|
3130
3076
|
// Computed property to check if running on native platform
|
|
3131
|
-
isNativePlatform = computed(() => this.platform.is('ios') ||
|
|
3132
|
-
this.platform.is('android') ||
|
|
3133
|
-
this.platform.is('capacitor'), ...(ngDevMode ? [{ debugName: "isNativePlatform" }] : []));
|
|
3077
|
+
isNativePlatform = computed(() => this.platform.is('ios') || this.platform.is('android') || this.platform.is('capacitor'), ...(ngDevMode ? [{ debugName: "isNativePlatform" }] : []));
|
|
3134
3078
|
// Inputs - Title
|
|
3135
3079
|
title = input.required(...(ngDevMode ? [{ debugName: "title" }] : [])); // For fixed header title
|
|
3136
3080
|
headerTitle = input('', ...(ngDevMode ? [{ debugName: "headerTitle" }] : [])); // Optional different title for expandable header
|
|
@@ -3191,22 +3135,42 @@ class DsMobilePageMainComponent extends MobilePageBase {
|
|
|
3191
3135
|
// Emit the event for any parent listeners
|
|
3192
3136
|
this.avatarClick.emit();
|
|
3193
3137
|
// Use input if provided, otherwise fall back to service, otherwise use default menu
|
|
3194
|
-
const menuItems = this.profileMenuItems() ||
|
|
3138
|
+
const menuItems = this.profileMenuItems() ||
|
|
3139
|
+
this.userService.profileMenuItems() || [
|
|
3195
3140
|
{
|
|
3196
3141
|
actions: [
|
|
3197
3142
|
{
|
|
3198
3143
|
action: 'profile',
|
|
3199
3144
|
title: 'Min profil',
|
|
3200
3145
|
icon: 'remixUser3Line',
|
|
3201
|
-
destructive: false
|
|
3146
|
+
destructive: false,
|
|
3202
3147
|
},
|
|
3203
3148
|
{
|
|
3204
3149
|
action: 'settings',
|
|
3205
3150
|
title: 'Indstillinger',
|
|
3206
3151
|
icon: 'remixSettings3Line',
|
|
3207
|
-
destructive: false
|
|
3208
|
-
}
|
|
3209
|
-
|
|
3152
|
+
destructive: false,
|
|
3153
|
+
},
|
|
3154
|
+
{
|
|
3155
|
+
action: 'appearance',
|
|
3156
|
+
title: 'Udseende',
|
|
3157
|
+
icon: 'remixPaletteLine',
|
|
3158
|
+
destructive: false,
|
|
3159
|
+
},
|
|
3160
|
+
],
|
|
3161
|
+
},
|
|
3162
|
+
{
|
|
3163
|
+
actions: [
|
|
3164
|
+
{
|
|
3165
|
+
action: 'language',
|
|
3166
|
+
title: 'Sprog',
|
|
3167
|
+
subtitle: 'Dansk',
|
|
3168
|
+
flagIcon: '/Assets/country-flags/denmark.svg',
|
|
3169
|
+
icon: 'remixGlobalLine',
|
|
3170
|
+
destructive: false,
|
|
3171
|
+
showChevron: true,
|
|
3172
|
+
},
|
|
3173
|
+
],
|
|
3210
3174
|
},
|
|
3211
3175
|
{
|
|
3212
3176
|
actions: [
|
|
@@ -3214,10 +3178,10 @@ class DsMobilePageMainComponent extends MobilePageBase {
|
|
|
3214
3178
|
action: 'logout',
|
|
3215
3179
|
title: 'Log ud',
|
|
3216
3180
|
icon: 'remixLogoutBoxLine',
|
|
3217
|
-
destructive: true
|
|
3218
|
-
}
|
|
3219
|
-
]
|
|
3220
|
-
}
|
|
3181
|
+
destructive: true,
|
|
3182
|
+
},
|
|
3183
|
+
],
|
|
3184
|
+
},
|
|
3221
3185
|
];
|
|
3222
3186
|
// If no menu items configured, just emit and return
|
|
3223
3187
|
if (!menuItems || menuItems.length === 0) {
|
|
@@ -3229,23 +3193,48 @@ class DsMobilePageMainComponent extends MobilePageBase {
|
|
|
3229
3193
|
actionGroups: menuItems,
|
|
3230
3194
|
currentLanguage: 'da', // TODO: Get from language service
|
|
3231
3195
|
availableLanguages: [
|
|
3232
|
-
{
|
|
3233
|
-
|
|
3234
|
-
|
|
3235
|
-
|
|
3236
|
-
|
|
3237
|
-
|
|
3196
|
+
{
|
|
3197
|
+
code: 'da',
|
|
3198
|
+
nativeName: 'Dansk',
|
|
3199
|
+
englishName: 'Danish',
|
|
3200
|
+
flagIcon: '/Assets/country-flags/denmark.svg',
|
|
3201
|
+
},
|
|
3202
|
+
{
|
|
3203
|
+
code: 'en',
|
|
3204
|
+
nativeName: 'English',
|
|
3205
|
+
englishName: 'English',
|
|
3206
|
+
flagIcon: '/Assets/country-flags/united kingdom.svg',
|
|
3207
|
+
},
|
|
3208
|
+
{
|
|
3209
|
+
code: 'sv',
|
|
3210
|
+
nativeName: 'Svenska',
|
|
3211
|
+
englishName: 'Swedish',
|
|
3212
|
+
flagIcon: '/Assets/country-flags/sweden.svg',
|
|
3213
|
+
},
|
|
3214
|
+
{
|
|
3215
|
+
code: 'no',
|
|
3216
|
+
nativeName: 'Norsk',
|
|
3217
|
+
englishName: 'Norwegian',
|
|
3218
|
+
flagIcon: '/Assets/country-flags/norway.svg',
|
|
3219
|
+
},
|
|
3220
|
+
{
|
|
3221
|
+
code: 'de',
|
|
3222
|
+
nativeName: 'Deutsch',
|
|
3223
|
+
englishName: 'German',
|
|
3224
|
+
flagIcon: '/Assets/country-flags/germany.svg',
|
|
3225
|
+
},
|
|
3226
|
+
],
|
|
3238
3227
|
},
|
|
3239
3228
|
breakpoints: [0, 1],
|
|
3240
3229
|
initialBreakpoint: 1,
|
|
3241
3230
|
handle: true,
|
|
3242
|
-
cssClass: ['ds-bottom-sheet', 'auto-height']
|
|
3231
|
+
cssClass: ['ds-bottom-sheet', 'auto-height'],
|
|
3243
3232
|
});
|
|
3244
3233
|
await sheet.present();
|
|
3245
3234
|
const result = await sheet.onWillDismiss();
|
|
3246
3235
|
if (result.data?.action) {
|
|
3247
|
-
// Handle whitelabel-demo action internally (works on all pages)
|
|
3248
|
-
if (result.data.action === 'whitelabel-demo') {
|
|
3236
|
+
// Handle appearance/whitelabel-demo action internally (works on all pages)
|
|
3237
|
+
if (result.data.action === 'appearance' || result.data.action === 'whitelabel-demo') {
|
|
3249
3238
|
console.log('Opening whitelabel demo...');
|
|
3250
3239
|
// Small delay to ensure bottom sheet is fully dismissed
|
|
3251
3240
|
setTimeout(async () => {
|
|
@@ -3259,6 +3248,8 @@ class DsMobilePageMainComponent extends MobilePageBase {
|
|
|
3259
3248
|
}
|
|
3260
3249
|
// Emit the selected action to parent (for other actions)
|
|
3261
3250
|
this.profileActionSelected.emit(result.data);
|
|
3251
|
+
// Also notify globally via UserService
|
|
3252
|
+
this.userService.notifyProfileAction(result.data);
|
|
3262
3253
|
}
|
|
3263
3254
|
}
|
|
3264
3255
|
/**
|
|
@@ -3317,10 +3308,10 @@ class DsMobilePageMainComponent extends MobilePageBase {
|
|
|
3317
3308
|
<div class="header-main">
|
|
3318
3309
|
<!-- Whitelabel Logomark -->
|
|
3319
3310
|
<ds-logo variant="mark" size="lg" />
|
|
3320
|
-
|
|
3311
|
+
|
|
3321
3312
|
<!-- Title - fades in on scroll -->
|
|
3322
3313
|
<ion-title class="header-main__title">{{ title() }}</ion-title>
|
|
3323
|
-
|
|
3314
|
+
|
|
3324
3315
|
<!-- Avatar -->
|
|
3325
3316
|
<div class="header-main__actions">
|
|
3326
3317
|
<ds-avatar
|
|
@@ -3341,39 +3332,32 @@ class DsMobilePageMainComponent extends MobilePageBase {
|
|
|
3341
3332
|
<ion-content [scrollEvents]="true" (ionScroll)="handleScroll($event)">
|
|
3342
3333
|
<!-- Condensed header for Ionic scroll effects -->
|
|
3343
3334
|
@if (showCondensedHeader()) {
|
|
3344
|
-
|
|
3345
|
-
|
|
3346
|
-
|
|
3347
|
-
|
|
3348
|
-
|
|
3335
|
+
<ion-header collapse="condense">
|
|
3336
|
+
<ion-toolbar>
|
|
3337
|
+
<ion-title size="large">{{ title() }}</ion-title>
|
|
3338
|
+
</ion-toolbar>
|
|
3339
|
+
</ion-header>
|
|
3349
3340
|
}
|
|
3350
3341
|
|
|
3351
3342
|
<!-- Pull to refresh (only on native iOS/Android) -->
|
|
3352
3343
|
@if (showRefresh() && isNativePlatform()) {
|
|
3353
|
-
|
|
3354
|
-
|
|
3355
|
-
|
|
3356
|
-
[pullFactor]="0.4"
|
|
3357
|
-
[pullMin]="80"
|
|
3358
|
-
[pullMax]="240"
|
|
3359
|
-
closeDuration="600ms">
|
|
3360
|
-
<ion-refresher-content
|
|
3361
|
-
pullingIcon="remixArrowDownS"
|
|
3362
|
-
refreshingSpinner="crescent">
|
|
3363
|
-
</ion-refresher-content>
|
|
3364
|
-
</ion-refresher>
|
|
3344
|
+
<ion-refresher slot="fixed" (ionRefresh)="handleRefresh($event)" [pullFactor]="0.4" [pullMin]="80" [pullMax]="240" closeDuration="600ms">
|
|
3345
|
+
<ion-refresher-content pullingIcon="remixArrowDownS" refreshingSpinner="crescent"> </ion-refresher-content>
|
|
3346
|
+
</ion-refresher>
|
|
3365
3347
|
}
|
|
3366
3348
|
|
|
3367
3349
|
<!-- Expandable header section (purple background) -->
|
|
3368
3350
|
<div class="header-expandable">
|
|
3369
3351
|
<div class="header-expandable-inner">
|
|
3370
3352
|
<div class="header-expandable__text">
|
|
3371
|
-
<h1 class="header-expandable__title">
|
|
3353
|
+
<h1 class="header-expandable__title">
|
|
3354
|
+
{{ headerTitle() || title() }}
|
|
3355
|
+
</h1>
|
|
3372
3356
|
@if (headerSubtitle()) {
|
|
3373
|
-
|
|
3357
|
+
<p class="header-expandable__subtitle">{{ headerSubtitle() }}</p>
|
|
3374
3358
|
}
|
|
3375
3359
|
</div>
|
|
3376
|
-
|
|
3360
|
+
|
|
3377
3361
|
<!-- Slot for custom header content (e.g., property tiles) -->
|
|
3378
3362
|
<ng-content select="[header-content]"></ng-content>
|
|
3379
3363
|
</div>
|
|
@@ -3391,27 +3375,17 @@ class DsMobilePageMainComponent extends MobilePageBase {
|
|
|
3391
3375
|
}
|
|
3392
3376
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: DsMobilePageMainComponent, decorators: [{
|
|
3393
3377
|
type: Component,
|
|
3394
|
-
args: [{ selector: 'ds-mobile-page-main', standalone: true, imports: [
|
|
3395
|
-
CommonModule,
|
|
3396
|
-
IonHeader,
|
|
3397
|
-
IonToolbar,
|
|
3398
|
-
IonTitle,
|
|
3399
|
-
IonContent,
|
|
3400
|
-
IonRefresher,
|
|
3401
|
-
IonRefresherContent,
|
|
3402
|
-
DsAvatarComponent,
|
|
3403
|
-
DsLogoComponent
|
|
3404
|
-
], template: `
|
|
3378
|
+
args: [{ selector: 'ds-mobile-page-main', standalone: true, imports: [CommonModule, IonHeader, IonToolbar, IonTitle, IonContent, IonRefresher, IonRefresherContent, DsAvatarComponent, DsLogoComponent], template: `
|
|
3405
3379
|
<!-- Fixed header at top -->
|
|
3406
3380
|
<ion-header>
|
|
3407
3381
|
<ion-toolbar>
|
|
3408
3382
|
<div class="header-main">
|
|
3409
3383
|
<!-- Whitelabel Logomark -->
|
|
3410
3384
|
<ds-logo variant="mark" size="lg" />
|
|
3411
|
-
|
|
3385
|
+
|
|
3412
3386
|
<!-- Title - fades in on scroll -->
|
|
3413
3387
|
<ion-title class="header-main__title">{{ title() }}</ion-title>
|
|
3414
|
-
|
|
3388
|
+
|
|
3415
3389
|
<!-- Avatar -->
|
|
3416
3390
|
<div class="header-main__actions">
|
|
3417
3391
|
<ds-avatar
|
|
@@ -3432,39 +3406,32 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
|
|
|
3432
3406
|
<ion-content [scrollEvents]="true" (ionScroll)="handleScroll($event)">
|
|
3433
3407
|
<!-- Condensed header for Ionic scroll effects -->
|
|
3434
3408
|
@if (showCondensedHeader()) {
|
|
3435
|
-
|
|
3436
|
-
|
|
3437
|
-
|
|
3438
|
-
|
|
3439
|
-
|
|
3409
|
+
<ion-header collapse="condense">
|
|
3410
|
+
<ion-toolbar>
|
|
3411
|
+
<ion-title size="large">{{ title() }}</ion-title>
|
|
3412
|
+
</ion-toolbar>
|
|
3413
|
+
</ion-header>
|
|
3440
3414
|
}
|
|
3441
3415
|
|
|
3442
3416
|
<!-- Pull to refresh (only on native iOS/Android) -->
|
|
3443
3417
|
@if (showRefresh() && isNativePlatform()) {
|
|
3444
|
-
|
|
3445
|
-
|
|
3446
|
-
|
|
3447
|
-
[pullFactor]="0.4"
|
|
3448
|
-
[pullMin]="80"
|
|
3449
|
-
[pullMax]="240"
|
|
3450
|
-
closeDuration="600ms">
|
|
3451
|
-
<ion-refresher-content
|
|
3452
|
-
pullingIcon="remixArrowDownS"
|
|
3453
|
-
refreshingSpinner="crescent">
|
|
3454
|
-
</ion-refresher-content>
|
|
3455
|
-
</ion-refresher>
|
|
3418
|
+
<ion-refresher slot="fixed" (ionRefresh)="handleRefresh($event)" [pullFactor]="0.4" [pullMin]="80" [pullMax]="240" closeDuration="600ms">
|
|
3419
|
+
<ion-refresher-content pullingIcon="remixArrowDownS" refreshingSpinner="crescent"> </ion-refresher-content>
|
|
3420
|
+
</ion-refresher>
|
|
3456
3421
|
}
|
|
3457
3422
|
|
|
3458
3423
|
<!-- Expandable header section (purple background) -->
|
|
3459
3424
|
<div class="header-expandable">
|
|
3460
3425
|
<div class="header-expandable-inner">
|
|
3461
3426
|
<div class="header-expandable__text">
|
|
3462
|
-
<h1 class="header-expandable__title">
|
|
3427
|
+
<h1 class="header-expandable__title">
|
|
3428
|
+
{{ headerTitle() || title() }}
|
|
3429
|
+
</h1>
|
|
3463
3430
|
@if (headerSubtitle()) {
|
|
3464
|
-
|
|
3431
|
+
<p class="header-expandable__subtitle">{{ headerSubtitle() }}</p>
|
|
3465
3432
|
}
|
|
3466
3433
|
</div>
|
|
3467
|
-
|
|
3434
|
+
|
|
3468
3435
|
<!-- Slot for custom header content (e.g., property tiles) -->
|
|
3469
3436
|
<ng-content select="[header-content]"></ng-content>
|
|
3470
3437
|
</div>
|
|
@@ -4493,7 +4460,7 @@ class DsMobileCommentComponent {
|
|
|
4493
4460
|
}
|
|
4494
4461
|
</div>
|
|
4495
4462
|
</div>
|
|
4496
|
-
`, isInline: true, styles: [".author-details{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.author-name{font-family:Brockmann,sans-serif;font-size:var(--font-size-sm);font-weight:600;line-height:20px;letter-spacing:-.3px;color:var(--color-text-primary, #1a1a1a);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.author-meta{font-family:Brockmann,sans-serif;font-size:var(--font-size-xs);font-weight:400;line-height:1.2;letter-spacing:-.26px;color:var(--color-text-tertiary, #737373);display:flex;align-items:center;gap:6px}.author-meta .separator{color:var(--color-text-tertiary, #a0a0a0)}.lightbox-context .author-name,.overlay-context .author-name{color:#fffffff2}.lightbox-context .author-meta,.overlay-context .author-meta{color:#ffffffb3}.lightbox-context .author-meta .separator,.overlay-context .author-meta .separator{color:#ffffff80}.section-headline{font-size:var(--font-size-
|
|
4463
|
+
`, isInline: true, styles: [".author-details{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.author-name{font-family:Brockmann,sans-serif;font-size:var(--font-size-sm);font-weight:600;line-height:20px;letter-spacing:-.3px;color:var(--color-text-primary, #1a1a1a);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.author-meta{font-family:Brockmann,sans-serif;font-size:var(--font-size-xs);font-weight:400;line-height:1.2;letter-spacing:-.26px;color:var(--color-text-tertiary, #737373);display:flex;align-items:center;gap:6px}.author-meta .separator{color:var(--color-text-tertiary, #a0a0a0)}.lightbox-context .author-name,.overlay-context .author-name{color:#fffffff2}.lightbox-context .author-meta,.overlay-context .author-meta{color:#ffffffb3}.lightbox-context .author-meta .separator,.overlay-context .author-meta .separator{color:#ffffff80}.section-headline{font-size:var(--font-size-base);font-weight:600;color:var(--text-color-default-primary);padding:16px 0;margin:0;letter-spacing:-.2px;display:flex;align-items:center;gap:6px}.empty-state-title{font-family:Brockmann,sans-serif;font-size:var(--font-size-base);font-weight:600;line-height:1.3;color:var(--text-color-default-primary, #202227);margin:0 0 8px}.empty-state-description{font-family:Brockmann,sans-serif;font-size:var(--font-size-sm);font-weight:400;line-height:1.4;color:var(--text-color-default-secondary, #545B66);margin:0}.ghost-input-clean ::ng-deep .ds-input,.ghost-input-clean ::ng-deep .ds-textarea,.ghost-input-clean ::ng-deep .textarea-container{outline:none!important;border:none!important}.ghost-input-clean ::ng-deep .ds-input:hover,.ghost-input-clean ::ng-deep .ds-textarea:hover,.ghost-input-clean ::ng-deep .textarea-container:hover,.ghost-input-clean ::ng-deep .ds-input:focus,.ghost-input-clean ::ng-deep .ds-textarea:focus,.ghost-input-clean ::ng-deep .textarea-container:focus,.ghost-input-clean ::ng-deep .ds-input:focus-within,.ghost-input-clean ::ng-deep .ds-textarea:focus-within,.ghost-input-clean ::ng-deep .textarea-container:focus-within{outline:none!important;border:none!important;box-shadow:none!important}.ghost-input-clean ::ng-deep textarea{outline:none!important;border:none!important;box-shadow:none!important;resize:none!important}.ghost-input-clean ::ng-deep textarea:hover,.ghost-input-clean ::ng-deep textarea:focus{outline:none!important;border:none!important;box-shadow:none!important}\n", ":host{display:flex;gap:12px;padding:8px;position:relative;border-radius:16px;transition:all .2s ease;background:var(--color-background-primary, #ffffff);margin-bottom:8px;margin-left:-8px;margin-right:-8px}:host:last-child{margin-bottom:0}:host:after{content:\"\";position:absolute;bottom:-4px;left:44px;right:8px;height:1px;background:var(--border-color-default)}:host:last-child:after{display:none}:host.clickable{cursor:pointer}:host.clickable:active{background:var(--color-background-neutral-primary-hover, #f5f5f5)}.avatar-wrapper{position:relative;display:flex;align-items:flex-start;justify-content:center;flex-shrink:0}.comment-content{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.comment-header{display:flex;align-items:baseline;gap:6px;flex-wrap:wrap}.header-actions{display:flex;align-items:center;gap:4px;margin-left:auto}.desktop-more-button::ng-deep button{border-radius:50%!important}.action-like{display:flex;align-items:center;gap:2px;color:var(--color-text-secondary, #737373);cursor:pointer;transition:color .2s ease;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;font-family:Brockmann,sans-serif;font-size:var(--font-size-xs);font-weight:500;line-height:18px}.like-count{opacity:1}.like-count.hidden{opacity:0}.action-like.active{color:#f91880}.icon-wrapper{position:relative;display:flex;align-items:center;justify-content:center}.icon-pulse{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);opacity:0;pointer-events:none}.icon-pulse.animating{animation:pulse .4s cubic-bezier(.4,0,.2,1)}@keyframes pulse{0%{transform:translate(-50%,-50%) scale(1);opacity:.8}to{transform:translate(-50%,-50%) scale(2.5);opacity:0}}.comment-text{font-family:Brockmann,sans-serif;font-size:var(--font-size-sm);font-weight:400;line-height:22px;letter-spacing:-.3px;color:var(--color-text-primary, #1a1a1a);white-space:pre-wrap;word-wrap:break-word}.comment-text ::ng-deep .mention{color:var(--color-brand-base, #6b5ff5)!important;font-weight:600}.comment-actions{display:flex;align-items:center;gap:12px;margin-top:4px}.action-reply{font-family:Brockmann,sans-serif;font-size:var(--font-size-sm);font-weight:500;line-height:18px;color:var(--color-text-secondary, #737373);cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;transition:color .2s ease}.action-reply:hover{color:var(--color-text-primary, #1a1a1a)}.action-edit{font-family:Brockmann,sans-serif;font-size:var(--font-size-sm);font-weight:500;line-height:18px;color:var(--color-text-secondary, #737373);cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;transition:color .2s ease}.action-edit:hover{color:var(--color-text-primary, #1a1a1a)}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "component", type: DsAvatarComponent, selector: "ds-avatar", inputs: ["type", "size", "initials", "src", "alt", "iconName", "iconColor"] }, { kind: "component", type: DsIconComponent, selector: "ds-icon", inputs: ["name", "size", "color", "interactive"] }, { kind: "component", type: DsIconButtonComponent, selector: "ds-icon-button", inputs: ["variant", "size", "icon", "disabled", "loading", "pressed", "expanded", "ariaLabel", "tooltip", "tooltipDisabled", "tooltipPlacement"], outputs: ["clicked", "focused", "blurred"] }] });
|
|
4497
4464
|
}
|
|
4498
4465
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: DsMobileCommentComponent, decorators: [{
|
|
4499
4466
|
type: Component,
|
|
@@ -4541,7 +4508,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
|
|
|
4541
4508
|
}
|
|
4542
4509
|
</div>
|
|
4543
4510
|
</div>
|
|
4544
|
-
`, styles: [".author-details{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.author-name{font-family:Brockmann,sans-serif;font-size:var(--font-size-sm);font-weight:600;line-height:20px;letter-spacing:-.3px;color:var(--color-text-primary, #1a1a1a);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.author-meta{font-family:Brockmann,sans-serif;font-size:var(--font-size-xs);font-weight:400;line-height:1.2;letter-spacing:-.26px;color:var(--color-text-tertiary, #737373);display:flex;align-items:center;gap:6px}.author-meta .separator{color:var(--color-text-tertiary, #a0a0a0)}.lightbox-context .author-name,.overlay-context .author-name{color:#fffffff2}.lightbox-context .author-meta,.overlay-context .author-meta{color:#ffffffb3}.lightbox-context .author-meta .separator,.overlay-context .author-meta .separator{color:#ffffff80}.section-headline{font-size:var(--font-size-
|
|
4511
|
+
`, styles: [".author-details{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.author-name{font-family:Brockmann,sans-serif;font-size:var(--font-size-sm);font-weight:600;line-height:20px;letter-spacing:-.3px;color:var(--color-text-primary, #1a1a1a);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.author-meta{font-family:Brockmann,sans-serif;font-size:var(--font-size-xs);font-weight:400;line-height:1.2;letter-spacing:-.26px;color:var(--color-text-tertiary, #737373);display:flex;align-items:center;gap:6px}.author-meta .separator{color:var(--color-text-tertiary, #a0a0a0)}.lightbox-context .author-name,.overlay-context .author-name{color:#fffffff2}.lightbox-context .author-meta,.overlay-context .author-meta{color:#ffffffb3}.lightbox-context .author-meta .separator,.overlay-context .author-meta .separator{color:#ffffff80}.section-headline{font-size:var(--font-size-base);font-weight:600;color:var(--text-color-default-primary);padding:16px 0;margin:0;letter-spacing:-.2px;display:flex;align-items:center;gap:6px}.empty-state-title{font-family:Brockmann,sans-serif;font-size:var(--font-size-base);font-weight:600;line-height:1.3;color:var(--text-color-default-primary, #202227);margin:0 0 8px}.empty-state-description{font-family:Brockmann,sans-serif;font-size:var(--font-size-sm);font-weight:400;line-height:1.4;color:var(--text-color-default-secondary, #545B66);margin:0}.ghost-input-clean ::ng-deep .ds-input,.ghost-input-clean ::ng-deep .ds-textarea,.ghost-input-clean ::ng-deep .textarea-container{outline:none!important;border:none!important}.ghost-input-clean ::ng-deep .ds-input:hover,.ghost-input-clean ::ng-deep .ds-textarea:hover,.ghost-input-clean ::ng-deep .textarea-container:hover,.ghost-input-clean ::ng-deep .ds-input:focus,.ghost-input-clean ::ng-deep .ds-textarea:focus,.ghost-input-clean ::ng-deep .textarea-container:focus,.ghost-input-clean ::ng-deep .ds-input:focus-within,.ghost-input-clean ::ng-deep .ds-textarea:focus-within,.ghost-input-clean ::ng-deep .textarea-container:focus-within{outline:none!important;border:none!important;box-shadow:none!important}.ghost-input-clean ::ng-deep textarea{outline:none!important;border:none!important;box-shadow:none!important;resize:none!important}.ghost-input-clean ::ng-deep textarea:hover,.ghost-input-clean ::ng-deep textarea:focus{outline:none!important;border:none!important;box-shadow:none!important}\n", ":host{display:flex;gap:12px;padding:8px;position:relative;border-radius:16px;transition:all .2s ease;background:var(--color-background-primary, #ffffff);margin-bottom:8px;margin-left:-8px;margin-right:-8px}:host:last-child{margin-bottom:0}:host:after{content:\"\";position:absolute;bottom:-4px;left:44px;right:8px;height:1px;background:var(--border-color-default)}:host:last-child:after{display:none}:host.clickable{cursor:pointer}:host.clickable:active{background:var(--color-background-neutral-primary-hover, #f5f5f5)}.avatar-wrapper{position:relative;display:flex;align-items:flex-start;justify-content:center;flex-shrink:0}.comment-content{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.comment-header{display:flex;align-items:baseline;gap:6px;flex-wrap:wrap}.header-actions{display:flex;align-items:center;gap:4px;margin-left:auto}.desktop-more-button::ng-deep button{border-radius:50%!important}.action-like{display:flex;align-items:center;gap:2px;color:var(--color-text-secondary, #737373);cursor:pointer;transition:color .2s ease;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;font-family:Brockmann,sans-serif;font-size:var(--font-size-xs);font-weight:500;line-height:18px}.like-count{opacity:1}.like-count.hidden{opacity:0}.action-like.active{color:#f91880}.icon-wrapper{position:relative;display:flex;align-items:center;justify-content:center}.icon-pulse{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);opacity:0;pointer-events:none}.icon-pulse.animating{animation:pulse .4s cubic-bezier(.4,0,.2,1)}@keyframes pulse{0%{transform:translate(-50%,-50%) scale(1);opacity:.8}to{transform:translate(-50%,-50%) scale(2.5);opacity:0}}.comment-text{font-family:Brockmann,sans-serif;font-size:var(--font-size-sm);font-weight:400;line-height:22px;letter-spacing:-.3px;color:var(--color-text-primary, #1a1a1a);white-space:pre-wrap;word-wrap:break-word}.comment-text ::ng-deep .mention{color:var(--color-brand-base, #6b5ff5)!important;font-weight:600}.comment-actions{display:flex;align-items:center;gap:12px;margin-top:4px}.action-reply{font-family:Brockmann,sans-serif;font-size:var(--font-size-sm);font-weight:500;line-height:18px;color:var(--color-text-secondary, #737373);cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;transition:color .2s ease}.action-reply:hover{color:var(--color-text-primary, #1a1a1a)}.action-edit{font-family:Brockmann,sans-serif;font-size:var(--font-size-sm);font-weight:500;line-height:18px;color:var(--color-text-secondary, #737373);cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;transition:color .2s ease}.action-edit:hover{color:var(--color-text-primary, #1a1a1a)}\n"] }]
|
|
4545
4512
|
}], ctorParameters: () => [], propDecorators: { authorName: [{ type: i0.Input, args: [{ isSignal: true, alias: "authorName", required: true }] }], authorRole: [{ type: i0.Input, args: [{ isSignal: true, alias: "authorRole", required: true }] }], timestamp: [{ type: i0.Input, args: [{ isSignal: true, alias: "timestamp", required: true }] }], content: [{ type: i0.Input, args: [{ isSignal: true, alias: "content", required: true }] }], avatarInitials: [{ type: i0.Input, args: [{ isSignal: true, alias: "avatarInitials", required: false }] }], avatarType: [{ type: i0.Input, args: [{ isSignal: true, alias: "avatarType", required: false }] }], clickable: [{ type: i0.Input, args: [{ isSignal: true, alias: "clickable", required: false }] }], isOwnComment: [{ type: i0.Input, args: [{ isSignal: true, alias: "isOwnComment", required: false }] }], isLiked: [{ type: i0.Input, args: [{ isSignal: true, alias: "isLiked", required: false }] }], likeToggled: [{ type: i0.Output, args: ["likeToggled"] }], likeCount: [{ type: i0.Input, args: [{ isSignal: true, alias: "likeCount", required: false }] }], commentClick: [{ type: i0.Output, args: ["commentClick"] }], replyClick: [{ type: i0.Output, args: ["replyClick"] }], editClick: [{ type: i0.Output, args: ["editClick"] }], longPress: [{ type: i0.Output, args: ["longPress"] }] } });
|
|
4546
4513
|
|
|
4547
4514
|
/**
|
|
@@ -6533,6 +6500,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
|
|
|
6533
6500
|
* [timestamp]="'2h ago'"
|
|
6534
6501
|
* [avatarInitials]="'JD'"
|
|
6535
6502
|
* [clickable]="true"
|
|
6503
|
+
* [enableLongPress]="true"
|
|
6536
6504
|
* (postClick)="openPost()">
|
|
6537
6505
|
*
|
|
6538
6506
|
* <post-content>
|
|
@@ -6589,6 +6557,13 @@ class DsMobileInteractiveListItemPostComponent {
|
|
|
6589
6557
|
* Whether the post card is clickable
|
|
6590
6558
|
*/
|
|
6591
6559
|
clickable = input(false, ...(ngDevMode ? [{ debugName: "clickable" }] : []));
|
|
6560
|
+
/**
|
|
6561
|
+
* Enable long-press interaction when clickable is true
|
|
6562
|
+
* Set to false to disable long-press but keep click
|
|
6563
|
+
* Also controls visibility of desktop "more" button
|
|
6564
|
+
* @default true
|
|
6565
|
+
*/
|
|
6566
|
+
enableLongPress = input(true, ...(ngDevMode ? [{ debugName: "enableLongPress" }] : []));
|
|
6592
6567
|
/**
|
|
6593
6568
|
* Emits when the post card is clicked (if clickable)
|
|
6594
6569
|
*/
|
|
@@ -6616,11 +6591,12 @@ class DsMobileInteractiveListItemPostComponent {
|
|
|
6616
6591
|
this.longPress.emit();
|
|
6617
6592
|
}
|
|
6618
6593
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: DsMobileInteractiveListItemPostComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
6619
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.3.15", type: DsMobileInteractiveListItemPostComponent, isStandalone: true, selector: "ds-mobile-interactive-list-item-post", inputs: { authorName: { classPropertyName: "authorName", publicName: "authorName", isSignal: true, isRequired: true, transformFunction: null }, authorRole: { classPropertyName: "authorRole", publicName: "authorRole", isSignal: true, isRequired: true, transformFunction: null }, timestamp: { classPropertyName: "timestamp", publicName: "timestamp", isSignal: true, isRequired: true, transformFunction: null }, avatarInitials: { classPropertyName: "avatarInitials", publicName: "avatarInitials", isSignal: true, isRequired: false, transformFunction: null }, avatarType: { classPropertyName: "avatarType", publicName: "avatarType", isSignal: true, isRequired: false, transformFunction: null }, avatarSrc: { classPropertyName: "avatarSrc", publicName: "avatarSrc", isSignal: true, isRequired: false, transformFunction: null }, avatarIconName: { classPropertyName: "avatarIconName", publicName: "avatarIconName", isSignal: true, isRequired: false, transformFunction: null }, showBadge: { classPropertyName: "showBadge", publicName: "showBadge", isSignal: true, isRequired: false, transformFunction: null }, variant: { classPropertyName: "variant", publicName: "variant", isSignal: true, isRequired: false, transformFunction: null }, clickable: { classPropertyName: "clickable", publicName: "clickable", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { postClick: "postClick", commentClick: "commentClick", longPress: "longPress" }, ngImport: i0, template: `
|
|
6594
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.3.15", type: DsMobileInteractiveListItemPostComponent, isStandalone: true, selector: "ds-mobile-interactive-list-item-post", inputs: { authorName: { classPropertyName: "authorName", publicName: "authorName", isSignal: true, isRequired: true, transformFunction: null }, authorRole: { classPropertyName: "authorRole", publicName: "authorRole", isSignal: true, isRequired: true, transformFunction: null }, timestamp: { classPropertyName: "timestamp", publicName: "timestamp", isSignal: true, isRequired: true, transformFunction: null }, avatarInitials: { classPropertyName: "avatarInitials", publicName: "avatarInitials", isSignal: true, isRequired: false, transformFunction: null }, avatarType: { classPropertyName: "avatarType", publicName: "avatarType", isSignal: true, isRequired: false, transformFunction: null }, avatarSrc: { classPropertyName: "avatarSrc", publicName: "avatarSrc", isSignal: true, isRequired: false, transformFunction: null }, avatarIconName: { classPropertyName: "avatarIconName", publicName: "avatarIconName", isSignal: true, isRequired: false, transformFunction: null }, showBadge: { classPropertyName: "showBadge", publicName: "showBadge", isSignal: true, isRequired: false, transformFunction: null }, variant: { classPropertyName: "variant", publicName: "variant", isSignal: true, isRequired: false, transformFunction: null }, clickable: { classPropertyName: "clickable", publicName: "clickable", isSignal: true, isRequired: false, transformFunction: null }, enableLongPress: { classPropertyName: "enableLongPress", publicName: "enableLongPress", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { postClick: "postClick", commentClick: "commentClick", longPress: "longPress" }, ngImport: i0, template: `
|
|
6620
6595
|
<ds-mobile-list-item
|
|
6621
6596
|
[leadingSize]="'32px'"
|
|
6622
6597
|
[variant]="variant()"
|
|
6623
6598
|
[interactive]="clickable()"
|
|
6599
|
+
[enableLongPress]="enableLongPress()"
|
|
6624
6600
|
(itemClick)="handlePostClick()"
|
|
6625
6601
|
(longPress)="handleLongPress()"
|
|
6626
6602
|
(moreButtonClick)="handleMoreButtonClick($event)">
|
|
@@ -6653,7 +6629,7 @@ class DsMobileInteractiveListItemPostComponent {
|
|
|
6653
6629
|
<ng-content select="post-actions" />
|
|
6654
6630
|
</div>
|
|
6655
6631
|
</ds-mobile-list-item>
|
|
6656
|
-
`, isInline: true, styles: ["
|
|
6632
|
+
`, isInline: true, styles: [":host{display:block}:host:last-child{--divider-display: none;--item-padding-bottom: 0}.post-header{display:flex;align-items:center;justify-content:space-between;height:32px;margin-bottom:8px}.menu-slot{flex-shrink:0}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "component", type: DsAvatarWithBadgeComponent, selector: "ds-avatar-with-badge", inputs: ["type", "size", "initials", "src", "iconName", "showBadge", "badgePosition"] }, { kind: "component", type: DsMobileListItemComponent, selector: "ds-mobile-list-item", inputs: ["leadingSize", "variant", "align", "interactive", "disabled", "loading", "enableLongPress", "showDesktopMoreButton", "interactiveOffset", "title", "subtitle", "showDivider", "dividerSpacing"], outputs: ["itemClick", "moreButtonClick"] }] });
|
|
6657
6633
|
}
|
|
6658
6634
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: DsMobileInteractiveListItemPostComponent, decorators: [{
|
|
6659
6635
|
type: Component,
|
|
@@ -6662,6 +6638,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
|
|
|
6662
6638
|
[leadingSize]="'32px'"
|
|
6663
6639
|
[variant]="variant()"
|
|
6664
6640
|
[interactive]="clickable()"
|
|
6641
|
+
[enableLongPress]="enableLongPress()"
|
|
6665
6642
|
(itemClick)="handlePostClick()"
|
|
6666
6643
|
(longPress)="handleLongPress()"
|
|
6667
6644
|
(moreButtonClick)="handleMoreButtonClick($event)">
|
|
@@ -6694,8 +6671,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
|
|
|
6694
6671
|
<ng-content select="post-actions" />
|
|
6695
6672
|
</div>
|
|
6696
6673
|
</ds-mobile-list-item>
|
|
6697
|
-
`, styles: ["
|
|
6698
|
-
}], propDecorators: { authorName: [{ type: i0.Input, args: [{ isSignal: true, alias: "authorName", required: true }] }], authorRole: [{ type: i0.Input, args: [{ isSignal: true, alias: "authorRole", required: true }] }], timestamp: [{ type: i0.Input, args: [{ isSignal: true, alias: "timestamp", required: true }] }], avatarInitials: [{ type: i0.Input, args: [{ isSignal: true, alias: "avatarInitials", required: false }] }], avatarType: [{ type: i0.Input, args: [{ isSignal: true, alias: "avatarType", required: false }] }], avatarSrc: [{ type: i0.Input, args: [{ isSignal: true, alias: "avatarSrc", required: false }] }], avatarIconName: [{ type: i0.Input, args: [{ isSignal: true, alias: "avatarIconName", required: false }] }], showBadge: [{ type: i0.Input, args: [{ isSignal: true, alias: "showBadge", required: false }] }], variant: [{ type: i0.Input, args: [{ isSignal: true, alias: "variant", required: false }] }], clickable: [{ type: i0.Input, args: [{ isSignal: true, alias: "clickable", required: false }] }], postClick: [{ type: i0.Output, args: ["postClick"] }], commentClick: [{ type: i0.Output, args: ["commentClick"] }], longPress: [{ type: i0.Output, args: ["longPress"] }] } });
|
|
6674
|
+
`, styles: [":host{display:block}:host:last-child{--divider-display: none;--item-padding-bottom: 0}.post-header{display:flex;align-items:center;justify-content:space-between;height:32px;margin-bottom:8px}.menu-slot{flex-shrink:0}\n"] }]
|
|
6675
|
+
}], propDecorators: { authorName: [{ type: i0.Input, args: [{ isSignal: true, alias: "authorName", required: true }] }], authorRole: [{ type: i0.Input, args: [{ isSignal: true, alias: "authorRole", required: true }] }], timestamp: [{ type: i0.Input, args: [{ isSignal: true, alias: "timestamp", required: true }] }], avatarInitials: [{ type: i0.Input, args: [{ isSignal: true, alias: "avatarInitials", required: false }] }], avatarType: [{ type: i0.Input, args: [{ isSignal: true, alias: "avatarType", required: false }] }], avatarSrc: [{ type: i0.Input, args: [{ isSignal: true, alias: "avatarSrc", required: false }] }], avatarIconName: [{ type: i0.Input, args: [{ isSignal: true, alias: "avatarIconName", required: false }] }], showBadge: [{ type: i0.Input, args: [{ isSignal: true, alias: "showBadge", required: false }] }], variant: [{ type: i0.Input, args: [{ isSignal: true, alias: "variant", required: false }] }], clickable: [{ type: i0.Input, args: [{ isSignal: true, alias: "clickable", required: false }] }], enableLongPress: [{ type: i0.Input, args: [{ isSignal: true, alias: "enableLongPress", required: false }] }], postClick: [{ type: i0.Output, args: ["postClick"] }], commentClick: [{ type: i0.Output, args: ["commentClick"] }], longPress: [{ type: i0.Output, args: ["longPress"] }] } });
|
|
6699
6676
|
/**
|
|
6700
6677
|
* PostContentComponent
|
|
6701
6678
|
*
|
|
@@ -6999,6 +6976,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
|
|
|
6999
6976
|
* [timestamp]="'12 days ago'"
|
|
7000
6977
|
* [iconName]="'remixCalendarLine'"
|
|
7001
6978
|
* [clickable]="true"
|
|
6979
|
+
* [enableLongPress]="true"
|
|
7002
6980
|
* (inquiryClick)="openInquiry()">
|
|
7003
6981
|
* </ds-mobile-interactive-list-item-inquiry>
|
|
7004
6982
|
* ```
|
|
@@ -7046,6 +7024,13 @@ class DsMobileInteractiveListItemInquiryComponent {
|
|
|
7046
7024
|
* Whether to show chevron icon
|
|
7047
7025
|
*/
|
|
7048
7026
|
showChevron = input(true, ...(ngDevMode ? [{ debugName: "showChevron" }] : []));
|
|
7027
|
+
/**
|
|
7028
|
+
* Enable long-press interaction when clickable is true
|
|
7029
|
+
* Set to false to disable long-press but keep click
|
|
7030
|
+
* Also controls visibility of desktop "more" button
|
|
7031
|
+
* @default true
|
|
7032
|
+
*/
|
|
7033
|
+
enableLongPress = input(true, ...(ngDevMode ? [{ debugName: "enableLongPress" }] : []));
|
|
7049
7034
|
/**
|
|
7050
7035
|
* Emits when the inquiry item is clicked (if clickable)
|
|
7051
7036
|
*/
|
|
@@ -7074,11 +7059,12 @@ class DsMobileInteractiveListItemInquiryComponent {
|
|
|
7074
7059
|
this.longPress.emit();
|
|
7075
7060
|
}
|
|
7076
7061
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: DsMobileInteractiveListItemInquiryComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
7077
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.15", type: DsMobileInteractiveListItemInquiryComponent, isStandalone: true, selector: "ds-mobile-interactive-list-item-inquiry", inputs: { title: { classPropertyName: "title", publicName: "title", isSignal: true, isRequired: true, transformFunction: null }, description: { classPropertyName: "description", publicName: "description", isSignal: true, isRequired: false, transformFunction: null }, status: { classPropertyName: "status", publicName: "status", isSignal: true, isRequired: false, transformFunction: null }, statusLabel: { classPropertyName: "statusLabel", publicName: "statusLabel", isSignal: true, isRequired: false, transformFunction: null }, timestamp: { classPropertyName: "timestamp", publicName: "timestamp", isSignal: true, isRequired: true, transformFunction: null }, iconName: { classPropertyName: "iconName", publicName: "iconName", isSignal: true, isRequired: false, transformFunction: null }, iconColor: { classPropertyName: "iconColor", publicName: "iconColor", isSignal: true, isRequired: false, transformFunction: null }, variant: { classPropertyName: "variant", publicName: "variant", 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 } }, outputs: { inquiryClick: "inquiryClick", longPress: "longPress" }, ngImport: i0, template: `
|
|
7062
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.15", type: DsMobileInteractiveListItemInquiryComponent, isStandalone: true, selector: "ds-mobile-interactive-list-item-inquiry", inputs: { title: { classPropertyName: "title", publicName: "title", isSignal: true, isRequired: true, transformFunction: null }, description: { classPropertyName: "description", publicName: "description", isSignal: true, isRequired: false, transformFunction: null }, status: { classPropertyName: "status", publicName: "status", isSignal: true, isRequired: false, transformFunction: null }, statusLabel: { classPropertyName: "statusLabel", publicName: "statusLabel", isSignal: true, isRequired: false, transformFunction: null }, timestamp: { classPropertyName: "timestamp", publicName: "timestamp", isSignal: true, isRequired: true, transformFunction: null }, iconName: { classPropertyName: "iconName", publicName: "iconName", isSignal: true, isRequired: false, transformFunction: null }, iconColor: { classPropertyName: "iconColor", publicName: "iconColor", isSignal: true, isRequired: false, transformFunction: null }, variant: { classPropertyName: "variant", publicName: "variant", 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 }, enableLongPress: { classPropertyName: "enableLongPress", publicName: "enableLongPress", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { inquiryClick: "inquiryClick", longPress: "longPress" }, ngImport: i0, template: `
|
|
7078
7063
|
<ds-mobile-list-item
|
|
7079
7064
|
[leadingSize]="'32px'"
|
|
7080
7065
|
[variant]="variant()"
|
|
7081
7066
|
[interactive]="clickable()"
|
|
7067
|
+
[enableLongPress]="enableLongPress()"
|
|
7082
7068
|
(itemClick)="handleInquiryClick()"
|
|
7083
7069
|
(longPress)="handleLongPress()"
|
|
7084
7070
|
(moreButtonClick)="handleMoreButtonClick($event)">
|
|
@@ -7126,7 +7112,7 @@ class DsMobileInteractiveListItemInquiryComponent {
|
|
|
7126
7112
|
</div>
|
|
7127
7113
|
}
|
|
7128
7114
|
</ds-mobile-list-item>
|
|
7129
|
-
`, isInline: true, styles: [":
|
|
7115
|
+
`, isInline: true, styles: [":host{display:block}:host:last-child{--divider-display: none;--item-padding-bottom: 0}.inquiry-avatar{flex-shrink:0}.inquiry-avatar:not(.closed)::ng-deep .avatar--icon{background-color:var(--color-primary-surface, #5d5fef)!important}.inquiry-avatar:not(.closed)::ng-deep .avatar--icon ds-icon,.inquiry-avatar:not(.closed)::ng-deep .avatar--icon ds-icon::ng-deep svg{color:var(--color-primary-content, #ffffff)!important;fill:var(--color-primary-content, #ffffff)!important}.inquiry-avatar.closed::ng-deep .avatar--icon{background-color:var(--text-color-default-tertiary, #737373)!important}.inquiry-avatar.closed::ng-deep .avatar--icon ds-icon,.inquiry-avatar.closed::ng-deep .avatar--icon ds-icon::ng-deep svg{color:#fff!important;fill:#fff!important}.inquiry-content{display:flex;flex-direction:column;gap:4px;flex:1;min-width:0}.inquiry-title{font-family:Brockmann,sans-serif;font-size:var(--font-size-sm, 14px);font-weight:600;line-height:20px;letter-spacing:-.3px;color:var(--text-color-default-primary, #202227);margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.inquiry-description{font-family:Brockmann,sans-serif;font-size:var(--font-size-sm, 14px);font-weight:400;line-height:20px;letter-spacing:-.3px;color:var(--text-color-default-secondary, #545B66);margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.inquiry-meta{font-family:Brockmann,sans-serif;font-size:var(--font-size-xs, 12px);font-weight:400;line-height:1.2;letter-spacing:-.26px;color:var(--text-color-default-secondary, #545B66);display:flex;align-items:center;gap:8px;margin-top:4px}.inquiry-status{display:flex;align-items:center;gap:6px;font-family:Brockmann,sans-serif;font-size:var(--font-size-xs);font-weight:500;line-height:1.2;letter-spacing:-.26px;color:var(--text-color-default-secondary, #545B66)}.inquiry-status.open,.inquiry-status.closed{color:var(--text-color-default-tertiary, #737373)}.inquiry-timestamp{display:flex;align-items:center;gap:4px;font-family:Brockmann,sans-serif;font-size:var(--font-size-xs);font-weight:400;line-height:1.2;letter-spacing:-.26px;color:var(--text-color-default-secondary, #545B66)}.inquiry-trailing{display:flex;align-items:center;color:var(--color-text-tertiary, #a3a3a3)}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "component", type: DsIconComponent, selector: "ds-icon", inputs: ["name", "size", "color", "interactive"] }, { kind: "component", type: DsShapeIndicatorComponent, selector: "ds-shape-indicator", inputs: ["shape", "variant", "label"] }, { kind: "component", type: DsAvatarComponent, selector: "ds-avatar", inputs: ["type", "size", "initials", "src", "alt", "iconName", "iconColor"] }, { kind: "component", type: DsMobileListItemComponent, selector: "ds-mobile-list-item", inputs: ["leadingSize", "variant", "align", "interactive", "disabled", "loading", "enableLongPress", "showDesktopMoreButton", "interactiveOffset", "title", "subtitle", "showDivider", "dividerSpacing"], outputs: ["itemClick", "moreButtonClick"] }] });
|
|
7130
7116
|
}
|
|
7131
7117
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: DsMobileInteractiveListItemInquiryComponent, decorators: [{
|
|
7132
7118
|
type: Component,
|
|
@@ -7135,6 +7121,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
|
|
|
7135
7121
|
[leadingSize]="'32px'"
|
|
7136
7122
|
[variant]="variant()"
|
|
7137
7123
|
[interactive]="clickable()"
|
|
7124
|
+
[enableLongPress]="enableLongPress()"
|
|
7138
7125
|
(itemClick)="handleInquiryClick()"
|
|
7139
7126
|
(longPress)="handleLongPress()"
|
|
7140
7127
|
(moreButtonClick)="handleMoreButtonClick($event)">
|
|
@@ -7182,8 +7169,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
|
|
|
7182
7169
|
</div>
|
|
7183
7170
|
}
|
|
7184
7171
|
</ds-mobile-list-item>
|
|
7185
|
-
`, styles: [":
|
|
7186
|
-
}], propDecorators: { title: [{ type: i0.Input, args: [{ isSignal: true, alias: "title", required: true }] }], description: [{ type: i0.Input, args: [{ isSignal: true, alias: "description", required: false }] }], status: [{ type: i0.Input, args: [{ isSignal: true, alias: "status", required: false }] }], statusLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "statusLabel", required: false }] }], timestamp: [{ type: i0.Input, args: [{ isSignal: true, alias: "timestamp", required: true }] }], iconName: [{ type: i0.Input, args: [{ isSignal: true, alias: "iconName", required: false }] }], iconColor: [{ type: i0.Input, args: [{ isSignal: true, alias: "iconColor", required: false }] }], variant: [{ type: i0.Input, args: [{ isSignal: true, alias: "variant", required: false }] }], clickable: [{ type: i0.Input, args: [{ isSignal: true, alias: "clickable", required: false }] }], showChevron: [{ type: i0.Input, args: [{ isSignal: true, alias: "showChevron", required: false }] }], inquiryClick: [{ type: i0.Output, args: ["inquiryClick"] }], longPress: [{ type: i0.Output, args: ["longPress"] }] } });
|
|
7172
|
+
`, styles: [":host{display:block}:host:last-child{--divider-display: none;--item-padding-bottom: 0}.inquiry-avatar{flex-shrink:0}.inquiry-avatar:not(.closed)::ng-deep .avatar--icon{background-color:var(--color-primary-surface, #5d5fef)!important}.inquiry-avatar:not(.closed)::ng-deep .avatar--icon ds-icon,.inquiry-avatar:not(.closed)::ng-deep .avatar--icon ds-icon::ng-deep svg{color:var(--color-primary-content, #ffffff)!important;fill:var(--color-primary-content, #ffffff)!important}.inquiry-avatar.closed::ng-deep .avatar--icon{background-color:var(--text-color-default-tertiary, #737373)!important}.inquiry-avatar.closed::ng-deep .avatar--icon ds-icon,.inquiry-avatar.closed::ng-deep .avatar--icon ds-icon::ng-deep svg{color:#fff!important;fill:#fff!important}.inquiry-content{display:flex;flex-direction:column;gap:4px;flex:1;min-width:0}.inquiry-title{font-family:Brockmann,sans-serif;font-size:var(--font-size-sm, 14px);font-weight:600;line-height:20px;letter-spacing:-.3px;color:var(--text-color-default-primary, #202227);margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.inquiry-description{font-family:Brockmann,sans-serif;font-size:var(--font-size-sm, 14px);font-weight:400;line-height:20px;letter-spacing:-.3px;color:var(--text-color-default-secondary, #545B66);margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.inquiry-meta{font-family:Brockmann,sans-serif;font-size:var(--font-size-xs, 12px);font-weight:400;line-height:1.2;letter-spacing:-.26px;color:var(--text-color-default-secondary, #545B66);display:flex;align-items:center;gap:8px;margin-top:4px}.inquiry-status{display:flex;align-items:center;gap:6px;font-family:Brockmann,sans-serif;font-size:var(--font-size-xs);font-weight:500;line-height:1.2;letter-spacing:-.26px;color:var(--text-color-default-secondary, #545B66)}.inquiry-status.open,.inquiry-status.closed{color:var(--text-color-default-tertiary, #737373)}.inquiry-timestamp{display:flex;align-items:center;gap:4px;font-family:Brockmann,sans-serif;font-size:var(--font-size-xs);font-weight:400;line-height:1.2;letter-spacing:-.26px;color:var(--text-color-default-secondary, #545B66)}.inquiry-trailing{display:flex;align-items:center;color:var(--color-text-tertiary, #a3a3a3)}\n"] }]
|
|
7173
|
+
}], propDecorators: { title: [{ type: i0.Input, args: [{ isSignal: true, alias: "title", required: true }] }], description: [{ type: i0.Input, args: [{ isSignal: true, alias: "description", required: false }] }], status: [{ type: i0.Input, args: [{ isSignal: true, alias: "status", required: false }] }], statusLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "statusLabel", required: false }] }], timestamp: [{ type: i0.Input, args: [{ isSignal: true, alias: "timestamp", required: true }] }], iconName: [{ type: i0.Input, args: [{ isSignal: true, alias: "iconName", required: false }] }], iconColor: [{ type: i0.Input, args: [{ isSignal: true, alias: "iconColor", required: false }] }], variant: [{ type: i0.Input, args: [{ isSignal: true, alias: "variant", required: false }] }], clickable: [{ type: i0.Input, args: [{ isSignal: true, alias: "clickable", required: false }] }], showChevron: [{ type: i0.Input, args: [{ isSignal: true, alias: "showChevron", required: false }] }], enableLongPress: [{ type: i0.Input, args: [{ isSignal: true, alias: "enableLongPress", required: false }] }], inquiryClick: [{ type: i0.Output, args: ["inquiryClick"] }], longPress: [{ type: i0.Output, args: ["longPress"] }] } });
|
|
7187
7174
|
|
|
7188
7175
|
/**
|
|
7189
7176
|
* DsMobileInteractiveListItemMessageComponent
|
|
@@ -7296,7 +7283,7 @@ class DsMobileInteractiveListItemMessageComponent {
|
|
|
7296
7283
|
<p class="message-preview">{{ message() }}</p>
|
|
7297
7284
|
</div>
|
|
7298
7285
|
</ds-mobile-list-item>
|
|
7299
|
-
`, isInline: true, styles: [":host{display:block}:host:last-child{--divider-display: none;--item-padding-bottom: 0}.message-header{display:flex;align-items:center;justify-content:space-between;height:32px;margin-bottom:8px}.sender-details{display:flex;flex-direction:column;align-items:flex-start;gap:2px;flex:1;min-width:0}.sender-name-row{display:flex;align-items:center;gap:6px;flex-shrink:0}.sender-name{font-family:Brockmann,sans-serif;font-size:var(--font-size-sm);font-weight:600;line-height:20px;letter-spacing:-.3px;color:var(--text-color-default-primary, #202227);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex-shrink:0}.sender-meta{font-family:Brockmann,sans-serif;font-size:var(--font-size-xs);font-weight:400;line-height:1.2;letter-spacing:-.26px;color:var(--text-color-default-tertiary, #737373);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex-shrink:1;display:flex;align-items:center;gap:4px}.meta-separator{color:var(--text-color-default-tertiary, #737373);opacity:.5}.unread-indicator{width:8px;height:8px;border-radius:50%;background:var(--color-brand-primary, #5d5fef);flex-shrink:0}.message-preview{font-family:Brockmann,sans-serif;font-size:var(--font-size-sm);font-weight:400;line-height:20px;letter-spacing:-.3px;color:var(--text-color-default-secondary, #545B66);margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "component", type: DsAvatarWithBadgeComponent, selector: "ds-avatar-with-badge", inputs: ["type", "size", "initials", "src", "iconName", "showBadge", "badgePosition"] }, { kind: "component", type: DsMobileListItemComponent, selector: "ds-mobile-list-item", inputs: ["leadingSize", "variant", "align", "interactive", "disabled", "loading", "enableLongPress", "showDesktopMoreButton", "interactiveOffset", "title", "subtitle", "showDivider", "dividerSpacing"], outputs: ["itemClick", "moreButtonClick"] }] });
|
|
7286
|
+
`, isInline: true, styles: [":host{display:block}:host:last-child{--divider-display: none;--item-padding-bottom: 0}.message-header{display:flex;align-items:center;justify-content:space-between;height:32px;margin-bottom:8px}.sender-details{display:flex;flex-direction:column;align-items:flex-start;gap:2px;flex:1;min-width:0}.sender-name-row{display:flex;align-items:center;gap:6px;flex-shrink:0}.sender-name{font-family:Brockmann,sans-serif;font-size:var(--font-size-sm, 14px);font-weight:600;line-height:20px;letter-spacing:-.3px;color:var(--text-color-default-primary, #202227);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex-shrink:0}.sender-meta{font-family:Brockmann,sans-serif;font-size:var(--font-size-xs, 12px);font-weight:400;line-height:1.2;letter-spacing:-.26px;color:var(--text-color-default-tertiary, #737373);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex-shrink:1;display:flex;align-items:center;gap:4px}.meta-separator{color:var(--text-color-default-tertiary, #737373);opacity:.5}.unread-indicator{width:8px;height:8px;border-radius:50%;background:var(--color-brand-primary, #5d5fef);flex-shrink:0}.message-preview{font-family:Brockmann,sans-serif;font-size:var(--font-size-sm);font-weight:400;line-height:20px;letter-spacing:-.3px;color:var(--text-color-default-secondary, #545B66);margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "component", type: DsAvatarWithBadgeComponent, selector: "ds-avatar-with-badge", inputs: ["type", "size", "initials", "src", "iconName", "showBadge", "badgePosition"] }, { kind: "component", type: DsMobileListItemComponent, selector: "ds-mobile-list-item", inputs: ["leadingSize", "variant", "align", "interactive", "disabled", "loading", "enableLongPress", "showDesktopMoreButton", "interactiveOffset", "title", "subtitle", "showDivider", "dividerSpacing"], outputs: ["itemClick", "moreButtonClick"] }] });
|
|
7300
7287
|
}
|
|
7301
7288
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: DsMobileInteractiveListItemMessageComponent, decorators: [{
|
|
7302
7289
|
type: Component,
|
|
@@ -7338,7 +7325,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
|
|
|
7338
7325
|
<p class="message-preview">{{ message() }}</p>
|
|
7339
7326
|
</div>
|
|
7340
7327
|
</ds-mobile-list-item>
|
|
7341
|
-
`, styles: [":host{display:block}:host:last-child{--divider-display: none;--item-padding-bottom: 0}.message-header{display:flex;align-items:center;justify-content:space-between;height:32px;margin-bottom:8px}.sender-details{display:flex;flex-direction:column;align-items:flex-start;gap:2px;flex:1;min-width:0}.sender-name-row{display:flex;align-items:center;gap:6px;flex-shrink:0}.sender-name{font-family:Brockmann,sans-serif;font-size:var(--font-size-sm);font-weight:600;line-height:20px;letter-spacing:-.3px;color:var(--text-color-default-primary, #202227);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex-shrink:0}.sender-meta{font-family:Brockmann,sans-serif;font-size:var(--font-size-xs);font-weight:400;line-height:1.2;letter-spacing:-.26px;color:var(--text-color-default-tertiary, #737373);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex-shrink:1;display:flex;align-items:center;gap:4px}.meta-separator{color:var(--text-color-default-tertiary, #737373);opacity:.5}.unread-indicator{width:8px;height:8px;border-radius:50%;background:var(--color-brand-primary, #5d5fef);flex-shrink:0}.message-preview{font-family:Brockmann,sans-serif;font-size:var(--font-size-sm);font-weight:400;line-height:20px;letter-spacing:-.3px;color:var(--text-color-default-secondary, #545B66);margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}\n"] }]
|
|
7328
|
+
`, styles: [":host{display:block}:host:last-child{--divider-display: none;--item-padding-bottom: 0}.message-header{display:flex;align-items:center;justify-content:space-between;height:32px;margin-bottom:8px}.sender-details{display:flex;flex-direction:column;align-items:flex-start;gap:2px;flex:1;min-width:0}.sender-name-row{display:flex;align-items:center;gap:6px;flex-shrink:0}.sender-name{font-family:Brockmann,sans-serif;font-size:var(--font-size-sm, 14px);font-weight:600;line-height:20px;letter-spacing:-.3px;color:var(--text-color-default-primary, #202227);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex-shrink:0}.sender-meta{font-family:Brockmann,sans-serif;font-size:var(--font-size-xs, 12px);font-weight:400;line-height:1.2;letter-spacing:-.26px;color:var(--text-color-default-tertiary, #737373);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex-shrink:1;display:flex;align-items:center;gap:4px}.meta-separator{color:var(--text-color-default-tertiary, #737373);opacity:.5}.unread-indicator{width:8px;height:8px;border-radius:50%;background:var(--color-brand-primary, #5d5fef);flex-shrink:0}.message-preview{font-family:Brockmann,sans-serif;font-size:var(--font-size-sm);font-weight:400;line-height:20px;letter-spacing:-.3px;color:var(--text-color-default-secondary, #545B66);margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}\n"] }]
|
|
7342
7329
|
}], propDecorators: { senderName: [{ type: i0.Input, args: [{ isSignal: true, alias: "senderName", required: true }] }], senderRole: [{ type: i0.Input, args: [{ isSignal: true, alias: "senderRole", required: true }] }], timestamp: [{ type: i0.Input, args: [{ isSignal: true, alias: "timestamp", required: false }] }], message: [{ type: i0.Input, args: [{ isSignal: true, alias: "message", required: true }] }], avatarInitials: [{ type: i0.Input, args: [{ isSignal: true, alias: "avatarInitials", required: false }] }], avatarType: [{ type: i0.Input, args: [{ isSignal: true, alias: "avatarType", required: false }] }], avatarSrc: [{ type: i0.Input, args: [{ isSignal: true, alias: "avatarSrc", required: false }] }], unread: [{ type: i0.Input, args: [{ isSignal: true, alias: "unread", required: false }] }], clickable: [{ type: i0.Input, args: [{ isSignal: true, alias: "clickable", required: false }] }], messageClick: [{ type: i0.Output, args: ["messageClick"] }], longPress: [{ type: i0.Output, args: ["longPress"] }] } });
|
|
7343
7330
|
|
|
7344
7331
|
/**
|
|
@@ -7602,9 +7589,7 @@ class DsMobileTabBarComponent {
|
|
|
7602
7589
|
ngOnInit() {
|
|
7603
7590
|
// Listen to router events to detect active tab from URL
|
|
7604
7591
|
if (this.router) {
|
|
7605
|
-
this.routerSubscription = this.router.events
|
|
7606
|
-
.pipe(filter((event) => event instanceof NavigationEnd))
|
|
7607
|
-
.subscribe((event) => {
|
|
7592
|
+
this.routerSubscription = this.router.events.pipe(filter((event) => event instanceof NavigationEnd)).subscribe((event) => {
|
|
7608
7593
|
const url = event.urlAfterRedirects || event.url;
|
|
7609
7594
|
// Extract the route segment (e.g., /tab-bar-test/home -> home)
|
|
7610
7595
|
const segments = url.split('/').filter((s) => s);
|
|
@@ -7690,13 +7675,9 @@ class DsMobileTabBarComponent {
|
|
|
7690
7675
|
// console.log('[ds-mobile-tab-bar] updateSlot: After update, slot attribute:', verifySlot, 'slot property:', verifySlotProperty);
|
|
7691
7676
|
// Check computed styles
|
|
7692
7677
|
const computedStyle = window.getComputedStyle(tabBar);
|
|
7693
|
-
const parentComputedStyle = tabBar.parentElement
|
|
7694
|
-
? window.getComputedStyle(tabBar.parentElement)
|
|
7695
|
-
: null;
|
|
7678
|
+
const parentComputedStyle = tabBar.parentElement ? window.getComputedStyle(tabBar.parentElement) : null;
|
|
7696
7679
|
const ionTabsForStyles = tabBar.closest('ion-tabs');
|
|
7697
|
-
const ionTabsComputedStyle = ionTabsForStyles
|
|
7698
|
-
? window.getComputedStyle(ionTabsForStyles)
|
|
7699
|
-
: null;
|
|
7680
|
+
const ionTabsComputedStyle = ionTabsForStyles ? window.getComputedStyle(ionTabsForStyles) : null;
|
|
7700
7681
|
// console.log('[ds-mobile-tab-bar] updateSlot: Computed styles:', {
|
|
7701
7682
|
// tabBar: {
|
|
7702
7683
|
// position: computedStyle.position,
|
|
@@ -7727,9 +7708,7 @@ class DsMobileTabBarComponent {
|
|
|
7727
7708
|
// Even if slot is correct, check computed styles to see why it's not at top
|
|
7728
7709
|
const computedStyle = window.getComputedStyle(tabBar);
|
|
7729
7710
|
const ionTabsForStyles = tabBar.closest('ion-tabs');
|
|
7730
|
-
const ionTabsComputedStyle = ionTabsForStyles
|
|
7731
|
-
? window.getComputedStyle(ionTabsForStyles)
|
|
7732
|
-
: null;
|
|
7711
|
+
const ionTabsComputedStyle = ionTabsForStyles ? window.getComputedStyle(ionTabsForStyles) : null;
|
|
7733
7712
|
const tabBarRect = tabBar.getBoundingClientRect();
|
|
7734
7713
|
// Log key values directly so they're always visible
|
|
7735
7714
|
// console.log('[ds-mobile-tab-bar] KEY VALUES:');
|
|
@@ -7815,8 +7794,7 @@ class DsMobileTabBarComponent {
|
|
|
7815
7794
|
// console.log('[ds-mobile-tab-bar] setupSlotEnforcement: Setting up MutationObserver');
|
|
7816
7795
|
const observer = new MutationObserver((mutations) => {
|
|
7817
7796
|
mutations.forEach((mutation) => {
|
|
7818
|
-
if (mutation.type === 'attributes' &&
|
|
7819
|
-
mutation.attributeName === 'slot') {
|
|
7797
|
+
if (mutation.type === 'attributes' && mutation.attributeName === 'slot') {
|
|
7820
7798
|
const target = mutation.target;
|
|
7821
7799
|
const expectedSlot = this.isDesktop() ? 'top' : 'bottom';
|
|
7822
7800
|
// Check both host element and tab bar
|
|
@@ -7893,11 +7871,9 @@ class DsMobileTabBarComponent {
|
|
|
7893
7871
|
};
|
|
7894
7872
|
this.mutationObserver = new MutationObserver((mutations) => {
|
|
7895
7873
|
mutations.forEach((mutation) => {
|
|
7896
|
-
if (mutation.type === 'attributes' &&
|
|
7897
|
-
mutation.attributeName === 'title') {
|
|
7874
|
+
if (mutation.type === 'attributes' && mutation.attributeName === 'title') {
|
|
7898
7875
|
const target = mutation.target;
|
|
7899
|
-
if (target.tagName === 'ION-TAB-BUTTON' &&
|
|
7900
|
-
target.hasAttribute('title')) {
|
|
7876
|
+
if (target.tagName === 'ION-TAB-BUTTON' && target.hasAttribute('title')) {
|
|
7901
7877
|
target.removeAttribute('title');
|
|
7902
7878
|
}
|
|
7903
7879
|
}
|
|
@@ -8083,15 +8059,13 @@ class DsMobileTabBarComponent {
|
|
|
8083
8059
|
if (result.data?.action) {
|
|
8084
8060
|
// Emit the selected action to parent
|
|
8085
8061
|
this.profileActionSelected.emit(result.data);
|
|
8062
|
+
// Also notify globally via UserService
|
|
8063
|
+
this.userService.notifyProfileAction(result.data);
|
|
8086
8064
|
}
|
|
8087
8065
|
}
|
|
8088
8066
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: DsMobileTabBarComponent, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
8089
8067
|
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.15", type: DsMobileTabBarComponent, isStandalone: true, selector: "ds-mobile-tab-bar", inputs: { tabs: "tabs", avatarType: "avatarType", avatarInitials: "avatarInitials", avatarSrc: "avatarSrc", avatarIconName: "avatarIconName", profileMenuItems: "profileMenuItems" }, outputs: { avatarClick: "avatarClick", profileActionSelected: "profileActionSelected" }, ngImport: i0, template: `
|
|
8090
|
-
<ion-tab-bar
|
|
8091
|
-
[attr.slot]="isDesktop() ? 'top' : 'bottom'"
|
|
8092
|
-
class="ds-tab-bar"
|
|
8093
|
-
[class.ds-tab-bar--desktop]="isDesktop()"
|
|
8094
|
-
>
|
|
8068
|
+
<ion-tab-bar [attr.slot]="isDesktop() ? 'top' : 'bottom'" class="ds-tab-bar" [class.ds-tab-bar--desktop]="isDesktop()">
|
|
8095
8069
|
<!-- Logo (desktop only, positioned via CSS) -->
|
|
8096
8070
|
<div class="ds-tab-bar__logo">
|
|
8097
8071
|
<ds-logo variant="mark" size="lg" />
|
|
@@ -8110,16 +8084,8 @@ class DsMobileTabBarComponent {
|
|
|
8110
8084
|
>
|
|
8111
8085
|
<div class="tab-icon-ripple"></div>
|
|
8112
8086
|
<div class="tab-icon-wrapper">
|
|
8113
|
-
<ds-icon
|
|
8114
|
-
|
|
8115
|
-
[size]="isDesktop() ? '20px' : '24px'"
|
|
8116
|
-
class="tab-icon-inactive"
|
|
8117
|
-
/>
|
|
8118
|
-
<ds-icon
|
|
8119
|
-
[name]="tab.iconActive"
|
|
8120
|
-
[size]="isDesktop() ? '20px' : '24px'"
|
|
8121
|
-
class="tab-icon-active"
|
|
8122
|
-
/>
|
|
8087
|
+
<ds-icon [name]="tab.icon" [size]="isDesktop() ? '20px' : '24px'" class="tab-icon-inactive" />
|
|
8088
|
+
<ds-icon [name]="tab.iconActive" [size]="isDesktop() ? '20px' : '24px'" class="tab-icon-active" />
|
|
8123
8089
|
</div>
|
|
8124
8090
|
<ion-label [attr.aria-hidden]="true">{{ tab.label }}</ion-label>
|
|
8125
8091
|
</ion-tab-button>
|
|
@@ -8127,34 +8093,15 @@ class DsMobileTabBarComponent {
|
|
|
8127
8093
|
|
|
8128
8094
|
<!-- Avatar (desktop only, positioned via CSS) -->
|
|
8129
8095
|
<div class="ds-tab-bar__actions">
|
|
8130
|
-
<ds-avatar
|
|
8131
|
-
[size]="'md'"
|
|
8132
|
-
[type]="avatarType"
|
|
8133
|
-
[initials]="avatarInitials"
|
|
8134
|
-
[src]="avatarSrc"
|
|
8135
|
-
[iconName]="avatarIconName"
|
|
8136
|
-
(click)="handleAvatarClick()"
|
|
8137
|
-
/>
|
|
8096
|
+
<ds-avatar [size]="'md'" [type]="avatarType" [initials]="avatarInitials" [src]="avatarSrc" [iconName]="avatarIconName" (click)="handleAvatarClick()" />
|
|
8138
8097
|
</div>
|
|
8139
8098
|
</ion-tab-bar>
|
|
8140
8099
|
`, isInline: true, styles: [":host{--ds-tab-bar-height: 64px}@media (min-width: 768px){:host{display:block;--ds-tab-bar-height: 64px}}@media (max-width: 767px){:host{display:contents}}ion-tabs.ds-tabs-wrapper{height:100%;background:var(--color-brand-secondary)}ion-tab-button:before,ion-tab-button:after{content:none!important;display:none!important}ion-tab-button[title]:before,ion-tab-button[title]:after{display:none!important}ion-tab-button::part(native):before,ion-tab-button::part(native):after{display:none!important}.ds-tab-bar{--background: var(--color-background-neutral-primary);transition:transform .2s ease-in-out}ion-tab-bar[slot=bottom]{border-top:1px solid var(--border-color-default);padding-top:8px;padding-bottom:max(8px,calc(var(--ion-safe-area-bottom, 0px) - 16px));padding-left:12px;padding-right:12px}@media (max-width: 767px){ion-tab-bar[slot=bottom]{position:fixed;bottom:0;left:0;right:0;z-index:100}}@media (max-width: 767px){:host-context(ion-tabs:has(ds-mobile-page-details)) .ds-tab-bar{transform:translateY(100%);transition:transform .3s ease}}.ds-tab-bar__logo,.ds-tab-bar__actions{display:none}.ds-tab-bar__tabs{display:flex;width:100%;justify-content:space-around;align-items:center}@media (min-width: 769px){ion-tab-bar[slot=bottom]{padding-bottom:env(safe-area-inset-bottom,0px)}}@media (display-mode: standalone){ion-tab-bar[slot=bottom]{padding-bottom:env(safe-area-inset-bottom,0px)!important}}@media (min-width: 768px){:host[slot=top]{order:-1!important}:host ion-tab-bar{position:relative!important;bottom:auto!important;top:0!important}ion-tab-bar[slot=top]{--background: var(--color-brand-secondary);position:relative!important;display:flex!important;align-items:center;padding:12px 24px;height:64px;max-width:none;bottom:auto!important;top:0!important}ion-tab-bar[slot=bottom]{position:relative!important;bottom:auto!important}ion-tabs>div:not([slot]){order:1!important}.ds-tab-bar__logo{display:flex;position:absolute;left:24px;align-items:center;color:var(--header-content-color, white)}.ds-tab-bar__actions{display:flex;position:absolute;right:24px;align-items:center;gap:12px}.ds-tab-bar__tabs{display:flex;gap:8px;align-items:center;max-width:640px;width:100%;margin:0 auto;justify-content:center;padding-left:var(--content-padding-md);padding-right:var(--content-padding-md)}.logomark{height:28px;width:auto;flex-shrink:0}}@media (min-width: 992px){.ds-tab-bar__tabs{max-width:640px;padding-left:var(--content-padding-lg);padding-right:var(--content-padding-lg);justify-content:center}}@media (min-width: 1440px){.ds-tab-bar__tabs{max-width:640px;padding-left:var(--content-padding-xl);padding-right:var(--content-padding-xl)}}@media (min-width: 1768px){.ds-tab-bar__tabs{max-width:640px;padding-left:var(--content-padding-2xl);padding-right:var(--content-padding-2xl)}}@media (min-width: 1920px){.ds-tab-bar__tabs{max-width:640px;padding-left:var(--content-padding-3xl);padding-right:var(--content-padding-3xl)}}ion-tab-button{--color: var(--text-color-default-tertiary);--color-selected: var(--color-brand-base);display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;overflow:visible;pointer-events:auto}ion-tab-button[title]:before{content:attr(title);position:absolute;opacity:0;pointer-events:none}.tab-icon-ripple{position:absolute;left:50%;top:50%;width:40px;height:40px;border-radius:50%;background:var(--color-brand-base);transform:translate(-50%,-50%) scale(0);opacity:0;pointer-events:none;transition:all .6s cubic-bezier(.36,1.2,.04,1.4);z-index:0}.tab-selected .tab-icon-ripple{transform:translate(-50%,-50%) scale(2);opacity:.05;animation:ripple-fade .6s cubic-bezier(.36,.5,.04,1.8) forwards}@keyframes ripple-fade{0%{opacity:0;transform:translate(-50%,-50%) scale(0)}30%{opacity:.1}to{opacity:0;transform:translate(-50%,-50%) scale(2)}}ion-tab-button::part(native){overflow:visible}ion-tab-button ion-ripple-effect{color:var(--color-brand-base);border-radius:1000px}ion-tab-button ion-label{font-size:var(--font-size-xs);font-weight:400;letter-spacing:-.3px;margin-top:0}.tab-icon-wrapper{position:relative;width:24px;height:24px;display:flex;align-items:center;justify-content:center;z-index:1;margin-bottom:4px}.tab-icon-inactive,.tab-icon-active{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);transition:all .8s cubic-bezier(.36,1,.04,1)}.tab-icon-inactive{opacity:1;transform:translate(-50%,-50%) scale(1)}.tab-icon-active{opacity:0;transform:translate(-50%,calc(-50% - 12px)) scale(.5)}.tab-selected .tab-icon-inactive{opacity:0;transform:translate(-50%,-50%) scale(.5)}.tab-selected .tab-icon-active{opacity:1;transform:translate(-50%,-50%) scale(1)}@media (min-width: 768px){.ds-tab-button{flex-direction:row;height:40px;padding:0 16px!important;border-radius:40px;transition:all .2s ease;width:-moz-fit-content;width:fit-content;min-width:-moz-fit-content;min-width:fit-content;flex:0 0 auto;--color: rgba(var(--color-secondary-content-rgb, 255, 255, 255), .7);--color-selected: var(--color-secondary-content, white);color:rgba(var(--color-secondary-content-rgb, 255, 255, 255),.7);background:rgba(var(--color-secondary-content-rgb, 255, 255, 255),.1);position:relative;overflow:hidden}.tab-icon-wrapper,.tab-icon-ripple{width:20px;height:20px}.ds-tab-button::part(native){border-radius:40px}.ds-tab-button:hover:not(.tab-selected){--color: var(--color-secondary-content, white);--color-selected: var(--color-secondary-content, white);color:var(--color-secondary-content, white)}.ds-tab-button:hover:not(.tab-selected) ion-label{color:var(--color-secondary-content, white)}.ds-tab-button:hover:not(.tab-selected) ds-icon{--icon-color: var(--color-secondary-content, white);color:var(--color-secondary-content, white)}.ds-tab-button:hover:not(.tab-selected) ds-icon svg{fill:var(--color-secondary-content, white)}.ds-tab-button.tab-selected,.ds-tab-button.tab-selected:hover{background:var(--color-background-brand);--color-selected: var(--color-primary-content, white);--color: var(--color-primary-content, white);color:var(--color-primary-content, white)}.ds-tab-button.tab-selected:hover ion-label{color:var(--color-primary-content, white)}.ds-tab-button.tab-selected:hover ds-icon{--icon-color: var(--color-primary-content, white);color:var(--color-primary-content, white)}.ds-tab-button.tab-selected:hover ds-icon svg{fill:var(--color-primary-content, white)}.ds-tab-button.tab-selected:hover .tab-icon-active{opacity:1!important;visibility:visible!important}.ds-tab-button.tab-selected:hover .tab-icon-inactive{opacity:0!important}.ds-tab-button.tab-selected ion-label{color:var(--color-primary-content, white)}.ds-tab-button.tab-selected ds-icon{--icon-color: var(--color-primary-content, white);color:var(--color-primary-content, white)}.ds-tab-button.tab-selected ds-icon svg{fill:var(--color-primary-content, white)}.ds-tab-button .button-native{width:auto;padding:0}.ds-tab-button ion-label{font-size:var(--font-size-sm);font-weight:500;margin:0;color:inherit}.ds-tab-button .tab-icon-wrapper{margin-right:4px;margin-bottom:0}.ds-tab-button ion-ripple-effect{color:rgba(var(--header-content-color-rgb, 255, 255, 255),.3);border-radius:1000px;transform:scale(1.5)}}@media (min-width: 768px){.ds-tab-bar__actions ds-avatar{cursor:pointer;transition:transform .2s ease}.ds-tab-bar__actions ds-avatar:hover{transform:scale(1.05)}}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: IonTabBar, selector: "ion-tab-bar", inputs: ["color", "mode", "selectedTab", "translucent"] }, { kind: "component", type: IonTabButton, selector: "ion-tab-button", inputs: ["disabled", "download", "href", "layout", "mode", "rel", "selected", "tab", "target"] }, { kind: "component", type: IonLabel, selector: "ion-label", inputs: ["color", "mode", "position"] }, { kind: "component", type: DsIconComponent, selector: "ds-icon", inputs: ["name", "size", "color", "interactive"] }, { kind: "component", type: DsAvatarComponent, selector: "ds-avatar", inputs: ["type", "size", "initials", "src", "alt", "iconName", "iconColor"] }, { kind: "component", type: DsLogoComponent, selector: "ds-logo", inputs: ["variant", "size", "customHeight", "customWidth"] }] });
|
|
8141
8100
|
}
|
|
8142
8101
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: DsMobileTabBarComponent, decorators: [{
|
|
8143
8102
|
type: Component,
|
|
8144
|
-
args: [{ selector: 'ds-mobile-tab-bar', standalone: true, imports: [
|
|
8145
|
-
|
|
8146
|
-
IonTabBar,
|
|
8147
|
-
IonTabButton,
|
|
8148
|
-
IonLabel,
|
|
8149
|
-
DsIconComponent,
|
|
8150
|
-
DsAvatarComponent,
|
|
8151
|
-
DsLogoComponent,
|
|
8152
|
-
], template: `
|
|
8153
|
-
<ion-tab-bar
|
|
8154
|
-
[attr.slot]="isDesktop() ? 'top' : 'bottom'"
|
|
8155
|
-
class="ds-tab-bar"
|
|
8156
|
-
[class.ds-tab-bar--desktop]="isDesktop()"
|
|
8157
|
-
>
|
|
8103
|
+
args: [{ selector: 'ds-mobile-tab-bar', standalone: true, imports: [CommonModule, IonTabBar, IonTabButton, IonLabel, DsIconComponent, DsAvatarComponent, DsLogoComponent], template: `
|
|
8104
|
+
<ion-tab-bar [attr.slot]="isDesktop() ? 'top' : 'bottom'" class="ds-tab-bar" [class.ds-tab-bar--desktop]="isDesktop()">
|
|
8158
8105
|
<!-- Logo (desktop only, positioned via CSS) -->
|
|
8159
8106
|
<div class="ds-tab-bar__logo">
|
|
8160
8107
|
<ds-logo variant="mark" size="lg" />
|
|
@@ -8173,16 +8120,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
|
|
|
8173
8120
|
>
|
|
8174
8121
|
<div class="tab-icon-ripple"></div>
|
|
8175
8122
|
<div class="tab-icon-wrapper">
|
|
8176
|
-
<ds-icon
|
|
8177
|
-
|
|
8178
|
-
[size]="isDesktop() ? '20px' : '24px'"
|
|
8179
|
-
class="tab-icon-inactive"
|
|
8180
|
-
/>
|
|
8181
|
-
<ds-icon
|
|
8182
|
-
[name]="tab.iconActive"
|
|
8183
|
-
[size]="isDesktop() ? '20px' : '24px'"
|
|
8184
|
-
class="tab-icon-active"
|
|
8185
|
-
/>
|
|
8123
|
+
<ds-icon [name]="tab.icon" [size]="isDesktop() ? '20px' : '24px'" class="tab-icon-inactive" />
|
|
8124
|
+
<ds-icon [name]="tab.iconActive" [size]="isDesktop() ? '20px' : '24px'" class="tab-icon-active" />
|
|
8186
8125
|
</div>
|
|
8187
8126
|
<ion-label [attr.aria-hidden]="true">{{ tab.label }}</ion-label>
|
|
8188
8127
|
</ion-tab-button>
|
|
@@ -8190,14 +8129,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
|
|
|
8190
8129
|
|
|
8191
8130
|
<!-- Avatar (desktop only, positioned via CSS) -->
|
|
8192
8131
|
<div class="ds-tab-bar__actions">
|
|
8193
|
-
<ds-avatar
|
|
8194
|
-
[size]="'md'"
|
|
8195
|
-
[type]="avatarType"
|
|
8196
|
-
[initials]="avatarInitials"
|
|
8197
|
-
[src]="avatarSrc"
|
|
8198
|
-
[iconName]="avatarIconName"
|
|
8199
|
-
(click)="handleAvatarClick()"
|
|
8200
|
-
/>
|
|
8132
|
+
<ds-avatar [size]="'md'" [type]="avatarType" [initials]="avatarInitials" [src]="avatarSrc" [iconName]="avatarIconName" (click)="handleAvatarClick()" />
|
|
8201
8133
|
</div>
|
|
8202
8134
|
</ion-tab-bar>
|
|
8203
8135
|
`, styles: [":host{--ds-tab-bar-height: 64px}@media (min-width: 768px){:host{display:block;--ds-tab-bar-height: 64px}}@media (max-width: 767px){:host{display:contents}}ion-tabs.ds-tabs-wrapper{height:100%;background:var(--color-brand-secondary)}ion-tab-button:before,ion-tab-button:after{content:none!important;display:none!important}ion-tab-button[title]:before,ion-tab-button[title]:after{display:none!important}ion-tab-button::part(native):before,ion-tab-button::part(native):after{display:none!important}.ds-tab-bar{--background: var(--color-background-neutral-primary);transition:transform .2s ease-in-out}ion-tab-bar[slot=bottom]{border-top:1px solid var(--border-color-default);padding-top:8px;padding-bottom:max(8px,calc(var(--ion-safe-area-bottom, 0px) - 16px));padding-left:12px;padding-right:12px}@media (max-width: 767px){ion-tab-bar[slot=bottom]{position:fixed;bottom:0;left:0;right:0;z-index:100}}@media (max-width: 767px){:host-context(ion-tabs:has(ds-mobile-page-details)) .ds-tab-bar{transform:translateY(100%);transition:transform .3s ease}}.ds-tab-bar__logo,.ds-tab-bar__actions{display:none}.ds-tab-bar__tabs{display:flex;width:100%;justify-content:space-around;align-items:center}@media (min-width: 769px){ion-tab-bar[slot=bottom]{padding-bottom:env(safe-area-inset-bottom,0px)}}@media (display-mode: standalone){ion-tab-bar[slot=bottom]{padding-bottom:env(safe-area-inset-bottom,0px)!important}}@media (min-width: 768px){:host[slot=top]{order:-1!important}:host ion-tab-bar{position:relative!important;bottom:auto!important;top:0!important}ion-tab-bar[slot=top]{--background: var(--color-brand-secondary);position:relative!important;display:flex!important;align-items:center;padding:12px 24px;height:64px;max-width:none;bottom:auto!important;top:0!important}ion-tab-bar[slot=bottom]{position:relative!important;bottom:auto!important}ion-tabs>div:not([slot]){order:1!important}.ds-tab-bar__logo{display:flex;position:absolute;left:24px;align-items:center;color:var(--header-content-color, white)}.ds-tab-bar__actions{display:flex;position:absolute;right:24px;align-items:center;gap:12px}.ds-tab-bar__tabs{display:flex;gap:8px;align-items:center;max-width:640px;width:100%;margin:0 auto;justify-content:center;padding-left:var(--content-padding-md);padding-right:var(--content-padding-md)}.logomark{height:28px;width:auto;flex-shrink:0}}@media (min-width: 992px){.ds-tab-bar__tabs{max-width:640px;padding-left:var(--content-padding-lg);padding-right:var(--content-padding-lg);justify-content:center}}@media (min-width: 1440px){.ds-tab-bar__tabs{max-width:640px;padding-left:var(--content-padding-xl);padding-right:var(--content-padding-xl)}}@media (min-width: 1768px){.ds-tab-bar__tabs{max-width:640px;padding-left:var(--content-padding-2xl);padding-right:var(--content-padding-2xl)}}@media (min-width: 1920px){.ds-tab-bar__tabs{max-width:640px;padding-left:var(--content-padding-3xl);padding-right:var(--content-padding-3xl)}}ion-tab-button{--color: var(--text-color-default-tertiary);--color-selected: var(--color-brand-base);display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;overflow:visible;pointer-events:auto}ion-tab-button[title]:before{content:attr(title);position:absolute;opacity:0;pointer-events:none}.tab-icon-ripple{position:absolute;left:50%;top:50%;width:40px;height:40px;border-radius:50%;background:var(--color-brand-base);transform:translate(-50%,-50%) scale(0);opacity:0;pointer-events:none;transition:all .6s cubic-bezier(.36,1.2,.04,1.4);z-index:0}.tab-selected .tab-icon-ripple{transform:translate(-50%,-50%) scale(2);opacity:.05;animation:ripple-fade .6s cubic-bezier(.36,.5,.04,1.8) forwards}@keyframes ripple-fade{0%{opacity:0;transform:translate(-50%,-50%) scale(0)}30%{opacity:.1}to{opacity:0;transform:translate(-50%,-50%) scale(2)}}ion-tab-button::part(native){overflow:visible}ion-tab-button ion-ripple-effect{color:var(--color-brand-base);border-radius:1000px}ion-tab-button ion-label{font-size:var(--font-size-xs);font-weight:400;letter-spacing:-.3px;margin-top:0}.tab-icon-wrapper{position:relative;width:24px;height:24px;display:flex;align-items:center;justify-content:center;z-index:1;margin-bottom:4px}.tab-icon-inactive,.tab-icon-active{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);transition:all .8s cubic-bezier(.36,1,.04,1)}.tab-icon-inactive{opacity:1;transform:translate(-50%,-50%) scale(1)}.tab-icon-active{opacity:0;transform:translate(-50%,calc(-50% - 12px)) scale(.5)}.tab-selected .tab-icon-inactive{opacity:0;transform:translate(-50%,-50%) scale(.5)}.tab-selected .tab-icon-active{opacity:1;transform:translate(-50%,-50%) scale(1)}@media (min-width: 768px){.ds-tab-button{flex-direction:row;height:40px;padding:0 16px!important;border-radius:40px;transition:all .2s ease;width:-moz-fit-content;width:fit-content;min-width:-moz-fit-content;min-width:fit-content;flex:0 0 auto;--color: rgba(var(--color-secondary-content-rgb, 255, 255, 255), .7);--color-selected: var(--color-secondary-content, white);color:rgba(var(--color-secondary-content-rgb, 255, 255, 255),.7);background:rgba(var(--color-secondary-content-rgb, 255, 255, 255),.1);position:relative;overflow:hidden}.tab-icon-wrapper,.tab-icon-ripple{width:20px;height:20px}.ds-tab-button::part(native){border-radius:40px}.ds-tab-button:hover:not(.tab-selected){--color: var(--color-secondary-content, white);--color-selected: var(--color-secondary-content, white);color:var(--color-secondary-content, white)}.ds-tab-button:hover:not(.tab-selected) ion-label{color:var(--color-secondary-content, white)}.ds-tab-button:hover:not(.tab-selected) ds-icon{--icon-color: var(--color-secondary-content, white);color:var(--color-secondary-content, white)}.ds-tab-button:hover:not(.tab-selected) ds-icon svg{fill:var(--color-secondary-content, white)}.ds-tab-button.tab-selected,.ds-tab-button.tab-selected:hover{background:var(--color-background-brand);--color-selected: var(--color-primary-content, white);--color: var(--color-primary-content, white);color:var(--color-primary-content, white)}.ds-tab-button.tab-selected:hover ion-label{color:var(--color-primary-content, white)}.ds-tab-button.tab-selected:hover ds-icon{--icon-color: var(--color-primary-content, white);color:var(--color-primary-content, white)}.ds-tab-button.tab-selected:hover ds-icon svg{fill:var(--color-primary-content, white)}.ds-tab-button.tab-selected:hover .tab-icon-active{opacity:1!important;visibility:visible!important}.ds-tab-button.tab-selected:hover .tab-icon-inactive{opacity:0!important}.ds-tab-button.tab-selected ion-label{color:var(--color-primary-content, white)}.ds-tab-button.tab-selected ds-icon{--icon-color: var(--color-primary-content, white);color:var(--color-primary-content, white)}.ds-tab-button.tab-selected ds-icon svg{fill:var(--color-primary-content, white)}.ds-tab-button .button-native{width:auto;padding:0}.ds-tab-button ion-label{font-size:var(--font-size-sm);font-weight:500;margin:0;color:inherit}.ds-tab-button .tab-icon-wrapper{margin-right:4px;margin-bottom:0}.ds-tab-button ion-ripple-effect{color:rgba(var(--header-content-color-rgb, 255, 255, 255),.3);border-radius:1000px;transform:scale(1.5)}}@media (min-width: 768px){.ds-tab-bar__actions ds-avatar{cursor:pointer;transition:transform .2s ease}.ds-tab-bar__actions ds-avatar:hover{transform:scale(1.05)}}\n"] }]
|
|
@@ -8389,7 +8321,7 @@ class DsMobileLightboxHeaderComponent {
|
|
|
8389
8321
|
</div>
|
|
8390
8322
|
</div>
|
|
8391
8323
|
</div>
|
|
8392
|
-
`, isInline: true, styles: [".author-details{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.author-name{font-family:Brockmann,sans-serif;font-size:var(--font-size-sm);font-weight:600;line-height:20px;letter-spacing:-.3px;color:var(--color-text-primary, #1a1a1a);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.author-meta{font-family:Brockmann,sans-serif;font-size:var(--font-size-xs);font-weight:400;line-height:1.2;letter-spacing:-.26px;color:var(--color-text-tertiary, #737373);display:flex;align-items:center;gap:6px}.author-meta .separator{color:var(--color-text-tertiary, #a0a0a0)}.lightbox-context .author-name,.overlay-context .author-name{color:#fffffff2}.lightbox-context .author-meta,.overlay-context .author-meta{color:#ffffffb3}.lightbox-context .author-meta .separator,.overlay-context .author-meta .separator{color:#ffffff80}.section-headline{font-size:var(--font-size-
|
|
8324
|
+
`, isInline: true, styles: [".author-details{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.author-name{font-family:Brockmann,sans-serif;font-size:var(--font-size-sm);font-weight:600;line-height:20px;letter-spacing:-.3px;color:var(--color-text-primary, #1a1a1a);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.author-meta{font-family:Brockmann,sans-serif;font-size:var(--font-size-xs);font-weight:400;line-height:1.2;letter-spacing:-.26px;color:var(--color-text-tertiary, #737373);display:flex;align-items:center;gap:6px}.author-meta .separator{color:var(--color-text-tertiary, #a0a0a0)}.lightbox-context .author-name,.overlay-context .author-name{color:#fffffff2}.lightbox-context .author-meta,.overlay-context .author-meta{color:#ffffffb3}.lightbox-context .author-meta .separator,.overlay-context .author-meta .separator{color:#ffffff80}.section-headline{font-size:var(--font-size-base);font-weight:600;color:var(--text-color-default-primary);padding:16px 0;margin:0;letter-spacing:-.2px;display:flex;align-items:center;gap:6px}.empty-state-title{font-family:Brockmann,sans-serif;font-size:var(--font-size-base);font-weight:600;line-height:1.3;color:var(--text-color-default-primary, #202227);margin:0 0 8px}.empty-state-description{font-family:Brockmann,sans-serif;font-size:var(--font-size-sm);font-weight:400;line-height:1.4;color:var(--text-color-default-secondary, #545B66);margin:0}.ghost-input-clean ::ng-deep .ds-input,.ghost-input-clean ::ng-deep .ds-textarea,.ghost-input-clean ::ng-deep .textarea-container{outline:none!important;border:none!important}.ghost-input-clean ::ng-deep .ds-input:hover,.ghost-input-clean ::ng-deep .ds-textarea:hover,.ghost-input-clean ::ng-deep .textarea-container:hover,.ghost-input-clean ::ng-deep .ds-input:focus,.ghost-input-clean ::ng-deep .ds-textarea:focus,.ghost-input-clean ::ng-deep .textarea-container:focus,.ghost-input-clean ::ng-deep .ds-input:focus-within,.ghost-input-clean ::ng-deep .ds-textarea:focus-within,.ghost-input-clean ::ng-deep .textarea-container:focus-within{outline:none!important;border:none!important;box-shadow:none!important}.ghost-input-clean ::ng-deep textarea{outline:none!important;border:none!important;box-shadow:none!important;resize:none!important}.ghost-input-clean ::ng-deep textarea:hover,.ghost-input-clean ::ng-deep textarea:focus{outline:none!important;border:none!important;box-shadow:none!important}\n", ".lightbox-header{position:fixed;top:0;left:0;right:0;z-index:1000;padding:0 16px;background:linear-gradient(to bottom,rgba(0,0,0,.8) 0%,rgba(0,0,0,.4) 80%,transparent 100%);pointer-events:none}.header-content{display:flex;align-items:center;justify-content:flex-end;gap:12px;pointer-events:auto}.post-author-info{display:flex;align-items:center;gap:12px;flex:1;min-width:0;margin-right:auto}.author-details{display:flex;flex-direction:column;min-width:0;flex:1}.author-name{color:#fff;font-family:Brockmann,sans-serif;font-size:var(--font-size-sm);font-weight:600;line-height:20px;letter-spacing:-.3px}.author-meta{color:#ffffffb3;font-family:Brockmann,sans-serif;font-size:var(--font-size-xs);font-weight:400;line-height:1.2;letter-spacing:-.26px;display:flex;align-items:center;gap:6px}.author-meta .separator{color:#ffffff80}.header-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.close-button,.share-button{pointer-events:auto;flex-shrink:0;border-radius:50%}.close-button::ng-deep button,.share-button::ng-deep button{color:#fff!important;background:#ffffff1a!important;border-radius:50%;transition:background .2s ease;border:none;width:36px!important;height:36px!important;min-width:36px!important;min-height:36px!important;padding:0!important;display:flex!important;align-items:center!important;justify-content:center!important}.close-button::ng-deep button:hover,.share-button::ng-deep button:hover{background:#ffffff26!important}.close-button::ng-deep button:active,.share-button::ng-deep button:active{background:#ffffff26!important}.close-button::ng-deep svg,.share-button::ng-deep svg{color:#fff!important;fill:#fff!important}@supports (padding-top: env(safe-area-inset-top)){.lightbox-header{padding-top:calc(16px + env(safe-area-inset-top))}}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "component", type: DsIconButtonComponent, selector: "ds-icon-button", inputs: ["variant", "size", "icon", "disabled", "loading", "pressed", "expanded", "ariaLabel", "tooltip", "tooltipDisabled", "tooltipPlacement"], outputs: ["clicked", "focused", "blurred"] }, { kind: "component", type: DsAvatarComponent, selector: "ds-avatar", inputs: ["type", "size", "initials", "src", "alt", "iconName", "iconColor"] }] });
|
|
8393
8325
|
}
|
|
8394
8326
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: DsMobileLightboxHeaderComponent, decorators: [{
|
|
8395
8327
|
type: Component,
|
|
@@ -8444,7 +8376,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
|
|
|
8444
8376
|
</div>
|
|
8445
8377
|
</div>
|
|
8446
8378
|
</div>
|
|
8447
|
-
`, styles: [".author-details{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.author-name{font-family:Brockmann,sans-serif;font-size:var(--font-size-sm);font-weight:600;line-height:20px;letter-spacing:-.3px;color:var(--color-text-primary, #1a1a1a);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.author-meta{font-family:Brockmann,sans-serif;font-size:var(--font-size-xs);font-weight:400;line-height:1.2;letter-spacing:-.26px;color:var(--color-text-tertiary, #737373);display:flex;align-items:center;gap:6px}.author-meta .separator{color:var(--color-text-tertiary, #a0a0a0)}.lightbox-context .author-name,.overlay-context .author-name{color:#fffffff2}.lightbox-context .author-meta,.overlay-context .author-meta{color:#ffffffb3}.lightbox-context .author-meta .separator,.overlay-context .author-meta .separator{color:#ffffff80}.section-headline{font-size:var(--font-size-
|
|
8379
|
+
`, styles: [".author-details{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.author-name{font-family:Brockmann,sans-serif;font-size:var(--font-size-sm);font-weight:600;line-height:20px;letter-spacing:-.3px;color:var(--color-text-primary, #1a1a1a);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.author-meta{font-family:Brockmann,sans-serif;font-size:var(--font-size-xs);font-weight:400;line-height:1.2;letter-spacing:-.26px;color:var(--color-text-tertiary, #737373);display:flex;align-items:center;gap:6px}.author-meta .separator{color:var(--color-text-tertiary, #a0a0a0)}.lightbox-context .author-name,.overlay-context .author-name{color:#fffffff2}.lightbox-context .author-meta,.overlay-context .author-meta{color:#ffffffb3}.lightbox-context .author-meta .separator,.overlay-context .author-meta .separator{color:#ffffff80}.section-headline{font-size:var(--font-size-base);font-weight:600;color:var(--text-color-default-primary);padding:16px 0;margin:0;letter-spacing:-.2px;display:flex;align-items:center;gap:6px}.empty-state-title{font-family:Brockmann,sans-serif;font-size:var(--font-size-base);font-weight:600;line-height:1.3;color:var(--text-color-default-primary, #202227);margin:0 0 8px}.empty-state-description{font-family:Brockmann,sans-serif;font-size:var(--font-size-sm);font-weight:400;line-height:1.4;color:var(--text-color-default-secondary, #545B66);margin:0}.ghost-input-clean ::ng-deep .ds-input,.ghost-input-clean ::ng-deep .ds-textarea,.ghost-input-clean ::ng-deep .textarea-container{outline:none!important;border:none!important}.ghost-input-clean ::ng-deep .ds-input:hover,.ghost-input-clean ::ng-deep .ds-textarea:hover,.ghost-input-clean ::ng-deep .textarea-container:hover,.ghost-input-clean ::ng-deep .ds-input:focus,.ghost-input-clean ::ng-deep .ds-textarea:focus,.ghost-input-clean ::ng-deep .textarea-container:focus,.ghost-input-clean ::ng-deep .ds-input:focus-within,.ghost-input-clean ::ng-deep .ds-textarea:focus-within,.ghost-input-clean ::ng-deep .textarea-container:focus-within{outline:none!important;border:none!important;box-shadow:none!important}.ghost-input-clean ::ng-deep textarea{outline:none!important;border:none!important;box-shadow:none!important;resize:none!important}.ghost-input-clean ::ng-deep textarea:hover,.ghost-input-clean ::ng-deep textarea:focus{outline:none!important;border:none!important;box-shadow:none!important}\n", ".lightbox-header{position:fixed;top:0;left:0;right:0;z-index:1000;padding:0 16px;background:linear-gradient(to bottom,rgba(0,0,0,.8) 0%,rgba(0,0,0,.4) 80%,transparent 100%);pointer-events:none}.header-content{display:flex;align-items:center;justify-content:flex-end;gap:12px;pointer-events:auto}.post-author-info{display:flex;align-items:center;gap:12px;flex:1;min-width:0;margin-right:auto}.author-details{display:flex;flex-direction:column;min-width:0;flex:1}.author-name{color:#fff;font-family:Brockmann,sans-serif;font-size:var(--font-size-sm);font-weight:600;line-height:20px;letter-spacing:-.3px}.author-meta{color:#ffffffb3;font-family:Brockmann,sans-serif;font-size:var(--font-size-xs);font-weight:400;line-height:1.2;letter-spacing:-.26px;display:flex;align-items:center;gap:6px}.author-meta .separator{color:#ffffff80}.header-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.close-button,.share-button{pointer-events:auto;flex-shrink:0;border-radius:50%}.close-button::ng-deep button,.share-button::ng-deep button{color:#fff!important;background:#ffffff1a!important;border-radius:50%;transition:background .2s ease;border:none;width:36px!important;height:36px!important;min-width:36px!important;min-height:36px!important;padding:0!important;display:flex!important;align-items:center!important;justify-content:center!important}.close-button::ng-deep button:hover,.share-button::ng-deep button:hover{background:#ffffff26!important}.close-button::ng-deep button:active,.share-button::ng-deep button:active{background:#ffffff26!important}.close-button::ng-deep svg,.share-button::ng-deep svg{color:#fff!important;fill:#fff!important}@supports (padding-top: env(safe-area-inset-top)){.lightbox-header{padding-top:calc(16px + env(safe-area-inset-top))}}\n"] }]
|
|
8448
8380
|
}], propDecorators: { author: [{ type: i0.Input, args: [{ isSignal: true, alias: "author", required: false }] }], closeClick: [{ type: i0.Output, args: ["closeClick"] }], shareClick: [{ type: i0.Output, args: ["shareClick"] }] } });
|
|
8449
8381
|
|
|
8450
8382
|
/**
|
|
@@ -9031,7 +8963,7 @@ class DsMobileLightboxImageComponent {
|
|
|
9031
8963
|
/>
|
|
9032
8964
|
</div>
|
|
9033
8965
|
</div>
|
|
9034
|
-
`, isInline: true, styles: [".author-details{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.author-name{font-family:Brockmann,sans-serif;font-size:var(--font-size-sm);font-weight:600;line-height:20px;letter-spacing:-.3px;color:var(--color-text-primary, #1a1a1a);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.author-meta{font-family:Brockmann,sans-serif;font-size:var(--font-size-xs);font-weight:400;line-height:1.2;letter-spacing:-.26px;color:var(--color-text-tertiary, #737373);display:flex;align-items:center;gap:6px}.author-meta .separator{color:var(--color-text-tertiary, #a0a0a0)}.lightbox-context .author-name,.overlay-context .author-name{color:#fffffff2}.lightbox-context .author-meta,.overlay-context .author-meta{color:#ffffffb3}.lightbox-context .author-meta .separator,.overlay-context .author-meta .separator{color:#ffffff80}.section-headline{font-size:var(--font-size-sm);font-weight:600;color:var(--text-color-default-primary);padding:16px 0;margin:0;letter-spacing:-.2px;display:flex;align-items:center;gap:6px}.empty-state-title{font-family:Brockmann,sans-serif;font-size:var(--font-size-base);font-weight:600;line-height:1.3;color:var(--text-color-default-primary, #202227);margin:0 0 8px}.empty-state-description{font-family:Brockmann,sans-serif;font-size:var(--font-size-sm);font-weight:400;line-height:1.4;color:var(--text-color-default-secondary, #545B66);margin:0}.ghost-input-clean ::ng-deep .ds-input,.ghost-input-clean ::ng-deep .ds-textarea,.ghost-input-clean ::ng-deep .textarea-container{outline:none!important;border:none!important}.ghost-input-clean ::ng-deep .ds-input:hover,.ghost-input-clean ::ng-deep .ds-textarea:hover,.ghost-input-clean ::ng-deep .textarea-container:hover,.ghost-input-clean ::ng-deep .ds-input:focus,.ghost-input-clean ::ng-deep .ds-textarea:focus,.ghost-input-clean ::ng-deep .textarea-container:focus,.ghost-input-clean ::ng-deep .ds-input:focus-within,.ghost-input-clean ::ng-deep .ds-textarea:focus-within,.ghost-input-clean ::ng-deep .textarea-container:focus-within{outline:none!important;border:none!important;box-shadow:none!important}.ghost-input-clean ::ng-deep textarea{outline:none!important;border:none!important;box-shadow:none!important;resize:none!important}.ghost-input-clean ::ng-deep textarea:hover,.ghost-input-clean ::ng-deep textarea:focus{outline:none!important;border:none!important;box-shadow:none!important}:host{display:block;position:fixed;inset:0;width:100vw;height:100vh;z-index:10000}.lightbox-overlay{position:fixed;inset:0;width:100vw;height:100vh;background:#000000fa;z-index:10000;display:flex;flex-direction:column;touch-action:none;animation:fadeIn .2s ease-out}.lightbox-overlay.zoomed{overflow:hidden}.lightbox-content{display:block;height:100vh;width:100vw;position:absolute;inset:0}.lightbox-content::part(scroll){display:flex;flex-direction:column;height:100%;overflow:hidden}.lightbox-wrapper{position:absolute;inset:0;display:flex;flex-direction:column;width:100%;height:100%}.lightbox-content.zoomed{overflow:hidden}.lightbox-header{position:fixed;top:0;left:0;right:0;z-index:1000;padding:0 16px;background:linear-gradient(to bottom,rgba(0,0,0,.8) 0%,rgba(0,0,0,.4) 80%,transparent 100%);pointer-events:none}.header-content{display:flex;align-items:center;justify-content:space-between;gap:12px;pointer-events:auto}.post-author-info{display:flex;align-items:center;gap:12px;flex:1;min-width:0}.author-details{display:flex;flex-direction:column;min-width:0;flex:1}.author-name{color:#fff;font-family:Brockmann,sans-serif;font-size:var(--font-size-sm);font-weight:600;line-height:20px;letter-spacing:-.3px}.author-meta{color:#ffffffb3;font-family:Brockmann,sans-serif;font-size:var(--font-size-xs);font-weight:400;line-height:1.2;letter-spacing:-.26px;display:flex;align-items:center;gap:6px}.author-meta .separator{color:#ffffff80}.close-button{pointer-events:auto;flex-shrink:0;border-radius:50%}.close-button::ng-deep button{color:#fff!important;background:#ffffff1a!important;border-radius:50%;transition:background .2s ease;border:none;width:36px!important;height:36px!important;min-width:36px!important;min-height:36px!important;padding:0!important;display:flex!important;align-items:center!important;justify-content:center!important}.close-button::ng-deep button:hover{background:#ffffff26!important}.close-button::ng-deep button:active{background:#ffffff26!important}.close-button::ng-deep svg{color:#fff!important;fill:#fff!important}.swiper-container{position:absolute;inset:0;width:100%;height:100%;z-index:1}.swiper-wrapper{width:100%;height:100%}.swiper-slide{display:flex;align-items:center;justify-content:center;width:100%;height:100%}.image-zoom-container{width:100%;height:100%;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.lightbox-image{max-width:min(640px,100%);max-height:100%;width:auto;height:auto;-o-object-fit:contain;object-fit:contain;-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-user-drag:none;transition:transform .3s ease-out;transform-origin:center center}.lightbox-overlay.zoomed .swiper-container{touch-action:none}.loading-spinner{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:10}.loading-spinner ion-spinner{--color: rgba(255, 255, 255, .8);width:48px;height:48px}.error-message{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:10;text-align:center;color:#fffc;font-family:Brockmann,sans-serif;font-size:var(--font-size-base);font-weight:500;padding:20px;background:#00000080;border-radius:12px;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.lightbox-bottom-section{position:fixed;bottom:0;left:0;right:0;z-index:100;display:flex;flex-direction:column;background:linear-gradient(to top,rgba(0,0,0,.8) 0%,rgba(0,0,0,.6) 50%,rgba(0,0,0,.4) 75%,transparent 100%);pointer-events:none}.lightbox-controls{display:flex;align-items:center;justify-content:center;gap:24px;padding:16px 20px 12px;pointer-events:none}.nav-button,.counter{pointer-events:auto}.nav-button{background:#ffffff1a;border:1px solid rgba(255,255,255,.2);color:#fff;width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);transition:all .2s ease;padding:0;margin:0;outline:none}.nav-button:hover:not(:disabled){background:#fff3;transform:scale(1.05)}.nav-button:active:not(:disabled){transform:scale(.95)}.nav-button:disabled{opacity:.3;cursor:not-allowed}.nav-button svg{width:24px;height:24px}.counter{color:#fff;font-family:Brockmann,sans-serif;font-size:var(--font-size-sm);font-weight:500;line-height:1;padding:10px 16px;background:#00000080;border-radius:100px;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);white-space:nowrap}@supports (padding-bottom: env(safe-area-inset-bottom)){.lightbox-bottom-section{padding-bottom:env(safe-area-inset-bottom)}}.lightbox-footer{display:flex;padding:12px 20px 20px;pointer-events:none}.footer-actions{display:flex;align-items:center;justify-content:space-between;gap:16px;pointer-events:auto}.action-buttons-left{display:flex;align-items:center;gap:16px}.action-button-like::ng-deep button,.action-button-comment::ng-deep button,.action-button-with-count::ng-deep button,.action-button-share::ng-deep button{background:#ffffff1a!important;border:1px solid rgba(255,255,255,.2)!important;color:#fff!important;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);transition:all .2s ease}.action-button-like::ng-deep button:hover,.action-button-comment::ng-deep button:hover,.action-button-with-count::ng-deep button:hover,.action-button-share::ng-deep button:hover{background:#fff3!important;transform:scale(1.02)}.action-button-like::ng-deep button:active,.action-button-comment::ng-deep button:active,.action-button-with-count::ng-deep button:active,.action-button-share::ng-deep button:active{transform:scale(.98)}.action-button-like::ng-deep button svg,.action-button-comment::ng-deep button svg,.action-button-with-count::ng-deep button svg,.action-button-share::ng-deep button svg,.action-button-like::ng-deep button .btn__icon,.action-button-comment::ng-deep button .btn__icon,.action-button-with-count::ng-deep button .btn__icon,.action-button-share::ng-deep button .btn__icon,.action-button-like::ng-deep button .btn__content,.action-button-comment::ng-deep button .btn__content,.action-button-with-count::ng-deep button .btn__content{color:#fff!important;fill:#fff!important}.action-button-like::ng-deep button .btn__icon svg,.action-button-comment::ng-deep button .btn__icon svg,.action-button-with-count::ng-deep button .btn__icon svg,.action-button-share::ng-deep button .btn__icon svg{color:#fff!important;fill:#fff!important;display:block!important;opacity:1!important;visibility:visible!important;width:20px!important;height:20px!important}.action-button-like::ng-deep button .btn__icon,.action-button-comment::ng-deep button .btn__icon,.action-button-with-count::ng-deep button .btn__icon,.action-button-share::ng-deep button .btn__icon{display:flex!important;align-items:center!important;justify-content:center!important;flex-shrink:0!important}.action-button-like[data-liked=true]::ng-deep button svg{fill:#f91880!important;color:#f91880!important}.action-button-like[data-liked=true]::ng-deep button{border-color:#f918804d!important}.action-button-like,.action-button-comment,.action-button-share{flex-shrink:0;border-radius:50%}.action-button-like::ng-deep button,.action-button-comment::ng-deep button,.action-button-share::ng-deep button{border-radius:50%!important;width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important;padding:0!important;display:flex!important;align-items:center!important;justify-content:center!important}@media (min-width: 768px){.lightbox-header{padding:24px}.close-button{width:48px;height:48px}.lightbox-controls{padding:20px 24px 16px}.nav-button{width:48px;height:48px}.counter{font-size:var(--font-size-base);padding:12px 20px}.lightbox-footer{padding:16px 24px 24px}.action-button-like::ng-deep button,.action-button-comment::ng-deep button{height:48px;padding:0 20px}.action-button-share::ng-deep button{width:48px!important;height:48px!important;min-width:48px!important;min-height:48px!important}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes zoomIn{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}@media (prefers-reduced-motion: reduce){.image-wrapper,.nav-button,.lightbox-caption{transition:none}}.nav-button:focus-visible{outline:2px solid white;outline-offset:2px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "component", type: IonSpinner, selector: "ion-spinner", inputs: ["color", "duration", "name", "paused"] }, { kind: "component", type: DsMobileLightboxHeaderComponent, selector: "ds-mobile-lightbox-header", inputs: ["author"], outputs: ["closeClick", "shareClick"] }, { kind: "component", type: DsMobileLightboxFooterComponent, selector: "ds-mobile-lightbox-footer", inputs: ["showNavigation", "currentIndex", "totalImages", "showActions", "isLiked", "likeCount", "commentCount"], outputs: ["prevClick", "nextClick", "likeClick", "commentClick"] }] });
|
|
8966
|
+
`, isInline: true, styles: [".author-details{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.author-name{font-family:Brockmann,sans-serif;font-size:var(--font-size-sm);font-weight:600;line-height:20px;letter-spacing:-.3px;color:var(--color-text-primary, #1a1a1a);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.author-meta{font-family:Brockmann,sans-serif;font-size:var(--font-size-xs);font-weight:400;line-height:1.2;letter-spacing:-.26px;color:var(--color-text-tertiary, #737373);display:flex;align-items:center;gap:6px}.author-meta .separator{color:var(--color-text-tertiary, #a0a0a0)}.lightbox-context .author-name,.overlay-context .author-name{color:#fffffff2}.lightbox-context .author-meta,.overlay-context .author-meta{color:#ffffffb3}.lightbox-context .author-meta .separator,.overlay-context .author-meta .separator{color:#ffffff80}.section-headline{font-size:var(--font-size-base);font-weight:600;color:var(--text-color-default-primary);padding:16px 0;margin:0;letter-spacing:-.2px;display:flex;align-items:center;gap:6px}.empty-state-title{font-family:Brockmann,sans-serif;font-size:var(--font-size-base);font-weight:600;line-height:1.3;color:var(--text-color-default-primary, #202227);margin:0 0 8px}.empty-state-description{font-family:Brockmann,sans-serif;font-size:var(--font-size-sm);font-weight:400;line-height:1.4;color:var(--text-color-default-secondary, #545B66);margin:0}.ghost-input-clean ::ng-deep .ds-input,.ghost-input-clean ::ng-deep .ds-textarea,.ghost-input-clean ::ng-deep .textarea-container{outline:none!important;border:none!important}.ghost-input-clean ::ng-deep .ds-input:hover,.ghost-input-clean ::ng-deep .ds-textarea:hover,.ghost-input-clean ::ng-deep .textarea-container:hover,.ghost-input-clean ::ng-deep .ds-input:focus,.ghost-input-clean ::ng-deep .ds-textarea:focus,.ghost-input-clean ::ng-deep .textarea-container:focus,.ghost-input-clean ::ng-deep .ds-input:focus-within,.ghost-input-clean ::ng-deep .ds-textarea:focus-within,.ghost-input-clean ::ng-deep .textarea-container:focus-within{outline:none!important;border:none!important;box-shadow:none!important}.ghost-input-clean ::ng-deep textarea{outline:none!important;border:none!important;box-shadow:none!important;resize:none!important}.ghost-input-clean ::ng-deep textarea:hover,.ghost-input-clean ::ng-deep textarea:focus{outline:none!important;border:none!important;box-shadow:none!important}:host{display:block;position:fixed;inset:0;width:100vw;height:100vh;z-index:10000}.lightbox-overlay{position:fixed;inset:0;width:100vw;height:100vh;background:#000000fa;z-index:10000;display:flex;flex-direction:column;touch-action:none;animation:fadeIn .2s ease-out}.lightbox-overlay.zoomed{overflow:hidden}.lightbox-content{display:block;height:100vh;width:100vw;position:absolute;inset:0}.lightbox-content::part(scroll){display:flex;flex-direction:column;height:100%;overflow:hidden}.lightbox-wrapper{position:absolute;inset:0;display:flex;flex-direction:column;width:100%;height:100%}.lightbox-content.zoomed{overflow:hidden}.lightbox-header{position:fixed;top:0;left:0;right:0;z-index:1000;padding:0 16px;background:linear-gradient(to bottom,rgba(0,0,0,.8) 0%,rgba(0,0,0,.4) 80%,transparent 100%);pointer-events:none}.header-content{display:flex;align-items:center;justify-content:space-between;gap:12px;pointer-events:auto}.post-author-info{display:flex;align-items:center;gap:12px;flex:1;min-width:0}.author-details{display:flex;flex-direction:column;min-width:0;flex:1}.author-name{color:#fff;font-family:Brockmann,sans-serif;font-size:var(--font-size-sm);font-weight:600;line-height:20px;letter-spacing:-.3px}.author-meta{color:#ffffffb3;font-family:Brockmann,sans-serif;font-size:var(--font-size-xs);font-weight:400;line-height:1.2;letter-spacing:-.26px;display:flex;align-items:center;gap:6px}.author-meta .separator{color:#ffffff80}.close-button{pointer-events:auto;flex-shrink:0;border-radius:50%}.close-button::ng-deep button{color:#fff!important;background:#ffffff1a!important;border-radius:50%;transition:background .2s ease;border:none;width:36px!important;height:36px!important;min-width:36px!important;min-height:36px!important;padding:0!important;display:flex!important;align-items:center!important;justify-content:center!important}.close-button::ng-deep button:hover{background:#ffffff26!important}.close-button::ng-deep button:active{background:#ffffff26!important}.close-button::ng-deep svg{color:#fff!important;fill:#fff!important}.swiper-container{position:absolute;inset:0;width:100%;height:100%;z-index:1}.swiper-wrapper{width:100%;height:100%}.swiper-slide{display:flex;align-items:center;justify-content:center;width:100%;height:100%}.image-zoom-container{width:100%;height:100%;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.lightbox-image{max-width:min(640px,100%);max-height:100%;width:auto;height:auto;-o-object-fit:contain;object-fit:contain;-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-user-drag:none;transition:transform .3s ease-out;transform-origin:center center}.lightbox-overlay.zoomed .swiper-container{touch-action:none}.loading-spinner{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:10}.loading-spinner ion-spinner{--color: rgba(255, 255, 255, .8);width:48px;height:48px}.error-message{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:10;text-align:center;color:#fffc;font-family:Brockmann,sans-serif;font-size:var(--font-size-base);font-weight:500;padding:20px;background:#00000080;border-radius:12px;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.lightbox-bottom-section{position:fixed;bottom:0;left:0;right:0;z-index:100;display:flex;flex-direction:column;background:linear-gradient(to top,rgba(0,0,0,.8) 0%,rgba(0,0,0,.6) 50%,rgba(0,0,0,.4) 75%,transparent 100%);pointer-events:none}.lightbox-controls{display:flex;align-items:center;justify-content:center;gap:24px;padding:16px 20px 12px;pointer-events:none}.nav-button,.counter{pointer-events:auto}.nav-button{background:#ffffff1a;border:1px solid rgba(255,255,255,.2);color:#fff;width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);transition:all .2s ease;padding:0;margin:0;outline:none}.nav-button:hover:not(:disabled){background:#fff3;transform:scale(1.05)}.nav-button:active:not(:disabled){transform:scale(.95)}.nav-button:disabled{opacity:.3;cursor:not-allowed}.nav-button svg{width:24px;height:24px}.counter{color:#fff;font-family:Brockmann,sans-serif;font-size:var(--font-size-sm);font-weight:500;line-height:1;padding:10px 16px;background:#00000080;border-radius:100px;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);white-space:nowrap}@supports (padding-bottom: env(safe-area-inset-bottom)){.lightbox-bottom-section{padding-bottom:env(safe-area-inset-bottom)}}.lightbox-footer{display:flex;padding:12px 20px 20px;pointer-events:none}.footer-actions{display:flex;align-items:center;justify-content:space-between;gap:16px;pointer-events:auto}.action-buttons-left{display:flex;align-items:center;gap:16px}.action-button-like::ng-deep button,.action-button-comment::ng-deep button,.action-button-with-count::ng-deep button,.action-button-share::ng-deep button{background:#ffffff1a!important;border:1px solid rgba(255,255,255,.2)!important;color:#fff!important;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);transition:all .2s ease}.action-button-like::ng-deep button:hover,.action-button-comment::ng-deep button:hover,.action-button-with-count::ng-deep button:hover,.action-button-share::ng-deep button:hover{background:#fff3!important;transform:scale(1.02)}.action-button-like::ng-deep button:active,.action-button-comment::ng-deep button:active,.action-button-with-count::ng-deep button:active,.action-button-share::ng-deep button:active{transform:scale(.98)}.action-button-like::ng-deep button svg,.action-button-comment::ng-deep button svg,.action-button-with-count::ng-deep button svg,.action-button-share::ng-deep button svg,.action-button-like::ng-deep button .btn__icon,.action-button-comment::ng-deep button .btn__icon,.action-button-with-count::ng-deep button .btn__icon,.action-button-share::ng-deep button .btn__icon,.action-button-like::ng-deep button .btn__content,.action-button-comment::ng-deep button .btn__content,.action-button-with-count::ng-deep button .btn__content{color:#fff!important;fill:#fff!important}.action-button-like::ng-deep button .btn__icon svg,.action-button-comment::ng-deep button .btn__icon svg,.action-button-with-count::ng-deep button .btn__icon svg,.action-button-share::ng-deep button .btn__icon svg{color:#fff!important;fill:#fff!important;display:block!important;opacity:1!important;visibility:visible!important;width:20px!important;height:20px!important}.action-button-like::ng-deep button .btn__icon,.action-button-comment::ng-deep button .btn__icon,.action-button-with-count::ng-deep button .btn__icon,.action-button-share::ng-deep button .btn__icon{display:flex!important;align-items:center!important;justify-content:center!important;flex-shrink:0!important}.action-button-like[data-liked=true]::ng-deep button svg{fill:#f91880!important;color:#f91880!important}.action-button-like[data-liked=true]::ng-deep button{border-color:#f918804d!important}.action-button-like,.action-button-comment,.action-button-share{flex-shrink:0;border-radius:50%}.action-button-like::ng-deep button,.action-button-comment::ng-deep button,.action-button-share::ng-deep button{border-radius:50%!important;width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important;padding:0!important;display:flex!important;align-items:center!important;justify-content:center!important}@media (min-width: 768px){.lightbox-header{padding:24px}.close-button{width:48px;height:48px}.lightbox-controls{padding:20px 24px 16px}.nav-button{width:48px;height:48px}.counter{font-size:var(--font-size-base);padding:12px 20px}.lightbox-footer{padding:16px 24px 24px}.action-button-like::ng-deep button,.action-button-comment::ng-deep button{height:48px;padding:0 20px}.action-button-share::ng-deep button{width:48px!important;height:48px!important;min-width:48px!important;min-height:48px!important}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes zoomIn{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}@media (prefers-reduced-motion: reduce){.image-wrapper,.nav-button,.lightbox-caption{transition:none}}.nav-button:focus-visible{outline:2px solid white;outline-offset:2px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "component", type: IonSpinner, selector: "ion-spinner", inputs: ["color", "duration", "name", "paused"] }, { kind: "component", type: DsMobileLightboxHeaderComponent, selector: "ds-mobile-lightbox-header", inputs: ["author"], outputs: ["closeClick", "shareClick"] }, { kind: "component", type: DsMobileLightboxFooterComponent, selector: "ds-mobile-lightbox-footer", inputs: ["showNavigation", "currentIndex", "totalImages", "showActions", "isLiked", "likeCount", "commentCount"], outputs: ["prevClick", "nextClick", "likeClick", "commentClick"] }] });
|
|
9035
8967
|
}
|
|
9036
8968
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: DsMobileLightboxImageComponent, decorators: [{
|
|
9037
8969
|
type: Component,
|
|
@@ -9093,7 +9025,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
|
|
|
9093
9025
|
/>
|
|
9094
9026
|
</div>
|
|
9095
9027
|
</div>
|
|
9096
|
-
`, styles: [".author-details{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.author-name{font-family:Brockmann,sans-serif;font-size:var(--font-size-sm);font-weight:600;line-height:20px;letter-spacing:-.3px;color:var(--color-text-primary, #1a1a1a);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.author-meta{font-family:Brockmann,sans-serif;font-size:var(--font-size-xs);font-weight:400;line-height:1.2;letter-spacing:-.26px;color:var(--color-text-tertiary, #737373);display:flex;align-items:center;gap:6px}.author-meta .separator{color:var(--color-text-tertiary, #a0a0a0)}.lightbox-context .author-name,.overlay-context .author-name{color:#fffffff2}.lightbox-context .author-meta,.overlay-context .author-meta{color:#ffffffb3}.lightbox-context .author-meta .separator,.overlay-context .author-meta .separator{color:#ffffff80}.section-headline{font-size:var(--font-size-sm);font-weight:600;color:var(--text-color-default-primary);padding:16px 0;margin:0;letter-spacing:-.2px;display:flex;align-items:center;gap:6px}.empty-state-title{font-family:Brockmann,sans-serif;font-size:var(--font-size-base);font-weight:600;line-height:1.3;color:var(--text-color-default-primary, #202227);margin:0 0 8px}.empty-state-description{font-family:Brockmann,sans-serif;font-size:var(--font-size-sm);font-weight:400;line-height:1.4;color:var(--text-color-default-secondary, #545B66);margin:0}.ghost-input-clean ::ng-deep .ds-input,.ghost-input-clean ::ng-deep .ds-textarea,.ghost-input-clean ::ng-deep .textarea-container{outline:none!important;border:none!important}.ghost-input-clean ::ng-deep .ds-input:hover,.ghost-input-clean ::ng-deep .ds-textarea:hover,.ghost-input-clean ::ng-deep .textarea-container:hover,.ghost-input-clean ::ng-deep .ds-input:focus,.ghost-input-clean ::ng-deep .ds-textarea:focus,.ghost-input-clean ::ng-deep .textarea-container:focus,.ghost-input-clean ::ng-deep .ds-input:focus-within,.ghost-input-clean ::ng-deep .ds-textarea:focus-within,.ghost-input-clean ::ng-deep .textarea-container:focus-within{outline:none!important;border:none!important;box-shadow:none!important}.ghost-input-clean ::ng-deep textarea{outline:none!important;border:none!important;box-shadow:none!important;resize:none!important}.ghost-input-clean ::ng-deep textarea:hover,.ghost-input-clean ::ng-deep textarea:focus{outline:none!important;border:none!important;box-shadow:none!important}:host{display:block;position:fixed;inset:0;width:100vw;height:100vh;z-index:10000}.lightbox-overlay{position:fixed;inset:0;width:100vw;height:100vh;background:#000000fa;z-index:10000;display:flex;flex-direction:column;touch-action:none;animation:fadeIn .2s ease-out}.lightbox-overlay.zoomed{overflow:hidden}.lightbox-content{display:block;height:100vh;width:100vw;position:absolute;inset:0}.lightbox-content::part(scroll){display:flex;flex-direction:column;height:100%;overflow:hidden}.lightbox-wrapper{position:absolute;inset:0;display:flex;flex-direction:column;width:100%;height:100%}.lightbox-content.zoomed{overflow:hidden}.lightbox-header{position:fixed;top:0;left:0;right:0;z-index:1000;padding:0 16px;background:linear-gradient(to bottom,rgba(0,0,0,.8) 0%,rgba(0,0,0,.4) 80%,transparent 100%);pointer-events:none}.header-content{display:flex;align-items:center;justify-content:space-between;gap:12px;pointer-events:auto}.post-author-info{display:flex;align-items:center;gap:12px;flex:1;min-width:0}.author-details{display:flex;flex-direction:column;min-width:0;flex:1}.author-name{color:#fff;font-family:Brockmann,sans-serif;font-size:var(--font-size-sm);font-weight:600;line-height:20px;letter-spacing:-.3px}.author-meta{color:#ffffffb3;font-family:Brockmann,sans-serif;font-size:var(--font-size-xs);font-weight:400;line-height:1.2;letter-spacing:-.26px;display:flex;align-items:center;gap:6px}.author-meta .separator{color:#ffffff80}.close-button{pointer-events:auto;flex-shrink:0;border-radius:50%}.close-button::ng-deep button{color:#fff!important;background:#ffffff1a!important;border-radius:50%;transition:background .2s ease;border:none;width:36px!important;height:36px!important;min-width:36px!important;min-height:36px!important;padding:0!important;display:flex!important;align-items:center!important;justify-content:center!important}.close-button::ng-deep button:hover{background:#ffffff26!important}.close-button::ng-deep button:active{background:#ffffff26!important}.close-button::ng-deep svg{color:#fff!important;fill:#fff!important}.swiper-container{position:absolute;inset:0;width:100%;height:100%;z-index:1}.swiper-wrapper{width:100%;height:100%}.swiper-slide{display:flex;align-items:center;justify-content:center;width:100%;height:100%}.image-zoom-container{width:100%;height:100%;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.lightbox-image{max-width:min(640px,100%);max-height:100%;width:auto;height:auto;-o-object-fit:contain;object-fit:contain;-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-user-drag:none;transition:transform .3s ease-out;transform-origin:center center}.lightbox-overlay.zoomed .swiper-container{touch-action:none}.loading-spinner{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:10}.loading-spinner ion-spinner{--color: rgba(255, 255, 255, .8);width:48px;height:48px}.error-message{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:10;text-align:center;color:#fffc;font-family:Brockmann,sans-serif;font-size:var(--font-size-base);font-weight:500;padding:20px;background:#00000080;border-radius:12px;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.lightbox-bottom-section{position:fixed;bottom:0;left:0;right:0;z-index:100;display:flex;flex-direction:column;background:linear-gradient(to top,rgba(0,0,0,.8) 0%,rgba(0,0,0,.6) 50%,rgba(0,0,0,.4) 75%,transparent 100%);pointer-events:none}.lightbox-controls{display:flex;align-items:center;justify-content:center;gap:24px;padding:16px 20px 12px;pointer-events:none}.nav-button,.counter{pointer-events:auto}.nav-button{background:#ffffff1a;border:1px solid rgba(255,255,255,.2);color:#fff;width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);transition:all .2s ease;padding:0;margin:0;outline:none}.nav-button:hover:not(:disabled){background:#fff3;transform:scale(1.05)}.nav-button:active:not(:disabled){transform:scale(.95)}.nav-button:disabled{opacity:.3;cursor:not-allowed}.nav-button svg{width:24px;height:24px}.counter{color:#fff;font-family:Brockmann,sans-serif;font-size:var(--font-size-sm);font-weight:500;line-height:1;padding:10px 16px;background:#00000080;border-radius:100px;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);white-space:nowrap}@supports (padding-bottom: env(safe-area-inset-bottom)){.lightbox-bottom-section{padding-bottom:env(safe-area-inset-bottom)}}.lightbox-footer{display:flex;padding:12px 20px 20px;pointer-events:none}.footer-actions{display:flex;align-items:center;justify-content:space-between;gap:16px;pointer-events:auto}.action-buttons-left{display:flex;align-items:center;gap:16px}.action-button-like::ng-deep button,.action-button-comment::ng-deep button,.action-button-with-count::ng-deep button,.action-button-share::ng-deep button{background:#ffffff1a!important;border:1px solid rgba(255,255,255,.2)!important;color:#fff!important;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);transition:all .2s ease}.action-button-like::ng-deep button:hover,.action-button-comment::ng-deep button:hover,.action-button-with-count::ng-deep button:hover,.action-button-share::ng-deep button:hover{background:#fff3!important;transform:scale(1.02)}.action-button-like::ng-deep button:active,.action-button-comment::ng-deep button:active,.action-button-with-count::ng-deep button:active,.action-button-share::ng-deep button:active{transform:scale(.98)}.action-button-like::ng-deep button svg,.action-button-comment::ng-deep button svg,.action-button-with-count::ng-deep button svg,.action-button-share::ng-deep button svg,.action-button-like::ng-deep button .btn__icon,.action-button-comment::ng-deep button .btn__icon,.action-button-with-count::ng-deep button .btn__icon,.action-button-share::ng-deep button .btn__icon,.action-button-like::ng-deep button .btn__content,.action-button-comment::ng-deep button .btn__content,.action-button-with-count::ng-deep button .btn__content{color:#fff!important;fill:#fff!important}.action-button-like::ng-deep button .btn__icon svg,.action-button-comment::ng-deep button .btn__icon svg,.action-button-with-count::ng-deep button .btn__icon svg,.action-button-share::ng-deep button .btn__icon svg{color:#fff!important;fill:#fff!important;display:block!important;opacity:1!important;visibility:visible!important;width:20px!important;height:20px!important}.action-button-like::ng-deep button .btn__icon,.action-button-comment::ng-deep button .btn__icon,.action-button-with-count::ng-deep button .btn__icon,.action-button-share::ng-deep button .btn__icon{display:flex!important;align-items:center!important;justify-content:center!important;flex-shrink:0!important}.action-button-like[data-liked=true]::ng-deep button svg{fill:#f91880!important;color:#f91880!important}.action-button-like[data-liked=true]::ng-deep button{border-color:#f918804d!important}.action-button-like,.action-button-comment,.action-button-share{flex-shrink:0;border-radius:50%}.action-button-like::ng-deep button,.action-button-comment::ng-deep button,.action-button-share::ng-deep button{border-radius:50%!important;width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important;padding:0!important;display:flex!important;align-items:center!important;justify-content:center!important}@media (min-width: 768px){.lightbox-header{padding:24px}.close-button{width:48px;height:48px}.lightbox-controls{padding:20px 24px 16px}.nav-button{width:48px;height:48px}.counter{font-size:var(--font-size-base);padding:12px 20px}.lightbox-footer{padding:16px 24px 24px}.action-button-like::ng-deep button,.action-button-comment::ng-deep button{height:48px;padding:0 20px}.action-button-share::ng-deep button{width:48px!important;height:48px!important;min-width:48px!important;min-height:48px!important}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes zoomIn{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}@media (prefers-reduced-motion: reduce){.image-wrapper,.nav-button,.lightbox-caption{transition:none}}.nav-button:focus-visible{outline:2px solid white;outline-offset:2px}\n"] }]
|
|
9028
|
+
`, styles: [".author-details{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.author-name{font-family:Brockmann,sans-serif;font-size:var(--font-size-sm);font-weight:600;line-height:20px;letter-spacing:-.3px;color:var(--color-text-primary, #1a1a1a);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.author-meta{font-family:Brockmann,sans-serif;font-size:var(--font-size-xs);font-weight:400;line-height:1.2;letter-spacing:-.26px;color:var(--color-text-tertiary, #737373);display:flex;align-items:center;gap:6px}.author-meta .separator{color:var(--color-text-tertiary, #a0a0a0)}.lightbox-context .author-name,.overlay-context .author-name{color:#fffffff2}.lightbox-context .author-meta,.overlay-context .author-meta{color:#ffffffb3}.lightbox-context .author-meta .separator,.overlay-context .author-meta .separator{color:#ffffff80}.section-headline{font-size:var(--font-size-base);font-weight:600;color:var(--text-color-default-primary);padding:16px 0;margin:0;letter-spacing:-.2px;display:flex;align-items:center;gap:6px}.empty-state-title{font-family:Brockmann,sans-serif;font-size:var(--font-size-base);font-weight:600;line-height:1.3;color:var(--text-color-default-primary, #202227);margin:0 0 8px}.empty-state-description{font-family:Brockmann,sans-serif;font-size:var(--font-size-sm);font-weight:400;line-height:1.4;color:var(--text-color-default-secondary, #545B66);margin:0}.ghost-input-clean ::ng-deep .ds-input,.ghost-input-clean ::ng-deep .ds-textarea,.ghost-input-clean ::ng-deep .textarea-container{outline:none!important;border:none!important}.ghost-input-clean ::ng-deep .ds-input:hover,.ghost-input-clean ::ng-deep .ds-textarea:hover,.ghost-input-clean ::ng-deep .textarea-container:hover,.ghost-input-clean ::ng-deep .ds-input:focus,.ghost-input-clean ::ng-deep .ds-textarea:focus,.ghost-input-clean ::ng-deep .textarea-container:focus,.ghost-input-clean ::ng-deep .ds-input:focus-within,.ghost-input-clean ::ng-deep .ds-textarea:focus-within,.ghost-input-clean ::ng-deep .textarea-container:focus-within{outline:none!important;border:none!important;box-shadow:none!important}.ghost-input-clean ::ng-deep textarea{outline:none!important;border:none!important;box-shadow:none!important;resize:none!important}.ghost-input-clean ::ng-deep textarea:hover,.ghost-input-clean ::ng-deep textarea:focus{outline:none!important;border:none!important;box-shadow:none!important}:host{display:block;position:fixed;inset:0;width:100vw;height:100vh;z-index:10000}.lightbox-overlay{position:fixed;inset:0;width:100vw;height:100vh;background:#000000fa;z-index:10000;display:flex;flex-direction:column;touch-action:none;animation:fadeIn .2s ease-out}.lightbox-overlay.zoomed{overflow:hidden}.lightbox-content{display:block;height:100vh;width:100vw;position:absolute;inset:0}.lightbox-content::part(scroll){display:flex;flex-direction:column;height:100%;overflow:hidden}.lightbox-wrapper{position:absolute;inset:0;display:flex;flex-direction:column;width:100%;height:100%}.lightbox-content.zoomed{overflow:hidden}.lightbox-header{position:fixed;top:0;left:0;right:0;z-index:1000;padding:0 16px;background:linear-gradient(to bottom,rgba(0,0,0,.8) 0%,rgba(0,0,0,.4) 80%,transparent 100%);pointer-events:none}.header-content{display:flex;align-items:center;justify-content:space-between;gap:12px;pointer-events:auto}.post-author-info{display:flex;align-items:center;gap:12px;flex:1;min-width:0}.author-details{display:flex;flex-direction:column;min-width:0;flex:1}.author-name{color:#fff;font-family:Brockmann,sans-serif;font-size:var(--font-size-sm);font-weight:600;line-height:20px;letter-spacing:-.3px}.author-meta{color:#ffffffb3;font-family:Brockmann,sans-serif;font-size:var(--font-size-xs);font-weight:400;line-height:1.2;letter-spacing:-.26px;display:flex;align-items:center;gap:6px}.author-meta .separator{color:#ffffff80}.close-button{pointer-events:auto;flex-shrink:0;border-radius:50%}.close-button::ng-deep button{color:#fff!important;background:#ffffff1a!important;border-radius:50%;transition:background .2s ease;border:none;width:36px!important;height:36px!important;min-width:36px!important;min-height:36px!important;padding:0!important;display:flex!important;align-items:center!important;justify-content:center!important}.close-button::ng-deep button:hover{background:#ffffff26!important}.close-button::ng-deep button:active{background:#ffffff26!important}.close-button::ng-deep svg{color:#fff!important;fill:#fff!important}.swiper-container{position:absolute;inset:0;width:100%;height:100%;z-index:1}.swiper-wrapper{width:100%;height:100%}.swiper-slide{display:flex;align-items:center;justify-content:center;width:100%;height:100%}.image-zoom-container{width:100%;height:100%;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.lightbox-image{max-width:min(640px,100%);max-height:100%;width:auto;height:auto;-o-object-fit:contain;object-fit:contain;-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-user-drag:none;transition:transform .3s ease-out;transform-origin:center center}.lightbox-overlay.zoomed .swiper-container{touch-action:none}.loading-spinner{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:10}.loading-spinner ion-spinner{--color: rgba(255, 255, 255, .8);width:48px;height:48px}.error-message{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:10;text-align:center;color:#fffc;font-family:Brockmann,sans-serif;font-size:var(--font-size-base);font-weight:500;padding:20px;background:#00000080;border-radius:12px;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.lightbox-bottom-section{position:fixed;bottom:0;left:0;right:0;z-index:100;display:flex;flex-direction:column;background:linear-gradient(to top,rgba(0,0,0,.8) 0%,rgba(0,0,0,.6) 50%,rgba(0,0,0,.4) 75%,transparent 100%);pointer-events:none}.lightbox-controls{display:flex;align-items:center;justify-content:center;gap:24px;padding:16px 20px 12px;pointer-events:none}.nav-button,.counter{pointer-events:auto}.nav-button{background:#ffffff1a;border:1px solid rgba(255,255,255,.2);color:#fff;width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);transition:all .2s ease;padding:0;margin:0;outline:none}.nav-button:hover:not(:disabled){background:#fff3;transform:scale(1.05)}.nav-button:active:not(:disabled){transform:scale(.95)}.nav-button:disabled{opacity:.3;cursor:not-allowed}.nav-button svg{width:24px;height:24px}.counter{color:#fff;font-family:Brockmann,sans-serif;font-size:var(--font-size-sm);font-weight:500;line-height:1;padding:10px 16px;background:#00000080;border-radius:100px;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);white-space:nowrap}@supports (padding-bottom: env(safe-area-inset-bottom)){.lightbox-bottom-section{padding-bottom:env(safe-area-inset-bottom)}}.lightbox-footer{display:flex;padding:12px 20px 20px;pointer-events:none}.footer-actions{display:flex;align-items:center;justify-content:space-between;gap:16px;pointer-events:auto}.action-buttons-left{display:flex;align-items:center;gap:16px}.action-button-like::ng-deep button,.action-button-comment::ng-deep button,.action-button-with-count::ng-deep button,.action-button-share::ng-deep button{background:#ffffff1a!important;border:1px solid rgba(255,255,255,.2)!important;color:#fff!important;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);transition:all .2s ease}.action-button-like::ng-deep button:hover,.action-button-comment::ng-deep button:hover,.action-button-with-count::ng-deep button:hover,.action-button-share::ng-deep button:hover{background:#fff3!important;transform:scale(1.02)}.action-button-like::ng-deep button:active,.action-button-comment::ng-deep button:active,.action-button-with-count::ng-deep button:active,.action-button-share::ng-deep button:active{transform:scale(.98)}.action-button-like::ng-deep button svg,.action-button-comment::ng-deep button svg,.action-button-with-count::ng-deep button svg,.action-button-share::ng-deep button svg,.action-button-like::ng-deep button .btn__icon,.action-button-comment::ng-deep button .btn__icon,.action-button-with-count::ng-deep button .btn__icon,.action-button-share::ng-deep button .btn__icon,.action-button-like::ng-deep button .btn__content,.action-button-comment::ng-deep button .btn__content,.action-button-with-count::ng-deep button .btn__content{color:#fff!important;fill:#fff!important}.action-button-like::ng-deep button .btn__icon svg,.action-button-comment::ng-deep button .btn__icon svg,.action-button-with-count::ng-deep button .btn__icon svg,.action-button-share::ng-deep button .btn__icon svg{color:#fff!important;fill:#fff!important;display:block!important;opacity:1!important;visibility:visible!important;width:20px!important;height:20px!important}.action-button-like::ng-deep button .btn__icon,.action-button-comment::ng-deep button .btn__icon,.action-button-with-count::ng-deep button .btn__icon,.action-button-share::ng-deep button .btn__icon{display:flex!important;align-items:center!important;justify-content:center!important;flex-shrink:0!important}.action-button-like[data-liked=true]::ng-deep button svg{fill:#f91880!important;color:#f91880!important}.action-button-like[data-liked=true]::ng-deep button{border-color:#f918804d!important}.action-button-like,.action-button-comment,.action-button-share{flex-shrink:0;border-radius:50%}.action-button-like::ng-deep button,.action-button-comment::ng-deep button,.action-button-share::ng-deep button{border-radius:50%!important;width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important;padding:0!important;display:flex!important;align-items:center!important;justify-content:center!important}@media (min-width: 768px){.lightbox-header{padding:24px}.close-button{width:48px;height:48px}.lightbox-controls{padding:20px 24px 16px}.nav-button{width:48px;height:48px}.counter{font-size:var(--font-size-base);padding:12px 20px}.lightbox-footer{padding:16px 24px 24px}.action-button-like::ng-deep button,.action-button-comment::ng-deep button{height:48px;padding:0 20px}.action-button-share::ng-deep button{width:48px!important;height:48px!important;min-width:48px!important;min-height:48px!important}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes zoomIn{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}@media (prefers-reduced-motion: reduce){.image-wrapper,.nav-button,.lightbox-caption{transition:none}}.nav-button:focus-visible{outline:2px solid white;outline-offset:2px}\n"] }]
|
|
9097
9029
|
}], ctorParameters: () => [{ type: i1.GestureController }], propDecorators: { swiperContainer: [{
|
|
9098
9030
|
type: ViewChild,
|
|
9099
9031
|
args: ['swiperContainer', { read: ElementRef }]
|
|
@@ -9406,7 +9338,7 @@ class DsMobileLightboxPdfComponent {
|
|
|
9406
9338
|
/>
|
|
9407
9339
|
</div>
|
|
9408
9340
|
</ion-content>
|
|
9409
|
-
`, isInline: true, styles: [".author-name{font-family:Brockmann,sans-serif;font-size:var(--font-size-sm);font-weight:600;line-height:20px;letter-spacing:-.3px;color:var(--color-text-primary, #1a1a1a);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.author-meta{font-family:Brockmann,sans-serif;font-size:var(--font-size-xs);font-weight:400;line-height:1.2;letter-spacing:-.26px;color:var(--color-text-tertiary, #737373);display:flex;align-items:center;gap:6px}.author-meta .separator{color:var(--color-text-tertiary, #a0a0a0)}.lightbox-context .author-name,.overlay-context .author-name{color:#fffffff2}.lightbox-context .author-meta,.overlay-context .author-meta{color:#ffffffb3}.lightbox-context .author-meta .separator,.overlay-context .author-meta .separator{color:#ffffff80}.section-headline{font-size:var(--font-size-
|
|
9341
|
+
`, isInline: true, styles: [".author-name{font-family:Brockmann,sans-serif;font-size:var(--font-size-sm);font-weight:600;line-height:20px;letter-spacing:-.3px;color:var(--color-text-primary, #1a1a1a);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.author-meta{font-family:Brockmann,sans-serif;font-size:var(--font-size-xs);font-weight:400;line-height:1.2;letter-spacing:-.26px;color:var(--color-text-tertiary, #737373);display:flex;align-items:center;gap:6px}.author-meta .separator{color:var(--color-text-tertiary, #a0a0a0)}.lightbox-context .author-name,.overlay-context .author-name{color:#fffffff2}.lightbox-context .author-meta,.overlay-context .author-meta{color:#ffffffb3}.lightbox-context .author-meta .separator,.overlay-context .author-meta .separator{color:#ffffff80}.section-headline{font-size:var(--font-size-base);font-weight:600;color:var(--text-color-default-primary);padding:16px 0;margin:0;letter-spacing:-.2px;display:flex;align-items:center;gap:6px}.empty-state-title{font-family:Brockmann,sans-serif;font-size:var(--font-size-base);font-weight:600;line-height:1.3;color:var(--text-color-default-primary, #202227);margin:0 0 8px}.empty-state-description{font-family:Brockmann,sans-serif;font-size:var(--font-size-sm);font-weight:400;line-height:1.4;color:var(--text-color-default-secondary, #545B66);margin:0}.ghost-input-clean ::ng-deep .ds-input,.ghost-input-clean ::ng-deep .ds-textarea,.ghost-input-clean ::ng-deep .textarea-container{outline:none!important;border:none!important}.ghost-input-clean ::ng-deep .ds-input:hover,.ghost-input-clean ::ng-deep .ds-textarea:hover,.ghost-input-clean ::ng-deep .textarea-container:hover,.ghost-input-clean ::ng-deep .ds-input:focus,.ghost-input-clean ::ng-deep .ds-textarea:focus,.ghost-input-clean ::ng-deep .textarea-container:focus,.ghost-input-clean ::ng-deep .ds-input:focus-within,.ghost-input-clean ::ng-deep .ds-textarea:focus-within,.ghost-input-clean ::ng-deep .textarea-container:focus-within{outline:none!important;border:none!important;box-shadow:none!important}.ghost-input-clean ::ng-deep textarea{outline:none!important;border:none!important;box-shadow:none!important;resize:none!important}.ghost-input-clean ::ng-deep textarea:hover,.ghost-input-clean ::ng-deep textarea:focus{outline:none!important;border:none!important;box-shadow:none!important}:host{display:block;height:100%;width:100%}.lightbox-content.pdf-viewer{--background: rgba(0, 0, 0, 1);display:block;height:100vh;width:100vw;position:absolute;inset:0}.lightbox-content.pdf-viewer::part(scroll){display:flex;flex-direction:column;height:100%;overflow:hidden}.lightbox-wrapper{position:absolute;inset:0;display:flex;flex-direction:column;width:100%;height:100%}.lightbox-header{position:fixed;top:0;left:0;right:0;z-index:1000;padding:12px 16px;display:flex;flex-direction:column;gap:8px;background:linear-gradient(to bottom,rgba(0,0,0,.8) 0%,rgba(0,0,0,.4) 80%,transparent 100%);pointer-events:none}.header-actions{display:flex;align-items:center;justify-content:space-between;gap:8px;pointer-events:auto}.share-button,.close-button{pointer-events:auto;flex-shrink:0;border-radius:50%}.share-button::ng-deep button,.close-button::ng-deep button{color:#fff!important;background:#ffffff1a!important;border-radius:50%;transition:background .2s ease;border:none;width:36px!important;height:36px!important;min-width:36px!important;min-height:36px!important;padding:0!important;display:flex!important;align-items:center!important;justify-content:center!important}.share-button::ng-deep button:hover,.close-button::ng-deep button:hover{background:#ffffff26!important}.share-button::ng-deep button:disabled{opacity:.5!important;cursor:not-allowed!important}.share-button::ng-deep svg,.close-button::ng-deep svg{color:#fff!important;fill:#fff!important}@supports (padding-top: env(safe-area-inset-top)){.lightbox-header{padding-top:calc(16px + env(safe-area-inset-top))}}.pdf-container{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:100px 24px 24px;overflow-y:auto;-webkit-overflow-scrolling:touch}.pdf-content{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;max-width:400px;width:100%;gap:16px}.pdf-content::ng-deep .avatar--icon{background-color:#ff5757!important}.pdf-title{font-family:Brockmann,sans-serif;font-size:var(--font-size-xl);font-weight:600;line-height:1.3;letter-spacing:-.3px;color:#fff;margin:0;word-break:break-word}.pdf-meta{font-family:Brockmann,sans-serif;font-size:var(--font-size-sm);font-weight:400;line-height:1.2;letter-spacing:-.26px;color:#fff9;text-transform:uppercase}.open-pdf-button{margin-top:16px}.open-pdf-button::ng-deep button{background:#ffffff1a!important;border:1px solid rgba(255,255,255,.2)!important;border-radius:100px!important;color:#fff!important;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);transition:all .2s ease;padding:16px!important}.open-pdf-button::ng-deep button:hover{background:#fff3!important;transform:scale(1.02)}.open-pdf-button::ng-deep button:active{transform:scale(.98)}.loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;padding:40px}.loading-state ion-spinner{--color: rgba(255, 255, 255, .8);width:48px;height:48px}.loading-state p{font-family:Brockmann,sans-serif;font-size:var(--font-size-base);font-weight:500;color:#fffc;margin:0}.error-state{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:40px;max-width:400px}.error-state svg{color:#ff6464cc;margin-bottom:24px}.error-state h3{font-family:Brockmann,sans-serif;font-size:var(--font-size-xl);font-weight:600;color:#fff;margin:0 0 12px}.error-state p{font-family:Brockmann,sans-serif;font-size:var(--font-size-base);font-weight:400;line-height:1.5;color:#ffffffb3;margin:0 0 24px}.retry-button{padding:12px 24px;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:8px;color:#fff;font-family:Brockmann,sans-serif;font-size:var(--font-size-sm);font-weight:600;cursor:pointer;transition:all .2s ease}.retry-button:hover{background:#ffffff26;border-color:#ffffff4d}.pdf-author-info{position:fixed;bottom:20px;left:20px;right:20px;display:flex;align-items:center;gap:12px;padding:16px;background:#000000b3;border-radius:12px;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);z-index:50}.author-details{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.author-name{color:#fff}.author-meta{color:#ffffffb3}.author-meta .separator{color:#ffffff80}@supports (padding-bottom: env(safe-area-inset-bottom)){.pdf-author-info{bottom:calc(20px + env(safe-area-inset-bottom))}.pdf-container{padding-bottom:calc(120px + env(safe-area-inset-bottom))}}@media (min-width: 768px){.lightbox-header{padding:24px}.pdf-container{padding:120px 40px 40px}.pdf-title{font-size:var(--font-size-3xl)}.pdf-description{font-size:var(--font-size-base)}.open-pdf-button{padding:18px 40px;font-size:var(--font-size-lg)}}@media (prefers-reduced-motion: reduce){.open-pdf-button,.retry-button{transition:none}}.open-pdf-button:focus-visible,.retry-button:focus-visible{outline:2px solid white;outline-offset:2px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "component", type: IonContent, selector: "ion-content", inputs: ["color", "fixedSlotPlacement", "forceOverscroll", "fullscreen", "scrollEvents", "scrollX", "scrollY"] }, { kind: "component", type: IonSpinner, selector: "ion-spinner", inputs: ["color", "duration", "name", "paused"] }, { kind: "component", type: DsAvatarComponent, selector: "ds-avatar", inputs: ["type", "size", "initials", "src", "alt", "iconName", "iconColor"] }, { 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: DsMobileLightboxHeaderComponent, selector: "ds-mobile-lightbox-header", inputs: ["author"], outputs: ["closeClick", "shareClick"] }, { kind: "component", type: DsMobileLightboxFooterComponent, selector: "ds-mobile-lightbox-footer", inputs: ["showNavigation", "currentIndex", "totalImages", "showActions", "isLiked", "likeCount", "commentCount"], outputs: ["prevClick", "nextClick", "likeClick", "commentClick"] }] });
|
|
9410
9342
|
}
|
|
9411
9343
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: DsMobileLightboxPdfComponent, decorators: [{
|
|
9412
9344
|
type: Component,
|
|
@@ -9488,7 +9420,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
|
|
|
9488
9420
|
/>
|
|
9489
9421
|
</div>
|
|
9490
9422
|
</ion-content>
|
|
9491
|
-
`, styles: [".author-name{font-family:Brockmann,sans-serif;font-size:var(--font-size-sm);font-weight:600;line-height:20px;letter-spacing:-.3px;color:var(--color-text-primary, #1a1a1a);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.author-meta{font-family:Brockmann,sans-serif;font-size:var(--font-size-xs);font-weight:400;line-height:1.2;letter-spacing:-.26px;color:var(--color-text-tertiary, #737373);display:flex;align-items:center;gap:6px}.author-meta .separator{color:var(--color-text-tertiary, #a0a0a0)}.lightbox-context .author-name,.overlay-context .author-name{color:#fffffff2}.lightbox-context .author-meta,.overlay-context .author-meta{color:#ffffffb3}.lightbox-context .author-meta .separator,.overlay-context .author-meta .separator{color:#ffffff80}.section-headline{font-size:var(--font-size-
|
|
9423
|
+
`, styles: [".author-name{font-family:Brockmann,sans-serif;font-size:var(--font-size-sm);font-weight:600;line-height:20px;letter-spacing:-.3px;color:var(--color-text-primary, #1a1a1a);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.author-meta{font-family:Brockmann,sans-serif;font-size:var(--font-size-xs);font-weight:400;line-height:1.2;letter-spacing:-.26px;color:var(--color-text-tertiary, #737373);display:flex;align-items:center;gap:6px}.author-meta .separator{color:var(--color-text-tertiary, #a0a0a0)}.lightbox-context .author-name,.overlay-context .author-name{color:#fffffff2}.lightbox-context .author-meta,.overlay-context .author-meta{color:#ffffffb3}.lightbox-context .author-meta .separator,.overlay-context .author-meta .separator{color:#ffffff80}.section-headline{font-size:var(--font-size-base);font-weight:600;color:var(--text-color-default-primary);padding:16px 0;margin:0;letter-spacing:-.2px;display:flex;align-items:center;gap:6px}.empty-state-title{font-family:Brockmann,sans-serif;font-size:var(--font-size-base);font-weight:600;line-height:1.3;color:var(--text-color-default-primary, #202227);margin:0 0 8px}.empty-state-description{font-family:Brockmann,sans-serif;font-size:var(--font-size-sm);font-weight:400;line-height:1.4;color:var(--text-color-default-secondary, #545B66);margin:0}.ghost-input-clean ::ng-deep .ds-input,.ghost-input-clean ::ng-deep .ds-textarea,.ghost-input-clean ::ng-deep .textarea-container{outline:none!important;border:none!important}.ghost-input-clean ::ng-deep .ds-input:hover,.ghost-input-clean ::ng-deep .ds-textarea:hover,.ghost-input-clean ::ng-deep .textarea-container:hover,.ghost-input-clean ::ng-deep .ds-input:focus,.ghost-input-clean ::ng-deep .ds-textarea:focus,.ghost-input-clean ::ng-deep .textarea-container:focus,.ghost-input-clean ::ng-deep .ds-input:focus-within,.ghost-input-clean ::ng-deep .ds-textarea:focus-within,.ghost-input-clean ::ng-deep .textarea-container:focus-within{outline:none!important;border:none!important;box-shadow:none!important}.ghost-input-clean ::ng-deep textarea{outline:none!important;border:none!important;box-shadow:none!important;resize:none!important}.ghost-input-clean ::ng-deep textarea:hover,.ghost-input-clean ::ng-deep textarea:focus{outline:none!important;border:none!important;box-shadow:none!important}:host{display:block;height:100%;width:100%}.lightbox-content.pdf-viewer{--background: rgba(0, 0, 0, 1);display:block;height:100vh;width:100vw;position:absolute;inset:0}.lightbox-content.pdf-viewer::part(scroll){display:flex;flex-direction:column;height:100%;overflow:hidden}.lightbox-wrapper{position:absolute;inset:0;display:flex;flex-direction:column;width:100%;height:100%}.lightbox-header{position:fixed;top:0;left:0;right:0;z-index:1000;padding:12px 16px;display:flex;flex-direction:column;gap:8px;background:linear-gradient(to bottom,rgba(0,0,0,.8) 0%,rgba(0,0,0,.4) 80%,transparent 100%);pointer-events:none}.header-actions{display:flex;align-items:center;justify-content:space-between;gap:8px;pointer-events:auto}.share-button,.close-button{pointer-events:auto;flex-shrink:0;border-radius:50%}.share-button::ng-deep button,.close-button::ng-deep button{color:#fff!important;background:#ffffff1a!important;border-radius:50%;transition:background .2s ease;border:none;width:36px!important;height:36px!important;min-width:36px!important;min-height:36px!important;padding:0!important;display:flex!important;align-items:center!important;justify-content:center!important}.share-button::ng-deep button:hover,.close-button::ng-deep button:hover{background:#ffffff26!important}.share-button::ng-deep button:disabled{opacity:.5!important;cursor:not-allowed!important}.share-button::ng-deep svg,.close-button::ng-deep svg{color:#fff!important;fill:#fff!important}@supports (padding-top: env(safe-area-inset-top)){.lightbox-header{padding-top:calc(16px + env(safe-area-inset-top))}}.pdf-container{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:100px 24px 24px;overflow-y:auto;-webkit-overflow-scrolling:touch}.pdf-content{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;max-width:400px;width:100%;gap:16px}.pdf-content::ng-deep .avatar--icon{background-color:#ff5757!important}.pdf-title{font-family:Brockmann,sans-serif;font-size:var(--font-size-xl);font-weight:600;line-height:1.3;letter-spacing:-.3px;color:#fff;margin:0;word-break:break-word}.pdf-meta{font-family:Brockmann,sans-serif;font-size:var(--font-size-sm);font-weight:400;line-height:1.2;letter-spacing:-.26px;color:#fff9;text-transform:uppercase}.open-pdf-button{margin-top:16px}.open-pdf-button::ng-deep button{background:#ffffff1a!important;border:1px solid rgba(255,255,255,.2)!important;border-radius:100px!important;color:#fff!important;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);transition:all .2s ease;padding:16px!important}.open-pdf-button::ng-deep button:hover{background:#fff3!important;transform:scale(1.02)}.open-pdf-button::ng-deep button:active{transform:scale(.98)}.loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;padding:40px}.loading-state ion-spinner{--color: rgba(255, 255, 255, .8);width:48px;height:48px}.loading-state p{font-family:Brockmann,sans-serif;font-size:var(--font-size-base);font-weight:500;color:#fffc;margin:0}.error-state{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:40px;max-width:400px}.error-state svg{color:#ff6464cc;margin-bottom:24px}.error-state h3{font-family:Brockmann,sans-serif;font-size:var(--font-size-xl);font-weight:600;color:#fff;margin:0 0 12px}.error-state p{font-family:Brockmann,sans-serif;font-size:var(--font-size-base);font-weight:400;line-height:1.5;color:#ffffffb3;margin:0 0 24px}.retry-button{padding:12px 24px;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:8px;color:#fff;font-family:Brockmann,sans-serif;font-size:var(--font-size-sm);font-weight:600;cursor:pointer;transition:all .2s ease}.retry-button:hover{background:#ffffff26;border-color:#ffffff4d}.pdf-author-info{position:fixed;bottom:20px;left:20px;right:20px;display:flex;align-items:center;gap:12px;padding:16px;background:#000000b3;border-radius:12px;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);z-index:50}.author-details{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.author-name{color:#fff}.author-meta{color:#ffffffb3}.author-meta .separator{color:#ffffff80}@supports (padding-bottom: env(safe-area-inset-bottom)){.pdf-author-info{bottom:calc(20px + env(safe-area-inset-bottom))}.pdf-container{padding-bottom:calc(120px + env(safe-area-inset-bottom))}}@media (min-width: 768px){.lightbox-header{padding:24px}.pdf-container{padding:120px 40px 40px}.pdf-title{font-size:var(--font-size-3xl)}.pdf-description{font-size:var(--font-size-base)}.open-pdf-button{padding:18px 40px;font-size:var(--font-size-lg)}}@media (prefers-reduced-motion: reduce){.open-pdf-button,.retry-button{transition:none}}.open-pdf-button:focus-visible,.retry-button:focus-visible{outline:2px solid white;outline-offset:2px}\n"] }]
|
|
9492
9424
|
}], ctorParameters: () => [] });
|
|
9493
9425
|
|
|
9494
9426
|
/**
|
|
@@ -11339,7 +11271,7 @@ class DsMobilePostDetailModalComponent {
|
|
|
11339
11271
|
</div>
|
|
11340
11272
|
</div>
|
|
11341
11273
|
</ds-mobile-modal-base>
|
|
11342
|
-
`, isInline: true, styles: [".author-details{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.author-name{font-family:Brockmann,sans-serif;font-size:var(--font-size-sm);font-weight:600;line-height:20px;letter-spacing:-.3px;color:var(--color-text-primary, #1a1a1a);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.author-meta{font-family:Brockmann,sans-serif;font-size:var(--font-size-xs);font-weight:400;line-height:1.2;letter-spacing:-.26px;color:var(--color-text-tertiary, #737373);display:flex;align-items:center;gap:6px}.author-meta .separator{color:var(--color-text-tertiary, #a0a0a0)}.lightbox-context .author-name,.overlay-context .author-name{color:#fffffff2}.lightbox-context .author-meta,.overlay-context .author-meta{color:#ffffffb3}.lightbox-context .author-meta .separator,.overlay-context .author-meta .separator{color:#ffffff80}.section-headline{font-size:var(--font-size-sm);font-weight:600;color:var(--text-color-default-primary);padding:16px 0;margin:0;letter-spacing:-.2px;display:flex;align-items:center;gap:6px}.empty-state-title{font-family:Brockmann,sans-serif;font-size:var(--font-size-base);font-weight:600;line-height:1.3;color:var(--text-color-default-primary, #202227);margin:0 0 8px}.empty-state-description{font-family:Brockmann,sans-serif;font-size:var(--font-size-sm);font-weight:400;line-height:1.4;color:var(--text-color-default-secondary, #545B66);margin:0}.ghost-input-clean ::ng-deep .ds-input,.ghost-input-clean ::ng-deep .ds-textarea,.ghost-input-clean ::ng-deep .textarea-container{outline:none!important;border:none!important}.ghost-input-clean ::ng-deep .ds-input:hover,.ghost-input-clean ::ng-deep .ds-textarea:hover,.ghost-input-clean ::ng-deep .textarea-container:hover,.ghost-input-clean ::ng-deep .ds-input:focus,.ghost-input-clean ::ng-deep .ds-textarea:focus,.ghost-input-clean ::ng-deep .textarea-container:focus,.ghost-input-clean ::ng-deep .ds-input:focus-within,.ghost-input-clean ::ng-deep .ds-textarea:focus-within,.ghost-input-clean ::ng-deep .textarea-container:focus-within{outline:none!important;border:none!important;box-shadow:none!important}.ghost-input-clean ::ng-deep textarea{outline:none!important;border:none!important;box-shadow:none!important;resize:none!important}.ghost-input-clean ::ng-deep textarea:hover,.ghost-input-clean ::ng-deep textarea:focus{outline:none!important;border:none!important;box-shadow:none!important}\n", ".post-detail-container{display:flex;flex-direction:column;gap:16px;width:100%;padding:0}.post-section{width:100%;border-bottom:1px solid var(--border-color-default);padding:20px}.post-content-only{font-size:var(--font-size-sm);line-height:24px;color:var(--color-text-primary, #1a1a1a);margin-bottom:16px}.post-content-only post-media{margin-top:16px}.post-actions{display:flex;align-items:center;gap:16px}.clickable-image{cursor:pointer;transition:transform .2s ease,opacity .2s ease;border-radius:8px;display:block;width:100%;aspect-ratio:16/9;-o-object-fit:cover;object-fit:cover}.clickable-image:active{transform:scale(.98);opacity:.9}.comments-section{display:flex;flex-direction:column;margin-left:0;margin-right:0;padding:0 20px}.comments-header{font-family:Brockmann,sans-serif;font-size:var(--font-size-base);font-weight:600;line-height:24px;color:var(--color-text-primary, #1a1a1a);margin:0 0 16px;padding-left:0;padding-right:0}.comments-list{display:flex;flex-direction:column}.comment-composer{pointer-events:auto;background:var(--color-background-neutral-primary, #ffffff);border-top:1px solid var(--border-color-default);padding:12px 16px;width:100%;display:flex;flex-direction:column;gap:8px}.edit-indicator{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;background:var(--color-background-brand-subtle, #f0edfe);border-radius:8px;animation:slideDown .2s ease-out}.edit-indicator-content{display:flex;align-items:center;gap:8px;color:var(--color-brand-base, #6b5ff5);flex:1;min-width:0}.edit-text{font-family:Brockmann,sans-serif;font-size:var(--font-size-sm);font-weight:500;line-height:18px;color:var(--color-brand-base, #6b5ff5)}.cancel-edit{background:none;border:none;padding:4px;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--color-brand-base, #6b5ff5);border-radius:4px;transition:background .2s ease;flex-shrink:0}.cancel-edit:active{background:var(--color-brand-subtle, #e0dbfe)}.reply-indicator{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;background:var(--color-background-neutral-secondary, #f5f5f5);border-radius:8px;animation:slideDown .2s ease-out}.reply-indicator-content{display:flex;align-items:center;gap:4px;color:var(--color-text-secondary, #737373);flex:1;min-width:0}.reply-to-text{font-family:Brockmann,sans-serif;font-size:var(--font-size-sm);line-height:18px;color:var(--color-text-secondary, #737373);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.reply-author{color:var(--color-brand-base, #6b5ff5);font-weight:600}.cancel-reply{background:none;border:none;padding:4px;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--color-text-secondary, #737373);border-radius:4px;transition:background .2s ease;flex-shrink:0}.cancel-reply:active{background:var(--color-background-neutral-secondary, #f5f5f5)}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.composer-content{display:flex;align-items:flex-start;gap:12px;width:100%;position:relative}.composer-content ds-avatar{position:relative;top:6px}.composer-input-wrapper{flex:1;display:flex;align-items:flex-start;gap:8px;background:var(--color-background-neutral-secondary, #f5f5f5);border-radius:24px;padding:12px 48px 12px 16px;min-height:44px;position:relative}.mention-menu{position:absolute;bottom:100%;left:0;right:0;background:var(--color-background-neutral-primary, #ffffff);border-radius:12px;box-shadow:0 4px 12px #00000026;margin-bottom:8px;max-height:200px;overflow-y:auto;z-index:10;animation:slideUp .2s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.mention-menu-item{display:flex;align-items:center;gap:12px;padding:12px;border:none;background:none;width:100%;text-align:left;cursor:pointer;transition:background .2s ease;border-bottom:1px solid var(--border-color-default)}.mention-menu-item:last-child{border-bottom:none}.mention-menu-item:active{background:var(--color-background-neutral-secondary, #f5f5f5)}.mention-user-info{display:flex;align-items:center;gap:8px;flex:1;min-width:0}.mention-user-name{font-family:Brockmann,sans-serif;font-size:var(--font-size-base);font-weight:600;line-height:20px;color:var(--color-text-primary, #1a1a1a)}.mention-user-role{font-family:Brockmann,sans-serif;font-size:var(--font-size-sm);line-height:18px;color:var(--color-text-secondary, #737373)}.composer-input{flex:1;border:none;background:transparent;font-family:Brockmann,sans-serif;font-size:var(--font-size-sm);line-height:20px;color:var(--color-text-primary, #1a1a1a);outline:none;resize:none;min-height:20px;max-height:120px;overflow-y:auto;overflow-x:hidden;padding:0;margin:0}.composer-input::-moz-placeholder{color:var(--color-text-tertiary, #a0a0a0);font-size:var(--font-size-sm)}.composer-input::placeholder{color:var(--color-text-tertiary, #a0a0a0);font-size:var(--font-size-sm)}.send-button-fixed{position:absolute;top:6px;right:6px;z-index:10;flex-shrink:0;opacity:0;transform:translate(20px) scale(.8);pointer-events:none;transition:opacity .15s ease-in,transform .15s ease-in}.send-button-fixed.show{opacity:1;transform:translate(0) scale(1);pointer-events:auto;animation:slideInFromRight var(--spring-bouncy)}@media (prefers-reduced-motion: no-preference){.send-button-fixed{transition:opacity .15s ease-in,transform .15s ease-in}}.send-button-fixed::ng-deep button{width:32px!important;height:32px!important;min-width:32px!important;min-height:32px!important;padding:0!important;border-radius:50%!important}@keyframes slideInFromRight{0%{opacity:0;transform:translate(20px) scale(.8)}to{opacity:1;transform:translate(0) scale(1)}}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: DsIconComponent, selector: "ds-icon", inputs: ["name", "size", "color", "interactive"] }, { kind: "component", type: DsIconButtonComponent, selector: "ds-icon-button", inputs: ["variant", "size", "icon", "disabled", "loading", "pressed", "expanded", "ariaLabel", "tooltip", "tooltipDisabled", "tooltipPlacement"], outputs: ["clicked", "focused", "blurred"] }, { kind: "component", type: DsAvatarComponent, selector: "ds-avatar", inputs: ["type", "size", "initials", "src", "alt", "iconName", "iconColor"] }, { kind: "component", type: PostTextComponent, selector: "post-text" }, { kind: "component", type: PostMediaComponent, selector: "post-media" }, { kind: "component", type: ActionLikeComponent, selector: "action-like", inputs: ["active", "count"], outputs: ["activeChange", "countChange", "likeClick"] }, { kind: "component", type: ActionCommentComponent, selector: "action-comment", inputs: ["count"], outputs: ["commentClick"] }, { kind: "component", type: DsMobileCommentComponent, selector: "ds-mobile-comment", inputs: ["authorName", "authorRole", "timestamp", "content", "avatarInitials", "avatarType", "clickable", "isOwnComment", "isLiked", "likeCount"], outputs: ["likeToggled", "commentClick", "replyClick", "editClick", "longPress"] }, { kind: "component", type: DsMobileModalBaseComponent, selector: "ds-mobile-modal-base", inputs: ["showHeader"] }, { kind: "component", type: DsMobileEmptyStateComponent, selector: "ds-mobile-empty-state", inputs: ["imageSrc", "imageAlt", "title", "description"] }] });
|
|
11274
|
+
`, isInline: true, styles: [".author-details{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.author-name{font-family:Brockmann,sans-serif;font-size:var(--font-size-sm);font-weight:600;line-height:20px;letter-spacing:-.3px;color:var(--color-text-primary, #1a1a1a);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.author-meta{font-family:Brockmann,sans-serif;font-size:var(--font-size-xs);font-weight:400;line-height:1.2;letter-spacing:-.26px;color:var(--color-text-tertiary, #737373);display:flex;align-items:center;gap:6px}.author-meta .separator{color:var(--color-text-tertiary, #a0a0a0)}.lightbox-context .author-name,.overlay-context .author-name{color:#fffffff2}.lightbox-context .author-meta,.overlay-context .author-meta{color:#ffffffb3}.lightbox-context .author-meta .separator,.overlay-context .author-meta .separator{color:#ffffff80}.section-headline{font-size:var(--font-size-base);font-weight:600;color:var(--text-color-default-primary);padding:16px 0;margin:0;letter-spacing:-.2px;display:flex;align-items:center;gap:6px}.empty-state-title{font-family:Brockmann,sans-serif;font-size:var(--font-size-base);font-weight:600;line-height:1.3;color:var(--text-color-default-primary, #202227);margin:0 0 8px}.empty-state-description{font-family:Brockmann,sans-serif;font-size:var(--font-size-sm);font-weight:400;line-height:1.4;color:var(--text-color-default-secondary, #545B66);margin:0}.ghost-input-clean ::ng-deep .ds-input,.ghost-input-clean ::ng-deep .ds-textarea,.ghost-input-clean ::ng-deep .textarea-container{outline:none!important;border:none!important}.ghost-input-clean ::ng-deep .ds-input:hover,.ghost-input-clean ::ng-deep .ds-textarea:hover,.ghost-input-clean ::ng-deep .textarea-container:hover,.ghost-input-clean ::ng-deep .ds-input:focus,.ghost-input-clean ::ng-deep .ds-textarea:focus,.ghost-input-clean ::ng-deep .textarea-container:focus,.ghost-input-clean ::ng-deep .ds-input:focus-within,.ghost-input-clean ::ng-deep .ds-textarea:focus-within,.ghost-input-clean ::ng-deep .textarea-container:focus-within{outline:none!important;border:none!important;box-shadow:none!important}.ghost-input-clean ::ng-deep textarea{outline:none!important;border:none!important;box-shadow:none!important;resize:none!important}.ghost-input-clean ::ng-deep textarea:hover,.ghost-input-clean ::ng-deep textarea:focus{outline:none!important;border:none!important;box-shadow:none!important}\n", ".post-detail-container{display:flex;flex-direction:column;gap:16px;width:100%;padding:0}.post-section{width:100%;border-bottom:1px solid var(--border-color-default);padding:20px}.post-content-only{font-size:var(--font-size-sm);line-height:24px;color:var(--color-text-primary, #1a1a1a);margin-bottom:16px}.post-content-only post-media{margin-top:16px}.post-actions{display:flex;align-items:center;gap:16px}.clickable-image{cursor:pointer;transition:transform .2s ease,opacity .2s ease;border-radius:8px;display:block;width:100%;aspect-ratio:16/9;-o-object-fit:cover;object-fit:cover}.clickable-image:active{transform:scale(.98);opacity:.9}.comments-section{display:flex;flex-direction:column;margin-left:0;margin-right:0;padding:0 20px}.comments-header{font-family:Brockmann,sans-serif;font-size:var(--font-size-base);font-weight:600;line-height:24px;color:var(--color-text-primary, #1a1a1a);margin:0 0 16px;padding-left:0;padding-right:0}.comments-list{display:flex;flex-direction:column}.comment-composer{pointer-events:auto;background:var(--color-background-neutral-primary, #ffffff);border-top:1px solid var(--border-color-default);padding:12px 16px;width:100%;display:flex;flex-direction:column;gap:8px}.edit-indicator{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;background:var(--color-background-brand-subtle, #f0edfe);border-radius:8px;animation:slideDown .2s ease-out}.edit-indicator-content{display:flex;align-items:center;gap:8px;color:var(--color-brand-base, #6b5ff5);flex:1;min-width:0}.edit-text{font-family:Brockmann,sans-serif;font-size:var(--font-size-sm);font-weight:500;line-height:18px;color:var(--color-brand-base, #6b5ff5)}.cancel-edit{background:none;border:none;padding:4px;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--color-brand-base, #6b5ff5);border-radius:4px;transition:background .2s ease;flex-shrink:0}.cancel-edit:active{background:var(--color-brand-subtle, #e0dbfe)}.reply-indicator{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;background:var(--color-background-neutral-secondary, #f5f5f5);border-radius:8px;animation:slideDown .2s ease-out}.reply-indicator-content{display:flex;align-items:center;gap:4px;color:var(--color-text-secondary, #737373);flex:1;min-width:0}.reply-to-text{font-family:Brockmann,sans-serif;font-size:var(--font-size-sm);line-height:18px;color:var(--color-text-secondary, #737373);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.reply-author{color:var(--color-brand-base, #6b5ff5);font-weight:600}.cancel-reply{background:none;border:none;padding:4px;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--color-text-secondary, #737373);border-radius:4px;transition:background .2s ease;flex-shrink:0}.cancel-reply:active{background:var(--color-background-neutral-secondary, #f5f5f5)}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.composer-content{display:flex;align-items:flex-start;gap:12px;width:100%;position:relative}.composer-content ds-avatar{position:relative;top:6px}.composer-input-wrapper{flex:1;display:flex;align-items:flex-start;gap:8px;background:var(--color-background-neutral-secondary, #f5f5f5);border-radius:24px;padding:12px 48px 12px 16px;min-height:44px;position:relative}.mention-menu{position:absolute;bottom:100%;left:0;right:0;background:var(--color-background-neutral-primary, #ffffff);border-radius:12px;box-shadow:0 4px 12px #00000026;margin-bottom:8px;max-height:200px;overflow-y:auto;z-index:10;animation:slideUp .2s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.mention-menu-item{display:flex;align-items:center;gap:12px;padding:12px;border:none;background:none;width:100%;text-align:left;cursor:pointer;transition:background .2s ease;border-bottom:1px solid var(--border-color-default)}.mention-menu-item:last-child{border-bottom:none}.mention-menu-item:active{background:var(--color-background-neutral-secondary, #f5f5f5)}.mention-user-info{display:flex;align-items:center;gap:8px;flex:1;min-width:0}.mention-user-name{font-family:Brockmann,sans-serif;font-size:var(--font-size-base);font-weight:600;line-height:20px;color:var(--color-text-primary, #1a1a1a)}.mention-user-role{font-family:Brockmann,sans-serif;font-size:var(--font-size-sm);line-height:18px;color:var(--color-text-secondary, #737373)}.composer-input{flex:1;border:none;background:transparent;font-family:Brockmann,sans-serif;font-size:var(--font-size-sm);line-height:20px;color:var(--color-text-primary, #1a1a1a);outline:none;resize:none;min-height:20px;max-height:120px;overflow-y:auto;overflow-x:hidden;padding:0;margin:0}.composer-input::-moz-placeholder{color:var(--color-text-tertiary, #a0a0a0);font-size:var(--font-size-sm)}.composer-input::placeholder{color:var(--color-text-tertiary, #a0a0a0);font-size:var(--font-size-sm)}.send-button-fixed{position:absolute;top:6px;right:6px;z-index:10;flex-shrink:0;opacity:0;transform:translate(20px) scale(.8);pointer-events:none;transition:opacity .15s ease-in,transform .15s ease-in}.send-button-fixed.show{opacity:1;transform:translate(0) scale(1);pointer-events:auto;animation:slideInFromRight var(--spring-bouncy)}@media (prefers-reduced-motion: no-preference){.send-button-fixed{transition:opacity .15s ease-in,transform .15s ease-in}}.send-button-fixed::ng-deep button{width:32px!important;height:32px!important;min-width:32px!important;min-height:32px!important;padding:0!important;border-radius:50%!important}@keyframes slideInFromRight{0%{opacity:0;transform:translate(20px) scale(.8)}to{opacity:1;transform:translate(0) scale(1)}}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: DsIconComponent, selector: "ds-icon", inputs: ["name", "size", "color", "interactive"] }, { kind: "component", type: DsIconButtonComponent, selector: "ds-icon-button", inputs: ["variant", "size", "icon", "disabled", "loading", "pressed", "expanded", "ariaLabel", "tooltip", "tooltipDisabled", "tooltipPlacement"], outputs: ["clicked", "focused", "blurred"] }, { kind: "component", type: DsAvatarComponent, selector: "ds-avatar", inputs: ["type", "size", "initials", "src", "alt", "iconName", "iconColor"] }, { kind: "component", type: PostTextComponent, selector: "post-text" }, { kind: "component", type: PostMediaComponent, selector: "post-media" }, { kind: "component", type: ActionLikeComponent, selector: "action-like", inputs: ["active", "count"], outputs: ["activeChange", "countChange", "likeClick"] }, { kind: "component", type: ActionCommentComponent, selector: "action-comment", inputs: ["count"], outputs: ["commentClick"] }, { kind: "component", type: DsMobileCommentComponent, selector: "ds-mobile-comment", inputs: ["authorName", "authorRole", "timestamp", "content", "avatarInitials", "avatarType", "clickable", "isOwnComment", "isLiked", "likeCount"], outputs: ["likeToggled", "commentClick", "replyClick", "editClick", "longPress"] }, { kind: "component", type: DsMobileModalBaseComponent, selector: "ds-mobile-modal-base", inputs: ["showHeader"] }, { kind: "component", type: DsMobileEmptyStateComponent, selector: "ds-mobile-empty-state", inputs: ["imageSrc", "imageAlt", "title", "description"] }] });
|
|
11343
11275
|
}
|
|
11344
11276
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: DsMobilePostDetailModalComponent, decorators: [{
|
|
11345
11277
|
type: Component,
|
|
@@ -11481,7 +11413,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
|
|
|
11481
11413
|
</div>
|
|
11482
11414
|
</div>
|
|
11483
11415
|
</ds-mobile-modal-base>
|
|
11484
|
-
`, styles: [".author-details{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.author-name{font-family:Brockmann,sans-serif;font-size:var(--font-size-sm);font-weight:600;line-height:20px;letter-spacing:-.3px;color:var(--color-text-primary, #1a1a1a);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.author-meta{font-family:Brockmann,sans-serif;font-size:var(--font-size-xs);font-weight:400;line-height:1.2;letter-spacing:-.26px;color:var(--color-text-tertiary, #737373);display:flex;align-items:center;gap:6px}.author-meta .separator{color:var(--color-text-tertiary, #a0a0a0)}.lightbox-context .author-name,.overlay-context .author-name{color:#fffffff2}.lightbox-context .author-meta,.overlay-context .author-meta{color:#ffffffb3}.lightbox-context .author-meta .separator,.overlay-context .author-meta .separator{color:#ffffff80}.section-headline{font-size:var(--font-size-
|
|
11416
|
+
`, styles: [".author-details{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.author-name{font-family:Brockmann,sans-serif;font-size:var(--font-size-sm);font-weight:600;line-height:20px;letter-spacing:-.3px;color:var(--color-text-primary, #1a1a1a);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.author-meta{font-family:Brockmann,sans-serif;font-size:var(--font-size-xs);font-weight:400;line-height:1.2;letter-spacing:-.26px;color:var(--color-text-tertiary, #737373);display:flex;align-items:center;gap:6px}.author-meta .separator{color:var(--color-text-tertiary, #a0a0a0)}.lightbox-context .author-name,.overlay-context .author-name{color:#fffffff2}.lightbox-context .author-meta,.overlay-context .author-meta{color:#ffffffb3}.lightbox-context .author-meta .separator,.overlay-context .author-meta .separator{color:#ffffff80}.section-headline{font-size:var(--font-size-base);font-weight:600;color:var(--text-color-default-primary);padding:16px 0;margin:0;letter-spacing:-.2px;display:flex;align-items:center;gap:6px}.empty-state-title{font-family:Brockmann,sans-serif;font-size:var(--font-size-base);font-weight:600;line-height:1.3;color:var(--text-color-default-primary, #202227);margin:0 0 8px}.empty-state-description{font-family:Brockmann,sans-serif;font-size:var(--font-size-sm);font-weight:400;line-height:1.4;color:var(--text-color-default-secondary, #545B66);margin:0}.ghost-input-clean ::ng-deep .ds-input,.ghost-input-clean ::ng-deep .ds-textarea,.ghost-input-clean ::ng-deep .textarea-container{outline:none!important;border:none!important}.ghost-input-clean ::ng-deep .ds-input:hover,.ghost-input-clean ::ng-deep .ds-textarea:hover,.ghost-input-clean ::ng-deep .textarea-container:hover,.ghost-input-clean ::ng-deep .ds-input:focus,.ghost-input-clean ::ng-deep .ds-textarea:focus,.ghost-input-clean ::ng-deep .textarea-container:focus,.ghost-input-clean ::ng-deep .ds-input:focus-within,.ghost-input-clean ::ng-deep .ds-textarea:focus-within,.ghost-input-clean ::ng-deep .textarea-container:focus-within{outline:none!important;border:none!important;box-shadow:none!important}.ghost-input-clean ::ng-deep textarea{outline:none!important;border:none!important;box-shadow:none!important;resize:none!important}.ghost-input-clean ::ng-deep textarea:hover,.ghost-input-clean ::ng-deep textarea:focus{outline:none!important;border:none!important;box-shadow:none!important}\n", ".post-detail-container{display:flex;flex-direction:column;gap:16px;width:100%;padding:0}.post-section{width:100%;border-bottom:1px solid var(--border-color-default);padding:20px}.post-content-only{font-size:var(--font-size-sm);line-height:24px;color:var(--color-text-primary, #1a1a1a);margin-bottom:16px}.post-content-only post-media{margin-top:16px}.post-actions{display:flex;align-items:center;gap:16px}.clickable-image{cursor:pointer;transition:transform .2s ease,opacity .2s ease;border-radius:8px;display:block;width:100%;aspect-ratio:16/9;-o-object-fit:cover;object-fit:cover}.clickable-image:active{transform:scale(.98);opacity:.9}.comments-section{display:flex;flex-direction:column;margin-left:0;margin-right:0;padding:0 20px}.comments-header{font-family:Brockmann,sans-serif;font-size:var(--font-size-base);font-weight:600;line-height:24px;color:var(--color-text-primary, #1a1a1a);margin:0 0 16px;padding-left:0;padding-right:0}.comments-list{display:flex;flex-direction:column}.comment-composer{pointer-events:auto;background:var(--color-background-neutral-primary, #ffffff);border-top:1px solid var(--border-color-default);padding:12px 16px;width:100%;display:flex;flex-direction:column;gap:8px}.edit-indicator{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;background:var(--color-background-brand-subtle, #f0edfe);border-radius:8px;animation:slideDown .2s ease-out}.edit-indicator-content{display:flex;align-items:center;gap:8px;color:var(--color-brand-base, #6b5ff5);flex:1;min-width:0}.edit-text{font-family:Brockmann,sans-serif;font-size:var(--font-size-sm);font-weight:500;line-height:18px;color:var(--color-brand-base, #6b5ff5)}.cancel-edit{background:none;border:none;padding:4px;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--color-brand-base, #6b5ff5);border-radius:4px;transition:background .2s ease;flex-shrink:0}.cancel-edit:active{background:var(--color-brand-subtle, #e0dbfe)}.reply-indicator{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;background:var(--color-background-neutral-secondary, #f5f5f5);border-radius:8px;animation:slideDown .2s ease-out}.reply-indicator-content{display:flex;align-items:center;gap:4px;color:var(--color-text-secondary, #737373);flex:1;min-width:0}.reply-to-text{font-family:Brockmann,sans-serif;font-size:var(--font-size-sm);line-height:18px;color:var(--color-text-secondary, #737373);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.reply-author{color:var(--color-brand-base, #6b5ff5);font-weight:600}.cancel-reply{background:none;border:none;padding:4px;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--color-text-secondary, #737373);border-radius:4px;transition:background .2s ease;flex-shrink:0}.cancel-reply:active{background:var(--color-background-neutral-secondary, #f5f5f5)}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.composer-content{display:flex;align-items:flex-start;gap:12px;width:100%;position:relative}.composer-content ds-avatar{position:relative;top:6px}.composer-input-wrapper{flex:1;display:flex;align-items:flex-start;gap:8px;background:var(--color-background-neutral-secondary, #f5f5f5);border-radius:24px;padding:12px 48px 12px 16px;min-height:44px;position:relative}.mention-menu{position:absolute;bottom:100%;left:0;right:0;background:var(--color-background-neutral-primary, #ffffff);border-radius:12px;box-shadow:0 4px 12px #00000026;margin-bottom:8px;max-height:200px;overflow-y:auto;z-index:10;animation:slideUp .2s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.mention-menu-item{display:flex;align-items:center;gap:12px;padding:12px;border:none;background:none;width:100%;text-align:left;cursor:pointer;transition:background .2s ease;border-bottom:1px solid var(--border-color-default)}.mention-menu-item:last-child{border-bottom:none}.mention-menu-item:active{background:var(--color-background-neutral-secondary, #f5f5f5)}.mention-user-info{display:flex;align-items:center;gap:8px;flex:1;min-width:0}.mention-user-name{font-family:Brockmann,sans-serif;font-size:var(--font-size-base);font-weight:600;line-height:20px;color:var(--color-text-primary, #1a1a1a)}.mention-user-role{font-family:Brockmann,sans-serif;font-size:var(--font-size-sm);line-height:18px;color:var(--color-text-secondary, #737373)}.composer-input{flex:1;border:none;background:transparent;font-family:Brockmann,sans-serif;font-size:var(--font-size-sm);line-height:20px;color:var(--color-text-primary, #1a1a1a);outline:none;resize:none;min-height:20px;max-height:120px;overflow-y:auto;overflow-x:hidden;padding:0;margin:0}.composer-input::-moz-placeholder{color:var(--color-text-tertiary, #a0a0a0);font-size:var(--font-size-sm)}.composer-input::placeholder{color:var(--color-text-tertiary, #a0a0a0);font-size:var(--font-size-sm)}.send-button-fixed{position:absolute;top:6px;right:6px;z-index:10;flex-shrink:0;opacity:0;transform:translate(20px) scale(.8);pointer-events:none;transition:opacity .15s ease-in,transform .15s ease-in}.send-button-fixed.show{opacity:1;transform:translate(0) scale(1);pointer-events:auto;animation:slideInFromRight var(--spring-bouncy)}@media (prefers-reduced-motion: no-preference){.send-button-fixed{transition:opacity .15s ease-in,transform .15s ease-in}}.send-button-fixed::ng-deep button{width:32px!important;height:32px!important;min-width:32px!important;min-height:32px!important;padding:0!important;border-radius:50%!important}@keyframes slideInFromRight{0%{opacity:0;transform:translate(20px) scale(.8)}to{opacity:1;transform:translate(0) scale(1)}}\n"] }]
|
|
11485
11417
|
}], ctorParameters: () => [{ type: DsMobileLightboxService }, { type: DsMobileBottomSheetService }], propDecorators: { postData: [{
|
|
11486
11418
|
type: Input
|
|
11487
11419
|
}], currentUserName: [{
|
|
@@ -13002,7 +12934,7 @@ class DsMobileChatModalComponent {
|
|
|
13002
12934
|
</ds-mobile-message-composer>
|
|
13003
12935
|
</div>
|
|
13004
12936
|
</ds-mobile-modal-base>
|
|
13005
|
-
`, isInline: true, styles: [".author-details{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.author-name{font-family:Brockmann,sans-serif;font-size:var(--font-size-sm);font-weight:600;line-height:20px;letter-spacing:-.3px;color:var(--color-text-primary, #1a1a1a);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.author-meta{font-family:Brockmann,sans-serif;font-size:var(--font-size-xs);font-weight:400;line-height:1.2;letter-spacing:-.26px;color:var(--color-text-tertiary, #737373);display:flex;align-items:center;gap:6px}.author-meta .separator{color:var(--color-text-tertiary, #a0a0a0)}.lightbox-context .author-name,.overlay-context .author-name{color:#fffffff2}.lightbox-context .author-meta,.overlay-context .author-meta{color:#ffffffb3}.lightbox-context .author-meta .separator,.overlay-context .author-meta .separator{color:#ffffff80}.section-headline{font-size:var(--font-size-
|
|
12937
|
+
`, isInline: true, styles: [".author-details{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.author-name{font-family:Brockmann,sans-serif;font-size:var(--font-size-sm);font-weight:600;line-height:20px;letter-spacing:-.3px;color:var(--color-text-primary, #1a1a1a);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.author-meta{font-family:Brockmann,sans-serif;font-size:var(--font-size-xs);font-weight:400;line-height:1.2;letter-spacing:-.26px;color:var(--color-text-tertiary, #737373);display:flex;align-items:center;gap:6px}.author-meta .separator{color:var(--color-text-tertiary, #a0a0a0)}.lightbox-context .author-name,.overlay-context .author-name{color:#fffffff2}.lightbox-context .author-meta,.overlay-context .author-meta{color:#ffffffb3}.lightbox-context .author-meta .separator,.overlay-context .author-meta .separator{color:#ffffff80}.section-headline{font-size:var(--font-size-base);font-weight:600;color:var(--text-color-default-primary);padding:16px 0;margin:0;letter-spacing:-.2px;display:flex;align-items:center;gap:6px}.empty-state-title{font-family:Brockmann,sans-serif;font-size:var(--font-size-base);font-weight:600;line-height:1.3;color:var(--text-color-default-primary, #202227);margin:0 0 8px}.empty-state-description{font-family:Brockmann,sans-serif;font-size:var(--font-size-sm);font-weight:400;line-height:1.4;color:var(--text-color-default-secondary, #545B66);margin:0}.ghost-input-clean ::ng-deep .ds-input,.ghost-input-clean ::ng-deep .ds-textarea,.ghost-input-clean ::ng-deep .textarea-container{outline:none!important;border:none!important}.ghost-input-clean ::ng-deep .ds-input:hover,.ghost-input-clean ::ng-deep .ds-textarea:hover,.ghost-input-clean ::ng-deep .textarea-container:hover,.ghost-input-clean ::ng-deep .ds-input:focus,.ghost-input-clean ::ng-deep .ds-textarea:focus,.ghost-input-clean ::ng-deep .textarea-container:focus,.ghost-input-clean ::ng-deep .ds-input:focus-within,.ghost-input-clean ::ng-deep .ds-textarea:focus-within,.ghost-input-clean ::ng-deep .textarea-container:focus-within{outline:none!important;border:none!important;box-shadow:none!important}.ghost-input-clean ::ng-deep textarea{outline:none!important;border:none!important;box-shadow:none!important;resize:none!important}.ghost-input-clean ::ng-deep textarea:hover,.ghost-input-clean ::ng-deep textarea:focus{outline:none!important;border:none!important;box-shadow:none!important}\n", ":host ::ng-deep .modal-content-container{padding-top:0}.chat-messages-container{display:flex;flex-direction:column;width:100%}.chat-avatar-section{display:flex;flex-direction:column;align-items:center;gap:12px;padding:48px 20px 0;background:var(--color-background-neutral-primary, #ffffff)}.chat-avatar-info{display:flex;flex-direction:column;align-items:center;gap:4px}.chat-avatar-name{display:flex;align-items:center;gap:6px;font-family:Brockmann,sans-serif;font-size:var(--font-size-base);font-weight:600;line-height:1.3;color:var(--color-text-primary, #1a1a1a)}.chat-avatar-role{font-family:Brockmann,sans-serif;font-size:var(--font-size-xs);font-weight:400;line-height:1.2;color:var(--color-text-secondary, #666666)}.chat-avatar-meta{font-family:Brockmann,sans-serif;font-size:var(--font-size-xs);font-weight:400;line-height:1.2;color:var(--color-text-tertiary, #737373);display:flex;align-items:center;gap:4px}.messages-list{display:flex;flex-direction:column;width:100%;padding:16px 20px 0;align-items:stretch}.messages-list ds-mobile-message-bubble{width:100%;display:flex}.timestamp-header{display:flex;justify-content:center;margin:16px 0 8px}.timestamp-text{font-family:Brockmann,sans-serif;font-size:12px;font-weight:400;color:var(--color-text-secondary);padding:4px 12px}.message-file-attachments{display:flex;flex-direction:column;gap:8px;margin-bottom:12px;padding:0 20px 0 60px;max-width:100%}.message-file-attachments.own-message{padding:0 0 0 96px;align-items:flex-end}.message-file-attachments ds-mobile-card-inline-file{max-width:280px;width:100%}.message-image-attachment{width:96px;height:96px;cursor:pointer;border-radius:12px;overflow:hidden;position:relative;transition:transform .2s ease;border:1px solid var(--border-color-default, #e5e5e5)}.message-image-attachment:active{transform:scale(.98)}.message-image-attachment .inline-image{width:100%;height:100%;display:block;-o-object-fit:cover;object-fit:cover}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "component", type: DsAvatarWithBadgeComponent, selector: "ds-avatar-with-badge", inputs: ["type", "size", "initials", "src", "iconName", "showBadge", "badgePosition"] }, { kind: "component", type: DsMobileMessageComposerComponent, selector: "ds-mobile-message-composer", inputs: ["avatarInitials", "avatarType", "avatarSrc", "placeholder", "sendButtonLabel", "attachmentButtonLabel", "showAttachmentButton", "editIndicatorText", "replyIndicatorText", "enableMentions", "mentionUsers", "autoFocus"], outputs: ["messageSent", "editCancelled", "replyCancelled", "mentionSelected", "attachmentClicked", "attachmentsChanged"] }, { kind: "component", type: DsMobileMessageBubbleComponent, selector: "ds-mobile-message-bubble", inputs: ["content", "isOwnMessage", "senderName", "timestamp", "showTimestamp", "avatarInitials", "avatarType", "avatarSrc", "showAvatar", "clusterPosition", "attachments", "clickable", "isNewMessage"], outputs: ["attachmentClick", "longPress", "messageClick"] }, { kind: "component", type: DsMobileModalBaseComponent, selector: "ds-mobile-modal-base", inputs: ["showHeader"] }, { kind: "component", type: DsMobileCardInlineFileComponent, selector: "ds-mobile-card-inline-file", inputs: ["fileName", "fileSize", "variant", "layout", "fileUrl"], outputs: ["fileClick"] }, { kind: "component", type: DsMobileSystemMessageBannerComponent, selector: "ds-mobile-system-message-banner", inputs: ["message", "iconName", "afterTimestamp"] }, { kind: "component", type: DsIconComponent, selector: "ds-icon", inputs: ["name", "size", "color", "interactive"] }] });
|
|
13006
12938
|
}
|
|
13007
12939
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: DsMobileChatModalComponent, decorators: [{
|
|
13008
12940
|
type: Component,
|
|
@@ -13172,7 +13104,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
|
|
|
13172
13104
|
</ds-mobile-message-composer>
|
|
13173
13105
|
</div>
|
|
13174
13106
|
</ds-mobile-modal-base>
|
|
13175
|
-
`, styles: [".author-details{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.author-name{font-family:Brockmann,sans-serif;font-size:var(--font-size-sm);font-weight:600;line-height:20px;letter-spacing:-.3px;color:var(--color-text-primary, #1a1a1a);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.author-meta{font-family:Brockmann,sans-serif;font-size:var(--font-size-xs);font-weight:400;line-height:1.2;letter-spacing:-.26px;color:var(--color-text-tertiary, #737373);display:flex;align-items:center;gap:6px}.author-meta .separator{color:var(--color-text-tertiary, #a0a0a0)}.lightbox-context .author-name,.overlay-context .author-name{color:#fffffff2}.lightbox-context .author-meta,.overlay-context .author-meta{color:#ffffffb3}.lightbox-context .author-meta .separator,.overlay-context .author-meta .separator{color:#ffffff80}.section-headline{font-size:var(--font-size-
|
|
13107
|
+
`, styles: [".author-details{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.author-name{font-family:Brockmann,sans-serif;font-size:var(--font-size-sm);font-weight:600;line-height:20px;letter-spacing:-.3px;color:var(--color-text-primary, #1a1a1a);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.author-meta{font-family:Brockmann,sans-serif;font-size:var(--font-size-xs);font-weight:400;line-height:1.2;letter-spacing:-.26px;color:var(--color-text-tertiary, #737373);display:flex;align-items:center;gap:6px}.author-meta .separator{color:var(--color-text-tertiary, #a0a0a0)}.lightbox-context .author-name,.overlay-context .author-name{color:#fffffff2}.lightbox-context .author-meta,.overlay-context .author-meta{color:#ffffffb3}.lightbox-context .author-meta .separator,.overlay-context .author-meta .separator{color:#ffffff80}.section-headline{font-size:var(--font-size-base);font-weight:600;color:var(--text-color-default-primary);padding:16px 0;margin:0;letter-spacing:-.2px;display:flex;align-items:center;gap:6px}.empty-state-title{font-family:Brockmann,sans-serif;font-size:var(--font-size-base);font-weight:600;line-height:1.3;color:var(--text-color-default-primary, #202227);margin:0 0 8px}.empty-state-description{font-family:Brockmann,sans-serif;font-size:var(--font-size-sm);font-weight:400;line-height:1.4;color:var(--text-color-default-secondary, #545B66);margin:0}.ghost-input-clean ::ng-deep .ds-input,.ghost-input-clean ::ng-deep .ds-textarea,.ghost-input-clean ::ng-deep .textarea-container{outline:none!important;border:none!important}.ghost-input-clean ::ng-deep .ds-input:hover,.ghost-input-clean ::ng-deep .ds-textarea:hover,.ghost-input-clean ::ng-deep .textarea-container:hover,.ghost-input-clean ::ng-deep .ds-input:focus,.ghost-input-clean ::ng-deep .ds-textarea:focus,.ghost-input-clean ::ng-deep .textarea-container:focus,.ghost-input-clean ::ng-deep .ds-input:focus-within,.ghost-input-clean ::ng-deep .ds-textarea:focus-within,.ghost-input-clean ::ng-deep .textarea-container:focus-within{outline:none!important;border:none!important;box-shadow:none!important}.ghost-input-clean ::ng-deep textarea{outline:none!important;border:none!important;box-shadow:none!important;resize:none!important}.ghost-input-clean ::ng-deep textarea:hover,.ghost-input-clean ::ng-deep textarea:focus{outline:none!important;border:none!important;box-shadow:none!important}\n", ":host ::ng-deep .modal-content-container{padding-top:0}.chat-messages-container{display:flex;flex-direction:column;width:100%}.chat-avatar-section{display:flex;flex-direction:column;align-items:center;gap:12px;padding:48px 20px 0;background:var(--color-background-neutral-primary, #ffffff)}.chat-avatar-info{display:flex;flex-direction:column;align-items:center;gap:4px}.chat-avatar-name{display:flex;align-items:center;gap:6px;font-family:Brockmann,sans-serif;font-size:var(--font-size-base);font-weight:600;line-height:1.3;color:var(--color-text-primary, #1a1a1a)}.chat-avatar-role{font-family:Brockmann,sans-serif;font-size:var(--font-size-xs);font-weight:400;line-height:1.2;color:var(--color-text-secondary, #666666)}.chat-avatar-meta{font-family:Brockmann,sans-serif;font-size:var(--font-size-xs);font-weight:400;line-height:1.2;color:var(--color-text-tertiary, #737373);display:flex;align-items:center;gap:4px}.messages-list{display:flex;flex-direction:column;width:100%;padding:16px 20px 0;align-items:stretch}.messages-list ds-mobile-message-bubble{width:100%;display:flex}.timestamp-header{display:flex;justify-content:center;margin:16px 0 8px}.timestamp-text{font-family:Brockmann,sans-serif;font-size:12px;font-weight:400;color:var(--color-text-secondary);padding:4px 12px}.message-file-attachments{display:flex;flex-direction:column;gap:8px;margin-bottom:12px;padding:0 20px 0 60px;max-width:100%}.message-file-attachments.own-message{padding:0 0 0 96px;align-items:flex-end}.message-file-attachments ds-mobile-card-inline-file{max-width:280px;width:100%}.message-image-attachment{width:96px;height:96px;cursor:pointer;border-radius:12px;overflow:hidden;position:relative;transition:transform .2s ease;border:1px solid var(--border-color-default, #e5e5e5)}.message-image-attachment:active{transform:scale(.98)}.message-image-attachment .inline-image{width:100%;height:100%;display:block;-o-object-fit:cover;object-fit:cover}\n"] }]
|
|
13176
13108
|
}], ctorParameters: () => [{ type: DsMobileLightboxService }], propDecorators: { chatData: [{
|
|
13177
13109
|
type: Input
|
|
13178
13110
|
}], loading: [{
|
|
@@ -13623,7 +13555,7 @@ class DsMobileNewInquiryModalComponent {
|
|
|
13623
13555
|
</div>
|
|
13624
13556
|
</div>
|
|
13625
13557
|
</ds-mobile-modal-base>
|
|
13626
|
-
`, isInline: true, styles: [".author-details{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.author-name{font-family:Brockmann,sans-serif;font-size:var(--font-size-sm);font-weight:600;line-height:20px;letter-spacing:-.3px;color:var(--color-text-primary, #1a1a1a);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.author-meta{font-family:Brockmann,sans-serif;font-size:var(--font-size-xs);font-weight:400;line-height:1.2;letter-spacing:-.26px;color:var(--color-text-tertiary, #737373);display:flex;align-items:center;gap:6px}.author-meta .separator{color:var(--color-text-tertiary, #a0a0a0)}.lightbox-context .author-name,.overlay-context .author-name{color:#fffffff2}.lightbox-context .author-meta,.overlay-context .author-meta{color:#ffffffb3}.lightbox-context .author-meta .separator,.overlay-context .author-meta .separator{color:#ffffff80}.section-headline{font-size:var(--font-size-
|
|
13558
|
+
`, isInline: true, styles: [".author-details{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.author-name{font-family:Brockmann,sans-serif;font-size:var(--font-size-sm);font-weight:600;line-height:20px;letter-spacing:-.3px;color:var(--color-text-primary, #1a1a1a);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.author-meta{font-family:Brockmann,sans-serif;font-size:var(--font-size-xs);font-weight:400;line-height:1.2;letter-spacing:-.26px;color:var(--color-text-tertiary, #737373);display:flex;align-items:center;gap:6px}.author-meta .separator{color:var(--color-text-tertiary, #a0a0a0)}.lightbox-context .author-name,.overlay-context .author-name{color:#fffffff2}.lightbox-context .author-meta,.overlay-context .author-meta{color:#ffffffb3}.lightbox-context .author-meta .separator,.overlay-context .author-meta .separator{color:#ffffff80}.section-headline{font-size:var(--font-size-base);font-weight:600;color:var(--text-color-default-primary);padding:16px 0;margin:0;letter-spacing:-.2px;display:flex;align-items:center;gap:6px}.empty-state-title{font-family:Brockmann,sans-serif;font-size:var(--font-size-base);font-weight:600;line-height:1.3;color:var(--text-color-default-primary, #202227);margin:0 0 8px}.empty-state-description{font-family:Brockmann,sans-serif;font-size:var(--font-size-sm);font-weight:400;line-height:1.4;color:var(--text-color-default-secondary, #545B66);margin:0}.ghost-input-clean ::ng-deep .ds-input,.ghost-input-clean ::ng-deep .ds-textarea,.ghost-input-clean ::ng-deep .textarea-container{outline:none!important;border:none!important}.ghost-input-clean ::ng-deep .ds-input:hover,.ghost-input-clean ::ng-deep .ds-textarea:hover,.ghost-input-clean ::ng-deep .textarea-container:hover,.ghost-input-clean ::ng-deep .ds-input:focus,.ghost-input-clean ::ng-deep .ds-textarea:focus,.ghost-input-clean ::ng-deep .textarea-container:focus,.ghost-input-clean ::ng-deep .ds-input:focus-within,.ghost-input-clean ::ng-deep .ds-textarea:focus-within,.ghost-input-clean ::ng-deep .textarea-container:focus-within{outline:none!important;border:none!important;box-shadow:none!important}.ghost-input-clean ::ng-deep textarea{outline:none!important;border:none!important;box-shadow:none!important;resize:none!important}.ghost-input-clean ::ng-deep textarea:hover,.ghost-input-clean ::ng-deep textarea:focus{outline:none!important;border:none!important;box-shadow:none!important}\n", ".inquiry-form{display:flex;flex-direction:column;gap:8px;padding:8px;flex:1;min-height:0}.inquiry-title-input{flex:0 0 auto}.inquiry-title-input ::ng-deep .textarea-container{flex:0 0 auto}.inquiry-title-input ::ng-deep textarea{font-size:var(--font-size-2xl);font-weight:400;line-height:1.2;max-height:200px;overflow-y:auto;resize:none;box-sizing:border-box}.fixed-bottom-container{background:var(--color-background-neutral-primary);border-top:1px solid var(--border-color-default)}.attachment-previews-section{padding:16px 20px;border-bottom:1px solid var(--border-color-default)}.image-previews{display:flex;flex-wrap:wrap;gap:8px}.submit-container{padding:16px 20px}.submit-content{display:flex;align-items:center;justify-content:space-between;gap:16px}.upload-actions{display:flex;align-items:center;gap:8px}.upload-actions ds-icon-button::ng-deep button{width:44px;height:44px;border-radius:50%}.submit-content ds-button::ng-deep button{border-radius:100px}.inquiry-form ds-textarea:not(.inquiry-title-input){display:flex;flex:1;min-height:0}.inquiry-form ds-textarea:not(.inquiry-title-input) ::ng-deep .textarea-container{display:flex;flex:1;min-height:0}.inquiry-form ds-textarea:not(.inquiry-title-input) ::ng-deep textarea{flex:1;min-height:200px;resize:none}@media (min-width: 768px){.inquiry-form{padding:24px 32px}.submit-container{padding:20px 32px}}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { 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: DsTextareaComponent, selector: "ds-textarea", inputs: ["variant", "placeholder", "disabled", "readonly", "required", "ghost", "rows", "cols", "maxlength", "minlength", "ariaLabel", "ariaDescribedBy", "ariaLabelledBy"], outputs: ["valueChange", "focused", "blurred"] }, { kind: "component", type: DsIconButtonComponent, selector: "ds-icon-button", inputs: ["variant", "size", "icon", "disabled", "loading", "pressed", "expanded", "ariaLabel", "tooltip", "tooltipDisabled", "tooltipPlacement"], outputs: ["clicked", "focused", "blurred"] }, { kind: "component", type: DsMobileModalBaseComponent, selector: "ds-mobile-modal-base", inputs: ["showHeader"] }, { kind: "component", type: DsMobileAttachmentPreviewComponent, selector: "ds-mobile-attachment-preview", inputs: ["attachment"], outputs: ["remove"] }] });
|
|
13627
13559
|
}
|
|
13628
13560
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: DsMobileNewInquiryModalComponent, decorators: [{
|
|
13629
13561
|
type: Component,
|
|
@@ -13731,7 +13663,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
|
|
|
13731
13663
|
</div>
|
|
13732
13664
|
</div>
|
|
13733
13665
|
</ds-mobile-modal-base>
|
|
13734
|
-
`, styles: [".author-details{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.author-name{font-family:Brockmann,sans-serif;font-size:var(--font-size-sm);font-weight:600;line-height:20px;letter-spacing:-.3px;color:var(--color-text-primary, #1a1a1a);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.author-meta{font-family:Brockmann,sans-serif;font-size:var(--font-size-xs);font-weight:400;line-height:1.2;letter-spacing:-.26px;color:var(--color-text-tertiary, #737373);display:flex;align-items:center;gap:6px}.author-meta .separator{color:var(--color-text-tertiary, #a0a0a0)}.lightbox-context .author-name,.overlay-context .author-name{color:#fffffff2}.lightbox-context .author-meta,.overlay-context .author-meta{color:#ffffffb3}.lightbox-context .author-meta .separator,.overlay-context .author-meta .separator{color:#ffffff80}.section-headline{font-size:var(--font-size-
|
|
13666
|
+
`, styles: [".author-details{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.author-name{font-family:Brockmann,sans-serif;font-size:var(--font-size-sm);font-weight:600;line-height:20px;letter-spacing:-.3px;color:var(--color-text-primary, #1a1a1a);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.author-meta{font-family:Brockmann,sans-serif;font-size:var(--font-size-xs);font-weight:400;line-height:1.2;letter-spacing:-.26px;color:var(--color-text-tertiary, #737373);display:flex;align-items:center;gap:6px}.author-meta .separator{color:var(--color-text-tertiary, #a0a0a0)}.lightbox-context .author-name,.overlay-context .author-name{color:#fffffff2}.lightbox-context .author-meta,.overlay-context .author-meta{color:#ffffffb3}.lightbox-context .author-meta .separator,.overlay-context .author-meta .separator{color:#ffffff80}.section-headline{font-size:var(--font-size-base);font-weight:600;color:var(--text-color-default-primary);padding:16px 0;margin:0;letter-spacing:-.2px;display:flex;align-items:center;gap:6px}.empty-state-title{font-family:Brockmann,sans-serif;font-size:var(--font-size-base);font-weight:600;line-height:1.3;color:var(--text-color-default-primary, #202227);margin:0 0 8px}.empty-state-description{font-family:Brockmann,sans-serif;font-size:var(--font-size-sm);font-weight:400;line-height:1.4;color:var(--text-color-default-secondary, #545B66);margin:0}.ghost-input-clean ::ng-deep .ds-input,.ghost-input-clean ::ng-deep .ds-textarea,.ghost-input-clean ::ng-deep .textarea-container{outline:none!important;border:none!important}.ghost-input-clean ::ng-deep .ds-input:hover,.ghost-input-clean ::ng-deep .ds-textarea:hover,.ghost-input-clean ::ng-deep .textarea-container:hover,.ghost-input-clean ::ng-deep .ds-input:focus,.ghost-input-clean ::ng-deep .ds-textarea:focus,.ghost-input-clean ::ng-deep .textarea-container:focus,.ghost-input-clean ::ng-deep .ds-input:focus-within,.ghost-input-clean ::ng-deep .ds-textarea:focus-within,.ghost-input-clean ::ng-deep .textarea-container:focus-within{outline:none!important;border:none!important;box-shadow:none!important}.ghost-input-clean ::ng-deep textarea{outline:none!important;border:none!important;box-shadow:none!important;resize:none!important}.ghost-input-clean ::ng-deep textarea:hover,.ghost-input-clean ::ng-deep textarea:focus{outline:none!important;border:none!important;box-shadow:none!important}\n", ".inquiry-form{display:flex;flex-direction:column;gap:8px;padding:8px;flex:1;min-height:0}.inquiry-title-input{flex:0 0 auto}.inquiry-title-input ::ng-deep .textarea-container{flex:0 0 auto}.inquiry-title-input ::ng-deep textarea{font-size:var(--font-size-2xl);font-weight:400;line-height:1.2;max-height:200px;overflow-y:auto;resize:none;box-sizing:border-box}.fixed-bottom-container{background:var(--color-background-neutral-primary);border-top:1px solid var(--border-color-default)}.attachment-previews-section{padding:16px 20px;border-bottom:1px solid var(--border-color-default)}.image-previews{display:flex;flex-wrap:wrap;gap:8px}.submit-container{padding:16px 20px}.submit-content{display:flex;align-items:center;justify-content:space-between;gap:16px}.upload-actions{display:flex;align-items:center;gap:8px}.upload-actions ds-icon-button::ng-deep button{width:44px;height:44px;border-radius:50%}.submit-content ds-button::ng-deep button{border-radius:100px}.inquiry-form ds-textarea:not(.inquiry-title-input){display:flex;flex:1;min-height:0}.inquiry-form ds-textarea:not(.inquiry-title-input) ::ng-deep .textarea-container{display:flex;flex:1;min-height:0}.inquiry-form ds-textarea:not(.inquiry-title-input) ::ng-deep textarea{flex:1;min-height:200px;resize:none}@media (min-width: 768px){.inquiry-form{padding:24px 32px}.submit-container{padding:20px 32px}}\n"] }]
|
|
13735
13667
|
}], propDecorators: { titleInputRef: [{
|
|
13736
13668
|
type: ViewChild,
|
|
13737
13669
|
args: ['titleInput', { read: ElementRef }]
|
|
@@ -13954,6 +13886,10 @@ class DsMobileSwiperComponent {
|
|
|
13954
13886
|
* Gap between slides in pixels
|
|
13955
13887
|
*/
|
|
13956
13888
|
gap = input(16, ...(ngDevMode ? [{ debugName: "gap" }] : []));
|
|
13889
|
+
/**
|
|
13890
|
+
* Enable pagination dots
|
|
13891
|
+
*/
|
|
13892
|
+
pagination = input(false, ...(ngDevMode ? [{ debugName: "pagination" }] : []));
|
|
13957
13893
|
swiperContainer;
|
|
13958
13894
|
swiperInstance = null;
|
|
13959
13895
|
ngAfterViewInit() {
|
|
@@ -13969,7 +13905,7 @@ class DsMobileSwiperComponent {
|
|
|
13969
13905
|
slides.forEach((slide) => {
|
|
13970
13906
|
slide.style.width = this.slideWidth();
|
|
13971
13907
|
});
|
|
13972
|
-
|
|
13908
|
+
const config = {
|
|
13973
13909
|
slidesPerView: 'auto',
|
|
13974
13910
|
spaceBetween: this.gap(),
|
|
13975
13911
|
centeredSlides: true,
|
|
@@ -13977,7 +13913,17 @@ class DsMobileSwiperComponent {
|
|
|
13977
13913
|
speed: 300,
|
|
13978
13914
|
resistance: true,
|
|
13979
13915
|
resistanceRatio: 0.85,
|
|
13980
|
-
}
|
|
13916
|
+
};
|
|
13917
|
+
// Add pagination if enabled
|
|
13918
|
+
if (this.pagination()) {
|
|
13919
|
+
config.modules = [Pagination];
|
|
13920
|
+
config.pagination = {
|
|
13921
|
+
el: '.swiper-pagination',
|
|
13922
|
+
clickable: true,
|
|
13923
|
+
dynamicBullets: false,
|
|
13924
|
+
};
|
|
13925
|
+
}
|
|
13926
|
+
this.swiperInstance = new Swiper(this.swiperContainer.nativeElement, config);
|
|
13981
13927
|
}
|
|
13982
13928
|
ngOnDestroy() {
|
|
13983
13929
|
if (this.swiperInstance) {
|
|
@@ -13986,13 +13932,16 @@ class DsMobileSwiperComponent {
|
|
|
13986
13932
|
}
|
|
13987
13933
|
}
|
|
13988
13934
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: DsMobileSwiperComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
13989
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.
|
|
13935
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.15", type: DsMobileSwiperComponent, isStandalone: true, selector: "ds-mobile-swiper", inputs: { slideWidth: { classPropertyName: "slideWidth", publicName: "slideWidth", isSignal: true, isRequired: false, transformFunction: null }, gap: { classPropertyName: "gap", publicName: "gap", isSignal: true, isRequired: false, transformFunction: null }, pagination: { classPropertyName: "pagination", publicName: "pagination", isSignal: true, isRequired: false, transformFunction: null } }, viewQueries: [{ propertyName: "swiperContainer", first: true, predicate: ["swiperContainer"], descendants: true }], ngImport: i0, template: `
|
|
13990
13936
|
<div class="swiper-container" #swiperContainer>
|
|
13991
13937
|
<div class="swiper-wrapper">
|
|
13992
13938
|
<ng-content></ng-content>
|
|
13993
13939
|
</div>
|
|
13940
|
+
@if (pagination()) {
|
|
13941
|
+
<div class="swiper-pagination"></div>
|
|
13942
|
+
}
|
|
13994
13943
|
</div>
|
|
13995
|
-
`, isInline: true, styles: [":host{display:block;width:100%}.swiper-container{width:100%;position:relative;overflow:
|
|
13944
|
+
`, isInline: true, styles: [":host{display:block;width:100%}.swiper-container{width:100%;position:relative;overflow:visible}.swiper-wrapper{display:flex;transition-property:transform;box-sizing:content-box}:host ::ng-deep .swiper-slide{flex-shrink:0;height:100%;position:relative;display:flex;align-items:center;justify-content:center}.swiper-pagination{position:relative;text-align:center;display:flex;justify-content:center;margin-top:20px;margin-bottom:-16px}:host ::ng-deep .swiper-pagination-bullet{width:6px;height:6px;border-radius:50%;background:var(--color-primary-surface);opacity:.25;transition:all .3s ease;cursor:pointer}:host ::ng-deep .swiper-pagination-bullet-active{opacity:1;background:var(--color-primary-surface);width:20px;border-radius:3px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }] });
|
|
13996
13945
|
}
|
|
13997
13946
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: DsMobileSwiperComponent, decorators: [{
|
|
13998
13947
|
type: Component,
|
|
@@ -14001,9 +13950,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
|
|
|
14001
13950
|
<div class="swiper-wrapper">
|
|
14002
13951
|
<ng-content></ng-content>
|
|
14003
13952
|
</div>
|
|
13953
|
+
@if (pagination()) {
|
|
13954
|
+
<div class="swiper-pagination"></div>
|
|
13955
|
+
}
|
|
14004
13956
|
</div>
|
|
14005
|
-
`, styles: [":host{display:block;width:100%}.swiper-container{width:100%;position:relative;overflow:
|
|
14006
|
-
}], propDecorators: { slideWidth: [{ type: i0.Input, args: [{ isSignal: true, alias: "slideWidth", required: false }] }], gap: [{ type: i0.Input, args: [{ isSignal: true, alias: "gap", required: false }] }], swiperContainer: [{
|
|
13957
|
+
`, styles: [":host{display:block;width:100%}.swiper-container{width:100%;position:relative;overflow:visible}.swiper-wrapper{display:flex;transition-property:transform;box-sizing:content-box}:host ::ng-deep .swiper-slide{flex-shrink:0;height:100%;position:relative;display:flex;align-items:center;justify-content:center}.swiper-pagination{position:relative;text-align:center;display:flex;justify-content:center;margin-top:20px;margin-bottom:-16px}:host ::ng-deep .swiper-pagination-bullet{width:6px;height:6px;border-radius:50%;background:var(--color-primary-surface);opacity:.25;transition:all .3s ease;cursor:pointer}:host ::ng-deep .swiper-pagination-bullet-active{opacity:1;background:var(--color-primary-surface);width:20px;border-radius:3px}\n"] }]
|
|
13958
|
+
}], propDecorators: { slideWidth: [{ type: i0.Input, args: [{ isSignal: true, alias: "slideWidth", required: false }] }], gap: [{ type: i0.Input, args: [{ isSignal: true, alias: "gap", required: false }] }], pagination: [{ type: i0.Input, args: [{ isSignal: true, alias: "pagination", required: false }] }], swiperContainer: [{
|
|
14007
13959
|
type: ViewChild,
|
|
14008
13960
|
args: ['swiperContainer', { static: false }]
|
|
14009
13961
|
}] } });
|
|
@@ -14199,7 +14151,7 @@ class DsMobileHandbookDetailModalComponent {
|
|
|
14199
14151
|
}
|
|
14200
14152
|
</div>
|
|
14201
14153
|
</ds-mobile-modal-base>
|
|
14202
|
-
`, 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:24px 20px;border-bottom:1px solid var(--border-color-default)}.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:20px;color:var(--color-text-primary, #1a1a1a);margin:0}.item-image{width:100%;max-width:100%;height:280px;-o-object-fit:cover;object-fit:cover;border-radius:12px;display:block}.contacts-list,.attachments-list{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", "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", "contactPerson", "phoneNumber", "layout", "clickable", "showChevron"], outputs: ["contactClick"] }, { kind: "component", type: DsMobileSwiperComponent, selector: "ds-mobile-swiper", inputs: ["slideWidth", "gap"] }, { kind: "component", type: DsMobileModalBaseComponent, selector: "ds-mobile-modal-base", inputs: ["showHeader"] }] });
|
|
14154
|
+
`, 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:24px 20px;border-bottom:1px solid var(--border-color-default)}.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:20px;color:var(--color-text-primary, #1a1a1a);margin:0}.item-image{width:100%;max-width:100%;height:280px;-o-object-fit:cover;object-fit:cover;border-radius:12px;display:block}.contacts-list,.attachments-list{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", "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", "contactPerson", "phoneNumber", "layout", "clickable", "showChevron"], outputs: ["contactClick"] }, { kind: "component", type: DsMobileSwiperComponent, selector: "ds-mobile-swiper", inputs: ["slideWidth", "gap", "pagination"] }, { kind: "component", type: DsMobileModalBaseComponent, selector: "ds-mobile-modal-base", inputs: ["showHeader"] }] });
|
|
14203
14155
|
}
|
|
14204
14156
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: DsMobileHandbookDetailModalComponent, decorators: [{
|
|
14205
14157
|
type: Component,
|
|
@@ -15530,6 +15482,14 @@ class MobileCommunityPageComponent {
|
|
|
15530
15482
|
postsService;
|
|
15531
15483
|
// Get posts from service (using computed for safe initialization)
|
|
15532
15484
|
allPosts = computed(() => this.postsService.posts(), ...(ngDevMode ? [{ debugName: "allPosts" }] : []));
|
|
15485
|
+
// Get pinned posts - we'll manually create them since they're special announcements
|
|
15486
|
+
// In a real app, these would have a 'pinned' flag in the database
|
|
15487
|
+
pinnedPosts = computed(() => {
|
|
15488
|
+
// Get all posts from Ejendomsadministrator (property manager)
|
|
15489
|
+
// Only property managers can create pinned posts
|
|
15490
|
+
const allPosts = this.postsService.posts();
|
|
15491
|
+
return allPosts.filter(post => post.authorRole === 'Ejendomsadministrator');
|
|
15492
|
+
}, ...(ngDevMode ? [{ debugName: "pinnedPosts" }] : []));
|
|
15533
15493
|
// Computed to check if there are any posts to display
|
|
15534
15494
|
hasAnyPosts = computed(() => {
|
|
15535
15495
|
return this.allPosts().length > 0;
|
|
@@ -15789,43 +15749,66 @@ class MobileCommunityPageComponent {
|
|
|
15789
15749
|
<ds-mobile-content role="feed">
|
|
15790
15750
|
<div class="post-feed">
|
|
15791
15751
|
<!-- Pinned Posts Section -->
|
|
15792
|
-
<div class="
|
|
15793
|
-
<
|
|
15794
|
-
<ds-
|
|
15795
|
-
|
|
15796
|
-
|
|
15797
|
-
|
|
15798
|
-
|
|
15799
|
-
|
|
15800
|
-
[authorName]="'Karen Nielsen'"
|
|
15801
|
-
[authorRole]="'Ejendomsadministrator'"
|
|
15802
|
-
[timestamp]="'2d siden'"
|
|
15803
|
-
[avatarInitials]="'KN'"
|
|
15804
|
-
[showBadge]="true"
|
|
15805
|
-
[clickable]="true"
|
|
15806
|
-
(postClick)="openPost('post-4')"
|
|
15807
|
-
(commentClick)="openPost('post-4', true)"
|
|
15808
|
-
(longPress)="handlePostLongPress('post-4', false)">
|
|
15809
|
-
|
|
15810
|
-
<post-content>
|
|
15811
|
-
<post-text>📢 Påmindelse: Bygningsvedligeholdelse planlagt til denne lørdag fra kl. 9 til 14. Vandet vil være midlertidigt lukket. Vær venlig at planlægge derefter!</post-text>
|
|
15812
|
-
|
|
15813
|
-
<post-attachments>
|
|
15814
|
-
<ds-mobile-card-inline-file
|
|
15815
|
-
[fileName]="'Husregler.pdf'"
|
|
15816
|
-
[fileSize]="'245 KB'"
|
|
15817
|
-
[variant]="'pdf'"
|
|
15818
|
-
[layout]="'compact'"
|
|
15819
|
-
(fileClick)="openHouseRulesPdf()">
|
|
15820
|
-
</ds-mobile-card-inline-file>
|
|
15821
|
-
</post-attachments>
|
|
15822
|
-
</post-content>
|
|
15752
|
+
<div class="content-section">
|
|
15753
|
+
<ds-tile>
|
|
15754
|
+
<ds-tile-section class="header-section">
|
|
15755
|
+
<h2 class="section-headline">
|
|
15756
|
+
<ds-icon name="remixPushpinFill" size="16px" color="primary" />
|
|
15757
|
+
Fastgjorte opslag
|
|
15758
|
+
</h2>
|
|
15759
|
+
</ds-tile-section>
|
|
15823
15760
|
|
|
15824
|
-
<
|
|
15825
|
-
<
|
|
15826
|
-
|
|
15827
|
-
|
|
15828
|
-
|
|
15761
|
+
<ds-tile-section [padding]="false" class="pinned-posts-swiper-section">
|
|
15762
|
+
<div class="pinned-posts-list">
|
|
15763
|
+
<!-- Swipeable Pinned Posts -->
|
|
15764
|
+
<ds-mobile-swiper
|
|
15765
|
+
class="pinned-posts-swiper"
|
|
15766
|
+
[slideWidth]="'100%'"
|
|
15767
|
+
[gap]="20"
|
|
15768
|
+
[pagination]="true">
|
|
15769
|
+
@for (post of pinnedPosts(); track post.id) {
|
|
15770
|
+
<div class="swiper-slide">
|
|
15771
|
+
<ds-mobile-interactive-list-item-post
|
|
15772
|
+
class="swiper-post-item"
|
|
15773
|
+
[authorName]="post.authorName"
|
|
15774
|
+
[authorRole]="post.authorRole"
|
|
15775
|
+
[timestamp]="post.timestamp"
|
|
15776
|
+
[avatarInitials]="post.avatarInitials || ''"
|
|
15777
|
+
[avatarType]="post.avatarType"
|
|
15778
|
+
[avatarSrc]="post.avatarSrc || ''"
|
|
15779
|
+
[showBadge]="true"
|
|
15780
|
+
[clickable]="true"
|
|
15781
|
+
(postClick)="openPost(post.id)"
|
|
15782
|
+
(commentClick)="openPost(post.id, true)"
|
|
15783
|
+
(longPress)="handlePostLongPress(post.id, false)">
|
|
15784
|
+
|
|
15785
|
+
<post-content>
|
|
15786
|
+
<post-text>{{ post.content }}</post-text>
|
|
15787
|
+
|
|
15788
|
+
@if (post.id === 'post-4') {
|
|
15789
|
+
<post-attachments>
|
|
15790
|
+
<ds-mobile-card-inline-file
|
|
15791
|
+
[fileName]="'Husregler.pdf'"
|
|
15792
|
+
[fileSize]="'245 KB'"
|
|
15793
|
+
[variant]="'pdf'"
|
|
15794
|
+
[layout]="'compact'"
|
|
15795
|
+
(fileClick)="openHouseRulesPdf()">
|
|
15796
|
+
</ds-mobile-card-inline-file>
|
|
15797
|
+
</post-attachments>
|
|
15798
|
+
}
|
|
15799
|
+
</post-content>
|
|
15800
|
+
|
|
15801
|
+
<post-actions>
|
|
15802
|
+
<action-like [count]="post.likeCount" [active]="post.isLiked" />
|
|
15803
|
+
<action-comment [count]="post.commentCount" (commentClick)="openPost(post.id, true)" />
|
|
15804
|
+
</post-actions>
|
|
15805
|
+
</ds-mobile-interactive-list-item-post>
|
|
15806
|
+
</div>
|
|
15807
|
+
}
|
|
15808
|
+
</ds-mobile-swiper>
|
|
15809
|
+
</div>
|
|
15810
|
+
</ds-tile-section>
|
|
15811
|
+
</ds-tile>
|
|
15829
15812
|
</div>
|
|
15830
15813
|
|
|
15831
15814
|
<!-- All Posts Section -->
|
|
@@ -15978,7 +15961,7 @@ class MobileCommunityPageComponent {
|
|
|
15978
15961
|
</div>
|
|
15979
15962
|
</ds-mobile-content>
|
|
15980
15963
|
</ds-mobile-page-main>
|
|
15981
|
-
`, isInline: true, styles: [".
|
|
15964
|
+
`, isInline: true, styles: ["::ng-deep ds-tile .ds-tile{border-radius:20px!important;overflow:visible!important}::ng-deep ds-tile-section{border-bottom:none!important}::ng-deep .header-section{padding:20px 20px 8px!important}.section-headline{font-size:var(--font-size-base);font-weight:600;color:var(--text-color-default-primary);margin:0;letter-spacing:-.2px;display:flex;align-items:center;gap:6px;padding:0}.content-section{display:flex;flex-direction:column;gap:12px;margin:-8px -8px 12px}.pinned-posts-list{display:flex;flex-direction:column;padding:0 20px 16px;position:relative;z-index:1}::ng-deep .pinned-posts-swiper-section{overflow:hidden!important}::ng-deep .pinned-posts-swiper .swiper-slide{width:100%;max-width:600px;height:auto}.swiper-post-item{width:100%;height:auto}::ng-deep .pinned-posts-swiper .swiper-slide ds-mobile-interactive-list-item-post{height:auto}::ng-deep .pinned-posts-swiper .swiper-wrapper{height:auto}::ng-deep .content-section ds-tile-section{overflow:hidden}.post-feed{display:flex;flex-direction:column;gap:12px}.post-list-wrapper{display:flex;flex-direction:column}.clickable-image{cursor:pointer;transition:transform .2s ease,opacity .2s ease;border-radius:8px;display:block;width:100%;aspect-ratio:16/9;object-fit:cover}.clickable-image:active{transform:scale(.98);opacity:.9}.community-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;margin-bottom:24px}ion-infinite-scroll{--color: var(--color-primary-surface)}ion-infinite-scroll-content{--color: var(--color-primary-surface)}ion-infinite-scroll-content::part(spinner){color:var(--color-primary-surface)}\n"], dependencies: [{ kind: "component", type: DsMobilePageMainComponent, selector: "ds-mobile-page-main", inputs: ["title", "headerTitle", "headerSubtitle", "avatarType", "avatarInitials", "avatarSrc", "avatarIconName", "showRefresh", "showCondensedHeader", "scrollThreshold", "headerFadeDistance", "profileMenuItems"], outputs: ["avatarClick", "profileActionSelected", "refresh", "scroll"] }, { kind: "component", type: DsMobileContentComponent, selector: "ds-mobile-content", inputs: ["layout"] }, { kind: "component", type: DsMobileInteractiveListItemPostComponent, selector: "ds-mobile-interactive-list-item-post", inputs: ["authorName", "authorRole", "timestamp", "avatarInitials", "avatarType", "avatarSrc", "avatarIconName", "showBadge", "variant", "clickable", "enableLongPress"], outputs: ["postClick", "commentClick", "longPress"] }, { kind: "component", type: DsMobilePostComposerComponent, selector: "ds-mobile-post-composer", inputs: ["avatarInitials", "avatarType", "avatarSrc", "avatarIconName", "placeholder", "buttonText"], outputs: ["composerClick"] }, { kind: "component", type: DsMobileSwiperComponent, selector: "ds-mobile-swiper", inputs: ["slideWidth", "gap", "pagination"] }, { kind: "component", type: PostContentComponent, selector: "post-content" }, { kind: "component", type: PostTextComponent, selector: "post-text" }, { kind: "component", type: PostMediaComponent, selector: "post-media" }, { kind: "component", type: PostAttachmentsComponent, selector: "post-attachments" }, { kind: "component", type: PostActionsComponent, selector: "post-actions" }, { kind: "component", type: ActionLikeComponent, selector: "action-like", inputs: ["active", "count"], outputs: ["activeChange", "countChange", "likeClick"] }, { kind: "component", type: ActionCommentComponent, selector: "action-comment", inputs: ["count"], outputs: ["commentClick"] }, { kind: "component", type: DsMobileCardInlineFileComponent, selector: "ds-mobile-card-inline-file", inputs: ["fileName", "fileSize", "variant", "layout", "fileUrl"], outputs: ["fileClick"] }, { kind: "component", type: DsIconComponent, selector: "ds-icon", inputs: ["name", "size", "color", "interactive"] }, { kind: "component", type: DsTileComponent, selector: "ds-tile", inputs: ["orientation"] }, { kind: "component", type: DsTileSectionComponent, selector: "ds-tile-section", inputs: ["padding"] }, { kind: "component", type: DsMobileInlinePhotoComponent, selector: "ds-mobile-inline-photo", inputs: ["images", "author", "maxVisible"], outputs: ["photoClick"] }, { kind: "component", type: IonInfiniteScroll, selector: "ion-infinite-scroll", inputs: ["disabled", "position", "threshold"] }, { kind: "component", type: IonInfiniteScrollContent, selector: "ion-infinite-scroll-content", inputs: ["loadingSpinner", "loadingText"] }] });
|
|
15982
15965
|
}
|
|
15983
15966
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: MobileCommunityPageComponent, decorators: [{
|
|
15984
15967
|
type: Component,
|
|
@@ -15987,6 +15970,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
|
|
|
15987
15970
|
DsMobileContentComponent,
|
|
15988
15971
|
DsMobileInteractiveListItemPostComponent,
|
|
15989
15972
|
DsMobilePostComposerComponent,
|
|
15973
|
+
DsMobileSwiperComponent,
|
|
15990
15974
|
PostContentComponent,
|
|
15991
15975
|
PostTextComponent,
|
|
15992
15976
|
PostMediaComponent,
|
|
@@ -15996,6 +15980,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
|
|
|
15996
15980
|
ActionCommentComponent,
|
|
15997
15981
|
DsMobileCardInlineFileComponent,
|
|
15998
15982
|
DsIconComponent,
|
|
15983
|
+
DsTileComponent,
|
|
15984
|
+
DsTileSectionComponent,
|
|
15999
15985
|
DsMobileInlinePhotoComponent,
|
|
16000
15986
|
IonInfiniteScroll,
|
|
16001
15987
|
IonInfiniteScrollContent
|
|
@@ -16018,43 +16004,66 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
|
|
|
16018
16004
|
<ds-mobile-content role="feed">
|
|
16019
16005
|
<div class="post-feed">
|
|
16020
16006
|
<!-- Pinned Posts Section -->
|
|
16021
|
-
<div class="
|
|
16022
|
-
<
|
|
16023
|
-
<ds-
|
|
16024
|
-
|
|
16025
|
-
|
|
16026
|
-
|
|
16027
|
-
|
|
16028
|
-
|
|
16029
|
-
[authorName]="'Karen Nielsen'"
|
|
16030
|
-
[authorRole]="'Ejendomsadministrator'"
|
|
16031
|
-
[timestamp]="'2d siden'"
|
|
16032
|
-
[avatarInitials]="'KN'"
|
|
16033
|
-
[showBadge]="true"
|
|
16034
|
-
[clickable]="true"
|
|
16035
|
-
(postClick)="openPost('post-4')"
|
|
16036
|
-
(commentClick)="openPost('post-4', true)"
|
|
16037
|
-
(longPress)="handlePostLongPress('post-4', false)">
|
|
16007
|
+
<div class="content-section">
|
|
16008
|
+
<ds-tile>
|
|
16009
|
+
<ds-tile-section class="header-section">
|
|
16010
|
+
<h2 class="section-headline">
|
|
16011
|
+
<ds-icon name="remixPushpinFill" size="16px" color="primary" />
|
|
16012
|
+
Fastgjorte opslag
|
|
16013
|
+
</h2>
|
|
16014
|
+
</ds-tile-section>
|
|
16038
16015
|
|
|
16039
|
-
<
|
|
16040
|
-
<
|
|
16041
|
-
|
|
16042
|
-
|
|
16043
|
-
|
|
16044
|
-
[
|
|
16045
|
-
[
|
|
16046
|
-
[
|
|
16047
|
-
|
|
16048
|
-
|
|
16049
|
-
|
|
16050
|
-
|
|
16051
|
-
|
|
16052
|
-
|
|
16053
|
-
|
|
16054
|
-
|
|
16055
|
-
|
|
16056
|
-
|
|
16057
|
-
|
|
16016
|
+
<ds-tile-section [padding]="false" class="pinned-posts-swiper-section">
|
|
16017
|
+
<div class="pinned-posts-list">
|
|
16018
|
+
<!-- Swipeable Pinned Posts -->
|
|
16019
|
+
<ds-mobile-swiper
|
|
16020
|
+
class="pinned-posts-swiper"
|
|
16021
|
+
[slideWidth]="'100%'"
|
|
16022
|
+
[gap]="20"
|
|
16023
|
+
[pagination]="true">
|
|
16024
|
+
@for (post of pinnedPosts(); track post.id) {
|
|
16025
|
+
<div class="swiper-slide">
|
|
16026
|
+
<ds-mobile-interactive-list-item-post
|
|
16027
|
+
class="swiper-post-item"
|
|
16028
|
+
[authorName]="post.authorName"
|
|
16029
|
+
[authorRole]="post.authorRole"
|
|
16030
|
+
[timestamp]="post.timestamp"
|
|
16031
|
+
[avatarInitials]="post.avatarInitials || ''"
|
|
16032
|
+
[avatarType]="post.avatarType"
|
|
16033
|
+
[avatarSrc]="post.avatarSrc || ''"
|
|
16034
|
+
[showBadge]="true"
|
|
16035
|
+
[clickable]="true"
|
|
16036
|
+
(postClick)="openPost(post.id)"
|
|
16037
|
+
(commentClick)="openPost(post.id, true)"
|
|
16038
|
+
(longPress)="handlePostLongPress(post.id, false)">
|
|
16039
|
+
|
|
16040
|
+
<post-content>
|
|
16041
|
+
<post-text>{{ post.content }}</post-text>
|
|
16042
|
+
|
|
16043
|
+
@if (post.id === 'post-4') {
|
|
16044
|
+
<post-attachments>
|
|
16045
|
+
<ds-mobile-card-inline-file
|
|
16046
|
+
[fileName]="'Husregler.pdf'"
|
|
16047
|
+
[fileSize]="'245 KB'"
|
|
16048
|
+
[variant]="'pdf'"
|
|
16049
|
+
[layout]="'compact'"
|
|
16050
|
+
(fileClick)="openHouseRulesPdf()">
|
|
16051
|
+
</ds-mobile-card-inline-file>
|
|
16052
|
+
</post-attachments>
|
|
16053
|
+
}
|
|
16054
|
+
</post-content>
|
|
16055
|
+
|
|
16056
|
+
<post-actions>
|
|
16057
|
+
<action-like [count]="post.likeCount" [active]="post.isLiked" />
|
|
16058
|
+
<action-comment [count]="post.commentCount" (commentClick)="openPost(post.id, true)" />
|
|
16059
|
+
</post-actions>
|
|
16060
|
+
</ds-mobile-interactive-list-item-post>
|
|
16061
|
+
</div>
|
|
16062
|
+
}
|
|
16063
|
+
</ds-mobile-swiper>
|
|
16064
|
+
</div>
|
|
16065
|
+
</ds-tile-section>
|
|
16066
|
+
</ds-tile>
|
|
16058
16067
|
</div>
|
|
16059
16068
|
|
|
16060
16069
|
<!-- All Posts Section -->
|
|
@@ -16207,7 +16216,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
|
|
|
16207
16216
|
</div>
|
|
16208
16217
|
</ds-mobile-content>
|
|
16209
16218
|
</ds-mobile-page-main>
|
|
16210
|
-
`, styles: [".
|
|
16219
|
+
`, styles: ["::ng-deep ds-tile .ds-tile{border-radius:20px!important;overflow:visible!important}::ng-deep ds-tile-section{border-bottom:none!important}::ng-deep .header-section{padding:20px 20px 8px!important}.section-headline{font-size:var(--font-size-base);font-weight:600;color:var(--text-color-default-primary);margin:0;letter-spacing:-.2px;display:flex;align-items:center;gap:6px;padding:0}.content-section{display:flex;flex-direction:column;gap:12px;margin:-8px -8px 12px}.pinned-posts-list{display:flex;flex-direction:column;padding:0 20px 16px;position:relative;z-index:1}::ng-deep .pinned-posts-swiper-section{overflow:hidden!important}::ng-deep .pinned-posts-swiper .swiper-slide{width:100%;max-width:600px;height:auto}.swiper-post-item{width:100%;height:auto}::ng-deep .pinned-posts-swiper .swiper-slide ds-mobile-interactive-list-item-post{height:auto}::ng-deep .pinned-posts-swiper .swiper-wrapper{height:auto}::ng-deep .content-section ds-tile-section{overflow:hidden}.post-feed{display:flex;flex-direction:column;gap:12px}.post-list-wrapper{display:flex;flex-direction:column}.clickable-image{cursor:pointer;transition:transform .2s ease,opacity .2s ease;border-radius:8px;display:block;width:100%;aspect-ratio:16/9;object-fit:cover}.clickable-image:active{transform:scale(.98);opacity:.9}.community-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;margin-bottom:24px}ion-infinite-scroll{--color: var(--color-primary-surface)}ion-infinite-scroll-content{--color: var(--color-primary-surface)}ion-infinite-scroll-content::part(spinner){color:var(--color-primary-surface)}\n"] }]
|
|
16211
16220
|
}], ctorParameters: () => [{ type: i1$3.Router }, { type: i1$3.ActivatedRoute }, { type: DsMobileBottomSheetService }, { type: DsMobileLightboxService }, { type: DsMobilePostDetailModalService }, { type: UserService }, { type: PostsService }] });
|
|
16212
16221
|
|
|
16213
16222
|
class MobileHandbookPageComponent {
|
|
@@ -16579,11 +16588,47 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
|
|
|
16579
16588
|
}], ctorParameters: () => [{ type: UserService }] });
|
|
16580
16589
|
|
|
16581
16590
|
class MobileHomePageComponent {
|
|
16582
|
-
|
|
16591
|
+
router;
|
|
16583
16592
|
userService;
|
|
16584
|
-
|
|
16585
|
-
|
|
16593
|
+
postsService;
|
|
16594
|
+
postModal;
|
|
16595
|
+
// Get recent posts from PostsService - exclude pinned post (post-4) and limit to 3
|
|
16596
|
+
recentPosts = computed(() => this.postsService.posts()
|
|
16597
|
+
.filter(post => post.id !== 'post-4') // Exclude pinned post
|
|
16598
|
+
.slice(0, 3), ...(ngDevMode ? [{ debugName: "recentPosts" }] : []));
|
|
16599
|
+
// Mock inquiry data
|
|
16600
|
+
allInquiries = signal([
|
|
16601
|
+
{
|
|
16602
|
+
id: '1',
|
|
16603
|
+
title: 'Tørretumbler virker ikke',
|
|
16604
|
+
description: 'I de sidste tre dage har jeg oplevet vedvarende problemer med tørretumbleren. Den starter, men stopper efter få minutter.',
|
|
16605
|
+
status: 'open',
|
|
16606
|
+
timestamp: '12 dage siden'
|
|
16607
|
+
},
|
|
16608
|
+
{
|
|
16609
|
+
id: '2',
|
|
16610
|
+
title: 'Problem med vandtryk',
|
|
16611
|
+
description: 'Lavt vandtryk i badeværelseshåndvasken. Det er blevet gradvist værre i løbet af den sidste uge.',
|
|
16612
|
+
status: 'open',
|
|
16613
|
+
timestamp: '5 dage siden'
|
|
16614
|
+
},
|
|
16615
|
+
{
|
|
16616
|
+
id: '3',
|
|
16617
|
+
title: 'Varme virker ikke ordentligt',
|
|
16618
|
+
description: 'Varmesystemet holder ikke den indstillede temperatur. Lejligheden er meget koldere, end den burde være.',
|
|
16619
|
+
status: 'closed',
|
|
16620
|
+
timestamp: '2 måneder siden'
|
|
16621
|
+
}
|
|
16622
|
+
], ...(ngDevMode ? [{ debugName: "allInquiries" }] : []));
|
|
16623
|
+
// Filter for open inquiries and limit to 3
|
|
16624
|
+
openInquiries = computed(() => this.allInquiries()
|
|
16625
|
+
.filter(inquiry => inquiry.status === 'open')
|
|
16626
|
+
.slice(0, 3), ...(ngDevMode ? [{ debugName: "openInquiries" }] : []));
|
|
16627
|
+
constructor(router, userService, postsService, postModal) {
|
|
16628
|
+
this.router = router;
|
|
16586
16629
|
this.userService = userService;
|
|
16630
|
+
this.postsService = postsService;
|
|
16631
|
+
this.postModal = postModal;
|
|
16587
16632
|
console.log('MobileHomePageComponent constructor');
|
|
16588
16633
|
}
|
|
16589
16634
|
handleRefresh(event) {
|
|
@@ -16593,20 +16638,37 @@ class MobileHomePageComponent {
|
|
|
16593
16638
|
event.target.complete();
|
|
16594
16639
|
}, 1000);
|
|
16595
16640
|
}
|
|
16596
|
-
|
|
16597
|
-
console.log('
|
|
16598
|
-
|
|
16641
|
+
async openPost(postId, focusComment = false) {
|
|
16642
|
+
console.log('Opening post:', postId, 'Focus comments:', focusComment);
|
|
16643
|
+
const post = this.postsService.getPostById(postId);
|
|
16644
|
+
if (post) {
|
|
16645
|
+
// Convert Post model to modal format (add postId and focusComment)
|
|
16646
|
+
const postData = {
|
|
16647
|
+
...post,
|
|
16648
|
+
postId: post.id,
|
|
16649
|
+
avatarType: post.avatarType === 'icon' ? undefined : post.avatarType,
|
|
16650
|
+
focusComment
|
|
16651
|
+
};
|
|
16652
|
+
await this.postModal.open(postData, {
|
|
16653
|
+
currentUserName: 'Lars Mikkelsen',
|
|
16654
|
+
currentUserInitials: this.userService.avatarInitials()
|
|
16655
|
+
});
|
|
16656
|
+
}
|
|
16657
|
+
}
|
|
16658
|
+
openInquiryDetail(inquiryId) {
|
|
16659
|
+
console.log('Opening inquiry:', inquiryId);
|
|
16660
|
+
this.router.navigate(['/inquiry-detail', inquiryId]);
|
|
16599
16661
|
}
|
|
16600
|
-
|
|
16601
|
-
console.log('
|
|
16602
|
-
|
|
16662
|
+
navigateToCommunity() {
|
|
16663
|
+
console.log('Navigating to community page');
|
|
16664
|
+
this.router.navigate(['/announcements']);
|
|
16603
16665
|
}
|
|
16604
|
-
|
|
16605
|
-
console.log('
|
|
16606
|
-
|
|
16666
|
+
navigateToInquiries() {
|
|
16667
|
+
console.log('Navigating to inquiries page');
|
|
16668
|
+
this.router.navigate(['/inquiries']);
|
|
16607
16669
|
}
|
|
16608
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: MobileHomePageComponent, deps: [{ token: i1.
|
|
16609
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "
|
|
16670
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: MobileHomePageComponent, deps: [{ token: i1$3.Router }, { token: UserService }, { token: PostsService }, { token: DsMobilePostDetailModalService }], target: i0.ɵɵFactoryTarget.Component });
|
|
16671
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.15", type: MobileHomePageComponent, isStandalone: true, selector: "app-home-page", ngImport: i0, template: `
|
|
16610
16672
|
<ds-mobile-page-main
|
|
16611
16673
|
title="Hjem"
|
|
16612
16674
|
headerTitle="Velkommen, Lars"
|
|
@@ -16615,157 +16677,177 @@ class MobileHomePageComponent {
|
|
|
16615
16677
|
[avatarType]="userService.avatarType()"
|
|
16616
16678
|
(refresh)="handleRefresh($event)">
|
|
16617
16679
|
|
|
16618
|
-
<!-- Property info tiles in header -->
|
|
16619
|
-
<ds-mobile-header-content header-content>
|
|
16620
|
-
<ds-mobile-header-content-tile>
|
|
16621
|
-
<tile-icon>
|
|
16622
|
-
<ds-icon name="remixHome4Line" size="20px" />
|
|
16623
|
-
</tile-icon>
|
|
16624
|
-
<tile-content>
|
|
16625
|
-
<tile-label>Areal</tile-label>
|
|
16626
|
-
<tile-value>120 m²</tile-value>
|
|
16627
|
-
</tile-content>
|
|
16628
|
-
</ds-mobile-header-content-tile>
|
|
16629
|
-
|
|
16630
|
-
<ds-mobile-header-content-tile>
|
|
16631
|
-
<tile-icon>
|
|
16632
|
-
<ds-icon name="remixCollageLine" size="20px" />
|
|
16633
|
-
</tile-icon>
|
|
16634
|
-
<tile-content>
|
|
16635
|
-
<tile-label>Værelser</tile-label>
|
|
16636
|
-
<tile-value>3 værelser</tile-value>
|
|
16637
|
-
</tile-content>
|
|
16638
|
-
</ds-mobile-header-content-tile>
|
|
16639
|
-
</ds-mobile-header-content>
|
|
16640
|
-
|
|
16641
16680
|
<!-- Main page content -->
|
|
16642
16681
|
<ds-mobile-content>
|
|
16643
|
-
<!--
|
|
16644
|
-
<div class="
|
|
16645
|
-
<
|
|
16646
|
-
<ds-
|
|
16647
|
-
|
|
16648
|
-
|
|
16649
|
-
|
|
16650
|
-
<!-- Pinned: Maintenance Announcement -->
|
|
16651
|
-
<ds-mobile-interactive-list-item-post
|
|
16652
|
-
[authorName]="'Karen Nielsen'"
|
|
16653
|
-
[authorRole]="'Ejendomsadministrator'"
|
|
16654
|
-
[timestamp]="'2d siden'"
|
|
16655
|
-
[avatarInitials]="'KN'"
|
|
16656
|
-
[showBadge]="true"
|
|
16657
|
-
[clickable]="true"
|
|
16658
|
-
(postClick)="handlePostClick()"
|
|
16659
|
-
(commentClick)="handlePostClick()">
|
|
16682
|
+
<!-- Recent Community Posts Section -->
|
|
16683
|
+
<div class="content-section">
|
|
16684
|
+
<ds-tile>
|
|
16685
|
+
<ds-tile-section class="header-section">
|
|
16686
|
+
<h2 class="section-headline">Seneste opslag</h2>
|
|
16687
|
+
</ds-tile-section>
|
|
16660
16688
|
|
|
16661
|
-
<
|
|
16662
|
-
<
|
|
16663
|
-
|
|
16664
|
-
|
|
16665
|
-
|
|
16666
|
-
|
|
16667
|
-
|
|
16668
|
-
|
|
16669
|
-
|
|
16670
|
-
|
|
16671
|
-
|
|
16672
|
-
|
|
16673
|
-
|
|
16689
|
+
<ds-tile-section [padding]="false">
|
|
16690
|
+
<div class="recent-posts-list">
|
|
16691
|
+
@for (post of recentPosts(); track post.id) {
|
|
16692
|
+
<ds-mobile-interactive-list-item-post
|
|
16693
|
+
[authorName]="post.authorName"
|
|
16694
|
+
[authorRole]="post.authorRole"
|
|
16695
|
+
[timestamp]="post.timestamp"
|
|
16696
|
+
[avatarType]="post.avatarType"
|
|
16697
|
+
[avatarSrc]="post.avatarSrc || ''"
|
|
16698
|
+
[avatarInitials]="post.avatarInitials || ''"
|
|
16699
|
+
[showBadge]="post.showBadge || false"
|
|
16700
|
+
[clickable]="true"
|
|
16701
|
+
[enableLongPress]="false"
|
|
16702
|
+
(postClick)="openPost(post.id)"
|
|
16703
|
+
(commentClick)="openPost(post.id, true)">
|
|
16704
|
+
|
|
16705
|
+
<post-content>
|
|
16706
|
+
@if (post.content) {
|
|
16707
|
+
<post-text>{{ post.content }}</post-text>
|
|
16708
|
+
}
|
|
16709
|
+
</post-content>
|
|
16710
|
+
|
|
16711
|
+
<post-actions>
|
|
16712
|
+
<action-like [count]="post.likeCount" [active]="post.isLiked" />
|
|
16713
|
+
<action-comment [count]="post.commentCount" (commentClick)="openPost(post.id, true)" />
|
|
16714
|
+
</post-actions>
|
|
16715
|
+
</ds-mobile-interactive-list-item-post>
|
|
16716
|
+
}
|
|
16717
|
+
</div>
|
|
16718
|
+
</ds-tile-section>
|
|
16674
16719
|
|
|
16675
|
-
<
|
|
16676
|
-
<
|
|
16677
|
-
|
|
16678
|
-
|
|
16679
|
-
|
|
16720
|
+
<ds-tile-section class="view-all-section">
|
|
16721
|
+
<ds-button
|
|
16722
|
+
variant="secondary"
|
|
16723
|
+
trailingIcon="remixArrowRightSLine"
|
|
16724
|
+
(click)="navigateToCommunity()">
|
|
16725
|
+
Se alle opslag
|
|
16726
|
+
</ds-button>
|
|
16727
|
+
</ds-tile-section>
|
|
16728
|
+
</ds-tile>
|
|
16680
16729
|
</div>
|
|
16681
16730
|
|
|
16682
|
-
<!--
|
|
16731
|
+
<!-- Recent Community Posts Section (empty state) -->
|
|
16683
16732
|
<div class="content-section">
|
|
16684
|
-
<
|
|
16685
|
-
|
|
16686
|
-
|
|
16687
|
-
|
|
16688
|
-
|
|
16689
|
-
|
|
16690
|
-
|
|
16691
|
-
|
|
16692
|
-
|
|
16693
|
-
|
|
16694
|
-
|
|
16695
|
-
|
|
16696
|
-
|
|
16697
|
-
|
|
16698
|
-
[contactPerson]="'Erik Sørensen'"
|
|
16699
|
-
[phoneNumber]="'+45 56 78 90 12'"
|
|
16700
|
-
(contactClick)="handleContactClick('caretaker')">
|
|
16701
|
-
</ds-mobile-card-inline-contact>
|
|
16733
|
+
<ds-tile>
|
|
16734
|
+
<ds-tile-section [padding]="false">
|
|
16735
|
+
<div class="empty-state">
|
|
16736
|
+
<ds-avatar
|
|
16737
|
+
type="icon"
|
|
16738
|
+
[iconName]="'remixChat3Line'"
|
|
16739
|
+
size="lg"
|
|
16740
|
+
backgroundColor="var(--color-background-neutral-secondary, #f5f5f5)"
|
|
16741
|
+
iconColor="var(--text-color-default-tertiary, #737373)"
|
|
16742
|
+
/>
|
|
16743
|
+
<h3 class="empty-state-title">Ingen opslag endnu</h3>
|
|
16744
|
+
<p class="empty-state-description">Der er ingen opslag i fællesområdet i øjeblikket</p>
|
|
16745
|
+
</div>
|
|
16746
|
+
</ds-tile-section>
|
|
16702
16747
|
|
|
16703
|
-
<ds-
|
|
16704
|
-
|
|
16705
|
-
|
|
16706
|
-
|
|
16707
|
-
|
|
16708
|
-
|
|
16709
|
-
|
|
16710
|
-
|
|
16748
|
+
<ds-tile-section class="view-all-section">
|
|
16749
|
+
<ds-button
|
|
16750
|
+
variant="secondary"
|
|
16751
|
+
trailingIcon="remixArrowRightSLine"
|
|
16752
|
+
(click)="navigateToCommunity()">
|
|
16753
|
+
Gå til fællesområdet
|
|
16754
|
+
</ds-button>
|
|
16755
|
+
</ds-tile-section>
|
|
16756
|
+
</ds-tile>
|
|
16711
16757
|
</div>
|
|
16712
|
-
|
|
16713
|
-
<!--
|
|
16758
|
+
|
|
16759
|
+
<!-- Open Inquiries Section (with content) -->
|
|
16714
16760
|
<div class="content-section">
|
|
16715
|
-
<
|
|
16716
|
-
|
|
16717
|
-
|
|
16718
|
-
|
|
16719
|
-
[fileName]="'Lejekontrakt'"
|
|
16720
|
-
[fileSize]="'1.2 MB'"
|
|
16721
|
-
[variant]="'pdf'"
|
|
16722
|
-
(fileClick)="handleFileClick('lease-contract')">
|
|
16723
|
-
</ds-mobile-card-inline-file>
|
|
16761
|
+
<ds-tile>
|
|
16762
|
+
<ds-tile-section class="header-section">
|
|
16763
|
+
<h2 class="section-headline">Åbne henvendelser</h2>
|
|
16764
|
+
</ds-tile-section>
|
|
16724
16765
|
|
|
16725
|
-
<ds-
|
|
16726
|
-
|
|
16727
|
-
|
|
16728
|
-
|
|
16729
|
-
|
|
16730
|
-
|
|
16766
|
+
<ds-tile-section [padding]="false">
|
|
16767
|
+
@if (openInquiries().length > 0) {
|
|
16768
|
+
<div class="inquiries-list">
|
|
16769
|
+
@for (inquiry of openInquiries(); track inquiry.id) {
|
|
16770
|
+
<ds-mobile-interactive-list-item-inquiry
|
|
16771
|
+
[title]="inquiry.title"
|
|
16772
|
+
[description]="inquiry.description"
|
|
16773
|
+
[status]="inquiry.status"
|
|
16774
|
+
[timestamp]="inquiry.timestamp"
|
|
16775
|
+
[iconName]="'remixTodoLine'"
|
|
16776
|
+
[clickable]="true"
|
|
16777
|
+
[showChevron]="false"
|
|
16778
|
+
[enableLongPress]="false"
|
|
16779
|
+
(inquiryClick)="openInquiryDetail(inquiry.id)">
|
|
16780
|
+
</ds-mobile-interactive-list-item-inquiry>
|
|
16781
|
+
}
|
|
16782
|
+
</div>
|
|
16783
|
+
} @else {
|
|
16784
|
+
<!-- Empty state -->
|
|
16785
|
+
<div class="empty-state">
|
|
16786
|
+
<ds-icon name="remixInboxLine" size="48px" color="tertiary" />
|
|
16787
|
+
<h3 class="empty-state-title">Ingen åbne henvendelser</h3>
|
|
16788
|
+
<p class="empty-state-description">Du har ingen åbne henvendelser i øjeblikket</p>
|
|
16789
|
+
</div>
|
|
16790
|
+
}
|
|
16791
|
+
</ds-tile-section>
|
|
16731
16792
|
|
|
16732
|
-
|
|
16733
|
-
|
|
16734
|
-
|
|
16735
|
-
|
|
16736
|
-
|
|
16737
|
-
|
|
16793
|
+
@if (openInquiries().length > 0) {
|
|
16794
|
+
<ds-tile-section class="view-all-section">
|
|
16795
|
+
<ds-button
|
|
16796
|
+
variant="secondary"
|
|
16797
|
+
trailingIcon="remixArrowRightSLine"
|
|
16798
|
+
(click)="navigateToInquiries()">
|
|
16799
|
+
Se alle henvendelser
|
|
16800
|
+
</ds-button>
|
|
16801
|
+
</ds-tile-section>
|
|
16802
|
+
}
|
|
16803
|
+
</ds-tile>
|
|
16804
|
+
</div>
|
|
16805
|
+
|
|
16806
|
+
<!-- Open Inquiries Section (empty state) -->
|
|
16807
|
+
<div class="content-section">
|
|
16808
|
+
<ds-tile>
|
|
16809
|
+
<ds-tile-section [padding]="false">
|
|
16810
|
+
<div class="empty-state">
|
|
16811
|
+
<ds-avatar
|
|
16812
|
+
type="icon"
|
|
16813
|
+
[iconName]="'remixInboxLine'"
|
|
16814
|
+
size="lg"
|
|
16815
|
+
backgroundColor="var(--color-background-neutral-secondary, #f5f5f5)"
|
|
16816
|
+
iconColor="var(--text-color-default-tertiary, #737373)"
|
|
16817
|
+
/>
|
|
16818
|
+
<h3 class="empty-state-title">Ingen åbne henvendelser</h3>
|
|
16819
|
+
<p class="empty-state-description">Du har ingen åbne henvendelser i øjeblikket</p>
|
|
16820
|
+
</div>
|
|
16821
|
+
</ds-tile-section>
|
|
16738
16822
|
|
|
16739
|
-
<ds-
|
|
16740
|
-
|
|
16741
|
-
|
|
16742
|
-
|
|
16743
|
-
|
|
16744
|
-
|
|
16745
|
-
|
|
16823
|
+
<ds-tile-section class="view-all-section">
|
|
16824
|
+
<ds-button
|
|
16825
|
+
variant="secondary"
|
|
16826
|
+
trailingIcon="remixArrowRightSLine"
|
|
16827
|
+
(click)="navigateToInquiries()">
|
|
16828
|
+
Gå til henvendelser
|
|
16829
|
+
</ds-button>
|
|
16830
|
+
</ds-tile-section>
|
|
16831
|
+
</ds-tile>
|
|
16746
16832
|
</div>
|
|
16747
16833
|
</ds-mobile-content>
|
|
16748
16834
|
</ds-mobile-page-main>
|
|
16749
|
-
`, isInline: true, styles: [".section-headline{font-size:var(--font-size-
|
|
16835
|
+
`, isInline: true, styles: ["::ng-deep ds-tile .ds-tile{border-radius:20px!important;overflow:visible!important}::ng-deep ds-tile-section{border-bottom:none!important}::ng-deep .header-section{padding:20px 20px 8px!important}.section-headline{font-size:var(--font-size-base);font-weight:600;color:var(--text-color-default-primary);margin:0;letter-spacing:-.2px;display:flex;align-items:center;gap:6px;padding:0}.content-section{display:flex;flex-direction:column;gap:12px;margin:-8px}.items-container{display:flex;flex-direction:column;gap:4px}.recent-posts-list,.inquiries-list{display:flex;flex-direction:column;padding:16px 20px;margin-top:-12px;position:relative;z-index:1}.view-all-section{display:block}.view-all-section ds-button{width:100%;display:block}.view-all-section ds-button::ng-deep .btn{width:100%;border-radius:9999px}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:32px 20px 8px;text-align:center}.empty-state-title{font-family:Brockmann,sans-serif;font-size:var(--font-size-base);font-weight:600;color:var(--color-text-primary);margin:16px 0 8px}.empty-state-description{font-family:Brockmann,sans-serif;font-size:var(--font-size-sm);color:var(--color-text-secondary);margin:0}\n"], dependencies: [{ kind: "component", type: DsIconComponent, selector: "ds-icon", inputs: ["name", "size", "color", "interactive"] }, { kind: "component", type: DsAvatarComponent, selector: "ds-avatar", inputs: ["type", "size", "initials", "src", "alt", "iconName", "iconColor"] }, { kind: "component", type: DsTileComponent, selector: "ds-tile", inputs: ["orientation"] }, { kind: "component", type: DsTileSectionComponent, selector: "ds-tile-section", inputs: ["padding"] }, { 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: DsMobilePageMainComponent, selector: "ds-mobile-page-main", inputs: ["title", "headerTitle", "headerSubtitle", "avatarType", "avatarInitials", "avatarSrc", "avatarIconName", "showRefresh", "showCondensedHeader", "scrollThreshold", "headerFadeDistance", "profileMenuItems"], outputs: ["avatarClick", "profileActionSelected", "refresh", "scroll"] }, { kind: "component", type: DsMobileContentComponent, selector: "ds-mobile-content", inputs: ["layout"] }, { kind: "component", type: DsMobileInteractiveListItemPostComponent, selector: "ds-mobile-interactive-list-item-post", inputs: ["authorName", "authorRole", "timestamp", "avatarInitials", "avatarType", "avatarSrc", "avatarIconName", "showBadge", "variant", "clickable", "enableLongPress"], outputs: ["postClick", "commentClick", "longPress"] }, { kind: "component", type: DsMobileInteractiveListItemInquiryComponent, selector: "ds-mobile-interactive-list-item-inquiry", inputs: ["title", "description", "status", "statusLabel", "timestamp", "iconName", "iconColor", "variant", "clickable", "showChevron", "enableLongPress"], outputs: ["inquiryClick", "longPress"] }, { kind: "component", type: PostContentComponent, selector: "post-content" }, { kind: "component", type: PostTextComponent, selector: "post-text" }, { kind: "component", type: PostActionsComponent, selector: "post-actions" }, { kind: "component", type: ActionLikeComponent, selector: "action-like", inputs: ["active", "count"], outputs: ["activeChange", "countChange", "likeClick"] }, { kind: "component", type: ActionCommentComponent, selector: "action-comment", inputs: ["count"], outputs: ["commentClick"] }] });
|
|
16750
16836
|
}
|
|
16751
16837
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: MobileHomePageComponent, decorators: [{
|
|
16752
16838
|
type: Component,
|
|
16753
16839
|
args: [{ selector: 'app-home-page', standalone: true, imports: [
|
|
16754
16840
|
DsIconComponent,
|
|
16841
|
+
DsAvatarComponent,
|
|
16842
|
+
DsTileComponent,
|
|
16843
|
+
DsTileSectionComponent,
|
|
16844
|
+
DsButtonComponent,
|
|
16755
16845
|
DsMobilePageMainComponent,
|
|
16756
|
-
DsMobileHeaderContentComponent,
|
|
16757
|
-
DsMobileHeaderContentTileComponent,
|
|
16758
|
-
TileIconComponent,
|
|
16759
|
-
TileContentComponent,
|
|
16760
|
-
TileLabelComponent,
|
|
16761
|
-
TileValueComponent,
|
|
16762
16846
|
DsMobileContentComponent,
|
|
16763
|
-
DsMobileCardInlineContactComponent,
|
|
16764
|
-
DsMobileCardInlineFileComponent,
|
|
16765
16847
|
DsMobileInteractiveListItemPostComponent,
|
|
16848
|
+
DsMobileInteractiveListItemInquiryComponent,
|
|
16766
16849
|
PostContentComponent,
|
|
16767
16850
|
PostTextComponent,
|
|
16768
|
-
PostAttachmentsComponent,
|
|
16769
16851
|
PostActionsComponent,
|
|
16770
16852
|
ActionLikeComponent,
|
|
16771
16853
|
ActionCommentComponent
|
|
@@ -16778,139 +16860,163 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
|
|
|
16778
16860
|
[avatarType]="userService.avatarType()"
|
|
16779
16861
|
(refresh)="handleRefresh($event)">
|
|
16780
16862
|
|
|
16781
|
-
<!-- Property info tiles in header -->
|
|
16782
|
-
<ds-mobile-header-content header-content>
|
|
16783
|
-
<ds-mobile-header-content-tile>
|
|
16784
|
-
<tile-icon>
|
|
16785
|
-
<ds-icon name="remixHome4Line" size="20px" />
|
|
16786
|
-
</tile-icon>
|
|
16787
|
-
<tile-content>
|
|
16788
|
-
<tile-label>Areal</tile-label>
|
|
16789
|
-
<tile-value>120 m²</tile-value>
|
|
16790
|
-
</tile-content>
|
|
16791
|
-
</ds-mobile-header-content-tile>
|
|
16792
|
-
|
|
16793
|
-
<ds-mobile-header-content-tile>
|
|
16794
|
-
<tile-icon>
|
|
16795
|
-
<ds-icon name="remixCollageLine" size="20px" />
|
|
16796
|
-
</tile-icon>
|
|
16797
|
-
<tile-content>
|
|
16798
|
-
<tile-label>Værelser</tile-label>
|
|
16799
|
-
<tile-value>3 værelser</tile-value>
|
|
16800
|
-
</tile-content>
|
|
16801
|
-
</ds-mobile-header-content-tile>
|
|
16802
|
-
</ds-mobile-header-content>
|
|
16803
|
-
|
|
16804
16863
|
<!-- Main page content -->
|
|
16805
16864
|
<ds-mobile-content>
|
|
16806
|
-
<!--
|
|
16807
|
-
<div class="
|
|
16808
|
-
<
|
|
16809
|
-
<ds-
|
|
16810
|
-
|
|
16811
|
-
|
|
16812
|
-
|
|
16813
|
-
<!-- Pinned: Maintenance Announcement -->
|
|
16814
|
-
<ds-mobile-interactive-list-item-post
|
|
16815
|
-
[authorName]="'Karen Nielsen'"
|
|
16816
|
-
[authorRole]="'Ejendomsadministrator'"
|
|
16817
|
-
[timestamp]="'2d siden'"
|
|
16818
|
-
[avatarInitials]="'KN'"
|
|
16819
|
-
[showBadge]="true"
|
|
16820
|
-
[clickable]="true"
|
|
16821
|
-
(postClick)="handlePostClick()"
|
|
16822
|
-
(commentClick)="handlePostClick()">
|
|
16865
|
+
<!-- Recent Community Posts Section -->
|
|
16866
|
+
<div class="content-section">
|
|
16867
|
+
<ds-tile>
|
|
16868
|
+
<ds-tile-section class="header-section">
|
|
16869
|
+
<h2 class="section-headline">Seneste opslag</h2>
|
|
16870
|
+
</ds-tile-section>
|
|
16823
16871
|
|
|
16824
|
-
<
|
|
16825
|
-
<
|
|
16826
|
-
|
|
16827
|
-
|
|
16828
|
-
|
|
16829
|
-
|
|
16830
|
-
|
|
16831
|
-
|
|
16832
|
-
|
|
16833
|
-
|
|
16834
|
-
|
|
16835
|
-
|
|
16836
|
-
|
|
16872
|
+
<ds-tile-section [padding]="false">
|
|
16873
|
+
<div class="recent-posts-list">
|
|
16874
|
+
@for (post of recentPosts(); track post.id) {
|
|
16875
|
+
<ds-mobile-interactive-list-item-post
|
|
16876
|
+
[authorName]="post.authorName"
|
|
16877
|
+
[authorRole]="post.authorRole"
|
|
16878
|
+
[timestamp]="post.timestamp"
|
|
16879
|
+
[avatarType]="post.avatarType"
|
|
16880
|
+
[avatarSrc]="post.avatarSrc || ''"
|
|
16881
|
+
[avatarInitials]="post.avatarInitials || ''"
|
|
16882
|
+
[showBadge]="post.showBadge || false"
|
|
16883
|
+
[clickable]="true"
|
|
16884
|
+
[enableLongPress]="false"
|
|
16885
|
+
(postClick)="openPost(post.id)"
|
|
16886
|
+
(commentClick)="openPost(post.id, true)">
|
|
16887
|
+
|
|
16888
|
+
<post-content>
|
|
16889
|
+
@if (post.content) {
|
|
16890
|
+
<post-text>{{ post.content }}</post-text>
|
|
16891
|
+
}
|
|
16892
|
+
</post-content>
|
|
16893
|
+
|
|
16894
|
+
<post-actions>
|
|
16895
|
+
<action-like [count]="post.likeCount" [active]="post.isLiked" />
|
|
16896
|
+
<action-comment [count]="post.commentCount" (commentClick)="openPost(post.id, true)" />
|
|
16897
|
+
</post-actions>
|
|
16898
|
+
</ds-mobile-interactive-list-item-post>
|
|
16899
|
+
}
|
|
16900
|
+
</div>
|
|
16901
|
+
</ds-tile-section>
|
|
16837
16902
|
|
|
16838
|
-
<
|
|
16839
|
-
<
|
|
16840
|
-
|
|
16841
|
-
|
|
16842
|
-
|
|
16903
|
+
<ds-tile-section class="view-all-section">
|
|
16904
|
+
<ds-button
|
|
16905
|
+
variant="secondary"
|
|
16906
|
+
trailingIcon="remixArrowRightSLine"
|
|
16907
|
+
(click)="navigateToCommunity()">
|
|
16908
|
+
Se alle opslag
|
|
16909
|
+
</ds-button>
|
|
16910
|
+
</ds-tile-section>
|
|
16911
|
+
</ds-tile>
|
|
16843
16912
|
</div>
|
|
16844
16913
|
|
|
16845
|
-
<!--
|
|
16914
|
+
<!-- Recent Community Posts Section (empty state) -->
|
|
16846
16915
|
<div class="content-section">
|
|
16847
|
-
<
|
|
16848
|
-
|
|
16849
|
-
|
|
16850
|
-
|
|
16851
|
-
|
|
16852
|
-
|
|
16853
|
-
|
|
16854
|
-
|
|
16855
|
-
|
|
16856
|
-
|
|
16857
|
-
|
|
16858
|
-
|
|
16859
|
-
|
|
16860
|
-
|
|
16861
|
-
[contactPerson]="'Erik Sørensen'"
|
|
16862
|
-
[phoneNumber]="'+45 56 78 90 12'"
|
|
16863
|
-
(contactClick)="handleContactClick('caretaker')">
|
|
16864
|
-
</ds-mobile-card-inline-contact>
|
|
16916
|
+
<ds-tile>
|
|
16917
|
+
<ds-tile-section [padding]="false">
|
|
16918
|
+
<div class="empty-state">
|
|
16919
|
+
<ds-avatar
|
|
16920
|
+
type="icon"
|
|
16921
|
+
[iconName]="'remixChat3Line'"
|
|
16922
|
+
size="lg"
|
|
16923
|
+
backgroundColor="var(--color-background-neutral-secondary, #f5f5f5)"
|
|
16924
|
+
iconColor="var(--text-color-default-tertiary, #737373)"
|
|
16925
|
+
/>
|
|
16926
|
+
<h3 class="empty-state-title">Ingen opslag endnu</h3>
|
|
16927
|
+
<p class="empty-state-description">Der er ingen opslag i fællesområdet i øjeblikket</p>
|
|
16928
|
+
</div>
|
|
16929
|
+
</ds-tile-section>
|
|
16865
16930
|
|
|
16866
|
-
<ds-
|
|
16867
|
-
|
|
16868
|
-
|
|
16869
|
-
|
|
16870
|
-
|
|
16871
|
-
|
|
16872
|
-
|
|
16873
|
-
|
|
16931
|
+
<ds-tile-section class="view-all-section">
|
|
16932
|
+
<ds-button
|
|
16933
|
+
variant="secondary"
|
|
16934
|
+
trailingIcon="remixArrowRightSLine"
|
|
16935
|
+
(click)="navigateToCommunity()">
|
|
16936
|
+
Gå til fællesområdet
|
|
16937
|
+
</ds-button>
|
|
16938
|
+
</ds-tile-section>
|
|
16939
|
+
</ds-tile>
|
|
16874
16940
|
</div>
|
|
16875
|
-
|
|
16876
|
-
<!--
|
|
16941
|
+
|
|
16942
|
+
<!-- Open Inquiries Section (with content) -->
|
|
16877
16943
|
<div class="content-section">
|
|
16878
|
-
<
|
|
16879
|
-
|
|
16880
|
-
|
|
16881
|
-
|
|
16882
|
-
[fileName]="'Lejekontrakt'"
|
|
16883
|
-
[fileSize]="'1.2 MB'"
|
|
16884
|
-
[variant]="'pdf'"
|
|
16885
|
-
(fileClick)="handleFileClick('lease-contract')">
|
|
16886
|
-
</ds-mobile-card-inline-file>
|
|
16944
|
+
<ds-tile>
|
|
16945
|
+
<ds-tile-section class="header-section">
|
|
16946
|
+
<h2 class="section-headline">Åbne henvendelser</h2>
|
|
16947
|
+
</ds-tile-section>
|
|
16887
16948
|
|
|
16888
|
-
<ds-
|
|
16889
|
-
|
|
16890
|
-
|
|
16891
|
-
|
|
16892
|
-
|
|
16893
|
-
|
|
16949
|
+
<ds-tile-section [padding]="false">
|
|
16950
|
+
@if (openInquiries().length > 0) {
|
|
16951
|
+
<div class="inquiries-list">
|
|
16952
|
+
@for (inquiry of openInquiries(); track inquiry.id) {
|
|
16953
|
+
<ds-mobile-interactive-list-item-inquiry
|
|
16954
|
+
[title]="inquiry.title"
|
|
16955
|
+
[description]="inquiry.description"
|
|
16956
|
+
[status]="inquiry.status"
|
|
16957
|
+
[timestamp]="inquiry.timestamp"
|
|
16958
|
+
[iconName]="'remixTodoLine'"
|
|
16959
|
+
[clickable]="true"
|
|
16960
|
+
[showChevron]="false"
|
|
16961
|
+
[enableLongPress]="false"
|
|
16962
|
+
(inquiryClick)="openInquiryDetail(inquiry.id)">
|
|
16963
|
+
</ds-mobile-interactive-list-item-inquiry>
|
|
16964
|
+
}
|
|
16965
|
+
</div>
|
|
16966
|
+
} @else {
|
|
16967
|
+
<!-- Empty state -->
|
|
16968
|
+
<div class="empty-state">
|
|
16969
|
+
<ds-icon name="remixInboxLine" size="48px" color="tertiary" />
|
|
16970
|
+
<h3 class="empty-state-title">Ingen åbne henvendelser</h3>
|
|
16971
|
+
<p class="empty-state-description">Du har ingen åbne henvendelser i øjeblikket</p>
|
|
16972
|
+
</div>
|
|
16973
|
+
}
|
|
16974
|
+
</ds-tile-section>
|
|
16894
16975
|
|
|
16895
|
-
|
|
16896
|
-
|
|
16897
|
-
|
|
16898
|
-
|
|
16899
|
-
|
|
16900
|
-
|
|
16976
|
+
@if (openInquiries().length > 0) {
|
|
16977
|
+
<ds-tile-section class="view-all-section">
|
|
16978
|
+
<ds-button
|
|
16979
|
+
variant="secondary"
|
|
16980
|
+
trailingIcon="remixArrowRightSLine"
|
|
16981
|
+
(click)="navigateToInquiries()">
|
|
16982
|
+
Se alle henvendelser
|
|
16983
|
+
</ds-button>
|
|
16984
|
+
</ds-tile-section>
|
|
16985
|
+
}
|
|
16986
|
+
</ds-tile>
|
|
16987
|
+
</div>
|
|
16988
|
+
|
|
16989
|
+
<!-- Open Inquiries Section (empty state) -->
|
|
16990
|
+
<div class="content-section">
|
|
16991
|
+
<ds-tile>
|
|
16992
|
+
<ds-tile-section [padding]="false">
|
|
16993
|
+
<div class="empty-state">
|
|
16994
|
+
<ds-avatar
|
|
16995
|
+
type="icon"
|
|
16996
|
+
[iconName]="'remixInboxLine'"
|
|
16997
|
+
size="lg"
|
|
16998
|
+
backgroundColor="var(--color-background-neutral-secondary, #f5f5f5)"
|
|
16999
|
+
iconColor="var(--text-color-default-tertiary, #737373)"
|
|
17000
|
+
/>
|
|
17001
|
+
<h3 class="empty-state-title">Ingen åbne henvendelser</h3>
|
|
17002
|
+
<p class="empty-state-description">Du har ingen åbne henvendelser i øjeblikket</p>
|
|
17003
|
+
</div>
|
|
17004
|
+
</ds-tile-section>
|
|
16901
17005
|
|
|
16902
|
-
<ds-
|
|
16903
|
-
|
|
16904
|
-
|
|
16905
|
-
|
|
16906
|
-
|
|
16907
|
-
|
|
16908
|
-
|
|
17006
|
+
<ds-tile-section class="view-all-section">
|
|
17007
|
+
<ds-button
|
|
17008
|
+
variant="secondary"
|
|
17009
|
+
trailingIcon="remixArrowRightSLine"
|
|
17010
|
+
(click)="navigateToInquiries()">
|
|
17011
|
+
Gå til henvendelser
|
|
17012
|
+
</ds-button>
|
|
17013
|
+
</ds-tile-section>
|
|
17014
|
+
</ds-tile>
|
|
16909
17015
|
</div>
|
|
16910
17016
|
</ds-mobile-content>
|
|
16911
17017
|
</ds-mobile-page-main>
|
|
16912
|
-
`, styles: [".section-headline{font-size:var(--font-size-
|
|
16913
|
-
}], ctorParameters: () => [{ type: i1.
|
|
17018
|
+
`, styles: ["::ng-deep ds-tile .ds-tile{border-radius:20px!important;overflow:visible!important}::ng-deep ds-tile-section{border-bottom:none!important}::ng-deep .header-section{padding:20px 20px 8px!important}.section-headline{font-size:var(--font-size-base);font-weight:600;color:var(--text-color-default-primary);margin:0;letter-spacing:-.2px;display:flex;align-items:center;gap:6px;padding:0}.content-section{display:flex;flex-direction:column;gap:12px;margin:-8px}.items-container{display:flex;flex-direction:column;gap:4px}.recent-posts-list,.inquiries-list{display:flex;flex-direction:column;padding:16px 20px;margin-top:-12px;position:relative;z-index:1}.view-all-section{display:block}.view-all-section ds-button{width:100%;display:block}.view-all-section ds-button::ng-deep .btn{width:100%;border-radius:9999px}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:32px 20px 8px;text-align:center}.empty-state-title{font-family:Brockmann,sans-serif;font-size:var(--font-size-base);font-weight:600;color:var(--color-text-primary);margin:16px 0 8px}.empty-state-description{font-family:Brockmann,sans-serif;font-size:var(--font-size-sm);color:var(--color-text-secondary);margin:0}\n"] }]
|
|
17019
|
+
}], ctorParameters: () => [{ type: i1$3.Router }, { type: UserService }, { type: PostsService }, { type: DsMobilePostDetailModalService }] });
|
|
16914
17020
|
|
|
16915
17021
|
class MobileInquiriesPageComponent {
|
|
16916
17022
|
userService;
|
|
@@ -17050,8 +17156,8 @@ class MobileInquiriesPageComponent {
|
|
|
17050
17156
|
[iconName]="getInquiryIcon(inquiry.category)"
|
|
17051
17157
|
[clickable]="true"
|
|
17052
17158
|
[showChevron]="false"
|
|
17053
|
-
|
|
17054
|
-
(
|
|
17159
|
+
[enableLongPress]="false"
|
|
17160
|
+
(inquiryClick)="openInquiryDetail(inquiry.id)">
|
|
17055
17161
|
</ds-mobile-interactive-list-item-inquiry>
|
|
17056
17162
|
|
|
17057
17163
|
}
|
|
@@ -17083,7 +17189,7 @@ class MobileInquiriesPageComponent {
|
|
|
17083
17189
|
ariaLabel="Create new inquiry"
|
|
17084
17190
|
(fabClick)="createNewInquiry()">
|
|
17085
17191
|
</ds-mobile-fab>
|
|
17086
|
-
`, isInline: true, styles: [".inquiries-container{display:flex;flex-direction:column}.inquiry-list-wrapper{display:flex;flex-direction:column;margin-top:-8px}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;text-align:center}.empty-state-title{font-family:Brockmann,sans-serif;font-size:var(--font-size-base);font-weight:600;color:var(--color-text-primary);margin:16px 0 8px}.empty-state-description{font-family:Brockmann,sans-serif;font-size:var(--font-size-sm);color:var(--color-text-secondary);margin:0}\n"], dependencies: [{ kind: "component", type: DsMobilePageMainComponent, selector: "ds-mobile-page-main", inputs: ["title", "headerTitle", "headerSubtitle", "avatarType", "avatarInitials", "avatarSrc", "avatarIconName", "showRefresh", "showCondensedHeader", "scrollThreshold", "headerFadeDistance", "profileMenuItems"], outputs: ["avatarClick", "profileActionSelected", "refresh", "scroll"] }, { kind: "component", type: DsMobileContentComponent, selector: "ds-mobile-content", inputs: ["layout"] }, { kind: "component", type: DsMobileInteractiveListItemInquiryComponent, selector: "ds-mobile-interactive-list-item-inquiry", inputs: ["title", "description", "status", "statusLabel", "timestamp", "iconName", "iconColor", "variant", "clickable", "showChevron"], outputs: ["inquiryClick", "longPress"] }, { kind: "component", type: DsIconComponent, selector: "ds-icon", inputs: ["name", "size", "color", "interactive"] }, { kind: "component", type: DsMobileInlineTabsComponent, selector: "ds-mobile-inline-tabs", inputs: ["tabs", "activeTab"], outputs: ["tabChange"] }, { kind: "component", type: DsMobileFabComponent, selector: "ds-mobile-fab", inputs: ["icon", "position", "size", "ariaLabel", "disabled"], outputs: ["fabClick"] }] });
|
|
17192
|
+
`, isInline: true, styles: [".inquiries-container{display:flex;flex-direction:column}.inquiry-list-wrapper{display:flex;flex-direction:column;margin-top:-8px}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;text-align:center}.empty-state-title{font-family:Brockmann,sans-serif;font-size:var(--font-size-base);font-weight:600;color:var(--color-text-primary);margin:16px 0 8px}.empty-state-description{font-family:Brockmann,sans-serif;font-size:var(--font-size-sm);color:var(--color-text-secondary);margin:0}\n"], dependencies: [{ kind: "component", type: DsMobilePageMainComponent, selector: "ds-mobile-page-main", inputs: ["title", "headerTitle", "headerSubtitle", "avatarType", "avatarInitials", "avatarSrc", "avatarIconName", "showRefresh", "showCondensedHeader", "scrollThreshold", "headerFadeDistance", "profileMenuItems"], outputs: ["avatarClick", "profileActionSelected", "refresh", "scroll"] }, { kind: "component", type: DsMobileContentComponent, selector: "ds-mobile-content", inputs: ["layout"] }, { kind: "component", type: DsMobileInteractiveListItemInquiryComponent, selector: "ds-mobile-interactive-list-item-inquiry", inputs: ["title", "description", "status", "statusLabel", "timestamp", "iconName", "iconColor", "variant", "clickable", "showChevron", "enableLongPress"], outputs: ["inquiryClick", "longPress"] }, { kind: "component", type: DsIconComponent, selector: "ds-icon", inputs: ["name", "size", "color", "interactive"] }, { kind: "component", type: DsMobileInlineTabsComponent, selector: "ds-mobile-inline-tabs", inputs: ["tabs", "activeTab"], outputs: ["tabChange"] }, { kind: "component", type: DsMobileFabComponent, selector: "ds-mobile-fab", inputs: ["icon", "position", "size", "ariaLabel", "disabled"], outputs: ["fabClick"] }] });
|
|
17087
17193
|
}
|
|
17088
17194
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: MobileInquiriesPageComponent, decorators: [{
|
|
17089
17195
|
type: Component,
|
|
@@ -17125,8 +17231,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
|
|
|
17125
17231
|
[iconName]="getInquiryIcon(inquiry.category)"
|
|
17126
17232
|
[clickable]="true"
|
|
17127
17233
|
[showChevron]="false"
|
|
17128
|
-
|
|
17129
|
-
(
|
|
17234
|
+
[enableLongPress]="false"
|
|
17235
|
+
(inquiryClick)="openInquiryDetail(inquiry.id)">
|
|
17130
17236
|
</ds-mobile-interactive-list-item-inquiry>
|
|
17131
17237
|
|
|
17132
17238
|
}
|
|
@@ -18252,7 +18358,7 @@ class MobilePostDetailPageComponent {
|
|
|
18252
18358
|
</div>
|
|
18253
18359
|
</div>
|
|
18254
18360
|
</ds-mobile-page-details>
|
|
18255
|
-
`, isInline: true, styles: [".post-detail-container{display:flex;flex-direction:column;gap:16px;max-width:640px}.post-section{border-bottom:1px solid var(--border-color-default);padding-bottom:16px}.clickable-image{cursor:pointer;transition:transform .2s ease,opacity .2s ease;border-radius:8px;display:block;width:100%;aspect-ratio:16/9;object-fit:cover}.clickable-image:active{transform:scale(.98);opacity:.9}.comments-section{display:flex;flex-direction:column;margin-left:-8px;margin-right:-8px}.comments-header{font-family:Brockmann,sans-serif;font-size:18px;font-weight:600;line-height:24px;color:var(--color-text-primary, #1a1a1a);margin-bottom:16px;padding-left:8px;padding-right:8px}.comments-list{display:flex;flex-direction:column}\n"], dependencies: [{ kind: "component", type: DsMobilePageDetailsComponent, selector: "ds-mobile-page-details", inputs: ["title", "backRoute", "tabs", "activeTab", "showRefresh", "scrollThreshold", "headerFadeDistance"], outputs: ["back", "tabChange", "refresh", "scroll"] }, { kind: "component", type: DsMobileInteractiveListItemPostComponent, selector: "ds-mobile-interactive-list-item-post", inputs: ["authorName", "authorRole", "timestamp", "avatarInitials", "avatarType", "avatarSrc", "avatarIconName", "showBadge", "variant", "clickable"], outputs: ["postClick", "commentClick", "longPress"] }, { kind: "component", type: PostContentComponent, selector: "post-content" }, { kind: "component", type: PostTextComponent, selector: "post-text" }, { kind: "component", type: PostMediaComponent, selector: "post-media" }, { kind: "component", type: PostActionsComponent, selector: "post-actions" }, { kind: "component", type: ActionLikeComponent, selector: "action-like", inputs: ["active", "count"], outputs: ["activeChange", "countChange", "likeClick"] }, { kind: "component", type: ActionCommentComponent, selector: "action-comment", inputs: ["count"], outputs: ["commentClick"] }, { kind: "component", type: DsMobileCommentComponent, selector: "ds-mobile-comment", inputs: ["authorName", "authorRole", "timestamp", "content", "avatarInitials", "avatarType", "clickable", "isOwnComment", "isLiked", "likeCount"], outputs: ["likeToggled", "commentClick", "replyClick", "editClick", "longPress"] }] });
|
|
18361
|
+
`, isInline: true, styles: [".post-detail-container{display:flex;flex-direction:column;gap:16px;max-width:640px}.post-section{border-bottom:1px solid var(--border-color-default);padding-bottom:16px}.clickable-image{cursor:pointer;transition:transform .2s ease,opacity .2s ease;border-radius:8px;display:block;width:100%;aspect-ratio:16/9;object-fit:cover}.clickable-image:active{transform:scale(.98);opacity:.9}.comments-section{display:flex;flex-direction:column;margin-left:-8px;margin-right:-8px}.comments-header{font-family:Brockmann,sans-serif;font-size:18px;font-weight:600;line-height:24px;color:var(--color-text-primary, #1a1a1a);margin-bottom:16px;padding-left:8px;padding-right:8px}.comments-list{display:flex;flex-direction:column}\n"], dependencies: [{ kind: "component", type: DsMobilePageDetailsComponent, selector: "ds-mobile-page-details", inputs: ["title", "backRoute", "tabs", "activeTab", "showRefresh", "scrollThreshold", "headerFadeDistance"], outputs: ["back", "tabChange", "refresh", "scroll"] }, { kind: "component", type: DsMobileInteractiveListItemPostComponent, selector: "ds-mobile-interactive-list-item-post", inputs: ["authorName", "authorRole", "timestamp", "avatarInitials", "avatarType", "avatarSrc", "avatarIconName", "showBadge", "variant", "clickable", "enableLongPress"], outputs: ["postClick", "commentClick", "longPress"] }, { kind: "component", type: PostContentComponent, selector: "post-content" }, { kind: "component", type: PostTextComponent, selector: "post-text" }, { kind: "component", type: PostMediaComponent, selector: "post-media" }, { kind: "component", type: PostActionsComponent, selector: "post-actions" }, { kind: "component", type: ActionLikeComponent, selector: "action-like", inputs: ["active", "count"], outputs: ["activeChange", "countChange", "likeClick"] }, { kind: "component", type: ActionCommentComponent, selector: "action-comment", inputs: ["count"], outputs: ["commentClick"] }, { kind: "component", type: DsMobileCommentComponent, selector: "ds-mobile-comment", inputs: ["authorName", "authorRole", "timestamp", "content", "avatarInitials", "avatarType", "clickable", "isOwnComment", "isLiked", "likeCount"], outputs: ["likeToggled", "commentClick", "replyClick", "editClick", "longPress"] }] });
|
|
18256
18362
|
}
|
|
18257
18363
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: MobilePostDetailPageComponent, decorators: [{
|
|
18258
18364
|
type: Component,
|