@openchoreo/cell-diagram 1.2.0-rc.1
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/CHANGELOG.md +10 -0
- package/README.md +115 -0
- package/dist/Diagram.esm.js +55 -0
- package/dist/Diagram.esm.js.map +1 -0
- package/dist/components/Cell/CellLink/CellLinkFactory.esm.js +19 -0
- package/dist/components/Cell/CellLink/CellLinkFactory.esm.js.map +1 -0
- package/dist/components/Cell/CellLink/CellLinkModel.esm.js +59 -0
- package/dist/components/Cell/CellLink/CellLinkModel.esm.js.map +1 -0
- package/dist/components/Cell/CellLink/CellLinkWidget.esm.js +217 -0
- package/dist/components/Cell/CellLink/CellLinkWidget.esm.js.map +1 -0
- package/dist/components/Cell/CellNode/CellFactory.esm.js +19 -0
- package/dist/components/Cell/CellNode/CellFactory.esm.js.map +1 -0
- package/dist/components/Cell/CellNode/CellModel.esm.js +73 -0
- package/dist/components/Cell/CellNode/CellModel.esm.js.map +1 -0
- package/dist/components/Cell/CellNode/CellWidget.esm.js +166 -0
- package/dist/components/Cell/CellNode/CellWidget.esm.js.map +1 -0
- package/dist/components/Cell/CellNode/styles.esm.js +149 -0
- package/dist/components/Cell/CellNode/styles.esm.js.map +1 -0
- package/dist/components/Cell/CellPort/CellPortFactory.esm.js +17 -0
- package/dist/components/Cell/CellPort/CellPortFactory.esm.js.map +1 -0
- package/dist/components/Cell/CellPort/CellPortModel.esm.js +18 -0
- package/dist/components/Cell/CellPort/CellPortModel.esm.js.map +1 -0
- package/dist/components/Cell/CellPort/CellPortWidget.esm.js +24 -0
- package/dist/components/Cell/CellPort/CellPortWidget.esm.js.map +1 -0
- package/dist/components/Cell/CellPort/styles.esm.js +13 -0
- package/dist/components/Cell/CellPort/styles.esm.js.map +1 -0
- package/dist/components/Cell/EmptyNode/EmptyFactory.esm.js +20 -0
- package/dist/components/Cell/EmptyNode/EmptyFactory.esm.js.map +1 -0
- package/dist/components/Cell/EmptyNode/EmptyModel.esm.js +25 -0
- package/dist/components/Cell/EmptyNode/EmptyModel.esm.js.map +1 -0
- package/dist/components/Cell/EmptyNode/EmptyWidget.esm.js +52 -0
- package/dist/components/Cell/EmptyNode/EmptyWidget.esm.js.map +1 -0
- package/dist/components/Cell/EmptyNode/styles.esm.js +12 -0
- package/dist/components/Cell/EmptyNode/styles.esm.js.map +1 -0
- package/dist/components/Cell/cell-util.esm.js +110 -0
- package/dist/components/Cell/cell-util.esm.js.map +1 -0
- package/dist/components/Component/ComponentLink/ComponentLinkFactory.esm.js +19 -0
- package/dist/components/Component/ComponentLink/ComponentLinkFactory.esm.js.map +1 -0
- package/dist/components/Component/ComponentLink/ComponentLinkModel.esm.js +20 -0
- package/dist/components/Component/ComponentLink/ComponentLinkModel.esm.js.map +1 -0
- package/dist/components/Component/ComponentLink/ComponentLinkWidget.esm.js +205 -0
- package/dist/components/Component/ComponentLink/ComponentLinkWidget.esm.js.map +1 -0
- package/dist/components/Component/ComponentNode/ComponentFactory.esm.js +20 -0
- package/dist/components/Component/ComponentNode/ComponentFactory.esm.js.map +1 -0
- package/dist/components/Component/ComponentNode/ComponentHead/ComponentHead.esm.js +97 -0
- package/dist/components/Component/ComponentNode/ComponentHead/ComponentHead.esm.js.map +1 -0
- package/dist/components/Component/ComponentNode/ComponentModel.esm.js +26 -0
- package/dist/components/Component/ComponentNode/ComponentModel.esm.js.map +1 -0
- package/dist/components/Component/ComponentNode/ComponentWidget.esm.js +158 -0
- package/dist/components/Component/ComponentNode/ComponentWidget.esm.js.map +1 -0
- package/dist/components/Component/ComponentNode/styles.esm.js +102 -0
- package/dist/components/Component/ComponentNode/styles.esm.js.map +1 -0
- package/dist/components/Component/ComponentPort/ComponentPortFactory.esm.js +17 -0
- package/dist/components/Component/ComponentPort/ComponentPortFactory.esm.js.map +1 -0
- package/dist/components/Component/ComponentPort/ComponentPortModel.esm.js +18 -0
- package/dist/components/Component/ComponentPort/ComponentPortModel.esm.js.map +1 -0
- package/dist/components/Component/ComponentPort/ComponentPortWidget.esm.js +24 -0
- package/dist/components/Component/ComponentPort/ComponentPortWidget.esm.js.map +1 -0
- package/dist/components/Component/ComponentPort/styles.esm.js +16 -0
- package/dist/components/Component/ComponentPort/styles.esm.js.map +1 -0
- package/dist/components/Component/component-node-util.esm.js +15 -0
- package/dist/components/Component/component-node-util.esm.js.map +1 -0
- package/dist/components/Connection/ConnectionNode/ConnectionFactory.esm.js +20 -0
- package/dist/components/Connection/ConnectionNode/ConnectionFactory.esm.js.map +1 -0
- package/dist/components/Connection/ConnectionNode/ConnectionHead/ConnectionHead.esm.js +68 -0
- package/dist/components/Connection/ConnectionNode/ConnectionHead/ConnectionHead.esm.js.map +1 -0
- package/dist/components/Connection/ConnectionNode/ConnectionModel.esm.js +29 -0
- package/dist/components/Connection/ConnectionNode/ConnectionModel.esm.js.map +1 -0
- package/dist/components/Connection/ConnectionNode/ConnectionWidget.esm.js +51 -0
- package/dist/components/Connection/ConnectionNode/ConnectionWidget.esm.js.map +1 -0
- package/dist/components/Connection/ConnectionNode/styles.esm.js +64 -0
- package/dist/components/Connection/ConnectionNode/styles.esm.js.map +1 -0
- package/dist/components/Connection/ConnectionPort/ConnectionPortFactory.esm.js +17 -0
- package/dist/components/Connection/ConnectionPort/ConnectionPortFactory.esm.js.map +1 -0
- package/dist/components/Connection/ConnectionPort/ConnectionPortModel.esm.js +18 -0
- package/dist/components/Connection/ConnectionPort/ConnectionPortModel.esm.js.map +1 -0
- package/dist/components/Connection/ConnectionPort/ConnectionPortWidget.esm.js +24 -0
- package/dist/components/Connection/ConnectionPort/ConnectionPortWidget.esm.js.map +1 -0
- package/dist/components/Connection/ConnectionPort/styles.esm.js +13 -0
- package/dist/components/Connection/ConnectionPort/styles.esm.js.map +1 -0
- package/dist/components/Connection/connection-node-util.esm.js +12 -0
- package/dist/components/Connection/connection-node-util.esm.js.map +1 -0
- package/dist/components/Controls/ControlButtons/ControlButton.esm.js +54 -0
- package/dist/components/Controls/ControlButtons/ControlButton.esm.js.map +1 -0
- package/dist/components/Controls/ControlButtons/style.esm.js +19 -0
- package/dist/components/Controls/ControlButtons/style.esm.js.map +1 -0
- package/dist/components/Controls/DiagramControls.esm.js +88 -0
- package/dist/components/Controls/DiagramControls.esm.js.map +1 -0
- package/dist/components/Controls/DiagramLayers.esm.js +166 -0
- package/dist/components/Controls/DiagramLayers.esm.js.map +1 -0
- package/dist/components/Controls/DiagramLegend.esm.js +242 -0
- package/dist/components/Controls/DiagramLegend.esm.js.map +1 -0
- package/dist/components/Controls/LayerButton.esm.js +96 -0
- package/dist/components/Controls/LayerButton.esm.js.map +1 -0
- package/dist/components/DiagramContext/DiagramContext.esm.js +47 -0
- package/dist/components/DiagramContext/DiagramContext.esm.js.map +1 -0
- package/dist/components/External/ExternalLink/ExternalLinkFactory.esm.js +19 -0
- package/dist/components/External/ExternalLink/ExternalLinkFactory.esm.js.map +1 -0
- package/dist/components/External/ExternalLink/ExternalLinkModel.esm.js +112 -0
- package/dist/components/External/ExternalLink/ExternalLinkModel.esm.js.map +1 -0
- package/dist/components/External/ExternalLink/ExternalLinkWidget.esm.js +68 -0
- package/dist/components/External/ExternalLink/ExternalLinkWidget.esm.js.map +1 -0
- package/dist/components/External/ExternalNode/ExternalFactory.esm.js +20 -0
- package/dist/components/External/ExternalNode/ExternalFactory.esm.js.map +1 -0
- package/dist/components/External/ExternalNode/ExternalModel.esm.js +20 -0
- package/dist/components/External/ExternalNode/ExternalModel.esm.js.map +1 -0
- package/dist/components/External/ExternalNode/ExternalWidget.esm.js +40 -0
- package/dist/components/External/ExternalNode/ExternalWidget.esm.js.map +1 -0
- package/dist/components/External/ExternalNode/styles.esm.js +9 -0
- package/dist/components/External/ExternalNode/styles.esm.js.map +1 -0
- package/dist/components/External/external-node-util.esm.js +12 -0
- package/dist/components/External/external-node-util.esm.js.map +1 -0
- package/dist/components/Header/Header.esm.js +17 -0
- package/dist/components/Header/Header.esm.js.map +1 -0
- package/dist/components/MoreVertMenu/MoreVertMenu.esm.js +81 -0
- package/dist/components/MoreVertMenu/MoreVertMenu.esm.js.map +1 -0
- package/dist/components/ObservationLabel/ObservationLabel.esm.js +102 -0
- package/dist/components/ObservationLabel/ObservationLabel.esm.js.map +1 -0
- package/dist/components/OverlayLoader/OverlayLayerFactory.esm.js +19 -0
- package/dist/components/OverlayLoader/OverlayLayerFactory.esm.js.map +1 -0
- package/dist/components/OverlayLoader/OverlayLayerModel.esm.js +15 -0
- package/dist/components/OverlayLoader/OverlayLayerModel.esm.js.map +1 -0
- package/dist/components/OverlayLoader/OverlayLayerWidget.esm.js +28 -0
- package/dist/components/OverlayLoader/OverlayLayerWidget.esm.js.map +1 -0
- package/dist/components/Project/AdvancedLink/AdvancedLinkFactory.esm.js +69 -0
- package/dist/components/Project/AdvancedLink/AdvancedLinkFactory.esm.js.map +1 -0
- package/dist/components/Project/AdvancedLink/AdvancedLinkModel.esm.js +162 -0
- package/dist/components/Project/AdvancedLink/AdvancedLinkModel.esm.js.map +1 -0
- package/dist/components/Project/AdvancedLink/AdvancedLinkPointWidget.esm.js +45 -0
- package/dist/components/Project/AdvancedLink/AdvancedLinkPointWidget.esm.js.map +1 -0
- package/dist/components/Project/AdvancedLink/AdvancedLinkSegmentWidget.esm.js +46 -0
- package/dist/components/Project/AdvancedLink/AdvancedLinkSegmentWidget.esm.js.map +1 -0
- package/dist/components/Project/AdvancedLink/AdvancedLinkWidget.esm.js +149 -0
- package/dist/components/Project/AdvancedLink/AdvancedLinkWidget.esm.js.map +1 -0
- package/dist/components/Project/ProjectLink/ProjectLinkFactory.esm.js +20 -0
- package/dist/components/Project/ProjectLink/ProjectLinkFactory.esm.js.map +1 -0
- package/dist/components/Project/ProjectLink/ProjectLinkModel.esm.js +20 -0
- package/dist/components/Project/ProjectLink/ProjectLinkModel.esm.js.map +1 -0
- package/dist/components/Project/ProjectLink/ProjectLinkWidget.esm.js +94 -0
- package/dist/components/Project/ProjectLink/ProjectLinkWidget.esm.js.map +1 -0
- package/dist/components/Project/ProjectNode/ProjectFactory.esm.js +20 -0
- package/dist/components/Project/ProjectNode/ProjectFactory.esm.js.map +1 -0
- package/dist/components/Project/ProjectNode/ProjectHeadWidget/ProjectHeadWidget.esm.js +68 -0
- package/dist/components/Project/ProjectNode/ProjectHeadWidget/ProjectHeadWidget.esm.js.map +1 -0
- package/dist/components/Project/ProjectNode/ProjectModel.esm.js +56 -0
- package/dist/components/Project/ProjectNode/ProjectModel.esm.js.map +1 -0
- package/dist/components/Project/ProjectNode/ProjectWidget.esm.js +111 -0
- package/dist/components/Project/ProjectNode/ProjectWidget.esm.js.map +1 -0
- package/dist/components/Project/ProjectNode/styles.esm.js +66 -0
- package/dist/components/Project/ProjectNode/styles.esm.js.map +1 -0
- package/dist/components/Project/ProjectPort/ProjectPortFactory.esm.js +17 -0
- package/dist/components/Project/ProjectPort/ProjectPortFactory.esm.js.map +1 -0
- package/dist/components/Project/ProjectPort/ProjectPortModel.esm.js +18 -0
- package/dist/components/Project/ProjectPort/ProjectPortModel.esm.js.map +1 -0
- package/dist/components/Project/ProjectPort/ProjectPortWidget.esm.js +26 -0
- package/dist/components/Project/ProjectPort/ProjectPortWidget.esm.js.map +1 -0
- package/dist/components/Project/ProjectPort/styles.esm.js +38 -0
- package/dist/components/Project/ProjectPort/styles.esm.js.map +1 -0
- package/dist/components/PromptScreen/PromptScreen.esm.js +30 -0
- package/dist/components/PromptScreen/PromptScreen.esm.js.map +1 -0
- package/dist/components/SharedLink/SharedLink.esm.js +175 -0
- package/dist/components/SharedLink/SharedLink.esm.js.map +1 -0
- package/dist/components/SharedNode/SharedNode.esm.js +44 -0
- package/dist/components/SharedNode/SharedNode.esm.js.map +1 -0
- package/dist/components/TooltipLabel/TooltipLabel.esm.js +22 -0
- package/dist/components/TooltipLabel/TooltipLabel.esm.js.map +1 -0
- package/dist/diagrams/OrgDiagram.esm.js +176 -0
- package/dist/diagrams/OrgDiagram.esm.js.map +1 -0
- package/dist/diagrams/ProjectDiagram.esm.js +251 -0
- package/dist/diagrams/ProjectDiagram.esm.js.map +1 -0
- package/dist/hooks/useActiveLayers.esm.js +27 -0
- package/dist/hooks/useActiveLayers.esm.js.map +1 -0
- package/dist/index.d.ts +407 -0
- package/dist/index.esm.js +4 -0
- package/dist/index.esm.js.map +1 -0
- package/dist/renderDiagram.esm.js +11 -0
- package/dist/renderDiagram.esm.js.map +1 -0
- package/dist/resources/Dagre/DagreEngine.esm.js +178 -0
- package/dist/resources/Dagre/DagreEngine.esm.js.map +1 -0
- package/dist/resources/assets/font/Gilmer-Bold.ttf +0 -0
- package/dist/resources/assets/font/Gilmer-Bold.woff +0 -0
- package/dist/resources/assets/font/Gilmer-Bold.woff2 +0 -0
- package/dist/resources/assets/font/Gilmer-Medium.ttf +0 -0
- package/dist/resources/assets/font/Gilmer-Medium.woff +0 -0
- package/dist/resources/assets/font/Gilmer-Medium.woff2 +0 -0
- package/dist/resources/assets/font/Gilmer-Regular.ttf +0 -0
- package/dist/resources/assets/font/Gilmer-Regular.woff +0 -0
- package/dist/resources/assets/font/Gilmer-Regular.woff2 +0 -0
- package/dist/resources/assets/font/fonts.esm.js +57 -0
- package/dist/resources/assets/font/fonts.esm.js.map +1 -0
- package/dist/resources/assets/icons/AddCheckIcon.esm.js +22 -0
- package/dist/resources/assets/icons/AddCheckIcon.esm.js.map +1 -0
- package/dist/resources/assets/icons/AddIcon.esm.js +16 -0
- package/dist/resources/assets/icons/AddIcon.esm.js.map +1 -0
- package/dist/resources/assets/icons/CodeIcon.esm.js +26 -0
- package/dist/resources/assets/icons/CodeIcon.esm.js.map +1 -0
- package/dist/resources/assets/icons/ConnectionIcon.esm.js +22 -0
- package/dist/resources/assets/icons/ConnectionIcon.esm.js.map +1 -0
- package/dist/resources/assets/icons/DatabaseIcon.esm.js +23 -0
- package/dist/resources/assets/icons/DatabaseIcon.esm.js.map +1 -0
- package/dist/resources/assets/icons/DebugIcon.esm.js +25 -0
- package/dist/resources/assets/icons/DebugIcon.esm.js.map +1 -0
- package/dist/resources/assets/icons/DiagramIcon.esm.js +22 -0
- package/dist/resources/assets/icons/DiagramIcon.esm.js.map +1 -0
- package/dist/resources/assets/icons/DiffIcon.esm.js +22 -0
- package/dist/resources/assets/icons/DiffIcon.esm.js.map +1 -0
- package/dist/resources/assets/icons/EventIcon.esm.js +22 -0
- package/dist/resources/assets/icons/EventIcon.esm.js.map +1 -0
- package/dist/resources/assets/icons/ExternalConsumerIcon.esm.js +36 -0
- package/dist/resources/assets/icons/ExternalConsumerIcon.esm.js.map +1 -0
- package/dist/resources/assets/icons/FitScreenIcon.esm.js +22 -0
- package/dist/resources/assets/icons/FitScreenIcon.esm.js.map +1 -0
- package/dist/resources/assets/icons/FullScreenIcon.esm.js +22 -0
- package/dist/resources/assets/icons/FullScreenIcon.esm.js.map +1 -0
- package/dist/resources/assets/icons/GatewayIcon.esm.js +22 -0
- package/dist/resources/assets/icons/GatewayIcon.esm.js.map +1 -0
- package/dist/resources/assets/icons/InfoIcon.esm.js +22 -0
- package/dist/resources/assets/icons/InfoIcon.esm.js.map +1 -0
- package/dist/resources/assets/icons/LayersIcon.esm.js +28 -0
- package/dist/resources/assets/icons/LayersIcon.esm.js.map +1 -0
- package/dist/resources/assets/icons/ManualTaskIcon.esm.js +22 -0
- package/dist/resources/assets/icons/ManualTaskIcon.esm.js.map +1 -0
- package/dist/resources/assets/icons/MoreVertIcon.esm.js +18 -0
- package/dist/resources/assets/icons/MoreVertIcon.esm.js.map +1 -0
- package/dist/resources/assets/icons/ObservationIcon.esm.js +22 -0
- package/dist/resources/assets/icons/ObservationIcon.esm.js.map +1 -0
- package/dist/resources/assets/icons/ProxyIcon.esm.js +22 -0
- package/dist/resources/assets/icons/ProxyIcon.esm.js.map +1 -0
- package/dist/resources/assets/icons/RefreshIcon.esm.js +22 -0
- package/dist/resources/assets/icons/RefreshIcon.esm.js.map +1 -0
- package/dist/resources/assets/icons/RemoveIcon.esm.js +16 -0
- package/dist/resources/assets/icons/RemoveIcon.esm.js.map +1 -0
- package/dist/resources/assets/icons/ScheduledTaskIcon.esm.js +22 -0
- package/dist/resources/assets/icons/ScheduledTaskIcon.esm.js.map +1 -0
- package/dist/resources/assets/icons/ServiceIcon.esm.js +24 -0
- package/dist/resources/assets/icons/ServiceIcon.esm.js.map +1 -0
- package/dist/resources/assets/icons/SettingsIcon.esm.js +38 -0
- package/dist/resources/assets/icons/SettingsIcon.esm.js.map +1 -0
- package/dist/resources/assets/icons/WarningIcon.esm.js +32 -0
- package/dist/resources/assets/icons/WarningIcon.esm.js.map +1 -0
- package/dist/resources/assets/icons/WebAppIcon.esm.js +45 -0
- package/dist/resources/assets/icons/WebAppIcon.esm.js.map +1 -0
- package/dist/resources/assets/icons/WebhookIcon.esm.js +22 -0
- package/dist/resources/assets/icons/WebhookIcon.esm.js.map +1 -0
- package/dist/resources/assets/icons/index.esm.js +38 -0
- package/dist/resources/assets/icons/index.esm.js.map +1 -0
- package/dist/resources/assets/icons/lang/BallerinaIcon.esm.js +24 -0
- package/dist/resources/assets/icons/lang/BallerinaIcon.esm.js.map +1 -0
- package/dist/resources/assets/icons/lang/DockerIcon.esm.js +24 -0
- package/dist/resources/assets/icons/lang/DockerIcon.esm.js.map +1 -0
- package/dist/resources/assets/icons/lang/GoIcon.esm.js +24 -0
- package/dist/resources/assets/icons/lang/GoIcon.esm.js.map +1 -0
- package/dist/resources/assets/icons/lang/JavaIcon.esm.js +54 -0
- package/dist/resources/assets/icons/lang/JavaIcon.esm.js.map +1 -0
- package/dist/resources/assets/icons/lang/MIIcon.esm.js +75 -0
- package/dist/resources/assets/icons/lang/MIIcon.esm.js.map +1 -0
- package/dist/resources/assets/icons/lang/NodeJsIcon.esm.js +33 -0
- package/dist/resources/assets/icons/lang/NodeJsIcon.esm.js.map +1 -0
- package/dist/resources/assets/icons/lang/PhpIcon.esm.js +74 -0
- package/dist/resources/assets/icons/lang/PhpIcon.esm.js.map +1 -0
- package/dist/resources/assets/icons/lang/PythonIcon.esm.js +67 -0
- package/dist/resources/assets/icons/lang/PythonIcon.esm.js.map +1 -0
- package/dist/resources/assets/icons/lang/RubyIcon.esm.js +26 -0
- package/dist/resources/assets/icons/lang/RubyIcon.esm.js.map +1 -0
- package/dist/resources/assets/icons/lang/RustIcon.esm.js +46 -0
- package/dist/resources/assets/icons/lang/RustIcon.esm.js.map +1 -0
- package/dist/resources/constants.esm.js +44 -0
- package/dist/resources/constants.esm.js.map +1 -0
- package/dist/theme/CellDiagramThemeProvider.esm.js +37 -0
- package/dist/theme/CellDiagramThemeProvider.esm.js.map +1 -0
- package/dist/theme/ThemeContext.esm.js +14 -0
- package/dist/theme/ThemeContext.esm.js.map +1 -0
- package/dist/theme/colors.esm.js +50 -0
- package/dist/theme/colors.esm.js.map +1 -0
- package/dist/types.esm.js +30 -0
- package/dist/types.esm.js.map +1 -0
- package/dist/utils/CanvasStyles.esm.js +67 -0
- package/dist/utils/CanvasStyles.esm.js.map +1 -0
- package/dist/utils/diagramUtils.esm.js +151 -0
- package/dist/utils/diagramUtils.esm.js.map +1 -0
- package/dist/utils/orgUtils.esm.js +119 -0
- package/dist/utils/orgUtils.esm.js.map +1 -0
- package/dist/utils/projectUtils.esm.js +969 -0
- package/dist/utils/projectUtils.esm.js.map +1 -0
- package/package.json +86 -0
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { jsx } from 'react/jsx-runtime';
|
|
2
|
+
import { AbstractReactFactory } from '@projectstorm/react-canvas-core';
|
|
3
|
+
import { ProjectModel } from './ProjectModel.esm.js';
|
|
4
|
+
import { ProjectWidget } from './ProjectWidget.esm.js';
|
|
5
|
+
import { PROJECT_NODE } from '../../../resources/constants.esm.js';
|
|
6
|
+
|
|
7
|
+
class ProjectFactory extends AbstractReactFactory {
|
|
8
|
+
constructor() {
|
|
9
|
+
super(PROJECT_NODE);
|
|
10
|
+
}
|
|
11
|
+
generateReactWidget(event) {
|
|
12
|
+
return /* @__PURE__ */ jsx(ProjectWidget, { engine: this.engine, node: event.model });
|
|
13
|
+
}
|
|
14
|
+
generateModel(event) {
|
|
15
|
+
return new ProjectModel(event.initialConfig.component);
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
export { ProjectFactory };
|
|
20
|
+
//# sourceMappingURL=ProjectFactory.esm.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ProjectFactory.esm.js","sources":["../../../../src/components/Project/ProjectNode/ProjectFactory.tsx"],"sourcesContent":["import { AbstractReactFactory } from '@projectstorm/react-canvas-core';\nimport { DiagramEngine } from '@projectstorm/react-diagrams-core';\nimport { ProjectModel } from './ProjectModel';\nimport { ProjectWidget } from './ProjectWidget';\nimport { PROJECT_NODE } from '../../../resources';\n\nexport class ProjectFactory extends AbstractReactFactory<\n ProjectModel,\n DiagramEngine\n> {\n constructor() {\n super(PROJECT_NODE);\n }\n\n generateReactWidget(event: { model: ProjectModel }): JSX.Element {\n return <ProjectWidget engine={this.engine} node={event.model} />;\n }\n\n generateModel(event: { initialConfig: any }) {\n return new ProjectModel(event.initialConfig.component);\n }\n}\n"],"names":[],"mappings":";;;;;;AAMO,MAAM,uBAAuB,oBAAA,CAGlC;AAAA,EACA,WAAA,GAAc;AACZ,IAAA,KAAA,CAAM,YAAY,CAAA;AAAA,EACpB;AAAA,EAEA,oBAAoB,KAAA,EAA6C;AAC/D,IAAA,2BAAQ,aAAA,EAAA,EAAc,MAAA,EAAQ,KAAK,MAAA,EAAQ,IAAA,EAAM,MAAM,KAAA,EAAO,CAAA;AAAA,EAChE;AAAA,EAEA,cAAc,KAAA,EAA+B;AAC3C,IAAA,OAAO,IAAI,YAAA,CAAa,KAAA,CAAM,aAAA,CAAc,SAAS,CAAA;AAAA,EACvD;AACF;;;;"}
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
import { jsxs, jsx } from 'react/jsx-runtime';
|
|
2
|
+
import { ProjectCellNode } from '../styles.esm.js';
|
|
3
|
+
import { ProjectPortWidget } from '../../ProjectPort/ProjectPortWidget.esm.js';
|
|
4
|
+
import { generateRoundedOctagonSVG } from '../../../Cell/CellNode/CellWidget.esm.js';
|
|
5
|
+
import { CellBounds } from '../../../Cell/CellNode/CellModel.esm.js';
|
|
6
|
+
import { CELL_LINE_MIN_WIDTH, COMPONENT_CIRCLE_WIDTH } from '../../../../resources/constants.esm.js';
|
|
7
|
+
|
|
8
|
+
function ProjectHeadWidget(props) {
|
|
9
|
+
const { engine, node, isSelected, isFocused } = props;
|
|
10
|
+
const cellHeight = COMPONENT_CIRCLE_WIDTH;
|
|
11
|
+
const strokeWidth = CELL_LINE_MIN_WIDTH;
|
|
12
|
+
const isExposedToInternet = node.project.connections?.some(
|
|
13
|
+
(connection) => connection.source?.boundary === CellBounds.NorthBound
|
|
14
|
+
);
|
|
15
|
+
const hasExternalDependencies = node.project.connections?.some(
|
|
16
|
+
(connection) => connection.source?.boundary === CellBounds.SouthBound
|
|
17
|
+
);
|
|
18
|
+
const hasInternalDependencies = node.project.connections?.some(
|
|
19
|
+
(connection) => connection.source?.boundary === CellBounds.EastBound
|
|
20
|
+
);
|
|
21
|
+
return /* @__PURE__ */ jsxs(
|
|
22
|
+
ProjectCellNode,
|
|
23
|
+
{
|
|
24
|
+
id: node.project.id,
|
|
25
|
+
height: cellHeight,
|
|
26
|
+
borderWidth: strokeWidth,
|
|
27
|
+
isSelected: isSelected || isFocused,
|
|
28
|
+
children: [
|
|
29
|
+
generateRoundedOctagonSVG(cellHeight, 0.3),
|
|
30
|
+
isExposedToInternet && /* @__PURE__ */ jsx(
|
|
31
|
+
ProjectPortWidget,
|
|
32
|
+
{
|
|
33
|
+
port: node.getPort(`top-${node.getID()}`),
|
|
34
|
+
engine,
|
|
35
|
+
isSelected: isSelected || isFocused
|
|
36
|
+
}
|
|
37
|
+
),
|
|
38
|
+
hasExternalDependencies && /* @__PURE__ */ jsx(
|
|
39
|
+
ProjectPortWidget,
|
|
40
|
+
{
|
|
41
|
+
port: node.getPort(`bottom-${node.getID()}`),
|
|
42
|
+
engine,
|
|
43
|
+
isSelected: isSelected || isFocused
|
|
44
|
+
}
|
|
45
|
+
),
|
|
46
|
+
/* @__PURE__ */ jsx(
|
|
47
|
+
ProjectPortWidget,
|
|
48
|
+
{
|
|
49
|
+
port: node.getPort(`left-${node.getID()}`),
|
|
50
|
+
engine,
|
|
51
|
+
isSelected: isSelected || isFocused
|
|
52
|
+
}
|
|
53
|
+
),
|
|
54
|
+
hasInternalDependencies && /* @__PURE__ */ jsx(
|
|
55
|
+
ProjectPortWidget,
|
|
56
|
+
{
|
|
57
|
+
port: node.getPort(`right-${node.getID()}`),
|
|
58
|
+
engine,
|
|
59
|
+
isSelected: isSelected || isFocused
|
|
60
|
+
}
|
|
61
|
+
)
|
|
62
|
+
]
|
|
63
|
+
}
|
|
64
|
+
);
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
export { ProjectHeadWidget };
|
|
68
|
+
//# sourceMappingURL=ProjectHeadWidget.esm.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ProjectHeadWidget.esm.js","sources":["../../../../../src/components/Project/ProjectNode/ProjectHeadWidget/ProjectHeadWidget.tsx"],"sourcesContent":["import { DiagramEngine } from '@projectstorm/react-diagrams';\nimport { ProjectModel } from '../ProjectModel';\nimport { ProjectCellNode } from '../styles';\nimport { MoreVertMenuItem } from '../../../../types';\nimport { ProjectPortWidget } from '../../ProjectPort/ProjectPortWidget';\nimport { generateRoundedOctagonSVG } from '../../../Cell/CellNode/CellWidget';\nimport { CellBounds } from '../../../Cell/CellNode/CellModel';\nimport {\n CELL_LINE_MIN_WIDTH,\n COMPONENT_CIRCLE_WIDTH,\n} from '../../../../resources';\n\ninterface ServiceHeadProps {\n engine: DiagramEngine;\n node: ProjectModel;\n isSelected: boolean;\n isFocused: boolean;\n menuItems?: MoreVertMenuItem[];\n}\n\nexport function ProjectHeadWidget(props: ServiceHeadProps) {\n const { engine, node, isSelected, isFocused } = props;\n\n const cellHeight = COMPONENT_CIRCLE_WIDTH;\n const strokeWidth = CELL_LINE_MIN_WIDTH;\n const isExposedToInternet = node.project.connections?.some(\n connection => connection.source?.boundary === CellBounds.NorthBound,\n );\n const hasExternalDependencies = node.project.connections?.some(\n connection => connection.source?.boundary === CellBounds.SouthBound,\n );\n const hasInternalDependencies = node.project.connections?.some(\n connection => connection.source?.boundary === CellBounds.EastBound,\n );\n\n return (\n <ProjectCellNode\n id={node.project.id}\n height={cellHeight}\n borderWidth={strokeWidth}\n isSelected={isSelected || isFocused}\n >\n {generateRoundedOctagonSVG(cellHeight, 0.3)}\n\n {isExposedToInternet && (\n <ProjectPortWidget\n port={node.getPort(`top-${node.getID()}`)}\n engine={engine}\n isSelected={isSelected || isFocused}\n />\n )}\n {hasExternalDependencies && (\n <ProjectPortWidget\n port={node.getPort(`bottom-${node.getID()}`)}\n engine={engine}\n isSelected={isSelected || isFocused}\n />\n )}\n <ProjectPortWidget\n port={node.getPort(`left-${node.getID()}`)}\n engine={engine}\n isSelected={isSelected || isFocused}\n />\n {hasInternalDependencies && (\n <ProjectPortWidget\n port={node.getPort(`right-${node.getID()}`)}\n engine={engine}\n isSelected={isSelected || isFocused}\n />\n )}\n </ProjectCellNode>\n );\n}\n"],"names":[],"mappings":";;;;;;;AAoBO,SAAS,kBAAkB,KAAA,EAAyB;AACzD,EAAA,MAAM,EAAE,MAAA,EAAQ,IAAA,EAAM,UAAA,EAAY,WAAU,GAAI,KAAA;AAEhD,EAAA,MAAM,UAAA,GAAa,sBAAA;AACnB,EAAA,MAAM,WAAA,GAAc,mBAAA;AACpB,EAAA,MAAM,mBAAA,GAAsB,IAAA,CAAK,OAAA,CAAQ,WAAA,EAAa,IAAA;AAAA,IACpD,CAAA,UAAA,KAAc,UAAA,CAAW,MAAA,EAAQ,QAAA,KAAa,UAAA,CAAW;AAAA,GAC3D;AACA,EAAA,MAAM,uBAAA,GAA0B,IAAA,CAAK,OAAA,CAAQ,WAAA,EAAa,IAAA;AAAA,IACxD,CAAA,UAAA,KAAc,UAAA,CAAW,MAAA,EAAQ,QAAA,KAAa,UAAA,CAAW;AAAA,GAC3D;AACA,EAAA,MAAM,uBAAA,GAA0B,IAAA,CAAK,OAAA,CAAQ,WAAA,EAAa,IAAA;AAAA,IACxD,CAAA,UAAA,KAAc,UAAA,CAAW,MAAA,EAAQ,QAAA,KAAa,UAAA,CAAW;AAAA,GAC3D;AAEA,EAAA,uBACE,IAAA;AAAA,IAAC,eAAA;AAAA,IAAA;AAAA,MACC,EAAA,EAAI,KAAK,OAAA,CAAQ,EAAA;AAAA,MACjB,MAAA,EAAQ,UAAA;AAAA,MACR,WAAA,EAAa,WAAA;AAAA,MACb,YAAY,UAAA,IAAc,SAAA;AAAA,MAEzB,QAAA,EAAA;AAAA,QAAA,yBAAA,CAA0B,YAAY,GAAG,CAAA;AAAA,QAEzC,mBAAA,oBACC,GAAA;AAAA,UAAC,iBAAA;AAAA,UAAA;AAAA,YACC,MAAM,IAAA,CAAK,OAAA,CAAQ,OAAO,IAAA,CAAK,KAAA,EAAO,CAAA,CAAE,CAAA;AAAA,YACxC,MAAA;AAAA,YACA,YAAY,UAAA,IAAc;AAAA;AAAA,SAC5B;AAAA,QAED,uBAAA,oBACC,GAAA;AAAA,UAAC,iBAAA;AAAA,UAAA;AAAA,YACC,MAAM,IAAA,CAAK,OAAA,CAAQ,UAAU,IAAA,CAAK,KAAA,EAAO,CAAA,CAAE,CAAA;AAAA,YAC3C,MAAA;AAAA,YACA,YAAY,UAAA,IAAc;AAAA;AAAA,SAC5B;AAAA,wBAEF,GAAA;AAAA,UAAC,iBAAA;AAAA,UAAA;AAAA,YACC,MAAM,IAAA,CAAK,OAAA,CAAQ,QAAQ,IAAA,CAAK,KAAA,EAAO,CAAA,CAAE,CAAA;AAAA,YACzC,MAAA;AAAA,YACA,YAAY,UAAA,IAAc;AAAA;AAAA,SAC5B;AAAA,QACC,uBAAA,oBACC,GAAA;AAAA,UAAC,iBAAA;AAAA,UAAA;AAAA,YACC,MAAM,IAAA,CAAK,OAAA,CAAQ,SAAS,IAAA,CAAK,KAAA,EAAO,CAAA,CAAE,CAAA;AAAA,YAC1C,MAAA;AAAA,YACA,YAAY,UAAA,IAAc;AAAA;AAAA;AAC5B;AAAA;AAAA,GAEJ;AAEJ;;;;"}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import { PortModelAlignment } from '@projectstorm/react-diagrams';
|
|
2
|
+
import { SharedNodeModel } from '../../SharedNode/SharedNode.esm.js';
|
|
3
|
+
import { ProjectPortModel } from '../ProjectPort/ProjectPortModel.esm.js';
|
|
4
|
+
import { PROJECT_NODE } from '../../../resources/constants.esm.js';
|
|
5
|
+
import 'react/jsx-runtime';
|
|
6
|
+
import 'gsap';
|
|
7
|
+
import '@projectstorm/react-canvas-core';
|
|
8
|
+
import 'react';
|
|
9
|
+
import '@mui/material/Fade';
|
|
10
|
+
import '@mui/material/Box';
|
|
11
|
+
import '@mui/material/Tooltip';
|
|
12
|
+
import '@mui/icons-material/OpenInNewRounded';
|
|
13
|
+
import './styles.esm.js';
|
|
14
|
+
import '../ProjectPort/styles.esm.js';
|
|
15
|
+
import '../../Cell/CellNode/styles.esm.js';
|
|
16
|
+
import '../../DiagramContext/DiagramContext.esm.js';
|
|
17
|
+
import '../../../theme/ThemeContext.esm.js';
|
|
18
|
+
import '../../../theme/CellDiagramThemeProvider.esm.js';
|
|
19
|
+
import '../../SharedLink/SharedLink.esm.js';
|
|
20
|
+
import '../AdvancedLink/AdvancedLinkFactory.esm.js';
|
|
21
|
+
import '../../Component/ComponentNode/styles.esm.js';
|
|
22
|
+
import '../../MoreVertMenu/MoreVertMenu.esm.js';
|
|
23
|
+
import '../../ObservationLabel/ObservationLabel.esm.js';
|
|
24
|
+
import '../../TooltipLabel/TooltipLabel.esm.js';
|
|
25
|
+
import '@mui/material/Popper';
|
|
26
|
+
import '../../Connection/ConnectionNode/styles.esm.js';
|
|
27
|
+
import '../../Cell/EmptyNode/styles.esm.js';
|
|
28
|
+
import '../../External/ExternalNode/styles.esm.js';
|
|
29
|
+
import '@projectstorm/geometry';
|
|
30
|
+
import '../../OverlayLoader/OverlayLayerWidget.esm.js';
|
|
31
|
+
import '../../PromptScreen/PromptScreen.esm.js';
|
|
32
|
+
import '../../Header/Header.esm.js';
|
|
33
|
+
import '../../Controls/DiagramControls.esm.js';
|
|
34
|
+
import { getProjectNameById } from '../../../utils/orgUtils.esm.js';
|
|
35
|
+
import '@projectstorm/react-diagrams-core';
|
|
36
|
+
import 'dagre';
|
|
37
|
+
import 'lodash';
|
|
38
|
+
|
|
39
|
+
class ProjectModel extends SharedNodeModel {
|
|
40
|
+
project;
|
|
41
|
+
constructor(project) {
|
|
42
|
+
const name = getProjectNameById(project.id);
|
|
43
|
+
super(PROJECT_NODE, name);
|
|
44
|
+
this.project = project;
|
|
45
|
+
this.addPort(new ProjectPortModel(name, PortModelAlignment.LEFT));
|
|
46
|
+
this.addPort(new ProjectPortModel(name, PortModelAlignment.RIGHT));
|
|
47
|
+
this.addPort(new ProjectPortModel(name, PortModelAlignment.TOP));
|
|
48
|
+
this.addPort(new ProjectPortModel(name, PortModelAlignment.BOTTOM));
|
|
49
|
+
}
|
|
50
|
+
getPort(name) {
|
|
51
|
+
return this.getPorts()[name];
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
export { ProjectModel };
|
|
56
|
+
//# sourceMappingURL=ProjectModel.esm.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ProjectModel.esm.js","sources":["../../../../src/components/Project/ProjectNode/ProjectModel.ts"],"sourcesContent":["import { PortModelAlignment } from '@projectstorm/react-diagrams';\nimport { SharedNodeModel } from '../../SharedNode/SharedNode';\nimport { ProjectPortModel } from '../ProjectPort/ProjectPortModel';\nimport { Project } from '../../../types';\nimport { PROJECT_NODE } from '../../../resources';\nimport { getProjectNameById } from '../../../utils';\n\nexport class ProjectModel extends SharedNodeModel {\n readonly project: Project;\n\n constructor(project: Project) {\n const name = getProjectNameById(project.id);\n super(PROJECT_NODE, name);\n this.project = project;\n // this.setLocked(true);\n\n this.addPort(new ProjectPortModel(name, PortModelAlignment.LEFT));\n this.addPort(new ProjectPortModel(name, PortModelAlignment.RIGHT));\n\n this.addPort(new ProjectPortModel(name, PortModelAlignment.TOP));\n this.addPort(new ProjectPortModel(name, PortModelAlignment.BOTTOM));\n }\n\n getPort(name: string): ProjectPortModel {\n return this.getPorts()[name] as ProjectPortModel;\n }\n}\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAOO,MAAM,qBAAqB,eAAA,CAAgB;AAAA,EACvC,OAAA;AAAA,EAET,YAAY,OAAA,EAAkB;AAC5B,IAAA,MAAM,IAAA,GAAO,kBAAA,CAAmB,OAAA,CAAQ,EAAE,CAAA;AAC1C,IAAA,KAAA,CAAM,cAAc,IAAI,CAAA;AACxB,IAAA,IAAA,CAAK,OAAA,GAAU,OAAA;AAGf,IAAA,IAAA,CAAK,QAAQ,IAAI,gBAAA,CAAiB,IAAA,EAAM,kBAAA,CAAmB,IAAI,CAAC,CAAA;AAChE,IAAA,IAAA,CAAK,QAAQ,IAAI,gBAAA,CAAiB,IAAA,EAAM,kBAAA,CAAmB,KAAK,CAAC,CAAA;AAEjE,IAAA,IAAA,CAAK,QAAQ,IAAI,gBAAA,CAAiB,IAAA,EAAM,kBAAA,CAAmB,GAAG,CAAC,CAAA;AAC/D,IAAA,IAAA,CAAK,QAAQ,IAAI,gBAAA,CAAiB,IAAA,EAAM,kBAAA,CAAmB,MAAM,CAAC,CAAA;AAAA,EACpE;AAAA,EAEA,QAAQ,IAAA,EAAgC;AACtC,IAAA,OAAO,IAAA,CAAK,QAAA,EAAS,CAAE,IAAI,CAAA;AAAA,EAC7B;AACF;;;;"}
|
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
import { jsx, Fragment, jsxs } from 'react/jsx-runtime';
|
|
2
|
+
import { useContext, useState, useRef, useEffect } from 'react';
|
|
3
|
+
import Fade from '@mui/material/Fade';
|
|
4
|
+
import Box from '@mui/material/Box';
|
|
5
|
+
import Tooltip from '@mui/material/Tooltip';
|
|
6
|
+
import OpenInNewRoundedIcon from '@mui/icons-material/OpenInNewRounded';
|
|
7
|
+
import { ProjectHeadWidget } from './ProjectHeadWidget/ProjectHeadWidget.esm.js';
|
|
8
|
+
import { ProjectNode, ProjectName } from './styles.esm.js';
|
|
9
|
+
import { DiagramContext } from '../../DiagramContext/DiagramContext.esm.js';
|
|
10
|
+
import { useColors } from '../../../theme/ThemeContext.esm.js';
|
|
11
|
+
import '../../../theme/CellDiagramThemeProvider.esm.js';
|
|
12
|
+
|
|
13
|
+
function ProjectWidget(props) {
|
|
14
|
+
const { node, engine } = props;
|
|
15
|
+
const colors = useColors();
|
|
16
|
+
const {
|
|
17
|
+
selectedNodeId,
|
|
18
|
+
focusedNodeId,
|
|
19
|
+
componentMenu,
|
|
20
|
+
onComponentDoubleClick
|
|
21
|
+
} = useContext(DiagramContext);
|
|
22
|
+
const [isHovered, setIsHovered] = useState(false);
|
|
23
|
+
const headPorts = useRef([]);
|
|
24
|
+
const displayName = node.project.name;
|
|
25
|
+
useEffect(() => {
|
|
26
|
+
headPorts.current.push(node.getPortFromID(`right-${node.getID()}`));
|
|
27
|
+
}, [node]);
|
|
28
|
+
const handleOnHover = (task) => {
|
|
29
|
+
setIsHovered(task === "SELECT" ? true : false);
|
|
30
|
+
node.handleHover(headPorts.current, task);
|
|
31
|
+
};
|
|
32
|
+
const handleOnWidgetDoubleClick = () => {
|
|
33
|
+
if (onComponentDoubleClick) {
|
|
34
|
+
onComponentDoubleClick(node.project.id);
|
|
35
|
+
}
|
|
36
|
+
};
|
|
37
|
+
const handleMouseEnter = () => {
|
|
38
|
+
setIsHovered(true);
|
|
39
|
+
handleOnHover("SELECT");
|
|
40
|
+
};
|
|
41
|
+
const handleMouseLeave = () => {
|
|
42
|
+
setIsHovered(false);
|
|
43
|
+
handleOnHover("UNSELECT");
|
|
44
|
+
};
|
|
45
|
+
const handleOnContextMenu = (event) => {
|
|
46
|
+
event.preventDefault();
|
|
47
|
+
event.stopPropagation();
|
|
48
|
+
};
|
|
49
|
+
return /* @__PURE__ */ jsx(Fragment, { children: /* @__PURE__ */ jsxs(
|
|
50
|
+
ProjectNode,
|
|
51
|
+
{
|
|
52
|
+
isSelected: node.getID() === selectedNodeId,
|
|
53
|
+
isFocused: node.getID() === focusedNodeId,
|
|
54
|
+
onMouseOver: handleMouseEnter,
|
|
55
|
+
onMouseLeave: handleMouseLeave,
|
|
56
|
+
onDoubleClick: handleOnWidgetDoubleClick,
|
|
57
|
+
onContextMenu: handleOnContextMenu,
|
|
58
|
+
children: [
|
|
59
|
+
/* @__PURE__ */ jsx(
|
|
60
|
+
ProjectHeadWidget,
|
|
61
|
+
{
|
|
62
|
+
engine,
|
|
63
|
+
node,
|
|
64
|
+
isSelected: node.getID() === selectedNodeId,
|
|
65
|
+
isFocused: node.getID() === focusedNodeId || isHovered,
|
|
66
|
+
menuItems: componentMenu
|
|
67
|
+
}
|
|
68
|
+
),
|
|
69
|
+
/* @__PURE__ */ jsx(
|
|
70
|
+
Tooltip,
|
|
71
|
+
{
|
|
72
|
+
title: displayName,
|
|
73
|
+
placement: "bottom",
|
|
74
|
+
enterNextDelay: 500,
|
|
75
|
+
arrow: true,
|
|
76
|
+
children: /* @__PURE__ */ jsx(ProjectName, { children: displayName })
|
|
77
|
+
}
|
|
78
|
+
),
|
|
79
|
+
/* @__PURE__ */ jsx(
|
|
80
|
+
Box,
|
|
81
|
+
{
|
|
82
|
+
sx: {
|
|
83
|
+
position: "absolute",
|
|
84
|
+
top: "26px",
|
|
85
|
+
padding: "8px",
|
|
86
|
+
cursor: "pointer"
|
|
87
|
+
},
|
|
88
|
+
onClick: handleOnWidgetDoubleClick,
|
|
89
|
+
children: /* @__PURE__ */ jsx(Fade, { in: isHovered, timeout: 350, children: /* @__PURE__ */ jsx(
|
|
90
|
+
Tooltip,
|
|
91
|
+
{
|
|
92
|
+
title: "View Project",
|
|
93
|
+
placement: "bottom",
|
|
94
|
+
enterNextDelay: 1e3,
|
|
95
|
+
children: /* @__PURE__ */ jsx(
|
|
96
|
+
OpenInNewRoundedIcon,
|
|
97
|
+
{
|
|
98
|
+
sx: { color: colors.OUTLINE_VARIANT, fontSize: 20 }
|
|
99
|
+
}
|
|
100
|
+
)
|
|
101
|
+
}
|
|
102
|
+
) })
|
|
103
|
+
}
|
|
104
|
+
)
|
|
105
|
+
]
|
|
106
|
+
}
|
|
107
|
+
) });
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
export { ProjectWidget };
|
|
111
|
+
//# sourceMappingURL=ProjectWidget.esm.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ProjectWidget.esm.js","sources":["../../../../src/components/Project/ProjectNode/ProjectWidget.tsx"],"sourcesContent":["import { MouseEvent, useContext, useEffect, useRef, useState } from 'react';\nimport Fade from '@mui/material/Fade';\nimport Box from '@mui/material/Box';\nimport Tooltip from '@mui/material/Tooltip';\nimport OpenInNewRoundedIcon from '@mui/icons-material/OpenInNewRounded';\nimport { DiagramEngine, PortModel } from '@projectstorm/react-diagrams';\nimport { ProjectModel } from './ProjectModel';\nimport { ProjectHeadWidget } from './ProjectHeadWidget/ProjectHeadWidget';\nimport { ProjectName, ProjectNode } from './styles';\nimport { DiagramContext } from '../../DiagramContext/DiagramContext';\nimport { useColors } from '../../../theme';\n\ninterface ProjectWidgetProps {\n node: ProjectModel;\n engine: DiagramEngine;\n}\n\nexport function ProjectWidget(props: ProjectWidgetProps) {\n const { node, engine } = props;\n const colors = useColors();\n const {\n selectedNodeId,\n focusedNodeId,\n componentMenu,\n onComponentDoubleClick,\n } = useContext(DiagramContext);\n const [isHovered, setIsHovered] = useState<boolean>(false);\n const headPorts = useRef<PortModel[]>([]);\n\n const displayName: string = node.project.name;\n\n useEffect(() => {\n headPorts.current.push(node.getPortFromID(`right-${node.getID()}`)!);\n }, [node]);\n\n const handleOnHover = (task: string) => {\n setIsHovered(task === 'SELECT' ? true : false);\n node.handleHover(headPorts.current, task);\n };\n\n const handleOnWidgetDoubleClick = () => {\n if (onComponentDoubleClick) {\n onComponentDoubleClick(node.project.id);\n }\n };\n\n const handleMouseEnter = () => {\n setIsHovered(true);\n handleOnHover('SELECT');\n };\n\n const handleMouseLeave = () => {\n setIsHovered(false);\n handleOnHover('UNSELECT');\n };\n\n const handleOnContextMenu = (event: MouseEvent<HTMLDivElement>) => {\n event.preventDefault();\n event.stopPropagation();\n };\n\n return (\n <>\n <ProjectNode\n isSelected={node.getID() === selectedNodeId}\n isFocused={node.getID() === focusedNodeId}\n onMouseOver={handleMouseEnter}\n onMouseLeave={handleMouseLeave}\n onDoubleClick={handleOnWidgetDoubleClick}\n onContextMenu={handleOnContextMenu}\n >\n <ProjectHeadWidget\n engine={engine}\n node={node}\n isSelected={node.getID() === selectedNodeId}\n isFocused={node.getID() === focusedNodeId || isHovered}\n menuItems={componentMenu}\n />\n <Tooltip\n title={displayName}\n placement=\"bottom\"\n enterNextDelay={500}\n arrow\n >\n <ProjectName>{displayName}</ProjectName>\n </Tooltip>\n\n <Box\n sx={{\n position: 'absolute',\n top: '26px',\n padding: '8px',\n cursor: 'pointer',\n }}\n onClick={handleOnWidgetDoubleClick}\n >\n <Fade in={isHovered} timeout={350}>\n <Tooltip\n title=\"View Project\"\n placement=\"bottom\"\n enterNextDelay={1000}\n >\n <OpenInNewRoundedIcon\n sx={{ color: colors.OUTLINE_VARIANT, fontSize: 20 }}\n />\n </Tooltip>\n </Fade>\n </Box>\n </ProjectNode>\n </>\n );\n}\n"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
import styled from '@emotion/styled';
|
|
2
|
+
import { LABEL_FONT_SIZE, LABEL_MAX_WIDTH } from '../../../resources/constants.esm.js';
|
|
3
|
+
import 'react/jsx-runtime';
|
|
4
|
+
|
|
5
|
+
const ProjectNode = styled.div`
|
|
6
|
+
color: ${({ theme }) => theme.colors.ON_SURFACE_VARIANT};
|
|
7
|
+
display: flex;
|
|
8
|
+
flex-direction: column;
|
|
9
|
+
justify-content: center;
|
|
10
|
+
align-items: center;
|
|
11
|
+
gap: 10px;
|
|
12
|
+
padding: 2px;
|
|
13
|
+
pointer-events: all;
|
|
14
|
+
&:active {
|
|
15
|
+
cursor: grabbing;
|
|
16
|
+
}
|
|
17
|
+
`;
|
|
18
|
+
const ProjectCellNode = styled.div`
|
|
19
|
+
width: ${(props) => props.height}px;
|
|
20
|
+
height: ${(props) => props.height}px;
|
|
21
|
+
|
|
22
|
+
display: flex;
|
|
23
|
+
flex-direction: column;
|
|
24
|
+
align-items: center;
|
|
25
|
+
justify-content: center;
|
|
26
|
+
|
|
27
|
+
text-align: center;
|
|
28
|
+
position: relative;
|
|
29
|
+
overflow: visible;
|
|
30
|
+
pointer-events: none;
|
|
31
|
+
|
|
32
|
+
#mainCell svg {
|
|
33
|
+
width: 100%;
|
|
34
|
+
height: 100%;
|
|
35
|
+
position: absolute;
|
|
36
|
+
top: 0;
|
|
37
|
+
left: 0;
|
|
38
|
+
pointer-events: none;
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
#mainCell path {
|
|
42
|
+
stroke: ${({ theme, isSelected }) => isSelected ? theme.colors.SECONDARY : theme.colors.ON_SURFACE};
|
|
43
|
+
stroke-width: ${(props) => props.borderWidth};
|
|
44
|
+
fill: ${({ theme, isSelected }) => isSelected ? theme.colors.SECONDARY_CONTAINER : theme.colors.SURFACE};
|
|
45
|
+
pointer-events: none;
|
|
46
|
+
}
|
|
47
|
+
`;
|
|
48
|
+
const ProjectName = styled.span`
|
|
49
|
+
font-size: ${LABEL_FONT_SIZE}px;
|
|
50
|
+
white-space: nowrap;
|
|
51
|
+
overflow: hidden;
|
|
52
|
+
text-overflow: ellipsis;
|
|
53
|
+
text-align: center;
|
|
54
|
+
/* max-width: ${LABEL_MAX_WIDTH}px; */
|
|
55
|
+
&:hover {
|
|
56
|
+
color: ${({ theme, isClickable }) => isClickable ? theme.colors.PRIMARY_HOVER : ``};
|
|
57
|
+
text-decoration: ${(props) => props.isClickable ? `underline` : ``};
|
|
58
|
+
}
|
|
59
|
+
`;
|
|
60
|
+
styled.div`
|
|
61
|
+
position: absolute;
|
|
62
|
+
top: 0;
|
|
63
|
+
`;
|
|
64
|
+
|
|
65
|
+
export { ProjectCellNode, ProjectName, ProjectNode };
|
|
66
|
+
//# sourceMappingURL=styles.esm.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"styles.esm.js","sources":["../../../../src/components/Project/ProjectNode/styles.ts"],"sourcesContent":["import styled from '@emotion/styled';\nimport { LABEL_FONT_SIZE, LABEL_MAX_WIDTH } from '../../../resources';\n\nexport const ProjectNode = styled.div<any>`\n color: ${({ theme }) => theme.colors.ON_SURFACE_VARIANT};\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n gap: 10px;\n padding: 2px;\n pointer-events: all;\n &:active {\n cursor: grabbing;\n }\n`;\n\ninterface ProjectNodeStyleProps {\n id: string;\n height: number;\n borderWidth: number;\n isSelected?: boolean;\n}\n\nexport const ProjectCellNode = styled.div<ProjectNodeStyleProps>`\n width: ${(props: ProjectNodeStyleProps) => props.height}px;\n height: ${(props: ProjectNodeStyleProps) => props.height}px;\n\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n\n text-align: center;\n position: relative;\n overflow: visible;\n pointer-events: none;\n\n #mainCell svg {\n width: 100%;\n height: 100%;\n position: absolute;\n top: 0;\n left: 0;\n pointer-events: none;\n }\n\n #mainCell path {\n stroke: ${({ theme, isSelected }) =>\n isSelected ? theme.colors.SECONDARY : theme.colors.ON_SURFACE};\n stroke-width: ${(props: ProjectNodeStyleProps) => props.borderWidth};\n fill: ${({ theme, isSelected }) =>\n isSelected ? theme.colors.SECONDARY_CONTAINER : theme.colors.SURFACE};\n pointer-events: none;\n }\n`;\n\nexport const ProjectName: React.FC<any> = styled.span`\n font-size: ${LABEL_FONT_SIZE}px;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n text-align: center;\n /* max-width: ${LABEL_MAX_WIDTH}px; */\n &:hover {\n color: ${({ theme, isClickable }: { theme: any; isClickable?: boolean }) =>\n isClickable ? theme.colors.PRIMARY_HOVER : ``};\n text-decoration: ${(props: { isClickable?: boolean }) =>\n props.isClickable ? `underline` : ``};\n }\n`;\n\nexport const TopArrowContainer = styled.div`\n position: absolute;\n top: 0;\n`;\n"],"names":[],"mappings":";;;;AAGO,MAAM,cAAc,MAAA,CAAO,GAAA;AAAA,SAAA,EACvB,CAAC,EAAE,KAAA,EAAM,KAAM,KAAA,CAAM,OAAO,kBAAkB,CAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAoBlD,MAAM,kBAAkB,MAAA,CAAO,GAAA;AAAA,SAAA,EAC3B,CAAC,KAAA,KAAiC,KAAA,CAAM,MAAM,CAAA;AAAA,UAAA,EAC7C,CAAC,KAAA,KAAiC,KAAA,CAAM,MAAM,CAAA;;AAAA;AAAA;AAAA;AAAA;;AAAA;AAAA;AAAA;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;AAAA;AAAA,YAAA,EAsB5C,CAAC,EAAE,KAAA,EAAO,UAAA,EAAW,KAC7B,UAAA,GAAa,KAAA,CAAM,MAAA,CAAO,SAAA,GAAY,KAAA,CAAM,MAAA,CAAO,UAAU,CAAA;AAAA,kBAAA,EAC/C,CAAC,KAAA,KAAiC,KAAA,CAAM,WAAW,CAAA;AAAA,UAAA,EAC3D,CAAC,EAAE,KAAA,EAAO,UAAA,EAAW,KAC3B,UAAA,GAAa,KAAA,CAAM,MAAA,CAAO,mBAAA,GAAsB,KAAA,CAAM,MAAA,CAAO,OAAO,CAAA;AAAA;AAAA;AAAA;AAKnE,MAAM,cAA6B,MAAA,CAAO,IAAA;AAAA,aAAA,EAClC,eAAe,CAAA;AAAA;AAAA;AAAA;AAAA;AAAA,gBAAA,EAKZ,eAAe,CAAA;AAAA;AAAA,WAAA,EAEpB,CAAC,EAAE,KAAA,EAAO,WAAA,OACjB,WAAA,GAAc,KAAA,CAAM,MAAA,CAAO,aAAA,GAAgB,CAAA,CAAE,CAAA;AAAA,qBAAA,EAC5B,CAAC,KAAA,KAClB,KAAA,CAAM,WAAA,GAAc,cAAc,CAAA,CAAE,CAAA;AAAA;AAAA;AAIT,MAAA,CAAO,GAAA;AAAA;AAAA;AAAA;;;;"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { AbstractModelFactory } from '@projectstorm/react-canvas-core';
|
|
2
|
+
import { ProjectPortModel } from './ProjectPortModel.esm.js';
|
|
3
|
+
|
|
4
|
+
class ProjectPortFactory extends AbstractModelFactory {
|
|
5
|
+
constructor() {
|
|
6
|
+
super("projectPort");
|
|
7
|
+
}
|
|
8
|
+
generateModel(event) {
|
|
9
|
+
return new ProjectPortModel(
|
|
10
|
+
event.initialConfig.id,
|
|
11
|
+
event.initialConfig.portType
|
|
12
|
+
);
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
export { ProjectPortFactory };
|
|
17
|
+
//# sourceMappingURL=ProjectPortFactory.esm.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ProjectPortFactory.esm.js","sources":["../../../../src/components/Project/ProjectPort/ProjectPortFactory.tsx"],"sourcesContent":["import { DiagramEngine, PortModel } from '@projectstorm/react-diagrams';\nimport { AbstractModelFactory } from '@projectstorm/react-canvas-core';\nimport { ProjectPortModel } from './ProjectPortModel';\n\nexport class ProjectPortFactory extends AbstractModelFactory<\n PortModel,\n DiagramEngine\n> {\n constructor() {\n super('projectPort');\n }\n\n generateModel(event: { initialConfig: any }): ProjectPortModel {\n return new ProjectPortModel(\n event.initialConfig.id,\n event.initialConfig.portType,\n );\n }\n}\n"],"names":[],"mappings":";;;AAIO,MAAM,2BAA2B,oBAAA,CAGtC;AAAA,EACA,WAAA,GAAc;AACZ,IAAA,KAAA,CAAM,aAAa,CAAA;AAAA,EACrB;AAAA,EAEA,cAAc,KAAA,EAAiD;AAC7D,IAAA,OAAO,IAAI,gBAAA;AAAA,MACT,MAAM,aAAA,CAAc,EAAA;AAAA,MACpB,MAAM,aAAA,CAAc;AAAA,KACtB;AAAA,EACF;AACF;;;;"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { DefaultPortModel } from '@projectstorm/react-diagrams';
|
|
2
|
+
|
|
3
|
+
class ProjectPortModel extends DefaultPortModel {
|
|
4
|
+
constructor(id, portType) {
|
|
5
|
+
super({
|
|
6
|
+
type: "projectPort",
|
|
7
|
+
name: `${portType}-${id}`,
|
|
8
|
+
id: `${portType}-${id}`,
|
|
9
|
+
alignment: portType
|
|
10
|
+
});
|
|
11
|
+
}
|
|
12
|
+
isLocked() {
|
|
13
|
+
return true;
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
export { ProjectPortModel };
|
|
18
|
+
//# sourceMappingURL=ProjectPortModel.esm.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ProjectPortModel.esm.js","sources":["../../../../src/components/Project/ProjectPort/ProjectPortModel.ts"],"sourcesContent":["import {\n DefaultPortModel,\n PortModelAlignment,\n} from '@projectstorm/react-diagrams';\n\nexport class ProjectPortModel extends DefaultPortModel {\n constructor(id: string, portType: PortModelAlignment) {\n super({\n type: 'projectPort',\n name: `${portType}-${id}`,\n id: `${portType}-${id}`,\n alignment: portType,\n });\n }\n\n isLocked(): boolean {\n return true;\n }\n}\n"],"names":[],"mappings":";;AAKO,MAAM,yBAAyB,gBAAA,CAAiB;AAAA,EACrD,WAAA,CAAY,IAAY,QAAA,EAA8B;AACpD,IAAA,KAAA,CAAM;AAAA,MACJ,IAAA,EAAM,aAAA;AAAA,MACN,IAAA,EAAM,CAAA,EAAG,QAAQ,CAAA,CAAA,EAAI,EAAE,CAAA,CAAA;AAAA,MACvB,EAAA,EAAI,CAAA,EAAG,QAAQ,CAAA,CAAA,EAAI,EAAE,CAAA,CAAA;AAAA,MACrB,SAAA,EAAW;AAAA,KACZ,CAAA;AAAA,EACH;AAAA,EAEA,QAAA,GAAoB;AAClB,IAAA,OAAO,IAAA;AAAA,EACT;AACF;;;;"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { jsx } from 'react/jsx-runtime';
|
|
2
|
+
import { PortModelAlignment, PortWidget } from '@projectstorm/react-diagrams';
|
|
3
|
+
import { PortNode, BottomPortNode, TopPortNode, RightPortNode, LeftPortNode } from './styles.esm.js';
|
|
4
|
+
|
|
5
|
+
function ProjectPortWidget(props) {
|
|
6
|
+
const { port, engine, isSelected } = props;
|
|
7
|
+
let DynamicPotNode = PortNode;
|
|
8
|
+
switch (port.getOptions().alignment) {
|
|
9
|
+
case PortModelAlignment.LEFT:
|
|
10
|
+
DynamicPotNode = LeftPortNode;
|
|
11
|
+
break;
|
|
12
|
+
case PortModelAlignment.RIGHT:
|
|
13
|
+
DynamicPotNode = RightPortNode;
|
|
14
|
+
break;
|
|
15
|
+
case PortModelAlignment.TOP:
|
|
16
|
+
DynamicPotNode = TopPortNode;
|
|
17
|
+
break;
|
|
18
|
+
case PortModelAlignment.BOTTOM:
|
|
19
|
+
DynamicPotNode = BottomPortNode;
|
|
20
|
+
break;
|
|
21
|
+
}
|
|
22
|
+
return /* @__PURE__ */ jsx(DynamicPotNode, { isSelected, children: /* @__PURE__ */ jsx(PortWidget, { engine, port }) });
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
export { ProjectPortWidget };
|
|
26
|
+
//# sourceMappingURL=ProjectPortWidget.esm.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ProjectPortWidget.esm.js","sources":["../../../../src/components/Project/ProjectPort/ProjectPortWidget.tsx"],"sourcesContent":["import {\n DiagramEngine,\n PortModelAlignment,\n PortWidget,\n} from '@projectstorm/react-diagrams';\nimport { ProjectPortModel } from './ProjectPortModel';\nimport {\n BottomPortNode,\n LeftPortNode,\n PortNode,\n RightPortNode,\n TopPortNode,\n} from './styles';\n\ninterface CustomPortProps {\n port: ProjectPortModel;\n engine: DiagramEngine;\n isSelected: boolean;\n}\n\nexport function ProjectPortWidget(props: CustomPortProps) {\n const { port, engine, isSelected } = props;\n\n let DynamicPotNode = PortNode;\n\n switch (port.getOptions().alignment) {\n case PortModelAlignment.LEFT:\n DynamicPotNode = LeftPortNode;\n break;\n case PortModelAlignment.RIGHT:\n DynamicPotNode = RightPortNode;\n break;\n case PortModelAlignment.TOP:\n DynamicPotNode = TopPortNode;\n break;\n case PortModelAlignment.BOTTOM:\n DynamicPotNode = BottomPortNode;\n break;\n default:\n break;\n }\n\n return (\n <DynamicPotNode isSelected={isSelected}>\n <PortWidget engine={engine} port={port} />\n </DynamicPotNode>\n );\n}\n"],"names":[],"mappings":";;;;AAoBO,SAAS,kBAAkB,KAAA,EAAwB;AACxD,EAAA,MAAM,EAAE,IAAA,EAAM,MAAA,EAAQ,UAAA,EAAW,GAAI,KAAA;AAErC,EAAA,IAAI,cAAA,GAAiB,QAAA;AAErB,EAAA,QAAQ,IAAA,CAAK,UAAA,EAAW,CAAE,SAAA;AAAW,IACnC,KAAK,kBAAA,CAAmB,IAAA;AACtB,MAAA,cAAA,GAAiB,YAAA;AACjB,MAAA;AAAA,IACF,KAAK,kBAAA,CAAmB,KAAA;AACtB,MAAA,cAAA,GAAiB,aAAA;AACjB,MAAA;AAAA,IACF,KAAK,kBAAA,CAAmB,GAAA;AACtB,MAAA,cAAA,GAAiB,WAAA;AACjB,MAAA;AAAA,IACF,KAAK,kBAAA,CAAmB,MAAA;AACtB,MAAA,cAAA,GAAiB,cAAA;AACjB,MAAA;AAEA;AAGJ,EAAA,2BACG,cAAA,EAAA,EAAe,UAAA,EACd,8BAAC,UAAA,EAAA,EAAW,MAAA,EAAgB,MAAY,CAAA,EAC1C,CAAA;AAEJ;;;;"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import styled from '@emotion/styled';
|
|
2
|
+
|
|
3
|
+
const PortNode = styled.div`
|
|
4
|
+
position: absolute;
|
|
5
|
+
display: flex;
|
|
6
|
+
justify-content: center;
|
|
7
|
+
align-items: center;
|
|
8
|
+
height: 10px;
|
|
9
|
+
width: 10px;
|
|
10
|
+
background-color: ${({ theme, isSelected }) => isSelected ? theme.colors.SECONDARY_CONTAINER : theme.colors.SURFACE_DIM};
|
|
11
|
+
border: 2px solid
|
|
12
|
+
${({ theme, isSelected }) => isSelected ? theme.colors.OUTLINE_VARIANT : theme.colors.OUTLINE};
|
|
13
|
+
border-radius: 50%;
|
|
14
|
+
margin: -6px 0;
|
|
15
|
+
`;
|
|
16
|
+
const TopPortNode = styled(PortNode)`
|
|
17
|
+
top: 0;
|
|
18
|
+
margin: -6px 0;
|
|
19
|
+
align-items: flex-start;
|
|
20
|
+
`;
|
|
21
|
+
const BottomPortNode = styled(PortNode)`
|
|
22
|
+
bottom: 0;
|
|
23
|
+
margin: -6px 0;
|
|
24
|
+
align-items: flex-end;
|
|
25
|
+
`;
|
|
26
|
+
const LeftPortNode = styled(PortNode)`
|
|
27
|
+
left: 0;
|
|
28
|
+
margin: 0 -6px;
|
|
29
|
+
justify-content: flex-start;
|
|
30
|
+
`;
|
|
31
|
+
const RightPortNode = styled(PortNode)`
|
|
32
|
+
right: 0;
|
|
33
|
+
margin: 0 -6px;
|
|
34
|
+
justify-content: flex-end;
|
|
35
|
+
`;
|
|
36
|
+
|
|
37
|
+
export { BottomPortNode, LeftPortNode, PortNode, RightPortNode, TopPortNode };
|
|
38
|
+
//# sourceMappingURL=styles.esm.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"styles.esm.js","sources":["../../../../src/components/Project/ProjectPort/styles.ts"],"sourcesContent":["import styled from '@emotion/styled';\n\ninterface PortNodeStyleProps {\n isSelected: boolean;\n}\nexport const PortNode = styled.div<PortNodeStyleProps>`\n position: absolute;\n display: flex;\n justify-content: center;\n align-items: center;\n height: 10px;\n width: 10px;\n background-color: ${({ theme, isSelected }) =>\n isSelected ? theme.colors.SECONDARY_CONTAINER : theme.colors.SURFACE_DIM};\n border: 2px solid\n ${({ theme, isSelected }) =>\n isSelected ? theme.colors.OUTLINE_VARIANT : theme.colors.OUTLINE};\n border-radius: 50%;\n margin: -6px 0;\n`;\n\nexport const TopPortNode = styled(PortNode)<PortNodeStyleProps>`\n top: 0;\n margin: -6px 0;\n align-items: flex-start;\n`;\n\nexport const BottomPortNode = styled(PortNode)<PortNodeStyleProps>`\n bottom: 0;\n margin: -6px 0;\n align-items: flex-end;\n`;\n\nexport const LeftPortNode = styled(PortNode)<PortNodeStyleProps>`\n left: 0;\n margin: 0 -6px;\n justify-content: flex-start;\n`;\n\nexport const RightPortNode = styled(PortNode)<PortNodeStyleProps>`\n right: 0;\n margin: 0 -6px;\n justify-content: flex-end;\n`;\n"],"names":[],"mappings":";;AAKO,MAAM,WAAW,MAAA,CAAO,GAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,oBAAA,EAOT,CAAC,EAAE,KAAA,EAAO,UAAA,EAAW,KACvC,UAAA,GAAa,KAAA,CAAM,MAAA,CAAO,mBAAA,GAAsB,KAAA,CAAM,MAAA,CAAO,WAAW,CAAA;AAAA;AAAA,IAAA,EAEtE,CAAC,EAAE,KAAA,EAAO,UAAA,EAAW,KACrB,UAAA,GAAa,KAAA,CAAM,MAAA,CAAO,eAAA,GAAkB,KAAA,CAAM,MAAA,CAAO,OAAO,CAAA;AAAA;AAAA;AAAA;AAK/D,MAAM,WAAA,GAAc,OAAO,QAAQ,CAAA;AAAA;AAAA;AAAA;AAAA;AAMnC,MAAM,cAAA,GAAiB,OAAO,QAAQ,CAAA;AAAA;AAAA;AAAA;AAAA;AAMtC,MAAM,YAAA,GAAe,OAAO,QAAQ,CAAA;AAAA;AAAA;AAAA;AAAA;AAMpC,MAAM,aAAA,GAAgB,OAAO,QAAQ,CAAA;AAAA;AAAA;AAAA;AAAA;;;;"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { jsx } from 'react/jsx-runtime';
|
|
2
|
+
import styled from '@emotion/styled';
|
|
3
|
+
|
|
4
|
+
const Container = styled.div`
|
|
5
|
+
display: flex;
|
|
6
|
+
align-items: center;
|
|
7
|
+
flex-direction: row;
|
|
8
|
+
justify-content: center;
|
|
9
|
+
height: 100%;
|
|
10
|
+
width: 100%;
|
|
11
|
+
background-image: radial-gradient(
|
|
12
|
+
${({ theme }) => theme.colors.SURFACE_CONTAINER} 10%,
|
|
13
|
+
transparent 0px
|
|
14
|
+
);
|
|
15
|
+
background-size: 16px 16px;
|
|
16
|
+
background-color: ${({ theme }) => theme.colors.SURFACE_BRIGHT};
|
|
17
|
+
`;
|
|
18
|
+
const MassageBox = styled.h3`
|
|
19
|
+
color: ${({ theme }) => theme.colors.ON_SURFACE_VARIANT};
|
|
20
|
+
font-family: GilmerRegular;
|
|
21
|
+
font-size: 16px;
|
|
22
|
+
padding: 10px;
|
|
23
|
+
`;
|
|
24
|
+
function PromptScreen(props) {
|
|
25
|
+
const { userMessage } = props;
|
|
26
|
+
return /* @__PURE__ */ jsx(Container, { children: /* @__PURE__ */ jsx(MassageBox, { children: userMessage }) });
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
export { PromptScreen };
|
|
30
|
+
//# sourceMappingURL=PromptScreen.esm.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PromptScreen.esm.js","sources":["../../../src/components/PromptScreen/PromptScreen.tsx"],"sourcesContent":["import styled from '@emotion/styled';\n\nconst Container = styled.div`\n display: flex;\n align-items: center;\n flex-direction: row;\n justify-content: center;\n height: 100%;\n width: 100%;\n background-image: radial-gradient(\n ${({ theme }) => theme.colors.SURFACE_CONTAINER} 10%,\n transparent 0px\n );\n background-size: 16px 16px;\n background-color: ${({ theme }) => theme.colors.SURFACE_BRIGHT};\n`;\n\nconst MassageBox = styled.h3`\n color: ${({ theme }) => theme.colors.ON_SURFACE_VARIANT};\n font-family: GilmerRegular;\n font-size: 16px;\n padding: 10px;\n`;\n\nexport interface PromptScreenProps {\n userMessage: string;\n}\n\nexport function PromptScreen(props: PromptScreenProps) {\n const { userMessage } = props;\n\n return (\n <Container>\n <MassageBox>{userMessage}</MassageBox>\n </Container>\n );\n}\n"],"names":[],"mappings":";;;AAEA,MAAM,YAAY,MAAA,CAAO,GAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAAA,EAQnB,CAAC,EAAE,KAAA,EAAM,KAAM,KAAA,CAAM,OAAO,iBAAiB,CAAA;AAAA;AAAA;AAAA;AAAA,oBAAA,EAI7B,CAAC,EAAE,KAAA,EAAM,KAAM,KAAA,CAAM,OAAO,cAAc,CAAA;AAAA,CAAA;AAGhE,MAAM,aAAa,MAAA,CAAO,EAAA;AAAA,SAAA,EACf,CAAC,EAAE,KAAA,EAAM,KAAM,KAAA,CAAM,OAAO,kBAAkB,CAAA;AAAA;AAAA;AAAA;AAAA,CAAA;AAUlD,SAAS,aAAa,KAAA,EAA0B;AACrD,EAAA,MAAM,EAAE,aAAY,GAAI,KAAA;AAExB,EAAA,uBACE,GAAA,CAAC,SAAA,EAAA,EACC,QAAA,kBAAA,GAAA,CAAC,UAAA,EAAA,EAAY,uBAAY,CAAA,EAC3B,CAAA;AAEJ;;;;"}
|