@propbinder/mobile-design 0.0.1 → 0.0.21

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/index.d.ts CHANGED
@@ -2,8 +2,9 @@ import * as _angular_core from '@angular/core';
2
2
  import { AfterViewInit, ElementRef, OnDestroy, EventEmitter, OnInit, ApplicationRef, EnvironmentInjector, Type } from '@angular/core';
3
3
  import { IonContent, NavController, ModalController, GestureController } from '@ionic/angular/standalone';
4
4
  import { ImpactStyle } from '@capacitor/haptics';
5
- import { Router } from '@angular/router';
5
+ import { Router, ActivatedRoute } from '@angular/router';
6
6
  import { BreakpointObserver } from '@angular/cdk/layout';
7
+ import { Animation } from '@ionic/angular';
7
8
 
8
9
  /**
9
10
  * Content width preset values
@@ -1367,7 +1368,7 @@ declare class DsMobileContactListItemComponent {
1367
1368
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<DsMobileContactListItemComponent, "ds-mobile-contact-list-item", never, { "name": { "alias": "name"; "required": true; "isSignal": true; }; "initials": { "alias": "initials"; "required": true; "isSignal": true; }; "contactPerson": { "alias": "contactPerson"; "required": false; "isSignal": true; }; "phoneNumber": { "alias": "phoneNumber"; "required": false; "isSignal": true; }; "clickable": { "alias": "clickable"; "required": false; "isSignal": true; }; "showChevron": { "alias": "showChevron"; "required": false; "isSignal": true; }; }, { "contactClick": "contactClick"; }, never, never, true, never>;
1368
1369
  }
1369
1370
 
1370
- interface TabConfig$1 {
1371
+ interface TabConfig$2 {
1371
1372
  id: string;
1372
1373
  label: string;
1373
1374
  route: string;
@@ -1410,7 +1411,7 @@ declare class DsMobileAppLayoutComponent implements AfterViewInit {
1410
1411
  showBackButton: _angular_core.InputSignal<boolean>;
1411
1412
  showPullToRefresh: _angular_core.InputSignal<boolean>;
1412
1413
  showTabBar: _angular_core.InputSignal<boolean>;
1413
- tabs: _angular_core.InputSignal<TabConfig$1[]>;
1414
+ tabs: _angular_core.InputSignal<TabConfig$2[]>;
1414
1415
  avatarType: _angular_core.InputSignal<"initials" | "photo" | "icon">;
1415
1416
  avatarInitials: _angular_core.InputSignal<string>;
1416
1417
  avatarSrc: _angular_core.InputSignal<string>;
@@ -1435,7 +1436,7 @@ declare class DsMobileAppLayoutComponent implements AfterViewInit {
1435
1436
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<DsMobileAppLayoutComponent, "ds-mobile-app-layout", never, { "headerVariant": { "alias": "headerVariant"; "required": false; "isSignal": true; }; "pageTitle": { "alias": "pageTitle"; "required": false; "isSignal": true; }; "showBackButton": { "alias": "showBackButton"; "required": false; "isSignal": true; }; "showPullToRefresh": { "alias": "showPullToRefresh"; "required": false; "isSignal": true; }; "showTabBar": { "alias": "showTabBar"; "required": false; "isSignal": true; }; "tabs": { "alias": "tabs"; "required": false; "isSignal": true; }; "avatarType": { "alias": "avatarType"; "required": false; "isSignal": true; }; "avatarInitials": { "alias": "avatarInitials"; "required": false; "isSignal": true; }; "avatarSrc": { "alias": "avatarSrc"; "required": false; "isSignal": true; }; "avatarIconName": { "alias": "avatarIconName"; "required": false; "isSignal": true; }; }, { "backClick": "backClick"; "refresh": "refresh"; "avatarClick": "avatarClick"; "scroll": "scroll"; }, never, ["*"], true, never>;
1436
1437
  }
1437
1438
 
1438
- interface TabConfig {
1439
+ interface TabConfig$1 {
1439
1440
  id: string;
1440
1441
  label: string;
1441
1442
  route: string;
@@ -1463,7 +1464,7 @@ interface TabConfig {
1463
1464
  */
