@razorpay/blade 12.1.1 → 12.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (65) hide show
  1. package/build/lib/native/components/ActionList/ActionList.js +1 -1
  2. package/build/lib/native/components/ActionList/ActionList.js.map +1 -1
  3. package/build/lib/native/components/ActionList/ActionListBox.native.js +1 -1
  4. package/build/lib/native/components/ActionList/ActionListBox.native.js.map +1 -1
  5. package/build/lib/native/components/ActionList/ActionListItem.js +1 -1
  6. package/build/lib/native/components/ActionList/ActionListItem.js.map +1 -1
  7. package/build/lib/native/components/ActionList/styles/getBaseListBoxWrapperStyles.js +2 -2
  8. package/build/lib/native/components/ActionList/styles/getBaseListBoxWrapperStyles.js.map +1 -1
  9. package/build/lib/native/components/BaseMenu/BaseMenuItem/BaseMenuItem.js +5 -7
  10. package/build/lib/native/components/BaseMenu/BaseMenuItem/BaseMenuItem.js.map +1 -1
  11. package/build/lib/native/components/BaseMenu/BaseMenuItem/getBaseMenuItemStyles.js +2 -1
  12. package/build/lib/native/components/BaseMenu/BaseMenuItem/getBaseMenuItemStyles.js.map +1 -1
  13. package/build/lib/native/components/BaseMenu/BaseMenuItem/tokens.js +8 -0
  14. package/build/lib/native/components/BaseMenu/BaseMenuItem/tokens.js.map +1 -0
  15. package/build/lib/web/development/components/ActionList/ActionList.js +6 -7
  16. package/build/lib/web/development/components/ActionList/ActionList.js.map +1 -1
  17. package/build/lib/web/development/components/ActionList/ActionListBox.web.js +114 -3
  18. package/build/lib/web/development/components/ActionList/ActionListBox.web.js.map +1 -1
  19. package/build/lib/web/development/components/ActionList/ActionListItem.js +57 -60
  20. package/build/lib/web/development/components/ActionList/ActionListItem.js.map +1 -1
  21. package/build/lib/web/development/components/ActionList/styles/getBaseListBoxWrapperStyles.js +8 -4
  22. package/build/lib/web/development/components/ActionList/styles/getBaseListBoxWrapperStyles.js.map +1 -1
  23. package/build/lib/web/development/components/BaseMenu/BaseMenuItem/BaseMenuItem.js +6 -7
  24. package/build/lib/web/development/components/BaseMenu/BaseMenuItem/BaseMenuItem.js.map +1 -1
  25. package/build/lib/web/development/components/BaseMenu/BaseMenuItem/StyledMenuItemContainer.web.js +3 -2
  26. package/build/lib/web/development/components/BaseMenu/BaseMenuItem/StyledMenuItemContainer.web.js.map +1 -1
  27. package/build/lib/web/development/components/BaseMenu/BaseMenuItem/getBaseMenuItemStyles.js +3 -2
  28. package/build/lib/web/development/components/BaseMenu/BaseMenuItem/getBaseMenuItemStyles.js.map +1 -1
  29. package/build/lib/web/development/components/BaseMenu/BaseMenuItem/tokens.js +26 -0
  30. package/build/lib/web/development/components/BaseMenu/BaseMenuItem/tokens.js.map +1 -0
  31. package/build/lib/web/development/components/DatePicker/Calendar.web.js +4 -2
  32. package/build/lib/web/development/components/DatePicker/Calendar.web.js.map +1 -1
  33. package/build/lib/web/development/components/DatePicker/CalendarHeader.web.js +45 -31
  34. package/build/lib/web/development/components/DatePicker/CalendarHeader.web.js.map +1 -1
  35. package/build/lib/web/development/components/DatePicker/DateInput.web.js +6 -5
  36. package/build/lib/web/development/components/DatePicker/DateInput.web.js.map +1 -1
  37. package/build/lib/web/development/components/DatePicker/DatePicker.web.js +32 -2
  38. package/build/lib/web/development/components/DatePicker/DatePicker.web.js.map +1 -1
  39. package/build/lib/web/production/components/ActionList/ActionList.js +6 -7
  40. package/build/lib/web/production/components/ActionList/ActionList.js.map +1 -1
  41. package/build/lib/web/production/components/ActionList/ActionListBox.web.js +114 -3
  42. package/build/lib/web/production/components/ActionList/ActionListBox.web.js.map +1 -1
  43. package/build/lib/web/production/components/ActionList/ActionListItem.js +57 -60
  44. package/build/lib/web/production/components/ActionList/ActionListItem.js.map +1 -1
  45. package/build/lib/web/production/components/ActionList/styles/getBaseListBoxWrapperStyles.js +8 -4
  46. package/build/lib/web/production/components/ActionList/styles/getBaseListBoxWrapperStyles.js.map +1 -1
  47. package/build/lib/web/production/components/BaseMenu/BaseMenuItem/BaseMenuItem.js +6 -7
  48. package/build/lib/web/production/components/BaseMenu/BaseMenuItem/BaseMenuItem.js.map +1 -1
  49. package/build/lib/web/production/components/BaseMenu/BaseMenuItem/StyledMenuItemContainer.web.js +3 -2
  50. package/build/lib/web/production/components/BaseMenu/BaseMenuItem/StyledMenuItemContainer.web.js.map +1 -1
  51. package/build/lib/web/production/components/BaseMenu/BaseMenuItem/getBaseMenuItemStyles.js +3 -2
  52. package/build/lib/web/production/components/BaseMenu/BaseMenuItem/getBaseMenuItemStyles.js.map +1 -1
  53. package/build/lib/web/production/components/BaseMenu/BaseMenuItem/tokens.js +26 -0
  54. package/build/lib/web/production/components/BaseMenu/BaseMenuItem/tokens.js.map +1 -0
  55. package/build/lib/web/production/components/DatePicker/Calendar.web.js +4 -2
  56. package/build/lib/web/production/components/DatePicker/Calendar.web.js.map +1 -1
  57. package/build/lib/web/production/components/DatePicker/CalendarHeader.web.js +45 -31
  58. package/build/lib/web/production/components/DatePicker/CalendarHeader.web.js.map +1 -1
  59. package/build/lib/web/production/components/DatePicker/DateInput.web.js +6 -5
  60. package/build/lib/web/production/components/DatePicker/DateInput.web.js.map +1 -1
  61. package/build/lib/web/production/components/DatePicker/DatePicker.web.js +32 -2
  62. package/build/lib/web/production/components/DatePicker/DatePicker.web.js.map +1 -1
  63. package/build/types/components/index.d.ts +15 -2
  64. package/build/types/components/index.native.d.ts +12 -1
  65. package/package.json +4 -2
@@ -1 +1 @@
1
- {"version":3,"file":"StyledMenuItemContainer.web.js","sources":["../../../../../../../src/components/BaseMenu/BaseMenuItem/StyledMenuItemContainer.web.tsx"],"sourcesContent":["import styled from 'styled-components';\nimport type { StyledBaseMenuItemContainerProps } from '../types';\nimport { getBaseMenuItemStyles } from './getBaseMenuItemStyles';\nimport { getMediaQuery, makeSize } from '~utils';\nimport { getFocusRingStyles } from '~utils/getFocusRingStyles';\nimport BaseBox from '~components/Box/BaseBox';\n\nconst StyledMenuItemContainer = styled(BaseBox)<StyledBaseMenuItemContainerProps>((props) => {\n return {\n ...getBaseMenuItemStyles({ theme: props.theme }),\n padding: makeSize(props.theme.spacing[2]),\n display: props.isVisible ? 'flex' : 'none',\n [`@media ${getMediaQuery({ min: props.theme.breakpoints.m })}`]: {\n padding: makeSize(props.theme.spacing[3]),\n },\n '&:hover:not([aria-disabled=true]), &[aria-expanded=\"true\"]': {\n backgroundColor:\n props.color === 'negative'\n ? props.theme.colors.interactive.background.negative.faded\n : props.theme.colors.interactive.background.gray.default,\n },\n '&:focus-visible': getFocusRingStyles({ theme: props.theme }),\n '&.active-focus': props.isKeydownPressed\n ? getFocusRingStyles({ theme: props.theme })\n : undefined,\n '&[aria-selected=true]': {\n backgroundColor:\n props.selectionType === 'single'\n ? props.theme.colors.interactive.background.primary.faded\n : undefined,\n },\n '&[aria-selected=true]:hover': {\n backgroundColor: props.theme.colors.interactive.background.primary.fadedHighlighted,\n },\n };\n});\n\nexport { StyledMenuItemContainer };\n"],"names":["StyledMenuItemContainer","styled","BaseBox","withConfig","displayName","componentId","props","_objectSpread","getBaseMenuItemStyles","theme","_defineProperty","padding","makeSize","spacing","display","isVisible","concat","getMediaQuery","min","breakpoints","m","backgroundColor","color","colors","interactive","background","negative","faded","gray","getFocusRingStyles","isKeydownPressed","undefined","selectionType","primary","fadedHighlighted"],"mappings":";;;;;;;;;;;;;AAOA,IAAMA,uBAAuB,gBAAGC,MAAM,CAACC,OAAO,CAAC,CAAAC,UAAA,CAAA;EAAAC,WAAA,EAAA,qDAAA;EAAAC,WAAA,EAAA,UAAA;AAAA,CAAmC,CAAA,CAAA,UAACC,KAAK,EAAK;AAC3F,EAAA,OAAAC,aAAA,CAAAA,aAAA,CAAA,EAAA,EACKC,qBAAqB,CAAC;IAAEC,KAAK,EAAEH,KAAK,CAACG,KAAAA;AAAM,GAAC,CAAC,CAAA,EAAA,EAAA,EAAAC,eAAA,CAAAA,eAAA,CAAAA,eAAA,CAAAA,eAAA,CAAAA,eAAA,CAAAA,eAAA,CAAA;IAChDC,OAAO,EAAEC,QAAQ,CAACN,KAAK,CAACG,KAAK,CAACI,OAAO,CAAC,CAAC,CAAC,CAAC;AACzCC,IAAAA,OAAO,EAAER,KAAK,CAACS,SAAS,GAAG,MAAM,GAAG,MAAA;GAAMC,EAAAA,SAAAA,CAAAA,MAAA,CAC/BC,aAAa,CAAC;AAAEC,IAAAA,GAAG,EAAEZ,KAAK,CAACG,KAAK,CAACU,WAAW,CAACC,CAAAA;AAAE,GAAC,CAAC,CAAK,EAAA;IAC/DT,OAAO,EAAEC,QAAQ,CAACN,KAAK,CAACG,KAAK,CAACI,OAAO,CAAC,CAAC,CAAC,CAAA;GACzC,CAAA,EACD,4DAA4D,EAAE;AAC5DQ,IAAAA,eAAe,EACbf,KAAK,CAACgB,KAAK,KAAK,UAAU,GACtBhB,KAAK,CAACG,KAAK,CAACc,MAAM,CAACC,WAAW,CAACC,UAAU,CAACC,QAAQ,CAACC,KAAK,GACxDrB,KAAK,CAACG,KAAK,CAACc,MAAM,CAACC,WAAW,CAACC,UAAU,CAACG,IAAI,CAAA,SAAA,CAAA;AACtD,GAAC,CACD,EAAA,iBAAiB,EAAEC,kBAAkB,CAAC;IAAEpB,KAAK,EAAEH,KAAK,CAACG,KAAAA;GAAO,CAAC,GAC7D,gBAAgB,EAAEH,KAAK,CAACwB,gBAAgB,GACpCD,kBAAkB,CAAC;IAAEpB,KAAK,EAAEH,KAAK,CAACG,KAAAA;AAAM,GAAC,CAAC,GAC1CsB,SAAS,CAAA,EACb,uBAAuB,EAAE;IACvBV,eAAe,EACbf,KAAK,CAAC0B,aAAa,KAAK,QAAQ,GAC5B1B,KAAK,CAACG,KAAK,CAACc,MAAM,CAACC,WAAW,CAACC,UAAU,CAACQ,OAAO,CAACN,KAAK,GACvDI,SAAAA;GACP,CAAA,EACD,6BAA6B,EAAE;AAC7BV,IAAAA,eAAe,EAAEf,KAAK,CAACG,KAAK,CAACc,MAAM,CAACC,WAAW,CAACC,UAAU,CAACQ,OAAO,CAACC,gBAAAA;GACpE,CAAA,CAAA,CAAA;AAEL,CAAC;;;;"}
1
+ {"version":3,"file":"StyledMenuItemContainer.web.js","sources":["../../../../../../../src/components/BaseMenu/BaseMenuItem/StyledMenuItemContainer.web.tsx"],"sourcesContent":["import styled from 'styled-components';\nimport type { StyledBaseMenuItemContainerProps } from '../types';\nimport { getBaseMenuItemStyles } from './getBaseMenuItemStyles';\nimport { getItemPadding } from './tokens';\nimport { getMediaQuery, makeSize } from '~utils';\nimport { getFocusRingStyles } from '~utils/getFocusRingStyles';\nimport BaseBox from '~components/Box/BaseBox';\n\nconst StyledMenuItemContainer = styled(BaseBox)<StyledBaseMenuItemContainerProps>((props) => {\n return {\n ...getBaseMenuItemStyles({ theme: props.theme }),\n padding: makeSize(getItemPadding(props.theme).itemPaddingMobile),\n display: props.isVisible ? 'flex' : 'none',\n [`@media ${getMediaQuery({ min: props.theme.breakpoints.m })}`]: {\n padding: makeSize(getItemPadding(props.theme).itemPaddingDesktop),\n },\n '&:hover:not([aria-disabled=true]), &[aria-expanded=\"true\"]': {\n backgroundColor:\n props.color === 'negative'\n ? props.theme.colors.interactive.background.negative.faded\n : props.theme.colors.interactive.background.gray.default,\n },\n '&:focus-visible': getFocusRingStyles({ theme: props.theme }),\n '&.active-focus': props.isKeydownPressed\n ? getFocusRingStyles({ theme: props.theme })\n : undefined,\n '&[aria-selected=true]': {\n backgroundColor:\n props.selectionType === 'single'\n ? props.theme.colors.interactive.background.primary.faded\n : undefined,\n },\n '&[aria-selected=true]:hover': {\n backgroundColor: props.theme.colors.interactive.background.primary.fadedHighlighted,\n },\n };\n});\n\nexport { StyledMenuItemContainer };\n"],"names":["StyledMenuItemContainer","styled","BaseBox","withConfig","displayName","componentId","props","_objectSpread","getBaseMenuItemStyles","theme","_defineProperty","padding","makeSize","getItemPadding","itemPaddingMobile","display","isVisible","concat","getMediaQuery","min","breakpoints","m","itemPaddingDesktop","backgroundColor","color","colors","interactive","background","negative","faded","gray","getFocusRingStyles","isKeydownPressed","undefined","selectionType","primary","fadedHighlighted"],"mappings":";;;;;;;;;;;;;;AAQA,IAAMA,uBAAuB,gBAAGC,MAAM,CAACC,OAAO,CAAC,CAAAC,UAAA,CAAA;EAAAC,WAAA,EAAA,qDAAA;EAAAC,WAAA,EAAA,UAAA;AAAA,CAAmC,CAAA,CAAA,UAACC,KAAK,EAAK;AAC3F,EAAA,OAAAC,aAAA,CAAAA,aAAA,CAAA,EAAA,EACKC,qBAAqB,CAAC;IAAEC,KAAK,EAAEH,KAAK,CAACG,KAAAA;AAAM,GAAC,CAAC,CAAA,EAAA,EAAA,EAAAC,eAAA,CAAAA,eAAA,CAAAA,eAAA,CAAAA,eAAA,CAAAA,eAAA,CAAAA,eAAA,CAAA;IAChDC,OAAO,EAAEC,QAAQ,CAACC,cAAc,CAACP,KAAK,CAACG,KAAK,CAAC,CAACK,iBAAiB,CAAC;AAChEC,IAAAA,OAAO,EAAET,KAAK,CAACU,SAAS,GAAG,MAAM,GAAG,MAAA;GAAMC,EAAAA,SAAAA,CAAAA,MAAA,CAC/BC,aAAa,CAAC;AAAEC,IAAAA,GAAG,EAAEb,KAAK,CAACG,KAAK,CAACW,WAAW,CAACC,CAAAA;AAAE,GAAC,CAAC,CAAK,EAAA;IAC/DV,OAAO,EAAEC,QAAQ,CAACC,cAAc,CAACP,KAAK,CAACG,KAAK,CAAC,CAACa,kBAAkB,CAAA;GACjE,CAAA,EACD,4DAA4D,EAAE;AAC5DC,IAAAA,eAAe,EACbjB,KAAK,CAACkB,KAAK,KAAK,UAAU,GACtBlB,KAAK,CAACG,KAAK,CAACgB,MAAM,CAACC,WAAW,CAACC,UAAU,CAACC,QAAQ,CAACC,KAAK,GACxDvB,KAAK,CAACG,KAAK,CAACgB,MAAM,CAACC,WAAW,CAACC,UAAU,CAACG,IAAI,CAAA,SAAA,CAAA;AACtD,GAAC,CACD,EAAA,iBAAiB,EAAEC,kBAAkB,CAAC;IAAEtB,KAAK,EAAEH,KAAK,CAACG,KAAAA;GAAO,CAAC,GAC7D,gBAAgB,EAAEH,KAAK,CAAC0B,gBAAgB,GACpCD,kBAAkB,CAAC;IAAEtB,KAAK,EAAEH,KAAK,CAACG,KAAAA;AAAM,GAAC,CAAC,GAC1CwB,SAAS,CAAA,EACb,uBAAuB,EAAE;IACvBV,eAAe,EACbjB,KAAK,CAAC4B,aAAa,KAAK,QAAQ,GAC5B5B,KAAK,CAACG,KAAK,CAACgB,MAAM,CAACC,WAAW,CAACC,UAAU,CAACQ,OAAO,CAACN,KAAK,GACvDI,SAAAA;GACP,CAAA,EACD,6BAA6B,EAAE;AAC7BV,IAAAA,eAAe,EAAEjB,KAAK,CAACG,KAAK,CAACgB,MAAM,CAACC,WAAW,CAACC,UAAU,CAACQ,OAAO,CAACC,gBAAAA;GACpE,CAAA,CAAA,CAAA;AAEL,CAAC;;;;"}
@@ -1,3 +1,4 @@
1
+ import { getItemMargin } from './tokens.js';
1
2
  import '../../../utils/index.js';
