@seekora-ai/ui-sdk-core 0.2.0 → 0.2.4
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 +129 -2
- package/dist/index.esm.js +683 -1
- package/dist/index.esm.js.map +1 -1
- package/dist/index.js +684 -0
- package/dist/index.js.map +1 -1
- package/package.json +3 -3
package/dist/index.d.ts
CHANGED
|
@@ -445,5 +445,132 @@ declare class URLRouter {
|
|
|
445
445
|
*/
|
|
446
446
|
declare function createURLRouter(config: URLRouterConfig): URLRouter;
|
|
447
447
|
|
|
448
|
-
|
|
449
|
-
|
|
448
|
+
/**
|
|
449
|
+
* Seekora Device Fingerprinting Module
|
|
450
|
+
*
|
|
451
|
+
* A lightweight, dependency-free device fingerprinting solution that collects
|
|
452
|
+
* various browser and device signals to generate a unique visitor identifier.
|
|
453
|
+
*/
|
|
454
|
+
interface FingerprintConfig {
|
|
455
|
+
enableCanvas: boolean;
|
|
456
|
+
enableWebGL: boolean;
|
|
457
|
+
enableAudio: boolean;
|
|
458
|
+
enableFonts: boolean;
|
|
459
|
+
enableHardware: boolean;
|
|
460
|
+
timeout: number;
|
|
461
|
+
}
|
|
462
|
+
interface FingerprintResult {
|
|
463
|
+
visitorId: string;
|
|
464
|
+
confidence: number;
|
|
465
|
+
components: FingerprintComponents;
|
|
466
|
+
}
|
|
467
|
+
interface FingerprintComponents {
|
|
468
|
+
canvas: {
|
|
469
|
+
hash: string;
|
|
470
|
+
data?: string;
|
|
471
|
+
};
|
|
472
|
+
webgl: {
|
|
473
|
+
renderer: string;
|
|
474
|
+
vendor: string;
|
|
475
|
+
hash: string;
|
|
476
|
+
};
|
|
477
|
+
audio: {
|
|
478
|
+
hash: string;
|
|
479
|
+
value?: number;
|
|
480
|
+
};
|
|
481
|
+
fonts: string[];
|
|
482
|
+
hardware: {
|
|
483
|
+
concurrency: number;
|
|
484
|
+
deviceMemory: number;
|
|
485
|
+
maxTouchPoints: number;
|
|
486
|
+
platform: string;
|
|
487
|
+
};
|
|
488
|
+
screen: {
|
|
489
|
+
width: number;
|
|
490
|
+
height: number;
|
|
491
|
+
colorDepth: number;
|
|
492
|
+
pixelRatio: number;
|
|
493
|
+
};
|
|
494
|
+
browser: {
|
|
495
|
+
language: string;
|
|
496
|
+
languages: string[];
|
|
497
|
+
timezone: string;
|
|
498
|
+
timezoneOffset: number;
|
|
499
|
+
cookieEnabled: boolean;
|
|
500
|
+
doNotTrack: boolean;
|
|
501
|
+
};
|
|
502
|
+
adBlockerDetected: boolean;
|
|
503
|
+
incognitoDetected: boolean;
|
|
504
|
+
}
|
|
505
|
+
declare class Fingerprint {
|
|
506
|
+
private config;
|
|
507
|
+
private cachedResult;
|
|
508
|
+
constructor(config?: Partial<FingerprintConfig>);
|
|
509
|
+
/**
|
|
510
|
+
* Get the complete fingerprint result
|
|
511
|
+
*/
|
|
512
|
+
get(): Promise<FingerprintResult>;
|
|
513
|
+
/**
|
|
514
|
+
* Clear the cached result to force re-fingerprinting
|
|
515
|
+
*/
|
|
516
|
+
clearCache(): void;
|
|
517
|
+
/**
|
|
518
|
+
* Collect all fingerprint components
|
|
519
|
+
*/
|
|
520
|
+
private collectComponents;
|
|
521
|
+
/**
|
|
522
|
+
* Canvas fingerprinting - draws various shapes and text, then hashes the result
|
|
523
|
+
*/
|
|
524
|
+
private getCanvasFingerprint;
|
|
525
|
+
/**
|
|
526
|
+
* WebGL fingerprinting - extracts GPU info and renders test triangles
|
|
527
|
+
*/
|
|
528
|
+
private getWebGLFingerprint;
|
|
529
|
+
/**
|
|
530
|
+
* Audio fingerprinting using AudioContext oscillator
|
|
531
|
+
*/
|
|
532
|
+
private getAudioFingerprint;
|
|
533
|
+
/**
|
|
534
|
+
* Font detection by measuring text rendering differences
|
|
535
|
+
*/
|
|
536
|
+
private detectFonts;
|
|
537
|
+
/**
|
|
538
|
+
* Get hardware information
|
|
539
|
+
*/
|
|
540
|
+
private getHardwareInfo;
|
|
541
|
+
/**
|
|
542
|
+
* Get screen information
|
|
543
|
+
*/
|
|
544
|
+
private getScreenInfo;
|
|
545
|
+
/**
|
|
546
|
+
* Get browser information
|
|
547
|
+
*/
|
|
548
|
+
private getBrowserInfo;
|
|
549
|
+
/**
|
|
550
|
+
* Detect if an ad blocker is installed
|
|
551
|
+
*/
|
|
552
|
+
private detectAdBlocker;
|
|
553
|
+
/**
|
|
554
|
+
* Detect if browser is in incognito/private mode
|
|
555
|
+
*/
|
|
556
|
+
private detectIncognito;
|
|
557
|
+
/**
|
|
558
|
+
* Generate a hash from any data
|
|
559
|
+
*/
|
|
560
|
+
private generateHash;
|
|
561
|
+
/**
|
|
562
|
+
* Generate the final visitor ID from all components
|
|
563
|
+
*/
|
|
564
|
+
private generateVisitorId;
|
|
565
|
+
/**
|
|
566
|
+
* Calculate confidence score based on available components
|
|
567
|
+
*/
|
|
568
|
+
private calculateConfidence;
|
|
569
|
+
}
|
|
570
|
+
/**
|
|
571
|
+
* Quick fingerprint getter - creates a Fingerprint instance and returns the result
|
|
572
|
+
*/
|
|
573
|
+
declare function getFingerprint(config?: Partial<FingerprintConfig>): Promise<FingerprintResult>;
|
|
574
|
+
|
|
575
|
+
export { Fingerprint, LogLevel, SearchStateManager, URLRouter, announce, announceFilterChange, announceResults, createFocusTrap, createKeyboardShortcuts, createLogger, createRovingTabIndex, createTheme, createURLRouter, darkThemeVariables, extractField, focusFirstError, formatPrice, generateCompleteStylesheet, generateId, generateThemeStylesheet, getFingerprint, getFocusableElements, getHighlightedValue, getLogger, getNestedValue, getSnippetedValue, getTheme, handleKeyboardNavigation, highContrastThemeVariables, highlightQuery, injectStyles, lightThemeVariables, log, mergeThemes, minimalThemeVariables, parseHighlightedParts, parseQueryHighlightParts, prefersHighContrast, prefersReducedMotion, setAriaDescribedBy, setDefaultLogger, setLogLevel, setLogPrefix, setLogTimestamp, setTheme, stripHighlightTags, themeToCSSVariables };
|
|
576
|
+
export type { CSSVariablesConfig, FingerprintComponents, FingerprintConfig, FingerprintResult, HighlightOptions, HighlightPart, KeyboardNavigationOptions, KeyboardShortcut, LoggerConfig, Refinement, SearchState, SearchStateManagerConfig, SnippetOptions, URLRouterConfig, URLStateMapping };
|