@openremote/core 1.11.2 → 1.11.3

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/lib/index.js CHANGED
@@ -1 +1 @@
1
- var __awaiter=this&&this.__awaiter||function(e,t,i,n){return new(i||(i=Promise))(function(o,r){function s(e){try{l(n.next(e))}catch(e){r(e)}}function a(e){try{l(n.throw(e))}catch(e){r(e)}}function l(e){var t;e.done?o(e.value):((t=e.value)instanceof i?t:new i(function(e){e(t)})).then(s,a)}l((n=n.apply(e,t||[])).next())})};import"url-search-params-polyfill";import{Console as e}from"./console";import t from"@openremote/rest";import{EventProviderStatus as i,WebSocketEventProvider as n}from"./event";import o from"i18next";import r from"i18next-http-backend";import s from"moment";import{AssetModelUtil as a}from"@openremote/model";import*as l from"./util";import{createMdiIconSet as c,createSvgIconSet as h,IconSets as d,OrIconSet as u}from"@openremote/or-icon";import _ from"keycloak-js";export*from"./asset-mixin";export*from"./console";export*from"./event";export*from"./defaults";export const DEFAULT_ICONSET="mdi";export const OPENREMOTE_CLIENT_ID="openremote";export const RESTRICTED_USER_REALM_ROLE="restricted_user";export var ORError;!function(e){e.MANAGER_FAILED_TO_LOAD="MANAGER_FAILED_TO_LOAD",e.AUTH_FAILED="AUTH_FAILED",e.AUTH_TYPE_UNSUPPORTED="AUTH_TYPE_UNSUPPORTED",e.CONSOLE_ERROR="CONSOLE_INIT_ERROR",e.EVENTS_CONNECTION_ERROR="EVENTS_CONNECTION_ERROR",e.TRANSLATION_ERROR="TRANSLATION_ERROR"}(ORError||(ORError={}));export var OREvent;!function(e){e.ERROR="ERROR",e.READY="READY",e.ONLINE="ONLINE",e.OFFLINE="OFFLINE",e.CONNECTING="CONNECTING",e.CONSOLE_INIT="CONSOLE_INIT",e.CONSOLE_READY="CONSOLE_READY",e.TRANSLATE_INIT="TRANSLATE_INIT",e.TRANSLATE_LANGUAGE_CHANGED="TRANSLATE_LANGUAGE_CHANGED",e.DISPLAY_REALM_CHANGED="DISPLAY_REALM_CHANGED"}(OREvent||(OREvent={}));export const DEFAULT_LANGUAGES={en:"english",cn:"chinese",nl:"dutch",fr:"french",de:"german",it:"italian",pt:"portuguese",ro:"romanian",es:"spanish",uk:"ukrainian"};export function normaliseConfig(e){let t=e?Object.assign({},e):{};return t.managerUrl&&""!==t.managerUrl?t.managerUrl=t.managerUrl.replace(/\/+$/,""):t.managerUrl=window.location.protocol+"//"+window.location.hostname+(window.location.port?":"+window.location.port:"")+window.location.pathname.replace(/\/[^/]+\/?$/,""),t.realm&&""!==t.realm||(t.realm="master"),t.auth||(t.auth="KEYCLOAK"),void 0===t.consoleAutoEnable&&(t.consoleAutoEnable=!0),void 0===t.applyConfigToAdmin&&(t.applyConfigToAdmin=!0),t.eventProviderType||(t.eventProviderType="WEBSOCKET"),(!t.pollingIntervalMillis||t.pollingIntervalMillis<5e3)&&(t.pollingIntervalMillis=1e4),void 0===t.loadIcons&&(t.loadIcons=!0),void 0===t.loadTranslations&&(t.loadTranslations=["or"]),void 0===t.translationsLoadPath&&(t.translationsLoadPath="locales/{{lng}}/{{ns}}.json"),void 0===t.loadDescriptors&&(t.loadDescriptors=!0),void 0===t.clientId&&(t.clientId=OPENREMOTE_CLIENT_ID),t}export class Manager{constructor(){this._authenticated=!1,this._ready=!1,this._name="",this._username="",this._keycloakUpdateTokenInterval=void 0,this._managerVersion="",this._authServerUrl="",this._listeners=[],this._disconnected=!1}get username(){return this._username}get error(){return this._error}get authenticated(){return this._authenticated}get ready(){return this._ready}get config(){return this._config}get roles(){let e=new Map;return this._keycloak?this._keycloak.resourceAccess&&this._config.clientId&&this._keycloak.resourceAccess&&Object.entries(this._keycloak.resourceAccess).forEach(([t,i])=>{let n=i.roles;e.set(t,n)}):this._basicIdentity&&this._basicIdentity.roles&&e.set(this._config.clientId,this._basicIdentity.roles),e}get managerVersion(){return this._managerVersion}get isManagerAvailable(){return this._managerVersion&&""!==this._managerVersion}get managerUrl(){var e;return null==(e=this._config)?void 0:e.managerUrl}get keycloakUrl(){var e;return null==(e=this._config)?void 0:e.keycloakUrl}get isError(){return!!this._error}get connectionStatus(){return this._events&&this._events.status}get console(){return this._console}get consoleAppConfig(){return this._consoleAppConfig}get events(){return this._events}get rest(){return t}get language(){return o.language}set language(e){console.debug(`Changing language to ${e}.`),e&&(o.changeLanguage(e),this.console.storeData("LANGUAGE",e),this.authenticated&&this.updateKeycloakUserLanguage(e).catch(e=>console.error(e)))}get displayRealm(){return this._displayRealm||this._config.realm}set displayRealm(e){this.isSuperUser()&&this._displayRealm!==e&&(this._displayRealm=e,this._emitEvent(OREvent.DISPLAY_REALM_CHANGED))}get clientId(){return this._config.clientId||OPENREMOTE_CLIENT_ID}getEventProvider(){return this.events}get mapType(){return this._config.mapType||"VECTOR"}isManagerSameOrigin(){if(!this.ready)return!1;let e=new URL(this._config.managerUrl),t=window.location;return e.protocol===t.protocol&&e.hostname===t.hostname&&e.port===t.port}addListener(e){0>this._listeners.indexOf(e)&&this._listeners.push(e)}removeListener(e){let t=this._listeners.indexOf(e);t>=0&&this._listeners.splice(t,1)}init(t){return __awaiter(this,void 0,void 0,function*(){this._config&&console.debug("Already initialised"),this._config=normaliseConfig(t);let i=yield this.loadManagerInfo(),n=new e(this._config.realm,this._config.consoleAutoEnable,()=>{this._emitEvent(OREvent.CONSOLE_READY)});if(this._console=n,"BASIC"===this._config.auth)i=(yield this.doTranslateInit())&&i,i=yield this.doAuthInit();else if("KEYCLOAK"===this._config.auth){if(!this._config.keycloakUrl&&this._authServerUrl){let e,t=new URL(this._config.managerUrl);this._authServerUrl.startsWith("//")&&(this._authServerUrl=t.protocol+this._authServerUrl);try{e=new URL(this._authServerUrl)}catch(i){(e=new URL(t)).pathname=this._authServerUrl}e.protocol||(e.protocol=t.protocol),e.hostname||(e.hostname=t.hostname),e.port||(e.port=t.port),this._config.keycloakUrl=e.toString()}this._config.keycloakUrl||(this._config.keycloakUrl=this._config.managerUrl+"/auth"),this._config.keycloakUrl=this._config.keycloakUrl.replace(/\/+$/,""),(i=yield this.doAuthInit())||this._config.skipFallbackToBasicAuth||(console.debug("Falling back to basic auth"),this._config.auth="BASIC",i=yield this.doAuthInit())}return!!i&&(i&&(i=this.doRestApiInit()),(yield this.doConsoleInit())&&this._clearWebHistory(),(i=(yield this.doTranslateInit())&&i)&&(i=yield this.doDescriptorsInit(),i=yield this.getConsoleAppConfig()),this.doIconInit(),i?(i=yield this.doEventsSubscriptionInit(),this._readyCallback&&(yield this._readyCallback()),this._ready=!0,this._emitEvent(OREvent.READY)):(this._config=void 0,console.warn("Failed to initialise the manager")),this.displayRealm=t.realm||"master",i)})}loadManagerInfo(){return __awaiter(this,void 0,void 0,function*(){try{let e=yield new Promise((e,t)=>{let i=new XMLHttpRequest;i.addEventListener("load",()=>{e(JSON.parse(i.responseText))}),i.addEventListener("error",()=>{t(Error("Failed to contact the manager"))}),i.open("GET",this._config.managerUrl+"/api/master/info"),i.send()});return this._managerVersion=e&&e.version?e.version:"",this._authServerUrl=e&&e.authServerUrl?e.authServerUrl:"",!0}catch(e){return console.error("Failed to contact the manager",e),this._setError(ORError.MANAGER_FAILED_TO_LOAD),!1}})}doTranslateInit(){return __awaiter(this,void 0,void 0,function*(){if(o.isInitialized)return!0;o.on("initialized",e=>{this._emitEvent(OREvent.TRANSLATE_INIT)}),o.on("languageChanged",e=>{s.locale(e),this._emitEvent(OREvent.TRANSLATE_LANGUAGE_CHANGED)});let e={lng:(yield this.getConsolePreferredLanguage())||(yield this.getUserPreferredLanguage())||this.config.defaultLanguage||"en",fallbackLng:"en",defaultNS:"app",fallbackNS:"or",ns:this.config.loadTranslations,interpolation:{format:(e,t,i)=>"uppercase"===t?e.toUpperCase():e instanceof Date?s(e).format(t):e},backend:{loadPath:(e,t)=>1===t.length&&"or"===t[0]?this.config.managerUrl+"/shared/locales/{{lng}}/{{ns}}.json":this.config.translationsLoadPath?this.config.translationsLoadPath:"locales/{{lng}}/{{ns}}.json"}};this.config.configureTranslationsOptions&&this.config.configureTranslationsOptions(e);try{yield o.use(r).init(e)}catch(e){return console.error(e),this._setError(ORError.TRANSLATION_ERROR),!1}return!0})}doDescriptorsInit(){return __awaiter(this,void 0,void 0,function*(){if(!this.config.loadDescriptors)return!0;try{let e=yield t.api.AssetModelResource.getAssetInfos(),i=yield t.api.AssetModelResource.getMetaItemDescriptors(),n=yield t.api.AssetModelResource.getValueDescriptors();a._assetTypeInfos=e.data,a._metaItemDescriptors=Object.values(i.data),a._valueDescriptors=Object.values(n.data)}catch(e){return console.error(e),!1}return!0})}doAuthInit(){return __awaiter(this,void 0,void 0,function*(){let e=!0;switch(this._config.auth){case"BASIC":e=yield this.initialiseBasicAuth();break;case"KEYCLOAK":e=yield this.loadAndInitialiseKeycloak();break;case"NONE":return!0;default:return this._setError(ORError.AUTH_TYPE_UNSUPPORTED),!1}return!!e&&(t.addRequestInterceptor(e=>{if(!e.headers.Authorization){let t=this.getAuthorizationHeader();t&&(e.headers.Authorization=t)}return e}),e)})}doRestApiInit(){return t.setTimeout(2e4),t.initialise(this.getApiBaseUrl()),!0}doEventsSubscriptionInit(){return __awaiter(this,void 0,void 0,function*(){let e=!1;return"WEBSOCKET"===this._config.eventProviderType&&(this._events=new n(this._config.managerUrl),this._events.subscribeStatusChange(e=>this._onEventProviderStatusChanged(e)),e=yield this._events.connect()),e||this._setError(ORError.EVENTS_CONNECTION_ERROR),e})}_connectEvents(){var e;(null==(e=this.events)?void 0:e.status)===i.DISCONNECTED?this.events.connect().catch(e=>{console.error("Failed to connect EventProvider."),console.error(e)}):console.warn("Tried to connect EventProvider, but it wasn't disconnected!")}_onEventProviderStatusChanged(e){switch(e){case i.DISCONNECTED:this._onDisconnect();break;case i.CONNECTED:break;case i.CONNECTING:this._emitEvent(OREvent.CONNECTING)}}doConsoleInit(){return __awaiter(this,void 0,void 0,function*(){try{return yield this.console.initialise(),this._emitEvent(OREvent.CONSOLE_INIT),!0}catch(e){return this._setError(ORError.CONSOLE_ERROR),!1}})}doIconInit(){this._config.loadIcons&&(d.addIconSet("mdi",c(manager.managerUrl)),d.addIconSet("or",h(u.size,u.icons)))}getConsoleAppConfig(){return __awaiter(this,void 0,void 0,function*(){var e;try{let t=yield fetch((null!=(e=manager.managerUrl)?e:"")+"/consoleappconfig/"+manager.displayRealm+".json");return this._consoleAppConfig=yield t.json(),!0}catch(e){return!0}})}getConsolePreferredLanguage(){return __awaiter(this,arguments,void 0,function*(e=this.console){return e.retrieveData("LANGUAGE")})}getUserPreferredLanguage(){return __awaiter(this,arguments,void 0,function*(e=this._keycloak){if(e&&e.authenticated){let t=(null==e?void 0:e.profile)||(yield null==e?void 0:e.loadUserProfile());if(null==t?void 0:t.attributes){let e=new Map(Object.entries(t.attributes));if(e.has("locale")){let t=e.get("locale");if("string"==typeof t[0])return t[0]}console.warn("Could not get user language from keycloak: no user attributes were found.")}else console.warn("Could not get user language from keycloak: no valid keycloak user profile was found.")}})}updateKeycloakUserLanguage(e){return __awaiter(this,arguments,void 0,function*(e,t=this.rest){return this.authenticated?t?void(yield t.api.UserResource.updateCurrentUserLocale(e,{headers:{"Content-Type":"application/json"}})):void console.warn("Tried updating user language, but the REST API is not initialized yet."):void console.warn("Tried updating user language, but the user is not authenticated.")})}logout(e){this._authenticated&&(this._authenticated=!0,this._keycloak?(this.isMobile()&&this.console.storeData("REFRESH_TOKEN",null),this._keycloakUpdateTokenInterval&&(window.clearTimeout(this._keycloakUpdateTokenInterval),this._keycloakUpdateTokenInterval=void 0),this._keycloak.logout(e&&""!==e?{redirectUri:e}:void 0)):this._basicIdentity&&(this._basicIdentity=void 0,e?window.location.href=e:window.location.reload()))}login(e){switch(this._config.auth){case"BASIC":e&&e.credentials&&(this._config.credentials=Object.assign({},e.credentials)),this.doBasicLogin();break;case"KEYCLOAK":if(this._keycloak){let t={};e&&e.redirectUrl&&""!==e.redirectUrl&&(t.redirectUri=e.redirectUrl),(null==e?void 0:e.action)&&""!==e.action&&(t.action=e.action),this.isMobile()&&(t.scope="offline_access"),this._keycloak.login(t)}}}initialiseBasicAuth(){return __awaiter(this,void 0,void 0,function*(){return this.config.basicLoginProvider?(this.config.autoLogin&&(this._readyCallback=()=>this.doBasicLogin()),!0):(console.debug("No basicLoginProvider defined on config so cannot display login UI"),!1)})}doBasicLogin(){return __awaiter(this,void 0,void 0,function*(){var e,i,n,o;if(!this.config.basicLoginProvider)return;let r={username:(null==(e=this.config.credentials)?void 0:e.username)?null==(i=this.config.credentials)?void 0:i.username:"",password:(null==(n=this.config.credentials)?void 0:n.password)?null==(o=this.config.credentials)?void 0:o.password:"",cancel:!1},s=!1;for(this._basicIdentity={roles:void 0,token:void 0,user:void 0};!s;){if((r=yield this.config.basicLoginProvider(r.username,r.password)).cancel){console.debug("Basic authentication cancelled by user");break}if(!r.username||!r.password)continue;this._basicIdentity.token=btoa(r.username+":"+r.password);let e=!1;try{let i=yield t.api.UserResource.getCurrent();200===i.status&&(e=!0,this._basicIdentity.user=i.data),e||401!==i.status&&403!==i.status||console.debug("Basic authentication invalid credentials, trying again")}catch(e){console.error("Basic auth failed: ",e)}if(e){console.debug("Basic authentication successful"),s=!0;let e=yield t.api.UserResource.getCurrentUserClientRoles(this.clientId);this._basicIdentity.roles=e.data}else{console.debug("Unknown response so aborting"),this._basicIdentity=void 0;break}}s&&this._onAuthenticated()})}isSuperUser(){return!!(this.getRealm()&&"master"===this.getRealm()&&this.hasRealmRole("admin"))}isRestrictedUser(){return!!this.hasRealmRole("restricted_user")}getApiBaseUrl(){let e=this._config.managerUrl;return e+("/api/"+this._config.realm+"/")}getAppName(){let e=location.pathname.split("/");return e.length>=1?e[1]:""}hasRealmRole(e){return this.isKeycloak()&&this._keycloak.hasRealmRole(e)}hasRole(e,t=this._config.clientId){let i=this.roles;return i&&i.has(t)&&i.get(t).indexOf(e)>=0}getAuthorizationHeader(){return this.getKeycloakToken()?"Bearer "+this.getKeycloakToken():this.getBasicToken()?"Basic "+this.getBasicToken():void 0}getKeycloakToken(){if(this.isKeycloak())return this._keycloak.token}getBasicToken(){return this._basicIdentity?this._basicIdentity.token:void 0}getRealm(){if(this._config)return this._config.realm}isMobile(){return this.console&&this.console.isMobile}isKeycloak(){return!!this._keycloak}_onAuthenticated(){this._authenticated=!0}loadAndInitialiseKeycloak(){return __awaiter(this,void 0,void 0,function*(){var e,t,i,n;try{this._keycloak=new _({clientId:this._config.clientId,realm:this._config.realm,url:this._config.keycloakUrl});let o=yield this._getNativeOfflineRefreshToken(),r=yield this._keycloak.init({checkLoginIframe:!1,onLoad:"check-sso"});if(!r&&o)try{console.error("SETTING OFFLINE TOKEN"),this._keycloak.refreshToken=o,r=yield this._updateKeycloakAccessToken()}catch(e){console.error("Failed to authenticate using offline token")}if(r)this._name=null==(e=this._keycloak.tokenParsed)?void 0:e.name,this._username=null==(t=this._keycloak.tokenParsed)?void 0:t.preferred_username,this._createTokenUpdateInterval(),this.isMobile()&&(null==(n=null==(i=this._keycloak)?void 0:i.refreshTokenParsed)?void 0:n.typ)==="Offline"&&(console.debug("Storing offline refresh token"),this.console.storeData("REFRESH_TOKEN",this._keycloak.refreshToken)),this._onAuthenticated();else if(this.config.autoLogin)return this.login(),!1;return!0}catch(e){return this._authenticated=!1,this._setError(ORError.AUTH_FAILED),console.error("Failed to initialise Keycloak: "+e),!1}})}_createTokenUpdateInterval(){this._keycloakUpdateTokenInterval||(this._keycloakUpdateTokenInterval=window.setInterval(()=>__awaiter(this,void 0,void 0,function*(){yield this._updateKeycloakAccessToken().catch(()=>{console.debug("Keycloak failed to refresh the access token"),this._onDisconnect()})}),1e4))}_updateKeycloakAccessToken(){return __awaiter(this,void 0,void 0,function*(){let e=yield this._keycloak.updateToken(20);return console.debug("Access token update success, refreshed from server: "+e),e&&this._onAuthenticated(),e})}_getNativeOfflineRefreshToken(){return __awaiter(this,void 0,void 0,function*(){if(this.isMobile())return yield this.console.retrieveData("REFRESH_TOKEN")})}_emitEvent(e){window.setTimeout(()=>{for(let t of this._listeners)t(e)},0)}_setError(e){this._error=e,this._emitEvent(OREvent.ERROR),console.warn("Error set: "+e)}_clearWebHistory(){var e;null==(e=this.console)||e._doSendGenericMessage("CLEAR_WEB_HISTORY",void 0)}_onDisconnect(){return __awaiter(this,void 0,void 0,function*(){this._disconnected||(console.debug("Disconnected"),this._disconnected=!0,this._keycloakUpdateTokenInterval&&(window.clearTimeout(this._keycloakUpdateTokenInterval),this._keycloakUpdateTokenInterval=void 0),this._emitEvent(OREvent.OFFLINE),this.reconnect())})}_onReconnected(){console.debug("Reconnected"),this._disconnected=!1,this._createTokenUpdateInterval(),this._emitEvent(OREvent.ONLINE)}reconnect(){return __awaiter(this,arguments,void 0,function*(e=3e3){if(!this._disconnected)return;this._reconnectTimer&&(window.clearTimeout(this._reconnectTimer),this._reconnectTimer=void 0);let t=()=>__awaiter(this,void 0,void 0,function*(){var e;if(console.debug("Attempting reconnect"),!(yield this.isKeycloakReachable()))return console.debug("Keycloak is unreachable"),!1;console.debug("Keycloak is reachable"),console.debug("Checking keycloak access token");try{yield this._updateKeycloakAccessToken()}catch(t){let e=yield this._getNativeOfflineRefreshToken();this._keycloak.refreshToken=e;try{yield this._updateKeycloakAccessToken()}catch(e){console.debug("Cannot update access token so sending to login"),this.login();return}return console.debug("Keycloak access token is valid"),!0}let t=this.events&&this.events.status===i.CONNECTING;return console.debug("If event provider offline then attempting reconnect: offline="+t),!t||(yield null==(e=this.events)?void 0:e.connect())}),n=yield t();if(void 0!==n){if(!n){console.debug("Scheduling another reconnect attempt in (ms): "+(e=Math.min(Manager.MAX_RECONNECT_DELAY,e+3e3))),this._reconnectTimer=window.setTimeout(()=>this.reconnect(e),e);return}this._onReconnected()}})}isKeycloakReachable(){return __awaiter(this,arguments,void 0,function*(e=2e3){let t=new AbortController,i=setTimeout(()=>t.abort(),e);try{let e=this._keycloak.endpoints.token(),i=yield fetch(e,{method:"OPTIONS",signal:t.signal});return 200===i.status}catch(e){return!1}finally{clearTimeout(i)}})}}Manager.MAX_RECONNECT_DELAY=45e3;export const manager=new Manager;export default manager;export{l as Util};
1
+ var __awaiter=this&&this.__awaiter||function(e,t,i,n){return new(i||(i=Promise))(function(o,r){function s(e){try{l(n.next(e))}catch(e){r(e)}}function a(e){try{l(n.throw(e))}catch(e){r(e)}}function l(e){var t;e.done?o(e.value):((t=e.value)instanceof i?t:new i(function(e){e(t)})).then(s,a)}l((n=n.apply(e,t||[])).next())})};import"url-search-params-polyfill";import{Console as e}from"./console";import t from"@openremote/rest";import{EventProviderStatus as i,WebSocketEventProvider as n}from"./event";import o from"i18next";import r from"i18next-http-backend";import s from"moment";import{AssetModelUtil as a}from"@openremote/model";import*as l from"./util";import{createMdiIconSet as c,createSvgIconSet as h,IconSets as d,OrIconSet as u}from"@openremote/or-icon";import _ from"keycloak-js";export*from"./asset-mixin";export*from"./console";export*from"./event";export*from"./defaults";export const DEFAULT_ICONSET="mdi";export const OPENREMOTE_CLIENT_ID="openremote";export const RESTRICTED_USER_REALM_ROLE="restricted_user";export var ORError;!function(e){e.MANAGER_FAILED_TO_LOAD="MANAGER_FAILED_TO_LOAD",e.AUTH_FAILED="AUTH_FAILED",e.AUTH_TYPE_UNSUPPORTED="AUTH_TYPE_UNSUPPORTED",e.CONSOLE_ERROR="CONSOLE_INIT_ERROR",e.EVENTS_CONNECTION_ERROR="EVENTS_CONNECTION_ERROR",e.TRANSLATION_ERROR="TRANSLATION_ERROR"}(ORError||(ORError={}));export var OREvent;!function(e){e.ERROR="ERROR",e.READY="READY",e.ONLINE="ONLINE",e.OFFLINE="OFFLINE",e.CONNECTING="CONNECTING",e.CONSOLE_INIT="CONSOLE_INIT",e.CONSOLE_READY="CONSOLE_READY",e.TRANSLATE_INIT="TRANSLATE_INIT",e.TRANSLATE_LANGUAGE_CHANGED="TRANSLATE_LANGUAGE_CHANGED",e.DISPLAY_REALM_CHANGED="DISPLAY_REALM_CHANGED"}(OREvent||(OREvent={}));export const DEFAULT_LANGUAGES={en:"english",cn:"chinese",nl:"dutch",fr:"french",de:"german",it:"italian",pt:"portuguese",ro:"romanian",es:"spanish",uk:"ukrainian"};export function normaliseConfig(e){let t=e?Object.assign({},e):{};return t.managerUrl&&""!==t.managerUrl?t.managerUrl=t.managerUrl.replace(/\/+$/,""):t.managerUrl=window.location.protocol+"//"+window.location.hostname+(window.location.port?":"+window.location.port:"")+window.location.pathname.replace(/\/[^/]+\/?$/,""),t.realm&&""!==t.realm||(t.realm="master"),t.auth||(t.auth="KEYCLOAK"),void 0===t.consoleAutoEnable&&(t.consoleAutoEnable=!0),void 0===t.applyConfigToAdmin&&(t.applyConfigToAdmin=!0),t.eventProviderType||(t.eventProviderType="WEBSOCKET"),(!t.pollingIntervalMillis||t.pollingIntervalMillis<5e3)&&(t.pollingIntervalMillis=1e4),void 0===t.loadIcons&&(t.loadIcons=!0),void 0===t.loadTranslations&&(t.loadTranslations=["or"]),void 0===t.translationsLoadPath&&(t.translationsLoadPath="locales/{{lng}}/{{ns}}.json"),void 0===t.loadDescriptors&&(t.loadDescriptors=!0),void 0===t.clientId&&(t.clientId=OPENREMOTE_CLIENT_ID),t}export class Manager{constructor(){this._authenticated=!1,this._ready=!1,this._name="",this._username="",this._keycloakUpdateTokenInterval=void 0,this._managerVersion="",this._authServerUrl="",this._listeners=[],this._disconnected=!1}get username(){return this._username}get error(){return this._error}get authenticated(){return this._authenticated}get ready(){return this._ready}get config(){return this._config}get roles(){let e=new Map;return this._keycloak?this._keycloak.resourceAccess&&this._config.clientId&&this._keycloak.resourceAccess&&Object.entries(this._keycloak.resourceAccess).forEach(([t,i])=>{let n=i.roles;e.set(t,n)}):this._basicIdentity&&this._basicIdentity.roles&&e.set(this._config.clientId,this._basicIdentity.roles),e}get managerVersion(){return this._managerVersion}get isManagerAvailable(){return this._managerVersion&&""!==this._managerVersion}get managerUrl(){var e;return null==(e=this._config)?void 0:e.managerUrl}get keycloakUrl(){var e;return null==(e=this._config)?void 0:e.keycloakUrl}get isError(){return!!this._error}get connectionStatus(){return this._events&&this._events.status}get console(){return this._console}get consoleAppConfig(){return this._consoleAppConfig}get events(){return this._events}get rest(){return t}get language(){return o.language}set language(e){console.debug(`Changing language to ${e}.`),e&&(o.changeLanguage(e),this.console.storeData("LANGUAGE",e),this.authenticated&&this.updateKeycloakUserLanguage(e).catch(e=>console.error(e)))}get displayRealm(){return this._displayRealm||this._config.realm}set displayRealm(e){this.isSuperUser()&&this._displayRealm!==e&&(this._displayRealm=e,this._emitEvent(OREvent.DISPLAY_REALM_CHANGED))}get clientId(){return this._config.clientId||OPENREMOTE_CLIENT_ID}getEventProvider(){return this.events}get mapType(){return this._config.mapType||"VECTOR"}isManagerSameOrigin(){if(!this.ready)return!1;let e=new URL(this._config.managerUrl),t=window.location;return e.protocol===t.protocol&&e.hostname===t.hostname&&e.port===t.port}addListener(e){0>this._listeners.indexOf(e)&&this._listeners.push(e)}removeListener(e){let t=this._listeners.indexOf(e);t>=0&&this._listeners.splice(t,1)}init(t){return __awaiter(this,void 0,void 0,function*(){this._config&&console.debug("Already initialised"),this._config=normaliseConfig(t);let i=yield this.loadManagerInfo(),n=new e(this._config.realm,this._config.consoleAutoEnable,()=>{this._emitEvent(OREvent.CONSOLE_READY)});if(this._console=n,"BASIC"===this._config.auth)i=(yield this.doTranslateInit())&&i,i=yield this.doAuthInit();else if("KEYCLOAK"===this._config.auth){if(!this._config.keycloakUrl&&this._authServerUrl){let e,t=new URL(this._config.managerUrl);this._authServerUrl.startsWith("//")&&(this._authServerUrl=t.protocol+this._authServerUrl);try{e=new URL(this._authServerUrl)}catch(i){(e=new URL(t)).pathname=this._authServerUrl}e.protocol||(e.protocol=t.protocol),e.hostname||(e.hostname=t.hostname),e.port||(e.port=t.port),this._config.keycloakUrl=e.toString()}this._config.keycloakUrl||(this._config.keycloakUrl=this._config.managerUrl+"/auth"),this._config.keycloakUrl=this._config.keycloakUrl.replace(/\/+$/,""),(i=yield this.doAuthInit())||this._config.skipFallbackToBasicAuth||(console.debug("Falling back to basic auth"),this._config.auth="BASIC",i=yield this.doAuthInit())}return!!i&&(i&&(i=this.doRestApiInit()),(yield this.doConsoleInit())&&this._clearWebHistory(),(i=(yield this.doTranslateInit())&&i)&&(i=yield this.doDescriptorsInit(),i=yield this.getConsoleAppConfig()),this.doIconInit(),i?(i=yield this.doEventsSubscriptionInit(),this._readyCallback&&(yield this._readyCallback()),this._ready=!0,this._emitEvent(OREvent.READY)):(this._config=void 0,console.warn("Failed to initialise the manager")),this.displayRealm=t.realm||"master",i)})}loadManagerInfo(){return __awaiter(this,void 0,void 0,function*(){try{let e=yield new Promise((e,t)=>{let i=new XMLHttpRequest;i.addEventListener("load",()=>{e(JSON.parse(i.responseText))}),i.addEventListener("error",()=>{t(Error("Failed to contact the manager"))}),i.open("GET",this._config.managerUrl+"/api/master/info"),i.send()});return this._managerVersion=e&&e.version?e.version:"",this._authServerUrl=e&&e.authServerUrl?e.authServerUrl:"",!0}catch(e){return console.error("Failed to contact the manager",e),this._setError(ORError.MANAGER_FAILED_TO_LOAD),!1}})}doTranslateInit(){return __awaiter(this,void 0,void 0,function*(){if(o.isInitialized)return!0;o.on("initialized",e=>{this._emitEvent(OREvent.TRANSLATE_INIT)}),o.on("languageChanged",e=>{s.locale(e),this._emitEvent(OREvent.TRANSLATE_LANGUAGE_CHANGED)});let e={lng:(yield this.getConsolePreferredLanguage())||(yield this.getUserPreferredLanguage())||this.config.defaultLanguage||"en",fallbackLng:"en",defaultNS:"app",fallbackNS:"or",ns:this.config.loadTranslations,interpolation:{format:(e,t,i)=>"uppercase"===t?e.toUpperCase():e instanceof Date?s(e).format(t):e},backend:{loadPath:(e,t)=>1===t.length&&"or"===t[0]?this.config.managerUrl+"/shared/locales/{{lng}}/{{ns}}.json":this.config.translationsLoadPath?this.config.translationsLoadPath:"locales/{{lng}}/{{ns}}.json"}};this.config.configureTranslationsOptions&&this.config.configureTranslationsOptions(e);try{yield o.use(r).init(e)}catch(e){return console.error(e),this._setError(ORError.TRANSLATION_ERROR),!1}return!0})}doDescriptorsInit(){return __awaiter(this,void 0,void 0,function*(){if(!this.config.loadDescriptors)return!0;try{let e=yield t.api.AssetModelResource.getAssetInfos(),i=yield t.api.AssetModelResource.getMetaItemDescriptors(),n=yield t.api.AssetModelResource.getValueDescriptors();a._assetTypeInfos=e.data,a._metaItemDescriptors=Object.values(i.data),a._valueDescriptors=Object.values(n.data)}catch(e){return console.error(e),!1}return!0})}doAuthInit(){return __awaiter(this,void 0,void 0,function*(){let e=!0;switch(this._config.auth){case"BASIC":e=yield this.initialiseBasicAuth();break;case"KEYCLOAK":e=yield this.loadAndInitialiseKeycloak();break;case"NONE":return!0;default:return this._setError(ORError.AUTH_TYPE_UNSUPPORTED),!1}return!!e&&(t.addRequestInterceptor(e=>{if(!e.headers.Authorization){let t=this.getAuthorizationHeader();t&&(e.headers.Authorization=t)}return e}),e)})}doRestApiInit(){return t.setTimeout(2e4),t.initialise(this.getApiBaseUrl()),!0}doEventsSubscriptionInit(){return __awaiter(this,void 0,void 0,function*(){let e=!1;return"WEBSOCKET"===this._config.eventProviderType&&(this._events=new n(this._config.managerUrl),this._events.subscribeStatusChange(e=>this._onEventProviderStatusChanged(e)),e=yield this._events.connect()),e||this._setError(ORError.EVENTS_CONNECTION_ERROR),e})}_connectEvents(){var e;(null==(e=this.events)?void 0:e.status)===i.DISCONNECTED?this.events.connect().catch(e=>{console.error("Failed to connect EventProvider."),console.error(e)}):console.warn("Tried to connect EventProvider, but it wasn't disconnected!")}_onEventProviderStatusChanged(e){switch(e){case i.DISCONNECTED:this._onDisconnect();break;case i.CONNECTED:break;case i.CONNECTING:this._emitEvent(OREvent.CONNECTING)}}doConsoleInit(){return __awaiter(this,void 0,void 0,function*(){try{return yield this.console.initialise(),this._emitEvent(OREvent.CONSOLE_INIT),!0}catch(e){return this._setError(ORError.CONSOLE_ERROR),!1}})}doIconInit(){this._config.loadIcons&&(d.addIconSet("mdi",c(manager.managerUrl)),d.addIconSet("or",h(u.size,u.icons)))}getConsoleAppConfig(){return __awaiter(this,void 0,void 0,function*(){var e;try{let t=yield fetch((null!=(e=manager.managerUrl)?e:"")+"/consoleappconfig/"+manager.displayRealm+".json");return this._consoleAppConfig=yield t.json(),!0}catch(e){return!0}})}getConsolePreferredLanguage(){return __awaiter(this,arguments,void 0,function*(e=this.console){return e.retrieveData("LANGUAGE")})}getUserPreferredLanguage(){return __awaiter(this,arguments,void 0,function*(e=this._keycloak){if(e&&e.authenticated){let t=(null==e?void 0:e.profile)||(yield null==e?void 0:e.loadUserProfile());if(null==t?void 0:t.attributes){let e=new Map(Object.entries(t.attributes));if(e.has("locale")){let t=e.get("locale");if("string"==typeof t[0])return t[0]}console.warn("Could not get user language from keycloak: no user attributes were found.")}else console.warn("Could not get user language from keycloak: no valid keycloak user profile was found.")}})}updateKeycloakUserLanguage(e){return __awaiter(this,arguments,void 0,function*(e,t=this.rest){return this.authenticated?t?void(yield t.api.UserResource.updateCurrentUserLocale(e,{headers:{"Content-Type":"application/json"}})):void console.warn("Tried updating user language, but the REST API is not initialized yet."):void console.warn("Tried updating user language, but the user is not authenticated.")})}logout(e){this._authenticated&&(this._authenticated=!0,this._keycloak?(this.isMobile()&&this.console.storeData("REFRESH_TOKEN",null),this._keycloakUpdateTokenInterval&&(window.clearTimeout(this._keycloakUpdateTokenInterval),this._keycloakUpdateTokenInterval=void 0),this._keycloak.logout(e&&""!==e?{redirectUri:e}:void 0)):this._basicIdentity&&(this._basicIdentity=void 0,e?window.location.href=e:window.location.reload()))}login(e){switch(this._config.auth){case"BASIC":e&&e.credentials&&(this._config.credentials=Object.assign({},e.credentials)),this.doBasicLogin();break;case"KEYCLOAK":if(this._keycloak){let t={};e&&e.redirectUrl&&""!==e.redirectUrl&&(t.redirectUri=e.redirectUrl),(null==e?void 0:e.action)&&""!==e.action&&(t.action=e.action),this.isMobile()&&(t.scope="offline_access"),this._keycloak.login(t)}}}initialiseBasicAuth(){return __awaiter(this,void 0,void 0,function*(){return this.config.basicLoginProvider?(this.config.autoLogin&&(this._readyCallback=()=>this.doBasicLogin()),!0):(console.debug("No basicLoginProvider defined on config so cannot display login UI"),!1)})}doBasicLogin(){return __awaiter(this,void 0,void 0,function*(){var e,i,n,o;if(!this.config.basicLoginProvider)return;let r={username:(null==(e=this.config.credentials)?void 0:e.username)?null==(i=this.config.credentials)?void 0:i.username:"",password:(null==(n=this.config.credentials)?void 0:n.password)?null==(o=this.config.credentials)?void 0:o.password:"",cancel:!1},s=!1;for(this._basicIdentity={roles:void 0,token:void 0,user:void 0};!s;){if((r=yield this.config.basicLoginProvider(r.username,r.password)).cancel){console.debug("Basic authentication cancelled by user");break}if(!r.username||!r.password)continue;this._basicIdentity.token=btoa(r.username+":"+r.password);let e=!1;try{let i=yield t.api.UserResource.getCurrent();200===i.status&&(e=!0,this._basicIdentity.user=i.data),e||401!==i.status&&403!==i.status||console.debug("Basic authentication invalid credentials, trying again")}catch(e){console.error("Basic auth failed: ",e)}if(e){console.debug("Basic authentication successful"),s=!0;let e=yield t.api.UserResource.getCurrentUserClientRoles(this.clientId);this._basicIdentity.roles=e.data}else{console.debug("Unknown response so aborting"),this._basicIdentity=void 0;break}}s&&this._onAuthenticated()})}isSuperUser(){return!!(this.getRealm()&&"master"===this.getRealm()&&this.hasRealmRole("admin"))}isRestrictedUser(){return!!this.hasRealmRole("restricted_user")}getApiBaseUrl(){let e=this._config.managerUrl;return e+("/api/"+this._config.realm+"/")}getAppName(){let e=location.pathname.split("/");return e.length>=1?e[1]:""}hasRealmRole(e){return this.isKeycloak()&&this._keycloak.hasRealmRole(e)}hasRole(e,t=this._config.clientId){let i=this.roles;return i&&i.has(t)&&i.get(t).indexOf(e)>=0}getAuthorizationHeader(){return this.getKeycloakToken()?"Bearer "+this.getKeycloakToken():this.getBasicToken()?"Basic "+this.getBasicToken():void 0}getKeycloakToken(){if(this.isKeycloak())return this._keycloak.token}getBasicToken(){return this._basicIdentity?this._basicIdentity.token:void 0}getRealm(){if(this._config)return this._config.realm}isMobile(){return this.console&&this.console.isMobile}isKeycloak(){return!!this._keycloak}_onAuthenticated(){this._authenticated=!0}loadAndInitialiseKeycloak(){return __awaiter(this,void 0,void 0,function*(){var e,t,i,n;try{this._keycloak=new _({clientId:this._config.clientId,realm:this._config.realm,url:this._config.keycloakUrl});let o=yield this._getNativeOfflineRefreshToken(),r=yield this._keycloak.init({checkLoginIframe:!1,onLoad:"check-sso"});if(!r&&o)try{console.error("SETTING OFFLINE TOKEN"),this._keycloak.refreshToken=o,r=yield this._updateKeycloakAccessToken()}catch(e){console.error("Failed to authenticate using offline token")}if(r)this._name=null==(e=this._keycloak.tokenParsed)?void 0:e.name,this._username=null==(t=this._keycloak.tokenParsed)?void 0:t.preferred_username,this._createTokenUpdateInterval(),this.isMobile()&&(null==(n=null==(i=this._keycloak)?void 0:i.refreshTokenParsed)?void 0:n.typ)==="Offline"&&(console.debug("Storing offline refresh token"),this.console.storeData("REFRESH_TOKEN",this._keycloak.refreshToken)),this._onAuthenticated();else if(this.config.autoLogin)return this.login(),!1;return!0}catch(e){return this._authenticated=!1,this._setError(ORError.AUTH_FAILED),console.error("Failed to initialise Keycloak: "+e),!1}})}_createTokenUpdateInterval(){this._keycloakUpdateTokenInterval||(this._keycloakUpdateTokenInterval=window.setInterval(()=>__awaiter(this,void 0,void 0,function*(){yield this._updateKeycloakAccessToken().catch(()=>{console.debug("Keycloak failed to refresh the access token"),this._onDisconnect()})}),1e4))}_updateKeycloakAccessToken(){return __awaiter(this,void 0,void 0,function*(){let e=yield this._keycloak.updateToken(20);return console.debug("Access token update success, refreshed from server: "+e),e&&this._onAuthenticated(),e})}_getNativeOfflineRefreshToken(){return __awaiter(this,void 0,void 0,function*(){if(this.isMobile())return yield this.console.retrieveData("REFRESH_TOKEN")})}_emitEvent(e){window.setTimeout(()=>{for(let t of this._listeners)t(e)},0)}_setError(e){this._error=e,this._emitEvent(OREvent.ERROR),console.warn("Error set: "+e)}_clearWebHistory(){var e;this.isMobile()&&(null==(e=this.console)||e._doSendGenericMessage("CLEAR_WEB_HISTORY",void 0))}_onDisconnect(){return __awaiter(this,void 0,void 0,function*(){this._disconnected||(console.debug("Disconnected"),this._disconnected=!0,this._keycloakUpdateTokenInterval&&(window.clearTimeout(this._keycloakUpdateTokenInterval),this._keycloakUpdateTokenInterval=void 0),this._emitEvent(OREvent.OFFLINE),this.reconnect())})}_onReconnected(){console.debug("Reconnected"),this._disconnected=!1,this._createTokenUpdateInterval(),this._emitEvent(OREvent.ONLINE)}reconnect(){return __awaiter(this,arguments,void 0,function*(e=3e3){if(!this._disconnected)return;this._reconnectTimer&&(window.clearTimeout(this._reconnectTimer),this._reconnectTimer=void 0);let t=()=>__awaiter(this,void 0,void 0,function*(){var e;if(console.debug("Attempting reconnect"),!(yield this.isKeycloakReachable()))return console.debug("Keycloak is unreachable"),!1;console.debug("Keycloak is reachable"),console.debug("Checking keycloak access token");try{yield this._updateKeycloakAccessToken()}catch(t){let e=yield this._getNativeOfflineRefreshToken();this._keycloak.refreshToken=e;try{yield this._updateKeycloakAccessToken()}catch(e){console.debug("Cannot update access token so sending to login"),this.login();return}return console.debug("Keycloak access token is valid"),!0}let t=this.events&&this.events.status===i.CONNECTING;return console.debug("If event provider offline then attempting reconnect: offline="+t),!t||(yield null==(e=this.events)?void 0:e.connect())}),n=yield t();if(void 0!==n){if(!n){console.debug("Scheduling another reconnect attempt in (ms): "+(e=Math.min(Manager.MAX_RECONNECT_DELAY,e+3e3))),this._reconnectTimer=window.setTimeout(()=>this.reconnect(e),e);return}this._onReconnected()}})}isKeycloakReachable(){return __awaiter(this,arguments,void 0,function*(e=2e3){let t=new AbortController,i=setTimeout(()=>t.abort(),e);try{let e=this._keycloak.endpoints.token(),i=yield fetch(e,{method:"OPTIONS",signal:t.signal});return 200===i.status}catch(e){return!1}finally{clearTimeout(i)}})}}Manager.MAX_RECONNECT_DELAY=45e3;export const manager=new Manager;export default manager;export{l as Util};
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@openremote/core",
3
- "version": "1.11.2",
3
+ "version": "1.11.3",
4
4
  "description": "OpenRemote 3.x Core",
5
5
  "main": "dist/umd/index.bundle.js",
6
6
  "module": "lib/index.js",
@@ -21,9 +21,9 @@
21
21
  "author": "OpenRemote",
22
22
  "license": "AGPL-3.0-or-later",
23
23
  "dependencies": {
24
- "@openremote/model": "1.11.2",
25
- "@openremote/or-icon": "1.11.2",
26
- "@openremote/rest": "1.11.2",
24
+ "@openremote/model": "1.11.3",
25
+ "@openremote/or-icon": "1.11.3",
26
+ "@openremote/rest": "1.11.3",
27
27
  "axios": "0.24.0",
28
28
  "i18next": "^21.5.3",
29
29
  "i18next-http-backend": "^1.3.1",