@almadar/ui 2.54.0 → 2.55.0

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.
@@ -22120,7 +22120,8 @@ var CodeBlock = React125__namespace.default.memo(
22120
22120
  foldable: foldableProp,
22121
22121
  className,
22122
22122
  editable = false,
22123
- onChange
22123
+ onChange,
22124
+ errorLines
22124
22125
  }) => {
22125
22126
  const code = typeof rawCode === "string" ? rawCode : String(rawCode ?? "");
22126
22127
  const isOrb = language === "orb";
@@ -22152,6 +22153,28 @@ var CodeBlock = React125__namespace.default.memo(
22152
22153
  ov.scrollLeft = ta.scrollLeft;
22153
22154
  }
22154
22155
  }, []);
22156
+ const errorLineProps = React125.useMemo(() => {
22157
+ if (!errorLines || errorLines.size === 0) {
22158
+ return LINE_PROPS_FN;
22159
+ }
22160
+ return (lineNumber) => {
22161
+ const severity = errorLines.get(lineNumber);
22162
+ if (!severity) {
22163
+ return { "data-line": String(lineNumber - 1) };
22164
+ }
22165
+ return {
22166
+ "data-line": String(lineNumber - 1),
22167
+ style: {
22168
+ display: "block",
22169
+ backgroundColor: severity === "error" ? "rgba(248, 113, 113, 0.18)" : "rgba(251, 191, 36, 0.18)",
22170
+ // amber-400 @ 18%
22171
+ borderLeft: `3px solid ${severity === "error" ? "#ef4444" : "#f59e0b"}`,
22172
+ paddingLeft: "0.5rem",
22173
+ marginLeft: "-0.5rem"
22174
+ }
22175
+ };
22176
+ };
22177
+ }, [errorLines]);
22155
22178
  const isFoldable = foldableProp ?? (language === "orb" || language === "json");
22156
22179
  const [collapsed, setCollapsed] = React125.useState(() => /* @__PURE__ */ new Set());
22157
22180
  const foldRegions = React125.useMemo(
@@ -22312,24 +22335,40 @@ var CodeBlock = React125__namespace.default.memo(
22312
22335
  }
22313
22336
  ),
