@mantine/dates
Version:
Calendars, date and time pickers based on Mantine components
1 lines • 3.77 kB
Source Map (JSON)
{"version":3,"file":"PickerControl.mjs","names":["classes"],"sources":["../../../src/components/PickerControl/PickerControl.tsx"],"sourcesContent":["import {\n BoxProps,\n createVarsResolver,\n ElementProps,\n factory,\n Factory,\n getFontSize,\n getSize,\n MantineSize,\n StylesApiProps,\n UnstyledButton,\n useProps,\n useStyles,\n} from '@mantine/core';\nimport classes from './PickerControl.module.css';\n\nexport type PickerControlStylesNames = 'pickerControl';\nexport type PickerControlCssVariables = {\n pickerControl: '--dpc-size' | '--dpc-fz';\n};\n\nexport interface PickerControlProps\n extends BoxProps, StylesApiProps<PickerControlFactory>, ElementProps<'button'> {\n __staticSelector?: string;\n\n /** Control children */\n children?: React.ReactNode;\n\n /** Disables control */\n disabled?: boolean;\n\n /** Assigns selected styles */\n selected?: boolean;\n\n /** Assigns in range styles */\n inRange?: boolean;\n\n /** Assigns first in range styles */\n firstInRange?: boolean;\n\n /** Assigns last in range styles */\n lastInRange?: boolean;\n\n /** Component size */\n size?: MantineSize;\n\n /** Determines whether the control should take the full width of its cell @default false */\n fullWidth?: boolean;\n}\n\nexport type PickerControlFactory = Factory<{\n props: PickerControlProps;\n ref: HTMLButtonElement;\n stylesNames: PickerControlStylesNames;\n vars: PickerControlCssVariables;\n}>;\n\nconst varsResolver = createVarsResolver<PickerControlFactory>((_, { size }) => ({\n pickerControl: {\n '--dpc-fz': getFontSize(size),\n '--dpc-size': getSize(size, 'dpc-size'),\n },\n}));\n\nexport const PickerControl = factory<PickerControlFactory>((_props) => {\n const props = useProps('PickerControl', null, _props);\n const {\n classNames,\n className,\n style,\n styles,\n unstyled,\n vars,\n firstInRange,\n lastInRange,\n inRange,\n __staticSelector,\n selected,\n disabled,\n fullWidth,\n attributes,\n ...others\n } = props;\n\n const getStyles = useStyles<PickerControlFactory>({\n name: __staticSelector || 'PickerControl',\n classes,\n props,\n className,\n style,\n classNames,\n styles,\n unstyled,\n attributes,\n vars,\n varsResolver,\n rootSelector: 'pickerControl',\n });\n\n return (\n <UnstyledButton\n {...getStyles('pickerControl')}\n unstyled={unstyled}\n data-picker-control\n data-full-width={fullWidth || undefined}\n data-selected={(selected && !disabled) || undefined}\n data-disabled={disabled || undefined}\n data-in-range={(inRange && !disabled && !selected) || undefined}\n data-first-in-range={(firstInRange && !disabled) || undefined}\n data-last-in-range={(lastInRange && !disabled) || undefined}\n disabled={disabled}\n {...others}\n />\n );\n});\n\nPickerControl.classes = classes;\nPickerControl.varsResolver = varsResolver;\nPickerControl.displayName = '@mantine/dates/PickerControl';\n"],"mappings":";;;;;AAyDA,MAAM,eAAe,oBAA0C,GAAG,EAAE,YAAY,EAC9E,eAAe;CACb,YAAY,YAAY,IAAI;CAC5B,cAAc,QAAQ,MAAM,UAAU;AACxC,EACF,EAAE;AAEF,MAAa,gBAAgB,SAA+B,WAAW;CACrE,MAAM,QAAQ,SAAS,iBAAiB,MAAM,MAAM;CACpD,MAAM,EACJ,YACA,WACA,OACA,QACA,UACA,MACA,cACA,aACA,SACA,kBACA,UACA,UACA,WACA,YACA,GAAG,WACD;CAiBJ,OACE,oBAAC,gBAAD;EACE,GAjBc,UAAgC;GAChD,MAAM,oBAAoB;GAC1B,SAAA;GACA;GACA;GACA;GACA;GACA;GACA;GACA;GACA;GACA;GACA,cAAc;EAChB,CAIgB,CAAC,CAAC,eAAe;EACnB;EACV,uBAAA;EACA,mBAAiB,aAAa,KAAA;EAC9B,iBAAgB,YAAY,CAAC,YAAa,KAAA;EAC1C,iBAAe,YAAY,KAAA;EAC3B,iBAAgB,WAAW,CAAC,YAAY,CAAC,YAAa,KAAA;EACtD,uBAAsB,gBAAgB,CAAC,YAAa,KAAA;EACpD,sBAAqB,eAAe,CAAC,YAAa,KAAA;EACxC;EACV,GAAI;CACL,CAAA;AAEL,CAAC;AAED,cAAc,UAAUA;AACxB,cAAc,eAAe;AAC7B,cAAc,cAAc"}