Upgrade Appkit in Existing Apps
package.json
file at the root of your project, update the appkit-ui
dependency to the latest Appkit version, for example:
pom.xml
file at the root of your project, update the value of the parent.version
property to the latest Appkit version, for example:
Persist Social Data in Fusion
index-profile: my-index-profile-name
in your Fusion platform configuration, replacing my-index-profile-name
with the index profile Appkit will use. Index profiles take precedence over index pipelines.
/core/services/platform/table
, lets you retrieve the output of a Fusion/Solr pivot query.pivot:table
elements.
satellite.conf
configuration file in conf/platforms/satellite/
. Set these parameters in your platform configuration file:
name
: twigkit.search.satellite.Satellite
(required)host
: URL of the host for the underlying platform. It must begin with http
or https
.platform-config
: Platform configuration being delegated tousername
: Username for authentication on the underlying platformpassword
: Password for authentication on the underlying platform. It is the encoded output of the Appkit twigcrypt
utility.username
and password
are required if Basic authentication is required to request search results from the underlying platform, for example, as is the case with Solr.DateFormatProcessor
lets you specify the format for the display value of a date field.twigkit.fusion.ui-jsp
provides a JSP tag library. Adding <%@ taglib prefix="app" uri="/lucidworks/app" %>
to the top of a JSP page exposes utility functions within that library. Adding ${app:contextPath(pageContext.request)}
sets the context path of the app on that page, taking into account the Fusion webapps proxy.
numberFormat
and dateFormat
value filters now handle range values automatically by formatting the endpoints of a range individually. With this change, you must remove any special handling of range values in individual widgets.
select
attribute has been added to the geo:highmaps
tag, which takes these values:
click
(default) - User selects a filter by clicking a region.multiselect
.* Select multiple filters that get combined with a logical disjunction (OR). Shows an Apply button that is enabled if and only if one or more checkboxes have been ticked.multiselect-instant
. Select multiple filters that get combined with a logical disjunction (OR). Filters are applied immediately when a checkbox is ticked.search:dropdown
tag has been replaced with the facet:dropdown
tag. All functionality from the prior tag exists in the new one.
select
parameter has been added to the facet:dropdown
tag, which takes these values:
toggle
(default) - Only allows one filter to be selected at a time, but shows unselected filters and counts.multiselect
.* Select multiple filters that get combined with a logical disjunction (OR). Shows an Apply button that is enabled if and only if one or more checkboxes have been ticked.multiselect-instant
. Select multiple filters that get combined with a logical disjunction (OR). Filters are applied immediately when a checkbox is ticked.options
parameter lets you pass other options to geo:highmaps
.
show-more-values
parameter has been added to the search:filter
tag.
show-more-values
is specified without an assignment (e.g. <search-field show-more-values …>
) or with the value -1
, then Appkit shows all additional values for the field when the user clicks the “Show more” link.
show-more-values
is assigned a positive integer value (e.g. <search-field show="5" show-more-values="10" …>
), then Appkit shows that number of additional values of the field when the user clicks the “Show more” link (or all remaining values if there are fewer values than the number requested).
facet:dropdown
tag:
search:filter-list
tag. They have the same uses.
<track-clicks>
element, as before, and add one or more of the following attributes to the DOM elements for which you want to intercept click events:
trackable
.* Clicks are tracked for all DOM elements with a trackable
attribute, in the scope of a <track:clicks>
element.data-click-type
(optional) - Specify a custom click type for a trackable DOM element. If data-click-type
is not specified, the click type defaults to the type
argument specified in the <track:clicks>
tag.data-click-url
(optional) - Specify a custom URL to track for a trackable DOM element.tk.session
cookie should be restricted to HTTPS channels over “SSL” (actually TLS). By default, the cookie is sent over all channels (the prior behavior).conf/activity/activity.conf
:
hover-timeout
. The default is 1000 (1 second). Here is an example that sets the hover timeout to 1/10th of a second:
project-name/assets/styles.css
file, define CSS class selectors for the collapsed (the first of these) and expanded (the second) icons, for example:
widget:slider
element now supports number formatting. Use a number-format
parameter to specify a format using the Java DecimalFormat.search:facet
elements with search-enabled
set to true
.
phoenix.all.less
(available prior to 4.2.0) - This stylesheet uses custom fonts fetched from a content delivery network by the browser. If a web app is hosted on a secure site with no Internet access, this stylesheet can have font loading errors that will manifest as “using different fonts” and as an eternally loading spinner in the browser somewhere.phoenix.all.local-fonts.less
(new in 4.2.0) - This stylesheet includes custom fonts that are hosted in the Appkit web app. However, you cannot use this stylesheet when a web app is accessed via the Fusion Proxy and Web Apps services.phoenix.all.no-fonts.less
(new in 4.2.0) - This stylesheet excludes all custom fonts.phoenix.all.local-fonts.less
phoenix.all.less
phoenix.all.no-fonts.less
wro.xml
or twigkit.less
. After the appkit-ui
Node module is installed, the Less stylesheets are found in node_modules/appkit-ui/dist/less/
.
xpack
are passed through to the Elastic X-Pack client.
http://hostname:*port*/
(for example, http://localhost:8080/
), use the -Dtwigkit.http.context
command-line parameter when starting the app to specify a path component to append to the URL. This can make using a reverse proxy easier.-Dtwigkit.http.context=search
would start the app at http://hostname:*port*/search
(for example, http://localhost:8080/search
)license.properties
file:
SolrHierarchicalFacetService
and GreedySolrHierarchicalFacetService
services, you could only sort by name
. Now, you can also sort by count
.
ActivityModule
instead of in individual trackers.
enable: false
configuration parameter from activity/tracking/tracker.conf
to activity/tracking.conf
.
security:user-actions
tag has been improved to redirect to the logout page when the application is in HTML5 mode.
search:fields
element now lets you use the new attribute hidden-fields
to specify a set of fields that will always be requested, whether or not the user selects them.
search:box
component persists in the saved-search pane and must be cleared manually.
widget:date-range
component lets a user select a To date that precedes a From date.
@highchart-colors
does not work.
chart:histogram
element does not display a histogram if there is only a single facet value.
search:box
and advanced:button
elements, pagination is not reset when a new search is performed.
widget:date-range
component uses a previously selected To date when reselecting dates.
id
field is modified incorrectly.
suggester
parameter in the SolrSuggestionsRetriever
service is ignored, which prevents specification of multiple suggester dictionaries.
search:result-list
element is nested inside an instant:result-list
element.
facet:dropdown
element and making more than one facet selection, incorrect facets are selected, highlighted, indicated in breadcrumbs, and used in queries.
store
on the Lucene platform does not add new documents.
collaboration:comment-list
tag mentions bookmarks instead of comments.
search:fields
element does not hide the list of fields.
DateFormatProcessor
lets a user format the display value of a date field.
How to enable DateFormatProcessor
:
data-format.conf
under conf/processors/response
. In the file add:
yyyy-MM-dd
.
conf/platforms/fusion/data.conf
add:
host
and collection
).
bin/fusion start
bin/sql start
conf/platforms/fusion/analytics.conf
. Include these properties:
conf/services/api/fusion.conf
. Specify the catalog to use with the platform. The default catalog is fusion
: