furo-deep-link

furo-deep-link #

@furo/data v2.18.0
import '@furo/data/src/furo-deep-link.js';
exports FuroDeepLink js
exports <furo-deep-link> custom-element-definition
superclass LitElement

summary Resolve deep links HATEOAS based on query params

furo-deep-link Resolve deep links HATEOAS based on the query params and the selected service.

1
2
3
4
<furo-deep-link
 service="TaskService"
 fn-qp-in="--pageQueryChanged(*.query)" at-hts-out="--serviceHTS">
 </furo-deep-link>

Deeplink inside of a furo-page

The services must be registered in the Env:

1
2
3
import {Services,Types} from "./furo-spec.js"
Init.registerApiServices(Services);
Init.registerApiTypes(Types);

Usually this is done in your src/configs/init.js

Attributes and Properties #

service #

service String

Set the service name like TaskService.

Services must be registered before.

Events #

hts-out #

at-hts-out[]HTSLinks

Fired when hateoas is available

Methods #

qpIn #

qpIn(queryParams `` ) ⟹ void

`` fn-qp-in

Furo-deep-link consumes a object literal with key value pairs.

This can come from the *.query part of an event from furo-location.

Or from a furo-pages wire.

Relevant wires from furo-pages:

  • –pageQueryChanged(*.query)

  • –pageActivated(*.query)

  • –pageHashChanged(*.query)

  • queryParams

trigger #

trigger() ⟹ void

*fn-trigger

Evaluates hts. Use qpIn(qp) if you have a qp object in your event.detail This method have no effect as long _qp is not set.



setService #

setService(serviceName `` ) ⟹ void

`` fn-set-service

Sets the service by wire

  • serviceName