tekivex-ui 2.6.0 → 3.0.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.
- package/README.md +22 -8
- package/dist/charts.cjs +1 -1
- package/dist/charts.js +14 -14
- package/dist/{chunk-B3ph66Zb.js → chunk-BHX35YDv.js} +1 -1
- package/dist/chunk-BpuJ3-K8.js +1 -0
- package/dist/{chunk-Bc16rJT-.js → chunk-C8Wy8P59.js} +1 -1
- package/dist/chunk-CDGrC2Wo.js +3 -0
- package/dist/{chunk-LWkKqC8d.js → chunk-D7-yknXg.js} +1 -1
- package/dist/{chunk-DnCXUUx5.js → chunk-DcVMayoM.js} +1 -1
- package/dist/chunk-DdHSYetV.js +1 -0
- package/dist/chunk-VUD-TF9j.js +1 -0
- package/dist/headless.cjs +1 -1
- package/dist/headless.js +1 -1
- package/dist/i18n.cjs +1 -1
- package/dist/i18n.js +1 -1
- package/dist/index.cjs +1 -1
- package/dist/index.d.ts +18 -2
- package/dist/index.js +499 -414
- package/dist/quantum.cjs +1 -1
- package/dist/quantum.js +1 -1
- package/dist/realtime.cjs +1 -1
- package/dist/realtime.js +1 -1
- package/dist/src/components/TkxAadhaarInput.d.ts +22 -0
- package/dist/src/components/TkxAddressInput.d.ts +32 -0
- package/dist/src/components/TkxCalendarLunar.d.ts +25 -0
- package/dist/src/components/TkxCaptcha.d.ts +23 -0
- package/dist/src/components/TkxCheckout.d.ts +26 -0
- package/dist/src/components/TkxConfetti.d.ts +21 -0
- package/dist/src/components/TkxCurrencyInput.d.ts +20 -0
- package/dist/src/components/TkxFontProvider.d.ts +12 -0
- package/dist/src/components/TkxImageEditor.d.ts +44 -0
- package/dist/src/components/TkxKycInputs.d.ts +59 -0
- package/dist/src/components/TkxOTP.d.ts +2 -1
- package/dist/src/components/TkxPaymentButton.d.ts +61 -0
- package/dist/src/components/TkxPhoneInput.d.ts +34 -0
- package/dist/src/components/TkxSEO.d.ts +58 -0
- package/dist/src/components/TkxSignaturePad.d.ts +21 -0
- package/dist/src/components/TkxSortable.d.ts +18 -0
- package/dist/src/components/TkxSubscription.d.ts +42 -0
- package/dist/src/components/TkxWatermark.d.ts +8 -1
- package/dist/src/i18n/index.d.ts +51 -0
- package/dist/src/themes/index.d.ts +6 -1
- package/dist/tekivex-ui.css +1 -1
- package/package.json +20 -4
- package/dist/chunk-Dike2DLU.js +0 -3
- package/dist/chunk-DjxOP8W4.js +0 -1
- package/dist/chunk-DkoFTL1O.js +0 -1
- package/dist/chunk-PJ50l0JC.js +0 -1
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { type CSSProperties } from 'react';
|
|
2
|
+
export interface AddressValue {
|
|
3
|
+
pin: string;
|
|
4
|
+
postOffice?: string;
|
|
5
|
+
city?: string;
|
|
6
|
+
state?: string;
|
|
7
|
+
country?: string;
|
|
8
|
+
line1?: string;
|
|
9
|
+
line2?: string;
|
|
10
|
+
}
|
|
11
|
+
interface PostOffice {
|
|
12
|
+
Name: string;
|
|
13
|
+
District: string;
|
|
14
|
+
State: string;
|
|
15
|
+
Country: string;
|
|
16
|
+
Pincode: string;
|
|
17
|
+
}
|
|
18
|
+
interface PinLookupFn {
|
|
19
|
+
(pin: string, signal?: AbortSignal): Promise<PostOffice[]>;
|
|
20
|
+
}
|
|
21
|
+
export interface TkxAddressInputProps {
|
|
22
|
+
value: Partial<AddressValue>;
|
|
23
|
+
onChange: (value: AddressValue) => void;
|
|
24
|
+
lookup?: PinLookupFn;
|
|
25
|
+
label?: string;
|
|
26
|
+
showAddressLines?: boolean;
|
|
27
|
+
disabled?: boolean;
|
|
28
|
+
className?: string;
|
|
29
|
+
style?: CSSProperties;
|
|
30
|
+
}
|
|
31
|
+
export declare const TkxAddressInput: import("react").ForwardRefExoticComponent<TkxAddressInputProps & import("react").RefAttributes<HTMLInputElement>>;
|
|
32
|
+
export {};
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { type CSSProperties } from 'react';
|
|
2
|
+
export type LunarCalendar = 'gregorian' | 'hindu' | 'hijri' | 'hebrew' | 'buddhist';
|
|
3
|
+
export interface LunarDate {
|
|
4
|
+
gregorian: Date;
|
|
5
|
+
display: string;
|
|
6
|
+
tithi?: number;
|
|
7
|
+
nakshatra?: number;
|
|
8
|
+
}
|
|
9
|
+
export interface TkxCalendarLunarProps {
|
|
10
|
+
value: Date | null;
|
|
11
|
+
onChange: (value: LunarDate) => void;
|
|
12
|
+
calendar?: LunarCalendar;
|
|
13
|
+
locale?: string;
|
|
14
|
+
tithiResolver?: (gregorian: Date) => {
|
|
15
|
+
tithi: number;
|
|
16
|
+
nakshatra: number;
|
|
17
|
+
};
|
|
18
|
+
label?: string;
|
|
19
|
+
minDate?: Date;
|
|
20
|
+
maxDate?: Date;
|
|
21
|
+
disabled?: boolean;
|
|
22
|
+
className?: string;
|
|
23
|
+
style?: CSSProperties;
|
|
24
|
+
}
|
|
25
|
+
export declare const TkxCalendarLunar: import("react").ForwardRefExoticComponent<TkxCalendarLunarProps & import("react").RefAttributes<HTMLInputElement>>;
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
export type CaptchaProvider = 'turnstile' | 'hcaptcha' | 'recaptcha';
|
|
2
|
+
export type CaptchaTheme = 'light' | 'dark' | 'auto';
|
|
3
|
+
export type CaptchaSize = 'normal' | 'compact' | 'invisible' | 'flexible';
|
|
4
|
+
export interface TkxCaptchaProps {
|
|
5
|
+
provider?: CaptchaProvider;
|
|
6
|
+
sitekey: string;
|
|
7
|
+
theme?: CaptchaTheme;
|
|
8
|
+
size?: CaptchaSize;
|
|
9
|
+
language?: string;
|
|
10
|
+
execution?: 'render' | 'execute' | 'managed';
|
|
11
|
+
onVerify: (token: string) => void;
|
|
12
|
+
onExpire?: () => void;
|
|
13
|
+
onError?: (errorCode: string) => void;
|
|
14
|
+
className?: string;
|
|
15
|
+
style?: React.CSSProperties;
|
|
16
|
+
testMode?: boolean;
|
|
17
|
+
}
|
|
18
|
+
export interface TkxCaptchaHandle {
|
|
19
|
+
reset: () => void;
|
|
20
|
+
execute: () => void;
|
|
21
|
+
getResponse: () => string | null;
|
|
22
|
+
}
|
|
23
|
+
export declare const TkxCaptcha: import("react").ForwardRefExoticComponent<TkxCaptchaProps & import("react").RefAttributes<TkxCaptchaHandle>>;
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { type CSSProperties } from 'react';
|
|
2
|
+
import { type AddressValue } from './TkxAddressInput';
|
|
3
|
+
import { type PaymentConfig, type PaymentSuccessResult } from './TkxPaymentButton';
|
|
4
|
+
export interface CheckoutLineItem {
|
|
5
|
+
id: string;
|
|
6
|
+
label: string;
|
|
7
|
+
quantity: number;
|
|
8
|
+
unitPrice: number;
|
|
9
|
+
}
|
|
10
|
+
export interface TkxCheckoutProps {
|
|
11
|
+
items: CheckoutLineItem[];
|
|
12
|
+
currency: string;
|
|
13
|
+
locale?: string;
|
|
14
|
+
taxRate?: number;
|
|
15
|
+
shipping?: number;
|
|
16
|
+
paymentConfigFor: (address: AddressValue) => Promise<PaymentConfig> | PaymentConfig;
|
|
17
|
+
onComplete: (result: {
|
|
18
|
+
address: AddressValue;
|
|
19
|
+
payment: PaymentSuccessResult;
|
|
20
|
+
}) => void;
|
|
21
|
+
onCancel?: () => void;
|
|
22
|
+
initialAddress?: Partial<AddressValue>;
|
|
23
|
+
className?: string;
|
|
24
|
+
style?: CSSProperties;
|
|
25
|
+
}
|
|
26
|
+
export declare const TkxCheckout: import("react").ForwardRefExoticComponent<TkxCheckoutProps & import("react").RefAttributes<HTMLDivElement>>;
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { type CSSProperties } from 'react';
|
|
2
|
+
export interface TkxConfettiProps {
|
|
3
|
+
trigger?: unknown;
|
|
4
|
+
particleCount?: number;
|
|
5
|
+
spread?: number;
|
|
6
|
+
origin?: {
|
|
7
|
+
x: number;
|
|
8
|
+
y: number;
|
|
9
|
+
};
|
|
10
|
+
colors?: string[];
|
|
11
|
+
zIndex?: number;
|
|
12
|
+
className?: string;
|
|
13
|
+
style?: CSSProperties;
|
|
14
|
+
}
|
|
15
|
+
export interface TkxConfettiHandle {
|
|
16
|
+
fire: (origin?: {
|
|
17
|
+
x: number;
|
|
18
|
+
y: number;
|
|
19
|
+
}) => void;
|
|
20
|
+
}
|
|
21
|
+
export declare const TkxConfetti: import("react").ForwardRefExoticComponent<TkxConfettiProps & import("react").RefAttributes<TkxConfettiHandle>>;
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { type CSSProperties } from 'react';
|
|
2
|
+
export type CurrencyCode = 'INR' | 'USD' | 'EUR' | 'GBP' | 'JPY' | 'CNY' | 'AUD' | 'CAD' | 'CHF' | 'SGD' | 'HKD' | 'AED' | 'SAR' | 'BRL' | 'MXN' | 'KRW' | 'PKR' | 'BDT' | 'LKR' | 'NPR';
|
|
3
|
+
export interface TkxCurrencyInputProps {
|
|
4
|
+
value: number | null;
|
|
5
|
+
onChange: (value: number | null) => void;
|
|
6
|
+
currency?: CurrencyCode;
|
|
7
|
+
locale?: string;
|
|
8
|
+
label?: string;
|
|
9
|
+
min?: number;
|
|
10
|
+
max?: number;
|
|
11
|
+
precision?: number;
|
|
12
|
+
required?: boolean;
|
|
13
|
+
disabled?: boolean;
|
|
14
|
+
showSymbol?: boolean;
|
|
15
|
+
id?: string;
|
|
16
|
+
name?: string;
|
|
17
|
+
className?: string;
|
|
18
|
+
style?: CSSProperties;
|
|
19
|
+
}
|
|
20
|
+
export declare const TkxCurrencyInput: import("react").ForwardRefExoticComponent<TkxCurrencyInputProps & import("react").RefAttributes<HTMLInputElement>>;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { type ReactNode } from 'react';
|
|
2
|
+
export type FontScript = 'latin' | 'latin-ext' | 'devanagari' | 'tamil' | 'telugu' | 'kannada' | 'malayalam' | 'bengali' | 'gujarati' | 'gurmukhi' | 'oriya' | 'sinhala' | 'arabic' | 'hebrew' | 'thai' | 'vietnamese' | 'cyrillic' | 'cyrillic-ext' | 'greek' | 'greek-ext' | 'jp' | 'kr' | 'sc' | 'tc';
|
|
3
|
+
export interface TkxFontProviderProps {
|
|
4
|
+
scripts?: FontScript[];
|
|
5
|
+
language?: string;
|
|
6
|
+
preconnect?: boolean;
|
|
7
|
+
children?: ReactNode;
|
|
8
|
+
}
|
|
9
|
+
export declare function scriptsForLanguage(language: string): FontScript[];
|
|
10
|
+
export declare function TkxFontProvider({ scripts, language, preconnect, children, }: TkxFontProviderProps): import("react/jsx-runtime").JSX.Element | null;
|
|
11
|
+
export declare function loadFontScript(script: FontScript): void;
|
|
12
|
+
export declare function unloadFontScript(script: FontScript): void;
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { type CSSProperties } from 'react';
|
|
2
|
+
export type AspectRatio = 'free' | '1:1' | '3:4' | '4:5' | '16:9' | '4:3' | '3:2';
|
|
3
|
+
export interface ImageEditResult {
|
|
4
|
+
blob: Blob;
|
|
5
|
+
file: File;
|
|
6
|
+
url: string;
|
|
7
|
+
width: number;
|
|
8
|
+
height: number;
|
|
9
|
+
}
|
|
10
|
+
export interface TkxImageEditorProps {
|
|
11
|
+
src?: string;
|
|
12
|
+
aspectRatio?: AspectRatio;
|
|
13
|
+
ratios?: AspectRatio[];
|
|
14
|
+
mimeType?: 'image/png' | 'image/jpeg' | 'image/webp';
|
|
15
|
+
quality?: number;
|
|
16
|
+
maxOutputSize?: number;
|
|
17
|
+
outputFilename?: string;
|
|
18
|
+
onChange?: (state: {
|
|
19
|
+
rotation: number;
|
|
20
|
+
brightness: number;
|
|
21
|
+
contrast: number;
|
|
22
|
+
}) => void;
|
|
23
|
+
onResult?: (result: ImageEditResult) => void;
|
|
24
|
+
onCancel?: () => void;
|
|
25
|
+
className?: string;
|
|
26
|
+
style?: CSSProperties;
|
|
27
|
+
labels?: Partial<{
|
|
28
|
+
drop: string;
|
|
29
|
+
browse: string;
|
|
30
|
+
rotate: string;
|
|
31
|
+
apply: string;
|
|
32
|
+
cancel: string;
|
|
33
|
+
brightness: string;
|
|
34
|
+
contrast: string;
|
|
35
|
+
aspect: string;
|
|
36
|
+
free: string;
|
|
37
|
+
}>;
|
|
38
|
+
}
|
|
39
|
+
export interface TkxImageEditorHandle {
|
|
40
|
+
getResult: () => Promise<ImageEditResult | null>;
|
|
41
|
+
reset: () => void;
|
|
42
|
+
loadSource: (src: string) => void;
|
|
43
|
+
}
|
|
44
|
+
export declare const TkxImageEditor: import("react").ForwardRefExoticComponent<TkxImageEditorProps & import("react").RefAttributes<TkxImageEditorHandle>>;
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import { type CSSProperties } from 'react';
|
|
2
|
+
export declare function isValidPan(input: string): boolean;
|
|
3
|
+
export interface PanChangePayload {
|
|
4
|
+
raw: string;
|
|
5
|
+
normalised: string;
|
|
6
|
+
valid: boolean;
|
|
7
|
+
}
|
|
8
|
+
export interface TkxPanInputProps {
|
|
9
|
+
value?: string;
|
|
10
|
+
defaultValue?: string;
|
|
11
|
+
onChange?: (payload: PanChangePayload) => void;
|
|
12
|
+
label?: string;
|
|
13
|
+
disabled?: boolean;
|
|
14
|
+
required?: boolean;
|
|
15
|
+
id?: string;
|
|
16
|
+
name?: string;
|
|
17
|
+
className?: string;
|
|
18
|
+
style?: CSSProperties;
|
|
19
|
+
}
|
|
20
|
+
export declare const TkxPanInput: import("react").ForwardRefExoticComponent<TkxPanInputProps & import("react").RefAttributes<HTMLInputElement>>;
|
|
21
|
+
export declare function isValidVoterId(input: string): boolean;
|
|
22
|
+
export interface VoterIdChangePayload {
|
|
23
|
+
raw: string;
|
|
24
|
+
normalised: string;
|
|
25
|
+
valid: boolean;
|
|
26
|
+
}
|
|
27
|
+
export interface TkxVoterIdInputProps {
|
|
28
|
+
value?: string;
|
|
29
|
+
defaultValue?: string;
|
|
30
|
+
onChange?: (payload: VoterIdChangePayload) => void;
|
|
31
|
+
label?: string;
|
|
32
|
+
disabled?: boolean;
|
|
33
|
+
required?: boolean;
|
|
34
|
+
id?: string;
|
|
35
|
+
name?: string;
|
|
36
|
+
className?: string;
|
|
37
|
+
style?: CSSProperties;
|
|
38
|
+
}
|
|
39
|
+
export declare const TkxVoterIdInput: import("react").ForwardRefExoticComponent<TkxVoterIdInputProps & import("react").RefAttributes<HTMLInputElement>>;
|
|
40
|
+
export declare function isValidDrivingLicence(input: string): boolean;
|
|
41
|
+
export interface DrivingLicenceChangePayload {
|
|
42
|
+
raw: string;
|
|
43
|
+
normalised: string;
|
|
44
|
+
pretty: string;
|
|
45
|
+
valid: boolean;
|
|
46
|
+
}
|
|
47
|
+
export interface TkxDrivingLicenceInputProps {
|
|
48
|
+
value?: string;
|
|
49
|
+
defaultValue?: string;
|
|
50
|
+
onChange?: (payload: DrivingLicenceChangePayload) => void;
|
|
51
|
+
label?: string;
|
|
52
|
+
disabled?: boolean;
|
|
53
|
+
required?: boolean;
|
|
54
|
+
id?: string;
|
|
55
|
+
name?: string;
|
|
56
|
+
className?: string;
|
|
57
|
+
style?: CSSProperties;
|
|
58
|
+
}
|
|
59
|
+
export declare const TkxDrivingLicenceInput: import("react").ForwardRefExoticComponent<TkxDrivingLicenceInputProps & import("react").RefAttributes<HTMLInputElement>>;
|
|
@@ -14,10 +14,11 @@ export interface TkxOTPProps {
|
|
|
14
14
|
size?: 'sm' | 'md' | 'lg';
|
|
15
15
|
separator?: ReactNode;
|
|
16
16
|
separatorPosition?: number;
|
|
17
|
+
webOTP?: boolean;
|
|
17
18
|
className?: string;
|
|
18
19
|
style?: CSSProperties;
|
|
19
20
|
}
|
|
20
|
-
export declare function TkxOTP({ length, value, onChange, onComplete, type, mask, autoFocus, isDisabled, isInvalid, errorMessage, hint, size, separator, separatorPosition, className, style, }: TkxOTPProps): import("react/jsx-runtime").JSX.Element;
|
|
21
|
+
export declare function TkxOTP({ length, value, onChange, onComplete, type, mask, autoFocus, isDisabled, isInvalid, errorMessage, hint, size, separator, separatorPosition, webOTP, className, style, }: TkxOTPProps): import("react/jsx-runtime").JSX.Element;
|
|
21
22
|
export declare namespace TkxOTP {
|
|
22
23
|
var displayName: string;
|
|
23
24
|
}
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import { type CSSProperties, type ReactNode } from 'react';
|
|
2
|
+
export type PaymentProvider = 'razorpay' | 'stripe' | 'square';
|
|
3
|
+
export interface PaymentSuccessResult {
|
|
4
|
+
provider: PaymentProvider;
|
|
5
|
+
paymentId: string;
|
|
6
|
+
orderId?: string;
|
|
7
|
+
signature?: string;
|
|
8
|
+
raw: unknown;
|
|
9
|
+
}
|
|
10
|
+
export interface PaymentFailureResult {
|
|
11
|
+
provider: PaymentProvider;
|
|
12
|
+
code: string;
|
|
13
|
+
message: string;
|
|
14
|
+
raw: unknown;
|
|
15
|
+
}
|
|
16
|
+
export interface RazorpayConfig {
|
|
17
|
+
provider: 'razorpay';
|
|
18
|
+
publicKey: string;
|
|
19
|
+
orderId: string;
|
|
20
|
+
amount: number;
|
|
21
|
+
currency: string;
|
|
22
|
+
prefill?: {
|
|
23
|
+
name?: string;
|
|
24
|
+
email?: string;
|
|
25
|
+
contact?: string;
|
|
26
|
+
};
|
|
27
|
+
notes?: Record<string, string>;
|
|
28
|
+
brand?: {
|
|
29
|
+
name?: string;
|
|
30
|
+
description?: string;
|
|
31
|
+
image?: string;
|
|
32
|
+
};
|
|
33
|
+
themeColor?: string;
|
|
34
|
+
}
|
|
35
|
+
export interface StripeConfig {
|
|
36
|
+
provider: 'stripe';
|
|
37
|
+
publicKey: string;
|
|
38
|
+
sessionId: string;
|
|
39
|
+
}
|
|
40
|
+
export interface SquareConfig {
|
|
41
|
+
provider: 'square';
|
|
42
|
+
applicationId: string;
|
|
43
|
+
locationId: string;
|
|
44
|
+
orderId: string;
|
|
45
|
+
amount: number;
|
|
46
|
+
currency: string;
|
|
47
|
+
}
|
|
48
|
+
export type PaymentConfig = RazorpayConfig | StripeConfig | SquareConfig;
|
|
49
|
+
export interface TkxPaymentButtonProps {
|
|
50
|
+
config: PaymentConfig;
|
|
51
|
+
onSuccess: (result: PaymentSuccessResult) => void;
|
|
52
|
+
onFailure?: (result: PaymentFailureResult) => void;
|
|
53
|
+
onDismiss?: () => void;
|
|
54
|
+
children?: ReactNode;
|
|
55
|
+
variant?: 'primary' | 'outline';
|
|
56
|
+
size?: 'sm' | 'md' | 'lg';
|
|
57
|
+
disabled?: boolean;
|
|
58
|
+
className?: string;
|
|
59
|
+
style?: CSSProperties;
|
|
60
|
+
}
|
|
61
|
+
export declare const TkxPaymentButton: import("react").ForwardRefExoticComponent<TkxPaymentButtonProps & import("react").RefAttributes<HTMLButtonElement>>;
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { type CSSProperties } from 'react';
|
|
2
|
+
export interface PhoneCountry {
|
|
3
|
+
iso2: string;
|
|
4
|
+
name: string;
|
|
5
|
+
dial: string;
|
|
6
|
+
length: number | [number, number];
|
|
7
|
+
format?: string;
|
|
8
|
+
flag: string;
|
|
9
|
+
}
|
|
10
|
+
export declare const COUNTRIES: PhoneCountry[];
|
|
11
|
+
export interface PhoneChangePayload {
|
|
12
|
+
raw: string;
|
|
13
|
+
digits: string;
|
|
14
|
+
e164: string;
|
|
15
|
+
country: PhoneCountry;
|
|
16
|
+
valid: boolean;
|
|
17
|
+
}
|
|
18
|
+
export interface TkxPhoneInputProps {
|
|
19
|
+
defaultCountry?: string;
|
|
20
|
+
value?: string;
|
|
21
|
+
defaultValue?: string;
|
|
22
|
+
onChange?: (payload: PhoneChangePayload) => void;
|
|
23
|
+
onValid?: (payload: PhoneChangePayload) => void;
|
|
24
|
+
label?: string;
|
|
25
|
+
placeholder?: string;
|
|
26
|
+
disabled?: boolean;
|
|
27
|
+
required?: boolean;
|
|
28
|
+
id?: string;
|
|
29
|
+
name?: string;
|
|
30
|
+
extraCountries?: PhoneCountry[];
|
|
31
|
+
className?: string;
|
|
32
|
+
style?: CSSProperties;
|
|
33
|
+
}
|
|
34
|
+
export declare const TkxPhoneInput: import("react").ForwardRefExoticComponent<TkxPhoneInputProps & import("react").RefAttributes<HTMLInputElement>>;
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
export interface TkxSEOProps {
|
|
2
|
+
title?: string;
|
|
3
|
+
description?: string;
|
|
4
|
+
canonical?: string;
|
|
5
|
+
keywords?: string;
|
|
6
|
+
image?: string;
|
|
7
|
+
twitterSite?: string;
|
|
8
|
+
twitterCreator?: string;
|
|
9
|
+
ogType?: 'website' | 'article' | 'product' | 'profile';
|
|
10
|
+
locale?: string;
|
|
11
|
+
robots?: string;
|
|
12
|
+
schema?: object | object[];
|
|
13
|
+
}
|
|
14
|
+
export declare function TkxSEO({ title, description, canonical, keywords, image, twitterSite, twitterCreator, ogType, locale, robots, schema, }: TkxSEOProps): null;
|
|
15
|
+
export declare const seoSchema: {
|
|
16
|
+
softwareApplication(data: {
|
|
17
|
+
name: string;
|
|
18
|
+
description: string;
|
|
19
|
+
url: string;
|
|
20
|
+
version?: string;
|
|
21
|
+
license?: string;
|
|
22
|
+
repository?: string;
|
|
23
|
+
downloadUrl?: string;
|
|
24
|
+
price?: string;
|
|
25
|
+
currency?: string;
|
|
26
|
+
}): object;
|
|
27
|
+
article(data: {
|
|
28
|
+
headline: string;
|
|
29
|
+
description: string;
|
|
30
|
+
url: string;
|
|
31
|
+
image?: string;
|
|
32
|
+
author: string;
|
|
33
|
+
datePublished: string;
|
|
34
|
+
dateModified?: string;
|
|
35
|
+
}): object;
|
|
36
|
+
faqPage(items: Array<{
|
|
37
|
+
question: string;
|
|
38
|
+
answer: string;
|
|
39
|
+
}>): object;
|
|
40
|
+
breadcrumbList(items: Array<{
|
|
41
|
+
name: string;
|
|
42
|
+
url: string;
|
|
43
|
+
}>): object;
|
|
44
|
+
product(data: {
|
|
45
|
+
name: string;
|
|
46
|
+
description: string;
|
|
47
|
+
image: string;
|
|
48
|
+
brand: string;
|
|
49
|
+
sku?: string;
|
|
50
|
+
price: string;
|
|
51
|
+
currency: string;
|
|
52
|
+
availability?: "InStock" | "OutOfStock" | "PreOrder";
|
|
53
|
+
rating?: {
|
|
54
|
+
value: number;
|
|
55
|
+
count: number;
|
|
56
|
+
};
|
|
57
|
+
}): object;
|
|
58
|
+
};
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { type CSSProperties } from 'react';
|
|
2
|
+
export interface TkxSignaturePadProps {
|
|
3
|
+
label?: string;
|
|
4
|
+
width?: number;
|
|
5
|
+
height?: number;
|
|
6
|
+
strokeColor?: string;
|
|
7
|
+
strokeWidth?: number;
|
|
8
|
+
backgroundColor?: string;
|
|
9
|
+
onChange?: (dataUrl: string) => void;
|
|
10
|
+
disabled?: boolean;
|
|
11
|
+
className?: string;
|
|
12
|
+
style?: CSSProperties;
|
|
13
|
+
}
|
|
14
|
+
export interface TkxSignaturePadHandle {
|
|
15
|
+
clear: () => void;
|
|
16
|
+
undo: () => void;
|
|
17
|
+
isEmpty: () => boolean;
|
|
18
|
+
toDataURL: (mimeType?: string, quality?: number) => string;
|
|
19
|
+
toBlob: (mimeType?: string, quality?: number) => Promise<Blob | null>;
|
|
20
|
+
}
|
|
21
|
+
export declare const TkxSignaturePad: import("react").ForwardRefExoticComponent<TkxSignaturePadProps & import("react").RefAttributes<TkxSignaturePadHandle>>;
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { type CSSProperties, type ReactElement, type ReactNode, type Ref } from 'react';
|
|
2
|
+
export interface TkxSortableItem<T = unknown> {
|
|
3
|
+
id: string;
|
|
4
|
+
data: T;
|
|
5
|
+
}
|
|
6
|
+
export interface TkxSortableProps<T = unknown> {
|
|
7
|
+
items: TkxSortableItem<T>[];
|
|
8
|
+
onChange: (next: TkxSortableItem<T>[]) => void;
|
|
9
|
+
renderItem: (item: TkxSortableItem<T>, index: number) => ReactNode;
|
|
10
|
+
orientation?: 'vertical' | 'horizontal';
|
|
11
|
+
disabled?: boolean;
|
|
12
|
+
className?: string;
|
|
13
|
+
style?: CSSProperties;
|
|
14
|
+
ariaLabel?: string;
|
|
15
|
+
}
|
|
16
|
+
export declare const TkxSortable: <T>(props: TkxSortableProps<T> & {
|
|
17
|
+
ref?: Ref<HTMLDivElement>;
|
|
18
|
+
}) => ReactElement;
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { type CSSProperties, type ReactNode } from 'react';
|
|
2
|
+
export type BillingCycle = 'monthly' | 'annual';
|
|
3
|
+
export interface SubscriptionPlan {
|
|
4
|
+
id: string;
|
|
5
|
+
name: string;
|
|
6
|
+
tagline?: string;
|
|
7
|
+
prices: Record<BillingCycle, number>;
|
|
8
|
+
currency: string;
|
|
9
|
+
locale?: string;
|
|
10
|
+
features: string[];
|
|
11
|
+
highlighted?: boolean;
|
|
12
|
+
disabled?: boolean;
|
|
13
|
+
ctaLabel?: string;
|
|
14
|
+
}
|
|
15
|
+
export interface TkxPlanSelectorProps {
|
|
16
|
+
plans: SubscriptionPlan[];
|
|
17
|
+
cycle: BillingCycle;
|
|
18
|
+
selectedId?: string;
|
|
19
|
+
onSelect?: (plan: SubscriptionPlan) => void;
|
|
20
|
+
className?: string;
|
|
21
|
+
style?: CSSProperties;
|
|
22
|
+
}
|
|
23
|
+
export declare const TkxPlanSelector: import("react").ForwardRefExoticComponent<TkxPlanSelectorProps & import("react").RefAttributes<HTMLDivElement>>;
|
|
24
|
+
export interface TkxBillingCycleToggleProps {
|
|
25
|
+
value: BillingCycle;
|
|
26
|
+
onChange: (next: BillingCycle) => void;
|
|
27
|
+
annualSavingsLabel?: string;
|
|
28
|
+
className?: string;
|
|
29
|
+
style?: CSSProperties;
|
|
30
|
+
}
|
|
31
|
+
export declare function TkxBillingCycleToggle({ value, onChange, annualSavingsLabel, className, style, }: TkxBillingCycleToggleProps): import("react/jsx-runtime").JSX.Element;
|
|
32
|
+
export interface TkxProrationPreviewProps {
|
|
33
|
+
newPlan: SubscriptionPlan;
|
|
34
|
+
currentPlan: SubscriptionPlan;
|
|
35
|
+
cycle: BillingCycle;
|
|
36
|
+
daysRemaining: number;
|
|
37
|
+
cycleDays: number;
|
|
38
|
+
className?: string;
|
|
39
|
+
style?: CSSProperties;
|
|
40
|
+
children?: ReactNode;
|
|
41
|
+
}
|
|
42
|
+
export declare function TkxProrationPreview({ newPlan, currentPlan, cycle, daysRemaining, cycleDays, className, style, children, }: TkxProrationPreviewProps): import("react/jsx-runtime").JSX.Element;
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { type ReactNode } from 'react';
|
|
2
|
+
export type WatermarkPattern = 'tiled' | 'single' | 'fingerprint';
|
|
2
3
|
export interface TkxWatermarkProps {
|
|
3
4
|
text: string | string[];
|
|
4
5
|
children: ReactNode;
|
|
@@ -7,5 +8,11 @@ export interface TkxWatermarkProps {
|
|
|
7
8
|
fontSize?: number;
|
|
8
9
|
color?: string;
|
|
9
10
|
zIndex?: number;
|
|
11
|
+
pattern?: WatermarkPattern;
|
|
12
|
+
dynamic?: boolean;
|
|
13
|
+
refreshMs?: number;
|
|
14
|
+
intensifyOnDevtools?: boolean;
|
|
15
|
+
fingerprintId?: string;
|
|
10
16
|
}
|
|
11
|
-
export declare function
|
|
17
|
+
export declare function useDevtoolsOpen(): boolean;
|
|
18
|
+
export declare function TkxWatermark({ text, children, rotate, gap, fontSize, color, zIndex, pattern, dynamic, refreshMs, intensifyOnDevtools, fingerprintId, }: TkxWatermarkProps): import("react/jsx-runtime").JSX.Element;
|
package/dist/src/i18n/index.d.ts
CHANGED
|
@@ -24,6 +24,41 @@ export interface LocaleStrings {
|
|
|
24
24
|
filterPlaceholder: string;
|
|
25
25
|
exportCsv: string;
|
|
26
26
|
rowsSelected: (n: number) => string;
|
|
27
|
+
firstPage?: string;
|
|
28
|
+
lastPage?: string;
|
|
29
|
+
previousPage?: string;
|
|
30
|
+
nextPage?: string;
|
|
31
|
+
showingRange?: (start: number, end: number, total: number) => string;
|
|
32
|
+
itemsPerPage?: string;
|
|
33
|
+
uploadFiles?: string;
|
|
34
|
+
acceptedFormats?: (formats: string) => string;
|
|
35
|
+
maxFileSize?: (size: string) => string;
|
|
36
|
+
clearDate?: string;
|
|
37
|
+
previousMonth?: string;
|
|
38
|
+
nextMonth?: string;
|
|
39
|
+
yesterday?: string;
|
|
40
|
+
last7Days?: string;
|
|
41
|
+
last30Days?: string;
|
|
42
|
+
thisMonth?: string;
|
|
43
|
+
lastMonth?: string;
|
|
44
|
+
notifications?: string;
|
|
45
|
+
commandSearch?: string;
|
|
46
|
+
noCommandsFound?: string;
|
|
47
|
+
closeDrawer?: string;
|
|
48
|
+
fieldRequired?: string;
|
|
49
|
+
invalidFormat?: string;
|
|
50
|
+
minLength?: (n: number) => string;
|
|
51
|
+
maxLength?: (n: number) => string;
|
|
52
|
+
minValue?: (n: number) => string;
|
|
53
|
+
maxValue?: (n: number) => string;
|
|
54
|
+
noRows?: string;
|
|
55
|
+
resetFilters?: string;
|
|
56
|
+
increment?: string;
|
|
57
|
+
decrement?: string;
|
|
58
|
+
oneTimePassword?: string;
|
|
59
|
+
breadcrumb?: string;
|
|
60
|
+
showHiddenItems?: string;
|
|
61
|
+
richTextContent?: string;
|
|
27
62
|
}
|
|
28
63
|
export declare const enUS: LocaleStrings;
|
|
29
64
|
export declare const esES: LocaleStrings;
|
|
@@ -52,6 +87,14 @@ export declare const thTH: LocaleStrings;
|
|
|
52
87
|
export declare const viVN: LocaleStrings;
|
|
53
88
|
export declare const idID: LocaleStrings;
|
|
54
89
|
export declare const roRO: LocaleStrings;
|
|
90
|
+
export declare const hiIN: LocaleStrings;
|
|
91
|
+
export declare const mrIN: LocaleStrings;
|
|
92
|
+
export declare const bnIN: LocaleStrings;
|
|
93
|
+
export declare const taIN: LocaleStrings;
|
|
94
|
+
export declare const teIN: LocaleStrings;
|
|
95
|
+
export declare const guIN: LocaleStrings;
|
|
96
|
+
export declare const paIN: LocaleStrings;
|
|
97
|
+
export declare const urPK: LocaleStrings;
|
|
55
98
|
export declare const LOCALES: {
|
|
56
99
|
readonly 'en-US': LocaleStrings;
|
|
57
100
|
readonly 'es-ES': LocaleStrings;
|
|
@@ -80,6 +123,14 @@ export declare const LOCALES: {
|
|
|
80
123
|
readonly 'vi-VN': LocaleStrings;
|
|
81
124
|
readonly 'id-ID': LocaleStrings;
|
|
82
125
|
readonly 'ro-RO': LocaleStrings;
|
|
126
|
+
readonly 'hi-IN': LocaleStrings;
|
|
127
|
+
readonly 'mr-IN': LocaleStrings;
|
|
128
|
+
readonly 'bn-IN': LocaleStrings;
|
|
129
|
+
readonly 'ta-IN': LocaleStrings;
|
|
130
|
+
readonly 'te-IN': LocaleStrings;
|
|
131
|
+
readonly 'gu-IN': LocaleStrings;
|
|
132
|
+
readonly 'pa-IN': LocaleStrings;
|
|
133
|
+
readonly 'ur-PK': LocaleStrings;
|
|
83
134
|
};
|
|
84
135
|
export type LocaleCode = keyof typeof LOCALES;
|
|
85
136
|
export declare function isRTL(locale: string): boolean;
|
|
@@ -17,12 +17,17 @@ export declare const quantumDark: ThemeTokens;
|
|
|
17
17
|
export declare const auroraLight: ThemeTokens;
|
|
18
18
|
export declare function createTheme(base: ThemeTokens, overrides?: Partial<ThemeTokens>): ThemeTokens;
|
|
19
19
|
export declare const ThemeContext: import("react").Context<ThemeTokens>;
|
|
20
|
+
export type ColorScheme = 'light' | 'dark' | 'auto';
|
|
20
21
|
export interface ThemeProviderProps {
|
|
21
22
|
theme?: ThemeTokens;
|
|
23
|
+
mode?: ColorScheme;
|
|
24
|
+
lightTheme?: ThemeTokens;
|
|
25
|
+
darkTheme?: ThemeTokens;
|
|
22
26
|
children: ReactNode;
|
|
23
27
|
}
|
|
24
|
-
export declare function ThemeProvider({ theme, children }: ThemeProviderProps): import("react").FunctionComponentElement<import("react").ProviderProps<ThemeTokens>>;
|
|
28
|
+
export declare function ThemeProvider({ theme, mode, lightTheme, darkTheme, children, }: ThemeProviderProps): import("react").FunctionComponentElement<import("react").ProviderProps<ThemeTokens>>;
|
|
25
29
|
export declare function useTheme(): ThemeTokens;
|
|
30
|
+
export declare function usePrefersColorScheme(): 'light' | 'dark';
|
|
26
31
|
export interface ColorPalette {
|
|
27
32
|
50: string;
|
|
28
33
|
100: string;
|
package/dist/tekivex-ui.css
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
*,:before,:after{box-sizing:border-box}:root{--tkx-bg:#0a0a0f;--tkx-surface:#12121a;--tkx-surfaceAlt:#1a1a2e;--tkx-border:#2a2a3e;--tkx-text:#e8e8f4;--tkx-textMuted:#88a;--tkx-primary:#00f5d4;--tkx-secondary:#7b2ff7;--tkx-danger:#f72585;--tkx-warning:#ffbe0b;--tkx-success:#06d6a0;--tkx-info:#3a86ff;--tkx-space-xs:4px;--tkx-space-sm:8px;--tkx-space-md:16px;--tkx-space-lg:24px;--tkx-space-xl:32px;--tkx-radius-sm:4px;--tkx-radius-md:8px;--tkx-radius-lg:12px;--tkx-radius-full:9999px;--tkx-font-family:system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--tkx-font-mono:"Cascadia Code", "Fira Code", "Consolas", monospace;--tkx-transition:.2s ease;--tkx-transition-fast:.1s ease}.tkx-focus-ring:focus-visible{outline:2px solid var(--tkx-primary);outline-offset:2px;border-radius:2px}:focus:not(:focus-visible){outline:none}.tkx-skip-nav{z-index:9999;background:var(--tkx-primary);color:var(--tkx-bg);transition:top var(--tkx-transition-fast);border-radius:0 0 4px;padding:8px 16px;font-weight:600;text-decoration:none;position:absolute;top:-9999px;left:0}.tkx-skip-nav:focus{outline:2px solid var(--tkx-bg);outline-offset:2px;top:0}.tkx-sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@keyframes tkx-fade-in{0%{opacity:0}to{opacity:1}}@keyframes tkx-slide-up{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes tkx-pulse{0%,to{opacity:1}50%{opacity:.4}}@keyframes tkx-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes tkx-shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes tkx-ripple{0%{opacity:.6;transform:scale(0)}to{opacity:0;transform:scale(4)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (prefers-contrast:more){:root{--tkx-border:currentColor}.tkx-focus-ring:focus-visible{outline-width:3px}}@media (forced-colors:active){.tkx-button,.tkx-badge,.tkx-toggle,.tkx-input,.tkx-card{forced-color-adjust:none}}
|
|
1
|
+
*,:before,:after{box-sizing:border-box}:root{--tkx-bg:#0a0a0f;--tkx-surface:#12121a;--tkx-surfaceAlt:#1a1a2e;--tkx-border:#2a2a3e;--tkx-text:#e8e8f4;--tkx-textMuted:#88a;--tkx-primary:#00f5d4;--tkx-secondary:#7b2ff7;--tkx-danger:#f72585;--tkx-warning:#ffbe0b;--tkx-success:#06d6a0;--tkx-info:#3a86ff;--tkx-space-xs:4px;--tkx-space-sm:8px;--tkx-space-md:16px;--tkx-space-lg:24px;--tkx-space-xl:32px;--tkx-radius-sm:4px;--tkx-radius-md:8px;--tkx-radius-lg:12px;--tkx-radius-full:9999px;--tkx-font-family:system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--tkx-font-mono:"Cascadia Code", "Fira Code", "Consolas", monospace;--tkx-transition:.2s ease;--tkx-transition-fast:.1s ease}.tkx-focus-ring:focus-visible{outline:2px solid var(--tkx-primary);outline-offset:2px;border-radius:2px}:focus:not(:focus-visible){outline:none}.tkx-skip-nav{z-index:9999;background:var(--tkx-primary);color:var(--tkx-bg);transition:top var(--tkx-transition-fast);border-radius:0 0 4px;padding:8px 16px;font-weight:600;text-decoration:none;position:absolute;top:-9999px;left:0}.tkx-skip-nav:focus{outline:2px solid var(--tkx-bg);outline-offset:2px;top:0}.tkx-sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@keyframes tkx-fade-in{0%{opacity:0}to{opacity:1}}@keyframes tkx-slide-up{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes tkx-pulse{0%,to{opacity:1}50%{opacity:.4}}@keyframes tkx-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes tkx-shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes tkx-ripple{0%{opacity:.6;transform:scale(0)}to{opacity:0;transform:scale(4)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (prefers-contrast:more){:root{--tkx-border:currentColor}.tkx-focus-ring:focus-visible{outline-width:3px}}@media (forced-colors:active){.tkx-button,.tkx-badge,.tkx-toggle,.tkx-input,.tkx-card{forced-color-adjust:none}}[dir=rtl] .tkx-flip-icon{transform:scaleX(-1)}[dir=rtl] .tkx-drawer-left{inset-inline:auto 0}[dir=rtl] .tkx-drawer-right{inset-inline:0 auto}[dir=rtl] .tkx-pagination-prev svg,[dir=rtl] .tkx-pagination-next svg{transform:scaleX(-1)}
|
|
2
2
|
/*$vite$:1*/
|