From bdcfa859eb4fc0016db7f169ff29b2fa607b8a54 Mon Sep 17 00:00:00 2001 From: Elad Sivan Date: Tue, 15 Sep 2020 14:51:20 +0300 Subject: [PATCH] Remove the use of Moment.js. This is a heavy library that is hardly used, in addition, it is already quite deprecated, see here: https://momentjs.com/docs/#/-project-status/ --- flow-typed/npm/moment_v2.x.x.js | 401 ------------------------------- package.json | 1 - src/components/Feed/Feed.js | 5 +- src/components/Post/Meta/Meta.js | 3 +- 4 files changed, 3 insertions(+), 407 deletions(-) delete mode 100644 flow-typed/npm/moment_v2.x.x.js diff --git a/flow-typed/npm/moment_v2.x.x.js b/flow-typed/npm/moment_v2.x.x.js deleted file mode 100644 index 2582e07..0000000 --- a/flow-typed/npm/moment_v2.x.x.js +++ /dev/null @@ -1,401 +0,0 @@ -// flow-typed signature: 9f5d01a796646c50e75afd71bd0a2941 -// flow-typed version: e7ad2464da/moment_v2.x.x/flow_>=v0.104.x - -type moment$MomentOptions = { - y?: number | string, - year?: number | string, - years?: number | string, - M?: number | string, - month?: number | string, - months?: number | string, - d?: number | string, - day?: number | string, - days?: number | string, - date?: number | string, - h?: number | string, - hour?: number | string, - hours?: number | string, - m?: number | string, - minute?: number | string, - minutes?: number | string, - s?: number | string, - second?: number | string, - seconds?: number | string, - ms?: number | string, - millisecond?: number | string, - milliseconds?: number | string, - ... -}; - -type moment$MomentObject = { - years: number, - months: number, - date: number, - hours: number, - minutes: number, - seconds: number, - milliseconds: number, - ... -}; - -type moment$MomentCreationData = { - input: string, - format: string, - locale: {...}, - isUTC: boolean, - strict: boolean, - ... -}; - -type moment$CalendarFormat = string | ((moment: moment$Moment) => string); - -type moment$CalendarFormats = { - sameDay?: moment$CalendarFormat, - nextDay?: moment$CalendarFormat, - nextWeek?: moment$CalendarFormat, - lastDay?: moment$CalendarFormat, - lastWeek?: moment$CalendarFormat, - sameElse?: moment$CalendarFormat, - ... -}; - -type moment$Inclusivity = "()" | "[)" | "()" | "(]" | "[]"; - -declare class moment$LocaleData { - months(moment: moment$Moment): string; - monthsShort(moment: moment$Moment): string; - monthsParse(month: string): number; - weekdays(moment: moment$Moment): string; - weekdaysShort(moment: moment$Moment): string; - weekdaysMin(moment: moment$Moment): string; - weekdaysParse(weekDay: string): number; - longDateFormat(dateFormat: string): string; - isPM(date: string): boolean; - meridiem(hours: number, minutes: number, isLower: boolean): string; - calendar( - key: - | "sameDay" - | "nextDay" - | "lastDay" - | "nextWeek" - | "prevWeek" - | "sameElse", - moment: moment$Moment - ): string; - relativeTime( - number: number, - withoutSuffix: boolean, - key: "s" | "m" | "mm" | "h" | "hh" | "d" | "dd" | "M" | "MM" | "y" | "yy", - isFuture: boolean - ): string; - pastFuture(diff: any, relTime: string): string; - ordinal(number: number): string; - preparse(str: string): any; - postformat(str: string): any; - week(moment: moment$Moment): string; - invalidDate(): string; - firstDayOfWeek(): number; - firstDayOfYear(): number; -} -declare class moment$MomentDuration { - humanize(suffix?: boolean): string; - milliseconds(): number; - asMilliseconds(): number; - seconds(): number; - asSeconds(): number; - minutes(): number; - asMinutes(): number; - hours(): number; - asHours(): number; - days(): number; - asDays(): number; - months(): number; - asWeeks(): number; - weeks(): number; - asMonths(): number; - years(): number; - asYears(): number; - add(value: number | moment$MomentDuration | {...}, unit?: string): this; - subtract(value: number | moment$MomentDuration | {...}, unit?: string): this; - as(unit: string): number; - get(unit: string): number; - toJSON(): string; - toISOString(): string; - isValid(): boolean; -} -declare class moment$Moment { - static ISO_8601: string; - static (string?: ?string): moment$Moment; - static ( - initDate: - | moment$MomentOptions - | number - | Date - | Array - | moment$Moment - | string - | null - | void - | [] - | {...} - ): moment$Moment; - static (array: []): moment$Moment; - static (object: {...}): moment$Moment; - static (string: ?string, format: string | Array): moment$Moment; - static ( - string: ?string, - // Support for strict string parsing without format works since moment v2.25.0 - // https://github.com/moment/moment/issues/2469 - strict: boolean - ): moment$Moment; - static ( - string: ?string, - format: string | Array, - strict: boolean - ): moment$Moment; - static ( - string: ?string, - format: string | Array, - locale: string - ): moment$Moment; - static ( - string: ?string, - format: string | Array, - locale: string, - strict: boolean - ): moment$Moment; - static unix(seconds: number): moment$Moment; - static utc(): moment$Moment; - static utc( - initDate: - | moment$MomentOptions - | number - | Date - | Array - | moment$Moment - | string - | null - | void - ): moment$Moment; - static utc(string: string, format: string | Array): moment$Moment; - static utc( - string: string, - // Support for strict string parsing without format works since moment v2.25.0 - // https://github.com/moment/moment/issues/2469 - strict: boolean - ): moment$Moment; - static utc( - string: string, - format: string | Array, - strict: boolean - ): moment$Moment; - static utc( - string: string, - format: string | Array, - locale: string - ): moment$Moment; - static utc( - string: string, - format: string | Array, - locale: string, - strict: boolean - ): moment$Moment; - static parseZone(): moment$Moment; - static parseZone(rawDate: string | null | void): moment$Moment; - static parseZone( - rawDate: string, - format: string | Array - ): moment$Moment; - static parseZone( - rawDate: string, - format: string | Array, - strict: boolean - ): moment$Moment; - static parseZone( - rawDate: string, - format: string | Array, - locale: string - ): moment$Moment; - static parseZone( - rawDate: string, - format: string | Array, - locale: string, - strict: boolean - ): moment$Moment; - isValid(): boolean; - invalidAt(): 0 | 1 | 2 | 3 | 4 | 5 | 6; - creationData(): moment$MomentCreationData; - millisecond(number: number): this; - milliseconds(number: number): this; - millisecond(): number; - milliseconds(): number; - second(number: number): this; - seconds(number: number): this; - second(): number; - seconds(): number; - minute(number: number): this; - minutes(number: number): this; - minute(): number; - minutes(): number; - hour(number: number): this; - hours(number: number): this; - hour(): number; - hours(): number; - date(number: number): this; - dates(number: number): this; - date(): number; - dates(): number; - day(day: number | string): this; - days(day: number | string): this; - day(): number; - days(): number; - weekday(number: number): this; - weekday(): number; - isoWeekday(day: number | string): this; - isoWeekday(): number; - dayOfYear(day: number): this; - dayOfYear(): number; - week(number: number): this; - weeks(number: number): this; - week(): number; - weeks(): number; - isoWeek(number: number): this; - isoWeeks(number: number): this; - isoWeek(): number; - isoWeeks(): number; - month(number: number): this; - months(number: number): this; - month(): number; - months(): number; - quarter(number: number): this; - quarter(): number; - year(number: number): this; - years(number: number): this; - year(): number; - years(): number; - weekYear(number: number): this; - weekYear(): number; - isoWeekYear(number: number): this; - isoWeekYear(): number; - weeksInYear(): number; - isoWeeksInYear(): number; - get(string: string): number; - set(unit: string, value: number): this; - set(options: { [unit: string]: number, ... }): this; - static max(...dates: Array): moment$Moment; - static max(dates: Array): moment$Moment; - static min(...dates: Array): moment$Moment; - static min(dates: Array): moment$Moment; - add( - value: number | moment$MomentDuration | moment$Moment | {...}, - unit?: string - ): this; - subtract( - value: number | moment$MomentDuration | moment$Moment | string | {...}, - unit?: string - ): this; - startOf(unit: string): this; - endOf(unit: string): this; - local(): this; - utc(): this; - utcOffset( - offset: number | string, - keepLocalTime?: boolean, - keepMinutes?: boolean - ): this; - utcOffset(): number; - format(format?: string): string; - fromNow(removeSuffix?: boolean): string; - from( - value: moment$Moment | string | number | Date | Array, - removePrefix?: boolean - ): string; - toNow(removePrefix?: boolean): string; - to( - value: moment$Moment | string | number | Date | Array, - removePrefix?: boolean - ): string; - calendar(refTime?: any, formats?: moment$CalendarFormats): string; - diff( - date: moment$Moment | string | number | Date | Array, - format?: string, - floating?: boolean - ): number; - valueOf(): number; - unix(): number; - daysInMonth(): number; - toDate(): Date; - toArray(): Array; - toJSON(): string; - toISOString(keepOffset?: boolean): string; - toObject(): moment$MomentObject; - isBefore( - date?: moment$Moment | string | number | Date | Array, - units?: ?string - ): boolean; - isSame( - date?: moment$Moment | string | number | Date | Array, - units?: ?string - ): boolean; - isAfter( - date?: moment$Moment | string | number | Date | Array, - units?: ?string - ): boolean; - isSameOrBefore( - date?: moment$Moment | string | number | Date | Array, - units?: ?string - ): boolean; - isSameOrAfter( - date?: moment$Moment | string | number | Date | Array, - units?: ?string - ): boolean; - isBetween( - from: moment$Moment | string | number | Date | Array, - to: moment$Moment | string | number | Date | Array, - units?: string, - inclusivity?: moment$Inclusivity - ): boolean; - isDST(): boolean; - isDSTShifted(): boolean; - isLeapYear(): boolean; - clone(): moment$Moment; - static isMoment(obj: any): boolean; - static isDate(obj: any): boolean; - static updateLocale(locale: string, localeData?: ?{...}): void; - static defineLocale(locale: string, localeData?: ?{...}): void; - static locale(locale?: string, localeData?: {...}): string; - static locale(locales: Array): string; - locale(locale: string, customization?: {...} | null): moment$Moment; - locale(): string; - static months(): Array; - static monthsShort(): Array; - static now(): number; - static weekdays(): Array; - static weekdaysShort(): Array; - static weekdaysMin(): Array; - static months(): string; - static monthsShort(): string; - static weekdays(): string; - static weekdaysShort(): string; - static weekdaysMin(): string; - static localeData(key?: string): moment$LocaleData; - localeData(): moment$LocaleData; - static duration( - value: number | {...} | string, - unit?: string - ): moment$MomentDuration; - static isDuration(obj: any): boolean; - static normalizeUnits(unit: string): string; - static invalid(object: any): moment$Moment; - static relativeTimeRounding(): (value: number) => number; - static relativeTimeRounding(fn: (value: number) => number): void; - static relativeTimeThreshold(unit: "ss" | "s" | "m" | "h" | "d" | "M"): number; - static relativeTimeThreshold( - unit: "ss" | "s" | "m" | "h" | "d" | "M", - limit: number, - ): void; -} - -declare module "moment" { - declare module.exports: Class; -} diff --git a/package.json b/package.json index 43c0173..cb7f554 100644 --- a/package.json +++ b/package.json @@ -71,7 +71,6 @@ "invariant": "^2.2.4", "katex": "^0.12.0", "lodash": "^4.17.20", - "moment": "^2.28.0", "netlify-cms-app": "^2.12.20", "node-sass": "^4.14.1", "normalize-scss": "^7.0.1", diff --git a/src/components/Feed/Feed.js b/src/components/Feed/Feed.js index 252323a..877a495 100644 --- a/src/components/Feed/Feed.js +++ b/src/components/Feed/Feed.js @@ -1,6 +1,5 @@ // @flow strict import React from 'react'; -import moment from 'moment'; import { Link } from 'gatsby'; import type { Edges } from '../../types'; import styles from './Feed.module.scss'; @@ -14,8 +13,8 @@ const Feed = ({ edges }: Props) => ( {edges.map((edge) => (
-