1464
1465
  declare class DsMobileTabsComponent implements OnInit, AfterViewInit {
1465
1466
  private elementRef;
1466
- tabs: TabConfig[];
1467
+ tabs: TabConfig$1[];
1467
1468
  avatarType: 'initials' | 'photo' | 'icon';
1468
1469
  avatarInitials: string;
1469
1470
  avatarSrc: string;
@@ -1478,7 +1479,7 @@ declare class DsMobileTabsComponent implements OnInit, AfterViewInit {
1478
1479
  ngOnDestroy(): void;
1479
1480
  private setupTitleRemovalObserver;
1480
1481
  private removeTitleAttributes;
1481
- trackByTabId(index: number, tab: TabConfig): string;
1482
+ trackByTabId(index: number, tab: TabConfig$1): string;
1482
1483
  isTabActive(tabId: string): boolean;
1483
1484
  handleAvatarClick(): void;
1484
1485
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<DsMobileTabsComponent, never>;
@@ -2856,5 +2857,358 @@ declare class DsMobileHandbookFolderMiniComponent {
2856
2857
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<DsMobileHandbookFolderMiniComponent, "ds-mobile-handbook-folder-mini", never, { "variant": { "alias": "variant"; "required": false; }; "iconName": { "alias": "iconName"; "required": false; }; }, {}, never, never, true, never>;
2857
2858
  }
2858
2859
 
2859
- export { ActionCommentComponent, ActionLikeComponent, ContentRowComponent, DsMobileActionsBottomSheetComponent, DsMobileAppLayoutComponent, DsMobileBottomSheetService, DsMobileActionsBottomSheetComponent as DsMobileCommentActionsBottomSheetComponent, DsMobileCommentComponent, DsMobileContactListItemComponent, DsMobileContentComponent, DsMobileContentSectionComponent, DsMobileHandbookFolderComponent, DsMobileHandbookFolderMiniComponent, DsMobileHeaderContentComponent, DsMobileHeaderContentTileComponent, DsMobileInlinePhotoComponent, DsMobileInteractiveListItemInquiryComponent, DsMobileInteractiveListItemMessageComponent, DsMobileInteractiveListItemPostComponent, DsMobileLightboxImageComponent as DsMobileLightboxComponent, DsMobileLightboxFooterComponent, DsMobileLightboxHeaderComponent, DsMobileLightboxImageComponent, DsMobileLightboxPdfComponent, DsMobileLightboxService, DsMobileListItemComponent, DsMobileLongPressDirective, DsMobileModalService, DsMobilePageDetailsComponent, DsMobilePageMainComponent, DsMobileActionsBottomSheetComponent as DsMobilePostActionsBottomSheetComponent, DsMobilePostCardComponent, DsMobilePostComposerComponent, DsMobilePostCreateBottomSheetComponent, DsMobilePostDetailModalComponent, DsMobilePostDetailModalService, DsMobileTabsComponent, MobilePageBase, PostActionsComponent, PostAttachmentsComponent, PostContentComponent, PostMediaComponent, PostPdfAttachmentComponent, PostTextComponent, SectionHeaderComponent, TileContentComponent, TileIconComponent, TileLabelComponent, TileValueComponent };
2860
- export type { ActionGroup, ActionItem, ActionResult, BottomSheetOptions, ActionResult as CommentActionResult, CommentData, ContentWidth, HeaderVariant, LightboxAuthor, LightboxImage, LightboxImageOptions, LightboxMediaFile, LightboxMediaType, LightboxOptions, LightboxPdf, LightboxPdfOptions, ModalOptions, ActionResult as PostActionResult, PostDetailData, TabConfig };
2860
+ /**
2861
+ * User service for managing current user data globally
2862
+ */
2863
+ declare class UserService {
2864
+ private _avatarInitials;
2865
+ private _avatarType;
2866
+ private _avatarSrc;
2867
+ readonly avatarInitials: _angular_core.Signal<string>;
2868
+ readonly avatarType: _angular_core.Signal<"initials" | "photo" | "icon">;
2869
+ readonly avatarSrc: _angular_core.Signal<string>;
2870
+ /**
2871
+ * Update avatar configuration
2872
+ */
2873
+ setAvatarInitials(initials: string): void;
2874
+ setAvatarType(type: 'initials' | 'photo' | 'icon'): void;
2875
+ setAvatarSrc(src: string): void;
2876
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<UserService, never>;
2877
+ static ɵprov: _angular_core.ɵɵInjectableDeclaration<UserService>;
2878
+ }
2879
+
2880
+ declare class MobileCommunityPageComponent {
2881
+ private router;
2882
+ private route;
2883
+ private bottomSheet;
2884
+ private lightbox;
2885
+ private postModal;
2886
+ userService: UserService;
2887
+ userPosts: _angular_core.WritableSignal<any[]>;
2888
+ showStaticPosts: _angular_core.WritableSignal<boolean>;
2889
+ hasAnyPosts: _angular_core.Signal<boolean>;
2890
+ constructor(router: Router, route: ActivatedRoute, bottomSheet: DsMobileBottomSheetService, lightbox: DsMobileLightboxService, postModal: DsMobilePostDetailModalService, userService: UserService);
2891
+ handleRefresh(event: any): void;
2892
+ /**
2893
+ * Open post detail modal
2894
+ * This provides a better UX than route navigation:
2895
+ * - Maintains scroll position
2896
+ * - Native iOS-style modal feel
2897
+ * - Proper close button that works
2898
+ */
2899
+ openPost(postId: string, focusComment?: boolean): Promise<void>;
2900
+ /**
2901
+ * Open user-created post detail modal
2902
+ */
2903
+ openUserPost(index: number, focusComment?: boolean): Promise<void>;
2904
+ openPostCreator(): Promise<void>;
2905
+ /**
2906
+ * Open an image in the lightbox viewer
2907
+ * Prevents the post click event from firing
2908
+ */
2909
+ openImageLightbox(imageSrc: string, title: string, description: string, event: Event): Promise<void>;
2910
+ openHouseRulesPdf(): Promise<void>;
2911
+ /**
2912
+ * Handle long press on a post to show action sheet
2913
+ */
2914
+ handlePostLongPress(postIdOrIndex: string | number, isOwnPost: boolean): Promise<void>;
2915
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<MobileCommunityPageComponent, never>;
2916
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<MobileCommunityPageComponent, "app-mobile-community-page", never, {}, {}, never, never, true, never>;
2917
+ }
2918
+
2919
+ declare class MobileHandbookPageComponent {
2920
+ userService: UserService;
2921
+ utilitiesItems: HandbookItem[];
2922
+ sikkerhedsudstyrItems: HandbookItem[];
2923
+ serviceContractsItems: HandbookItem[];
2924
+ equipmentItems: HandbookItem[];
2925
+ constructor(userService: UserService);
2926
+ handleRefresh(event: any): void;
2927
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<MobileHandbookPageComponent, never>;
2928
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<MobileHandbookPageComponent, "app-mobile-handbook-page", never, {}, {}, never, never, true, never>;
2929
+ }
2930
+
2931
+ declare class MobileHomePageComponent {
2932
+ private navCtrl;
2933
+ userService: UserService;
2934
+ constructor(navCtrl: NavController, userService: UserService);
2935
+ handleRefresh(event: any): void;
2936
+ navigateToDetail(): void;
2937
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<MobileHomePageComponent, never>;
2938
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<MobileHomePageComponent, "app-home-page", never, {}, {}, never, never, true, never>;
2939
+ }
2940
+
2941
+ interface TabItem {
2942
+ id: string;
2943
+ label: string;
2944
+ badge?: number;
2945
+ }
2946
+
2947
+ interface Inquiry {
2948
+ id: string;
2949
+ title: string;
2950
+ description: string;
2951
+ status: 'open' | 'closed';
2952
+ timestamp: string;
2953
+ category: 'maintenance' | 'plumbing' | 'electrical' | 'heating' | 'security' | 'appliance' | 'other';
2954
+ }
2955
+ declare class MobileInquiriesPageComponent {
2956
+ userService: UserService;
2957
+ private navCtrl;
2958
+ constructor(userService: UserService, navCtrl: NavController);
2959
+ filterStatus: _angular_core.WritableSignal<"open" | "closed" | "all">;
2960
+ tabItems: TabItem[];
2961
+ inquiries: _angular_core.WritableSignal<Inquiry[]>;
2962
+ filteredInquiries: _angular_core.Signal<Inquiry[]>;
2963
+ openInquiries: _angular_core.Signal<Inquiry[]>;
2964
+ closedInquiries: _angular_core.Signal<Inquiry[]>;
2965
+ setFilter(status: 'all' | 'open' | 'closed'): void;
2966
+ getInquiryIcon(category: string): string;
2967
+ openInquiryDetail(inquiryId: string): void;
2968
+ showInquiryActions(inquiryId: string): void;
2969
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<MobileInquiriesPageComponent, never>;
2970
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<MobileInquiriesPageComponent, "app-mobile-inquiries-page", never, {}, {}, never, never, true, never>;
2971
+ }
2972
+
2973
+ interface ActivityItem {
2974
+ id: string;
2975
+ type: 'assignment' | 'status_change' | 'creation';
2976
+ actor?: string;
2977
+ actorInitials?: string;
2978
+ title: string;
2979
+ description?: string;
2980
+ timestamp: string;
2981
+ date: string;
2982
+ iconName: string;
2983
+ iconBgColor?: string;
2984
+ }
2985
+ interface MessageThread {
2986
+ id: string;
2987
+ senderName: string;
2988
+ senderAvatar: string;
2989
+ senderInitials: string;
2990
+ message: string;
2991
+ role: string;
2992
+ timestamp: string;
2993
+ unread: boolean;
2994
+ }
2995
+ declare class MobileInquiryDetailPageComponent extends MobilePageBase implements AfterViewInit {
2996
+ userService: UserService;
2997
+ private navCtrl;
2998
+ private elementRef;
2999
+ ionContent?: IonContent;
3000
+ private platform;
3001
+ isNativePlatform: _angular_core.Signal<boolean>;
3002
+ inquiryTitle: string;
3003
+ activeTab: _angular_core.WritableSignal<string>;
3004
+ tabItems: TabItem[];
3005
+ activities: ActivityItem[];
3006
+ messageThreads: MessageThread[];
3007
+ unreadMessagesCount: _angular_core.Signal<number>;
3008
+ constructor(userService: UserService, navCtrl: NavController, elementRef: ElementRef);
3009
+ ngAfterViewInit(): void;
3010
+ setActiveTab(tabId: string): void;
3011
+ goBack(): void;
3012
+ handleScroll(event: any): void;
3013
+ handleRefresh(event: any): void;
3014
+ openMessage(messageId: string): void;
3015
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<MobileInquiryDetailPageComponent, never>;
3016
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<MobileInquiryDetailPageComponent, "app-mobile-inquiry-detail-page", never, {}, {}, never, never, true, never>;
3017
+ }
3018
+
3019
+ interface TabConfig {
3020
+ id: string;
3021
+ label: string;
3022
+ route: string;
3023
+ icon: string;
3024
+ iconActive: string;
3025
+ }
3026
+
3027
+ declare class MobileTabsExampleComponent implements OnInit {
3028
+ userService: UserService;
3029
+ private modalController;
3030
+ private router;
3031
+ constructor(userService: UserService, modalController: ModalController, router: Router);
3032
+ ngOnInit(): void;
3033
+ tabs: TabConfig[];
3034
+ handleAvatarClick(): Promise<void>;
3035
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<MobileTabsExampleComponent, never>;
3036
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<MobileTabsExampleComponent, "app-mobile-tabs-example", never, {}, {}, never, never, true, never>;
3037
+ }
3038
+
3039
+ /**
3040
+ * PostCreatePageComponent
3041
+ *
3042
+ * Full-screen detail page for creating new posts in the community feed.
3043
+ * Features Threads-inspired interface with rich text editing capabilities.
3044
+ */
3045
+ declare class PostCreatePageComponent implements AfterViewInit, OnInit {
3046
+ private router;
3047
+ private route;
3048
+ userService: UserService;
3049
+ textareaInput?: ElementRef<HTMLTextAreaElement>;
3050
+ postContent: string;
3051
+ username: _angular_core.WritableSignal<string>;
3052
+ placeholder: _angular_core.WritableSignal<string>;
3053
+ isEditMode: _angular_core.WritableSignal<boolean>;
3054
+ postId: _angular_core.WritableSignal<string | null>;
3055
+ pageTitle: _angular_core.WritableSignal<string>;
3056
+ submitButtonLabel: _angular_core.WritableSignal<string>;
3057
+ constructor(router: Router, route: ActivatedRoute, userService: UserService);
3058
+ ngOnInit(): void;
3059
+ ngAfterViewInit(): void;
3060
+ handleInput(): void;
3061
+ canPost(): boolean;
3062
+ handleCancel(): void;
3063
+ handlePost(): void;
3064
+ handleAddImage(): void;
3065
+ handleAddEmoji(): void;
3066
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<PostCreatePageComponent, never>;
3067
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<PostCreatePageComponent, "app-post-create-page", never, {}, {}, never, never, true, never>;
3068
+ }
3069
+
3070
+ declare class MobilePostDetailPageComponent {
3071
+ private lightbox;
3072
+ private bottomSheet;
3073
+ repliesCount: number;
3074
+ constructor(lightbox: DsMobileLightboxService, bottomSheet: DsMobileBottomSheetService);
3075
+ /**
3076
+ * Open an image in the lightbox viewer
3077
+ */
3078
+ openImageLightbox(imageSrc: string, title: string, description: string): void;
3079
+ /**
3080
+ * Handle long press on a comment to show action sheet
3081
+ */
3082
+ handleCommentLongPress(authorName: string, content: string, isOwnComment: boolean): Promise<void>;
3083
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<MobilePostDetailPageComponent, never>;
3084
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<MobilePostDetailPageComponent, "app-mobile-post-detail-page", never, {}, {}, never, never, true, never>;
3085
+ }
3086
+
3087
+ interface WhitelabelConfig {
3088
+ logoUrl: string;
3089
+ logoMarkUrl: string;
3090
+ logoAlt: string;
3091
+ logoWidth?: number;
3092
+ logoHeight?: number;
3093
+ logoMarkWidth?: number;
3094
+ logoMarkHeight?: number;
3095
+ primaryColor: string;
3096
+ secondaryColor: string;
3097
+ organizationName: string;
3098
+ organizationId: string;
3099
+ }
3100
+ /**
3101
+ * WhitelabelService
3102
+ *
3103
+ * Manages whitelabel configuration including logos and brand colors.
3104
+ * Automatically updates CSS custom properties when colors change.
3105
+ *
3106
+ * @example
3107
+ * Initialize with custom config:
3108
+ * ```typescript
3109
+ * whitelabelService.initialize({
3110
+ * logoUrl: '/assets/logos/acme-logo.svg',
3111
+ * logoMarkUrl: '/assets/logos/acme-mark.svg',
3112
+ * primaryColor: '#2563eb',
3113
+ * secondaryColor: '#3b82f6',
3114
+ * organizationName: 'Acme Corp'
3115
+ * });
3116
+ * ```
3117
+ *
3118
+ * Load from API:
3119
+ * ```typescript
3120
+ * await whitelabelService.loadFromApi('acme-corp');
3121
+ * ```
3122
+ */
3123
+ declare class WhitelabelService {
3124
+ private _config;
3125
+ readonly logoUrl: () => string;
3126
+ readonly logoMarkUrl: () => string;
3127
+ readonly logoAlt: () => string;
3128
+ readonly primaryColor: () => string;
3129
+ readonly secondaryColor: () => string;
3130
+ readonly organizationName: () => string;
3131
+ readonly organizationId: () => string;
3132
+ readonly config: _angular_core.Signal<WhitelabelConfig>;
3133
+ constructor();
3134
+ /**
3135
+ * Initialize whitelabel configuration
3136
+ * Call this early in app initialization (app.config.ts or app.component.ts)
3137
+ */
3138
+ initialize(config: Partial<WhitelabelConfig>): void;
3139
+ /**
3140
+ * Load whitelabel config from API
3141
+ * Typically called on app startup based on subdomain, user tenant, etc.
3142
+ *
3143
+ * @param organizationId - The organization identifier (subdomain, tenant ID, etc.)
3144
+ */
3145
+ loadFromApi(organizationId?: string): Promise<void>;
3146
+ /**
3147
+ * Update config dynamically (e.g., when user switches organizations)
3148
+ */
3149
+ updateConfig(updates: Partial<WhitelabelConfig>): void;
3150
+ /**
3151
+ * Update only the brand colors
3152
+ */
3153
+ updateColors(primaryColor: string, secondaryColor: string): void;
3154
+ /**
3155
+ * Reset to default configuration
3156
+ */
3157
+ resetToDefault(): void;
3158
+ /**
3159
+ * Apply colors to CSS custom properties
3160
+ * This updates the actual CSS variables used throughout the app
3161
+ */
3162
+ private applyColors;
3163
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<WhitelabelService, never>;
3164
+ static ɵprov: _angular_core.ɵɵInjectableDeclaration<WhitelabelService>;
3165
+ }
3166
+
3167
+ /**
3168
+ * Whitelabel Demo Page
3169
+ *
3170
+ * Demonstrates the whitelabeling system with live color and logo switching.
3171
+ */
3172
+ declare class WhitelabelDemoPage implements OnInit {
3173
+ whitelabelService: WhitelabelService;
3174
+ customPrimaryColor: string;
3175
+ customSecondaryColor: string;
3176
+ uploadedFullLogoName: string;
3177
+ uploadedLogomarkName: string;
3178
+ ngOnInit(): void;
3179
+ handleFullLogoUpload(event: Event): void;
3180
+ handleLogomarkUpload(event: Event): void;
3181
+ resetFullLogo(): void;
3182
+ resetLogomark(): void;
3183
+ configJson(): string;
3184
+ applyDefaultTheme(): void;
3185
+ applyBlueTheme(): void;
3186
+ applyGreenTheme(): void;
3187
+ applyOrangeTheme(): void;
3188
+ applyCustomColors(): void;
3189
+ private updateCustomColorInputs;
3190
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<WhitelabelDemoPage, never>;
3191
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<WhitelabelDemoPage, "app-whitelabel-demo", never, {}, {}, never, never, true, never>;
3192
+ }
3193
+
3194
+ /**
3195
+ * Custom page transition - iOS-style push/pop
3196
+ *
3197
+ * FORWARD (navigating TO detail):
3198
+ * - Entering page (detail): slides in from RIGHT, z-index 10 (on top)
3199
+ * - Leaving page (list): slides LEFT slightly, z-index 9 (underneath)
3200
+ *
3201
+ * REVERSE (swipe back FROM detail):
3202
+ * - Entering page (list): slides in from LEFT, z-index 9 (underneath)
3203
+ * - Leaving page (detail): slides out to RIGHT, z-index 10 (on top)
3204
+ */
3205
+ declare const customPageTransition: (_: HTMLElement, opts: any) => Animation;
3206
+ /**
3207
+ * Custom back transition - iOS style where page slides out to reveal page underneath
3208
+ * The entering page (inquiries) slides in from the LEFT underneath
3209
+ * The leaving page (detail) slides out to the RIGHT on top
3210
+ */
3211
+ declare const customBackTransition: (_: HTMLElement, opts: any) => Animation;
3212
+
3213
+ export { ActionCommentComponent, ActionLikeComponent, ContentRowComponent, DsMobileActionsBottomSheetComponent, DsMobileAppLayoutComponent, DsMobileBottomSheetService, DsMobileActionsBottomSheetComponent as DsMobileCommentActionsBottomSheetComponent, DsMobileCommentComponent, DsMobileContactListItemComponent, DsMobileContentComponent, DsMobileContentSectionComponent, DsMobileHandbookFolderComponent, DsMobileHandbookFolderMiniComponent, DsMobileHeaderContentComponent, DsMobileHeaderContentTileComponent, DsMobileInlinePhotoComponent, DsMobileInteractiveListItemInquiryComponent, DsMobileInteractiveListItemMessageComponent, DsMobileInteractiveListItemPostComponent, DsMobileLightboxImageComponent as DsMobileLightboxComponent, DsMobileLightboxFooterComponent, DsMobileLightboxHeaderComponent, DsMobileLightboxImageComponent, DsMobileLightboxPdfComponent, DsMobileLightboxService, DsMobileListItemComponent, DsMobileLongPressDirective, DsMobileModalService, DsMobilePageDetailsComponent, DsMobilePageMainComponent, DsMobileActionsBottomSheetComponent as DsMobilePostActionsBottomSheetComponent, DsMobilePostCardComponent, DsMobilePostComposerComponent, DsMobilePostCreateBottomSheetComponent, DsMobilePostDetailModalComponent, DsMobilePostDetailModalService, DsMobileTabsComponent, MobileCommunityPageComponent, MobileHandbookPageComponent, MobileHomePageComponent, MobileInquiriesPageComponent, MobileInquiryDetailPageComponent, MobilePageBase, MobilePostDetailPageComponent, MobileTabsExampleComponent, PostActionsComponent, PostAttachmentsComponent, PostContentComponent, PostCreatePageComponent, PostMediaComponent, PostPdfAttachmentComponent, PostTextComponent, SectionHeaderComponent, TileContentComponent, TileIconComponent, TileLabelComponent, TileValueComponent, UserService, WhitelabelDemoPage, customBackTransition, customPageTransition };
3214
+ export type { ActionGroup, ActionItem, ActionResult, BottomSheetOptions, ActionResult as CommentActionResult, CommentData, ContentWidth, HeaderVariant, LightboxAuthor, LightboxImage, LightboxImageOptions, LightboxMediaFile, LightboxMediaType, LightboxOptions, LightboxPdf, LightboxPdfOptions, ModalOptions, ActionResult as PostActionResult, PostDetailData, TabConfig$1 as TabConfig };
package/package.json CHANGED
@@ -1,9 +1,9 @@
1
1
  {
2
2
  "name": "@propbinder/mobile-design",
3
- "version": "0.0.1",
3
+ "version": "0.0.21",
4
4
  "peerDependencies": {
5
- "@angular/common": "^20.3.0",
6
- "@angular/core": "^20.3.0"
5
+ "@angular/common": "^20.3.0 || ^21.0.0",
6
+ "@angular/core": "^20.3.0 || ^21.0.0"
7
7
  },
8
8
  "dependencies": {
9
9
  "tslib": "^2.3.0"