UNPKG

ih-portal

Version:

A project for connecting interaction hub services with catalyst-ui components

102 lines (96 loc) 4.65 kB
const webpack = require('webpack'); const ExtractTextPlugin = require('extract-text-webpack-plugin'); const config = require('./config.js'); const env = config.get('env'); var version = JSON.stringify(require("./package.json").version).replace(/"/g, ''); console.log(version); console.log(config.get('env')); const fileNoVersionTemplate = 'catalyst-[name]'; const fileVersionTemplate = 'catalyst-[name]-' + version; const jsFileTemplate = (process.env.NODE_ENV === 'production' ? fileVersionTemplate : fileNoVersionTemplate) + '.js'; const cssFileTemplate = (process.env.NODE_ENV === 'production' ? fileVersionTemplate : fileNoVersionTemplate) + '.css'; module.exports = { entry: { demo: './demo/index.jsx', portal: './src/portal.js', }, output: { libraryTarget: 'var', library: '[name]', path: process.env.NODE_ENV === 'production' ? './dist' : './build', publicPath: '/', filename: jsFileTemplate, }, resolve: { extensions: ['', '.js', '.json', '.jsx', '.less'], }, module: { loaders: [ { test: /\.(css|less)$/, loader: ExtractTextPlugin.extract('style-loader', 'css-loader!less-loader'), }, { test: /\.jsx?$/, loader: 'babel', exclude: /node_modules.(?!ih)/, loader: 'babel?cacheDirectory,presets[]=react,presets[]=es2015', }, { test: /\.html$/, loader: 'html', }, { test: /\.(pn|jpe?)g$/, loader: 'url?limit=8192', }, ], }, plugins: [ new ExtractTextPlugin(cssFileTemplate), new webpack.DefinePlugin({ '__DEV__': env === 'development', '__TEST__': env === 'test', '__PRODUCTION__': env === 'production', '__USERNAME__': JSON.stringify(config.get('username')), '__PASSWORD__': JSON.stringify(config.get('password')), '__ACADEMIC_PROFILE_URL__': JSON.stringify(config.get('getAcademicProfileUrl')), '__ACCEPTDENY_URL__': JSON.stringify(config.get('getAcceptDeclineAwardUrl')), '__ACCOUNTINQUIRY_URL__': JSON.stringify(config.get('getAccountInquiryUrl')), '__APPLICATIONS_URL__': JSON.stringify(config.get('getApplicationsUrl')), '__CHANGE_READ_STATUS_URL__': JSON.stringify(config.get('changeReadStatusUrl')), '__CHECKLIST_URL__': JSON.stringify(config.get('getChecklistUrl')), '__CLASS_SCHEDULE_URL__': JSON.stringify(config.get('getClassScheduleUrl')), '__COURSES_URL__': JSON.stringify(config.get('getCoursesUrl')), '__DEGREE_AUDIT_PAGELET_NAME__': JSON.stringify(config.get('getDegreeAuditPageletName')), '__DUE_NOW_DAYS__':JSON.stringify(config.get('getDueNowDays')), '__EVENTS_URL__': JSON.stringify(config.get('getEventsUrl')), '__FEATURE_HEADER_PHOTO__': JSON.stringify(config.get('getFeatureHeaderPhoto')), '__FEATURE_TABS__': JSON.stringify(config.get('getFeatureTabs')), '__FINANCIAL_AID_URL__': JSON.stringify(config.get('getFinancialAidUrl')), '__HOME_URL__': JSON.stringify(config.get('getHomeUrl')), '__LAUNCHER_PAGELET_NAME__': JSON.stringify(config.get('getLauncherPageletName')), '__LOGOUT_URL__': JSON.stringify(config.get('getLogoutUrl')), '__LOV_URL__': JSON.stringify(config.get('getLovUrl')), '__MAKEPAYMENT_URL__' : JSON.stringify(config.get('getMakePaymentUrl')), '__NOTIFICATIONS_URL__': JSON.stringify(config.get('getNotificationsUrl')), '__PAGELET_BUILDER_URL__': JSON.stringify(config.get('getPageletBuilderUrl')), '__PAGELET_URL__': JSON.stringify(config.get('getPageletUrl')), '__PICTURE_URL__': JSON.stringify(config.get('getPictureUrl')), '__PENDING_FINANCIAL_AID_URL__': JSON.stringify(config.get('getPendingFinancialAidUrl')), '__PROFILE_LINKS_PAGELET_NAME__': JSON.stringify(config.get('getProfileLinksPageletName')), '__PROFILE_URL__': JSON.stringify(config.get('getProfileUrl')), '__SCHEDULE_URL__': JSON.stringify(config.get('getScheduleUrl')), '__VIEW_SCHEDULE_URL__': JSON.stringify(config.get('getViewScheduleUrl')), '__SERVICE_INDICATORS_URL__': JSON.stringify(config.get('getServiceIndicatorsUrl')), '__STUDENT_ACCOUNT_URL__': JSON.stringify(config.get('getStudentAccountUrl')), '__SUBJECTS_URL__': JSON.stringify(config.get('getSubjectsUrl')), '__TERMBILL_URL__': JSON.stringify(config.get('getTermBillUrl')), '__UCID_LOOKUP_URL__': JSON.stringify(config.get('ucidLookupUrl')), '__ACTIVITY_GUIDE_URL__': JSON.stringify(config.get('getActivityGuideUrl')), }), new webpack.optimize.DedupePlugin(), ], // Adds source maps to output file // devtools: 'eval', };