From 1c78928e3b4bc048de656ff51593b732dd2bf18d Mon Sep 17 00:00:00 2001
From: Marc Chen <570171025@qq.com>
Date: Sun, 4 Aug 2024 00:18:53 +0800
Subject: [PATCH 01/12] optimize connection experience
---
.../reactflow-node/reactflow-node-slot.tsx | 7 ++-
.../reactflow-node.style.module.scss | 58 +++++++++++++++++++
.../workflow-editor.style.module.scss | 45 --------------
3 files changed, 62 insertions(+), 48 deletions(-)
diff --git a/apps/electron-frontend/src/components/workflow-editor/reactflow-node/reactflow-node-slot.tsx b/apps/electron-frontend/src/components/workflow-editor/reactflow-node/reactflow-node-slot.tsx
index b02958d0..2635c3d2 100644
--- a/apps/electron-frontend/src/components/workflow-editor/reactflow-node/reactflow-node-slot.tsx
+++ b/apps/electron-frontend/src/components/workflow-editor/reactflow-node/reactflow-node-slot.tsx
@@ -65,17 +65,18 @@ export function Slot({ id, label, type, position, valueType, widget, node_id }:
let transformFactor = 1;
const [hover, setHover] = useState(false);
if (hover && !isConnecting) {
- transformFactor = Math.max(1, (1 / transform)) * 3.2;
+ transformFactor = Math.max(1, (1 / transform)) * 1.8;
}
if (isConnecting && connectingMe) {
- transformFactor = Math.max(1, (1 / transform)) * 3.2;
+ transformFactor = Math.max(1, (1 / transform)) * 1.8;
};
const slotLabel = useSlotLabel({ node_id, valueType, type, label });
+ const scaleMode = (isConnecting && connectingMe) || (hover && !isConnecting);
return (
-
{widget.name}
+
+ {extension && (
+ <>
+
+ From {extension.title}
+
+
+ By {extension.author}
+
+ >
+ )}
From ad7d9e808aac1fd70523c671b94edf87208c4933 Mon Sep 17 00:00:00 2001
From: Marc Chen <570171025@qq.com>
Date: Tue, 6 Aug 2024 13:26:42 +0800
Subject: [PATCH 05/12] bugfix
---
.../electron-frontend/src/components/bootstrap/setup-config.tsx | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/apps/electron-frontend/src/components/bootstrap/setup-config.tsx b/apps/electron-frontend/src/components/bootstrap/setup-config.tsx
index 3816a6aa..bfae9d44 100644
--- a/apps/electron-frontend/src/components/bootstrap/setup-config.tsx
+++ b/apps/electron-frontend/src/components/bootstrap/setup-config.tsx
@@ -113,7 +113,7 @@ export function SetupConfig() {
track('bootstrap-setup-config-success-without-comfyui-installed');
}
- if (pythonPath.trim() !== "") {
+ if (installedComfyUI && pythonPath.trim() !== "") {
bootstrapTasks.forEach(task => {
const skipTasks = [
BootStrapTaskType.installPython,
From 02f33a9dcbfb3979d5b2a37fe695c06e80181b49 Mon Sep 17 00:00:00 2001
From: Marc Chen <570171025@qq.com>
Date: Tue, 6 Aug 2024 13:35:34 +0800
Subject: [PATCH 06/12] bugfix conda
---
apps/node/src/modules/utils/conda.ts | 7 +++++++
1 file changed, 7 insertions(+)
diff --git a/apps/node/src/modules/utils/conda.ts b/apps/node/src/modules/utils/conda.ts
index ddb2bccb..98f59bc2 100644
--- a/apps/node/src/modules/utils/conda.ts
+++ b/apps/node/src/modules/utils/conda.ts
@@ -42,6 +42,13 @@ class Conda {
const {pythonPath} = appConfigManager.getSetupConfig();
if (pythonPath && pythonPath !== "") {
+ this.env = this.env || {
+ CONDA_ENV_PATH: DEFAULT_CONDA_ENV_PATH,
+ CONDA_ENV_NAME: CONDA_ENV_NAME,
+ PYTHON_PATH: `${DEFAULT_CONDA_ENV_PATH}/bin/python`,
+ PIP_PATH: `${DEFAULT_CONDA_ENV_PATH}/bin/pip`,
+ CONDA_ENV_SCRIPTS_PATH: `${DEFAULT_CONDA_ENV_PATH}/bin`,
+ }
logger.info("use custom env python: ", pythonPath)
this.env!.PYTHON_PATH = pythonPath;
this.env!.PIP_PATH = `${pythonPath} -m pip`;
From f17a130dcdce1cdbe9301a0ae447e07b69e6acef Mon Sep 17 00:00:00 2001
From: Marc Chen <570171025@qq.com>
Date: Sat, 10 Aug 2024 17:23:33 +0800
Subject: [PATCH 07/12] add node description popover
---
apps/electron-frontend/package.json | 1 +
.../reactflow-node.style.module.scss | 31 +
.../reactflow-node/reactflow-node.tsx | 22 +
pnpm-lock.yaml | 577 +++++++++++++++++-
4 files changed, 626 insertions(+), 5 deletions(-)
diff --git a/apps/electron-frontend/package.json b/apps/electron-frontend/package.json
index 4aed783f..fff5b25f 100755
--- a/apps/electron-frontend/package.json
+++ b/apps/electron-frontend/package.json
@@ -33,6 +33,7 @@
"react-dnd-html5-backend": "^16.0.1",
"react-dom": "^18.2.0",
"react-h5-audio-player": "^3.9.3",
+ "react-markdown": "^9.0.1",
"react-player": "^2.16.0",
"react-use-websocket": "^4.5.0",
"reactflow": "^11.10.1",
diff --git a/apps/electron-frontend/src/components/workflow-editor/reactflow-node/reactflow-node.style.module.scss b/apps/electron-frontend/src/components/workflow-editor/reactflow-node/reactflow-node.style.module.scss
index ad6245a6..841bcff9 100644
--- a/apps/electron-frontend/src/components/workflow-editor/reactflow-node/reactflow-node.style.module.scss
+++ b/apps/electron-frontend/src/components/workflow-editor/reactflow-node/reactflow-node.style.module.scss
@@ -109,6 +109,19 @@
width: var(--icon-size);
}
}
+ .node-description-icon {
+ position: absolute;
+ right: 0;
+ top: 9px;
+ display: flex;
+ align-items: center;
+ padding: 0 8px;
+ cursor: pointer;
+ transition: var(--transition);
+ &:hover {
+ background-color: var(--backgroundColorL2);
+ }
+ }
.progress-bar {
position: absolute;
width: 100%;
@@ -597,3 +610,21 @@
}
}
}
+
+.nodeDescriptionPopover {
+ max-width: 300px;
+ max-height: 400px;
+ overflow: auto;
+ padding: 10px;
+ font-size: 12px;
+ background-color: #191A1F;
+ :global {
+ ul, ol {
+ list-style: initial;
+ padding-left: 18px;
+ li {
+ margin-bottom: 10px;
+ }
+ }
+ }
+}
diff --git a/apps/electron-frontend/src/components/workflow-editor/reactflow-node/reactflow-node.tsx b/apps/electron-frontend/src/components/workflow-editor/reactflow-node/reactflow-node.tsx
index 91d53fa3..2e2eef91 100644
--- a/apps/electron-frontend/src/components/workflow-editor/reactflow-node/reactflow-node.tsx
+++ b/apps/electron-frontend/src/components/workflow-editor/reactflow-node/reactflow-node.tsx
@@ -98,6 +98,7 @@ export const NodeComponent = memo(({
{isNegative &&
{"("}Negative{")"}}
+ {widget.description &&
}
{isInProgress ?
@@ -149,6 +150,27 @@ export const NodeComponent = memo(({
)
});
+import Markdown from 'react-markdown'
+import { Popover } from 'antd';
+import { InfoCircleOutlined } from '@ant-design/icons';
+
+function NodeDescription({ description }: { description: string }) {
+ return (
+
+ {description}
+
+ )}
+ >
+
+
+
+
+ )
+}
export function getTransformStyle(transformScale: number) {
const transform = Math.max(1, 1 / transformScale);
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index 8faad9cf..7d392631 100755
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -257,6 +257,9 @@ importers:
react-h5-audio-player:
specifier: ^3.9.3
version: 3.9.3(react-dom@18.2.0)(react@18.2.0)
+ react-markdown:
+ specifier: ^9.0.1
+ version: 9.0.1(@types/react@18.2.21)(react@18.2.0)
react-player:
specifier: ^2.16.0
version: 2.16.0(react@18.2.0)
@@ -3689,7 +3692,12 @@ packages:
resolution: {integrity: sha512-vIChWdVG3LG1SMxEvI/AK+FWJthlrqlTu7fbrlywTkkaONwk/UAGaULXRlf8vkzFBLVm0zkMdCquhL5aOjhXPQ==}
dependencies:
'@types/ms': 0.7.34
- dev: true
+
+ /@types/estree-jsx@1.0.5:
+ resolution: {integrity: sha512-52CcUVNFyfb1A2ALocQw/Dd1BQFNmSdkuC3BkZ6iqhdMfQz7JWOFRuJFloOzjk+6WijU56m9oKXFAXc7o3Towg==}
+ dependencies:
+ '@types/estree': 1.0.5
+ dev: false
/@types/estree@1.0.5:
resolution: {integrity: sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==}
@@ -3751,6 +3759,12 @@ packages:
'@types/node': 17.0.45
dev: true
+ /@types/hast@3.0.4:
+ resolution: {integrity: sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==}
+ dependencies:
+ '@types/unist': 3.0.2
+ dev: false
+
/@types/http-cache-semantics@4.0.4:
resolution: {integrity: sha512-1m0bIFVc7eJWyve9S0RnuRgcQqF/Xd5QsUZAZeQFr1Q3/p9JWoQQEqmVy+DPTNpGXwhgIetAoYF8JSc33q29QA==}
@@ -3827,6 +3841,12 @@ packages:
resolution: {integrity: sha512-OvlIYQK9tNneDlS0VN54LLd5uiPCBOp7gS5Z0f1mjoJYBrtStzgmJBxONW3U6OZqdtNzZPmn9BS/7WI7BFFcFQ==}
dev: false
+ /@types/mdast@4.0.4:
+ resolution: {integrity: sha512-kGaNbPh1k7AFzgpud/gMdvIm5xuECykRR+JnWKQno9TAXVa6WIVCGTPvYGekIDL4uwCZQSYbUxNBSb1aUo79oA==}
+ dependencies:
+ '@types/unist': 3.0.2
+ dev: false
+
/@types/mime@1.3.5:
resolution: {integrity: sha512-/pyBZWSLD2n0dcHE3hq8s8ZvcETHtEuF+3E7XVt0Ig2nvsVQXdghHVcEkIWjy9A0wKfTn97a/PSDYohKIlnP/w==}
dev: false
@@ -3842,7 +3862,6 @@ packages:
/@types/ms@0.7.34:
resolution: {integrity: sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==}
- dev: true
/@types/node@17.0.45:
resolution: {integrity: sha512-w+tIMs3rq2afQdsPJlODhoUEKzFP1ayaoyl1CcnwtIlsVe7K7bA1NGm4s3PraqTLlXnbIN84zuBlxBWo1u9BLw==}
@@ -3952,6 +3971,14 @@ packages:
resolution: {integrity: sha512-6WaYesThRMCl19iryMYP7/x2OVgCtbIVflDGFpWnb9irXI3UjYE4AzmYuiUKY1AJstGijoY+MgUszMgRxIYTYw==}
dev: false
+ /@types/unist@2.0.10:
+ resolution: {integrity: sha512-IfYcSBWE3hLpBg8+X2SEa8LVkJdJEkT2Ese2aaLs3ptGdVtABxndrMaxuFlQ1qdFf9Q5rDvDpxI3WwgvKFAsQA==}
+ dev: false
+
+ /@types/unist@3.0.2:
+ resolution: {integrity: sha512-dqId9J8K/vGi5Zr7oo212BGii5m3q5Hxlkwy3WpYuKPklmBEvsbMYYyLxAQpSffdLl/gdW0XUpKWFvYmyoWCoQ==}
+ dev: false
+
/@types/unzipper@0.10.9:
resolution: {integrity: sha512-vHbmFZAw8emNAOVkHVbS3qBnbr0x/qHQZ+ei1HE7Oy6Tyrptl+jpqnOX+BF5owcu/HZLOV0nJK+K9sjs1Ox2JA==}
dependencies:
@@ -4317,7 +4344,6 @@ packages:
/@ungap/structured-clone@1.2.0:
resolution: {integrity: sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==}
- dev: true
/@vercel/style-guide@5.1.0(eslint@8.54.0)(jest@29.7.0)(prettier@3.1.0)(typescript@4.5.5):
resolution: {integrity: sha512-L9lWYePIycm7vIOjDLj+mmMdmmPkW3/brHjgq+nJdvMOrL7Hdk/19w8X583HYSk0vWsq494o5Qkh6x5+uW7ljg==}
@@ -4900,6 +4926,10 @@ packages:
babel-preset-current-node-syntax: 1.0.1(@babel/core@7.23.3)
dev: true
+ /bail@2.0.2:
+ resolution: {integrity: sha512-0xO6mYd7JB2YesxDKplafRpsiOzPt9V02ddPCLbY1xYGPOX24NTyN50qnUxgCPcSoYMhKpAuBTjQoRZCAkUDRw==}
+ dev: false
+
/balanced-match@1.0.2:
resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==}
@@ -5255,6 +5285,10 @@ packages:
/caniuse-lite@1.0.30001564:
resolution: {integrity: sha512-DqAOf+rhof+6GVx1y+xzbFPeOumfQnhYzVnZD6LAXijR77yPtm9mfOcqOnT3mpnJiZVT+kwLAFnRlZcIz+c6bg==}
+ /ccount@2.0.1:
+ resolution: {integrity: sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg==}
+ dev: false
+
/chainsaw@0.1.0:
resolution: {integrity: sha512-75kWfWt6MEKNC8xYXIdRpDehRYY/tNSgwKaJq+dbbDcxORuVrrQ+SEHoWsniVn9XPYfP4gmdWIeDk/4YNp1rNQ==}
dependencies:
@@ -5312,6 +5346,22 @@ packages:
engines: {node: '>=10'}
dev: true
+ /character-entities-html4@2.1.0:
+ resolution: {integrity: sha512-1v7fgQRj6hnSwFpq1Eu0ynr/CDEw0rXo2B61qXrLNdHZmPKgb7fqS1a2JwF0rISo9q77jDI8VMEHoApn8qDoZA==}
+ dev: false
+
+ /character-entities-legacy@3.0.0:
+ resolution: {integrity: sha512-RpPp0asT/6ufRm//AJVwpViZbGM/MkjQFxJccQRHmISF/22NBtsHqAWmL+/pmkPWoIUJdWyeVleTl1wydHATVQ==}
+ dev: false
+
+ /character-entities@2.0.2:
+ resolution: {integrity: sha512-shx7oQ0Awen/BRIdkjkvz54PnEEI/EjwXDSIZp86/KKdbafHh1Df/RYGBhn4hbe2+uKC9FnT5UCEdyPz3ai9hQ==}
+ dev: false
+
+ /character-reference-invalid@2.0.1:
+ resolution: {integrity: sha512-iBZ4F4wRbyORVsu0jPV7gXkOsGYjGHPmAyv+HiHG8gi5PtC9KI2j1+v8/tlibRvjoWX027ypmG/n0HtO5t7unw==}
+ dev: false
+
/chardet@0.7.0:
resolution: {integrity: sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==}
dev: true
@@ -5503,6 +5553,10 @@ packages:
delayed-stream: 1.0.0
dev: true
+ /comma-separated-tokens@2.0.3:
+ resolution: {integrity: sha512-Fu4hJdvzeylCfQPp9SGWidpzrMs7tTrlu6Vb8XGaRGck8QSNZJJp538Wrb60Lax4fPwR64ViY468OIUTbRlGZg==}
+ dev: false
+
/commander@10.0.1:
resolution: {integrity: sha512-y4Mg2tXshplEbSGzx7amzPwKKOCGuoSRP/CjEdwwk0FOGlUbq6lKuoyDZTNZkmxHdJtp54hdfY/JUrdL7Xfdug==}
engines: {node: '>=14'}
@@ -5836,6 +5890,12 @@ packages:
ms: 2.1.2
supports-color: 5.5.0
+ /decode-named-character-reference@1.0.2:
+ resolution: {integrity: sha512-O8x12RzrUF8xyVcY0KJowWsmaJxQbmy0/EtnNtHRpsOcT7dFk5W598coHqBVpmWo1oQQfsCqfCmkZN5DJrZVdg==}
+ dependencies:
+ character-entities: 2.0.2
+ dev: false
+
/decompress-response@6.0.0:
resolution: {integrity: sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==}
engines: {node: '>=10'}
@@ -5958,7 +6018,6 @@ packages:
/dequal@2.0.3:
resolution: {integrity: sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==}
engines: {node: '>=6'}
- dev: true
/destroy@1.2.0:
resolution: {integrity: sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==}
@@ -5998,6 +6057,12 @@ packages:
resolution: {integrity: sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g==}
requiresBuild: true
+ /devlop@1.1.0:
+ resolution: {integrity: sha512-RWmIqhcFf1lRYBvNmr7qTNuyCt/7/ns2jbpp1+PalgE/rDQcBT0fioSMUpJ93irlUhC5hrg4cYqe6U+0ImW0rA==}
+ dependencies:
+ dequal: 2.0.3
+ dev: false
+
/dexie-react-hooks@1.1.7(@types/react@18.2.21)(dexie@3.2.4)(react@18.2.0):
resolution: {integrity: sha512-Lwv5W0Hk+uOW3kGnsU9GZoR1er1B7WQ5DSdonoNG+focTNeJbHW6vi6nBoX534VKI3/uwHebYzSw1fwY6a7mTw==}
peerDependencies:
@@ -7090,6 +7155,10 @@ packages:
engines: {node: '>=4.0'}
dev: true
+ /estree-util-is-identifier-name@3.0.0:
+ resolution: {integrity: sha512-hFtqIDZTIUZ9BXLb8y4pYGyk6+wekIivNVTcmvk8NoOh+VeRn5y6cEHzbURrWbfp1fIqdVipilzj+lfaadNZmg==}
+ dev: false
+
/estree-walker@2.0.2:
resolution: {integrity: sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==}
dev: false
@@ -7263,6 +7332,10 @@ packages:
type: 2.7.2
dev: false
+ /extend@3.0.2:
+ resolution: {integrity: sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==}
+ dev: false
+
/external-editor@3.1.0:
resolution: {integrity: sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==}
engines: {node: '>=4'}
@@ -7962,6 +8035,34 @@ packages:
dependencies:
function-bind: 1.1.2
+ /hast-util-to-jsx-runtime@2.3.0:
+ resolution: {integrity: sha512-H/y0+IWPdsLLS738P8tDnrQ8Z+dj12zQQ6WC11TIM21C8WFVoIxcqWXf2H3hiTVZjF1AWqoimGwrTWecWrnmRQ==}
+ dependencies:
+ '@types/estree': 1.0.5
+ '@types/hast': 3.0.4
+ '@types/unist': 3.0.2
+ comma-separated-tokens: 2.0.3
+ devlop: 1.1.0
+ estree-util-is-identifier-name: 3.0.0
+ hast-util-whitespace: 3.0.0
+ mdast-util-mdx-expression: 2.0.0
+ mdast-util-mdx-jsx: 3.1.2
+ mdast-util-mdxjs-esm: 2.0.1
+ property-information: 6.5.0
+ space-separated-tokens: 2.0.2
+ style-to-object: 1.0.6
+ unist-util-position: 5.0.0
+ vfile-message: 4.0.2
+ transitivePeerDependencies:
+ - supports-color
+ dev: false
+
+ /hast-util-whitespace@3.0.0:
+ resolution: {integrity: sha512-88JUN06ipLwsnv+dVn+OIYOvAuvBMy/Qoi6O7mQHxdPXpjy+Cd6xRkWwux7DKO+4sYILtLBRIKgsdpS2gQc7qw==}
+ dependencies:
+ '@types/hast': 3.0.4
+ dev: false
+
/header-case@1.0.1:
resolution: {integrity: sha512-i0q9mkOeSuhXw6bGgiQCCBgY/jlZuV/7dZXyZ9c6LcBrqwvT8eT719E9uxE5LiZftdl+z81Ugbg/VvXV4OJOeQ==}
dependencies:
@@ -7997,6 +8098,10 @@ packages:
resolution: {integrity: sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==}
dev: true
+ /html-url-attributes@3.0.0:
+ resolution: {integrity: sha512-/sXbVCWayk6GDVg3ctOX6nxaVj7So40FcFAnWlWGNAB1LpYKcV5Cd10APjPjW80O7zYW2MsjBV4zZ7IZO5fVow==}
+ dev: false
+
/http-cache-semantics@4.1.1:
resolution: {integrity: sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ==}
@@ -8192,6 +8297,10 @@ packages:
resolution: {integrity: sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==}
dev: true
+ /inline-style-parser@0.2.3:
+ resolution: {integrity: sha512-qlD8YNDqyTKTyuITrDOffsl6Tdhv+UC4hcdAVuQsK4IMQ99nSgd1MIA/Q+jQYoh9r3hVUXhYh7urSRmXPkW04g==}
+ dev: false
+
/inquirer@7.3.3:
resolution: {integrity: sha512-JG3eIAj5V9CwcGvuOmoo6LB9kbAYT8HXffUl6memuszlwDC/qvFAJw49XJ5NROSFNPxp3iQg1GqkFhaY/CR0IA==}
engines: {node: '>=8.0.0'}
@@ -8257,6 +8366,17 @@ packages:
resolution: {integrity: sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==}
engines: {node: '>= 0.10'}
+ /is-alphabetical@2.0.1:
+ resolution: {integrity: sha512-FWyyY60MeTNyeSRpkM2Iry0G9hpr7/9kD40mD/cGQEuilcZYS4okz8SN2Q6rLCJ8gbCt6fN+rC+6tMGS99LaxQ==}
+ dev: false
+
+ /is-alphanumerical@2.0.1:
+ resolution: {integrity: sha512-hmbYhX/9MUMF5uh7tOXyK/n0ZvWpad5caBA17GsC6vyuCqaWliRG5K1qS9inmUhEMaOBIW7/whAnSwveW/LtZw==}
+ dependencies:
+ is-alphabetical: 2.0.1
+ is-decimal: 2.0.1
+ dev: false
+
/is-array-buffer@3.0.2:
resolution: {integrity: sha512-y+FyyR/w8vfIRq4eQcM1EYgSTnmHXPqaF+IgzgraytCFq5Xh8lllDVmAZolPJiZttZLeFSINPYMaEJ7/vWUa1w==}
dependencies:
@@ -8331,6 +8451,10 @@ packages:
has-tostringtag: 1.0.0
dev: true
+ /is-decimal@2.0.1:
+ resolution: {integrity: sha512-AAB9hiomQs5DXWcRB1rqsxGUstbRroFOPPVAomNk/3XHR5JyEZChOyTWe2oayKnsSsr/kcGqF+z6yuH6HHpN0A==}
+ dev: false
+
/is-docker@2.2.1:
resolution: {integrity: sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==}
engines: {node: '>=8'}
@@ -8380,6 +8504,10 @@ packages:
dependencies:
is-extglob: 2.1.1
+ /is-hexadecimal@2.0.1:
+ resolution: {integrity: sha512-DgZQp241c8oO6cA1SbTEWiXeoxV42vlcJxgH+B3hi1AiqqKruZR3ZGF8In3fj4+/y/7rHvlOZLZtgJ/4ttYGZg==}
+ dev: false
+
/is-inside-container@1.0.0:
resolution: {integrity: sha512-KIYLCCJghfHZxqjYBE7rEy0OBuTd5xCHS7tHVgvCLkx7StIoaxwNW3hCALgEUjFfeRk+MG/Qxmp/vtETEF3tRA==}
engines: {node: '>=14.16'}
@@ -8449,7 +8577,6 @@ packages:
/is-plain-obj@4.1.0:
resolution: {integrity: sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==}
engines: {node: '>=12'}
- dev: true
/is-plain-object@5.0.0:
resolution: {integrity: sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==}
@@ -9474,6 +9601,10 @@ packages:
triple-beam: 1.4.1
dev: false
+ /longest-streak@3.1.0:
+ resolution: {integrity: sha512-9Ri+o0JYgehTaVBBDoMqIl8GXtbWg711O3srftcHhZ0dqnETqLaoIK0x17fUw9rFSlK/0NlsKe0Ahhyl5pXE2g==}
+ dev: false
+
/loose-envify@1.4.0:
resolution: {integrity: sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==}
hasBin: true
@@ -9618,6 +9749,111 @@ packages:
dependencies:
escape-string-regexp: 4.0.0
+ /mdast-util-from-markdown@2.0.1:
+ resolution: {integrity: sha512-aJEUyzZ6TzlsX2s5B4Of7lN7EQtAxvtradMMglCQDyaTFgse6CmtmdJ15ElnVRlCg1vpNyVtbem0PWzlNieZsA==}
+ dependencies:
+ '@types/mdast': 4.0.4
+ '@types/unist': 3.0.2
+ decode-named-character-reference: 1.0.2
+ devlop: 1.1.0
+ mdast-util-to-string: 4.0.0
+ micromark: 4.0.0
+ micromark-util-decode-numeric-character-reference: 2.0.1
+ micromark-util-decode-string: 2.0.0
+ micromark-util-normalize-identifier: 2.0.0
+ micromark-util-symbol: 2.0.0
+ micromark-util-types: 2.0.0
+ unist-util-stringify-position: 4.0.0
+ transitivePeerDependencies:
+ - supports-color
+ dev: false
+
+ /mdast-util-mdx-expression@2.0.0:
+ resolution: {integrity: sha512-fGCu8eWdKUKNu5mohVGkhBXCXGnOTLuFqOvGMvdikr+J1w7lDJgxThOKpwRWzzbyXAU2hhSwsmssOY4yTokluw==}
+ dependencies:
+ '@types/estree-jsx': 1.0.5
+ '@types/hast': 3.0.4
+ '@types/mdast': 4.0.4
+ devlop: 1.1.0
+ mdast-util-from-markdown: 2.0.1
+ mdast-util-to-markdown: 2.1.0
+ transitivePeerDependencies:
+ - supports-color
+ dev: false
+
+ /mdast-util-mdx-jsx@3.1.2:
+ resolution: {integrity: sha512-eKMQDeywY2wlHc97k5eD8VC+9ASMjN8ItEZQNGwJ6E0XWKiW/Z0V5/H8pvoXUf+y+Mj0VIgeRRbujBmFn4FTyA==}
+ dependencies:
+ '@types/estree-jsx': 1.0.5
+ '@types/hast': 3.0.4
+ '@types/mdast': 4.0.4
+ '@types/unist': 3.0.2
+ ccount: 2.0.1
+ devlop: 1.1.0
+ mdast-util-from-markdown: 2.0.1
+ mdast-util-to-markdown: 2.1.0
+ parse-entities: 4.0.1
+ stringify-entities: 4.0.4
+ unist-util-remove-position: 5.0.0
+ unist-util-stringify-position: 4.0.0
+ vfile-message: 4.0.2
+ transitivePeerDependencies:
+ - supports-color
+ dev: false
+
+ /mdast-util-mdxjs-esm@2.0.1:
+ resolution: {integrity: sha512-EcmOpxsZ96CvlP03NghtH1EsLtr0n9Tm4lPUJUBccV9RwUOneqSycg19n5HGzCf+10LozMRSObtVr3ee1WoHtg==}
+ dependencies:
+ '@types/estree-jsx': 1.0.5
+ '@types/hast': 3.0.4
+ '@types/mdast': 4.0.4
+ devlop: 1.1.0
+ mdast-util-from-markdown: 2.0.1
+ mdast-util-to-markdown: 2.1.0
+ transitivePeerDependencies:
+ - supports-color
+ dev: false
+
+ /mdast-util-phrasing@4.1.0:
+ resolution: {integrity: sha512-TqICwyvJJpBwvGAMZjj4J2n0X8QWp21b9l0o7eXyVJ25YNWYbJDVIyD1bZXE6WtV6RmKJVYmQAKWa0zWOABz2w==}
+ dependencies:
+ '@types/mdast': 4.0.4
+ unist-util-is: 6.0.0
+ dev: false
+
+ /mdast-util-to-hast@13.2.0:
+ resolution: {integrity: sha512-QGYKEuUsYT9ykKBCMOEDLsU5JRObWQusAolFMeko/tYPufNkRffBAQjIE+99jbA87xv6FgmjLtwjh9wBWajwAA==}
+ dependencies:
+ '@types/hast': 3.0.4
+ '@types/mdast': 4.0.4
+ '@ungap/structured-clone': 1.2.0
+ devlop: 1.1.0
+ micromark-util-sanitize-uri: 2.0.0
+ trim-lines: 3.0.1
+ unist-util-position: 5.0.0
+ unist-util-visit: 5.0.0
+ vfile: 6.0.2
+ dev: false
+
+ /mdast-util-to-markdown@2.1.0:
+ resolution: {integrity: sha512-SR2VnIEdVNCJbP6y7kVTJgPLifdr8WEU440fQec7qHoHOUz/oJ2jmNRqdDQ3rbiStOXb2mCDGTuwsK5OPUgYlQ==}
+ dependencies:
+ '@types/mdast': 4.0.4
+ '@types/unist': 3.0.2
+ longest-streak: 3.1.0
+ mdast-util-phrasing: 4.1.0
+ mdast-util-to-string: 4.0.0
+ micromark-util-decode-string: 2.0.0
+ unist-util-visit: 5.0.0
+ zwitch: 2.0.4
+ dev: false
+
+ /mdast-util-to-string@4.0.0:
+ resolution: {integrity: sha512-0H44vDimn51F0YwvxSJSm0eCDOJTRlmN0R1yBh4HLj9wiV1Dn0QoXGbvFAWj2hSItVTlCmBF1hqKlIyUBVFLPg==}
+ dependencies:
+ '@types/mdast': 4.0.4
+ dev: false
+
/media-typer@0.3.0:
resolution: {integrity: sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==}
engines: {node: '>= 0.6'}
@@ -9651,6 +9887,181 @@ packages:
resolution: {integrity: sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==}
engines: {node: '>= 0.6'}
+ /micromark-core-commonmark@2.0.1:
+ resolution: {integrity: sha512-CUQyKr1e///ZODyD1U3xit6zXwy1a8q2a1S1HKtIlmgvurrEpaw/Y9y6KSIbF8P59cn/NjzHyO+Q2fAyYLQrAA==}
+ dependencies:
+ decode-named-character-reference: 1.0.2
+ devlop: 1.1.0
+ micromark-factory-destination: 2.0.0
+ micromark-factory-label: 2.0.0
+ micromark-factory-space: 2.0.0
+ micromark-factory-title: 2.0.0
+ micromark-factory-whitespace: 2.0.0
+ micromark-util-character: 2.1.0
+ micromark-util-chunked: 2.0.0
+ micromark-util-classify-character: 2.0.0
+ micromark-util-html-tag-name: 2.0.0
+ micromark-util-normalize-identifier: 2.0.0
+ micromark-util-resolve-all: 2.0.0
+ micromark-util-subtokenize: 2.0.1
+ micromark-util-symbol: 2.0.0
+ micromark-util-types: 2.0.0
+ dev: false
+
+ /micromark-factory-destination@2.0.0:
+ resolution: {integrity: sha512-j9DGrQLm/Uhl2tCzcbLhy5kXsgkHUrjJHg4fFAeoMRwJmJerT9aw4FEhIbZStWN8A3qMwOp1uzHr4UL8AInxtA==}
+ dependencies:
+ micromark-util-character: 2.1.0
+ micromark-util-symbol: 2.0.0
+ micromark-util-types: 2.0.0
+ dev: false
+
+ /micromark-factory-label@2.0.0:
+ resolution: {integrity: sha512-RR3i96ohZGde//4WSe/dJsxOX6vxIg9TimLAS3i4EhBAFx8Sm5SmqVfR8E87DPSR31nEAjZfbt91OMZWcNgdZw==}
+ dependencies:
+ devlop: 1.1.0
+ micromark-util-character: 2.1.0
+ micromark-util-symbol: 2.0.0
+ micromark-util-types: 2.0.0
+ dev: false
+
+ /micromark-factory-space@2.0.0:
+ resolution: {integrity: sha512-TKr+LIDX2pkBJXFLzpyPyljzYK3MtmllMUMODTQJIUfDGncESaqB90db9IAUcz4AZAJFdd8U9zOp9ty1458rxg==}
+ dependencies:
+ micromark-util-character: 2.1.0
+ micromark-util-types: 2.0.0
+ dev: false
+
+ /micromark-factory-title@2.0.0:
+ resolution: {integrity: sha512-jY8CSxmpWLOxS+t8W+FG3Xigc0RDQA9bKMY/EwILvsesiRniiVMejYTE4wumNc2f4UbAa4WsHqe3J1QS1sli+A==}
+ dependencies:
+ micromark-factory-space: 2.0.0
+ micromark-util-character: 2.1.0
+ micromark-util-symbol: 2.0.0
+ micromark-util-types: 2.0.0
+ dev: false
+
+ /micromark-factory-whitespace@2.0.0:
+ resolution: {integrity: sha512-28kbwaBjc5yAI1XadbdPYHX/eDnqaUFVikLwrO7FDnKG7lpgxnvk/XGRhX/PN0mOZ+dBSZ+LgunHS+6tYQAzhA==}
+ dependencies:
+ micromark-factory-space: 2.0.0
+ micromark-util-character: 2.1.0
+ micromark-util-symbol: 2.0.0
+ micromark-util-types: 2.0.0
+ dev: false
+
+ /micromark-util-character@2.1.0:
+ resolution: {integrity: sha512-KvOVV+X1yLBfs9dCBSopq/+G1PcgT3lAK07mC4BzXi5E7ahzMAF8oIupDDJ6mievI6F+lAATkbQQlQixJfT3aQ==}
+ dependencies:
+ micromark-util-symbol: 2.0.0
+ micromark-util-types: 2.0.0
+ dev: false
+
+ /micromark-util-chunked@2.0.0:
+ resolution: {integrity: sha512-anK8SWmNphkXdaKgz5hJvGa7l00qmcaUQoMYsBwDlSKFKjc6gjGXPDw3FNL3Nbwq5L8gE+RCbGqTw49FK5Qyvg==}
+ dependencies:
+ micromark-util-symbol: 2.0.0
+ dev: false
+
+ /micromark-util-classify-character@2.0.0:
+ resolution: {integrity: sha512-S0ze2R9GH+fu41FA7pbSqNWObo/kzwf8rN/+IGlW/4tC6oACOs8B++bh+i9bVyNnwCcuksbFwsBme5OCKXCwIw==}
+ dependencies:
+ micromark-util-character: 2.1.0
+ micromark-util-symbol: 2.0.0
+ micromark-util-types: 2.0.0
+ dev: false
+
+ /micromark-util-combine-extensions@2.0.0:
+ resolution: {integrity: sha512-vZZio48k7ON0fVS3CUgFatWHoKbbLTK/rT7pzpJ4Bjp5JjkZeasRfrS9wsBdDJK2cJLHMckXZdzPSSr1B8a4oQ==}
+ dependencies:
+ micromark-util-chunked: 2.0.0
+ micromark-util-types: 2.0.0
+ dev: false
+
+ /micromark-util-decode-numeric-character-reference@2.0.1:
+ resolution: {integrity: sha512-bmkNc7z8Wn6kgjZmVHOX3SowGmVdhYS7yBpMnuMnPzDq/6xwVA604DuOXMZTO1lvq01g+Adfa0pE2UKGlxL1XQ==}
+ dependencies:
+ micromark-util-symbol: 2.0.0
+ dev: false
+
+ /micromark-util-decode-string@2.0.0:
+ resolution: {integrity: sha512-r4Sc6leeUTn3P6gk20aFMj2ntPwn6qpDZqWvYmAG6NgvFTIlj4WtrAudLi65qYoaGdXYViXYw2pkmn7QnIFasA==}
+ dependencies:
+ decode-named-character-reference: 1.0.2
+ micromark-util-character: 2.1.0
+ micromark-util-decode-numeric-character-reference: 2.0.1
+ micromark-util-symbol: 2.0.0
+ dev: false
+
+ /micromark-util-encode@2.0.0:
+ resolution: {integrity: sha512-pS+ROfCXAGLWCOc8egcBvT0kf27GoWMqtdarNfDcjb6YLuV5cM3ioG45Ys2qOVqeqSbjaKg72vU+Wby3eddPsA==}
+ dev: false
+
+ /micromark-util-html-tag-name@2.0.0:
+ resolution: {integrity: sha512-xNn4Pqkj2puRhKdKTm8t1YHC/BAjx6CEwRFXntTaRf/x16aqka6ouVoutm+QdkISTlT7e2zU7U4ZdlDLJd2Mcw==}
+ dev: false
+
+ /micromark-util-normalize-identifier@2.0.0:
+ resolution: {integrity: sha512-2xhYT0sfo85FMrUPtHcPo2rrp1lwbDEEzpx7jiH2xXJLqBuy4H0GgXk5ToU8IEwoROtXuL8ND0ttVa4rNqYK3w==}
+ dependencies:
+ micromark-util-symbol: 2.0.0
+ dev: false
+
+ /micromark-util-resolve-all@2.0.0:
+ resolution: {integrity: sha512-6KU6qO7DZ7GJkaCgwBNtplXCvGkJToU86ybBAUdavvgsCiG8lSSvYxr9MhwmQ+udpzywHsl4RpGJsYWG1pDOcA==}
+ dependencies:
+ micromark-util-types: 2.0.0
+ dev: false
+
+ /micromark-util-sanitize-uri@2.0.0:
+ resolution: {integrity: sha512-WhYv5UEcZrbAtlsnPuChHUAsu/iBPOVaEVsntLBIdpibO0ddy8OzavZz3iL2xVvBZOpolujSliP65Kq0/7KIYw==}
+ dependencies:
+ micromark-util-character: 2.1.0
+ micromark-util-encode: 2.0.0
+ micromark-util-symbol: 2.0.0
+ dev: false
+
+ /micromark-util-subtokenize@2.0.1:
+ resolution: {integrity: sha512-jZNtiFl/1aY73yS3UGQkutD0UbhTt68qnRpw2Pifmz5wV9h8gOVsN70v+Lq/f1rKaU/W8pxRe8y8Q9FX1AOe1Q==}
+ dependencies:
+ devlop: 1.1.0
+ micromark-util-chunked: 2.0.0
+ micromark-util-symbol: 2.0.0
+ micromark-util-types: 2.0.0
+ dev: false
+
+ /micromark-util-symbol@2.0.0:
+ resolution: {integrity: sha512-8JZt9ElZ5kyTnO94muPxIGS8oyElRJaiJO8EzV6ZSyGQ1Is8xwl4Q45qU5UOg+bGH4AikWziz0iN4sFLWs8PGw==}
+ dev: false
+
+ /micromark-util-types@2.0.0:
+ resolution: {integrity: sha512-oNh6S2WMHWRZrmutsRmDDfkzKtxF+bc2VxLC9dvtrDIRFln627VsFP6fLMgTryGDljgLPjkrzQSDcPrjPyDJ5w==}
+ dev: false
+
+ /micromark@4.0.0:
+ resolution: {integrity: sha512-o/sd0nMof8kYff+TqcDx3VSrgBTcZpSvYcAHIfHhv5VAuNmisCxjhx6YmxS8PFEpb9z5WKWKPdzf0jM23ro3RQ==}
+ dependencies:
+ '@types/debug': 4.1.12
+ debug: 4.3.4(supports-color@5.5.0)
+ decode-named-character-reference: 1.0.2
+ devlop: 1.1.0
+ micromark-core-commonmark: 2.0.1
+ micromark-factory-space: 2.0.0
+ micromark-util-character: 2.1.0
+ micromark-util-chunked: 2.0.0
+ micromark-util-combine-extensions: 2.0.0
+ micromark-util-decode-numeric-character-reference: 2.0.1
+ micromark-util-encode: 2.0.0
+ micromark-util-normalize-identifier: 2.0.0
+ micromark-util-resolve-all: 2.0.0
+ micromark-util-sanitize-uri: 2.0.0
+ micromark-util-subtokenize: 2.0.1
+ micromark-util-symbol: 2.0.0
+ micromark-util-types: 2.0.0
+ transitivePeerDependencies:
+ - supports-color
+ dev: false
+
/micromatch@4.0.5:
resolution: {integrity: sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==}
engines: {node: '>=8.6'}
@@ -10416,6 +10827,19 @@ packages:
author-regex: 1.0.0
dev: true
+ /parse-entities@4.0.1:
+ resolution: {integrity: sha512-SWzvYcSJh4d/SGLIOQfZ/CoNv6BTlI6YEQ7Nj82oDVnRpwe/Z/F1EMx42x3JAOwGBlCjeCH0BRJQbQ/opHL17w==}
+ dependencies:
+ '@types/unist': 2.0.10
+ character-entities: 2.0.2
+ character-entities-legacy: 3.0.0
+ character-reference-invalid: 2.0.1
+ decode-named-character-reference: 1.0.2
+ is-alphanumerical: 2.0.1
+ is-decimal: 2.0.1
+ is-hexadecimal: 2.0.1
+ dev: false
+
/parse-json@2.2.0:
resolution: {integrity: sha512-QR/GGaKCkhwk1ePQNYDRKYZ3mwU9ypsKhB0XyFnLQdomyEqk3e8wpW3V5Jp88zbxK4n5ST1nqo+g9juTpownhQ==}
engines: {node: '>=0.10.0'}
@@ -10652,6 +11076,10 @@ packages:
object-assign: 4.1.1
react-is: 16.13.1
+ /property-information@6.5.0:
+ resolution: {integrity: sha512-PgTgs/BlvHxOu8QuEN7wi5A0OmXaBcHpmCSTehcs6Uuu9IkDIEo13Hy7n898RHfrQ49vKCoGeWZSaAK01nwVig==}
+ dev: false
+
/proxy-addr@2.0.7:
resolution: {integrity: sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==}
engines: {node: '>= 0.10'}
@@ -11379,6 +11807,28 @@ packages:
scheduler: 0.23.0
dev: false
+ /react-markdown@9.0.1(@types/react@18.2.21)(react@18.2.0):
+ resolution: {integrity: sha512-186Gw/vF1uRkydbsOIkcGXw7aHq0sZOCRFFjGrr7b9+nVZg4UfA4enXCaxm4fUzecU38sWfrNDitGhshuU7rdg==}
+ peerDependencies:
+ '@types/react': 18.2.21
+ react: '>=18'
+ dependencies:
+ '@types/hast': 3.0.4
+ '@types/react': 18.2.21
+ devlop: 1.1.0
+ hast-util-to-jsx-runtime: 2.3.0
+ html-url-attributes: 3.0.0
+ mdast-util-to-hast: 13.2.0
+ react: 18.2.0
+ remark-parse: 11.0.0
+ remark-rehype: 11.1.0
+ unified: 11.0.5
+ unist-util-visit: 5.0.0
+ vfile: 6.0.2
+ transitivePeerDependencies:
+ - supports-color
+ dev: false
+
/react-player@2.16.0(react@18.2.0):
resolution: {integrity: sha512-mAIPHfioD7yxO0GNYVFD1303QFtI3lyyQZLY229UEAp/a10cSW+hPcakg0Keq8uWJxT2OiT/4Gt+Lc9bD6bJmQ==}
peerDependencies:
@@ -11622,6 +12072,27 @@ packages:
jsesc: 0.5.0
dev: true
+ /remark-parse@11.0.0:
+ resolution: {integrity: sha512-FCxlKLNGknS5ba/1lmpYijMUzX2esxW5xQqjWxw2eHFfS2MSdaHVINFmhjo+qN1WhZhNimq0dZATN9pH0IDrpA==}
+ dependencies:
+ '@types/mdast': 4.0.4
+ mdast-util-from-markdown: 2.0.1
+ micromark-util-types: 2.0.0
+ unified: 11.0.5
+ transitivePeerDependencies:
+ - supports-color
+ dev: false
+
+ /remark-rehype@11.1.0:
+ resolution: {integrity: sha512-z3tJrAs2kIs1AqIIy6pzHmAHlF1hWQ+OdY4/hv+Wxe35EhyLKcajL33iUEn3ScxtFox9nUvRufR/Zre8Q08H/g==}
+ dependencies:
+ '@types/hast': 3.0.4
+ '@types/mdast': 4.0.4
+ mdast-util-to-hast: 13.2.0
+ unified: 11.0.5
+ vfile: 6.0.2
+ dev: false
+
/require-directory@2.1.1:
resolution: {integrity: sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==}
engines: {node: '>=0.10.0'}
@@ -12152,6 +12623,10 @@ packages:
resolution: {integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==}
engines: {node: '>=0.10.0'}
+ /space-separated-tokens@2.0.2:
+ resolution: {integrity: sha512-PEGlAwrG8yXGXRjW32fGbg66JAlOAwbObuqVoJpv/mRgoWDQfgH1wDPvtzWyUSNAXBGSk8h755YDbbcEy3SH2Q==}
+ dev: false
+
/spdx-correct@3.2.0:
resolution: {integrity: sha512-kN9dJbvnySHULIluDHy32WHRUu3Og7B9sbY7tsFLctQkIqnMh3hErYgdMjTYuqmcXX+lK5T1lnUt3G7zNswmZA==}
dependencies:
@@ -12327,6 +12802,13 @@ packages:
dependencies:
safe-buffer: 5.2.1
+ /stringify-entities@4.0.4:
+ resolution: {integrity: sha512-IwfBptatlO+QCJUo19AqvrPNqlVMpW9YEL2LIVY+Rpv2qsjCGxaDLNRgeGsQWJhfItebuJhsGSLjaBbNSQ+ieg==}
+ dependencies:
+ character-entities-html4: 2.1.0
+ character-entities-legacy: 3.0.0
+ dev: false
+
/strip-ansi@6.0.1:
resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==}
engines: {node: '>=8'}
@@ -12388,6 +12870,12 @@ packages:
escape-string-regexp: 1.0.5
dev: true
+ /style-to-object@1.0.6:
+ resolution: {integrity: sha512-khxq+Qm3xEyZfKd/y9L3oIWQimxuc4STrQKtQn8aSDRHb8mFgpukgX1hdzfrMEW6JCjyJ8p89x+IUMVnCBI1PA==}
+ dependencies:
+ inline-style-parser: 0.2.3
+ dev: false
+
/styled-components@5.3.11(@babel/core@7.23.3)(react-dom@18.2.0)(react-is@18.2.0)(react@18.2.0):
resolution: {integrity: sha512-uuzIIfnVkagcVHv9nE0VPlHPSCmXIUGKfJ42LNjxCCTDTL5sgnJ8Z7GZBq0EnLYGln77tPpEpExt2+qa+cZqSw==}
engines: {node: '>=10'}
@@ -12622,6 +13110,10 @@ packages:
resolution: {integrity: sha512-iawgk0hLP3SxGKDfnDJf8wTz4p2qImnyihM5Hh/sGvQ3K37dPi/w8sRhdNIxYA1TwFwc5mDhIJq+O0RsvXBKdQ==}
dev: false
+ /trim-lines@3.0.1:
+ resolution: {integrity: sha512-kRj8B+YHZCc9kQYdWfJB2/oUl9rA99qbowYYBtr4ui4mZyAQ2JpvVBd/6U2YloATfqBhBTSMhTpgBHtU0Mf3Rg==}
+ dev: false
+
/trim-repeated@1.0.0:
resolution: {integrity: sha512-pkonvlKk8/ZuR0D5tLW8ljt5I8kmxp2XKymhepUeOdCEfKpZaktSArkLHZt76OB1ZvO9bssUsDty4SWhLvZpLg==}
engines: {node: '>=0.10.0'}
@@ -12634,6 +13126,10 @@ packages:
engines: {node: '>= 14.0.0'}
dev: false
+ /trough@2.2.0:
+ resolution: {integrity: sha512-tmMpK00BjZiUyVyvrBK7knerNgmgvcV/KLVyuma/SC+TQN167GrMRciANTz09+k3zW8L8t60jWO1GpfkZdjTaw==}
+ dev: false
+
/truncate-utf8-bytes@1.0.2:
resolution: {integrity: sha512-95Pu1QXQvruGEhv62XCMO3Mm90GscOCClvrIUwCM0PYOXK3kaF3l3sIHxx71ThJfcbM2O5Au6SO3AWCSEfW4mQ==}
dependencies:
@@ -12989,6 +13485,18 @@ packages:
which-boxed-primitive: 1.0.2
dev: true
+ /unified@11.0.5:
+ resolution: {integrity: sha512-xKvGhPWw3k84Qjh8bI3ZeJjqnyadK+GEFtazSfZv/rKeTkTjOJho6mFqh2SM96iIcZokxiOpg78GazTSg8+KHA==}
+ dependencies:
+ '@types/unist': 3.0.2
+ bail: 2.0.2
+ devlop: 1.1.0
+ extend: 3.0.2
+ is-plain-obj: 4.1.0
+ trough: 2.2.0
+ vfile: 6.0.2
+ dev: false
+
/unique-filename@2.0.1:
resolution: {integrity: sha512-ODWHtkkdx3IAR+veKxFV+VBkUMcN+FaqzUUd7IZzt+0zhDZFPFxhlqwPF3YQvMHx1TD0tdgYl+kuPnJ8E6ql7A==}
engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0}
@@ -13024,6 +13532,46 @@ packages:
crypto-random-string: 4.0.0
dev: false
+ /unist-util-is@6.0.0:
+ resolution: {integrity: sha512-2qCTHimwdxLfz+YzdGfkqNlH0tLi9xjTnHddPmJwtIG9MGsdbutfTc4P+haPD7l7Cjxf/WZj+we5qfVPvvxfYw==}
+ dependencies:
+ '@types/unist': 3.0.2
+ dev: false
+
+ /unist-util-position@5.0.0:
+ resolution: {integrity: sha512-fucsC7HjXvkB5R3kTCO7kUjRdrS0BJt3M/FPxmHMBOm8JQi2BsHAHFsy27E0EolP8rp0NzXsJ+jNPyDWvOJZPA==}
+ dependencies:
+ '@types/unist': 3.0.2
+ dev: false
+
+ /unist-util-remove-position@5.0.0:
+ resolution: {integrity: sha512-Hp5Kh3wLxv0PHj9m2yZhhLt58KzPtEYKQQ4yxfYFEO7EvHwzyDYnduhHnY1mDxoqr7VUwVuHXk9RXKIiYS1N8Q==}
+ dependencies:
+ '@types/unist': 3.0.2
+ unist-util-visit: 5.0.0
+ dev: false
+
+ /unist-util-stringify-position@4.0.0:
+ resolution: {integrity: sha512-0ASV06AAoKCDkS2+xw5RXJywruurpbC4JZSm7nr7MOt1ojAzvyyaO+UxZf18j8FCF6kmzCZKcAgN/yu2gm2XgQ==}
+ dependencies:
+ '@types/unist': 3.0.2
+ dev: false
+
+ /unist-util-visit-parents@6.0.1:
+ resolution: {integrity: sha512-L/PqWzfTP9lzzEa6CKs0k2nARxTdZduw3zyh8d2NVBnsyvHjSX4TWse388YrrQKbvI8w20fGjGlhgT96WwKykw==}
+ dependencies:
+ '@types/unist': 3.0.2
+ unist-util-is: 6.0.0
+ dev: false
+
+ /unist-util-visit@5.0.0:
+ resolution: {integrity: sha512-MR04uvD+07cwl/yhVuVWAtw+3GOR/knlL55Nd/wAdblk27GCVt3lqpTivy/tkJcZoNPzTwS1Y+KMojlLDhoTzg==}
+ dependencies:
+ '@types/unist': 3.0.2
+ unist-util-is: 6.0.0
+ unist-util-visit-parents: 6.0.1
+ dev: false
+
/universal-github-app-jwt@1.1.1:
resolution: {integrity: sha512-G33RTLrIBMFmlDV4u4CBF7dh71eWwykck4XgaxaIVeZKOYZRAAxvcGMRFTUclVY6xoUPQvO4Ne5wKGxYm/Yy9w==}
dependencies:
@@ -13231,6 +13779,21 @@ packages:
dev: true
optional: true
+ /vfile-message@4.0.2:
+ resolution: {integrity: sha512-jRDZ1IMLttGj41KcZvlrYAaI3CfqpLpfpf+Mfig13viT6NKvRzWZ+lXz0Y5D60w6uJIBAOGq9mSHf0gktF0duw==}
+ dependencies:
+ '@types/unist': 3.0.2
+ unist-util-stringify-position: 4.0.0
+ dev: false
+
+ /vfile@6.0.2:
+ resolution: {integrity: sha512-zND7NlS8rJYb/sPqkb13ZvbbUoExdbi4w3SfRrMq6R3FvnLQmmfpajJNITuuYm6AZ5uao9vy4BAos3EXBPf2rg==}
+ dependencies:
+ '@types/unist': 3.0.2
+ unist-util-stringify-position: 4.0.0
+ vfile-message: 4.0.2
+ dev: false
+
/vue-eslint-parser@8.3.0(eslint@8.8.0):
resolution: {integrity: sha512-dzHGG3+sYwSf6zFBa0Gi9ZDshD7+ad14DGOdTLjruRVgZXe2J+DcZ9iUhyR48z5g1PqRa20yt3Njna/veLJL/g==}
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
@@ -13640,6 +14203,10 @@ packages:
use-sync-external-store: 1.2.0(react@18.2.0)
dev: false
+ /zwitch@2.0.4:
+ resolution: {integrity: sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A==}
+ dev: false
+
github.com/6174/comflowy-image-editor/40d5128384d01c89ae7681402ac9de7355d0c48d(@types/react@18.2.21)(react-dom@18.2.0)(react-konva@18.2.10)(react@18.2.0)(styled-components@5.3.11):
resolution: {tarball: https://codeload.github.com/6174/comflowy-image-editor/tar.gz/40d5128384d01c89ae7681402ac9de7355d0c48d}
id: github.com/6174/comflowy-image-editor/40d5128384d01c89ae7681402ac9de7355d0c48d
From a9b25b47d03593d2b7103a6f38b979681ee2c762 Mon Sep 17 00:00:00 2001
From: Marc Chen <570171025@qq.com>
Date: Fri, 30 Aug 2024 10:37:30 +0800
Subject: [PATCH 08/12] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E4=BB=A3=E7=A0=81?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../store/app-state/app-state-create-doc-management-hooks.ts | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/packages/common/store/app-state/app-state-create-doc-management-hooks.ts b/packages/common/store/app-state/app-state-create-doc-management-hooks.ts
index b580ed6c..81682355 100644
--- a/packages/common/store/app-state/app-state-create-doc-management-hooks.ts
+++ b/packages/common/store/app-state/app-state-create-doc-management-hooks.ts
@@ -37,7 +37,8 @@ export default function createHook(set: AppStateSetter, get: AppStateGetter): Pa
}));
const st = get();
throttledUpdateDocument({
- ...st.persistedWorkflow!,
+ // ...st.persistedWorkflow!,
+ id: st.persistedWorkflow!,
...updates,
last_edit_time,
});
From e48ebbaf3980b2f41bf34cd55f306bc1f861d2be Mon Sep 17 00:00:00 2001
From: Marc Chen <570171025@qq.com>
Date: Fri, 30 Aug 2024 10:45:35 +0800
Subject: [PATCH 09/12] max textarea height
---
.../workflow-editor/reactflow-input/reactflow-input.tsx | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/apps/electron-frontend/src/components/workflow-editor/reactflow-input/reactflow-input.tsx b/apps/electron-frontend/src/components/workflow-editor/reactflow-input/reactflow-input.tsx
index 8199ecee..238af950 100644
--- a/apps/electron-frontend/src/components/workflow-editor/reactflow-input/reactflow-input.tsx
+++ b/apps/electron-frontend/src/components/workflow-editor/reactflow-input/reactflow-input.tsx
@@ -173,7 +173,7 @@ function InputComponent({
autoSize
className='nopan nodrag'
placeholder={name}
- style={{ minHeight: 128, width: '100%', marginBottom: 10 }}
+ style={{ minHeight: 128, width: '100%', marginBottom: 10, maxHeight: 600 }}
value={value}
onChange={(ev) => onChange(ev.target.value)}
/>
From a67a7ce7fe7b0898df93efbfa5a174ccf87ac955 Mon Sep 17 00:00:00 2001
From: Marc Chen <570171025@qq.com>
Date: Fri, 30 Aug 2024 10:52:33 +0800
Subject: [PATCH 10/12] stylefix
---
.../reactflow-node/reactflow-node.style.module.scss | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/apps/electron-frontend/src/components/workflow-editor/reactflow-node/reactflow-node.style.module.scss b/apps/electron-frontend/src/components/workflow-editor/reactflow-node/reactflow-node.style.module.scss
index 841bcff9..96c6356c 100644
--- a/apps/electron-frontend/src/components/workflow-editor/reactflow-node/reactflow-node.style.module.scss
+++ b/apps/electron-frontend/src/components/workflow-editor/reactflow-node/reactflow-node.style.module.scss
@@ -119,7 +119,7 @@
cursor: pointer;
transition: var(--transition);
&:hover {
- background-color: var(--backgroundColorL2);
+ // background-color: transparent !important;
}
}
.progress-bar {
From 49b59bfa97b3ed8f60dc7e0ddae31d9e49467020 Mon Sep 17 00:00:00 2001
From: Jimmy Wong
Date: Fri, 30 Aug 2024 14:49:53 +0800
Subject: [PATCH 11/12] update 0.2.3-alpha
---
README.md | 6 +++---
apps/electron-backend/layers/main/src/index.ts | 4 ++--
apps/electron-backend/package.json | 2 +-
apps/electron-frontend/.env.development | 2 +-
apps/electron-frontend/.env.production | 2 +-
.../src/components/setting-modal/setting-modal.tsx | 2 +-
.../src/components/templates/data/Batch-image-workflow.json | 2 +-
.../templates/data/Canny-ControlNet-workflow.json | 2 +-
.../templates/data/Hi-res-fix-latent-upscale-workflow.json | 2 +-
.../src/components/templates/data/Inpainting-workflow.json | 2 +-
.../src/components/templates/data/LCM-LoRA-workflow.json | 2 +-
.../src/components/templates/data/LoRA-workflow.json | 2 +-
.../src/components/templates/data/Outpainting-workflow.json | 2 +-
.../components/templates/data/Pose-ControlNet-workflow.json | 2 +-
.../templates/data/SDXL-prompt-styler-workflow.json | 2 +-
.../templates/data/Scribble-ControlNet-workflow.json | 2 +-
.../components/templates/data/Simple-img2img-workflow.json | 2 +-
.../src/components/templates/data/Style-model-workflow.json | 2 +-
.../data/Upscale-pixel-and-Hi-res-fix-workflow.json | 2 +-
.../templates/data/Upscale-pixel-by-algorithm-workflow.json | 2 +-
.../templates/data/Upscale-pixel-by-model-workflow.json | 2 +-
.../src/components/templates/data/default-workflow.json | 2 +-
.../components/templates/data/unCLIP-model-workflow.json | 2 +-
apps/electron-package/package-lock.json | 4 ++--
apps/electron-package/package.json | 2 +-
25 files changed, 29 insertions(+), 29 deletions(-)
diff --git a/README.md b/README.md
index 45263ecc..11bed324 100755
--- a/README.md
+++ b/README.md
@@ -20,9 +20,9 @@ If you like ComflowySpace, give our repo a [⭐ Star](https://github.com/6174/co
## Download
* **MacOS:**
- * [Mac Intel](https://github.com/6174/comflowyspace/releases/download/v0.2.2-alpha/comflowy-0.2.2-alpha.dmg) (Note that if you have an Intel Macbook, make sure it has AMD graphics before installing, otherwise it won't work!)
- * [Mac M](https://github.com/6174/comflowyspace/releases/download/v0.2.2-alpha/comflowy-0.2.2-alpha-arm64.dmg)
-* **[Windows](https://github.com/6174/comflowyspace/releases/download/v0.2.2-alpha/comflowy-0.2.2-alpha.zip)**
+ * [Mac Intel](https://github.com/6174/comflowyspace/releases/download/v0.2.3-alpha/comflowy-0.2.3-alpha.dmg) (Note that if you have an Intel Macbook, make sure it has AMD graphics before installing, otherwise it won't work!)
+ * [Mac M](https://github.com/6174/comflowyspace/releases/download/v0.2.3-alpha/comflowy-0.2.3-alpha-arm64.dmg)
+* **[Windows](https://github.com/6174/comflowyspace/releases/download/v0.2.3-alpha/comflowy-0.2.3-alpha.zip)**
## Cloud Version
If your computer's performance isn't sufficient for the local version, you can also try our [cloud version](https://www.comflowy.com).
diff --git a/apps/electron-backend/layers/main/src/index.ts b/apps/electron-backend/layers/main/src/index.ts
index dfce9f4a..4f5e3ad8 100755
--- a/apps/electron-backend/layers/main/src/index.ts
+++ b/apps/electron-backend/layers/main/src/index.ts
@@ -20,8 +20,8 @@ log.transports.file.format = '{level} {text}';
app.setAboutPanelOptions({
applicationName: 'Comflowy',
- applicationVersion: '0.2.2-alpha',
- version: '0.2.2-alpha',
+ applicationVersion: '0.2.3-alpha',
+ version: '0.2.3-alpha',
copyright: 'Copyright © 2024 https://www.comflowy.com',
authors: ['@Marc Chen', '@Jimmy Wang'],
website: 'https://www.comflowy.com',
diff --git a/apps/electron-backend/package.json b/apps/electron-backend/package.json
index 9dec1a88..14a3e76a 100644
--- a/apps/electron-backend/package.json
+++ b/apps/electron-backend/package.json
@@ -1,6 +1,6 @@
{
"name": "comflowy",
- "version": "0.2.2-alpha",
+ "version": "0.2.3-alpha",
"private": true,
"main": "layers/main/dist/index.js",
"scripts": {
diff --git a/apps/electron-frontend/.env.development b/apps/electron-frontend/.env.development
index b1b60418..509146f6 100644
--- a/apps/electron-frontend/.env.development
+++ b/apps/electron-frontend/.env.development
@@ -1,4 +1,4 @@
-NEXT_PUBLIC_APP_VERSION=0.2.2-alpha
+NEXT_PUBLIC_APP_VERSION=0.2.3-alpha
NEXT_PUBLIC_API_SERVER=http://localhost:3000
SENTRY_AUTH_TOKEN=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
NEXT_PUBLIC_APTABASE_API_KEY=A-SH-5854572926
diff --git a/apps/electron-frontend/.env.production b/apps/electron-frontend/.env.production
index 2d62f1ed..a69a4f04 100644
--- a/apps/electron-frontend/.env.production
+++ b/apps/electron-frontend/.env.production
@@ -1,4 +1,4 @@
-NEXT_PUBLIC_APP_VERSION=0.2.2-alpha
+NEXT_PUBLIC_APP_VERSION=0.2.3-alpha
NEXT_PUBLIC_API_SERVER=https://www.comflowy.com
SENTRY_AUTH_TOKEN=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
NEXT_PUBLIC_FG_ENABLE_SUBFLOW=disabled
diff --git a/apps/electron-frontend/src/components/setting-modal/setting-modal.tsx b/apps/electron-frontend/src/components/setting-modal/setting-modal.tsx
index 269ddc7e..1ed19563 100644
--- a/apps/electron-frontend/src/components/setting-modal/setting-modal.tsx
+++ b/apps/electron-frontend/src/components/setting-modal/setting-modal.tsx
@@ -384,7 +384,7 @@ function AboutComflowySpace() {