/* eslint no-unused-expressions: "warn" */ import cutonfold from '@freesewing/plugin-cutonfold' import dimension from '@freesewing/plugin-dimension' import grainline from '@freesewing/plugin-grainline' import logo from '@freesewing/plugin-logo' import title from '@freesewing/plugin-title' import scalebox from '@freesewing/plugin-scalebox' import round from '@freesewing/plugin-round' import sprinkle from '@freesewing/plugin-sprinkle' import { version, name } from '../package.json' let bundle = [cutonfold, dimension, grainline, logo, title, scalebox, round, sprinkle] function bundleHooks() { let hooks = {} for (let plugin of bundle) { for (let i in plugin.hooks) { if (typeof hooks[i] === 'undefined') hooks[i] = [] let hook = plugin.hooks[i] if (typeof hook === 'function') hooks[i].push(hook) else if (typeof hook === 'object') { for (let method of hook) hooks[i].push(method) } } } return hooks } function bundleMacros() { let macros = {} for (let plugin of bundle) { for (let i in plugin.macros) macros[i] = plugin.macros[i] } return macros } export default { name: name, version: version, hooks: bundleHooks(), macros: bundleMacros() }