@stencil/core 5.0.0-alpha.3 → 5.0.0-alpha.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (36) hide show
  1. package/dist/{client-CSm3x5ke.mjs → client-Dnio47yQ.mjs} +108 -19
  2. package/dist/compiler/index.d.mts +2 -2
  3. package/dist/compiler/index.mjs +2 -2
  4. package/dist/compiler/utils/index.d.mts +2 -2
  5. package/dist/compiler/utils/index.mjs +3 -3
  6. package/dist/{compiler-D6iP7Bzb.mjs → compiler-Dxri2g8Z.mjs} +14994 -14303
  7. package/dist/declarations/stencil-public-compiler.d.ts +342 -132
  8. package/dist/declarations/stencil-public-compiler.js +2 -3
  9. package/dist/declarations/stencil-public-runtime.d.ts +2 -0
  10. package/dist/{index-hS-KBdAP.d.ts → index-D-XN9HW_.d.ts} +1 -1
  11. package/dist/{index-tUR6pD3J.d.mts → index-D5zaocDq.d.mts} +411 -189
  12. package/dist/{index-CyrGY82h.d.ts → index-D61XZw0f.d.ts} +2 -2
  13. package/dist/{index-CXHCTQNt.d.mts → index-Dat4djoo.d.mts} +5 -1
  14. package/dist/index.mjs +1 -1
  15. package/dist/{jsx-runtime-DlDkTqps.d.ts → jsx-runtime-B3vQbWIW.d.ts} +1 -1
  16. package/dist/jsx-runtime.d.ts +1 -1
  17. package/dist/jsx-runtime.js +1 -1
  18. package/dist/{node-Bg-mO5dw.mjs → node-pj6rF4Wt.mjs} +66 -69
  19. package/dist/{regular-expression-D5pGVpCu.mjs → regular-expression-D0_N0PGa.mjs} +44 -26
  20. package/dist/runtime/app-data/index.d.ts +1 -1
  21. package/dist/runtime/client/index.d.ts +45 -8
  22. package/dist/runtime/client/index.js +132 -40
  23. package/dist/runtime/index.d.ts +33 -5
  24. package/dist/runtime/index.js +2 -2
  25. package/dist/runtime/server/index.d.mts +72 -28
  26. package/dist/runtime/server/index.mjs +146 -46
  27. package/dist/runtime/server/runner.d.mts +40 -26
  28. package/dist/runtime/server/runner.mjs +28 -22
  29. package/dist/{runtime-BBCnuprF.js → runtime-CKyUrF4i.js} +131 -39
  30. package/dist/sys/node/index.d.mts +1 -1
  31. package/dist/sys/node/index.mjs +1 -1
  32. package/dist/sys/node/worker.mjs +2 -2
  33. package/dist/testing/index.d.mts +2 -2
  34. package/dist/testing/index.mjs +17 -16
  35. package/dist/{validation-Byxie0Uk.mjs → validation-BA8nzXu_.mjs} +82 -58
  36. package/package.json +11 -12
@@ -176,37 +176,48 @@ declare const COPY = "copy";
176
176
  */
177
177
  declare const CUSTOM = "custom";
178
178
  /**
179
- * Constant for the 'dist' output target
179
+ * Constant for the 'loader-bundle' output target
180
+ * (formerly 'dist' in v4)
180
181
  */
181
- declare const DIST = "dist";
182
+ declare const LOADER_BUNDLE = "loader-bundle";
182
183
  /**
183
- * Constant for the 'dist-collection' output target
184
+ * Constant for the 'standalone' output target
185
+ * (formerly 'dist-custom-elements' in v4)
184
186
  */
185
- declare const DIST_COLLECTION = "dist-collection";
187
+ declare const STANDALONE = "standalone";
186
188
  /**
187
- * Constant for the 'dist-custom-elements' output target
189
+ * Constant for the 'ssr' output target
190
+ * (formerly 'dist-hydrate-script' in v4)
188
191
  */
189
- declare const DIST_CUSTOM_ELEMENTS = "dist-custom-elements";
192
+ declare const SSR = "ssr";
190
193
  /**
191
- * Constant for the 'dist-types' output target
194
+ * Constant for the 'stencil-rebundle' output target
195
+ * (formerly 'dist-collection' sub-output in v4)
196
+ *
197
+ * Contains transpiled source + metadata for downstream Stencil projects
198
+ * to re-compile/bundle.
192
199
  */
193
- declare const DIST_TYPES = "dist-types";
200
+ declare const STENCIL_REBUNDLE = "stencil-rebundle";
194
201
  /**
195
- * Constant for the 'dist-hydrate-script' output target
202
+ * Constant for the 'types' output target
203
+ * (formerly 'dist-types' sub-output in v4)
196
204
  */
197
- declare const DIST_HYDRATE_SCRIPT = "dist-hydrate-script";
205
+ declare const TYPES = "types";
198
206
  /**
199
- * Constant for the 'dist-lazy' output target
207
+ * Constant for the 'global-style' output target
208
+ * Outputs global styles to a unified location available to all distributions.
200
209
  */
201
- declare const DIST_LAZY = "dist-lazy";
210
+ declare const GLOBAL_STYLE = "global-style";
202
211
  /**
203
- * Constant for the 'dist-lazy-loader' output target
212
+ * Constant for the 'assets' output target
213
+ * Copies component assetsDirs to a unified location available to all distributions.
204
214
  */
205
- declare const DIST_LAZY_LOADER = "dist-lazy-loader";
215
+ declare const ASSETS = "assets";
206
216
  /**
207
- * Constant for the 'dist-global-styles' output target
217
+ * Internal constant for the 'dist-lazy' output target
218
+ * (used by loader-bundle and www)
208
219
  */
209
- declare const DIST_GLOBAL_STYLES = "dist-global-styles";
220
+ declare const DIST_LAZY = "dist-lazy";
210
221
  /**
211
222
  * Constant for the 'docs-custom' output target
212
223
  */
@@ -238,12 +249,12 @@ declare const WWW = "www";
238
249
  /**
239
250
  * Valid output targets to specify in a Stencil config.
240
251
  *
241
- * Note that there are some output targets (e.g. `DIST_TYPES`) which are
242
- * programmatically set as output targets by the compiler when other output
243
- * targets (in that case `DIST`) are set, but which are _not_ supported in a
244
- * Stencil config. This is enforced in the output target validation code.
252
+ * Note that some internal output targets (e.g. `DIST_LAZY`, `DIST_GLOBAL_STYLES`)
253
+ * are programmatically created by the compiler and are not user-configurable.
254
+ *
255
+ * In v5, `TYPES` and `STENCIL_REBUNDLE` are auto-generated in production builds unless explicitly configured.
245
256
  */
246
- declare const VALID_CONFIG_OUTPUT_TARGETS: readonly ["www", "dist", "dist-collection", "dist-custom-elements", "dist-lazy", "dist-hydrate-script", "docs-json", "docs-readme", "docs-vscode", "docs-custom", "docs-custom-elements-manifest", "copy", "custom", "stats"];
257
+ declare const VALID_CONFIG_OUTPUT_TARGETS: readonly ["www", "loader-bundle", "standalone", "ssr", "stencil-rebundle", "types", "global-style", "assets", "dist", "dist-custom-elements", "dist-hydrate-script", "dist-collection", "dist-types", "docs-json", "docs-readme", "docs-vscode", "docs-custom", "docs-custom-elements-manifest", "copy", "custom", "stats"];
247
258
  declare const GENERATED_DTS = "components.d.ts";
248
259
  /**
249
260
  * DOM Node types
@@ -523,7 +534,8 @@ declare const buildWarn: (diagnostics: Diagnostic$1[]) => Diagnostic$1;
523
534
  * @param jsonFilePath the path to the JSON file where the error occurred
524
535
  * @param msg the error message
525
536
  * @param jsonField the key for the field which caused the error, used for finding
526
- * the error line in the original JSON file
537
+ * the error line in the original JSON file. Only root-level keys (with minimal
538
+ * indentation, typically 2 spaces) are highlighted to avoid matching nested keys.
527
539
  * @returns a reference to the newly-created diagnostic
528
540
  */
529
541
  declare const buildJsonFileError: (compilerCtx: CompilerCtx, diagnostics: Diagnostic$1[], jsonFilePath: string, msg: string, jsonField: string) => Diagnostic$1;
