TypoScript Reference 

The extension provides TypoScript constants and setup for the plugin view paths, the default of the discoverable login switch and the default CSS.

Constants 

Available TypoScript constants
plugin.tx_nrpasskeysfe.settings.discoverableEnabled = 1
plugin.tx_nrpasskeysfe.settings.css.includeDefault = 1
Copied!
plugin.tx_nrpasskeysfe.settings.discoverableEnabled
type

boolean

Default

1

Discoverable (usernameless) login. The login plugin follows it where its FlexForm field is set to Use the site setting (see settings.discoverableEnabled); an element set to On or Off keeps its own value. The felogin integration always follows it: with 0 the passkey tab of the felogin form shows a username field and asks for the username before a passkey is accepted.

plugin.tx_nrpasskeysfe.settings.css.includeDefault
type

boolean

Default

1

Load passkey-fe.css with the login, management and enrollment plugins and with the felogin integration. See Disabling default CSS.

The enrollment page the post-login interstitial redirects to is a site setting (nr_passkeys_fe.enrollmentPageUrl), not a TypoScript constant.

Setup 

The setup configures view paths for the Fluid templates:

EXT:nr_passkeys_fe/Configuration/TypoScript/setup.typoscript
plugin.tx_nrpasskeysfe {
    view {
        templateRootPaths.0 = EXT:nr_passkeys_fe/Resources/Private/Templates/
        partialRootPaths.0 = EXT:nr_passkeys_fe/Resources/Private/Partials/
        layoutRootPaths.0 = EXT:nr_passkeys_fe/Resources/Private/Layouts/
    }
    settings {
        discoverableEnabled = {$plugin.tx_nrpasskeysfe.settings.discoverableEnabled}
        css.includeDefault = {$plugin.tx_nrpasskeysfe.settings.css.includeDefault}
    }
}

plugin.tx_felogin_login.view.templateRootPaths.100 = EXT:nr_passkeys_fe/Resources/Private/Templates/Felogin/
plugin.tx_felogin_login.view.partialRootPaths.1700000000 = EXT:nr_passkeys_fe/Resources/Private/Partials/

plugin.tx_felogin_login.settings.passkeys {
    discoverableEnabled = {$plugin.tx_nrpasskeysfe.settings.discoverableEnabled}
    css.includeDefault = {$plugin.tx_nrpasskeysfe.settings.css.includeDefault}
}
Copied!

The felogin template override receives only felogin's own settings, so the two constants are handed to it under plugin.tx_felogin_login.settings.passkeys.

felogin partial path 

The felogin override renders the partial NrPasskeysFe/LoginAssets it shares with the login plugin. felogin finds it through the partial path key 1700000000, chosen high so that it does not collide with the keys a site usually gives its own felogin partials. A site that sets plugin.tx_felogin_login.view.partialRootPaths.1700000000 itself replaces this path and must provide NrPasskeysFe/LoginAssets.html there, for example as a copy of the extension's partial.

Overriding templates 

To override a template, add a custom path at a higher index:

plugin.tx_nrpasskeysfe {
    view {
        templateRootPaths.10 = EXT:my_site/Resources/Private/Templates/NrPasskeysFe/
    }
}
Copied!

Then create the template in the same directory structure, e.g.: EXT:my_site/Resources/Private/Templates/NrPasskeysFe/Login/Index.html

Disabling default CSS 

To include your own styles instead of the extension's default CSS, set the constant, which covers the plugins and the felogin integration:

plugin.tx_nrpasskeysfe.settings.css.includeDefault = 0
Copied!