@bmc-soft/keycloak-auth 2.0.5 → 2.0.7

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.
@@ -1,6 +1,7 @@
1
1
  import React, { type ReactNode } from 'react';
2
2
  import type { BackgroundReauthConfig, InitRecoveryStrategy, KeycloakConfigWith2FA, KeycloakTokens, RNKeycloakInitOptions } from '../core';
3
3
  import type { KeycloakTheme } from './KeycloakThemeContext';
4
+ import { type KeycloakLoginPageTheme } from './KeycloakWebViewInjectionContext';
4
5
  export interface KeycloakProviderProps {
5
6
  children: ReactNode;
6
7
  config: KeycloakConfigWith2FA;
@@ -17,6 +18,8 @@ export interface KeycloakProviderProps {
17
18
  autoRefreshToken?: boolean;
18
19
  autoRefreshTokenMinValidity?: number;
19
20
  onReauthRequired?: () => void;
21
+ webViewLoginInjectedJavaScript?: string;
22
+ webViewLoginPageTheme?: KeycloakLoginPageTheme;
20
23
  }
21
24
  export declare const KeycloakProvider: React.NamedExoticComponent<KeycloakProviderProps>;
22
25
  //# sourceMappingURL=KeycloakProvider.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"KeycloakProvider.d.ts","sourceRoot":"","sources":["../../src/context/KeycloakProvider.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,EAAC,KAAK,SAAS,EAAC,MAAM,OAAO,CAAC;AAE5C,OAAO,KAAK,EACV,sBAAsB,EACtB,oBAAoB,EACpB,qBAAqB,EACrB,cAAc,EACd,qBAAqB,EACtB,MAAM,SAAS,CAAC;AAIjB,OAAO,KAAK,EAAC,aAAa,EAAC,MAAM,wBAAwB,CAAC;AAI1D,MAAM,WAAW,qBAAqB;IACpC,QAAQ,EAAE,SAAS,CAAC;IACpB,MAAM,EAAE,qBAAqB,CAAC;IAC9B,WAAW,EAAE,MAAM,CAAC;IAEpB,KAAK,CAAC,EAAE,aAAa,CAAC;IAEtB,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,cAAc,KAAK,IAAI,CAAC;IAE5C,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAE/B,gBAAgB,CAAC,EAAE,sBAAsB,CAAC;IAE1C,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB,eAAe,CAAC,EAAE,MAAM,MAAM,GAAG,SAAS,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IAEzE,oBAAoB,CAAC,EAAE,oBAAoB,CAAC;IAK5C,6BAA6B,CAAC,EAAE,OAAO,CAAC;IAExC,UAAU,CAAC,EAAE,qBAAqB,CAAC,QAAQ,CAAC,CAAC;IAE7C,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAE3B,2BAA2B,CAAC,EAAE,MAAM,CAAC;IAErC,gBAAgB,CAAC,EAAE,MAAM,IAAI,CAAC;CAC/B;AAwBD,eAAO,MAAM,gBAAgB,mDA0C5B,CAAC"}
1
+ {"version":3,"file":"KeycloakProvider.d.ts","sourceRoot":"","sources":["../../src/context/KeycloakProvider.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,EAAC,KAAK,SAAS,EAAC,MAAM,OAAO,CAAC;AAE5C,OAAO,KAAK,EACV,sBAAsB,EACtB,oBAAoB,EACpB,qBAAqB,EACrB,cAAc,EACd,qBAAqB,EACtB,MAAM,SAAS,CAAC;AAIjB,OAAO,KAAK,EAAC,aAAa,EAAC,MAAM,wBAAwB,CAAC;AAC1D,OAAO,EAEL,KAAK,sBAAsB,EAC5B,MAAM,mCAAmC,CAAC;AAI3C,MAAM,WAAW,qBAAqB;IACpC,QAAQ,EAAE,SAAS,CAAC;IACpB,MAAM,EAAE,qBAAqB,CAAC;IAC9B,WAAW,EAAE,MAAM,CAAC;IAEpB,KAAK,CAAC,EAAE,aAAa,CAAC;IAEtB,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,cAAc,KAAK,IAAI,CAAC;IAE5C,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAE/B,gBAAgB,CAAC,EAAE,sBAAsB,CAAC;IAE1C,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB,eAAe,CAAC,EAAE,MAAM,MAAM,GAAG,SAAS,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IAEzE,oBAAoB,CAAC,EAAE,oBAAoB,CAAC;IAK5C,6BAA6B,CAAC,EAAE,OAAO,CAAC;IAExC,UAAU,CAAC,EAAE,qBAAqB,CAAC,QAAQ,CAAC,CAAC;IAE7C,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAE3B,2BAA2B,CAAC,EAAE,MAAM,CAAC;IAErC,gBAAgB,CAAC,EAAE,MAAM,IAAI,CAAC;IAE9B,8BAA8B,CAAC,EAAE,MAAM,CAAC;IAExC,qBAAqB,CAAC,EAAE,sBAAsB,CAAC;CAChD;AAwBD,eAAO,MAAM,gBAAgB,mDAgD5B,CAAC"}
@@ -2,16 +2,19 @@ import React from 'react';
2
2
  import { KeycloakConfigProvider } from './KeycloakConfigContext';
3
3
  import { KeycloakInstanceProvider } from './KeycloakInstanceContext';
4
4
  import { KeycloakThemeProvider } from './KeycloakThemeContext';
5
+ import { KeycloakWebViewInjectionProvider, } from './KeycloakWebViewInjectionContext';
5
6
  import { ReauthProvider } from './ReauthContext';
6
7
  import { TokenProvider } from './TokenContext';
7
- export const KeycloakProvider = React.memo(({ children, config, redirectUri, theme, onTokens, offlineAccessEnabled, backgroundReauth, clientSecret, getClientSecret, initRecoveryStrategy, deferStoredTokensUntilRefresh, initOnLoad, autoRefreshToken = true, autoRefreshTokenMinValidity = 5, onReauthRequired, }) => {
8
+ export const KeycloakProvider = React.memo(({ children, config, redirectUri, theme, onTokens, offlineAccessEnabled, backgroundReauth, clientSecret, getClientSecret, initRecoveryStrategy, deferStoredTokensUntilRefresh, initOnLoad, autoRefreshToken = true, autoRefreshTokenMinValidity = 5, onReauthRequired, webViewLoginInjectedJavaScript, webViewLoginPageTheme, }) => {
8
9
  return (<KeycloakConfigProvider config={config} offlineAccessEnabled={offlineAccessEnabled} backgroundReauth={backgroundReauth} clientSecret={clientSecret} getClientSecret={getClientSecret} deferStoredTokensUntilRefresh={deferStoredTokensUntilRefresh} initRecoveryStrategy={initRecoveryStrategy}>
9
10
  <KeycloakInstanceProvider redirectUri={redirectUri} autoRefreshToken={autoRefreshToken} autoRefreshTokenMinValidity={autoRefreshTokenMinValidity} initOnLoad={initOnLoad} onReauthRequired={onReauthRequired}>
10
- <KeycloakThemeProvider theme={theme}>
11
- <TokenProvider onTokens={onTokens}>
12
- <ReauthProvider>{children}</ReauthProvider>
13
- </TokenProvider>
14
- </KeycloakThemeProvider>
11
+ <KeycloakWebViewInjectionProvider loginInjectedJavaScript={webViewLoginInjectedJavaScript} loginPageTheme={webViewLoginPageTheme}>
12
+ <KeycloakThemeProvider theme={theme}>
13
+ <TokenProvider onTokens={onTokens}>
14
+ <ReauthProvider>{children}</ReauthProvider>
15
+ </TokenProvider>
16
+ </KeycloakThemeProvider>
17
+ </KeycloakWebViewInjectionProvider>
15
18
  </KeycloakInstanceProvider>
16
19
  </KeycloakConfigProvider>);
17
20
  });
@@ -1 +1 @@
1
- {"version":3,"file":"KeycloakProvider.js","sourceRoot":"","sources":["../../src/context/KeycloakProvider.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAuB,MAAM,OAAO,CAAC;AAS5C,OAAO,EAAC,sBAAsB,EAAC,MAAM,yBAAyB,CAAC;AAC/D,OAAO,EAAC,wBAAwB,EAAC,MAAM,2BAA2B,CAAC;AACnE,OAAO,EAAC,qBAAqB,EAAC,MAAM,wBAAwB,CAAC;AAE7D,OAAO,EAAC,cAAc,EAAC,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAC,aAAa,EAAC,MAAM,gBAAgB,CAAC;AAyD7C,MAAM,CAAC,MAAM,gBAAgB,GAAG,KAAK,CAAC,IAAI,CACxC,CAAC,EACC,QAAQ,EACR,MAAM,EACN,WAAW,EACX,KAAK,EACL,QAAQ,EACR,oBAAoB,EACpB,gBAAgB,EAChB,YAAY,EACZ,eAAe,EACf,oBAAoB,EACpB,6BAA6B,EAC7B,UAAU,EACV,gBAAgB,GAAG,IAAI,EACvB,2BAA2B,GAAG,CAAC,EAC/B,gBAAgB,GACjB,EAAE,EAAE;IACH,OAAO,CACL,CAAC,sBAAsB,CACrB,MAAM,CAAC,CAAC,MAAM,CAAC,CACf,oBAAoB,CAAC,CAAC,oBAAoB,CAAC,CAC3C,gBAAgB,CAAC,CAAC,gBAAgB,CAAC,CACnC,YAAY,CAAC,CAAC,YAAY,CAAC,CAC3B,eAAe,CAAC,CAAC,eAAe,CAAC,CACjC,6BAA6B,CAAC,CAAC,6BAA6B,CAAC,CAC7D,oBAAoB,CAAC,CAAC,oBAAoB,CAAC,CAC3C;QAAA,CAAC,wBAAwB,CACvB,WAAW,CAAC,CAAC,WAAW,CAAC,CACzB,gBAAgB,CAAC,CAAC,gBAAgB,CAAC,CACnC,2BAA2B,CAAC,CAAC,2BAA2B,CAAC,CACzD,UAAU,CAAC,CAAC,UAAU,CAAC,CACvB,gBAAgB,CAAC,CAAC,gBAAgB,CAAC,CACnC;UAAA,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAClC;YAAA,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,CAChC;cAAA,CAAC,cAAc,CAAC,CAAC,QAAQ,CAAC,EAAE,cAAc,CAC5C;YAAA,EAAE,aAAa,CACjB;UAAA,EAAE,qBAAqB,CACzB;QAAA,EAAE,wBAAwB,CAC5B;MAAA,EAAE,sBAAsB,CAAC,CAC1B,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,gBAAgB,CAAC,WAAW,GAAG,kBAAkB,CAAC"}
1
+ {"version":3,"file":"KeycloakProvider.js","sourceRoot":"","sources":["../../src/context/KeycloakProvider.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAuB,MAAM,OAAO,CAAC;AAS5C,OAAO,EAAC,sBAAsB,EAAC,MAAM,yBAAyB,CAAC;AAC/D,OAAO,EAAC,wBAAwB,EAAC,MAAM,2BAA2B,CAAC;AACnE,OAAO,EAAC,qBAAqB,EAAC,MAAM,wBAAwB,CAAC;AAE7D,OAAO,EACL,gCAAgC,GAEjC,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EAAC,cAAc,EAAC,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAC,aAAa,EAAC,MAAM,gBAAgB,CAAC;AA6D7C,MAAM,CAAC,MAAM,gBAAgB,GAAG,KAAK,CAAC,IAAI,CACxC,CAAC,EACC,QAAQ,EACR,MAAM,EACN,WAAW,EACX,KAAK,EACL,QAAQ,EACR,oBAAoB,EACpB,gBAAgB,EAChB,YAAY,EACZ,eAAe,EACf,oBAAoB,EACpB,6BAA6B,EAC7B,UAAU,EACV,gBAAgB,GAAG,IAAI,EACvB,2BAA2B,GAAG,CAAC,EAC/B,gBAAgB,EAChB,8BAA8B,EAC9B,qBAAqB,GACtB,EAAE,EAAE;IACH,OAAO,CACL,CAAC,sBAAsB,CACrB,MAAM,CAAC,CAAC,MAAM,CAAC,CACf,oBAAoB,CAAC,CAAC,oBAAoB,CAAC,CAC3C,gBAAgB,CAAC,CAAC,gBAAgB,CAAC,CACnC,YAAY,CAAC,CAAC,YAAY,CAAC,CAC3B,eAAe,CAAC,CAAC,eAAe,CAAC,CACjC,6BAA6B,CAAC,CAAC,6BAA6B,CAAC,CAC7D,oBAAoB,CAAC,CAAC,oBAAoB,CAAC,CAC3C;QAAA,CAAC,wBAAwB,CACvB,WAAW,CAAC,CAAC,WAAW,CAAC,CACzB,gBAAgB,CAAC,CAAC,gBAAgB,CAAC,CACnC,2BAA2B,CAAC,CAAC,2BAA2B,CAAC,CACzD,UAAU,CAAC,CAAC,UAAU,CAAC,CACvB,gBAAgB,CAAC,CAAC,gBAAgB,CAAC,CACnC;UAAA,CAAC,gCAAgC,CAC/B,uBAAuB,CAAC,CAAC,8BAA8B,CAAC,CACxD,cAAc,CAAC,CAAC,qBAAqB,CAAC,CACtC;YAAA,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAClC;cAAA,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,CAChC;gBAAA,CAAC,cAAc,CAAC,CAAC,QAAQ,CAAC,EAAE,cAAc,CAC5C;cAAA,EAAE,aAAa,CACjB;YAAA,EAAE,qBAAqB,CACzB;UAAA,EAAE,gCAAgC,CACpC;QAAA,EAAE,wBAAwB,CAC5B;MAAA,EAAE,sBAAsB,CAAC,CAC1B,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,gBAAgB,CAAC,WAAW,GAAG,kBAAkB,CAAC"}
@@ -0,0 +1,15 @@
1
+ import React, { type ReactNode } from 'react';
2
+ export type KeycloakLoginPageTheme = 'base';
3
+ interface KeycloakWebViewInjectionContextValue {
4
+ loginInjectedJavaScript?: string;
5
+ loginPageTheme?: KeycloakLoginPageTheme;
6
+ }
7
+ export interface KeycloakWebViewInjectionProviderProps {
8
+ children: ReactNode;
9
+ loginInjectedJavaScript?: string;
10
+ loginPageTheme?: KeycloakLoginPageTheme;
11
+ }
12
+ export declare const KeycloakWebViewInjectionProvider: React.NamedExoticComponent<KeycloakWebViewInjectionProviderProps>;
13
+ export declare function useKeycloakWebViewInjection(): KeycloakWebViewInjectionContextValue;
14
+ export {};
15
+ //# sourceMappingURL=KeycloakWebViewInjectionContext.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"KeycloakWebViewInjectionContext.d.ts","sourceRoot":"","sources":["../../src/context/KeycloakWebViewInjectionContext.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAgB,KAAK,SAAS,EAAa,MAAM,OAAO,CAAC;AAEvE,MAAM,MAAM,sBAAsB,GAAG,MAAM,CAAC;AAE5C,UAAU,oCAAoC;IAC5C,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,cAAc,CAAC,EAAE,sBAAsB,CAAC;CACzC;AAED,MAAM,WAAW,qCAAqC;IACpD,QAAQ,EAAE,SAAS,CAAC;IACpB,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,cAAc,CAAC,EAAE,sBAAsB,CAAC;CACzC;AAOD,eAAO,MAAM,gCAAgC,mEAM5C,CAAC;AAIF,wBAAgB,2BAA2B,IAAI,oCAAoC,CAElF"}
@@ -0,0 +1,13 @@
1
+ import React, { createContext, useContext } from 'react';
2
+ const KeycloakWebViewInjectionContext = createContext({
3
+ loginInjectedJavaScript: undefined,
4
+ loginPageTheme: undefined,
5
+ });
6
+ export const KeycloakWebViewInjectionProvider = React.memo(({ children, loginInjectedJavaScript, loginPageTheme }) => (<KeycloakWebViewInjectionContext.Provider value={{ loginInjectedJavaScript, loginPageTheme }}>
7
+ {children}
8
+ </KeycloakWebViewInjectionContext.Provider>));
9
+ KeycloakWebViewInjectionProvider.displayName = 'KeycloakWebViewInjectionProvider';
10
+ export function useKeycloakWebViewInjection() {
11
+ return useContext(KeycloakWebViewInjectionContext);
12
+ }
13
+ //# sourceMappingURL=KeycloakWebViewInjectionContext.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"KeycloakWebViewInjectionContext.js","sourceRoot":"","sources":["../../src/context/KeycloakWebViewInjectionContext.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAC,aAAa,EAAkB,UAAU,EAAC,MAAM,OAAO,CAAC;AAevE,MAAM,+BAA+B,GAAG,aAAa,CAAuC;IAC1F,uBAAuB,EAAE,SAAS;IAClC,cAAc,EAAE,SAAS;CAC1B,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,gCAAgC,GAAG,KAAK,CAAC,IAAI,CACxD,CAAC,EAAC,QAAQ,EAAE,uBAAuB,EAAE,cAAc,EAAC,EAAE,EAAE,CAAC,CACvD,CAAC,+BAA+B,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAC,uBAAuB,EAAE,cAAc,EAAC,CAAC,CACzF;MAAA,CAAC,QAAQ,CACX;IAAA,EAAE,+BAA+B,CAAC,QAAQ,CAAC,CAC5C,CACF,CAAC;AAEF,gCAAgC,CAAC,WAAW,GAAG,kCAAkC,CAAC;AAElF,MAAM,UAAU,2BAA2B;IACzC,OAAO,UAAU,CAAC,+BAA+B,CAAC,CAAC;AACrD,CAAC"}
@@ -11,4 +11,6 @@ export { ReauthProvider, useReauth } from './ReauthContext';
11
11
  export type { ReauthProviderProps, ReauthReason } from './ReauthContext';
12
12
  export { KeycloakThemeProvider, useKeycloakTheme, defaultKeycloakTheme, } from './KeycloakThemeContext';
13
13
  export type { KeycloakTheme, KeycloakThemeButtonComponent, KeycloakThemeButtonProps, KeycloakThemeContextValue, KeycloakThemeFonts, KeycloakThemeColors, KeycloakThemeIconButtonComponent, KeycloakThemeIconButtonProps, KeycloakThemeLoaderComponent, KeycloakThemeProviderProps, ResolvedKeycloakThemeColors, } from './KeycloakThemeContext';
14
+ export { KeycloakWebViewInjectionProvider, useKeycloakWebViewInjection, } from './KeycloakWebViewInjectionContext';
15
+ export type { KeycloakLoginPageTheme, KeycloakWebViewInjectionProviderProps, } from './KeycloakWebViewInjectionContext';
14
16
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/context/index.ts"],"names":[],"mappings":"AAKA,OAAO,EAAC,gBAAgB,EAAC,MAAM,oBAAoB,CAAC;AACpD,YAAY,EAAC,qBAAqB,EAAC,MAAM,oBAAoB,CAAC;AAC9D,YAAY,EAAC,cAAc,EAAC,MAAM,eAAe,CAAC;AAElD,OAAO,EACL,sBAAsB,EACtB,iBAAiB,EACjB,wBAAwB,EACxB,yBAAyB,GAC1B,MAAM,yBAAyB,CAAC;AACjC,YAAY,EAAC,2BAA2B,EAAC,MAAM,yBAAyB,CAAC;AAEzE,OAAO,EAAC,wBAAwB,EAAE,mBAAmB,EAAC,MAAM,2BAA2B,CAAC;AACxF,YAAY,EAAC,6BAA6B,EAAC,MAAM,2BAA2B,CAAC;AAE7E,OAAO,EAAC,aAAa,EAAE,QAAQ,EAAC,MAAM,gBAAgB,CAAC;AACvD,YAAY,EAAC,kBAAkB,EAAC,MAAM,gBAAgB,CAAC;AAEvD,OAAO,EAAC,cAAc,EAAE,SAAS,EAAC,MAAM,iBAAiB,CAAC;AAC1D,YAAY,EAAC,mBAAmB,EAAE,YAAY,EAAC,MAAM,iBAAiB,CAAC;AAEvE,OAAO,EACL,qBAAqB,EACrB,gBAAgB,EAChB,oBAAoB,GACrB,MAAM,wBAAwB,CAAC;AAChC,YAAY,EACV,aAAa,EACb,4BAA4B,EAC5B,wBAAwB,EACxB,yBAAyB,EACzB,kBAAkB,EAClB,mBAAmB,EACnB,gCAAgC,EAChC,4BAA4B,EAC5B,4BAA4B,EAC5B,0BAA0B,EAC1B,2BAA2B,GAC5B,MAAM,wBAAwB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/context/index.ts"],"names":[],"mappings":"AAKA,OAAO,EAAC,gBAAgB,EAAC,MAAM,oBAAoB,CAAC;AACpD,YAAY,EAAC,qBAAqB,EAAC,MAAM,oBAAoB,CAAC;AAC9D,YAAY,EAAC,cAAc,EAAC,MAAM,eAAe,CAAC;AAElD,OAAO,EACL,sBAAsB,EACtB,iBAAiB,EACjB,wBAAwB,EACxB,yBAAyB,GAC1B,MAAM,yBAAyB,CAAC;AACjC,YAAY,EAAC,2BAA2B,EAAC,MAAM,yBAAyB,CAAC;AAEzE,OAAO,EAAC,wBAAwB,EAAE,mBAAmB,EAAC,MAAM,2BAA2B,CAAC;AACxF,YAAY,EAAC,6BAA6B,EAAC,MAAM,2BAA2B,CAAC;AAE7E,OAAO,EAAC,aAAa,EAAE,QAAQ,EAAC,MAAM,gBAAgB,CAAC;AACvD,YAAY,EAAC,kBAAkB,EAAC,MAAM,gBAAgB,CAAC;AAEvD,OAAO,EAAC,cAAc,EAAE,SAAS,EAAC,MAAM,iBAAiB,CAAC;AAC1D,YAAY,EAAC,mBAAmB,EAAE,YAAY,EAAC,MAAM,iBAAiB,CAAC;AAEvE,OAAO,EACL,qBAAqB,EACrB,gBAAgB,EAChB,oBAAoB,GACrB,MAAM,wBAAwB,CAAC;AAChC,YAAY,EACV,aAAa,EACb,4BAA4B,EAC5B,wBAAwB,EACxB,yBAAyB,EACzB,kBAAkB,EAClB,mBAAmB,EACnB,gCAAgC,EAChC,4BAA4B,EAC5B,4BAA4B,EAC5B,0BAA0B,EAC1B,2BAA2B,GAC5B,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EACL,gCAAgC,EAChC,2BAA2B,GAC5B,MAAM,mCAAmC,CAAC;AAC3C,YAAY,EACV,sBAAsB,EACtB,qCAAqC,GACtC,MAAM,mCAAmC,CAAC"}
@@ -4,4 +4,5 @@ export { KeycloakInstanceProvider, useKeycloakInstance } from './KeycloakInstanc
4
4
  export { TokenProvider, useToken } from './TokenContext';
5
5
  export { ReauthProvider, useReauth } from './ReauthContext';
6
6
  export { KeycloakThemeProvider, useKeycloakTheme, defaultKeycloakTheme, } from './KeycloakThemeContext';
7
+ export { KeycloakWebViewInjectionProvider, useKeycloakWebViewInjection, } from './KeycloakWebViewInjectionContext';
7
8
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/context/index.ts"],"names":[],"mappings":"AAKA,OAAO,EAAC,gBAAgB,EAAC,MAAM,oBAAoB,CAAC;AAIpD,OAAO,EACL,sBAAsB,EACtB,iBAAiB,EACjB,wBAAwB,EACxB,yBAAyB,GAC1B,MAAM,yBAAyB,CAAC;AAGjC,OAAO,EAAC,wBAAwB,EAAE,mBAAmB,EAAC,MAAM,2BAA2B,CAAC;AAGxF,OAAO,EAAC,aAAa,EAAE,QAAQ,EAAC,MAAM,gBAAgB,CAAC;AAGvD,OAAO,EAAC,cAAc,EAAE,SAAS,EAAC,MAAM,iBAAiB,CAAC;AAG1D,OAAO,EACL,qBAAqB,EACrB,gBAAgB,EAChB,oBAAoB,GACrB,MAAM,wBAAwB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/context/index.ts"],"names":[],"mappings":"AAKA,OAAO,EAAC,gBAAgB,EAAC,MAAM,oBAAoB,CAAC;AAIpD,OAAO,EACL,sBAAsB,EACtB,iBAAiB,EACjB,wBAAwB,EACxB,yBAAyB,GAC1B,MAAM,yBAAyB,CAAC;AAGjC,OAAO,EAAC,wBAAwB,EAAE,mBAAmB,EAAC,MAAM,2BAA2B,CAAC;AAGxF,OAAO,EAAC,aAAa,EAAE,QAAQ,EAAC,MAAM,gBAAgB,CAAC;AAGvD,OAAO,EAAC,cAAc,EAAE,SAAS,EAAC,MAAM,iBAAiB,CAAC;AAG1D,OAAO,EACL,qBAAqB,EACrB,gBAAgB,EAChB,oBAAoB,GACrB,MAAM,wBAAwB,CAAC;AAehC,OAAO,EACL,gCAAgC,EAChC,2BAA2B,GAC5B,MAAM,mCAAmC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"WebViewLogin.d.ts","sourceRoot":"","sources":["../../../src/ui/WebViewLogin/WebViewLogin.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA0D,MAAM,OAAO,CAAC;AA6B/E,UAAU,iBAAiB;IAKzB,cAAc,CAAC,EAAE,CAAC,IAAI,EAAE;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAC,KAAK,IAAI,CAAC;IAKnF,KAAK,CAAC,EAAE,GAAG,CAAC;IAKZ,UAAU,CAAC,EAAE,MAAM,CAAC;IAKpB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AA0DD,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,iBAAiB,CAmNpD,CAAC"}
1
+ {"version":3,"file":"WebViewLogin.d.ts","sourceRoot":"","sources":["../../../src/ui/WebViewLogin/WebViewLogin.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA0D,MAAM,OAAO,CAAC;AA+B/E,UAAU,iBAAiB;IAKzB,cAAc,CAAC,EAAE,CAAC,IAAI,EAAE;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAC,KAAK,IAAI,CAAC;IAKnF,KAAK,CAAC,EAAE,GAAG,CAAC;IAKZ,UAAU,CAAC,EAAE,MAAM,CAAC;IAKpB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AA0DD,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,iBAAiB,CAmOpD,CAAC"}
@@ -2,7 +2,9 @@ import React, { useCallback, useEffect, useMemo, useRef, useState } from 'react'
2
2
  import { Linking, Platform, StyleSheet, Text, View } from 'react-native';
3
3
  import WebView from 'react-native-webview';
4
4
  import { useKeycloakTheme } from '../../context/KeycloakThemeContext';
5
+ import { useKeycloakWebViewInjection } from '../../context/KeycloakWebViewInjectionContext';
5
6
  import { useKeycloakAuth, useKeycloakInstance } from '../../hooks';
7
+ import { KEYCLOAK_BASE_LOGIN_INJECTED_JS } from './baseLoginTheme';
6
8
  const SUPPORT_EMAIL = 'helpdesk@utg.group';
7
9
  const REPORT_SUBJECT = 'Проблема с загрузкой страницы входа';
8
10
  const sanitizeUrl = (value) => value?.split(/[?#]/)[0] || 'Неизвестно';
@@ -33,6 +35,8 @@ const buildWebViewErrorReportBody = ({ error, loginUrl, }) => [
33
35
  ].join('\r\n');
34
36
  export const WebViewLogin = ({ onLoginSuccess, style }) => {
35
37
  const { colors: { background: backgroundColor, text: textColor }, ContainedButtonComponent, LoaderComponent, OutlinedButtonComponent, } = useKeycloakTheme();
38
+ const { loginInjectedJavaScript, loginPageTheme } = useKeycloakWebViewInjection();
39
+ const themeInjectedJavaScript = loginPageTheme === 'base' ? KEYCLOAK_BASE_LOGIN_INJECTED_JS : loginInjectedJavaScript;
36
40
  const [user, setUser] = useState({ username: '', password: '' });
37
41
  const [loading, setLoading] = useState(true);
38
42
  const [loginUrl, setLoginUrl] = useState('');
@@ -124,6 +128,16 @@ export const WebViewLogin = ({ onLoginSuccess, style }) => {
124
128
  const errorDetails = useMemo(() => [webViewError?.domain, webViewError?.code !== undefined ? webViewError.code : undefined]
125
129
  .filter(Boolean)
126
130
  .join(' / '), [webViewError]);
131
+ const injectLoginJavaScript = useCallback(() => {
132
+ if (!themeInjectedJavaScript) {
133
+ return;
134
+ }
135
+ webViewRef.current?.injectJavaScript(themeInjectedJavaScript);
136
+ }, [themeInjectedJavaScript]);
137
+ const handleLoadEnd = useCallback(() => {
138
+ setLoading(false);
139
+ injectLoginJavaScript();
140
+ }, [injectLoginJavaScript]);
127
141
  const defaultInjectedJS = `
128
142
  (function() {
129
143
  // Отключаем автозаполнение
@@ -175,7 +189,7 @@ export const WebViewLogin = ({ onLoginSuccess, style }) => {
175
189
  </OutlinedButtonComponent>
176
190
  </View>
177
191
  </View>
178
- </View>) : loginUrl ? (<WebView key={webViewKey} ref={webViewRef} source={{ uri: loginUrl }} androidLayerType="software" onLoadStart={() => setLoading(true)} onLoadEnd={() => setLoading(false)} onError={handleWebViewError} onHttpError={handleWebViewHttpError} onNavigationStateChange={handleNavigationStateChange} onMessage={handleMessage} javaScriptEnabled={true} injectedJavaScript={defaultInjectedJS} incognito={true} style={[styles.flex, { backgroundColor }]}/>) : null}
192
+ </View>) : loginUrl ? (<WebView key={webViewKey} ref={webViewRef} source={{ uri: loginUrl }} androidLayerType="software" onLoadStart={() => setLoading(true)} onLoadEnd={handleLoadEnd} onError={handleWebViewError} onHttpError={handleWebViewHttpError} onNavigationStateChange={handleNavigationStateChange} onMessage={handleMessage} javaScriptEnabled={true} injectedJavaScriptBeforeContentLoaded={themeInjectedJavaScript} injectedJavaScript={defaultInjectedJS} incognito={true} style={[styles.flex, { backgroundColor }]}/>) : null}
179
193
 
180
194
  {(loading || !loginUrl) && !webViewError ? (<View style={[StyleSheet.absoluteFillObject, { backgroundColor }]}>
181
195
  <LoaderComponent />
@@ -1 +1 @@
1
- {"version":3,"file":"WebViewLogin.js","sourceRoot":"","sources":["../../../src/ui/WebViewLogin/WebViewLogin.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAC,WAAW,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAC,MAAM,OAAO,CAAC;AAC/E,OAAO,EAAC,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,IAAI,EAAE,IAAI,EAAC,MAAM,cAAc,CAAC;AACvE,OAAO,OAA8B,MAAM,sBAAsB,CAAC;AAElE,OAAO,EAAC,gBAAgB,EAAC,MAAM,oCAAoC,CAAC;AACpE,OAAO,EAAC,eAAe,EAAE,mBAAmB,EAAC,MAAM,aAAa,CAAC;AAEjE,MAAM,aAAa,GAAG,oBAAoB,CAAC;AAC3C,MAAM,cAAc,GAAG,qCAAqC,CAAC;AA4C7D,MAAM,WAAW,GAAG,CAAC,KAAc,EAAU,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,YAAY,CAAC;AAExF,MAAM,cAAc,GAAG,CAAC,KAAuB,EAAU,EAAE;IACzD,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,EAAE,EAAE,CAAC;QAC1D,OAAO,YAAY,CAAC;IACtB,CAAC;IACD,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC;AACvB,CAAC,CAAC;AAEF,MAAM,cAAc,GAAG,CAAC,EAAC,OAAO,EAAE,IAAI,EAAkC,EAAU,EAAE,CAClF,UAAU,aAAa,YAAY,kBAAkB,CAAC,OAAO,CAAC,SAAS,kBAAkB,CAAC,IAAI,CAAC,EAAE,CAAC;AAEpG,MAAM,2BAA2B,GAAG,CAAC,EACnC,KAAK,EACL,QAAQ,GAIT,EAAU,EAAE,CACX;IACE,6BAA6B;IAC7B,0CAA0C;IAC1C,EAAE;IACF,gBAAgB;IAChB,0CAA0C;IAC1C,eAAe,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE;IACvC,iBAAiB,cAAc,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE;IAC/C,eAAe,cAAc,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE;IAC3C,oBAAoB,cAAc,CAAC,KAAK,CAAC,WAAW,CAAC,EAAE;IACvD,EAAE;IACF,UAAU;IACV,0CAA0C;IAC1C,uBAAuB,WAAW,CAAC,QAAQ,CAAC,EAAE;IAC9C,cAAc,QAAQ,CAAC,EAAE,EAAE;IAC3B,UAAU,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EAAE;IACpC,gCAAgC;CACjC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AAoBjB,MAAM,CAAC,MAAM,YAAY,GAAgC,CAAC,EAAC,cAAc,EAAE,KAAK,EAAC,EAAE,EAAE;IACnF,MAAM,EACJ,MAAM,EAAE,EAAC,UAAU,EAAE,eAAe,EAAE,IAAI,EAAE,SAAS,EAAC,EACtD,wBAAwB,EACxB,eAAe,EACf,uBAAuB,GACxB,GAAG,gBAAgB,EAAE,CAAC;IACvB,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,QAAQ,CAAC,EAAC,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAC,CAAC,CAAC;IAC/D,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;IAC7C,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;IAC7C,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,QAAQ,CAA2B,IAAI,CAAC,CAAC;IACjF,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IAChD,MAAM,UAAU,GAAG,MAAM,CAAU,IAAI,CAAC,CAAC;IAEzC,MAAM,EAAC,WAAW,EAAC,GAAG,mBAAmB,EAAE,CAAC;IAC5C,MAAM,EAAC,cAAc,EAAC,GAAG,eAAe,EAAE,CAAC;IAG3C,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,GAAG,GAAG,cAAc,EAAE,CAAC;QAC7B,WAAW,CAAC,GAAG,CAAC,CAAC;IACnB,CAAC,EAAE,CAAC,cAAc,CAAC,CAAC,CAAC;IAGrB,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,QAAQ,CAAC,EAAE,KAAK,KAAK,EAAE,CAAC;YAC1B,MAAM,cAAc,GAAG,CAAC,KAAoB,EAAE,EAAE;gBAC9C,IAAI,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;oBACtC,cAAc,EAAE,CAAC;wBACf,GAAG,IAAI;wBACP,GAAG,EAAE,KAAK,CAAC,GAAG;qBACf,CAAC,CAAC;gBACL,CAAC;YACH,CAAC,CAAC;YAGF,OAAO,CAAC,aAAa,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE;gBACxC,IAAI,UAAU,IAAI,UAAU,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;oBACrD,cAAc,CAAC,EAAC,GAAG,EAAE,UAAU,EAAC,CAAC,CAAC;gBACpC,CAAC;YACH,CAAC,CAAC,CAAC;YAGH,MAAM,YAAY,GAAG,OAAO,CAAC,gBAAgB,CAAC,KAAK,EAAE,cAAc,CAAC,CAAC;YAErE,OAAO,GAAG,EAAE;gBACV,YAAY,CAAC,MAAM,EAAE,CAAC;YACxB,CAAC,CAAC;QACJ,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC,EAAE,CAAC,IAAI,EAAE,cAAc,EAAE,WAAW,CAAC,CAAC,CAAC;IAGxC,MAAM,aAAa,GAAG,WAAW,CAAC,CAAC,KAA0B,EAAE,EAAE;QAC/D,IAAI,CAAC;YACH,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;YACvD,IAAI,WAAW,CAAC,QAAQ,IAAI,WAAW,CAAC,QAAQ,EAAE,CAAC;gBACjD,OAAO,CAAC;oBACN,QAAQ,EAAE,WAAW,CAAC,QAAQ;oBAC9B,QAAQ,EAAE,WAAW,CAAC,QAAQ;iBAC/B,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,4CAA4C,EAAE,KAAK,CAAC,CAAC;QACrE,CAAC;IACH,CAAC,EAAE,EAAE,CAAC,CAAC;IAGP,MAAM,2BAA2B,GAAG,WAAW,CAC7C,CAAC,KAAoB,EAAE,EAAE;QACvB,IAAI,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;YACtC,cAAc,EAAE,CAAC;gBACf,GAAG,IAAI;gBACP,GAAG,EAAE,KAAK,CAAC,GAAG;aACf,CAAC,CAAC;QACL,CAAC;IACH,CAAC,EACD,CAAC,IAAI,EAAE,cAAc,EAAE,WAAW,CAAC,CACpC,CAAC;IAEF,MAAM,kBAAkB,GAAG,WAAW,CAAC,CAAC,EAAC,WAAW,EAAyB,EAAE,EAAE;QAC/E,UAAU,CAAC,KAAK,CAAC,CAAC;QAClB,eAAe,CAAC;YACd,GAAG,EAAE,WAAW,CAAC,GAAG;YACpB,MAAM,EAAE,WAAW,CAAC,MAAM;YAC1B,IAAI,EAAE,WAAW,CAAC,IAAI;YACtB,WAAW,EAAE,WAAW,CAAC,WAAW;SACrC,CAAC,CAAC;IACL,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,MAAM,sBAAsB,GAAG,WAAW,CAAC,CAAC,EAAC,WAAW,EAA6B,EAAE,EAAE;QACvF,UAAU,CAAC,KAAK,CAAC,CAAC;QAClB,eAAe,CAAC;YACd,GAAG,EAAE,WAAW,CAAC,GAAG;YACpB,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,WAAW,CAAC,UAAU;YAC5B,WAAW,EAAE,WAAW,CAAC,WAAW,IAAI,QAAQ,WAAW,CAAC,UAAU,EAAE;SACzE,CAAC,CAAC;IACL,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,MAAM,cAAc,GAAG,WAAW,CAAC,GAAG,EAAE;QACtC,UAAU,CAAC,IAAI,CAAC,CAAC;QACjB,eAAe,CAAC,IAAI,CAAC,CAAC;QACtB,aAAa,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC;IAChC,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,MAAM,oBAAoB,GAAG,WAAW,CAAC,GAAG,EAAE;QAC5C,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,OAAO;QACT,CAAC;QACD,MAAM,IAAI,GAAG,2BAA2B,CAAC,EAAC,KAAK,EAAE,YAAY,EAAE,QAAQ,EAAC,CAAC,CAAC;QAC1E,OAAO,CAAC,OAAO,CAAC,cAAc,CAAC,EAAC,OAAO,EAAE,cAAc,EAAE,IAAI,EAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE;YAC7E,OAAO,CAAC,KAAK,CAAC,mDAAmD,EAAE,KAAK,CAAC,CAAC;QAC5E,CAAC,CAAC,CAAC;IACL,CAAC,EAAE,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC,CAAC;IAE7B,MAAM,YAAY,GAAG,OAAO,CAC1B,GAAG,EAAE,CACH,CAAC,YAAY,EAAE,MAAM,EAAE,YAAY,EAAE,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;SACrF,MAAM,CAAC,OAAO,CAAC;SACf,IAAI,CAAC,KAAK,CAAC,EAChB,CAAC,YAAY,CAAC,CACf,CAAC;IAGF,MAAM,iBAAiB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCzB,CAAC;IAEF,OAAO,CACL,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC,CACrC;MAAA,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CACzB;QAAA,CAAC,YAAY,CAAC,CAAC,CAAC,CACd,CAAC,IAAI,CACH,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,cAAc,EAAE,EAAC,eAAe,EAAC,CAAC,CAAC,CAClD,MAAM,CAAC,6BAA6B,CACpC;YAAA,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,EAAE,EAAC,KAAK,EAAE,SAAS,EAAC,CAAC,CAAC,CAAC,mCAAmC,EAAE,IAAI,CAC/F;YAAA,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,gBAAgB,EAAE,EAAC,KAAK,EAAE,SAAS,EAAC,CAAC,CAAC,CAAC,0CAA0C,EAAE,IAAI,CAC5G;YAAA,CAAC,YAAY,CAAC,CAAC,CAAC,CACd,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,YAAY,EAAE,EAAC,KAAK,EAAE,SAAS,EAAC,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,EAAE,IAAI,CAAC,CAC9E,CAAC,CAAC,CAAC,IAAI,CACR;YAAA,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,CAC7C;QAAA,CAAC,IAAI,CAAC,MAAM,CAAC,6BAA6B,CAC1B;gBAAA,CAAC,wBAAwB,CAAC,OAAO,CAAC,CAAC,cAAc,CAAC,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,iBAAiB,CAAC,CACjF;;gBACF,EAAE,wBAAwB,CAC5B;cAAA,EAAE,IAAI,CACN;cAAA,CAAC,IAAI,CAAC,MAAM,CAAC,8BAA8B,CACzC;gBAAA,CAAC,uBAAuB,CAAC,OAAO,CAAC,CAAC,oBAAoB,CAAC,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,iBAAiB,CAAC,CACtF;;gBACF,EAAE,uBAAuB,CAC3B;cAAA,EAAE,IAAI,CACR;YAAA,EAAE,IAAI,CACR;UAAA,EAAE,IAAI,CAAC,CACR,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CACb,CAAC,OAAO,CACN,GAAG,CAAC,CAAC,UAAU,CAAC,CAChB,GAAG,CAAC,CAAC,UAAU,CAAC,CAChB,MAAM,CAAC,CAAC,EAAC,GAAG,EAAE,QAAQ,EAAC,CAAC,CACxB,gBAAgB,CAAC,UAAU,CAC3B,WAAW,CAAC,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CACpC,SAAS,CAAC,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CACnC,OAAO,CAAC,CAAC,kBAAkB,CAAC,CAC5B,WAAW,CAAC,CAAC,sBAAsB,CAAC,CACpC,uBAAuB,CAAC,CAAC,2BAA2B,CAAC,CACrD,SAAS,CAAC,CAAC,aAAa,CAAC,CACzB,iBAAiB,CAAC,CAAC,IAAI,CAAC,CACxB,kBAAkB,CAAC,CAAC,iBAAiB,CAAC,CACtC,SAAS,CAAC,CAAC,IAAI,CAAC,CAChB,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,EAAC,eAAe,EAAC,CAAC,CAAC,EACxC,CACH,CAAC,CAAC,CAAC,IAAI,CAER;;QAAA,CAAC,CAAC,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,CACzC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC,kBAAkB,EAAE,EAAC,eAAe,EAAC,CAAC,CAAC,CAC9D;YAAA,CAAC,eAAe,CAAC,AAAD,EAClB;UAAA,EAAE,IAAI,CAAC,CACR,CAAC,CAAC,CAAC,IAAI,CACV;MAAA,EAAE,IAAI,CACR;IAAA,EAAE,IAAI,CAAC,CACR,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC;IAC/B,SAAS,EAAE;QACT,IAAI,EAAE,CAAC;KACR;IACD,IAAI,EAAE;QACJ,IAAI,EAAE,CAAC;KACR;IACD,gBAAgB,EAAE;QAChB,IAAI,EAAE,CAAC;QACP,cAAc,EAAE,QAAQ;QACxB,UAAU,EAAE,QAAQ;KACrB;IACD,cAAc,EAAE;QACd,IAAI,EAAE,CAAC;QACP,cAAc,EAAE,QAAQ;QACxB,iBAAiB,EAAE,EAAE;KACtB;IACD,UAAU,EAAE;QACV,QAAQ,EAAE,EAAE;QACZ,UAAU,EAAE,KAAK;QACjB,YAAY,EAAE,CAAC;QACf,SAAS,EAAE,QAAQ;KACpB;IACD,gBAAgB,EAAE;QAChB,QAAQ,EAAE,EAAE;QACZ,UAAU,EAAE,EAAE;QACd,OAAO,EAAE,GAAG;QACZ,SAAS,EAAE,QAAQ;KACpB;IACD,YAAY,EAAE;QACZ,QAAQ,EAAE,EAAE;QACZ,SAAS,EAAE,EAAE;QACb,OAAO,EAAE,IAAI;QACb,SAAS,EAAE,QAAQ;KACpB;IACD,YAAY,EAAE;QACZ,SAAS,EAAE,EAAE;KACd;IACD,iBAAiB,EAAE;QACjB,SAAS,EAAE,EAAE;KACd;CACF,CAAC,CAAC"}
1
+ {"version":3,"file":"WebViewLogin.js","sourceRoot":"","sources":["../../../src/ui/WebViewLogin/WebViewLogin.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ export declare const KEYCLOAK_BASE_LOGIN_CSS: string;
2
+ export declare const KEYCLOAK_BASE_LOGIN_INJECTED_JS: string;
3
+ //# sourceMappingURL=baseLoginTheme.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"baseLoginTheme.d.ts","sourceRoot":"","sources":["../../../src/ui/WebViewLogin/baseLoginTheme.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,uBAAuB,QA4qB5B,CAAC;AAET,eAAO,MAAM,+BAA+B,QAkKpC,CAAC"}
@@ -0,0 +1,849 @@
1
+ export const KEYCLOAK_BASE_LOGIN_CSS = `
2
+ * {
3
+ box-sizing: border-box !important;
4
+ }
5
+
6
+ :root {
7
+ --bg-color: #26292d;
8
+ --text-color: #ffffff;
9
+ --text-secondary: #b0b4bd;
10
+ --input-bg: #1f2227;
11
+ --input-bg-focus: #252a31;
12
+ --input-border: #40454d;
13
+ --input-border-focus: #4a90e2;
14
+ --button-bg: #4a90e2;
15
+ --button-bg-hover: #357abd;
16
+ --link-color: #4a90e2;
17
+ --link-hover: #357abd;
18
+ --error-text: #ffffff;
19
+ --error-accent: #ff4f6d;
20
+ --error-bg: #35393f;
21
+ --error-border: rgba(255, 79, 109, 0.45);
22
+ }
23
+
24
+ html,
25
+ body {
26
+ margin: 0 !important;
27
+ padding: 0 !important;
28
+ font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif !important;
29
+ background: var(--bg-color) !important;
30
+ color: var(--text-color) !important;
31
+ line-height: 1.4 !important;
32
+ }
33
+
34
+ .login-pf-page {
35
+ min-height: 100vh !important;
36
+ display: flex !important;
37
+ align-items: flex-start !important;
38
+ justify-content: center !important;
39
+ padding: 188px 24px 28px !important;
40
+ background: var(--bg-color) !important;
41
+ }
42
+
43
+ body,
44
+ .login-pf,
45
+ .login-pf body,
46
+ .login-pf-page,
47
+ #kc-container,
48
+ #kc-container-wrapper {
49
+ min-height: 100vh !important;
50
+ background: var(--bg-color) !important;
51
+ }
52
+
53
+ .login-pf-page .login-pf-brand,
54
+ .login-pf-page .login-pf-header,
55
+ .kc-header,
56
+ .kc-header-wrapper,
57
+ #kc-page-title,
58
+ #kc-header,
59
+ #kc-header-wrapper,
60
+ .login-pf-page .kc-header,
61
+ .login-pf-page .kc-header-wrapper,
62
+ .kc-logo,
63
+ .kc-logo-text,
64
+ #kc-logo,
65
+ #kc-logo-text,
66
+ .login-pf-page .kc-logo,
67
+ .login-pf-page .kc-logo-text,
68
+ [class*="kc-header"],
69
+ [id*="kc-header"],
70
+ [class*="kc-logo"],
71
+ [id*="kc-logo"] {
72
+ display: none !important;
73
+ visibility: hidden !important;
74
+ opacity: 0 !important;
75
+ height: 0 !important;
76
+ width: 0 !important;
77
+ margin: 0 !important;
78
+ padding: 0 !important;
79
+ }
80
+
81
+ .card-pf,
82
+ #kc-content,
83
+ #kc-content-wrapper {
84
+ width: calc(100% - 48px) !important;
85
+ max-width: 354px !important;
86
+ background: transparent !important;
87
+ border: none !important;
88
+ box-shadow: none !important;
89
+ padding: 0 !important;
90
+ margin: 0 auto !important;
91
+ text-align: center !important;
92
+ position: relative !important;
93
+ z-index: 1 !important;
94
+ }
95
+
96
+ #kc-content,
97
+ #kc-content-wrapper {
98
+ max-width: 354px !important;
99
+ }
100
+
101
+ #kc-form,
102
+ #kc-form-wrapper {
103
+ width: 100% !important;
104
+ max-width: 354px !important;
105
+ margin-left: auto !important;
106
+ margin-right: auto !important;
107
+ }
108
+
109
+ #kc-form-login {
110
+ width: 100% !important;
111
+ margin: 0 !important;
112
+ }
113
+
114
+ #kc-otp-login-form {
115
+ width: 100% !important;
116
+ min-height: 430px !important;
117
+ display: flex !important;
118
+ flex-direction: column !important;
119
+ margin: 0 !important;
120
+ padding: 0 20px 24px !important;
121
+ position: relative !important;
122
+ text-align: left !important;
123
+ }
124
+
125
+ .mobile-keycloak-otp .login-pf-page {
126
+ padding-top: 120px !important;
127
+ }
128
+
129
+ .mobile-keycloak-otp .card-pf,
130
+ .mobile-keycloak-otp #kc-content,
131
+ .mobile-keycloak-otp #kc-content-wrapper,
132
+ .mobile-keycloak-otp #kc-form,
133
+ .mobile-keycloak-otp #kc-form-wrapper {
134
+ display: flex !important;
135
+ flex-direction: column !important;
136
+ min-height: 596px !important;
137
+ position: relative !important;
138
+ }
139
+
140
+ .custom-brand {
141
+ color: var(--text-color) !important;
142
+ font-size: 30px !important;
143
+ font-weight: 300 !important;
144
+ letter-spacing: 5px !important;
145
+ line-height: 1.2 !important;
146
+ text-align: center !important;
147
+ margin-top: 104px !important;
148
+ margin-bottom: 124px !important;
149
+ }
150
+
151
+ .mobile-keycloak-otp .custom-brand {
152
+ margin-top: 96px !important;
153
+ margin-bottom: 116px !important;
154
+ }
155
+
156
+ .custom-brand__meta {
157
+ color: var(--text-secondary) !important;
158
+ display: block !important;
159
+ font-size: 12px !important;
160
+ font-weight: 400 !important;
161
+ letter-spacing: 3px !important;
162
+ margin-top: 10px !important;
163
+ }
164
+
165
+ .form-group,
166
+ #kc-form-login .form-group {
167
+ margin-bottom: 26px !important;
168
+ text-align: left !important;
169
+ padding-left: 0 !important;
170
+ padding-right: 0 !important;
171
+ }
172
+
173
+ #kc-form-login .form-group:first-of-type {
174
+ margin-bottom: 30px !important;
175
+ }
176
+
177
+ .form-group label,
178
+ #kc-form-login label {
179
+ font-size: 14px !important;
180
+ color: var(--text-secondary) !important;
181
+ font-weight: 400 !important;
182
+ margin-bottom: 8px !important;
183
+ display: block !important;
184
+ text-align: left !important;
185
+ }
186
+
187
+ #kc-otp-login-form label {
188
+ color: var(--text-secondary) !important;
189
+ display: block !important;
190
+ font-size: 16px !important;
191
+ font-weight: 500 !important;
192
+ line-height: 22px !important;
193
+ margin: 0 0 10px !important;
194
+ text-align: center !important;
195
+ }
196
+
197
+ .form-control,
198
+ #kc-form-login input[type="text"],
199
+ #kc-form-login input[type="password"],
200
+ #kc-otp-login-form input[type="text"],
201
+ input[name="username"],
202
+ input[name="password"],
203
+ #otp,
204
+ input[name="otp"] {
205
+ width: 100% !important;
206
+ padding: 22px 24px !important;
207
+ border: 2px solid var(--input-border) !important;
208
+ border-radius: 12px !important;
209
+ font-size: 16px !important;
210
+ background: var(--input-bg) !important;
211
+ color: var(--text-color) !important;
212
+ outline: none !important;
213
+ appearance: none !important;
214
+ box-shadow: none !important;
215
+ min-height: 56px !important;
216
+ height: 56px !important;
217
+ }
218
+
219
+ #otp,
220
+ input[name="otp"] {
221
+ max-width: 100% !important;
222
+ padding: 14px 18px !important;
223
+ font-size: 22px !important;
224
+ font-weight: 500 !important;
225
+ letter-spacing: 5px !important;
226
+ line-height: 28px !important;
227
+ text-align: center !important;
228
+ }
229
+
230
+ #username,
231
+ input[name="username"] {
232
+ margin-bottom: 18px !important;
233
+ }
234
+
235
+ .form-control:focus,
236
+ #kc-form-login input[type="text"]:focus,
237
+ #kc-form-login input[type="password"]:focus,
238
+ #kc-otp-login-form input[type="text"]:focus,
239
+ input[name="username"]:focus,
240
+ input[name="password"]:focus,
241
+ #otp:focus,
242
+ input[name="otp"]:focus {
243
+ outline: none !important;
244
+ background: var(--input-bg-focus) !important;
245
+ border-color: var(--input-border-focus) !important;
246
+ box-shadow: 0 0 0 3px rgba(74, 144, 226, 0.18) !important;
247
+ }
248
+
249
+ .form-control::placeholder,
250
+ #kc-form-login input::placeholder,
251
+ #kc-otp-login-form input::placeholder {
252
+ color: var(--text-secondary) !important;
253
+ }
254
+
255
+ .btn-primary,
256
+ #kc-login,
257
+ #kc-form-login input[type="submit"],
258
+ #kc-form-login button[type="submit"],
259
+ #kc-otp-login-form input[type="submit"],
260
+ #kc-otp-login-form button[type="submit"] {
261
+ width: 100% !important;
262
+ padding: 18px 24px !important;
263
+ background: var(--button-bg) !important;
264
+ color: white !important;
265
+ border: none !important;
266
+ border-radius: 25px !important;
267
+ font-size: 16px !important;
268
+ font-weight: 500 !important;
269
+ cursor: pointer !important;
270
+ margin-top: 40px !important;
271
+ box-shadow: none !important;
272
+ outline: none !important;
273
+ min-height: 54px !important;
274
+ text-align: center !important;
275
+ }
276
+
277
+ .mobile-keycloak-otp #kc-login,
278
+ .mobile-keycloak-otp #kc-otp-login-form input[type="submit"],
279
+ .mobile-keycloak-otp #kc-otp-login-form button[type="submit"] {
280
+ margin-top: 0 !important;
281
+ }
282
+
283
+ #kc-form-options,
284
+ #kc-form-buttons {
285
+ width: 100% !important;
286
+ max-width: 354px !important;
287
+ margin-left: auto !important;
288
+ margin-right: auto !important;
289
+ }
290
+
291
+ #kc-form-options {
292
+ display: none !important;
293
+ text-align: center !important;
294
+ margin: 0 !important;
295
+ }
296
+
297
+ #kc-form-options span,
298
+ #kc-form-options hr,
299
+ #kc-form-options input[type="checkbox"]:not(:checked),
300
+ #kc-form-options input[type="checkbox"]:not(:checked) + label:empty {
301
+ display: none !important;
302
+ }
303
+
304
+ #kc-form-login a[href*="reset"],
305
+ #kc-form-login a[href*="forgot"],
306
+ #kc-form-login a[href*="credential"],
307
+ #kc-form-login .login-pf-settings,
308
+ #kc-form-login .pf-c-divider,
309
+ #kc-form-login .pf-v5-c-divider,
310
+ #kc-form-login .pf-c-check,
311
+ #kc-form-login .pf-v5-c-check,
312
+ #kc-form-login .pf-c-form__group-control:empty,
313
+ #kc-form-login .pf-v5-c-form__group-control:empty,
314
+ #kc-form-login hr,
315
+ #kc-form-login .checkbox,
316
+ #kc-form-login input[type="checkbox"],
317
+ #kc-form-login input[type="radio"],
318
+ #kc-form-login button:not([type="submit"]),
319
+ #kc-form-login .pf-c-input-group button,
320
+ #kc-form-login .pf-v5-c-input-group button,
321
+ #kc-form-login [id*="password-show"],
322
+ #kc-form-login [id*="password-toggle"],
323
+ #kc-form-login [class*="password-toggle"],
324
+ #kc-form-login [class*="show-password"],
325
+ #kc-form-login [aria-label*="Show"],
326
+ #kc-form-login [aria-label*="Hide"],
327
+ #kc-form-login [aria-label*="Показ"],
328
+ #kc-form-login [aria-label*="Скры"],
329
+ #kc-form-login [class*="remember"],
330
+ #kc-form-login [id*="remember"],
331
+ #kc-form-login [name*="remember"],
332
+ #kc-form-login label:empty,
333
+ #kc-form-login span:empty,
334
+ #rememberMe,
335
+ label[for="rememberMe"] {
336
+ display: none !important;
337
+ }
338
+
339
+ .login-pf-page input[type="checkbox"],
340
+ .login-pf-page input[type="radio"],
341
+ .login-pf-page .checkbox,
342
+ .login-pf-page label:empty,
343
+ .login-pf-page span:empty,
344
+ .login-pf-page hr {
345
+ display: none !important;
346
+ visibility: hidden !important;
347
+ width: 0 !important;
348
+ height: 0 !important;
349
+ margin: 0 !important;
350
+ padding: 0 !important;
351
+ border: 0 !important;
352
+ }
353
+
354
+ #kc-form-buttons {
355
+ margin: 0 !important;
356
+ }
357
+
358
+ #kc-otp-login-form .form-group {
359
+ margin: 0 !important;
360
+ padding: 0 !important;
361
+ }
362
+
363
+ .mobile-keycloak-otp #kc-otp-login-form .form-group {
364
+ margin-bottom: 0 !important;
365
+ }
366
+
367
+ #kc-otp-login-form #kc-form-buttons,
368
+ .mobile-keycloak-otp #kc-form-buttons {
369
+ width: auto !important;
370
+ max-width: none !important;
371
+ position: fixed !important;
372
+ left: 39px !important;
373
+ right: 39px !important;
374
+ bottom: 24px !important;
375
+ z-index: 5 !important;
376
+ margin-top: auto !important;
377
+ padding-bottom: 0 !important;
378
+ }
379
+
380
+ #kc-username {
381
+ width: calc(100% - 48px) !important;
382
+ max-width: 354px !important;
383
+ min-height: 44px !important;
384
+ display: flex !important;
385
+ align-items: center !important;
386
+ justify-content: space-between !important;
387
+ gap: 10px !important;
388
+ padding: 10px 14px !important;
389
+ margin: 0 auto !important;
390
+ border: 1px solid var(--input-border) !important;
391
+ border-radius: 14px !important;
392
+ background: var(--input-bg) !important;
393
+ color: var(--text-secondary) !important;
394
+ font-size: 13px !important;
395
+ line-height: 18px !important;
396
+ box-shadow: 0 8px 18px rgba(20, 28, 40, 0.06) !important;
397
+ position: absolute !important;
398
+ left: 24px !important;
399
+ right: 24px !important;
400
+ top: 18px !important;
401
+ z-index: 2 !important;
402
+ }
403
+
404
+ #kc-attempted-username {
405
+ min-width: 0 !important;
406
+ overflow: hidden !important;
407
+ text-overflow: ellipsis !important;
408
+ white-space: nowrap !important;
409
+ color: var(--text-color) !important;
410
+ font-weight: 600 !important;
411
+ }
412
+
413
+ #reset-login,
414
+ #kc-username a,
415
+ #kc-username a[href*="restart"],
416
+ #kc-username a[href*="reset"] {
417
+ flex: 0 0 auto !important;
418
+ color: var(--link-color) !important;
419
+ font-size: 13px !important;
420
+ font-weight: 600 !important;
421
+ line-height: 18px !important;
422
+ text-decoration: none !important;
423
+ }
424
+
425
+ /* Hide host-app floating debug/assistive overlays that can sit above the auth form. */
426
+ [style*="position: fixed"][style*="border-radius: 50%"],
427
+ [style*="position:absolute"][style*="border-radius:50%"],
428
+ [style*="position: absolute"][style*="border-radius: 50%"] {
429
+ display: none !important;
430
+ }
431
+
432
+ .btn-primary:hover,
433
+ #kc-login:hover,
434
+ #kc-form-login input[type="submit"]:hover,
435
+ #kc-form-login button[type="submit"]:hover,
436
+ #kc-otp-login-form input[type="submit"]:hover,
437
+ #kc-otp-login-form button[type="submit"]:hover {
438
+ background: var(--button-bg-hover) !important;
439
+ }
440
+
441
+ .btn-primary:focus,
442
+ #kc-login:focus,
443
+ #kc-form-login input[type="submit"]:focus,
444
+ #kc-form-login button[type="submit"]:focus,
445
+ #kc-otp-login-form input[type="submit"]:focus,
446
+ #kc-otp-login-form button[type="submit"]:focus {
447
+ outline: none !important;
448
+ box-shadow: 0 0 0 3px rgba(74, 144, 226, 0.3) !important;
449
+ }
450
+
451
+ .checkbox {
452
+ display: none !important;
453
+ align-items: center !important;
454
+ gap: 8px !important;
455
+ margin: 20px 0 !important;
456
+ }
457
+
458
+ .checkbox input[type="checkbox"] {
459
+ width: 16px !important;
460
+ height: 16px !important;
461
+ border: 1px solid var(--input-border) !important;
462
+ border-radius: 3px !important;
463
+ background: var(--input-bg) !important;
464
+ }
465
+
466
+ .checkbox label {
467
+ font-size: 14px !important;
468
+ color: var(--text-secondary) !important;
469
+ margin: 0 !important;
470
+ cursor: pointer !important;
471
+ }
472
+
473
+ a {
474
+ color: var(--link-color) !important;
475
+ text-decoration: none !important;
476
+ font-size: 14px !important;
477
+ }
478
+
479
+ a:hover {
480
+ color: var(--link-hover) !important;
481
+ text-decoration: underline !important;
482
+ }
483
+
484
+ .login-pf-signup {
485
+ text-align: center !important;
486
+ margin-top: 30px !important;
487
+ font-size: 14px !important;
488
+ color: var(--text-secondary) !important;
489
+ }
490
+
491
+ .mobile-keycloak-toast {
492
+ width: calc(100% - 48px) !important;
493
+ max-width: 354px !important;
494
+ min-height: 48px !important;
495
+ display: flex !important;
496
+ align-items: center !important;
497
+ padding: 12px 16px 12px 44px !important;
498
+ border-radius: 14px !important;
499
+ background: var(--error-bg) !important;
500
+ border: 1px solid var(--error-border) !important;
501
+ box-shadow: 0 12px 28px rgba(18, 24, 32, 0.18) !important;
502
+ color: var(--error-text) !important;
503
+ font-size: 14px !important;
504
+ font-weight: 600 !important;
505
+ line-height: 20px !important;
506
+ left: 50% !important;
507
+ opacity: 0 !important;
508
+ pointer-events: none !important;
509
+ position: fixed !important;
510
+ text-align: left !important;
511
+ top: 56px !important;
512
+ transform: translate(-50%, -12px) !important;
513
+ transition: opacity 180ms ease, transform 180ms ease !important;
514
+ z-index: 2147483647 !important;
515
+ }
516
+
517
+ .mobile-keycloak-toast.is-visible {
518
+ opacity: 1 !important;
519
+ transform: translate(-50%, 0) !important;
520
+ }
521
+
522
+ .mobile-keycloak-toast::before {
523
+ content: '!' !important;
524
+ width: 18px !important;
525
+ height: 18px !important;
526
+ border-radius: 50% !important;
527
+ background: var(--error-accent) !important;
528
+ color: #ffffff !important;
529
+ display: inline-flex !important;
530
+ align-items: center !important;
531
+ justify-content: center !important;
532
+ font-size: 12px !important;
533
+ font-weight: 700 !important;
534
+ line-height: 18px !important;
535
+ position: absolute !important;
536
+ left: 16px !important;
537
+ top: 14px !important;
538
+ }
539
+
540
+ .alert {
541
+ padding: 12px 14px 12px 40px !important;
542
+ border-radius: 12px !important;
543
+ font-size: 14px !important;
544
+ font-weight: 600 !important;
545
+ line-height: 20px !important;
546
+ margin: 10px 20px 22px !important;
547
+ display: flex !important;
548
+ align-items: center !important;
549
+ gap: 10px !important;
550
+ position: relative !important;
551
+ text-align: left !important;
552
+ }
553
+
554
+ .alert-error,
555
+ .alert-warning {
556
+ background: var(--error-bg) !important;
557
+ border: 1px solid var(--error-border) !important;
558
+ color: var(--error-text) !important;
559
+ }
560
+
561
+ .alert-error::before,
562
+ .alert-warning::before {
563
+ content: '!' !important;
564
+ width: 18px !important;
565
+ height: 18px !important;
566
+ border-radius: 50% !important;
567
+ background: var(--error-accent) !important;
568
+ color: #ffffff !important;
569
+ display: inline-flex !important;
570
+ align-items: center !important;
571
+ justify-content: center !important;
572
+ font-size: 12px !important;
573
+ font-weight: 700 !important;
574
+ line-height: 18px !important;
575
+ position: absolute !important;
576
+ left: 14px !important;
577
+ top: 13px !important;
578
+ }
579
+
580
+ .mobile-keycloak-inline-error-hidden,
581
+ .alert.mobile-keycloak-inline-error-hidden,
582
+ .alert-error.mobile-keycloak-inline-error-hidden,
583
+ .alert-warning.mobile-keycloak-inline-error-hidden {
584
+ display: none !important;
585
+ }
586
+
587
+ .form-control.error,
588
+ #kc-form-login input[aria-invalid="true"],
589
+ #kc-form-login input[aria-invalid="true"][type="text"],
590
+ #kc-form-login input[aria-invalid="true"][type="password"],
591
+ #kc-otp-login-form input[aria-invalid="true"],
592
+ #kc-otp-login-form input[aria-invalid="true"][type="text"],
593
+ #kc-otp-login-form input[aria-invalid="true"][type="tel"],
594
+ #otp[aria-invalid="true"],
595
+ input[name="otp"][aria-invalid="true"] {
596
+ border-color: var(--error-accent) !important;
597
+ background: rgba(255, 79, 109, 0.05) !important;
598
+ }
599
+
600
+ .form-control.error:focus,
601
+ #kc-form-login input[aria-invalid="true"]:focus,
602
+ #kc-otp-login-form input[aria-invalid="true"]:focus,
603
+ #otp[aria-invalid="true"]:focus,
604
+ input[name="otp"][aria-invalid="true"]:focus {
605
+ border-color: var(--error-accent) !important;
606
+ box-shadow: 0 0 0 3px rgba(255, 79, 109, 0.16) !important;
607
+ }
608
+
609
+ .error-message,
610
+ .kc-feedback-text,
611
+ .pf-c-form__helper-text.pf-m-error,
612
+ .pf-v5-c-form__helper-text.pf-m-error,
613
+ .pf-c-helper-text__item.pf-m-error,
614
+ .pf-v5-c-helper-text__item.pf-m-error,
615
+ #kc-form-login [id^="input-error"],
616
+ #kc-form-login [data-kc-feedback],
617
+ #kc-form-login [aria-live="polite"][id*="error"],
618
+ #kc-form-login [aria-live="polite"].kc-feedback-text,
619
+ #kc-otp-login-form [id^="input-error"],
620
+ #kc-otp-login-form [data-kc-feedback],
621
+ #kc-otp-login-form [aria-live="polite"][id*="error"],
622
+ #kc-otp-login-form [aria-live="polite"].kc-feedback-text {
623
+ display: none !important;
624
+ }
625
+
626
+ #kc-form-login label[for="password"],
627
+ #kc-form-login label[for="password-new"] {
628
+ margin-top: 4px !important;
629
+ }
630
+
631
+ @media (max-width: 480px) {
632
+ .login-pf-page {
633
+ padding: 188px 24px 28px !important;
634
+ }
635
+
636
+ .custom-brand {
637
+ font-size: 24px !important;
638
+ letter-spacing: 4px !important;
639
+ margin-top: 104px !important;
640
+ margin-bottom: 116px !important;
641
+ }
642
+
643
+ .mobile-keycloak-otp .login-pf-page {
644
+ padding-top: 112px !important;
645
+ }
646
+
647
+ .mobile-keycloak-otp .custom-brand {
648
+ margin-top: 88px !important;
649
+ margin-bottom: 108px !important;
650
+ }
651
+
652
+ .mobile-keycloak-otp .card-pf,
653
+ .mobile-keycloak-otp #kc-content,
654
+ .mobile-keycloak-otp #kc-content-wrapper,
655
+ .mobile-keycloak-otp #kc-form,
656
+ .mobile-keycloak-otp #kc-form-wrapper {
657
+ min-height: 596px !important;
658
+ }
659
+
660
+ #kc-otp-login-form {
661
+ min-height: 430px !important;
662
+ padding-bottom: 24px !important;
663
+ }
664
+
665
+ .form-control {
666
+ padding: 16px !important;
667
+ }
668
+
669
+ .btn-primary,
670
+ #kc-login,
671
+ #kc-form-login input[type="submit"],
672
+ #kc-form-login button[type="submit"],
673
+ #kc-otp-login-form input[type="submit"],
674
+ #kc-otp-login-form button[type="submit"] {
675
+ padding: 16px 24px !important;
676
+ margin-top: 30px !important;
677
+ }
678
+
679
+ .mobile-keycloak-otp #kc-login,
680
+ .mobile-keycloak-otp #kc-otp-login-form input[type="submit"],
681
+ .mobile-keycloak-otp #kc-otp-login-form button[type="submit"] {
682
+ margin-top: 0 !important;
683
+ }
684
+ }
685
+ `.trim();
686
+ export const KEYCLOAK_BASE_LOGIN_INJECTED_JS = `
687
+ (function() {
688
+ if (document.getElementById('mobile-keycloak-theme')) return;
689
+
690
+ document.documentElement.classList.add('mobile-keycloak-login');
691
+
692
+ var bootStyle = document.createElement('style');
693
+ bootStyle.id = 'mobile-keycloak-theme-boot';
694
+ bootStyle.textContent = [
695
+ 'html.mobile-keycloak-login, html.mobile-keycloak-login body { background: #26292d !important; }',
696
+ 'html.mobile-keycloak-login:not(.mobile-keycloak-login-ready) body { opacity: 0 !important; }',
697
+ 'html.mobile-keycloak-login.mobile-keycloak-login-ready body { opacity: 1 !important; }'
698
+ ].join(' ');
699
+ var bootStyleTarget = document.head || document.getElementsByTagName('head')[0] || document.documentElement;
700
+ bootStyleTarget.appendChild(bootStyle);
701
+
702
+ var style = document.createElement('style');
703
+ style.id = 'mobile-keycloak-theme';
704
+ style.textContent = ${JSON.stringify(KEYCLOAK_BASE_LOGIN_CSS)};
705
+ var styleTarget = document.head || document.getElementsByTagName('head')[0] || document.documentElement;
706
+ styleTarget.appendChild(style);
707
+
708
+ function syncScreenClass() {
709
+ var hasOtpForm = Boolean(document.querySelector('#kc-otp-login-form, #otp, input[name="otp"]'));
710
+ document.documentElement.classList.toggle('mobile-keycloak-otp', hasOtpForm);
711
+ }
712
+
713
+ function getErrorElements() {
714
+ return Array.prototype.slice.call(document.querySelectorAll(
715
+ '.alert-error, .alert-warning, .error-message, .kc-feedback-text, ' +
716
+ '.pf-c-form__helper-text.pf-m-error, .pf-v5-c-form__helper-text.pf-m-error, ' +
717
+ '.pf-c-helper-text__item.pf-m-error, .pf-v5-c-helper-text__item.pf-m-error, ' +
718
+ '#kc-form-login [id^="input-error"], #kc-form-login [data-kc-feedback], ' +
719
+ '#kc-form-login [aria-live="polite"][id*="error"], #kc-form-login [aria-live="polite"].kc-feedback-text, ' +
720
+ '#kc-otp-login-form [id^="input-error"], #kc-otp-login-form [data-kc-feedback], ' +
721
+ '#kc-otp-login-form [aria-live="polite"][id*="error"], #kc-otp-login-form [aria-live="polite"].kc-feedback-text'
722
+ ));
723
+ }
724
+
725
+ function getErrorText() {
726
+ var errorElement = getErrorElements().find(function(element) {
727
+ return element && element.textContent && element.textContent.trim();
728
+ });
729
+
730
+ return errorElement ? errorElement.textContent.replace(/\\s+/g, ' ').trim() : '';
731
+ }
732
+
733
+ function getToast() {
734
+ var toast = document.querySelector('.mobile-keycloak-toast');
735
+
736
+ if (toast) return toast;
737
+
738
+ toast = document.createElement('div');
739
+ toast.className = 'mobile-keycloak-toast';
740
+ toast.setAttribute('role', 'alert');
741
+ toast.setAttribute('aria-live', 'assertive');
742
+ document.body.appendChild(toast);
743
+
744
+ return toast;
745
+ }
746
+
747
+ function showToast(message) {
748
+ if (!message || !document.body) return;
749
+
750
+ var toast = getToast();
751
+ toast.textContent = message;
752
+ toast.classList.remove('is-visible');
753
+
754
+ window.clearTimeout(window.__mobileKeycloakToastTimer);
755
+ window.setTimeout(function() {
756
+ toast.classList.add('is-visible');
757
+ }, 20);
758
+
759
+ window.__mobileKeycloakToastTimer = window.setTimeout(function() {
760
+ toast.classList.remove('is-visible');
761
+ }, 3600);
762
+ }
763
+
764
+ function hideInlineErrors() {
765
+ getErrorElements().forEach(function(element) {
766
+ element.classList.add('mobile-keycloak-inline-error-hidden');
767
+ });
768
+ }
769
+
770
+ function clearInvalidOnInput(event) {
771
+ var input = event && event.currentTarget;
772
+ if (!input) return;
773
+
774
+ input.classList.remove('error');
775
+ input.removeAttribute('aria-invalid');
776
+ input.removeEventListener('input', clearInvalidOnInput);
777
+ }
778
+
779
+ function bindInvalidInputs() {
780
+ Array.prototype.slice.call(document.querySelectorAll(
781
+ 'input.error, input[aria-invalid="true"]'
782
+ )).forEach(function(input) {
783
+ if (input.__mobileKeycloakInvalidBound) return;
784
+
785
+ input.__mobileKeycloakInvalidBound = true;
786
+ input.addEventListener('input', clearInvalidOnInput);
787
+ });
788
+ }
789
+
790
+ function syncValidationState() {
791
+ var message = getErrorText();
792
+ hideInlineErrors();
793
+ bindInvalidInputs();
794
+
795
+ if (message && !document.documentElement.classList.contains('mobile-keycloak-toast-shown')) {
796
+ document.documentElement.classList.add('mobile-keycloak-toast-shown');
797
+ showToast(message);
798
+ }
799
+ }
800
+
801
+ function enhanceOtpInput() {
802
+ Array.prototype.slice.call(document.querySelectorAll(
803
+ '#otp, input[name="otp"], #kc-otp-login-form input[type="text"]'
804
+ )).forEach(function(input) {
805
+ input.setAttribute('inputmode', 'numeric');
806
+ input.setAttribute('autocomplete', 'one-time-code');
807
+ input.setAttribute('enterkeyhint', 'done');
808
+ });
809
+ }
810
+
811
+ function addBrand() {
812
+ if (!document.body || document.querySelector('.custom-brand')) return;
813
+ var brand = document.createElement('div');
814
+ brand.className = 'custom-brand';
815
+ brand.setAttribute('aria-label', 'UTG GROUP');
816
+ brand.innerHTML = 'UTG GROUP<span class="custom-brand__meta">EST. 1998</span>';
817
+
818
+ var container = document.querySelector('.card-pf') ||
819
+ document.querySelector('#kc-form') ||
820
+ document.querySelector('#kc-content-wrapper') ||
821
+ document.querySelector('#kc-content') ||
822
+ document.body;
823
+ container.insertBefore(brand, container.firstChild);
824
+ }
825
+
826
+ function markPageReady() {
827
+ document.documentElement.classList.add('mobile-keycloak-login-ready');
828
+ }
829
+
830
+ function enhancePage() {
831
+ addBrand();
832
+ syncScreenClass();
833
+ syncValidationState();
834
+ enhanceOtpInput();
835
+
836
+ if (document.body) {
837
+ markPageReady();
838
+ }
839
+ }
840
+
841
+ enhancePage();
842
+ document.addEventListener('DOMContentLoaded', enhancePage, { once: true });
843
+ window.setTimeout(enhancePage, 50);
844
+ window.setTimeout(enhancePage, 250);
845
+ window.setTimeout(markPageReady, 1200);
846
+ })();
847
+ true;
848
+ `.trim();
849
+ //# sourceMappingURL=baseLoginTheme.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"baseLoginTheme.js","sourceRoot":"","sources":["../../../src/ui/WebViewLogin/baseLoginTheme.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,uBAAuB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA4qBtC,CAAC,IAAI,EAAE,CAAC;AAET,MAAM,CAAC,MAAM,+BAA+B,GAAG;;;;;;;;;;;;;;;;;;wBAkBvB,IAAI,CAAC,SAAS,CAAC,uBAAuB,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAgJ9D,CAAC,IAAI,EAAE,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bmc-soft/keycloak-auth",
3
- "version": "2.0.5",
3
+ "version": "2.0.7",
4
4
  "description": "Production-ready Keycloak authentication package for React Native with optimized performance and security",
5
5
  "main": "./dist/index.js",
6
6
  "types": "./dist/index.d.ts",