@kingsimba/nc-ui 0.1.3 → 0.1.6

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
@@ -1,6 +1,6 @@
1
1
  import { ClassValue } from 'clsx';
2
2
  import { default as default_2 } from 'react';
3
- import { i18n } from 'i18next';
3
+ import { i18n } from 'node_modules/i18next';
4
4
  import { JSX as JSX_2 } from 'react/jsx-runtime';
5
5
  import { ReactNode } from 'react';
6
6
 
@@ -145,12 +145,20 @@ export declare interface AppDialogProps {
145
145
  export declare type AppI18nResources = Record<string, Record<string, unknown>>;
146
146
 
147
147
  /**
148
- * AppPanel component - Renders the right-side panel that displays running apps.
148
+ * AppPanel component - Renders the panel that displays running apps.
149
149
  * Each running app is rendered via AppContainer, but only the active app is visible.
150
- * On mobile devices, the panel overlays on top of the main area.
151
- * On desktop, the panel sits inline next to the main area.
150
+ * Layout positioning is controlled by the parent via style/className props.
152
151
  */
153
- export declare function AppPanel(): JSX_2.Element;
152
+ export declare function AppPanel({ autoWidth, className, style }: AppPanelProps): JSX_2.Element;
153
+
154
+ export declare interface AppPanelProps {
155
+ /** When true, panel width is determined by the active app's registered width. When false, parent controls width via style/className. Default: true */
156
+ autoWidth?: boolean;
157
+ /** Additional CSS class names */
158
+ className?: string;
159
+ /** Custom styles (merged with internal styles, takes precedence) */
160
+ style?: default_2.CSSProperties;
161
+ }
154
162
 
155
163
  /**
156
164
  * Registry for all available applications.
@@ -241,37 +249,6 @@ declare interface AppTitleBarProps {
241
249
  hideBackButton?: boolean;
242
250
  }
243
251
 
244
- /**
245
- * Registry for back button handlers.
246
- * Allows apps to register handlers that are called when the user presses back.
247
- * Handlers are called in priority order (higher priority first).
248
- */
249
- declare type BackHandler = () => boolean;
250
-
251
- declare class BackHandlerRegistry {
252
- private handlers;
253
- /**
254
- * Register a back handler.
255
- * @param id - Unique identifier for this handler
256
- * @param priority - Higher priority handlers are called first
257
- * @param handler - Function that returns true if it handled the back action
258
- * @returns Unsubscribe function
259
- */
260
- register(id: string, priority: number, handler: BackHandler): () => void;
261
- /**
262
- * Trigger the back action.
263
- * Calls handlers in priority order until one returns true.
264
- * @returns true if a handler processed the back action
265
- */
266
- handleBack(): boolean;
267
- /**
268
- * Unregister a handler by id.
269
- */
270
- unregister(id: string): void;
271
- }
272
-
273
- export declare const backHandlerRegistry: BackHandlerRegistry;
274
-
275
252
  export declare function Battery({ percentage, status, darkMode, colored, }: BatteryProps): JSX_2.Element;
276
253
 
277
254
  export declare interface BatteryProps {
@@ -341,11 +318,6 @@ export declare interface CheckboxProps {
341
318
 
342
319
  export declare type CheckboxSize = 'default' | 'small';
343
320
 
344
- /**
345
- * Clear the app from the URL when closing.
346
- */
347
- export declare function clearAppInUrl(): void;
348
-
349
321
  /**
350
322
  * A reusable close button.
351
323
  */
@@ -548,7 +520,7 @@ declare interface HyperlinkProps {
548
520
  size?: 'small' | 'default';
549
521
  }
550
522
 
551
- export declare function Input({ value, onChange, onEnter, onClear, placeholder, disabled, label, clearable, type, className, size, style, showPasswordToggle, multiline, rows, }: InputProps): JSX_2.Element;
523
+ export declare function Input({ value, onChange, onEnter, onClear, placeholder, disabled, label, clearable, type, className, size, style, showPasswordToggle, multiline, rows, validator, showErrorMessage, }: InputProps): JSX_2.Element;
552
524
 
553
525
  export declare interface InputProps {
554
526
  /** Current value of the input */
@@ -581,6 +553,10 @@ export declare interface InputProps {
581
553
  multiline?: boolean;
582
554
  /** Number of rows for multiline input */
583
555
  rows?: number;
556
+ /** Validation function that returns an error message string if invalid, or null/undefined if valid */
557
+ validator?: (value: string) => string | null | undefined;
558
+ /** Whether to display the error message text (still shows red border when false) */
559
+ showErrorMessage?: boolean;
584
560
  }
585
561
 
586
562
  /**
@@ -635,6 +611,23 @@ export declare interface ListGroupProps {
635
611
  style?: default_2.CSSProperties;
636
612
  }
637
613
 
614
+ export declare function MonthRangePicker({ startMonth, endMonth, onChange, label, className, disabled, }: MonthRangePickerProps): JSX_2.Element;
615
+
616
+ export declare interface MonthRangePickerProps {
617
+ /** Start month value in YY-M, YY-MM, YYYY-M, or YYYY-MM format */
618
+ startMonth?: string;
619
+ /** End month value in YY-M, YY-MM, YYYY-M, or YYYY-MM format */
620
+ endMonth?: string;
621
+ /** Callback when the range changes */
622
+ onChange?: (startMonth: string, endMonth: string) => void;
623
+ /** Label text displayed above the picker */
624
+ label?: string;
625
+ /** Additional CSS class names */
626
+ className?: string;
627
+ /** Whether the picker is disabled */
628
+ disabled?: boolean;
629
+ }
630
+
638
631
  export declare function MultiSelect({ values, onChange, options, placeholder, label }: MultiSelectProps): JSX_2.Element;
639
632
 
640
633
  export declare interface MultiSelectProps {
@@ -853,12 +846,6 @@ declare class RunningAppsStore {
853
846
 
854
847
  export declare const runningAppsStore: RunningAppsStore;
855
848
 
856
- /**
857
- * Push a browser history entry for the app.
858
- * This enables the browser back button to close/navigate apps.
859
- */
860
- export declare function setAppInUrl(appId: string): void;
861
-
862
849
  export declare function Slider({ value, onChange, min, max, step, label, disabled, showValue, formatValue, width, }: SliderProps): JSX_2.Element;
863
850
 
864
851
  export declare interface SliderProps {