{"version":3,"file":"ng-zorro-antd-core-config.mjs","sources":["../../components/core/config/config.ts","../../components/core/config/css-variables.ts","../../components/core/config/config.service.ts","../../components/core/config/public-api.ts","../../components/core/config/ng-zorro-antd-core-config.ts"],"sourcesContent":["/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nimport { Direction } from '@angular/cdk/bidi';\nimport { EnvironmentProviders, InjectionToken, makeEnvironmentProviders, TemplateRef, Type } from '@angular/core';\nimport { SafeUrl } from '@angular/platform-browser';\n\nimport { ThemeType } from '@ant-design/icons-angular';\n\nimport { NzBreakpointEnum } from 'ng-zorro-antd/core/services';\nimport {\n  NzSafeAny,\n  NzShapeSCType,\n  NzSizeDSType,\n  NzSizeLDSType,\n  NzSizeMDSType,\n  NzTSType,\n  NzVariant\n} from 'ng-zorro-antd/core/types';\n\ninterface MonacoEnvironment {\n  globalAPI?: boolean;\n  baseUrl?: string;\n  getWorker?(workerId: string, label: string): Promise<Worker> | Worker;\n  getWorkerUrl?(workerId: string, label: string): string;\n}\n\nexport interface NzConfig {\n  affix?: AffixConfig;\n  select?: SelectConfig;\n  alert?: AlertConfig;\n  anchor?: AnchorConfig;\n  avatar?: AvatarConfig;\n  floatButton?: FloatButtonConfig;\n  badge?: BadgeConfig;\n  button?: ButtonConfig;\n  card?: CardConfig;\n  carousel?: CarouselConfig;\n  cascader?: CascaderConfig;\n  codeEditor?: CodeEditorConfig;\n  collapse?: CollapseConfig;\n  collapsePanel?: CollapsePanelConfig;\n  datePicker?: DatePickerConfig;\n  descriptions?: DescriptionsConfig;\n  drawer?: DrawerConfig;\n  dropdown?: DropdownConfig;\n  empty?: EmptyConfig;\n  filterTrigger?: FilterTriggerConfig;\n  form?: FormConfig;\n  icon?: IconConfig;\n  message?: MessageConfig;\n  modal?: ModalConfig;\n  notification?: NotificationConfig;\n  pageHeader?: PageHeaderConfig;\n  pagination?: PaginationConfig;\n  progress?: ProgressConfig;\n  rate?: RateConfig;\n  segmented?: SegmentedConfig;\n  space?: SpaceConfig;\n  spin?: SpinConfig;\n  switch?: SwitchConfig;\n  table?: TableConfig;\n  tabs?: TabsConfig;\n  timePicker?: TimePickerConfig;\n  tree?: TreeConfig;\n  treeSelect?: TreeSelectConfig;\n  typography?: TypographyConfig;\n  image?: ImageConfig;\n  popconfirm?: PopConfirmConfig;\n  popover?: PopoverConfig;\n  imageExperimental?: ImageExperimentalConfig;\n  theme?: Theme;\n  prefixCls?: PrefixCls;\n}\n\nexport interface PrefixCls {\n  prefixCls?: string;\n  iconPrefixCls?: string;\n}\n\nexport interface Theme {\n  primaryColor?: string;\n  infoColor?: string;\n  successColor?: string;\n  processingColor?: string;\n  errorColor?: string;\n  warningColor?: string;\n  [key: string]: string | undefined;\n}\n\nexport interface SelectConfig {\n  nzVariant?: NzVariant;\n  nzSuffixIcon?: TemplateRef<NzSafeAny> | string | null;\n  nzBackdrop?: boolean;\n  nzOptionHeightPx?: number;\n}\n\nexport interface AffixConfig {\n  nzOffsetBottom?: number;\n  nzOffsetTop?: number;\n}\n\nexport interface AlertConfig {\n  nzCloseable?: boolean;\n  nzShowIcon?: boolean;\n}\n\nexport interface AvatarConfig {\n  nzShape?: NzShapeSCType;\n  nzSize?: NzSizeLDSType | number;\n  nzGap?: number;\n}\n\nexport interface AnchorConfig {\n  nzBounds?: number;\n  nzOffsetBottom?: number;\n  nzOffsetTop?: number;\n  nzShowInkInFixed?: boolean;\n}\n\nexport interface BadgeConfig {\n  nzColor?: number;\n  nzOverflowCount?: number;\n  nzShowZero?: number;\n}\n\nexport interface ButtonConfig {\n  nzSize?: 'large' | 'default' | 'small';\n}\n\nexport interface CodeEditorConfig {\n  assetsRoot?: string | SafeUrl;\n  extraConfig?: NzSafeAny;\n  defaultEditorOption?: NzSafeAny;\n  useStaticLoading?: boolean;\n  monacoEnvironment?: MonacoEnvironment;\n\n  onLoad?(): void;\n\n  onFirstEditorInit?(): void;\n\n  onInit?(): void;\n}\n\nexport interface CardConfig {\n  nzSize?: NzSizeDSType;\n  nzHoverable?: boolean;\n  nzBordered?: boolean;\n}\n\nexport interface CarouselConfig {\n  nzAutoPlay?: boolean;\n  nzAutoPlaySpeed?: boolean;\n  nzDots?: boolean;\n  nzEffect?: 'scrollx' | 'fade' | string;\n  nzEnableSwipe?: boolean;\n  nzVertical?: boolean;\n  nzLoop?: boolean;\n}\n\nexport interface CascaderConfig {\n  nzSize?: string;\n  nzBackdrop?: boolean;\n  nzVariant?: NzVariant;\n}\n\nexport interface CollapseConfig {\n  nzAccordion?: boolean;\n  nzBordered?: boolean;\n  nzGhost?: boolean;\n}\n\nexport interface CollapsePanelConfig {\n  nzShowArrow?: boolean;\n}\n\nexport interface DatePickerConfig {\n  nzSeparator?: string;\n  nzSuffixIcon?: string | TemplateRef<NzSafeAny>;\n  nzBackdrop?: boolean;\n  nzVariant?: NzVariant;\n}\n\nexport interface DescriptionsConfig {\n  nzBordered?: boolean;\n  nzColumn?: Partial<Record<NzBreakpointEnum, number>> | number;\n  nzSize?: 'default' | 'middle' | 'small';\n  nzColon?: boolean;\n}\n\nexport interface DrawerConfig {\n  nzMask?: boolean;\n  nzMaskClosable?: boolean;\n  nzCloseOnNavigation?: boolean;\n  nzDirection?: Direction;\n}\n\nexport interface DropdownConfig {\n  nzBackdrop?: boolean;\n}\n\nexport interface EmptyConfig {\n  nzDefaultEmptyContent?: Type<NzSafeAny> | TemplateRef<string> | string | undefined;\n}\n\nexport interface FilterTriggerConfig {\n  nzBackdrop?: boolean;\n}\n\nexport interface FloatButtonConfig {\n  nzVisibilityHeight?: number;\n}\n\nexport interface FormConfig {\n  nzNoColon?: boolean;\n  nzAutoTips?: Record<string, Record<string, string>>;\n  nzTooltipIcon?: string | { type: string; theme: ThemeType };\n}\n\nexport interface IconConfig {\n  nzTheme?: 'fill' | 'outline' | 'twotone';\n  nzTwotoneColor?: string;\n}\n\nexport interface MessageConfig {\n  nzAnimate?: boolean;\n  nzDuration?: number;\n  nzMaxStack?: number;\n  nzPauseOnHover?: boolean;\n  nzTop?: number | string;\n  nzDirection?: Direction;\n}\n\nexport interface ModalConfig {\n  nzMask?: boolean;\n  nzMaskClosable?: boolean;\n  nzCloseOnNavigation?: boolean;\n  nzDirection?: Direction;\n}\n\nexport interface NotificationConfig extends MessageConfig {\n  nzTop?: string | number;\n  nzBottom?: string | number;\n  nzPlacement?: 'topLeft' | 'topRight' | 'bottomLeft' | 'bottomRight' | 'top' | 'bottom';\n}\n\nexport interface PageHeaderConfig {\n  nzGhost: boolean;\n}\n\nexport interface PaginationConfig {\n  nzSize?: 'default' | 'small';\n  nzPageSizeOptions?: number[];\n  nzShowSizeChanger?: boolean;\n  nzShowQuickJumper?: boolean;\n  nzSimple?: boolean;\n}\n\nexport interface ProgressConfig {\n  nzGapDegree?: number;\n  nzGapPosition?: 'top' | 'right' | 'bottom' | 'left';\n  nzShowInfo?: boolean;\n  nzStrokeSwitch?: number;\n  nzStrokeWidth?: number;\n  nzSize?: 'default' | 'small';\n  nzStrokeLinecap?: 'round' | 'square';\n  nzStrokeColor?: string;\n}\n\nexport interface RateConfig {\n  nzAllowClear?: boolean;\n  nzAllowHalf?: boolean;\n}\n\nexport interface SegmentedConfig {\n  nzSize?: NzSizeLDSType;\n}\n\nexport interface SpaceConfig {\n  nzSize?: 'small' | 'middle' | 'large' | number | Array<'small' | 'middle' | 'large' | number>;\n}\n\nexport interface SpinConfig {\n  nzIndicator?: TemplateRef<NzSafeAny>;\n}\n\nexport interface SwitchConfig {\n  nzSize: NzSizeDSType;\n}\n\nexport interface TableConfig {\n  nzBordered?: boolean;\n  nzSize?: NzSizeMDSType;\n  nzShowQuickJumper?: boolean;\n  nzLoadingIndicator?: TemplateRef<NzSafeAny>;\n  nzShowSizeChanger?: boolean;\n  nzSimple?: boolean;\n  nzHideOnSinglePage?: boolean;\n  /**\n   * @see {@link NzTableSortOrder}\n   */\n  nzSortDirections?: Array<string | 'ascend' | 'descend' | null>;\n}\n\nexport interface TabsConfig {\n  nzAnimated?:\n    | boolean\n    | {\n        inkBar: boolean;\n        tabPane: boolean;\n      };\n  nzSize?: NzSizeLDSType;\n  nzType?: 'line' | 'card';\n  nzTabBarGutter?: number;\n  nzShowPagination?: boolean;\n}\n\nexport interface TimePickerConfig {\n  nzAllowEmpty?: boolean;\n  nzClearText?: string;\n  nzNowText?: string;\n  nzOkText?: string;\n  nzFormat?: string;\n  nzHourStep?: number;\n  nzMinuteStep?: number;\n  nzSecondStep?: number;\n  nzPopupClassName?: string;\n  nzUse12Hours?: string;\n  nzSuffixIcon?: string | TemplateRef<NzSafeAny>;\n  nzBackdrop?: boolean;\n  nzVariant?: NzVariant;\n}\n\nexport interface TreeConfig {\n  nzBlockNode?: boolean;\n  nzShowIcon?: boolean;\n  nzHideUnMatched?: boolean;\n}\n\nexport interface TreeSelectConfig {\n  nzShowIcon?: string;\n  nzShowLine?: boolean;\n  nzDropdownMatchSelectWidth?: boolean;\n  nzHideUnMatched?: boolean;\n  nzSize?: 'large' | 'small' | 'default';\n  nzBackdrop?: boolean;\n  nzVariant?: NzVariant;\n}\n\nexport interface TypographyConfig {\n  nzEllipsisRows?: number;\n  nzCopyTooltips?: [NzTSType, NzTSType] | null;\n  nzCopyIcons: [NzTSType, NzTSType];\n  nzEditTooltip?: null | NzTSType;\n  nzEditIcon: NzTSType;\n}\n\nexport interface ImageConfig {\n  nzFallback?: string;\n  nzPlaceholder?: string;\n  nzDisablePreview?: string;\n  nzCloseOnNavigation?: boolean;\n  nzDirection?: Direction;\n  nzScaleStep?: number;\n}\n\nexport interface ImageExperimentalConfig {\n  nzFallback?: string;\n  nzPlaceholder?: string;\n  nzDisablePreview?: string;\n  nzCloseOnNavigation?: boolean;\n  nzDirection?: Direction;\n  nzAutoSrcset?: boolean;\n  nzSrcLoader?(params: { src: string; width: number }): string;\n}\n\nexport interface PopConfirmConfig {\n  nzPopconfirmBackdrop?: boolean;\n  nzAutofocus?: null | 'ok' | 'cancel';\n}\n\nexport interface PopoverConfig {\n  nzPopoverBackdrop?: boolean;\n}\n\nexport type NzConfigKey = keyof NzConfig;\n\n/**\n * User should provide an object implements this interface to set global configurations.\n */\nexport const NZ_CONFIG = new InjectionToken<NzConfig>(typeof ngDevMode !== 'undefined' && ngDevMode ? 'nz-config' : '');\n\nexport function provideNzConfig(config: NzConfig): EnvironmentProviders {\n  return makeEnvironmentProviders([{ provide: NZ_CONFIG, useValue: config }]);\n}\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\n/**\n * Sync from @ant-design/colors(https://github.com/ant-design/ant-design-colors)\n */\nimport { TinyColor } from '@ctrl/tinycolor';\n\nimport { generate } from 'ng-zorro-antd/core/color';\nimport { warn } from 'ng-zorro-antd/core/logger';\nimport { canUseDom, updateCSS } from 'ng-zorro-antd/core/util';\n\nimport { Theme } from './config';\n\nconst dynamicStyleMark = `-ant-${Date.now()}-${Math.random()}`;\n\nexport function getStyle(globalPrefixCls: string, theme: Theme): string {\n  const variables: Record<string, string> = {};\n\n  const formatColor = (color: TinyColor, updater?: (cloneColor: TinyColor) => TinyColor | undefined): string => {\n    let clone = color.clone();\n    clone = updater?.(clone) || clone;\n    return clone.toRgbString();\n  };\n\n  const fillColor = (colorVal: string, type: string): void => {\n    const baseColor = new TinyColor(colorVal);\n    const colorPalettes = generate(baseColor.toRgbString());\n\n    variables[`${type}-color`] = formatColor(baseColor);\n    variables[`${type}-color-disabled`] = colorPalettes[1];\n    variables[`${type}-color-hover`] = colorPalettes[4];\n    variables[`${type}-color-active`] = colorPalettes[7];\n    variables[`${type}-color-outline`] = baseColor.clone().setAlpha(0.2).toRgbString();\n    variables[`${type}-color-deprecated-bg`] = colorPalettes[1];\n    variables[`${type}-color-deprecated-border`] = colorPalettes[3];\n  };\n\n  // ================ Primary Color ================\n  if (theme.primaryColor) {\n    fillColor(theme.primaryColor, 'primary');\n\n    const primaryColor = new TinyColor(theme.primaryColor);\n    const primaryColors = generate(primaryColor.toRgbString());\n\n    // Legacy - We should use semantic naming standard\n    primaryColors.forEach((color, index) => {\n      variables[`primary-${index + 1}`] = color;\n    });\n    // Deprecated\n    variables['primary-color-deprecated-l-35'] = formatColor(primaryColor, c => c.lighten(35));\n    variables['primary-color-deprecated-l-20'] = formatColor(primaryColor, c => c.lighten(20));\n    variables['primary-color-deprecated-t-20'] = formatColor(primaryColor, c => c.tint(20));\n    variables['primary-color-deprecated-t-50'] = formatColor(primaryColor, c => c.tint(50));\n    variables['primary-color-deprecated-f-12'] = formatColor(primaryColor, c => c.setAlpha(c.getAlpha() * 0.12));\n\n    const primaryActiveColor = new TinyColor(primaryColors[0]);\n    variables['primary-color-active-deprecated-f-30'] = formatColor(primaryActiveColor, c =>\n      c.setAlpha(c.getAlpha() * 0.3)\n    );\n    variables['primary-color-active-deprecated-d-02'] = formatColor(primaryActiveColor, c => c.darken(2));\n  }\n\n  // ================ Success Color ================\n  if (theme.successColor) {\n    fillColor(theme.successColor, 'success');\n  }\n\n  // ================ Warning Color ================\n  if (theme.warningColor) {\n    fillColor(theme.warningColor, 'warning');\n  }\n\n  // ================= Error Color =================\n  if (theme.errorColor) {\n    fillColor(theme.errorColor, 'error');\n  }\n\n  // ================= Info Color ==================\n  if (theme.infoColor) {\n    fillColor(theme.infoColor, 'info');\n  }\n\n  // Convert to css variables\n  const cssList = Object.keys(variables).map(key => `--${globalPrefixCls}-${key}: ${variables[key]};`);\n\n  return `\n  :root {\n    ${cssList.join('\\n')}\n  }\n  `.trim();\n}\n\nexport function registerTheme(globalPrefixCls: string, theme: Theme, cspNonce: string | null | undefined): void {\n  const style = getStyle(globalPrefixCls, theme);\n\n  if (canUseDom()) {\n    updateCSS(style, `${dynamicStyleMark}-dynamic-theme`, { cspNonce });\n  } else {\n    warn(`NzConfigService: SSR do not support dynamic theme with css variables.`);\n  }\n}\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nimport {\n  CSP_NONCE,\n  DestroyRef,\n  Injectable,\n  afterNextRender,\n  assertInInjectionContext,\n  inject,\n  Signal,\n  computed,\n  WritableSignal,\n  signal,\n  InputSignalWithTransform,\n  InputSignal\n} from '@angular/core';\nimport { SIGNAL } from '@angular/core/primitives/signals';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { Observable, Subject, Subscription } from 'rxjs';\nimport { filter, map } from 'rxjs/operators';\n\nimport { NZ_CONFIG, NzConfig, NzConfigKey } from './config';\nimport { registerTheme } from './css-variables';\n\nfunction isDefined<T>(value?: T): value is Exclude<T, undefined> {\n  return value !== undefined;\n}\n\nconst defaultPrefixCls = 'ant';\n\n@Injectable({\n  providedIn: 'root'\n})\nexport class NzConfigService {\n  private configUpdated$ = new Subject<keyof NzConfig>();\n\n  /**\n   * Sharing config signals for all components, used for {@link withConfigFactory}\n   * @internal\n   * @todo use nested signal to refactor the whole config service\n   */\n  private readonly _configMap = new Map<NzConfigKey, WritableSignal<NzConfig[NzConfigKey]>>();\n\n  /** Global config holding property. */\n  private readonly config: NzConfig = inject(NZ_CONFIG, { optional: true }) || {};\n\n  private readonly cspNonce: string | null = inject(CSP_NONCE, { optional: true });\n\n  constructor() {\n    if (this.config.theme) {\n      // If theme is set with NZ_CONFIG, register theme to make sure css variables work\n      registerTheme(this.getConfig().prefixCls?.prefixCls || defaultPrefixCls, this.config.theme, this.cspNonce);\n    }\n  }\n\n  private _getConfigValue<T extends NzConfigKey>(componentName: T): WritableSignal<NzConfig[T]> {\n    let configValue = this._configMap.get(componentName) as WritableSignal<NzConfig[T]>;\n    if (configValue) {\n      return configValue;\n    }\n\n    configValue = signal(this.config[componentName]);\n    this._configMap.set(componentName, configValue);\n    return configValue;\n  }\n\n  getConfig(): NzConfig {\n    return this.config;\n  }\n\n  getConfigForComponent<T extends NzConfigKey>(componentName: T): NzConfig[T] {\n    return this.config[componentName];\n  }\n\n  getConfigChangeEventForComponent(componentName: NzConfigKey): Observable<void> {\n    return this.configUpdated$.pipe(\n      filter(n => n === componentName),\n      map(() => undefined)\n    );\n  }\n\n  set<T extends NzConfigKey>(componentName: T, value: NzConfig[T]): void {\n    this.config[componentName] = { ...this.config[componentName], ...value };\n    this._configMap.get(componentName)?.set(this.config[componentName]);\n    if (componentName === 'theme' && this.config.theme) {\n      registerTheme(this.getConfig().prefixCls?.prefixCls || defaultPrefixCls, this.config.theme, this.cspNonce);\n    }\n    this.configUpdated$.next(componentName);\n  }\n}\n\n/**\n * Subscribes to configuration change events for a specific NZ component after the next render cycle.\n *\n * This utility is intended for use within Angular injection contexts and handles automatic\n * unsubscription via `DestroyRef`. It returns a cleanup function that can be manually called\n * to unsubscribe early if needed.\n *\n * @param componentName - The name of the component (as defined in `NzConfigKey`) to listen for config changes.\n * @param callback - A function to invoke when the component's configuration changes.\n * @returns A cleanup function that destroys the post-render effect and unsubscribes from the config event.\n *\n * @throws If called outside of an Angular injection context (in dev mode).\n */\nexport function onConfigChangeEventForComponent(componentName: NzConfigKey, callback: () => void): () => void {\n  if (typeof ngDevMode !== 'undefined' && ngDevMode) {\n    assertInInjectionContext(onConfigChangeEventForComponent);\n  }\n\n  const destroyRef = inject(DestroyRef);\n  const nzConfigService = inject(NzConfigService);\n  let subscription: Subscription | null = null;\n\n  const ref = afterNextRender(() => {\n    subscription = nzConfigService\n      .getConfigChangeEventForComponent(componentName)\n      .pipe(takeUntilDestroyed(destroyRef))\n      .subscribe(callback);\n  });\n\n  return () => {\n    ref.destroy();\n    subscription?.unsubscribe();\n  };\n}\n\n/**\n * This decorator is used to decorate class field. If a class field is decorated and unassigned, it would try to load default value from `NZ_CONFIG`\n *\n * @note that the class must have `_nzModuleName`({@link NzConfigKey}) property.\n * @example\n * ```ts\n * class ExampleComponent {\n *   private readonly _nzModuleName: NzConfigKey = 'button';\n *   @WithConfig() size: string = 'default';\n * }\n * ```\n */\nexport function WithConfig<This, Value>() {\n  return function (_value: undefined, context: ClassFieldDecoratorContext<This, Value>) {\n    context.addInitializer(function () {\n      const nzConfigService = inject(NzConfigService);\n      const originalValue = this[context.name as keyof This];\n\n      let value: Value;\n      let assignedByUser = false;\n\n      Object.defineProperty(this, context.name, {\n        get: () => {\n          const configValue = nzConfigService.getConfigForComponent(\n            this['_nzModuleName' as keyof This] as NzConfigKey\n          )?.[context.name as keyof NzConfig[NzConfigKey]];\n\n          if (assignedByUser) {\n            return value;\n          }\n\n          if (isDefined(configValue)) {\n            return configValue;\n          }\n\n          return originalValue;\n        },\n        set: (newValue: Value) => {\n          // if the newValue is undefined, we also consider it as not assigned by user\n          assignedByUser = isDefined(newValue);\n          value = newValue;\n        },\n        enumerable: true,\n        configurable: true\n      });\n    });\n  };\n}\n\n/**\n * Generate a `withConfig` function for a specific component, which would try to load default value from `NZ_CONFIG`\n * if the `input` property is not assigned by user.\n *\n * @param componentName The name of component (as defined in {@link NzConfigKey}) to listen for config changes.\n * @example\n * ```ts\n * const withConfig = withConfigFactory('button');\n *\n * class ExampleComponent {\n *   readonly nzSize = input<NzButtonSize>('default');\n *   protected readonly size = withConfig('nzSize', this.nzSize);\n * }\n * ```\n */\nexport function withConfigFactory<T extends NzConfigKey>(componentName: T) {\n  /**\n   * @param name The name of input property.\n   * @param inputSignal The input signal.\n   * @param defaultValue The default value.\n   */\n  return <N extends keyof NonNullable<NzConfig[T]>, V = NonNullable<NzConfig[T]>[N]>(\n    name: N,\n    inputSignal: InputSignal<V | undefined> | InputSignalWithTransform<V | undefined, unknown>,\n    defaultValue: V\n  ): Signal<V> => {\n    const configValueSignal = inject(NzConfigService)['_getConfigValue'](componentName);\n\n    return computed<V>(() => {\n      const configValue = configValueSignal()?.[name] as V | undefined;\n      const inputValue = inputSignal();\n      // if the version of the inputSignal is 0 or the inputValue is undefined, we consider it as not assigned by user\n      const assignedByUser = inputSignal[SIGNAL].version > 0 && isDefined(inputValue);\n\n      if (assignedByUser) {\n        return inputValue;\n      }\n\n      if (isDefined(configValue)) {\n        return configValue;\n      }\n\n      return defaultValue;\n    });\n  };\n}\n","/**\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE\n */\n\nexport * from './config.service';\nexport * from './config';\nexport * from './css-variables';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}