@contraagent/ui 0.1.0 → 0.3.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.
- package/README.md +9 -2
- package/custom-elements.json +3300 -3098
- package/dist/adapters/check-rows.d.ts +2 -0
- package/dist/adapters/check-rows.d.ts.map +1 -1
- package/dist/adapters/check-rows.js +2 -0
- package/dist/adapters/check-rows.js.map +1 -1
- package/dist/adapters/panel-body.d.ts +15 -1
- package/dist/adapters/panel-body.d.ts.map +1 -1
- package/dist/adapters/panel-body.js +27 -0
- package/dist/adapters/panel-body.js.map +1 -1
- package/dist/contraagent-ui.js +684 -641
- package/dist/elements/lists/ca-panel-body.d.ts +16 -3
- package/dist/elements/lists/ca-panel-body.d.ts.map +1 -1
- package/dist/elements/lists/ca-panel-body.js +74 -8
- package/dist/elements/lists/ca-panel-body.js.map +1 -1
- package/dist/elements/overview/ca-overview.d.ts +2 -1
- package/dist/elements/overview/ca-overview.d.ts.map +1 -1
- package/dist/elements/overview/ca-overview.js +8 -1
- package/dist/elements/overview/ca-overview.js.map +1 -1
- package/dist/elements/overview/ca-services.d.ts +25 -0
- package/dist/elements/overview/ca-services.d.ts.map +1 -0
- package/dist/elements/overview/ca-services.js +77 -0
- package/dist/elements/overview/ca-services.js.map +1 -0
- package/dist/elements/overview/index.d.ts +1 -0
- package/dist/elements/overview/index.d.ts.map +1 -1
- package/dist/elements/overview/index.js +1 -0
- package/dist/elements/overview/index.js.map +1 -1
- package/dist/elements/shared/contract-parts.d.ts.map +1 -1
- package/dist/elements/shared/contract-parts.js +18 -2
- package/dist/elements/shared/contract-parts.js.map +1 -1
- package/dist/elements/shell/ca-monitor.d.ts +4 -2
- package/dist/elements/shell/ca-monitor.d.ts.map +1 -1
- package/dist/elements/shell/ca-monitor.js +4 -2
- package/dist/elements/shell/ca-monitor.js.map +1 -1
- package/dist/elements/task/header.d.ts.map +1 -1
- package/dist/elements/task/header.js +7 -3
- package/dist/elements/task/header.js.map +1 -1
- package/dist/locales/ja.d.ts +24 -0
- package/dist/locales/ja.d.ts.map +1 -1
- package/dist/locales/ja.js +24 -0
- package/dist/locales/ja.js.map +1 -1
- package/dist/words/changes.d.ts +2 -2
- package/dist/words/changes.d.ts.map +1 -1
- package/dist/words/changes.js +2 -0
- package/dist/words/changes.js.map +1 -1
- package/dist/words/index.d.ts +1 -0
- package/dist/words/index.d.ts.map +1 -1
- package/dist/words/index.js +1 -0
- package/dist/words/index.js.map +1 -1
- package/dist/words/panels.d.ts +6 -0
- package/dist/words/panels.d.ts.map +1 -1
- package/dist/words/panels.js +13 -0
- package/dist/words/panels.js.map +1 -1
- package/dist/words/services.d.ts +16 -0
- package/dist/words/services.d.ts.map +1 -0
- package/dist/words/services.js +45 -0
- package/dist/words/services.js.map +1 -0
- package/docs/embed.md +4 -1
- package/package.json +4 -4
- package/src/adapters/check-rows.ts +3 -0
- package/src/adapters/panel-body.ts +40 -2
- package/src/elements/lists/ca-panel-body.ts +70 -9
- package/src/elements/overview/ca-overview.ts +8 -1
- package/src/elements/overview/ca-services.ts +66 -0
- package/src/elements/overview/index.ts +1 -0
- package/src/elements/shared/contract-parts.ts +18 -2
- package/src/elements/shell/ca-monitor.ts +4 -2
- package/src/elements/task/header.ts +7 -3
- package/src/locales/ja.ts +24 -0
- package/src/words/changes.ts +4 -2
- package/src/words/index.ts +1 -0
- package/src/words/panels.ts +18 -0
- package/src/words/services.ts +57 -0
- package/dist/core/clock.d.ts +0 -20
- package/dist/core/clock.d.ts.map +0 -1
- package/dist/core/clock.js +0 -45
- package/dist/core/clock.js.map +0 -1
- package/dist/core/route.d.ts +0 -62
- package/dist/core/route.d.ts.map +0 -1
- package/dist/core/route.js +0 -143
- package/dist/core/route.js.map +0 -1
- package/dist/core/router.d.ts +0 -27
- package/dist/core/router.d.ts.map +0 -1
- package/dist/core/router.js +0 -57
- package/dist/core/router.js.map +0 -1
- package/dist/elements/lists/filters.d.ts +0 -28
- package/dist/elements/lists/filters.d.ts.map +0 -1
- package/dist/elements/lists/filters.js +0 -71
- package/dist/elements/lists/filters.js.map +0 -1
- package/dist/elements/overview/ca-pipeline-progress.d.ts +0 -17
- package/dist/elements/overview/ca-pipeline-progress.d.ts.map +0 -1
- package/dist/elements/overview/ca-pipeline-progress.js +0 -119
- package/dist/elements/overview/ca-pipeline-progress.js.map +0 -1
- package/dist/elements/overview/ca-plan-matrix.d.ts +0 -27
- package/dist/elements/overview/ca-plan-matrix.d.ts.map +0 -1
- package/dist/elements/overview/ca-plan-matrix.js +0 -113
- package/dist/elements/overview/ca-plan-matrix.js.map +0 -1
- package/dist/elements/overview/flow-types.d.ts +0 -2
- package/dist/elements/overview/flow-types.d.ts.map +0 -1
- package/dist/elements/overview/flow-types.js +0 -2
- package/dist/elements/overview/flow-types.js.map +0 -1
- package/dist/elements/overview/graph/arrange.d.ts +0 -16
- package/dist/elements/overview/graph/arrange.d.ts.map +0 -1
- package/dist/elements/overview/graph/arrange.js +0 -152
- package/dist/elements/overview/graph/arrange.js.map +0 -1
- package/dist/elements/overview/graph/card.d.ts +0 -64
- package/dist/elements/overview/graph/card.d.ts.map +0 -1
- package/dist/elements/overview/graph/card.js +0 -160
- package/dist/elements/overview/graph/card.js.map +0 -1
- package/dist/elements/overview/graph/flow-index.d.ts +0 -52
- package/dist/elements/overview/graph/flow-index.d.ts.map +0 -1
- package/dist/elements/overview/graph/flow-index.js +0 -121
- package/dist/elements/overview/graph/flow-index.js.map +0 -1
- package/dist/elements/overview/graph/highlight.d.ts +0 -14
- package/dist/elements/overview/graph/highlight.d.ts.map +0 -1
- package/dist/elements/overview/graph/highlight.js +0 -33
- package/dist/elements/overview/graph/highlight.js.map +0 -1
- package/dist/elements/overview/graph/layer.d.ts +0 -32
- package/dist/elements/overview/graph/layer.d.ts.map +0 -1
- package/dist/elements/overview/graph/layer.js +0 -92
- package/dist/elements/overview/graph/layer.js.map +0 -1
- package/dist/elements/overview/graph/layout.d.ts +0 -80
- package/dist/elements/overview/graph/layout.d.ts.map +0 -1
- package/dist/elements/overview/graph/layout.js +0 -261
- package/dist/elements/overview/graph/layout.js.map +0 -1
- package/dist/elements/overview/graph/marks.d.ts +0 -18
- package/dist/elements/overview/graph/marks.d.ts.map +0 -1
- package/dist/elements/overview/graph/marks.js +0 -17
- package/dist/elements/overview/graph/marks.js.map +0 -1
- package/dist/elements/overview/graph/matrix.d.ts +0 -58
- package/dist/elements/overview/graph/matrix.d.ts.map +0 -1
- package/dist/elements/overview/graph/matrix.js +0 -93
- package/dist/elements/overview/graph/matrix.js.map +0 -1
- package/dist/elements/overview/graph/nav.d.ts +0 -15
- package/dist/elements/overview/graph/nav.d.ts.map +0 -1
- package/dist/elements/overview/graph/nav.js +0 -80
- package/dist/elements/overview/graph/nav.js.map +0 -1
- package/dist/elements/overview/graph/pan-zoom.d.ts +0 -83
- package/dist/elements/overview/graph/pan-zoom.d.ts.map +0 -1
- package/dist/elements/overview/graph/pan-zoom.js +0 -189
- package/dist/elements/overview/graph/pan-zoom.js.map +0 -1
- package/dist/elements/overview/graph/paths.d.ts +0 -9
- package/dist/elements/overview/graph/paths.d.ts.map +0 -1
- package/dist/elements/overview/graph/paths.js +0 -44
- package/dist/elements/overview/graph/paths.js.map +0 -1
- package/dist/elements/overview/graph/place-card.d.ts +0 -36
- package/dist/elements/overview/graph/place-card.d.ts.map +0 -1
- package/dist/elements/overview/graph/place-card.js +0 -68
- package/dist/elements/overview/graph/place-card.js.map +0 -1
- package/dist/elements/overview/graph/project.d.ts +0 -31
- package/dist/elements/overview/graph/project.d.ts.map +0 -1
- package/dist/elements/overview/graph/project.js +0 -455
- package/dist/elements/overview/graph/project.js.map +0 -1
- package/dist/elements/overview/graph/selection.d.ts +0 -31
- package/dist/elements/overview/graph/selection.d.ts.map +0 -1
- package/dist/elements/overview/graph/selection.js +0 -44
- package/dist/elements/overview/graph/selection.js.map +0 -1
- package/dist/elements/overview/graph/states.d.ts +0 -6
- package/dist/elements/overview/graph/states.d.ts.map +0 -1
- package/dist/elements/overview/graph/states.js +0 -5
- package/dist/elements/overview/graph/states.js.map +0 -1
- package/dist/elements/overview/graph/types.d.ts +0 -124
- package/dist/elements/overview/graph/types.d.ts.map +0 -1
- package/dist/elements/overview/graph/types.js +0 -3
- package/dist/elements/overview/graph/types.js.map +0 -1
- package/dist/elements/overview/graph/view.d.ts +0 -16
- package/dist/elements/overview/graph/view.d.ts.map +0 -1
- package/dist/elements/overview/graph/view.js +0 -20
- package/dist/elements/overview/graph/view.js.map +0 -1
- package/dist/elements/overview/kpis-model.d.ts +0 -31
- package/dist/elements/overview/kpis-model.d.ts.map +0 -1
- package/dist/elements/overview/kpis-model.js +0 -30
- package/dist/elements/overview/kpis-model.js.map +0 -1
- package/dist/elements/overview/logic.d.ts +0 -442
- package/dist/elements/overview/logic.d.ts.map +0 -1
- package/dist/elements/overview/logic.js +0 -1431
- package/dist/elements/overview/logic.js.map +0 -1
- package/dist/elements/overview/pipeline-graph/dag.d.ts +0 -4
- package/dist/elements/overview/pipeline-graph/dag.d.ts.map +0 -1
- package/dist/elements/overview/pipeline-graph/dag.js +0 -259
- package/dist/elements/overview/pipeline-graph/dag.js.map +0 -1
- package/dist/elements/overview/pipeline-graph/icons.d.ts +0 -5
- package/dist/elements/overview/pipeline-graph/icons.d.ts.map +0 -1
- package/dist/elements/overview/pipeline-graph/icons.js +0 -13
- package/dist/elements/overview/pipeline-graph/icons.js.map +0 -1
- package/dist/elements/overview/pipeline-graph/legend.d.ts +0 -9
- package/dist/elements/overview/pipeline-graph/legend.d.ts.map +0 -1
- package/dist/elements/overview/pipeline-graph/legend.js +0 -59
- package/dist/elements/overview/pipeline-graph/legend.js.map +0 -1
- package/dist/elements/overview/pipeline-graph/matrix.d.ts +0 -4
- package/dist/elements/overview/pipeline-graph/matrix.d.ts.map +0 -1
- package/dist/elements/overview/pipeline-graph/matrix.js +0 -193
- package/dist/elements/overview/pipeline-graph/matrix.js.map +0 -1
- package/dist/elements/overview/pipeline-graph/table.d.ts +0 -11
- package/dist/elements/overview/pipeline-graph/table.d.ts.map +0 -1
- package/dist/elements/overview/pipeline-graph/table.js +0 -74
- package/dist/elements/overview/pipeline-graph/table.js.map +0 -1
- package/dist/elements/overview/pipeline-graph/tools.d.ts +0 -5
- package/dist/elements/overview/pipeline-graph/tools.d.ts.map +0 -1
- package/dist/elements/overview/pipeline-graph/tools.js +0 -48
- package/dist/elements/overview/pipeline-graph/tools.js.map +0 -1
- package/dist/elements/overview/pipeline-graph/words.d.ts +0 -45
- package/dist/elements/overview/pipeline-graph/words.d.ts.map +0 -1
- package/dist/elements/overview/pipeline-graph/words.js +0 -108
- package/dist/elements/overview/pipeline-graph/words.js.map +0 -1
- package/dist/elements/overview/place-card.d.ts +0 -36
- package/dist/elements/overview/place-card.d.ts.map +0 -1
- package/dist/elements/overview/place-card.js +0 -68
- package/dist/elements/overview/place-card.js.map +0 -1
- package/dist/elements/overview/timeline-model.d.ts +0 -44
- package/dist/elements/overview/timeline-model.d.ts.map +0 -1
- package/dist/elements/overview/timeline-model.js +0 -53
- package/dist/elements/overview/timeline-model.js.map +0 -1
- package/dist/elements/shared/ca-count.d.ts +0 -17
- package/dist/elements/shared/ca-count.d.ts.map +0 -1
- package/dist/elements/shared/ca-count.js +0 -59
- package/dist/elements/shared/ca-count.js.map +0 -1
- package/dist/elements/shared/ca-elapsed.d.ts +0 -14
- package/dist/elements/shared/ca-elapsed.d.ts.map +0 -1
- package/dist/elements/shared/ca-elapsed.js +0 -33
- package/dist/elements/shared/ca-elapsed.js.map +0 -1
- package/dist/elements/shared/ca-json-tree.d.ts +0 -16
- package/dist/elements/shared/ca-json-tree.d.ts.map +0 -1
- package/dist/elements/shared/ca-json-tree.js +0 -52
- package/dist/elements/shared/ca-json-tree.js.map +0 -1
- package/dist/elements/shared/ca-markdown.d.ts +0 -19
- package/dist/elements/shared/ca-markdown.d.ts.map +0 -1
- package/dist/elements/shared/ca-markdown.js +0 -59
- package/dist/elements/shared/ca-markdown.js.map +0 -1
- package/dist/elements/shared/fact-line.d.ts +0 -4
- package/dist/elements/shared/fact-line.d.ts.map +0 -1
- package/dist/elements/shared/fact-line.js +0 -8
- package/dist/elements/shared/fact-line.js.map +0 -1
- package/dist/elements/task/rounds.d.ts +0 -14
- package/dist/elements/task/rounds.d.ts.map +0 -1
- package/dist/elements/task/rounds.js +0 -59
- package/dist/elements/task/rounds.js.map +0 -1
- package/dist/elements/task/transcript-model.d.ts +0 -106
- package/dist/elements/task/transcript-model.d.ts.map +0 -1
- package/dist/elements/task/transcript-model.js +0 -280
- package/dist/elements/task/transcript-model.js.map +0 -1
- package/dist/elements/task/who.d.ts +0 -5
- package/dist/elements/task/who.d.ts.map +0 -1
- package/dist/elements/task/who.js +0 -30
- package/dist/elements/task/who.js.map +0 -1
- package/dist/events.d.ts +0 -107
- package/dist/events.d.ts.map +0 -1
- package/dist/events.js +0 -5
- package/dist/events.js.map +0 -1
- package/dist/i18n.d.ts +0 -16
- package/dist/i18n.d.ts.map +0 -1
- package/dist/i18n.js +0 -48
- package/dist/i18n.js.map +0 -1
- package/dist/lib/clock.d.ts +0 -20
- package/dist/lib/clock.d.ts.map +0 -1
- package/dist/lib/clock.js +0 -45
- package/dist/lib/clock.js.map +0 -1
- package/dist/lib/format.d.ts +0 -35
- package/dist/lib/format.d.ts.map +0 -1
- package/dist/lib/format.js +0 -117
- package/dist/lib/format.js.map +0 -1
- package/dist/lib/highlight.d.ts +0 -5
- package/dist/lib/highlight.d.ts.map +0 -1
- package/dist/lib/highlight.js +0 -86
- package/dist/lib/highlight.js.map +0 -1
- package/dist/lib/labels.d.ts +0 -103
- package/dist/lib/labels.d.ts.map +0 -1
- package/dist/lib/labels.js +0 -249
- package/dist/lib/labels.js.map +0 -1
- package/dist/lib/markdown.d.ts +0 -13
- package/dist/lib/markdown.d.ts.map +0 -1
- package/dist/lib/markdown.js +0 -118
- package/dist/lib/markdown.js.map +0 -1
- package/dist/lib/memory.d.ts +0 -27
- package/dist/lib/memory.d.ts.map +0 -1
- package/dist/lib/memory.js +0 -117
- package/dist/lib/memory.js.map +0 -1
- package/dist/lib/quota-format.d.ts +0 -28
- package/dist/lib/quota-format.d.ts.map +0 -1
- package/dist/lib/quota-format.js +0 -67
- package/dist/lib/quota-format.js.map +0 -1
- package/dist/lib/scroll.d.ts +0 -16
- package/dist/lib/scroll.d.ts.map +0 -1
- package/dist/lib/scroll.js +0 -70
- package/dist/lib/scroll.js.map +0 -1
- package/dist/lib/status.d.ts +0 -25
- package/dist/lib/status.d.ts.map +0 -1
- package/dist/lib/status.js +0 -40
- package/dist/lib/status.js.map +0 -1
- package/dist/route.d.ts +0 -46
- package/dist/route.d.ts.map +0 -1
- package/dist/route.js +0 -102
- package/dist/route.js.map +0 -1
- package/dist/router.d.ts +0 -23
- package/dist/router.d.ts.map +0 -1
- package/dist/router.js +0 -55
- package/dist/router.js.map +0 -1
- package/dist/styles/base.d.ts +0 -11
- package/dist/styles/base.d.ts.map +0 -1
- package/dist/styles/base.js +0 -241
- package/dist/styles/base.js.map +0 -1
- package/dist/styles/chips.d.ts +0 -2
- package/dist/styles/chips.d.ts.map +0 -1
- package/dist/styles/chips.js +0 -18
- package/dist/styles/chips.js.map +0 -1
- package/dist/styles/executor-icon.d.ts +0 -3
- package/dist/styles/executor-icon.d.ts.map +0 -1
- package/dist/styles/executor-icon.js +0 -9
- package/dist/styles/executor-icon.js.map +0 -1
- package/dist/styles/facts.d.ts +0 -2
- package/dist/styles/facts.d.ts.map +0 -1
- package/dist/styles/facts.js +0 -7
- package/dist/styles/facts.js.map +0 -1
- package/dist/styles/index.d.ts +0 -17
- package/dist/styles/index.d.ts.map +0 -1
- package/dist/styles/index.js +0 -16
- package/dist/styles/index.js.map +0 -1
- package/dist/styles/layout.d.ts +0 -2
- package/dist/styles/layout.d.ts.map +0 -1
- package/dist/styles/layout.js +0 -30
- package/dist/styles/layout.js.map +0 -1
- package/dist/styles/legend.d.ts +0 -2
- package/dist/styles/legend.d.ts.map +0 -1
- package/dist/styles/legend.js +0 -8
- package/dist/styles/legend.js.map +0 -1
- package/dist/styles/meter.d.ts +0 -3
- package/dist/styles/meter.d.ts.map +0 -1
- package/dist/styles/meter.js +0 -9
- package/dist/styles/meter.js.map +0 -1
- package/dist/styles/motion.d.ts +0 -2
- package/dist/styles/motion.d.ts.map +0 -1
- package/dist/styles/motion.js +0 -27
- package/dist/styles/motion.js.map +0 -1
- package/dist/styles/prose.d.ts +0 -3
- package/dist/styles/prose.d.ts.map +0 -1
- package/dist/styles/prose.js +0 -59
- package/dist/styles/prose.js.map +0 -1
- package/dist/styles/reset.d.ts +0 -2
- package/dist/styles/reset.d.ts.map +0 -1
- package/dist/styles/reset.js +0 -13
- package/dist/styles/reset.js.map +0 -1
- package/dist/styles/status.d.ts +0 -2
- package/dist/styles/status.d.ts.map +0 -1
- package/dist/styles/status.js +0 -52
- package/dist/styles/status.js.map +0 -1
- package/dist/styles/text.d.ts +0 -2
- package/dist/styles/text.d.ts.map +0 -1
- package/dist/styles/text.js +0 -21
- package/dist/styles/text.js.map +0 -1
- package/dist/styles/theme-sheet.d.ts +0 -12
- package/dist/styles/theme-sheet.d.ts.map +0 -1
- package/dist/styles/theme-sheet.js +0 -24
- package/dist/styles/theme-sheet.js.map +0 -1
- package/dist/styles/themes.d.ts +0 -75
- package/dist/styles/themes.d.ts.map +0 -1
- package/dist/styles/themes.js +0 -452
- package/dist/styles/themes.js.map +0 -1
- package/dist/styles/tokens.d.ts +0 -8
- package/dist/styles/tokens.d.ts.map +0 -1
- package/dist/styles/tokens.js +0 -32
- package/dist/styles/tokens.js.map +0 -1
- package/dist/themes/boot.d.ts +0 -7
- package/dist/themes/boot.d.ts.map +0 -1
- package/dist/themes/boot.js +0 -14
- package/dist/themes/boot.js.map +0 -1
- package/dist/themes/choice.d.ts +0 -16
- package/dist/themes/choice.d.ts.map +0 -1
- package/dist/themes/choice.js +0 -45
- package/dist/themes/choice.js.map +0 -1
- package/dist/themes/data.d.ts +0 -42
- package/dist/themes/data.d.ts.map +0 -1
- package/dist/themes/data.js +0 -356
- package/dist/themes/data.js.map +0 -1
- package/dist/themes/index.d.ts +0 -5
- package/dist/themes/index.d.ts.map +0 -1
- package/dist/themes/index.js +0 -8
- package/dist/themes/index.js.map +0 -1
- package/dist/themes/sheet.d.ts +0 -12
- package/dist/themes/sheet.d.ts.map +0 -1
- package/dist/themes/sheet.js +0 -24
- package/dist/themes/sheet.js.map +0 -1
- package/dist/themes/tokens-list.d.ts +0 -15
- package/dist/themes/tokens-list.d.ts.map +0 -1
- package/dist/themes/tokens-list.js +0 -62
- package/dist/themes/tokens-list.js.map +0 -1
- package/dist/words/units.d.ts +0 -9
- package/dist/words/units.d.ts.map +0 -1
- package/dist/words/units.js +0 -12
- package/dist/words/units.js.map +0 -1
package/dist/lib/memory.js
DELETED
|
@@ -1,117 +0,0 @@
|
|
|
1
|
-
// What the reader did on a page that the URL does not say: how far a list is
|
|
2
|
-
// scrolled, which cards are open. Kept in the current history entry, so Back,
|
|
3
|
-
// Forward and a reload return to it, and a new entry starts clean.
|
|
4
|
-
//
|
|
5
|
-
// Stored under one key of `history.state`, merged with whatever else a host
|
|
6
|
-
// page keeps there (a router's own state survives).
|
|
7
|
-
const NS = 'contraagent';
|
|
8
|
-
const WRITE_MS = 200;
|
|
9
|
-
let pending = null;
|
|
10
|
-
/** The entry `pending` belongs to: after Back/Forward it must not land on another one. */
|
|
11
|
-
let pendingEntry = '';
|
|
12
|
-
let timer = null;
|
|
13
|
-
function state() {
|
|
14
|
-
const s = globalThis.history?.state;
|
|
15
|
-
return s && typeof s === 'object' ? s : {};
|
|
16
|
-
}
|
|
17
|
-
function bag() {
|
|
18
|
-
const mine = state()[NS];
|
|
19
|
-
return mine && typeof mine === 'object' ? mine : {};
|
|
20
|
-
}
|
|
21
|
-
/** The current entry's id, given one on first use. */
|
|
22
|
-
function entry() {
|
|
23
|
-
const id = bag().entry;
|
|
24
|
-
if (id)
|
|
25
|
-
return id;
|
|
26
|
-
const fresh = Math.random().toString(36).slice(2);
|
|
27
|
-
history.replaceState({ ...state(), [NS]: { ...bag(), entry: fresh } }, '');
|
|
28
|
-
return fresh;
|
|
29
|
-
}
|
|
30
|
-
function write() {
|
|
31
|
-
if (timer)
|
|
32
|
-
clearTimeout(timer);
|
|
33
|
-
timer = null;
|
|
34
|
-
const p = pending;
|
|
35
|
-
pending = null;
|
|
36
|
-
if (!p || !globalThis.history || bag().entry !== pendingEntry)
|
|
37
|
-
return;
|
|
38
|
-
history.replaceState({ ...state(), [NS]: { ...bag(), ...p } }, '');
|
|
39
|
-
}
|
|
40
|
-
/** The value remembered under `id` in the current history entry. */
|
|
41
|
-
export function recall(id) {
|
|
42
|
-
if (!globalThis.history)
|
|
43
|
-
return undefined;
|
|
44
|
-
const fromPending = pending && pendingEntry === bag().entry && id in pending;
|
|
45
|
-
return (fromPending ? pending[id] : bag()[id]);
|
|
46
|
-
}
|
|
47
|
-
/** Remember `value` under `id` in the current history entry (written shortly after, batched). */
|
|
48
|
-
export function remember(id, value) {
|
|
49
|
-
if (!globalThis.history)
|
|
50
|
-
return;
|
|
51
|
-
const e = entry();
|
|
52
|
-
if (pending && pendingEntry !== e)
|
|
53
|
-
pending = null;
|
|
54
|
-
pendingEntry = e;
|
|
55
|
-
(pending ??= {})[id] = value;
|
|
56
|
-
timer ??= setTimeout(write, WRITE_MS);
|
|
57
|
-
}
|
|
58
|
-
/** Write what is pending now: before the page pushes a new entry, so it lands on the old one. */
|
|
59
|
-
export function flushMemory() {
|
|
60
|
-
write();
|
|
61
|
-
}
|
|
62
|
-
globalThis.addEventListener?.('pagehide', flushMemory);
|
|
63
|
-
/** A set of ids remembered under `id` (open cards, folds). */
|
|
64
|
-
export class RememberedSet {
|
|
65
|
-
constructor(id) {
|
|
66
|
-
this.id = id;
|
|
67
|
-
this.items = new Set(recall(id) ?? []);
|
|
68
|
-
}
|
|
69
|
-
has(x) {
|
|
70
|
-
return this.items.has(x);
|
|
71
|
-
}
|
|
72
|
-
set(x, on) {
|
|
73
|
-
if (on === this.items.has(x))
|
|
74
|
-
return;
|
|
75
|
-
if (on)
|
|
76
|
-
this.items.add(x);
|
|
77
|
-
else
|
|
78
|
-
this.items.delete(x);
|
|
79
|
-
remember(this.id, [...this.items]);
|
|
80
|
-
}
|
|
81
|
-
}
|
|
82
|
-
/**
|
|
83
|
-
* A set of ids kept for this browser tab (sessionStorage) rather than one
|
|
84
|
-
* history entry: state that belongs to a thing shown on several entries, such
|
|
85
|
-
* as the tool cards open in a transcript. A reload keeps it.
|
|
86
|
-
*/
|
|
87
|
-
export class SessionSet {
|
|
88
|
-
constructor(id) {
|
|
89
|
-
this.id = id;
|
|
90
|
-
let saved = null;
|
|
91
|
-
try {
|
|
92
|
-
saved = JSON.parse(globalThis.sessionStorage?.getItem(`${NS}:${id}`) ?? 'null');
|
|
93
|
-
}
|
|
94
|
-
catch {
|
|
95
|
-
/* storage blocked or corrupt: start empty */
|
|
96
|
-
}
|
|
97
|
-
this.items = new Set(Array.isArray(saved) ? saved.filter((x) => typeof x === 'string') : []);
|
|
98
|
-
}
|
|
99
|
-
has(x) {
|
|
100
|
-
return this.items.has(x);
|
|
101
|
-
}
|
|
102
|
-
set(x, on) {
|
|
103
|
-
if (on === this.items.has(x))
|
|
104
|
-
return;
|
|
105
|
-
if (on)
|
|
106
|
-
this.items.add(x);
|
|
107
|
-
else
|
|
108
|
-
this.items.delete(x);
|
|
109
|
-
try {
|
|
110
|
-
globalThis.sessionStorage?.setItem(`${NS}:${this.id}`, JSON.stringify([...this.items]));
|
|
111
|
-
}
|
|
112
|
-
catch {
|
|
113
|
-
/* storage blocked or full: the state lives until the page goes */
|
|
114
|
-
}
|
|
115
|
-
}
|
|
116
|
-
}
|
|
117
|
-
//# sourceMappingURL=memory.js.map
|
package/dist/lib/memory.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"memory.js","sourceRoot":"","sources":["../../src/lib/memory.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
import type { QuotaReading } from '@contraagent/api';
|
|
2
|
-
/** A utilization as a whole percent: `14%`; '—' when not reported. */
|
|
3
|
-
export declare const pct: (v: number | null | undefined) => string;
|
|
4
|
-
/** A reading's `status` in words; '' for `allowed` (the usual case) or none. */
|
|
5
|
-
export declare function quotaStatusLabel(status: string | null | undefined): string;
|
|
6
|
-
/** When a window resets, relative to now: `resets in 2h 58m`; '' when unknown. */
|
|
7
|
-
export declare function resetsIn(iso: string | null | undefined, now?: number): string;
|
|
8
|
-
/** A reading in one line, the weekly window first (the one that runs out first in practice): `weekly 41% | 5-hour 14%`. */
|
|
9
|
-
export declare const readingShort: (r: QuotaReading) => string;
|
|
10
|
-
/** A reading in full, for a tooltip: both windows, their resets, when it arrived. */
|
|
11
|
-
export declare function readingTip(r: QuotaReading): string;
|
|
12
|
-
/** A reading with its account: `weekly 41% | 5-hour 14% | default`. */
|
|
13
|
-
export declare const accountReading: (r: QuotaReading) => string;
|
|
14
|
-
/** One account's latest reading (`credential` + `last`). */
|
|
15
|
-
interface AccountLast {
|
|
16
|
-
credential: string;
|
|
17
|
-
last: QuotaReading;
|
|
18
|
-
}
|
|
19
|
-
/**
|
|
20
|
-
* The busiest account's latest reading, for a one-line summary:
|
|
21
|
-
* `weekly 43% | 5-hour 33%`; with more accounts, the busiest one's name and `1 more account`.
|
|
22
|
-
* `accounts` comes sorted, the highest weekly use first.
|
|
23
|
-
*/
|
|
24
|
-
export declare function accountsLine(accounts: readonly AccountLast[]): string;
|
|
25
|
-
/** Every account's latest reading, one per line, for a tooltip. */
|
|
26
|
-
export declare const accountsTip: (accounts: readonly AccountLast[]) => string;
|
|
27
|
-
export {};
|
|
28
|
-
//# sourceMappingURL=quota-format.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"quota-format.d.ts","sourceRoot":"","sources":["../../src/lib/quota-format.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAKrD,sEAAsE;AACtE,eAAO,MAAM,GAAG,GAAI,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,KAAG,MAAqE,CAAC;AAEzH,gFAAgF;AAChF,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,CAM1E;AAED,kFAAkF;AAClF,wBAAgB,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EAAE,GAAG,SAAa,GAAG,MAAM,CAQjF;AAED,2HAA2H;AAC3H,eAAO,MAAM,YAAY,GAAI,GAAG,YAAY,KAAG,MAC4C,CAAC;AAE5F,qFAAqF;AACrF,wBAAgB,UAAU,CAAC,CAAC,EAAE,YAAY,GAAG,MAAM,CAalD;AAED,uEAAuE;AACvE,eAAO,MAAM,cAAc,GAAI,GAAG,YAAY,KAAG,MAA+D,CAAC;AAEjH,4DAA4D;AAC5D,UAAU,WAAW;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,YAAY,CAAC;CACpB;AAED;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,QAAQ,EAAE,SAAS,WAAW,EAAE,GAAG,MAAM,CAQrE;AAED,mEAAmE;AACnE,eAAO,MAAM,WAAW,GAAI,UAAU,SAAS,WAAW,EAAE,KAAG,MACoE,CAAC"}
|
package/dist/lib/quota-format.js
DELETED
|
@@ -1,67 +0,0 @@
|
|
|
1
|
-
import { msg, str } from '@lit/localize';
|
|
2
|
-
import { facts, fmtDur, localTime } from './format.js';
|
|
3
|
-
import { credentialLabel } from './labels.js';
|
|
4
|
-
/** A utilization as a whole percent: `14%`; '—' when not reported. */
|
|
5
|
-
export const pct = (v) => (v === null || v === undefined ? '—' : `${Math.round(v)}%`);
|
|
6
|
-
/** A reading's `status` in words; '' for `allowed` (the usual case) or none. */
|
|
7
|
-
export function quotaStatusLabel(status) {
|
|
8
|
-
if (!status || status === 'allowed')
|
|
9
|
-
return '';
|
|
10
|
-
const s = status.split(',');
|
|
11
|
-
if (s.some((x) => ['rejected', 'exhausted', 'quota', 'blocked'].includes(x)))
|
|
12
|
-
return msg('limit reached');
|
|
13
|
-
if (s.every((x) => ['allowed_warning', 'warning'].includes(x)))
|
|
14
|
-
return msg('near the limit');
|
|
15
|
-
return msg(str `unknown (${status})`);
|
|
16
|
-
}
|
|
17
|
-
/** When a window resets, relative to now: `resets in 2h 58m`; '' when unknown. */
|
|
18
|
-
export function resetsIn(iso, now = Date.now()) {
|
|
19
|
-
const t = Date.parse(iso ?? '');
|
|
20
|
-
if (Number.isNaN(t))
|
|
21
|
-
return '';
|
|
22
|
-
if (t <= now)
|
|
23
|
-
return msg('reset');
|
|
24
|
-
const h = (t - now) / 3_600_000;
|
|
25
|
-
// A weekly window is days away: days and hours read better than 121h.
|
|
26
|
-
const left = h >= 48 ? msg(str `${Math.floor(h / 24)}d ${Math.floor(h % 24)}h`) : fmtDur((t - now) / 1000);
|
|
27
|
-
return msg(str `resets in ${left}`);
|
|
28
|
-
}
|
|
29
|
-
/** A reading in one line, the weekly window first (the one that runs out first in practice): `weekly 41% | 5-hour 14%`. */
|
|
30
|
-
export const readingShort = (r) => facts(msg(str `weekly ${pct(r.seven_day_pct)}`), msg(str `5-hour ${pct(r.five_hour_pct)}`));
|
|
31
|
-
/** A reading in full, for a tooltip: both windows, their resets, when it arrived. */
|
|
32
|
-
export function readingTip(r) {
|
|
33
|
-
const parts = [
|
|
34
|
-
r.seven_day_resets_at
|
|
35
|
-
? msg(str `Weekly usage ${pct(r.seven_day_pct)} (resets ${localTime(r.seven_day_resets_at, true)})`)
|
|
36
|
-
: msg(str `Weekly usage ${pct(r.seven_day_pct)}`),
|
|
37
|
-
r.five_hour_resets_at
|
|
38
|
-
? msg(str `5-hour usage ${pct(r.five_hour_pct)} (resets ${localTime(r.five_hour_resets_at, true)})`)
|
|
39
|
-
: msg(str `5-hour usage ${pct(r.five_hour_pct)}`),
|
|
40
|
-
msg(str `Reported ${localTime(r.observed_at, true)}`),
|
|
41
|
-
];
|
|
42
|
-
const status = quotaStatusLabel(r.status);
|
|
43
|
-
if (status)
|
|
44
|
-
parts.push(msg(str `Status: ${status}`));
|
|
45
|
-
return parts.join('\n');
|
|
46
|
-
}
|
|
47
|
-
/** A reading with its account: `weekly 41% | 5-hour 14% | default`. */
|
|
48
|
-
export const accountReading = (r) => facts(readingShort(r), credentialLabel(r.credential));
|
|
49
|
-
/**
|
|
50
|
-
* The busiest account's latest reading, for a one-line summary:
|
|
51
|
-
* `weekly 43% | 5-hour 33%`; with more accounts, the busiest one's name and `1 more account`.
|
|
52
|
-
* `accounts` comes sorted, the highest weekly use first.
|
|
53
|
-
*/
|
|
54
|
-
export function accountsLine(accounts) {
|
|
55
|
-
const top = accounts[0];
|
|
56
|
-
if (!top)
|
|
57
|
-
return '';
|
|
58
|
-
const more = accounts.length - 1;
|
|
59
|
-
// One account: its name is in the tooltip; with more, the line names the busiest.
|
|
60
|
-
if (!more)
|
|
61
|
-
return readingShort(top.last);
|
|
62
|
-
const line = accountReading(top.last);
|
|
63
|
-
return facts(line, more === 1 ? msg('1 more account') : msg(str `${more} more accounts`));
|
|
64
|
-
}
|
|
65
|
-
/** Every account's latest reading, one per line, for a tooltip. */
|
|
66
|
-
export const accountsTip = (accounts) => accounts.map((a) => (a.credential ? `${credentialLabel(a.credential)}\n${readingTip(a.last)}` : readingTip(a.last))).join('\n\n');
|
|
67
|
-
//# sourceMappingURL=quota-format.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"quota-format.js","sourceRoot":"","sources":["../../src/lib/quota-format.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,GAAG,EAAE,GAAG,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACvD,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAE9C,sEAAsE;AACtE,MAAM,CAAC,MAAM,GAAG,GAAG,CAAC,CAA4B,EAAU,EAAE,CAAC,CAAC,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;AAEzH,gFAAgF;AAChF,MAAM,UAAU,gBAAgB,CAAC,MAAiC;IAChE,IAAI,CAAC,MAAM,IAAI,MAAM,KAAK,SAAS;QAAE,OAAO,EAAE,CAAC;IAC/C,MAAM,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC5B,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,UAAU,EAAE,WAAW,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;QAAE,OAAO,GAAG,CAAC,eAAe,CAAC,CAAC;IAC1G,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,iBAAiB,EAAE,SAAS,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;QAAE,OAAO,GAAG,CAAC,gBAAgB,CAAC,CAAC;IAC7F,OAAO,GAAG,CAAC,GAAG,CAAA,YAAY,MAAM,GAAG,CAAC,CAAC;AACvC,CAAC;AAED,kFAAkF;AAClF,MAAM,UAAU,QAAQ,CAAC,GAA8B,EAAE,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE;IACvE,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,IAAI,EAAE,CAAC,CAAC;IAChC,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;QAAE,OAAO,EAAE,CAAC;IAC/B,IAAI,CAAC,IAAI,GAAG;QAAE,OAAO,GAAG,CAAC,OAAO,CAAC,CAAC;IAClC,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,GAAG,SAAS,CAAC;IAChC,sEAAsE;IACtE,MAAM,IAAI,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAA,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC;IAC1G,OAAO,GAAG,CAAC,GAAG,CAAA,aAAa,IAAI,EAAE,CAAC,CAAC;AACrC,CAAC;AAED,2HAA2H;AAC3H,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,CAAe,EAAU,EAAE,CACtD,KAAK,CAAC,GAAG,CAAC,GAAG,CAAA,UAAU,GAAG,CAAC,CAAC,CAAC,aAAa,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,GAAG,CAAA,UAAU,GAAG,CAAC,CAAC,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC,CAAC;AAE5F,qFAAqF;AACrF,MAAM,UAAU,UAAU,CAAC,CAAe;IACxC,MAAM,KAAK,GAAG;QACZ,CAAC,CAAC,mBAAmB;YACnB,CAAC,CAAC,GAAG,CAAC,GAAG,CAAA,gBAAgB,GAAG,CAAC,CAAC,CAAC,aAAa,CAAC,YAAY,SAAS,CAAC,CAAC,CAAC,mBAAmB,EAAE,IAAI,CAAC,GAAG,CAAC;YACnG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAA,gBAAgB,GAAG,CAAC,CAAC,CAAC,aAAa,CAAC,EAAE,CAAC;QAClD,CAAC,CAAC,mBAAmB;YACnB,CAAC,CAAC,GAAG,CAAC,GAAG,CAAA,gBAAgB,GAAG,CAAC,CAAC,CAAC,aAAa,CAAC,YAAY,SAAS,CAAC,CAAC,CAAC,mBAAmB,EAAE,IAAI,CAAC,GAAG,CAAC;YACnG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAA,gBAAgB,GAAG,CAAC,CAAC,CAAC,aAAa,CAAC,EAAE,CAAC;QAClD,GAAG,CAAC,GAAG,CAAA,YAAY,SAAS,CAAC,CAAC,CAAC,WAAW,EAAE,IAAI,CAAC,EAAE,CAAC;KACrD,CAAC;IACF,MAAM,MAAM,GAAG,gBAAgB,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;IAC1C,IAAI,MAAM;QAAE,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAA,WAAW,MAAM,EAAE,CAAC,CAAC,CAAC;IACpD,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED,uEAAuE;AACvE,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,CAAe,EAAU,EAAE,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,eAAe,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC;AAQjH;;;;GAIG;AACH,MAAM,UAAU,YAAY,CAAC,QAAgC;IAC3D,MAAM,GAAG,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IACxB,IAAI,CAAC,GAAG;QAAE,OAAO,EAAE,CAAC;IACpB,MAAM,IAAI,GAAG,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC;IACjC,kFAAkF;IAClF,IAAI,CAAC,IAAI;QAAE,OAAO,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACzC,MAAM,IAAI,GAAG,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACtC,OAAO,KAAK,CAAC,IAAI,EAAE,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAA,GAAG,IAAI,gBAAgB,CAAC,CAAC,CAAC;AAC3F,CAAC;AAED,mEAAmE;AACnE,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,QAAgC,EAAU,EAAE,CACtE,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,GAAG,eAAe,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC"}
|
package/dist/lib/scroll.d.ts
DELETED
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
export declare class ScrollMemory {
|
|
2
|
-
private readonly id;
|
|
3
|
-
private el;
|
|
4
|
-
private frame;
|
|
5
|
-
private restoring;
|
|
6
|
-
constructor(id: string);
|
|
7
|
-
attach(el: HTMLElement): void;
|
|
8
|
-
detach(): void;
|
|
9
|
-
/** Go back to the remembered position, as soon as the content allows; to the top when none is remembered. */
|
|
10
|
-
restore(): void;
|
|
11
|
-
/** Start at the top (a new place). */
|
|
12
|
-
reset(): void;
|
|
13
|
-
private readonly cancel;
|
|
14
|
-
private readonly onScroll;
|
|
15
|
-
}
|
|
16
|
-
//# sourceMappingURL=scroll.d.ts.map
|
package/dist/lib/scroll.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"scroll.d.ts","sourceRoot":"","sources":["../../src/lib/scroll.ts"],"names":[],"mappings":"AAQA,qBAAa,YAAY;IAKX,OAAO,CAAC,QAAQ,CAAC,EAAE;IAJ/B,OAAO,CAAC,EAAE,CAA4B;IACtC,OAAO,CAAC,KAAK,CAAK;IAClB,OAAO,CAAC,SAAS,CAAS;gBAEG,EAAE,EAAE,MAAM;IAEvC,MAAM,CAAC,EAAE,EAAE,WAAW,GAAG,IAAI;IAO7B,MAAM,IAAI,IAAI;IAMd,6GAA6G;IAC7G,OAAO,IAAI,IAAI;IAqBf,sCAAsC;IACtC,KAAK,IAAI,IAAI;IAKb,OAAO,CAAC,QAAQ,CAAC,MAAM,CAMrB;IAEF,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAEvB;CACH"}
|
package/dist/lib/scroll.js
DELETED
|
@@ -1,70 +0,0 @@
|
|
|
1
|
-
// A scroller that comes back where the reader left it. The position is
|
|
2
|
-
// remembered in the history entry (`memory.ts`); restoring waits until the
|
|
3
|
-
// content, which arrives over the network, is tall enough to scroll there.
|
|
4
|
-
import { recall, remember } from './memory.js';
|
|
5
|
-
const GIVE_UP_MS = 6000;
|
|
6
|
-
const INPUT_EVENTS = ['wheel', 'touchstart', 'pointerdown', 'keydown'];
|
|
7
|
-
export class ScrollMemory {
|
|
8
|
-
constructor(id) {
|
|
9
|
-
this.id = id;
|
|
10
|
-
this.el = null;
|
|
11
|
-
this.frame = 0;
|
|
12
|
-
this.restoring = false;
|
|
13
|
-
this.cancel = () => {
|
|
14
|
-
cancelAnimationFrame(this.frame);
|
|
15
|
-
this.frame = 0;
|
|
16
|
-
if (!this.restoring)
|
|
17
|
-
return;
|
|
18
|
-
this.restoring = false;
|
|
19
|
-
for (const t of INPUT_EVENTS)
|
|
20
|
-
this.el?.removeEventListener(t, this.cancel);
|
|
21
|
-
};
|
|
22
|
-
this.onScroll = () => {
|
|
23
|
-
if (!this.restoring && this.el)
|
|
24
|
-
remember(this.id, Math.round(this.el.scrollTop));
|
|
25
|
-
};
|
|
26
|
-
}
|
|
27
|
-
attach(el) {
|
|
28
|
-
if (this.el === el)
|
|
29
|
-
return;
|
|
30
|
-
this.detach();
|
|
31
|
-
this.el = el;
|
|
32
|
-
el.addEventListener('scroll', this.onScroll, { passive: true });
|
|
33
|
-
}
|
|
34
|
-
detach() {
|
|
35
|
-
this.cancel();
|
|
36
|
-
this.el?.removeEventListener('scroll', this.onScroll);
|
|
37
|
-
this.el = null;
|
|
38
|
-
}
|
|
39
|
-
/** Go back to the remembered position, as soon as the content allows; to the top when none is remembered. */
|
|
40
|
-
restore() {
|
|
41
|
-
const el = this.el;
|
|
42
|
-
if (!el)
|
|
43
|
-
return;
|
|
44
|
-
this.cancel();
|
|
45
|
-
const target = recall(this.id) ?? 0;
|
|
46
|
-
if (target <= 0) {
|
|
47
|
-
el.scrollTop = 0;
|
|
48
|
-
return;
|
|
49
|
-
}
|
|
50
|
-
const until = performance.now() + GIVE_UP_MS;
|
|
51
|
-
this.restoring = true;
|
|
52
|
-
for (const t of INPUT_EVENTS)
|
|
53
|
-
el.addEventListener(t, this.cancel, { passive: true, once: true });
|
|
54
|
-
const step = () => {
|
|
55
|
-
const max = el.scrollHeight - el.clientHeight;
|
|
56
|
-
el.scrollTop = Math.min(target, max);
|
|
57
|
-
if (max >= target || performance.now() > until)
|
|
58
|
-
return this.cancel();
|
|
59
|
-
this.frame = requestAnimationFrame(step);
|
|
60
|
-
};
|
|
61
|
-
step();
|
|
62
|
-
}
|
|
63
|
-
/** Start at the top (a new place). */
|
|
64
|
-
reset() {
|
|
65
|
-
this.cancel();
|
|
66
|
-
if (this.el)
|
|
67
|
-
this.el.scrollTop = 0;
|
|
68
|
-
}
|
|
69
|
-
}
|
|
70
|
-
//# sourceMappingURL=scroll.js.map
|
package/dist/lib/scroll.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"scroll.js","sourceRoot":"","sources":["../../src/lib/scroll.ts"],"names":[],"mappings":"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"}
|
package/dist/lib/status.d.ts
DELETED
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
import type { Outcome } from '@contraagent/api';
|
|
2
|
-
import { type TemplateResult } from 'lit';
|
|
3
|
-
import { type Tone } from './tone.js';
|
|
4
|
-
/** The shape before a status word. */
|
|
5
|
-
export type Mark = 'done' | 'failed' | 'pending';
|
|
6
|
-
/** The mark a tone takes by default: ✓ done, ✕ failed, ◌ attention; none for running, muted or neutral. */
|
|
7
|
-
export declare function markOf(tone: Tone): Mark | null;
|
|
8
|
-
/** The mark of a task's outcome: a waiting task is ◌ too, though muted. */
|
|
9
|
-
export declare const outcomeMark: (o: Outcome) => Mark | null;
|
|
10
|
-
export interface StatusOptions {
|
|
11
|
-
title?: string | null;
|
|
12
|
-
/** The mark; `markOf(tone)` when not given, null for none. */
|
|
13
|
-
mark?: Mark | null;
|
|
14
|
-
/** More classes on the element. */
|
|
15
|
-
cls?: string;
|
|
16
|
-
}
|
|
17
|
-
/** A status as a pill (`.pill`): tinted by its tone, a done pill quiet with its ✓. */
|
|
18
|
-
export declare function statusPill(text: unknown, tone: Tone, o?: StatusOptions): TemplateResult;
|
|
19
|
-
/** A status as a word in a row (`.jstop`: History, Problems, Outputs). */
|
|
20
|
-
export declare function statusWord(text: unknown, tone: Tone, o?: StatusOptions): TemplateResult;
|
|
21
|
-
/** A checked file's status as a chip (`.ct-chip`); `text` may hold a count after the word. */
|
|
22
|
-
export declare function statusChip(text: unknown, tone: Tone, o?: StatusOptions): TemplateResult;
|
|
23
|
-
/** A task's outcome as a pill, in the given words. */
|
|
24
|
-
export declare const outcomePill: (o: Outcome, text: string, title?: string | null) => TemplateResult;
|
|
25
|
-
//# sourceMappingURL=status.d.ts.map
|
package/dist/lib/status.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"status.d.ts","sourceRoot":"","sources":["../../src/lib/status.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,EAAiB,KAAK,cAAc,EAAE,MAAM,KAAK,CAAC;AACzD,OAAO,EAAe,KAAK,IAAI,EAAE,MAAM,WAAW,CAAC;AAEnD,sCAAsC;AACtC,MAAM,MAAM,IAAI,GAAG,MAAM,GAAG,QAAQ,GAAG,SAAS,CAAC;AAEjD,2GAA2G;AAC3G,wBAAgB,MAAM,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI,CAW9C;AAED,2EAA2E;AAC3E,eAAO,MAAM,WAAW,GAAI,GAAG,OAAO,KAAG,IAAI,GAAG,IAA8D,CAAC;AAE/G,MAAM,WAAW,aAAa;IAC5B,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,8DAA8D;IAC9D,IAAI,CAAC,EAAE,IAAI,GAAG,IAAI,CAAC;IACnB,mCAAmC;IACnC,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAQD,sFAAsF;AACtF,wBAAgB,UAAU,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,GAAE,aAAkB,GAAG,cAAc,CAG3F;AAED,0EAA0E;AAC1E,wBAAgB,UAAU,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,GAAE,aAAkB,GAAG,cAAc,CAG3F;AAED,8FAA8F;AAC9F,wBAAgB,UAAU,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,GAAE,aAAkB,GAAG,cAAc,CAG3F;AAED,sDAAsD;AACtD,eAAO,MAAM,WAAW,GAAI,GAAG,OAAO,EAAE,MAAM,MAAM,EAAE,QAAQ,MAAM,GAAG,IAAI,KAAG,cACX,CAAC"}
|
package/dist/lib/status.js
DELETED
|
@@ -1,40 +0,0 @@
|
|
|
1
|
-
import { html, nothing } from 'lit';
|
|
2
|
-
import { outcomeTone } from './tone.js';
|
|
3
|
-
/** The mark a tone takes by default: ✓ done, ✕ failed, ◌ attention; none for running, muted or neutral. */
|
|
4
|
-
export function markOf(tone) {
|
|
5
|
-
switch (tone) {
|
|
6
|
-
case 'done':
|
|
7
|
-
return 'done';
|
|
8
|
-
case 'failed':
|
|
9
|
-
return 'failed';
|
|
10
|
-
case 'attention':
|
|
11
|
-
return 'pending';
|
|
12
|
-
default:
|
|
13
|
-
return null;
|
|
14
|
-
}
|
|
15
|
-
}
|
|
16
|
-
/** The mark of a task's outcome: a waiting task is ◌ too, though muted. */
|
|
17
|
-
export const outcomeMark = (o) => (o === 'waiting' ? 'pending' : markOf(outcomeTone(o)));
|
|
18
|
-
const attrs = (tone, o) => ({
|
|
19
|
-
tone: tone || nothing,
|
|
20
|
-
mark: (o.mark === undefined ? markOf(tone) : o.mark) ?? nothing,
|
|
21
|
-
title: o.title || nothing,
|
|
22
|
-
});
|
|
23
|
-
/** A status as a pill (`.pill`): tinted by its tone, a done pill quiet with its ✓. */
|
|
24
|
-
export function statusPill(text, tone, o = {}) {
|
|
25
|
-
const a = attrs(tone, o);
|
|
26
|
-
return html `<span class="pill ${o.cls ?? ''}" data-tone=${a.tone} data-mark=${a.mark} title=${a.title}>${text}</span>`;
|
|
27
|
-
}
|
|
28
|
-
/** A status as a word in a row (`.jstop`: History, Problems, Outputs). */
|
|
29
|
-
export function statusWord(text, tone, o = {}) {
|
|
30
|
-
const a = attrs(tone, o);
|
|
31
|
-
return html `<span class="jstop ${o.cls ?? ''}" data-tone=${a.tone} data-mark=${a.mark} title=${a.title}>${text}</span>`;
|
|
32
|
-
}
|
|
33
|
-
/** A checked file's status as a chip (`.ct-chip`); `text` may hold a count after the word. */
|
|
34
|
-
export function statusChip(text, tone, o = {}) {
|
|
35
|
-
const a = attrs(tone, o);
|
|
36
|
-
return html `<span class="ct-chip ${o.cls ?? ''}" data-tone=${a.tone} data-mark=${a.mark} title=${a.title}>${text}</span>`;
|
|
37
|
-
}
|
|
38
|
-
/** A task's outcome as a pill, in the given words. */
|
|
39
|
-
export const outcomePill = (o, text, title) => statusPill(text, outcomeTone(o), { title, mark: outcomeMark(o) });
|
|
40
|
-
//# sourceMappingURL=status.js.map
|
package/dist/lib/status.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"status.js","sourceRoot":"","sources":["../../src/lib/status.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,IAAI,EAAE,OAAO,EAAuB,MAAM,KAAK,CAAC;AACzD,OAAO,EAAE,WAAW,EAAa,MAAM,WAAW,CAAC;AAKnD,2GAA2G;AAC3G,MAAM,UAAU,MAAM,CAAC,IAAU;IAC/B,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,MAAM;YACT,OAAO,MAAM,CAAC;QAChB,KAAK,QAAQ;YACX,OAAO,QAAQ,CAAC;QAClB,KAAK,WAAW;YACd,OAAO,SAAS,CAAC;QACnB;YACE,OAAO,IAAI,CAAC;IAChB,CAAC;AACH,CAAC;AAED,2EAA2E;AAC3E,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,CAAU,EAAe,EAAE,CAAC,CAAC,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAU/G,MAAM,KAAK,GAAG,CAAC,IAAU,EAAE,CAAgB,EAAE,EAAE,CAAC,CAAC;IAC/C,IAAI,EAAE,IAAI,IAAI,OAAO;IACrB,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,OAAO;IAC/D,KAAK,EAAE,CAAC,CAAC,KAAK,IAAI,OAAO;CAC1B,CAAC,CAAC;AAEH,sFAAsF;AACtF,MAAM,UAAU,UAAU,CAAC,IAAa,EAAE,IAAU,EAAE,IAAmB,EAAE;IACzE,MAAM,CAAC,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IACzB,OAAO,IAAI,CAAA,qBAAqB,CAAC,CAAC,GAAG,IAAI,EAAE,eAAe,CAAC,CAAC,IAAI,cAAc,CAAC,CAAC,IAAI,UAAU,CAAC,CAAC,KAAK,IAAI,IAAI,SAAS,CAAC;AACzH,CAAC;AAED,0EAA0E;AAC1E,MAAM,UAAU,UAAU,CAAC,IAAa,EAAE,IAAU,EAAE,IAAmB,EAAE;IACzE,MAAM,CAAC,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IACzB,OAAO,IAAI,CAAA,sBAAsB,CAAC,CAAC,GAAG,IAAI,EAAE,eAAe,CAAC,CAAC,IAAI,cAAc,CAAC,CAAC,IAAI,UAAU,CAAC,CAAC,KAAK,IAAI,IAAI,SAAS,CAAC;AAC1H,CAAC;AAED,8FAA8F;AAC9F,MAAM,UAAU,UAAU,CAAC,IAAa,EAAE,IAAU,EAAE,IAAmB,EAAE;IACzE,MAAM,CAAC,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IACzB,OAAO,IAAI,CAAA,wBAAwB,CAAC,CAAC,GAAG,IAAI,EAAE,eAAe,CAAC,CAAC,IAAI,cAAc,CAAC,CAAC,IAAI,UAAU,CAAC,CAAC,KAAK,IAAI,IAAI,SAAS,CAAC;AAC5H,CAAC;AAED,sDAAsD;AACtD,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,CAAU,EAAE,IAAY,EAAE,KAAqB,EAAkB,EAAE,CAC7F,UAAU,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC,CAAC,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC"}
|
package/dist/route.d.ts
DELETED
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
export declare const BUILTIN_TABS: readonly ["overview", "tasks", "journal", "outputs", "definitions", "procs", "stream"];
|
|
2
|
-
export type BuiltinTab = (typeof BUILTIN_TABS)[number];
|
|
3
|
-
/** A built-in view, or a panel the pipeline registered (`panel:<name>`). */
|
|
4
|
-
export type Tab = BuiltinTab | `panel:${string}`;
|
|
5
|
-
/** What the task view shows next to (or instead of) the transcript. */
|
|
6
|
-
export declare const TASK_VIEWS: readonly ["transcript", "input", "output", "definition"];
|
|
7
|
-
export type TaskView = (typeof TASK_VIEWS)[number];
|
|
8
|
-
export interface Route {
|
|
9
|
-
/** The run; '' until one is picked. */
|
|
10
|
-
run: string;
|
|
11
|
-
tab: Tab;
|
|
12
|
-
/** stream tab: the task key whose transcript is open (null: the latest, `latestTask`). */
|
|
13
|
-
key: string | null;
|
|
14
|
-
/** stream tab: what the task view shows. */
|
|
15
|
-
view: TaskView;
|
|
16
|
-
/** stream tab: the round shown, 1-based (null: follow the latest). */
|
|
17
|
-
round: number | null;
|
|
18
|
-
/** definitions tab: the selected kind (null: the default one). */
|
|
19
|
-
def: string | null;
|
|
20
|
-
/** tasks and journal tabs: only this kind (kept, and out of the URL, while another tab is shown). */
|
|
21
|
-
kind: string;
|
|
22
|
-
/** journal tab: only this stop ('bad': every attempt that did not complete). */
|
|
23
|
-
stop: string;
|
|
24
|
-
/** tasks and journal tabs: a text filter. */
|
|
25
|
-
q: string;
|
|
26
|
-
/** overview tab: the pipeline graph's layer, its segments joined by `/` ('': the layer the graph opens on). */
|
|
27
|
-
layer: string;
|
|
28
|
-
/** overview tab: the unit highlighted in the pipeline graph. */
|
|
29
|
-
unit: string;
|
|
30
|
-
/** overview tab: what is selected in the pipeline graph's layer (a node, a loop box or a mark; '' for nothing). */
|
|
31
|
-
sel: string;
|
|
32
|
-
}
|
|
33
|
-
export type RoutePatch = Partial<Route>;
|
|
34
|
-
export declare const DEFAULT_ROUTE: Route;
|
|
35
|
-
export declare function parseRoute(search: string): Route;
|
|
36
|
-
/** The query string for a route: only what differs from the defaults, and only what its tab uses. */
|
|
37
|
-
export declare function formatRoute(r: Route): string;
|
|
38
|
-
/** Apply a patch. Leaving a task (another key, run) forgets its view and round; another run forgets every selection. */
|
|
39
|
-
export declare function applyPatch(r: Route, patch: RoutePatch): Route;
|
|
40
|
-
/**
|
|
41
|
-
* Whether going from `a` to `b` is a move to another place (a new history entry,
|
|
42
|
-
* so Back returns) or only a refinement of this one (the entry is replaced, so
|
|
43
|
-
* typing in a filter, highlighting a unit or selecting in the graph does not fill the history).
|
|
44
|
-
*/
|
|
45
|
-
export declare function isNewPlace(a: Route, b: Route): boolean;
|
|
46
|
-
//# sourceMappingURL=route.d.ts.map
|
package/dist/route.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"route.d.ts","sourceRoot":"","sources":["../src/route.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,YAAY,wFAAyF,CAAC;AACnH,MAAM,MAAM,UAAU,GAAG,CAAC,OAAO,YAAY,CAAC,CAAC,MAAM,CAAC,CAAC;AACvD,4EAA4E;AAC5E,MAAM,MAAM,GAAG,GAAG,UAAU,GAAG,SAAS,MAAM,EAAE,CAAC;AAEjD,uEAAuE;AACvE,eAAO,MAAM,UAAU,0DAA2D,CAAC;AACnF,MAAM,MAAM,QAAQ,GAAG,CAAC,OAAO,UAAU,CAAC,CAAC,MAAM,CAAC,CAAC;AAEnD,MAAM,WAAW,KAAK;IACpB,uCAAuC;IACvC,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,GAAG,CAAC;IACT,0FAA0F;IAC1F,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IACnB,4CAA4C;IAC5C,IAAI,EAAE,QAAQ,CAAC;IACf,sEAAsE;IACtE,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,kEAAkE;IAClE,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IACnB,qGAAqG;IACrG,IAAI,EAAE,MAAM,CAAC;IACb,gFAAgF;IAChF,IAAI,EAAE,MAAM,CAAC;IACb,6CAA6C;IAC7C,CAAC,EAAE,MAAM,CAAC;IACV,+GAA+G;IAC/G,KAAK,EAAE,MAAM,CAAC;IACd,gEAAgE;IAChE,IAAI,EAAE,MAAM,CAAC;IACb,mHAAmH;IACnH,GAAG,EAAE,MAAM,CAAC;CACb;AAED,MAAM,MAAM,UAAU,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;AAExC,eAAO,MAAM,aAAa,EAAE,KAa3B,CAAC;AAKF,wBAAgB,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,KAAK,CAmBhD;AAED,qGAAqG;AACrG,wBAAgB,WAAW,CAAC,CAAC,EAAE,KAAK,GAAG,MAAM,CAoB5C;AAED,wHAAwH;AACxH,wBAAgB,UAAU,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,GAAG,KAAK,CAY7D;AAED;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,GAAG,OAAO,CAGtD"}
|
package/dist/route.js
DELETED
|
@@ -1,102 +0,0 @@
|
|
|
1
|
-
// Where the monitor is: one typed value, kept in the URL. Pure: parsing and
|
|
2
|
-
// formatting only; `router.ts` binds it to the browser's history.
|
|
3
|
-
export const BUILTIN_TABS = ['overview', 'tasks', 'journal', 'outputs', 'definitions', 'procs', 'stream'];
|
|
4
|
-
/** What the task view shows next to (or instead of) the transcript. */
|
|
5
|
-
export const TASK_VIEWS = ['transcript', 'input', 'output', 'definition'];
|
|
6
|
-
export const DEFAULT_ROUTE = {
|
|
7
|
-
run: '',
|
|
8
|
-
tab: 'overview',
|
|
9
|
-
key: null,
|
|
10
|
-
view: 'transcript',
|
|
11
|
-
round: null,
|
|
12
|
-
def: null,
|
|
13
|
-
kind: '',
|
|
14
|
-
stop: '',
|
|
15
|
-
q: '',
|
|
16
|
-
layer: '',
|
|
17
|
-
unit: '',
|
|
18
|
-
sel: '',
|
|
19
|
-
};
|
|
20
|
-
const isTab = (t) => BUILTIN_TABS.includes(t) || /^panel:.+/.test(t);
|
|
21
|
-
const isTaskView = (v) => TASK_VIEWS.includes(v);
|
|
22
|
-
export function parseRoute(search) {
|
|
23
|
-
const p = new URLSearchParams(search);
|
|
24
|
-
const tab = p.get('tab') ?? '';
|
|
25
|
-
const view = p.get('view') ?? '';
|
|
26
|
-
const round = Number(p.get('round'));
|
|
27
|
-
return {
|
|
28
|
-
run: p.get('run') ?? '',
|
|
29
|
-
tab: isTab(tab) ? tab : 'overview',
|
|
30
|
-
key: p.get('key') || null,
|
|
31
|
-
view: isTaskView(view) ? view : 'transcript',
|
|
32
|
-
round: Number.isInteger(round) && round > 0 ? round : null,
|
|
33
|
-
def: p.get('def') || null,
|
|
34
|
-
kind: p.get('kind') ?? '',
|
|
35
|
-
stop: p.get('stop') ?? '',
|
|
36
|
-
q: p.get('q') ?? '',
|
|
37
|
-
layer: p.get('layer') ?? '',
|
|
38
|
-
unit: p.get('unit') ?? '',
|
|
39
|
-
sel: p.get('sel') ?? '',
|
|
40
|
-
};
|
|
41
|
-
}
|
|
42
|
-
/** The query string for a route: only what differs from the defaults, and only what its tab uses. */
|
|
43
|
-
export function formatRoute(r) {
|
|
44
|
-
const p = new URLSearchParams();
|
|
45
|
-
if (r.run)
|
|
46
|
-
p.set('run', r.run);
|
|
47
|
-
if (r.tab !== 'overview')
|
|
48
|
-
p.set('tab', r.tab);
|
|
49
|
-
if (r.tab === 'stream') {
|
|
50
|
-
if (r.key)
|
|
51
|
-
p.set('key', r.key);
|
|
52
|
-
if (r.view !== 'transcript')
|
|
53
|
-
p.set('view', r.view);
|
|
54
|
-
if (r.round != null)
|
|
55
|
-
p.set('round', String(r.round));
|
|
56
|
-
}
|
|
57
|
-
if (r.tab === 'definitions' && r.def)
|
|
58
|
-
p.set('def', r.def);
|
|
59
|
-
if (r.tab === 'overview' && r.layer)
|
|
60
|
-
p.set('layer', r.layer);
|
|
61
|
-
if (r.tab === 'overview' && r.unit)
|
|
62
|
-
p.set('unit', r.unit);
|
|
63
|
-
if (r.tab === 'overview' && r.sel)
|
|
64
|
-
p.set('sel', r.sel);
|
|
65
|
-
// The filters of the Tasks and History tabs: kept while another tab is shown (going back finds them), named in the URL only on their tabs.
|
|
66
|
-
const filtered = r.tab === 'tasks' || r.tab === 'journal';
|
|
67
|
-
if (filtered && r.kind)
|
|
68
|
-
p.set('kind', r.kind);
|
|
69
|
-
if (r.tab === 'journal' && r.stop)
|
|
70
|
-
p.set('stop', r.stop);
|
|
71
|
-
if (filtered && r.q)
|
|
72
|
-
p.set('q', r.q);
|
|
73
|
-
const s = p.toString();
|
|
74
|
-
return s ? `?${s}` : '';
|
|
75
|
-
}
|
|
76
|
-
/** Apply a patch. Leaving a task (another key, run) forgets its view and round; another run forgets every selection. */
|
|
77
|
-
export function applyPatch(r, patch) {
|
|
78
|
-
const next = { ...r, ...patch };
|
|
79
|
-
if (patch.run !== undefined && patch.run !== r.run) {
|
|
80
|
-
Object.assign(next, { key: null, def: null, round: null, layer: '', unit: '', sel: '', ...patch });
|
|
81
|
-
}
|
|
82
|
-
// A selection belongs to its layer.
|
|
83
|
-
if (patch.layer !== undefined && patch.layer !== r.layer && patch.sel === undefined)
|
|
84
|
-
next.sel = '';
|
|
85
|
-
if (patch.key !== undefined && patch.key !== r.key) {
|
|
86
|
-
if (patch.view === undefined)
|
|
87
|
-
next.view = 'transcript';
|
|
88
|
-
if (patch.round === undefined)
|
|
89
|
-
next.round = null;
|
|
90
|
-
}
|
|
91
|
-
return next;
|
|
92
|
-
}
|
|
93
|
-
/**
|
|
94
|
-
* Whether going from `a` to `b` is a move to another place (a new history entry,
|
|
95
|
-
* so Back returns) or only a refinement of this one (the entry is replaced, so
|
|
96
|
-
* typing in a filter, highlighting a unit or selecting in the graph does not fill the history).
|
|
97
|
-
*/
|
|
98
|
-
export function isNewPlace(a, b) {
|
|
99
|
-
const place = (r) => formatRoute({ ...r, kind: '', stop: '', q: '', unit: '', sel: '' });
|
|
100
|
-
return place(a) !== place(b);
|
|
101
|
-
}
|
|
102
|
-
//# sourceMappingURL=route.js.map
|
package/dist/route.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"route.js","sourceRoot":"","sources":["../src/route.ts"],"names":[],"mappings":"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"}
|
package/dist/router.d.ts
DELETED
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
import { type Route, type RoutePatch } from './route.js';
|
|
2
|
-
export type RouterMode = 'url' | 'memory';
|
|
3
|
-
/** Why the route changed: the page loaded, the app navigated, or the reader went Back/Forward. */
|
|
4
|
-
export type RouteCause = 'init' | 'push' | 'replace' | 'pop';
|
|
5
|
-
export declare class Router {
|
|
6
|
-
private readonly mode;
|
|
7
|
-
private readonly onChange;
|
|
8
|
-
private current;
|
|
9
|
-
constructor(mode: RouterMode, onChange: (route: Route, cause: RouteCause) => void, initial?: RoutePatch);
|
|
10
|
-
get route(): Route;
|
|
11
|
-
start(): void;
|
|
12
|
-
stop(): void;
|
|
13
|
-
/**
|
|
14
|
-
* Go to the route with `patch` applied. A new place pushes a history entry,
|
|
15
|
-
* a refinement replaces it; `replace` forces replacing (a default filled in,
|
|
16
|
-
* not a step the reader took).
|
|
17
|
-
*/
|
|
18
|
-
navigate(patch: RoutePatch, opts?: {
|
|
19
|
-
replace?: boolean;
|
|
20
|
-
}): void;
|
|
21
|
-
private readonly onPop;
|
|
22
|
-
}
|
|
23
|
-
//# sourceMappingURL=router.d.ts.map
|
package/dist/router.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"router.d.ts","sourceRoot":"","sources":["../src/router.ts"],"names":[],"mappings":"AAIA,OAAO,EAAmD,KAAK,KAAK,EAAE,KAAK,UAAU,EAAE,MAAM,YAAY,CAAC;AAE1G,MAAM,MAAM,UAAU,GAAG,KAAK,GAAG,QAAQ,CAAC;AAC1C,kGAAkG;AAClG,MAAM,MAAM,UAAU,GAAG,MAAM,GAAG,MAAM,GAAG,SAAS,GAAG,KAAK,CAAC;AAE7D,qBAAa,MAAM;IAIf,OAAO,CAAC,QAAQ,CAAC,IAAI;IACrB,OAAO,CAAC,QAAQ,CAAC,QAAQ;IAJ3B,OAAO,CAAC,OAAO,CAAQ;gBAGJ,IAAI,EAAE,UAAU,EAChB,QAAQ,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,KAAK,IAAI,EACpE,OAAO,CAAC,EAAE,UAAU;IAMtB,IAAI,KAAK,IAAI,KAAK,CAEjB;IAED,KAAK,IAAI,IAAI;IAQb,IAAI,IAAI,IAAI;IAIZ;;;;OAIG;IACH,QAAQ,CAAC,KAAK,EAAE,UAAU,EAAE,IAAI,GAAE;QAAE,OAAO,CAAC,EAAE,OAAO,CAAA;KAAO,GAAG,IAAI;IAiBnE,OAAO,CAAC,QAAQ,CAAC,KAAK,CAGpB;CACH"}
|