@redocly/theme 0.64.0-next.0 → 0.64.0-next.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/lib/components/SvgViewer/variables.dark.js +1 -1
- package/lib/core/styles/dark.js +34 -30
- package/lib/core/styles/global.js +36 -29
- package/lib/icons/ColorPaletteIcon/ColorPaletteIcon.d.ts +9 -0
- package/lib/icons/ColorPaletteIcon/ColorPaletteIcon.js +27 -0
- package/lib/icons/StopIcon/StopIcon.d.ts +9 -0
- package/lib/icons/StopIcon/StopIcon.js +22 -0
- package/lib/index.d.ts +2 -0
- package/lib/index.js +2 -0
- package/lib/markdoc/components/ExcalidrawDiagram/ExcalidrawDiagram.d.ts +7 -0
- package/lib/markdoc/components/ExcalidrawDiagram/ExcalidrawDiagram.js +95 -0
- package/lib/markdoc/components/ExcalidrawDiagram/variables.d.ts +1 -0
- package/lib/markdoc/components/ExcalidrawDiagram/variables.dark.d.ts +1 -0
- package/lib/markdoc/components/ExcalidrawDiagram/variables.dark.js +8 -0
- package/lib/markdoc/components/ExcalidrawDiagram/variables.js +15 -0
- package/lib/markdoc/components/Mermaid/Mermaid.js +2 -0
- package/lib/markdoc/components/default.d.ts +1 -0
- package/lib/markdoc/components/default.js +1 -0
- package/package.json +1 -1
- package/src/components/SvgViewer/variables.dark.ts +1 -1
- package/src/core/styles/dark.ts +4 -0
- package/src/core/styles/global.ts +8 -1
- package/src/icons/ColorPaletteIcon/ColorPaletteIcon.tsx +28 -0
- package/src/icons/StopIcon/StopIcon.tsx +23 -0
- package/src/index.ts +2 -0
- package/src/markdoc/components/ExcalidrawDiagram/ExcalidrawDiagram.tsx +85 -0
- package/src/markdoc/components/ExcalidrawDiagram/variables.dark.ts +5 -0
- package/src/markdoc/components/ExcalidrawDiagram/variables.ts +12 -0
- package/src/markdoc/components/Mermaid/Mermaid.tsx +2 -0
- package/src/markdoc/components/default.ts +1 -0
|
@@ -3,6 +3,6 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.svgViewerDarkMode = void 0;
|
|
4
4
|
const styled_components_1 = require("styled-components");
|
|
5
5
|
exports.svgViewerDarkMode = (0, styled_components_1.css) `
|
|
6
|
-
--svg-viewer-bg-color: var(--color-warm-grey-
|
|
6
|
+
--svg-viewer-bg-color: var(--color-warm-grey-3);
|
|
7
7
|
`;
|
|
8
8
|
//# sourceMappingURL=variables.dark.js.map
|
package/lib/core/styles/dark.js
CHANGED
|
@@ -4,21 +4,22 @@ exports.darkMode = void 0;
|
|
|
4
4
|
const styled_components_1 = require("styled-components");
|
|
5
5
|
const variables_dark_1 = require("../../components/Scorecard/variables.dark");
|
|
6
6
|
const variables_dark_2 = require("../../markdoc/components/Mermaid/variables.dark");
|
|
7
|
-
const variables_dark_3 = require("../../components/
|
|
8
|
-
const variables_dark_4 = require("../../components/
|
|
9
|
-
const variables_dark_5 = require("../../components/
|
|
10
|
-
const variables_dark_6 = require("../../components/
|
|
11
|
-
const variables_dark_7 = require("../../
|
|
12
|
-
const variables_dark_8 = require("../../
|
|
13
|
-
const variables_dark_9 = require("../../components/
|
|
14
|
-
const variables_dark_10 = require("../../components/
|
|
15
|
-
const variables_dark_11 = require("../../
|
|
16
|
-
const variables_dark_12 = require("../../components/
|
|
17
|
-
const variables_dark_13 = require("../../components/
|
|
18
|
-
const variables_dark_14 = require("../../components/
|
|
19
|
-
const variables_dark_15 = require("../../components/
|
|
20
|
-
const variables_dark_16 = require("../../components/
|
|
21
|
-
const variables_dark_17 = require("../../components/
|
|
7
|
+
const variables_dark_3 = require("../../markdoc/components/ExcalidrawDiagram/variables.dark");
|
|
8
|
+
const variables_dark_4 = require("../../components/Menu/variables.dark");
|
|
9
|
+
const variables_dark_5 = require("../../components/Button/variables.dark");
|
|
10
|
+
const variables_dark_6 = require("../../components/Buttons/variables.dark");
|
|
11
|
+
const variables_dark_7 = require("../../components/Segmented/variables.dark");
|
|
12
|
+
const variables_dark_8 = require("../../icons/CheckboxIcon/variables.dark");
|
|
13
|
+
const variables_dark_9 = require("../../components/Tag/variables.dark");
|
|
14
|
+
const variables_dark_10 = require("../../components/StatusCode/variables.dark");
|
|
15
|
+
const variables_dark_11 = require("../../components/Switch/variables.dark");
|
|
16
|
+
const variables_dark_12 = require("../../markdoc/components/Cards/variables.dark");
|
|
17
|
+
const variables_dark_13 = require("../../components/Catalog/variables.dark");
|
|
18
|
+
const variables_dark_14 = require("../../components/PageActions/variables.dark");
|
|
19
|
+
const variables_dark_15 = require("../../components/Tooltip/variables.dark");
|
|
20
|
+
const variables_dark_16 = require("../../components/Banner/variables.dark");
|
|
21
|
+
const variables_dark_17 = require("../../components/Admonition/variables.dark");
|
|
22
|
+
const variables_dark_18 = require("../../components/SvgViewer/variables.dark");
|
|
22
23
|
const replayDarkMode = (0, styled_components_1.css) `
|
|
23
24
|
/**
|
|
24
25
|
* @tokens Replay Colors
|
|
@@ -44,6 +45,8 @@ const replayDarkMode = (0, styled_components_1.css) `
|
|
|
44
45
|
--replay-runtime-expression-bg-color: rgba(147, 166, 249, 0.16); // @presenter Color
|
|
45
46
|
--replay-operators-color: rgba(168, 143, 88, 1); // @presenter Color
|
|
46
47
|
|
|
48
|
+
--replay-ai-user-message-gradient: linear-gradient(73.52deg, rgba(113, 94, 254, 0.16) 10.13%, rgba(255, 92, 220, 0.16) 87.29%);
|
|
49
|
+
|
|
47
50
|
// @tokens End
|
|
48
51
|
`;
|
|
49
52
|
const badgesDarkMode = (0, styled_components_1.css) `
|
|
@@ -325,24 +328,25 @@ exports.darkMode = (0, styled_components_1.css) `
|
|
|
325
328
|
--plus-square-outlined-icon: url("data:image/svg+xml,%3Csvg width='10' height='10' viewBox='0 0 10 10' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M3.20312 5.3125H4.6875V6.79687C4.6875 6.83984 4.72266 6.875 4.76562 6.875H5.23438C5.27734 6.875 5.3125 6.83984 5.3125 6.79687V5.3125H6.79688C6.83984 5.3125 6.875 5.27734 6.875 5.23437V4.76562C6.875 4.72266 6.83984 4.6875 6.79688 4.6875H5.3125V3.20312C5.3125 3.16016 5.27734 3.125 5.23438 3.125H4.76562C4.72266 3.125 4.6875 3.16016 4.6875 3.20312V4.6875H3.20312C3.16016 4.6875 3.125 4.72266 3.125 4.76562V5.23437C3.125 5.27734 3.16016 5.3125 3.20312 5.3125Z' fill='%239B9CA8'/%3E%3Cpath d='M8.59375 1.09375H1.40625C1.2334 1.09375 1.09375 1.2334 1.09375 1.40625V8.59375C1.09375 8.7666 1.2334 8.90625 1.40625 8.90625H8.59375C8.7666 8.90625 8.90625 8.7666 8.90625 8.59375V1.40625C8.90625 1.2334 8.7666 1.09375 8.59375 1.09375ZM8.20312 8.20312H1.79688V1.79687H8.20312V8.20312Z' fill='%239B9CA8'/%3E%3C/svg%3E%0A");
|
|
326
329
|
--minus-square-outlined-icon: url("data:image/svg+xml,%3Csvg width='10' height='10' viewBox='0 0 10 10' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M3.20312 5.3125H6.79688C6.83984 5.3125 6.875 5.27734 6.875 5.23437V4.76562C6.875 4.72266 6.83984 4.6875 6.79688 4.6875H3.20312C3.16016 4.6875 3.125 4.72266 3.125 4.76562V5.23437C3.125 5.27734 3.16016 5.3125 3.20312 5.3125Z' fill='%239B9CA8'/%3E%3Cpath d='M8.59375 1.09375H1.40625C1.2334 1.09375 1.09375 1.2334 1.09375 1.40625V8.59375C1.09375 8.7666 1.2334 8.90625 1.40625 8.90625H8.59375C8.7666 8.90625 8.90625 8.7666 8.90625 8.59375V1.40625C8.90625 1.2334 8.7666 1.09375 8.59375 1.09375ZM8.20312 8.20312H1.79688V1.79687H8.20312V8.20312Z' fill='%239B9CA8'/%3E%3C/svg%3E%0A");
|
|
327
330
|
|
|
328
|
-
${
|
|
329
|
-
${
|
|
330
|
-
${
|
|
331
|
-
${
|
|
332
|
-
${
|
|
333
|
-
${
|
|
334
|
-
${
|
|
331
|
+
${variables_dark_7.segmentedButtonsDarkMode}
|
|
332
|
+
${variables_dark_5.buttonDarkMode}
|
|
333
|
+
${variables_dark_6.aiAssistantButtonDarkMode}
|
|
334
|
+
${variables_dark_8.checkboxDarkMode}
|
|
335
|
+
${variables_dark_9.tagDarkMode}
|
|
336
|
+
${variables_dark_10.statusCodeDarkMode}
|
|
337
|
+
${variables_dark_4.menuDarkMode}
|
|
335
338
|
${variables_dark_2.mermaidDarkMode}
|
|
339
|
+
${variables_dark_3.excalidrawDarkMode}
|
|
336
340
|
${variables_dark_1.scorecardDarkMode}
|
|
337
341
|
${replayDarkMode}
|
|
338
|
-
${
|
|
339
|
-
${
|
|
340
|
-
${
|
|
341
|
-
${
|
|
342
|
-
${
|
|
343
|
-
${
|
|
344
|
-
${
|
|
345
|
-
${
|
|
342
|
+
${variables_dark_11.switcherDarkMode}
|
|
343
|
+
${variables_dark_12.cardsDarkMode}
|
|
344
|
+
${variables_dark_13.catalogDarkMode}
|
|
345
|
+
${variables_dark_14.pageActionsDarkMode}
|
|
346
|
+
${variables_dark_15.tooltipDarkMode}
|
|
347
|
+
${variables_dark_16.bannerDarkMode}
|
|
348
|
+
${variables_dark_17.admonitionDarkMode}
|
|
349
|
+
${variables_dark_18.svgViewerDarkMode}
|
|
346
350
|
${badgesDarkMode}
|
|
347
351
|
|
|
348
352
|
/**
|
|
@@ -31,20 +31,21 @@ const variables_26 = require("../../components/Markdown/variables");
|
|
|
31
31
|
const variables_27 = require("../../components/Banner/variables");
|
|
32
32
|
const variables_28 = require("../../markdoc/components/Tabs/variables");
|
|
33
33
|
const variables_29 = require("../../markdoc/components/Mermaid/variables");
|
|
34
|
-
const variables_30 = require("../../components/
|
|
35
|
-
const variables_31 = require("../../components/
|
|
36
|
-
const variables_32 = require("../../components/
|
|
37
|
-
const variables_33 = require("../../components/
|
|
38
|
-
const variables_34 = require("../../components/
|
|
39
|
-
const variables_35 = require("../../components/
|
|
40
|
-
const variables_36 = require("../../components/
|
|
41
|
-
const variables_37 = require("../../components/
|
|
42
|
-
const variables_38 = require("../../components/
|
|
43
|
-
const variables_39 = require("../../
|
|
44
|
-
const variables_40 = require("../../markdoc/components/
|
|
45
|
-
const variables_41 = require("../../components/
|
|
46
|
-
const variables_42 = require("../../components/
|
|
47
|
-
const variables_43 = require("../../components/
|
|
34
|
+
const variables_30 = require("../../markdoc/components/ExcalidrawDiagram/variables");
|
|
35
|
+
const variables_31 = require("../../components/LastUpdated/variables");
|
|
36
|
+
const variables_32 = require("../../components/Logo/variables");
|
|
37
|
+
const variables_33 = require("../../components/StatusCode/variables");
|
|
38
|
+
const variables_34 = require("../../components/Segmented/variables");
|
|
39
|
+
const variables_35 = require("../../components/UserMenu/variables");
|
|
40
|
+
const variables_36 = require("../../components/Tags/variables");
|
|
41
|
+
const variables_37 = require("../../components/VersionPicker/variables");
|
|
42
|
+
const variables_38 = require("../../components/DatePicker/variables");
|
|
43
|
+
const variables_39 = require("../../components/Switch/variables");
|
|
44
|
+
const variables_40 = require("../../markdoc/components/Cards/variables");
|
|
45
|
+
const variables_41 = require("../../markdoc/components/CodeWalkthrough/variables");
|
|
46
|
+
const variables_42 = require("../../components/SkipContent/variables");
|
|
47
|
+
const variables_43 = require("../../components/PageActions/variables");
|
|
48
|
+
const variables_44 = require("../../components/SvgViewer/variables");
|
|
48
49
|
const dark_1 = require("./dark");
|
|
49
50
|
const themeColors = (0, styled_components_1.css) `
|
|
50
51
|
/* === Palette === */
|
|
@@ -1148,7 +1149,7 @@ const icon = (0, styled_components_1.css) `
|
|
|
1148
1149
|
|
|
1149
1150
|
--icon-color-primary: var(--color-warm-grey-11); // @presenter Color
|
|
1150
1151
|
--icon-color-secondary: var(--color-warm-grey-8); // @presenter Color
|
|
1151
|
-
--icon-color-on-color: var(--color-
|
|
1152
|
+
--icon-color-on-color: var(--color-static-white); // @presenter Color
|
|
1152
1153
|
--icon-color-interactive: var(--color-blueberry-6); // @presenter Color
|
|
1153
1154
|
--icon-color-inverse: var(--color-white); // @presenter Color
|
|
1154
1155
|
--icon-color-disabled: var(--color-warm-grey-5); // @presenter Color
|
|
@@ -1230,6 +1231,11 @@ const replay = (0, styled_components_1.css) `
|
|
|
1230
1231
|
--replay-runtime-expression-bg-color: rgba(54, 90, 249, 0.08); // @presenter Color
|
|
1231
1232
|
--replay-operators-color: rgba(193, 142, 31, 1); // @presenter Color
|
|
1232
1233
|
|
|
1234
|
+
--replay-ai-gradient-soft: linear-gradient(62.6deg, rgba(113, 94, 254, 0.16) 0%, rgba(255, 92, 220, 0.16) 100%);
|
|
1235
|
+
--replay-ai-gradient-disabled: linear-gradient(62.6deg, rgba(113, 94, 254, 0.6) 0%, rgba(255, 92, 220, 0.6) 100%);
|
|
1236
|
+
--replay-ai-user-message-gradient: linear-gradient(73.52deg, rgba(113, 94, 254, 0.08) 10.13%, rgba(255, 92, 220, 0.08) 87.29%);
|
|
1237
|
+
|
|
1238
|
+
--replay-ai-send-button-disabled-border: 1px solid #ffffff33;
|
|
1233
1239
|
// @tokens End
|
|
1234
1240
|
`;
|
|
1235
1241
|
exports.styles = (0, styled_components_1.css) `
|
|
@@ -1245,27 +1251,28 @@ exports.styles = (0, styled_components_1.css) `
|
|
|
1245
1251
|
${variables_19.button}
|
|
1246
1252
|
${variables_20.aiAssistantButton}
|
|
1247
1253
|
${variables_20.connectMCPButton}
|
|
1248
|
-
${
|
|
1254
|
+
${variables_40.cards}
|
|
1249
1255
|
${variables_8.catalog}
|
|
1250
1256
|
${variables_10.catalogClassic}
|
|
1251
1257
|
${variables_24.code}
|
|
1252
|
-
${
|
|
1258
|
+
${variables_41.codeWalkthrough}
|
|
1253
1259
|
${docsDropdown}
|
|
1254
1260
|
${variables_14.dropdown}
|
|
1255
1261
|
${error}
|
|
1256
1262
|
${variables_9.filter}
|
|
1257
1263
|
${variables_18.footer}
|
|
1258
1264
|
${headingsTypography}
|
|
1259
|
-
${
|
|
1265
|
+
${variables_36.httpTag}
|
|
1260
1266
|
${inputs}
|
|
1261
1267
|
${variables_1.languagePicker}
|
|
1262
|
-
${
|
|
1268
|
+
${variables_31.lastUpdated}
|
|
1263
1269
|
${links}
|
|
1264
1270
|
${loadProgressBar}
|
|
1265
|
-
${
|
|
1271
|
+
${variables_32.logo}
|
|
1266
1272
|
${variables_26.markdown}
|
|
1267
1273
|
${variables_28.markdownTabs}
|
|
1268
1274
|
${variables_29.mermaid}
|
|
1275
|
+
${variables_30.excalidraw}
|
|
1269
1276
|
${variables_23.menu}
|
|
1270
1277
|
${variables_23.mobileMenu}
|
|
1271
1278
|
${modal}
|
|
@@ -1283,24 +1290,24 @@ exports.styles = (0, styled_components_1.css) `
|
|
|
1283
1290
|
${variables_7.toc}
|
|
1284
1291
|
${variables_15.tooltip}
|
|
1285
1292
|
${typography}
|
|
1286
|
-
${
|
|
1287
|
-
${
|
|
1293
|
+
${variables_35.userMenu}
|
|
1294
|
+
${variables_37.versionPicker}
|
|
1288
1295
|
${zIndexDepth}
|
|
1289
1296
|
${scorecardColors}
|
|
1290
|
-
${
|
|
1297
|
+
${variables_33.statusCode}
|
|
1291
1298
|
${tab}
|
|
1292
1299
|
${icon}
|
|
1293
1300
|
${tree}
|
|
1294
|
-
${
|
|
1295
|
-
${
|
|
1301
|
+
${variables_34.segmented}
|
|
1302
|
+
${variables_39.switcher}
|
|
1296
1303
|
${variables_16.checkbox}
|
|
1297
1304
|
${variables_3.feedback}
|
|
1298
1305
|
${variables_2.scorecard}
|
|
1299
|
-
${
|
|
1306
|
+
${variables_38.datePicker}
|
|
1300
1307
|
${replay}
|
|
1301
|
-
${
|
|
1302
|
-
${
|
|
1303
|
-
${
|
|
1308
|
+
${variables_42.skipContent}
|
|
1309
|
+
${variables_43.pageActions}
|
|
1310
|
+
${variables_44.svgViewer}
|
|
1304
1311
|
|
|
1305
1312
|
background-color: var(--bg-color);
|
|
1306
1313
|
color: var(--text-color-primary);
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import type { IconProps } from '../../icons/types';
|
|
3
|
+
export declare const ColorPaletteIcon: import("styled-components").StyledComponent<(props: IconProps) => React.JSX.Element, any, {
|
|
4
|
+
'data-component-name': string;
|
|
5
|
+
} & {
|
|
6
|
+
color?: string;
|
|
7
|
+
size?: string;
|
|
8
|
+
className?: string;
|
|
9
|
+
} & React.SVGProps<SVGSVGElement>, "data-component-name">;
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.ColorPaletteIcon = void 0;
|
|
7
|
+
const react_1 = __importDefault(require("react"));
|
|
8
|
+
const styled_components_1 = __importDefault(require("styled-components"));
|
|
9
|
+
const utils_1 = require("../../core/utils");
|
|
10
|
+
const Icon = (props) => (react_1.default.createElement("svg", Object.assign({ viewBox: "0 0 13 13", fill: "none", xmlns: "http://www.w3.org/2000/svg" }, props),
|
|
11
|
+
react_1.default.createElement("path", { d: "M3.5 5.25456C3.98325 5.25456 4.375 4.86281 4.375 4.37956C4.375 3.89631 3.98325 3.50456 3.5 3.50456C3.01675 3.50456 2.625 3.89631 2.625 4.37956C2.625 4.86281 3.01675 5.25456 3.5 5.25456Z" }),
|
|
12
|
+
react_1.default.createElement("path", { d: "M6.125 3.94206C6.60825 3.94206 7 3.55031 7 3.06706C7 2.58381 6.60825 2.19206 6.125 2.19206C5.64175 2.19206 5.25 2.58381 5.25 3.06706C5.25 3.55031 5.64175 3.94206 6.125 3.94206Z" }),
|
|
13
|
+
react_1.default.createElement("path", { d: "M8.75 5.25456C9.23325 5.25456 9.625 4.86281 9.625 4.37956C9.625 3.89631 9.23325 3.50456 8.75 3.50456C8.26675 3.50456 7.875 3.89631 7.875 4.37956C7.875 4.86281 8.26675 5.25456 8.75 5.25456Z" }),
|
|
14
|
+
react_1.default.createElement("path", { d: "M9.1875 7.87956C9.67075 7.87956 10.0625 7.48781 10.0625 7.00456C10.0625 6.52131 9.67075 6.12956 9.1875 6.12956C8.70425 6.12956 8.3125 6.52131 8.3125 7.00456C8.3125 7.48781 8.70425 7.87956 9.1875 7.87956Z" }),
|
|
15
|
+
react_1.default.createElement("path", { d: "M7.4375 10.0671C7.92075 10.0671 8.3125 9.67531 8.3125 9.19206C8.3125 8.70881 7.92075 8.31706 7.4375 8.31706C6.95425 8.31706 6.5625 8.70881 6.5625 9.19206C6.5625 9.67531 6.95425 10.0671 7.4375 10.0671Z" }),
|
|
16
|
+
react_1.default.createElement("path", { d: "M6.36125 0.00455826C5.53725 -0.0272487 4.7153 0.107661 3.9447 0.401198C3.17409 0.694735 2.4707 1.14086 1.87668 1.71281C1.28266 2.28477 0.810249 2.97079 0.487771 3.72974C0.165293 4.48869 -0.000611956 5.30494 1.69613e-06 6.12956C-2.00107e-05 6.45389 0.074769 6.77385 0.218553 7.06457C0.362337 7.35528 0.57124 7.60891 0.829017 7.80574C1.08679 8.00256 1.3865 8.13728 1.70482 8.1994C2.02315 8.26153 2.35151 8.24939 2.66438 8.16393L3.15438 8.02831C3.3493 7.9751 3.55388 7.96761 3.75217 8.00643C3.95047 8.04526 4.13712 8.12934 4.29759 8.25212C4.45806 8.37491 4.58801 8.53309 4.67733 8.71433C4.76664 8.89558 4.8129 9.095 4.8125 9.29706V10.9421C4.8125 11.2902 4.95078 11.624 5.19692 11.8701C5.44307 12.1163 5.77691 12.2546 6.125 12.2546C6.94962 12.2552 7.76587 12.0893 8.52482 11.7668C9.28377 11.4443 9.96979 10.9719 10.5417 10.3779C11.1137 9.78386 11.5598 9.08046 11.8534 8.30986C12.1469 7.53926 12.2818 6.71731 12.25 5.89331C12.1865 4.35185 11.5457 2.89063 10.4548 1.79973C9.36393 0.708834 7.90271 0.0680368 6.36125 0.00455826ZM9.90938 9.76518C9.42087 10.2766 8.83352 10.6835 8.18297 10.961C7.53243 11.2385 6.83227 11.3809 6.125 11.3796C6.00897 11.3796 5.89769 11.3335 5.81564 11.2514C5.7336 11.1694 5.6875 11.0581 5.6875 10.9421V9.29706C5.6875 8.7169 5.45703 8.1605 5.0468 7.75026C4.63656 7.34003 4.08016 7.10956 3.5 7.10956C3.30341 7.10991 3.10774 7.13639 2.91813 7.18831L2.42813 7.32393C2.24511 7.37298 2.05326 7.37922 1.86744 7.34216C1.68163 7.3051 1.50685 7.22574 1.35665 7.11024C1.20645 6.99474 1.08488 6.84619 1.00135 6.67612C0.917824 6.50605 0.87459 6.31903 0.875002 6.12956C0.874459 5.42247 1.01676 4.72256 1.29336 4.07181C1.56996 3.42107 1.97517 2.83291 2.48466 2.34261C2.99416 1.85232 3.59745 1.47 4.25833 1.21859C4.91922 0.967181 5.62408 0.851864 6.33063 0.879558C7.64627 0.948081 8.8899 1.50154 9.82146 2.4331C10.753 3.36466 11.3065 4.60829 11.375 5.92393C11.4051 6.63092 11.2907 7.33662 11.0387 7.99785C10.7867 8.65908 10.4024 9.26195 9.90938 9.76956V9.76518Z" })));
|
|
17
|
+
exports.ColorPaletteIcon = (0, styled_components_1.default)(Icon).attrs(() => ({
|
|
18
|
+
'data-component-name': 'icons/ColorPaletteIcon/ColorPaletteIcon',
|
|
19
|
+
})) `
|
|
20
|
+
path {
|
|
21
|
+
fill: ${({ color }) => (0, utils_1.getCssColorVariable)(color)};
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
height: ${({ size }) => size || '16px'};
|
|
25
|
+
width: ${({ size }) => size || '16px'};
|
|
26
|
+
`;
|
|
27
|
+
//# sourceMappingURL=ColorPaletteIcon.js.map
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import type { IconProps } from '../../icons/types';
|
|
3
|
+
export declare const StopIcon: import("styled-components").StyledComponent<(props: IconProps) => React.JSX.Element, any, {
|
|
4
|
+
'data-component-name': string;
|
|
5
|
+
} & {
|
|
6
|
+
color?: string;
|
|
7
|
+
size?: string;
|
|
8
|
+
className?: string;
|
|
9
|
+
} & React.SVGProps<SVGSVGElement>, "data-component-name">;
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.StopIcon = void 0;
|
|
7
|
+
const react_1 = __importDefault(require("react"));
|
|
8
|
+
const styled_components_1 = __importDefault(require("styled-components"));
|
|
9
|
+
const utils_1 = require("../../core/utils");
|
|
10
|
+
const Icon = (props) => (react_1.default.createElement("svg", Object.assign({ xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 14 14", fill: "none" }, props),
|
|
11
|
+
react_1.default.createElement("path", { d: "M10.5 3.5V10.5H3.5V3.5H10.5ZM10.5 2.625H3.5C3.26794 2.625 3.04538 2.71719 2.88128 2.88128C2.71719 3.04538 2.625 3.26794 2.625 3.5V10.5C2.625 10.7321 2.71719 10.9546 2.88128 11.1187C3.04538 11.2828 3.26794 11.375 3.5 11.375H10.5C10.7321 11.375 10.9546 11.2828 11.1187 11.1187C11.2828 10.9546 11.375 10.7321 11.375 10.5V3.5C11.375 3.26794 11.2828 3.04538 11.1187 2.88128C10.9546 2.71719 10.7321 2.625 10.5 2.625Z" })));
|
|
12
|
+
exports.StopIcon = (0, styled_components_1.default)(Icon).attrs(() => ({
|
|
13
|
+
'data-component-name': 'icons/StopIcon/StopIcon',
|
|
14
|
+
})) `
|
|
15
|
+
path {
|
|
16
|
+
fill: ${({ color }) => (0, utils_1.getCssColorVariable)(color)};
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
height: ${({ size }) => size || '16px'};
|
|
20
|
+
width: ${({ size }) => size || '16px'};
|
|
21
|
+
`;
|
|
22
|
+
//# sourceMappingURL=StopIcon.js.map
|
package/lib/index.d.ts
CHANGED
|
@@ -247,6 +247,7 @@ export * from './icons/FileIcon/FileIcon';
|
|
|
247
247
|
export * from './icons/ExportIcon/ExportIcon';
|
|
248
248
|
export * from './icons/CertificateIcon/CertificateIcon';
|
|
249
249
|
export * from './icons/PlayIcon/PlayIcon';
|
|
250
|
+
export * from './icons/StopIcon/StopIcon';
|
|
250
251
|
export * from './icons/PlaylistIcon/PlaylistIcon';
|
|
251
252
|
export * from './icons/WorkflowAutomationIcon/WorkflowAutomationIcon';
|
|
252
253
|
export * from './icons/TaskViewIcon/TaskViewIcon';
|
|
@@ -269,6 +270,7 @@ export * from './icons/GenericIcon/GenericIcon';
|
|
|
269
270
|
export * from './icons/ShareIcon/ShareIcon';
|
|
270
271
|
export * from './icons/HashtagIcon/HashtagIcon';
|
|
271
272
|
export * from './icons/FitToViewIcon/FitToViewIcon';
|
|
273
|
+
export * from './icons/ColorPaletteIcon/ColorPaletteIcon';
|
|
272
274
|
export * from './layouts/RootLayout';
|
|
273
275
|
export * from './layouts/PageLayout';
|
|
274
276
|
export * from './layouts/NotFound';
|
package/lib/index.js
CHANGED
|
@@ -310,6 +310,7 @@ __exportStar(require("./icons/FileIcon/FileIcon"), exports);
|
|
|
310
310
|
__exportStar(require("./icons/ExportIcon/ExportIcon"), exports);
|
|
311
311
|
__exportStar(require("./icons/CertificateIcon/CertificateIcon"), exports);
|
|
312
312
|
__exportStar(require("./icons/PlayIcon/PlayIcon"), exports);
|
|
313
|
+
__exportStar(require("./icons/StopIcon/StopIcon"), exports);
|
|
313
314
|
__exportStar(require("./icons/PlaylistIcon/PlaylistIcon"), exports);
|
|
314
315
|
__exportStar(require("./icons/WorkflowAutomationIcon/WorkflowAutomationIcon"), exports);
|
|
315
316
|
__exportStar(require("./icons/TaskViewIcon/TaskViewIcon"), exports);
|
|
@@ -332,6 +333,7 @@ __exportStar(require("./icons/GenericIcon/GenericIcon"), exports);
|
|
|
332
333
|
__exportStar(require("./icons/ShareIcon/ShareIcon"), exports);
|
|
333
334
|
__exportStar(require("./icons/HashtagIcon/HashtagIcon"), exports);
|
|
334
335
|
__exportStar(require("./icons/FitToViewIcon/FitToViewIcon"), exports);
|
|
336
|
+
__exportStar(require("./icons/ColorPaletteIcon/ColorPaletteIcon"), exports);
|
|
335
337
|
/* Layouts */
|
|
336
338
|
__exportStar(require("./layouts/RootLayout"), exports);
|
|
337
339
|
__exportStar(require("./layouts/PageLayout"), exports);
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
36
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
37
|
+
};
|
|
38
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
+
exports.ExcalidrawDiagram = ExcalidrawDiagram;
|
|
40
|
+
const react_1 = __importStar(require("react"));
|
|
41
|
+
const styled_components_1 = __importDefault(require("styled-components"));
|
|
42
|
+
const utils_1 = require("../../../core/utils");
|
|
43
|
+
const hooks_1 = require("../../../core/hooks");
|
|
44
|
+
const SvgViewer_1 = require("../../../components/SvgViewer/SvgViewer");
|
|
45
|
+
function ExcalidrawDiagram({ diagramHtml, className }) {
|
|
46
|
+
const { useTranslate } = (0, hooks_1.useThemeHooks)();
|
|
47
|
+
const { translate } = useTranslate();
|
|
48
|
+
const [isOpen, setIsOpen] = (0, react_1.useState)(false);
|
|
49
|
+
const open = () => setIsOpen(true);
|
|
50
|
+
const close = () => setIsOpen(false);
|
|
51
|
+
return (react_1.default.createElement(react_1.default.Fragment, null,
|
|
52
|
+
react_1.default.createElement(Wrapper, { className: (0, utils_1.concatClassNames)('excalidraw-wrapper', className), dangerouslySetInnerHTML: { __html: diagramHtml }, "data-component-name": "Markdoc/ExcalidrawDiagram/ExcalidrawDiagram", onClick: open, onKeyDown: (e) => (e.key === 'Enter' || e.key === ' ') && open(), role: "button", tabIndex: 0, "aria-label": translate('excalidraw.openFullscreen', 'Click to open diagram in fullscreen') }),
|
|
53
|
+
react_1.default.createElement(SvgViewer_1.SvgViewer, { isOpen: isOpen, onClose: close, labels: {
|
|
54
|
+
zoomIn: translate('excalidraw.zoomIn', 'Zoom in'),
|
|
55
|
+
zoomOut: translate('excalidraw.zoomOut', 'Zoom out'),
|
|
56
|
+
fitToView: translate('excalidraw.reset', 'Fit to view'),
|
|
57
|
+
close: translate('excalidraw.close', 'Close'),
|
|
58
|
+
dialogLabel: translate('excalidraw.viewer', 'Excalidraw diagram viewer'),
|
|
59
|
+
} },
|
|
60
|
+
react_1.default.createElement(ViewerContent, { dangerouslySetInnerHTML: { __html: diagramHtml } }))));
|
|
61
|
+
}
|
|
62
|
+
const Wrapper = styled_components_1.default.div `
|
|
63
|
+
background-color: var(--excalidraw-bg-color);
|
|
64
|
+
border-radius: var(--excalidraw-border-radius);
|
|
65
|
+
cursor: pointer;
|
|
66
|
+
transition: box-shadow 0.2s ease;
|
|
67
|
+
overflow: hidden;
|
|
68
|
+
|
|
69
|
+
&:hover,
|
|
70
|
+
&:focus {
|
|
71
|
+
outline: none;
|
|
72
|
+
box-shadow: 0 0 0 2px var(--border-color-input-focus);
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
svg {
|
|
76
|
+
max-width: 100%;
|
|
77
|
+
height: auto;
|
|
78
|
+
display: block;
|
|
79
|
+
|
|
80
|
+
> rect {
|
|
81
|
+
fill: var(--excalidraw-bg-color);
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
& + & {
|
|
86
|
+
margin-top: var(--spacing-md);
|
|
87
|
+
}
|
|
88
|
+
`;
|
|
89
|
+
const ViewerContent = styled_components_1.default.div `
|
|
90
|
+
svg {
|
|
91
|
+
display: block;
|
|
92
|
+
max-width: none !important;
|
|
93
|
+
}
|
|
94
|
+
`;
|
|
95
|
+
//# sourceMappingURL=ExcalidrawDiagram.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const excalidraw: import("styled-components").FlattenSimpleInterpolation;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const excalidrawDarkMode: import("styled-components").FlattenSimpleInterpolation;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.excalidrawDarkMode = void 0;
|
|
4
|
+
const styled_components_1 = require("styled-components");
|
|
5
|
+
exports.excalidrawDarkMode = (0, styled_components_1.css) `
|
|
6
|
+
--excalidraw-bg-color: var(--bg-color); // @presenter Color
|
|
7
|
+
`;
|
|
8
|
+
//# sourceMappingURL=variables.dark.js.map
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.excalidraw = void 0;
|
|
4
|
+
const styled_components_1 = require("styled-components");
|
|
5
|
+
exports.excalidraw = (0, styled_components_1.css) `
|
|
6
|
+
/**
|
|
7
|
+
* @tokens Excalidraw
|
|
8
|
+
*/
|
|
9
|
+
|
|
10
|
+
--excalidraw-bg-color: var(--bg-color); // @presenter Color
|
|
11
|
+
--excalidraw-border-radius: var(--border-radius-lg); // @presenter BorderRadius
|
|
12
|
+
|
|
13
|
+
// @tokens End
|
|
14
|
+
`;
|
|
15
|
+
//# sourceMappingURL=variables.js.map
|
|
@@ -3,6 +3,7 @@ export * from '../../markdoc/components/InlineSvg/InlineSvg';
|
|
|
3
3
|
export * from '../../markdoc/components/MarkdocExample/MarkdocExample';
|
|
4
4
|
export * from '../../markdoc/components/Heading/Heading';
|
|
5
5
|
export * from '../../markdoc/components/Mermaid/Mermaid';
|
|
6
|
+
export * from '../../markdoc/components/ExcalidrawDiagram/ExcalidrawDiagram';
|
|
6
7
|
export * from '../../markdoc/components/HtmlBlock/HtmlBlock';
|
|
7
8
|
export * from '../../markdoc/components/Tabs/Tab';
|
|
8
9
|
export * from '../../markdoc/components/Tabs/TabList';
|
|
@@ -19,6 +19,7 @@ __exportStar(require("../../markdoc/components/InlineSvg/InlineSvg"), exports);
|
|
|
19
19
|
__exportStar(require("../../markdoc/components/MarkdocExample/MarkdocExample"), exports);
|
|
20
20
|
__exportStar(require("../../markdoc/components/Heading/Heading"), exports);
|
|
21
21
|
__exportStar(require("../../markdoc/components/Mermaid/Mermaid"), exports);
|
|
22
|
+
__exportStar(require("../../markdoc/components/ExcalidrawDiagram/ExcalidrawDiagram"), exports);
|
|
22
23
|
__exportStar(require("../../markdoc/components/HtmlBlock/HtmlBlock"), exports);
|
|
23
24
|
__exportStar(require("../../markdoc/components/Tabs/Tab"), exports);
|
|
24
25
|
__exportStar(require("../../markdoc/components/Tabs/TabList"), exports);
|
package/package.json
CHANGED
package/src/core/styles/dark.ts
CHANGED
|
@@ -2,6 +2,7 @@ import { css } from 'styled-components';
|
|
|
2
2
|
|
|
3
3
|
import { scorecardDarkMode } from '@redocly/theme/components/Scorecard/variables.dark';
|
|
4
4
|
import { mermaidDarkMode } from '@redocly/theme/markdoc/components/Mermaid/variables.dark'
|
|
5
|
+
import { excalidrawDarkMode } from '@redocly/theme/markdoc/components/ExcalidrawDiagram/variables.dark'
|
|
5
6
|
import { menuDarkMode } from '@redocly/theme/components/Menu/variables.dark';
|
|
6
7
|
import { buttonDarkMode } from '@redocly/theme/components/Button/variables.dark';
|
|
7
8
|
import { aiAssistantButtonDarkMode } from '@redocly/theme/components/Buttons/variables.dark';
|
|
@@ -43,6 +44,8 @@ const replayDarkMode = css`
|
|
|
43
44
|
--replay-runtime-expression-bg-color: rgba(147, 166, 249, 0.16); // @presenter Color
|
|
44
45
|
--replay-operators-color: rgba(168, 143, 88, 1); // @presenter Color
|
|
45
46
|
|
|
47
|
+
--replay-ai-user-message-gradient: linear-gradient(73.52deg, rgba(113, 94, 254, 0.16) 10.13%, rgba(255, 92, 220, 0.16) 87.29%);
|
|
48
|
+
|
|
46
49
|
// @tokens End
|
|
47
50
|
`;
|
|
48
51
|
|
|
@@ -335,6 +338,7 @@ export const darkMode = css`
|
|
|
335
338
|
${statusCodeDarkMode}
|
|
336
339
|
${menuDarkMode}
|
|
337
340
|
${mermaidDarkMode}
|
|
341
|
+
${excalidrawDarkMode}
|
|
338
342
|
${scorecardDarkMode}
|
|
339
343
|
${replayDarkMode}
|
|
340
344
|
${switcherDarkMode}
|
|
@@ -29,6 +29,7 @@ import { markdown } from '@redocly/theme/components/Markdown/variables';
|
|
|
29
29
|
import { banner } from '@redocly/theme/components/Banner/variables';
|
|
30
30
|
import { markdownTabs } from '@redocly/theme/markdoc/components/Tabs/variables';
|
|
31
31
|
import { mermaid } from '@redocly/theme/markdoc/components/Mermaid/variables';
|
|
32
|
+
import { excalidraw } from '@redocly/theme/markdoc/components/ExcalidrawDiagram/variables';
|
|
32
33
|
import { lastUpdated } from '@redocly/theme/components/LastUpdated/variables';
|
|
33
34
|
import { logo } from '@redocly/theme/components/Logo/variables';
|
|
34
35
|
import { statusCode } from '@redocly/theme/components/StatusCode/variables';
|
|
@@ -1167,7 +1168,7 @@ const icon = css`
|
|
|
1167
1168
|
|
|
1168
1169
|
--icon-color-primary: var(--color-warm-grey-11); // @presenter Color
|
|
1169
1170
|
--icon-color-secondary: var(--color-warm-grey-8); // @presenter Color
|
|
1170
|
-
--icon-color-on-color: var(--color-
|
|
1171
|
+
--icon-color-on-color: var(--color-static-white); // @presenter Color
|
|
1171
1172
|
--icon-color-interactive: var(--color-blueberry-6); // @presenter Color
|
|
1172
1173
|
--icon-color-inverse: var(--color-white); // @presenter Color
|
|
1173
1174
|
--icon-color-disabled: var(--color-warm-grey-5); // @presenter Color
|
|
@@ -1251,6 +1252,11 @@ const replay = css`
|
|
|
1251
1252
|
--replay-runtime-expression-bg-color: rgba(54, 90, 249, 0.08); // @presenter Color
|
|
1252
1253
|
--replay-operators-color: rgba(193, 142, 31, 1); // @presenter Color
|
|
1253
1254
|
|
|
1255
|
+
--replay-ai-gradient-soft: linear-gradient(62.6deg, rgba(113, 94, 254, 0.16) 0%, rgba(255, 92, 220, 0.16) 100%);
|
|
1256
|
+
--replay-ai-gradient-disabled: linear-gradient(62.6deg, rgba(113, 94, 254, 0.6) 0%, rgba(255, 92, 220, 0.6) 100%);
|
|
1257
|
+
--replay-ai-user-message-gradient: linear-gradient(73.52deg, rgba(113, 94, 254, 0.08) 10.13%, rgba(255, 92, 220, 0.08) 87.29%);
|
|
1258
|
+
|
|
1259
|
+
--replay-ai-send-button-disabled-border: 1px solid #ffffff33;
|
|
1254
1260
|
// @tokens End
|
|
1255
1261
|
`;
|
|
1256
1262
|
|
|
@@ -1289,6 +1295,7 @@ export const styles = css`
|
|
|
1289
1295
|
${markdown}
|
|
1290
1296
|
${markdownTabs}
|
|
1291
1297
|
${mermaid}
|
|
1298
|
+
${excalidraw}
|
|
1292
1299
|
${menu}
|
|
1293
1300
|
${mobileMenu}
|
|
1294
1301
|
${modal}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import styled from 'styled-components';
|
|
3
|
+
|
|
4
|
+
import type { IconProps } from '@redocly/theme/icons/types';
|
|
5
|
+
|
|
6
|
+
import { getCssColorVariable } from '@redocly/theme/core/utils';
|
|
7
|
+
|
|
8
|
+
const Icon = (props: IconProps) => (
|
|
9
|
+
<svg viewBox="0 0 13 13" fill="none" xmlns="http://www.w3.org/2000/svg" {...props}>
|
|
10
|
+
<path d="M3.5 5.25456C3.98325 5.25456 4.375 4.86281 4.375 4.37956C4.375 3.89631 3.98325 3.50456 3.5 3.50456C3.01675 3.50456 2.625 3.89631 2.625 4.37956C2.625 4.86281 3.01675 5.25456 3.5 5.25456Z" />
|
|
11
|
+
<path d="M6.125 3.94206C6.60825 3.94206 7 3.55031 7 3.06706C7 2.58381 6.60825 2.19206 6.125 2.19206C5.64175 2.19206 5.25 2.58381 5.25 3.06706C5.25 3.55031 5.64175 3.94206 6.125 3.94206Z" />
|
|
12
|
+
<path d="M8.75 5.25456C9.23325 5.25456 9.625 4.86281 9.625 4.37956C9.625 3.89631 9.23325 3.50456 8.75 3.50456C8.26675 3.50456 7.875 3.89631 7.875 4.37956C7.875 4.86281 8.26675 5.25456 8.75 5.25456Z" />
|
|
13
|
+
<path d="M9.1875 7.87956C9.67075 7.87956 10.0625 7.48781 10.0625 7.00456C10.0625 6.52131 9.67075 6.12956 9.1875 6.12956C8.70425 6.12956 8.3125 6.52131 8.3125 7.00456C8.3125 7.48781 8.70425 7.87956 9.1875 7.87956Z" />
|
|
14
|
+
<path d="M7.4375 10.0671C7.92075 10.0671 8.3125 9.67531 8.3125 9.19206C8.3125 8.70881 7.92075 8.31706 7.4375 8.31706C6.95425 8.31706 6.5625 8.70881 6.5625 9.19206C6.5625 9.67531 6.95425 10.0671 7.4375 10.0671Z" />
|
|
15
|
+
<path d="M6.36125 0.00455826C5.53725 -0.0272487 4.7153 0.107661 3.9447 0.401198C3.17409 0.694735 2.4707 1.14086 1.87668 1.71281C1.28266 2.28477 0.810249 2.97079 0.487771 3.72974C0.165293 4.48869 -0.000611956 5.30494 1.69613e-06 6.12956C-2.00107e-05 6.45389 0.074769 6.77385 0.218553 7.06457C0.362337 7.35528 0.57124 7.60891 0.829017 7.80574C1.08679 8.00256 1.3865 8.13728 1.70482 8.1994C2.02315 8.26153 2.35151 8.24939 2.66438 8.16393L3.15438 8.02831C3.3493 7.9751 3.55388 7.96761 3.75217 8.00643C3.95047 8.04526 4.13712 8.12934 4.29759 8.25212C4.45806 8.37491 4.58801 8.53309 4.67733 8.71433C4.76664 8.89558 4.8129 9.095 4.8125 9.29706V10.9421C4.8125 11.2902 4.95078 11.624 5.19692 11.8701C5.44307 12.1163 5.77691 12.2546 6.125 12.2546C6.94962 12.2552 7.76587 12.0893 8.52482 11.7668C9.28377 11.4443 9.96979 10.9719 10.5417 10.3779C11.1137 9.78386 11.5598 9.08046 11.8534 8.30986C12.1469 7.53926 12.2818 6.71731 12.25 5.89331C12.1865 4.35185 11.5457 2.89063 10.4548 1.79973C9.36393 0.708834 7.90271 0.0680368 6.36125 0.00455826ZM9.90938 9.76518C9.42087 10.2766 8.83352 10.6835 8.18297 10.961C7.53243 11.2385 6.83227 11.3809 6.125 11.3796C6.00897 11.3796 5.89769 11.3335 5.81564 11.2514C5.7336 11.1694 5.6875 11.0581 5.6875 10.9421V9.29706C5.6875 8.7169 5.45703 8.1605 5.0468 7.75026C4.63656 7.34003 4.08016 7.10956 3.5 7.10956C3.30341 7.10991 3.10774 7.13639 2.91813 7.18831L2.42813 7.32393C2.24511 7.37298 2.05326 7.37922 1.86744 7.34216C1.68163 7.3051 1.50685 7.22574 1.35665 7.11024C1.20645 6.99474 1.08488 6.84619 1.00135 6.67612C0.917824 6.50605 0.87459 6.31903 0.875002 6.12956C0.874459 5.42247 1.01676 4.72256 1.29336 4.07181C1.56996 3.42107 1.97517 2.83291 2.48466 2.34261C2.99416 1.85232 3.59745 1.47 4.25833 1.21859C4.91922 0.967181 5.62408 0.851864 6.33063 0.879558C7.64627 0.948081 8.8899 1.50154 9.82146 2.4331C10.753 3.36466 11.3065 4.60829 11.375 5.92393C11.4051 6.63092 11.2907 7.33662 11.0387 7.99785C10.7867 8.65908 10.4024 9.26195 9.90938 9.76956V9.76518Z" />
|
|
16
|
+
</svg>
|
|
17
|
+
);
|
|
18
|
+
|
|
19
|
+
export const ColorPaletteIcon = styled(Icon).attrs(() => ({
|
|
20
|
+
'data-component-name': 'icons/ColorPaletteIcon/ColorPaletteIcon',
|
|
21
|
+
}))<IconProps>`
|
|
22
|
+
path {
|
|
23
|
+
fill: ${({ color }) => getCssColorVariable(color)};
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
height: ${({ size }) => size || '16px'};
|
|
27
|
+
width: ${({ size }) => size || '16px'};
|
|
28
|
+
`;
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import styled from 'styled-components';
|
|
3
|
+
|
|
4
|
+
import type { IconProps } from '@redocly/theme/icons/types';
|
|
5
|
+
|
|
6
|
+
import { getCssColorVariable } from '@redocly/theme/core/utils';
|
|
7
|
+
|
|
8
|
+
const Icon = (props: IconProps) => (
|
|
9
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 14 14" fill="none" {...props}>
|
|
10
|
+
<path d="M10.5 3.5V10.5H3.5V3.5H10.5ZM10.5 2.625H3.5C3.26794 2.625 3.04538 2.71719 2.88128 2.88128C2.71719 3.04538 2.625 3.26794 2.625 3.5V10.5C2.625 10.7321 2.71719 10.9546 2.88128 11.1187C3.04538 11.2828 3.26794 11.375 3.5 11.375H10.5C10.7321 11.375 10.9546 11.2828 11.1187 11.1187C11.2828 10.9546 11.375 10.7321 11.375 10.5V3.5C11.375 3.26794 11.2828 3.04538 11.1187 2.88128C10.9546 2.71719 10.7321 2.625 10.5 2.625Z" />
|
|
11
|
+
</svg>
|
|
12
|
+
);
|
|
13
|
+
|
|
14
|
+
export const StopIcon = styled(Icon).attrs(() => ({
|
|
15
|
+
'data-component-name': 'icons/StopIcon/StopIcon',
|
|
16
|
+
}))<IconProps>`
|
|
17
|
+
path {
|
|
18
|
+
fill: ${({ color }) => getCssColorVariable(color)};
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
height: ${({ size }) => size || '16px'};
|
|
22
|
+
width: ${({ size }) => size || '16px'};
|
|
23
|
+
`;
|
package/src/index.ts
CHANGED
|
@@ -274,6 +274,7 @@ export * from '@redocly/theme/icons/FileIcon/FileIcon';
|
|
|
274
274
|
export * from '@redocly/theme/icons/ExportIcon/ExportIcon';
|
|
275
275
|
export * from '@redocly/theme/icons/CertificateIcon/CertificateIcon';
|
|
276
276
|
export * from '@redocly/theme/icons/PlayIcon/PlayIcon';
|
|
277
|
+
export * from '@redocly/theme/icons/StopIcon/StopIcon';
|
|
277
278
|
export * from '@redocly/theme/icons/PlaylistIcon/PlaylistIcon';
|
|
278
279
|
export * from '@redocly/theme/icons/WorkflowAutomationIcon/WorkflowAutomationIcon';
|
|
279
280
|
export * from '@redocly/theme/icons/TaskViewIcon/TaskViewIcon';
|
|
@@ -296,6 +297,7 @@ export * from '@redocly/theme/icons/GenericIcon/GenericIcon';
|
|
|
296
297
|
export * from '@redocly/theme/icons/ShareIcon/ShareIcon';
|
|
297
298
|
export * from '@redocly/theme/icons/HashtagIcon/HashtagIcon';
|
|
298
299
|
export * from '@redocly/theme/icons/FitToViewIcon/FitToViewIcon';
|
|
300
|
+
export * from '@redocly/theme/icons/ColorPaletteIcon/ColorPaletteIcon';
|
|
299
301
|
/* Layouts */
|
|
300
302
|
export * from '@redocly/theme/layouts/RootLayout';
|
|
301
303
|
export * from '@redocly/theme/layouts/PageLayout';
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
import React, { useState } from 'react';
|
|
2
|
+
import styled from 'styled-components';
|
|
3
|
+
|
|
4
|
+
import type { JSX } from 'react';
|
|
5
|
+
|
|
6
|
+
import { concatClassNames } from '@redocly/theme/core/utils';
|
|
7
|
+
import { useThemeHooks } from '@redocly/theme/core/hooks';
|
|
8
|
+
import { SvgViewer } from '@redocly/theme/components/SvgViewer/SvgViewer';
|
|
9
|
+
|
|
10
|
+
type ExcalidrawDiagramProps = {
|
|
11
|
+
diagramHtml: string;
|
|
12
|
+
className?: string;
|
|
13
|
+
};
|
|
14
|
+
|
|
15
|
+
export function ExcalidrawDiagram({ diagramHtml, className }: ExcalidrawDiagramProps): JSX.Element {
|
|
16
|
+
const { useTranslate } = useThemeHooks();
|
|
17
|
+
const { translate } = useTranslate();
|
|
18
|
+
const [isOpen, setIsOpen] = useState(false);
|
|
19
|
+
|
|
20
|
+
const open = () => setIsOpen(true);
|
|
21
|
+
const close = () => setIsOpen(false);
|
|
22
|
+
|
|
23
|
+
return (
|
|
24
|
+
<>
|
|
25
|
+
<Wrapper
|
|
26
|
+
className={concatClassNames('excalidraw-wrapper', className)}
|
|
27
|
+
dangerouslySetInnerHTML={{ __html: diagramHtml }}
|
|
28
|
+
data-component-name="Markdoc/ExcalidrawDiagram/ExcalidrawDiagram"
|
|
29
|
+
onClick={open}
|
|
30
|
+
onKeyDown={(e) => (e.key === 'Enter' || e.key === ' ') && open()}
|
|
31
|
+
role="button"
|
|
32
|
+
tabIndex={0}
|
|
33
|
+
aria-label={translate('excalidraw.openFullscreen', 'Click to open diagram in fullscreen')}
|
|
34
|
+
/>
|
|
35
|
+
<SvgViewer
|
|
36
|
+
isOpen={isOpen}
|
|
37
|
+
onClose={close}
|
|
38
|
+
labels={{
|
|
39
|
+
zoomIn: translate('excalidraw.zoomIn', 'Zoom in'),
|
|
40
|
+
zoomOut: translate('excalidraw.zoomOut', 'Zoom out'),
|
|
41
|
+
fitToView: translate('excalidraw.reset', 'Fit to view'),
|
|
42
|
+
close: translate('excalidraw.close', 'Close'),
|
|
43
|
+
dialogLabel: translate('excalidraw.viewer', 'Excalidraw diagram viewer'),
|
|
44
|
+
}}
|
|
45
|
+
>
|
|
46
|
+
<ViewerContent dangerouslySetInnerHTML={{ __html: diagramHtml }} />
|
|
47
|
+
</SvgViewer>
|
|
48
|
+
</>
|
|
49
|
+
);
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
const Wrapper = styled.div`
|
|
53
|
+
background-color: var(--excalidraw-bg-color);
|
|
54
|
+
border-radius: var(--excalidraw-border-radius);
|
|
55
|
+
cursor: pointer;
|
|
56
|
+
transition: box-shadow 0.2s ease;
|
|
57
|
+
overflow: hidden;
|
|
58
|
+
|
|
59
|
+
&:hover,
|
|
60
|
+
&:focus {
|
|
61
|
+
outline: none;
|
|
62
|
+
box-shadow: 0 0 0 2px var(--border-color-input-focus);
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
svg {
|
|
66
|
+
max-width: 100%;
|
|
67
|
+
height: auto;
|
|
68
|
+
display: block;
|
|
69
|
+
|
|
70
|
+
> rect {
|
|
71
|
+
fill: var(--excalidraw-bg-color);
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
& + & {
|
|
76
|
+
margin-top: var(--spacing-md);
|
|
77
|
+
}
|
|
78
|
+
`;
|
|
79
|
+
|
|
80
|
+
const ViewerContent = styled.div`
|
|
81
|
+
svg {
|
|
82
|
+
display: block;
|
|
83
|
+
max-width: none !important;
|
|
84
|
+
}
|
|
85
|
+
`;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { css } from "styled-components";
|
|
2
|
+
|
|
3
|
+
export const excalidraw = css`
|
|
4
|
+
/**
|
|
5
|
+
* @tokens Excalidraw
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
--excalidraw-bg-color: var(--bg-color); // @presenter Color
|
|
9
|
+
--excalidraw-border-radius: var(--border-radius-lg); // @presenter BorderRadius
|
|
10
|
+
|
|
11
|
+
// @tokens End
|
|
12
|
+
`;
|
|
@@ -3,6 +3,7 @@ export * from '@redocly/theme/markdoc/components/InlineSvg/InlineSvg';
|
|
|
3
3
|
export * from '@redocly/theme/markdoc/components/MarkdocExample/MarkdocExample';
|
|
4
4
|
export * from '@redocly/theme/markdoc/components/Heading/Heading';
|
|
5
5
|
export * from '@redocly/theme/markdoc/components/Mermaid/Mermaid';
|
|
6
|
+
export * from '@redocly/theme/markdoc/components/ExcalidrawDiagram/ExcalidrawDiagram';
|
|
6
7
|
export * from '@redocly/theme/markdoc/components/HtmlBlock/HtmlBlock';
|
|
7
8
|
export * from '@redocly/theme/markdoc/components/Tabs/Tab';
|
|
8
9
|
export * from '@redocly/theme/markdoc/components/Tabs/TabList';
|