"use strict";

Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;

var _os = require("os");

// NOTE: Don't use 'config_file' as cli option it was reserved
var _default = {
  context: 'app',
  devtool: 'hidden-cheap-source-map',
  enableChunkHash: false,
  bundleAnalyze: false,
  enableMockReplace: false,
  noPublicPath: false,
  output: 'build',
  mode: null,
  printProgress: false,
  server: {
    httpsCerts: '@zohodesk-private/client_dev_cert',
    host: (0, _os.hostname)(),
    port: 9090,
    domain: 'tsi',
    disableContextURL: false
  },
  mockServer: {
    enable: false,
    separateSeverPort: 5000,
    disableNodemon: false,
    mockEntryFile: 'mockapi/index.js',
    mockPrefix: '/api/'
  },
  css: {
    classNameOptions: {
      customizations: [{
        enable: true,
        blob: '[local]',
        patterns: ['*.plain.css']
      }, {
        enable: true,
        blob: '[prefix]-[filename]-[local]',
        patterns: []
      }],
      classNamePrefix: 'zd'
    },
    // NOTE: Suggestions
    // Name Suggestions  `customizations` this will be easier then `plugin` to understand for developers
    plugins: {
      rtlSplit: {
        enableRTLSplit: false,
        templateLabel: '{{--dir}}',
        disableMinifySelector: false,
        dirVarName: 'document.dir'
      },
      selectorWeight: {
        enable: false,
        patterns: [],
        configFile: null,
        defaultSelector: '',
        customFileDetails: '',
        excludeStrings: []
      },
      selectorReplace: {
        enable: false,
        patterns: [],
        before: [],
        after: []
      },
      hoverActive: {
        enable: false,
        patterns: [],
        hover: '(hover: hover)',
        active: '(hover: none)'
      },
      cssVariableReplacement: {
        enable: false,
        patterns: [],
        configFile: null
      },
      rtl: {
        enable: false,
        patterns: []
      } // postcss - plugins end

    },
    customPlugins: []
  },
  i18nChunkSplit: {
    chunkSplitEnable: false,
    disableDefault: false,
    templateLabel: '{{--user-locale}}',
    localeVarName: 'document.documentElement.lang',
    jsonpFunc: 'console.log',
    jsResource: null,
    propertiesFolder: null
  },
  publicFolders: ['...', {
    source: './deskapp/tp/',
    target: './tp/'
  }],
  app: {
    entryFile: 'src/index.js',
    tpFolder: null,
    moduleResolvePath: 'node_modules'
  },
  resolve: {
    preferLocalFirst: false,
    defaultAlias: true,
    moduleResolvePath: 'node_modules',
    alias: null
  },
  // EFC means Embedded Functional Components
  efc: {
    hasEFC: false,
    entryPointName: 'efc',
    entryFile: 'src/efc.js',
    version: 'v1',
    createSDkFile: false,
    templateFilePath: 'efcTemplate.js',
    outputFile: 'efc-sdk-[version].js'
  },
  enableSMap: false,
  babelCustomizations: {
    browserList: null,
    // NOTE: need to consider
    // presets: [],
    plugins: []
  },
  webpackPlugins: [],
  vendorPatterns: [],
  customChunks: [{
    name: 'styles',
    patterns: ['*.css']
  }],
  htmlTemplate: {
    templateFile: 'src/index.html',
    minify: null,
    inject: true
  },
  // CDN means Content Delivery Network
  cdnMapping: {
    isCdnEnabled: false,
    variableName: '',
    cssTemplate: '',
    jsTemplate: '',
    i18nTemplate: ''
  },
  manifestJson: {
    enable: true
  },
  changeRuntimeChunkChar: '~',
  serviceWorker: {
    enable: false,
    templateFilePath: 'sw.js',
    outputFilePath: '/v1.js',
    replaceText: '//<!--AssetsFromBuild -->'
  }
};
exports.default = _default;