@propbinder/mobile-design 0.0.25 → 0.0.27

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
@@ -1486,6 +1486,48 @@ declare class DsMobileTabsComponent implements OnInit, AfterViewInit {
1486
1486
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<DsMobileTabsComponent, "ds-mobile-tabs", never, { "tabs": { "alias": "tabs"; "required": false; }; "avatarType": { "alias": "avatarType"; "required": false; }; "avatarInitials": { "alias": "avatarInitials"; "required": false; }; "avatarSrc": { "alias": "avatarSrc"; "required": false; }; "avatarIconName": { "alias": "avatarIconName"; "required": false; }; }, { "avatarClick": "avatarClick"; }, never, never, true, never>;
1487
1487
  }
1488
1488
 
1489
+ interface TabItem {
1490
+ id: string;
1491
+ label: string;
1492
+ badge?: number;
1493
+ }
1494
+ /**
1495
+ * DsMobileTabBarComponent
1496
+ *
1497
+ * Pill-style tab bar for filtering/switching views
1498
+ * Used in the purple header section of pages
1499
+ *
1500
+ * @example
1501
+ * ```html
1502
+ * <ds-mobile-tab-bar
1503
+ * [tabs]="[
1504
+ * { id: 'all', label: 'All' },
1505
+ * { id: 'open', label: 'Open' },
1506
+ * { id: 'closed', label: 'Closed' }
1507
+ * ]"
1508
+ * [activeTab]="'all'"
1509
+ * (tabChange)="handleTabChange($event)">
1510
+ * </ds-mobile-tab-bar>
1511
+ * ```
1512
+ */
1513
+ declare class DsMobileTabBarComponent {
1514
+ /**
1515
+ * Array of tab items to display
1516
+ */
1517
+ tabs: _angular_core.InputSignal<TabItem[]>;
1518
+ /**
1519
+ * Currently active tab ID
1520
+ */
1521
+ activeTab: _angular_core.InputSignal<string>;
1522
+ /**
1523
+ * Emitted when a tab is clicked
1524
+ */
1525
+ tabChange: _angular_core.OutputEmitterRef<string>;
1526
+ handleTabClick(tabId: string): void;
1527
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<DsMobileTabBarComponent, never>;
1528
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<DsMobileTabBarComponent, "ds-mobile-tab-bar", never, { "tabs": { "alias": "tabs"; "required": true; "isSignal": true; }; "activeTab": { "alias": "activeTab"; "required": true; "isSignal": true; }; }, { "tabChange": "tabChange"; }, never, never, true, never>;
1529
+ }
1530
+
1489
1531
  interface ActionResult {
1490
1532
  action: string;
1491
1533
  }
@@ -2668,6 +2710,55 @@ interface ContactItem {
2668
2710
  contactPerson?: string;
2669
2711
  phoneNumber?: string;
2670
2712
  }
2713
+ /**
2714
+ * DsMobileHandbookDetailModalComponent
2715
+ *
2716
+ * Modal wrapper for displaying handbook folder details.
2717
+ *
2718
+ * Features:
2719
+ * - Folder content display
2720
+ * - Items list with descriptions
2721
+ * - Images and attachments
2722
+ * - Contact information
2723
+ * - Native modal controls (close, swipe down)
2724
+ * - Safe area support
2725
+ *
2726
+ * This component is typically not used directly - use DsMobileHandbookDetailModalService instead.
2727
+ */
2728
+ declare class DsMobileHandbookDetailModalComponent {
2729
+ private modalController;
2730
+ handbookData: HandbookDetailData;
2731
+ handbook: _angular_core.WritableSignal<HandbookDetailData>;
2732
+ constructor(modalController: ModalController);
2733
+ ngOnInit(): void;
2734
+ /**
2735
+ * Split handbook items to enforce content structure rules:
2736
+ * - Never mix photos and documents (attachments) in the same section
2737
+ * - Never mix contact persons and attachments together in the same section
2738
+ *
2739
+ * This method splits items that violate these rules into multiple display items.
2740
+ * Each resulting item will have only compatible content types.
2741
+ */
2742
+ splitItemsByContentRules(item: HandbookItem): HandbookItem[];
2743
+ /**
2744
+ * Get all display items with enforced content structure rules applied
2745
+ */
2746
+ getDisplayItems(): HandbookItem[];
2747
+ /**
2748
+ * Close the modal
2749
+ */
2750
+ close(): void;
2751
+ /**
2752
+ * Handle contact click
2753
+ */
2754
+ handleContactClick(contact: ContactItem): void;
2755
+ /**
2756
+ * Handle attachment click
2757
+ */
2758
+ handleAttachmentClick(attachment: AttachmentItem): void;
2759
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<DsMobileHandbookDetailModalComponent, never>;
2760
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<DsMobileHandbookDetailModalComponent, "ds-mobile-handbook-detail-modal", never, { "handbookData": { "alias": "handbookData"; "required": false; }; }, {}, never, never, true, never>;
2761
+ }
2671
2762
 
2672
2763
  /**
2673
2764
  * DsMobileHandbookDetailModalService
@@ -2938,12 +3029,6 @@ declare class MobileHomePageComponent {
2938
3029
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<MobileHomePageComponent, "app-home-page", never, {}, {}, never, never, true, never>;
2939
3030
  }
2940
3031
 
2941
- interface TabItem {
2942
- id: string;
2943
- label: string;
2944
- badge?: number;
2945
- }
2946
-
2947
3032
  interface Inquiry {
2948
3033
  id: string;
2949
3034
  title: string;
@@ -3210,5 +3295,5 @@ declare const customPageTransition: (_: HTMLElement, opts: any) => Animation;
3210
3295
  */
3211
3296
  declare const customBackTransition: (_: HTMLElement, opts: any) => Animation;
3212
3297
 
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 };
3298
+ export { ActionCommentComponent, ActionLikeComponent, ContentRowComponent, DsMobileActionsBottomSheetComponent, DsMobileAppLayoutComponent, DsMobileBottomSheetService, DsMobileActionsBottomSheetComponent as DsMobileCommentActionsBottomSheetComponent, DsMobileCommentComponent, DsMobileContactListItemComponent, DsMobileContentComponent, DsMobileContentSectionComponent, DsMobileHandbookDetailModalComponent, DsMobileHandbookDetailModalService, 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, DsMobileTabBarComponent, 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 };
3299
+ export type { ActionGroup, ActionItem, ActionResult, AttachmentItem, BottomSheetOptions, ActionResult as CommentActionResult, CommentData, ContactItem, ContentWidth, HandbookDetailData, HandbookItem, HeaderVariant, LightboxAuthor, LightboxImage, LightboxImageOptions, LightboxMediaFile, LightboxMediaType, LightboxOptions, LightboxPdf, LightboxPdfOptions, ModalOptions, ActionResult as PostActionResult, PostDetailData, TabConfig$1 as TabConfig, TabItem };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@propbinder/mobile-design",
3
- "version": "0.0.25",
3
+ "version": "0.0.27",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^20.3.0 || ^21.0.0",
6
6
  "@angular/core": "^20.3.0 || ^21.0.0"