@contentful/field-editor-date 1.1.9 → 1.1.10-beta.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/DatepickerInput.d.ts +2 -14
- package/dist/field-editor-date.cjs.development.js +132 -276
- package/dist/field-editor-date.cjs.development.js.map +1 -1
- package/dist/field-editor-date.cjs.production.min.js +1 -1
- package/dist/field-editor-date.cjs.production.min.js.map +1 -1
- package/dist/field-editor-date.esm.js +136 -279
- package/dist/field-editor-date.esm.js.map +1 -1
- package/dist/index.d.ts +0 -1
- package/dist/utils/date.d.ts +0 -2
- package/package.json +5 -8
- package/CHANGELOG.md +0 -208
- package/LICENSE +0 -21
- package/dist/icons/CalendarIcon.d.ts +0 -5
- package/dist/utils/createPikaday.d.ts +0 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"field-editor-date.esm.js","sources":["../src/utils/date.ts","../src/utils/createPikaday.ts","../src/icons/CalendarIcon.tsx","../src/DatepickerInput.tsx","../src/TimepickerInput.tsx","../src/utils/zoneOffsets.ts","../src/TimezonePickerInput.tsx","../src/DateEditor.tsx"],"sourcesContent":["// eslint-disable-next-line -- TODO: describe this disable no-restricted-imports\nimport moment from 'moment';\nimport { TimeResult } from '../types';\n\nconst ZONE_RX = /(Z|[+-]\\d{2}[:+]?\\d{2})$/;\n\nfunction startOfToday(format: string) {\n return moment().set({ hours: 0, minutes: 0 }).format(format);\n}\n\nfunction fieldValueToMoment(datetimeString: string | null | undefined): moment.Moment | null {\n if (!datetimeString) {\n return null;\n }\n\n const datetime = moment(datetimeString);\n if (ZONE_RX.test(datetimeString)) {\n datetime.utcOffset(datetimeString);\n }\n return datetime;\n}\n\nfunction timeFromUserInput(input: TimeResult) {\n const timeInput = input.time || '00:00';\n return moment.utc(timeInput + '!' + input.ampm, 'HH:mm!A');\n}\n\n/**\n * Convert the user input object into either a 'moment' value or an\n * invalid symbol.\n *\n * Success is indicated by returning '{valid: value}' and failure is\n * indicated by returning '{invalid: true}'. If 'input.date' is\n * 'null' we return '{valid: null}'\n */\nfunction datetimeFromUserInput(input: TimeResult): {\n invalid?: boolean;\n valid: moment.Moment | null;\n} {\n if (!input.date) {\n return { valid: null };\n }\n\n const time = timeFromUserInput(input);\n\n const date = moment\n .parseZone(input.utcOffset, 'Z')\n .set(input.date.toObject())\n .set({ hours: time.hours(), minutes: time.minutes() });\n\n if (date.isValid()) {\n return { valid: date };\n } else {\n return { invalid: true, valid: null };\n }\n}\n\nexport function formatDateDisplay(date?: moment.Moment) {\n if (date) {\n return date.format('dddd, MMMM Do YYYY');\n } else {\n return '';\n }\n}\n\n/**\n * Parse user input into a string that is stored in the API.\n *\n * Returns a sum type with either the string as the `valid` property\n * or the `invalid` property set to `false`.\n */\nexport function buildFieldValue({\n data,\n usesTime,\n usesTimezone,\n}: {\n data: TimeResult;\n usesTime: boolean;\n usesTimezone: boolean;\n}) {\n const date = datetimeFromUserInput(data);\n if (date.invalid) {\n return {\n invalid: true,\n };\n }\n\n let format;\n if (usesTimezone) {\n format = 'YYYY-MM-DDTHH:mmZ';\n } else if (usesTime) {\n format = 'YYYY-MM-DDTHH:mm';\n } else {\n format = 'YYYY-MM-DD';\n }\n return { valid: date?.valid ? date.valid.format(format) : null, invalid: false };\n}\n\nexport function getDefaultAMPM() {\n return 'AM';\n}\n\nexport function getDefaultUtcOffset() {\n return startOfToday('Z');\n}\n\n/**\n * Create the user input object from the field value.\n */\nexport function userInputFromDatetime({\n value,\n uses12hClock,\n}: {\n value: string | undefined | null;\n uses12hClock: boolean;\n}): TimeResult {\n const datetime = fieldValueToMoment(value);\n\n if (datetime) {\n const timeFormat = uses12hClock ? 'hh:mm' : 'HH:mm';\n return {\n date: datetime,\n time: datetime.format(timeFormat),\n ampm: datetime.format('A'),\n utcOffset: datetime.format('Z'),\n };\n } else {\n return {\n ampm: getDefaultAMPM(),\n utcOffset: getDefaultUtcOffset(),\n };\n }\n}\n","import Pikaday from 'pikaday';\n\nconst I18N = {\n previousMonth: 'Previous Month',\n nextMonth: 'Next Month',\n months: [\n 'January',\n 'February',\n 'March',\n 'April',\n 'May',\n 'June',\n 'July',\n 'August',\n 'September',\n 'October',\n 'November',\n 'December',\n ],\n weekdaysShort: ['S', 'M', 'T', 'W', 'T', 'F', 'S'],\n weekdays: ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday'],\n};\n\nconst DEFAULTS = {\n i18n: I18N,\n yearRange: 100,\n};\n\n// Gets same options as Pikaday and returns a Pikaday instance\nexport const createPikaday = (opts?: Pikaday.PikadayOptions) =>\n new Pikaday(Object.assign({}, DEFAULTS, opts));\n","import React from 'react';\n\nexport function CalendarIcon(props: {\n className?: string;\n onClick?: React.MouseEventHandler<SVGElement>;\n}) {\n return (\n <svg\n width=\"16\"\n height=\"17\"\n viewBox=\"-1 -1 18 19\"\n onClick={props.onClick}\n xmlns=\"http://www.w3.org/2000/svg\"\n className={props.className}>\n <g fill=\"none\" fillRule=\"evenodd\">\n <g fill=\"#536171\">\n <path d=\"M2.071 14.929v-2.411h2.411v2.41h-2.41zm2.947 0v-2.411h2.678v2.41H5.018zM2.07 11.982V9.304h2.411v2.678h-2.41zm2.947 0V9.304h2.678v2.678H5.018zM2.07 8.768v-2.41h2.411v2.41h-2.41zm6.161 6.16v-2.41h2.679v2.41H8.232zm-3.214-6.16v-2.41h2.678v2.41H5.018zm6.428 6.16v-2.41h2.411v2.41h-2.41zm-3.214-2.946V9.304h2.679v2.678H8.232zM5.286 4.75a.275.275 0 0 1-.268.268h-.536a.275.275 0 0 1-.268-.268V2.34c0-.143.126-.269.268-.269h.536c.142 0 .268.126.268.268V4.75zm6.16 7.232V9.304h2.411v2.678h-2.41zM8.232 8.768v-2.41h2.679v2.41H8.232zm3.214 0v-2.41h2.411v2.41h-2.41zm.268-4.018a.275.275 0 0 1-.268.268h-.535a.275.275 0 0 1-.268-.268V2.34c0-.143.125-.269.268-.269h.535c.143 0 .268.126.268.268V4.75zm3.215-.536c0-.586-.486-1.071-1.072-1.071h-1.071v-.804c0-.736-.603-1.339-1.34-1.339h-.535c-.737 0-1.34.603-1.34 1.34v.803H6.357v-.804C6.357 1.603 5.754 1 5.017 1h-.535c-.736 0-1.34.603-1.34 1.34v.803h-1.07C1.484 3.143 1 3.628 1 4.214V14.93C1 15.515 1.485 16 2.071 16h11.786c.586 0 1.072-.485 1.072-1.071V4.214z\" />\n </g>\n </g>\n </svg>\n );\n}\n","import React, { Component, FocusEventHandler, FocusEvent } from 'react';\nimport noop from 'lodash/noop';\n// eslint-disable-next-line -- TODO: describe this disable no-restricted-imports\nimport moment from 'moment';\nimport { css, cx } from 'emotion';\nimport { formatDateDisplay } from './utils/date';\nimport { createPikaday } from './utils/createPikaday';\nimport { CalendarIcon } from './icons/CalendarIcon';\n\nimport { TextInput } from '@contentful/f36-components';\n\nconst styles = {\n datePickerWrapper: css({\n position: 'relative',\n maxHeight: 70,\n }),\n datePicker: css({\n zIndex: 1002,\n display: 'block',\n '.is-hidden': {\n display: 'none',\n },\n }),\n input: css({\n width: '270px',\n cursor: 'pointer',\n paddingRight: '40px',\n '&:disabled': {\n cursor: 'not-allowed',\n },\n }),\n icon: css({\n cursor: 'pointer',\n zIndex: 50,\n position: 'absolute',\n top: '12px',\n right: '12px',\n }),\n};\n\nexport type DatePickerProps = {\n value?: moment.Moment;\n onChange: (val: moment.Moment | undefined) => void;\n onBlur: FocusEventHandler;\n disabled?: boolean;\n};\n\nexport class DatepickerInput extends Component<DatePickerProps> {\n static defaultProps: Partial<DatePickerProps> = {\n onChange: noop,\n onBlur: noop,\n };\n\n pikaday?: Pikaday;\n datePickerNode = React.createRef<HTMLInputElement>();\n\n componentDidMount() {\n const onChange = this.props.onChange;\n const defaultDate = this.props.value ? this.props.value.toDate() : undefined;\n this.pikaday = createPikaday({\n field: this.datePickerNode && this.datePickerNode.current,\n defaultDate,\n setDefaultDate: defaultDate !== undefined,\n position: 'bottom left',\n reposition: false,\n theme: cx(styles.datePicker, 'hide-carret'),\n toString: (date) => {\n return formatDateDisplay(moment(date));\n },\n // we need to keep this function like this\n // so `this` refers to pikaday instance\n onSelect: function onSelect() {\n onChange(this.getMoment() || undefined);\n },\n });\n }\n\n focusInput = () => {\n if (this.datePickerNode && this.datePickerNode.current) {\n this.datePickerNode.current.focus();\n }\n };\n\n componentWillUnmount() {\n if (this.pikaday) {\n this.pikaday.destroy();\n }\n }\n\n handleOpen = () => {\n if (this.pikaday) {\n this.pikaday.show();\n }\n };\n\n handleBlur = (e: FocusEvent) => {\n this.props.onBlur(e);\n if (this.pikaday && !this.pikaday.el.contains(e.relatedTarget as HTMLInputElement)) {\n this.pikaday.hide();\n }\n };\n\n render() {\n return (\n <div className={styles.datePickerWrapper}>\n <TextInput\n aria-label=\"Select date\"\n testId=\"date-input\"\n isReadOnly\n isDisabled={this.props.disabled}\n value={formatDateDisplay(this.props.value)}\n ref={this.datePickerNode}\n onFocus={this.handleOpen}\n onBlur={this.handleBlur}\n className={styles.input}\n />\n <CalendarIcon\n onClick={() => {\n this.focusInput();\n }}\n className={styles.icon}\n />\n </div>\n );\n }\n}\n","import React, { useState, useCallback, useEffect } from 'react';\n// eslint-disable-next-line -- TODO: describe this disable no-restricted-imports\nimport moment from 'moment';\nimport { css } from 'emotion';\n\nimport { TextInput, Flex } from '@contentful/f36-components';\n\nexport type TimepickerProps = {\n disabled: boolean;\n uses12hClock: boolean;\n onChange: (value: { time: string; ampm: string }) => void;\n time?: string;\n ampm?: string;\n};\n\nconst validInputFormats = [\n 'hh:mm a',\n 'hh:mm A',\n 'h:mm a',\n 'h:mm A',\n 'hh:mm',\n 'k:mm',\n 'kk:mm',\n 'h a',\n 'h A',\n 'h',\n 'hh',\n 'HH',\n];\n\nfunction parseRawInput(raw: string): moment.Moment | null {\n let time: moment.Moment | null = null;\n\n // eslint-disable-next-line -- TODO: describe this disable @typescript-eslint/prefer-for-of\n for (let i = 0; i < validInputFormats.length; i++) {\n const date = moment(raw, validInputFormats[i]);\n if (date.isValid()) {\n time = date;\n break;\n }\n }\n\n return time;\n}\n\nconst getDefaultTime = () => {\n return moment(`12:00 AM`, 'hh:mm A');\n};\n\nconst formatToString = (uses12hClock: boolean, value: moment.Moment): string => {\n return uses12hClock ? value.format('hh:mm A') : value.format('HH:mm');\n};\n\nexport const TimepickerInput = ({\n disabled,\n uses12hClock,\n time = '12:00',\n ampm = 'AM',\n onChange,\n}: TimepickerProps) => {\n const [selectedTime, setSelectedTime] = useState<string>(() => {\n return formatToString(uses12hClock, getDefaultTime());\n });\n\n useEffect(() => {\n setSelectedTime(formatToString(uses12hClock, moment(`${time} ${ampm}`, 'hh:mm A')));\n }, [time, ampm, uses12hClock]);\n\n const handleChange = useCallback((e: React.ChangeEvent<HTMLInputElement>) => {\n setSelectedTime(e.currentTarget.value);\n }, []);\n\n const handleFocus = useCallback((e) => {\n e.preventDefault();\n e.target.select();\n }, []);\n\n const handleBlur = () => {\n const parsedTime = parseRawInput(selectedTime);\n const value = parsedTime ?? getDefaultTime();\n setSelectedTime(formatToString(uses12hClock, value));\n onChange({ time: value.format('hh:mm'), ampm: value.format('A') });\n };\n\n return (\n <Flex className={css({ width: '145px' })}>\n <TextInput\n aria-label=\"Select time\"\n placeholder={uses12hClock ? '12:00 AM' : '00:00'}\n date-time-type={uses12hClock ? '12' : '24'}\n testId=\"time-input\"\n value={selectedTime}\n isDisabled={disabled}\n onFocus={handleFocus}\n onBlur={handleBlur}\n onChange={handleChange}\n />\n </Flex>\n );\n};\n","export const defaultZoneOffset = '+00:00';\n\nexport const zoneOffsets = [\n '-12:00',\n '-11:00',\n '-10:00',\n '-09:30',\n '-09:00',\n '-08:00',\n '-07:00',\n '-06:00',\n '-05:00',\n '-04:30',\n '-04:00',\n '-03:30',\n '-03:00',\n '-02:00',\n '-01:00',\n '+00:00',\n '+01:00',\n '+02:00',\n '+03:00',\n '+03:30',\n '+04:00',\n '+04:30',\n '+05:00',\n '+05:30',\n '+05:45',\n '+06:00',\n '+06:30',\n '+07:00',\n '+08:00',\n '+08:45',\n '+09:00',\n '+09:30',\n '+10:00',\n '+10:30',\n '+11:00',\n '+11:30',\n '+12:00',\n '+12:45',\n '+13:00',\n '+14:00',\n];\n","import React, { ChangeEvent } from 'react';\nimport { zoneOffsets, defaultZoneOffset } from './utils/zoneOffsets';\n\nimport { Select } from '@contentful/f36-components';\n\nexport type TimezonepickerProps = {\n disabled: boolean;\n onChange: (value: string) => void;\n value?: string;\n};\nexport const TimezonepickerInput = ({\n disabled,\n onChange,\n value = defaultZoneOffset,\n}: TimezonepickerProps) => {\n return (\n <Select\n aria-label=\"Select timezone\"\n testId=\"timezone-input\"\n value={value}\n isDisabled={disabled}\n onChange={(e: ChangeEvent<HTMLSelectElement>) => {\n onChange(e.currentTarget.value);\n }}>\n {zoneOffsets.map((offset) => (\n <Select.Option key={offset} value={offset}>\n UTC{offset}\n </Select.Option>\n ))}\n </Select>\n );\n};\n","import * as React from 'react';\nimport { css } from 'emotion';\nimport tokens from '@contentful/f36-tokens';\nimport { FieldAPI, FieldConnector, ParametersAPI } from '@contentful/field-editor-shared';\nimport { DatepickerInput } from './DatepickerInput';\nimport { TimepickerInput } from './TimepickerInput';\nimport { TimezonepickerInput } from './TimezonePickerInput';\nimport {\n userInputFromDatetime,\n buildFieldValue,\n getDefaultAMPM,\n getDefaultUtcOffset,\n} from './utils/date';\nimport { TimeFormat, DateTimeFormat, TimeResult } from './types';\n\nimport { TextLink } from '@contentful/f36-components';\n\nexport interface DateEditorProps {\n /**\n * is the field disabled initially\n */\n isInitiallyDisabled: boolean;\n\n /**\n * sdk.field\n */\n field: FieldAPI;\n\n /**\n * sdk.parameters\n */\n parameters?: ParametersAPI & {\n instance?: {\n format?: DateTimeFormat;\n ampm?: TimeFormat;\n };\n };\n}\n\nconst styles = {\n root: css({\n display: 'flex',\n alignItems: 'center',\n }),\n separator: css({\n marginLeft: tokens.spacingM,\n }),\n};\n\nfunction useEffectWithoutFirstRender(callback: Function, deps: Array<any>) {\n const isFirstRun = React.useRef(true);\n React.useEffect(() => {\n if (isFirstRun.current) {\n isFirstRun.current = false;\n return;\n }\n callback();\n // eslint-disable-next-line react-hooks/exhaustive-deps -- TODO: Evaluate the dependencies\n }, deps);\n}\n\nfunction DateEditorContainer({\n initialValue,\n usesTime,\n usesTimezone,\n uses12hClock,\n disabled,\n hasClear,\n onChange,\n}: {\n initialValue: TimeResult;\n usesTime: boolean;\n usesTimezone: boolean;\n uses12hClock: boolean;\n disabled: boolean;\n hasClear: boolean;\n onChange: (value: TimeResult) => void;\n}) {\n const [value, setValue] = React.useState<TimeResult>(() => initialValue);\n\n useEffectWithoutFirstRender(() => {\n onChange(value);\n }, [value]);\n\n return (\n <div data-test-id=\"date-editor\" className={styles.root}>\n <DatepickerInput\n disabled={disabled}\n value={value.date}\n onChange={(date) => {\n setValue((value) => ({\n ...value,\n date,\n }));\n }}\n />\n {usesTime && (\n <>\n <div className={styles.separator} />\n <TimepickerInput\n disabled={disabled}\n time={value.time}\n ampm={value.ampm}\n onChange={({ time, ampm }) => {\n setValue((value) => ({\n ...value,\n time,\n ampm,\n }));\n }}\n uses12hClock={uses12hClock}\n />\n </>\n )}\n {usesTimezone && (\n <>\n <div className={styles.separator} />\n <TimezonepickerInput\n disabled={disabled}\n value={value.utcOffset}\n onChange={(utcOffset) => {\n setValue((value) => ({\n ...value,\n utcOffset,\n }));\n }}\n />\n </>\n )}\n {hasClear && (\n <>\n <div className={styles.separator} />\n <TextLink\n as=\"button\"\n isDisabled={disabled}\n testId=\"date-clear\"\n onClick={() => {\n setValue({\n date: undefined,\n time: undefined,\n ampm: getDefaultAMPM(),\n utcOffset: getDefaultUtcOffset(),\n });\n }}>\n Clear\n </TextLink>\n </>\n )}\n </div>\n );\n}\n\nexport function DateEditor(props: DateEditorProps) {\n const { field, parameters } = props;\n\n const formatParam = parameters?.instance?.format ?? 'timeZ';\n const ampmParam = parameters?.instance?.ampm ?? '24';\n\n const usesTime = formatParam !== 'dateonly';\n const usesTimezone = formatParam === 'timeZ';\n const uses12hClock = ampmParam === '12';\n\n return (\n <FieldConnector<string>\n field={field}\n isInitiallyDisabled={props.isInitiallyDisabled}\n throttle={0}>\n {({ value, disabled, setValue, externalReset }) => {\n const datetimeValue = userInputFromDatetime({\n value,\n uses12hClock,\n });\n return (\n <DateEditorContainer\n initialValue={datetimeValue}\n uses12hClock={uses12hClock}\n usesTimezone={usesTimezone}\n usesTime={usesTime}\n disabled={disabled}\n hasClear={Boolean(value)}\n onChange={(data) => {\n const fieldValue = buildFieldValue({ data, usesTime, usesTimezone });\n if (fieldValue.invalid) {\n return;\n }\n // if value is present - then override it with a new one\n // if value is not present - then set a new one if it's not nullable only\n if (Boolean(value) || (!value && Boolean(fieldValue.valid))) {\n setValue(fieldValue.valid);\n }\n }}\n key={`date-container-${externalReset}`}\n />\n );\n }}\n </FieldConnector>\n );\n}\n\nDateEditor.defaultProps = {\n isInitiallyDisabled: true,\n};\n"],"names":["ZONE_RX","startOfToday","format","moment","set","hours","minutes","fieldValueToMoment","datetimeString","datetime","test","utcOffset","timeFromUserInput","input","timeInput","time","utc","ampm","datetimeFromUserInput","date","valid","parseZone","toObject","isValid","invalid","formatDateDisplay","buildFieldValue","data","usesTime","usesTimezone","getDefaultAMPM","getDefaultUtcOffset","userInputFromDatetime","value","uses12hClock","timeFormat","I18N","previousMonth","nextMonth","months","weekdaysShort","weekdays","DEFAULTS","i18n","yearRange","createPikaday","opts","Pikaday","Object","assign","CalendarIcon","props","React","width","height","viewBox","onClick","xmlns","className","fill","fillRule","d","styles","datePickerWrapper","css","position","maxHeight","datePicker","zIndex","display","cursor","paddingRight","icon","top","right","DatepickerInput","createRef","datePickerNode","current","focus","pikaday","show","e","onBlur","el","contains","relatedTarget","hide","componentDidMount","onChange","defaultDate","toDate","undefined","field","setDefaultDate","reposition","theme","cx","toString","onSelect","getMoment","componentWillUnmount","destroy","render","TextInput","testId","isReadOnly","isDisabled","disabled","ref","onFocus","handleOpen","handleBlur","focusInput","Component","noop","validInputFormats","parseRawInput","raw","i","length","getDefaultTime","formatToString","TimepickerInput","useState","selectedTime","setSelectedTime","useEffect","handleChange","useCallback","currentTarget","handleFocus","preventDefault","target","select","parsedTime","Flex","placeholder","defaultZoneOffset","zoneOffsets","TimezonepickerInput","Select","map","offset","Option","key","root","alignItems","separator","marginLeft","tokens","spacingM","useEffectWithoutFirstRender","callback","deps","isFirstRun","DateEditorContainer","initialValue","hasClear","setValue","TextLink","as","DateEditor","parameters","formatParam","instance","ampmParam","FieldConnector","isInitiallyDisabled","throttle","externalReset","datetimeValue","Boolean","fieldValue","defaultProps"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"field-editor-date.esm.js","sources":["../src/DatepickerInput.tsx","../src/TimepickerInput.tsx","../src/utils/zoneOffsets.ts","../src/TimezonePickerInput.tsx","../src/utils/date.ts","../src/DateEditor.tsx"],"sourcesContent":["import React, { useMemo } from 'react';\n\nimport { Datepicker } from '@contentful/f36-datepicker';\nimport { css } from 'emotion';\n// eslint-disable-next-line -- TODO: describe this disable no-restricted-imports\nimport moment from 'moment';\n\nconst YEAR_RANGE = 100;\n\nconst styles = {\n root: css({\n maxWidth: '270px',\n }),\n};\n\nexport type DatePickerProps = {\n value?: moment.Moment;\n onChange: (val: moment.Moment | undefined) => void;\n disabled?: boolean;\n};\n\nexport const DatepickerInput = (props: DatePickerProps) => {\n const [fromDate, toDate] = useMemo(() => {\n const fromDate = new Date();\n fromDate.setFullYear(fromDate.getFullYear() - YEAR_RANGE);\n const toDate = new Date();\n toDate.setFullYear(toDate.getFullYear() + YEAR_RANGE);\n\n return [fromDate, toDate];\n }, []);\n\n return (\n <Datepicker\n className={styles.root}\n selected={props.value?.toDate()}\n onSelect={(day) => {\n props.onChange(moment(day));\n }}\n inputProps={{ isDisabled: props.disabled, placeholder: '' }}\n fromDate={fromDate}\n toDate={toDate}\n />\n );\n};\n","import React, { useState, useCallback, useEffect } from 'react';\n// eslint-disable-next-line -- TODO: describe this disable no-restricted-imports\nimport moment from 'moment';\nimport { css } from 'emotion';\n\nimport { TextInput, Flex } from '@contentful/f36-components';\n\nexport type TimepickerProps = {\n disabled: boolean;\n uses12hClock: boolean;\n onChange: (value: { time: string; ampm: string }) => void;\n time?: string;\n ampm?: string;\n};\n\nconst validInputFormats = [\n 'hh:mm a',\n 'hh:mm A',\n 'h:mm a',\n 'h:mm A',\n 'hh:mm',\n 'k:mm',\n 'kk:mm',\n 'h a',\n 'h A',\n 'h',\n 'hh',\n 'HH',\n];\n\nfunction parseRawInput(raw: string): moment.Moment | null {\n let time: moment.Moment | null = null;\n\n // eslint-disable-next-line -- TODO: describe this disable @typescript-eslint/prefer-for-of\n for (let i = 0; i < validInputFormats.length; i++) {\n const date = moment(raw, validInputFormats[i]);\n if (date.isValid()) {\n time = date;\n break;\n }\n }\n\n return time;\n}\n\nconst getDefaultTime = () => {\n return moment(`12:00 AM`, 'hh:mm A');\n};\n\nconst formatToString = (uses12hClock: boolean, value: moment.Moment): string => {\n return uses12hClock ? value.format('hh:mm A') : value.format('HH:mm');\n};\n\nexport const TimepickerInput = ({\n disabled,\n uses12hClock,\n time = '12:00',\n ampm = 'AM',\n onChange,\n}: TimepickerProps) => {\n const [selectedTime, setSelectedTime] = useState<string>(() => {\n return formatToString(uses12hClock, getDefaultTime());\n });\n\n useEffect(() => {\n setSelectedTime(formatToString(uses12hClock, moment(`${time} ${ampm}`, 'hh:mm A')));\n }, [time, ampm, uses12hClock]);\n\n const handleChange = useCallback((e: React.ChangeEvent<HTMLInputElement>) => {\n setSelectedTime(e.currentTarget.value);\n }, []);\n\n const handleFocus = useCallback((e) => {\n e.preventDefault();\n e.target.select();\n }, []);\n\n const handleBlur = () => {\n const parsedTime = parseRawInput(selectedTime);\n const value = parsedTime ?? getDefaultTime();\n setSelectedTime(formatToString(uses12hClock, value));\n onChange({ time: value.format('hh:mm'), ampm: value.format('A') });\n };\n\n return (\n <Flex className={css({ width: '145px' })}>\n <TextInput\n aria-label=\"Select time\"\n placeholder={uses12hClock ? '12:00 AM' : '00:00'}\n date-time-type={uses12hClock ? '12' : '24'}\n testId=\"time-input\"\n value={selectedTime}\n isDisabled={disabled}\n onFocus={handleFocus}\n onBlur={handleBlur}\n onChange={handleChange}\n />\n </Flex>\n );\n};\n","export const defaultZoneOffset = '+00:00';\n\nexport const zoneOffsets = [\n '-12:00',\n '-11:00',\n '-10:00',\n '-09:30',\n '-09:00',\n '-08:00',\n '-07:00',\n '-06:00',\n '-05:00',\n '-04:30',\n '-04:00',\n '-03:30',\n '-03:00',\n '-02:00',\n '-01:00',\n '+00:00',\n '+01:00',\n '+02:00',\n '+03:00',\n '+03:30',\n '+04:00',\n '+04:30',\n '+05:00',\n '+05:30',\n '+05:45',\n '+06:00',\n '+06:30',\n '+07:00',\n '+08:00',\n '+08:45',\n '+09:00',\n '+09:30',\n '+10:00',\n '+10:30',\n '+11:00',\n '+11:30',\n '+12:00',\n '+12:45',\n '+13:00',\n '+14:00',\n];\n","import React, { ChangeEvent } from 'react';\nimport { zoneOffsets, defaultZoneOffset } from './utils/zoneOffsets';\n\nimport { Select } from '@contentful/f36-components';\n\nexport type TimezonepickerProps = {\n disabled: boolean;\n onChange: (value: string) => void;\n value?: string;\n};\nexport const TimezonepickerInput = ({\n disabled,\n onChange,\n value = defaultZoneOffset,\n}: TimezonepickerProps) => {\n return (\n <Select\n aria-label=\"Select timezone\"\n testId=\"timezone-input\"\n value={value}\n isDisabled={disabled}\n onChange={(e: ChangeEvent<HTMLSelectElement>) => {\n onChange(e.currentTarget.value);\n }}>\n {zoneOffsets.map((offset) => (\n <Select.Option key={offset} value={offset}>\n UTC{offset}\n </Select.Option>\n ))}\n </Select>\n );\n};\n","// eslint-disable-next-line -- TODO: describe this disable no-restricted-imports\nimport moment from 'moment';\nimport { TimeResult } from '../types';\n\nconst ZONE_RX = /(Z|[+-]\\d{2}[:+]?\\d{2})$/;\n\nfunction startOfToday(format: string) {\n return moment().set({ hours: 0, minutes: 0 }).format(format);\n}\n\nfunction fieldValueToMoment(datetimeString: string | null | undefined): moment.Moment | null {\n if (!datetimeString) {\n return null;\n }\n\n const datetime = moment(datetimeString);\n if (ZONE_RX.test(datetimeString)) {\n datetime.utcOffset(datetimeString);\n }\n return datetime;\n}\n\nfunction timeFromUserInput(input: TimeResult) {\n const timeInput = input.time || '00:00';\n return moment.utc(timeInput + '!' + input.ampm, 'HH:mm!A');\n}\n\n/**\n * Convert the user input object into either a 'moment' value or an\n * invalid symbol.\n *\n * Success is indicated by returning '{valid: value}' and failure is\n * indicated by returning '{invalid: true}'. If 'input.date' is\n * 'null' we return '{valid: null}'\n */\nfunction datetimeFromUserInput(input: TimeResult): {\n invalid?: boolean;\n valid: moment.Moment | null;\n} {\n if (!input.date) {\n return { valid: null };\n }\n\n const time = timeFromUserInput(input);\n\n const date = moment\n .parseZone(input.utcOffset, 'Z')\n .set(input.date.toObject())\n .set({ hours: time.hours(), minutes: time.minutes() });\n\n if (date.isValid()) {\n return { valid: date };\n } else {\n return { invalid: true, valid: null };\n }\n}\n\n/**\n * Parse user input into a string that is stored in the API.\n *\n * Returns a sum type with either the string as the `valid` property\n * or the `invalid` property set to `false`.\n */\nexport function buildFieldValue({\n data,\n usesTime,\n usesTimezone,\n}: {\n data: TimeResult;\n usesTime: boolean;\n usesTimezone: boolean;\n}) {\n const date = datetimeFromUserInput(data);\n if (date.invalid) {\n return {\n invalid: true,\n };\n }\n\n let format;\n if (usesTimezone) {\n format = 'YYYY-MM-DDTHH:mmZ';\n } else if (usesTime) {\n format = 'YYYY-MM-DDTHH:mm';\n } else {\n format = 'YYYY-MM-DD';\n }\n return { valid: date?.valid ? date.valid.format(format) : null, invalid: false };\n}\n\nexport function getDefaultAMPM() {\n return 'AM';\n}\n\nexport function getDefaultUtcOffset() {\n return startOfToday('Z');\n}\n\n/**\n * Create the user input object from the field value.\n */\nexport function userInputFromDatetime({\n value,\n uses12hClock,\n}: {\n value: string | undefined | null;\n uses12hClock: boolean;\n}): TimeResult {\n const datetime = fieldValueToMoment(value);\n\n if (datetime) {\n const timeFormat = uses12hClock ? 'hh:mm' : 'HH:mm';\n return {\n date: datetime,\n time: datetime.format(timeFormat),\n ampm: datetime.format('A'),\n utcOffset: datetime.format('Z'),\n };\n } else {\n return {\n ampm: getDefaultAMPM(),\n utcOffset: getDefaultUtcOffset(),\n };\n }\n}\n","import * as React from 'react';\nimport { css } from 'emotion';\nimport tokens from '@contentful/f36-tokens';\nimport { FieldAPI, FieldConnector, ParametersAPI } from '@contentful/field-editor-shared';\nimport { DatepickerInput } from './DatepickerInput';\nimport { TimepickerInput } from './TimepickerInput';\nimport { TimezonepickerInput } from './TimezonePickerInput';\nimport {\n userInputFromDatetime,\n buildFieldValue,\n getDefaultAMPM,\n getDefaultUtcOffset,\n} from './utils/date';\nimport { TimeFormat, DateTimeFormat, TimeResult } from './types';\n\nimport { TextLink } from '@contentful/f36-components';\n\nexport interface DateEditorProps {\n /**\n * is the field disabled initially\n */\n isInitiallyDisabled: boolean;\n\n /**\n * sdk.field\n */\n field: FieldAPI;\n\n /**\n * sdk.parameters\n */\n parameters?: ParametersAPI & {\n instance?: {\n format?: DateTimeFormat;\n ampm?: TimeFormat;\n };\n };\n}\n\nconst styles = {\n root: css({\n display: 'flex',\n alignItems: 'center',\n }),\n separator: css({\n marginLeft: tokens.spacingM,\n }),\n};\n\nfunction useEffectWithoutFirstRender(callback: Function, deps: Array<any>) {\n const isFirstRun = React.useRef(true);\n React.useEffect(() => {\n if (isFirstRun.current) {\n isFirstRun.current = false;\n return;\n }\n callback();\n // eslint-disable-next-line react-hooks/exhaustive-deps -- TODO: Evaluate the dependencies\n }, deps);\n}\n\nfunction DateEditorContainer({\n initialValue,\n usesTime,\n usesTimezone,\n uses12hClock,\n disabled,\n hasClear,\n onChange,\n}: {\n initialValue: TimeResult;\n usesTime: boolean;\n usesTimezone: boolean;\n uses12hClock: boolean;\n disabled: boolean;\n hasClear: boolean;\n onChange: (value: TimeResult) => void;\n}) {\n const [value, setValue] = React.useState<TimeResult>(() => initialValue);\n\n useEffectWithoutFirstRender(() => {\n onChange(value);\n }, [value]);\n\n return (\n <div data-test-id=\"date-editor\" className={styles.root}>\n <DatepickerInput\n disabled={disabled}\n value={value.date}\n onChange={(date) => {\n setValue((value) => ({\n ...value,\n date,\n }));\n }}\n />\n {usesTime && (\n <>\n <div className={styles.separator} />\n <TimepickerInput\n disabled={disabled}\n time={value.time}\n ampm={value.ampm}\n onChange={({ time, ampm }) => {\n setValue((value) => ({\n ...value,\n time,\n ampm,\n }));\n }}\n uses12hClock={uses12hClock}\n />\n </>\n )}\n {usesTimezone && (\n <>\n <div className={styles.separator} />\n <TimezonepickerInput\n disabled={disabled}\n value={value.utcOffset}\n onChange={(utcOffset) => {\n setValue((value) => ({\n ...value,\n utcOffset,\n }));\n }}\n />\n </>\n )}\n {hasClear && (\n <>\n <div className={styles.separator} />\n <TextLink\n as=\"button\"\n isDisabled={disabled}\n testId=\"date-clear\"\n onClick={() => {\n setValue({\n date: undefined,\n time: undefined,\n ampm: getDefaultAMPM(),\n utcOffset: getDefaultUtcOffset(),\n });\n }}>\n Clear\n </TextLink>\n </>\n )}\n </div>\n );\n}\n\nexport function DateEditor(props: DateEditorProps) {\n const { field, parameters } = props;\n\n const formatParam = parameters?.instance?.format ?? 'timeZ';\n const ampmParam = parameters?.instance?.ampm ?? '24';\n\n const usesTime = formatParam !== 'dateonly';\n const usesTimezone = formatParam === 'timeZ';\n const uses12hClock = ampmParam === '12';\n\n return (\n <FieldConnector<string>\n field={field}\n isInitiallyDisabled={props.isInitiallyDisabled}\n throttle={0}>\n {({ value, disabled, setValue, externalReset }) => {\n const datetimeValue = userInputFromDatetime({\n value,\n uses12hClock,\n });\n return (\n <DateEditorContainer\n initialValue={datetimeValue}\n uses12hClock={uses12hClock}\n usesTimezone={usesTimezone}\n usesTime={usesTime}\n disabled={disabled}\n hasClear={Boolean(value)}\n onChange={(data) => {\n const fieldValue = buildFieldValue({ data, usesTime, usesTimezone });\n if (fieldValue.invalid) {\n return;\n }\n // if value is present - then override it with a new one\n // if value is not present - then set a new one if it's not nullable only\n if (Boolean(value) || (!value && Boolean(fieldValue.valid))) {\n setValue(fieldValue.valid);\n }\n }}\n key={`date-container-${externalReset}`}\n />\n );\n }}\n </FieldConnector>\n );\n}\n\nDateEditor.defaultProps = {\n isInitiallyDisabled: true,\n};\n"],"names":["YEAR_RANGE","styles","root","css","maxWidth","DatepickerInput","props","useMemo","fromDate","Date","setFullYear","getFullYear","toDate","React","Datepicker","className","selected","value","onSelect","day","onChange","moment","inputProps","isDisabled","disabled","placeholder","validInputFormats","parseRawInput","raw","time","i","length","date","isValid","getDefaultTime","formatToString","uses12hClock","format","TimepickerInput","ampm","useState","selectedTime","setSelectedTime","useEffect","handleChange","useCallback","e","currentTarget","handleFocus","preventDefault","target","select","handleBlur","parsedTime","Flex","width","TextInput","testId","onFocus","onBlur","defaultZoneOffset","zoneOffsets","TimezonepickerInput","Select","map","offset","Option","key","ZONE_RX","startOfToday","set","hours","minutes","fieldValueToMoment","datetimeString","datetime","test","utcOffset","timeFromUserInput","input","timeInput","utc","datetimeFromUserInput","valid","parseZone","toObject","invalid","buildFieldValue","data","usesTime","usesTimezone","getDefaultAMPM","getDefaultUtcOffset","userInputFromDatetime","timeFormat","display","alignItems","separator","marginLeft","tokens","spacingM","useEffectWithoutFirstRender","callback","deps","isFirstRun","current","DateEditorContainer","initialValue","hasClear","setValue","TextLink","as","onClick","undefined","DateEditor","field","parameters","formatParam","instance","ampmParam","FieldConnector","isInitiallyDisabled","throttle","externalReset","datetimeValue","Boolean","fieldValue","defaultProps"],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
package/dist/utils/date.d.ts
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@contentful/field-editor-date",
|
|
3
|
-
"version": "1.1.
|
|
3
|
+
"version": "1.1.10-beta.1",
|
|
4
4
|
"main": "dist/index.js",
|
|
5
5
|
"module": "dist/field-editor-date.esm.js",
|
|
6
6
|
"typings": "dist/index.d.ts",
|
|
@@ -25,16 +25,14 @@
|
|
|
25
25
|
"dependencies": {
|
|
26
26
|
"@contentful/f36-components": "^4.9.0",
|
|
27
27
|
"@contentful/f36-tokens": "^4.0.0",
|
|
28
|
+
"@contentful/f36-datepicker": "^4.1.0-beta.8",
|
|
28
29
|
"@contentful/field-editor-shared": "^1.1.3",
|
|
29
30
|
"emotion": "^10.0.17",
|
|
30
|
-
"
|
|
31
|
-
"lodash-es": "^4.17.15",
|
|
32
|
-
"moment": "^2.20.0",
|
|
33
|
-
"pikaday": "^1.8.2"
|
|
31
|
+
"moment": "^2.20.0"
|
|
34
32
|
},
|
|
35
33
|
"devDependencies": {
|
|
36
34
|
"@babel/core": "^7.7.4",
|
|
37
|
-
"@contentful/field-editor-test-utils": "^1.2.
|
|
35
|
+
"@contentful/field-editor-test-utils": "^1.2.2",
|
|
38
36
|
"@types/pikaday": "^1.7.4"
|
|
39
37
|
},
|
|
40
38
|
"peerDependencies": {
|
|
@@ -49,6 +47,5 @@
|
|
|
49
47
|
"diagnostics": false
|
|
50
48
|
}
|
|
51
49
|
}
|
|
52
|
-
}
|
|
53
|
-
"gitHead": "1752c57ed3ec458963547426e137091e58c0d44a"
|
|
50
|
+
}
|
|
54
51
|
}
|
package/CHANGELOG.md
DELETED
|
@@ -1,208 +0,0 @@
|
|
|
1
|
-
# Change Log
|
|
2
|
-
|
|
3
|
-
All notable changes to this project will be documented in this file.
|
|
4
|
-
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
|
-
|
|
6
|
-
## [1.1.9](https://github.com/contentful/field-editors/compare/@contentful/field-editor-date@1.1.8...@contentful/field-editor-date@1.1.9) (2022-07-29)
|
|
7
|
-
|
|
8
|
-
**Note:** Version bump only for package @contentful/field-editor-date
|
|
9
|
-
|
|
10
|
-
## [1.1.8](https://github.com/contentful/field-editors/compare/@contentful/field-editor-date@1.1.7...@contentful/field-editor-date@1.1.8) (2022-07-11)
|
|
11
|
-
|
|
12
|
-
**Note:** Version bump only for package @contentful/field-editor-date
|
|
13
|
-
|
|
14
|
-
## [1.1.7](https://github.com/contentful/field-editors/compare/@contentful/field-editor-date@1.1.6...@contentful/field-editor-date@1.1.7) (2022-06-22)
|
|
15
|
-
|
|
16
|
-
**Note:** Version bump only for package @contentful/field-editor-date
|
|
17
|
-
|
|
18
|
-
## [1.1.6](https://github.com/contentful/field-editors/compare/@contentful/field-editor-date@1.1.5...@contentful/field-editor-date@1.1.6) (2022-05-27)
|
|
19
|
-
|
|
20
|
-
### Bug Fixes
|
|
21
|
-
|
|
22
|
-
- temporary revert of date editor changes ([#1153](https://github.com/contentful/field-editors/issues/1153)) ([7002aab](https://github.com/contentful/field-editors/commit/7002aab9bd82312a585903c7411558f79b66c964))
|
|
23
|
-
|
|
24
|
-
## [1.1.5](https://github.com/contentful/field-editors/compare/@contentful/field-editor-date@1.1.4...@contentful/field-editor-date@1.1.5) (2022-05-24)
|
|
25
|
-
|
|
26
|
-
### Bug Fixes
|
|
27
|
-
|
|
28
|
-
- change GMT to UTC in datepicker [TOL-60] ([#1149](https://github.com/contentful/field-editors/issues/1149)) ([a407b1a](https://github.com/contentful/field-editors/commit/a407b1a0b9d4861e3d0cc2f7bed17ac90e7489c0))
|
|
29
|
-
|
|
30
|
-
## [1.1.4](https://github.com/contentful/field-editors/compare/@contentful/field-editor-date@1.1.3...@contentful/field-editor-date@1.1.4) (2022-05-23)
|
|
31
|
-
|
|
32
|
-
### Bug Fixes
|
|
33
|
-
|
|
34
|
-
- increased time input width in date picker to fix visual bug [TOL-122] ([#1150](https://github.com/contentful/field-editors/issues/1150)) ([f992f3b](https://github.com/contentful/field-editors/commit/f992f3b333bfac8469cf84cb0f64120526136448))
|
|
35
|
-
|
|
36
|
-
## [1.1.3](https://github.com/contentful/field-editors/compare/@contentful/field-editor-date@1.1.2...@contentful/field-editor-date@1.1.3) (2022-05-20)
|
|
37
|
-
|
|
38
|
-
### Bug Fixes
|
|
39
|
-
|
|
40
|
-
- made timezone picker match webapp, added guessing [SHE-831] ([#1146](https://github.com/contentful/field-editors/issues/1146)) ([9d98a31](https://github.com/contentful/field-editors/commit/9d98a3171aa4d2fa9641e6a10a92221686f934c5))
|
|
41
|
-
|
|
42
|
-
## [1.1.2](https://github.com/contentful/field-editors/compare/@contentful/field-editor-date@1.1.1...@contentful/field-editor-date@1.1.2) (2022-02-15)
|
|
43
|
-
|
|
44
|
-
### Bug Fixes
|
|
45
|
-
|
|
46
|
-
- bump f36 packages ([#1025](https://github.com/contentful/field-editors/issues/1025)) ([ec37a40](https://github.com/contentful/field-editors/commit/ec37a4000db7cd75c66dd9621136b2272c9feeea))
|
|
47
|
-
|
|
48
|
-
## [1.1.1](https://github.com/contentful/field-editors/compare/@contentful/field-editor-date@1.1.0...@contentful/field-editor-date@1.1.1) (2022-02-14)
|
|
49
|
-
|
|
50
|
-
**Note:** Version bump only for package @contentful/field-editor-date
|
|
51
|
-
|
|
52
|
-
# [1.1.0](https://github.com/contentful/field-editors/compare/@contentful/field-editor-date@1.0.3...@contentful/field-editor-date@1.1.0) (2022-01-11)
|
|
53
|
-
|
|
54
|
-
### Features
|
|
55
|
-
|
|
56
|
-
- bump f36 packages to stable v4 [BAU-521] ([#988](https://github.com/contentful/field-editors/issues/988)) ([419cf56](https://github.com/contentful/field-editors/commit/419cf56692179b074fcfa2743469d5265ed98429))
|
|
57
|
-
|
|
58
|
-
## [1.0.3](https://github.com/contentful/field-editors/compare/@contentful/field-editor-date@1.0.2...@contentful/field-editor-date@1.0.3) (2021-12-23)
|
|
59
|
-
|
|
60
|
-
### Bug Fixes
|
|
61
|
-
|
|
62
|
-
- markdown buttons ([#968](https://github.com/contentful/field-editors/issues/968)) ([9803b98](https://github.com/contentful/field-editors/commit/9803b98c25d92df6148686ffe2749a77f7efdbb9))
|
|
63
|
-
|
|
64
|
-
## [1.0.2](https://github.com/contentful/field-editors/compare/@contentful/field-editor-date@1.0.1...@contentful/field-editor-date@1.0.2) (2021-12-20)
|
|
65
|
-
|
|
66
|
-
**Note:** Version bump only for package @contentful/field-editor-date
|
|
67
|
-
|
|
68
|
-
## [1.0.1](https://github.com/contentful/field-editors/compare/@contentful/field-editor-date@1.0.0...@contentful/field-editor-date@1.0.1) (2021-11-17)
|
|
69
|
-
|
|
70
|
-
### Bug Fixes
|
|
71
|
-
|
|
72
|
-
- **card-actions:** update forma 36 to fix card actions click issue ([#927](https://github.com/contentful/field-editors/issues/927)) ([3dfdef2](https://github.com/contentful/field-editors/commit/3dfdef2c2b0045f12ea94ddafca89a8e9f25e7d0))
|
|
73
|
-
|
|
74
|
-
# [1.0.0](https://github.com/contentful/field-editors/compare/@contentful/field-editor-date@0.13.0...@contentful/field-editor-date@1.0.0) (2021-11-04)
|
|
75
|
-
|
|
76
|
-
**Note:** Version bump only for package @contentful/field-editor-date
|
|
77
|
-
|
|
78
|
-
# [0.13.0](https://github.com/contentful/field-editors/compare/@contentful/field-editor-date@0.12.6...@contentful/field-editor-date@0.13.0) (2021-11-04)
|
|
79
|
-
|
|
80
|
-
### Features
|
|
81
|
-
|
|
82
|
-
- Forma v4 components adoption ([#805](https://github.com/contentful/field-editors/issues/805)) ([526bde6](https://github.com/contentful/field-editors/commit/526bde6e10e0ee3789705ec10fb31489af7ca59e))
|
|
83
|
-
|
|
84
|
-
### BREAKING CHANGES
|
|
85
|
-
|
|
86
|
-
- adopts a new Forma v4 beta
|
|
87
|
-
|
|
88
|
-
## [0.12.6](https://github.com/contentful/field-editors/compare/@contentful/field-editor-date@0.12.5...@contentful/field-editor-date@0.12.6) (2021-10-14)
|
|
89
|
-
|
|
90
|
-
**Note:** Version bump only for package @contentful/field-editor-date
|
|
91
|
-
|
|
92
|
-
## [0.12.5](https://github.com/contentful/field-editors/compare/@contentful/field-editor-date@0.12.4...@contentful/field-editor-date@0.12.5) (2021-10-06)
|
|
93
|
-
|
|
94
|
-
**Note:** Version bump only for package @contentful/field-editor-date
|
|
95
|
-
|
|
96
|
-
## [0.12.4](https://github.com/contentful/field-editors/compare/@contentful/field-editor-date@0.12.3...@contentful/field-editor-date@0.12.4) (2021-09-17)
|
|
97
|
-
|
|
98
|
-
**Note:** Version bump only for package @contentful/field-editor-date
|
|
99
|
-
|
|
100
|
-
## [0.12.3](https://github.com/contentful/field-editors/compare/@contentful/field-editor-date@0.12.2...@contentful/field-editor-date@0.12.3) (2021-09-16)
|
|
101
|
-
|
|
102
|
-
**Note:** Version bump only for package @contentful/field-editor-date
|
|
103
|
-
|
|
104
|
-
## [0.12.2](https://github.com/contentful/field-editors/compare/@contentful/field-editor-date@0.12.1...@contentful/field-editor-date@0.12.2) (2021-08-19)
|
|
105
|
-
|
|
106
|
-
**Note:** Version bump only for package @contentful/field-editor-date
|
|
107
|
-
|
|
108
|
-
## [0.12.1](https://github.com/contentful/field-editors/compare/@contentful/field-editor-date@0.12.0...@contentful/field-editor-date@0.12.1) (2021-07-29)
|
|
109
|
-
|
|
110
|
-
**Note:** Version bump only for package @contentful/field-editor-date
|
|
111
|
-
|
|
112
|
-
# [0.12.0](https://github.com/contentful/field-editors/compare/@contentful/field-editor-date@0.11.6...@contentful/field-editor-date@0.12.0) (2021-07-23)
|
|
113
|
-
|
|
114
|
-
### Features
|
|
115
|
-
|
|
116
|
-
- 💡 new color tokens ([#778](https://github.com/contentful/field-editors/issues/778)) ([fba548d](https://github.com/contentful/field-editors/commit/fba548de32305016df7f2685634eefb14294828f))
|
|
117
|
-
|
|
118
|
-
## [0.11.6](https://github.com/contentful/field-editors/compare/@contentful/field-editor-date@0.11.3...@contentful/field-editor-date@0.11.6) (2021-07-06)
|
|
119
|
-
|
|
120
|
-
**Note:** Version bump only for package @contentful/field-editor-date
|
|
121
|
-
|
|
122
|
-
## [0.11.5](https://github.com/contentful/field-editors/compare/@contentful/field-editor-date@0.11.3...@contentful/field-editor-date@0.11.5) (2021-07-06)
|
|
123
|
-
|
|
124
|
-
**Note:** Version bump only for package @contentful/field-editor-date
|
|
125
|
-
|
|
126
|
-
## [0.11.4](https://github.com/contentful/field-editors/compare/@contentful/field-editor-date@0.11.3...@contentful/field-editor-date@0.11.4) (2021-06-23)
|
|
127
|
-
|
|
128
|
-
**Note:** Version bump only for package @contentful/field-editor-date
|
|
129
|
-
|
|
130
|
-
## [0.11.3](https://github.com/contentful/field-editors/compare/@contentful/field-editor-date@0.11.2...@contentful/field-editor-date@0.11.3) (2021-06-23)
|
|
131
|
-
|
|
132
|
-
**Note:** Version bump only for package @contentful/field-editor-date
|
|
133
|
-
|
|
134
|
-
## [0.11.2](https://github.com/contentful/field-editors/compare/@contentful/field-editor-date@0.11.1...@contentful/field-editor-date@0.11.2) (2021-06-22)
|
|
135
|
-
|
|
136
|
-
**Note:** Version bump only for package @contentful/field-editor-date
|
|
137
|
-
|
|
138
|
-
## [0.11.1](https://github.com/contentful/field-editors/compare/@contentful/field-editor-date@0.11.0...@contentful/field-editor-date@0.11.1) (2021-03-05)
|
|
139
|
-
|
|
140
|
-
**Note:** Version bump only for package @contentful/field-editor-date
|
|
141
|
-
|
|
142
|
-
# [0.11.0](https://github.com/contentful/field-editors/compare/@contentful/field-editor-date@0.10.2...@contentful/field-editor-date@0.11.0) (2021-02-19)
|
|
143
|
-
|
|
144
|
-
### Features
|
|
145
|
-
|
|
146
|
-
- bump min version of forma-36 ([#606](https://github.com/contentful/field-editors/issues/606)) ([fd57c7a](https://github.com/contentful/field-editors/commit/fd57c7a4312766af38c01507f17706ab22992617))
|
|
147
|
-
|
|
148
|
-
## [0.10.2](https://github.com/contentful/field-editors/compare/@contentful/field-editor-date@0.10.1...@contentful/field-editor-date@0.10.2) (2021-02-09)
|
|
149
|
-
|
|
150
|
-
**Note:** Version bump only for package @contentful/field-editor-date
|
|
151
|
-
|
|
152
|
-
## [0.10.1](https://github.com/contentful/field-editors/compare/@contentful/field-editor-date@0.10.0...@contentful/field-editor-date@0.10.1) (2021-02-01)
|
|
153
|
-
|
|
154
|
-
**Note:** Version bump only for package @contentful/field-editor-date
|
|
155
|
-
|
|
156
|
-
# [0.10.0](https://github.com/contentful/field-editors/compare/@contentful/field-editor-date@0.9.2...@contentful/field-editor-date@0.10.0) (2021-01-20)
|
|
157
|
-
|
|
158
|
-
### Features
|
|
159
|
-
|
|
160
|
-
- update minimal forma-36 versions to use updated design ([#565](https://github.com/contentful/field-editors/issues/565)) ([332c734](https://github.com/contentful/field-editors/commit/332c734bfaf54f0e9773fcbb460d743b1f5459ec))
|
|
161
|
-
|
|
162
|
-
## [0.9.2](https://github.com/contentful/field-editors/compare/@contentful/field-editor-date@0.9.1...@contentful/field-editor-date@0.9.2) (2021-01-15)
|
|
163
|
-
|
|
164
|
-
### Bug Fixes
|
|
165
|
-
|
|
166
|
-
- 🐛 small layout adjustments ([#555](https://github.com/contentful/field-editors/issues/555)) ([235c594](https://github.com/contentful/field-editors/commit/235c5941db152d2921a9ef134c1a71b0069a4dc2))
|
|
167
|
-
|
|
168
|
-
## [0.9.1](https://github.com/contentful/field-editors/compare/@contentful/field-editor-date@0.9.0...@contentful/field-editor-date@0.9.1) (2021-01-12)
|
|
169
|
-
|
|
170
|
-
### Bug Fixes
|
|
171
|
-
|
|
172
|
-
- use forma tokens for border radiuses ([#553](https://github.com/contentful/field-editors/issues/553)) ([f4eb745](https://github.com/contentful/field-editors/commit/f4eb74568c7bc0cc25028542821ba64e50e226bd))
|
|
173
|
-
|
|
174
|
-
# [0.9.0](https://github.com/contentful/field-editors/compare/@contentful/field-editor-date@0.8.4...@contentful/field-editor-date@0.9.0) (2021-01-12)
|
|
175
|
-
|
|
176
|
-
### Features
|
|
177
|
-
|
|
178
|
-
- update minimal required Forma version to the 3.73.12 ([#552](https://github.com/contentful/field-editors/issues/552)) ([2816fd9](https://github.com/contentful/field-editors/commit/2816fd960c28815faebf49a9ef8f4c4c0d91fc36))
|
|
179
|
-
|
|
180
|
-
## [0.8.4](https://github.com/contentful/field-editors/compare/@contentful/field-editor-date@0.8.3...@contentful/field-editor-date@0.8.4) (2020-12-16)
|
|
181
|
-
|
|
182
|
-
**Note:** Version bump only for package @contentful/field-editor-date
|
|
183
|
-
|
|
184
|
-
## [0.8.3](https://github.com/contentful/field-editors/compare/@contentful/field-editor-date@0.8.2...@contentful/field-editor-date@0.8.3) (2020-11-06)
|
|
185
|
-
|
|
186
|
-
**Note:** Version bump only for package @contentful/field-editor-date
|
|
187
|
-
|
|
188
|
-
## [0.8.2](https://github.com/contentful/field-editors/compare/@contentful/field-editor-date@0.8.1...@contentful/field-editor-date@0.8.2) (2020-11-06)
|
|
189
|
-
|
|
190
|
-
**Note:** Version bump only for package @contentful/field-editor-date
|
|
191
|
-
|
|
192
|
-
## [0.8.1](https://github.com/contentful/field-editors/compare/@contentful/field-editor-date@0.8.0...@contentful/field-editor-date@0.8.1) (2020-11-05)
|
|
193
|
-
|
|
194
|
-
**Note:** Version bump only for package @contentful/field-editor-date
|
|
195
|
-
|
|
196
|
-
# [0.8.0](https://github.com/contentful/field-editors/compare/@contentful/field-editor-date@0.7.1...@contentful/field-editor-date@0.8.0) (2020-10-28)
|
|
197
|
-
|
|
198
|
-
### Bug Fixes
|
|
199
|
-
|
|
200
|
-
- 🐛 isInitiallyDisabled being null in examples ([#414](https://github.com/contentful/field-editors/issues/414)) ([df53405](https://github.com/contentful/field-editors/commit/df534055cfa64c533725cb5bca392a0a82e54be6))
|
|
201
|
-
|
|
202
|
-
### Features
|
|
203
|
-
|
|
204
|
-
- 🎸 do not show link actions on full reference/media fields ([#437](https://github.com/contentful/field-editors/issues/437)) ([4d11496](https://github.com/contentful/field-editors/commit/4d11496acda86046710e650948b7d87c97925205))
|
|
205
|
-
|
|
206
|
-
## [0.7.1](https://github.com/contentful/field-editors/compare/@contentful/field-editor-date@0.7.0...@contentful/field-editor-date@0.7.1) (2020-08-24)
|
|
207
|
-
|
|
208
|
-
**Note:** Version bump only for package @contentful/field-editor-date
|
package/LICENSE
DELETED
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
The MIT License (MIT)
|
|
2
|
-
|
|
3
|
-
Copyright (c) 2020 Contentful
|
|
4
|
-
|
|
5
|
-
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
-
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
-
in the Software without restriction, including without limitation the rights
|
|
8
|
-
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
-
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
-
furnished to do so, subject to the following conditions:
|
|
11
|
-
|
|
12
|
-
The above copyright notice and this permission notice shall be included in all
|
|
13
|
-
copies or substantial portions of the Software.
|
|
14
|
-
|
|
15
|
-
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
-
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
-
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
-
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
-
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
-
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
-
SOFTWARE.
|