@bitcobblers/wod-wiki-ui 0.7.37 → 0.8.39

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.
@@ -1,4 +1,4 @@
1
- export { B as ButtonAction, C as CursorFocusState, D as DefaultFrontmatterWidget, E as EditorDialect, a as EditorPresetOptions, b as EditorSection, c as EditorSectionSubtype, d as EditorSectionType, e as EmbedType, G as GeometryListener, N as NavigationHook, O as OverlayAction, f as QueryBlockPreviewOptions, R as RuntimePanelEntry, S as SectionRect, g as SectionState, W as WidgetConfig, h as WidgetProps, i as WidgetRegistry, j as activeCursorSection, k as addRuntimePanel, l as blockContentId, m as configureOverlayActions, n as cursorFocusExtension, o as dispatchAddRuntimePanel, p as dispatchExpandRuntimePanel, q as dispatchGutterHighlights, r as dispatchRemoveRuntimePanel, s as editingWidgetsField, t as editorPreset, u as editorTheme, v as embedPreviewDecorations, w as expandRuntimePanel, x as fenceCompletion, y as findQueryBlockSection, z as findWorkoutErrors, A as forceSectionParse, F as frontmatterPreview, H as frontmatterPreviewField, I as getCursorFocusState, J as getOverlayActions, K as gutterHighlightsField, L as gutterUnified, M as handleFenceAutoWrap, P as inlineButtonDecoration, T as lineIdsExtension, U as linkOpen, V as markdownSyntaxHiding, X as markdownTablePreview, Y as navigationFacet, Z as previewDecorations, _ as queryBlockPreview, $ as removeRuntimePanel, a0 as runtimePanelField, a1 as saveBlockQuerySource, a2 as sectionAtPos, a3 as sectionField, a4 as sectionGeometry, a5 as sessionQueryInsert, a6 as sessionQueryWql, a7 as setGutterHighlights, a8 as smartIncrement, a9 as toggleWidgetEdit, aa as urlAtPos, ab as widgetBlockPreview, ac as wodAutoWrap, ad as wodAutocompletion, ae as wodEditorKeymap, af as wodLinter, ag as wodOverlayPanel, ah as workoutLintSource, ai as wrapInTimeFence } from '../index-B8_9uGBX.cjs';
1
+ export { B as ButtonAction, C as CursorFocusState, D as DefaultFrontmatterWidget, E as EditorDialect, a as EditorPresetOptions, b as EditorSection, c as EditorSectionSubtype, d as EditorSectionType, e as EmbedType, G as GeometryListener, N as NavigationHook, O as OverlayAction, f as QueryBlockPreviewOptions, R as RuntimePanelEntry, S as SectionRect, g as SectionState, W as WidgetConfig, h as WidgetProps, i as WidgetRegistry, j as activeCursorSection, k as addRuntimePanel, l as blockContentId, m as configureOverlayActions, n as cursorFocusExtension, o as dispatchAddRuntimePanel, p as dispatchExpandRuntimePanel, q as dispatchGutterHighlights, r as dispatchRemoveRuntimePanel, s as editingWidgetsField, t as editorPreset, u as editorTheme, v as embedPreviewDecorations, w as expandRuntimePanel, x as fenceCompletion, y as findQueryBlockSection, z as findWorkoutErrors, A as forceSectionParse, F as frontmatterPreview, H as frontmatterPreviewField, I as getCursorFocusState, J as getOverlayActions, K as gutterHighlightsField, L as gutterUnified, M as handleFenceAutoWrap, P as inlineButtonDecoration, T as lineIdsExtension, U as linkOpen, V as markdownSyntaxHiding, X as markdownTablePreview, Y as navigationFacet, Z as previewDecorations, _ as queryBlockPreview, $ as removeRuntimePanel, a0 as runtimePanelField, a1 as saveBlockQuerySource, a2 as sectionAtPos, a3 as sectionField, a4 as sectionGeometry, a5 as sessionQueryInsert, a6 as sessionQueryWql, a7 as setGutterHighlights, a8 as smartIncrement, a9 as toggleWidgetEdit, aa as urlAtPos, ab as widgetBlockPreview, ac as wodAutoWrap, ad as wodAutocompletion, ae as wodEditorKeymap, af as wodLinter, ag as wodOverlayPanel, ah as workoutLintSource, ai as wrapInTimeFence } from '../index-CTQ7Hrsa.cjs';
2
2
  import '@codemirror/state';
