@opentui/core 0.1.91 → 0.1.93

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.
@@ -162,7 +162,7 @@ import {
162
162
  white,
163
163
  wrapWithDelegates,
164
164
  yellow
165
- } from "./index-mdxq0qtt.js";
165
+ } from "./index-4kfx7p6q.js";
166
166
 
167
167
  // src/index.ts
168
168
  var exports_src2 = {};
@@ -2927,6 +2927,8 @@ class SlotRegistry {
2927
2927
  errorListeners = new Set;
2928
2928
  pluginErrors = [];
2929
2929
  registrationOrder = 0;
2930
+ batchDepth = 0;
2931
+ batchedNotify = false;
2930
2932
  rendererInstance;
2931
2933
  hostContext;
2932
2934
  options;
@@ -3050,6 +3052,18 @@ class SlotRegistry {
3050
3052
  this.errorListeners.delete(listener);
3051
3053
  };
3052
3054
  }
3055
+ batch(run) {
3056
+ this.batchDepth += 1;
3057
+ try {
3058
+ return run();
3059
+ } finally {
3060
+ this.batchDepth -= 1;
3061
+ if (this.batchDepth === 0 && this.batchedNotify) {
3062
+ this.batchedNotify = false;
3063
+ this.flushListeners();
3064
+ }
3065
+ }
3066
+ }
3053
3067
  getPluginErrors() {
3054
3068
  return this.pluginErrors;
3055
3069
  }
@@ -3141,6 +3155,13 @@ class SlotRegistry {
3141
3155
  this.sortedPluginsCache = null;
3142
3156
  }
