Class: UrHarmonizationEngine

Help4.engine.ur.UrHarmonizationEngine(params)

UR Harmonization Engine

Constructor

new UrHarmonizationEngine(params)

Parameters:
Name Type Description
params Help4.engine.ur.UrHarmonizationEngine.Params
Properties:
Name Type Attributes Description
controller Help4.controller.Controller
eventBus Help4.EventBus
_started boolean
_appFrame HTMLElement <nullable>
_currentApp string <nullable>
_connected boolean
_connections Generator.<number> <nullable>
_apiVersion number <nullable>
updated from controller configuration each navigation
_useURHotspots boolean help and tour assignments
_useABAPHelpTexts boolean What's This App? and help tiles with ABAP help texts
_useUI5HelpTexts boolean help tiles with ABAP help texts in UI5 apps
_running boolean
_runClosed boolean
_assignMode boolean
_failedIconBase string <nullable>
_mock boolean
_filter Object <nullable>
_tiles Map.<string, Help4.widget.help.ProjectTile>
_ignoreLongText boolean
_useFixedVersion number <nullable>
_urHotspots Map.<string, Object>
_texts Object
_docu_texts Object linked documentation in long_text
_tileStatus Object
_migratedHotspots Array.<Help4.engine.ur.UrHarmonizationEngine.UrMigrationResponse>
_wtaUrl string <nullable>
_wtaTile Help4.widget.help.ProjectTile <nullable>
_eventBusObserver Help4.observer.EventBusObserver
_messageObserver Help4.observer.MessageEventObserver
_mutationObserver Help4.observer.MutationObserver
_log function <nullable>
using UI5 logging Help4.engine.ur.Connection.connect
Source:

Extends

Methods

(protected) ____defineDataFunctions()

Overrides:
Source:

(protected) ____defineProperties(params, derivedopt, nullable)

Parameters:
Name Type Attributes Default Description
params Object
derived Object <optional>
<nullable>
null
Properties
Name Type Description
GET Object
SET Object
Overrides:
Source:

(protected) ____defineProperty(args)

Parameters:
Name Type Description
args Object
Properties
Name Type Attributes Default Description
type string <optional>
'param' for Help4.jscore.DataBase
key string
info Help4.jscore.ControlBase.Param
funGet Help4.jscore.ControlBase.FunGet
funSet Help4.jscore.ControlBase.FunSet
Overrides:
Source:

(protected) ____defineStaticProperties()

auto define all to be cleaned properties
Overrides:
Source:
Throws:
Error

(protected) ____extendParams(dest, src) → {Object}

Parameters:
Name Type Description
dest Object
src Object
Overrides:
Source:
Returns:
Type
Object

(protected) ____getClassConfig() → {Help4.jscore.Base.Params}

Overrides:
Source:
Returns:
Type
Help4.jscore.Base.Params

(protected) ____getData() → {Object}

Overrides:
Source:
Returns:
Type
Object

(protected) ____mergeDerivedParams(level0, level1)

Parameters:
Name Type Description
level0 Help4.jscore.Base.Params
level1 Help4.jscore.Base.Params
Overrides:
Source:
Throws:
Error

(protected) ____resolveDerivedParams(classConfig)

Parameters:
Name Type Description
classConfig Help4.jscore.Base.Params
Overrides:
Source:

(protected) ____setInitValue(args)

Parameters:
Name Type Description
args Object
Properties
Name Type Description
key string
info Help4.jscore.ControlBase.Param
params Object
funSet Help4.jscore.ControlBase.FunSet
Overrides:
Source:

(protected) _destroyControl(…keys)

destroys class properties
Parameters:
Name Type Attributes Description
keys string <repeatable>
Overrides:
Source:

(protected) _fireEvent(event) → {Help4.jscore.Base}

fires an event that can be observed from outside
Parameters:
Name Type Description
event Object the event to be fired
Overrides:
Source:
Returns:
Type
Help4.jscore.Base

(async, protected) _fireEvent2(event) → {Promise.<Array.<Help4.EmbeddedEvent.EventResponse>>}

fires an event that can be observed from outside
Parameters:
Name Type Description
event Object the event to be fired
Overrides:
Source:
Returns:
Type
Promise.<Array.<Help4.EmbeddedEvent.EventResponse>>

(protected) _fireEventSync(event) → {Array.<Help4.EmbeddedEvent.EventResponse>}

fires an event that can be observed from outside
Parameters:
Name Type Description
event Object the event to be fired
Overrides:
Source:
Returns:
Type
Array.<Help4.EmbeddedEvent.EventResponse>

addListenerSync(eventType, listener) → {Help4.jscore.Base}

add an event listener
Parameters:
Name Type Description
eventType string | Array.<string> event type to be observed
listener Help4.EmbeddedEvent.Listener the callback function
Overrides:
Source:
Returns:
Type
Help4.jscore.Base

addSelectorToMigrate(selector) → {boolean}

Collect non-UR selectors to migrate to UR hotspots / positions
Parameters:
Name Type Description
selector Help4.engine.ur.UrHarmonizationEngine.UrMigrationRequest
Source:
Returns:
- true if selector was added, false if it already existed
Type
boolean

destroy()

destroys this instance
Overrides:
Source:

getAppFrame() → (nullable) {HTMLElement}

Source:
Returns:
Type
HTMLElement

getDocuLinkContent(docuLink) → (nullable) {Object}

return DOCU_LINK texts
Parameters:
Name Type Description
docuLink string
Source:
Returns:
Type
Object

