@intentic/extension-ui 1.176.3 → 1.209.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 (28) hide show
  1. package/dist/index.js +7 -6
  2. package/dist/types/extension-ui/src/format.d.ts +1 -1
  3. package/dist/types/extension-ui/src/index.d.ts +1 -2
  4. package/dist/types/ui/src/components/AnchoredOverlay.vue.d.ts +1 -1
  5. package/dist/types/ui/src/components/BrandMark.vue.d.ts +2 -0
  6. package/dist/types/ui/src/components/Code.vue.d.ts +1 -1
  7. package/dist/types/ui/src/components/CodeField.vue.d.ts +1 -1
  8. package/dist/types/ui/src/components/ConfirmDialog.vue.d.ts +1 -1
  9. package/dist/types/ui/src/components/Modal.vue.d.ts +34 -0
  10. package/dist/types/ui/src/components/Notice.vue.d.ts +16 -3
  11. package/dist/types/ui/src/components/Picker.vue.d.ts +0 -4
  12. package/dist/types/ui/src/components/ResponsiveOverlay.vue.d.ts +1 -1
  13. package/dist/types/ui/src/components/{CountBar.vue.d.ts → StatusTally.vue.d.ts} +2 -2
  14. package/dist/types/ui/src/composables/useRailMemory.d.ts +2 -0
  15. package/dist/types/ui/src/icons/iconSets.d.ts +1 -1
  16. package/dist/types/ui/src/index.d.ts +9 -7
  17. package/dist/types/ui/src/{cmp.d.ts → lib/ui.d.ts} +1 -4
  18. package/names.mjs +8 -7
  19. package/package.json +1 -1
  20. package/src/index.ts +23 -12
  21. package/dist/types/ui/src/format.d.ts +0 -14
  22. /package/dist/types/ui/src/components/{Panel.vue.d.ts → ScrollFrame.vue.d.ts} +0 -0
  23. /package/dist/types/ui/src/components/{Segmented.vue.d.ts → SegmentedControl.vue.d.ts} +0 -0
  24. /package/dist/types/ui/src/components/{StatRow.vue.d.ts → StatStrip.vue.d.ts} +0 -0
  25. /package/dist/types/ui/src/{composables → lib}/anchorPlacement.d.ts +0 -0
  26. /package/dist/types/ui/src/{clipboard.d.ts → lib/clipboard.d.ts} +0 -0
  27. /package/dist/types/ui/src/{composables → lib}/shikiLangs.d.ts +0 -0
  28. /package/dist/types/ui/src/{timeWindow.d.ts → lib/timeWindow.d.ts} +0 -0
package/dist/index.js CHANGED
@@ -24,10 +24,8 @@ export const CodeField = m["CodeField"];
24
24
  export const ConfirmDialog = m["ConfirmDialog"];
25
25
  export const ContextMenu = m["ContextMenu"];
26
26
  export const CopyButton = m["CopyButton"];
27
- export const CountBar = m["CountBar"];
28
27
  export const DagEditor = m["DagEditor"];
29
28
  export const DagGraph = m["DagGraph"];
30
- export const Dialog = m["Dialog"];
31
29
  export const DiffStat = m["DiffStat"];
32
30
  export const FilterBar = m["FilterBar"];
33
31
  export const Icon = m["Icon"];
@@ -37,13 +35,13 @@ export const InfoHint = m["InfoHint"];
37
35
  export const InfoTable = m["InfoTable"];
38
36
  export const Markdown = m["Markdown"];
39
37
  export const MarkdownFigure = m["MarkdownFigure"];
38
+ export const Modal = m["Modal"];
40
39
  export const NavRail = m["NavRail"];
41
40
  export const Notice = m["Notice"];
42
41
  export const NoticeStack = m["NoticeStack"];
43
42
  export const Page = m["Page"];
44
43
  export const PageAction = m["PageAction"];
45
44
  export const PageHeader = m["PageHeader"];
46
- export const Panel = m["Panel"];
47
45
  export const Picker = m["Picker"];
48
46
  export const Popover = m["Popover"];
49
47
  export const ProgressRing = m["ProgressRing"];
@@ -52,16 +50,17 @@ export const ResizeSeam = m["ResizeSeam"];
52
50
  export const ResponsiveOverlay = m["ResponsiveOverlay"];
