@embeddable.com/sdk-core
Version:
Core Embeddable SDK module responsible for web-components bundling and publishing.
269 lines (268 loc) • 9.01 kB
TypeScript
import { RollupOptions } from "rollup";
import { z } from "zod";
import { ComponentLibraryConfig } from "@embeddable.com/sdk-utils";
export type Region = "EU" | "US" | "legacy-US";
export type EmbeddableConfig = {
plugins: (() => {
pluginName: string;
build: (config: ResolvedEmbeddableConfig) => Promise<unknown>;
cleanup: (config: ResolvedEmbeddableConfig) => Promise<unknown>;
validate: (config: ResolvedEmbeddableConfig) => Promise<unknown>;
buildPackage: (config: ResolvedEmbeddableConfig) => Promise<unknown>;
})[];
pushModels?: boolean;
pushComponents?: boolean;
pushBaseUrl?: string;
audienceUrl?: string;
authDomain?: string;
authClientId?: string;
errorFallbackComponent?: string;
applicationEnvironment?: string;
rollbarAccessToken?: string;
previewBaseUrl?: string;
componentsSrc?: string;
modelsSrc?: string;
presetsSrc?: string;
customCanvasCss?: string;
viteConfig?: {
resolve?: {
alias?: Record<string, string>;
};
};
rollupOptions?: RollupOptions;
region?: Region;
componentLibraries?: string[] | ComponentLibraryConfig[];
customizationFile?: string;
lifecycleHooksFile?: string;
};
declare const PLUGIN_NAME: "sdk-react";
export type PluginName = typeof PLUGIN_NAME;
export type ResolvedEmbeddableConfig = {
core: {
rootDir: string;
templatesDir: string;
configsDir: string;
};
client: {
rootDir: string;
srcDir: string;
modelsSrc: string;
presetsSrc: string;
buildDir: string;
tmpDir: string;
customCanvasCss: string;
webComponentRoot: string;
componentDir: string;
stencilBuild: string;
archiveFile: string;
errorFallbackComponent?: string;
bundleHash?: string;
customizationFile: string;
lifecycleHooksFile: string;
componentLibraries: string[] | ComponentLibraryConfig[];
viteConfig: {
resolve?: {
alias?: Record<string, string>;
};
};
rollupOptions: RollupOptions;
};
outputOptions: {
typesEntryPointFilename: string;
};
pushModels: boolean;
pushComponents: boolean;
pushBaseUrl: string;
audienceUrl: string;
previewBaseUrl: string;
authDomain: string;
authClientId: string;
applicationEnvironment: string;
rollbarAccessToken: string;
plugins: EmbeddableConfig["plugins"];
buildTime: [number, number];
dev?: {
watch: boolean;
logger: any;
sys: any;
};
region: Region;
[PLUGIN_NAME]: {
rootDir: string;
templatesDir: string;
outputOptions: {
fileName: string;
buildName: string;
componentsEntryPointFilename: string;
};
};
};
export declare const embeddableConfigSchema: z.ZodObject<{
plugins: z.ZodArray<z.ZodFunction<z.ZodTuple<[], z.ZodUnknown>, z.ZodUnknown>, "many">;
region: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<"EU">, z.ZodLiteral<"US">, z.ZodLiteral<"legacy-US">]>>;
pushModels: z.ZodOptional<z.ZodBoolean>;
pushComponents: z.ZodOptional<z.ZodBoolean>;
pushBaseUrl: z.ZodOptional<z.ZodString>;
audienceUrl: z.ZodOptional<z.ZodString>;
authDomain: z.ZodOptional<z.ZodString>;
authClientId: z.ZodOptional<z.ZodString>;
errorFallbackComponent: z.ZodOptional<z.ZodString>;
applicationEnvironment: z.ZodOptional<z.ZodString>;
rollbarAccessToken: z.ZodOptional<z.ZodString>;
previewBaseUrl: z.ZodOptional<z.ZodString>;
modelsSrc: z.ZodOptional<z.ZodString>;
presetsSrc: z.ZodOptional<z.ZodString>;
componentsSrc: z.ZodOptional<z.ZodString>;
customCanvasCss: z.ZodOptional<z.ZodString>;
customizationFile: z.ZodOptional<z.ZodString>;
lifecycleHooksFile: z.ZodOptional<z.ZodString>;
componentLibraries: z.ZodOptional<z.ZodUnion<[z.ZodArray<z.ZodString, "many">, z.ZodArray<z.ZodObject<{
name: z.ZodString;
include: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
exclude: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
}, "strip", z.ZodTypeAny, {
name: string;
include?: string[] | undefined;
exclude?: string[] | undefined;
}, {
name: string;
include?: string[] | undefined;
exclude?: string[] | undefined;
}>, "many">]>>;
viteConfig: z.ZodOptional<z.ZodObject<{
resolve: z.ZodOptional<z.ZodObject<{
alias: z.ZodRecord<z.ZodString, z.ZodString>;
}, "strip", z.ZodTypeAny, {
alias: Record<string, string>;
}, {
alias: Record<string, string>;
}>>;
}, "strip", z.ZodTypeAny, {
resolve?: {
alias: Record<string, string>;
} | undefined;
}, {
resolve?: {
alias: Record<string, string>;
} | undefined;
}>>;
rollupOptions: z.ZodOptional<z.ZodObject<{}, "strip", z.ZodTypeAny, {}, {}>>;
}, "strict", z.ZodTypeAny, {
plugins: ((...args: unknown[]) => unknown)[];
region?: "EU" | "US" | "legacy-US" | undefined;
pushModels?: boolean | undefined;
pushComponents?: boolean | undefined;
pushBaseUrl?: string | undefined;
audienceUrl?: string | undefined;
authDomain?: string | undefined;
authClientId?: string | undefined;
errorFallbackComponent?: string | undefined;
applicationEnvironment?: string | undefined;
rollbarAccessToken?: string | undefined;
previewBaseUrl?: string | undefined;
modelsSrc?: string | undefined;
presetsSrc?: string | undefined;
componentsSrc?: string | undefined;
customCanvasCss?: string | undefined;
customizationFile?: string | undefined;
lifecycleHooksFile?: string | undefined;
componentLibraries?: string[] | {
name: string;
include?: string[] | undefined;
exclude?: string[] | undefined;
}[] | undefined;
viteConfig?: {
resolve?: {
alias: Record<string, string>;
} | undefined;
} | undefined;
rollupOptions?: {} | undefined;
}, {
plugins: ((...args: unknown[]) => unknown)[];
region?: "EU" | "US" | "legacy-US" | undefined;
pushModels?: boolean | undefined;
pushComponents?: boolean | undefined;
pushBaseUrl?: string | undefined;
audienceUrl?: string | undefined;
authDomain?: string | undefined;
authClientId?: string | undefined;
errorFallbackComponent?: string | undefined;
applicationEnvironment?: string | undefined;
rollbarAccessToken?: string | undefined;
previewBaseUrl?: string | undefined;
modelsSrc?: string | undefined;
presetsSrc?: string | undefined;
componentsSrc?: string | undefined;
customCanvasCss?: string | undefined;
customizationFile?: string | undefined;
lifecycleHooksFile?: string | undefined;
componentLibraries?: string[] | {
name: string;
include?: string[] | undefined;
exclude?: string[] | undefined;
}[] | undefined;
viteConfig?: {
resolve?: {
alias: Record<string, string>;
} | undefined;
} | undefined;
rollupOptions?: {} | undefined;
}>;
declare const _default: (config: EmbeddableConfig) => {
core: {
rootDir: string;
templatesDir: string;
configsDir: string;
};
client: {
rootDir: string;
srcDir: string;
modelsSrc: string | undefined;
presetsSrc: string | undefined;
buildDir: string;
tmpDir: string;
customCanvasCss: string;
webComponentRoot: string;
componentDir: string;
stencilBuild: string;
archiveFile: string;
errorFallbackComponent: string | undefined;
bundleHash: undefined;
viteConfig: {
resolve?: {
alias?: Record<string, string>;
};
};
rollupOptions: RollupOptions;
componentLibraries: string[] | ComponentLibraryConfig[];
customizationFile: string;
lifecycleHooksFile: string;
};
outputOptions: {
typesEntryPointFilename: string;
};
buildTime: undefined;
dev: {
watch: boolean;
logger: undefined;
sys: undefined;
};
region: Region;
pushModels: boolean;
pushComponents: boolean;
pushBaseUrl: string;
audienceUrl: string;
previewBaseUrl: string;
authDomain: string;
authClientId: string;
applicationEnvironment: string;
rollbarAccessToken: string;
plugins: (() => {
pluginName: string;
build: (config: ResolvedEmbeddableConfig) => Promise<unknown>;
cleanup: (config: ResolvedEmbeddableConfig) => Promise<unknown>;
validate: (config: ResolvedEmbeddableConfig) => Promise<unknown>;
buildPackage: (config: ResolvedEmbeddableConfig) => Promise<unknown>;
})[];
};
export default _default;