3
3
  import '@codemirror/view';
4
4
  import '@codemirror/lint';
@@ -1,4 +1,4 @@
1
- export { B as ButtonAction, C as CursorFocusState, D as DefaultFrontmatterWidget, E as EditorDialect, a as EditorPresetOptions, b as EditorSection, c as EditorSectionSubtype, d as EditorSectionType, e as EmbedType, G as GeometryListener, N as NavigationHook, O as OverlayAction, f as QueryBlockPreviewOptions, R as RuntimePanelEntry, S as SectionRect, g as SectionState, W as WidgetConfig, h as WidgetProps, i as WidgetRegistry, j as activeCursorSection, k as addRuntimePanel, l as blockContentId, m as configureOverlayActions, n as cursorFocusExtension, o as dispatchAddRuntimePanel, p as dispatchExpandRuntimePanel, q as dispatchGutterHighlights, r as dispatchRemoveRuntimePanel, s as editingWidgetsField, t as editorPreset, u as editorTheme, v as embedPreviewDecorations, w as expandRuntimePanel, x as fenceCompletion, y as findQueryBlockSection, z as findWorkoutErrors, A as forceSectionParse, F as frontmatterPreview, H as frontmatterPreviewField, I as getCursorFocusState, J as getOverlayActions, K as gutterHighlightsField, L as gutterUnified, M as handleFenceAutoWrap, P as inlineButtonDecoration, T as lineIdsExtension, U as linkOpen, V as markdownSyntaxHiding, X as markdownTablePreview, Y as navigationFacet, Z as previewDecorations, _ as queryBlockPreview, $ as removeRuntimePanel, a0 as runtimePanelField, a1 as saveBlockQuerySource, a2 as sectionAtPos, a3 as sectionField, a4 as sectionGeometry, a5 as sessionQueryInsert, a6 as sessionQueryWql, a7 as setGutterHighlights, a8 as smartIncrement, a9 as toggleWidgetEdit, aa as urlAtPos, ab as widgetBlockPreview, ac as wodAutoWrap, ad as wodAutocompletion, ae as wodEditorKeymap, af as wodLinter, ag as wodOverlayPanel, ah as workoutLintSource, ai as wrapInTimeFence } from '../index-B8_9uGBX.js';
1
+ export { B as ButtonAction, C as CursorFocusState, D as DefaultFrontmatterWidget, E as EditorDialect, a as EditorPresetOptions, b as EditorSection, c as EditorSectionSubtype, d as EditorSectionType, e as EmbedType, G as GeometryListener, N as NavigationHook, O as OverlayAction, f as QueryBlockPreviewOptions, R as RuntimePanelEntry, S as SectionRect, g as SectionState, W as WidgetConfig, h as WidgetProps, i as WidgetRegistry, j as activeCursorSection, k as addRuntimePanel, l as blockContentId, m as configureOverlayActions, n as cursorFocusExtension, o as dispatchAddRuntimePanel, p as dispatchExpandRuntimePanel, q as dispatchGutterHighlights, r as dispatchRemoveRuntimePanel, s as editingWidgetsField, t as editorPreset, u as editorTheme, v as embedPreviewDecorations, w as expandRuntimePanel, x as fenceCompletion, y as findQueryBlockSection, z as findWorkoutErrors, A as forceSectionParse, F as frontmatterPreview, H as frontmatterPreviewField, I as getCursorFocusState, J as getOverlayActions, K as gutterHighlightsField, L as gutterUnified, M as handleFenceAutoWrap, P as inlineButtonDecoration, T as lineIdsExtension, U as linkOpen, V as markdownSyntaxHiding, X as markdownTablePreview, Y as navigationFacet, Z as previewDecorations, _ as queryBlockPreview, $ as removeRuntimePanel, a0 as runtimePanelField, a1 as saveBlockQuerySource, a2 as sectionAtPos, a3 as sectionField, a4 as sectionGeometry, a5 as sessionQueryInsert, a6 as sessionQueryWql, a7 as setGutterHighlights, a8 as smartIncrement, a9 as toggleWidgetEdit, aa as urlAtPos, ab as widgetBlockPreview, ac as wodAutoWrap, ad as wodAutocompletion, ae as wodEditorKeymap, af as wodLinter, ag as wodOverlayPanel, ah as workoutLintSource, ai as wrapInTimeFence } from '../index-CTQ7Hrsa.js';
2
2
  import '@codemirror/state';