53
51
  export const Row = m["Row"];
54
52
  export const RowGroup = m["RowGroup"];
53
+ export const ScrollFrame = m["ScrollFrame"];
55
54
  export const SearchBar = m["SearchBar"];
56
- export const Segmented = m["Segmented"];
55
+ export const SegmentedControl = m["SegmentedControl"];
57
56
  export const SplitView = m["SplitView"];
58
- export const StatRow = m["StatRow"];
57
+ export const StatStrip = m["StatStrip"];
59
58
  export const StatusBadge = m["StatusBadge"];
59
+ export const StatusTally = m["StatusTally"];
60
60
  export const StepSection = m["StepSection"];
61
61
  export const TIME_WINDOWS = m["TIME_WINDOWS"];
62
62
  export const ToggleSwitch = m["ToggleSwitch"];
63
63
  export const clipboardOf = m["clipboardOf"];
64
- export const cmp = m["cmp"];
65
64
  export const errorMessage = m["errorMessage"];
66
65
  export const formatBytes = m["formatBytes"];
67
66
  export const formatDate = m["formatDate"];
@@ -78,6 +77,7 @@ export const seriesColor = m["seriesColor"];
78
77
  export const sinceOf = m["sinceOf"];
79
78
  export const timeAgo = m["timeAgo"];
80
79
  export const timeWindowWords = m["timeWindowWords"];
80
+ export const ui = m["ui"];
81
81
  export const useAgentRunPick = m["useAgentRunPick"];
82
82
  export const useAsyncAction = m["useAsyncAction"];
83
83
  export const useCompact = m["useCompact"];
@@ -85,4 +85,5 @@ export const useDevice = m["useDevice"];
85
85
  export const useListNavigation = m["useListNavigation"];
86
86
  export const useNarrow = m["useNarrow"];
87
87
  export const useNow = m["useNow"];
88
+ export const useRailMemory = m["useRailMemory"];
88
89
  export const useTheme = m["useTheme"];
@@ -1 +1 @@
1
- export { formatBytes, formatDate, formatDateTime, formatDayMonth, formatTime, formatTimestamp, formatTokens, formatWeekdayTime, timeAgo, } from "../../ui/src/format.js";
1
+ export { formatBytes, formatDate, formatDateTime, formatDayMonth, formatTime, formatTimestamp, formatTokens, formatWeekdayTime, timeAgo, } from "../../ui/src/format/index.js";
@@ -1,9 +1,8 @@
1
- export { AgentRunButton, type AgentRunChoice, type AgentRunPicker, type ModelPicking, useAgentRunPick, AnchoredOverlay, Avatar, BarChart, BottomSheet, BrandMark, Card, clipboardOf, ChangeStatusMark, type ChangeStatus, cmp, Code, CodeField, ConfirmDialog, ContextMenu, CopyButton, CountBar, type CountItem, DagEditor, DagGraph, type DagEdge, type DagNode, DiffStat, FilterBar, Icon, type IconName, ImageView, InfoDialog, InfoHint, InfoTable, isRenderableImage, Markdown, MarkdownFigure, type NavGroup, NavRail, type NoticeModel, type NoticeTone, type NoticeAction, Notice, NoticeStack, Page, PageAction, PageHeader, Panel, Picker, type PickerGroup, type PickerOption, type PickerOptions, ProgressRing, ProseField, ResizeSeam, ResponsiveOverlay, Row, RowGroup, SearchBar, Segmented, seriesColor, sinceOf, SplitView, StatRow, StatusBadge, type StatusVariant, StepSection, TIME_WINDOWS, type TimeWindow, timeWindowWords, useCompact, useDevice, useListNavigation, useNow, errorMessage, noticeFrom, noticeOf, useAsyncAction, useNarrow, useTheme, } from "../../ui/src/index.js";
1
+ export { AgentRunButton, type AgentRunChoice, type AgentRunPicker, type ModelPicking, useAgentRunPick, AnchoredOverlay, Avatar, BarChart, BottomSheet, BrandMark, Card, clipboardOf, ChangeStatusMark, type ChangeStatus, ui, Code, CodeField, ConfirmDialog, ContextMenu, CopyButton, StatusTally, type TallyItem, DagEditor, DagGraph, type DagEdge, type DagNode, DiffStat, FilterBar, Icon, type IconName, ImageView, InfoDialog, InfoHint, InfoTable, isRenderableImage, Markdown, MarkdownFigure, Modal, type NavGroup, NavRail, type NoticeModel, type NoticeTone, type NoticeAction, Notice, NoticeStack, Page, PageAction, PageHeader, ScrollFrame, Picker, type PickerGroup, type PickerOption, type PickerOptions, ProgressRing, ProseField, ResizeSeam, ResponsiveOverlay, Row, RowGroup, SearchBar, SegmentedControl, seriesColor, sinceOf, SplitView, StatStrip, StatusBadge, type StatusVariant, StepSection, TIME_WINDOWS, type TimeWindow, timeWindowWords, useCompact, useDevice, useListNavigation, useNow, errorMessage, noticeFrom, noticeOf, useAsyncAction, useNarrow, useRailMemory, useTheme, } from "../../ui/src/index.js";
2
2
  export { formatBytes, formatDate, formatDateTime, formatDayMonth, formatTime, formatTimestamp, formatTokens, formatWeekdayTime, timeAgo, } from "./format.js";
