forked from FINAKON/HelpProject
1. Initial Commit - a boiler plate code and POC to realize the concept of context sensitive help 2. Frontend code written in ReactJS 3. Backend code written in Java, Spring Boot Framework 4. Frontend Start: pre-requisites : node, npm npm run dev ==> to start the frontend vite server 5. Backend Start: pre-requisites : java, mvn mvn spring-boot:run ==> to start the backend server 6. Visit http://localhost:5173/ for basic demo of help, press F1 in textboxes 7. Visit http://localhost:5173/editor and enter "admin123" to add/modify texts. Happy Coding !!! Thank you, Bhargava.
68 lines
2.3 KiB
TypeScript
68 lines
2.3 KiB
TypeScript
import { TransformOptions, ParserOptions } from '@babel/core';
|
|
import { PluginOption, ResolvedConfig } from 'vite';
|
|
|
|
interface Options {
|
|
include?: string | RegExp | Array<string | RegExp>;
|
|
exclude?: string | RegExp | Array<string | RegExp>;
|
|
/**
|
|
* Control where the JSX factory is imported from.
|
|
* https://esbuild.github.io/api/#jsx-import-source
|
|
* @default 'react'
|
|
*/
|
|
jsxImportSource?: string;
|
|
/**
|
|
* Note: Skipping React import with classic runtime is not supported from v4
|
|
* @default "automatic"
|
|
*/
|
|
jsxRuntime?: 'classic' | 'automatic';
|
|
/**
|
|
* Babel configuration applied in both dev and prod.
|
|
*/
|
|
babel?: BabelOptions | ((id: string, options: {
|
|
ssr?: boolean;
|
|
}) => BabelOptions);
|
|
/**
|
|
* React Fast Refresh runtime URL prefix.
|
|
* Useful in a module federation context to enable HMR by specifying
|
|
* the host application URL in the Vite config of a remote application.
|
|
* @example
|
|
* reactRefreshHost: 'http://localhost:3000'
|
|
*/
|
|
reactRefreshHost?: string;
|
|
/**
|
|
* If set, disables the recommendation to use `@vitejs/plugin-react-oxc`
|
|
*/
|
|
disableOxcRecommendation?: boolean;
|
|
}
|
|
type BabelOptions = Omit<TransformOptions, 'ast' | 'filename' | 'root' | 'sourceFileName' | 'sourceMaps' | 'inputSourceMap'>;
|
|
/**
|
|
* The object type used by the `options` passed to plugins with
|
|
* an `api.reactBabel` method.
|
|
*/
|
|
interface ReactBabelOptions extends BabelOptions {
|
|
plugins: Extract<BabelOptions['plugins'], any[]>;
|
|
presets: Extract<BabelOptions['presets'], any[]>;
|
|
overrides: Extract<BabelOptions['overrides'], any[]>;
|
|
parserOpts: ParserOptions & {
|
|
plugins: Extract<ParserOptions['plugins'], any[]>;
|
|
};
|
|
}
|
|
type ReactBabelHook = (babelConfig: ReactBabelOptions, context: ReactBabelHookContext, config: ResolvedConfig) => void;
|
|
type ReactBabelHookContext = {
|
|
ssr: boolean;
|
|
id: string;
|
|
};
|
|
type ViteReactPluginApi = {
|
|
/**
|
|
* Manipulate the Babel options of `@vitejs/plugin-react`
|
|
*/
|
|
reactBabel?: ReactBabelHook;
|
|
};
|
|
declare function viteReact(opts?: Options): PluginOption[];
|
|
declare namespace viteReact {
|
|
var preambleCode: string;
|
|
}
|
|
|
|
export { viteReact as default };
|
|
export type { BabelOptions, Options, ReactBabelOptions, ViteReactPluginApi };
|