barsa-tiles 3.0.12 → 3.0.14

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": "barsa-tiles",
3
- "version": "3.0.12",
3
+ "version": "3.0.14",
4
4
  "peerDependencies": {
5
5
  "@angular/core": "^22.0.8",
6
6
  "@angular/common": "^22.0.8",
@@ -113,12 +113,14 @@ interface AppTile extends MetaobjectDataModel {
113
113
  AppTileGroup: MetaobjectDataModel;
114
114
  A_App_Component: EjrayOlgo;
115
115
  A_App_DynamicCommand: MetaobjectDataModel;
116
+ A_App_DisableDynamicCommand?: boolean;
116
117
  A_App_AppKey: string;
117
118
  Predefined: boolean;
118
119
  Predefined$Caption: string;
119
120
  App: MetaobjectDataModel;
120
121
  Component: EjrayOlgo;
121
122
  DynamicCommand: MetaobjectDataModel;
123
+ DisableDynamicCommand?: boolean;
122
124
  TileTitle: any;
123
125
  Subtitle: any;
124
126
  ColSpan2XL: string;
@@ -367,6 +369,7 @@ interface FormTileSetting extends BaseTileSetting {
367
369
  declare class FormTileComponent extends BaseBtTileComponent<FormTileSetting> implements OnInit {
368
370
  newId: string;
369
371
  params: {
372
+ isSimple: boolean;
370
373
  moId: string;
371
374
  typeDefId: string;
372
375
  viewId: string;
@@ -592,6 +595,8 @@ declare class TilesViewerContainerComponent extends ViewBase<TilesViewerContaine
592
595
  get stackContent$(): Observable<boolean>;
593
596
  get rtl$(): Observable<boolean>;
594
597
  get selectedAppGroupId(): string;
598
+ /** DisplayMode caption is stored with Arabic yeh (U+064A, 'تب بندي'); normalize it to Persian yeh before comparing. */
599
+ get isTabMode(): boolean;
595
600
  ngOnInit(): void;
596
601
  showError(message: string, code: number): void;
597
602
  ngOnDestroy(): void;
@@ -1139,6 +1144,18 @@ declare class TilePropPipe implements PipeTransform {
1139
1144
 
1140
1145
  /** کلید گروه‌های chip فیلتر نتایج جستجو (به‌جز «همه»). */
1141
1146
  type SuggestionGroupFilter = 'subsystem' | 'navgroup' | 'report' | 'command';
1147
+ /**
1148
+ * یک ورودی از فهرست واحد دستورات نوار (BTILES-006). ترتیب فهرست = ترتیب نمایش:
1149
+ * اول دستورات سراسری، بعد workflow، بعد منوهای گروهی.
1150
+ * `action` همان ورودی به شکل گره‌ی منوی ⋯ است.
1151
+ */
1152
+ interface ShellbarCommandEntry {
1153
+ id: string;
1154
+ kind: 'global' | 'workflow' | 'group';
1155
+ command?: ShellbarCommandAction;
1156
+ group?: ShellbarGroupedCommandMenu;
1157
+ action: ShellbarCommandAction;
1158
+ }
1142
1159
  interface ShellbarSetting extends MetaobjectDataModel {
1143
1160
  subtitle: string;
1144
1161
  calcSubtitle: string;
@@ -1232,6 +1249,10 @@ declare class BarsaShellbarComponent extends BaseComponent implements OnInit {
1232
1249
  comboboxComponent: ComboboxComponent;
1233
1250
  popoverComponent: PopoverComponent;
1234
1251
  _notificationsDialog: TemplateRef<any>;
1252
+ /** ظرف دستورات نوار؛ عرضش = فضای در اختیار دستورات (مستقل از تعداد دستورات نمایان). */
1253
+ commandsHost: ElementRef<HTMLElement>;
1254
+ /** لایه‌ی اندازه‌گیری پنهان که همه‌ی ورودی‌ها و دکمه‌ی ⋯ را با همان markup نوار رندر می‌کند. */
1255
+ commandsMeasure: ElementRef<HTMLElement>;
1235
1256
  /** گروه فعال فیلتر نتایج جستجو؛ `null` یعنی «همه». signal است تا view داخل dialog (OnPush) رفرش شود. */
1236
1257
  selectedSuggestionFilter: i0.WritableSignal<SuggestionGroupFilter | null>;
1237
1258
  isOpenNotificatoin: boolean;
@@ -1245,6 +1266,19 @@ declare class BarsaShellbarComponent extends BaseComponent implements OnInit {
1245
1266
  appVersion: string;
1246
1267
  /** روی موبایل اگه شل‌بار جا کم بیاره، تایتلِ برندینگ حذف می‌شه تا لوگو/آواتار از صفحه نزنن بیرون. */
1247
1268
  brandingTitleHidden: boolean;
1269
+ /** فهرست واحد دستورات نوار (سراسری، workflow، گروهی)؛ در `ngOnChanges` از روی inputها ساخته می‌شود. */
1270
+ readonly commandEntries: i0.WritableSignal<ShellbarCommandEntry[]>;
1271
+ /**
1272
+ * تعداد ورودی‌هایی که در نوار می‌مانند (priority+، BTILES-006). روی موبایل همه به ⋯ می‌روند؛
1273
+ * در بقیه‌ی اندازه‌ها از اندازه‌گیری عرض می‌آید (تا قبل از اولین اندازه‌گیری، همه نمایان‌اند).
1274
+ */
1275
+ readonly visibleCommandCount: i0.Signal<number>;
1276
+ /** ورودی‌های نمایان در نوار: `slice(0, visibleCount)`. */
1277
+ readonly visibleCommandEntries: i0.Signal<ShellbarCommandEntry[]>;
1278
+ /** ورودی‌های داخل منوی ⋯: `slice(visibleCount)`؛ هر ورودی یا این‌جاست یا در نوار (AC-3). */
1279
+ readonly hiddenCommandEntries: i0.Signal<ShellbarCommandEntry[]>;
1280
+ /** گره‌های منوی ⋯ (همان نگاشت `mobileCommandNodes`، فقط برای ورودی‌های پنهان). */
1281
+ readonly hiddenCommandNodes: i0.Signal<ShellbarCommandAction[]>;
1248
1282
  private _bbbTranslate;
1249
1283
  private _portalService;
1250
1284
  private _favoriteItems;
@@ -1255,16 +1289,27 @@ declare class BarsaShellbarComponent extends BaseComponent implements OnInit {
1255
1289
  private _dialogReference;
1256
1290
  private _titleWidth;
1257
1291
  private _brandingResizeObserver?;
1258
- /** در اندازه‌های کوچک و متوسط، دستورات به‌جای نمایش مستقیم داخل منوی overflow قرار می‌گیرند. */
1292
+ private _commandsResizeObserver?;
1293
+ private _commandMeasureFrame;
1294
+ /** نتیجه‌ی آخرین اندازه‌گیری؛ مقدار اولیه یعنی «همه نمایان» (fallback وقتی ResizeObserver نیست). */
1295
+ private readonly _measuredVisibleCount;
1296
+ private readonly _allCommandsInOverflow;
1297
+ /**
1298
+ * فقط روی موبایل (`'s'`) همه‌ی دستورات به‌جای نمایش مستقیم داخل منوی overflow (⋯) قرار می‌گیرند.
1299
+ * در بقیه‌ی اندازه‌ها سرریز priority+ است: فقط دستوراتی که جا نمی‌شوند به ⋯ می‌روند (BTILES-006).
1300
+ */
1259
1301
  get isCompactShellbar(): boolean;
1302
+ /** ظاهر منوی ⋯ در جایی که قبلاً هم ⋯ داشت (`'s'` و `'m'`) عوض نمی‌شود؛ در `'l'`/`'xl'` popover عادی است. */
1303
+ get isOverflowMenuMobile(): boolean;
1260
1304
  /**
1261
- * روی موبایل و تبلت همه‌ی دستورات (global + workflow + grouped) توی یک منوی overflow (⋯) جمع می‌شن
1262
- * تا شل‌بار سرریز نکنه و برندینگ/آواتار جا بمونن. این getter اون سه منبع رو به یک درختِ واحد ادغام می‌کنه.
1305
+ * همه‌ی دستورات (global + workflow + grouped) به شکل یک درختِ واحد، به همان ترتیب نوار.
1306
+ * منوی ⋯ زیرمجموعه‌ی انتهایی همین فهرست را نشان می‌دهد (`hiddenCommandNodes`).
1263
1307
  */
1264
1308
  get mobileCommandNodes(): ShellbarCommandAction[];
1265
1309
  constructor();
1266
1310
  ngOnInit(): void;
1267
1311
  ngOnChanges(changes: SimpleChanges): void;
1312
+ ngAfterViewInit(): void;
1268
1313
  ngOnDestroy(): void;
1269
1314
  onSearchSubmit(e: SearchInput): void;
1270
1315
  /**
@@ -1294,6 +1339,23 @@ declare class BarsaShellbarComponent extends BaseComponent implements OnInit {
1294
1339
  * تایتلِ برندینگ رو حذف می‌کنه. با hysteresis (پهنای تایتل + کمی فاصله) از نوسانِ پنهان/نمایان جلوگیری می‌شه.
1295
1340
  */
1296
1341
  private _initBrandingOverflowWatch;
1342
+ /**
1343
+ * سرریز priority+ دستورات (BTILES-006): عرض ظرف دستورات و عرض لایه‌ی اندازه‌گیری را با ResizeObserver
1344
+ * می‌پاید. لایه‌ی اندازه‌گیری هم پاییده می‌شود تا تغییر برچسب‌ها (زبان، فونت) هم بازمحاسبه شود.
1345
+ * اگر ResizeObserver نبود، همه‌ی دستورات نمایان می‌مانند (رفتار قبلی عرض کامل).
1346
+ */
1347
+ private _initCommandOverflowWatch;
1348
+ /** اندازه‌گیری را به فریم بعد (بعد از رندر) می‌برد و چند درخواست هم‌فریم را یکی می‌کند. */
1349
+ private _scheduleCommandMeasure;
1350
+ /**
1351
+ * عرض هر ورودی و دکمه‌ی ⋯ را از لایه‌ی اندازه‌گیری می‌خواند و `visibleCount` را با تابع خالص حساب می‌کند.
1352
+ * عرض ظرف (`flex: 1 1 0`، `min-width: 0`) به تعداد دستورات نمایان وابسته نیست، پس حلقه‌ی بازخورد نداریم —
1353
+ * به شرط override ِ کانتکست‌اریا در scss (10061): fundamental-ngx آن را `flex: none` می‌کند و بدون override،
1354
+ * `host.clientWidth` همان عرض دستورات نمایان می‌شد و شمارش فقط کم می‌شد، هیچ‌وقت زیاد.
1355
+ */
1356
+ private _measureCommands;
1357
+ /** فهرست واحد دستورات به ترتیب نوار؛ نگاشت هر ورودی به گره‌ی منوی ⋯ فقط همین‌جاست. */
1358
+ private _buildCommandEntries;
1297
1359
  private _closeSideMenu;
1298
1360
  private _changeCulture;
1299
1361
  static ɵfac: i0.ɵɵFactoryDeclaration<BarsaShellbarComponent, never>;