@knime/product-features 1.1.3 → 1.2.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 (40) hide show
  1. package/CHANGELOG.md +21 -0
  2. package/dist/dataTransfer.js +8 -116
  3. package/dist/dataTransfer.js.map +1 -1
  4. package/dist/index-B3ql6hun.js +2695 -0
  5. package/dist/index-B3ql6hun.js.map +1 -0
  6. package/dist/nodes.css +119 -0
  7. package/dist/nodes.js +270 -101
  8. package/dist/nodes.js.map +1 -1
  9. package/dist/rfcErrors.js +1 -1
  10. package/dist/src/dataTransfer/shared/ui/CollapsiblePanel/index.d.ts +1 -1
  11. package/dist/src/dataTransfer/shared/ui/CollapsiblePanel/index.d.ts.map +1 -1
  12. package/dist/src/dataTransfer/shared/ui/ProgressItem/index.d.ts +1 -1
  13. package/dist/src/dataTransfer/shared/ui/ProgressItem/index.d.ts.map +1 -1
  14. package/dist/src/nodes/NodePreview/NodePreview.vue.d.ts +4 -0
  15. package/dist/src/nodes/NodePreview/NodePreview.vue.d.ts.map +1 -0
  16. package/dist/src/nodes/NodePreview/SVGNodeTorso.vue.d.ts +4 -0
  17. package/dist/src/nodes/NodePreview/SVGNodeTorso.vue.d.ts.map +1 -0
  18. package/dist/src/nodes/NodePreview/constants.d.ts +2 -0
  19. package/dist/src/nodes/NodePreview/constants.d.ts.map +1 -0
  20. package/dist/src/nodes/NodePreview/enums.d.ts +27 -0
  21. package/dist/src/nodes/NodePreview/enums.d.ts.map +1 -0
  22. package/dist/src/nodes/NodePreview/index.d.ts +3 -0
  23. package/dist/src/nodes/NodePreview/index.d.ts.map +1 -0
  24. package/dist/src/nodes/NodePreview/types.d.ts +68 -0
  25. package/dist/src/nodes/NodePreview/types.d.ts.map +1 -0
  26. package/dist/src/nodes/PortIcon/PortIcon.vue.d.ts.map +1 -1
  27. package/dist/src/nodes/PortIcon/SVGPortIcon.vue.d.ts +4 -0
  28. package/dist/src/nodes/PortIcon/SVGPortIcon.vue.d.ts.map +1 -0
  29. package/dist/src/nodes/PortIcon/constants.d.ts +3 -0
  30. package/dist/src/nodes/PortIcon/constants.d.ts.map +1 -0
  31. package/dist/src/nodes/index.d.ts +2 -0
  32. package/dist/src/nodes/index.d.ts.map +1 -1
  33. package/dist/src/versions/VersionHistory/VersionLabel.vue.d.ts +6 -4
  34. package/dist/src/versions/VersionHistory/VersionLabel.vue.d.ts.map +1 -1
  35. package/dist/toasts.js +2 -9
  36. package/dist/toasts.js.map +1 -1
  37. package/dist/versions.js +1 -1
  38. package/package.json +8 -8
  39. package/dist/format-ra_vlnN7.js +0 -238
  40. package/dist/format-ra_vlnN7.js.map +0 -1