3
3
  import '@codemirror/view';
4
4
  import '@codemirror/lint';
@@ -1,3 +1,3 @@
1
- export { DefaultFrontmatterWidget, activeCursorSection, addRuntimePanel, blockContentId, configureOverlayActions, cursorFocusExtension, dispatchAddRuntimePanel, dispatchExpandRuntimePanel, dispatchGutterHighlights, dispatchRemoveRuntimePanel, editingWidgetsField, editorPreset, editorTheme, embedPreviewDecorations, expandRuntimePanel, fenceCompletion, findQueryBlockSection, findWorkoutErrors, forceSectionParse, frontmatterPreview, frontmatterPreviewField, getCursorFocusState, getOverlayActions, gutterHighlightsField, gutterUnified, handleFenceAutoWrap, inlineButtonDecoration, lineIdsExtension, linkOpen, markdownSyntaxHiding, markdownTablePreview, navigationFacet, previewDecorations, queryBlockPreview, removeRuntimePanel, runtimePanelField, saveBlockQuerySource, sectionAtPos, sectionField, sectionGeometry, sessionQueryInsert, sessionQueryWql, setGutterHighlights, smartIncrement, toggleWidgetEdit, urlAtPos, widgetBlockPreview, wodAutoWrap, wodAutocompletion, wodEditorKeymap, wodLinter, wodOverlayPanel, workoutLintSource, wrapInTimeFence } from '../chunk-3SOUSOM5.mjs';
1
+ export { DefaultFrontmatterWidget, activeCursorSection, addRuntimePanel, blockContentId, configureOverlayActions, cursorFocusExtension, dispatchAddRuntimePanel, dispatchExpandRuntimePanel, dispatchGutterHighlights, dispatchRemoveRuntimePanel, editingWidgetsField, editorPreset, editorTheme, embedPreviewDecorations, expandRuntimePanel, fenceCompletion, findQueryBlockSection, findWorkoutErrors, forceSectionParse, frontmatterPreview, frontmatterPreviewField, getCursorFocusState, getOverlayActions, gutterHighlightsField, gutterUnified, handleFenceAutoWrap, inlineButtonDecoration, lineIdsExtension, linkOpen, markdownSyntaxHiding, markdownTablePreview, navigationFacet, previewDecorations, queryBlockPreview, removeRuntimePanel, runtimePanelField, saveBlockQuerySource, sectionAtPos, sectionField, sectionGeometry, sessionQueryInsert, sessionQueryWql, setGutterHighlights, smartIncrement, toggleWidgetEdit, urlAtPos, widgetBlockPreview, wodAutoWrap, wodAutocompletion, wodEditorKeymap, wodLinter, wodOverlayPanel, workoutLintSource, wrapInTimeFence } from '../chunk-5JJK5ONN.mjs';
2
2
  //# sourceMappingURL=index.mjs.map
3
3
  //# sourceMappingURL=index.mjs.map
