1/* 2 * Copyright (c) 2023 Huawei Device Co., Ltd. 3 * Licensed under the Apache License, Version 2.0 (the "License"); 4 * you may not use this file except in compliance with the License. 5 * You may obtain a copy of the License at 6 * 7 * http://www.apache.org/licenses/LICENSE-2.0 8 * 9 * Unless required by applicable law or agreed to in writing, software 10 * distributed under the License is distributed on an "AS IS" BASIS, 11 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 * See the License for the specific language governing permissions and 13 * limitations under the License. 14 */ 15 16const { initConfig } = require('./lib/fast_build/common/init_config'); 17const { getCleanConfig } = require('./main'); 18const { etsTransform, createProgramPlugin } = require('./lib/fast_build/ets_ui/rollup-plugin-ets-typescript'); 19const { etsChecker } = require('./lib/fast_build/ets_ui/rollup-plugin-ets-checker'); 20const { apiTransform } = require('./lib/fast_build/system_api/rollup-plugin-system-api'); 21const { genAbc } = require('./lib/fast_build/ark_compiler/rollup-plugin-gen-abc'); 22const { watchChangeFiles } = require('./lib/fast_build/common/rollup-plugin-watch-change'); 23const { visualTransform } = require('./lib/fast_build/visual/rollup-plugin-visual'); 24const { terserPlugin } = require('./lib/fast_build/ark_compiler/terser-plugin'); 25const { babelPlugin } = require('./lib/fast_build/ark_compiler/babel-plugin'); 26const { JSBUNDLE, RELEASE } = require('./lib/fast_build/ark_compiler/common/ark_define'); 27const { generateConsumerObConfigFile } = require('./lib/fast_build/ark_compiler/common/ob_config_resolver'); 28const { etsStandaloneChecker } = require('./lib/ets_checker'); 29const { memoryMonitor } = require('./lib/fast_build/meomry_monitor/rollup-plugin-memory-monitor'); 30 31exports.initConfig = initConfig; 32exports.getCleanConfig = getCleanConfig; 33exports.generateConsumerObConfigFile = generateConsumerObConfigFile; 34exports.etsStandaloneChecker = etsStandaloneChecker; 35 36// list of functional plugins 37exports.sdkPlugins = (projectConfig) => { 38 return [ 39 memoryMonitor(), 40 watchChangeFiles(), 41 etsChecker(), 42 visualTransform(), 43 etsTransform(), 44 apiTransform(), 45 genAbc(), 46 projectConfig.buildMode?.toLowerCase() === RELEASE && terserPlugin(), 47 projectConfig.compileMode === JSBUNDLE && babelPlugin(projectConfig), 48 createProgramPlugin() 49 ]; 50}; 51exports.sdkPluginsMap = { 52 'memoryMonitor': 0, 53 'watchChangeFiles': 1, 54 'etsChecker': 2, 55 'visualTransform': 3, 56 'etsTransform': 4, 57 'apiTransform': 5, 58 'genAbc': 6, 59 'terserPlugin': 7, 60 'babelPlugin': 8, 61 'createProgramPlugin': 9 62}; 63 64exports.resolveFileExtensions = []; 65