@skylabs-digital/react-identity-access 2.0.1 → 2.1.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.
@@ -9,8 +9,6 @@ export interface AppConfig {
9
9
  ttl?: number;
10
10
  storageKey?: string;
11
11
  };
12
- loadingFallback?: ReactNode;
13
- errorFallback?: ReactNode | ((error: Error, retry: () => void) => ReactNode);
14
12
  }
15
13
  interface AppContextValue {
16
14
  appId: string;
@@ -1 +1 @@
1
- {"version":3,"file":"AppProvider.d.ts","sourceRoot":"","sources":["../../src/providers/AppProvider.tsx"],"names":[],"mappings":"AAAA,OAAO,EAIL,SAAS,EAIV,MAAM,OAAO,CAAC;AAGf,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AASlD,MAAM,WAAW,SAAS;IACxB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IAEd,KAAK,CAAC,EAAE;QACN,OAAO,CAAC,EAAE,OAAO,CAAC;QAClB,GAAG,CAAC,EAAE,MAAM,CAAC;QACb,UAAU,CAAC,EAAE,MAAM,CAAC;KACrB,CAAC;IAEF,eAAe,CAAC,EAAE,SAAS,CAAC;IAC5B,aAAa,CAAC,EAAE,SAAS,GAAG,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,IAAI,KAAK,SAAS,CAAC,CAAC;CAC9E;AAED,UAAU,eAAe;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAEhB,OAAO,EAAE,aAAa,GAAG,IAAI,CAAC;IAC9B,YAAY,EAAE,OAAO,CAAC;IACtB,QAAQ,EAAE,KAAK,GAAG,IAAI,CAAC;IACvB,QAAQ,EAAE,MAAM,IAAI,CAAC;CACtB;AAID,UAAU,gBAAgB;IACxB,MAAM,EAAE,SAAS,CAAC;IAClB,QAAQ,EAAE,SAAS,CAAC;CACrB;AAmDD,wBAAgB,WAAW,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,gBAAgB,2CA2JjE;AAED,wBAAgB,MAAM,IAAI,eAAe,CAMxC;AAGD,eAAO,MAAM,MAAM,eAAS,CAAC"}
1
+ {"version":3,"file":"AppProvider.d.ts","sourceRoot":"","sources":["../../src/providers/AppProvider.tsx"],"names":[],"mappings":"AAAA,OAAO,EAIL,SAAS,EAIV,MAAM,OAAO,CAAC;AAGf,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AASlD,MAAM,WAAW,SAAS;IACxB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IAEd,KAAK,CAAC,EAAE;QACN,OAAO,CAAC,EAAE,OAAO,CAAC;QAClB,GAAG,CAAC,EAAE,MAAM,CAAC;QACb,UAAU,CAAC,EAAE,MAAM,CAAC;KACrB,CAAC;CACH;AAED,UAAU,eAAe;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAEhB,OAAO,EAAE,aAAa,GAAG,IAAI,CAAC;IAC9B,YAAY,EAAE,OAAO,CAAC;IACtB,QAAQ,EAAE,KAAK,GAAG,IAAI,CAAC;IACvB,QAAQ,EAAE,MAAM,IAAI,CAAC;CACtB;AAID,UAAU,gBAAgB;IACxB,MAAM,EAAE,SAAS,CAAC;IAClB,QAAQ,EAAE,SAAS,CAAC;CACrB;AAED,wBAAgB,WAAW,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,gBAAgB,2CA8IjE;AAED,wBAAgB,MAAM,IAAI,eAAe,CAMxC;AAGD,eAAO,MAAM,MAAM,eAAS,CAAC"}
@@ -3,6 +3,7 @@ import { TenantSettings, JSONSchema, PublicTenantInfo } from '../types/api';
3
3
 
4
4
  export interface TenantConfig {
5
5
  tenantMode?: 'subdomain' | 'selector';
6
+ baseDomain?: string;
6
7
  selectorParam?: string;
7
8
  cache?: {
8
9
  enabled?: boolean;
@@ -10,8 +11,6 @@ export interface TenantConfig {
10
11
  storageKey?: string;
11
12
  };
12
13
  initialTenant?: PublicTenantInfo;
13
- loadingFallback?: ReactNode;
14
- errorFallback?: ReactNode | ((error: Error, retry: () => void) => ReactNode);
15
14
  }
16
15
  interface TenantContextValue {
17
16
  tenant: PublicTenantInfo | null;
@@ -36,6 +35,7 @@ interface TenantProviderProps {
36
35
  }
37
36
  export declare function TenantProvider({ config, children }: TenantProviderProps): import("react/jsx-runtime").JSX.Element;
38
37
  export declare function useTenant(): TenantContextValue;
38
+ export declare function useTenantOptional(): TenantContextValue | null;
39
39
  export declare const useTenantSettings: typeof useTenant;
40
40
  export declare function useSettings(): {
41
41
  settings: TenantSettings | null;
@@ -1 +1 @@
1
- {"version":3,"file":"TenantProvider.d.ts","sourceRoot":"","sources":["../../src/providers/TenantProvider.tsx"],"names":[],"mappings":"AAAA,OAAO,EAIL,SAAS,EAIV,MAAM,OAAO,CAAC;AAIf,OAAO,KAAK,EAAE,cAAc,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AASjF,MAAM,WAAW,YAAY;IAE3B,UAAU,CAAC,EAAE,WAAW,GAAG,UAAU,CAAC;IACtC,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB,KAAK,CAAC,EAAE;QACN,OAAO,CAAC,EAAE,OAAO,CAAC;QAClB,GAAG,CAAC,EAAE,MAAM,CAAC;QACb,UAAU,CAAC,EAAE,MAAM,CAAC;KACrB,CAAC;IAEF,aAAa,CAAC,EAAE,gBAAgB,CAAC;IAEjC,eAAe,CAAC,EAAE,SAAS,CAAC;IAC5B,aAAa,CAAC,EAAE,SAAS,GAAG,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,IAAI,KAAK,SAAS,CAAC,CAAC;CAC9E;AAED,UAAU,kBAAkB;IAE1B,MAAM,EAAE,gBAAgB,GAAG,IAAI,CAAC;IAChC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,eAAe,EAAE,OAAO,CAAC;IACzB,WAAW,EAAE,KAAK,GAAG,IAAI,CAAC;IAC1B,WAAW,EAAE,MAAM,IAAI,CAAC;IAExB,QAAQ,EAAE,cAAc,GAAG,IAAI,CAAC;IAChC,cAAc,EAAE,UAAU,GAAG,IAAI,CAAC;IAClC,iBAAiB,EAAE,OAAO,CAAC;IAC3B,aAAa,EAAE,KAAK,GAAG,IAAI,CAAC;IAE5B,eAAe,EAAE,MAAM,IAAI,CAAC;IAC5B,YAAY,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,UAAU,GAAG,QAAQ,KAAK,IAAI,CAAC;IAEzE,gBAAgB,EAAE,CAAC,QAAQ,EAAE,cAAc,KAAK;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,MAAM,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC;CACxF;AAID,UAAU,mBAAmB;IAC3B,MAAM,EAAE,YAAY,CAAC;IACrB,QAAQ,EAAE,SAAS,CAAC;CACrB;AAmDD,wBAAgB,cAAc,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,mBAAmB,2CAybvE;AAED,wBAAgB,SAAS,IAAI,kBAAkB,CAM9C;AAGD,eAAO,MAAM,iBAAiB,kBAAY,CAAC;AAG3C,wBAAgB,WAAW;;;;;iCAlgBI,cAAc,KAAK;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,MAAM,EAAE,MAAM,EAAE,CAAA;KAAE;EA4gBvF;AAGD,wBAAgB,aAAa;;;;;iBAzhBR,IAAI;EAkiBxB"}
1
+ {"version":3,"file":"TenantProvider.d.ts","sourceRoot":"","sources":["../../src/providers/TenantProvider.tsx"],"names":[],"mappings":"AAAA,OAAO,EAIL,SAAS,EAIV,MAAM,OAAO,CAAC;AAKf,OAAO,KAAK,EAAE,cAAc,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AASjF,MAAM,WAAW,YAAY;IAE3B,UAAU,CAAC,EAAE,WAAW,GAAG,UAAU,CAAC;IACtC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB,KAAK,CAAC,EAAE;QACN,OAAO,CAAC,EAAE,OAAO,CAAC;QAClB,GAAG,CAAC,EAAE,MAAM,CAAC;QACb,UAAU,CAAC,EAAE,MAAM,CAAC;KACrB,CAAC;IAEF,aAAa,CAAC,EAAE,gBAAgB,CAAC;CAClC;AAED,UAAU,kBAAkB;IAE1B,MAAM,EAAE,gBAAgB,GAAG,IAAI,CAAC;IAChC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,eAAe,EAAE,OAAO,CAAC;IACzB,WAAW,EAAE,KAAK,GAAG,IAAI,CAAC;IAC1B,WAAW,EAAE,MAAM,IAAI,CAAC;IAExB,QAAQ,EAAE,cAAc,GAAG,IAAI,CAAC;IAChC,cAAc,EAAE,UAAU,GAAG,IAAI,CAAC;IAClC,iBAAiB,EAAE,OAAO,CAAC;IAC3B,aAAa,EAAE,KAAK,GAAG,IAAI,CAAC;IAE5B,eAAe,EAAE,MAAM,IAAI,CAAC;IAC5B,YAAY,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,UAAU,GAAG,QAAQ,KAAK,IAAI,CAAC;IAEzE,gBAAgB,EAAE,CAAC,QAAQ,EAAE,cAAc,KAAK;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,MAAM,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC;CACxF;AAID,UAAU,mBAAmB;IAC3B,MAAM,EAAE,YAAY,CAAC;IACrB,QAAQ,EAAE,SAAS,CAAC;CACrB;AAED,wBAAgB,cAAc,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,mBAAmB,2CAoZvE;AAED,wBAAgB,SAAS,IAAI,kBAAkB,CAM9C;AAGD,wBAAgB,iBAAiB,IAAI,kBAAkB,GAAG,IAAI,CAE7D;AAGD,eAAO,MAAM,iBAAiB,kBAAY,CAAC;AAG3C,wBAAgB,WAAW;;;;;iCAjbI,cAAc,KAAK;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,MAAM,EAAE,MAAM,EAAE,CAAA;KAAE;EA2bvF;AAGD,wBAAgB,aAAa;;;;;iBAxcR,IAAI;EAidxB"}
@@ -0,0 +1,26 @@
1
+ /**
2
+ * Tenant detection utilities
3
+ * Extracted for testability
4
+ */
5
+ export interface TenantDetectionConfig {
6
+ tenantMode: 'subdomain' | 'selector';
7
+ baseDomain?: string;
8
+ selectorParam?: string;
9
+ }
10
+ export interface LocationInfo {
11
+ hostname: string;
12
+ search: string;
13
+ }
14
+ /**
15
+ * Detect tenant slug from subdomain
16
+ */
17
+ export declare function detectSubdomainTenant(hostname: string, baseDomain?: string): string | null;
18
+ /**
19
+ * Detect tenant slug from URL selector parameter
20
+ */
21
+ export declare function detectSelectorTenant(search: string, selectorParam?: string, localStorage?: Storage | null): string | null;
22
+ /**
23
+ * Main tenant detection function
24
+ */
25
+ export declare function detectTenantSlug(config: TenantDetectionConfig, location: LocationInfo, localStorage?: Storage | null): string | null;
26
+ //# sourceMappingURL=tenantDetection.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tenantDetection.d.ts","sourceRoot":"","sources":["../../src/utils/tenantDetection.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,WAAW,qBAAqB;IACpC,UAAU,EAAE,WAAW,GAAG,UAAU,CAAC;IACrC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,YAAY;IAC3B,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAwC1F;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,MAAM,EACd,aAAa,GAAE,MAAiB,EAChC,YAAY,CAAC,EAAE,OAAO,GAAG,IAAI,GAC5B,MAAM,GAAG,IAAI,CAkBf;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAC9B,MAAM,EAAE,qBAAqB,EAC7B,QAAQ,EAAE,YAAY,EACtB,YAAY,CAAC,EAAE,OAAO,GAAG,IAAI,GAC5B,MAAM,GAAG,IAAI,CAYf"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@skylabs-digital/react-identity-access",
3
- "version": "2.0.1",
3
+ "version": "2.1.0",
4
4
  "type": "module",
5
5
  "publishConfig": {
6
6
  "access": "public"