22314
22337
  editable ? (
22315
- /* GAP-77: editable mode = transparent Textarea on top + Prism-highlighted
22316
- overlay underneath. The textarea is uncontrolled (defaultValue + key)
22317
- to avoid cursor jumps; the overlay reads `editableValue` which is
22318
- mirrored from the textarea via onChange. Both elements share IDENTICAL
22319
- font / line-height / padding so the highlighted text aligns with the
22320
- textarea's invisible glyphs.
22338
+ /* GAP-77 / GAP-82 / GAP-83: editable mode = transparent textarea on
22339
+ top of a Prism-highlighted SyntaxHighlighter overlay.
22340
+
22341
+ Layout: BOTH children are `position: absolute, inset: 0` so neither
22342
+ contributes to flow. The parent Box has `height: 100%` so it fills
22343
+ whatever container the consumer provides (the consumer is
22344
+ responsible for giving the parent a real height — usually via flex
22345
+ column with `minHeight: 0`).
22346
+
22347
+ Stacking: the overlay is FIRST in DOM order so it paints first
22348
+ (behind), the textarea is SECOND so it paints second (on top). No
22349
+ explicit z-index — DOM order alone determines stacking inside the
22350
+ parent's stacking context. The textarea has `color: transparent`
22351
+ plus `WebkitTextFillColor: transparent` (Safari) so its glyphs
22352
+ never paint, but the caret stays visible via `caretColor`.
22321
22353
 
22322
- Scroll sync: the overlay has `pointer-events: none` and the textarea
22323
- scrolls; `handleEditableScroll` keeps the overlay's scroll matched. */
22354
+ Scroll sync: textarea scrolls naturally; `handleEditableScroll`
22355
+ mirrors its scrollTop/scrollLeft onto the overlay div so the
22356
+ highlighted spans stay aligned with the textarea content.
22357
+
22358
+ Error highlights (GAP-80): `errorLines` prop accepts a Map of
22359
+ 1-based line numbers → severity. The overlay's SyntaxHighlighter
22360
+ uses `wrapLines` + `lineProps` to paint a colored background on
22361
+ those lines. */
22324
22362
  /* @__PURE__ */ jsxRuntime.jsxs(
22325
22363
  Box,
22326
22364
  {
22327
22365
  style: {
22328
22366
  position: "relative",
22329
- backgroundColor: "#1e1e1e",
22330
- borderRadius: hasHeader ? "0 0 0.5rem 0.5rem" : "0.5rem",
22367
+ height: "100%",
22331
22368
  minHeight: "160px",
22332
22369
  maxHeight,
22370
+ backgroundColor: "#1e1e1e",
22371
+ borderRadius: hasHeader ? "0 0 0.5rem 0.5rem" : "0.5rem",
22333
22372
  overflow: "hidden"
22334
22373
  },
22335
22374
  children: [
@@ -22340,10 +22379,12 @@ var CodeBlock = React125__namespace.default.memo(
22340
22379
  "aria-hidden": true,
22341
22380
  style: {
22342
22381
  position: "absolute",
22343
- inset: 0,
22382
+ top: 0,
22383
+ left: 0,
22384
+ width: "100%",
22385
+ height: "100%",
22344
22386
  overflow: "hidden",
22345
- pointerEvents: "none",
22346
- maxHeight
22387
+ pointerEvents: "none"
22347
22388
  },
22348
22389
  children: /* @__PURE__ */ jsxRuntime.jsx(
22349
22390
  SyntaxHighlighter__default.default,
@@ -22351,6 +22392,8 @@ var CodeBlock = React125__namespace.default.memo(
22351
22392
  PreTag: "div",
22352
22393
  language,
22353
22394
  style: activeStyle,
22395
+ wrapLines: errorLines && errorLines.size > 0,
22396
+ lineProps: errorLineProps,
22354
22397
  customStyle: {
22355
22398
  backgroundColor: "transparent",
22356
22399
  borderRadius: 0,
@@ -22358,7 +22401,6 @@ var CodeBlock = React125__namespace.default.memo(
22358
22401
  margin: 0,
22359
22402
  whiteSpace: "pre",
22360
22403
  minWidth: "100%",
22361
- minHeight: "160px",
22362
22404
  fontFamily: 'ui-monospace, SFMono-Regular, Menlo, Monaco, "Cascadia Mono", "Courier New", monospace',
22363
22405
  fontSize: "13px",
22364
22406
  lineHeight: "1.5"
@@ -22387,23 +22429,23 @@ var CodeBlock = React125__namespace.default.memo(
22387
22429
  onScroll: handleEditableScroll,
22388
22430
  spellCheck: false,
22389
22431
  style: {
22390
- position: "relative",
22391
- zIndex: 1,
22392
- fontFamily: 'ui-monospace, SFMono-Regular, Menlo, Monaco, "Cascadia Mono", "Courier New", monospace',
22393
- fontSize: "13px",
22394
- lineHeight: "1.5",
22395
- backgroundColor: "transparent",
22396
- color: "transparent",
22397
- caretColor: "#e6e6e6",
22398
- borderRadius: hasHeader ? "0 0 0.5rem 0.5rem" : "0.5rem",
22399
- border: "none",
22400
- padding: "1rem",
22401
- resize: "none",
22402
- minHeight: "160px",
22403
- maxHeight,
22432
+ position: "absolute",
22433
+ top: 0,
22434
+ left: 0,
22404
22435
  width: "100%",
22405
22436
  height: "100%",
22437
+ padding: "1rem",
22438
+ margin: 0,
22439
+ border: "none",
22406
22440
  outline: "none",
22441
+ resize: "none",
22442
+ backgroundColor: "transparent",
22443
+ color: "transparent",
22444
+ caretColor: "#e6e6e6",
22445
+ WebkitTextFillColor: "transparent",
22446
+ fontFamily: 'ui-monospace, SFMono-Regular, Menlo, Monaco, "Cascadia Mono", "Courier New", monospace',
22447
+ fontSize: "13px",
22448
+ lineHeight: "1.5",
22407
22449
  whiteSpace: "pre",
22408
22450
  overflowWrap: "normal",
22409
22451
  overflow: "auto"
@@ -22434,7 +22476,7 @@ var CodeBlock = React125__namespace.default.memo(
22434
22476
  )
22435
22477
  ] });
22436
22478
  },
22437
- (prev, next) => prev.language === next.language && prev.code === next.code && prev.showCopyButton === next.showCopyButton && prev.maxHeight === next.maxHeight && prev.foldable === next.foldable && prev.editable === next.editable && prev.onChange === next.onChange
22479
+ (prev, next) => prev.language === next.language && prev.code === next.code && prev.showCopyButton === next.showCopyButton && prev.maxHeight === next.maxHeight && prev.foldable === next.foldable && prev.editable === next.editable && prev.onChange === next.onChange && prev.errorLines === next.errorLines
22438
22480
  );
22439
22481
  CodeBlock.displayName = "CodeBlock";
22440
22482
 
package/dist/avl/index.js CHANGED
@@ -22074,7 +22074,8 @@ var CodeBlock = React125__default.memo(
22074
22074
  foldable: foldableProp,
22075
22075
  className,
22076
22076
  editable = false,
22077
- onChange
22077
+ onChange,
22078
+ errorLines
22078
22079
  }) => {
22079
22080
  const code = typeof rawCode === "string" ? rawCode : String(rawCode ?? "");
22080
22081
  const isOrb = language === "orb";
@@ -22106,6 +22107,28 @@ var CodeBlock = React125__default.memo(
22106
22107
  ov.scrollLeft = ta.scrollLeft;
22107
22108
  }
22108
22109
  }, []);
22110
+ const errorLineProps = useMemo(() => {
22111
+ if (!errorLines || errorLines.size === 0) {
22112
+ return LINE_PROPS_FN;
22113
+ }
22114
+ return (lineNumber) => {
22115
+ const severity = errorLines.get(lineNumber);
22116
+ if (!severity) {
22117
+ return { "data-line": String(lineNumber - 1) };
22118
+ }
22119
+ return {
22120
+ "data-line": String(lineNumber - 1),
22121
+ style: {
22122
+ display: "block",
22123
+ backgroundColor: severity === "error" ? "rgba(248, 113, 113, 0.18)" : "rgba(251, 191, 36, 0.18)",
22124
+ // amber-400 @ 18%
22125
+ borderLeft: `3px solid ${severity === "error" ? "#ef4444" : "#f59e0b"}`,
22126
+ paddingLeft: "0.5rem",
22127
+ marginLeft: "-0.5rem"
22128
+ }
22129
+ };
22130
+ };
22131
+ }, [errorLines]);
22109
22132
  const isFoldable = foldableProp ?? (language === "orb" || language === "json");
22110
22133
  const [collapsed, setCollapsed] = useState(() => /* @__PURE__ */ new Set());
22111
22134
  const foldRegions = useMemo(
@@ -22266,24 +22289,40 @@ var CodeBlock = React125__default.memo(
22266
22289
  }
22267
22290
  ),
22268
22291
  editable ? (
22269
- /* GAP-77: editable mode = transparent Textarea on top + Prism-highlighted
22270
- overlay underneath. The textarea is uncontrolled (defaultValue + key)
22271
- to avoid cursor jumps; the overlay reads `editableValue` which is
22272
- mirrored from the textarea via onChange. Both elements share IDENTICAL
22273
- font / line-height / padding so the highlighted text aligns with the
22274
- textarea's invisible glyphs.
22292
+ /* GAP-77 / GAP-82 / GAP-83: editable mode = transparent textarea on
22293
+ top of a Prism-highlighted SyntaxHighlighter overlay.
22294
+
22295
+ Layout: BOTH children are `position: absolute, inset: 0` so neither
22296
+ contributes to flow. The parent Box has `height: 100%` so it fills
22297
+ whatever container the consumer provides (the consumer is
22298
+ responsible for giving the parent a real height — usually via flex
22299
+ column with `minHeight: 0`).
22300
+
22301
+ Stacking: the overlay is FIRST in DOM order so it paints first
22302
+ (behind), the textarea is SECOND so it paints second (on top). No
22303
+ explicit z-index — DOM order alone determines stacking inside the
22304
+ parent's stacking context. The textarea has `color: transparent`
22305
+ plus `WebkitTextFillColor: transparent` (Safari) so its glyphs
22306
+ never paint, but the caret stays visible via `caretColor`.
22275
22307
 
22276
- Scroll sync: the overlay has `pointer-events: none` and the textarea
22277
- scrolls; `handleEditableScroll` keeps the overlay's scroll matched. */
22308
+ Scroll sync: textarea scrolls naturally; `handleEditableScroll`
22309
+ mirrors its scrollTop/scrollLeft onto the overlay div so the
22310
+ highlighted spans stay aligned with the textarea content.
22311
+
22312
+ Error highlights (GAP-80): `errorLines` prop accepts a Map of
22313
+ 1-based line numbers → severity. The overlay's SyntaxHighlighter
22314
+ uses `wrapLines` + `lineProps` to paint a colored background on
22315
+ those lines. */
22278
22316
  /* @__PURE__ */ jsxs(
22279
22317
  Box,
22280
22318
  {
22281
22319
  style: {
22282
22320
  position: "relative",
22283
- backgroundColor: "#1e1e1e",
22284
- borderRadius: hasHeader ? "0 0 0.5rem 0.5rem" : "0.5rem",
22321
+ height: "100%",
22285
22322
  minHeight: "160px",
22286
22323
  maxHeight,
22324
+ backgroundColor: "#1e1e1e",
22325
+ borderRadius: hasHeader ? "0 0 0.5rem 0.5rem" : "0.5rem",
22287
22326
  overflow: "hidden"
22288
22327
  },
22289
22328
  children: [
@@ -22294,10 +22333,12 @@ var CodeBlock = React125__default.memo(
22294
22333
  "aria-hidden": true,
22295
22334
  style: {
22296
22335
  position: "absolute",
22297
- inset: 0,
22336
+ top: 0,
22337
+ left: 0,
22338
+ width: "100%",
22339
+ height: "100%",
22298
22340
  overflow: "hidden",
22299
- pointerEvents: "none",
22300
- maxHeight
22341
+ pointerEvents: "none"
22301
22342
  },
22302
22343
  children: /* @__PURE__ */ jsx(
22303
22344
  SyntaxHighlighter,
@@ -22305,6 +22346,8 @@ var CodeBlock = React125__default.memo(
22305
22346
  PreTag: "div",
22306
22347
  language,
22307
22348
  style: activeStyle,
22349
+ wrapLines: errorLines && errorLines.size > 0,
22350
+ lineProps: errorLineProps,
22308
22351
  customStyle: {
22309
22352
  backgroundColor: "transparent",
22310
22353
  borderRadius: 0,
@@ -22312,7 +22355,6 @@ var CodeBlock = React125__default.memo(
22312
22355
  margin: 0,
22313
22356
  whiteSpace: "pre",
22314
22357
  minWidth: "100%",
22315
- minHeight: "160px",
22316
22358
  fontFamily: 'ui-monospace, SFMono-Regular, Menlo, Monaco, "Cascadia Mono", "Courier New", monospace',
22317
22359
  fontSize: "13px",
22318
22360
  lineHeight: "1.5"
@@ -22341,23 +22383,23 @@ var CodeBlock = React125__default.memo(
22341
22383
  onScroll: handleEditableScroll,
22342
22384
  spellCheck: false,
22343
22385
  style: {
22344
- position: "relative",
22345
- zIndex: 1,
22346
- fontFamily: 'ui-monospace, SFMono-Regular, Menlo, Monaco, "Cascadia Mono", "Courier New", monospace',
22347
- fontSize: "13px",
22348
- lineHeight: "1.5",
22349
- backgroundColor: "transparent",
22350
- color: "transparent",
22351
- caretColor: "#e6e6e6",
22352
- borderRadius: hasHeader ? "0 0 0.5rem 0.5rem" : "0.5rem",
22353
- border: "none",
22354
- padding: "1rem",
22355
- resize: "none",
22356
- minHeight: "160px",
22357
- maxHeight,
22386
+ position: "absolute",
22387
+ top: 0,
22388
+ left: 0,
22358
22389
  width: "100%",
22359
22390
  height: "100%",
22391
+ padding: "1rem",
22392
+ margin: 0,
22393
+ border: "none",
22360
22394
  outline: "none",
22395
+ resize: "none",
22396
+ backgroundColor: "transparent",
22397
+ color: "transparent",
22398
+ caretColor: "#e6e6e6",
22399
+ WebkitTextFillColor: "transparent",
22400
+ fontFamily: 'ui-monospace, SFMono-Regular, Menlo, Monaco, "Cascadia Mono", "Courier New", monospace',
22401
+ fontSize: "13px",
22402
+ lineHeight: "1.5",
22361
22403
  whiteSpace: "pre",
22362
22404
  overflowWrap: "normal",
22363
22405
  overflow: "auto"
@@ -22388,7 +22430,7 @@ var CodeBlock = React125__default.memo(
22388
22430
  )
22389
22431
  ] });
22390
22432
  },
22391
- (prev, next) => prev.language === next.language && prev.code === next.code && prev.showCopyButton === next.showCopyButton && prev.maxHeight === next.maxHeight && prev.foldable === next.foldable && prev.editable === next.editable && prev.onChange === next.onChange
22433
+ (prev, next) => prev.language === next.language && prev.code === next.code && prev.showCopyButton === next.showCopyButton && prev.maxHeight === next.maxHeight && prev.foldable === next.foldable && prev.editable === next.editable && prev.onChange === next.onChange && prev.errorLines === next.errorLines
22392
22434
  );
22393
22435
  CodeBlock.displayName = "CodeBlock";
22394
22436
 
@@ -9211,7 +9211,8 @@ var CodeBlock = React90__namespace.default.memo(
9211
9211
  foldable: foldableProp,
9212
9212
  className,
9213
9213
  editable = false,
9214
- onChange
9214
+ onChange,
9215
+ errorLines
9215
9216
  }) => {
9216
9217
  const code = typeof rawCode === "string" ? rawCode : String(rawCode ?? "");
9217
9218
  const isOrb = language === "orb";
@@ -9243,6 +9244,28 @@ var CodeBlock = React90__namespace.default.memo(
9243
9244
  ov.scrollLeft = ta.scrollLeft;
9244
9245
  }
9245
9246
  }, []);
9247
+ const errorLineProps = React90.useMemo(() => {
9248
+ if (!errorLines || errorLines.size === 0) {
9249
+ return LINE_PROPS_FN;
9250
+ }
9251
+ return (lineNumber) => {
9252
+ const severity = errorLines.get(lineNumber);
9253
+ if (!severity) {
9254
+ return { "data-line": String(lineNumber - 1) };
9255
+ }
9256
+ return {
9257
+ "data-line": String(lineNumber - 1),
9258
+ style: {
9259
+ display: "block",
9260
+ backgroundColor: severity === "error" ? "rgba(248, 113, 113, 0.18)" : "rgba(251, 191, 36, 0.18)",
9261
+ // amber-400 @ 18%
9262
+ borderLeft: `3px solid ${severity === "error" ? "#ef4444" : "#f59e0b"}`,
9263
+ paddingLeft: "0.5rem",
9264
+ marginLeft: "-0.5rem"
9265
+ }
9266
+ };
9267
+ };
9268
+ }, [errorLines]);
9246
9269
  const isFoldable = foldableProp ?? (language === "orb" || language === "json");
9247
9270
  const [collapsed, setCollapsed] = React90.useState(() => /* @__PURE__ */ new Set());
9248
9271
  const foldRegions = React90.useMemo(
@@ -9403,24 +9426,40 @@ var CodeBlock = React90__namespace.default.memo(
9403
9426
  }
9404
9427
  ),
9405
9428
  editable ? (
9406
- /* GAP-77: editable mode = transparent Textarea on top + Prism-highlighted
9407
- overlay underneath. The textarea is uncontrolled (defaultValue + key)
9408
- to avoid cursor jumps; the overlay reads `editableValue` which is
9409
- mirrored from the textarea via onChange. Both elements share IDENTICAL
9410
- font / line-height / padding so the highlighted text aligns with the
9411
- textarea's invisible glyphs.
9429
+ /* GAP-77 / GAP-82 / GAP-83: editable mode = transparent textarea on
9430
+ top of a Prism-highlighted SyntaxHighlighter overlay.
9431
+
9432
+ Layout: BOTH children are `position: absolute, inset: 0` so neither
9433
+ contributes to flow. The parent Box has `height: 100%` so it fills
9434
+ whatever container the consumer provides (the consumer is
9435
+ responsible for giving the parent a real height — usually via flex
9436
+ column with `minHeight: 0`).
9437
+
9438
+ Stacking: the overlay is FIRST in DOM order so it paints first
9439
+ (behind), the textarea is SECOND so it paints second (on top). No
9440
+ explicit z-index — DOM order alone determines stacking inside the
9441
+ parent's stacking context. The textarea has `color: transparent`
9442
+ plus `WebkitTextFillColor: transparent` (Safari) so its glyphs
9443
+ never paint, but the caret stays visible via `caretColor`.
9412
9444
 
9413
- Scroll sync: the overlay has `pointer-events: none` and the textarea
9414
- scrolls; `handleEditableScroll` keeps the overlay's scroll matched. */
9445
+ Scroll sync: textarea scrolls naturally; `handleEditableScroll`
9446
+ mirrors its scrollTop/scrollLeft onto the overlay div so the
9447
+ highlighted spans stay aligned with the textarea content.
9448
+
9449
+ Error highlights (GAP-80): `errorLines` prop accepts a Map of
9450
+ 1-based line numbers → severity. The overlay's SyntaxHighlighter
9451
+ uses `wrapLines` + `lineProps` to paint a colored background on
9452
+ those lines. */
9415
9453
  /* @__PURE__ */ jsxRuntime.jsxs(
9416
9454
  Box,
9417
9455
  {
9418
9456
  style: {
9419
9457
  position: "relative",
9420
- backgroundColor: "#1e1e1e",
9421
- borderRadius: hasHeader ? "0 0 0.5rem 0.5rem" : "0.5rem",
9458
+ height: "100%",
9422
9459
  minHeight: "160px",
9423
9460
  maxHeight,
9461
+ backgroundColor: "#1e1e1e",
9462
+ borderRadius: hasHeader ? "0 0 0.5rem 0.5rem" : "0.5rem",
9424
9463
  overflow: "hidden"
9425
9464
  },
9426
9465
  children: [
@@ -9431,10 +9470,12 @@ var CodeBlock = React90__namespace.default.memo(
9431
9470
  "aria-hidden": true,
9432
9471
  style: {
9433
9472
  position: "absolute",
9434
- inset: 0,
9473
+ top: 0,
9474
+ left: 0,
9475
+ width: "100%",
9476
+ height: "100%",
9435
9477
  overflow: "hidden",
9436
- pointerEvents: "none",
9437
- maxHeight
9478
+ pointerEvents: "none"
9438
9479
  },
9439
9480
  children: /* @__PURE__ */ jsxRuntime.jsx(
9440
9481
  SyntaxHighlighter__default.default,
@@ -9442,6 +9483,8 @@ var CodeBlock = React90__namespace.default.memo(
9442
9483
  PreTag: "div",
9443
9484
  language,
9444
9485
  style: activeStyle,
9486
+ wrapLines: errorLines && errorLines.size > 0,
9487
+ lineProps: errorLineProps,
9445
9488
  customStyle: {
9446
9489
  backgroundColor: "transparent",
9447
9490
  borderRadius: 0,
@@ -9449,7 +9492,6 @@ var CodeBlock = React90__namespace.default.memo(
9449
9492
  margin: 0,
9450
9493
  whiteSpace: "pre",
9451
9494
  minWidth: "100%",
9452
- minHeight: "160px",
9453
9495
  fontFamily: 'ui-monospace, SFMono-Regular, Menlo, Monaco, "Cascadia Mono", "Courier New", monospace',
9454
9496
  fontSize: "13px",
9455
9497
  lineHeight: "1.5"
@@ -9478,23 +9520,23 @@ var CodeBlock = React90__namespace.default.memo(
9478
9520
  onScroll: handleEditableScroll,
9479
9521
  spellCheck: false,
9480
9522
  style: {
9481
- position: "relative",
9482
- zIndex: 1,
9483
- fontFamily: 'ui-monospace, SFMono-Regular, Menlo, Monaco, "Cascadia Mono", "Courier New", monospace',
9484
- fontSize: "13px",
9485
- lineHeight: "1.5",
9486
- backgroundColor: "transparent",
9487
- color: "transparent",
9488
- caretColor: "#e6e6e6",
9489
- borderRadius: hasHeader ? "0 0 0.5rem 0.5rem" : "0.5rem",
9490
- border: "none",
9491
- padding: "1rem",
9492
- resize: "none",
9493
- minHeight: "160px",
9494
- maxHeight,
9523
+ position: "absolute",
9524
+ top: 0,
9525
+ left: 0,
9495
9526
  width: "100%",
9496
9527
  height: "100%",
9528
+ padding: "1rem",
9529
+ margin: 0,
9530
+ border: "none",
9497
9531
  outline: "none",
9532
+ resize: "none",
9533
+ backgroundColor: "transparent",
9534
+ color: "transparent",
9535
+ caretColor: "#e6e6e6",
9536
+ WebkitTextFillColor: "transparent",
9537
+ fontFamily: 'ui-monospace, SFMono-Regular, Menlo, Monaco, "Cascadia Mono", "Courier New", monospace',
9538
+ fontSize: "13px",
9539
+ lineHeight: "1.5",
9498
9540
  whiteSpace: "pre",
9499
9541
  overflowWrap: "normal",
9500
9542
  overflow: "auto"
@@ -9525,7 +9567,7 @@ var CodeBlock = React90__namespace.default.memo(
9525
9567
  )
9526
9568
  ] });
9527
9569
  },
9528
- (prev, next) => prev.language === next.language && prev.code === next.code && prev.showCopyButton === next.showCopyButton && prev.maxHeight === next.maxHeight && prev.foldable === next.foldable && prev.editable === next.editable && prev.onChange === next.onChange
9570
+ (prev, next) => prev.language === next.language && prev.code === next.code && prev.showCopyButton === next.showCopyButton && prev.maxHeight === next.maxHeight && prev.foldable === next.foldable && prev.editable === next.editable && prev.onChange === next.onChange && prev.errorLines === next.errorLines
9529
9571
  );
9530
9572
  CodeBlock.displayName = "CodeBlock";
9531
9573
  init_Typography();