
// Application hooks that run for every service. (Can be re-generated.)
<%- tplTsOnly(`import { HookMap, HooksObject } from '@feathersjs/feathers'${sc}${EOL}`) -%>
<%- tplImports('commonHooks', 'feathers-hooks-common', 'as') %>
<%# -%>
<%# --- forEach-1 starts below. -%>
<% _hooks.forEach(__hook => { -%>
// <%- lintDisableNextLineUnused %>
<%- tplImports(__hook.camelName, `${__hook.filePath}${__hook.fileName}`) %>
<% }) -%>
<%# --- forEach-1 ends above. -%>
<%- insertFragment('imports', [
  tplImports('log', './hooks/log'),
]) %>

<%- insertFragment('used', [
  `// ${lintDisableNextLineUnused}`,
  `const { iff } = commonHooks${sc}`
]) %>
<%- insertFragment('init') %>

<%- tplModuleExports('HooksObject') %>
  before: {
    <%- insertFragment('before', [
      '    all: [ log() ],',
      '    find: [],',
      '    get: [],',
      '    create: [],',
      '    update: [],',
      '    patch: [],',
      '    remove: []'
    ]) %>
  },

  after: {
    <%- insertFragment('after', [
      '    all: [ log() ],',
      '    find: [],',
      '    get: [],',
      '    create: [],',
      '    update: [],',
      '    patch: [],',
      '    remove: []'
    ]) %>
  },

  error: {
    <%- insertFragment('error', [
      '    all: [ log() ],',
      '    find: [],',
      '    get: [],',
      '    create: [],',
      '    update: [],',
      '    patch: [],',
      '    remove: []'
    ]) %>
  },
  <%- insertFragment('moduleExports') %>
}<%- sc %>

<%- insertFragment('exports') %>
<%- `${tplExport('moduleExports')}${sc}` %>

<%- insertFragment('funcs') %>
<%- insertFragment('end') %>
