lucent-ui 0.4.1 → 0.5.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.
package/dist/index.d.ts CHANGED
@@ -2,6 +2,7 @@ import { ButtonHTMLAttributes } from 'react';
2
2
  import { CSSProperties } from 'react';
3
3
  import { default as default_2 } from 'react';
4
4
  import { ForwardRefExoticComponent } from 'react';
5
+ import { HTMLAttributes } from 'react';
5
6
  import { ImgHTMLAttributes } from 'react';
6
7
  import { InputHTMLAttributes } from 'react';
7
8
  import { JSX as JSX_2 } from 'react/jsx-runtime';
@@ -9,7 +10,9 @@ import { MouseEventHandler } from 'react';
9
10
  import { ReactNode } from 'react';
10
11
  import { RefAttributes } from 'react';
11
12
  import { SelectHTMLAttributes } from 'react';
13
+ import { TdHTMLAttributes } from 'react';
12
14
  import { TextareaHTMLAttributes } from 'react';
15
+ import { ThHTMLAttributes } from 'react';
13
16
 
14
17
  export declare interface AccessibilityDescriptor {
15
18
  /** ARIA role applied to the root element */
@@ -117,6 +120,8 @@ export declare interface ButtonProps extends ButtonHTMLAttributes<HTMLButtonElem
117
120
  chevron?: boolean;
118
121
  /** Disables the built-in hover background/border overrides. Use when passing custom colours via style. */
119
122
  disableHoverStyles?: boolean;
123
+ /** If false, the component renders without any border. Useful when you want a solid "flat" look. */
124
+ bordered?: boolean;
120
125
  }
121
126
 
122
127
  export declare type ButtonSize = 'sm' | 'md' | 'lg';
@@ -155,6 +160,38 @@ export declare interface CheckboxProps extends Omit<InputHTMLAttributes<HTMLInpu
155
160
 
156
161
  export declare type CheckboxSize = 'sm' | 'md';
157
162
 
163
+ export declare function CodeBlock({ code, language, tabs, variant, helperText, showCopyButton, style, }: CodeBlockProps): JSX_2.Element;
164
+
165
+ export declare const CodeBlockManifest: ComponentManifest;
166
+
167
+ export declare interface CodeBlockProps {
168
+ /** Code string — used in single (non-tabbed) mode */
169
+ code?: string;
170
+ /** Language label shown in the header (non-tabbed mode only) */
171
+ language?: string;
172
+ /** Tabbed mode: each entry is a selectable code snippet */
173
+ tabs?: CodeBlockTab[];
174
+ /**
175
+ * 'code' (default) renders a <pre><code> block.
176
+ * 'prompt' renders a single-line display for AI prompts — full text is
177
+ * always copied even when visually truncated.
178
+ */
179
+ variant?: CodeBlockVariant;
180
+ /** Optional descriptive text rendered between the tab bar and the code area */
181
+ helperText?: string;
182
+ showCopyButton?: boolean;
183
+ style?: React.CSSProperties;
184
+ }
185
+
186
+ export declare interface CodeBlockTab {
187
+ label: string;
188
+ code: string;
189
+ language?: string;
190
+ icon?: ReactNode;
191
+ }
192
+
193
+ export declare type CodeBlockVariant = 'code' | 'prompt';
194
+
158
195
  export declare function Collapsible({ trigger, children, defaultOpen, open, onOpenChange, style }: CollapsibleProps): JSX_2.Element;
159
196
 
160
197
  export declare interface CollapsibleProps {
@@ -423,7 +460,7 @@ export declare interface InputProps extends Omit<InputHTMLAttributes<HTMLInputEl
423
460
  rightElement?: ReactNode;
424
461
  }
425
462
 
426
- export declare type InputType = 'text' | 'number' | 'password' | 'email' | 'tel' | 'url' | 'search';
463
+ export declare type InputType = 'text' | 'number' | 'password' | 'email' | 'tel' | 'url' | 'search' | 'color';
427
464
 
428
465
  export declare function isValidPropDescriptor(prop: unknown): prop is PropDescriptor;
429
466
 
@@ -662,6 +699,7 @@ declare interface SemanticColorTokens {
662
699
  accentHover: string;
663
700
  accentActive: string;
664
701
  accentSubtle: string;
702
+ accentBorder: string;
665
703
  successDefault: string;
666
704
  successSubtle: string;
667
705
  successText: string;
@@ -702,6 +740,24 @@ export declare interface SkeletonProps {
702
740
 
703
741
  export declare type SkeletonVariant = 'text' | 'circle' | 'rectangle';
704
742
 
743
+ export declare function Slider({ label, showValue, size, min, max, step, value, defaultValue, disabled, id, onChange, style, ...rest }: SliderProps): JSX_2.Element;
744
+
745
+ export declare const SliderManifest: ComponentManifest;
746
+
747
+ export declare interface SliderProps extends Omit<InputHTMLAttributes<HTMLInputElement>, 'size' | 'type'> {
748
+ label?: string;
749
+ showValue?: boolean;
750
+ size?: SliderSize;
751
+ min?: number;
752
+ max?: number;
753
+ step?: number;
754
+ value?: number;
755
+ defaultValue?: number;
756
+ onChange?: (e: React.ChangeEvent<HTMLInputElement>) => void;
757
+ }
758
+
759
+ export declare type SliderSize = 'sm' | 'md' | 'lg';
760
+
705
761
  declare interface SpacingTokens {
706
762
  space0: string;
707
763
  space1: string;
@@ -737,6 +793,29 @@ export declare interface TabItem {
737
793
  disabled?: boolean;
738
794
  }
739
795
 
796
+ export declare function Table({ striped, children, className, style, ...rest }: TableProps): JSX_2.Element;
797
+
798
+ export declare namespace Table {
799
+ var Head: ({ children, style, ...rest }: HTMLAttributes<HTMLTableSectionElement>) => JSX_2.Element;
800
+ var Body: ({ children, ...rest }: HTMLAttributes<HTMLTableSectionElement>) => JSX_2.Element;
801
+ var Foot: ({ children, style, ...rest }: HTMLAttributes<HTMLTableSectionElement>) => JSX_2.Element;
802
+ var Row: ({ children, className, ...rest }: HTMLAttributes<HTMLTableRowElement>) => JSX_2.Element;
803
+ var Cell: ({ as, children, style, ...rest }: TableCellProps) => JSX_2.Element;
804
+ }
805
+
806
+ export declare type TableCellProps = ({
807
+ as?: 'td';
808
+ } & TdHTMLAttributes<HTMLTableCellElement>) | ({
809
+ as: 'th';
810
+ } & ThHTMLAttributes<HTMLTableCellElement>);
811
+
812
+ export declare const TableManifest: ComponentManifest;
813
+
814
+ export declare interface TableProps extends HTMLAttributes<HTMLTableElement> {
815
+ /** Applies alternating row backgrounds to tbody rows */
816
+ striped?: boolean;
817
+ }
818
+
740
819
  export declare function Tabs({ tabs, defaultValue, value, onChange, style }: TabsProps): JSX_2.Element;
741
820
 
742
821
  export declare interface TabsProps {