@@ -4,7 +4,7 @@ import { ViewPlugin, DecorationSet, ViewUpdate, EditorView, Decoration, WidgetTy
4
4
  import { Diagnostic } from '@codemirror/lint';
5
5
  import { CompletionContext, CompletionResult } from '@codemirror/autocomplete';
6
6
  import { ScriptBlock, ICodeStatement, IMetric } from '@bitcobblers/wod-wiki-core';
7
- import { QueryOptions, QueryResult, ParsedFindQuery, FindOptions, FindQueryResult, ParsedRowsQuery, RowsQueryResult, ParsedQuery } from '@bitcobblers/wod-wiki-wql';
7
+ import { QueryOptions, QueryResult, ParsedFindQuery, FindOptions, FindQueryResult, ParsedRowsQuery, RowsQueryResult, ParsedAggregateQuery } from '@bitcobblers/wod-wiki-wql';
8
8
  import * as react from 'react';
9
9
 
10
10
  declare function editorTheme(isDark: boolean): Extension;
@@ -178,7 +178,7 @@ interface QueryExecutor {
178
178
  runRows(parsed: ParsedRowsQuery, options?: {
179
179
  anchorNow?: number;
180
180
  }): Promise<RowsQueryResult>;
181
- run?(parsed: ParsedQuery, options?: QueryOptions): Promise<QueryResult>;
181
+ run?(parsed: ParsedAggregateQuery, options?: QueryOptions): Promise<QueryResult>;
182
182
  }
183
183
 
184
184
  interface QueryBlockPreviewOptions {
@@ -4,7 +4,7 @@ import { ViewPlugin, DecorationSet, ViewUpdate, EditorView, Decoration, WidgetTy
4
4
  import { Diagnostic } from '@codemirror/lint';
5
5
  import { CompletionContext, CompletionResult } from '@codemirror/autocomplete';
6
6
  import { ScriptBlock, ICodeStatement, IMetric } from '@bitcobblers/wod-wiki-core';
7
- import { QueryOptions, QueryResult, ParsedFindQuery, FindOptions, FindQueryResult, ParsedRowsQuery, RowsQueryResult, ParsedQuery } from '@bitcobblers/wod-wiki-wql';
7
+ import { QueryOptions, QueryResult, ParsedFindQuery, FindOptions, FindQueryResult, ParsedRowsQuery, RowsQueryResult, ParsedAggregateQuery } from '@bitcobblers/wod-wiki-wql';
8
8
  import * as react from 'react';
9
9
 
10
10
  declare function editorTheme(isDark: boolean): Extension;
@@ -178,7 +178,7 @@ interface QueryExecutor {
178
178
  runRows(parsed: ParsedRowsQuery, options?: {
179
179
  anchorNow?: number;
180
180
  }): Promise<RowsQueryResult>;
181
- run?(parsed: ParsedQuery, options?: QueryOptions): Promise<QueryResult>;
181
+ run?(parsed: ParsedAggregateQuery, options?: QueryOptions): Promise<QueryResult>;
182
182
  }
183
183
 
184
184
  interface QueryBlockPreviewOptions {
package/dist/index.cjs CHANGED
@@ -1322,7 +1322,7 @@ function RowsResultsChrome({
1322
1322
  return;
1323
1323
  }
1324
1324
  let cancelled = false;
1325
- const wideQuery = wodWikiWql.parseQuery(`rows:{block:${blockContentId2}}`);
1325
+ const wideQuery = wodWikiWql.parseQuery(`rows:all{block:${blockContentId2}}`);
1326
1326
  if (!wodWikiWql.isRowsQuery(wideQuery)) return;
1327
1327
  void executor.runRows(wideQuery).then((res) => {
1328
1328
  if (!cancelled) setWideResult(res);
@@ -1795,7 +1795,7 @@ function clausesToWql(clauses) {
1795
1795
  const filterBraces = filterParts.length > 0 ? `{${filterParts.join(", ")}}` : "";
1796
1796
  const source = clauseValue(clauses, "source", "notes");
1797
1797
  if (source === "rows") {
1798
- const output = clauseValue(clauses, "output", "");
1798
+ const output = clauseValue(clauses, "output", "") || "all";
1799
1799
  const timeClause2 = clauses.find((c) => c.type === "time");
1800
1800
  let timeStr2 = "";
1801
1801
  if (timeClause2 && timeClause2.value && timeClause2.value !== "all") {
@@ -1921,6 +1921,7 @@ function wqlToClauses(wql2) {
1921
1921
  const headMatch2 = RESTORE_FIND_HEAD_RE.exec(primaryText);
1922
1922
  if (!headMatch2) return null;
1923
1923
  const targetValue = headMatch2[1];
1924
+ if (!wodWikiWql.WQL_FIND_TARGETS.includes(targetValue)) return null;
1924
1925
  const rest2 = primaryText.slice(headMatch2[0].length).trim();
1925
1926
  const filterClauses2 = restoreFilters(rest2);
1926
1927
  if (!filterClauses2) return null;
@@ -2476,7 +2477,7 @@ function diagnoseClauses(clauses) {
2476
2477
  return {
2477
2478
  valid: false,
2478
2479
  wql: clausesToWql(clauses),
2479
- ast: { raw: "", error },
2480
+ ast: { family: "aggregate", raw: "", agg: "sum", metric: "", filters: [], groupBy: [], error },
2480
2481
  error,
2481
2482
  offendingClauseId: clause.id
2482
2483
  };
@@ -2546,7 +2547,7 @@ function WqlDiagnosticsStrip({
2546
2547
  summary.hasJoin && /* @__PURE__ */ jsxRuntime.jsx("span", { "data-testid": "diag-summary-join", className: "text-primary font-semibold", children: "+join" })
2547
2548
  ] });
2548
2549
  })() }),
2549
- valid && !wodWikiWql.isFindQuery(ast) && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex flex-wrap items-center gap-x-3 text-[11px] opacity-80 border-l border-border/50 pl-3", children: (() => {
2550
+ valid && wodWikiWql.isAggregateQuery(ast) && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex flex-wrap items-center gap-x-3 text-[11px] opacity-80 border-l border-border/50 pl-3", children: (() => {
2550
2551
  const summary = summarizeAggregate(ast);
2551
2552
  return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
2552
2553
  /* @__PURE__ */ jsxRuntime.jsx(SummaryChip, { label: "agg", value: summary.agg, testId: "diag-summary-agg" }),
@@ -4639,7 +4640,7 @@ function dispatchExpandRuntimePanel(view, sectionId, expanded) {
4639
4640
 
4640
4641
  // src/extensions/sessionQueryBlock.ts
4641
4642
  function sessionQueryWql(resultId) {
4642
- return `rows:{result:${resultId}}`;
4643
+ return `rows:all{result:${resultId}}`;
4643
4644
  }
4644
4645
  function sessionQueryInsert(state, blockId, resultId, runBlock) {
4645
4646
  const sections = state.field(sectionField).sections;
@@ -10785,13 +10786,13 @@ function editorPreset(optionsOrDialect = "markdown") {
10785
10786
  }
10786
10787
 
10787
10788
  // src/version.ts
10788
- var VERSION = "0.7.37";
10789
- var GIT_SHA = "713c593";
10790
- var BUILD_TIME = "2026-08-25T00:18:25.714Z";
10789
+ var VERSION = "0.8.39";
10790
+ var GIT_SHA = "3c19185";
10791
+ var BUILD_TIME = "2026-08-26T00:07:31.934Z";
10791
10792
  var SEMVER = {
10792
- version: "0.7.37",
10793
- gitSha: "713c593",
10794
- buildTime: "2026-08-25T00:18:25.714Z"
10793
+ version: "0.8.39",
10794
+ gitSha: "3c19185",
10795
+ buildTime: "2026-08-26T00:07:31.934Z"
10795
10796
  };
10796
10797
 
10797
10798
  exports.AGG_OPTIONS = AGG_OPTIONS;