説明なし

path.js 1.2KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. // Copyright 2016 wkh237@github. All rights reserved.
  2. // Use of this source code is governed by a MIT-style license that can be
  3. // found in the LICENSE file.
  4. // @flow
  5. import Log from '../utils/log'
  6. const parse = require('path-parse')
  7. const log = new Log('node-path')
  8. log.level(3)
  9. log.info('polyfill loaded')
  10. const sep = '/'
  11. function basename(str:string):string {
  12. log.verbose('basename', str)
  13. return parse(str).base
  14. }
  15. function dirname(str:string):string {
  16. log.verbose('dirname', str)
  17. return parse(str).dir
  18. }
  19. function extname(str:string):string {
  20. log.verbose('extname', str)
  21. return parse(str).ext
  22. }
  23. function format(args:any):string {
  24. log.verbose('format', args)
  25. // TODO :
  26. }
  27. function isAbsolute(str:string):boolean {
  28. log.verbose('isAbsolute', str)
  29. // TODO :
  30. return true
  31. }
  32. function join(arr:Array):string {
  33. log.verbose('join', arr)
  34. // TODO : error handling and type checking
  35. return arr.join('')
  36. }
  37. function normalize(str:string):string {
  38. log.verbose('normalize', str)
  39. // TODO
  40. return str
  41. }
  42. // since nodejs modules uses es5 export by default, we should use es5 export here
  43. export {
  44. extname,
  45. dirname,
  46. basename,
  47. // TODOs
  48. normalize,
  49. }