package/dist/nodes.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"nodes.js","sources":["../src/nodes/NodeDescriptionTabs/OptionsTab.vue","../src/nodes/PortIcon/enums.ts","../src/nodes/PortIcon/PortIcon.vue","../src/nodes/NodeDescriptionTabs/PortTemplateInfo.vue","../src/nodes/NodeDescriptionTabs/PortGroup.vue","../src/nodes/NodeDescriptionTabs/PortsTab.vue","../src/nodes/NodeDescriptionTabs/ViewsTab.vue","../src/nodes/NodeDescriptionTabs/NodeDescriptionTabs.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed, ref } from \"vue\";\n\nimport {\n KdsAccordion,\n type KdsAccordionItem,\n KdsDescription,\n} from \"@knime/kds-components\";\n\nimport type { NodeDescriptionOptions } from \"./types\";\n\ntype Props = {\n options: Array<NodeDescriptionOptions>;\n renderAsHtml?: boolean;\n};\n\nconst { options, renderAsHtml } = defineProps<Props>();\n\ntype AccordionItemWithContent = KdsAccordionItem & {\n description?: string;\n content: NodeDescriptionOptions[\"fields\"];\n};\n\nconst accordionItems = computed<AccordionItemWithContent[]>(() => {\n return options.map(\n (option, index) =>\n ({\n id: `section-${index}`,\n headline: option.sectionName,\n description: option.sectionDescription,\n content: option.fields,\n }) satisfies AccordionItemWithContent,\n );\n});\n\nconst modelValue = ref<string[]>([]);\n</script>\n\n<template>\n <div>\n <KdsAccordion\n v-if=\"options.length > 1\"\n v-model=\"modelValue\"\n :items=\"accordionItems\"\n >\n <template v-for=\"item in accordionItems\" :key=\"item.id\" #[item.id]>\n <KdsDescription\n v-if=\"item.description\"\n :text=\"item.description\"\n :render-as-html=\"renderAsHtml\"\n class=\"section-description\"\n />\n\n <template v-for=\"field in item.content\" :key=\"field.name\">\n <div class=\"option-content\">\n <span class=\"name\">\n {{ field.name }} {{ field.optional ? \"(optional)\" : \"\" }}\n </span>\n\n <KdsDescription\n :text=\"field.description\"\n :render-as-html=\"renderAsHtml\"\n />\n </div>\n </template>\n </template>\n </KdsAccordion>\n\n <div v-if=\"options.length === 1\" class=\"single-option-wrapper\">\n <KdsDescription\n v-if=\"options[0].sectionDescription\"\n :text=\"options[0].sectionDescription\"\n :render-as-html=\"renderAsHtml\"\n class=\"section-description\"\n />\n\n <template v-for=\"field in options[0].fields\" :key=\"field.name\">\n <div class=\"option-content\">\n <span class=\"name\">\n {{ field.name }} {{ field.optional ? \"(optional)\" : \"\" }}\n </span>\n\n <KdsDescription\n :text=\"field.description\"\n :render-as-html=\"renderAsHtml\"\n />\n </div>\n </template>\n </div>\n </div>\n</template>\n\n<style scoped>\n.section-description {\n margin-bottom: var(--kds-spacing-container-1x);\n}\n\n.single-option-wrapper {\n display: flex;\n flex-direction: column;\n padding: var(--kds-spacing-container-1x);\n background: var(--kds-color-surface-muted);\n border-radius: var(--kds-border-radius-container-0-37x);\n}\n\n.option-content {\n & .name {\n font: var(--kds-font-base-title-small-strong);\n }\n}\n</style>\n","export const PortType = Object.freeze({\n TABLE: \"table\",\n FLOW_VARIABLE: \"flowVariable\",\n OTHER: \"other\",\n GENERIC: \"generic\",\n} as const);\n\nexport const PortTypes = Object.freeze(Object.values(PortType));\n","<script setup lang=\"ts\">\nimport { computed } from \"vue\";\n\nimport { PortType as PortTypeEnum } from \"./enums\";\nimport type { PortIconProps } from \"./types\";\n\nconst portSize = 9; // 9px\nconst strokeWidth = 1.4; // 1.4px\n\n// TODO: KDS-871 Use tokens once they're available in JS code\nconst colors = {\n [PortTypeEnum.TABLE]: \"hsl(0, 3%, 12%)\",\n [PortTypeEnum.FLOW_VARIABLE]: \"hsl(0, 100%, 64.7%)\",\n} as const;\n\nconst { filled = true, ...props } = defineProps<PortIconProps>();\n\nconst trianglePath = computed(() => {\n // draw triangle around middle point\n let [x1, y1, x2, y3] = [\n -portSize / 2,\n -portSize / 2,\n portSize / 2,\n portSize / 2,\n ];\n\n // y and d are chosen so the triangle (including strokeWidth) fits precisely in the 9x9 port\n /* eslint-disable no-magic-numbers */\n const d = Math.sqrt(5) / 2;\n const y = d / 2 + 1 / 4;\n /* eslint-enable no-magic-numbers */\n\n // move points towards the center of the triangle according to strokeWidth\n x1 += strokeWidth / 2;\n x2 -= strokeWidth * d;\n y1 += strokeWidth * y;\n y3 -= strokeWidth * y;\n\n // draw triangle clock-wise\n return `${x1},${y1} ${x2},${0} ${x1},${y3}`;\n});\n\nconst viewBox = computed(() =>\n [-portSize / 2, -portSize / 2, portSize, portSize].join(\" \"),\n);\n\nconst portColor = computed(() => {\n if (props.type === \"table\" || props.type === \"flowVariable\") {\n return colors[props.type];\n }\n\n return props.color;\n});\n\nconst fillColor = computed(() => {\n return filled ? portColor.value : \"transparent\";\n});\n</script>\n\n<template>\n <svg :viewBox=\"viewBox\" :width=\"portSize\" :height=\"portSize\">\n <!-- data table port -->\n <polygon\n v-if=\"type === 'table'\"\n :points=\"trianglePath\"\n :fill=\"fillColor\"\n :stroke=\"portColor\"\n :stroke-width=\"strokeWidth\"\n v-bind=\"$attrs\"\n />\n <!-- flow variable port -->\n <circle\n v-else-if=\"type === 'flowVariable'\"\n :r=\"portSize / 2 - strokeWidth / 2\"\n :fill=\"fillColor\"\n :stroke=\"portColor\"\n :stroke-width=\"strokeWidth\"\n v-bind=\"$attrs\"\n />\n <!-- other port -->\n <rect\n v-else\n :width=\"portSize - strokeWidth\"\n :height=\"portSize - strokeWidth\"\n :x=\"-portSize / 2 + strokeWidth / 2\"\n :y=\"-portSize / 2 + strokeWidth / 2\"\n :fill=\"fillColor\"\n :stroke=\"portColor\"\n :stroke-width=\"strokeWidth\"\n v-bind=\"$attrs\"\n />\n </svg>\n</template>\n","<script setup lang=\"ts\">\nimport { KdsDescription } from \"@knime/kds-components\";\n\nimport PortIcon from \"../PortIcon/PortIcon.vue\";\n\nimport type { PortTemplate } from \"./types\";\n\ntype Props = {\n port: PortTemplate;\n showDescription: boolean;\n};\n\ndefineProps<Props>();\n</script>\n\n<template>\n <div class=\"wrapper\">\n <div class=\"icon\">\n <PortIcon\n :type=\"port.type\"\n :color=\"port.color\"\n :filled=\"!port.optional\"\n />\n </div>\n <span class=\"title\">Type: {{ port.typeDisplayName }}</span>\n\n <span class=\"name title\">Name: {{ port.name }}</span>\n\n <KdsDescription\n v-if=\"showDescription\"\n class=\"description\"\n :text=\"port.description\"\n render-as-html\n />\n </div>\n</template>\n\n<style scoped>\n.wrapper {\n display: grid;\n grid-template-columns: var(--kds-spacing-container-0-5x) 1fr;\n gap: var(--kds-spacing-container-0-5x);\n}\n\n.icon {\n display: flex;\n align-items: center;\n}\n\n.name,\n.description {\n grid-column: 2;\n}\n\n.title {\n font: var(--kds-font-base-title-small-strong);\n}\n</style>\n","<script setup lang=\"ts\">\nimport { KdsDescription } from \"@knime/kds-components\";\n\nimport PortTemplateInfo from \"./PortTemplateInfo.vue\";\nimport type { PortTemplate } from \"./types\";\n\ntype Props = {\n name: string;\n description?: string;\n ports: Array<PortTemplate>;\n isDynamicGroup?: boolean;\n};\n\ndefineProps<Props>();\n</script>\n\n<template>\n <div class=\"port-group-card\">\n <span class=\"group-name\">{{ name }}</span>\n\n <KdsDescription v-if=\"description\" :text=\"description\" render-as-html />\n\n <template v-for=\"port in ports\" :key=\"port.id\">\n <PortTemplateInfo :port=\"port\" :show-description=\"!isDynamicGroup\" />\n </template>\n </div>\n</template>\n\n<style scoped>\n.port-group-card {\n display: flex;\n flex-direction: column;\n gap: var(--kds-spacing-container-0-75x);\n padding: var(--kds-spacing-container-1x);\n background: var(--kds-color-surface-muted);\n border-radius: var(--kds-border-radius-container-0-37x);\n\n & .group-name {\n font: var(--kds-font-base-title-small-strong);\n }\n}\n</style>\n","<script setup lang=\"ts\">\nimport PortGroup from \"./PortGroup.vue\";\nimport type { DynamicPortGroup, PortTemplate } from \"./types\";\n\ntype Props = {\n inputPorts: Array<PortTemplate>;\n outputPorts: Array<PortTemplate>;\n dynamicInputGroups?: Array<DynamicPortGroup>;\n dynamicOutputGroups?: Array<DynamicPortGroup>;\n};\n\nconst { dynamicInputGroups = [], dynamicOutputGroups = [] } =\n defineProps<Props>();\n</script>\n\n<template>\n <div class=\"port-list\">\n <PortGroup\n v-if=\"inputPorts.length > 0\"\n name=\"Input ports\"\n :ports=\"inputPorts\"\n />\n\n <PortGroup\n v-if=\"outputPorts.length > 0\"\n name=\"Output ports\"\n :ports=\"outputPorts\"\n />\n\n <template v-for=\"group in dynamicInputGroups\" :key=\"group.name\">\n <PortGroup\n v-if=\"group.types.length > 0\"\n :name=\"group.name + ' (Dynamic Inport)'\"\n :description=\"group.description\"\n :ports=\"group.types\"\n is-dynamic-group\n />\n </template>\n\n <template v-for=\"group in dynamicOutputGroups\" :key=\"group.name\">\n <PortGroup\n v-if=\"group.types.length > 0\"\n :name=\"group.name + ' (Dynamic Outport)'\"\n :description=\"group.description\"\n :ports=\"group.types\"\n is-dynamic-group\n />\n </template>\n </div>\n</template>\n\n<style scoped>\n.port-list {\n display: flex;\n flex-direction: column;\n gap: var(--kds-spacing-container-0-5x);\n}\n</style>\n","<script setup lang=\"ts\">\nimport { computed } from \"vue\";\n\nimport { KdsDescription } from \"@knime/kds-components\";\n\nimport type { NodeDescriptionView } from \"./types\";\n\ntype Props = {\n views: Array<NodeDescriptionView>;\n};\n\nconst props = defineProps<Props>();\n\nconst viewsWithId = computed<Array<NodeDescriptionView & { id: string }>>(() =>\n props.views.map((view, index) => {\n const id = `view-${index}`;\n return { id, ...view };\n }),\n);\n</script>\n\n<template>\n <div v-for=\"view in viewsWithId\" :key=\"view.id\" class=\"card-wrapper\">\n <span class=\"name\">{{ view.name }}</span>\n <KdsDescription\n v-if=\"view.description\"\n :text=\"view.description\"\n render-as-html\n />\n </div>\n</template>\n\n<style scoped>\n.card-wrapper {\n display: flex;\n flex-direction: column;\n padding: var(--kds-spacing-container-1x);\n margin-bottom: var(--kds-spacing-container-0-25x);\n background: var(--kds-color-surface-muted);\n border-radius: var(--kds-border-radius-container-0-37x);\n}\n\n.name {\n font: var(--kds-font-base-title-small-strong);\n}\n</style>\n","<script setup lang=\"ts\">\nimport { computed, ref } from \"vue\";\n\nimport {\n KdsEmptyState,\n KdsTabBar,\n type KdsTabBarItem,\n} from \"@knime/kds-components\";\n\nimport OptionsTab from \"./OptionsTab.vue\";\nimport PortsTab from \"./PortsTab.vue\";\nimport ViewsTab from \"./ViewsTab.vue\";\nimport type { NodeDescriptionTabsProps } from \"./types\";\n\nconst {\n inputPorts = [],\n outputPorts = [],\n dynamicInputPorts = [],\n dynamicOutputPorts = [],\n optionsData = [],\n viewsData = [],\n emptyText = \"No ports, options or views available.\",\n renderAsHtml = false,\n tabBarFullWidth = false,\n} = defineProps<NodeDescriptionTabsProps>();\n\nconst TAB_IDS = {\n PORTS: \"ports\",\n OPTIONS: \"options\",\n VIEW: \"view\",\n} as const;\n\ntype TabIds = (typeof TAB_IDS)[keyof typeof TAB_IDS];\n\nconst activeTab = ref<TabIds | undefined>();\n\nconst hasPorts = computed(\n () =>\n inputPorts.length > 0 ||\n outputPorts.length > 0 ||\n dynamicInputPorts.length > 0 ||\n dynamicOutputPorts.length > 0,\n);\n\nconst tabs = computed<KdsTabBarItem[]>(() => [\n {\n id: \"tab-ports\",\n value: TAB_IDS.PORTS,\n label: \"Ports\",\n panelId: \"panel-ports\",\n accessory: {\n type: \"icon\",\n name: \"connection\",\n },\n disabled: !hasPorts.value,\n },\n {\n id: \"tab-options\",\n value: TAB_IDS.OPTIONS,\n label: \"Options\",\n panelId: \"panel-options\",\n accessory: {\n type: \"icon\",\n name: \"parameter\",\n },\n disabled: optionsData.length < 1,\n },\n {\n id: \"tab-view\",\n value: TAB_IDS.VIEW,\n label: \"View\",\n panelId: \"panel-view\",\n accessory: {\n type: \"icon\",\n name: \"eye\",\n },\n disabled: viewsData.length < 1,\n },\n]);\n</script>\n\n<template>\n <div>\n <KdsTabBar\n v-model=\"activeTab\"\n :full-width=\"tabBarFullWidth\"\n size=\"small\"\n :tabs=\"tabs\"\n />\n\n <div class=\"content\">\n <PortsTab\n v-if=\"activeTab === TAB_IDS.PORTS\"\n id=\"panel-ports\"\n role=\"tabpanel\"\n aria-labelledby=\"tab-ports\"\n tabindex=\"0\"\n :input-ports=\"inputPorts\"\n :output-ports=\"outputPorts\"\n :dynamic-input-groups=\"dynamicInputPorts\"\n :dynamic-output-groups=\"dynamicOutputPorts\"\n />\n\n <OptionsTab\n v-if=\"activeTab === TAB_IDS.OPTIONS\"\n id=\"panel-options\"\n role=\"tabpanel\"\n aria-labelledby=\"tab-options\"\n tabindex=\"0\"\n :options=\"optionsData\"\n :render-as-html=\"renderAsHtml\"\n />\n\n <ViewsTab\n v-if=\"activeTab === TAB_IDS.VIEW\"\n id=\"panel-view\"\n role=\"tabpanel\"\n aria-labelledby=\"tab-view\"\n tabindex=\"0\"\n :views=\"viewsData\"\n />\n\n <KdsEmptyState\n v-if=\"!activeTab\"\n :headline=\"emptyText\"\n class=\"empty-state\"\n />\n </div>\n </div>\n</template>\n\n<style scoped>\n.content {\n padding: var(--kds-spacing-container-0-5x) 0;\n color: var(--kds-color-text-and-icon-neutral);\n}\n\n.empty-state {\n margin: 0 auto;\n}\n</style>\n"],"names":["_createElementBlock","_createBlock","_unref","_renderList","_openBlock","_Fragment","_createElementVNode","_hoisted_1","_toDisplayString","_createVNode","_hoisted_2","_hoisted_3","PortTypeEnum","_createPropsRestProxy","_mergeProps","$attrs","_hoisted_4","PortIcon"],"mappings":"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"}
1
+ {"version":3,"file":"nodes.js","sources":["../src/nodes/NodeDescriptionTabs/OptionsTab.vue","../src/nodes/PortIcon/constants.ts","../src/nodes/PortIcon/SVGPortIcon.vue","../src/nodes/PortIcon/PortIcon.vue","../src/nodes/NodeDescriptionTabs/PortTemplateInfo.vue","../src/nodes/NodeDescriptionTabs/PortGroup.vue","../src/nodes/NodeDescriptionTabs/PortsTab.vue","../src/nodes/NodeDescriptionTabs/ViewsTab.vue","../src/nodes/NodeDescriptionTabs/NodeDescriptionTabs.vue","../src/nodes/NodePreview/constants.ts","../src/nodes/NodePreview/SVGNodeTorso.vue","../src/nodes/NodePreview/NodePreview.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed, ref } from \"vue\";\n\nimport {\n KdsAccordion,\n type KdsAccordionItem,\n KdsDescription,\n} from \"@knime/kds-components\";\n\nimport type { NodeDescriptionOptions } from \"./types\";\n\ntype Props = {\n options: Array<NodeDescriptionOptions>;\n renderAsHtml?: boolean;\n};\n\nconst { options, renderAsHtml } = defineProps<Props>();\n\ntype AccordionItemWithContent = KdsAccordionItem & {\n description?: string;\n content: NodeDescriptionOptions[\"fields\"];\n};\n\nconst accordionItems = computed<AccordionItemWithContent[]>(() => {\n return options.map(\n (option, index) =>\n ({\n id: `section-${index}`,\n headline: option.sectionName,\n description: option.sectionDescription,\n content: option.fields,\n }) satisfies AccordionItemWithContent,\n );\n});\n\nconst modelValue = ref<string[]>([]);\n</script>\n\n<template>\n <div>\n <KdsAccordion\n v-if=\"options.length > 1\"\n v-model=\"modelValue\"\n :items=\"accordionItems\"\n >\n <template v-for=\"item in accordionItems\" :key=\"item.id\" #[item.id]>\n <KdsDescription\n v-if=\"item.description\"\n :text=\"item.description\"\n :render-as-html=\"renderAsHtml\"\n class=\"section-description\"\n />\n\n <template v-for=\"field in item.content\" :key=\"field.name\">\n <div class=\"option-content\">\n <span class=\"name\">\n {{ field.name }} {{ field.optional ? \"(optional)\" : \"\" }}\n </span>\n\n <KdsDescription\n :text=\"field.description\"\n :render-as-html=\"renderAsHtml\"\n />\n </div>\n </template>\n </template>\n </KdsAccordion>\n\n <div v-if=\"options.length === 1\" class=\"single-option-wrapper\">\n <KdsDescription\n v-if=\"options[0].sectionDescription\"\n :text=\"options[0].sectionDescription\"\n :render-as-html=\"renderAsHtml\"\n class=\"section-description\"\n />\n\n <template v-for=\"field in options[0].fields\" :key=\"field.name\">\n <div class=\"option-content\">\n <span class=\"name\">\n {{ field.name }} {{ field.optional ? \"(optional)\" : \"\" }}\n </span>\n\n <KdsDescription\n :text=\"field.description\"\n :render-as-html=\"renderAsHtml\"\n />\n </div>\n </template>\n </div>\n </div>\n</template>\n\n<style scoped>\n.section-description {\n margin-bottom: var(--kds-spacing-container-1x);\n}\n\n.single-option-wrapper {\n display: flex;\n flex-direction: column;\n padding: var(--kds-spacing-container-1x);\n background: var(--kds-color-surface-muted);\n border-radius: var(--kds-border-radius-container-0-37x);\n}\n\n.option-content {\n & .name {\n font: var(--kds-font-base-title-small-strong);\n }\n}\n</style>\n","export const PORT_SIZE = 8; // px\nexport const PORT_STROKE_WIDTH = 1.4; // px\n","<script setup lang=\"ts\">\nimport { computed } from \"vue\";\n\nimport { PORT_SIZE, PORT_STROKE_WIDTH } from \"./constants\";\nimport type { PortIconProps } from \"./types\";\n\nconst { filled = true, type, color } = defineProps<PortIconProps>();\n\nconst trianglePath = computed(() => {\n // draw triangle around middle point\n let [x1, y1, x2, y3] = [\n -PORT_SIZE / 2,\n -PORT_SIZE / 2,\n PORT_SIZE / 2,\n PORT_SIZE / 2,\n ];\n\n // y and d are chosen so the triangle (including strokeWidth) fits precisely in the port (portSize x portSize)\n /* eslint-disable no-magic-numbers */\n const d = Math.sqrt(5) / 2;\n const y = d / 2 + 1 / 4;\n /* eslint-enable no-magic-numbers */\n\n // move points towards the center of the triangle according to strokeWidth\n x1 += PORT_STROKE_WIDTH / 2;\n x2 -= PORT_STROKE_WIDTH * d;\n y1 += PORT_STROKE_WIDTH * y;\n y3 -= PORT_STROKE_WIDTH * y;\n\n // draw triangle clock-wise\n return `${x1},${y1} ${x2},${0} ${x1},${y3}`;\n});\n</script>\n\n<template>\n <!-- data table port -->\n <polygon\n v-if=\"type === 'table'\"\n :points=\"trianglePath\"\n :class=\"{ filled }\"\n :data-type=\"type\"\n :stroke-width=\"PORT_STROKE_WIDTH\"\n v-bind=\"$attrs\"\n />\n\n <!-- flow variable port -->\n <circle\n v-else-if=\"type === 'flowVariable'\"\n :r=\"PORT_SIZE / 2 - PORT_STROKE_WIDTH / 2\"\n :class=\"{ filled }\"\n :data-type=\"type\"\n :stroke-width=\"PORT_STROKE_WIDTH\"\n v-bind=\"$attrs\"\n />\n\n <!-- other port -->\n <rect\n v-else\n :width=\"PORT_SIZE - PORT_STROKE_WIDTH\"\n :height=\"PORT_SIZE - PORT_STROKE_WIDTH\"\n :x=\"-PORT_SIZE / 2 + PORT_STROKE_WIDTH / 2\"\n :y=\"-PORT_SIZE / 2 + PORT_STROKE_WIDTH / 2\"\n :class=\"{ filled }\"\n :data-type=\"type\"\n :stroke-width=\"PORT_STROKE_WIDTH\"\n v-bind=\"$attrs\"\n />\n</template>\n\n<style scoped>\n[data-type=\"flowVariable\"] {\n fill: transparent;\n stroke: var(--kds-color-port-flow-variable);\n\n &.filled {\n fill: var(--kds-color-port-flow-variable);\n }\n}\n\n[data-type=\"table\"] {\n fill: transparent;\n stroke: var(--kds-color-port-data);\n\n &.filled {\n fill: var(--kds-color-port-data);\n }\n}\n\n[data-type=\"other\"],\n[data-type=\"generic\"] {\n fill: transparent;\n\n /** dark mode for custom colors generated using oklch */\n --base: v-bind(color);\n --color: light-dark(\n var(--base),\n oklch(from var(--base) calc(1 - l * 0.8) c h)\n );\n\n stroke: var(--color);\n\n &.filled {\n fill: var(--color);\n }\n}\n</style>\n","<script setup lang=\"ts\">\nimport { computed } from \"vue\";\n\nimport SVGPortIcon from \"./SVGPortIcon.vue\";\nimport { PORT_SIZE } from \"./constants\";\nimport type { PortIconProps } from \"./types\";\n\nconst props = defineProps<PortIconProps>();\n\nconst viewBox = computed(() =>\n [-PORT_SIZE / 2, -PORT_SIZE / 2, PORT_SIZE, PORT_SIZE].join(\" \"),\n);\n</script>\n\n<template>\n <svg :viewBox=\"viewBox\" :width=\"PORT_SIZE\" :height=\"PORT_SIZE\">\n <SVGPortIcon v-bind=\"props\" />\n </svg>\n</template>\n","<script setup lang=\"ts\">\nimport { KdsDescription } from \"@knime/kds-components\";\n\nimport PortIcon from \"../PortIcon/PortIcon.vue\";\n\nimport type { PortTemplate } from \"./types\";\n\ntype Props = {\n port: PortTemplate;\n showDescription: boolean;\n};\n\ndefineProps<Props>();\n</script>\n\n<template>\n <div class=\"wrapper\">\n <div class=\"icon\">\n <PortIcon\n :type=\"port.type\"\n :color=\"port.color\"\n :filled=\"!port.optional\"\n />\n </div>\n <span class=\"title\">Type: {{ port.typeDisplayName }}</span>\n\n <span class=\"name title\">Name: {{ port.name }}</span>\n\n <KdsDescription\n v-if=\"showDescription\"\n class=\"description\"\n :text=\"port.description\"\n render-as-html\n />\n </div>\n</template>\n\n<style scoped>\n.wrapper {\n display: grid;\n grid-template-columns: var(--kds-spacing-container-0-5x) 1fr;\n gap: var(--kds-spacing-container-0-5x);\n}\n\n.icon {\n display: flex;\n align-items: center;\n}\n\n.name,\n.description {\n grid-column: 2;\n}\n\n.title {\n font: var(--kds-font-base-title-small-strong);\n}\n</style>\n","<script setup lang=\"ts\">\nimport { KdsDescription } from \"@knime/kds-components\";\n\nimport PortTemplateInfo from \"./PortTemplateInfo.vue\";\nimport type { PortTemplate } from \"./types\";\n\ntype Props = {\n name: string;\n description?: string;\n ports: Array<PortTemplate>;\n isDynamicGroup?: boolean;\n};\n\ndefineProps<Props>();\n</script>\n\n<template>\n <div class=\"port-group-card\">\n <span class=\"group-name\">{{ name }}</span>\n\n <KdsDescription v-if=\"description\" :text=\"description\" render-as-html />\n\n <template v-for=\"port in ports\" :key=\"port.id\">\n <PortTemplateInfo :port=\"port\" :show-description=\"!isDynamicGroup\" />\n </template>\n </div>\n</template>\n\n<style scoped>\n.port-group-card {\n display: flex;\n flex-direction: column;\n gap: var(--kds-spacing-container-0-75x);\n padding: var(--kds-spacing-container-1x);\n background: var(--kds-color-surface-muted);\n border-radius: var(--kds-border-radius-container-0-37x);\n\n & .group-name {\n font: var(--kds-font-base-title-small-strong);\n }\n}\n</style>\n","<script setup lang=\"ts\">\nimport PortGroup from \"./PortGroup.vue\";\nimport type { DynamicPortGroup, PortTemplate } from \"./types\";\n\ntype Props = {\n inputPorts: Array<PortTemplate>;\n outputPorts: Array<PortTemplate>;\n dynamicInputGroups?: Array<DynamicPortGroup>;\n dynamicOutputGroups?: Array<DynamicPortGroup>;\n};\n\nconst { dynamicInputGroups = [], dynamicOutputGroups = [] } =\n defineProps<Props>();\n</script>\n\n<template>\n <div class=\"port-list\">\n <PortGroup\n v-if=\"inputPorts.length > 0\"\n name=\"Input ports\"\n :ports=\"inputPorts\"\n />\n\n <PortGroup\n v-if=\"outputPorts.length > 0\"\n name=\"Output ports\"\n :ports=\"outputPorts\"\n />\n\n <template v-for=\"group in dynamicInputGroups\" :key=\"group.name\">\n <PortGroup\n v-if=\"group.types.length > 0\"\n :name=\"group.name + ' (Dynamic Inport)'\"\n :description=\"group.description\"\n :ports=\"group.types\"\n is-dynamic-group\n />\n </template>\n\n <template v-for=\"group in dynamicOutputGroups\" :key=\"group.name\">\n <PortGroup\n v-if=\"group.types.length > 0\"\n :name=\"group.name + ' (Dynamic Outport)'\"\n :description=\"group.description\"\n :ports=\"group.types\"\n is-dynamic-group\n />\n </template>\n </div>\n</template>\n\n<style scoped>\n.port-list {\n display: flex;\n flex-direction: column;\n gap: var(--kds-spacing-container-0-5x);\n}\n</style>\n","<script setup lang=\"ts\">\nimport { computed } from \"vue\";\n\nimport { KdsDescription } from \"@knime/kds-components\";\n\nimport type { NodeDescriptionView } from \"./types\";\n\ntype Props = {\n views: Array<NodeDescriptionView>;\n};\n\nconst props = defineProps<Props>();\n\nconst viewsWithId = computed<Array<NodeDescriptionView & { id: string }>>(() =>\n props.views.map((view, index) => {\n const id = `view-${index}`;\n return { id, ...view };\n }),\n);\n</script>\n\n<template>\n <div v-for=\"view in viewsWithId\" :key=\"view.id\" class=\"card-wrapper\">\n <span class=\"name\">{{ view.name }}</span>\n <KdsDescription\n v-if=\"view.description\"\n :text=\"view.description\"\n render-as-html\n />\n </div>\n</template>\n\n<style scoped>\n.card-wrapper {\n display: flex;\n flex-direction: column;\n padding: var(--kds-spacing-container-1x);\n margin-bottom: var(--kds-spacing-container-0-25x);\n background: var(--kds-color-surface-muted);\n border-radius: var(--kds-border-radius-container-0-37x);\n}\n\n.name {\n font: var(--kds-font-base-title-small-strong);\n}\n</style>\n","<script setup lang=\"ts\">\nimport { computed, ref } from \"vue\";\n\nimport {\n KdsEmptyState,\n KdsTabBar,\n type KdsTabBarItem,\n} from \"@knime/kds-components\";\n\nimport OptionsTab from \"./OptionsTab.vue\";\nimport PortsTab from \"./PortsTab.vue\";\nimport ViewsTab from \"./ViewsTab.vue\";\nimport type { NodeDescriptionTabsProps } from \"./types\";\n\nconst {\n inputPorts = [],\n outputPorts = [],\n dynamicInputPorts = [],\n dynamicOutputPorts = [],\n optionsData = [],\n viewsData = [],\n emptyText = \"No ports, options or views available.\",\n renderAsHtml = false,\n tabBarFullWidth = false,\n} = defineProps<NodeDescriptionTabsProps>();\n\nconst TAB_IDS = {\n PORTS: \"ports\",\n OPTIONS: \"options\",\n VIEW: \"view\",\n} as const;\n\ntype TabIds = (typeof TAB_IDS)[keyof typeof TAB_IDS];\n\nconst activeTab = ref<TabIds | undefined>();\n\nconst hasPorts = computed(\n () =>\n inputPorts.length > 0 ||\n outputPorts.length > 0 ||\n dynamicInputPorts.length > 0 ||\n dynamicOutputPorts.length > 0,\n);\n\nconst tabs = computed<KdsTabBarItem[]>(() => [\n {\n id: \"tab-ports\",\n value: TAB_IDS.PORTS,\n label: \"Ports\",\n panelId: \"panel-ports\",\n accessory: {\n type: \"icon\",\n name: \"connection\",\n },\n disabled: !hasPorts.value,\n },\n {\n id: \"tab-options\",\n value: TAB_IDS.OPTIONS,\n label: \"Options\",\n panelId: \"panel-options\",\n accessory: {\n type: \"icon\",\n name: \"parameter\",\n },\n disabled: optionsData.length < 1,\n },\n {\n id: \"tab-view\",\n value: TAB_IDS.VIEW,\n label: \"View\",\n panelId: \"panel-view\",\n accessory: {\n type: \"icon\",\n name: \"eye\",\n },\n disabled: viewsData.length < 1,\n },\n]);\n</script>\n\n<template>\n <div>\n <KdsTabBar\n v-model=\"activeTab\"\n :full-width=\"tabBarFullWidth\"\n size=\"small\"\n :tabs=\"tabs\"\n />\n\n <div class=\"content\">\n <PortsTab\n v-if=\"activeTab === TAB_IDS.PORTS\"\n id=\"panel-ports\"\n role=\"tabpanel\"\n aria-labelledby=\"tab-ports\"\n tabindex=\"0\"\n :input-ports=\"inputPorts\"\n :output-ports=\"outputPorts\"\n :dynamic-input-groups=\"dynamicInputPorts\"\n :dynamic-output-groups=\"dynamicOutputPorts\"\n />\n\n <OptionsTab\n v-if=\"activeTab === TAB_IDS.OPTIONS\"\n id=\"panel-options\"\n role=\"tabpanel\"\n aria-labelledby=\"tab-options\"\n tabindex=\"0\"\n :options=\"optionsData\"\n :render-as-html=\"renderAsHtml\"\n />\n\n <ViewsTab\n v-if=\"activeTab === TAB_IDS.VIEW\"\n id=\"panel-view\"\n role=\"tabpanel\"\n aria-labelledby=\"tab-view\"\n tabindex=\"0\"\n :views=\"viewsData\"\n />\n\n <KdsEmptyState\n v-if=\"!activeTab\"\n :headline=\"emptyText\"\n class=\"empty-state\"\n />\n </div>\n </div>\n</template>\n\n<style scoped>\n.content {\n padding: var(--kds-spacing-container-0-5x) 0;\n color: var(--kds-color-text-and-icon-neutral);\n}\n\n.empty-state {\n margin: 0 auto;\n}\n</style>\n","export const NODE_SIZE = 32;\n","<script setup lang=\"ts\">\nimport { computed } from \"vue\";\n\nimport { NODE_SIZE } from \"./constants\";\nimport type { NodeTorsoProps } from \"./types\";\n\n/**\n * Draws the Torso (colored rounded rectangle with icon) of a Node or Component\n * This vue component only draws regular Nodes/Components, no Metanodes, no Unknown nor Missing Nodes\n * Only works inside of a <svg> element.\n */\nconst backgroundPaths: Record<string, string> = {\n default:\n \"M0,29.2L0,2.8C0,1.3,1.3,0,2.8,0l26.3,0C30.7,0,32,1.3,32,2.8v26.3c0,1.6-1.3,2.8-2.8,2.8H2.8C1.3,32,0,30.\" +\n \"7,0,29.2z\",\n LoopEnd:\n \"M32,2.8v26.3c0,1.6-1.3,2.8-2.8,2.8H4L0,16.1L4,0l25.2,0C30.7,0,32,1.3,32,2.8z\",\n LoopStart:\n \"M0,29.2L0,2.8C0,1.3,1.3,0,2.8,0L32,0l-4,15.9L32,32H2.8C1.3,32,0,30.7,0,29.2z\",\n ScopeEnd:\n \"M32,2.8v26.3c0,1.6-1.3,2.8-2.8,2.8H4L0,16.1L4,0l25.2,0C30.7,0,32,1.3,32,2.8z\",\n ScopeStart:\n \"M0,29.2L0,2.8C0,1.3,1.3,0,2.8,0L32,0l-4,15.9L32,32H2.8C1.3,32,0,30.7,0,29.2z\",\n VirtualIn:\n \"M32,2.8v26.3c0,1.6-1.3,2.8-2.8,2.8H6.5L0,25.9l5.2-10L0.7,7.2L6.5,0l22.7,0C30.7,0,32,1.3,32,2.8z\",\n VirtualOut:\n \"M0,29.2L0,2.8C0,1.3,1.3,0,2.8,0L32,0l-5.8,7.2l4.5,8.7l-5.2,10L32,32H2.8C1.3,32,0,30.7,0,29.2z\",\n};\n\nconst componentBackgroundPortion = 0.75;\n\nconst {\n type = null,\n isComponent = false,\n icon = null,\n} = defineProps<NodeTorsoProps>();\n\nconst backgroundPath = computed(\n () => (type && backgroundPaths[type]) || backgroundPaths.default,\n);\n\nconst componentBackgroundTransformation = computed(() => {\n const offset = NODE_SIZE / 2;\n const scaleFactor = componentBackgroundPortion;\n return `translate(${offset}, ${offset}) scale(${scaleFactor}) translate(-${offset}, -${offset})`;\n});\n</script>\n\n<template>\n <g>\n <path\n :d=\"backgroundPath\"\n :class=\"['bg', { component: isComponent }]\"\n :data-type=\"isComponent ? null : type\"\n />\n <!-- components may have two layers of background. This is the inner part, a shrunk version of the outer frame -->\n <path\n v-if=\"isComponent && type\"\n :d=\"backgroundPath\"\n class=\"bg\"\n :data-type=\"type\"\n :transform=\"componentBackgroundTransformation\"\n />\n <image\n v-if=\"icon\"\n :xlink:href=\"icon\"\n x=\"8\"\n y=\"8\"\n width=\"16\"\n height=\"16\"\n pointer-events=\"none\"\n />\n </g>\n</template>\n\n<style scoped>\n.bg {\n /** default color is unknown */\n fill: var(--kds-color-nodes-and-variables-unknown);\n\n &.component {\n fill: var(--kds-color-nodes-and-variables-special-nodes);\n }\n\n &[data-type=\"Configuration\"] {\n fill: var(--kds-color-nodes-and-variables-configuration);\n }\n\n &[data-type=\"Container\"] {\n fill: var(--kds-color-nodes-and-variables-container);\n }\n\n &[data-type=\"Learner\"] {\n fill: var(--kds-color-nodes-and-variables-learner);\n }\n\n &[data-type=\"Loop\"] {\n fill: var(--kds-color-nodes-and-variables-loop);\n }\n\n &[data-type=\"LoopEnd\"] {\n fill: var(--kds-color-nodes-and-variables-loop);\n }\n\n &[data-type=\"LoopStart\"] {\n fill: var(--kds-color-nodes-and-variables-loop);\n }\n\n &[data-type=\"Manipulator\"] {\n fill: var(--kds-color-nodes-and-variables-manipulator);\n }\n\n &[data-type=\"Other\"] {\n fill: var(--kds-color-nodes-and-variables-other);\n }\n\n &[data-type=\"Predictor\"] {\n fill: var(--kds-color-nodes-and-variables-predictor);\n }\n\n &[data-type=\"ScopeEnd\"] {\n fill: var(--kds-color-nodes-and-variables-scope);\n }\n\n &[data-type=\"ScopeStart\"] {\n fill: var(--kds-color-nodes-and-variables-scope);\n }\n\n &[data-type=\"Sink\"] {\n fill: var(--kds-color-nodes-and-variables-sink);\n }\n\n &[data-type=\"Source\"] {\n fill: var(--kds-color-nodes-and-variables-source);\n }\n\n &[data-type=\"Visualizer\"] {\n fill: var(--kds-color-nodes-and-variables-visualizer);\n }\n\n &[data-type=\"QuickForm\"] {\n fill: var(--kds-color-nodes-and-variables-quickform);\n }\n\n /** Virtual = Components */\n &[data-type=\"VirtualIn\"],\n &[data-type=\"VirtualOut\"] {\n fill: var(--kds-color-nodes-and-variables-special-nodes);\n }\n}\n</style>\n","<script setup lang=\"ts\">\nimport { computed } from \"vue\";\n\nimport { KdsIcon } from \"@knime/kds-components\";\n\nimport SVGPortIcon from \"../PortIcon/SVGPortIcon.vue\";\nimport { PORT_SIZE } from \"../PortIcon/constants\";\n\nimport SVGNodeTorso from \"./SVGNodeTorso.vue\";\nimport { NODE_SIZE } from \"./constants\";\nimport type { NodePreviewProps, Port } from \"./types\";\n\n/**\n * SVG icon preview for a node or component, generated from its attributes\n */\nconst {\n type = null,\n isComponent = false,\n inPorts = [],\n outPorts = [],\n hidePorts = false,\n hideIndicators = false,\n size = \"xlarge\",\n indicatorIcon = undefined,\n icon = null,\n} = defineProps<NodePreviewProps>();\n\nconst horizontalSpaceForPorts = computed(() => (hidePorts ? 0 : PORT_SIZE));\n\nconst width = computed(() => NODE_SIZE + 2 * horizontalSpaceForPorts.value);\nconst height = NODE_SIZE;\nconst viewBox = computed(\n () => `-${horizontalSpaceForPorts.value} 0 ${width.value} ${height}`,\n);\n\n// top edge of port icon relative to 32x32 background\nfunction yPortShift(index: number, total: number): number {\n /* eslint-disable no-magic-numbers */\n let spacing = 1;\n if (total === 2) {\n spacing = 12;\n } else if (total === 3) {\n spacing = 2;\n }\n /* eslint-enable no-magic-numbers */\n\n const totalHeight = total * PORT_SIZE + (total - 1) * spacing;\n const delta = (NODE_SIZE - totalHeight) / 2;\n return (spacing + PORT_SIZE) * index + delta + PORT_SIZE / 2;\n}\n\nconst maxShownPorts = 3;\n\nconst cutOffPorts = (ports: Port[]) => {\n if (ports.length > maxShownPorts) {\n return [...ports.slice(0, maxShownPorts)];\n }\n return ports;\n};\n\nconst visibleInPorts = computed(() => cutOffPorts(inPorts));\nconst visibleOutPorts = computed(() => cutOffPorts(outPorts));\nconst numberOfHiddenPorts = computed(\n () =>\n inPorts.length -\n visibleInPorts.value.length +\n outPorts.length -\n visibleOutPorts.value.length,\n);\n</script>\n\n<template>\n <div class=\"node-preview\" :data-size=\"size\">\n <svg :viewBox=\"viewBox\" :width=\"width\" :height=\"height\">\n <SVGNodeTorso :type=\"type\" :icon=\"icon\" :is-component=\"isComponent\" />\n <template v-if=\"!hidePorts\">\n <SVGPortIcon\n v-for=\"(port, index) in visibleInPorts\"\n :key=\"`in-${index}`\"\n :color=\"port.color\"\n :filled=\"!port.optional\"\n :type=\"port.type\"\n :transform=\"`translate(-${PORT_SIZE / 2}, ${yPortShift(index, visibleInPorts.length)})`\"\n />\n <SVGPortIcon\n v-for=\"(port, index) in visibleOutPorts\"\n :key=\"`out-${index}`\"\n :color=\"port.color\"\n :filled=\"!port.optional\"\n :type=\"port.type\"\n :transform=\"`translate(${NODE_SIZE + PORT_SIZE / 2}, ${yPortShift(index, visibleOutPorts.length)})`\"\n />\n </template>\n </svg>\n <div v-if=\"!hideIndicators\" class=\"indicators\">\n <KdsIcon v-if=\"indicatorIcon\" :name=\"indicatorIcon\" size=\"small\" />\n <KdsIcon\n v-if=\"numberOfHiddenPorts > 0 && !hidePorts\"\n name=\"more-connections\"\n aria-label=\"Indication that some ports are hidden\"\n size=\"small\"\n />\n </div>\n </div>\n</template>\n\n<style scoped>\n.node-preview {\n display: flex;\n flex-direction: column;\n gap: var(--kds-spacing-container-0-25x);\n width: calc(v-bind(width) * 1px);\n\n &[data-size=\"small\"] {\n transform: scale(calc(12 / v-bind(NODE_SIZE)));\n }\n\n &[data-size=\"medium\"] {\n transform: scale(0.5);\n }\n\n & .indicators {\n display: flex;\n gap: var(--kds-spacing-container-0-25x);\n justify-content: center;\n height: var(--kds-dimension-icon-0-75x);\n }\n}\n</style>\n"],"names":["_createElementBlock","_createBlock","_unref","_renderList","_openBlock","_Fragment","_createElementVNode","_hoisted_1","_toDisplayString","_createVNode","_hoisted_2","_hoisted_3","_mergeProps","$attrs","PortIcon"],"mappings":"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"}
package/dist/rfcErrors.js CHANGED
@@ -1,7 +1,7 @@
1
1
  import { defineComponent, createPropsRestProxy, ref, openBlock, createElementBlock, createElementVNode, toDisplayString, Fragment, createTextVNode, renderList, createCommentVNode, createBlock, unref, h } from 'vue';
