le-kit 0.6.5 → 0.7.1

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.
Files changed (2) hide show
  1. package/LLM_CONTEXT.md +165 -1
  2. package/package.json +1 -1
package/LLM_CONTEXT.md CHANGED
@@ -17,7 +17,9 @@ This file is auto-generated and contains documentation for all Le-Kit web compon
17
17
  - [le-collapse](#le-collapse)
18
18
  - [le-combobox](#le-combobox)
19
19
  - [le-component](#le-component)
20
+ - [le-context-menu](#le-context-menu)
20
21
  - [le-current-heading](#le-current-heading)
22
+ - [le-drag-handle](#le-drag-handle)
21
23
  - [le-dropdown-base](#le-dropdown-base)
22
24
  - [le-header](#le-header)
23
25
  - [le-header-placeholder](#le-header-placeholder)
@@ -30,6 +32,7 @@ This file is auto-generated and contains documentation for all Le-Kit web compon
30
32
  - [le-overflow-menu](#le-overflow-menu)
31
33
  - [le-popover](#le-popover)
32
34
  - [le-popup](#le-popup)
35
+ - [le-preview-frame](#le-preview-frame)
33
36
  - [le-round-progress](#le-round-progress)
34
37
  - [le-scroll-progress](#le-scroll-progress)
35
38
  - [le-segmented-control](#le-segmented-control)
@@ -45,6 +48,8 @@ This file is auto-generated and contains documentation for all Le-Kit web compon
45
48
  - [le-tabs](#le-tabs)
46
49
  - [le-tag](#le-tag)
47
50
  - [le-text](#le-text)
51
+ - [le-toolbar](#le-toolbar)
52
+ - [le-toolbar-spacer](#le-toolbar-spacer)
48
53
  - [le-tooltip](#le-tooltip)
49
54
  - [le-turntable](#le-turntable)
50
55
  - [le-visibility](#le-visibility)
@@ -246,7 +251,7 @@ A flexible button component with multiple variants and states.
246
251
  |------|------|---------|-------------|
247
252
  | `el` | `HTMLElement` | | |
248
253
  | `mode` | `'default' \| 'admin' \| undefined` | | Mode of the popover should be 'default' for internal use |
249
- | `variant` | `'solid' \| 'outlined' \| 'clear' \| 'system'` | `'solid'` | Button variant style |
254
+ | `variant` | `'solid' \| 'outlined' \| 'clear' \| 'system'` | `'outlined'` | Button variant style |
250
255
  | `color` | `\| 'primary'
251
256
  \| 'secondary'
252
257
  \| 'success'
@@ -265,6 +270,9 @@ A flexible button component with multiple variants and states.
265
270
  | `motionPreset` | `'none' \| 'soft' \| 'fluid' \| 'spring' \| undefined` | | Optional per-instance motion preset override. |
266
271
  | `iconOnly` | `string \| Node \| undefined` | | Icon only button image or emoji if this prop is set, the button will render only the icon slot |
267
272
  | `iconStart` | `string \| Node \| undefined` | | Start icon image or emoji |
273
+ | `collapsible` | `boolean` | `false` | Enables responsive collapse to icon-only when the toolbar applies `collapse="icon"`. |
274
+ | `collapse` | `string \| undefined` | | Runtime collapse state controlled by responsive containers. |
275
+ | `collapsePriorityOffset` | `number` | `100` | Relative collapse priority offset for toolbar stepping. Higher numbers collapse earlier while keeping the button visible longer. |
268
276
  | `iconEnd` | `string \| Node \| undefined` | | End icon image or emoji |
269
277
  | `disabled` | `boolean` | `false` | Whether the button is disabled |
270
278
  | `type` | `'button' \| 'submit' \| 'reset'` | `'button'` | The button type attribute |
@@ -307,8 +315,11 @@ into an overflow "more" menu.
307
315
  | Name | Type | Default | Description |
308
316
  |------|------|---------|-------------|
309
317
  | `el` | `HTMLElement` | | |
318
+ | `label` | `string \| undefined` | | Optional label used when the whole group is represented as a parent item inside another component's overflow menu. |
310
319
  | `collapse` | `boolean \| number \| string \| undefined` | | Collapse mode. - `true`: show only the top-priority button - positive number: show top N buttons - `0`: show only the more button - negative number: hide abs(N) lowest-priority buttons Non-integers are rounded with `Math.round`. |
311
320
  | `overflowIcons` | `boolean` | `false` | When true, icons from collapsed buttons are shown in the overflow navigation list. |
321
+ | `disabled` | `boolean` | `false` | Disabled attribute, when the button group is disabled, all buttons inside will be disabled and the overflow menu will not be accessible. |
322
+ | `visibility` | `'visible' \| 'collapsing' \| 'collapsed' \| 'expanding'` | `'visible'` | Visibility state used by responsive containers such as le-toolbar. |
312
323
 
313
324
  ### Events
314
325
 
@@ -564,6 +575,39 @@ render() {
564
575
 
565
576
  ---
566
577
 
578
+ ## <le-context-menu>
579
+
580
+ Context menu component that displays a vertical navigation menu
581
+ when the user right-clicks or long-presses on its children.
582
+
583
+ ### Properties
584
+
585
+ | Name | Type | Default | Description |
586
+ |------|------|---------|-------------|
587
+ | `el` | `HTMLElement` | | |
588
+ | `open` | `boolean` | `false` | Whether the context menu is open. |
589
+ | `disabled` | `boolean` | `false` | Disables right-click and touch interactions. |
590
+ | `items` | `LeOption[] \| string` | `[]` | List of menu items represented as options. |
591
+ | `backdrop` | `boolean` | `false` | Whether to show a backdrop behind the menu, lifting the active item. |
592
+ | `pageScrollBehavior` | `'blocked' \| 'menu-close' \| 'fixed-menu'` | `'menu-close'` | Behavior of the menu on page scroll: - 'blocked': blocks page scroll - 'menu-close': closes the menu automatically on scroll (default) - 'fixed-menu': menu scrolls with the page |
593
+ | `position` | `'top' \| 'bottom' \| 'left' \| 'right' \| 'mouse'` | `'mouse'` | Position of the menu relative to the trigger. If 'mouse', positions next to mouse/touch coords. |
594
+ | `align` | `'start' \| 'center' \| 'end'` | `'start'` | Alignment of the menu relative to the trigger. |
595
+
596
+ ### Events
597
+
598
+ | Event | Type | Description |
599
+ |-------|------|-------------|
600
+ | `leContextMenuSelect` | `EventEmitter<LeContextMenuSelectDetail>` | Emitted when a menu item is selected. |
601
+ | `leContextMenuClose` | `EventEmitter<void>` | Emitted when the context menu is closed. |
602
+
603
+ ### Slots
604
+
605
+ | Name | Description |
606
+ |------|-------------|
607
+ | Default | Trigger content |
608
+
609
+ ---
610
+
567
611
  ## <le-current-heading>
568
612
 
569
613
  Shows a "smart" header title based on what has scrolled out of view.
@@ -586,6 +630,25 @@ When `selector` matches multiple elements, the title becomes the last element
586
630
 
587
631
  ---
588
632
 
633
+ ## <le-drag-handle>
634
+
635
+ Reusable drag handle used by resizable components.
636
+
637
+ ### Properties
638
+
639
+ | Name | Type | Default | Description |
640
+ |------|------|---------|-------------|
641
+ | `orientation` | `LeDragHandleOrientation` | `'vertical'` | Handle orientation (vertical = width drag, horizontal = height drag). |
642
+ | `placement` | `LeDragHandlePlacement` | `'end'` | Handle position on the owning edge. |
643
+
644
+ ### Slots
645
+
646
+ | Name | Description |
647
+ |------|-------------|
648
+ | Default | Optional assistive text for screen readers. |
649
+
650
+ ---
651
+
589
652
  ## <le-dropdown-base>
590
653
 
591
654
  Internal dropdown base component that provides shared functionality
@@ -819,6 +882,8 @@ Navigation component with vertical (tree) and horizontal (menu) layouts.
819
882
  | `emptyText` | `string` | `'No results found'` | Text shown when no items match the filter. |
820
883
  | `submenuSearchable` | `boolean` | `false` | Whether submenu popovers should include a filter input. |
821
884
  | `activationMode` | `LeNavigationActivationMode` | `'manual'` | Whether keyboard focus only highlights, or also activates immediately. |
885
+ | `autoScroll` | `boolean` | `false` | Automatically scroll the active item into view when the active URL changes or on initial load. - Initial load: instant (no animation) - Subsequent `activeUrl` changes: smooth Only applies to `vertical` orientation. |
886
+ | `togglePosition` | `'start' \| 'end'` | `'start'` | Position of the toggle arrow for items with children: 'start' | 'end' |
822
887
 
823
888
  ### Events
824
889
 
@@ -1012,6 +1077,47 @@ via leAlert(), leConfirm(), lePrompt().
1012
1077
 
1013
1078
  ---
1014
1079
 
1080
+ ## <le-preview-frame>
1081
+
1082
+ A resizable preview frame for showcasing responsive component behavior.
1083
+
1084
+ Wraps any content in a resizable viewport, complete with drag handle,
1085
+ width indicator, and preset device-size buttons. Designed for use in
1086
+ component demos and documentation.
1087
+
1088
+ ### Properties
1089
+
1090
+ | Name | Type | Default | Description |
1091
+ |------|------|---------|-------------|
1092
+ | `el` | `HTMLElement` | | |
1093
+ | `frameWidth` | `number \| undefined` | | Initial inner width of the preview viewport in pixels. Set to 0 or 'auto' to fill the available container width. |
1094
+ | `minWidth` | `number` | `240` | Minimum resizable width in pixels. |
1095
+ | `maxWidth` | `number` | `0` | Maximum resizable width in pixels. 0 = unconstrained. |
1096
+ | `showControls` | `boolean` | `true` | Whether to show the controls bar (breakpoint buttons + width badge). |
1097
+ | `resizable` | `boolean` | `true` | Whether to show drag resize handles. |
1098
+ | `handles` | `LePreviewFrameHandleSide[] \| string` | `'right'` | Which handles are rendered. Accepts "right", "left", "bottom", "left,right", etc. or a JSON string/array. |
1099
+ | `origin` | `LePreviewFrameResizeOrigin` | `'auto'` | Horizontal resize origin strategy. - auto: detects centered layouts and switches to center math - edge: keeps opposite edge fixed (default left-aligned behavior) - center: grows/shrinks from center |
1100
+ | `padding` | `number` | `0` | Extra layout padding to subtract from available container space. Useful when visual page padding is not detectable from the immediate parent. |
1101
+ | `breakpoints` | `LePreviewFrameBreakpoint[] \| string` | `DEFAULT_BREAKPOINTS` | Preset breakpoints shown as buttons. Can be a JSON string or a LePreviewFrameBreakpoint[]. |
1102
+ | `widthUnit` | `string` | `'px'` | Label for the width badge. Set empty to hide the unit suffix. |
1103
+ | `minHeight` | `number` | `64` | Minimum height of the viewport in pixels. |
1104
+ | `maxHeight` | `number` | `0` | Maximum resizable viewport height in pixels. 0 = unconstrained. |
1105
+
1106
+ ### Events
1107
+
1108
+ | Event | Type | Description |
1109
+ |-------|------|-------------|
1110
+ | `lePreviewFrameResize` | `EventEmitter<LePreviewFrameResizeDetail> \| undefined` | Emitted whenever the frame width changes (drag or preset button). |
1111
+
1112
+ ### Slots
1113
+
1114
+ | Name | Description |
1115
+ |------|-------------|
1116
+ | Default | The content to preview |
1117
+ | `"controls"` | Extra content inserted after the preset buttons |
1118
+
1119
+ ---
1120
+
1015
1121
  ## <le-round-progress>
1016
1122
 
1017
1123
  ### Properties
@@ -1135,8 +1241,11 @@ A select dropdown component for single selection.
1135
1241
  | `collapseAt` | `string \| undefined` | | Width breakpoint (in px or a CSS var like `--le-breakpoint-md`) below which the panel enters "narrow" mode. |
1136
1242
  | `narrowBehavior` | `LeSidePanelNarrowBehavior` | `'overlay'` | Behavior when in narrow mode. |
1137
1243
  | `sticky` | `boolean` | `false` | Whether the panel is sticky (remains visible when scrolling). |
1244
+ | `minPanelHeight` | `number` | `200` | Minimum panel height (px) when sticky full-height logic is active. |
1138
1245
  | `top` | `number \| 'under-header'` | `0` | Top offset for the sticky panel. |
1246
+ | `bottom` | `number \| 'under-footer'` | `0` | Bottom offset for sticky full-height calculations. |
1139
1247
  | `fullHeight` | `boolean` | `false` | Whether the sticky panel should stretch to full height. |
1248
+ | `margin` | `string \| number \| undefined` | | Optional panel margin override. Accepts CSS length (e.g. `16px`, `1rem`, `var(--space-4)`). |
1140
1249
  | `open` | `boolean` | `false` | Panel open state for narrow mode. - overlay: controls modal drawer visibility - push: controls whether panel is shown (non-modal) |
1141
1250
  | `collapsed` | `boolean` | `false` | Panel collapsed state for wide mode (fully hidden). |
1142
1251
  | `panelWidth` | `number` | `280` | Default panel width in pixels. |
@@ -1585,6 +1694,61 @@ toolbar for bold, italic, links, and paragraph type selection.
1585
1694
 
1586
1695
  ---
1587
1696
 
1697
+ ## <le-toolbar>
1698
+
1699
+ A priority-aware, overflow-safe toolbar component.
1700
+
1701
+ Items are slotted light-DOM children. Each item may carry a
1702
+ `priority` attribute (lower = more important). When there
1703
+ isn't enough space, lower-priority items move to an overflow menu.
1704
+
1705
+ Collapsible `le-button-group` children are asked to reduce their own
1706
+ footprint first before their contents are overflowed entirely.
1707
+
1708
+ ### Properties
1709
+
1710
+ | Name | Type | Default | Description |
1711
+ |------|------|---------|-------------|
1712
+ | `el` | `HTMLElement` | | |
1713
+ | `items` | `unknown \| undefined` | | Optional declarative items input. The current implementation is slot-driven, but when this prop changes we still invalidate the slotted-items cache and recompute layout. |
1714
+ | `alignItems` | `'start' \| 'center' \| 'end' \| 'stretch'` | `'start'` | Alignment of items along the main axis. |
1715
+ | `itemGap` | `string` | `'var(--le-toolbar-gap, var(--le-spacing-1, 4px))'` | Spacing between top-level toolbar items. Accepts any valid CSS length (e.g. `8px`, `0.5rem`, `var(--le-spacing-2)`). |
1716
+ | `overflowIcon` | `string` | `'ellipsis-horizontal'` | Icon for the overflow trigger button when no custom slot content is provided. |
1717
+ | `overflowLabel` | `string` | `'More'` | Accessible label for the overflow trigger button. |
1718
+ | `disablePopover` | `boolean` | `false` | Disable the built-in overflow popover. The toolbar will still compute overflow state and emit events, but won't render its own menu. Useful for custom overflow handling. |
1719
+ | `debugVirtualToolbar` | `boolean` | `false` | Temporary debug mode: render the virtual toolbar visibly above the live toolbar so collapse measurements can be inspected. |
1720
+ | `debugPauseBeforeMeasure` | `boolean` | `false` | Temporary debug mode: stop before measuring virtual widths so the virtual DOM can be inspected before collapse simulation mutates it. |
1721
+
1722
+ ### Events
1723
+
1724
+ | Event | Type | Description |
1725
+ |-------|------|-------------|
1726
+ | `leToolbarOverflowChange` | `EventEmitter<LeToolbarOverflowChangeDetail> \| undefined` | Emitted when the overflow state changes. |
1727
+
1728
+ ### Slots
1729
+
1730
+ | Name | Description |
1731
+ |------|-------------|
1732
+ | Default | Toolbar items |
1733
+ | `"more"` | Custom content for the overflow trigger button |
1734
+
1735
+ ---
1736
+
1737
+ ## <le-toolbar-spacer>
1738
+
1739
+ Flexible spacer for le-toolbar layouts.
1740
+
1741
+ Default behavior (no width): occupies available free space and shrinks naturally.
1742
+ With numeric `width`: behaves as a fixed-width spacer that can be collapsed by le-toolbar.
1743
+
1744
+ ### Properties
1745
+
1746
+ | Name | Type | Default | Description |
1747
+ |------|------|---------|-------------|
1748
+ | `width` | `number \| string \| undefined` | | Optional fixed width. Numeric values (e.g. `24`) are treated as px. String values may be any valid CSS width (e.g. `2rem`, `var(--le-spacing-2)`). |
1749
+
1750
+ ---
1751
+
1588
1752
  ## <le-tooltip>
1589
1753
 
1590
1754
  ### Properties
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "le-kit",
3
- "version": "0.6.5",
3
+ "version": "0.7.1",
4
4
  "description": "Themable web components library with CMS admin mode support",
5
5
  "main": "dist/index.cjs.js",
6
6
  "module": "dist/index.js",