Class QuinoaConfig


  • @ConfigRoot(phase=BUILD_TIME)
    public class QuinoaConfig
    extends Object
    • Field Detail

      • justBuild

        @ConfigItem
        public boolean justBuild
        Indicate if Quinoa should just do the build part. If true, Quinoa will NOT serve the Web UI built resources. This is handy when the output of the build is used to be served via something else (nginx, cdn, ...) Quinoa put the built files in 'target/quinoa-build' (or 'build/quinoa-build with Gradle). Default is false.
      • uiDir

        @ConfigItem(defaultValue="src/main/webui")
        public String uiDir
        Path to the Web UI (NodeJS) root directory. If not set ${project.root}/src/main/webui/ will be used. otherwise the path will be considered relative to the project root.
      • buildDir

        @ConfigItem(defaultValue="build/")
        public String buildDir
        This the Web UI internal build system (webpack, ...) output directory. After the build, Quinoa will take the files from this directory, move them to 'target/quinoa-build' (or build/quinoa-build with Gradle) and serve them at runtime. The path is relative to the Web UI path. If not set "build/" will be used
      • packageManager

        @ConfigItem(defaultValueDocumentation="auto-detected with lockfile")
        public Optional<String> packageManager
        Name of the package manager binary. If not set, it will be auto-detected depending on the lockfile falling back to "npm". Only npm, pnpm and yarn are supported for the moment.
      • packageManagerInstall

        @ConfigItem
        public PackageManagerInstallConfig packageManagerInstall
        Configuration for installing the package manager
      • packageManagerCommand

        @ConfigItem
        public PackageManagerCommandConfig packageManagerCommand
        Configuration for overriding build commands
      • indexPage

        @ConfigItem(defaultValue="index.html")
        public String indexPage
        Name of the index page. If not set, "index.html" will be used.
      • frozenLockfile

        @ConfigItem(defaultValueDocumentation="true if environment CI=true")
        public Optional<Boolean> frozenLockfile
        Install the packages using a frozen lockfile. Don’t generate a lockfile and fail if an update is needed (useful in CI). If not set it is true if environment CI=true, else it is false.
      • forceInstall

        @ConfigItem
        public boolean forceInstall
        Force install packages before building. If not set, it will install packages only if the node_modules directory is absent or when the package.json is modified in dev-mode.
      • enableSPARouting

        @ConfigItem
        public boolean enableSPARouting
        Enable SPA (Single Page Application) routing, all relevant requests will be re-routed to the "index.html". Currently, for technical reasons, the Quinoa SPA routing configuration won't work with RESTEasy Classic. If not set, it is disabled.
      • ignoredPathPrefixes

        @ConfigItem
        public Optional<List<String>> ignoredPathPrefixes
        List of path prefixes to be ignored by Quinoa. If not set, "quarkus.resteasy-reactive.path", "quarkus.resteasy.path" and "quarkus.http.non-application-root-path" will be ignored.
      • devServer

        @ConfigItem
        public DevServerConfig devServer
        Configuration for the external dev server (live coding server)
    • Constructor Detail

      • QuinoaConfig

        public QuinoaConfig()
    • Method Detail

      • getNormalizedIgnoredPathPrefixes

        public List<String> getNormalizedIgnoredPathPrefixes()
      • toHandlerConfig

        public QuinoaHandlerConfig toHandlerConfig​(boolean prodMode,
                                                   io.quarkus.vertx.http.runtime.HttpBuildTimeConfig httpBuildTimeConfig)
      • isEnabled

        public boolean isEnabled()
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class Object