UNPKG

@viewdo/dxp-story-cli

Version:
45 lines (30 loc) 1.38 kB
const App = require('./app') module.exports = async (options, result = 0) => { const app = new App(options) app.console_service.log(`Pull Configs & Assets`.blue) if(!await app.auth_manager.requireToken()) return ['login', 'pull'] if(options.key) { app.console_service.log(`Pulling all assets for organization key ${options.key}`) await app.sync_manager.pullOrganizations([options.key]) let stories = await app.sync_manager.getOrganizationStories(options.key) app.console_service.log(`Pulling ${stories.length} story configs and assets for org ${options.key}`) await app.sync_manager.pullStories(stories.map(s => s.key)) return result } let story_keys = options.keys.length > 0 ? options.keys : options.all ? app.configuration_manager.story_keys : await app.prompt_service .selectFromKeys('Story', app.configuration_manager.story_keys, 'Pull', options.all) if(story_keys) { await app.sync_manager.pullStories(story_keys) } if(app.configuration_manager.organization_keys.length == 0) { let org_keys = app.configuration_manager.story_keys.map(story_key => { return app.configuration_manager.getStoryConfig(story_key).organizationKey }) await app.sync_manager.pullOrganizations(org_keys) } app.console_service.log(`Assets and configurations pull was successful`.green) return result }