File

libs/nx/src/generators/journey-src/lib/scaffold-core/scaffold-core-options.ts

Index

Properties

Properties

name
Type string
storeExpression
Type string
import { CHANNEL } from '@allianz/taly-core';
import { BuildingBlockConfiguration, PluginConfiguration } from '@allianz/taly-core/schemas';
import { JourneyInsights } from '@allianz/taly-core/showroom';
import { JourneyTargetType } from '@allianz/taly-sdk';
import { EnvOptionObject } from '../env-parsing/env';

export interface ApplicationInput {
  name: string;
  storeExpression: string;
}

export interface ScaffoldCoreOptions {
  /**
   * The path to the root tsconfig that should be extended
   */
  baseTsConfigPath?: string;
  /**
   * The path to the workspace node_modules folder
   */
  nodeModulesPath?: string;
  /**
   * The path where the journey should be generated
   */
  destinationDirectory: string;
  /**
   * Show the acl inspector
   */
  aclInspector?: boolean;
  /**
   * List of inputs that will be added to the app.component. The values of these input will be
   * made available in the PFE store.
   */
  applicationInputs?: ApplicationInput[];
  /**
   * The name of the application. Will be used as the technical name in the workspace.
   */
  applicationName: string;
  /**
   * The title of the application. Will be used for the browser title.
   */
  applicationTitle?: string;
  /**
   * The description of the application. Will be used for the meta description tag.
   */
  applicationDescription?: string;
  /**
   * Whether to hide header and footer.
   */
  chromeless?: boolean;
  /**
   * Only for web components: The url at which the web component will be served.
   */
  deployUrl?: string;
  /**
   * Pass an object of environment key/value pairs to be stored in the environment.ts
   */
  env?: EnvOptionObject;
  /**
   * List of Building Block configurations to be used as header actions
   */
  headerActions?: BuildingBlockConfiguration[];
  /**
   * Provide a value of 'expert' to specify that this journey is meant for internal usage (Experts, insurance agents)
   * or a value of 'retail' for user-facing journeys. It will be 'retail' by default.
   */
  aquilaChannel?: CHANNEL;
  /**
   * Provide a path to a css file for a custom Aquila theme.
   * When `--aquila-theme` is used together with `--aquila-channel=expert`,
   * the default expert theme from NDBX will NOT be imported.
   * To avoid any potential style issues, it is important to extend your custom theme from the default "expert" theme.
   */
  aquilaTheme?: string;
  /**
   * Should this journey be generated with the Allianz NDBX theme?
   */
  useNdbx?: boolean;
  /**
   * Show the pfe debugger
   */
  pfeDebugger?: boolean;
  /**
   * Plugins configuration
   */
  pluginsConfig?: PluginConfiguration[];
  /**
   * Whether to enable or disable the default spinner provided by TALY Frame
   */
  spinner?: boolean;
  /**
   * Whether the frame content should be centered in the available space.
   * Only applies to Expert journeys.
   */
  frameContentIsCentered?: boolean;
  offerCodeStateKey?: string;
  /**
   * Target type for generators.  Allowed values 'app' | 'module' | 'webcomponent'
   */
  target?: JourneyTargetType;
  /**
   * Whether to use a noop location strategy. Only has an effect when the target is
   * 'webcomponent'.
   */
  useNoopLocationStrategy?: boolean;
  /**
   * Whether to use a hash location strategy.
   * Only has an effect when the target is 'app' (standalone journey).
   * Recommended only for special cases where the app server does not support the default path location strategy.
   */
  useHashLocationStrategy?: boolean;
  /**
   * Set to `true` to show the `WORK IN PROGRESS` text on top of the application.
   */
  workInProgressIndicator?: boolean;
  /**
   * Custom scripts to be embedded in the application. This is not supported for the module or web component integration.
   */
  scripts?: string | string[];
  /**
   * Whether the generated app should use TypeScript's strict mode for compilation.
   */
  tsStrictMode: boolean;
  /**
   * Generate the journey in showroom mode
   */
  showroom?: boolean;
  /**
   * Data to be displayed in the journey insights dashboard
   */
  journeyInsights?: JourneyInsights;
  /**
   * Whether the dev tools toggle button should be displayed in a showroom journey
   */
  debugToolsToggleVisible: boolean;
  /**
   * Whether a journey should be generated with the ACL hierarchial inspector
   */
  displayExperimentalAclInspector?: boolean;
  /**
   * Whether a journey should be generated with the new vertical spacing system
   */
  useNewVerticalSpacing?: boolean;
  /**
   * Whether the generated app has some overarching notifications configured.
   */
  hasNotifications: boolean;
}

results matching ""

    No results matching ""