oasis-editor 0.0.103 → 0.0.104
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 +11 -0
- package/dist/{OasisEditorApp-CLzJ9zyp.js → OasisEditorApp-Bmif284h.js} +2 -1
- package/dist/core/plugin.d.ts +2 -1
- package/dist/core/pluginUiTypes.d.ts +9 -0
- package/dist/{index-DLL7O0m4.js → index-CtMU1BSO.js} +441 -72
- package/dist/index.d.ts +2 -2
- package/dist/oasis-editor.css +1 -1
- package/dist/oasis-editor.js +1 -1
- package/dist/oasis-editor.umd.cjs +4 -4
- package/dist/ui/components/Toolbar/ribbon/RibbonGroup.d.ts +2 -2
- package/dist/ui/components/Toolbar/ribbon/RibbonPanel.d.ts +2 -2
- package/dist/ui/components/Toolbar/ribbon/ribbonModel.d.ts +12 -1
- package/dist/ui/components/Toolbar/schema/items.d.ts +5 -2
- package/package.json +1 -1
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { JSX } from 'solid-js';
|
|
2
2
|
import { ToolbarActionApi } from '../schema/items.js';
|
|
3
|
-
import {
|
|
3
|
+
import { ResolvedRibbonGroupModel } from './ribbonModel.js';
|
|
4
4
|
|
|
5
5
|
export interface RibbonGroupProps {
|
|
6
|
-
group:
|
|
6
|
+
group: ResolvedRibbonGroupModel;
|
|
7
7
|
api: ToolbarActionApi;
|
|
8
8
|
}
|
|
9
9
|
export declare function RibbonGroup(props: RibbonGroupProps): JSX.Element;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Accessor } from 'solid-js';
|
|
1
|
+
import { Accessor, JSX } from 'solid-js';
|
|
2
2
|
import { RibbonTabId, ToolbarActionApi, ToolbarItem } from '../schema/items.js';
|
|
3
3
|
|
|
4
4
|
export interface RibbonPanelProps {
|
|
@@ -6,4 +6,4 @@ export interface RibbonPanelProps {
|
|
|
6
6
|
items: Accessor<ToolbarItem[]>;
|
|
7
7
|
api: ToolbarActionApi;
|
|
8
8
|
}
|
|
9
|
-
export declare function RibbonPanel(props: RibbonPanelProps):
|
|
9
|
+
export declare function RibbonPanel(props: RibbonPanelProps): JSX.Element;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { RibbonRow, RibbonTabId, ToolbarItem } from '../schema/items.js';
|
|
1
|
+
import { RibbonGroupResizePolicy, RibbonGroupResizeState, RibbonRow, RibbonTabId, ToolbarItem } from '../schema/items.js';
|
|
2
2
|
import { TranslateFn } from '../../../../i18n/index.js';
|
|
3
3
|
|
|
4
4
|
export interface RibbonTabDefinition {
|
|
@@ -11,6 +11,16 @@ export interface RibbonGroupModel {
|
|
|
11
11
|
largeItems: ToolbarItem[];
|
|
12
12
|
rows: Record<RibbonRow, ToolbarItem[]>;
|
|
13
13
|
order: number;
|
|
14
|
+
resizePolicy: Required<RibbonGroupResizePolicy>;
|
|
15
|
+
}
|
|
16
|
+
export interface ResolvedRibbonGroupModel extends RibbonGroupModel {
|
|
17
|
+
resizeState: RibbonGroupResizeState;
|
|
18
|
+
allocatedWidth?: number;
|
|
19
|
+
}
|
|
20
|
+
export interface RibbonGroupWidth {
|
|
21
|
+
full: number;
|
|
22
|
+
compact: number;
|
|
23
|
+
collapsed: number;
|
|
14
24
|
}
|
|
15
25
|
export declare function buildRibbonTabDefinitions(t: TranslateFn): RibbonTabDefinition[];
|
|
16
26
|
export declare const DEFAULT_RIBBON_TAB: RibbonTabId;
|
|
@@ -22,3 +32,4 @@ export declare function normalizeRibbonRow(row: ToolbarItem["row"]): RibbonRow;
|
|
|
22
32
|
export declare function isLargeRibbonItem(item: ToolbarItem): boolean;
|
|
23
33
|
export declare function ribbonGroupLabel(group: string, t: TranslateFn): string;
|
|
24
34
|
export declare function buildRibbonGroups(items: ToolbarItem[], tab: RibbonTabId, t: TranslateFn): RibbonGroupModel[];
|
|
35
|
+
export declare function resolveResponsiveRibbonGroups(groups: RibbonGroupModel[], availableWidth: number | null, measurements?: Partial<Record<string, Partial<RibbonGroupWidth>>>): ResolvedRibbonGroupModel[];
|
|
@@ -3,9 +3,9 @@ import { CommandBus } from '../../../../core/commands/CommandBus.js';
|
|
|
3
3
|
import { CommandRef } from '../../../../core/commands/CommandRef.js';
|
|
4
4
|
import { TranslationKey } from '../../../../i18n/index.js';
|
|
5
5
|
import { ColorPalette } from './palette.js';
|
|
6
|
-
import { RibbonTabId, RibbonRow, RibbonSize } from '../../../../core/pluginUiTypes.js';
|
|
6
|
+
import { RibbonGroupResizePolicy, RibbonTabId, RibbonRow, RibbonSize } from '../../../../core/pluginUiTypes.js';
|
|
7
7
|
|
|
8
|
-
export { RIBBON_TABS, type RibbonTabId, type RibbonRow, type RibbonSize, } from '../../../../core/pluginUiTypes.js';
|
|
8
|
+
export { RIBBON_TABS, type RibbonTabId, type RibbonRow, type RibbonSize, type RibbonGroupResizePolicy, type RibbonGroupResizeState, } from '../../../../core/pluginUiTypes.js';
|
|
9
9
|
/** Reactive snapshot of a command's state, as consumed by toolbar items. */
|
|
10
10
|
export interface ToolbarCommandState {
|
|
11
11
|
isEnabled: boolean;
|
|
@@ -60,6 +60,8 @@ interface ToolbarItemBase extends ItemReactiveOverrides {
|
|
|
60
60
|
row?: RibbonRow;
|
|
61
61
|
/** Ribbon-only visual scale. Large items span both toolbar rows. */
|
|
62
62
|
ribbonSize?: RibbonSize;
|
|
63
|
+
/** Group-level responsive behavior. First item wins per property. */
|
|
64
|
+
ribbonGroupResize?: RibbonGroupResizePolicy;
|
|
63
65
|
testId?: string;
|
|
64
66
|
tooltipKey?: TranslationKey;
|
|
65
67
|
tooltip?: string;
|
|
@@ -149,6 +151,7 @@ export interface SeparatorItem {
|
|
|
149
151
|
tab?: RibbonTabId;
|
|
150
152
|
group?: string;
|
|
151
153
|
row?: RibbonRow;
|
|
154
|
+
ribbonGroupResize?: RibbonGroupResizePolicy;
|
|
152
155
|
isVisible?: (api: ToolbarActionApi) => boolean;
|
|
153
156
|
}
|
|
154
157
|
export interface GroupItem extends ToolbarItemBase {
|