2
2
  import { useClipboard } from '@vueuse/core';
3
3
  import { KdsButton } from '@knime/kds-components';
4
- import { a as formatDateTimeString } from './format-ra_vlnN7.js';
4
+ import { b as formatDateTimeString } from './index-B3ql6hun.js';
5
5
  import { _ as _export_sfc } from './_plugin-vue_export-helper-pcqpp-6-.js';
6
6
 
7
7
  import './rfcErrors.css';const serializeErrorForClipboard = (error, headline, formatDate) => {
@@ -1,3 +1,3 @@
1
1
  export { default as CollapsiblePanel } from './CollapsiblePanel.vue';
2
- export type * from './types.ts';
2
+ export type * from './types';
3
3
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/dataTransfer/shared/ui/CollapsiblePanel/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AACrE,mBAAmB,YAAY,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/dataTransfer/shared/ui/CollapsiblePanel/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AACrE,mBAAmB,SAAS,CAAC"}
@@ -1,3 +1,3 @@
1
1
  export { default as ProgressItem } from './ProgressItem.vue';
2
- export type * from './types.ts';
2
+ export type * from './types';
3
3
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/dataTransfer/shared/ui/ProgressItem/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAC7D,mBAAmB,YAAY,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/dataTransfer/shared/ui/ProgressItem/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAC7D,mBAAmB,SAAS,CAAC"}
@@ -0,0 +1,4 @@
1
+ import { NodePreviewProps } from './types';
2
+ declare const _default: import('vue').DefineComponent<NodePreviewProps, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<NodePreviewProps> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, HTMLDivElement>;
3
+ export default _default;
4
+ //# sourceMappingURL=NodePreview.vue.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NodePreview.vue.d.ts","sourceRoot":"","sources":["../../../../src/nodes/NodePreview/NodePreview.vue"],"names":[],"mappings":"AA4IA,OAAO,KAAK,EAAE,gBAAgB,EAAQ,MAAM,SAAS,CAAC;;AAiNtD,wBAOG"}
@@ -0,0 +1,4 @@
1
+ import { NodeTorsoProps } from './types';
2
+ declare const _default: import('vue').DefineComponent<NodeTorsoProps, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<NodeTorsoProps> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, SVGGElement>;
3
+ export default _default;
4
+ //# sourceMappingURL=SVGNodeTorso.vue.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SVGNodeTorso.vue.d.ts","sourceRoot":"","sources":["../../../../src/nodes/NodePreview/SVGNodeTorso.vue"],"names":[],"mappings":"AA4JA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;;AA8G9C,wBAOG"}
@@ -0,0 +1,2 @@
1
+ export declare const NODE_SIZE = 32;
2
+ //# sourceMappingURL=constants.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../../src/nodes/NodePreview/constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,SAAS,KAAK,CAAC"}
@@ -0,0 +1,27 @@
1
+ export declare const NodeType: Readonly<{
2
+ readonly Configuration: "Configuration";
3
+ readonly Container: "Container";
4
+ readonly Learner: "Learner";
5
+ readonly Loop: "Loop";
6
+ readonly LoopEnd: "LoopEnd";
7
+ readonly LoopStart: "LoopStart";
8
+ readonly Manipulator: "Manipulator";
9
+ readonly Other: "Other";
10
+ readonly Predictor: "Predictor";
11
+ readonly ScopeEnd: "ScopeEnd";
12
+ readonly ScopeStart: "ScopeStart";
13
+ readonly Sink: "Sink";
14
+ readonly Source: "Source";
15
+ readonly Visualizer: "Visualizer";
16
+ readonly VirtualIn: "VirtualIn";
17
+ readonly VirtualOut: "VirtualOut";
18
+ readonly QuickForm: "QuickForm";
19
+ }>;
20
+ export declare const NodeTypes: readonly ("Configuration" | "Container" | "Learner" | "Loop" | "LoopEnd" | "LoopStart" | "Manipulator" | "Other" | "Predictor" | "ScopeEnd" | "ScopeStart" | "Sink" | "Source" | "Visualizer" | "VirtualIn" | "VirtualOut" | "QuickForm")[];
21
+ export declare const NodePreviewSizes: Readonly<{
22
+ large: "large";
23
+ medium: "medium";
24
+ small: "small";
25
+ }>;
26
+ export declare const NodePreviewSize: readonly ("small" | "medium" | "large")[];
27
+ //# sourceMappingURL=enums.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"enums.d.ts","sourceRoot":"","sources":["../../../../src/nodes/NodePreview/enums.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,QAAQ;;;;;;;;;;;;;;;;;;EAkBV,CAAC;AAEZ,eAAO,MAAM,SAAS,6OAAyC,CAAC;AAEhE,eAAO,MAAM,gBAAgB;;;;EAI3B,CAAC;AAEH,eAAO,MAAM,eAAe,2CAAiD,CAAC"}
@@ -0,0 +1,3 @@
1
+ export { default as NodePreview } from './NodePreview.vue';
2
+ export type * from './types';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/nodes/NodePreview/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAE3D,mBAAmB,SAAS,CAAC"}
@@ -0,0 +1,68 @@
1
+ import { KdsIconName } from 'packages/components/dist/src';
2
+ import { PortType } from '../PortIcon';
3
+ import { NodePreviewSize, NodeTypes } from './enums';
4
+ export type NodeType = (typeof NodeTypes)[number];
5
+ export type NodePreviewSize = (typeof NodePreviewSize)[number];
6
+ export type NodeTorsoProps = {
7
+ /**
8
+ * Node type, e.g. "Learner", "Visualizer"
9
+ * as defined in org.knime.core.node.NodeFactory.NodeType.
10
+ * Is undefined for MetaNodes.
11
+ */
12
+ type?: NodeType | null;
13
+ /**
14
+ * Differentiate between a native node and a component node
15
+ */
16
+ isComponent?: boolean;
17
+ /**
18
+ * data-url containing Base64-encoded icon
19
+ */
20
+ icon?: string | null;
21
+ };
22
+ export type Port = {
23
+ /** CSS-compatible color string for type "other" and "generic" */
24
+ color?: string;
25
+ optional?: boolean;
26
+ type: PortType;
27
+ };
28
+ export type NodePreviewProps = {
29
+ /**
30
+ * Type of node; determines the background color.
31
+ */
32
+ type?: NodeType | null;
33
+ /**
34
+ * Use alternative rendering style:
35
+ * Components always have a gray background and a smaller rectangle whose background indicates the node type
36
+ */
37
+ isComponent?: boolean;
38
+ /**
39
+ * Shows an indicator icon below the node
40
+ */
41
+ indicatorIcon?: KdsIconName;
42
+ /**
43
+ * List of incoming ports
44
+ */
45
+ inPorts?: Port[];
46
+ /**
47
+ * List of outgoing ports
48
+ */
49
+ outPorts?: Port[];
50
+ /**
51
+ * URL of icon that is rendered inside the node. (Possibly `data:` URL)
52
+ * Passed through to NodeTorso
53
+ */
54
+ icon?: string | null;
55
+ /**
56
+ * Hide the ports witch frees 2x PORT_SIZE on the width
57
+ */
58
+ hidePorts?: boolean;
59
+ /**
60
+ * Hide bottom indicator icons
61
+ */
62
+ hideIndicators?: boolean;
63
+ /**
64
+ * Size of the preview
65
+ */
66
+ size?: NodePreviewSize;
67
+ };
68
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/nodes/NodePreview/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAEhE,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAE5C,OAAO,KAAK,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAE1D,MAAM,MAAM,QAAQ,GAAG,CAAC,OAAO,SAAS,CAAC,CAAC,MAAM,CAAC,CAAC;AAClD,MAAM,MAAM,eAAe,GAAG,CAAC,OAAO,eAAe,CAAC,CAAC,MAAM,CAAC,CAAC;AAE/D,MAAM,MAAM,cAAc,GAAG;IAC3B;;;;OAIG;IACH,IAAI,CAAC,EAAE,QAAQ,GAAG,IAAI,CAAC;IACvB;;OAEG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,IAAI,GAAG;IACjB,iEAAiE;IACjE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,IAAI,EAAE,QAAQ,CAAC;CAChB,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG;IAC7B;;OAEG;IACH,IAAI,CAAC,EAAE,QAAQ,GAAG,IAAI,CAAC;IACvB;;;OAGG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;OAEG;IACH,aAAa,CAAC,EAAE,WAAW,CAAC;IAC5B;;OAEG;IACH,OAAO,CAAC,EAAE,IAAI,EAAE,CAAC;IACjB;;OAEG;IACH,QAAQ,CAAC,EAAE,IAAI,EAAE,CAAC;IAClB;;;OAGG;IACH,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB;;OAEG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;OAEG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB;;OAEG;IACH,IAAI,CAAC,EAAE,eAAe,CAAC;CACxB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"PortIcon.vue.d.ts","sourceRoot":"","sources":["../../../../src/nodes/PortIcon/PortIcon.vue"],"names":[],"mappings":"AAkGA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;;AAgI7C,wBAOG"}
1
+ {"version":3,"file":"PortIcon.vue.d.ts","sourceRoot":"","sources":["../../../../src/nodes/PortIcon/PortIcon.vue"],"names":[],"mappings":"AAyBA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;;AA2D7C,wBAOG"}
@@ -0,0 +1,4 @@
1
+ import { PortIconProps } from './types';
2
+ declare const _default: import('vue').DefineComponent<PortIconProps, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<PortIconProps> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
3
+ export default _default;
4
+ //# sourceMappingURL=SVGPortIcon.vue.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SVGPortIcon.vue.d.ts","sourceRoot":"","sources":["../../../../src/nodes/PortIcon/SVGPortIcon.vue"],"names":[],"mappings":"AA+GA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;;AAoG7C,wBAMG"}
@@ -0,0 +1,3 @@
1
+ export declare const PORT_SIZE = 8;
2
+ export declare const PORT_STROKE_WIDTH = 1.4;
3
+ //# sourceMappingURL=constants.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../../src/nodes/PortIcon/constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,SAAS,IAAI,CAAC;AAC3B,eAAO,MAAM,iBAAiB,MAAM,CAAC"}
@@ -1,5 +1,7 @@
1
1
  export * from './NodeDescriptionTabs';
