tosijs-ui 1.16.20 → 1.16.21

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/CHANGELOG.md CHANGED
@@ -1,5 +1,19 @@
1
1
  # Changelog
2
2
 
3
+ ## 1.16.21
4
+
5
+ - **Expanding or collapsing a table row's detail no longer corrects `scrollTop` itself.**
6
+ tosijs 1.10.9's variable-height list keeps the row in place across the height change, so
7
+ `<tosi-table>` stopped measuring the row and nudging the scroll position up to three
8
+ times. closes board #3326
9
+ - **tosijs peer floor raised to `^1.10.9`**, the release that anchors the list. On an older
10
+ tosijs the toggled row now jumps when its detail opens or closes; upgrade tosijs alongside
11
+ (`dist/iife.js` already bundles 1.10.9).
12
+ - **The icons page points to [lucide](https://lucide.dev)** in its introduction and under
13
+ Icon Sources: a fork and expansion of Feather, and the place to start for more icons in
14
+ the same style.
15
+
16
+
3
17
  ## 1.16.20
4
18
 
5
19
  - **A registered icon with style suffixes wins over a composition rule.** `checkCircle90r`
@@ -1770,24 +1770,11 @@ export class TosiTable extends withAttributes({
1770
1770
  this._detailEls.delete(key);
1771
1771
  }
1772
1772
  const rowEl = this.stampedRow(raw);
1773
- const top = rowEl?.getBoundingClientRect().top;
1774
1773
  if (rowEl)
1775
1774
  this.syncDetail(rowEl, raw);
1775
+ // The list anchors itself across a height change (tosijs 1.10.9), so the toggled row
1776
+ // keeps its place without a scrollTop correction here.
1776
1777
  this.remeasureRows();
1777
- /*
1778
- Keep the toggled row where it was. A variable-height list places its rows by
1779
- interpolation, so a row that changes height moves every row, itself included, by an
1780
- amount that depends on how far down the list is scrolled.
1781
- */
1782
- if (top !== undefined && this._scrollArea) {
1783
- for (let i = 0; i < 3; i += 1) {
1784
- const now = this.stampedRow(raw)?.getBoundingClientRect().top;
1785
- if (now === undefined || Math.abs(now - top) < 1)
1786
- break;
1787
- this._scrollArea.scrollTop += now - top;
1788
- this.remeasureRows();
1789
- }
1790
- }
1791
1778
  this.dispatchEvent(new CustomEvent(want ? 'rowexpand' : 'rowcollapse', {
1792
1779
  bubbles: true,
1793
1780
  detail: { row: raw, element: element?.firstElementChild ?? null },
package/dist/icons.js CHANGED
@@ -11,6 +11,11 @@
11
11
  e.g. `icons.chevronDown()` produces an `<svg>` element containing a downward-pointing chevron
12
12
  icon with the class `icon-chevron-down`.
13
13
 
14
+ Most of the built-in icons come from [Feather](https://feathericons.com). If you want more
15
+ icons in the same style, [lucide](https://lucide.dev) is a fork and expansion of Feather and a
16
+ great place to start: its SVGs drop straight into `defineIcons()` (see
17
+ [Need More Icons?](#need-more-icons)).
18
+
14
19
  ```js
15
20
  const { tosi, elements } = tosijs
16
21
  import { icons, svgIcon, postNotification } from 'tosijs-ui'
@@ -202,8 +207,8 @@ probably be broken out as a standalone library to allow the use of whatever icon
202
207
 
203
208
  ### Need More Icons?
204
209
 
205
- [lucide](https://lucide.dev) is a fork of feather that maintains the style and adds a lot more
206
- options. Obviously it's completely compatible with this icon system and generously licensed. A
210
+ [lucide](https://lucide.dev) is a fork and expansion of feather that maintains the style and
211
+ adds a lot more options. Obviously it's completely compatible with this icon system and generously licensed. A
207
212
  good place to find more icons in a pinch.
208
213
 
209
214
  Concretely: lucide emits the same geometry feather does — `24×24` viewBox, `fill="none"`,
@@ -532,6 +537,7 @@ and render a `square` (in fact, `icons.square()`) as a fallback.
532
537
 
533
538
  Many of these icons are sourced from [Feather Icons](https://github.com/feathericons/feather), but
534
539
  all the icons have been processed to have integer coordinates in a `viewBox` typically scaled to 1024 &times; 1024.
540
+ For more in the same style, [lucide](https://lucide.dev) is a fork and expansion of Feather.
535
541
 
536
542
  The corporate logos (Google, etc.) are from a variety of sources, in many cases ultimately from the
537
543
  organizations themselves. It's up to you to use them correctly.