@oomol-lab/open-flow 0.1.0-beta.81 → 0.1.0-beta.82

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (48) hide show
  1. package/README.md +35 -0
  2. package/dist/browser/{FlowCanvas-CrsiDHK8.js → FlowCanvas-Dew2fmoT.js} +55 -274
  3. package/dist/browser/{createResourceDialog-CS3u9ga9.js → createResourceDialog-bdOJa5Zk.js} +2 -1
  4. package/dist/browser/{exportPng-BOPfjeEi.js → exportPng-Cjdb6COo.js} +2 -2
  5. package/dist/browser/{flowChanges-CFj5pL4Y.js → flowChanges-URBEd4DI.js} +2583 -71
  6. package/dist/browser/{flowWorkspace-BeQaeJ3e.js → flowWorkspace-BlXx-yAn.js} +440 -2578
  7. package/dist/browser/{markdownContent-CAG_CQfH.js → markdownContent-D8G_oNOe.js} +18 -41
  8. package/dist/browser/{markdownContent-frwDfQQU.js → markdownContent-IS8xXDoc.js} +18 -40
  9. package/dist/browser/preview.css +88 -80
  10. package/dist/browser/preview.js +150 -60
  11. package/dist/browser/ui.css +8 -0
  12. package/dist/browser/{dist-CHwj9BhV.js → videoLink-NAWDmBtf.js} +35 -1
  13. package/dist/browser/workbench-contract.d.ts +6 -0
  14. package/dist/browser/workbench.css +259 -251
  15. package/dist/browser/workbench.d.ts +2 -0
  16. package/dist/browser/workbench.js +289 -137
  17. package/dist/browser/{ContentIcon-CMn0c-kl.js → wrapLayout-DZvW9dBs.js} +4397 -4152
  18. package/dist/command/index.js +43 -41
  19. package/dist/common/authoring.d.ts +1 -1
  20. package/dist/common/control-api-conformance.js +306 -2
  21. package/dist/common/control-api.d.ts +20 -0
  22. package/dist/common/control-api.js +306 -4
  23. package/dist/common/control-requests.d.ts +3 -5
  24. package/dist/common/control-requests.js +5 -7
  25. package/dist/common/flow-encoding.d.ts +1 -0
  26. package/dist/common/flow-encoding.js +167 -1
  27. package/dist/common/flow-semantics.js +20 -0
  28. package/dist/common/flow-workflowBundle.d.ts +27 -0
  29. package/dist/common/flow-workflowFile.d.ts +2 -0
  30. package/dist/common/flow-workflowReferences.d.ts +4 -0
  31. package/dist/common/mcp.d.ts +2 -0
  32. package/dist/common/mcp.js +312 -4
  33. package/dist/render/browser/licenses.md +4047 -0
  34. package/dist/render/browser/runtime.css +14877 -0
  35. package/dist/render/browser/runtime.js +266765 -0
  36. package/dist/render/common/png.d.ts +24 -0
  37. package/dist/render/node/index.d.ts +11 -0
  38. package/dist/render/node/index.js +9491 -0
  39. package/dist/render/node/licenses.md +75 -0
  40. package/package.json +12 -2
  41. package/src/control/common/api.ts +50 -0
  42. package/src/control/common/flowDecoders.ts +2 -0
  43. package/src/control/common/mcp.ts +4 -4
  44. package/src/control/common/requests.ts +12 -1
  45. package/src/flow/common/encoding.ts +1 -0
  46. package/src/flow/common/workflowBundle.ts +117 -0
  47. package/src/flow/common/workflowFile.ts +4 -0
  48. package/src/flow/common/workflowReferences.ts +20 -0
@@ -1,5 +1,5 @@
1
1
  import { o as __toESM, r as __exportAll, t as __commonJSMin } from "./rolldown-runtime-CEgmsyvS.js";
2
- import { i as isString, l as useTranslate } from "./dist-CHwj9BhV.js";
2
+ import { d as useTranslate, o as isString, t as getVideoLink } from "./videoLink-NAWDmBtf.js";
3
3
  import { memo, useEffect, useMemo, useRef } from "react";
