45 lines
1.9 KiB
JavaScript
45 lines
1.9 KiB
JavaScript
#!/usr/bin/env node
|
|
|
|
// (C) Copyright 2015 Moodle Pty Ltd.
|
|
//
|
|
// Licensed under the Apache License, Version 2.0 (the "License");
|
|
// you may not use this file except in compliance with the License.
|
|
// You may obtain a copy of the License at
|
|
//
|
|
// http://www.apache.org/licenses/LICENSE-2.0
|
|
//
|
|
// Unless required by applicable law or agreed to in writing, software
|
|
// distributed under the License is distributed on an "AS IS" BASIS,
|
|
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
// See the License for the specific language governing permissions and
|
|
// limitations under the License.
|
|
|
|
// This script makes sure that javascript assets are kept up to date during development,
|
|
// otherwise it would be necessary to reinstall the plugin every time anything changes.
|
|
|
|
const { readFileSync, writeFileSync, existsSync } = require('fs');
|
|
const { resolve } = require('path');
|
|
|
|
const bundle = readFileSync(resolve(__dirname, '../www/index.js')).toString();
|
|
const template = readFileSync(resolve(__dirname, './templates/cordova-plugin.js')).toString();
|
|
const pluginsPath = resolve(__dirname, '../../plugins/');
|
|
const platformsPath = resolve(__dirname, '../../platforms/');
|
|
const filePaths = [
|
|
resolve(pluginsPath, 'cordova-plugin-moodleapp/www/index.js'),
|
|
resolve(platformsPath, 'android/app/src/main/assets/www/plugins/cordova-plugin-moodleapp/www/index.js'),
|
|
resolve(platformsPath, 'android/platform_www/plugins/cordova-plugin-moodleapp/www/index.js'),
|
|
resolve(platformsPath, 'ios/platform_www/plugins/cordova-plugin-moodleapp/www/index.js'),
|
|
resolve(platformsPath, 'ios/www/plugins/cordova-plugin-moodleapp/www/index.js'),
|
|
];
|
|
const pluginIndex = template
|
|
.replace('[[PLUGIN_NAME]]', 'cordova-plugin-moodleapp.moodleapp')
|
|
.replace('[[PLUGIN_CONTENTS]]', bundle);
|
|
|
|
for (const filePath of filePaths) {
|
|
if (!existsSync(filePath)) {
|
|
continue;
|
|
}
|
|
|
|
writeFileSync(filePath, pluginIndex);
|
|
}
|