@svgrid/grid 2.1.0 → 2.1.2
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/FlexRender.svelte +96 -96
- package/dist/GridFooter.svelte +178 -178
- package/dist/SvGrid.css +2377 -2377
- package/dist/SvGrid.svelte +2764 -2764
- package/dist/SvGridBoard.svelte +2281 -2281
- package/dist/SvGridDropdown.svelte +666 -666
- package/dist/cdn/svgrid.js +2 -2
- package/dist/cdn/svgrid.svelte-external.js +2 -2
- package/package.json +92 -92
- package/src/FlexRender.svelte +96 -96
- package/src/GridFooter.svelte +178 -178
- package/src/SvGrid.controller.svelte.ts +2553 -2553
- package/src/SvGrid.css +2377 -2377
- package/src/SvGrid.svelte +2764 -2764
- package/src/SvGrid.types.ts +944 -944
- package/src/SvGridBoard.svelte +2281 -2281
- package/src/SvGridDropdown.svelte +666 -666
- package/src/a11y.contract.test.ts +49 -49
- package/src/a11y.test.ts +59 -59
- package/src/a11y.ts +61 -61
- package/src/build-api.ts +798 -798
- package/src/cell-formatting.ts +169 -169
- package/src/cell-render.ts +469 -469
- package/src/collaboration.test.ts +104 -104
- package/src/collaboration.ts +167 -167
- package/src/core.performance.test.ts +30 -30
- package/src/core.ts +1111 -1111
- package/src/createGrid.svelte.ts +42 -42
- package/src/createGrid.test.ts +10 -10
- package/src/createGridState.svelte.ts +17 -17
- package/src/editing.test.ts +859 -859
- package/src/editing.ts +675 -675
- package/src/export-data-api.test.ts +126 -126
- package/src/export-format.test.ts +107 -107
- package/src/export-format.ts +598 -598
- package/src/flex-render.ts +3 -3
- package/src/index.ts +463 -463
- package/src/keyboard.test.ts +59 -59
- package/src/keyboard.ts +97 -97
- package/src/menus.ts +582 -582
- package/src/merge-objects.ts +48 -48
- package/src/render-component.ts +28 -28
- package/src/selection.test.ts +754 -754
- package/src/selection.ts +600 -600
- package/src/server-data-source.test.ts +289 -289
- package/src/server-data-source.ts +413 -413
- package/src/sparkline.test.ts +68 -68
- package/src/sparkline.ts +169 -169
- package/src/spreadsheet.test.ts +489 -489
- package/src/spreadsheet.ts +304 -304
- package/src/static-functions.ts +11 -11
- package/src/subscribe.ts +38 -38
- package/src/svgrid-wrapper.types.ts +439 -439
- package/src/svgrid.behavior.test.ts +706 -706
- package/src/svgrid.features.test.ts +157 -157
- package/src/svgrid.new-features.wrapper.test.ts +251 -251
- package/src/svgrid.wrapper.test.ts +40 -40
- package/src/themes/index.ts +159 -159
- package/src/virtualization/column-virtualizer.test.ts +27 -27
- package/src/virtualization/column-virtualizer.ts +30 -30
- package/src/virtualization/svelte-virtualizer.svelte.ts +26 -26
- package/src/virtualization/types.ts +30 -30
- package/src/virtualization/virtualizer.test.ts +47 -47
- package/src/virtualization/virtualizer.ts +296 -296
package/dist/cdn/svgrid.js
CHANGED
|
@@ -3758,7 +3758,7 @@ function wo(e, t) {
|
|
|
3758
3758
|
//#region src/SvGridDropdown.svelte
|
|
3759
3759
|
var To = /* @__PURE__ */ H("<span class=\"sv-grid-chip sv-grid-chip-removable svelte-ei8hp3\"> <span class=\"sv-grid-chip-remove svelte-ei8hp3\" role=\"button\">×</span></span>"), Eo = /* @__PURE__ */ H("<span class=\"sv-grid-dropdown-chips svelte-ei8hp3\"></span>"), Do = /* @__PURE__ */ H("<span class=\"sv-grid-chip svelte-ei8hp3\"> </span>"), Oo = /* @__PURE__ */ H("<span class=\"sv-grid-dropdown-label svelte-ei8hp3\"> </span>"), ko = /* @__PURE__ */ H("<input type=\"search\" class=\"sv-grid-dropdown-search\" placeholder=\"Search…\"/>"), Ao = /* @__PURE__ */ H("<div class=\"sv-grid-dropdown-empty\"> </div>"), jo = /* @__PURE__ */ H("<span class=\"sv-grid-dropdown-check\" aria-hidden=\"true\"> </span>"), Mo = /* @__PURE__ */ H("<span class=\"sv-grid-dropdown-option-chip\"> </span>"), No = /* @__PURE__ */ H("<span class=\"sv-grid-dropdown-option-label\"> </span>"), Po = /* @__PURE__ */ H("<div role=\"option\"><!> <!></div>"), Fo = /* @__PURE__ */ H("<div class=\"sv-grid-dropdown-footer\"><button type=\"button\" class=\"sv-grid-dropdown-done\">Done</button></div>"), Io = /* @__PURE__ */ H("<div role=\"listbox\"><!> <!> <!></div>"), Lo = /* @__PURE__ */ H("<div><button type=\"button\" aria-haspopup=\"listbox\"><!> <span class=\"sv-grid-dropdown-caret svelte-ei8hp3\" aria-hidden=\"true\">▾</span></button> <!></div>"), Ro = {
|
|
3760
3760
|
hash: "svelte-ei8hp3",
|
|
3761
|
-
code: "\
|
|
3761
|
+
code: "\n /* All colors derive from the grid's host CSS vars so light/dark themes\n \"just work\". Hard fallbacks are kept so the component is still\n usable in an unthemed page. */.sv-grid-dropdown.svelte-ei8hp3 {position:absolute;top:0;left:0;right:0;height:100%;background:var(--sg-bg, #ffffff);color:var(--sg-fg, #0f172a);}.sv-grid-dropdown-trigger.svelte-ei8hp3 {display:flex;align-items:center;gap:6px;width:100%;height:100%;min-height:28px;padding:0 8px;background:var(--sg-bg, #ffffff);color:var(--sg-fg, #0f172a);border:0;outline:none;font:inherit;text-align:left;cursor:pointer;box-sizing:border-box;}.sv-grid-dropdown-trigger.svelte-ei8hp3:focus {outline:2px solid var(--sg-accent, #2563eb);outline-offset:-2px;}.sv-grid-dropdown-trigger-chips.svelte-ei8hp3 {align-items:center;padding:4px 8px;flex-wrap:wrap;}.sv-grid-dropdown-chips.svelte-ei8hp3 {display:inline-flex;flex-wrap:wrap;gap:4px;flex:1 1 auto;min-width:0;align-items:center;}.sv-grid-dropdown-label.svelte-ei8hp3 {flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}.sv-grid-dropdown-caret.svelte-ei8hp3 {flex:0 0 auto;font-size:10px;opacity:0.7;line-height:1;}\n\n /* Popover sits absolutely below the trigger. The parent\n `.sv-grid-cell-editing` has `overflow: visible`, so this can hang\n past the row. Pulls its surface color from the grid's header bg\n so it reads as a slightly elevated layer on either theme. */\n /* Panel is `position: fixed` AND portal'd into document.body via\n `use:portalToBody`, so it escapes every ancestor overflow / clip /\n transform / stacking context. Coords come from updatePanelPosition(). */.sv-grid-dropdown-panel {overflow-y:auto;background:var(--sg-header-bg, var(--sg-bg, #ffffff));color:var(--sg-fg, #0f172a);border:1px solid var(--sg-accent, #2563eb);border-radius:6px;box-shadow:0 12px 28px rgba(0, 0, 0, 0.45);padding:4px 0;font-family:inherit;}\n /* When the option list fits in one panel we want NO scrollbar at all -\n * not even a sub-pixel ghost track. `overflow: visible` rules out the\n * scrollbar gutter that some browsers still reserve under\n * `overflow: auto` when content equals max-height. */.sv-grid-dropdown-panel.sv-grid-dropdown-panel-fits {overflow:visible;}.sv-grid-dropdown-option {display:flex;align-items:center;gap:8px;padding:6px 10px;cursor:pointer;user-select:none;color:var(--sg-fg, #0f172a);}.sv-grid-dropdown-option-highlighted {background:var(--sg-row-hover-bg, rgba(37, 99, 235, 0.1));}.sv-grid-dropdown-option-selected {font-weight:600;background:var(--sg-selection-bg, rgba(37, 99, 235, 0.15));}.sv-grid-dropdown-option-selected.sv-grid-dropdown-option-highlighted {background:var(--sg-row-hover-bg, rgba(37, 99, 235, 0.18));}.sv-grid-dropdown-option-label {flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}.sv-grid-dropdown-check {flex:0 0 16px;display:inline-flex;align-items:center;justify-content:center;color:var(--sg-accent, #2563eb);font-weight:700;}.sv-grid-dropdown-swatch {flex:0 0 12px;width:12px;height:12px;border-radius:999px;border:1px solid color-mix(in srgb, var(--sg-fg, #0f172a) 25%, transparent);}\n /* Colored option chip. Declared `:global` because the option panel is\n portal'd to <body>, where Svelte's scoped classes don't reach. The\n per-chip background / border / text color come from an inline style\n (see colorfulChipStyleInline) so each option matches its cell chip. */.sv-grid-dropdown-option-chip {display:inline-flex;align-items:center;max-width:100%;padding:2px 11px;border:1px solid transparent;border-radius:999px;font-size:0.9em;font-weight:600;line-height:1.5;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}.sv-grid-dropdown-empty {padding:8px 10px;color:var(--sg-muted, rgba(15, 23, 42, 0.55));font-style:italic;font-size:0.9em;}.sv-grid-dropdown-footer {display:flex;justify-content:flex-end;padding:4px 6px;border-top:1px solid var(--sg-border, rgba(15, 23, 42, 0.08));margin-top:2px;}.sv-grid-dropdown-done {font-size:11px;text-transform:uppercase;letter-spacing:0.04em;color:#fff;background:var(--sg-accent, #2563eb);border:0;border-radius:4px;padding:4px 10px;cursor:pointer;}.sv-grid-dropdown-done:hover {filter:brightness(1.12);}\n\n /* Note: option / footer / swatch styles are declared `:global(...)`\n above because the panel is portal'd to <body> and Svelte's scoped\n class won't survive on children of an element living outside the\n component subtree. */\n\n /* Theme-aware chip badges. Inside the trigger they sit on the cell\n background, so we need a tone that contrasts on BOTH themes - a\n translucent accent works well in dark mode and reads as a soft\n blue pill in light mode. */.sv-grid-chip.svelte-ei8hp3 {display:inline-flex;align-items:center;gap:4px;padding:2px 8px;font-size:0.85em;line-height:1.4;background:color-mix(in srgb, var(--sg-accent, #2563eb) 18%, transparent);color:var(--sg-fg, #0f172a);border-radius:999px;border:1px solid color-mix(in srgb, var(--sg-accent, #2563eb) 35%, transparent);white-space:nowrap;}.sv-grid-chip-removable.svelte-ei8hp3 {padding-right:2px;}.sv-grid-chip-remove.svelte-ei8hp3 {display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;border:0;border-radius:999px;background:color-mix(in srgb, var(--sg-fg, #0f172a) 18%, transparent);color:inherit;font-size:12px;line-height:1;cursor:pointer;padding:0;}.sv-grid-chip-remove.svelte-ei8hp3:hover {background:rgba(220, 38, 38, 0.7);color:#fff;}"
|
|
3762
3762
|
};
|
|
3763
3763
|
function zo(e, t) {
|
|
3764
3764
|
Jt(t, !0), sa(e, Ro);
|
|
@@ -13295,7 +13295,7 @@ ki([
|
|
|
13295
13295
|
//#region src/SvGridBoard.svelte
|
|
13296
13296
|
var Yp = /* @__PURE__ */ H("<span class=\"sv-board-comment-author svelte-15b6cgu\"> </span>"), Xp = /* @__PURE__ */ H("<span class=\"sv-board-comment-at svelte-15b6cgu\"> </span>"), Zp = /* @__PURE__ */ H("<button type=\"button\" class=\"sv-board-comment-del svelte-15b6cgu\" aria-label=\"Delete comment\">×</button>"), Qp = /* @__PURE__ */ H("<div class=\"sv-board-comment svelte-15b6cgu\"><div class=\"sv-board-comment-body svelte-15b6cgu\"><!> <span class=\"sv-board-comment-text\"> </span> <!></div> <!></div>"), $p = /* @__PURE__ */ H("<div class=\"sv-board-comment-empty svelte-15b6cgu\">No comments yet.</div>"), em = /* @__PURE__ */ H("<input class=\"sv-board-comment-add svelte-15b6cgu\" placeholder=\"Write a comment...\"/>"), tm = /* @__PURE__ */ H("<!> <!> <!>", 1), nm = /* @__PURE__ */ H("<button type=\"button\" class=\"sv-board-lane-toggle svelte-15b6cgu\"> </button>"), rm = /* @__PURE__ */ H("<input class=\"sv-board-lane-rename svelte-15b6cgu\"/>"), im = /* @__PURE__ */ H("<span> </span>"), am = /* @__PURE__ */ H("<span class=\"sv-board-lane-summary svelte-15b6cgu\"> </span>"), om = /* @__PURE__ */ H("<button type=\"button\" class=\"sv-board-lane-add svelte-15b6cgu\">+</button>"), sm = /* @__PURE__ */ H("<div aria-hidden=\"true\"></div>"), cm = /* @__PURE__ */ H("<div class=\"sv-board-drop-marker svelte-15b6cgu\" aria-hidden=\"true\"></div>"), lm = /* @__PURE__ */ H("<span class=\"sv-board-card-flag svelte-15b6cgu\" aria-label=\"Blocked\"></span>"), um = /* @__PURE__ */ H("<input type=\"checkbox\" class=\"svelte-15b6cgu\"/>"), dm = /* @__PURE__ */ H("<input class=\"svelte-15b6cgu\"/>"), fm = /* @__PURE__ */ H("<label class=\"sv-board-field svelte-15b6cgu\"><span> </span> <!></label>"), pm = /* @__PURE__ */ H("<form class=\"sv-board-card-edit svelte-15b6cgu\"><!> <div class=\"sv-board-card-edit-actions svelte-15b6cgu\"><button type=\"button\" class=\"sv-board-btn svelte-15b6cgu\">Cancel</button> <button type=\"submit\" class=\"sv-board-btn is-primary svelte-15b6cgu\">Save</button></div></form>"), mm = /* @__PURE__ */ H("<!> <!>", 1), hm = /* @__PURE__ */ H("<div class=\"sv-board-card-cover svelte-15b6cgu\" aria-hidden=\"true\"></div>"), gm = /* @__PURE__ */ H("<div class=\"sv-board-card-title svelte-15b6cgu\"> </div>"), _m = /* @__PURE__ */ H("<div class=\"sv-board-card-metarow svelte-15b6cgu\"><dt class=\"svelte-15b6cgu\"> </dt> <dd class=\"svelte-15b6cgu\"> </dd></div>"), vm = /* @__PURE__ */ H("<dl class=\"sv-board-card-meta svelte-15b6cgu\"></dl>"), ym = /* @__PURE__ */ H("<!> <!> <!> <!>", 1), bm = /* @__PURE__ */ H("<li><label><input type=\"checkbox\" class=\"svelte-15b6cgu\"/> <span class=\"svelte-15b6cgu\"> </span></label></li>"), xm = /* @__PURE__ */ H("<ul class=\"sv-board-subs-list svelte-15b6cgu\"></ul> <input class=\"sv-board-subs-add svelte-15b6cgu\" placeholder=\"Add subtask...\"/>", 1), Sm = /* @__PURE__ */ H("<div class=\"sv-board-subs svelte-15b6cgu\"><button type=\"button\" class=\"sv-board-subs-head svelte-15b6cgu\"><span class=\"sv-board-subs-chev svelte-15b6cgu\"> </span> <span class=\"sv-board-subs-count svelte-15b6cgu\"> </span> <span class=\"sv-board-subs-bar svelte-15b6cgu\" aria-hidden=\"true\"><span class=\"svelte-15b6cgu\"></span></span></button> <!></div>"), Cm = /* @__PURE__ */ H("<li class=\"sv-board-kid svelte-15b6cgu\"><span class=\"sv-board-kid-title svelte-15b6cgu\"> </span> <span class=\"sv-board-kid-lane svelte-15b6cgu\"> </span></li>"), wm = /* @__PURE__ */ H("<ul class=\"sv-board-kids-list svelte-15b6cgu\"></ul>"), Tm = /* @__PURE__ */ H("<div class=\"sv-board-kids svelte-15b6cgu\"><button type=\"button\" class=\"sv-board-kids-head svelte-15b6cgu\"><span class=\"sv-board-subs-chev svelte-15b6cgu\"> </span> </button> <!></div>"), Em = /* @__PURE__ */ H("<div class=\"sv-board-comments svelte-15b6cgu\"><!></div>"), Dm = /* @__PURE__ */ H("<!> <article role=\"listitem\" tabindex=\"0\" aria-roledescription=\"Draggable card\"><!> <!> <!> <!> <!></article>", 1), Om = /* @__PURE__ */ H("<div aria-hidden=\"true\"></div>"), km = /* @__PURE__ */ H("<div class=\"sv-board-drop-marker svelte-15b6cgu\" aria-hidden=\"true\"></div>"), Am = /* @__PURE__ */ H("<div class=\"sv-board-lane-empty svelte-15b6cgu\">No cards</div>"), jm = /* @__PURE__ */ H("<input class=\"sv-board-composer-input svelte-15b6cgu\" placeholder=\"Card title...\"/>"), Mm = /* @__PURE__ */ H("<button type=\"button\" class=\"sv-board-composer-btn svelte-15b6cgu\">+ Add a card</button>"), Nm = /* @__PURE__ */ H("<div role=\"list\"><!> <!> <!> <!></div> <!>", 1), Pm = /* @__PURE__ */ H("<section><header><!> <!> <span> <!></span> <!> <!></header> <!></section>"), Fm = /* @__PURE__ */ H("<span class=\"sv-board-badge is-blocked svelte-15b6cgu\">Blocked</span>"), Im = /* @__PURE__ */ H("<span class=\"sv-board-badge is-label svelte-15b6cgu\"> </span>"), Lm = /* @__PURE__ */ H("<span> </span>"), Rm = /* @__PURE__ */ H("<span class=\"sv-board-badge is-meta svelte-15b6cgu\" title=\"Age\"> </span>"), zm = /* @__PURE__ */ H("<button type=\"button\" class=\"sv-board-badge is-meta is-btn svelte-15b6cgu\" title=\"Comments\"><svg viewBox=\"0 0 16 16\" width=\"11\" height=\"11\" aria-hidden=\"true\"><path d=\"M2 3h12v8H8l-3 2v-2H2z\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.3\" stroke-linejoin=\"round\"></path></svg> </button>"), Bm = /* @__PURE__ */ H("<span class=\"sv-board-badge is-meta svelte-15b6cgu\"><svg viewBox=\"0 0 16 16\" width=\"11\" height=\"11\" aria-hidden=\"true\"><path d=\"M11 5.5 6.5 10a2 2 0 0 1-3-3l5-5a3 3 0 0 1 4 4l-5 5\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.3\" stroke-linecap=\"round\" stroke-linejoin=\"round\"></path></svg> </span>"), Vm = /* @__PURE__ */ H("<span class=\"sv-board-avatar svelte-15b6cgu\"> </span>"), Hm = /* @__PURE__ */ H("<span class=\"sv-board-avatars svelte-15b6cgu\"></span>"), Um = /* @__PURE__ */ H("<div class=\"sv-board-badges svelte-15b6cgu\"><!> <!> <!> <!> <!> <!> <!></div>"), Wm = /* @__PURE__ */ H("<button type=\"button\"> <span class=\"sv-board-facet-count svelte-15b6cgu\"> </span></button>"), Gm = /* @__PURE__ */ H("<button type=\"button\" class=\"sv-board-facet-clear svelte-15b6cgu\">Clear filters</button>"), Km = /* @__PURE__ */ H("<div class=\"sv-board-facets svelte-15b6cgu\"><!> <!></div>"), qm = /* @__PURE__ */ H("<button type=\"button\" class=\"sv-board-swim-toggle svelte-15b6cgu\"> </button>"), Jm = /* @__PURE__ */ H("<span class=\"sv-board-swim-summary svelte-15b6cgu\"> </span>"), Ym = /* @__PURE__ */ H("<div class=\"sv-board-lanes svelte-15b6cgu\"></div>"), Xm = /* @__PURE__ */ H("<section class=\"sv-board-swim svelte-15b6cgu\"><header class=\"sv-board-swim-head svelte-15b6cgu\"><!> <span class=\"sv-board-swim-title\"> </span> <span class=\"sv-board-swim-count svelte-15b6cgu\"> </span> <!></header> <!></section>"), Zm = /* @__PURE__ */ H("<div class=\"sv-board-lanes svelte-15b6cgu\"></div>"), Qm = /* @__PURE__ */ H("<div class=\"sv-board-ctx\" aria-label=\"Card actions\"><!></div>"), $m = /* @__PURE__ */ H("<div class=\"sv-board-drawer-comments svelte-15b6cgu\"><div class=\"sv-board-drawer-h svelte-15b6cgu\">Comments</div> <!></div>"), eh = /* @__PURE__ */ H("<!> <!>", 1), th = /* @__PURE__ */ H("<div role=\"group\" aria-label=\"Board\"><!> <!> <div class=\"sv-board-sr svelte-15b6cgu\" aria-live=\"polite\" role=\"status\"> </div></div> <!> <!>", 1), nh = {
|
|
13297
13297
|
hash: "svelte-15b6cgu",
|
|
13298
|
-
code: ".sv-board.svelte-15b6cgu {height:100%;box-sizing:border-box;display:flex;flex-direction:column;background:var(--sg-bg, #fff);color:var(--sg-fg, #101828);font-family:var(--sg-font, inherit);}.sv-board.is-swim.svelte-15b6cgu {overflow-y:auto;gap:14px;}.sv-board-lanes.svelte-15b6cgu {display:flex;gap:12px;align-items:flex-start;overflow-x:auto;padding:4px;flex:1 1 auto;min-height:0;scrollbar-color:var(--sg-scrollbar-thumb, color-mix(in srgb, var(--sg-fg, #101828) 28%, transparent))\r\n transparent;}.sv-board.is-swim.svelte-15b6cgu .sv-board-lanes:where(.svelte-15b6cgu) {flex:none;}.sv-board.is-swim.svelte-15b6cgu .sv-board-lane:where(.svelte-15b6cgu) {max-height:340px;}.sv-board-swim.svelte-15b6cgu {display:flex;flex-direction:column;gap:4px;flex:none;}.sv-board-swim-head.svelte-15b6cgu {display:flex;align-items:center;gap:8px;padding:4px 8px;font-weight:700;font-size:0.78rem;color:color-mix(in srgb, var(--sg-fg, #101828) 78%, transparent);position:sticky;left:0;}.sv-board-swim-count.svelte-15b6cgu {font-size:0.7rem;font-weight:600;padding:0 7px;border-radius:999px;background:color-mix(in srgb, var(--sg-fg, #101828) 8%, transparent);color:color-mix(in srgb, var(--sg-fg, #101828) 60%, transparent);}.sv-board-swim-summary.svelte-15b6cgu {font-size:0.7rem;font-weight:600;color:color-mix(in srgb, var(--sg-accent, #3b82f6) 85%, var(--sg-fg, #101828));}.sv-board-swim-toggle.svelte-15b6cgu {all:unset;cursor:pointer;font-size:0.7rem;padding:2px;color:color-mix(in srgb, var(--sg-fg, #101828) 60%, transparent);}.sv-board-lane-title.is-renamable.svelte-15b6cgu {cursor:text;}.sv-board-lane-rename.svelte-15b6cgu {flex:1 1 auto;min-width:0;font:inherit;font-weight:600;font-size:0.82rem;padding:1px 4px;border:1px solid var(--sv-board-accent);border-radius:5px;background:var(--sg-bg, #fff);color:var(--sg-fg, #101828);}.sv-board-swim-toggle.svelte-15b6cgu:hover {color:var(--sg-fg, #101828);}.sv-board-lane.svelte-15b6cgu {flex:0 0 var(--sg-board-lane-w, 272px);max-width:var(--sg-board-lane-w, 272px);display:flex;flex-direction:column;max-height:100%;border:1px solid var(--sg-border, #e4e7ec);border-radius:var(--sg-radius, 8px);background:var(--sg-header-bg, color-mix(in srgb, var(--sg-fg, #101828) 3%, var(--sg-bg, #fff)));--sv-board-accent: var(--sg-accent, #3b82f6);}.sv-board-lane-head.svelte-15b6cgu {display:flex;align-items:center;gap:8px;padding:8px 10px;border-bottom:1px solid var(--sg-border, #e4e7ec);border-top:3px solid var(--sv-board-accent);border-radius:var(--sg-radius, 8px) var(--sg-radius, 8px) 0 0;}.sv-board-lane-head.is-reorderable.svelte-15b6cgu {cursor:grab;}.sv-board-lane-head.is-lane-dropover.svelte-15b6cgu {box-shadow:inset 3px 0 0 var(--sv-board-accent);}.sv-board-lane-title.svelte-15b6cgu {font-weight:600;font-size:0.82rem;flex:1 1 auto;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}.sv-board-lane-toggle.svelte-15b6cgu {all:unset;cursor:pointer;font-size:0.7rem;line-height:1;color:color-mix(in srgb, var(--sg-fg, #101828) 55%, transparent);padding:2px;}.sv-board-lane-toggle.svelte-15b6cgu:hover {color:var(--sg-fg, #101828);}.sv-board-lane.is-collapsed.svelte-15b6cgu {flex:0 0 auto;max-width:none;}.sv-board-lane.is-collapsed.svelte-15b6cgu .sv-board-lane-head:where(.svelte-15b6cgu) {writing-mode:vertical-rl;height:180px;border-top:none;border-left:3px solid var(--sv-board-accent);border-radius:0 var(--sg-radius, 8px) var(--sg-radius, 8px) 0;gap:6px;}.sv-board-lane-count.svelte-15b6cgu {font-size:0.72rem;font-variant-numeric:tabular-nums;padding:1px 7px;border-radius:999px;background:color-mix(in srgb, var(--sg-fg, #101828) 8%, transparent);color:color-mix(in srgb, var(--sg-fg, #101828) 70%, transparent);}.sv-board-lane-count.is-over.svelte-15b6cgu {background:color-mix(in srgb, var(--sg-danger, #ef4444) 16%, transparent);color:var(--sg-danger, #ef4444);font-weight:700;}.sv-board-lane-summary.svelte-15b6cgu {font-size:0.72rem;font-weight:600;font-variant-numeric:tabular-nums;color:color-mix(in srgb, var(--sv-board-accent) 85%, var(--sg-fg, #101828));}.sv-board-lane-add.svelte-15b6cgu {all:unset;cursor:pointer;width:20px;height:20px;display:grid;place-items:center;border-radius:5px;font-size:1rem;line-height:1;color:color-mix(in srgb, var(--sg-fg, #101828) 60%, transparent);}.sv-board-lane-add.svelte-15b6cgu:hover {background:color-mix(in srgb, var(--sg-fg, #101828) 8%, transparent);color:var(--sg-fg, #101828);}.sv-board-lane-body.svelte-15b6cgu {display:flex;flex-direction:column;gap:8px;padding:8px;overflow-y:auto;flex:1 1 auto;min-height:48px;transition:background 0.12s ease;}.sv-board-lane-body.is-dropover.svelte-15b6cgu {background:color-mix(in srgb, var(--sv-board-accent) 8%, transparent);}\r\n /* Virtualized lanes use block flow + per-card margin (not flex gap) so the\r\n spacer heights match the windowing math exactly. */.sv-board-lane-body.is-virtual.svelte-15b6cgu {display:block;gap:0;}.sv-board-lane-body.is-virtual.svelte-15b6cgu .sv-board-card:where(.svelte-15b6cgu) {margin-bottom:8px;}.sv-board-card.svelte-15b6cgu {background:var(--sg-bg, #fff);border:1px solid var(--sg-border, #e4e7ec);border-radius:var(--sg-radius, 8px);padding:9px 11px;cursor:grab;box-shadow:0 1px 2px rgba(16, 24, 40, 0.05);transition:box-shadow 0.12s ease,\r\n opacity 0.12s ease,\r\n transform 0.12s ease;}.sv-board-card.svelte-15b6cgu:hover {box-shadow:0 2px 8px rgba(16, 24, 40, 0.12);border-color:color-mix(in srgb, var(--sv-board-accent) 45%, var(--sg-border, #e4e7ec));}.sv-board-card.svelte-15b6cgu:focus-visible {outline:none;border-color:var(--sv-board-accent);box-shadow:var(--sg-focus-ring, 0 0 0 2px color-mix(in srgb, var(--sv-board-accent) 45%, transparent));}.sv-board-card.is-dragging.svelte-15b6cgu {opacity:0.45;}.sv-board-card.is-grabbed.svelte-15b6cgu {border-color:var(--sv-board-accent);box-shadow:0 0 0 2px color-mix(in srgb, var(--sv-board-accent) 55%, transparent);cursor:grabbing;}.sv-board-card.is-editing.svelte-15b6cgu {cursor:default;border-color:var(--sv-board-accent);}.sv-board-card-edit.svelte-15b6cgu {display:flex;flex-direction:column;gap:7px;}.sv-board-field.svelte-15b6cgu {display:flex;flex-direction:column;gap:2px;font-size:0.72rem;color:color-mix(in srgb, var(--sg-fg, #101828) 60%, transparent);}.sv-board-field.svelte-15b6cgu input[type=\"text\"]:where(.svelte-15b6cgu),\r\n .sv-board-field.svelte-15b6cgu input[type=\"number\"]:where(.svelte-15b6cgu),\r\n .sv-board-field.svelte-15b6cgu input[type=\"date\"]:where(.svelte-15b6cgu) {font:inherit;font-size:0.8rem;padding:4px 7px;border:1px solid var(--sg-border, #e4e7ec);border-radius:var(--sg-radius, 6px);background:var(--sg-bg, #fff);color:var(--sg-fg, #101828);}.sv-board-field.svelte-15b6cgu input:where(.svelte-15b6cgu):focus-visible {outline:none;border-color:var(--sv-board-accent);box-shadow:0 0 0 2px color-mix(in srgb, var(--sv-board-accent) 35%, transparent);}.sv-board-field.svelte-15b6cgu input[type=\"checkbox\"]:where(.svelte-15b6cgu) {align-self:flex-start;width:15px;height:15px;accent-color:var(--sv-board-accent);}.sv-board-card-edit-actions.svelte-15b6cgu {display:flex;justify-content:flex-end;gap:6px;margin-top:2px;}.sv-board-btn.svelte-15b6cgu {font:inherit;font-size:0.74rem;padding:3px 10px;border-radius:var(--sg-radius, 6px);border:1px solid var(--sg-border, #e4e7ec);background:var(--sg-bg, #fff);color:var(--sg-fg, #101828);cursor:pointer;}.sv-board-btn.svelte-15b6cgu:hover {background:color-mix(in srgb, var(--sg-fg, #101828) 6%, transparent);}.sv-board-btn.is-primary.svelte-15b6cgu {background:var(--sv-board-accent);border-color:var(--sv-board-accent);color:#fff;}.sv-board-btn.is-primary.svelte-15b6cgu:hover {filter:brightness(0.95);}.sv-board-card-title.svelte-15b6cgu {font-weight:600;font-size:0.84rem;line-height:1.3;}.sv-board-card-meta.svelte-15b6cgu {margin:6px 0 0;display:flex;flex-direction:column;gap:2px;}.sv-board-card-metarow.svelte-15b6cgu {display:flex;gap:6px;font-size:0.74rem;}.sv-board-card-metarow.svelte-15b6cgu dt:where(.svelte-15b6cgu) {color:color-mix(in srgb, var(--sg-fg, #101828) 55%, transparent);margin:0;}.sv-board-card-metarow.svelte-15b6cgu dd:where(.svelte-15b6cgu) {margin:0;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}.sv-board-lane-empty.svelte-15b6cgu {text-align:center;font-size:0.76rem;color:color-mix(in srgb, var(--sg-fg, #101828) 42%, transparent);padding:14px 0;border:1px dashed var(--sg-border, #e4e7ec);border-radius:var(--sg-radius, 8px);}.sv-board-drop-marker.svelte-15b6cgu {height:2px;border-radius:2px;background:var(--sv-board-accent);margin:-3px 0;}.sv-board-ctx {z-index:2147483646;min-width:200px;background:var(--sg-bg, #fff);color:var(--sg-fg, #0f172a);border:1px solid var(--sg-border, #e2e8f0);border-radius:10px;box-shadow:0 16px 48px -12px rgba(15, 23, 42, 0.35);font-size:13px;}.sv-board-sr.svelte-15b6cgu {position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0;}\r\n /* Card badges */.sv-board-badges.svelte-15b6cgu {display:flex;align-items:center;flex-wrap:wrap;gap:4px;margin-top:6px;}.sv-board-badge.svelte-15b6cgu {font-size:0.66rem;font-weight:600;padding:1px 6px;border-radius:4px;line-height:1.5;white-space:nowrap;}.sv-board-badge.is-label.svelte-15b6cgu {--b: var(--sv-board-accent);background:color-mix(in srgb, var(--b) 16%, transparent);color:color-mix(in srgb, var(--b) 80%, var(--sg-fg, #101828));}.sv-board-badge.is-due.svelte-15b6cgu {background:color-mix(in srgb, var(--sg-fg, #101828) 8%, transparent);color:color-mix(in srgb, var(--sg-fg, #101828) 65%, transparent);}.sv-board-badge.is-due.is-overdue.svelte-15b6cgu {background:color-mix(in srgb, var(--sg-danger, #ef4444) 15%, transparent);color:var(--sg-danger, #ef4444);}.sv-board-badge.is-meta.svelte-15b6cgu {display:inline-flex;align-items:center;gap:3px;background:transparent;padding:1px 3px;color:color-mix(in srgb, var(--sg-fg, #101828) 55%, transparent);}.sv-board-badge.is-btn.svelte-15b6cgu {border:0;cursor:pointer;font:inherit;font-size:0.66rem;font-weight:600;border-radius:5px;}.sv-board-badge.is-btn.svelte-15b6cgu:hover {background:color-mix(in srgb, var(--sg-fg, #101828) 8%, transparent);color:var(--sg-fg, #101828);}.sv-board-badge.is-blocked.svelte-15b6cgu {background:var(--sg-danger, #ef4444);color:#fff;text-transform:uppercase;letter-spacing:0.03em;font-size:0.6rem;}\r\n /* Comments thread */.sv-board-comments.svelte-15b6cgu {margin-top:7px;border-top:1px solid color-mix(in srgb, var(--sg-fg, #101828) 8%, transparent);padding-top:7px;display:flex;flex-direction:column;gap:5px;}.sv-board-drawer-comments.svelte-15b6cgu {margin-top:16px;padding-top:12px;border-top:1px solid var(--sg-border, #e4e7ec);display:flex;flex-direction:column;gap:6px;}.sv-board-drawer-h.svelte-15b6cgu {font-weight:600;font-size:0.82rem;margin-bottom:2px;}.sv-board-comment.svelte-15b6cgu {display:flex;align-items:flex-start;gap:6px;font-size:0.74rem;}.sv-board-comment-body.svelte-15b6cgu {flex:1 1 auto;min-width:0;}.sv-board-comment-author.svelte-15b6cgu {font-weight:600;margin-right:5px;}.sv-board-comment-at.svelte-15b6cgu {margin-left:6px;font-size:0.66rem;color:color-mix(in srgb, var(--sg-fg, #101828) 45%, transparent);}.sv-board-comment-del.svelte-15b6cgu {all:unset;cursor:pointer;font-size:0.9rem;line-height:1;color:color-mix(in srgb, var(--sg-fg, #101828) 40%, transparent);padding:0 2px;}.sv-board-comment-del.svelte-15b6cgu:hover {color:var(--sg-danger, #ef4444);}.sv-board-comment-empty.svelte-15b6cgu {font-size:0.72rem;color:color-mix(in srgb, var(--sg-fg, #101828) 42%, transparent);}.sv-board-comment-add.svelte-15b6cgu {width:100%;box-sizing:border-box;font:inherit;font-size:0.74rem;padding:4px 7px;border:1px solid var(--sg-border, #e4e7ec);border-radius:5px;background:var(--sg-bg, #fff);color:var(--sg-fg, #101828);}.sv-board-card-cover.svelte-15b6cgu {height:6px;border-radius:4px;margin:-2px 0 7px;}.sv-board-avatars.svelte-15b6cgu {display:inline-flex;margin-left:auto;}.sv-board-avatar.svelte-15b6cgu {width:20px;height:20px;border-radius:50%;display:grid;place-items:center;font-size:0.6rem;font-weight:700;color:#fff;background:var(--sv-board-accent);border:1.5px solid var(--sg-bg, #fff);margin-left:-6px;}.sv-board-avatar.svelte-15b6cgu:first-child {margin-left:0;}\r\n /* Sub-tasks */.sv-board-subs.svelte-15b6cgu {margin-top:7px;border-top:1px solid color-mix(in srgb, var(--sg-fg, #101828) 8%, transparent);padding-top:6px;}.sv-board-subs-head.svelte-15b6cgu {all:unset;cursor:pointer;display:flex;align-items:center;gap:6px;width:100%;font-size:0.7rem;color:color-mix(in srgb, var(--sg-fg, #101828) 60%, transparent);}.sv-board-subs-chev.svelte-15b6cgu {font-size:0.6rem;}.sv-board-subs-count.svelte-15b6cgu {font-variant-numeric:tabular-nums;font-weight:600;}.sv-board-subs-bar.svelte-15b6cgu {flex:1 1 auto;height:4px;border-radius:2px;background:color-mix(in srgb, var(--sg-fg, #101828) 10%, transparent);overflow:hidden;}.sv-board-subs-bar.svelte-15b6cgu span:where(.svelte-15b6cgu) {display:block;height:100%;background:var(--sv-board-accent);transition:width 0.15s ease;}.sv-board-subs-list.svelte-15b6cgu {list-style:none;margin:6px 0 0;padding:0;display:flex;flex-direction:column;gap:3px;}.sv-board-subs-list.svelte-15b6cgu label:where(.svelte-15b6cgu) {display:flex;align-items:center;gap:6px;font-size:0.74rem;cursor:pointer;}.sv-board-subs-list.svelte-15b6cgu label.is-done:where(.svelte-15b6cgu) span:where(.svelte-15b6cgu) {text-decoration:line-through;color:color-mix(in srgb, var(--sg-fg, #101828) 45%, transparent);}.sv-board-subs-list.svelte-15b6cgu input:where(.svelte-15b6cgu) {accent-color:var(--sv-board-accent);}.sv-board-subs-add.svelte-15b6cgu {margin-top:5px;width:100%;box-sizing:border-box;font:inherit;font-size:0.74rem;padding:3px 6px;border:1px solid var(--sg-border, #e4e7ec);border-radius:5px;background:var(--sg-bg, #fff);color:var(--sg-fg, #101828);}\r\n /* Quick-add composer */.sv-board-composer-btn.svelte-15b6cgu {all:unset;cursor:pointer;display:block;margin:6px 8px 8px;padding:5px 8px;border-radius:var(--sg-radius, 6px);font-size:0.76rem;color:color-mix(in srgb, var(--sg-fg, #101828) 55%, transparent);}.sv-board-composer-btn.svelte-15b6cgu:hover {background:color-mix(in srgb, var(--sg-fg, #101828) 6%, transparent);color:var(--sg-fg, #101828);}.sv-board-composer-input.svelte-15b6cgu {margin:6px 8px 8px;width:calc(100% - 16px);box-sizing:border-box;font:inherit;font-size:0.8rem;padding:6px 8px;border:1px solid var(--sv-board-accent);border-radius:var(--sg-radius, 6px);background:var(--sg-bg, #fff);color:var(--sg-fg, #101828);}\r\n /* Facet filter bar */.sv-board-facets.svelte-15b6cgu {display:flex;flex-wrap:wrap;gap:6px;padding:4px 4px 8px;align-items:center;}.sv-board-facet.svelte-15b6cgu {all:unset;cursor:pointer;display:inline-flex;align-items:center;gap:5px;font-size:0.73rem;padding:2px 9px;border-radius:999px;border:1px solid var(--sg-border, #e4e7ec);color:color-mix(in srgb, var(--sg-fg, #101828) 70%, transparent);}.sv-board-facet.svelte-15b6cgu:hover {border-color:var(--sg-accent, #3b82f6);}.sv-board-facet.is-active.svelte-15b6cgu {background:var(--sg-accent, #3b82f6);border-color:var(--sg-accent, #3b82f6);color:#fff;}.sv-board-facet-count.svelte-15b6cgu {font-size:0.66rem;opacity:0.7;font-variant-numeric:tabular-nums;}.sv-board-facet-clear.svelte-15b6cgu {all:unset;cursor:pointer;font-size:0.72rem;color:var(--sg-accent, #3b82f6);padding:2px 6px;}\r\n /* Blocked flag + selection */.sv-board-card.svelte-15b6cgu {position:relative;}.sv-board-card-flag.svelte-15b6cgu {position:absolute;top:0;right:0;width:0;height:0;border-top:14px solid var(--sg-danger, #ef4444);border-left:14px solid transparent;border-top-right-radius:var(--sg-radius, 8px);}.sv-board-card.is-selected.svelte-15b6cgu {border-color:var(--sv-board-accent);box-shadow:0 0 0 2px color-mix(in srgb, var(--sv-board-accent) 55%, transparent);}.sv-board-card.is-locked.svelte-15b6cgu {cursor:default;}\r\n /* Child cards (epic -> stories) */.sv-board-kids.svelte-15b6cgu {margin-top:7px;border-top:1px solid color-mix(in srgb, var(--sg-fg, #101828) 8%, transparent);padding-top:6px;}.sv-board-kids-head.svelte-15b6cgu {all:unset;cursor:pointer;display:flex;align-items:center;gap:5px;font-size:0.7rem;color:color-mix(in srgb, var(--sg-fg, #101828) 60%, transparent);}.sv-board-kids-list.svelte-15b6cgu {list-style:none;margin:6px 0 0;padding:0;display:flex;flex-direction:column;gap:4px;}.sv-board-kid.svelte-15b6cgu {display:flex;align-items:center;gap:6px;font-size:0.74rem;padding:4px 7px;border:1px solid var(--sg-border, #e4e7ec);border-radius:6px;background:var(--sg-bg, #fff);}.sv-board-kid-title.svelte-15b6cgu {flex:1 1 auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}.sv-board-kid-lane.svelte-15b6cgu {font-size:0.64rem;font-weight:600;padding:0 6px;border-radius:999px;background:color-mix(in srgb, var(--sv-board-accent) 15%, transparent);color:color-mix(in srgb, var(--sv-board-accent) 85%, var(--sg-fg, #101828));text-transform:capitalize;}\r\n @media (prefers-reduced-motion: reduce) {.sv-board-card.svelte-15b6cgu,\r\n .sv-board-lane-body.svelte-15b6cgu,\r\n .sv-board-subs-bar.svelte-15b6cgu span:where(.svelte-15b6cgu) {transition:none;}\r\n }"
|
|
13298
|
+
code: ".sv-board.svelte-15b6cgu {height:100%;box-sizing:border-box;display:flex;flex-direction:column;background:var(--sg-bg, #fff);color:var(--sg-fg, #101828);font-family:var(--sg-font, inherit);}.sv-board.is-swim.svelte-15b6cgu {overflow-y:auto;gap:14px;}.sv-board-lanes.svelte-15b6cgu {display:flex;gap:12px;align-items:flex-start;overflow-x:auto;padding:4px;flex:1 1 auto;min-height:0;scrollbar-color:var(--sg-scrollbar-thumb, color-mix(in srgb, var(--sg-fg, #101828) 28%, transparent))\n transparent;}.sv-board.is-swim.svelte-15b6cgu .sv-board-lanes:where(.svelte-15b6cgu) {flex:none;}.sv-board.is-swim.svelte-15b6cgu .sv-board-lane:where(.svelte-15b6cgu) {max-height:340px;}.sv-board-swim.svelte-15b6cgu {display:flex;flex-direction:column;gap:4px;flex:none;}.sv-board-swim-head.svelte-15b6cgu {display:flex;align-items:center;gap:8px;padding:4px 8px;font-weight:700;font-size:0.78rem;color:color-mix(in srgb, var(--sg-fg, #101828) 78%, transparent);position:sticky;left:0;}.sv-board-swim-count.svelte-15b6cgu {font-size:0.7rem;font-weight:600;padding:0 7px;border-radius:999px;background:color-mix(in srgb, var(--sg-fg, #101828) 8%, transparent);color:color-mix(in srgb, var(--sg-fg, #101828) 60%, transparent);}.sv-board-swim-summary.svelte-15b6cgu {font-size:0.7rem;font-weight:600;color:color-mix(in srgb, var(--sg-accent, #3b82f6) 85%, var(--sg-fg, #101828));}.sv-board-swim-toggle.svelte-15b6cgu {all:unset;cursor:pointer;font-size:0.7rem;padding:2px;color:color-mix(in srgb, var(--sg-fg, #101828) 60%, transparent);}.sv-board-lane-title.is-renamable.svelte-15b6cgu {cursor:text;}.sv-board-lane-rename.svelte-15b6cgu {flex:1 1 auto;min-width:0;font:inherit;font-weight:600;font-size:0.82rem;padding:1px 4px;border:1px solid var(--sv-board-accent);border-radius:5px;background:var(--sg-bg, #fff);color:var(--sg-fg, #101828);}.sv-board-swim-toggle.svelte-15b6cgu:hover {color:var(--sg-fg, #101828);}.sv-board-lane.svelte-15b6cgu {flex:0 0 var(--sg-board-lane-w, 272px);max-width:var(--sg-board-lane-w, 272px);display:flex;flex-direction:column;max-height:100%;border:1px solid var(--sg-border, #e4e7ec);border-radius:var(--sg-radius, 8px);background:var(--sg-header-bg, color-mix(in srgb, var(--sg-fg, #101828) 3%, var(--sg-bg, #fff)));--sv-board-accent: var(--sg-accent, #3b82f6);}.sv-board-lane-head.svelte-15b6cgu {display:flex;align-items:center;gap:8px;padding:8px 10px;border-bottom:1px solid var(--sg-border, #e4e7ec);border-top:3px solid var(--sv-board-accent);border-radius:var(--sg-radius, 8px) var(--sg-radius, 8px) 0 0;}.sv-board-lane-head.is-reorderable.svelte-15b6cgu {cursor:grab;}.sv-board-lane-head.is-lane-dropover.svelte-15b6cgu {box-shadow:inset 3px 0 0 var(--sv-board-accent);}.sv-board-lane-title.svelte-15b6cgu {font-weight:600;font-size:0.82rem;flex:1 1 auto;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}.sv-board-lane-toggle.svelte-15b6cgu {all:unset;cursor:pointer;font-size:0.7rem;line-height:1;color:color-mix(in srgb, var(--sg-fg, #101828) 55%, transparent);padding:2px;}.sv-board-lane-toggle.svelte-15b6cgu:hover {color:var(--sg-fg, #101828);}.sv-board-lane.is-collapsed.svelte-15b6cgu {flex:0 0 auto;max-width:none;}.sv-board-lane.is-collapsed.svelte-15b6cgu .sv-board-lane-head:where(.svelte-15b6cgu) {writing-mode:vertical-rl;height:180px;border-top:none;border-left:3px solid var(--sv-board-accent);border-radius:0 var(--sg-radius, 8px) var(--sg-radius, 8px) 0;gap:6px;}.sv-board-lane-count.svelte-15b6cgu {font-size:0.72rem;font-variant-numeric:tabular-nums;padding:1px 7px;border-radius:999px;background:color-mix(in srgb, var(--sg-fg, #101828) 8%, transparent);color:color-mix(in srgb, var(--sg-fg, #101828) 70%, transparent);}.sv-board-lane-count.is-over.svelte-15b6cgu {background:color-mix(in srgb, var(--sg-danger, #ef4444) 16%, transparent);color:var(--sg-danger, #ef4444);font-weight:700;}.sv-board-lane-summary.svelte-15b6cgu {font-size:0.72rem;font-weight:600;font-variant-numeric:tabular-nums;color:color-mix(in srgb, var(--sv-board-accent) 85%, var(--sg-fg, #101828));}.sv-board-lane-add.svelte-15b6cgu {all:unset;cursor:pointer;width:20px;height:20px;display:grid;place-items:center;border-radius:5px;font-size:1rem;line-height:1;color:color-mix(in srgb, var(--sg-fg, #101828) 60%, transparent);}.sv-board-lane-add.svelte-15b6cgu:hover {background:color-mix(in srgb, var(--sg-fg, #101828) 8%, transparent);color:var(--sg-fg, #101828);}.sv-board-lane-body.svelte-15b6cgu {display:flex;flex-direction:column;gap:8px;padding:8px;overflow-y:auto;flex:1 1 auto;min-height:48px;transition:background 0.12s ease;}.sv-board-lane-body.is-dropover.svelte-15b6cgu {background:color-mix(in srgb, var(--sv-board-accent) 8%, transparent);}\n /* Virtualized lanes use block flow + per-card margin (not flex gap) so the\n spacer heights match the windowing math exactly. */.sv-board-lane-body.is-virtual.svelte-15b6cgu {display:block;gap:0;}.sv-board-lane-body.is-virtual.svelte-15b6cgu .sv-board-card:where(.svelte-15b6cgu) {margin-bottom:8px;}.sv-board-card.svelte-15b6cgu {background:var(--sg-bg, #fff);border:1px solid var(--sg-border, #e4e7ec);border-radius:var(--sg-radius, 8px);padding:9px 11px;cursor:grab;box-shadow:0 1px 2px rgba(16, 24, 40, 0.05);transition:box-shadow 0.12s ease,\n opacity 0.12s ease,\n transform 0.12s ease;}.sv-board-card.svelte-15b6cgu:hover {box-shadow:0 2px 8px rgba(16, 24, 40, 0.12);border-color:color-mix(in srgb, var(--sv-board-accent) 45%, var(--sg-border, #e4e7ec));}.sv-board-card.svelte-15b6cgu:focus-visible {outline:none;border-color:var(--sv-board-accent);box-shadow:var(--sg-focus-ring, 0 0 0 2px color-mix(in srgb, var(--sv-board-accent) 45%, transparent));}.sv-board-card.is-dragging.svelte-15b6cgu {opacity:0.45;}.sv-board-card.is-grabbed.svelte-15b6cgu {border-color:var(--sv-board-accent);box-shadow:0 0 0 2px color-mix(in srgb, var(--sv-board-accent) 55%, transparent);cursor:grabbing;}.sv-board-card.is-editing.svelte-15b6cgu {cursor:default;border-color:var(--sv-board-accent);}.sv-board-card-edit.svelte-15b6cgu {display:flex;flex-direction:column;gap:7px;}.sv-board-field.svelte-15b6cgu {display:flex;flex-direction:column;gap:2px;font-size:0.72rem;color:color-mix(in srgb, var(--sg-fg, #101828) 60%, transparent);}.sv-board-field.svelte-15b6cgu input[type=\"text\"]:where(.svelte-15b6cgu),\n .sv-board-field.svelte-15b6cgu input[type=\"number\"]:where(.svelte-15b6cgu),\n .sv-board-field.svelte-15b6cgu input[type=\"date\"]:where(.svelte-15b6cgu) {font:inherit;font-size:0.8rem;padding:4px 7px;border:1px solid var(--sg-border, #e4e7ec);border-radius:var(--sg-radius, 6px);background:var(--sg-bg, #fff);color:var(--sg-fg, #101828);}.sv-board-field.svelte-15b6cgu input:where(.svelte-15b6cgu):focus-visible {outline:none;border-color:var(--sv-board-accent);box-shadow:0 0 0 2px color-mix(in srgb, var(--sv-board-accent) 35%, transparent);}.sv-board-field.svelte-15b6cgu input[type=\"checkbox\"]:where(.svelte-15b6cgu) {align-self:flex-start;width:15px;height:15px;accent-color:var(--sv-board-accent);}.sv-board-card-edit-actions.svelte-15b6cgu {display:flex;justify-content:flex-end;gap:6px;margin-top:2px;}.sv-board-btn.svelte-15b6cgu {font:inherit;font-size:0.74rem;padding:3px 10px;border-radius:var(--sg-radius, 6px);border:1px solid var(--sg-border, #e4e7ec);background:var(--sg-bg, #fff);color:var(--sg-fg, #101828);cursor:pointer;}.sv-board-btn.svelte-15b6cgu:hover {background:color-mix(in srgb, var(--sg-fg, #101828) 6%, transparent);}.sv-board-btn.is-primary.svelte-15b6cgu {background:var(--sv-board-accent);border-color:var(--sv-board-accent);color:#fff;}.sv-board-btn.is-primary.svelte-15b6cgu:hover {filter:brightness(0.95);}.sv-board-card-title.svelte-15b6cgu {font-weight:600;font-size:0.84rem;line-height:1.3;}.sv-board-card-meta.svelte-15b6cgu {margin:6px 0 0;display:flex;flex-direction:column;gap:2px;}.sv-board-card-metarow.svelte-15b6cgu {display:flex;gap:6px;font-size:0.74rem;}.sv-board-card-metarow.svelte-15b6cgu dt:where(.svelte-15b6cgu) {color:color-mix(in srgb, var(--sg-fg, #101828) 55%, transparent);margin:0;}.sv-board-card-metarow.svelte-15b6cgu dd:where(.svelte-15b6cgu) {margin:0;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}.sv-board-lane-empty.svelte-15b6cgu {text-align:center;font-size:0.76rem;color:color-mix(in srgb, var(--sg-fg, #101828) 42%, transparent);padding:14px 0;border:1px dashed var(--sg-border, #e4e7ec);border-radius:var(--sg-radius, 8px);}.sv-board-drop-marker.svelte-15b6cgu {height:2px;border-radius:2px;background:var(--sv-board-accent);margin:-3px 0;}.sv-board-ctx {z-index:2147483646;min-width:200px;background:var(--sg-bg, #fff);color:var(--sg-fg, #0f172a);border:1px solid var(--sg-border, #e2e8f0);border-radius:10px;box-shadow:0 16px 48px -12px rgba(15, 23, 42, 0.35);font-size:13px;}.sv-board-sr.svelte-15b6cgu {position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0;}\n /* Card badges */.sv-board-badges.svelte-15b6cgu {display:flex;align-items:center;flex-wrap:wrap;gap:4px;margin-top:6px;}.sv-board-badge.svelte-15b6cgu {font-size:0.66rem;font-weight:600;padding:1px 6px;border-radius:4px;line-height:1.5;white-space:nowrap;}.sv-board-badge.is-label.svelte-15b6cgu {--b: var(--sv-board-accent);background:color-mix(in srgb, var(--b) 16%, transparent);color:color-mix(in srgb, var(--b) 80%, var(--sg-fg, #101828));}.sv-board-badge.is-due.svelte-15b6cgu {background:color-mix(in srgb, var(--sg-fg, #101828) 8%, transparent);color:color-mix(in srgb, var(--sg-fg, #101828) 65%, transparent);}.sv-board-badge.is-due.is-overdue.svelte-15b6cgu {background:color-mix(in srgb, var(--sg-danger, #ef4444) 15%, transparent);color:var(--sg-danger, #ef4444);}.sv-board-badge.is-meta.svelte-15b6cgu {display:inline-flex;align-items:center;gap:3px;background:transparent;padding:1px 3px;color:color-mix(in srgb, var(--sg-fg, #101828) 55%, transparent);}.sv-board-badge.is-btn.svelte-15b6cgu {border:0;cursor:pointer;font:inherit;font-size:0.66rem;font-weight:600;border-radius:5px;}.sv-board-badge.is-btn.svelte-15b6cgu:hover {background:color-mix(in srgb, var(--sg-fg, #101828) 8%, transparent);color:var(--sg-fg, #101828);}.sv-board-badge.is-blocked.svelte-15b6cgu {background:var(--sg-danger, #ef4444);color:#fff;text-transform:uppercase;letter-spacing:0.03em;font-size:0.6rem;}\n /* Comments thread */.sv-board-comments.svelte-15b6cgu {margin-top:7px;border-top:1px solid color-mix(in srgb, var(--sg-fg, #101828) 8%, transparent);padding-top:7px;display:flex;flex-direction:column;gap:5px;}.sv-board-drawer-comments.svelte-15b6cgu {margin-top:16px;padding-top:12px;border-top:1px solid var(--sg-border, #e4e7ec);display:flex;flex-direction:column;gap:6px;}.sv-board-drawer-h.svelte-15b6cgu {font-weight:600;font-size:0.82rem;margin-bottom:2px;}.sv-board-comment.svelte-15b6cgu {display:flex;align-items:flex-start;gap:6px;font-size:0.74rem;}.sv-board-comment-body.svelte-15b6cgu {flex:1 1 auto;min-width:0;}.sv-board-comment-author.svelte-15b6cgu {font-weight:600;margin-right:5px;}.sv-board-comment-at.svelte-15b6cgu {margin-left:6px;font-size:0.66rem;color:color-mix(in srgb, var(--sg-fg, #101828) 45%, transparent);}.sv-board-comment-del.svelte-15b6cgu {all:unset;cursor:pointer;font-size:0.9rem;line-height:1;color:color-mix(in srgb, var(--sg-fg, #101828) 40%, transparent);padding:0 2px;}.sv-board-comment-del.svelte-15b6cgu:hover {color:var(--sg-danger, #ef4444);}.sv-board-comment-empty.svelte-15b6cgu {font-size:0.72rem;color:color-mix(in srgb, var(--sg-fg, #101828) 42%, transparent);}.sv-board-comment-add.svelte-15b6cgu {width:100%;box-sizing:border-box;font:inherit;font-size:0.74rem;padding:4px 7px;border:1px solid var(--sg-border, #e4e7ec);border-radius:5px;background:var(--sg-bg, #fff);color:var(--sg-fg, #101828);}.sv-board-card-cover.svelte-15b6cgu {height:6px;border-radius:4px;margin:-2px 0 7px;}.sv-board-avatars.svelte-15b6cgu {display:inline-flex;margin-left:auto;}.sv-board-avatar.svelte-15b6cgu {width:20px;height:20px;border-radius:50%;display:grid;place-items:center;font-size:0.6rem;font-weight:700;color:#fff;background:var(--sv-board-accent);border:1.5px solid var(--sg-bg, #fff);margin-left:-6px;}.sv-board-avatar.svelte-15b6cgu:first-child {margin-left:0;}\n /* Sub-tasks */.sv-board-subs.svelte-15b6cgu {margin-top:7px;border-top:1px solid color-mix(in srgb, var(--sg-fg, #101828) 8%, transparent);padding-top:6px;}.sv-board-subs-head.svelte-15b6cgu {all:unset;cursor:pointer;display:flex;align-items:center;gap:6px;width:100%;font-size:0.7rem;color:color-mix(in srgb, var(--sg-fg, #101828) 60%, transparent);}.sv-board-subs-chev.svelte-15b6cgu {font-size:0.6rem;}.sv-board-subs-count.svelte-15b6cgu {font-variant-numeric:tabular-nums;font-weight:600;}.sv-board-subs-bar.svelte-15b6cgu {flex:1 1 auto;height:4px;border-radius:2px;background:color-mix(in srgb, var(--sg-fg, #101828) 10%, transparent);overflow:hidden;}.sv-board-subs-bar.svelte-15b6cgu span:where(.svelte-15b6cgu) {display:block;height:100%;background:var(--sv-board-accent);transition:width 0.15s ease;}.sv-board-subs-list.svelte-15b6cgu {list-style:none;margin:6px 0 0;padding:0;display:flex;flex-direction:column;gap:3px;}.sv-board-subs-list.svelte-15b6cgu label:where(.svelte-15b6cgu) {display:flex;align-items:center;gap:6px;font-size:0.74rem;cursor:pointer;}.sv-board-subs-list.svelte-15b6cgu label.is-done:where(.svelte-15b6cgu) span:where(.svelte-15b6cgu) {text-decoration:line-through;color:color-mix(in srgb, var(--sg-fg, #101828) 45%, transparent);}.sv-board-subs-list.svelte-15b6cgu input:where(.svelte-15b6cgu) {accent-color:var(--sv-board-accent);}.sv-board-subs-add.svelte-15b6cgu {margin-top:5px;width:100%;box-sizing:border-box;font:inherit;font-size:0.74rem;padding:3px 6px;border:1px solid var(--sg-border, #e4e7ec);border-radius:5px;background:var(--sg-bg, #fff);color:var(--sg-fg, #101828);}\n /* Quick-add composer */.sv-board-composer-btn.svelte-15b6cgu {all:unset;cursor:pointer;display:block;margin:6px 8px 8px;padding:5px 8px;border-radius:var(--sg-radius, 6px);font-size:0.76rem;color:color-mix(in srgb, var(--sg-fg, #101828) 55%, transparent);}.sv-board-composer-btn.svelte-15b6cgu:hover {background:color-mix(in srgb, var(--sg-fg, #101828) 6%, transparent);color:var(--sg-fg, #101828);}.sv-board-composer-input.svelte-15b6cgu {margin:6px 8px 8px;width:calc(100% - 16px);box-sizing:border-box;font:inherit;font-size:0.8rem;padding:6px 8px;border:1px solid var(--sv-board-accent);border-radius:var(--sg-radius, 6px);background:var(--sg-bg, #fff);color:var(--sg-fg, #101828);}\n /* Facet filter bar */.sv-board-facets.svelte-15b6cgu {display:flex;flex-wrap:wrap;gap:6px;padding:4px 4px 8px;align-items:center;}.sv-board-facet.svelte-15b6cgu {all:unset;cursor:pointer;display:inline-flex;align-items:center;gap:5px;font-size:0.73rem;padding:2px 9px;border-radius:999px;border:1px solid var(--sg-border, #e4e7ec);color:color-mix(in srgb, var(--sg-fg, #101828) 70%, transparent);}.sv-board-facet.svelte-15b6cgu:hover {border-color:var(--sg-accent, #3b82f6);}.sv-board-facet.is-active.svelte-15b6cgu {background:var(--sg-accent, #3b82f6);border-color:var(--sg-accent, #3b82f6);color:#fff;}.sv-board-facet-count.svelte-15b6cgu {font-size:0.66rem;opacity:0.7;font-variant-numeric:tabular-nums;}.sv-board-facet-clear.svelte-15b6cgu {all:unset;cursor:pointer;font-size:0.72rem;color:var(--sg-accent, #3b82f6);padding:2px 6px;}\n /* Blocked flag + selection */.sv-board-card.svelte-15b6cgu {position:relative;}.sv-board-card-flag.svelte-15b6cgu {position:absolute;top:0;right:0;width:0;height:0;border-top:14px solid var(--sg-danger, #ef4444);border-left:14px solid transparent;border-top-right-radius:var(--sg-radius, 8px);}.sv-board-card.is-selected.svelte-15b6cgu {border-color:var(--sv-board-accent);box-shadow:0 0 0 2px color-mix(in srgb, var(--sv-board-accent) 55%, transparent);}.sv-board-card.is-locked.svelte-15b6cgu {cursor:default;}\n /* Child cards (epic -> stories) */.sv-board-kids.svelte-15b6cgu {margin-top:7px;border-top:1px solid color-mix(in srgb, var(--sg-fg, #101828) 8%, transparent);padding-top:6px;}.sv-board-kids-head.svelte-15b6cgu {all:unset;cursor:pointer;display:flex;align-items:center;gap:5px;font-size:0.7rem;color:color-mix(in srgb, var(--sg-fg, #101828) 60%, transparent);}.sv-board-kids-list.svelte-15b6cgu {list-style:none;margin:6px 0 0;padding:0;display:flex;flex-direction:column;gap:4px;}.sv-board-kid.svelte-15b6cgu {display:flex;align-items:center;gap:6px;font-size:0.74rem;padding:4px 7px;border:1px solid var(--sg-border, #e4e7ec);border-radius:6px;background:var(--sg-bg, #fff);}.sv-board-kid-title.svelte-15b6cgu {flex:1 1 auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}.sv-board-kid-lane.svelte-15b6cgu {font-size:0.64rem;font-weight:600;padding:0 6px;border-radius:999px;background:color-mix(in srgb, var(--sv-board-accent) 15%, transparent);color:color-mix(in srgb, var(--sv-board-accent) 85%, var(--sg-fg, #101828));text-transform:capitalize;}\n @media (prefers-reduced-motion: reduce) {.sv-board-card.svelte-15b6cgu,\n .sv-board-lane-body.svelte-15b6cgu,\n .sv-board-subs-bar.svelte-15b6cgu span:where(.svelte-15b6cgu) {transition:none;}\n }"
|
|
13299
13299
|
};
|
|
13300
13300
|
function rh(e, t) {
|
|
13301
13301
|
Jt(t, !0), sa(e, nh);
|
|
@@ -1314,7 +1314,7 @@ function G(e, t) {
|
|
|
1314
1314
|
//#region src/SvGridDropdown.svelte
|
|
1315
1315
|
var Ge = e.from_html("<span class=\"sv-grid-chip sv-grid-chip-removable svelte-ei8hp3\"> <span class=\"sv-grid-chip-remove svelte-ei8hp3\" role=\"button\">×</span></span>"), Ke = e.from_html("<span class=\"sv-grid-dropdown-chips svelte-ei8hp3\"></span>"), qe = e.from_html("<span class=\"sv-grid-chip svelte-ei8hp3\"> </span>"), Je = e.from_html("<span class=\"sv-grid-dropdown-label svelte-ei8hp3\"> </span>"), Ye = e.from_html("<input type=\"search\" class=\"sv-grid-dropdown-search\" placeholder=\"Search…\"/>"), Xe = e.from_html("<div class=\"sv-grid-dropdown-empty\"> </div>"), Ze = e.from_html("<span class=\"sv-grid-dropdown-check\" aria-hidden=\"true\"> </span>"), Qe = e.from_html("<span class=\"sv-grid-dropdown-option-chip\"> </span>"), $e = e.from_html("<span class=\"sv-grid-dropdown-option-label\"> </span>"), et = e.from_html("<div role=\"option\"><!> <!></div>"), tt = e.from_html("<div class=\"sv-grid-dropdown-footer\"><button type=\"button\" class=\"sv-grid-dropdown-done\">Done</button></div>"), nt = e.from_html("<div role=\"listbox\"><!> <!> <!></div>"), rt = e.from_html("<div><button type=\"button\" aria-haspopup=\"listbox\"><!> <span class=\"sv-grid-dropdown-caret svelte-ei8hp3\" aria-hidden=\"true\">▾</span></button> <!></div>"), it = {
|
|
1316
1316
|
hash: "svelte-ei8hp3",
|
|
1317
|
-
code: "\
|
|
1317
|
+
code: "\n /* All colors derive from the grid's host CSS vars so light/dark themes\n \"just work\". Hard fallbacks are kept so the component is still\n usable in an unthemed page. */.sv-grid-dropdown.svelte-ei8hp3 {position:absolute;top:0;left:0;right:0;height:100%;background:var(--sg-bg, #ffffff);color:var(--sg-fg, #0f172a);}.sv-grid-dropdown-trigger.svelte-ei8hp3 {display:flex;align-items:center;gap:6px;width:100%;height:100%;min-height:28px;padding:0 8px;background:var(--sg-bg, #ffffff);color:var(--sg-fg, #0f172a);border:0;outline:none;font:inherit;text-align:left;cursor:pointer;box-sizing:border-box;}.sv-grid-dropdown-trigger.svelte-ei8hp3:focus {outline:2px solid var(--sg-accent, #2563eb);outline-offset:-2px;}.sv-grid-dropdown-trigger-chips.svelte-ei8hp3 {align-items:center;padding:4px 8px;flex-wrap:wrap;}.sv-grid-dropdown-chips.svelte-ei8hp3 {display:inline-flex;flex-wrap:wrap;gap:4px;flex:1 1 auto;min-width:0;align-items:center;}.sv-grid-dropdown-label.svelte-ei8hp3 {flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}.sv-grid-dropdown-caret.svelte-ei8hp3 {flex:0 0 auto;font-size:10px;opacity:0.7;line-height:1;}\n\n /* Popover sits absolutely below the trigger. The parent\n `.sv-grid-cell-editing` has `overflow: visible`, so this can hang\n past the row. Pulls its surface color from the grid's header bg\n so it reads as a slightly elevated layer on either theme. */\n /* Panel is `position: fixed` AND portal'd into document.body via\n `use:portalToBody`, so it escapes every ancestor overflow / clip /\n transform / stacking context. Coords come from updatePanelPosition(). */.sv-grid-dropdown-panel {overflow-y:auto;background:var(--sg-header-bg, var(--sg-bg, #ffffff));color:var(--sg-fg, #0f172a);border:1px solid var(--sg-accent, #2563eb);border-radius:6px;box-shadow:0 12px 28px rgba(0, 0, 0, 0.45);padding:4px 0;font-family:inherit;}\n /* When the option list fits in one panel we want NO scrollbar at all -\n * not even a sub-pixel ghost track. `overflow: visible` rules out the\n * scrollbar gutter that some browsers still reserve under\n * `overflow: auto` when content equals max-height. */.sv-grid-dropdown-panel.sv-grid-dropdown-panel-fits {overflow:visible;}.sv-grid-dropdown-option {display:flex;align-items:center;gap:8px;padding:6px 10px;cursor:pointer;user-select:none;color:var(--sg-fg, #0f172a);}.sv-grid-dropdown-option-highlighted {background:var(--sg-row-hover-bg, rgba(37, 99, 235, 0.1));}.sv-grid-dropdown-option-selected {font-weight:600;background:var(--sg-selection-bg, rgba(37, 99, 235, 0.15));}.sv-grid-dropdown-option-selected.sv-grid-dropdown-option-highlighted {background:var(--sg-row-hover-bg, rgba(37, 99, 235, 0.18));}.sv-grid-dropdown-option-label {flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}.sv-grid-dropdown-check {flex:0 0 16px;display:inline-flex;align-items:center;justify-content:center;color:var(--sg-accent, #2563eb);font-weight:700;}.sv-grid-dropdown-swatch {flex:0 0 12px;width:12px;height:12px;border-radius:999px;border:1px solid color-mix(in srgb, var(--sg-fg, #0f172a) 25%, transparent);}\n /* Colored option chip. Declared `:global` because the option panel is\n portal'd to <body>, where Svelte's scoped classes don't reach. The\n per-chip background / border / text color come from an inline style\n (see colorfulChipStyleInline) so each option matches its cell chip. */.sv-grid-dropdown-option-chip {display:inline-flex;align-items:center;max-width:100%;padding:2px 11px;border:1px solid transparent;border-radius:999px;font-size:0.9em;font-weight:600;line-height:1.5;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}.sv-grid-dropdown-empty {padding:8px 10px;color:var(--sg-muted, rgba(15, 23, 42, 0.55));font-style:italic;font-size:0.9em;}.sv-grid-dropdown-footer {display:flex;justify-content:flex-end;padding:4px 6px;border-top:1px solid var(--sg-border, rgba(15, 23, 42, 0.08));margin-top:2px;}.sv-grid-dropdown-done {font-size:11px;text-transform:uppercase;letter-spacing:0.04em;color:#fff;background:var(--sg-accent, #2563eb);border:0;border-radius:4px;padding:4px 10px;cursor:pointer;}.sv-grid-dropdown-done:hover {filter:brightness(1.12);}\n\n /* Note: option / footer / swatch styles are declared `:global(...)`\n above because the panel is portal'd to <body> and Svelte's scoped\n class won't survive on children of an element living outside the\n component subtree. */\n\n /* Theme-aware chip badges. Inside the trigger they sit on the cell\n background, so we need a tone that contrasts on BOTH themes - a\n translucent accent works well in dark mode and reads as a soft\n blue pill in light mode. */.sv-grid-chip.svelte-ei8hp3 {display:inline-flex;align-items:center;gap:4px;padding:2px 8px;font-size:0.85em;line-height:1.4;background:color-mix(in srgb, var(--sg-accent, #2563eb) 18%, transparent);color:var(--sg-fg, #0f172a);border-radius:999px;border:1px solid color-mix(in srgb, var(--sg-accent, #2563eb) 35%, transparent);white-space:nowrap;}.sv-grid-chip-removable.svelte-ei8hp3 {padding-right:2px;}.sv-grid-chip-remove.svelte-ei8hp3 {display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;border:0;border-radius:999px;background:color-mix(in srgb, var(--sg-fg, #0f172a) 18%, transparent);color:inherit;font-size:12px;line-height:1;cursor:pointer;padding:0;}.sv-grid-chip-remove.svelte-ei8hp3:hover {background:rgba(220, 38, 38, 0.7);color:#fff;}"
|
|
1318
1318
|
};
|
|
1319
1319
|
function at(t, n) {
|
|
1320
1320
|
e.push(n, !0), e.append_styles(t, it);
|
|
@@ -10888,7 +10888,7 @@ e.delegate([
|
|
|
10888
10888
|
//#region src/SvGridBoard.svelte
|
|
10889
10889
|
var lc = e.from_html("<span class=\"sv-board-comment-author svelte-15b6cgu\"> </span>"), uc = e.from_html("<span class=\"sv-board-comment-at svelte-15b6cgu\"> </span>"), dc = e.from_html("<button type=\"button\" class=\"sv-board-comment-del svelte-15b6cgu\" aria-label=\"Delete comment\">×</button>"), fc = e.from_html("<div class=\"sv-board-comment svelte-15b6cgu\"><div class=\"sv-board-comment-body svelte-15b6cgu\"><!> <span class=\"sv-board-comment-text\"> </span> <!></div> <!></div>"), pc = e.from_html("<div class=\"sv-board-comment-empty svelte-15b6cgu\">No comments yet.</div>"), mc = e.from_html("<input class=\"sv-board-comment-add svelte-15b6cgu\" placeholder=\"Write a comment...\"/>"), hc = e.from_html("<!> <!> <!>", 1), gc = e.from_html("<button type=\"button\" class=\"sv-board-lane-toggle svelte-15b6cgu\"> </button>"), _c = e.from_html("<input class=\"sv-board-lane-rename svelte-15b6cgu\"/>"), vc = e.from_html("<span> </span>"), yc = e.from_html("<span class=\"sv-board-lane-summary svelte-15b6cgu\"> </span>"), bc = e.from_html("<button type=\"button\" class=\"sv-board-lane-add svelte-15b6cgu\">+</button>"), xc = e.from_html("<div aria-hidden=\"true\"></div>"), Sc = e.from_html("<div class=\"sv-board-drop-marker svelte-15b6cgu\" aria-hidden=\"true\"></div>"), Cc = e.from_html("<span class=\"sv-board-card-flag svelte-15b6cgu\" aria-label=\"Blocked\"></span>"), wc = e.from_html("<input type=\"checkbox\" class=\"svelte-15b6cgu\"/>"), Tc = e.from_html("<input class=\"svelte-15b6cgu\"/>"), Ec = e.from_html("<label class=\"sv-board-field svelte-15b6cgu\"><span> </span> <!></label>"), Dc = e.from_html("<form class=\"sv-board-card-edit svelte-15b6cgu\"><!> <div class=\"sv-board-card-edit-actions svelte-15b6cgu\"><button type=\"button\" class=\"sv-board-btn svelte-15b6cgu\">Cancel</button> <button type=\"submit\" class=\"sv-board-btn is-primary svelte-15b6cgu\">Save</button></div></form>"), Oc = e.from_html("<!> <!>", 1), kc = e.from_html("<div class=\"sv-board-card-cover svelte-15b6cgu\" aria-hidden=\"true\"></div>"), Ac = e.from_html("<div class=\"sv-board-card-title svelte-15b6cgu\"> </div>"), jc = e.from_html("<div class=\"sv-board-card-metarow svelte-15b6cgu\"><dt class=\"svelte-15b6cgu\"> </dt> <dd class=\"svelte-15b6cgu\"> </dd></div>"), Mc = e.from_html("<dl class=\"sv-board-card-meta svelte-15b6cgu\"></dl>"), Nc = e.from_html("<!> <!> <!> <!>", 1), Pc = e.from_html("<li><label><input type=\"checkbox\" class=\"svelte-15b6cgu\"/> <span class=\"svelte-15b6cgu\"> </span></label></li>"), Fc = e.from_html("<ul class=\"sv-board-subs-list svelte-15b6cgu\"></ul> <input class=\"sv-board-subs-add svelte-15b6cgu\" placeholder=\"Add subtask...\"/>", 1), Ic = e.from_html("<div class=\"sv-board-subs svelte-15b6cgu\"><button type=\"button\" class=\"sv-board-subs-head svelte-15b6cgu\"><span class=\"sv-board-subs-chev svelte-15b6cgu\"> </span> <span class=\"sv-board-subs-count svelte-15b6cgu\"> </span> <span class=\"sv-board-subs-bar svelte-15b6cgu\" aria-hidden=\"true\"><span class=\"svelte-15b6cgu\"></span></span></button> <!></div>"), Lc = e.from_html("<li class=\"sv-board-kid svelte-15b6cgu\"><span class=\"sv-board-kid-title svelte-15b6cgu\"> </span> <span class=\"sv-board-kid-lane svelte-15b6cgu\"> </span></li>"), Rc = e.from_html("<ul class=\"sv-board-kids-list svelte-15b6cgu\"></ul>"), zc = e.from_html("<div class=\"sv-board-kids svelte-15b6cgu\"><button type=\"button\" class=\"sv-board-kids-head svelte-15b6cgu\"><span class=\"sv-board-subs-chev svelte-15b6cgu\"> </span> </button> <!></div>"), Bc = e.from_html("<div class=\"sv-board-comments svelte-15b6cgu\"><!></div>"), Vc = e.from_html("<!> <article role=\"listitem\" tabindex=\"0\" aria-roledescription=\"Draggable card\"><!> <!> <!> <!> <!></article>", 1), Hc = e.from_html("<div aria-hidden=\"true\"></div>"), Uc = e.from_html("<div class=\"sv-board-drop-marker svelte-15b6cgu\" aria-hidden=\"true\"></div>"), Wc = e.from_html("<div class=\"sv-board-lane-empty svelte-15b6cgu\">No cards</div>"), Gc = e.from_html("<input class=\"sv-board-composer-input svelte-15b6cgu\" placeholder=\"Card title...\"/>"), Kc = e.from_html("<button type=\"button\" class=\"sv-board-composer-btn svelte-15b6cgu\">+ Add a card</button>"), qc = e.from_html("<div role=\"list\"><!> <!> <!> <!></div> <!>", 1), Jc = e.from_html("<section><header><!> <!> <span> <!></span> <!> <!></header> <!></section>"), Yc = e.from_html("<span class=\"sv-board-badge is-blocked svelte-15b6cgu\">Blocked</span>"), Xc = e.from_html("<span class=\"sv-board-badge is-label svelte-15b6cgu\"> </span>"), Zc = e.from_html("<span> </span>"), Qc = e.from_html("<span class=\"sv-board-badge is-meta svelte-15b6cgu\" title=\"Age\"> </span>"), $c = e.from_html("<button type=\"button\" class=\"sv-board-badge is-meta is-btn svelte-15b6cgu\" title=\"Comments\"><svg viewBox=\"0 0 16 16\" width=\"11\" height=\"11\" aria-hidden=\"true\"><path d=\"M2 3h12v8H8l-3 2v-2H2z\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.3\" stroke-linejoin=\"round\"></path></svg> </button>"), el = e.from_html("<span class=\"sv-board-badge is-meta svelte-15b6cgu\"><svg viewBox=\"0 0 16 16\" width=\"11\" height=\"11\" aria-hidden=\"true\"><path d=\"M11 5.5 6.5 10a2 2 0 0 1-3-3l5-5a3 3 0 0 1 4 4l-5 5\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.3\" stroke-linecap=\"round\" stroke-linejoin=\"round\"></path></svg> </span>"), tl = e.from_html("<span class=\"sv-board-avatar svelte-15b6cgu\"> </span>"), nl = e.from_html("<span class=\"sv-board-avatars svelte-15b6cgu\"></span>"), rl = e.from_html("<div class=\"sv-board-badges svelte-15b6cgu\"><!> <!> <!> <!> <!> <!> <!></div>"), il = e.from_html("<button type=\"button\"> <span class=\"sv-board-facet-count svelte-15b6cgu\"> </span></button>"), al = e.from_html("<button type=\"button\" class=\"sv-board-facet-clear svelte-15b6cgu\">Clear filters</button>"), ol = e.from_html("<div class=\"sv-board-facets svelte-15b6cgu\"><!> <!></div>"), sl = e.from_html("<button type=\"button\" class=\"sv-board-swim-toggle svelte-15b6cgu\"> </button>"), cl = e.from_html("<span class=\"sv-board-swim-summary svelte-15b6cgu\"> </span>"), ll = e.from_html("<div class=\"sv-board-lanes svelte-15b6cgu\"></div>"), ul = e.from_html("<section class=\"sv-board-swim svelte-15b6cgu\"><header class=\"sv-board-swim-head svelte-15b6cgu\"><!> <span class=\"sv-board-swim-title\"> </span> <span class=\"sv-board-swim-count svelte-15b6cgu\"> </span> <!></header> <!></section>"), dl = e.from_html("<div class=\"sv-board-lanes svelte-15b6cgu\"></div>"), fl = e.from_html("<div class=\"sv-board-ctx\" aria-label=\"Card actions\"><!></div>"), pl = e.from_html("<div class=\"sv-board-drawer-comments svelte-15b6cgu\"><div class=\"sv-board-drawer-h svelte-15b6cgu\">Comments</div> <!></div>"), ml = e.from_html("<!> <!>", 1), hl = e.from_html("<div role=\"group\" aria-label=\"Board\"><!> <!> <div class=\"sv-board-sr svelte-15b6cgu\" aria-live=\"polite\" role=\"status\"> </div></div> <!> <!>", 1), gl = {
|
|
10890
10890
|
hash: "svelte-15b6cgu",
|
|
10891
|
-
code: ".sv-board.svelte-15b6cgu {height:100%;box-sizing:border-box;display:flex;flex-direction:column;background:var(--sg-bg, #fff);color:var(--sg-fg, #101828);font-family:var(--sg-font, inherit);}.sv-board.is-swim.svelte-15b6cgu {overflow-y:auto;gap:14px;}.sv-board-lanes.svelte-15b6cgu {display:flex;gap:12px;align-items:flex-start;overflow-x:auto;padding:4px;flex:1 1 auto;min-height:0;scrollbar-color:var(--sg-scrollbar-thumb, color-mix(in srgb, var(--sg-fg, #101828) 28%, transparent))\r\n transparent;}.sv-board.is-swim.svelte-15b6cgu .sv-board-lanes:where(.svelte-15b6cgu) {flex:none;}.sv-board.is-swim.svelte-15b6cgu .sv-board-lane:where(.svelte-15b6cgu) {max-height:340px;}.sv-board-swim.svelte-15b6cgu {display:flex;flex-direction:column;gap:4px;flex:none;}.sv-board-swim-head.svelte-15b6cgu {display:flex;align-items:center;gap:8px;padding:4px 8px;font-weight:700;font-size:0.78rem;color:color-mix(in srgb, var(--sg-fg, #101828) 78%, transparent);position:sticky;left:0;}.sv-board-swim-count.svelte-15b6cgu {font-size:0.7rem;font-weight:600;padding:0 7px;border-radius:999px;background:color-mix(in srgb, var(--sg-fg, #101828) 8%, transparent);color:color-mix(in srgb, var(--sg-fg, #101828) 60%, transparent);}.sv-board-swim-summary.svelte-15b6cgu {font-size:0.7rem;font-weight:600;color:color-mix(in srgb, var(--sg-accent, #3b82f6) 85%, var(--sg-fg, #101828));}.sv-board-swim-toggle.svelte-15b6cgu {all:unset;cursor:pointer;font-size:0.7rem;padding:2px;color:color-mix(in srgb, var(--sg-fg, #101828) 60%, transparent);}.sv-board-lane-title.is-renamable.svelte-15b6cgu {cursor:text;}.sv-board-lane-rename.svelte-15b6cgu {flex:1 1 auto;min-width:0;font:inherit;font-weight:600;font-size:0.82rem;padding:1px 4px;border:1px solid var(--sv-board-accent);border-radius:5px;background:var(--sg-bg, #fff);color:var(--sg-fg, #101828);}.sv-board-swim-toggle.svelte-15b6cgu:hover {color:var(--sg-fg, #101828);}.sv-board-lane.svelte-15b6cgu {flex:0 0 var(--sg-board-lane-w, 272px);max-width:var(--sg-board-lane-w, 272px);display:flex;flex-direction:column;max-height:100%;border:1px solid var(--sg-border, #e4e7ec);border-radius:var(--sg-radius, 8px);background:var(--sg-header-bg, color-mix(in srgb, var(--sg-fg, #101828) 3%, var(--sg-bg, #fff)));--sv-board-accent: var(--sg-accent, #3b82f6);}.sv-board-lane-head.svelte-15b6cgu {display:flex;align-items:center;gap:8px;padding:8px 10px;border-bottom:1px solid var(--sg-border, #e4e7ec);border-top:3px solid var(--sv-board-accent);border-radius:var(--sg-radius, 8px) var(--sg-radius, 8px) 0 0;}.sv-board-lane-head.is-reorderable.svelte-15b6cgu {cursor:grab;}.sv-board-lane-head.is-lane-dropover.svelte-15b6cgu {box-shadow:inset 3px 0 0 var(--sv-board-accent);}.sv-board-lane-title.svelte-15b6cgu {font-weight:600;font-size:0.82rem;flex:1 1 auto;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}.sv-board-lane-toggle.svelte-15b6cgu {all:unset;cursor:pointer;font-size:0.7rem;line-height:1;color:color-mix(in srgb, var(--sg-fg, #101828) 55%, transparent);padding:2px;}.sv-board-lane-toggle.svelte-15b6cgu:hover {color:var(--sg-fg, #101828);}.sv-board-lane.is-collapsed.svelte-15b6cgu {flex:0 0 auto;max-width:none;}.sv-board-lane.is-collapsed.svelte-15b6cgu .sv-board-lane-head:where(.svelte-15b6cgu) {writing-mode:vertical-rl;height:180px;border-top:none;border-left:3px solid var(--sv-board-accent);border-radius:0 var(--sg-radius, 8px) var(--sg-radius, 8px) 0;gap:6px;}.sv-board-lane-count.svelte-15b6cgu {font-size:0.72rem;font-variant-numeric:tabular-nums;padding:1px 7px;border-radius:999px;background:color-mix(in srgb, var(--sg-fg, #101828) 8%, transparent);color:color-mix(in srgb, var(--sg-fg, #101828) 70%, transparent);}.sv-board-lane-count.is-over.svelte-15b6cgu {background:color-mix(in srgb, var(--sg-danger, #ef4444) 16%, transparent);color:var(--sg-danger, #ef4444);font-weight:700;}.sv-board-lane-summary.svelte-15b6cgu {font-size:0.72rem;font-weight:600;font-variant-numeric:tabular-nums;color:color-mix(in srgb, var(--sv-board-accent) 85%, var(--sg-fg, #101828));}.sv-board-lane-add.svelte-15b6cgu {all:unset;cursor:pointer;width:20px;height:20px;display:grid;place-items:center;border-radius:5px;font-size:1rem;line-height:1;color:color-mix(in srgb, var(--sg-fg, #101828) 60%, transparent);}.sv-board-lane-add.svelte-15b6cgu:hover {background:color-mix(in srgb, var(--sg-fg, #101828) 8%, transparent);color:var(--sg-fg, #101828);}.sv-board-lane-body.svelte-15b6cgu {display:flex;flex-direction:column;gap:8px;padding:8px;overflow-y:auto;flex:1 1 auto;min-height:48px;transition:background 0.12s ease;}.sv-board-lane-body.is-dropover.svelte-15b6cgu {background:color-mix(in srgb, var(--sv-board-accent) 8%, transparent);}\r\n /* Virtualized lanes use block flow + per-card margin (not flex gap) so the\r\n spacer heights match the windowing math exactly. */.sv-board-lane-body.is-virtual.svelte-15b6cgu {display:block;gap:0;}.sv-board-lane-body.is-virtual.svelte-15b6cgu .sv-board-card:where(.svelte-15b6cgu) {margin-bottom:8px;}.sv-board-card.svelte-15b6cgu {background:var(--sg-bg, #fff);border:1px solid var(--sg-border, #e4e7ec);border-radius:var(--sg-radius, 8px);padding:9px 11px;cursor:grab;box-shadow:0 1px 2px rgba(16, 24, 40, 0.05);transition:box-shadow 0.12s ease,\r\n opacity 0.12s ease,\r\n transform 0.12s ease;}.sv-board-card.svelte-15b6cgu:hover {box-shadow:0 2px 8px rgba(16, 24, 40, 0.12);border-color:color-mix(in srgb, var(--sv-board-accent) 45%, var(--sg-border, #e4e7ec));}.sv-board-card.svelte-15b6cgu:focus-visible {outline:none;border-color:var(--sv-board-accent);box-shadow:var(--sg-focus-ring, 0 0 0 2px color-mix(in srgb, var(--sv-board-accent) 45%, transparent));}.sv-board-card.is-dragging.svelte-15b6cgu {opacity:0.45;}.sv-board-card.is-grabbed.svelte-15b6cgu {border-color:var(--sv-board-accent);box-shadow:0 0 0 2px color-mix(in srgb, var(--sv-board-accent) 55%, transparent);cursor:grabbing;}.sv-board-card.is-editing.svelte-15b6cgu {cursor:default;border-color:var(--sv-board-accent);}.sv-board-card-edit.svelte-15b6cgu {display:flex;flex-direction:column;gap:7px;}.sv-board-field.svelte-15b6cgu {display:flex;flex-direction:column;gap:2px;font-size:0.72rem;color:color-mix(in srgb, var(--sg-fg, #101828) 60%, transparent);}.sv-board-field.svelte-15b6cgu input[type=\"text\"]:where(.svelte-15b6cgu),\r\n .sv-board-field.svelte-15b6cgu input[type=\"number\"]:where(.svelte-15b6cgu),\r\n .sv-board-field.svelte-15b6cgu input[type=\"date\"]:where(.svelte-15b6cgu) {font:inherit;font-size:0.8rem;padding:4px 7px;border:1px solid var(--sg-border, #e4e7ec);border-radius:var(--sg-radius, 6px);background:var(--sg-bg, #fff);color:var(--sg-fg, #101828);}.sv-board-field.svelte-15b6cgu input:where(.svelte-15b6cgu):focus-visible {outline:none;border-color:var(--sv-board-accent);box-shadow:0 0 0 2px color-mix(in srgb, var(--sv-board-accent) 35%, transparent);}.sv-board-field.svelte-15b6cgu input[type=\"checkbox\"]:where(.svelte-15b6cgu) {align-self:flex-start;width:15px;height:15px;accent-color:var(--sv-board-accent);}.sv-board-card-edit-actions.svelte-15b6cgu {display:flex;justify-content:flex-end;gap:6px;margin-top:2px;}.sv-board-btn.svelte-15b6cgu {font:inherit;font-size:0.74rem;padding:3px 10px;border-radius:var(--sg-radius, 6px);border:1px solid var(--sg-border, #e4e7ec);background:var(--sg-bg, #fff);color:var(--sg-fg, #101828);cursor:pointer;}.sv-board-btn.svelte-15b6cgu:hover {background:color-mix(in srgb, var(--sg-fg, #101828) 6%, transparent);}.sv-board-btn.is-primary.svelte-15b6cgu {background:var(--sv-board-accent);border-color:var(--sv-board-accent);color:#fff;}.sv-board-btn.is-primary.svelte-15b6cgu:hover {filter:brightness(0.95);}.sv-board-card-title.svelte-15b6cgu {font-weight:600;font-size:0.84rem;line-height:1.3;}.sv-board-card-meta.svelte-15b6cgu {margin:6px 0 0;display:flex;flex-direction:column;gap:2px;}.sv-board-card-metarow.svelte-15b6cgu {display:flex;gap:6px;font-size:0.74rem;}.sv-board-card-metarow.svelte-15b6cgu dt:where(.svelte-15b6cgu) {color:color-mix(in srgb, var(--sg-fg, #101828) 55%, transparent);margin:0;}.sv-board-card-metarow.svelte-15b6cgu dd:where(.svelte-15b6cgu) {margin:0;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}.sv-board-lane-empty.svelte-15b6cgu {text-align:center;font-size:0.76rem;color:color-mix(in srgb, var(--sg-fg, #101828) 42%, transparent);padding:14px 0;border:1px dashed var(--sg-border, #e4e7ec);border-radius:var(--sg-radius, 8px);}.sv-board-drop-marker.svelte-15b6cgu {height:2px;border-radius:2px;background:var(--sv-board-accent);margin:-3px 0;}.sv-board-ctx {z-index:2147483646;min-width:200px;background:var(--sg-bg, #fff);color:var(--sg-fg, #0f172a);border:1px solid var(--sg-border, #e2e8f0);border-radius:10px;box-shadow:0 16px 48px -12px rgba(15, 23, 42, 0.35);font-size:13px;}.sv-board-sr.svelte-15b6cgu {position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0;}\r\n /* Card badges */.sv-board-badges.svelte-15b6cgu {display:flex;align-items:center;flex-wrap:wrap;gap:4px;margin-top:6px;}.sv-board-badge.svelte-15b6cgu {font-size:0.66rem;font-weight:600;padding:1px 6px;border-radius:4px;line-height:1.5;white-space:nowrap;}.sv-board-badge.is-label.svelte-15b6cgu {--b: var(--sv-board-accent);background:color-mix(in srgb, var(--b) 16%, transparent);color:color-mix(in srgb, var(--b) 80%, var(--sg-fg, #101828));}.sv-board-badge.is-due.svelte-15b6cgu {background:color-mix(in srgb, var(--sg-fg, #101828) 8%, transparent);color:color-mix(in srgb, var(--sg-fg, #101828) 65%, transparent);}.sv-board-badge.is-due.is-overdue.svelte-15b6cgu {background:color-mix(in srgb, var(--sg-danger, #ef4444) 15%, transparent);color:var(--sg-danger, #ef4444);}.sv-board-badge.is-meta.svelte-15b6cgu {display:inline-flex;align-items:center;gap:3px;background:transparent;padding:1px 3px;color:color-mix(in srgb, var(--sg-fg, #101828) 55%, transparent);}.sv-board-badge.is-btn.svelte-15b6cgu {border:0;cursor:pointer;font:inherit;font-size:0.66rem;font-weight:600;border-radius:5px;}.sv-board-badge.is-btn.svelte-15b6cgu:hover {background:color-mix(in srgb, var(--sg-fg, #101828) 8%, transparent);color:var(--sg-fg, #101828);}.sv-board-badge.is-blocked.svelte-15b6cgu {background:var(--sg-danger, #ef4444);color:#fff;text-transform:uppercase;letter-spacing:0.03em;font-size:0.6rem;}\r\n /* Comments thread */.sv-board-comments.svelte-15b6cgu {margin-top:7px;border-top:1px solid color-mix(in srgb, var(--sg-fg, #101828) 8%, transparent);padding-top:7px;display:flex;flex-direction:column;gap:5px;}.sv-board-drawer-comments.svelte-15b6cgu {margin-top:16px;padding-top:12px;border-top:1px solid var(--sg-border, #e4e7ec);display:flex;flex-direction:column;gap:6px;}.sv-board-drawer-h.svelte-15b6cgu {font-weight:600;font-size:0.82rem;margin-bottom:2px;}.sv-board-comment.svelte-15b6cgu {display:flex;align-items:flex-start;gap:6px;font-size:0.74rem;}.sv-board-comment-body.svelte-15b6cgu {flex:1 1 auto;min-width:0;}.sv-board-comment-author.svelte-15b6cgu {font-weight:600;margin-right:5px;}.sv-board-comment-at.svelte-15b6cgu {margin-left:6px;font-size:0.66rem;color:color-mix(in srgb, var(--sg-fg, #101828) 45%, transparent);}.sv-board-comment-del.svelte-15b6cgu {all:unset;cursor:pointer;font-size:0.9rem;line-height:1;color:color-mix(in srgb, var(--sg-fg, #101828) 40%, transparent);padding:0 2px;}.sv-board-comment-del.svelte-15b6cgu:hover {color:var(--sg-danger, #ef4444);}.sv-board-comment-empty.svelte-15b6cgu {font-size:0.72rem;color:color-mix(in srgb, var(--sg-fg, #101828) 42%, transparent);}.sv-board-comment-add.svelte-15b6cgu {width:100%;box-sizing:border-box;font:inherit;font-size:0.74rem;padding:4px 7px;border:1px solid var(--sg-border, #e4e7ec);border-radius:5px;background:var(--sg-bg, #fff);color:var(--sg-fg, #101828);}.sv-board-card-cover.svelte-15b6cgu {height:6px;border-radius:4px;margin:-2px 0 7px;}.sv-board-avatars.svelte-15b6cgu {display:inline-flex;margin-left:auto;}.sv-board-avatar.svelte-15b6cgu {width:20px;height:20px;border-radius:50%;display:grid;place-items:center;font-size:0.6rem;font-weight:700;color:#fff;background:var(--sv-board-accent);border:1.5px solid var(--sg-bg, #fff);margin-left:-6px;}.sv-board-avatar.svelte-15b6cgu:first-child {margin-left:0;}\r\n /* Sub-tasks */.sv-board-subs.svelte-15b6cgu {margin-top:7px;border-top:1px solid color-mix(in srgb, var(--sg-fg, #101828) 8%, transparent);padding-top:6px;}.sv-board-subs-head.svelte-15b6cgu {all:unset;cursor:pointer;display:flex;align-items:center;gap:6px;width:100%;font-size:0.7rem;color:color-mix(in srgb, var(--sg-fg, #101828) 60%, transparent);}.sv-board-subs-chev.svelte-15b6cgu {font-size:0.6rem;}.sv-board-subs-count.svelte-15b6cgu {font-variant-numeric:tabular-nums;font-weight:600;}.sv-board-subs-bar.svelte-15b6cgu {flex:1 1 auto;height:4px;border-radius:2px;background:color-mix(in srgb, var(--sg-fg, #101828) 10%, transparent);overflow:hidden;}.sv-board-subs-bar.svelte-15b6cgu span:where(.svelte-15b6cgu) {display:block;height:100%;background:var(--sv-board-accent);transition:width 0.15s ease;}.sv-board-subs-list.svelte-15b6cgu {list-style:none;margin:6px 0 0;padding:0;display:flex;flex-direction:column;gap:3px;}.sv-board-subs-list.svelte-15b6cgu label:where(.svelte-15b6cgu) {display:flex;align-items:center;gap:6px;font-size:0.74rem;cursor:pointer;}.sv-board-subs-list.svelte-15b6cgu label.is-done:where(.svelte-15b6cgu) span:where(.svelte-15b6cgu) {text-decoration:line-through;color:color-mix(in srgb, var(--sg-fg, #101828) 45%, transparent);}.sv-board-subs-list.svelte-15b6cgu input:where(.svelte-15b6cgu) {accent-color:var(--sv-board-accent);}.sv-board-subs-add.svelte-15b6cgu {margin-top:5px;width:100%;box-sizing:border-box;font:inherit;font-size:0.74rem;padding:3px 6px;border:1px solid var(--sg-border, #e4e7ec);border-radius:5px;background:var(--sg-bg, #fff);color:var(--sg-fg, #101828);}\r\n /* Quick-add composer */.sv-board-composer-btn.svelte-15b6cgu {all:unset;cursor:pointer;display:block;margin:6px 8px 8px;padding:5px 8px;border-radius:var(--sg-radius, 6px);font-size:0.76rem;color:color-mix(in srgb, var(--sg-fg, #101828) 55%, transparent);}.sv-board-composer-btn.svelte-15b6cgu:hover {background:color-mix(in srgb, var(--sg-fg, #101828) 6%, transparent);color:var(--sg-fg, #101828);}.sv-board-composer-input.svelte-15b6cgu {margin:6px 8px 8px;width:calc(100% - 16px);box-sizing:border-box;font:inherit;font-size:0.8rem;padding:6px 8px;border:1px solid var(--sv-board-accent);border-radius:var(--sg-radius, 6px);background:var(--sg-bg, #fff);color:var(--sg-fg, #101828);}\r\n /* Facet filter bar */.sv-board-facets.svelte-15b6cgu {display:flex;flex-wrap:wrap;gap:6px;padding:4px 4px 8px;align-items:center;}.sv-board-facet.svelte-15b6cgu {all:unset;cursor:pointer;display:inline-flex;align-items:center;gap:5px;font-size:0.73rem;padding:2px 9px;border-radius:999px;border:1px solid var(--sg-border, #e4e7ec);color:color-mix(in srgb, var(--sg-fg, #101828) 70%, transparent);}.sv-board-facet.svelte-15b6cgu:hover {border-color:var(--sg-accent, #3b82f6);}.sv-board-facet.is-active.svelte-15b6cgu {background:var(--sg-accent, #3b82f6);border-color:var(--sg-accent, #3b82f6);color:#fff;}.sv-board-facet-count.svelte-15b6cgu {font-size:0.66rem;opacity:0.7;font-variant-numeric:tabular-nums;}.sv-board-facet-clear.svelte-15b6cgu {all:unset;cursor:pointer;font-size:0.72rem;color:var(--sg-accent, #3b82f6);padding:2px 6px;}\r\n /* Blocked flag + selection */.sv-board-card.svelte-15b6cgu {position:relative;}.sv-board-card-flag.svelte-15b6cgu {position:absolute;top:0;right:0;width:0;height:0;border-top:14px solid var(--sg-danger, #ef4444);border-left:14px solid transparent;border-top-right-radius:var(--sg-radius, 8px);}.sv-board-card.is-selected.svelte-15b6cgu {border-color:var(--sv-board-accent);box-shadow:0 0 0 2px color-mix(in srgb, var(--sv-board-accent) 55%, transparent);}.sv-board-card.is-locked.svelte-15b6cgu {cursor:default;}\r\n /* Child cards (epic -> stories) */.sv-board-kids.svelte-15b6cgu {margin-top:7px;border-top:1px solid color-mix(in srgb, var(--sg-fg, #101828) 8%, transparent);padding-top:6px;}.sv-board-kids-head.svelte-15b6cgu {all:unset;cursor:pointer;display:flex;align-items:center;gap:5px;font-size:0.7rem;color:color-mix(in srgb, var(--sg-fg, #101828) 60%, transparent);}.sv-board-kids-list.svelte-15b6cgu {list-style:none;margin:6px 0 0;padding:0;display:flex;flex-direction:column;gap:4px;}.sv-board-kid.svelte-15b6cgu {display:flex;align-items:center;gap:6px;font-size:0.74rem;padding:4px 7px;border:1px solid var(--sg-border, #e4e7ec);border-radius:6px;background:var(--sg-bg, #fff);}.sv-board-kid-title.svelte-15b6cgu {flex:1 1 auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}.sv-board-kid-lane.svelte-15b6cgu {font-size:0.64rem;font-weight:600;padding:0 6px;border-radius:999px;background:color-mix(in srgb, var(--sv-board-accent) 15%, transparent);color:color-mix(in srgb, var(--sv-board-accent) 85%, var(--sg-fg, #101828));text-transform:capitalize;}\r\n @media (prefers-reduced-motion: reduce) {.sv-board-card.svelte-15b6cgu,\r\n .sv-board-lane-body.svelte-15b6cgu,\r\n .sv-board-subs-bar.svelte-15b6cgu span:where(.svelte-15b6cgu) {transition:none;}\r\n }"
|
|
10891
|
+
code: ".sv-board.svelte-15b6cgu {height:100%;box-sizing:border-box;display:flex;flex-direction:column;background:var(--sg-bg, #fff);color:var(--sg-fg, #101828);font-family:var(--sg-font, inherit);}.sv-board.is-swim.svelte-15b6cgu {overflow-y:auto;gap:14px;}.sv-board-lanes.svelte-15b6cgu {display:flex;gap:12px;align-items:flex-start;overflow-x:auto;padding:4px;flex:1 1 auto;min-height:0;scrollbar-color:var(--sg-scrollbar-thumb, color-mix(in srgb, var(--sg-fg, #101828) 28%, transparent))\n transparent;}.sv-board.is-swim.svelte-15b6cgu .sv-board-lanes:where(.svelte-15b6cgu) {flex:none;}.sv-board.is-swim.svelte-15b6cgu .sv-board-lane:where(.svelte-15b6cgu) {max-height:340px;}.sv-board-swim.svelte-15b6cgu {display:flex;flex-direction:column;gap:4px;flex:none;}.sv-board-swim-head.svelte-15b6cgu {display:flex;align-items:center;gap:8px;padding:4px 8px;font-weight:700;font-size:0.78rem;color:color-mix(in srgb, var(--sg-fg, #101828) 78%, transparent);position:sticky;left:0;}.sv-board-swim-count.svelte-15b6cgu {font-size:0.7rem;font-weight:600;padding:0 7px;border-radius:999px;background:color-mix(in srgb, var(--sg-fg, #101828) 8%, transparent);color:color-mix(in srgb, var(--sg-fg, #101828) 60%, transparent);}.sv-board-swim-summary.svelte-15b6cgu {font-size:0.7rem;font-weight:600;color:color-mix(in srgb, var(--sg-accent, #3b82f6) 85%, var(--sg-fg, #101828));}.sv-board-swim-toggle.svelte-15b6cgu {all:unset;cursor:pointer;font-size:0.7rem;padding:2px;color:color-mix(in srgb, var(--sg-fg, #101828) 60%, transparent);}.sv-board-lane-title.is-renamable.svelte-15b6cgu {cursor:text;}.sv-board-lane-rename.svelte-15b6cgu {flex:1 1 auto;min-width:0;font:inherit;font-weight:600;font-size:0.82rem;padding:1px 4px;border:1px solid var(--sv-board-accent);border-radius:5px;background:var(--sg-bg, #fff);color:var(--sg-fg, #101828);}.sv-board-swim-toggle.svelte-15b6cgu:hover {color:var(--sg-fg, #101828);}.sv-board-lane.svelte-15b6cgu {flex:0 0 var(--sg-board-lane-w, 272px);max-width:var(--sg-board-lane-w, 272px);display:flex;flex-direction:column;max-height:100%;border:1px solid var(--sg-border, #e4e7ec);border-radius:var(--sg-radius, 8px);background:var(--sg-header-bg, color-mix(in srgb, var(--sg-fg, #101828) 3%, var(--sg-bg, #fff)));--sv-board-accent: var(--sg-accent, #3b82f6);}.sv-board-lane-head.svelte-15b6cgu {display:flex;align-items:center;gap:8px;padding:8px 10px;border-bottom:1px solid var(--sg-border, #e4e7ec);border-top:3px solid var(--sv-board-accent);border-radius:var(--sg-radius, 8px) var(--sg-radius, 8px) 0 0;}.sv-board-lane-head.is-reorderable.svelte-15b6cgu {cursor:grab;}.sv-board-lane-head.is-lane-dropover.svelte-15b6cgu {box-shadow:inset 3px 0 0 var(--sv-board-accent);}.sv-board-lane-title.svelte-15b6cgu {font-weight:600;font-size:0.82rem;flex:1 1 auto;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}.sv-board-lane-toggle.svelte-15b6cgu {all:unset;cursor:pointer;font-size:0.7rem;line-height:1;color:color-mix(in srgb, var(--sg-fg, #101828) 55%, transparent);padding:2px;}.sv-board-lane-toggle.svelte-15b6cgu:hover {color:var(--sg-fg, #101828);}.sv-board-lane.is-collapsed.svelte-15b6cgu {flex:0 0 auto;max-width:none;}.sv-board-lane.is-collapsed.svelte-15b6cgu .sv-board-lane-head:where(.svelte-15b6cgu) {writing-mode:vertical-rl;height:180px;border-top:none;border-left:3px solid var(--sv-board-accent);border-radius:0 var(--sg-radius, 8px) var(--sg-radius, 8px) 0;gap:6px;}.sv-board-lane-count.svelte-15b6cgu {font-size:0.72rem;font-variant-numeric:tabular-nums;padding:1px 7px;border-radius:999px;background:color-mix(in srgb, var(--sg-fg, #101828) 8%, transparent);color:color-mix(in srgb, var(--sg-fg, #101828) 70%, transparent);}.sv-board-lane-count.is-over.svelte-15b6cgu {background:color-mix(in srgb, var(--sg-danger, #ef4444) 16%, transparent);color:var(--sg-danger, #ef4444);font-weight:700;}.sv-board-lane-summary.svelte-15b6cgu {font-size:0.72rem;font-weight:600;font-variant-numeric:tabular-nums;color:color-mix(in srgb, var(--sv-board-accent) 85%, var(--sg-fg, #101828));}.sv-board-lane-add.svelte-15b6cgu {all:unset;cursor:pointer;width:20px;height:20px;display:grid;place-items:center;border-radius:5px;font-size:1rem;line-height:1;color:color-mix(in srgb, var(--sg-fg, #101828) 60%, transparent);}.sv-board-lane-add.svelte-15b6cgu:hover {background:color-mix(in srgb, var(--sg-fg, #101828) 8%, transparent);color:var(--sg-fg, #101828);}.sv-board-lane-body.svelte-15b6cgu {display:flex;flex-direction:column;gap:8px;padding:8px;overflow-y:auto;flex:1 1 auto;min-height:48px;transition:background 0.12s ease;}.sv-board-lane-body.is-dropover.svelte-15b6cgu {background:color-mix(in srgb, var(--sv-board-accent) 8%, transparent);}\n /* Virtualized lanes use block flow + per-card margin (not flex gap) so the\n spacer heights match the windowing math exactly. */.sv-board-lane-body.is-virtual.svelte-15b6cgu {display:block;gap:0;}.sv-board-lane-body.is-virtual.svelte-15b6cgu .sv-board-card:where(.svelte-15b6cgu) {margin-bottom:8px;}.sv-board-card.svelte-15b6cgu {background:var(--sg-bg, #fff);border:1px solid var(--sg-border, #e4e7ec);border-radius:var(--sg-radius, 8px);padding:9px 11px;cursor:grab;box-shadow:0 1px 2px rgba(16, 24, 40, 0.05);transition:box-shadow 0.12s ease,\n opacity 0.12s ease,\n transform 0.12s ease;}.sv-board-card.svelte-15b6cgu:hover {box-shadow:0 2px 8px rgba(16, 24, 40, 0.12);border-color:color-mix(in srgb, var(--sv-board-accent) 45%, var(--sg-border, #e4e7ec));}.sv-board-card.svelte-15b6cgu:focus-visible {outline:none;border-color:var(--sv-board-accent);box-shadow:var(--sg-focus-ring, 0 0 0 2px color-mix(in srgb, var(--sv-board-accent) 45%, transparent));}.sv-board-card.is-dragging.svelte-15b6cgu {opacity:0.45;}.sv-board-card.is-grabbed.svelte-15b6cgu {border-color:var(--sv-board-accent);box-shadow:0 0 0 2px color-mix(in srgb, var(--sv-board-accent) 55%, transparent);cursor:grabbing;}.sv-board-card.is-editing.svelte-15b6cgu {cursor:default;border-color:var(--sv-board-accent);}.sv-board-card-edit.svelte-15b6cgu {display:flex;flex-direction:column;gap:7px;}.sv-board-field.svelte-15b6cgu {display:flex;flex-direction:column;gap:2px;font-size:0.72rem;color:color-mix(in srgb, var(--sg-fg, #101828) 60%, transparent);}.sv-board-field.svelte-15b6cgu input[type=\"text\"]:where(.svelte-15b6cgu),\n .sv-board-field.svelte-15b6cgu input[type=\"number\"]:where(.svelte-15b6cgu),\n .sv-board-field.svelte-15b6cgu input[type=\"date\"]:where(.svelte-15b6cgu) {font:inherit;font-size:0.8rem;padding:4px 7px;border:1px solid var(--sg-border, #e4e7ec);border-radius:var(--sg-radius, 6px);background:var(--sg-bg, #fff);color:var(--sg-fg, #101828);}.sv-board-field.svelte-15b6cgu input:where(.svelte-15b6cgu):focus-visible {outline:none;border-color:var(--sv-board-accent);box-shadow:0 0 0 2px color-mix(in srgb, var(--sv-board-accent) 35%, transparent);}.sv-board-field.svelte-15b6cgu input[type=\"checkbox\"]:where(.svelte-15b6cgu) {align-self:flex-start;width:15px;height:15px;accent-color:var(--sv-board-accent);}.sv-board-card-edit-actions.svelte-15b6cgu {display:flex;justify-content:flex-end;gap:6px;margin-top:2px;}.sv-board-btn.svelte-15b6cgu {font:inherit;font-size:0.74rem;padding:3px 10px;border-radius:var(--sg-radius, 6px);border:1px solid var(--sg-border, #e4e7ec);background:var(--sg-bg, #fff);color:var(--sg-fg, #101828);cursor:pointer;}.sv-board-btn.svelte-15b6cgu:hover {background:color-mix(in srgb, var(--sg-fg, #101828) 6%, transparent);}.sv-board-btn.is-primary.svelte-15b6cgu {background:var(--sv-board-accent);border-color:var(--sv-board-accent);color:#fff;}.sv-board-btn.is-primary.svelte-15b6cgu:hover {filter:brightness(0.95);}.sv-board-card-title.svelte-15b6cgu {font-weight:600;font-size:0.84rem;line-height:1.3;}.sv-board-card-meta.svelte-15b6cgu {margin:6px 0 0;display:flex;flex-direction:column;gap:2px;}.sv-board-card-metarow.svelte-15b6cgu {display:flex;gap:6px;font-size:0.74rem;}.sv-board-card-metarow.svelte-15b6cgu dt:where(.svelte-15b6cgu) {color:color-mix(in srgb, var(--sg-fg, #101828) 55%, transparent);margin:0;}.sv-board-card-metarow.svelte-15b6cgu dd:where(.svelte-15b6cgu) {margin:0;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}.sv-board-lane-empty.svelte-15b6cgu {text-align:center;font-size:0.76rem;color:color-mix(in srgb, var(--sg-fg, #101828) 42%, transparent);padding:14px 0;border:1px dashed var(--sg-border, #e4e7ec);border-radius:var(--sg-radius, 8px);}.sv-board-drop-marker.svelte-15b6cgu {height:2px;border-radius:2px;background:var(--sv-board-accent);margin:-3px 0;}.sv-board-ctx {z-index:2147483646;min-width:200px;background:var(--sg-bg, #fff);color:var(--sg-fg, #0f172a);border:1px solid var(--sg-border, #e2e8f0);border-radius:10px;box-shadow:0 16px 48px -12px rgba(15, 23, 42, 0.35);font-size:13px;}.sv-board-sr.svelte-15b6cgu {position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0;}\n /* Card badges */.sv-board-badges.svelte-15b6cgu {display:flex;align-items:center;flex-wrap:wrap;gap:4px;margin-top:6px;}.sv-board-badge.svelte-15b6cgu {font-size:0.66rem;font-weight:600;padding:1px 6px;border-radius:4px;line-height:1.5;white-space:nowrap;}.sv-board-badge.is-label.svelte-15b6cgu {--b: var(--sv-board-accent);background:color-mix(in srgb, var(--b) 16%, transparent);color:color-mix(in srgb, var(--b) 80%, var(--sg-fg, #101828));}.sv-board-badge.is-due.svelte-15b6cgu {background:color-mix(in srgb, var(--sg-fg, #101828) 8%, transparent);color:color-mix(in srgb, var(--sg-fg, #101828) 65%, transparent);}.sv-board-badge.is-due.is-overdue.svelte-15b6cgu {background:color-mix(in srgb, var(--sg-danger, #ef4444) 15%, transparent);color:var(--sg-danger, #ef4444);}.sv-board-badge.is-meta.svelte-15b6cgu {display:inline-flex;align-items:center;gap:3px;background:transparent;padding:1px 3px;color:color-mix(in srgb, var(--sg-fg, #101828) 55%, transparent);}.sv-board-badge.is-btn.svelte-15b6cgu {border:0;cursor:pointer;font:inherit;font-size:0.66rem;font-weight:600;border-radius:5px;}.sv-board-badge.is-btn.svelte-15b6cgu:hover {background:color-mix(in srgb, var(--sg-fg, #101828) 8%, transparent);color:var(--sg-fg, #101828);}.sv-board-badge.is-blocked.svelte-15b6cgu {background:var(--sg-danger, #ef4444);color:#fff;text-transform:uppercase;letter-spacing:0.03em;font-size:0.6rem;}\n /* Comments thread */.sv-board-comments.svelte-15b6cgu {margin-top:7px;border-top:1px solid color-mix(in srgb, var(--sg-fg, #101828) 8%, transparent);padding-top:7px;display:flex;flex-direction:column;gap:5px;}.sv-board-drawer-comments.svelte-15b6cgu {margin-top:16px;padding-top:12px;border-top:1px solid var(--sg-border, #e4e7ec);display:flex;flex-direction:column;gap:6px;}.sv-board-drawer-h.svelte-15b6cgu {font-weight:600;font-size:0.82rem;margin-bottom:2px;}.sv-board-comment.svelte-15b6cgu {display:flex;align-items:flex-start;gap:6px;font-size:0.74rem;}.sv-board-comment-body.svelte-15b6cgu {flex:1 1 auto;min-width:0;}.sv-board-comment-author.svelte-15b6cgu {font-weight:600;margin-right:5px;}.sv-board-comment-at.svelte-15b6cgu {margin-left:6px;font-size:0.66rem;color:color-mix(in srgb, var(--sg-fg, #101828) 45%, transparent);}.sv-board-comment-del.svelte-15b6cgu {all:unset;cursor:pointer;font-size:0.9rem;line-height:1;color:color-mix(in srgb, var(--sg-fg, #101828) 40%, transparent);padding:0 2px;}.sv-board-comment-del.svelte-15b6cgu:hover {color:var(--sg-danger, #ef4444);}.sv-board-comment-empty.svelte-15b6cgu {font-size:0.72rem;color:color-mix(in srgb, var(--sg-fg, #101828) 42%, transparent);}.sv-board-comment-add.svelte-15b6cgu {width:100%;box-sizing:border-box;font:inherit;font-size:0.74rem;padding:4px 7px;border:1px solid var(--sg-border, #e4e7ec);border-radius:5px;background:var(--sg-bg, #fff);color:var(--sg-fg, #101828);}.sv-board-card-cover.svelte-15b6cgu {height:6px;border-radius:4px;margin:-2px 0 7px;}.sv-board-avatars.svelte-15b6cgu {display:inline-flex;margin-left:auto;}.sv-board-avatar.svelte-15b6cgu {width:20px;height:20px;border-radius:50%;display:grid;place-items:center;font-size:0.6rem;font-weight:700;color:#fff;background:var(--sv-board-accent);border:1.5px solid var(--sg-bg, #fff);margin-left:-6px;}.sv-board-avatar.svelte-15b6cgu:first-child {margin-left:0;}\n /* Sub-tasks */.sv-board-subs.svelte-15b6cgu {margin-top:7px;border-top:1px solid color-mix(in srgb, var(--sg-fg, #101828) 8%, transparent);padding-top:6px;}.sv-board-subs-head.svelte-15b6cgu {all:unset;cursor:pointer;display:flex;align-items:center;gap:6px;width:100%;font-size:0.7rem;color:color-mix(in srgb, var(--sg-fg, #101828) 60%, transparent);}.sv-board-subs-chev.svelte-15b6cgu {font-size:0.6rem;}.sv-board-subs-count.svelte-15b6cgu {font-variant-numeric:tabular-nums;font-weight:600;}.sv-board-subs-bar.svelte-15b6cgu {flex:1 1 auto;height:4px;border-radius:2px;background:color-mix(in srgb, var(--sg-fg, #101828) 10%, transparent);overflow:hidden;}.sv-board-subs-bar.svelte-15b6cgu span:where(.svelte-15b6cgu) {display:block;height:100%;background:var(--sv-board-accent);transition:width 0.15s ease;}.sv-board-subs-list.svelte-15b6cgu {list-style:none;margin:6px 0 0;padding:0;display:flex;flex-direction:column;gap:3px;}.sv-board-subs-list.svelte-15b6cgu label:where(.svelte-15b6cgu) {display:flex;align-items:center;gap:6px;font-size:0.74rem;cursor:pointer;}.sv-board-subs-list.svelte-15b6cgu label.is-done:where(.svelte-15b6cgu) span:where(.svelte-15b6cgu) {text-decoration:line-through;color:color-mix(in srgb, var(--sg-fg, #101828) 45%, transparent);}.sv-board-subs-list.svelte-15b6cgu input:where(.svelte-15b6cgu) {accent-color:var(--sv-board-accent);}.sv-board-subs-add.svelte-15b6cgu {margin-top:5px;width:100%;box-sizing:border-box;font:inherit;font-size:0.74rem;padding:3px 6px;border:1px solid var(--sg-border, #e4e7ec);border-radius:5px;background:var(--sg-bg, #fff);color:var(--sg-fg, #101828);}\n /* Quick-add composer */.sv-board-composer-btn.svelte-15b6cgu {all:unset;cursor:pointer;display:block;margin:6px 8px 8px;padding:5px 8px;border-radius:var(--sg-radius, 6px);font-size:0.76rem;color:color-mix(in srgb, var(--sg-fg, #101828) 55%, transparent);}.sv-board-composer-btn.svelte-15b6cgu:hover {background:color-mix(in srgb, var(--sg-fg, #101828) 6%, transparent);color:var(--sg-fg, #101828);}.sv-board-composer-input.svelte-15b6cgu {margin:6px 8px 8px;width:calc(100% - 16px);box-sizing:border-box;font:inherit;font-size:0.8rem;padding:6px 8px;border:1px solid var(--sv-board-accent);border-radius:var(--sg-radius, 6px);background:var(--sg-bg, #fff);color:var(--sg-fg, #101828);}\n /* Facet filter bar */.sv-board-facets.svelte-15b6cgu {display:flex;flex-wrap:wrap;gap:6px;padding:4px 4px 8px;align-items:center;}.sv-board-facet.svelte-15b6cgu {all:unset;cursor:pointer;display:inline-flex;align-items:center;gap:5px;font-size:0.73rem;padding:2px 9px;border-radius:999px;border:1px solid var(--sg-border, #e4e7ec);color:color-mix(in srgb, var(--sg-fg, #101828) 70%, transparent);}.sv-board-facet.svelte-15b6cgu:hover {border-color:var(--sg-accent, #3b82f6);}.sv-board-facet.is-active.svelte-15b6cgu {background:var(--sg-accent, #3b82f6);border-color:var(--sg-accent, #3b82f6);color:#fff;}.sv-board-facet-count.svelte-15b6cgu {font-size:0.66rem;opacity:0.7;font-variant-numeric:tabular-nums;}.sv-board-facet-clear.svelte-15b6cgu {all:unset;cursor:pointer;font-size:0.72rem;color:var(--sg-accent, #3b82f6);padding:2px 6px;}\n /* Blocked flag + selection */.sv-board-card.svelte-15b6cgu {position:relative;}.sv-board-card-flag.svelte-15b6cgu {position:absolute;top:0;right:0;width:0;height:0;border-top:14px solid var(--sg-danger, #ef4444);border-left:14px solid transparent;border-top-right-radius:var(--sg-radius, 8px);}.sv-board-card.is-selected.svelte-15b6cgu {border-color:var(--sv-board-accent);box-shadow:0 0 0 2px color-mix(in srgb, var(--sv-board-accent) 55%, transparent);}.sv-board-card.is-locked.svelte-15b6cgu {cursor:default;}\n /* Child cards (epic -> stories) */.sv-board-kids.svelte-15b6cgu {margin-top:7px;border-top:1px solid color-mix(in srgb, var(--sg-fg, #101828) 8%, transparent);padding-top:6px;}.sv-board-kids-head.svelte-15b6cgu {all:unset;cursor:pointer;display:flex;align-items:center;gap:5px;font-size:0.7rem;color:color-mix(in srgb, var(--sg-fg, #101828) 60%, transparent);}.sv-board-kids-list.svelte-15b6cgu {list-style:none;margin:6px 0 0;padding:0;display:flex;flex-direction:column;gap:4px;}.sv-board-kid.svelte-15b6cgu {display:flex;align-items:center;gap:6px;font-size:0.74rem;padding:4px 7px;border:1px solid var(--sg-border, #e4e7ec);border-radius:6px;background:var(--sg-bg, #fff);}.sv-board-kid-title.svelte-15b6cgu {flex:1 1 auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}.sv-board-kid-lane.svelte-15b6cgu {font-size:0.64rem;font-weight:600;padding:0 6px;border-radius:999px;background:color-mix(in srgb, var(--sv-board-accent) 15%, transparent);color:color-mix(in srgb, var(--sv-board-accent) 85%, var(--sg-fg, #101828));text-transform:capitalize;}\n @media (prefers-reduced-motion: reduce) {.sv-board-card.svelte-15b6cgu,\n .sv-board-lane-body.svelte-15b6cgu,\n .sv-board-subs-bar.svelte-15b6cgu span:where(.svelte-15b6cgu) {transition:none;}\n }"
|
|
10892
10892
|
};
|
|
10893
10893
|
function _l(t, r) {
|
|
10894
10894
|
e.push(r, !0), e.append_styles(t, gl);
|
package/package.json
CHANGED
|
@@ -1,92 +1,92 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "@svgrid/grid",
|
|
3
|
-
"version": "2.1.
|
|
4
|
-
"description": "SvGrid - a headless-first, Svelte 5-native data grid engine and render component.",
|
|
5
|
-
"author": "jQWidgets <boikom@jqwidgets.com>",
|
|
6
|
-
"license": "MIT",
|
|
7
|
-
"repository": {
|
|
8
|
-
"type": "git",
|
|
9
|
-
"url": "https://github.com/sv-grid/sv-grid.git",
|
|
10
|
-
"directory": "packages/grid"
|
|
11
|
-
},
|
|
12
|
-
"homepage": "https://svgrid.com",
|
|
13
|
-
"keywords": [
|
|
14
|
-
"svelte",
|
|
15
|
-
"grid",
|
|
16
|
-
"table",
|
|
17
|
-
"headless",
|
|
18
|
-
"datagrid"
|
|
19
|
-
],
|
|
20
|
-
"type": "module",
|
|
21
|
-
"types": "dist/index.d.ts",
|
|
22
|
-
"module": "dist/index.js",
|
|
23
|
-
"svelte": "./dist/index.js",
|
|
24
|
-
"unpkg": "./dist/cdn/svgrid.js",
|
|
25
|
-
"jsdelivr": "./dist/cdn/svgrid.js",
|
|
26
|
-
"exports": {
|
|
27
|
-
".": {
|
|
28
|
-
"types": "./dist/index.d.ts",
|
|
29
|
-
"svelte": "./dist/index.js",
|
|
30
|
-
"import": "./dist/index.js"
|
|
31
|
-
},
|
|
32
|
-
"./cdn": {
|
|
33
|
-
"import": "./dist/cdn/svgrid.js",
|
|
34
|
-
"default": "./dist/cdn/svgrid.js"
|
|
35
|
-
},
|
|
36
|
-
"./cdn/svelte-external": {
|
|
37
|
-
"import": "./dist/cdn/svgrid.svelte-external.js",
|
|
38
|
-
"default": "./dist/cdn/svgrid.svelte-external.js"
|
|
39
|
-
},
|
|
40
|
-
"./static-functions": {
|
|
41
|
-
"types": "./dist/static-functions.d.ts",
|
|
42
|
-
"svelte": "./dist/static-functions.js",
|
|
43
|
-
"import": "./dist/static-functions.js"
|
|
44
|
-
},
|
|
45
|
-
"./format": {
|
|
46
|
-
"types": "./dist/export-format.d.ts",
|
|
47
|
-
"svelte": "./dist/export-format.js",
|
|
48
|
-
"import": "./dist/export-format.js"
|
|
49
|
-
},
|
|
50
|
-
"./flex-render": {
|
|
51
|
-
"types": "./dist/flex-render.d.ts",
|
|
52
|
-
"svelte": "./dist/flex-render.js",
|
|
53
|
-
"import": "./dist/flex-render.js"
|
|
54
|
-
},
|
|
55
|
-
"./themes": {
|
|
56
|
-
"types": "./dist/themes/index.d.ts",
|
|
57
|
-
"svelte": "./dist/themes/index.js",
|
|
58
|
-
"import": "./dist/themes/index.js"
|
|
59
|
-
},
|
|
60
|
-
"./themes/*.css": "./themes/*.css",
|
|
61
|
-
"./package.json": "./package.json"
|
|
62
|
-
},
|
|
63
|
-
"engines": {
|
|
64
|
-
"node": ">=16"
|
|
65
|
-
},
|
|
66
|
-
"files": [
|
|
67
|
-
"dist",
|
|
68
|
-
"src",
|
|
69
|
-
"themes"
|
|
70
|
-
],
|
|
71
|
-
"scripts": {
|
|
72
|
-
"clean": "rimraf ./build && rimraf ./dist",
|
|
73
|
-
"test:eslint": "eslint ./src",
|
|
74
|
-
"test:types": "svelte-check --tsconfig ./tsconfig.json",
|
|
75
|
-
"test:lib": "vitest run --coverage",
|
|
76
|
-
"test:build": "publint --strict",
|
|
77
|
-
"build": "svelte-package --input ./src --output ./dist && node ../../tools/strip-dist-tests.mjs ./dist && node ./scripts/build-cdn.mjs && node ./scripts/build-themes.mjs"
|
|
78
|
-
},
|
|
79
|
-
"devDependencies": {
|
|
80
|
-
"@sveltejs/package": "^2.5.7",
|
|
81
|
-
"@sveltejs/vite-plugin-svelte": "^7.0.0",
|
|
82
|
-
"@vitest/coverage-v8": "^4.1.5",
|
|
83
|
-
"eslint-plugin-svelte": "^3.17.1",
|
|
84
|
-
"jsdom": "^29.1.1",
|
|
85
|
-
"publint": "^0.3.21",
|
|
86
|
-
"svelte": "^5.55.5",
|
|
87
|
-
"svelte-check": "^4.4.6"
|
|
88
|
-
},
|
|
89
|
-
"peerDependencies": {
|
|
90
|
-
"svelte": "^5.0.0"
|
|
91
|
-
}
|
|
92
|
-
}
|
|
1
|
+
{
|
|
2
|
+
"name": "@svgrid/grid",
|
|
3
|
+
"version": "2.1.2",
|
|
4
|
+
"description": "SvGrid - a headless-first, Svelte 5-native data grid engine and render component.",
|
|
5
|
+
"author": "jQWidgets <boikom@jqwidgets.com>",
|
|
6
|
+
"license": "MIT",
|
|
7
|
+
"repository": {
|
|
8
|
+
"type": "git",
|
|
9
|
+
"url": "https://github.com/sv-grid/sv-grid.git",
|
|
10
|
+
"directory": "packages/grid"
|
|
11
|
+
},
|
|
12
|
+
"homepage": "https://svgrid.com",
|
|
13
|
+
"keywords": [
|
|
14
|
+
"svelte",
|
|
15
|
+
"grid",
|
|
16
|
+
"table",
|
|
17
|
+
"headless",
|
|
18
|
+
"datagrid"
|
|
19
|
+
],
|
|
20
|
+
"type": "module",
|
|
21
|
+
"types": "dist/index.d.ts",
|
|
22
|
+
"module": "dist/index.js",
|
|
23
|
+
"svelte": "./dist/index.js",
|
|
24
|
+
"unpkg": "./dist/cdn/svgrid.js",
|
|
25
|
+
"jsdelivr": "./dist/cdn/svgrid.js",
|
|
26
|
+
"exports": {
|
|
27
|
+
".": {
|
|
28
|
+
"types": "./dist/index.d.ts",
|
|
29
|
+
"svelte": "./dist/index.js",
|
|
30
|
+
"import": "./dist/index.js"
|
|
31
|
+
},
|
|
32
|
+
"./cdn": {
|
|
33
|
+
"import": "./dist/cdn/svgrid.js",
|
|
34
|
+
"default": "./dist/cdn/svgrid.js"
|
|
35
|
+
},
|
|
36
|
+
"./cdn/svelte-external": {
|
|
37
|
+
"import": "./dist/cdn/svgrid.svelte-external.js",
|
|
38
|
+
"default": "./dist/cdn/svgrid.svelte-external.js"
|
|
39
|
+
},
|
|
40
|
+
"./static-functions": {
|
|
41
|
+
"types": "./dist/static-functions.d.ts",
|
|
42
|
+
"svelte": "./dist/static-functions.js",
|
|
43
|
+
"import": "./dist/static-functions.js"
|
|
44
|
+
},
|
|
45
|
+
"./format": {
|
|
46
|
+
"types": "./dist/export-format.d.ts",
|
|
47
|
+
"svelte": "./dist/export-format.js",
|
|
48
|
+
"import": "./dist/export-format.js"
|
|
49
|
+
},
|
|
50
|
+
"./flex-render": {
|
|
51
|
+
"types": "./dist/flex-render.d.ts",
|
|
52
|
+
"svelte": "./dist/flex-render.js",
|
|
53
|
+
"import": "./dist/flex-render.js"
|
|
54
|
+
},
|
|
55
|
+
"./themes": {
|
|
56
|
+
"types": "./dist/themes/index.d.ts",
|
|
57
|
+
"svelte": "./dist/themes/index.js",
|
|
58
|
+
"import": "./dist/themes/index.js"
|
|
59
|
+
},
|
|
60
|
+
"./themes/*.css": "./themes/*.css",
|
|
61
|
+
"./package.json": "./package.json"
|
|
62
|
+
},
|
|
63
|
+
"engines": {
|
|
64
|
+
"node": ">=16"
|
|
65
|
+
},
|
|
66
|
+
"files": [
|
|
67
|
+
"dist",
|
|
68
|
+
"src",
|
|
69
|
+
"themes"
|
|
70
|
+
],
|
|
71
|
+
"scripts": {
|
|
72
|
+
"clean": "rimraf ./build && rimraf ./dist",
|
|
73
|
+
"test:eslint": "eslint ./src",
|
|
74
|
+
"test:types": "svelte-check --tsconfig ./tsconfig.json",
|
|
75
|
+
"test:lib": "vitest run --coverage",
|
|
76
|
+
"test:build": "publint --strict",
|
|
77
|
+
"build": "svelte-package --input ./src --output ./dist && node ../../tools/strip-dist-tests.mjs ./dist && node ./scripts/build-cdn.mjs && node ./scripts/build-themes.mjs"
|
|
78
|
+
},
|
|
79
|
+
"devDependencies": {
|
|
80
|
+
"@sveltejs/package": "^2.5.7",
|
|
81
|
+
"@sveltejs/vite-plugin-svelte": "^7.0.0",
|
|
82
|
+
"@vitest/coverage-v8": "^4.1.5",
|
|
83
|
+
"eslint-plugin-svelte": "^3.17.1",
|
|
84
|
+
"jsdom": "^29.1.1",
|
|
85
|
+
"publint": "^0.3.21",
|
|
86
|
+
"svelte": "^5.55.5",
|
|
87
|
+
"svelte-check": "^4.4.6"
|
|
88
|
+
},
|
|
89
|
+
"peerDependencies": {
|
|
90
|
+
"svelte": "^5.0.0"
|
|
91
|
+
}
|
|
92
|
+
}
|