UNPKG

@stencil/angular-output-target

Version:

Angular output target for @stencil/core components.

47 lines (46 loc) 1.91 kB
/** * The type of output that can be generated with the Angular output target. * - `component` - Generate many component wrappers tied to a single Angular module (lazy/hydrated approach). * - `scam` - Generate a Single Component Angular Module for each component. * - `standalone` - Generate a component with the `standalone` flag set to `true`. */ export type OutputType = 'component' | 'scam' | 'standalone'; export interface OutputTargetAngular { /** * The package name of the component library. * This is used to generate the import statements. */ componentCorePackage: string; /** * The path to the proxy file that will be generated. This can be an absolute path * or a relative path from the root directory of the Stencil library. */ directivesProxyFile: string; directivesArrayFile?: string; valueAccessorConfigs?: ValueAccessorConfig[]; excludeComponents?: string[]; customElementsDir?: string; /** * The type of output that should be generated. * - `component` - Generate many component wrappers tied to a single Angular module (lazy/hydrated approach). * - `scam` - Generate a Single Component Angular Module for each component. * - `standalone` - Generate a component with the `standalone` flag set to `true`. */ outputType?: OutputType; /** * Experimental (!) * When true, tries to inline the properties of components. This is required to enable Angular Language Service * to type-check and show jsdocs when using the components in html-templates. */ inlineProperties?: boolean; } export type ValueAccessorTypes = 'text' | 'radio' | 'select' | 'number' | 'boolean'; export interface ValueAccessorConfig { elementSelectors: string | string[]; event: string; targetAttr: string; type: ValueAccessorTypes; } export interface PackageJSON { types: string; }