@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.
@@ -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)",
@@ -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)",