@fusion.dev/helix-docs 0.105.0 → 0.106.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1594,12 +1594,12 @@ title: Iconography
1594
1594
  <helix-icon name="trash"></helix-icon>
1595
1595
  \`\`\`
1596
1596
 
1597
- Helix has 108 glyphs from Phosphor, drawn on a 256 box at Phosphor's bold
1598
- weight. We keep Phosphor's own geometry. Rescaling to a 24 box would change the
1599
- optical weight of every glyph, and the set would stop matching Phosphor. We use
1600
- the bold weight because Phosphor's regular weight is a hairline beside the
1601
- medium weight of Helix text. An icon that looks lighter than the words next to
1602
- it does not work as a mark.
1597
+ Helix has 125 glyphs, 120 of them from Phosphor, drawn on a 256 box at
1598
+ Phosphor's bold weight. We keep Phosphor's own geometry. Rescaling to a 24 box
1599
+ would change the optical weight of every glyph, and the set would stop matching
1600
+ Phosphor. We use the bold weight because Phosphor's regular weight is a
1601
+ hairline beside the medium weight of Helix text. An icon that looks lighter than
1602
+ the words next to it does not work as a mark.
1603
1603
 
1604
1604
  ## Size and color come from the surrounding text
1605
1605
 
@@ -1674,7 +1674,7 @@ both are set, \`icon\` wins.
1674
1674
 
1675
1675
  \`icon\` also keeps your bundle small. \`name\` looks up glyphs in an index of the
1676
1676
  whole set, and no bundler can tree-shake that index. If you render one icon by
1677
- \`name\`, you ship the whole set: 15 kB gzipped for 108 glyphs. With \`icon\`, you
1677
+ \`name\`, you ship the whole set: 17 kB gzipped for 125 glyphs. With \`icon\`, you
1678
1678
  ship only the glyph you import.
1679
1679
 
1680
1680
  \`icon\` also draws glyphs from outside this set. Anything that exports the same
@@ -2282,7 +2282,7 @@ title: Maps
2282
2282
  # Maps
2283
2283
 
2284
2284
  Helix Maps puts a frame around a map drawn by MapLibre, Leaflet, or a renderer of
2285
- your own. The frame adds pan and zoom buttons and a place for the map credit. You
2285
+ your own. The frame adds a column of controls and a place for the map credit. You
2286
2286
  add places, routes, areas, live positions, and data as elements inside the
2287
2287
  frame, and \`@fusion.dev/helix-map\` connects the frame to the renderer and styles
2288
2288
  the map with your theme.
@@ -2300,7 +2300,11 @@ Add the map frame, an element for MapLibre to draw in, and your places:
2300
2300
  \`\`\`html
2301
2301
  <helix-map label="Our stores">
2302
2302
  <div id="map"></div>
2303
- <helix-map-marker label="Flagship" lat="30.2672" lng="-97.7431"></helix-map-marker>
2303
+ <helix-map-marker
2304
+ label="Flagship"
2305
+ lat="30.2672"
2306
+ lng="-97.7431"
2307
+ ></helix-map-marker>
2304
2308
  </helix-map>
2305
2309
  \`\`\`
2306
2310
 
@@ -2330,8 +2334,8 @@ followTheme(map, frame, style)
2330
2334
 
2331
2335
  \`connectMap\` links the frame to the renderer:
2332
2336
 
2333
- - The frame's pan and zoom buttons and keys move the map, using your theme's
2334
- motion settings. The map moves without animation when a user has asked for
2337
+ - The frame's pan, zoom, rotate, and tilt buttons and keys move the map, using
2338
+ your theme's motion settings. The map moves without animation when a user has asked for
2335
2339
  reduced motion.
2336
2340
  - The renderer's own keyboard handling and zoom buttons are turned off, so the
2337
2341
  frame's controls are the only ones.
@@ -2354,11 +2358,41 @@ you already have. Leaflet draws routes, areas, and points only when you pass it
2354
2358
  - Main roads use \`primary\`, your brand color.
2355
2359
  - Smaller roads, buildings, borders, and labels use \`foreground\`.
2356
2360
 
2361
+ It also draws landmarks, highway signs, and neighborhood names:
2362
+
2363
+ - A landmark is an icon on a disc and its name, in a color for its kind:
2364
+ parks, museums, schools, hotels, hospitals, stations, and stadiums from zoom
2365
+ 14, and food and shops from zoom 16. Each color is a fixed hue at your brand
2366
+ color's lightness, so the kinds stay apart in any theme.
2367
+ - A highway's number is on its sign, drawn to the Federal Highway
2368
+ Administration's outlines: the red and blue Interstate shield, the white US
2369
+ route shield, the white circle of a state route, and a plain plate for other
2370
+ roads.
2371
+ - Neighborhoods are in spaced capitals, quieter than the towns.
2372
+
2357
2373
  The same call builds a light map for a light theme and a dark map for a dark
2358
2374
  theme. Map labels meet a contrast target of 4.5 against the land. Pass
2359
2375
  \`contrast\` to change it, \`language\` to choose which name each place is labeled
2360
2376
  with, and \`tiles\` and \`glyphs\` to use your own tile server.
2361
2377
 
2378
+ Pass \`font\` to draw the labels in your theme's typeface. MapLibre draws the
2379
+ letters in the page from the font your page has loaded, so there are no glyph
2380
+ files to fetch. \`mapFontFrom(frame)\` reads the typeface from your theme, and
2381
+ \`fontReady(font)\` waits until its weights are loaded. Wait for it before you
2382
+ create the map, because MapLibre keeps each letter as first drawn:
2383
+
2384
+ \`\`\`js
2385
+ const font = mapFontFrom(frame)
2386
+ await fontReady(font)
2387
+ const map = new maplibregl.Map({ container: 'map', style: mapLibreStyle(colors, { font }) })
2388
+ \`\`\`
2389
+
2390
+ The style draws the world as a globe when the map is zoomed out. The globe turns
2391
+ into the flat map as the map zooms in. \`connectMap\` hides markers on the far side
2392
+ of the globe, and a keyboard user who moves to one turns the globe to show it.
2393
+ Pass \`globe: false\` for a flat map at every zoom. MapLibre 4 has no globe, so
2394
+ pass it there too.
2395
+
2362
2396
  \`followTheme(map, frame, style)\` restyles the map when your theme changes. It
2363
2397
  watches for a new color mode, class, or theme value on the frame or its
2364
2398
  ancestors, and for a change in the system's light or dark setting. If your page
@@ -2378,13 +2412,23 @@ reports which one is missing.
2378
2412
  | \`helix-map-area\` | A shape, such as a delivery zone |
2379
2413
  | \`helix-map-position\` | A moving point or arrow, such as a vehicle |
2380
2414
  | \`helix-map-points\` | Thousands of places loaded from GeoJSON |
2415
+ | \`helix-map-buildings\` | The map's buildings, raised to their heights in 3D |
2416
+ | \`helix-map-raster\` | Map tiles over the map, such as weather radar or satellite imagery |
2417
+ | \`helix-map-terrain\` | Hills and mountains, shaded and raised in 3D |
2418
+ | \`helix-map-contours\` | Contour lines, each at one height |
2419
+ | \`helix-map-landcover\` | What covers the ground: forest, grass, farmland, sand, rock, and ice |
2381
2420
 
2382
2421
  Each element takes \`tone\`, such as \`primary\` or \`danger\`, for its color.
2383
2422
 
2384
2423
  ### Markers
2385
2424
 
2386
2425
  \`\`\`html
2387
- <helix-map-marker label="Texas Capitol" lat="30.2747" lng="-97.7405" shape="ring">
2426
+ <helix-map-marker
2427
+ label="Texas Capitol"
2428
+ lat="30.2747"
2429
+ lng="-97.7405"
2430
+ shape="ring"
2431
+ >
2388
2432
  <span slot="icon">B</span>
2389
2433
  </helix-map-marker>
2390
2434
  \`\`\`
@@ -2415,8 +2459,8 @@ panel, pass \`clusterZoom: false\` to \`connectMap\` and listen for
2415
2459
 
2416
2460
  \`\`\`html
2417
2461
  <helix-map-route
2418
- label="Depot to Mission"
2419
2462
  description="4.2 km"
2463
+ label="Depot to Mission"
2420
2464
  points="37.7955,-122.3937 37.7644,-122.427"
2421
2465
  progress="0.4"
2422
2466
  ></helix-map-route>
@@ -2435,12 +2479,12 @@ service such as OSRM or Valhalla.
2435
2479
 
2436
2480
  \`\`\`html
2437
2481
  <helix-map-position
2482
+ accuracy="30"
2483
+ description="Two stops away"
2484
+ heading="90"
2438
2485
  label="Van 12"
2439
2486
  lat="37.78"
2440
2487
  lng="-122.41"
2441
- heading="90"
2442
- accuracy="30"
2443
- description="Two stops away"
2444
2488
  ></helix-map-position>
2445
2489
  \`\`\`
2446
2490
 
@@ -2452,7 +2496,11 @@ readers announce its \`description\` when it changes, at most once every
2452
2496
  ### Thousands of points
2453
2497
 
2454
2498
  \`\`\`html
2455
- <helix-map-points label="Food and drink" src="/places.geojson" cluster></helix-map-points>
2499
+ <helix-map-points
2500
+ cluster
2501
+ label="Food and drink"
2502
+ src="/places.geojson"
2503
+ ></helix-map-points>
2456
2504
  \`\`\`
2457
2505
 
2458
2506
  Use \`helix-map-points\` for more places than markers can handle. MapLibre draws
@@ -2462,16 +2510,176 @@ count zooms in to it. Pressing a point sends \`helix-activate\` from the layer
2462
2510
  with the point's id, or with the property named by \`name-key\`. Leaflet draws
2463
2511
  each point on its own, which works for hundreds of points.
2464
2512
 
2513
+ ### Buildings in 3D
2514
+
2515
+ \`\`\`html
2516
+ <helix-map-buildings></helix-map-buildings>
2517
+ \`\`\`
2518
+
2519
+ \`helix-map-buildings\` raises the buildings in the map's tiles to the heights the
2520
+ tiles record, in your theme's raised surface color. Set \`tone\` to color them by
2521
+ meaning. The buildings appear from zoom 13. To see their height, tilt the map by
2522
+ setting \`pitch\` when you create it:
2523
+
2524
+ \`\`\`js
2525
+ const map = new maplibregl.Map({ container: 'map', pitch: 55, style, zoom: 15.5 })
2526
+ \`\`\`
2527
+
2528
+ To let users tilt the map, add \`tilt\` to the frame's \`controls\`:
2529
+
2530
+ \`\`\`html
2531
+ <helix-map
2532
+ controls="zoom compass tilt fullscreen"
2533
+ label="Downtown Austin in 3D"
2534
+ >
2535
+ \`\`\`
2536
+
2537
+ The 3D button is a toggle. Pressed, it tilts the map 50 degrees toward the
2538
+ horizon and raises the buildings. Pressed again, it makes the map flat, and the
2539
+ buildings are the map's own flat footprints. Raised terrain lies flat with them,
2540
+ and keeps its shading. The compass's needle points north as the map turns, and
2541
+ pressing the compass turns the map back to north.
2542
+
2543
+ Leaflet draws maps flat and does not rotate, so a Leaflet map shows no
2544
+ buildings, and the compass and the 3D button do nothing.
2545
+
2546
+ ### Weather and other tile overlays
2547
+
2548
+ \`\`\`html
2549
+ <helix-map-raster
2550
+ attribution="Radar from Example Weather"
2551
+ frames="https://tiles.example/radar-50m/{z}/{x}/{y}.png https://tiles.example/radar-now/{z}/{x}/{y}.png"
2552
+ label="Weather radar"
2553
+ ></helix-map-raster>
2554
+ \`\`\`
2555
+
2556
+ \`helix-map-raster\` draws map tiles over the land and roads, and under your
2557
+ routes, areas, and place names. Set \`src\` to one tile URL, or \`frames\` to
2558
+ several, and set \`playing\` to show the frames in order, \`interval\` milliseconds
2559
+ each. Every frame's tiles load once, so the loop plays without a blank frame.
2560
+
2561
+ - Put the tile provider's credit in \`attribution\`. The frame shows it beside
2562
+ the map's credit.
2563
+ - The frames do not play while the user has asked for reduced motion.
2564
+ - Content that moves for more than five seconds needs a way to pause it, so
2565
+ give \`playing\` a control on your page.
2566
+
2567
+ ### Satellite imagery and map types
2568
+
2569
+ \`\`\`html
2570
+ <helix-map-raster
2571
+ attribution="Imagery from USGS The National Map"
2572
+ ground
2573
+ label="Satellite imagery"
2574
+ max-zoom="16"
2575
+ opacity="1"
2576
+ src="https://basemap.nationalmap.gov/arcgis/rest/services/USGSImageryOnly/MapServer/tile/{z}/{y}/{x}"
2577
+ ></helix-map-raster>
2578
+ \`\`\`
2579
+
2580
+ Set \`ground\` on \`helix-map-raster\` to make its tiles the map's imagery. Imagery
2581
+ is a map type, which the frame's \`map-type\` attribute chooses:
2582
+
2583
+ - Absent, the Standard map: your themed map, without the imagery.
2584
+ - \`hybrid\`: the imagery in place of the map's land, under its roads and names.
2585
+ - \`satellite\`: the imagery alone, without the roads and names.
2586
+
2587
+ With \`layers\` in the frame's \`controls\`, the layers menu opens with a card for
2588
+ each map type, showing a picture of the map in it. Set \`max-zoom\` to the deepest
2589
+ zoom your provider has tiles for, and the map enlarges those tiles when a user
2590
+ zooms in further.
2591
+
2592
+ The imagery above is from the U.S. Geological Survey. It is in the public domain
2593
+ and covers the United States. Some providers put \`{y}\` before \`{x}\` in their
2594
+ tile URLs, as this one does.
2595
+
2596
+ ### Terrain
2597
+
2598
+ \`\`\`html
2599
+ <helix-map-terrain
2600
+ attribution="Elevation from 3DEP and SRTM data, courtesy of the U.S. Geological Survey"
2601
+ max-zoom="15"
2602
+ raised
2603
+ src="https://s3.amazonaws.com/elevation-tiles-prod/terrarium/{z}/{x}/{y}.png"
2604
+ ></helix-map-terrain>
2605
+ \`\`\`
2606
+
2607
+ \`helix-map-terrain\` shades the land by its slopes, so hills and valleys show on a
2608
+ flat map. Set \`raised\` to raise the ground to its real height as well, and tilt
2609
+ the map to see it. Set \`exaggeration\` to raise it more than its real height,
2610
+ such as \`1.5\`. Routes, areas, and buildings lie on the raised ground.
2611
+
2612
+ The elevation tiles above are Terrain Tiles on AWS, which are free to use and
2613
+ cover the world. Their tiles store heights in the \`terrarium\` encoding, which is
2614
+ the default. For tiles in the Mapbox encoding, set \`encoding="mapbox"\`. Credit
2615
+ the sources your map shows: in the United States, the U.S. Geological Survey.
2616
+
2617
+ Leaflet draws maps flat, so a Leaflet map shows no terrain.
2618
+
2619
+ ### Contour lines
2620
+
2621
+ \`\`\`html
2622
+ <helix-map-contours
2623
+ max-zoom="15"
2624
+ src="https://s3.amazonaws.com/elevation-tiles-prod/terrarium/{z}/{x}/{y}.png"
2625
+ unit="feet"
2626
+ ></helix-map-contours>
2627
+ \`\`\`
2628
+
2629
+ \`helix-map-contours\` draws lines of equal height from the same elevation tiles
2630
+ as terrain. The lines are closer together as the map zooms in, from 500 meters
2631
+ apart over a region to 5 meters at street level. Every fifth line is heavier and
2632
+ labeled with its height, in meters, or in feet with \`unit="feet"\`. They show
2633
+ from zoom 9, and lie on the ground when it is raised.
2634
+
2635
+ ### Land cover
2636
+
2637
+ \`\`\`html
2638
+ <helix-map-landcover></helix-map-landcover>
2639
+ \`\`\`
2640
+
2641
+ \`helix-map-landcover\` colors the ground by what covers it: forest and grass in
2642
+ greens, farmland in wheat, wetland in teal, sand in tan, rock in gray, and ice
2643
+ in pale blue. Each color is mixed into your theme's land color. It draws over
2644
+ parks and under water and roads, so a park shows its meadows and forests.
2645
+
2646
+ ### Turn layers on and off
2647
+
2648
+ \`\`\`html
2649
+ <helix-map
2650
+ controls="zoom compass layers fullscreen"
2651
+ label="Downtown Austin"
2652
+ >
2653
+ \`\`\`
2654
+
2655
+ Add \`layers\` to the frame's \`controls\` for a layers button. It opens a menu with
2656
+ a tile for each layer: a picture of what the layer draws, and its \`label\`. A
2657
+ tile is lit while its layer is shown. Pressing a tile sets its layer's \`hidden\`
2658
+ attribute, and \`connectMap\` does not draw a hidden layer. Write \`hidden\` on a
2659
+ layer to start it turned off.
2660
+
2661
+ Give layers the same \`group\` to show them as one tile, such as a route and the
2662
+ dotted legs at its ends. The tile takes the name of the first layer in the
2663
+ group, and shows or hides every layer in it. Keep labels short, such as
2664
+ "Walking route", and put the rest in \`description\`, which screen readers read
2665
+ after the label.
2666
+
2465
2667
  ## Keyboard and screen readers
2466
2668
 
2467
2669
  - The frame is one tab stop. Arrow keys pan the map, and the plus and minus keys
2468
- zoom it.
2670
+ zoom it. Shift with Left or Right rotates the map, and Shift with Up or Down
2671
+ tilts it.
2469
2672
  - The markers are one tab stop. Arrow keys move between them in the order you
2470
2673
  wrote them. The map pans to show a marker that is off screen.
2471
2674
  - A points layer is one tab stop over the points and counts in view. Arrow keys
2472
2675
  move top to bottom and along each line. Enter on a count zooms in to it.
2473
- - Screen readers find routes, areas, and points layers in a list inside the
2474
- frame, named by their \`label\` and \`description\`.
2676
+ - Screen readers find the map's shown layers in a list inside the frame, named
2677
+ by their \`label\` and \`description\`.
2678
+ - With a pointer, dragging is the only way to move and turn the map. Where your
2679
+ map has to work without dragging, as WCAG 2.2 asks at level AA, add \`pan\` and
2680
+ \`rotate\` to \`controls\` for buttons around the compass that move and turn it.
2681
+ - In the layers menu, Tab moves between the tiles, Space or Enter turns a layer
2682
+ on or off, and Escape closes the menu.
2475
2683
 
2476
2684
  ## Write a driver
2477
2685
 
@@ -2491,7 +2699,8 @@ animation. Each optional method turns on a feature:
2491
2699
  | \`layers\` | Drawing routes, areas, and points |
2492
2700
  | \`credits\` | The map credit in the frame's footer |
2493
2701
  | \`silenceKeyboard\`, \`focusTarget\`, \`replaceZoom\` | Using the frame's keys and zoom buttons |
2494
- | \`bearing\` | Arrows that stay correct when the map is rotated |
2702
+ | \`bearing\` | Arrows that stay correct when the map is rotated, and the Face north arrow |
2703
+ | \`rotate\`, \`tilt\` | The rotate, Face north, and tilt buttons and keys |
2495
2704
 
2496
2705
  Without \`project\`, markers stay hidden. To animate a move your page makes
2497
2706
  itself, read the same motion with \`motionOf(element, pace)\`.
@@ -2544,7 +2753,7 @@ on its own.
2544
2753
 
2545
2754
  | | Raw | Gzip | Brotli |
2546
2755
  |---|---|---|---|
2547
- | Lit and \`@fusion.dev/helix-core\` | 167,631 | 54,135 | 45,804 |
2756
+ | Lit and \`@fusion.dev/helix-core\` | 176,094 | 56,735 | 48,133 |
2548
2757
 
2549
2758
  ## Whole packages
2550
2759
 
@@ -2555,11 +2764,11 @@ either barrel. The per-component tables show what your page pays.
2555
2764
 
2556
2765
  | Package | Raw | Gzip | Brotli | |
2557
2766
  |---|---|---|---|---|
2558
- | \`@fusion.dev/helix-core\` | 167,185 | 53,719 | 45,579 | The element base class, mixins, decorators, and floating positioning. |
2559
- | \`@fusion.dev/helix-headless\` | 692,504 | 179,427 | 139,511 | Every headless family. The barrel entry includes all of them. |
2560
- | \`@fusion.dev/helix-icons\` | 47,484 | 14,907 | 12,553 | The whole glyph set. |
2767
+ | \`@fusion.dev/helix-core\` | 175,648 | 56,340 | 47,876 | The element base class, mixins, decorators, and floating positioning. |
2768
+ | \`@fusion.dev/helix-headless\` | 715,674 | 185,346 | 144,163 | Every headless family. The barrel entry includes all of them. |
2769
+ | \`@fusion.dev/helix-icons\` | 55,565 | 17,727 | 14,864 | The whole glyph set. |
2561
2770
  | \`@fusion.dev/helix-theme\` | 3,288 | 1,571 | 1,355 | The derivation engine. Most sites run it at build time, and a theme switcher runs it in the browser. |
2562
- | \`@fusion.dev/helix\` | 1,213,542 | 284,037 | 207,956 | Every styled family. |
2771
+ | \`@fusion.dev/helix\` | 1,245,495 | 291,270 | 213,669 | Every styled family. |
2563
2772
  | \`lit\` | 15,394 | 6,118 | 5,460 | Lit itself, listed so you can subtract it from every row above. |
2564
2773
 
2565
2774
  ## Stylesheets
@@ -2573,20 +2782,20 @@ shows the whole cost of using the base layer on its own.
2573
2782
  | File | Raw | Gzip | Brotli | |
2574
2783
  |---|---|---|---|---|
2575
2784
  | \`base.css\` | 30,672 | 4,430 | 3,844 | The base layer. It styles markup Helix does not render, and it works with no JavaScript. |
2576
- | \`elements.css\` | 8,457 | 1,433 | 1,282 | Hides each element until its definition loads. It is generated from the tags in \`@fusion.dev/helix\`. |
2785
+ | \`elements.css\` | 8,760 | 1,482 | 1,323 | Hides each element until its definition loads. It is generated from the tags in \`@fusion.dev/helix\`. |
2577
2786
  | \`helix.css\` | 207 | 148 | 118 | The other four stylesheets in one import, in the order they must load. |
2578
2787
  | \`primitives.css\` | 6,390 | 1,260 | 1,084 | The primitive layer. It is private, and it ships because \`tokens.css\` refers to it. |
2579
2788
  | \`tokens.css\` | 20,987 | 2,567 | 2,138 | The 191 semantic tokens. Every styled component needs them. |
2580
2789
 
2581
2790
  ## What the numbers say
2582
2791
 
2583
- **Most of your first component is the shared runtime.** The median styled family is 19,792 bytes gzipped alone, and it adds 2,196 to a page that already has Helix. The shared runtime is 89 percent of the first component, and the component itself is 11 percent. Ten typical components cost the first number once, plus nine of the added number. The two columns in the tables below let you work that out for your own components.
2792
+ **Most of your first component is the shared runtime.** The median styled family is 20,604 bytes gzipped alone, and it adds 2,233 to a page that already has Helix. The shared runtime is 89 percent of the first component, and the component itself is 11 percent. Ten typical components cost the first number once, plus nine of the added number. The two columns in the tables below let you work that out for your own components.
2584
2793
 
2585
- Across the 103 styled components, the smallest is \`code\` at 9,746 bytes gzipped alone, and the largest is \`data-table\` at 59,994. Every family together is 284,037.
2794
+ Across the 103 styled components, the smallest is \`code\` at 9,782 bytes gzipped alone, and the largest is \`data-table\` at 62,714. Every family together is 291,270.
2586
2795
 
2587
- No family imports a barrel. The \`barrels\` rule in \`fusion workspace\` enforces that. \`@fusion.dev/helix-headless\` marks every module in \`dist\` as having side effects, which is true of a file that calls \`customElements.define\`. A bundler can remove none of it. One \`import { HelixHeadlessButton } from '@fusion.dev/helix-headless'\` costs 179,427 bytes gzipped, whatever else the page imports. That is 9 times the median family above. All 103 styled families import the headless family they extend directly. The rule checks the shape of the import, so it applies to any package that sets \`sideEffects\`, whatever its name.
2796
+ No family imports a barrel. The \`barrels\` rule in \`fusion workspace\` enforces that. \`@fusion.dev/helix-headless\` marks every module in \`dist\` as having side effects, which is true of a file that calls \`customElements.define\`. A bundler can remove none of it. One \`import { HelixHeadlessButton } from '@fusion.dev/helix-headless'\` costs 185,346 bytes gzipped, whatever else the page imports. That is 9 times the median family above. All 103 styled families import the headless family they extend directly. The rule checks the shape of the import, so it applies to any package that sets \`sideEffects\`, whatever its name.
2588
2797
 
2589
- The headless tier never had the problem, so it serves as the control. \`@fusion.dev/helix-core\` is \`sideEffects: false\`, and the median headless family is 20,674 bytes gzipped alone.
2798
+ The headless tier never had the problem, so it serves as the control. \`@fusion.dev/helix-core\` is \`sideEffects: false\`, and the median headless family is 21,055 bytes gzipped alone.
2590
2799
 
2591
2800
  ## Compared with other systems
2592
2801
 
@@ -2598,43 +2807,43 @@ The table has no whole-library row. That row would compare how many components e
2598
2807
 
2599
2808
  | Component | System | Raw | Gzip | Brotli |
2600
2809
  |---|---|---|---|---|
2601
- | \`button\` | **Helix** | 41,947 | 12,322 | 10,856 |
2810
+ | \`button\` | **Helix** | 42,297 | 12,358 | 10,881 |
2602
2811
  | | Carbon | 133,058 | 20,959 | 17,685 |
2603
2812
  | | Material Web | 47,060 | 14,173 | 12,591 |
2604
2813
  | | Shoelace | 62,628 | 18,287 | 15,805 |
2605
2814
  | | Spectrum | 98,792 | 22,045 | 18,674 |
2606
- | \`checkbox\` | **Helix** | 46,351 | 13,506 | 11,862 |
2815
+ | \`checkbox\` | **Helix** | 46,701 | 13,549 | 11,892 |
2607
2816
  | | Carbon | 60,255 | 15,609 | 13,550 |
2608
2817
  | | Material Web | 43,785 | 13,556 | 12,015 |
2609
2818
  | | Shoelace | 47,614 | 15,177 | 13,301 |
2610
2819
  | | Spectrum | 62,492 | 15,437 | 13,481 |
2611
- | \`dialog\` | **Helix** | 39,181 | 11,931 | 10,532 |
2820
+ | \`dialog\` | **Helix** | 39,531 | 11,977 | 10,564 |
2612
2821
  | | Carbon | 510,866 | 67,390 | 39,189 |
2613
2822
  | | Material Web | 34,238 | 11,510 | 10,229 |
2614
2823
  | | Shoelace | 52,754 | 17,698 | 15,554 |
2615
2824
  | | Spectrum | 155,708 | 31,899 | 26,262 |
2616
- | \`radio\` | **Helix** | 50,217 | 14,033 | 12,351 |
2825
+ | \`radio\` | **Helix** | 50,567 | 14,074 | 12,400 |
2617
2826
  | | Carbon | 63,055 | 16,887 | 14,605 |
2618
2827
  | | Material Web | 41,044 | 13,234 | 11,757 |
2619
2828
  | | Shoelace | 34,865 | 12,027 | 10,559 |
2620
2829
  | | Spectrum | 38,685 | 10,660 | 9,370 |
2621
- | \`switch\` | **Helix** | 43,727 | 13,096 | 11,526 |
2830
+ | \`switch\` | **Helix** | 44,077 | 13,135 | 11,529 |
2622
2831
  | | Carbon | 69,423 | 17,127 | 14,764 |
2623
2832
  | | Material Web | 50,155 | 14,577 | 12,935 |
2624
2833
  | | Shoelace | 37,833 | 11,814 | 10,568 |
2625
2834
  | | Spectrum | 62,322 | 15,059 | 13,321 |
2626
- | \`tabs\` | **Helix** | 45,492 | 13,287 | 11,706 |
2835
+ | \`tabs\` | **Helix** | 45,842 | 13,332 | 11,742 |
2627
2836
  | | Carbon | 578,766 | 73,537 | 43,235 |
2628
2837
  | | Material Web | 38,883 | 12,820 | 11,368 |
2629
2838
  | | Shoelace | 54,573 | 17,140 | 15,068 |
2630
2839
  | | Spectrum | 64,875 | 18,298 | 16,283 |
2631
- | \`tooltip\` | **Helix** | 66,072 | 21,770 | 19,269 |
2840
+ | \`tooltip\` | **Helix** | 66,422 | 21,810 | 19,328 |
2632
2841
  | | Carbon | 189,382 | 30,354 | 22,273 |
2633
2842
  | | Material Web | | not shipped | |
2634
2843
  | | Shoelace | 57,412 | 20,220 | 17,933 |
2635
2844
  | | Spectrum | 136,599 | 40,552 | 35,286 |
2636
2845
 
2637
- At least one system is smaller than Helix on \`dialog\`, \`radio\`, \`switch\`, \`tabs\`, \`tooltip\`. The largest gap is radio against Spectrum, at 3,373 bytes gzipped. 7 of 28 peer measurements are smaller than the Helix row.
2846
+ At least one system is smaller than Helix on \`dialog\`, \`radio\`, \`switch\`, \`tabs\`, \`tooltip\`. The largest gap is radio against Spectrum, at 3,414 bytes gzipped. 7 of 28 peer measurements are smaller than the Helix row.
2638
2847
 
2639
2848
  - **Carbon** \`@carbon/web-components@2.61.0\`. Its dialog is Modal, its radio is Radio Button, and its switch is Toggle.
2640
2849
  - **Material Web** \`@material/web@2.5.0\`. Ships no tooltip. Its button is measured as the filled one, there being no single button element.
@@ -2678,103 +2887,103 @@ Structure, accessibility, state, and form participation. It has no presentation
2678
2887
 
2679
2888
  | Family | Alone raw | Alone gzip | Alone brotli | Added raw | Added gzip | Added brotli |
2680
2889
  |---|---|---|---|---|---|---|
2681
- | \`accordion\` | 82,901 | 27,154 | 22,228 | 2,875 | 723 | 599 |
2682
- | \`announcement\` | 80,317 | 26,327 | 21,514 | 1,386 | 335 | 293 |
2683
- | \`app-header\` | 31,746 | 10,029 | 8,858 | 1,248 | 272 | 204 |
2684
- | \`area-chart\` | 77,668 | 25,981 | 22,873 | 11,004 | 3,364 | 2,731 |
2685
- | \`avatar\` | 33,795 | 10,619 | 9,376 | 3,257 | 851 | 674 |
2686
- | \`badge\` | 31,282 | 9,961 | 8,768 | 1,163 | 283 | 250 |
2687
- | \`bar-chart\` | 79,319 | 26,337 | 23,258 | 12,644 | 3,701 | 3,090 |
2688
- | \`blockquote\` | 31,296 | 9,982 | 8,795 | 774 | 157 | 103 |
2689
- | \`breadcrumbs\` | 79,357 | 25,667 | 21,199 | 1,965 | 437 | 368 |
2690
- | \`button\` | 35,854 | 11,208 | 9,849 | 3,095 | 794 | 588 |
2691
- | \`button-group\` | 31,152 | 9,869 | 8,691 | 661 | 120 | 65 |
2692
- | \`callout\` | 78,477 | 25,533 | 21,048 | 914 | 217 | 191 |
2693
- | \`canvas\` | 83,665 | 25,431 | 22,249 | 46,815 | 14,052 | 11,876 |
2694
- | \`card\` | 31,186 | 9,883 | 8,719 | 694 | 116 | 122 |
2695
- | \`carousel\` | 88,760 | 28,594 | 23,618 | 10,942 | 2,759 | 2,267 |
2696
- | \`chat\` | 102,068 | 33,433 | 27,460 | 17,447 | 5,117 | 4,235 |
2697
- | \`checkbox\` | 39,842 | 12,090 | 10,632 | 2,335 | 654 | 382 |
2698
- | \`checkbox-group\` | 42,967 | 12,782 | 11,281 | 4,939 | 1,249 | 1,015 |
2699
- | \`code\` | 29,771 | 9,455 | 8,318 | 451 | 62 | 45 |
2700
- | \`code-block\` | 124,101 | 40,739 | 34,366 | 17,201 | 4,506 | 3,737 |
2701
- | \`color-input\` | 141,600 | 44,819 | 37,809 | 25,273 | 5,924 | 4,953 |
2702
- | \`color-picker\` | 108,091 | 34,002 | 28,065 | 19,215 | 4,622 | 3,992 |
2703
- | \`combobox\` | 136,787 | 43,454 | 36,534 | 21,033 | 5,217 | 4,287 |
2704
- | \`command\` | 106,783 | 33,346 | 27,377 | 17,997 | 4,600 | 3,808 |
2705
- | \`copy-button\` | 118,699 | 39,107 | 32,921 | 11,796 | 2,909 | 2,423 |
2706
- | \`data-table\` | 174,981 | 53,493 | 45,112 | 55,522 | 14,090 | 11,680 |
2707
- | \`date-input\` | 135,143 | 42,972 | 36,189 | 19,132 | 4,846 | 3,961 |
2708
- | \`date-picker\` | 90,536 | 29,334 | 24,060 | 9,900 | 2,710 | 2,197 |
2709
- | \`description-list\` | 31,255 | 9,820 | 8,631 | 1,132 | 166 | 133 |
2710
- | \`dialog\` | 34,804 | 10,920 | 9,610 | 2,717 | 764 | 674 |
2711
- | \`divider\` | 31,502 | 10,055 | 8,819 | 981 | 220 | 123 |
2712
- | \`donut-chart\` | 75,451 | 24,938 | 22,046 | 10,214 | 2,960 | 2,616 |
2713
- | \`drawer\` | 33,557 | 10,558 | 9,293 | 1,761 | 453 | 416 |
2714
- | \`drilldown\` | 87,372 | 28,526 | 23,210 | 5,704 | 1,495 | 1,194 |
2715
- | \`empty\` | 31,749 | 10,112 | 8,909 | 956 | 214 | 189 |
2716
- | \`file-input\` | 90,644 | 29,316 | 23,959 | 6,170 | 1,761 | 1,345 |
2717
- | \`filter-input\` | 147,385 | 46,304 | 38,962 | 27,973 | 6,764 | 5,611 |
2718
- | \`format-date\` | 34,765 | 11,036 | 9,757 | 2,867 | 687 | 510 |
2719
- | \`heatmap\` | 76,673 | 25,165 | 22,241 | 10,872 | 2,985 | 2,449 |
2720
- | \`icon\` | 78,044 | 25,357 | 20,849 | 1,018 | 216 | 143 |
2721
- | \`icon-button\` | 36,253 | 11,243 | 9,885 | 3,494 | 825 | 628 |
2722
- | \`image\` | 33,325 | 10,417 | 9,166 | 3,156 | 815 | 691 |
2723
- | \`input\` | 89,734 | 28,797 | 23,541 | 4,702 | 1,281 | 945 |
2724
- | \`kbd\` | 33,106 | 10,647 | 9,406 | 2,976 | 951 | 696 |
2725
- | \`legend\` | 35,158 | 11,146 | 9,802 | 1,080 | 268 | 220 |
2726
- | \`lightbox\` | 39,522 | 12,181 | 10,706 | 4,807 | 1,253 | 1,061 |
2727
- | \`line-chart\` | 77,249 | 25,679 | 22,678 | 10,667 | 3,076 | 2,588 |
2728
- | \`list\` | 32,208 | 10,055 | 8,872 | 1,726 | 328 | 245 |
2729
- | \`listbox\` | 98,495 | 31,487 | 25,684 | 11,194 | 3,014 | 2,433 |
2730
- | \`loader\` | 31,392 | 9,987 | 8,780 | 900 | 207 | 245 |
2731
- | \`map\` | 53,734 | 15,846 | 13,956 | 15,316 | 3,889 | 3,216 |
2732
- | \`megamenu\` | 61,633 | 20,674 | 18,272 | 4,941 | 1,321 | 974 |
2733
- | \`menu\` | 117,475 | 39,035 | 32,785 | 8,848 | 2,208 | 1,774 |
2734
- | \`meter\` | 34,582 | 10,837 | 9,570 | 4,099 | 1,048 | 871 |
2735
- | \`navigation\` | 33,086 | 10,518 | 9,271 | 1,361 | 328 | 243 |
2736
- | \`notifications\` | 94,551 | 30,059 | 24,642 | 11,383 | 2,649 | 2,215 |
2737
- | \`number-input\` | 92,660 | 29,603 | 24,178 | 7,625 | 2,007 | 1,553 |
2738
- | \`object-inspector\` | 131,749 | 43,371 | 36,527 | 19,463 | 5,181 | 4,284 |
2739
- | \`option\` | 33,422 | 10,422 | 9,209 | 2,933 | 641 | 445 |
2740
- | \`outline\` | 36,510 | 11,706 | 10,328 | 4,628 | 1,357 | 1,031 |
2741
- | \`pagination\` | 140,740 | 44,142 | 37,163 | 27,534 | 6,449 | 5,302 |
2742
- | \`pin-input\` | 42,758 | 13,010 | 11,433 | 5,194 | 1,510 | 1,152 |
2743
- | \`popover\` | 58,839 | 19,921 | 17,599 | 1,899 | 477 | 337 |
2744
- | \`progress\` | 32,433 | 10,261 | 9,035 | 1,951 | 477 | 400 |
2745
- | \`qr-code\` | 43,082 | 14,300 | 12,585 | 12,983 | 4,692 | 3,989 |
2746
- | \`quote\` | 30,675 | 9,744 | 8,564 | 552 | 89 | 118 |
2747
- | \`radio\` | 42,020 | 12,549 | 11,057 | 2,822 | 696 | 473 |
2748
- | \`rating\` | 44,493 | 13,597 | 11,997 | 6,605 | 1,856 | 1,535 |
2749
- | \`scatter-chart\` | 77,153 | 25,592 | 22,565 | 11,346 | 3,384 | 2,814 |
2750
- | \`scroll-area\` | 32,918 | 10,423 | 9,151 | 2,743 | 747 | 517 |
2751
- | \`select\` | 128,850 | 41,531 | 34,906 | 15,857 | 4,004 | 3,169 |
2752
- | \`skeleton\` | 29,864 | 9,489 | 8,354 | 544 | 96 | 112 |
2753
- | \`skip-link\` | 31,454 | 10,045 | 8,831 | 1,178 | 335 | 218 |
2754
- | \`slider\` | 43,252 | 13,023 | 11,499 | 5,535 | 1,473 | 1,172 |
2755
- | \`sparkline\` | 37,577 | 12,171 | 10,735 | 2,387 | 771 | 608 |
2756
- | \`speed-dial\` | 109,021 | 36,657 | 30,848 | 3,743 | 931 | 643 |
2757
- | \`splitter\` | 40,957 | 12,491 | 11,063 | 10,282 | 2,578 | 2,226 |
2758
- | \`stat\` | 31,640 | 9,918 | 8,739 | 1,148 | 171 | 115 |
2759
- | \`steps\` | 87,485 | 28,117 | 23,085 | 6,177 | 1,482 | 1,191 |
2760
- | \`switch\` | 39,459 | 12,044 | 10,580 | 1,550 | 449 | 378 |
2761
- | \`table\` | 88,964 | 28,904 | 23,621 | 9,425 | 2,518 | 2,151 |
2762
- | \`tabs\` | 39,256 | 12,020 | 10,599 | 3,925 | 869 | 769 |
2763
- | \`tag\` | 78,757 | 25,623 | 20,999 | 895 | 162 | 167 |
2764
- | \`textarea\` | 42,000 | 12,640 | 11,086 | 3,953 | 1,064 | 726 |
2765
- | \`time-input\` | 148,087 | 46,297 | 38,913 | 28,815 | 7,042 | 5,924 |
2766
- | \`time-picker\` | 107,250 | 34,027 | 27,969 | 18,980 | 5,090 | 4,122 |
2767
- | \`timeline\` | 79,206 | 25,596 | 21,098 | 1,809 | 365 | 300 |
2768
- | \`toast\` | 82,563 | 26,731 | 21,884 | 4,078 | 959 | 769 |
2769
- | \`toggle\` | 44,055 | 13,155 | 11,608 | 3,342 | 817 | 574 |
2770
- | \`toolbar\` | 33,246 | 10,621 | 9,327 | 2,624 | 749 | 601 |
2771
- | \`tooltip\` | 62,994 | 21,020 | 18,657 | 6,369 | 1,736 | 1,416 |
2772
- | \`tour\` | 68,711 | 22,383 | 19,798 | 10,945 | 2,735 | 2,140 |
2773
- | \`tree\` | 89,391 | 28,923 | 23,646 | 7,223 | 1,938 | 1,478 |
2774
- | \`trend\` | 78,084 | 25,393 | 20,935 | 1,056 | 264 | 347 |
2775
- | \`video\` | 145,674 | 45,979 | 38,881 | 32,513 | 7,667 | 6,523 |
2776
- | \`video-playlist\` | 124,965 | 40,646 | 34,154 | 14,933 | 3,484 | 2,875 |
2777
- | \`virtual-list\` | 37,053 | 11,852 | 10,471 | 2,413 | 701 | 486 |
2890
+ | \`accordion\` | 91,094 | 29,961 | 24,447 | 2,875 | 746 | 648 |
2891
+ | \`announcement\` | 88,510 | 29,143 | 23,730 | 1,386 | 360 | 271 |
2892
+ | \`app-header\` | 32,096 | 10,066 | 8,865 | 1,248 | 299 | 205 |
2893
+ | \`area-chart\` | 78,018 | 26,017 | 22,902 | 11,004 | 3,383 | 2,774 |
2894
+ | \`avatar\` | 34,145 | 10,660 | 9,402 | 3,257 | 893 | 753 |
2895
+ | \`badge\` | 31,632 | 10,004 | 8,783 | 1,163 | 301 | 269 |
2896
+ | \`bar-chart\` | 79,669 | 26,387 | 23,299 | 12,644 | 3,738 | 3,095 |
2897
+ | \`blockquote\` | 31,646 | 10,021 | 8,813 | 774 | 178 | 144 |
2898
+ | \`breadcrumbs\` | 87,550 | 28,471 | 23,352 | 1,965 | 464 | 316 |
2899
+ | \`button\` | 36,204 | 11,250 | 9,854 | 3,095 | 813 | 639 |
2900
+ | \`button-group\` | 31,502 | 9,910 | 8,724 | 661 | 145 | 32 |
2901
+ | \`callout\` | 86,670 | 28,326 | 23,244 | 914 | 249 | 266 |
2902
+ | \`canvas\` | 84,235 | 25,521 | 22,341 | 46,815 | 14,028 | 11,911 |
2903
+ | \`card\` | 31,536 | 9,922 | 8,751 | 694 | 143 | 135 |
2904
+ | \`carousel\` | 96,953 | 31,454 | 25,821 | 10,942 | 2,796 | 2,278 |
2905
+ | \`chat\` | 110,261 | 36,277 | 29,701 | 17,447 | 5,130 | 4,237 |
2906
+ | \`checkbox\` | 40,192 | 12,129 | 10,643 | 2,335 | 673 | 446 |
2907
+ | \`checkbox-group\` | 43,317 | 12,822 | 11,295 | 4,939 | 1,284 | 894 |
2908
+ | \`code\` | 30,121 | 9,492 | 8,354 | 451 | 84 | 97 |
2909
+ | \`code-block\` | 132,294 | 43,489 | 36,582 | 17,201 | 4,527 | 3,861 |
2910
+ | \`color-input\` | 149,793 | 47,470 | 39,966 | 25,273 | 5,960 | 5,020 |
2911
+ | \`color-picker\` | 116,284 | 36,859 | 30,323 | 19,215 | 4,647 | 3,875 |
2912
+ | \`combobox\` | 144,980 | 46,194 | 38,769 | 21,033 | 5,273 | 4,211 |
2913
+ | \`command\` | 114,976 | 36,164 | 29,584 | 17,997 | 4,638 | 3,804 |
2914
+ | \`copy-button\` | 126,892 | 41,852 | 35,201 | 11,796 | 2,942 | 2,347 |
2915
+ | \`data-table\` | 183,174 | 56,117 | 47,455 | 55,522 | 14,122 | 11,635 |
2916
+ | \`date-input\` | 143,336 | 45,714 | 38,337 | 19,132 | 4,881 | 3,996 |
2917
+ | \`date-picker\` | 98,729 | 32,189 | 26,267 | 9,900 | 2,757 | 2,231 |
2918
+ | \`description-list\` | 31,605 | 9,858 | 8,685 | 1,132 | 208 | 130 |
2919
+ | \`dialog\` | 35,154 | 10,963 | 9,662 | 2,717 | 802 | 639 |
2920
+ | \`divider\` | 31,852 | 10,099 | 8,872 | 981 | 251 | 167 |
2921
+ | \`donut-chart\` | 75,801 | 24,975 | 22,109 | 10,214 | 2,990 | 2,493 |
2922
+ | \`drawer\` | 33,907 | 10,598 | 9,310 | 1,761 | 481 | 407 |
2923
+ | \`drilldown\` | 95,565 | 31,332 | 25,473 | 5,704 | 1,526 | 1,130 |
2924
+ | \`empty\` | 32,099 | 10,157 | 8,916 | 956 | 241 | 227 |
2925
+ | \`file-input\` | 98,837 | 32,117 | 26,213 | 6,170 | 1,786 | 1,412 |
2926
+ | \`filter-input\` | 155,578 | 48,898 | 41,127 | 27,973 | 6,807 | 5,647 |
2927
+ | \`format-date\` | 35,115 | 11,078 | 9,788 | 2,867 | 729 | 551 |
2928
+ | \`heatmap\` | 77,023 | 25,205 | 22,244 | 10,872 | 3,019 | 2,401 |
2929
+ | \`icon\` | 86,237 | 28,154 | 23,061 | 1,018 | 250 | 189 |
2930
+ | \`icon-button\` | 36,603 | 11,278 | 9,942 | 3,494 | 850 | 636 |
2931
+ | \`image\` | 33,675 | 10,457 | 9,201 | 3,156 | 826 | 627 |
2932
+ | \`input\` | 97,927 | 31,604 | 25,803 | 4,702 | 1,307 | 962 |
2933
+ | \`kbd\` | 33,456 | 10,687 | 9,426 | 2,976 | 973 | 733 |
2934
+ | \`legend\` | 35,508 | 11,188 | 9,838 | 1,080 | 280 | 201 |
2935
+ | \`lightbox\` | 39,872 | 12,217 | 10,697 | 4,807 | 1,271 | 1,017 |
2936
+ | \`line-chart\` | 77,599 | 25,717 | 22,776 | 10,667 | 3,097 | 2,589 |
2937
+ | \`list\` | 32,558 | 10,095 | 8,878 | 1,726 | 362 | 269 |
2938
+ | \`listbox\` | 106,688 | 34,289 | 27,995 | 11,194 | 3,052 | 2,438 |
2939
+ | \`loader\` | 31,742 | 10,028 | 8,830 | 900 | 233 | 132 |
2940
+ | \`map\` | 122,721 | 37,175 | 30,653 | 29,314 | 6,725 | 5,608 |
2941
+ | \`megamenu\` | 61,983 | 20,721 | 18,296 | 4,941 | 1,356 | 981 |
2942
+ | \`menu\` | 125,668 | 41,786 | 35,006 | 8,848 | 2,234 | 1,840 |
2943
+ | \`meter\` | 34,932 | 10,876 | 9,580 | 4,099 | 1,058 | 859 |
2944
+ | \`navigation\` | 33,436 | 10,558 | 9,284 | 1,361 | 349 | 257 |
2945
+ | \`notifications\` | 102,744 | 32,907 | 26,890 | 11,383 | 2,676 | 2,227 |
2946
+ | \`number-input\` | 100,853 | 32,415 | 26,475 | 7,625 | 2,030 | 1,508 |
2947
+ | \`object-inspector\` | 139,942 | 46,072 | 38,783 | 19,463 | 5,189 | 4,378 |
2948
+ | \`option\` | 33,772 | 10,461 | 9,217 | 2,933 | 672 | 480 |
2949
+ | \`outline\` | 36,860 | 11,745 | 10,369 | 4,628 | 1,392 | 1,144 |
2950
+ | \`pagination\` | 148,933 | 46,856 | 39,303 | 27,534 | 6,482 | 5,267 |
2951
+ | \`pin-input\` | 43,108 | 13,048 | 11,486 | 5,194 | 1,552 | 1,216 |
2952
+ | \`popover\` | 59,189 | 19,958 | 17,628 | 1,899 | 507 | 347 |
2953
+ | \`progress\` | 32,783 | 10,304 | 9,102 | 1,951 | 481 | 369 |
2954
+ | \`qr-code\` | 43,432 | 14,343 | 12,661 | 12,983 | 4,719 | 4,069 |
2955
+ | \`quote\` | 31,025 | 9,783 | 8,610 | 552 | 123 | 104 |
2956
+ | \`radio\` | 42,370 | 12,589 | 11,040 | 2,822 | 733 | 464 |
2957
+ | \`rating\` | 44,843 | 13,635 | 12,041 | 6,605 | 1,900 | 1,477 |
2958
+ | \`scatter-chart\` | 77,503 | 25,634 | 22,597 | 11,346 | 3,421 | 2,737 |
2959
+ | \`scroll-area\` | 33,268 | 10,471 | 9,200 | 2,743 | 765 | 567 |
2960
+ | \`select\` | 137,043 | 44,268 | 37,080 | 15,857 | 4,039 | 3,124 |
2961
+ | \`skeleton\` | 30,214 | 9,526 | 8,422 | 544 | 117 | 36 |
2962
+ | \`skip-link\` | 31,804 | 10,088 | 8,868 | 1,178 | 357 | 240 |
2963
+ | \`slider\` | 43,602 | 13,061 | 11,532 | 5,535 | 1,517 | 1,205 |
2964
+ | \`sparkline\` | 37,927 | 12,212 | 10,794 | 2,387 | 781 | 631 |
2965
+ | \`speed-dial\` | 117,214 | 39,375 | 33,131 | 3,743 | 960 | 624 |
2966
+ | \`splitter\` | 41,307 | 12,532 | 11,098 | 10,282 | 2,625 | 2,168 |
2967
+ | \`stat\` | 31,990 | 9,962 | 8,782 | 1,148 | 213 | 119 |
2968
+ | \`steps\` | 95,678 | 30,919 | 25,246 | 6,177 | 1,502 | 1,164 |
2969
+ | \`switch\` | 39,809 | 12,087 | 10,643 | 1,550 | 472 | 410 |
2970
+ | \`table\` | 97,348 | 31,852 | 25,954 | 9,616 | 2,614 | 2,191 |
2971
+ | \`tabs\` | 39,606 | 12,059 | 10,597 | 3,925 | 893 | 641 |
2972
+ | \`tag\` | 86,950 | 28,406 | 23,212 | 895 | 198 | 155 |
2973
+ | \`textarea\` | 42,350 | 12,677 | 11,152 | 3,953 | 1,090 | 749 |
2974
+ | \`time-input\` | 156,280 | 48,922 | 41,124 | 28,815 | 7,097 | 5,819 |
2975
+ | \`time-picker\` | 115,443 | 36,869 | 30,195 | 18,980 | 5,124 | 4,167 |
2976
+ | \`timeline\` | 87,399 | 28,392 | 23,278 | 1,809 | 398 | 322 |
2977
+ | \`toast\` | 90,756 | 29,542 | 24,147 | 4,078 | 977 | 763 |
2978
+ | \`toggle\` | 44,405 | 13,199 | 11,591 | 3,342 | 854 | 628 |
2979
+ | \`toolbar\` | 33,596 | 10,655 | 9,386 | 2,624 | 781 | 479 |
2980
+ | \`tooltip\` | 63,344 | 21,055 | 18,665 | 6,369 | 1,774 | 1,363 |
2981
+ | \`tour\` | 69,061 | 22,424 | 19,808 | 10,945 | 2,781 | 2,269 |
2982
+ | \`tree\` | 97,584 | 31,762 | 25,849 | 7,223 | 1,962 | 1,541 |
2983
+ | \`trend\` | 86,277 | 28,181 | 23,125 | 1,056 | 289 | 336 |
2984
+ | \`video\` | 153,867 | 48,625 | 41,162 | 32,513 | 7,710 | 6,651 |
2985
+ | \`video-playlist\` | 133,158 | 43,416 | 36,409 | 14,933 | 3,508 | 2,872 |
2986
+ | \`virtual-list\` | 37,403 | 11,898 | 10,492 | 2,413 | 727 | 521 |
2778
2987
 
2779
2988
  ### Styled tier
2780
2989
 
@@ -2782,109 +2991,109 @@ The headless tier plus presentation. \`bun add @fusion.dev/helix\` installs this
2782
2991
 
2783
2992
  | Family | Alone raw | Alone gzip | Alone brotli | Added raw | Added gzip | Added brotli |
2784
2993
  |---|---|---|---|---|---|---|
2785
- | \`accordion\` | 86,243 | 27,975 | 22,881 | 6,204 | 1,522 | 1,370 |
2786
- | \`announcement\` | 84,879 | 27,390 | 22,450 | 5,932 | 1,398 | 1,231 |
2787
- | \`app-header\` | 35,636 | 10,930 | 9,626 | 5,121 | 1,186 | 968 |
2788
- | \`area-chart\` | 85,054 | 27,582 | 24,425 | 18,366 | 4,989 | 4,120 |
2789
- | \`aura\` | 98,773 | 33,422 | 28,965 | 65,483 | 22,875 | 19,664 |
2790
- | \`avatar\` | 37,381 | 11,380 | 10,043 | 6,833 | 1,625 | 1,385 |
2791
- | \`badge\` | 34,386 | 10,667 | 9,371 | 4,250 | 969 | 771 |
2792
- | \`bar-chart\` | 92,123 | 28,884 | 25,506 | 25,425 | 6,308 | 5,287 |
2793
- | \`blockquote\` | 32,452 | 10,273 | 9,053 | 1,914 | 447 | 347 |
2794
- | \`breadcrumbs\` | 82,923 | 26,471 | 21,873 | 5,518 | 1,215 | 1,004 |
2795
- | \`button\` | 41,947 | 12,322 | 10,856 | 9,170 | 1,896 | 1,563 |
2796
- | \`button-group\` | 32,828 | 10,248 | 9,030 | 2,320 | 501 | 400 |
2797
- | \`callout\` | 80,478 | 26,064 | 21,528 | 2,899 | 744 | 725 |
2798
- | \`canvas\` | 102,743 | 28,891 | 25,198 | 65,878 | 17,483 | 14,799 |
2799
- | \`card\` | 34,419 | 10,712 | 9,427 | 3,915 | 947 | 714 |
2800
- | \`carousel\` | 99,548 | 30,332 | 25,169 | 21,719 | 4,514 | 3,835 |
2801
- | \`chat\` | 116,225 | 35,929 | 29,677 | 31,590 | 7,633 | 6,375 |
2802
- | \`checkbox\` | 46,351 | 13,506 | 11,862 | 8,828 | 2,064 | 1,753 |
2803
- | \`checkbox-group\` | 45,150 | 13,354 | 11,757 | 7,108 | 1,817 | 1,429 |
2804
- | \`code\` | 30,848 | 9,746 | 8,571 | 1,511 | 348 | 324 |
2805
- | \`code-block\` | 140,551 | 43,624 | 36,810 | 33,630 | 7,225 | 6,052 |
2806
- | \`color-input\` | 175,183 | 49,952 | 42,280 | 58,836 | 11,170 | 9,615 |
2807
- | \`color-picker\` | 135,971 | 38,505 | 32,062 | 47,089 | 9,156 | 7,851 |
2808
- | \`combobox\` | 151,739 | 46,130 | 38,874 | 35,962 | 7,871 | 6,514 |
2809
- | \`command\` | 117,437 | 35,400 | 29,194 | 28,637 | 6,693 | 5,567 |
2810
- | \`copy-button\` | 128,703 | 40,894 | 34,435 | 21,784 | 4,647 | 3,838 |
2811
- | \`data-table\` | 212,351 | 59,994 | 50,477 | 92,625 | 20,552 | 16,824 |
2812
- | \`date-input\` | 151,056 | 46,026 | 38,825 | 35,034 | 7,835 | 6,560 |
2813
- | \`date-picker\` | 96,153 | 30,498 | 25,054 | 15,499 | 3,884 | 3,213 |
2814
- | \`description-list\` | 33,633 | 10,391 | 9,137 | 3,502 | 762 | 677 |
2815
- | \`dialog\` | 39,181 | 11,931 | 10,532 | 7,079 | 1,783 | 1,435 |
2816
- | \`divider\` | 33,658 | 10,583 | 9,299 | 3,120 | 729 | 567 |
2817
- | \`donut-chart\` | 84,558 | 26,826 | 23,735 | 19,297 | 4,922 | 4,114 |
2818
- | \`drawer\` | 37,820 | 11,562 | 10,177 | 6,007 | 1,468 | 1,197 |
2819
- | \`drilldown\` | 92,069 | 29,589 | 24,176 | 10,393 | 2,512 | 2,051 |
2820
- | \`empty\` | 33,189 | 10,558 | 9,258 | 2,380 | 655 | 541 |
2821
- | \`file-input\` | 101,924 | 31,552 | 25,919 | 17,451 | 3,979 | 3,317 |
2822
- | \`filter-input\` | 175,598 | 50,781 | 42,812 | 56,180 | 11,354 | 9,494 |
2823
- | \`flex\` | 32,209 | 10,095 | 8,884 | 2,078 | 429 | 354 |
2824
- | \`format-date\` | 35,413 | 11,181 | 9,904 | 3,497 | 850 | 639 |
2825
- | \`grid\` | 32,663 | 10,250 | 9,017 | 2,528 | 571 | 510 |
2826
- | \`heatmap\` | 83,471 | 26,569 | 23,519 | 17,648 | 4,426 | 3,717 |
2827
- | \`icon\` | 78,750 | 25,535 | 20,998 | 1,707 | 395 | 278 |
2828
- | \`icon-button\` | 42,268 | 12,254 | 10,774 | 9,495 | 1,824 | 1,461 |
2829
- | \`image\` | 35,027 | 10,897 | 9,588 | 4,840 | 1,280 | 1,005 |
2830
- | \`input\` | 96,001 | 30,194 | 24,737 | 10,963 | 2,646 | 2,136 |
2831
- | \`kbd\` | 34,518 | 11,102 | 9,772 | 4,373 | 1,397 | 1,125 |
2832
- | \`legend\` | 39,974 | 12,265 | 10,769 | 5,790 | 1,373 | 1,053 |
2833
- | \`lightbox\` | 42,535 | 12,934 | 11,397 | 7,805 | 2,001 | 1,641 |
2834
- | \`line-chart\` | 87,020 | 27,684 | 24,496 | 20,419 | 5,138 | 4,277 |
2835
- | \`list\` | 36,274 | 11,001 | 9,667 | 5,782 | 1,289 | 1,052 |
2836
- | \`listbox\` | 102,914 | 32,484 | 26,576 | 15,602 | 4,043 | 3,239 |
2837
- | \`loader\` | 34,558 | 10,756 | 9,465 | 4,051 | 972 | 882 |
2838
- | \`map\` | 78,398 | 19,792 | 17,409 | 39,970 | 7,880 | 6,635 |
2839
- | \`megamenu\` | 66,514 | 21,751 | 19,257 | 9,805 | 2,400 | 2,031 |
2840
- | \`menu\` | 125,002 | 40,682 | 34,240 | 16,355 | 3,816 | 3,081 |
2841
- | \`meter\` | 39,980 | 11,977 | 10,567 | 9,479 | 2,196 | 1,967 |
2842
- | \`navigation\` | 34,467 | 10,912 | 9,604 | 2,726 | 726 | 537 |
2843
- | \`notifications\` | 107,662 | 32,470 | 26,790 | 24,486 | 5,061 | 4,234 |
2844
- | \`number-input\` | 97,442 | 30,741 | 25,172 | 12,396 | 3,121 | 2,483 |
2845
- | \`object-inspector\` | 145,386 | 45,727 | 38,558 | 33,080 | 7,507 | 6,384 |
2846
- | \`option\` | 36,676 | 11,333 | 9,993 | 6,176 | 1,538 | 1,215 |
2847
- | \`orb\` | 41,405 | 13,728 | 12,132 | 8,623 | 3,194 | 2,772 |
2848
- | \`outline\` | 40,250 | 12,490 | 11,050 | 8,351 | 2,157 | 1,718 |
2849
- | \`pagination\` | 158,625 | 47,196 | 39,768 | 45,401 | 9,510 | 7,909 |
2850
- | \`pin-input\` | 45,825 | 13,797 | 12,162 | 8,244 | 2,321 | 1,836 |
2851
- | \`popover\` | 61,475 | 20,565 | 18,186 | 4,517 | 1,139 | 908 |
2852
- | \`progress\` | 37,462 | 11,435 | 10,114 | 6,962 | 1,631 | 1,440 |
2853
- | \`qr-code\` | 44,745 | 14,729 | 12,988 | 14,629 | 5,141 | 4,411 |
2854
- | \`quote\` | 31,330 | 9,901 | 8,697 | 1,191 | 258 | 173 |
2855
- | \`radio\` | 50,217 | 14,033 | 12,351 | 11,010 | 2,231 | 1,866 |
2856
- | \`rating\` | 48,707 | 14,803 | 13,052 | 10,802 | 3,067 | 2,455 |
2857
- | \`sandbox\` | 66,692 | 17,792 | 15,758 | 35,718 | 7,890 | 6,662 |
2858
- | \`scatter-chart\` | 85,545 | 27,403 | 24,187 | 19,718 | 5,218 | 4,345 |
2859
- | \`scroll-area\` | 36,066 | 11,084 | 9,734 | 5,874 | 1,400 | 1,103 |
2860
- | \`select\` | 141,605 | 43,930 | 36,894 | 28,601 | 6,420 | 5,278 |
2861
- | \`skeleton\` | 32,382 | 10,236 | 9,004 | 2,242 | 571 | 435 |
2862
- | \`skip-link\` | 32,917 | 10,453 | 9,185 | 2,624 | 728 | 562 |
2863
- | \`slider\` | 54,234 | 14,993 | 13,257 | 16,500 | 3,483 | 2,950 |
2864
- | \`sparkline\` | 41,495 | 13,116 | 11,576 | 6,293 | 1,736 | 1,483 |
2865
- | \`speed-dial\` | 116,653 | 38,164 | 32,130 | 11,356 | 2,375 | 1,911 |
2866
- | \`splitter\` | 47,029 | 13,495 | 11,985 | 16,336 | 3,624 | 3,080 |
2867
- | \`stat\` | 34,456 | 10,547 | 9,311 | 3,954 | 814 | 717 |
2868
- | \`steps\` | 101,103 | 30,547 | 25,231 | 19,784 | 3,900 | 3,290 |
2869
- | \`switch\` | 43,727 | 13,096 | 11,526 | 5,803 | 1,510 | 1,260 |
2870
- | \`table\` | 94,492 | 30,072 | 24,671 | 14,947 | 3,695 | 3,121 |
2871
- | \`tabs\` | 45,492 | 13,287 | 11,706 | 10,154 | 2,185 | 1,781 |
2872
- | \`tag\` | 81,960 | 26,491 | 21,687 | 4,083 | 992 | 805 |
2873
- | \`text\` | 34,116 | 10,386 | 9,128 | 3,987 | 800 | 674 |
2874
- | \`textarea\` | 45,337 | 13,450 | 11,805 | 7,277 | 1,904 | 1,528 |
2875
- | \`time-input\` | 169,479 | 49,807 | 42,031 | 50,189 | 10,656 | 8,990 |
2876
- | \`time-picker\` | 118,880 | 36,173 | 29,854 | 30,598 | 7,288 | 6,001 |
2877
- | \`timeline\` | 82,519 | 26,351 | 21,755 | 5,110 | 1,115 | 952 |
2878
- | \`toast\` | 90,096 | 28,398 | 23,346 | 11,599 | 2,602 | 2,126 |
2879
- | \`toggle\` | 49,152 | 14,337 | 12,673 | 8,427 | 2,043 | 1,670 |
2880
- | \`toolbar\` | 34,538 | 10,914 | 9,578 | 3,899 | 1,061 | 803 |
2881
- | \`tooltip\` | 66,072 | 21,770 | 19,269 | 9,429 | 2,459 | 1,945 |
2882
- | \`tour\` | 78,262 | 23,991 | 21,278 | 20,478 | 4,382 | 3,594 |
2883
- | \`tree\` | 95,241 | 30,320 | 24,831 | 13,069 | 3,349 | 2,711 |
2884
- | \`trend\` | 81,303 | 26,123 | 21,520 | 4,271 | 953 | 805 |
2885
- | \`video\` | 165,092 | 49,434 | 41,913 | 51,911 | 11,204 | 9,633 |
2886
- | \`video-playlist\` | 139,082 | 43,237 | 36,399 | 29,031 | 6,050 | 5,047 |
2887
- | \`virtual-list\` | 37,845 | 12,063 | 10,639 | 3,187 | 914 | 780 |
2994
+ | \`accordion\` | 94,436 | 30,803 | 25,127 | 6,204 | 1,544 | 1,281 |
2995
+ | \`announcement\` | 93,072 | 30,238 | 24,620 | 5,932 | 1,416 | 1,192 |
2996
+ | \`app-header\` | 35,986 | 10,967 | 9,679 | 5,121 | 1,230 | 975 |
2997
+ | \`area-chart\` | 85,404 | 27,630 | 24,345 | 18,366 | 5,024 | 4,121 |
2998
+ | \`aura\` | 99,123 | 33,456 | 29,000 | 65,483 | 23,039 | 19,659 |
2999
+ | \`avatar\` | 37,731 | 11,417 | 10,082 | 6,833 | 1,651 | 1,391 |
3000
+ | \`badge\` | 34,736 | 10,707 | 9,390 | 4,250 | 1,014 | 791 |
3001
+ | \`bar-chart\` | 92,473 | 28,931 | 25,584 | 25,425 | 6,335 | 5,249 |
3002
+ | \`blockquote\` | 32,802 | 10,316 | 9,102 | 1,914 | 482 | 367 |
3003
+ | \`breadcrumbs\` | 91,116 | 29,289 | 24,028 | 5,518 | 1,250 | 1,004 |
3004
+ | \`button\` | 42,297 | 12,358 | 10,881 | 9,170 | 1,923 | 1,560 |
3005
+ | \`button-group\` | 33,178 | 10,286 | 9,051 | 2,320 | 538 | 379 |
3006
+ | \`callout\` | 88,671 | 28,886 | 23,724 | 2,899 | 776 | 645 |
3007
+ | \`canvas\` | 103,414 | 29,000 | 25,323 | 65,979 | 17,556 | 14,869 |
3008
+ | \`card\` | 34,769 | 10,747 | 9,440 | 3,915 | 989 | 841 |
3009
+ | \`carousel\` | 107,741 | 33,201 | 27,421 | 21,719 | 4,565 | 3,880 |
3010
+ | \`chat\` | 124,418 | 38,793 | 31,978 | 31,590 | 7,665 | 6,407 |
3011
+ | \`checkbox\` | 46,701 | 13,549 | 11,892 | 8,828 | 2,103 | 1,710 |
3012
+ | \`checkbox-group\` | 45,500 | 13,393 | 11,759 | 7,108 | 1,840 | 1,412 |
3013
+ | \`code\` | 31,198 | 9,782 | 8,614 | 1,511 | 387 | 289 |
3014
+ | \`code-block\` | 148,744 | 46,385 | 38,986 | 33,630 | 7,268 | 6,139 |
3015
+ | \`color-input\` | 183,376 | 52,599 | 44,584 | 58,836 | 11,203 | 9,512 |
3016
+ | \`color-picker\` | 144,164 | 41,370 | 34,268 | 47,089 | 9,202 | 7,817 |
3017
+ | \`combobox\` | 159,990 | 48,783 | 41,021 | 36,020 | 7,936 | 6,553 |
3018
+ | \`command\` | 125,630 | 38,230 | 31,442 | 28,637 | 6,743 | 5,562 |
3019
+ | \`copy-button\` | 136,896 | 43,653 | 36,646 | 21,784 | 4,665 | 3,972 |
3020
+ | \`data-table\` | 220,801 | 62,714 | 52,791 | 92,882 | 20,663 | 16,995 |
3021
+ | \`date-input\` | 159,249 | 48,641 | 41,040 | 35,034 | 7,876 | 6,501 |
3022
+ | \`date-picker\` | 104,346 | 33,365 | 27,288 | 15,499 | 3,909 | 3,160 |
3023
+ | \`description-list\` | 33,983 | 10,434 | 9,183 | 3,502 | 796 | 605 |
3024
+ | \`dialog\` | 39,531 | 11,977 | 10,564 | 7,079 | 1,814 | 1,563 |
3025
+ | \`divider\` | 34,008 | 10,622 | 9,326 | 3,120 | 774 | 678 |
3026
+ | \`donut-chart\` | 84,908 | 26,866 | 23,761 | 19,297 | 4,956 | 4,091 |
3027
+ | \`drawer\` | 38,170 | 11,601 | 10,221 | 6,007 | 1,505 | 1,265 |
3028
+ | \`drilldown\` | 100,262 | 32,421 | 26,422 | 10,393 | 2,555 | 2,122 |
3029
+ | \`empty\` | 33,539 | 10,599 | 9,295 | 2,380 | 698 | 551 |
3030
+ | \`file-input\` | 110,117 | 34,378 | 28,171 | 17,451 | 3,989 | 3,327 |
3031
+ | \`filter-input\` | 183,791 | 53,397 | 45,052 | 56,180 | 11,403 | 9,421 |
3032
+ | \`flex\` | 32,559 | 10,138 | 8,909 | 2,078 | 468 | 364 |
3033
+ | \`format-date\` | 35,763 | 11,219 | 9,943 | 3,497 | 885 | 697 |
3034
+ | \`grid\` | 33,013 | 10,291 | 9,069 | 2,528 | 609 | 570 |
3035
+ | \`heatmap\` | 83,821 | 26,607 | 23,580 | 17,648 | 4,473 | 3,629 |
3036
+ | \`icon\` | 86,943 | 28,331 | 23,193 | 1,707 | 425 | 316 |
3037
+ | \`icon-button\` | 42,618 | 12,294 | 10,791 | 9,495 | 1,850 | 1,552 |
3038
+ | \`image\` | 35,377 | 10,931 | 9,621 | 4,840 | 1,317 | 1,060 |
3039
+ | \`input\` | 104,194 | 33,015 | 26,960 | 10,963 | 2,662 | 2,100 |
3040
+ | \`kbd\` | 34,868 | 11,148 | 9,814 | 4,373 | 1,429 | 1,235 |
3041
+ | \`legend\` | 40,324 | 12,300 | 10,784 | 5,790 | 1,413 | 1,075 |
3042
+ | \`lightbox\` | 42,885 | 12,979 | 11,350 | 7,805 | 2,026 | 1,721 |
3043
+ | \`line-chart\` | 87,370 | 27,730 | 24,433 | 20,419 | 5,167 | 4,214 |
3044
+ | \`list\` | 36,624 | 11,044 | 9,710 | 5,782 | 1,310 | 1,168 |
3045
+ | \`listbox\` | 111,107 | 35,309 | 28,775 | 15,602 | 4,061 | 3,343 |
3046
+ | \`loader\` | 34,908 | 10,789 | 9,500 | 4,051 | 1,014 | 844 |
3047
+ | \`map\` | 156,143 | 42,153 | 35,047 | 62,720 | 11,792 | 9,859 |
3048
+ | \`megamenu\` | 66,864 | 21,788 | 19,283 | 9,805 | 2,435 | 2,020 |
3049
+ | \`menu\` | 133,195 | 43,427 | 36,394 | 16,355 | 3,832 | 3,154 |
3050
+ | \`meter\` | 40,330 | 12,019 | 10,617 | 9,479 | 2,233 | 1,931 |
3051
+ | \`navigation\` | 34,817 | 10,954 | 9,632 | 2,726 | 763 | 540 |
3052
+ | \`notifications\` | 115,855 | 35,336 | 28,991 | 24,486 | 5,085 | 4,287 |
3053
+ | \`number-input\` | 105,635 | 33,578 | 27,453 | 12,396 | 3,149 | 2,506 |
3054
+ | \`object-inspector\` | 153,579 | 48,310 | 40,755 | 33,080 | 7,549 | 6,299 |
3055
+ | \`option\` | 37,026 | 11,371 | 10,028 | 6,176 | 1,567 | 1,334 |
3056
+ | \`orb\` | 41,755 | 13,764 | 12,150 | 8,623 | 3,220 | 2,793 |
3057
+ | \`outline\` | 40,600 | 12,532 | 11,084 | 8,351 | 2,202 | 1,753 |
3058
+ | \`pagination\` | 166,818 | 49,878 | 41,998 | 45,401 | 9,557 | 7,918 |
3059
+ | \`pin-input\` | 46,175 | 13,840 | 12,186 | 8,244 | 2,351 | 1,819 |
3060
+ | \`popover\` | 61,825 | 20,604 | 18,244 | 4,517 | 1,174 | 1,004 |
3061
+ | \`progress\` | 37,812 | 11,474 | 10,153 | 6,962 | 1,680 | 1,508 |
3062
+ | \`qr-code\` | 45,095 | 14,767 | 13,013 | 14,629 | 5,167 | 4,380 |
3063
+ | \`quote\` | 31,680 | 9,948 | 8,744 | 1,191 | 293 | 148 |
3064
+ | \`radio\` | 50,567 | 14,074 | 12,400 | 11,010 | 2,264 | 1,817 |
3065
+ | \`rating\` | 49,057 | 14,833 | 13,064 | 10,802 | 3,090 | 2,572 |
3066
+ | \`sandbox\` | 67,042 | 17,834 | 15,810 | 35,718 | 7,929 | 6,736 |
3067
+ | \`scatter-chart\` | 85,895 | 27,442 | 24,218 | 19,718 | 5,251 | 4,358 |
3068
+ | \`scroll-area\` | 36,416 | 11,121 | 9,800 | 5,874 | 1,445 | 1,147 |
3069
+ | \`select\` | 149,798 | 46,656 | 39,120 | 28,601 | 6,454 | 5,257 |
3070
+ | \`skeleton\` | 32,732 | 10,282 | 9,043 | 2,242 | 616 | 472 |
3071
+ | \`skip-link\` | 33,267 | 10,490 | 9,214 | 2,624 | 757 | 648 |
3072
+ | \`slider\` | 54,584 | 15,031 | 13,273 | 16,500 | 3,526 | 2,952 |
3073
+ | \`sparkline\` | 41,845 | 13,167 | 11,589 | 6,293 | 1,766 | 1,499 |
3074
+ | \`speed-dial\` | 124,846 | 40,915 | 34,302 | 11,356 | 2,407 | 1,956 |
3075
+ | \`splitter\` | 47,379 | 13,536 | 12,018 | 16,336 | 3,660 | 3,070 |
3076
+ | \`stat\` | 34,806 | 10,587 | 9,343 | 3,954 | 849 | 744 |
3077
+ | \`steps\` | 109,296 | 33,391 | 27,447 | 19,784 | 3,926 | 3,283 |
3078
+ | \`switch\` | 44,077 | 13,135 | 11,529 | 5,803 | 1,545 | 1,370 |
3079
+ | \`table\` | 102,942 | 33,035 | 26,943 | 15,204 | 3,812 | 3,154 |
3080
+ | \`tabs\` | 45,842 | 13,332 | 11,742 | 10,154 | 2,208 | 1,761 |
3081
+ | \`tag\` | 90,153 | 29,299 | 23,951 | 4,083 | 1,021 | 870 |
3082
+ | \`text\` | 34,466 | 10,420 | 9,152 | 3,987 | 846 | 651 |
3083
+ | \`textarea\` | 45,687 | 13,497 | 11,850 | 7,277 | 1,925 | 1,489 |
3084
+ | \`time-input\` | 177,672 | 52,463 | 44,279 | 50,189 | 10,722 | 8,957 |
3085
+ | \`time-picker\` | 127,073 | 39,031 | 32,060 | 30,598 | 7,327 | 6,161 |
3086
+ | \`timeline\` | 90,712 | 29,168 | 23,939 | 5,110 | 1,145 | 944 |
3087
+ | \`toast\` | 98,289 | 31,259 | 25,616 | 11,599 | 2,619 | 2,152 |
3088
+ | \`toggle\` | 49,502 | 14,379 | 12,704 | 8,427 | 2,067 | 1,689 |
3089
+ | \`toolbar\` | 34,888 | 10,956 | 9,633 | 3,899 | 1,093 | 937 |
3090
+ | \`tooltip\` | 66,422 | 21,810 | 19,328 | 9,429 | 2,504 | 2,074 |
3091
+ | \`tour\` | 78,612 | 24,031 | 21,218 | 20,478 | 4,430 | 3,561 |
3092
+ | \`tree\` | 103,434 | 33,177 | 27,065 | 13,069 | 3,361 | 2,713 |
3093
+ | \`trend\` | 89,496 | 28,957 | 23,734 | 4,271 | 999 | 890 |
3094
+ | \`video\` | 173,285 | 52,095 | 44,174 | 51,911 | 11,251 | 9,651 |
3095
+ | \`video-playlist\` | 147,275 | 45,994 | 38,622 | 29,031 | 6,080 | 5,111 |
3096
+ | \`virtual-list\` | 38,195 | 12,105 | 10,634 | 3,187 | 947 | 691 |
2888
3097
 
2889
3098
  ## What an install adds to \`node_modules\`
2890
3099
 
@@ -2896,12 +3105,12 @@ stripped column shows the bytes we removed.
2896
3105
 
2897
3106
  | Package | Unpacked | Files | Source maps stripped | Runtime dependencies |
2898
3107
  |---|---|---|---|---|
2899
- | \`@fusion.dev/helix-core\` | 1,118,596 | 165 | 248,014 | \`@floating-ui/dom\`, \`@fusion.dev/helix-icons\` |
2900
- | \`@fusion.dev/helix-headless\` | 12,876,176 | 494 | 1,008,417 | \`@fusion.dev/helix-core\`, \`@fusion.dev/helix-icons\`, \`uqr\` |
2901
- | \`@fusion.dev/helix-icons\` | 131,512 | 21 | 44,809 | \`svgo\` |
2902
- | \`@fusion.dev/helix-styles\` | 101,805 | 6 | 0 | none |
3108
+ | \`@fusion.dev/helix-core\` | 1,127,867 | 165 | 249,701 | \`@floating-ui/dom\`, \`@fusion.dev/helix-icons\` |
3109
+ | \`@fusion.dev/helix-headless\` | 13,046,911 | 504 | 1,032,260 | \`@fusion.dev/helix-core\`, \`@fusion.dev/helix-icons\`, \`uqr\` |
3110
+ | \`@fusion.dev/helix-icons\` | 150,162 | 21 | 50,346 | \`svgo\` |
3111
+ | \`@fusion.dev/helix-styles\` | 102,108 | 6 | 0 | none |
2903
3112
  | \`@fusion.dev/helix-theme\` | 465,413 | 8 | 4,703 | none |
2904
- | \`@fusion.dev/helix\` | 13,914,310 | 848 | 355,824 | \`@fusion.dev/helix-core\`, \`@fusion.dev/helix-headless\`, \`@fusion.dev/helix-styles\` |
3113
+ | \`@fusion.dev/helix\` | 14,179,532 | 868 | 362,883 | \`@fusion.dev/helix-core\`, \`@fusion.dev/helix-headless\`, \`@fusion.dev/helix-styles\` |
2905
3114
 
2906
3115
  ## Not measured yet
2907
3116