3
3
  export type { BarsFigure, BarsFigureItem, DagFigure, DagFigureEdge, DagFigureNode, Figure, FigureAccent, MermaidFigure, StatsFigure, StatsFigureItem, } from "../../ui/src/markdown/index.js";
4
4
  export { default as Button } from "primevue/button";
5
5
  export { default as Checkbox } from "primevue/checkbox";
6
- export { default as Dialog } from "primevue/dialog";
7
6
  export type { MenuItem } from "primevue/menuitem";
8
7
  export { default as Popover } from "primevue/popover";
9
8
  export { default as ToggleSwitch } from "primevue/toggleswitch";
@@ -1,4 +1,4 @@
1
- import { type Cross, type Side } from "../composables/anchorPlacement.js";
1
+ import { type Cross, type Side } from "../lib/anchorPlacement.js";
2
2
  type __VLS_Props = {
3
3
  anchor: HTMLElement | undefined;
4
4
  side?: Side;
@@ -1,9 +1,11 @@
1
1
  type __VLS_Props = {
2
2
  size: number;
3
3
  name: string;
4
+ art?: string | undefined;
4
5
  logo?: string | undefined;
5
6
  icon?: string | undefined;
6
7
  idle?: boolean;
8
+ flush?: boolean;
7
9
  };
8
10
  declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
9
11
  declare const _default: typeof __VLS_export;
@@ -1,4 +1,4 @@
1
- import type { ShikiLang } from "../composables/shikiLangs.js";
1
+ import type { ShikiLang } from "../lib/shikiLangs.js";
2
2
  type __VLS_Props = {
3
3
  code: string;
4
4
  lang?: ShikiLang;
@@ -1,4 +1,4 @@
1
- import type { ShikiLang } from "../composables/shikiLangs.js";
1
+ import type { ShikiLang } from "../lib/shikiLangs.js";
2
2
  type __VLS_Props = {
3
3
  lang?: ShikiLang;
4
4
  readonly?: boolean;
@@ -8,7 +8,7 @@ declare const __VLS_export: <T>(__VLS_props: NonNullable<Awaited<typeof __VLS_se
8
8
  items?: readonly T[];
9
9
  destructive?: boolean;
10
10
  loading?: boolean;
11
- width?: number;
11
+ size?: `sm` | `md` | `lg` | `xl` | `full`;
12
12
  appendTo?: HTMLElement | string;
13
13
  } & {
14
14
  onCancel?: (() => any) | undefined;
@@ -0,0 +1,34 @@
1
+ type __VLS_Props = {
2
+ size?: `sm` | `md` | `lg` | `xl` | `full`;
3
+ header?: string;
4
+ chrome?: boolean;
5
+ scroll?: boolean;
6
+ dismissable?: boolean;
7
+ position?: `center` | `top`;
8
+ appendTo?: HTMLElement | string;
9
+ };
10
+ declare var __VLS_12: {}, __VLS_14: {}, __VLS_17: {};
11
+ type __VLS_Slots = {} & {
12
+ header?: (props: typeof __VLS_12) => any;
13
+ } & {
14
+ default?: (props: typeof __VLS_14) => any;
15
+ } & {
16
+ footer?: (props: typeof __VLS_17) => any;
17
+ };
18
+ declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
19
+ show: () => any;
20
+ hide: () => any;
21
+ "update:open": (value: boolean) => any;
22
+ }, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
23
+ onShow?: (() => any) | undefined;
24
+ onHide?: (() => any) | undefined;
25
+ "onUpdate:open"?: ((value: boolean) => any) | undefined;
26
+ }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
27
+ declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
28
+ declare const _default: typeof __VLS_export;
29
+ export default _default;
30
+ type __VLS_WithSlots<T, S> = T & {
31
+ new (): {
32
+ $slots: S;
33
+ };
34
+ };
@@ -1,12 +1,25 @@
1
- import { type NoticeModel } from "./notice.js";
1
+ import { type NoticeModel, type NoticeTone } from "./notice.js";
2
+ import type { IconName } from "../icons/iconSets.js";
2
3
  type __VLS_Props = {
3
- of: NoticeModel;
4
+ of?: NoticeModel;
5
+ tone?: NoticeTone;
6
+ icon?: IconName;
4
7
  dismissLabel?: string;
5
8
  };
6
- declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
9
+ declare var __VLS_6: {};
10
+ type __VLS_Slots = {} & {
11
+ default?: (props: typeof __VLS_6) => any;
12
+ };
13
+ declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
7
14
  dismiss: () => any;
8
15
  }, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
9
16
  onDismiss?: (() => any) | undefined;
10
17
  }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
