@almadar/ui 5.78.0 → 5.79.0

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 (63) hide show
  1. package/dist/avl/index.cjs +6 -6
  2. package/dist/avl/index.css +3 -3
  3. package/dist/avl/index.js +6 -6
  4. package/dist/components/core/atoms/FlipContainer.d.ts +1 -1
  5. package/dist/components/core/molecules/Card.d.ts +1 -1
  6. package/dist/components/core/molecules/DataGrid.d.ts +1 -1
  7. package/dist/components/core/molecules/DataList.d.ts +1 -1
  8. package/dist/components/core/molecules/DocPagination.d.ts +8 -1
  9. package/dist/components/core/molecules/DocSearch.d.ts +8 -1
  10. package/dist/components/core/molecules/FlipCard.d.ts +1 -1
  11. package/dist/components/core/molecules/MapView.d.ts +18 -1
  12. package/dist/components/core/molecules/PropertyInspector.d.ts +2 -0
  13. package/dist/components/core/molecules/SortableList.d.ts +1 -1
  14. package/dist/components/core/molecules/TableView.d.ts +1 -1
  15. package/dist/components/core/organisms/DataTable.d.ts +1 -1
  16. package/dist/components/core/organisms/debug/RuntimeDebugger.d.ts +10 -1
  17. package/dist/components/core/organisms/debug/tabs/EntitiesTab.d.ts +2 -1
  18. package/dist/components/core/organisms/debug/tabs/EventDispatcherTab.d.ts +2 -1
  19. package/dist/components/core/organisms/debug/tabs/EventFlowTab.d.ts +6 -1
  20. package/dist/components/core/organisms/debug/tabs/GuardsPanel.d.ts +6 -1
  21. package/dist/components/core/organisms/debug/tabs/ServerBridgeTab.d.ts +12 -1
  22. package/dist/components/core/organisms/debug/tabs/TicksTab.d.ts +2 -1
  23. package/dist/components/core/organisms/debug/tabs/TraitsTab.d.ts +2 -1
  24. package/dist/components/core/organisms/debug/tabs/TransitionTimeline.d.ts +11 -1
  25. package/dist/components/core/organisms/debug/tabs/VerificationTab.d.ts +8 -1
  26. package/dist/components/game/2d/atoms/ActionButton.d.ts +2 -1
  27. package/dist/components/game/2d/atoms/ChoiceButton.d.ts +2 -1
  28. package/dist/components/game/2d/atoms/ComboCounter.d.ts +2 -1
  29. package/dist/components/game/2d/atoms/ControlButton.d.ts +2 -1
  30. package/dist/components/game/2d/atoms/DamageNumber.d.ts +2 -1
  31. package/dist/components/game/2d/atoms/DialogueBubble.d.ts +2 -1
  32. package/dist/components/game/2d/atoms/GameIcon.d.ts +2 -1
  33. package/dist/components/game/2d/atoms/HealthBar.d.ts +2 -1
  34. package/dist/components/game/2d/atoms/ItemSlot.d.ts +2 -1
  35. package/dist/components/game/2d/atoms/MiniMap.d.ts +2 -1
  36. package/dist/components/game/2d/atoms/ResourceCounter.d.ts +2 -1
  37. package/dist/components/game/2d/atoms/ScoreDisplay.d.ts +2 -1
  38. package/dist/components/game/2d/atoms/StatusEffect.d.ts +2 -1
  39. package/dist/components/game/2d/atoms/TimerDisplay.d.ts +2 -1
  40. package/dist/components/game/2d/atoms/TurnIndicator.d.ts +2 -1
  41. package/dist/components/game/2d/atoms/WaypointMarker.d.ts +2 -1
  42. package/dist/components/game/2d/molecules/GameHud.d.ts +2 -1
  43. package/dist/components/game/2d/molecules/GameMenu.d.ts +2 -1
  44. package/dist/components/game/2d/molecules/InventoryGrid.d.ts +2 -1
  45. package/dist/components/game/2d/molecules/ResourceBar.d.ts +2 -1
  46. package/dist/components/game/2d/molecules/StatBadge.d.ts +2 -1
  47. package/dist/components/game/shared/lib/editorUtils.d.ts +8 -8
  48. package/dist/components/index.cjs +11 -6
  49. package/dist/components/index.css +3 -3
  50. package/dist/components/index.js +11 -6
  51. package/dist/hooks/useGitHub.d.ts +7 -7
  52. package/dist/marketing/index.cjs +2 -2
  53. package/dist/marketing/index.js +2 -2
  54. package/dist/providers/EventBusProvider.d.ts +1 -1
  55. package/dist/providers/SelectionProvider.d.ts +1 -1
  56. package/dist/providers/ServerBridge.d.ts +1 -1
  57. package/dist/providers/index.cjs +2 -2
  58. package/dist/providers/index.css +3 -3
  59. package/dist/providers/index.js +2 -2
  60. package/dist/runtime/index.cjs +2 -2
  61. package/dist/runtime/index.css +3 -3
  62. package/dist/runtime/index.js +2 -2
  63. package/package.json +1 -1
@@ -630,7 +630,7 @@ var init_AvlFieldType = __esm({
630
630
  }
631
631
  });
632
632
 