4
4
  import { Fragment as Fragment$1, jsx, jsxs } from "react/jsx-runtime";
5
5
  //#region ../../node_modules/.bun/deepmerge@4.3.1/node_modules/deepmerge/dist/cjs.js
@@ -76506,8 +76506,8 @@ function createRehypePlugins(t) {
76506
76506
  "iframe": [
76507
76507
  "src",
76508
76508
  "allow",
76509
- "referrerpolicy",
76510
- "allowfullscreen"
76509
+ "referrerPolicy",
76510
+ "allowFullScreen"
76511
76511
  ],
76512
76512
  "*": ["className", "style"]
76513
76513
  }
@@ -76520,50 +76520,27 @@ if (typeof window !== "undefined") {
76520
76520
  isWebProtocol = protocol === "http:" || protocol === "https:";
76521
76521
  }
76522
76522
  function rewriteMaybeVideoLinkToIframe(node, t) {
76523
- if (!isWebProtocol) return;
76524
- const firstChild = node.type == "element" ? node.children[0] : void 0;
76525
- if (node.type === "element" && node.tagName === "a" && firstChild?.type == "element" && firstChild.tagName === "img") {
76526
- const href = node.properties.href;
76527
- if (isString(href) && isSupportedVideoLink(href)) inPlaceEditVideoLink(node, href, t);
76528
- }
76529
- }
76530
- var youtubeRegex = /https?:\/\/(?:www\.)?youtube\.com\/watch\?v=([a-zA-Z0-9_-]+)/;
76531
- var bilibiliRegex = /https?:\/\/(?:www\.)?bilibili\.com\/video\/BV([a-zA-Z0-9]+)/;
76532
- var commonIframeProps = {
76533
- width: "100%",
76534
- height: "auto",
76535
- frameborder: "0",
76536
- allow: "accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share",
76537
- referrerpolicy: "strict-origin-when-cross-origin",
76538
- allowfullscreen: true
76539
- };
76540
- function isSupportedVideoLink(url) {
76541
- return youtubeRegex.test(url) || bilibiliRegex.test(url);
76542
- }
76543
- function inPlaceEditVideoLink(node, url, t) {
76544
- let match = url.match(youtubeRegex);
76545
- if (match) {
76546
- const videoId = match[1];
76547
- node.tagName = "iframe";
76548
- node.properties = {
76549
- src: `https://www.youtube.com/embed/${videoId}`,
76550
- title: t("markdown.videoYouTube"),
76551
- ...commonIframeProps
76552
- };
76553
- node.children = [];
76554
- }
76555
- match = url.match(bilibiliRegex);
76556
- if (match) {
76557
- const videoId = match[1];
76523
+ if (!isWebProtocol || node.type !== "element" || node.tagName !== "a") return;
76524
+ const href = node.properties.href;
76525
+ const firstChild = node.children[0];
76526
+ if (!isString(href) || firstChild?.type !== "element" || firstChild.tagName !== "img") return;
76527
+ const video = getVideoLink(href);
76528
+ if (video) {
76558
76529
  node.tagName = "iframe";
76559
76530
  node.properties = {
76560
- src: `https://player.bilibili.com/player.html?bvid=${videoId}`,
76561
- title: t("markdown.videoBilibili"),
76562
- ...commonIframeProps
76531
+ ...commonIframeProps,
76532
+ src: video.src,
76533
+ title: t(video.titleKey)
76563
76534
  };
76564
76535
  node.children = [];
76565
76536
  }
76566
76537
  }
76538
+ var commonIframeProps = {
76539
+ style: "display: block; width: 100%; height: auto; aspect-ratio: 16 / 9; border: 0; border-radius: 8px",
76540
+ allow: "accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share",
76541
+ referrerPolicy: "strict-origin-when-cross-origin",
76542
+ allowFullScreen: true
76543
+ };
76567
76544
  var MarkdownContent = /* @__PURE__ */ memo(function MarkdownContent({ dark, unstyled, text, className = "", components, mermaid }) {
76568
76545
  const t = useTranslate();
76569
76546
  const rehypePlugins = useMemo(() => createRehypePlugins(t), [t]);
@@ -1,5 +1,6 @@
1
1
  import { o as __toESM, r as __exportAll, t as __commonJSMin } from "./rolldown-runtime-CEgmsyvS.js";
2
2
  import { i as isString, l as useTranslate } from "./dist-BFmpkX4P.js";
3
+ import { r as getVideoLink } from "./FlowCanvas-Dew2fmoT.js";
3
4
  import { memo, useEffect, useMemo, useRef } from "react";
4
5
  import { Fragment as Fragment$1, jsx, jsxs } from "react/jsx-runtime";
5
6
  //#region ../../node_modules/.bun/deepmerge@4.3.1/node_modules/deepmerge/dist/cjs.js
@@ -76506,8 +76507,8 @@ function createRehypePlugins(t) {
76506
76507
  "iframe": [
76507
76508
  "src",
76508
76509
  "allow",
76509
- "referrerpolicy",
76510
- "allowfullscreen"
76510
+ "referrerPolicy",
76511
+ "allowFullScreen"
76511
76512
  ],
76512
76513
  "*": ["className", "style"]
76513
76514
  }
@@ -76520,50 +76521,27 @@ if (typeof window !== "undefined") {
76520
76521
  isWebProtocol = protocol === "http:" || protocol === "https:";
76521
76522
  }
76522
76523
  function rewriteMaybeVideoLinkToIframe(node, t) {
76523
- if (!isWebProtocol) return;
76524
- const firstChild = node.type == "element" ? node.children[0] : void 0;
76525
- if (node.type === "element" && node.tagName === "a" && firstChild?.type == "element" && firstChild.tagName === "img") {
76526
- const href = node.properties.href;
76527
- if (isString(href) && isSupportedVideoLink(href)) inPlaceEditVideoLink(node, href, t);
76528
- }
76529
- }
76530
- var youtubeRegex = /https?:\/\/(?:www\.)?youtube\.com\/watch\?v=([a-zA-Z0-9_-]+)/;
76531
- var bilibiliRegex = /https?:\/\/(?:www\.)?bilibili\.com\/video\/BV([a-zA-Z0-9]+)/;
76532
- var commonIframeProps = {
76533
- width: "100%",
76534
- height: "auto",
76535
- frameborder: "0",
76536
- allow: "accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share",
76537
- referrerpolicy: "strict-origin-when-cross-origin",
76538
- allowfullscreen: true
76539
- };
76540
- function isSupportedVideoLink(url) {
76541
- return youtubeRegex.test(url) || bilibiliRegex.test(url);
76542
- }
76543
- function inPlaceEditVideoLink(node, url, t) {
76544
- let match = url.match(youtubeRegex);
76545
- if (match) {
76546
- const videoId = match[1];
76547
- node.tagName = "iframe";
76548
- node.properties = {
76549
- src: `https://www.youtube.com/embed/${videoId}`,
76550
- title: t("markdown.videoYouTube"),
76551
- ...commonIframeProps
76552
- };
76553
- node.children = [];
76554
- }
76555
- match = url.match(bilibiliRegex);
76556
- if (match) {
76557
- const videoId = match[1];
76524
+ if (!isWebProtocol || node.type !== "element" || node.tagName !== "a") return;
76525
+ const href = node.properties.href;
76526
+ const firstChild = node.children[0];
76527
+ if (!isString(href) || firstChild?.type !== "element" || firstChild.tagName !== "img") return;
76528
+ const video = getVideoLink(href);
76529
+ if (video) {
76558
76530
  node.tagName = "iframe";
76559
76531
  node.properties = {
76560
- src: `https://player.bilibili.com/player.html?bvid=${videoId}`,
76561
- title: t("markdown.videoBilibili"),
76562
- ...commonIframeProps
76532
+ ...commonIframeProps,
76533
+ src: video.src,
76534
+ title: t(video.titleKey)
76563
76535
  };
76564
76536
  node.children = [];
76565
76537
  }
76566
76538
  }
76539
+ var commonIframeProps = {
76540
+ style: "display: block; width: 100%; height: auto; aspect-ratio: 16 / 9; border: 0; border-radius: 8px",
76541
+ allow: "accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share",
76542
+ referrerPolicy: "strict-origin-when-cross-origin",
76543
+ allowFullScreen: true
76544
+ };
76567
76545
  var MarkdownContent = /* @__PURE__ */ memo(function MarkdownContent({ dark, unstyled, text, className = "", components, mermaid }) {
76568
76546
  const t = useTranslate();
76569
76547
  const rehypePlugins = useMemo(() => createRehypePlugins(t), [t]);
@@ -1885,6 +1885,10 @@
1885
1885
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 520px), 1fr));
1886
1886
  }
1887
1887
 
1888
+ :where(.open-flow-theme, .open-flow-workbench, .open-flow-canvas-root) .grid-rows-\[auto_auto_minmax\(0\,1fr\)_auto\] {
1889
+ grid-template-rows: auto auto minmax(0, 1fr) auto;
1890
+ }
1891
+
1888
1892
  :where(.open-flow-theme, .open-flow-workbench, .open-flow-canvas-root) .grid-rows-\[auto_minmax\(0\,1fr\)_auto\] {
1889
1893
  grid-template-rows: auto minmax(0, 1fr) auto;
1890
1894
  }
@@ -2752,6 +2756,10 @@
2752
2756
  padding-left: calc(var(--spacing) * 4);
2753
2757
  }
2754
2758
 
2759
+ :where(.open-flow-theme, .open-flow-workbench, .open-flow-canvas-root) .pl-5 {
2760
+ padding-left: calc(var(--spacing) * 5);
2761
+ }
2762
+
2755
2763
  :where(.open-flow-theme, .open-flow-workbench, .open-flow-canvas-root) .pl-6 {
2756
2764
  padding-left: calc(var(--spacing) * 6);
2757
2765
  }
@@ -10947,20 +10955,20 @@ html[data-overlayscrollbars-viewport~=scrollbarHidden] > body::-webkit-scrollbar
10947
10955
 
10948
10956
  .ValuePreview_json_4d5e2 {
10949
10957
  padding: 10px;
10950
- }.CommentNodeContent_body_01471 {
10958
+ }.CommentNodeContent_body_7c741 {
10951
10959
  position: relative;
10952
10960
  height: 100%;
10953
10961
  min-height: 0;
10954
10962
  }
10955
10963
 
10956
- .CommentNodeContent_container_01471 {
10964
+ .CommentNodeContent_container_7c741 {
10957
10965
  height: 100%;
10958
10966
  min-height: 0;
10959
- overflow: auto;
10967
+ overflow: hidden;
10960
10968
  overscroll-behavior: contain;
10961
10969
  }
10962
10970
 
10963
- .CommentNodeContent_resizeButton_01471 {
10971
+ .CommentNodeContent_resizeButton_7c741 {
10964
10972
  position: absolute;
10965
10973
  right: 2px;
10966
10974
  bottom: 2px;
@@ -10976,27 +10984,27 @@ html[data-overlayscrollbars-viewport~=scrollbarHidden] > body::-webkit-scrollbar
10976
10984
  cursor: nwse-resize;
10977
10985
  touch-action: none;
10978
10986
  }
10979
- .CommentNodeContent_resizeButton_01471 > i {
10987
+ .CommentNodeContent_resizeButton_7c741 > i {
10980
10988
  width: 18px;
10981
10989
  height: 18px;
10982
10990
  }
10983
- .CommentNodeContent_resizeButton_01471:hover, .CommentNodeContent_resizeButton_01471:active {
10991
+ .CommentNodeContent_resizeButton_7c741:hover, .CommentNodeContent_resizeButton_7c741:active {
10984
10992
  color: var(--text-4);
10985
10993
  }
10986
- .CommentNodeContent_resizeButton_01471:focus-visible {
10994
+ .CommentNodeContent_resizeButton_7c741:focus-visible {
10987
10995
  outline: 2px solid var(--comment-selected-border);
10988
10996
  outline-offset: -2px;
10989
10997
  }
10990
10998
 
10991
- .open-flow-canvas-node-minimap1 .CommentNodeContent_sourceCode_01471 {
10999
+ .open-flow-canvas-node-minimap1 .CommentNodeContent_sourceCode_7c741 {
10992
11000
  visibility: hidden;
10993
11001
  }
10994
11002
 
10995
- .CommentNodeContent_container_01471 .markdown-body {
11003
+ .CommentNodeContent_container_7c741 .markdown-body {
10996
11004
  padding: 0;
10997
11005
  }
10998
11006
 
10999
- .CommentNodeContent_markdown_01471 {
11007
+ .CommentNodeContent_markdown_7c741 {
11000
11008
  padding: 12px 14px;
11001
11009
  font-size: 13px;
11002
11010
  line-height: 1.65;
@@ -11007,116 +11015,116 @@ html[data-overlayscrollbars-viewport~=scrollbarHidden] > body::-webkit-scrollbar
11007
11015
  color: var(--note-ink);
11008
11016
  font-family: var(--font-sans);
11009
11017
  }
11010
- .CommentNodeContent_markdown_01471 h1,
11011
- .CommentNodeContent_markdown_01471 h2,
11012
- .CommentNodeContent_markdown_01471 h3,
11013
- .CommentNodeContent_markdown_01471 h4,
11014
- .CommentNodeContent_markdown_01471 h5,
11015
- .CommentNodeContent_markdown_01471 h6 {
11018
+ .CommentNodeContent_markdown_7c741 h1,
11019
+ .CommentNodeContent_markdown_7c741 h2,
11020
+ .CommentNodeContent_markdown_7c741 h3,
11021
+ .CommentNodeContent_markdown_7c741 h4,
11022
+ .CommentNodeContent_markdown_7c741 h5,
11023
+ .CommentNodeContent_markdown_7c741 h6 {
11016
11024
  color: var(--text-4);
11017
11025
  margin: 18px 0 10px;
11018
11026
  line-height: 1.4;
11019
11027
  border-color: var(--note-rule);
11020
11028
  }
11021
- .CommentNodeContent_markdown_01471 strong,
11022
- .CommentNodeContent_markdown_01471 b {
11029
+ .CommentNodeContent_markdown_7c741 strong,
11030
+ .CommentNodeContent_markdown_7c741 b {
11023
11031
  font-weight: 600;
11024
11032
  }
11025
- .CommentNodeContent_markdown_01471 h1,
11026
- .CommentNodeContent_markdown_01471 h2,
11027
- .CommentNodeContent_markdown_01471 h3,
11028
- .CommentNodeContent_markdown_01471 h4,
11029
- .CommentNodeContent_markdown_01471 h5,
11030
- .CommentNodeContent_markdown_01471 h6 {
11033
+ .CommentNodeContent_markdown_7c741 h1,
11034
+ .CommentNodeContent_markdown_7c741 h2,
11035
+ .CommentNodeContent_markdown_7c741 h3,
11036
+ .CommentNodeContent_markdown_7c741 h4,
11037
+ .CommentNodeContent_markdown_7c741 h5,
11038
+ .CommentNodeContent_markdown_7c741 h6 {
11031
11039
  font-weight: 600;
11032
11040
  }
11033
- .CommentNodeContent_markdown_01471 h1,
11034
- .CommentNodeContent_markdown_01471 h2 {
11041
+ .CommentNodeContent_markdown_7c741 h1,
11042
+ .CommentNodeContent_markdown_7c741 h2 {
11035
11043
  padding-bottom: 6px;
11036
11044
  border-bottom: 1px solid var(--note-rule);
11037
11045
  }
11038
- .CommentNodeContent_markdown_01471 img,
11039
- .CommentNodeContent_markdown_01471 video,
11040
- .CommentNodeContent_markdown_01471 svg {
11046
+ .CommentNodeContent_markdown_7c741 img,
11047
+ .CommentNodeContent_markdown_7c741 video,
11048
+ .CommentNodeContent_markdown_7c741 svg {
11041
11049
  max-width: 100%;
11042
11050
  }
11043
- .CommentNodeContent_markdown_01471 img {
11051
+ .CommentNodeContent_markdown_7c741 img {
11044
11052
  height: auto;
11045
11053
  }
11046
- .CommentNodeContent_markdown_01471 ul {
11054
+ .CommentNodeContent_markdown_7c741 ul {
11047
11055
  list-style: disc;
11048
11056
  }
11049
- .CommentNodeContent_markdown_01471 ol {
11057
+ .CommentNodeContent_markdown_7c741 ol {
11050
11058
  list-style: decimal;
11051
11059
  }
11052
- .CommentNodeContent_markdown_01471 .task-list-item {
11060
+ .CommentNodeContent_markdown_7c741 .task-list-item {
11053
11061
  list-style: none;
11054
11062
  }
11055
- .CommentNodeContent_markdown_01471 h1 {
11063
+ .CommentNodeContent_markdown_7c741 h1 {
11056
11064
  font-size: 20px;
11057
11065
  }
11058
- .CommentNodeContent_markdown_01471 h2 {
11066
+ .CommentNodeContent_markdown_7c741 h2 {
11059
11067
  font-size: 17px;
11060
11068
  }
11061
- .CommentNodeContent_markdown_01471 h3 {
11069
+ .CommentNodeContent_markdown_7c741 h3 {
11062
11070
  font-size: 15px;
11063
11071
  }
11064
- .CommentNodeContent_markdown_01471 h4,
11065
- .CommentNodeContent_markdown_01471 h5,
11066
- .CommentNodeContent_markdown_01471 h6 {
11072
+ .CommentNodeContent_markdown_7c741 h4,
11073
+ .CommentNodeContent_markdown_7c741 h5,
11074
+ .CommentNodeContent_markdown_7c741 h6 {
11067
11075
  font-size: 13px;
11068
11076
  }
11069
- .CommentNodeContent_markdown_01471 p,
11070
- .CommentNodeContent_markdown_01471 ul,
11071
- .CommentNodeContent_markdown_01471 ol,
11072
- .CommentNodeContent_markdown_01471 blockquote,
11073
- .CommentNodeContent_markdown_01471 pre,
11074
- .CommentNodeContent_markdown_01471 table {
11077
+ .CommentNodeContent_markdown_7c741 p,
11078
+ .CommentNodeContent_markdown_7c741 ul,
11079
+ .CommentNodeContent_markdown_7c741 ol,
11080
+ .CommentNodeContent_markdown_7c741 blockquote,
11081
+ .CommentNodeContent_markdown_7c741 pre,
11082
+ .CommentNodeContent_markdown_7c741 table {
11075
11083
  margin-top: 0;
11076
11084
  margin-bottom: 12px;
11077
11085
  }
11078
- .CommentNodeContent_markdown_01471 > :first-child {
11086
+ .CommentNodeContent_markdown_7c741 > :first-child {
11079
11087
  margin-top: 0;
11080
11088
  }
11081
- .CommentNodeContent_markdown_01471 > :last-child {
11089
+ .CommentNodeContent_markdown_7c741 > :last-child {
11082
11090
  margin-bottom: 0;
11083
11091
  }
11084
- .CommentNodeContent_markdown_01471 ul,
11085
- .CommentNodeContent_markdown_01471 ol {
11092
+ .CommentNodeContent_markdown_7c741 ul,
11093
+ .CommentNodeContent_markdown_7c741 ol {
11086
11094
  padding-inline-start: 20px;
11087
11095
  }
11088
- .CommentNodeContent_markdown_01471 li + li {
11096
+ .CommentNodeContent_markdown_7c741 li + li {
11089
11097
  margin-top: 4px;
11090
11098
  }
11091
- .CommentNodeContent_markdown_01471 li > p {
11099
+ .CommentNodeContent_markdown_7c741 li > p {
11092
11100
  margin-bottom: 6px;
11093
11101
  }
11094
- .CommentNodeContent_markdown_01471 li > ul,
11095
- .CommentNodeContent_markdown_01471 li > ol {
11102
+ .CommentNodeContent_markdown_7c741 li > ul,
11103
+ .CommentNodeContent_markdown_7c741 li > ol {
11096
11104
  margin-bottom: 0;
11097
11105
  }
11098
- .CommentNodeContent_markdown_01471 a {
11106
+ .CommentNodeContent_markdown_7c741 a {
11099
11107
  color: var(--note-ink);
11100
11108
  text-decoration: underline;
11101
11109
  text-decoration-color: var(--comment-selected-border);
11102
11110
  text-underline-offset: 3px;
11103
11111
  }
11104
- .CommentNodeContent_markdown_01471 a:hover {
11112
+ .CommentNodeContent_markdown_7c741 a:hover {
11105
11113
  color: var(--text-4);
11106
11114
  }
11107
- .CommentNodeContent_markdown_01471 code,
11108
- .CommentNodeContent_markdown_01471 pre {
11115
+ .CommentNodeContent_markdown_7c741 code,
11116
+ .CommentNodeContent_markdown_7c741 pre {
11109
11117
  overflow-x: auto;
11110
11118
  font-family: var(--font-monospace);
11111
11119
  }
11112
- .CommentNodeContent_markdown_01471 code {
11120
+ .CommentNodeContent_markdown_7c741 code {
11113
11121
  padding: 2px 4px;
11114
11122
  font-size: 0.92em;
11115
11123
  background: var(--note-code-bg);
11116
11124
  color: var(--note-ink);
11117
11125
  border-radius: 4px;
11118
11126
  }
11119
- .CommentNodeContent_markdown_01471 pre {
11127
+ .CommentNodeContent_markdown_7c741 pre {
11120
11128
  padding: 12px;
11121
11129
  background: var(--note-code-bg);
11122
11130
  border: 1px solid var(--note-rule);
@@ -11124,90 +11132,90 @@ html[data-overlayscrollbars-viewport~=scrollbarHidden] > body::-webkit-scrollbar
11124
11132
  font-size: 12px;
11125
11133
  line-height: 1.6;
11126
11134
  }
11127
- .CommentNodeContent_markdown_01471 pre code {
11135
+ .CommentNodeContent_markdown_7c741 pre code {
11128
11136
  padding: 0;
11129
11137
  font-size: inherit;
11130
11138
  white-space: pre;
11131
11139
  overflow-wrap: normal;
11132
11140
  }
11133
- .CommentNodeContent_markdown_01471 pre code,
11134
- .CommentNodeContent_markdown_01471 .hljs {
11141
+ .CommentNodeContent_markdown_7c741 pre code,
11142
+ .CommentNodeContent_markdown_7c741 .hljs {
11135
11143
  background: transparent;
11136
11144
  color: var(--note-ink);
11137
11145
  }
11138
- .CommentNodeContent_markdown_01471 .hljs-string {
11146
+ .CommentNodeContent_markdown_7c741 .hljs-string {
11139
11147
  color: var(--text-2);
11140
11148
  }
11141
- .CommentNodeContent_markdown_01471 .hljs-keyword,
11142
- .CommentNodeContent_markdown_01471 .hljs-literal {
11149
+ .CommentNodeContent_markdown_7c741 .hljs-keyword,
11150
+ .CommentNodeContent_markdown_7c741 .hljs-literal {
11143
11151
  font-weight: 600;
11144
11152
  }
11145
- .CommentNodeContent_markdown_01471 blockquote {
11153
+ .CommentNodeContent_markdown_7c741 blockquote {
11146
11154
  margin-inline: 0;
11147
11155
  color: var(--text-2);
11148
11156
  padding-inline: 12px 0;
11149
11157
  border-inline-start: 2px solid var(--comment-border);
11150
11158
  }
11151
- .CommentNodeContent_markdown_01471 hr {
11159
+ .CommentNodeContent_markdown_7c741 hr {
11152
11160
  margin: 16px 0;
11153
11161
  background: var(--note-rule);
11154
11162
  height: 1px;
11155
11163
  border: 0;
11156
11164
  }
11157
- .CommentNodeContent_markdown_01471 table {
11165
+ .CommentNodeContent_markdown_7c741 table {
11158
11166
  display: block;
11159
11167
  max-width: 100%;
11160
11168
  overflow-x: auto;
11161
11169
  border-collapse: collapse;
11162
11170
  width: 100%;
11163
11171
  }
11164
- .CommentNodeContent_markdown_01471 th,
11165
- .CommentNodeContent_markdown_01471 td {
11172
+ .CommentNodeContent_markdown_7c741 th,
11173
+ .CommentNodeContent_markdown_7c741 td {
11166
11174
  padding: 6px 8px;
11167
11175
  border: 1px solid var(--note-rule);
11168
11176
  text-align: start;
11169
11177
  }
11170
- .CommentNodeContent_markdown_01471 tr {
11178
+ .CommentNodeContent_markdown_7c741 tr {
11171
11179
  background: transparent;
11172
11180
  border-color: var(--note-rule);
11173
11181
  }
11174
- .CommentNodeContent_markdown_01471 tr:nth-child(2n) {
11182
+ .CommentNodeContent_markdown_7c741 tr:nth-child(2n) {
11175
11183
  background: var(--note-code-bg);
11176
11184
  }
11177
- .CommentNodeContent_markdown_01471 .CommentNodeContent_taskCheckbox_01471 {
11185
+ .CommentNodeContent_markdown_7c741 .CommentNodeContent_taskCheckbox_7c741 {
11178
11186
  display: inline-flex;
11179
11187
  width: 13px;
11180
11188
  height: 13px;
11181
11189
  margin: 0 6px 2px -20px;
11182
11190
  vertical-align: middle;
11183
- }.markdownPreview_container_c03ca {
11191
+ }.markdownPreview_container_2a1d9 {
11184
11192
  position: relative;
11193
+ height: 100%;
11185
11194
  outline-style: none;
11186
11195
  }
11187
11196
 
11188
- .markdownPreview_body_c03ca {
11197
+ .markdownPreview_body_2a1d9 {
11189
11198
  height: 100%;
11190
11199
  padding: 4px;
11191
11200
  user-select: text;
11192
- overflow-y: auto;
11193
11201
  box-sizing: border-box;
11194
11202
  }
11195
- .markdownPreview_body_c03ca video {
11203
+ .markdownPreview_body_2a1d9 video {
11196
11204
  max-height: 640px;
11197
11205
  min-height: 200px;
11198
11206
  max-width: 100% !important;
11199
11207
  }
11200
11208
 
11201
- .markdownPreview_draggable_c03ca .markdownPreview_body_c03ca {
11209
+ .markdownPreview_draggable_2a1d9 .markdownPreview_body_2a1d9 {
11202
11210
  user-select: none;
11203
11211
  cursor: default;
11204
11212
  }
11205
11213
 
11206
- .markdownPreview_body_c03ca pre code.hljs {
11214
+ .markdownPreview_body_2a1d9 pre code.hljs {
11207
11215
  padding: 0 !important;
11208
11216
  }
11209
11217
 
11210
- .markdownPreview_body_c03ca pre:has(code.language-mermaid > svg) {
11218
+ .markdownPreview_body_2a1d9 pre:has(code.language-mermaid > svg) {
11211
11219
  text-align: center;
11212
11220
  background-color: transparent;
11213
11221
  }.NodeHead_container_e9871 {