@knime/scripting-editor 0.0.108 → 0.0.110

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.
@@ -29,6 +29,7 @@ import { default as SideDrawer } from './SideDrawer/SideDrawer.vue';
29
29
  import { default as SideDrawerControls } from './SideDrawer/SideDrawerControls.vue';
30
30
  import { default as SideDrawerHeader } from './SideDrawer/SideDrawerHeader.vue';
31
31
  import { default as SkeletonItem } from './SkeletonItem/SkeletonItem.vue';
32
+ import { default as SplitPanel } from './SplitPanel/SplitPanel.vue';
32
33
  import { default as StyledListItem } from './StyleListItem/StyledListItem.vue';
33
34
  import { default as SubMenu } from './SubMenu/SubMenu.vue';
34
35
  import { default as svgWithTitle } from './SvgWithTitle/svgWithTitle';
@@ -54,5 +55,5 @@ export * from './FileExplorer';
54
55
  export * from './UploadProgressPanel';
55
56
  export * from './DownloadProgressPanel';
56
57
  export * from './Progress';
57
- export { AutoPlayVideo, Avatar, BaseButton, BaseMenuItem, BaseMenuItems, BaseMenuItemText, BaseModal, BaseMessage, Breadcrumb, Button, Carousel, Collapser, CollapsiblePanel, Description, DonutChart, Error, ExpandTransition, FileLink, FileSelector, SideDrawerHeader, FunctionButton, IdleReadyButton, LinkList, LoadingIcon, LocalDateTime, MenuItems, Message, MessageLink, Messages, MessageTitle, InlineMessage, Modal, NodeFeatureList, NodePreview, OpenSourceCredits, Pill, PlusButton, PortIcon, SideDrawer, SkeletonItem, SplitButton, StyledListItem, SubMenu, TabBar, Tag, TagList, Tooltip, svgWithTitle, SideDrawerControls, };
58
+ export { AutoPlayVideo, Avatar, BaseButton, BaseMenuItem, BaseMenuItems, BaseMenuItemText, BaseModal, BaseMessage, Breadcrumb, Button, Carousel, Collapser, CollapsiblePanel, Description, DonutChart, Error, ExpandTransition, FileLink, FileSelector, SideDrawerHeader, FunctionButton, IdleReadyButton, LinkList, LoadingIcon, LocalDateTime, MenuItems, Message, MessageLink, Messages, MessageTitle, InlineMessage, Modal, NodeFeatureList, NodePreview, OpenSourceCredits, Pill, PlusButton, PortIcon, SideDrawer, SkeletonItem, SplitButton, SplitPanel, StyledListItem, SubMenu, TabBar, Tag, TagList, Tooltip, svgWithTitle, SideDrawerControls, };
58
59
  export type { InlineMessageVariant, PillVariant };
