| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273 | var path = require('path')var HtmlWebpackPlugin = require('html-webpack-plugin')var webpack = require('webpack')module.exports = {    entry: {        opensheetmusicdisplay: './src/index.ts', // Main index (OpenSheetMusicDisplay and other classes)        demo: './demo/index.js' // Demo index    },    output: {        path: path.resolve(__dirname, 'build'),        filename: '[name].js',        library: 'opensheetmusicdisplay',        libraryTarget: 'umd',        globalObject: 'this'    },    resolve: {        alias: {            handlebars: 'handlebars/dist/handlebars.min.js'        },        // Add '.ts' and '.tsx' as a resolvable extension.        extensions: ['.ts', '.tsx', '.js'],    },    module: {        rules: [            // all files with a '.ts' or '.tsx' extension will be handled by 'ts-loader'            {                test: /\.ts$/,                loader: 'ts-loader',                // loader: 'awesome-typescript-loader',                exclude: /(node_modules|bower_components)/            },            // all html files will be handled by html-loader            {                test: /\.html$/i,                loader: 'html-loader',                exclude: /(node_modules|bower_components|demo|build|bin)/            },            {                test: /\.json5$/i,                loader: 'json5-loader',                type: 'javascript/auto',                exclude: /(node_modules|bower_components|demo|build|bin)/            }        ]    },    plugins: [        new webpack.ProvidePlugin({            $: 'jquery',            jQuery: 'jquery'        }),        new webpack.EnvironmentPlugin({            STATIC_FILES_SUBFOLDER: false, // Set to other directory if NOT using webpack-dev-server            DEBUG: false,            DRAW_BOUNDING_BOX_ELEMENT: false //  Specifies the element to draw bounding boxes for (e.g. 'GraphicalLabels'). If 'all', bounding boxes are drawn for all elements.        }),        // add a demo page to the build folder        new HtmlWebpackPlugin({            template: 'demo/index.html',            favicon: 'demo/favicon.ico',            title: 'OpenSheetMusicDisplay Demo'        })    ],    devServer: {        static: [            path.join(__dirname, 'test/data'),            path.join(__dirname, 'build'),            path.join(__dirname, 'demo')        ],        port: 8000,        compress: false    }}
 |