2
2
  export type * from './NodeDescriptionTabs';
3
+ export * from './NodePreview';
4
+ export type * from './NodePreview';
3
5
  export * from './PortIcon';
4
6
  export type * from './PortIcon';
5
7
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/nodes/index.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAC;AACtC,mBAAmB,uBAAuB,CAAC;AAE3C,cAAc,YAAY,CAAC;AAC3B,mBAAmB,YAAY,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/nodes/index.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAC;AACtC,mBAAmB,uBAAuB,CAAC;AAE3C,cAAc,eAAe,CAAC;AAC9B,mBAAmB,eAAe,CAAC;AAEnC,cAAc,YAAY,CAAC;AAC3B,mBAAmB,YAAY,CAAC"}
@@ -20,6 +20,7 @@ declare const _default: import('vue').DefineComponent<__VLS_PublicProps, {}, {},
20
20
  readonly popoverType?: import('@knime/kds-components').KdsPopoverType | undefined;
21
21
  readonly fullWidth?: boolean | undefined;
22
22
  readonly maxInlineSize?: string | undefined;
23
+ readonly stretchInline?: boolean | undefined;
23
24
  readonly content?: string | undefined;
24
25
  readonly placement?: Exclude<import('@knime/kds-components').KdsPopoverPlacement, "custom"> | undefined;