3143
3157
  notifyListeners() {
3158
+ if (this.batchDepth > 0) {
3159
+ this.batchedNotify = true;
3160
+ return;
3161
+ }
3162
+ this.flushListeners();
3163
+ }
3164
+ flushListeners() {
3144
3165
  for (const listener of this.listeners) {
3145
3166
  try {
3146
3167
  listener();
@@ -5157,6 +5178,9 @@ class VRenderable extends Renderable {
5157
5178
  }
5158
5179
  }
5159
5180
  // src/renderables/LineNumberRenderable.ts
5181
+ var DEFAULT_GUTTER_FG = "#888888";
5182
+ var DEFAULT_GUTTER_BG = "transparent";
5183
+
5160
5184
  class GutterRenderable extends Renderable {
5161
5185
  target;
5162
5186
  _fg;
@@ -5268,6 +5292,24 @@ class GutterRenderable extends Renderable {
5268
5292
  this._lineColorsContent = lineColorsContent;
5269
5293
  this.requestRender();
5270
5294
  }
5295
+ get fg() {
5296
+ return this._fg;
5297
+ }
5298
+ setFg(fg2) {
5299
+ if (this._fg !== fg2) {
5300
+ this._fg = fg2;
5301
+ this.requestRender();
5302
+ }
5303
+ }
5304
+ get bg() {
5305
+ return this._bg;
5306
+ }
5307
+ setBg(bg2) {
5308
+ if (this._bg !== bg2) {
5309
+ this._bg = bg2;
5310
+ this.requestRender();
5311
+ }
5312
+ }
5271
5313
  getLineColors() {
5272
5314
  return {
5273
5315
  gutter: this._lineColorsGutter,
@@ -5401,8 +5443,8 @@ class LineNumberRenderable extends Renderable {
5401
5443
  flexDirection: "row",
5402
5444
  height: "auto"
5403
5445
  });
5404
- this._fg = parseColor(options.fg ?? "#888888");
5405
- this._bg = parseColor(options.bg ?? "transparent");
5446
+ this._fg = parseColor(options.fg ?? DEFAULT_GUTTER_FG);
5447
+ this._bg = parseColor(options.bg ?? DEFAULT_GUTTER_BG);
5406
5448
  this._minWidth = options.minWidth ?? 3;
5407
5449
  this._paddingRight = options.paddingRight ?? 1;
5408
5450
  this._lineNumberOffset = options.lineNumberOffset ?? 0;
@@ -5526,6 +5568,26 @@ class LineNumberRenderable extends Renderable {
5526
5568
  get showLineNumbers() {
5527
5569
  return this.gutter?.visible ?? false;
5528
5570
  }
5571
+ get fg() {
5572
+ return this._fg;
5573
+ }
5574
+ set fg(value) {
5575
+ const parsed = parseColor(value ?? DEFAULT_GUTTER_FG);
5576
+ if (this._fg !== parsed) {
5577
+ this._fg = parsed;
5578
+ this.gutter?.setFg(parsed);
5579
+ }
5580
+ }
5581
+ get bg() {
5582
+ return this._bg;
5583
+ }
5584
+ set bg(value) {
5585
+ const parsed = parseColor(value ?? DEFAULT_GUTTER_BG);
5586
+ if (this._bg !== parsed) {
5587
+ this._bg = parsed;
5588
+ this.gutter?.setBg(parsed);
5589
+ }
5590
+ }
5529
5591
  setLineColor(line, color) {
5530
5592
  this.parseLineColor(line, color);
5531
5593
  if (this.gutter) {
@@ -6173,6 +6235,8 @@ class DiffRenderable extends Renderable {
6173
6235
  }
6174
6236
  } else {
6175
6237
  sideRef.width = width;
6238
+ sideRef.fg = this._lineNumberFg;
6239
+ sideRef.bg = this._lineNumberBg;
6176
6240
  sideRef.setLineColors(lineColors);
6177
6241
  sideRef.setLineSigns(lineSigns);
6178
6242
  sideRef.setLineNumbers(lineNumbers);
@@ -13274,5 +13338,5 @@ class TimeToFirstDrawRenderable extends Renderable {
13274
13338
  }
13275
13339
  export { TextBufferView, EditBuffer, EditorView, convertThemeToStyles, SyntaxStyle, DistortionEffect, VignetteEffect, CloudsEffect, FlamesEffect, CRTRollingBarEffect, RainbowTextEffect, applyScanlines, applyInvert, applyNoise, applyChromaticAberration, applyAsciiArt, applyBrightness, applyGain, applySaturation, BloomEffect, SEPIA_MATRIX, PROTANOPIA_SIM_MATRIX, DEUTERANOPIA_SIM_MATRIX, TRITANOPIA_SIM_MATRIX, ACHROMATOPSIA_MATRIX, PROTANOPIA_COMP_MATRIX, DEUTERANOPIA_COMP_MATRIX, TRITANOPIA_COMP_MATRIX, TECHNICOLOR_MATRIX, SOLARIZATION_MATRIX, SYNTHWAVE_MATRIX, GREENSCALE_MATRIX, GRAYSCALE_MATRIX, INVERT_MATRIX, Timeline, engine, createTimeline, SlotRegistry, createSlotRegistry, createCoreSlotRegistry, registerCorePlugin, resolveCoreSlot, SlotRenderable, NativeSpanFeed, FrameBufferRenderable, ASCIIFontRenderable, BoxRenderable, TextBufferRenderable, CodeRenderable, isTextNodeRenderable, TextNodeRenderable, RootTextNodeRenderable, Generic, Box, Text, ASCIIFont, Input, Select, TabSelect, FrameBuffer, Code, ScrollBox, vstyles, VRenderable, LineNumberRenderable, TextRenderable, DiffRenderable, TextareaRenderable, InputRenderableEvents, InputRenderable, TextTableRenderable, MarkdownRenderable, SliderRenderable, ScrollBarRenderable, ArrowRenderable, ScrollBoxRenderable, SelectRenderableEvents, SelectRenderable, TabSelectRenderableEvents, TabSelectRenderable, TimeToFirstDrawRenderable, exports_src2 as exports_src };
13276
13340
 
13277
- //# debugId=DD77AE7E51C19E1964756E2164756E21
13278
- //# sourceMappingURL=index-7p56py22.js.map
13341
+ //# debugId=7EDA3B41AC71805164756E2164756E21
13342
+ //# sourceMappingURL=index-adp83v70.js.map