18
+ declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
11
19
  declare const _default: typeof __VLS_export;
12
20
  export default _default;
21
+ type __VLS_WithSlots<T, S> = T & {
22
+ new (): {
23
+ $slots: S;
24
+ };
25
+ };
@@ -25,10 +25,6 @@ declare const __VLS_export: <T extends string>(__VLS_props: NonNullable<Awaited<
25
25
  icon?: (props: {
26
26
  option: PickerOption<T>;
27
27
  }) => any;
28
- } & {
29
- icon?: (props: {
30
- option: PickerOption<T>;
31
- }) => any;
32
28
  };
33
29
  emit: (event: "update:modelValue", value: T | undefined) => void;
34
30
  }>) => import("vue").VNode & {
@@ -1,4 +1,4 @@
1
- import { type Cross, type Side } from "../composables/anchorPlacement.js";
1
+ import { type Cross, type Side } from "../lib/anchorPlacement.js";
2
2
  type __VLS_Props = {
3
3
  anchor: HTMLElement | undefined;
4
4
  header?: string;
@@ -1,5 +1,5 @@
1
1
  import type { StatusVariant } from "./StatusBadge.vue";
2
- export interface CountItem {
2
+ export interface TallyItem {
3
3
  readonly label: string;
4
4
  readonly value: number;
5
5
  readonly variant: StatusVariant;
@@ -7,7 +7,7 @@ export interface CountItem {
7
7
  readonly pulse?: boolean;
8
8
  }
9
9
  type __VLS_Props = {
10
- items: readonly CountItem[];
10
+ items: readonly TallyItem[];
11
11
  };
12
12
  declare var __VLS_1: {};
13
13
  type __VLS_Slots = {} & {
@@ -0,0 +1,2 @@
1
+ import { type Ref } from "vue";
2
+ export declare function useRailMemory(id: string, choice: Ref<string | undefined>, options: () => readonly string[]): void;
@@ -1,3 +1,3 @@
1
- export type IconName = "align-left" | "angle-right" | "arrow-circle-up" | "arrow-down-left" | "arrow-left" | "arrow-right" | "arrow-up-right" | "arrows-h" | "backward" | "bars" | "bolt" | "book" | "box" | "check" | "check-circle" | "check-square" | "chevron-down" | "chevron-right" | "chevron-up" | "circle" | "circle-fill" | "clock" | "clone" | "cloud" | "cloud-upload" | "code" | "cog" | "collapse-all" | "comments" | "compress" | "copy" | "credit-card" | "database" | "desktop" | "download" | "ellipsis" | "envelope" | "eraser" | "exclamation-circle" | "exclamation-triangle" | "expand" | "external-link" | "eye" | "eye-slash" | "file" | "file-edit" | "file-pdf" | "file-tree" | "filter" | "folder" | "folder-open" | "fork" | "forward" | "github" | "gitlab" | "globe" | "google" | "history" | "image" | "info-circle" | "key" | "link" | "list-check" | "lock" | "microphone" | "moon" | "palette" | "paperclip" | "pause" | "pencil" | "picture-in-picture" | "play" | "plus" | "plus-circle" | "question-circle" | "refresh" | "repeat" | "robot" | "save" | "search" | "send" | "server" | "shield" | "sign-in" | "sign-out" | "sitemap" | "slack" | "sliders-h" | "sparkles" | "spinner" | "square" | "star" | "star-fill" | "stop" | "sun" | "sync" | "terminal" | "th-large" | "times" | "trash" | "undo" | "unlock" | "upload" | "user" | "users" | "volume-off" | "volume-up" | "wave-pulse" | "wifi" | "window-maximize" | "window-minimize" | "wrench";
1
+ export type IconName = "align-left" | "angle-right" | "arrow-circle-up" | "arrow-down-left" | "arrow-left" | "arrow-right" | "arrow-up-right" | "arrows-h" | "backward" | "bars" | "bolt" | "book" | "box" | "check" | "check-circle" | "check-square" | "chevron-down" | "chevron-right" | "chevron-up" | "circle" | "circle-fill" | "clock" | "clone" | "cloud" | "cloud-upload" | "code" | "cog" | "collapse-all" | "comments" | "compress" | "copy" | "credit-card" | "database" | "desktop" | "download" | "ellipsis" | "envelope" | "eraser" | "exclamation-circle" | "exclamation-triangle" | "expand" | "external-link" | "eye" | "eye-slash" | "file" | "file-edit" | "file-pdf" | "file-tree" | "filter" | "folder" | "folder-open" | "fork" | "forward" | "github" | "gitlab" | "globe" | "google" | "hammer" | "history" | "image" | "info-circle" | "key" | "layout-left" | "link" | "link-broken" | "list-check" | "lock" | "microphone" | "moon" | "palette" | "paperclip" | "pause" | "pencil" | "picture-in-picture" | "play" | "plus" | "plus-circle" | "question-circle" | "refresh" | "repeat" | "robot" | "save" | "search" | "send" | "server" | "shield" | "sign-in" | "sign-out" | "sitemap" | "slack" | "sliders-h" | "sparkles" | "spinner" | "square" | "star" | "star-fill" | "stop" | "sun" | "sync" | "terminal" | "th-large" | "times" | "trash" | "undo" | "unlock" | "upload" | "user" | "users" | "volume-off" | "volume-up" | "wave-pulse" | "wifi" | "window-maximize" | "window-minimize" | "wrench";
2
2
  export declare const ICONS: Record<IconName, string>;
3
3
  export declare const isIconName: (name: string) => name is IconName;
@@ -1,5 +1,5 @@
1
- export { clipboardOf } from "./clipboard.js";
2
- export { cmp } from "./cmp.js";
1
+ export { clipboardOf } from "./lib/clipboard.js";
2
+ export { ui } from "./lib/ui.js";
3
3
  export { default as AgentRunButton } from "./components/AgentRunButton.vue";
4
4
  export { type AgentRunChoice, type AgentRunPicker, type ModelPicking, useAgentRunPick } from "./composables/useAgentRunPick.js";
5
5
  export { default as AnchoredOverlay } from "./components/AnchoredOverlay.vue";
@@ -16,7 +16,7 @@ export { default as CodeField } from "./components/CodeField.vue";
16
16
  export { default as ConfirmDialog } from "./components/ConfirmDialog.vue";
17
17
  export { default as ContextMenu } from "./components/ContextMenu.vue";
18
18
  export { default as CopyButton } from "./components/CopyButton.vue";
19
- export { type CountItem, default as CountBar } from "./components/CountBar.vue";
19
+ export { type TallyItem, default as StatusTally } from "./components/StatusTally.vue";
20
20
  export { default as DagEditor } from "./components/DagEditor.vue";
21
21
  export { default as DagGraph } from "./components/DagGraph.vue";
22
22
  export { type DagEdge, type DagNode } from "./components/dagLayout.js";
@@ -29,6 +29,7 @@ export { default as InfoHint } from "./components/InfoHint.vue";
29
29
  export { default as InfoTable } from "./components/InfoTable.vue";
30
30
  export { default as Markdown } from "./components/Markdown.vue";
31
31
  export { default as MarkdownFigure } from "./components/MarkdownFigure.vue";
32
+ export { default as Modal } from "./components/Modal.vue";
32
33
  export { default as NavRail } from "./components/NavRail.vue";
33
34
  export { type NavGroup } from "./components/navRail.js";
34
35
  export { default as Notice } from "./components/Notice.vue";
@@ -37,7 +38,7 @@ export { type NoticeAction, type NoticeModel, type NoticeTone } from "./componen
37
38
  export { default as Page } from "./components/Page.vue";
38
39
  export { default as PageAction } from "./components/PageAction.vue";
39
40
  export { default as PageHeader } from "./components/PageHeader.vue";
40
- export { default as Panel } from "./components/Panel.vue";
41
+ export { default as ScrollFrame } from "./components/ScrollFrame.vue";
41
42
  export { default as Picker } from "./components/Picker.vue";
42
43
  export { type PickerGroup, type PickerOption, type PickerOptions } from "./components/picker.js";
43
44
  export { default as ProgressRing } from "./components/ProgressRing.vue";
@@ -47,18 +48,19 @@ export { default as ResponsiveOverlay } from "./components/ResponsiveOverlay.vue
47
48
  export { default as Row } from "./components/Row.vue";
48
49
  export { default as RowGroup } from "./components/RowGroup.vue";
49
50
  export { default as SearchBar } from "./components/SearchBar.vue";
50
- export { default as Segmented } from "./components/Segmented.vue";
51
+ export { default as SegmentedControl } from "./components/SegmentedControl.vue";
51
52
  export { seriesColor } from "./components/seriesAccent.js";
52
53
  export { default as SplitView } from "./components/SplitView.vue";
53
54
  export { useCompact } from "./components/splitView.js";
54
- export { default as StatRow } from "./components/StatRow.vue";
55
+ export { default as StatStrip } from "./components/StatStrip.vue";
55
56
  export { default as StatusBadge, type StatusVariant } from "./components/StatusBadge.vue";
56
57
  export { default as StepSection } from "./components/StepSection.vue";
57
- export { sinceOf, TIME_WINDOWS, type TimeWindow, timeWindowWords } from "./timeWindow.js";
58
+ export { sinceOf, TIME_WINDOWS, type TimeWindow, timeWindowWords } from "./lib/timeWindow.js";
58
59
  export { type IconName } from "./icons/iconSets.js";
59
60
  export { useDevice } from "./composables/useDevice.js";
60
61
  export { useNarrow } from "./composables/useNarrow.js";
61
62
  export { useListNavigation } from "./composables/useListNavigation.js";
63
+ export { useRailMemory } from "./composables/useRailMemory.js";
62
64
  export { useNow } from "./composables/useNow.js";
63
65
  export { errorMessage, noticeFrom, noticeOf, useAsyncAction } from "./composables/useAsyncAction.js";
64
66
  export { useTheme } from "./composables/useTheme.js";
@@ -1,10 +1,7 @@
1
- export declare const cmp: {
1
+ export declare const ui: {
2
2
  iconButton: (...twClasses: string[]) => string;
3
3
  linkButton: (...twClasses: string[]) => string;
4
4
  input: (...twClasses: string[]) => string;
5
- alertDanger: (...twClasses: string[]) => string;
6
- alertWarning: (...twClasses: string[]) => string;
7
- alertInfo: (...twClasses: string[]) => string;
8
5
  emptyState: (...twClasses: string[]) => string;
9
6
  addTile: (...twClasses: string[]) => string;
10
7
  sectionLabel: (...twClasses: string[]) => string;
package/names.mjs CHANGED
@@ -13,16 +13,14 @@ export const extensionUiNames = [
13
13
  "ChangeStatusMark",
14
14
  "Checkbox",
15
15
  "clipboardOf",
16
- "cmp",
16
+ "ui",
17
17
  "Code",
18
18
  "CodeField",
19
19
  "ConfirmDialog",
20
20
  "ContextMenu",
21
21
  "CopyButton",
22
- "CountBar",
23
22
  "DagEditor",
24
23
  "DagGraph",
25
- "Dialog",
26
24
  "DiffStat",
27
25
  "errorMessage",
28
26
  "FilterBar",
@@ -42,15 +40,15 @@ export const extensionUiNames = [
42
40
  "isRenderableImage",
43
41
  "Markdown",
44
42
  "MarkdownFigure",
43
+ "Modal",
45
44
  "NavRail",
45
+ "Notice",
46
46
  "noticeFrom",
47
47
  "noticeOf",
48
- "Notice",
49
48
  "NoticeStack",
50
49
  "Page",
51
50
  "PageAction",
52
51
  "PageHeader",
53
- "Panel",
54
52
  "Picker",
55
53
  "Popover",
56
54
  "ProgressRing",
@@ -59,13 +57,15 @@ export const extensionUiNames = [
59
57
  "ResponsiveOverlay",
60
58
  "Row",
61
59
  "RowGroup",
60
+ "ScrollFrame",
62
61
  "SearchBar",
63
- "Segmented",
62
+ "SegmentedControl",
64
63
  "seriesColor",
65
64
  "sinceOf",
66
65
  "SplitView",
67
- "StatRow",
66
+ "StatStrip",
68
67
  "StatusBadge",
68
+ "StatusTally",
69
69
  "StepSection",
70
70
  "TIME_WINDOWS",
71
71
  "timeAgo",
@@ -78,5 +78,6 @@ export const extensionUiNames = [
78
78
  "useListNavigation",
79
79
  "useNarrow",
80
80
  "useNow",
81
+ "useRailMemory",
81
82
  "useTheme",
82
83
  ];
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@intentic/extension-ui",
3
- "version": "1.176.3",
3
+ "version": "1.209.0",
4
4
  "description": "The UI kit intentic extensions render with — host-provided at runtime (the app's own components via the import map), so extension UI is always native to the shell",
5
5
  "license": "MIT",
6
6
  "type": "module",
package/src/index.ts CHANGED
@@ -50,7 +50,7 @@ export {
50
50
  * a hand-rolled copy gets subtly wrong. */
51
51
  ChangeStatusMark,
52
52
  type ChangeStatus,
53
- cmp,
53
+ ui,
54
54
  Code,
55
55
  /* <CodeField> ships beside <Code> because shipping the reader WITHOUT the writer is what made the memory
56
56
  * extension put a bare grey <textarea> next to a coloured block of the very same file: the kit had no way
@@ -59,8 +59,8 @@ export {
59
59
  ConfirmDialog,
60
60
  ContextMenu,
61
61
  CopyButton,
62
- CountBar,
63
- type CountItem,
62
+ StatusTally,
63
+ type TallyItem,
64
64
  DagEditor,
65
65
  DagGraph,
66
66
  type DagEdge,
@@ -80,6 +80,11 @@ export {
80
80
  isRenderableImage,
81
81
  Markdown,
82
82
  MarkdownFigure,
83
+ /* <Modal> ships for the reason <ConfirmDialog> and <InfoDialog> already do, and it is the one they were
84
+ * both missing: an extension whose dialog is neither a confirm nor an explainer had nothing to reach for
85
+ * but PrimeVue's Dialog and a width typed into a style attribute — which is exactly how the app itself
86
+ * ended up with thirteen widths and one viewport clamp between seventeen dialogs. */
87
+ Modal,
83
88
  type NavGroup,
84
89
  NavRail,
85
90
  /* <NoticeStack> and its model ship beside <ConfirmDialog> for the same reason <InfoDialog> does: a view
@@ -88,7 +93,7 @@ export {
88
93
  *
89
94
  * <Notice> — THE SINGLE ONE — was missing from that shipment, and it is the same mistake <Row>/<RowGroup>
90
95
  * and <PageAction>/<PageHeader> each record one release earlier: the container went out without the thing
91
- * that goes in it. Notice.vue's own comment says every view that hand-rolled `cmp.alertDanger()` around an
96
+ * that goes in it. Notice.vue's own comment says every view that hand-rolled `ui.alertDanger()` around an
92
97
  * interpolated error string renders it instead, "which is what makes the app's failures sound like one
93
98
  * product rather than like sixty throw sites" — and the app took that sweep, 107 call sites of it. The
94
99
  * extensions could not: the kit handed out the stack and kept the row, so thirteen of them went on
@@ -104,7 +109,7 @@ export {
104
109
  * `#actions` with a raw PrimeVue <Button> and picked a different cell of its variant matrix each time. */
105
110
  PageAction,
106
111
  PageHeader,
107
- Panel,
112
+ ScrollFrame,
108
113
  Picker,
109
114
  type PickerGroup,
110
115
  type PickerOption,
@@ -123,11 +128,11 @@ export {
123
128
  Row,
124
129
  RowGroup,
125
130
  SearchBar,
126
- Segmented,
131
+ SegmentedControl,
127
132
  seriesColor,
128
133
  sinceOf,
129
134
  SplitView,
130
- StatRow,
135
+ StatStrip,
131
136
  StatusBadge,
132
137
  type StatusVariant,
133
138
  StepSection,
@@ -154,6 +159,11 @@ export {
154
159
  /* "Is my own element too narrow for this layout" — the question every extension view actually means, since it
155
160
  * renders into a pane the reader can drag to half its width, not into the window. */
156
161
  useNarrow,
162
+ /* Where the reader left a narrowing rail. Ships for the reason <SplitView> did: three extension views grew
163
+ * the same index column, all three keep the pick in the URL, and all three lost it the moment you clicked the
164
+ * tile again — because a tile opens a view at its bare address. Solving that per extension would be three
165
+ * copies of one rule about what a link means versus what a memory is allowed to guess. */
166
+ useRailMemory,
157
167
  useTheme,
158
168
  } from "@intentic/ui";
159
169
  // Also reachable as `@intentic/extension-ui/format` — see the note there for why an extension's pure logic
@@ -188,13 +198,14 @@ export type {
188
198
  /* The raw primitives, kept deliberately short. Handing out a primitive the KIT already wraps is how an
189
199
  * extension screen ends up wearing OS chrome next to the app's own: `Select` and `InputText` used to ship here
190
200
  * and four views took them, so a dropdown with a different focus ring sat beside <Picker> and a text field with
191
- * different padding beside `cmp.input`. Those two are gone — <Picker> and `cmp.input()` are the spellings.
192
- * <Dialog> stays until the kit has a general dialog shell: <ConfirmDialog> and <InfoDialog> are both narrower
193
- * than the five views using it need. <Popover> stays for the same reason, but <AnchoredOverlay> above is the
194
- * one to reach for — it is the only one of the two that opens in the right window when a panel is popped out. */
201
+ * different padding beside `ui.input`. Those two are gone — <Picker> and `ui.input()` are the spellings.
202
+ * <Dialog> was the third, and it is gone for the same reason: it stayed "until the kit has a general dialog
203
+ * shell", six extension views took it, and every one of them typed its own width into a style attribute with
204
+ * no viewport clamp — the exact spread that <Modal> above now exists to end. The shell is here, so the raw one
205
+ * is not. <Popover> stays only because <ResponsiveOverlay>/<AnchoredOverlay> do not yet cover every menu shape,
206
+ * and it is on the same clock: those two are the ones that open in the right window when a panel is popped out. */
195
207
  export { default as Button } from "primevue/button";
196
208
  export { default as Checkbox } from "primevue/checkbox";
197
- export { default as Dialog } from "primevue/dialog";
198
209
  export type { MenuItem } from "primevue/menuitem";
199
210
  export { default as Popover } from "primevue/popover";
200
211
  export { default as ToggleSwitch } from "primevue/toggleswitch";
@@ -1,14 +0,0 @@
1
- export declare const formatBytes: (bytes: number | undefined) => string;
2
- export declare const formatTokens: (tokens: number) => string;
3
- export declare const initialsOf: (name: string) => string | undefined;
4
- export declare const formatDate: (at: number) => string;
5
- export declare const formatDayMonth: (at: number) => string;
6
- export declare const formatDateTime: (at: number) => string;
7
- export declare const formatTimestamp: (at: number) => string;
8
- export declare const formatTime: (at: number) => string;
9
- export declare const formatClock: (at: number) => string;
10
- export declare const formatWeekdayTime: (at: number) => string;
11
- export declare const timeAgo: (at: number, { now, days }?: {
12
- now?: number;
13
- days?: boolean;
14
- }) => string;