@@ -0,0 +1,78 @@
1
+ import { MenuItem } from '@knime/components';
2
+ import { PaneSizes } from './utils/paneSizes';
3
+ import { GenericNodeSettings } from '../settings-service';
4
+ import { SlottedTab } from './ScriptingEditorBottomPane.vue';
5
+ interface Props {
6
+ title?: string | null;
7
+ language: string;
8
+ fileName?: string | null;
9
+ menuItems?: MenuItem[];
10
+ showControlBar?: boolean;
11
+ /**
12
+ * In pixels.
13
+ */
14
+ initialPaneSizes?: PaneSizes;
15
+ toSettings?: (settings: GenericNodeSettings) => GenericNodeSettings;
16
+ additionalBottomPaneTabContent?: SlottedTab[];
17
+ modelOrView?: "model" | "view";
18
+ }
19
+ declare function __VLS_template(): {
20
+ attrs: Partial<{}>;
21
+ slots: Readonly<{
22
+ [key: `bottomPaneTabSlot:${string}`]: (props: {
23
+ grabFocus: () => void;
24
+ }) => any;
25
+ [key: `bottomPaneTabControlsSlot:${string}`]: () => any;
26
+ "left-pane": () => any;
27
+ editor: () => any;
28
+ "settings-title": () => any;
29
+ "settings-content": () => any;
30
+ "right-pane": () => any;
31
+ "code-editor-controls": (props: {
32
+ showButtonText: boolean;
33
+ }) => any;
34
+ "bottom-pane-status-label": () => any;
35
+ }> & {
36
+ [key: `bottomPaneTabSlot:${string}`]: (props: {
37
+ grabFocus: () => void;
38
+ }) => any;
39
+ [key: `bottomPaneTabControlsSlot:${string}`]: () => any;
40
+ "left-pane": () => any;
41
+ editor: () => any;
42
+ "settings-title": () => any;
43
+ "settings-content": () => any;
44
+ "right-pane": () => any;
45
+ "code-editor-controls": (props: {
46
+ showButtonText: boolean;
47
+ }) => any;
48
+ "bottom-pane-status-label": () => any;
49
+ };
50
+ refs: {
51
+ editorSplitPane: HTMLDivElement;
52
+ };
53
+ rootEl: HTMLDivElement;
54
+ };
55
+ type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;
56
+ declare const __VLS_component: import('vue').DefineComponent<Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
57
+ "menu-item-clicked": (...args: any[]) => void;
58
+ }, string, import('vue').PublicProps, Readonly<Props> & Readonly<{
59
+ "onMenu-item-clicked"?: ((...args: any[]) => any) | undefined;
60
+ }>, {
61
+ title: string | null;
62
+ menuItems: MenuItem[];
63
+ showControlBar: boolean;
64
+ fileName: string | null;
65
+ toSettings: (settings: GenericNodeSettings) => GenericNodeSettings;
66
+ modelOrView: "model" | "view";
67
+ initialPaneSizes: PaneSizes;
68
+ additionalBottomPaneTabContent: SlottedTab[];
69
+ }, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {
70
+ editorSplitPane: HTMLDivElement;
71
+ }, HTMLDivElement>;
72
+ declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
73
+ export default _default;
74
+ type __VLS_WithTemplateSlots<T, S> = T & {
75
+ new (): {
76
+ $slots: S;
77
+ };
78
+ };
@@ -1,5 +1,5 @@
1
1
  export type BottomPaneTabSlotName = `bottomPaneTabSlot:${string}`;
