Skip to content

Commit

Permalink
refactor: change preparse-postformat to require importing localedata …
Browse files Browse the repository at this point in the history
…explicitly
  • Loading branch information
VehpuS committed Jan 1, 2021
1 parent a5b9200 commit e565267
Show file tree
Hide file tree
Showing 3 changed files with 7 additions and 9 deletions.
12 changes: 3 additions & 9 deletions src/plugin/preParsePostFormat/index.js
Original file line number Diff line number Diff line change
@@ -1,11 +1,5 @@
import localeData from '../localeData'

// Plugin template from https://day.js.org/docs/en/plugin/plugin
export default (option, dayjsClass, dayjsFactory) => {
// This plugin depends on other plugins - so I will import them here
// equivalent to dayjsClass.extend(duration)
localeData(option, dayjsClass, dayjsFactory)

export default (option, dayjsClass) => {
const oldParse = dayjsClass.prototype.parse
dayjsClass.prototype.parse = function (cfg) {
if (typeof cfg.date === 'string') {
Expand All @@ -25,7 +19,7 @@ export default (option, dayjsClass, dayjsFactory) => {
const result = oldFormat.call(this, ...args)
// return modified result
const locale = this.$locale()
return locale.postformat ? locale.postformat(result) : result
return locale && locale.postformat ? locale.postformat(result) : result
}

const oldFromTo = dayjsClass.prototype.fromToBase
Expand All @@ -46,7 +40,7 @@ export default (option, dayjsClass, dayjsFactory) => {
withoutSuffix,
instance,
isFrom,
locale.postformat
locale && locale.postformat
)
}
}
Expand Down
2 changes: 2 additions & 0 deletions test/locale/ar.test.js
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,10 @@ import MockDate from 'mockdate'
import dayjs from '../../src'
import relativeTime from '../../src/plugin/relativeTime'
import preParsePostFormat from '../../src/plugin/preParsePostFormat'
import localeData from '../../src/plugin/localeData'
import '../../src/locale/ar'

dayjs.extend(localeData)
dayjs.extend(relativeTime)
dayjs.extend(preParsePostFormat)

Expand Down
2 changes: 2 additions & 0 deletions test/plugin/preParsePostFormat.test.js
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@ import MockDate from 'mockdate'
// import moment from 'moment'
import dayjs from '../../src'
import preParsePostFormat from '../../src/plugin/preParsePostFormat'
import localeData from '../../src/plugin/localeData'
import duration from '../../src/plugin/duration'
import calendar from '../../src/plugin/calendar'
import objectSupport from '../../src/plugin/objectSupport'
Expand All @@ -12,6 +13,7 @@ import arraySupport from '../../src/plugin/arraySupport'
import en from '../../src/locale/en'

dayjs.extend(utc)
dayjs.extend(localeData)
dayjs.extend(customParseFormat)
dayjs.extend(arraySupport)
dayjs.extend(objectSupport)
Expand Down

0 comments on commit e565267

Please sign in to comment.