@almadar/ui 5.21.2 → 5.21.4
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/dist/avl/index.cjs +159 -138
- package/dist/avl/index.js +155 -134
- package/dist/components/index.cjs +159 -138
- package/dist/components/index.js +155 -134
- package/dist/providers/index.cjs +159 -138
- package/dist/providers/index.js +155 -134
- package/dist/runtime/index.cjs +159 -138
- package/dist/runtime/index.js +155 -134
- package/package.json +1 -1
package/dist/providers/index.cjs
CHANGED
|
@@ -15,10 +15,6 @@ var evaluator = require('@almadar/evaluator');
|
|
|
15
15
|
var context = require('@almadar/ui/context');
|
|
16
16
|
var reactRouterDom = require('react-router-dom');
|
|
17
17
|
var ELK = require('elkjs/lib/elk.bundled.js');
|
|
18
|
-
var ReactMarkdown = require('react-markdown');
|
|
19
|
-
var remarkGfm = require('remark-gfm');
|
|
20
|
-
var remarkMath = require('remark-math');
|
|
21
|
-
var rehypeKatex = require('rehype-katex');
|
|
22
18
|
var SyntaxHighlighter = require('react-syntax-highlighter/dist/esm/prism-light.js');
|
|
23
19
|
var dark = require('react-syntax-highlighter/dist/esm/styles/prism/vsc-dark-plus.js');
|
|
24
20
|
var syntax = require('@almadar/syntax');
|
|
@@ -38,6 +34,10 @@ var langDiff = require('react-syntax-highlighter/dist/esm/languages/prism/diff.j
|
|
|
38
34
|
var langToml = require('react-syntax-highlighter/dist/esm/languages/prism/toml.js');
|
|
39
35
|
var langGo = require('react-syntax-highlighter/dist/esm/languages/prism/go.js');
|
|
40
36
|
var langGraphql = require('react-syntax-highlighter/dist/esm/languages/prism/graphql.js');
|
|
37
|
+
var ReactMarkdown = require('react-markdown');
|
|
38
|
+
var remarkGfm = require('remark-gfm');
|
|
39
|
+
var remarkMath = require('remark-math');
|
|
40
|
+
var rehypeKatex = require('rehype-katex');
|
|
41
41
|
var core = require('@almadar/core');
|
|
42
42
|
var core$1 = require('@dnd-kit/core');
|
|
43
43
|
var sortable = require('@dnd-kit/sortable');
|
|
@@ -71,10 +71,6 @@ var PhosphorIcons__namespace = /*#__PURE__*/_interopNamespace(PhosphorIcons);
|
|
|
71
71
|
var TablerIcons__namespace = /*#__PURE__*/_interopNamespace(TablerIcons);
|
|
72
72
|
var FaIcons__namespace = /*#__PURE__*/_interopNamespace(FaIcons);
|
|
73
73
|
var ELK__default = /*#__PURE__*/_interopDefault(ELK);
|
|
74
|
-
var ReactMarkdown__default = /*#__PURE__*/_interopDefault(ReactMarkdown);
|
|
75
|
-
var remarkGfm__default = /*#__PURE__*/_interopDefault(remarkGfm);
|
|
76
|
-
var remarkMath__default = /*#__PURE__*/_interopDefault(remarkMath);
|
|
77
|
-
var rehypeKatex__default = /*#__PURE__*/_interopDefault(rehypeKatex);
|
|
78
74
|
var SyntaxHighlighter__default = /*#__PURE__*/_interopDefault(SyntaxHighlighter);
|
|
79
75
|
var dark__default = /*#__PURE__*/_interopDefault(dark);
|
|
80
76
|
var langJson__default = /*#__PURE__*/_interopDefault(langJson);
|
|
@@ -93,6 +89,10 @@ var langDiff__default = /*#__PURE__*/_interopDefault(langDiff);
|
|
|
93
89
|
var langToml__default = /*#__PURE__*/_interopDefault(langToml);
|
|
94
90
|
var langGo__default = /*#__PURE__*/_interopDefault(langGo);
|
|
95
91
|
var langGraphql__default = /*#__PURE__*/_interopDefault(langGraphql);
|
|
92
|
+
var ReactMarkdown__default = /*#__PURE__*/_interopDefault(ReactMarkdown);
|
|
93
|
+
var remarkGfm__default = /*#__PURE__*/_interopDefault(remarkGfm);
|
|
94
|
+
var remarkMath__default = /*#__PURE__*/_interopDefault(remarkMath);
|
|
95
|
+
var rehypeKatex__default = /*#__PURE__*/_interopDefault(rehypeKatex);
|
|
96
96
|
|
|
97
97
|
var __defProp = Object.defineProperty;
|
|
98
98
|
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
@@ -13822,136 +13822,6 @@ var init_katex_min = __esm({
|
|
|
13822
13822
|
"node_modules/katex/dist/katex.min.css"() {
|
|
13823
13823
|
}
|
|
13824
13824
|
});
|
|
13825
|
-
var MarkdownContent;
|
|
13826
|
-
var init_MarkdownContent = __esm({
|
|
13827
|
-
"components/core/molecules/markdown/MarkdownContent.tsx"() {
|
|
13828
|
-
init_katex_min();
|
|
13829
|
-
init_Box();
|
|
13830
|
-
init_useTranslate();
|
|
13831
|
-
init_cn();
|
|
13832
|
-
MarkdownContent = React85__namespace.default.memo(
|
|
13833
|
-
({ content, direction, className }) => {
|
|
13834
|
-
const { t: _t } = useTranslate();
|
|
13835
|
-
const safeContent = typeof content === "string" ? content : String(content ?? "");
|
|
13836
|
-
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
13837
|
-
Box,
|
|
13838
|
-
{
|
|
13839
|
-
className: cn("prose max-w-none", className),
|
|
13840
|
-
style: {
|
|
13841
|
-
"--tw-prose-body": "var(--color-foreground)",
|
|
13842
|
-
"--tw-prose-headings": "var(--color-foreground)",
|
|
13843
|
-
"--tw-prose-lead": "var(--color-muted-foreground)",
|
|
13844
|
-
"--tw-prose-links": "var(--color-primary)",
|
|
13845
|
-
"--tw-prose-bold": "var(--color-foreground)",
|
|
13846
|
-
"--tw-prose-counters": "var(--color-muted-foreground)",
|
|
13847
|
-
"--tw-prose-bullets": "var(--color-muted-foreground)",
|
|
13848
|
-
"--tw-prose-hr": "var(--color-border)",
|
|
13849
|
-
"--tw-prose-quotes": "var(--color-foreground)",
|
|
13850
|
-
"--tw-prose-quote-borders": "var(--color-primary)",
|
|
13851
|
-
"--tw-prose-captions": "var(--color-muted-foreground)",
|
|
13852
|
-
"--tw-prose-code": "var(--color-foreground)",
|
|
13853
|
-
"--tw-prose-pre-code": "var(--color-foreground)",
|
|
13854
|
-
"--tw-prose-pre-bg": "var(--color-muted)",
|
|
13855
|
-
"--tw-prose-th-borders": "var(--color-border)",
|
|
13856
|
-
"--tw-prose-td-borders": "var(--color-border)",
|
|
13857
|
-
direction
|
|
13858
|
-
},
|
|
13859
|
-
children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
13860
|
-
ReactMarkdown__default.default,
|
|
13861
|
-
{
|
|
13862
|
-
remarkPlugins: [remarkMath__default.default, remarkGfm__default.default],
|
|
13863
|
-
rehypePlugins: [
|
|
13864
|
-
[rehypeKatex__default.default, { strict: false, throwOnError: false }]
|
|
13865
|
-
],
|
|
13866
|
-
components: {
|
|
13867
|
-
// Handle inline code only — fenced code blocks are parsed out separately
|
|
13868
|
-
code({ className: codeClassName, children, ...props }) {
|
|
13869
|
-
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
13870
|
-
"code",
|
|
13871
|
-
{
|
|
13872
|
-
...props,
|
|
13873
|
-
className: codeClassName,
|
|
13874
|
-
style: {
|
|
13875
|
-
backgroundColor: "var(--color-muted)",
|
|
13876
|
-
color: "var(--color-foreground)",
|
|
13877
|
-
border: "1px solid var(--color-border)",
|
|
13878
|
-
padding: "0.125rem 0.375rem",
|
|
13879
|
-
borderRadius: "0.25rem",
|
|
13880
|
-
fontSize: "0.875em",
|
|
13881
|
-
fontFamily: "ui-monospace, monospace"
|
|
13882
|
-
},
|
|
13883
|
-
children
|
|
13884
|
-
}
|
|
13885
|
-
);
|
|
13886
|
-
},
|
|
13887
|
-
// Style links
|
|
13888
|
-
a({ href, children, ...props }) {
|
|
13889
|
-
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
13890
|
-
"a",
|
|
13891
|
-
{
|
|
13892
|
-
href,
|
|
13893
|
-
...props,
|
|
13894
|
-
className: "text-[var(--color-primary)] hover:underline",
|
|
13895
|
-
target: href?.startsWith("http") ? "_blank" : void 0,
|
|
13896
|
-
rel: href?.startsWith("http") ? "noopener noreferrer" : void 0,
|
|
13897
|
-
children
|
|
13898
|
-
}
|
|
13899
|
-
);
|
|
13900
|
-
},
|
|
13901
|
-
// Style tables
|
|
13902
|
-
table({ children, ...props }) {
|
|
13903
|
-
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "overflow-x-auto my-4", children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
13904
|
-
"table",
|
|
13905
|
-
{
|
|
13906
|
-
...props,
|
|
13907
|
-
className: "min-w-full border-collapse border border-[var(--color-border)]",
|
|
13908
|
-
children
|
|
13909
|
-
}
|
|
13910
|
-
) });
|
|
13911
|
-
},
|
|
13912
|
-
th({ children, ...props }) {
|
|
13913
|
-
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
13914
|
-
"th",
|
|
13915
|
-
{
|
|
13916
|
-
...props,
|
|
13917
|
-
className: "border border-[var(--color-border)] bg-[var(--color-muted)] px-4 py-2 text-left font-semibold",
|
|
13918
|
-
children
|
|
13919
|
-
}
|
|
13920
|
-
);
|
|
13921
|
-
},
|
|
13922
|
-
td({ children, ...props }) {
|
|
13923
|
-
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
13924
|
-
"td",
|
|
13925
|
-
{
|
|
13926
|
-
...props,
|
|
13927
|
-
className: "border border-[var(--color-border)] px-4 py-2",
|
|
13928
|
-
children
|
|
13929
|
-
}
|
|
13930
|
-
);
|
|
13931
|
-
},
|
|
13932
|
-
// Style blockquotes
|
|
13933
|
-
blockquote({ children, ...props }) {
|
|
13934
|
-
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
13935
|
-
"blockquote",
|
|
13936
|
-
{
|
|
13937
|
-
...props,
|
|
13938
|
-
className: "border-l-4 border-[var(--color-primary)] pl-4 italic text-[var(--color-foreground)] my-4",
|
|
13939
|
-
children
|
|
13940
|
-
}
|
|
13941
|
-
);
|
|
13942
|
-
}
|
|
13943
|
-
},
|
|
13944
|
-
children: safeContent
|
|
13945
|
-
}
|
|
13946
|
-
)
|
|
13947
|
-
}
|
|
13948
|
-
);
|
|
13949
|
-
},
|
|
13950
|
-
(prev, next) => prev.content === next.content && prev.className === next.className && prev.direction === next.direction
|
|
13951
|
-
);
|
|
13952
|
-
MarkdownContent.displayName = "MarkdownContent";
|
|
13953
|
-
}
|
|
13954
|
-
});
|
|
13955
13825
|
function computeFoldRegions(code) {
|
|
13956
13826
|
const lines = code.split("\n");
|
|
13957
13827
|
const regions = [];
|
|
@@ -14497,6 +14367,155 @@ var init_CodeBlock = __esm({
|
|
|
14497
14367
|
CodeBlock.displayName = "CodeBlock";
|
|
14498
14368
|
}
|
|
14499
14369
|
});
|
|
14370
|
+
var MarkdownContent;
|
|
14371
|
+
var init_MarkdownContent = __esm({
|
|
14372
|
+
"components/core/molecules/markdown/MarkdownContent.tsx"() {
|
|
14373
|
+
init_katex_min();
|
|
14374
|
+
init_Box();
|
|
14375
|
+
init_CodeBlock();
|
|
14376
|
+
init_useTranslate();
|
|
14377
|
+
init_cn();
|
|
14378
|
+
MarkdownContent = React85__namespace.default.memo(
|
|
14379
|
+
({ content, direction, className }) => {
|
|
14380
|
+
const { t: _t } = useTranslate();
|
|
14381
|
+
const safeContent = typeof content === "string" ? content : String(content ?? "");
|
|
14382
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
14383
|
+
Box,
|
|
14384
|
+
{
|
|
14385
|
+
className: cn("prose max-w-none", className),
|
|
14386
|
+
style: {
|
|
14387
|
+
color: "var(--color-foreground)",
|
|
14388
|
+
"--tw-prose-body": "var(--color-foreground)",
|
|
14389
|
+
"--tw-prose-headings": "var(--color-foreground)",
|
|
14390
|
+
"--tw-prose-lead": "var(--color-muted-foreground)",
|
|
14391
|
+
"--tw-prose-links": "var(--color-primary)",
|
|
14392
|
+
"--tw-prose-bold": "var(--color-foreground)",
|
|
14393
|
+
"--tw-prose-counters": "var(--color-muted-foreground)",
|
|
14394
|
+
"--tw-prose-bullets": "var(--color-muted-foreground)",
|
|
14395
|
+
"--tw-prose-hr": "var(--color-border)",
|
|
14396
|
+
"--tw-prose-quotes": "var(--color-foreground)",
|
|
14397
|
+
"--tw-prose-quote-borders": "var(--color-primary)",
|
|
14398
|
+
"--tw-prose-captions": "var(--color-muted-foreground)",
|
|
14399
|
+
"--tw-prose-code": "var(--color-foreground)",
|
|
14400
|
+
"--tw-prose-pre-code": "var(--color-foreground)",
|
|
14401
|
+
"--tw-prose-pre-bg": "var(--color-muted)",
|
|
14402
|
+
"--tw-prose-th-borders": "var(--color-border)",
|
|
14403
|
+
"--tw-prose-td-borders": "var(--color-border)",
|
|
14404
|
+
direction
|
|
14405
|
+
},
|
|
14406
|
+
children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
14407
|
+
ReactMarkdown__default.default,
|
|
14408
|
+
{
|
|
14409
|
+
remarkPlugins: [remarkMath__default.default, remarkGfm__default.default],
|
|
14410
|
+
rehypePlugins: [
|
|
14411
|
+
[rehypeKatex__default.default, { strict: false, throwOnError: false }]
|
|
14412
|
+
],
|
|
14413
|
+
components: {
|
|
14414
|
+
code({
|
|
14415
|
+
className: codeClassName,
|
|
14416
|
+
children,
|
|
14417
|
+
inline,
|
|
14418
|
+
...props
|
|
14419
|
+
}) {
|
|
14420
|
+
if (!inline) {
|
|
14421
|
+
const match = /language-(\w+)/.exec(codeClassName ?? "");
|
|
14422
|
+
const language = match ? match[1] : "text";
|
|
14423
|
+
const code = String(children).replace(/\n$/, "");
|
|
14424
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
14425
|
+
CodeBlock,
|
|
14426
|
+
{
|
|
14427
|
+
code,
|
|
14428
|
+
language,
|
|
14429
|
+
maxHeight: "60vh"
|
|
14430
|
+
}
|
|
14431
|
+
);
|
|
14432
|
+
}
|
|
14433
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
14434
|
+
"code",
|
|
14435
|
+
{
|
|
14436
|
+
...props,
|
|
14437
|
+
className: codeClassName,
|
|
14438
|
+
style: {
|
|
14439
|
+
backgroundColor: "var(--color-muted)",
|
|
14440
|
+
color: "var(--color-foreground)",
|
|
14441
|
+
border: "1px solid var(--color-border)",
|
|
14442
|
+
padding: "0.125rem 0.375rem",
|
|
14443
|
+
borderRadius: "0.25rem",
|
|
14444
|
+
fontSize: "0.875em",
|
|
14445
|
+
fontFamily: "ui-monospace, monospace"
|
|
14446
|
+
},
|
|
14447
|
+
children
|
|
14448
|
+
}
|
|
14449
|
+
);
|
|
14450
|
+
},
|
|
14451
|
+
// Style links
|
|
14452
|
+
a({ href, children, ...props }) {
|
|
14453
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
14454
|
+
"a",
|
|
14455
|
+
{
|
|
14456
|
+
href,
|
|
14457
|
+
...props,
|
|
14458
|
+
className: "text-[var(--color-primary)] hover:underline",
|
|
14459
|
+
target: href?.startsWith("http") ? "_blank" : void 0,
|
|
14460
|
+
rel: href?.startsWith("http") ? "noopener noreferrer" : void 0,
|
|
14461
|
+
children
|
|
14462
|
+
}
|
|
14463
|
+
);
|
|
14464
|
+
},
|
|
14465
|
+
// Style tables
|
|
14466
|
+
table({ children, ...props }) {
|
|
14467
|
+
return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "overflow-x-auto my-4", children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
14468
|
+
"table",
|
|
14469
|
+
{
|
|
14470
|
+
...props,
|
|
14471
|
+
className: "min-w-full border-collapse border border-[var(--color-border)]",
|
|
14472
|
+
children
|
|
14473
|
+
}
|
|
14474
|
+
) });
|
|
14475
|
+
},
|
|
14476
|
+
th({ children, ...props }) {
|
|
14477
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
14478
|
+
"th",
|
|
14479
|
+
{
|
|
14480
|
+
...props,
|
|
14481
|
+
className: "border border-[var(--color-border)] bg-[var(--color-muted)] px-4 py-2 text-left font-semibold",
|
|
14482
|
+
children
|
|
14483
|
+
}
|
|
14484
|
+
);
|
|
14485
|
+
},
|
|
14486
|
+
td({ children, ...props }) {
|
|
14487
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
14488
|
+
"td",
|
|
14489
|
+
{
|
|
14490
|
+
...props,
|
|
14491
|
+
className: "border border-[var(--color-border)] px-4 py-2",
|
|
14492
|
+
children
|
|
14493
|
+
}
|
|
14494
|
+
);
|
|
14495
|
+
},
|
|
14496
|
+
// Style blockquotes
|
|
14497
|
+
blockquote({ children, ...props }) {
|
|
14498
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
14499
|
+
"blockquote",
|
|
14500
|
+
{
|
|
14501
|
+
...props,
|
|
14502
|
+
className: "border-l-4 border-[var(--color-primary)] pl-4 italic text-[var(--color-foreground)] my-4",
|
|
14503
|
+
children
|
|
14504
|
+
}
|
|
14505
|
+
);
|
|
14506
|
+
}
|
|
14507
|
+
},
|
|
14508
|
+
children: safeContent
|
|
14509
|
+
}
|
|
14510
|
+
)
|
|
14511
|
+
}
|
|
14512
|
+
);
|
|
14513
|
+
},
|
|
14514
|
+
(prev, next) => prev.content === next.content && prev.className === next.className && prev.direction === next.direction
|
|
14515
|
+
);
|
|
14516
|
+
MarkdownContent.displayName = "MarkdownContent";
|
|
14517
|
+
}
|
|
14518
|
+
});
|
|
14500
14519
|
function useLongPress(onLongPress, options = {}) {
|
|
14501
14520
|
const { duration = 500, moveThreshold = 10 } = options;
|
|
14502
14521
|
const timerRef = React85.useRef(null);
|
|
@@ -38175,6 +38194,7 @@ function renderRichFieldValue(value, fieldName, fieldType) {
|
|
|
38175
38194
|
{
|
|
38176
38195
|
className: "prose prose-sm max-w-none",
|
|
38177
38196
|
style: {
|
|
38197
|
+
color: "var(--color-foreground)",
|
|
38178
38198
|
"--tw-prose-body": "var(--color-foreground)",
|
|
38179
38199
|
"--tw-prose-headings": "var(--color-foreground)",
|
|
38180
38200
|
"--tw-prose-bold": "var(--color-foreground)",
|
|
@@ -38198,6 +38218,7 @@ function renderRichFieldValue(value, fieldName, fieldType) {
|
|
|
38198
38218
|
{
|
|
38199
38219
|
className: "mt-1 prose prose-sm max-w-none break-words",
|
|
38200
38220
|
style: {
|
|
38221
|
+
color: "var(--color-foreground)",
|
|
38201
38222
|
"--tw-prose-body": "var(--color-foreground)",
|
|
38202
38223
|
"--tw-prose-headings": "var(--color-foreground)",
|
|
38203
38224
|
"--tw-prose-bold": "var(--color-foreground)",
|
package/dist/providers/index.js
CHANGED
|
@@ -15,10 +15,6 @@ import { evaluate, createMinimalContext } from '@almadar/evaluator';
|
|
|
15
15
|
import { useUISlots } from '@almadar/ui/context';
|
|
16
16
|
import { Link, Outlet, useLocation } from 'react-router-dom';
|
|
17
17
|
import ELK from 'elkjs/lib/elk.bundled.js';
|
|
18
|
-
import ReactMarkdown from 'react-markdown';
|
|
19
|
-
import remarkGfm from 'remark-gfm';
|
|
20
|
-
import remarkMath from 'remark-math';
|
|
21
|
-
import rehypeKatex from 'rehype-katex';
|
|
22
18
|
import SyntaxHighlighter from 'react-syntax-highlighter/dist/esm/prism-light.js';
|
|
23
19
|
import dark from 'react-syntax-highlighter/dist/esm/styles/prism/vsc-dark-plus.js';
|
|
24
20
|
import { orbLanguage, loloLanguage, ORB_COLORS } from '@almadar/syntax';
|
|
@@ -38,6 +34,10 @@ import langDiff from 'react-syntax-highlighter/dist/esm/languages/prism/diff.js'
|
|
|
38
34
|
import langToml from 'react-syntax-highlighter/dist/esm/languages/prism/toml.js';
|
|
39
35
|
import langGo from 'react-syntax-highlighter/dist/esm/languages/prism/go.js';
|
|
40
36
|
import langGraphql from 'react-syntax-highlighter/dist/esm/languages/prism/graphql.js';
|
|
37
|
+
import ReactMarkdown from 'react-markdown';
|
|
38
|
+
import remarkGfm from 'remark-gfm';
|
|
39
|
+
import remarkMath from 'remark-math';
|
|
40
|
+
import rehypeKatex from 'rehype-katex';
|
|
41
41
|
import { isInlineTrait } from '@almadar/core';
|
|
42
42
|
import { DndContext, pointerWithin, rectIntersection, closestCorners, useSensors, useSensor, PointerSensor, KeyboardSensor, useDroppable } from '@dnd-kit/core';
|
|
43
43
|
import { useSortable, arrayMove, sortableKeyboardCoordinates, SortableContext, rectSortingStrategy, verticalListSortingStrategy } from '@dnd-kit/sortable';
|
|
@@ -13773,136 +13773,6 @@ var init_katex_min = __esm({
|
|
|
13773
13773
|
"node_modules/katex/dist/katex.min.css"() {
|
|
13774
13774
|
}
|
|
13775
13775
|
});
|
|
13776
|
-
var MarkdownContent;
|
|
13777
|
-
var init_MarkdownContent = __esm({
|
|
13778
|
-
"components/core/molecules/markdown/MarkdownContent.tsx"() {
|
|
13779
|
-
init_katex_min();
|
|
13780
|
-
init_Box();
|
|
13781
|
-
init_useTranslate();
|
|
13782
|
-
init_cn();
|
|
13783
|
-
MarkdownContent = React85__default.memo(
|
|
13784
|
-
({ content, direction, className }) => {
|
|
13785
|
-
const { t: _t } = useTranslate();
|
|
13786
|
-
const safeContent = typeof content === "string" ? content : String(content ?? "");
|
|
13787
|
-
return /* @__PURE__ */ jsx(
|
|
13788
|
-
Box,
|
|
13789
|
-
{
|
|
13790
|
-
className: cn("prose max-w-none", className),
|
|
13791
|
-
style: {
|
|
13792
|
-
"--tw-prose-body": "var(--color-foreground)",
|
|
13793
|
-
"--tw-prose-headings": "var(--color-foreground)",
|
|
13794
|
-
"--tw-prose-lead": "var(--color-muted-foreground)",
|
|
13795
|
-
"--tw-prose-links": "var(--color-primary)",
|
|
13796
|
-
"--tw-prose-bold": "var(--color-foreground)",
|
|
13797
|
-
"--tw-prose-counters": "var(--color-muted-foreground)",
|
|
13798
|
-
"--tw-prose-bullets": "var(--color-muted-foreground)",
|
|
13799
|
-
"--tw-prose-hr": "var(--color-border)",
|
|
13800
|
-
"--tw-prose-quotes": "var(--color-foreground)",
|
|
13801
|
-
"--tw-prose-quote-borders": "var(--color-primary)",
|
|
13802
|
-
"--tw-prose-captions": "var(--color-muted-foreground)",
|
|
13803
|
-
"--tw-prose-code": "var(--color-foreground)",
|
|
13804
|
-
"--tw-prose-pre-code": "var(--color-foreground)",
|
|
13805
|
-
"--tw-prose-pre-bg": "var(--color-muted)",
|
|
13806
|
-
"--tw-prose-th-borders": "var(--color-border)",
|
|
13807
|
-
"--tw-prose-td-borders": "var(--color-border)",
|
|
13808
|
-
direction
|
|
13809
|
-
},
|
|
13810
|
-
children: /* @__PURE__ */ jsx(
|
|
13811
|
-
ReactMarkdown,
|
|
13812
|
-
{
|
|
13813
|
-
remarkPlugins: [remarkMath, remarkGfm],
|
|
13814
|
-
rehypePlugins: [
|
|
13815
|
-
[rehypeKatex, { strict: false, throwOnError: false }]
|
|
13816
|
-
],
|
|
13817
|
-
components: {
|
|
13818
|
-
// Handle inline code only — fenced code blocks are parsed out separately
|
|
13819
|
-
code({ className: codeClassName, children, ...props }) {
|
|
13820
|
-
return /* @__PURE__ */ jsx(
|
|
13821
|
-
"code",
|
|
13822
|
-
{
|
|
13823
|
-
...props,
|
|
13824
|
-
className: codeClassName,
|
|
13825
|
-
style: {
|
|
13826
|
-
backgroundColor: "var(--color-muted)",
|
|
13827
|
-
color: "var(--color-foreground)",
|
|
13828
|
-
border: "1px solid var(--color-border)",
|
|
13829
|
-
padding: "0.125rem 0.375rem",
|
|
13830
|
-
borderRadius: "0.25rem",
|
|
13831
|
-
fontSize: "0.875em",
|
|
13832
|
-
fontFamily: "ui-monospace, monospace"
|
|
13833
|
-
},
|
|
13834
|
-
children
|
|
13835
|
-
}
|
|
13836
|
-
);
|
|
13837
|
-
},
|
|
13838
|
-
// Style links
|
|
13839
|
-
a({ href, children, ...props }) {
|
|
13840
|
-
return /* @__PURE__ */ jsx(
|
|
13841
|
-
"a",
|
|
13842
|
-
{
|
|
13843
|
-
href,
|
|
13844
|
-
...props,
|
|
13845
|
-
className: "text-[var(--color-primary)] hover:underline",
|
|
13846
|
-
target: href?.startsWith("http") ? "_blank" : void 0,
|
|
13847
|
-
rel: href?.startsWith("http") ? "noopener noreferrer" : void 0,
|
|
13848
|
-
children
|
|
13849
|
-
}
|
|
13850
|
-
);
|
|
13851
|
-
},
|
|
13852
|
-
// Style tables
|
|
13853
|
-
table({ children, ...props }) {
|
|
13854
|
-
return /* @__PURE__ */ jsx("div", { className: "overflow-x-auto my-4", children: /* @__PURE__ */ jsx(
|
|
13855
|
-
"table",
|
|
13856
|
-
{
|
|
13857
|
-
...props,
|
|
13858
|
-
className: "min-w-full border-collapse border border-[var(--color-border)]",
|
|
13859
|
-
children
|
|
13860
|
-
}
|
|
13861
|
-
) });
|
|
13862
|
-
},
|
|
13863
|
-
th({ children, ...props }) {
|
|
13864
|
-
return /* @__PURE__ */ jsx(
|
|
13865
|
-
"th",
|
|
13866
|
-
{
|
|
13867
|
-
...props,
|
|
13868
|
-
className: "border border-[var(--color-border)] bg-[var(--color-muted)] px-4 py-2 text-left font-semibold",
|
|
13869
|
-
children
|
|
13870
|
-
}
|
|
13871
|
-
);
|
|
13872
|
-
},
|
|
13873
|
-
td({ children, ...props }) {
|
|
13874
|
-
return /* @__PURE__ */ jsx(
|
|
13875
|
-
"td",
|
|
13876
|
-
{
|
|
13877
|
-
...props,
|
|
13878
|
-
className: "border border-[var(--color-border)] px-4 py-2",
|
|
13879
|
-
children
|
|
13880
|
-
}
|
|
13881
|
-
);
|
|
13882
|
-
},
|
|
13883
|
-
// Style blockquotes
|
|
13884
|
-
blockquote({ children, ...props }) {
|
|
13885
|
-
return /* @__PURE__ */ jsx(
|
|
13886
|
-
"blockquote",
|
|
13887
|
-
{
|
|
13888
|
-
...props,
|
|
13889
|
-
className: "border-l-4 border-[var(--color-primary)] pl-4 italic text-[var(--color-foreground)] my-4",
|
|
13890
|
-
children
|
|
13891
|
-
}
|
|
13892
|
-
);
|
|
13893
|
-
}
|
|
13894
|
-
},
|
|
13895
|
-
children: safeContent
|
|
13896
|
-
}
|
|
13897
|
-
)
|
|
13898
|
-
}
|
|
13899
|
-
);
|
|
13900
|
-
},
|
|
13901
|
-
(prev, next) => prev.content === next.content && prev.className === next.className && prev.direction === next.direction
|
|
13902
|
-
);
|
|
13903
|
-
MarkdownContent.displayName = "MarkdownContent";
|
|
13904
|
-
}
|
|
13905
|
-
});
|
|
13906
13776
|
function computeFoldRegions(code) {
|
|
13907
13777
|
const lines = code.split("\n");
|
|
13908
13778
|
const regions = [];
|
|
@@ -14448,6 +14318,155 @@ var init_CodeBlock = __esm({
|
|
|
14448
14318
|
CodeBlock.displayName = "CodeBlock";
|
|
14449
14319
|
}
|
|
14450
14320
|
});
|
|
14321
|
+
var MarkdownContent;
|
|
14322
|
+
var init_MarkdownContent = __esm({
|
|
14323
|
+
"components/core/molecules/markdown/MarkdownContent.tsx"() {
|
|
14324
|
+
init_katex_min();
|
|
14325
|
+
init_Box();
|
|
14326
|
+
init_CodeBlock();
|
|
14327
|
+
init_useTranslate();
|
|
14328
|
+
init_cn();
|
|
14329
|
+
MarkdownContent = React85__default.memo(
|
|
14330
|
+
({ content, direction, className }) => {
|
|
14331
|
+
const { t: _t } = useTranslate();
|
|
14332
|
+
const safeContent = typeof content === "string" ? content : String(content ?? "");
|
|
14333
|
+
return /* @__PURE__ */ jsx(
|
|
14334
|
+
Box,
|
|
14335
|
+
{
|
|
14336
|
+
className: cn("prose max-w-none", className),
|
|
14337
|
+
style: {
|
|
14338
|
+
color: "var(--color-foreground)",
|
|
14339
|
+
"--tw-prose-body": "var(--color-foreground)",
|
|
14340
|
+
"--tw-prose-headings": "var(--color-foreground)",
|
|
14341
|
+
"--tw-prose-lead": "var(--color-muted-foreground)",
|
|
14342
|
+
"--tw-prose-links": "var(--color-primary)",
|
|
14343
|
+
"--tw-prose-bold": "var(--color-foreground)",
|
|
14344
|
+
"--tw-prose-counters": "var(--color-muted-foreground)",
|
|
14345
|
+
"--tw-prose-bullets": "var(--color-muted-foreground)",
|
|
14346
|
+
"--tw-prose-hr": "var(--color-border)",
|
|
14347
|
+
"--tw-prose-quotes": "var(--color-foreground)",
|
|
14348
|
+
"--tw-prose-quote-borders": "var(--color-primary)",
|
|
14349
|
+
"--tw-prose-captions": "var(--color-muted-foreground)",
|
|
14350
|
+
"--tw-prose-code": "var(--color-foreground)",
|
|
14351
|
+
"--tw-prose-pre-code": "var(--color-foreground)",
|
|
14352
|
+
"--tw-prose-pre-bg": "var(--color-muted)",
|
|
14353
|
+
"--tw-prose-th-borders": "var(--color-border)",
|
|
14354
|
+
"--tw-prose-td-borders": "var(--color-border)",
|
|
14355
|
+
direction
|
|
14356
|
+
},
|
|
14357
|
+
children: /* @__PURE__ */ jsx(
|
|
14358
|
+
ReactMarkdown,
|
|
14359
|
+
{
|
|
14360
|
+
remarkPlugins: [remarkMath, remarkGfm],
|
|
14361
|
+
rehypePlugins: [
|
|
14362
|
+
[rehypeKatex, { strict: false, throwOnError: false }]
|
|
14363
|
+
],
|
|
14364
|
+
components: {
|
|
14365
|
+
code({
|
|
14366
|
+
className: codeClassName,
|
|
14367
|
+
children,
|
|
14368
|
+
inline,
|
|
14369
|
+
...props
|
|
14370
|
+
}) {
|
|
14371
|
+
if (!inline) {
|
|
14372
|
+
const match = /language-(\w+)/.exec(codeClassName ?? "");
|
|
14373
|
+
const language = match ? match[1] : "text";
|
|
14374
|
+
const code = String(children).replace(/\n$/, "");
|
|
14375
|
+
return /* @__PURE__ */ jsx(
|
|
14376
|
+
CodeBlock,
|
|
14377
|
+
{
|
|
14378
|
+
code,
|
|
14379
|
+
language,
|
|
14380
|
+
maxHeight: "60vh"
|
|
14381
|
+
}
|
|
14382
|
+
);
|
|
14383
|
+
}
|
|
14384
|
+
return /* @__PURE__ */ jsx(
|
|
14385
|
+
"code",
|
|
14386
|
+
{
|
|
14387
|
+
...props,
|
|
14388
|
+
className: codeClassName,
|
|
14389
|
+
style: {
|
|
14390
|
+
backgroundColor: "var(--color-muted)",
|
|
14391
|
+
color: "var(--color-foreground)",
|
|
14392
|
+
border: "1px solid var(--color-border)",
|
|
14393
|
+
padding: "0.125rem 0.375rem",
|
|
14394
|
+
borderRadius: "0.25rem",
|
|
14395
|
+
fontSize: "0.875em",
|
|
14396
|
+
fontFamily: "ui-monospace, monospace"
|
|
14397
|
+
},
|
|
14398
|
+
children
|
|
14399
|
+
}
|
|
14400
|
+
);
|
|
14401
|
+
},
|
|
14402
|
+
// Style links
|
|
14403
|
+
a({ href, children, ...props }) {
|
|
14404
|
+
return /* @__PURE__ */ jsx(
|
|
14405
|
+
"a",
|
|
14406
|
+
{
|
|
14407
|
+
href,
|
|
14408
|
+
...props,
|
|
14409
|
+
className: "text-[var(--color-primary)] hover:underline",
|
|
14410
|
+
target: href?.startsWith("http") ? "_blank" : void 0,
|
|
14411
|
+
rel: href?.startsWith("http") ? "noopener noreferrer" : void 0,
|
|
14412
|
+
children
|
|
14413
|
+
}
|
|
14414
|
+
);
|
|
14415
|
+
},
|
|
14416
|
+
// Style tables
|
|
14417
|
+
table({ children, ...props }) {
|
|
14418
|
+
return /* @__PURE__ */ jsx("div", { className: "overflow-x-auto my-4", children: /* @__PURE__ */ jsx(
|
|
14419
|
+
"table",
|
|
14420
|
+
{
|
|
14421
|
+
...props,
|
|
14422
|
+
className: "min-w-full border-collapse border border-[var(--color-border)]",
|
|
14423
|
+
children
|
|
14424
|
+
}
|
|
14425
|
+
) });
|
|
14426
|
+
},
|
|
14427
|
+
th({ children, ...props }) {
|
|
14428
|
+
return /* @__PURE__ */ jsx(
|
|
14429
|
+
"th",
|
|
14430
|
+
{
|
|
14431
|
+
...props,
|
|
14432
|
+
className: "border border-[var(--color-border)] bg-[var(--color-muted)] px-4 py-2 text-left font-semibold",
|
|
14433
|
+
children
|
|
14434
|
+
}
|
|
14435
|
+
);
|
|
14436
|
+
},
|
|
14437
|
+
td({ children, ...props }) {
|
|
14438
|
+
return /* @__PURE__ */ jsx(
|
|
14439
|
+
"td",
|
|
14440
|
+
{
|
|
14441
|
+
...props,
|
|
14442
|
+
className: "border border-[var(--color-border)] px-4 py-2",
|
|
14443
|
+
children
|
|
14444
|
+
}
|
|
14445
|
+
);
|
|
14446
|
+
},
|
|
14447
|
+
// Style blockquotes
|
|
14448
|
+
blockquote({ children, ...props }) {
|
|
14449
|
+
return /* @__PURE__ */ jsx(
|
|
14450
|
+
"blockquote",
|
|
14451
|
+
{
|
|
14452
|
+
...props,
|
|
14453
|
+
className: "border-l-4 border-[var(--color-primary)] pl-4 italic text-[var(--color-foreground)] my-4",
|
|
14454
|
+
children
|
|
14455
|
+
}
|
|
14456
|
+
);
|
|
14457
|
+
}
|
|
14458
|
+
},
|
|
14459
|
+
children: safeContent
|
|
14460
|
+
}
|
|
14461
|
+
)
|
|
14462
|
+
}
|
|
14463
|
+
);
|
|
14464
|
+
},
|
|
14465
|
+
(prev, next) => prev.content === next.content && prev.className === next.className && prev.direction === next.direction
|
|
14466
|
+
);
|
|
14467
|
+
MarkdownContent.displayName = "MarkdownContent";
|
|
14468
|
+
}
|
|
14469
|
+
});
|
|
14451
14470
|
function useLongPress(onLongPress, options = {}) {
|
|
14452
14471
|
const { duration = 500, moveThreshold = 10 } = options;
|
|
14453
14472
|
const timerRef = useRef(null);
|
|
@@ -38126,6 +38145,7 @@ function renderRichFieldValue(value, fieldName, fieldType) {
|
|
|
38126
38145
|
{
|
|
38127
38146
|
className: "prose prose-sm max-w-none",
|
|
38128
38147
|
style: {
|
|
38148
|
+
color: "var(--color-foreground)",
|
|
38129
38149
|
"--tw-prose-body": "var(--color-foreground)",
|
|
38130
38150
|
"--tw-prose-headings": "var(--color-foreground)",
|
|
38131
38151
|
"--tw-prose-bold": "var(--color-foreground)",
|
|
@@ -38149,6 +38169,7 @@ function renderRichFieldValue(value, fieldName, fieldType) {
|
|
|
38149
38169
|
{
|
|
38150
38170
|
className: "mt-1 prose prose-sm max-w-none break-words",
|
|
38151
38171
|
style: {
|
|
38172
|
+
color: "var(--color-foreground)",
|
|
38152
38173
|
"--tw-prose-body": "var(--color-foreground)",
|
|
38153
38174
|
"--tw-prose-headings": "var(--color-foreground)",
|
|
38154
38175
|
"--tw-prose-bold": "var(--color-foreground)",
|