@meshmakers/octo-meshboard 3.4.370 → 3.4.400

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@meshmakers/octo-meshboard",
3
- "version": "3.4.370",
3
+ "version": "3.4.400",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^22.0.0",
6
6
  "@angular/core": "^22.0.0",
@@ -5890,6 +5890,27 @@ declare class EntitySelectorToolbarComponent implements OnChanges {
5890
5890
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<EntitySelectorToolbarComponent, "mm-entity-selector-toolbar", never, { "entitySelectors": { "alias": "entitySelectors"; "required": false; }; }, { "entitySelected": "entitySelected"; "entityCleared": "entityCleared"; }, never, never, true, never>;
5891
5891
  }
5892
5892
 
5893
+ /**
5894
+ * Presentation-side compact layout for the MeshBoard grid (AB#4353).
5895
+ *
5896
+ * The Kendo TileLayout renders its configured column count at any container
5897
+ * width — on a 390px phone a 6-column board yields ~42px columns and crushes
5898
+ * every widget. Below the breakpoints the board therefore re-renders with a
5899
+ * reduced column count and drops the persisted col/row anchors so CSS grid
5900
+ * auto-flow re-packs the widgets in the reading order of the configured
5901
+ * layout. The persisted board config is never modified; editing (drag/resize)
5902
+ * is only offered in the native tier.
5903
+ */
5904
+ type MeshBoardCompactTier = 'none' | 'tablet' | 'phone';
5905
+ /** Display placement for one grid widget; col/row are undefined in compact tiers (auto-flow). */
5906
+ interface WidgetPlacement {
5907
+ widget: AnyWidgetConfig;
5908
+ col?: number;
5909
+ row?: number;
5910
+ colSpan: number;
5911
+ rowSpan: number;
5912
+ }
5913
+
5893
5914
  interface WidgetPositionUpdate {
5894
5915
  id: string;
5895
5916
  title: string;
@@ -5985,6 +6006,15 @@ declare class MeshBoardViewComponent implements OnInit, OnDestroy, HasUnsavedCha
5985
6006
  protected readonly gridWidgets: _angular_core.Signal<AnyWidgetConfig[]>;
5986
6007
  protected readonly hasGridWidgets: _angular_core.Signal<boolean>;
5987
6008
  protected readonly canSave: _angular_core.Signal<boolean>;
6009
+ private readonly hostElement;
6010
+ private readonly ngZone;
6011
+ private resizeObserver?;
6012
+ private readonly containerWidth;
6013
+ protected readonly compactTier: _angular_core.Signal<MeshBoardCompactTier>;
6014
+ protected readonly displayColumns: _angular_core.Signal<number>;
6015
+ protected readonly displayAutoFlow: _angular_core.Signal<"column" | "row">;
6016
+ protected readonly canEditLayout: _angular_core.Signal<boolean>;
6017
+ protected readonly displayGridWidgets: _angular_core.Signal<WidgetPlacement[]>;
5988
6018
  protected readonly isTimeFilterEnabled: _angular_core.Signal<boolean>;
5989
6019
  protected readonly timeFilterConfig: _angular_core.Signal<_meshmakers_octo_meshboard.MeshBoardTimeFilterConfig | undefined>;
5990
6020
  private readonly _urlTimeSelection;