Skip to content

Platform ​

Returns generic information required for development and using specific API's

Initiate App ​

Allows the application to be included into the platform and does not allow the app to be loaded outside the platform.

ts
invsy.platform.init()
invsy.platform.init()

Initiate Session ​

Initiates the client session timer based on the client user settings

ts
invsy.platfrom.initSession()
invsy.platfrom.initSession()

Initiate Pre Login Session ​

Initiates a custom pre login session where you can set the session time and logout function

js
function logoutFunction(){
    alert('logout function ran')
}
invsy.platform.initPreLoginSession(120,logoutFunction)
function logoutFunction(){
    alert('logout function ran')
}
invsy.platform.initPreLoginSession(120,logoutFunction)

Generate Platform Token ​

Generates a token that can be used to validate external API sessions to ensure the application is being access from the platform.

js
invsy.platform.getPlatformToken().then(res => {
  return res.result
})
invsy.platform.getPlatformToken().then(res => {
  return res.result
})

Is Web or Mobile Platform ​

Indicates if the sdk is running in the web or app. The response will either come back with "web" or "mobile"

js
invsy.platform.isWebOrMobile().then(res => {
  return res.result
})
invsy.platform.isWebOrMobile().then(res => {
  return res.result
})

Previous page url ​

gets the previous page url of the current page that is being presented

js
invsy.platform.previousPageUrl().then(res => {
  return res.result
})
invsy.platform.previousPageUrl().then(res => {
  return res.result
})

Display the top app container and load a feature in it.

js
invsy.platform.interactions.update({headerApp:{src:'https://example.com',show:true,height:'100'}})
invsy.platform.interactions.update({headerApp:{src:'https://example.com',show:true,height:'100'}})

Display the left app container and load a feature in it.

js
invsy.platform.interactions.update({leftApp:{src:'https://example.com',show:showLeft,width:'300'}})
invsy.platform.interactions.update({leftApp:{src:'https://example.com',show:showLeft,width:'300'}})

Display the Modal container and load a feature in it.

js
invsy.platform.interactions.update({modalApp:{src:'https://example.com',show:true}})
invsy.platform.interactions.update({modalApp:{src:'https://example.com',show:true}})

Pre Fetch Data ​

Gets the user settings, available settings, user features and menu information and stores it in state

js
invsy.platfrom.preFetchData(AuthResponse)
invsy.platfrom.preFetchData(AuthResponse)

Reset platform Data ​

Clears the platform state and gets everything from the API

js
invsy.platfrom.reset()
invsy.platfrom.reset()

Set browser title ​

sets the browser title in the browser tab

js
invsy.platfrom.setBrowserTile(title)
invsy.platfrom.setBrowserTile(title)

Allow features to route to others inside and outside the platform

ts
invsy.platfrom.navigateUrl(url: string | IMenuItem,target?:string)
invsy.platfrom.navigateUrl(url: string | IMenuItem,target?:string)

Print a document and open in or outside the platform

js
invsy.platfrom.printDocument(data:{ body: Blob | MediaSource | string; filename: string})
invsy.platfrom.printDocument(data:{ body: Blob | MediaSource | string; filename: string})

Update Url ​

Update the URL that is displaying in the browser

js
invsy.platform.updateUrl('lekke/lekke')
invsy.platform.updateUrl('lekke/lekke')

logged in successfully(authRes: any) ​

Tells the platform that a session has been established with the api and can move into a logged in state

js
invsy.platfrom.loggedInSuccessfully(authRes)
invsy.platfrom.loggedInSuccessfully(authRes)

Update context ​

Updates the platform state by comparing each value and replacing old values with the new data provided

ts
invsy.platfrom.updateContext(state: IUserAppStateEntity)

export interface IUserAppStateEntity {
  AuthResponse?:{
    authRes:IAuthResponse | undefined
  },
  Menu?:{
    menuConfig:IMenuConfig | undefined
  },
  userFeatures?:{
    features: IFeatures | undefined
  },
  userSettings?:{
    settings: IUserSetting[] | undefined
  },
  availableUserSettings?:{
    availableSettings: IUserSetting[] | undefined
  },
  Portfolio?:{
    data: IPortfolioEntity | undefined
  },
  ZaProfiles?:{
    data: IZaProfileEntity[] | undefined
  },
  selectedProfile?:{
    profile: IZaProfileEntity | undefined
  },
  PlatformInteractions?:{
    data: IPlatformInteractionsInterface
  }
}
invsy.platfrom.updateContext(state: IUserAppStateEntity)

export interface IUserAppStateEntity {
  AuthResponse?:{
    authRes:IAuthResponse | undefined
  },
  Menu?:{
    menuConfig:IMenuConfig | undefined
  },
  userFeatures?:{
    features: IFeatures | undefined
  },
  userSettings?:{
    settings: IUserSetting[] | undefined
  },
  availableUserSettings?:{
    availableSettings: IUserSetting[] | undefined
  },
  Portfolio?:{
    data: IPortfolioEntity | undefined
  },
  ZaProfiles?:{
    data: IZaProfileEntity[] | undefined
  },
  selectedProfile?:{
    profile: IZaProfileEntity | undefined
  },
  PlatformInteractions?:{
    data: IPlatformInteractionsInterface
  }
}

Determine journey after login ​

Determine the journey after login or go to default home

js
invsy.platfrom.determineJourneyAfterLogin()
invsy.platfrom.determineJourneyAfterLogin()

Update menu region ​

Update menu region in platform state that tells the platform which type of page to load if the client is geo-liked (multi regions)

js
invsy.platfrom.determineJourneyAfterLogin()
invsy.platfrom.determineJourneyAfterLogin()

Update platform interactions ​

Update platform interactions (header,leftNav)

ts
invsy.platfrom.interactions.update(interactions: IPlatformInteractionsInterface)

IPlatformInteractionsInterface {
  header?: {
    showHeader?:boolean,
    showNotifications?: boolean
    showMegaMenu?: boolean,
    showProfileSelector?:boolean
  },
  leftNav?:{
    showLeftNav?: boolean,
    isOpen?: boolean
  }
}
invsy.platfrom.interactions.update(interactions: IPlatformInteractionsInterface)

IPlatformInteractionsInterface {
  header?: {
    showHeader?:boolean,
    showNotifications?: boolean
    showMegaMenu?: boolean,
    showProfileSelector?:boolean
  },
  leftNav?:{
    showLeftNav?: boolean,
    isOpen?: boolean
  }
}

Logout ​

Logout from platform and kills the api session

js
invsy.platfrom.logout()
invsy.platfrom.logout()