@bitforgehq/ui 0.3.1 → 0.3.3

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.
Files changed (49) hide show
  1. package/CHANGELOG.md +157 -0
  2. package/README.md +9 -8
  3. package/ai/MANIFEST.index.json +18 -0
  4. package/ai/MANIFEST.json +380 -31
  5. package/ai/REFERENCE.index.json +63 -0
  6. package/ai/REFERENCE.json +265 -7
  7. package/ai/UI_GUIDE.md +59 -33
  8. package/ai/components/app-frame.md +335 -0
  9. package/ai/components/card.md +56 -2
  10. package/ai/components/empty-state.md +99 -6
  11. package/ai/components/header.md +14 -1
  12. package/ai/components/sidebar-toggle.md +287 -0
  13. package/ai/components/sidebar.md +188 -10
  14. package/ai/components/stat.md +74 -10
  15. package/ai/components/table.md +152 -5
  16. package/ai/components/tabs.md +5 -1
  17. package/ai/components/toolbar.md +69 -4
  18. package/ai/reference/bf-app-frame-breakpoint.md +27 -0
  19. package/ai/reference/bf-app-frame-content-width.md +29 -0
  20. package/ai/reference/bf-empty-state-heading-level.md +1 -1
  21. package/ai/reference/bf-empty-state-heading.md +33 -0
  22. package/ai/reference/bf-labels.md +7 -0
  23. package/ai/reference/bf-select-harness.md +4 -0
  24. package/ai/reference/bf-sidebar-state-service.md +21 -0
  25. package/ai/reference/bf-sidebar-toggle-harness.md +32 -0
  26. package/ai/reference/bf-size.md +1 -0
  27. package/ai/reference/bf-stat-appearance.md +33 -0
  28. package/ai/reference/bf-stat-variant.md +1 -1
  29. package/ai/reference/bf-table-harness.md +7 -1
  30. package/ai/reference/bf-table-stack.md +29 -0
  31. package/ai/reference/bf_sidebar_state_storage.md +20 -0
  32. package/ai/reference/provide-bf-labels.md +4 -3
  33. package/ai/reference/provide-bf-sidebar-state.md +20 -0
  34. package/bin/bf-ui.js +433 -3
  35. package/fesm2022/bitforgehq-ui-mobile.mjs +11 -2
  36. package/fesm2022/bitforgehq-ui-mobile.mjs.map +1 -1
  37. package/fesm2022/bitforgehq-ui-overlay.mjs +571 -446
  38. package/fesm2022/bitforgehq-ui-overlay.mjs.map +1 -1
  39. package/fesm2022/bitforgehq-ui-testing.mjs +22 -2
  40. package/fesm2022/bitforgehq-ui-testing.mjs.map +1 -1
  41. package/fesm2022/bitforgehq-ui.mjs +777 -127
  42. package/fesm2022/bitforgehq-ui.mjs.map +1 -1
  43. package/llms-full.txt +1605 -43
  44. package/llms.txt +11 -0
  45. package/package.json +1 -1
  46. package/theme.css +13 -0
  47. package/types/bitforgehq-ui-overlay.d.ts +51 -0
  48. package/types/bitforgehq-ui-testing.d.ts +49 -1
  49. package/types/bitforgehq-ui.d.ts +284 -20
@@ -404,6 +404,7 @@ var BfTableHarness = class BfTableHarness extends ComponentHarness {
404
404
  rows = this.locatorForAll("tbody tr[data-bf-table-row]");
405
405
  selectAllBox = this.locatorForOptional("thead input[type=\"checkbox\"]");
406
406
  rowBoxes = this.locatorForAll("tbody tr[data-bf-table-row] input[type=\"checkbox\"]");
407
+ sortSelect = this.locatorForOptional(BfSelectHarness.with({ ancestor: "[data-bf-table-stack-bar]" }));
407
408
  static with(filters = {}) {
408
409
  return new HarnessPredicate(BfTableHarness, filters).addOption("label", filters.label, async (harness, label) => HarnessPredicate.stringMatches(harness.getLabel(), label));
409
410
  }
@@ -414,7 +415,7 @@ var BfTableHarness = class BfTableHarness extends ComponentHarness {
414
415
  return (await this.rows()).length;
415
416
  }
416
417
  async getHeaderLabels() {
417
- return Promise.all((await this.headers()).map(async (th) => (await th.text()).trim()));
418
+ return Promise.all((await this.headers()).map(async (th) => (await th.text({ exclude: "[data-bf-stacked-label]" })).trim()));
418
419
  }
419
420
  async getCellText(row, column) {
420
421
  const index = await this.columnIndex(column);
@@ -438,6 +439,9 @@ var BfTableHarness = class BfTableHarness extends ComponentHarness {
438
439
  }
439
440
  return null;
440
441
  }
442
+ async getSortSelect() {
443
+ return this.sortSelect();
444
+ }
441
445
  async selectRow(index) {
442
446
  const box = (await this.rowBoxes())[index];
443
447
  if (!box) throw new Error(`BfTableHarness: no selectable row ${index}`);
@@ -1014,6 +1018,22 @@ var BfChartHarness = class BfChartHarness extends ComponentHarness {
1014
1018
  return button;
1015
1019
  }
1016
1020
  };
1017
- export { BfCalendarHarness, BfChartHarness, BfComboboxHarness, BfDateInputHarness, BfDateTimeInputHarness, BfDesktopToastHarness, BfDialogHarness, BfMenuButtonHarness, BfMenuHarness, BfMenuItemHarness, BfPaginationHarness, BfPopoverHarness, BfRadioGroupHarness, BfSegmentedHarness, BfSelectHarness, BfSidePanelHarness, BfTabGroupHarness, BfTableHarness, BfTimeInputHarness, BfTooltipHarness, installBfJsdomShims, provideBfTesting };
1021
+ var BfSidebarToggleHarness = class BfSidebarToggleHarness extends ComponentHarness {
1022
+ static hostSelector = "bf-sidebar-toggle";
1023
+ button = this.locatorFor("button");
1024
+ static with(filters = {}) {
1025
+ return new HarnessPredicate(BfSidebarToggleHarness, filters).addOption("label", filters.label, async (harness, label) => HarnessPredicate.stringMatches(harness.getLabel(), label));
1026
+ }
1027
+ async getLabel() {
1028
+ return await (await this.button()).getAttribute("aria-label") ?? "";
1029
+ }
1030
+ async isExpanded() {
1031
+ return await (await this.button()).getAttribute("aria-expanded") === "true";
1032
+ }
1033
+ async toggle() {
1034
+ await (await this.button()).click();
1035
+ }
1036
+ };
1037
+ export { BfCalendarHarness, BfChartHarness, BfComboboxHarness, BfDateInputHarness, BfDateTimeInputHarness, BfDesktopToastHarness, BfDialogHarness, BfMenuButtonHarness, BfMenuHarness, BfMenuItemHarness, BfPaginationHarness, BfPopoverHarness, BfRadioGroupHarness, BfSegmentedHarness, BfSelectHarness, BfSidePanelHarness, BfSidebarToggleHarness, BfTabGroupHarness, BfTableHarness, BfTimeInputHarness, BfTooltipHarness, installBfJsdomShims, provideBfTesting };
1018
1038
 
1019
1039
  //# sourceMappingURL=bitforgehq-ui-testing.mjs.map