@@ -577,21 +589,21 @@ declare const filterExcludedComponents: (components: ComponentCompilerMeta[], co
577
589
  declare const relativeImport: (pathFrom: string, pathTo: string, ext?: string, addPrefix?: boolean) => string;
578
590
  declare const getComponentsDtsSrcFilePath: (config: ValidatedConfig) => string;
579
591
  /**
580
- * Helper to get an appropriate file path for `components.d.ts` for a `"dist"`
581
- * or `"dist-types"` output target.
592
+ * Helper to get an appropriate file path for `components.d.ts` for an output target.
582
593
  *
583
- * @param outputTarget the output target of interest
594
+ * @param typesDir the directory where types are generated
584
595
  * @returns a properly-formatted path
585
596
  */
586
- declare const getComponentsDtsTypesFilePath: (outputTarget: Required<OutputTargetDist> | OutputTargetDistTypes) => string;
587
- declare const isOutputTargetDist: (o: OutputTarget) => o is OutputTargetDist;
588
- declare const isOutputTargetDistCollection: (o: OutputTarget) => o is OutputTargetDistCollection;
589
- declare const isOutputTargetDistCustomElements: (o: OutputTarget) => o is OutputTargetDistCustomElements;
597
+ declare const getComponentsDtsTypesFilePath: (typesDir: string) => string;
598
+ declare const isOutputTargetLoaderBundle: (o: OutputTarget) => o is OutputTargetLoaderBundle;
599
+ declare const isOutputTargetStandalone: (o: OutputTarget) => o is OutputTargetStandalone;
600
+ declare const isOutputTargetSsr: (o: OutputTarget) => o is OutputTargetSsr;
601
+ declare const isOutputTargetStencilRebundle: (o: OutputTarget) => o is OutputTargetStencilRebundle;
602
+ declare const isOutputTargetTypes: (o: OutputTarget) => o is OutputTargetTypes;
603
+ declare const isOutputTargetGlobalStyle: (o: OutputTarget) => o is OutputTargetGlobalStyle;
604
+ declare const isOutputTargetAssets: (o: OutputTarget) => o is OutputTargetAssets;
590
605
  declare const isOutputTargetCopy: (o: OutputTarget) => o is OutputTargetCopy;
591
606
  declare const isOutputTargetDistLazy: (o: OutputTarget) => o is OutputTargetDistLazy;
592
- declare const isOutputTargetDistLazyLoader: (o: OutputTarget) => o is OutputTargetDistLazyLoader;
593
- declare const isOutputTargetDistGlobalStyles: (o: OutputTarget) => o is OutputTargetDistGlobalStyles;
594
- declare const isOutputTargetHydrate: (o: OutputTarget) => o is OutputTargetHydrate;
595
607
  declare const isOutputTargetCustom: (o: OutputTarget) => o is OutputTargetCustom;
596
608
  declare const isOutputTargetDocs: (o: OutputTarget) => o is OutputTargetDocsJson | OutputTargetDocsReadme | OutputTargetDocsVscode | OutputTargetDocsCustom | OutputTargetDocsCustomElementsManifest;
597
609
  declare const isOutputTargetDocsReadme: (o: OutputTarget) => o is OutputTargetDocsReadme;
@@ -601,15 +613,6 @@ declare const isOutputTargetDocsVscode: (o: OutputTarget) => o is OutputTargetDo
601
613
  declare const isOutputTargetDocsCustomElementsManifest: (o: OutputTarget) => o is OutputTargetDocsCustomElementsManifest;
602
614
  declare const isOutputTargetWww: (o: OutputTarget) => o is OutputTargetWww;
603
615
  declare const isOutputTargetStats: (o: OutputTarget) => o is OutputTargetStats;
604
- declare const isOutputTargetDistTypes: (o: OutputTarget) => o is OutputTargetDistTypes;
605
- /**
606
- * Checks whether or not the supplied output target's type matches one of the eligible primary
607
- * package output target types (i.e. it can have `isPrimaryPackageOutputTarget: true` in its config).
608
- *
609
- * @param o The output target to check.
610
- * @returns Whether the output target type is one of the "primary" output targets.
611
- */
612
- declare const isEligiblePrimaryPackageOutputTarget: (o: OutputTarget) => o is EligiblePrimaryPackageOutputTarget;
613
616
  /**
614
617
  * Retrieve the Stencil component compiler metadata from a collection of Stencil {@link d.Module}s
615
618
  * @param moduleFiles the collection of `Module`s to retrieve the metadata from
@@ -624,6 +627,16 @@ type ValidConfigOutputTarget = (typeof VALID_CONFIG_OUTPUT_TARGETS)[number];
624
627
  * @returns whether or not the targetType is a valid, configurable output target.
625
628
  */
626
629
  declare function isValidConfigOutputTarget(targetType: string): targetType is ValidConfigOutputTarget;
630
+ /**
631
+ * Filter output targets based on devMode and their skipInDev setting.
632
+ * In dev mode, targets with `skipInDev: true` are filtered out.
633
+ * In prod mode, all targets are included.
634
+ *
635
+ * @param targets Array of output targets to filter
636
+ * @param devMode Whether we're in dev mode
637
+ * @returns Filtered array of active targets
638
+ */
639
+ declare const filterActiveTargets: <T extends OutputTarget>(targets: T[], devMode: boolean) => T[];
627
640
  //#endregion
628
641
  //#region src/utils/path.d.ts
629
642
  /**
@@ -1864,11 +1877,6 @@ interface StencilConfig {
1864
1877
  * (for example, decorating a method named `focus` with `@Method()`). Defaults to `false`.
1865
1878
  */
1866
1879
  suppressReservedPublicNameWarnings?: boolean;
1867
- /**
1868
- * When `true`, we will validate a project's `package.json` based on the output target the user has designated
1869
- * as `isPrimaryPackageOutputTarget: true` in their Stencil config.
1870
- */
1871
- validatePrimaryPackageOutputTarget?: boolean;
1872
1880
  /**
1873
1881
  * Passes custom configuration down to the "@rolldown/plugin-node-resolve" that Stencil uses under the hood.
1874
1882
  * For further information: https://stenciljs.com/docs/module-bundling
@@ -1888,13 +1896,6 @@ interface StencilConfig {
1888
1896
  * Defaults to `false` in dev mode and `true` in production mode.
1889
1897
  */
1890
1898
  minifyCss?: boolean;
1891
- /**
1892
- * Forces Stencil to run in `dev` mode if the value is `true` and `production` mode
1893
- * if it's `false`.
1894
- *
1895
- * Defaults to `false` (ie. production) unless the `--dev` flag is used in the CLI.
1896
- */
1897
- devMode?: boolean;
1898
1899
  /**
1899
1900
  * Object to provide a custom logger. By default a `logger` is already provided for the
1900
1901
  * platform the compiler is running on, such as NodeJS or a browser.
@@ -1970,14 +1971,6 @@ interface StencilConfig {
1970
1971
  after?: any[];
1971
1972
  };
1972
1973
  entryComponentsHint?: string[];
1973
- /**
1974
- * Sets whether Stencil will write files to `dist/` during the build or not.
1975
- *
1976
- * By default this value is set to the opposite value of {@link devMode},
1977
- * i.e. it will be `true` when building for production and `false` when
1978
- * building for development.
1979
- */
1980
- buildDist?: boolean;
1981
1974
  buildLogFilePath?: string;
1982
1975
  devInspector?: boolean;
1983
1976
  devServer?: StencilDevServerConfig;
@@ -2005,7 +1998,7 @@ interface StencilConfig {
2005
1998
  * An array of component tag names to exclude from production builds.
2006
1999
  * Useful to remove test, demo or experimental components from final output.
2007
2000
  *
2008
- * **Note:** Exclusion only applies to production builds (default, or when `--prod` is used).
2001
+ * **Note:** Exclusion only applies to production builds (the default).
2009
2002
  * Development builds (with `--dev` flag) will include all components to support local testing.
2010
2003
  *
2011
2004
  * Supports glob patterns for matching multiple components:
@@ -2061,20 +2054,6 @@ interface ConfigExtrasBase {
2061
2054
  * Defaults to `false`.
2062
2055
  */
2063
2056
  experimentalScopedSlotChanges?: boolean;
2064
- /**
2065
- * By default Stencil turns the stylesheet provided to `globalStyle` into a constructable stylesheet
2066
- * and adds it to each component when rendered on the client which can be useful for sharing styles
2067
- * efficiently across components.
2068
- *
2069
- * If you want Stencil to also add the `globalStyle` to each component when rendering on the server
2070
- * then set this to `true`. If your `globalStyle` sheet is large then doing this may bloat the size
2071
- * of your SSR output when using declarative-shadow-dom.
2072
- *
2073
- * Setting this to `false` will prevent Stencil from adding any `globalStyle` to each component.
2074
- *
2075
- * Defaults to `'client'`.
2076
- */
2077
- addGlobalStyleToComponents?: boolean | 'client';
2078
2057
  }
2079
2058
  type ConfigExtrasSlotFixes<ExperimentalFixesEnabled extends boolean, IndividualFlags extends boolean> = {
2080
2059
  /**
@@ -2114,7 +2093,6 @@ type ConfigExtrasSlotFixes<ExperimentalFixesEnabled extends boolean, IndividualF
2114
2093
  type ConfigExtras = ConfigExtrasBase & (ConfigExtrasSlotFixes<true, true> | ConfigExtrasSlotFixes<false, boolean>);
2115
2094
  interface Config extends StencilConfig {
2116
2095
  buildAppCore?: boolean;
2117
- buildDocs?: boolean;
2118
2096
  configPath?: string;
2119
2097
  writeLog?: boolean;
2120
2098
  devServer?: DevServerConfig;
@@ -2128,6 +2106,11 @@ interface Config extends StencilConfig {
2128
2106
  tsWatchOptions?: any;
2129
2107
  _isValidated?: boolean;
2130
2108
  _isTesting?: boolean;
2109
+ /**
2110
+ * Internal flag set when --docs CLI flag is used.
2111
+ * Forces docs output targets to build even in dev mode.
2112
+ */
2113
+ _docsFlag?: boolean;
2131
2114
  /**
2132
2115
  * Whether running in a CI environment (disables interactive features, adjusts worker count)
2133
2116
  */
@@ -2210,7 +2193,7 @@ type RequireFields<T, K extends keyof T> = T & { [P in K]-?: T[P] };
2210
2193
  /**
2211
2194
  * Fields in {@link Config} to make required for {@link ValidatedConfig}
2212
2195
  */
2213
- type StrictConfigFields = keyof Pick<Config, 'cacheDir' | 'devMode' | 'devServer' | 'extras' | 'fsNamespace' | 'hashFileNames' | 'hashedFileNameLength' | 'hydratedFlag' | 'logLevel' | 'logger' | 'minifyCss' | 'minifyJs' | 'namespace' | 'outputTargets' | 'packageJsonFilePath' | 'rolldownConfig' | 'rootDir' | 'srcDir' | 'srcIndexHtml' | 'sys' | 'transformAliasedImportPaths' | 'validatePrimaryPackageOutputTarget'>;
2196
+ type StrictConfigFields = keyof Pick<Config, 'cacheDir' | 'devServer' | 'extras' | 'fsNamespace' | 'hashFileNames' | 'hashedFileNameLength' | 'hydratedFlag' | 'logLevel' | 'logger' | 'minifyCss' | 'minifyJs' | 'namespace' | 'outputTargets' | 'packageJsonFilePath' | 'rolldownConfig' | 'rootDir' | 'srcDir' | 'srcIndexHtml' | 'sys' | 'transformAliasedImportPaths'>;
2214
2197
  /**
2215
2198
  * A version of {@link Config} that makes certain fields required. This type represents a valid configuration entity.
2216
2199
  * When a configuration is received by the user, it is a bag of unverified data. In order to make stricter guarantees
@@ -2218,6 +2201,11 @@ type StrictConfigFields = keyof Pick<Config, 'cacheDir' | 'devMode' | 'devServer
2218
2201
  * validations have occurred at runtime.
2219
2202
  */
2220
2203
  type ValidatedConfig = RequireFields<Config, StrictConfigFields> & {
2204
+ /**
2205
+ * Whether the build is running in development mode.
2206
+ * Set by the `--dev` CLI flag. Not user-configurable in `stencil.config.ts`.
2207
+ */
2208
+ devMode: boolean;
2221
2209
  sourceMap: boolean;
2222
2210
  };
2223
2211
  interface HydratedFlag {
@@ -2422,11 +2410,11 @@ interface PrerenderConfig {
2422
2410
  * Run after each `document` is hydrated, but before it is serialized
2423
2411
  * into an HTML string. Hook is passed the `document` and its `URL`.
2424
2412
  */
2425
- afterHydrate?(document: Document, url: URL, results: PrerenderUrlResults): any | Promise<any>;
2413
+ afterSsr?(document: Document, url: URL, results: PrerenderUrlResults): any | Promise<any>;
2426
2414
  /**
2427
2415
  * Run before each `document` is hydrated. Hook is passed the `document` it's `URL`.
2428
2416
  */
2429
- beforeHydrate?(document: Document, url: URL): any | Promise<any>;
2417
+ beforeSsr?(document: Document, url: URL): any | Promise<any>;
2430
2418
  /**
2431
2419
  * Runs after the template Document object has serialize into an
2432
2420
  * HTML formatted string. Returns an HTML string to be used as the
@@ -2470,9 +2458,9 @@ interface PrerenderConfig {
2470
2458
  */
2471
2459
  filePath?(url: URL, filePath: string): string;
2472
2460
  /**
2473
- * Returns the hydrate options to use for each individual prerendered page.
2461
+ * Returns the prerender options to use for each individual prerendered page.
2474
2462
  */
2475
- hydrateOptions?(url: URL): PrerenderHydrateOptions;
2463
+ prerenderOptions?(url: URL): PrerenderOptions;
2476
2464
  /**
2477
2465
  * Returns the template file's content. The template is the base
2478
2466
  * HTML used for all prerendered pages.
@@ -2496,7 +2484,7 @@ interface PrerenderConfig {
2496
2484
  */
2497
2485
  trailingSlash?: boolean;
2498
2486
  }
2499
- interface HydrateDocumentOptions {
2487
+ interface SsrDocumentOptions {
2500
2488
  /**
2501
2489
  * Build ID that will be added to `<html data-stencil-build="BUILD_ID">`. By default
2502
2490
  * a random ID will be generated
@@ -2513,7 +2501,7 @@ interface HydrateDocumentOptions {
2513
2501
  * JavaScript to read the structure of the HTML and rebuild each
2514
2502
  * component. Defaults to `true`.
2515
2503
  */
2516
- clientHydrateAnnotations?: boolean;
2504
+ clientSsrAnnotations?: boolean;
2517
2505
  /**
2518
2506
  * Constrain `setTimeout()` to 1ms, but still async. Also
2519
2507
  * only allows `setInterval()` to fire once, also constrained to 1ms.
@@ -2612,10 +2600,19 @@ interface HydrateDocumentOptions {
2612
2600
  default: 'declarative-shadow-dom' | 'scoped';
2613
2601
  } | boolean;
2614
2602
  }
2615
- interface SerializeDocumentOptions extends HydrateDocumentOptions {
2603
+ /**
2604
+ * Backwards compat for v4
2605
+ * @deprecated - use SsrDocumentOptions instead
2606
+ */
2607
+ interface HydrateDocumentOptions extends SsrDocumentOptions {}
2608
+ interface SerializeDocumentOptions extends SsrDocumentOptions {
2616
2609
  /**
2617
2610
  * Runs after the `document` has been hydrated.
2618
2611
  */
2612
+ afterSsr?(document: any): any | Promise<any>;
2613
+ /**
2614
+ * @deprecated Use `afterSsr` instead.
2615
+ */
2619
2616
  afterHydrate?(document: any): any | Promise<any>;
2620
2617
  /**
2621
2618
  * Sets an approximate line width the HTML should attempt to stay within.
@@ -2628,6 +2625,10 @@ interface SerializeDocumentOptions extends HydrateDocumentOptions {
2628
2625
  /**
2629
2626
  * Runs before the `document` has been hydrated.
2630
2627
  */
2628
+ beforeSsr?(document: any): any | Promise<any>;
2629
+ /**
2630
+ * @deprecated Use `beforeSsr` instead.
2631
+ */
2631
2632
  beforeHydrate?(document: any): any | Promise<any>;
2632
2633
  /**
2633
2634
  * Format the HTML in a nicely indented format.
@@ -2665,12 +2666,17 @@ interface SerializeDocumentOptions extends HydrateDocumentOptions {
2665
2666
  */
2666
2667
  modes?: ResolutionHandler[];
2667
2668
  }
2668
- interface HydrateFactoryOptions extends SerializeDocumentOptions {
2669
+ interface SsrFactoryOptions extends SerializeDocumentOptions {
2669
2670
  serializeToHtml: boolean;
2670
2671
  destroyWindow: boolean;
2671
2672
  destroyDocument: boolean;
2672
2673
  }
2673
- interface PrerenderHydrateOptions extends SerializeDocumentOptions {
2674
+ /**
2675
+ * Backwards compat for v4
2676
+ * @deprecated - use SsrFactoryOptions instead
2677
+ */
2678
+ interface HydrateFactoryOptions extends SsrFactoryOptions {}
2679
+ interface PrerenderOptions extends SerializeDocumentOptions {
2674
2680
  /**
2675
2681
  * Adds `<link rel="modulepreload">` for modules that will eventually be requested.
2676
2682
  * Defaults to `true`.
@@ -2705,6 +2711,11 @@ interface PrerenderHydrateOptions extends SerializeDocumentOptions {
2705
2711
  */
2706
2712
  staticDocument?: boolean;
2707
2713
  }
2714
+ /**
2715
+ * v4 backwards compat
2716
+ * @deprecated - use PrerenderOptions instead
2717
+ */
2718
+ interface PrerenderHydrateOptions extends PrerenderOptions {}
2708
2719
  interface RobotsTxtOpts {
2709
2720
  urls: string[];
2710
2721
  sitemapUrl: string;
@@ -3102,7 +3113,7 @@ interface CompilerBuildResults {
3102
3113
  hasError: boolean;
3103
3114
  hasSuccessfulBuild: boolean;
3104
3115
  hmr?: HotModuleReplacement;
3105
- hydrateAppFilePath?: string;
3116
+ ssrAppFilePath?: string;
3106
3117
  isRebuild: boolean;
3107
3118
  namespace: string;
3108
3119
  outputs: BuildOutput[];
@@ -3265,8 +3276,8 @@ interface ConfigBundle {
3265
3276
  }
3266
3277
  /**
3267
3278
  * A file and/or directory copy operation that may be specified as part of
3268
- * certain output targets for Stencil (in particular `dist`,
3269
- * `dist-custom-elements`, and `www`).
3279
+ * certain output targets for Stencil (in particular `loader-bundle`,
3280
+ * `standalone`, and `www`).
3270
3281
  */
3271
3282
  interface CopyTask {
3272
3283
  /**
@@ -3464,57 +3475,69 @@ interface LoggerTimeSpan {
3464
3475
  duration(): number;
3465
3476
  finish(finishedMsg: string, color?: string, bold?: boolean, newLineSuffix?: boolean): number;
3466
3477
  }
3467
- interface OutputTargetDist extends OutputTargetValidationConfig {
3468
- type: 'dist';
3469
- buildDir?: string;
3470
- collectionDir?: string | null;
3471
- /**
3472
- * When `true` this flag will transform aliased import paths defined in
3473
- * a project's `tsconfig.json` to relative import paths in the compiled output's
3474
- * `dist-collection` bundle if it is generated (i.e. `collectionDir` is set).
3475
- *
3476
- * Paths will be left in aliased format if `false`.
3477
- *
3478
- * @example
3479
- * // tsconfig.json
3480
- * {
3481
- * paths: {
3482
- * "@utils/*": ['/src/utils/*']
3483
- * }
3484
- * }
3485
- *
3486
- * // Source file
3487
- * import * as dateUtils from '@utils/date-utils';
3488
- * // Output file
3489
- * import * as dateUtils from '../utils/date-utils';
3490
- */
3491
- transformAliasedImportPathsInCollection?: boolean | null;
3492
- typesDir?: string;
3478
+ /**
3479
+ * Output target for generating lazy-loaded component bundles with a loader infrastructure.
3480
+ * This creates an optimized distribution for CDN usage and applications that benefit from
3481
+ * lazy-loading components on demand.
3482
+ *
3483
+ * Formerly known as 'dist' in v4.
3484
+ *
3485
+ * @example
3486
+ * ```typescript
3487
+ * {
3488
+ * type: 'loader-bundle',
3489
+ * dir: 'dist/loader-bundle'
3490
+ * }
3491
+ * ```
3492
+ */
3493
+ interface OutputTargetLoaderBundle extends OutputTargetBaseNext {
3494
+ type: 'loader-bundle';
3493
3495
  /**
3494
- * Provide a custom path for the ESM loader directory, containing files you can import
3495
- * in an initiation script within your application to register all your components for
3496
- * lazy loading.
3497
- *
3498
- * @default /dist/loader
3496
+ * Directory where lazy-loaded bundles will be written.
3497
+ * @default '' (root of output directory)
3499
3498
  */
3500
- esmLoaderPath?: string;
3499
+ buildDir?: string;
3501
3500
  copy?: CopyTask[];
3502
3501
  empty?: boolean;
3503
3502
  /**
3504
3503
  * Whether to generate CommonJS (CJS) bundles.
3505
3504
  *
3506
- * When `true`, generates CJS output in `dist/cjs/` and `dist/index.cjs.js`.
3505
+ * When `true`, generates CJS output in `cjs/` subdirectory.
3507
3506
  * When `false` (default in v5+), only ESM bundles are generated.
3508
3507
  *
3509
3508
  * @default false
3510
3509
  */
3511
3510
  cjs?: boolean;
3511
+ /**
3512
+ * Custom path for the loader directory; files you can import
3513
+ * in an initiation script within your application to register all your components for
3514
+ * lazy loading.
3515
+ *
3516
+ * @default 'loader' (relative to output directory)
3517
+ */
3518
+ loaderPath?: string;
3512
3519
  }
3513
- interface OutputTargetDistCollection extends OutputTargetValidationConfig {
3514
- type: 'dist-collection';
3520
+ /**
3521
+ * Output target for generating Stencil component source for downstream re-bundling.
3522
+ * This output contains transpiled source code, component metadata, and configuration
3523
+ * that downstream Stencil projects can re-compile and bundle.
3524
+ *
3525
+ * Formerly 'dist-collection' sub-output in v4, now a first-class output target in v5.
3526
+ *
3527
+ * In production builds, this output is auto-generated unless explicitly configured.
3528
+ *
3529
+ * @example
3530
+ * ```typescript
3531
+ * {
3532
+ * type: 'stencil-rebundle',
3533
+ * dir: 'dist/stencil-rebundle',
3534
+ * transformAliasedImportPaths: true
3535
+ * }
3536
+ * ```
3537
+ */
3538
+ interface OutputTargetStencilRebundle extends OutputTargetBaseNext {
3539
+ type: 'stencil-rebundle';
3515
3540
  empty?: boolean;
3516
- dir: string;
3517
- collectionDir: string;
3518
3541
  /**
3519
3542
  * When `true` this flag will transform aliased import paths defined in
3520
3543
  * a project's `tsconfig.json` to relative import paths in the compiled output.
@@ -3536,10 +3559,25 @@ interface OutputTargetDistCollection extends OutputTargetValidationConfig {
3536
3559
  */
3537
3560
  transformAliasedImportPaths?: boolean | null;
3538
3561
  }
3539
- interface OutputTargetDistTypes extends OutputTargetValidationConfig {
3540
- type: 'dist-types';
3541
- dir: string;
3542
- typesDir: string;
3562
+ /**
3563
+ * Output target for generating TypeScript type definitions (.d.ts files).
3564
+ *
3565
+ * Formerly a sub-output of 'dist' and 'dist-custom-elements' in v4,
3566
+ * now a first-class output target in v5 that can be shared across multiple outputs.
3567
+ *
3568
+ * In production builds, this output is auto-generated unless explicitly configured.
3569
+ *
3570
+ * @example
3571
+ * ```typescript
3572
+ * {
3573
+ * type: 'types',
3574
+ * dir: 'dist/types'
3575
+ * }
3576
+ * ```
3577
+ */
3578
+ interface OutputTargetTypes extends OutputTargetBaseNext {
3579
+ type: 'types';
3580
+ empty?: boolean;
3543
3581
  }
3544
3582
  interface OutputTargetDistLazy extends OutputTargetBase {
3545
3583
  type: 'dist-lazy';
@@ -3549,22 +3587,100 @@ interface OutputTargetDistLazy extends OutputTargetBase {
3549
3587
  isBrowserBuild?: boolean;
3550
3588
  esmIndexFile?: string;
3551
3589
  cjsIndexFile?: string;
3590
+ loaderDir?: string;
3591
+ typesDir?: string;
3552
3592
  empty?: boolean;
3553
3593
  }
3554
- interface OutputTargetDistGlobalStyles extends OutputTargetBase {
3555
- type: 'dist-global-styles';
3556
- file: string;
3594
+ /**
3595
+ * Output target for global styles.
3596
+ * Generates a CSS file from an input stylesheet.
3597
+ *
3598
+ * Can be configured in two ways:
3599
+ * 1. **Implicit** (backwards compat): Set `globalStyle` in the config and this output is auto-generated
3600
+ * 2. **Explicit**: Define this output target with an `input` property
3601
+ *
3602
+ * Multiple `global-style` outputs are supported for building separate CSS bundles.
3603
+ *
3604
+ * @example
3605
+ * ```typescript
3606
+ * // Explicit configuration with custom input/output
3607
+ * {
3608
+ * type: 'global-style',
3609
+ * input: './src/theme.css',
3610
+ * fileName: 'theme.css',
3611
+ * dir: 'dist/assets',
3612
+ * copyToLoaderBrowser: false
3613
+ * }
3614
+ * ```
3615
+ */
3616
+ interface OutputTargetGlobalStyle extends OutputTargetBaseNext {
3617
+ type: 'global-style';
3618
+ /**
3619
+ * Path to the input CSS file to compile.
3620
+ * When specified, this takes precedence over the `globalStyle` config option.
3621
+ *
3622
+ * If neither `input` nor `globalStyle` config is set, no CSS will be built.
3623
+ */
3624
+ input?: string;
3625
+ /**
3626
+ * Output filename for the compiled CSS.
3627
+ * @default '{namespace}.css' when using globalStyle config, or basename of input file
3628
+ */
3629
+ fileName?: string;
3630
+ /**
3631
+ * When `true`, also copies the global style CSS to the loader-bundle browser directory
3632
+ * for backwards compatibility with existing CDN consumers who have hardcoded CSS paths.
3633
+ *
3634
+ * @default true
3635
+ */
3636
+ copyToLoaderBrowser?: boolean;
3637
+ /**
3638
+ * Controls whether this global stylesheet is injected into component shadow DOMs
3639
+ * as a constructable stylesheet at runtime.
3640
+ *
3641
+ * - `'none'` (default): Don't inject - stylesheet must be loaded externally (e.g., via `<link>`)
3642
+ * - `'client'`: Inject only in client builds, not SSR (reduces SSR output size)
3643
+ * - `'all'`: Inject in both client and SSR builds
3644
+ *
3645
+ * @default 'none'
3646
+ */
3647
+ inject?: 'none' | 'client' | 'all';
3557
3648
  }
3558
- interface OutputTargetDistLazyLoader extends OutputTargetBase {
3559
- type: 'dist-lazy-loader';
3560
- dir: string;
3561
- esmDir: string;
3562
- cjsDir?: string;
3563
- componentDts: string;
3564
- empty: boolean;
3649
+ /**
3650
+ * Output target for component assets.
3651
+ * Copies all component `assetsDirs` to a unified location.
3652
+ *
3653
+ * auto-generated when components have `assetsDirs` unless explicitly configured.
3654
+ * The output is placed in `dist/assets/` by default and is available to all distribution strategies.
3655
+ *
3656
+ * @example
3657
+ * ```typescript
3658
+ * {
3659
+ * type: 'assets',
3660
+ * dir: 'dist/assets'
3661
+ * }
3662
+ * ```
3663
+ */
3664
+ interface OutputTargetAssets extends OutputTargetBaseNext {
3665
+ type: 'assets';
3565
3666
  }
3566
- interface OutputTargetHydrate extends OutputTargetBase {
3567
- type: 'dist-hydrate-script';
3667
+ /**
3668
+ * Output target for server-side rendering (SSR) and hydration.
3669
+ * Generates a script that can be used for SSR and static site generation (prerendering).
3670
+ *
3671
+ * Formerly known as 'dist-hydrate-script' in v4.
3672
+ *
3673
+ * @example
3674
+ * ```typescript
3675
+ * {
3676
+ * type: 'ssr',
3677
+ * dir: 'dist/ssr',
3678
+ * minify: true
3679
+ * }
3680
+ * ```
3681
+ */
3682
+ interface OutputTargetSsr extends OutputTargetBase {
3683
+ type: 'ssr';
3568
3684
  dir?: string;
3569
3685
  /**
3570
3686
  * Module IDs that should not be bundled into the script.
@@ -3685,14 +3801,13 @@ interface OutputTargetStats extends OutputTargetBase {
3685
3801
  type: 'stats';
3686
3802
  file?: string;
3687
3803
  }
3688
- interface OutputTargetBaseNext {
3689
- type: string;
3804
+ interface OutputTargetBaseNext extends OutputTargetBase {
3690
3805
  dir?: string;
3691
3806
  }
3692
3807
  /**
3693
3808
  * The collection of valid export behaviors.
3694
3809
  * Used to generate a type for typed configs as well as output target validation
3695
- * for the `dist-custom-elements` output target.
3810
+ * for the `standalone` output target.
3696
3811
  *
3697
3812
  * Adding a value to this const array will automatically add it as a valid option on the
3698
3813
  * output target configuration for `customElementsExportBehavior`.
@@ -3701,8 +3816,7 @@ interface OutputTargetBaseNext {
3701
3816
  * - `auto-define-custom-elements`: Enables the auto-definition of a component and its children (recursively) in the custom elements registry. This
3702
3817
  * functionality allows consumers to bypass the explicit call to define a component, its children, its children's
3703
3818
  * children, etc. Users of this flag should be aware that enabling this functionality may increase bundle size.
3704
- * - `bundle`: A `defineCustomElements` function will be exported from the distribution directory. This behavior was added to allow easy migration
3705
- * from `dist-custom-elements-bundle` to `dist-custom-elements`.
3819
+ * - `bundle`: A `defineCustomElements` function will be exported from the distribution directory.
3706
3820
  * - `single-export-module`: All components will be re-exported from the specified directory's root `index.js` file.
3707
3821
  */
3708
3822
  declare const CustomElementsExportBehaviorOptions: readonly ["default", "auto-define-custom-elements", "bundle", "single-export-module"];
@@ -3711,23 +3825,40 @@ declare const CustomElementsExportBehaviorOptions: readonly ["default", "auto-de
3711
3825
  * This is used on the output target config for intellisense in typed configs.
3712
3826
  */
3713
3827
  type CustomElementsExportBehavior = (typeof CustomElementsExportBehaviorOptions)[number];
3714
- interface OutputTargetDistCustomElements extends OutputTargetValidationConfig {
3715
- type: 'dist-custom-elements';
3828
+ /**
3829
+ * Output target for generating standalone component modules.
3830
+ * Each component is output as an individual ES module that can be directly imported.
3831
+ *
3832
+ * This output target is ideal for npm consumption and tree-shaking, as consumers
3833
+ * can import only the components they need.
3834
+ *
3835
+ * Formerly known as 'dist-custom-elements' in v4.
3836
+ *
3837
+ * @example
3838
+ * ```typescript
3839
+ * {
3840
+ * type: 'standalone',
3841
+ * dir: 'dist/standalone',
3842
+ * externalRuntime: true,
3843
+ * autoLoader: true
3844
+ * }
3845
+ * ```
3846
+ */
3847
+ interface OutputTargetStandalone extends OutputTargetBaseNext {
3848
+ type: 'standalone';
3716
3849
  empty?: boolean;
3717
3850
  /**
3718
3851
  * Triggers the following behaviors when enabled:
3719
3852
  * 1. All `@stencil/core/*` module references are treated as external during bundling.
3720
3853
  * 2. File names are not hashed.
3721
3854
  * 3. File minification will follow the behavior defined at the root of the Stencil config.
3855
+ *
3856
+ * @default true
3722
3857
  */
3723
3858
  externalRuntime?: boolean;
3724
3859
  copy?: CopyTask[];
3725
3860
  includeGlobalScripts?: boolean;
3726
3861
  minify?: boolean;
3727
- /**
3728
- * Enables the generation of type definition files for the output target.
3729
- */
3730
- generateTypeDeclarations?: boolean;
3731
3862
  /**
3732
3863
  * Define the export/definition behavior for the output target's generated output.
3733
3864
  * This controls if/how custom elements will be defined or where components will be exported from.
@@ -3738,6 +3869,8 @@ interface OutputTargetDistCustomElements extends OutputTargetValidationConfig {
3738
3869
  * Generate an auto-loader script that uses MutationObserver to lazily load
3739
3870
  * and define custom elements as they appear in the DOM.
3740
3871
  *
3872
+ * @default true
3873
+ *
3741
3874
  * When set to `true`, generates a `loader.js` file that auto-starts on import.
3742
3875
  * Can also be configured with an object for more control:
3743
3876
  * - `fileName`: Custom filename for the loader (default: 'loader.js')
@@ -3777,27 +3910,45 @@ interface OutputTargetBase {
3777
3910
  * A unique string to differentiate one output target from another
3778
3911
  */
3779
3912
  type: string;
3913
+ /**
3914
+ * When `true`, this output target will be skipped during development builds (`--dev`).
3915
+ * This improves dev build times by not generating production-only artifacts.
3916
+ *
3917
+ * Defaults vary by output target type:
3918
+ * - `loader-bundle`: `false` (always builds)
3919
+ * - `standalone`: `true` (skips in dev)
3920
+ * - `ssr`: `true` (skips in dev, unless `devServer.ssr` is enabled)
3921
+ * - `docs-*`: `true` (skips in dev)
3922
+ * - `custom`: `true` (skips in dev)
3923
+ * - `www`, `copy`, `stats`: `false` (always runs)
3924
+ */
3925
+ skipInDev?: boolean;
3780
3926
  }
3781
- /**
3782
- * Output targets that can have validation for common `package.json` field values
3783
- * (module, types, etc.). This allows them to be marked for validation in a project's Stencil config.
3784
- */
3785
- interface OutputTargetValidationConfig extends OutputTargetBaseNext {
3786
- isPrimaryPackageOutputTarget?: boolean;
3787
- }
3788
- type EligiblePrimaryPackageOutputTarget = OutputTargetDist | OutputTargetDistCustomElements | OutputTargetDistCollection | OutputTargetDistTypes;
3789
- type OutputTargetBuild = OutputTargetDistCollection | OutputTargetDistLazy;
3927
+ type OutputTargetBuild = OutputTargetStencilRebundle | OutputTargetDistLazy;
3790
3928
  interface OutputTargetCopy extends OutputTargetBase {
3791
3929
  type: 'copy';
3792
3930
  dir: string;
3793
3931
  copy?: CopyTask[];
3794
- copyAssets?: 'collection' | 'dist';
3795
3932
  }
3796
3933
  interface OutputTargetWww extends OutputTargetBase {
3797
3934
  /**
3798
3935
  * Webapp output target.
3799
3936
  */
3800
3937
  type: 'www';
3938
+ /**
3939
+ * Choose how components are bundled for the www output.
3940
+ *
3941
+ * - `'loader'` (default): Uses the loader-bundle architecture with chunk
3942
+ * splitting and a loader infrastructure. Best for production apps with many
3943
+ * components where you want optimal loading performance.
3944
+ *
3945
+ * - `'standalone'`: Uses standalone component modules with an auto-loader that
3946
+ * uses MutationObserver to dynamically import components as they appear in
3947
+ * the DOM. Simpler architecture, easier debugging, one module per component.
3948
+ *
3949
+ * Default: `'loader'`
3950
+ */
3951
+ bundleMode?: 'loader' | 'standalone';
3801
3952
  /**
3802
3953
  * The directory to write the app's JavaScript and CSS build
3803
3954
  * files to. The default is to place this directory as a child
@@ -3844,7 +3995,7 @@ interface OutputTargetWww extends OutputTargetBase {
3844
3995
  * Path to an external node module which has exports of the prerender config object.
3845
3996
  * ```
3846
3997
  * module.exports = {
3847
- * afterHydrate(document, url) {
3998
+ * afterSsr(document, url) {
3848
3999
  * document.title = `URL: ${url.href}`;
3849
4000
  * }
3850
4001
  * }
@@ -3860,7 +4011,7 @@ interface OutputTargetWww extends OutputTargetBase {
3860
4011
  serviceWorker?: ServiceWorkerConfig | null | false;
3861
4012
  appDir?: string;
3862
4013
  }
3863
- type OutputTarget = OutputTargetCopy | OutputTargetCustom | OutputTargetDist | OutputTargetDistCollection | OutputTargetDistCustomElements | OutputTargetDistLazy | OutputTargetDistGlobalStyles | OutputTargetDistLazyLoader | OutputTargetDocsJson | OutputTargetDocsCustom | OutputTargetDocsReadme | OutputTargetDocsVscode | OutputTargetDocsCustomElementsManifest | OutputTargetWww | OutputTargetHydrate | OutputTargetStats | OutputTargetDistTypes;
4014
+ type OutputTarget = OutputTargetCopy | OutputTargetCustom | OutputTargetLoaderBundle | OutputTargetStandalone | OutputTargetSsr | OutputTargetStencilRebundle | OutputTargetTypes | OutputTargetGlobalStyle | OutputTargetAssets | OutputTargetDistLazy | OutputTargetDocsJson | OutputTargetDocsCustom | OutputTargetDocsReadme | OutputTargetDocsVscode | OutputTargetDocsCustomElementsManifest | OutputTargetWww | OutputTargetStats;
3864
4015
  /**
3865
4016
  * Our custom configuration interface for generated caching Service Workers
3866
4017
  * using the Workbox library (see https://developer.chrome.com/docs/workbox/).
@@ -3972,7 +4123,7 @@ interface ResolveModuleOptions {
3972
4123
  }
3973
4124
  interface PrerenderStartOptions {
3974
4125
  buildId?: string;
3975
- hydrateAppFilePath?: string;
4126
+ ssrAppFilePath?: string;
3976
4127
  componentGraph?: BuildResultsComponentGraph;
3977
4128
  srcIndexHtmlPath?: string;
3978
4129
  }
@@ -4173,6 +4324,27 @@ interface TranspileOptions {
4173
4324
  * Adds `transformTag` calls to css strings and querySelector(All) calls
4174
4325
  */
4175
4326
  additionalTagTransformers?: boolean;
4327
+ /**
4328
+ * A map of virtual file paths to source text for modules that the component
4329
+ * under transpilation extends from. When provided, `transpile()` builds a
4330
+ * minimal multi-file TypeScript program from these sources so that
4331
+ * {@link https://stenciljs.com/docs/component-lifecycle inheritance chains}
4332
+ * can be resolved without requiring the parent files to exist on disk.
4333
+ *
4334
+ * Keys are the same import paths used in the component's `import` statements
4335
+ * (relative paths are resolved against `currentDirectory`). Values are the
4336
+ * TypeScript/JavaScript source text of that module.
4337
+ *
4338
+ * @example
4339
+ * ```ts
4340
+ * transpile(myComponentCode, {
4341
+ * extraFiles: {
4342
+ * './base-component.ts': baseComponentSourceText,
4343
+ * },
4344
+ * });
4345
+ * ```
4346
+ */
4347
+ extraFiles?: Record<string, string>;
4176
4348
  }
4177
4349
  type CompileTarget = 'latest' | 'esnext' | 'es2020' | 'es2019' | 'es2018' | 'es2017' | 'es2015' | string | undefined;
4178
4350
  interface TranspileResults {
@@ -4199,6 +4371,10 @@ interface TransformOptions {
4199
4371
  style: 'static' | null;
4200
4372
  styleImportData: 'queryparams' | null;
4201
4373
  target?: string;
4374
+ /**
4375
+ * @see {@link TranspileOptions.extraFiles}
4376
+ */
4377
+ extraFiles?: Record<string, string>;
4202
4378
  }
4203
4379
  interface CompileScriptMinifyOptions {
4204
4380
  target?: CompileTarget;
@@ -4357,7 +4533,6 @@ interface BuildConditionals extends Partial<BuildFeatures> {
4357
4533
  attachStyles?: boolean;
4358
4534
  experimentalSlotFixes?: boolean;
4359
4535
  experimentalScopedSlotChanges?: boolean;
4360
- addGlobalStyleToComponents?: boolean | 'client';
4361
4536
  }
4362
4537
  type ModuleFormat = 'amd' | 'cjs' | 'es' | 'iife' | 'system' | 'umd' | 'commonjs' | 'esm' | 'module' | 'systemjs';
4363
4538
  interface RolldownResultModule {
@@ -4408,7 +4583,7 @@ interface BuildCtx {
4408
4583
  hasScriptChanges: boolean;
4409
4584
  hasStyleChanges: boolean;
4410
4585
  hasWarning: boolean;
4411
- hydrateAppFilePath: string;
4586
+ ssrAppFilePath: string;
4412
4587
  indexBuildCount: number;
4413
4588
  indexDoc: Document;
4414
4589
  isRebuild: boolean;
@@ -4612,6 +4787,25 @@ interface CollectionDependencyData {
4612
4787
  name: string;
4613
4788
  tags: string[];
4614
4789
  }
4790
+ /**
4791
+ * A memoized result of the SASS + Lightning CSS transformation for a single stylesheet, keyed by
4792
+ * the annotated Rolldown import id (e.g. `/path/to/comp.scss?tag=ion-button&encapsulation=shadow`).
4793
+ *
4794
+ * Storing this allows all output targets (customElements, lazy, hydrate) that process the same
4795
+ * stylesheets to share a single computation instead of repeating it N times.
4796
+ */
4797
+ interface CssTransformCacheEntry {
4798
+ /** Resolved file ID after plugin (SASS) transforms */
4799
+ pluginTransformId: string;
4800
+ /** CSS source produced by the SASS / plugin pipeline */
4801
+ pluginTransformCode: string;
4802
+ /** File dependencies discovered during the SASS transform (e.g. `@import`-ed partials) */
4803
+ pluginTransformDependencies: string[];
4804
+ /** Diagnostics emitted during the plugin transform pass */
4805
+ pluginTransformDiagnostics: Diagnostic$1[];
4806
+ /** Full output of the subsequent `transformCssToEsm` call */
4807
+ cssTransformOutput: TransformCssToEsmOutput;
4808
+ }
4615
4809
  interface CompilerCtx {
4616
4810
  version: number;
4617
4811
  activeBuildId: number;
@@ -4624,7 +4818,8 @@ interface CompilerCtx {
4624
4818
  addWatchFile: (path: string) => void;
4625
4819
  cache: Cache;
4626
4820
  cssModuleImports: Map<string, string[]>;
4627
- cachedGlobalStyle: string;
4821
+ /** Cache of built global styles, keyed by input file path */
4822
+ globalStyleCache: Map<string, string>;
4628
4823
  collections: CollectionCompilerMeta[];
4629
4824
  compilerOptions: any;
4630
4825
  events: BuildEvents;
@@ -4638,7 +4833,7 @@ interface CompilerCtx {
4638
4833
  moduleMap: ModuleMap;
4639
4834
  nodeMap: NodeMap;
4640
4835
  resolvedCollections: Set<string>;
4641
- rolldownCacheHydrate: any;
4836
+ rolldownCacheSsr: any;
4642
4837
  rolldownCacheLazy: any;
4643
4838
  rolldownCacheNative: any;
4644
4839
  styleModeNames: Set<string>;
@@ -4646,6 +4841,32 @@ interface CompilerCtx {
4646
4841
  changedFiles: Set<string>;
4647
4842
  worker?: CompilerWorkerContext;
4648
4843
  rolldownCache: Map<string, any>;
4844
+ /**
4845
+ * Cross-build cache for {@link ts.transpileModule} results.
4846
+ * Keyed by `"${bundleId}:${normalizedFilePath}"`. Invalidated for any
4847
+ * file that appears in {@link changedModules} after TypeScript re-emits.
4848
+ * @see transpileCache in compiler-ctx.ts
4849
+ */
4850
+ transpileCache: Map<string, {
4851
+ outputText: string;
4852
+ sourceMapText: string | null;
4853
+ }>;
4854
+ /**
4855
+ * Cross-build cache of the last style text pushed to the HMR client.
4856
+ * Keyed by getScopeId result (e.g. "ion-accordion$ios"). Used by
4857
+ * extTransformsPlugin to avoid re-pushing unchanged styles on every rebuild.
4858
+ */
4859
+ prevStylesMap: Map<string, string>;
4860
+ /**
4861
+ * Cross-output-target cache for the SASS + Lightning CSS computation.
4862
+ * Keyed by the annotated Rolldown import id. Null entries indicate that the
4863
+ * source file could not be read (propagated as a `null` return from the
4864
+ * transform hook).
4865
+ *
4866
+ * Entries are invalidated in `invalidateRolldownCaches` whenever a
4867
+ * source file or one of its SASS dependencies is modified.
4868
+ */
4869
+ cssTransformCache: Map<string, CssTransformCacheEntry | null>;
4649
4870
  reset(): void;
4650
4871
  }
4651
4872
  type NodeMap = WeakMap<any, ComponentCompilerMeta>;
@@ -5206,7 +5427,7 @@ interface HostElement extends HTMLElement {
5206
5427
  ['s-p']?: Promise<void>[];
5207
5428
  componentOnReady?: () => Promise<this>;
5208
5429
  }
5209
- interface HydrateResults {
5430
+ interface SsrResults {
5210
5431
  buildId: string;
5211
5432
  diagnostics: Diagnostic$1[];
5212
5433
  url: string;
@@ -5218,42 +5439,42 @@ interface HydrateResults {
5218
5439
  search: string | null;
5219
5440
  hash: string | null;
5220
5441
  html: string | null;
5221
- components: HydrateComponent[];
5222
- anchors: HydrateAnchorElement[];
5223
- imgs: HydrateImgElement[];
5224
- scripts: HydrateScriptElement[];
5225
- styles: HydrateStyleElement[];
5226
- staticData: HydrateStaticData[];
5442
+ components: SsrComponent[];
5443
+ anchors: SsrAnchorElement[];
5444
+ imgs: SsrImgElement[];
5445
+ scripts: SsrScriptElement[];
5446
+ styles: SsrStyleElement[];
5447
+ staticData: SsrStaticData[];
5227
5448
  title: string | null;
5228
5449
  hydratedCount: number;
5229
5450
  httpStatus: number | null;
5230
5451
  }
5231
- interface HydrateComponent {
5452
+ interface SsrComponent {
5232
5453
  tag: string;
5233
5454
  mode: string;
5234
5455
  count: number;
5235
5456
  depth: number;
5236
5457
  }
5237
- interface HydrateElement {
5458
+ interface SsrElement {
5238
5459
  [attrName: string]: string | undefined;
5239
5460
  }
5240
- interface HydrateAnchorElement extends HydrateElement {
5461
+ interface SsrAnchorElement extends SsrElement {
5241
5462
  href?: string;
5242
5463
  target?: string;
5243
5464
  }
5244
- interface HydrateImgElement extends HydrateElement {
5465
+ interface SsrImgElement extends SsrElement {
5245
5466
  src?: string;
5246
5467
  }
5247
- interface HydrateScriptElement extends HydrateElement {
5468
+ interface SsrScriptElement extends SsrElement {
5248
5469
  src?: string;
5249
5470
  type?: string;
5250
5471
  }
5251
- interface HydrateStyleElement extends HydrateElement {
5472
+ interface SsrStyleElement extends SsrElement {
5252
5473
  id?: string;
5253
5474
  href?: string;
5254
5475
  content?: string;
5255
5476
  }
5256
- interface HydrateStaticData {
5477
+ interface SsrStaticData {
5257
5478
  id: string;
5258
5479
  type: string;
5259
5480
  content: string;
@@ -5378,7 +5599,7 @@ interface PrerenderUrlRequest {
5378
5599
  baseUrl: string;
5379
5600
  componentGraphPath: string;
5380
5601
  devServerHostUrl: string;
5381
- hydrateAppFilePath: string;
5602
+ ssrAppFilePath: string;
5382
5603
  isDebug: boolean;
5383
5604
  prerenderConfigPath: string;
5384
5605
  staticSite: boolean;
@@ -5391,7 +5612,7 @@ interface PrerenderManager {
5391
5612
  prerenderUrlWorker: (prerenderRequest: PrerenderUrlRequest) => Promise<PrerenderUrlResults>;
5392
5613
  devServerHostUrl: string;
5393
5614
  diagnostics: Diagnostic$1[];
5394
- hydrateAppFilePath: string;
5615
+ ssrAppFilePath: string;
5395
5616
  isDebug: boolean;
5396
5617
  logCount: number;
5397
5618
  outputTarget: OutputTargetWww;
@@ -5911,9 +6132,10 @@ interface PackageJsonData {
5911
6132
  browser?: string;
5912
6133
  module?: string;
5913
6134
  'jsnext:main'?: string;
5914
- 'collection:main'?: string;
5915
6135
  unpkg?: string;
6136
+ /** @deprecated Use `stencilRebundle` instead. Kept for reading v4 dependencies. */
5916
6137
  collection?: string;
6138
+ stencilRebundle?: string;
5917
6139
  types?: string;
5918
6140
  files?: string[];
5919
6141
  ['dist-tags']?: {
@@ -6251,4 +6473,4 @@ interface ValidateTypesResults {
6251
6473
  filePaths: string[];
6252
6474
  }
6253
6475
  //#endregion
6254
- export { ComponentCompilerVirtualProperty as $, escapeRegExpSpecialCharacters as $a, TranspileOptions as $i, CompilerEventBuildFinish as $n, dashToPascalCase as $o, LoggerLineUpdater as $r, byteSize as $s, PluginTransformResults as $t, CompilerStyleDoc as A, StyleDoc as Aa, PrerenderConfig as Ai, UpdatedLazyBuildCtx as An, isOutputTargetStats as Ao, CopyResults as Ar, DIST_GLOBAL_STYLES as As, HydrateResults as At, ComponentCompilerMeta as B, isJsFile as Ba, RolldownInputOptions as Bi, BuildNoChangeResults as Bn, hasError as Bo, FsWatchResults as Br, EVENT_FLAGS as Bs, ModuleFormat as Bt, CompilerBuildStatBundle as C, JsonDocsProp as Ca, OutputTargetDocsVscode as Ci, TransformCssToEsmInput as Cn, isOutputTargetDocs as Co, CompilerSystemRenameResults as Cr, COLLECTION_MANIFEST_FILE_NAME as Cs, ExternalStyleCompiler as Ct, CompilerJsDoc as D, JsonDocsTypeLibrary as Da, PageReloadStrategy as Di, TypesImportData as Dn, isOutputTargetDocsReadme as Do, Config as Dr, DIST as Ds, HydrateComponent as Dt, CompilerCtx as E, JsonDocsTag as Ea, OutputTargetWww as Ei, TypeInfo as En, isOutputTargetDocsJson as Eo, CompilerWatcher as Er, DEFAULT_STYLE_MODE as Es, HydrateAnchorElement as Et, ComponentCompilerData as F, createJsVarName as Fa, ResolveModuleIdResults as Fi, WorkerMsgHandler as Fn, TASK_CANCELED_MSG as Fo, DevServer as Fr, DOCS_CUSTOM as Fs, JSDocTagInfo as Ft, ComponentCompilerPropertyType as G, readOnlyArrayHasStringMember as Ga, SitemapXmpOpts as Gi, CacheStorage as Gn, splitLineBreaks as Go, HydrateFactoryOptions as Gr, MEMBER_FLAGS as Gs, NodeMap as Gt, ComponentCompilerMethodComplexType as H, isTsFile as Ha, RolldownOutputOptions as Hi, BuildOnEvents as Hn, shouldIgnoreError as Ho, HmrStyleUpdate as Hr, HOST_FLAGS as Hs, MsgFromWorker as Ht, ComponentCompilerEvent as I, generatePreamble as Ia, ResolveModuleOptions as Ii, AutoprefixerOptions as In, buildError as Io, DevServerConfig as Ir, DOCS_CUSTOM_ELEMENTS_MANIFEST as Is, JsDoc as It, ComponentCompilerStaticEvent as J, getInlineSourceMappingUrlLinker as Ja, StencilDevServerConfig as Ji, CompileTarget as Jn, loadTypeScriptDiagnostics as Jo, LazyRequire as Jr, SVG_NS as Js, ParsedImport as Jt, ComponentCompilerReferencedType as K, readPackageJson as Ka, SitemapXmpResults as Ki, CliInitOptions as Kn, augmentDiagnosticWithNode as Ko, HydratedFlag as Kr, NODE_TYPES as Ks, OptimizeJsResult as Kt, ComponentCompilerEventComplexType as L, getTextDocs as La, RobotsTxtOpts as Li, BuildEmitEvents as Ln, buildJsonFileError as Lo, DevServerEditor as Lr, DOCS_JSON as Ls, LazyBundleRuntimeData as Lt, CompilerWorkerTask as M, validateComponentTag as Ma, PrerenderResults as Mi, ValidateTypesResults as Mn, isValidConfigOutputTarget as Mo, Credentials as Mr, DIST_LAZY as Ms, HydrateStaticData as Mt, ComponentCompilerChangeHandler as N, ParsePackageJsonResult as Na, PrerenderStartOptions as Ni, Workbox as Nn, relativeImport as No, CustomElementsExportBehavior as Nr, DIST_LAZY_LOADER as Ns, HydrateStyleElement as Nt, CompilerJsDocTagInfo as O, JsonDocsUsage as Oa, ParsedPath as Oi, TypesMemberNameData as On, isOutputTargetDocsVscode as Oo, ConfigBundle as Or, DIST_COLLECTION as Os, HydrateElement as Ot, ComponentCompilerCustomState as P, addDocBlock as Pa, ResolveModuleIdOptions as Pi, WorkerContextMethod as Pn, shouldExcludeComponent as Po, CustomElementsExportBehaviorOptions as Pr, DIST_TYPES as Ps, ImportData as Pt, ComponentCompilerTypeReferences as Q, result_d_exports as Qa, TranspileOnlyResults as Qi, CompilerDependency as Qn, isGlob as Qo, Logger as Qr, XLINK_NS as Qs, PluginCtx as Qt, ComponentCompilerFeatures as R, hasDependency as Ra, RobotsTxtResults as Ri, BuildEvents as Rn, buildWarn as Ro, Diagnostic$1 as Rr, DOCS_README as Rs, LazyBundlesRuntimeData as Rt, CompilerAssetDir as S, JsonDocsPart as Sa, OutputTargetDocsReadme as Si, StyleMap as Sn, isOutputTargetDistTypes as So, CompilerSystemRemoveFileResults as Sr, CMP_FLAGS as Ss, EventInitDict as St, CompilerBuildStats as T, JsonDocsStyle as Ta, OutputTargetStats as Ti, TranspileModuleResults as Tn, isOutputTargetDocsCustomElementsManifest as To, CompilerSystemWriteFileResults as Tr, CUSTOM as Ts, HostRef as Tt, ComponentCompilerProperty as U, isTsxFile as Ua, SerializeDocumentOptions as Ui, BuildOutput as Un, escapeHtml as Uo, HotModuleReplacement as Ur, HTML_NS as Us, MsgToWorker as Ut, ComponentCompilerMethod as V, isJsxFile as Va, RolldownInterface as Vi, BuildOnEventRemove as Vn, hasWarning as Vo, HistoryApiFallback as Vr, GENERATED_DTS as Vs, ModuleMap as Vt, ComponentCompilerPropertyComplexType as W, parsePackageJson as Wa, ServiceWorkerConfig as Wi, BuildResultsComponentGraph as Wn, normalizeDiagnostics as Wo, HydrateDocumentOptions as Wr, LISTENER_FLAGS as Ws, NewSpecPageOptions as Wt, ComponentCompilerStaticProperty as X, getSourceMappingUrlLinker as Xa, SystemDetails as Xi, CompilerBuildResults as Xn, loadRolldownDiagnostics as Xo, LoadConfigResults as Xr, WATCH_FLAGS as Xs, PlatformRuntime as Xt, ComponentCompilerStaticMethod as Y, getSourceMappingUrlForEndOfFile as Ya, StencilDocsConfig as Yi, Compiler as Yn, createOnWarnFn as Yo, LoadConfigInit as Yr, VALID_CONFIG_OUTPUT_TARGETS as Ys, PatchedSlotNode as Yt, ComponentCompilerTypeReference as Z, rolldownToStencilSourceMap as Za, TransformOptions as Zi, CompilerBuildStart as Zn, isRootPath as Zo, LogLevel as Zr, WWW as Zs, Plugin as Zt, CollectionCompilerVersion as _, JsonDocsDependencyGraph as _a, OutputTargetDistLazyLoader as _i, SourceMap$1 as _n, isOutputTargetDistCollection as _o, CompilerSystemCreateDirectoryOptions as _r, toTitleCase as _s, CssImportData as _t, BuildCtx as a, WorkerOptions as aa, OptimizeJsOutput as ai, PropsType as an, normalizePath as ao, CompilerEventFileAdd as ar, isDef as as, ComponentConstructorProperties as at, CollectionDependencyManifest as b, JsonDocsMethod as ba, OutputTargetDocsCustomElementsManifest as bi, StencilDocument as bn, isOutputTargetDistLazy as bo, CompilerSystemRemoveDirectoryOptions as br, formatLazyBundleRuntimeMeta as bs, Encapsulation as bt, BuildStyleUpdate as c, RafCallback as ca, OutputTargetBaseNext as ci, RolldownChunkResult as cn, FilterComponentsResult as co, CompilerEventFsChange as cr, isNumber as cs, ComponentNativeConstructor as ct, BundleModuleOutput as d, UserBuildConditionals as da, OutputTargetCustom as di, RolldownResults as dn, getComponentsDtsTypesFilePath as do, CompilerFileWatcherCallback as dr, mergeIntoWith as ds, ComponentRuntimeMember as dt, TranspileResults as ea, LoggerTimeSpan as ei, PluginTransformationDescriptor as en, queryNonceMetaTagContent as eo, CompilerEventBuildLog as er, escapeWithPattern as es, ComponentConstructor as et, Cache as f, VNode as fa, OutputTargetDist as fi, RolldownSourceMap as fn, getComponentsFromModules as fo, CompilerFileWatcherEvent as fr, noop as fs, ComponentRuntimeMembers as ft, CollectionCompilerMeta as g, JsonDocsCustomState as ga, OutputTargetDistLazy as gi, SerializedEvent as gn, isOutputTargetDist as go, CompilerSystem as gr, toDashCase as gs, ComponentTestingConstructor as gt, CollectionCompiler as h, JsonDocsComponent as ha, OutputTargetDistGlobalStyles as hi, SerializeImportData as hn, isOutputTargetCustom as ho, CompilerRequestResponse as hr, toCamelCase as hs, ComponentRuntimeReflectingAttr as ht, BuildConditionals as i, WorkerMainController as ia, OptimizeJsInput as ii, PrintLine as in, normalizeFsPathQuery as io, CompilerEventDirDelete as ir, isComplexType as is, ComponentConstructorListener as it, CompilerWorkerContext as j, FsWriteResults as ja, PrerenderHydrateOptions as ji, VNodeProdData as jn, isOutputTargetWww as jo, CopyTask as jr, DIST_HYDRATE_SCRIPT as js, HydrateScriptElement as jt, CompilerModeStyles as k, JsonDocsValue as ka, PlatformPath as ki, TypesModule as kn, isOutputTargetHydrate as ko, ConfigExtras as kr, DIST_CUSTOM_ELEMENTS as ks, HydrateImgElement as kt, BuildTask as l, ResolutionHandler as la, OutputTargetBuild as li, RolldownResult as ln, filterExcludedComponents as lo, CompilerEventName as lr, isObject as ls, ComponentPatches as lt, CollectionBundleManifest as m, JsonDocs as ma, OutputTargetDistCustomElements as mi, RuntimeRef as mn, isOutputTargetCopy as mo, CompilerRequest as mr, sortBy as ms, ComponentRuntimeMetaCompact as mt, AssetsMeta as n, ValidatedConfig as na, OptimizeCssInput as ni, PrerenderUrlRequest as nn, normalize as no, CompilerEventBuildStart as nr, fromEntries as ns, ComponentConstructorEncapsulation as nt, BuildFeatures as o, ErrorHandler as oa, OutputTarget as oi, RenderNode as on, relative as oo, CompilerEventFileDelete as or, isFunction as os, ComponentConstructorProperty as ot, ChildType as p, JsonDocMethodParameter as pa, OutputTargetDistCollection as pi, RootAppliedStyleMap as pn, isEligiblePrimaryPackageOutputTarget as po, CompilerFsStats as pr, pluck as ps, ComponentRuntimeMeta as pt, ComponentCompilerState as q, isRemoteUrl as qa, StencilConfig as qi, CompileScriptMinifyOptions as qn, loadTypeScriptDiagnostic as qo, LOG_LEVELS as qr, STATS as qs, PackageJsonData as qt, BuildComponent as r, WatcherCloseResults as ra, OptimizeCssOutput as ri, PrerenderUrlResults as rn, normalizeFsPath as ro, CompilerEventDirAdd as rr, isBoolean as rs, ComponentConstructorEvent as rt, BuildSourceGraph as s, FunctionalComponent as sa, OutputTargetBase as si, RolldownAssetResult as sn, resolve as so, CompilerEventFileUpdate as sr, isIterable as ss, ComponentConstructorPropertyType as st, AnyHTMLElement as t, UnvalidatedConfig as ta, NodeResolveConfig as ti, PrerenderManager as tn, join as to, CompilerEventBuildNoChange as tr, flatOne as ts, ComponentConstructorChangeHandlers as tt, BundleModule as u, TagTransformer as ua, OutputTargetCopy as ui, RolldownResultModule as un, getComponentsDtsSrcFilePath as uo, CompilerFileWatcher as ur, isString as us, ComponentRuntimeHostListener as ut, CollectionComponentEntryPath as v, JsonDocsEvent as va, OutputTargetDistTypes as vi, SourceTarget as vn, isOutputTargetDistCustomElements as vo, CompilerSystemCreateDirectoryResults as vr, unique as vs, CssToEsmImportData as vt, CompilerBuildStatCollection as w, JsonDocsSlot as wa, OutputTargetHydrate as wi, TransformCssToEsmOutput as wn, isOutputTargetDocsCustom as wo, CompilerSystemRenamedPath as wr, COPY as ws, HostElement as wt, CollectionManifest as x, JsonDocsMethodReturn as xa, OutputTargetDocsJson as xi, StyleCompiler as xn, isOutputTargetDistLazyLoader as xo, CompilerSystemRemoveDirectoryResults as xr, stringifyRuntimeData as xs, EntryModule as xt, CollectionDependencyData as y, JsonDocsListener as ya, OutputTargetDocsCustom as yi, SpecPage as yn, isOutputTargetDistGlobalStyles as yo, CompilerSystemRealpathResults as yr, formatComponentRuntimeMeta as ys, DocData as yt, ComponentCompilerListener as z, isDtsFile as za, RolldownConfig as zi, BuildLog as zn, catchError as zo, EligiblePrimaryPackageOutputTarget as zr, DOCS_VSCODE as zs, Module as zt };
6476
+ export { ComponentCompilerVirtualProperty as $, getSourceMappingUrlLinker as $a, SystemDetails as $i, CompilerDependency as $n, loadRolldownDiagnostics as $o, LoggerLineUpdater as $r, WATCH_FLAGS as $s, RenderNode as $t, CompilerStyleDoc as A, JsonDocsTypeLibrary as Aa, PrerenderConfig as Ai, TypesModule as An, isOutputTargetStandalone as Ao, ConfigExtras as Ar, DEFAULT_STYLE_MODE as As, LazyBundleRuntimeData as At, ComponentCompilerMeta as B, getTextDocs as Ba, RolldownConfig as Bi, BuildLog as Bn, buildJsonFileError as Bo, FsWatchResults as Br, HOST_FLAGS as Bs, PackageJsonData as Bt, CompilerBuildStatBundle as C, JsonDocsMethod as Ca, OutputTargetStats as Ci, StyleMap as Cn, isOutputTargetDocsCustomElementsManifest as Co, CompilerSystemRemoveFileResults as Cr, formatLazyBundleRuntimeMeta as Cs, EventInitDict as Ct, CompilerJsDoc as D, JsonDocsSlot as Da, PageReloadStrategy as Di, TypeInfo as Dn, isOutputTargetGlobalStyle as Do, CompilerWatcher as Dr, COLLECTION_MANIFEST_FILE_NAME as Ds, ImportData as Dt, CompilerCtx as E, JsonDocsProp as Ea, OutputTargetWww as Ei, TranspileModuleResults as En, isOutputTargetDocsVscode as Eo, CompilerSystemWriteFileResults as Er, CMP_FLAGS as Es, HostRef as Et, ComponentCompilerData as F, validateComponentTag as Fa, ResolveModuleIdOptions as Fi, WorkerContextMethod as Fn, isValidConfigOutputTarget as Fo, CustomElementsExportBehaviorOptions as Fr, DOCS_README as Fs, MsgFromWorker as Ft, ComponentCompilerPropertyType as G, isTsFile as Ga, ServiceWorkerConfig as Gi, BuildResultsComponentGraph as Gn, shouldIgnoreError as Go, HydrateFactoryOptions as Gr, NODE_TYPES as Gs, PluginCtx as Gt, ComponentCompilerMethodComplexType as H, isDtsFile as Ha, RolldownInterface as Hi, BuildOnEventRemove as Hn, catchError as Ho, HmrStyleUpdate as Hr, LISTENER_FLAGS as Hs, PatchedSlotNode as Ht, ComponentCompilerEvent as I, ParsePackageJsonResult as Ia, ResolveModuleIdResults as Ii, WorkerMsgHandler as In, relativeImport as Io, DevServer as Ir, DOCS_VSCODE as Is, MsgToWorker as It, ComponentCompilerStaticEvent as J, readOnlyArrayHasStringMember as Ja, SsrDocumentOptions as Ji, CompileScriptMinifyOptions as Jn, splitLineBreaks as Jo, LazyRequire as Jr, STATS as Js, PrerenderManager as Jt, ComponentCompilerReferencedType as K, isTsxFile as Ka, SitemapXmpOpts as Ki, CacheStorage as Kn, escapeHtml as Ko, HydratedFlag as Kr, SSR as Ks, PluginTransformResults as Kt, ComponentCompilerEventComplexType as L, addDocBlock as La, ResolveModuleOptions as Li, AutoprefixerOptions as Ln, shouldExcludeComponent as Lo, DevServerConfig as Lr, EVENT_FLAGS as Ls, NewSpecPageOptions as Lt, CompilerWorkerTask as M, JsonDocsValue as Ma, PrerenderOptions as Mi, VNodeProdData as Mn, isOutputTargetStencilRebundle as Mo, CopyTask as Mr, DOCS_CUSTOM as Ms, Module as Mt, ComponentCompilerChangeHandler as N, StyleDoc as Na, PrerenderResults as Ni, ValidateTypesResults as Nn, isOutputTargetTypes as No, Credentials as Nr, DOCS_CUSTOM_ELEMENTS_MANIFEST as Ns, ModuleFormat as Nt, CompilerJsDocTagInfo as O, JsonDocsStyle as Oa, ParsedPath as Oi, TypesImportData as On, isOutputTargetLoaderBundle as Oo, Config as Or, COPY as Os, JSDocTagInfo as Ot, ComponentCompilerCustomState as P, FsWriteResults as Pa, PrerenderStartOptions as Pi, Workbox as Pn, isOutputTargetWww as Po, CustomElementsExportBehavior as Pr, DOCS_JSON as Ps, ModuleMap as Pt, ComponentCompilerTypeReferences as Q, getSourceMappingUrlForEndOfFile as Qa, StencilDocsConfig as Qi, CompilerBuildStart as Qn, createOnWarnFn as Qo, Logger as Qr, VALID_CONFIG_OUTPUT_TARGETS as Qs, PropsType as Qt, ComponentCompilerFeatures as R, createJsVarName as Ra, RobotsTxtOpts as Ri, BuildEmitEvents as Rn, TASK_CANCELED_MSG as Ro, DevServerEditor as Rr, GENERATED_DTS as Rs, NodeMap as Rt, CompilerAssetDir as S, JsonDocsListener as Sa, OutputTargetStandalone as Si, StyleCompiler as Sn, isOutputTargetDocsCustom as So, CompilerSystemRemoveDirectoryResults as Sr, formatComponentRuntimeMeta as Ss, EntryModule as St, CompilerBuildStats as T, JsonDocsPart as Ta, OutputTargetTypes as Ti, TransformCssToEsmOutput as Tn, isOutputTargetDocsReadme as To, CompilerSystemRenamedPath as Tr, ASSETS as Ts, HostElement as Tt, ComponentCompilerProperty as U, isJsFile as Ua, RolldownOutputOptions as Ui, BuildOnEvents as Un, hasError as Uo, HotModuleReplacement as Ur, LOADER_BUNDLE as Us, PlatformRuntime as Ut, ComponentCompilerMethod as V, hasDependency as Va, RolldownInputOptions as Vi, BuildNoChangeResults as Vn, buildWarn as Vo, HistoryApiFallback as Vr, HTML_NS as Vs, ParsedImport as Vt, ComponentCompilerPropertyComplexType as W, isJsxFile as Wa, SerializeDocumentOptions as Wi, BuildOutput as Wn, hasWarning as Wo, HydrateDocumentOptions as Wr, MEMBER_FLAGS as Ws, Plugin as Wt, ComponentCompilerStaticProperty as X, isRemoteUrl as Xa, StencilConfig as Xi, Compiler as Xn, loadTypeScriptDiagnostic as Xo, LoadConfigResults as Xr, SVG_NS as Xs, PrerenderUrlResults as Xt, ComponentCompilerStaticMethod as Y, readPackageJson as Ya, SsrFactoryOptions as Yi, CompileTarget as Yn, augmentDiagnosticWithNode as Yo, LoadConfigInit as Yr, STENCIL_REBUNDLE as Ys, PrerenderUrlRequest as Yt, ComponentCompilerTypeReference as Z, getInlineSourceMappingUrlLinker as Za, StencilDevServerConfig as Zi, CompilerBuildResults as Zn, loadTypeScriptDiagnostics as Zo, LogLevel as Zr, TYPES as Zs, PrintLine as Zt, CollectionCompilerVersion as _, JsonDocs as _a, OutputTargetDocsReadme as _i, SsrResults as _n, isOutputTargetAssets as _o, CompilerSystem as _r, sortBy as _s, CssImportData as _t, BuildCtx as a, ValidatedConfig as aa, OptimizeJsOutput as ai, RolldownSourceMap as an, normalize as ao, CompilerEventDirDelete as ar, fromEntries as as, ComponentConstructorProperties as at, CollectionDependencyManifest as b, JsonDocsDependencyGraph as ba, OutputTargetLoaderBundle as bi, SsrStyleElement as bn, isOutputTargetDistLazy as bo, CompilerSystemRealpathResults as br, toTitleCase as bs, DocData as bt, BuildStyleUpdate as c, WorkerOptions as ca, OutputTargetBase as ci, SerializeImportData as cn, normalizePath as co, CompilerEventFileUpdate as cr, isDef as cs, ComponentNativeConstructor as ct, BundleModuleOutput as d, RafCallback as da, OutputTargetCopy as di, SourceTarget as dn, FilterComponentsResult as do, CompilerFileWatcher as dr, isNumber as ds, ComponentRuntimeMember as dt, TransformOptions as ea, WWW as ec, LoggerTimeSpan as ei, RolldownAssetResult as en, rolldownToStencilSourceMap as eo, CompilerEventBuildFinish as er, isRootPath as es, ComponentConstructor as et, Cache as f, ResolutionHandler as fa, OutputTargetCustom as fi, SpecPage as fn, filterActiveTargets as fo, CompilerFileWatcherCallback as fr, isObject as fs, ComponentRuntimeMembers as ft, CollectionCompilerMeta as g, JsonDocMethodParameter as ga, OutputTargetDocsJson as gi, SsrImgElement as gn, getComponentsFromModules as go, CompilerRequestResponse as gr, pluck as gs, ComponentTestingConstructor as gt, CollectionCompiler as h, VNode as ha, OutputTargetDocsCustomElementsManifest as hi, SsrElement as hn, getComponentsDtsTypesFilePath as ho, CompilerRequest as hr, noop as hs, ComponentRuntimeReflectingAttr as ht, BuildConditionals as i, UnvalidatedConfig as ia, OptimizeJsInput as ii, RolldownResults as in, join as io, CompilerEventDirAdd as ir, flatOne as is, ComponentConstructorListener as it, CompilerWorkerContext as j, JsonDocsUsage as ja, PrerenderHydrateOptions as ji, UpdatedLazyBuildCtx as jn, isOutputTargetStats as jo, CopyResults as jr, DIST_LAZY as js, LazyBundlesRuntimeData as jt, CompilerModeStyles as k, JsonDocsTag as ka, PlatformPath as ki, TypesMemberNameData as kn, isOutputTargetSsr as ko, ConfigBundle as kr, CUSTOM as ks, JsDoc as kt, BuildTask as l, ErrorHandler as la, OutputTargetBaseNext as li, SerializedEvent as ln, relative as lo, CompilerEventFsChange as lr, isFunction as ls, ComponentPatches as lt, CollectionBundleManifest as m, UserBuildConditionals as ma, OutputTargetDocsCustom as mi, SsrComponent as mn, getComponentsDtsSrcFilePath as mo, CompilerFsStats as mr, mergeIntoWith as ms, ComponentRuntimeMetaCompact as mt, AssetsMeta as n, TranspileOptions as na, byteSize as nc, OptimizeCssInput as ni, RolldownResult as nn, escapeRegExpSpecialCharacters as no, CompilerEventBuildNoChange as nr, dashToPascalCase as ns, ComponentConstructorEncapsulation as nt, BuildFeatures as o, WatcherCloseResults as oa, OutputTarget as oi, RootAppliedStyleMap as on, normalizeFsPath as oo, CompilerEventFileAdd as or, isBoolean as os, ComponentConstructorProperty as ot, ChildType as p, TagTransformer as pa, OutputTargetDistLazy as pi, SsrAnchorElement as pn, filterExcludedComponents as po, CompilerFileWatcherEvent as pr, isString as ps, ComponentRuntimeMeta as pt, ComponentCompilerState as q, parsePackageJson as qa, SitemapXmpResults as qi, CliInitOptions as qn, normalizeDiagnostics as qo, LOG_LEVELS as qr, STANDALONE as qs, PluginTransformationDescriptor as qt, BuildComponent as r, TranspileResults as ra, OptimizeCssOutput as ri, RolldownResultModule as rn, queryNonceMetaTagContent as ro, CompilerEventBuildStart as rr, escapeWithPattern as rs, ComponentConstructorEvent as rt, BuildSourceGraph as s, WorkerMainController as sa, OutputTargetAssets as si, RuntimeRef as sn, normalizeFsPathQuery as so, CompilerEventFileDelete as sr, isComplexType as ss, ComponentConstructorPropertyType as st, AnyHTMLElement as t, TranspileOnlyResults as ta, XLINK_NS as tc, NodeResolveConfig as ti, RolldownChunkResult as tn, result_d_exports as to, CompilerEventBuildLog as tr, isGlob as ts, ComponentConstructorChangeHandlers as tt, BundleModule as u, FunctionalComponent as ua, OutputTargetBuild as ui, SourceMap$1 as un, resolve as uo, CompilerEventName as ur, isIterable as us, ComponentRuntimeHostListener as ut, CollectionComponentEntryPath as v, JsonDocsComponent as va, OutputTargetDocsVscode as vi, SsrScriptElement as vn, isOutputTargetCopy as vo, CompilerSystemCreateDirectoryOptions as vr, toCamelCase as vs, CssToEsmImportData as vt, CompilerBuildStatCollection as w, JsonDocsMethodReturn as wa, OutputTargetStencilRebundle as wi, TransformCssToEsmInput as wn, isOutputTargetDocsJson as wo, CompilerSystemRenameResults as wr, stringifyRuntimeData as ws, ExternalStyleCompiler as wt, CollectionManifest as x, JsonDocsEvent as xa, OutputTargetSsr as xi, StencilDocument as xn, isOutputTargetDocs as xo, CompilerSystemRemoveDirectoryOptions as xr, unique as xs, Encapsulation as xt, CollectionDependencyData as y, JsonDocsCustomState as ya, OutputTargetGlobalStyle as yi, SsrStaticData as yn, isOutputTargetCustom as yo, CompilerSystemCreateDirectoryResults as yr, toDashCase as ys, CssTransformCacheEntry as yt, ComponentCompilerListener as z, generatePreamble as za, RobotsTxtResults as zi, BuildEvents as zn, buildError as zo, Diagnostic$1 as zr, GLOBAL_STYLE as zs, OptimizeJsResult as zt };