2
- export type BottomPaneTabControlsSlotName = `bottomPaneControlsTabSlot:${string}`;
2
+ export type BottomPaneTabControlsSlotName = `bottomPaneTabControlsSlot:${string}`;
3
3
  export type SlottedTab = {
4
4
  label: string;
5
5
  slotName: BottomPaneTabSlotName;
@@ -14,7 +14,7 @@ type __VLS_PublicProps = {
14
14
  } & __VLS_Props;
15
15
  declare function __VLS_template(): {
16
16
  attrs: Partial<{}>;
17
- slots: Partial<Record<`bottomPaneControlsTabSlot:${string}`, (_: {}) => any>> & Partial<Record<`bottomPaneTabSlot:${string}`, (_: {
17
+ slots: Partial<Record<`bottomPaneTabControlsSlot:${string}`, (_: {}) => any>> & Partial<Record<`bottomPaneTabSlot:${string}`, (_: {
18
18
  grabFocus: () => void;
19
19
  }) => any>> & {
20
20
  'status-label'?(_: {}): any;
@@ -1,5 +1,3 @@
1
- export declare const MIN_WIDTH_FOR_DISPLAYING_PANES = 576;
2
- export declare const MIN_WIDTH_FOR_DISPLAYING_LEFT_PANE = 992;
3
1
  export declare const MIN_WIDTH_FOR_SHOWING_BUTTON_TEXT = 400;
4
2
  export type PaneSizes = {
5
3
  [key in "left" | "right" | "bottom"]: number;
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@knime/scripting-editor",
3
3
  "type": "module",
4
- "version": "0.0.108",
4
+ "version": "0.0.110",
5
5
  "description": "Shared Scripting Editor components for KNIME",
6
6
  "author": "KNIME AG, Zurich, Switzerland",
7
7
  "license": "See the file license.txt",
@@ -9,6 +9,7 @@
9
9
  "build": "run-p type-check build-only",
10
10
  "build-only": "vite build",
11
11
  "build-watch": "vite build --minify=false --watch",
12
+ "demo": "vite --config vite.demo.config.ts",
12
13
  "test:unit": "vitest",
13
14
  "type-check": "vue-tsc --noEmit -p tsconfig.vitest.json --composite false",
14
15
  "format": "prettier --cache --write .",
@@ -27,7 +28,7 @@
27
28
  "@knime/kds-components": "0.0.5",
28
29
  "@knime/kds-styles": "0.0.5",
29
30
  "@knime/styles": "1.10.0",
30
- "@knime/ui-extension-renderer": "2.3.8",
31
+ "@knime/ui-extension-renderer": "2.3.13",
31
32
  "@knime/utils": "1.5.5",
32
33
  "@vueuse/core": "13.5.0",
33
34
  "@xterm/addon-fit": "^0.10.0",
@@ -38,8 +39,9 @@
38
39
  "vscode-languageserver-protocol": "3.17.5"
39
40
  },
40
41
  "devDependencies": {
41
- "@knime/components": "1.37.0",
42
+ "@knime/components": "1.38.0",
42
43
  "@knime/eslint-config": "9.1.3",
44
+ "@knime/ui-extension-service": "2.4.1",
43
45
  "@knime/licenses": "1.2.0",
44
46
  "@tsconfig/node22": "22.0.2",
45
47
  "@types/color-hash": "2.0.0",
@@ -57,6 +59,7 @@
57
59
  "eslint": "9.30.1",
58
60
  "eslint-plugin-vue": "10.3.0",
59
61
  "jsdom": "26.1.0",
62
+ "monaco-editor": "0.45.x",
60
63
  "npm-run-all": "4.1.5",
61
64
  "prettier": "3.6.2",
62
65
  "stylelint": "16.21.1",
@@ -66,10 +69,11 @@
66
69
  "vite-plugin-dts": "4.5.4",
67
70
  "vite-svg-loader": "5.1.0",
68
71
  "vitest": "2.1.9",
69
- "vue-tsc": "3.0.4"
72
+ "vue-tsc": "3.0.4",
73
+ "vue": "3.5.17"
70
74
  },
71
75
  "peerDependencies": {
72
- "@knime/components": "1.37.0",
76
+ "@knime/components": "1.38.0",
73
77
  "@knime/ui-extension-service": "2.4.1",
74
78
  "monaco-editor": "0.45.x",
75
79
  "vue": "3.5.17"
@@ -1,29 +0,0 @@
1
- import { UseElementBoundingReturn } from '@vueuse/core';
2
- import { PaneSizes } from './paneSizes';
3
- export declare const useResizeLogic: ({ initialPaneSizes, rightPaneMinimumWidthInPixel, rightPaneLayout, rootSplitPaneRef, editorSplitPaneRef, }: {
4
- initialPaneSizes: PaneSizes;
5
- rightPaneMinimumWidthInPixel: number;
6
- rightPaneLayout: "fixed" | "relative";
7
- rootSplitPaneRef: UseElementBoundingReturn;
8
- editorSplitPaneRef: UseElementBoundingReturn;
9
- }) => {
10
- shouldCollapseAllPanes: import('vue').ComputedRef<boolean>;
11
- shouldCollapseLeftPane: import('vue').ComputedRef<boolean>;
12
- shouldShowButtonText: import('vue').ComputedRef<boolean>;
13
- minRatioOfRightPaneInPercent: import('vue').ComputedRef<number>;
14
- currentPaneSizes: import('vue').ComputedRef<{
15
- left: number;
16
- right: number;
17
- bottom: number;
18
- }>;
19
- usedMainPaneSize: import('vue').ComputedRef<number>;
20
- usedHorizontalCodeEditorPaneSize: import('vue').ComputedRef<number>;
21
- usedVerticalCodeEditorPaneSize: import('vue').ComputedRef<number>;
22
- isLeftPaneCollapsed: import('vue').ComputedRef<boolean>;
23
- isRightPaneCollapsed: import('vue').ComputedRef<boolean>;
24
- isBottomPaneCollapsed: import('vue').ComputedRef<boolean>;
25
- doUpdatePreviousPaneSize: (pane: keyof PaneSizes) => void;
26
- doResizePane: (size: number, pane: keyof PaneSizes, shouldUpdatePreviousPaneSize?: boolean) => void;
27
- doUpdateRightPane: (size: number) => void;
28
- doToggleCollapsePane: (pane: keyof PaneSizes) => void;
29
- };