25
26
  readonly customPlacementPosition?: never | undefined;
@@ -30,6 +31,7 @@ declare const _default: import('vue').DefineComponent<__VLS_PublicProps, {}, {},
30
31
  readonly popoverType?: import('@knime/kds-components').KdsPopoverType | undefined;
31
32
  readonly fullWidth?: boolean | undefined;
32
33
  readonly maxInlineSize?: string | undefined;
34
+ readonly stretchInline?: boolean | undefined;
33
35
  readonly content?: string | undefined;
34
36
  readonly placement: "custom";
35
37
  readonly customPlacementPosition: {
@@ -55,11 +57,11 @@ declare const _default: import('vue').DefineComponent<__VLS_PublicProps, {}, {},
55
57
  $options: import('vue').ComponentOptionsBase<Readonly<({
56
58
  modelValue?: boolean;
57
59
  } & {
58
- modelValue?: boolean;
59
60
  role?: import('@knime/kds-components').KdsPopoverRole;
60
61
  popoverType?: import('@knime/kds-components').KdsPopoverType;
61
62
  fullWidth?: boolean;
62
63
  maxInlineSize?: string;
64
+ stretchInline?: boolean;
63
65
  content?: string;
64
66
  } & {
65
67
  placement?: Exclude<import('@knime/kds-components').KdsPopoverPlacement, "custom">;
@@ -67,11 +69,11 @@ declare const _default: import('vue').DefineComponent<__VLS_PublicProps, {}, {},
67
69
  }) | ({
68
70
  modelValue?: boolean;
69
71
  } & {
70
- modelValue?: boolean;
71
72
  role?: import('@knime/kds-components').KdsPopoverRole;
72
73
  popoverType?: import('@knime/kds-components').KdsPopoverType;
73
74
  fullWidth?: boolean;
74
75
  maxInlineSize?: string;
76
+ stretchInline?: boolean;
75
77
  content?: string;
76
78
  } & {
77
79
  placement: "custom";
@@ -109,11 +111,11 @@ declare const _default: import('vue').DefineComponent<__VLS_PublicProps, {}, {},
109
111
  } & Readonly<{}> & Omit<{} & (Readonly<({
110
112
  modelValue?: boolean;
111
113
  } & {
112
- modelValue?: boolean;
113
114
  role?: import('@knime/kds-components').KdsPopoverRole;
114
115
  popoverType?: import('@knime/kds-components').KdsPopoverType;
115
116
  fullWidth?: boolean;
116
117
  maxInlineSize?: string;
118
+ stretchInline?: boolean;
117
119
  content?: string;
118
120
  } & {
119
121
  placement?: Exclude<import('@knime/kds-components').KdsPopoverPlacement, "custom">;
@@ -121,11 +123,11 @@ declare const _default: import('vue').DefineComponent<__VLS_PublicProps, {}, {},
121
123
  }) | ({
122
124
  modelValue?: boolean;
123
125
  } & {
124
- modelValue?: boolean;
125
126
  role?: import('@knime/kds-components').KdsPopoverRole;
126
127
  popoverType?: import('@knime/kds-components').KdsPopoverType;
127
128
  fullWidth?: boolean;
128
129
  maxInlineSize?: string;
130
+ stretchInline?: boolean;
129
131
  content?: string;
130
132
  } & {
131
133
  placement: "custom";
@@ -1 +1 @@
1
- {"version":3,"file":"VersionLabel.vue.d.ts","sourceRoot":"","sources":["../../../../src/versions/VersionHistory/VersionLabel.vue"],"names":[],"mappings":"AA+EA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAE7C,KAAK,KAAK,GAAG;IACX,KAAK,EAAE,aAAa,CAAC;CACtB,CAAC;AAEF,KAAK,WAAW,GAAG,KAAK,CAAC;AAUzB,KAAK,iBAAiB,GAAG;IACzB,UAAU,CAAC,EAAE,OAAO,CAAC;CACpB,GAAG,WAAW,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;oCAwImtlB,GAAG,8CAA8C,GAAG,yBAAyB,GAAG,6DAAmC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAhBz1lB,wBAQG"}
1
+ {"version":3,"file":"VersionLabel.vue.d.ts","sourceRoot":"","sources":["../../../../src/versions/VersionHistory/VersionLabel.vue"],"names":[],"mappings":"AA+EA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAE7C,KAAK,KAAK,GAAG;IACX,KAAK,EAAE,aAAa,CAAC;CACtB,CAAC;AAEF,KAAK,WAAW,GAAG,KAAK,CAAC;AAUzB,KAAK,iBAAiB,GAAG;IACzB,UAAU,CAAC,EAAE,OAAO,CAAC;CACpB,GAAG,WAAW,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;oCAwIg5lB,GAAG,8CAA8C,GAAG,yBAAyB,GAAG,6DAAmC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAhBthmB,wBAQG"}
package/dist/toasts.js CHANGED
@@ -1,19 +1,12 @@
1
1
  import { defineComponent, computed, openBlock, createBlock, unref, mergeProps, useCssVars, ref, inject, onMounted, watch, createElementBlock, normalizeClass, withDirectives, createElementVNode, createVNode, toDisplayString, createCommentVNode, Fragment, createTextVNode, resolveDynamicComponent, renderList, vShow, provide, getCurrentInstance, TransitionGroup, withCtx } from 'vue';
2
2
  import { useWindowFocus, useMouseInElement, useRafFn, useEventBus } from '@vueuse/core';
3
3
  import { KdsLinkButton, KdsButton, KdsIcon, KdsProgressBar } from '@knime/kds-components';
4
+ import { c as capitalize, t as truncateString } from './index-B3ql6hun.js';
4
5
  import { _ as _export_sfc } from './_plugin-vue_export-helper-pcqpp-6-.js';
5
6
  import { cloneDeep } from 'es-toolkit';
6
7
  import { uniqueId } from 'es-toolkit/compat';
7
8
 
8
- import './toasts.css';const capitalize = (input) => input.charAt(0).toUpperCase() + input.substring(1);
9
-
10
- const defaultMaxLength = 160;
11
- const truncateString = (string = "", maxLength = defaultMaxLength) => {
12
- const dots = string.length > maxLength ? "…" : "";
13
- return `${string.substring(0, maxLength - 1)}${dots}`;
14
- };
15
-
16
- const toastType = {
9
+ import './toasts.css';const toastType = {
17
10
  INFO: "info",
18
11
  SUCCESS: "success",
19
12
  WARNING: "warning",