2
3
  import '../../../utils/makeSize/index.js';
3
4
  import { makeBorderSize } from '../../../utils/makeBorderSize/makeBorderSize.js';
@@ -12,8 +13,8 @@ var getBaseMenuItemStyles = function getBaseMenuItemStyles(props) {
12
13
  textAlign: isReactNative() ? undefined : 'left',
13
14
  backgroundColor: 'transparent',
14
15
  borderRadius: makeSize(props.theme.border.radius.medium),
15
- marginTop: makeSize(props.theme.spacing[1]),
16
- marginBottom: makeSize(props.theme.spacing[1]),
16
+ marginTop: makeSize(getItemMargin(props.theme)),
17
+ marginBottom: makeSize(getItemMargin(props.theme)),
17
18
  textDecoration: 'none',
18
19
  cursor: 'pointer',
19
20
  width: '100%'
@@ -1 +1 @@
1
- {"version":3,"file":"getBaseMenuItemStyles.js","sources":["../../../../../../../src/components/BaseMenu/BaseMenuItem/getBaseMenuItemStyles.ts"],"sourcesContent":["import type { CSSObject } from 'styled-components';\nimport type { Theme } from '~components/BladeProvider';\nimport { isReactNative, makeBorderSize } from '~utils';\nimport { makeSize } from '~utils/makeSize';\n\nconst getBaseMenuItemStyles = (props: { theme: Theme }): CSSObject => {\n return {\n borderWidth: makeBorderSize(props.theme.border.width.none),\n display: 'flex',\n flexDirection: 'column',\n textAlign: isReactNative() ? undefined : 'left',\n backgroundColor: 'transparent',\n borderRadius: makeSize(props.theme.border.radius.medium),\n marginTop: makeSize(props.theme.spacing[1]),\n marginBottom: makeSize(props.theme.spacing[1]),\n textDecoration: 'none',\n cursor: 'pointer',\n width: '100%',\n };\n};\n\nexport { getBaseMenuItemStyles };\n"],"names":["getBaseMenuItemStyles","props","borderWidth","makeBorderSize","theme","border","width","none","display","flexDirection","textAlign","isReactNative","undefined","backgroundColor","borderRadius","makeSize","radius","medium","marginTop","spacing","marginBottom","textDecoration","cursor"],"mappings":";;;;;;AAKA,IAAMA,qBAAqB,GAAG,SAAxBA,qBAAqBA,CAAIC,KAAuB,EAAgB;EACpE,OAAO;AACLC,IAAAA,WAAW,EAAEC,cAAc,CAACF,KAAK,CAACG,KAAK,CAACC,MAAM,CAACC,KAAK,CAACC,IAAI,CAAC;AAC1DC,IAAAA,OAAO,EAAE,MAAM;AACfC,IAAAA,aAAa,EAAE,QAAQ;AACvBC,IAAAA,SAAS,EAAEC,aAAa,EAAE,GAAGC,SAAS,GAAG,MAAM;AAC/CC,IAAAA,eAAe,EAAE,aAAa;AAC9BC,IAAAA,YAAY,EAAEC,QAAQ,CAACd,KAAK,CAACG,KAAK,CAACC,MAAM,CAACW,MAAM,CAACC,MAAM,CAAC;IACxDC,SAAS,EAAEH,QAAQ,CAACd,KAAK,CAACG,KAAK,CAACe,OAAO,CAAC,CAAC,CAAC,CAAC;IAC3CC,YAAY,EAAEL,QAAQ,CAACd,KAAK,CAACG,KAAK,CAACe,OAAO,CAAC,CAAC,CAAC,CAAC;AAC9CE,IAAAA,cAAc,EAAE,MAAM;AACtBC,IAAAA,MAAM,EAAE,SAAS;AACjBhB,IAAAA,KAAK,EAAE,MAAA;GACR,CAAA;AACH;;;;"}
1
+ {"version":3,"file":"getBaseMenuItemStyles.js","sources":["../../../../../../../src/components/BaseMenu/BaseMenuItem/getBaseMenuItemStyles.ts"],"sourcesContent":["import type { CSSObject } from 'styled-components';\nimport { getItemMargin } from './tokens';\nimport type { Theme } from '~components/BladeProvider';\nimport { isReactNative, makeBorderSize } from '~utils';\nimport { makeSize } from '~utils/makeSize';\n\nconst getBaseMenuItemStyles = (props: { theme: Theme }): CSSObject => {\n return {\n borderWidth: makeBorderSize(props.theme.border.width.none),\n display: 'flex',\n flexDirection: 'column',\n textAlign: isReactNative() ? undefined : 'left',\n backgroundColor: 'transparent',\n borderRadius: makeSize(props.theme.border.radius.medium),\n marginTop: makeSize(getItemMargin(props.theme)),\n marginBottom: makeSize(getItemMargin(props.theme)),\n textDecoration: 'none',\n cursor: 'pointer',\n width: '100%',\n };\n};\n\nexport { getBaseMenuItemStyles };\n"],"names":["getBaseMenuItemStyles","props","borderWidth","makeBorderSize","theme","border","width","none","display","flexDirection","textAlign","isReactNative","undefined","backgroundColor","borderRadius","makeSize","radius","medium","marginTop","getItemMargin","marginBottom","textDecoration","cursor"],"mappings":";;;;;;;AAMA,IAAMA,qBAAqB,GAAG,SAAxBA,qBAAqBA,CAAIC,KAAuB,EAAgB;EACpE,OAAO;AACLC,IAAAA,WAAW,EAAEC,cAAc,CAACF,KAAK,CAACG,KAAK,CAACC,MAAM,CAACC,KAAK,CAACC,IAAI,CAAC;AAC1DC,IAAAA,OAAO,EAAE,MAAM;AACfC,IAAAA,aAAa,EAAE,QAAQ;AACvBC,IAAAA,SAAS,EAAEC,aAAa,EAAE,GAAGC,SAAS,GAAG,MAAM;AAC/CC,IAAAA,eAAe,EAAE,aAAa;AAC9BC,IAAAA,YAAY,EAAEC,QAAQ,CAACd,KAAK,CAACG,KAAK,CAACC,MAAM,CAACW,MAAM,CAACC,MAAM,CAAC;IACxDC,SAAS,EAAEH,QAAQ,CAACI,aAAa,CAAClB,KAAK,CAACG,KAAK,CAAC,CAAC;IAC/CgB,YAAY,EAAEL,QAAQ,CAACI,aAAa,CAAClB,KAAK,CAACG,KAAK,CAAC,CAAC;AAClDiB,IAAAA,cAAc,EAAE,MAAM;AACtBC,IAAAA,MAAM,EAAE,SAAS;AACjBhB,IAAAA,KAAK,EAAE,MAAA;GACR,CAAA;AACH;;;;"}
@@ -0,0 +1,26 @@
1
+ import '../../../tokens/global/index.js';
2
+ import { size } from '../../../tokens/global/size.js';
3
+
4
+ var itemFirstRowHeight = size[20];
5
+ var getItemPadding = function getItemPadding(theme) {
6
+ return {
7
+ itemPaddingMobile: theme.spacing[2],
8
+ itemPaddingDesktop: theme.spacing[3]
9
+ };
10
+ };
11
+ var getItemMargin = function getItemMargin(theme) {
12
+ return theme.spacing[1];
13
+ };
14
+ var getItemHeight = function getItemHeight(theme) {
15
+ return {
16
+ itemHeightMobile:
17
+ // eslint-disable-next-line @typescript-eslint/restrict-plus-operands
18
+ itemFirstRowHeight + getItemPadding(theme).itemPaddingMobile * 2 + getItemMargin(theme) * 2,
19
+ itemHeightDesktop:
20
+ // eslint-disable-next-line @typescript-eslint/restrict-plus-operands
21
+ itemFirstRowHeight + getItemPadding(theme).itemPaddingDesktop * 2 + getItemMargin(theme) * 2
22
+ };
23
+ };
24
+
25
+ export { getItemHeight, getItemMargin, getItemPadding, itemFirstRowHeight };
26
+ //# sourceMappingURL=tokens.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tokens.js","sources":["../../../../../../../src/components/BaseMenu/BaseMenuItem/tokens.ts"],"sourcesContent":["import type { Theme } from '~components/BladeProvider';\nimport { size } from '~tokens/global';\n\nconst itemFirstRowHeight = size[20];\n\nconst getItemPadding = (\n theme: Theme,\n): {\n itemPaddingMobile: 4;\n itemPaddingDesktop: 8;\n} => {\n return {\n itemPaddingMobile: theme.spacing[2],\n itemPaddingDesktop: theme.spacing[3],\n };\n};\n\nconst getItemMargin = (theme: Theme): number => {\n return theme.spacing[1];\n};\n\nconst getItemHeight = (\n theme: Theme,\n): {\n itemHeightMobile: number;\n itemHeightDesktop: number;\n} => {\n return {\n itemHeightMobile:\n // eslint-disable-next-line @typescript-eslint/restrict-plus-operands\n itemFirstRowHeight + getItemPadding(theme).itemPaddingMobile * 2 + getItemMargin(theme) * 2,\n itemHeightDesktop:\n // eslint-disable-next-line @typescript-eslint/restrict-plus-operands\n itemFirstRowHeight + getItemPadding(theme).itemPaddingDesktop * 2 + getItemMargin(theme) * 2,\n };\n};\n\nexport { itemFirstRowHeight, getItemPadding, getItemMargin, getItemHeight };\n"],"names":["itemFirstRowHeight","size","getItemPadding","theme","itemPaddingMobile","spacing","itemPaddingDesktop","getItemMargin","getItemHeight","itemHeightMobile","itemHeightDesktop"],"mappings":";;;AAGA,IAAMA,kBAAkB,GAAGC,IAAI,CAAC,EAAE,EAAC;AAEnC,IAAMC,cAAc,GAAG,SAAjBA,cAAcA,CAClBC,KAAY,EAIT;EACH,OAAO;AACLC,IAAAA,iBAAiB,EAAED,KAAK,CAACE,OAAO,CAAC,CAAC,CAAC;AACnCC,IAAAA,kBAAkB,EAAEH,KAAK,CAACE,OAAO,CAAC,CAAC,CAAA;GACpC,CAAA;AACH,EAAC;AAED,IAAME,aAAa,GAAG,SAAhBA,aAAaA,CAAIJ,KAAY,EAAa;AAC9C,EAAA,OAAOA,KAAK,CAACE,OAAO,CAAC,CAAC,CAAC,CAAA;AACzB,EAAC;AAED,IAAMG,aAAa,GAAG,SAAhBA,aAAaA,CACjBL,KAAY,EAIT;EACH,OAAO;IACLM,gBAAgB;AACd;AACAT,IAAAA,kBAAkB,GAAGE,cAAc,CAACC,KAAK,CAAC,CAACC,iBAAiB,GAAG,CAAC,GAAGG,aAAa,CAACJ,KAAK,CAAC,GAAG,CAAC;IAC7FO,iBAAiB;AACf;AACAV,IAAAA,kBAAkB,GAAGE,cAAc,CAACC,KAAK,CAAC,CAACG,kBAAkB,GAAG,CAAC,GAAGC,aAAa,CAACJ,KAAK,CAAC,GAAG,CAAA;GAC9F,CAAA;AACH;;;;"}
@@ -18,7 +18,7 @@ import { throwBladeError } from '../../utils/logger/logger.js';
18
18
  import { metaAttribute } from '../../utils/metaAttribute/metaAttribute.web.js';
19
19
  import { MetaConstants } from '../../utils/metaAttribute/metaConstants.js';
20
20
 
21
- var _excluded = ["firstDayOfWeek", "selectionType", "allowSingleDateInRange", "defaultPicker", "picker", "onPickerChange", "date", "defaultDate", "onDateChange", "onNext", "onPrevious", "presets"];
21
+ var _excluded = ["firstDayOfWeek", "selectionType", "allowSingleDateInRange", "defaultPicker", "picker", "onPickerChange", "date", "defaultDate", "onDateChange", "onNext", "onPrevious", "presets", "showLevelChangeLink"];
22
22
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
23
23
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
24
24
  var Calendar = function Calendar(_ref) {
@@ -36,6 +36,7 @@ var Calendar = function Calendar(_ref) {
36
36
  onNext = _ref.onNext,
37
37
  onPrevious = _ref.onPrevious,
38
38
  presets = _ref.presets,
39
+ showLevelChangeLink = _ref.showLevelChangeLink,
39
40
  props = _objectWithoutProperties(_ref, _excluded);
40
41
  var isRange = selectionType === 'range';
41
42
  var _useControllableState = useControllableState({
@@ -140,7 +141,8 @@ var Calendar = function Calendar(_ref) {
140
141
  onNextDecade: handleNextDecade,
141
142
  onPreviousDecade: handlePreviousDecade,
142
143
  onNextYear: handleNextYear,
143
- onPreviousYear: handlePreviousYear
144
+ onPreviousYear: handlePreviousYear,
145
+ showLevelChangeLink: showLevelChangeLink
144
146
  }), /*#__PURE__*/jsx(CalendarGradientStyles, {
145
147
  isRange: isRange,
146
148
  date: currentDate,
@@ -1 +1 @@
1
- {"version":3,"file":"Calendar.web.js","sources":["../../../../../../src/components/DatePicker/Calendar.web.tsx"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\n/* eslint-disable @typescript-eslint/explicit-function-return-type */\nimport dayjs from 'dayjs';\nimport React from 'react';\nimport type { CalendarLevel } from '@mantine/dates';\nimport { useDatesContext, DatePicker } from '@mantine/dates';\nimport type { CalendarProps, DateSelectionType, PickerType, DateValue } from './types';\nimport { CalendarHeader } from './CalendarHeader';\nimport { CalendarGradientStyles, CalendarStyles } from './CalendarStyles';\nimport { useUncontrolledDates } from './useControlledDates';\nimport { levelToPicker, pickerToLevel, classes } from './constants';\nimport { shiftTimezone } from './shiftTimezone';\nimport { useControllableState } from '~utils/useControllable';\nimport { useIsMobile } from '~utils/useIsMobile';\nimport { throwBladeError } from '~utils/logger';\nimport { metaAttribute, MetaConstants } from '~utils/metaAttribute';\n\nconst Calendar = <Type extends DateSelectionType>({\n firstDayOfWeek = 0,\n selectionType,\n allowSingleDateInRange,\n defaultPicker = 'day',\n picker,\n onPickerChange,\n date,\n defaultDate,\n onDateChange,\n onNext,\n onPrevious,\n presets,\n ...props\n}: CalendarProps<Type> & {\n date?: Date;\n defaultDate?: Date;\n onDateChange?: (date: DateValue) => void;\n}): React.ReactElement => {\n const isRange = selectionType === 'range';\n\n const [level, setLevel] = useControllableState<CalendarLevel>({\n defaultValue: pickerToLevel[defaultPicker],\n value: pickerToLevel[picker!],\n onChange: (level) => {\n onPickerChange?.(levelToPicker[level]);\n },\n });\n\n if (__DEV__) {\n if (isRange && level !== 'month') {\n throwBladeError({\n message: `Cannot use range DatePicker with pickerType: ${levelToPicker[level]}, Only \"day\" is supported`,\n moduleName: 'DatePicker',\n });\n }\n }\n\n const [_date, setDate] = useUncontrolledDates({\n type: 'default',\n value: date,\n defaultValue: defaultDate,\n onChange: onDateChange,\n });\n\n const dateContext = useDatesContext();\n const isMobile = useIsMobile();\n const currentDate = _date ?? shiftTimezone('add', new Date());\n const numberOfColumns = isMobile || !isRange ? 1 : 2;\n const columnsToScroll = numberOfColumns;\n\n const handleNextMonth = () => {\n const nextDate = dayjs(currentDate).add(columnsToScroll, 'month').toDate();\n onNext?.({ date: nextDate, type: 'month' });\n setDate(nextDate);\n };\n\n const handlePreviousMonth = () => {\n const nextDate = dayjs(currentDate).subtract(columnsToScroll, 'month').toDate();\n onPrevious?.({ date: nextDate, type: 'month' });\n setDate(nextDate);\n };\n\n const handleNextYear = () => {\n const nextDate = dayjs(currentDate).add(columnsToScroll, 'year').toDate();\n onNext?.({ date: nextDate, type: 'year' });\n setDate(nextDate);\n };\n\n const handlePreviousYear = () => {\n const nextDate = dayjs(currentDate).subtract(columnsToScroll, 'year').toDate();\n onPrevious?.({ date: nextDate, type: 'year' });\n setDate(nextDate);\n };\n\n const handleNextDecade = () => {\n const nextDate = dayjs(currentDate)\n .add(10 * columnsToScroll, 'year')\n .toDate();\n onNext?.({ date: nextDate, type: 'decade' });\n setDate(nextDate);\n };\n\n const handlePreviousDecade = () => {\n const nextDate = dayjs(currentDate)\n .subtract(10 * columnsToScroll, 'year')\n .toDate();\n onPrevious?.({ date: nextDate, type: 'decade' });\n setDate(nextDate);\n };\n\n return (\n <CalendarStyles\n display=\"flex\"\n flexDirection=\"column\"\n gap=\"spacing.7\"\n pickerType={levelToPicker[level]}\n {...metaAttribute({ name: MetaConstants.Calendar })}\n >\n <CalendarHeader\n isRange={isRange}\n date={currentDate}\n onLevelChange={(level) => setLevel(() => level)}\n pickerType={levelToPicker[level] as PickerType}\n onNextMonth={handleNextMonth}\n onPreviousMonth={handlePreviousMonth}\n onNextDecade={handleNextDecade}\n onPreviousDecade={handlePreviousDecade}\n onNextYear={handleNextYear}\n onPreviousYear={handlePreviousYear}\n />\n <CalendarGradientStyles isRange={isRange} date={currentDate}>\n <DatePicker\n withCellSpacing={false}\n type={isRange ? 'range' : 'default'}\n date={_date}\n locale={dateContext.locale}\n level={level}\n onDateChange={setDate}\n onLevelChange={(level) => setLevel(() => level)}\n numberOfColumns={numberOfColumns}\n weekdayFormat=\"ddd\"\n firstDayOfWeek={firstDayOfWeek}\n // @ts-expect-error unable to narrow props based on `type`\n allowSingleDateInRange={allowSingleDateInRange}\n classNames={{\n monthLevelGroup: classes.levelsGroup,\n yearLevelGroup: classes.levelsGroup,\n decadeLevelGroup: classes.levelsGroup,\n day: classes.dayCell,\n monthsListCell: classes.yearsListControl,\n yearsListCell: classes.monthsListControl,\n monthCell: classes.dayCell,\n calendarHeader: classes.calendarHeader,\n monthRow: classes.row,\n yearsListRow: classes.row,\n monthsListRow: classes.row,\n weekdaysRow: classes.row,\n weekday: classes.weekday,\n }}\n {...props}\n />\n </CalendarGradientStyles>\n </CalendarStyles>\n );\n};\n\nexport { Calendar };\n"],"names":["Calendar","_ref","_ref$firstDayOfWeek","firstDayOfWeek","selectionType","allowSingleDateInRange","_ref$defaultPicker","defaultPicker","picker","onPickerChange","date","defaultDate","onDateChange","onNext","onPrevious","presets","props","_objectWithoutProperties","_excluded","isRange","_useControllableState","useControllableState","defaultValue","pickerToLevel","value","onChange","level","levelToPicker","_useControllableState2","_slicedToArray","setLevel","throwBladeError","message","concat","moduleName","_useUncontrolledDates","useUncontrolledDates","type","_useUncontrolledDates2","_date","setDate","dateContext","useDatesContext","isMobile","useIsMobile","currentDate","shiftTimezone","Date","numberOfColumns","columnsToScroll","handleNextMonth","nextDate","dayjs","add","toDate","handlePreviousMonth","subtract","handleNextYear","handlePreviousYear","handleNextDecade","handlePreviousDecade","_jsxs","CalendarStyles","_objectSpread","display","flexDirection","gap","pickerType","metaAttribute","name","MetaConstants","children","_jsx","CalendarHeader","onLevelChange","onNextMonth","onPreviousMonth","onNextDecade","onPreviousDecade","onNextYear","onPreviousYear","CalendarGradientStyles","DatePicker","withCellSpacing","locale","weekdayFormat","classNames","monthLevelGroup","classes","levelsGroup","yearLevelGroup","decadeLevelGroup","day","dayCell","monthsListCell","yearsListControl","yearsListCell","monthsListControl","monthCell","calendarHeader","monthRow","row","yearsListRow","monthsListRow","weekdaysRow","weekday"],"mappings":"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"}
1
+ {"version":3,"file":"Calendar.web.js","sources":["../../../../../../src/components/DatePicker/Calendar.web.tsx"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\n/* eslint-disable @typescript-eslint/explicit-function-return-type */\nimport dayjs from 'dayjs';\nimport React from 'react';\nimport type { CalendarLevel } from '@mantine/dates';\nimport { useDatesContext, DatePicker } from '@mantine/dates';\nimport type { CalendarProps, DateSelectionType, PickerType, DateValue } from './types';\nimport { CalendarHeader } from './CalendarHeader';\nimport { CalendarGradientStyles, CalendarStyles } from './CalendarStyles';\nimport { useUncontrolledDates } from './useControlledDates';\nimport { levelToPicker, pickerToLevel, classes } from './constants';\nimport { shiftTimezone } from './shiftTimezone';\nimport { useControllableState } from '~utils/useControllable';\nimport { useIsMobile } from '~utils/useIsMobile';\nimport { throwBladeError } from '~utils/logger';\nimport { metaAttribute, MetaConstants } from '~utils/metaAttribute';\n\nconst Calendar = <Type extends DateSelectionType>({\n firstDayOfWeek = 0,\n selectionType,\n allowSingleDateInRange,\n defaultPicker = 'day',\n picker,\n onPickerChange,\n date,\n defaultDate,\n onDateChange,\n onNext,\n onPrevious,\n presets,\n showLevelChangeLink,\n ...props\n}: CalendarProps<Type> & {\n date?: Date;\n defaultDate?: Date;\n onDateChange?: (date: DateValue) => void;\n showLevelChangeLink?: boolean;\n}): React.ReactElement => {\n const isRange = selectionType === 'range';\n\n const [level, setLevel] = useControllableState<CalendarLevel>({\n defaultValue: pickerToLevel[defaultPicker],\n value: pickerToLevel[picker!],\n onChange: (level) => {\n onPickerChange?.(levelToPicker[level]);\n },\n });\n\n if (__DEV__) {\n if (isRange && level !== 'month') {\n throwBladeError({\n message: `Cannot use range DatePicker with pickerType: ${levelToPicker[level]}, Only \"day\" is supported`,\n moduleName: 'DatePicker',\n });\n }\n }\n\n const [_date, setDate] = useUncontrolledDates({\n type: 'default',\n value: date,\n defaultValue: defaultDate,\n onChange: onDateChange,\n });\n\n const dateContext = useDatesContext();\n const isMobile = useIsMobile();\n const currentDate = _date ?? shiftTimezone('add', new Date());\n const numberOfColumns = isMobile || !isRange ? 1 : 2;\n const columnsToScroll = numberOfColumns;\n\n const handleNextMonth = () => {\n const nextDate = dayjs(currentDate).add(columnsToScroll, 'month').toDate();\n onNext?.({ date: nextDate, type: 'month' });\n setDate(nextDate);\n };\n\n const handlePreviousMonth = () => {\n const nextDate = dayjs(currentDate).subtract(columnsToScroll, 'month').toDate();\n onPrevious?.({ date: nextDate, type: 'month' });\n setDate(nextDate);\n };\n\n const handleNextYear = () => {\n const nextDate = dayjs(currentDate).add(columnsToScroll, 'year').toDate();\n onNext?.({ date: nextDate, type: 'year' });\n setDate(nextDate);\n };\n\n const handlePreviousYear = () => {\n const nextDate = dayjs(currentDate).subtract(columnsToScroll, 'year').toDate();\n onPrevious?.({ date: nextDate, type: 'year' });\n setDate(nextDate);\n };\n\n const handleNextDecade = () => {\n const nextDate = dayjs(currentDate)\n .add(10 * columnsToScroll, 'year')\n .toDate();\n onNext?.({ date: nextDate, type: 'decade' });\n setDate(nextDate);\n };\n\n const handlePreviousDecade = () => {\n const nextDate = dayjs(currentDate)\n .subtract(10 * columnsToScroll, 'year')\n .toDate();\n onPrevious?.({ date: nextDate, type: 'decade' });\n setDate(nextDate);\n };\n\n return (\n <CalendarStyles\n display=\"flex\"\n flexDirection=\"column\"\n gap=\"spacing.7\"\n pickerType={levelToPicker[level]}\n {...metaAttribute({ name: MetaConstants.Calendar })}\n >\n <CalendarHeader\n isRange={isRange}\n date={currentDate}\n onLevelChange={(level) => setLevel(() => level)}\n pickerType={levelToPicker[level] as PickerType}\n onNextMonth={handleNextMonth}\n onPreviousMonth={handlePreviousMonth}\n onNextDecade={handleNextDecade}\n onPreviousDecade={handlePreviousDecade}\n onNextYear={handleNextYear}\n onPreviousYear={handlePreviousYear}\n showLevelChangeLink={showLevelChangeLink}\n />\n <CalendarGradientStyles isRange={isRange} date={currentDate}>\n <DatePicker\n withCellSpacing={false}\n type={isRange ? 'range' : 'default'}\n date={_date}\n locale={dateContext.locale}\n level={level}\n onDateChange={setDate}\n onLevelChange={(level) => setLevel(() => level)}\n numberOfColumns={numberOfColumns}\n weekdayFormat=\"ddd\"\n firstDayOfWeek={firstDayOfWeek}\n // @ts-expect-error unable to narrow props based on `type`\n allowSingleDateInRange={allowSingleDateInRange}\n classNames={{\n monthLevelGroup: classes.levelsGroup,\n yearLevelGroup: classes.levelsGroup,\n decadeLevelGroup: classes.levelsGroup,\n day: classes.dayCell,\n monthsListCell: classes.yearsListControl,\n yearsListCell: classes.monthsListControl,\n monthCell: classes.dayCell,\n calendarHeader: classes.calendarHeader,\n monthRow: classes.row,\n yearsListRow: classes.row,\n monthsListRow: classes.row,\n weekdaysRow: classes.row,\n weekday: classes.weekday,\n }}\n {...props}\n />\n </CalendarGradientStyles>\n </CalendarStyles>\n );\n};\n\nexport { Calendar };\n"],"names":["Calendar","_ref","_ref$firstDayOfWeek","firstDayOfWeek","selectionType","allowSingleDateInRange","_ref$defaultPicker","defaultPicker","picker","onPickerChange","date","defaultDate","onDateChange","onNext","onPrevious","presets","showLevelChangeLink","props","_objectWithoutProperties","_excluded","isRange","_useControllableState","useControllableState","defaultValue","pickerToLevel","value","onChange","level","levelToPicker","_useControllableState2","_slicedToArray","setLevel","throwBladeError","message","concat","moduleName","_useUncontrolledDates","useUncontrolledDates","type","_useUncontrolledDates2","_date","setDate","dateContext","useDatesContext","isMobile","useIsMobile","currentDate","shiftTimezone","Date","numberOfColumns","columnsToScroll","handleNextMonth","nextDate","dayjs","add","toDate","handlePreviousMonth","subtract","handleNextYear","handlePreviousYear","handleNextDecade","handlePreviousDecade","_jsxs","CalendarStyles","_objectSpread","display","flexDirection","gap","pickerType","metaAttribute","name","MetaConstants","children","_jsx","CalendarHeader","onLevelChange","onNextMonth","onPreviousMonth","onNextDecade","onPreviousDecade","onNextYear","onPreviousYear","CalendarGradientStyles","DatePicker","withCellSpacing","locale","weekdayFormat","classNames","monthLevelGroup","classes","levelsGroup","yearLevelGroup","decadeLevelGroup","day","dayCell","monthsListCell","yearsListControl","yearsListCell","monthsListControl","monthCell","calendarHeader","monthRow","row","yearsListRow","monthsListRow","weekdaysRow","weekday"],"mappings":"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"}
@@ -6,29 +6,51 @@ import '../Button/index.js';
6
6
  import '../Typography/index.js';
7
7
  import '../Icons/index.js';
8
8
  import '../Link/index.js';
9
- import { jsxs, jsx, Fragment } from 'react/jsx-runtime';
9
+ import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
10
+ import Link from '../Link/Link/Link.js';
11
+ import ChevronDownIcon from '../Icons/ChevronDownIcon/ChevronDownIcon.js';
12
+ import { Text } from '../Typography/Text/Text.js';
10
13
  import { Box } from '../Box/Box.js';
11
14
  import Button from '../Button/Button/Button.js';
12
15
  import ChevronLeftIcon from '../Icons/ChevronLeftIcon/ChevronLeftIcon.js';
13
- import { Text } from '../Typography/Text/Text.js';
14
- import Link from '../Link/Link/Link.js';
15
- import ChevronDownIcon from '../Icons/ChevronDownIcon/ChevronDownIcon.js';
16
16
  import ChevronRightIcon from '../Icons/ChevronRightIcon/ChevronRightIcon.js';
17
17
 
18
18
  /* eslint-disable @typescript-eslint/explicit-function-return-type */
19
19
 
20
- var CalendarHeader = function CalendarHeader(_ref) {
20
+ var CalendarLevelIndicator = function CalendarLevelIndicator(_ref) {
21
+ var onClick = _ref.onClick,
22
+ showLevelChangeLink = _ref.showLevelChangeLink,
23
+ accessibilityLabel = _ref.accessibilityLabel,
24
+ text = _ref.text;
25
+ return showLevelChangeLink ? /*#__PURE__*/jsx(Link, {
26
+ onClick: onClick,
27
+ size: "large",
28
+ variant: "button",
29
+ color: "neutral",
30
+ iconPosition: "right",
31
+ icon: ChevronDownIcon,
32
+ accessibilityLabel: accessibilityLabel,
33
+ children: text
34
+ }) : /*#__PURE__*/jsx(Text, {
35
+ size: "large",
36
+ weight: "medium",
37
+ color: "interactive.text.neutral.normal",
38
+ children: text
39
+ });
40
+ };
41
+ var CalendarHeader = function CalendarHeader(_ref2) {
21
42
  var _i18nState$locale;
22
- var isRange = _ref.isRange,
23
- date = _ref.date,
24
- pickerType = _ref.pickerType,
25
- onNextMonth = _ref.onNextMonth,
26
- onNextYear = _ref.onNextYear,
27
- onNextDecade = _ref.onNextDecade,
28
- onPreviousMonth = _ref.onPreviousMonth,
29
- onPreviousYear = _ref.onPreviousYear,
30
- onPreviousDecade = _ref.onPreviousDecade,
31
- onLevelChange = _ref.onLevelChange;
43
+ var isRange = _ref2.isRange,
44
+ date = _ref2.date,
45
+ pickerType = _ref2.pickerType,
46
+ onNextMonth = _ref2.onNextMonth,
47
+ onNextYear = _ref2.onNextYear,
48
+ onNextDecade = _ref2.onNextDecade,
49
+ onPreviousMonth = _ref2.onPreviousMonth,
50
+ onPreviousYear = _ref2.onPreviousYear,
51
+ onPreviousDecade = _ref2.onPreviousDecade,
52
+ onLevelChange = _ref2.onLevelChange,
53
+ showLevelChangeLink = _ref2.showLevelChangeLink;
32
54
  var _useI18nContext = useI18nContext(),
33
55
  i18nState = _useI18nContext.i18nState;
34
56
  var locale = convertIntlToDayjsLocale((_i18nState$locale = i18nState === null || i18nState === void 0 ? void 0 : i18nState.locale) !== null && _i18nState$locale !== void 0 ? _i18nState$locale : 'en-IN');
@@ -119,28 +141,20 @@ var CalendarHeader = function CalendarHeader(_ref) {
119
141
  display: "flex",
120
142
  gap: "spacing.5",
121
143
  alignItems: "center",
122
- children: [pickerType === 'day' && /*#__PURE__*/jsxs(Link, {
144
+ children: [pickerType === 'day' && /*#__PURE__*/jsx(CalendarLevelIndicator, {
123
145
  onClick: function onClick() {
124
- onLevelChange('year');
146
+ return onLevelChange('year');
125
147
  },
126
- size: "large",
127
- variant: "button",
128
- color: "neutral",
129
- iconPosition: "right",
130
- icon: ChevronDownIcon,
148
+ showLevelChangeLink: showLevelChangeLink,
131
149
  accessibilityLabel: "Change month",
132
- children: [month, " ", year]
133
- }), pickerType === 'month' && /*#__PURE__*/jsx(Link, {
150
+ text: "".concat(month, " ").concat(year)
151
+ }), pickerType === 'month' && /*#__PURE__*/jsx(CalendarLevelIndicator, {
134
152
  onClick: function onClick() {
135
- onLevelChange('decade');
153
+ return onLevelChange('decade');
136
154
  },
137
- size: "large",
138
- variant: "button",
139
- color: "neutral",
140
- iconPosition: "right",
141
- icon: ChevronDownIcon,
155
+ showLevelChangeLink: showLevelChangeLink,
142
156
  accessibilityLabel: "Change decade",
143
- children: year
157
+ text: year
144
158
  }), pickerType === 'year' && /*#__PURE__*/jsxs(Text, {
145
159
  size: "large",
146
160
  weight: "medium",
@@ -1 +1 @@
1
- {"version":3,"file":"CalendarHeader.web.js","sources":["../../../../../../src/components/DatePicker/CalendarHeader.web.tsx"],"sourcesContent":["/* eslint-disable @typescript-eslint/explicit-function-return-type */\nimport type { CalendarLevel as MantineCalendarLevel } from '@mantine/dates';\nimport dayjs from 'dayjs';\nimport { useI18nContext } from '@razorpay/i18nify-react';\nimport type { PickerType, DateValue, DatesRangeValue } from './types';\nimport { convertIntlToDayjsLocale } from './utils';\nimport { Box } from '~components/Box';\nimport { Button } from '~components/Button';\nimport { Text } from '~components/Typography';\nimport { ChevronDownIcon, ChevronLeftIcon, ChevronRightIcon } from '~components/Icons';\nimport { Link } from '~components/Link';\n\ntype CalendarHeaderProps = {\n isRange: boolean;\n date: DateValue | DatesRangeValue;\n pickerType: PickerType;\n onNextMonth: () => void;\n onPreviousMonth: () => void;\n onNextYear: () => void;\n onPreviousYear: () => void;\n onNextDecade: () => void;\n onPreviousDecade: () => void;\n onLevelChange: (level: MantineCalendarLevel) => void;\n};\n\nconst CalendarHeader = ({\n isRange,\n date,\n pickerType,\n onNextMonth,\n onNextYear,\n onNextDecade,\n onPreviousMonth,\n onPreviousYear,\n onPreviousDecade,\n onLevelChange,\n}: CalendarHeaderProps): React.ReactElement => {\n const { i18nState } = useI18nContext();\n const locale = convertIntlToDayjsLocale(i18nState?.locale ?? 'en-IN');\n\n const month = dayjs(date as Date)\n .locale(locale)\n .format('MMMM');\n const year = dayjs(date as Date)\n .locale(locale)\n .format('YYYY');\n const currentYear = dayjs(date as Date).year();\n const startYearOfDecade = Math.floor(currentYear / 10) * 10;\n const endYearOfDecade = startYearOfDecade + 9;\n const nextMonth = dayjs(date as Date)\n .locale(locale)\n .add(1, 'month')\n .format('MMMM');\n const nextYear = dayjs(date as Date)\n .locale(locale)\n .add(1, 'month')\n .format('YYYY');\n\n const handleNext = () => {\n switch (pickerType) {\n case 'day':\n onNextMonth();\n break;\n case 'month':\n onNextYear();\n break;\n case 'year':\n onNextDecade();\n break;\n default:\n throw new Error('Invalid picker type');\n }\n };\n\n const handlePrevious = () => {\n switch (pickerType) {\n case 'day':\n onPreviousMonth();\n break;\n case 'month':\n onPreviousYear();\n break;\n case 'year':\n onPreviousDecade();\n break;\n default:\n throw new Error('Invalid picker type');\n }\n };\n\n return (\n <Box\n display={isRange ? 'grid' : 'flex'}\n gridTemplateColumns={{ base: 'auto 1fr auto', m: 'auto 1fr 1fr auto' }}\n justifyContent=\"space-between\"\n alignItems=\"center\"\n >\n <Button\n justifySelf=\"start\"\n size=\"small\"\n variant=\"tertiary\"\n onClick={handlePrevious}\n accessibilityLabel=\"Previous\"\n icon={ChevronLeftIcon}\n />\n {isRange ? (\n <>\n <Text\n display={{ base: 'none', m: 'block' }}\n size=\"large\"\n weight=\"medium\"\n marginRight=\"spacing.7\"\n justifySelf=\"center\"\n >\n {month} {year}\n </Text>\n <Text\n display={{ base: 'none', m: 'block' }}\n size=\"large\"\n weight=\"medium\"\n marginLeft=\"spacing.7\"\n justifySelf=\"center\"\n >\n {nextMonth} {nextYear}\n </Text>\n <Text\n display={{ base: 'block', m: 'none' }}\n size=\"large\"\n weight=\"medium\"\n justifySelf=\"center\"\n >\n {month} {year}\n </Text>\n </>\n ) : (\n <Box display=\"flex\" gap=\"spacing.5\" alignItems=\"center\">\n {pickerType === 'day' && (\n <Link\n onClick={() => {\n onLevelChange('year');\n }}\n size=\"large\"\n variant=\"button\"\n color=\"neutral\"\n iconPosition=\"right\"\n icon={ChevronDownIcon}\n accessibilityLabel=\"Change month\"\n >\n {month} {year}\n </Link>\n )}\n {pickerType === 'month' && (\n <Link\n onClick={() => {\n onLevelChange('decade');\n }}\n size=\"large\"\n variant=\"button\"\n color=\"neutral\"\n iconPosition=\"right\"\n icon={ChevronDownIcon}\n accessibilityLabel=\"Change decade\"\n >\n {year}\n </Link>\n )}\n {pickerType === 'year' && (\n <Text size=\"large\" weight=\"medium\" color=\"interactive.text.neutral.normal\">\n {startYearOfDecade} - {endYearOfDecade}\n </Text>\n )}\n </Box>\n )}\n <Button\n justifySelf=\"end\"\n size=\"small\"\n variant=\"tertiary\"\n onClick={handleNext}\n accessibilityLabel=\"Next\"\n icon={ChevronRightIcon}\n />\n </Box>\n );\n};\n\nexport { CalendarHeader };\n"],"names":["CalendarHeader","_ref","_i18nState$locale","isRange","date","pickerType","onNextMonth","onNextYear","onNextDecade","onPreviousMonth","onPreviousYear","onPreviousDecade","onLevelChange","_useI18nContext","useI18nContext","i18nState","locale","convertIntlToDayjsLocale","month","dayjs","format","year","currentYear","startYearOfDecade","Math","floor","endYearOfDecade","nextMonth","add","nextYear","handleNext","Error","handlePrevious","_jsxs","Box","display","gridTemplateColumns","base","m","justifyContent","alignItems","children","_jsx","Button","justifySelf","size","variant","onClick","accessibilityLabel","icon","ChevronLeftIcon","_Fragment","Text","weight","marginRight","marginLeft","gap","Link","color","iconPosition","ChevronDownIcon","ChevronRightIcon"],"mappings":"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"}
1
+ {"version":3,"file":"CalendarHeader.web.js","sources":["../../../../../../src/components/DatePicker/CalendarHeader.web.tsx"],"sourcesContent":["/* eslint-disable @typescript-eslint/explicit-function-return-type */\nimport type { CalendarLevel as MantineCalendarLevel } from '@mantine/dates';\nimport dayjs from 'dayjs';\nimport { useI18nContext } from '@razorpay/i18nify-react';\nimport type { PickerType, DateValue, DatesRangeValue } from './types';\nimport { convertIntlToDayjsLocale } from './utils';\nimport { Box } from '~components/Box';\nimport { Button } from '~components/Button';\nimport { Text } from '~components/Typography';\nimport { ChevronDownIcon, ChevronLeftIcon, ChevronRightIcon } from '~components/Icons';\nimport { Link } from '~components/Link';\n\ntype CalendarHeaderProps = {\n isRange: boolean;\n date: DateValue | DatesRangeValue;\n pickerType: PickerType;\n showLevelChangeLink?: boolean;\n onNextMonth: () => void;\n onPreviousMonth: () => void;\n onNextYear: () => void;\n onPreviousYear: () => void;\n onNextDecade: () => void;\n onPreviousDecade: () => void;\n onLevelChange: (level: MantineCalendarLevel) => void;\n};\nconst CalendarLevelIndicator = ({\n onClick,\n showLevelChangeLink,\n accessibilityLabel,\n text,\n}: {\n onClick: () => void;\n showLevelChangeLink?: boolean;\n accessibilityLabel: string;\n text: string;\n}): React.ReactElement => {\n return showLevelChangeLink ? (\n <Link\n onClick={onClick}\n size=\"large\"\n variant=\"button\"\n color=\"neutral\"\n iconPosition=\"right\"\n icon={ChevronDownIcon}\n accessibilityLabel={accessibilityLabel}\n >\n {text}\n </Link>\n ) : (\n <Text size=\"large\" weight=\"medium\" color=\"interactive.text.neutral.normal\">\n {text}\n </Text>\n );\n};\n\nconst CalendarHeader = ({\n isRange,\n date,\n pickerType,\n onNextMonth,\n onNextYear,\n onNextDecade,\n onPreviousMonth,\n onPreviousYear,\n onPreviousDecade,\n onLevelChange,\n showLevelChangeLink,\n}: CalendarHeaderProps & {\n showLevelChangeLink?: boolean;\n}): React.ReactElement => {\n const { i18nState } = useI18nContext();\n const locale = convertIntlToDayjsLocale(i18nState?.locale ?? 'en-IN');\n\n const month = dayjs(date as Date)\n .locale(locale)\n .format('MMMM');\n const year = dayjs(date as Date)\n .locale(locale)\n .format('YYYY');\n const currentYear = dayjs(date as Date).year();\n const startYearOfDecade = Math.floor(currentYear / 10) * 10;\n const endYearOfDecade = startYearOfDecade + 9;\n const nextMonth = dayjs(date as Date)\n .locale(locale)\n .add(1, 'month')\n .format('MMMM');\n const nextYear = dayjs(date as Date)\n .locale(locale)\n .add(1, 'month')\n .format('YYYY');\n\n const handleNext = () => {\n switch (pickerType) {\n case 'day':\n onNextMonth();\n break;\n case 'month':\n onNextYear();\n break;\n case 'year':\n onNextDecade();\n break;\n default:\n throw new Error('Invalid picker type');\n }\n };\n\n const handlePrevious = () => {\n switch (pickerType) {\n case 'day':\n onPreviousMonth();\n break;\n case 'month':\n onPreviousYear();\n break;\n case 'year':\n onPreviousDecade();\n break;\n default:\n throw new Error('Invalid picker type');\n }\n };\n\n return (\n <Box\n display={isRange ? 'grid' : 'flex'}\n gridTemplateColumns={{ base: 'auto 1fr auto', m: 'auto 1fr 1fr auto' }}\n justifyContent=\"space-between\"\n alignItems=\"center\"\n >\n <Button\n justifySelf=\"start\"\n size=\"small\"\n variant=\"tertiary\"\n onClick={handlePrevious}\n accessibilityLabel=\"Previous\"\n icon={ChevronLeftIcon}\n />\n {isRange ? (\n <>\n <Text\n display={{ base: 'none', m: 'block' }}\n size=\"large\"\n weight=\"medium\"\n marginRight=\"spacing.7\"\n justifySelf=\"center\"\n >\n {month} {year}\n </Text>\n <Text\n display={{ base: 'none', m: 'block' }}\n size=\"large\"\n weight=\"medium\"\n marginLeft=\"spacing.7\"\n justifySelf=\"center\"\n >\n {nextMonth} {nextYear}\n </Text>\n <Text\n display={{ base: 'block', m: 'none' }}\n size=\"large\"\n weight=\"medium\"\n justifySelf=\"center\"\n >\n {month} {year}\n </Text>\n </>\n ) : (\n <Box display=\"flex\" gap=\"spacing.5\" alignItems=\"center\">\n {pickerType === 'day' && (\n <CalendarLevelIndicator\n onClick={() => onLevelChange('year')}\n showLevelChangeLink={showLevelChangeLink}\n accessibilityLabel=\"Change month\"\n text={`${month} ${year}`}\n />\n )}\n\n {pickerType === 'month' && (\n <CalendarLevelIndicator\n onClick={() => onLevelChange('decade')}\n showLevelChangeLink={showLevelChangeLink}\n accessibilityLabel=\"Change decade\"\n text={year}\n />\n )}\n {pickerType === 'year' && (\n <Text size=\"large\" weight=\"medium\" color=\"interactive.text.neutral.normal\">\n {startYearOfDecade} - {endYearOfDecade}\n </Text>\n )}\n </Box>\n )}\n <Button\n justifySelf=\"end\"\n size=\"small\"\n variant=\"tertiary\"\n onClick={handleNext}\n accessibilityLabel=\"Next\"\n icon={ChevronRightIcon}\n />\n </Box>\n );\n};\n\nexport { CalendarHeader };\n"],"names":["CalendarLevelIndicator","_ref","onClick","showLevelChangeLink","accessibilityLabel","text","_jsx","Link","size","variant","color","iconPosition","icon","ChevronDownIcon","children","Text","weight","CalendarHeader","_ref2","_i18nState$locale","isRange","date","pickerType","onNextMonth","onNextYear","onNextDecade","onPreviousMonth","onPreviousYear","onPreviousDecade","onLevelChange","_useI18nContext","useI18nContext","i18nState","locale","convertIntlToDayjsLocale","month","dayjs","format","year","currentYear","startYearOfDecade","Math","floor","endYearOfDecade","nextMonth","add","nextYear","handleNext","Error","handlePrevious","_jsxs","Box","display","gridTemplateColumns","base","m","justifyContent","alignItems","Button","justifySelf","ChevronLeftIcon","_Fragment","marginRight","marginLeft","gap","concat","ChevronRightIcon"],"mappings":"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"}
@@ -21,7 +21,7 @@ import ArrowRightIcon from '../Icons/ArrowRightIcon/ArrowRightIcon.js';
21
21
  import { makeSize } from '../../utils/makeSize/makeSize.js';
22
22
 
23
23
  var _excluded = ["value", "name", "isRequired", "isDisabled"],
24
- _excluded2 = ["selectionType", "referenceProps", "inputRef", "date", "label", "labelPosition", "autoFocus", "name", "size", "necessityIndicator", "successText", "errorText", "helpText"];
24
+ _excluded2 = ["selectionType", "referenceProps", "inputRef", "date", "label", "labelPosition", "autoFocus", "name", "size", "necessityIndicator", "successText", "errorText", "helpText", "format", "placeholder"];
25
25
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
26
26
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
27
27
  var _DateInput = function _DateInput(props, ref) {
@@ -85,9 +85,10 @@ var _DatePickerInput = function _DatePickerInput(_ref3, ref) {
85
85
  successText = _ref3.successText,
86
86
  errorText = _ref3.errorText,
87
87
  helpText = _ref3.helpText,
88
+ format = _ref3.format,
89
+ placeholder = _ref3.placeholder,
88
90
  props = _objectWithoutProperties(_ref3, _excluded2);
89
91
  var isMobile = useIsMobile();
90
- var format = 'DD/MM/YYYY';
91
92
  var isLarge = size$1 === 'large';
92
93
  var hasLabel = typeof label === 'string' ? Boolean(label) : Boolean((label === null || label === void 0 ? void 0 : label.start) || (label === null || label === void 0 ? void 0 : label.end));
93
94
  var isLabelPositionLeft = labelPosition === 'left';
@@ -115,7 +116,7 @@ var _DatePickerInput = function _DatePickerInput(_ref3, ref) {
115
116
  id: "start-date",
116
117
  labelPosition: labelPosition,
117
118
  label: label,
118
- placeholder: format,
119
+ placeholder: placeholder || format,
119
120
  popupId: referenceProps['aria-controls'],
120
121
  isPopupExpanded: referenceProps['aria-expanded'],
121
122
  size: size$1,
@@ -180,7 +181,7 @@ var _DatePickerInput = function _DatePickerInput(_ref3, ref) {
180
181
  leadingIcon: CalendarIcon,
181
182
  label: label === null || label === void 0 ? void 0 : label.start,
182
183
  labelPosition: labelPosition,
183
- placeholder: format,
184
+ placeholder: placeholder,
184
185
  popupId: referenceProps['aria-controls'],
185
186
  isPopupExpanded: referenceProps['aria-expanded'],
186
187
  size: size$1,
@@ -210,7 +211,7 @@ var _DatePickerInput = function _DatePickerInput(_ref3, ref) {
210
211
  isDisabled: props.isDisabled
211
212
  }, makeAnalyticsAttribute(props))), /*#__PURE__*/jsx(DateInput, _objectSpread(_objectSpread({
212
213
  id: "end-date",
213
- placeholder: format,
214
+ placeholder: placeholder,
214
215
  leadingIcon: CalendarIcon,
215
216
  label: shouldRenderEndLabel(),
216
217
  labelPosition: isLabelPositionLeft ? undefined : labelPosition,
@@ -1 +1 @@
1
- {"version":3,"file":"DateInput.web.js","sources":["../../../../../../src/components/DatePicker/DateInput.web.tsx"],"sourcesContent":["/* eslint-disable jsx-a11y/no-autofocus */\n/* eslint-disable @typescript-eslint/no-unnecessary-type-assertion */\n/* eslint-disable @typescript-eslint/no-explicit-any */\nimport React from 'react';\nimport { useDatesContext } from '@mantine/dates';\nimport type { DatePickerInputProps } from './types';\nimport { getFormattedDate } from './utils';\nimport BaseBox from '~components/Box/BaseBox';\nimport { ArrowRightIcon, CalendarIcon } from '~components/Icons';\nimport type { BaseInputProps } from '~components/Input/BaseInput';\nimport { BaseInput } from '~components/Input/BaseInput';\nimport { size as sizeTokens } from '~tokens/global';\nimport { isReactNative, makeSize } from '~utils';\nimport type { BladeElementRef, DataAnalyticsAttribute } from '~utils/types';\nimport { useIsMobile } from '~utils/useIsMobile';\nimport { makeAnalyticsAttribute } from '~utils/makeAnalyticsAttribute';\n\nconst _DateInput = (\n props: BaseInputProps,\n ref: React.ForwardedRef<BladeElementRef>,\n): React.ReactElement => {\n return (\n <BaseInput\n {...props}\n ref={ref}\n as=\"button\"\n textAlign=\"left\"\n hideLabelText={props.label?.length === 0}\n autoCompleteSuggestionType=\"none\"\n hasPopup=\"dialog\"\n onClick={(e) => {\n if (props.isDisabled) {\n return;\n }\n props.onClick?.(e);\n }}\n onKeyDown={({ event }) => {\n // @ts-expect-error\n props.onKeyDown?.(event);\n }}\n />\n );\n};\n\nconst DateInput = React.forwardRef(_DateInput);\n\nconst HiddenInput = ({\n value,\n name,\n isRequired,\n isDisabled,\n ...rest\n}: {\n value: string;\n name?: string;\n isRequired?: boolean;\n isDisabled?: boolean;\n} & DataAnalyticsAttribute): React.ReactElement => {\n if (isReactNative()) return <></>;\n\n return (\n <input\n hidden={true}\n name={name}\n value={value}\n required={isRequired}\n disabled={isDisabled}\n readOnly\n {...makeAnalyticsAttribute(rest)}\n />\n );\n};\n\nconst iconVerticalMargin = {\n medium: sizeTokens[14],\n large: sizeTokens[24],\n} as const;\nconst LEFT_LABEL_WIDTH = 132;\n\nconst _DatePickerInput = (\n {\n selectionType,\n referenceProps,\n inputRef,\n date,\n label,\n labelPosition,\n autoFocus,\n name,\n size = 'medium',\n necessityIndicator,\n successText,\n errorText,\n helpText,\n ...props\n }: DatePickerInputProps,\n ref: React.ForwardedRef<any>,\n): React.ReactElement => {\n const isMobile = useIsMobile();\n const format = 'DD/MM/YYYY';\n const isLarge = size === 'large';\n const hasLabel = typeof label === 'string' ? Boolean(label) : Boolean(label?.start || label?.end);\n const isLabelPositionLeft = labelPosition === 'left';\n const isLabelPositionTop = labelPosition === 'top';\n const isLabelPositionVisuallyTop = hasLabel && (isLabelPositionTop || isMobile);\n\n const { locale } = useDatesContext();\n\n if (selectionType == 'single') {\n const dateValue = getFormattedDate({\n date,\n format,\n labelSeparator: '-',\n locale,\n type: 'default',\n });\n return (\n <BaseBox width=\"100%\">\n <HiddenInput\n value={dateValue}\n name={name}\n isRequired={props.isRequired}\n isDisabled={props.isDisabled}\n />\n <DateInput\n ref={ref as never}\n id=\"start-date\"\n labelPosition={labelPosition}\n label={label}\n placeholder={format}\n popupId={referenceProps['aria-controls']}\n isPopupExpanded={referenceProps['aria-expanded']}\n size={size}\n autoFocus={autoFocus}\n value={dateValue}\n componentName=\"DatePickerInput\"\n necessityIndicator={necessityIndicator}\n successText={successText}\n errorText={errorText}\n helpText={helpText}\n {...props}\n {...referenceProps}\n />\n </BaseBox>\n );\n }\n\n if (selectionType == 'range') {\n const shouldRenderEndLabel = (): string | undefined => {\n let finalLabel: string | undefined = '';\n\n const labelEnd = isLabelPositionLeft ? undefined : label?.end;\n if (isLabelPositionVisuallyTop && labelEnd === undefined) {\n // Empty space, nbsp;\n finalLabel = '\\u00A0';\n } else if (isLabelPositionLeft) {\n finalLabel = undefined;\n } else {\n finalLabel = label?.end;\n }\n return finalLabel;\n };\n\n const startValue = getFormattedDate({\n type: 'default',\n date: date[0],\n format,\n labelSeparator: '-',\n locale,\n });\n const endValue = getFormattedDate({\n type: 'default',\n date: date[1],\n format,\n labelSeparator: '-',\n locale,\n });\n return (\n <BaseBox\n width=\"100%\"\n display=\"flex\"\n flexDirection=\"row\"\n gap=\"spacing.4\"\n alignItems=\"flex-start\"\n ref={ref as never}\n >\n <BaseBox flex={1} flexBasis={isLabelPositionLeft ? LEFT_LABEL_WIDTH : '0px'}>\n <HiddenInput\n value={startValue}\n name={name?.start}\n isRequired={props.isRequired}\n isDisabled={props.isDisabled}\n />\n <DateInput\n setInputWrapperRef={(node) => ((inputRef as any)!.current = node)}\n id=\"start-date\"\n leadingIcon={CalendarIcon}\n label={label?.start}\n labelPosition={labelPosition}\n placeholder={format}\n popupId={referenceProps['aria-controls']}\n isPopupExpanded={referenceProps['aria-expanded']}\n size={size}\n autoFocus={autoFocus}\n value={startValue}\n componentName=\"DatePickerInputStart\"\n necessityIndicator={necessityIndicator}\n successText={successText?.start}\n errorText={errorText?.start}\n helpText={helpText?.start}\n {...props}\n {...referenceProps}\n />\n </BaseBox>\n <BaseBox flexShrink={0} alignSelf=\"start\">\n <ArrowRightIcon\n size=\"medium\"\n marginTop={\n // Hacky layouting because the we cannot put this inside the internal layout of BaseInput.\n hasLabel && (!isLabelPositionLeft || isMobile)\n ? `calc(${makeSize(iconVerticalMargin[size])} + ${makeSize(\n isLarge ? sizeTokens[20] : sizeTokens[15],\n )})`\n : makeSize(iconVerticalMargin[size])\n }\n />\n </BaseBox>\n <BaseBox flex={1}>\n <HiddenInput\n value={endValue}\n name={name?.end}\n isRequired={props.isRequired}\n isDisabled={props.isDisabled}\n {...makeAnalyticsAttribute(props)}\n />\n <DateInput\n id=\"end-date\"\n placeholder={format}\n leadingIcon={CalendarIcon}\n label={shouldRenderEndLabel()}\n labelPosition={isLabelPositionLeft ? undefined : labelPosition}\n popupId={referenceProps['aria-controls']}\n isPopupExpanded={referenceProps['aria-expanded']}\n size={size}\n value={endValue}\n componentName=\"DatePickerInputEnd\"\n successText={successText?.end}\n errorText={errorText?.end}\n helpText={helpText?.end}\n {...props}\n {...referenceProps}\n />\n </BaseBox>\n </BaseBox>\n );\n }\n\n return <></>;\n};\n\nconst DatePickerInput = React.forwardRef(_DatePickerInput);\nexport { DatePickerInput };\n"],"names":["_DateInput","props","ref","_props$label","_jsx","BaseInput","_objectSpread","as","textAlign","hideLabelText","label","length","autoCompleteSuggestionType","hasPopup","onClick","e","_props$onClick","isDisabled","call","onKeyDown","_ref","_props$onKeyDown","event","DateInput","React","forwardRef","HiddenInput","_ref2","value","name","isRequired","rest","_objectWithoutProperties","_excluded","isReactNative","_Fragment","hidden","required","disabled","readOnly","makeAnalyticsAttribute","iconVerticalMargin","medium","sizeTokens","large","LEFT_LABEL_WIDTH","_DatePickerInput","_ref3","selectionType","referenceProps","inputRef","date","labelPosition","autoFocus","_ref3$size","size","necessityIndicator","successText","errorText","helpText","_excluded2","isMobile","useIsMobile","format","isLarge","hasLabel","Boolean","start","end","isLabelPositionLeft","isLabelPositionTop","isLabelPositionVisuallyTop","_useDatesContext","useDatesContext","locale","dateValue","getFormattedDate","labelSeparator","type","_jsxs","BaseBox","width","children","id","placeholder","popupId","isPopupExpanded","componentName","shouldRenderEndLabel","finalLabel","labelEnd","undefined","startValue","endValue","display","flexDirection","gap","alignItems","flex","flexBasis","setInputWrapperRef","node","current","leadingIcon","CalendarIcon","flexShrink","alignSelf","ArrowRightIcon","marginTop","concat","makeSize","DatePickerInput"],"mappings":"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"}
1
+ {"version":3,"file":"DateInput.web.js","sources":["../../../../../../src/components/DatePicker/DateInput.web.tsx"],"sourcesContent":["/* eslint-disable jsx-a11y/no-autofocus */\n/* eslint-disable @typescript-eslint/no-unnecessary-type-assertion */\n/* eslint-disable @typescript-eslint/no-explicit-any */\nimport React from 'react';\nimport { useDatesContext } from '@mantine/dates';\nimport type { DatePickerInputProps } from './types';\nimport { getFormattedDate } from './utils';\nimport BaseBox from '~components/Box/BaseBox';\nimport { ArrowRightIcon, CalendarIcon } from '~components/Icons';\nimport type { BaseInputProps } from '~components/Input/BaseInput';\nimport { BaseInput } from '~components/Input/BaseInput';\nimport { size as sizeTokens } from '~tokens/global';\nimport { isReactNative, makeSize } from '~utils';\nimport type { BladeElementRef, DataAnalyticsAttribute } from '~utils/types';\nimport { useIsMobile } from '~utils/useIsMobile';\nimport { makeAnalyticsAttribute } from '~utils/makeAnalyticsAttribute';\n\nconst _DateInput = (\n props: BaseInputProps,\n ref: React.ForwardedRef<BladeElementRef>,\n): React.ReactElement => {\n return (\n <BaseInput\n {...props}\n ref={ref}\n as=\"button\"\n textAlign=\"left\"\n hideLabelText={props.label?.length === 0}\n autoCompleteSuggestionType=\"none\"\n hasPopup=\"dialog\"\n onClick={(e) => {\n if (props.isDisabled) {\n return;\n }\n props.onClick?.(e);\n }}\n onKeyDown={({ event }) => {\n // @ts-expect-error\n props.onKeyDown?.(event);\n }}\n />\n );\n};\n\nconst DateInput = React.forwardRef(_DateInput);\n\nconst HiddenInput = ({\n value,\n name,\n isRequired,\n isDisabled,\n ...rest\n}: {\n value: string;\n name?: string;\n isRequired?: boolean;\n isDisabled?: boolean;\n} & DataAnalyticsAttribute): React.ReactElement => {\n if (isReactNative()) return <></>;\n\n return (\n <input\n hidden={true}\n name={name}\n value={value}\n required={isRequired}\n disabled={isDisabled}\n readOnly\n {...makeAnalyticsAttribute(rest)}\n />\n );\n};\n\nconst iconVerticalMargin = {\n medium: sizeTokens[14],\n large: sizeTokens[24],\n} as const;\nconst LEFT_LABEL_WIDTH = 132;\n\nconst _DatePickerInput = (\n {\n selectionType,\n referenceProps,\n inputRef,\n date,\n label,\n labelPosition,\n autoFocus,\n name,\n size = 'medium',\n necessityIndicator,\n successText,\n errorText,\n helpText,\n format,\n placeholder,\n ...props\n }: DatePickerInputProps,\n ref: React.ForwardedRef<any>,\n): React.ReactElement => {\n const isMobile = useIsMobile();\n const isLarge = size === 'large';\n const hasLabel = typeof label === 'string' ? Boolean(label) : Boolean(label?.start || label?.end);\n const isLabelPositionLeft = labelPosition === 'left';\n const isLabelPositionTop = labelPosition === 'top';\n const isLabelPositionVisuallyTop = hasLabel && (isLabelPositionTop || isMobile);\n\n const { locale } = useDatesContext();\n\n if (selectionType == 'single') {\n const dateValue = getFormattedDate({\n date,\n format,\n labelSeparator: '-',\n locale,\n type: 'default',\n });\n return (\n <BaseBox width=\"100%\">\n <HiddenInput\n value={dateValue}\n name={name}\n isRequired={props.isRequired}\n isDisabled={props.isDisabled}\n />\n <DateInput\n ref={ref as never}\n id=\"start-date\"\n labelPosition={labelPosition}\n label={label}\n placeholder={placeholder || format}\n popupId={referenceProps['aria-controls']}\n isPopupExpanded={referenceProps['aria-expanded']}\n size={size}\n autoFocus={autoFocus}\n value={dateValue}\n componentName=\"DatePickerInput\"\n necessityIndicator={necessityIndicator}\n successText={successText}\n errorText={errorText}\n helpText={helpText}\n {...props}\n {...referenceProps}\n />\n </BaseBox>\n );\n }\n\n if (selectionType == 'range') {\n const shouldRenderEndLabel = (): string | undefined => {\n let finalLabel: string | undefined = '';\n\n const labelEnd = isLabelPositionLeft ? undefined : label?.end;\n if (isLabelPositionVisuallyTop && labelEnd === undefined) {\n // Empty space, nbsp;\n finalLabel = '\\u00A0';\n } else if (isLabelPositionLeft) {\n finalLabel = undefined;\n } else {\n finalLabel = label?.end;\n }\n return finalLabel;\n };\n\n const startValue = getFormattedDate({\n type: 'default',\n date: date[0],\n format,\n labelSeparator: '-',\n locale,\n });\n const endValue = getFormattedDate({\n type: 'default',\n date: date[1],\n format,\n labelSeparator: '-',\n locale,\n });\n return (\n <BaseBox\n width=\"100%\"\n display=\"flex\"\n flexDirection=\"row\"\n gap=\"spacing.4\"\n alignItems=\"flex-start\"\n ref={ref as never}\n >\n <BaseBox flex={1} flexBasis={isLabelPositionLeft ? LEFT_LABEL_WIDTH : '0px'}>\n <HiddenInput\n value={startValue}\n name={name?.start}\n isRequired={props.isRequired}\n isDisabled={props.isDisabled}\n />\n <DateInput\n setInputWrapperRef={(node) => ((inputRef as any)!.current = node)}\n id=\"start-date\"\n leadingIcon={CalendarIcon}\n label={label?.start}\n labelPosition={labelPosition}\n placeholder={placeholder}\n popupId={referenceProps['aria-controls']}\n isPopupExpanded={referenceProps['aria-expanded']}\n size={size}\n autoFocus={autoFocus}\n value={startValue}\n componentName=\"DatePickerInputStart\"\n necessityIndicator={necessityIndicator}\n successText={successText?.start}\n errorText={errorText?.start}\n helpText={helpText?.start}\n {...props}\n {...referenceProps}\n />\n </BaseBox>\n <BaseBox flexShrink={0} alignSelf=\"start\">\n <ArrowRightIcon\n size=\"medium\"\n marginTop={\n // Hacky layouting because the we cannot put this inside the internal layout of BaseInput.\n hasLabel && (!isLabelPositionLeft || isMobile)\n ? `calc(${makeSize(iconVerticalMargin[size])} + ${makeSize(\n isLarge ? sizeTokens[20] : sizeTokens[15],\n )})`\n : makeSize(iconVerticalMargin[size])\n }\n />\n </BaseBox>\n <BaseBox flex={1}>\n <HiddenInput\n value={endValue}\n name={name?.end}\n isRequired={props.isRequired}\n isDisabled={props.isDisabled}\n {...makeAnalyticsAttribute(props)}\n />\n <DateInput\n id=\"end-date\"\n placeholder={placeholder}\n leadingIcon={CalendarIcon}\n label={shouldRenderEndLabel()}\n labelPosition={isLabelPositionLeft ? undefined : labelPosition}\n popupId={referenceProps['aria-controls']}\n isPopupExpanded={referenceProps['aria-expanded']}\n size={size}\n value={endValue}\n componentName=\"DatePickerInputEnd\"\n successText={successText?.end}\n errorText={errorText?.end}\n helpText={helpText?.end}\n {...props}\n {...referenceProps}\n />\n </BaseBox>\n </BaseBox>\n );\n }\n\n return <></>;\n};\n\nconst DatePickerInput = React.forwardRef(_DatePickerInput);\nexport { DatePickerInput };\n"],"names":["_DateInput","props","ref","_props$label","_jsx","BaseInput","_objectSpread","as","textAlign","hideLabelText","label","length","autoCompleteSuggestionType","hasPopup","onClick","e","_props$onClick","isDisabled","call","onKeyDown","_ref","_props$onKeyDown","event","DateInput","React","forwardRef","HiddenInput","_ref2","value","name","isRequired","rest","_objectWithoutProperties","_excluded","isReactNative","_Fragment","hidden","required","disabled","readOnly","makeAnalyticsAttribute","iconVerticalMargin","medium","sizeTokens","large","LEFT_LABEL_WIDTH","_DatePickerInput","_ref3","selectionType","referenceProps","inputRef","date","labelPosition","autoFocus","_ref3$size","size","necessityIndicator","successText","errorText","helpText","format","placeholder","_excluded2","isMobile","useIsMobile","isLarge","hasLabel","Boolean","start","end","isLabelPositionLeft","isLabelPositionTop","isLabelPositionVisuallyTop","_useDatesContext","useDatesContext","locale","dateValue","getFormattedDate","labelSeparator","type","_jsxs","BaseBox","width","children","id","popupId","isPopupExpanded","componentName","shouldRenderEndLabel","finalLabel","labelEnd","undefined","startValue","endValue","display","flexDirection","gap","alignItems","flex","flexBasis","setInputWrapperRef","node","current","leadingIcon","CalendarIcon","flexShrink","alignSelf","ArrowRightIcon","marginTop","concat","makeSize","DatePickerInput"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAiBA,IAAMA,UAAU,GAAG,SAAbA,UAAUA,CACdC,KAAqB,EACrBC,GAAwC,EACjB;AAAA,EAAA,IAAAC,YAAA,CAAA;EACvB,oBACEC,GAAA,CAACC,SAAS,EAAAC,aAAA,CAAAA,aAAA,KACJL,KAAK,CAAA,EAAA,EAAA,EAAA;AACTC,IAAAA,GAAG,EAAEA,GAAI;AACTK,IAAAA,EAAE,EAAC,QAAQ;AACXC,IAAAA,SAAS,EAAC,MAAM;AAChBC,IAAAA,aAAa,EAAE,CAAA,CAAAN,YAAA,GAAAF,KAAK,CAACS,KAAK,MAAAP,IAAAA,IAAAA,YAAA,KAAXA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,YAAA,CAAaQ,MAAM,MAAK,CAAE;AACzCC,IAAAA,0BAA0B,EAAC,MAAM;AACjCC,IAAAA,QAAQ,EAAC,QAAQ;AACjBC,IAAAA,OAAO,EAAE,SAAAA,OAACC,CAAAA,CAAC,EAAK;AAAA,MAAA,IAAAC,cAAA,CAAA;MACd,IAAIf,KAAK,CAACgB,UAAU,EAAE;AACpB,QAAA,OAAA;AACF,OAAA;AACA,MAAA,CAAAD,cAAA,GAAAf,KAAK,CAACa,OAAO,MAAAE,IAAAA,IAAAA,cAAA,KAAbA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,cAAA,CAAAE,IAAA,CAAAjB,KAAK,EAAWc,CAAC,CAAC,CAAA;KAClB;AACFI,IAAAA,SAAS,EAAE,SAAAA,SAAAC,CAAAA,IAAA,EAAe;AAAA,MAAA,IAAAC,gBAAA,CAAA;AAAA,MAAA,IAAZC,KAAK,GAAAF,IAAA,CAALE,KAAK,CAAA;AACjB;AACA,MAAA,CAAAD,gBAAA,GAAApB,KAAK,CAACkB,SAAS,MAAAE,IAAAA,IAAAA,gBAAA,KAAfA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,gBAAA,CAAAH,IAAA,CAAAjB,KAAK,EAAaqB,KAAK,CAAC,CAAA;AAC1B,KAAA;AAAE,GAAA,CACH,CAAC,CAAA;AAEN,CAAC,CAAA;AAED,IAAMC,SAAS,gBAAGC,cAAK,CAACC,UAAU,CAACzB,UAAU,CAAC,CAAA;AAE9C,IAAM0B,WAAW,GAAG,SAAdA,WAAWA,CAAAC,KAAA,EAWkC;AAAA,EAAA,IAVjDC,KAAK,GAAAD,KAAA,CAALC,KAAK;IACLC,IAAI,GAAAF,KAAA,CAAJE,IAAI;IACJC,UAAU,GAAAH,KAAA,CAAVG,UAAU;IACVb,UAAU,GAAAU,KAAA,CAAVV,UAAU;AACPc,IAAAA,IAAI,GAAAC,wBAAA,CAAAL,KAAA,EAAAM,SAAA,CAAA,CAAA;EAOP,IAAIC,aAAa,EAAE,EAAE,oBAAO9B,GAAA,CAAA+B,QAAA,EAAA,EAAI,CAAC,CAAA;EAEjC,oBACE/B,GAAA,UAAAE,aAAA,CAAA;AACE8B,IAAAA,MAAM,EAAE,IAAK;AACbP,IAAAA,IAAI,EAAEA,IAAK;AACXD,IAAAA,KAAK,EAAEA,KAAM;AACbS,IAAAA,QAAQ,EAAEP,UAAW;AACrBQ,IAAAA,QAAQ,EAAErB,UAAW;IACrBsB,QAAQ,EAAA,IAAA;AAAA,GAAA,EACJC,sBAAsB,CAACT,IAAI,CAAC,CACjC,CAAC,CAAA;AAEN,CAAC,CAAA;AAED,IAAMU,kBAAkB,GAAG;AACzBC,EAAAA,MAAM,EAAEC,IAAU,CAAC,EAAE,CAAC;EACtBC,KAAK,EAAED,IAAU,CAAC,EAAE,CAAA;AACtB,CAAU,CAAA;AACV,IAAME,gBAAgB,GAAG,GAAG,CAAA;AAE5B,IAAMC,gBAAgB,GAAG,SAAnBA,gBAAgBA,CAAAC,KAAA,EAmBpB7C,GAA4B,EACL;AAAA,EAAA,IAlBrB8C,aAAa,GAAAD,KAAA,CAAbC,aAAa;IACbC,cAAc,GAAAF,KAAA,CAAdE,cAAc;IACdC,QAAQ,GAAAH,KAAA,CAARG,QAAQ;IACRC,IAAI,GAAAJ,KAAA,CAAJI,IAAI;IACJzC,KAAK,GAAAqC,KAAA,CAALrC,KAAK;IACL0C,aAAa,GAAAL,KAAA,CAAbK,aAAa;IACbC,SAAS,GAAAN,KAAA,CAATM,SAAS;IACTxB,IAAI,GAAAkB,KAAA,CAAJlB,IAAI;IAAAyB,UAAA,GAAAP,KAAA,CACJQ,IAAI;AAAJA,IAAAA,MAAI,GAAAD,UAAA,KAAG,KAAA,CAAA,GAAA,QAAQ,GAAAA,UAAA;IACfE,kBAAkB,GAAAT,KAAA,CAAlBS,kBAAkB;IAClBC,WAAW,GAAAV,KAAA,CAAXU,WAAW;IACXC,SAAS,GAAAX,KAAA,CAATW,SAAS;IACTC,QAAQ,GAAAZ,KAAA,CAARY,QAAQ;IACRC,MAAM,GAAAb,KAAA,CAANa,MAAM;IACNC,WAAW,GAAAd,KAAA,CAAXc,WAAW;AACR5D,IAAAA,KAAK,GAAA+B,wBAAA,CAAAe,KAAA,EAAAe,UAAA,CAAA,CAAA;AAIV,EAAA,IAAMC,QAAQ,GAAGC,WAAW,EAAE,CAAA;AAC9B,EAAA,IAAMC,OAAO,GAAGV,MAAI,KAAK,OAAO,CAAA;AAChC,EAAA,IAAMW,QAAQ,GAAG,OAAOxD,KAAK,KAAK,QAAQ,GAAGyD,OAAO,CAACzD,KAAK,CAAC,GAAGyD,OAAO,CAAC,CAAAzD,KAAK,KAAA,IAAA,IAALA,KAAK,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAALA,KAAK,CAAE0D,KAAK,MAAI1D,KAAK,KAAA,IAAA,IAALA,KAAK,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAALA,KAAK,CAAE2D,GAAG,CAAC,CAAA,CAAA;AACjG,EAAA,IAAMC,mBAAmB,GAAGlB,aAAa,KAAK,MAAM,CAAA;AACpD,EAAA,IAAMmB,kBAAkB,GAAGnB,aAAa,KAAK,KAAK,CAAA;AAClD,EAAA,IAAMoB,0BAA0B,GAAGN,QAAQ,KAAKK,kBAAkB,IAAIR,QAAQ,CAAC,CAAA;AAE/E,EAAA,IAAAU,gBAAA,GAAmBC,eAAe,EAAE;IAA5BC,MAAM,GAAAF,gBAAA,CAANE,MAAM,CAAA;EAEd,IAAI3B,aAAa,IAAI,QAAQ,EAAE;IAC7B,IAAM4B,SAAS,GAAGC,gBAAgB,CAAC;AACjC1B,MAAAA,IAAI,EAAJA,IAAI;AACJS,MAAAA,MAAM,EAANA,MAAM;AACNkB,MAAAA,cAAc,EAAE,GAAG;AACnBH,MAAAA,MAAM,EAANA,MAAM;AACNI,MAAAA,IAAI,EAAE,SAAA;AACR,KAAC,CAAC,CAAA;IACF,oBACEC,IAAA,CAACC,OAAO,EAAA;AAACC,MAAAA,KAAK,EAAC,MAAM;MAAAC,QAAA,EAAA,cACnB/E,GAAA,CAACsB,WAAW,EAAA;AACVE,QAAAA,KAAK,EAAEgD,SAAU;AACjB/C,QAAAA,IAAI,EAAEA,IAAK;QACXC,UAAU,EAAE7B,KAAK,CAAC6B,UAAW;QAC7Bb,UAAU,EAAEhB,KAAK,CAACgB,UAAAA;OACnB,CAAC,eACFb,GAAA,CAACmB,SAAS,EAAAjB,aAAA,CAAAA,aAAA,CAAA;AACRJ,QAAAA,GAAG,EAAEA,GAAa;AAClBkF,QAAAA,EAAE,EAAC,YAAY;AACfhC,QAAAA,aAAa,EAAEA,aAAc;AAC7B1C,QAAAA,KAAK,EAAEA,KAAM;QACbmD,WAAW,EAAEA,WAAW,IAAID,MAAO;AACnCyB,QAAAA,OAAO,EAAEpC,cAAc,CAAC,eAAe,CAAE;AACzCqC,QAAAA,eAAe,EAAErC,cAAc,CAAC,eAAe,CAAE;AACjDM,QAAAA,IAAI,EAAEA,MAAK;AACXF,QAAAA,SAAS,EAAEA,SAAU;AACrBzB,QAAAA,KAAK,EAAEgD,SAAU;AACjBW,QAAAA,aAAa,EAAC,iBAAiB;AAC/B/B,QAAAA,kBAAkB,EAAEA,kBAAmB;AACvCC,QAAAA,WAAW,EAAEA,WAAY;AACzBC,QAAAA,SAAS,EAAEA,SAAU;AACrBC,QAAAA,QAAQ,EAAEA,QAAAA;AAAS,OAAA,EACf1D,KAAK,CAAA,EACLgD,cAAc,CACnB,CAAC,CAAA;AAAA,KACK,CAAC,CAAA;AAEd,GAAA;EAEA,IAAID,aAAa,IAAI,OAAO,EAAE;AAC5B,IAAA,IAAMwC,oBAAoB,GAAG,SAAvBA,oBAAoBA,GAA6B;MACrD,IAAIC,UAA8B,GAAG,EAAE,CAAA;AAEvC,MAAA,IAAMC,QAAQ,GAAGpB,mBAAmB,GAAGqB,SAAS,GAAGjF,KAAK,KAAA,IAAA,IAALA,KAAK,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAALA,KAAK,CAAE2D,GAAG,CAAA;AAC7D,MAAA,IAAIG,0BAA0B,IAAIkB,QAAQ,KAAKC,SAAS,EAAE;AACxD;AACAF,QAAAA,UAAU,GAAG,MAAQ,CAAA;OACtB,MAAM,IAAInB,mBAAmB,EAAE;AAC9BmB,QAAAA,UAAU,GAAGE,SAAS,CAAA;AACxB,OAAC,MAAM;AACLF,QAAAA,UAAU,GAAG/E,KAAK,KAAA,IAAA,IAALA,KAAK,KAALA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,KAAK,CAAE2D,GAAG,CAAA;AACzB,OAAA;AACA,MAAA,OAAOoB,UAAU,CAAA;KAClB,CAAA;IAED,IAAMG,UAAU,GAAGf,gBAAgB,CAAC;AAClCE,MAAAA,IAAI,EAAE,SAAS;AACf5B,MAAAA,IAAI,EAAEA,IAAI,CAAC,CAAC,CAAC;AACbS,MAAAA,MAAM,EAANA,MAAM;AACNkB,MAAAA,cAAc,EAAE,GAAG;AACnBH,MAAAA,MAAM,EAANA,MAAAA;AACF,KAAC,CAAC,CAAA;IACF,IAAMkB,QAAQ,GAAGhB,gBAAgB,CAAC;AAChCE,MAAAA,IAAI,EAAE,SAAS;AACf5B,MAAAA,IAAI,EAAEA,IAAI,CAAC,CAAC,CAAC;AACbS,MAAAA,MAAM,EAANA,MAAM;AACNkB,MAAAA,cAAc,EAAE,GAAG;AACnBH,MAAAA,MAAM,EAANA,MAAAA;AACF,KAAC,CAAC,CAAA;IACF,oBACEK,IAAA,CAACC,OAAO,EAAA;AACNC,MAAAA,KAAK,EAAC,MAAM;AACZY,MAAAA,OAAO,EAAC,MAAM;AACdC,MAAAA,aAAa,EAAC,KAAK;AACnBC,MAAAA,GAAG,EAAC,WAAW;AACfC,MAAAA,UAAU,EAAC,YAAY;AACvB/F,MAAAA,GAAG,EAAEA,GAAa;MAAAiF,QAAA,EAAA,cAElBH,IAAA,CAACC,OAAO,EAAA;AAACiB,QAAAA,IAAI,EAAE,CAAE;AAACC,QAAAA,SAAS,EAAE7B,mBAAmB,GAAGzB,gBAAgB,GAAG,KAAM;QAAAsC,QAAA,EAAA,cAC1E/E,GAAA,CAACsB,WAAW,EAAA;AACVE,UAAAA,KAAK,EAAEgE,UAAW;AAClB/D,UAAAA,IAAI,EAAEA,IAAI,KAAA,IAAA,IAAJA,IAAI,KAAJA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,IAAI,CAAEuC,KAAM;UAClBtC,UAAU,EAAE7B,KAAK,CAAC6B,UAAW;UAC7Bb,UAAU,EAAEhB,KAAK,CAACgB,UAAAA;SACnB,CAAC,eACFb,GAAA,CAACmB,SAAS,EAAAjB,aAAA,CAAAA,aAAA,CAAA;UACR8F,kBAAkB,EAAE,SAAAA,kBAAAA,CAACC,IAAI,EAAA;AAAA,YAAA,OAAOnD,QAAQ,CAAUoD,OAAO,GAAGD,IAAI,CAAA;WAAE;AAClEjB,UAAAA,EAAE,EAAC,YAAY;AACfmB,UAAAA,WAAW,EAAEC,YAAa;AAC1B9F,UAAAA,KAAK,EAAEA,KAAK,KAAA,IAAA,IAALA,KAAK,KAALA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,KAAK,CAAE0D,KAAM;AACpBhB,UAAAA,aAAa,EAAEA,aAAc;AAC7BS,UAAAA,WAAW,EAAEA,WAAY;AACzBwB,UAAAA,OAAO,EAAEpC,cAAc,CAAC,eAAe,CAAE;AACzCqC,UAAAA,eAAe,EAAErC,cAAc,CAAC,eAAe,CAAE;AACjDM,UAAAA,IAAI,EAAEA,MAAK;AACXF,UAAAA,SAAS,EAAEA,SAAU;AACrBzB,UAAAA,KAAK,EAAEgE,UAAW;AAClBL,UAAAA,aAAa,EAAC,sBAAsB;AACpC/B,UAAAA,kBAAkB,EAAEA,kBAAmB;AACvCC,UAAAA,WAAW,EAAEA,WAAW,KAAA,IAAA,IAAXA,WAAW,KAAXA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,WAAW,CAAEW,KAAM;AAChCV,UAAAA,SAAS,EAAEA,SAAS,KAAA,IAAA,IAATA,SAAS,KAATA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,SAAS,CAAEU,KAAM;AAC5BT,UAAAA,QAAQ,EAAEA,QAAQ,KAAA,IAAA,IAARA,QAAQ,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAARA,QAAQ,CAAES,KAAAA;AAAM,SAAA,EACtBnE,KAAK,CAAA,EACLgD,cAAc,CACnB,CAAC,CAAA;AAAA,OACK,CAAC,eACV7C,GAAA,CAAC6E,OAAO,EAAA;AAACwB,QAAAA,UAAU,EAAE,CAAE;AAACC,QAAAA,SAAS,EAAC,OAAO;QAAAvB,QAAA,eACvC/E,GAAA,CAACuG,cAAc,EAAA;AACbpD,UAAAA,IAAI,EAAC,QAAQ;UACbqD,SAAS;AACP;AACA1C,UAAAA,QAAQ,KAAK,CAACI,mBAAmB,IAAIP,QAAQ,CAAC,GAAA8C,OAAAA,CAAAA,MAAA,CAClCC,QAAQ,CAACrE,kBAAkB,CAACc,MAAI,CAAC,CAAC,SAAAsD,MAAA,CAAMC,QAAQ,CACtD7C,OAAO,GAAGtB,IAAU,CAAC,EAAE,CAAC,GAAGA,IAAU,CAAC,EAAE,CAC1C,CAAC,EACDmE,GAAAA,CAAAA,GAAAA,QAAQ,CAACrE,kBAAkB,CAACc,MAAI,CAAC,CAAA;SAExC,CAAA;AAAC,OACK,CAAC,eACVyB,IAAA,CAACC,OAAO,EAAA;AAACiB,QAAAA,IAAI,EAAE,CAAE;AAAAf,QAAAA,QAAA,EACf/E,cAAAA,GAAA,CAACsB,WAAW,EAAApB,aAAA,CAAA;AACVsB,UAAAA,KAAK,EAAEiE,QAAS;AAChBhE,UAAAA,IAAI,EAAEA,IAAI,KAAA,IAAA,IAAJA,IAAI,KAAJA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,IAAI,CAAEwC,GAAI;UAChBvC,UAAU,EAAE7B,KAAK,CAAC6B,UAAW;UAC7Bb,UAAU,EAAEhB,KAAK,CAACgB,UAAAA;AAAW,SAAA,EACzBuB,sBAAsB,CAACvC,KAAK,CAAC,CAClC,CAAC,eACFG,GAAA,CAACmB,SAAS,EAAAjB,aAAA,CAAAA,aAAA,CAAA;AACR8E,UAAAA,EAAE,EAAC,UAAU;AACbvB,UAAAA,WAAW,EAAEA,WAAY;AACzB0C,UAAAA,WAAW,EAAEC,YAAa;UAC1B9F,KAAK,EAAE8E,oBAAoB,EAAG;AAC9BpC,UAAAA,aAAa,EAAEkB,mBAAmB,GAAGqB,SAAS,GAAGvC,aAAc;AAC/DiC,UAAAA,OAAO,EAAEpC,cAAc,CAAC,eAAe,CAAE;AACzCqC,UAAAA,eAAe,EAAErC,cAAc,CAAC,eAAe,CAAE;AACjDM,UAAAA,IAAI,EAAEA,MAAK;AACX3B,UAAAA,KAAK,EAAEiE,QAAS;AAChBN,UAAAA,aAAa,EAAC,oBAAoB;AAClC9B,UAAAA,WAAW,EAAEA,WAAW,KAAA,IAAA,IAAXA,WAAW,KAAXA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,WAAW,CAAEY,GAAI;AAC9BX,UAAAA,SAAS,EAAEA,SAAS,KAAA,IAAA,IAATA,SAAS,KAATA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,SAAS,CAAEW,GAAI;AAC1BV,UAAAA,QAAQ,EAAEA,QAAQ,KAAA,IAAA,IAARA,QAAQ,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAARA,QAAQ,CAAEU,GAAAA;AAAI,SAAA,EACpBpE,KAAK,CAAA,EACLgD,cAAc,CACnB,CAAC,CAAA;AAAA,OACK,CAAC,CAAA;AAAA,KACH,CAAC,CAAA;AAEd,GAAA;AAEA,EAAA,oBAAO7C,GAAA,CAAA+B,QAAA,EAAA,EAAI,CAAC,CAAA;AACd,CAAC,CAAA;AAED,IAAM4E,eAAe,gBAAGvF,cAAK,CAACC,UAAU,CAACqB,gBAAgB;;;;"}
@@ -43,7 +43,7 @@ import { BottomSheetBody } from '../BottomSheet/BottomSheetBody.web.js';
43
43
  import { BottomSheetFooter } from '../BottomSheet/BottomSheetFooter.web.js';
44
44
  import { makeAccessible } from '../../utils/makeAccessible/makeAccessible.web.js';
45
45
 
46
- var _excluded = ["selectionType", "allowSingleDateInRange", "value", "defaultValue", "onChange", "onApply", "presets", "isOpen", "defaultIsOpen", "onOpenChange", "label", "labelPosition", "accessibilityLabel", "errorText", "helpText", "isDisabled", "isRequired", "successText", "validationState", "size", "autoFocus", "necessityIndicator", "name", "defaultPicker", "picker", "onPickerChange", "zIndex"];
46
+ var _excluded = ["selectionType", "allowSingleDateInRange", "value", "defaultValue", "onChange", "onApply", "presets", "isOpen", "defaultIsOpen", "onOpenChange", "label", "labelPosition", "accessibilityLabel", "errorText", "helpText", "isDisabled", "isRequired", "successText", "validationState", "size", "autoFocus", "necessityIndicator", "name", "defaultPicker", "picker", "onPickerChange", "zIndex", "format", "inputPlaceHolder"];
47
47
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
48
48
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
49
49
  var DatePicker = function DatePicker(_ref) {
@@ -77,6 +77,9 @@ var DatePicker = function DatePicker(_ref) {
77
77
  onPickerChange = _ref.onPickerChange,
78
78
  _ref$zIndex = _ref.zIndex,
79
79
  zIndex = _ref$zIndex === void 0 ? componentZIndices.popover : _ref$zIndex,
80
+ _ref$format = _ref.format,
81
+ format = _ref$format === void 0 ? 'DD/MM/YYYY' : _ref$format,
82
+ inputPlaceHolder = _ref.inputPlaceHolder,
80
83
  props = _objectWithoutProperties(_ref, _excluded);
81
84
  var _useI18nContext = useI18nContext(),
82
85
  i18nState = _useI18nContext.i18nState;
@@ -105,6 +108,30 @@ var DatePicker = function DatePicker(_ref) {
105
108
  _useControllableState2 = _slicedToArray(_useControllableState, 2),
106
109
  _picker = _useControllableState2[0],
107
110
  setPicker = _useControllableState2[1];
111
+ var finalFormat = React__default.useMemo(function () {
112
+ if (format) {
113
+ return format;
114
+ }
115
+ if (picker === 'month') {
116
+ return 'MMMM';
117
+ }
118
+ if (picker === 'year') {
119
+ return 'YYYY';
120
+ }
121
+ return 'DD/MM/YYYY';
122
+ }, [format, picker]);
123
+ var finalInputPlaceHolder = React__default.useMemo(function () {
124
+ if (inputPlaceHolder) {
125
+ return inputPlaceHolder;
126
+ }
127
+ if (picker === 'month') {
128
+ return 'Month';
129
+ }
130
+ if (picker === 'year') {
131
+ return 'Year';
132
+ }
133
+ return 'DD/MM/YYYY';
134
+ }, [inputPlaceHolder, picker]);
108
135
  var _useDatesState = useDatesState({
109
136
  level: _picker,
110
137
  type: isSingle ? 'default' : 'range',
@@ -263,6 +290,7 @@ var DatePicker = function DatePicker(_ref) {
263
290
  forceRerender();
264
291
  },
265
292
  picker: _picker,
293
+ showLevelChangeLink: !picker,
266
294
  onPickerChange: function onPickerChange(picker) {
267
295
  setPicker(function () {
268
296
  return picker;
@@ -329,7 +357,9 @@ var DatePicker = function DatePicker(_ref) {
329
357
  isRequired: isRequired,
330
358
  validationState: validationState,
331
359
  autoFocus: autoFocus,
332
- necessityIndicator: necessityIndicator
360
+ necessityIndicator: necessityIndicator,
361
+ format: finalFormat,
362
+ placeholder: finalInputPlaceHolder
333
363
  }, makeAnalyticsAttribute(props))), isMobile ? /*#__PURE__*/jsxs(BottomSheet, {
334
364
  snapPoints: [0.9, 0.9, 1],
335
365
  isOpen: controllableIsOpen,