@propbinder/mobile-design 0.2.24 → 0.2.26
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.
|
@@ -2370,12 +2370,35 @@ class DsMobileProfileActionsSheetComponent {
|
|
|
2370
2370
|
}
|
|
2371
2371
|
}
|
|
2372
2372
|
ngOnInit() {
|
|
2373
|
-
//
|
|
2374
|
-
|
|
2373
|
+
// Try to get language from localStorage as fallback
|
|
2374
|
+
const storedLangCode = this.getLanguageFromStorage();
|
|
2375
|
+
if (storedLangCode) {
|
|
2376
|
+
this.selectedLanguage.set(storedLangCode);
|
|
2377
|
+
this.initialLanguage = storedLangCode;
|
|
2378
|
+
}
|
|
2379
|
+
else if (!this.selectedLanguage()) {
|
|
2380
|
+
// Fallback to input if storage is empty
|
|
2375
2381
|
this.selectedLanguage.set(this.currentLanguage);
|
|
2376
2382
|
this.initialLanguage = this.currentLanguage;
|
|
2377
2383
|
}
|
|
2378
2384
|
}
|
|
2385
|
+
/**
|
|
2386
|
+
* Try to resolve short language code from localStorage ('selectedLanguage' key)
|
|
2387
|
+
*/
|
|
2388
|
+
getLanguageFromStorage() {
|
|
2389
|
+
try {
|
|
2390
|
+
const stored = localStorage.getItem('selectedLanguage'); // e.g. "da-DK", "sv-SE"
|
|
2391
|
+
if (!stored)
|
|
2392
|
+
return null;
|
|
2393
|
+
// Find the code from availableLanguages that matches this locale/string
|
|
2394
|
+
// We check if any language code is part of the stored string (e.g. 'da' in 'da-DK')
|
|
2395
|
+
const match = this.availableLanguages.find(lang => lang.code === stored || stored.startsWith(lang.code + '-'));
|
|
2396
|
+
return match ? match.code : null;
|
|
2397
|
+
}
|
|
2398
|
+
catch (e) {
|
|
2399
|
+
return null;
|
|
2400
|
+
}
|
|
2401
|
+
}
|
|
2379
2402
|
/**
|
|
2380
2403
|
* Handle action item click
|
|
2381
2404
|
*/
|
|
@@ -16663,6 +16686,10 @@ class DsMobileIllustrationComponent {
|
|
|
16663
16686
|
* @default '120px'
|
|
16664
16687
|
*/
|
|
16665
16688
|
size = input('120px', ...(ngDevMode ? [{ debugName: "size" }] : []));
|
|
16689
|
+
/**
|
|
16690
|
+
* Accessible description for the illustration
|
|
16691
|
+
*/
|
|
16692
|
+
alt = input('', ...(ngDevMode ? [{ debugName: "alt" }] : []));
|
|
16666
16693
|
constructor(sanitizer) {
|
|
16667
16694
|
this.sanitizer = sanitizer;
|
|
16668
16695
|
}
|
|
@@ -16682,9 +16709,11 @@ class DsMobileIllustrationComponent {
|
|
|
16682
16709
|
return this.sanitizer.bypassSecurityTrustHtml(svg);
|
|
16683
16710
|
}, ...(ngDevMode ? [{ debugName: "svgContent" }] : []));
|
|
16684
16711
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: DsMobileIllustrationComponent, deps: [{ token: i1$3.DomSanitizer }], target: i0.ɵɵFactoryTarget.Component });
|
|
16685
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.3.16", type: DsMobileIllustrationComponent, isStandalone: true, selector: "ds-mobile-illustration", inputs: { variant: { classPropertyName: "variant", publicName: "variant", isSignal: true, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: `
|
|
16712
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.3.16", type: DsMobileIllustrationComponent, isStandalone: true, selector: "ds-mobile-illustration", inputs: { variant: { classPropertyName: "variant", publicName: "variant", isSignal: true, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, alt: { classPropertyName: "alt", publicName: "alt", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: `
|
|
16686
16713
|
<div
|
|
16687
16714
|
class="illustration-container"
|
|
16715
|
+
role="img"
|
|
16716
|
+
[attr.aria-label]="alt()"
|
|
16688
16717
|
[style.--illustration-size]="size()">
|
|
16689
16718
|
<div class="illustration-svg" [innerHTML]="svgContent()"></div>
|
|
16690
16719
|
<div class="illustration-gradient-overlay"></div>
|
|
@@ -16696,12 +16725,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImpo
|
|
|
16696
16725
|
args: [{ selector: 'ds-mobile-illustration', standalone: true, imports: [CommonModule], template: `
|
|
16697
16726
|
<div
|
|
16698
16727
|
class="illustration-container"
|
|
16728
|
+
role="img"
|
|
16729
|
+
[attr.aria-label]="alt()"
|
|
16699
16730
|
[style.--illustration-size]="size()">
|
|
16700
16731
|
<div class="illustration-svg" [innerHTML]="svgContent()"></div>
|
|
16701
16732
|
<div class="illustration-gradient-overlay"></div>
|
|
16702
16733
|
</div>
|
|
16703
16734
|
`, styles: [":host{display:inline-block;position:relative}.illustration-container{position:relative;width:var(--illustration-size);height:var(--illustration-size);display:flex;align-items:center;justify-content:center}.illustration-svg{width:100%;height:100%;display:block;position:relative;z-index:1}.illustration-svg :deep(svg){width:100%;height:100%;display:block}.illustration-gradient-overlay{position:absolute;inset:0;background:radial-gradient(125% 100% at center top,transparent 15%,white 80%);opacity:1;pointer-events:none;z-index:2}\n"] }]
|
|
16704
|
-
}], ctorParameters: () => [{ type: i1$3.DomSanitizer }], propDecorators: { variant: [{ type: i0.Input, args: [{ isSignal: true, alias: "variant", required: false }] }], size: [{ type: i0.Input, args: [{ isSignal: true, alias: "size", required: false }] }] } });
|
|
16735
|
+
}], ctorParameters: () => [{ type: i1$3.DomSanitizer }], propDecorators: { variant: [{ type: i0.Input, args: [{ isSignal: true, alias: "variant", required: false }] }], size: [{ type: i0.Input, args: [{ isSignal: true, alias: "size", required: false }] }], alt: [{ type: i0.Input, args: [{ isSignal: true, alias: "alt", required: false }] }] } });
|
|
16705
16736
|
|
|
16706
16737
|
/**
|
|
16707
16738
|
* DsMobilePropertyBannerComponent
|
|
@@ -18700,7 +18731,7 @@ class MobileHomePageComponent {
|
|
|
18700
18731
|
</div>
|
|
18701
18732
|
</ds-mobile-section>
|
|
18702
18733
|
</ds-mobile-page-main>
|
|
18703
|
-
`, isInline: true, styles: [".posts-list,.inquiries-list{display:flex;flex-direction:column}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:20px;text-align:center}.empty-state ds-button{display:block;margin-top:16px}.empty-state ds-button::ng-deep .btn{width:100%;border-radius:9999px}.empty-state-title{font-family:Brockmann,sans-serif;font-size:var(--font-size-base);font-weight:600;color:var(--color-text-primary);margin-top:-16px;z-index:4}.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: 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", "contentPadding", "profileMenuItems"], outputs: ["avatarClick", "profileActionSelected", "refresh", "scroll"] }, { kind: "component", type: DsMobileSectionComponent, selector: "ds-mobile-section", inputs: ["headline", "icon", "linkText", "padding", "gap", "contentGap", "showBorder", "overflow"], outputs: ["linkClick"] }, { kind: "component", type: DsMobileIllustrationComponent, selector: "ds-mobile-illustration", inputs: ["variant", "size"] }, { kind: "component", type: DsMobilePropertyBannerComponent, selector: "ds-mobile-property-banner", inputs: ["address", "photoUrl"] }, { 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: DsMobileOfflineBannerComponent, selector: "ds-mobile-offline-banner", inputs: ["icon", "title", "message"] }, { 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"] }] });
|
|
18734
|
+
`, isInline: true, styles: [".posts-list,.inquiries-list{display:flex;flex-direction:column}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:20px;text-align:center}.empty-state ds-button{display:block;margin-top:16px}.empty-state ds-button::ng-deep .btn{width:100%;border-radius:9999px}.empty-state-title{font-family:Brockmann,sans-serif;font-size:var(--font-size-base);font-weight:600;color:var(--color-text-primary);margin-top:-16px;z-index:4}.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: 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", "contentPadding", "profileMenuItems"], outputs: ["avatarClick", "profileActionSelected", "refresh", "scroll"] }, { kind: "component", type: DsMobileSectionComponent, selector: "ds-mobile-section", inputs: ["headline", "icon", "linkText", "padding", "gap", "contentGap", "showBorder", "overflow"], outputs: ["linkClick"] }, { kind: "component", type: DsMobileIllustrationComponent, selector: "ds-mobile-illustration", inputs: ["variant", "size", "alt"] }, { kind: "component", type: DsMobilePropertyBannerComponent, selector: "ds-mobile-property-banner", inputs: ["address", "photoUrl"] }, { 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: DsMobileOfflineBannerComponent, selector: "ds-mobile-offline-banner", inputs: ["icon", "title", "message"] }, { 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"] }] });
|
|
18704
18735
|
}
|
|
18705
18736
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: MobileHomePageComponent, decorators: [{
|
|
18706
18737
|
type: Component,
|
|
@@ -19025,7 +19056,7 @@ class MobileInquiriesPageComponent {
|
|
|
19025
19056
|
ariaLabel="Create new inquiry"
|
|
19026
19057
|
(clicked)="createNewInquiry()">
|
|
19027
19058
|
</ds-mobile-fab>
|
|
19028
|
-
`, isInline: true, styles: [".inquiry-list-wrapper{display:flex;flex-direction:column;margin-top:-12px}.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-top:-16px;z-index:4}.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", "contentPadding", "profileMenuItems"], outputs: ["avatarClick", "profileActionSelected", "refresh", "scroll"] }, { kind: "component", type: DsMobileSectionComponent, selector: "ds-mobile-section", inputs: ["headline", "icon", "linkText", "padding", "gap", "contentGap", "showBorder", "overflow"], outputs: ["linkClick"] }, { kind: "component", type: DsMobileIllustrationComponent, selector: "ds-mobile-illustration", inputs: ["variant", "size"] }, { 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: DsMobileInlineTabsComponent, selector: "ds-mobile-inline-tabs", inputs: ["tabs", "activeTab"], outputs: ["tabChange"] }, { kind: "component", type: DsMobileOfflineBannerComponent, selector: "ds-mobile-offline-banner", inputs: ["icon", "title", "message"] }, { kind: "component", type: DsMobileFabComponent, selector: "ds-mobile-fab", inputs: ["icon", "position", "size", "ariaLabel", "disabled"], outputs: ["clicked"] }] });
|
|
19059
|
+
`, isInline: true, styles: [".inquiry-list-wrapper{display:flex;flex-direction:column;margin-top:-12px}.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-top:-16px;z-index:4}.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", "contentPadding", "profileMenuItems"], outputs: ["avatarClick", "profileActionSelected", "refresh", "scroll"] }, { kind: "component", type: DsMobileSectionComponent, selector: "ds-mobile-section", inputs: ["headline", "icon", "linkText", "padding", "gap", "contentGap", "showBorder", "overflow"], outputs: ["linkClick"] }, { kind: "component", type: DsMobileIllustrationComponent, selector: "ds-mobile-illustration", inputs: ["variant", "size", "alt"] }, { 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: DsMobileInlineTabsComponent, selector: "ds-mobile-inline-tabs", inputs: ["tabs", "activeTab"], outputs: ["tabChange"] }, { kind: "component", type: DsMobileOfflineBannerComponent, selector: "ds-mobile-offline-banner", inputs: ["icon", "title", "message"] }, { kind: "component", type: DsMobileFabComponent, selector: "ds-mobile-fab", inputs: ["icon", "position", "size", "ariaLabel", "disabled"], outputs: ["clicked"] }] });
|
|
19029
19060
|
}
|
|
19030
19061
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: MobileInquiriesPageComponent, decorators: [{
|
|
19031
19062
|
type: Component,
|