Learn more  » Push, build, and install  RubyGems npm packages Python packages Maven artifacts PHP packages Go Modules Bower components Debian packages RPM packages NuGet packages

skava / @skava/composer   js

Repository URL to install this package:

Version: 1.4.0 

/ src / OverridePlugin / find.ts

import { resolveToRoot, exists } from './deps'

const pathConfig = {
  local: 'src/ui',
  reference: '../fake-default-reference-store/src/features',
  // node_modules/@skava/ui
  ui: '../../wip/ui/dist/components',
}

export function resolveIf(pkg: 'local' | 'reference' | 'ui', named: string) {
  const resolved = resolveToRoot(pathConfig[pkg]) + named
  if (exists(resolved)) {
    console.log(`[composer] found {${pkg}}: `, resolved)
    return resolved
  } else {
    return false
  }
}

const notFound = resolveToRoot(pathConfig.ui) + '/NotFound.js'
export function find(request: string) {
  const named = '/' + request.split('@si/').pop()

  return (
    resolveIf('local', named) ||
    resolveIf('reference', named) ||
    resolveIf('ui', named) ||
    notFound ||
    request
  )
}