633
- // node_modules/clsx/dist/clsx.mjs
633
+ // node_modules/.pnpm/clsx@2.1.1/node_modules/clsx/dist/clsx.mjs
634
634
  function r(e) {
635
635
  var t, f3, n = "";
636
636
  if ("string" == typeof e || "number" == typeof e) n += e;
@@ -645,11 +645,11 @@ function clsx() {
645
645
  return n;
646
646
  }
647
647
  var init_clsx = __esm({
648
- "node_modules/clsx/dist/clsx.mjs"() {
648
+ "node_modules/.pnpm/clsx@2.1.1/node_modules/clsx/dist/clsx.mjs"() {
649
649
  }
650
650
  });
651
651
 
652
- // node_modules/tailwind-merge/dist/bundle-mjs.mjs
652
+ // node_modules/.pnpm/tailwind-merge@2.6.1/node_modules/tailwind-merge/dist/bundle-mjs.mjs
653
653
  function twJoin() {
654
654
  let index = 0;
655
655
  let argument;
@@ -693,7 +693,7 @@ function createTailwindMerge(createConfigFirst, ...createConfigRest) {
693
693
  }
694
694
  var CLASS_PART_SEPARATOR, createClassGroupUtils, getGroupRecursive, arbitraryPropertyRegex, getGroupIdForArbitraryProperty, createClassMap, processClassesRecursively, getPart, isThemeGetter, getPrefixedClassGroupEntries, createLruCache, IMPORTANT_MODIFIER, createParseClassName, sortModifiers, createConfigUtils, SPLIT_CLASSES_REGEX, mergeClassList, toValue, fromTheme, arbitraryValueRegex, fractionRegex, stringLengths, tshirtUnitRegex, lengthUnitRegex, colorFunctionRegex, shadowRegex, imageRegex, isLength, isArbitraryLength, isNumber, isArbitraryNumber, isInteger, isPercent, isArbitraryValue, isTshirtSize, sizeLabels, isArbitrarySize, isArbitraryPosition, imageLabels, isArbitraryImage, isArbitraryShadow, isAny, getIsArbitraryValue, isLengthOnly, isNever, isShadow, isImage, getDefaultConfig, twMerge;
695
695
  var init_bundle_mjs = __esm({
696
- "node_modules/tailwind-merge/dist/bundle-mjs.mjs"() {
696
+ "node_modules/.pnpm/tailwind-merge@2.6.1/node_modules/tailwind-merge/dist/bundle-mjs.mjs"() {
697
697
  CLASS_PART_SEPARATOR = "-";
698
698
  createClassGroupUtils = (config) => {
699
699
  const classMap = createClassMap(config);
@@ -25680,9 +25680,9 @@ var init_BiologyCanvas = __esm({
25680
25680
  }
25681
25681
  });
25682
25682
 
25683
- // node_modules/katex/dist/katex.min.css
25683
+ // node_modules/.pnpm/katex@0.16.47/node_modules/katex/dist/katex.min.css
25684
25684
  var init_katex_min = __esm({
25685
- "node_modules/katex/dist/katex.min.css"() {
25685
+ "node_modules/.pnpm/katex@0.16.47/node_modules/katex/dist/katex.min.css"() {
25686
25686
  }
25687
25687
  });
25688
25688
  var Tabs;
@@ -1,4 +1,4 @@
1
- /* node_modules/katex/dist/katex.min.css */
1
+ /* node_modules/.pnpm/katex@0.16.47/node_modules/katex/dist/katex.min.css */
2
2
  @font-face {
3
3
  font-display: block;
4
4
  font-family: KaTeX_AMS;
@@ -214,11 +214,11 @@
214
214
  border-color: currentColor;
215
215
  }
216
216
  .katex .katex-version:after {
217
- content: "0.16.45";
217
+ content: "0.16.47";
218
218
  }
219
219
  .katex .katex-mathml {
220
- clip: rect(1px, 1px, 1px, 1px);
221
220
  border: 0;
221
+ clip-path: inset(50%);
222
222
  height: 1px;
223
223
  overflow: hidden;
224
224
  padding: 0;
package/dist/avl/index.js CHANGED
@@ -584,7 +584,7 @@ var init_AvlFieldType = __esm({
584
584
  }
585
585
  });
586
586
 
587
- // node_modules/clsx/dist/clsx.mjs
587
+ // node_modules/.pnpm/clsx@2.1.1/node_modules/clsx/dist/clsx.mjs
588
588
  function r(e) {
589
589
  var t, f3, n = "";
590
590
  if ("string" == typeof e || "number" == typeof e) n += e;
@@ -599,11 +599,11 @@ function clsx() {
599
599
  return n;
600
600
  }
601
601
  var init_clsx = __esm({
602
- "node_modules/clsx/dist/clsx.mjs"() {
602
+ "node_modules/.pnpm/clsx@2.1.1/node_modules/clsx/dist/clsx.mjs"() {
603
603
  }
604
604
  });
605
605
 
606
- // node_modules/tailwind-merge/dist/bundle-mjs.mjs
606
+ // node_modules/.pnpm/tailwind-merge@2.6.1/node_modules/tailwind-merge/dist/bundle-mjs.mjs
607
607
  function twJoin() {
608
608
  let index = 0;
609
609
  let argument;
@@ -647,7 +647,7 @@ function createTailwindMerge(createConfigFirst, ...createConfigRest) {
647
647
  }
648
648
  var CLASS_PART_SEPARATOR, createClassGroupUtils, getGroupRecursive, arbitraryPropertyRegex, getGroupIdForArbitraryProperty, createClassMap, processClassesRecursively, getPart, isThemeGetter, getPrefixedClassGroupEntries, createLruCache, IMPORTANT_MODIFIER, createParseClassName, sortModifiers, createConfigUtils, SPLIT_CLASSES_REGEX, mergeClassList, toValue, fromTheme, arbitraryValueRegex, fractionRegex, stringLengths, tshirtUnitRegex, lengthUnitRegex, colorFunctionRegex, shadowRegex, imageRegex, isLength, isArbitraryLength, isNumber, isArbitraryNumber, isInteger, isPercent, isArbitraryValue, isTshirtSize, sizeLabels, isArbitrarySize, isArbitraryPosition, imageLabels, isArbitraryImage, isArbitraryShadow, isAny, getIsArbitraryValue, isLengthOnly, isNever, isShadow, isImage, getDefaultConfig, twMerge;
649
649
  var init_bundle_mjs = __esm({
650
- "node_modules/tailwind-merge/dist/bundle-mjs.mjs"() {
650
+ "node_modules/.pnpm/tailwind-merge@2.6.1/node_modules/tailwind-merge/dist/bundle-mjs.mjs"() {
651
651
  CLASS_PART_SEPARATOR = "-";
652
652
  createClassGroupUtils = (config) => {
653
653
  const classMap = createClassMap(config);
@@ -25634,9 +25634,9 @@ var init_BiologyCanvas = __esm({
25634
25634
  }
25635
25635
  });
25636
25636
 
25637
- // node_modules/katex/dist/katex.min.css
25637
+ // node_modules/.pnpm/katex@0.16.47/node_modules/katex/dist/katex.min.css
25638
25638
  var init_katex_min = __esm({
25639
- "node_modules/katex/dist/katex.min.css"() {
25639
+ "node_modules/.pnpm/katex@0.16.47/node_modules/katex/dist/katex.min.css"() {
25640
25640
  }
25641
25641
  });
25642
25642
  var Tabs;
@@ -16,6 +16,6 @@ export interface FlipContainerProps {
16
16
  onClick?: () => void;
17
17
  }
18
18
  export declare const FlipContainer: {
19
- ({ flipped, className, children, onClick, }: FlipContainerProps): import("react/jsx-runtime").JSX.Element;
19
+ ({ flipped, className, children, onClick, }: FlipContainerProps): React.JSX.Element;
20
20
  displayName: string;
21
21
  };
@@ -51,7 +51,7 @@ export interface CardProps {
51
51
  /**
52
52
  * Card component for displaying content in a contained box
53
53
  */
54
- export declare function Card({ title, subtitle, image, actions, children, onClick, className, action, longPressEvent, longPressPayload, }: CardProps): import("react/jsx-runtime").JSX.Element;
54
+ export declare function Card({ title, subtitle, image, actions, children, onClick, className, action, longPressEvent, longPressPayload, }: CardProps): React.JSX.Element;
55
55
  export declare namespace Card {
56
56
  var displayName: string;
57
57
  }
@@ -111,7 +111,7 @@ export interface DataGridProps extends DataDndProps {
111
111
  */
112
112
  look?: "dense" | "spacious" | "striped" | "borderless" | "card-rows";
113
113
  }
114
- export declare function DataGrid({ entity, fields, columns, itemActions, maxInlineActions, scrollX, cols, gap, minCardWidth, className, isLoading, error, imageField, selectable, selectionEvent, infiniteScroll, loadMoreEvent, hasMore, children, pageSize, renderItem: schemaRenderItem, dragGroup, accepts, sortable, dropEvent, reorderEvent, positionEvent, dndItemIdField, dndRoot, look, }: DataGridProps): string | number | bigint | boolean | import("react/jsx-runtime").JSX.Element | Iterable<React.ReactNode> | Promise<string | number | bigint | boolean | React.ReactPortal | React.ReactElement<unknown, string | React.JSXElementConstructor<any>> | Iterable<React.ReactNode> | null | undefined> | null | undefined;
114
+ export declare function DataGrid({ entity, fields, columns, itemActions, maxInlineActions, scrollX, cols, gap, minCardWidth, className, isLoading, error, imageField, selectable, selectionEvent, infiniteScroll, loadMoreEvent, hasMore, children, pageSize, renderItem: schemaRenderItem, dragGroup, accepts, sortable, dropEvent, reorderEvent, positionEvent, dndItemIdField, dndRoot, look, }: DataGridProps): string | number | bigint | boolean | React.JSX.Element | Iterable<React.ReactNode> | Promise<string | number | bigint | boolean | React.ReactPortal | React.ReactElement<unknown, string | React.JSXElementConstructor<any>> | Iterable<React.ReactNode> | null | undefined> | null | undefined;
115
115
  export declare namespace DataGrid {
116
116
  var displayName: string;
117
117
  }
@@ -123,7 +123,7 @@ export interface DataListProps extends DataDndProps {
123
123
  */
124
124
  look?: "dense" | "spacious" | "striped" | "borderless" | "card-rows";
125
125
  }
126
- export declare function DataList({ entity, fields, columns, itemActions, maxInlineActions, itemClickEvent, gap, variant, groupBy, senderField, currentUser, className, isLoading, error, reorderable: _reorderable, reorderEvent: _reorderEvent, swipeLeftEvent: _swipeLeftEvent, swipeLeftActions: _swipeLeftActions, swipeRightEvent: _swipeRightEvent, swipeRightActions: _swipeRightActions, longPressEvent: _longPressEvent, infiniteScroll, loadMoreEvent, hasMore, children, pageSize, renderItem: schemaRenderItem, dragGroup, accepts, sortable: sortableProp, dropEvent, reorderEvent: dndReorderEvent, positionEvent, dndItemIdField, dndRoot, look, }: DataListProps): string | number | bigint | boolean | import("react/jsx-runtime").JSX.Element | Iterable<React.ReactNode> | Promise<string | number | bigint | boolean | React.ReactPortal | React.ReactElement<unknown, string | React.JSXElementConstructor<any>> | Iterable<React.ReactNode> | null | undefined> | null | undefined;
126
+ export declare function DataList({ entity, fields, columns, itemActions, maxInlineActions, itemClickEvent, gap, variant, groupBy, senderField, currentUser, className, isLoading, error, reorderable: _reorderable, reorderEvent: _reorderEvent, swipeLeftEvent: _swipeLeftEvent, swipeLeftActions: _swipeLeftActions, swipeRightEvent: _swipeRightEvent, swipeRightActions: _swipeRightActions, longPressEvent: _longPressEvent, infiniteScroll, loadMoreEvent, hasMore, children, pageSize, renderItem: schemaRenderItem, dragGroup, accepts, sortable: sortableProp, dropEvent, reorderEvent: dndReorderEvent, positionEvent, dndItemIdField, dndRoot, look, }: DataListProps): string | number | bigint | boolean | React.JSX.Element | Iterable<React.ReactNode> | Promise<string | number | bigint | boolean | React.ReactPortal | React.ReactElement<unknown, string | React.JSXElementConstructor<any>> | Iterable<React.ReactNode> | null | undefined> | null | undefined;
127
127
  export declare namespace DataList {
128
128
  var displayName: string;
129
129
  }
@@ -1,3 +1,10 @@
1
+ /**
2
+ * DocPagination Molecule
3
+ *
4
+ * Previous/Next navigation links for documentation pages.
5
+ * Composed from HStack, Box, VStack, Icon, and Typography atoms.
6
+ */
7
+ import React from 'react';
1
8
  export interface DocPaginationLink {
2
9
  label: string;
3
10
  href: string;
@@ -11,4 +18,4 @@ export interface DocPaginationProps {
11
18
  /** Additional class names */
12
19
  className?: string;
13
20
  }
14
- export declare function DocPagination({ prev, next, className }: DocPaginationProps): import("react/jsx-runtime").JSX.Element | null;
21
+ export declare function DocPagination({ prev, next, className }: DocPaginationProps): React.JSX.Element | null;
@@ -1,3 +1,10 @@
1
+ /**
2
+ * DocSearch — documentation search input with inline results dropdown (distinct from SearchInput).
3
+ * SearchInput emits bus events for entity-list filtering with debounce.
4
+ * DocSearch drives a callback-based result list with keyboard navigation and
5
+ * popover dropdown; designed for docs site navigation, not data-list filtering.
6
+ */
7
+ import React from 'react';
1
8
  export interface DocSearchResult {
2
9
  title: string;
3
10
  href: string;
@@ -12,4 +19,4 @@ export interface DocSearchProps {
12
19
  /** Additional class names */
13
20
  className?: string;
14
21
  }
15
- export declare function DocSearch({ placeholder, onSearch, className, }: DocSearchProps): import("react/jsx-runtime").JSX.Element;
22
+ export declare function DocSearch({ placeholder, onSearch, className, }: DocSearchProps): React.JSX.Element;
@@ -19,6 +19,6 @@ export interface FlipCardProps {
19
19
  height?: string;
20
20
  }
21
21
  export declare const FlipCard: {
22
- ({ front, back, flipped, onFlip, className, height, }: FlipCardProps): import("react/jsx-runtime").JSX.Element;
22
+ ({ front, back, flipped, onFlip, className, height, }: FlipCardProps): React.JSX.Element;
23
23
  displayName: string;
24
24
  };
@@ -1,3 +1,20 @@
1
+ /**
2
+ * MapView Molecule Component
3
+ *
4
+ * Interactive map using react-leaflet with OpenStreetMap tiles.
5
+ * Supports both programmatic callbacks (onMapClick) and schema-driven
6
+ * event dispatch (mapClickEvent) via the event bus.
7
+ *
8
+ * Why this file looks weird: Leaflet's core/Util.js evaluates
9
+ * `window.requestAnimationFrame` at module load time, which crashes any
10
+ * SSR/SSG environment (Docusaurus, Next.js RSC, etc.) the moment a
11
+ * consumer statically imports something that transitively reaches MapView.
12
+ * To stay SSR-safe, the actual leaflet bindings are loaded lazily inside
13
+ * a `React.lazy(async () => …)` callback so the leaflet module is only
14
+ * evaluated when the component is rendered for the first time, which
15
+ * never happens on the server because Suspense shows the fallback there.
16
+ */
17
+ import React from 'react';
1
18
  import type { EventEmit } from '@almadar/core';
2
19
  export type MapMarkerData = {
3
20
  /** Unique marker identifier */
@@ -67,4 +84,4 @@ export interface MapViewProps {
67
84
  * lazy implementation finishes loading on the client) so SSR never reaches
68
85
  * the leaflet code.
69
86
  */
70
- export declare function MapView(props: MapViewProps): import("react/jsx-runtime").JSX.Element;
87
+ export declare function MapView(props: MapViewProps): React.JSX.Element;
@@ -25,6 +25,8 @@ export interface PropertyInspectorProps extends DisplayStateProps {
25
25
  title?: string;
26
26
  /** Browsable asset catalog supplied to `asset`-typed fields' AssetPicker. */
27
27
  assets?: AssetCatalog;
28
+ /** If provided, only fields whose `@tier` is in this list are rendered. */
29
+ tiers?: ReadonlyArray<string>;
28
30
  }
29
31
  export declare function FieldControl({ name, decl, value, onChange, assets, }: {
30
32
  name: string;
@@ -14,6 +14,6 @@ export interface SortableListProps {
14
14
  dragHandlePosition?: 'left' | 'right';
15
15
  className?: string;
16
16
  }
17
- declare function SortableListInner({ items: initialItemsProp, renderItem, reorderEvent, reorderPayload, dragHandlePosition, className, }: SortableListProps): import("react/jsx-runtime").JSX.Element;
17
+ declare function SortableListInner({ items: initialItemsProp, renderItem, reorderEvent, reorderPayload, dragHandlePosition, className, }: SortableListProps): React.JSX.Element;
18
18
  export declare const SortableList: typeof SortableListInner;
19
19
  export {};
@@ -105,7 +105,7 @@ export interface TableViewProps extends DataDndProps {
105
105
  */
106
106
  look?: 'dense' | 'spacious' | 'striped' | 'borderless' | 'bordered';
107
107
  }
108
- export declare function TableView({ entity, columns, fields, itemActions, maxInlineActions, selectable, selectEvent, selectedIds, sortEvent, sortColumn, sortDirection, className, emptyMessage, isLoading, error, groupBy, pageSize, children, renderItem: _schemaRenderItem, look, dragGroup, accepts, sortable, dropEvent, reorderEvent, positionEvent, dndItemIdField, dndRoot, }: TableViewProps): import("react/jsx-runtime").JSX.Element;
108
+ export declare function TableView({ entity, columns, fields, itemActions, maxInlineActions, selectable, selectEvent, selectedIds, sortEvent, sortColumn, sortDirection, className, emptyMessage, isLoading, error, groupBy, pageSize, children, renderItem: _schemaRenderItem, look, dragGroup, accepts, sortable, dropEvent, reorderEvent, positionEvent, dndItemIdField, dndRoot, }: TableViewProps): React.JSX.Element;
109
109
  export declare namespace TableView {
110
110
  var displayName: string;
111
111
  }
@@ -69,7 +69,7 @@ export interface DataTableProps<T extends EntityRow & {
69
69
  }
70
70
  export declare function DataTable<T extends EntityRow & {
71
71
  id: string | number;
72
- }>({ fields, columns, entity, itemActions, isLoading, error, emptyIcon, emptyTitle, emptyDescription, emptyAction, selectable, selectedIds, sortBy, sortDirection, searchable, searchValue, searchPlaceholder, page, pageSize, totalCount, rowActions: externalRowActions, bulkActions, headerActions, showTotal, className, look, }: DataTableProps<T>): import("react/jsx-runtime").JSX.Element;
72
+ }>({ fields, columns, entity, itemActions, isLoading, error, emptyIcon, emptyTitle, emptyDescription, emptyAction, selectable, selectedIds, sortBy, sortDirection, searchable, searchValue, searchPlaceholder, page, pageSize, totalCount, rowActions: externalRowActions, bulkActions, headerActions, showTotal, className, look, }: DataTableProps<T>): React.JSX.Element;
73
73
  export declare namespace DataTable {
74
74
  var displayName: string;
75
75
  }
@@ -1,3 +1,12 @@
1
+ /**
2
+ * RuntimeDebugger - Main debug panel for KFlow applications
3
+ *
4
+ * Press backtick (`) to toggle. Displays traits, ticks, entities, events,
5
+ * guards, verification checks, transition timeline, and server bridge health.
6
+ *
7
+ * @packageDocumentation
8
+ */
9
+ import * as React from 'react';
1
10
  import type { OrbitalSchema } from '@almadar/core';
2
11
  import './RuntimeDebugger.css';
3
12
  export interface RuntimeDebuggerProps {
@@ -14,7 +23,7 @@ export interface RuntimeDebuggerProps {
14
23
  /** Raw schema for EventDispatcherTab payload extraction */
15
24
  schema?: OrbitalSchema;
16
25
  }
17
- export declare function RuntimeDebugger({ position, defaultCollapsed, className, mode, defaultTab, schema, }: RuntimeDebuggerProps): import("react/jsx-runtime").JSX.Element | null;
26
+ export declare function RuntimeDebugger({ position, defaultCollapsed, className, mode, defaultTab, schema, }: RuntimeDebuggerProps): React.JSX.Element | null;
18
27
  export declare namespace RuntimeDebugger {
19
28
  var displayName: string;
20
29
  }
@@ -2,11 +2,12 @@
2
2
  * EntitiesTab - Displays entity snapshots
3
3
  * Uses existing component library atoms/molecules.
4
4
  */
5
+ import * as React from 'react';
5
6
  import type { EntitySnapshot } from '../../../../../lib/entityDebug';
6
7
  interface EntitiesTabProps {
7
8
  snapshot: EntitySnapshot | null;
8
9
  }
9
- export declare function EntitiesTab({ snapshot }: EntitiesTabProps): import("react/jsx-runtime").JSX.Element;
10
+ export declare function EntitiesTab({ snapshot }: EntitiesTabProps): React.JSX.Element;
10
11
  export declare namespace EntitiesTab {
11
12
  var displayName: string;
12
13
  }
@@ -4,13 +4,14 @@
4
4
  * Shows available transitions per trait based on current state,
5
5
  * lets users click to fire events, and displays a compact transition log.
6
6
  */
7
+ import * as React from 'react';
7
8
  import type { OrbitalSchema } from '@almadar/core';
8
9
  import type { TraitDebugInfo } from '../../../../../lib/traitRegistry';
9
10
  interface EventDispatcherTabProps {
10
11
  traits: TraitDebugInfo[];
11
12
  schema?: OrbitalSchema;
12
13
  }
13
- export declare function EventDispatcherTab({ traits, schema }: EventDispatcherTabProps): import("react/jsx-runtime").JSX.Element;
14
+ export declare function EventDispatcherTab({ traits, schema }: EventDispatcherTabProps): React.JSX.Element;
14
15
  export declare namespace EventDispatcherTab {
15
16
  var displayName: string;
16
17
  }
@@ -1,8 +1,13 @@
1
+ /**
2
+ * EventFlowTab - Displays event flow and debug messages
3
+ * Uses existing component library atoms/molecules.
4
+ */
5
+ import * as React from 'react';
1
6
  import type { DebugEvent } from '../../../../../lib/debugRegistry';
2
7
  interface EventFlowTabProps {
3
8
  events: DebugEvent[];
4
9
  }
5
- export declare function EventFlowTab({ events }: EventFlowTabProps): import("react/jsx-runtime").JSX.Element;
10
+ export declare function EventFlowTab({ events }: EventFlowTabProps): React.JSX.Element;
6
11
  export declare namespace EventFlowTab {
7
12
  var displayName: string;
8
13
  }
@@ -1,8 +1,13 @@
1
+ /**
2
+ * GuardsPanel - Displays guard evaluation history
3
+ * Uses existing component library atoms/molecules.
4
+ */
5
+ import * as React from 'react';
1
6
  import type { GuardEvaluation } from '../../../../../lib/guardRegistry';
2
7
  interface GuardsPanelProps {
3
8
  guards: GuardEvaluation[];
4
9
  }
5
- export declare function GuardsPanel({ guards }: GuardsPanelProps): import("react/jsx-runtime").JSX.Element;
10
+ export declare function GuardsPanel({ guards }: GuardsPanelProps): React.JSX.Element;
6
11
  export declare namespace GuardsPanel {
7
12
  var displayName: string;
8
13
  }
@@ -1,8 +1,19 @@
1
+ /**
2
+ * ServerBridgeTab - Displays ServerBridge health and connectivity status
3
+ *
4
+ * Shows:
5
+ * - Connection status (connected/disconnected)
6
+ * - Events forwarded (client → server) count
7
+ * - Events received (server → client) count
8
+ * - Last error if any
9
+ * - Last heartbeat timestamp
10
+ */
11
+ import * as React from 'react';
1
12
  import type { BridgeHealth } from '../../../../../lib/verificationRegistry';
2
13
  interface ServerBridgeTabProps {
3
14
  bridge: BridgeHealth | null;
4
15
  }
5
- export declare function ServerBridgeTab({ bridge }: ServerBridgeTabProps): import("react/jsx-runtime").JSX.Element;
16
+ export declare function ServerBridgeTab({ bridge }: ServerBridgeTabProps): React.JSX.Element;
6
17
  export declare namespace ServerBridgeTab {
7
18
  var displayName: string;
8
19
  }
@@ -2,11 +2,12 @@
2
2
  * TicksTab - Displays tick execution timing and status
3
3
  * Uses existing component library atoms/molecules.
4
4
  */
5
+ import * as React from 'react';
5
6
  import type { TickExecution } from '../../../../../lib/tickRegistry';
6
7
  interface TicksTabProps {
7
8
  ticks: TickExecution[];
8
9
  }
9
- export declare function TicksTab({ ticks }: TicksTabProps): import("react/jsx-runtime").JSX.Element;
10
+ export declare function TicksTab({ ticks }: TicksTabProps): React.JSX.Element;
10
11
  export declare namespace TicksTab {
11
12
  var displayName: string;
12
13
  }
@@ -2,11 +2,12 @@
2
2
  * TraitsTab - Displays active traits and their state machines
3
3
  * Uses existing component library atoms/molecules.
4
4
  */
5
+ import * as React from 'react';
5
6
  import type { TraitDebugInfo } from '../../../../../lib/traitRegistry';
6
7
  interface TraitsTabProps {
7
8
  traits: TraitDebugInfo[];
8
9
  }
9
- export declare function TraitsTab({ traits }: TraitsTabProps): import("react/jsx-runtime").JSX.Element;
10
+ export declare function TraitsTab({ traits }: TraitsTabProps): React.JSX.Element;
10
11
  export declare namespace TraitsTab {
11
12
  var displayName: string;
12
13
  }
@@ -1,8 +1,18 @@
1
+ /**
2
+ * TransitionTimeline - Visual timeline of state machine transitions
3
+ *
4
+ * Shows each transition with:
5
+ * - Trait name, from → to state, triggering event
6
+ * - Guard result (if any)
7
+ * - Effect execution results (green = executed, red = failed)
8
+ * - Timestamp
9
+ */
10
+ import * as React from 'react';
1
11
  import type { TransitionTrace } from '../../../../../lib/verificationRegistry';
2
12
  interface TransitionTimelineProps {
3
13
  transitions: TransitionTrace[];
4
14
  }
5
- export declare function TransitionTimeline({ transitions }: TransitionTimelineProps): import("react/jsx-runtime").JSX.Element;
15
+ export declare function TransitionTimeline({ transitions }: TransitionTimelineProps): React.JSX.Element;
6
16
  export declare namespace TransitionTimeline {
7
17
  var displayName: string;
8
18
  }
@@ -1,9 +1,16 @@
1
+ /**
2
+ * VerificationTab - Displays pass/fail verification checklist
3
+ *
4
+ * Shows all registered checks with their status, grouped by category.
5
+ * Green = pass, Red = fail, Yellow = warn, Gray = pending.
6
+ */
7
+ import * as React from 'react';
1
8
  import type { VerificationCheck, VerificationSummary } from '../../../../../lib/verificationRegistry';
2
9
  interface VerificationTabProps {
3
10
  checks: VerificationCheck[];
4
11
  summary: VerificationSummary;
5
12
  }
6
- export declare function VerificationTab({ checks, summary }: VerificationTabProps): import("react/jsx-runtime").JSX.Element;
13
+ export declare function VerificationTab({ checks, summary }: VerificationTabProps): React.JSX.Element;
7
14
  export declare namespace VerificationTab {
8
15
  var displayName: string;
9
16
  }
@@ -1,3 +1,4 @@
1
+ import * as React from 'react';
1
2
  import { type IconInput } from '../../../core/atoms/Icon';
2
3
  import type { Asset } from '@almadar/core';
3
4
  export interface ActionButtonProps {
@@ -22,7 +23,7 @@ export interface ActionButtonProps {
22
23
  /** Additional CSS classes */
23
24
  className?: string;
24
25
  }
25
- export declare function ActionButton({ assetUrl, label, icon, cooldown, disabled, hotkey, size, variant, onClick, className, }: ActionButtonProps): import("react/jsx-runtime").JSX.Element;
26
+ export declare function ActionButton({ assetUrl, label, icon, cooldown, disabled, hotkey, size, variant, onClick, className, }: ActionButtonProps): React.JSX.Element;
26
27
  export declare namespace ActionButton {
27
28
  var displayName: string;
28
29
  }
@@ -1,3 +1,4 @@
1
+ import * as React from 'react';
1
2
  import { type IconInput } from '../../../core/atoms/Icon';
2
3
  import type { Asset } from '@almadar/core';
3
4
  export interface ChoiceButtonProps {
@@ -18,7 +19,7 @@ export interface ChoiceButtonProps {
18
19
  /** Additional CSS classes */
19
20
  className?: string;
20
21
  }
21
- export declare function ChoiceButton({ text, index, assetUrl, icon, disabled, selected, onClick, className, }: ChoiceButtonProps): import("react/jsx-runtime").JSX.Element;
22
+ export declare function ChoiceButton({ text, index, assetUrl, icon, disabled, selected, onClick, className, }: ChoiceButtonProps): React.JSX.Element;
22
23
  export declare namespace ChoiceButton {
23
24
  var displayName: string;
24
25
  }
@@ -1,3 +1,4 @@
1
+ import * as React from 'react';
1
2
  import type { Asset } from '@almadar/core';
2
3
  export interface ComboCounterProps {
3
4
  /** Sprite asset displayed alongside the combo number */
@@ -13,7 +14,7 @@ export interface ComboCounterProps {
13
14
  /** Additional CSS classes */
14
15
  className?: string;
15
16
  }
16
- export declare function ComboCounter({ assetUrl, combo, multiplier, streak, size, className, }: ComboCounterProps): import("react/jsx-runtime").JSX.Element | null;
17
+ export declare function ComboCounter({ assetUrl, combo, multiplier, streak, size, className, }: ComboCounterProps): React.JSX.Element | null;
17
18
  export declare namespace ComboCounter {
18
19
  var displayName: string;
19
20
  }
@@ -1,3 +1,4 @@
1
+ import * as React from 'react';
1
2
  import type { EventKey, Asset } from "@almadar/core";
2
3
  import { type IconInput } from '../../../core/atoms/Icon';
3
4
  export interface ControlButtonProps {
@@ -28,7 +29,7 @@ export interface ControlButtonProps {
28
29
  /** Additional CSS classes */
29
30
  className?: string;
30
31
  }
31
- export declare function ControlButton({ assetUrl, label, icon, size, shape, variant, onPress, onRelease, pressEvent, releaseEvent, pressed, disabled, className, }: ControlButtonProps): import("react/jsx-runtime").JSX.Element;
32
+ export declare function ControlButton({ assetUrl, label, icon, size, shape, variant, onPress, onRelease, pressEvent, releaseEvent, pressed, disabled, className, }: ControlButtonProps): React.JSX.Element;
32
33
  export declare namespace ControlButton {
33
34
  var displayName: string;
34
35
  }
@@ -1,3 +1,4 @@
1
+ import * as React from 'react';
1
2
  import type { Asset } from '@almadar/core';
2
3
  export interface DamageNumberProps {
3
4
  /** Sprite asset — displayed as a hit-effect icon alongside the number */
@@ -11,7 +12,7 @@ export interface DamageNumberProps {
11
12
  /** Additional CSS classes */
12
13
  className?: string;
13
14
  }
14
- export declare function DamageNumber({ assetUrl, value, type, size, className, }: DamageNumberProps): import("react/jsx-runtime").JSX.Element;
15
+ export declare function DamageNumber({ assetUrl, value, type, size, className, }: DamageNumberProps): React.JSX.Element;
15
16
  export declare namespace DamageNumber {
16
17
  var displayName: string;
17
18
  }
@@ -1,3 +1,4 @@
1
+ import * as React from 'react';
1
2
  import type { Asset } from '@almadar/core';
2
3
  export interface DialogueBubbleProps {
3
4
  /** Speaker name displayed at the top */
@@ -11,7 +12,7 @@ export interface DialogueBubbleProps {
11
12
  /** Additional CSS classes */
12
13
  className?: string;
13
14
  }
14
- export declare function DialogueBubble({ speaker, text, portrait, position, className, }: DialogueBubbleProps): import("react/jsx-runtime").JSX.Element;
15
+ export declare function DialogueBubble({ speaker, text, portrait, position, className, }: DialogueBubbleProps): React.JSX.Element;
15
16
  export declare namespace DialogueBubble {
16
17
  var displayName: string;
17
18
  }
@@ -1,3 +1,4 @@
1
+ import * as React from 'react';
1
2
  import type { Asset } from '@almadar/core';
2
3
  import { type IconInput } from '../../../core/atoms/Icon';
3
4
  export interface GameIconProps {
@@ -12,7 +13,7 @@ export interface GameIconProps {
12
13
  /** Additional CSS classes. */
13
14
  className?: string;
14
15
  }
15
- export declare function GameIcon({ assetUrl, icon, size, alt, className }: GameIconProps): import("react/jsx-runtime").JSX.Element;
16
+ export declare function GameIcon({ assetUrl, icon, size, alt, className }: GameIconProps): React.JSX.Element;
16
17
  export declare namespace GameIcon {
17
18
  var displayName: string;
18
19
  }
@@ -1,3 +1,4 @@
1
+ import * as React from 'react';
1
2
  export interface HealthBarProps {
2
3
  /** Current value */
3
4
  current: number;
@@ -20,7 +21,7 @@ export interface HealthBarProps {
20
21
  /** Animation on change */
21
22
  animated?: boolean;
22
23
  }
23
- export declare function HealthBar({ current, max, format, level, showLabel, labelSuffix, size, className, animated, }: HealthBarProps): import("react/jsx-runtime").JSX.Element;
24
+ export declare function HealthBar({ current, max, format, level, showLabel, labelSuffix, size, className, animated, }: HealthBarProps): React.JSX.Element;
24
25
  export declare namespace HealthBar {
25
26
  var displayName: string;
26
27
  }
@@ -1,3 +1,4 @@
1
+ import * as React from 'react';
1
2
  import { type IconInput } from '../../../core/atoms/Icon';
2
3
  import type { Asset } from '@almadar/core';
3
4
  export interface ItemSlotProps {
@@ -22,7 +23,7 @@ export interface ItemSlotProps {
22
23
  /** Additional CSS classes */
23
24
  className?: string;
24
25
  }
25
- export declare function ItemSlot({ assetUrl, icon, label, quantity, rarity, empty, size, selected, onClick, className, }: ItemSlotProps): import("react/jsx-runtime").JSX.Element;
26
+ export declare function ItemSlot({ assetUrl, icon, label, quantity, rarity, empty, size, selected, onClick, className, }: ItemSlotProps): React.JSX.Element;
26
27
  export declare namespace ItemSlot {
27
28
  var displayName: string;
28
29
  }
@@ -1,3 +1,4 @@
1
+ import * as React from 'react';
1
2
  import type { Rect } from '../../../core/atoms/types';
2
3
  export interface MiniMapTile {
3
4
  x: number;
@@ -28,7 +29,7 @@ export interface MiniMapProps {
28
29
  /** Additional CSS classes */
29
30
  className?: string;
30
31
  }
31
- export declare function MiniMap({ tiles, units, width, height, mapWidth, mapHeight, viewportRect, className, }: MiniMapProps): import("react/jsx-runtime").JSX.Element;
32
+ export declare function MiniMap({ tiles, units, width, height, mapWidth, mapHeight, viewportRect, className, }: MiniMapProps): React.JSX.Element;
32
33
  export declare namespace MiniMap {
33
34
  var displayName: string;
34
35
  }
@@ -1,3 +1,4 @@
1
+ import * as React from 'react';
1
2
  import type { ColorToken } from '../../../core/atoms/types';
2
3
  import { type IconInput } from '../../../core/atoms/Icon';
3
4
  import type { Asset } from '@almadar/core';
@@ -19,7 +20,7 @@ export interface ResourceCounterProps {
19
20
  /** Additional CSS classes */
20
21
  className?: string;
21
22
  }
22
- export declare function ResourceCounter({ assetUrl, icon, label, value, max, color, size, className, }: ResourceCounterProps): import("react/jsx-runtime").JSX.Element;
23
+ export declare function ResourceCounter({ assetUrl, icon, label, value, max, color, size, className, }: ResourceCounterProps): React.JSX.Element;
23
24
  export declare namespace ResourceCounter {
24
25
  var displayName: string;
25
26
  }
@@ -1,3 +1,4 @@
1
+ import * as React from 'react';
1
2
  import { type IconInput } from '../../../core/atoms/Icon';
2
3
  import type { Asset } from '@almadar/core';
3
4
  export interface ScoreDisplayProps {
@@ -18,7 +19,7 @@ export interface ScoreDisplayProps {
18
19
  /** Number formatting locale */
19
20
  locale?: string;
20
21
  }
21
- export declare function ScoreDisplay({ assetUrl, value, score, label, icon, size, className, locale, }: ScoreDisplayProps): import("react/jsx-runtime").JSX.Element;
22
+ export declare function ScoreDisplay({ assetUrl, value, score, label, icon, size, className, locale, }: ScoreDisplayProps): React.JSX.Element;
22
23
  export declare namespace ScoreDisplay {
23
24
  var displayName: string;
24
25
  }
@@ -1,3 +1,4 @@
1
+ import * as React from 'react';
1
2
  import { type IconInput } from '../../../core/atoms/Icon';
2
3
  import type { Asset } from '@almadar/core';
3
4
  export interface StatusEffectProps {
@@ -18,7 +19,7 @@ export interface StatusEffectProps {
18
19
  /** Additional CSS classes */
19
20
  className?: string;
20
21
  }
21
- export declare function StatusEffect({ assetUrl, icon, label, duration, stacks, variant, size, className, }: StatusEffectProps): import("react/jsx-runtime").JSX.Element;
22
+ export declare function StatusEffect({ assetUrl, icon, label, duration, stacks, variant, size, className, }: StatusEffectProps): React.JSX.Element;
22
23
  export declare namespace StatusEffect {
23
24
  var displayName: string;
24
25
  }
@@ -1,3 +1,4 @@
1
+ import * as React from 'react';
1
2
  export interface TimerDisplayProps {
2
3
  /** Time in seconds */
3
4
  seconds: number;
@@ -12,7 +13,7 @@ export interface TimerDisplayProps {
12
13
  /** Seconds below which to pulse red */
13
14
  lowThreshold?: number;
14
15
  }
15
- export declare function TimerDisplay({ seconds, running, format, size, className, lowThreshold, }: TimerDisplayProps): import("react/jsx-runtime").JSX.Element;
16
+ export declare function TimerDisplay({ seconds, running, format, size, className, lowThreshold, }: TimerDisplayProps): React.JSX.Element;
16
17
  export declare namespace TimerDisplay {
17
18
  var displayName: string;
18
19
  }
@@ -1,3 +1,4 @@
1
+ import * as React from 'react';
1
2
  import type { Asset } from '@almadar/core';
2
3
  export interface TurnIndicatorProps {
3
4
  /** Sprite asset — takes precedence over the dot indicator when provided */
@@ -15,7 +16,7 @@ export interface TurnIndicatorProps {
15
16
  /** Additional CSS classes */
16
17
  className?: string;
17
18
  }
18
- export declare function TurnIndicator({ assetUrl, currentTurn, maxTurns, activeTeam, phase, size, className, }: TurnIndicatorProps): import("react/jsx-runtime").JSX.Element;
19
+ export declare function TurnIndicator({ assetUrl, currentTurn, maxTurns, activeTeam, phase, size, className, }: TurnIndicatorProps): React.JSX.Element;
19
20
  export declare namespace TurnIndicator {
20
21
  var displayName: string;
21
22
  }
@@ -1,3 +1,4 @@
1
+ import * as React from 'react';
1
2
  import { type IconInput } from '../../../core/atoms/Icon';
2
3
  import type { Asset } from '@almadar/core';
3
4
  export interface WaypointMarkerProps {
@@ -16,7 +17,7 @@ export interface WaypointMarkerProps {
16
17
  /** Additional CSS classes */
17
18
  className?: string;
18
19
  }
19
- export declare function WaypointMarker({ assetUrl, label, icon, active, completed, size, className, }: WaypointMarkerProps): import("react/jsx-runtime").JSX.Element;
20
+ export declare function WaypointMarker({ assetUrl, label, icon, active, completed, size, className, }: WaypointMarkerProps): React.JSX.Element;
20
21
  export declare namespace WaypointMarker {
21
22
  var displayName: string;
22
23
  }
@@ -1,3 +1,4 @@
1
+ import * as React from "react";
1
2
  import { type StatBadgeProps } from "./StatBadge";
2
3
  import type { Asset } from "@almadar/core";
3
4
  import type { IconInput } from "../../../core/atoms/index";
@@ -45,7 +46,7 @@ export interface GameHudProps {
45
46
  /** Whether to use a semi-transparent background */
46
47
  transparent?: boolean;
47
48
  }
48
- export declare function GameHud({ position: propPosition, stats: propStats, items, elements, size, className, transparent, }: GameHudProps): import("react/jsx-runtime").JSX.Element;
49
+ export declare function GameHud({ position: propPosition, stats: propStats, items, elements, size, className, transparent, }: GameHudProps): React.JSX.Element;
49
50
  export declare namespace GameHud {
50
51
  var displayName: string;
51
52
  }
@@ -1,3 +1,4 @@
1
+ import * as React from "react";
1
2
  import type { EventKey, EventPayload } from "@almadar/core";
2
3
  import { type EventBusContextType } from "../../../../hooks/useEventBus";
3
4
  export type MenuOption = EventPayload & {
@@ -38,7 +39,7 @@ export interface GameMenuProps {
38
39
  /** Additional CSS classes */
39
40
  className?: string;
40
41
  }
41
- export declare function GameMenu({ title, subtitle, options, menuItems, onSelect, eventBus: eventBusProp, background, logo, className, }: GameMenuProps): import("react/jsx-runtime").JSX.Element;
42
+ export declare function GameMenu({ title, subtitle, options, menuItems, onSelect, eventBus: eventBusProp, background, logo, className, }: GameMenuProps): React.JSX.Element;
42
43
  export declare namespace GameMenu {
43
44
  var displayName: string;
44
45
  }
@@ -1,3 +1,4 @@
1
+ import * as React from 'react';
1
2
  import type { EventEmit, Asset } from '@almadar/core';
2
3
  import type { IconInput } from '../../../core/atoms/index';
3
4
  export interface InventoryGridItem {
@@ -28,7 +29,7 @@ export interface InventoryGridProps {
28
29
  /** Additional CSS classes */
29
30
  className?: string;
30
31
  }
31
- export declare function InventoryGrid({ items, columns, totalSlots, selectedId, onSelect, selectEvent, size, className, }: InventoryGridProps): import("react/jsx-runtime").JSX.Element;
32
+ export declare function InventoryGrid({ items, columns, totalSlots, selectedId, onSelect, selectEvent, size, className, }: InventoryGridProps): React.JSX.Element;
32
33
  export declare namespace InventoryGrid {
33
34
  var displayName: string;
34
35
  }
@@ -1,3 +1,4 @@
1
+ import * as React from 'react';
1
2
  import type { Asset } from '@almadar/core';
2
3
  import type { IconInput } from '../../../core/atoms/index';
3
4
  export interface ResourceBarResource {
@@ -19,7 +20,7 @@ export interface ResourceBarProps {
19
20
  /** Additional CSS classes */
20
21
  className?: string;
21
22
  }
22
- export declare function ResourceBar({ resources, size, className, }: ResourceBarProps): import("react/jsx-runtime").JSX.Element;
23
+ export declare function ResourceBar({ resources, size, className, }: ResourceBarProps): React.JSX.Element;
23
24
  export declare namespace ResourceBar {
24
25
  var displayName: string;
25
26
  }
@@ -1,3 +1,4 @@
1
+ import * as React from 'react';
1
2
  import { type IconInput } from '../../../core/atoms/Icon';
2
3
  import type { Asset } from '@almadar/core';
3
4
  /**
@@ -32,7 +33,7 @@ export interface StatBadgeProps {
32
33
  /** Additional CSS classes */
33
34
  className?: string;
34
35
  }
35
- export declare function StatBadge({ assetUrl, iconUrl, label, value, max, format, icon, size, variant, className, source: _source, field: _field, }: StatBadgeProps): import("react/jsx-runtime").JSX.Element;
36
+ export declare function StatBadge({ assetUrl, iconUrl, label, value, max, format, icon, size, variant, className, source: _source, field: _field, }: StatBadgeProps): React.JSX.Element;
36
37
  export declare namespace StatBadge {
37
38
  var displayName: string;
38
39
  }
@@ -23,7 +23,7 @@ export interface CollapsibleSectionProps {
23
23
  };
24
24
  className?: string;
25
25
  }
26
- export declare function CollapsibleSection({ title, expanded, onToggle, children, assetManifest, className }: CollapsibleSectionProps): import("react/jsx-runtime").JSX.Element;
26
+ export declare function CollapsibleSection({ title, expanded, onToggle, children, assetManifest, className }: CollapsibleSectionProps): React.JSX.Element;
27
27
  export declare namespace CollapsibleSection {
28
28
  var displayName: string;
29
29
  }
@@ -36,7 +36,7 @@ export interface EditorSliderProps {
36
36
  onChange: (value: number) => void;
37
37
  className?: string;
38
38
  }
39
- export declare function EditorSlider({ label, value, min, max, step, onChange, className }: EditorSliderProps): import("react/jsx-runtime").JSX.Element;
39
+ export declare function EditorSlider({ label, value, min, max, step, onChange, className }: EditorSliderProps): React.JSX.Element;
40
40
  export declare namespace EditorSlider {
41
41
  var displayName: string;
42
42
  }
@@ -50,7 +50,7 @@ export interface EditorSelectProps {
50
50
  onChange: (value: string) => void;
51
51
  className?: string;
52
52
  }
53
- export declare function EditorSelect({ label, value, options, onChange, className }: EditorSelectProps): import("react/jsx-runtime").JSX.Element;
53
+ export declare function EditorSelect({ label, value, options, onChange, className }: EditorSelectProps): React.JSX.Element;
54
54
  export declare namespace EditorSelect {
55
55
  var displayName: string;
56
56
  }
@@ -60,7 +60,7 @@ export interface EditorCheckboxProps {
60
60
  onChange: (checked: boolean) => void;
61
61
  className?: string;
62
62
  }
63
- export declare function EditorCheckbox({ label, checked, onChange, className }: EditorCheckboxProps): import("react/jsx-runtime").JSX.Element;
63
+ export declare function EditorCheckbox({ label, checked, onChange, className }: EditorCheckboxProps): React.JSX.Element;
64
64
  export declare namespace EditorCheckbox {
65
65
  var displayName: string;
66
66
  }
@@ -71,7 +71,7 @@ export interface EditorTextInputProps {
71
71
  placeholder?: string;
72
72
  className?: string;
73
73
  }
74
- export declare function EditorTextInput({ label, value, onChange, placeholder, className }: EditorTextInputProps): import("react/jsx-runtime").JSX.Element;
74
+ export declare function EditorTextInput({ label, value, onChange, placeholder, className }: EditorTextInputProps): React.JSX.Element;
75
75
  export declare namespace EditorTextInput {
76
76
  var displayName: string;
77
77
  }
@@ -89,7 +89,7 @@ export interface StatusBarProps {
89
89
  featureCount?: number;
90
90
  className?: string;
91
91
  }
92
- export declare function StatusBar({ hoveredTile, mode, gridSize, unitCount, featureCount, className }: StatusBarProps): import("react/jsx-runtime").JSX.Element;
92
+ export declare function StatusBar({ hoveredTile, mode, gridSize, unitCount, featureCount, className }: StatusBarProps): React.JSX.Element;
93
93
  export declare namespace StatusBar {
94
94
  var displayName: string;
95
95
  }
@@ -99,7 +99,7 @@ export interface TerrainPaletteProps {
99
99
  onSelect: (terrain: string) => void;
100
100
  className?: string;
101
101
  }
102
- export declare function TerrainPalette({ terrains, selectedTerrain, onSelect, className }: TerrainPaletteProps): import("react/jsx-runtime").JSX.Element;
102
+ export declare function TerrainPalette({ terrains, selectedTerrain, onSelect, className }: TerrainPaletteProps): React.JSX.Element;
103
103
  export declare namespace TerrainPalette {
104
104
  var displayName: string;
105
105
  }
@@ -108,7 +108,7 @@ export interface EditorToolbarProps {
108
108
  onModeChange: (mode: EditorMode) => void;
109
109
  className?: string;
110
110
  }
111
- export declare function EditorToolbar({ mode, onModeChange, className }: EditorToolbarProps): import("react/jsx-runtime").JSX.Element;
111
+ export declare function EditorToolbar({ mode, onModeChange, className }: EditorToolbarProps): React.JSX.Element;
112
112
  export declare namespace EditorToolbar {
113
113
  var displayName: string;
114
114
  }
@@ -12675,9 +12675,9 @@ var init_BiologyCanvas = __esm({
12675
12675
  }
12676
12676
  });
12677
12677
 
12678
- // node_modules/katex/dist/katex.min.css
12678
+ // node_modules/.pnpm/katex@0.16.47/node_modules/katex/dist/katex.min.css
12679
12679
  var init_katex_min = __esm({
12680
- "node_modules/katex/dist/katex.min.css"() {
12680
+ "node_modules/.pnpm/katex@0.16.47/node_modules/katex/dist/katex.min.css"() {
12681
12681
  }
12682
12682
  });
12683
12683
  exports.Tabs = void 0;
@@ -26062,9 +26062,14 @@ var init_PropertyInspector = __esm({
26062
26062
  onReset,
26063
26063
  title,
26064
26064
  className,
26065
- assets
26065
+ assets,
26066
+ tiers
26066
26067
  }) => {
26067
- const fields = Object.entries(config);
26068
+ const allowedTiers = tiers ? new Set(tiers) : null;
26069
+ const fields = Object.entries(config).filter(([, decl]) => {
26070
+ if (!allowedTiers) return true;
26071
+ return allowedTiers.has(decl.tier ?? "presentation");
26072
+ });
26068
26073
  const byTier = /* @__PURE__ */ new Map();
26069
26074
  for (const [name, decl] of fields) {
26070
26075
  const tier = decl.tier ?? "presentation";
@@ -26072,7 +26077,7 @@ var init_PropertyInspector = __esm({
26072
26077
  arr.push([name, decl]);
26073
26078
  byTier.set(tier, arr);
26074
26079
  }
26075
- const tiers = [...byTier.keys()].sort((a, b) => {
26080
+ const tierList = [...byTier.keys()].sort((a, b) => {
26076
26081
  const ia = TIER_ORDER.indexOf(a);
26077
26082
  const ib = TIER_ORDER.indexOf(b);
26078
26083
  return (ia === -1 ? 99 : ia) - (ib === -1 ? 99 : ib);
@@ -26083,7 +26088,7 @@ var init_PropertyInspector = __esm({
26083
26088
  onReset !== void 0 && /* @__PURE__ */ jsxRuntime.jsx(exports.Button, { variant: "ghost", size: "sm", icon: "rotate-ccw", label: "Reset", onClick: onReset })
26084
26089
  ] }),
26085
26090
  fields.length === 0 && /* @__PURE__ */ jsxRuntime.jsx(exports.Typography, { variant: "caption", color: "muted", children: "No configurable properties." }),
26086
- tiers.map((tier) => /* @__PURE__ */ jsxRuntime.jsx(exports.FormSection, { title: tier, collapsible: true, defaultCollapsed: tier !== "presentation", children: /* @__PURE__ */ jsxRuntime.jsx(exports.VStack, { gap: "sm", children: byTier.get(tier)?.map(([name, decl]) => /* @__PURE__ */ jsxRuntime.jsx(
26091
+ tierList.map((tier) => /* @__PURE__ */ jsxRuntime.jsx(exports.FormSection, { title: tier, collapsible: true, defaultCollapsed: tier !== "presentation", children: /* @__PURE__ */ jsxRuntime.jsx(exports.VStack, { gap: "sm", children: byTier.get(tier)?.map(([name, decl]) => /* @__PURE__ */ jsxRuntime.jsx(
26087
26092
  FieldControl,
26088
26093
  {
26089
26094
  name,
@@ -1,4 +1,4 @@
1
- /* node_modules/katex/dist/katex.min.css */
1
+ /* node_modules/.pnpm/katex@0.16.47/node_modules/katex/dist/katex.min.css */
2
2
  @font-face {
3
3
  font-display: block;
4
4
  font-family: KaTeX_AMS;
@@ -214,11 +214,11 @@
214
214
  border-color: currentColor;
215
215
  }
216
216
  .katex .katex-version:after {
217
- content: "0.16.45";
217
+ content: "0.16.47";
218
218
  }
219
219
  .katex .katex-mathml {
220
- clip: rect(1px, 1px, 1px, 1px);
221
220
  border: 0;
221
+ clip-path: inset(50%);
222
222
  height: 1px;
223
223
  overflow: hidden;
224
224
  padding: 0;
@@ -12629,9 +12629,9 @@ var init_BiologyCanvas = __esm({
12629
12629
  }
12630
12630
  });
12631
12631
 
12632
- // node_modules/katex/dist/katex.min.css
12632
+ // node_modules/.pnpm/katex@0.16.47/node_modules/katex/dist/katex.min.css
12633
12633
  var init_katex_min = __esm({
12634
- "node_modules/katex/dist/katex.min.css"() {
12634
+ "node_modules/.pnpm/katex@0.16.47/node_modules/katex/dist/katex.min.css"() {
12635
12635
  }
12636
12636
  });
12637
12637
  var Tabs;
@@ -26016,9 +26016,14 @@ var init_PropertyInspector = __esm({
26016
26016
  onReset,
26017
26017
  title,
26018
26018
  className,
26019
- assets
26019
+ assets,
26020
+ tiers
26020
26021
  }) => {
26021
- const fields = Object.entries(config);
26022
+ const allowedTiers = tiers ? new Set(tiers) : null;
26023
+ const fields = Object.entries(config).filter(([, decl]) => {
26024
+ if (!allowedTiers) return true;
26025
+ return allowedTiers.has(decl.tier ?? "presentation");
26026
+ });
26022
26027
  const byTier = /* @__PURE__ */ new Map();
26023
26028
  for (const [name, decl] of fields) {
26024
26029
  const tier = decl.tier ?? "presentation";
@@ -26026,7 +26031,7 @@ var init_PropertyInspector = __esm({
26026
26031
  arr.push([name, decl]);
26027
26032
  byTier.set(tier, arr);
26028
26033
  }
26029
- const tiers = [...byTier.keys()].sort((a, b) => {
26034
+ const tierList = [...byTier.keys()].sort((a, b) => {
26030
26035
  const ia = TIER_ORDER.indexOf(a);
26031
26036
  const ib = TIER_ORDER.indexOf(b);
26032
26037
  return (ia === -1 ? 99 : ia) - (ib === -1 ? 99 : ib);
@@ -26037,7 +26042,7 @@ var init_PropertyInspector = __esm({
26037
26042
  onReset !== void 0 && /* @__PURE__ */ jsx(Button, { variant: "ghost", size: "sm", icon: "rotate-ccw", label: "Reset", onClick: onReset })
26038
26043
  ] }),
26039
26044
  fields.length === 0 && /* @__PURE__ */ jsx(Typography, { variant: "caption", color: "muted", children: "No configurable properties." }),
26040
- tiers.map((tier) => /* @__PURE__ */ jsx(FormSection, { title: tier, collapsible: true, defaultCollapsed: tier !== "presentation", children: /* @__PURE__ */ jsx(VStack, { gap: "sm", children: byTier.get(tier)?.map(([name, decl]) => /* @__PURE__ */ jsx(
26045
+ tierList.map((tier) => /* @__PURE__ */ jsx(FormSection, { title: tier, collapsible: true, defaultCollapsed: tier !== "presentation", children: /* @__PURE__ */ jsx(VStack, { gap: "sm", children: byTier.get(tier)?.map(([name, decl]) => /* @__PURE__ */ jsx(
26041
26046
  FieldControl,
26042
26047
  {
26043
26048
  name,
@@ -25,7 +25,7 @@ export interface GitHubRepo {
25
25
  /**
26
26
  * Hook to get GitHub connection status
27
27
  */
28
- export declare function useGitHubStatus(): import("@tanstack/react-query").UseQueryResult<GitHubStatus, Error>;
28
+ export declare function useGitHubStatus(): import("@tanstack/react-query").UseQueryResult<NoInfer<GitHubStatus>, Error>;
29
29
  /**
30
30
  * Hook to connect GitHub (initiate OAuth flow)
31
31
  */
@@ -39,20 +39,20 @@ export declare function useDisconnectGitHub(): import("@tanstack/react-query").U
39
39
  /**
40
40
  * Hook to list GitHub repositories
41
41
  */
42
- export declare function useGitHubRepos(page?: number, perPage?: number): import("@tanstack/react-query").UseQueryResult<{
42
+ export declare function useGitHubRepos(page?: number, perPage?: number): import("@tanstack/react-query").UseQueryResult<NoInfer<{
43
43
  repos: GitHubRepo[];
44
44
  page: number;
45
45
  perPage: number;
46
- }, Error>;
46
+ }>, Error>;
47
47
  /**
48
48
  * Hook to get repository details
49
49
  */
50
- export declare function useGitHubRepo(owner: string, repo: string, enabled?: boolean): import("@tanstack/react-query").UseQueryResult<{
50
+ export declare function useGitHubRepo(owner: string, repo: string, enabled?: boolean): import("@tanstack/react-query").UseQueryResult<NoInfer<{
51
51
  repo: GitHubRepo;
52
- }, Error>;
52
+ }>, Error>;
53
53
  /**
54
54
  * Hook to list repository branches
55
55
  */
56
- export declare function useGitHubBranches(owner: string, repo: string, enabled?: boolean): import("@tanstack/react-query").UseQueryResult<{
56
+ export declare function useGitHubBranches(owner: string, repo: string, enabled?: boolean): import("@tanstack/react-query").UseQueryResult<NoInfer<{
57
57
  branches: string[];
58
- }, Error>;
58
+ }>, Error>;
@@ -28,7 +28,7 @@ function _interopNamespace(e) {
28
28
  var React11__default = /*#__PURE__*/_interopDefault(React11);
29
29
  var LucideIcons2__namespace = /*#__PURE__*/_interopNamespace(LucideIcons2);
30
30
 
31
- // node_modules/clsx/dist/clsx.mjs
31
+ // node_modules/.pnpm/clsx@2.1.1/node_modules/clsx/dist/clsx.mjs
32
32
  function r(e) {
33
33
  var t, f3, n = "";
34
34
  if ("string" == typeof e || "number" == typeof e) n += e;
@@ -43,7 +43,7 @@ function clsx() {
43
43
  return n;
44
44
  }
45
45
 
46
- // node_modules/tailwind-merge/dist/bundle-mjs.mjs
46
+ // node_modules/.pnpm/tailwind-merge@2.6.1/node_modules/tailwind-merge/dist/bundle-mjs.mjs
47
47
  var CLASS_PART_SEPARATOR = "-";
48
48
  var createClassGroupUtils = (config) => {
49
49
  const classMap = createClassMap(config);
@@ -4,7 +4,7 @@ import { jsxs, jsx, Fragment } from 'react/jsx-runtime';
4
4
  import * as LucideIcons2 from 'lucide-react';
5
5
  import { Loader2, X } from 'lucide-react';
6
6
 
7
- // node_modules/clsx/dist/clsx.mjs
7
+ // node_modules/.pnpm/clsx@2.1.1/node_modules/clsx/dist/clsx.mjs
8
8
  function r(e) {
9
9
  var t, f3, n = "";
10
10
  if ("string" == typeof e || "number" == typeof e) n += e;
@@ -19,7 +19,7 @@ function clsx() {
19
19
  return n;
20
20
  }
21
21
 
22
- // node_modules/tailwind-merge/dist/bundle-mjs.mjs
22
+ // node_modules/.pnpm/tailwind-merge@2.6.1/node_modules/tailwind-merge/dist/bundle-mjs.mjs
23
23
  var CLASS_PART_SEPARATOR = "-";
24
24
  var createClassGroupUtils = (config) => {
25
25
  const classMap = createClassMap(config);
@@ -43,5 +43,5 @@ interface EventBusProviderProps {
43
43
  */
44
44
  isolated?: boolean;
45
45
  }
46
- export declare function EventBusProvider({ children, isolated }: EventBusProviderProps): import("react/jsx-runtime").JSX.Element;
46
+ export declare function EventBusProvider({ children, isolated }: EventBusProviderProps): React.JSX.Element;
47
47
  export type { EventBusContextType };
@@ -50,7 +50,7 @@ interface SelectionProviderProps {
50
50
  * }
51
51
  * ```
52
52
  */
53
- export declare function SelectionProvider({ children, debug, compareEntities, }: SelectionProviderProps): import("react/jsx-runtime").JSX.Element;
53
+ export declare function SelectionProvider({ children, debug, compareEntities, }: SelectionProviderProps): React.JSX.Element;
54
54
  /**
55
55
  * Hook to access selection state.
56
56
  *
@@ -98,5 +98,5 @@ export interface ServerBridgeProviderProps {
98
98
  transport?: ServerBridgeTransport;
99
99
  children: ReactNode;
100
100
  }
101
- export declare function ServerBridgeProvider({ schema, serverUrl, transport: customTransport, children, }: ServerBridgeProviderProps): import("react/jsx-runtime").JSX.Element;
101
+ export declare function ServerBridgeProvider({ schema, serverUrl, transport: customTransport, children, }: ServerBridgeProviderProps): import("react").JSX.Element;
102
102
  export {};
@@ -23135,9 +23135,9 @@ var init_BiologyCanvas = __esm({
23135
23135
  }
23136
23136
  });
23137
23137
 
23138
- // node_modules/katex/dist/katex.min.css
23138
+ // node_modules/.pnpm/katex@0.16.47/node_modules/katex/dist/katex.min.css
23139
23139
  var init_katex_min = __esm({
23140
- "node_modules/katex/dist/katex.min.css"() {
23140
+ "node_modules/.pnpm/katex@0.16.47/node_modules/katex/dist/katex.min.css"() {
23141
23141
  }
23142
23142
  });
23143
23143
  var Tabs;
@@ -1,4 +1,4 @@
1
- /* node_modules/katex/dist/katex.min.css */
1
+ /* node_modules/.pnpm/katex@0.16.47/node_modules/katex/dist/katex.min.css */
2
2
  @font-face {
3
3
  font-display: block;
4
4
  font-family: KaTeX_AMS;
@@ -214,11 +214,11 @@
214
214
  border-color: currentColor;
215
215
  }
216
216
  .katex .katex-version:after {
217
- content: "0.16.45";
217
+ content: "0.16.47";
218
218
  }
219
219
  .katex .katex-mathml {
220
- clip: rect(1px, 1px, 1px, 1px);
221
220
  border: 0;
221
+ clip-path: inset(50%);
222
222
  height: 1px;
223
223
  overflow: hidden;
224
224
  padding: 0;
@@ -23090,9 +23090,9 @@ var init_BiologyCanvas = __esm({
23090
23090
  }
23091
23091
  });
23092
23092
 
23093
- // node_modules/katex/dist/katex.min.css
23093
+ // node_modules/.pnpm/katex@0.16.47/node_modules/katex/dist/katex.min.css
23094
23094
  var init_katex_min = __esm({
23095
- "node_modules/katex/dist/katex.min.css"() {
23095
+ "node_modules/.pnpm/katex@0.16.47/node_modules/katex/dist/katex.min.css"() {
23096
23096
  }
23097
23097
  });
23098
23098
  var Tabs;
@@ -23099,9 +23099,9 @@ var init_BiologyCanvas = __esm({
23099
23099
  }
23100
23100
  });
23101
23101
 
23102
- // node_modules/katex/dist/katex.min.css
23102
+ // node_modules/.pnpm/katex@0.16.47/node_modules/katex/dist/katex.min.css
23103
23103
  var init_katex_min = __esm({
23104
- "node_modules/katex/dist/katex.min.css"() {
23104
+ "node_modules/.pnpm/katex@0.16.47/node_modules/katex/dist/katex.min.css"() {
23105
23105
  }
23106
23106
  });
23107
23107
  var Tabs;
@@ -1,4 +1,4 @@
1
- /* node_modules/katex/dist/katex.min.css */
1
+ /* node_modules/.pnpm/katex@0.16.47/node_modules/katex/dist/katex.min.css */
2
2
  @font-face {
3
3
  font-display: block;
4
4
  font-family: KaTeX_AMS;
@@ -214,11 +214,11 @@
214
214
  border-color: currentColor;
215
215
  }
216
216
  .katex .katex-version:after {
217
- content: "0.16.45";
217
+ content: "0.16.47";
218
218
  }
219
219
  .katex .katex-mathml {
220
- clip: rect(1px, 1px, 1px, 1px);
221
220
  border: 0;
221
+ clip-path: inset(50%);
222
222
  height: 1px;
223
223
  overflow: hidden;
224
224
  padding: 0;
@@ -23054,9 +23054,9 @@ var init_BiologyCanvas = __esm({
23054
23054
  }
23055
23055
  });
23056
23056
 
23057
- // node_modules/katex/dist/katex.min.css
23057
+ // node_modules/.pnpm/katex@0.16.47/node_modules/katex/dist/katex.min.css
23058
23058
  var init_katex_min = __esm({
23059
- "node_modules/katex/dist/katex.min.css"() {
23059
+ "node_modules/.pnpm/katex@0.16.47/node_modules/katex/dist/katex.min.css"() {
23060
23060
  }
23061
23061
  });
23062
23062
  var Tabs;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@almadar/ui",
3
- "version": "5.78.0",
3
+ "version": "5.79.0",
4
4
  "description": "React UI components, hooks, and providers for Almadar",
5
5
  "type": "module",
6
6
  "sideEffects": [