open-vault/ui/lib/open-api-explorer/index.js
Matthew Irish d23bef606a
Actually lazy load swagger ui (#7067)
* switch to dynamic imports so that bundling doesn't include swagger-ui-dist in its vendor file

* remove ember-ajax

* delete comment

* update comment about lazy loading in the engine index.js
2019-07-05 10:28:41 -05:00

31 lines
973 B
JavaScript

/* eslint-env node */
/* eslint-disable ember/avoid-leaking-state-in-ember-objects */
'use strict';
const EngineAddon = require('ember-engines/lib/engine-addon');
module.exports = EngineAddon.extend({
name: 'open-api-explorer',
babel: {
plugins: [require.resolve('ember-auto-import/babel-plugin')],
},
included() {
this._super.included && this._super.included.apply(this, arguments);
// we want to lazy load the CSS deps, importing them here will result in them being added to the
// engine-vendor.css files that will be lazy loaded with the engine
// We DON'T want to add the JS deps here because currently that leads to their inclusion in the vendor.js
// (this is likely a bug) - to get around that we lazy-load via dynamic `import()` in the swagger-ui.js
// component
this.import('node_modules/swagger-ui-dist/swagger-ui.css');
},
lazyLoading: {
enabled: true,
},
isDevelopingAddon() {
return true;
},
});