Appearance
Customize startup settings
Use settings:filter for approved presentation, language, and feature changes that must be applied during startup. The plugin must be queued before the embed script.
Register the filter
ts
import { PLUGIN_API_VERSION, definePlugin } from '@iconfigurators/plugin-sdk'
type Options = {
accentColor?: string
splashTitle?: string
showInventoryQuantity?: boolean
}
export default definePlugin<Options>({
id: 'customer.startup-presentation',
version: '1.0.0',
apiVersion: PLUGIN_API_VERSION,
setup(api, options) {
api.hooks.filter('settings:filter', (settings) => ({
...settings,
options: {
...settings.options,
templateAccentColor: options?.accentColor ?? '#2563eb',
splashTitle: options?.splashTitle ?? settings.options.splashTitle,
showInventoryQty: options?.showInventoryQuantity ?? settings.options.showInventoryQty,
},
}))
},
})The hook receives only supported public settings. Keep account identity, endpoints, credentials, request construction, RFQ recipients, and plugin descriptors outside the returned value.
Queue before startup
ts
queuePlugin(startupPresentationPlugin, {
order: 10,
options: {
accentColor: '#2563eb',
splashTitle: 'Find the right wheels for your vehicle',
showInventoryQuantity: false,
},
})html
<script src="https://YOUR_DOMAIN/plugins/startup-presentation.plugin.js"></script>
<div id="icf_page"></div>
<script src="https://iconfigurators.app/src/embed.cfm?ky=CONFIGURATOR_KEY"></script>Late registration cannot change startup settings for the current page load.
Supported option fields
The public settings contract includes:
- Accent and color-mode values
- Public image, logo, title, description, and disclaimer content
- Search and shopping feature switches
- Tire, inventory, quantity, and pricing visibility
- Retail-pricing selection
Use account configuration when the same value should follow a configurator key on every website. Use this hook for behavior owned by a particular plugin deployment.