@elliemae/ds-date-picker 1.61.10 → 1.61.13
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/cjs/DSDatePicker.js.map +1 -1
- package/cjs/components/DSDatePickerImpl.js.map +1 -1
- package/cjs/components/DatePickerController/DatePickerController.js.map +1 -1
- package/cjs/components/DatePickerDay/DatePickerDay.js.map +1 -1
- package/cjs/components/DatePickerDropdown.js.map +1 -1
- package/cjs/components/DatePickerHeader/DatePickerHeader.js.map +1 -1
- package/cjs/components/DatePickerNavigation/DatePickerNavigation.js.map +1 -1
- package/cjs/components/DatePickerPicker/DatePickerPicker.js.map +1 -1
- package/cjs/components/DatePickerRange/DatePickerRange.js.map +1 -1
- package/cjs/components/DatePickerRangeHeader/DatePickerRangeHeader.js.map +1 -1
- package/cjs/components/DatePickerRenderMonth/DatePickerRenderMonth.js.map +1 -1
- package/cjs/components/DatePickerSingleDate/DatePickerSingleDate.js.map +1 -1
- package/cjs/components/SingleRangeDateSwitcher/SingleRangeDateSwitcher.js.map +1 -1
- package/cjs/defaultPhrases.js.map +1 -1
- package/esm/DSDatePicker.js.map +1 -1
- package/esm/components/DSDatePickerImpl.js.map +1 -1
- package/esm/components/DatePickerController/DatePickerController.js.map +1 -1
- package/esm/components/DatePickerDay/DatePickerDay.js.map +1 -1
- package/esm/components/DatePickerDropdown.js.map +1 -1
- package/esm/components/DatePickerHeader/DatePickerHeader.js.map +1 -1
- package/esm/components/DatePickerNavigation/DatePickerNavigation.js.map +1 -1
- package/esm/components/DatePickerPicker/DatePickerPicker.js.map +1 -1
- package/esm/components/DatePickerRange/DatePickerRange.js.map +1 -1
- package/esm/components/DatePickerRangeHeader/DatePickerRangeHeader.js.map +1 -1
- package/esm/components/DatePickerRenderMonth/DatePickerRenderMonth.js.map +1 -1
- package/esm/components/DatePickerSingleDate/DatePickerSingleDate.js.map +1 -1
- package/esm/components/SingleRangeDateSwitcher/SingleRangeDateSwitcher.js.map +1 -1
- package/esm/defaultPhrases.js.map +1 -1
- package/package.json +7 -7
package/cjs/DSDatePicker.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DSDatePicker.js","sources":["../../src/DSDatePicker.tsx"],"sourcesContent":["/* eslint-disable max-lines */\nimport React from 'react';\nimport { PropTypes, describe } from 'react-desc';\nimport 'react-dates/initialize';\nimport { convertPropToCssClassName } from '@elliemae/ds-classnames';\nimport moment from 'moment';\nimport { SingleDatePickerPhrases } from './defaultPhrases';\nimport {\n DatePickerNavigation,\n DatePickerDay,\n DatePickerPicker,\n DatePickerDropdown,\n DatePickerSingleDate,\n DatePickerHeader,\n DatePickerRange,\n DatePickerRangeHeader,\n SingleRangeDateSwitcher,\n renderMonthElement,\n} from './components';\nimport DSDatePickerImpl from './components/DSDatePickerImpl';\nimport DSDatePickerController from './components/DatePickerController/DatePickerController';\nimport { PickerPropsTypes, Picker } from './components/DatePickerPicker/DatePickerPicker';\n\ninterface DSDatePickerPropsType {\n containerProps: {};\n id: string;\n appendToBody: boolean;\n className: string;\n date: any;\n value: any;\n placeholder: string;\n disabled: boolean;\n required: boolean;\n readOnly: boolean;\n hasError: boolean;\n screenReaderInputMessage: boolean;\n enableOutsideDays: boolean;\n initialVisibleMonth: moment.Moment;\n firstDayOfWeek: number;\n keepOpenOnDateSelect: boolean;\n hideKeyboardShortcutsPanel: boolean;\n onChange: () => void;\n onDateChange: undefined | (() => void);\n onPrevMonthClick: () => void;\n onNextMonthClick: () => void;\n onClose: () => void;\n onFocus: () => void;\n onBlur: () => void;\n phrases: SingleDatePickerPhrases;\n displayFormat: boolean;\n displayFormatDay: boolean;\n transitionDuration: number;\n verticalSpacing: number;\n isDayBlocked: () => boolean;\n isOutsideRange: () => boolean;\n isDayHighlighted: () => boolean;\n numberOfMonths: number;\n openDirection: boolean;\n tabIndex: boolean;\n zIndex: boolean;\n pickerProps: {};\n calendarProps: {};\n autoClear: boolean;\n focusCurrentDate: boolean;\n}\ntype DSDatePickerType = React.ComponentType<DSDatePickerPropsType>;\n\nconst DSDatePicker: DSDatePickerType = ({\n containerProps = {},\n id = '',\n appendToBody = true,\n className = '',\n date,\n value,\n placeholder = '',\n disabled = false,\n required = false,\n readOnly = false,\n hasError = false,\n screenReaderInputMessage = 'Select date',\n enableOutsideDays = true,\n initialVisibleMonth = moment(),\n firstDayOfWeek = 0,\n keepOpenOnDateSelect = false,\n hideKeyboardShortcutsPanel = true,\n onChange = () => null,\n onDateChange = undefined,\n onPrevMonthClick = () => null,\n onNextMonthClick = () => null,\n onClose = () => null,\n onFocus = () => null,\n onBlur = () => null,\n phrases = SingleDatePickerPhrases,\n displayFormat = 'L',\n displayFormatDay = 'D',\n transitionDuration = 0,\n verticalSpacing = 0,\n isDayBlocked = () => false,\n isOutsideRange = () => false,\n isDayHighlighted = () => false,\n numberOfMonths = 1,\n openDirection = 'down',\n tabIndex = '',\n zIndex = 1,\n pickerProps = {},\n calendarProps = {},\n autoClear = false,\n focusCurrentDate = false,\n}) => {\n const { cssClassName } = convertPropToCssClassName('datepicker', className, {\n hasError,\n readOnly,\n disabled,\n id,\n });\n const safeDate = date || value;\n return (\n <div className={cssClassName} {...containerProps} style={{ minWidth: '140px' }}>\n <DSDatePickerImpl\n appendToBody={appendToBody}\n autoClear={autoClear}\n date={safeDate}\n disabled={disabled}\n displayFormat={displayFormat}\n displayFormatDay={displayFormatDay}\n enableOutsideDays={enableOutsideDays}\n firstDayOfWeek={firstDayOfWeek}\n hideKeyboardShortcutsPanel={hideKeyboardShortcutsPanel}\n initialVisibleMonth={() => (initialVisibleMonth ? moment(initialVisibleMonth) : moment(safeDate))}\n isDayBlocked={isDayBlocked}\n isDayHighlighted={isDayHighlighted}\n isOutsideRange={isOutsideRange === true || isOutsideRange === false ? () => isOutsideRange : isOutsideRange}\n keepOpenOnDateSelect={keepOpenOnDateSelect}\n numberOfMonths={numberOfMonths}\n onBlur={onBlur}\n onClose={onClose}\n onChange={onChange}\n onDateChange={(...args) => {\n if (onDateChange) onDateChange(...args);\n }}\n onFocus={onFocus}\n onNextMonthClick={onNextMonthClick}\n onPrevMonthClick={onPrevMonthClick}\n openDirection={openDirection}\n phrases={phrases}\n placeholder={placeholder}\n readOnly={readOnly}\n required={required}\n screenReaderInputMessage={screenReaderInputMessage}\n transitionDuration={transitionDuration}\n value={safeDate}\n verticalSpacing={verticalSpacing}\n tabIndex={tabIndex}\n zIndex={zIndex}\n pickerProps={pickerProps}\n calendarProps={calendarProps}\n focusCurrentDate={focusCurrentDate}\n />\n </div>\n );\n};\n\nconst datePickerProps = {\n containerProps: PropTypes.shape({}).description('Set of Properties attached to the main container'),\n id: PropTypes.string.description('components id'),\n appendToBody: PropTypes.bool.description('append component to body or not').defaultValue(true),\n className: PropTypes.string.description('html class attribute'),\n date: PropTypes.instanceOf(Date, moment).description('selected date').defaultValue(undefined),\n value: PropTypes.instanceOf(Date, moment).description('value'),\n placeholder: PropTypes.string.description('input placeholder value'),\n autoClear: PropTypes.bool\n .description('autoclears the input onblur if the date is not completely set')\n .defaultValue(false),\n disabled: PropTypes.bool.description('disable component or not').defaultValue(false),\n required: PropTypes.bool.description('value is required or not').defaultValue(false),\n readOnly: PropTypes.bool.description('is read only or not').defaultValue(false),\n hasError: PropTypes.bool.description('set error state').defaultValue(false),\n screenReaderInputMessage: PropTypes.string\n .description('message to anounce by screen reader')\n .defaultValue('select date'),\n enableOutsideDays: PropTypes.bool.description('enable days oustide month or not').defaultValue(true),\n initialVisibleMonth: PropTypes.instanceOf(Date, moment).description('initial month to display'),\n firstDayOfWeek: PropTypes.number.description('first day of week').defaultValue(0),\n keepOpenOnDateSelect: PropTypes.bool.description('keep picker open when a date is selected').defaultValue(false),\n hideKeyboardShortcutsPanel: PropTypes.bool.description('hide keyabord shortcut panel or not').defaultValue(true),\n onChange: PropTypes.func.description(\n `\n function executed when input changes. This could trigger with invalid dates. It returns a string and a moment\n if the date is valid.\n `,\n ),\n onDateChange: PropTypes.func.description(\n 'function executed when date changes. This doesnt trigger with invalid dates. It returns a moment object',\n ),\n onPrevMonthClick: PropTypes.func.description('function executed when clicking on prev month button'),\n onNextMonthClick: PropTypes.func.description('function executed when clicking on next month button'),\n onBlur: PropTypes.func.description('function executed when component loses focus'),\n onClose: PropTypes.func.description('function executed when component closes'),\n onFocus: PropTypes.func.description('function executed when component gains focus'),\n phrases: PropTypes.shape({\n calendarLabel: PropTypes.string,\n closeDatePicker: PropTypes.string,\n clearDates: PropTypes.string,\n focusStartDate: PropTypes.string,\n jumpToPrevMonth: PropTypes.string,\n jumpToNextMonth: PropTypes.string,\n keyboardShortcuts: PropTypes.string,\n showKeyboardShortcutsPanel: PropTypes.string,\n hideKeyboardShortcutsPanel: PropTypes.string,\n openThisPanel: PropTypes.string,\n enterKey: PropTypes.string,\n leftArrowRightArrow: PropTypes.string,\n upArrowDownArrow: PropTypes.string,\n pageUpPageDown: PropTypes.string,\n homeEnd: PropTypes.string,\n escape: PropTypes.string,\n questionMark: PropTypes.string,\n selectFocusedDate: PropTypes.string,\n moveFocusByOneDay: PropTypes.string,\n moveFocusByOneWeek: PropTypes.string,\n moveFocusByOneMonth: PropTypes.string,\n moveFocustoStartAndEndOfWeek: PropTypes.string,\n returnFocusToInput: PropTypes.string,\n keyboardNavigationInstructions: PropTypes.string,\n chooseAvailableStartDate: PropTypes.func,\n chooseAvailableEndDate: PropTypes.func,\n dateIsUnavailable: PropTypes.func,\n dateIsSelected: PropTypes.func,\n })\n .description('react-dates phrases')\n .defaultValue(SingleDatePickerPhrases),\n displayFormat: PropTypes.string.description('display format').defaultValue('L'),\n displayFormatDay: PropTypes.string.description('display format day').defaultValue('D'),\n transitionDuration: PropTypes.number.description('transition duration').defaultValue(0),\n verticalSpacing: PropTypes.number.description('vertical spacing'),\n isDayBlocked: PropTypes.func.description('function that returns each day and disables desired dates'),\n isOutsideRange: PropTypes.func.description('function that returns each day and disables outisde range dates'),\n isDayHighlighted: PropTypes.func.description('function that returns each day and higlights desired dates'),\n numberOfMonths: PropTypes.number.description('amount of months'),\n openDirection: PropTypes.string.description('open direction of the popup').defaultValue('down'),\n tabIndex: PropTypes.number.description('overrides tab index of the element'),\n zIndex: PropTypes.string.description('overrides z-index of the element'),\n pickerProps: PropTypes.shape(PickerPropsTypes).description('props to be passed to the picker container'),\n calendarProps: PropTypes.shape({ tabIndex: PropTypes.number }).description(\n 'props to be passes to the calendar container',\n ),\n focusCurrentDate: PropTypes.bool.description('Wheter to focus current date on calendar').defaultValue(false),\n};\n\nDSDatePicker.propTypes = datePickerProps;\n\nconst DatePickerWithSchema = describe(DSDatePicker);\nDatePickerWithSchema.propTypes = datePickerProps;\n\nexport {\n DatePickerNavigation,\n DatePickerDay,\n DatePickerPicker,\n DSDatePickerController,\n DatePickerDropdown,\n DatePickerSingleDate,\n DatePickerHeader,\n DatePickerRange,\n DatePickerRangeHeader,\n SingleRangeDateSwitcher,\n Picker,\n renderMonthElement,\n DatePickerWithSchema,\n};\n\nexport default DSDatePicker;\n"],"names":["DSDatePicker","containerProps","id","appendToBody","className","date","value","placeholder","disabled","required","readOnly","hasError","screenReaderInputMessage","enableOutsideDays","initialVisibleMonth","moment","firstDayOfWeek","keepOpenOnDateSelect","hideKeyboardShortcutsPanel","onChange","onDateChange","undefined","onPrevMonthClick","onNextMonthClick","onClose","onFocus","onBlur","phrases","SingleDatePickerPhrases","displayFormat","displayFormatDay","transitionDuration","verticalSpacing","isDayBlocked","isOutsideRange","isDayHighlighted","numberOfMonths","openDirection","tabIndex","zIndex","pickerProps","calendarProps","autoClear","focusCurrentDate","convertPropToCssClassName","cssClassName","safeDate","React","minWidth","DSDatePickerImpl","datePickerProps","PropTypes","shape","description","string","bool","defaultValue","instanceOf","Date","number","func","calendarLabel","closeDatePicker","clearDates","focusStartDate","jumpToPrevMonth","jumpToNextMonth","keyboardShortcuts","showKeyboardShortcutsPanel","openThisPanel","enterKey","leftArrowRightArrow","upArrowDownArrow","pageUpPageDown","homeEnd","escape","questionMark","selectFocusedDate","moveFocusByOneDay","moveFocusByOneWeek","moveFocusByOneMonth","moveFocustoStartAndEndOfWeek","returnFocusToInput","keyboardNavigationInstructions","chooseAvailableStartDate","chooseAvailableEndDate","dateIsUnavailable","dateIsSelected","PickerPropsTypes","propTypes","DatePickerWithSchema","describe"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAmEMA,YAA8B,GAAG,SAAjCA,YAAiC,OAyCjC;AAAA,iCAxCJC,cAwCI;AAAA,MAxCJA,cAwCI,oCAxCa,EAwCb;AAAA,qBAvCJC,EAuCI;AAAA,MAvCJA,EAuCI,wBAvCC,EAuCD;AAAA,+BAtCJC,YAsCI;AAAA,MAtCJA,YAsCI,kCAtCW,IAsCX;AAAA,4BArCJC,SAqCI;AAAA,MArCJA,SAqCI,+BArCQ,EAqCR;AAAA,MApCJC,IAoCI,QApCJA,IAoCI;AAAA,MAnCJC,KAmCI,QAnCJA,KAmCI;AAAA,8BAlCJC,WAkCI;AAAA,MAlCJA,WAkCI,iCAlCU,EAkCV;AAAA,2BAjCJC,QAiCI;AAAA,MAjCJA,QAiCI,8BAjCO,KAiCP;AAAA,2BAhCJC,QAgCI;AAAA,MAhCJA,QAgCI,8BAhCO,KAgCP;AAAA,2BA/BJC,QA+BI;AAAA,MA/BJA,QA+BI,8BA/BO,KA+BP;AAAA,2BA9BJC,QA8BI;AAAA,MA9BJA,QA8BI,8BA9BO,KA8BP;AAAA,mCA7BJC,wBA6BI;AAAA,MA7BJA,wBA6BI,sCA7BuB,aA6BvB;AAAA,mCA5BJC,iBA4BI;AAAA,MA5BJA,iBA4BI,sCA5BgB,IA4BhB;AAAA,mCA3BJC,mBA2BI;AAAA,MA3BJA,oBA2BI,sCA3BkBC,0BAAM,EA2BxB;AAAA,iCA1BJC,cA0BI;AAAA,MA1BJA,cA0BI,oCA1Ba,CA0Bb;AAAA,mCAzBJC,oBAyBI;AAAA,MAzBJA,oBAyBI,sCAzBmB,KAyBnB;AAAA,mCAxBJC,0BAwBI;AAAA,MAxBJA,0BAwBI,sCAxByB,IAwBzB;AAAA,2BAvBJC,QAuBI;AAAA,MAvBJA,QAuBI,8BAvBO;AAAA,WAAM,IAAN;AAAA,GAuBP;AAAA,+BAtBJC,YAsBI;AAAA,MAtBJA,aAsBI,kCAtBWC,SAsBX;AAAA,mCArBJC,gBAqBI;AAAA,MArBJA,gBAqBI,sCArBe;AAAA,WAAM,IAAN;AAAA,GAqBf;AAAA,mCApBJC,gBAoBI;AAAA,MApBJA,gBAoBI,sCApBe;AAAA,WAAM,IAAN;AAAA,GAoBf;AAAA,0BAnBJC,OAmBI;AAAA,MAnBJA,OAmBI,6BAnBM;AAAA,WAAM,IAAN;AAAA,GAmBN;AAAA,0BAlBJC,OAkBI;AAAA,MAlBJA,OAkBI,6BAlBM;AAAA,WAAM,IAAN;AAAA,GAkBN;AAAA,yBAjBJC,MAiBI;AAAA,MAjBJA,MAiBI,4BAjBK;AAAA,WAAM,IAAN;AAAA,GAiBL;AAAA,0BAhBJC,OAgBI;AAAA,MAhBJA,OAgBI,6BAhBMC,sCAgBN;AAAA,gCAfJC,aAeI;AAAA,MAfJA,aAeI,mCAfY,GAeZ;AAAA,mCAdJC,gBAcI;AAAA,MAdJA,gBAcI,sCAde,GAcf;AAAA,mCAbJC,kBAaI;AAAA,MAbJA,kBAaI,sCAbiB,CAajB;AAAA,kCAZJC,eAYI;AAAA,MAZJA,eAYI,qCAZc,CAYd;AAAA,+BAXJC,YAWI;AAAA,MAXJA,YAWI,kCAXW;AAAA,WAAM,KAAN;AAAA,GAWX;AAAA,iCAVJC,cAUI;AAAA,MAVJA,cAUI,oCAVa;AAAA,WAAM,KAAN;AAAA,GAUb;AAAA,mCATJC,gBASI;AAAA,MATJA,gBASI,sCATe;AAAA,WAAM,KAAN;AAAA,GASf;AAAA,iCARJC,cAQI;AAAA,MARJA,cAQI,oCARa,CAQb;AAAA,gCAPJC,aAOI;AAAA,MAPJA,aAOI,mCAPY,MAOZ;AAAA,2BANJC,QAMI;AAAA,MANJA,QAMI,8BANO,EAMP;AAAA,yBALJC,MAKI;AAAA,MALJA,MAKI,4BALK,CAKL;AAAA,8BAJJC,WAII;AAAA,MAJJA,WAII,iCAJU,EAIV;AAAA,gCAHJC,aAGI;AAAA,MAHJA,aAGI,mCAHY,EAGZ;AAAA,4BAFJC,SAEI;AAAA,MAFJA,SAEI,+BAFQ,KAER;AAAA,mCADJC,gBACI;AAAA,MADJA,gBACI,sCADe,KACf;;AACJ,8BAAyBC,sCAAyB,CAAC,YAAD,EAAexC,SAAf,EAA0B;AAC1EO,IAAAA,QAAQ,EAARA,QAD0E;AAE1ED,IAAAA,QAAQ,EAARA,QAF0E;AAG1EF,IAAAA,QAAQ,EAARA,QAH0E;AAI1EN,IAAAA,EAAE,EAAFA;AAJ0E,GAA1B,CAAlD;AAAA,MAAQ2C,YAAR,yBAAQA,YAAR;;AAMA,MAAMC,QAAQ,GAAGzC,IAAI,IAAIC,KAAzB;AACA,sBACEyC;AAAK,IAAA,SAAS,EAAEF;AAAhB,KAAkC5C,cAAlC;AAAkD,IAAA,KAAK,EAAE;AAAE+C,MAAAA,QAAQ,EAAE;AAAZ;AAAzD,mBACED,wCAACE,2BAAD;AACE,IAAA,YAAY,EAAE9C,YADhB;AAEE,IAAA,SAAS,EAAEuC,SAFb;AAGE,IAAA,IAAI,EAAEI,QAHR;AAIE,IAAA,QAAQ,EAAEtC,QAJZ;AAKE,IAAA,aAAa,EAAEqB,aALjB;AAME,IAAA,gBAAgB,EAAEC,gBANpB;AAOE,IAAA,iBAAiB,EAAEjB,iBAPrB;AAQE,IAAA,cAAc,EAAEG,cARlB;AASE,IAAA,0BAA0B,EAAEE,0BAT9B;AAUE,IAAA,mBAAmB,EAAE;AAAA,aAAOJ,oBAAmB,GAAGC,0BAAM,CAACD,oBAAD,CAAT,GAAiCC,0BAAM,CAAC+B,QAAD,CAAjE;AAAA,KAVvB;AAWE,IAAA,YAAY,EAAEb,YAXhB;AAYE,IAAA,gBAAgB,EAAEE,gBAZpB;AAaE,IAAA,cAAc,EAAED,cAAc,KAAK,IAAnB,IAA2BA,cAAc,KAAK,KAA9C,GAAsD;AAAA,aAAMA,cAAN;AAAA,KAAtD,GAA6EA,cAb/F;AAcE,IAAA,oBAAoB,EAAEjB,oBAdxB;AAeE,IAAA,cAAc,EAAEmB,cAflB;AAgBE,IAAA,MAAM,EAAEV,MAhBV;AAiBE,IAAA,OAAO,EAAEF,OAjBX;AAkBE,IAAA,QAAQ,EAAEL,QAlBZ;AAmBE,IAAA,YAAY,EAAE,wBAAa;AACzB,UAAIC,aAAJ,EAAkBA,aAAY,MAAZ;AACnB,KArBH;AAsBE,IAAA,OAAO,EAAEK,OAtBX;AAuBE,IAAA,gBAAgB,EAAEF,gBAvBpB;AAwBE,IAAA,gBAAgB,EAAED,gBAxBpB;AAyBE,IAAA,aAAa,EAAEe,aAzBjB;AA0BE,IAAA,OAAO,EAAEV,OA1BX;AA2BE,IAAA,WAAW,EAAEpB,WA3Bf;AA4BE,IAAA,QAAQ,EAAEG,QA5BZ;AA6BE,IAAA,QAAQ,EAAED,QA7BZ;AA8BE,IAAA,wBAAwB,EAAEG,wBA9B5B;AA+BE,IAAA,kBAAkB,EAAEmB,kBA/BtB;AAgCE,IAAA,KAAK,EAAEe,QAhCT;AAiCE,IAAA,eAAe,EAAEd,eAjCnB;AAkCE,IAAA,QAAQ,EAAEM,QAlCZ;AAmCE,IAAA,MAAM,EAAEC,MAnCV;AAoCE,IAAA,WAAW,EAAEC,WApCf;AAqCE,IAAA,aAAa,EAAEC,aArCjB;AAsCE,IAAA,gBAAgB,EAAEE;AAtCpB,IADF,CADF;AA4CD;;AAED,IAAMO,eAAe,GAAG;AACtBjD,EAAAA,cAAc,EAAEkD,mBAAS,CAACC,KAAV,CAAgB,EAAhB,EAAoBC,WAApB,CAAgC,kDAAhC,CADM;AAEtBnD,EAAAA,EAAE,EAAEiD,mBAAS,CAACG,MAAV,CAAiBD,WAAjB,CAA6B,eAA7B,CAFkB;AAGtBlD,EAAAA,YAAY,EAAEgD,mBAAS,CAACI,IAAV,CAAeF,WAAf,CAA2B,iCAA3B,EAA8DG,YAA9D,CAA2E,IAA3E,CAHQ;AAItBpD,EAAAA,SAAS,EAAE+C,mBAAS,CAACG,MAAV,CAAiBD,WAAjB,CAA6B,sBAA7B,CAJW;AAKtBhD,EAAAA,IAAI,EAAE8C,mBAAS,CAACM,UAAV,CAAqBC,IAArB,EAA2B3C,0BAA3B,EAAmCsC,WAAnC,CAA+C,eAA/C,EAAgEG,YAAhE,CAA6EnC,SAA7E,CALgB;AAMtBf,EAAAA,KAAK,EAAE6C,mBAAS,CAACM,UAAV,CAAqBC,IAArB,EAA2B3C,0BAA3B,EAAmCsC,WAAnC,CAA+C,OAA/C,CANe;AAOtB9C,EAAAA,WAAW,EAAE4C,mBAAS,CAACG,MAAV,CAAiBD,WAAjB,CAA6B,yBAA7B,CAPS;AAQtBX,EAAAA,SAAS,EAAES,mBAAS,CAACI,IAAV,CACRF,WADQ,CACI,+DADJ,EAERG,YAFQ,CAEK,KAFL,CARW;AAWtBhD,EAAAA,QAAQ,EAAE2C,mBAAS,CAACI,IAAV,CAAeF,WAAf,CAA2B,0BAA3B,EAAuDG,YAAvD,CAAoE,KAApE,CAXY;AAYtB/C,EAAAA,QAAQ,EAAE0C,mBAAS,CAACI,IAAV,CAAeF,WAAf,CAA2B,0BAA3B,EAAuDG,YAAvD,CAAoE,KAApE,CAZY;AAatB9C,EAAAA,QAAQ,EAAEyC,mBAAS,CAACI,IAAV,CAAeF,WAAf,CAA2B,qBAA3B,EAAkDG,YAAlD,CAA+D,KAA/D,CAbY;AActB7C,EAAAA,QAAQ,EAAEwC,mBAAS,CAACI,IAAV,CAAeF,WAAf,CAA2B,iBAA3B,EAA8CG,YAA9C,CAA2D,KAA3D,CAdY;AAetB5C,EAAAA,wBAAwB,EAAEuC,mBAAS,CAACG,MAAV,CACvBD,WADuB,CACX,qCADW,EAEvBG,YAFuB,CAEV,aAFU,CAfJ;AAkBtB3C,EAAAA,iBAAiB,EAAEsC,mBAAS,CAACI,IAAV,CAAeF,WAAf,CAA2B,kCAA3B,EAA+DG,YAA/D,CAA4E,IAA5E,CAlBG;AAmBtB1C,EAAAA,mBAAmB,EAAEqC,mBAAS,CAACM,UAAV,CAAqBC,IAArB,EAA2B3C,0BAA3B,EAAmCsC,WAAnC,CAA+C,0BAA/C,CAnBC;AAoBtBrC,EAAAA,cAAc,EAAEmC,mBAAS,CAACQ,MAAV,CAAiBN,WAAjB,CAA6B,mBAA7B,EAAkDG,YAAlD,CAA+D,CAA/D,CApBM;AAqBtBvC,EAAAA,oBAAoB,EAAEkC,mBAAS,CAACI,IAAV,CAAeF,WAAf,CAA2B,0CAA3B,EAAuEG,YAAvE,CAAoF,KAApF,CArBA;AAsBtBtC,EAAAA,0BAA0B,EAAEiC,mBAAS,CAACI,IAAV,CAAeF,WAAf,CAA2B,qCAA3B,EAAkEG,YAAlE,CAA+E,IAA/E,CAtBN;AAuBtBrC,EAAAA,QAAQ,EAAEgC,mBAAS,CAACS,IAAV,CAAeP,WAAf,4JAvBY;AA6BtBjC,EAAAA,YAAY,EAAE+B,mBAAS,CAACS,IAAV,CAAeP,WAAf,CACZ,yGADY,CA7BQ;AAgCtB/B,EAAAA,gBAAgB,EAAE6B,mBAAS,CAACS,IAAV,CAAeP,WAAf,CAA2B,sDAA3B,CAhCI;AAiCtB9B,EAAAA,gBAAgB,EAAE4B,mBAAS,CAACS,IAAV,CAAeP,WAAf,CAA2B,sDAA3B,CAjCI;AAkCtB3B,EAAAA,MAAM,EAAEyB,mBAAS,CAACS,IAAV,CAAeP,WAAf,CAA2B,8CAA3B,CAlCc;AAmCtB7B,EAAAA,OAAO,EAAE2B,mBAAS,CAACS,IAAV,CAAeP,WAAf,CAA2B,yCAA3B,CAnCa;AAoCtB5B,EAAAA,OAAO,EAAE0B,mBAAS,CAACS,IAAV,CAAeP,WAAf,CAA2B,8CAA3B,CApCa;AAqCtB1B,EAAAA,OAAO,EAAEwB,mBAAS,CAACC,KAAV,CAAgB;AACvBS,IAAAA,aAAa,EAAEV,mBAAS,CAACG,MADF;AAEvBQ,IAAAA,eAAe,EAAEX,mBAAS,CAACG,MAFJ;AAGvBS,IAAAA,UAAU,EAAEZ,mBAAS,CAACG,MAHC;AAIvBU,IAAAA,cAAc,EAAEb,mBAAS,CAACG,MAJH;AAKvBW,IAAAA,eAAe,EAAEd,mBAAS,CAACG,MALJ;AAMvBY,IAAAA,eAAe,EAAEf,mBAAS,CAACG,MANJ;AAOvBa,IAAAA,iBAAiB,EAAEhB,mBAAS,CAACG,MAPN;AAQvBc,IAAAA,0BAA0B,EAAEjB,mBAAS,CAACG,MARf;AASvBpC,IAAAA,0BAA0B,EAAEiC,mBAAS,CAACG,MATf;AAUvBe,IAAAA,aAAa,EAAElB,mBAAS,CAACG,MAVF;AAWvBgB,IAAAA,QAAQ,EAAEnB,mBAAS,CAACG,MAXG;AAYvBiB,IAAAA,mBAAmB,EAAEpB,mBAAS,CAACG,MAZR;AAavBkB,IAAAA,gBAAgB,EAAErB,mBAAS,CAACG,MAbL;AAcvBmB,IAAAA,cAAc,EAAEtB,mBAAS,CAACG,MAdH;AAevBoB,IAAAA,OAAO,EAAEvB,mBAAS,CAACG,MAfI;AAgBvBqB,IAAAA,MAAM,EAAExB,mBAAS,CAACG,MAhBK;AAiBvBsB,IAAAA,YAAY,EAAEzB,mBAAS,CAACG,MAjBD;AAkBvBuB,IAAAA,iBAAiB,EAAE1B,mBAAS,CAACG,MAlBN;AAmBvBwB,IAAAA,iBAAiB,EAAE3B,mBAAS,CAACG,MAnBN;AAoBvByB,IAAAA,kBAAkB,EAAE5B,mBAAS,CAACG,MApBP;AAqBvB0B,IAAAA,mBAAmB,EAAE7B,mBAAS,CAACG,MArBR;AAsBvB2B,IAAAA,4BAA4B,EAAE9B,mBAAS,CAACG,MAtBjB;AAuBvB4B,IAAAA,kBAAkB,EAAE/B,mBAAS,CAACG,MAvBP;AAwBvB6B,IAAAA,8BAA8B,EAAEhC,mBAAS,CAACG,MAxBnB;AAyBvB8B,IAAAA,wBAAwB,EAAEjC,mBAAS,CAACS,IAzBb;AA0BvByB,IAAAA,sBAAsB,EAAElC,mBAAS,CAACS,IA1BX;AA2BvB0B,IAAAA,iBAAiB,EAAEnC,mBAAS,CAACS,IA3BN;AA4BvB2B,IAAAA,cAAc,EAAEpC,mBAAS,CAACS;AA5BH,GAAhB,EA8BNP,WA9BM,CA8BM,qBA9BN,EA+BNG,YA/BM,CA+BO5B,sCA/BP,CArCa;AAqEtBC,EAAAA,aAAa,EAAEsB,mBAAS,CAACG,MAAV,CAAiBD,WAAjB,CAA6B,gBAA7B,EAA+CG,YAA/C,CAA4D,GAA5D,CArEO;AAsEtB1B,EAAAA,gBAAgB,EAAEqB,mBAAS,CAACG,MAAV,CAAiBD,WAAjB,CAA6B,oBAA7B,EAAmDG,YAAnD,CAAgE,GAAhE,CAtEI;AAuEtBzB,EAAAA,kBAAkB,EAAEoB,mBAAS,CAACQ,MAAV,CAAiBN,WAAjB,CAA6B,qBAA7B,EAAoDG,YAApD,CAAiE,CAAjE,CAvEE;AAwEtBxB,EAAAA,eAAe,EAAEmB,mBAAS,CAACQ,MAAV,CAAiBN,WAAjB,CAA6B,kBAA7B,CAxEK;AAyEtBpB,EAAAA,YAAY,EAAEkB,mBAAS,CAACS,IAAV,CAAeP,WAAf,CAA2B,2DAA3B,CAzEQ;AA0EtBnB,EAAAA,cAAc,EAAEiB,mBAAS,CAACS,IAAV,CAAeP,WAAf,CAA2B,iEAA3B,CA1EM;AA2EtBlB,EAAAA,gBAAgB,EAAEgB,mBAAS,CAACS,IAAV,CAAeP,WAAf,CAA2B,4DAA3B,CA3EI;AA4EtBjB,EAAAA,cAAc,EAAEe,mBAAS,CAACQ,MAAV,CAAiBN,WAAjB,CAA6B,kBAA7B,CA5EM;AA6EtBhB,EAAAA,aAAa,EAAEc,mBAAS,CAACG,MAAV,CAAiBD,WAAjB,CAA6B,6BAA7B,EAA4DG,YAA5D,CAAyE,MAAzE,CA7EO;AA8EtBlB,EAAAA,QAAQ,EAAEa,mBAAS,CAACQ,MAAV,CAAiBN,WAAjB,CAA6B,oCAA7B,CA9EY;AA+EtBd,EAAAA,MAAM,EAAEY,mBAAS,CAACG,MAAV,CAAiBD,WAAjB,CAA6B,kCAA7B,CA/Ec;AAgFtBb,EAAAA,WAAW,EAAEW,mBAAS,CAACC,KAAV,CAAgBoC,6DAAhB,EAAkCnC,WAAlC,CAA8C,4CAA9C,CAhFS;AAiFtBZ,EAAAA,aAAa,EAAEU,mBAAS,CAACC,KAAV,CAAgB;AAAEd,IAAAA,QAAQ,EAAEa,mBAAS,CAACQ;AAAtB,GAAhB,EAAgDN,WAAhD,CACb,8CADa,CAjFO;AAoFtBV,EAAAA,gBAAgB,EAAEQ,mBAAS,CAACI,IAAV,CAAeF,WAAf,CAA2B,0CAA3B,EAAuEG,YAAvE,CAAoF,KAApF;AApFI,CAAxB;AAuFAxD,YAAY,CAACyF,SAAb,GAAyBvC,eAAzB;IAEMwC,oBAAoB,GAAGC,kBAAQ,CAAC3F,YAAD;AACrC0F,oBAAoB,CAACD,SAArB,GAAiCvC,eAAjC;;;;;;;;;;;;;;;;;"}
|
|
1
|
+
{"version":3,"file":"DSDatePicker.js","sources":["../../src/DSDatePicker.tsx"],"sourcesContent":["/* eslint-disable max-lines */\nimport React from 'react';\nimport { PropTypes, describe } from 'react-desc';\nimport 'react-dates/initialize';\nimport { convertPropToCssClassName } from '@elliemae/ds-classnames';\nimport moment from 'moment';\nimport { SingleDatePickerPhrases } from './defaultPhrases';\nimport {\n DatePickerNavigation,\n DatePickerDay,\n DatePickerPicker,\n DatePickerDropdown,\n DatePickerSingleDate,\n DatePickerHeader,\n DatePickerRange,\n DatePickerRangeHeader,\n SingleRangeDateSwitcher,\n renderMonthElement,\n} from './components';\nimport DSDatePickerImpl from './components/DSDatePickerImpl';\nimport DSDatePickerController from './components/DatePickerController/DatePickerController';\nimport { PickerPropsTypes, Picker } from './components/DatePickerPicker/DatePickerPicker';\n\ninterface DSDatePickerPropsType {\n containerProps: {};\n id: string;\n appendToBody: boolean;\n className: string;\n date: any;\n value: any;\n placeholder: string;\n disabled: boolean;\n required: boolean;\n readOnly: boolean;\n hasError: boolean;\n screenReaderInputMessage: boolean;\n enableOutsideDays: boolean;\n initialVisibleMonth: moment.Moment;\n firstDayOfWeek: number;\n keepOpenOnDateSelect: boolean;\n hideKeyboardShortcutsPanel: boolean;\n onChange: () => void;\n onDateChange: undefined | (() => void);\n onPrevMonthClick: () => void;\n onNextMonthClick: () => void;\n onClose: () => void;\n onFocus: () => void;\n onBlur: () => void;\n phrases: SingleDatePickerPhrases;\n displayFormat: boolean;\n displayFormatDay: boolean;\n transitionDuration: number;\n verticalSpacing: number;\n isDayBlocked: () => boolean;\n isOutsideRange: () => boolean;\n isDayHighlighted: () => boolean;\n numberOfMonths: number;\n openDirection: boolean;\n tabIndex: boolean;\n zIndex: boolean;\n pickerProps: {};\n calendarProps: {};\n autoClear: boolean;\n focusCurrentDate: boolean;\n}\ntype DSDatePickerType = React.ComponentType<DSDatePickerPropsType>;\n\nconst DSDatePicker: DSDatePickerType = ({\n containerProps = {},\n id = '',\n appendToBody = true,\n className = '',\n date,\n value,\n placeholder = '',\n disabled = false,\n required = false,\n readOnly = false,\n hasError = false,\n screenReaderInputMessage = 'Select date',\n enableOutsideDays = true,\n initialVisibleMonth = moment(),\n firstDayOfWeek = 0,\n keepOpenOnDateSelect = false,\n hideKeyboardShortcutsPanel = true,\n onChange = () => null,\n onDateChange = undefined,\n onPrevMonthClick = () => null,\n onNextMonthClick = () => null,\n onClose = () => null,\n onFocus = () => null,\n onBlur = () => null,\n phrases = SingleDatePickerPhrases,\n displayFormat = 'L',\n displayFormatDay = 'D',\n transitionDuration = 0,\n verticalSpacing = 0,\n isDayBlocked = () => false,\n isOutsideRange = () => false,\n isDayHighlighted = () => false,\n numberOfMonths = 1,\n openDirection = 'down',\n tabIndex = '',\n zIndex = 1,\n pickerProps = {},\n calendarProps = {},\n autoClear = false,\n focusCurrentDate = false,\n}) => {\n const { cssClassName } = convertPropToCssClassName('datepicker', className, {\n hasError,\n readOnly,\n disabled,\n id,\n });\n const safeDate = date || value;\n return (\n <div className={cssClassName} {...containerProps} style={{ minWidth: '140px' }}>\n <DSDatePickerImpl\n appendToBody={appendToBody}\n autoClear={autoClear}\n date={safeDate}\n disabled={disabled}\n displayFormat={displayFormat}\n displayFormatDay={displayFormatDay}\n enableOutsideDays={enableOutsideDays}\n firstDayOfWeek={firstDayOfWeek}\n hideKeyboardShortcutsPanel={hideKeyboardShortcutsPanel}\n initialVisibleMonth={() => (initialVisibleMonth ? moment(initialVisibleMonth) : moment(safeDate))}\n isDayBlocked={isDayBlocked}\n isDayHighlighted={isDayHighlighted}\n isOutsideRange={isOutsideRange === true || isOutsideRange === false ? () => isOutsideRange : isOutsideRange}\n keepOpenOnDateSelect={keepOpenOnDateSelect}\n numberOfMonths={numberOfMonths}\n onBlur={onBlur}\n onClose={onClose}\n onChange={onChange}\n onDateChange={(...args) => {\n if (onDateChange) onDateChange(...args);\n }}\n onFocus={onFocus}\n onNextMonthClick={onNextMonthClick}\n onPrevMonthClick={onPrevMonthClick}\n openDirection={openDirection}\n phrases={phrases}\n placeholder={placeholder}\n readOnly={readOnly}\n required={required}\n screenReaderInputMessage={screenReaderInputMessage}\n transitionDuration={transitionDuration}\n value={safeDate}\n verticalSpacing={verticalSpacing}\n tabIndex={tabIndex}\n zIndex={zIndex}\n pickerProps={pickerProps}\n calendarProps={calendarProps}\n focusCurrentDate={focusCurrentDate}\n />\n </div>\n );\n};\n\nconst datePickerProps = {\n containerProps: PropTypes.shape({}).description('Set of Properties attached to the main container'),\n id: PropTypes.string.description('components id'),\n appendToBody: PropTypes.bool.description('append component to body or not').defaultValue(true),\n className: PropTypes.string.description('html class attribute'),\n date: PropTypes.instanceOf(Date, moment).description('selected date').defaultValue(undefined),\n value: PropTypes.instanceOf(Date, moment).description('value'),\n placeholder: PropTypes.string.description('input placeholder value'),\n autoClear: PropTypes.bool\n .description('autoclears the input onblur if the date is not completely set')\n .defaultValue(false),\n disabled: PropTypes.bool.description('disable component or not').defaultValue(false),\n required: PropTypes.bool.description('value is required or not').defaultValue(false),\n readOnly: PropTypes.bool.description('is read only or not').defaultValue(false),\n hasError: PropTypes.bool.description('set error state').defaultValue(false),\n screenReaderInputMessage: PropTypes.string\n .description('message to anounce by screen reader')\n .defaultValue('select date'),\n enableOutsideDays: PropTypes.bool.description('enable days oustide month or not').defaultValue(true),\n initialVisibleMonth: PropTypes.instanceOf(Date, moment).description('initial month to display'),\n firstDayOfWeek: PropTypes.number.description('first day of week').defaultValue(0),\n keepOpenOnDateSelect: PropTypes.bool.description('keep picker open when a date is selected').defaultValue(false),\n hideKeyboardShortcutsPanel: PropTypes.bool.description('hide keyabord shortcut panel or not').defaultValue(true),\n onChange: PropTypes.func.description(\n `\n function executed when input changes. This could trigger with invalid dates. It returns a string and a moment\n if the date is valid.\n `,\n ),\n onDateChange: PropTypes.func.description(\n 'function executed when date changes. This doesnt trigger with invalid dates. It returns a moment object',\n ),\n onPrevMonthClick: PropTypes.func.description('function executed when clicking on prev month button'),\n onNextMonthClick: PropTypes.func.description('function executed when clicking on next month button'),\n onBlur: PropTypes.func.description('function executed when component loses focus'),\n onClose: PropTypes.func.description('function executed when component closes'),\n onFocus: PropTypes.func.description('function executed when component gains focus'),\n phrases: PropTypes.shape({\n calendarLabel: PropTypes.string,\n closeDatePicker: PropTypes.string,\n clearDates: PropTypes.string,\n focusStartDate: PropTypes.string,\n jumpToPrevMonth: PropTypes.string,\n jumpToNextMonth: PropTypes.string,\n keyboardShortcuts: PropTypes.string,\n showKeyboardShortcutsPanel: PropTypes.string,\n hideKeyboardShortcutsPanel: PropTypes.string,\n openThisPanel: PropTypes.string,\n enterKey: PropTypes.string,\n leftArrowRightArrow: PropTypes.string,\n upArrowDownArrow: PropTypes.string,\n pageUpPageDown: PropTypes.string,\n homeEnd: PropTypes.string,\n escape: PropTypes.string,\n questionMark: PropTypes.string,\n selectFocusedDate: PropTypes.string,\n moveFocusByOneDay: PropTypes.string,\n moveFocusByOneWeek: PropTypes.string,\n moveFocusByOneMonth: PropTypes.string,\n moveFocustoStartAndEndOfWeek: PropTypes.string,\n returnFocusToInput: PropTypes.string,\n keyboardNavigationInstructions: PropTypes.string,\n chooseAvailableStartDate: PropTypes.func,\n chooseAvailableEndDate: PropTypes.func,\n dateIsUnavailable: PropTypes.func,\n dateIsSelected: PropTypes.func,\n })\n .description('react-dates phrases')\n .defaultValue(SingleDatePickerPhrases),\n displayFormat: PropTypes.string.description('display format').defaultValue('L'),\n displayFormatDay: PropTypes.string.description('display format day').defaultValue('D'),\n transitionDuration: PropTypes.number.description('transition duration').defaultValue(0),\n verticalSpacing: PropTypes.number.description('vertical spacing'),\n isDayBlocked: PropTypes.func.description('function that returns each day and disables desired dates'),\n isOutsideRange: PropTypes.func.description('function that returns each day and disables outisde range dates'),\n isDayHighlighted: PropTypes.func.description('function that returns each day and higlights desired dates'),\n numberOfMonths: PropTypes.number.description('amount of months'),\n openDirection: PropTypes.string.description('open direction of the popup').defaultValue('down'),\n tabIndex: PropTypes.number.description('overrides tab index of the element'),\n zIndex: PropTypes.string.description('overrides z-index of the element'),\n pickerProps: PropTypes.shape(PickerPropsTypes).description('props to be passed to the picker container'),\n calendarProps: PropTypes.shape({ tabIndex: PropTypes.number }).description(\n 'props to be passes to the calendar container',\n ),\n focusCurrentDate: PropTypes.bool.description('Wheter to focus current date on calendar').defaultValue(false),\n};\n\nDSDatePicker.propTypes = datePickerProps;\n\nconst DatePickerWithSchema = describe(DSDatePicker);\nDatePickerWithSchema.propTypes = datePickerProps;\n\nexport {\n DatePickerNavigation,\n DatePickerDay,\n DatePickerPicker,\n DSDatePickerController,\n DatePickerDropdown,\n DatePickerSingleDate,\n DatePickerHeader,\n DatePickerRange,\n DatePickerRangeHeader,\n SingleRangeDateSwitcher,\n Picker,\n renderMonthElement,\n DatePickerWithSchema,\n};\n\nexport default DSDatePicker;\n"],"names":["DSDatePicker","containerProps","id","appendToBody","className","date","value","placeholder","disabled","required","readOnly","hasError","screenReaderInputMessage","enableOutsideDays","initialVisibleMonth","moment","firstDayOfWeek","keepOpenOnDateSelect","hideKeyboardShortcutsPanel","onChange","onDateChange","undefined","onPrevMonthClick","onNextMonthClick","onClose","onFocus","onBlur","phrases","SingleDatePickerPhrases","displayFormat","displayFormatDay","transitionDuration","verticalSpacing","isDayBlocked","isOutsideRange","isDayHighlighted","numberOfMonths","openDirection","tabIndex","zIndex","pickerProps","calendarProps","autoClear","focusCurrentDate","convertPropToCssClassName","cssClassName","safeDate","React","minWidth","DSDatePickerImpl","datePickerProps","PropTypes","shape","description","string","bool","defaultValue","instanceOf","Date","number","func","calendarLabel","closeDatePicker","clearDates","focusStartDate","jumpToPrevMonth","jumpToNextMonth","keyboardShortcuts","showKeyboardShortcutsPanel","openThisPanel","enterKey","leftArrowRightArrow","upArrowDownArrow","pageUpPageDown","homeEnd","escape","questionMark","selectFocusedDate","moveFocusByOneDay","moveFocusByOneWeek","moveFocusByOneMonth","moveFocustoStartAndEndOfWeek","returnFocusToInput","keyboardNavigationInstructions","chooseAvailableStartDate","chooseAvailableEndDate","dateIsUnavailable","dateIsSelected","PickerPropsTypes","propTypes","DatePickerWithSchema","describe"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DSDatePickerImpl.js","sources":["../../../src/components/DSDatePickerImpl.tsx"],"sourcesContent":["/* eslint-disable max-statements */\n/* eslint-disable complexity */\n/* eslint-disable no-underscore-dangle */\n/* eslint-disable react/state-in-constructor */\n/* eslint-disable no-restricted-globals */\n/* eslint-disable react/prop-types */\n/* eslint-disable max-lines */\nimport React from 'react';\nimport moment from 'moment';\nimport { DSInputGroup, DSDateInputV2 } from '@elliemae/ds-form';\nimport DSDatePickerController from './DatePickerController/DatePickerController';\nimport DatePickerDropdown from './DatePickerDropdown';\n\nconst FORMAT = 'MMDDYYYY';\nexport default class DSdatePickerImpl extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n pickerRef: React.createRef(),\n dataInput: '',\n selectedDate: null,\n inputFocused: false,\n };\n }\n\n static getDerivedStateFromProps(nextProps, prevState) {\n const { dataInput: prevVal, selectedDate: prevDate } = prevState || {};\n const { value: nextVal, date: nextDate } = nextProps;\n\n const isPrevValMoment = prevVal instanceof moment;\n const isPrevDateMoment = prevDate instanceof moment;\n const prevValAsString = isPrevValMoment ? prevVal.format(FORMAT) : prevVal;\n\n // if users wants to clear, we use '==' to catch both undefined AND null\n if (nextVal == null && nextDate == null) {\n return {\n dataInput: '',\n selectedDate: null,\n };\n }\n\n // when val is an incomplete state, we don't want to mess with the state\n // it's incomplete when length is not the full mmddyyyy (length === 8)\n if (prevValAsString?.length < 8) {\n return null;\n }\n\n const prevDateAsString = isPrevDateMoment ? prevDate.format(FORMAT) : prevDate;\n\n const isNextValMoment = nextVal instanceof moment;\n const isNextDateMoment = nextDate instanceof moment;\n const nextValAsString = isNextValMoment ? nextVal.format(FORMAT) : nextVal;\n const nextValAsMoment = isNextValMoment ? nextVal : moment(nextVal);\n const nextDateAsString = isNextDateMoment ? nextDate.format(FORMAT) : nextDate;\n const nextDateAsMoment = isNextDateMoment ? nextDate : moment(nextDate);\n\n const hasValChanged = nextValAsString !== prevValAsString;\n const hasDateChanged = nextDateAsString !== prevDateAsString;\n\n const newState = {};\n let skipStateChange = true;\n\n // value has priority over date, if both date and value change we take date\n // as such, order of condition is meaningful\n if (hasDateChanged) {\n skipStateChange = false;\n newState.dataInput = nextDateAsString;\n newState.selectedDate = nextDateAsMoment;\n }\n\n if (hasValChanged) {\n skipStateChange = false;\n newState.dataInput = nextValAsString;\n newState.selectedDate = nextValAsMoment;\n }\n\n if (skipStateChange) return null;\n return newState;\n }\n\n onClickPicker = () => {\n this.setState({ inputFocused: true });\n };\n\n getSafeValue = () => {\n const { value, date, defaultValue } = this.props;\n const { selectedDate } = this.state;\n if (value) {\n return moment(value, FORMAT, true);\n }\n if (date) {\n return moment(date, FORMAT, true);\n }\n if (defaultValue) {\n return moment(defaultValue, FORMAT, true);\n }\n if (selectedDate) {\n return selectedDate;\n }\n return null;\n };\n\n getSafeInputValue = () => {\n const safeValue = this.getSafeValue();\n if (safeValue && safeValue.isValid()) {\n return safeValue.format(FORMAT);\n }\n const { dataInput } = this.state;\n return dataInput;\n };\n\n isControlled = () => {\n const { value, date } = this.props;\n return Boolean(value) || Boolean(date);\n };\n\n handleDateChange = (date, event) => {\n const { readOnly, onDateChange, keepOpenOnDateSelect, onChange, onBlur } = this.props;\n\n if (!readOnly) {\n if (!this.isControlled()) {\n this.setState({ dataInput: date.format(FORMAT), selectedDate: date });\n }\n onChange(date.format(FORMAT), date);\n onDateChange(date);\n if (!keepOpenOnDateSelect || event.key === 'Enter') {\n this.setState({ inputFocused: false });\n onBlur(date.format(FORMAT), date);\n }\n }\n };\n\n handleInputChange = (dataInput, newDate) => {\n const { onChange } = this.props;\n const newState = {\n dataInput,\n selectedDate: newDate,\n };\n this.setState(() => newState);\n onChange(dataInput, newDate);\n };\n\n handleChange = (newDate) => {\n if (!newDate) return;\n const { onDateChange } = this.props;\n const momentValue = moment(newDate, FORMAT, true);\n if (!momentValue.isValid()) return;\n this.setState({ selectedDate: momentValue });\n\n onDateChange(momentValue);\n };\n\n handleFocus = ({ focused }) => {\n this.setState({ inputFocused: focused });\n };\n\n handleCalendarClose = () => {\n const { onClose } = this.props;\n\n this.setState({ inputFocused: false });\n this.handleOnBlur();\n onClose();\n };\n\n handleClickEscape = () => {\n const { onClose } = this.props;\n\n this.setState({ inputFocused: false });\n this.handleOnBlur();\n onClose();\n };\n\n handleOnBlur = () => {\n setTimeout(() => {\n const { onBlur, autoClear } = this.props;\n const { dataInput, selectedDate } = this.state;\n\n if (moment(selectedDate, FORMAT, true).isValid()) {\n onBlur(dataInput, selectedDate);\n } else {\n if (autoClear) {\n this.setState({ dataInput: undefined });\n }\n onBlur(dataInput, null);\n }\n });\n };\n\n handleInputFocus = (dataInput) => {\n const { onFocus } = this.props;\n onFocus(dataInput);\n };\n\n render() {\n const { inputFocused } = this.state;\n const {\n disabled,\n numberOfMonths,\n readOnly,\n enableOutsideDays,\n transitionDuration,\n firstDayOfWeek,\n keepOpenOnDateSelect,\n hideKeyboardShortcutsPanel,\n onPrevMonthClick,\n onNextMonthClick,\n onClose,\n phrases,\n placeholder,\n displayFormatDay,\n isDayBlocked,\n isOutsideRange,\n isDayHighlighted,\n tabIndex,\n zIndex,\n pickerProps,\n calendarProps,\n focusCurrentDate,\n } = this.props;\n const safedate = this.getSafeValue();\n const safeInputValue = this.getSafeInputValue();\n const hasSelectedDate = !!safedate;\n return (\n <DSInputGroup\n rightAddon={\n <DatePickerDropdown\n pickerRef={this.state.pickerRef}\n disabled={disabled}\n isOpen={inputFocused}\n menu={\n <div\n style={{ minHeight: '310px', zIndex: 1 }}\n className={hasSelectedDate ? 'has-selected-date' : 'without-selected-date'}\n data-testid=\"date-picker-portal-wrapper\"\n >\n <DSDatePickerController\n date={safedate}\n displayFormatDay={displayFormatDay}\n enableOutsideDays={enableOutsideDays}\n firstDayOfWeek={firstDayOfWeek}\n hideKeyboardShortcutsPanel={hideKeyboardShortcutsPanel}\n isDayBlocked={isDayBlocked}\n isDayHighlighted={isDayHighlighted}\n isOutsideRange={isOutsideRange}\n keepOpenOnDateSelect={keepOpenOnDateSelect}\n numberOfMonths={numberOfMonths}\n onClickEscape={this.handleClickEscape}\n onClose={(...args) => {\n if (this.state.pickerRef.current) this.state.pickerRef.current.focus();\n onClose(...args);\n this.setState({ inputFocused: false });\n }}\n onDateChange={this.handleDateChange}\n onFocusChange={this.handleFocus}\n onNextMonthClick={onNextMonthClick}\n onOutsideClick={this.handleCalendarClose}\n onPrevMonthClick={onPrevMonthClick}\n phrases={phrases}\n transitionDuration={transitionDuration}\n calendarProps={calendarProps}\n focusCurrentDate={focusCurrentDate}\n />\n </div>\n }\n onClick={this.onClickPicker}\n readOnly={readOnly}\n zIndex={zIndex}\n pickerProps={pickerProps}\n />\n }\n >\n <DSDateInputV2\n data-testid=\"datepicker-input\"\n aria-label={placeholder || 'Date Picker Input'}\n disabled={disabled}\n onBlur={this.handleOnBlur}\n onChange={this.handleInputChange}\n onDateChange={this.handleChange}\n onFocus={this.handleInputFocus}\n placeholder={placeholder}\n tabIndex={tabIndex}\n value={safeInputValue}\n />\n </DSInputGroup>\n );\n }\n}\n"],"names":["FORMAT","DSdatePickerImpl","props","onClickPicker","setState","inputFocused","getSafeValue","value","date","defaultValue","selectedDate","state","moment","getSafeInputValue","safeValue","isValid","format","dataInput","isControlled","Boolean","handleDateChange","event","readOnly","onDateChange","keepOpenOnDateSelect","onChange","onBlur","key","handleInputChange","newDate","newState","handleChange","momentValue","handleFocus","focused","handleCalendarClose","onClose","handleOnBlur","handleClickEscape","setTimeout","autoClear","undefined","handleInputFocus","onFocus","pickerRef","React","createRef","disabled","numberOfMonths","enableOutsideDays","transitionDuration","firstDayOfWeek","hideKeyboardShortcutsPanel","onPrevMonthClick","onNextMonthClick","phrases","placeholder","displayFormatDay","isDayBlocked","isOutsideRange","isDayHighlighted","tabIndex","zIndex","pickerProps","calendarProps","focusCurrentDate","safedate","safeInputValue","hasSelectedDate","DSInputGroup","DatePickerDropdown","minHeight","DSDatePickerController","current","focus","DSDateInputV2","nextProps","prevState","prevVal","prevDate","nextVal","nextDate","isPrevValMoment","isPrevDateMoment","prevValAsString","length","prevDateAsString","isNextValMoment","isNextDateMoment","nextValAsString","nextValAsMoment","nextDateAsString","nextDateAsMoment","hasValChanged","hasDateChanged","skipStateChange","Component"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"DSDatePickerImpl.js","sources":["../../../src/components/DSDatePickerImpl.tsx"],"sourcesContent":["/* eslint-disable max-statements */\n/* eslint-disable complexity */\n/* eslint-disable no-underscore-dangle */\n/* eslint-disable react/state-in-constructor */\n/* eslint-disable no-restricted-globals */\n/* eslint-disable react/prop-types */\n/* eslint-disable max-lines */\nimport React from 'react';\nimport moment from 'moment';\nimport { DSInputGroup, DSDateInputV2 } from '@elliemae/ds-form';\nimport DSDatePickerController from './DatePickerController/DatePickerController';\nimport DatePickerDropdown from './DatePickerDropdown';\n\nconst FORMAT = 'MMDDYYYY';\nexport default class DSdatePickerImpl extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n pickerRef: React.createRef(),\n dataInput: '',\n selectedDate: null,\n inputFocused: false,\n };\n }\n\n static getDerivedStateFromProps(nextProps, prevState) {\n const { dataInput: prevVal, selectedDate: prevDate } = prevState || {};\n const { value: nextVal, date: nextDate } = nextProps;\n\n const isPrevValMoment = prevVal instanceof moment;\n const isPrevDateMoment = prevDate instanceof moment;\n const prevValAsString = isPrevValMoment ? prevVal.format(FORMAT) : prevVal;\n\n // if users wants to clear, we use '==' to catch both undefined AND null\n if (nextVal == null && nextDate == null) {\n return {\n dataInput: '',\n selectedDate: null,\n };\n }\n\n // when val is an incomplete state, we don't want to mess with the state\n // it's incomplete when length is not the full mmddyyyy (length === 8)\n if (prevValAsString?.length < 8) {\n return null;\n }\n\n const prevDateAsString = isPrevDateMoment ? prevDate.format(FORMAT) : prevDate;\n\n const isNextValMoment = nextVal instanceof moment;\n const isNextDateMoment = nextDate instanceof moment;\n const nextValAsString = isNextValMoment ? nextVal.format(FORMAT) : nextVal;\n const nextValAsMoment = isNextValMoment ? nextVal : moment(nextVal);\n const nextDateAsString = isNextDateMoment ? nextDate.format(FORMAT) : nextDate;\n const nextDateAsMoment = isNextDateMoment ? nextDate : moment(nextDate);\n\n const hasValChanged = nextValAsString !== prevValAsString;\n const hasDateChanged = nextDateAsString !== prevDateAsString;\n\n const newState = {};\n let skipStateChange = true;\n\n // value has priority over date, if both date and value change we take date\n // as such, order of condition is meaningful\n if (hasDateChanged) {\n skipStateChange = false;\n newState.dataInput = nextDateAsString;\n newState.selectedDate = nextDateAsMoment;\n }\n\n if (hasValChanged) {\n skipStateChange = false;\n newState.dataInput = nextValAsString;\n newState.selectedDate = nextValAsMoment;\n }\n\n if (skipStateChange) return null;\n return newState;\n }\n\n onClickPicker = () => {\n this.setState({ inputFocused: true });\n };\n\n getSafeValue = () => {\n const { value, date, defaultValue } = this.props;\n const { selectedDate } = this.state;\n if (value) {\n return moment(value, FORMAT, true);\n }\n if (date) {\n return moment(date, FORMAT, true);\n }\n if (defaultValue) {\n return moment(defaultValue, FORMAT, true);\n }\n if (selectedDate) {\n return selectedDate;\n }\n return null;\n };\n\n getSafeInputValue = () => {\n const safeValue = this.getSafeValue();\n if (safeValue && safeValue.isValid()) {\n return safeValue.format(FORMAT);\n }\n const { dataInput } = this.state;\n return dataInput;\n };\n\n isControlled = () => {\n const { value, date } = this.props;\n return Boolean(value) || Boolean(date);\n };\n\n handleDateChange = (date, event) => {\n const { readOnly, onDateChange, keepOpenOnDateSelect, onChange, onBlur } = this.props;\n\n if (!readOnly) {\n if (!this.isControlled()) {\n this.setState({ dataInput: date.format(FORMAT), selectedDate: date });\n }\n onChange(date.format(FORMAT), date);\n onDateChange(date);\n if (!keepOpenOnDateSelect || event.key === 'Enter') {\n this.setState({ inputFocused: false });\n onBlur(date.format(FORMAT), date);\n }\n }\n };\n\n handleInputChange = (dataInput, newDate) => {\n const { onChange } = this.props;\n const newState = {\n dataInput,\n selectedDate: newDate,\n };\n this.setState(() => newState);\n onChange(dataInput, newDate);\n };\n\n handleChange = (newDate) => {\n if (!newDate) return;\n const { onDateChange } = this.props;\n const momentValue = moment(newDate, FORMAT, true);\n if (!momentValue.isValid()) return;\n this.setState({ selectedDate: momentValue });\n\n onDateChange(momentValue);\n };\n\n handleFocus = ({ focused }) => {\n this.setState({ inputFocused: focused });\n };\n\n handleCalendarClose = () => {\n const { onClose } = this.props;\n\n this.setState({ inputFocused: false });\n this.handleOnBlur();\n onClose();\n };\n\n handleClickEscape = () => {\n const { onClose } = this.props;\n\n this.setState({ inputFocused: false });\n this.handleOnBlur();\n onClose();\n };\n\n handleOnBlur = () => {\n setTimeout(() => {\n const { onBlur, autoClear } = this.props;\n const { dataInput, selectedDate } = this.state;\n\n if (moment(selectedDate, FORMAT, true).isValid()) {\n onBlur(dataInput, selectedDate);\n } else {\n if (autoClear) {\n this.setState({ dataInput: undefined });\n }\n onBlur(dataInput, null);\n }\n });\n };\n\n handleInputFocus = (dataInput) => {\n const { onFocus } = this.props;\n onFocus(dataInput);\n };\n\n render() {\n const { inputFocused } = this.state;\n const {\n disabled,\n numberOfMonths,\n readOnly,\n enableOutsideDays,\n transitionDuration,\n firstDayOfWeek,\n keepOpenOnDateSelect,\n hideKeyboardShortcutsPanel,\n onPrevMonthClick,\n onNextMonthClick,\n onClose,\n phrases,\n placeholder,\n displayFormatDay,\n isDayBlocked,\n isOutsideRange,\n isDayHighlighted,\n tabIndex,\n zIndex,\n pickerProps,\n calendarProps,\n focusCurrentDate,\n } = this.props;\n const safedate = this.getSafeValue();\n const safeInputValue = this.getSafeInputValue();\n const hasSelectedDate = !!safedate;\n return (\n <DSInputGroup\n rightAddon={\n <DatePickerDropdown\n pickerRef={this.state.pickerRef}\n disabled={disabled}\n isOpen={inputFocused}\n menu={\n <div\n style={{ minHeight: '310px', zIndex: 1 }}\n className={hasSelectedDate ? 'has-selected-date' : 'without-selected-date'}\n data-testid=\"date-picker-portal-wrapper\"\n >\n <DSDatePickerController\n date={safedate}\n displayFormatDay={displayFormatDay}\n enableOutsideDays={enableOutsideDays}\n firstDayOfWeek={firstDayOfWeek}\n hideKeyboardShortcutsPanel={hideKeyboardShortcutsPanel}\n isDayBlocked={isDayBlocked}\n isDayHighlighted={isDayHighlighted}\n isOutsideRange={isOutsideRange}\n keepOpenOnDateSelect={keepOpenOnDateSelect}\n numberOfMonths={numberOfMonths}\n onClickEscape={this.handleClickEscape}\n onClose={(...args) => {\n if (this.state.pickerRef.current) this.state.pickerRef.current.focus();\n onClose(...args);\n this.setState({ inputFocused: false });\n }}\n onDateChange={this.handleDateChange}\n onFocusChange={this.handleFocus}\n onNextMonthClick={onNextMonthClick}\n onOutsideClick={this.handleCalendarClose}\n onPrevMonthClick={onPrevMonthClick}\n phrases={phrases}\n transitionDuration={transitionDuration}\n calendarProps={calendarProps}\n focusCurrentDate={focusCurrentDate}\n />\n </div>\n }\n onClick={this.onClickPicker}\n readOnly={readOnly}\n zIndex={zIndex}\n pickerProps={pickerProps}\n />\n }\n >\n <DSDateInputV2\n data-testid=\"datepicker-input\"\n aria-label={placeholder || 'Date Picker Input'}\n disabled={disabled}\n onBlur={this.handleOnBlur}\n onChange={this.handleInputChange}\n onDateChange={this.handleChange}\n onFocus={this.handleInputFocus}\n placeholder={placeholder}\n tabIndex={tabIndex}\n value={safeInputValue}\n />\n </DSInputGroup>\n );\n }\n}\n"],"names":["FORMAT","DSdatePickerImpl","props","_classCallCheck","onClickPicker","setState","inputFocused","getSafeValue","value","date","defaultValue","selectedDate","state","moment","getSafeInputValue","safeValue","isValid","format","dataInput","isControlled","Boolean","handleDateChange","event","readOnly","onDateChange","keepOpenOnDateSelect","onChange","onBlur","key","handleInputChange","newDate","newState","handleChange","momentValue","handleFocus","focused","handleCalendarClose","onClose","handleOnBlur","handleClickEscape","setTimeout","autoClear","undefined","handleInputFocus","onFocus","pickerRef","React","createRef","disabled","numberOfMonths","enableOutsideDays","transitionDuration","firstDayOfWeek","hideKeyboardShortcutsPanel","onPrevMonthClick","onNextMonthClick","phrases","placeholder","displayFormatDay","isDayBlocked","isOutsideRange","isDayHighlighted","tabIndex","zIndex","pickerProps","calendarProps","focusCurrentDate","safedate","safeInputValue","hasSelectedDate","DSInputGroup","DatePickerDropdown","minHeight","DSDatePickerController","current","focus","DSDateInputV2","nextProps","prevState","prevVal","prevDate","nextVal","nextDate","isPrevValMoment","isPrevDateMoment","prevValAsString","length","prevDateAsString","isNextValMoment","isNextDateMoment","nextValAsString","nextValAsMoment","nextDateAsString","nextDateAsMoment","hasValChanged","hasDateChanged","skipStateChange","Component"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAaA,IAAMA,MAAM,GAAG,UAAf;;IACqBC;;;;;EACnB,0BAAYC,KAAZ,EAAmB;IAAA;;IAAAC;;IACjB,0BAAMD,KAAN;;IADiB,MAiEnBE,aAjEmB,GAiEH,YAAM;MACpB,MAAKC,QAAL,CAAc;QAAEC,YAAY,EAAE;OAA9B;KAlEiB;;IAAA,MAqEnBC,YArEmB,GAqEJ,YAAM;MACnB,kBAAsC,MAAKL,KAA3C;UAAQM,KAAR,eAAQA,KAAR;UAAeC,IAAf,eAAeA,IAAf;UAAqBC,YAArB,eAAqBA,YAArB;MACA,IAAQC,YAAR,GAAyB,MAAKC,KAA9B,CAAQD,YAAR;;MACA,IAAIH,KAAJ,EAAW;QACT,OAAOK,0BAAM,CAACL,KAAD,EAAQR,MAAR,EAAgB,IAAhB,CAAb;;;MAEF,IAAIS,IAAJ,EAAU;QACR,OAAOI,0BAAM,CAACJ,IAAD,EAAOT,MAAP,EAAe,IAAf,CAAb;;;MAEF,IAAIU,YAAJ,EAAkB;QAChB,OAAOG,0BAAM,CAACH,YAAD,EAAeV,MAAf,EAAuB,IAAvB,CAAb;;;MAEF,IAAIW,YAAJ,EAAkB;QAChB,OAAOA,YAAP;;;MAEF,OAAO,IAAP;KApFiB;;IAAA,MAuFnBG,iBAvFmB,GAuFC,YAAM;MACxB,IAAMC,SAAS,GAAG,MAAKR,YAAL,EAAlB;;MACA,IAAIQ,SAAS,IAAIA,SAAS,CAACC,OAAV,EAAjB,EAAsC;QACpC,OAAOD,SAAS,CAACE,MAAV,CAAiBjB,MAAjB,CAAP;;;MAEF,IAAQkB,SAAR,GAAsB,MAAKN,KAA3B,CAAQM,SAAR;MACA,OAAOA,SAAP;KA7FiB;;IAAA,MAgGnBC,YAhGmB,GAgGJ,YAAM;MACnB,mBAAwB,MAAKjB,KAA7B;UAAQM,KAAR,gBAAQA,KAAR;UAAeC,IAAf,gBAAeA,IAAf;MACA,OAAOW,OAAO,CAACZ,KAAD,CAAP,IAAkBY,OAAO,CAACX,IAAD,CAAhC;KAlGiB;;IAAA,MAqGnBY,gBArGmB,GAqGA,UAACZ,IAAD,EAAOa,KAAP,EAAiB;MAClC,mBAA2E,MAAKpB,KAAhF;UAAQqB,QAAR,gBAAQA,QAAR;UAAkBC,YAAlB,gBAAkBA,YAAlB;UAAgCC,oBAAhC,gBAAgCA,oBAAhC;UAAsDC,QAAtD,gBAAsDA,QAAtD;UAAgEC,MAAhE,gBAAgEA,MAAhE;;MAEA,IAAI,CAACJ,QAAL,EAAe;QACb,IAAI,CAAC,MAAKJ,YAAL,EAAL,EAA0B;UACxB,MAAKd,QAAL,CAAc;YAAEa,SAAS,EAAET,IAAI,CAACQ,MAAL,CAAYjB,MAAZ,CAAb;YAAkCW,YAAY,EAAEF;WAA9D;;;QAEFiB,QAAQ,CAACjB,IAAI,CAACQ,MAAL,CAAYjB,MAAZ,CAAD,EAAsBS,IAAtB,CAAR;QACAe,YAAY,CAACf,IAAD,CAAZ;;QACA,IAAI,CAACgB,oBAAD,IAAyBH,KAAK,CAACM,GAAN,KAAc,OAA3C,EAAoD;UAClD,MAAKvB,QAAL,CAAc;YAAEC,YAAY,EAAE;WAA9B;;UACAqB,MAAM,CAAClB,IAAI,CAACQ,MAAL,CAAYjB,MAAZ,CAAD,EAAsBS,IAAtB,CAAN;;;KAhHa;;IAAA,MAqHnBoB,iBArHmB,GAqHC,UAACX,SAAD,EAAYY,OAAZ,EAAwB;MAC1C,IAAQJ,QAAR,GAAqB,MAAKxB,KAA1B,CAAQwB,QAAR;MACA,IAAMK,QAAQ,GAAG;QACfb,SAAS,EAATA,SADe;QAEfP,YAAY,EAAEmB;OAFhB;;MAIA,MAAKzB,QAAL,CAAc;QAAA,OAAM0B,QAAN;OAAd;;MACAL,QAAQ,CAACR,SAAD,EAAYY,OAAZ,CAAR;KA5HiB;;IAAA,MA+HnBE,YA/HmB,GA+HJ,UAACF,OAAD,EAAa;MAC1B,IAAI,CAACA,OAAL,EAAc;MACd,IAAQN,YAAR,GAAyB,MAAKtB,KAA9B,CAAQsB,YAAR;MACA,IAAMS,WAAW,GAAGpB,0BAAM,CAACiB,OAAD,EAAU9B,MAAV,EAAkB,IAAlB,CAA1B;MACA,IAAI,CAACiC,WAAW,CAACjB,OAAZ,EAAL,EAA4B;;MAC5B,MAAKX,QAAL,CAAc;QAAEM,YAAY,EAAEsB;OAA9B;;MAEAT,YAAY,CAACS,WAAD,CAAZ;KAtIiB;;IAAA,MAyInBC,WAzImB,GAyIL,gBAAiB;MAAA,IAAdC,OAAc,QAAdA,OAAc;;MAC7B,MAAK9B,QAAL,CAAc;QAAEC,YAAY,EAAE6B;OAA9B;KA1IiB;;IAAA,MA6InBC,mBA7ImB,GA6IG,YAAM;MAC1B,IAAQC,OAAR,GAAoB,MAAKnC,KAAzB,CAAQmC,OAAR;;MAEA,MAAKhC,QAAL,CAAc;QAAEC,YAAY,EAAE;OAA9B;;MACA,MAAKgC,YAAL;;MACAD,OAAO;KAlJU;;IAAA,MAqJnBE,iBArJmB,GAqJC,YAAM;MACxB,IAAQF,OAAR,GAAoB,MAAKnC,KAAzB,CAAQmC,OAAR;;MAEA,MAAKhC,QAAL,CAAc;QAAEC,YAAY,EAAE;OAA9B;;MACA,MAAKgC,YAAL;;MACAD,OAAO;KA1JU;;IAAA,MA6JnBC,YA7JmB,GA6JJ,YAAM;MACnBE,UAAU,CAAC,YAAM;QACf,mBAA8B,MAAKtC,KAAnC;YAAQyB,MAAR,gBAAQA,MAAR;YAAgBc,SAAhB,gBAAgBA,SAAhB;QACA,kBAAoC,MAAK7B,KAAzC;YAAQM,SAAR,eAAQA,SAAR;YAAmBP,YAAnB,eAAmBA,YAAnB;;QAEA,IAAIE,0BAAM,CAACF,YAAD,EAAeX,MAAf,EAAuB,IAAvB,CAAN,CAAmCgB,OAAnC,EAAJ,EAAkD;UAChDW,MAAM,CAACT,SAAD,EAAYP,YAAZ,CAAN;SADF,MAEO;UACL,IAAI8B,SAAJ,EAAe;YACb,MAAKpC,QAAL,CAAc;cAAEa,SAAS,EAAEwB;aAA3B;;;UAEFf,MAAM,CAACT,SAAD,EAAY,IAAZ,CAAN;;OAVM,CAAV;KA9JiB;;IAAA,MA6KnByB,gBA7KmB,GA6KA,UAACzB,SAAD,EAAe;MAChC,IAAQ0B,OAAR,GAAoB,MAAK1C,KAAzB,CAAQ0C,OAAR;MACAA,OAAO,CAAC1B,SAAD,CAAP;KA/KiB;;IAEjB,MAAKN,KAAL,GAAa;MACXiC,SAAS,eAAEC,yBAAK,CAACC,SAAN,EADA;MAEX7B,SAAS,EAAE,EAFA;MAGXP,YAAY,EAAE,IAHH;MAIXL,YAAY,EAAE;KAJhB;IAFiB;;;;;WAkLnB,kBAAS;MAAA;;MACP,IAAQA,YAAR,GAAyB,KAAKM,KAA9B,CAAQN,YAAR;MACA,mBAuBI,KAAKJ,KAvBT;UACE8C,QADF,gBACEA,QADF;UAEEC,cAFF,gBAEEA,cAFF;UAGE1B,QAHF,gBAGEA,QAHF;UAIE2B,iBAJF,gBAIEA,iBAJF;UAKEC,kBALF,gBAKEA,kBALF;UAMEC,cANF,gBAMEA,cANF;UAOE3B,oBAPF,gBAOEA,oBAPF;UAQE4B,0BARF,gBAQEA,0BARF;UASEC,gBATF,gBASEA,gBATF;UAUEC,gBAVF,gBAUEA,gBAVF;UAWElB,QAXF,gBAWEA,OAXF;UAYEmB,OAZF,gBAYEA,OAZF;UAaEC,WAbF,gBAaEA,WAbF;UAcEC,gBAdF,gBAcEA,gBAdF;UAeEC,YAfF,gBAeEA,YAfF;UAgBEC,cAhBF,gBAgBEA,cAhBF;UAiBEC,gBAjBF,gBAiBEA,gBAjBF;UAkBEC,QAlBF,gBAkBEA,QAlBF;UAmBEC,MAnBF,gBAmBEA,MAnBF;UAoBEC,WApBF,gBAoBEA,WApBF;UAqBEC,aArBF,gBAqBEA,aArBF;UAsBEC,gBAtBF,gBAsBEA,gBAtBF;MAwBA,IAAMC,QAAQ,GAAG,KAAK5D,YAAL,EAAjB;MACA,IAAM6D,cAAc,GAAG,KAAKtD,iBAAL,EAAvB;MACA,IAAMuD,eAAe,GAAG,CAAC,CAACF,QAA1B;MACA,oBACErB,wCAACwB,mBAAD;QACE,UAAU,eACRxB,wCAACyB,6BAAD;UACE,SAAS,EAAE,KAAK3D,KAAL,CAAWiC,SADxB;UAEE,QAAQ,EAAEG,QAFZ;UAGE,MAAM,EAAE1C,YAHV;UAIE,IAAI,eACFwC;YACE,KAAK,EAAE;cAAE0B,SAAS,EAAE,OAAb;cAAsBT,MAAM,EAAE;aADvC;YAEE,SAAS,EAAEM,eAAe,GAAG,mBAAH,GAAyB,uBAFrD;YAGE,eAAY;0BAEZvB,wCAAC2B,oDAAD;YACE,IAAI,EAAEN,QADR;YAEE,gBAAgB,EAAET,gBAFpB;YAGE,iBAAiB,EAAER,iBAHrB;YAIE,cAAc,EAAEE,cAJlB;YAKE,0BAA0B,EAAEC,0BAL9B;YAME,YAAY,EAAEM,YANhB;YAOE,gBAAgB,EAAEE,gBAPpB;YAQE,cAAc,EAAED,cARlB;YASE,oBAAoB,EAAEnC,oBATxB;YAUE,cAAc,EAAEwB,cAVlB;YAWE,aAAa,EAAE,KAAKV,iBAXtB;YAYE,OAAO,EAAE,mBAAa;cACpB,IAAI,MAAI,CAAC3B,KAAL,CAAWiC,SAAX,CAAqB6B,OAAzB,EAAkC,MAAI,CAAC9D,KAAL,CAAWiC,SAAX,CAAqB6B,OAArB,CAA6BC,KAA7B;;cAClCtC,QAAO,MAAP;;cACA,MAAI,CAAChC,QAAL,CAAc;gBAAEC,YAAY,EAAE;eAA9B;aAfJ;YAiBE,YAAY,EAAE,KAAKe,gBAjBrB;YAkBE,aAAa,EAAE,KAAKa,WAlBtB;YAmBE,gBAAgB,EAAEqB,gBAnBpB;YAoBE,cAAc,EAAE,KAAKnB,mBApBvB;YAqBE,gBAAgB,EAAEkB,gBArBpB;YAsBE,OAAO,EAAEE,OAtBX;YAuBE,kBAAkB,EAAEL,kBAvBtB;YAwBE,aAAa,EAAEc,aAxBjB;YAyBE,gBAAgB,EAAEC;YA9BtB,CALJ;UAuCE,OAAO,EAAE,KAAK9D,aAvChB;UAwCE,QAAQ,EAAEmB,QAxCZ;UAyCE,MAAM,EAAEwC,MAzCV;UA0CE,WAAW,EAAEC;;sBAIjBlB,wCAAC8B,oBAAD;QACE,eAAY,kBADd;QAEE,cAAYnB,WAAW,IAAI,mBAF7B;QAGE,QAAQ,EAAET,QAHZ;QAIE,MAAM,EAAE,KAAKV,YAJf;QAKE,QAAQ,EAAE,KAAKT,iBALjB;QAME,YAAY,EAAE,KAAKG,YANrB;QAOE,OAAO,EAAE,KAAKW,gBAPhB;QAQE,WAAW,EAAEc,WARf;QASE,QAAQ,EAAEK,QATZ;QAUE,KAAK,EAAEM;QA1DX,CADF;;;;WArMF,kCAAgCS,SAAhC,EAA2CC,SAA3C,EAAsD;MACpD,YAAuDA,SAAS,IAAI,EAApE;UAAmBC,OAAnB,SAAQ7D,SAAR;UAA0C8D,QAA1C,SAA4BrE,YAA5B;;MACA,IAAesE,OAAf,GAA2CJ,SAA3C,CAAQrE,KAAR;UAA8B0E,QAA9B,GAA2CL,SAA3C,CAAwBpE,IAAxB;MAEA,IAAM0E,eAAe,GAAGJ,OAAO,YAAYlE,0BAA3C;MACA,IAAMuE,gBAAgB,GAAGJ,QAAQ,YAAYnE,0BAA7C;MACA,IAAMwE,eAAe,GAAGF,eAAe,GAAGJ,OAAO,CAAC9D,MAAR,CAAejB,MAAf,CAAH,GAA4B+E,OAAnE,CANoD;;MASpD,IAAIE,OAAO,IAAI,IAAX,IAAmBC,QAAQ,IAAI,IAAnC,EAAyC;QACvC,OAAO;UACLhE,SAAS,EAAE,EADN;UAELP,YAAY,EAAE;SAFhB;OAVkD;;;;MAkBpD,IAAI,CAAA0E,eAAe,SAAf,IAAAA,eAAe,WAAf,YAAAA,eAAe,CAAEC,MAAjB,IAA0B,CAA9B,EAAiC;QAC/B,OAAO,IAAP;;;MAGF,IAAMC,gBAAgB,GAAGH,gBAAgB,GAAGJ,QAAQ,CAAC/D,MAAT,CAAgBjB,MAAhB,CAAH,GAA6BgF,QAAtE;MAEA,IAAMQ,eAAe,GAAGP,OAAO,YAAYpE,0BAA3C;MACA,IAAM4E,gBAAgB,GAAGP,QAAQ,YAAYrE,0BAA7C;MACA,IAAM6E,eAAe,GAAGF,eAAe,GAAGP,OAAO,CAAChE,MAAR,CAAejB,MAAf,CAAH,GAA4BiF,OAAnE;MACA,IAAMU,eAAe,GAAGH,eAAe,GAAGP,OAAH,GAAapE,0BAAM,CAACoE,OAAD,CAA1D;MACA,IAAMW,gBAAgB,GAAGH,gBAAgB,GAAGP,QAAQ,CAACjE,MAAT,CAAgBjB,MAAhB,CAAH,GAA6BkF,QAAtE;MACA,IAAMW,gBAAgB,GAAGJ,gBAAgB,GAAGP,QAAH,GAAcrE,0BAAM,CAACqE,QAAD,CAA7D;MAEA,IAAMY,aAAa,GAAGJ,eAAe,KAAKL,eAA1C;MACA,IAAMU,cAAc,GAAGH,gBAAgB,KAAKL,gBAA5C;MAEA,IAAMxD,QAAQ,GAAG,EAAjB;MACA,IAAIiE,eAAe,GAAG,IAAtB,CAnCoD;;;MAuCpD,IAAID,cAAJ,EAAoB;QAClBC,eAAe,GAAG,KAAlB;QACAjE,QAAQ,CAACb,SAAT,GAAqB0E,gBAArB;QACA7D,QAAQ,CAACpB,YAAT,GAAwBkF,gBAAxB;;;MAGF,IAAIC,aAAJ,EAAmB;QACjBE,eAAe,GAAG,KAAlB;QACAjE,QAAQ,CAACb,SAAT,GAAqBwE,eAArB;QACA3D,QAAQ,CAACpB,YAAT,GAAwBgF,eAAxB;;;MAGF,IAAIK,eAAJ,EAAqB,OAAO,IAAP;MACrB,OAAOjE,QAAP;;;;;EA/D0Ce,yBAAK,CAACmD;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DatePickerController.js","sources":["../../../../src/components/DatePickerController/DatePickerController.tsx"],"sourcesContent":["/* eslint-disable react/prop-types */\n/* eslint-disable max-lines */\nimport React from 'react';\nimport { debounce } from 'lodash';\nimport PropTypes from 'prop-types';\nimport moment from 'moment';\nimport 'react-dates/initialize';\nimport { DayPickerSingleDateController } from 'react-dates';\nimport { convertPropToCssClassName } from '@elliemae/ds-classnames';\nimport { ChevronLeft } from '@elliemae/ds-icons';\nimport { SingleDatePickerPhrases } from '../../defaultPhrases';\nimport { renderMonthElement } from '../DatePickerRenderMonth/DatePickerRenderMonth';\nimport DatePickerNavigation from '../DatePickerNavigation/DatePickerNavigation';\nimport DatePickerDay from '../DatePickerDay/DatePickerDay';\n\ninterface DSDatePickerControllerStateType {\n selectedDate: any;\n firstFocusableItem: React.RefObject<HTMLElement>;\n datePicker: React.RefObject<HTMLElement>;\n}\n\nconst { classNameElement, classNameBlock } = convertPropToCssClassName('datepicker-range');\n\nconst focusElementOnOpen = debounce((datePickerDom, firstFocusableItemDom, focusCurrentDate) => {\n if (datePickerDom) {\n const currentDay = Array.from(datePickerDom?.getElementsByClassName('CalendarDay__today')).filter(\n (el) => !el.className.includes('CalendarDay__outside'),\n )[0];\n const [calendarDaySelected] = datePickerDom?.getElementsByClassName('CalendarDay__selected');\n if (calendarDaySelected) {\n calendarDaySelected?.focus?.();\n } else if (focusCurrentDate && !calendarDaySelected) currentDay.focus();\n else {\n const navButton = firstFocusableItemDom?.closest('.DayPickerNavigation_button>div');\n navButton?.focus?.();\n }\n }\n}, 100);\n\nexport default class DSDatePickerController extends React.Component<any, DSDatePickerControllerStateType> {\n // eslint-disable-next-line react/static-property-placement\n static defaultProps = {\n date: '',\n value: '',\n enableOutsideDays: false,\n initialVisibleMonth: moment(),\n firstDayOfWeek: 0,\n keepOpenOnDateSelect: true,\n hideKeyboardShortcutsPanel: true,\n onPrevMonthClick: () => null,\n onNextMonthClick: () => null,\n onClose: () => null,\n onChange: () => null,\n onClickEscape: () => null,\n onDateChange: () => null,\n phrases: SingleDatePickerPhrases,\n // displayFormat: 'L',\n displayFormatDay: 'D',\n transitionDuration: 0,\n // verticalSpacing: 0,\n isDayBlocked: () => false,\n isOutsideRange: () => false,\n isDayHighlighted: () => false,\n numberOfMonths: 1,\n };\n\n constructor(props) {\n super(props);\n this.state = {\n selectedDate: null,\n firstFocusableItem: React.createRef(),\n datePicker: React.createRef(),\n };\n }\n\n componentDidMount() {\n const { datePicker, firstFocusableItem } = this.state;\n datePicker.current.addEventListener('mouseup', this.handleMouseUp, false);\n document.addEventListener('keydown', this.handleKeyDown, false);\n setTimeout(() => {\n focusElementOnOpen(datePicker?.current, firstFocusableItem?.current, this.props.focusCurrentDate);\n }, 400);\n }\n\n componentWillUnmount() {\n const { datePicker } = this.state;\n datePicker.current.removeEventListener('mouseup', this.handleMouseUp, false);\n document.removeEventListener('keydown', this.handleKeyDown, false);\n }\n\n handleMouseUp = () => {\n const focusedElement = document.activeElement;\n\n focusedElement?.blur?.();\n };\n\n handleKeyDown = (event) => {\n const [firstDay, ...restOfDays] = document\n .getElementsByClassName('CalendarMonthGrid_month__horizontal')[1]\n .getElementsByClassName('CalendarDay');\n const [lastDay] = restOfDays.slice(-1);\n const { onClickEscape } = this.props;\n\n switch (event.key) {\n case 'Home':\n firstDay.focus();\n break;\n case 'End':\n lastDay.focus();\n break;\n case 'Escape':\n onClickEscape();\n break;\n default:\n break;\n }\n };\n\n getSafeValue = () => {\n const { value, date, defaultValue } = this.props;\n const { selectedDate } = this.state;\n\n if (value) return moment(value);\n if (date) return moment(date);\n if (defaultValue) return moment(defaultValue);\n if (selectedDate) return moment(selectedDate);\n\n return null;\n };\n\n isControlled = () => {\n const { value, date } = this.props;\n return Boolean(value) || Boolean(date);\n };\n\n handleDateChange = (date) => {\n const { readOnly, onDateChange, onChange } = this.props;\n if (!readOnly) {\n if (!this.isControlled()) {\n this.setState({ selectedDate: date });\n }\n onDateChange(date);\n onChange(date);\n }\n };\n\n handleChange = (dataInput) => {\n const { onDateChange, onChange } = this.props;\n const momentvalue = moment(dataInput.target.value);\n this.setState({ selectedDate: momentvalue });\n onDateChange(momentvalue);\n onChange(momentvalue);\n };\n\n handleNavClick = (date, nav) => {\n const [prev, next] = document.getElementsByClassName('DayPickerNavigation_button');\n const { onPrevMonthClick, onNextMonthClick } = this.props;\n\n if (nav === 'prev') {\n prev?.focus?.();\n onPrevMonthClick(date);\n } else {\n next?.focus?.();\n onNextMonthClick(date);\n }\n };\n\n insideBlur = (event) => {\n const { datePicker } = this.state;\n if (!datePicker.current.contains(event.currentTarget)) {\n this.props.onClose();\n }\n };\n\n render() {\n const {\n numberOfMonths,\n enableOutsideDays,\n transitionDuration,\n initialVisibleMonth,\n firstDayOfWeek,\n keepOpenOnDateSelect,\n hideKeyboardShortcutsPanel,\n onClose,\n phrases,\n displayFormatDay,\n isDayBlocked,\n isOutsideRange,\n isDayHighlighted,\n onOutsideClick,\n key,\n calendarProps,\n } = this.props;\n const { datePicker, firstFocusableItem } = this.state;\n\n const safedate = this.getSafeValue();\n const safeinitialMonth = safedate && safedate.isValid() ? () => safedate : () => initialVisibleMonth;\n\n return (\n <div>\n <div\n onBlur={this.insideBlur}\n ref={datePicker}\n className={classNameBlock('wrapper-day-picker-single-date-controller')}\n data-testid=\"calendar-wrapper\"\n {...calendarProps}\n >\n <DayPickerSingleDateController\n key={key}\n date={safedate}\n enableOutsideDays={enableOutsideDays}\n firstDayOfWeek={firstDayOfWeek}\n focused\n hideKeyboardShortcutsPanel={hideKeyboardShortcutsPanel}\n initialVisibleMonth={safeinitialMonth}\n isDayBlocked={isDayBlocked}\n isDayHighlighted={isDayHighlighted}\n isOutsideRange={isOutsideRange}\n keepOpenOnDateSelect={keepOpenOnDateSelect}\n navNext={<DatePickerNavigation className={classNameElement('navigation-next')} />}\n navPrev={\n <DatePickerNavigation\n className={classNameElement('navigation-prev')}\n icon={ChevronLeft}\n innerRef={firstFocusableItem}\n />\n }\n renderMonthElement={renderMonthElement}\n numberOfMonths={numberOfMonths}\n onClose={onClose}\n onDateChange={this.handleDateChange}\n onNextMonthClick={this.handleNavClick('next')}\n onOutsideClick={onOutsideClick}\n onPrevMonthClick={this.handleNavClick('prev')}\n phrases={phrases}\n renderDayContents={(date) => (\n <DatePickerDay className={classNameElement('day-contents')} date={date.format(displayFormatDay)} />\n )}\n transitionDuration={transitionDuration}\n onTab={(e) => {\n if (e.target.classList.contains('CalendarDay')) {\n e.preventDefault();\n onClose();\n }\n }}\n />\n </div>\n </div>\n );\n }\n}\n\nDSDatePickerController.propTypes = {\n date: PropTypes.instanceOf(Date, moment),\n value: PropTypes.oneOf(PropTypes.instanceOf(Date), PropTypes.instanceOf(moment)),\n enableOutsideDays: PropTypes.bool,\n initialVisibleMonth: PropTypes.instanceOf(Date, moment),\n firstDayOfWeek: PropTypes.number,\n keepOpenOnDateSelect: PropTypes.bool,\n hideKeyboardShortcutsPanel: PropTypes.bool,\n onPrevMonthClick: PropTypes.func,\n onNextMonthClick: PropTypes.func,\n onClose: PropTypes.func,\n onClickEscape: PropTypes.func,\n onChange: PropTypes.func,\n onDateChange: PropTypes.func,\n phrases: SingleDatePickerPhrases,\n // displayFormat: PropTypes.string,\n displayFormatDay: PropTypes.string,\n transitionDuration: PropTypes.number,\n // verticalSpacing: PropTypes.number,\n isDayBlocked: PropTypes.func,\n isOutsideRange: PropTypes.func,\n isDayHighlighted: PropTypes.func,\n numberOfMonths: PropTypes.number,\n};\n\nDSDatePickerController.defaultProps = {\n date: '',\n value: '',\n enableOutsideDays: false,\n initialVisibleMonth: moment(),\n firstDayOfWeek: 0,\n keepOpenOnDateSelect: true,\n hideKeyboardShortcutsPanel: true,\n onPrevMonthClick: () => null,\n onNextMonthClick: () => null,\n onClose: () => null,\n onClickEscape: () => null,\n onChange: () => null,\n onDateChange: () => null,\n phrases: PropTypes.shape({\n calendarLabel: PropTypes.string,\n closeDatePicker: PropTypes.string,\n clearDates: PropTypes.string,\n focusStartDate: PropTypes.string,\n jumpToPrevMonth: PropTypes.string,\n jumpToNextMonth: PropTypes.string,\n keyboardShortcuts: PropTypes.string,\n showKeyboardShortcutsPanel: PropTypes.string,\n hideKeyboardShortcutsPanel: PropTypes.string,\n openThisPanel: PropTypes.string,\n enterKey: PropTypes.string,\n leftArrowRightArrow: PropTypes.string,\n upArrowDownArrow: PropTypes.string,\n pageUpPageDown: PropTypes.string,\n homeEnd: PropTypes.string,\n escape: PropTypes.string,\n questionMark: PropTypes.string,\n selectFocusedDate: PropTypes.string,\n moveFocusByOneDay: PropTypes.string,\n moveFocusByOneWeek: PropTypes.string,\n moveFocusByOneMonth: PropTypes.string,\n moveFocustoStartAndEndOfWeek: PropTypes.string,\n returnFocusToInput: PropTypes.string,\n keyboardNavigationInstructions: PropTypes.string,\n chooseAvailableStartDate: PropTypes.func,\n chooseAvailableEndDate: PropTypes.func,\n dateIsUnavailable: PropTypes.func,\n dateIsSelected: PropTypes.func,\n }),\n // displayFormat: 'L',\n displayFormatDay: 'D',\n transitionDuration: 0,\n // verticalSpacing: 0,\n isDayBlocked: () => false,\n isOutsideRange: () => false,\n isDayHighlighted: () => false,\n numberOfMonths: 1,\n};\n"],"names":["convertPropToCssClassName","classNameElement","classNameBlock","focusElementOnOpen","debounce","datePickerDom","firstFocusableItemDom","focusCurrentDate","currentDay","Array","from","getElementsByClassName","filter","el","className","includes","calendarDaySelected","focus","navButton","closest","DSDatePickerController","props","handleMouseUp","focusedElement","document","activeElement","blur","handleKeyDown","event","firstDay","restOfDays","slice","lastDay","onClickEscape","key","getSafeValue","value","date","defaultValue","selectedDate","state","moment","isControlled","Boolean","handleDateChange","readOnly","onDateChange","onChange","setState","handleChange","dataInput","momentvalue","target","handleNavClick","nav","prev","next","onPrevMonthClick","onNextMonthClick","insideBlur","datePicker","current","contains","currentTarget","onClose","firstFocusableItem","React","createRef","addEventListener","setTimeout","removeEventListener","numberOfMonths","enableOutsideDays","transitionDuration","initialVisibleMonth","firstDayOfWeek","keepOpenOnDateSelect","hideKeyboardShortcutsPanel","phrases","displayFormatDay","isDayBlocked","isOutsideRange","isDayHighlighted","onOutsideClick","calendarProps","safedate","safeinitialMonth","isValid","DayPickerSingleDateController","DatePickerNavigation","ChevronLeft","renderMonthElement","DatePickerDay","format","e","classList","preventDefault","Component","defaultProps","SingleDatePickerPhrases","propTypes","PropTypes","instanceOf","Date","oneOf","bool","number","func","string","shape","calendarLabel","closeDatePicker","clearDates","focusStartDate","jumpToPrevMonth","jumpToNextMonth","keyboardShortcuts","showKeyboardShortcutsPanel","openThisPanel","enterKey","leftArrowRightArrow","upArrowDownArrow","pageUpPageDown","homeEnd","escape","questionMark","selectFocusedDate","moveFocusByOneDay","moveFocusByOneWeek","moveFocusByOneMonth","moveFocustoStartAndEndOfWeek","returnFocusToInput","keyboardNavigationInstructions","chooseAvailableStartDate","chooseAvailableEndDate","dateIsUnavailable","dateIsSelected"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"DatePickerController.js","sources":["../../../../src/components/DatePickerController/DatePickerController.tsx"],"sourcesContent":["/* eslint-disable react/prop-types */\n/* eslint-disable max-lines */\nimport React from 'react';\nimport { debounce } from 'lodash';\nimport PropTypes from 'prop-types';\nimport moment from 'moment';\nimport 'react-dates/initialize';\nimport { DayPickerSingleDateController } from 'react-dates';\nimport { convertPropToCssClassName } from '@elliemae/ds-classnames';\nimport { ChevronLeft } from '@elliemae/ds-icons';\nimport { SingleDatePickerPhrases } from '../../defaultPhrases';\nimport { renderMonthElement } from '../DatePickerRenderMonth/DatePickerRenderMonth';\nimport DatePickerNavigation from '../DatePickerNavigation/DatePickerNavigation';\nimport DatePickerDay from '../DatePickerDay/DatePickerDay';\n\ninterface DSDatePickerControllerStateType {\n selectedDate: any;\n firstFocusableItem: React.RefObject<HTMLElement>;\n datePicker: React.RefObject<HTMLElement>;\n}\n\nconst { classNameElement, classNameBlock } = convertPropToCssClassName('datepicker-range');\n\nconst focusElementOnOpen = debounce((datePickerDom, firstFocusableItemDom, focusCurrentDate) => {\n if (datePickerDom) {\n const currentDay = Array.from(datePickerDom?.getElementsByClassName('CalendarDay__today')).filter(\n (el) => !el.className.includes('CalendarDay__outside'),\n )[0];\n const [calendarDaySelected] = datePickerDom?.getElementsByClassName('CalendarDay__selected');\n if (calendarDaySelected) {\n calendarDaySelected?.focus?.();\n } else if (focusCurrentDate && !calendarDaySelected) currentDay.focus();\n else {\n const navButton = firstFocusableItemDom?.closest('.DayPickerNavigation_button>div');\n navButton?.focus?.();\n }\n }\n}, 100);\n\nexport default class DSDatePickerController extends React.Component<any, DSDatePickerControllerStateType> {\n // eslint-disable-next-line react/static-property-placement\n static defaultProps = {\n date: '',\n value: '',\n enableOutsideDays: false,\n initialVisibleMonth: moment(),\n firstDayOfWeek: 0,\n keepOpenOnDateSelect: true,\n hideKeyboardShortcutsPanel: true,\n onPrevMonthClick: () => null,\n onNextMonthClick: () => null,\n onClose: () => null,\n onChange: () => null,\n onClickEscape: () => null,\n onDateChange: () => null,\n phrases: SingleDatePickerPhrases,\n // displayFormat: 'L',\n displayFormatDay: 'D',\n transitionDuration: 0,\n // verticalSpacing: 0,\n isDayBlocked: () => false,\n isOutsideRange: () => false,\n isDayHighlighted: () => false,\n numberOfMonths: 1,\n };\n\n constructor(props) {\n super(props);\n this.state = {\n selectedDate: null,\n firstFocusableItem: React.createRef(),\n datePicker: React.createRef(),\n };\n }\n\n componentDidMount() {\n const { datePicker, firstFocusableItem } = this.state;\n datePicker.current.addEventListener('mouseup', this.handleMouseUp, false);\n document.addEventListener('keydown', this.handleKeyDown, false);\n setTimeout(() => {\n focusElementOnOpen(datePicker?.current, firstFocusableItem?.current, this.props.focusCurrentDate);\n }, 400);\n }\n\n componentWillUnmount() {\n const { datePicker } = this.state;\n datePicker.current.removeEventListener('mouseup', this.handleMouseUp, false);\n document.removeEventListener('keydown', this.handleKeyDown, false);\n }\n\n handleMouseUp = () => {\n const focusedElement = document.activeElement;\n\n focusedElement?.blur?.();\n };\n\n handleKeyDown = (event) => {\n const [firstDay, ...restOfDays] = document\n .getElementsByClassName('CalendarMonthGrid_month__horizontal')[1]\n .getElementsByClassName('CalendarDay');\n const [lastDay] = restOfDays.slice(-1);\n const { onClickEscape } = this.props;\n\n switch (event.key) {\n case 'Home':\n firstDay.focus();\n break;\n case 'End':\n lastDay.focus();\n break;\n case 'Escape':\n onClickEscape();\n break;\n default:\n break;\n }\n };\n\n getSafeValue = () => {\n const { value, date, defaultValue } = this.props;\n const { selectedDate } = this.state;\n\n if (value) return moment(value);\n if (date) return moment(date);\n if (defaultValue) return moment(defaultValue);\n if (selectedDate) return moment(selectedDate);\n\n return null;\n };\n\n isControlled = () => {\n const { value, date } = this.props;\n return Boolean(value) || Boolean(date);\n };\n\n handleDateChange = (date) => {\n const { readOnly, onDateChange, onChange } = this.props;\n if (!readOnly) {\n if (!this.isControlled()) {\n this.setState({ selectedDate: date });\n }\n onDateChange(date);\n onChange(date);\n }\n };\n\n handleChange = (dataInput) => {\n const { onDateChange, onChange } = this.props;\n const momentvalue = moment(dataInput.target.value);\n this.setState({ selectedDate: momentvalue });\n onDateChange(momentvalue);\n onChange(momentvalue);\n };\n\n handleNavClick = (date, nav) => {\n const [prev, next] = document.getElementsByClassName('DayPickerNavigation_button');\n const { onPrevMonthClick, onNextMonthClick } = this.props;\n\n if (nav === 'prev') {\n prev?.focus?.();\n onPrevMonthClick(date);\n } else {\n next?.focus?.();\n onNextMonthClick(date);\n }\n };\n\n insideBlur = (event) => {\n const { datePicker } = this.state;\n if (!datePicker.current.contains(event.currentTarget)) {\n this.props.onClose();\n }\n };\n\n render() {\n const {\n numberOfMonths,\n enableOutsideDays,\n transitionDuration,\n initialVisibleMonth,\n firstDayOfWeek,\n keepOpenOnDateSelect,\n hideKeyboardShortcutsPanel,\n onClose,\n phrases,\n displayFormatDay,\n isDayBlocked,\n isOutsideRange,\n isDayHighlighted,\n onOutsideClick,\n key,\n calendarProps,\n } = this.props;\n const { datePicker, firstFocusableItem } = this.state;\n\n const safedate = this.getSafeValue();\n const safeinitialMonth = safedate && safedate.isValid() ? () => safedate : () => initialVisibleMonth;\n\n return (\n <div>\n <div\n onBlur={this.insideBlur}\n ref={datePicker}\n className={classNameBlock('wrapper-day-picker-single-date-controller')}\n data-testid=\"calendar-wrapper\"\n {...calendarProps}\n >\n <DayPickerSingleDateController\n key={key}\n date={safedate}\n enableOutsideDays={enableOutsideDays}\n firstDayOfWeek={firstDayOfWeek}\n focused\n hideKeyboardShortcutsPanel={hideKeyboardShortcutsPanel}\n initialVisibleMonth={safeinitialMonth}\n isDayBlocked={isDayBlocked}\n isDayHighlighted={isDayHighlighted}\n isOutsideRange={isOutsideRange}\n keepOpenOnDateSelect={keepOpenOnDateSelect}\n navNext={<DatePickerNavigation className={classNameElement('navigation-next')} />}\n navPrev={\n <DatePickerNavigation\n className={classNameElement('navigation-prev')}\n icon={ChevronLeft}\n innerRef={firstFocusableItem}\n />\n }\n renderMonthElement={renderMonthElement}\n numberOfMonths={numberOfMonths}\n onClose={onClose}\n onDateChange={this.handleDateChange}\n onNextMonthClick={this.handleNavClick('next')}\n onOutsideClick={onOutsideClick}\n onPrevMonthClick={this.handleNavClick('prev')}\n phrases={phrases}\n renderDayContents={(date) => (\n <DatePickerDay className={classNameElement('day-contents')} date={date.format(displayFormatDay)} />\n )}\n transitionDuration={transitionDuration}\n onTab={(e) => {\n if (e.target.classList.contains('CalendarDay')) {\n e.preventDefault();\n onClose();\n }\n }}\n />\n </div>\n </div>\n );\n }\n}\n\nDSDatePickerController.propTypes = {\n date: PropTypes.instanceOf(Date, moment),\n value: PropTypes.oneOf(PropTypes.instanceOf(Date), PropTypes.instanceOf(moment)),\n enableOutsideDays: PropTypes.bool,\n initialVisibleMonth: PropTypes.instanceOf(Date, moment),\n firstDayOfWeek: PropTypes.number,\n keepOpenOnDateSelect: PropTypes.bool,\n hideKeyboardShortcutsPanel: PropTypes.bool,\n onPrevMonthClick: PropTypes.func,\n onNextMonthClick: PropTypes.func,\n onClose: PropTypes.func,\n onClickEscape: PropTypes.func,\n onChange: PropTypes.func,\n onDateChange: PropTypes.func,\n phrases: SingleDatePickerPhrases,\n // displayFormat: PropTypes.string,\n displayFormatDay: PropTypes.string,\n transitionDuration: PropTypes.number,\n // verticalSpacing: PropTypes.number,\n isDayBlocked: PropTypes.func,\n isOutsideRange: PropTypes.func,\n isDayHighlighted: PropTypes.func,\n numberOfMonths: PropTypes.number,\n};\n\nDSDatePickerController.defaultProps = {\n date: '',\n value: '',\n enableOutsideDays: false,\n initialVisibleMonth: moment(),\n firstDayOfWeek: 0,\n keepOpenOnDateSelect: true,\n hideKeyboardShortcutsPanel: true,\n onPrevMonthClick: () => null,\n onNextMonthClick: () => null,\n onClose: () => null,\n onClickEscape: () => null,\n onChange: () => null,\n onDateChange: () => null,\n phrases: PropTypes.shape({\n calendarLabel: PropTypes.string,\n closeDatePicker: PropTypes.string,\n clearDates: PropTypes.string,\n focusStartDate: PropTypes.string,\n jumpToPrevMonth: PropTypes.string,\n jumpToNextMonth: PropTypes.string,\n keyboardShortcuts: PropTypes.string,\n showKeyboardShortcutsPanel: PropTypes.string,\n hideKeyboardShortcutsPanel: PropTypes.string,\n openThisPanel: PropTypes.string,\n enterKey: PropTypes.string,\n leftArrowRightArrow: PropTypes.string,\n upArrowDownArrow: PropTypes.string,\n pageUpPageDown: PropTypes.string,\n homeEnd: PropTypes.string,\n escape: PropTypes.string,\n questionMark: PropTypes.string,\n selectFocusedDate: PropTypes.string,\n moveFocusByOneDay: PropTypes.string,\n moveFocusByOneWeek: PropTypes.string,\n moveFocusByOneMonth: PropTypes.string,\n moveFocustoStartAndEndOfWeek: PropTypes.string,\n returnFocusToInput: PropTypes.string,\n keyboardNavigationInstructions: PropTypes.string,\n chooseAvailableStartDate: PropTypes.func,\n chooseAvailableEndDate: PropTypes.func,\n dateIsUnavailable: PropTypes.func,\n dateIsSelected: PropTypes.func,\n }),\n // displayFormat: 'L',\n displayFormatDay: 'D',\n transitionDuration: 0,\n // verticalSpacing: 0,\n isDayBlocked: () => false,\n isOutsideRange: () => false,\n isDayHighlighted: () => false,\n numberOfMonths: 1,\n};\n"],"names":["convertPropToCssClassName","classNameElement","classNameBlock","focusElementOnOpen","debounce","datePickerDom","firstFocusableItemDom","focusCurrentDate","currentDay","Array","from","getElementsByClassName","filter","el","className","includes","calendarDaySelected","focus","navButton","closest","DSDatePickerController","props","_classCallCheck","handleMouseUp","focusedElement","document","activeElement","blur","handleKeyDown","event","firstDay","restOfDays","slice","lastDay","onClickEscape","key","getSafeValue","value","date","defaultValue","selectedDate","state","moment","isControlled","Boolean","handleDateChange","readOnly","onDateChange","onChange","setState","handleChange","dataInput","momentvalue","target","handleNavClick","nav","prev","next","onPrevMonthClick","onNextMonthClick","insideBlur","datePicker","current","contains","currentTarget","onClose","firstFocusableItem","React","createRef","addEventListener","setTimeout","removeEventListener","numberOfMonths","enableOutsideDays","transitionDuration","initialVisibleMonth","firstDayOfWeek","keepOpenOnDateSelect","hideKeyboardShortcutsPanel","phrases","displayFormatDay","isDayBlocked","isOutsideRange","isDayHighlighted","onOutsideClick","calendarProps","safedate","safeinitialMonth","isValid","DayPickerSingleDateController","DatePickerNavigation","ChevronLeft","renderMonthElement","DatePickerDay","format","e","classList","preventDefault","Component","defaultProps","SingleDatePickerPhrases","propTypes","PropTypes","instanceOf","Date","oneOf","bool","number","func","string","shape","calendarLabel","closeDatePicker","clearDates","focusStartDate","jumpToPrevMonth","jumpToNextMonth","keyboardShortcuts","showKeyboardShortcutsPanel","openThisPanel","enterKey","leftArrowRightArrow","upArrowDownArrow","pageUpPageDown","homeEnd","escape","questionMark","selectFocusedDate","moveFocusByOneDay","moveFocusByOneWeek","moveFocusByOneMonth","moveFocustoStartAndEndOfWeek","returnFocusToInput","keyboardNavigationInstructions","chooseAvailableStartDate","chooseAvailableEndDate","dateIsUnavailable","dateIsSelected"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DatePickerDay.js","sources":["../../../../src/components/DatePickerDay/DatePickerDay.tsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\n\nconst Day = ({ className = 'date-picker-content-day', date = '' }) => (\n <div className={className} data-testid={`datepicker-day-${date}`}>\n <div className={`${className}-half`} data-testid=\"datepicker-day\">\n {date}\n </div>\n </div>\n);\nDay.propTypes = {\n className: PropTypes.string,\n date: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n};\n\nexport default Day;\n"],"names":["Day","className","date","React","propTypes","PropTypes","string","oneOfType","number"],"mappings":";;;;;;;;;;IAGMA,GAAG,GAAG,SAANA,GAAM;
|
|
1
|
+
{"version":3,"file":"DatePickerDay.js","sources":["../../../../src/components/DatePickerDay/DatePickerDay.tsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\n\nconst Day = ({ className = 'date-picker-content-day', date = '' }) => (\n <div className={className} data-testid={`datepicker-day-${date}`}>\n <div className={`${className}-half`} data-testid=\"datepicker-day\">\n {date}\n </div>\n </div>\n);\nDay.propTypes = {\n className: PropTypes.string,\n date: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),\n};\n\nexport default Day;\n"],"names":["Day","className","date","React","propTypes","PropTypes","string","oneOfType","number"],"mappings":";;;;;;;;;;IAGMA,GAAG,GAAG,SAANA,GAAM;EAAA,0BAAGC,SAAH;MAAGA,SAAH,+BAAe,yBAAf;uBAA0CC,IAA1C;MAA0CA,IAA1C,0BAAiD,EAAjD;EAAA,oBACVC;IAAK,SAAS,EAAEF,SAAhB;IAA2B,wCAA+BC,IAA/B;kBACzBC;IAAK,SAAS,YAAKF,SAAL,UAAd;IAAqC,eAAY;KAC9CC,IADH,CADF,CADU;AAAA;;AAOZF,GAAG,CAACI,SAAJ,GAAgB;EACdH,SAAS,EAAEI,6BAAS,CAACC,MADP;EAEdJ,IAAI,EAAEG,6BAAS,CAACE,SAAV,CAAoB,CAACF,6BAAS,CAACC,MAAX,EAAmBD,6BAAS,CAACG,MAA7B,CAApB;AAFQ,CAAhB;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DatePickerDropdown.js","sources":["../../../src/components/DatePickerDropdown.tsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { convertPropToCssClassName } from '@elliemae/ds-classnames';\nimport DSPopper from '@elliemae/ds-popper';\nimport DatePickerPicker, { PickerPropsTypes } from './DatePickerPicker/DatePickerPicker';\nconst { classNameElement } = convertPropToCssClassName('datepicker-range');\n\nconst noop = () => null;\nfunction DatePickerDropdown({\n disabled = false,\n readOnly,\n onClick = noop,\n isOpen,\n menu,\n zIndex = 1,\n pickerProps,\n pickerRef,\n}) {\n return (\n <DSPopper\n contentComponent={menu}\n isOpen={isOpen}\n modifiers={{\n preventOverflow: {\n enabled: true,\n padding: 0,\n boundariesElement: 'window',\n },\n }}\n showArrow={false}\n triggerComponent={\n <div>\n <DatePickerPicker\n innerRef={pickerRef}\n {...pickerProps}\n className={classNameElement('picker')}\n disabled={disabled}\n onClick={onClick}\n readOnly={readOnly}\n />\n </div>\n }\n zIndex={zIndex}\n />\n );\n}\n\nDatePickerDropdown.propTypes = {\n pickerRef: PropTypes.oneOfType([PropTypes.func, PropTypes.shape({ current: PropTypes.any })]),\n disabled: PropTypes.bool,\n readOnly: PropTypes.bool,\n onClick: PropTypes.func,\n isOpen: PropTypes.bool,\n menu: PropTypes.element,\n zIndex: PropTypes.number,\n pickerProps: PropTypes.shape(PickerPropsTypes),\n};\n\nexport default DatePickerDropdown;\n"],"names":["convertPropToCssClassName","classNameElement","noop","DatePickerDropdown","disabled","readOnly","onClick","isOpen","menu","zIndex","pickerProps","pickerRef","React","DSPopper","preventOverflow","enabled","padding","boundariesElement","DatePickerPicker","propTypes","PropTypes","oneOfType","func","shape","current","any","bool","element","number","PickerPropsTypes"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAKA,4BAA6BA,sCAAyB,CAAC,kBAAD,CAAtD;AAAA,IAAQC,gBAAR,yBAAQA,gBAAR;;AAEA,IAAMC,IAAI,GAAG,SAAPA,IAAO;
|
|
1
|
+
{"version":3,"file":"DatePickerDropdown.js","sources":["../../../src/components/DatePickerDropdown.tsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { convertPropToCssClassName } from '@elliemae/ds-classnames';\nimport DSPopper from '@elliemae/ds-popper';\nimport DatePickerPicker, { PickerPropsTypes } from './DatePickerPicker/DatePickerPicker';\nconst { classNameElement } = convertPropToCssClassName('datepicker-range');\n\nconst noop = () => null;\nfunction DatePickerDropdown({\n disabled = false,\n readOnly,\n onClick = noop,\n isOpen,\n menu,\n zIndex = 1,\n pickerProps,\n pickerRef,\n}) {\n return (\n <DSPopper\n contentComponent={menu}\n isOpen={isOpen}\n modifiers={{\n preventOverflow: {\n enabled: true,\n padding: 0,\n boundariesElement: 'window',\n },\n }}\n showArrow={false}\n triggerComponent={\n <div>\n <DatePickerPicker\n innerRef={pickerRef}\n {...pickerProps}\n className={classNameElement('picker')}\n disabled={disabled}\n onClick={onClick}\n readOnly={readOnly}\n />\n </div>\n }\n zIndex={zIndex}\n />\n );\n}\n\nDatePickerDropdown.propTypes = {\n pickerRef: PropTypes.oneOfType([PropTypes.func, PropTypes.shape({ current: PropTypes.any })]),\n disabled: PropTypes.bool,\n readOnly: PropTypes.bool,\n onClick: PropTypes.func,\n isOpen: PropTypes.bool,\n menu: PropTypes.element,\n zIndex: PropTypes.number,\n pickerProps: PropTypes.shape(PickerPropsTypes),\n};\n\nexport default DatePickerDropdown;\n"],"names":["convertPropToCssClassName","classNameElement","noop","DatePickerDropdown","disabled","readOnly","onClick","isOpen","menu","zIndex","pickerProps","pickerRef","React","DSPopper","preventOverflow","enabled","padding","boundariesElement","DatePickerPicker","propTypes","PropTypes","oneOfType","func","shape","current","any","bool","element","number","PickerPropsTypes"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAKA,4BAA6BA,sCAAyB,CAAC,kBAAD,CAAtD;AAAA,IAAQC,gBAAR,yBAAQA,gBAAR;;AAEA,IAAMC,IAAI,GAAG,SAAPA,IAAO;EAAA,OAAM,IAAN;AAAA,CAAb;;AACA,SAASC,kBAAT,OASG;EAAA,yBARDC,QAQC;MARDA,QAQC,8BARU,KAQV;MAPDC,QAOC,QAPDA,QAOC;0BANDC,OAMC;MANDA,OAMC,6BANSJ,IAMT;MALDK,MAKC,QALDA,MAKC;MAJDC,IAIC,QAJDA,IAIC;yBAHDC,MAGC;MAHDA,MAGC,4BAHQ,CAGR;MAFDC,WAEC,QAFDA,WAEC;MADDC,SACC,QADDA,SACC;EACD,oBACEC,wCAACC,4BAAD;IACE,gBAAgB,EAAEL,IADpB;IAEE,MAAM,EAAED,MAFV;IAGE,SAAS,EAAE;MACTO,eAAe,EAAE;QACfC,OAAO,EAAE,IADM;QAEfC,OAAO,EAAE,CAFM;QAGfC,iBAAiB,EAAE;;KAPzB;IAUE,SAAS,EAAE,KAVb;IAWE,gBAAgB,eACdL,kEACEA,wCAACM,mDAAD;MACE,QAAQ,EAAEP;OACND,WAFN;MAGE,SAAS,EAAET,gBAAgB,CAAC,QAAD,CAH7B;MAIE,QAAQ,EAAEG,QAJZ;MAKE,OAAO,EAAEE,OALX;MAME,QAAQ,EAAED;OAPd,CAZJ;IAuBE,MAAM,EAAEI;IAxBZ;AA2BD;;AAEDN,kBAAkB,CAACgB,SAAnB,GAA+B;EAC7BR,SAAS,EAAES,6BAAS,CAACC,SAAV,CAAoB,CAACD,6BAAS,CAACE,IAAX,EAAiBF,6BAAS,CAACG,KAAV,CAAgB;IAAEC,OAAO,EAAEJ,6BAAS,CAACK;GAArC,CAAjB,CAApB,CADkB;EAE7BrB,QAAQ,EAAEgB,6BAAS,CAACM,IAFS;EAG7BrB,QAAQ,EAAEe,6BAAS,CAACM,IAHS;EAI7BpB,OAAO,EAAEc,6BAAS,CAACE,IAJU;EAK7Bf,MAAM,EAAEa,6BAAS,CAACM,IALW;EAM7BlB,IAAI,EAAEY,6BAAS,CAACO,OANa;EAO7BlB,MAAM,EAAEW,6BAAS,CAACQ,MAPW;EAQ7BlB,WAAW,EAAEU,6BAAS,CAACG,KAAV,CAAgBM,6DAAhB;AARgB,CAA/B;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DatePickerHeader.js","sources":["../../../../src/components/DatePickerHeader/DatePickerHeader.tsx"],"sourcesContent":["/* eslint-disable no-console */\nimport React, { useState, useEffect } from 'react';\nimport PropTypes from 'prop-types';\nimport moment from 'moment';\nimport { DSDateInputV2, DSInputGroup } from '@elliemae/ds-form';\nimport { aggregatedClasses } from '@elliemae/ds-classnames';\n\nconst DATE_FORMAT = 'MMDDYYYY';\nconst blockname = 'date-picker-header';\nconst Header = aggregatedClasses('div')(blockname);\n\nconst isFn = (variable) => typeof variable === 'function';\n\nconst DatePickerHeader = ({ onInputChange = () => null, selectedDate, updateKeyDate }) => {\n const [value, setValue] = useState(isFn(selectedDate?.format) ? selectedDate.format(DATE_FORMAT) : '');\n\n useEffect(() => {\n if (isFn(selectedDate?.format)) {\n setValue(selectedDate?.format(DATE_FORMAT));\n }\n }, [selectedDate]);\n\n const handleOnChange = (newDate) => {\n setValue(newDate);\n };\n\n const handleOnKeyDown = (e) => {\n if (e.key === 'Enter' && value.length === DATE_FORMAT.length) {\n const momentValue = moment(value, DATE_FORMAT);\n onInputChange(momentValue);\n updateKeyDate(momentValue);\n }\n };\n\n return (\n <Header>\n <DSInputGroup>\n <DSDateInputV2\n onChange={handleOnChange}\n onKeyDown={handleOnKeyDown}\n value={value}\n containerProps={{ 'data-testid': 'start-date' }}\n />\n </DSInputGroup>\n </Header>\n );\n};\n\nDatePickerHeader.propTypes = {\n onInputChange: PropTypes.func,\n selectedDate: PropTypes.any,\n updateKeyDate: PropTypes.any,\n};\n\nexport default DatePickerHeader;\n"],"names":["DATE_FORMAT","blockname","Header","aggregatedClasses","isFn","variable","DatePickerHeader","onInputChange","selectedDate","updateKeyDate","useState","format","value","setValue","useEffect","handleOnChange","newDate","handleOnKeyDown","e","key","length","momentValue","moment","React","DSInputGroup","DSDateInputV2","propTypes","PropTypes","func","any"],"mappings":";;;;;;;;;;;;;;;;AAOA,IAAMA,WAAW,GAAG,UAApB;AACA,IAAMC,SAAS,GAAG,oBAAlB;AACA,IAAMC,MAAM,GAAGC,8BAAiB,CAAC,KAAD,CAAjB,CAAyBF,SAAzB,CAAf;;AAEA,IAAMG,IAAI,GAAG,SAAPA,IAAO,CAACC,QAAD;
|
|
1
|
+
{"version":3,"file":"DatePickerHeader.js","sources":["../../../../src/components/DatePickerHeader/DatePickerHeader.tsx"],"sourcesContent":["/* eslint-disable no-console */\nimport React, { useState, useEffect } from 'react';\nimport PropTypes from 'prop-types';\nimport moment from 'moment';\nimport { DSDateInputV2, DSInputGroup } from '@elliemae/ds-form';\nimport { aggregatedClasses } from '@elliemae/ds-classnames';\n\nconst DATE_FORMAT = 'MMDDYYYY';\nconst blockname = 'date-picker-header';\nconst Header = aggregatedClasses('div')(blockname);\n\nconst isFn = (variable) => typeof variable === 'function';\n\nconst DatePickerHeader = ({ onInputChange = () => null, selectedDate, updateKeyDate }) => {\n const [value, setValue] = useState(isFn(selectedDate?.format) ? selectedDate.format(DATE_FORMAT) : '');\n\n useEffect(() => {\n if (isFn(selectedDate?.format)) {\n setValue(selectedDate?.format(DATE_FORMAT));\n }\n }, [selectedDate]);\n\n const handleOnChange = (newDate) => {\n setValue(newDate);\n };\n\n const handleOnKeyDown = (e) => {\n if (e.key === 'Enter' && value.length === DATE_FORMAT.length) {\n const momentValue = moment(value, DATE_FORMAT);\n onInputChange(momentValue);\n updateKeyDate(momentValue);\n }\n };\n\n return (\n <Header>\n <DSInputGroup>\n <DSDateInputV2\n onChange={handleOnChange}\n onKeyDown={handleOnKeyDown}\n value={value}\n containerProps={{ 'data-testid': 'start-date' }}\n />\n </DSInputGroup>\n </Header>\n );\n};\n\nDatePickerHeader.propTypes = {\n onInputChange: PropTypes.func,\n selectedDate: PropTypes.any,\n updateKeyDate: PropTypes.any,\n};\n\nexport default DatePickerHeader;\n"],"names":["DATE_FORMAT","blockname","Header","aggregatedClasses","isFn","variable","DatePickerHeader","onInputChange","selectedDate","updateKeyDate","useState","format","value","setValue","useEffect","handleOnChange","newDate","handleOnKeyDown","e","key","length","momentValue","moment","React","DSInputGroup","DSDateInputV2","propTypes","PropTypes","func","any"],"mappings":";;;;;;;;;;;;;;;;AAOA,IAAMA,WAAW,GAAG,UAApB;AACA,IAAMC,SAAS,GAAG,oBAAlB;AACA,IAAMC,MAAM,GAAGC,8BAAiB,CAAC,KAAD,CAAjB,CAAyBF,SAAzB,CAAf;;AAEA,IAAMG,IAAI,GAAG,SAAPA,IAAO,CAACC,QAAD;EAAA,OAAc,OAAOA,QAAP,KAAoB,UAAlC;AAAA,CAAb;;IAEMC,gBAAgB,GAAG,SAAnBA,gBAAmB,OAAiE;EAAA,8BAA9DC,aAA8D;MAA9DA,aAA8D,mCAA9C;IAAA,OAAM,IAAN;GAA8C;MAAlCC,YAAkC,QAAlCA,YAAkC;MAApBC,aAAoB,QAApBA,aAAoB;;EACxF,gBAA0BC,cAAQ,CAACN,IAAI,CAACI,YAAD,aAACA,YAAD,uBAACA,YAAY,CAAEG,MAAf,CAAJ,GAA6BH,YAAY,CAACG,MAAb,CAAoBX,WAApB,CAA7B,GAAgE,EAAjE,CAAlC;;MAAOY,KAAP;MAAcC,QAAd;;EAEAC,eAAS,CAAC,YAAM;IACd,IAAIV,IAAI,CAACI,YAAD,aAACA,YAAD,uBAACA,YAAY,CAAEG,MAAf,CAAR,EAAgC;MAC9BE,QAAQ,CAACL,YAAD,aAACA,YAAD,uBAACA,YAAY,CAAEG,MAAd,CAAqBX,WAArB,CAAD,CAAR;;GAFK,EAIN,CAACQ,YAAD,CAJM,CAAT;;EAMA,IAAMO,cAAc,GAAG,SAAjBA,cAAiB,CAACC,OAAD,EAAa;IAClCH,QAAQ,CAACG,OAAD,CAAR;GADF;;EAIA,IAAMC,eAAe,GAAG,SAAlBA,eAAkB,CAACC,CAAD,EAAO;IAC7B,IAAIA,CAAC,CAACC,GAAF,KAAU,OAAV,IAAqBP,KAAK,CAACQ,MAAN,KAAiBpB,WAAW,CAACoB,MAAtD,EAA8D;MAC5D,IAAMC,WAAW,GAAGC,0BAAM,CAACV,KAAD,EAAQZ,WAAR,CAA1B;MACAO,aAAa,CAACc,WAAD,CAAb;MACAZ,aAAa,CAACY,WAAD,CAAb;;GAJJ;;EAQA,oBACEE,wCAAC,MAAD,qBACEA,wCAACC,mBAAD,qBACED,wCAACE,oBAAD;IACE,QAAQ,EAAEV,cADZ;IAEE,SAAS,EAAEE,eAFb;IAGE,KAAK,EAAEL,KAHT;IAIE,cAAc,EAAE;MAAE,eAAe;;IALrC,CADF,CADF;AAYD;;AAEDN,gBAAgB,CAACoB,SAAjB,GAA6B;EAC3BnB,aAAa,EAAEoB,6BAAS,CAACC,IADE;EAE3BpB,YAAY,EAAEmB,6BAAS,CAACE,GAFG;EAG3BpB,aAAa,EAAEkB,6BAAS,CAACE;AAHE,CAA7B;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DatePickerNavigation.js","sources":["../../../../src/components/DatePickerNavigation/DatePickerNavigation.tsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { ChevronRight } from '@elliemae/ds-icons';\nimport { DSIconColors, DSIconSizes } from '@elliemae/ds-icon';\nimport { iconSizes, iconColors } from '../../../../../shared-configs/prop-types';\n\nconst Navigation = ({\n className = 'date-picker-navigation',\n icon: Icon = ChevronRight,\n color = DSIconColors.NEUTRAL,\n size = DSIconSizes.S,\n innerRef,\n}) => (\n <div tabIndex={0} data-testid=\"date-picker-nav\">\n <Icon className={className} color={color} innerRef={innerRef} size={size} />\n </div>\n);\nNavigation.propTypes = {\n className: 'date-picker-navigation',\n icon: PropTypes.element,\n color: PropTypes.oneOf(iconColors),\n size: PropTypes.oneOf(iconSizes),\n innerRef: PropTypes.any,\n};\n\nexport default Navigation;\n"],"names":["Navigation","className","icon","Icon","ChevronRight","color","DSIconColors","NEUTRAL","size","DSIconSizes","S","innerRef","React","propTypes","PropTypes","element","oneOf","iconColors","iconSizes","any"],"mappings":";;;;;;;;;;;;;IAMMA,UAAU,GAAG,SAAbA,UAAa;
|
|
1
|
+
{"version":3,"file":"DatePickerNavigation.js","sources":["../../../../src/components/DatePickerNavigation/DatePickerNavigation.tsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { ChevronRight } from '@elliemae/ds-icons';\nimport { DSIconColors, DSIconSizes } from '@elliemae/ds-icon';\nimport { iconSizes, iconColors } from '../../../../../shared-configs/prop-types';\n\nconst Navigation = ({\n className = 'date-picker-navigation',\n icon: Icon = ChevronRight,\n color = DSIconColors.NEUTRAL,\n size = DSIconSizes.S,\n innerRef,\n}) => (\n <div tabIndex={0} data-testid=\"date-picker-nav\">\n <Icon className={className} color={color} innerRef={innerRef} size={size} />\n </div>\n);\nNavigation.propTypes = {\n className: 'date-picker-navigation',\n icon: PropTypes.element,\n color: PropTypes.oneOf(iconColors),\n size: PropTypes.oneOf(iconSizes),\n innerRef: PropTypes.any,\n};\n\nexport default Navigation;\n"],"names":["Navigation","className","icon","Icon","ChevronRight","color","DSIconColors","NEUTRAL","size","DSIconSizes","S","innerRef","React","propTypes","PropTypes","element","oneOf","iconColors","iconSizes","any"],"mappings":";;;;;;;;;;;;;IAMMA,UAAU,GAAG,SAAbA,UAAa;EAAA,0BACjBC,SADiB;MACjBA,SADiB,+BACL,wBADK;uBAEjBC,IAFiB;MAEXC,IAFW,0BAEJC,oBAFI;wBAGjBC,KAHiB;MAGjBA,KAHiB,2BAGTC,mBAAY,CAACC,OAHJ;uBAIjBC,IAJiB;MAIjBA,IAJiB,0BAIVC,kBAAW,CAACC,CAJF;MAKjBC,QALiB,QAKjBA,QALiB;EAAA,oBAOjBC;IAAK,QAAQ,EAAE,CAAf;IAAkB,eAAY;kBAC5BA,wCAAC,IAAD;IAAM,SAAS,EAAEX,SAAjB;IAA4B,KAAK,EAAEI,KAAnC;IAA0C,QAAQ,EAAEM,QAApD;IAA8D,IAAI,EAAEH;IADtE,CAPiB;AAAA;;AAWnBR,UAAU,CAACa,SAAX,GAAuB;EACrBZ,SAAS,EAAE,wBADU;EAErBC,IAAI,EAAEY,6BAAS,CAACC,OAFK;EAGrBV,KAAK,EAAES,6BAAS,CAACE,KAAV,CAAgBC,oBAAhB,CAHc;EAIrBT,IAAI,EAAEM,6BAAS,CAACE,KAAV,CAAgBE,mBAAhB,CAJe;EAKrBP,QAAQ,EAAEG,6BAAS,CAACK;AALC,CAAvB;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DatePickerPicker.js","sources":["../../../../src/components/DatePickerPicker/DatePickerPicker.tsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { DSIconColors, DSIconSizes } from '@elliemae/ds-icon';\nimport { DatePicker } from '@elliemae/ds-icons';\nimport DSButton, { buttonTypes } from '@elliemae/ds-button';\nimport { iconSizes } from '../../../../../shared-configs/prop-types';\n\nexport const Picker = ({\n className = 'date-picker-icon',\n disabled = false,\n icon = <DatePicker />,\n size = DSIconSizes.M,\n buttonActionType = 'secondary',\n onClick = () => null,\n onBlur = () => null,\n readOnly = false,\n tabIndex = 0,\n innerRef,\n ...rest\n}) => (\n <DSButton\n innerRef={innerRef}\n aria-label={rest['aria-label'] || 'Date Picker Button'}\n buttonType={buttonActionType}\n className={className}\n color={!disabled ? DSIconColors.PRIMARY : DSIconColors.NEUTRAL}\n disabled={disabled}\n icon={icon}\n onBlur={onBlur}\n onClick={onClick}\n readOnly={readOnly}\n size={size}\n tabIndex={tabIndex}\n data-testid=\"btn-date-picker\"\n />\n);\n\nexport const PickerPropsTypes = {\n innerRef: PropTypes.oneOfType([PropTypes.func, PropTypes.shape({ current: PropTypes.any })]),\n className: PropTypes.string,\n disabled: PropTypes.bool,\n icon: PropTypes.element,\n size: PropTypes.oneOf(iconSizes),\n buttonActionType: PropTypes.oneOf(buttonTypes),\n onClick: PropTypes.func,\n onFocus: PropTypes.func,\n onBlur: PropTypes.func,\n readOnly: PropTypes.bool,\n tabIndex: PropTypes.number,\n};\n\nPicker.propTypes = PickerPropsTypes;\nexport default Picker;\n"],"names":["Picker","className","disabled","icon","React","DatePicker","size","DSIconSizes","M","buttonActionType","onClick","onBlur","readOnly","tabIndex","innerRef","rest","DSButton","DSIconColors","PRIMARY","NEUTRAL","PickerPropsTypes","PropTypes","oneOfType","func","shape","current","any","string","bool","element","oneOf","iconSizes","buttonTypes","onFocus","number","propTypes"],"mappings":";;;;;;;;;;;;;;;;;;;;IAOaA,MAAM,GAAG,SAATA,MAAS;
|
|
1
|
+
{"version":3,"file":"DatePickerPicker.js","sources":["../../../../src/components/DatePickerPicker/DatePickerPicker.tsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { DSIconColors, DSIconSizes } from '@elliemae/ds-icon';\nimport { DatePicker } from '@elliemae/ds-icons';\nimport DSButton, { buttonTypes } from '@elliemae/ds-button';\nimport { iconSizes } from '../../../../../shared-configs/prop-types';\n\nexport const Picker = ({\n className = 'date-picker-icon',\n disabled = false,\n icon = <DatePicker />,\n size = DSIconSizes.M,\n buttonActionType = 'secondary',\n onClick = () => null,\n onBlur = () => null,\n readOnly = false,\n tabIndex = 0,\n innerRef,\n ...rest\n}) => (\n <DSButton\n innerRef={innerRef}\n aria-label={rest['aria-label'] || 'Date Picker Button'}\n buttonType={buttonActionType}\n className={className}\n color={!disabled ? DSIconColors.PRIMARY : DSIconColors.NEUTRAL}\n disabled={disabled}\n icon={icon}\n onBlur={onBlur}\n onClick={onClick}\n readOnly={readOnly}\n size={size}\n tabIndex={tabIndex}\n data-testid=\"btn-date-picker\"\n />\n);\n\nexport const PickerPropsTypes = {\n innerRef: PropTypes.oneOfType([PropTypes.func, PropTypes.shape({ current: PropTypes.any })]),\n className: PropTypes.string,\n disabled: PropTypes.bool,\n icon: PropTypes.element,\n size: PropTypes.oneOf(iconSizes),\n buttonActionType: PropTypes.oneOf(buttonTypes),\n onClick: PropTypes.func,\n onFocus: PropTypes.func,\n onBlur: PropTypes.func,\n readOnly: PropTypes.bool,\n tabIndex: PropTypes.number,\n};\n\nPicker.propTypes = PickerPropsTypes;\nexport default Picker;\n"],"names":["Picker","className","disabled","icon","React","DatePicker","size","DSIconSizes","M","buttonActionType","onClick","onBlur","readOnly","tabIndex","innerRef","rest","DSButton","DSIconColors","PRIMARY","NEUTRAL","PickerPropsTypes","PropTypes","oneOfType","func","shape","current","any","string","bool","element","oneOf","iconSizes","buttonTypes","onFocus","number","propTypes"],"mappings":";;;;;;;;;;;;;;;;;;;;IAOaA,MAAM,GAAG,SAATA,MAAS;EAAA,0BACpBC,SADoB;MACpBA,SADoB,+BACR,kBADQ;2BAEpBC,QAFoB;MAEpBA,QAFoB,8BAET,KAFS;uBAGpBC,IAHoB;MAGpBA,IAHoB,uCAGbC,wCAACC,kBAAD,OAHa;uBAIpBC,IAJoB;MAIpBA,IAJoB,0BAIbC,kBAAW,CAACC,CAJC;mCAKpBC,gBALoB;MAKpBA,gBALoB,sCAKD,WALC;0BAMpBC,OANoB;MAMpBA,OANoB,6BAMV;IAAA,OAAM,IAAN;GANU;yBAOpBC,MAPoB;MAOpBA,MAPoB,4BAOX;IAAA,OAAM,IAAN;GAPW;2BAQpBC,QARoB;MAQpBA,QARoB,8BAQT,KARS;2BASpBC,QAToB;MASpBA,QAToB,8BAST,CATS;MAUpBC,QAVoB,QAUpBA,QAVoB;MAWjBC,IAXiB;;EAAA,oBAapBX,wCAACY,4BAAD;IACE,QAAQ,EAAEF,QADZ;IAEE,cAAYC,IAAI,CAAC,YAAD,CAAJ,IAAsB,oBAFpC;IAGE,UAAU,EAAEN,gBAHd;IAIE,SAAS,EAAER,SAJb;IAKE,KAAK,EAAE,CAACC,QAAD,GAAYe,mBAAY,CAACC,OAAzB,GAAmCD,mBAAY,CAACE,OALzD;IAME,QAAQ,EAAEjB,QANZ;IAOE,IAAI,EAAEC,IAPR;IAQE,MAAM,EAAEQ,MARV;IASE,OAAO,EAAED,OATX;IAUE,QAAQ,EAAEE,QAVZ;IAWE,IAAI,EAAEN,IAXR;IAYE,QAAQ,EAAEO,QAZZ;IAaE,eAAY;IA1BM;AAAA;IA8BTO,gBAAgB,GAAG;EAC9BN,QAAQ,EAAEO,6BAAS,CAACC,SAAV,CAAoB,CAACD,6BAAS,CAACE,IAAX,EAAiBF,6BAAS,CAACG,KAAV,CAAgB;IAAEC,OAAO,EAAEJ,6BAAS,CAACK;GAArC,CAAjB,CAApB,CADoB;EAE9BzB,SAAS,EAAEoB,6BAAS,CAACM,MAFS;EAG9BzB,QAAQ,EAAEmB,6BAAS,CAACO,IAHU;EAI9BzB,IAAI,EAAEkB,6BAAS,CAACQ,OAJc;EAK9BvB,IAAI,EAAEe,6BAAS,CAACS,KAAV,CAAgBC,mBAAhB,CALwB;EAM9BtB,gBAAgB,EAAEY,6BAAS,CAACS,KAAV,CAAgBE,oBAAhB,CANY;EAO9BtB,OAAO,EAAEW,6BAAS,CAACE,IAPW;EAQ9BU,OAAO,EAAEZ,6BAAS,CAACE,IARW;EAS9BZ,MAAM,EAAEU,6BAAS,CAACE,IATY;EAU9BX,QAAQ,EAAES,6BAAS,CAACO,IAVU;EAW9Bf,QAAQ,EAAEQ,6BAAS,CAACa;AAXU;AAchClC,MAAM,CAACmC,SAAP,GAAmBf,gBAAnB;;;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DatePickerRange.js","sources":["../../../../src/components/DatePickerRange/DatePickerRange.tsx"],"sourcesContent":["/* eslint-disable react/prop-types */\n/* eslint-disable consistent-return */\nimport React, { useState, useRef } from 'react';\nimport { DayPickerRangeController } from 'react-dates';\nimport moment from 'moment';\nimport { aggregatedClasses, convertPropToCssClassName } from '@elliemae/ds-classnames';\nimport { ChevronLeft } from '@elliemae/ds-icons';\nimport DatePickerDay from '../DatePickerDay/DatePickerDay';\nimport DatePickerNavigation from '../DatePickerNavigation/DatePickerNavigation';\nimport DatePickerRangeHeader from '../DatePickerRangeHeader/DatePickerRangeHeader';\n\nconst blockname = 'date-range';\nconst Wrapper = aggregatedClasses('div')(blockname, 'wrapper');\n\nconst { classNameElement, classNameBlock } = convertPropToCssClassName('datepicker');\n\nconst START_DATE = 'startDate';\nconst END_DATE = 'endDate';\n\nconst DatePickerRangeDate = ({ dateStart, dateEnd, displayFormatDay = 'D', showHeader = true, otherProps }) => {\n const [selectedDateStart, setSelectedDateStart] = useState(dateStart);\n const [selectedDateEnd, setSelectedDateEnd] = useState(dateEnd);\n const [focusedInput, setFocusedInput] = useState(START_DATE);\n const datePickerRef = useRef();\n\n const handleFocusChange = () => {\n setFocusedInput(focusedInput === START_DATE ? END_DATE : START_DATE);\n };\n\n const handleDatesChange = ({ startDate, endDate }) => {\n setSelectedDateStart(startDate);\n setSelectedDateEnd(endDate);\n };\n\n const handleStartInputChange = (newDate) => {\n setSelectedDateStart(newDate);\n };\n\n const handleEndInputChange = (newDate) => {\n setSelectedDateEnd(newDate);\n };\n\n const getSafeDateStartValue = () => {\n if (selectedDateStart) {\n return moment(selectedDateStart);\n }\n };\n\n const getSafeDateEndValue = () => {\n if (selectedDateEnd) {\n return moment(selectedDateEnd);\n }\n };\n\n const safeStartDate = getSafeDateStartValue();\n const safeEndDate = getSafeDateEndValue();\n\n return (\n <Wrapper>\n {showHeader && (\n <DatePickerRangeHeader\n onEndInputChange={handleEndInputChange}\n onStartInputChange={handleStartInputChange}\n selectedEndDate={safeEndDate}\n selectedStartDate={safeStartDate}\n />\n )}\n <div ref={datePickerRef} className={classNameBlock('wrapper-day-picker-single-date-controller')}>\n <DayPickerRangeController\n {...otherProps}\n enableOutsideDays\n endDate={safeEndDate}\n focused\n focusedInput={focusedInput}\n hideKeyboardShortcutsPanel\n navNext={<DatePickerNavigation className={classNameElement('navigation-next')} />}\n navPrev={<DatePickerNavigation className={classNameElement('navigation-prev')} icon={ChevronLeft} />}\n onDatesChange={handleDatesChange}\n onFocusChange={handleFocusChange}\n renderDayContents={(date) => (\n <DatePickerDay className={classNameElement('day-contents')} date={date.format(displayFormatDay)} />\n )}\n startDate={safeStartDate}\n />\n </div>\n </Wrapper>\n );\n};\n\nexport default DatePickerRangeDate;\n"],"names":["blockname","Wrapper","aggregatedClasses","convertPropToCssClassName","classNameElement","classNameBlock","START_DATE","END_DATE","DatePickerRangeDate","dateStart","dateEnd","displayFormatDay","showHeader","otherProps","useState","selectedDateStart","setSelectedDateStart","selectedDateEnd","setSelectedDateEnd","focusedInput","setFocusedInput","datePickerRef","useRef","handleFocusChange","handleDatesChange","startDate","endDate","handleStartInputChange","newDate","handleEndInputChange","getSafeDateStartValue","moment","getSafeDateEndValue","safeStartDate","safeEndDate","React","DatePickerRangeHeader","DayPickerRangeController","DatePickerNavigation","ChevronLeft","date","DatePickerDay","format"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAWA,IAAMA,SAAS,GAAG,YAAlB;AACA,IAAMC,OAAO,GAAGC,8BAAiB,CAAC,KAAD,CAAjB,CAAyBF,SAAzB,EAAoC,SAApC,CAAhB;;AAEA,4BAA6CG,sCAAyB,CAAC,YAAD,CAAtE;AAAA,IAAQC,gBAAR,yBAAQA,gBAAR;AAAA,IAA0BC,cAA1B,yBAA0BA,cAA1B;;AAEA,IAAMC,UAAU,GAAG,WAAnB;AACA,IAAMC,QAAQ,GAAG,SAAjB;;IAEMC,mBAAmB,GAAG,SAAtBA,mBAAsB,OAAmF;
|
|
1
|
+
{"version":3,"file":"DatePickerRange.js","sources":["../../../../src/components/DatePickerRange/DatePickerRange.tsx"],"sourcesContent":["/* eslint-disable react/prop-types */\n/* eslint-disable consistent-return */\nimport React, { useState, useRef } from 'react';\nimport { DayPickerRangeController } from 'react-dates';\nimport moment from 'moment';\nimport { aggregatedClasses, convertPropToCssClassName } from '@elliemae/ds-classnames';\nimport { ChevronLeft } from '@elliemae/ds-icons';\nimport DatePickerDay from '../DatePickerDay/DatePickerDay';\nimport DatePickerNavigation from '../DatePickerNavigation/DatePickerNavigation';\nimport DatePickerRangeHeader from '../DatePickerRangeHeader/DatePickerRangeHeader';\n\nconst blockname = 'date-range';\nconst Wrapper = aggregatedClasses('div')(blockname, 'wrapper');\n\nconst { classNameElement, classNameBlock } = convertPropToCssClassName('datepicker');\n\nconst START_DATE = 'startDate';\nconst END_DATE = 'endDate';\n\nconst DatePickerRangeDate = ({ dateStart, dateEnd, displayFormatDay = 'D', showHeader = true, otherProps }) => {\n const [selectedDateStart, setSelectedDateStart] = useState(dateStart);\n const [selectedDateEnd, setSelectedDateEnd] = useState(dateEnd);\n const [focusedInput, setFocusedInput] = useState(START_DATE);\n const datePickerRef = useRef();\n\n const handleFocusChange = () => {\n setFocusedInput(focusedInput === START_DATE ? END_DATE : START_DATE);\n };\n\n const handleDatesChange = ({ startDate, endDate }) => {\n setSelectedDateStart(startDate);\n setSelectedDateEnd(endDate);\n };\n\n const handleStartInputChange = (newDate) => {\n setSelectedDateStart(newDate);\n };\n\n const handleEndInputChange = (newDate) => {\n setSelectedDateEnd(newDate);\n };\n\n const getSafeDateStartValue = () => {\n if (selectedDateStart) {\n return moment(selectedDateStart);\n }\n };\n\n const getSafeDateEndValue = () => {\n if (selectedDateEnd) {\n return moment(selectedDateEnd);\n }\n };\n\n const safeStartDate = getSafeDateStartValue();\n const safeEndDate = getSafeDateEndValue();\n\n return (\n <Wrapper>\n {showHeader && (\n <DatePickerRangeHeader\n onEndInputChange={handleEndInputChange}\n onStartInputChange={handleStartInputChange}\n selectedEndDate={safeEndDate}\n selectedStartDate={safeStartDate}\n />\n )}\n <div ref={datePickerRef} className={classNameBlock('wrapper-day-picker-single-date-controller')}>\n <DayPickerRangeController\n {...otherProps}\n enableOutsideDays\n endDate={safeEndDate}\n focused\n focusedInput={focusedInput}\n hideKeyboardShortcutsPanel\n navNext={<DatePickerNavigation className={classNameElement('navigation-next')} />}\n navPrev={<DatePickerNavigation className={classNameElement('navigation-prev')} icon={ChevronLeft} />}\n onDatesChange={handleDatesChange}\n onFocusChange={handleFocusChange}\n renderDayContents={(date) => (\n <DatePickerDay className={classNameElement('day-contents')} date={date.format(displayFormatDay)} />\n )}\n startDate={safeStartDate}\n />\n </div>\n </Wrapper>\n );\n};\n\nexport default DatePickerRangeDate;\n"],"names":["blockname","Wrapper","aggregatedClasses","convertPropToCssClassName","classNameElement","classNameBlock","START_DATE","END_DATE","DatePickerRangeDate","dateStart","dateEnd","displayFormatDay","showHeader","otherProps","useState","selectedDateStart","setSelectedDateStart","selectedDateEnd","setSelectedDateEnd","focusedInput","setFocusedInput","datePickerRef","useRef","handleFocusChange","handleDatesChange","startDate","endDate","handleStartInputChange","newDate","handleEndInputChange","getSafeDateStartValue","moment","getSafeDateEndValue","safeStartDate","safeEndDate","React","DatePickerRangeHeader","DayPickerRangeController","DatePickerNavigation","ChevronLeft","date","DatePickerDay","format"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DatePickerRangeHeader.js","sources":["../../../../src/components/DatePickerRangeHeader/DatePickerRangeHeader.tsx"],"sourcesContent":["/* eslint-disable max-lines */\n/* eslint-disable consistent-return */\n/* eslint-disable no-unused-expressions */\nimport React, { useState, useEffect, useRef } from 'react';\nimport PropTypes from 'prop-types';\nimport moment from 'moment';\nimport { DSDateInputV2, DSInputGroup } from '@elliemae/ds-form';\nimport { aggregatedClasses } from '@elliemae/ds-classnames';\n\nconst blockname = 'date-range-picker';\n\nconst DATE_FORMAT = 'MMDDYYYY';\n\n// When year is greater than 999 it means the user finished writing\n// the year for the range, because they must type 4 numbers for the year\n// to be higher than 999\nconst MAGIC_NUMBER = 999;\n\nconst Header = aggregatedClasses('div')(blockname, 'header', ({ invalidDate }) => ({ invalidDate }));\n\nconst DatePickerRangeHeader = ({\n onStartInputChange = () => null,\n onEndInputChange = () => null,\n onFocusChange = () => null,\n selectedStartDate,\n selectedEndDate,\n handleDatesChange,\n autoJumpOnEdit = true,\n}) => {\n const [startValue, setStartValue] = useState(selectedStartDate);\n const [endValue, setEndValue] = useState(selectedEndDate);\n const startInputRef = useRef();\n const endInputRef = useRef();\n\n useEffect(() => {\n if (selectedStartDate) {\n setStartValue(selectedStartDate.format(DATE_FORMAT));\n }\n if (selectedEndDate) {\n setEndValue(selectedEndDate.format(DATE_FORMAT));\n }\n }, [selectedStartDate, selectedEndDate]);\n\n const isValidRangeDate = (start, end) => {\n let isValidRange = false;\n if (start && end) {\n const momentStart = moment(start, DATE_FORMAT);\n const momentEnd = moment(end, DATE_FORMAT);\n isValidRange = momentStart.isBefore(momentEnd);\n }\n return isValidRange;\n };\n\n const handleOnFocus = (inputType) => onFocusChange(inputType);\n\n const handleOnChangeStart = (newStartValue) => {\n const y = newStartValue.substring(4);\n const momentValue = moment(newStartValue, DATE_FORMAT);\n if (newStartValue && newStartValue.length === DATE_FORMAT.length) {\n onStartInputChange(momentValue);\n }\n\n setStartValue(newStartValue);\n if (autoJumpOnEdit && parseInt(y, 10) > MAGIC_NUMBER && endInputRef?.current?.firstChild?.focus) {\n endInputRef.current.firstChild.focus();\n }\n };\n\n const handleOnChangeEnd = (newEndValue) => {\n const momentValue = moment(newEndValue, DATE_FORMAT);\n if (isValidRangeDate(startValue, newEndValue) && newEndValue && newEndValue.length === DATE_FORMAT.length) {\n onEndInputChange(momentValue);\n }\n setEndValue(newEndValue);\n };\n\n const handleOnKeyDownStart = (e) => {\n const isValid = isValidRangeDate(startValue, endValue);\n const momentStart = moment(startValue, DATE_FORMAT);\n const momentEnd = moment(endValue, DATE_FORMAT);\n if (e.key === 'Enter' && startValue) {\n onStartInputChange(momentStart);\n if (isValid) handleDatesChange({ startDate: momentStart, endDate: momentEnd });\n }\n };\n\n const handleOnKeyDownEnd = (e) => {\n const isValid = isValidRangeDate(startValue, endValue);\n const momentStart = moment(startValue, DATE_FORMAT);\n const momentEnd = moment(endValue, DATE_FORMAT);\n if (e.key === 'Enter' && isValid) {\n handleDatesChange({ startDate: momentStart, endDate: momentEnd });\n onEndInputChange(momentEnd);\n }\n };\n\n return (\n <Header>\n <DSInputGroup>\n <DSDateInputV2\n containerProps={{ 'data-testid': 'start-date' }}\n innerRef={startInputRef}\n onChange={handleOnChangeStart}\n onFocus={() => handleOnFocus('startDate')}\n onKeyDown={handleOnKeyDownStart}\n value={startValue}\n />\n <DSDateInputV2\n containerProps={{ 'data-testid': 'end-date' }}\n innerRef={endInputRef}\n onChange={handleOnChangeEnd}\n onFocus={() => handleOnFocus('endDate')}\n onKeyDown={handleOnKeyDownEnd}\n value={endValue}\n />\n </DSInputGroup>\n </Header>\n );\n};\n\nDatePickerRangeHeader.propTypes = {\n onStartInputChange: PropTypes.func,\n onEndInputChange: PropTypes.func,\n onFocusChange: PropTypes.func,\n selectedStartDate: PropTypes.any,\n selectedEndDate: PropTypes.any,\n handleDatesChange: PropTypes.func,\n autoJumpOnEdit: PropTypes.bool,\n};\n\nexport default DatePickerRangeHeader;\n"],"names":["blockname","DATE_FORMAT","MAGIC_NUMBER","Header","aggregatedClasses","invalidDate","DatePickerRangeHeader","onStartInputChange","onEndInputChange","onFocusChange","selectedStartDate","selectedEndDate","handleDatesChange","autoJumpOnEdit","useState","startValue","setStartValue","endValue","setEndValue","startInputRef","useRef","endInputRef","useEffect","format","isValidRangeDate","start","end","isValidRange","momentStart","moment","momentEnd","isBefore","handleOnFocus","inputType","handleOnChangeStart","newStartValue","y","substring","momentValue","length","parseInt","current","firstChild","focus","handleOnChangeEnd","newEndValue","handleOnKeyDownStart","e","isValid","key","startDate","endDate","handleOnKeyDownEnd","React","DSInputGroup","DSDateInputV2","propTypes","PropTypes","func","any","bool"],"mappings":";;;;;;;;;;;;;;;;AASA,IAAMA,SAAS,GAAG,mBAAlB;AAEA,IAAMC,WAAW,GAAG,UAApB;AAGA;AACA;;AACA,IAAMC,YAAY,GAAG,GAArB;AAEA,IAAMC,MAAM,GAAGC,8BAAiB,CAAC,KAAD,CAAjB,CAAyBJ,SAAzB,EAAoC,QAApC,EAA8C;
|
|
1
|
+
{"version":3,"file":"DatePickerRangeHeader.js","sources":["../../../../src/components/DatePickerRangeHeader/DatePickerRangeHeader.tsx"],"sourcesContent":["/* eslint-disable max-lines */\n/* eslint-disable consistent-return */\n/* eslint-disable no-unused-expressions */\nimport React, { useState, useEffect, useRef } from 'react';\nimport PropTypes from 'prop-types';\nimport moment from 'moment';\nimport { DSDateInputV2, DSInputGroup } from '@elliemae/ds-form';\nimport { aggregatedClasses } from '@elliemae/ds-classnames';\n\nconst blockname = 'date-range-picker';\n\nconst DATE_FORMAT = 'MMDDYYYY';\n\n// When year is greater than 999 it means the user finished writing\n// the year for the range, because they must type 4 numbers for the year\n// to be higher than 999\nconst MAGIC_NUMBER = 999;\n\nconst Header = aggregatedClasses('div')(blockname, 'header', ({ invalidDate }) => ({ invalidDate }));\n\nconst DatePickerRangeHeader = ({\n onStartInputChange = () => null,\n onEndInputChange = () => null,\n onFocusChange = () => null,\n selectedStartDate,\n selectedEndDate,\n handleDatesChange,\n autoJumpOnEdit = true,\n}) => {\n const [startValue, setStartValue] = useState(selectedStartDate);\n const [endValue, setEndValue] = useState(selectedEndDate);\n const startInputRef = useRef();\n const endInputRef = useRef();\n\n useEffect(() => {\n if (selectedStartDate) {\n setStartValue(selectedStartDate.format(DATE_FORMAT));\n }\n if (selectedEndDate) {\n setEndValue(selectedEndDate.format(DATE_FORMAT));\n }\n }, [selectedStartDate, selectedEndDate]);\n\n const isValidRangeDate = (start, end) => {\n let isValidRange = false;\n if (start && end) {\n const momentStart = moment(start, DATE_FORMAT);\n const momentEnd = moment(end, DATE_FORMAT);\n isValidRange = momentStart.isBefore(momentEnd);\n }\n return isValidRange;\n };\n\n const handleOnFocus = (inputType) => onFocusChange(inputType);\n\n const handleOnChangeStart = (newStartValue) => {\n const y = newStartValue.substring(4);\n const momentValue = moment(newStartValue, DATE_FORMAT);\n if (newStartValue && newStartValue.length === DATE_FORMAT.length) {\n onStartInputChange(momentValue);\n }\n\n setStartValue(newStartValue);\n if (autoJumpOnEdit && parseInt(y, 10) > MAGIC_NUMBER && endInputRef?.current?.firstChild?.focus) {\n endInputRef.current.firstChild.focus();\n }\n };\n\n const handleOnChangeEnd = (newEndValue) => {\n const momentValue = moment(newEndValue, DATE_FORMAT);\n if (isValidRangeDate(startValue, newEndValue) && newEndValue && newEndValue.length === DATE_FORMAT.length) {\n onEndInputChange(momentValue);\n }\n setEndValue(newEndValue);\n };\n\n const handleOnKeyDownStart = (e) => {\n const isValid = isValidRangeDate(startValue, endValue);\n const momentStart = moment(startValue, DATE_FORMAT);\n const momentEnd = moment(endValue, DATE_FORMAT);\n if (e.key === 'Enter' && startValue) {\n onStartInputChange(momentStart);\n if (isValid) handleDatesChange({ startDate: momentStart, endDate: momentEnd });\n }\n };\n\n const handleOnKeyDownEnd = (e) => {\n const isValid = isValidRangeDate(startValue, endValue);\n const momentStart = moment(startValue, DATE_FORMAT);\n const momentEnd = moment(endValue, DATE_FORMAT);\n if (e.key === 'Enter' && isValid) {\n handleDatesChange({ startDate: momentStart, endDate: momentEnd });\n onEndInputChange(momentEnd);\n }\n };\n\n return (\n <Header>\n <DSInputGroup>\n <DSDateInputV2\n containerProps={{ 'data-testid': 'start-date' }}\n innerRef={startInputRef}\n onChange={handleOnChangeStart}\n onFocus={() => handleOnFocus('startDate')}\n onKeyDown={handleOnKeyDownStart}\n value={startValue}\n />\n <DSDateInputV2\n containerProps={{ 'data-testid': 'end-date' }}\n innerRef={endInputRef}\n onChange={handleOnChangeEnd}\n onFocus={() => handleOnFocus('endDate')}\n onKeyDown={handleOnKeyDownEnd}\n value={endValue}\n />\n </DSInputGroup>\n </Header>\n );\n};\n\nDatePickerRangeHeader.propTypes = {\n onStartInputChange: PropTypes.func,\n onEndInputChange: PropTypes.func,\n onFocusChange: PropTypes.func,\n selectedStartDate: PropTypes.any,\n selectedEndDate: PropTypes.any,\n handleDatesChange: PropTypes.func,\n autoJumpOnEdit: PropTypes.bool,\n};\n\nexport default DatePickerRangeHeader;\n"],"names":["blockname","DATE_FORMAT","MAGIC_NUMBER","Header","aggregatedClasses","invalidDate","DatePickerRangeHeader","onStartInputChange","onEndInputChange","onFocusChange","selectedStartDate","selectedEndDate","handleDatesChange","autoJumpOnEdit","useState","startValue","setStartValue","endValue","setEndValue","startInputRef","useRef","endInputRef","useEffect","format","isValidRangeDate","start","end","isValidRange","momentStart","moment","momentEnd","isBefore","handleOnFocus","inputType","handleOnChangeStart","newStartValue","y","substring","momentValue","length","parseInt","current","firstChild","focus","handleOnChangeEnd","newEndValue","handleOnKeyDownStart","e","isValid","key","startDate","endDate","handleOnKeyDownEnd","React","DSInputGroup","DSDateInputV2","propTypes","PropTypes","func","any","bool"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DatePickerRenderMonth.js","sources":["../../../../src/components/DatePickerRenderMonth/DatePickerRenderMonth.tsx"],"sourcesContent":["/* eslint-disable jsx-a11y/click-events-have-key-events */\nimport React from 'react';\nimport { ChevronDoubleLeft, ChevronDoubleRight } from '@elliemae/ds-icons';\nimport { Grid } from '@elliemae/ds-grid';\n\nexport const renderMonthElement = ({ month, onYearSelect }) => (\n <Grid height=\"20px\" cols={['auto', 1, 'auto']} alignItems=\"flex-end\" mr=\"10px\">\n <div>\n <div\n role=\"button\"\n tabIndex=\"0\"\n data-testid=\"date-picker-prev-year-arrow\"\n onClick={() => onYearSelect(month, month.year() - 1)}\n >\n <ChevronDoubleLeft width={13.6} height={13.6} />\n </div>\n </div>\n <Grid data-testid=\"date-picker-header\">\n <strong>{month.format('MMMM YYYY')}</strong>\n </Grid>\n <div>\n <div\n role=\"button\"\n tabIndex=\"0\"\n data-testid=\"date-picker-next-year-arrow\"\n onClick={() => onYearSelect(month, month.year() + 1)}\n >\n <ChevronDoubleRight width={13.6} height={13.6} />\n </div>\n </div>\n </Grid>\n);\n"],"names":["renderMonthElement","month","onYearSelect","React","Grid","year","ChevronDoubleLeft","format","ChevronDoubleRight"],"mappings":";;;;;;;;;;;;AAAA;IAKaA,kBAAkB,GAAG,SAArBA,kBAAqB;
|
|
1
|
+
{"version":3,"file":"DatePickerRenderMonth.js","sources":["../../../../src/components/DatePickerRenderMonth/DatePickerRenderMonth.tsx"],"sourcesContent":["/* eslint-disable jsx-a11y/click-events-have-key-events */\nimport React from 'react';\nimport { ChevronDoubleLeft, ChevronDoubleRight } from '@elliemae/ds-icons';\nimport { Grid } from '@elliemae/ds-grid';\n\nexport const renderMonthElement = ({ month, onYearSelect }) => (\n <Grid height=\"20px\" cols={['auto', 1, 'auto']} alignItems=\"flex-end\" mr=\"10px\">\n <div>\n <div\n role=\"button\"\n tabIndex=\"0\"\n data-testid=\"date-picker-prev-year-arrow\"\n onClick={() => onYearSelect(month, month.year() - 1)}\n >\n <ChevronDoubleLeft width={13.6} height={13.6} />\n </div>\n </div>\n <Grid data-testid=\"date-picker-header\">\n <strong>{month.format('MMMM YYYY')}</strong>\n </Grid>\n <div>\n <div\n role=\"button\"\n tabIndex=\"0\"\n data-testid=\"date-picker-next-year-arrow\"\n onClick={() => onYearSelect(month, month.year() + 1)}\n >\n <ChevronDoubleRight width={13.6} height={13.6} />\n </div>\n </div>\n </Grid>\n);\n"],"names":["renderMonthElement","month","onYearSelect","React","Grid","year","ChevronDoubleLeft","format","ChevronDoubleRight"],"mappings":";;;;;;;;;;;;AAAA;IAKaA,kBAAkB,GAAG,SAArBA,kBAAqB;EAAA,IAAGC,KAAH,QAAGA,KAAH;MAAUC,YAAV,QAAUA,YAAV;EAAA,oBAChCC,wCAACC,WAAD;IAAM,MAAM,EAAC,MAAb;IAAoB,IAAI,EAAE,CAAC,MAAD,EAAS,CAAT,EAAY,MAAZ,CAA1B;IAA+C,UAAU,EAAC,UAA1D;IAAqE,EAAE,EAAC;kBACtED,kEACEA;IACE,IAAI,EAAC,QADP;IAEE,QAAQ,EAAC,GAFX;IAGE,eAAY,6BAHd;IAIE,OAAO,EAAE;MAAA,OAAMD,YAAY,CAACD,KAAD,EAAQA,KAAK,CAACI,IAAN,KAAe,CAAvB,CAAlB;;kBAETF,wCAACG,yBAAD;IAAmB,KAAK,EAAE,IAA1B;IAAgC,MAAM,EAAE;IAN1C,CADF,CADF,eAWEH,wCAACC,WAAD;IAAM,eAAY;kBAChBD,wDAASF,KAAK,CAACM,MAAN,CAAa,WAAb,CAAT,CADF,CAXF,eAcEJ,kEACEA;IACE,IAAI,EAAC,QADP;IAEE,QAAQ,EAAC,GAFX;IAGE,eAAY,6BAHd;IAIE,OAAO,EAAE;MAAA,OAAMD,YAAY,CAACD,KAAD,EAAQA,KAAK,CAACI,IAAN,KAAe,CAAvB,CAAlB;;kBAETF,wCAACK,0BAAD;IAAoB,KAAK,EAAE,IAA3B;IAAiC,MAAM,EAAE;IAN3C,CADF,CAdF,CADgC;AAAA;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DatePickerSingleDate.js","sources":["../../../../src/components/DatePickerSingleDate/DatePickerSingleDate.tsx"],"sourcesContent":["/* eslint-disable import/no-unresolved */\n/* eslint-disable react/prop-types */\n/* eslint-disable no-console */\nimport React, { useState, useRef } from 'react';\nimport { DayPickerSingleDateController } from 'react-dates';\nimport moment from 'moment';\nimport { aggregatedClasses, convertPropToCssClassName } from '@elliemae/ds-classnames';\nimport { ChevronLeft } from '@elliemae/ds-icons';\nimport DatePickerDay from '../DatePickerDay/DatePickerDay';\nimport DatePickerNavigation from '../DatePickerNavigation/DatePickerNavigation';\nimport DatePickerHeader from '../DatePickerHeader/DatePickerHeader';\n\nconst blockname = 'single-date';\nconst Wrapper = aggregatedClasses('div')(blockname, 'wrapper');\n\nconst { classNameElement, classNameBlock } = convertPropToCssClassName('datepicker');\n\nconst DatePickerSingleDate = ({\n date,\n displayFormatDay = 'D',\n isDayHighlighted = () => false,\n enableOutsideDays = true,\n showHeader = true,\n onChange = () => null,\n ...rest\n}) => {\n const [selectedDate, setSelectedDate] = useState(date);\n const [key, setKey] = useState(moment());\n const datePickerRef = useRef();\n\n const updateKeyDate = (newDate) => {\n setKey(newDate);\n };\n\n const handleDateChange = (newDate) => {\n setSelectedDate(newDate);\n setTimeout(() => onChange(newDate), 500);\n };\n\n return (\n <Wrapper>\n {showHeader && (\n <DatePickerHeader onInputChange={handleDateChange} selectedDate={selectedDate} updateKeyDate={updateKeyDate} />\n )}\n <div\n ref={datePickerRef}\n className={classNameBlock('wrapper-day-picker-single-date-controller')}\n data-testid={rest['data-testid'] || 'date-picker-single-date'}\n >\n <DayPickerSingleDateController\n key={key}\n date={selectedDate}\n enableOutsideDays={enableOutsideDays}\n focused\n hideKeyboardShortcutsPanel\n isDayHighlighted={isDayHighlighted}\n keepOpenOnDateSelect\n navNext={<DatePickerNavigation className={classNameElement('navigation-next')} />}\n navPrev={<DatePickerNavigation className={classNameElement('navigation-prev')} icon={ChevronLeft} />}\n onDateChange={handleDateChange}\n renderDayContents={(givenDate) => (\n <DatePickerDay className={classNameElement('day-contents')} date={givenDate.format(displayFormatDay)} />\n )}\n />\n </div>\n </Wrapper>\n );\n};\n\nexport default DatePickerSingleDate;\n"],"names":["blockname","Wrapper","aggregatedClasses","convertPropToCssClassName","classNameElement","classNameBlock","DatePickerSingleDate","date","displayFormatDay","isDayHighlighted","enableOutsideDays","showHeader","onChange","rest","useState","selectedDate","setSelectedDate","moment","key","setKey","datePickerRef","useRef","updateKeyDate","newDate","handleDateChange","setTimeout","React","DatePickerHeader","DayPickerSingleDateController","DatePickerNavigation","ChevronLeft","givenDate","DatePickerDay","format"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAYA,IAAMA,SAAS,GAAG,aAAlB;AACA,IAAMC,OAAO,GAAGC,8BAAiB,CAAC,KAAD,CAAjB,CAAyBF,SAAzB,EAAoC,SAApC,CAAhB;;AAEA,4BAA6CG,sCAAyB,CAAC,YAAD,CAAtE;AAAA,IAAQC,gBAAR,yBAAQA,gBAAR;AAAA,IAA0BC,cAA1B,yBAA0BA,cAA1B;;IAEMC,oBAAoB,GAAG,SAAvBA,oBAAuB,OAQvB;
|
|
1
|
+
{"version":3,"file":"DatePickerSingleDate.js","sources":["../../../../src/components/DatePickerSingleDate/DatePickerSingleDate.tsx"],"sourcesContent":["/* eslint-disable import/no-unresolved */\n/* eslint-disable react/prop-types */\n/* eslint-disable no-console */\nimport React, { useState, useRef } from 'react';\nimport { DayPickerSingleDateController } from 'react-dates';\nimport moment from 'moment';\nimport { aggregatedClasses, convertPropToCssClassName } from '@elliemae/ds-classnames';\nimport { ChevronLeft } from '@elliemae/ds-icons';\nimport DatePickerDay from '../DatePickerDay/DatePickerDay';\nimport DatePickerNavigation from '../DatePickerNavigation/DatePickerNavigation';\nimport DatePickerHeader from '../DatePickerHeader/DatePickerHeader';\n\nconst blockname = 'single-date';\nconst Wrapper = aggregatedClasses('div')(blockname, 'wrapper');\n\nconst { classNameElement, classNameBlock } = convertPropToCssClassName('datepicker');\n\nconst DatePickerSingleDate = ({\n date,\n displayFormatDay = 'D',\n isDayHighlighted = () => false,\n enableOutsideDays = true,\n showHeader = true,\n onChange = () => null,\n ...rest\n}) => {\n const [selectedDate, setSelectedDate] = useState(date);\n const [key, setKey] = useState(moment());\n const datePickerRef = useRef();\n\n const updateKeyDate = (newDate) => {\n setKey(newDate);\n };\n\n const handleDateChange = (newDate) => {\n setSelectedDate(newDate);\n setTimeout(() => onChange(newDate), 500);\n };\n\n return (\n <Wrapper>\n {showHeader && (\n <DatePickerHeader onInputChange={handleDateChange} selectedDate={selectedDate} updateKeyDate={updateKeyDate} />\n )}\n <div\n ref={datePickerRef}\n className={classNameBlock('wrapper-day-picker-single-date-controller')}\n data-testid={rest['data-testid'] || 'date-picker-single-date'}\n >\n <DayPickerSingleDateController\n key={key}\n date={selectedDate}\n enableOutsideDays={enableOutsideDays}\n focused\n hideKeyboardShortcutsPanel\n isDayHighlighted={isDayHighlighted}\n keepOpenOnDateSelect\n navNext={<DatePickerNavigation className={classNameElement('navigation-next')} />}\n navPrev={<DatePickerNavigation className={classNameElement('navigation-prev')} icon={ChevronLeft} />}\n onDateChange={handleDateChange}\n renderDayContents={(givenDate) => (\n <DatePickerDay className={classNameElement('day-contents')} date={givenDate.format(displayFormatDay)} />\n )}\n />\n </div>\n </Wrapper>\n );\n};\n\nexport default DatePickerSingleDate;\n"],"names":["blockname","Wrapper","aggregatedClasses","convertPropToCssClassName","classNameElement","classNameBlock","DatePickerSingleDate","date","displayFormatDay","isDayHighlighted","enableOutsideDays","showHeader","onChange","rest","useState","selectedDate","setSelectedDate","moment","key","setKey","datePickerRef","useRef","updateKeyDate","newDate","handleDateChange","setTimeout","React","DatePickerHeader","DayPickerSingleDateController","DatePickerNavigation","ChevronLeft","givenDate","DatePickerDay","format"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAYA,IAAMA,SAAS,GAAG,aAAlB;AACA,IAAMC,OAAO,GAAGC,8BAAiB,CAAC,KAAD,CAAjB,CAAyBF,SAAzB,EAAoC,SAApC,CAAhB;;AAEA,4BAA6CG,sCAAyB,CAAC,YAAD,CAAtE;AAAA,IAAQC,gBAAR,yBAAQA,gBAAR;AAAA,IAA0BC,cAA1B,yBAA0BA,cAA1B;;IAEMC,oBAAoB,GAAG,SAAvBA,oBAAuB,OAQvB;EAAA,IAPJC,IAOI,QAPJA,IAOI;mCANJC,gBAMI;MANJA,gBAMI,sCANe,GAMf;mCALJC,gBAKI;MALJA,gBAKI,sCALe;IAAA,OAAM,KAAN;GAKf;mCAJJC,iBAII;MAJJA,iBAII,sCAJgB,IAIhB;6BAHJC,UAGI;MAHJA,UAGI,gCAHS,IAGT;2BAFJC,QAEI;MAFJA,QAEI,8BAFO;IAAA,OAAM,IAAN;GAEP;MADDC,IACC;;EACJ,gBAAwCC,cAAQ,CAACP,IAAD,CAAhD;;MAAOQ,YAAP;MAAqBC,eAArB;;EACA,iBAAsBF,cAAQ,CAACG,0BAAM,EAAP,CAA9B;;MAAOC,GAAP;MAAYC,MAAZ;;EACA,IAAMC,aAAa,GAAGC,YAAM,EAA5B;;EAEA,IAAMC,aAAa,GAAG,SAAhBA,aAAgB,CAACC,OAAD,EAAa;IACjCJ,MAAM,CAACI,OAAD,CAAN;GADF;;EAIA,IAAMC,gBAAgB,GAAG,SAAnBA,gBAAmB,CAACD,OAAD,EAAa;IACpCP,eAAe,CAACO,OAAD,CAAf;IACAE,UAAU,CAAC;MAAA,OAAMb,QAAQ,CAACW,OAAD,CAAd;KAAD,EAA0B,GAA1B,CAAV;GAFF;;EAKA,oBACEG,wCAAC,OAAD,QACGf,UAAU,iBACTe,wCAACC,4CAAD;IAAkB,aAAa,EAAEH,gBAAjC;IAAmD,YAAY,EAAET,YAAjE;IAA+E,aAAa,EAAEO;IAFlG,eAIEI;IACE,GAAG,EAAEN,aADP;IAEE,SAAS,EAAEf,cAAc,CAAC,2CAAD,CAF3B;IAGE,eAAaQ,IAAI,CAAC,aAAD,CAAJ,IAAuB;kBAEpCa,wCAACE,wCAAD;IACE,GAAG,EAAEV,GADP;IAEE,IAAI,EAAEH,YAFR;IAGE,iBAAiB,EAAEL,iBAHrB;IAIE,OAAO,MAJT;IAKE,0BAA0B,MAL5B;IAME,gBAAgB,EAAED,gBANpB;IAOE,oBAAoB,MAPtB;IAQE,OAAO,eAAEiB,wCAACG,oDAAD;MAAsB,SAAS,EAAEzB,gBAAgB,CAAC,iBAAD;MAR5D;IASE,OAAO,eAAEsB,wCAACG,oDAAD;MAAsB,SAAS,EAAEzB,gBAAgB,CAAC,iBAAD,CAAjD;MAAsE,IAAI,EAAE0B;MATvF;IAUE,YAAY,EAAEN,gBAVhB;IAWE,iBAAiB,EAAE,2BAACO,SAAD;MAAA,oBACjBL,wCAACM,sCAAD;QAAe,SAAS,EAAE5B,gBAAgB,CAAC,cAAD,CAA1C;QAA4D,IAAI,EAAE2B,SAAS,CAACE,MAAV,CAAiBzB,gBAAjB;QADjD;;IAhBvB,CAJF,CADF;AA4BD;;;;"}
|