getMigratedHotspot(selector) → {Help4.engine.ur.UrHarmonizationEngine.UrMigrationResponse}

Get hotspot values for migrated selector
Parameters:
Name Type Description
selector Help4.engine.ur.UrHarmonizationEngine.UrMigrationRequest
Source:
Returns:
- contains {string} hotspotId or {string} position
Type
Help4.engine.ur.UrHarmonizationEngine.UrMigrationResponse

getTile(idopt, nullable) → (nullable) {Help4.widget.help.ProjectTile|Array.<Help4.widget.help.ProjectTile>}

Parameters:
Name Type Attributes Default Description
id string | number <optional>
<nullable>
null id or index
Source:
Returns:
Type
Help4.widget.help.ProjectTile | Array.<Help4.widget.help.ProjectTile>

getTileStatus(tileId) → {*|null}

Status for backend tile playback in WDA and HTMLGUI apps; in UI5 apps we are using the DOM to check the tile status (same-origin access)
Parameters:
Name Type Description
tileId string
Source:
Returns:
Type
* | null

hasHotspots(ruleopt, valueopt) → {boolean}

check if appropriate hotspots are available a) check for any hotspots passing no selector in @link{Help4.service.recording.IFrameService.pointToSelector} or if the selector is a UrHarmonizationSelector in @link{Help4.service.recording.IFrameService.selectorToInfo} b) check if the specific non-UR selector is available in the migrated hotspots in @link{Help4.service.recording.IFrameService.selectorToInfo}
Parameters:
Name Type Attributes Default Description
rule string <optional>
'UrHarmonizationSelector'
value string <optional>
Source:
Returns:
Type
boolean

hasTiles() → {boolean}

Source:
Returns:
Type
boolean

ignoreLongText(ignore)

Parameters:
Name Type Description
ignore boolean
Source:

isDestroyed() → {boolean}

whether instance is destroyed
Overrides:
Source:
Returns:
Type
boolean

pointToSelector(param) → {Promise.<Object>}

Parameters:
Name Type Description
param Object
Source:
Returns:
Type
Promise.<Object>

runClosed(run) → {boolean}

support use of UR hotspots even when the panel is closed, e.g. for instant hotspots or callouts or for Help4.API.record
Parameters:
Name Type Default Description
run boolean true toggle
Source:
Returns:
- previous state
Type
boolean

scrollIntoView(hotspotId)

Parameters:
Name Type Description
hotspotId string
Source:

selectorToInfo(param) → {Promise.<Object>}

Parameters:
Name Type Description
param Object
Source:
Returns:
Type
Promise.<Object>

setFilter(filternullable)

Parameters:
Name Type Attributes Description
filter Object <nullable>
Source:

start()

starts the engine
Source:

startMock()

start mock
Source:

stop()

stops the engine
Source:

updateMock()

update mock element positions or send specific guided tour message
Source:

useFixedVersion(version)

Parameters:
Name Type Description
version number
Source:

Type Definitions

BackendQueryData

Type:
  • Object
Properties:
Name Type Description
_type string name of the query
_urId string key / parameters of the query
Source:

ErrorResponse

Type:
  • Object
Properties:
Name Type Description
error Help4.engine.ur.UrHarmonizationEngine.QueryException
Source:

Params

Type:
  • Object
Properties:
Name Type Description
controller Help4.controller.Controller
eventBus Help4.EventBus
Source:

QueryException

Type:
  • Object
Properties:
Name Type Description
@SAP__common.ExceptionCategory string
code string
innererror Object
message string
Source:

UrDataV1

Type:
  • Object
Properties:
Name Type Description
technology string GUI | WDA
elements Array.<Help4.engine.ur.UrHarmonizationEngine.UrElement>
Source:

UrElement

Elements in postMessage API version 1
Type:
  • Object
Properties:
Name Type Attributes Description
id Object key for backend query
position DOMRect
ctrlId string
labelText string <optional>
to use instead of backend label_text
Source:

UrHotspot

Hotspots instead of elements in postMessage API version 2
Type:
  • Object
Properties:
Name Type Attributes Description
backendHelpKey Object backend query key
backendHelpCDSQuery string <optional>
backend query name
position DOMRect <optional>
not sent in UI5, using element from hotspotId
hotspotId string
labelText string <optional>
to use instead of backend label_text
Source:

UrLinkResponse

Type:
  • Object
Properties:
Name Type Description
esid string key name SAPGUI (WDA sends url directly in postMessage, no query needed)
help_link string url to be used as link target in What's This App? tile (WTA)
Source:

UrMigrationRequest

Type:
  • Object
Properties:
Name Type Description
rule string selector used
value string actual selector value
Source:

UrMigrationResponse

Type:
  • Object
Properties:
Name Type Attributes Description
selector Help4.engine.ur.UrHarmonizationEngine.UrMigrationRequest {rule, value}, the migrated selector
hotspotId string <optional>
hotspot id of the element the selector maps to (updated with UpdateHotspots)
position DOMRect <optional>
alternative value, if the selector doesn't map to an existing help element
selectorString string <optional>
JSON.stringified selector value
Source:

UrTextResponse

Type:
  • Object
Properties:
Name Type Attributes Description
esid string <optional>
key name SAPGUI
dtel string <optional>
key name WDA
label_text string tile title text
short_text string tile text
long_text string bubble text
res_langu string <optional>
result language of long_text; important in case the requested language wasn't found
poh string <optional>
Process On Help; dynamic help based on current context
Source: