"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.getOptionskeys = void 0;
const options_configuration_1 = require("../config/options.configuration");
const strings_1 = require("@angular-devkit/core/src/utils/strings");
const getOptionskeys = (_options, context) => {
    let toInstallKeys = [];
    /// ============ add common initial ================= 
    if (_options.alreadyInstalled == false || _options.reset == true) {
        toInstallKeys.push(options_configuration_1.configuration_options['initial']);
    }
    let demoConf = options_configuration_1.configuration_options.dappDemos[_options.dappDemo];
    if (_options.contractName != _options.dappDemo) {
        demoConf.templates_src[0].target = `/app/${(0, strings_1.dasherize)(_options.contractName)}`;
    }
    toInstallKeys.push(demoConf);
    /// ============ add ons configuration ================= 
    for (const addOn of _options.addOns) {
        toInstallKeys.push(options_configuration_1.configuration_options.addOns[addOn]);
    }
    /// ============ add configuration ================= 
    if (_options.uiFramework !== 'noop') {
        toInstallKeys.push(options_configuration_1.configuration_options.uiFramework[_options.uiFramework]);
    }
    /// ============ add common configuration for demo apps ================= 
    if (_options.demoToInstall == true) {
        toInstallKeys.push(options_configuration_1.configuration_options.dappDemoCommon);
    }
    return toInstallKeys;
};
exports.getOptionskeys = getOptionskeys;
//# sourceMappingURL=getOptionsKeys.js.map